Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
5 changes: 4 additions & 1 deletion .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -2,4 +2,7 @@

#Ignore vscode AI rules
.github/copilot-instructions.md
.idea/
.idea/

#Ignore vscode AI rules

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

⚪ LOW RISK

Nitpick: Remove the redundant '#Ignore vscode AI rules' comment and move the '.idea/' entry to a generic section for IDE-specific files, as it is related to JetBrains IDEs rather than VS Code.

.github/instructions/codacy.instructions.md
4 changes: 2 additions & 2 deletions docs/description/FURB105_print-empty-string.md
Original file line number Diff line number Diff line change
Expand Up @@ -22,6 +22,6 @@ print("")
print()
Fix safety
This fix is marked as unsafe if it removes comments or an unused sep keyword argument
that may have side effects. Removing such arguments may change the program's
behavior by skipping the execution of those side effects.
that is not known to be a valid separator. Removing such arguments may change the
program's behavior by skipping their evaluation or hiding a TypeError.
```
5 changes: 5 additions & 0 deletions docs/description/PLR6104_non-augmented-assignment.md
Original file line number Diff line number Diff line change
Expand Up @@ -47,4 +47,9 @@ foo = [1]
bar = foo
foo += [2]
assert (foo, bar) == ([1, 2], [1, 2])
An augmented assignment can also fail where the plain form succeeds. NumPy
writes the result into the target's buffer, so a *= b raises where
a = a * b would broadcast to a new shape or promote the dtype. The same
applies to a @= b, which requires the product to have the target's shape.
The fix replaces the whole statement, so any comments inside it are lost.
Comment on lines +50 to +54

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🟡 MEDIUM RISK

Move the descriptive text on lines 50-54 outside the triple-backtick code block (after line 55) to ensure it renders correctly as prose rather than Python code.

```
4 changes: 4 additions & 0 deletions docs/description/PT018_pytest-composite-assertion.md
Original file line number Diff line number Diff line change
Expand Up @@ -24,4 +24,8 @@ def test_foo():
def test_bar():
assert not something
assert not something_else
Fix safety
On stable, the rule's fix is always unsafe and not offered when it would remove comments in the
compound assertion. In preview, the fix is only unsafe when it would delete such comments and
safe otherwise.
Comment on lines +27 to +30

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🟡 MEDIUM RISK

Move the 'Fix safety' section (lines 27-30) outside the triple-backtick code block (after line 31) so that it is properly formatted as a Markdown header and text.

```
3 changes: 3 additions & 0 deletions docs/description/PT022_pytest-useless-yield-fixture.md
Original file line number Diff line number Diff line change
Expand Up @@ -30,4 +30,7 @@ def my_fixture_with_teardown():
def my_fixture_without_teardown():
resource = acquire_resource()
return resource
Fix safety
This rule's fix is always marked unsafe because removing the yield can change the behavior of
code that relies on implicit cleanup, such as when a value is garbage-collected.
```
2 changes: 2 additions & 0 deletions docs/description/S101_assert.md
Original file line number Diff line number Diff line change
Expand Up @@ -11,6 +11,8 @@ Assertions are removed when Python is run with optimization requested
production environments. As such, assertions should not be used for runtime
validation of user input or to enforce interface constraints.
Consider raising a meaningful error instead of using assert.
The rule exempts assertions within a TYPE_CHECKING block, assuming these are needed to satisfy
a type checker.
## Example
```
assert x > 0, "Expected positive value."
Expand Down
2 changes: 1 addition & 1 deletion docs/patterns.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "ruff",
"version": "0.16.0",
"version": "0.16.2",
"patterns": [
{
"patternId": "AIR001_airflow-variable-name-task-id-mismatch",
Expand Down
11 changes: 5 additions & 6 deletions requirements.txt
Original file line number Diff line number Diff line change
@@ -1,6 +1,5 @@
ruff==0.16.0
jsonpickle==4.1.1
numpy==2.3.2
pytest==8.4.1
toml==0.10.2

ruff==0.16.2
jsonpickle==4.1.2
numpy==2.5.2
pytest==9.1.1
toml==0.10.2