<feed xmlns='http://www.w3.org/2005/Atom'>
<title>delta/python-packages/passlib.git/docs/lib, branch stable</title>
<subtitle>foss.heptapod.net: python-libs/passlib
</subtitle>
<link rel='alternate' type='text/html' href='http://trove.baserock.org/cgit/delta/python-packages/passlib.git/'/>
<entry>
<title>passlib.ext.django: Updated UTs to work with latest django release</title>
<updated>2020-10-08T01:33:47+00:00</updated>
<author>
<name>Eli Collins</name>
<email>elic@assurancetechnologies.com</email>
</author>
<published>2020-10-08T01:33:47+00:00</published>
<link rel='alternate' type='text/html' href='http://trove.baserock.org/cgit/delta/python-packages/passlib.git/commit/?id=a4f23dd8fed25cefc93cb257e00b16502a87dbd4'/>
<id>a4f23dd8fed25cefc93cb257e00b16502a87dbd4</id>
<content type='text'>
(should fix long-standing issue 98)

* test_ext_django:

    - Simplified "stock config" setup code.  It now gets it's "sha_rounds" value
      from the django source, so we don't have to manually update it every time
      django changes their default.  This should require less maintenance across
      minor django releases.  (Should fix issue 98, and prevent recurrence)

    - Updated tests to account for quirks in how encoded hashes are handled.
      Specifically: None, "", and invalid hashes all cause subtly different
      behaviors across django versions.  tests pass against django 1.8 - 3.1.

    - split "empty hash" test out from the loop it shared with "null hash" test,
      since the two behave differently.

* tox: expanded envlist to explicitly test a bunch more django versions
  (1.8 - 3.1); and remove some needless "django 2.x + py2" tests

