Posted By: Austin Ziegler
Date: 2011-03-22 04:59
Summary: net-ldap 0.2 Released
Project: Net::LDAP for Ruby

net-ldap version 0.2 has been released!

Net::LDAP for Ruby (also called net-ldap) implements client access for the
Lightweight Directory Access Protocol (LDAP), an IETF standard protocol for
accessing distributed directory services. Net::LDAP is written completely in
Ruby with no external dependencies. It supports most LDAP client features and a
subset of server features as well.

Net::LDAP has been tested against modern popular LDAP servers including
OpenLDAP and Active Directory. The current release is mostly compliant with
earlier versions of the IETF LDAP RFCs (2251–2256, 2829–2830, 3377, and 3771).
Our roadmap for Net::LDAP 1.0 is to gain full client compliance with
the most recent LDAP RFCs (4510–4519, plus portions of 4520–4532).

Changes:

### Net::LDAP 0.2 / 2011-03-__
* Major Enhancements:
* Net::LDAP::Filter changes:
* Filters can only be constructed using our custom constructors (eq, ge,
etc.). Cleaned up the code to reflect the private new.
* Fixed #to_ber to output a BER representation for :ne filters. Simplified
the BER construction for substring matching.
* Added Filter.join(left, right), Filter.intersect(left, right), and
Filter.negate(filter) to match Filter#&, Filter#|, and Filter#~@ to
prevent those operators from having problems with the private new.
* Added Filter.present and Filter.present? aliases for the method
previously only known as Filter.pres.
* Added Filter.escape to escape strings for use in filters, based on
rfc4515.
* Added Filter.equals, Filter.begins, Filter.ends and Filter.contains,
which automatically escape input for use in a filter string.
* Cleaned up Net::LDAP::Filter::FilterParser to handle branches better.
Fixed some of the regular expressions to be more canonically defined.
* Correctly handles single-branch branches.
* Cleaned up the string representation of Filter objects.
* Added experimental support for RFC4515 extensible matching (e.g.,
"(cn:caseExactMatch:=Fred Flintstone)"); provided by "nowhereman".
* Net::LDAP::DN class representing an automatically escaping/unescaping
distinguished name for LDAP queries.
* Minor Enhancements:
* SSL capabilities will be enabled or disabled based on whether we can load
OpenSSL successfully or not.
* Moved the core class extensions extensions from being in the Net::LDAP
hierarchy to the Net::BER hierarchy as most of the methods therein are
related to BER-encoding values. This will make extracting Net::BER from
Net::LDAP easier in the future.
* Added some unit tests for the BER core extensions.
* Paging controls are only sent where they are supported.
* Documentation Changes:
* Core class extension methods under Net::BER.
* Extensive changes to Net::BER documentation.
* Cleaned up some rdoc oddities, suppressed empty documentation sections
where possible.
* Added a document describing how to contribute to Net::LDAP most
effectively.
* Added a document recognizing contributors to Net::LDAP.
* Extended unit testing:
* Added some unit tests for the BER core extensions.
* The LDIF test data file was split for Ruby 1.9 regexp support.
* Added a cruisecontrol.rb task.
* Converted some test/unit tests to specs.
* Code clean-up:
* Made the formatting of code consistent across all files.
* Removed Net::BER::BERParser::TagClasses as it does not appear to be used.
* Replaced calls to #to_a with calls to Kernel#Array; since Ruby 1.8.3, the
default #to_a implementation has been deprecated and should be replaced
either with calls to Kernel#Array or [value].flatten(1).
* Modified #add and #modify to return a Pdu#result_code instead of a
Pdu#result. This may be changed in Net::LDAP 1.0 to return the full
Pdu#result, but if we do so, it will be that way for all LDAP calls
involving Pdu objects.
* Renamed Net::LDAP::Psw to Net::LDAP::Password with a corresponding filename
change.
* Removed the stub file lib/net/ldif.rb and class Net::LDIF.
* Project Management:
* Changed the license from Ruby + GPL to MIT with the agreement of the
original author (Francis Cianfrocca) and the named contributors. Versions
prior to 0.2.0 are still available under the Ruby + GPL license.

Latest News
icalendar 1.4.0 Released
    Ryan Ahearn - 2013-05-21 23:17
BinData 1.5.0 - source moved to github
    Dion Mendel - 2013-05-21 11:10
v13.5.0 Released !!
    id 774 - 2013-05-18 12:28
Runt v0.9.0 Released
    Matthew Lipper - 2013-05-17 00:11
kramdown 1.0.2 released
    Thomas Leitner - 2013-05-09 06:58

 

Forums | Admin

Discussion Forums: net-ldap-0-2-released

Start New Thread Start New Thread

 

Topic Topic Starter Replies Last Post