Commit Graph
510 Commits
Author SHA1 Message Date
Ed Page 36935481eb Merge pull request #254 from epage/perf
perf(dict): Bypass vars when possible
2021-05-19 19:42:08 -05:00
Ed Page b99f32dea8 perf(dict): Bypass vars when possible
Variant support slows us down by 10-50$.  I assume most people will run
with `en` and so most of this overhead is to waste.  So instead of
merging vars with dict, let's instead get a quick win by just skipping
vars when we don't need to.  If the assumptions behind this change over
time or if there is need for speeding up a specific locale, we can
re-address this.

Before:
```
check_file/Typos/code   time:   [35.860 us 36.021 us 36.187 us]
                        thrpt:  [8.0117 MiB/s 8.0486 MiB/s 8.0846 MiB/s]
check_file/Typos/corpus time:   [26.966 ms 27.215 ms 27.521 ms]
                        thrpt:  [21.127 MiB/s 21.365 MiB/s 21.562 MiB/s]
```
After:
```
check_file/Typos/code   time:   [33.837 us 33.928 us 34.031 us]
                        thrpt:  [8.5191 MiB/s 8.5452 MiB/s 8.5680 MiB/s]
check_file/Typos/corpus time:   [17.521 ms 17.620 ms 17.730 ms]
                        thrpt:  [32.794 MiB/s 32.999 MiB/s 33.184 MiB/s]
```

This puts us inline with `--no-default-features --features dict`

Fixes #253
2021-05-19 13:55:41 -05:00
Ed Page d65fa79d0e refactor(dict): Make feature flag paths clearer 2021-05-18 19:45:11 -05:00
Ed Page e6c595c585 Merge pull request #252 from epage/dict
fix(dict): Handle cases from Linux
2021-05-18 13:13:58 -05:00
Ed Page 639e65b88a fix(dict): Handle cases from Linux
These were found while running `typos` on Linux and inspecting a
sampling of the results.  #249 represents additional changes to make.
There were some identifiers, that looked like hardware registers, that
I'm unsure of what can be done for them.
2021-05-18 12:02:03 -05:00
Ed Page fb0dac4297 refactor(dict): Allow 0..n corrections in BuiltIn
The main use case is taking `ther` -> `there` and adding `the` and
`their`.
2021-05-18 12:02:03 -05:00
Ed Page 444d2cca91 Merge pull request #251 from epage/vars
fix(dict): Correctly connect dict with varcon
2021-05-17 21:51:13 -05:00
Ed Page 04e55e4e85 fix(dict): Correctly connect dict with varcon
We had a bug where `finallizes` with EnGb would not correct to
`finalises`
2021-05-17 21:23:12 -05:00
Ed Page 77cfccb392 refactor(varcon): Clarify check's meanings 2021-05-15 19:29:27 -05:00
Ed Page fa7ce95fd1 Merge pull request #250 from epage/ci
chore(ci): Clarify step names
2021-05-15 19:13:38 -05:00
Ed Page 9788f34c09 chore(ci): Clarify step names 2021-05-15 19:03:10 -05:00
Ed Page 99318d80ab Merge pull request #248 from epage/short
fix(cli): Display shortened paths to users
2021-05-14 21:50:37 -05:00
Ed Page e3c191e07e fix(cli): Display shortened paths to users
Before, we always displayed absolute paths and now we'll display
relative ones.

The main issue was loading the config correctly.  We just have to
cannonicalize whenever doing so.
2021-05-14 20:39:08 -05:00
Ed Page 7c6b85c442 Merge pull request #247 from epage/search
fix(cli): Discover config in parent dirs
2021-05-14 18:55:13 -05:00
Ed Page 1a1ff20f40 fix(cli): Discover config in parent dirs
My only guess is that in a76ddd42, I lost track of different parts of my
change and never re-implemented this logic.
2021-05-14 14:06:20 -05:00
Ed Page a0c592ff81 feat(cli): Provide traceability on config loading 2021-05-14 14:02:58 -05:00
Ed Page cc5c2b6f5d Merge pull request #246 from epage/api
fix(cli): Clarify API stabiliy
2021-05-13 16:39:02 -05:00
Ed Page c4050b41a2 fix(cli): Clarify API stabiliy
For now, I'm just punting on `typos_cli`s API.

Fixes #171
2021-05-13 13:34:27 -05:00
Ed Page 21d02bd958 Merge pull request #245 from epage/update
chore: Update enumflags2
2021-05-13 12:43:28 -05:00
Ed Page b830872ad0 chore: Update enumflags2 2021-05-13 10:20:15 -05:00
Ed Page 7c803681c4 chore: Release codespell-codegen-v0.3.0 codespell-dict-v0.3.0 misspell-codegen-v0.3.0 misspell-dict-v0.3.0 typos-dict-codegen-v1.2.0 typos-dict-v0.4.0 typos-dict-verify-v1.2.0 typos-v0.5.0 typos-vars-codegen-v1.2.0 typos-vars-v0.4.0 v0.3.0 varcon-codegen-v1.2.0 varcon-core-v1.2.0 varcon-v0.4.0 wikipedia-codegen-v0.3.0 wikipedia-dict-v0.3.0 2021-05-13 09:58:09 -05:00
Ed Page 183f153b04 docs: Update changelog 2021-05-13 07:02:48 -05:00
Ed Page 95d023452b Merge pull request #244 from epage/color
feat(cli): Colored output
2021-05-13 06:57:58 -05:00
Ed Page 60950d02bb feat(cli): Colored output
This supports
- Basic capability detection
- NO_COLOR env variable
- tty detection
- CLI overrides

