From 8a428851f2f8ff35d24c9712faa17c19dab37f76 Mon Sep 17 00:00:00 2001 From: "Haoyu (Daniel) YANG" Date: Thu, 30 Jan 2025 15:33:16 +0100 Subject: [PATCH 001/202] Fix and clarify cases in ignore patterns (#3583) Co-authored-by: Eric Larson --- README.rst | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.rst b/README.rst index d98f8cd96d..cac6af6a1a 100644 --- a/README.rst +++ b/README.rst @@ -119,7 +119,7 @@ You can select the optional dictionaries with the ``--builtin`` option. Ignoring words -------------- -When ignoring false positives, note that spelling errors are *case-insensitive* but words to ignore are *case-sensitive*. For example, the dictionary entry ``wrod`` will also match the typo ``Wrod``, but to ignore it you must pass ``Wrod``. +When ignoring false positives, note that spelling errors are *case-insensitive* but words to ignore are *case-sensitive*. For example, the dictionary entry ``wrod`` will also match the typo ``Wrod``, but to ignore it you must pass ``wrod`` (to match the case of the dictionary entry). The words to ignore can be passed in two ways: From faf0c8d0bbe0d801de7db4af12bb99f46f19588b Mon Sep 17 00:00:00 2001 From: Christian Clauss Date: Thu, 30 Jan 2025 21:36:48 +0100 Subject: [PATCH 002/202] codespell-private.yml: Do not codespell digital signature files (#3623) Co-authored-by: Eric Larson --- .github/workflows/codespell-private.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/codespell-private.yml b/.github/workflows/codespell-private.yml index b77b2aa061..83a8499a50 100644 --- a/.github/workflows/codespell-private.yml +++ b/.github/workflows/codespell-private.yml @@ -58,7 +58,7 @@ jobs: # tomli should not be required for the next two steps (and make sure it's not) - run: pip uninstall -yq tomli if: ${{ matrix.no-toml == 'no-toml' }} - - run: codespell --check-filenames --skip="./.git/*,./.pytest_cache/*,./junit-results.xml,*.pyc,./codespell_lib/tests/test_basic.py,./codespell_lib/data/*,./example/code.c,./build/lib/codespell_lib/tests/test_basic.py,./build/lib/codespell_lib/data/*,README.rst,*.egg-info/*,pyproject-codespell.precommit-toml,./.mypy_cache" + - run: codespell --check-filenames --skip="./.*,./build/*,./codespell_lib/data/*,./codespell_lib/tests/test_basic.py,./example/code.c,./junit-results.xml,*.egg-info/*,*.pyc,*.sig,pyproject-codespell.precommit-toml,README.rst," # this file has an error - run: "! codespell codespell_lib/tests/test_basic.py" From 4968c95bbacb608888ca3d902ace09f5d2108057 Mon Sep 17 00:00:00 2001 From: "pre-commit-ci[bot]" <66853113+pre-commit-ci[bot]@users.noreply.github.com> Date: Mon, 3 Feb 2025 17:30:02 +0000 Subject: [PATCH 003/202] [pre-commit.ci] pre-commit autoupdate MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit updates: - [github.com/executablebooks/mdformat: 0.7.21 → 0.7.22](https://github.com/executablebooks/mdformat/compare/0.7.21...0.7.22) - [github.com/astral-sh/ruff-pre-commit: v0.9.1 → v0.9.4](https://github.com/astral-sh/ruff-pre-commit/compare/v0.9.1...v0.9.4) - [github.com/codespell-project/codespell: v2.3.0 → v2.4.1](https://github.com/codespell-project/codespell/compare/v2.3.0...v2.4.1) --- .pre-commit-config.yaml | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/.pre-commit-config.yaml b/.pre-commit-config.yaml index 6c43f392e1..6eb723d5b1 100644 --- a/.pre-commit-config.yaml +++ b/.pre-commit-config.yaml @@ -4,7 +4,7 @@ exclude: ^(\.[^/]*cache/.*)$ repos: - repo: https://github.com/executablebooks/mdformat # Do this before other tools "fixing" the line endings - rev: 0.7.21 + rev: 0.7.22 hooks: - id: mdformat name: Format Markdown @@ -58,7 +58,7 @@ repos: - -d - "{extends: relaxed, rules: {line-length: {max: 90}}}" - repo: https://github.com/astral-sh/ruff-pre-commit - rev: v0.9.1 + rev: v0.9.4 hooks: - id: ruff - id: ruff-format @@ -68,7 +68,7 @@ repos: - id: prettier types_or: [yaml, markdown, html, css, scss, javascript, json] - repo: https://github.com/codespell-project/codespell - rev: v2.3.0 + rev: v2.4.1 hooks: - id: codespell args: [--toml, pyproject-codespell.precommit-toml] From 24fc1bd2ed44fabb5b18124ee622bb925f417d4a Mon Sep 17 00:00:00 2001 From: skshetry <18718008+skshetry@users.noreply.github.com> Date: Wed, 5 Feb 2025 14:36:55 +0545 Subject: [PATCH 004/202] numbes->numbers and numbesr->numbers (#3635) --- codespell_lib/data/dictionary.txt | 2 ++ 1 file changed, 2 insertions(+) diff --git a/codespell_lib/data/dictionary.txt b/codespell_lib/data/dictionary.txt index 2fd566f0b5..a0dd72db67 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -40749,6 +40749,8 @@ numberring->numbering numberrs->numbers numberss->numbers numbert->number +numbes->numbers, numbs, numbed, +numbesr->numbers numbet->number numbets->numbers numbr->number From fb69d91b0a2939c597e7d49ba14c111e1b0f7484 Mon Sep 17 00:00:00 2001 From: Christian Fischer Date: Fri, 24 Jan 2025 14:37:15 +0100 Subject: [PATCH 005/202] Add spelling corrections for disclose and variables. --- codespell_lib/data/dictionary.txt | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/codespell_lib/data/dictionary.txt b/codespell_lib/data/dictionary.txt index a0dd72db67..0e768f7a81 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -21335,6 +21335,12 @@ dicriminates->discriminates dicriminating->discriminating dicriminator->discriminator dicriminators->discriminators +dicslose->disclose +dicslosed->disclosed +dicsloses->discloses +dicslosing->disclosing +dicslosure->disclosure +dicslosures->disclosures dicsriminated->discriminated dictaionaries->dictionaries dictaionary->dictionary From a48fb42ff1c7f208742e2fad2b41b7d398d9fef7 Mon Sep 17 00:00:00 2001 From: Christian Fischer Date: Thu, 30 Jan 2025 09:48:30 +0100 Subject: [PATCH 006/202] Add spelling correction for Vulnererability and variants. --- codespell_lib/data/dictionary.txt | 3 +++ 1 file changed, 3 insertions(+) diff --git a/codespell_lib/data/dictionary.txt b/codespell_lib/data/dictionary.txt index 0e768f7a81..3081ed835e 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -63186,6 +63186,9 @@ vulnerbility->vulnerability vulnerble->vulnerable vulnerbuilities->vulnerabilities vulnerbuility->vulnerability +vulnererabilities->vulnerabilities +vulnererability->vulnerability +vulnererable->vulnerable vulnreabilities->vulnerabilities vulnreability->vulnerability vulnreable->vulnerable From 4644f584fe6d9b98847064889a95c2bd03e7917c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Zolt=C3=A1n=20Leh=C3=B3czky?= Date: Mon, 3 Feb 2025 14:12:44 +0100 Subject: [PATCH 007/202] Remove lets->let's --- codespell_lib/data/dictionary_code.txt | 1 - 1 file changed, 1 deletion(-) diff --git a/codespell_lib/data/dictionary_code.txt b/codespell_lib/data/dictionary_code.txt index fa3701364c..bf8a544a60 100644 --- a/codespell_lib/data/dictionary_code.txt +++ b/codespell_lib/data/dictionary_code.txt @@ -47,7 +47,6 @@ jupyter->Jupiter keypair->key pair keypairs->key pairs lateset->latest -lets->let's lite->light lowcase->lowercase movei->movie From 003b1b028b807db95f3b20594317e38d77e1a911 Mon Sep 17 00:00:00 2001 From: Jon Dufresne Date: Tue, 4 Feb 2025 15:33:34 -0800 Subject: [PATCH 008/202] Add corrections for "dictate" --- codespell_lib/data/dictionary.txt | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/codespell_lib/data/dictionary.txt b/codespell_lib/data/dictionary.txt index 3081ed835e..02549c32d4 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -21295,7 +21295,10 @@ dicard->discard dicarded->discarded dicarding->discarding dicards->discards +dicate->dictate +dicated->dictated dicates->dictates +dicating->dictating dicationaries->dictionaries dicationary->dictionary dicergence->divergence @@ -21342,6 +21345,10 @@ dicslosing->disclosing dicslosure->disclosure dicslosures->disclosures dicsriminated->discriminated +dictacte->dictate +dictacted->dictated +dictactes->dictates +dictacting->dictating dictaionaries->dictionaries dictaionary->dictionary dictinary->dictionary From 3f0532ccf678794e6c3c6d88e55937bcce85a9fc Mon Sep 17 00:00:00 2001 From: Yaroslav Halchenko Date: Mon, 10 Feb 2025 13:17:10 -0500 Subject: [PATCH 009/202] Add specicification (and pl) typo https://github.com/search?q=specicification&type=code gives 234 hits, so not that many but clearly out there --- codespell_lib/data/dictionary.txt | 2 ++ 1 file changed, 2 insertions(+) diff --git a/codespell_lib/data/dictionary.txt b/codespell_lib/data/dictionary.txt index 02549c32d4..fb80f22f57 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -54884,6 +54884,8 @@ specical->special specically->specifically specication->specification specications->specifications +specicification->specification +specicifications->specifications specidic->specific specied->specified speciefic->specific From 86183abaa13f37aba06ab1516b5eb2cd8ebff580 Mon Sep 17 00:00:00 2001 From: Bastien Nocera Date: Wed, 7 Aug 2024 16:04:45 +0200 Subject: [PATCH 010/202] Remove "blueish" correction It's not a typo, or a correction that really needs to be made, as both "blueish" and "bluish" are acceptable forms: https://english.stackexchange.com/questions/18824/why-are-blueish-and-bluish-both-considered-correct-spellings Closes: #3509 Fixes: fbb964ffd563 ("Add several spelling corrections") --- codespell_lib/data/dictionary_usage.txt | 1 - 1 file changed, 1 deletion(-) diff --git a/codespell_lib/data/dictionary_usage.txt b/codespell_lib/data/dictionary_usage.txt index 8b3a15038c..91b67cf9c2 100644 --- a/codespell_lib/data/dictionary_usage.txt +++ b/codespell_lib/data/dictionary_usage.txt @@ -2,7 +2,6 @@ black-hat->malicious actor, attacker, blackhat->malicious actor, attacker, blacklist->blocklist blacklists->blocklists -blueish->bluish cripples->slows down, hinders, obstructs, crippling->attenuating, incapacitating, dummy-value->placeholder value From 246fbf9b172c14256c68f22a98e35fde7d9c8692 Mon Sep 17 00:00:00 2001 From: Yaroslav Halchenko Date: Fri, 21 Feb 2025 07:53:32 -0500 Subject: [PATCH 011/202] Add "lighting" as an option to fix "lighning" Legit form of "light", so to e.g. signal how "light" is cast etc. --- codespell_lib/data/dictionary.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/codespell_lib/data/dictionary.txt b/codespell_lib/data/dictionary.txt index fb80f22f57..5ff2fa6bf5 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -36364,7 +36364,7 @@ lighbulbs->lightbulbs ligher->lighter, liar, liger, lighers->lighters, liars, ligers, lighing->lighting -lighning->lightning +lighning->lightning, lighting, lightbulp->lightbulb lightbulps->lightbulbs lightin->lighting, light in, lighten, From 99bb61550f404612f3610021abe7de55840fd799 Mon Sep 17 00:00:00 2001 From: Nikolai R Kristiansen Date: Mon, 3 Feb 2025 10:27:03 +0100 Subject: [PATCH 012/202] Revert "Add rare typo `lien->line`" Since `lien` is a word frequently used when working with the Google Terraform Provider, it feels wrong to treat it as a typo. Humbly suggesting to revert that change This reverts commit 536ccb530ef9f955d17932e201a0d0f4e27bf2f9. Fixes #3630 --- codespell_lib/data/dictionary_rare.txt | 2 -- 1 file changed, 2 deletions(-) diff --git a/codespell_lib/data/dictionary_rare.txt b/codespell_lib/data/dictionary_rare.txt index 675f9c7381..2ad15c97cf 100644 --- a/codespell_lib/data/dictionary_rare.txt +++ b/codespell_lib/data/dictionary_rare.txt @@ -154,8 +154,6 @@ lamdas->lambdas leaded->led, lead, leas->least, lease, lief->leaf, life, -lien->line -liens->lines lightening->lightning, lighting, loafing->loading lod->load, loud, lode, From f9d3afdb4225b36023602797ad94dfa02303e7d5 Mon Sep 17 00:00:00 2001 From: Yaroslav Halchenko Date: Thu, 20 Feb 2025 17:31:49 -0500 Subject: [PATCH 013/202] "ane" could have been "one" Ran into within https://github.com/napari/docs/pull/587 --- codespell_lib/data/dictionary.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/codespell_lib/data/dictionary.txt b/codespell_lib/data/dictionary.txt index 5ff2fa6bf5..97dc349987 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -4461,7 +4461,7 @@ androis->androids andthe->and the andtoid->android andtoids->androids -ane->and +ane->and, one, anecdatal->anecdotal anecdatally->anecdotally anecdate->anecdote From 75fb18858d9cd0622a5a76e69b15402e2545d55d Mon Sep 17 00:00:00 2001 From: Christian Fischer Date: Fri, 21 Feb 2025 10:22:37 +0100 Subject: [PATCH 014/202] Add spelling correction for "priort". --- codespell_lib/data/dictionary.txt | 1 + 1 file changed, 1 insertion(+) diff --git a/codespell_lib/data/dictionary.txt b/codespell_lib/data/dictionary.txt index 97dc349987..26f9b12f6b 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -45836,6 +45836,7 @@ priorized->prioritized priorizes->prioritizes priorizin->prioritizing priorizing->prioritizing +priort->prior, priory, priors, priori, priorties->priorities, prior ties, priortisation->prioritisation priortisations->prioritisations From 8a686b8e736c510669429177de83e4a89f569ac4 Mon Sep 17 00:00:00 2001 From: Yaroslav Halchenko Date: Fri, 21 Feb 2025 08:04:57 -0500 Subject: [PATCH 015/202] Remove "fix" of "deques" - it is quite legit Kudos to @psobolewskiPhD for a sharp eye and explanation. "deques" is a legit form of a "deque" which is a data structure ("Double-Ended Queue") which is used/accepted in many languages, Python included. Thus we can expect to encounter it often and "fixing" it to mean "dequeues" (3rd form of "dequeue" as "remove from queue"?) is totally incorrect. Plural form is "deques", as also described on https://en.wiktionary.org/wiki/deques#English --- codespell_lib/data/dictionary.txt | 1 - 1 file changed, 1 deletion(-) diff --git a/codespell_lib/data/dictionary.txt b/codespell_lib/data/dictionary.txt index 26f9b12f6b..c78c5d0eac 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -20224,7 +20224,6 @@ depricating->deprecating deprication->deprecation, deprivation, dequed->dequeued dequeing->dequeuing -deques->dequeues derageable->dirigible derailin->derailing, derail in, deram->dram, dream, From 33d038e6dab820fc74d9f9fbdd101af3ac8097f7 Mon Sep 17 00:00:00 2001 From: MDW Date: Mon, 24 Feb 2025 13:26:50 +0100 Subject: [PATCH 016/202] Several new suggestions (#3621) Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com> --- codespell_lib/data/dictionary.txt | 42 ++++++++++++++++++++++++++++--- 1 file changed, 39 insertions(+), 3 deletions(-) diff --git a/codespell_lib/data/dictionary.txt b/codespell_lib/data/dictionary.txt index c78c5d0eac..b613721da0 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -834,6 +834,8 @@ acciental->accidental accientally->accidentally accissible->accessible acclamied->acclaimed +accleometer->accelerometer +accleometers->accelerometers acclerate->accelerate acclerated->accelerated acclerates->accelerates @@ -7167,6 +7169,7 @@ assesments->assessments assessin->assassin, assessing, assess in, assessmant->assessment assessmants->assessments +assests->assess, assets, assfalt->asphalt assfalted->asphalted assfalting->asphalting @@ -10433,6 +10436,10 @@ buyed->bought, buyer, buzilla->bugzilla bve->be bwtween->between +by-pass->bypass +by-passed->bypassed +by-passes->bypasses +by-passing->bypassing byast->biased bycicle->bicycle bycicled->bicycled @@ -17789,6 +17796,8 @@ counry->country, county, counsellin->counselling counsil->counsel counsils->counsels +counstructor->constructor +counstructors->constructors countain->contain countainer->container countainers->containers @@ -18092,6 +18101,7 @@ critcially->critically critcials->criticals criteak->critique critera->criteria +criteras->criteria criterea->criteria critereon->criterion criterias->criteria @@ -18128,6 +18138,7 @@ critizing->criticizing critque->critique critqued->critiqued critquing->critiquing +critreria->criteria croch->crotch crockadile->crocodile crockodiles->crocodiles @@ -31885,6 +31896,12 @@ impplement->implement impplementating->implementing impplementation->implementation impplemented->implemented +impprove->improve +impproved->improved +impprovement->improvement +impprovements->improvements +impproves->improves +impproving->improving imprement->implement, improvement, imprementation->implementation imprementations->implementations @@ -41505,10 +41522,11 @@ opemess->openness opeming->opening opems->opens openbrower->openbrowser -opended->opened +opend->opened +opended->opened, open-ended, openeing->opening openen->opened, opening, -openend->opened +openend->opened, open-ended, openened->opened openening->opening openes->opens, openness, @@ -45159,6 +45177,10 @@ pre-proces->pre-process pre-procesing->pre-processing pre-realease->pre-release pre-registeres->pre-registers +pre-select->preselect +pre-selected->preselected +pre-selecting->preselecting +pre-selects->preselects preallocationg->preallocating, preallocation, prealocate->preallocate prealocated->preallocated @@ -45533,6 +45555,10 @@ presearves->preserves presearving->preserving presed->pressed, preset, presedential->presidential +preselet->preselect +preseleted->preselected +preseleting->preselecting +preselets->preselects presenation->presentation presenations->presentations presenece->presence @@ -54420,6 +54446,7 @@ snythetically->synthetically snythetics->synthetics Soalris->Solaris socail->social +socal->social socalism->socialism socalist->socialist socalists->socialists @@ -60244,7 +60271,14 @@ tryin->trying, try in, tryinng->trying trys->tries tryying->trying -ttests->tests +ttempt->attempt, tempt, +ttempted->attempted, tempted, +ttempting->attempting, tempting, +ttempts->attempts, tempts, +ttest->test, attest, +ttested->tested, attested, +ttesting->test, attesting, +ttests->tests, attests, tthank->thank tthanks->thanks tthat->that @@ -63236,6 +63270,8 @@ warantee->warranty waranties->warranties waranty->warranty wardobe->wardrobe +warehosue->warehouse +warehosues->warehouses waring->warning warings->warnings warinig->warning From 77cb5e541ffe1eb79d171981ba8e7ecce5a02103 Mon Sep 17 00:00:00 2001 From: MDW Date: Mon, 24 Feb 2025 10:32:07 +0100 Subject: [PATCH 017/202] Add proposal constraints to containts --- codespell_lib/data/dictionary.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/codespell_lib/data/dictionary.txt b/codespell_lib/data/dictionary.txt index b613721da0..0b5f96ebf1 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -16372,7 +16372,7 @@ containted->contained containter->container containters->containers containting->containing -containts->contains +containts->contains, constraints, containuations->continuations contais->contains contaisn->contains From 4d15335077489417c76614e4a5c25ad50057afe5 Mon Sep 17 00:00:00 2001 From: MDW Date: Mon, 24 Feb 2025 13:44:38 +0100 Subject: [PATCH 018/202] Additions dleay,infp,practive,utiliy (#3643) Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com> --- codespell_lib/data/dictionary.txt | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/codespell_lib/data/dictionary.txt b/codespell_lib/data/dictionary.txt index 0b5f96ebf1..31b84eda7a 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -22777,6 +22777,10 @@ divsion->division divsions->divisions divsiors->divisors djanog->Django +dleay->delay +dleayed->delayed +dleaying->delaying +dleays->delays dloating->floating dnamically->dynamically dne->done @@ -32851,6 +32855,7 @@ informtion->information informtional->informational inforrmation->information inforrmational->informational +infp->info infrantryman->infantryman infrasctructure->infrastructure infrasctructures->infrastructures @@ -45115,6 +45120,7 @@ practictitioners->practitioners practicval->practical practioner->practitioner practioners->practitioners +practive->practice, proactive, praefix->prefix pragam->pragma pragmato->pragma to @@ -62056,6 +62062,7 @@ utilitization->utilization utilitize->utilize utilitizes->utilizes utilitizing->utilizing +utiliy->utility utiliz->utilize utiliza->utilize utilizaton->utilization From e52fc5c63be0bafc88c483698754a4c39f326265 Mon Sep 17 00:00:00 2001 From: MDW Date: Fri, 21 Feb 2025 17:09:49 +0100 Subject: [PATCH 019/202] Dictionnary: Add calncelled --- codespell_lib/data/dictionary.txt | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/codespell_lib/data/dictionary.txt b/codespell_lib/data/dictionary.txt index 31b84eda7a..ff541901df 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -10825,6 +10825,12 @@ callls->calls calloed->called callser->caller callsr->calls +calncel->cancel +calncellation->cancellation +calncellations->cancellations +calncelled->cancelled +calncelling->cancelling +calncels->cancels calss->calls, class, calsses->classes calssic->classic From 81e33abecbf3c1f983c336e0bbd101d16c31e996 Mon Sep 17 00:00:00 2001 From: Dimitri Papadopoulos Orfanos <3234522+DimitriPapadopoulos@users.noreply.github.com> Date: Mon, 24 Feb 2025 16:38:56 +0100 Subject: [PATCH 020/202] Use raw strings for regex (#3654) --- codespell_lib/_codespell.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/codespell_lib/_codespell.py b/codespell_lib/_codespell.py index 794009bf56..8051391386 100644 --- a/codespell_lib/_codespell.py +++ b/codespell_lib/_codespell.py @@ -58,7 +58,7 @@ # these may occur unescaped in URIs, and so we are more restrictive on the # endpoint. Emails are more restrictive, so the endpoint remains flexible. uri_regex_def = ( - "(\\b(?:https?|[ts]?ftp|file|git|smb)://[^\\s]+(?=$|\\s)|\\b[\\w.%+-]+@[\\w.-]+\\b)" + r"(\b(?:https?|[ts]?ftp|file|git|smb)://[^\s]+(?=$|\s)|\b[\w.%+-]+@[\w.-]+\b)" ) inline_ignore_regex = re.compile(r"[^\w\s]\s?codespell:ignore\b(\s+(?P[\w,]*))?") USAGE = """ From 3644e18d26b655325d807e407b36dfc65b4510b8 Mon Sep 17 00:00:00 2001 From: Dimitri Papadopoulos Orfanos <3234522+DimitriPapadopoulos@users.noreply.github.com> Date: Mon, 24 Feb 2025 16:45:28 +0100 Subject: [PATCH 021/202] Allow multiple spaces before codespell:ignore (#3653) --- codespell_lib/_codespell.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/codespell_lib/_codespell.py b/codespell_lib/_codespell.py index 8051391386..dee6a63ee8 100644 --- a/codespell_lib/_codespell.py +++ b/codespell_lib/_codespell.py @@ -60,7 +60,7 @@ uri_regex_def = ( r"(\b(?:https?|[ts]?ftp|file|git|smb)://[^\s]+(?=$|\s)|\b[\w.%+-]+@[\w.-]+\b)" ) -inline_ignore_regex = re.compile(r"[^\w\s]\s?codespell:ignore\b(\s+(?P[\w,]*))?") +inline_ignore_regex = re.compile(r"[^\w\s]\s*codespell:ignore\b(\s+(?P[\w,]*))?") USAGE = """ \t%prog [OPTIONS] [file1 file2 ... fileN] """ From 7609426d1e5519155cdb448176199048aaf39e47 Mon Sep 17 00:00:00 2001 From: James Braza Date: Tue, 25 Feb 2025 10:33:10 -0800 Subject: [PATCH 022/202] Added correction from 'timeour' to 'timeout' --- codespell_lib/data/dictionary.txt | 1 + 1 file changed, 1 insertion(+) diff --git a/codespell_lib/data/dictionary.txt b/codespell_lib/data/dictionary.txt index ff541901df..f69e3f4ddb 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -59047,6 +59047,7 @@ timemout->timeout timemouts->timeouts timeot->timeout timeots->timeouts +timeour->timeout timeoutted->timed out timeput->timeout, time put, timeputs->timeouts, time puts, From 76c5051a40506e8ea03c40fd89da9890900c6b7d Mon Sep 17 00:00:00 2001 From: luzpaz Date: Tue, 25 Feb 2025 13:56:45 -0500 Subject: [PATCH 023/202] Add typos found in various software projects (#3640) --- codespell_lib/data/dictionary.txt | 34 ++++++++++++++++++++++++++++++- 1 file changed, 33 insertions(+), 1 deletion(-) diff --git a/codespell_lib/data/dictionary.txt b/codespell_lib/data/dictionary.txt index f69e3f4ddb..e76bb1ac90 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -3395,6 +3395,7 @@ aligment->alignment aligments->alignments aligmnet->alignment aligmnets->alignments +alignaed->aligned alignament->alignment alignaments->alignments alignation->alignment @@ -13437,6 +13438,8 @@ coeffiecient->coefficient coeffiecients->coefficients coeffient->coefficient coeffients->coefficients +coeffitient->coefficient +coeffitients->coefficients coeficent->coefficient coeficents->coefficients coeficient->coefficient @@ -16176,7 +16179,7 @@ constents->constants, consents, contents, constext->context consting->consisting constinually->continually -constist->consist +constist->consist, consists, constisted->consisted constistency->consistency constistent->consistent @@ -17543,6 +17546,11 @@ corretness->correctness corretor->corrector corretors->correctors correts->corrects +correxpond->correspond +correxpondance->correspondence +correxponded->corresponded +correxponding->corresponding +correxponds->corresponds corridoor->corridor corridoors->corridors corrispond->correspond @@ -17858,8 +17866,14 @@ coutermeasures->countermeasures couterpart->counterpart couters->counters, routers, scouters, couting->counting +coutn->count +coutndown->countdown +coutned->counted coutner->counter coutners->counters +coutning->counting +coutnown->countdown +coutns->counts coutries->countries coutry->country couuld->could @@ -18723,6 +18737,9 @@ daquiri->daiquiri daquiris->daiquiris Dardenelles->Dardanelles darma->dharma +darw->draw +darwn->drawn, Darwin, +darws->draws dasboard->dashboard dasboards->dashboards dasdot->dashdot @@ -21673,6 +21690,7 @@ dimensionaility->dimensionality dimensionailties->dimensionalities dimensionailty->dimensionality dimensiones->dimensions +dimensionned->dimensioned dimenson->dimension dimensonal->dimensional dimensonalities->dimensionalities @@ -22533,6 +22551,9 @@ disssociating->dissociating distace->distance, distaste, distaced->distanced distaces->distances, distastes, +distacne->distance +distacned->distanced +distacnes->distances distancef->distanced, distances, distance, distancin->distancing distange->distance @@ -42212,6 +42233,10 @@ osffset->offset osffsets->offsets osffsetting->offsetting osicllations->oscillations +ossociate->associate +ossociated->associated +ossociation->association +ossociations->associations osterage->ostrich osterages->ostriches ostridge->ostrich @@ -51264,6 +51289,7 @@ returnin->returning, return in, returnn->return returnned->returned returnning->returning +returnst->returns returs->returns retursn->returns retutn->return @@ -56467,6 +56493,8 @@ subscibe->subscribe subscibed->subscribed subsciber->subscriber subscibers->subscribers +subsciption->subscription +subsciptions->subscriptions subscirbe->subscribe subscirbed->subscribed subscirber->subscriber @@ -61254,6 +61282,10 @@ unmaping->unmapping unmappend->unmapped unmarsalling->unmarshalling unmaximice->unmaximize +unmber->number, umber, +unmbered->numbered +unmbering->numbering +unmbers->numbers unmisakable->unmistakable unmisakably->unmistakably unmistakeably->unmistakably From 04b96266287fdf5715309d659d271060f0d9a410 Mon Sep 17 00:00:00 2001 From: "pre-commit-ci[bot]" <66853113+pre-commit-ci[bot]@users.noreply.github.com> Date: Mon, 3 Mar 2025 17:11:48 +0000 Subject: [PATCH 024/202] [pre-commit.ci] pre-commit autoupdate MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit updates: - [github.com/astral-sh/ruff-pre-commit: v0.9.4 → v0.9.9](https://github.com/astral-sh/ruff-pre-commit/compare/v0.9.4...v0.9.9) - [github.com/pre-commit/mirrors-mypy: v1.14.1 → v1.15.0](https://github.com/pre-commit/mirrors-mypy/compare/v1.14.1...v1.15.0) --- .pre-commit-config.yaml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.pre-commit-config.yaml b/.pre-commit-config.yaml index 6eb723d5b1..47325fe374 100644 --- a/.pre-commit-config.yaml +++ b/.pre-commit-config.yaml @@ -58,7 +58,7 @@ repos: - -d - "{extends: relaxed, rules: {line-length: {max: 90}}}" - repo: https://github.com/astral-sh/ruff-pre-commit - rev: v0.9.4 + rev: v0.9.9 hooks: - id: ruff - id: ruff-format @@ -79,7 +79,7 @@ repos: hooks: - id: validate-pyproject - repo: https://github.com/pre-commit/mirrors-mypy - rev: v1.14.1 + rev: v1.15.0 hooks: - id: mypy args: ["--config-file", "pyproject.toml"] From 287e079007c7559b66b3d7a3f17a5516e942af9b Mon Sep 17 00:00:00 2001 From: MDW Date: Sun, 2 Mar 2025 21:10:04 +0100 Subject: [PATCH 025/202] Add codespell suggestions for enabke and friends --- codespell_lib/data/dictionary.txt | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/codespell_lib/data/dictionary.txt b/codespell_lib/data/dictionary.txt index e76bb1ac90..4deae333e2 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -24263,6 +24263,10 @@ enabeling->enabling enabels->enables enabes->enables enabing->enabling +enabke->enable +enabked->enabled +enabkes->enables +enabking->enabling enabledi->enabled enableing->enabling enablen->enabled From 3fda02deddd67b2e176d0540716067de97451af4 Mon Sep 17 00:00:00 2001 From: Yaroslav Halchenko Date: Tue, 11 Mar 2025 11:39:42 -0400 Subject: [PATCH 026/202] END: add "queues" (plural from queue) as possible fix for ques (#3591) Co-authored-by: Dimitri Papadopoulos Orfanos <3234522+DimitriPapadopoulos@users.noreply.github.com> Co-authored-by: Peter Newman --- codespell_lib/data/dictionary_rare.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/codespell_lib/data/dictionary_rare.txt b/codespell_lib/data/dictionary_rare.txt index 2ad15c97cf..9eb0e5bc24 100644 --- a/codespell_lib/data/dictionary_rare.txt +++ b/codespell_lib/data/dictionary_rare.txt @@ -218,7 +218,7 @@ protestors->protesters provence->province purportive->supportive purvue->purview -ques->quest +ques->quest, queues, cues, readd->re-add, read, readded->re-added, read, readding->re-adding, reading, From d7c83b83cf70293e75e4363f11c3d6135d47afa0 Mon Sep 17 00:00:00 2001 From: MDW Date: Mon, 10 Mar 2025 22:09:44 +0100 Subject: [PATCH 027/202] agreegate, lesda, realod, colouer --- codespell_lib/data/dictionary.txt | 15 +++++++++++++++ 1 file changed, 15 insertions(+) diff --git a/codespell_lib/data/dictionary.txt b/codespell_lib/data/dictionary.txt index 4deae333e2..4ec35dd39a 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -2727,6 +2727,14 @@ aggreeableness->agreeableness aggreeably->agreeably aggreecate->aggregate aggreed->agreed +aggreegate->aggregate +aggreegated->aggregated +aggreegates->aggregates +aggreegating->aggregating +aggreegation->aggregation +aggreegations->aggregations +aggreegator->aggregator +aggreegators->aggregators aggreeing->agreeing aggreement->agreement aggreements->agreements @@ -9753,6 +9761,7 @@ bluethooth->Bluetooth bluetooh->Bluetooth bluetoot->Bluetooth bluetootn->Bluetooth +blutooth->Bluetooth blured->blurred blurr->blur, blurred, blutooth->Bluetooth @@ -13682,6 +13691,7 @@ colorpsace->colorspace colorpsaces->colorspaces colose->close coloum->column +colouer->colour coloumn->column coloumns->columns coloums->columns @@ -36255,6 +36265,7 @@ lerans->learns lern->learn, lean, lerned->learned, learnt, leaned, lerning->learning, leaning, +lesda->leads lessson->lesson lesssons->lessons lesstiff->LessTif @@ -47930,6 +47941,10 @@ reallocaitions->reallocations reallocaiton->reallocation reallocaitons->reallocations reallocatin->reallocating, reallocation, +realod->reload +realoded->reloaded +realoding->reloading +realods->reloads realsitic->realistic realtd->related realte->relate From 411eae35edffe75ba54fb88aa7913d948ae14a9e Mon Sep 17 00:00:00 2001 From: "pre-commit-ci[bot]" <66853113+pre-commit-ci[bot]@users.noreply.github.com> Date: Mon, 10 Mar 2025 21:12:13 +0000 Subject: [PATCH 028/202] [pre-commit.ci] auto fixes from pre-commit.com hooks for more information, see https://pre-commit.ci --- codespell_lib/data/dictionary.txt | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/codespell_lib/data/dictionary.txt b/codespell_lib/data/dictionary.txt index 4ec35dd39a..57f3286f88 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -9761,10 +9761,10 @@ bluethooth->Bluetooth bluetooh->Bluetooth bluetoot->Bluetooth bluetootn->Bluetooth -blutooth->Bluetooth blured->blurred blurr->blur, blurred, blutooth->Bluetooth +blutooth->Bluetooth blythely->blithely blythly->blithely bnecause->because @@ -13690,8 +13690,8 @@ colorizoer->colorizer colorpsace->colorspace colorpsaces->colorspaces colose->close -coloum->column colouer->colour +coloum->column coloumn->column coloumns->columns coloums->columns From c9cea7c08e7c2443c1f016df45f59b5bfc4b6470 Mon Sep 17 00:00:00 2001 From: MDW Date: Mon, 10 Mar 2025 22:14:16 +0100 Subject: [PATCH 029/202] Correct double entry --- codespell_lib/data/dictionary.txt | 1 - 1 file changed, 1 deletion(-) diff --git a/codespell_lib/data/dictionary.txt b/codespell_lib/data/dictionary.txt index 57f3286f88..09302358de 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -9764,7 +9764,6 @@ bluetootn->Bluetooth blured->blurred blurr->blur, blurred, blutooth->Bluetooth -blutooth->Bluetooth blythely->blithely blythly->blithely bnecause->because From da0e1116c3711690941570679a62098ec3d89eaf Mon Sep 17 00:00:00 2001 From: Price Howard Date: Thu, 13 Mar 2025 06:57:35 -0700 Subject: [PATCH 030/202] Update pre-commit version in documentation (#3666) --- README.rst | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/README.rst b/README.rst index cac6af6a1a..8e256dc923 100644 --- a/README.rst +++ b/README.rst @@ -237,7 +237,7 @@ codespell also works with `pre-commit `_, using .. code-block:: yaml - repo: https://github.com/codespell-project/codespell - rev: v2.2.4 + rev: v2.4.1 hooks: - id: codespell @@ -246,7 +246,7 @@ If one configures codespell using the `pyproject.toml` file instead use: .. code-block:: yaml - repo: https://github.com/codespell-project/codespell - rev: v2.2.4 + rev: v2.4.1 hooks: - id: codespell additional_dependencies: From 91ca67504e272efab0c76690d0801687efad7609 Mon Sep 17 00:00:00 2001 From: Eric Larson Date: Thu, 13 Mar 2025 10:34:19 -0400 Subject: [PATCH 031/202] MAINT: Rename CI file and run name (#3667) --- .github/workflows/codespell-windows.yml | 30 ------------------- .../{codespell-private.yml => tests.yml} | 29 +++++++++++++----- 2 files changed, 21 insertions(+), 38 deletions(-) delete mode 100644 .github/workflows/codespell-windows.yml rename .github/workflows/{codespell-private.yml => tests.yml} (78%) diff --git a/.github/workflows/codespell-windows.yml b/.github/workflows/codespell-windows.yml deleted file mode 100644 index c090a224d7..0000000000 --- a/.github/workflows/codespell-windows.yml +++ /dev/null @@ -1,30 +0,0 @@ -name: Test Codespell Windows -on: - - push - - pull_request -permissions: {} -jobs: - test-windows: - name: Test Windows - runs-on: windows-latest - timeout-minutes: 10 - steps: - - uses: actions/checkout@v4 - with: - persist-credentials: false - - name: Setup python - uses: actions/setup-python@v5 - with: - python-version: "3.8" - - name: Install dependencies - run: | - python --version - pip install -U pip - pip install setuptools - pip install -e .[dev] - - run: codespell --help - - run: codespell --version - - run: pytest codespell_lib - - uses: codecov/codecov-action@v5 - with: - token: ${{ secrets.CODECOV_TOKEN }} diff --git a/.github/workflows/codespell-private.yml b/.github/workflows/tests.yml similarity index 78% rename from .github/workflows/codespell-private.yml rename to .github/workflows/tests.yml index 83a8499a50..c38f394109 100644 --- a/.github/workflows/codespell-private.yml +++ b/.github/workflows/tests.yml @@ -11,10 +11,10 @@ permissions: {} jobs: test: env: - REQUIRE_ASPELL: true + REQUIRE_ASPELL: ${{ startsWith(matrix.os, 'ubuntu') }} RUFF_OUTPUT_FORMAT: github # Make sure we're using the latest aspell dictionary - runs-on: ubuntu-24.04-arm + runs-on: ${{ matrix.os }} timeout-minutes: 10 strategy: fail-fast: false @@ -26,12 +26,18 @@ jobs: - "3.11" - "3.12" - "3.13" - no-toml: - - "" + kind: + - "standard" + os: + - "ubuntu-24.04-arm" include: - python-version: "3.10" - no-toml: "no-toml" - name: ${{ matrix.python-version }} ${{ matrix.no-toml }} + kind: "no-toml" + os: "ubuntu-24.04-arm" + - python-version: "3.13" + kind: "standard" + os: "windows-latest" + name: "${{ matrix.python-version }} ${{ matrix.kind }} ${{ matrix.os }}" steps: - uses: actions/checkout@v4 with: @@ -42,25 +48,32 @@ jobs: python-version: ${{ matrix.python-version }} allow-prereleases: true - run: sudo apt-get install libaspell-dev aspell-en + if: startsWith(matrix.os, 'ubuntu') - name: Install dependencies + shell: bash -e {0} run: | python --version # just to check pip install --upgrade pip wheel # upgrade to latest pip find 3.5 wheels; wheel to avoid errors pip install --upgrade "setuptools!=47.2.0" docutils setuptools_scm[toml] twine - pip install aspell-python-py3 pip install -e ".[dev]" # install the codespell dev packages + - run: pip install aspell-python-py3 + if: startsWith(matrix.os, 'ubuntu') - run: codespell --help - run: codespell --version - run: make check + if: startsWith(matrix.os, 'ubuntu') + - run: pytest codespell_lib + if: startsWith(matrix.os, 'windows') - uses: codecov/codecov-action@v5 with: token: ${{ secrets.CODECOV_TOKEN }} # tomli should not be required for the next two steps (and make sure it's not) - run: pip uninstall -yq tomli - if: ${{ matrix.no-toml == 'no-toml' }} + if: ${{ matrix.kind == 'no-toml' }} - run: codespell --check-filenames --skip="./.*,./build/*,./codespell_lib/data/*,./codespell_lib/tests/test_basic.py,./example/code.c,./junit-results.xml,*.egg-info/*,*.pyc,*.sig,pyproject-codespell.precommit-toml,README.rst," # this file has an error - run: "! codespell codespell_lib/tests/test_basic.py" + shell: bash -e {0} make-check-dictionaries: runs-on: ubuntu-latest From a0a7ff7bc6ebc7d87fce3b121b0a66ef8081ff13 Mon Sep 17 00:00:00 2001 From: Loymdayddaud <145969603+TheGiraffe3@users.noreply.github.com> Date: Mon, 17 Mar 2025 11:00:08 +0300 Subject: [PATCH 032/202] preoccuption->preoccupation; occuption->occupation (#3668) Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com> --- codespell_lib/data/dictionary.txt | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/codespell_lib/data/dictionary.txt b/codespell_lib/data/dictionary.txt index 09302358de..7d24c344b3 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -41154,6 +41154,9 @@ occuppiers->occupiers occuppies->occupies occuppy->occupy occuppying->occupying +occuption->occupation +occuptional->occupational +occuptions->occupations occupyin->occupying, occupy in, occuracy->accuracy occurance->occurrence @@ -45511,6 +45514,7 @@ premptive->preemptive premptively->preemptively premutation->permutation premutations->permutations +preoccuption->preoccupation preocess->process preocupation->preoccupation preoperty->property From 03fe493af0a9b9082b124f2f43858325b74631f3 Mon Sep 17 00:00:00 2001 From: MDW Date: Wed, 19 Mar 2025 11:40:04 +0100 Subject: [PATCH 033/202] Suggestions for: checkto, diminsion, waitfor (#3670) Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com> --- codespell_lib/data/dictionary.txt | 6 ++++++ codespell_lib/data/dictionary_code.txt | 1 + 2 files changed, 7 insertions(+) diff --git a/codespell_lib/data/dictionary.txt b/codespell_lib/data/dictionary.txt index 7d24c344b3..4e45634220 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -12404,6 +12404,7 @@ checksume->checksum checksumed->checksummed checksuming->checksumming checkt->checked +checkto->check to, checkout, checkts->checked, checks, checkum->checksum checkums->checksums @@ -21729,6 +21730,11 @@ dimesnional->dimensional dimesnions->dimensions diminsh->diminish diminshed->diminished +diminsion->dimension +diminsional->dimensional +diminsioned->dimensioned +diminsioning->dimensioning +diminsions->dimensions diminuitive->diminutive dimiss->dismiss dimissal->dismissal diff --git a/codespell_lib/data/dictionary_code.txt b/codespell_lib/data/dictionary_code.txt index bf8a544a60..1a09fe97c9 100644 --- a/codespell_lib/data/dictionary_code.txt +++ b/codespell_lib/data/dictionary_code.txt @@ -97,6 +97,7 @@ uint->unit uis->is, use, upto->up to usesd->used, uses, +waitfor->wait for wan->want warmup->warm up, warm-up, were'->we're From 5ab0358801b733bb2fd3f374af455972e5801e78 Mon Sep 17 00:00:00 2001 From: Dimitri Papadopoulos <3234522+DimitriPapadopoulos@users.noreply.github.com> Date: Sun, 9 Mar 2025 12:33:07 +0100 Subject: [PATCH 034/202] Typos found in sigstore https://github.com/sigstore/sigstore-python/pull/1318 https://github.com/sigstore/docs/pull/371 --- codespell_lib/data/dictionary.txt | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/codespell_lib/data/dictionary.txt b/codespell_lib/data/dictionary.txt index 4e45634220..1d2fd297c0 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -11789,6 +11789,8 @@ cerinomial->ceremonial cerinomially->ceremonially cerinomies->ceremonies cerinomy->ceremony +ceritificate->certificate +ceritificates->certificates cermonial->ceremonial cermonially->ceremonially cermonies->ceremonies @@ -11864,6 +11866,8 @@ certificats->certificates certifice->certificate certificed->certificated certifices->certificates +certificiate->certificate +certificiates->certificates certificion->certification certificste->certificate certificsted->certificated @@ -21643,6 +21647,7 @@ digitalise->digitize digitalising->digitizing digitalize->digitize digitalizing->digitizing +digitaly->digitally digitial->digital digitis->digits digitisin->digitising From 787796f821dd74d69d5ff0f6b91ddadc49ceab4f Mon Sep 17 00:00:00 2001 From: Dimitri Papadopoulos <3234522+DimitriPapadopoulos@users.noreply.github.com> Date: Tue, 11 Mar 2025 21:52:20 +0100 Subject: [PATCH 035/202] Typos found in in-toto https://github.com/in-toto/in-toto/pull/834 --- codespell_lib/data/dictionary.txt | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/codespell_lib/data/dictionary.txt b/codespell_lib/data/dictionary.txt index 1d2fd297c0..9204e7a9b4 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -24560,6 +24560,11 @@ eneumretaion->enumeration eneumretaions->enumerations enew->new enflamed->inflamed +enfoce->enforce +enfoced->enforced +enfocement->enforcement +enfoces->enforces +enfocing->enforcing enforcable->enforceable enforceing->enforcing enforcin->enforcing @@ -24582,6 +24587,7 @@ enfornces->enforces enforncing->enforcing enforrce->enforce enforrced->enforced +enforrcement->enforcement enforrces->enforces enforrcing->enforcing engagment->engagement @@ -33892,6 +33898,8 @@ insitution->institution insitutional->institutional insitutions->institutions insonsistency->inconsistency +inspeciton->inspection +inspecitons->inspections inspectin->inspecting, inspect in, inspection, inspite->in spite, inspire, insstance->instance From a3ec05d8ae782a78e5385f2193ea61874986b1f2 Mon Sep 17 00:00:00 2001 From: Yudai Takada Date: Tue, 25 Mar 2025 22:01:30 +0900 Subject: [PATCH 036/202] Add usgin->using (#3672) --- codespell_lib/data/dictionary.txt | 1 + 1 file changed, 1 insertion(+) diff --git a/codespell_lib/data/dictionary.txt b/codespell_lib/data/dictionary.txt index 9204e7a9b4..acf9ffadb3 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -62064,6 +62064,7 @@ userspase->userspace usesfull->useful usespace->userspace usetnet->Usenet +usgin->using usiability->usability usiable->usable usiage->usage From 47337d26c467ff414fcc901b673c98dbf8b0c8a8 Mon Sep 17 00:00:00 2001 From: luzpaz Date: Sun, 16 Mar 2025 18:36:34 +0000 Subject: [PATCH 037/202] Add typos found in various software projects --- codespell_lib/data/dictionary.txt | 35 +++++++++++++++++++++++++++++++ 1 file changed, 35 insertions(+) diff --git a/codespell_lib/data/dictionary.txt b/codespell_lib/data/dictionary.txt index acf9ffadb3..e68316c20a 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -10952,6 +10952,11 @@ canabelyze->cannibalize canabelyzed->cannibalized canabelyzes->cannibalizes canabelyzing->cannibalizing +canacel->cancel +canaceled->canceled +canaceling->canceling +canacelling->cancelling +canacels->cancels canadan->canadian canbe->can be cancelaltion->cancellation @@ -11089,6 +11094,8 @@ cantacting->contacting cantacts->contacts cantain->contain cantained->contained +cantainer->container +cantainers->containers cantaining->containing cantains->contains cantalope->cantaloupe @@ -15059,6 +15066,8 @@ concludin->concluding concret->concrete, concert, concretly->concretely concrets->concrete, concerts, +conctructor->constructor +conctructors->constructors concured->concurred, conquered, concurence->concurrence concurency->concurrency @@ -16560,6 +16569,7 @@ continuem->continuum continueous->continuous continueously->continuously continuesly->continuously +continuim->continuum continuin->continuing continuos->continuous continuosly->continuously @@ -19614,6 +19624,10 @@ defnitively->definitively defore->before defqault->default defragmenation->defragmentation +defrentiate->differentiate +defrentiated->differentiated +defrentiates->differentiates +defrentiating->differentiating defualt->default defualtdict->defaultdict defualts->defaults @@ -21863,6 +21877,7 @@ directoriei->directories directoris->directories directort->directory directorty->directory +directoryes->directories directorys->directories directoty->directory directove->directive @@ -37645,6 +37660,7 @@ medadata->metadata medai->media meddo->meadow meddos->meadows +mede->made, mere, mead, lede, mete, medeival->medieval medeval->medieval medevial->medieval @@ -40725,6 +40741,7 @@ notifiction->notification notifictions->notifications notififation->notification notififations->notifications +notifing->notifying notifiy->notify notifiying->notifying notifyable->notifiable @@ -41812,6 +41829,7 @@ oposed->opposed oposite->opposite oposition->opposition oppen->open +oppend->opened, append, oppened->opened oppenent->opponent oppenents->opponents @@ -43083,6 +43101,7 @@ paramterizes->parameterizes paramterizing->parameterizing paramterless->parameterless paramters->parameters +paramterts->parameters paramtrical->parametrical parana->piranha paraniac->paranoiac @@ -44323,6 +44342,8 @@ pictureskly->picturesquely pictureskness->picturesqueness picure->picture, epicure, picures->pictures, epicures, +picutre->picture +picutres->pictures pidgeon->pigeon, pidgin, pidgeons->pigeons, pidgins, pieceweise->piecewise, piece wise, @@ -44892,6 +44913,7 @@ porpose->propose, purpose, porposed->proposed porposes->proposes, purposes, porposing->proposing +porpuse->purpose, porpoise, porsalin->porcelain porshan->portion porshon->portion @@ -45935,6 +45957,8 @@ priorized->prioritized priorizes->prioritizes priorizin->prioritizing priorizing->prioritizing +priororities->priorities +priorority->priority priort->prior, priory, priors, priori, priorties->priorities, prior ties, priortisation->prioritisation @@ -47432,6 +47456,8 @@ quivalent->equivalent quizes->quizzes quizs->quizzes quizzs->quizzes +quntities->quantities +quntity->quantity quoshant->quotient quoshants->quotients quotaion->quotation @@ -49455,6 +49481,7 @@ reletive->relative reletively->relatively relevabt->relevant relevane->relevant +relevante->relevant relevants->relevant releveant->relevant relevence->relevance @@ -50180,6 +50207,7 @@ replases->replaces, relapses, rephases, replasing->replacing, relapsing, rephasing, replcace->replace replcaced->replaced +replcae->replace replcaof->replicaof replenishin->replenishing, replenish in, replentish->replenish @@ -52199,6 +52227,8 @@ scedulers->schedulers scedules->schedules sceduling->scheduling sceen->scene, seen, screen, scheme, +sceene->scene +sceenes->scenes sceens->scenes, screens, schemes, sceenshot->screenshot sceenshots->screenshots @@ -54614,6 +54644,8 @@ soltions->solutions soltuion->solution soltuions->solutions soluable->soluble +soluation->solution +soluations->solutions solum->solemn soluton->solution solutons->solutions @@ -57681,6 +57713,7 @@ symetrically->symmetrically symetriy->symmetry symetry->symmetry symettric->symmetric +symlinc->symlink symmeterized->symmetrized symmetetric->symmetric symmetic->symmetric @@ -59565,6 +59598,8 @@ transacitons->transactions transacrtion->transaction transacrtional->transactional transacrtions->transactions +transactino->transaction +transactinos->transactions transaction-spacific->transaction-specific transactiona->transactions, transactional, transactoin->transaction From dfdfd2e391a0b65c054432db4380c9ee4a3ebd14 Mon Sep 17 00:00:00 2001 From: Chris Markiewicz Date: Fri, 28 Mar 2025 13:44:34 -0400 Subject: [PATCH 038/202] Add coered -> coerced Ran across this while reviewing some documentation, expected to be able to codespell it. --- codespell_lib/data/dictionary.txt | 1 + 1 file changed, 1 insertion(+) diff --git a/codespell_lib/data/dictionary.txt b/codespell_lib/data/dictionary.txt index e68316c20a..35f1da8874 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -13468,6 +13468,7 @@ coelesce->coalesce coercable->coercible coerceion->coercion coercin->coercing, coercion, +coered->coerced coersce->coerce coersced->coerced coersces->coerces From f24578668c068dc4a728a2edbe9ab6b37b49f867 Mon Sep 17 00:00:00 2001 From: Colin Watson Date: Mon, 31 Mar 2025 11:47:36 +0100 Subject: [PATCH 039/202] backwward(s)->backward(s), onwward(s)->onward(s) I spotted "onwwards" in the field. "forwward->forwward" etc. were already present. --- codespell_lib/data/dictionary.txt | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/codespell_lib/data/dictionary.txt b/codespell_lib/data/dictionary.txt index 35f1da8874..a28c51c833 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -8996,6 +8996,8 @@ backwarks->backwards backwars->backward, backwards, backwrad->backward backwrads->backwards +backwward->backward +backwwards->backwards bacome->become, became, bacomes->becomes bacoming->becoming @@ -41538,6 +41540,8 @@ onwer->owner onwership->ownership onwing->owning onws->owns +onwward->onward +onwwards->onwards ony->only, on, one, onyl->only oommits->commits From 74106c798a4f4aee17fac457dfc42bc7c61c2bf2 Mon Sep 17 00:00:00 2001 From: "pre-commit-ci[bot]" <66853113+pre-commit-ci[bot]@users.noreply.github.com> Date: Mon, 7 Apr 2025 17:11:49 +0000 Subject: [PATCH 040/202] [pre-commit.ci] pre-commit autoupdate MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit updates: - [github.com/adrienverge/yamllint.git: v1.35.1 → v1.37.0](https://github.com/adrienverge/yamllint.git/compare/v1.35.1...v1.37.0) - [github.com/astral-sh/ruff-pre-commit: v0.9.9 → v0.11.4](https://github.com/astral-sh/ruff-pre-commit/compare/v0.9.9...v0.11.4) - [github.com/abravalheri/validate-pyproject: v0.23 → v0.24.1](https://github.com/abravalheri/validate-pyproject/compare/v0.23...v0.24.1) --- .pre-commit-config.yaml | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/.pre-commit-config.yaml b/.pre-commit-config.yaml index 47325fe374..089bc8455f 100644 --- a/.pre-commit-config.yaml +++ b/.pre-commit-config.yaml @@ -50,7 +50,7 @@ repos: files: dictionary.*\.txt$|\.wordlist$ args: [--ignore-case] - repo: https://github.com/adrienverge/yamllint.git - rev: v1.35.1 + rev: v1.37.0 hooks: - id: yamllint args: @@ -58,7 +58,7 @@ repos: - -d - "{extends: relaxed, rules: {line-length: {max: 90}}}" - repo: https://github.com/astral-sh/ruff-pre-commit - rev: v0.9.9 + rev: v0.11.4 hooks: - id: ruff - id: ruff-format @@ -75,7 +75,7 @@ repos: additional_dependencies: - tomli - repo: https://github.com/abravalheri/validate-pyproject - rev: v0.23 + rev: v0.24.1 hooks: - id: validate-pyproject - repo: https://github.com/pre-commit/mirrors-mypy From 4c962897439dea1244e2089211437443897fd5de Mon Sep 17 00:00:00 2001 From: August Soderberg Date: Wed, 9 Apr 2025 11:15:39 -0700 Subject: [PATCH 041/202] telemetery-telemetry --- codespell_lib/data/dictionary.txt | 1 + 1 file changed, 1 insertion(+) diff --git a/codespell_lib/data/dictionary.txt b/codespell_lib/data/dictionary.txt index a28c51c833..35dd375976 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -58284,6 +58284,7 @@ tekst->text teksts->texts telegramm->telegram telelevision->television +telemetery->telemetry telemtry->telemetry televsion->television telocom->telecom From 56ea99863daa711f3c516f467b014134e758df4b Mon Sep 17 00:00:00 2001 From: Akuli Date: Mon, 21 Apr 2025 19:18:39 +0300 Subject: [PATCH 042/202] Add hexedacimal and similar typos --- codespell_lib/data/dictionary.txt | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/codespell_lib/data/dictionary.txt b/codespell_lib/data/dictionary.txt index 35dd375976..7ff8946348 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -30732,6 +30732,8 @@ heusitics->heuristics hevy->heavy hexademical->hexadecimal hexdecimal->hexadecimal +hexedacimal->hexadecimal +hexedacimals->hexadecimals hexgaon->hexagon hexgaonal->hexagonal hexgaons->hexagons @@ -30741,6 +30743,9 @@ hexidecimals->hexadecimals hexigon->hexagon hexigonal->hexagonal hexigons->hexagons +hexogan->hexagon +hexoganal->hexagonal +hexogans->hexagons hge->he hhttp->http hhttps->https From 331de52236311dca6a0b02ba38b9166136334785 Mon Sep 17 00:00:00 2001 From: Peter Newman Date: Sun, 27 Apr 2025 10:35:29 +0100 Subject: [PATCH 043/202] Add rounted->routed, rounded and friends (#3693) Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com> --- codespell_lib/data/dictionary.txt | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/codespell_lib/data/dictionary.txt b/codespell_lib/data/dictionary.txt index 7ff8946348..c23f2d409b 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -51771,8 +51771,12 @@ roundtriped->roundtripped, round-tripped, round tripped, roundtriping->roundtripping, round-tripping, round tripping, roundtripp->roundtrip, round-trip, round trip, roung->round +rounted->routed, rounded, +rounter->router, rounder, +rounters->routers, rounders, rountine->routine rountines->routines +rounting->routing, rounding, rountrip->roundtrip, round-trip, round trip, rountriped->roundtripped, round-tripped, round tripped, rountriping->roundtripping, round-tripping, round tripping, From 4caf26a356d61663391d88614138c0ce56398c40 Mon Sep 17 00:00:00 2001 From: Akuli Date: Sun, 27 Apr 2025 12:35:59 +0300 Subject: [PATCH 044/202] Add symmectric and similar typos (#3694) --- codespell_lib/data/dictionary.txt | 15 +++++++++++++++ 1 file changed, 15 insertions(+) diff --git a/codespell_lib/data/dictionary.txt b/codespell_lib/data/dictionary.txt index c23f2d409b..3bff52d60f 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -7686,6 +7686,11 @@ asymetricaly->asymmetrically asymetries->asymmetries asymetriy->asymmetry asymetry->asymmetry +asymmectric->asymmetric +asymmectrical->asymmetrical +asymmectrically->asymmetrically +asymmectries->asymmetries +asymmectry->asymmetry asymmeric->asymmetric asymmerical->asymmetrical asymmerically->asymmetrically @@ -8883,6 +8888,7 @@ awsome->awesome awya->away axises->axes axissymmetric->axisymmetric +axisymmectric->axisymmetric axix->axis axixsymmetric->axisymmetric axpressed->expressed @@ -22586,6 +22592,9 @@ disssociate->dissociate disssociated->dissociated disssociates->dissociates disssociating->dissociating +dissymmectric->dissymmetric +dissymmectrical->dissymmetrical +dissymmectry->dissymmetry distace->distance, distaste, distaced->distanced distaces->distances, distastes, @@ -57728,6 +57737,12 @@ symetriy->symmetry symetry->symmetry symettric->symmetric symlinc->symlink +symmectric->symmetric +symmectrical->symmetrical +symmectrically->symmetrically +symmectries->symmetries +symmectrized->symmetrized +symmectry->symmetry symmeterized->symmetrized symmetetric->symmetric symmetic->symmetric From c40b6a44ebf52e815940222b2585ba6c2ce2ccf5 Mon Sep 17 00:00:00 2001 From: Dimitri Papadopoulos <3234522+DimitriPapadopoulos@users.noreply.github.com> Date: Sun, 27 Apr 2025 14:23:09 +0200 Subject: [PATCH 045/202] Fix CI on Windows: pip upgrade pip On Windows, pip.exe cannot update pip.exe if pip.exe is already running. Use an alternative command that avoids running the pip.exe executable. --- .github/workflows/tests.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/tests.yml b/.github/workflows/tests.yml index c38f394109..98ec7128e1 100644 --- a/.github/workflows/tests.yml +++ b/.github/workflows/tests.yml @@ -53,7 +53,7 @@ jobs: shell: bash -e {0} run: | python --version # just to check - pip install --upgrade pip wheel # upgrade to latest pip find 3.5 wheels; wheel to avoid errors + python -m pip install --upgrade pip wheel # upgrade to latest pip find 3.5 wheels; wheel to avoid errors pip install --upgrade "setuptools!=47.2.0" docutils setuptools_scm[toml] twine pip install -e ".[dev]" # install the codespell dev packages - run: pip install aspell-python-py3 From 688f4c5ef9a46072dd43c53d858ca6d49574bc97 Mon Sep 17 00:00:00 2001 From: Fredrik Bakke Date: Mon, 28 Apr 2025 08:47:08 +0100 Subject: [PATCH 046/202] "Intensional" is a word (#3697) --- codespell_lib/data/dictionary.txt | 1 - codespell_lib/data/dictionary_rare.txt | 1 + 2 files changed, 1 insertion(+), 1 deletion(-) diff --git a/codespell_lib/data/dictionary.txt b/codespell_lib/data/dictionary.txt index 3bff52d60f..a19fb3f316 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -34336,7 +34336,6 @@ inteneded->intended intenet->internet, intent, intenisty->intensity intension->intention -intensional->intentional intensionally->intentionally intensionaly->intentionally intensitive->insensitive, intensive, diff --git a/codespell_lib/data/dictionary_rare.txt b/codespell_lib/data/dictionary_rare.txt index 9eb0e5bc24..0c52496976 100644 --- a/codespell_lib/data/dictionary_rare.txt +++ b/codespell_lib/data/dictionary_rare.txt @@ -144,6 +144,7 @@ infarction->infraction infarctions->infractions ingenuous->ingenious inly->only +intensional->intentional irregardless->regardless joo->you knifes->knives From 512a31cf7cb3fca77e4c407109374661098c308d Mon Sep 17 00:00:00 2001 From: user27182 <89109579+user27182@users.noreply.github.com> Date: Sat, 26 Apr 2025 00:24:47 -0600 Subject: [PATCH 047/202] Update dictionary.txt --- codespell_lib/data/dictionary.txt | 1 + 1 file changed, 1 insertion(+) diff --git a/codespell_lib/data/dictionary.txt b/codespell_lib/data/dictionary.txt index a19fb3f316..64387d5b26 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -39557,6 +39557,7 @@ necessarlily->necessarily necessarly->necessary, necessarily, necessarrily->necessarily necessarry->necessary +necessaru->necessary necessaryly->necessarily necessay->necessary necesserily->necessarily From 3388806e3329d699f02b673f7cd1286dc06b5b1a Mon Sep 17 00:00:00 2001 From: Dimitri Papadopoulos <3234522+DimitriPapadopoulos@users.noreply.github.com> Date: Sun, 27 Apr 2025 11:22:52 +0200 Subject: [PATCH 048/202] No need to explicitly specify Python 3 nowadays --- .github/workflows/tests.yml | 2 -- 1 file changed, 2 deletions(-) diff --git a/.github/workflows/tests.yml b/.github/workflows/tests.yml index 98ec7128e1..a1b2eff707 100644 --- a/.github/workflows/tests.yml +++ b/.github/workflows/tests.yml @@ -81,8 +81,6 @@ jobs: steps: - name: Setup Python uses: actions/setup-python@v5 - with: - python-version: 3.x - uses: actions/checkout@v4 with: persist-credentials: false From 5d9f600d801282b263285887653ef79ca92b309a Mon Sep 17 00:00:00 2001 From: Dimitri Papadopoulos <3234522+DimitriPapadopoulos@users.noreply.github.com> Date: Tue, 1 Apr 2025 16:55:49 +0200 Subject: [PATCH 049/202] Typos from bytedance/sonic https://github.com/bytedance/sonic/issues/782 --- codespell_lib/data/dictionary.txt | 35 +++++++++++++++++++++++++++++++ 1 file changed, 35 insertions(+) diff --git a/codespell_lib/data/dictionary.txt b/codespell_lib/data/dictionary.txt index 64387d5b26..5fc068aa41 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -635,6 +635,12 @@ acceleratored->accelerated acceleratoring->accelerating acceleratrion->acceleration acceleread->accelerated +accelereate->accelerate +accelereated->accelerated +accelereates->accelerates +accelereating->accelerating +accelereation->acceleration +accelereations->accelerations accelerte->accelerate accelertion->acceleration accelertor->accelerator @@ -3982,6 +3988,7 @@ ambigious->ambiguous ambigous->ambiguous ambiguious->ambiguous ambiguitiy->ambiguity +ambigunous->ambiguous ambiguos->ambiguous ambiguuous->ambiguous ambiguuously->ambiguously @@ -6755,6 +6762,8 @@ arrants->arrangements arraows->arrows arrary->array arrarys->arrays +arrauy->array +arrauys->arrays arraye->array arrayes->arrays arre->are @@ -9271,6 +9280,7 @@ beeings->beings beetween->between beetwen->between beffer->buffer +beflow->below befoer->before befoerhand->beforehand befor->before @@ -11172,6 +11182,11 @@ capbailities->capabilities capbaility->capability capbale->capable capbaly->capably +capcaitance->capacitance +capcaities->capacities +capcaitor->capacitor +capcaitors->capacitors +capcaity->capacity capcitance->capacitance capcities->capacities capcitor->capacitor @@ -15921,6 +15936,8 @@ conntects->connects conntent->content conntents->contents conntroller->controller +connvertion->conversion +connvertions->conversions cononical->canonical cononicalization->canonicalization cononicalize->canonicalize @@ -19845,6 +19862,8 @@ delimma->dilemma delimted->delimited delimter->delimiter delimters->delimiters +delimtier->delimiter +delimtiers->delimiters delink->unlink delivared->delivered delivative->derivative @@ -21609,6 +21628,9 @@ difficultes->difficulties difficults->difficult, difficulties, difficutl->difficult difficutly->difficulty +diffirence->difference +diffirences->differences +diffirent->different diffreences->differences diffreent->different diffreents->different, difference, @@ -24798,6 +24820,7 @@ entires->entries entirey->entirely entirity->entirety entirly->entirely +entiry->entry, entirely, entite->entire, entity, entitee->entity entitees->entities @@ -30569,6 +30592,8 @@ has'nt->hasn't hases->hashes hashi->hash hashin->hashing, hash in, +hashnap->hashmap +hashnaps->hashmaps hashreference->hash reference hashs->hashes hashses->hashes @@ -43777,6 +43802,7 @@ percieving->perceiving percise->precise percisely->precisely percision->precision +percison->precision perenially->perennially perentage->percentage, parentage, perentages->percentages, parentages, @@ -49389,6 +49415,7 @@ relaased->released, relapsed, relaases->releases, relapses, relaasing->releasing, relapsing, relaative->relative +relaction->reaction, relation, redaction, relocation, relady->ready relaease->release relaese->release @@ -54469,6 +54496,8 @@ slewth->sleuth slewthed->sleuthed slewthing->sleuthing slewths->sleuths +slibling->sibling +sliblings->siblings slicable->sliceable slience->silence slienced->silenced @@ -56727,6 +56756,7 @@ subtitutes->substitutes subtituting->substituting subtitution->substitution subtitutions->substitutions +subtlely->subtly, subtlety, subtractin->subtracting, subtract in, subtraction, subtrafuge->subterfuge subtrate->substrate @@ -59923,6 +59953,8 @@ transtitioning->transitioning transtitions->transitions transtorm->transform transtormed->transformed +transverer->traverser, transverter, transferer, +transverers->traversers, transverters, transferers, transvers->transverse transvorm->transform transvormation->transformation @@ -61382,6 +61414,7 @@ unline->unlike unloadin->unloading, unload in, unloadins->unloading unmached->unmatched +unmacthed->unmatched unmainted->unmaintained unmanouverable->unmaneuverable, unmanoeuvrable, unmaping->unmapping @@ -61624,8 +61657,10 @@ unserstand->understand unserstanding->understanding unserstands->understands unserstood->understood +unseted->unset, unseated, unseting->unsetting unsetset->unset +unsetted->unset, unseated, unsettin->unsetting unshfit->unshift unshfited->unshifted From 209ff1129d3e673f94a45a44640cc21507002c72 Mon Sep 17 00:00:00 2001 From: Dimitri Papadopoulos <3234522+DimitriPapadopoulos@users.noreply.github.com> Date: Tue, 10 Dec 2024 10:32:30 +0100 Subject: [PATCH 050/202] remove disjointness->disjointedness While `disjointness` is missing from the OED and other mainstream dictionaries, it is commonly used to descrbe disjoint sets in the context of mathematics. --- codespell_lib/data/dictionary.txt | 1 - codespell_lib/data/dictionary_rare.txt | 1 + 2 files changed, 1 insertion(+), 1 deletion(-) diff --git a/codespell_lib/data/dictionary.txt b/codespell_lib/data/dictionary.txt index 5fc068aa41..b241bcdd4a 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -22301,7 +22301,6 @@ disired->desired disires->desires disiring->desiring disitributions->distributions -disjointness->disjointedness diskrete->discrete diskretion->discretion diskretization->discretization diff --git a/codespell_lib/data/dictionary_rare.txt b/codespell_lib/data/dictionary_rare.txt index 0c52496976..3469a56f65 100644 --- a/codespell_lib/data/dictionary_rare.txt +++ b/codespell_lib/data/dictionary_rare.txt @@ -92,6 +92,7 @@ discontentment->discontent discreet->discrete discus->discuss discuses->discusses +disjointness->disjointedness disturbative->distributive, disruptive, doest->does, doesn't, empress->impress From 93bb121131314b8b18c3f45f31774261ad642c24 Mon Sep 17 00:00:00 2001 From: "pre-commit-ci[bot]" <66853113+pre-commit-ci[bot]@users.noreply.github.com> Date: Mon, 5 May 2025 17:06:29 +0000 Subject: [PATCH 051/202] [pre-commit.ci] pre-commit autoupdate MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit updates: - [github.com/adrienverge/yamllint.git: v1.37.0 → v1.37.1](https://github.com/adrienverge/yamllint.git/compare/v1.37.0...v1.37.1) - [github.com/astral-sh/ruff-pre-commit: v0.11.4 → v0.11.8](https://github.com/astral-sh/ruff-pre-commit/compare/v0.11.4...v0.11.8) --- .pre-commit-config.yaml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.pre-commit-config.yaml b/.pre-commit-config.yaml index 089bc8455f..feff763cc0 100644 --- a/.pre-commit-config.yaml +++ b/.pre-commit-config.yaml @@ -50,7 +50,7 @@ repos: files: dictionary.*\.txt$|\.wordlist$ args: [--ignore-case] - repo: https://github.com/adrienverge/yamllint.git - rev: v1.37.0 + rev: v1.37.1 hooks: - id: yamllint args: @@ -58,7 +58,7 @@ repos: - -d - "{extends: relaxed, rules: {line-length: {max: 90}}}" - repo: https://github.com/astral-sh/ruff-pre-commit - rev: v0.11.4 + rev: v0.11.8 hooks: - id: ruff - id: ruff-format From cddb8281ef30ffde0069a37037adae1c858f7088 Mon Sep 17 00:00:00 2001 From: user27182 <89109579+user27182@users.noreply.github.com> Date: Tue, 6 May 2025 15:18:04 -0600 Subject: [PATCH 052/202] proivded->provided --- codespell_lib/data/dictionary.txt | 1 + 1 file changed, 1 insertion(+) diff --git a/codespell_lib/data/dictionary.txt b/codespell_lib/data/dictionary.txt index b241bcdd4a..f9c97f68b1 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -46544,6 +46544,7 @@ prohibts->prohibits proir->prior proirities->priorities proirity->priority +proivded->provided projcet->project projcets->projects projct's->project's From 0debfd30ba107119cb186d0be45b9db29ab4c394 Mon Sep 17 00:00:00 2001 From: Christian Fischer Date: Thu, 8 May 2025 14:18:53 +0200 Subject: [PATCH 053/202] Add scriptiong->scripting spelling correction. --- codespell_lib/data/dictionary.txt | 1 + 1 file changed, 1 insertion(+) diff --git a/codespell_lib/data/dictionary.txt b/codespell_lib/data/dictionary.txt index f9c97f68b1..a0e8b9048a 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -52458,6 +52458,7 @@ scripots->scripts scripst->scripts scripte->script, scripted, scriptin->scripting, script in, +scriptiong->scripting scriptype->scripttype scrit->script, scrip, scritp->script From d59cf4fe68f1d606c23f21a19ecd3828dbe8725e Mon Sep 17 00:00:00 2001 From: Oliver Rieser <60133266+0R-gb@users.noreply.github.com> Date: Sat, 10 May 2025 04:24:30 +0200 Subject: [PATCH 054/202] Add srcipting->scripting spelling correction (#3705) Co-authored-by: Oliver Rieser --- codespell_lib/data/dictionary.txt | 2 ++ 1 file changed, 2 insertions(+) diff --git a/codespell_lib/data/dictionary.txt b/codespell_lib/data/dictionary.txt index a0e8b9048a..2982c128f4 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -55714,6 +55714,8 @@ srceens->screens srceenshot->screenshot srceenshots->screenshots srcipt->script +srcipted->scripted +srcipting->scripting srcipts->scripts srcoll->scroll srcollable->scrollable From 5d95320306296aa6e1a621bc4e1ee10a3701fb35 Mon Sep 17 00:00:00 2001 From: Nathan McDougall Date: Tue, 13 May 2025 19:26:34 +1200 Subject: [PATCH 055/202] Add chloropleth->choropleth This is a fairly common typo for people encountering the word _choropleth_ for the first time, since in English the prefix _chloro-_ is familiar whereas `choro-` is relatively rare. --- codespell_lib/data/dictionary.txt | 1 + 1 file changed, 1 insertion(+) diff --git a/codespell_lib/data/dictionary.txt b/codespell_lib/data/dictionary.txt index 2982c128f4..0fee8debe5 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -12659,6 +12659,7 @@ chked->checked chlid->child chlidren->children chlids->children +chloropleth->choropleth chnage->change chnaged->changed chnages->changes From efad54e33e77154f8057d7862d92bed8aa84bc0e Mon Sep 17 00:00:00 2001 From: MDW Date: Fri, 16 May 2025 19:51:05 +0200 Subject: [PATCH 056/202] dict: update dictionary.txt with 'aletr' variants (#3703) Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com> --- codespell_lib/data/dictionary.txt | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/codespell_lib/data/dictionary.txt b/codespell_lib/data/dictionary.txt index 0fee8debe5..f777b71339 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -3123,6 +3123,18 @@ alernative->alternative alernatively->alternatively alernatives->alternatives alers->alerts, alters, +aletr->alert, alter, +aletred->alerted, altered, +aletring->alerting, altering, +aletrnate->alternate +aletrnated->alternated +aletrnately->alternately +aletrnates->alternates +aletrnating->alternating +aletrnative->alternative +aletrnatively->alternatively +aletrnatives->alternatives +aletrs->alerts, alters, aleviate->alleviate aleviates->alleviates aleviating->alleviating From 00b87e9bc43e972343322901d00fdbbd57a409a6 Mon Sep 17 00:00:00 2001 From: user27182 <89109579+user27182@users.noreply.github.com> Date: Sun, 18 May 2025 05:41:11 -0600 Subject: [PATCH 057/202] exlclude->exclude (#3708) Co-authored-by: Dimitri Papadopoulos <3234522+DimitriPapadopoulos@users.noreply.github.com> --- codespell_lib/data/dictionary.txt | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/codespell_lib/data/dictionary.txt b/codespell_lib/data/dictionary.txt index f777b71339..edfb07c1b3 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -26523,6 +26523,10 @@ exlains->explains exlamation->exclamation exlanation->explanation exlanations->explanations +exlclude->exclude +exlcluded->excluded +exlcludes->excludes +exlcluding->excluding exlcude->exclude exlcuded->excluded exlcudes->excludes From 00a1e5f0d81fa1a3c69a010617319250cc5b4858 Mon Sep 17 00:00:00 2001 From: MDW Date: Sun, 18 May 2025 13:42:00 +0200 Subject: [PATCH 058/202] dict: multiple suggestions (#3707) --- codespell_lib/data/dictionary.txt | 61 +++++++++++++++++++++++++++++++ 1 file changed, 61 insertions(+) diff --git a/codespell_lib/data/dictionary.txt b/codespell_lib/data/dictionary.txt index edfb07c1b3..ac074e4738 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -1671,6 +1671,7 @@ actice->active acticely->actively acticities->activities acticity->activity +actieve->active actine->active actitivies->activities actiual->actual @@ -9329,6 +9330,7 @@ beginer->beginner beginers->beginners begines->begins beging->begging, beginning, being, +beginin->beginning begininer->beginner begininers->beginners begining->beginning @@ -10939,6 +10941,7 @@ cammander->commander cammanders->commanders cammanding->commanding cammands->commands +cammond->command camoflage->camouflage camoflaged->camouflaged camoflages->camouflages @@ -13026,6 +13029,7 @@ claibscale->calibscale claime->claim claimes->claims claimin->claiming, claim in, +clairity->clarity clairvoiant->clairvoyant clairvoiantes->clairvoyants clairvoiants->clairvoyants @@ -13037,6 +13041,7 @@ clapse->collapse, clasp, claps, lapse, clapsed->collapsed clapses->collapses clapsing->collapsing +claraty->clarity claravoyant->clairvoyant claravoyantes->clairvoyants claravoyants->clairvoyants @@ -13045,6 +13050,8 @@ clared->cleared clarety->clarity clarifyin->clarifying, clarify in, claring->clearing +claritiy->clarity +clarrity->clarity clases->classes, clashes, cases, clasic->classic clasical->classical @@ -13778,6 +13785,7 @@ comamndline->commandline comamnds->commands comand->command comand-line->command-line +comande->command comanded->commanded comander->commander, commandeer, comanding->commanding @@ -15364,6 +15372,9 @@ confidantally->confidentially confidantals->confidentials confidantial->confidential confidantially->confidentially +confidencial->confidential +confidenciall->confidential +confidencialy->confidentially confidental->confidential confidentally->confidentially confids->confides @@ -19603,6 +19614,10 @@ definintion->definition definintions->definitions definintive->definitive definintively->definitively +definishion->definition +definishions->definitions +definision->definition +definisions->definitions definit->definite definitelly->definitely definitian->definition @@ -31484,6 +31499,7 @@ ignested->ingested ignesting->ingesting ignests->ingests ignnore->ignore +ignnored->ignored ignoded->ignored ignoerd->ignored ignonre->ignore @@ -32145,6 +32161,10 @@ inaccessble->inaccessible inaccuraccies->inaccuracies inaccuraccy->inaccuracy inacessible->inaccessible +inactice->inactive +inactieve->inactive +inactiv->inactive +inactivly->inactively inacurate->inaccurate inacurracies->inaccuracies inacurrate->inaccurate @@ -32534,7 +32554,27 @@ incremet->increment incremetal->incremental incremeted->incremented incremeting->incrementing +incremint->increment +incremintal->incremental +incremintally->incrementally +incremintd->incremented +increminted->incremented +increminting->incrementing +incremints->increments +incremment->increment +incremmental->incremental +incremmentally->incrementally +incremmentd->incremented +incremmented->incremented +incremmenting->incrementing +incremments->increments incremnet->increment +incremnetal->incremental +incremnetally->incrementally +incremnetd->incremented +incremneted->incremented +incremneting->incrementing +incremnets->increments increse->increase incresed->increased increses->increases @@ -37824,12 +37864,16 @@ memmick->mimic memmicked->mimicked memmicking->mimicking memmics->mimics +memmories->memories memmory->memory +memmoryes->memories +memmorys->memories memner->member memoery->memory memomry->memory memor->memory memorizin->memorizing +memorys->memories memoty->memory memove->memmove mempry->memory @@ -38255,6 +38299,7 @@ minimim->minimum minimisin->minimising minimium->minimum minimizin->minimizing +minimmum->minimum minimsation->minimisation minimse->minimise minimsed->minimised @@ -40600,6 +40645,10 @@ non-virtural->non-virtual non-virutal->non-virtual non-virutual->non-virtual non-vitrual->non-virtual +non-volatial->non-volatile +non-volitable->non-volatile +non-volitale->non-volatile +non-volitile->non-volatile non-vritual->non-virtual non-wirtual->non-virtual nonbloking->non-blocking @@ -46521,6 +46570,7 @@ programatically->programmatically programattic->programmatic programattically->programmatically programd->programmed +programemd->programmed programemer->programmer programemers->programmers programm->program, programme, @@ -46864,6 +46914,8 @@ protcols->protocols protcool->protocol protcools->protocols protcted->protected +proteced->protected +proteceted->protected protecion->protection protecte->protected, protect, protectin->protecting, protect in, protection, @@ -50768,6 +50820,7 @@ resestatus->resetstatus resetable->resettable reseted->reset reseting->resetting +resett->reset resetted->reset resettin->resetting resevation->reservation @@ -51122,6 +51175,7 @@ resteraunt->restaurant resteraunts->restaurants restes->reset, rests, restesting->retesting +restet->reset restict->restrict resticted->restricted resticting->restricting @@ -51143,6 +51197,7 @@ restoreble->restorable restoreing->restoring restorin->restoring restors->restores +restort->restore, restored, restouration->restoration restraunt->restraint, restaurant, restraunts->restraints, restaurants, @@ -53881,6 +53936,7 @@ sighths->scythes, sights, sigificance->significance sigificant->significant sigificantly->significantly +siginals->signals siginificance->significance siginificant->significant siginificantly->significantly @@ -53946,6 +54002,7 @@ signle->single, signal, signles->singles, signals, signleton->singleton signletons->singletons +signnals->signals signol->signal signto->sign to signul->signal @@ -58805,6 +58862,7 @@ tghe->the tha->than, that, the, thair->their, there, thairs->theirs, there's, +tham->than thankfull->thankful, thankfully, thankfullly->thankfully thankfuly->thankfully @@ -63278,6 +63336,9 @@ volentiered->volunteered volentiering->volunteering volentiers->volunteers voleyball->volleyball +volital->volatile +volitale->volatile +volitile->volatile volontary->voluntary volonteer->volunteer volonteered->volunteered From cda80f1b50f30c40eb34544b8a7744f5c04e5cdb Mon Sep 17 00:00:00 2001 From: Peter Newman Date: Sun, 18 May 2025 23:39:55 +0100 Subject: [PATCH 059/202] Add comapnion->companion and friends --- codespell_lib/data/dictionary.txt | 3 +++ 1 file changed, 3 insertions(+) diff --git a/codespell_lib/data/dictionary.txt b/codespell_lib/data/dictionary.txt index ac074e4738..a5c730d04f 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -13794,6 +13794,9 @@ comando->commando comandos->commandos comands->commands comany->company +comapnion->companion +comapnions->companions +comapnionship->companionship comapany->company comaparable->comparable comaparator->comparator From 9eec42dfa392b9e878f8b73f6e49abb607ee800d Mon Sep 17 00:00:00 2001 From: "pre-commit-ci[bot]" <66853113+pre-commit-ci[bot]@users.noreply.github.com> Date: Sun, 18 May 2025 22:40:17 +0000 Subject: [PATCH 060/202] [pre-commit.ci] auto fixes from pre-commit.com hooks for more information, see https://pre-commit.ci --- codespell_lib/data/dictionary.txt | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/codespell_lib/data/dictionary.txt b/codespell_lib/data/dictionary.txt index a5c730d04f..fd4427a66c 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -13794,9 +13794,6 @@ comando->commando comandos->commandos comands->commands comany->company -comapnion->companion -comapnions->companions -comapnionship->companionship comapany->company comaparable->comparable comaparator->comparator @@ -13811,6 +13808,9 @@ comapatibility->compatibility comapatible->compatible comapletion->completion comapnies->companies +comapnion->companion +comapnions->companions +comapnionship->companionship comapny->company comaprable->comparable comaprator->comparator From 8aaed985df96d123b09010ea28eb1bf04ad74983 Mon Sep 17 00:00:00 2001 From: MDW Date: Sun, 1 Jun 2025 08:16:18 +0200 Subject: [PATCH 061/202] dict: poen --- codespell_lib/data/dictionary.txt | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/codespell_lib/data/dictionary.txt b/codespell_lib/data/dictionary.txt index fd4427a66c..b059e821cc 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -44714,7 +44714,8 @@ poduction->production poductions->productions poducts->products podule->module -poenis->penis +poen->open, pen, poem, phone, +poenis->peonies, penis, poential->potential poentially->potentially poentials->potentials From 3aedde6cebc1b3448a54bc060e9483cde2f41623 Mon Sep 17 00:00:00 2001 From: "pre-commit-ci[bot]" <66853113+pre-commit-ci[bot]@users.noreply.github.com> Date: Mon, 2 Jun 2025 17:05:43 +0000 Subject: [PATCH 062/202] [pre-commit.ci] pre-commit autoupdate MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit updates: - [github.com/astral-sh/ruff-pre-commit: v0.11.8 → v0.11.12](https://github.com/astral-sh/ruff-pre-commit/compare/v0.11.8...v0.11.12) - [github.com/pre-commit/mirrors-mypy: v1.15.0 → v1.16.0](https://github.com/pre-commit/mirrors-mypy/compare/v1.15.0...v1.16.0) --- .pre-commit-config.yaml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.pre-commit-config.yaml b/.pre-commit-config.yaml index feff763cc0..6eb9f01191 100644 --- a/.pre-commit-config.yaml +++ b/.pre-commit-config.yaml @@ -58,7 +58,7 @@ repos: - -d - "{extends: relaxed, rules: {line-length: {max: 90}}}" - repo: https://github.com/astral-sh/ruff-pre-commit - rev: v0.11.8 + rev: v0.11.12 hooks: - id: ruff - id: ruff-format @@ -79,7 +79,7 @@ repos: hooks: - id: validate-pyproject - repo: https://github.com/pre-commit/mirrors-mypy - rev: v1.15.0 + rev: v1.16.0 hooks: - id: mypy args: ["--config-file", "pyproject.toml"] From 64bed7535fd1c2a039d24e39e1de44d86083b69c Mon Sep 17 00:00:00 2001 From: luzpaz Date: Tue, 3 Jun 2025 22:29:52 -0400 Subject: [PATCH 063/202] Add several spelling corrections (#3711) --- codespell_lib/data/dictionary.txt | 32 +++++++++++++++++++++++++++++++ 1 file changed, 32 insertions(+) diff --git a/codespell_lib/data/dictionary.txt b/codespell_lib/data/dictionary.txt index b059e821cc..06321e6994 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -7965,6 +7965,13 @@ attirbute->attribute attirbutes->attributes attiribute->attribute attitide->attitude +attitides->attitudes +attivate->activate +attivated->activated +attivates->activates +attivating->activating +attivation->activation +attivations->activations attmept->attempt attmepted->attempted attmepting->attempting @@ -16438,6 +16445,7 @@ containes->contains, container, contained, containg->containing containging->containing containig->containing +containign->containing containin->containing containined->contained containings->containing @@ -23992,6 +24000,7 @@ elaspe->elapse elasped->elapsed elaspes->elapses elasping->elapsing +elatic->elastic elction->election elctric->electric elctrical->electrical @@ -24866,6 +24875,7 @@ entitiys->entities entitlied->entitled entitys->entities entiy->entity +entiyt->entity entoties->entities entoty->entity entquire->enquire, inquire, @@ -26136,6 +26146,7 @@ exculsive->exclusive exculsively->exclusively exculsivly->exclusively excusin->excusing +excusively->exclusively excutable->executable excutables->executables excute->execute @@ -31011,6 +31022,7 @@ histroy->history histry->history hiting->hitting, hiding, hinting, hiring, hating, biting, hiking, hitogram->histogram +hitorical->historical hitories->histories hitory->history hitsingles->hit singles @@ -35401,6 +35413,7 @@ irrevelant->irrelevant, irreverent, irreversable->irreversible irritatin->irritating, irritation, is'nt->isn't +is's->it's isalha->isalpha isconnection->isconnected iscrated->iscreated @@ -40998,6 +41011,8 @@ numerial->numeral, numerical, numering->numbering numerious->numerous numers->numbers +numher->number +numhers->numbers nummber->number nummbers->numbers nummeral->numeral @@ -45003,6 +45018,10 @@ porgressed->progressed porgresses->progresses porgressing->progressing poriferal->peripheral +porition->portion +poritioned->portioned +poritioning->portioning +poritions->portions porject->project porjection->projection porjects->projects @@ -45027,6 +45046,8 @@ porpose->propose, purpose, porposed->proposed porposes->proposes, purposes, porposing->proposing +porprties->properties +porprty->property porpuse->purpose, porpoise, porsalin->porcelain porshan->portion @@ -45066,6 +45087,8 @@ posessing->possessing posession->possession posessions->possessions posgresql->PostgreSQL +posibble->possible +posibbly->possibly posibilities->possibilities posibility->possibility posibilties->possibilities @@ -45088,6 +45111,7 @@ posisition->position posisitioned->positioned posisitioning->positioning posisitions->positions +posisson->Poisson posistion->position posistioned->positioned posistioning->positioning @@ -46626,6 +46650,8 @@ projctor->projector projctors->projectors projcts->projects projec->project +projeciton->projection +projecitons->projections projecs->projects projectd->projected projecter->projector, projected, project, @@ -50865,6 +50891,7 @@ resintalled->reinstalled resintalling->reinstalling resintalls->reinstalls resistable->resistible +resistece->resistance resistence->resistance resistent->resistant resitance->resistance @@ -56147,6 +56174,7 @@ stickness->stickiness stickyness->stickiness stiffenin->stiffening, stiffen in, stiffneing->stiffening +stifness->stiffness stiky->sticky stil->still stilus->stylus @@ -59145,6 +59173,8 @@ threhold->threshold threholds->thresholds threre->there, three, threrefore->therefore +threschold->threshold +threscholds->thresholds threshhold->threshold threshholds->thresholds threshod->threshold @@ -62863,6 +62893,7 @@ verical->vertical verically->vertically verication->verification verications->verifications +veridying->verifying verifable->verifiable verifcation->verification verifcations->verifications @@ -63778,6 +63809,7 @@ whicg->which whichs->which's whicht->which whick->which, whisk, wick, whack, +whicth->which whih->which whihc->which whihch->which From 55a51906314d7182a860b85d0cf6f25fa819d718 Mon Sep 17 00:00:00 2001 From: Alex Overchenko Date: Tue, 10 Jun 2025 22:32:02 +0300 Subject: [PATCH 064/202] Fix chunk(s) typos (#3717) --- codespell_lib/data/dictionary.txt | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/codespell_lib/data/dictionary.txt b/codespell_lib/data/dictionary.txt index 06321e6994..2192cf44d9 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -12046,6 +12046,7 @@ chanaged->changed chanager->changer chanages->changes chanaging->changing +chanc->chance, chunk, chanceled->canceled chanceling->canceling chancge->change, chance, @@ -12056,7 +12057,10 @@ chanche->chance, change, chanched->changed chanches->chances, changes, chanching->changing +chanck->chunk +chancks->chunks chancnel->channel, cancel, +chancs->chances, chunks, chandaleer->chandelier chandaleers->chandeliers chandalier->chandelier @@ -12098,6 +12102,8 @@ changuing->changing chanined->chained chaning->chaining, changing, chaninging->changing +chank->clank, crank, chalk, chant, chink, chunk, shank, hank, chonk, thank, +chanks->clanks, cranks, chants, chinks, chunks, shanks, hanks, chonks, thanks, chanllenge->challenge chanllenging->challenging channael->channel From 17b9d74859c7d41fa7f528cd0a7e5b522f7ece94 Mon Sep 17 00:00:00 2001 From: AJIOB Date: Wed, 4 Jun 2025 05:48:47 +0000 Subject: [PATCH 065/202] Fix transciever(s) typos --- codespell_lib/data/dictionary.txt | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/codespell_lib/data/dictionary.txt b/codespell_lib/data/dictionary.txt index 2192cf44d9..5c475e6c67 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -59678,6 +59678,12 @@ tranceiver->transceiver tranceivers->transceivers trancendent->transcendent trancending->transcending +trancevier->transceiver +tranceviers->transceivers +tranciever->transceiver +trancievers->transceivers +tranciver->transceiver +trancivers->transceivers tranclate->translate trancode->transcode trancoded->transcoded @@ -59850,9 +59856,13 @@ transction->transaction transctional->transactional transctions->transactions transeint->transient +transeiver->transceiver +transeivers->transceivers transending->transcending transer->transfer transesxuals->transsexuals +transevier->transceiver +transeviers->transceivers transferd->transferred transfered->transferred transfering->transferring @@ -59899,6 +59909,8 @@ transfroming->transforming transfroms->transforms transiet->transient transiets->transients +transiever->transceiver +transievers->transceivers transision->transition transisioning->transitioning transisions->transitions @@ -59920,6 +59932,8 @@ transitoning->transitioning transitons->transitions transitor->transistor transitors->transistors +transiver->transceiver +transivers->transceivers translater->translator translaters->translators translatied->translated From cbaf91c423cf7e5ef347f376a4910280f4320d62 Mon Sep 17 00:00:00 2001 From: Tyler White <50381805+IndexSeek@users.noreply.github.com> Date: Wed, 11 Jun 2025 21:06:27 -0400 Subject: [PATCH 066/202] Add spelling corrections for "complete" variations --- codespell_lib/data/dictionary.txt | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/codespell_lib/data/dictionary.txt b/codespell_lib/data/dictionary.txt index 5c475e6c67..ffdf8fba8a 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -17202,6 +17202,13 @@ copmiler->compiler copmilers->compilers copmiles->compiles copmiling->compiling +copmlete->complete +copmleted->completed +copmletely->completely +copmletes->completes +copmleting->completing +copmletion->completion +copmletions->completions copmonent->component copmonents->components copmutations->computations From 30ebe42d0aee731a2f162278f3c47ef20b7f41c7 Mon Sep 17 00:00:00 2001 From: Liam DeVoe Date: Fri, 13 Jun 2025 08:26:21 -0400 Subject: [PATCH 067/202] Add sipport->support (#3710) --- codespell_lib/data/dictionary.txt | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/codespell_lib/data/dictionary.txt b/codespell_lib/data/dictionary.txt index ffdf8fba8a..eb33b95057 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -54415,6 +54415,10 @@ siplifies->simplifies siplify->simplify siplifying->simplifying siply->simply +sipport->support +sipported->supported +sipporting->supporting +sipports->supports sircle->circle sircles->circles sircular->circular From 73b7b5eea84cfad0de0372a0e53777d7ac9e3296 Mon Sep 17 00:00:00 2001 From: matlupi Date: Fri, 13 Jun 2025 19:17:38 +0200 Subject: [PATCH 068/202] Typo: binnary->binary (#3719) --- codespell_lib/data/dictionary.txt | 2 ++ 1 file changed, 2 insertions(+) diff --git a/codespell_lib/data/dictionary.txt b/codespell_lib/data/dictionary.txt index eb33b95057..e1573734c8 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -9657,6 +9657,8 @@ binay->binary bindin->binding, bind in, bindi, bindis, bindins->bindings binidng->binding +binnaries->binaries +binnary->binary binominal->binomial binraries->binaries binrary->binary From 44ba12eba5718f4fd38326d183b5d18522cd0324 Mon Sep 17 00:00:00 2001 From: Niels Thykier Date: Fri, 20 Jun 2025 15:57:58 +0000 Subject: [PATCH 069/202] Speed up spellchecking by ignoring whitespace-only lines (#3722) --- codespell_lib/_codespell.py | 3 ++- pyproject.toml | 2 +- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/codespell_lib/_codespell.py b/codespell_lib/_codespell.py index dee6a63ee8..afdd0cc508 100644 --- a/codespell_lib/_codespell.py +++ b/codespell_lib/_codespell.py @@ -946,7 +946,8 @@ def parse_file( return bad_count for i, line in enumerate(lines): - if line.rstrip() in exclude_lines: + line = line.rstrip() + if not line or line in exclude_lines: continue extra_words_to_ignore = set() diff --git a/pyproject.toml b/pyproject.toml index c07ab9601b..866ad18eef 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -173,4 +173,4 @@ allow-magic-value-types = ["bytes", "int", "str",] max-args = 13 max-branches = 48 max-returns = 12 -max-statements = 119 +max-statements = 120 From 48ef5a3ab00aaf39b9ad02774b4863e56ada8570 Mon Sep 17 00:00:00 2001 From: nikolas Date: Mon, 23 Jun 2025 07:01:49 -0400 Subject: [PATCH 070/202] Add grap -> graph (#3715) Co-authored-by: Dimitri Papadopoulos <3234522+DimitriPapadopoulos@users.noreply.github.com> --- codespell_lib/data/dictionary.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/codespell_lib/data/dictionary.txt b/codespell_lib/data/dictionary.txt index e1573734c8..0c75c403c8 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -30185,7 +30185,7 @@ granuality->granularity granualtiry->granularity granularty->granularity granulatiry->granularity -grap->grep, grape, +grap->grep, grape, graph, grasp, grapgic->graphic grapgical->graphical grapgics->graphics From 5d748605a41160b18710c8ea650fd14873a1a4b0 Mon Sep 17 00:00:00 2001 From: Christian Fischer Date: Mon, 17 Mar 2025 13:50:53 +0100 Subject: [PATCH 071/202] Add spelling corrections for vulnerabilities and variants. --- codespell_lib/data/dictionary.txt | 2 ++ 1 file changed, 2 insertions(+) diff --git a/codespell_lib/data/dictionary.txt b/codespell_lib/data/dictionary.txt index 0c75c403c8..ec9d1bd454 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -63527,9 +63527,11 @@ vulnerabililty->vulnerability vulnerabilites->vulnerabilities vulnerabiliti->vulnerability vulnerabilitie->vulnerability +vulnerabilitiesy->vulnerability, vulnerabilities, vulnerabilitis->vulnerabilities vulnerabilitiy->vulnerability vulnerabilitu->vulnerability +vulnerabilityies->vulnerability, vulnerabilities, vulnerabilitys->vulnerability, vulnerabilities, vulnerabiliy->vulnerability vulnerabillities->vulnerabilities From fb2ba031998d47d21ef8255916585ee16f42b6ec Mon Sep 17 00:00:00 2001 From: Dimitri Papadopoulos Orfanos <3234522+DimitriPapadopoulos@users.noreply.github.com> Date: Mon, 23 Jun 2025 17:44:41 +0200 Subject: [PATCH 072/202] Avoid deprecated license specification format (#3723) --- .github/workflows/tests.yml | 1 - README.rst | 2 +- codespell_lib/_codespell.py | 76 ++++++++++++-------------- codespell_lib/_spellchecker.py | 11 +--- codespell_lib/tests/test_basic.py | 11 ++-- codespell_lib/tests/test_dictionary.py | 19 ++++--- pyproject.toml | 8 +-- 7 files changed, 58 insertions(+), 70 deletions(-) diff --git a/.github/workflows/tests.yml b/.github/workflows/tests.yml index a1b2eff707..03d421c34c 100644 --- a/.github/workflows/tests.yml +++ b/.github/workflows/tests.yml @@ -20,7 +20,6 @@ jobs: fail-fast: false matrix: python-version: - - "3.8" - "3.9" - "3.10" - "3.11" diff --git a/README.rst b/README.rst index 8e256dc923..fdd16cc5e5 100644 --- a/README.rst +++ b/README.rst @@ -20,7 +20,7 @@ Useful links Requirements ------------ -Python 3.8 or above. +Python 3.9 or above. Installation ------------ diff --git a/codespell_lib/_codespell.py b/codespell_lib/_codespell.py index afdd0cc508..04f1af7fe4 100644 --- a/codespell_lib/_codespell.py +++ b/codespell_lib/_codespell.py @@ -25,18 +25,12 @@ import re import sys import textwrap +from collections.abc import Iterable, Sequence +from re import Match, Pattern from typing import ( Any, - Dict, - Iterable, - List, - Match, Optional, - Pattern, - Sequence, - Set, TextIO, - Tuple, ) if sys.platform == "win32": @@ -161,8 +155,8 @@ class QuietLevels: class GlobMatch: - def __init__(self, pattern: List[str]) -> None: - self.pattern_list: List[str] = pattern + def __init__(self, pattern: list[str]) -> None: + self.pattern_list: list[str] = pattern def match(self, filename: str) -> bool: return any(fnmatch.fnmatch(filename, p) for p in self.pattern_list) @@ -184,7 +178,7 @@ def disable(self) -> None: class Summary: def __init__(self) -> None: - self.summary: Dict[str, int] = {} + self.summary: dict[str, int] = {} def update(self, wrongword: str) -> None: if wrongword in self.summary: @@ -227,12 +221,12 @@ def init_chardet(self) -> None: self.encdetector = UniversalDetector() - def open(self, filename: str) -> Tuple[List[str], str]: + def open(self, filename: str) -> tuple[list[str], str]: if self.use_chardet: return self.open_with_chardet(filename) return self.open_with_internal(filename) - def open_with_chardet(self, filename: str) -> Tuple[List[str], str]: + def open_with_chardet(self, filename: str) -> tuple[list[str], str]: self.encdetector.reset() with open(filename, "rb") as fb: for line in fb: @@ -259,7 +253,7 @@ def open_with_chardet(self, filename: str) -> Tuple[List[str], str]: return lines, f.encoding - def open_with_internal(self, filename: str) -> Tuple[List[str], str]: + def open_with_internal(self, filename: str) -> tuple[list[str], str]: encoding = None first_try = True for encoding in ("utf-8", "iso-8859-1"): @@ -286,7 +280,7 @@ def open_with_internal(self, filename: str) -> Tuple[List[str], str]: return lines, encoding - def get_lines(self, f: TextIO) -> List[str]: + def get_lines(self, f: TextIO) -> list[str]: if self.ignore_multiline_regex: text = f.read() pos = 0 @@ -313,7 +307,7 @@ def get_lines(self, f: TextIO) -> List[str]: class NewlineHelpFormatter(argparse.HelpFormatter): """Help formatter that preserves newlines and deals with lists.""" - def _split_lines(self, text: str, width: int) -> List[str]: + def _split_lines(self, text: str, width: int) -> list[str]: parts = text.split("\n") out = [] for part in parts: @@ -330,7 +324,7 @@ def _split_lines(self, text: str, width: int) -> List[str]: return out -def _toml_to_parseconfig(toml_dict: Dict[str, Any]) -> Dict[str, Any]: +def _toml_to_parseconfig(toml_dict: dict[str, Any]) -> dict[str, Any]: """Convert a dict read from a TOML file to the parseconfig.read_dict() format.""" return { k: "" if v is True else ",".join(v) if isinstance(v, list) else v @@ -373,7 +367,7 @@ def _supports_ansi_colors() -> bool: def parse_options( args: Sequence[str], -) -> Tuple[argparse.Namespace, argparse.ArgumentParser, List[str]]: +) -> tuple[argparse.Namespace, argparse.ArgumentParser, list[str]]: parser = argparse.ArgumentParser(formatter_class=NewlineHelpFormatter) parser.set_defaults(colors=_supports_ansi_colors()) @@ -697,7 +691,7 @@ def parse_options( def process_ignore_words( - words: Iterable[str], ignore_words: Set[str], ignore_words_cased: Set[str] + words: Iterable[str], ignore_words: set[str], ignore_words_cased: set[str] ) -> None: for word in words: word = word.strip() @@ -708,10 +702,10 @@ def process_ignore_words( def parse_ignore_words_option( - ignore_words_option: List[str], -) -> Tuple[Set[str], Set[str]]: - ignore_words: Set[str] = set() - ignore_words_cased: Set[str] = set() + ignore_words_option: list[str], +) -> tuple[set[str], set[str]]: + ignore_words: set[str] = set() + ignore_words_cased: set[str] = set() if ignore_words_option: for comma_separated_words in ignore_words_option: process_ignore_words( @@ -722,13 +716,13 @@ def parse_ignore_words_option( return (ignore_words, ignore_words_cased) -def build_exclude_hashes(filename: str, exclude_lines: Set[str]) -> None: +def build_exclude_hashes(filename: str, exclude_lines: set[str]) -> None: with open(filename, encoding="utf-8") as f: exclude_lines.update(line.rstrip() for line in f) def build_ignore_words( - filename: str, ignore_words: Set[str], ignore_words_cased: Set[str] + filename: str, ignore_words: set[str], ignore_words_cased: set[str] ) -> None: with open(filename, encoding="utf-8") as f: process_ignore_words( @@ -756,7 +750,7 @@ def ask_for_word_fix( misspelling: Misspelling, interactivity: int, colors: TermColors, -) -> Tuple[bool, str]: +) -> tuple[bool, str]: wrongword = match.group() if interactivity <= 0: return misspelling.fix, fix_case(wrongword, misspelling.data) @@ -813,9 +807,9 @@ def ask_for_word_fix( def print_context( - lines: List[str], + lines: list[str], index: int, - context: Tuple[int, int], + context: tuple[int, int], ) -> None: # context = (context_before, context_after) for i in range(index - context[0], index + context[1] + 1): @@ -836,7 +830,7 @@ def extract_words( text: str, word_regex: Pattern[str], ignore_word_regex: Optional[Pattern[str]], -) -> List[str]: +) -> list[str]: return word_regex.findall(_ignore_word_sub(text, ignore_word_regex)) @@ -844,18 +838,18 @@ def extract_words_iter( text: str, word_regex: Pattern[str], ignore_word_regex: Optional[Pattern[str]], -) -> List[Match[str]]: +) -> list[Match[str]]: return list(word_regex.finditer(_ignore_word_sub(text, ignore_word_regex))) def apply_uri_ignore_words( - check_matches: List[Match[str]], + check_matches: list[Match[str]], line: str, word_regex: Pattern[str], ignore_word_regex: Optional[Pattern[str]], uri_regex: Pattern[str], - uri_ignore_words: Set[str], -) -> List[Match[str]]: + uri_ignore_words: set[str], +) -> list[Match[str]]: if not uri_ignore_words: return check_matches for uri in uri_regex.findall(line): @@ -873,15 +867,15 @@ def parse_file( filename: str, colors: TermColors, summary: Optional[Summary], - misspellings: Dict[str, Misspelling], - ignore_words_cased: Set[str], - exclude_lines: Set[str], + misspellings: dict[str, Misspelling], + ignore_words_cased: set[str], + exclude_lines: set[str], file_opener: FileOpener, word_regex: Pattern[str], ignore_word_regex: Optional[Pattern[str]], uri_regex: Pattern[str], - uri_ignore_words: Set[str], - context: Optional[Tuple[int, int]], + uri_ignore_words: set[str], + context: Optional[tuple[int, int]], options: argparse.Namespace, ) -> int: bad_count = 0 @@ -1085,7 +1079,7 @@ def parse_file( def flatten_clean_comma_separated_arguments( arguments: Iterable[str], -) -> List[str]: +) -> list[str]: """ >>> flatten_clean_comma_separated_arguments(["a, b ,\n c, d,", "e"]) ['a', 'b', 'c', 'd', 'e'] @@ -1227,7 +1221,7 @@ def main(*args: str) -> int: f"ERROR: cannot find dictionary file: {dictionary}", ) use_dictionaries.append(dictionary) - misspellings: Dict[str, Misspelling] = {} + misspellings: dict[str, Misspelling] = {} for dictionary in use_dictionaries: build_dict(dictionary, misspellings, ignore_words) colors = TermColors() @@ -1255,7 +1249,7 @@ def main(*args: str) -> int: context_after = max(0, options.after_context) context = (context_before, context_after) - exclude_lines: Set[str] = set() + exclude_lines: set[str] = set() if options.exclude_file: exclude_files = flatten_clean_comma_separated_arguments(options.exclude_file) for exclude_file in exclude_files: diff --git a/codespell_lib/_spellchecker.py b/codespell_lib/_spellchecker.py index 82865cdd19..7b511e6d3e 100644 --- a/codespell_lib/_spellchecker.py +++ b/codespell_lib/_spellchecker.py @@ -16,11 +16,6 @@ Copyright (C) 2011 ProFUSION embedded systems """ -from typing import ( - Dict, - Set, -) - # Pass all misspellings through this translation table to generate # alternative misspellings and fixes. alt_chars = (("'", "’"),) # noqa: RUF001 @@ -36,7 +31,7 @@ def __init__(self, data: str, fix: bool, reason: str) -> None: def add_misspelling( key: str, data: str, - misspellings: Dict[str, Misspelling], + misspellings: dict[str, Misspelling], ) -> None: data = data.strip() @@ -53,8 +48,8 @@ def add_misspelling( def build_dict( filename: str, - misspellings: Dict[str, Misspelling], - ignore_words: Set[str], + misspellings: dict[str, Misspelling], + ignore_words: set[str], ) -> None: with open(filename, encoding="utf-8") as f: translate_tables = [(x, str.maketrans(x, y)) for x, y in alt_chars] diff --git a/codespell_lib/tests/test_basic.py b/codespell_lib/tests/test_basic.py index a6c05fc089..cfb5bca44f 100644 --- a/codespell_lib/tests/test_basic.py +++ b/codespell_lib/tests/test_basic.py @@ -5,10 +5,11 @@ import re import subprocess import sys +from collections.abc import Generator from io import StringIO from pathlib import Path from shutil import copyfile -from typing import Any, Generator, Optional, Tuple, Union +from typing import Any, Optional, Union from unittest import mock import pytest @@ -39,7 +40,7 @@ def main( *args: Any, count: bool = True, std: bool = False, - ) -> Union[int, Tuple[int, str, str]]: + ) -> Union[int, tuple[int, str, str]]: args = tuple(str(arg) for arg in args) if count: args = ("--count", *args) @@ -65,7 +66,7 @@ def main( def run_codespell( - args: Tuple[Any, ...] = (), + args: tuple[Any, ...] = (), cwd: Optional[Path] = None, ) -> int: """Run codespell.""" @@ -1373,7 +1374,7 @@ def FakeStdin(text: str) -> Generator[None, None, None]: def run_codespell_stdin( text: str, - args: Tuple[Any, ...], + args: tuple[Any, ...], cwd: Optional[Path] = None, ) -> int: """Run codespell in stdin mode and return number of lines in output.""" @@ -1397,7 +1398,7 @@ def test_stdin(tmp_path: Path) -> None: for _ in range(input_file_lines): text += "abandonned\n" for single_line_per_error in (True, False): - args: Tuple[str, ...] = () + args: tuple[str, ...] = () if single_line_per_error: args = ("--stdin-single-line",) # we expect 'input_file_lines' number of lines with diff --git a/codespell_lib/tests/test_dictionary.py b/codespell_lib/tests/test_dictionary.py index 8270087116..8ce19ff2bd 100644 --- a/codespell_lib/tests/test_dictionary.py +++ b/codespell_lib/tests/test_dictionary.py @@ -3,7 +3,8 @@ import os.path as op import pathlib import re -from typing import Any, Dict, Iterable, Optional, Set, Tuple +from collections.abc import Iterable +from typing import Any, Optional import pytest @@ -37,8 +38,8 @@ ) raise RuntimeError(msg) from e -global_err_dicts: Dict[str, Dict[str, Any]] = {} -global_pairs: Set[Tuple[str, str]] = set() +global_err_dicts: dict[str, dict[str, Any]] = {} +global_pairs: set[tuple[str, str]] = set() # Filename, should be seen as errors in aspell or not _data_dir = op.join(op.dirname(__file__), "..", "data") @@ -61,8 +62,8 @@ def test_dictionaries_exist() -> None: @fname_params def test_dictionary_formatting( fname: str, - in_aspell: Tuple[bool, bool], - in_dictionary: Tuple[Iterable[str], Iterable[str]], + in_aspell: tuple[bool, bool], + in_dictionary: tuple[Iterable[str], Iterable[str]], ) -> None: """Test that all dictionary entries are valid.""" errors = [] @@ -137,9 +138,9 @@ def _check_aspell( def _check_err_rep( err: str, rep: str, - in_aspell: Tuple[Optional[bool], Optional[bool]], + in_aspell: tuple[Optional[bool], Optional[bool]], fname: str, - languages: Tuple[Iterable[str], Iterable[str]], + languages: tuple[Iterable[str], Iterable[str]], ) -> None: assert whitespace.search(err) is None, f"error {err!r} has whitespace" assert "," not in err, f"error {err!r} has a comma" @@ -296,8 +297,8 @@ def test_error_checking_in_aspell( @pytest.mark.dependency(name="dictionary loop") def test_dictionary_looping( fname: str, - in_aspell: Tuple[bool, bool], - in_dictionary: Tuple[bool, bool], + in_aspell: tuple[bool, bool], + in_dictionary: tuple[bool, bool], ) -> None: """Test that all dictionary entries are valid.""" this_err_dict = {} diff --git a/pyproject.toml b/pyproject.toml index 866ad18eef..333495845f 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -4,14 +4,13 @@ name = "codespell" description = "Fix common misspellings in text files" readme = { file = "README.rst", content-type = "text/x-rst" } -requires-python = ">=3.8" -license = {text = "GPL-2.0-only"} +requires-python = ">=3.9" +license = "GPL-2.0-only" authors = [ {name = "Lucas De Marchi", email = "lucas.de.marchi@gmail.com"}, ] classifiers = [ "Intended Audience :: Developers", - "License :: OSI Approved", "Programming Language :: Python", "Topic :: Software Development", "Operating System :: Microsoft :: Windows", @@ -21,7 +20,6 @@ classifiers = [ "Programming Language :: Python", "Programming Language :: Python :: 3", "Programming Language :: Python :: 3 :: Only", - "Programming Language :: Python :: 3.8", "Programming Language :: Python :: 3.9", "Programming Language :: Python :: 3.10", "Programming Language :: Python :: 3.11", @@ -67,7 +65,7 @@ repository = "https://github.com/codespell-project/codespell" [build-system] build-backend = "setuptools.build_meta" -requires = ["setuptools>=64", "setuptools_scm[toml]>=6.2, != 8.0.0"] +requires = ["setuptools>=77", "setuptools_scm[toml]>=6.2, != 8.0.0"] [tool.setuptools_scm] write_to = "codespell_lib/_version.py" From ac23b9301aedfc4f9687da867a8684fbd5955349 Mon Sep 17 00:00:00 2001 From: luzpaz Date: Thu, 26 Jun 2025 20:20:04 +0000 Subject: [PATCH 073/202] Add godd(s)->good(s), god(s) --- codespell_lib/data/dictionary.txt | 2 ++ 1 file changed, 2 insertions(+) diff --git a/codespell_lib/data/dictionary.txt b/codespell_lib/data/dictionary.txt index ec9d1bd454..6100a0b8da 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -30077,6 +30077,8 @@ gnorung->ignoring gobal->global gobally->globally gocde->gcode +godd->good, god, +godds->goods, gods, godess->goddess godesses->goddesses Godounov->Godunov From 2d5a58d146789127ecf35e84cd33010148f4fbd4 Mon Sep 17 00:00:00 2001 From: Christian Fischer Date: Wed, 2 Jul 2025 14:49:25 +0200 Subject: [PATCH 074/202] Add spelling correction for calid->valid and variants. --- codespell_lib/data/dictionary.txt | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/codespell_lib/data/dictionary.txt b/codespell_lib/data/dictionary.txt index 6100a0b8da..74b957ca28 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -10817,6 +10817,15 @@ calibraitons->calibrations calibratin->calibrating, calibration, calibrte->calibrate calibrtion->calibration +calid->valid, canid, +calidate->validate +calidated->validated +calidates->validates +calidating->validating +calidation->validation +calidations->validations +calidator->validator +calidators->validators caligraphy->calligraphy calilng->calling caliming->claiming From ce578777b67f7a6825283a689296770396ce3ea5 Mon Sep 17 00:00:00 2001 From: Nicolas Iooss Date: Sun, 6 Jul 2025 21:43:54 +0200 Subject: [PATCH 075/202] Add manigest->manifest and variations "manigest" was found in https://github.com/awslabs/aws-iam-aad/blob/31f6f36b0ca5b8a497cd91a17762360cb7876980/setup/initiate_setup.sh#L16 and https://github.com/containers/Demos/blob/eb287284f7666c730d613f7b68b7bd356a71fc37/bootc/podman_helper.sh#L176 "manigests" was found in https://github.com/NVIDIA/NeMo/blob/f56c56085402781dc66e032cebd55dc1904b36b9/tests/collections/speechlm/conf/salm_ci_config.yaml#L34 "manigesto" was found in https://github.com/agilemanifesto/agilemanifesto.github.io/blob/master/display/000000286.html#L25 "manigesting" was found in https://github.com/tmowreen97/idea-web-redesign/blob/54192b618c229333f17885edcafebcdb47b22ce2/components/Developments2.jsx#L420 --- codespell_lib/data/dictionary.txt | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/codespell_lib/data/dictionary.txt b/codespell_lib/data/dictionary.txt index 74b957ca28..33ffe8f9ef 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -37334,6 +37334,12 @@ manifiesting->manifesting manifiesto->manifesto manifiestos->manifestos manifiests->manifests +manigest->manifest +manigested->manifested +manigesting->manifesting +manigesto->manifesto +manigestos->manifestos +manigests->manifests manipluate->manipulate manipluated->manipulated manipulater->manipulator, manipulated, manipulates, manipulate, From 165d103020bef61c45938cec0e9f71f3519280be Mon Sep 17 00:00:00 2001 From: Christian Fischer Date: Mon, 7 Jul 2025 17:08:43 +0200 Subject: [PATCH 076/202] Add scriptng->scripting spelling correction. --- codespell_lib/data/dictionary.txt | 1 + 1 file changed, 1 insertion(+) diff --git a/codespell_lib/data/dictionary.txt b/codespell_lib/data/dictionary.txt index 33ffe8f9ef..2ec3a81163 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -52594,6 +52594,7 @@ scripst->scripts scripte->script, scripted, scriptin->scripting, script in, scriptiong->scripting +scriptng->scripting scriptype->scripttype scrit->script, scrip, scritp->script From 9994fbcdb2df820c2fe434d7f019bb0d8d5d09af Mon Sep 17 00:00:00 2001 From: "pre-commit-ci[bot]" <66853113+pre-commit-ci[bot]@users.noreply.github.com> Date: Mon, 7 Jul 2025 17:12:03 +0000 Subject: [PATCH 077/202] [pre-commit.ci] pre-commit autoupdate MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit updates: - [github.com/astral-sh/ruff-pre-commit: v0.11.12 → v0.12.2](https://github.com/astral-sh/ruff-pre-commit/compare/v0.11.12...v0.12.2) - [github.com/pre-commit/mirrors-mypy: v1.16.0 → v1.16.1](https://github.com/pre-commit/mirrors-mypy/compare/v1.16.0...v1.16.1) --- .pre-commit-config.yaml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.pre-commit-config.yaml b/.pre-commit-config.yaml index 6eb9f01191..f023eec301 100644 --- a/.pre-commit-config.yaml +++ b/.pre-commit-config.yaml @@ -58,7 +58,7 @@ repos: - -d - "{extends: relaxed, rules: {line-length: {max: 90}}}" - repo: https://github.com/astral-sh/ruff-pre-commit - rev: v0.11.12 + rev: v0.12.2 hooks: - id: ruff - id: ruff-format @@ -79,7 +79,7 @@ repos: hooks: - id: validate-pyproject - repo: https://github.com/pre-commit/mirrors-mypy - rev: v1.16.0 + rev: v1.16.1 hooks: - id: mypy args: ["--config-file", "pyproject.toml"] From e09e041639f88868daa9a7e553d159885c87dfd9 Mon Sep 17 00:00:00 2001 From: Dimitri Papadopoulos <3234522+DimitriPapadopoulos@users.noreply.github.com> Date: Mon, 7 Jul 2025 19:23:07 +0200 Subject: [PATCH 078/202] Ignore PLC0415 --- pyproject.toml | 1 + 1 file changed, 1 insertion(+) diff --git a/pyproject.toml b/pyproject.toml index 333495845f..da0d7b3291 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -135,6 +135,7 @@ select = [ ] ignore = [ "B904", + "PLC0415", "PLR0914", "PLR6201", "PLW2901", From 6452004f3b1d31035d173bb4de2fc0afe532809c Mon Sep 17 00:00:00 2001 From: Dimitri Papadopoulos Orfanos <3234522+DimitriPapadopoulos@users.noreply.github.com> Date: Wed, 9 Jul 2025 16:02:12 +0200 Subject: [PATCH 079/202] Update pre-commit ruff legacy alias (#3730) --- .pre-commit-config.yaml | 2 +- Makefile | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/.pre-commit-config.yaml b/.pre-commit-config.yaml index f023eec301..f41e0c3e09 100644 --- a/.pre-commit-config.yaml +++ b/.pre-commit-config.yaml @@ -60,7 +60,7 @@ repos: - repo: https://github.com/astral-sh/ruff-pre-commit rev: v0.12.2 hooks: - - id: ruff + - id: ruff-check - id: ruff-format - repo: https://github.com/pre-commit/mirrors-prettier rev: v4.0.0-alpha.8 diff --git a/Makefile b/Makefile index 1915f2e69f..329f9612a8 100644 --- a/Makefile +++ b/Makefile @@ -39,7 +39,7 @@ check-dist: rm -rf $(TMP) ruff: - pre-commit run --all-files ruff + pre-commit run --all-files ruff-check pytest: @if command -v pytest > /dev/null; then \ From a50868ee61068d14f21f3b393d5e8e39089371b7 Mon Sep 17 00:00:00 2001 From: AJIOB Date: Thu, 10 Jul 2025 14:57:34 +0000 Subject: [PATCH 080/202] Fix more advertisement typos --- codespell_lib/data/dictionary.txt | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/codespell_lib/data/dictionary.txt b/codespell_lib/data/dictionary.txt index 2ec3a81163..4a007905c8 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -2440,9 +2440,19 @@ adverst->adverts advertice->advertise adverticed->advertised adverticement->advertisement +adverticements->advertisements +advertie->advertise +advertied->advertised +advertiement->advertisement +advertiements->advertisements +advertier->advertiser +advertiers->advertisers +adverties->advertises +advertiing->advertising advertis->adverts, advertise, advertisiers->advertisers advertisiment->advertisement +advertisiments->advertisements advertisin->advertising advertisment->advertisement advertisments->advertisements @@ -2468,6 +2478,7 @@ adviced->advised advices->advice advicing->advising advirtisement->advertisement +advirtisements->advertisements adviseable->advisable adviseer->adviser adviseur->adviser From 3613e5a654641a5803a2bac0ab72cb6a7e7d7f34 Mon Sep 17 00:00:00 2001 From: AJIOB Date: Thu, 10 Jul 2025 15:03:33 +0000 Subject: [PATCH 081/202] Fix connectable typo --- codespell_lib/data/dictionary.txt | 3 +++ 1 file changed, 3 insertions(+) diff --git a/codespell_lib/data/dictionary.txt b/codespell_lib/data/dictionary.txt index 4a007905c8..28fb71b56f 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -15947,6 +15947,7 @@ conneection->connection conneiction->connection connektors->connectors connet->connect +connetable->connectable connetc->connect connetced->connected connetcing->connecting @@ -15954,7 +15955,9 @@ connetcion->connection connetcions->connections connetcor->connector connetcors->connectors +connetec->connected conneted->connected +connetet->connected Conneticut->Connecticut conneting->connecting connetion->connection From 7e1eea626b0fe583bc432e4f53a7f65450061035 Mon Sep 17 00:00:00 2001 From: Nicolas Iooss Date: Fri, 11 Jul 2025 15:23:38 +0200 Subject: [PATCH 082/202] Add exposte->expose and variations "exposte" was not found in publicly-available resources but its variations were. "exposted" was found in https://github.com/tianocore/edk2/blob/a1b509c1a453815acbc6c8b0fc5882fd03a6f2c0/MdeModulePkg/Include/Library/CapsuleLib.h#L64 "expostes" was found in https://github.com/dlsc-software-consulting-gmbh/GemsFX/blob/19f6cadadc02798a096c86005d292a9bb19673ca/docs/com.dlsc.gemsfx/com/dlsc/gemsfx/FilterView.FilterGroup.html#L109 "exposting" was found in https://github.com/moodle/moodle/blob/9addea9f0ace94e228329a93df80afaa76fee3e0/mod/lti/classes/local/ltiopenid/jwks_helper.php#L67 https://github.com/akka/akka-management/blob/4b884424a52817caee10256675b437e0e08da693/management/src/main/resources/reference.conf#L75 --- codespell_lib/data/dictionary.txt | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/codespell_lib/data/dictionary.txt b/codespell_lib/data/dictionary.txt index 28fb71b56f..5100f50a25 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -27445,6 +27445,10 @@ expors->exports exportet->exported, exporter, exportin->exporting, export in, exposin->exposing, expos in, +exposte->expose +exposted->exposed +expostes->exposes +exposting->exposing expport->export exppressed->expressed expration->expiration From a36767f1043badc8e0e58e1576f743cb5c8fd69d Mon Sep 17 00:00:00 2001 From: MDW Date: Tue, 15 Jul 2025 15:56:51 +0200 Subject: [PATCH 083/202] dict: Add futre & ongoign (#3736) Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com> --- codespell_lib/data/dictionary.txt | 2 ++ 1 file changed, 2 insertions(+) diff --git a/codespell_lib/data/dictionary.txt b/codespell_lib/data/dictionary.txt index 5100f50a25..7e1c1d8437 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -29545,6 +29545,7 @@ futher->further futherize->further futhermore->furthermore futhroc->futhark, futhorc, +futre->future futrue->future futrure->future futture->future @@ -41658,6 +41659,7 @@ onedimenionsal->one-dimensional oneliners->one-liners oneyway->oneway ongly->only +ongoign->ongoing ongoin->ongoing onl->only onlie->online, only, From 31b104aea80f58e164e82e51a443f6057dfdf5f6 Mon Sep 17 00:00:00 2001 From: Dimitri Papadopoulos <3234522+DimitriPapadopoulos@users.noreply.github.com> Date: Fri, 13 Jun 2025 21:46:41 +0200 Subject: [PATCH 084/202] Typos from nilearn --- codespell_lib/data/dictionary.txt | 50 ++++++++++++++++++++++++++----- 1 file changed, 42 insertions(+), 8 deletions(-) diff --git a/codespell_lib/data/dictionary.txt b/codespell_lib/data/dictionary.txt index 7e1c1d8437..f1ca9a2961 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -13761,13 +13761,15 @@ collumns->columns collums->columns colmn->column colmns->columns +colmun->column colmuned->columned -coloer->color -coloeration->coloration -coloered->colored -coloering->coloring -coloers->colors -coloful->colorful +colmuns->columns +coloer->color, colour, +coloeration->coloration, colouration, +coloered->colored, coloured, +coloering->coloring, colouring, +coloers->colors, colours, +coloful->colorful, colourful, colombus->Columbus colomn->column colomns->columns @@ -14868,6 +14870,8 @@ comporessors->compressors comporison->comparison comporisons->comparisons composablity->composability +composant->component +composants->components composibility->composability composiblity->composability composiste->composite @@ -16331,12 +16335,16 @@ constrant->constraint constrants->constraints constrast->contrast constrasts->contrasts +constrat->contrast, constraint, +constrated->contrasted, constrained, constratin->constraint, constrain, constratined->constrained +constrating->contrasting, constraining, constratining->constraining constratins->constraints, constrains, constratint->constraint constratints->constraints +constrats->contrasts, constraints, constraucts->constructs constrct->construct, constrict, constrcted->constructed, constricted, @@ -16884,6 +16892,7 @@ conttributes->contributes conttributing->contributing conttribution->contribution conttributions->contributions +contuguous->contiguous contur->contour contzains->contains conuntry->country @@ -20340,6 +20349,12 @@ depracated->deprecated depracates->deprecates depracating->deprecating depracation->deprecation +depreacate->deprecate +depreacated->deprecated +depreacates->deprecates +depreacating->deprecating +depreacation->deprecation +depreacations->deprecations depreacte->deprecate depreacted->deprecated depreactes->deprecates @@ -21994,6 +22009,8 @@ directoy->directory directpries->directories directpry->directory directries->directories +directrion->direction +directrions->directions directrive->directive directrives->directives directrly->directly @@ -23655,6 +23672,8 @@ dupplicates->duplicates dupplicating->duplicating dupplication->duplication dupplications->duplications +durantion->duration +durantions->durations durationm->duration durectories->directories durectory->directory @@ -25508,6 +25527,8 @@ estimater->estimator, estimated, estimates, estimate, estimaters->estimators, estimates, estimatied->estimated estimatin->estimating, estimation, +estimlator->estimator +estimlators->estimators estiomator->estimator estiomators->estimators estuwarries->estuaries @@ -29118,6 +29139,8 @@ frecuently->frequently frecuents->frequents freecallrelpy->freecallreply freedeom->freedom, freedoms, +freedome->freedom +freedomes->freedoms freedon->freedom freedons->freedoms freedum->freedom @@ -32806,6 +32829,10 @@ indepentendly->independently indepentent->independent indepentently->independently indepently->independently +indepndence->independence +indepndences->independences +indepndent->independent +indepndents->independents inderect->indirect inderts->inserts indes->index @@ -39790,6 +39817,7 @@ neglibible->negligible neglible->negligible negligable->negligible negligble->negligible +negligeable->negligible negoable->negotiable negoate->negotiate negoated->negotiated @@ -40002,6 +40030,7 @@ neice->niece, nice, neigbhor->neighbor neigbhorhood->neighborhood neigbhorhoods->neighborhoods +neigbhoring->neighboring neigbhors->neighbors neigbhour->neighbour neigbhours->neighbours @@ -48158,6 +48187,8 @@ realeasing->releasing realiability->reliability realiable->reliable realiably->reliably +realignement->realignment +realignements->realignments realisin->realising realitime->realtime realitvely->relatively @@ -48937,6 +48968,7 @@ redings->readings redircet->redirect redirectd->redirected redirectrion->redirection +redirectrions->redirections redisign->redesign redistirbute->redistribute redistirbuted->redistributed @@ -49388,6 +49420,7 @@ regrads->regards, regrades, regresion->regression regresison->regression regressin->regressing, regress in, regression, +regressos->regressors regresssion->regression regrigerator->refrigerator regsion->region @@ -63454,9 +63487,10 @@ volounteer->volunteer volounteered->volunteered volounteering->volunteering volounteers->volunteers -volumn->volume +volumn->volume, column, volumne->volume -volums->volume +volumns->volumes, columns, +volums->volume, volumes, volunteerin->volunteering, volunteer in, volxel->voxel volxels->voxels From 40bc526c692d185a8fe3faca9af7f64c51a0986c Mon Sep 17 00:00:00 2001 From: luzpaz Date: Tue, 15 Jul 2025 15:38:41 -0400 Subject: [PATCH 085/202] Add spelling corrections + variations (#3739) --- codespell_lib/data/dictionary.txt | 13 +++++++++---- 1 file changed, 9 insertions(+), 4 deletions(-) diff --git a/codespell_lib/data/dictionary.txt b/codespell_lib/data/dictionary.txt index f1ca9a2961..e6e7013eaa 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -13132,7 +13132,7 @@ classifiying->classifying classifyin->classifying, classify in, classrom->classroom classroms->classrooms -classs->class +classs->class, classes, classses->classes classsic->classic classsical->classical @@ -19025,8 +19025,8 @@ deafualts->defaults deafult->default deafulted->defaulted deafults->defaults -deail->deal -deailing->dealing +deail->deal, detail, derail, +deailing->dealing, detailing, derailing, deaktivate->deactivate deaktivated->deactivated dealed->dealt @@ -49638,6 +49638,7 @@ relativated->relative, relatively, relativly->relatively relavant->relevant relavent->relevant +relaxiation->relaxation releaase->release releaased->released releaases->releases @@ -57507,7 +57508,7 @@ supposedy->supposedly supposin->supposing supposingly->supposedly suppossed->supposed -suppost->support, suppose, supports, +suppost->support, suppose, supposed, supports, supposted->supposed, supported, supposting->supporting, supposing, supposts->supports, supposes, @@ -59758,6 +59759,10 @@ tranalations->translations tranasction->transaction tranasctional->transactional tranasctions->transactions +trancate->truncate +trancated->truncated +trancates->truncates +trancating->truncating tranceiver->transceiver tranceivers->transceivers trancendent->transcendent From b95aecb46bfd4763d1a790a94cb1d9c06f602d3e Mon Sep 17 00:00:00 2001 From: Christian Fischer Date: Thu, 17 Jul 2025 09:07:26 +0200 Subject: [PATCH 086/202] Add spelling correction for followinig->following --- codespell_lib/data/dictionary.txt | 1 + 1 file changed, 1 insertion(+) diff --git a/codespell_lib/data/dictionary.txt b/codespell_lib/data/dictionary.txt index e6e7013eaa..fc733ae4a0 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -28646,6 +28646,7 @@ followign->following followiing->following followin->following followind->following +followinig->following followins->following, followings, followint->following followng->following From 75bab5c49b98a0c028d21892b73d89b94288f2db Mon Sep 17 00:00:00 2001 From: Nick Pope Date: Thu, 17 Jul 2025 21:53:28 +0100 Subject: [PATCH 087/202] Add common misspellings of kingdom - https://github.com/search?q=kindgom&type=code - https://github.com/search?q=kindgoms&type=code - https://github.com/search?q=kindom&type=code - https://github.com/search?q=kindoms&type=code --- codespell_lib/data/dictionary.txt | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/codespell_lib/data/dictionary.txt b/codespell_lib/data/dictionary.txt index fc733ae4a0..447ecc58b3 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -36009,6 +36009,10 @@ kimerrically->chimerically kindergarden->kindergarten kindgergarden->kindergarten kindgergarten->kindergarten +kindgom->kingdom +kindgoms->kingdoms +kindom->kingdom +kindoms->kingdoms kinf->kind kinfs->kinds kinnect->Kinect From af0c7c87c51fc5dfa534cee5b79e37da0dc99aaa Mon Sep 17 00:00:00 2001 From: AJIOB Date: Thu, 24 Jul 2025 07:40:11 +0000 Subject: [PATCH 088/202] Fix notifier typo --- codespell_lib/data/dictionary.txt | 3 +++ 1 file changed, 3 insertions(+) diff --git a/codespell_lib/data/dictionary.txt b/codespell_lib/data/dictionary.txt index 447ecc58b3..735b0d0ecb 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -40452,6 +40452,8 @@ noice->noise, nice, notice, noification->notification noifications->notifications noified->notified +noifier->notifier +noifiers->notifiers noifies->notifies noify->notify, noisy, noifying->notifying @@ -40921,6 +40923,7 @@ notifcation->notification notifcations->notifications notifed->notified notifer->notifier +notifers->notifiers notifes->notifies notifiaction->notification notifiactions->notifications From b2168c3b1f225e2ec717c6689bb07119aadfe0b0 Mon Sep 17 00:00:00 2001 From: MDW Date: Thu, 24 Jul 2025 22:30:57 +0200 Subject: [PATCH 089/202] dict: prefacted and related (#3744) Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com> --- codespell_lib/data/dictionary.txt | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) diff --git a/codespell_lib/data/dictionary.txt b/codespell_lib/data/dictionary.txt index 735b0d0ecb..85df26d017 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -43870,6 +43870,7 @@ peerowet->pirouette peerowetes->pirouettes peerowets->pirouettes pefect->perfect, prefect, defect, +pefected->perfected pefection->perfection pefectly->perfectly pefer->prefer @@ -43980,8 +43981,14 @@ perentage->percentage, parentage, perentages->percentages, parentages, peresent->present, presents, presence, percent, peretrator->perpetrator +perfact->prefect, perfect, +perfacted->perfected +perfaction->perfection +perfactly->perfectly perfec->perfect perfecct->perfect +perfeccted->perfected +perfecction->perfection perfecctly->perfectly perfeclty->perfectly perfecly->perfectly @@ -43992,6 +43999,8 @@ perferably->preferably perferance->preference perferances->preferences perferct->perfect +perfercted->perfected +perferction->perfection perferctly->perfectly perferect->perfect perferectly->perfectly @@ -45669,7 +45678,9 @@ preety->pretty preexistin->preexisting, preexist in, prefacin->prefacing prefectches->prefetches -prefecth->prefetch +prefected->perfected +prefecth->prefect, prefetch, +prefection->perfection prefectly->perfectly prefence->pretence, presence, preference, prefences->preferences From c31c61e0a744c13573346d73daacab47f0d58d4d Mon Sep 17 00:00:00 2001 From: AJIOB Date: Mon, 21 Jul 2025 07:41:17 +0000 Subject: [PATCH 090/202] Fix device typo --- codespell_lib/data/dictionary.txt | 2 ++ codespell_lib/data/dictionary_rare.txt | 2 ++ 2 files changed, 4 insertions(+) diff --git a/codespell_lib/data/dictionary.txt b/codespell_lib/data/dictionary.txt index 85df26d017..205313fd4c 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -21355,6 +21355,8 @@ devolopers->developers devoloping->developing devolopment->development devolops->develops +devrice->device, dervice, +devrices->devices, dervices, devritualisation->devirtualisation devritualization->devirtualization devuce->device diff --git a/codespell_lib/data/dictionary_rare.txt b/codespell_lib/data/dictionary_rare.txt index 3469a56f65..2b5e52b615 100644 --- a/codespell_lib/data/dictionary_rare.txt +++ b/codespell_lib/data/dictionary_rare.txt @@ -82,6 +82,8 @@ degrate->degrade degrates->degrades dependant->dependent derails->details +dervice->device, service, +dervices->devices, services, descried->described descries->describes dirivative->derivative From 710ef43a14698b80b7c213a13e62669c71d534fb Mon Sep 17 00:00:00 2001 From: Christian Fischer Date: Tue, 29 Jul 2025 10:25:16 +0200 Subject: [PATCH 091/202] Add spelling correction for pronte and variants. --- codespell_lib/data/dictionary.txt | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/codespell_lib/data/dictionary.txt b/codespell_lib/data/dictionary.txt index 205313fd4c..b6b8873190 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -46828,6 +46828,12 @@ pronouced->pronounced pronounched->pronounced pronounciation->pronunciation pronounciations->pronunciations +pront->print, pronto, prone, front, prong, +pronte->prone, pronate, pronto, ponte, +pronted->printed, pronated, pronged, proned, +prontes->pronates, prones, +pronting->printing, pronating, proning, +pronts->prints, prongs, pronto, pronunce->pronounce prooblem->problem prooblematic->problematic From b786d9633fa6043b96ef120d4d3f63a383ab15b7 Mon Sep 17 00:00:00 2001 From: Julian Stirling Date: Sat, 2 Aug 2025 18:22:01 +0100 Subject: [PATCH 092/202] ilkely and ilkley -> likely (#3746) Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com> --- codespell_lib/data/dictionary.txt | 2 ++ 1 file changed, 2 insertions(+) diff --git a/codespell_lib/data/dictionary.txt b/codespell_lib/data/dictionary.txt index b6b8873190..75424e52d7 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -31668,6 +31668,8 @@ ileagle->illegal ilegal->illegal ilegle->illegal iligal->illegal +ilkely->likely +ilkley->likely illegimacy->illegitimacy illegitmate->illegitimate illess->illness From 8d7742456bbd19a9e5e63addafb9431003003dd0 Mon Sep 17 00:00:00 2001 From: "pre-commit-ci[bot]" <66853113+pre-commit-ci[bot]@users.noreply.github.com> Date: Mon, 4 Aug 2025 17:16:50 +0000 Subject: [PATCH 093/202] [pre-commit.ci] pre-commit autoupdate MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit updates: - [github.com/astral-sh/ruff-pre-commit: v0.12.2 → v0.12.7](https://github.com/astral-sh/ruff-pre-commit/compare/v0.12.2...v0.12.7) - [github.com/pre-commit/mirrors-mypy: v1.16.1 → v1.17.1](https://github.com/pre-commit/mirrors-mypy/compare/v1.16.1...v1.17.1) --- .pre-commit-config.yaml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.pre-commit-config.yaml b/.pre-commit-config.yaml index f41e0c3e09..4eaeff9f60 100644 --- a/.pre-commit-config.yaml +++ b/.pre-commit-config.yaml @@ -58,7 +58,7 @@ repos: - -d - "{extends: relaxed, rules: {line-length: {max: 90}}}" - repo: https://github.com/astral-sh/ruff-pre-commit - rev: v0.12.2 + rev: v0.12.7 hooks: - id: ruff-check - id: ruff-format @@ -79,7 +79,7 @@ repos: hooks: - id: validate-pyproject - repo: https://github.com/pre-commit/mirrors-mypy - rev: v1.16.1 + rev: v1.17.1 hooks: - id: mypy args: ["--config-file", "pyproject.toml"] From 943fa64f20146a371a1c8f6b3d9f14839e8777a1 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed, 6 Aug 2025 02:43:01 +0000 Subject: [PATCH 094/202] Bump actions/download-artifact from 4 to 5 Bumps [actions/download-artifact](https://github.com/actions/download-artifact) from 4 to 5. - [Release notes](https://github.com/actions/download-artifact/releases) - [Commits](https://github.com/actions/download-artifact/compare/v4...v5) --- updated-dependencies: - dependency-name: actions/download-artifact dependency-version: '5' dependency-type: direct:production update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] --- .github/workflows/release.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index 88048710d8..408adad199 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -47,7 +47,7 @@ jobs: runs-on: ubuntu-latest if: github.event_name == 'release' steps: - - uses: actions/download-artifact@v4 + - uses: actions/download-artifact@v5 with: name: dist path: dist From 267a301175356f675a5460c6e3ab9101bdc102f0 Mon Sep 17 00:00:00 2001 From: Dimitri Papadopoulos Orfanos <3234522+DimitriPapadopoulos@users.noreply.github.com> Date: Mon, 11 Aug 2025 16:24:00 +0200 Subject: [PATCH 095/202] Remove dead code (#3756) --- codespell_lib/_codespell.py | 3 --- 1 file changed, 3 deletions(-) diff --git a/codespell_lib/_codespell.py b/codespell_lib/_codespell.py index 04f1af7fe4..f86ec4f98b 100644 --- a/codespell_lib/_codespell.py +++ b/codespell_lib/_codespell.py @@ -55,9 +55,6 @@ r"(\b(?:https?|[ts]?ftp|file|git|smb)://[^\s]+(?=$|\s)|\b[\w.%+-]+@[\w.-]+\b)" ) inline_ignore_regex = re.compile(r"[^\w\s]\s*codespell:ignore\b(\s+(?P[\w,]*))?") -USAGE = """ -\t%prog [OPTIONS] [file1 file2 ... fileN] -""" supported_languages_en = ("en", "en_GB", "en_US", "en_CA", "en_AU") supported_languages = supported_languages_en From 7d07bdc1055a3254b17dfc6ab83b22a39387fb7f Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 12 Aug 2025 11:23:08 -0400 Subject: [PATCH 096/202] Bump actions/checkout from 4 to 5 (#3757) Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- .github/workflows/codespell.yml | 2 +- .github/workflows/release.yml | 2 +- .github/workflows/tests.yml | 4 ++-- 3 files changed, 4 insertions(+), 4 deletions(-) diff --git a/.github/workflows/codespell.yml b/.github/workflows/codespell.yml index 3163b4e35f..637e2a76fa 100644 --- a/.github/workflows/codespell.yml +++ b/.github/workflows/codespell.yml @@ -9,7 +9,7 @@ jobs: name: Check for spelling errors runs-on: ubuntu-latest steps: - - uses: actions/checkout@v4 + - uses: actions/checkout@v5 with: persist-credentials: false - uses: codespell-project/actions-codespell@master diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index 408adad199..a8482208c6 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -18,7 +18,7 @@ jobs: package: runs-on: ubuntu-latest steps: - - uses: actions/checkout@v4 + - uses: actions/checkout@v5 with: persist-credentials: false - name: Set up Python diff --git a/.github/workflows/tests.yml b/.github/workflows/tests.yml index 03d421c34c..c052ed7942 100644 --- a/.github/workflows/tests.yml +++ b/.github/workflows/tests.yml @@ -38,7 +38,7 @@ jobs: os: "windows-latest" name: "${{ matrix.python-version }} ${{ matrix.kind }} ${{ matrix.os }}" steps: - - uses: actions/checkout@v4 + - uses: actions/checkout@v5 with: persist-credentials: false - name: Setup python @@ -80,7 +80,7 @@ jobs: steps: - name: Setup Python uses: actions/setup-python@v5 - - uses: actions/checkout@v4 + - uses: actions/checkout@v5 with: persist-credentials: false - name: Install general dependencies From 8fb890e985581a7af08ab6fba6653db558b2605b Mon Sep 17 00:00:00 2001 From: Thiago Perrotta Date: Wed, 13 Aug 2025 11:10:21 +0200 Subject: [PATCH 097/202] dictionary: add regoin->region Observed in our codebase. --- codespell_lib/data/dictionary.txt | 1 + 1 file changed, 1 insertion(+) diff --git a/codespell_lib/data/dictionary.txt b/codespell_lib/data/dictionary.txt index 75424e52d7..f92df32105 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -49440,6 +49440,7 @@ regnerated->regenerated regnerates->regenerates regnerating->regenerating regneration->regeneration +regoin->region regon->region regons->regions regorded->recorded From ba2124d89bfda2376c7d09a6b4b5ce14ba2e2c2b Mon Sep 17 00:00:00 2001 From: Thiago Perrotta Date: Wed, 13 Aug 2025 12:30:06 +0200 Subject: [PATCH 098/202] Update dictionary.txt --- codespell_lib/data/dictionary.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/codespell_lib/data/dictionary.txt b/codespell_lib/data/dictionary.txt index f92df32105..539b8d9c32 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -49440,7 +49440,7 @@ regnerated->regenerated regnerates->regenerates regnerating->regenerating regneration->regeneration -regoin->region +regoin->regain, region, regon->region regons->regions regorded->recorded From bed7837507a471bdfea3c105b3456b711a65981f Mon Sep 17 00:00:00 2001 From: Nathan McDougall Date: Thu, 14 Aug 2025 09:26:59 +1200 Subject: [PATCH 099/202] Add peizometric->piezometric etc. to dictionary --- codespell_lib/data/dictionary.txt | 2 ++ 1 file changed, 2 insertions(+) diff --git a/codespell_lib/data/dictionary.txt b/codespell_lib/data/dictionary.txt index 539b8d9c32..3d5fdc4663 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -43911,6 +43911,8 @@ peirod->period peirodical->periodical peirodicals->periodicals peirods->periods +peizometer->piezometer +peizometric->piezometric Peloponnes->Peloponnese, Peloponnesus, penalities->penalties penality->penalty From acd15cdb33da2663c5e5b2fed6184d7390ec9ec6 Mon Sep 17 00:00:00 2001 From: Nathan McDougall Date: Sun, 17 Aug 2025 15:17:49 +1200 Subject: [PATCH 100/202] Add peizometers->piezometers to dictionary --- codespell_lib/data/dictionary.txt | 1 + 1 file changed, 1 insertion(+) diff --git a/codespell_lib/data/dictionary.txt b/codespell_lib/data/dictionary.txt index 3d5fdc4663..28853feeb5 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -43912,6 +43912,7 @@ peirodical->periodical peirodicals->periodicals peirods->periods peizometer->piezometer +peizometers->piezometers peizometric->piezometric Peloponnes->Peloponnese, Peloponnesus, penalities->penalties From 189ac3d90f64e97d2fddf26969384bf094fb5233 Mon Sep 17 00:00:00 2001 From: Dimitri Papadopoulos <3234522+DimitriPapadopoulos@users.noreply.github.com> Date: Sat, 9 Aug 2025 23:26:54 +0200 Subject: [PATCH 101/202] New typos from quarto-web https://github.com/quarto-dev/quarto-web/pull/1738 https://github.com/quarto-dev/quarto-web/pull/1740 --- codespell_lib/data/dictionary.txt | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/codespell_lib/data/dictionary.txt b/codespell_lib/data/dictionary.txt index 28853feeb5..403c1cb96d 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -2564,6 +2564,8 @@ affilations->affiliations affiliato->affiliation affiliaton->affiliation affiliction->affiliation, affliction, +affilitation->affiliation +affilitations->affiliations affilliate->affiliate affinitied->affinities affinitiy->affinity @@ -44162,6 +44164,8 @@ peridic->periodic peridical->periodical peridically->periodically peridioc->periodic +peridiocal->periodical +peridiocally->periodically perihperal->peripheral perihperals->peripherals perilious->perilous From 72120c7470c5985a2c4fdec9f8696e67566d14d1 Mon Sep 17 00:00:00 2001 From: Loymdayddaud <145969603+TheGiraffe3@users.noreply.github.com> Date: Sun, 17 Aug 2025 17:11:12 +0300 Subject: [PATCH 102/202] add faulyt->faulty and aulty->faulty (#3751) --- codespell_lib/data/dictionary.txt | 2 ++ 1 file changed, 2 insertions(+) diff --git a/codespell_lib/data/dictionary.txt b/codespell_lib/data/dictionary.txt index 403c1cb96d..46265e11cd 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -8199,6 +8199,7 @@ auhtorized->authorized auhtorizes->authorizes auhtorizing->authorizing auhtors->authors +aulty->aunty, faulty, aumatically->automatically, traumatically, aunthenticate->authenticate aunthenticated->authenticated @@ -28021,6 +28022,7 @@ faulsure->failure faulsures->failures faulure->failure faulures->failures +faulyt->faulty faund->found, fund, fause->false fauture->feature From daca41bcbc7f61032fb451e1e99716d2ee7097e6 Mon Sep 17 00:00:00 2001 From: Thiago Perrotta Date: Mon, 18 Aug 2025 18:28:21 +0200 Subject: [PATCH 103/202] dictionary: add proider->provider (#3758) --- codespell_lib/data/dictionary.txt | 2 ++ 1 file changed, 2 insertions(+) diff --git a/codespell_lib/data/dictionary.txt b/codespell_lib/data/dictionary.txt index 46265e11cd..dd07a0d020 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -46749,6 +46749,8 @@ prohibt->prohibit prohibted->prohibited prohibting->prohibiting prohibts->prohibits +proider->provider +proiders->providers proir->prior proirities->priorities proirity->priority From 0eb25753b4e007b3dc5faed5791feb2f30b752e3 Mon Sep 17 00:00:00 2001 From: luzpaz Date: Sat, 23 Aug 2025 08:41:22 -0400 Subject: [PATCH 104/202] Add various new typos and update preexisting (#3763) --- codespell_lib/data/dictionary.txt | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/codespell_lib/data/dictionary.txt b/codespell_lib/data/dictionary.txt index dd07a0d020..b96f9e666d 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -25791,6 +25791,7 @@ evrytime->every time evrywhere->everywhere evyrthing->everything ewhwer->where +ewll->well exaclinic->hexaclinic exaclty->exactly exacly->exactly @@ -64207,8 +64208,8 @@ wiythin->within wiythout->without wizzard->wizard wjat->what -wll->will -wlll->will +wll->will, well, +wlll->will, well, wmpty->empty wnat->want, what, wnated->wanted From 407b60f51d3cccda444b7c6ca6f5754515f206b5 Mon Sep 17 00:00:00 2001 From: Hugo van Kemenade <1324225+hugovk@users.noreply.github.com> Date: Mon, 25 Aug 2025 16:50:21 +0300 Subject: [PATCH 105/202] Use a maintained mirrors-prettier for pre-commit --- .pre-commit-config.yaml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.pre-commit-config.yaml b/.pre-commit-config.yaml index 4eaeff9f60..f5e1620e30 100644 --- a/.pre-commit-config.yaml +++ b/.pre-commit-config.yaml @@ -62,8 +62,8 @@ repos: hooks: - id: ruff-check - id: ruff-format - - repo: https://github.com/pre-commit/mirrors-prettier - rev: v4.0.0-alpha.8 + - repo: https://github.com/rbubley/mirrors-prettier + rev: v3.6.2 hooks: - id: prettier types_or: [yaml, markdown, html, css, scss, javascript, json] From 2ff5b8ab831fee1b2a6064ced8beea6d907d94f5 Mon Sep 17 00:00:00 2001 From: Julian Stirling Date: Tue, 29 Jul 2025 17:39:48 +0100 Subject: [PATCH 106/202] exposere->exposure Another spelling error found in OpenFlexure source code, due to my terrible typing. --- codespell_lib/data/dictionary.txt | 1 + 1 file changed, 1 insertion(+) diff --git a/codespell_lib/data/dictionary.txt b/codespell_lib/data/dictionary.txt index b96f9e666d..29123cf3af 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -27471,6 +27471,7 @@ exporing->exploring, expiring, exporting, exposing, expors->exports exportet->exported, exporter, exportin->exporting, export in, +exposere->exposure exposin->exposing, expos in, exposte->expose exposted->exposed From 5c985e488db27cc222845ceda299893d7235349d Mon Sep 17 00:00:00 2001 From: "pre-commit-ci[bot]" <66853113+pre-commit-ci[bot]@users.noreply.github.com> Date: Mon, 1 Sep 2025 17:11:36 +0000 Subject: [PATCH 107/202] [pre-commit.ci] pre-commit autoupdate MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit updates: - [github.com/pre-commit/pre-commit-hooks: v5.0.0 → v6.0.0](https://github.com/pre-commit/pre-commit-hooks/compare/v5.0.0...v6.0.0) - [github.com/astral-sh/ruff-pre-commit: v0.12.7 → v0.12.11](https://github.com/astral-sh/ruff-pre-commit/compare/v0.12.7...v0.12.11) --- .pre-commit-config.yaml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.pre-commit-config.yaml b/.pre-commit-config.yaml index f5e1620e30..79ecfa27fb 100644 --- a/.pre-commit-config.yaml +++ b/.pre-commit-config.yaml @@ -26,7 +26,7 @@ repos: hooks: - id: rst-linter - repo: https://github.com/pre-commit/pre-commit-hooks - rev: v5.0.0 + rev: v6.0.0 hooks: - id: no-commit-to-branch args: [--branch, main] @@ -58,7 +58,7 @@ repos: - -d - "{extends: relaxed, rules: {line-length: {max: 90}}}" - repo: https://github.com/astral-sh/ruff-pre-commit - rev: v0.12.7 + rev: v0.12.11 hooks: - id: ruff-check - id: ruff-format From a3c811310ccd1b99fb1835a2dedacea4cab6e5cc Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Fri, 5 Sep 2025 06:51:15 -0400 Subject: [PATCH 108/202] Bump actions/setup-python from 5 to 6 (#3767) Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- .github/workflows/release.yml | 2 +- .github/workflows/tests.yml | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index a8482208c6..ee59f5e681 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -22,7 +22,7 @@ jobs: with: persist-credentials: false - name: Set up Python - uses: actions/setup-python@v5 + uses: actions/setup-python@v6 with: python-version: "3.10" - name: Install dependencies diff --git a/.github/workflows/tests.yml b/.github/workflows/tests.yml index c052ed7942..c6830bd5e4 100644 --- a/.github/workflows/tests.yml +++ b/.github/workflows/tests.yml @@ -42,7 +42,7 @@ jobs: with: persist-credentials: false - name: Setup python - uses: actions/setup-python@v5 + uses: actions/setup-python@v6 with: python-version: ${{ matrix.python-version }} allow-prereleases: true @@ -79,7 +79,7 @@ jobs: timeout-minutes: 10 steps: - name: Setup Python - uses: actions/setup-python@v5 + uses: actions/setup-python@v6 - uses: actions/checkout@v5 with: persist-credentials: false From 87a280039336c73d45faba7829aea860e68de4a3 Mon Sep 17 00:00:00 2001 From: Link Mauve Date: Tue, 9 Sep 2025 13:40:19 +0200 Subject: [PATCH 109/202] addititional->additional Typo found in the Converse.js XMPP client: https://github.com/conversejs/converse.js/pull/3836 --- codespell_lib/data/dictionary.txt | 2 ++ 1 file changed, 2 insertions(+) diff --git a/codespell_lib/data/dictionary.txt b/codespell_lib/data/dictionary.txt index 29123cf3af..e6ce64114f 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -1961,6 +1961,8 @@ additionalyy->additionally additionnal->additional additionnally->additionally additionnaly->additionally +addititional->additional +addititionally->additionally additivies->additives additivley->additively, additive, additoin->addition From 4d35b42f8f0a1dcfd246b1571486a0955097db7a Mon Sep 17 00:00:00 2001 From: James Braza Date: Sun, 13 Jul 2025 13:01:04 -0600 Subject: [PATCH 110/202] Added 'hanbdle->handle' --- codespell_lib/data/dictionary.txt | 1 + 1 file changed, 1 insertion(+) diff --git a/codespell_lib/data/dictionary.txt b/codespell_lib/data/dictionary.txt index e6ce64114f..00ef4e35e8 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -30560,6 +30560,7 @@ halp->help halpoints->halfpoints hammmer->hammer hampster->hamster +hanbdle->handle hande->handle, hand, handel->handle handeld->handled, handheld, From a551726e96196955e2d7757d48eaf3b0c657d873 Mon Sep 17 00:00:00 2001 From: James Braza Date: Sun, 21 Sep 2025 10:02:16 -0700 Subject: [PATCH 111/202] Added other 'hanbdle' verbal forms after #3735 missed a comment --- codespell_lib/data/dictionary.txt | 3 +++ 1 file changed, 3 insertions(+) diff --git a/codespell_lib/data/dictionary.txt b/codespell_lib/data/dictionary.txt index 00ef4e35e8..3e22dd5845 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -30561,6 +30561,9 @@ halpoints->halfpoints hammmer->hammer hampster->hamster hanbdle->handle +hanbdled->handled +hanbdles->handles +hanbdling->handling hande->handle, hand, handel->handle handeld->handled, handheld, From 7042421ad3cb2ec6c49fa9c21c019a15199d24e6 Mon Sep 17 00:00:00 2001 From: luzpaz Date: Mon, 22 Sep 2025 19:07:01 -0400 Subject: [PATCH 112/202] Add typos found in the KDE repository (#3775) --- codespell_lib/data/dictionary.txt | 38 ++++++++++++++++++++++++++----- 1 file changed, 32 insertions(+), 6 deletions(-) diff --git a/codespell_lib/data/dictionary.txt b/codespell_lib/data/dictionary.txt index 3e22dd5845..08b70cbc40 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -1728,7 +1728,7 @@ activsted->activated activstes->activates activte->activate activted->activated -activtes->activates +activtes->activates, activities, activties->activities activting->activating activtion->activation @@ -7059,6 +7059,7 @@ askign->asking askin->asking, ask in, akin, skin, a skin, askreddt->AskReddit aslo->also +asncronous->asynchronous asnd->and asnwer->answer asnwered->answered @@ -13314,6 +13315,7 @@ cloess->closes cloesst->closest cloisonay->cloisonné cloisonays->cloisonnés +clokwise->clockwise clonez->clones, cloner, clonin->cloning clonne->clone @@ -13775,6 +13777,7 @@ coloered->colored, coloured, coloering->coloring, colouring, coloers->colors, colours, coloful->colorful, colourful, +colokwise->clockwise colombus->Columbus colomn->column colomns->columns @@ -13787,6 +13790,7 @@ colorizoer->colorizer colorpsace->colorspace colorpsaces->colorspaces colose->close +coloskwise->clockwise colouer->colour coloum->column coloumn->column @@ -13804,6 +13808,8 @@ colsest->closest, coldest, colsing->closing colud->could, cloud, colum->column +colume->column, volume, +columes->columns, volumes, columm->column colummn->column colummns->columns @@ -23395,7 +23401,7 @@ downsteramer->downstreamer downsteramers->downstreamers downsteraming->downstreaming downsterams->downstreams -dows->does +dows->does, down, dowt->doubt doxgen->doxygen doygen->doxygen @@ -23459,7 +23465,7 @@ drammatic->dramatic dramtic->dramatic dran->drawn drapin->draping -drastical->drastically +drastical->drastically, drastic, drasticaly->drastically drats->drafts draughtman->draughtsman @@ -28206,6 +28212,7 @@ fiields->fields filal->final filaname->filename filanames->filenames +filaneme->filename filder->folder, filter, finder, fielder, filer, filders->folders, filters, finders, fielders, filers, fileand->file and @@ -32680,6 +32687,10 @@ incresed->increased increses->increases incresing->increasing incrfemental->incremental +incriease->increase +incrieased->increased +incrieases->increases +incrieasing->increasing incrmenet->increment incrmenetd->incremented incrmeneted->incremented @@ -40969,6 +40980,8 @@ notifictions->notifications notififation->notification notififations->notifications notifing->notifying +notifition->notification +notifitions->notifications notifiy->notify notifiying->notifying notifyable->notifiable @@ -41575,8 +41588,8 @@ offred->offered offsence->offence offsense->offense offsenses->offenses -offser->offset -offsers->offers +offser->offer, offset, +offsers->offers, offsets, offsest->offsets, offset, offseted->offsetted offsetes->offsets @@ -42561,6 +42574,7 @@ otherwhile->otherwise otherwhise->otherwise otherwice->otherwise otherwide->otherwise +otherwiese->otherwise otherwis->otherwise otherwize->otherwise otherwordly->otherworldly @@ -44773,6 +44787,7 @@ playgrouns->playgrounds, playground, playin->playing, play in, playist->playlist playists->playlists +playlise->playlist playright->playwright playwrite->playwright playwrites->playwrights @@ -46903,6 +46918,10 @@ propagatin->propagating, propagation, propage->propagate, propane, propaged->propagated propages->propagates +propagete->propagate +propageted->propagated +propagetes->propagates +propageting->propagating propaging->propagating propatagion->propagation propator->propagator @@ -47398,6 +47417,8 @@ puplishes->publishes puplishing->publishing pupose->purpose puposes->purposes +puprose->purpose +puproses->purposes pupular->popular pupularity->popularity pupulate->populate @@ -48381,6 +48402,7 @@ reasonin->reasoning, reason in, reasonnable->reasonable reasonnably->reasonably reassignin->reassigning, reassign in, +reassing->reassign reassinging->reassigning reassocation->reassociation reassocations->reassociations @@ -51614,7 +51636,7 @@ retrvieves->retrieves retryin->retrying, retry in, retrain, retsart->restart retsarts->restarts -retun->return +retun->return, rerun, retune, retunr->return, retune, retunred->returned, retuned, retunring->returning, retuning, @@ -59116,6 +59138,7 @@ theorectically->theoretically theoreticall->theoretically theoreticaly->theoretically theoreticl->theoretical +theoretocally->theoretically theorical->theoretical theorically->theoretically theoritical->theoretical @@ -61695,6 +61718,7 @@ unmber->number, umber, unmbered->numbered unmbering->numbering unmbers->numbers +unmergable->unmergeable unmisakable->unmistakable unmisakably->unmistakably unmistakeably->unmistakably @@ -64089,6 +64113,8 @@ wilcard->wildcard wilcards->wildcards wildebeast->wildebeest wildebeasts->wildebeests +wildget->widget +wildgets->widgets wilfull->wilful wilh->will wille->will From 2f3751eafe25de6e844c5355fc32622fde3caef5 Mon Sep 17 00:00:00 2001 From: Johann <86018765+johann1764@users.noreply.github.com> Date: Tue, 23 Sep 2025 17:05:21 +0200 Subject: [PATCH 113/202] Support for Oxford English (rebased) (#3772) Co-authored-by: Eric Larson Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com> --- .github/workflows/autofix.yml | 19 + Makefile | 19 +- codespell_lib/_codespell.py | 9 + .../data/dictionary_en-GB_to_en-US.txt | 11 +- .../dictionary_en_to_en-OX_AUTOGENERATED.txt | 552 ++++++++++++++++++ codespell_lib/tests/test_dictionary.py | 11 +- tools/gen_OX.sh | 48 ++ tox.ini | 12 +- 8 files changed, 665 insertions(+), 16 deletions(-) create mode 100644 .github/workflows/autofix.yml create mode 100644 codespell_lib/data/dictionary_en_to_en-OX_AUTOGENERATED.txt create mode 100755 tools/gen_OX.sh diff --git a/.github/workflows/autofix.yml b/.github/workflows/autofix.yml new file mode 100644 index 0000000000..78a1567506 --- /dev/null +++ b/.github/workflows/autofix.yml @@ -0,0 +1,19 @@ +name: autofix.ci + +on: # yamllint disable-line rule:truthy + pull_request: + types: [opened, synchronize, labeled, unlabeled] + +permissions: + contents: read + +jobs: + autofix: + name: Regenerate autogenerated files + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v5 + with: + persist-credentials: false + - run: make codespell_lib/data/dictionary_en_to_en-OX_AUTOGENERATED.txt + - uses: autofix-ci/action@635ffb0c9798bd160680f18fd73371e355b85f27 diff --git a/Makefile b/Makefile index 329f9612a8..fdbad92948 100644 --- a/Makefile +++ b/Makefile @@ -1,16 +1,21 @@ -DICTIONARIES := codespell_lib/data/dictionary*.txt codespell_lib/tests/data/*.wordlist +DICTIONARIES = codespell_lib/data/dictionary*.txt codespell_lib/tests/data/*.wordlist PHONY := all check check-dictionaries sort-dictionaries trim-dictionaries check-dist pytest pypi ruff clean -all: check-dictionaries codespell.1 +GENERATED := codespell_lib/data/dictionary_en_to_en-OX_AUTOGENERATED.txt -check: check-dictionaries check-dist pytest ruff +all: $(GENERATED) check-dictionaries codespell.1 + +check: $(GENERATED) check-dictionaries check-dist pytest ruff + +$(GENERATED): codespell_lib/data/dictionary_en-GB_to_en-US.txt ./tools/gen_OX.sh + ./tools/gen_OX.sh codespell_lib/data/dictionary_en-GB_to_en-US.txt > codespell_lib/data/dictionary_en_to_en-OX_AUTOGENERATED.txt codespell.1: codespell.1.include Makefile PYTHONPATH=. help2man codespell --include codespell.1.include --no-info --output codespell.1 sed -i '/\.SS \"Usage/,+2d' codespell.1 -check-dictionaries: +check-dictionaries: sort-dictionaries @for dictionary in ${DICTIONARIES}; do \ if grep -E -n "^\s*$$|\s$$|^\s" $$dictionary; then \ echo "Dictionary $$dictionary contains leading/trailing whitespace and/or blank lines. Trim with 'make trim-dictionaries'"; \ @@ -24,10 +29,10 @@ check-dictionaries: exit 1; \ fi -sort-dictionaries: +sort-dictionaries: $(GENERATED) pre-commit run --all-files file-contents-sorter -trim-dictionaries: +trim-dictionaries: $(GENERATED) @for dictionary in ${DICTIONARIES}; do \ sed -E -i.bak -e 's/^[[:space:]]+//; s/[[:space:]]+$$//; /^$$/d' $$dictionary && rm $$dictionary.bak; \ done @@ -41,7 +46,7 @@ check-dist: ruff: pre-commit run --all-files ruff-check -pytest: +pytest: sort-dictionaries @if command -v pytest > /dev/null; then \ pytest codespell_lib; \ else \ diff --git a/codespell_lib/_codespell.py b/codespell_lib/_codespell.py index f86ec4f98b..5153006bb6 100644 --- a/codespell_lib/_codespell.py +++ b/codespell_lib/_codespell.py @@ -123,6 +123,15 @@ ("en_GB",), ("en_US",), ), + ( + "en_to_en-OX", + "for corrections from en to en-OX", + "_en_to_en-OX_AUTOGENERATED", + None, + None, + None, + None, + ), ) _builtin_default = "clear,rare" diff --git a/codespell_lib/data/dictionary_en-GB_to_en-US.txt b/codespell_lib/data/dictionary_en-GB_to_en-US.txt index adab0d1277..2b160ffb9d 100644 --- a/codespell_lib/data/dictionary_en-GB_to_en-US.txt +++ b/codespell_lib/data/dictionary_en-GB_to_en-US.txt @@ -69,6 +69,7 @@ characterise->characterize characterised->characterized characterises->characterizes characterising->characterizing +civilisation->civilization cognisant->cognizant colour->color colouration->coloration @@ -258,6 +259,7 @@ manoeuvres->maneuvers manoeuvring->maneuvering marshalled->marshaled marshalling->marshaling +maths->math maximisation->maximization maximise->maximize maximised->maximized @@ -359,7 +361,7 @@ polarises->polarizes polarising->polarizing practise->practice practised->practiced -practises->practiced +practises->practices practising->practicing pretence->pretense pretences->pretenses @@ -368,6 +370,7 @@ prioritise->prioritize prioritised->prioritized prioritises->prioritizes prioritising->prioritizing +programme->program publicise->publicize publicised->publicized publicises->publicizes @@ -400,6 +403,8 @@ recognising->recognizing refocussed->refocused refocusses->refocuses refocussing->refocusing +refuelled->refueled +refuelling->refueling regularisation->regularization regularise->regularize regularised->regularized @@ -420,6 +425,8 @@ reparameterised->reparameterized reparameterises->reparameterizes reparameterising->reparameterizing rigour->rigor +routeing->routing +saleable->salable sanitisation->sanitization sanitise->sanitize sanitised->sanitized @@ -489,6 +496,8 @@ synthesiser->synthesizer synthesisers->synthesizers synthesises->synthesizes synthesising->synthesizing +titbit->tidbit +titbits->tidbits totalled->totaled totalling->totaling unauthorised->unauthorized diff --git a/codespell_lib/data/dictionary_en_to_en-OX_AUTOGENERATED.txt b/codespell_lib/data/dictionary_en_to_en-OX_AUTOGENERATED.txt new file mode 100644 index 0000000000..7ae562d70a --- /dev/null +++ b/codespell_lib/data/dictionary_en_to_en-OX_AUTOGENERATED.txt @@ -0,0 +1,552 @@ +acknowledgment->acknowledgement +acknowledgments->acknowledgements +aggrandise->aggrandize +aggrandised->aggrandized +aggrandisement->aggrandizement +aggrandises->aggrandizes +aggrandising->aggrandizing +aluminum->aluminium +amortise->amortize +amortised->amortized +amortises->amortizes +amortising->amortizing +analog->analogue +analyze->analyse +analyzed->analysed +analyzer->analyser +analyzers->analysers +analyzing->analysing +apologise->apologize +apologised->apologized +apologises->apologizes +apologising->apologizing +armor->armour +armored->armoured +armoring->armouring +armors->armours +armory->armoury +artifact->artefact +artifacts->artefacts +authorisation->authorization +authorisations->authorizations +authorise->authorize +authorised->authorized +authorises->authorizes +authorising->authorizing +bastardise->bastardize +bastardised->bastardized +bastardises->bastardizes +bastardising->bastardizing +behavior->behaviour +behavioral->behavioural +behaviors->behaviours +biased->biassed +canceled->cancelled +canceling->cancelling +capitalisation->capitalization +capitalise->capitalize +capitalised->capitalized +capitalises->capitalizes +capitalising->capitalizing +catalog->catalogue +catalogs->catalogues +categorise->categorize +categorised->categorized +categorises->categorizes +center->centre +centered->centred +centers->centres +centimeter->centimetre +centimeters->centimetres +centralisation->centralization +centralise->centralize +centralised->centralized +centralises->centralizes +centralising->centralizing +characterisation->characterization +characterisations->characterizations +characterise->characterize +characterised->characterized +characterises->characterizes +characterising->characterizing +civilisation->civilization +cognizant->cognisant +color->colour +coloration->colouration +colorations->colourations +colored->coloured +colorful->colourful +colorfully->colourfully +coloring->colouring +colorizable->colourizable +colorization->colourization +colorizations->colourizations +colorize->colourize +colorized->colourized +colorizer->colourizer +colorizes->colourizes +colorizing->colourizing +colorless->colourless +colors->colours +colourisable->colourizable +colourisation->colourization +colourisations->colourizations +colourise->colourize +colourised->colourized +colouriser->colourizer +colourises->colourizes +colourising->colourizing +counselor->counsellor +criticise->criticize +criticised->criticized +criticises->criticizes +criticising->criticizing +crystallisation->crystallization +crystallise->crystallize +crystallised->crystallized +crystallises->crystallizes +crystallising->crystallizing +customisable->customizable +customisation->customization +customise->customize +customised->customized +customises->customizes +customising->customizing +daemonise->daemonize +daemonised->daemonized +daemonises->daemonizes +daemonising->daemonizing +decentralisation->decentralization +decentralise->decentralize +decentralised->decentralized +decentralises->decentralizes +decentralising->decentralizing +defence->defense +defenceless->defenseless +defences->defenses +demonise->demonize +demonised->demonized +demonises->demonizes +demonising->demonizing +deserialisation->deserialization +deserialise->deserialize +deserialised->deserialized +deserialises->deserializes +deserialising->deserializing +dialog->dialogue +dialogs->dialogues +digitisation->digitization +digitise->digitize +digitised->digitized +digitises->digitizes +digitising->digitizing +disfavor->disfavour +dishonor->dishonour +dishonorable->dishonourable +dishonored->dishonoured +dishonoring->dishonouring +dishonors->dishonours +donut->doughnut +donuts->doughnuts +economise->economize +emphasise->emphasize +emphasised->emphasized +emphasises->emphasizes +emphasising->emphasizing +enamor->enamour +enamored->enamoured +enamoring->enamouring +enamors->enamours +endeavor->endeavour +endeavored->endeavoured +endeavoring->endeavouring +endeavors->endeavours +enroll->enrol +enrollment->enrolment +enrollments->enrolments +enrolls->enrols +equalisation->equalization +equalise->equalize +equalised->equalized +equaliser->equalizer +equalises->equalizes +equalising->equalizing +equalizers->equalisers +favor->favour +favorable->favourable +favored->favoured +favoring->favouring +favorite->favourite +favorites->favourites +favoritism->favouritism +favorizable->favourizable +favorize->favourize +favorized->favourized +favorizes->favourizes +favorizing->favourizing +favors->favours +favourisable->favourizable +favourise->favourize +favourised->favourized +favourises->favourizes +favourising->favourizing +finalisation->finalization +finalise->finalize +finalised->finalized +finalises->finalizes +finalising->finalizing +flavor->flavour +flavors->flavours +focussed->focused +focusses->focuses +focussing->focusing +formalisation->formalization +formalise->formalize +formalised->formalized +formalises->formalizes +formalising->formalizing +fulfill->fulfil +fulfills->fulfils +generalisation->generalization +generalisations->generalizations +generalise->generalize +generalised->generalized +generalises->generalizes +generalising->generalizing +gray->grey +grayed->greyed +grayish->greyish +grays->greys +grayscale->greyscale +hemorrhage->haemorrhage +hemorrhaged->haemorrhaged +hemorrhages->haemorrhages +hemorrhagic->haemorrhagic +hemorrhaging->haemorrhaging +honor->honour +honored->honoured +honoring->honouring +honors->honours +humor->humour +hypothesise->hypothesize +hypothesised->hypothesized +hypothesises->hypothesizes +hypothesising->hypothesizing +initialisation->initialization +initialise->initialize +initialised->initialized +initialises->initializes +initialising->initializing +internationalisation->internationalization +internationalise->internationalize +internationalised->internationalized +internationalises->internationalizes +internationalising->internationalizing +italicise->italicize +italicised->italicized +italicises->italicizes +italicising->italicizing +journaling->journalling +judgment->judgement +judgments->judgements +kilometer->kilometre +kilometers->kilometres +labeled->labelled +labeling->labelling +labor->labour +labored->laboured +laborer->labourer +laborers->labourers +laboring->labouring +labors->labours +lambaste->lambast +lambastes->lambasts +legalisation->legalization +legalise->legalize +legalised->legalized +legalises->legalizes +legalising->legalizing +leukemia->leukaemia +licensing->licencing +liter->litre +liters->litres +localisation->localization +localisations->localizations +localise->localize +localised->localized +localises->localizes +localising->localizing +maneuver->manoeuvre +maneuvered->manoeuvred +maneuvering->manoeuvring +maneuvers->manoeuvres +marshaled->marshalled +marshaling->marshalling +math->maths +maximisation->maximization +maximise->maximize +maximised->maximized +maximises->maximizes +maximising->maximizing +memorisation->memorization +memorise->memorize +memorised->memorized +memorises->memorizes +memorising->memorizing +meter->metre +meters->metres +millimeter->millimetre +millimeters->millimetres +minimisation->minimization +minimise->minimize +minimised->minimized +minimises->minimizes +minimising->minimizing +miter->mitre +modeled->modelled +modeler->modeller +modelers->modellers +modeling->modelling +modernise->modernize +modernised->modernized +modernises->modernizes +modernising->modernizing +mold->mould +molds->moulds +nasalisation->nasalization +nationalisation->nationalization +nationalisations->nationalizations +nationalise->nationalize +nationalised->nationalized +nationalises->nationalizes +nationalising->nationalizing +neighbor->neighbour +neighboring->neighbouring +neighbors->neighbours +normalisation->normalization +normalisations->normalizations +normalise->normalize +normalised->normalized +normalises->normalizes +normalising->normalizing +ocher->ochre +ocherous->ochreous +ochery->ochrey +optimisation->optimization +optimisations->optimizations +optimise->optimize +optimised->optimized +optimiser->optimizer +optimises->optimizes +optimising->optimizing +organisation->organization +organisations->organizations +organise->organize +organised->organized +organiser->organizer +organises->organizes +organising->organizing +organizational->organisational +organizers->organisers +overwritable->overwriteable +parallelisation->parallelization +parallelise->parallelize +parallelised->parallelized +parallelises->parallelizes +parallelising->parallelizing +parameterisable->parameterizable +parameterisation->parameterization +parameterise->parameterize +parameterised->parameterized +parameterises->parameterizes +parameterising->parameterizing +paravirtualisation->paravirtualization +paravirtualise->paravirtualize +paravirtualised->paravirtualized +paravirtualises->paravirtualizes +paravirtualising->paravirtualizing +pasteurisation->pasteurization +pasteurise->pasteurize +pasteurised->pasteurized +pasteurises->pasteurizes +pasteurising->pasteurizing +penalise->penalize +penalised->penalized +penalises->penalizes +penalising->penalizing +plagiarise->plagiarize +plagiarised->plagiarized +plagiarises->plagiarizes +plagiarising->plagiarizing +polarise->polarize +polarised->polarized +polarises->polarizes +polarising->polarizing +practicing->practising +pretense->pretence +pretenses->pretences +prioritisation->prioritization +prioritise->prioritize +prioritised->prioritized +prioritises->prioritizes +prioritising->prioritizing +publicise->publicize +publicised->publicized +publicises->publicizes +publicising->publicizing +randomise->randomize +randomised->randomized +randomises->randomizes +randomising->randomizing +rasterisation->rasterization +rasterise->rasterize +rasterised->rasterized +rasterises->rasterizes +rasterising->rasterizing +rationalisation->rationalization +rationalise->rationalize +rationalised->rationalized +rationalising->rationalizing +realisable->realizable +realisation->realization +realisations->realizations +realise->realize +realised->realized +realises->realizes +realising->realizing +recognisable->recognizable +recognise->recognize +recognised->recognized +recognises->recognizes +recognising->recognizing +refocused->refocussed +refocuses->refocusses +refocusing->refocussing +refueled->refuelled +refueling->refuelling +regularisation->regularization +regularise->regularize +regularised->regularized +regularises->regularizes +regularising->regularizing +reinitialise->reinitialize +reinitialised->reinitialized +reinitialises->reinitializes +reinitialising->reinitializing +reorganisation->reorganization +reorganisations->reorganizations +reorganise->reorganize +reorganised->reorganized +reorganises->reorganizes +reorganising->reorganizing +reparameterise->reparameterize +reparameterised->reparameterized +reparameterises->reparameterizes +reparameterising->reparameterizing +rigor->rigour +routing->routeing +salable->saleable +sanitisation->sanitization +sanitise->sanitize +sanitised->sanitized +sanitiser->sanitizer +sanitises->sanitizes +sanitising->sanitizing +sanitizers->sanitisers +serialisation->serialization +serialise->serialize +serialised->serialized +serialises->serializes +serialising->serializing +signaled->signalled +signaling->signalling +skeptical->sceptical +skillful->skilful +skillfully->skilfully +skillfulness->skilfulness +specialisation->specialization +specialisations->specializations +specialise->specialize +specialised->specialized +specialises->specializes +specialising->specializing +specialties->specialities +specialty->speciality +splendor->splendour +standardisation->standardization +standardise->standardize +standardised->standardized +standardises->standardizes +standardising->standardizing +sterilisation->sterilization +sterilisations->sterilizations +sterilise->sterilize +sterilised->sterilized +steriliser->sterilizer +sterilises->sterilizes +sterilising->sterilizing +sulfate->sulphate +sulfide->sulphide +sulfur->sulphur +sulfureous->sulphureous +sulfuric->sulphuric +sulfurous->sulphurous +summarise->summarize +summarised->summarized +summarises->summarizes +summarising->summarizing +symbolise->symbolize +symbolised->symbolized +symbolises->symbolizes +symbolising->symbolizing +synchronisation->synchronization +synchronisations->synchronizations +synchronise->synchronize +synchronised->synchronized +synchroniser->synchronizer +synchronises->synchronizes +synchronising->synchronizing +synchronizers->synchronisers +synthesise->synthesize +synthesised->synthesized +synthesiser->synthesizer +synthesises->synthesizes +synthesising->synthesizing +synthesizers->synthesisers +tidbit->titbit +tidbits->titbits +totaled->totalled +totaling->totalling +unauthorised->unauthorized +unfavorable->unfavourable +unfavorably->unfavourably +uninitialised->uninitialized +unorganised->unorganized +unrecognisable->unrecognizable +unrecognised->unrecognized +unsynchronised->unsynchronized +utilisable->utilizable +utilisation->utilization +utilise->utilize +utilised->utilized +utilises->utilizes +utilising->utilizing +vectorisation->vectorization +vectorisations->vectorizations +vectorise->vectorize +vectorised->vectorized +vectorises->vectorizes +vectorising->vectorizing +virtualisation->virtualization +virtualise->virtualize +virtualised->virtualized +virtualises->virtualizes +virtualising->virtualizing +visualisation->visualization +visualisations->visualizations +visualise->visualize +visualised->visualized +visualiser->visualizer +visualises->visualizes +visualising->visualizing +writable->writeable diff --git a/codespell_lib/tests/test_dictionary.py b/codespell_lib/tests/test_dictionary.py index 8ce19ff2bd..4411c49225 100644 --- a/codespell_lib/tests/test_dictionary.py +++ b/codespell_lib/tests/test_dictionary.py @@ -284,12 +284,19 @@ def test_error_checking_in_aspell( allowed_dups = { ("dictionary.txt", "dictionary_code.txt"), ("dictionary.txt", "dictionary_en-GB_to_en-US.txt"), + ("dictionary.txt", "dictionary_en_to_en-OX_AUTOGENERATED.txt"), ("dictionary.txt", "dictionary_names.txt"), ("dictionary.txt", "dictionary_rare.txt"), ("dictionary.txt", "dictionary_usage.txt"), ("dictionary_code.txt", "dictionary_rare.txt"), + ("dictionary_code.txt", "dictionary_en_to_en-OX_AUTOGENERATED.txt"), ("dictionary_rare.txt", "dictionary_en-GB_to_en-US.txt"), + ("dictionary_rare.txt", "dictionary_en_to_en-OX_AUTOGENERATED.txt"), ("dictionary_rare.txt", "dictionary_usage.txt"), + ("dictionary_en-GB_to_en-US.txt", "dictionary_en_to_en-OX_AUTOGENERATED.txt"), + ("dictionary_en_to_en-OX_AUTOGENERATED.txt", "dictionary_en-GB_to_en-US.txt"), + ("dictionary_en_to_en-OX_AUTOGENERATED.txt", "dictionary_rare.txt"), + ("dictionary_en_to_en-OX_AUTOGENERATED.txt", "dictionary_code.txt"), } @@ -330,8 +337,8 @@ def test_dictionary_looping( global_pairs.add(pair) for other_fname, other_err_dict in global_err_dicts.items(): # error duplication (eventually maybe we should just merge?) - for err in this_err_dict: - assert err not in other_err_dict, ( + for err, fix in this_err_dict.items(): + assert err not in other_err_dict or fix == other_err_dict[err], ( f"error {err!r} in dictionary {short_fname} " f"already exists in dictionary {other_fname}" ) diff --git a/tools/gen_OX.sh b/tools/gen_OX.sh new file mode 100755 index 0000000000..00c33b29e5 --- /dev/null +++ b/tools/gen_OX.sh @@ -0,0 +1,48 @@ +#!/bin/bash + +one_of() { + LIST="$*" + echo '\(\('"${LIST// /\\)\\|\\(}"'\)\)' +} + +SUFFIXES=( + "ize" + "izes" + "izer" + "izable" + "ized" + "izing" + "izement" + "ization" + "izations" +) +PAT1="$(one_of "${SUFFIXES[@]}")$" + +# choose US for these ones +EXCEPTIONS=( + 'defenc' + 'focuss' +) +PAT2="^$(one_of "${EXCEPTIONS[@]}")" + +# these one should be left out +IGNORE=( + 'storey' + 'practise' + 'programme' + 'licence' +) +PAT3="^$(one_of "${IGNORE[@]}")" + +( + grep -e "$PAT1" -e "$PAT2" "$1" | grep -v "$PAT3" | grep -v '^\(colouris\)\|\(favouris\)' + for i in e es ed ing ation ations er able; do + echo "colouris$i->colouriz$i" + echo "coloriz$i->colouriz$i" + done + for i in e es ed ing able; do + echo "favouris$i->favouriz$i" + echo "favoriz$i->favouriz$i" + done + grep -v -e "$PAT1" -e "$PAT2" "$1" | grep -v "$PAT3" | sed 's/^\(.*\)->\(.*\)$/\2->\1/' +) | sort -f -t- -k 1b,1 diff --git a/tox.ini b/tox.ini index 2876ddeffe..6e0850475b 100644 --- a/tox.ini +++ b/tox.ini @@ -2,6 +2,12 @@ min_version = 4.0 env_list = unitest,type,dictionaries +[testenv:dictionaries] +description = run dictionary checks +skip_install = true +allowlist_externals = make +commands = make check-dictionaries + [testenv:unitest] description = run unit tests extras = dev @@ -11,9 +17,3 @@ commands = pytest --cov=codespell_lib codespell_lib description = run type checks extras = types commands = mypy codespell_lib - -[testenv:dictionaries] -description = run dictionary checks -skip_install = true -allowlist_externals = make -commands = make check-dictionaries From 69095e448f4952ce59bbff366475d2865745071b Mon Sep 17 00:00:00 2001 From: Christian Clauss Date: Tue, 30 Sep 2025 11:56:16 +0200 Subject: [PATCH 114/202] Add Python version 3.14 to tests CI workflow --- .github/workflows/tests.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/.github/workflows/tests.yml b/.github/workflows/tests.yml index c6830bd5e4..187e582b2d 100644 --- a/.github/workflows/tests.yml +++ b/.github/workflows/tests.yml @@ -25,6 +25,7 @@ jobs: - "3.11" - "3.12" - "3.13" + - "3.14" kind: - "standard" os: From 70a556d4bf2c2eafcd6e98b5551c463932e242af Mon Sep 17 00:00:00 2001 From: "pre-commit-ci[bot]" <66853113+pre-commit-ci[bot]@users.noreply.github.com> Date: Mon, 6 Oct 2025 17:23:50 +0000 Subject: [PATCH 115/202] [pre-commit.ci] pre-commit autoupdate MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit updates: - [github.com/astral-sh/ruff-pre-commit: v0.12.11 → v0.13.3](https://github.com/astral-sh/ruff-pre-commit/compare/v0.12.11...v0.13.3) - [github.com/pre-commit/mirrors-mypy: v1.17.1 → v1.18.2](https://github.com/pre-commit/mirrors-mypy/compare/v1.17.1...v1.18.2) --- .pre-commit-config.yaml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.pre-commit-config.yaml b/.pre-commit-config.yaml index 79ecfa27fb..03ac70b114 100644 --- a/.pre-commit-config.yaml +++ b/.pre-commit-config.yaml @@ -58,7 +58,7 @@ repos: - -d - "{extends: relaxed, rules: {line-length: {max: 90}}}" - repo: https://github.com/astral-sh/ruff-pre-commit - rev: v0.12.11 + rev: v0.13.3 hooks: - id: ruff-check - id: ruff-format @@ -79,7 +79,7 @@ repos: hooks: - id: validate-pyproject - repo: https://github.com/pre-commit/mirrors-mypy - rev: v1.17.1 + rev: v1.18.2 hooks: - id: mypy args: ["--config-file", "pyproject.toml"] From 0d0d2dd44b86ed427e9255cf20849b6a02060216 Mon Sep 17 00:00:00 2001 From: Alex Overchenko Date: Sun, 19 Oct 2025 17:53:25 +0300 Subject: [PATCH 116/202] Fix version typo (#3786) --- codespell_lib/data/dictionary.txt | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/codespell_lib/data/dictionary.txt b/codespell_lib/data/dictionary.txt index 08b70cbc40..2b5bb61b71 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -63223,6 +63223,10 @@ vesion->version vesioned->versioned vesioning->versioning vesions->versions +vesrion->version +vesrioned->versioned +vesrioning->versioning +vesrions->versions vetex->vertex vetexes->vertices vetical->vertical From d3607d720050a9605bcd9efb34fd85531a4456ad Mon Sep 17 00:00:00 2001 From: Ashish Date: Tue, 23 Sep 2025 16:01:38 +0530 Subject: [PATCH 117/202] Add unsuccessfuly -> unsuccessfully --- codespell_lib/data/dictionary.txt | 1 + 1 file changed, 1 insertion(+) diff --git a/codespell_lib/data/dictionary.txt b/codespell_lib/data/dictionary.txt index 2b5bb61b71..fab251c5e8 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -62065,6 +62065,7 @@ unsuccesfull->unsuccessful unsuccesfully->unsuccessfully unsuccess->unsuccessful unsuccessfull->unsuccessful +unsuccessfuly->unsuccessfully unsuccessfullly->unsuccessfully unsucesful->unsuccessful unsucesfull->unsuccessful From 4c29dd680a6cdaecf96c9d55b78df6d0f2298212 Mon Sep 17 00:00:00 2001 From: "pre-commit-ci[bot]" <66853113+pre-commit-ci[bot]@users.noreply.github.com> Date: Tue, 23 Sep 2025 10:33:10 +0000 Subject: [PATCH 118/202] [pre-commit.ci] auto fixes from pre-commit.com hooks for more information, see https://pre-commit.ci --- codespell_lib/data/dictionary.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/codespell_lib/data/dictionary.txt b/codespell_lib/data/dictionary.txt index fab251c5e8..b24f22d024 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -62065,8 +62065,8 @@ unsuccesfull->unsuccessful unsuccesfully->unsuccessfully unsuccess->unsuccessful unsuccessfull->unsuccessful -unsuccessfuly->unsuccessfully unsuccessfullly->unsuccessfully +unsuccessfuly->unsuccessfully unsucesful->unsuccessful unsucesfull->unsuccessful unsucesfully->unsuccessfully From 8d005c8decffa5c939f63b4e9f94c7d4c2737539 Mon Sep 17 00:00:00 2001 From: Christian Fischer Date: Wed, 1 Oct 2025 14:33:54 +0200 Subject: [PATCH 119/202] Add spelling correction for buest. --- codespell_lib/data/dictionary.txt | 1 + 1 file changed, 1 insertion(+) diff --git a/codespell_lib/data/dictionary.txt b/codespell_lib/data/dictionary.txt index b24f22d024..893117abe6 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -10302,6 +10302,7 @@ bubbless->bubbles buda->Buddha Buddah->Buddha Buddist->Buddhist +buest->burst, best, guest, bust, bluest, bufefr->buffer bufer->buffer bufers->buffers From 87080a61beac9dc8fb3acec616a27cc4ef342db0 Mon Sep 17 00:00:00 2001 From: AJIOB Date: Sat, 4 Oct 2025 13:09:53 +0000 Subject: [PATCH 120/202] Fix iterator typo from CMake repo --- codespell_lib/data/dictionary.txt | 2 ++ 1 file changed, 2 insertions(+) diff --git a/codespell_lib/data/dictionary.txt b/codespell_lib/data/dictionary.txt index 893117abe6..69ee205599 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -58844,6 +58844,8 @@ teraforming->terraforming teraforms->terraforms terain->terrain, train, terains->terrains, trains, +terator->iterator +terators->iterators terfform->terraform terfformed->terraformed terfforming->terraforming From 28613727dacb3b7aac8ec43086b96f0b314e6e5b Mon Sep 17 00:00:00 2001 From: Christian Fischer Date: Thu, 9 Oct 2025 10:31:54 +0200 Subject: [PATCH 121/202] Add spelling corrections for exclude and variants. --- codespell_lib/data/dictionary.txt | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/codespell_lib/data/dictionary.txt b/codespell_lib/data/dictionary.txt index 69ee205599..cc14c50cbb 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -26647,6 +26647,14 @@ exlpicitly->explicitly exlpoit->exploit exlpoited->exploited exlpoits->exploits +exlucde->exclude +exlucded->excluded +exlucdes->excludes +exlucding->excluding +exlucsion->exclusion +exlucsions->exclusions +exlucsive->exclusive +exlucsively->exclusively exlude->exclude, exude, exluded->excluded, exuded, exludes->excludes, exudes, From e4d53765aca158d4095154f04954b8b328ac1092 Mon Sep 17 00:00:00 2001 From: user27182 <89109579+user27182@users.noreply.github.com> Date: Fri, 10 Oct 2025 20:55:14 -0600 Subject: [PATCH 122/202] wheen->wheel, when, --- codespell_lib/data/dictionary.txt | 1 + 1 file changed, 1 insertion(+) diff --git a/codespell_lib/data/dictionary.txt b/codespell_lib/data/dictionary.txt index cc14c50cbb..d2443762a8 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -63975,6 +63975,7 @@ whcih->which whe->when, we, wheareas->whereas wheather->weather, whether, +wheen->wheel, when, wheh->when whehter->whether wheigh->weigh From ea9e32f77f287ca10498ea8db6e62d62e4c6b170 Mon Sep 17 00:00:00 2001 From: user27182 <89109579+user27182@users.noreply.github.com> Date: Mon, 20 Oct 2025 00:36:42 -0600 Subject: [PATCH 123/202] mulit->multi --- codespell_lib/data/dictionary.txt | 1 + 1 file changed, 1 insertion(+) diff --git a/codespell_lib/data/dictionary.txt b/codespell_lib/data/dictionary.txt index d2443762a8..44dc45b900 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -39195,6 +39195,7 @@ mulipliers->multipliers muliplies->multiplies muliply->multiply muliplying->multiplying +mulit->multi mulitcast->multicast mulithread->multithread mulithreaded->multithreaded From 7fe8eed116bac8c62f6f324a2987c62d5f74c0d1 Mon Sep 17 00:00:00 2001 From: AJIOB Date: Tue, 21 Oct 2025 07:16:16 +0000 Subject: [PATCH 124/202] Fix introduction typo --- codespell_lib/data/dictionary.txt | 2 ++ 1 file changed, 2 insertions(+) diff --git a/codespell_lib/data/dictionary.txt b/codespell_lib/data/dictionary.txt index 44dc45b900..6b048f5a66 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -35267,6 +35267,8 @@ intrisics->intrinsics intrisinc->intrinsic intrisincally->intrinsically intrisincs->intrinsics +introdcution->introduction +introdcutions->introductions introducin->introducing introducted->introduced introducting->introducing From f616b06461207d3639d6efd794c4ba7c1cfe898d Mon Sep 17 00:00:00 2001 From: Christian Fischer Date: Tue, 21 Oct 2025 11:11:42 +0200 Subject: [PATCH 125/202] Add spelling correction for inherent and variant. --- codespell_lib/data/dictionary.txt | 2 ++ 1 file changed, 2 insertions(+) diff --git a/codespell_lib/data/dictionary.txt b/codespell_lib/data/dictionary.txt index 6b048f5a66..294dff87cc 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -33198,6 +33198,8 @@ ingration->integration ingreediants->ingredients inh->in inhabitans->inhabitants +inheent->inherent +inheently->inherently inherantly->inherently inherat->inherit inheratance->inheritance From 8d43c236592bbb01c2e244bfdb7147871276cd8c Mon Sep 17 00:00:00 2001 From: AJIOB Date: Sat, 4 Oct 2025 13:05:51 +0000 Subject: [PATCH 126/202] Characteristic typo fix --- codespell_lib/data/dictionary.txt | 2 ++ 1 file changed, 2 insertions(+) diff --git a/codespell_lib/data/dictionary.txt b/codespell_lib/data/dictionary.txt index 294dff87cc..6062afe023 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -30692,6 +30692,8 @@ happpened->happened happpening->happening happpenings->happenings happpens->happens +haracteristic->characteristic +haracteristics->characteristics haranguin->haranguing harased->harassed harases->harasses From b58069b61f3e845585d521032c5bea72c9241d9d Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 27 Oct 2025 02:04:44 +0000 Subject: [PATCH 127/202] Bump actions/download-artifact from 5 to 6 Bumps [actions/download-artifact](https://github.com/actions/download-artifact) from 5 to 6. - [Release notes](https://github.com/actions/download-artifact/releases) - [Commits](https://github.com/actions/download-artifact/compare/v5...v6) --- updated-dependencies: - dependency-name: actions/download-artifact dependency-version: '6' dependency-type: direct:production update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] --- .github/workflows/release.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index ee59f5e681..552e8a13e8 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -47,7 +47,7 @@ jobs: runs-on: ubuntu-latest if: github.event_name == 'release' steps: - - uses: actions/download-artifact@v5 + - uses: actions/download-artifact@v6 with: name: dist path: dist From 9ee735b8d6a6f40d7c214f7d0d6872e1c9098b39 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 27 Oct 2025 02:04:54 +0000 Subject: [PATCH 128/202] Bump actions/upload-artifact from 4 to 5 Bumps [actions/upload-artifact](https://github.com/actions/upload-artifact) from 4 to 5. - [Release notes](https://github.com/actions/upload-artifact/releases) - [Commits](https://github.com/actions/upload-artifact/compare/v4...v5) --- updated-dependencies: - dependency-name: actions/upload-artifact dependency-version: '5' dependency-type: direct:production update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] --- .github/workflows/release.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index 552e8a13e8..13eead66e6 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -36,7 +36,7 @@ jobs: - name: Check env vars run: | echo "Triggered by: ${{ github.event_name }}" - - uses: actions/upload-artifact@v4 + - uses: actions/upload-artifact@v5 with: name: dist path: dist From 0cd77ee7bdccdd0a2118d21ec419b1d1a870745b Mon Sep 17 00:00:00 2001 From: Julian Stirling Date: Fri, 31 Oct 2025 13:19:42 +0000 Subject: [PATCH 129/202] Add movemenet(s) -> movement(s) (#3794) --- codespell_lib/data/dictionary.txt | 2 ++ 1 file changed, 2 insertions(+) diff --git a/codespell_lib/data/dictionary.txt b/codespell_lib/data/dictionary.txt index 6062afe023..5c50412f95 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -39131,6 +39131,8 @@ movememnt->movement movememnts->movements movememt->movement movememts->movements +movemenet->movement +movemenets->movements movemet->movement movemets->movements movemment->movement From 0f5511fb2acc04d198b08f17a68dae7bdc0b33ea Mon Sep 17 00:00:00 2001 From: Peter Newman Date: Mon, 3 Nov 2025 16:54:40 +0000 Subject: [PATCH 130/202] Add sequeunce->sequence and friends Add multiple misspellings related to 'sequeunce'. --- codespell_lib/data/dictionary.txt | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/codespell_lib/data/dictionary.txt b/codespell_lib/data/dictionary.txt index 5c50412f95..cf888e40cf 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -53576,6 +53576,13 @@ sequenzers->sequencers sequenzes->sequences sequenzing->sequencing sequetial->sequential +sequeunce->sequence +sequeunced->sequenced +sequeuncer->sequencer +sequeuncers->sequencers +sequeunces->sequences +sequeuncing->sequencing +sequeuntial->sequential sequeze->squeeze, sequence, sequnce->sequence sequnced->sequenced From 4ae0868d6213dfbc9974933065134db01d23683d Mon Sep 17 00:00:00 2001 From: "pre-commit-ci[bot]" <66853113+pre-commit-ci[bot]@users.noreply.github.com> Date: Mon, 3 Nov 2025 17:15:56 +0000 Subject: [PATCH 131/202] [pre-commit.ci] pre-commit autoupdate MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit updates: - [github.com/executablebooks/mdformat: 0.7.22 → 1.0.0](https://github.com/executablebooks/mdformat/compare/0.7.22...1.0.0) - [github.com/astral-sh/ruff-pre-commit: v0.13.3 → v0.14.3](https://github.com/astral-sh/ruff-pre-commit/compare/v0.13.3...v0.14.3) --- .pre-commit-config.yaml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.pre-commit-config.yaml b/.pre-commit-config.yaml index 03ac70b114..4d45bc253e 100644 --- a/.pre-commit-config.yaml +++ b/.pre-commit-config.yaml @@ -4,7 +4,7 @@ exclude: ^(\.[^/]*cache/.*)$ repos: - repo: https://github.com/executablebooks/mdformat # Do this before other tools "fixing" the line endings - rev: 0.7.22 + rev: 1.0.0 hooks: - id: mdformat name: Format Markdown @@ -58,7 +58,7 @@ repos: - -d - "{extends: relaxed, rules: {line-length: {max: 90}}}" - repo: https://github.com/astral-sh/ruff-pre-commit - rev: v0.13.3 + rev: v0.14.3 hooks: - id: ruff-check - id: ruff-format From ebc269e4cc3c283226a7a0a60b13bfb56c7efbba Mon Sep 17 00:00:00 2001 From: Flo Edelmann Date: Tue, 4 Nov 2025 15:16:50 +0100 Subject: [PATCH 132/202] =?UTF-8?q?Add=20prelimary=20=E2=86=92=20prelimina?= =?UTF-8?q?ry?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- codespell_lib/data/dictionary.txt | 1 + 1 file changed, 1 insertion(+) diff --git a/codespell_lib/data/dictionary.txt b/codespell_lib/data/dictionary.txt index cf888e40cf..2ec7006731 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -45831,6 +45831,7 @@ prejudgudices->prejudices prejudgudicing->prejudicing prejudicin->prejudicing preliferation->proliferation +prelimary->preliminary prelimitary->preliminary prematurelly->prematurely premeire->premiere From 954199492ce10139e225b0bf6fdfbf39c4041ea4 Mon Sep 17 00:00:00 2001 From: Flo Edelmann Date: Tue, 4 Nov 2025 15:19:30 +0100 Subject: [PATCH 133/202] =?UTF-8?q?Add=20libaray=20=E2=86=92=20library?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- codespell_lib/data/dictionary.txt | 1 + 1 file changed, 1 insertion(+) diff --git a/codespell_lib/data/dictionary.txt b/codespell_lib/data/dictionary.txt index 2ec7006731..d3bd589881 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -36578,6 +36578,7 @@ liason->liaison liasons->liaisons libararies->libraries libarary->library +libaray->library libaries->libraries libary->library libell->libel From 582cc6fe240caf25dc72ff7eb73bbba053c561cc Mon Sep 17 00:00:00 2001 From: Flo Edelmann Date: Tue, 4 Nov 2025 15:26:20 +0100 Subject: [PATCH 134/202] =?UTF-8?q?Add=20occureneces=20=E2=86=92=20occurre?= =?UTF-8?q?nces?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- codespell_lib/data/dictionary.txt | 1 + 1 file changed, 1 insertion(+) diff --git a/codespell_lib/data/dictionary.txt b/codespell_lib/data/dictionary.txt index d3bd589881..e9a7544807 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -41465,6 +41465,7 @@ occure->occur, occurred, occured->occurred occurence->occurrence occurences->occurrences +occureneces->occurrences occures->occurs occuring->occurring occurr->occur From 67bd7f207dbcd7b011a459df45f1943eca254198 Mon Sep 17 00:00:00 2001 From: Flo Edelmann Date: Tue, 4 Nov 2025 15:27:46 +0100 Subject: [PATCH 135/202] =?UTF-8?q?Add=20utily=20=E2=86=92=20utility?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- codespell_lib/data/dictionary.txt | 1 + 1 file changed, 1 insertion(+) diff --git a/codespell_lib/data/dictionary.txt b/codespell_lib/data/dictionary.txt index e9a7544807..523f34b774 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -62595,6 +62595,7 @@ utilties->utilities utiltities->utilities utiltity->utility utilty->utility +utily->utility utilzation->utilization utilze->utilize utilzed->utilized From 48de97dac6a0efd1eca1cd5ce41f3a4fec4a68fe Mon Sep 17 00:00:00 2001 From: Christian Fischer Date: Thu, 23 Oct 2025 12:38:52 +0200 Subject: [PATCH 136/202] Add/update spelling corrections for vulnerability and variants. --- codespell_lib/data/dictionary.txt | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/codespell_lib/data/dictionary.txt b/codespell_lib/data/dictionary.txt index 523f34b774..02c3b98e8f 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -63710,11 +63710,12 @@ vulnerabiliies->vulnerabilities vulnerabilility->vulnerability vulnerabililties->vulnerabilities vulnerabililty->vulnerability +vulnerabilit->vulnerability, vulnerabilities, vulnerabilites->vulnerabilities -vulnerabiliti->vulnerability -vulnerabilitie->vulnerability +vulnerabiliti->vulnerability, vulnerabilities, +vulnerabilitie->vulnerability, vulnerabilities, vulnerabilitiesy->vulnerability, vulnerabilities, -vulnerabilitis->vulnerabilities +vulnerabilitis->vulnerabilities, vulnerability, vulnerabilitiy->vulnerability vulnerabilitu->vulnerability vulnerabilityies->vulnerability, vulnerabilities, From 52f5b2c9c0e3a2812a7b0fea9745304f6a81c10e Mon Sep 17 00:00:00 2001 From: user27182 <89109579+user27182@users.noreply.github.com> Date: Tue, 4 Nov 2025 14:44:19 -0700 Subject: [PATCH 137/202] autoatic->automatic --- codespell_lib/data/dictionary.txt | 3 +++ 1 file changed, 3 insertions(+) diff --git a/codespell_lib/data/dictionary.txt b/codespell_lib/data/dictionary.txt index 02c3b98e8f..cddba90d0f 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -8592,6 +8592,9 @@ auto-negoziation->auto-negotiation auto-negoziations->auto-negotiations auto-realease->auto-release auto-realeased->auto-released +autoated->automated +autoatic->automatic +autoatically->automatically autochtonous->autochthonous autocmplete->autocomplete autocmpleted->autocompleted From c249d86f3db7ea27d5ee5e7a6e3304f7e4914af6 Mon Sep 17 00:00:00 2001 From: Flo Edelmann Date: Tue, 4 Nov 2025 16:29:42 +0100 Subject: [PATCH 138/202] =?UTF-8?q?Add=20aparttment(s)=20=E2=86=92=20apart?= =?UTF-8?q?ment(s)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- codespell_lib/data/dictionary.txt | 2 ++ 1 file changed, 2 insertions(+) diff --git a/codespell_lib/data/dictionary.txt b/codespell_lib/data/dictionary.txt index cddba90d0f..722df08bc4 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -5220,6 +5220,8 @@ apartmen->apartment apartmens->apartments apartmet->apartment apartmets->apartments +aparttment->apartment +aparttments->apartments apaul->appall apauled->appalled apauling->appalling From f7681e83d704bbdea7d69295597bbdb133eab167 Mon Sep 17 00:00:00 2001 From: Flo Edelmann Date: Tue, 4 Nov 2025 16:26:21 +0100 Subject: [PATCH 139/202] =?UTF-8?q?Add=20indiviudal=20=E2=86=92=20individu?= =?UTF-8?q?al=20and=20friends?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- codespell_lib/data/dictionary.txt | 3 +++ 1 file changed, 3 insertions(+) diff --git a/codespell_lib/data/dictionary.txt b/codespell_lib/data/dictionary.txt index 722df08bc4..76dafca334 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -32973,6 +32973,9 @@ indivisuals->individuals indiviual->individual indiviually->individually indiviuals->individuals +indiviudal->individual +indiviudally->individually +indiviudals->individuals indivual->individual indivually->individually indivuals->individuals From fd6a1edaaf6da1205dff27abd0f4c861452723f0 Mon Sep 17 00:00:00 2001 From: Flo Edelmann Date: Tue, 4 Nov 2025 16:33:30 +0100 Subject: [PATCH 140/202] =?UTF-8?q?Add=20readiblity=20=E2=86=92=20readabil?= =?UTF-8?q?ity?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- codespell_lib/data/dictionary.txt | 1 + 1 file changed, 1 insertion(+) diff --git a/codespell_lib/data/dictionary.txt b/codespell_lib/data/dictionary.txt index 76dafca334..c0a477bf65 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -48245,6 +48245,7 @@ reademe->README readiable->readable readibility->readability readible->readable +readiblity->readability readibly->readably readig->reading readigs->readings From 0505667c25423fafe04886350ac47d774b17f88a Mon Sep 17 00:00:00 2001 From: Flo Edelmann Date: Wed, 5 Nov 2025 09:43:24 +0100 Subject: [PATCH 141/202] =?UTF-8?q?Add=20asterisc(s)=20=E2=86=92=20asteris?= =?UTF-8?q?k(s)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com> Co-authored-by: Dimitri Papadopoulos Orfanos <3234522+DimitriPapadopoulos@users.noreply.github.com> --- codespell_lib/data/dictionary.txt | 2 ++ 1 file changed, 2 insertions(+) diff --git a/codespell_lib/data/dictionary.txt b/codespell_lib/data/dictionary.txt index c0a477bf65..a0149f588d 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -7675,6 +7675,8 @@ asterices->asterisks asterik->asterisk asteriks->asterisk, asterisks, asteriod->asteroid +asterisc->asterisk +asteriscs->asterisks astethic->aesthetic astethically->aesthetically astethicism->aestheticism From 4d5dbeca43b3d324c69e2d258f9f65179de3eabf Mon Sep 17 00:00:00 2001 From: Flo Edelmann Date: Tue, 4 Nov 2025 16:13:06 +0100 Subject: [PATCH 142/202] =?UTF-8?q?Add=20preice(s)=20=E2=86=92=20price(s)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- codespell_lib/data/dictionary.txt | 2 ++ 1 file changed, 2 insertions(+) diff --git a/codespell_lib/data/dictionary.txt b/codespell_lib/data/dictionary.txt index a0149f588d..76eea704a4 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -45824,6 +45824,8 @@ pregressions->progressions pregressive->progressive pregressively->progressively prehaps->perhaps +preice->price +preices->prices preint->print, preprint, preinted->printed, preprinted, preinting->printing, preprinting, From 8c444040f0969722ed06fb6ef822e7c683aaab65 Mon Sep 17 00:00:00 2001 From: Flo Edelmann Date: Tue, 4 Nov 2025 15:56:30 +0100 Subject: [PATCH 143/202] =?UTF-8?q?Add=20visibiltiy=20=E2=86=92=20visibili?= =?UTF-8?q?ty?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- codespell_lib/data/dictionary.txt | 1 + 1 file changed, 1 insertion(+) diff --git a/codespell_lib/data/dictionary.txt b/codespell_lib/data/dictionary.txt index 76eea704a4..965f269110 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -63435,6 +63435,7 @@ visibile->visible visibililty->visibility visibilit->visibility visibiliy->visibly, visibility, +visibiltiy->visibility visibilty->visibility visibily->visibly, visibility, visibl->visible From cf7a19c05015d0fed08fb2467a41d3cf04aefacd Mon Sep 17 00:00:00 2001 From: Flo Edelmann Date: Tue, 4 Nov 2025 15:54:57 +0100 Subject: [PATCH 144/202] =?UTF-8?q?Add=20butto=20=E2=86=92=20button?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- codespell_lib/data/dictionary.txt | 1 + 1 file changed, 1 insertion(+) diff --git a/codespell_lib/data/dictionary.txt b/codespell_lib/data/dictionary.txt index 965f269110..87fe7cfb4f 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -10496,6 +10496,7 @@ butons->buttons butterly->butterfly buttin->button buttins->buttons +butto->button buttom->button, bottom, buttoms->buttons, bottoms, buttong->button From 05c82d4c0218e8e22367e787ce4baaff91dc791b Mon Sep 17 00:00:00 2001 From: Flo Edelmann Date: Tue, 4 Nov 2025 15:52:17 +0100 Subject: [PATCH 145/202] =?UTF-8?q?Add=20wysiwy=20=E2=86=92=20wysiwyg?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- codespell_lib/data/dictionary.txt | 1 + 1 file changed, 1 insertion(+) diff --git a/codespell_lib/data/dictionary.txt b/codespell_lib/data/dictionary.txt index 87fe7cfb4f..dc761d554c 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -64614,6 +64614,7 @@ wuthin->within wuthout->without wya->way wyas->ways +wysiwy->wysiwyg wyth->with wythout->without xdescribe->describe From 2cdc8371fa6931de45d3499f25fe7832ece7516d Mon Sep 17 00:00:00 2001 From: Flo Edelmann Date: Tue, 4 Nov 2025 15:47:22 +0100 Subject: [PATCH 146/202] =?UTF-8?q?Add=20produt(s)=20=E2=86=92=20product(s?= =?UTF-8?q?)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- codespell_lib/data/dictionary.txt | 2 ++ 1 file changed, 2 insertions(+) diff --git a/codespell_lib/data/dictionary.txt b/codespell_lib/data/dictionary.txt index dc761d554c..0f4d5ace18 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -46607,6 +46607,8 @@ produser->producer produsers->producers produses->produces produsing->producing +produt->product +produts->products proect->protect, project, proected->protected, projected, proecting->protecting, projecting, From e56271455d118ffa79c25ffc05764f249b8eb40c Mon Sep 17 00:00:00 2001 From: Flo Edelmann Date: Tue, 4 Nov 2025 15:43:51 +0100 Subject: [PATCH 147/202] =?UTF-8?q?Add=20recommendet=20=E2=86=92=20recomme?= =?UTF-8?q?nded?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- codespell_lib/data/dictionary.txt | 1 + 1 file changed, 1 insertion(+) diff --git a/codespell_lib/data/dictionary.txt b/codespell_lib/data/dictionary.txt index 0f4d5ace18..019ae43f72 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -48763,6 +48763,7 @@ recommeding->recommending recommeds->recommends recommenation->recommendation recommenations->recommendations +recommendet->recommended recommendin->recommending, recommend in, recommened->recommended, recommend, recommeneded->recommended From d3184efdaf7270d5cf534e635dce63154b133239 Mon Sep 17 00:00:00 2001 From: Flo Edelmann Date: Tue, 4 Nov 2025 15:41:00 +0100 Subject: [PATCH 148/202] =?UTF-8?q?Add=20environmen=20=E2=86=92=20environm?= =?UTF-8?q?ent?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- codespell_lib/data/dictionary.txt | 1 + 1 file changed, 1 insertion(+) diff --git a/codespell_lib/data/dictionary.txt b/codespell_lib/data/dictionary.txt index 019ae43f72..c76d056242 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -25083,6 +25083,7 @@ environent->environment environental->environmental environents->environments environmane->environment +environmen->environment environmenet->environment environmenetal->environmental environmenets->environments From d5d6cbe5d7d82a3d14e66feedacc9d549566c9f5 Mon Sep 17 00:00:00 2001 From: Flo Edelmann Date: Thu, 6 Nov 2025 08:08:09 +0100 Subject: [PATCH 149/202] Add several corrections for mouting in rare dictionary --- codespell_lib/data/dictionary_rare.txt | 1 + 1 file changed, 1 insertion(+) diff --git a/codespell_lib/data/dictionary_rare.txt b/codespell_lib/data/dictionary_rare.txt index 2b5e52b615..98da823f16 100644 --- a/codespell_lib/data/dictionary_rare.txt +++ b/codespell_lib/data/dictionary_rare.txt @@ -181,6 +181,7 @@ mistakingly->mistakenly moil->soil, mohel, mot->not moue->mouse +mouting->moulting, mounting, mouthing, muting, pouting, multistory->multistorey, multi-storey, nickle->nickel noes->nose, knows, nodes, does, From 4d05b247de149d426c2d74ff88cca0e8e1c91951 Mon Sep 17 00:00:00 2001 From: Flo Edelmann Date: Tue, 4 Nov 2025 15:30:51 +0100 Subject: [PATCH 150/202] =?UTF-8?q?Add=20afftected=20=E2=86=92=20affected?= =?UTF-8?q?=20and=20friends?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- codespell_lib/data/dictionary.txt | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/codespell_lib/data/dictionary.txt b/codespell_lib/data/dictionary.txt index c76d056242..91d70ec359 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -2599,6 +2599,10 @@ affortable->affordable afforts->affords, efforts, affraid->afraid affrimative->affirmative +afftect->affect +afftected->affected +afftecting->affecting +afftects->affects affter->after affulent->affluent afgahnistan->Afghanistan From 7429df3cee5adc471d15c43b8efb8104c3206ef3 Mon Sep 17 00:00:00 2001 From: Flo Edelmann Date: Tue, 4 Nov 2025 16:23:00 +0100 Subject: [PATCH 151/202] =?UTF-8?q?Add=20apartemnt(s)=20=E2=86=92=20apartm?= =?UTF-8?q?ent(s)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- codespell_lib/data/dictionary.txt | 2 ++ 1 file changed, 2 insertions(+) diff --git a/codespell_lib/data/dictionary.txt b/codespell_lib/data/dictionary.txt index 91d70ec359..1a473f6779 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -5216,6 +5216,8 @@ aparently->apparently aparment->apartment aparrent->apparent aparrently->apparently +apartemnt->apartment +apartemnts->apartments apartheied->apartheid aparthide->apartheid aparthied->apartheid From 91752171dd0aeca1ec49b5c9d2a18bfa63d2e0a2 Mon Sep 17 00:00:00 2001 From: Flo Edelmann Date: Tue, 4 Nov 2025 15:32:15 +0100 Subject: [PATCH 152/202] =?UTF-8?q?Add=20breadcumb(s)=20=E2=86=92=20breadc?= =?UTF-8?q?rumb(s)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- codespell_lib/data/dictionary.txt | 2 ++ 1 file changed, 2 insertions(+) diff --git a/codespell_lib/data/dictionary.txt b/codespell_lib/data/dictionary.txt index 1a473f6779..4a5b268e5b 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -10162,6 +10162,8 @@ breackpoints->breakpoints breacks->breaks, brakes, breackthrough->breakthrough breackthroughs->breakthroughs +breadcumb->breadcrumb +breadcumbs->breadcrumbs breaked->broken breakes->breaks breakin->breaking, break in, From 078f60b3d2b9c5bcbd2092c7a5366c7b55b65706 Mon Sep 17 00:00:00 2001 From: Flo Edelmann Date: Tue, 4 Nov 2025 15:22:51 +0100 Subject: [PATCH 153/202] =?UTF-8?q?Add=20custoemr(s)=20=E2=86=92=20custome?= =?UTF-8?q?r(s)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- codespell_lib/data/dictionary.txt | 2 ++ 1 file changed, 2 insertions(+) diff --git a/codespell_lib/data/dictionary.txt b/codespell_lib/data/dictionary.txt index 4a5b268e5b..7399d66e62 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -18628,6 +18628,8 @@ custamizable->customizable custamized->customized custamizes->customizes custamizing->customizing +custoemr->customer +custoemrs->customers custoisable->customisable custoisation->customisation custoise->customise From 3dfa603ad55955a464f299e0ad1c314c10e71e19 Mon Sep 17 00:00:00 2001 From: Flo Edelmann Date: Tue, 4 Nov 2025 16:15:25 +0100 Subject: [PATCH 154/202] =?UTF-8?q?Add=20recalcalculate=20=E2=86=92=20reca?= =?UTF-8?q?lculate=20and=20friends?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- codespell_lib/data/dictionary.txt | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/codespell_lib/data/dictionary.txt b/codespell_lib/data/dictionary.txt index 7399d66e62..adaa57abbb 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -48496,6 +48496,10 @@ rebulit->rebuilt rebult->rebuilt recahed->reached recal->recall +recalcalculate->recalculate +recalcalculated->recalculated +recalcalculates->recalculates +recalcalculating->recalculating recalcualte->recalculate recalcualted->recalculated recalcualter->re-calculator From 86fa6d8e12d98b195d7f9fe198721daeae84fb65 Mon Sep 17 00:00:00 2001 From: Flo Edelmann Date: Tue, 4 Nov 2025 15:24:44 +0100 Subject: [PATCH 155/202] =?UTF-8?q?Add=20subfoler(s)=20=E2=86=92=20subfold?= =?UTF-8?q?er(s)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- codespell_lib/data/dictionary.txt | 2 ++ 1 file changed, 2 insertions(+) diff --git a/codespell_lib/data/dictionary.txt b/codespell_lib/data/dictionary.txt index adaa57abbb..f805db7c36 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -56836,6 +56836,8 @@ subexpresssion->subexpression subexpresssions->subexpressions subfoilder->subdolder subfoilders->subdolders +subfoler->subfolder +subfolers->subfolders subfolfer->subfolder subfolfers->subfolders subfromat->subformat From e61ac16e1f01a5478067e400080282fadc457889 Mon Sep 17 00:00:00 2001 From: utzcoz <43091780+utzcoz@users.noreply.github.com> Date: Thu, 13 Nov 2025 16:02:33 +0800 Subject: [PATCH 156/202] Add auto-genertaed->auto-generated --- codespell_lib/data/dictionary.txt | 1 + 1 file changed, 1 insertion(+) diff --git a/codespell_lib/data/dictionary.txt b/codespell_lib/data/dictionary.txt index f805db7c36..2c337b8c8c 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -8552,6 +8552,7 @@ auto-detetion->auto-detection, auto-deletion, auto-detets->auto-detects, auto-deletes, auto-ganerated->auto-generated auto-generaged->auto-generated +auto-genertaed->auto-generated auto-genrated->auto-generated auto-genratet->auto-generated auto-genration->auto-generation From d5a8da218ff9033aef27e992f2537a93a87f3f09 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Fri, 21 Nov 2025 02:04:32 +0000 Subject: [PATCH 157/202] Bump actions/checkout from 5 to 6 Bumps [actions/checkout](https://github.com/actions/checkout) from 5 to 6. - [Release notes](https://github.com/actions/checkout/releases) - [Changelog](https://github.com/actions/checkout/blob/main/CHANGELOG.md) - [Commits](https://github.com/actions/checkout/compare/v5...v6) --- updated-dependencies: - dependency-name: actions/checkout dependency-version: '6' dependency-type: direct:production update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] --- .github/workflows/autofix.yml | 2 +- .github/workflows/codespell.yml | 2 +- .github/workflows/release.yml | 2 +- .github/workflows/tests.yml | 4 ++-- 4 files changed, 5 insertions(+), 5 deletions(-) diff --git a/.github/workflows/autofix.yml b/.github/workflows/autofix.yml index 78a1567506..9f4cf1c566 100644 --- a/.github/workflows/autofix.yml +++ b/.github/workflows/autofix.yml @@ -12,7 +12,7 @@ jobs: name: Regenerate autogenerated files runs-on: ubuntu-latest steps: - - uses: actions/checkout@v5 + - uses: actions/checkout@v6 with: persist-credentials: false - run: make codespell_lib/data/dictionary_en_to_en-OX_AUTOGENERATED.txt diff --git a/.github/workflows/codespell.yml b/.github/workflows/codespell.yml index 637e2a76fa..bdd0396eba 100644 --- a/.github/workflows/codespell.yml +++ b/.github/workflows/codespell.yml @@ -9,7 +9,7 @@ jobs: name: Check for spelling errors runs-on: ubuntu-latest steps: - - uses: actions/checkout@v5 + - uses: actions/checkout@v6 with: persist-credentials: false - uses: codespell-project/actions-codespell@master diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index 13eead66e6..d5a179886a 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -18,7 +18,7 @@ jobs: package: runs-on: ubuntu-latest steps: - - uses: actions/checkout@v5 + - uses: actions/checkout@v6 with: persist-credentials: false - name: Set up Python diff --git a/.github/workflows/tests.yml b/.github/workflows/tests.yml index 187e582b2d..891c15f1de 100644 --- a/.github/workflows/tests.yml +++ b/.github/workflows/tests.yml @@ -39,7 +39,7 @@ jobs: os: "windows-latest" name: "${{ matrix.python-version }} ${{ matrix.kind }} ${{ matrix.os }}" steps: - - uses: actions/checkout@v5 + - uses: actions/checkout@v6 with: persist-credentials: false - name: Setup python @@ -81,7 +81,7 @@ jobs: steps: - name: Setup Python uses: actions/setup-python@v6 - - uses: actions/checkout@v5 + - uses: actions/checkout@v6 with: persist-credentials: false - name: Install general dependencies From ca367c5b3cdd7f44817f50adfb213d1063d4d79d Mon Sep 17 00:00:00 2001 From: Nathan McDougall Date: Wed, 19 Nov 2025 13:00:02 +1300 Subject: [PATCH 158/202] Add `mangitude->magnitude` --- codespell_lib/data/dictionary.txt | 2 ++ 1 file changed, 2 insertions(+) diff --git a/codespell_lib/data/dictionary.txt b/codespell_lib/data/dictionary.txt index 2c337b8c8c..c1d862022f 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -37438,6 +37438,8 @@ mangement->management mangementt->management manges->manages manging->managing +mangitude->magnitude +mangitudes->magnitudes manifacture->manufacture manifactured->manufactured manifacturer->manufacturer From ff4bac34a2d889ef5e8c275f80a873c33bf83080 Mon Sep 17 00:00:00 2001 From: Nicolas Iooss Date: Fri, 21 Nov 2025 09:26:32 +0000 Subject: [PATCH 159/202] Add decommssioned->decommissioned and variations "decommssioned" (with a missing i) appears in several GitHub repositories, such as https://github.com/Datera/datera-automation-toolkit/blob/6fb2ca9d7e85826b300d3d7780c30cb09da433c7/qalib/whitebox/__init__.py#L69 https://github.com/dell/ansible-networker/blob/82ec3a95236b1e65ee4f9cbb03e6ffe96a85bca8/plugins/modules/clients.py#L223 https://github.com/naver/hadoop/blob/0c0a80f96283b5a7be234663e815bc04bafc8be2/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/blockmanagement/DatanodeManager.java#L787 "decommssion" also appears in several repositories: https://github.com/cubefs/cubefs/blob/2912760ee5800e70b140f8ad84caf035dede0fce/master/cluster.go#L5316 https://github.com/jagerman/loki-sn-bot/blob/5beb6ba86744d84532ca9dd898a90ae8b43712a3/lokisnbot/network.py#L361 "decommssioning" appears as well: https://github.com/Microchip-MPLAB-Harmony/wireless_zigbee/blob/cca50edd0d3d72695183ca3dfed7774c741ce40c/driver/zigbee_bz2/templates/app_zigbee_handler.h.ftl#L156 https://github.com/ashok-khanna/cmu-ai-repository/blob/685d5143204e3292777d2f283fe3977a1737905b/pubs/faqs/robotics/robot_3.html#L1615 Looking for variation without prefix "de", "commssion" also appears and it obviously a typo (there are names with "commission" right next to it): https://github.com/espressif/connectedhomeip/blob/903e149bd636a5cd1a8821864cb073b4f7a9d3d8/src/lib/mdns/Advertiser.h#L54 https://github.com/raselroky/POS_Software/blob/80c70844849997535e1ffb41c08cf9f48db249a4/purchase/models.py#L127 "commssioned" and "commssioning" also appears: https://github.com/uwgraphics/VEP2_TCP_SimpleText/blob/7f17f7ab87560c8ea24a82d35789a11fd7e03e53/A4/A46094.txt#L16 https://github.com/STMicroelectronics/STM32CubeWB/blob/49bf08052c586dacc38fac82b355a1f0a8fb7109/Projects/P-NUCLEO-WB55.Nucleo/Applications/Zigbee/Zigbee_Commissioning_Client_Coord/readme.txt#L52 Going further, "commssioner", "commssioners", "commssions"... also appear in some repositories. https://github.com/basvandorst/where-is-satoshi/blob/0b579f41a829ff2d1fd46d0a1d9a811d275ddc9f/data/reddit/fuckthehacker.txt#L5 --- codespell_lib/data/dictionary.txt | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/codespell_lib/data/dictionary.txt b/codespell_lib/data/dictionary.txt index c1d862022f..a8b5352eb2 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -14371,6 +14371,12 @@ commputed->computed commputer->computer commputes->computes commputing->computing +commssion->commission +commssioned->commissioned +commssioner->commissioner +commssioners->commissioners +commssioning->commissioning +commssions->commissions commti->commit commtis->commits commtited->committed @@ -19349,6 +19355,12 @@ decommissionin->decommissioning, decommission in, decommissionn->decommission decommissionned->decommissioned decommpress->decompress +decommssion->decommission +decommssioned->decommissioned +decommssioner->decommissioner +decommssioners->decommissioners +decommssioning->decommissioning +decommssions->decommissions decomoposition->decomposition decomposin->decomposing decomposion->decomposition From 200c31b36c04c01c20a20aced727491c66b48244 Mon Sep 17 00:00:00 2001 From: Tom de Vries <4057235+vries@users.noreply.github.com> Date: Mon, 24 Nov 2025 20:16:50 +0100 Subject: [PATCH 160/202] Fix three problems with --ignore-multiline-regex (#3832) --- codespell_lib/_codespell.py | 213 +++++++++++++++++++----------- codespell_lib/tests/test_basic.py | 62 +++++++-- 2 files changed, 187 insertions(+), 88 deletions(-) diff --git a/codespell_lib/_codespell.py b/codespell_lib/_codespell.py index 5153006bb6..98696c0f5d 100644 --- a/codespell_lib/_codespell.py +++ b/codespell_lib/_codespell.py @@ -227,12 +227,14 @@ def init_chardet(self) -> None: self.encdetector = UniversalDetector() - def open(self, filename: str) -> tuple[list[str], str]: + def open(self, filename: str) -> tuple[list[tuple[bool, int, list[str]]], str]: if self.use_chardet: return self.open_with_chardet(filename) return self.open_with_internal(filename) - def open_with_chardet(self, filename: str) -> tuple[list[str], str]: + def open_with_chardet( + self, filename: str + ) -> tuple[list[tuple[bool, int, list[str]]], str]: self.encdetector.reset() with open(filename, "rb") as fb: for line in fb: @@ -259,7 +261,9 @@ def open_with_chardet(self, filename: str) -> tuple[list[str], str]: return lines, f.encoding - def open_with_internal(self, filename: str) -> tuple[list[str], str]: + def open_with_internal( + self, filename: str + ) -> tuple[list[tuple[bool, int, list[str]]], str]: encoding = None first_try = True for encoding in ("utf-8", "iso-8859-1"): @@ -286,21 +290,25 @@ def open_with_internal(self, filename: str) -> tuple[list[str], str]: return lines, encoding - def get_lines(self, f: TextIO) -> list[str]: + def get_lines(self, f: TextIO) -> list[tuple[bool, int, list[str]]]: + fragments = [] + line_number = 0 if self.ignore_multiline_regex: text = f.read() pos = 0 - text2 = "" for m in re.finditer(self.ignore_multiline_regex, text): - text2 += text[pos : m.start()] - # Replace with blank lines so line numbers are unchanged. - text2 += "\n" * m.group().count("\n") + lines = text[pos : m.start()].splitlines(True) + fragments.append((False, line_number, lines)) + line_number += len(lines) + lines = m.group().splitlines(True) + fragments.append((True, line_number, lines)) + line_number += len(lines) - 1 pos = m.end() - text2 += text[pos:] - lines = text2.split("\n") + lines = text[pos:].splitlines(True) + fragments.append((False, line_number, lines)) else: - lines = f.readlines() - return lines + fragments.append((False, line_number, f.readlines())) + return fragments # -.-:-.-:-.-:-.:-.-:-.-:-.-:-.-:-.:-.-:-.-:-.-:-.-:-.:-.-:- @@ -869,86 +877,31 @@ def apply_uri_ignore_words( return check_matches -def parse_file( +def parse_lines( + fragment: tuple[bool, int, list[str]], filename: str, colors: TermColors, summary: Optional[Summary], misspellings: dict[str, Misspelling], ignore_words_cased: set[str], exclude_lines: set[str], - file_opener: FileOpener, word_regex: Pattern[str], ignore_word_regex: Optional[Pattern[str]], uri_regex: Pattern[str], uri_ignore_words: set[str], context: Optional[tuple[int, int]], options: argparse.Namespace, -) -> int: +) -> tuple[int, bool]: bad_count = 0 - lines = None changed = False - if filename == "-": - f = sys.stdin - encoding = "utf-8" - lines = f.readlines() - else: - if options.check_filenames: - for word in extract_words(filename, word_regex, ignore_word_regex): - if word in ignore_words_cased: - continue - lword = word.lower() - if lword not in misspellings: - continue - fix = misspellings[lword].fix - fixword = fix_case(word, misspellings[lword].data) - - if summary and fix: - summary.update(lword) - - cfilename = f"{colors.FILE}{filename}{colors.DISABLE}" - cwrongword = f"{colors.WWORD}{word}{colors.DISABLE}" - crightword = f"{colors.FWORD}{fixword}{colors.DISABLE}" - - reason = misspellings[lword].reason - if reason: - if options.quiet_level & QuietLevels.DISABLED_FIXES: - continue - creason = f" | {colors.FILE}{reason}{colors.DISABLE}" - else: - if options.quiet_level & QuietLevels.NON_AUTOMATIC_FIXES: - continue - creason = "" - - bad_count += 1 - - print(f"{cfilename}: {cwrongword} ==> {crightword}{creason}") - - # ignore irregular files - if not os.path.isfile(filename): - return bad_count - - try: - text = is_text_file(filename) - except PermissionError as e: - print(f"WARNING: {e.strerror}: {filename}", file=sys.stderr) - return bad_count - except OSError: - return bad_count - - if not text: - if not options.quiet_level & QuietLevels.BINARY_FILE: - print(f"WARNING: Binary file: {filename}", file=sys.stderr) - return bad_count - try: - lines, encoding = file_opener.open(filename) - except OSError: - return bad_count + _, fragment_line_number, lines = fragment for i, line in enumerate(lines): line = line.rstrip() if not line or line in exclude_lines: continue + line_number = fragment_line_number + i extra_words_to_ignore = set() match = inline_ignore_regex.search(line) @@ -1035,7 +988,7 @@ def parse_file( continue cfilename = f"{colors.FILE}{filename}{colors.DISABLE}" - cline = f"{colors.FILE}{i + 1}{colors.DISABLE}" + cline = f"{colors.FILE}{line_number + 1}{colors.DISABLE}" cwrongword = f"{colors.WWORD}{word}{colors.DISABLE}" crightword = f"{colors.FWORD}{fixword}{colors.DISABLE}" @@ -1067,11 +1020,117 @@ def parse_file( f"==> {crightword}{creason}" ) + return bad_count, changed + + +def parse_file( + filename: str, + colors: TermColors, + summary: Optional[Summary], + misspellings: dict[str, Misspelling], + ignore_words_cased: set[str], + exclude_lines: set[str], + file_opener: FileOpener, + word_regex: Pattern[str], + ignore_word_regex: Optional[Pattern[str]], + uri_regex: Pattern[str], + uri_ignore_words: set[str], + context: Optional[tuple[int, int]], + options: argparse.Namespace, +) -> int: + bad_count = 0 + fragments = None + + # Read lines. + if filename == "-": + f = sys.stdin + encoding = "utf-8" + fragments = file_opener.get_lines(f) + else: + if options.check_filenames: + for word in extract_words(filename, word_regex, ignore_word_regex): + if word in ignore_words_cased: + continue + lword = word.lower() + if lword not in misspellings: + continue + fix = misspellings[lword].fix + fixword = fix_case(word, misspellings[lword].data) + + if summary and fix: + summary.update(lword) + + cfilename = f"{colors.FILE}{filename}{colors.DISABLE}" + cwrongword = f"{colors.WWORD}{word}{colors.DISABLE}" + crightword = f"{colors.FWORD}{fixword}{colors.DISABLE}" + + reason = misspellings[lword].reason + if reason: + if options.quiet_level & QuietLevels.DISABLED_FIXES: + continue + creason = f" | {colors.FILE}{reason}{colors.DISABLE}" + else: + if options.quiet_level & QuietLevels.NON_AUTOMATIC_FIXES: + continue + creason = "" + + bad_count += 1 + + print(f"{cfilename}: {cwrongword} ==> {crightword}{creason}") + + # ignore irregular files + if not os.path.isfile(filename): + return bad_count + + try: + text = is_text_file(filename) + except PermissionError as e: + print(f"WARNING: {e.strerror}: {filename}", file=sys.stderr) + return bad_count + except OSError: + return bad_count + + if not text: + if not options.quiet_level & QuietLevels.BINARY_FILE: + print(f"WARNING: Binary file: {filename}", file=sys.stderr) + return bad_count + try: + fragments, encoding = file_opener.open(filename) + except OSError: + return bad_count + + # Parse lines. + changed = False + for fragment in fragments: + ignore, _, _ = fragment + if ignore: + continue + + bad_count_update, changed_update = parse_lines( + fragment, + filename, + colors, + summary, + misspellings, + ignore_words_cased, + exclude_lines, + word_regex, + ignore_word_regex, + uri_regex, + uri_ignore_words, + context, + options, + ) + bad_count += bad_count_update + changed = changed or changed_update + + # Write out lines, if changed. if changed: if filename == "-": print("---") - for line in lines: - print(line, end="") + for _, _, lines in fragments: + for line in lines: + print(line, end="") else: if not options.quiet_level & QuietLevels.FIXES: print( @@ -1079,7 +1138,9 @@ def parse_file( file=sys.stderr, ) with open(filename, "w", encoding=encoding, newline="") as f: - f.writelines(lines) + for _, _, lines in fragments: + f.writelines(lines) + return bad_count diff --git a/codespell_lib/tests/test_basic.py b/codespell_lib/tests/test_basic.py index cfb5bca44f..56a58942af 100644 --- a/codespell_lib/tests/test_basic.py +++ b/codespell_lib/tests/test_basic.py @@ -952,19 +952,19 @@ def test_ignore_multiline_regex_option( assert code == EX_USAGE assert "usage:" in stdout + text = """ + Please see http://example.com/abandonned for info + # codespell:ignore-begin + ''' + abandonned + abandonned + ''' + # codespell:ignore-end + abandonned + """ + fname = tmp_path / "flag.txt" - fname.write_text( - """ - Please see http://example.com/abandonned for info - # codespell:ignore-begin - ''' - abandonned - abandonned - ''' - # codespell:ignore-end - abandonned - """ - ) + fname.write_text(text) assert cs.main(fname) == 4 assert ( cs.main( @@ -975,6 +975,44 @@ def test_ignore_multiline_regex_option( == 2 ) + with FakeStdin(text): + assert ( + cs.main( + "-", + "--ignore-multiline-regex", + "codespell:ignore-begin.*codespell:ignore-end", + ) + == 2 + ) + + fname.write_text("This\nThsi") + cs.main( + fname, + "-w", + "--ignore-multiline-regex", + "codespell:ignore-begin.*codespell:ignore-end", + ) + assert fname.read_text() == "This\nThis" + + fname.write_text(text) + cs.main( + fname, + "-w", + "--ignore-multiline-regex", + "codespell:ignore-begin.*codespell:ignore-end", + ) + fixed_text = """ + Please see http://example.com/abandoned for info + # codespell:ignore-begin + ''' + abandonned + abandonned + ''' + # codespell:ignore-end + abandoned + """ + assert fname.read_text() == fixed_text + def test_uri_regex_option( tmp_path: Path, From 075d076bbf438954e0d1c9bbd588f54f806e0621 Mon Sep 17 00:00:00 2001 From: Niels Thykier Date: Thu, 19 Jun 2025 18:56:19 +0000 Subject: [PATCH 161/202] Speed up `codespell:ignore` check by skipping the regex in most cases The codespell codebase unsurprisingly spends a vast majority of its runtime in various regex related code such as `search` and `finditer`. The best way to optimize runtime spend in regexes is to not do a regex in the first place, since the regex engine has a rather steep overhead over regular string primitives (that is at the cost of flexibility). If the regex rarely matches and there is a very easy static substring that can be used to rule out the match, then you can speed up the code by using `substring in string` as a conditional to skip the regex. This is assuming the regex is used enough for the performance to matter. An obvious choice here falls on the `codespell:ignore` regex, because it has a very distinctive substring in the form of `codespell:ignore`, which will rule out almost all lines that will not match. With this little trick, runtime goes from ~5.4s to ~4.5s on the corpus mentioned in #3419. --- codespell_lib/_codespell.py | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) diff --git a/codespell_lib/_codespell.py b/codespell_lib/_codespell.py index 98696c0f5d..94ab65d068 100644 --- a/codespell_lib/_codespell.py +++ b/codespell_lib/_codespell.py @@ -54,7 +54,13 @@ uri_regex_def = ( r"(\b(?:https?|[ts]?ftp|file|git|smb)://[^\s]+(?=$|\s)|\b[\w.%+-]+@[\w.-]+\b)" ) -inline_ignore_regex = re.compile(r"[^\w\s]\s*codespell:ignore\b(\s+(?P[\w,]*))?") +codespell_ignore_tag = "codespell:ignore" +inline_ignore_regex = re.compile( + rf"[^\w\s]\s*{codespell_ignore_tag}\b(\s+(?P[\w,]*))?" +) +USAGE = """ +\t%prog [OPTIONS] [file1 file2 ... fileN] +""" supported_languages_en = ("en", "en_GB", "en_US", "en_CA", "en_AU") supported_languages = supported_languages_en @@ -904,7 +910,9 @@ def parse_lines( line_number = fragment_line_number + i extra_words_to_ignore = set() - match = inline_ignore_regex.search(line) + match = ( + inline_ignore_regex.search(line) if codespell_ignore_tag in line else None + ) if match: extra_words_to_ignore = set( filter(None, (match.group("words") or "").split(",")) From 0eff305e770a72372e9be75bfaff3fda0da81294 Mon Sep 17 00:00:00 2001 From: Tom de Vries Date: Tue, 25 Nov 2025 14:24:11 +0100 Subject: [PATCH 162/202] Add two tests in test_stdin to increase coverage Coverage increases: - parse_lines: 92% -> 94% - parse_file : 79% -> 87% --- codespell_lib/tests/test_basic.py | 16 +++++++++++++++- 1 file changed, 15 insertions(+), 1 deletion(-) diff --git a/codespell_lib/tests/test_basic.py b/codespell_lib/tests/test_basic.py index 56a58942af..d8f97ea3f1 100644 --- a/codespell_lib/tests/test_basic.py +++ b/codespell_lib/tests/test_basic.py @@ -1429,7 +1429,7 @@ def run_codespell_stdin( return output.count("\n") -def test_stdin(tmp_path: Path) -> None: +def test_stdin(tmp_path: Path, capsys: pytest.CaptureFixture[str]) -> None: """Test running the codespell executable.""" input_file_lines = 4 text = "" @@ -1444,3 +1444,17 @@ def test_stdin(tmp_path: Path) -> None: assert run_codespell_stdin( text, args=args, cwd=tmp_path ) == input_file_lines * (2 - int(single_line_per_error)) + + with FakeStdin("Thsi is a line"): + result = cs.main("-", "-w", std=True) + assert isinstance(result, tuple) + code, stdout, _ = result + assert stdout == "---\nThis is a line" + assert code == 0 + + with FakeStdin("Thsi is a line"): + result = cs.main("-", "--stdin-single-line", std=True) + assert isinstance(result, tuple) + code, stdout, _ = result + assert stdout == "1: Thsi ==> This\n" + assert code == 1 From ff58560565220a3b6d593efbea27b7c0402cc21c Mon Sep 17 00:00:00 2001 From: "pre-commit-ci[bot]" <66853113+pre-commit-ci[bot]@users.noreply.github.com> Date: Mon, 1 Dec 2025 17:21:38 +0000 Subject: [PATCH 163/202] [pre-commit.ci] pre-commit autoupdate MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit updates: - [github.com/astral-sh/ruff-pre-commit: v0.14.3 → v0.14.7](https://github.com/astral-sh/ruff-pre-commit/compare/v0.14.3...v0.14.7) - [github.com/rbubley/mirrors-prettier: v3.6.2 → v3.7.3](https://github.com/rbubley/mirrors-prettier/compare/v3.6.2...v3.7.3) - [github.com/pre-commit/mirrors-mypy: v1.18.2 → v1.19.0](https://github.com/pre-commit/mirrors-mypy/compare/v1.18.2...v1.19.0) --- .pre-commit-config.yaml | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/.pre-commit-config.yaml b/.pre-commit-config.yaml index 4d45bc253e..cb187ebd92 100644 --- a/.pre-commit-config.yaml +++ b/.pre-commit-config.yaml @@ -58,12 +58,12 @@ repos: - -d - "{extends: relaxed, rules: {line-length: {max: 90}}}" - repo: https://github.com/astral-sh/ruff-pre-commit - rev: v0.14.3 + rev: v0.14.7 hooks: - id: ruff-check - id: ruff-format - repo: https://github.com/rbubley/mirrors-prettier - rev: v3.6.2 + rev: v3.7.3 hooks: - id: prettier types_or: [yaml, markdown, html, css, scss, javascript, json] @@ -79,7 +79,7 @@ repos: hooks: - id: validate-pyproject - repo: https://github.com/pre-commit/mirrors-mypy - rev: v1.18.2 + rev: v1.19.0 hooks: - id: mypy args: ["--config-file", "pyproject.toml"] From 76e3eacf7c30613af6274d51b6965de0a3411ae6 Mon Sep 17 00:00:00 2001 From: Nathan McDougall Date: Tue, 2 Dec 2025 07:49:34 +1300 Subject: [PATCH 164/202] Add `insteam->instead` to the rare dictionary --- codespell_lib/data/dictionary_rare.txt | 1 + 1 file changed, 1 insertion(+) diff --git a/codespell_lib/data/dictionary_rare.txt b/codespell_lib/data/dictionary_rare.txt index 98da823f16..86b321ea9c 100644 --- a/codespell_lib/data/dictionary_rare.txt +++ b/codespell_lib/data/dictionary_rare.txt @@ -147,6 +147,7 @@ infarction->infraction infarctions->infractions ingenuous->ingenious inly->only +insteam->instead intensional->intentional irregardless->regardless joo->you From d08adde23d59c026a245f95e71b03af33d97b686 Mon Sep 17 00:00:00 2001 From: Nathan McDougall Date: Tue, 2 Dec 2025 10:03:36 +1300 Subject: [PATCH 165/202] Add `unreliable`/`reliable` misspellings to dictionary (#3829) Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com> --- codespell_lib/data/dictionary.txt | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/codespell_lib/data/dictionary.txt b/codespell_lib/data/dictionary.txt index a8b5352eb2..c072c18be2 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -49867,6 +49867,8 @@ relfects->reflects reliabe->reliable reliabily->reliably, reliability, reliablity->reliability +relibility->reliability +relible->reliable relie->rely, relies, really, relief, reliefed->relieved reliefes->relieves @@ -61967,6 +61969,11 @@ unreigstering->unregistering unreigsters->unregisters unrelatd->unrelated unreleated->unrelated +unreliabe->unreliable +unreliabily->unreliably, unreliability, +unreliablity->unreliability +unrelibility->unreliability +unrelible->unreliable unrelted->unrelated unrelyable->unreliable unrelying->underlying From 09c0976570c3cf93c8f2aa47e0333ef24027fa86 Mon Sep 17 00:00:00 2001 From: Nathan McDougall Date: Tue, 2 Dec 2025 10:11:55 +1300 Subject: [PATCH 166/202] Add typos of `hypocenter` to the dictionary (#3830) Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com> --- codespell_lib/data/dictionary.txt | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/codespell_lib/data/dictionary.txt b/codespell_lib/data/dictionary.txt index c072c18be2..b4451ec848 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -31382,6 +31382,12 @@ hyperboly->hyperbole Hyperldger->Hyperledger hypervior->hypervisor hyphenatin->hyphenating, hyphenation, +hypocencter->hypocenter +hypocenctre->hypocentre +hypocengter->hypocenter +hypocengtre->hypocentre +hypocnter->hypocenter +hypocntre->hypocentre hypocracy->hypocrisy hypocrasy->hypocrisy hypocricy->hypocrisy From 3f286a429b2ea76f5004e5606fb78c5f4240dc85 Mon Sep 17 00:00:00 2001 From: Peter Baumann <137093602+pgbaumann@users.noreply.github.com> Date: Sun, 7 Dec 2025 20:09:52 +0100 Subject: [PATCH 167/202] Add inline summaries in --write-changes mode (#3836) Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com> --- codespell_lib/_codespell.py | 57 +++++++++++++++++++++++++------ codespell_lib/tests/test_basic.py | 25 ++++++++++++++ 2 files changed, 72 insertions(+), 10 deletions(-) diff --git a/codespell_lib/_codespell.py b/codespell_lib/_codespell.py index 94ab65d068..341795b331 100644 --- a/codespell_lib/_codespell.py +++ b/codespell_lib/_codespell.py @@ -883,6 +883,32 @@ def apply_uri_ignore_words( return check_matches +def _format_colored_output( + filename: str, + colors: TermColors, + line_num: int, + wrong: str, + right: str, +) -> tuple[str, str, str, str]: + """Format colored strings for output. + + Args: + filename: The filename being processed. + colors: TermColors instance for color formatting. + line_num: Line number (1-based) where the misspelling was found. + wrong: The misspelled word. + right: The correct word. + + Returns: + Tuple of (filename, line_num, wrong_word, right_word) with color codes. + """ + cfilename = f"{colors.FILE}{filename}{colors.DISABLE}" + cline = f"{colors.FILE}{line_num}{colors.DISABLE}" + cwrongword = f"{colors.WWORD}{wrong}{colors.DISABLE}" + crightword = f"{colors.FWORD}{right}{colors.DISABLE}" + return cfilename, cline, cwrongword, crightword + + def parse_lines( fragment: tuple[bool, int, list[str]], filename: str, @@ -897,9 +923,10 @@ def parse_lines( uri_ignore_words: set[str], context: Optional[tuple[int, int]], options: argparse.Namespace, -) -> tuple[int, bool]: +) -> tuple[int, bool, list[tuple[int, str, str]]]: bad_count = 0 changed = False + changes_made: list[tuple[int, str, str]] = [] _, fragment_line_number, lines = fragment @@ -985,6 +1012,7 @@ def parse_lines( changed = True lines[i] = re.sub(rf"\b{word}\b", fixword, lines[i]) fixed_words.add(word) + changes_made.append((line_number + 1, word, fixword)) continue # otherwise warning was explicitly set by interactive mode @@ -995,10 +1023,9 @@ def parse_lines( ): continue - cfilename = f"{colors.FILE}{filename}{colors.DISABLE}" - cline = f"{colors.FILE}{line_number + 1}{colors.DISABLE}" - cwrongword = f"{colors.WWORD}{word}{colors.DISABLE}" - crightword = f"{colors.FWORD}{fixword}{colors.DISABLE}" + cfilename, cline, cwrongword, crightword = _format_colored_output( + filename, colors, line_number + 1, word, fixword + ) reason = misspellings[lword].reason if reason: @@ -1028,7 +1055,7 @@ def parse_lines( f"==> {crightword}{creason}" ) - return bad_count, changed + return bad_count, changed, changes_made def parse_file( @@ -1068,9 +1095,9 @@ def parse_file( if summary and fix: summary.update(lword) - cfilename = f"{colors.FILE}{filename}{colors.DISABLE}" - cwrongword = f"{colors.WWORD}{word}{colors.DISABLE}" - crightword = f"{colors.FWORD}{fixword}{colors.DISABLE}" + cfilename, _, cwrongword, crightword = _format_colored_output( + filename, colors, 0, word, fixword + ) reason = misspellings[lword].reason if reason: @@ -1109,12 +1136,13 @@ def parse_file( # Parse lines. changed = False + changes_made: list[tuple[int, str, str]] = [] for fragment in fragments: ignore, _, _ = fragment if ignore: continue - bad_count_update, changed_update = parse_lines( + bad_count_update, changed_update, changes_made_update = parse_lines( fragment, filename, colors, @@ -1131,6 +1159,7 @@ def parse_file( ) bad_count += bad_count_update changed = changed or changed_update + changes_made.extend(changes_made_update) # Write out lines, if changed. if changed: @@ -1145,6 +1174,14 @@ def parse_file( f"{colors.FWORD}FIXED:{colors.DISABLE} {filename}", file=sys.stderr, ) + for line_num, wrong, right in changes_made: + cfilename, cline, cwrongword, crightword = _format_colored_output( + filename, colors, line_num, wrong, right + ) + print( + f" {cfilename}:{cline}: {cwrongword} ==> {crightword}", + file=sys.stderr, + ) with open(filename, "w", encoding=encoding, newline="") as f: for _, _, lines in fragments: f.writelines(lines) diff --git a/codespell_lib/tests/test_basic.py b/codespell_lib/tests/test_basic.py index d8f97ea3f1..44b17ca4ca 100644 --- a/codespell_lib/tests/test_basic.py +++ b/codespell_lib/tests/test_basic.py @@ -169,6 +169,31 @@ def test_basic( assert cs.main(tmp_path) == 0 +def test_write_changes_lists_changes( + tmp_path: Path, + capsys: pytest.CaptureFixture[str], +) -> None: + """Test that -w flag shows list of changes made to file.""" + + fname = tmp_path / "misspelled.txt" + fname.write_text("This is abandonned\nAnd this is occured\nAlso teh typo\n") + + result = cs.main("-w", fname, std=True) + assert isinstance(result, tuple) + code, _, stderr = result + assert code == 0 + + assert "FIXED:" in stderr + + # Check that changes are listed with format: filename:line: wrong ==> right + assert "misspelled.txt:1: abandonned ==> abandoned" in stderr + assert "misspelled.txt:2: occured ==> occurred" in stderr + assert "misspelled.txt:3: teh ==> the" in stderr + + corrected = fname.read_text() + assert corrected == "This is abandoned\nAnd this is occurred\nAlso the typo\n" + + def test_default_word_parsing( tmp_path: Path, capsys: pytest.CaptureFixture[str], From 09966a0b4f43bb95fcd761e6c6f6d37577011675 Mon Sep 17 00:00:00 2001 From: Christian Fischer Date: Thu, 11 Dec 2025 11:20:16 +0100 Subject: [PATCH 168/202] Add spelling correction for insufficient and variants. --- codespell_lib/data/dictionary.txt | 3 +++ 1 file changed, 3 insertions(+) diff --git a/codespell_lib/data/dictionary.txt b/codespell_lib/data/dictionary.txt index b4451ec848..29629ad81a 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -34455,6 +34455,9 @@ insuffciently->insufficiently insufficency->insufficiency insufficent->insufficient insufficently->insufficiently +insuffieciency->insufficiency +insuffiecient->insufficient +insuffieciently->insufficiently insuffiency->insufficiency insuffient->insufficient insuffiently->insufficiently From 9a958c2d684f76511309939b5c42df9684eac048 Mon Sep 17 00:00:00 2001 From: Dimitri Papadopoulos <3234522+DimitriPapadopoulos@users.noreply.github.com> Date: Sun, 7 Dec 2025 11:50:18 +0100 Subject: [PATCH 169/202] Move `quater` to rare dictionary --- codespell_lib/data/dictionary.txt | 1 - codespell_lib/data/dictionary_rare.txt | 1 + 2 files changed, 1 insertion(+), 1 deletion(-) diff --git a/codespell_lib/data/dictionary.txt b/codespell_lib/data/dictionary.txt index 29629ad81a..862d92b2e7 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -47688,7 +47688,6 @@ quartenion->quaternion quartenions->quaternions quartically->quadratically quatation->quotation -quater->quarter quating->quoting, squatting, equating, quation->equation quations->equations diff --git a/codespell_lib/data/dictionary_rare.txt b/codespell_lib/data/dictionary_rare.txt index 86b321ea9c..eac6735fcb 100644 --- a/codespell_lib/data/dictionary_rare.txt +++ b/codespell_lib/data/dictionary_rare.txt @@ -224,6 +224,7 @@ protestors->protesters provence->province purportive->supportive purvue->purview +quater->quarter ques->quest, queues, cues, readd->re-add, read, readded->re-added, read, From 8dd4730495c94698d91f30d79921d008503940cd Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Sun, 14 Dec 2025 21:10:07 -0500 Subject: [PATCH 170/202] Bump actions/upload-artifact from 5 to 6 (#3846) Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- .github/workflows/release.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index d5a179886a..918d6ca649 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -36,7 +36,7 @@ jobs: - name: Check env vars run: | echo "Triggered by: ${{ github.event_name }}" - - uses: actions/upload-artifact@v5 + - uses: actions/upload-artifact@v6 with: name: dist path: dist From e5925994485955ba97c0944e198825671f30d797 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Sun, 14 Dec 2025 21:14:03 -0500 Subject: [PATCH 171/202] Bump actions/download-artifact from 6 to 7 (#3847) Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- .github/workflows/release.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index 918d6ca649..aad2e05c76 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -47,7 +47,7 @@ jobs: runs-on: ubuntu-latest if: github.event_name == 'release' steps: - - uses: actions/download-artifact@v6 + - uses: actions/download-artifact@v7 with: name: dist path: dist From 0399f234d3c4699e2424b8dd7dab7a81f286a793 Mon Sep 17 00:00:00 2001 From: Julian Smith <83358719+julian-smith-artifex-com@users.noreply.github.com> Date: Mon, 15 Dec 2025 14:06:47 +0000 Subject: [PATCH 172/202] =?UTF-8?q?codespell=5Flib/=5Fcodespell.py:=20read?= =?UTF-8?q?=20additional=20args=20from=20file=20with=20with=E2=80=A6=20(#3?= =?UTF-8?q?841)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com> --- README.rst | 7 ++++++ codespell_lib/_codespell.py | 23 ++++++++++++++++- codespell_lib/tests/test_basic.py | 41 +++++++++++++++++++++++++++++++ 3 files changed, 70 insertions(+), 1 deletion(-) diff --git a/README.rst b/README.rst index fdd16cc5e5..a9562e8f2b 100644 --- a/README.rst +++ b/README.rst @@ -229,6 +229,13 @@ instead of these invalid entries: .. _tomli: https://pypi.org/project/tomli/ +Reading arguments from file +--------------------------- + +Additional arguments can be read from a file with ``@PATH``. Arguments are +extracted using ``shlex.split()``. + + pre-commit hook --------------- diff --git a/codespell_lib/_codespell.py b/codespell_lib/_codespell.py index 341795b331..82c273095b 100644 --- a/codespell_lib/_codespell.py +++ b/codespell_lib/_codespell.py @@ -23,6 +23,7 @@ import itertools import os import re +import shlex import sys import textwrap from collections.abc import Iterable, Sequence @@ -388,7 +389,27 @@ def _supports_ansi_colors() -> bool: def parse_options( args: Sequence[str], ) -> tuple[argparse.Namespace, argparse.ArgumentParser, list[str]]: - parser = argparse.ArgumentParser(formatter_class=NewlineHelpFormatter) + # Split lines read from `@PATH` using shlex.split(), otherwise default + # behaviour is to have one arg per line. See: + # https://docs.python.org/3/library/argparse.html#argparse.ArgumentParser.convert_arg_line_to_args + class ArgumentParser2(argparse.ArgumentParser): + def convert_arg_line_to_args(self, arg_line: str) -> list[str]: + if sys.platform == "win32": + # On Windows, shlex.split() seems to be messed up by back + # slashes. Temporarily changing them to forward slashes seems + # to make things work better. + arg_line = arg_line.replace("\\", "/") + ret = shlex.split(arg_line) + ret = [p.replace("/", "\\") for p in ret] + else: + ret = shlex.split(arg_line) + return ret + + parser = ArgumentParser2( + formatter_class=NewlineHelpFormatter, + fromfile_prefix_chars="@", + epilog="Use @PATH to read additional arguments from file PATH.", + ) parser.set_defaults(colors=_supports_ansi_colors()) parser.add_argument("--version", action="version", version=VERSION) diff --git a/codespell_lib/tests/test_basic.py b/codespell_lib/tests/test_basic.py index 44b17ca4ca..5120e1e8a1 100644 --- a/codespell_lib/tests/test_basic.py +++ b/codespell_lib/tests/test_basic.py @@ -1483,3 +1483,44 @@ def test_stdin(tmp_path: Path, capsys: pytest.CaptureFixture[str]) -> None: code, stdout, _ = result assert stdout == "1: Thsi ==> This\n" assert code == 1 + + +def test_args_from_file( + tmp_path: Path, + capsys: pytest.CaptureFixture[str], +) -> None: + import textwrap + + print() + fname1 = tmp_path / "tmp1" + fname2 = tmp_path / "tmp2" + fname3 = tmp_path / "tmp3" + fname_list = tmp_path / "tmp_list" + fname_list.write_text(f"{fname1} {fname2}\n{fname3}") + fname1.write_text("abandonned\ncode") + fname2.write_text("exmaple\n") + fname3.write_text("abilty\n") + print(f"{fname_list=}") + args = ["codespell", f"@{fname_list}"] + print(f"Running: {args=}") + cp = subprocess.run( # noqa: S603 + args, + check=False, + text=True, + capture_output=True, + ) + code = cp.returncode + stdout = cp.stdout + stderr = cp.stderr + print(f"{code=}") + print(f"stdout:\n{textwrap.indent(stdout, ' ')}") + print(f"stderr:\n{textwrap.indent(stderr, ' ')}") + assert "tmp1:1: abandonned ==> abandoned\n" in stdout, f"{stdout=}" + assert "tmp2:1: exmaple ==> example\n" in stdout, f"{stdout=}" + assert "tmp3:1: abilty ==> ability\n" in stdout, f"{stdout=}" + assert code, f"{code=}" + + # Run same test via cs_.main() so code coverage checks work. + print("Testing with direct call to cs_.main()") + r = cs_.main(*args[1:]) + print(f"{r=}") From f30dd5e1076438847bbf9110e5f828906cefe785 Mon Sep 17 00:00:00 2001 From: Nathan McDougall Date: Thu, 18 Dec 2025 01:55:46 +1300 Subject: [PATCH 173/202] Add appedix->appendix and variants to dictionary --- codespell_lib/data/dictionary.txt | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/codespell_lib/data/dictionary.txt b/codespell_lib/data/dictionary.txt index 862d92b2e7..abb1f15cbb 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -5467,7 +5467,11 @@ appeciating->appreciating appeciation->appreciation appeciative->appreciative appeded->appended +appedice->appendice, appendix, +appedices->appendices +appedicitis->appendicitis appeding->appending +appedix->appendix appedn->append appen->append, happen, aspen, appendend->appended From 24c4297669601726bac8d3c70a24dcad7065c3e2 Mon Sep 17 00:00:00 2001 From: Nathan McDougall Date: Thu, 18 Dec 2025 04:40:05 +1300 Subject: [PATCH 174/202] Add various typos of `damage` (#3834) --- codespell_lib/data/dictionary.txt | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/codespell_lib/data/dictionary.txt b/codespell_lib/data/dictionary.txt index abb1f15cbb..6991db367b 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -23020,6 +23020,14 @@ dleayed->delayed dleaying->delaying dleays->delays dloating->floating +dmaage->damage +dmaaged->damaged +dmaages->damages +dmaaging->damaging +dmage->damage +dmaged->damaged +dmages->damages +dmaging->damaging dnamically->dynamically dne->done dnymaic->dynamic @@ -61462,6 +61470,8 @@ undfine->undefine undfined->undefined undfines->undefines undistinghable->indistinguishable +undmaaged->damaged +undmaged->damaged undocummented->undocumented undoed->undo, undone, undorder->unorder From 62b1d3b372c6b2dbcda94a9ac72c6cc458b8e506 Mon Sep 17 00:00:00 2001 From: Nathan McDougall Date: Thu, 18 Dec 2025 09:03:29 +1300 Subject: [PATCH 175/202] Add `indiciation->indication` (#3849) Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com> --- codespell_lib/data/dictionary.txt | 2 ++ 1 file changed, 2 insertions(+) diff --git a/codespell_lib/data/dictionary.txt b/codespell_lib/data/dictionary.txt index 6991db367b..0554236c47 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -32958,6 +32958,8 @@ indiciate->indicate indiciated->indicated indiciates->indicates indiciating->indicating +indiciation->indication +indiciations->indications indicies->indices indicte->indicate indictement->indictment From a9fe3fe23cd63cf38cebdbdcd38a50c796983887 Mon Sep 17 00:00:00 2001 From: Christian Fischer Date: Thu, 18 Dec 2025 10:13:15 +0100 Subject: [PATCH 176/202] Add spelling correction for Mitigate and variants. --- codespell_lib/data/dictionary.txt | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/codespell_lib/data/dictionary.txt b/codespell_lib/data/dictionary.txt index 0554236c47..908fbd713c 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -38781,6 +38781,12 @@ misusin->misusing mitake->mistake mitaken->mistaken mitakes->mistakes +mitgate->mitigate +mitgated->mitigated +mitgates->mitigates +mitgating->mitigating +mitgation->mitigation +mitgations->mitigations miticate->mitigate miticated->mitigated miticateing->mitigating From aa38f97aae3f8600e1dc3a89c4b75b76569be589 Mon Sep 17 00:00:00 2001 From: "pre-commit-ci[bot]" <66853113+pre-commit-ci[bot]@users.noreply.github.com> Date: Mon, 5 Jan 2026 17:14:43 +0000 Subject: [PATCH 177/202] [pre-commit.ci] pre-commit autoupdate MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit updates: - [github.com/astral-sh/ruff-pre-commit: v0.14.7 → v0.14.10](https://github.com/astral-sh/ruff-pre-commit/compare/v0.14.7...v0.14.10) - [github.com/rbubley/mirrors-prettier: v3.7.3 → v3.7.4](https://github.com/rbubley/mirrors-prettier/compare/v3.7.3...v3.7.4) - [github.com/pre-commit/mirrors-mypy: v1.19.0 → v1.19.1](https://github.com/pre-commit/mirrors-mypy/compare/v1.19.0...v1.19.1) --- .pre-commit-config.yaml | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/.pre-commit-config.yaml b/.pre-commit-config.yaml index cb187ebd92..008a1a5932 100644 --- a/.pre-commit-config.yaml +++ b/.pre-commit-config.yaml @@ -58,12 +58,12 @@ repos: - -d - "{extends: relaxed, rules: {line-length: {max: 90}}}" - repo: https://github.com/astral-sh/ruff-pre-commit - rev: v0.14.7 + rev: v0.14.10 hooks: - id: ruff-check - id: ruff-format - repo: https://github.com/rbubley/mirrors-prettier - rev: v3.7.3 + rev: v3.7.4 hooks: - id: prettier types_or: [yaml, markdown, html, css, scss, javascript, json] @@ -79,7 +79,7 @@ repos: hooks: - id: validate-pyproject - repo: https://github.com/pre-commit/mirrors-mypy - rev: v1.19.0 + rev: v1.19.1 hooks: - id: mypy args: ["--config-file", "pyproject.toml"] From b5997b4323672c8fe36fedcf52feee8688fb4729 Mon Sep 17 00:00:00 2001 From: AJIOB Date: Mon, 12 Jan 2026 10:33:12 +0000 Subject: [PATCH 178/202] Fix value typo --- codespell_lib/data/dictionary.txt | 2 ++ 1 file changed, 2 insertions(+) diff --git a/codespell_lib/data/dictionary.txt b/codespell_lib/data/dictionary.txt index 908fbd713c..356e2e1f99 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -63872,6 +63872,8 @@ walkthough->walkthrough, walk though, walkthoughs->walkthroughs wallowin->wallowing, wallow in, wallthickness->wall thickness +walue->value +walues->values wan't->want, wasn't, wantin->wanting, want in, wanton, wantto->want to From 0cc5d75aab4c0520d54fe21a3d4ce76ca7d76644 Mon Sep 17 00:00:00 2001 From: James Frost Date: Wed, 14 Jan 2026 16:51:44 +0000 Subject: [PATCH 179/202] Add `sharability->shareability` --- codespell_lib/data/dictionary.txt | 1 + 1 file changed, 1 insertion(+) diff --git a/codespell_lib/data/dictionary.txt b/codespell_lib/data/dictionary.txt index 356e2e1f99..39fa0032f5 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -53965,6 +53965,7 @@ shapshots->snapshots shapsnot->snapshot shapsnots->snapshots shapt->shaped, shape, +sharability->shareability shareed->shared shareing->sharing sharin->sharing, sharia, sarin, From d8271bc515b765bf16638478ff5ed5b4f63d93a8 Mon Sep 17 00:00:00 2001 From: George Ogden Date: Fri, 16 Jan 2026 20:55:39 +0000 Subject: [PATCH 180/202] outptu -> output and outptus -> outputs --- codespell_lib/data/dictionary.txt | 2 ++ 1 file changed, 2 insertions(+) diff --git a/codespell_lib/data/dictionary.txt b/codespell_lib/data/dictionary.txt index 39fa0032f5..746eccd92c 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -42812,6 +42812,8 @@ outperfomring->outperforming outperformin->outperforming, outperform in, outpout->output outpouts->outputs +outptu->output +outptus->outputs outpu->output outpupt->output outpus->output, outputs, From c804ec929dcdc401a41150708e6a0a628f771079 Mon Sep 17 00:00:00 2001 From: johann1764 Date: Thu, 22 Jan 2026 21:23:28 +0100 Subject: [PATCH 181/202] meter may also be correct in OX (as a device) --- codespell_lib/data/dictionary_en_to_en-OX_AUTOGENERATED.txt | 2 -- tools/gen_OX.sh | 1 + 2 files changed, 1 insertion(+), 2 deletions(-) diff --git a/codespell_lib/data/dictionary_en_to_en-OX_AUTOGENERATED.txt b/codespell_lib/data/dictionary_en_to_en-OX_AUTOGENERATED.txt index 7ae562d70a..9fbc281d53 100644 --- a/codespell_lib/data/dictionary_en_to_en-OX_AUTOGENERATED.txt +++ b/codespell_lib/data/dictionary_en_to_en-OX_AUTOGENERATED.txt @@ -293,8 +293,6 @@ memorise->memorize memorised->memorized memorises->memorizes memorising->memorizing -meter->metre -meters->metres millimeter->millimetre millimeters->millimetres minimisation->minimization diff --git a/tools/gen_OX.sh b/tools/gen_OX.sh index 00c33b29e5..6c45efe18f 100755 --- a/tools/gen_OX.sh +++ b/tools/gen_OX.sh @@ -31,6 +31,7 @@ IGNORE=( 'practise' 'programme' 'licence' + 'metre' ) PAT3="^$(one_of "${IGNORE[@]}")" From 8c4d4926e74053eb75794f3cdd418cfcb971ec4e Mon Sep 17 00:00:00 2001 From: "pre-commit-ci[bot]" <66853113+pre-commit-ci[bot]@users.noreply.github.com> Date: Mon, 2 Feb 2026 17:12:54 +0000 Subject: [PATCH 182/202] [pre-commit.ci] pre-commit autoupdate MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit updates: - [github.com/adrienverge/yamllint.git: v1.37.1 → v1.38.0](https://github.com/adrienverge/yamllint.git/compare/v1.37.1...v1.38.0) - [github.com/astral-sh/ruff-pre-commit: v0.14.10 → v0.14.14](https://github.com/astral-sh/ruff-pre-commit/compare/v0.14.10...v0.14.14) - [github.com/rbubley/mirrors-prettier: v3.7.4 → v3.8.1](https://github.com/rbubley/mirrors-prettier/compare/v3.7.4...v3.8.1) --- .pre-commit-config.yaml | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/.pre-commit-config.yaml b/.pre-commit-config.yaml index 008a1a5932..dae3f4f63d 100644 --- a/.pre-commit-config.yaml +++ b/.pre-commit-config.yaml @@ -50,7 +50,7 @@ repos: files: dictionary.*\.txt$|\.wordlist$ args: [--ignore-case] - repo: https://github.com/adrienverge/yamllint.git - rev: v1.37.1 + rev: v1.38.0 hooks: - id: yamllint args: @@ -58,12 +58,12 @@ repos: - -d - "{extends: relaxed, rules: {line-length: {max: 90}}}" - repo: https://github.com/astral-sh/ruff-pre-commit - rev: v0.14.10 + rev: v0.14.14 hooks: - id: ruff-check - id: ruff-format - repo: https://github.com/rbubley/mirrors-prettier - rev: v3.7.4 + rev: v3.8.1 hooks: - id: prettier types_or: [yaml, markdown, html, css, scss, javascript, json] From 9d3ea4a35f70fb304034029703f51c79997007f3 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 3 Feb 2026 05:39:36 +0000 Subject: [PATCH 183/202] Bump autofix-ci/action from 1.3.2 to 1.3.3 Bumps [autofix-ci/action](https://github.com/autofix-ci/action) from 1.3.2 to 1.3.3. - [Release notes](https://github.com/autofix-ci/action/releases) - [Commits](https://github.com/autofix-ci/action/compare/635ffb0c9798bd160680f18fd73371e355b85f27...7a166d7532b277f34e16238930461bf77f9d7ed8) --- updated-dependencies: - dependency-name: autofix-ci/action dependency-version: 1.3.3 dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] --- .github/workflows/autofix.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/autofix.yml b/.github/workflows/autofix.yml index 9f4cf1c566..c581db3c5a 100644 --- a/.github/workflows/autofix.yml +++ b/.github/workflows/autofix.yml @@ -16,4 +16,4 @@ jobs: with: persist-credentials: false - run: make codespell_lib/data/dictionary_en_to_en-OX_AUTOGENERATED.txt - - uses: autofix-ci/action@635ffb0c9798bd160680f18fd73371e355b85f27 + - uses: autofix-ci/action@7a166d7532b277f34e16238930461bf77f9d7ed8 From a8ad93936a745db889f10e02891acce5dff1f7f5 Mon Sep 17 00:00:00 2001 From: MDW Date: Fri, 6 Feb 2026 22:47:06 +0100 Subject: [PATCH 184/202] docs: Add 'avoic' related corrections (#3861) Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com> --- codespell_lib/data/dictionary.txt | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/codespell_lib/data/dictionary.txt b/codespell_lib/data/dictionary.txt index 746eccd92c..579edf7ec3 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -8917,6 +8917,11 @@ avod->avoid avoded->avoided avoding->avoiding avods->avoids +avoic->avoid +avoicance->avoidance +avoiced->avoided +avoicing->avoiding +avoics->avoids avoidence->avoidance avoidin->avoiding, avoid in, a void in, avoind->avoid From 5876da08de35a20e6cf9a4a6dc10845e6e0f4df3 Mon Sep 17 00:00:00 2001 From: George Ogden <38294960+George-Ogden@users.noreply.github.com> Date: Fri, 6 Feb 2026 21:47:51 +0000 Subject: [PATCH 185/202] `recorev -> recover` (#3862) --- codespell_lib/data/dictionary.txt | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/codespell_lib/data/dictionary.txt b/codespell_lib/data/dictionary.txt index 579edf7ec3..dccec08ccb 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -48997,6 +48997,12 @@ recordin->recording, record in, recordproducer->record producer recordss->records recored->recorded +recorev->recover +recoreved->recovered +recorevies->recoveries +recoreving->recovering +recorevs->recovers +recorevy->recovery recoriding->recording recource->resource, recourse, recourced->resourced From 9bfed9adf6c1c46a09cb093ccbf9a176e52bf4b0 Mon Sep 17 00:00:00 2001 From: George Ogden Date: Tue, 20 Jan 2026 19:19:19 +0000 Subject: [PATCH 186/202] parger -> parger->larger, pager, parker, parser --- codespell_lib/data/dictionary.txt | 2 ++ 1 file changed, 2 insertions(+) diff --git a/codespell_lib/data/dictionary.txt b/codespell_lib/data/dictionary.txt index dccec08ccb..febb0e1e83 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -43530,6 +43530,8 @@ paretheses->parentheses parethesis->parenthesis parfay->parfait parge->large +parger->larger, pager, parker, parser, +pargers->pagers, parkers, parsers, paria->pariah, parka, parial->partial parially->partially From 9146571a446a2cadf99f3ae4b5c0cae48635f701 Mon Sep 17 00:00:00 2001 From: George Ogden Date: Tue, 27 Jan 2026 10:14:36 +0000 Subject: [PATCH 187/202] fomrula->formula --- codespell_lib/data/dictionary.txt | 3 +++ 1 file changed, 3 insertions(+) diff --git a/codespell_lib/data/dictionary.txt b/codespell_lib/data/dictionary.txt index febb0e1e83..c219e9b199 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -28858,6 +28858,9 @@ fomrats->formats fomratted->formatted fomratter->formatter fomratting->formatting +fomrula->formula +fomrulae->formulae +fomrulas->formulas fomula->formula fomulae->formulae fomulaic->formulaic From 7775339de82777c999b0a20bf6524f2fe75dd16e Mon Sep 17 00:00:00 2001 From: George Ogden Date: Sun, 1 Feb 2026 20:47:45 +0000 Subject: [PATCH 188/202] Add reinstat -> reinstate and variants --- codespell_lib/data/dictionary.txt | 3 +++ 1 file changed, 3 insertions(+) diff --git a/codespell_lib/data/dictionary.txt b/codespell_lib/data/dictionary.txt index c219e9b199..ac24e63cbc 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -49757,10 +49757,13 @@ reinstaled->reinstalled reinstaling->reinstalling reinstallin->reinstalling, reinstall in, reinstals->reinstalls +reinstat->reinstate +reinstatd->reinstated reinstatiate->reinstantiate reinstatiated->reinstantiated reinstatiates->reinstantiates reinstatiation->reinstantiation +reinstats->reinstates reintantiate->reinstantiate reintantiating->reinstantiating reintepret->reinterpret From 0556904bbe6f70c1da0aa8d1d4958dc50c76a173 Mon Sep 17 00:00:00 2001 From: George Ogden Date: Sun, 1 Feb 2026 20:50:01 +0000 Subject: [PATCH 189/202] Add reinstate as possible completion for other options --- codespell_lib/data/dictionary.txt | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/codespell_lib/data/dictionary.txt b/codespell_lib/data/dictionary.txt index ac24e63cbc..70179ab82a 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -49758,12 +49758,12 @@ reinstaling->reinstalling reinstallin->reinstalling, reinstall in, reinstals->reinstalls reinstat->reinstate -reinstatd->reinstated +reinstatd->reinstate, reinstated, reinstatiate->reinstantiate reinstatiated->reinstantiated reinstatiates->reinstantiates reinstatiation->reinstantiation -reinstats->reinstates +reinstats->reinstate, reinstates, reintantiate->reinstantiate reintantiating->reinstantiating reintepret->reinterpret From c6039a69f91221542257cedab88d56589f40464d Mon Sep 17 00:00:00 2001 From: George Ogden Date: Mon, 2 Feb 2026 13:38:22 +0000 Subject: [PATCH 190/202] complox -> complex --- codespell_lib/data/dictionary.txt | 2 ++ 1 file changed, 2 insertions(+) diff --git a/codespell_lib/data/dictionary.txt b/codespell_lib/data/dictionary.txt index 70179ab82a..bc056ea370 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -14860,6 +14860,8 @@ complitely->completely complites->completes, compiles, complition->completion, compilation, complmenet->complement +complox->complex +comploxity->complexity complte->complete complted->completed compltely->completely From c84db35172ae4bfb560c17457672b87a7b0c2e31 Mon Sep 17 00:00:00 2001 From: AJIOB Date: Tue, 17 Feb 2026 08:22:15 +0000 Subject: [PATCH 191/202] Fix widget typo --- codespell_lib/data/dictionary.txt | 2 ++ 1 file changed, 2 insertions(+) diff --git a/codespell_lib/data/dictionary.txt b/codespell_lib/data/dictionary.txt index bc056ea370..5314eb0c40 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -63413,6 +63413,8 @@ victimizin->victimizing victum->victim victums->victims videostreamming->videostreaming +vidget->widget +vidgets->widgets viee->view viees->views vieport->viewport From a66d70f66e147b19282f2c675c204623ca901648 Mon Sep 17 00:00:00 2001 From: Nathan McDougall Date: Sun, 22 Feb 2026 23:01:50 +1300 Subject: [PATCH 192/202] Add `unamiguous->unambiguous` etc. (#3875) Co-authored-by: Dimitri Papadopoulos Orfanos <3234522+DimitriPapadopoulos@users.noreply.github.com> --- codespell_lib/data/dictionary.txt | 2 ++ 1 file changed, 2 insertions(+) diff --git a/codespell_lib/data/dictionary.txt b/codespell_lib/data/dictionary.txt index 5314eb0c40..634264e423 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -61189,6 +61189,8 @@ unambigiously->unambiguously unambigous->unambiguous unambigously->unambiguously unamed->unnamed +unamiguous->unambiguous +unamiguously->unambiguously unanimuous->unanimous unanimuously->unanimously unannimous->unanimous From 92125a3814fa6e86cd2055385916ce5186d3e5df Mon Sep 17 00:00:00 2001 From: MDW Date: Sun, 22 Feb 2026 11:07:55 +0100 Subject: [PATCH 193/202] Add detection of ivoice and variants. Co-authored-by: Dimitri Papadopoulos Orfanos <3234522+DimitriPapadopoulos@users.noreply.github.com> --- codespell_lib/data/dictionary.txt | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/codespell_lib/data/dictionary.txt b/codespell_lib/data/dictionary.txt index 634264e423..03dde659dd 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -35855,6 +35855,12 @@ iverse->diverse, inverse, iversed->inverse, inversed, ivocation->invocation ivocations->invocations +ivoice->invoice +ivoiced->invoiced +ivoicer->invoicer +ivoicers->invoicers +ivoices->invoices +ivoicing->invoicing ivoke->invoke ivoked->invoked ivoker->invoker From b5cd66de14b8f65b0f45fabbe1c89bd69ea60939 Mon Sep 17 00:00:00 2001 From: Julian Stirling Date: Sun, 22 Feb 2026 10:13:12 +0000 Subject: [PATCH 194/202] respondant->respondent --- codespell_lib/data/dictionary.txt | 2 ++ 1 file changed, 2 insertions(+) diff --git a/codespell_lib/data/dictionary.txt b/codespell_lib/data/dictionary.txt index 03dde659dd..f40d7b6c5f 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -51338,6 +51338,8 @@ responcibility->responsibility responcible->responsible responcive->responsive responciveness->responsiveness +respondant->respondent +respondants->respondents responde->respond, response, responds, responded, responder, respondin->responding, respond in, respone->response, respond, From e047fdafb8620b08a86349014487886bcd9c2205 Mon Sep 17 00:00:00 2001 From: Christian Fischer Date: Mon, 9 Feb 2026 11:20:23 +0100 Subject: [PATCH 195/202] Add spelling correction for gather and variants. --- codespell_lib/data/dictionary.txt | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/codespell_lib/data/dictionary.txt b/codespell_lib/data/dictionary.txt index f40d7b6c5f..baf35fa7d0 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -29741,6 +29741,10 @@ gatable->gateable gateing->gating gatherig->gathering gatherin->gathering, gather in, +gathter->gather +gathtered->gathered +gathtering->gathering +gathters->gathers gatin->gating, latin, satin, gain, gratin, gatway->gateway gauage->gauge From 1f59f34d7c6d1642fdb325d9dfa49cf9eb5f692a Mon Sep 17 00:00:00 2001 From: utzcoz <43091780+utzcoz@users.noreply.github.com> Date: Tue, 24 Feb 2026 16:05:46 +0800 Subject: [PATCH 196/202] Add correction for 'foudation' to 'foundation' --- codespell_lib/data/dictionary.txt | 2 ++ 1 file changed, 2 insertions(+) diff --git a/codespell_lib/data/dictionary.txt b/codespell_lib/data/dictionary.txt index baf35fa7d0..53d3ee9bd0 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -29134,6 +29134,8 @@ fotografy->photography fotograph->photograph fotography->photography foucs->focus +foudation->foundation +foudations->foundations foudn->found foudning->founding fougth->fought From 583d8796d92eb58e15072db03e5b756be45f638a Mon Sep 17 00:00:00 2001 From: user27182 <89109579+user27182@users.noreply.github.com> Date: Tue, 24 Feb 2026 01:07:02 -0700 Subject: [PATCH 197/202] avoide->avoid, avoided, avoids, Co-authored-by: Dimitri Papadopoulos Orfanos <3234522+DimitriPapadopoulos@users.noreply.github.com> --- codespell_lib/data/dictionary.txt | 1 + 1 file changed, 1 insertion(+) diff --git a/codespell_lib/data/dictionary.txt b/codespell_lib/data/dictionary.txt index 53d3ee9bd0..e1f291a9d0 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -8922,6 +8922,7 @@ avoicance->avoidance avoiced->avoided avoicing->avoiding avoics->avoids +avoide->avoid, avoided, avoids, avoidence->avoidance avoidin->avoiding, avoid in, a void in, avoind->avoid From 04a071280d56148cab14249ccc8d4181c0066b3c Mon Sep 17 00:00:00 2001 From: Dimitri Papadopoulos Orfanos <3234522+DimitriPapadopoulos@users.noreply.github.com> Date: Tue, 24 Feb 2026 18:35:23 +0200 Subject: [PATCH 198/202] Bump ruff (#3879) Co-authored-by: Eric Larson --- .pre-commit-config.yaml | 4 ++-- pyproject.toml | 1 - 2 files changed, 2 insertions(+), 3 deletions(-) diff --git a/.pre-commit-config.yaml b/.pre-commit-config.yaml index dae3f4f63d..74620f58bd 100644 --- a/.pre-commit-config.yaml +++ b/.pre-commit-config.yaml @@ -58,7 +58,7 @@ repos: - -d - "{extends: relaxed, rules: {line-length: {max: 90}}}" - repo: https://github.com/astral-sh/ruff-pre-commit - rev: v0.14.14 + rev: v0.15.2 hooks: - id: ruff-check - id: ruff-format @@ -89,4 +89,4 @@ repos: - types-chardet ci: - autoupdate_schedule: monthly + autoupdate_schedule: weekly diff --git a/pyproject.toml b/pyproject.toml index da0d7b3291..58bc385343 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -143,7 +143,6 @@ ignore = [ "S404", "SIM105", "SIM115", - "UP038", # https://github.com/astral-sh/ruff/issues/7871 # https://docs.astral.sh/ruff/formatter/#conflicting-lint-rules "W191", "E111", From be17cacc96a5ee3f014e048f5962cfdb7145e096 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Fri, 27 Feb 2026 02:03:09 +0000 Subject: [PATCH 199/202] Bump actions/upload-artifact from 6 to 7 Bumps [actions/upload-artifact](https://github.com/actions/upload-artifact) from 6 to 7. - [Release notes](https://github.com/actions/upload-artifact/releases) - [Commits](https://github.com/actions/upload-artifact/compare/v6...v7) --- updated-dependencies: - dependency-name: actions/upload-artifact dependency-version: '7' dependency-type: direct:production update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] --- .github/workflows/release.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index aad2e05c76..b1521256ce 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -36,7 +36,7 @@ jobs: - name: Check env vars run: | echo "Triggered by: ${{ github.event_name }}" - - uses: actions/upload-artifact@v6 + - uses: actions/upload-artifact@v7 with: name: dist path: dist From 2a4acba3f282f1b5ccb7ad8b57bc991810663a44 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Fri, 27 Feb 2026 02:03:05 +0000 Subject: [PATCH 200/202] Bump actions/download-artifact from 7 to 8 Bumps [actions/download-artifact](https://github.com/actions/download-artifact) from 7 to 8. - [Release notes](https://github.com/actions/download-artifact/releases) - [Commits](https://github.com/actions/download-artifact/compare/v7...v8) --- updated-dependencies: - dependency-name: actions/download-artifact dependency-version: '8' dependency-type: direct:production update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] --- .github/workflows/release.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index b1521256ce..d603c5624b 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -47,7 +47,7 @@ jobs: runs-on: ubuntu-latest if: github.event_name == 'release' steps: - - uses: actions/download-artifact@v7 + - uses: actions/download-artifact@v8 with: name: dist path: dist From 4ec53bf6a3e510c64900d5ee838abd99d49b2910 Mon Sep 17 00:00:00 2001 From: "pre-commit-ci[bot]" <66853113+pre-commit-ci[bot]@users.noreply.github.com> Date: Mon, 2 Mar 2026 17:20:51 +0000 Subject: [PATCH 201/202] [pre-commit.ci] pre-commit autoupdate MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit updates: - [github.com/astral-sh/ruff-pre-commit: v0.15.2 → v0.15.4](https://github.com/astral-sh/ruff-pre-commit/compare/v0.15.2...v0.15.4) - [github.com/abravalheri/validate-pyproject: v0.24.1 → v0.25](https://github.com/abravalheri/validate-pyproject/compare/v0.24.1...v0.25) --- .pre-commit-config.yaml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.pre-commit-config.yaml b/.pre-commit-config.yaml index 74620f58bd..218ff0117e 100644 --- a/.pre-commit-config.yaml +++ b/.pre-commit-config.yaml @@ -58,7 +58,7 @@ repos: - -d - "{extends: relaxed, rules: {line-length: {max: 90}}}" - repo: https://github.com/astral-sh/ruff-pre-commit - rev: v0.15.2 + rev: v0.15.4 hooks: - id: ruff-check - id: ruff-format @@ -75,7 +75,7 @@ repos: additional_dependencies: - tomli - repo: https://github.com/abravalheri/validate-pyproject - rev: v0.24.1 + rev: v0.25 hooks: - id: validate-pyproject - repo: https://github.com/pre-commit/mirrors-mypy From 2ccb47ff45ad361a21071a7eedda4c37e6ae8c5a Mon Sep 17 00:00:00 2001 From: Eric Larson Date: Thu, 5 Mar 2026 11:25:15 -0500 Subject: [PATCH 202/202] Compat with chardet 7 (#3886) --- .github/workflows/tests.yml | 5 +++++ .gitignore | 1 + codespell_lib/_codespell.py | 10 +++++++--- 3 files changed, 13 insertions(+), 3 deletions(-) diff --git a/.github/workflows/tests.yml b/.github/workflows/tests.yml index 891c15f1de..16bc8ba438 100644 --- a/.github/workflows/tests.yml +++ b/.github/workflows/tests.yml @@ -31,6 +31,9 @@ jobs: os: - "ubuntu-24.04-arm" include: + - python-version: "3.10" + kind: "old" + os: "ubuntu-24.04-arm" - python-version: "3.10" kind: "no-toml" os: "ubuntu-24.04-arm" @@ -58,6 +61,8 @@ jobs: pip install -e ".[dev]" # install the codespell dev packages - run: pip install aspell-python-py3 if: startsWith(matrix.os, 'ubuntu') + - run: pip install "chardet<7" + if: ${{ matrix.kind == 'old' }} - run: codespell --help - run: codespell --version - run: make check diff --git a/.gitignore b/.gitignore index f4d749b818..cb3acd2e3e 100644 --- a/.gitignore +++ b/.gitignore @@ -14,3 +14,4 @@ codespell.egg-info codespell_lib/_version.py junit-results.xml *.egg-info/ +.DS_Store diff --git a/codespell_lib/_codespell.py b/codespell_lib/_codespell.py index 82c273095b..c5b5b4e21b 100644 --- a/codespell_lib/_codespell.py +++ b/codespell_lib/_codespell.py @@ -223,14 +223,18 @@ def __init__( def init_chardet(self) -> None: try: - from chardet.universaldetector import UniversalDetector - except ImportError as e: + import chardet # noqa: F401 + except ImportError: msg = ( "There's no chardet installed to import from. " "Please, install it and check your PYTHONPATH " "environment variable" ) - raise ImportError(msg) from e + raise ImportError(msg) + try: + from chardet import UniversalDetector + except ImportError: # chardet < 7 + from chardet.universaldetector import UniversalDetector self.encdetector = UniversalDetector()