ruff/crates
Dhruv Manilawala c3d429ddd8
[red-knot] Move name field on parameter kind (#16830)
## Summary

Previously, the `name` field was on `Parameter` which required it to be
always optional regardless of the parameter kind because a
`typing.Callable` signature does not have name for the parameters. This
is the case for positional-only parameters. This wasn't enforced at the
type level which meant that downstream usages would have to unwrap on
`name` even though it's guaranteed to be present.

This commit moves the `name` field from `Parameter` to the
`ParameterKind` variants and makes it optional only for
`ParameterKind::PositionalOnly` variant while required for all other
variants.

One change that's now required is that a `Callable` form using a gradual
form for parameter types (`...`) would have a default `args` and
`kwargs` name used for variadic and keyword-variadic parameter kind
respectively. This is also the case for invalid `Callable` type forms. I
think this is fine as names are not relevant in this context but happy
to make it optional even in variadic variants.

## Test Plan

No new tests; make sure existing tests are passing.
2025-03-18 22:47:44 +05:30
..
red_knot red_knot: update diagnostic output snapshots 2025-03-17 12:46:49 -04:00
red_knot_project [internal]: Upgrade salsa (#16794) 2025-03-17 11:05:54 +01:00
red_knot_python_semantic [red-knot] Move name field on parameter kind (#16830) 2025-03-18 22:47:44 +05:30
red_knot_server [red-knot] LSP: only emit WARN logs from non-red-knot sources (#16760) 2025-03-15 08:47:50 -07:00
red_knot_test [red-knot] Case sensitive module resolver (#16521) 2025-03-14 19:16:44 +00:00
red_knot_vendored Sync vendored typeshed stubs (#16762) 2025-03-15 00:38:58 +00:00
red_knot_wasm Red Knot Playground (#12681) 2025-03-18 17:17:11 +01:00
ruff [ruff] Fix --statistics reporting for unsafe fixes (#16756) 2025-03-18 08:03:14 +01:00
ruff_annotate_snippets Update pre-commit dependencies (#16465) 2025-03-03 13:10:46 +05:30
ruff_benchmark [ci]: Fixup codspeed upgrade (#16790) 2025-03-17 09:14:22 +01:00
ruff_cache Fix cache key collisions for paths with separators (#12159) 2024-07-03 07:36:46 -05:00
ruff_db ruff_db: delete old diagnostic renderer 2025-03-17 12:46:49 -04:00
ruff_dev Pass ParserOptions to the parser (#16220) 2025-02-19 10:50:50 -05:00
ruff_diagnostics Show errors for attempted fixes only when passed --verbose (#15237) 2025-01-03 08:50:13 -06:00
ruff_formatter bump MSRV to 1.83 (#16294) 2025-02-26 06:12:43 -08:00
ruff_graph Pass ParserOptions to the parser (#16220) 2025-02-19 10:50:50 -05:00
ruff_index [red-knot] Don't use separate ID types for each alist (#16415) 2025-02-28 14:55:55 -05:00
ruff_linter [airflow] Add chain, chain_linear and cross_downstream for AIR302 (#16647) 2025-03-18 11:08:45 +05:30
ruff_macros Add knot.toml schema (#15735) 2025-02-07 10:59:40 +01:00
ruff_notebook bump MSRV to 1.83 (#16294) 2025-02-26 06:12:43 -08:00
ruff_python_ast [red-knot] Auto generate statement nodes (#16645) 2025-03-13 15:43:48 +01:00
ruff_python_ast_integration_tests Pass ParserOptions to the parser (#16220) 2025-02-19 10:50:50 -05:00
ruff_python_codegen Pass ParserOptions to the parser (#16220) 2025-02-19 10:50:50 -05:00
ruff_python_formatter [syntax-errors] PEP 701 f-strings before Python 3.12 (#16543) 2025-03-18 11:12:15 -04:00
ruff_python_index Extract LineIndex independent methods from Locator (#13938) 2024-10-28 07:53:41 +00:00
ruff_python_literal Preserve triple quotes and prefixes for strings (#15818) 2025-02-04 08:41:06 -05:00
ruff_python_parser [syntax-errors] PEP 701 f-strings before Python 3.12 (#16543) 2025-03-18 11:12:15 -04:00
ruff_python_resolver bump MSRV to 1.83 (#16294) 2025-02-26 06:12:43 -08:00
ruff_python_semantic Consider all TYPE_CHECKING symbols for type-checking blocks (#16669) 2025-03-13 15:37:37 +01:00
ruff_python_stdlib Revert "Add all PEP-585 names to UP006 rule" (#15250) 2025-01-04 12:23:53 +01:00
ruff_python_trivia [red-knot] Ignore surrounding whitespace when looking for <!-- snapshot-diagnostics --> directives in mdtests (#16380) 2025-02-27 13:25:31 +00:00
ruff_python_trivia_integration_tests Pass ParserOptions to the parser (#16220) 2025-02-19 10:50:50 -05:00
ruff_server Fallback to requires-python in certain cases when target-version is not found (#16721) 2025-03-14 09:36:51 +01:00
ruff_source_file [pyupgrade] Do not report when a UTF-8 comment is followed by a non-UTF-8 one (UP009) (#14728) 2024-12-11 10:30:41 +00:00
ruff_text_size [ruff] itertools.starmap(..., zip(...)) (RUF058) (#15483) 2025-01-16 15:18:12 +01:00
ruff_wasm Ruff 0.11.0 (#16723) 2025-03-14 13:57:56 +01:00
ruff_workspace Fallback to requires-python in certain cases when target-version is not found (#16721) 2025-03-14 09:36:51 +01:00