{ "info": { "author": "Alex Shafer", "author_email": "ashafer@pm.me", "bugtrack_url": null, "classifiers": [ "Development Status :: 5 - Production/Stable", "Intended Audience :: Developers", "Intended Audience :: System Administrators", "License :: OSI Approved :: GNU Lesser General Public License v3 or later (LGPLv3+)", "Natural Language :: English", "Operating System :: OS Independent", "Programming Language :: Python", "Programming Language :: Python :: 2.7", "Programming Language :: Python :: 3.4", "Programming Language :: Python :: 3.5", "Programming Language :: Python :: 3.6", "Programming Language :: Python :: 3.7", "Programming Language :: Python :: Implementation :: CPython", "Programming Language :: Python :: Implementation :: PyPy", "Topic :: Software Development", "Topic :: Software Development :: Libraries", "Topic :: Software Development :: Libraries :: Python Modules", "Topic :: System", "Topic :: System :: Systems Administration", "Topic :: System :: Systems Administration :: Authentication/Directory", "Topic :: System :: Systems Administration :: Authentication/Directory :: LDAP" ], "description": "laurelin-ldap\n=============\n\n.. image:: https://travis-ci.org/ashafer01/laurelin.svg?branch=master\n :target: https://travis-ci.org/ashafer01/laurelin\n\nView documentation on `ReadTheDocs `_. You might also like\nto read the `introduction `_.\n\n``pip install laurelin-ldap`` or clone the repo to get started.\n\nPlease star the repo on `GitHub `_ if you like the project!\n\nNamed for one of the Two Trees of Valinor in Tolkien lore.\n\n Laurelin, which means 'Golden-song' in the Quenya tongue, bore shining golden leaves, the Light from which mingled\n with the Silver Flowers of the Elder Tree to illuminate the land of the Valar.\n\nFeatures Overview\n-----------------\n\n* Fully compliant with RFC 4510 and its children, as well as several other related standards.\n* Tested against CPython 2.7, 3.4 - 3.7, PyPy, and PyPy3.\n* Simplified filter syntax (optional, standard filter syntax is fully supported and used by default)\n* Pythonic attributes input and presentation. It's just a dictionary.\n* Exceedingly easy relative searching. All objects have a suite of search methods which will automatically pass the\n object's DN as the search base. In many cases, you wont have to pass *any* arguments to search methods.\n* Similarly, all objects have a suite of modify methods which allow you to change attributes on already-queried objects\n without having to pass their DN again.\n* You never have to type the full absolute DN.\n* Intelligent modification will never send existing attribute values to the server, nor will it request deletion of\n attribute values that do not exist. This prevents many unnecessary server errors. Laurelin will go as far as to query\n the object for you before modifying it to ensure you don't see pointless errors (if you want it to).\n* Full support for configuring laurelin and connecting to a server from a config file\n* Custom validation. You can define validators which check new objects and modify operations for correctness before\n sending them to the server. Since you control this code, this can be anything from a simple regex check against a\n particular attribute value, to a complex approval queue mechanism.\n* Highly extensible. New methods can easily and safely be bound to base classes.\n* Seamless integration of controls. Once defined, these are just new keyword arguments on particular methods, and\n additional attributes on the response object.\n* Includes Python implementations of standard schema elements.\n\nDependent Info\n--------------\n\nLaurelin follows `SemVer `_. When you add ``laurelin-ldap`` to your requirements, I strongly\nsuggest using the `compatible release operator `_ with\nthe ``major.minor`` that you use initially. For example::\n\n % pip install laurelin-ldap\n ...\n Successfully installed laurelin-ldap-1.5.0 ...\n ^^^\n\nSince ``1.5.0`` was installed, add the following to your ``requirements.txt`` and/or ``install_requires`` list::\n\n laurelin-ldap~=1.5\n\nBut of course use whatever version you actually installed. You're also welcome to ``pip freeze``, but patch and\nminor releases will always be compatible. Patch releases tend to contain important fixes, too. If you're sure you don't\nwant new features coming in and only fixes, you can still use the compatible release operator like so (again subbing in\nyour actual installed version)::\n\n laurelin-ldap~=1.5.0\n\n\nFeel free to open a GitHub issue with any questions or concerns.\n\nPublic API Definition\n---------------------\n\n* **Everything in laurelin.ldap.__all__** - import directly ``from laurelin.ldap`` whenever possible\n* ``laurelin.ldap.exceptions``\n* ``laurelin.ldap.rfc*``\n* ``laurelin.ldap.protoutils``\n* ``laurelin.ldap.config``\n\nBuilt-in extensions defined in ``laurelin.extensions`` are stable insofar as the interfaces they present via their\n``LaurelinExtension``, ``LaurelinLDAPExtension``, and ``LaurelinLDAPObjectExtension`` instances, control keywords and\nresponse attributes, and schema element availability. Importing extensions directly is not recommended, and any other\nobjects in extension modules should not be considered stable.\n\nThe stability of any 3rd party extensions with names hard coded into the laurelin source at\n``laurelin.ldap.extensible.base.Extensible.AVAILABLE_EXTENSIONS`` or any future location cannot be guaranteed. (There\nare no 3rd party extensions defined at this time). To guarantee no 3rd party extensions are used, and thus a complete\nstability assurance, set ``LDAP.DEFAULT_BUILT_IN_EXTENSIONS_ONLY = True`` or pass ``built_in_extensions_only=True`` to\nyour ``LDAP()`` constructor.\n\n\nIf the user should venture into other modules outside of the declared public API above, I strongly suggest pinning your\nversion. I also strongly advise against EVER calling a private function or method (with underscore prefix).\n\n\n", "description_content_type": "", "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/ashafer01/laurelin", "keywords": "ldap", "license": "LGPLv3+", "maintainer": "", "maintainer_email": "", "name": "laurelin-ldap", "package_url": "https://pypi.org/project/laurelin-ldap/", "platform": "", "project_url": "https://pypi.org/project/laurelin-ldap/", "project_urls": { "Homepage": "https://github.com/ashafer01/laurelin" }, "release_url": "https://pypi.org/project/laurelin-ldap/2.0.4/", "requires_dist": [ "pure-sasl (>=0.5.1)", "six", "py2casefold", "pyyaml", "parsimonious (==0.8.0)" ], "requires_python": "", "summary": "A pure-Python ORM-esque LDAP client.", "version": "2.0.4" }, "last_serial": 5340404, "releases": { "1.0.0b1": [ { "comment_text": "", "digests": { "md5": "28c8a3cd9d7477954789793315b3cae8", "sha256": "695d621c39d3ff8f3663c7624bd44d856baeb71406b73b8c3977179b1c8ebd13" }, "downloads": -1, "filename": "laurelin_ldap-1.0.0b1-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "28c8a3cd9d7477954789793315b3cae8", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 93863, "upload_time": "2018-02-24T22:07:54", "url": "https://files.pythonhosted.org/packages/0e/d4/226000604773c471565d362c25037961c23f979a50371800787c81473a15/laurelin_ldap-1.0.0b1-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "f921f2e4bd7a7b25f85459702d79075c", "sha256": "d2197bba0e66efdaf301cf892208173d34d756cb02356c7996609e149f4663fa" }, "downloads": -1, "filename": "laurelin-ldap-1.0.0b1.tar.gz", "has_sig": false, "md5_digest": "f921f2e4bd7a7b25f85459702d79075c", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 83985, "upload_time": "2018-02-24T22:07:55", "url": "https://files.pythonhosted.org/packages/2f/55/cb733aedeb73464059cbbce416d53a63e224206938b4e705a8dac51b2347/laurelin-ldap-1.0.0b1.tar.gz" } ], "1.1.0": [ { "comment_text": "", "digests": { "md5": "3abd51a52f957d60356bb8d37838cac0", "sha256": "86ca61ede302bf4b19dd055f6aa405374c3fcff67a37a77da30a1734ae9eeaf9" }, "downloads": -1, "filename": "laurelin_ldap-1.1.0-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "3abd51a52f957d60356bb8d37838cac0", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 100975, "upload_time": "2018-03-12T19:49:57", "url": "https://files.pythonhosted.org/packages/2a/03/141c19aa5e97ec2ce9de14243c63dd1d52b61d54427b02153e1792041d35/laurelin_ldap-1.1.0-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "9798d6200d5ba9c4f11d4c156ef96932", "sha256": "45d0abf524a05267a33c55d4ee412a05c6cfe19c02440433b9bb221a0525c044" }, "downloads": -1, "filename": "laurelin-ldap-1.1.0.tar.gz", "has_sig": false, "md5_digest": "9798d6200d5ba9c4f11d4c156ef96932", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 91132, "upload_time": "2018-03-12T19:49:59", "url": "https://files.pythonhosted.org/packages/53/bd/1daffc5a32e14855a8287406f3b89d52b0082fe9c88f72c2515f52773855/laurelin-ldap-1.1.0.tar.gz" } ], "1.2.0": [ { "comment_text": "", "digests": { "md5": "5f3d103019a89df50c8d9e14f11601bb", "sha256": "f24c74294a20e4757e3f4a7009ee6f712002b89d20df2a976d116665d33c8e94" }, "downloads": -1, "filename": "laurelin_ldap-1.2.0-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "5f3d103019a89df50c8d9e14f11601bb", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 103303, "upload_time": "2018-03-16T21:44:36", "url": "https://files.pythonhosted.org/packages/43/ba/0b7a32d29019148039dbfc2755e2711d578477946aff15374137d577407f/laurelin_ldap-1.2.0-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "7039b7a3a964f3c8588bd4ae18520704", "sha256": "fa1de6876329ef58173e34140ddbd05e4dc2493ae8c1d798c5f85441f9a8e46d" }, "downloads": -1, "filename": "laurelin-ldap-1.2.0.tar.gz", "has_sig": false, "md5_digest": "7039b7a3a964f3c8588bd4ae18520704", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 93702, "upload_time": "2018-03-16T21:44:38", "url": "https://files.pythonhosted.org/packages/f4/d7/a0ff6f746540ab3afb8174edaf2e6c95a22f0a0a703eee543de0d1992492/laurelin-ldap-1.2.0.tar.gz" } ], "1.3.0": [ { "comment_text": "", "digests": { "md5": "32a56cb71bd2e8bee592e337a7b35ce9", "sha256": "3a64fa43152fc616468ab2212a79f29ded6644b5d9498505109783a72497a2c9" }, "downloads": -1, "filename": "laurelin_ldap-1.3.0-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "32a56cb71bd2e8bee592e337a7b35ce9", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 107624, "upload_time": "2018-03-22T16:36:35", "url": "https://files.pythonhosted.org/packages/44/18/dff5839a7a56dbddc612703190c6050c59248e37fc80ec00c2fd6162c664/laurelin_ldap-1.3.0-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "4fbcac3cbee4fc9b2a834458395d2ca6", "sha256": "b8be4d3306bbd2e12f5383d2c59abdae6a8aec4d52642712c6ebe2aef6084202" }, "downloads": -1, "filename": "laurelin-ldap-1.3.0.tar.gz", "has_sig": false, "md5_digest": "4fbcac3cbee4fc9b2a834458395d2ca6", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 97173, "upload_time": "2018-03-22T16:36:37", "url": "https://files.pythonhosted.org/packages/87/a5/298a2ced6ec7a75c97a26dd8ff2373eec2d1d6a185ff06b1b1fffcf60656/laurelin-ldap-1.3.0.tar.gz" } ], "1.3.1": [ { "comment_text": "", "digests": { "md5": "1972ae3aad96e87ef95090ed26472c72", "sha256": "ccfaf4fd5e90462a37cd66daa69f75974fde84889c1b1aa0fa70e5201218113c" }, "downloads": -1, "filename": "laurelin_ldap-1.3.1-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "1972ae3aad96e87ef95090ed26472c72", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 109450, "upload_time": "2018-04-01T05:51:31", "url": "https://files.pythonhosted.org/packages/fa/28/1d19e7f21e2038e435468c8931618fbea4ff579f80d24a78ee1edaa4d90f/laurelin_ldap-1.3.1-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "df763ebb82d7d985abe9d08a7cd731ff", "sha256": "4a40cf4bca7132d2d11ca4c7fec2b9ed595a8cb8777dcb545b815f08bb527ce4" }, "downloads": -1, "filename": "laurelin-ldap-1.3.1.tar.gz", "has_sig": false, "md5_digest": "df763ebb82d7d985abe9d08a7cd731ff", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 98820, "upload_time": "2018-04-01T05:51:33", "url": "https://files.pythonhosted.org/packages/cc/cf/cccd8373089adc1fe2de74df1b7f3680744a6ca5cc9b9eee6f1850eb3d77/laurelin-ldap-1.3.1.tar.gz" } ], "1.4.0": [ { "comment_text": "", "digests": { "md5": "79d5fa1e6df4bc779241471c4a68f323", "sha256": "7453aa15b77829b14b4aeb40c070c697187bcc335764398bf0dc6ea5f1085c84" }, "downloads": -1, "filename": "laurelin_ldap-1.4.0-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "79d5fa1e6df4bc779241471c4a68f323", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 118069, "upload_time": "2018-05-30T03:22:19", "url": "https://files.pythonhosted.org/packages/2d/8b/a2832518419a8123924fac24f3e00294eba8c8d0b14abf4cbc42a2db90b7/laurelin_ldap-1.4.0-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "9e0d5a630089495bf2cfe2839e33ce8f", "sha256": "2a17f6aee0c929f204cf2d0451c89c98d3b1a486f07570206fca919c0bb6d14f" }, "downloads": -1, "filename": "laurelin-ldap-1.4.0.tar.gz", "has_sig": false, "md5_digest": "9e0d5a630089495bf2cfe2839e33ce8f", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 99019, "upload_time": "2018-05-30T03:22:21", "url": "https://files.pythonhosted.org/packages/14/20/fb9650a051cede11426c1280cfed993f93cfcec742cdbad3ecb363dbebd7/laurelin-ldap-1.4.0.tar.gz" } ], "1.4.1": [ { "comment_text": "", "digests": { "md5": "b5ff944b0683a44a32855f3fd3ab3bf4", "sha256": "a725b5fff8313885b6a6fcdbaaa4b03148d03beea0be6a94b9243d57eff26ad0" }, "downloads": -1, "filename": "laurelin_ldap-1.4.1-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "b5ff944b0683a44a32855f3fd3ab3bf4", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 109753, "upload_time": "2018-05-31T13:39:35", "url": "https://files.pythonhosted.org/packages/17/08/271c1f119f5c2ae2d004e32369e3cc1d3b302d66b59638703bd1ce123349/laurelin_ldap-1.4.1-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "c66d0f1ecb5c95b651007996bf56fabc", "sha256": "1207b072391f06692d0c3686466d7dc48fd5915a8093a1514612f8f4bea8f44f" }, "downloads": -1, "filename": "laurelin-ldap-1.4.1.tar.gz", "has_sig": false, "md5_digest": "c66d0f1ecb5c95b651007996bf56fabc", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 99119, "upload_time": "2018-05-31T13:39:37", "url": "https://files.pythonhosted.org/packages/fe/b4/ae482b79124766ecc4d0c77684c01090db0947d18d18f34c8a6cc2a6da95/laurelin-ldap-1.4.1.tar.gz" } ], "1.5.0": [ { "comment_text": "", "digests": { "md5": "6b13c11a718b1ff4147779e87560f918", "sha256": "e54bb2244dbfdd1cd422bbd26e2e6b98b629a405f01aec5749cff1c0a027320c" }, "downloads": -1, "filename": "laurelin_ldap-1.5.0-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "6b13c11a718b1ff4147779e87560f918", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 113441, "upload_time": "2018-06-10T22:07:24", "url": "https://files.pythonhosted.org/packages/b9/15/1d0e87646068b2ebca309959205c154108a59fe82640bde6f46f541349f4/laurelin_ldap-1.5.0-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "86d60f2d346082e6c02329958dc2774c", "sha256": "d1568465a82dbd3b6b357658751fcc8e3126d5a046af0e1cdb81474015ca037a" }, "downloads": -1, "filename": "laurelin-ldap-1.5.0.tar.gz", "has_sig": false, "md5_digest": "86d60f2d346082e6c02329958dc2774c", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 102891, "upload_time": "2018-06-10T22:07:26", "url": "https://files.pythonhosted.org/packages/96/6a/2291081f49519d1308760c167ef4e5fd04ad2a793f8ccc6dccf1929a42eb/laurelin-ldap-1.5.0.tar.gz" } ], "1.5.2": [ { "comment_text": "", "digests": { "md5": "077a88688a54828f7e0025a1eb54a785", "sha256": "2cccd0d4c9b7716ef22c7b85284c8544e0c19d095251838b7f45540dbd7779e1" }, "downloads": -1, "filename": "laurelin_ldap-1.5.2-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "077a88688a54828f7e0025a1eb54a785", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 123173, "upload_time": "2018-06-15T23:55:22", "url": "https://files.pythonhosted.org/packages/cb/6b/f1b9bb2f46820f1b3e65a9ccfe558d0a0569b28796a61b0f0c065dca241e/laurelin_ldap-1.5.2-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "57c4769357a1316bceacb6a3641ad552", "sha256": "a29296ae8e01af92e73903e4dba8dce99b8043d1d188e848ad3cc350b47199eb" }, "downloads": -1, "filename": "laurelin-ldap-1.5.2.tar.gz", "has_sig": false, "md5_digest": "57c4769357a1316bceacb6a3641ad552", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 104285, "upload_time": "2018-06-15T23:55:24", "url": "https://files.pythonhosted.org/packages/c4/fc/c07d2e49b3031a767524d2694d28b9511d9460fe36cbd786368c0b01f2f5/laurelin-ldap-1.5.2.tar.gz" } ], "1.5.3": [ { "comment_text": "", "digests": { "md5": "e5a6ce8a6e5d6f4985f3db03880ceb53", "sha256": "d39bfd2864e8192f69b22db1dd9a7855421ba4778108ec10259be863676fab9d" }, "downloads": -1, "filename": "laurelin_ldap-1.5.3-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "e5a6ce8a6e5d6f4985f3db03880ceb53", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 114346, "upload_time": "2018-08-31T02:09:19", "url": "https://files.pythonhosted.org/packages/db/4a/f6fb8e6793f0207f02a5fed14f533d46769e12161627f5dc6e3c7c4b0dce/laurelin_ldap-1.5.3-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "a3f65b5dcefaf60c7b404eaa86d9d376", "sha256": "9f6c8f1fe44c484a8103393c1af1348bae1fa61dc0c9aa05537dfcdbda122cd7" }, "downloads": -1, "filename": "laurelin-ldap-1.5.3.tar.gz", "has_sig": false, "md5_digest": "a3f65b5dcefaf60c7b404eaa86d9d376", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 104260, "upload_time": "2018-08-31T02:09:21", "url": "https://files.pythonhosted.org/packages/d1/b5/ac1a38726f9c0b49c0b1d147385ff8cb6c5d1424ad318d37993f7d1589a4/laurelin-ldap-1.5.3.tar.gz" } ], "2.0.0": [ { "comment_text": "", "digests": { "md5": "32988c0655baca8c7d10b3c42d516bd5", "sha256": "8de4a6a87d39e8f026dd214465bd760183b0311b7e08fa41bb6b20978d1b0dc6" }, "downloads": -1, "filename": "laurelin_ldap-2.0.0-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "32988c0655baca8c7d10b3c42d516bd5", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 101445, "upload_time": "2018-11-17T22:10:59", "url": "https://files.pythonhosted.org/packages/c5/6b/83f00cbbdedbc9f1f343fc43351fdb84d7b1073b1bc78ac48fd59b482047/laurelin_ldap-2.0.0-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "c2bf7670f3c7d08e3e997e8a2f469dec", "sha256": "f2e9cff00bc99df98e85eb1157be8ad4be03aafd138b84960eb593e393787bae" }, "downloads": -1, "filename": "laurelin-ldap-2.0.0.tar.gz", "has_sig": false, "md5_digest": "c2bf7670f3c7d08e3e997e8a2f469dec", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 89382, "upload_time": "2018-11-17T22:11:01", "url": "https://files.pythonhosted.org/packages/b2/72/9c29c7a2ed348e492ff6b9c7dc60a0440eecaa37ca959962a00b0fa12a01/laurelin-ldap-2.0.0.tar.gz" } ], "2.0.1": [ { "comment_text": "", "digests": { "md5": "3798d07fae670c4a805c92b76e8ce0c4", "sha256": "c44697544b21e697866ad68dfac47242d2a66df2a6a9894fa94b6642ba9f9eab" }, "downloads": -1, "filename": "laurelin_ldap-2.0.1-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "3798d07fae670c4a805c92b76e8ce0c4", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 101449, "upload_time": "2019-02-09T17:15:01", "url": "https://files.pythonhosted.org/packages/30/05/fd1bbec25189ede7d03b676b1bcae54be6e6f1303657eda5af52a2d25553/laurelin_ldap-2.0.1-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "79941a9154c154e3ae26fd7c2fd47f2f", "sha256": "dcd64c21ac275d32431063b7509477e9bf0a12d65920b03831e8e1e34f1aab6a" }, "downloads": -1, "filename": "laurelin-ldap-2.0.1.tar.gz", "has_sig": false, "md5_digest": "79941a9154c154e3ae26fd7c2fd47f2f", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 89464, "upload_time": "2019-02-09T17:15:03", "url": "https://files.pythonhosted.org/packages/7e/ad/c499d1255eab9aa53a395c5ebb6430b0744d3b4915ce07c2bdf36ca6fb34/laurelin-ldap-2.0.1.tar.gz" } ], "2.0.2": [ { "comment_text": "", "digests": { "md5": "3785e71988c4329537eb10d19dc0f366", "sha256": "363c124ece799b6eef228ae793a6732281e624890f2132b1399adcadd3127eb3" }, "downloads": -1, "filename": "laurelin_ldap-2.0.2-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "3785e71988c4329537eb10d19dc0f366", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 101404, "upload_time": "2019-02-13T02:30:28", "url": "https://files.pythonhosted.org/packages/46/9a/1a6fa18d5df3ed44a811360a4849ccdd8714de876126303199d46705a89c/laurelin_ldap-2.0.2-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "d2aec60020376b4c26090513ade9cd09", "sha256": "062acee6321cc3fcaeba726bdff210e550aec75dde454b3b66d9d2dde7bd58a4" }, "downloads": -1, "filename": "laurelin-ldap-2.0.2.tar.gz", "has_sig": false, "md5_digest": "d2aec60020376b4c26090513ade9cd09", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 89433, "upload_time": "2019-02-13T02:30:30", "url": "https://files.pythonhosted.org/packages/75/5e/a17628ee4e30b19c82c5f7f8836680714430bc73cf38ad4427407825d82f/laurelin-ldap-2.0.2.tar.gz" } ], "2.0.3": [ { "comment_text": "", "digests": { "md5": "58b3bf29e2adf56337be5363bcb4a367", "sha256": "089c686c9ce9cdab2b855b76f4acf0e1d3d8a300c5e52e3546a8b4c3e1bf99ec" }, "downloads": -1, "filename": "laurelin_ldap-2.0.3-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "58b3bf29e2adf56337be5363bcb4a367", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 101902, "upload_time": "2019-02-15T02:29:24", "url": "https://files.pythonhosted.org/packages/c7/a7/84bb3c6aaecb157e5c3428fdbdf3244042bda6f759a035a4f25790aa8ae0/laurelin_ldap-2.0.3-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "3b1a64a6ecbbec72e47a7c14b9f1a911", "sha256": "74f6e0badee1da7bd6de7196c0b9848918c154ae805f3522fed6de96b2c9a673" }, "downloads": -1, "filename": "laurelin-ldap-2.0.3.tar.gz", "has_sig": false, "md5_digest": "3b1a64a6ecbbec72e47a7c14b9f1a911", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 89864, "upload_time": "2019-02-15T02:29:26", "url": "https://files.pythonhosted.org/packages/ed/d5/f6d5d0daa31af4ad3cd4029f608df66cbf60b28f053b9bda4b3545cf04c9/laurelin-ldap-2.0.3.tar.gz" } ], "2.0.4": [ { "comment_text": "", "digests": { "md5": "fe39611f5c2423194d8824981f90db2c", "sha256": "19ed33cb533a74c98a1418dd7f0b7c98cff0381afe3ada128d146a3da0e43be1" }, "downloads": -1, "filename": "laurelin_ldap-2.0.4-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "fe39611f5c2423194d8824981f90db2c", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 173668, "upload_time": "2019-05-31T01:04:16", "url": "https://files.pythonhosted.org/packages/f8/db/0bbab036d2dad314a9596f8704113671557b18ed9ab2d790a51381b820f5/laurelin_ldap-2.0.4-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "8d86214651a73c5598d6157ee0cb30e2", "sha256": "80e8163efd9d442b2f43badb9dedf68b37f0499cf584ac4195b19ed1b52e8fe7" }, "downloads": -1, "filename": "laurelin-ldap-2.0.4.tar.gz", "has_sig": false, "md5_digest": "8d86214651a73c5598d6157ee0cb30e2", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 142227, "upload_time": "2019-05-31T01:04:17", "url": "https://files.pythonhosted.org/packages/c9/e2/c47982d1624ea444ad795726e94f16c3942277511b09e324a9aa0802cd1d/laurelin-ldap-2.0.4.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "fe39611f5c2423194d8824981f90db2c", "sha256": "19ed33cb533a74c98a1418dd7f0b7c98cff0381afe3ada128d146a3da0e43be1" }, "downloads": -1, "filename": "laurelin_ldap-2.0.4-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "fe39611f5c2423194d8824981f90db2c", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 173668, "upload_time": "2019-05-31T01:04:16", "url": "https://files.pythonhosted.org/packages/f8/db/0bbab036d2dad314a9596f8704113671557b18ed9ab2d790a51381b820f5/laurelin_ldap-2.0.4-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "8d86214651a73c5598d6157ee0cb30e2", "sha256": "80e8163efd9d442b2f43badb9dedf68b37f0499cf584ac4195b19ed1b52e8fe7" }, "downloads": -1, "filename": "laurelin-ldap-2.0.4.tar.gz", "has_sig": false, "md5_digest": "8d86214651a73c5598d6157ee0cb30e2", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 142227, "upload_time": "2019-05-31T01:04:17", "url": "https://files.pythonhosted.org/packages/c9/e2/c47982d1624ea444ad795726e94f16c3942277511b09e324a9aa0802cd1d/laurelin-ldap-2.0.4.tar.gz" } ] }