v2.1.0

Automattic/harperv2.1.0Apr 24, 2026by github-actions[bot]

AI Summary

A release focused on bug fixes for the Chrome extension, new CLI commands using `just`, and a new rule for number ranges.

Key Highlights

  • Chrome extension fixes for Instagram DMs and delay option
  • New `just` commands for listing and grepping configuration
  • New linting rule for en dashes between numbers in ranges
  • Dictionary curation updates

New Features

  • Chrome extension delay option
  • New number range dash rule
  • Dictionary curation updates

Full Release Notes

## What's Changed
* fix(chrome-ext): Harper not activating in Instagram DMs by @elijah-potter in https://github.com/Automattic/harper/pull/3145
* fix: all to/too linters now use same `LintKind` by @hippietrail in https://github.com/Automattic/harper/pull/3135
* chore: dictionary curation 2026/04/02 by @hippietrail in https://github.com/Automattic/harper/pull/3094
* refactor(core)!: remove unused argument/member by @86xsk in https://github.com/Automattic/harper/pull/3072
* feat: `just` `ls-config`, `grep-config`, and `grep-config-settings` by @hippietrail in https://github.com/Automattic/harper/pull/3144
* feat: add soft-clean and hard-clean recipes to justfile by @ninjamar in https://github.com/Automattic/harper/pull/3142
* fix: "it damages the environment" by @hippietrail in https://github.com/Automattic/harper/pull/3149
* fix: refering -> referring in damages message string by @Inhishonor in https://github.com/Automattic/harper/pull/3148
* fix(core): many small issues by @elijah-potter in https://github.com/Automattic/harper/pull/3150
* build(deps): bump zip from 8.5.0 to 8.5.1 by @dependabot[bot] in https://github.com/Automattic/harper/pull/3163
* build(deps): bump tokio from 1.50.0 to 1.51.1 by @dependabot[bot] in https://github.com/Automattic/harper/pull/3162
* build(deps): bump tree-sitter-asciidoc from 0.6.0 to 0.7.0 by @dependabot[bot] in https://github.com/Automattic/harper/pull/3160
* build(deps): bump rand from 0.10.0 to 0.10.1 by @dependabot[bot] in https://github.com/Automattic/harper/pull/3159
* fix(dict): remove stale ElasticSearch entry in favour of Elasticsearch by @unlimitedsola in https://github.com/Automattic/harper/pull/3154
* feat(chrome-ext): add delay option by @elijah-potter in https://github.com/Automattic/harper/pull/3166
* refactor(core): refactor `TokenStringExt` by @86xsk in https://github.com/Automattic/harper/pull/2888
* feat(core): rule that requires that the dash between numbers in a range is an en dash by @elijah-potter in https://github.com/Automattic/harper/pull/2961
* fix(core): address several outstanding issues by @elijah-potter in https://github.com/Automattic/harper/pull/3169
* feat: code on rust→code in rust etc. by @hippietrail in https://github.com/Automattic/harper/pull/3172
* fix: don't flag "should soft-fork" by @hippietrail in https://github.com/Automattic/harper/pull/3171
* feat: govt → government by @hippietrail in https://github.com/Automattic/harper/pull/3212
* feat: close/tight nit → knit by @hippietrail in https://github.com/Automattic/harper/pull/3200
* fix: lint comments after shebangs by @lawrence3699 in https://github.com/Automattic/harper/pull/3199
* refactor: don't flag "a fun and fantastic" by @hippietrail in https://github.com/Automattic/harper/pull/3201
* build(deps): bump thin-vec from 0.2.14 to 0.2.16 by @dependabot[bot] in https://github.com/Automattic/harper/pull/3182
* Hereby: require verb that is not also a noun by @joaquinhuigomez in https://github.com/Automattic/harper/pull/3213
* feat: more than what meets the eye/more that meets the eye→more than meets the eye by @hippietrail in https://github.com/Automattic/harper/pull/3178
* feat: infliction point → inflection point by @hippietrail in https://github.com/Automattic/harper/pull/3216
* Dictionary curation 2026 04 14 by @hippietrail in https://github.com/Automattic/harper/pull/3189
* fix: delete superseded linter by @hippietrail in https://github.com/Automattic/harper/pull/3231
* chore: dictionary curation by @hippietrail in https://github.com/Automattic/harper/pull/3228
* fix(vscode): pre-select current dialect in the dialect picker by @LanceYing2004 in https://github.com/Automattic/harper/pull/3198

## New Contributors
* @ninjamar made their first contribution in https://github.com/Automattic/harper/pull/3142
* @unlimitedsola made their first contribution in https://github.com/Automattic/harper/pull/3154
* @lawrence3699 made their first contribution in https://github.com/Automattic/harper/pull/3199
* @LanceYing2004 made their first contribution in https://github.com/Automattic/harper/pull/3198

**Full Changelog**: https://github.com/Automattic/harper/compare/v2.0.0...v2.1.0