Skip to content
This repository has been archived by the owner on Aug 4, 2018. It is now read-only.

Scheduled weekly dependency update for week 00 #124

Merged
merged 3 commits into from
Jan 1, 2018

Conversation

pyup-bot
Copy link
Contributor

@pyup-bot pyup-bot commented Jan 1, 2018

Updates

Here's a list of all the updates bundled in this pull request. I've added some links to make it easier for you to find all the information you need.

asn1crypto 0.23.0 » 0.24.0 PyPI | Changelog | Repo
attrs 17.3.0 » 17.4.0 PyPI | Changelog | Homepage
ipaddress 1.0.18 » 1.0.19 PyPI | Repo

Changelogs

asn1crypto 0.23.0 -> 0.24.0

0.24.0

  • x509.Certificate().self_signed will no longer return "yes" under any
    circumstances. This helps prevent confusion since the library does not
    verify the signature. Instead a library like oscrypto should be used
    to confirm if a certificate is self-signed.
  • Added various OIDs to x509.KeyPurposeId()
  • Added x509.Certificate().private_key_usage_period_value
  • Added structures for parsing common subject directory attributes for
    X.509 certificates, including x509.SubjectDirectoryAttribute()
  • Added algos.AnyAlgorithmIdentifier() for situations where an
    algorithm identifier may contain a digest, signed digest or encryption
    algorithm OID
  • Fixed a bug with x509.Certificate().subject_directory_attributes_value
    not returning the correct value
  • Fixed a bug where explicitly-tagged fields in a core.Sequence() would
    not function properly when the field had a default value
  • Fixed a bug with type checking in pem.armor()

attrs 17.3.0 -> 17.4.0

17.4.0


Backward-incompatible Changes
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

  • The traversal of MROs when using multiple inheritance was backward:
    If you defined a class C that subclasses A and B like C(A, B), attrs would have collected the attributes from B before those of A.

This is now fixed and means that in classes that employ multiple inheritance, the output of __repr__ and the order of positional arguments in __init__ changes.
Due to the nature of this bug, a proper deprecation cycle was unfortunately impossible.

Generally speaking, it's advisable to prefer kwargs-based initialization anyways – especially if you employ multiple inheritance and diamond-shaped hierarchies.

298 <https://github.com/python-attrs/attrs/issues/298>,
299 <https://github.com/python-attrs/attrs/issues/299>
,
304 <https://github.com/python-attrs/attrs/issues/304>_

  • The __repr__ set by attrs
    no longer produces an AttributeError
    when the instance is missing some of the specified attributes
    (either through deleting
    or after using init=False on some attributes).

This can break code
that relied on repr(attr_cls_instance) raising AttributeError
to check if any attr-specified members were unset.

If you were using this,
you can implement a custom method for checking this::

 def has_unset_members(self):
     for field in attr.fields(type(self)):
         try:
             getattr(self, field.name)
         except AttributeError:
             return True
     return False

308 <https://github.com/python-attrs/attrs/issues/308>_

Deprecations
^^^^^^^^^^^^

  • The attr.ib(convert=callable) option is now deprecated in favor of attr.ib(converter=callable).

This is done to achieve consistency with other noun-based arguments like validator.

convert will keep working until at least January 2019 while raising a DeprecationWarning.

307 <https://github.com/python-attrs/attrs/issues/307>_

Changes
^^^^^^^

  • Generated __hash__ methods now hash the class type along with the attribute values.
    Until now the hashes of two classes with the same values were identical which was a bug.

The generated method is also much faster now.

261 <https://github.com/python-attrs/attrs/issues/261>,
295 <https://github.com/python-attrs/attrs/issues/295>
,
296 <https://github.com/python-attrs/attrs/issues/296>_

  • attr.ib\ ’s metadata argument now defaults to a unique empty dict instance instead of sharing a common empty dict for all.
    The singleton empty dict is still enforced.

280 <https://github.com/python-attrs/attrs/issues/280>_

  • ctypes is optional now however if it's missing, a bare super() will not work in slots classes.
    This should only happen in special environments like Google App Engine.

