Skip to content

Releases: eoyilmaz/stalker

0.2.13.2

24 May 09:28
Compare
Choose a tag to compare
  • New: Removed msrp, cost and unit arguments from
    BudgetEntry.__init__() and added a new good argument to get all of
    the data from the related Good instance. But the msrp, cost and
    unit attributes of BudgetEntry class are still there to store the
    values that may not correlate with the related Good in future.

0.2.13.1

13 Feb 17:33
Compare
Choose a tag to compare
  • Fix: Fixed a bug in Review.finalize_review_set() which causes Task instances to not to get any status update if the revised task is a second degree dependee to that particular task.

0.2.13

10 Feb 23:04
Compare
Choose a tag to compare
  • New: Project instances can now have multiple repositories. Thus the
    repository attribute is renamed to repositories. And the order of the
    items in the repositories 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 listens Repository instance
    inserts 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, or osx_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 the windows_path on Windows or setting
    the osx_path on OSX will update the environment variable.
  • New: Added Task.good attribute to easily connect tasks to Goods.
  • 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
    the ClienUser to cascade all, delete-orphan to prevent
    AssertionErrors when a Client instance is removed from the User.companies
    collection.

0.2.12.1

10 Feb 23:05
Compare
Choose a tag to compare
  • Update: Version class is now mixed with the DAGMixin, 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 of Breadth First mode
    (method=1).
  • Fix: Fixed alembic_revision on database initialization.

0.2.12

10 Feb 23:06
Compare
Choose a tag to compare
  • Fix: Fixed importing of ProjectUser directly from stalker
    namespace.
  • Fix: Fixed importing of ClientUser directly from stalker
    namespace.
  • New: Added two new columns to the BudgetEntry class to allow more
    detailed info to be hold.
  • New: Added a new Mixin called DAGMixin to create parent/child
    relation between mixed in class.
  • Update: The Task class is now mixed with the DAGMixin, so all the
    parent/child relation is coming from the DAGMixin.
  • New: Added a new class called Good to hold details about the
    commercial items/services sold in the Studio.
  • New: Added a new class called PriceList to create price lists from
    Goods.

0.2.11

10 Feb 23:07
Compare
Choose a tag to compare
  • New: User instances now have a new attribute called rate to track
    their cost as a resource.
  • New: Added two new classes called Budget and BudgetEntry to
    record Project budgets in a simple way.
  • New: Added a new class called Role to manage user roles in different
    Departments, Clients and Projects.
  • New: User and Department relation is updated to include the role of the
    user in that department in a more flexible way by using the newly introduced
    Role class and some association proxy tricks.
  • New: Also updated the User to Project relation to include the role of the
    user in that Project by using an associated Role class.
  • Update: Department.members attribute is renamed to users (and removed
    the synonym property).
  • Update: Removed Project.lead attribute use Role instead.
  • Update: Removed Department.lead attribute use Role instead.
  • Update: Because the Project.lead attribute is removed, it is now
    possible to have tasks with no responsible.
  • Update: Client to User relation is updated to use an association proxy
    which makes it possible to set a Role for each User for each Client it is
    assigned to.
  • Update: Renamed User.company to User.companies as the relation is now
    able to handle more than one Client instances for the User company.
  • Update: Task Status Workflow has been updated to convert the status of a
    DREV task to HREV instead of WIP when the dependent tasks has been set to
    CMPL. Also the timing of the task is expanded by the value of
    stalker.defaults.timing_resolution if it doesn't have any effort left
    (generally true for CMPL tasks) to allow the resource to review and decide if
    he/she needs more time to do any update on the task and also give a chance of
    setting the Task status to WIP by creating a time log.
  • New: It is now possible to schedule only a desired set of projects by
    passing a projects argument to the TaskJugglerScheduler.
  • New: Task.request_review() and Review.finalize() will not cap the timing
    of the task until it is approved and also Review.finalize() will extend the
    timing of the task if the total timing of the given revisions are not fitting
    in to the left timing.

0.2.10.5

10 Feb 23:08
Compare
Choose a tag to compare
  • Update: TaskJuggler output is now written to debug output once per line.

0.2.10.4

10 Feb 23:08
Compare
Choose a tag to compare
  • New: '@' character is now allowed in Entity nice name.

0.2.10.3

10 Feb 23:09
Compare
Choose a tag to compare
  • New: '@' character is now allowed in Version take names.

0.2.10.2

10 Feb 23:09
Compare
Choose a tag to compare
  • Fix: Fixed a bug in
    stalker.models.schedulers.TaskJugglerScheduler._create_tjp_file_content()
    caused by non-ascii task names.
  • Fix: Removed the residual RootFactory class reference from
    documentation.
  • New: Added to new functions called utc_to_local and local_to_utc
    for UTC to Local time and vice versa conversion.