mirror of
https://github.com/astral-sh/ruff.git
synced 2025-10-18 14:29:14 +00:00

Some checks are pending
CI / cargo build (release) (push) Waiting to run
CI / Determine changes (push) Waiting to run
CI / cargo fmt (push) Waiting to run
CI / cargo clippy (push) Blocked by required conditions
CI / cargo test (linux) (push) Blocked by required conditions
CI / cargo test (linux, release) (push) Blocked by required conditions
CI / cargo test (windows) (push) Blocked by required conditions
CI / cargo test (wasm) (push) Blocked by required conditions
CI / cargo build (msrv) (push) Blocked by required conditions
CI / cargo fuzz build (push) Blocked by required conditions
CI / fuzz parser (push) Blocked by required conditions
CI / test scripts (push) Blocked by required conditions
CI / mkdocs (push) Waiting to run
CI / ecosystem (push) Blocked by required conditions
CI / Fuzz for new ty panics (push) Blocked by required conditions
CI / cargo shear (push) Blocked by required conditions
CI / python package (push) Waiting to run
CI / pre-commit (push) Waiting to run
CI / formatter instabilities and black similarity (push) Blocked by required conditions
CI / test ruff-lsp (push) Blocked by required conditions
CI / check playground (push) Blocked by required conditions
CI / benchmarks instrumented (ruff) (push) Blocked by required conditions
CI / benchmarks instrumented (ty) (push) Blocked by required conditions
CI / benchmarks-walltime (push) Blocked by required conditions
[ty Playground] Release / publish (push) Waiting to run
Summary -- Closes #19467 and also removes the warning about using Python 3.14 without preview enabled. I also bumped `PythonVersion::default` to 3.9 because it reaches EOL this month, but we could also defer that for now if we wanted. The first three commits are related to the `latest` bump to 3.14; the fourth commit bumps the default to 3.10. Note that this PR also bumps the default Python version for ty to 3.10 because there was a test asserting that it stays in sync with `ast::PythonVersion`. Test Plan -- Existing tests I spot-checked the ecosystem report, and I believe these are all expected. Inbits doesn't specify a target Python version, so I guess we're applying the default. UP007, UP035, and UP045 all use the new default value to emit new diagnostics.
239 lines
5.9 KiB
Text
239 lines
5.9 KiB
Text
---
|
|
source: crates/ruff_python_formatter/tests/fixtures.rs
|
|
input_file: crates/ruff_python_formatter/resources/test/fixtures/ruff/preview.py
|
|
---
|
|
## Input
|
|
```python
|
|
"""
|
|
Black's `Preview.module_docstring_newlines`
|
|
"""
|
|
first_stmt_after_module_level_docstring = 1
|
|
|
|
|
|
class CachedRepository:
|
|
# Black's `Preview.dummy_implementations`
|
|
def get_release_info(self): ...
|
|
|
|
|
|
def raw_docstring():
|
|
|
|
r"""Black's `Preview.accept_raw_docstrings`
|
|
a
|
|
b
|
|
"""
|
|
pass
|
|
|
|
|
|
def reference_docstring_newlines():
|
|
|
|
"""A regular docstring for comparison
|
|
a
|
|
b
|
|
"""
|
|
pass
|
|
|
|
|
|
class RemoveNewlineBeforeClassDocstring:
|
|
|
|
"""Black's `Preview.no_blank_line_before_class_docstring`"""
|
|
|
|
|
|
def f():
|
|
"""Black's `Preview.prefer_splitting_right_hand_side_of_assignments`"""
|
|
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaa[
|
|
bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb
|
|
] = cccccccc.ccccccccccccc.cccccccc
|
|
|
|
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaa[
|
|
bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb
|
|
] = cccccccc.ccccccccccccc().cccccccc
|
|
|
|
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaa[
|
|
bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb
|
|
] = cccccccc.ccccccccccccc(d).cccccccc
|
|
|
|
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaa[bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb] = (
|
|
cccccccc.ccccccccccccc(d).cccccccc + e
|
|
)
|
|
|
|
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaa[bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb] = (
|
|
cccccccc.ccccccccccccc.cccccccc + e
|
|
)
|
|
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaa[bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb] = (
|
|
cccccccc.ccccccccccccc.cccccccc
|
|
+ eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee
|
|
)
|
|
|
|
self._cache: dict[
|
|
DependencyCacheKey, list[list[DependencyPackage]]
|
|
] = collections.defaultdict(list)
|
|
self._cached_dependencies_by_level: dict[
|
|
int, list[DependencyCacheKey]
|
|
] = collections.defaultdict(list)
|
|
```
|
|
|
|
## Outputs
|
|
### Output 1
|
|
```
|
|
indent-style = space
|
|
line-width = 88
|
|
indent-width = 4
|
|
quote-style = Double
|
|
line-ending = LineFeed
|
|
magic-trailing-comma = Respect
|
|
docstring-code = Disabled
|
|
docstring-code-line-width = "dynamic"
|
|
preview = Disabled
|
|
target_version = 3.10
|
|
source_type = Python
|
|
```
|
|
|
|
```python
|
|
"""
|
|
Black's `Preview.module_docstring_newlines`
|
|
"""
|
|
|
|
first_stmt_after_module_level_docstring = 1
|
|
|
|
|
|
class CachedRepository:
|
|
# Black's `Preview.dummy_implementations`
|
|
def get_release_info(self): ...
|
|
|
|
|
|
def raw_docstring():
|
|
r"""Black's `Preview.accept_raw_docstrings`
|
|
a
|
|
b
|
|
"""
|
|
pass
|
|
|
|
|
|
def reference_docstring_newlines():
|
|
"""A regular docstring for comparison
|
|
a
|
|
b
|
|
"""
|
|
pass
|
|
|
|
|
|
class RemoveNewlineBeforeClassDocstring:
|
|
"""Black's `Preview.no_blank_line_before_class_docstring`"""
|
|
|
|
|
|
def f():
|
|
"""Black's `Preview.prefer_splitting_right_hand_side_of_assignments`"""
|
|
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaa[bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb] = (
|
|
cccccccc.ccccccccccccc.cccccccc
|
|
)
|
|
|
|
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaa[bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb] = (
|
|
cccccccc.ccccccccccccc().cccccccc
|
|
)
|
|
|
|
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaa[bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb] = (
|
|
cccccccc.ccccccccccccc(d).cccccccc
|
|
)
|
|
|
|
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaa[bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb] = (
|
|
cccccccc.ccccccccccccc(d).cccccccc + e
|
|
)
|
|
|
|
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaa[bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb] = (
|
|
cccccccc.ccccccccccccc.cccccccc + e
|
|
)
|
|
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaa[bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb] = (
|
|
cccccccc.ccccccccccccc.cccccccc
|
|
+ eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee
|
|
)
|
|
|
|
self._cache: dict[DependencyCacheKey, list[list[DependencyPackage]]] = (
|
|
collections.defaultdict(list)
|
|
)
|
|
self._cached_dependencies_by_level: dict[int, list[DependencyCacheKey]] = (
|
|
collections.defaultdict(list)
|
|
)
|
|
```
|
|
|
|
|
|
### Output 2
|
|
```
|
|
indent-style = space
|
|
line-width = 88
|
|
indent-width = 4
|
|
quote-style = Double
|
|
line-ending = LineFeed
|
|
magic-trailing-comma = Respect
|
|
docstring-code = Disabled
|
|
docstring-code-line-width = "dynamic"
|
|
preview = Enabled
|
|
target_version = 3.10
|
|
source_type = Python
|
|
```
|
|
|
|
```python
|
|
"""
|
|
Black's `Preview.module_docstring_newlines`
|
|
"""
|
|
|
|
first_stmt_after_module_level_docstring = 1
|
|
|
|
|
|
class CachedRepository:
|
|
# Black's `Preview.dummy_implementations`
|
|
def get_release_info(self): ...
|
|
|
|
|
|
def raw_docstring():
|
|
r"""Black's `Preview.accept_raw_docstrings`
|
|
a
|
|
b
|
|
"""
|
|
pass
|
|
|
|
|
|
def reference_docstring_newlines():
|
|
"""A regular docstring for comparison
|
|
a
|
|
b
|
|
"""
|
|
pass
|
|
|
|
|
|
class RemoveNewlineBeforeClassDocstring:
|
|
"""Black's `Preview.no_blank_line_before_class_docstring`"""
|
|
|
|
|
|
def f():
|
|
"""Black's `Preview.prefer_splitting_right_hand_side_of_assignments`"""
|
|
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaa[bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb] = (
|
|
cccccccc.ccccccccccccc.cccccccc
|
|
)
|
|
|
|
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaa[bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb] = (
|
|
cccccccc.ccccccccccccc().cccccccc
|
|
)
|
|
|
|
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaa[bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb] = (
|
|
cccccccc.ccccccccccccc(d).cccccccc
|
|
)
|
|
|
|
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaa[bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb] = (
|
|
cccccccc.ccccccccccccc(d).cccccccc + e
|
|
)
|
|
|
|
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaa[bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb] = (
|
|
cccccccc.ccccccccccccc.cccccccc + e
|
|
)
|
|
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaa[bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb] = (
|
|
cccccccc.ccccccccccccc.cccccccc
|
|
+ eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee
|
|
)
|
|
|
|
self._cache: dict[DependencyCacheKey, list[list[DependencyPackage]]] = (
|
|
collections.defaultdict(list)
|
|
)
|
|
self._cached_dependencies_by_level: dict[int, list[DependencyCacheKey]] = (
|
|
collections.defaultdict(list)
|
|
)
|
|
```
|