Update all python dependencies
This MR contains the following updates:
Package | Type | Update | Change |
---|---|---|---|
jinja2 (changelog) | dependencies | patch |
3.1.2 -> 3.1.3
|
python-gitlab (changelog) | dependencies | minor |
4.3.0 -> 4.4.0
|
ruff (source, changelog) | dependencies | minor |
^0.1.4 -> ^0.2.0
|
Release Notes
python-gitlab/python-gitlab (python-gitlab)
v4.4.0
Chore
-
chore(deps): update all non-major dependencies (
550f935
) -
chore(deps): update pre-commit hook pycqa/flake8 to v7 (
9a199b6
) -
chore(deps): update dependency jinja2 to v3.1.3 [security] (
880913b
) -
chore(deps): update dependency flake8 to v7 (
20243c5
) -
chore(deps): update all non-major dependencies (
cbc13a6
) -
chore(ci): align upload and download action versions (
dcca59d
) -
chore(deps): update actions/upload-artifact action to v4 (
7114af3
) -
chore(ci): add Python 3.13 development CI job
Add a job to test the development versions of Python 3.13. (ff0c11b
)
- chore(deps): update all non-major dependencies (
369a595
)
Feature
- feat(api): add reviewer_details manager for mergrequest to get reviewers of merge request
Those changes implements 'GET /projects/:id/merge_requests/:merge_request_iid/reviewers' gitlab API call.
Naming for call is not reviewers because reviewers atribute already presen in merge request response (adbd90c
)
-
feat(api): support access token rotate API (
b13971d
) -
feat(api): support single resource access token get API (
dae9e52
)
Fix
- fix(cli): support binary files with
@
notation
Support binary files being used in the CLI with arguments using the
@
notation. For example --avatar @​/path/to/avatar.png
Also explicitly catch the common OSError exception, which is the parent exception for things like: FileNotFoundError, PermissionError and more exceptions.
Remove the bare exception handling. We would rather have the full traceback of any exceptions that we don't know about and add them later if needed.
astral-sh/ruff (ruff)
v0.2.0
Breaking changes
- The
NURSERY
selector cannot be used anymore - Legacy selection of nursery rules by exact codes is no longer allowed without preview enabled
See also, the "Remapped rules" section which may result in disabled rules.
Deprecations
The following rules are now deprecated:
-
missing-type-function-argument
(ANN001
) -
missing-type-args
(ANN002
)
The following command line options are now deprecated:
-
--show-source
; use--output-format full
instead -
--no-show-source
; use--output-format concise
instead -
--output-format text
; usefull
orconcise
instead
The following settings have moved and the previous name is deprecated:
-
ruff.allowed-confusables
→ruff.lint.allowed-confusables
-
ruff.dummy-variable-rgx
→ruff.lint.dummy-variable-rgx
-
ruff.explicit-preview-rules
→ruff.lint.explicit-preview-rules
-
ruff.extend-fixable
→ruff.lint.extend-fixable
-
ruff.extend-ignore
→ruff.lint.extend-ignore
-
ruff.extend-per-file-ignores
→ruff.lint.extend-per-file-ignores
-
ruff.extend-safe-fixes
→ruff.lint.extend-safe-fixes
-
ruff.extend-select
→ruff.lint.extend-select
-
ruff.extend-unfixable
→ruff.lint.extend-unfixable
-
ruff.extend-unsafe-fixes
→ruff.lint.extend-unsafe-fixes
-
ruff.external
→ruff.lint.external
-
ruff.fixable
→ruff.lint.fixable
-
ruff.flake8-annotations
→ruff.lint.flake8-annotations
-
ruff.flake8-bandit
→ruff.lint.flake8-bandit
-
ruff.flake8-bugbear
→ruff.lint.flake8-bugbear
-
ruff.flake8-builtins
→ruff.lint.flake8-builtins
-
ruff.flake8-comprehensions
→ruff.lint.flake8-comprehensions
-
ruff.flake8-copyright
→ruff.lint.flake8-copyright
-
ruff.flake8-errmsg
→ruff.lint.flake8-errmsg
-
ruff.flake8-gettext
→ruff.lint.flake8-gettext
-
ruff.flake8-implicit-str-concat
→ruff.lint.flake8-implicit-str-concat
-
ruff.flake8-import-conventions
→ruff.lint.flake8-import-conventions
-
ruff.flake8-pytest-style
→ruff.lint.flake8-pytest-style
-
ruff.flake8-quotes
→ruff.lint.flake8-quotes
-
ruff.flake8-self
→ruff.lint.flake8-self
-
ruff.flake8-tidy-imports
→ruff.lint.flake8-tidy-imports
-
ruff.flake8-type-checking
→ruff.lint.flake8-type-checking
-
ruff.flake8-unused-arguments
→ruff.lint.flake8-unused-arguments
-
ruff.ignore
→ruff.lint.ignore
-
ruff.ignore-init-module-imports
→ruff.lint.ignore-init-module-imports
-
ruff.isort
→ruff.lint.isort
-
ruff.logger-objects
→ruff.lint.logger-objects
-
ruff.mccabe
→ruff.lint.mccabe
-
ruff.pep8-naming
→ruff.lint.pep8-naming
-
ruff.per-file-ignores
→ruff.lint.per-file-ignores
-
ruff.pycodestyle
→ruff.lint.pycodestyle
-
ruff.pydocstyle
→ruff.lint.pydocstyle
-
ruff.pyflakes
→ruff.lint.pyflakes
-
ruff.pylint
→ruff.lint.pylint
-
ruff.pyupgrade
→ruff.lint.pyupgrade
-
ruff.select
→ruff.lint.select
-
ruff.task-tags
→ruff.lint.task-tags
-
ruff.typing-modules
→ruff.lint.typing-modules
-
ruff.unfixable
→ruff.lint.unfixable
Remapped rules
The following rules have been remapped to new codes:
-
raise-without-from-inside-except
:TRY200
toB904
-
suspicious-eval-usage
:PGH001
toS307
-
logging-warn
:PGH002
toG010
-
static-key-dict-comprehension
:RUF011
toB035
-
runtime-string-union
:TCH006
toTCH010
Stabilizations
The following rules have been stabilized and are no longer in preview:
-
trio-timeout-without-await
(TRIO100
) -
trio-sync-call
(TRIO105
) -
trio-async-function-with-timeout
(TRIO109
) -
trio-unneeded-sleep
(TRIO110
) -
trio-zero-sleep-call
(TRIO115
) -
unnecessary-escaped-quote
(Q004
) -
enumerate-for-loop
(SIM113
) -
zip-dict-keys-and-values
(SIM911
) -
timeout-error-alias
(UP041
) -
flask-debug-true
(S201
) -
tarfile-unsafe-members
(S202
) -
ssl-insecure-version
(S502
) -
ssl-with-bad-defaults
(S503
) -
ssl-with-no-version
(S504
) -
weak-cryptographic-key
(S505
) -
ssh-no-host-key-verification
(S507
) -
django-raw-sql
(S611
) -
mako-templates
(S702
) -
generator-return-from-iter-method
(PYI058
) -
runtime-string-union
(TCH006
) -
numpy2-deprecation
(NPY201
) -
quadratic-list-summation
(RUF017
) -
assignment-in-assert
(RUF018
) -
unnecessary-key-check
(RUF019
) -
never-union
(RUF020
) -
direct-logger-instantiation
(LOG001
) -
invalid-get-logger-argument
(LOG002
) -
exception-without-exc-info
(LOG007
) -
undocumented-warn
(LOG009
)
Fixes for the following rules have been stabilized and are now available without preview:
-
triple-single-quotes
(D300
) -
non-pep604-annotation
(UP007
) -
dict-get-with-none-default
(SIM910
) -
in-dict-keys
(SIM118
) -
collapsible-else-if
(PLR5501
) -
if-with-same-arms
(SIM114
) -
useless-else-on-loop
(PLW0120
) -
unnecessary-literal-union
(PYI030
) -
unnecessary-spread
(PIE800
) -
error-instead-of-exception
(TRY400
) -
redefined-while-unused
(F811
) -
duplicate-value
(B033
) -
multiple-imports-on-one-line
(E401
) -
non-pep585-annotation
(UP006
)
Fixes for the following rules have been promoted from unsafe to safe:
-
unaliased-collections-abc-set-import
(PYI025
)
The following behaviors have been stabilized:
-
module-import-not-at-top-of-file
(E402
) allowssys.path
modifications between imports -
reimplemented-container-builtin
(PIE807
) includes lambdas that can be replaced withdict
-
unnecessary-placeholder
(PIE790
) applies to unnecessary ellipses (...
) -
if-else-block-instead-of-dict-get
(SIM401
) applies toif-else
expressions
Preview features
- [
refurb
] Implementmetaclass_abcmeta
(FURB180
) (#9658) - Implement
blank_line_after_nested_stub_class
preview style (#9155) - The preview rule
and-or-ternary
(PLR1706
) was removed
Bug fixes
- [
flake8-async
] Takepathlib.Path
into account when analyzing async functions (#9703) - [
flake8-return
] - fix indentation syntax error (RET505
) (#9705) - Detect multi-statement lines in else removal (#9748)
-
RUF022
,RUF023
: never add two trailing commas to the end of a sequence (#9698) -
RUF023
: Don't sort__match_args__
, only__slots__
(#9724) - [
flake8-simplify
] - Fix syntax error in autofix (SIM114
) (#9704) - [
pylint
] Show verbatim constant inmagic-value-comparison
(PLR2004
) (#9694) - Removing trailing whitespace inside multiline strings is unsafe (#9744)
- Support
IfExp
with dual string arms ininvalid-envvar-default
(#9734) - [
pylint
] Add__mro_entries__
to known dunder methods (PLW3201
) (#9706)
Documentation
- Removed rules are now retained in the documentation (#9691)
- Deprecated rules are now indicated in the documentation (#9689)
v0.1.15
Preview features
- Error when
NURSERY
selector is used with--preview
(#9682) - Preserve indentation around multiline strings in formatter (#9637)
- [
flake8-return
] Add fixes for all rules (RET505
,RET506
,RET507
,RET508
) (#9595) - [
flake8-simplify
] Add fix forif-with-same-arms
(SIM114
) (#9591) - [
pycodestyle
] Add fix formultiple-imports-on-one-line
(E401
) (#9518) - [
pylint
] Add fix forcollapsible-else-if
(PLR5501
) (#9594) - [
pylint
] Add fix foruseless-else-on-loop
(PLW0120
) (#9590) - [
pylint
] Implementassigning-non-slot
(E0237
) (#9623) - [
pylint
] Implementpotential-index-error
(PLE0643
) (#9545) - [
pylint
] Implementtoo-many-nested-blocks
(PLR1702
) (#9172) - [
ruff
] Add rule to sort__slots__
and__match_args__
(#9564) - [
ruff
] Detect unnecessarydict
comprehensions for iterables (RUF025
) (#9613) - [
ruff
] Guard against use ofdefault_factory
as a keyword argument (RUF026
) (#9651) - [
ruff
] Implementmutable-fromkeys-value
(RUF024
) (#9597)
CLI
- Enable auto-wrapping of
--help
output (#9633)
Bug fixes
- Avoid rendering display-only rules as fixable (#9649)
- Detect automagic-like assignments in notebooks (#9653)
- Generate custom JSON schema for dynamic setting (#9632)
- [
flake8-no-pep420
] Include global--config
when determining namespace packages (#9603) - [
flake8-pie
] Omit bound tuples passed to.startswith
or.endswith
(#9661) - [
flake8-return
] Avoid panic when fixing inlined else blocks (#9657) - [
flake8-return
] Consider exception suppression in unnecessary assignment (#9673) - [
flake8-return
] TakeNoReturn
annotation into account when analyzing implicit returns (#9636) - [
flake8-simplify
] Support inverted returns inneedless-bool
(SIM103
) (#9619) - [
flake8-type-checking
] Add Pydantic'sBaseConfig
to default-copy list (#9650) - [
flake8-type-checking
] Avoid markingInitVar
as a typing-only annotation (#9688) - [
pycodestyle
] Allowdtype
comparisons intype-comparison
(#9676) - [
pydocstyle
] Re-implementlast-line-after-section
(D413
) (#9654)
Documentation
- [
flake8-pytest-style
] Add fix safety documentation forduplicate-parameterize-test-cases
(#9678) - [
pylint
] Documentliteral-membership
fix safety conditions (#9677) - [
isort
] Fix reference toisort
rule code (#9598)
v0.1.14
Preview features
- [
flake8-bugbear
] Add fix forduplicate-value
(B033
) (#9510) - [
flake8-simplify
] Implementenumerate-for-loop
(SIM113
) (#7777) - [
pygrep_hooks
] Add fix fordeprecated-log-warn
(PGH002
) (#9519) - [
pylint
] Implementimport-private-name
(C2701
) (#5920) - [
refurb
] Implementregex-flag-alias
with fix (FURB167
) (#9516) - [
ruff
] Add rule and fix to sort contents of__all__
(RUF022
) (#9474) - [
tryceratops
] Add fix forerror-instead-of-exception
(TRY400
) (#9520)
Rule changes
- [
flake8-pyi
] FixPYI047
false negatives on PEP-695 type aliases (#9566) - [
flake8-pyi
] FixPYI049
false negatives on call-basedTypedDict
s (#9567) - [
pylint
] Excludeself
andcls
when counting method arguments (PLR0917
) (#9563)
CLI
-
--show-settings
displays active settings in a far more readable format (#9464) - Add
--extension
support to the formatter (#9483)
Configuration
- Ignore preview status for fixable and unfixable selectors (#9538)
- [
pycodestyle
] Use the configured tab size when expanding indents (#9506)
Bug fixes
- Recursively visit deferred AST nodes (#9541)
- Visit deferred lambdas before type definitions (#9540)
- [
flake8-simplify
] Avoid some moreenumerate-for-loop
false positives (SIM113
) (#9515) - [
pandas-vet
] Limit inplace diagnostics to methods that accept inplace (#9495) - [
pylint
] Add the__prepare__
method to the list of recognized dunder method (#9529) - [
pylint
] Ignore unnecessary dunder calls within dunder definitions (#9496) - [
refurb
] Avoid bailing whenreimplemented-operator
is called on function (FURB118
) (#9556) - [
ruff
] Avoid treating named expressions as static keys (RUF011
) (#9494)
Documentation
- Add instructions on using
noqa
with isort rules (#9555) - Documentation update for URL giving 'page not found' (#9565)
- Fix admonition in dark mode (#9502)
- Update contributing docs to use
cargo bench -p ruff_benchmark
(#9535) - Update emacs integration section to include
emacs-ruff-format
(#9403) - [
flake8-blind-except
] Document exceptions toblind-except
rule (#9580)
v0.1.13
Bug fixes
- Include base pyproject when initializing cache settings (#9480)
- [
flake8-simplify
] Account for possibly-empty f-string values in truthiness logic (#9484) - [
pylint
] Add the missing period inunnecessary-dunder-call
(#9485) - [
pylint
] Fix__aenter__
message inunnecessary-dunder-call
(#9492)
v0.1.12
Preview features
- Formatter: Hug multiline-strings in preview style (#9243)
- [
flake8-bandit
] Addssl-with-no-version
(S504
) (#9384) - [
flake8-bandit
] Implementssl-insecure-version
(S502
) (#9390) - [
flake8-bandit
] Implementssl-with-bad-defaults
(S503
) (#9391) - [
flake8-bandit
] Implement suspicious import rules (S4XX
) (#8831) - [
flake8-simplify
] Implementzip-dict-keys-and-values
(SIM911
) (#9460) - [
pyflakes
] Add a fix forredefined-while-unused
(F811
) (#9419) - [
pylint
] Implementunnecessary-dunder-call
(C2801
) (#9166) - [
ruff
] Addparenthesize-chained-operators
(RUF021
) to enforce parentheses ina or b and c
(#9440)
Rule changes
- [
flake8-boolean-trap
] Allow Boolean positional arguments in setters (#9429) - [
flake8-builtins
] Restrictbuiltin-attribute-shadowing
(A003
) to actual shadowed references (#9462) - [
flake8-pyi
] Add fix forgenerator-return-from-iter-method
(PYI058
) (#9355) - [
pyflakes
] Don't flagredefined-while-unused
(F811
) inif
branches (#9418) - [
pyupgrade
] Add some additional Python 3.12 typing members todeprecated-import
(#9445) - [
ruff
] Add fix forparenthesize-chained-operators
(RUF021
) (#9449) - [
ruff
] Include subscripts and attributes in static key rule (RUF011
) (#9416) - [
ruff
] Support variable keys in static dictionary key rule (RUF011
) (#9411)
Formatter
- Generate deterministic IDs when formatting notebooks (#9359)
- Allow
# fmt: skip
with interspersed same-line comments (#9395) - Parenthesize breaking named expressions in match guards (#9396)
Bug fixes
- Add cell indexes to all diagnostics (#9387)
- Avoid infinite loop in constant vs.
None
comparisons (#9376) - Handle raises with implicit alternate branches (#9377)
- Ignore trailing quotes for unclosed l-brace errors (#9388)
- Respect multi-segment submodule imports when resolving qualified names (#9382)
- Use
DisplayParseError
for stdin parser errors (#9409) - Use
comment_ranges
for isort directive extraction (#9414) - Use transformed source code for diagnostic locations (#9408)
- [
flake8-pyi
] Excludewarnings.deprecated
andtyping_extensions.deprecated
arguments (#9423) - [
flake8-pyi
] Fix false negative forunused-private-protocol
(PYI046
) with unused generic protocols (#9405) - [
pydocstyle
] Disambiguate argument descriptors from section headers (#9427) - [
pylint
] HomogenizePLR0914
message to match otherPLR09XX
rules (#9399) - [
ruff
] AllowHashable = None
in type annotations (RUF013
) (#9442)
Documentation
Configuration
-
If you want to rebase/retry this MR, check this box
This MR has been generated by Renovate Bot.