Avoid duplicate inference results for some uses of typing.X constructs like
Tuple[Optional[int], ...]. This was causing pylint to occasionally omit
messages like deprecated-typing-alias.
Started running the tests periodically to detect breakages early.
Added Django 5.0, Python 3.12.
Fixed building with hatchling 1.19. Thanks Michał Górny!
2.1 (2023-06-28)
- Added Django 4.1, 4.2 and Python 3.11 to the CI.
- Removed the pytz dependency from the tests.
- Dropped Python < 3.8, Django < 3.2 from the CI.
- Switched to hatchling and ruff.
Raised the minimum supported versions of Python to 3.6, Django to 2.2.
Added pre-commit.
Replaced the explicit configuration of whether static() should be used or
not with automatic configuration. The static argument is still accepted
but ignored and will be removed at a later time.
Added support for boolean attributes when using Django 4.1 or better.
Released as 1.2.1 and 1.2.2:
Made JS() objects hashable so that they can be put into sets in
preparation for a possible fix for media ordering in Django #30179.
Confirmed support for Django 3.0 and 3.1a1.
Django dropped type="text/javascript" in 3.1, changed our tests to
pass again.
Switched from Travis CI to GitHub actions.
Dropped Django 1.7 from the CI jobs list because it somehow didn't
GH#349: The HTML Cleaner() interpreted an accidentally provided string parameter
for the host_whitelist as list of characters and silently failed to reject any hosts.
Passing a non-collection is now rejected.
Other changes
Support for Python 2.7 and Python versions < 3.6 was removed.
The wheel build was migrated to use cibuildwheel.
Patch by Primož Godec.
5.0.1 (2024-01-05)
Bugs fixed
LP#2046208: Parsing non-BMP Python Unicode strings could fail on macOS.
LP#2044225: When incrementally parsing broken HTML, reporting start events on
missing structural tags failed and could lead to subsequent exceptions.
LP#2045435: Some (not all) issues with stricter C compilers were resolved.
The binary wheels in the 5.0.0 release did not validate cleanly (but installed ok).
.. _latest_release:
5.0.0 (2023-12-29)
Features added
Character escaping in C14N2 serialisation now uses a single pass over the text
instead of searching for each unescaped character separately.
We’ve just uploaded mypy 1.8 to the Python Package Index (PyPI). Mypy is a static type checker for Python. This release includes new features, performance improvements and bug fixes. You can install it as follows:
python3 -m pip install -U mypy
You can read the full documentation for this release on Read the Docs.
Type-checking Improvements
Do not intersect types in isinstance checks if at least one is final (Christoph Tyralla, PR 16330)
Detect that @final class without __bool__ cannot have falsey instances (Ilya Priven, PR 16566)
Do not allow TypedDict classes with extra keywords (Nikita Sobolev, PR 16438)
Do not allow class-level keywords for NamedTuple (Nikita Sobolev, PR 16526)
Make imprecise constraints handling more robust (Ivan Levkivskyi, PR 16502)
Fix strict-optional in extending generic TypedDict (Ivan Levkivskyi, PR 16398)
Allow type ignores of PEP 695 constructs (Shantanu, PR 16608)
Enable type_check_only support for TypedDict and NamedTuple (Nikita Sobolev, PR 16469)
Performance Improvements
Add fast path to analyzing special form assignments (Jukka Lehtosalo, PR 16561)
Improvements to Error Reporting
Don't show documentation links for plugin error codes (Ivan Levkivskyi, PR 16383)
Improve error messages for super checks and add more tests (Nikita Sobolev, PR 16393)
Add markers to Pipfile when parsing requirements.txt [#6008](https://github.com/pypa/pipenv/issues/6008) <https://github.com/pypa/pipenv/issues/6008>_
Fix KeyError when using a source without a name in Pipfile [#6021](https://github.com/pypa/pipenv/issues/6021) <https://github.com/pypa/pipenv/issues/6021>_
Fix a bug with locking projects that contains packages with non canonical names from private indexes [#6056](https://github.com/pypa/pipenv/issues/6056) <https://github.com/pypa/pipenv/issues/6056>_
Vendored Libraries
Update vendored tomlkit to 0.12.3[#6024](https://github.com/pypa/pipenv/issues/6024) <https://github.com/pypa/pipenv/issues/6024>_
Bump version of pipdeptree to 0.13.2 [#6055](https://github.com/pypa/pipenv/issues/6055) <https://github.com/pypa/pipenv/issues/6055>_
[#463](https://github.com/pytest-dev/pluggy/issues/463) <https://github.com/pytest-dev/pluggy/issues/463>_: A warning :class:~pluggy.PluggyTeardownRaisedWarning is now issued when an old-style hookwrapper raises an exception during teardown.
See the warning documentation for more details.
[#471](https://github.com/pytest-dev/pluggy/issues/471) <https://github.com/pytest-dev/pluggy/issues/471>_: Add :func:PluginManager.unblock <pluggy.PluginManager.unblock> method to unblock a plugin by plugin name.
Bug Fixes
[#441](https://github.com/pytest-dev/pluggy/issues/441) <https://github.com/pytest-dev/pluggy/issues/441>_: Fix :func:~pluggy.HookCaller.call_extra() extra methods getting ordered before everything else in some circumstances. Regressed in pluggy 1.1.0.
[#438](https://github.com/pytest-dev/pluggy/issues/438) <https://github.com/pytest-dev/pluggy/issues/438>_: Fix plugins registering other plugins in a hook when the other plugins implement the same hook itself. Regressed in pluggy 1.1.0.
#11140: Fix non-string constants at the top of file being detected as docstrings on Python>=3.8.
#11572: Handle an edge case where sys.stderr{.interpreted-text role="data"} and sys.__stderr__{.interpreted-text role="data"} might already be closed when faulthandler{.interpreted-text role="ref"} is tearing down.
#11710: Fixed tracebacks from collection errors not getting pruned.
#7966: Removed unhelpful error message from assertion rewrite mechanism when exceptions are raised in __iter__ methods. Now they are treated un-iterable instead.
Improved Documentation
#11091: Updated documentation to refer to hyphenated options: replaced --junitxml with --junit-xml and --collectonly with --collect-only.
Bumps the python-packages group with 21 updates:
3.0.1
3.0.2
4.12.2
4.12.3
0.3.7
0.3.8
4.2.8
4.2.9
2.1.0
2.2.0
1.3
1.4
2.1.0
2.2.0
4.2.6
4.2.7
4.2.5
4.2.7
5.12.0
5.13.2
1.9.0
1.10.0
0.22.0
0.23.0
4.9.3
5.1.0
1.7.1
1.8.0
2023.11.15
2023.11.17
1.3.0
1.4.0
3.0.2
3.0.3
7.4.3
7.4.4
1.0.0
1.0.1
4.8.0
4.9.0
2023.3
2023.4
Updates
astroid
from 3.0.1 to 3.0.2Changelog
Sourced from astroid's changelog.
Commits
e6dea9c
Bump astroid to 3.0.2, update changelog (#2343)7cad63a
Avoid duplicate inference results forTuple[Optional[int], ...]
(#2340) (#2...d57c912
Disable test_crypt_brain on Python >= 3.13 (#2328) (#2329)d511533
Avoid changing release numberUpdates
beautifulsoup4
from 4.12.2 to 4.12.3Updates
distlib
from 0.3.7 to 0.3.8Changelog
Sourced from distlib's changelog.
Commits
ab5f8e7
Changes for 0.3.8.86bb212
Update change log.488599f
Updates based on flake8 checks.0e261af
Use legacy version implementation for Python itself.8242f39
Update copyright years.e27569b
Fix #208: Handle deprecation removals in Python 3.13.65a014b
Update requirements and CI matrix.124108a
Skip test for non-final Python versions.ff48e09
Fix #206: include tox.ini in sdist.eeaa18d
Fix #204: Use symlinks in venv creation during test.Updates
django
from 4.2.8 to 4.2.9Commits
f339c4c
[4.2.x] Bumped version for 4.2.9 release.0a4c5e5
[4.2.x] Added release date for 4.2.9.ca43990
[4.2.x] Fixed #35012 -- Restored wrapping admin fieldsets with multiple field...d9ba0ea
[4.2.x] Added stub release notes for 4.2.9.a315e82
[4.2.x] Post-release version bump.Updates
django-js-asset
from 2.1.0 to 2.2.0Changelog
Sourced from django-js-asset's changelog.
... (truncated)
Commits
18496be
django-js-asset 2.200c30ce
Add Django 5.0, Python 3.12, update pre-commit hooks4862bea
Merge pull request #12 from mgorny/hatchling440ad30
Fix building with hatchling-1.1958e313f
Hooks36762c1
Add Django 5.0a1 to the CIbce32f1
Run tests periodicallyUpdates
django-sass-processor
from 1.3 to 1.4Changelog
Sourced from django-sass-processor's changelog.
Commits
39a479e
Release 1.4 (#177)cc79308
Merge pull request #176 from washeck/test-matrixb059371
Update compatibility claims and testing matrixUpdates
django-solo
from 2.1.0 to 2.2.0Release notes
Sourced from django-solo's releases.
Changelog
Sourced from django-solo's changelog.
Commits
b84391d
Release 2.2.0 (#133)0c71f74
Support Django 5.0 and drop EOL Django 4.0 and 4.1 (#132)08e68bc
Add support for Python 3.12, drop support for Python 3.7 (#131)Updates
django-stubs
from 4.2.6 to 4.2.7Commits
e1184c7
Version 4.2.7 release (django-stubs, django-stubs-ext) (#1856)fb0908a
AddedModel._do_update()
method signature (#1854)9720b27
FixedTemplateResponse.cookies
attribute andSimpleCookie
type (#1702)197f0e3
Fix Self typed custom queryset methods incompatible with base queryset type (...bfa4590
Unify plugin check for model type info (#1853)5d54ac4
Updatedjango.core.management.commands.*
(#1829)53cdbe4
ImproveManyToManyDescriptor
and fixModel.\<manytomany>.through
typing (#...0a61d81
Bump mypy from 1.7.0 to 1.7.1 (#1850)82c394f
[pre-commit.ci] pre-commit autoupdate (#1848)e37cef0
MakeRelatedManager
,ManyRelatedManager
to inherit fromManager
not `Ba...Updates
django-stubs-ext
from 4.2.5 to 4.2.7Commits
e1184c7
Version 4.2.7 release (django-stubs, django-stubs-ext) (#1856)fb0908a
AddedModel._do_update()
method signature (#1854)9720b27
FixedTemplateResponse.cookies
attribute andSimpleCookie
type (#1702)197f0e3
Fix Self typed custom queryset methods incompatible with base queryset type (...bfa4590
Unify plugin check for model type info (#1853)5d54ac4
Updatedjango.core.management.commands.*
(#1829)53cdbe4
ImproveManyToManyDescriptor
and fixModel.\<manytomany>.through
typing (#...0a61d81
Bump mypy from 1.7.0 to 1.7.1 (#1850)82c394f
[pre-commit.ci] pre-commit autoupdate (#1848)e37cef0
MakeRelatedManager
,ManyRelatedManager
to inherit fromManager
not `Ba...Updates
isort
from 5.12.0 to 5.13.2Release notes
Sourced from isort's releases.
... (truncated)
Changelog
Sourced from isort's changelog.
Commits
c655831
Merge pull request #2214 from PyCQA/version/5.13.2b4335b4
Prepare version 5.13.2c36e43c
Merge pull request #2184 from bp72/issue/2154e38702f
Merge pull request #2213 from davidculley/confine-precommit-to-stagesee8d87f
Add fix for the error found by hypothesis5849ec2
Apply the bracket fix from issue 471 only for use_parentheses=Truedf0e119
confine pre-commit to stages9255bca
Merge pull request #2212 from PyCQA/bugfix/#2211-colors-extra5336d7d
Fix colors extras643d9c4
Merge pull request #2210 from PyCQA/version/5.13.1Updates
lazy-object-proxy
from 1.9.0 to 1.10.0Changelog
Sourced from lazy-object-proxy's changelog.
Commits
aa46e84
Bump version: 1.9.0 → 1.10.07b32ae5
Update changelog.940c8c6
Bail out early if extensions would be disabled.dab21f7
Fix broken link.2ca62af
Xfail these till I can figure it out.4aab407
Manually spec setuptools for that inplace building.2f8bed2
Make sure the C ext is not build on PyPy (if it builds it would segfault and ...f633fd3
Spelling.b8e223a
Fix a bunch of lint issues.ff7459e
First batch of ruff/black autorefactors/format.Updates
libsass
from 0.22.0 to 0.23.0Commits
Updates
lxml
from 4.9.3 to 5.1.0Changelog
Sourced from lxml's changelog.
... (truncated)
Commits
82a4260
Prepare release of 5.1.0.3eafa61
Merge branch 'lxml-5.0'eb5cd98
Prepare release of 5.0.1.f4b8be5
docs: Shorten the list of old versions on the main website.9496a79
Update changelog.c13c5af
Remove some dead Py2 code.5bba8c4
Remove some dead Py2 code.5fa0cd5
Cleaner: Validate that host_whitelist is not a string (GH-349)ff88377
Remove accidentally duplicated code.7244b43
Merge branch 'lxml-5.0'Updates
mypy
from 1.7.1 to 1.8.0Changelog
Sourced from mypy's changelog.
... (truncated)
Commits
3b46750
remove +dev suffix from versionc9bc833
Fix tests broken by hatchling (#16655)60d30e3
Fix crash with type alias toCallable[[Unpack[Tuple[Any, ...]]], Any]
(#16541)f53f422
Allow type ignores of PEP 695 constructs (#16608)7c33e7c
@final
class without bool cannot have falsey instances (#16566)c224da5
Do not intersect types in isinstance checks if at least one is final (#16330)d54cc35
Change example in test cases with no stubs available (#16513)eb1ee97
Update hashes insync-typeshed.py
following recent typeshed sync (#16600)344298e
Revert use ofParamSpec
forfunctools.wraps
3e5d813
Revert typeshed ctypes changeUpdates
pipenv
from 2023.11.15 to 2023.11.17Release notes
Sourced from pipenv's releases.
Changelog
Sourced from pipenv's changelog.
Commits
7a640f2
Release v2023.11.17d202fac
Bumped version to 2023.11.17.542554e
upgrade sphinx due to release script bug624ec01
Vendoring in pip-23.3.2 (#6064)0379507
Update release script to enforce semver going forward in 2024 (#6052)eaca109
Merge pull request #6049 from Suprithvarma1/pipit9217384
Merge pull request #6055 from pypa/vendor-bump-pipdeptreecdaaa30
Bump jinja2 from 3.1.2 to 3.1.3463d9c8
built index mapping using canonical package names instead of raw package namesdc26121
fixed a bug with locking packages with uncanonical namesUpdates
pluggy
from 1.3.0 to 1.4.0Changelog
Sourced from pluggy's changelog.
Commits
2efd28e
Preparing release 1.4.0ebeb2f2
Merge pull request #471 from bluetech/unblock3a28b4d
Merge pull request #464 from bluetech/hookwrapper-teardown-warning4331b7a
Merge pull request #473 from bluetech/iterator-invalidation7aef3e6
hooks: fix plugins registering other plugins in a hookcc36605
Merge pull request #472 from bluetech/call-extra-ordering-fix443fee6
hooks: fixcall_extra
extra methods getting ordered before everything else4577b45
hooks: add comment describing_hookimpls
's format/invariants.13b3661
AddPluginManager.unblock
method to unblock a name4b5b2d4
CHANGELOG: fix errors in 1.0.0 entryUpdates
pylint
from 3.0.2 to 3.0.3Commits
1a5ffc1
Bump pylint to 3.0.3, update changelog54687e7
Disallow isort 5.13.0 (#9290) (#9292)fea5483
[wrong-exception-operation] Fix FP for tuple concatenation of exception types...d0d5c91
[pointless-string-statement] Ignore docstrings on py3.12 type aliases (#9269)...81f0f2e
[Backport maintenance/3.0.x] [bugfix] Find files with ./ as input with a __in...7f01d83
Fix doc generation in implicit-str-concata60ddd1
Fix incorrect suggestion for unnecessary-comprehension (#9172) (#9242)dc11223
[todos] Fix the todos version and the warnings' text (#9202) (#9204)0273db7
Fix false positive forunnecessary-lambda
. (#9149) (#9200)53d4541
Fixundefined-variable
etc for Python 3.12 generic type syntax (#9195) (#9199)Updates
pytest
from 7.4.3 to 7.4.4Release notes
Sourced from pytest's releases.
Commits
33f694f
Prepare release version 7.4.476c107c
Merge pull request #11751 from bluetech/backport-11143-to-7.4.x531d76d
[7.4.x] Improve reporting from iter exceptions (#11749)a0f58fa<... _Description has been truncated_