Releases: eoyilmaz/stalker
Releases · eoyilmaz/stalker
0.2.16
0.2.15.2
0.2.15.1
0.2.15
- New:
Project
toClient
relation is now a many-to-many relation, thus it is possible to set multiple Clients for each project with each client having their own roles in a specific project. - New: Added alembic revision to reflect the changes in Project <-> Client relation.
- New: Added a couple of tests to increase test coverage (which is around 96% for now).
- Update:
ScheduleMixin.schedule_timing
attribute is now Nullable. - Update:
ScheduleMixin.schedule_unit
attribute is now Nullable.
0.2.14
- Fix: Fixed
Task.path
to always return a path with forward slashes. - New: Introducing
EntityGroups
that lets one to group a bunch of
SimpleEntity
s together, it can be used in grouping tasks even if they are
in different places on the project task hierarchy or even in different
projects. - Update:
Task.percent_complete
is now correctly calculated for a
Duration
based task by using theTask.start
andTask.end
attribute values. - Fix: Fixed
stalker.models.task.update_time_log_task_parents_for_end()
event to work with SQLAlchemy v1.0. - New: Added an option called
__dag_cascade__
to theDAGMixin
to
control cascades on mixed in class. The default value is "all, delete".
Change it to "save-update, merge" if you don't want the children also be
deleted when the parent is deleted. - Fix: Fixed a bug in
Version
class that occurs when a version instance
that is a parent of other version instances is deleted, the child versions
are also deleted (fixed through DAGMixin class).
0.2.13.3
0.2.13.2
- New: Removed
msrp
,cost
andunit
arguments from
BudgetEntry.__init__()
and added a newgood
argument to get all of
the data from the relatedGood
instance. But themsrp
,cost
and
unit
attributes ofBudgetEntry
class are still there to store the
values that may not correlate with the relatedGood
in future.
0.2.13.1
0.2.13
- New:
Project
instances can now have multiple repositories. Thus the
repository
attribute is renamed torepositories
. And the order of the
items in therepositories
attribute is restored correctly. - New:
stalker.db.init()
now automatically creates environment
variables for each repository in the database. - New: Added a new
after_insert
which listensRepository
instance
insert
s to automatically add environment variables for the newly inserted
repositories. - Update:
Repository.make_relative()
now handles paths with environment
variables. - Fix: Fixed
TaskJugglerScheduler
to correctly generate task absolute
paths for PostgreSQL DB. - New:
Repository.path
is now writable and sets the correct path
(linux_path
,windows_path
, orosx_path
) according to the current
system. - New: Setting either of the
Repository.path
,
Repository.linux_path
,Repository.windows_path
,
Repository.osx_path
attributes will update the related environment
variable if the system and attribute are matching to each other, setting the
linux_path
on Linux or setting thewindows_path
on Windows or setting
theosx_path
on OSX will update the environment variable. - New: Added
Task.good
attribute to easily connect tasks toGood
s. - New: Added new methods to
Repository
to help managing paths:-
Repository.find_repo()
to find a repo from a given path. This is a
class method so it can be directly used with the Repository class. -
Repository.to_os_independent_path()
to convert the given path to a OS
independent path which uses environment variables. Again this is a class
method too so it can be directly used with the Repository class. -
Repository.env_var
a new property that returns the related environment
variable name of a repo instance. This is an instance property::# with default settings repo = Repository(...) repo.env_var # should print something like "REPO131" which will be used # in paths as "$REPO131"
-
- Fix: Fixed
User.company_role
attribute which is a relationship to
theClienUser
to cascadeall, delete-orphan
to prevent
AssertionErrors when a Client instance is removed from theUser.companies
collection.
0.2.12.1
- Update:
Version
class is now mixed with theDAGMixin
, so all the
parent/child relation is coming from the DAGMixin. - Update:
DAGMixin.walk_hierarchy()
is updated to walk the hierarchy in
Depth First
mode by default (method=0) instead ofBreadth First
mode
(method=1). - Fix: Fixed
alembic_revision
on database initialization.