forked from plone/Products.PlonePAS
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathCHANGES.txt
778 lines (555 loc) · 21.2 KB
/
CHANGES.txt
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
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
Changelog
=========
4.0.13 (unreleased)
-------------------
- Nothing changed yet.
4.0.12 (2012-04-09)
-------------------
- Make sure that during registration you can change your member
portrait (if this has been enabled the member registration config).
Refs http://dev.plone.org/ticket/5432
[maurits]
4.0.11 (2012-02-08)
-------------------
- Do some more checks when changing or deleting a member portrait.
Fixes http://dev.plone.org/ticket/5432
[maurits]
- Pass request along to getGroupsForPrincipal for caching purposes.
[esteele]
4.0.10 (2012-01-04)
-------------------
- Fixed typo in method name hasOpenIDExtractor, keeping the old name
(hasOpenIDdExtractor) around for backwards compatibility.
Fixes http://dev.plone.org/ticket/11040
[maurits]
4.0.9 (2011-11-24)
------------------
- Avoid a failure when we try to add a role to principal that is managed by
an other plugin.
[thomasdesvenain]
- Cleaned up and reduced dependencies. New extra ``atstorage`` for the rare case
someone uses PlonePAS w/o Plone but with Archetypes (if this is this
possible). [jensens]
4.0.8 - 2011-06-30
------------------
- Fire IPrincipalDeleted when a user is deleted.
[stefan, ggozad]
4.0.7 - 2011-05-12
------------------
- Copy in CleanupTemp from CMFCore as it has been removed from CMFCore 2.3.
[elro]
- Move import step to be registered in ZCML rather than XML.
Remove the non-existent dependency on `plonepas-content`.
[kiorky]
4.0.6 - 2011-02-25
------------------
- Fix missing and broken security declarations.
[davisagli]
4.0.5 - 2011-02-14
------------------
- Avoid breaking on startup if PIL isn't present.
[davisagli]
- Use 'defaultUser.png' as the default user portrait, since the .gif version
has been deprecated for a long time now. See
http://dev.plone.org/plone/changeset/36350
[mj]
4.0.4 - 2011-01-03
------------------
- Remove plone.openid dependency in setup.py, import errors are already caught
in PASInfoView.
[elro]
- The code to search by id in mutable_properties.enumerateUsers didn't work at
all, an exception was always raised and it was actually a good thing.
We tried to implement it in 3.10 and we had strange listing in Plone UI. Then
we reverted it in the next version so the behavior was backward compatible
with previous versions.
If we allow search by id, we can potentially break other part of the code. For
example acl_users/portal_role_manager/manage_roles will break because
Products.PluggableAuthService.plugins.ZODBRoleManager.listAssignedPrincipals
raises MultiplePrincipalError, and maybe it will break somewhere else.
Versions 4.0.4 and 3.13 use now the same algorithm.
References http://dev.plone.org/plone/ticket/9361
[vincenfretin]
- When calling editGroup method, avoid error
while trying to remove dynamic 'AuthenticatedUsers' group.
[thomasdesvenain]
- In Plone 4.1+, create a Site Administrators group with the new Site
Administrator role.
[davisagli]
- Fix critical error on groupprefs page
when some groups have a non-ascii character in their title.
Sort groups on their title normalized.
This fixes http://dev.plone.org/plone/ticket/11301
[thomasdesvenain]
- Fix interface error: doChangeUser takes a user id as parameter,
not a login name.
[wichert]
4.0.3 - 2010-09-09
------------------
- Check we have a REQUEST attribute before accessing it in
getRolesForPrincipal.
[vincentfretin]
- Use safe_unicode to correctly find users with
non-ascii properties, regardless of the sys.defaultencoding.
This fixes http://dev.plone.org/plone/ticket/10898
[mr_savage]
4.0.2 - 2010-08-08
------------------
- Made last_login_time logic compatible with DateTime 2.12.5.
[hannosch]
4.0.1 - 2010-07-31
------------------
- Clean up some unused imports and variable assigments.
[esteele]
- Stop looking to GRUF to check if group properties can be edited.
[esteele]
4.0 - 2010-07-18
----------------
- Avoid a deprecation warning for the credentialsChanged method.
[hannosch]
- Fixed problems with missing user cache invalidation. This closes
http://dev.plone.org/plone/ticket/10715.
[fafhrd, hannosch]
- Make VirtualGroup inherit from PropertiedUser so it gets wrapped correctly.
Have getGroupsForPrincipal not return the AutoGroup as a member of itself.
Closes http://dev.plone.org/plone/ticket/10568.
[cah190]
- PluggableAuthService expects a list of group ids from getGroups, don't pass a
list of wrapped groups instead.
[cah190, esteele]
- Added a custom `IMembershipTool` interface to PlonePAS extending the base one
from CMFCore. It adds the `getMemberInfo` method to the mix. This closes
http://dev.plone.org/plone/ticket/10240.
[hannosch]
4.0b9 - 2010-06-03
------------------
- Fixed a test to no longer use removed Large Plone Folder type.
[davisagli]
4.0b8 - 2010-05-01
------------------
- Removed special unauthorized view workaround, after the underlying issue
has been fixed in Zope2.
[davisagli, hannosch]
4.0b7 - 2010-04-07
------------------
- Added manage_setMembersFolderById method for ZMI.
Fixes http://dev.plone.org/plone/ticket/10400
[daftdog]
4.0b6 - 2010-03-05
------------------
- Revert incorrect PIL import change.
[hannosch]
4.0b5 - 2010-03-03
------------------
- Install recursive_groups in new sites by default. Make it the last
IGroupsPlugin installed.
[esteele]
- Remove caching of utils.py's getGroupsForPrincipal method as it was nastily
overzealous.
[esteele, cah190]
- Use sets instead of util.py's 'unique' method.
[esteele]
4.0b4 - 2010-02-18
------------------
- Properly import from PIL 1.1.7
[tom_gross]
- Cache getGroupsForPrincipal per principal id per request (when available).
[esteele]
4.0b3 - 2010-01-31
------------------
- Role plugin's tests no longer subclass (and run all of) ZODBRoleManagerTests
as they cannot properly handle the plugin's expectation of finding a
PluginRegistry with IGroupsPlugin
[erikrose, esteele]
- Revert changes made to ZODBMutablePropertyProvider's enumerateUsers method
which prevented lookup of users by id. Some refactoring.
Refs http://dev.plone.org/plone/ticket/9361
[erikrose, esteele]
- GroupAwareRoleManager now properly computes the roles of deeply-nested
principals.
[erikrose, esteele]
- Factor up getGroupsForPrincipal call.
[erikrose, esteele]
- AutoGroup now implements IPropertiesPlugin to return group title and description.
[erikrose, esteele]
- GroupsTool's getGroupsForPrincipal and getGroupMembers now return a list
made up of groups/members from all responding plugins instead of just the
first responder.
[erikrose, esteele]
- Remove GroupData's _gruf_getProperty method, move remaining functionality
into getProperty. getProperty now searches for properties in the following
places: property sheets directly on the group object, PAS
IPropertyProviders, portal_groupdata properties, and attributes on its
GroupData entry. It returns the first piece of data found.
Closes http://dev.plone.org/plone/ticket/9828
[erikrose, esteele]
- Added __ignore_direct_roles__ request flag to getRolesForPrincipal() to
permit retrieval of only group-provided (inherited) roles.
[cah190]
- getGroupsForPrincipal is a method of PAS' IGroupsPlugin, adjust the groups
tool's plugin lookup accordingly.
[esteele]
- Rework the group detection of the ZODBMutablePropertyProvider so that
enumerateUsers only returns users.
[esteele]
- Add, but don't activate, a recursive groups plugin on installation.
[esteele]
- Set proper titles for default groups.
[esteele]
- Avoid the use of the classImplements helper from PAS. It dealt with the now
gone Zope2 Interface variants and is no longer needed.
[hannosch]
- Fix a misnamed kwarg in autogroup plugin.
[cah190]
- Allow the groups tool's searchForGroups to handle an empty search string as
'find all'.
[esteele, cah190]
- Allow PASSearchView's searchGroups method to accept a sorting option.
[esteele]
- Apply deiter's patch from http://dev.plone.org/plone/ticket/9460 to prevent
GroupManager's 'getGroupById' from returning groups managed by other group
managers.
[esteele]
- GroupsTool.editGroup() now stores title and description in PAS
propertysheets in addition to Plone-specific tools. This helps us not pave
over group titles with IDs.
[erikrose]
- Query the correct keyword variable for the group's description.
[esteele]
- Fix an incorrect setdefault syntax.
Closes http://dev.plone.org/plone/ticket/7345
[esteele]
4.0b2 - 2010-01-02
------------------
- Don't specify PIL as a direct dependencies. It is not installed as an egg on
all platforms.
[hannosch]
4.0b1 - 2009-12-27
------------------
- Fixed package dependencies declaration.
[hannosch]
4.0a2 - 2009-12-16
------------------
- Added backwards compatibility alias for PloneTool to support upgrades from
Plone 2.5 to work.
[hannosch]
- Added 'has_email' to the info returned by getMemberInfo.
Refs http://dev.plone.org/plone/ticket/8707
[maurits]
4.0a1 - 2009-11-14
------------------
- Simplified ``pas_member`` view. Also return info when no member
with the requested id exists, so this can be safely used also to get
"member info" for deleted members.
[maurits]
- Added new ``pas_member`` view, which provides easy access to the membership
tools getMemberInfo method but caches the result on the request.
[hannosch]
- Changed the default value of `memberareaCreationFlag` for the membership
tool to False, as it was done during Plone site creation so far.
[hannosch]
- Removed patch on ZODBUserManager.enumerateUsers which was introduced
historical because of a former missing release of PluggableAuthService 1.5.
This now superfluous patch also reduced the functionality of the
patched method and introduced different behavior compared to i.e in
a similar method on LDAPMultiPlugins. For details on the former
patch see:
http://dev.plone.org/collective/changeset/41512/PlonePAS/trunk/pas.py
[jensens]
- Moved a couple DTML files here from CMFPlone that got left out of the earlier
refactoring.
[davisagli]
- Added a view of the Unauthorized exception which re-raises that exception
in order to make sure that it triggers PAS' challenge plugin rather than
rendering the standard_error_message.
[davisagli]
- Removed deprecation warnings for various methods. These never happened.
[hannosch]
- Removed half-done ZCacheable caching for users and groups.
[hannosch]
- Removed the CMFDefault dependency of the membership tool. We only need the
CMFCore functionality.
[hannosch]
- PlonePAS.gruf_support.authenticate method was not breaking out of
the loop upon successful authenticateCredentials.
[runyaga]
- Changed objectIds and objectValues calls to use the IContainer API.
[hannosch]
- Removed parts of the outdated Extensions.Install code.
[hannosch]
- Removed a dependency on CMFPlone's `_createObjectByType` method.
[hannosch]
- Removed magical `homePageText` lookup for initial memberarea content. You
can use the `notifyMemberAreaCreated` hook for any kind of custom behavior.
[hannosch]
- Moved the `scale_image` function from CMFPlone.utils into our own utils
module, as we are the only user of it. Also made the tests independent of
any CMFPlone code.
[hannosch]
- Cleaned up package metadata.
[hannosch]
- Declare test dependencies in an extra and fixed deprecation warnings
for use of Globals.
[hannosch]
- Switched the installation progress reporting to the logging framework.
[hannosch]
- Cleaned up annoying license headers in all files. We have a central place
to state the license.
[hannosch]
- Started cleaning up deprecated methods and comments.
[hannosch]
- Removed support for group workspaces. This part from GRUF hasn't been
supported for many releases anymore.
[hannosch]
- Merged all code for the groups tool from GRUF into this package, we are
officially GRUF-dependency-free :)
[hannosch]
- Merged all code for the group data tool from GRUF into this package.
[hannosch]
- Removed the GRUFBridge plugin. PAS inside GRUF isn't supported anymore.
[hannosch]
- Merged tests moved from CMFPlone into the same modules as the existing
tests and normalized file names.
[hannosch]
- Modernized tests and introduce a proper base testcase and layer.
[hannosch]
- Removed cookie auth tests, these don't work anymore with plone.session.
[hannosch]
- Moved over all tests for the four tools from CMFPlone.
[hannosch]
- Removed the user folder migration code and cleaned up tests.
[hannosch]
- Moved all code from the four tools from CMFPlone into this package.
[hannosch]
- Removed 'listed' member property support from one of the many search
functions following Plone.
[hannosch]
- Copied setLoginFormInCookieAuth from CMFPlone migrations.
[hannosch]
- Purged old Zope 2 Interface interfaces for Zope 2.12 compatibility.
(only a test in this case)
[elro]
3.12 - 2009-10-16
-----------------
- Fixed the performance fix again. enumerateUsers from mutable_properties
plugin should return all the users if kw is empty. And it returns empty
tuple if login or id parameter is used.
[vincentfretin]
3.11 - 2009-10-05
-----------------
- Revert performance fix introduced in 3.10 for the mutable properties plugin.
enumerateUsers shouldn't return results if id or login is not None like in
3.9 (data dict doesn't contain id or login key, so testMemberData returns
always False). The search should be performed only if kw parameter is not
empty. This is the new optimization fix.
[vincentfretin]
3.10 - 2009-09-06
-----------------
- Performance fix for searching in the mutable properties plugin:
when only searching on user id do not walk over all properties,
but only test if the user id is known. This fixes
http://dev.plone.org/plone/ticket/9361
[toutpt]
- Nested groups are now visible in prefs_group_members. This closes
http://dev.plone.org/plone/ticket/8557
[vincentfretin]
- Add sort and merge PASSearchView's interface to prevent code duplication.
[csenger]
3.9 - 2009-04-21
----------------
- Fix the cookie plugin's login handler to not trust the username
from the request. Instead we use the login name of the currently
authenticated user. This fixes CVE-2009-0662 (see
http://plone.org/products/plone/security/advisories/cve-2009-0662
for more information).
[wichert]
3.8 - 2009-02-13
----------------
- Update the role manager's assignRoleToPrincipal method to lazily
update the cached list of portal roles. This fixes problems with
adding users with GenericSetup-created roles.
[wichert]
- Fixed our OrderedDict to be unpickable with pickle protocol 2. On
unpickling a __init__ method is not called and an optimization in
protocol 2 would call __setitem__ without the _list to be initialized.
Even using a __getstate__ / __setstate__ combination wouldn't work
around that. This change was found in using membrane and
MemcachedManager.
[hannosch, tesdal]
3.7 - 2008-09-28
----------------
- Removed deprecation zcml statements for PluggableAuthService components:
these are now in PluggableAuthService itself.
[wichert]
- Adjusted deprecation warnings to point to Plone 4.0 instead of Plone 3.5
since we changed the version numbering again.
[hannosch]
3.6 - 2008-06-25
----------------
- Modify PloneGroup.getMemberIds to use all IGroupIntrospection plugins
to get the group members. This makes it possible to list members in
an LDAP group.
[wichert]
3.5 - 2008-06-25
----------------
- Make PASSearchView.merge actually merge search results. Its previous
behaviour was quite nasty: it preferred search results from the
enumeration plugin with the lowest priority!
[wichert]
3.4 - 2008-03-26
----------------
- Added BBB code for changed setLoginFormInCookieAuth upgrade method.
[hannosch]
- Ignore but log users without passwords during migration from pre-PAS, as
these cannot be added to any standard user source.
[hannosch]
- Fix listRoleInfo on the role plugin to also lazily update the list
of portal roles.
[wichert]
3.3 - 2007-03-07
----------------
- Added metadata.xml file to the profile.
[hannosch]
- Move global role lookup out of the local role plugin. Part of the
PLIP 127 merge for Plone 3.1.
[alecm]
3.2 - 2008-02-15
----------------
- Fix schema handling for ZODBMutablePropertyProvider initialization.
[maurits]
- Remove some exception swallowing from the installation logic so errors
are not hidden.
[hannosch]
- Correct handling an empty roles list when modifying groups.
This fixes http://dev.plone.org/plone/ticket/6994
[rsantos]
3.1 - 2007-10-08
----------------
- Improve handing of sorting for searches.
[csenger]
- Updating the roles for a group did not invalidate the _findGroup cache.
[wichert]
- Fixed some tool icons to point to existing icons.
[hannosch]
3.0 - 2007-08-16
----------------
- Fix check for authenticateCredentials return value
[rossp]
3.0rc2 - 2007-07-27
-------------------
- Fake a getPhysicalPath on our search view so ZCacheing works properly
everywhere.
[wichert]
- Add event classes for logged-in and logged-out events.
[wichert]
3.0rc1 - 2007-07-08
-------------------
- Correct logic in MemberData capability methods: any plugin is
allowed to (re)set a password, delete the user or add roles.
[wichert]
- Use the proper API to get the containing PAS in the group plugin
[wichert]
- Fix setting user properties on the user object.
[wichert]
3.0b7 - 2007-05-05
------------------
- Removed the five:registerPackage statement again. It causes problems in a
ZEO environment.
[hannosch]
- Removed our version of the Plone tool from ToolInit. It won't get an icon
anymore and you cannot add it, but existing instances still work. We
migrate all instances back to the regular tool anyways.
[hannosch]
3.0b6 - 2007-05-05
------------------
- Fixed two migration related test failures.
[hannosch]
- Spring cleaning, removed some cruft, pyflaked and corrected some more
undefined names.
[hannosch]
- New package layout, following standard Python package conventions.
[hannosch]
- Fixed tool names in ToolInit, so the permission has a proper name. This
closes http://dev.plone.org/plone/ticket/6525.
[hannosch]
3.0-beta5 - 2007-05-02
----------------------
- Modify the roles plugin to lazily update its roles list from the portal.
[wichert]
- Filter duplicate search results.
[laz, wichert]
- Add a sort_by option to the search methods to allow sorting of results
by a property.
[laz, wichert]
- Modify login method for the cookie plugin to perform the credential
update in the PAS of the user instead of the PAS of the plugin. This
helps in making sure that users will only authenticate against their
own user folder, so we get all their roles, properties, etc. correctly.
[wichert]
- Update installation logic to use plone.session for cookies
[wichert]
- Add pas_info and pas_search browser views.
[wichert]
- Deprecate the PlonePAS PloneTool; its changes have been merged in the
standard Plone version.
[wichert]
- Use getUtility to get the portal object.
[wichert]
- Deprecate user and group searching through CMF member and group tools
in favour of PAS enumeration.
[wichert]
- Refactor user searching in the membership tool to use standard PAS
searches.
[wichert]
- Add user enumeration capabilities to the mutable properties plugin.
[wichert]
- Add a new automatic group plugin which puts all users in a virtual
group. This is useful for permissions handling: since it is not
possible to add roles to users with the Authenticated role a
virtual group can be used instead.
[wichert]
- Added support to import PloneUserFactory and added stub
for ZODBMutableProperties. Attention: Latter needs a real
export and import! At the moment it do not export the
propertysheets. This is a TODO. At least with this two
additions PlonePAS import runs. Additional I needed to
hack PluginRegistry and and PluggableAuthService slightly.
[jensens]
- Added HISTORY.txt and updated version information.
[hannosch]
2.4 - 2007-04-15
----------------
- Optomise the local roles plugin for the common case where
local_roles is empty
[dreamcatcher]
- the plone user was assuming a one to one mapping between property plugin
and user property sheet, and stripping away additional ones as part of
the retrieval of ordered sheets, instead, it now stores all
propertysheets in an ordered dictionary, so this assumption is not needed
[k_vertigo]
- More postonly security changes
[alecm, ramon]
2.3 - 2007-05-30
----------------
- Use a local postonly decorator so PlonePAS can be used with Plone
2.5, 2.5.1 and 2.5.2.
[wichert]
- Protect the tools with postonly security modifiers.
[mj]
- Update GRUF compatibility functions to use the same security checks
as GRUF itself uses.
[mj]
- Fix migration to handle properties of selection or multiple selection
types.
[reinout]
- Correct creation of groups wich default group managers.
[dreamcatcher]
- Fix migration from GRUF sites: also include the member properties in the
migration.
[tesdal]
- Correct the test for creation of groups with the same id as users: search
for the exact id, not substrings.
[tesdal]
- Fix bad form action which made it impossible to add a plone user factory
plugin through the ZMI. Backported from trunk.
[wichert]