* passlib.apps: reformatted django CryptContext declarations;
  added one for django 2.1 (which dropped "django_bcrypt" it's default list)

* passlib.ext.django:

    - added internal "quirks" helper as central place to track
      minor edge-case changes between django versions.

    - passlib_to_django() helper now falls back to searching hasher classes
      directly, even if patch isn't installed.  this allows it to work
      for django hashers that have been removed from django's default list.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
(should fix long-standing issue 98)

* test_ext_django:

    - Simplified "stock config" setup code.  It now gets it's "sha_rounds" value
      from the django source, so we don't have to manually update it every time
      django changes their default.  This should require less maintenance across
      minor django releases.  (Should fix issue 98, and prevent recurrence)

    - Updated tests to account for quirks in how encoded hashes are handled.
      Specifically: None, "", and invalid hashes all cause subtly different
      behaviors across django versions.  tests pass against django 1.8 - 3.1.

    - split "empty hash" test out from the loop it shared with "null hash" test,
      since the two behave differently.

* tox: expanded envlist to explicitly test a bunch more django versions
  (1.8 - 3.1); and remove some needless "django 2.x + py2" tests

* passlib.apps: reformatted django CryptContext declarations;
  added one for django 2.1 (which dropped "django_bcrypt" it's default list)

* passlib.ext.django:

    - added internal "quirks" helper as central place to track
      minor edge-case changes between django versions.

    - passlib_to_django() helper now falls back to searching hasher classes
      directly, even if patch isn't installed.  this allows it to work
      for django hashers that have been removed from django's default list.
</pre>
</div>
</content>
</entry>
<entry>
<title>docs / sha crypt: commented out the "implicit_rounds" param in docs,</title>
<updated>2020-10-06T15:31:41+00:00</updated>
<author>
<name>Eli Collins</name>
<email>elic@assurancetechnologies.com</email>
</author>
<published>2020-10-06T15:31:41+00:00</published>
<link rel='alternate' type='text/html' href='http://trove.baserock.org/cgit/delta/python-packages/passlib.git/commit/?id=4fd7c8efa8027bfbc017fcbe0c5d85e6e1506696'/>
<id>4fd7c8efa8027bfbc017fcbe0c5d85e6e1506696</id>
<content type='text'>
it's not actually supported by using(), and isn't needed for users
(issue 121)
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
it's not actually supported by using(), and isn't needed for users
(issue 121)
</pre>
</div>
</content>
</entry>
<entry>
<title>passlib.hash: added ldap_salted_sha256 &amp; ldap_salted_512 (issue 124)</title>
<updated>2020-10-06T01:14:41+00:00</updated>
<author>
<name>Eli Collins</name>
<email>elic@assurancetechnologies.com</email>
</author>
<published>2020-10-06T01:14:41+00:00</published>
<link rel='alternate' type='text/html' href='http://trove.baserock.org/cgit/delta/python-packages/passlib.git/commit/?id=3f1ad211d9499f5c36e9cc90c888c6e0da50ab3c'/>
<id>3f1ad211d9499f5c36e9cc90c888c6e0da50ab3c</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>passlib.handlers: cases where crypt() returns malformed hash</title>
<updated>2020-10-06T01:14:03+00:00</updated>
<author>
<name>Eli Collins</name>
<email>elic@assurancetechnologies.com</email>
</author>
<published>2020-10-06T01:14:03+00:00</published>
<link rel='alternate' type='text/html' href='http://trove.baserock.org/cgit/delta/python-packages/passlib.git/commit/?id=a2809fd98ed58eb006d204b05cc1519bdf1b12de'/>
<id>a2809fd98ed58eb006d204b05cc1519bdf1b12de</id>
<content type='text'>
now return a single unified InternalBackendError() class,
instead of AssertionError.

This change has a couple of parts:

* assert statements replaced with permanent checks,
  since crypt() is unpredictable enough that we need to have this always on,
  even if production runs code in "-O2" mode.

* added debug_only_repr() helper which allows including sensitive stuff
  like salts &amp; hash digests within error tracebacks -- will only do so
  when global flag is enabled; and that's currently only set by unittest suite.

* added new InternalBackendError() exception class (a RuntimeError subclass);
  which is raised instead of an AssertionError.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
now return a single unified InternalBackendError() class,
instead of AssertionError.

This change has a couple of parts:

* assert statements replaced with permanent checks,
  since crypt() is unpredictable enough that we need to have this always on,
  even if production runs code in "-O2" mode.

* added debug_only_repr() helper which allows including sensitive stuff
  like salts &amp; hash digests within error tracebacks -- will only do so
  when global flag is enabled; and that's currently only set by unittest suite.

* added new InternalBackendError() exception class (a RuntimeError subclass);
  which is raised instead of an AssertionError.
</pre>
</div>
</content>
</entry>
<entry>
<title>bcrypt / os_crypt backend: now throws new PasswordValueError()</title>
<updated>2020-05-12T16:05:34+00:00</updated>
<author>
<name>Eli Collins</name>
<email>elic@assurancetechnologies.com</email>
</author>
<published>2020-05-12T16:05:34+00:00</published>
<link rel='alternate' type='text/html' href='http://trove.baserock.org/cgit/delta/python-packages/passlib.git/commit/?id=fd5f041dbd807f18cb250ce13c16c0c4b7362cac'/>
<id>fd5f041dbd807f18cb250ce13c16c0c4b7362cac</id>
<content type='text'>
when encoding issue is found, to separate this from an unexpected error
when calling crypt.crypt() (these will still raise MissingBackendError).

also tweaked internal safe_verify() helper to catch errors thrown by
os_crypt backend (MissingBackendError would previously slip through,
causing spurious UT failures)
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
when encoding issue is found, to separate this from an unexpected error
when calling crypt.crypt() (these will still raise MissingBackendError).

also tweaked internal safe_verify() helper to catch errors thrown by
os_crypt backend (MissingBackendError would previously slip through,
causing spurious UT failures)
</pre>
</div>
</content>
</entry>
<entry>
<title>passlib.hash.bcrypt_sha256: now uses hmac-sha256 instead of plain sha256</title>
<updated>2020-02-16T15:56:06+00:00</updated>
<author>
<name>Eli Collins</name>
<email>elic@assurancetechnologies.com</email>
</author>
<published>2020-02-16T15:56:06+00:00</published>
<link rel='alternate' type='text/html' href='http://trove.baserock.org/cgit/delta/python-packages/passlib.git/commit/?id=2766485f5760489fedb2e73f8a162c83633bbbcb'/>
<id>2766485f5760489fedb2e73f8a162c83633bbbcb</id>
<content type='text'>
(fixes issue 114)
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
(fixes issue 114)
</pre>
</div>
</content>
</entry>
<entry>
<title>passlib.hash.bcrypt: added notes re: final salt character</title>
<updated>2020-02-17T16:21:46+00:00</updated>
<author>
<name>Eli Collins</name>
<email>elic@assurancetechnologies.com</email>
</author>
<published>2020-02-17T16:21:46+00:00</published>
<link rel='alternate' type='text/html' href='http://trove.baserock.org/cgit/delta/python-packages/passlib.git/commit/?id=ec62db38788b1dc0c8f78060f6119cb63bbacfbd'/>
<id>ec62db38788b1dc0c8f78060f6119cb63bbacfbd</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>docs: various minor updates</title>
<updated>2020-02-16T15:57:40+00:00</updated>
<author>
<name>Eli Collins</name>
<email>elic@assurancetechnologies.com</email>
</author>
<published>2020-02-16T15:57:40+00:00</published>
<link rel='alternate' type='text/html' href='http://trove.baserock.org/cgit/delta/python-packages/passlib.git/commit/?id=75472043288fc88d30098e5e61a4e451e7d2c043'/>
<id>75472043288fc88d30098e5e61a4e451e7d2c043</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>bcrypt: deprecated support for "py-bcrypt" and "bcryptor" backends</title>
<updated>2019-11-22T20:54:16+00:00</updated>
<author>
<name>Eli Collins</name>
<email>elic@assurancetechnologies.com</email>
</author>
<published>2019-11-22T20:54:16+00:00</published>
<link rel='alternate' type='text/html' href='http://trove.baserock.org/cgit/delta/python-packages/passlib.git/commit/?id=806cd6fc912796a6173646de165be3a5db76847c'/>
<id>806cd6fc912796a6173646de165be3a5db76847c</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>docs: minor text &amp; build issues</title>
<updated>2019-11-19T19:41:31+00:00</updated>
<author>
<name>Eli Collins</name>
<email>elic@assurancetechnologies.com</email>
</author>
<published>2019-11-19T19:41:31+00:00</published>
<link rel='alternate' type='text/html' href='http://trove.baserock.org/cgit/delta/python-packages/passlib.git/commit/?id=b6b227b144dc638bd8e4fb9c220652da68e00cb8'/>
<id>b6b227b144dc638bd8e4fb9c220652da68e00cb8</id>
<content type='text'>
* fix some typos
* silence unrefrenced footnote warnings (expected, can fix later)
* add intersphinx config to link to py3 stdlib
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
* fix some typos
* silence unrefrenced footnote warnings (expected, can fix later)
* add intersphinx config to link to py3 stdlib
</pre>
</div>
</content>
</entry>
</feed>
