-
Notifications
You must be signed in to change notification settings - Fork 3
/
CHANGELOG.yaml
142 lines (142 loc) · 4.86 KB
/
CHANGELOG.yaml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
Unreleased:
added: []
fixed: []
changed: []
deprecated: []
removed: []
security: []
2.0.1:
fixed:
- unpin max django version
changed:
- convert to uv
2.0.0:
added:
- python3.11 support
- python3.10 support
- django4 support
- django4.2 support
- django3.2 support
removed:
- python3.6 support
- python3.7 support
- django2.2 support
- django3.0 support
- django3.1 support
1.9.1:
fixed:
- bug where group permissions overwrote direct permissions
1.9.0:
added:
- python3.9 support
- django3.1 support
- added rest.ModelViewSetPermission django-rest-framework permission class
- added grainy_namespace property to decorated models
- added util.check_permissions helper function
- added util.get_permissions helper function
- added GRAINY_ANONYMOUS_GROUP setting
fixed:
- fix django-admin user and group admin view unregister
- fix instance namespacing on decorated models that have a grainy parent defined
changed:
- grainy handler classes moved to handlers.py to prevent circular depdendency issue
1.8.0:
added:
- remote grainy permissions
- field level permission checks when POST/PUT/PATCHing to REST api (#14)
- python3.8 support
changed:
- 'fix #36: Grainy decorators should allow setting of Permissions class to use for
permission checks'
removed:
- python2.7 support
- python3.4 support
- python3.5 support
- django1.11 support
1.7.0:
added:
- tests for django 2.1
- 'fix #33: easy namespace inheritance through related models'
- 'fix #31: add delete_permission function to grainy manager'
- 'fix #35: Custom permission holder implementation'
fixed:
- 'admin inlines: sort by namespace alphabetically (#24)'
changed:
- move from facsimile to Ctl (#32)
1.6.2:
fixed:
- when applying perms to a grainy view response, make sure to return the proper
container when it is empty
1.6.1:
fixed:
- Fixed issue with namespace formatting for grainy views that was introduced in
1.6.0 where trying to format using url parameters would raise a KeyError
1.6.0:
added:
- grainy view decorators can now access the request object when formatting namespaces
- you can now use extra keyword arguments passed to `Grainy.namespace` and `helpers.namespace`
to further format the namespace string
changed:
- 'grainy view decorators: renamed `explicit_object` to `explicit_instance`'
1.5.0:
added:
- '`util.Permissions.get` now accepts the `explicit` keyword argument'
- '`decorators.grainy_view` now accepts the `explicit_object` keyword argument'
fixed:
- '`util.Permissions.get` now works correctly'
changed:
- '`decorators.grainy_view` request GET parameters now available for namespace formatting'
- '`decorators.grainy_view` get_object() now available as `instance` for base namespace
formatting if it exists'
- '`decorators.grainy_decorator` decorator namespaces can now be passed as lists
in which case the resulting namespace is a joint namespace of all the elements'
1.4.0:
added:
- implemented `decorators.grainy_view_response`
- implemented `decorators.grainy_json_view_response`
- implemented `decorators.grainy_rest_viewset_response`
changed:
- '`decorators.grainy_view` now simply decorates all response handlers'
- '`decorators.grainy_json_view` now simply decorates all response handlers'
- '`decorators.grainy_rest_viewset` now simply decorates all response handlers'
1.3.0:
added:
- 'grainy_model: allow specifying of custom instance namespace formatting'
- 'grainy_view: impl explicit namespace handling during request gating'
1.2.1:
fixed:
- Template files not being installed
1.2.0:
added:
- 'Permissions.instances(): add `explicit` keyword argument'
- 'Permissions.instances(): add `ignore_grant_all` keyword argument'
- 'Permissions.check(): add `ignore_grant_all` keyword argument'
1.1.0:
added:
- Passing a `tuple` or `list` to `helpers.namespace` will now return a joint namespace
of all contained elements
- Implemented `util.Permissions.instances` method to retrieve all instances of a
model according to permissions
- '`decorators.grainy_view` decorator can now use url parameters to format it s
namespace'
1.0.0:
added:
- grainy authentication backend
- django admin integration
- str_flags function
- PermissioManager.add_permission
- Default permissions for AnonymousUser
- decorators.grainy_view
- decorators.grainy_rest_viewset
- helpers.dict_get_namespace
- helpers.request_method_to_flag
- helpers.request_to_flag
- util.Permissions.grant_all property
- conf.REQUEST_METHOD_TO_FLAG
fixed:
- util.Permissions now accepts AnonynmousUser as object
changed:
- renamed `convert_flags` to `int_flags`
- moved `str_flags` and `int_flags` functions from util.py to helpers.py
- moved `namespace` function from util.py to models.py
- removed `clear` argument from `PermissionManager.add_permission_set`