Releases: Automattic/harper
v0.22.0
What's Changed
- feat(core): create hyphenation rule for
out-of-date
by @elijah-potter in #671 - chore: use
just sampleforms
to fix curated dict entries by @hippietrail in #660 - fix: change "and alike" phrase correction to "and the like" by @hippietrail in #705
- Add Automattic Lingo and Branding by @elijah-potter in #706
- fix(core): possesive -> possessive typo in lint message by @b-sharman in #690
- build(deps): bump smallvec from 1.13.2 to 1.14.0 by @dependabot in #694
- build(deps-dev): bump @types/node from 22.13.1 to 22.13.4 in /packages by @dependabot in #698
- build(deps-dev): bump jasmine and @types/jasmine in /packages by @dependabot in #696
- build(deps): bump clap from 4.5.28 to 4.5.29 by @dependabot in #695
- build(deps-dev): bump vite-plugin-top-level-await from 1.4.4 to 1.5.0 in /packages by @dependabot in #699
- build(deps-dev): bump @sveltejs/adapter-node from 3.0.3 to 5.2.12 in /packages by @dependabot in #700
- build(deps-dev): bump flowbite from 3.1.1 to 3.1.2 in /packages by @dependabot in #697
- feat(harper.js): allow modification to the dictionary. by @elijah-potter in #683
- fix(core):
someways
is not a noun by @elijah-potter in #708 - fix(core): make
ChangeTack
lint more specific by @elijah-potter in #709
New Contributors
- @b-sharman made their first contribution in #690
Full Changelog: v0.21.1...v0.22.0
v0.21.1
What's Changed
- Proper noun caps australia by @hippietrail in #651
- feat: Flag "discuss about" instead of "discuss" by @hippietrail in #645
- feat: suggestion to change "sooner than later" by @hippietrail in #644
- feat: proper noun capitalization for Malaysia by @hippietrail in #652
- Implements #505 could of, should of, would of -> ... have by @hippietrail in #647
- Remove Duplicate Spelling Suggestions by @elijah-potter in #654
- feat(core): condense
further more
by @elijah-potter in #655 - feat: rename
FullDictionary
->MutableDictionary
and add some doc comments by @grantlemons in #658 - chore: fixes to curated dictionary affixes by @hippietrail in #650
- build(deps): bump once_cell from 1.20.2 to 1.20.3 by @dependabot in #634
- feat: add some words to curated dictionary by @hippietrail in #596
- feat(web): make underlines animate into existence on page load by @elijah-potter in #664
- Chock full by @hippietrail in #666
- Several New Linters by @elijah-potter in #663
- feat: multi-word proper nouns for Canada by @hippietrail in #657
- fix(core): edge cases in the closed compound noun rule by @elijah-potter in #670
- docs: add nixpkgs as an installation method by @sumnerevans in #656
New Contributors
- @sumnerevans made their first contribution in #656
Full Changelog: v0.20.0...v0.21.1
v0.20.0
What's Changed
- chore: Maintenance Changes by @mcecode in #583
- build: use
just
-native dependency resolution by @elijah-potter in #554 - build(deps): bump tree-sitter-dart from 0.0.3 to 0.0.4 by @dependabot in #566
- build(deps): bump serde_json from 1.0.137 to 1.0.138 by @dependabot in #568
- build(deps-dev): bump @rollup/plugin-typescript from 11.1.6 to 12.1.2 in /packages by @dependabot in #569
- feat(web): add link to the Discord server by @elijah-potter in #585
- clean up strange character at end-of-line by @hippietrail in #580
- feat(core): Lint for those who don't like Oxford commas by @hippietrail in #562
- docs(obsidian): notify people they should use up-to-date Electron by @elijah-potter in #586
- build(deps-dev): bump vitest from 2.1.8 to 2.1.9 in /packages by @dependabot in #588
- build(deps-dev): bump @vitest/browser from 2.1.8 to 2.1.9 in /packages by @dependabot in #591
- fix(core): add
on
to the list of special cases by @elijah-potter in #592 - feat(core): start support for hex numbers by @hippietrail in #553
- feat: change
just addnoun
to have different affixes as per #595 by @hippietrail in #601 - Phrase fixes by @elijah-potter in #589
- dict: add inclusivity by @lukasmwerner in #590
- docs(vscode): revised introductional material by @elijah-potter in #602
- docs: missing word in web/author-a-rule by @hippietrail in #614
- feat: adds a brief helpful comment to each entry describing its function by @hippietrail in #593
- fix(ls): release config lock to avoid deadlocks by @nyonson in #612
- feat(core): create rule for the possessive version of "you" by @elijah-potter in #619
- bench(harper.js): add benchmarks for configuration methods by @elijah-potter in #618
- grammar agreement in obsidion plugin comment by @hippietrail in #622
- feat: clarify message for uncapitalized "I" by @hippietrail in #625
- build(deps-dev): bump @types/node from 22.13.0 to 22.13.1 in /packages by @dependabot in #632
- build(deps-dev): bump esbuild from 0.24.2 to 0.25.0 in /packages by @dependabot in #633
- build(deps-dev): bump typescript from 5.6.3 to 5.7.3 in /packages by @dependabot in #631
- build(deps-dev): bump @sveltejs/kit from 2.16.1 to 2.17.1 in /packages by @dependabot in #629
- chore: correct some affix annotations by @hippietrail in #617
- feat: split triggers in
matcher.rs
into categories with explanations by @hippietrail in #636 - Cut-and-paste error in "report error" template by @hippietrail in #623
- bug: reverse correcting "supposed to" to "suppose to" by @hippietrail in #621
- feat: if spellcheck only has one suggestion mention it directly by @hippietrail in #626
- fix(obsidian): correctly handle Unicode conversions by @elijah-potter in #627
- feat: add
harper-cli forms
andjust getforms
by @hippietrail in #615 - Closed Compound Matcher Conversions by @elijah-potter in #608
- build(deps): bump clap from 4.5.27 to 4.5.28 by @dependabot in #635
- build(deps): bump esbuild from 0.23.1 to 0.25.0 in /packages by @dependabot in #639
- fix(core): make narrow linter specifically for
long and behold
by @elijah-potter in #641 - fix(core): currency placement with certain decimal positions by @elijah-potter in #604
New Contributors
Full Changelog: v0.19.1...v0.20.0
v0.19.1
What's Changed
The biggest change in this version: the ability to ignore lints. This is some pretty new code, so we hope to hear from you all to see how we can improve it.
- feat: issue templates by @elijah-potter in #539
- feat(core): even more holidays by @hippietrail in #533
- feat(core): implement "despite of" lint by @hippietrail in #531
- feat(html): condense spaces like most HTML parsers by @elijah-potter in #546
- Ignore Lints by @elijah-potter in #529
- fix(core): #548
you
is not a verb by @elijah-potter in #551 - docs: mention #536 on installation pages by @elijah-potter in #538
- Site fixes and updates by @elijah-potter in #552
- feat(core): created framework for correcting common phrases by @elijah-potter in #550
- feat(core): condense multi-token Latin words and phrases by @elijah-potter in #473
Full Changelog: v0.18.1...v0.19.1
v0.18.1
What's Changed
- build(deps): bump @sveltepress/theme-default from 5.0.5 to 5.0.7 in /packages by @dependabot in #519
- build(deps-dev): bump eslint-config-prettier from 9.1.0 to 10.0.1 in /packages by @dependabot in #518
- build(deps-dev): bump vite-plugin-top-level-await from 1.4.1 to 1.4.4 in /packages by @dependabot in #516
- build(deps-dev): bump esbuild from 0.20.2 to 0.24.2 in /packages by @dependabot in #517
- build(deps-dev): bump flowbite from 1.8.1 to 3.0.0 in /packages by @dependabot in #515
- technical terms and popular names/websites by @MohamedAbdeen21 in #522
- fix(core):
AnA
linter did not recognize capital articles by @elijah-potter in #521 - use unicode_script crate to check chars are Latin script inside
is_english_lingual
by @hippietrail in #504 - sort and add to list of holidays by @hippietrail in #509
- fix(core):
RepeatedWords
now detects repeatedand
tokens by @elijah-potter in #520 harper-core
Documentation Updates by @elijah-potter in #513- feat: improve workflow for harper.js by @Asuka109 in #526
- Add more languages by @elijah-potter in #495
New Contributors
- @MohamedAbdeen21 made their first contribution in #522
- @Asuka109 made their first contribution in #526
Full Changelog: v0.18.0...v0.18.1
v0.18.0
What's Changed
- fix two grammatical errors by @hippietrail in #481
- Reword description of "that which" to avoid ironic redundancy by @hippietrail in #479
- feat(#422): add
same than
->same as
matcher trigger by @grantlemons in #453 - missing definite article, comma placement by @hippietrail in #480
- Improvements to
PluralConjugate
by @elijah-potter in #474 - correct Valentine's Day by @hippietrail in #491
- typo in zed integration doc by @hippietrail in #490
- feat(core): created linter for #426 by @elijah-potter in #452
- I missed a lets/let's mistake in a comment by @hippietrail in #492
- docs: rewrote instructions on how to author a rule by @elijah-potter in #482
- missing indefinite article in comments by @hippietrail in #488
- Apply rule from issue #465 to core document.rs by @hippietrail in #510
- feat(core): allow trailing commas in the
lint_group
macro by @elijah-potter in #483 - fix agreement error in docs by @hippietrail in #417
Full Changelog: v0.17.0...v0.18.0
v0.17.0
What's Changed
- feat(#393): add clap version & about attributes by @grantlemons in #394
- docs: added Homebrew as an installation method by @elijah-potter in #395
- typos/spelling/grammar fixes in comments, docs, and strings by @hippietrail in #398
- fix(core): harden title case module by @elijah-potter in #396
- fix(core): indexing problems by @elijah-potter in #409
- fix typo: remove extraneous 'to' by @hippietrail in #418
- chore: update description of Oxford rule by @ccoVeille in #419
- build(deps): bump itertools from 0.13.0 to 0.14.0 by @dependabot in #431
- build(deps): bump serde_json from 1.0.135 to 1.0.137 by @dependabot in #429
- Typst Test Fixes by @grantlemons in #391
- build(deps): bump clap from 4.5.23 to 4.5.27 by @dependabot in #444
- feat: Update VSCode Config by @mcecode in #400
- fix(core): infinite lint loops by @elijah-potter in #390
- Clean Up
harper-ls
logs by @elijah-potter in #447 - build(deps): bump undici from 6.19.8 to 6.21.1 in /packages by @dependabot in #450
- typo by @hippietrail in #462
- fix(core): the Oxford comma applies to
nor
as well by @elijah-potter in #445 - feat(harper.js): added ability to explicitly set config to the default by @elijah-potter in #449
- build(deps-dev): bump vite from 6.0.5 to 6.0.9 in /packages by @dependabot in #448
- feat(core): created a new rule that resolves #414 by @elijah-potter in #455
- build(deps-dev): bump vite from 5.4.11 to 5.4.12 in /packages by @dependabot in #475
- docs: added page to explain tooling for reviewers by @elijah-potter in #471
- fix instance of #384 in docs by @hippietrail in #477
New Contributors
- @hippietrail made their first contribution in #398
- @ccoVeille made their first contribution in #419
Full Changelog: v0.16.0...v0.17.0
v0.16.0
What's Changed
- A false-positive for subordinating conjunctions was resolved.
- harper.js now properly reexports types from harper-wasm.
- harper.js now has an automatically generated API reference page.
- Some erroneous filtering of certain errors was creating false-negatives.
- Words containing numbers are less likely to throw false-positive spelling errors.
- A rule for variations of the word “your” was added.
- fix the nvim-lspconfig link by @wadsaek in #367
- docs: added Scoop instructions by @elijah-potter in #361
- Enable LTO and codegen-units = 1 in the Release profile by @zamazan4ik in #363
- feat(#331): Literate Haskell Support by @grantlemons in #344
- build(deps): bump dirs from 5.0.1 to 6.0.0 by @dependabot in #372
- build(deps): bump tokio from 1.42.0 to 1.43.0 by @dependabot in #371
- build(deps): bump thiserror from 2.0.9 to 2.0.11 by @dependabot in #369
- feat: Typst Language Support by @grantlemons in #302
- build(deps): bump serde_json from 1.0.134 to 1.0.135 by @dependabot in #368
- feat(core): create new linter for dollar sign placement by @elijah-potter in #376
- refactor: Harper-ls Error-Handling Improvements by @grantlemons in #349
- feat(#104): Markdown linter config for ignoring link titles by @grantlemons in #305
- feat(harper.js): added ability to configure the markup language by @elijah-potter in #379
- feat(vscode-plugin): Add Literate Haskell and Typst Support + some doc updates by @mcecode in #388
New Contributors
- @wadsaek made their first contribution in #367
- @elijah-potter made their first contribution in #361
- @zamazan4ik made their first contribution in #363
Full Changelog: v0.15.0...v0.16.0
v0.15.0
What's Changed
- Added a variety of rules (see complete list here).
- Fixed issues with parsing hostnames
- Added a variety of available
Pattern
s for downstream use - Update +page.md by @aminwhat in #347
- feat: Add technical words to dictionary by @claydugo in #343
- refactor: remove raw hashes that are unnecessary by @hamirmahal in #324
- feat: Span View Command Improvements by @grantlemons in #340
- Address "one" for indefinite article rule by @claydugo in #359
- feat: Add support for cmake files by @alcroito in #353
- build(deps): bump itertools from 0.13.0 to 0.14.0 by @dependabot in #357
- feat(harper-ls): remove deleted file/s diagnostics by @mcecode in #304
- feat(vscode-plugin): Add CMake Support by @mcecode in #360
New Contributors
- @aminwhat made their first contribution in #347
- @hamirmahal made their first contribution in #324
- @alcroito made their first contribution in #353
Full Changelog: v0.14.0...v0.15.0
v0.14.0
What's Changed
This is a much smaller release, but there are some key changes.
Rust and JavaScript consumers of Harper can now access individual lint descriptions via Linter.description()
and Linter.getLintDescriptions()
, respectively. We've also added the ability to toggle Web Worker usage in the Obsidian plugin.
New Contributors
Full Changelog: v0.13.0...v0.14.0