Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Dependency update Scheduled weekly dependency update for week 09 #60

Closed
wants to merge 15 commits into from

Conversation

pyup-bot
Copy link
Collaborator

@pyup-bot pyup-bot commented Mar 2, 2020

Update PyYAML from 5.1.1 to 5.3.

The bot wasn't able to find a changelog for this release. Got an idea?

Links

Update marshmallow from 2.19.4 to 3.5.0.

Changelog

3.5.0

******************

Bug fixes:

- Fix list of nullable nested fields ``List(Nested(Field, allow_none=True)``
(:issue:`1497`). Because this fix reverts an optimization introduced to
speed-up serialization and deserialization of lists of nested fields, a
negative impact on performance in this specific case is expected.

3.4.0

******************

Features:

- Improve type coverage (:issue:`1479`). Thanks :user:`Reskov`.

Bug fixes:

- Fix typing for ``data`` param of ``Schema.load`` and ``ValidationError`` (:issue:`1492`).
Thanks :user:`mehdigmira` for reporting and thanks :user:`dfirst` for the PR.

Other changes:

- Remove unnecessary typecasts (:pr:`1500`). Thanks :user:`hukkinj1`.
- Remove useless ``_serialize`` override in ``UUID`` field (:pr:`1489`).

3.3.0

******************

Features:

- ``fields.Nested`` may take a callable that returns a schema instance.
Use this to resolve order-of-declaration issues when schemas nest each other (:issue:`1146`).

.. code-block:: python

  <3.3
 class AlbumSchema(Schema):
     title = fields.Str()
     artist = fields.Nested("ArtistSchema", only=("name",))


 class ArtistSchema(Schema):
     name = fields.Str()
     albums = fields.List(fields.Nested(AlbumSchema))


  >=3.3
 class AlbumSchema(Schema):
     title = fields.Str()
     artist = fields.Nested(lambda: ArtistSchema(only=("name",)))


 class ArtistSchema(Schema):
     name = fields.Str()
     albums = fields.List(fields.Nested(AlbumSchema))

Deprecations:

- Passing the string ``"self"`` to ``fields.Nested`` is deprecated.
Use a callable instead.

.. code-block:: python

 from marshmallow import Schema, fields

  <3.3
 class PersonSchema(Schema):
     partner = fields.Nested("self", exclude=("partner",))
     friends = fields.List(fields.Nested("self"))


  >=3.3
 class PersonSchema(Schema):
     partner = fields.Nested(lambda: PersonSchema(exclude=("partner")))
     friends = fields.List(fields.Nested(lambda: PersonSchema()))

Other changes:

- Fix typing for ``Number._format_num`` (:pr:`1466`). Thanks :user:`hukkinj1`.
- Make mypy stricter and remove dead code (:pr:`1467`). Thanks again, :user:`hukkinj1`.

3.2.2

******************

Bug fixes:

- Don't load fields for which ``load_only`` and ``dump_only`` are both ``True`` (:pr:`1448`).
- Fix types in ``marshmallow.validate`` (:pr:`1446`).

Support:

- Test against Python 3.8 (:pr:`1431`).

3.2.1

++++++++++++++++++

Bug fixes:

- Fix typing for ``Schema.dump[s]`` (:pr:`1416`).

3.2.0

++++++++++++++++++

Features:

- Add type annotations to ``marshmallow.schema`` and ``marshmallow.validate`` (:pr:`1407`, :issue:`663`).

Bug fixes:

- Fix compatibility with Python < 3.5.3 (:issue:`1409`). Thanks :user:`lukaszdudek-silvair` for reporting.

Refactoring:

- Remove unnecessary ``BaseSchema`` superclass (:pr:`1406`).

3.1.1

++++++++++++++++++

Bug fixes:

- Restore inheritance hierarchy of ``Number`` fields (:pr:`1403`).
``fields.Integer`` and ``fields.Decimal`` inherit from ``fields.Number``.
- Fix bug that raised an uncaught error when a nested schema instance had an unpickleable object in its context (:issue:`1404`).
Thanks :user:`metheoryt` for reporting.

3.1.0

++++++++++++++++++

Features:

- Add more type annotations (:issue:`663`).
Type information is distributed per `PEP 561 <https://www.python.org/dev/peps/pep-0561/>`_ .
Thanks :user:`fuhrysteve` for helping with this.

Bug fixes:

- Includes bug fix from 2.20.5.

3.0.5

++++++++++++++++++

Bug fixes:

- Fix bug that raised an uncaught error when passing both a schema instance and ``only`` to ``Nested`` (:pr:`1395`).
This bug also affected passing a schema instance to ``fields.Pluck``.

3.0.4

++++++++++++++++++

Bug fixes:

- Fix propagating dot-delimited `only` and `exclude` parameters to nested schema instances (:issue:`1384`).
- Includes bug fix from 2.20.4 (:issue:`1160`).

3.0.3

++++++++++++++++++

Bug fixes:

- Handle when ``data_key`` is an empty string (:issue:`1378`).
Thanks :user:`jtrakk` for reporting.

3.0.2

++++++++++++++++++

Bug fixes:

- Includes bug fix from 2.20.3 (:pr:`1376`).
- Fix incorrect ``super()`` call in ``SchemaMeta.__init__`` (:pr:`1362`).

3.0.1

++++++++++++++++++

Bug fixes:

- Fix bug when nesting ``fields.DateTime`` within ``fields.List`` or ``fields.Tuple`` (:issue:`1357`).
This bug was introduced in 3.0.0rc9. Thanks :user:`zblz` for reporting.

3.0.0

++++++++++++++++++

Features:

- Optimize ``List(Nested(...))`` (:issue:`779`).
- Minor performance improvements and cleanup (:pr:`1328`).
- Add ``Schema.from_dict`` (:issue:`1312`).

Deprecations/Removals:

- ``Field.fail`` is deprecated. Use ``Field.make_error`` instead.
- Remove UUID validation from ``fields.UUID``, for consistency with other fields (:issue:`1132`).

Support:

- Various docs improvements (:pr:`1329`).

3.0.0rc9

+++++++++++++++++++++

Features:

- *Backwards-incompatible*: Validation does not occur on serialization (:issue:`1132`).
This significantly improves serialization performance.
- *Backwards-incompatible*: ``DateTime`` does not affect timezone information
on serialization and deserialization (:issue:`1234`, :pr:`1278`).
- Add ``NaiveDateTime`` and ``AwareDateTime`` to enforce timezone awareness
(:issue:`1234`, :pr:`1287`).
- *Backwards-incompatible*: ``List`` does not wrap single values in a list on
serialization (:pr:`1307`).
- *Backwards-incompatible*: ``Schema.handle_error`` receives ``many`` and ``partial`` as keyword arguments (:pr:`1321`).
- Use `raise from` more uniformly to improve stack traces (:pr:`1313`).
- Rename ``Nested.__schema`` to ``Nested._schema`` to prevent name mangling (:issue:`1289`).
- Performance improvements (:pr:`1309`).

Deprecations/Removals:

- ``LocalDateTime`` is removed (:issue:`1234`).
- ``marshmallow.utils.utc`` is removed. Use ``datetime.timezone.utc`` instead.

Bug fixes:

- Fix behavior of `List(Nested("self"))` (`779 (comment) <https://github.com/marshmallow-code/marshmallow/issues/779issuecomment-396354987>`_).

Support:

- Document usage of  `validate.Regexp`'s usage `re.search` (:issue:`1285`). Thanks :user:`macdonaldezra`.

3.0.0rc8

+++++++++++++++++++++

Features:

- Propagate ``only`` and ``exclude`` parameters to ``Nested`` fields
within ``List`` and ``Dict`` (:issue:`779`, :issue:`946`).
- Use ``email.utils.parsedate_to_datetime`` instead of conditionally
using dateutil for parsing RFC dates (:pr:`1246`).
- Use internal util functions instead of conditionally using dateutil
for parsing  ISO 8601 datetimes, dates and times. Timezone info is now
correctly deserialized whether or not dateutil is installed. (:pr:`1265`)
- Improve error messages for ``validate.Range``.
- Use ``raise from error`` for better stack traces (:pr:`1254`). Thanks
:user:`fuhrysteve`.
- python-dateutil is no longer used. This resolves the inconsistent behavior
based on the presence of python-dateutil (:issue:`497`, :issue:`1234`).

Bug fixes:

- Fix method resolution for ``__init__`` method of ``fields.Email`` and
``fields.URL`` (:issue:`1268`). Thanks :user:`dursk` for the catch and patch.
- Includes bug fixes from 2.19.4 and 2.19.5.

Other changes:

- *Backwards-incompatible*: Rename ``fields.List.container`` to ``fields.List.inner``,
``fields.Dict.key_container`` to ``fields.Dict.key_field``, and
``fields.Dict.value_container`` to ``fields.Dict.value_field``.
- Switch to Azure Pipelines for CI (:issue:`1261`).

3.0.0rc7

+++++++++++++++++++++

Features:

- *Backwards-incompatible*: ``many`` is passed as a keyword argument to methods decorated with
``pre_load``, ``post_load``, ``pre_dump``, ``post_dump``,
and ``validates_schema``. ``partial`` is passed as a keyword argument to
methods decorated with ``pre_load``, ``post_load`` and ``validates_schema``.
``**kwargs`` should be added to all decorated methods.
- Add ``min_inclusive`` and ``max_exclusive`` parameters to
``validate.Range`` (:issue:`1221`). Thanks :user:`kdop` for the PR.

Bug fixes:

- Fix propagation of "partial" to Nested containers (part of :issue:`779`).
- Includes bug fix from 2.19.3.

Other changes:

- *Backwards-incompatible*: Use keyword-only arguments (:issue:`1216`).

3.0.0rc6

+++++++++++++++++++++

Support:

- *Backwards-incompatible*: Remove support for Python 2 (:issue:`1120`).
Only Python>=3.5 is supported.
Thank you :user:`rooterkyberian` for the suggestion and the PR.
- *Backwards-incompatible*: Remove special-casing in ``fields.List`` and
``fields.Tuple`` for accessing nested attributes (:pr:`1188`).
Use ``fields.List(fields.Pluck(...))`` instead.
- Add ``python_requires`` to ``setup.py`` (:pr:`1194`).
Thanks :user:`hugovk`.
- Upgrade syntax with ``pyupgrade`` in pre-commit (:pr:`1195`). Thanks
again :user:`hugovk`.

3.0.0rc5

+++++++++++++++++++++

Features:

- Allow input value to be included in error messages
for a number of fields (:pr:`1129`). Thanks :user:`hdoupe` for the PR.
- Improve default error messages for ``OneOf`` and ``ContainsOnly``
(:issue:`885`). Thanks :user:`mcgfeller` for the suggestion
and :user:`maxalbert` for the PR.

Deprecations/Removals:

- Remove ``fields.FormattedString`` (:issue:`1141`). Use
``fields.Function`` or ``fields.Method`` instead.

Bug fixes:

- Includes bug fix from 2.19.2.

3.0.0rc4

+++++++++++++++++++++

Features:

- Add ``fields.Tuple`` (:issue:`1103`) Thanks :user:`zblz` for the PR.
- Add ``fields.Mapping``, which makes it easier to support other
mapping types (e.g. ``OrderedDict``)  (:issue:`1092`).
Thank :user:`sayanarijit` for the suggestion and the PR.

3.0.0rc3

+++++++++++++++++++++

Features:

- Make the error messages for "unknown fields" and "invalid data type"
configurable (:issue:`852`). Thanks :user:`Dunstrom` for the PR.
- ``fields.Boolean`` parses ``"yes"``/``"no"`` values (:pr:`1081`).
Thanks :user:`r1b`.

Other changes:

- *Backwards-incompatible with previous 3.x versions*: Change ordering
of ``keys`` and ``values`` arguments to ``fields.Dict``.
- Remove unused code in `marshmallow.utils`: ``is_indexable_but_not_string``,
``float_to_decimal``, ``decimal_to_fixed``, ``from_iso`` (:pr:`1088`).
- Remove unused ``marshmallow.compat.string_types``.

Bug fixes:

- Includes bug fix from 2.18.0.

3.0.0rc2

+++++++++++++++++++++

Features:

- Add ``register`` *class Meta* option to allow bypassing marshmallow's
internal class registry when memory usage is critical (:issue:`660`).

Bug fixes:

- Fix serializing dict-like objects with properties (:issue:`1060`).
Thanks :user:`taion` for the fix.
- Fix populating ``ValidationError.valid_data`` for ``List`` and
``Dict`` fields (:issue:`766`).

Other changes:

- Add ``marshmallow.__version_info__`` (:pr:`1074`).
- Remove the ``marshmallow.marshalling`` internal module (:pr:`1070`).
- A ``ValueError`` is raised when the ``missing`` parameter is passed
for required fields (:issue:`1040`).
- Extra keyword arguments passed to ``ValidationError`` in validators
are no longer passed to the final ``ValidationError`` raised upon
validation completion (:issue:`996`).

3.0.0rc1

+++++++++++++++++++++

Features:

- *Backwards-incompatible*: Rework ``ValidationError`` API.
It now expects a single field name, and error structures are merged
in the final ``ValidationError`` raised when validation completes.
This allows schema-level validators to raise errors for individual
fields (:issue:`441`). Thanks :user:`maximkulkin` for
writing the original ``merge_errors`` implementation in :pr:`442` and thanks
:user:`lafrech` for completing the implementation in :pr:`1026`.

Bug fixes:

- Fix ``TypeError`` when serializing ``None`` with ``Pluck`` (:pr:`1049`).
Thanks :user:`toffan` for the catch and patch.

3.0.0b20

+++++++++++++++++++++

Bug fixes:

- Includes bug fixes from 2.16.2 and 2.16.3.

3.0.0b19

+++++++++++++++++++++

Features:

- Support partial loading of nested fields (:pr:`438`). Thanks
:user:`arbor-dwatson` for the PR. *Note*: Subclasses of ``fields.Nested``
now take an additional ``partial`` parameter in the ``_deserialize``
method.

Bug fixes:

- Restore ``Schema.TYPE_MAPPING``, which was removed in 3.0.0b17 (:issue:`1012`).

Other changes:

- *Backwards-incompatible*: ``_serialize`` and ``_deserialize`` methods of
all ``fields.Field`` subclasses must accept ``**kwargs`` (:pr:`1007`).

3.0.0b18

+++++++++++++++++++++

Bug fixes:

- Fix ``Date`` deserialization when using custom format (:issue:`1001`). Thanks
:user:`Ondkloss` for reporting.

Deprecations/Removals:

- ``prefix`` parameter or ``Schema`` class is removed (:issue:`991`). The same
can be achieved using a ``post_dump`` method.

3.0.0b17

+++++++++++++++++++++

Features:

- Add ``format`` option to ``Date`` field (:pr:`869`).
- *Backwards-incompatible*: Rename ``DateTime``'s ``dateformat`` Meta option
to ``datetimeformat``. ``dateformat`` now applies to ``Date`` (:pr:`869`).
Thanks :user:`knagra` for implementing these changes.
- Enforce ISO 8601 when deserializing date and time (:issue:`899`).
Thanks :user:`dushr` for the report and the work on the PR.
- *Backwards-incompatible*: Raise ``ValueError`` on ``Schema`` instantiation in
case of ``attribute`` or ``data_key`` collision (:pr:`992`).

Bug fixes:

- Fix inconsistencies in field inference by refactoring the inference feature
into a dedicated field (:issue:`809`). Thanks :user:`taion` for the PR.
- When ``unknown`` is not passed to ``Nested``, default to nested ``Schema``
``unknown`` meta option rather than ``RAISE`` (:pr:`963`).
Thanks :user:`vgavro` for the PR.
- Fix loading behavior of ``fields.Pluck`` (:pr:`990`).
- Includes bug fix from 2.16.0.

3.0.0b16

+++++++++++++++++++++

Bug fixes:

- Fix ``root`` attribute for nested container fields
on inheriting schemas (:issue:`956`). Thanks :user:`bmcbu`
for reporting.

3.0.0b15

+++++++++++++++++++++

Bug fixes:

- Raise ``ValidationError`` instead of ``TypeError`` when non-iterable types are
validated with ``many=True`` (:issue:`851`).
- ``many=True`` no longer iterates over ``str`` and ``collections.abc.Mapping`` objects and instead
raises a ``ValidationError`` with ``{'_schema': ['Invalid input type.']}`` (:issue:`930`).
- Return ``[]`` as ``ValidationError.valid_data`` instead of ``{}`` when
``many=True`` (:issue:`907`).

Thanks :user:`tuukkamustonen` for implementing these changes.

3.0.0b14

+++++++++++++++++++++

Features:

- Add ``fields.Pluck`` for serializing a single field from a nested object
(:issue:`800`). Thanks :user:`timc13` for the feedback and :user:`deckar01`
for the implementation.
- *Backwards-incompatible*: Passing a string argument as ``only`` to
``fields.Nested`` is no longer supported. Use ``fields.Pluck`` instead
(:issue:`800`).
- Raise a `StringNotCollectionError` if ``only`` or ``exclude`` is
passed as a string to ``fields.Nested`` (:pr:`931`).
- *Backwards-incompatible*: ``Float`` takes an ``allow_nan`` parameter to
explicitly allow serializing and deserializing special values (``nan``,
``inf`` and ``-inf``). ``allow_nan`` defaults to ``False``.

Other changes:

- *Backwards-incompatible*: ``Nested`` field now defaults to ``unknown=RAISE``
instead of ``EXCLUDE``. This harmonizes behavior with ``Schema`` that
already defaults to ``RAISE`` (:issue:`908`). Thanks :user:`tuukkamustonen`.
- Tested against Python 3.7.

3.0.0b13

+++++++++++++++++++++

Bug fixes:

- Errors reported by a schema-level validator for a field in a ``Nested`` field
are stored under corresponding field name, not ``_schema`` key (:pr:`862`).
- Includes bug fix from 2.15.4.

Other changes:

- *Backwards-incompatible*: The ``unknown`` option now defaults to ``RAISE``
(`524 (comment) <https://github.com/marshmallow-code/marshmallow/issues/524issuecomment-397165731>`_,
:issue:`851`).
- *Backwards-incompatible*: When a schema error is raised with a ``dict`` as
payload, the ``dict`` overwrites any existing error list. Before this change,
it would be appended to the list.
- Raise a `StringNotCollectionError` if ``only`` or ``exclude`` is
passed as a string (:issue:`316`). Thanks :user:`paulocheque` for
reporting.

3.0.0b12

+++++++++++++++++++++

Features:

- The behavior to apply when encountering unknown fields while deserializing
can be controlled with the ``unknown`` option (:issue:`524`,
:issue:`747`, :issue:`127`).
It makes it possible to either "include", "exclude", or "raise".
Thanks :user:`tuukkamustonen` for the suggestion and thanks
:user:`ramnes` for the PR.

.. warning::

The default for ``unknown`` will be changed to ``RAISE`` in the
next release.

Other changes:

- *Backwards-incompatible*: Pre/Post-processors MUST return modified data.
Returning ``None`` does not imply data were mutated (:issue:`347`). Thanks
:user:`tdevelioglu` for reporting.
- *Backwards-incompatible*: ``only`` and ``exclude`` are bound by
declared and additional fields. A ``ValueError`` is raised if invalid
fields are passed (:issue:`636`). Thanks :user:`jan-23` for reporting.
Thanks :user:`ikilledthecat` and :user:`deckar01` for the PRs.
- Format code using pre-commit (:pr:`855`).

Deprecations/Removals:

- ``ValidationError.fields`` is removed (:issue:`840`). Access field
instances from ``Schema.fields``.

3.0.0b11

+++++++++++++++++++++

Features:

- Clean up code for schema hooks (:pr:`814`). Thanks :user:`taion`.
- Minor performance improvement from simplifying ``utils.get_value`` (:pr:`811`). Thanks again :user:`taion`.
- Add ``require_tld`` argument to ``fields.URL`` (:issue:`749`). Thanks
:user:`DenerKup` for reporting and thanks :user:`surik00` for the PR.
- ``fields.UUID`` deserializes ``bytes`` strings using ``UUID(bytes=b'...')`` (:pr:`625`).
Thanks :user:`JeffBerger` for the suggestion and the PR.

Bug fixes:

- Fields nested within ``Dict`` correctly inherit context from their
parent schema (:issue:`820`). Thanks :user:`RosanneZe` for reporting
and :user:`deckar01` for the PR.
- Includes bug fix from 2.15.3.

3.0.0b10

+++++++++++++++++++++

Bug fixes:

- Includes bugfixes from 2.15.2.

3.0.0b9

++++++++++++++++++++

Features:

- *Backwards-incompatible*: ``missing`` and ``default`` values are
passed in deserialized form (:issue:`378`). Thanks :user:`chadrik` for
the suggestion and thanks :user:`lafrech` for the PR.

Bug fixes:

- Includes the bugfix from 2.15.1.

3.0.0b8

++++++++++++++++++++

Features:

- *Backwards-incompatible*: Add ``data_key`` parameter to fields for
specifying the key in the input and output data dict. This
parameter replaces both ``load_from`` and ``dump_to`` (:issue:`717`).
Thanks :user:`lafrech`.
- *Backwards-incompatible*: When `pass_original=True` is passed to one
of the decorators and a collection is being (de)serialized, the
`original_data` argument will be a single object unless
`pass_many=True` is also passed to the decorator (:issue:`315`,
:issue:`743`). Thanks :user:`stj` for the PR.
- *Backwards-incompatible*: Don't recursively check nested required
fields when the Nested field's key is missing (:issue:`319`). This
reverts :pr:`235`. Thanks :user:`chekunkov` reporting and thanks
:user:`lafrech` for the PR.
- *Backwards-incompatible*: Change error message collection for `Dict` field (:issue:`730`). Note:
this is backwards-incompatible with previous 3.0.0bX versions.
Thanks :user:`shabble` for the report and thanks :user:`lafrech` for the PR.

3.0.0b7

++++++++++++++++++++

Features:

- *Backwards-incompatible*: Schemas are always strict (:issue:`377`).
The ``strict`` parameter is removed.
- *Backwards-incompatible*: `Schema().load` and `Schema().dump` return ``data`` instead of a
``(data, errors)`` tuple (:issue:`598`).
- *Backwards-incomaptible*: `Schema().load(None)` raises a
`ValidationError` (:issue:`511`).

See :ref:`upgrading_3_0` for a guide on updating your code.

Thanks :user:`lafrech` for implementing these changes.
Special thanks to :user:`MichalKononenko`, :user:`douglas-treadwell`, and
:user:`maximkulkin` for the discussions on these changes.


Other changes:

- *Backwards-incompatible*: Field name is not checked when ``load_from``
is specified (:pr:`714`). Thanks :user:`lafrech`.

Support:

- Add `Code of Conduct <https://marshmallow.readthedocs.io/en/dev/code_of_conduct.html>`_.

3.0.0b6

++++++++++++++++++++

Bug fixes:

- Fixes `ValidationError.valid_data` when a nested field contains errors
(:issue:`710`). This bug was introduced in 3.0.0b3. Thanks
:user:`lafrech`.

Other changes:

- *Backwards-incompatible*: ``Email`` and ``URL`` fields don't validate
on serialization (:issue:`608`). This makes them more consistent with the other
fields and improves serialization performance. Thanks again :user:`lafrech`.
- ``validate.URL`` requires square brackets around IPv6 URLs (:issue:`707`). Thanks :user:`harlov`.

3.0.0b5

++++++++++++++++++++

Features:

- Add support for structured dictionaries by providing values and keys arguments to the
``Dict`` field's constructor. This mirrors the ``List``
field's ability to validate its items (:issue:`483`). Thanks :user:`deckar01`.

Other changes:

- *Backwards-incompatible*: ``utils.from_iso`` is deprecated in favor of
``utils.from_iso_datetime`` (:issue:`694`). Thanks :user:`sklarsa`.

3.0.0b4

++++++++++++++++++++

Features:

- Add support for millisecond, minute, hour, and week precisions to
``fields.TimeDelta`` (:issue:`537`). Thanks :user:`Fedalto` for the
suggestion and the PR.
- Includes features from release 2.14.0.


Support:

- Copyright year in docs uses CHANGELOG.rst's modified date for
reproducible builds (:issue:`679`). Thanks :user:`bmwiedemann`.
- Test against Python 3.6 in tox. Thanks :user:`Fedalto`.
- Fix typo in exception message (:issue:`659`). Thanks :user:`wonderbeyond`
for reporting and thanks :user:`yoichi` for the PR.

3.0.0b3

++++++++++++++++++++

Features:

- Add ``valid_data`` attribute to ``ValidationError``.
- Add ``strict`` parameter to ``Integer`` (:issue:`667`). Thanks
:user:`yoichi`.

Deprecations/Removals:

- Deprecate ``json_module`` option in favor of ``render_module`` (:issue:`364`, :issue:`130`). Thanks :user:`justanr` for the suggestion.

Bug fixes:

- Includes bug fixes from releases 2.13.5 and 2.13.6.
- *Backwards-incompatible* : ``Number`` fields don't accept booleans as valid input (:issue:`623`). Thanks :user:`tuukkamustonen` for the suggestion and thanks :user:`rowillia` for the PR.

Support:

- Add benchmark script. Thanks :user:`rowillia`.

3.0.0b2

++++++++++++++++++++

Features:

- Add ``truthy`` and ``falsy`` params to ``fields.Boolean`` (:issue:`580`). Thanks :user:`zwack` for the PR. Note: This is potentially a breaking change if your code passes the `default` parameter positionally. Pass `default` as a keyword argument instead, e.g. ``fields.Boolean(default=True)``.

Other changes:

- *Backwards-incompatible*: ``validate.ContainsOnly`` allows empty and duplicate values (:issue:`516`, :issue:`603`). Thanks :user:`maximkulkin` for the suggestion and thanks :user:`lafrech` for the PR.

Bug fixes:

- Includes bug fixes from release 2.13.4.

3.0.0b1

++++++++++++++++++++

Features:

- ``fields.Nested`` respects ``only='field'`` when deserializing (:issue:`307`). Thanks :user:`erlingbo` for the suggestion and the PR.
- ``fields.Boolean`` parses ``"on"``/``"off"`` (:issue:`580`). Thanks :user:`marcellarius` for the suggestion.


Other changes:

- Includes changes from release 2.13.2.
- *Backwards-incompatible*: ``skip_on_field_errors`` defaults to ``True`` for ``validates_schema`` (:issue:`352`).

3.0.0a1

++++++++++++++++++++

Features:

- ``dump_only`` and ``load_only`` for ``Function`` and ``Method`` are set based on ``serialize`` and ``deserialize`` arguments (:issue:`328`).

Other changes:

- *Backwards-incompatible*: ``fields.Method`` and ``fields.Function`` no longer swallow ``AttributeErrors`` (:issue:`395`). Thanks :user:`bereal` for the suggestion.
- *Backwards-incompatible*: ``validators.Length`` is no longer a subclass of ``validators.Range`` (:issue:`458`). Thanks :user:`deckar01` for the catch and patch.
- *Backwards-incompatible*: ``utils.get_func_args`` no longer returns bound arguments. This is consistent with the behavior of ``inspect.signature``. This change prevents a DeprecationWarning on Python 3.5 (:issue:`415`, :issue:`479`). Thanks :user:`deckar01` for the PR.
- *Backwards-incompatible*: Change the signature of ``utils.get_value`` and ``Schema.get_attribute`` for consistency with Python builtins (e.g. ``getattr``) (:issue:`341`). Thanks :user:`stas` for reporting and thanks :user:`deckar01` for the PR.
- *Backwards-incompatible*: Don't unconditionally call callable attributes (:issue:`430`, reverts :issue:`242`). Thanks :user:`mirko` for the suggestion.
- Drop support for Python 2.6 and 3.3.

Deprecation/Removals:

- Remove ``__error_handler__``, ``__accessor__``, ``Schema.error_handler``, and ``Schema.accessor``. Override ``Schema.handle_error`` and ``Schema.get_attribute`` instead.
- Remove ``func`` parameter of ``fields.Function``. Remove ``method_name`` parameter of ``fields.Method`` (issue:`325`). Use the ``serialize`` parameter instead.
- Remove ``extra`` parameter from ``Schema``. Use a ``post_dump`` method to add additional data.

2.20.5

+++++++++++++++++++

Bug fixes:

- Fix behavior when a non-list collection is passed to the ``validate`` argument of ``fields.Email`` and ``fields.URL`` (:issue:`1400`).

2.20.4

+++++++++++++++++++

Bug fixes:

- Respect the ``many`` value on ``Schema`` instances passed to ``Nested`` (:issue:`1160`).
Thanks :user:`Kamforka` for reporting.

2.20.3

+++++++++++++++++++

Bug fixes:

- Don't swallow ``TypeError`` exceptions raised by ``Field._bind_to_schema`` or ``Schema.on_bind_field`` (:pr:`1376`).

2.20.2

+++++++++++++++++++

Bug fixes:

- Prevent warning about importing from ``collections`` on Python 3.7
(:pr:`1354`). Thanks :user:`nicktimko` for the PR.

2.20.1

+++++++++++++++++++

Bug fixes:

- Fix bug that raised ``TypeError`` when invalid data type is
passed to a nested schema with ``validates`` (:issue:`1342`).

2.20.0

+++++++++++++++++++

Bug fixes:

- Fix deprecated functions' compatibility with Python 2 (:issue:`1337`).
Thanks :user:`airstandley` for the catch and patch.
- Fix error message consistency for invalid input types on nested fields (:issue:`1303`).
This is a backport of the fix in :pr:`857`. Thanks :user:`cristi23` for the
thorough bug report and the PR.

Deprecation/Removal:

- Python 2.6 is no longer officially supported (:issue:`1274`).

2.19.5

+++++++++++++++++++

Bug fixes:

- Fix deserializing ISO8601-formatted datetimes with less than 6-digit
miroseconds (:issue:`1251`). Thanks :user:`diego-plan9` for reporting.
Links

Update pydantic from 0.28 to 1.4.

Changelog

1.4

* **Breaking Change:** alias precedence logic changed so aliases on a field always take priority over
an alias from `alias_generator` to avoid buggy/unexpected behaviour,
see [here](https://pydantic-docs.helpmanual.io/usage/model_config/alias-precedence) for details, 1178 by samuelcolvin
* Add support for unicode and punycode in TLDs, 1182 by jamescurtin
* Fix `cls` argument in validators during assignment, 1172 by samuelcolvin
* completing Luhn algorithm for `PaymentCardNumber`, 1166 by cuencandres
* add support for generics that implement `__get_validators__` like a custom data type, 1159 by tiangolo
* add support for infinite generators with `Iterable`, 1152 by tiangolo
* fix `url_regex` to accept schemas with `+`, `-` and `.` after the first character, 1142 by samuelcolvin
* move `version_info()` to `version.py`, suggest its use in issues, 1138 by samuelcolvin
* Improve pydantic import time by roughly 50% by deferring some module loading and regex compilation, 1127 by samuelcolvin
* Fix `EmailStr` and `NameEmail` to accept instances of themselves in cython, 1126 by koxudaxi
* Pass model class to the `Config.schema_extra` callable, 1125 by therefromhere
* Fix regex for username and password in URLs, 1115 by samuelcolvin
* Add support for nested generic models, 1104 by dmontagu
* add `__all__` to `__init__.py` to prevent "implicit reexport" errors from mypy, 1072 by samuelcolvin
* Add support for using "dotenv" files with `BaseSettings`, 1011 by acnebs

1.3

* Change `schema` and `schema_model` to handle dataclasses by using their `__pydantic_model__` feature, 792 by aviramha
* Added option for `root_validator` to be skipped if values validation fails using keyword `skip_on_failure=True`, 1049 by aviramha
* Allow `Config.schema_extra` to be a callable so that the generated schema can be post-processed, 1054 by selimb
* Update mypy to version 0.750, 1057 by dmontagu
* Trick Cython into allowing str subclassing, 1061 by skewty
* Prevent type attributes being added to schema unless the attribute `__schema_attributes__` is `True`, 1064 by samuelcolvin
* Change `BaseModel.parse_file` to use `Config.json_loads`, 1067 by kierandarcy
* Fix for optional `Json` fields, 1073 by volker48
* Change the default number of threads used when compiling with cython to one,
allow override via the `CYTHON_NTHREADS` environment variable, 1074 by samuelcolvin
* Run FastAPI tests during Pydantic's CI tests, 1075 by tiangolo
* My mypy strictness constraints, and associated tweaks to type annotations, 1077 by samuelcolvin
* Add `__eq__` to SecretStr and SecretBytes to allow "value equals", 1079 by sbv-trueenergy
* Fix schema generation for nested None case, 1088 by lutostag
* Consistent checks for sequence like objects, 1090 by samuelcolvin
* Fix `Config` inheritance on `BaseSettings` when used with `env_prefix`, 1091 by samuelcolvin
* Fix for `__modify_schema__` when it conflicted with `field_class_to_schema*`, 1102 by samuelcolvin
* docs: Fix explanation of case sensitive environment variable names when populating `BaseSettings` subclass attributes, 1105 by tribals
* Rename django-rest-framework benchmark in documentation, 1119 by frankie567

1.2

* **Possible Breaking Change:** Add support for required `Optional` with `name: Optional[AnyType] = Field(...)`
and refactor `ModelField` creation to preserve `required` parameter value, 1031 by tiangolo;
see [here](https://pydantic-docs.helpmanual.io/usage/models/required-optional-fields) for details
* Add benchmarks for `cattrs`, 513 by sebastianmika
* Add `exclude_none` option to `dict()` and friends, 587 by niknetniko
* Add benchmarks for `valideer`, 670 by gsakkis
* Add `parse_obj_as` and `parse_file_as` functions for ad-hoc parsing of data into arbitrary pydantic-compatible types, 934 by dmontagu
* Add `allow_reuse` argument to validators, thus allowing validator reuse, 940 by dmontagu
* Add support for mapping types for custom root models, 958 by dmontagu
* Mypy plugin support for dataclasses, 966 by koxudaxi
* Add support for dataclasses default factory, 968 by ahirner
* Add a `ByteSize` type for converting byte string (`1GB`) to plain bytes, 977 by dgasmith
* Fix mypy complaint about `root_validator(pre=True)`, 984 by samuelcolvin
* Add manylinux binaries for python 3.8 to pypi, also support manylinux2010, 994 by samuelcolvin
* Adds ByteSize conversion to another unit, 995 by dgasmith
* Fix `__str__` and `__repr__` inheritance for models, 1022 by samuelcolvin
* add testimonials section to docs, 1025 by sullivancolin
* Add support for `typing.Literal` for Python 3.8, 1026 by dmontagu

1.1.1

* Fix bug where use of complex fields on sub-models could cause fields to be incorrectly configured, 1015 by samuelcolvin

1.1

* Add a mypy plugin for type checking `BaseModel.__init__` and more, 722 by dmontagu
* Change return type typehint for `GenericModel.__class_getitem__` to prevent PyCharm warnings, 936 by dmontagu
* Fix usage of `Any` to allow `None`, also support `TypeVar` thus allowing use of un-parameterised collection types
e.g. `Dict` and `List`, 962 by samuelcolvin
* Set `FieldInfo` on subfields to fix schema generation for complex nested types, 965 by samuelcolvin

1.0

* **Breaking Change:** deprecate the `Model.fields` property, use `Model.__fields__` instead, 883 by samuelcolvin
* **Breaking Change:** Change the precedence of aliases so child model aliases override parent aliases,
including using `alias_generator`, 904 by samuelcolvin
* **Breaking change:** Rename `skip_defaults` to `exclude_unset`, and add ability to exclude actual defaults, 915 by dmontagu
* Add `**kwargs` to `pydantic.main.ModelMetaclass.__new__` so `__init_subclass__` can take custom parameters on extended
`BaseModel` classes, 867 by retnikt
* Fix field of a type that has a default value, 880 by koxudaxi
* Use `FutureWarning` instead of `DeprecationWarning` when `alias` instead of `env` is used for settings models, 881 by samuelcolvin
* Fix issue with `BaseSettings` inheritance and `alias` getting set to `None`, 882 by samuelcolvin
* Modify `__repr__` and `__str__` methods to be consistent across all public classes, add `__pretty__` to support
python-devtools, 884 by samuelcolvin
* deprecation warning for `case_insensitive` on `BaseSettings` config, 885 by samuelcolvin
* For `BaseSettings` merge environment variables and in-code values recursively, as long as they create a valid object
when merged together, to allow splitting init arguments, 888 by idmitrievsky
* change secret types example, 890 by ashears
* Change the signature of `Model.construct()` to be more user-friendly, document `construct()` usage, 898 by samuelcolvin
* Add example for the `construct()` method, 907 by ashears
* Improve use of `Field` constraints on complex types, raise an error if constraints are not enforceable,
also support tuples with an ellipsis `Tuple[X, ...]`, `Sequence` and `FrozenSet` in schema, 909 by samuelcolvin
* update docs for bool missing valid value, 911 by trim21
* Better `str`/`repr` logic for `ModelField`, 912 by samuelcolvin
* Fix `ConstrainedList`, update schema generation to reflect `min_items` and `max_items` `Field()` arguments, 917 by samuelcolvin
* Allow abstracts sets (eg. dict keys) in the `include` and `exclude` arguments of `dict()`, 921 by samuelcolvin
* Fix JSON serialization errors on `ValidationError.json()` by using `pydantic_encoder`, 922 by samuelcolvin
* Clarify usage of `remove_untouched`, improve error message for types with no validators, 926 by retnikt

1.0b2

* Mark `StrictBool` typecheck as `bool` to allow for default values without mypy errors, 690 by dmontagu
* Transfer the documentation build from sphinx to mkdocs, re-write much of the documentation, 856 by samuelcolvin
* Add support for custom naming schemes for `GenericModel` subclasses, 859 by dmontagu
* Add `if TYPE_CHECKING:` to the excluded lines for test coverage, 874 by dmontagu
* Rename `allow_population_by_alias` to `allow_population_by_field_name`, remove unnecessary warning about it, 875 by samuelcolvin

1.0b1

* **Breaking Change:** rename `Schema` to `Field`, make it a function to placate mypy, 577 by samuelcolvin
* **Breaking Change:** modify parsing behavior for `bool`, 617 by dmontagu
* **Breaking Change:** `get_validators` is no longer recognised, use `__get_validators__`.
`Config.ignore_extra` and `Config.allow_extra` are no longer recognised, use `Config.extra`, 720 by samuelcolvin
* **Breaking Change:** modify default config settings for `BaseSettings`; `case_insensitive` renamed to `case_sensitive`,
default changed to `case_sensitive = False`, `env_prefix` default changed to `''` - e.g. no prefix, 721 by dmontagu
* **Breaking change:** Implement `root_validator` and rename root errors from `__obj__` to `__root__`, 729 by samuelcolvin
* **Breaking Change:** alter the behaviour of `dict(model)` so that sub-models are nolonger
converted to dictionaries, 733 by samuelcolvin
* **Breaking change:** Added `initvars` support to `post_init_post_parse`, 748 by Raphael-C-Almeida
* **Breaking Change:** Make `BaseModel.json()` only serialize the `__root__` key for models with custom root, 752 by dmontagu
* **Breaking Change:** complete rewrite of `URL` parsing logic, 755 by samuelcolvin
* **Breaking Change:** preserve superclass annotations for field-determination when not provided in subclass, 757 by dmontagu
* **Breaking Change:** `BaseSettings` now uses the special `env` settings to define which environment variables to
read, not aliases, 847 by samuelcolvin
* add support for `assert` statements inside validators, 653 by abdusco
* Update documentation to specify the use of `pydantic.dataclasses.dataclass` and subclassing `pydantic.BaseModel`, 710 by maddosaurus
* Allow custom JSON decoding and encoding via `json_loads` and `json_dumps` `Config` properties, 714 by samuelcolvin
* make all annotated fields occur in the order declared, 715 by dmontagu
* use pytest to test `mypy` integration, 735 by dmontagu
* add `__repr__` method to `ErrorWrapper`, 738 by samuelcolvin
* Added support for `FrozenSet` members in dataclasses, and a better error when attempting to use types from the `typing` module that are not supported by Pydantic, 745 by djpetti
* add documentation for Pycharm Plugin, 750 by koxudaxi
* fix broken examples in the docs, 753 by dmontagu
* moving typing related objects into `pydantic.typing`, 761 by samuelcolvin
* Minor performance improvements to `ErrorWrapper`, `ValidationError` and datetime parsing, 763 by samuelcolvin
* Improvements to `datetime`/`date`/`time`/`timedelta` types: more descriptive errors,
change errors to `value_error` not `type_error`, support bytes, 766 by samuelcolvin
* fix error messages for `Literal` types with multiple allowed values, 770 by dmontagu
* Improved auto-generated `title` field in JSON schema by converting underscore to space, 772 by skewty
* support `mypy --no-implicit-reexport` for dataclasses, also respect `--no-implicit-reexport` in pydantic itself, 783 by samuelcolvin
* add the `PaymentCardNumber` type, 790 by matin
* Fix const validations for lists, 794 by hmvp
* Set `additionalProperties` to false in schema for models with extra fields disallowed, 796 by Code0x58
* `EmailStr` validation method now returns local part case-sensitive per RFC 5321, 798 by henriklindgren
* Added ability to validate strictness to `ConstrainedFloat`, `ConstrainedInt` and `ConstrainedStr` and added
`StrictFloat` and `StrictInt` classes, 799 by DerRidda
* Improve handling of `None` and `Optional`, replace `whole` with `each_item` (inverse meaning, default `False`)
on validators, 803 by samuelcolvin
* add support for `Type[T]` type hints, 807 by timonbimon
* Performance improvements from removing `change_exceptions`, change how pydantic error are constructed, 819 by samuelcolvin
* Fix the error message arising when a `BaseModel`-type model field causes a `ValidationError` during parsing, 820 by dmontagu
* allow `getter_dict` on `Config`, modify `GetterDict` to be more like a `Mapping` object and thus easier to work with, 821 by samuelcolvin
* Only check `TypeVar` param on base `GenericModel` class, 842 by zpencerq
* rename `Model._schema_cache` -> `Model.__schema_cache__`, `Model._json_encoder` -> `Model.__json_encoder__`,
`Model._custom_root_type` -> `Model.__custom_root_type__`, 851 by samuelcolvin

0.32.2

* fix `__post_init__` usage with dataclass inheritance, fix 739 by samuelcolvin
* fix required fields validation on GenericModels classes, 742 by amitbl
* fix defining custom `Schema` on `GenericModel` fields, 754 by amitbl

0.32.1

* do not validate extra fields when `validate_assignment` is on, 724 by YaraslauZhylko

0.32

* add model name to `ValidationError` error message, 676 by dmontagu
* **breaking change**: remove `__getattr__` and rename `__values__` to `__dict__` on `BaseModel`,
deprecation warning on use `__values__` attr, attributes access speed increased up to 14 times, 712 by MrMrRobat
* support `ForwardRef` (without self-referencing annotations) in Python 3.6, 706 by koxudaxi
* implement `schema_extra` in `Config` sub-class, 663 by tiangolo

0.31.1

* fix json generation for `EnumError`, 697 by dmontagu
* update numerous dependencies

0.31

* better support for floating point `multiple_of` values, 652 by justindujardin
* fix schema generation for `NewType` and `Literal`, 649 by dmontagu
* fix `alias_generator` and field config conflict, 645 by gmetzker and 658 by MrMrRobat
* more detailed message for `EnumError`, 673 by dmontagu
* add advanced exclude support for `dict`, `json` and `copy`, 648 by MrMrRobat
* fix bug in `GenericModel` for models with concrete parameterized fields, 672 by dmontagu
* add documentation for `Literal` type, 651 by dmontagu
* add `Config.keep_untouched` for custom descriptors support, 679 by MrMrRobat
* use `inspect.cleandoc` internally to get model description, 657 by tiangolo
* add `Color` to schema generation, by euri10
* add documentation for Literal type, 651 by dmontagu

0.30.1

* fix so nested classes which inherit and change `__init__` are correctly processed while still allowing `self` as a
parameter, 644 by lnaden and dgasmith

0.30

* enforce single quotes in code, 612 by samuelcolvin
* fix infinite recursion with dataclass inheritance and `__post_init__`, 606 by Hanaasagi
* fix default values for `GenericModel`, 610 by dmontagu
* clarify that self-referencing models require python 3.7+, 616 by vlcinsky
* fix truncate for types, 611 by dmontagu
* add `alias_generator` support, 622 by MrMrRobat
* fix unparameterized generic type schema generation, 625 by dmontagu
* fix schema generation with multiple/circular references to the same model, 621 by tiangolo and wongpat
* support custom root types, 628 by koxudaxi
* support `self` as a field name in `parse_obj`, 632 by samuelcolvin

0.29

* support dataclasses.InitVar, 592 by pfrederiks
* Updated documentation to elucidate the usage of `Union` when defining multiple types under an attribute's
annotation and showcase how the type-order can affect marshalling of provided values, 594 by somada141
* add `conlist` type, 583 by hmvp
* add support for generics, 595 by dmontagu
Links

Update trafaret from 1.2.0 to 2.0.2.

Changelog

2.0.2

=====
- construct for `int` and `float` will use `ToInt` and `ToFloat`

2.0.1

------

* Package metadata update only

2.0.0

-----

- ``WithRepr`` – use it to return custom representation, like ``<Email>``
- Strip a lot from dict, like ``keys()``
- Trafarets are not mutable
- DataError has new ``code`` attribute, self.failure has ``code`` argument
- OnError has ``code`` argument too
- New ``DataError.to_struct`` method that returns errors in more consistent way
- ``String``, ``AnyString``, ``Bytes``, ``FromBytes(encoding=utf-8)``
- ``Int``, ``ToInt``, ``Float``, ``ToFloat``
- ``ToDecimal``
- ``Iterable`` that acts like a ``List``, but works with any iterable
- New ``Date``, ``ToDate`` and ``DateTime``, ``ToDateTime`` trafarets
- ``StrBool`` trafaret renamed to ``ToBool``
- ``Visitor`` trafaret was deleted
- Test coverage
Links

Update black from 19.3b0 to 19.10b0.

The bot wasn't able to find a changelog for this release. Got an idea?

Links

Update flake8 from 3.7.7 to 3.7.9.

Changelog

3.7.8

-------------------

You can view the `3.7.8 milestone`_ on GitLab for more details.

Bugs Fixed
~~~~~~~~~~

- Fix handling of ``Application.parse_preliminary_options_and_args`` when
argv is an empty list (See also `GitLab!310`_, `GitLab518`_)

- Fix crash when a file parses but fails to tokenize (See also `GitLab!314`_,
`GitLab532`_)

- Log the full traceback on plugin exceptions (See also `GitLab!317`_)

- Fix `` noqa: ...`` comments with multi-letter codes (See also `GitLab!326`_,
`GitLab549`_)


.. all links
.. _3.7.8 milestone:
 https://gitlab.com/pycqa/flake8/milestones/31

.. issue links
.. _GitLab518:
 https://gitlab.com/pycqa/flake8/issues/518
.. _GitLab532:
 https://gitlab.com/pycqa/flake8/issues/532
.. _GitLab549:
 https://gitlab.com/pycqa/flake8/issues/549

.. merge request links
.. _GitLab!310:
 https://gitlab.com/pycqa/flake8/merge_requests/310
.. _GitLab!314:
 https://gitlab.com/pycqa/flake8/merge_requests/314
.. _GitLab!317:
 https://gitlab.com/pycqa/flake8/merge_requests/317
.. _GitLab!326:
 https://gitlab.com/pycqa/flake8/merge_requests/326
Links

Update isort from 4.3.20 to 4.3.21.

Changelog

4.3.21

- Fixed issue 957 - Long aliases and use_parentheses generates invalid syntax
Links

Update mypy from 0.701 to 0.761.

The bot wasn't able to find a changelog for this release. Got an idea?

Links

Update pytest from 4.6.3 to 5.3.5.

The bot wasn't able to find a changelog for this release. Got an idea?

Links

Update pytest-cov from 2.7.1 to 2.8.1.

Changelog

2.8.1

------------------

* Fixed `348 <https://github.com/pytest-dev/pytest-cov/issues/348>`_ -
regression when only certain reports (html or xml) are used then ``--cov-fail-under`` always fails.

2.8.0

------------------

* Fixed ``RecursionError`` that can occur when using
`cleanup_on_signal <https://pytest-cov.readthedocs.io/en/latest/subprocess-support.htmlif-you-got-custom-signal-handling>`__ or
`cleanup_on_sigterm <https://pytest-cov.readthedocs.io/en/latest/subprocess-support.htmlif-you-got-custom-signal-handling>`__.
See: `294 <https://github.com/pytest-dev/pytest-cov/issues/294>`_.
The 2.7.x releases of pytest-cov should be considered broken regarding aforementioned cleanup API.
* Added compatibility with future xdist release that deprecates some internals
(match pytest-xdist master/worker terminology).
Contributed by Thomas Grainger in `321 <https://github.com/pytest-dev/pytest-cov/pull/321>`_
* Fixed breakage that occurs when multiple reporting options are used.
Contributed by Thomas Grainger in `338 <https://github.com/pytest-dev/pytest-cov/pull/338>`_.
* Changed internals to use a stub instead of ``os.devnull``.
Contributed by Thomas Grainger in `332 <https://github.com/pytest-dev/pytest-cov/pull/332>`_.
* Added support for Coverage 5.0.
Contributed by Ned Batchelder in `319 <https://github.com/pytest-dev/pytest-cov/pull/319>`_.
* Added support for float values in ``--cov-fail-under``.
Contributed by Martín Gaitán in `311 <https://github.com/pytest-dev/pytest-cov/pull/311>`_.
* Various documentation fixes. Contributed by
Juanjo Bazán,
Andrew Murray and
Albert Tugushev in
`298 <https://github.com/pytest-dev/pytest-cov/pull/298>`_,
`299 <https://github.com/pytest-dev/pytest-cov/pull/299>`_ and
`307 <https://github.com/pytest-dev/pytest-cov/pull/307>`_.
* Various testing improvements. Contributed by
Ned Batchelder,
Daniel Hahler,
Ionel Cristian Mărieș and
Hugo van Kemenade in
`313 <https://github.com/pytest-dev/pytest-cov/pull/313>`_,
`314 <https://github.com/pytest-dev/pytest-cov/pull/314>`_,
`315 <https://github.com/pytest-dev/pytest-cov/pull/315>`_,
`316 <https://github.com/pytest-dev/pytest-cov/pull/316>`_,
`325 <https://github.com/pytest-dev/pytest-cov/pull/325>`_,
`326 <https://github.com/pytest-dev/pytest-cov/pull/326>`_,
`334 <https://github.com/pytest-dev/pytest-cov/pull/334>`_ and
`335 <https://github.com/pytest-dev/pytest-cov/pull/335>`_.
* Added the ``--cov-context`` CLI options that enables coverage contexts. Only works with coverage 5.0+.
Contributed by Ned Batchelder in `345 <https://github.com/pytest-dev/pytest-cov/pull/345>`_.
Links

Update ipython from 7.5.0 to 7.13.0.

Changelog

7.9.0

None

7.8.0

None

7.7.0

None

7.6.1

None

7.6.0

None
Links

Update ipdb from 0.12 to 0.13.1.

Changelog

0.13.1

-------------------

- Fix when no configuration file
[gotcha]

0.13.0

-------------------

- Add option to set context via environment variable or configuration file.
[alexandrebarbaruiva]

0.12.3

-------------------

- Fix version in usage
[gotcha]

0.12.2

-------------------

- Avoid emitting term-title bytes
[steinnes]

0.12.1

-------------------

- Fix --help 
[native-api]
Links

Update Sphinx from 2.1.1 to 2.4.3.

Changelog

2.4.3

=====================================

Bugs fixed
----------

* 7184: autodoc: ``*args`` and ``**kwarg`` in type comments are not handled
properly
* 7189: autodoc: classmethod coroutines are not detected
* 7183: intersphinx: ``:attr:`` reference to property is broken
* 6244, 6387: html search: Search breaks/hangs when built with dirhtml builder
* 7195: todo: emit doctree-resolved event with non-document node incorrectly

2.4.2

=====================================

Bugs fixed
----------

* 7138: autodoc: ``autodoc.typehints`` crashed when variable has unbound object
as a value
* 7156: autodoc: separator for keyword only arguments is not shown
* 7146: autodoc: IndexError is raised on suppressed type_comment found
* 7161: autodoc: typehints extension does not support parallel build
* 7178: autodoc: TypeError is raised on fetching type annotations
* 7151: crashed when extension assigns a value to ``env.indexentries``
* 7170: text: Remove debug print
* 7137: viewcode: Avoid to crash when non-python code given

2.4.1

=====================================

Bugs fixed
----------

* 7120: html: crashed when on scaling SVG images which have float dimentions
* 7126: autodoc: TypeError: 'getset_descriptor' object is not iterable

2.4.0

=====================================

Deprecated
----------

* The ``decode`` argument of ``sphinx.pycode.ModuleAnalyzer()``
* ``sphinx.directives.other.Index``
* ``sphinx.environment.temp_data['gloss_entries']``
* ``sphinx.environment.BuildEnvironment.indexentries``
* ``sphinx.environment.collectors.indexentries.IndexEntriesCollector``
* ``sphinx.ext.apidoc.INITPY``
* ``sphinx.ext.apidoc.shall_skip()``
* ``sphinx.io.FiletypeNotFoundError``
* ``sphinx.io.get_filetype()``
* ``sphinx.pycode.ModuleAnalyzer.encoding``
* ``sphinx.roles.Index``
* ``sphinx.util.detect_encoding()``
* ``sphinx.util.get_module_source()``
* ``sphinx.util.inspect.Signature``
* ``sphinx.util.inspect.safe_getmembers()``
* ``sphinx.writers.latex.LaTeXTranslator.settings.author``
* ``sphinx.writers.latex.LaTeXTranslator.settings.contentsname``
* ``sphinx.writers.latex.LaTeXTranslator.settings.docclass``
* ``sphinx.writers.latex.LaTeXTranslator.settings.docname``
* ``sphinx.writers.latex.LaTeXTranslator.settings.title``
* ``sphinx.writers.latex.ADDITIONAL_SETTINGS``
* ``sphinx.writers.latex.DEFAULT_SETTINGS``
* ``sphinx.writers.latex.LUALATEX_DEFAULT_FONTPKG``
* ``sphinx.writers.latex.PDFLATEX_DEFAULT_FONTPKG``
* ``sphinx.writers.latex.XELATEX_DEFAULT_FONTPKG``
* ``sphinx.writers.latex.XELATEX_GREEK_DEFAULT_FONTPKG``

Features added
--------------

* 6910: inheritance_diagram: Make the background of diagrams transparent
* 6446: duration: Add ``sphinx.ext.durations`` to inspect which documents slow
down the build
* 6837: LaTeX: Support a nested table
* 7115: LaTeX: Allow to override LATEXOPTS and LATEXMKOPTS via environment
variable
* 6966: graphviz: Support ``:class:`` option
* 6696: html: ``:scale:`` option of image/figure directive not working for SVG
images (imagesize-1.2.0 or above is required)
* 7025: html search: full text search can be disabled for individual document
using ``:nosearch:`` file-wide metadata
* 6994: imgconverter: Support illustrator file (.ai) to .png conversion
* autodoc: Support Positional-Only Argument separator (PEP-570 compliant)
* autodoc: Support type annotations for variables
* 2755: autodoc: Add new event: :event:`autodoc-before-process-signature`
* 2755: autodoc: Support type_comment style (ex. `` type: (str) -> str``)
annotation (python3.8+ or `typed_ast <https://github.com/python/typed_ast>`_
is required)
* 7051: autodoc: Support instance variables without defaults (PEP-526)
* 6418: autodoc: Add a new extension ``sphinx.ext.autodoc.typehints``. It shows
typehints as object description if ``autodoc_typehints = "description"`` set.
This is an experimental extension and it will be integrated into autodoc core
in Sphinx-3.0
* SphinxTranslator now calls visitor/departure method for super node class if
visitor/departure method for original node class not found
* 6418: Add new event: :event:`object-description-transform`
* py domain: :rst:dir:`py:data` and :rst:dir:`py:attribute` take new options
named ``:type:`` and ``:value:`` to describe its type and initial value
* 6785: py domain: ``:py:attr:`` is able to refer properties again
* 6772: apidoc: Add ``-q`` option for quiet mode

Bugs fixed
----------

* 6925: html: Remove redundant type="text/javascript" from <script> elements
* 7112: html: SVG image is not layouted as float even if aligned
* 6906, 6907: autodoc: failed to read the source codes encoeded in cp1251
* 6961: latex: warning for babel shown twice
* 7059: latex: LaTeX compilation falls into infinite loop (wrapfig issue)
* 6581: latex: ``:reversed:`` option for toctree does not effect to LaTeX build
* 6559: Wrong node-ids are generated in glossary directive
* 6986: apidoc: misdetects module name for .so file inside module
* 6899: apidoc: private members are not shown even if ``--private`` given
* 6327: apidoc: Support a python package consisted of __init__.so file
* 6999: napoleon: fails to parse tilde in :exc: role
* 7019: gettext: Absolute path used in message catalogs
* 7023: autodoc: nested partial functions are not listed
* 7023: autodoc: partial functions imported from other modules are listed as
module members without :impoprted-members: option
* 6889: autodoc: Trailing comma in ``:members::`` option causes cryptic warning
* 6568: autosummary: ``autosummary_imported_members`` is ignored on generating
a stub file for submodule
* 7055: linkcheck: redirect is treated as an error
* 7088: HTML template: If ``navigation_with_keys`` option is activated,
modifier keys are ignored, which means the feature can interfere with browser
features
* 7090: std domain: Can't assign numfig-numbers for custom container nodes
* 7106: std domain: enumerated nodes are marked as duplicated when extensions
call ``note_explicit_target()``
* 7095: dirhtml: Cross references are broken via intersphinx and ``:doc:`` role
* C++:

- Don't crash when using the ``struct`` role in some cases.
- Don't warn when using the ``var``/``member`` role for function
 parameters.
- Render call and braced-init expressions correctly.
* 7097: Filenames of images generated by
``sphinx.transforms.post_transforms.images.ImageConverter``
or its subclasses (used for latex build) are now sanitized,
to prevent broken paths

2.3.1

=====================================

Bugs fixed
----------

* 6936: sphinx-autogen: raises AttributeError

2.3.0

=====================================

Incompatible changes
--------------------

* 6742: ``end-before`` option of :rst:dir:`literalinclude` directive does not
match the first line of the code block.
* 1331: Change default User-Agent header to ``"Sphinx/X.Y.Z requests/X.Y.Z
python/X.Y.Z"``.  It can be changed via :confval:`user_agent`.
* 6867: text: content of admonitions starts after a blank line

Deprecated
----------

* ``sphinx.builders.gettext.POHEADER``
* ``sphinx.io.SphinxStandaloneReader.app``
* ``sphinx.io.SphinxStandaloneReader.env``
* ``sphinx.util.texescape.tex_escape_map``
* ``sphinx.util.texescape.tex_hl_escape_map_new``
* ``sphinx.writers.latex.LaTeXTranslator.no_contractions``

Features added
--------------

* 6707: C++, support bit-fields.
* 267: html: Eliminate prompt characters of doctest block from copyable text
* 6548: html: Use favicon for OpenSearch if available
* 6729: html theme: agogo theme now supports ``rightsidebar`` option
* 6780: Add PEP-561 Support
* 6762: latex: Allow to load additonal LaTeX packages via ``extrapackages`` key
of :confval:`latex_elements`
* 1331: Add new config variable: :confval:`user_agent`
* 6000: LaTeX: have backslash also be an inline literal word wrap break
character
* 4186: LaTeX: Support upLaTeX as a new :confval:`latex_engine` (experimental)
* 6812: Improve a warning message when extensions are not parallel safe
* 6818: Improve Intersphinx performance for multiple remote inventories.
* 2546: apidoc: .so file support
* 6798: autosummary: emit ``autodoc-skip-member`` event on generating stub file
* 6483: i18n: make explicit titles in toctree translatable
* 6816: linkcheck: Add :confval:`linkcheck_auth` option to provide
authentication information when doing ``linkcheck`` builds
* 6872: linkcheck: Handles HTTP 308 Permanent Redirect
* 6613: html: Wrap section number in span tag
* 6781: gettext: Add :confval:`gettext_last_translator' and
:confval:`gettext_language_team` to customize headers of POT file

Bugs fixed
----------

* 6668: LaTeX: Longtable before header has incorrect distance
(refs: `latex3/latex2e173`_)

.. _latex3/latex2e173: https://github.com/latex3/latex2e/issues/173
* 6618: LaTeX: Avoid section names at the end of a page
* 6738: LaTeX: Do not replace unicode characters by LaTeX macros on unicode
supported LaTeX engines: ¶, §, €, ∞, ±, →, ‣, –, superscript and subscript
digits go through "as is" (as default OpenType font supports them)
* 6704: linkcheck: Be defensive and handle newly defined HTTP error code
* 6806: linkcheck: Failure on parsing content
* 6655: image URLs containing ``data:`` causes gettext builder crashed
* 6584: i18n: Error when compiling message catalogs on Hindi
* 6718: i18n: KeyError is raised if section title and table title are same
* 6743: i18n: :confval:`rst_prolog` breaks the translation
* 6708: mathbase: Some deprecated functions have removed
* 6709: autodoc: mock object does not work as a class decorator
* 5070: epub: Wrong internal href fragment links
* 6712: Allow not to install sphinx.testing as runtime (mainly for ALT Linux)
* 6741: html: search result was broken with empty :confval:`html_file_suffix`
* 6001: LaTeX does not wrap long code lines at backslash character
* 6804: LaTeX: PDF build breaks if admonition of danger type contains
code-block long enough not to fit on one page
* 6809: LaTeX: code-block in a danger type admonition can easily spill over
bottom of page
* 6793: texinfo: Code examples broken following "sidebar"
* 6813: An orphan warning is emitted for included document on Windows.  Thanks
to drillan
* 6850: Fix smartypants module calls re.sub() with wrong options
* 6824: HTML search: If a search term is partially matched in the title and
fully matched in a text paragraph on the same page, the search does not
inc

@pyup-bot
Copy link
Collaborator Author

pyup-bot commented Mar 9, 2020

Closing this in favor of #61

@pyup-bot pyup-bot closed this Mar 9, 2020
@pilosus pilosus deleted the pyup-scheduled-update-2020-03-02 branch March 9, 2020 18:39
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant