Commit Graph
1327 Commits
Author SHA1 Message Date
Ed Page 1c4dbcd5dd docs: Update changelog 2023-03-30 07:44:55 -05:00
Ed Page 37d90c230e Merge pull request #706 from epage/utf16
fix(cli): Actually decode UTF-16
2023-04-04 09:20:13 -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 v1.14.4 2023-03-29 21:55:35 -05:00
Ed Page 15cdad2a3f chore: Release typos-dict-v0.9.25 2023-03-29 21:54:57 -05:00
Ed Page db1950c95f docs: Update changelog 2023-03-29 21:54:24 -05:00
Ed Page bbda5ff582 Merge pull request #704 from epage/dict
fix(dict): Add March's typos
2023-04-03 10:31:35 -05:00
Ed Page e10e0d20da Merge pull request #703 from epage/enc
refactor: Switch out the UTF-16 encoding impl
2023-04-03 09:50:22 -05:00
renovate[bot] e1a138b637 chore(deps): update compatible 2023-04-01 07:05:05 +00: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
Ed Page 6cf303d421 chore: Release v1.14.3 2023-03-18 04:20:06 -05:00
Ed Page 433b736d58 docs: Update changelog 2023-03-18 04:19:58 -05:00
Ed Page 53e2855fa0 chore: Release typos-v0.10.11 2023-03-18 04:19:19 -05:00
Ed Page 8a6fc1895d chore: Release varcon-core-v2.2.10 2023-03-18 04:18:47 -05:00
Ed Page c504325218 Merge pull request #697 from epage/update
chore: Update winnow
2023-03-22 19:55:00 -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 v1.14.2 typos-v0.10.10 2023-03-18 02:09:49 -05:00
Ed Page a8eb9b075b docs: Update changelog 2023-03-18 02:09:34 -05:00
Ed Page 5253e5589b Merge pull request #695 from epage/ignore
feat(config): Custom ignores
2023-03-22 15:53:24 -05:00
Ed Page 0d46368bfa docs: Link to user-editable list of users 2023-03-18 02:08:10 -05:00
Ed Page 78062a8de7 chore(gh): Enable wiki 2023-03-18 01:49:06 -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 v1.14.1 2023-03-17 23:59:36 -05:00
Ed Page 2cf45c3eb0 docs: Update changelog 2023-03-17 23:59:20 -05:00
Ed Page 1aefbee825 Merge pull request #694 from epage/fix
fix: Actuall ignore ignored identifiers
2023-03-22 13:43:34 -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 fc7dfba01b docs(reference): Fix glob field name 2023-03-17 23:37:57 -05:00
Ed Page 0eae00fee2 test(cli): Consolidate files 2023-03-17 23:30:24 -05:00
Ed Page 797574c10a chore: Release v1.14.0 2023-03-17 23:09:02 -05:00
Ed Page 67f34020bd docs: Update changelog 2023-03-17 23:08:45 -05:00
Ed Page 7e0c4c4456 Merge pull request #693 from epage/re
feat(dict): extend-ignore-identifiers-re support
2023-03-22 11:41:19 -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 v1.13.26 2023-03-16 05:22:42 -05:00
Ed Page 179ecc3d44 docs: Update changelog 2023-03-16 05:22:24 -05:00
Ed Page 0366715612 Merge pull request #692 from epage/rename
chore: Update to anstream
2023-03-16 10:31:34 -05:00
Ed Page 52e1743c58 chore: Update to anstream 2023-03-16 05:07:38 -05:00
Ed Page 57502b53cc chore: Release typos-dict-v0.9.24 v1.13.25 2023-03-16 03:47:08 -05:00
Ed Page 33df8ce125 docs: Update changelog 2023-03-16 03:46:57 -05:00
Ed Page 0469295a01 Merge pull request #691 from epage/commit
fix(dict): Allow commitish
2023-03-16 07:44:54 -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 v1.13.24 2023-03-14 02:14:39 -05:00
Ed Page 2dcc0f0f8c docs: Update changelog 2023-03-14 02:14:31 -05:00
Ed Page 29e640b914 Merge pull request #688 from epage/anstream
fix: Improve color env variable support
2023-03-15 09:23:10 -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 v1.13.23 2023-03-13 20:45:44 -05:00