Ed Page
17f9d18573
Merge pull request #877 from crate-ci/renovate/itertools-0.x
...
chore(deps): update rust crate itertools to 0.12
2023-12-01 10:19:00 -06:00
renovate[bot]
7c0b1f2b13
chore(deps): update compatible
2023-12-01 00:37:24 +00:00
renovate[bot]
1752c10187
chore(deps): update rust crate itertools to 0.12
2023-12-01 00:25:50 +00:00
Ed Page
c97d621b6b
chore: Release
2023-11-06 11:56:23 -06:00
Ed Page
e24c694258
fix(cli): Respect force-exclude for simple exclude pattersn
...
Fixes #868
2023-11-06 11:32:44 -06:00
Ed Page
edfb79f537
test(cli): Reproduce force-exclude bug
2023-11-06 11:20:21 -06:00
Ed Page
0d04ce91a7
chore: Release
2023-11-01 13:58:29 -05:00
Ed Page
47dd297604
chore: Release
2023-10-27 10:06:07 -05:00
Ed Page
0a5b4abbd5
fix(cli): Make the correction stand out more
...
This does deviate from rustc for `long` format but it seems worth it.
I did move backticks to be out of the coloring so the `error:` was more
distinct from the typo in `long` format.
2023-10-27 09:28:11 -05:00
Ed Page
1ca321659d
fix(cli): Add styling to --file-types
2023-10-27 09:19:42 -05:00
Ed Page
686e4cebe8
fix(cli): Better match rustc's color choices
...
I missed that rustc was using "bright" colors
2023-10-27 09:16:29 -05:00
Ed Page
56eef884d7
refactor(cli): Simplify palette handling
...
This did include a couple of tweaks to make it closer to rustc
2023-10-27 09:15:03 -05:00
Ed Page
00220c359a
chore: Release
2023-10-17 13:21:10 -05:00
Ed Page
b2685877d2
fix(dict): Dont correct common Julia terms
2023-10-16 20:51:12 -05:00
Ed Page
a640285093
fix(dict): Match .jl to Julia, rather than lisp
2023-10-16 20:50:39 -05:00
Ed Page
a2777f710b
test(cli): Verify some Julia terms
2023-10-16 20:40:15 -05:00
Ed Page
d8ac870213
fix(dict): Alllow SHTTP
2023-10-16 20:25:36 -05:00
Ed Page
018f404770
test(cli): Verify shttp shows up
2023-10-16 20:23:14 -05:00
Ed Page
b221e9ce56
chore: Clean up dependencies
2023-10-16 12:58:00 -05:00
Ed Page
c004e98018
chore: Release
2023-10-16 12:51:32 -05:00
Ed Page
be8628fcb3
feat(config): Allow ignoring words by regex
...
Fixes #852
2023-10-16 12:37:00 -05:00
Ed Page
35a8bc6787
chore: Release
2023-10-11 22:09:14 -05:00
Dawid Ciężarkiewicz
c2e3454a94
feat: --file-list
support
2023-10-11 16:32:31 -07:00
Ed Page
ff3f309513
chore: Release
2023-10-09 15:32:06 -05:00
Delgan
8314a1567d
Add "--force-exclude" option
2023-10-09 19:39:11 +00:00
Delgan
442b1199da
Add initial test preparing "--force-exclude"
2023-10-09 18:53:18 +00:00
Ed Page
4550e7d437
chore: Release
2023-10-02 15:42:50 -05:00
Ed Page
0865dcbf14
Merge pull request #846 from epage/help
...
fix(cli): Improve help layout
2023-10-02 15:41:50 -05:00
Ed Page
4d8497cfe4
Merge pull request #839 from crate-ci/renovate/anstream-0.x
...
chore(deps): update rust crate anstream to 0.6.4
2023-10-02 15:12:49 -05:00
Ed Page
3eff16fd47
Merge pull request #840 from crate-ci/renovate/toml-0.x
...
chore(deps): update rust crate toml to 0.8.1
2023-10-02 15:12:31 -05:00
Ed Page
21c88ca878
fix(cli): Improve help layout
2023-10-02 13:22:44 -05:00
Ed Page
569b09780b
test(cli): Track help output
2023-10-02 13:10:05 -05:00
Ed Page
3cdcc38848
chore: Release
2023-10-02 10:27:24 -05:00
renovate[bot]
3f806a4aea
chore(deps): update rust crate toml to 0.8.1
2023-10-01 03:30:10 +00:00
renovate[bot]
484fdd8c2b
chore(deps): update rust crate anstream to 0.6.4
2023-10-01 03:29:52 +00:00
renovate[bot]
d34cc2c4b0
chore(deps): update compatible
2023-10-01 00:46:21 +00:00
Ed Page
1ccb2ff8ad
chore: Release
2023-09-27 10:50:39 -05:00
Ed Page
243b187934
fix(cli): Properly fallback to built-in ident dict
2023-09-27 10:35:22 -05:00
Ed Page
21dba19dec
test: Demo line-ignore behavior
2023-09-26 11:01:26 -05:00
Ed Page
bb139b2150
chore: Release
2023-09-25 13:08:40 -05:00
Ed Page
f5a94fc3cc
chore: Release
2023-09-25 13:07:27 -05:00
Ed Page
5fd0df2881
fix(cli): Dont correct O_WRONLY
...
Realized we could just hard code this for now rather creating a general
identifier dictionary.
Fixes #744
2023-09-25 12:50:07 -05:00
Ed Page
9f1d7017e2
test(cli): Show existing O_WRONLY behavior
2023-09-25 12:46:00 -05:00
Ed Page
66a70abc40
refactor(cli): Make room for ident dict
2023-09-25 12:42:18 -05:00
Ed Page
fd6873b6e0
refactor(cli): Make room for ident correction
2023-09-25 12:40:17 -05:00
Ed Page
5edf45b39e
chore: Release
2023-09-22 19:24:01 -05:00
Ed Page
509ec32112
chore: Release
2023-09-18 14:06:59 -05:00
Ed Page
7c89b528fd
chore: Release
2023-09-06 15:33:02 -05:00
Logan Hunt
b856b9603f
feat(config): Support for pyproject.toml
files ( #790 )
...
This PR adds support for parsing `pyproject.toml` config files. The convention
for these files is to put any tooling related configuration into the
`tool.NAME` section, so in this case, `tool.typos`. I have verified that the
changes are pulled correctly, even if the `tool.typos` section is not present.
Closes #361
2023-09-06 15:31:14 -05:00
Ed Page
65d2fb6b91
chore: Release
2023-09-01 16:22:11 -05:00
Ed Page
602923bbc8
chore: Release
2023-09-01 16:20:50 -05:00
Ed Page
0c05b217d4
style: Make clippy happy
2023-09-01 10:20:03 -05:00
Ed Page
67ca12a847
Merge pull request #822 from crate-ci/renovate/itertools-0.x
...
chore(deps): update rust crate itertools to 0.11
2023-09-01 09:34:45 -05:00
renovate[bot]
f4171e782f
chore(deps): update rust crate itertools to 0.11
2023-09-01 03:12:20 +00:00
renovate[bot]
b7681dc6b5
chore(deps): update rust crate anstream to 0.5.0
2023-09-01 03:09:48 +00:00
renovate[bot]
6da9470ef9
chore(deps): update compatible
2023-09-01 01:11:49 +00:00
Ed Page
853cb28df3
chore: Release
2023-08-30 10:43:04 -05:00
Ed Page
e477391cc0
chore: Release
2023-08-21 13:14:08 -05:00
Ed Page
1072809e63
chore: Release
2023-08-21 10:36:58 -05:00
Ed Page
8be21b28e7
fix(cli): Improve error when args aren't present
2023-08-21 10:20:16 -05:00
Ed Page
cfa1821100
test(cli): Show no file error
2023-08-21 10:16:16 -05:00
Ed Page
f8d11b3a69
chore: Release
2023-08-18 16:48:33 -05:00
Ed Page
c927717f2d
fix(cli): Report more errors through report system
2023-08-18 16:28:53 -05:00
Ed Page
104ebdcb6b
fix(cli): Report paths with errors
2023-08-18 16:28:00 -05:00
Ed Page
e003ac8f1e
fix(cli): Improve error on missing config
2023-08-18 16:08:25 -05:00
Ed Page
03e6afbaa6
test(cli): Verify missing config error
2023-08-18 16:03:07 -05:00
Ed Page
0becfbf6cf
fix: Accidentally ran typos on typos
2023-08-14 15:55:39 -05:00
Ed Page
8f65f4802b
chore: Adopt '_rust/main' template
2023-08-14 15:06:53 -05:00
Ed Page
0863e64406
chore: Release
2023-08-14 09:55:06 -05:00
Ed Page
25383eb358
Merge pull request #803 from epage/lock
...
fix: Dont check pnpm lockfiles
2023-08-14 09:52:56 -05:00
Ed Page
ef8bf24e7e
fix: Dont check pnpm lockfiles
...
Fixes #802
2023-08-14 09:36:53 -05:00
Viktor Szépe
0d101f3055
chore: move deprecated package.metadata.maturin ( #801 )
2023-08-12 19:09:26 -05:00
Ed Page
cad89d4596
chore: Release
2023-08-11 20:31:59 -05:00
Ed Page
ef5fcf92df
chore: Release
2023-08-09 08:36:21 -05:00
Ed Page
e12fe9b20b
Merge pull request #799 from epage/code
...
fix(cli): Report bad exit code on disallowed
2023-08-09 08:34:17 -05:00
Ed Page
3bae999225
fix(cli): Report bad exit code on disallowed
2023-08-09 08:21:53 -05:00
Ed Page
3f41a6791c
test(cli): Verify disallowed functionality
2023-08-09 08:15:05 -05:00
Martin Fischer
d3e48b202b
fix(cli): Allow ot and stap in sh
2023-08-08 18:24:44 +02:00
Martin Fischer
e5e8f25c8e
fix(cli): Allow nd in css
2023-08-08 18:24:44 +02:00
Martin Fischer
5181c42c57
fix(cli): Allow Nd in man pages
2023-08-08 18:24:44 +02:00
Ed Page
6f0c32c802
Merge pull request #793 from not-my-profile/refactor-file-type-specifics
...
refactor(cli): Introduce file_type_specifics module
2023-08-08 11:22:10 -05:00
Martin Fischer
d9a1085018
refactor(cli): Abstract away regex ignores
...
This isn't perfect as this only helps when doing checks and not in the
parsing impls.
This supersedes #797
2023-08-08 10:40:22 -05:00
Martin Fischer
5dbe0948d3
docs(cli): Add comments to file-type specific ignores
2023-08-08 06:22:34 +02:00
Martin Fischer
fa39bca152
refactor(cli): Introduce file_type_specifics module
...
This makes the definition of file-type specifics less repetitive.
Resolves #759 .
2023-08-08 06:22:34 +02:00
Ed Page
d4258b1aa0
fix(cli): Remove stray character on disallowed words
2023-08-07 16:24:51 -05:00
Ed Page
8a7996b4bc
chore: Release
2023-08-01 10:43:28 -05:00
Ed Page
143cc59fab
chore: Release
2023-07-14 14:05:04 -05:00
Ed Page
37e2b40f24
chore: Release
2023-07-14 14:01:12 -05:00
Ed Page
a2c9d2076a
Merge remote-tracking branch 'upstream/master'
2023-07-14 14:00:31 -05:00
Ed Page
9fa116eaf6
chore: Release
2023-07-14 13:59:11 -05:00
Ed Page
9426924f8f
fix: Hide optional dependencies
2023-07-14 12:33:02 -05:00
Ed Page
ca9612c045
chore: Release
2023-07-10 10:01:29 -05:00
Ed Page
f69eec1ce3
Merge pull request #729 from scop/feat/trim-in-extension
...
feat(cli): Strip `.in` suffix(es) before attempting filename match
2023-07-10 09:59:19 -05:00
Ville Skyttä
d6ac36f057
fix(cli): Make .in
stripping work with non-UTF-8 filenames
2023-07-09 12:01:53 +03:00
Ed Page
ccdede0f8c
chore: Release
2023-07-03 09:34:49 -05:00
Ed Page
2158ddd42c
chore: Release
2023-06-30 09:43:35 -05:00
Ed Page
2f61fa1697
chore: Release
2023-06-29 11:13:01 -05:00
Ed Page
888116ae2f
chore: Release
2023-06-26 15:43:01 -05:00
Ed Page
2fffb1bb2b
chore: Release
2023-06-26 09:05:53 -05:00
Ed Page
d9e1ae0a39
chore: Release
2023-06-22 12:33:50 -05:00
Ed Page
5f1d3c23bc
fix(config): Force-skip config files
...
This doesn't use `extend-exclude` which means that `typos typos.toml`
will stil be skipped
This doesn't just skip the currently loaded config but any file name
that looks like a config, which might be a big aggressive but allows us
to do layered config in the future.... We've been saying that for a
while.
Fixes #711
2023-06-22 12:20:07 -05:00
Ed Page
8074cc6029
chore: Release
2023-06-22 10:13:38 -05:00
Ed Page
9e293916d2
fix(config): Always apply type defaults
...
Fixes #760
2023-06-22 09:57:15 -05:00
Ed Page
72c773aade
test(config): Verify bad merge
2023-06-22 09:16:23 -05:00
Ed Page
84c8b30e06
chore: Release
2023-06-21 14:51:20 -05:00
Ed Page
fce92e4e5f
fix(config): User file types override default file types
...
This also ensures `typos --type-list` will report the glob in only one
place.
Fixes #754
2023-06-21 14:31:04 -05:00
Ed Page
77f0389a9e
test(config): Reproduce types bug
2023-06-21 14:17:19 -05:00
Ed Page
1a4e9428d6
chore: Release
2023-06-20 09:25:04 -05:00
Ed Page
427d127e8a
fix: Ensure stdout is locked
...
In 3a29410c1b
, we switched to anstream
which doesn't seem to be locking properly (rust-lang/cargo#12289 ). For
now, we are working around it.
Fixes #749
2023-06-20 09:04:31 -05:00
Ed Page
59888680cc
chore: Release
2023-06-19 10:28:02 -05:00
Ed Page
f37d3f8e3c
chore: Release
2023-06-08 10:29:00 -05:00
Ed Page
172ff0bb5a
chore: Release
2023-06-08 10:27:43 -05:00
Ed Page
20b36ca07f
chore: Release
2023-06-01 19:49:16 -05:00
Ed Page
27c9fe7c79
chore: Release
2023-06-01 06:22:12 -05:00
Ed Page
a78f83bab3
Merge pull request #731 from crate-ci/renovate/criterion-0.x
...
chore(deps): update rust crate criterion to 0.5
2023-06-01 09:45:34 -05:00
renovate[bot]
e06f63c31d
chore(deps): update compatible
2023-06-01 02:54:09 +00:00
renovate[bot]
9aa8d04d94
chore(deps): update rust crate criterion to 0.5
2023-06-01 00:53:02 +00:00
Ville Skyttä
9c74d015f3
feat(cli): Strip .in
suffix(es) only on non-match
...
Makes user assigned `.in` work.
2023-05-25 15:24:04 +03:00
Ville Skyttä
90d4676dd7
feat(cli): Strip .in
suffix(es)
...
`.in` is typically used for build system template input files,
containing some placeholders to replace. In some cases, multiple rounds
of replacements are used, each with their own `.in`, so remove all
trailing instances of it before attempting a filename match.
Closes https://github.com/crate-ci/typos/issues/727
2023-05-24 22:54:45 +03:00
Ed Page
38a1b19481
chore: Release
2023-05-22 13:44:05 -05:00
Ed Page
5c98b91f18
chore: Release
2023-05-19 08:51:04 -05:00
Ed Page
adfd866ed9
test(cli): Check more former false positives
2023-05-19 08:18:25 -05:00
Ed Page
641e734fe7
fix(dict): Dont correct add-ons
...
Fixes #721
2023-05-19 08:13:01 -05:00
Ed Page
9e01ccbd3e
test(cli): Prevent false-positive regressions
2023-05-19 08:11:14 -05:00
Ed Page
78a3c66d00
chore: Release
2023-05-03 08:57:26 -05:00
Ed Page
b5b09d7129
chore: Release
2023-05-03 08:56:01 -05:00
renovate[bot]
5131fb8167
chore(deps): update compatible
2023-05-01 15:30:51 +00:00
Ed Page
9433f016bb
style: Fix formatting
2023-04-24 00:11:34 -05:00
Ed Page
64e40cffee
chore: Release
2023-04-19 09:47:11 -05:00
Ed Page
78058ce3e3
chore: Release
2023-04-19 08:35:04 -05:00
Ed Page
7f65ff4f24
chore: Release
2023-04-12 22:24:06 -05:00
Ed Page
5145767575
chore: Update anstyle
2023-04-12 21:52:15 -05:00
Ed Page
217e403326
docs(cli): Show SSL cipher suites
...
See #438
2023-04-11 01:17:33 -05:00
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
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
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
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
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
Ed Page
13dbffcf7c
fix(pre-commit): Separate cli from pre-commit package
...
Fixes #682
2023-03-08 10:19:20 -06:00