Commit graph

45 commits

Author SHA1 Message Date
Ed Page
91281038aa fix(config): Update to TOML 1.0
Fixes #405
2022-01-24 12:00:52 -06:00
Ed Page
1046b89208 fix(config): Avoid correcting Rust names
Part of #362
2021-10-23 09:24:37 -05:00
Ed Page
b7812e616c fix(config): Check project files with language
For `rg`, keeping the file types strict makes sense,  For spell
checking, `Cargo.toml` is a lot more closely related in handling to
`*.rs` than it is to `pyproject.toml` due to ecosystem package names.

Part of #362
2021-10-23 09:24:31 -05:00
Ed Page
29ebe5ab48 fix(config): Skip lock files by default
Part of #362
2021-10-23 09:24:25 -05:00
Ed Page
27bd817498 fix(config): Skip checking cert contents
Fixes #327
2021-08-04 07:12:10 -05:00
Ed Page
7ce0438a70 refactor(config): Allow defaulting type patterns 2021-08-04 07:12:10 -05:00
Ed Page
327a84a242 feat(ignore): Typos=specific ignores
We want both CLI and config ignores.  The question then is what we make
them relative to.  I decided to favor CLI with `.`.  We'll see how this
works out

Fixes #134
2021-05-20 21:00:28 -05:00
Ed Page
a0c592ff81 feat(cli): Provide traceability on config loading 2021-05-14 14:02:58 -05:00
Ed Page
2fc1f5468e chore(cli): Allow building without expensive parts
The obvious case is building for docs.rs but this can be helpful for
special use cases or faster development iteration.
2021-04-30 21:31:25 -05:00
Ed Page
517da7ecd2 perf(parser): Allow people to bypass unicode cost 2021-04-29 21:07:59 -05:00
Ed Page
9cbc7410a4 fix(parser)!: Defer to Unicode XID for identifiers
This saves us from having to have configuration for every detail.  If
people need more control, we can offer it later.

Fixes #225
2021-04-29 18:30:57 -05:00
Ed Page
a5975ca1ac style: Address clippy 2021-04-10 13:07:07 -05:00
Ed Page
29fafd1a63 test(config): Verify layering 2021-04-07 20:49:52 -05:00
Ed Page
2a7bd5b046 feat(config): Add new file types
Fixes #220
2021-04-06 21:18:18 -05:00
Ed Page
38a3007c56 fix(config): Properly layer type and override settings 2021-04-06 20:53:34 -05:00
Ed Page
a101df95c2 feat(config): Per-file type settings
Fixes #14
2021-04-05 21:03:49 -05:00
Ed Page
3fd90b09f8 fix(cli): Allow CLI to override walking config 2021-04-05 07:34:05 -05:00
Ed Page
78330ba9c1 refactor(cli): Drop the traits from layering 2021-03-31 21:23:30 -05:00
Ed Page
d51725b2a4 style: Address clippy 2021-03-30 21:33:39 -05:00
Ed Page
a76ddd42ce refactor(cli): Pull out policy creation 2021-03-29 20:27:12 -05:00
Ed Page
f402d3ee77 refactor(config): Clarify config is not file-specific
This is prep for the config being reused in other contexts, like commit
messages.
2021-03-29 20:27:12 -05:00
Ed Page
4bbc59facf refactor(config)!: Detect when no dict config
In preparing for smarter handling of config, we need to be able to tell
what is present and what isn't.

BREAKING CHANGE: `--hex` was removed, the value didn't seem high enough.
2021-03-29 20:27:12 -05:00
Ed Page
b17f9c3a12 feat: Const some fns 2021-03-29 20:27:06 -05:00
Ed Page
75ba4ac535 perf(config): Get small-string optimization 2021-03-01 12:25:51 -06:00
Ed Page
b5827004a2 refactor(config): Simplify 2021-03-01 12:19:56 -06:00
Ed Page
1c3acd747a fix(config)!: Move binary to file
Seems like it would make sense to allow varying this by directory (when
supporting layering) and by file type.
2021-03-01 11:50:12 -06:00
Ed Page
13a93ee8d1 fix(config): Provide all field defaults 2021-01-04 19:16:02 -06:00
Ed Page
2ef1d02164 Revert "feat(ignore): Typos-specific ignores"
This reverts commit 0052617fcd.

The fix for #134 was backwards.  It turns out `overrides` is for
including rather than ignoring.  Will need to look at this further.
2020-11-03 19:55:45 -06:00
Ed Page
f0c24b0afa feat(config): Allow separating config from source 2020-10-30 08:33:43 -05:00
Ed Page
2e6cd39781 fix(config): Respect file's defaults 2020-10-28 20:58:48 -05:00
Ed Page
527b9837b4 feat: Custom dictionary support
Switching `valid-*` to just `*` where you map typo to correction, with
support for always-valid and never-valid.

Fixes #9
2020-10-27 21:15:25 -05:00
Ed Page
043692afe0 feat(dict): Override builtin dictionary
Sometimes you just have to live with a typo or its done intentionally
(like weird company names).  With this commit, a user can now identifier
blessed identifiers and words.

This is ostly what is needed for #9 but sometimes people will have
common typos that they'll want to provide corrections for.
2020-09-02 20:24:54 -05:00
Ed Page
0052617fcd feat(ignore): Typos-specific ignores
THis is to help with cases like a monorepo with vendored dependencies.
A user might want to search (`.ignore`) them but not hold the code to
the same standards as first-party code.

Fixes #134
2020-08-25 21:09:42 -05:00
Ed Page
ab4a5bbdaf feat: Support english dialects
The goal is to be as accepting and unobtrusive to new code bases as
possible.  To this end, we correct typos into the closest english
dialect.

If someone wants to opt-in, they can have typos correct to a specific
english dialect.

Fixes #52
Fixes #22
2020-08-20 19:37:37 -05:00
Ed Page
5d7e91d214 fix(ci): Report more failures 2020-07-04 20:52:48 -05:00
Ed Page
107308a655 perf: Use standard identifier rules to avoid doing umber checks 2019-11-02 19:40:06 -06:00
Ed Page
ed00f3ceae docs: Fix typo 2019-11-02 08:57:07 -06:00
Ed Page
06db6fc693 refactor!: Move off of failure 2019-10-29 11:36:50 -06:00
Ed Page
6fc61966cc feat(parser): Give control over identifier detection 2019-08-08 08:58:37 -05:00
Ed Page
a2cf3b7cc9 feat(config): Configure checking logic
Later we can add the per-filetype checks

Fixes #37
2019-08-08 08:58:36 -05:00
Ed Page
29ff040fd1 feat(config): Expose binary in config file 2019-08-08 08:58:35 -05:00
Ed Page
a923f93ec5 fix(config): Move file-based config into a table 2019-08-08 08:58:35 -05:00
Ed Page
87015d3522 feat(config): Find config for each path passed in 2019-08-08 08:58:34 -05:00
Ed Page
ad4c6dcd77 refactor(config): Centralize loading logic 2019-08-08 08:58:34 -05:00
Ed Page
8d96a2ad1d refactor(cli): Prepare for merging im config file 2019-08-08 08:58:33 -05:00