* Fri Dec 10 2021 michael@stroeder.com
- skip Python 2 builds
- set PATH when running tests
- update to upstream release 3.4.0
* Security fixes:
- Fix inefficient regular expression which allows denial-of-service attacks
when parsing specially-crafted LDAP schema (GHSL-2021-117, bsc#1194834)
* Changes:
- On MacOS, remove option to make LDAP connections from a file descriptor
when built with the system libldap (which lacks the underlying function,
ldap_init_fd)
- Attribute values of the post read control are now bytes
instead of ISO8859-1 decoded str
- LDAPUrl now treats urlscheme as case-insensitive
- Several OpenLDAP options are now supported:
- OPT_X_TLS_REQUIRE_SAN
- OPT_X_SASL_SSF_EXTERNAL
- OPT_X_TLS_PEERCERT
* Fixes:
- The copy() method of cidict was added back. It was unintentionally
removed in 3.3.0
- Fixed getting/setting SASL options on big endian platforms
- Unknown LDAP result code are now converted to LDAPexception,
rather than raising a SystemError.
* slapdtest:
- Show stderr of slapd -Ttest
- SlapdObject uses directory-based configuration of slapd
- SlapdObject startup is now faster
* Tue Sep 14 2021 pgajdos@suse.com
- %check: use %pyunittest_arch rpm macro
* Mon Sep 28 2020 william.brown@suse.com
- update to upstream release 3.3.1:
Highlights:
* ``LDAPError`` now contains additional fields, such as ctrls, result, msgid
* ``passwd_s`` can now extract the newly generated password
* LDAP connections can now be made from a file descriptor
This release is tested on Python 3.8, and the beta of Python 3.9.
The following undocumented functions are deprecated and scheduled for removal:
- ``ldap.cidict.strlist_intersection``
- ``ldap.cidict.strlist_minus``
- ``ldap.cidict.strlist_union``
Modules/
* Ensure ReconnectLDAPObject is not left in an inconsistent state after
a reconnection timeout
* Syncrepl now correctly parses SyncInfoMessage when the message is a syncIdSet
* Release GIL around global get/set option call
* Do not leak serverctrls in result functions
* Don't overallocate memory in attrs_from_List()
* Fix thread support check for Python 3
* With OpenLDAP 2.4.48, use the new header openldap.h
Lib/
* Fix some edge cases regarding quoting in the schema tokenizer
* Fix escaping a single space in ldap.escape_dn_chars
* Fix string formatting in ldap.compare_ext_s
* Prefer iterating dict instead of calling dict.keys()
Doc/
* Clarify the relationship between initialize() and LDAPObject()
* Improve documentation of TLS options
* Update FAQ to include Samba AD-DC error message
"Operation unavailable without authentication"
* Fix several incorrect examples and demos
(but note that these are not yet tested)
* Update Debian installation instructions for Debian Buster
* Typo fixes in docs and docstrings
Test/
* Test and document error cases in ldap.compare_s
* Test if reconnection is done after connection loss
* Make test certificates valid for the far future
* Use slapd -Tt instead of slaptest
Infrastructure:
* Mark the LICENCE file as a license for setuptools
* Use "unittest discover" rather than "setup.py test" to run tests
* Mon Dec 10 2018 tchvatal@suse.com
- Reduce the runtime dependencies to match the actual needs
* User can use either openldap or 389-ds or anything else
- Run the tests on the package
- Fix the fdupes call
* Fri Dec 07 2018 tchvatal@suse.com
- Add this package to SLE wrt fate#325747
- Do not add version dependency to devel requirement
* Tue Aug 14 2018 tchvatal@suse.com
- Require openldap2-client as some of the binaries are called
on the runtime
* Tue Aug 07 2018 michael@stroeder.com
- update to upstream release 3.1.0:
* Long-deprecated functions `ldap.open()` and `ldap.init()` are removed
* `LDAPObject.compare_s()` and `compare_ext_s` return bool instead of 0 or 1
* Tons of changes see CHANGES file
* Thu Jan 18 2018 fbergmann@suse.com
- update to upstream release 3.0.0b4:
- Adds support for Python 3.4+
- Adds support for `bytes_mode`
- Idiotmatic python code changes
- Adds testing for `pypy`
- Fixes/enhances tests
- Remove python-ldap.keyring and python-ldap-%{version}.tar.gz.asc:
There is no signature provided for the new upstream tarball
* Mon Nov 20 2017 michael@stroeder.com
- update to upstream release 2.5.2
Changes since 2.5.1:
* code-cleaning in setup.py
Modules/
* PyBytes_ instead of PyString_ and added PyInt_FromLong compat macro
* moved code from version.c to ldapmodule.c
* removed obsolete back-ward compability constants from common.h
* build checks whether LDAP_API_VERSION is OpenLDAP 2.4.x
* _ldap.__author__ and _ldap.__license__ also set from ldap.pkginfo
* assume C extension API for Python 2.7+
Lib/
* removed all dependencies on modules string and types
* removed use of .has_key()
* removed class ldap.ldapobject.NonblockingLDAPObject
* new global constant ldap.LIBLDAP_API_INFO
* right after importing _ldap there is a call into libldap to initialize it
* method .decodeControlValue() of SSSResponseControl and VLVResponseControl
does not set class attribute result_code anymore
* always use bytes() for UUID() constructor in ldap.syncrepl
* module ldif now uses functions b64encode() and b64decode()
* fixed pickling and restoring of ReconnectLDAPObject
* more modules with PEP-8 compliance
* ldap.ldapobject split into module-package
Tests/
* scripts do not directly call SlapdTestCase.setUpClass() anymore
* added LDIF test with folded, base64-encoded attribute
* added more tests for sub-module ldap.dn
* added tests for ldap.syncrepl (thanks to Karl Kornel)
* Sun Nov 12 2017 michael@stroeder.com
- update to upstream release 2.5.1
- adjusted BuildRequires to match upstream prerequisites
Changes since 2.4.45:
Mandatory prerequisites:
- Python 2.7.x
- pyasn1 0.3.7+ and pyasn1_modules 0.1.5+
Modules/
* removed unused code schema.c
Lib/
* ldap.__version__, ldap.__author__ and ldap.__license__ now
imported from new sub-module ldap.pkginfo also to setup.py
* Added safety assertion when importing _ldap:
ldap.pkginfo.__version__ must match _ldap.__version__
* removed stand-alone module dsml
* slapdtest.SlapdObject.restart() just restarts slapd
without cleaning any data
* Compability changes for pyasn1 0.3.x or newer
(thanks to Ilya Etingof and Christian Heimes)
* The methods SSSResponseControl.decodeControlValue() and
VLVResponseControl.decodeControlValue() now follow the coding
convention to use camel-cased ASN.1 name as class attribute name.
The old class names are still set for back-ward compability
but should not be used in new code because they might be removed
in a later release.
* removed SSSRequestControl from ldap.controls.KNOWN_RESPONSE_CONTROLS
Tests/
* added explicit reconnect tests for ReconnectLDAPObject
* Mon Oct 09 2017 michael@stroeder.com
- update to upstream release 2.4.45
* fixed error handling
* Thu Sep 07 2017 michael@stroeder.com
- update to upstream release 2.4.44
* GIL fix
* Thu Sep 07 2017 michael@stroeder.com
- update to upstream release 2.4.43
* SASL bind fix
* Mon Sep 04 2017 michael@stroeder.com
- update to upstream release 2.4.42
* small enhancements to test suite
* Wed Jul 12 2017 michael@stroeder.com
- update to upstream release 2.4.41 (small LDIF parser enhancement)
* Tue Jun 27 2017 michael@stroeder.com
- update to upstream release 2.4.40 (small memleak fix)
* Wed May 31 2017 michael@stroeder.com
- update to upstream release 2.4.39
* Thu May 18 2017 jmatejek@suse.com
- provide python2-ldap to support singlespec packages
* Fri Apr 28 2017 michael@stroeder.com
- update to upstream release 2.4.38
* Thu Apr 27 2017 michael@stroeder.com
- update to upstream release 2.4.37