Skip to content

3.0.0

Compare
Choose a tag to compare
@encukou encukou released this 13 Mar 13:12
· 206 commits to main since this release

Notable changes since 2.4.45 (please see detailed logs below):


Released 3.0.0 2018-03-12

Changes since 3.0.0b4:

Lib/

  • Add bytes_strictness to allow configuring behavior on bytes/text mismatch

Modules/

  • Add argument name to bytes mode TypeError
  • Use correct integer types for BER encode/decode (fix for big endian machines)

Test/

  • Set $LDAPNOINIT in all tests
  • Add test for secure TLS default
  • Ignore SASL methods in DSE test (fix for restricted environments)
  • Remove filterstr workaround from syncrepl test
  • Explicitly set TLS_REQUIRE_CERT option to TLS_HARD in test_tls_ext_noca

Doc/

  • Link to bytes mode from text-string arguments in the ldap module

Infrastructure:

  • Include lber in list of libraries in setup.cfg

Released 3.0.0b4 2018-01-10

Changes since 3.0.0b3:

Removed support for Python 3.3, which reached its end-of-life 2017-09-29.

Lib/

  • Make default argument values work under bytes_mode
  • Update use of map() to use list/set comprehensions instead

Test/

  • Refactor syncrepl tests to run with bytes_mode

Doc/

  • Document all_records attribute of LDIFRecordList

Released 3.0.0b3 2017-12-20

Changes since 3.0.0b2:

The functions ldap.open(), ldap.init(), ldif.CreateLDIF()
and ldif.ParseLDIF(), which were deprecated for over a decade,
are scheduled for removal in python-ldap 3.1.

Infrastructure:

  • Require setuptools to build
  • Start running automatic tests on PyPy

Lib/

  • When raising LDAPBytesWarning, give helpful code locations
  • Use modern Python idioms in several places
  • Avoid reimplementing UserDict.get() in cidict and models.Entry

Doc/

  • Use https links

Test/

  • Add reproducer for openldap's NSS shutdown/restart issue
  • Make testing on non-Linux platforms easier

Released 3.0.0b2 2017-12-11

Changes since 3.0.0b1:

The module ldap.async is renamed to ldap.asyncsearch, due to
async becoming a keyword in Python 3.7.
The old module name is deprecated, but will be available as long
as Python 3.6 is supported.

Lib/

  • Use custom ldap.LDAPBytesWarning class
  • Rename ldap.async to ldap.asyncsearch

Modules/

  • Support None for set_option(OPT_TIMEOUT) and OPT_NETWORK_TIMEOUT
  • Fix error reporting of LDAPObject.set_option()
  • Change memory handling in attrs_from_List()

Test/

  • Remove workaround for OpenLDAP NSS issue

Demo/

  • Use uniform shebang in all demos

Doc/

  • Provide build deps for Alpine and CentOS
  • Move sample workflow out of the main Contributing guide

Infrastructure:

  • Add valgrind target to check for memory leaks
  • Minimal configuration for pytest

Released 3.0.0b1 2017-12-04

Changes since 2.4.45:
(this list includes changes from 2.5.x)

New dependencies (automatically installed when using pip):

  • pyasn1 0.3.7+
  • pyasn1_modules 0.1.5+

Python 3 support and bytes_mode:

Removed support for Python 2.6.

Infrastructure:

  • Move to Git
  • Don't define search path for includes and libs in the default setup.cfg
  • Include sasl/sasl.h from the standard path
  • Re-format README to ReStructured Text
  • Setup for automatic testing using Travis CI
  • Add coverage reporting for Python and C
  • Add install requires into setup.py
  • Remove distclean.sh in favor of make clean
  • Use package, depends, install_requires in setup.py
  • Add make target for scan-build (static analysis using clang)
  • Add make target and suppression file for Valgrind (memory checker)

Modules/

  • Remove unused LDAPberval helper functions
  • Fix type conversion in page control
  • Fix multiple ref leaks in error-handling code
  • Fix reference leak in result4
  • Fix several compiler warnings
  • Fix memory leak in whoami
  • Fix internal error handling of LDAPControl_to_List()
  • Fix two memory leaks and release GIL in encode_assertion_control
  • Allow set_option() to set timeouts to infinity
    and, thanks to Michael Ströder:
  • removed unused code schema.c
  • 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/

  • Avoid eval() for getting module-level variables to fix running under pytest
  • Compability changes for pyasn1 0.3 or newer
    and, thanks to Michael Ströder:
  • 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
  • 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
  • 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

Lib/slapdtest

  • Automatically try some common locations for SCHEMADIR
  • Ensure server is stopped when the process exits
  • Check for LDAP schema and slapd binaries
  • slapdtest is now a package and includes testing certificates

Tests/

  • Expand cidict membership test
  • Add test suite for binds
  • Add test suite for edits
  • Add a smoke-check for listall() and attribute_types()
  • Add test case for SASL EXTERNAL auth
  • Add tests for start_tls
  • In CI, treat compiler warnings as fatal errors
  • Added tests for ldap.syncrepl
    and, thanks to Michael Ströder:
  • added explicit reconnect tests for ReconnectLDAPObject
  • scripts do not directly call SlapdTestCase.setUpClass() anymore
  • added LDIF test with folded, base64-encoded attribute
  • added more tests for sub-module ldap.dn

Doc/

  • Build documentation without the compiled C extension
  • Merge contents from python-ldap.org
  • Move reference documentation in its own section
  • Document return value of {modify,add,delete}_ext_s() as a tuple
  • Add tests for documentation (build & spelling)
  • Link to documentation of old versions
  • Add a contributing guide
pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy