Skip to content
This repository was archived by the owner on Jan 29, 2025. It is now read-only.

Commit ba07d38

Browse files
bors[bot]pyup-botmythmon
committed
Merge #1832
1832: Scheduled weekly dependency update for week 13 r=rehandalal a=pyup-bot ### Update [botocore](https://pypi.org/project/botocore) from **1.12.120** to **1.12.125**. <details> <summary>Changelog</summary> ### 1.12.125 ``` ======== * api-change:``comprehend``: Update comprehend client to latest version * api-change:``cloudwatch``: Update cloudwatch client to latest version * api-change:``greengrass``: Update greengrass client to latest version ``` ### 1.12.124 ``` ======== * api-change:``servicecatalog``: Update servicecatalog client to latest version * api-change:``medialive``: Update medialive client to latest version * api-change:``pinpoint-email``: Update pinpoint-email client to latest version * api-change:``workspaces``: Update workspaces client to latest version ``` ### 1.12.123 ``` ======== * api-change:``ec2``: Update ec2 client to latest version * api-change:``appmesh``: Update appmesh client to latest version * api-change:``ecs``: Update ecs client to latest version * api-change:``elbv2``: Update elbv2 client to latest version * api-change:``transfer``: Update transfer client to latest version * api-change:``storagegateway``: Update storagegateway client to latest version * api-change:``s3``: Update s3 client to latest version ``` ### 1.12.122 ``` ======== * api-change:``workmail``: Update workmail client to latest version * api-change:``glue``: Update glue client to latest version ``` ### 1.12.121 ``` ======== * api-change:``iotanalytics``: Update iotanalytics client to latest version * api-change:``robomaker``: Update robomaker client to latest version * api-change:``directconnect``: Update directconnect client to latest version * api-change:``mediaconvert``: Update mediaconvert client to latest version * api-change:``transcribe``: Update transcribe client to latest version * api-change:``fms``: Update fms client to latest version * api-change:``iot1click-devices``: Update iot1click-devices client to latest version ``` </details> <details> <summary>Links</summary> - PyPI: https://pypi.org/project/botocore - Changelog: https://pyup.io/changelogs/botocore/ - Repo: https://github.com/boto/botocore </details> ### Update [more-itertools](https://pypi.org/project/more-itertools) from **6.0.0** to **7.0.0**. <details> <summary>Changelog</summary> ### 7.0.0 ``` See [the release notes](https://github.com/erikrose/more-itertools/blob/7fcf148de6482484298796553fccbf9ccfd31516/docs/versions.rst) for the full list of changes. ``` </details> <details> <summary>Links</summary> - PyPI: https://pypi.org/project/more-itertools - Changelog: https://pyup.io/changelogs/more-itertools/ - Repo: https://github.com/erikrose/more-itertools - Docs: https://pythonhosted.org/more-itertools/ </details> ### Update [protobuf](https://pypi.org/project/protobuf) from **3.7.0** to **3.7.1**. *The bot wasn't able to find a changelog for this release. [Got an idea?](https://github.com/pyupio/changelogs/issues/new)* <details> <summary>Links</summary> - PyPI: https://pypi.org/project/protobuf - Changelog: https://pyup.io/changelogs/protobuf/ - Repo: https://github.com/protocolbuffers/protobuf/releases - Homepage: https://developers.google.com/protocol-buffers/ </details> ### Update [boto3](https://pypi.org/project/boto3) from **1.9.120** to **1.9.125**. <details> <summary>Changelog</summary> ### 1.9.125 ``` ======= * api-change:``comprehend``: [``botocore``] Update comprehend client to latest version * api-change:``cloudwatch``: [``botocore``] Update cloudwatch client to latest version * api-change:``greengrass``: [``botocore``] Update greengrass client to latest version ``` ### 1.9.124 ``` ======= * api-change:``servicecatalog``: [``botocore``] Update servicecatalog client to latest version * api-change:``medialive``: [``botocore``] Update medialive client to latest version * api-change:``pinpoint-email``: [``botocore``] Update pinpoint-email client to latest version * api-change:``workspaces``: [``botocore``] Update workspaces client to latest version ``` ### 1.9.123 ``` ======= * api-change:``ec2``: [``botocore``] Update ec2 client to latest version * api-change:``appmesh``: [``botocore``] Update appmesh client to latest version * api-change:``ecs``: [``botocore``] Update ecs client to latest version * api-change:``elbv2``: [``botocore``] Update elbv2 client to latest version * api-change:``transfer``: [``botocore``] Update transfer client to latest version * api-change:``storagegateway``: [``botocore``] Update storagegateway client to latest version * api-change:``s3``: [``botocore``] Update s3 client to latest version ``` ### 1.9.122 ``` ======= * api-change:``workmail``: [``botocore``] Update workmail client to latest version * api-change:``glue``: [``botocore``] Update glue client to latest version ``` ### 1.9.121 ``` ======= * api-change:``iotanalytics``: [``botocore``] Update iotanalytics client to latest version * api-change:``robomaker``: [``botocore``] Update robomaker client to latest version * api-change:``directconnect``: [``botocore``] Update directconnect client to latest version * api-change:``mediaconvert``: [``botocore``] Update mediaconvert client to latest version * api-change:``transcribe``: [``botocore``] Update transcribe client to latest version * api-change:``fms``: [``botocore``] Update fms client to latest version * api-change:``iot1click-devices``: [``botocore``] Update iot1click-devices client to latest version ``` </details> <details> <summary>Links</summary> - PyPI: https://pypi.org/project/boto3 - Changelog: https://pyup.io/changelogs/boto3/ - Repo: https://github.com/boto/boto3 </details> ### Update [Django](https://pypi.org/project/Django) from **2.1.7** to **2.2**. <details> <summary>Changelog</summary> ### 2.2 ``` ======================== *1 April 2019* Welcome to Django 2.2! These release notes cover the :ref:`new features &lt;whats-new-2.2&gt;`, as well as some :ref:`backwards incompatible changes &lt;backwards-incompatible-2.2&gt;` you&#39;ll want to be aware of when upgrading from Django 2.1 or earlier. We&#39;ve :ref:`begun the deprecation process for some features &lt;deprecated-features-2.2&gt;`. See the :doc:`/howto/upgrade-version` guide if you&#39;re updating an existing project. Django 2.2 is designated as a :term:`long-term support release`. It will receive security updates for at least three years after its release. Support for the previous LTS, Django 1.11, will end in April 2020. Python compatibility ==================== Django 2.2 supports Python 3.5, 3.6, and 3.7. We **highly recommend** and only officially support the latest release of each series. .. _whats-new-2.2: What&#39;s new in Django 2.2 ======================== Constraints ----------- The new :class:`~django.db.models.CheckConstraint` and :class:`~django.db.models.UniqueConstraint` classes enable adding custom database constraints. Constraints are added to models using the :attr:`Meta.constraints &lt;django.db.models.Options.constraints&gt;` option. Minor features -------------- :mod:`django.contrib.admin` ~~~~~~~~~~~~~~~~~~~~~~~~~~~ * Added a CSS class to the column headers of :class:`~django.contrib.admin.TabularInline`. :mod:`django.contrib.auth` ~~~~~~~~~~~~~~~~~~~~~~~~~~ * The ``HttpRequest`` is now passed as the first positional argument to :meth:`.RemoteUserBackend.configure_user`, if it accepts it. :mod:`django.contrib.gis` ~~~~~~~~~~~~~~~~~~~~~~~~~ * Added Oracle support for the :class:`~django.contrib.gis.db.models.functions.Envelope` function. * Added SpatiaLite support for the :lookup:`coveredby` and :lookup:`covers` lookups. :mod:`django.contrib.postgres` ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ * The new ``ordering`` argument for :class:`~django.contrib.postgres.aggregates.ArrayAgg` and :class:`~django.contrib.postgres.aggregates.StringAgg` determines the ordering of the aggregated elements. * The new :class:`~django.contrib.postgres.indexes.BTreeIndex`, :class:`~django.contrib.postgres.indexes.HashIndex` and :class:`~django.contrib.postgres.indexes.SpGistIndex` classes allow creating ``B-Tree``, ``hash``, and ``SP-GiST`` indexes in the database. * :class:`~django.contrib.postgres.indexes.BrinIndex` now has the ``autosummarize`` parameter. * The new ``search_type`` parameter of :class:`~django.contrib.postgres.search.SearchQuery` allows searching for a phrase or raw expression. :mod:`django.contrib.staticfiles` ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ * Added path matching to the :option:`collectstatic --ignore` option so that patterns like ``/vendor/*.js`` can be used. Database backends ~~~~~~~~~~~~~~~~~ * Added result streaming for :meth:`.QuerySet.iterator` on SQLite. Generic Views ~~~~~~~~~~~~~ * The new :meth:`View.setup &lt;django.views.generic.base.View.setup&gt;` hook initializes view attributes before calling :meth:`~django.views.generic.base.View.dispatch`. It allows mixins to setup instance attributes for reuse in child classes. Internationalization ~~~~~~~~~~~~~~~~~~~~ * Added support and translations for the Armenian language. Management Commands ~~~~~~~~~~~~~~~~~~~ * The new :option:`--force-color` option forces colorization of the command output. * :djadmin:`inspectdb` now creates models for foreign tables on PostgreSQL. * :option:`inspectdb --include-views` now creates models for materialized views on Oracle and PostgreSQL. * The new :option:`inspectdb --include-partitions` option allows creating models for partition tables on PostgreSQL. In older versions, models are created child tables instead the parent. * :djadmin:`inspectdb` now introspects :class:`~django.db.models.DurationField` for Oracle and PostgreSQL, and :class:`~django.db.models.AutoField` for SQLite. * On Oracle, :djadmin:`dbshell` is wrapped with ``rlwrap``, if available. ``rlwrap`` provides a command history and editing of keyboard input. * The new :option:`makemigrations --no-header` option avoids writing header comments in generated migration file(s). This option is also available for :djadmin:`squashmigrations`. * :djadmin:`runserver` can now use `Watchman &lt;https://facebook.github.io/watchman/&gt;`_ to improve the performance of watching a large number of files for changes. Migrations ~~~~~~~~~~ * The new :option:`migrate --plan` option prints the list of migration operations that will be performed. * ``NoneType`` can now be serialized in migrations. * You can now :ref:`register custom serializers &lt;custom-migration-serializers&gt;` for migrations. Models ~~~~~~ * Added support for PostgreSQL operator classes (:attr:`.Index.opclasses`). * Added support for partial indexes (:attr:`.Index.condition`). * Added the :class:`~django.db.models.functions.NullIf` and :class:`~django.db.models.functions.Reverse` database functions, as well as many :ref:`math database functions &lt;math-functions&gt;`. * Setting the new ``ignore_conflicts`` parameter of :meth:`.QuerySet.bulk_create` to ``True`` tells the database to ignore failure to insert rows that fail uniqueness constraints or other checks. * The new :class:`~django.db.models.functions.ExtractIsoYear` function extracts ISO-8601 week-numbering years from :class:`~django.db.models.DateField` and :class:`~django.db.models.DateTimeField`, and the new :lookup:`iso_year` lookup allows querying by an ISO-8601 week-numbering year. * The new :meth:`.QuerySet.bulk_update` method allows efficiently updating specific fields on multiple model instances. * Django no longer always starts a transaction when a single query is being performed, such as ``Model.save()``, ``QuerySet.update()``, and ``Model.delete()``. This improves the performance of autocommit by reducing the number of database round trips. * Added SQLite support for the :class:`~django.db.models.StdDev` and :class:`~django.db.models.Variance` functions. * The handling of ``DISTINCT`` aggregation is added to the :class:`~django.db.models.Aggregate` class. Adding :attr:`allow_distinct = True &lt;django.db.models.Aggregate.allow_distinct&gt;` as a class attribute on ``Aggregate`` subclasses allows a ``distinct`` keyword argument to be specified on initialization to ensure that the aggregate function is only called for each distinct value of ``expressions``. * The :meth:`.RelatedManager.add`, :meth:`~.RelatedManager.create`, :meth:`~.RelatedManager.remove`, :meth:`~.RelatedManager.set`, ``get_or_create()``, and ``update_or_create()`` methods are now allowed on many-to-many relationships with intermediate models. The new ``through_defaults`` argument is used to specify values for new intermediate model instance(s). Requests and Responses ~~~~~~~~~~~~~~~~~~~~~~ * Added :attr:`.HttpRequest.headers` to allow simple access to a request&#39;s headers. Serialization ~~~~~~~~~~~~~ * You can now deserialize data using natural keys containing :ref:`forward references &lt;natural-keys-and-forward-references&gt;` by passing ``handle_forward_references=True`` to ``serializers.deserialize()``. Additionally, :djadmin:`loaddata` handles forward references automatically. Tests ~~~~~ * The new :meth:`.SimpleTestCase.assertURLEqual` assertion checks for a given URL, ignoring the ordering of the query string. :meth:`~.SimpleTestCase.assertRedirects` uses the new assertion. * The test :class:`~.django.test.Client` now supports automatic JSON serialization of list and tuple ``data`` when ``content_type=&#39;application/json&#39;``. * The new :setting:`ORACLE_MANAGED_FILES &lt;TEST_ORACLE_MANAGED_FILES&gt;` test database setting allows using Oracle Managed Files (OMF) tablespaces. * Deferrable database constraints are now checked at the end of each :class:`~django.test.TestCase` test on SQLite 3.20+, just like on other backends that support deferrable constraints. These checks aren&#39;t implemented for older versions of SQLite because they would require expensive table introspection there. * :class:`~django.test.runner.DiscoverRunner` now skips the setup of databases not :ref:`referenced by tests&lt;testing-multi-db&gt;`. URLs ~~~~ * The new :attr:`.ResolverMatch.route` attribute stores the route of the matching URL pattern. Validators ~~~~~~~~~~ * :class:`.MaxValueValidator`, :class:`.MinValueValidator`, :class:`.MinLengthValidator`, and :class:`.MaxLengthValidator` now accept a callable ``limit_value``. .. _backwards-incompatible-2.2: Backwards incompatible changes in 2.2 ===================================== Database backend API -------------------- This section describes changes that may be needed in third-party database backends. * Third-party database backends must implement support for table check constraints or set ``DatabaseFeatures.supports_table_check_constraints`` to ``False``. * Third party database backends must implement support for ignoring constraints or uniqueness errors while inserting or set ``DatabaseFeatures.supports_ignore_conflicts`` to ``False``. * Third party database backends must implement introspection for ``DurationField`` or set ``DatabaseFeatures.can_introspect_duration_field`` to ``False``. * ``DatabaseFeatures.uses_savepoints`` now defaults to ``True``. * Third party database backends must implement support for partial indexes or set ``DatabaseFeatures.supports_partial_indexes`` to ``False``. * ``DatabaseIntrospection.table_name_converter()`` and ``column_name_converter()`` are removed. Third party database backends may need to instead implement ``DatabaseIntrospection.identifier_converter()``. In that case, the constraint names that ``DatabaseIntrospection.get_constraints()`` returns must be normalized by ``identifier_converter()``. * SQL generation for indexes is moved from :class:`~django.db.models.Index` to ``SchemaEditor`` and these ``SchemaEditor`` methods are added: * ``_create_primary_key_sql()`` and ``_delete_primary_key_sql()`` * ``_delete_index_sql()`` (to pair with ``_create_index_sql()``) * ``_delete_unique_sql`` (to pair with ``_create_unique_sql()``) * ``_delete_fk_sql()`` (to pair with ``_create_fk_sql()``) * ``_create_check_sql()`` and ``_delete_check_sql()`` * The third argument of ``DatabaseWrapper.__init__()``, ``allow_thread_sharing``, is removed. Admin actions are no longer collected from base ``ModelAdmin`` classes ---------------------------------------------------------------------- For example, in older versions of Django:: from django.contrib import admin class BaseAdmin(admin.ModelAdmin): actions = [&#39;a&#39;] class SubAdmin(BaseAdmin): actions = [&#39;b&#39;] ``SubAdmin`` will have actions ``&#39;a&#39;`` and ``&#39;b&#39;``. Now ``actions`` follows standard Python inheritance. To get the same result as before:: class SubAdmin(BaseAdmin): actions = BaseAdmin.actions + [&#39;b&#39;] :mod:`django.contrib.gis` ------------------------- * Support for GDAL 1.9 and 1.10 is dropped. ``TransactionTestCase`` serialized data loading ----------------------------------------------- Initial data migrations are now loaded in :class:`~django.test.TransactionTestCase` at the end of the test, after the database flush. In older versions, this data was loaded at the beginning of the test, but this prevents the :option:`test --keepdb` option from working properly (the database was empty at the end of the whole test suite). This change shouldn&#39;t have an impact on your tests unless you&#39;ve customized :class:`~django.test.TransactionTestCase`&#39;s internals. ``sqlparse`` is required dependency ----------------------------------- To simplify a few parts of Django&#39;s database handling, `sqlparse &lt;https://pypi.org/project/sqlparse/&gt;`_ is now a required dependency. It&#39;s automatically installed along with Django. ``cached_property`` aliases --------------------------- In usage like:: from django.utils.functional import cached_property class A: cached_property def base(self): return ... alias = base ``alias`` is not cached. Where the problem can be detected (Python 3.6 and later), such usage now raises ``TypeError: Cannot assign the same cached_property to two different names (&#39;base&#39; and &#39;alias&#39;).`` Use this instead:: import operator class A: ... alias = property(operator.attrgetter(&#39;base&#39;)) Permissions for proxy models ---------------------------- :ref:`Permissions for proxy models &lt;proxy-models-permissions-topic&gt;` are now created using the content type of the proxy model rather than the content type of the concrete model. A migration will update existing permissions when you run :djadmin:`migrate`. In the admin, the change is transparent for proxy models having the same ``app_label`` as their concrete model. However, in older versions, users with permissions for a proxy model with a *different* ``app_label`` than its concrete model couldn&#39;t access the model in the admin. That&#39;s now fixed, but you might want to audit the permissions assignments for such proxy models (``[add|view|change|delete]_myproxy``) prior to upgrading to ensure the new access is appropriate. Finally, proxy model permission strings must be updated to use their own ``app_label``. For example, for ``app.MyProxyModel`` inheriting from ``other_app.ConcreteModel``, update ``user.has_perm(&#39;other_app.add_myproxymodel&#39;)`` to ``user.has_perm(&#39;app.add_myproxymodel&#39;)``. Merging of form ``Media`` assets -------------------------------- Form ``Media`` assets are now merged using a topological sort algorithm, as the old pairwise merging algorithm is insufficient for some cases. CSS and JavaScript files which don&#39;t include their dependencies may now be sorted incorrectly (where the old algorithm produced results correctly by coincidence). Audit all ``Media`` classes for any missing dependencies. For example, widgets depending on ``django.jQuery`` must specify ``js=[&#39;admin/js/jquery.init.js&#39;, ...]`` when :ref:`declaring form media assets &lt;assets-as-a-static-definition&gt;`. Miscellaneous ------------- * To improve readability, the ``UUIDField`` form field now displays values with dashes, e.g. ``550e8400-e29b-41d4-a716-446655440000`` instead of ``550e8400e29b41d4a716446655440000``. * On SQLite, ``PositiveIntegerField`` and ``PositiveSmallIntegerField`` now include a check constraint to prevent negative values in the database. If you have existing invalid data and run a migration that recreates a table, you&#39;ll see ``CHECK constraint failed``. * For consistency with WSGI servers, the test client now sets the ``Content-Length`` header to a string rather than an integer. * The return value of :func:`django.utils.text.slugify` is no longer marked as HTML safe. * The default truncation character used by the :tfilter:`urlizetrunc`, :tfilter:`truncatechars`, :tfilter:`truncatechars_html`, :tfilter:`truncatewords`, and :tfilter:`truncatewords_html` template filters is now the real ellipsis character (``…``) instead of 3 dots. You may have to adapt some test output comparisons. * Support for bytestring paths in the template filesystem loader is removed. * :func:`django.utils.http.urlsafe_base64_encode` now returns a string instead of a bytestring, and :func:`django.utils.http.urlsafe_base64_decode` may no longer be passed a bytestring. * Support for ``cx_Oracle`` &lt; 6.0 is removed. * The minimum supported version of ``mysqlclient`` is increased from 1.3.7 to 1.3.13. * The minimum supported version of SQLite is increased from 3.7.15 to 3.8.3. * In an attempt to provide more semantic query data, ``NullBooleanSelect`` now renders ``&lt;option&gt;`` values of ``unknown``, ``true``, and ``false`` instead of ``1``, ``2``, and ``3``. For backwards compatibility, the old values are still accepted as data. * :attr:`Group.name &lt;django.contrib.auth.models.Group.name&gt;` ``max_length`` is increased from 80 to 150 characters. * Tests that violate deferrable database constraints now error when run on SQLite 3.20+, just like on other backends that support such constraints. * To catch usage mistakes, the test :class:`~django.test.Client` and :func:`django.utils.http.urlencode` now raise ``TypeError`` if ``None`` is passed as a value to encode because ``None`` can&#39;t be encoded in GET and POST data. Either pass an empty string or omit the value. * The :djadmin:`ping_google` management command now defaults to ``https`` instead of ``http`` for the sitemap&#39;s URL. If your site uses http, use the new :option:`ping_google --sitemap-uses-http` option. If you use the :func:`~django.contrib.sitemaps.ping_google` function, set the new ``sitemap_uses_https`` argument to ``False``. * :djadmin:`runserver` no longer supports `pyinotify` (replaced by Watchman). * The :class:`~django.db.models.Avg`, :class:`~django.db.models.StdDev`, and :class:`~django.db.models.Variance` aggregate functions now return a ``Decimal`` instead of a ``float`` when the input is ``Decimal``. * Tests will fail on SQLite if apps without migrations have relations to apps with migrations. This has been a documented restriction since migrations were added in Django 1.7, but it fails more reliably now. You&#39;ll see tests failing with errors like ``no such table: &lt;app_label&gt;_&lt;model&gt;``. This was observed with several third-party apps that had models in tests without migrations. You must add migrations for such models. .. _deprecated-features-2.2: Features deprecated in 2.2 ========================== Model ``Meta.ordering`` will no longer affect ``GROUP BY`` queries ------------------------------------------------------------------ A model&#39;s ``Meta.ordering`` affecting ``GROUP BY`` queries (such as ``.annotate().values()``) is a common source of confusion. Such queries now issue a deprecation warning with the advice to add an ``order_by()`` to retain the current query. ``Meta.ordering`` will be ignored in such queries starting in Django 3.1. Miscellaneous ------------- * ``django.utils.timezone.FixedOffset`` is deprecated in favor of :class:`datetime.timezone`. * The undocumented ``QuerySetPaginator`` alias of ``django.core.paginator.Paginator`` is deprecated. * The ``FloatRangeField`` model and form fields in ``django.contrib.postgres`` are deprecated in favor of a new name, ``DecimalRangeField``, to match the underlying ``numrange`` data type used in the database. * The ``FILE_CHARSET`` setting is deprecated. Starting with Django 3.1, files read from disk must be UTF-8 encoded. * ``django.contrib.staticfiles.storage.CachedStaticFilesStorage`` is deprecated due to the intractable problems that it has. Use :class:`.ManifestStaticFilesStorage` or a third-party cloud storage instead. * :meth:`.RemoteUserBackend.configure_user` is now passed ``request`` as the first positional argument, if it accepts it. Support for overrides that don&#39;t accept it will be removed in Django 3.1. * The :attr:`.SimpleTestCase.allow_database_queries`, :attr:`.TransactionTestCase.multi_db`, and :attr:`.TestCase.multi_db` attributes are deprecated in favor of :attr:`.SimpleTestCase.databases`, :attr:`.TransactionTestCase.databases`, and :attr:`.TestCase.databases`. These new attributes allow databases dependencies to be declared in order to prevent unexpected queries against non-default databases to leak state between tests. The previous behavior of ``allow_database_queries=True`` and ``multi_db=True`` can be achieved by setting ``databases=&#39;__all__&#39;``. ========================== ``` ### 2.1.8 ``` ========================== *April 1, 2019* Django 2.1.8 fixes a bug in 2.1.7. Bugfixes ======== * Prevented admin inlines for a ``ManyToManyField``\&#39;s implicit through model from being editable if the user only has the view permission (:ticket:`30289`). ========================== ``` </details> <details> <summary>Links</summary> - PyPI: https://pypi.org/project/django - Changelog: https://pyup.io/changelogs/django/ - Homepage: https://www.djangoproject.com/ </details> ### Update [newrelic](https://pypi.org/project/newrelic) from **4.14.0.115** to **4.16.1.117**. <details> <summary>Changelog</summary> ### 4.16.1.117 ``` This release of the Python agent fixes a memory leak that occurs on Python 2 when monitoring WSGI applications. The agent can be installed using easy_install/pip/distribute via the Python Package Index or can be downloaded directly from the New Relic download site. Bug Fixes Fix memory leak on Python 2 WSGI applications When using the 4.16.0 agent on Python 2 to monitor WSGI applications, the agent would cause memory to be allocated on each request. On Python 2, this memory was never deallocated due to a reference cycle. This has now been corrected. ``` ### 4.16.0.116 ``` This release of the Python agent adds support for native coroutines and generators with a new web_transaction API, as well as bugfixes. The agent can be installed using easy_install/pip/distribute via the Python Package Index or can be downloaded directly from the New Relic download site. Features Add a new web_transaction API This method is now exposed both as a public API through newrelic.agent.api.wrap_web_transaction, and as a decorator with newrelic.agent.api.web_transaction. It can be used to instrument non-WSGI web transactions. For usage of this API see https://docs.newrelic.com/docs/agents/python-agent/python-agent-api/webt... Bug Fixes The presence of unicode values in a SQL query on Python 2 may cause an application crash The agent was not properly handling unicode values when recording SQL queries in Python 2. As a result, the presence of unicode values in SQL queries in Python 2 applications may have resulted in an application crash. Unicode values in Python 2 SQL queries are now properly handled. The Python Agent may have improperly biased the random sampling of distributed traces Distributed traces are randomly sampled across services. The agent is responsible for propagating the state of its sampling decision to other services. In propagating that decision, an improper sampling bias may have been introduced in downstream services. The agent will no longer report the command arguments used to start newrelic-admin The agent previously reported the startup command and arguments when using newrelic-admin run-program and newrelic-admin run-python. The command and arguments are no longer sent to New Relic. This data may continue to be logged to the agent log files when debug level logs are enabled. ``` </details> <details> <summary>Links</summary> - PyPI: https://pypi.org/project/newrelic - Changelog: https://pyup.io/changelogs/newrelic/ - Homepage: http://newrelic.com/docs/python/new-relic-for-python </details> ### Update [pytest](https://pypi.org/project/pytest) from **4.3.1** to **4.4.0**. <details> <summary>Changelog</summary> ### 4.4.0 ``` ========================= Features -------- - `2224 &lt;https://github.com/pytest-dev/pytest/issues/2224&gt;`_: ``async`` test functions are skipped and a warning is emitted when a suitable async plugin is not installed (such as ``pytest-asyncio`` or ``pytest-trio``). Previously ``async`` functions would not execute at all but still be marked as &quot;passed&quot;. - `2482 &lt;https://github.com/pytest-dev/pytest/issues/2482&gt;`_: Include new ``disable_test_id_escaping_and_forfeit_all_rights_to_community_support`` option to disable ascii-escaping in parametrized values. This may cause a series of problems and as the name makes clear, use at your own risk. - `4718 &lt;https://github.com/pytest-dev/pytest/issues/4718&gt;`_: The ``-p`` option can now be used to early-load plugins also by entry-point name, instead of just by module name. This makes it possible to early load external plugins like ``pytest-cov`` in the command-line:: pytest -p pytest_cov - `4855 &lt;https://github.com/pytest-dev/pytest/issues/4855&gt;`_: The ``--pdbcls`` option handles classes via module attributes now (e.g. ``pdb:pdb.Pdb`` with `pdb++`_), and its validation was improved. .. _pdb++: https://pypi.org/project/pdbpp/ - `4875 &lt;https://github.com/pytest-dev/pytest/issues/4875&gt;`_: The `testpaths &lt;https://docs.pytest.org/en/latest/reference.htmlconfval-testpaths&gt;`__ configuration option is now displayed next to the ``rootdir`` and ``inifile`` lines in the pytest header if the option is in effect, i.e., directories or file names were not explicitly passed in the command line. Also, ``inifile`` is only displayed if there&#39;s a configuration file, instead of an empty ``inifile:`` string. - `4911 &lt;https://github.com/pytest-dev/pytest/issues/4911&gt;`_: Doctests can be skipped now dynamically using ``pytest.skip()``. - `4920 &lt;https://github.com/pytest-dev/pytest/issues/4920&gt;`_: Internal refactorings have been made in order to make the implementation of the `pytest-subtests &lt;https://github.com/pytest-dev/pytest-subtests&gt;`__ plugin possible, which adds unittest sub-test support and a new ``subtests`` fixture as discussed in `1367 &lt;https://github.com/pytest-dev/pytest/issues/1367&gt;`__. For details on the internal refactorings, please see the details on the related PR. - `4931 &lt;https://github.com/pytest-dev/pytest/issues/4931&gt;`_: pytester&#39;s ``LineMatcher`` asserts that the passed lines are a sequence. - `4936 &lt;https://github.com/pytest-dev/pytest/issues/4936&gt;`_: Handle ``-p plug`` after ``-p no:plug``. This can be used to override a blocked plugin (e.g. in &quot;addopts&quot;) from the command line etc. - `4951 &lt;https://github.com/pytest-dev/pytest/issues/4951&gt;`_: Output capturing is handled correctly when only capturing via fixtures (capsys, capfs) with ``pdb.set_trace()``. - `4956 &lt;https://github.com/pytest-dev/pytest/issues/4956&gt;`_: ``pytester`` sets ``$HOME`` and ``$USERPROFILE`` to the temporary directory during test runs. This ensures to not load configuration files from the real user&#39;s home directory. - `4980 &lt;https://github.com/pytest-dev/pytest/issues/4980&gt;`_: Namespace packages are handled better with ``monkeypatch.syspath_prepend`` and ``testdir.syspathinsert`` (via ``pkg_resources.fixup_namespace_packages``). - `4993 &lt;https://github.com/pytest-dev/pytest/issues/4993&gt;`_: The stepwise plugin reports status information now. - `5008 &lt;https://github.com/pytest-dev/pytest/issues/5008&gt;`_: If a ``setup.cfg`` file contains ``[tool:pytest]`` and also the no longer supported ``[pytest]`` section, pytest will use ``[tool:pytest]`` ignoring ``[pytest]``. Previously it would unconditionally error out. This makes it simpler for plugins to support old pytest versions. Bug Fixes --------- - `1895 &lt;https://github.com/pytest-dev/pytest/issues/1895&gt;`_: Fix bug where fixtures requested dynamically via ``request.getfixturevalue()`` might be teardown before the requesting fixture. - `4851 &lt;https://github.com/pytest-dev/pytest/issues/4851&gt;`_: pytester unsets ``PYTEST_ADDOPTS`` now to not use outer options with ``testdir.runpytest()``. - `4903 &lt;https://github.com/pytest-dev/pytest/issues/4903&gt;`_: Use the correct modified time for years after 2038 in rewritten ``.pyc`` files. - `4928 &lt;https://github.com/pytest-dev/pytest/issues/4928&gt;`_: Fix line offsets with ``ScopeMismatch`` errors. - `4957 &lt;https://github.com/pytest-dev/pytest/issues/4957&gt;`_: ``-p no:plugin`` is handled correctly for default (internal) plugins now, e.g. with ``-p no:capture``. Previously they were loaded (imported) always, making e.g. the ``capfd`` fixture available. - `4968 &lt;https://github.com/pytest-dev/pytest/issues/4968&gt;`_: The pdb ``quit`` command is handled properly when used after the ``debug`` command with `pdb++`_. .. _pdb++: https://pypi.org/project/pdbpp/ - `4975 &lt;https://github.com/pytest-dev/pytest/issues/4975&gt;`_: Fix the interpretation of ``-qq`` option where it was being considered as ``-v`` instead. - `4978 &lt;https://github.com/pytest-dev/pytest/issues/4978&gt;`_: ``outcomes.Exit`` is not swallowed in ``assertrepr_compare`` anymore. - `4988 &lt;https://github.com/pytest-dev/pytest/issues/4988&gt;`_: Close logging&#39;s file handler explicitly when the session finishes. - `5003 &lt;https://github.com/pytest-dev/pytest/issues/5003&gt;`_: Fix line offset with mark collection error (off by one). Improved Documentation ---------------------- - `4974 &lt;https://github.com/pytest-dev/pytest/issues/4974&gt;`_: Update docs for ``pytest_cmdline_parse`` hook to note availability liminations Trivial/Internal Changes ------------------------ - `4718 &lt;https://github.com/pytest-dev/pytest/issues/4718&gt;`_: ``pluggy&gt;=0.9`` is now required. - `4815 &lt;https://github.com/pytest-dev/pytest/issues/4815&gt;`_: ``funcsigs&gt;=1.0`` is now required for Python 2.7. - `4829 &lt;https://github.com/pytest-dev/pytest/issues/4829&gt;`_: Some left-over internal code related to ``yield`` tests has been removed. - `4890 &lt;https://github.com/pytest-dev/pytest/issues/4890&gt;`_: Remove internally unused ``anypython`` fixture from the pytester plugin. - `4912 &lt;https://github.com/pytest-dev/pytest/issues/4912&gt;`_: Remove deprecated Sphinx directive, ``add_description_unit()``, pin sphinx-removed-in to &gt;= 0.2.0 to support Sphinx 2.0. - `4913 &lt;https://github.com/pytest-dev/pytest/issues/4913&gt;`_: Fix pytest tests invocation with custom ``PYTHONPATH``. - `4965 &lt;https://github.com/pytest-dev/pytest/issues/4965&gt;`_: New ``pytest_report_to_serializable`` and ``pytest_report_from_serializable`` **experimental** hooks. These hooks will be used by ``pytest-xdist``, ``pytest-subtests``, and the replacement for resultlog to serialize and customize reports. They are experimental, meaning that their details might change or even be removed completely in future patch releases without warning. Feedback is welcome from plugin authors and users alike. - `4987 &lt;https://github.com/pytest-dev/pytest/issues/4987&gt;`_: ``Collector.repr_failure`` respects the ``--tb`` option, but only defaults to ``short`` now (with ``auto``). ``` </details> <details> <summary>Links</summary> - PyPI: https://pypi.org/project/pytest - Changelog: https://pyup.io/changelogs/pytest/ - Homepage: https://docs.pytest.org/en/latest/ </details> ### Update [pytest-mock](https://pypi.org/project/pytest-mock) from **1.10.2** to **1.10.3**. <details> <summary>Changelog</summary> ### 1.10.3 ``` ------ * Fix test suite in Python 3.8. Thanks `hroncok`_ for the report and `blueyed`_ for the PR (`140`_). .. _140: pytest-dev/pytest-mock#140 .. _hroncok: https://github.com/hroncok ``` </details> <details> <summary>Links</summary> - PyPI: https://pypi.org/project/pytest-mock - Changelog: https://pyup.io/changelogs/pytest-mock/ - Repo: https://github.com/pytest-dev/pytest-mock/ </details> ### Update [drf-yasg](https://pypi.org/project/drf-yasg) from **1.14.0** to **1.15.0**. <details> <summary>Changelog</summary> ### 1.15.0 ``` ********** *Release date: Apr 01, 2019* - **ADDED:** added ``is_list_view`` and ``has_list_response`` extension points to ``SwaggerAutoSchema`` (:issue:`331`) - **IMPROVED:** updated ``swagger-ui`` to version 3.22.0 - **IMPROVED:** updated ``ReDoc`` to version 2.0.0-rc.4 - **FIXED:** ``ListModelMixin`` will now always be treated as a list view (:issue:`306`) - **FIXED:** non-primtive values in field ``choices`` will now be handled properly (:issue:`340`) ********** ``` </details> <details> <summary>Links</summary> - PyPI: https://pypi.org/project/drf-yasg - Changelog: https://pyup.io/changelogs/drf-yasg/ - Repo: https://github.com/axnsan12/drf-yasg </details> ### Update [Sphinx](https://pypi.org/project/Sphinx) from **1.8.5** to **2.0.0**. <details> <summary>Changelog</summary> ### 2.0.0 ``` ==================================== Dependencies ------------ * LaTeX builder now depends on TeX Live 2015 or above. * LaTeX builder (with ``&#39;pdflatex&#39;`` :confval:`latex_engine`) will process Unicode Greek letters in text (not in math mark-up) via the text font and will not escape them to math mark-up. See the discussion of the ``&#39;fontenc&#39;`` key of :confval:`latex_elements`; such (optional) support for Greek adds, for example on Ubuntu xenial, the ``texlive-lang-greek`` and (if default font set-up is not modified) ``cm-super(-minimal)`` as additional Sphinx LaTeX requirements. * LaTeX builder with :confval:`latex_engine` set to ``&#39;xelatex&#39;`` or to ``&#39;lualatex&#39;`` requires (by default) the ``FreeFont`` fonts, which in Ubuntu xenial are provided by package ``fonts-freefont-otf``, and e.g. in Fedora 29 via package ``texlive-gnu-freefont``. * requests 2.5.0 or above * The six package is no longer a dependency * The sphinxcontrib-websupport package is no longer a dependency * Some packages are separated to sub packages: - sphinxcontrib.applehelp - sphinxcontrib.devhelp - sphinxcontrib.htmlhelp - sphinxcontrib.jsmath - sphinxcontrib.serializinghtml - sphinxcontrib.qthelp Incompatible changes -------------------- * Drop python 2.7 and 3.4 support * Drop docutils 0.11 support * The default setting for :confval:`master_doc` is changed to ``&#39;index&#39;`` which has been longly used as default of sphinx-quickstart. * LaTeX: Move message resources to ``sphinxmessage.sty`` * LaTeX: Stop using ``\captions&lt;lang&gt;`` macro for some labels * LaTeX: for ``&#39;xelatex&#39;`` and ``&#39;lualatex&#39;``, use the ``FreeFont`` OpenType fonts as default choice (refs: 5645) * LaTeX: ``&#39;xelatex&#39;`` and ``&#39;lualatex&#39;`` now use ``\small`` in code-blocks (due to ``FreeMono`` character width) like ``&#39;pdflatex&#39;`` already did (due to ``Courier`` character width). You may need to adjust this via :confval:`latex_elements` ``&#39;fvset&#39;`` key, in case of usage of some other OpenType fonts (refs: 5768) * LaTeX: Greek letters in text are not escaped to math mode mark-up, and they will use the text font not the math font. The ``LGR`` font encoding must be added to the ``&#39;fontenc&#39;`` key of :confval:`latex_elements` for this to work (only if it is needed by the document, of course). * LaTeX: setting the :confval:`language` to ``&#39;en&#39;`` triggered ``Sonny`` option of ``fncychap``, now it is ``Bjarne`` to match case of no language specified. (refs: 5772) * 5770: doctest: Follow :confval:`highlight_language` on highlighting doctest block. As a result, they are highlighted as python3 by default. * The order of argument for ``HTMLTranslator``, ``HTML5Translator`` and ``ManualPageTranslator`` are changed * LaTeX: hard-coded redefinitions of ``\lsection`` and ``\lsubsection`` formerly done during loading of ``&#39;manual&#39;`` docclass get executed later, at time of ``\sphinxtableofcontents``. This means that custom user definitions from LaTeX preamble now get overwritten. Use ``\sphinxtableofcontentshook`` to insert custom user definitions. See :ref:`latex-macros`. * quickstart: Simplify generated ``conf.py`` * 4148: quickstart: some questions are removed. They are still able to specify via command line options * websupport: unbundled from sphinx core. Please use sphinxcontrib-websupport * C++, the visibility of base classes is now always rendered as present in the input. That is, ``private`` is now shown, where it was ellided before. * LaTeX: graphics inclusion of oversized images rescales to not exceed the text width and height, even if width and/or height option were used. (refs: 5956) * epub: ``epub_title`` defaults to the :confval:`project` option * 4550: All tables and figures without ``align`` option are displayed to center * 4587: html: Output HTML5 by default Deprecated ---------- * Support for evaluating Python 2 syntax is deprecated. This includes configuration files which should be converted to Python 3. * The arguments of ``EpubBuilder.build_mimetype()``, ``EpubBuilder.build_container()``, ``EpubBuilder.bulid_content()``, ``EpubBuilder.build_toc()`` and ``EpubBuilder.build_epub()`` * The arguments of ``Epub3Builder.build_navigation_doc()`` * The config variables - :confval:`html_experimental_html5_writer` * The ``encoding`` argument of ``autodoc.Documenter.get_doc()``, ``autodoc.DocstringSignatureMixin.get_doc()``, ``autodoc.DocstringSignatureMixin._find_signature()``, and ``autodoc.ClassDocumenter.get_doc()`` are deprecated. * The ``importer`` argument of ``sphinx.ext.autodoc.importer._MockModule`` * The ``nodetype`` argument of ``sphinx.search.WordCollector. is_meta_keywords()`` * The ``suffix`` argument of ``env.doc2path()`` is deprecated. * The string style ``base`` argument of ``env.doc2path()`` is deprecated. * The fallback to allow omitting the ``filename`` argument from an overridden ``IndexBuilder.feed()`` method is deprecated. * ``sphinx.addnodes.abbreviation`` * ``sphinx.application.Sphinx._setting_up_extension`` * ``sphinx.builders.epub3.Epub3Builder.validate_config_value()`` * ``sphinx.builders.html.SingleFileHTMLBuilder`` * ``sphinx.builders.htmlhelp.HTMLHelpBuilder.open_file()`` * ``sphinx.cmd.quickstart.term_decode()`` * ``sphinx.cmd.quickstart.TERM_ENCODING`` * ``sphinx.config.check_unicode()`` * ``sphinx.config.string_classes`` * ``sphinx.domains.cpp.DefinitionError.description`` * ``sphinx.domains.cpp.NoOldIdError.description`` * ``sphinx.domains.cpp.UnsupportedMultiCharacterCharLiteral.decoded`` * ``sphinx.ext.autodoc.importer._MockImporter`` * ``sphinx.ext.autosummary.Autosummary.warn()`` * ``sphinx.ext.autosummary.Autosummary.genopt`` * ``sphinx.ext.autosummary.Autosummary.warnings`` * ``sphinx.ext.autosummary.Autosummary.result`` * ``sphinx.ext.doctest.doctest_encode()`` * ``sphinx.io.SphinxBaseFileInput`` * ``sphinx.io.SphinxFileInput.supported`` * ``sphinx.io.SphinxRSTFileInput`` * ``sphinx.registry.SphinxComponentRegistry.add_source_input()`` * ``sphinx.roles.abbr_role()`` * ``sphinx.roles.emph_literal_role()`` * ``sphinx.roles.menusel_role()`` * ``sphinx.roles.index_role()`` * ``sphinx.roles.indexmarkup_role()`` * ``sphinx.testing.util.remove_unicode_literal()`` * ``sphinx.util.attrdict`` * ``sphinx.util.force_decode()`` * ``sphinx.util.get_matching_docs()`` * ``sphinx.util.inspect.Parameter`` * ``sphinx.util.jsonimpl`` * ``sphinx.util.osutil.EEXIST`` * ``sphinx.util.osutil.EINVAL`` * ``sphinx.util.osutil.ENOENT`` * ``sphinx.util.osutil.EPIPE`` * ``sphinx.util.osutil.walk()`` * ``sphinx.util.PeekableIterator`` * ``sphinx.util.pycompat.NoneType`` * ``sphinx.util.pycompat.TextIOWrapper`` * ``sphinx.util.pycompat.UnicodeMixin`` * ``sphinx.util.pycompat.htmlescape`` * ``sphinx.util.pycompat.indent`` * ``sphinx.util.pycompat.sys_encoding`` * ``sphinx.util.pycompat.terminal_safe()`` * ``sphinx.util.pycompat.u`` * ``sphinx.writers.latex.ExtBabel`` * ``sphinx.writers.latex.LaTeXTranslator._make_visit_admonition()`` * ``sphinx.writers.latex.LaTeXTranslator.babel_defmacro()`` * ``sphinx.writers.latex.LaTeXTranslator.collect_footnotes()`` * ``sphinx.writers.latex.LaTeXTranslator.generate_numfig_format()`` * ``sphinx.writers.texinfo.TexinfoTranslator._make_visit_admonition()`` * ``sphinx.writers.text.TextTranslator._make_depart_admonition()`` * template variables for LaTeX template - ``logo`` - ``numfig_format`` - ``pageautorefname`` - ``translatablestrings`` For more details, see :ref:`deprecation APIs list &lt;dev-deprecated-apis&gt;`. Features added -------------- * 1618: The search results preview of generated HTML documentation is reader-friendlier: instead of showing the snippets as raw reStructuredText markup, Sphinx now renders the corresponding HTML. This means the Sphinx extension `Sphinx: pretty search results`__ is no longer necessary. Note that changes to the search function of your custom or 3rd-party HTML template might overwrite this improvement. __ https://github.com/sphinx-contrib/sphinx-pretty-searchresults * 4182: autodoc: Support :confval:`suppress_warnings` * 5533: autodoc: :confval:`autodoc_default_options` supports ``member-order`` * 5394: autodoc: Display readable names in type annotations for mocked objects * 5459: autodoc: :confval:`autodoc_default_options` accepts ``True`` as a value * 1148: autodoc: Add :rst:dir:`autodecorator` directive for decorators * 5635: autosummary: Add :confval:`autosummary_mock_imports` to mock external libraries on importing targets * 4018: htmlhelp: Add :confval:`htmlhelp_file_suffix` and :confval:`htmlhelp_link_suffix` * 5559: text: Support complex tables (colspan and rowspan) * LaTeX: support rendering (not in math, yet) of Greek and Cyrillic Unicode letters in non-Cyrillic document even with ``&#39;pdflatex&#39;`` as :confval:`latex_engine` (refs: 5645) * 5660: The ``versionadded``, ``versionchanged`` and ``deprecated`` directives are now generated with their own specific CSS classes (``added``, ``changed`` and ``deprecated``, respectively) in addition to the generic ``versionmodified`` class. * 5841: apidoc: Add --extensions option to sphinx-apidoc * 4981: C++, added an alias directive for inserting lists of declarations, that references existing declarations (e.g., for making a synopsis). * C++: add ``cpp:struct`` to complement ``cpp:class``. * 1341 the HTML search considers words that contain a search term of length three or longer a match. * 4611: epub: Show warning for duplicated ToC entries * 1851: Allow to omit an argument for :rst:dir:`code-block` directive. If omitted, it follows :rst:dir:`highlight` or :confval:`highlight_language` * 4587: html: Add :confval:`html4_writer` to use old HTML4 writer * 6016: HTML search: A placeholder for the search summary prevents search result links from changing their position when the search terminates. This makes navigating search results easier. * 5196: linkcheck also checks remote images exist * 5924: githubpages: create CNAME file for custom domains when :confval:`html_baseurl` set * 4261: autosectionlabel: restrict the labeled sections by new config value; :confval:`autosectionlabel_maxdepth` Bugs fixed ---------- * 1682: LaTeX: writer should not translate Greek unicode, but use textgreek package * 5247: LaTeX: PDF does not build with default font config for Russian language and ``&#39;xelatex&#39;`` or ``&#39;lualatex&#39;`` as :confval:`latex_engine` (refs: 5251) * 5248: LaTeX: Greek letters in section titles disappear from PDF bookmarks * 5249: LaTeX: Unicode Greek letters in math directive break PDF build (fix requires extra set-up, see :confval:`latex_elements` ``&#39;textgreek&#39;`` key and/or :confval:`latex_engine` setting) * 5772: LaTeX: should the Bjarne style of fncychap be used for English also if passed as language option? * 5179: LaTeX: (lualatex only) escaping of ``&gt;`` by ``\textgreater{}`` is not enough as ``\textgreater{}\textgreater{}`` applies TeX-ligature * LaTeX: project name is not escaped if :confval:`latex_documents` omitted * LaTeX: authors are not shown if :confval:`latex_documents` omitted * HTML: Invalid HTML5 file is generated for a glossary having multiple terms for one description (refs: 4611) * QtHelp: OS dependent path separator is used in .qhp file * HTML search: search always returns nothing when multiple search terms are used and one term is shorter than three characters Testing -------- * Stop to use ``SPHINX_TEST_TEMPDIR`` envvar ``` ### 1.8.6 ``` Dependencies ------------ Incompatible changes -------------------- Deprecated ---------- Features added -------------- Bugs fixed ---------- Testing -------- ``` </details> <details> <summary>Links</summary> - PyPI: https://pypi.org/project/sphinx - Changelog: https://pyup.io/changelogs/sphinx/ - Homepage: http://sphinx-doc.org/ </details> Co-authored-by: pyup-bot <[email protected]> Co-authored-by: Mike Cooper <[email protected]>
2 parents 6742c2b + ee8caf0 commit ba07d38

