ZLDAPConnection CHANGES.txt 1.1.0 Features Added o A non beta release! Although, this may still be a bit shaky. o The LDAP Connection object has the ability to be *non-transactional*, which is currently the preferred way of using the LDAP Connection object. There is still an outstanding bug with the way the transactional behavior works when updating more than one Entry object at a time. o Entry API is vastly improved, and is not backwards compatible with ZopeLDAP 1.0. The primary advantage is that now that Python Scripts are in the core, Entry objects are easier to program without having to use the 'manage_' methods (although those will continue to work, and their API has not changed). o To go along with the Entry API improvement, the Permissions of Entry objects have been improved as well. o The LDAP Connection has an Entry Factory which decides whether to use a Transactional or Non-Transactional Entry object. The usage to the end user is indistinguishable, except that the nontransactional entry objects update to the LDAP server *immediately*. Bugs Fixed o The bug in the transaction management behavior of the Connection object has not been fixed, but the new Non-Transactional ability should make up for this bug in most situations. 1.0b5 Bugs Fixed o Entry objects would raise a KeyError on a failed attribute access, which caused a failure in the Security Machinery (non-critical - security was not affected, only attribute access). Now AttributeError is properly raised. 1.0b4 Bugs Fixed o Entry.manage_newEntry and Entry.manage_newEntryWithAttributes now return the newly added Entry object. o Should work properly with Zope 2.2.x, and still work with Zope 2.1.6. 1.0b3 Bugs Fixed o Fixes an issue with getRawEntry() raising an IndexError exception in some cases. o LDAPConnection doesn't keep setting self.openc every time _open() is called, thus avoiding constant writes to the ZODB. o Fixed ZLDAPConnection.__init__.py to use the proper product initialization code (prior versions were using an extremely outdated mechanism). *This also means registering permissions which affect Entry objects so that on Folders, permissions to manage entry objects are settable*. Features Added o New module 'LDCAccessors.py' implements getter/setter methods for all ZLDAPConnection properties. It is mixed into ZLDAPConnection. 1.0b2 o Updated for Zope 2.1.5/2.1.6 new security measures on method-ish objects. o Has a settable "Browsable" property on the Connection object. 1.0b1 o This is a pretty major overhaul of the original alpha code, primarily to include some sort of pseudo-transactional safety (all done in Zope since LDAP has no concept of transactions). o Seperated ZLDAPConnection and Entry objects. ZLDAPConnection (the class) no longer subclasses from an Entry object. (In old code, it was the Entry object at the root of the connection. In this version, the root is gotten to by calling the method 'getRoot()' on the connection). o Seperated the Entry class into two classes: GenericEntry and Entry, found in Entry.py. GenericEntry holds all of the Entry related methods and data for communicating with its Connection object; Entry has the Zope interface and implements the tree protocol (tpValues, tpId, tpURL) and the objectXXX protocol (objectValues, objectItems, objectIds). These calls access the Entry's sub-entry objects. o Try to ensure some integrity with Zope transactions. Since LDAP has no concept of transactions, this is not ideal, but it's a step up from having no transaction support at all.