xref: /plugin/pureldap/vendor/freedsx/ldap/CHANGELOG.md (revision 6d90d5c87387cafcb884bda8c1b3c7ab80656146)
1CHANGELOG
2=========
3
40.6.0 (2019-12-14)
5------------------
6* Add initial SASL support with a limited set of mechanisms (DIGEST-MD5, CRAM-MD5, PLAIN, ANONYMOUS).
7* The Server RequestHandler interface now requires type-hints for all methods.
8* Server request handlers can now return their own RootDSE if they choose to.
9* Added an isValid() method to the Dn class.
10* Added a firstValue() and lastValue() method for attributes.
11* The client and server protocol handlers have been completely refactored.
12* Implemented PHPStan and made fixes necessary to bump it to the max level.
13* Introduced code coverage to CI runs.
14* Moved CI runs into Github Actions.
15* Use PSR-12 coding standards via ECS.
16
170.5.0 (2019-03-11)
18------------------
19* Vastly improved memory efficiency and performance in general (especially on large search results).
20* Add a DirSync helper class for Active Directory.
21* Add Active Directory specific controls: ExpectedEntryCount, SetOwner, ADPolicyHints, ShowDeleted, ShowRecycled
22* Add a range retrieval helper class to make it easier to work with ranged results from Active Directory.
23* Add a "rename()" convenience method to the LdapClient.
24* Add a "move()" convenience method to the LdapClient.
25* Add a "getDescription()" method to the Attribute class to retrieve the attribute with all options.
26* Add a "getOptions()" method the the Attribute class to iterate through options for an attribute.
27* Add a "fromArray" method to make constructing entry objects from arrays sound more natural.
28* Calling the LdapClient "read()" method with no arguments will now return the RootDSE by default.
29* Fix an OpenLDAP specific bug in the paging helper class. OpenLDAP does not return a control when aborting paging.
30* Fix an issue with the Socket class not recognizing the certificate authority cert specified in the options.
31* Implement OpenLDAP / Active Directory test servers with test data during CI runs for integration tests via PHPUnit.
32* Moved the Socket classes to their own library so it can be used in other projects.
33* Add more complete documentation for working with Entry objects.
34
350.4.0 (2018-04-20)
36------------------
37* Moved ASN.1 to its own library.
38* Add a create convenience method to the LdapClient to create a single LDAP entry.
39* Add a read convenience method to the LdapClient to return a single LDAP entry.
40* Add an update convenience method to the LdapClient to update a single LDAP entry.
41* Add a delete convenience method to the LdapClient to delete a single LDAP entry.
42* Rename searchRead() and searchList() operation methods to read() and list().
43* Throw an exception on referrals by default. Do not allow ignoring them, only following them.
44
450.3.0 (2018-02-12)
46------------------
47* Implement referral handling options.
48* Add an LDAP URL parser / object based on RFC 4516.
49* Honor the timeout_read setting in the LDAP client.
50* Better handle remote disconnects / failed reads in the client to prevent hanging under some circumstances.
51* Add magic methods to Entry objects for attribute access.
52* Add an idle_timeout setting to the LDAP server. Default to 600 seconds.
53
540.2.0 (2017-12-08)
55------------------
56* Renamed to FreeDSx to avoid naming confusion with the phpds extension.
57* Implement very limited LDAP server functionality.
58* Added a string filter parser based on RFC 4515. Allows creating filter objects from arbitrary string filters.
59* Added a toString() method on filters for displaying their string filter representation.
60* Add a compare() operation method helper to the LdapClient.
61* Corrected the ASN1 encoding of the 'not' filter.
62* Corrected BER encoding indefinite length partial PDU detection.
63* Be more defensive on RDN creation when parsing the string.
64* LDAP clients now throw an OperationException instead of a ProtocolException.
65* Added documentation for the client and server.
66
670.1.0 (2017-10-22)
68------------------
69* Tagging initial release. Still under heavy development.
70