File tree

4 files changed

+81
-64
lines changed

4 files changed

+81
-64
lines changed

requirements/constraints.txt

Lines changed: 44 additions & 26 deletions
Original file line numberDiff line numberDiff line change
@@ -4,9 +4,9 @@ atomicwrites==1.3.0 \
44
attrs==19.1.0 \
55
--hash=sha256:69c0dbf2ed392de1cb5ec704444b08a5ef81680a61cb899dc08127123af36a79 \
66
--hash=sha256:f0b870f674851ecbfbbbd364d6b5cbdff9dcedbc7f3f5e18a6891057f21fe399
7-
botocore==1.12.120 \
8-
--hash=sha256:2bf8768887bfb008406eec725eecf6f174307dac00f5fad244cdd5d39c6c2147 \
9-
--hash=sha256:c0f9c57e7a8c65f17a62a0926c3e73686f6ae1c08abf3b5a63cc3a5bcc4c437b
7+
botocore==1.12.125 \
8+
--hash=sha256:2c071fb9f3cd71d792846e18e2c650f2985b822c552514ea6f27e44764d45a0a \
9+
--hash=sha256:ac9585c2afdf81929ccb69b8e6919ec64f3693cc7d3f4f216f292f63312111cf
1010
certifi==2019.3.9 \
1111
--hash=sha256:59b7658e26ca9c7339e00f8f4636cdfe59d34fa37b9b04f6f9e9926b3cece1a5 \
1212
--hash=sha256:b26104d6835d1f5e49452a26eb2ff87fe7090b89dfcaee5ea2212697e1e1d7ae
@@ -121,9 +121,9 @@ maxminddb==1.4.1 \
121121
mccabe==0.6.1 \
122122
--hash=sha256:ab8a6258860da4b6677da4bd2fe5dc2c659cff31b3ee4f7f5d64e79735b80d42 \
123123
--hash=sha256:dd8d182285a0fe56bace7f45b5e7d1a6ebcbf524e8f3bd87eb0f125271b8831f
124-
more-itertools==6.0.0 \
125-
--hash=sha256:0125e8f60e9e031347105eb1682cef932f5e97d7b9a1a28d9bf00c22a5daef40 \
126-
--hash=sha256:590044e3942351a1bdb1de960b739ff4ce277960f2425ad4509446dbace8d9d1
124+
more-itertools==7.0.0 \
125+
--hash=sha256:2112d2ca570bb7c3e53ea1a35cd5df42bb0fd10c45f0fb97178679c3c03d64c7 \
126+
--hash=sha256:c3e4748ba1aad8dba30a4886b0b1a2004f9a863837b8654e7059eebf727afa5a
127127
parsimonious==0.8.1 \
128128
--hash=sha256:3add338892d580e0cb3b1a39e4a1b427ff9f687858fdd61097053742391a9f6b
129129
pluggy==0.9.0 \
@@ -238,26 +238,26 @@ google-auth==1.6.3 \
238238
--hash=sha256:20705f6803fd2c4d1cc2dcb0df09d4dfcb9a7d51fd59e94a3a28231fd93119ed
239239
googleapis-common-protos==1.5.9 \
240240
--hash=sha256:627ec53fab43d06c1b5c950e217fa9819e169daf753111a7f244e94bf8fb3384
241-
protobuf==3.7.0 \
242-
--hash=sha256:03666634d038e35d90155756914bc3a6316e8bcc0d300f3ee539e586889436b9 \
243-
--hash=sha256:049d5900e442d4cc0fd2afd146786b429151e2b29adebed28e6376026ab0ee0b \
244-
--hash=sha256:0eb9e62a48cc818b1719b5035042310c7e4f57b01f5283b32998c68c2f1c6a7c \
245-
--hash=sha256:255d10c2c9059964f6ebb5c900a830fc8a089731dda94a5cc873f673193d208b \
246-
--hash=sha256:358cc59e4e02a15d3725f204f2eb5777fc10595e2d9a9c4c8d82292f49af6d41 \
247-
--hash=sha256:41f1b737d5f97f1e2af23d16fac6c0b8572f9c7ea73054f1258ca57f4f97cb80 \
248-
--hash=sha256:4da3781eba8d3051d75b296d48154014c872e8a6323b8c207174cae49523b628 \
249-
--hash=sha256:6a5129576a2cf925cd100e06ead5f9ae4c86db70a854fb91cedb8d680112734a \
250-
--hash=sha256:80722b0d56dcb7ca8f75f99d8dadd7c7efd0d2265714d68f871ed437c32d82b3 \
251-
--hash=sha256:88a960e949ec356f7016d84f8262dcff2b842fca5355b4c1be759f5c103b19b3 \
252-
--hash=sha256:97872686223f47d95e914881cb0ca46e1bc622562600043da9edddcb54f2fe1e \
253-
--hash=sha256:a1df9d22433ab44b7c7e0bd33817134832ae8a8f3d93d9b9719fc032c5b20e96 \
254-
--hash=sha256:ad385fbb9754023d17be14dd5aa67efff07f43c5df7f93118aef3c20e635ea19 \
255-
--hash=sha256:b2d5ee7ba5c03b735c02e6ae75fd4ff8c831133e7ca078f2963408dc7beac428 \
256-
--hash=sha256:c8c07cd8635d45b28ec53ee695e5ac8b0f9d9a4ae488a8d8ee168fe8fc75ba43 \
257-
--hash=sha256:d44ebc9838b183e8237e7507885d52e8d08c48fdc953fd4a7ee3e56cb9d20977 \
258-
--hash=sha256:dff97b0ee9256f0afdfc9eaa430736cdcdc18899d9a666658f161afd137cf93d \
259-
--hash=sha256:e47d248d614c68e4b029442de212bdd4f6ae02ae36821de319ae90314ea2578c \
260-
--hash=sha256:e650b521b429fed3d525428b1401a40051097a5a92c30076c91f36b31717e087
241+
protobuf==3.7.1 \
242+
--hash=sha256:21e395d7959551e759d604940a115c51c6347d90a475c9baf471a1a86b5604a9 \
243+
--hash=sha256:57e05e16955aee9e6a0389fcbd58d8289dd2420e47df1a1096b3a232c26eb2dd \
244+
--hash=sha256:67819e8e48a74c68d87f25cad9f40edfe2faf278cdba5ca73173211b9213b8c9 \
245+
--hash=sha256:75da7d43a2c8a13b0bc7238ab3c8ae217cbfd5979d33b01e98e1f78defb2d060 \
246+
--hash=sha256:78e08371e236f193ce947712c072542ff19d0043ab5318c2ea46bbc2aaebdca6 \
247+
--hash=sha256:7ee5b595db5abb0096e8c4755e69c20dfad38b2d0bcc9bc7bafc652d2496b471 \
248+
--hash=sha256:86260ecfe7a66c0e9d82d2c61f86a14aa974d340d159b829b26f35f710f615db \
249+
--hash=sha256:92c77db4bd33ea4ee5f15152a835273f2338a5246b2cbb84bab5d0d7f6e9ba94 \
250+
--hash=sha256:9c7b90943e0e188394b4f068926a759e3b4f63738190d1ab3d500d53b9ce7614 \
251+
--hash=sha256:a77f217ea50b2542bae5b318f7acee50d9fc8c95dd6d3656eaeff646f7cab5ee \
252+
--hash=sha256:ad589ed1d1f83db22df867b10e01fe445516a5a4d7cfa37fe3590a5f6cfc508b \
253+
--hash=sha256:b06a794901bf573f4b2af87e6139e5cd36ac7c91ac85d7ae3fe5b5f6fc317513 \
254+
--hash=sha256:bd8592cc5f8b4371d0bad92543370d4658dc41a5ccaaf105597eb5524c616291 \
255+
--hash=sha256:be48e5a6248a928ec43adf2bea037073e5da692c0b3c10b34f9904793bd63138 \
256+
--hash=sha256:cc5eb13f5ccc4b1b642cc147c2cdd121a34278b341c7a4d79e91182fff425836 \
257+
--hash=sha256:cd3b0e0ad69b74ee55e7c321f52a98effed2b4f4cc9a10f3683d869de00590d5 \
258+
--hash=sha256:d6e88c4920660aa75c0c2c4b53407aef5efd9a6e0ca7d2fc84d79aba2ccbda3a \
259+
--hash=sha256:ec3c49b6d247152e19110c3a53d9bb4cf917747882017f70796460728b02722e \
260+
--hash=sha256:f1f5d8b8e0bc9651d81b40ad3d9fb7cdd858ea31fc116dd230393465849dbecd
261261
rsa==4.0 \
262262
--hash=sha256:14ba45700ff1ec9eeb206a2ce76b32814958a98e372006c8fb76ba820211be66 \
263263
--hash=sha256:1a836406405730121ae9823e19c6e806c62bbad73f890574fff50efa4122c487
@@ -337,3 +337,21 @@ inflection==0.3.1 \
337337
coreapi==2.3.3 \
338338
--hash=sha256:46145fcc1f7017c076a2ef684969b641d18a2991051fddec9458ad3f78ffc1cb \
339339
--hash=sha256:bf39d118d6d3e171f10df9ede5666f63ad80bba9a29a8ec17726a66cf52ee6f3
340+
sphinxcontrib-htmlhelp==1.0.1 \
341+
--hash=sha256:e31c8271f5a8f04b620a500c0442a7d5cfc1a732fa5c10ec363f90fe72af0cb8 \
342+
--hash=sha256:0d691ca8edf5995fbacfe69b191914256071a94cbad03c3688dca47385c9206c
343+
sphinxcontrib-applehelp==1.0.1 \
344+
--hash=sha256:fb8dee85af95e5c30c91f10e7eb3c8967308518e0f7488a2828ef7bc191d0d5d \
345+
--hash=sha256:edaa0ab2b2bc74403149cb0209d6775c96de797dfd5b5e2a71981309efab3897
346+
sphinxcontrib-qthelp==1.0.2 \
347+
--hash=sha256:513049b93031beb1f57d4daea74068a4feb77aa5630f856fcff2e50de14e9a20 \
348+
--hash=sha256:79465ce11ae5694ff165becda529a600c754f4bc459778778c7017374d4d406f
349+
sphinxcontrib-devhelp==1.0.1 \
350+
--hash=sha256:9512ecb00a2b0821a146736b39f7aeb90759834b07e81e8cc23a9c70bacb9981 \
351+
--hash=sha256:6c64b077937330a9128a4da74586e8c2130262f014689b4b89e2d08ee7294a34
352+
sphinxcontrib-jsmath==1.0.1 \
353+
--hash=sha256:2ec2eaebfb78f3f2078e73666b1415417a116cc848b72e5172e596c871103178 \
354+
--hash=sha256:a9925e4a4587247ed2191a22df5f6970656cb8ca2bd6284309578f2153e0c4b8
355+
sphinxcontrib-serializinghtml==1.1.1 \
356+
--hash=sha256:01d9b2617d7e8ddf7a00cae091f08f9fa4db587cc160b493141ee56710810932 \
357+
--hash=sha256:392187ac558863b8aff0d76dc78e0731fed58f3b06e2b00e22995dcdb630f213

