Charlie Marsh
48a5cd1dd9
Revert "perf: Use custom allocator ( #2768 )" ( #2841 )
...
This is causing wheel creation to fail on some of our more exotic build targets: https://github.com/charliermarsh/ruff/actions/runs/4159524132 .
Let's figure out how to gate appropriately, but for now, reverting to get the release out.
2023-02-12 22:31:34 -05:00
Charlie Marsh
83f6e52c92
Bump version to 0.0.246 ( #2834 )
2023-02-12 23:39:51 +00:00
Charlie Marsh
1666e8ba1e
Add a --show-fixes flag to include applied fixes in output ( #2707 )
2023-02-12 20:48:01 +00:00
Charlie Marsh
9089ef74bc
Upgrade RustPython ( #2821 )
2023-02-12 18:45:59 +00:00
Nick Pope
551b810aeb
Add rendering of rule markdown for terminal output ( #2747 )
...
Add rendering of rule markdown for terminal output
This is achieved by making use of the `mdcat` crate.
See the following links for details:
- https://crates.io/crates/mdcat
- https://github.com/swsnr/mdcat
- https://docs.rs/mdcat/latest/mdcat/
2023-02-12 02:32:45 +00:00
Micha Reiser
863e39fe5f
perf: Use custom allocator ( #2768 )
...
This PR replaces the system allocator with a custom allocator to improve performance:
* Windows: mimalloc
* Unix: tikv-jemallocator
## Performance:
* Linux
* `cpython --no-cache`: 208.8ms -> 190.5ms
* `cpython`: 32.8ms -> 31ms
* Mac:
* `cpython --no-cache`: 436.3ms -> 380ms
* `cpython`: 40.9ms -> 39.6ms
* Windows:
* `cpython --no-cache`: 367ms -> 268ms
* `cpython`: 92.5ms -> 92.3ms
## Size
* Linux: +5MB from 13MB -> 18MB (I need to double check this)
* Mac: +0.7MB from 8.3MB-> 9MB
* Windows: -0.16MB from 8.29MB -> 8.13MB (that's unexpected)
2023-02-11 13:26:07 -05:00
Charlie Marsh
24faabf1f4
Bump version to 0.0.245
2023-02-10 22:15:27 -05:00
Martin Fischer
bd09a1819f
Drop unused once_cell dependency from ruff_macros
2023-02-10 09:25:29 -05:00
Charlie Marsh
0f622f0126
Upgrade RustPython to pull in newline-handling optimizations ( #2688 )
2023-02-09 11:12:43 -05:00
Charlie Marsh
125615af12
Bump version to 0.0.244
2023-02-08 17:28:59 -05:00
Charlie Marsh
f1cdd108e6
Derive explanation method on Rule struct via rustdoc ( #2642 )
...
```console
❯ cargo run rule B017
Finished dev [unoptimized + debuginfo] target(s) in 0.13s
Running `target/debug/ruff rule B017`
no-assert-raises-exception
Code: B017 (flake8-bugbear)
### What it does
Checks for `self.assertRaises(Exception)`.
## Why is this bad?
`assertRaises(Exception)` can lead to your test passing even if the
code being tested is never executed due to a typo.
Either assert for a more specific exception (builtin or custom), use
`assertRaisesRegex` or the context manager form of `assertRaises`.
```
2023-02-07 17:23:29 -05:00
Charlie Marsh
8fd29b3b60
Remove dependency on "unparse" feature ( #2641 )
2023-02-07 17:23:09 -05:00
Charlie Marsh
bf718fdf26
Bump Ruff version to 0.0.243
2023-02-06 21:22:54 -05:00
Charlie Marsh
e59b75d31b
Bump version to 0.0.242
2023-02-06 16:25:29 -05:00
Charlie Marsh
87d0aa5561
Move python into its own ruff_python crate ( #2593 )
2023-02-05 17:53:58 -05:00
Micha Reiser
cd8be8c0be
refactor: Introduce crates folder ( #2088 )
...
This PR introduces a new `crates` directory and moves all "product" crates into that folder.
Part of #2059 .
2023-02-05 16:47:48 -05:00
Charlie Marsh
e3dfa2e04e
Implement pycodestyle's logical line detection ( #1130 )
...
Along with the logical line detection, this adds 14 of the missing `pycodestyle` rules.
For now, this is all gated behind a `logical_lines` feature that's off-by-default, which will let us implement all rules prior to shipping, since we want to couple the release of these rules with new defaults and instructions.
2023-02-05 15:06:02 -05:00
Charlie Marsh
7d4f0a8320
Bump Ruff version to 0.0.241
2023-02-03 19:25:12 -05:00
Charlie Marsh
da0374f360
Update RustPython to pull in lexer optimizations ( #2551 )
2023-02-03 14:31:53 -05:00
Aarni Koskela
38addbe50d
Soft-deprecate update_check ( #2530 )
2023-02-03 11:33:38 -05:00
Charlie Marsh
651f6b6bce
Bump Ruff version to 0.0.240
2023-02-02 12:45:23 -05:00
Charlie Marsh
c15595325c
Bump version to 0.0.239
2023-01-31 19:06:22 -05:00
Charlie Marsh
1cbd929a0a
Bump version to 0.0.238
2023-01-30 16:44:19 -05:00
Charlie Marsh
add7fefeb5
Bump version to 0.0.237
2023-01-28 10:52:14 -05:00
Charlie Marsh
685d9ab848
Bump version to 0.0.236
2023-01-26 18:47:00 -05:00
Charlie Marsh
b346f74915
Run cargo update ( #2185 )
2023-01-25 21:32:44 -05:00
Charlie Marsh
edd0e16a02
Bump version to 0.0.235
2023-01-25 18:28:27 -05:00
Simon Brugman
413acdf83c
feat: introduce macro for testing snap files across platforms
2023-01-25 18:00:39 -05:00
Charlie Marsh
9b07d0bd92
Bump version to 0.0.234
2023-01-25 16:55:57 -05:00
Charlie Marsh
605416922d
Bump version to 0.0.233
2023-01-24 10:46:49 -05:00
Charlie Marsh
7b81f36e54
Enable executable checks on Windows ( #2133 )
2023-01-24 10:46:27 -05:00
Charlie Marsh
d645a19e0a
Bump version to 0.0.232
2023-01-24 09:49:07 -05:00
Charlie Marsh
549a5d44bc
Upgrade to toml v0.6.0 ( #2116 )
...
Closes #1894 .
2023-01-23 19:22:42 -05:00
Charlie Marsh
1c3265ef98
Bump version to 0.0.231
2023-01-23 12:51:09 -05:00
Charlie Marsh
23b622943e
Bump version to 0.0.230
2023-01-22 13:58:41 -05:00
Harutaka Kawamura
a7ce8621a9
Update RustPython to fix Dict.keys type ( #2086 )
...
This PR upgrades RustPython to fix the type of `Dict.keys` to `Vec<Option<Expr>>` (see https://github.com/RustPython/RustPython/pull/4449 for why this change was needed) and unblock #1884 .
2023-01-22 13:24:00 -05:00
Charlie Marsh
6bfa1804de
Remove remaining ropey usages ( #2076 )
2023-01-21 18:24:10 -05:00
figsoda
b1bda0de82
fix: pin rustpython to the same revision to fix cargo vendor ( #2069 )
...
I was trying to update ruff in nixpkgs and ran into this error when it was running `cargo vendor`
```
error: failed to sync
Caused by:
found duplicate version of package `rustpython-ast v0.2.0` vendored from two sources:
source 1: https://github.com/RustPython/RustPython.git?rev=62aa942bf506ea3d41ed0503b947b84141fdaa3c#62aa942b
source 2: https://github.com/RustPython/RustPython.git?rev=ff90fe52eea578c8ebdd9d95e078cc041a5959fa#ff90fe52
```
2023-01-21 14:40:00 -05:00
Charlie Marsh
84300e00ff
Bump version to 0.0.229
2023-01-21 13:18:06 -05:00
Colin Delahunty
80295f335b
Pyupgrade: Printf string formatting ( #1803 )
2023-01-21 09:37:22 -05:00
Charlie Marsh
465943adf7
Revert "Upgrade to toml v0.5.11" ( #2058 )
...
This _did_ fix https://github.com/charliermarsh/ruff/issues/1894 , but was a little premature. `toml` doesn't actually depend on `toml-edit` yet, and `v0.5.11` was mostly about deprecations AFAICT. So upgrading might solve that issue, but could introduce other incompatibilities, and I'd like to minimize churn. I expect that `toml` will have a new release soon, so we can revert this revert.
Reverts charliermarsh/ruff#2040 .
2023-01-21 07:54:56 -05:00
Charlie Marsh
20a9252e92
Upgrade to toml v0.5.11 ( #2040 )
...
In #1680 , we moved over to `toml_edit`. But it looks like `toml` now uses `toml_edit`, and has implemented some improvements (e.g., this closes #1894 ).
2023-01-20 17:20:45 -05:00
Charlie Marsh
5377d24507
Bump version to 0.0.228
2023-01-20 09:58:56 -05:00
Aarni Koskela
3a81f893cc
Bump terminfo to remove a whole bunch of unnecessary dependencies ( #2022 )
...
See 6281c6b8f7
```
$ cargo update -p terminfo
Updating crates.io index
Removing cfg-if v0.1.10
Removing dirs v2.0.2
Removing getrandom v0.1.16
Removing phf v0.8.0
Updating phf_codegen v0.8.0 -> v0.11.1
Updating phf_generator v0.8.0 -> v0.11.1
Removing phf_shared v0.8.0
Removing rand v0.7.3
Removing rand_chacha v0.2.2
Removing rand_core v0.5.1
Removing rand_hc v0.2.0
Removing rand_pcg v0.2.1
Updating terminfo v0.7.3 -> v0.7.5
Removing wasi v0.9.0+wasi-snapshot-preview1
```
2023-01-20 09:09:02 -05:00
Aarni Koskela
bea6deb0c3
Port pydocstyle code 401 (ImperativeMood) ( #1999 )
...
This adds support for pydocstyle code D401 using the `imperative` crate.
2023-01-20 07:18:27 -05:00
Charlie Marsh
cf56955ba6
Bump version to 0.0.227
2023-01-19 23:24:52 -05:00
Charlie Marsh
045229630e
Upgrade RustPython ( #2011 )
...
This lets us revert the "manual" fix introduced in #1944 .
2023-01-19 21:49:12 -05:00
Martin Fischer
6cf770a692
rule 5/8: Remove FromStr impl for Rule
2023-01-18 23:51:48 -05:00
Charlie Marsh
d8645acd1f
Bump version to 0.0.226
2023-01-18 20:54:38 -05:00
Charlie Marsh
dae95626ae
Use smallvec for call path representation ( #1960 )
...
This provides a ~10% speed-up for large codebases with `--select ALL`:

2023-01-18 11:29:05 -05:00