This MR contains the following updates:
|alembic (source, changelog)||
|pytest (source, changelog)||
|watchfiles (source, changelog)||
- Improve the NoAppError to help diagnose why the app has not been found.
- Log cancelled requests as well as successful to aid diagnositics of failures.
- Use more modern asyncio apis. This will hopefully fix reported memory leak issues.
- Bugfix only load the application in the main process if the reloader is being used.
- Bugfix Autoreload error because reausing old sockets.
- Bugfix scope client usage for sock binding.
- Bugfix disable multiprocessing if number of workers is 0 to support systems that don't support multiprocessing.
- Fix a performance problem with HTML extraction where large HTML input could trigger quadratic line counting behavior (#1392).
- Improve and expand type annotations in the code base (#1394).
Backwards incompatible changes
- Dropped support for Python 3.7. (#709)
- Add support for Python 3.12. (#710)
- Fix linkify with arrays in querystring (#436)
- Handle more cases with < followed by character data (#705)
- Fix entities inside a tags in linkification (#704)
- Update cap for tinycss2 to <1.3 (#702)
- Updated Sphinx requirement
- Add dependabot for github actions and update github actions
This is a major update to the library, but since email address specs haven't changed there should be no significant changes to which email addresses are considered valid or invalid with default options. There are new options for accepting unusual email addresses that were previously always rejected, some changes to how DNS errors are handled, many changes in error message text, and major internal improvements including the addition of type annotations. Python 3.7+ is now required. Details follow:
- Python 2.x and 3.x versions through 3.6, and dnspython 1.x, are no longer supported. Python 3.7+ with dnspython 2.x are now required.
- The dnspython package is no longer required if DNS checks are not used, although it will install automatically.
- NoNameservers and NXDOMAIN DNS errors are now handled differently: NoNameservers no longer fails validation, and NXDOMAIN now skips checking for an A/AAAA fallback and goes straight to failing validation.
- Some syntax error messages have changed because they are now checked explicitly rather than as a part of other checks.
- The quoted-string local part syntax (e.g. multiple @-signs, spaces, etc. if surrounded by quotes) and domain-literal addresses (e.g. @[192.XXX...] or @[IPv6:...]) are now parsed but not considered valid by default. Better error messages are now given for these addresses since it can be confusing for a technically valid address to be rejected, and new allow_quoted_local and allow_domain_literal options are added to allow these addresses if you really need them.
- Some other error messages have changed to not repeat the email address in the error message.
ValidatedEmailobject has been renamed to
normalizedto be clearer about its importance, but access via
- Some mailbox names like
postmasterare now normalized to lowercase per RFC 2142.
- The library has been reorganized internally into smaller modules.
- The tests have been reorganized and expanded. Deliverability tests now mostly use captured DNS responses so they can be run off-line.
- The main tool now reads options to validate_email from environment variables.
- Type annotations have been added to the exported methods and the ValidatedEmail class and some internal methods.
- The old dict-like pattern for the return value of validate_email is deprecated.
Versions 2.0.0.post1 and 2.0.0.post2 corrected some packaging issues. 2.0.0.post2 also added a check for an invalid combination of arguments.
We'd like to thank all the contributors who worked on this release!
Full Changelog: https://github.com/cunla/fakeredis-py/compare/v2.19.0...v2.20.0
- Allow users to subclass FileLock with custom keyword arguments by @hmaarrfk in https://github.com/tox-dev/filelock/pull/284
Full Changelog: https://github.com/tox-dev/filelock/compare/3.13.0...3.13.1
- Support reentrant locking on lock file path via optional singleton instance by @nefrob in https://github.com/tox-dev/filelock/pull/283
Full Changelog: https://github.com/tox-dev/filelock/compare/3.12.4...3.13.0
- Add missing type hints to few
Response.encodingbeing set after
Response.texthas been accessed. (#2852)
- Drop support for Python 3.7. (#2813)
- Support HTTPS proxies. (#2845)
- Change the type of
MutableMapping[Str, Any]. (#2803)
Response.raise_for_status()method now returns the response instance. For example:
data = httpx.get('...').raise_for_status().json(). (#2776)
500error response instead of exceptions when
raise_app_exceptions=Falseis set on
- Ensure all
WSGITransportenvirons have a
- Always encode forward slashes as
%2Fin query parameters (#2723)
- Use Mozilla documentation instead of
httpstatuses.comfor HTTP error reference (#2768)
- Fix debug assert failure on 3.12
orjsonmodule metadata explicitly marks subinterpreters as not supported.
- Improve performance.
- Drop support for Python 3.7.
New API for filters in Python
Shallow repositories: New
depthoptional argument for
Release GIL in
Type hints for submodule functions in
Support Python 3.12
v7.4.3: pytest 7.4.3 (2023-10-24)
#10447: Markers are now considered in the reverse mro order to ensure base class markers are considered first -- this resolves a regression.
:=in asserts impacting unrelated test cases.
#11439: Handled an edge case where :data:
sys.stderrmight already be closed when :ref:
faulthandleris tearing down.
--dist=loadscopenow sorts scopes by number of tests to assign largest scopes early -- in many cases this should improve overall test session running time, as there is less chance of a large scope being left to be processed near the end of the session, leaving other workers idle.
#​963 <https://github.com/pytest-dev/pytest-xdist/issues/963>_: Wait for workers to finish reporting when test run stops early.
This makes sure that the results of in-progress tests are displayed. Previously these reports were being discarded, losing information about the test run.
#​965 <https://github.com/pytest-dev/pytest-xdist/issues/965>_: Added support for Python 3.12.
- Improve the performance when parsing a table with nested dotted keys. (#193)
- Keep the newlines when replacing a table. (#323)
- Revert mkdocs-material from 9.1.21 to 9.2.6 (#2148) 05/11/23
- Add Python 3.12 support, drop Python 3.7 support by @gi0baro in https://github.com/samuelcolvin/watchfiles/pull/248
- @gi0baro made their first contribution in https://github.com/samuelcolvin/watchfiles/pull/248
- Bump pymdown-extensions from 9.5 to 10.0 in /requirements by @dependabot in https://github.com/samuelcolvin/watchfiles/pull/229
- Bump pygments from 2.13.0 to 2.15.0 in /requirements by @dependabot in https://github.com/samuelcolvin/watchfiles/pull/237
- Allow maturin 1.x by @heirecka in https://github.com/samuelcolvin/watchfiles/pull/233
- Fix: Memory leak of PyO3 by @koseki2580 in https://github.com/samuelcolvin/watchfiles/pull/240
- Improve debug by @samuelcolvin in https://github.com/samuelcolvin/watchfiles/pull/242
- add grace period during which file changes are ignored by @samuelcolvin in https://github.com/samuelcolvin/watchfiles/pull/243
- Add ignore_permission_denied option by @aminalaee in https://github.com/samuelcolvin/watchfiles/pull/224
SIGTERMand kill running process before exitting by @samuelcolvin in https://github.com/samuelcolvin/watchfiles/pull/244
- @dependabot made their first contribution in https://github.com/samuelcolvin/watchfiles/pull/229
- @heirecka made their first contribution in https://github.com/samuelcolvin/watchfiles/pull/233
- @koseki2580 made their first contribution in https://github.com/samuelcolvin/watchfiles/pull/240
- @aminalaee made their first contribution in https://github.com/samuelcolvin/watchfiles/pull/224
If you want to rebase/retry this MR, check this box
This MR has been generated by Renovate Bot.