Changelog

2016-11-25

  • Release 0.7.0
  • Introduced ResourceTreeService for nested resource management (currently only PostgreSQL support is implemented)
  • added deprecation warnings

BACKWARDS INCOMPATIBLE CHANGES

  • big code refactoring that might possibly introduce minor breaking changes
  • _ziggurat_services is now a list

2016-07-05

  • Release: 0.6.8
  • use importlib for imports to avoid issues with unicode passed to __import__()

2016-05-05

  • Release: 0.6.6/0.6.7
  • increased field sizes for external identity tokens, permission names and username
  • perm name is checked to be lowercase in all databases, not only for postgresql

2016-04-27

  • Release: 0.6.5
  • got rid of all unicode warnings generated by sqlalchemy and start to use unicode for all strings
  • user.resources_with_possible_perms() passes resource_types properly

2016-04-19

  • Release: 0.6.3/0.6.4
  • extended functionality of populate_obj function of Base class
  • minor bugfix for mysql

BACKWARDS INCOMPATIBLE CHANGES

  • external_identities.local_user_name column is dropped and replaced with local_user_id

2015-11-13

  • Release: 0.6.2
  • replace cryptacular with passlib

2015-09-19

  • Release: 0.6.1
  • some fixes for ext.pyramid not-working completly with service related changes

2015-08-03

  • Release: 0.6.0
  • models are decoupled from services that interact with models (all model querying methods now live in services)

BACKWARDS INCOMPATIBLE CHANGES

import related changes:

  • ziggurat_foundations.models doesn’t import all the models anymore every model now lives in separate file
  • permission related functions now live in permissions module

2015-06-15

  • Release: 0.5.6
  • user model gains security date column
  • minor bugfixes

2015-06-07

  • Release: 0.5.5
  • added persist(), delete(), base_query() methods to Base model

2015-04-27

  • Release: 0.5.3
  • resource.groups_for_perm() returns groups/permissions for single resource

2015-04-24

  • Release: 0.5.2
  • resource.users_for_perm() now accepts limit_group_permissions param that that makes it return just group with perm name instead tuples including every user/perm pairs

2015-04-23

  • Release: 0.5.1
  • Group.resources_with_possible_perms() added

2015-04-17 Release: 0.5

  • Now uses detailed permissions
  • Methods also return “owned” permissions where applicable
  • BACKWARDS INCOMPATIBLE API CHANGES
    • ResourceMixin.users_for_perm() accepts additional parameters group_ids, and user_ids to limit the amount of results if needed
    • User.permissions, Resource.perms_for_user, Resource.direct_perms_for_user, Resource.group_perms_for_user, Resource.users_for_perm_detailed, Resource.users_for_perm now return list of detailed PermissionTuple’s instead simple [id, perm_name] pairs this will break your application You can use ziggurat_foundations.utils.permission_to_04_acls() to convert the new tuples to pre 0.5 format

2015-02-18

  • Release: 0.4.3
  • Added a way to filter on resource types in UserMixin.resources_with_perms()
  • Made User.resources dynamic relationship

2014-08-25 Second Alpha Release 0.4

  • Move to paginate from webhelpers.paginate
  • Users can now log in via username or email address
  • Python 3 compatibale after moving away from webhelpers.paginate

2012-11-28 version 0.3 First Alpha release

  • This release should have a fairly stable API
  • Hundreds of small and big changes - based on all great feedback we are now using surrogate pkeys instead of natural pkeys for most models. As result of this few methods started accepting id’s instead usernames, so consider yourself warned that this release might be bw. incompatible a bit with your application
  • At this point all tests should pass on mysql, postgresql, sqlite

2012-05-27 version 0.2 First public release

  • added proper alembic(pre 0.3.3 trunk) support for multiple alembic migrations via separate versioning table
  • please do manual stamp for CURRENT revision ID: 54d08f9adc8c
  • changes for first public pypi release
  • Possible backwards incompatibility: Remove cache keyword cruft

2012-05-25

  • Possible backwards incompatibility: Remove invalidate keyword cruft

2012-03-10

  • Add registration date to user model, changed last_login_date to no-timezone type (this seem trivial enough to not faciliate schema change)
  • previous revision ID: 2d472fe79b95

2012-02-19

  • Made external identity fields bigger
  • previous revision ID: 264049f80948

2012-02-13

  • Bumped alembic machinery to 0.2
  • Enabled developers to set their own custom password managers
  • added ordering column for resources in tree
  • Stubs for tree traversal
  • previous revision ID: 46a9c4fb9560

2011-12-20

  • Made hash fields bigger
  • previous revision ID: 5c84d7260c5

2011-11-15

  • Added ExternalIdentityMixin - for storing information about user profiles connected to 3rd party identites like facebook/twitter/google/github etc.
  • previous revision ID: 24ab8d11f014

2011-11-03

  • added alembic migration support
  • previous revision ID: 2bb1ba973f0b

2011-08-14

  • resource.users_for_perm(), resource.direct_perms_for_user() and resource.group_perms_for_user() return tuple (user/group_name,perm_name) now