Black is now officially tested with Python 3.13 and provides Python 3.13
mypyc-compiled wheels. (#4436) (#4449)
Black will issue an error when used with Python 3.12.5, due to an upstream memory
safety issue in Python 3.12.5 that can cause Black's AST safety checks to fail. Please
use Python 3.12.6 or Python 3.12.4 instead. (#4447)
Black no longer supports running with Python 3.8 (#4452)
Stable style
Fix crashes involving comments in parenthesised return types or X | Y style unions.
(#4453)
Fix skipping Jupyter cells with unknown %% magic (#4462)
Preview style
Fix type annotation spacing between * and more complex type variable tuple (i.e. def fn(*args: *tuple[*Ts, T]) -> None: pass) (#4440)
Caching
Fix bug where the cache was shared between runs with and without --unstable (#4466)
Packaging
Upgrade version of mypyc used to 1.12 beta (#4450) (#4449)
blackd now requires a newer version of aiohttp. (#4451)
Output
Added Python target version information on parse error (#4378)
Add information about Black version to internal error messages (#4457)
Black is now officially tested with Python 3.13 and provides Python 3.13
mypyc-compiled wheels. (#4436) (#4449)
Black will issue an error when used with Python 3.12.5, due to an upstream memory
safety issue in Python 3.12.5 that can cause Black's AST safety checks to fail. Please
use Python 3.12.6 or Python 3.12.4 instead. (#4447)
Black no longer supports running with Python 3.8 (#4452)
Stable style
Fix crashes involving comments in parenthesised return types or X | Y style unions.
(#4453)
Fix skipping Jupyter cells with unknown %% magic (#4462)
Preview style
Fix type annotation spacing between * and more complex type variable tuple (i.e. def fn(*args: *tuple[*Ts, T]) -> None: pass) (#4440)
Caching
Fix bug where the cache was shared between runs with and without --unstable (#4466)
Packaging
Upgrade version of mypyc used to 1.12 beta (#4450) (#4449)
blackd now requires a newer version of aiohttp. (#4451)
Output
Added Python target version information on parse error (#4378)
Add information about Black version to internal error messages (#4457)
We’ve just uploaded mypy 1.12 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.
Support Python 3.12 Syntax for Generics (PEP 695)
Support for the new type parameter syntax introduced in Python 3.12 is now enabled by default,
documented, and no longer experimental. It was available through a feature flag in
mypy 1.11 as an experimental feature.
This example demonstrates the new syntax:
# Generic function
def f[T](https://github.com/python/mypy/blob/master/x: T) -> T: ...
reveal_type(f(1)) # Revealed type is 'int'
Generic class
class C[T]:
def init(self, x: T) -> None:
self.x = x
c = C('a')
reveal_type(c.x) # Revealed type is 'str'
A large long-overdue modernization of the codebase!
Python 2 is no longer supported. Python 3.12 support was added along with fixed CI for 3.7 and 3.8, courtesy of @jayvdb
As a result of all this, setup.py's lint subcommand was removed. Please run the commands directly instead.
You can now specify blocks of code that exclude linting with NOLINTBEGIN and NOLINTEND, courtesy of @n3world (cpplint/cpplint#213)
The --filter option can now be only applied to a specific file or even a specific line through utilizing colons, e.g. -filter=-whitespace:foo.h,+whitespace/braces:foo.h:418. Courtesy of @PhilLab (cpplint/cpplint#171)
NOLINT and NOLINTNEXTLINE comments now support a comma-separated list of categories, courtesy of @n3world (cpplint/cpplint#220)
NOLINT and NOLINTNEXTLINE will now ignore categories known to be from clang-tidy thanks to @xatier (cpplint/cpplint#231)
build/include-what-you-use no longer supports transitive headers from the header for the current module for parity with the style guide by @aaronliu0130
The check for C-style casts now looks for the standard fixed-width integer typenames instead of non-standard ones (e.g. int32_t instead of int32) thanks to @nate-thirdwave (cpplint/cpplint#282)
"complex.h" will be treated as the C99 header instead of the legacy C++ header by @tkruse (cpplint/cpplint#219)
Many features not blocked in Google's style guide will no longer be erred own thanks to @aaronliu0130
As part of this, the build/c++14 and build/c++tr1 categories were removed.
The filesystem header will now also be blocked, and the build/c++17 category has been added.
We will no longer bother you if you mark a no-arg constructor as explicit thanks to @markww (cpplint/cpplint#227)
In the same PR, @aaronliu0130 also decreased the verbosity of nagging to mark single-arg constructors as explicit to 4, as the styleguide includes a major exception to this rule that would be very hard to detect.
You can now specify the name of the CPPLINT.cfg file through --config as long as it is in the same directory, thanks to @gedankenexperimenter (cpplint/cpplint#198)
The new VA_OPT(,) will now be recognized by the Whitespace linter as a function thanks to @elrinor (cpplint/cpplint#237)
The check for including a source file's header file will now scan all files with the same base name. Thanks to @crogre for figuring out what code needed to be changed and @aaronliu0130 for fixing it (cpplint/cpplint#104)
build/class and build/namespaces no longer check for whether a namespace or class has a closing brace from @geoffviola (cpplint/cpplint#272). This should be done in a more efficient manner by a compiler or language server instead. As part of this, the build/class category was removed.
Fixed false positive when an if/else statement has braces everywhere but one of the closing braces before the final block is on a separate line by @aaronliu0130 (cpplint/cpplint#265)
For header files, the check for a header guard's name will now be cached and only run once, as opposed to previously being run on every line. This results in a ~5.6% reduction in run time thanks to @matyalatte, who figured it out, and @aaronliu0130 for implementing it (cpplint/cpplint#291)
This is another release of dialect improvements and rule bugfixes. Notably:
More robust algorithms for the indentation of Jinja template tags in LT02.
The github-annotation-native format option now has groups for each filename.
There's also a refactor of where we guides and howtos in the docs. Keep an eye on that section going forward for more information about best practice and troubleshooting for SQLFluff.
Even in this small PR, we've seen two new contributors. Welcome @nspcc-cm & @rogalski to the project!
What’s Changed
BigQuery: Support Tuple syntax in other locations (#6328) @keraion
Trino: Fix rule interactions with lambda functions (#6327) @keraion
This release is primarily housekeeping, bugfixes and dialect improvements. More specifically:
Resolving regressions in JJ01, filename extension handling and the treatment of unfixable/unparsable files, which have been noticed with recent releases.
Resolving bugs in LT07 & LT12 which relate to jinja whitespace control.
This is another release of dialect improvements and rule bugfixes. Notably:
More robust algorithms for the indentation of Jinja template tags in LT02.
The github-annotation-native format option now has groups for each filename.
There's also a refactor of where we guides and howtos in the docs. Keep an eye
on that section going forward for more information about best practice and
troubleshooting for SQLFluff.
Even in this small PR, we've seen two new contributors. Welcome
@nspcc-cm & @rogalski
to the project!
What’s Changed
BigQuery: Support Tuple syntax in other locations #6328@keraion
Trino: Fix rule interactions with lambda functions #6327@keraion
Bumps the pip group with 11 updates in the /dependencies/python directory:
24.7.0
24.9.2
24.8.0
24.10.0
1.11.2
1.12.0
1.10.3
1.16.1
24.3.0
24.8.0
1.6.1
2.0.0
3.1.1
3.2.3
8.18.2
8.23.0
0.6.2
0.6.9
3.2.6
3.3.1
3.2.236
3.2.262
Updates
ansible-lint
from 24.7.0 to 24.9.2Release notes
Sourced from ansible-lint's releases.
Commits
3b5bee1
Fix github action (#4342)712b530
Fix missing MatchErrors due to hash collisions (#4307)cd3dbd0
Remove requirement of options field in argument_specs.yaml (#4291)4e3058f
Correct use of working directory with ansible-lint github action (#4340)571711f
Avoid running application initialization twice (#4335)9d63816
Handle bare exception case from nested jinja2 vars (#4315)242fea0
Move PYTEST_REQPASS to tox.ini to allow its update from forks (#4339)763880a
Require ansible-compat>=24.9.1 (#4336)8d9fe1d
Bump coactions/dynamic-matrix from 1 to 3 (#4294)1bbe6d1
Update execution environment schema (#4334)Updates
black
from 24.8.0 to 24.10.0Release notes
Sourced from black's releases.
Changelog
Sourced from black's changelog.
Commits
1b2427a
Prepare release 24.10.0 (#4471)a22b1eb
Add mypyc 3.13 wheel build (#4449)b7d0e72
Bump AndreMiras/coveralls-python-action from 65c1672f0b8a201702d86c81b79187df...f1a2f92
Include --unstable in cache key (#4466)8d9d18c
Fix skipping Jupyter cells with unknown %% magic (#4462)bbfdba3
Fix docs CI: use venv for uv to fix 'failed to create directory' (#4460)8fb2add
Use builtin generics (#4458)2a45cec
Fix crashes with comments in parentheses (#4453)b4d6d86
Drop Python 3.8 support (#4452)ac018c1
Require newer aiohttp for blackd (#4451)Updates
mypy
from 1.11.2 to 1.12.0Changelog
Sourced from mypy's changelog.
... (truncated)
Commits
f2a39b1
Update version to 1.12.0b4ec37a
Add one more 1.12 changelog item (#17936)cc1c679
Better handling of generic functions in partial plugin (#17925)d65a013
Add latest 1.12 changes to changelog (#17921)2e38965
Fix union callees with functools.partial (#17903)c5d3673
Document ReadOnly (PEP 705) (#17905)964a7a5
Make ReadOnly TypedDict items covariant (#17904)24bfb34
Include CHANGELOG.md in sdists (#17882)21d46ed
documentation for TypeIs (#17821)c692943
Improvements to functools.partial of types (#17898)Updates
cfn-lint
from 1.10.3 to 1.16.1Release notes
Sourced from cfn-lint's releases.
... (truncated)
Changelog
Sourced from cfn-lint's changelog.
... (truncated)
Commits
b16a555
Release v1.16.1 (#3740)c94f5f7
Update CloudFormation schemas to 2024-10-10 (#3736)ee77420
Move requireXor to SpotFleetRequestConfigData (#3737)79689ba
Release v1.16.0 (#3735)2fecc9a
Update requiredXor for Vpc and Subnets (#3734)ced6ec3
Update CloudFormation schemas to 2024-10-03 (#3732)1ed6d41
Add MinActiveInstancesPercent to AutoScalingRollingUpdate (#3733)cdcec02
Update GetAtt type checking (#3731)d61eb8c
Update CloudFormation schemas to 2024-10-03 (#3723)2e8bd3d
Bring back stateful resources json (#3728)Updates
pyink
from 24.3.0 to 24.8.0Release notes
Sourced from pyink's releases.
Changelog
Sourced from pyink's changelog.
Commits
b5bd10b
Add schema support to pyink.9ec49c6
Rebase Pyink to Black v24.8.0.eebe6ee
Usepypa/gh-action-pypi-publish@release/v1
instead of pinning to the specif...Updates
cpplint
from 1.6.1 to 2.0.0Release notes
Sourced from cpplint's releases.
Changelog
Sourced from cpplint's changelog.
Commits
f4363d7
Releasing 2.0.0 (#292)bb925ad
Add piping and cached cppvar to changelog3af1d2e
Fix reading from stdin07f8730
Cache cppvar to improve performance5b2d885
Disable "too-many-positional-arguments"b29d3ee
Fix false positive on concept declaration (#288)820df48
Remove readability/fn_size error throw (#287)a3afd5c
Update silly-sample + gitignore vscode (#253) (#285)b2d18ad
Use standard fixed-width typenames for cast checks (#282)3d9c9d0
fix tox.ini after #277 (#279)Updates
sqlfluff
from 3.1.1 to 3.2.3Release notes
Sourced from sqlfluff's releases.
... (truncated)
Changelog
Sourced from sqlfluff's changelog.
... (truncated)
Commits
Superseded by #6292.