This does not yet support CLICOLOR.  I'll be trying to upstream all of
this into `yansi` and get it taken care of there.

This only supports Windows Anniversary edition and later which I think
is a fine compromise due to the ergonomic difference between `yansi` and
`termcolor`.

Fixes #30
2021-05-12 21:11:52 -05:00
Ed Page 943ae7f490 refactor(cli)!: Shift Report impls to bin
This way we can add dependencies on things like `yansi` without worrying
about compatibility.
2021-05-12 19:51:41 -05:00
Ed Page 5a4a707004 refactor(cli): Separate out bin 2021-05-04 21:47:34 -05:00
Ed Page 57afb278c2 Merge pull request #243 from crate-ci/dependabot/cargo/regex-1.5.2
chore(deps): Bump regex from 1.5.1 to 1.5.2
2021-05-03 18:16:22 -05:00
dependabot[bot] c42945b88e chore(deps): Bump regex from 1.5.1 to 1.5.2
Bumps [regex](https://github.com/rust-lang/regex) from 1.5.1 to 1.5.2.
- [Release notes](https://github.com/rust-lang/regex/releases)
- [Changelog](https://github.com/rust-lang/regex/blob/master/CHANGELOG.md)
- [Commits](https://github.com/rust-lang/regex/compare/1.5.1...1.5.2)

Signed-off-by: dependabot[bot] <support@github.com>
2021-05-01 14:07:40 +00:00
Ed Page 0e16f37e47 Merge pull request #241 from crate-ci/dependabot/cargo/regex-1.5.1
chore(deps): Bump regex from 1.4.6 to 1.5.1
2021-05-01 09:05:15 -05:00
Ed Page 3b9061dece Merge pull request #240 from crate-ci/dependabot/cargo/codegenrs-1.0.0
chore(deps): Bump codegenrs from 0.1.5 to 1.0.0
2021-05-01 09:04:51 -05:00
Ed Page cec850890c Merge pull request #238 from epage/range
fix(dict)!: Clarify word sizes with Ranges
2021-05-01 08:54:08 -05:00
Ed Page 9883886664 Merge pull request #239 from epage/features
chore(cli): Allow building without expensive parts
2021-05-01 08:54:00 -05:00
dependabot[bot] c7521bfc7e chore(deps): Bump regex from 1.4.6 to 1.5.1
Bumps [regex](https://github.com/rust-lang/regex) from 1.4.6 to 1.5.1.
- [Release notes](https://github.com/rust-lang/regex/releases)
- [Changelog](https://github.com/rust-lang/regex/blob/master/CHANGELOG.md)
- [Commits](https://github.com/rust-lang/regex/compare/1.4.6...1.5.1)

Signed-off-by: dependabot[bot] <support@github.com>
2021-05-01 07:02:07 +00:00
dependabot[bot] d72fa7acba chore(deps): Bump codegenrs from 0.1.5 to 1.0.0
Bumps [codegenrs](https://github.com/crate-ci/codegenrs) from 0.1.5 to 1.0.0.
- [Release notes](https://github.com/crate-ci/codegenrs/releases)
- [Changelog](https://github.com/crate-ci/codegenrs/blob/master/CHANGELOG.md)
- [Commits](https://github.com/crate-ci/codegenrs/compare/v0.1.5...v1.0.0)

Signed-off-by: dependabot[bot] <support@github.com>
2021-05-01 07:01:59 +00:00
Ed Page 6216fa0837 fix(dict)!: Clarify word sizes with Ranges
The code was generated with separate min / max, rather than using a
Range and ensuring the API is used correctly.
2021-04-30 21:33:33 -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 14f1532bee docs: Switch from blacklist language 2021-04-30 20:49:01 -05:00
Ed Page 4b812e1b96 docs: Re-organize to clarify intent
This is part of #237
2021-04-30 20:41:57 -05:00
Ed Page af1324fa37 Merge pull request #236 from epage/clean
style(bench): Modernize checks bench
2021-04-30 13:45:04 -05:00
Ed Page c2e398975a style(bench): Modernize checks bench 2021-04-30 13:24:44 -05:00
Ed Page e4f477799a Merge pull request #235 from epage/parser
perf(parser): Overhaul how parsing is done
2021-04-30 13:04:11 -05:00
Ed Page f40ed5a328 style: Address clippy 2021-04-30 11:37:16 -05:00
Ed Page 42d398fd5f chore: Update deps 2021-04-30 10:40:13 -05:00
Ed Page 92a1172bfa feat(ddi): Allow controlling 'unicode' via args 2021-04-30 10:36:55 -05:00
Ed Page 6146824b4e refactor(cli): Share bool logic 2021-04-30 10:26:12 -05:00
Ed Page 517da7ecd2 perf(parser): Allow people to bypass unicode cost 2021-04-29 21:07:59 -05:00
Ed Page 09d2124d0f perf(parser): Limit inner-loop assers 2021-04-29 18:31:05 -05:00
Ed Page 287c4cbfe9 refactor(parser): Give more impl flexibility 2021-04-29 18:31:05 -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 f15cc58f71 fix(parser): Flip leading digits to work correctly 2021-04-29 18:30:14 -05:00