284 <https://github.com/python-attrs/attrs/issues/284>,
286 <https://github.com/python-attrs/attrs/issues/286>

  • The attribute redefinition feature introduced in 17.3.0 now takes into account if an attribute is redefined via multiple inheritance.
    In that case, the definition that is closer to the base of the class hierarchy wins.

285 <https://github.com/python-attrs/attrs/issues/285>,
287 <https://github.com/python-attrs/attrs/issues/287>

  • Subclasses of auto_attribs=True can be empty now.

291 <https://github.com/python-attrs/attrs/issues/291>,
292 <https://github.com/python-attrs/attrs/issues/292>

  • Equality tests are much faster now.

306 <https://github.com/python-attrs/attrs/issues/306>_

  • All generated methods now have correct __module__, __name__, and (on Python 3) __qualname__ attributes.

309 <https://github.com/python-attrs/attrs/issues/309>_


That's it for now!

Happy merging! 🤖


This change is Reviewable

@mithrandi
Copy link
Member

bors r+

bors-fusion bot added a commit that referenced this pull request Jan 1, 2018
124: Scheduled weekly dependency update for week 00 r=mithrandi a=pyup-bot




## Updates
Here's a list of all the updates bundled in this pull request. I've added some links to make it easier for you to find all the information you need.
<table align="center">

<tr>
<td><b>asn1crypto</b></td>
<td align="center">0.23.0</td>
<td align="center">&raquo;</td>
<td align="center">0.24.0</td>
<td>
     <a href="https://pypi.python.org/pypi/asn1crypto">PyPI</a> | <a href="https://pyup.io/changelogs/asn1crypto/">Changelog</a> | <a href="https://github.com/wbond/asn1crypto/issues">Repo</a> 

</td>

<tr>
<td><b>attrs</b></td>
<td align="center">17.3.0</td>
<td align="center">&raquo;</td>
<td align="center">17.4.0</td>
<td>
     <a href="https://pypi.python.org/pypi/attrs">PyPI</a> | <a href="https://pyup.io/changelogs/attrs/">Changelog</a> | <a href="http://www.attrs.org/">Homepage</a> 

</td>

<tr>
<td><b>ipaddress</b></td>
<td align="center">1.0.18</td>
<td align="center">&raquo;</td>
<td align="center">1.0.19</td>
<td>
     <a href="https://pypi.python.org/pypi/ipaddress">PyPI</a> | <a href="https://github.com/phihag/ipaddress">Repo</a> 

</td>

</tr>
</table>



## Changelogs


### asn1crypto 0.23.0 -> 0.24.0

>### 0.24.0


> - `x509.Certificate().self_signed` will no longer return `&quot;yes&quot;` under any
>   circumstances. This helps prevent confusion since the library does not
>   verify the signature. Instead a library like oscrypto should be used
>   to confirm if a certificate is self-signed.
> - Added various OIDs to `x509.KeyPurposeId()`
> - Added `x509.Certificate().private_key_usage_period_value`
> - Added structures for parsing common subject directory attributes for
>   X.509 certificates, including `x509.SubjectDirectoryAttribute()`
> - Added `algos.AnyAlgorithmIdentifier()` for situations where an
>   algorithm identifier may contain a digest, signed digest or encryption
>   algorithm OID
> - Fixed a bug with `x509.Certificate().subject_directory_attributes_value`
>   not returning the correct value
> - Fixed a bug where explicitly-tagged fields in a `core.Sequence()` would
>   not function properly when the field had a default value
> - Fixed a bug with type checking in `pem.armor()`







### attrs 17.3.0 -> 17.4.0

>### 17.4.0

>-------------------

>Backward-incompatible Changes
>^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

>- The traversal of MROs when using multiple inheritance was backward:
>  If you defined a class ``C`` that subclasses ``A`` and ``B`` like ``C(A, B)``, ``attrs`` would have collected the attributes from ``B`` *before* those of ``A``.

>  This is now fixed and means that in classes that employ multiple inheritance, the output of ``__repr__`` and the order of positional arguments in ``__init__`` changes.
>  Due to the nature of this bug, a proper deprecation cycle was unfortunately impossible.

