-
Notifications
You must be signed in to change notification settings - Fork 82
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Overhaul #726
Overhaul #726
Conversation
0763e83
to
1f6be62
Compare
So are we settling on
As for the it('gives correct diagnostics', () => {
compareActualVsExpectedDiagnostics(
getActualDiagnostics(markdownUri),
createExpectedDiagnostics(
{
message: 'Did you mean to repeat this word?',
range: createRange(2, 39, 2, 48)
},
{
message: 'Did you mean to spell “errorz” this way?',
range: createRange(2, 26, 2, 32)
}
)
);
}); to it('gives correct diagnostics', () => {
compareActualVsExpectedDiagnostics(
getActualDiagnostics(markdownUri),
createExpectedDiagnostics(
{
message: 'Did you mean to spell “errorz” this way?',
range: createRange(2, 26, 2, 32)
},
{
message: 'Did you mean to repeat this word?',
range: createRange(2, 39, 2, 48)
}
)
);
}); should fix the issue. Lastly, {
"files.associations": { "git-commit": "git-commit" },
"harper-ls.linters.spell_check": true,
"harper-ls.linters.repeated_words": true,
} to {
"files.associations": { "git-commit": "git-commit" },
"harper-ls.linters.SpellCheck": true,
"harper-ls.linters.RepeatedWords": true,
} |
Co-authored-by: mcecode <mcecode@users.noreply.github.com>
This ended up improving overall performance by ~20%
b1e7af5
to
1017a2c
Compare
1017a2c
to
cdd4a43
Compare
Co-authored-by: mcecode <mcecode@users.noreply.github.com>
You're absolutely right @mcecode. I've updated the keys to match. Thanks for looking into why those tests were failing :). |
There are a number of changes in here, all aimed towards refactoring Harper's core engine to be more faster, simpler, and more extensible.
The biggest change (so far) was to rework the
LintGroup
type to be runtime-extensible. This significantly reduces the number of types the Rust compiler must churn through and therefore significantly improves compile times.Additionally, I've changed the naming conventions of the Harper lint setting keys. If you configure
harper-ls
throughlspconfig
, you may need change your settings to match the new schema (which will be outlined in our Neovim configuration documentation). In VSCode or Obsidian, you may have to reconfigure your setup. See #667 for why we are doing this.I will also be updating the Rust version and removing a ton of boilerplate in
Pattern
s.The goal is to do as many wide-reaching changes in one PR, in order to pay back tech debt in a way that avoids merge conflicts.