Commit graph

360 commits

Author SHA1 Message Date
Ed Page
66d82e5e51 chore: Release 2023-03-30 07:50:08 -05:00
Ed Page
8db59330b7 test(cli): Add UTF16 test 2023-03-30 07:45:24 -05:00
Ed Page
ae7f313230 fix(cli): Actually decode UTF-16
Two problems
- I thought we had a UTF-16 test but apparently we didn't
- I didn't read enough fine print in the `encoding_rs` API

These combined meant the last release completely broke UTF-16 support.
2023-03-30 07:27:55 -05:00
Ed Page
144ee4d018 chore: Release 2023-03-29 21:55:35 -05:00
Ed Page
15cdad2a3f chore: Release 2023-03-29 21:54:57 -05:00
Ed Page
039edba3de fix(dict): Add March's typos
Fixes #677
2023-03-29 21:40:36 -05:00
Ed Page
98be58dbc9 refactor: Switch out the UTF-16 encoding impl
Fixes #702
2023-03-29 20:42:48 -05:00
renovate[bot]
e1a138b637 chore(deps): update compatible 2023-04-01 07:05:05 +00:00
Ed Page
6cf303d421 chore: Release 2023-03-18 04:20:06 -05:00
Ed Page
53e2855fa0 chore: Release 2023-03-18 04:19:19 -05:00
Ed Page
8a6fc1895d chore: Release 2023-03-18 04:18:47 -05:00
Ed Page
243b4efc9e chore: Update winnow 2023-03-18 04:11:55 -05:00
Ed Page
08f154e45b test: Try to fix CI 2023-03-18 02:15:16 -05:00
Ed Page
e15de8b72e chore: Release 2023-03-18 02:09:49 -05:00
Ed Page
ac46a6ba54 feat(config): Custom ignores
Typos primarily works off of identifiers and words.  We have built-in
support to detect constructs that span identifiers that should not be
spell checked, like UUIDs, emails, domains, etc.  This opens it up for
for user-defined identifier-spanning constructs using regexes via
`extend-ignore-re`.

This works differently than any of the previous ways of ignoring thing
because the regexes require extra parse passes.  Under the assumption
that (1) actual typos are rare and (2) number of files relying on
`extend-ignore-re` are rare, we only do these extra parse passes when a
typo is found, causing almost no performance hit in the expected case.