>  Generally speaking, it&#39;s advisable to prefer ``kwargs``-based initialization anyways – *especially* if you employ multiple inheritance and diamond-shaped hierarchies.

>  `298 &lt;https://github.com/python-attrs/attrs/issues/298&gt;`_,
>  `299 &lt;https://github.com/python-attrs/attrs/issues/299&gt;`_,
>  `304 &lt;https://github.com/python-attrs/attrs/issues/304&gt;`_
>- The ``__repr__`` set by ``attrs``
>  no longer produces an ``AttributeError``
>  when the instance is missing some of the specified attributes
>  (either through deleting
>  or after using ``init=False`` on some attributes).

>  This can break code
>  that relied on ``repr(attr_cls_instance)`` raising ``AttributeError``
>  to check if any attr-specified members were unset.

>  If you were using this,
>  you can implement a custom method for checking this::

>      def has_unset_members(self):
>          for field in attr.fields(type(self)):
>              try:
>                  getattr(self, field.name)
>              except AttributeError:
>                  return True
>          return False

>  `308 &lt;https://github.com/python-attrs/attrs/issues/308&gt;`_


>Deprecations
>^^^^^^^^^^^^

>- The ``attr.ib(convert=callable)`` option is now deprecated in favor of ``attr.ib(converter=callable)``.

>  This is done to achieve consistency with other noun-based arguments like *validator*.

>  *convert* will keep working until at least January 2019 while raising a ``DeprecationWarning``.

>  `307 &lt;https://github.com/python-attrs/attrs/issues/307&gt;`_


>Changes
>^^^^^^^

>- Generated ``__hash__`` methods now hash the class type along with the attribute values.
>  Until now the hashes of two classes with the same values were identical which was a bug.

>  The generated method is also *much* faster now.

>  `261 &lt;https://github.com/python-attrs/attrs/issues/261&gt;`_,
>  `295 &lt;https://github.com/python-attrs/attrs/issues/295&gt;`_,
>  `296 &lt;https://github.com/python-attrs/attrs/issues/296&gt;`_
>- ``attr.ib``\ ’s ``metadata`` argument now defaults to a unique empty ``dict`` instance instead of sharing a common empty ``dict`` for all.
>  The singleton empty ``dict`` is still enforced.

>  `280 &lt;https://github.com/python-attrs/attrs/issues/280&gt;`_
>- ``ctypes`` is optional now however if it&#39;s missing, a bare ``super()`` will not work in slots classes.
>  This should only happen in special environments like Google App Engine.

>  `284 &lt;https://github.com/python-attrs/attrs/issues/284&gt;`_,
>  `286 &lt;https://github.com/python-attrs/attrs/issues/286&gt;`_
>- The attribute redefinition feature introduced in 17.3.0 now takes into account if an attribute is redefined via multiple inheritance.
>  In that case, the definition that is closer to the base of the class hierarchy wins.

>  `285 &lt;https://github.com/python-attrs/attrs/issues/285&gt;`_,
>  `287 &lt;https://github.com/python-attrs/attrs/issues/287&gt;`_
>- Subclasses of ``auto_attribs=True`` can be empty now.

>  `291 &lt;https://github.com/python-attrs/attrs/issues/291&gt;`_,
>  `292 &lt;https://github.com/python-attrs/attrs/issues/292&gt;`_
>- Equality tests are *much* faster now.

>  `306 &lt;https://github.com/python-attrs/attrs/issues/306&gt;`_
>- All generated methods now have correct ``__module__``, ``__name__``, and (on Python 3) ``__qualname__`` attributes.

>  `309 &lt;https://github.com/python-attrs/attrs/issues/309&gt;`_


>----











That's it for now!

Happy merging! 🤖
@bors-fusion
Copy link
Contributor

bors-fusion bot commented Jan 1, 2018

Build succeeded

@bors-fusion bors-fusion bot merged commit 982a291 into master Jan 1, 2018
@bors-fusion bors-fusion bot deleted the pyup-scheduled-update-01-01-2018 branch January 1, 2018 21:36
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

2 participants