From a8e09d5635f184361468557cb79ed276d6891bb5 Mon Sep 17 00:00:00 2001 From: Elijah Potter Date: Fri, 28 Nov 2025 12:52:00 -0700 Subject: [PATCH] Release 1.0.0 harper-brill@1.0.0 harper-comments@1.0.0 harper-core@1.0.0 harper-html@1.0.0 harper-ink@1.0.0 harper-jjdescription@1.0.0 harper-literate-haskell@1.0.0 harper-ls@1.0.0 harper-pos-utils@1.0.0 harper-python@1.0.0 harper-stats@1.0.0 harper-tree-sitter@1.0.0 harper-typst@1.0.0 Generated by cargo-workspaces --- Cargo.lock | 26 +++++++++++----------- harper-brill/Cargo.toml | 4 ++-- harper-cli/Cargo.toml | 16 +++++++------- harper-comments/Cargo.toml | 8 +++---- harper-core/Cargo.toml | 4 ++-- harper-html/Cargo.toml | 6 ++--- harper-ink/Cargo.toml | 6 ++--- harper-jjdescription/Cargo.toml | 6 ++--- harper-literate-haskell/Cargo.toml | 8 +++---- harper-ls/Cargo.toml | 20 ++++++++--------- harper-pos-utils/Cargo.toml | 2 +- harper-python/Cargo.toml | 6 ++--- harper-stats/Cargo.toml | 4 ++-- harper-tree-sitter/Cargo.toml | 4 ++-- harper-typst/Cargo.toml | 4 ++-- harper-wasm/Cargo.toml | 4 ++-- packages/chrome-plugin/package.json | 2 +- packages/harper.js/package.json | 2 +- packages/obsidian-plugin/package.json | 2 +- packages/vscode-plugin/package.json | 32 ++++++++++++++++++++++++++- 20 files changed, 98 insertions(+), 68 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index 45df003d..0bb57ba8 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -2658,7 +2658,7 @@ dependencies = [ [[package]] name = "harper-brill" -version = "0.73.0" +version = "1.0.0" dependencies = [ "harper-pos-utils", "lazy_static", @@ -2692,7 +2692,7 @@ dependencies = [ [[package]] name = "harper-comments" -version = "0.73.0" +version = "1.0.0" dependencies = [ "harper-core", "harper-html", @@ -2726,7 +2726,7 @@ dependencies = [ [[package]] name = "harper-core" -version = "0.73.0" +version = "1.0.0" dependencies = [ "ammonia", "bitflags 2.10.0", @@ -2764,7 +2764,7 @@ dependencies = [ [[package]] name = "harper-html" -version = "0.73.0" +version = "1.0.0" dependencies = [ "harper-core", "harper-tree-sitter", @@ -2775,7 +2775,7 @@ dependencies = [ [[package]] name = "harper-ink" -version = "0.73.0" +version = "1.0.0" dependencies = [ "harper-core", "harper-tree-sitter", @@ -2786,7 +2786,7 @@ dependencies = [ [[package]] name = "harper-jjdescription" -version = "0.73.0" +version = "1.0.0" dependencies = [ "harper-core", "harper-tree-sitter", @@ -2797,7 +2797,7 @@ dependencies = [ [[package]] name = "harper-literate-haskell" -version = "0.73.0" +version = "1.0.0" dependencies = [ "harper-comments", "harper-core", @@ -2808,7 +2808,7 @@ dependencies = [ [[package]] name = "harper-ls" -version = "0.73.0" +version = "1.0.0" dependencies = [ "anyhow", "clap", @@ -2839,7 +2839,7 @@ dependencies = [ [[package]] name = "harper-pos-utils" -version = "0.73.0" +version = "1.0.0" dependencies = [ "burn", "burn-ndarray", @@ -2857,7 +2857,7 @@ dependencies = [ [[package]] name = "harper-python" -version = "0.73.0" +version = "1.0.0" dependencies = [ "harper-core", "harper-tree-sitter", @@ -2868,7 +2868,7 @@ dependencies = [ [[package]] name = "harper-stats" -version = "0.73.0" +version = "1.0.0" dependencies = [ "chrono", "harper-core", @@ -2879,7 +2879,7 @@ dependencies = [ [[package]] name = "harper-tree-sitter" -version = "0.73.0" +version = "1.0.0" dependencies = [ "harper-core", "tree-sitter", @@ -2898,7 +2898,7 @@ dependencies = [ [[package]] name = "harper-typst" -version = "0.73.0" +version = "1.0.0" dependencies = [ "harper-core", "itertools 0.14.0", diff --git a/harper-brill/Cargo.toml b/harper-brill/Cargo.toml index e767993a..fb1c3a81 100644 --- a/harper-brill/Cargo.toml +++ b/harper-brill/Cargo.toml @@ -1,13 +1,13 @@ [package] name = "harper-brill" -version = "0.73.0" +version = "1.0.0" edition = "2024" description = "The language checker for developers." license = "Apache-2.0" repository = "https://github.com/automattic/harper" [dependencies] -harper-pos-utils = { path = "../harper-pos-utils/", version = "0.73.0" } +harper-pos-utils = { path = "../harper-pos-utils/", version = "1.0.0" } lazy_static = "1.5.0" serde_json = "1.0.145" diff --git a/harper-cli/Cargo.toml b/harper-cli/Cargo.toml index 65b28af6..b424aca8 100644 --- a/harper-cli/Cargo.toml +++ b/harper-cli/Cargo.toml @@ -9,21 +9,21 @@ repository = "https://github.com/automattic/harper" anyhow = "1.0.100" ariadne = "0.4.1" clap = { version = "4.5.53", features = ["derive", "std", "string"], default-features = false } -harper-stats = { path = "../harper-stats", version = "0.73.0" } +harper-stats = { path = "../harper-stats", version = "1.0.0" } dirs = "6.0.0" -harper-literate-haskell = { path = "../harper-literate-haskell", version = "0.73.0" } -harper-python = { path = "../harper-python", version = "0.73.0" } -harper-core = { path = "../harper-core", version = "0.73.0" } -harper-pos-utils = { path = "../harper-pos-utils", version = "0.73.0", features = [] } -harper-comments = { path = "../harper-comments", version = "0.73.0" } -harper-typst = { path = "../harper-typst", version = "0.73.0" } +harper-literate-haskell = { path = "../harper-literate-haskell", version = "1.0.0" } +harper-python = { path = "../harper-python", version = "1.0.0" } +harper-core = { path = "../harper-core", version = "1.0.0" } +harper-pos-utils = { path = "../harper-pos-utils", version = "1.0.0", features = [] } +harper-comments = { path = "../harper-comments", version = "1.0.0" } +harper-typst = { path = "../harper-typst", version = "1.0.0" } hashbrown = "0.16.1" rayon = "1.11.0" serde = { version = "1.0.228", features = ["derive"] } serde_json = "1.0.145" strum = "0.27.2" strum_macros = "0.27.2" -harper-ink = { version = "0.73.0", path = "../harper-ink" } +harper-ink = { version = "1.0.0", path = "../harper-ink" } either = "1.15.0" [features] diff --git a/harper-comments/Cargo.toml b/harper-comments/Cargo.toml index a23c2500..d9c0e092 100644 --- a/harper-comments/Cargo.toml +++ b/harper-comments/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "harper-comments" -version = "0.73.0" +version = "1.0.0" edition = "2024" description = "The language checker for developers." license = "Apache-2.0" @@ -8,9 +8,9 @@ readme = "README.md" repository = "https://github.com/automattic/harper" [dependencies] -harper-core = { path = "../harper-core", version = "0.73.0" } -harper-html = { path = "../harper-html", version = "0.73.0" } -harper-tree-sitter = { path = "../harper-tree-sitter", version = "0.73.0" } +harper-core = { path = "../harper-core", version = "1.0.0" } +harper-html = { path = "../harper-html", version = "1.0.0" } +harper-tree-sitter = { path = "../harper-tree-sitter", version = "1.0.0" } itertools = "0.14.0" tree-sitter = "0.25.10" tree-sitter-bash = "0.25.0" diff --git a/harper-core/Cargo.toml b/harper-core/Cargo.toml index a578cce4..5650a6d3 100644 --- a/harper-core/Cargo.toml +++ b/harper-core/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "harper-core" -version = "0.73.0" +version = "1.0.0" edition = "2024" description = "The language checker for developers." license = "Apache-2.0" @@ -31,7 +31,7 @@ foldhash = "0.2.0" strum_macros = "0.27.2" strum = "0.27.2" ammonia = "4.1.2" -harper-brill = { path = "../harper-brill", version = "0.73.0" } +harper-brill = { path = "../harper-brill", version = "1.0.0" } bitflags = { version = "2.10.0", features = ["serde"] } trie-rs = "0.4.2" diff --git a/harper-html/Cargo.toml b/harper-html/Cargo.toml index f549b77a..4921ef8a 100644 --- a/harper-html/Cargo.toml +++ b/harper-html/Cargo.toml @@ -1,14 +1,14 @@ [package] name = "harper-html" -version = "0.73.0" +version = "1.0.0" edition = "2024" description = "The language checker for developers." license = "Apache-2.0" repository = "https://github.com/automattic/harper" [dependencies] -harper-core = { path = "../harper-core", version = "0.73.0" } -harper-tree-sitter = { path = "../harper-tree-sitter", version = "0.73.0" } +harper-core = { path = "../harper-core", version = "1.0.0" } +harper-tree-sitter = { path = "../harper-tree-sitter", version = "1.0.0" } tree-sitter-html = "0.23.2" tree-sitter = "0.25.10" diff --git a/harper-ink/Cargo.toml b/harper-ink/Cargo.toml index 9395259f..9b8f1b3d 100644 --- a/harper-ink/Cargo.toml +++ b/harper-ink/Cargo.toml @@ -1,14 +1,14 @@ [package] name = "harper-ink" -version = "0.73.0" +version = "1.0.0" edition = "2024" description = "The language checker for developers." license = "Apache-2.0" repository = "https://github.com/automattic/harper" [dependencies] -harper-core = { path = "../harper-core", version = "0.73.0" } -harper-tree-sitter = { path = "../harper-tree-sitter", version = "0.73.0" } +harper-core = { path = "../harper-core", version = "1.0.0" } +harper-tree-sitter = { path = "../harper-tree-sitter", version = "1.0.0" } tree-sitter-ink-lbz = "0.0.1" tree-sitter = "0.25.10" diff --git a/harper-jjdescription/Cargo.toml b/harper-jjdescription/Cargo.toml index b0eb6edf..860493e7 100644 --- a/harper-jjdescription/Cargo.toml +++ b/harper-jjdescription/Cargo.toml @@ -1,14 +1,14 @@ [package] name = "harper-jjdescription" -version = "0.73.0" +version = "1.0.0" edition = "2024" description = "The language checker for developers." license = "Apache-2.0" repository = "https://github.com/automattic/harper" [dependencies] -harper-core = { path = "../harper-core", version = "0.73.0" } -harper-tree-sitter = { path = "../harper-tree-sitter", version = "0.73.0" } +harper-core = { path = "../harper-core", version = "1.0.0" } +harper-tree-sitter = { path = "../harper-tree-sitter", version = "1.0.0" } tree-sitter-jjdescription = "0.0.1" tree-sitter = "0.25.10" diff --git a/harper-literate-haskell/Cargo.toml b/harper-literate-haskell/Cargo.toml index 2578853b..cc8eb4fc 100644 --- a/harper-literate-haskell/Cargo.toml +++ b/harper-literate-haskell/Cargo.toml @@ -1,14 +1,14 @@ [package] name = "harper-literate-haskell" -version = "0.73.0" +version = "1.0.0" edition = "2024" description = "The language checker for developers." license = "Apache-2.0" repository = "https://github.com/automattic/harper" [dependencies] -harper-core = { path = "../harper-core", version = "0.73.0" } -harper-tree-sitter = { path = "../harper-tree-sitter", version = "0.73.0" } -harper-comments = { path = "../harper-comments", version = "0.73.0" } +harper-core = { path = "../harper-core", version = "1.0.0" } +harper-tree-sitter = { path = "../harper-tree-sitter", version = "1.0.0" } +harper-comments = { path = "../harper-comments", version = "1.0.0" } itertools = "0.14.0" paste = "1.0.14" diff --git a/harper-ls/Cargo.toml b/harper-ls/Cargo.toml index 04218635..dcfa0e17 100644 --- a/harper-ls/Cargo.toml +++ b/harper-ls/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "harper-ls" -version = "0.73.0" +version = "1.0.0" edition = "2024" description = "The language checker for developers." license = "Apache-2.0" @@ -8,14 +8,14 @@ readme = "README.md" repository = "https://github.com/automattic/harper" [dependencies] -harper-stats = { path = "../harper-stats", version = "0.73.0" } -harper-literate-haskell = { path = "../harper-literate-haskell", version = "0.73.0" } -harper-core = { path = "../harper-core", version = "0.73.0", features = ["concurrent"] } -harper-comments = { path = "../harper-comments", version = "0.73.0" } -harper-jjdescription = { path = "../harper-jjdescription", version = "0.73.0" } -harper-typst = { path = "../harper-typst", version = "0.73.0" } -harper-html = { path = "../harper-html", version = "0.73.0" } -harper-python = { path = "../harper-python", version = "0.73.0" } +harper-stats = { path = "../harper-stats", version = "1.0.0" } +harper-literate-haskell = { path = "../harper-literate-haskell", version = "1.0.0" } +harper-core = { path = "../harper-core", version = "1.0.0", features = ["concurrent"] } +harper-comments = { path = "../harper-comments", version = "1.0.0" } +harper-jjdescription = { path = "../harper-jjdescription", version = "1.0.0" } +harper-typst = { path = "../harper-typst", version = "1.0.0" } +harper-html = { path = "../harper-html", version = "1.0.0" } +harper-python = { path = "../harper-python", version = "1.0.0" } tower-lsp-server = "0.22.1" tokio = { version = "1.48.0", default-features = false, features = ["fs", "io-std", "io-util", "macros", "net", "rt-multi-thread", "sync"] } clap = { version = "4.5.53", default-features = false, features = ["derive", "std"] } @@ -32,7 +32,7 @@ futures = "0.3.31" serde = { version = "1.0.228", features = ["derive"] } indexmap = { version = "2.12.0", features = ["serde"] } globset = "0.4.18" -harper-ink = { version = "0.73.0", path = "../harper-ink" } +harper-ink = { version = "1.0.0", path = "../harper-ink" } [features] default = [] diff --git a/harper-pos-utils/Cargo.toml b/harper-pos-utils/Cargo.toml index 9d4a0144..79184b8a 100644 --- a/harper-pos-utils/Cargo.toml +++ b/harper-pos-utils/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "harper-pos-utils" -version = "0.73.0" +version = "1.0.0" edition = "2024" description = "The language checker for developers." license = "Apache-2.0" diff --git a/harper-python/Cargo.toml b/harper-python/Cargo.toml index 23470bf8..3ab11dff 100644 --- a/harper-python/Cargo.toml +++ b/harper-python/Cargo.toml @@ -1,14 +1,14 @@ [package] name = "harper-python" -version = "0.73.0" +version = "1.0.0" edition = "2024" description = "The language checker for developers." license = "Apache-2.0" repository = "https://github.com/automattic/harper" [dependencies] -harper-core = { path = "../harper-core", version = "0.73.0" } -harper-tree-sitter = { path = "../harper-tree-sitter", version = "0.73.0" } +harper-core = { path = "../harper-core", version = "1.0.0" } +harper-tree-sitter = { path = "../harper-tree-sitter", version = "1.0.0" } tree-sitter-python = "0.25.0" tree-sitter = "0.25.10" diff --git a/harper-stats/Cargo.toml b/harper-stats/Cargo.toml index 117efd65..e0114864 100644 --- a/harper-stats/Cargo.toml +++ b/harper-stats/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "harper-stats" -version = "0.73.0" +version = "1.0.0" edition = "2021" description = "The language checker for developers." license = "Apache-2.0" @@ -9,7 +9,7 @@ repository = "https://github.com/automattic/harper" [dependencies] serde = { version = "1.0.228", features = ["derive"] } -harper-core = { path = "../harper-core", version = "0.73.0", features = ["concurrent"] } +harper-core = { path = "../harper-core", version = "1.0.0", features = ["concurrent"] } uuid = { version = "1.18.1", features = ["serde", "v4"] } serde_json = "1.0.145" chrono = "0.4.42" diff --git a/harper-tree-sitter/Cargo.toml b/harper-tree-sitter/Cargo.toml index a344f948..3062b33b 100644 --- a/harper-tree-sitter/Cargo.toml +++ b/harper-tree-sitter/Cargo.toml @@ -1,11 +1,11 @@ [package] name = "harper-tree-sitter" -version = "0.73.0" +version = "1.0.0" edition = "2024" description = "The language checker for developers." license = "Apache-2.0" repository = "https://github.com/automattic/harper" [dependencies] -harper-core = { path = "../harper-core", version = "0.73.0" } +harper-core = { path = "../harper-core", version = "1.0.0" } tree-sitter = "0.25.10" diff --git a/harper-typst/Cargo.toml b/harper-typst/Cargo.toml index c4c418ec..68f5daff 100644 --- a/harper-typst/Cargo.toml +++ b/harper-typst/Cargo.toml @@ -1,13 +1,13 @@ [package] name = "harper-typst" -version = "0.73.0" +version = "1.0.0" edition = "2024" description = "The language checker for developers." license = "Apache-2.0" repository = "https://github.com/automattic/harper" [dependencies] -harper-core = { path = "../harper-core", version = "0.73.0" } +harper-core = { path = "../harper-core", version = "1.0.0" } typst-syntax = { version = "0.13.1" } ordered-float = { version = "5.1.0", features = ["serde"] } itertools = "0.14.0" diff --git a/harper-wasm/Cargo.toml b/harper-wasm/Cargo.toml index 35db429f..1c4f1029 100644 --- a/harper-wasm/Cargo.toml +++ b/harper-wasm/Cargo.toml @@ -13,10 +13,10 @@ console_error_panic_hook = "0.1.7" tracing = "0.1.41" tracing-wasm = "0.2.1" wasm-bindgen = "0.2.97" -harper-core = { path = "../harper-core", version = "0.73.0", features = ["concurrent"] } +harper-core = { path = "../harper-core", version = "1.0.0", features = ["concurrent"] } once_cell = "1.21.3" serde-wasm-bindgen = "0.6.5" serde_json = "1.0.145" serde = { version = "1.0.228", features = ["derive"] } getrandom = { version = "0.3.4", default-features = false, features = ["wasm_js"] } -harper-stats = { path = "../harper-stats", version = "0.73.0", features = ["js"] } +harper-stats = { path = "../harper-stats", version = "1.0.0", features = ["js"] } diff --git a/packages/chrome-plugin/package.json b/packages/chrome-plugin/package.json index 499e767f..5e17cac8 100644 --- a/packages/chrome-plugin/package.json +++ b/packages/chrome-plugin/package.json @@ -1,7 +1,7 @@ { "name": "chrome-plugin", "displayName": "chrome-plugin", - "version": "0.73.0", + "version": "1.0.0", "author": "no one", "description": "The private grammar checker for 21st Century English", "type": "module", diff --git a/packages/harper.js/package.json b/packages/harper.js/package.json index 44e7b0f9..2c7f7eb4 100644 --- a/packages/harper.js/package.json +++ b/packages/harper.js/package.json @@ -1,6 +1,6 @@ { "name": "harper.js", - "version": "0.73.0", + "version": "1.0.0", "license": "Apache-2.0", "author": "Elijah Potter", "description": "The grammar checker that respects your privacy.", diff --git a/packages/obsidian-plugin/package.json b/packages/obsidian-plugin/package.json index 07edb599..8370a825 100644 --- a/packages/obsidian-plugin/package.json +++ b/packages/obsidian-plugin/package.json @@ -1,7 +1,7 @@ { "name": "obsidian-plugin", "private": true, - "version": "0.73.0", + "version": "1.0.0", "main": "main.js", "devDependencies": { "@playwright/test": "^1.52.0", diff --git a/packages/vscode-plugin/package.json b/packages/vscode-plugin/package.json index 2496203e..9a6853cc 100644 --- a/packages/vscode-plugin/package.json +++ b/packages/vscode-plugin/package.json @@ -2,7 +2,7 @@ "name": "harper", "displayName": "Harper - Grammar / Spell Checking", "description": "The grammar checker for developers", - "version": "0.73.0", + "version": "1.0.0", "private": true, "author": "Elijah Potter", "publisher": "elijah-potter", @@ -179,6 +179,12 @@ "default": true, "description": "Finds and corrects common mistakes between 'a part' and 'apart'" }, + "harper.linters.AWhile": { + "scope": "resource", + "type": "boolean", + "default": true, + "description": "Enforces `awhile` after verbs and `a while` everywhere else." + }, "harper.linters.Addicting": { "scope": "resource", "type": "boolean", @@ -431,6 +437,12 @@ "default": true, "description": "Flags offensive language and offers various ways to censor or replace with euphemisms." }, + "harper.linters.AwaitFor": { + "scope": "resource", + "type": "boolean", + "default": true, + "description": "Suggests using either `await` or `wait for` but not both, as they express the same meaning." + }, "harper.linters.AzureNames": { "scope": "resource", "type": "boolean", @@ -1055,6 +1067,12 @@ "default": true, "description": "Removes filler words." }, + "harper.linters.FindFine": { + "scope": "resource", + "type": "boolean", + "default": true, + "description": "Fixes the common typo where writers write `find` when they mean `fine`." + }, "harper.linters.FirstAidKit": { "scope": "resource", "type": "boolean", @@ -2111,6 +2129,12 @@ "default": true, "description": "Corrects `piece of mind` to `peace of mind`." }, + "harper.linters.PerSe": { + "scope": "resource", + "type": "boolean", + "default": true, + "description": "Corrects common misspellings of `per se`." + }, "harper.linters.PhrasalVerbAsCompoundNoun": { "scope": "resource", "type": "boolean", @@ -2531,6 +2555,12 @@ "default": true, "description": "Corrects `statue of limitations` to `statute of limitations`." }, + "harper.linters.SubjectPronoun": { + "scope": "resource", + "type": "boolean", + "default": true, + "description": "Fixes sentences that start with `me and X` by putting the proper noun first and using `I`." + }, "harper.linters.SufficeItToSay": { "scope": "resource", "type": "boolean",