ldaptor (0.0.43+debian1-7.2) unstable; urgency=medium * Replace previous NMU with a new source-only upload. -- Kenneth J. Pronovici Thu, 08 Aug 2019 02:35:31 +0000 ldaptor (0.0.43+debian1-7.1) unstable; urgency=medium * Non-maintainer upload. * Eliminate dependency on epydoc, which will be removed (closes: #933613) - Add patch remove-epydoc so API documentation is no longer built - Update debian/control to remove Build-Depends: python-epydoc - Update debian/ldaptor-doc.docs to remove doc/api directory - Remove debian/ldaptor-doc.doc-base.api -- Kenneth J. Pronovici Fri, 02 Aug 2019 14:39:19 +0000 ldaptor (0.0.43+debian1-7) unstable; urgency=low * Fix "FTBFS if built twice in a row: unrepresentable changes to source" remove build directory in debian/rules clean (Closes: #671527) * Bump-Standards-Version to 3.9.3 (no changes) * use symlinks to avoid duplicate files in ldaptor-doc, add debian/ldaptor-doc.links -- Jan Dittberner Tue, 15 May 2012 11:31:51 +0200 ldaptor (0.0.43+debian1-6) unstable; urgency=low * debian/control: - remove unneeded Breaks: ${python:Breaks} - bump Standards-Version to 3.9.2 (no changes needed) * remove deprecated webui test in debian/rules (dh_override_auto_clean) (Closes: #653869) -- Jan Dittberner Sat, 31 Dec 2011 20:49:34 +0100 ldaptor (0.0.43+debian1-4) unstable; urgency=low * remove broken binary package ldaptor-webui - change debian/control and debian/rules - add patch debian/patches/remove-webui.patch to stop building of ldaptor-webui documentation - remove debian/ldaptor-webui.* * remove build dependencies python-twisted-web, python-nevow, python- webut only required for ldaptor-webui * switch from python-support to dh_python2 - add --with python2 to debian/rules - remove python-support build dependency - bump python dependency to 2.6.5~ - change XS-Python-Version to X-Python-Version - add Breaks: ${python:Breaks} for Python binary packages * bump Standards-Version to 3.9.1 * don't compress api-objects.txt in debian/rules -- Jan Dittberner Sun, 13 Feb 2011 17:58:57 +0100 ldaptor (0.0.43+debian1-3) unstable; urgency=low [ Jakub Wilk ] * Don't hardcode ‘site-packages’ in debian/*.install, debian/rules (Closes: #586884). Thanks to Angel Abad for the bug report and the initial patch. [ Jan Dittberner ] * add debian/ldaptor-doc.doc-base.api, debian/ldaptor-doc.doc-base.ldap-intro, and debian/ldaptor-doc.doc-base.addressbook-slides to register documentation with doc-base -- Jan Dittberner Wed, 23 Jun 2010 20:23:03 +0200 ldaptor (0.0.43+debian1-2) unstable; urgency=low * add debian/patches/04_replace_string_exceptions_585240_585298_.patch to replace string exceptions by real Exception instances (Closes: #585240, #585298) * debian/control: - bump Standards-Version to 3.8.4 (no changes needed) - remove unnecessary Build-Depends python-all-dev - add python (>= 2.5.4-1~) to Build-Depends -- Jan Dittberner Sat, 12 Jun 2010 01:59:44 +0200 ldaptor (0.0.43+debian1-1) unstable; urgency=low * repack tarball to remove upstream debian directory (fix lintian warnings regarding lacking debhelper tokens in maintainer scripts) - remove workarounds from debian/rules * switch to source format 3.0 (quilt): - debian/control: remove explicit quilt dependency - add debian/source/format - debian/rules: remove --with quilt - change debian/README.source -- Jan Dittberner Sun, 06 Dec 2009 11:27:37 +0100 ldaptor (0.0.43-4) unstable; urgency=low [ Jan Dittberner ] * switch from cdbs to debhelper * switch from dpatch to quilt * replaced debian/patches/00list with debian/patches/series * replaced debian/patches/01_restore_pristine_code.dpatch with debian/patches/01_restore_pristine_code.patch * add debian/patches/02_fix_526522.patch: - fixes the reason of the traceback generated by ldaptor-ldap2passwd --help (Closes: #526522) * add debian/patches/03_fix_dia_invocation_545663.patch: - fixes invocation of dia to generate images during doc build in headless environments (Closes: #545663) * debian/changelog: - fix spelling error (fixes lintian warning) * debian/README.source: - replace dpatch information with quilt information * debian/control: - change to d.o email address - update Standards-Version to 3.8.3 (no changes needed) - remove dpatch and cdbs from Build-Depends - add quilt to Build-Depends - set minimum debhelper version to 7.0.50 - add python-docutils to Build-Depends-Indep to fix an epydoc warning * debian/ldaptor-ldap2passwd.1, debian/ldaptor-find-server.1, debian/ldaptor-ldap2dnszones.1, debian/ldaptor-ldap2pdns.1, debian/ldaptor-getfreenumber.1, debian/ldaptor-passwd.1, debian/ldaptor-namingcontexts.1, debian/ldaptor-search.1, debian/ldaptor-ldap2dhcpconf.1, debian/ldaptor-rename.1, debian/ldaptor-ldap2maradns.1, debian/ldaptor-fetchschema.1, debian/ldaptor-webui.1: update email address * debian/rules: - remove debian/postinst, debian/prerm and debian/python-ldaptor.README.Debian from upstream tarball's debian directory - use quilt instead of dpatch macros - use dh instead of cdbs * add debian/global.cfg, debian/ldaptor-doc.docs, debian/ldaptor-doc.examples and debian/ldaptor-webui.examples from removed upstream debian directory [ Sandro Tosi ] * debian/control - remove me from Uploaders -- Jan Dittberner Wed, 21 Oct 2009 20:21:51 +0200 ldaptor (0.0.43-3) unstable; urgency=low [ Sandro Tosi ] * debian/{control, patches/*, README.source, rules} - added dpatch, to prevent direct upstream code modification * debian/copyright - clearly separated license and copyright notices - indented upstream author with 4 spaces - link to LGPL-2.1 file, instead of the generic LGPL * debian/control - reformat long descriptions, to better use items lists - reformat short descriptions, in particular un-capitalize them - bump Standards-Version to 3.8.1 * debian/pycompat - removed since not needed * debian/{control, pyversions} - removed pyversions, superseded by XS-Python-Version * debian/prerm - removed since no more needed [ Ansgar Burchardt ] * debian/control: - `python-pyopenssl' has been renamed into `python-openssl'. Update dependencies accordingly. (Closes: #494904) - Do not duplicate Section field for binary packages. * debian/rules: Do not rely on python-support internals to find files, instead remove them earlier using the standard path (Closes: #516306). [ Jan Dittberner ] * remove unneeded debian/postinst containing only #DEBHELPER# * debian/control: - change Maintainer to DPMT - add Sandro Tosi and Jan Dittberner as Uploaders - add Vcs-Svn and Vcs-Browser - move dpatch to Build-Depends to fix lintian error clean-should-be-satisfied-by-build-depends - improve ldaptor-webui's long description - wrap long lines * debian/rules: remove upstream debian/postinst * add manual pages (Closes: #190706) - add debian/ldaptor-utils.manpages, debian/ldaptor-webui.manpages - add debian/ldaptor-fetchschema.1, debian/ldaptor-find-server.1, debian/ldaptor-getfreenumber.1, debian/ldaptor-ldap2dhcpconf.1, debian/ldaptor-ldap2dnszones.1, debian/ldaptor-ldap2maradns.1, debian/ldaptor-ldap2passwd.1, debian/ldaptor-ldap2pdns.1, debian/ldaptor-namingcontexts.1, debian/ldaptor-passwd.1, debian/ldaptor-rename.1, debian/ldaptor-search.1, debian/ldaptor-webui.1 * debian/python-ldaptor.install: be more specific to exclude ldaptor- webui files -- Sandro Tosi Sat, 28 Mar 2009 16:47:21 +0100 ldaptor (0.0.43-2) unstable; urgency=low * QA upload. * Deleted /usr/doc handling in postinst (closes: #359444) * Added missing #DEBHELPER# tokens in maintainer scripts -- Peter Eisentraut Fri, 04 Apr 2008 17:46:27 +0200 ldaptor (0.0.43-1) unstable; urgency=low * QA upload. + Set maintainer as Debian QA Group. * Acknowledge NMUs. + Remove ldiffdiff, ldiffpatch references (Closes: #370552). + Remove dummy package description (Closes: #420771). * Make package non-native. + Maintainer is no longer upstream. + Upstream appears dormant. * Bump debhelper build-dep and compat to 6. * Add Homepage field in control. * Remove ldaptor-common package (Closes: #385447). + Leave empty ldaptor-common.install because orig.tar.gz has debian dir -- Barry deFreese Tue, 22 Jan 2008 11:26:51 -0500 ldaptor (0.0.43-0.6) unstable; urgency=low * Non-maintainer upload. * Support the latest python policy. Closes: #445285. * Select the DEB_PYTHON_SYSTEM. * Build-depend on python-support and cdbs 0.4.49. * Lots of cleanup in the rules file. * setup.py: install skin-default.html. Closes: #408492. * interfaces.py, apps/webui/{iwebui,search}.py: use zope.interface instead of the deprecated twisted.python.components. * debian/{postinst,prerm}: removed, not necessary anymore. * Standards version is 3.7.3 * Fix list formatting in the long descriptions. * Fix description for python-ldaptor. -- Josselin Mouette Tue, 22 Jan 2008 10:44:24 +0100 ldaptor (0.0.43-0.5) unstable; urgency=low * Non-maintainer upload. * Fix call of epydoc in doc/Makefile to avoid FTBFS (Closes: #433738) -- Mario Iseli Fri, 17 Aug 2007 10:35:21 +0200 ldaptor (0.0.43-0.4) unstable; urgency=low * Non-maintainer upload. * Change version number to glob in debian/ldaptor-webui.install (Closes: #384825) -- Jaakko Niemi Sun, 1 Oct 2006 10:46:28 +0300 ldaptor (0.0.43-0.3) unstable; urgency=medium * Non-maintainer upload. * Remove webui stuff from python-ldaptor (Closes: #380723). -- Luk Claes Tue, 1 Aug 2006 19:28:41 +0200 ldaptor (0.0.43-0.2) unstable; urgency=low * Non-maintainer upload. * Let python-ldaptor replace python2.3-ldaptor (Closes: #378945). -- Luk Claes Thu, 20 Jul 2006 20:00:32 +0200 ldaptor (0.0.43-0.1) unstable; urgency=medium * Non-maintainer upload. * Update package for python policy transition (Closes: #373559, #378586). * Get rid of the /usr/doc link in postinst (Closes: #359444). -- Luk Claes Wed, 19 Jul 2006 16:34:44 +0200 ldaptor (0.0.43) unstable; urgency=low * Applications changes: - ldaptor-ldap2dhcpconf: - hosts can now have bootFile attributes - support groups of DHCP hosts, possibly with bootFile attributes - webui: - In delete, instead of a special result page, redirect to search page on success. If current base DN was deleted, also go up to parent DN. - In webui edit, allow editing of entries even if they miss a 'must' field. The server should have never allowed that, but let's not break in any case. - Use webut.skin to make ldaptor webui skinnable. This allows embedding it seamlessly in a web site. - Add server support for - Adding entries. - Modifying entries. - Modifying DNs. Not deleting the old RDN is not yet supported. - Changing passwords with passwordModifyRequest, with general extendedRequest support. * Documentation changes: - Explain some abbreviations in ldap intro document. * API changes: - ldiftree.LDIFTreeEntry.children now always defers. - ldiftree.LDIFTreeEntry.lookup and ldiftree.get now accept strings as DNs. - Add LDIFTreeEntry.commit(). - In ldiftree, show pure .dir entries as children too. Requiring the .ldif file to be present forces simple use to have entries all the way up to root, e.g. "dc=com" and "dc=foo,dc=com". Still might not want missing .ldif files inside the valid tree.. need to get back to this later. - Make .match() *always* case-insensitive. The real solution would be case-insensitive if and by a method set in the attributeType syntax, as specified in the schema, etc. But we have no syntax support yet. - Add .move() to inmemory and ldiftree entries. - Remove LDAPModification_*. This is a non-compatible, but low-level API change. You probably should not have been using LDAPModification_* directly anyway, and the change to using delta should be easy. The new approach is make pureldap just handle sequences of sequences, and teach ldaptor.delta classes how to generate LDAPModifyRequests, with .asLDAP(). - Give ReadOnlyInMemoryLDAPEntry a dummy commit method. * Refactorings to adapt to Twisted APIs: - Refactor for twisted 1.3->2.2 and nevow 0.3.0->0.6.0. * Bugfixes: - Fix ldaptor-ldap2dhcpconf, which has been totally broken since v0.0.32. - webui: - Do not leak LDAP connections in webui search. - Handle invalid search filters gracefully in advanced search. - Don't link to delete on the delete page. - Fix delete page header link targets. - In delete, do not redirect to search on error. - Always clear query arguments when creating a link. - Fix move, used to have whitespace in form action URL. - Fix move status message. - Make test tac set up a base DN. Otherwise, adding posixAccounts will fail because the search for uidNumbers requires a base. - Avoid i18nized string concatenation with plus. - Make webui delete success message more explicit. - Make LDAPFilter_substrings.substrings behave like a proper list. Otherwise e.match() will fail with an IndexError. Used to only trigger when receiving filters, that is, on the server end. - In BEROctetString, make sure we stringify the value before using it. - Improve ldiftree error reporting. - Fix perl invocation in makefile to work with new make backslash handling. * Cleanups: - Add web interface tests, using twill. The old test-webui.tac for demo use is now called demo-webui-fi.tac. - Improved unit test coverage. - Better code reuse between entry, inmemory and ldiftree. - Unused import cleanup. - Whitespace cleanup. * Packaging: - Depend on twisted >= 2.0 and nevow >= 0.6.0. -- Tommi Virtanen Tue, 7 Mar 2006 01:59:00 +0200 ldaptor (0.0.42) unstable; urgency=low * Applications changes: - In webui, don't change config base DN based on the DN in the URL. Instead, remember new ICurrentDN in context for that purpose. Allows guessing right next free uid numbers even when looking at a subtree that doesn't include (all of) the user accounts. - Add ldaptor-ldap2dnszones, generates bind-style DNS zones from LDAP ipHosts and ipNetworks. - Add french translation, update l10n. Closes: #301547. * Refactorings to adapt to Nevow APIs: - Kludge webui add to work with Choice in both nevow 0.3 and newer. * Bugfixes: - Apparently locateConfigurable can not return a Deferred. Handle it. - Make startTLS no longer hang. Thanks to Christopher Zorn . - Fix and unit test ReadOnlyInMemoryLDAPEntry.search() - Add a dummy fetch() to ReadOnlyInMemoryLDAPEntry for API consistency. * Cleanups: - Port changes and minor bugfixes from nevow.i18n: + r2303: Get rid of nevow.i18n.FlatteningProxy, it isn't needed anymore and caused trouble with unicode etc. + r2290: i18n bugfix: make _("%(foo)d") % {"foo": 42} work. + r2251: add ungettext (pluralization) support for nevow.i18n. + r2250: nevow.i18n string formatting fails with %d and %f + r2241: guard against nonexisting localizations. + r2240: also look for locales without a dash-suffix. * Packaging: - doko, I find your lack of trust in API stability disturbing. Yes, things work even if you upgrade. Closes: #327032. - Build-depend on python-epydoc not python2.3-epydoc. Closes: #320897. - Remove old unused packaging helpers. - Add package python2.4-ldaptor. * Administrivia: - No longer using bk, fix test coverage reporting. -- Tommi Virtanen Mon, 24 Oct 2005 18:19:46 +0300 ldaptor (0.0.41) unstable; urgency=low * Bugfixes: - Handle attributeTypes written with non-canonical cases better in webui edit and add. Stops tracebacks complaining about unknown attribute types, especially related to x500uniqueidentifier. Closes: ldaptor#25. -- Tommi Virtanen Thu, 26 May 2005 21:07:24 +0300 ldaptor (0.0.40) unstable; urgency=low * Bugfixes: - Make e.setPassword() set Samba passwords even when Samba objectClasses are spelled with non-canonical case. Closes: ldaptor#31. -- Tommi Virtanen Thu, 26 May 2005 19:47:53 +0300 ldaptor (0.0.39) unstable; urgency=low * Cleanups: - Sort results before comparison in unit tests. Avoid spurious errors in test_ldiftree.Tree.test_children_twoChildren. Make unit tests explicitly shuffle results to avoid such false negative tests in the future. Closes: #307101. -- Tommi Virtanen Fri, 6 May 2005 14:46:31 +0300 ldaptor (0.0.38) unstable; urgency=low * Bugfixes: - WebUI: - rewrite webui search DN linking to be more nevowy and not assume ldaptor is the root resource. -- Tommi Virtanen Fri, 4 Mar 2005 14:46:28 +0200 ldaptor (0.0.37) unstable; urgency=low * Bugfixes: - ldaptor.checkers: - trap LDAPUnwillingToPerform and make it just an UnauthorizedLogin in LDAPBindingChecker. - WebUI: - do not stringify i18n PlaceHolder, just pass it through to flattening. - Port nevow commits r1252 and r1253: handle interpolation of i18n strings better. - Make zebra tables not reverse colors on refresh, by moving state from resource to request. * Cleanups: - Remove dead code. - Use CSS in webui service password changing layout. -- Tommi Virtanen Wed, 23 Feb 2005 23:00:57 +0200 ldaptor (0.0.36) unstable; urgency=low * Applications changes: - Enforce validFrom and validUntil in ServiceBindingProxy. Closes: ldaptor#22. - I18n support in webui and translation to finnish. * API changes: - Do not parallelize password setting, abort on first error. - When aborting password setting, use a real exception and not a string as explanation. * Refactorings to adapt to Twisted/Nevow APIs: - In webui, use annotate.Choice in a way that works with nevow 0.3 and 0.4pre. * Bugfixes: - Add ldaptor.protocols.ldap.autofill that was missed earlier. - Clean up and python2.4-proof LDAPAttributeTypeAndValue parsing. - Do not repeat the form error message for each argument in webui change_password. * Cleanups: - WebUI: - refactor to separate service password setting, for reuse elsewhere. - make zebra tables set CSS styles, not just background colors. - redo webui service password changing form layout. - avoid annotate.Password in webui password changing, it results in poor layout. - use table for nicer layout of service password controls. * Packaging: - Add missing depends on python2.3-pyopenssl, python2.3-crypto. * Administrivia: - Run unit tests after the install target, with the installed code base. -- Tommi Virtanen Wed, 23 Feb 2005 11:13:08 +0200 ldaptor (0.0.35) unstable; urgency=low * Bugfixes: - Fix LDAPServer to understand new e.bind() semantics from r196. * Packaging: - Bumped standards version to 3.6.1. -- Tommi Virtanen Fri, 28 Jan 2005 19:49:24 +0200 ldaptor (0.0.34) unstable; urgency=low * Brown paper bag time, 0.0.33 was never uploaded. Epydoc --check only check and generates no output, reverting back to do not complain about missing docstrings. -- Tommi Virtanen Sun, 23 Jan 2005 03:32:46 +0200 ldaptor (0.0.33) unstable; urgency=low * Conceptual changes: - Add our own LDAP schema file. To use in slapd, add line "include /etc/ldaptor/ldaptor.schema" to /etc/ldap/slapd.conf. - Switch service-specific password support in svcbindproxy and webui change_password to use new-style password entries, for nicer slapd ACLs. Closes: ldaptor#20. * API changes: - Add a pumpingDeferredError to test utils, for consistency. - Allow overriding things by subclassing LDAPConfig and setting attributes. - Allow overriding identity search filter at LDAPConfig instantiation time. - Change e.bind() semantics to defer more, and return self or raise. - Add LDAPEntryWithClient.bind() that sends a BindRequest to the server. - Deprecate LDAPClient.bind(dn, auth) in favor of e.bind(auth). - Proxy now takes an ILDAPConfig parameter to init and not just overrides. * Bugfixes: - Escape "=" in RDN values. - Remove ldaptor.protocols.ldap.__all__, it's unnecessary and had wrong content. * Cleanups: - Convert U32 to unix-style newlines. - Epydoc formatting fixes. - Make epydoc complain about missing docstrings. - Fix API doc home page URL. * Packaging: - When running unit tests from debian/rules, ensure PYTHONPATH gets an explicit . in it -- for the poor guy running a build as root. Closes: #291615. - Include everything needed for successful unit test run in Build-Depends-Indep. Closes: #290236, #291618. -- Tommi Virtanen Sun, 23 Jan 2005 02:52:56 +0200 ldaptor (0.0.32) unstable; urgency=low * Conceptual changes: - Client-side STARTTLS support. Closes: ldaptor#1. * Applications changes: - The following now use the configuration, making --base optional: - ldaptor-ldap2maradns - ldaptor-search - ldaptor-ldap2pdns - ldaptor-ldap2passwd - ldaptor-ldap2dhcpconf - ldaptor-ldap2pdns now reconnects when needed. - WebUI: - Server: * API changes: - Remove ldapclient.LDAPSearch in favor of e.search(). - Switch from LDAPClient.queue() to one of the following. Needed to notify in flight operations of lost connection, and all around prettier. - d=c.send(op) - d=c.send_multiResponse(op, fn, ..) - c.send_noResponse(op) - Add LDAPEntryWithClient.lookup() that was accidentally left out. - Add BaseLDAPEntry.hasMember(). * Refactorings to adapt to Ldaptor APIs: - Refactor to avoid LDAPSearch, use ldapsyntax, config and ldapconnector: - ldaptor-ldap2maradns - ldaptor-search - ldaptor-ldap2pdns - ldaptor-ldap2dhcpconf - ldaptor-ldap2passwd - ldaptor-rename * Bugfixes: - In ldaptor-ldap2maradns, make sure the netmask.* A record is in octet format (and not as number of bits). - Refactor LDAPClient.bind() so it acknowledges completion of the request, removing it from onwire message tracking. - Fix cut-paste code: ldaptor-ldap2passwd took attributes arguments, which only made it break. - Make LDAPConnector fail nicely on DNs with no equivalent DNS domain, and no override. - Make .commit() not break the ldapsyntax entry journal. - Nicer error handling in LDAPBindingChecker; now passes LDAPInvalidCredentials to the caller as UnauthorizedLogin. * Cleanups: - Avoid buffering results in ldaptor-ldap2maradns. - Extract common DNS utility functions to ldaptor.dns. * Administrivia: - Make non-script executable files have mode 0644, not 0755. - Clean up generated files in doc/. -- Tommi Virtanen Wed, 12 Jan 2005 00:02:56 +0200 ldaptor (0.0.31) unstable; urgency=low * Conceptual changes: - Service-specific passwords: added a mechanism that allows having "subpasswords" that are only used with particular services; e.g. let the userPassword attribute be used only for SSH logins, and use additional "mail" and "web" password, stored in an attribute called "servicePassword". The value is two whitespace-separated fields: service name and userPassword-style password digest. See ServiceBindingProxy for more. - LDIFTree allows LDAP server data storage an a one entry per file format, with nice unixy semantics. * Applications changes: - WebUI: - Add pretty label to search form submit button. - Service-specific password editing support. Closes: ldaptor#17. - Server: - New LDIFTree storage backend, storing the LDAP as a filesystem directory tree, with one entry per file in LDIF format. - Add LDAP proxy support. - Add ServiceBindingProxy, an LDAP proxy that handles non-anonymous bind requests specially. Closes: ldaptor#15. * API changes: - Get rid of MutableString: - Add pureber.berDecodeObject, remove pureber.ber2object. - Add pureber.berDecodeLength, remove pureber.berlen2int. - Switch LDAPClient and LDAPServer buffers to be plain strings. - Remove MutableString. - Change the BER decoding mechanism: - Add classmethod fromBER instead of using __init__ in two roles. - Remove old-style decode support. - Add pureber.berDecodeMultiple, mainly for use by subclasses of BERSequence. - Large lengths appeared to be negative, switched berlen2int to using longs. - Split LDAPServer to BaseLDAPServer, so one has a choice of inheriting something without any handle_* methods. - Make ldapsyntax.LDAPEntryWithClient.move() remove the old RDN. - Make ldapsyntax.LDAPEntryWithClient.move() change the entry's idea of its own DN. * Refactorings to adapt to Ldaptor APIs: - Use connectAnonymously in parallelsearch example. * Refactorings to adapt to Twisted/Nevow APIs: - Nevow ISerializable is deprecated. - ctx.{allPatterns,patternGenerator} are now called ctx.tag.allPatterns etc. - all IRequest APIs take a context. - switch from getDynamicChild to childFactory. - addSlash where appropriate. - return URLs instead of explicit redirects. - switch from renderHTTP to child_. - switch from locateChild to childFactory. - Twisted >1.3 moves SRVConnector to twisted.names.srvconnect. * Bugfixes: - Fix BER length encoding for lengths greater than 127, add unit tests. - Make many __repr__'s work even when __init__ failed. - Make sure every LDAP wire class takes a tag argument. - Make LDAPDelRequest also understand keyword argument value, as that is what LDAPString uses. - Fix and test handling of unknown match types. - Fix and unit test saltless non-client setPassword. - Fix DistinguishedName order comparison. - Make sure configuration does not interfere with the lmPasswords in the unit tests. - Make nevow data access to LDAP entry attributes work. - Add items() to LDAPEntry IContainer adapter's attributes child; webui search needs it. - Webui edit can now edit attributes that are in the RDN. Closes: ldaptor#5. - Improve handling of missing baseDN in configuration. * Cleanups: - Remove dead code. - Remove the hack-and-slashed RFC file that served as a TODO note. - Override IOPump to pass around more than one byte at a time, saves >10 seconds in unit tests and protocol decoding of partial messages is unit tested elsewhere anyway. - Improve ldaptor.testutil error messages, accept any true/false value and not just 1 and 0. - Clean up LDAPServer.handleUnknown. - Prettify LDAPMessage.__repr__ - Prettify LDAPResult.__repr__ - If ldapsyntax.LDAPEntryWithClient.search gets a bad response from the LDAP server, raise a real exception and not an assert. - When converting delta Modifications to LDAP, convert them to basic data types for easier debugging and unit testing. - Be consistent and use "ctx" everywhere in webui change_password. - Add nevow renderer that produces zebra tables. - Make ldapsyntax.LDAPEntryWithClient.move() accept strings etc. as newDN, add unit test. - Make epydoc happy. - Simplify ldap-intro document generation. * Packaging: - Depend on Nevow v0.3.0 or later. - Depend on Twisted v1.3.0 or later. - Switch to CDBS. - Add an ldaptor-common package to contain conffiles. - Run unit tests before building debs. - Include the unit tests in the distributed files. * Administrivia: - Add TODO notes. - Update ignore file lists to match currently generated files. - Export dia files to format png-libart, not just png. This makes the export reliable. Hint from Debian bug#275959. -- Tommi Virtanen Fri, 10 Dec 2004 17:39:36 +0200 ldaptor (0.0.30) unstable; urgency=low * Install the webui template and CSS files that were missing from the deb. Unit tests really don't cover everything :( -- Tommi Virtanen Tue, 17 Aug 2004 17:06:07 +0300 ldaptor (0.0.29) unstable; urgency=low * Brown paper bag time; 0.0.28 was never uploaded. * Remove nevow dependency from ILDAPConfig, it seems to work just fine as just a components.Interface. This is the real fix, I promise. Closes: #264179. -- Tommi Virtanen Tue, 17 Aug 2004 16:48:42 +0300 ldaptor (0.0.28) unstable; urgency=low * Applications changes: - Support smarter object creation plugins in webui add. * Cleanups: - Remove references to dead code. - Make sure LDAPAttributeTypeAndValue repr works even if __init__ raised an exception. - Make sambaSamAccount autofiller actually useful, add unit tests. * Packaging: - Make ldaptor-webui depend on python2.3-nevow. Closes: #264179. -- Tommi Virtanen Tue, 17 Aug 2004 16:32:03 +0300 ldaptor (0.0.27) unstable; urgency=low * Applications changes: - WebUI: - ldaptor-webui has been ported to nevow. - move now acts more like a shopping cart. - Move most of the command line options of ldaptor-webui to configuration file only; please switch to using a .tac file. - Server: - Support fetching the rootDSE. - Claim to support the extended operation for password changing. - Support non-anonymous bind against SSHA passwords stored in userPassword attributes. - Handle entry deletion. - Add configuration file support. See files /usr/share/doc/ldaptor-{doc,webui}/examples/global.cfg in packages ldaptor-doc and ldaptor-webui. - New-style Samba schema support, with objectClass sambaSamAccount. - Add support for Samba LanMan password hashes, disabled by default but configurable. - Drop python 2.2 support, using 2.3 features. - Allow serviceLocationOverride to have the empty DN ("") as key, overriding default location (DNS SRV records) for everything. * Documentation changes: - Terminate addressbook example LDIFs with empty line so they are actually valid LDIF. - Modernize addressbook example files. * API changes: - Generic: - Add ldapfilter.parseMaybeSubstring(), which takes attributeType and partial filter as arguments, and allows e.g. easily searching one attributeType based on user input, without user having to understand LDAP filters. - Make DistinguishedName and RelativeDistingushedName do the right thing even without explicit stringValue and listOfRDN keyword arguments. - Add comparison operators to schema.ObjectClassDescription, so they can be sorted. - Make DistinguishedNames equal their canonical string representations and hash identically. - Rename ReadOnlyInmemoryLDAPEntry.putChild to .addChild, make it accept rdn also as a string. - Added setPassword support to inmemory. - Added ILDAPConfig. - Client: - Make LDAPClient.queue take extra arguments and pass them to the callback given. Minimizes need for lambdas. - Add ldapsyntax.LDAPEntryWithClient.addChild(). - Remove ldapclient.LDAPAddEntry, it is now unused. - LDAPEntryWithClient.search() now understands attributes=None to mean do not return any attributes. - Server: - Allow returning None from the message handler. - handle_* API changed: now handlers can happily just raise whatever they want, and fail_* (or failDefault) are used to map the exception to LDAP errors. - Added function checkControls() that all handlers should call with unsupported controls. It raises error if unsupported controls include any critical controls. * Refactorings to adapt to Ldaptor APIs: - Make webui edit use entry.fetch() instead of ldapclient.LDAPSearch. * Refactorings to adapt to Twisted/nevow APIs: - Tell nevow how to serialize DistinguishedNames. - Tell nevow how to serialize LDAP entries. - Create an IContainer adaptor for LDAPEntries. - Switch webui to use ISession. - Follow Twisted DNS resolver API changes in ldaptor-find-server. * Bugfixes: - Fix bug where entry.undo() switched off journaling and thus sending any further updates to the server. - In server, make failing searches indicate why they failed. - Make sure LDAPFilter_and and LDAPFilter_or know how to decode filter elements. - Initialize BaseLDAPEntry attributes early so __repr__ works even when __init__ was buggy. - Protect against passing None to DistinguishedName. - Raise LDAPOther, not LDAPUnknownError; unknown errors should only be created by ldaperrors.get(). - Protect against no subschemaSubentry attribute in fetchschema. - Make LDAPEntryWithClient repr work even in invalid state. - Fix wrong number of arguments in handling unknown requests in server. (Closes: #261837) - Make sure LDAPEntryWithClient.delete can handle all kinds of errors and not just LDAPDelResponse. - In webui, protect against issue74 in nevow.guard. Can only be triggered by adjusting the URL manually. - Support LDAP controls in ldapserver, but only by ignoring non-critical ones and triggering an error on critical ones. (Closes: #263210) * Cleanups: - Remove dead imports, code, TODO entries etc. - Improve unit test coverage: - Test ldapfilter parsing whitespace handling. - Add a simple unit test for callable serviceLocationOverride. - Do automated testing of webui. - Add unit tests for fetchschema. - Test that the server can provide schemas, if the data is right. - Test failing searches in ldapsyntax. - Test failing delete in ldapsyntax. - In pureldap unit tests, use pureber.ber2object() instead of instantiating the class directly, to simulate real use better. - Allow overriding the BERDecoderContext to use in pureldap unit tests. - Unit test serialize/unserialize of pureldap.LDAPMessage. - Prettify: - Use pyparsing .setName() in ldapfilter parsing for nicer debugging. - Make PasswordSetAggregateError stringify itself nicely. - Rename webui change_password action "Choose Password" to "Set Password", it describes the action better. - Add a more helpful assertion message. - Avoid periods at end of error messages, they can be added when doing actual outputting. - Show pretty error when invalid DN is given to --service-location= command line parameter. - Nicer repr for pureber.BERDecoderContext. - Nicer exception when pureber.ber2object sees an unknown tag. - Code readability and cleanliness: - Use constants from string module in LDAP filter parsing. - Use pyparsing.delimitedList in ldapfilter parsing. - Use "bool()" instead of "not not". - Clean up dn handling in BaseLDAPEntry. - Clean up webui delete and improve error handling. - Modernize ldaptor-fetchschema. - Modernize ldaptor-getfreenumber. - Make autofillers share code. - Developments support: - LDAPClient and LDAPServer can now toggle debug output dynamically. - Do Things Right: - Switch to relative URLs when referring to CSS stylesheets. - domainComponent is an attributeType, not an objectClass. Replace with dcObject. * Packaging: - Drop python 2.2 support. -- Tommi Virtanen Thu, 5 Aug 2004 23:05:11 +0300 ldaptor (0.0.26) unstable; urgency=low * Documentation changes: - Archive sketch of the interfaces (with no explanation :). * Bugfixes: - Override __eq__ and __ne__ in pureber.BERBase too, otherwise UserList's implementation of those overrode BERBase.__cmp__ and caused false equalities. - Reimplement ldapfilter, with Unit Test flavor. Use pyparsing to make it really handle extra data and backslash escaping. - When calling filt.asText() for LDAP filters, make sure to backslash escape special characters. * Cleanups: - Typo in docstring. - Add nicer repr of pureldap.LDAPMatchingRuleAssertion, to make the problem easier to spot. * Packaging: - Depend on pythonX.Y-pyparsing. - New enough dia is in unstable, so upload to unstable again. * Administrivia: - Add TODO notes. -- Tommi Virtanen Sat, 26 Jun 2004 14:34:06 +0300 ldaptor (0.0.25) experimental; urgency=low * Pre-generate documentation in build target, don't wait until install target. Makes dia work with dpkg-buildpackage -rfakeroot, because "debian/rules build" is run without fakeroot, and then dia can scribble in the home directory of the real user, not /root/.dia. Ungh. I'm filing a bug on dia. -- Tommi Virtanen Mon, 17 May 2004 19:51:11 +0300 ldaptor (0.0.24) experimental; urgency=low * Applications changes: - Can now generate diffs of two LDAP entries, or even two full trees, and use that either to modify LDAP entries at a server, or generate LDIF modification commands. Can also parse LDIF modification files. See ldaptor-ldifdiff, ldaptor-ldifpatch. * Documentation changes: - Addressbook example source: - Bugfixes and cleanups. - Rewrite addressbook examples to use nevow instead of woven and make them runnable via .tac files. - Modernize addressbook-slides: - Remove htmldiff hack, use meld instead. Simplify things a bit. - Add new addressbook-slides-server.tac that launches meld automatically when you load that page, useful for presentations. - Add CSS stylesheet. - New DTD version, fix to conform to DTD. - Split 01_repl into screen-size chunks. - In addressbook slides, use smaller pictures to make sure they fit on screen. - In addressbook examples, let one user have a valid password and edit access, so the same server can be used to demo ldaptor-webui. - Note in ldap-intro documentation that OpenLDAP doesn't allow changing objectClasses of existing objects. - Fix typo in doc/examples/ldif2ldif. - Docstring cleanup. - Switch from graphviz to dia for figures. (Closes: #242147) - In example LDIFs, rename Erkki Esim to Ample Exam, for i18n. * API changes: - First stages of LDIFTree work; initial support for storing LDIFs in a tree form. - Add inmemory data backend. - Start using interfaces, abstract common LDAP entry things into ldaptor.entry, ldaptor.attributeset. - Add module ldaptor.delta. - Add LDAPEntry.match(). - Add IConnectedLDAPEntry.lookup(). - The LDAP server prototype code has changed a lot, not summarizing here. - Rename ldifprotocol.LDIF.completed() to more specific gotEntry(), so inmemory DB loading can have .gotDatabase() or something, and .completed() won't look confusing there. - Switch ldifprotocol into producing BaseLDAPEntries. - Add ldaptor.entry.EditableLDAPEntry, make ldapsyntax.LDAPEntryWithClient inherit EditableLDAPEntry. - Make LDAPConnector accepts dns also as strings. - LDAPConnector accepts overrides that are callable, and lets them take control of the connecting. This is mostly meant for unit testing. * Internal refactorings: - Refactor to remove client-specific details from LDAPAttributeSet and to generalize the concept of a Modification so it can be used with LDIF also. - Refactor LDAPAttributeSet to interits Set. - Switch BaseLDAPEntry to a be a new-style class. * Bugfixes: - Fix webui search basedn navilinks. - In ldaptor-fetchschema, start logging so errors are reported to the user. - Ignore case in attributeType names. - LDIF parsing: - Support splitted lines in ldifprotocol.LDIF. - Fix LDIF parsing when values have no leading space. - Protect against "<" values (external URL) in LDIF parsing. - Make ldifprotocol support versioned LDIF files. - Make LDAPServer error handling to actually talk sane things on the wire. - Detect truncated LDIF files, raise ldifprotocol.LDIFTruncatedError. - Handle different capitalizations of 'objectClass' in BaseLDAPEntry. - Finish schema parsing. - Fix bug where ldapserver raises an exception on non-anonymous binds. It was missed in ldaperrors refactor, add unit tests so it will not be missed again. (Closes: #244543) - When LDAPServer receives unknown protocol requests, reply sanely and do not close the connection. Thanks to Guido Trotter. (Closes: #244861) - Notice differences in attributeType when comparing LDAPAttributeSets. - In LDAPAttributeSet, override those parts of sets.Set which assume class creation works without arguments (as we need the key always). * Cleanups: - Start gathering unit tests for the server protocol. - Stringify MutableStrings to simplify things. MutableStrings shouldn't leak out of pureber and pureldap. - Use the canonical way to write objectClass in pureldap.LDAPFilterMatchAll; especially needed as the server code is currently case-dependent. - Nicer repr for LDAPAttributeSets. - Make sure BaseLDAPEntry LDIFfication lists attribute values in sorted order for reproducability. - Add comparisons to RelativeDistingushedName in order to have stable unit test results. * Packaging: - Build-depend on dia (new enough dia to not need X11 at build time) => uploading to experimental. -- Tommi Virtanen Mon, 17 May 2004 19:27:00 +0300 ldaptor (0.0.23) unstable; urgency=low * Bugfixes: - Fix a totally embarassing bug that left ldaptor-webui.deb almost empty. -- Tommi Virtanen Fri, 12 Mar 2004 17:20:03 +0200 ldaptor (0.0.22) unstable; urgency=low * Applications changes: - Partial rewrite of ldaptor-webui add to handle structural objectclasses separately from auxiliary objectclasses. * Documentation changes: - Add an example of using ldaptor-webui via twisted-web. * API changes: - Removed ldaptor.cred, it is no longer used. * Refactorings to adapt to Twisted APIs: - Switch from twisted.web.static.redirectTo() to twisted.web.util.redirectTo(), don't import static anymore. * Internal refactorings: - Move resource creation from ldaptor-webui script to library. * Bugfixes: - Make sure errors in ldaptor-webui add are passed along. - Explicitly fail when schema objectclasses refer to unknown attributetypes. - Make ldaptor-webui baseDN form work even when it's not at the root of the web server. * Cleanups: - Remove unused import in ldaptor-webui. -- Tommi Virtanen Fri, 12 Mar 2004 16:58:12 +0200 ldaptor (0.0.21) unstable; urgency=low * Documentation changes: - Added document "Introduction to LDAP". - Added example web-based application, a simple addressbook search, and slides demonstrating how one might write one incrementally. These might not make much sense without the talk (or even with it), my apologies for that. - Upgrade to docbook-slides 3.2.0. - Allow xsltproc to use net in case the XML catalog isn't well setup -- will re-enable --nonet when docbook-slides registers with xml-core. * API changes: - Add a new utility function ldapconnector.LDAPClientCreator.connectAnonymously(), which does an anonymous bind on behalf of the caller. - Allow ldaptor.apps.webui.htmlify.htmlify_attributes() to work on sets and sequences alike. - Search supports new sizeLimitIsNonFatal flag, that makes sizeLimitExceeded errors from server just truncate the result list instead of aborting the search. - Implement LDAPExtendedResponse. * Refactorings to adapt to Ldaptor APIs: * Refactorings to adapt to Twisted APIs: - Adapt to Twisted changing Options superclass from UserDict to dict: Options mixins can no longer inherit Options, as otherwise python2.3 throws a TypeError: Cannot create a consistent method resolution order (MRO) for bases. Closes: #232255, 223632, 232022. - Add twisted newcred support. - Partial woven support (twisted.web.widgets is deprecated, but now woven is deprecated too, in favor of newov! I can't keep up!) - Woven integration of the basic LDAP objects. - ldaptor-webui search, delete and change_password - Ldaptor-webui refactoring - newcred and simpleguard - get rid of twisted.internet.app * Internal refactorings: - Refactor LDAP filter parsing to have all the things looking like (key=...) in one function. - Refactor ldaperrors to actually use the exception classes. - Modularize the experimental LDAP server implementation. * Bugfixes: - Fix webui moves: typo in variable name, handle distinguishednames as objects and not strings. - Make sure the port number is an integer before using it in LDAPConnector. - Add proper stringification to LDAPClientConnectionLostException; used to cause tuple index errors in LDAPException.__str__(). - Make URLs like http://localhost:38980/dc=example,dc=com (no trailing slash) work in ldaptor-webui. - In ldaptor-webui search, do not show the default twisted form error screen when there was no form submitted. Ugly workaround that provides default values instead of '', I can't seem to find a nicer way. * Cleanups: - Remove unused methods and imports. - Remove BidirDict, it's not used anymore. - Remove debug prints. - Move from equality comparison to identity comparison when comparing against None. Cleaner and should even be faster. - Cleanup doc/Makefile - split the massive "do all" target into smaller targets - protect targets against missing parent directories of target file - move the HTML diff files and such out of doc/examples/ - Cleanup LDAPException stringification, protect against exceptions with neither arguments nor class attribute name. - Cleanup indentation. - Pychecker cleanups. * Packaging: - Add build-depends needed for generating the documentation. - Move examples/ to doc/examples/ - Make sure the documents can be built automatically. - Build-Depend on things needed for generating the documentation. - Add a new binary package, ldaptor-doc, that will contain the documentation. - Depend on a new enough version of Twisted. * Administrivia: - Edit TODO notes. - Ignore documentation generated files. - Add unit test coverage checking. - When rsyncing documentation to pyramid.twistedmatrix.com, rsync the full directories of slides, not just the index.html. -- Tommi Virtanen Sun, 29 Feb 2004 00:23:15 +0200 ldaptor (0.0.20) unstable; urgency=low * Applications changes: - Whoops, the syntax for singe-element tuple literals bit me again. Switch webui change_password to using lists, it's what Guido wants. * Bugfixes: - Explicitly stringify the dn to transparently work with DistinguishedName objects. * Packaging: - Drop python2.1, Twisted no longer supports it. Closes: #196038. - Let dh_python handle removing *.pyc from the deb and generating them in postinst (and use dh_clean to clean up after it). Make python-ldaptor's dependency to python be a versioned one. Not using dh_python's automagic, as it doesn't seem to work right. Closes: #205398. * Administrivia: - Add TODO entry about some SyntaxWarnings triggered by scoping. - Fix typo in setup-*.py. -- Tommi Virtanen Mon, 25 Aug 2003 22:22:20 +0300 ldaptor (0.0.19) unstable; urgency=low * Fix reference to non-existent local variable dn in webui change_password.py * Python 2.3 is now the default. -- Tommi Virtanen Sat, 9 Aug 2003 14:18:15 +0300 ldaptor (0.0.18) unstable; urgency=low * Bugfixes: - Make serviceLocationOverrides work once again in LDAPConnector. -- Tommi Virtanen Sun, 3 Aug 2003 10:17:00 +0300 ldaptor (0.0.17) unstable; urgency=low * API changes: - Add LDAPClientCreator. -- Tommi Virtanen Sun, 3 Aug 2003 10:01:19 +0300 ldaptor (0.0.16) unstable; urgency=low * Applications changes: - Make ldaptor-passwd actually follow it's usage. Defaults to changing password of the bind DN, if unspecified. - Make ldaptor-passwd Samba password changing more intelligent; instead of a Boolean, it's now a tristate option, with the new value "auto" checking for objectClass and setting the Samba password if and only if it sees the value sambaAccount there. - ldaptor-passwd now always changes all applicable passwords. - Hierarchical structure editing in ldaptor-webui is done, remove from TODO. - In ldaptor-webui change_password, don't make the DN a form field, there's no point in changing it at that time. - In ldaptor-webui, parse invalid base DNs and complain to user. - In ldaptor-webui, store DNs as DistinguishedNames, not as strings. - We fully support DNS SRV records now. - Add sample app bin/ldaptor-fetchschema, and notes on it's future direction. The current output looks ugly. * API changes: - LDAPObject.namingContext returns the naming context containing the LDAP object. - Deprecate LDAPModifyAttributes in LDAPObject, ldaptor-webui. - Add password changing support to LDAPObject. - LDAPModifyPassword is no longer used anywhere, remove it. - Add LDAPObject.items(). - Add LDAPObject.fetch(). - Support partial fetching in LDAPObject.fetch(). - Add LDAPObject.setPassword_Samba(). - Remove LDAPModifySambaPassword, it has no users anymore. - LDAPObject.setPassword() password setting now changes all applicable passwords automatically. - Remove LDAPModifyAttributes as obsolete. - "key in ldapobject" support, better iteration support for LDAPObject keys and key values. - Move authentication bits from ldaptor-webui main script to ldaptor.cred module. - Prevent removing attributes that are in the RDN of the object. - DistinguishedName now parses the actual values in DNs into attributetypes and values, and raises InvalidRelativeDistinguishedName for malformed RDNs. - Add preliminary support for LDAP object data content suggestions. Still need to implement a lot more hints and integrate into ldaptor-webui. - Add simple&stupid server-side support. Only knows bind/unbind and search, and all searches return no items. - Add LDIF parsing support. - Move ldaptor.protocols.ldap.ldapfilter to ldaptor.ldapfilter. - Split LDAP schema implementation into pure-ASCII parsing part and LDAP client remote schema fetching. - Rename the module that does LDAP schema fetching over the client connection to fetchschema, to better separate it from the ASCII schema parser. - Rename LDAPObject to LDAPEntry, that might be a bit more descriptive. * Refactorings to adapt to Ldaptor APIs: - Deleting LDAP object is now done via LDAPObject.delete(). - Switch from ldapclient helpers to LDAPObjects in ldaptor-webui mass_change_password. - Change ldaptor-webui change_password to use LDAPObject.setPassword() instead of LDAPModifyPassword. - In ldaptor-passwd, use LDAPObject.setPassword_Samba() instead of LDAPModifySambaPassword. - Rewrite more code away from LDAPSearch. - Refactor ldaptor-ldap2passwd to use LDAPObjects. - Refactor ldaptor-webui add and delete to use LDAPObjects and DistinguishedNames more. - Modernize the ldap_parallelsearch.py example to use LDAPEntries. * Refactorings to adapt to Twisted APIs: - Authorizer.setApplication() has been obsoleted, apparently .setServiceCollection() does the same thing. - Use new-style maybeDeferred. - Switch from standard unittest to Twisted's trial. Also reorganized the package to match trial's expectations; that is, removed the lib/ dir. - Move from my own waitForDeferred to twisted's deferredResult, deferredError. - Rewrite the ldap_parallelsearch.py example to suit twisted.internet.protocol.ClientCreator and to not use global variables. * Refactorings to adapt to Python APIs: - Avoid using deprecated features of python. * Internal refactorings: - ldaptor-webui's Gadget() does not need or want the base DN; it asks it from the user. - Work towards running ldaptor-webui from an .rpy: add state serialization support, make serviceLocationOverride optional. * Bugfixes: - Use a python2.1 scope rules compatible lambda. - Add missing module ldapconnector to package ldaptor.protocols.ldap's __all__ list. - Make LDAPSearchRequest inherit BERSequence so that it has a comparison function. - Make sure the other dn is not just a string in DistinguishedName.contains(). - Fix broken test and implementation for LDAPObject.setPassword() -- used to change the password for the bind DN. - Be more explicit by stringifying DNs before trying to do string-like operations on them. - Avoid requesting LDAPIdentities before the necessary LDAP connection has opened. * Cleanups: - Cleanup unit tests and merge similar functionality into helper functions. - Remove unintelligible comments in md4.py. - Avoid non-ASCII in source (but still keep it in the test). - Add unit tests for NT password hashing. - Add test for LDAPObject.keys(). - Clean up LDAPObject journal handling. Rename journal operation classes, provide a superclass to inherit, and give LDAPAttributeSet a real API to submit changes. - Actually call fail.getErrorMessage, don't just print the function. * Packaging: - Depend on twisted >= 1.0.6 - Change Debian section for python{,2.1,2.2}-ldaptor from interpreters to python. * Administrivia: - API documentation: - Support setting PYTHONPATH outside the script (to use CVS Twisted). - New home page URL. - Support uploading the API docs. - Ignore editor backup files. - Ignore Twisted tap files. - Fix admin/doctest-all.py that got broken in the lib/ reorganization. -- Tommi Virtanen Sat, 2 Aug 2003 14:06:32 +0300 ldaptor (0.0.15) unstable; urgency=low * Typo fix. -- Tommi Virtanen Sat, 25 Jan 2003 18:11:31 +0200 ldaptor (0.0.14) unstable; urgency=low * Refactor ldaptor-webui add to use new-style getFreeNumber -- missed this the first time around. * Python 2.1 namespace handling compatibility. -- Tommi Virtanen Sat, 25 Jan 2003 18:05:11 +0200 ldaptor (0.0.13) unstable; urgency=low * Bring test suite up to date. * Beginnings of a more Pythonic LDAP API. * Make ldapclient.LDAPModifyAttributes use Deferreds. * Pass ldapclient when creating LDAPObject, not at every use. * Simplify filter handling in ldaptor-search. * Add comparison functions for LDAPObjects. * LDAPObject.search now supports kwarg callback, which allows processing search results one by one. * Support creating API docs with epydoc. * Add bin/ldaptor-ldap2pdns * Docs and TODO update. * Allow empty base setting. * Support for parsing and generating string representations of LDAP Distinguished Names (DNs). * Display usage to stderr in ldaptor-namingcontexts. * Support for finding the domain name, and via DNS SRV, the server, related to an LDAP DN. * ldaptor-webui SRV support: options --host and --port are gone, finds LDAP servers for domainComponent-style DNs via DNS SRV records. If you don't have them, and don't want to fix that, use --service-location='dc=example,dc=com:ldap.example.com'. * Increase DNS timeout to 5 seconds. * Add DistinguishedName.contains() * Make DistinguishedName hashable. * Use the client for this session to fetch the attributes, don't open up a new connection. * Enable log to stderr in ldaptor-webui. * Runtime-changeable base DN support in ldaptor-webui: the base DN is now the first path segment in the URL, and you can navigate in the tree freely. * Bugfix for ldaptor-ldap2dhcpconf, used to assert when there were no sharedNets. * Fix an uninterruptible infinite loop in ldaptor-webui shutdown. * In ldaptor-webui, support search scopes. * In ldaptor-webui, show base object when no search has been done. * LDAP DN renaming support. * Various minor bugfixes. -- Tommi Virtanen Sun, 19 Jan 2003 17:32:03 +0200 ldaptor (0.0.12) unstable; urgency=low * Be epydoc-friendly in docstrings. * LDAP server closing connection due to idle timeout is now handled properly. * Added option --identity-base, setting the base dn for the search of identities (done with --identity-search). -- Tommi Virtanen Sat, 7 Dec 2002 13:57:19 +0200 ldaptor (0.0.11) unstable; urgency=low * New options-based, changeable search fields. To get the old behaviour, use --search-field=Name='(cn=%(input)s)' --search-field=UserID='(uid=%(input)s)' --search-field=Email='(mail=%(input)s)'. -- Tommi Virtanen Sun, 24 Nov 2002 21:16:23 +0200 ldaptor (0.0.10) unstable; urgency=low * ldaptor-ldap2dhcp bugfixes, cleanup, and support for per-subnet DNS and WINS servers. * Be more careful about the Debian section information. * In ldaptor-webui, allow editing missing optional fields of objects. -- Tommi Virtanen Thu, 31 Oct 2002 20:14:36 +0200 ldaptor (0.0.9) unstable; urgency=low * Copy over my MutableString implementation from Twisted, they are deprecating it. The one in UserString has very different behaviour. Closes: #163772. * Twisted Process wants the reactor.. Let's play along. * Handle no change -case better in ldaptor-webui mass password change. * Update TODO to reflect current situation. * Lots of places refer to ldaperrors.other, provide that. * Work on ldaptor-ldap2dhcpconf, ldaptor-ldap2maradns. * Bug fix in ldaptor-webui add. -- Tommi Virtanen Sun, 27 Oct 2002 12:28:14 +0200 ldaptor (0.0.8) unstable; urgency=low * Take out the python2.3 support, Twisted doesn't support 2.3 yet anyway. -- Tommi Virtanen Thu, 19 Sep 2002 20:06:26 +0300 ldaptor (0.0.7) unstable; urgency=low * Don't leave LDAP connections open, cleanup. * ldaptor-webui search no longer leaks LDAP server connections for every search * Misc bug fixes. * Use Failures. * Default ldaptor-webui port is now 38980 (think "ldap and http"). * New tool ldaptor-ldap2passwd * Added TODO notes. * Support changing Samba passwords. * Add functionality to get free uidNumbers. * Find free uidNumber/gidNumber in ldaptor-webui add. * Avoid Twisted deprecation warnings. * Support adding objects composed of multiple objectclasses. * Mark mandatory attributes with an asterisk. * Some pychecker cleanups. * Protect setup-*.py against pychecker importing them. * Packaging cleanups; python2.2 as default, python2.3 support, better descriptions. * Fix upstream location. -- Tommi Virtanen Thu, 8 Aug 2002 10:21:51 +0300 ldaptor (0.0.6) unstable; urgency=low * Twisted ClientFactory and Protocol connectionLost refactor. -- Tommi Virtanen Thu, 8 Aug 2002 10:21:07 +0300 ldaptor (0.0.5) unstable; urgency=low * ldaptor-passwd generated password setting failed as it tried to handle a list of one string as a string. * Depend on pwgen. * Add change_password. * Rename mass_password_change to mass_change_password, to fit the task-oriented naming convention. * Don't accept empty passwords in ldaptor-webui change_password. * Get rid of the rest of the implicit localhosts. * Moving bidirdict into ldaptor package as distutils can't handle it otherwise. * Added asText method for LDAPFilter_substrings, webui search should no longer fail. * LDAPClient.bind() now returns a Deferred. LDAPClient.handle_bind_success() and LDAPClient.handle_bind_fail() are gone. * LDAPClient.bind() deferred bugfixes. * Added ability to use shorthands for Identity names. * Lots of minor bugfixes. -- Tommi Virtanen Thu, 8 Aug 2002 10:16:19 +0300 ldaptor (0.0.4) unstable; urgency=low * Remove the obsolete ldaptor.twisted package. -- Tommi Virtanen Sat, 3 Aug 2002 16:20:21 +0300 ldaptor (0.0.3) unstable; urgency=low * NOTE: Requires a CVS version of twisted! * New upstream version. * tcp.Client -> reactor.clientTCP * Removed old code in ldaptor.twisted that got in the way of imports. * Added options --generate and --bind-auth-fd * Fix widget in ldaptor-webui search page. * Twisted Connector refactor. * Add hint that 'description' attributetype is always multiline. * Starting to use Deferreds everywhere. * Exception-based errors. * Add asText() methods to LDAPFilter*-classes, convert objects to textual filter representation. * Implement LDAPFilter_not. * Add mass_password_change to ldaptor-webui. * Added utility to generate debian/changelog automatically from BitKeeper. -- Tommi Virtanen Sat, 3 Aug 2002 15:55:09 +0300 ldaptor (0.0.2) unstable; urgency=low * NOTE: Requires a CVS version of twisted! * NOTE: Upgrade from 0.0.1 can fail. * Split package into library, ldaptor-webui and ldaptor-utils. Support multiple python versions in library. * Added new command line utilities: - ldaptor-namingcontexts to list naming contexts of a server. - ldaptor-ldap2dhcpconf is the start of a tool to export host entries from LDAP in a format suitable for a DHCP server. - ldaptor-ldap2maradns does pretty much the same for DNS, in (partial) maradns zone format; it was just so much easier. - note that the ldaptor-ldap2{dhcpconf,maradns} input format will change as I try to cram in a few more features (separate physical network location from DNS domain -- they are currently bound together). - ldaptor-search aims to be a full replacement for ldapsearch. - ldaptor-passwd allows changing passwords (as per RFC3062). * ldaptor-webui: - added support for "Advanced" searching with raw LDAP filter strings. - change parameter --port to --http-port, for clarity. - fix navi links. * Make all LDAP server, port and base settings explicit. * Add ldapfilter and ldif modules. * Create ldaptor.usage to store common option processing. * Change twisted.python.defer to twisted.internet.defer and twisted.protocols.protocol to twisted.internet.protocol. * Handle unsolicited LDAP notifications. * New test subsystem. * Rewrite LDAP protocol error number storage to be bi-directional; you can resolve a number to a string. -- Tommi Virtanen Sun, 28 Jul 2002 20:30:06 +0300 ldaptor (0.0.1) unstable; urgency=low * Initial Release. -- Tommi Virtanen Sun, 26 May 2002 18:08:30 +0300