Commit Graph

90 Commits

Author SHA1 Message Date
Charlie Marsh 0362cc1098 Allow manual trigger for docs 2023-01-28 10:24:52 -05:00
Charlie Marsh 071e3fd196
Split MkDocs site into multiple pages (#2296) 2023-01-28 08:31:16 -05:00
Charlie Marsh eaac3cae5e
Add MkDocs version of README (#2287)
Co-authored-by: Justin Flannery <juftin@juftin.com>
2023-01-27 22:57:42 -05:00
Charlie Marsh b692921160
Use rustup show in lieu of actions-rs/toolchain (#2280) 2023-01-27 18:51:41 -05:00
Charlie Marsh 0b34ca7107
Move off nightly Rust for dev workflows (#2278) 2023-01-27 18:35:19 -05:00
Simon Brugman 5835d719c4 ci: enable windows testing in Github Actions 2023-01-25 18:00:39 -05:00
Anders Kaseorg 823f1c5b6a
Avoid duplicate CI runs triggered by pushes to pull requests (#2178)
https://github.com/charliermarsh/ruff/pull/2157#discussion_r1087179996

Signed-off-by: Anders Kaseorg <andersk@mit.edu>

Signed-off-by: Anders Kaseorg <andersk@mit.edu>
2023-01-25 17:45:07 -05:00
Charlie Marsh 6ede030700 Allow manual releases for pre-release testing 2023-01-25 16:37:04 -05:00
Hugo van Kemenade 233415921b Add colour to CI for readability 2023-01-25 15:21:10 -05:00
Hugo van Kemenade 81141e2a73 Bump GitHub Actions 2023-01-25 15:21:10 -05:00
Hugo van Kemenade 6e255ad53c Allow testing feature branches 2023-01-25 15:21:10 -05:00
Simon Brugman 28f05aa6e7
feat: update scripts to new rules structure (#2078)
- optional `prefix` argument for `add_plugin.py`
- rules directory instead of `rules.rs`
- pathlib syntax
- fix test case where code was added instead of name

Example:
```
python scripts/add_plugin.py --url https://pypi.org/project/example/1.0.0/ example --prefix EXA
python scripts/add_rule.py --name SecondRule --code EXA002 --linter example
python scripts/add_rule.py --name FirstRule --code EXA001 --linter example
python scripts/add_rule.py --name ThirdRule --code EXA003 --linter example
 ```

Note that it breaks compatibility with 'old style' plugins (generation works fine, but namespaces need to be changed):
```
python scripts/add_rule.py --name DoTheThing --code PLC999 --linter pylint
```
2023-01-21 19:19:58 -05:00
Martin Fischer 7fc42f8f85 refactor: Rename RuleOrigin to Linter
"origin" was accurate since ruff rules are currently always modeled
after one origin (except the Ruff-specific rules).

Since we however want to introduce a many-to-many mapping between codes
and rules, the term "origin" no longer makes much sense. Rules usually
don't have multiple origins but one linter implements a rule first and
then others implement it later (often inspired from another linter).
But we don't actually care much about where a rule originates from when
mapping multiple rule codes to one rule implementation, so renaming
RuleOrigin to Linter is less confusing with the many-to-many system.
2023-01-20 20:25:57 -05:00
Martin Fischer 8693236f9e Make CI test add_*.py scripts 2023-01-20 08:09:54 -05:00
Martin Fischer 4061eeeb32 Update CI to use MSRV for cargo test and build
As per Cargo.toml our minimal supported Rust version is 1.65.0, so we
should be using that version in our CI for cargo test and cargo build.

This was apparently accidentally changed in
79ca66ace5.
2023-01-20 07:39:40 -05:00
Charlie Marsh 8891e2e62b Fix name of ruff-pre-commit event 2023-01-17 17:25:02 -05:00
Paul Barrett 019ecc4add
Trigger update to pre-commit mirror after pypi publish (#1910) 2023-01-16 13:14:18 -05:00
Martin Fischer 4470d7ba04
Make the CI check for broken links in the Rust docs (#1883) 2023-01-14 23:18:17 -05:00
Martin Fischer 7b1ce72f86
Actually fix wasm-pack build command (#1862)
I initially attempted to run `wasm-pack build -p ruff` which gave the
error message:

Error: crate directory is missing a `Cargo.toml` file; is `-p` the wrong
directory?

I interpreted that as wasm-pack looking for the "ruff" directory because
I specified -p ruff, however actually the wasm-pack build usage is:

    wasm-pack build [FLAGS] [OPTIONS] <path> <cargo-build-options>

And I was missing the `<path>` argument. So this actually wasn't at all
a bug in wasm-pack but just a confusing error message. And the symlink
hack I introduced in the previous commit didn't actually work ... I only
accidentally omitted the `-p` when testing (which ended up as `ruff`
being the <path> argument) ... CLIs are fun.
2023-01-13 23:20:20 -05:00
Martin Fischer 156e09536e
Add workaround for wasm-pack bug to fix the playground CI (#1861)
Fixes #1860.
2023-01-13 22:46:51 -05:00
Martin Fischer 82aff5f9ec Split off ruff_cli crate from ruff library
This lets you test the ruff linters or use the ruff library
without having to compile the ~100 additional dependencies
that are needed by the CLI.

Because we set the following in the [workspace] section of Cargo.toml:

   default-members = [".", "ruff_cli"]

`cargo run` still runs the CLI and `cargo test` still tests
the code in src/ as well as the code in the new ruff_cli crate.
(But you can now also run `cargo test -p ruff` to only test the linters.)
2023-01-13 21:37:54 -05:00
Charlie Marsh 643cedb200
Move CONTRIBUTING.md to top-level (#1768) 2023-01-10 07:38:12 -05:00
Charlie Marsh 91620c378a
Disable release builds on CI (#1761) 2023-01-10 07:33:03 -05:00
Charlie Marsh e4fad70a57
Update documentation to match latest terminology (#1760)
Closes #1759.
2023-01-09 21:10:47 -05:00
Mohamed Daahir 0ee37aa0aa
Cache build artifacts using Swatinem/rust-cache@v1 (#1750)
This GitHub Action caches build artifacts in addition to dependencies
which halves the CI duration time.

Resolves #1752.
2023-01-09 15:35:32 -05:00
Charlie Marsh 7d24146df7
Implement `--isolated` CLI flag (#1727)
Closes #1724.
2023-01-07 18:43:58 -05:00
Charlie Marsh bdb9a4d1a7
Update CONTRIBUTING.md to point to violations.rs (#1720) 2023-01-07 15:20:21 -05:00
Charlie Marsh 5ed58ae595
Add requested context to issue template (#1679) 2023-01-06 07:29:08 -05:00
messense 1991d618a3
Add proc-macro to derive `CheckCodePrefix` (#1656)
IMO a derive macro is a natural way to generate new code, and it reduces
the chance of merge conflicts.
2023-01-05 11:39:16 -05:00
messense 6a1edeb694
Cancel outdated in-progress workflow automatically (#1652) 2023-01-04 22:03:26 -05:00
Charlie Marsh 8647bec3cb
Rename checks.rs to registry.rs (#1566) 2023-01-02 17:26:51 -05:00
Colin Delahunty e9be5fc7be
Add typo linter (#1553) 2023-01-02 15:57:59 -05:00
Harutaka Kawamura e3867b172d
Simplify unused snapshot check (#1525) 2023-01-01 02:43:07 -05:00
Harutaka Kawamura 926b5494ad
Remove unused snapshots (#1497) 2022-12-31 07:40:38 -05:00
Charlie Marsh 3ee20a70d3 Remove lingering ruff_options.ts references 2022-12-30 15:33:09 -05:00
Charlie Marsh d16ba890ae
Turn off wasm-pack tests (#1427) 2022-12-28 12:55:25 -05:00
Charlie Marsh 4521fdf021 Only test --lib for wasm-pack 2022-12-28 10:28:40 -05:00
Charlie Marsh 2a11c4b1f1 Try increasing wasm-bindgen timeout 2022-12-28 07:39:23 -05:00
Charlie Marsh 0a60eb0aca
Fix invalid reference to ruff_options.rs (#1409) 2022-12-27 12:12:28 -05:00
Charlie Marsh b4dbe62da0
Add cargo +nightly dev generate-all (#1404) 2022-12-27 10:07:18 -05:00
Charlie Marsh e692c4a2cc
Tweak secret detection for playground releases (#1402) 2022-12-27 08:41:53 -05:00
Charlie Marsh 018b9a2977
Only run playground release in main repo (#1396) 2022-12-26 19:45:04 -05:00
Charlie Marsh 20d6b21d77
Add ESLint, Prettier, and TypeScript checks (#1384) 2022-12-26 15:08:22 -05:00
Charlie Marsh 1a27992f47
Enable preview deployments for playground (#1383) 2022-12-26 14:52:13 -05:00
Charlie Marsh 89cebe1ce2 Update name of Playground job 2022-12-26 12:10:22 -05:00
Reiner Gerecke bdb1505262
Web playground with WASM (#1279) 2022-12-26 12:09:17 -05:00
Edgar R. M 4888afd423
Generate JSON schema for Ruff options (#1329) 2022-12-24 14:10:22 -05:00
Charlie Marsh 74f49eda64
Bump compatibility to 3.11 (#1352) 2022-12-23 12:12:11 -05:00
Anders Kaseorg 20ac823778
generate-check-code-prefix: Run `rustfmt` automatically; only write if changed (#1282) 2022-12-18 17:46:23 -05:00
Reiner Gerecke a000cd4a09
Test to prevent continious reformatting when used together with black (#1206) 2022-12-15 15:26:41 -05:00