requirements/default.txt

Lines changed: 14 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -20,9 +20,9 @@ bcrypt==3.1.6 \
2020
--hash=sha256:9b2c5b640a2da533b0ab5f148d87fb9989bf9bcb2e61eea6a729102a6d36aef9 \
2121
--hash=sha256:28a0459381a8021f57230954b9e9a65bb5e3d569d2c253c5cac6cb181d71cf23 \
2222
--hash=sha256:44636759d222baa62806bbceb20e96f75a015a6381690d1bc2eda91c01ec02ea
23-
boto3==1.9.120 \
24-
--hash=sha256:39e9b6516a72864f5a6b69f38edac087cc4ba623095f4528b916620e63de32b3 \
25-
--hash=sha256:a3eb22bb975a200a69084ec2bb69819e483ad531bf05e7b73861fc1b333aad42
23+
boto3==1.9.125 \
24+
--hash=sha256:479e7a805ad436d8511293ac85b5fdaaa44e245952d6acf4f2d273c2a21ac654 \
25+
--hash=sha256:a791e676b2c43e49ecaf43961156a11dbb59a7ead07c1c80cf7237ec7608a6fa
2626
dj-database-url==0.5.0 \
2727
--hash=sha256:4aeaeb1f573c74835b0686a2b46b85990571159ffc21aa57ecd4d1e1cb334163 \
2828
--hash=sha256:851785365761ebe4994a921b433062309eb882fedd318e1b0fcecc607ed02da9
@@ -110,8 +110,8 @@ html5lib==1.0.1 \
110110
jsonschema==3.0.1 \
111111
--hash=sha256:0c0a81564f181de3212efa2d17de1910f8732fa1b71c42266d983cd74304e20d \
112112
--hash=sha256:a5f6559964a3851f59040d3b961de5e68e70971afb88ba519d27e6a039efff1a
113-
newrelic==4.14.0.115 \
114-
--hash=sha256:b0f2ef6c817d9b5389cb3ef0f06037abbd1c1ed1a4ae04f293dadeb0f78ea924
113+
newrelic==4.16.1.117 \
114+
--hash=sha256:23aead34b5ea4d0492d65069d3ab41eb1c276b3b237d0d0c2c213fbb4e1b32b6
115115
psycopg2==2.7.7 \
116116
--hash=sha256:5d222983847b40af989ad96c07fc3f07e47925e463baa5de716be8f805b41d9b \
117117
--hash=sha256:36b60201b6d215d7658a71493fdf6bd5e60ad9a0cffed39906627ff9f4f3afd3 \
@@ -177,12 +177,12 @@ pyjexl==0.2.3 \
177177
pytest-django==3.4.8 \
178178
--hash=sha256:30d773f1768e8f214a3106f1090e00300ce6edfcac8c55fd13b675fe1cbd1c85 \
179179
--hash=sha256:4d3283e774fe1d40630ee58bf34929b83875e4751b525eeb07a7506996eb42ee
180-
pytest==4.3.1 \
181-
--hash=sha256:592eaa2c33fae68c7d75aacf042efc9f77b27c08a6224a4f59beab8d9a420523 \
182-
--hash=sha256:ad3ad5c450284819ecde191a654c09b0ec72257a2c711b9633d677c71c9850c4
183-
pytest-mock==1.10.2 \
184-
--hash=sha256:3cbae151d5885bb7565ba5a1e6e44cc3d6f72f44de3be21a11a587e2d5f9155f \
185-
--hash=sha256:cbec53e7cb0f2b57275220cb4f2822093ac89e486095555105ffe1a4e2f11df4
180+
pytest==4.4.0 \
181+
--hash=sha256:13c5e9fb5ec5179995e9357111ab089af350d788cbc944c628f3cde72285809b \
182+
--hash=sha256:f21d2f1fb8200830dcbb5d8ec466a9c9120e20d8b53c7585d180125cce1d297a
183+
pytest-mock==1.10.3 \
184+
--hash=sha256:330bfa1a71c9b6e84e2976f01d70d8a174f755e7f9dc5b22f4b7335992e1e98b \
185+
--hash=sha256:cea3983a1ebc88bf7c0fa1ed8c84e67b898bf71a320a49605bcb74f31e6cfd6a
186186
pytest-testrail==2.3.3 \
187187
--hash=sha256:d1981ff94fb28b485fa51c28042ea728bab5362b4f08de86aa849d398aede6fc
188188
raven==6.10.0 \
@@ -217,11 +217,10 @@ kinto-http==10.3.0 \
217217
--hash=sha256:ffaa9a81b3def3707eb05780f1d66f16c71ac0a21a34de7e21f16236ad0564dc
218218
untangle==1.1.1 \
219219
--hash=sha256:e7cfa1ad57707e6b74cfea8b9fc50f7cbe9bbaf18401cc9d72192002bcd80bcb
220-
drf-yasg==1.14.0 \
221-
--hash=sha256:a276bc90af1902b1bd9c11927f75658da1a62aad2d87022ae5f653106ed09a17 \
222-
--hash=sha256:ca17555127f8ac59d51c2bf721eff83b46ae20a8626c033f186a4c4d7d6053f4
220+
drf-yasg==1.15.0 \
221+
--hash=sha256:2c03c569cd1f1711e30efe3a1a56998cf61aa224cb2991e9fdac22aa47fd41e5 \
222+
--hash=sha256:dfb96eb36b259c2e0da67515319a25e49f6bdd3a275412f34221cc5236d2b62a
223223
fastecdsa==1.7.1 \
224224
--hash=sha256:ca3b70122a95a310020758924f0772527bf4758b830460b87fa948d87ca2205d \
225225
--hash=sha256:018c5aed286ccc81d858593a08fb5600bead4183969f934fec05aaa2249f0c3f \
226226
--hash=sha256:3e493b03050484c4f48ba2a96933908baea49d64a12358e22fd9bff38c483bbd
227-