While this could be used for more generic types of ignores, it isn't the
most maintainable because it is separate from the source files in
question.  Ideally, we'd implement document settings / directives for
these cases (#316).
2023-03-18 01:25:39 -05:00
Ed Page
9d376417a0 test: Baseline for generic ignore 2023-03-18 01:20:01 -05:00
Ed Page
a1a601195e chore: Release 2023-03-17 23:59:36 -05:00
Ed Page
e4d2d0e54d fix: Actuall ignore ignored identifiers 2023-03-17 23:47:25 -05:00
Ed Page
2ee6ef4654 test(cli): Show extend-ignore-identifiers-re bug 2023-03-17 23:45:54 -05:00
Ed Page
0eae00fee2 test(cli): Consolidate files 2023-03-17 23:30:24 -05:00
Ed Page
797574c10a chore: Release 2023-03-17 23:09:02 -05:00
Ed Page
af90817e50 feat(dict): extend-ignore-identifiers-re support
This opens the door for users to provide patterns for identifiers that
are always valid.  The key limitation is "identifiers".  Run `typos
--identifiers` to verify what you are trying to write the regex for.

Fixes #651
2023-03-17 22:40:55 -05:00
Ed Page
03286f0f82 chore: Release 2023-03-16 05:22:42 -05:00
Ed Page
52e1743c58 chore: Update to anstream 2023-03-16 05:07:38 -05:00
Ed Page
57502b53cc chore: Release 2023-03-16 03:47:08 -05:00
Ed Page
720bd7b28c fix(dict): Allow commitish
Fixes #690
2023-03-16 03:20:57 -05:00
Ed Page
9504315f7e chore: Update Styled pattern 2023-03-14 08:22:10 -05:00
Ed Page
dc0eafc7e5 chore: Release 2023-03-14 02:14:39 -05:00
Ed Page
3a29410c1b fix: Improve color env variable support
- `CLICOLOR=1` now works correctly
- `NO_COLOR=` now works correctly
- Auto-enable colors in CI


For running `typos` on the Linux kernel (176,210 typos to be printed), we went from 20.082s to
<20.450s.  Where in that range is unclear due to jitter in my system.
```console
$ hyperfine -L typos ./typos-main,./typos-anstream "{typos} ../../../linux" -i
Benchmark 1: ./typos-main ../../../linux
  Time (mean ± σ):     20.082 s ±  0.111 s    [User: 39.668 s, System: 0.474 s]
  Range (min … max):   19.961 s … 20.331 s    10 runs

  Warning: Ignoring non-zero exit code.

Benchmark 2: ./typos-anstream ../../../linux
  Time (mean ± σ):     20.426 s ±  0.104 s    [User: 40.301 s, System: 0.523 s]
  Range (min … max):   20.316 s … 20.661 s    10 runs

  Warning: Ignoring non-zero exit code.

Summary
  './typos-main ../../../linux' ran
    1.02 ± 0.01 times faster than './typos-anstream ../../../linux'

$ CLICOLOR_FORCE=1 hyperfine -L typos ./typos-anstream "{typos} ../../../linux" -i
Benchmark 1: ./typos-anstream ../../../linux
  Time (mean ± σ):     20.262 s ±  0.075 s    [User: 39.961 s, System: 0.542 s]
  Range (min … max):   20.154 s … 20.420 s    10 runs

  Warning: Ignoring non-zero exit code.

$ CLICOLOR=0 hyperfine -L typos ./typos-anstream "{typos} ../../../linux" -i
Benchmark 1: ./typos-anstream ../../../linux
  Time (mean ± σ):     20.296 s ±  0.065 s    [User: 40.003 s, System: 0.565 s]
  Range (min … max):   20.169 s … 20.383 s    10 runs

  Warning: Ignoring non-zero exit code.
```
2023-03-13 23:01:45 -05:00
Ed Page
28e7f17a65 chore: Release 2023-03-13 20:45:44 -05:00
WaterLemons2k
6855a78893 feat(ci): Use composite to run action
Using composite instead of docker to avoid building image,
it can make the action faster.

If the `typos` command doesn't exist, download and extract it.
2023-03-14 23:04:09 +08:00
Ed Page
34289639e6 chore: Release 2023-03-13 12:33:33 -05:00
Ed Page
4de8a7c366
Merge pull request #679 from phip1611/erronerous
feat(dict): Add: erronerous -> erroneous
2023-03-13 12:32:01 -05:00
Ed Page
6003b48885
Merge pull request #680 from phip1611/existend
change(dict): existend => existed,existent
2023-03-13 12:31:45 -05:00
Ed Page
3d0de83fb6 chore: Release 2023-03-13 11:57:15 -05:00
Eric Fu
4eeb460bb7 fix: ignore go.mod by default 2023-03-13 23:53:05 +08:00
Philipp Schuster
cc26a8f693 change: existend => existed,existent 2023-03-12 14:42:09 +01:00
Philipp Schuster
500b9e3445 add: erronerous -> erroneous 2023-03-12 13:29:49 +01:00
Ed Page
5f7454815c
Merge pull request #685 from epage/shuffle
fix(pre-commit): Separate cli from pre-commit package
2023-03-13 09:32:39 -05:00
Ed Page
13dbffcf7c fix(pre-commit): Separate cli from pre-commit package
Fixes #682
2023-03-08 10:19:20 -06:00
Jonas Platte
f8ec64571f
feat(dict): Add empheral -> ephemeral 2023-03-08 14:01:24 +01:00
Ed Page
08a9831825 chore: Release 2023-03-05 20:43:46 -06:00
George Dietrich
3feda3ca91
feat: Add additional corrections 2023-03-06 09:41:47 -05:00
Ed Page
f4293b58c5 chore: Release 2023-02-28 06:30:27 -06:00
Ed Page
ce20d2f220 chore: Update dependencies 2023-02-28 05:46:19 -06:00
Ed Page
d752626069 chore: Update dependencies 2023-02-27 23:34:02 -06:00
Ed Page
8cef23a8f4 chore: Release 2023-02-27 16:14:07 -06:00
Jonas Platte
afcd316ddd
feat(dict): Add more encryption-related typos 2023-02-28 19:03:44 +01:00
Ed Page
9f306b2be9 chore: Release 2023-02-27 15:33:00 -06:00
Damian Barabonkov
6a4e0ead52 feat(dict): Add grouepd -> grouped 2023-02-28 18:19:46 +01:00
Ed Page
59a10c298a chore: Release 2023-02-23 10:44:11 -06:00
Ed Page
7cd5a8c99f fix(dict): Don't correct Referer 2023-02-23 10:24:07 -06:00
Ed Page
ed8683ab81 chore: Release 2023-02-22 11:26:17 -06:00
Ed Page
1ca59423d4 chore: Release 2023-02-22 11:25:22 -06:00
Ed Page
d99eb1601b refactor: Resolve deprecations 2023-02-21 11:11:24 -06:00
Ed Page
15e748d0e5 refactor: Switch to winnow 2023-02-21 10:41:45 -06:00
Jiralite
17cc43aaca
feat: Add "someoene" 2023-02-13 14:48:09 +00:00
Ed Page
6e14cefb85 chore: Release 2023-02-01 10:09:00 -06:00
Ed Page
adce192ca3 chore: Update dependencies 2023-02-01 09:31:38 -06:00
Jiralite
9094b0b9aa
feat: Add 3 typos 2023-02-01 14:34:33 +00:00
Ed Page
97770bdd02 chore: Release 2023-01-25 10:31:49 -06:00
Naïm Favier
3817b97017
fix(dict): "substitutents" → "substituents"
is a more likely replacement than "substitutes".
2023-01-24 15:53:38 +01:00
Naïm Favier
d9ace5fd25
fix(dict): "substituters" is valid
https://en.wiktionary.org/wiki/substituters
2023-01-24 15:52:27 +01:00
Olivier Delhomme
ee8446b127 Adds 'regylar' as a typo for 'regular'. 2023-01-17 20:37:35 +01:00
Ed Page
12c6491895 chore: Release 2023-01-16 08:43:06 -06:00
Jonas Platte
5391527894
feat(dict): Add serialzie -> serialize 2023-01-16 13:37:21 +01:00
renovate[bot]
4f6f07b904 chore(deps): update compatible 2023-01-01 02:13:39 +00:00
Ed Page
1d8996e205 chore: Release 2022-12-06 13:54:17 -06:00
Ed Page
c963f68083 fix(dict): Remove nilable
See conversation in #613
2022-12-06 10:47:14 -06:00
Ed Page
98c3a33cc6 chore: Release 2022-12-01 20:00:28 -06:00
renovate[bot]
aa2789b65f chore(deps): update safe 2022-12-02 00:14:56 +00:00
Ed Page
905a150be8 chore: Release 2022-11-21 22:25:30 -06:00
Nathan Baulch
d7b3b548f0 feat(dict): 133 assorted typos 2022-11-21 21:48:40 -06:00
Ed Page
39b28c3010 chore: Release 2022-11-03 22:28:10 -05:00
Ed Page
87a02e2a2a chore: Switch to workspace inheritance 2022-11-01 14:20:38 -05:00
Ed Page
1cd8a74031 chore: Upgrade dependencies 2022-11-01 14:14:35 -05:00
Ed Page
2dca8dea3c chore: Bump versions 2022-10-25 07:10:22 -05:00
Jonas Platte
f0e268bb7e
feat(dict): Add decreypted -> decrypted 2022-10-25 12:10:43 +02:00
Ed Page
4e7e37799b chore: Release 2022-10-20 07:08:07 -05:00
Jonas Platte
02afa6e98b
feat(dict): Add wrappning -> wrapping 2022-10-20 10:07:39 +02:00
Ed Page
2fc71b2e13 chore: Release 2022-10-11 09:48:09 -05:00
Robert
611bd09d9d
feat(dict): Add assorted typos
baged -> bagged
baged -> badge
codesbase -> codebase (+ variants)
depercate -> deprecate (+ variants)
fallthough -> fallthrough
2022-10-11 15:14:16 +11:00
Ed Page
16ca0accbb chore: Release 2022-10-06 08:26:11 -05:00
Jonas Platte
6d6713180e
feat(dict): Add whaat -> what 2022-10-06 14:27:29 +02:00
Ed Page
2b667ffe55 fix: Correctly calculate trie 2022-10-04 10:57:28 -05:00
Ed Page
f78135acd2 chore: Bump MSRV to 1.64.0 2022-10-04 10:51:03 -05:00
Ed Page
32485c4bad chore: Upgrade dependencies 2022-10-03 11:36:25 -05:00
Ed Page
fd5abef1a7 chore: Release 2022-09-22 13:38:17 -05:00
Robert
bcd622e33c
feat(dict): Add 'targest -> target' 2022-09-22 16:07:12 +10:00
Ed Page
668a94791b chore: Release 2022-09-21 19:28:48 -05:00
Frank Steffahn
a2cc907420 feat(dict): Add 'pararmeter -> parameter' 2022-09-22 01:59:52 +02:00
Ed Page
384aaef311 chore: Release 2022-09-15 08:43:18 -05:00
Jonas Platte
e8e20f28bb
feat(dict): Add 'stte' typo 2022-09-15 10:35:19 +02:00
Ed Page
3161cd6a82 chore: Release 2022-09-06 09:25:25 -05:00
Yuta Hayashibe
7ee918f078 Removed their from the correction candidate of thje 2022-09-06 23:01:10 +09:00
Yuta Hayashibe
d207af69ae Add some typos 2022-09-06 19:33:15 +09:00
Ed Page
c6d876294c chore: Release 2022-09-01 10:43:57 -05:00
Ed Page
7f470e1721 Revert "Revert "fix: remove thead -> thread""
This reverts commit 1e58c65276.
2022-09-01 10:28:53 -05:00
Ed Page
c49aff00be test: Make platform agnostic 2022-09-01 07:15:42 -05:00
Ed Page
fdb425c279 chore: Release 2022-08-30 09:28:57 -05:00