requirements/docs.txt

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -3,9 +3,9 @@
33
sphinx_rtd_theme==0.4.3 \
44
--hash=sha256:00cf895504a7895ee433807c62094cf1e95f065843bf3acd17037c3e9a2becd4 \
55
--hash=sha256:728607e34d60456d736cc7991fd236afb828b21b82f956c5ea75f94c8414040a
6-
Sphinx==1.8.5 \
7-
--hash=sha256:9f3e17c64b34afc653d7c5ec95766e03043cc6d80b0de224f59b6b6e19d37c3c \
8-
--hash=sha256:c7658aab75c920288a8cf6f09f244c6cfdae30d82d803ac1634d9f223a80ca08
6+
Sphinx==2.0.0 \
7+
--hash=sha256:5a54f9132766c8ffdd4021de4d0ef8afeb93235569d64b617612e60070332583 \
8+
--hash=sha256:91b29c8e98d18ed474bb92777e7af31931fae96e625b8f1bc595c67fb641c46d
99
sphinxcontrib-httpdomain==1.7.0 \
1010
--hash=sha256:1fb5375007d70bf180cdd1c79e741082be7aa2d37ba99efe561e1c2e3f38191e \
1111
--hash=sha256:ac40b4fba58c76b073b03931c7b8ead611066a6aebccafb34dc19694f4eb6335

requirements/py36_docs.txt

Lines changed: 20 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -26,26 +26,26 @@ bcrypt==3.1.6 \
2626
--hash=sha256:9b2c5b640a2da533b0ab5f148d87fb9989bf9bcb2e61eea6a729102a6d36aef9 \
2727
--hash=sha256:28a0459381a8021f57230954b9e9a65bb5e3d569d2c253c5cac6cb181d71cf23 \
2828
--hash=sha256:44636759d222baa62806bbceb20e96f75a015a6381690d1bc2eda91c01ec02ea
29-
protobuf==3.7.0 \
30-
--hash=sha256:03666634d038e35d90155756914bc3a6316e8bcc0d300f3ee539e586889436b9 \
31-
--hash=sha256:049d5900e442d4cc0fd2afd146786b429151e2b29adebed28e6376026ab0ee0b \
32-
--hash=sha256:0eb9e62a48cc818b1719b5035042310c7e4f57b01f5283b32998c68c2f1c6a7c \
33-
--hash=sha256:255d10c2c9059964f6ebb5c900a830fc8a089731dda94a5cc873f673193d208b \
34-
--hash=sha256:358cc59e4e02a15d3725f204f2eb5777fc10595e2d9a9c4c8d82292f49af6d41 \
35-
--hash=sha256:41f1b737d5f97f1e2af23d16fac6c0b8572f9c7ea73054f1258ca57f4f97cb80 \
36-
--hash=sha256:4da3781eba8d3051d75b296d48154014c872e8a6323b8c207174cae49523b628 \
37-
--hash=sha256:6a5129576a2cf925cd100e06ead5f9ae4c86db70a854fb91cedb8d680112734a \
38-
--hash=sha256:80722b0d56dcb7ca8f75f99d8dadd7c7efd0d2265714d68f871ed437c32d82b3 \
39-
--hash=sha256:88a960e949ec356f7016d84f8262dcff2b842fca5355b4c1be759f5c103b19b3 \
40-
--hash=sha256:97872686223f47d95e914881cb0ca46e1bc622562600043da9edddcb54f2fe1e \
41-
--hash=sha256:a1df9d22433ab44b7c7e0bd33817134832ae8a8f3d93d9b9719fc032c5b20e96 \
42-
--hash=sha256:ad385fbb9754023d17be14dd5aa67efff07f43c5df7f93118aef3c20e635ea19 \
43-
--hash=sha256:b2d5ee7ba5c03b735c02e6ae75fd4ff8c831133e7ca078f2963408dc7beac428 \
44-
--hash=sha256:c8c07cd8635d45b28ec53ee695e5ac8b0f9d9a4ae488a8d8ee168fe8fc75ba43 \
45-
--hash=sha256:d44ebc9838b183e8237e7507885d52e8d08c48fdc953fd4a7ee3e56cb9d20977 \
46-
--hash=sha256:dff97b0ee9256f0afdfc9eaa430736cdcdc18899d9a666658f161afd137cf93d \
47-
--hash=sha256:e47d248d614c68e4b029442de212bdd4f6ae02ae36821de319ae90314ea2578c \
48-
--hash=sha256:e650b521b429fed3d525428b1401a40051097a5a92c30076c91f36b31717e087
29+
protobuf==3.7.1 \
30+
--hash=sha256:21e395d7959551e759d604940a115c51c6347d90a475c9baf471a1a86b5604a9 \
31+
--hash=sha256:57e05e16955aee9e6a0389fcbd58d8289dd2420e47df1a1096b3a232c26eb2dd \
32+
--hash=sha256:67819e8e48a74c68d87f25cad9f40edfe2faf278cdba5ca73173211b9213b8c9 \
33+
--hash=sha256:75da7d43a2c8a13b0bc7238ab3c8ae217cbfd5979d33b01e98e1f78defb2d060 \
34+
--hash=sha256:78e08371e236f193ce947712c072542ff19d0043ab5318c2ea46bbc2aaebdca6 \
35+
--hash=sha256:7ee5b595db5abb0096e8c4755e69c20dfad38b2d0bcc9bc7bafc652d2496b471 \
36+
--hash=sha256:86260ecfe7a66c0e9d82d2c61f86a14aa974d340d159b829b26f35f710f615db \
37+
--hash=sha256:92c77db4bd33ea4ee5f15152a835273f2338a5246b2cbb84bab5d0d7f6e9ba94 \
38+
--hash=sha256:9c7b90943e0e188394b4f068926a759e3b4f63738190d1ab3d500d53b9ce7614 \
39+
--hash=sha256:a77f217ea50b2542bae5b318f7acee50d9fc8c95dd6d3656eaeff646f7cab5ee \
40+
--hash=sha256:ad589ed1d1f83db22df867b10e01fe445516a5a4d7cfa37fe3590a5f6cfc508b \
41+
--hash=sha256:b06a794901bf573f4b2af87e6139e5cd36ac7c91ac85d7ae3fe5b5f6fc317513 \
42+
--hash=sha256:bd8592cc5f8b4371d0bad92543370d4658dc41a5ccaaf105597eb5524c616291 \
43+
--hash=sha256:be48e5a6248a928ec43adf2bea037073e5da692c0b3c10b34f9904793bd63138 \
44+
--hash=sha256:cc5eb13f5ccc4b1b642cc147c2cdd121a34278b341c7a4d79e91182fff425836 \
45+
--hash=sha256:cd3b0e0ad69b74ee55e7c321f52a98effed2b4f4cc9a10f3683d869de00590d5 \
46+
--hash=sha256:d6e88c4920660aa75c0c2c4b53407aef5efd9a6e0ca7d2fc84d79aba2ccbda3a \
47+
--hash=sha256:ec3c49b6d247152e19110c3a53d9bb4cf917747882017f70796460728b02722e \
48+
--hash=sha256:f1f5d8b8e0bc9651d81b40ad3d9fb7cdd858ea31fc116dd230393465849dbecd
4949
cffi==1.12.2 \
5050
--hash=sha256:00b97afa72c233495560a0793cdc86c2571721b4271c0667addc83c417f3d90f \
5151
--hash=sha256:0ba1b0c90f2124459f6966a10c03794082a2f3985cd699d7d63c4a8dae113e11 \

0 commit comments

Comments
 (0)