From 60189bd9c46766195ef51f90fd8a4f7d4ec2be9d Mon Sep 17 00:00:00 2001 From: Kian-Meng Ang Date: Sun, 12 Jun 2022 20:59:02 +0800 Subject: [PATCH 001/302] Ignore .mypy_cache folder --- .gitignore | 1 + 1 file changed, 1 insertion(+) diff --git a/.gitignore b/.gitignore index a0a7f4a82c..75959139b1 100644 --- a/.gitignore +++ b/.gitignore @@ -7,3 +7,4 @@ codespell.egg-info *.orig .cache/ .pytest_cache/ +.mypy_cache/ From 96d2f377715a687f4dbeb95609d367a9f1b97ba6 Mon Sep 17 00:00:00 2001 From: Kian-Meng Ang Date: Mon, 13 Jun 2022 20:14:46 +0800 Subject: [PATCH 002/302] Update .gitignore Co-authored-by: Peter Newman --- .gitignore | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.gitignore b/.gitignore index 75959139b1..4a4f494c1e 100644 --- a/.gitignore +++ b/.gitignore @@ -6,5 +6,5 @@ codespell.egg-info *.pyc *.orig .cache/ -.pytest_cache/ .mypy_cache/ +.pytest_cache/ From e807a4e52d1d2c6af04398658941e973b88b9194 Mon Sep 17 00:00:00 2001 From: Janosh Riebesell Date: Mon, 3 Oct 2022 15:26:23 -0600 Subject: [PATCH 003/302] move falsy to codespell_lib/data/dictionary_code.txt and accreting to codespell_lib/data/dictionary_rare.txt --- codespell_lib/data/dictionary.txt | 2 -- codespell_lib/data/dictionary_code.txt | 1 + codespell_lib/data/dictionary_rare.txt | 1 + 3 files changed, 2 insertions(+), 2 deletions(-) diff --git a/codespell_lib/data/dictionary.txt b/codespell_lib/data/dictionary.txt index 5853c73af6..f892162180 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -497,7 +497,6 @@ accrdingly->accordingly accrediation->accreditation accredidation->accreditation accress->access -accreting->accrediting accroding->according accrodingly->accordingly accronym->acronym @@ -15330,7 +15329,6 @@ falshed->flashed falshes->flashes falshing->flashing falsly->falsely -falsy->falsely, false, falt->fault falure->failure familar->familiar diff --git a/codespell_lib/data/dictionary_code.txt b/codespell_lib/data/dictionary_code.txt index 29ee05081a..174a414c70 100644 --- a/codespell_lib/data/dictionary_code.txt +++ b/codespell_lib/data/dictionary_code.txt @@ -21,6 +21,7 @@ dur->due endcode->encode errorstring->error string exitst->exits, exists, +falsy->falsely, false, files'->file's gae->game, Gael, gale, hist->heist, his, diff --git a/codespell_lib/data/dictionary_rare.txt b/codespell_lib/data/dictionary_rare.txt index a6e2074c87..c3b279e384 100644 --- a/codespell_lib/data/dictionary_rare.txt +++ b/codespell_lib/data/dictionary_rare.txt @@ -1,4 +1,5 @@ ablet->able, tablet, +accreting->accrediting afterwords->afterwards amination->animation, lamination, aminations->animations, laminations, From 7a21337ccc96b683262b6dcca57f4768453b5b12 Mon Sep 17 00:00:00 2001 From: Tetsuo Koyama Date: Tue, 4 Oct 2022 14:26:11 +0900 Subject: [PATCH 004/302] interepolation->interpolation --- 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 5853c73af6..ea079d8002 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -19365,6 +19365,7 @@ intereference->interference intereferences->interferences interelated->interrelated interelaved->interleaved +interepolation->interpolation interepret->interpret interepretation->interpretation interepretations->interpretations From fcac86accde9a8dc617648e2dde2834a59e17832 Mon Sep 17 00:00:00 2001 From: Tetsuo Koyama Date: Wed, 5 Oct 2022 12:29:10 +0900 Subject: [PATCH 005/302] Apply suggestions from code review Co-authored-by: vikivivi <22041592+vikivivi@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 ea079d8002..c964f3ec40 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -19365,6 +19365,10 @@ intereference->interference intereferences->interferences interelated->interrelated interelaved->interleaved +interepolate->interpolate +interepolated->interpolated +interepolates->interpolates +interepolating->interpolating interepolation->interpolation interepret->interpret interepretation->interpretation From 21c94a92556665e931d2f9f973160d2ba938fc6e Mon Sep 17 00:00:00 2001 From: Tetsuo Koyama Date: Fri, 14 Oct 2022 16:53:09 +0900 Subject: [PATCH 006/302] insuffient->insufficient --- 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 005f0b6289..c0c5c94fa5 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -17963,6 +17963,7 @@ instutions->intuitions insue->ensue, insure, insufficent->insufficient insuffiency->insufficiency +insuffient->insufficient insurasnce->insurance insurence->insurance intaces->instance From 6b9d2738295224299e41b1542c898890dfd2863a Mon Sep 17 00:00:00 2001 From: vikivivi <22041592+vikivivi@users.noreply.github.com> Date: Sun, 16 Oct 2022 14:33:13 +0800 Subject: [PATCH 007/302] Misspelling of sufficient, sufficiently --- 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 7344e20015..9751565430 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -32653,11 +32653,17 @@ sufficated->suffocated sufficates->suffocates sufficating->suffocating suffication->suffocation +sufficency->sufficiency sufficent->sufficient sufficently->sufficiently +sufficiancy->sufficiency sufficiant->sufficient +sufficiantly->sufficiently sufficiennt->sufficient sufficienntly->sufficiently +suffiency->sufficiency +suffient->sufficient +suffiently->sufficiently suffisticated->sophisticated suficate->suffocate suficated->suffocated From ed7316b8985385ba6b44f0b4f9eaafd93c242866 Mon Sep 17 00:00:00 2001 From: Peter Newman Date: Mon, 17 Oct 2022 12:45:38 +0100 Subject: [PATCH 008/302] Update codespell_lib/data/dictionary.txt Co-authored-by: vikivivi <22041592+vikivivi@users.noreply.github.com> --- 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 c0c5c94fa5..cf7826ecc8 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -17961,9 +17961,12 @@ insturments->instruments instutionalized->institutionalized instutions->intuitions insue->ensue, insure, +insufficency->insufficiency insufficent->insufficient +insufficently->insufficiently insuffiency->insufficiency insuffient->insufficient +insuffiently->insufficiently insurasnce->insurance insurence->insurance intaces->instance From 4c5a58f2c7891693f021eca4be1a6d6fe0c68c25 Mon Sep 17 00:00:00 2001 From: Robin Tweedie <70587124+robin-wayve@users.noreply.github.com> Date: Mon, 17 Oct 2022 15:35:03 +0200 Subject: [PATCH 009/302] add anayltic(s|al|ally) -> analytic(s|al|ally) (#2507) * add anayltic(s|al) -> analytic(s|al) * anayltically->analytically Co-authored-by: vikivivi <22041592+vikivivi@users.noreply.github.com> Co-authored-by: vikivivi <22041592+vikivivi@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 c36474e922..213782667f 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -1923,6 +1923,10 @@ anaylser->analyser anaylses->analyses anaylsis->analysis anaylsises->analysises +anayltic->analytic +anayltical->analytical +anayltically->analytically +anayltics->analytics anaylze->analyze anaylzed->analyzed anaylzer->analyzer From d7988f29375abbfbfc1c465315cc3823e3969a2f Mon Sep 17 00:00:00 2001 From: Dimitri Papadopoulos Orfanos <3234522+DimitriPapadopoulos@users.noreply.github.com> Date: Mon, 17 Oct 2022 16:04:10 +0200 Subject: [PATCH 010/302] Ignore flake8 rule W503 (#2069) By default, flake8 currently complains both when breaking before (W503) and after (W504) a binary operator. A choice needs to be made! Best practice evolved, around 2016, from breaking after to breaking before a binary operator. Therefore ignore W503. --- setup.cfg | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/setup.cfg b/setup.cfg index fe05ee4f73..7074b31afd 100644 --- a/setup.cfg +++ b/setup.cfg @@ -3,4 +3,4 @@ addopts = --cov=codespell_lib -rs --cov-report= --tb=short [flake8] exclude = build, ci-helpers -ignore = +ignore = W503 From baea4602445c00bd2fff7616e075508e43c7d6b7 Mon Sep 17 00:00:00 2001 From: Dimitri Papadopoulos Orfanos <3234522+DimitriPapadopoulos@users.noreply.github.com> Date: Mon, 17 Oct 2022 16:13:40 +0200 Subject: [PATCH 011/302] Dead code found by vulture (#2101) --- 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 dd2c21f1fd..ff15524584 100644 --- a/codespell_lib/_codespell.py +++ b/codespell_lib/_codespell.py @@ -237,7 +237,7 @@ class NewlineHelpFormatter(argparse.HelpFormatter): def _split_lines(self, text, width): parts = text.split('\n') out = list() - for pi, part in enumerate(parts): + for part in parts: # Eventually we could allow others... indent_start = '- ' if part.startswith(indent_start): From a22c4ebe824fc9f122f788a09c627394adc6b072 Mon Sep 17 00:00:00 2001 From: Janosh Riebesell Date: Wed, 12 Oct 2022 14:25:13 -0700 Subject: [PATCH 012/302] add subtrate(s)->substrate(s) to default dict --- 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 598c8fe5e9..5251d9cdf8 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -29825,6 +29825,8 @@ subtituting->substituting subtitution->substitution subtitutions->substitutions subtrafuge->subterfuge +subtrate->substrate +subtrates->substrates subtring->substring subtrings->substrings subtsitutable->substitutable From 2027f6ad0ec6decab0f263dc5e93a05016fe4402 Mon Sep 17 00:00:00 2001 From: int-y1 Date: Mon, 17 Oct 2022 20:55:04 -0700 Subject: [PATCH 013/302] Add "subtask" --- 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 305e4c03b8..5f4456ccc3 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -32475,6 +32475,8 @@ substaintially->substantially substancial->substantial substantialy->substantially substantivly->substantively +substask->subtask +substasks->subtasks substatial->substantial substential->substantial substentially->substantially @@ -32512,6 +32514,8 @@ subsysytems->subsystems subsytem->subsystem subsytems->subsystems subtabels->subtables +subtak->subtask +subtaks->subtask, subtasks, subtances->substances subtarger->subtarget, sub-target, subtargers->subtargets, sub-targets, From d31e0df51ac732722b7871fbcb5446a4d3a60820 Mon Sep 17 00:00:00 2001 From: Jon Dufresne Date: Tue, 18 Oct 2022 10:58:43 -0700 Subject: [PATCH 014/302] Apply pyupgrade to project (#2364) Update patterns to modern Python syntax and features. Drops unnecessary legacy syntax that was required for Python 2 (removed in 9c3db1a5c5e02739eedba9e9915acd51736300b3). Details on pyupgrade can be found at: https://github.com/asottile/pyupgrade --- codespell_lib/_codespell.py | 19 +++++++++---------- codespell_lib/tests/test_basic.py | 18 ++++++++---------- codespell_lib/tests/test_dictionary.py | 8 +++----- 3 files changed, 20 insertions(+), 25 deletions(-) diff --git a/codespell_lib/_codespell.py b/codespell_lib/_codespell.py index ff15524584..598aa72aa5 100644 --- a/codespell_lib/_codespell.py +++ b/codespell_lib/_codespell.py @@ -1,4 +1,3 @@ -# -*- coding: utf-8 -*- # # This program is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by @@ -29,12 +28,12 @@ # autogenerated by setuptools_scm from ._version import __version__ as VERSION -word_regex_def = u"[\\w\\-'’`]+" +word_regex_def = "[\\w\\-'’`]+" # While we want to treat characters like ( or " as okay for a starting break, # 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 = (u"(\\b(?:https?|[ts]?ftp|file|git|smb)://[^\\s]+(?=$|\\s)|" - u"\\b[\\w.%+-]+@[\\w.-]+\\b)") +uri_regex_def = ("(\\b(?:https?|[ts]?ftp|file|git|smb)://[^\\s]+(?=$|\\s)|" + "\\b[\\w.%+-]+@[\\w.-]+\\b)") encodings = ('utf-8', 'iso-8859-1') USAGE = """ \t%prog [OPTIONS] [file1 file2 ... fileN] @@ -83,7 +82,7 @@ # file1 .. fileN Files to check spelling -class QuietLevels(object): +class QuietLevels: NONE = 0 ENCODING = 1 BINARY_FILE = 2 @@ -92,7 +91,7 @@ class QuietLevels(object): FIXES = 16 -class GlobMatch(object): +class GlobMatch: def __init__(self, pattern): if pattern: # Pattern might be a list of comma-delimited strings @@ -111,14 +110,14 @@ def match(self, filename): return False -class Misspelling(object): +class Misspelling: def __init__(self, data, fix, reason): self.data = data self.fix = fix self.reason = reason -class TermColors(object): +class TermColors: def __init__(self): self.FILE = '\033[33m' self.WWORD = '\033[31m' @@ -132,7 +131,7 @@ def disable(self): self.DISABLE = '' -class Summary(object): +class Summary: def __init__(self): self.summary = {} @@ -152,7 +151,7 @@ def __str__(self): width=15 - len(key)) for key in keys]) -class FileOpener(object): +class FileOpener: def __init__(self, use_chardet, quiet_level): self.use_chardet = use_chardet if use_chardet: diff --git a/codespell_lib/tests/test_basic.py b/codespell_lib/tests/test_basic.py index 49f81ce696..8b73584a46 100644 --- a/codespell_lib/tests/test_basic.py +++ b/codespell_lib/tests/test_basic.py @@ -1,5 +1,3 @@ -# -*- coding: utf-8 -*- - import contextlib import inspect import os @@ -22,7 +20,7 @@ def test_constants(): assert EX_DATAERR == 65 -class MainWrapper(object): +class MainWrapper: """Compatibility wrapper for when we used to return the count.""" def main(self, *args, count=True, std=False, **kwargs): @@ -174,7 +172,7 @@ def test_interactivity(tmpdir, capsys): with FakeStdin('0\n'): # blank input -> nothing assert cs.main('-w', '-i', '3', f.name) == 0 assert cs.main(f.name) == 0 - with open(f.name, 'r') as f_read: + with open(f.name) as f_read: assert f_read.read() == 'awkward\n' with open(f.name, 'w') as f: f.write('ackward\n') @@ -184,7 +182,7 @@ def test_interactivity(tmpdir, capsys): assert code == 0 assert 'a valid option' in stdout assert cs.main(f.name) == 0 - with open(f.name, 'r') as f: + with open(f.name) as f: assert f.read() == 'backward\n' finally: os.remove(f.name) @@ -249,11 +247,11 @@ def test_exclude_file(tmpdir, capsys): """Test exclude file functionality.""" d = str(tmpdir) with open(op.join(d, 'bad.txt'), 'wb') as f: - f.write('1 abandonned 1\n2 abandonned 2\n'.encode('utf-8')) + f.write(b'1 abandonned 1\n2 abandonned 2\n') bad_name = f.name assert cs.main(bad_name) == 2 with open(op.join(d, 'tmp.txt'), 'wb') as f: - f.write('1 abandonned 1\n'.encode('utf-8')) + f.write(b'1 abandonned 1\n') assert cs.main(bad_name) == 2 assert cs.main('-x', f.name, bad_name) == 1 @@ -266,11 +264,11 @@ def test_encoding(tmpdir, capsys): # with CaptureStdout() as sio: assert cs.main(f.name) == 0 with open(f.name, 'wb') as f: - f.write(u'naïve\n'.encode('utf-8')) + f.write('naïve\n'.encode()) assert cs.main(f.name) == 0 assert cs.main('-e', f.name) == 0 with open(f.name, 'ab') as f: - f.write(u'naieve\n'.encode('utf-8')) + f.write(b'naieve\n') assert cs.main(f.name) == 1 # Encoding detection (only try ISO 8859-1 because UTF-8 is the default) with open(f.name, 'wb') as f: @@ -395,7 +393,7 @@ def test_case_handling(tmpdir, capsys): # with CaptureStdout() as sio: assert cs.main(f.name) == 0 with open(f.name, 'wb') as f: - f.write('this has an ACII error'.encode('utf-8')) + f.write(b'this has an ACII error') code, stdout, _ = cs.main(f.name, std=True) assert code == 1 assert 'ASCII' in stdout diff --git a/codespell_lib/tests/test_dictionary.py b/codespell_lib/tests/test_dictionary.py index 6d246d35ac..9f3dec0365 100644 --- a/codespell_lib/tests/test_dictionary.py +++ b/codespell_lib/tests/test_dictionary.py @@ -1,5 +1,3 @@ -# -*- coding: utf-8 -*- - import glob import os.path as op import os @@ -41,9 +39,9 @@ def test_dictionaries_exist(): """Test consistency of dictionaries.""" - doc_fnames = set(op.basename(f[0]) for f in _fnames_in_aspell) - got_fnames = set(op.basename(f) - for f in glob.glob(op.join(_data_dir, '*.txt'))) + doc_fnames = {op.basename(f[0]) for f in _fnames_in_aspell} + got_fnames = {op.basename(f) + for f in glob.glob(op.join(_data_dir, '*.txt'))} assert doc_fnames == got_fnames From 7e37d8b9933d93bb63789e59fd69b937a264c8c9 Mon Sep 17 00:00:00 2001 From: Janosh Riebesell Date: Tue, 18 Oct 2022 11:33:19 -0700 Subject: [PATCH 015/302] {speherical,sperhical}-spherical --- 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 5f4456ccc3..e6c79914f1 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -31745,6 +31745,7 @@ spefiy->specify spefiying->specifying spefy->specify spefying->specifying +speherical->spherical speical->special speices->species speicfied->specified @@ -31770,6 +31771,7 @@ speperator->separator speperats->separates sperate->separate sperately->separately +sperhical->spherical spermatozoan->spermatozoon speshal->special speshally->specially, especially, From a050986bf8fc90aa02f26b8232d1ad08a91a26e3 Mon Sep 17 00:00:00 2001 From: Dimitri Papadopoulos Orfanos <3234522+DimitriPapadopoulos@users.noreply.github.com> Date: Wed, 19 Oct 2022 17:44:09 +0200 Subject: [PATCH 016/302] Fix uncaught exception on unreadable files (#2196) * Avoid bailing out with uncaught `PermissionError` * Update codespell_lib/tests/test_basic.py * FIX: Coverage * FIX: Already short-circuited Co-authored-by: Eric Larson --- .github/workflows/codespell-private.yml | 4 ++-- .gitignore | 2 ++ codespell_lib/_codespell.py | 12 ++++++++++-- codespell_lib/tests/test_basic.py | 14 ++++++++++++++ setup.cfg | 2 +- 5 files changed, 29 insertions(+), 5 deletions(-) diff --git a/.github/workflows/codespell-private.yml b/.github/workflows/codespell-private.yml index 1ad4e3b1a4..44c71aca1d 100644 --- a/.github/workflows/codespell-private.yml +++ b/.github/workflows/codespell-private.yml @@ -33,16 +33,16 @@ jobs: run: | python --version # just to check pip install -U pip wheel # upgrade to latest pip find 3.5 wheels; wheel to avoid errors - pip install --upgrade codecov chardet "setuptools!=47.2.0" docutils setuptools_scm[toml] + pip install --upgrade chardet "setuptools!=47.2.0" docutils setuptools_scm[toml] pip install aspell-python-py3 pip install -e ".[dev]" # install the codespell dev packages - run: codespell --help - run: codespell --version - run: make check + - uses: codecov/codecov-action@v3 - run: codespell --check-filenames --skip="./.git/*,*.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/*" # this file has an error - run: "! codespell codespell_lib/tests/test_basic.py" - - run: codecov make-check-dictionaries: runs-on: ubuntu-latest diff --git a/.gitignore b/.gitignore index 1b7db2d20b..c3704dda05 100644 --- a/.gitignore +++ b/.gitignore @@ -9,3 +9,5 @@ codespell.egg-info .mypy_cache/ .pytest_cache/ codespell_lib/_version.py +junit-results.xml +*.egg-info/ diff --git a/codespell_lib/_codespell.py b/codespell_lib/_codespell.py index 598aa72aa5..df55894980 100644 --- a/codespell_lib/_codespell.py +++ b/codespell_lib/_codespell.py @@ -647,14 +647,22 @@ def parse_file(filename, colors, summary, misspellings, exclude_lines, if not os.path.isfile(filename): return bad_count - text = is_text_file(filename) + try: + text = is_text_file(filename) + except PermissionError as e: + print("WARNING: %s: %s" % (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("WARNING: Binary file: %s" % filename, file=sys.stderr) return bad_count try: lines, encoding = file_opener.open(filename) - except Exception: + except OSError: return bad_count for i, line in enumerate(lines): diff --git a/codespell_lib/tests/test_basic.py b/codespell_lib/tests/test_basic.py index 8b73584a46..ffae8b64e7 100644 --- a/codespell_lib/tests/test_basic.py +++ b/codespell_lib/tests/test_basic.py @@ -122,6 +122,20 @@ def test_basic(tmpdir, capsys): assert cs.main(d) == 0 +@pytest.mark.skipif( + not sys.platform == 'linux', reason='Only supported on Linux') +def test_permission_error(tmp_path, capsys): + """Test permission error handling.""" + d = tmp_path + with open(d / 'unreadable.txt', 'w') as f: + f.write('abandonned\n') + code, _, stderr = cs.main(f.name, std=True) + assert 'WARNING:' not in stderr + os.chmod(f.name, 0o000) + code, _, stderr = cs.main(f.name, std=True) + assert 'WARNING:' in stderr + + def test_interactivity(tmpdir, capsys): """Test interaction""" # Windows can't read a currently-opened file, so here we use diff --git a/setup.cfg b/setup.cfg index 7074b31afd..9776335475 100644 --- a/setup.cfg +++ b/setup.cfg @@ -1,5 +1,5 @@ [tool:pytest] -addopts = --cov=codespell_lib -rs --cov-report= --tb=short +addopts = --cov=codespell_lib -rs --cov-report= --tb=short --junit-xml=junit-results.xml [flake8] exclude = build, ci-helpers From 88505c950f3f6253bc9662264e423595fc6c4214 Mon Sep 17 00:00:00 2001 From: Jonathan Berthias Date: Thu, 20 Oct 2022 09:45:40 +0200 Subject: [PATCH 017/302] Add constrainst 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 80e6a3a589..ffab49b344 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -8023,6 +8023,7 @@ constracted->constructed constractor->constructor constractors->constructors constraing->constraining, constraint, +constrainst->constraint, constraints, constrainted->constrained constraintes->constraints constrainting->constraining From ec43d4fcbf14d7fa9a1b166019f53dcaa62f17cd Mon Sep 17 00:00:00 2001 From: Jonathan Berthias Date: Thu, 20 Oct 2022 10:49:58 +0200 Subject: [PATCH 018/302] Add constrainsts 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 ffab49b344..20e8185bb3 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -8024,6 +8024,7 @@ constractor->constructor constractors->constructors constraing->constraining, constraint, constrainst->constraint, constraints, +constrainsts->constraints constrainted->constrained constraintes->constraints constrainting->constraining From 04f93cfd282cbfd59ffb8fa6b976231643cbb661 Mon Sep 17 00:00:00 2001 From: Peter Newman Date: Wed, 19 Oct 2022 12:31:47 +0100 Subject: [PATCH 019/302] Add relative hidden directory tests --- codespell_lib/tests/test_basic.py | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/codespell_lib/tests/test_basic.py b/codespell_lib/tests/test_basic.py index ffae8b64e7..10f472c8c7 100644 --- a/codespell_lib/tests/test_basic.py +++ b/codespell_lib/tests/test_basic.py @@ -397,6 +397,11 @@ def test_check_hidden(tmpdir, capsys): assert cs.main(d) == 0 assert cs.main('--check-hidden', d) == 2 assert cs.main('--check-hidden', '--check-filenames', d) == 5 + # check again with a relative path + rel = op.join('.', str(tmpdir)) + assert cs.main(rel) == 0 + assert cs.main('--check-hidden', rel) == 2 + assert cs.main('--check-hidden', '--check-filenames', rel) == 5 def test_case_handling(tmpdir, capsys): From 9c5c6ec4441ddf4673cf6eb41ba7bf7ea48129b9 Mon Sep 17 00:00:00 2001 From: Peter Newman Date: Wed, 19 Oct 2022 12:51:05 +0100 Subject: [PATCH 020/302] Test a hidden subdirectory too --- codespell_lib/tests/test_basic.py | 14 +++++++++++++- 1 file changed, 13 insertions(+), 1 deletion(-) diff --git a/codespell_lib/tests/test_basic.py b/codespell_lib/tests/test_basic.py index 10f472c8c7..78be557454 100644 --- a/codespell_lib/tests/test_basic.py +++ b/codespell_lib/tests/test_basic.py @@ -398,10 +398,22 @@ def test_check_hidden(tmpdir, capsys): assert cs.main('--check-hidden', d) == 2 assert cs.main('--check-hidden', '--check-filenames', d) == 5 # check again with a relative path - rel = op.join('.', str(tmpdir)) + rel = op.relpath(tmpdir) assert cs.main(rel) == 0 assert cs.main('--check-hidden', rel) == 2 assert cs.main('--check-hidden', '--check-filenames', rel) == 5 + # hidden subdirectory + assert cs.main(d) == 0 + assert cs.main('--check-hidden', d) == 2 + assert cs.main('--check-hidden', '--check-filenames', d) == 5 + subdir = op.join(d, 'subdir') + os.mkdir(subdir) + os.mkdir(op.join(subdir, '.abandonned')) + copyfile(op.join(d, '.abandonned.txt'), + op.join(subdir, '.abandonned', 'abandonned.txt')) + assert cs.main(d) == 0 + assert cs.main('--check-hidden', d) == 4 + assert cs.main('--check-hidden', '--check-filenames', d) == 10 def test_case_handling(tmpdir, capsys): From b98f2c66d3654bd6270973b21a48136236f6eb31 Mon Sep 17 00:00:00 2001 From: Peter Newman Date: Wed, 19 Oct 2022 13:00:00 +0100 Subject: [PATCH 021/302] Fix the expected typo numbers --- codespell_lib/tests/test_basic.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/codespell_lib/tests/test_basic.py b/codespell_lib/tests/test_basic.py index 78be557454..f1321b89a2 100644 --- a/codespell_lib/tests/test_basic.py +++ b/codespell_lib/tests/test_basic.py @@ -412,8 +412,8 @@ def test_check_hidden(tmpdir, capsys): copyfile(op.join(d, '.abandonned.txt'), op.join(subdir, '.abandonned', 'abandonned.txt')) assert cs.main(d) == 0 - assert cs.main('--check-hidden', d) == 4 - assert cs.main('--check-hidden', '--check-filenames', d) == 10 + assert cs.main('--check-hidden', d) == 3 + assert cs.main('--check-hidden', '--check-filenames', d) == 7 def test_case_handling(tmpdir, capsys): From f590535d7d8d2e4f47f0fe8efdc7eacf68ddaa88 Mon Sep 17 00:00:00 2001 From: Peter Newman Date: Wed, 19 Oct 2022 13:05:00 +0100 Subject: [PATCH 022/302] Recreate Dimitri's demo as a test --- codespell_lib/tests/test_basic.py | 20 +++++++++++++++++++- 1 file changed, 19 insertions(+), 1 deletion(-) diff --git a/codespell_lib/tests/test_basic.py b/codespell_lib/tests/test_basic.py index f1321b89a2..0d118e1ed4 100644 --- a/codespell_lib/tests/test_basic.py +++ b/codespell_lib/tests/test_basic.py @@ -413,7 +413,25 @@ def test_check_hidden(tmpdir, capsys): op.join(subdir, '.abandonned', 'abandonned.txt')) assert cs.main(d) == 0 assert cs.main('--check-hidden', d) == 3 - assert cs.main('--check-hidden', '--check-filenames', d) == 7 + assert cs.main('--check-hidden', '--check-filenames', d) == 8 + os.mkdir(op.join(d, '.abandonned', 'a')) + copyfile(op.join(d, '.abandonned.txt'), + op.join(d, '.abandonned', 'a', 'abandonned.txt')) + assert cs.main(d) == 0 + assert cs.main('--check-hidden', d) == 4 + assert cs.main('--check-hidden', '--check-filenames', d) == 11 + os.mkdir(op.join(d, '.abandonned', 'a', 'b')) + copyfile(op.join(d, '.abandonned.txt'), + op.join(d, '.abandonned', 'a', 'b', 'abandonned.txt')) + assert cs.main(d) == 0 + assert cs.main('--check-hidden', d) == 5 + assert cs.main('--check-hidden', '--check-filenames', d) == 14 + os.mkdir(op.join(d, '.abandonned', 'a', 'b', 'c')) + copyfile(op.join(d, '.abandonned.txt'), + op.join(d, '.abandonned', 'a', 'b', 'c', 'abandonned.txt')) + assert cs.main(d) == 0 + assert cs.main('--check-hidden', d) == 6 + assert cs.main('--check-hidden', '--check-filenames', d) == 17 def test_case_handling(tmpdir, capsys): From b2866507b99bc802ec9bec9cb4fdc0708736c78f Mon Sep 17 00:00:00 2001 From: Peter Newman Date: Wed, 19 Oct 2022 13:12:29 +0100 Subject: [PATCH 023/302] Remove the broken tests for now --- codespell_lib/tests/test_basic.py | 18 ------------------ 1 file changed, 18 deletions(-) diff --git a/codespell_lib/tests/test_basic.py b/codespell_lib/tests/test_basic.py index 0d118e1ed4..681ba20423 100644 --- a/codespell_lib/tests/test_basic.py +++ b/codespell_lib/tests/test_basic.py @@ -414,24 +414,6 @@ def test_check_hidden(tmpdir, capsys): assert cs.main(d) == 0 assert cs.main('--check-hidden', d) == 3 assert cs.main('--check-hidden', '--check-filenames', d) == 8 - os.mkdir(op.join(d, '.abandonned', 'a')) - copyfile(op.join(d, '.abandonned.txt'), - op.join(d, '.abandonned', 'a', 'abandonned.txt')) - assert cs.main(d) == 0 - assert cs.main('--check-hidden', d) == 4 - assert cs.main('--check-hidden', '--check-filenames', d) == 11 - os.mkdir(op.join(d, '.abandonned', 'a', 'b')) - copyfile(op.join(d, '.abandonned.txt'), - op.join(d, '.abandonned', 'a', 'b', 'abandonned.txt')) - assert cs.main(d) == 0 - assert cs.main('--check-hidden', d) == 5 - assert cs.main('--check-hidden', '--check-filenames', d) == 14 - os.mkdir(op.join(d, '.abandonned', 'a', 'b', 'c')) - copyfile(op.join(d, '.abandonned.txt'), - op.join(d, '.abandonned', 'a', 'b', 'c', 'abandonned.txt')) - assert cs.main(d) == 0 - assert cs.main('--check-hidden', d) == 6 - assert cs.main('--check-hidden', '--check-filenames', d) == 17 def test_case_handling(tmpdir, capsys): From 5962a7ba86214737abb2d740c9271dcf6bdc9add Mon Sep 17 00:00:00 2001 From: Janosh Riebesell Date: Thu, 20 Oct 2022 18:31:47 -0700 Subject: [PATCH 024/302] add trignometric->trigonometric --- 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 20e8185bb3..e14f890c29 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -34657,6 +34657,7 @@ triggerred->triggered triggerring->triggering triggerrs->triggers triggger->trigger +trignometric->trigonometric triguered->triggered trik->trick, trike, triked->tricked From 7ec60ca98dc04cdbedc38c16d9d58299ab6a98e1 Mon Sep 17 00:00:00 2001 From: Janosh Riebesell Date: Fri, 21 Oct 2022 10:50:28 -0700 Subject: [PATCH 025/302] add trignometry->trigonometry --- 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 e14f890c29..255636c187 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -34658,6 +34658,7 @@ triggerring->triggering triggerrs->triggers triggger->trigger trignometric->trigonometric +trignometry->trigonometry triguered->triggered trik->trick, trike, triked->tricked From 05d7d0c557000f56ef94ff88f60a9c3312680399 Mon Sep 17 00:00:00 2001 From: Peter Newman Date: Sun, 23 Oct 2022 11:35:06 +0100 Subject: [PATCH 026/302] Add virtualied->virtualized, virtualised 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 255636c187..41aa8dbf22 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -11017,6 +11017,7 @@ deviiation->deviation deviiations->deviations devined->defined devired->derived +devirtualied->devirtualized, devirtualised, devirtualisaion->devirtualisation devirtualisaiton->devirtualisation devirtualizaion->devirtualization @@ -24435,6 +24436,7 @@ parastic->parasitic parastics->parasitics paratheses->parentheses paratmers->parameters +paravirtualied->paravirtualized, paravirtualised, paravirutalisation->paravirtualisation paravirutalise->paravirtualise paravirutalised->paravirtualised @@ -36387,6 +36389,7 @@ virtical->vertical virtiual->virtual virttual->virtual virttually->virtually +virtualied->virtualized, virtualised, virtualisaion->virtualisation virtualisaiton->virtualisation virtualizaion->virtualization From c77b843a0399cf20aefe61f72c3622005988fc39 Mon Sep 17 00:00:00 2001 From: Peter Newman Date: Sun, 23 Oct 2022 14:59:53 +0100 Subject: [PATCH 027/302] Add virtualiation 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 41aa8dbf22..bfc19260c3 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -11018,6 +11018,7 @@ deviiations->deviations devined->defined devired->derived devirtualied->devirtualized, devirtualised, +devirtualiation->devirtualization, devirtualisation, devirtualisaion->devirtualisation devirtualisaiton->devirtualisation devirtualizaion->devirtualization @@ -24437,6 +24438,7 @@ parastics->parasitics paratheses->parentheses paratmers->parameters paravirtualied->paravirtualized, paravirtualised, +paravirtualiation->paravirtualization, paravirtualisation, paravirutalisation->paravirtualisation paravirutalise->paravirtualise paravirutalised->paravirtualised @@ -36390,6 +36392,7 @@ virtiual->virtual virttual->virtual virttually->virtually virtualied->virtualized, virtualised, +virtualiation->virtualization, virtualisation, virtualisaion->virtualisation virtualisaiton->virtualisation virtualizaion->virtualization From 3a43bd4b3d2b32845773627d2c9d1f712a2d0a11 Mon Sep 17 00:00:00 2001 From: Peter Newman Date: Sun, 23 Oct 2022 15:02:12 +0100 Subject: [PATCH 028/302] Sort the dictionary --- 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 bfc19260c3..4e0aa3978b 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -11017,8 +11017,8 @@ deviiation->deviation deviiations->deviations devined->defined devired->derived -devirtualied->devirtualized, devirtualised, devirtualiation->devirtualization, devirtualisation, +devirtualied->devirtualized, devirtualised, devirtualisaion->devirtualisation devirtualisaiton->devirtualisation devirtualizaion->devirtualization @@ -24437,8 +24437,8 @@ parastic->parasitic parastics->parasitics paratheses->parentheses paratmers->parameters -paravirtualied->paravirtualized, paravirtualised, paravirtualiation->paravirtualization, paravirtualisation, +paravirtualied->paravirtualized, paravirtualised, paravirutalisation->paravirtualisation paravirutalise->paravirtualise paravirutalised->paravirtualised @@ -36391,8 +36391,8 @@ virtical->vertical virtiual->virtual virttual->virtual virttually->virtually -virtualied->virtualized, virtualised, virtualiation->virtualization, virtualisation, +virtualied->virtualized, virtualised, virtualisaion->virtualisation virtualisaiton->virtualisation virtualizaion->virtualization From a7000838b5693810ab1f97987e6d9c0a77a31cfb Mon Sep 17 00:00:00 2001 From: luzpaz Date: Sun, 23 Oct 2022 14:40:40 -0400 Subject: [PATCH 029/302] Add several spelling corrections (#2521) Co-authored-by: vikivivi <22041592+vikivivi@users.noreply.github.com> --- codespell_lib/data/dictionary.txt | 43 ++++++++++++++++++++++++++++++- 1 file changed, 42 insertions(+), 1 deletion(-) diff --git a/codespell_lib/data/dictionary.txt b/codespell_lib/data/dictionary.txt index 4e0aa3978b..d19627b326 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -1745,6 +1745,7 @@ alternatiely->alternatively, alternately, alternaties->alternatives, alternates, alternatievly->alternatively alternativey->alternatively +alternativley->alternatively alternativly->alternatively alternatve->alternative alternavtely->alternatively @@ -6681,6 +6682,8 @@ combinatorical->combinatorial combinbe->combined combind->combined combinded->combined +combiniation->combination +combiniations->combinations combinine->combine combintaion->combination combintaions->combinations @@ -10577,6 +10580,7 @@ describ->describe describbed->described describibg->describing describng->describing +describs->describes, describe, describtion->description describtions->descriptions descrice->describe @@ -13712,6 +13716,10 @@ evaluted->evaluated evalutes->evaluates evaluting->evaluating evalution->evaluation, evolution, +evalutions->evaluations +evalutive->evaluative +evalutor->evaluator +evalutors->evaluators evaulate->evaluate evaulated->evaluated evaulates->evaluates @@ -16369,6 +16377,7 @@ furter->further furthemore->furthermore furthermor->furthermore furtherst->furthest +furthremore->furthermore furthrest->furthest furthur->further furture->future @@ -17951,8 +17960,14 @@ implemets->implements implemnt->implement implemntation->implementation implemntations->implementations +implemt->implement implemtation->implementation +implemtations->implementations +implemted->implemented implemtentation->implementation +implemtentations->implementations +implemting->implementing +implemts->implements impleneted->implemented implenment->implement implenmentation->implementation @@ -18304,6 +18319,7 @@ incorported->incorporated incorprates->incorporates incorreclty->incorrectly incorrecly->incorrectly +incorrecty->incorrectly incorreect->incorrect incorreectly->incorrectly incorrent->incorrect @@ -19048,6 +19064,7 @@ insepects->inspects insependent->independent inseperable->inseparable insepsion->inception +inser->insert insering->inserting insersect->intersect insersected->intersected @@ -19351,6 +19368,10 @@ interative->interactive interatively->interactively interator->iterator interators->iterators +interaxction->interaction +interaxctions->interactions +interaxtion->interaction +interaxtions->interactions interbread->interbreed, interbred, intercahnge->interchange intercahnged->interchanged @@ -19638,6 +19659,7 @@ intitialized->initialized intitials->initials intity->entity intot->into +intoto->into intpreter->interpreter intput->input intputs->inputs @@ -20415,6 +20437,7 @@ libraray->library libraris->libraries librarries->libraries librarry->library +libraryes->libraries libratie->library libraties->libraries libraty->library @@ -21142,6 +21165,14 @@ meaninless->meaningless meaninng->meaning mear->wear, mere, mare, mearly->merely, nearly, +meassurable->measurable +meassurably->measurably +meassure->measure +meassured->measured +meassurement->measurement +meassurements->measurements +meassures->measures +meassuring->measuring measue->measure measued->measured measuement->measurement @@ -21839,6 +21870,8 @@ Mocrosoft->Microsoft mocule->module mocules->modules moddel->model +moddeled->modeled +moddelled->modelled moddels->models modee->mode modelinng->modeling @@ -23375,6 +23408,8 @@ occrrances->occurrences occrred->occurred occrring->occurring occsionally->occasionally +occucence->occurrence +occucences->occurrences occulusion->occlusion occuped->occupied occupided->occupied @@ -24935,6 +24970,8 @@ perpertrated->perpetrated perperty->property perphas->perhaps perpindicular->perpendicular +perpsective->perspective +perpsectives->perspectives perrror->perror persan->person persepctive->perspective @@ -25511,6 +25548,7 @@ possibile->possible possibilies->possibilities possibilites->possibilities possibilitities->possibilities +possibiliy->possibility possibillity->possibility possibilties->possibilities possibilty->possibility @@ -35175,6 +35213,7 @@ unesacpe->unescape unesacped->unescaped unessecarry->unnecessary unessecary->unnecessary +unevaluted->unevaluated unexcected->unexpected unexcectedly->unexpectedly unexcpected->unexpected @@ -35319,7 +35358,7 @@ uninstlaling->uninstalling uninstlals->uninstalls unint8_t->uint8_t unintelligable->unintelligible -unintented->unintended +unintented->unintended, unindented, unintentially->unintentionally uninteressting->uninteresting uninterpretted->uninterpreted @@ -35930,6 +35969,7 @@ uqest->quest uqests->quests ure->sure, ire, are, urea, rue, urrlib->urllib +usag->usage usal->usual usally->usually uscaled->unscaled @@ -37009,6 +37049,7 @@ witin->within witk->with witn->with witout->without +witrh->with witth->with wiull->will wiyh->with From 91afcbf63764db98f5973f4f929603d0e1c473e2 Mon Sep 17 00:00:00 2001 From: Jon Dufresne Date: Sun, 23 Oct 2022 18:08:11 -0700 Subject: [PATCH 030/302] Slightly simplify some boolean expressions --- codespell_lib/_codespell.py | 10 ++-------- 1 file changed, 2 insertions(+), 8 deletions(-) diff --git a/codespell_lib/_codespell.py b/codespell_lib/_codespell.py index df55894980..25c8e828a3 100644 --- a/codespell_lib/_codespell.py +++ b/codespell_lib/_codespell.py @@ -103,11 +103,7 @@ def match(self, filename): if self.pattern_list is None: return False - for p in self.pattern_list: - if fnmatch.fnmatch(filename, p): - return True - - return False + return any(fnmatch.fnmatch(filename, p) for p in self.pattern_list) class Misspelling: @@ -507,9 +503,7 @@ def is_hidden(filename, check_hidden): def is_text_file(filename): with open(filename, mode='rb') as f: s = f.read(1024) - if b'\x00' in s: - return False - return True + return b'\x00' not in s def fix_case(word, fixword): From 8609de50506a8ca4c78e17bf8cfcbdda37f6e5f6 Mon Sep 17 00:00:00 2001 From: Eric Larson Date: Mon, 24 Oct 2022 12:17:41 -0400 Subject: [PATCH 031/302] MAINT: Add CODEOWNERS (#2535) --- .github/CODEOWNERS | 28 ++++++++++++++++++++++++++++ 1 file changed, 28 insertions(+) create mode 100644 .github/CODEOWNERS diff --git a/.github/CODEOWNERS b/.github/CODEOWNERS new file mode 100644 index 0000000000..698160330d --- /dev/null +++ b/.github/CODEOWNERS @@ -0,0 +1,28 @@ +# The purpose of this file is to trigger review requests when PRs touch +# particular files. Those reviews are not mandatory, however it's often useful +# to have an expert pinged who is interested in only one part of codespell and +# doesn't follow general development. +# +# Note that only GitHub handles (whether individuals or teams) with commit +# rights should be added to this file. +# See https://docs.github.com/en/github/creating-cloning-and-archiving-repositories/about-code-owners +# for more details about how CODEOWNERS works. + +# Each line is a file pattern followed by one or more owners. + +# Copy-paste-adapted from SciPy + +# Administrata and CIs +*.toml @larsoner +*.yml @larsoner +*.rst @larsoner +*.cfg @larsoner +coverage* @larsoner +.github/* @larsoner +Makefile @larsoner + +# Python code +codespell_lib/*.py @larsoner + +# Dictionaries +# codepell_lib/data/*.txt @luzpaz From 9b0dd2e08c4aae65911ed153c6f53191eaa6345a Mon Sep 17 00:00:00 2001 From: Janosh Riebesell Date: Mon, 24 Oct 2022 11:04:47 -0700 Subject: [PATCH 032/302] positivie->positive --- 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 d19627b326..a5992dd722 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -25508,6 +25508,7 @@ positionning->positioning positionns->positions positionof->position, position of, positiv->positive +positivie->positive positivies->positives positivly->positively positivy->positivity, positively, positive, From df00783d8f6c179ef05634ed55a330c120aa2732 Mon Sep 17 00:00:00 2001 From: Stefan Appelhoff Date: Tue, 25 Oct 2022 13:19:57 +0200 Subject: [PATCH 033/302] DOC/ENH: Clarify usage or configuration files and log about it (#2552) --- README.rst | 11 +++++++++++ codespell_lib/_codespell.py | 21 ++++++++++++++++++--- 2 files changed, 29 insertions(+), 3 deletions(-) diff --git a/README.rst b/README.rst index fb5702e262..8ad961d800 100644 --- a/README.rst +++ b/README.rst @@ -117,6 +117,17 @@ These are both equivalent to running:: codespell --quiet-level 3 --count --skip "*.po,*.ts,./src/3rdParty,./src/Test" +If several config files are present, they are read in the following order: + +#. ``pyproject.toml`` (only if the ``tomli`` library is available) +#. ``setup.cfg`` +#. ``.codespellrc`` +#. any additional file supplied via ``--config`` + +If a codespell configuration is supplied in several of these files, +the configuration from the most recently read file overwrites previously +specified configurations. + Any options specified in the command line will *override* options from the config files. diff --git a/codespell_lib/_codespell.py b/codespell_lib/_codespell.py index 25c8e828a3..9d52756918 100644 --- a/codespell_lib/_codespell.py +++ b/codespell_lib/_codespell.py @@ -419,8 +419,17 @@ def parse_options(args): with open(toml_file, 'rb') as f: data = tomli.load(f).get('tool', {}) config.read_dict(data) - config.read(cfg_files) + # Collect which config files are going to be used + used_cfg_files = [] + for cfg_file in cfg_files: + _cfg = configparser.ConfigParser() + _cfg.read(cfg_file) + if _cfg.has_section('codespell'): + used_cfg_files.append(cfg_file) + + # Use config files + config.read(cfg_files) if config.has_section('codespell'): # Build a "fake" argv list using option name and value. cfg_args = [] @@ -441,7 +450,7 @@ def parse_options(args): if not options.files: options.files.append('.') - return options, parser + return options, parser, used_cfg_files def parse_ignore_words_option(ignore_words_option): @@ -770,7 +779,13 @@ def _script_main(): def main(*args): """Contains flow control""" - options, parser = parse_options(args) + options, parser, used_cfg_files = parse_options(args) + + # Report used config files + if len(used_cfg_files) > 0: + print('Used config files:') + for ifile, cfg_file in enumerate(used_cfg_files, start=1): + print(' %i: %s' % (ifile, cfg_file)) if options.regex and options.write_changes: print("ERROR: --write-changes cannot be used together with " From b00b33ecb28e45c79d054a9853bf9cb626f3089b Mon Sep 17 00:00:00 2001 From: Dimitri Papadopoulos Orfanos <3234522+DimitriPapadopoulos@users.noreply.github.com> Date: Wed, 26 Oct 2022 17:07:44 +0200 Subject: [PATCH 034/302] Document required setuptools version (#2560) Building from source requires recent versions of some packages: * setuptools>=64 * setuptools_scm[tomli]>=6.2 --- README.rst | 6 ++++++ pyproject.toml | 2 +- 2 files changed, 7 insertions(+), 1 deletion(-) diff --git a/README.rst b/README.rst index 8ad961d800..b13dc781fc 100644 --- a/README.rst +++ b/README.rst @@ -170,6 +170,10 @@ applied directly, but should instead be manually inspected. E.g.: Development Setup ----------------- +As suggested in the `Python Packaging User Guide`_, ensure ``pip``, ``setuptools``, and ``wheel`` are up to date before installing from source. Specifically you will need recent versions of ``setuptools`` and ``setuptools_scm``:: + + pin install --upgrade pip setuptools setuptools_scm wheel + You can install required dependencies for development by running the following within a checkout of the codespell source:: pip install -e ".[dev]" @@ -178,6 +182,8 @@ To run tests against the codebase run:: make check +.. _Python Packaging User Guide: https://packaging.python.org/en/latest/tutorials/installing-packages/#requirements-for-installing-packages + Sending Pull Requests --------------------- diff --git a/pyproject.toml b/pyproject.toml index 431834f0bc..469c1e6d29 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -46,7 +46,7 @@ homepage = "https://github.com/codespell-project/codespell" repository = "https://github.com/codespell-project/codespell" [build-system] -requires = ["setuptools>=45", "setuptools_scm[toml]>=6.2", "wheel"] +requires = ["setuptools>=64", "setuptools_scm[toml]>=6.2", "wheel"] build-backend = "setuptools.build_meta" [tool.setuptools_scm] From a84a7db6242367a6f4e3d780f6632ac9f2eb31a9 Mon Sep 17 00:00:00 2001 From: Dimitri Papadopoulos Orfanos <3234522+DimitriPapadopoulos@users.noreply.github.com> Date: Fri, 28 Oct 2022 01:02:48 +0200 Subject: [PATCH 035/302] Redundant wheel dependency in pyproject.toml (#2562) The `wheel` dependency is added by the backend automatically. Listing it explicitly in the documentation was a historical mistake and has been fixed since: https://github.com/pypa/setuptools/commit/f7d30a9 --- pyproject.toml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pyproject.toml b/pyproject.toml index 469c1e6d29..ebdd3d80cb 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -46,7 +46,7 @@ homepage = "https://github.com/codespell-project/codespell" repository = "https://github.com/codespell-project/codespell" [build-system] -requires = ["setuptools>=64", "setuptools_scm[toml]>=6.2", "wheel"] +requires = ["setuptools>=64", "setuptools_scm[toml]>=6.2"] build-backend = "setuptools.build_meta" [tool.setuptools_scm] From 75e94ceb744fc2ea59d9ec98aa98c8987345141e Mon Sep 17 00:00:00 2001 From: int-y1 Date: Sat, 29 Oct 2022 01:24:55 -0700 Subject: [PATCH 036/302] Remove parameterizes->parametrizes --- 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 a5992dd722..3a918d15e3 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -24428,7 +24428,6 @@ parameteras->parameters parametere->parameter, parameters, parameteres->parameters parameterical->parametrical -parameterizes->parametrizes parameterts->parameters parametes->parameters parametic->parametric, paramedic, From 7a08d9ffabe0da6a6831a41ba6ffb91cfa90c1db Mon Sep 17 00:00:00 2001 From: Jon Dufresne Date: Sat, 25 Jun 2022 15:26:49 -0700 Subject: [PATCH 037/302] Replace codecs.open with open Since Python 3, using codecs.open() is unnecessary as the builtin supports an encoding argument. Use the simpler and more conventional pattern. The default mode for open() is 'r', so redundant arguments have been removed. The argument newline='' was added to FileOpener to preserve line endings when modifying a file. --- codespell_lib/_codespell.py | 15 +++++++-------- 1 file changed, 7 insertions(+), 8 deletions(-) diff --git a/codespell_lib/_codespell.py b/codespell_lib/_codespell.py index 9d52756918..d77d4cd757 100644 --- a/codespell_lib/_codespell.py +++ b/codespell_lib/_codespell.py @@ -17,7 +17,6 @@ """ import argparse -import codecs import configparser import fnmatch import os @@ -172,7 +171,7 @@ def open(self, filename): def open_with_chardet(self, filename): self.encdetector.reset() - with codecs.open(filename, 'rb') as f: + with open(filename, 'rb') as f: for line in f: self.encdetector.feed(line) if self.encdetector.done: @@ -181,7 +180,7 @@ def open_with_chardet(self, filename): encoding = self.encdetector.result['encoding'] try: - f = codecs.open(filename, 'r', encoding=encoding) + f = open(filename, encoding=encoding, newline='') except UnicodeDecodeError: print("ERROR: Could not detect encoding: %s" % filename, file=sys.stderr) @@ -205,7 +204,7 @@ def open_with_internal(self, filename): elif not self.quiet_level & QuietLevels.ENCODING: print("WARNING: Trying next encoding %s" % encoding, file=sys.stderr) - with codecs.open(filename, 'r', encoding=encoding) as f: + with open(filename, encoding=encoding, newline='') as f: try: lines = f.readlines() except UnicodeDecodeError: @@ -463,19 +462,19 @@ def parse_ignore_words_option(ignore_words_option): def build_exclude_hashes(filename, exclude_lines): - with codecs.open(filename, mode='r', encoding='utf-8') as f: + with open(filename, encoding='utf-8') as f: for line in f: exclude_lines.add(line) def build_ignore_words(filename, ignore_words): - with codecs.open(filename, mode='r', encoding='utf-8') as f: + with open(filename, encoding='utf-8') as f: for line in f: ignore_words.add(line.strip()) def build_dict(filename, misspellings, ignore_words): - with codecs.open(filename, mode='r', encoding='utf-8') as f: + with open(filename, encoding='utf-8') as f: for line in f: [key, data] = line.split('->') # TODO for now, convert both to lower. Someday we can maybe add @@ -767,7 +766,7 @@ def parse_file(filename, colors, summary, misspellings, exclude_lines, print("%sFIXED:%s %s" % (colors.FWORD, colors.DISABLE, filename), file=sys.stderr) - with codecs.open(filename, 'w', encoding=encoding) as f: + with open(filename, 'w', encoding=encoding, newline='') as f: f.writelines(lines) return bad_count From 458de804cde608110fc1ae91e4c39d92380eb0e6 Mon Sep 17 00:00:00 2001 From: Jon Dufresne Date: Sat, 29 Oct 2022 14:36:31 -0700 Subject: [PATCH 038/302] Update subprocess usage to use modern subprocess.run() https://docs.python.org/3/library/subprocess.html#subprocess.run > The recommended approach to invoking subprocesses is to use the run() > function for all use cases it can handle. --- codespell_lib/tests/test_basic.py | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/codespell_lib/tests/test_basic.py b/codespell_lib/tests/test_basic.py index 681ba20423..d474c8799a 100644 --- a/codespell_lib/tests/test_basic.py +++ b/codespell_lib/tests/test_basic.py @@ -47,11 +47,10 @@ def main(self, *args, count=True, std=False, **kwargs): def run_codespell(args=(), cwd=None): """Run codespell.""" args = ('--count',) + args - proc = subprocess.Popen( + proc = subprocess.run( ['codespell'] + list(args), cwd=cwd, - stdout=subprocess.PIPE, stderr=subprocess.PIPE) - stderr = proc.communicate()[1].decode('utf-8') - count = int(stderr.split('\n')[-2]) + capture_output=True, encoding='utf-8') + count = int(proc.stderr.split('\n')[-2]) return count From 28999f4953d6995301c3a9d73c0ca159273b7682 Mon Sep 17 00:00:00 2001 From: Peter Newman Date: Sun, 30 Oct 2022 16:18:11 +0000 Subject: [PATCH 039/302] Add andriod->android and friends --- codespell_lib/data/dictionary.txt | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/codespell_lib/data/dictionary.txt b/codespell_lib/data/dictionary.txt index 3a918d15e3..47ea7bfde1 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -1953,10 +1953,14 @@ andd->and andlers->handlers, antlers, andoid->android andorid->android +andorids->androids +andriod->android +andriods->androids androgenous->androgynous androgeny->androgyny androidextra->androidextras -androind->Android +androind->android +androinds->androids andthe->and the ane->and anevironment->environment From 60e5c3f81eddefe0c511458d0ea18c69bf826356 Mon Sep 17 00:00:00 2001 From: Peter Newman Date: Sun, 30 Oct 2022 16:19:13 +0000 Subject: [PATCH 040/302] Update codespell_lib/data/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 47ea7bfde1..d6ad5fe09d 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -1952,6 +1952,7 @@ ancilliary->ancillary andd->and andlers->handlers, antlers, andoid->android +andoids->androids andorid->android andorids->androids andriod->android From 583a067abc6930bf26d6072d9eb2459f6255d26b Mon Sep 17 00:00:00 2001 From: Dimitri Papadopoulos <3234522+DimitriPapadopoulos@users.noreply.github.com> Date: Thu, 27 Oct 2022 09:28:12 +0200 Subject: [PATCH 041/302] add procuce->produce and friends --- 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 3a918d15e3..56fbd003b7 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -26255,8 +26255,16 @@ proctected->protected proctecting->protecting proctects->protects procteted->protected +procuce->produce +procuced->produced +procucer->producer +procuces->produces +procucing->producing procude->produce procuded->produced +procuder->producer +procudes->produces +procuding->producing prodceding->proceeding prodecure->procedure producable->producible From a4eeff98ffa265d7e8e71fed17821cd5b9e50582 Mon Sep 17 00:00:00 2001 From: Dimitri Papadopoulos Orfanos <3234522+DimitriPapadopoulos@users.noreply.github.com> Date: Sun, 30 Oct 2022 17:27:35 +0100 Subject: [PATCH 042/302] Update codespell_lib/data/dictionary.txt Co-authored-by: Peter Newman --- codespell_lib/data/dictionary.txt | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/codespell_lib/data/dictionary.txt b/codespell_lib/data/dictionary.txt index 56fbd003b7..bd49132f97 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -26255,11 +26255,11 @@ proctected->protected proctecting->protecting proctects->protects procteted->protected -procuce->produce -procuced->produced -procucer->producer -procuces->produces -procucing->producing +procuce->produce, procure, +procuced->produced, procured, +procucer->producer, procurer, +procuces->produces, procures, +procucing->producing, procuring, procude->produce procuded->produced procuder->producer From bf1545a1e1bd581c882b63bae4d01e81759974a2 Mon Sep 17 00:00:00 2001 From: Dimitri Papadopoulos Orfanos <3234522+DimitriPapadopoulos@users.noreply.github.com> Date: Sun, 30 Oct 2022 17:27:41 +0100 Subject: [PATCH 043/302] Update codespell_lib/data/dictionary.txt Co-authored-by: Peter Newman --- 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 bd49132f97..44f3127d21 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -26262,9 +26262,9 @@ procuces->produces, procures, procucing->producing, procuring, procude->produce procuded->produced -procuder->producer -procudes->produces -procuding->producing +procuder->producer, procurer, +procudes->produces, procures, +procuding->producing, procuring, prodceding->proceeding prodecure->procedure producable->producible From 3502feb05e78a780f5409f5a902d898c4389c3a4 Mon Sep 17 00:00:00 2001 From: int-y1 Date: Sat, 29 Oct 2022 22:53:07 -0700 Subject: [PATCH 044/302] Add a few corrections --- codespell_lib/data/dictionary.txt | 28 ++++++++++++++++++++++++++++ 1 file changed, 28 insertions(+) diff --git a/codespell_lib/data/dictionary.txt b/codespell_lib/data/dictionary.txt index 44f3127d21..a5be746abf 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -12717,6 +12717,8 @@ efel->evil eferences->references efetivity->effectivity effciency->efficiency +effcient->efficient +effciently->efficiently effctive->effective effctively->effectively effeciency->efficiency @@ -17543,6 +17545,8 @@ hyposesis->hypothesis hypoteses->hypotheses hypotesis->hypothesis hypotethically->hypothetically +hypothenuse->hypotenuse +hypothenuses->hypotenuses hypter->hyper hyptothetical->hypothetical hyptothetically->hypothetically @@ -18545,6 +18549,9 @@ indvidual->individual indviduals->individuals indxes->indexes inearisation->linearisation +ineffciency->inefficiency +ineffcient->inefficient +ineffciently->inefficiently inefficency->inefficiency inefficent->inefficient inefficently->inefficiently @@ -19238,6 +19245,9 @@ insturments->instruments instutionalized->institutionalized instutions->intuitions insue->ensue, insure, +insuffciency->insufficiency +insuffcient->insufficient +insuffciently->insufficiently insufficency->insufficiency insufficent->insufficient insufficently->insufficiently @@ -20391,6 +20401,9 @@ levetating->levitating levl->level levle->level lexial->lexical +lexigraphic->lexicographic +lexigraphical->lexicographical +lexigraphically->lexicographically leyer->layer leyered->layered leyering->layering @@ -24950,10 +24963,22 @@ permmissions->permissions permormance->performance permssion->permission permssions->permissions +permuatate->permutate +permuatated->permutated +permuatates->permutates +permuatating->permutating +permuatation->permutation +permuatations->permutations +permuate->permute, permutate, +permuated->permuted, permutated, +permuates->permutes, permutates, +permuating->permuting, permutating, permuation->permutation permuations->permutations permutaion->permutation permutaions->permutations +permution->permutation +permutions->permutations peroendicular->perpendicular perogative->prerogative peroid->period @@ -32716,6 +32741,9 @@ suface->surface sufaces->surfaces sufface->surface suffaces->surfaces +suffciency->sufficiency +suffcient->sufficient +suffciently->sufficiently sufferage->suffrage sufferred->suffered sufferring->suffering From 3bd72d2def3db61955a9e77e581746303cee1550 Mon Sep 17 00:00:00 2001 From: Christian Clauss Date: Sun, 23 Oct 2022 21:42:17 +0200 Subject: [PATCH 045/302] Migrate pytest config into pyproject.toml --- pyproject.toml | 3 +++ setup.cfg | 3 --- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/pyproject.toml b/pyproject.toml index ebdd3d80cb..997e91dc2f 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -66,3 +66,6 @@ codespell_lib = [ [tool.check-manifest] ignore = ["codespell_lib/_version.py"] + +[tool.pytest.ini_options] +addopts = "--cov=codespell_lib -rs --cov-report= --tb=short --junit-xml=junit-results.xml" diff --git a/setup.cfg b/setup.cfg index 9776335475..ae7e595a3b 100644 --- a/setup.cfg +++ b/setup.cfg @@ -1,6 +1,3 @@ -[tool:pytest] -addopts = --cov=codespell_lib -rs --cov-report= --tb=short --junit-xml=junit-results.xml - [flake8] exclude = build, ci-helpers ignore = W503 From 0b675f6b9956c07b329eaae568f0d8c0d033383f Mon Sep 17 00:00:00 2001 From: Dimitri Papadopoulos Orfanos <3234522+DimitriPapadopoulos@users.noreply.github.com> Date: Mon, 31 Oct 2022 12:17:40 +0100 Subject: [PATCH 046/302] Handle bad globs passed to if --skip/-S (#2159) Co-authored-by: Peter Newman --- codespell_lib/_codespell.py | 8 ++++++++ codespell_lib/tests/test_basic.py | 22 +++++++++++++++++++++- 2 files changed, 29 insertions(+), 1 deletion(-) diff --git a/codespell_lib/_codespell.py b/codespell_lib/_codespell.py index d77d4cd757..3df5438cd4 100644 --- a/codespell_lib/_codespell.py +++ b/codespell_lib/_codespell.py @@ -898,7 +898,15 @@ def main(*args): file_opener = FileOpener(options.hard_encoding_detection, options.quiet_level) + glob_match = GlobMatch(options.skip) + try: + glob_match.match("/random/path") # does not need a real path + except re.error: + print("ERROR: --skip/-S has been fed an invalid glob, " + "try escaping special characters", + file=sys.stderr) + return EX_USAGE bad_count = 0 for filename in options.files: diff --git a/codespell_lib/tests/test_basic.py b/codespell_lib/tests/test_basic.py index d474c8799a..ea7803c926 100644 --- a/codespell_lib/tests/test_basic.py +++ b/codespell_lib/tests/test_basic.py @@ -117,10 +117,30 @@ def test_basic(tmpdir, capsys): assert cs.main(d) == 0 # empty directory - os.mkdir(op.join(d, 'test')) + os.mkdir(op.join(d, 'empty')) assert cs.main(d) == 0 +def test_bad_glob(tmpdir, capsys): + # disregard invalid globs, properly handle escaped globs + g = op.join(tmpdir, 'glob') + os.mkdir(g) + fname = op.join(g, '[b-a].txt') + with open(fname, 'a') as f: + f.write('abandonned\n') + assert cs.main(g) == 1 + # bad glob is invalid + code, _, stderr = cs.main('--skip', '[b-a].txt', + g, std=True) + if sys.hexversion < 0x030A05F0: # Python < 3.10.5 raises re.error + assert code == EX_USAGE, 'invalid glob' + assert 'invalid glob' in stderr + else: # Python >= 3.10.5 does not match + assert code == 1 + # properly escaped glob is valid, and matches glob-like file name + assert cs.main('--skip', '[[]b-a[]].txt', g) == 0 + + @pytest.mark.skipif( not sys.platform == 'linux', reason='Only supported on Linux') def test_permission_error(tmp_path, capsys): From c26bb28dadb0785b8403fe58a94fddaadcae7e9f Mon Sep 17 00:00:00 2001 From: Dimitri Papadopoulos Orfanos <3234522+DimitriPapadopoulos@users.noreply.github.com> Date: Mon, 31 Oct 2022 12:19:01 +0100 Subject: [PATCH 047/302] Isn't the mailing list obsolete? (#2090) It hasn't been used since 2016. --- README.rst | 3 --- 1 file changed, 3 deletions(-) diff --git a/README.rst b/README.rst index b13dc781fc..702823efad 100644 --- a/README.rst +++ b/README.rst @@ -13,9 +13,6 @@ Useful links * `GitHub project `_ -* Mailing list: with web archives/interface - `here `_ - * `Repository `_ * `Releases `_ From 16aa02312c781e3c76673c05eb13fda9956e41bd Mon Sep 17 00:00:00 2001 From: Peter Newman Date: Mon, 31 Oct 2022 11:38:32 +0000 Subject: [PATCH 048/302] More CODEOWNERS (#2569) --- .github/CODEOWNERS | 16 ++++++++++++---- 1 file changed, 12 insertions(+), 4 deletions(-) diff --git a/.github/CODEOWNERS b/.github/CODEOWNERS index 698160330d..eb8bdea19d 100644 --- a/.github/CODEOWNERS +++ b/.github/CODEOWNERS @@ -15,14 +15,22 @@ # Administrata and CIs *.toml @larsoner *.yml @larsoner -*.rst @larsoner +*.rst @larsoner @peternewman *.cfg @larsoner +codespell.1.include @larsoner @peternewman coverage* @larsoner -.github/* @larsoner -Makefile @larsoner +.github/* @larsoner @peternewman +.gitignore @larsoner @peternewman +Makefile @larsoner @peternewman # Python code -codespell_lib/*.py @larsoner +codespell_lib/*.py @larsoner @peternewman +bin/* @larsoner @peternewman # Dictionaries +codespell_lib/data/dictionary_code.txt @peternewman +codespell_lib/data/dictionary_en-GB_to_en-US.txt @peternewman +codespell_lib/data/dictionary_informal.txt @peternewman +codespell_lib/data/dictionary_names.txt @peternewman +codespell_lib/data/dictionary_rare.txt @peternewman # codepell_lib/data/*.txt @luzpaz From 2461abc81b1241698180b8e70a2a5cc7e375cd27 Mon Sep 17 00:00:00 2001 From: Jon Dufresne Date: Sun, 23 Oct 2022 18:28:37 -0700 Subject: [PATCH 049/302] Remove unused attribute Misspelling.fixword Unused since 1f6deb0da37f282bec67ca4eec214bf48e0209dd. Discovered using mypy https://mypy.readthedocs.io/ --- codespell_lib/_codespell.py | 1 - 1 file changed, 1 deletion(-) diff --git a/codespell_lib/_codespell.py b/codespell_lib/_codespell.py index 3df5438cd4..ac28f37240 100644 --- a/codespell_lib/_codespell.py +++ b/codespell_lib/_codespell.py @@ -542,7 +542,6 @@ def ask_for_word_fix(line, wrongword, misspelling, interactivity): if r == 'N': misspelling.fix = False - misspelling.fixword = '' elif (interactivity & 2) and not misspelling.reason: # if it is not disabled, i.e. it just has more than one possible fix, From 645c415eb103d02e57d5e1c283688098ec0cda22 Mon Sep 17 00:00:00 2001 From: - Date: Mon, 31 Oct 2022 14:50:34 +0100 Subject: [PATCH 050/302] Added informal words --- codespell_lib/data/dictionary_informal.txt | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/codespell_lib/data/dictionary_informal.txt b/codespell_lib/data/dictionary_informal.txt index 61540f04db..cbdc4b0f5b 100644 --- a/codespell_lib/data/dictionary_informal.txt +++ b/codespell_lib/data/dictionary_informal.txt @@ -1,6 +1,10 @@ dunno->don't know +gimme->give me gonna->going to +gotta->got to +imma->I am going to natch->match tho->though, to, thou, thru->through +tryna->trying to wanna->want to From 71907e2893ba0b3a3773752e6bd6e987010c51f2 Mon Sep 17 00:00:00 2001 From: Dimitri Papadopoulos Orfanos <3234522+DimitriPapadopoulos@users.noreply.github.com> Date: Mon, 31 Oct 2022 15:37:22 +0100 Subject: [PATCH 051/302] Read config file without interpolation (#2545) Some config files use interpolation, some do not: https://docs.python.org/3/library/configparser.html#interpolation-of-values Config files might contain occurrences of `%` that should not be interpolated. When attempting to interpolate them, `ConfigParser` crashes with: ValueError: invalid interpolation syntax Therefore, we decide to disable interpolation, to avoid crashes. We do not expect interpolation in the `[codespell]` section, so it is not a problem in practice. Alternatively, we could read with interpolation, and in the case of a ValueError exception, retry without interpolation. However, since we do not expect interpolation in the `[codespell]` section, I believe the current solution is simpler, faster, to the point. --- 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 ac28f37240..0e13f15571 100644 --- a/codespell_lib/_codespell.py +++ b/codespell_lib/_codespell.py @@ -397,7 +397,7 @@ def parse_options(args): cfg_files = ['setup.cfg', '.codespellrc'] if options.config: cfg_files.append(options.config) - config = configparser.ConfigParser() + config = configparser.ConfigParser(interpolation=None) # Read toml before other config files. toml_files_errors = list() From d8d9fd762cb61cbe551d026a345c3d38491a6184 Mon Sep 17 00:00:00 2001 From: Dimitri Papadopoulos <3234522+DimitriPapadopoulos@users.noreply.github.com> Date: Mon, 31 Oct 2022 15:48:02 +0100 Subject: [PATCH 052/302] decelaration could be deceleration --- 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 a5be746abf..1514bbc3e4 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -9686,7 +9686,8 @@ decceleration->deceleration deccrement->decrement deccremented->decremented deccrements->decrements -decelaration->declaration +decelaration->declaration, deceleration, +decelarations->declarations, decelerations, Decemer->December decend->descend decendant->descendant From cf724f526f62d7616a8aa9916ff3563c11ad8a4c Mon Sep 17 00:00:00 2001 From: Peter Newman Date: Mon, 31 Oct 2022 15:38:07 +0000 Subject: [PATCH 053/302] Add total type GB to US --- codespell_lib/data/dictionary_en-GB_to_en-US.txt | 2 ++ 1 file changed, 2 insertions(+) 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 c9e1579975..07b06211d0 100644 --- a/codespell_lib/data/dictionary_en-GB_to_en-US.txt +++ b/codespell_lib/data/dictionary_en-GB_to_en-US.txt @@ -246,6 +246,8 @@ synchronise->synchronize synchronised->synchronized synchronises->synchronizes synchronising->synchronizing +totalled->totaled +totalling->totaling unauthorised->unauthorized unorganised->unorganized unrecognised->unrecognized From 73d0497ad63ee7e3386af5d1e8e01f5a563e902a Mon Sep 17 00:00:00 2001 From: Dimitri Papadopoulos Orfanos <3234522+DimitriPapadopoulos@users.noreply.github.com> Date: Mon, 31 Oct 2022 18:03:37 +0100 Subject: [PATCH 054/302] Catch all cases of missing pytest (#2568) Command `pytest` is not available on distributions such as Ubuntu 22.04, where only `pytest-3`/`py.test-3` are available. --- Makefile | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/Makefile b/Makefile index 5cbe5e0990..1757974280 100644 --- a/Makefile +++ b/Makefile @@ -54,7 +54,12 @@ flake8: flake8 pytest: - pytest codespell_lib + @if command -v pytest > /dev/null; then \ + pytest codespell_lib; \ + else \ + echo "Test dependencies not present, install using 'pip install -e \".[dev]\"'"; \ + exit 1; \ + fi clean: rm -rf codespell.1 From 44cad5cbf2ea5acd250e3ad3206c14d29850587c Mon Sep 17 00:00:00 2001 From: - Date: Mon, 31 Oct 2022 18:34:55 +0100 Subject: [PATCH 055/302] Removed invalid words --- codespell_lib/data/dictionary_informal.txt | 2 -- 1 file changed, 2 deletions(-) diff --git a/codespell_lib/data/dictionary_informal.txt b/codespell_lib/data/dictionary_informal.txt index cbdc4b0f5b..2c8fe81389 100644 --- a/codespell_lib/data/dictionary_informal.txt +++ b/codespell_lib/data/dictionary_informal.txt @@ -2,9 +2,7 @@ dunno->don't know gimme->give me gonna->going to gotta->got to -imma->I am going to natch->match tho->though, to, thou, thru->through -tryna->trying to wanna->want to From 4287f34e4c487f5da0cacae7586d932d41e9db73 Mon Sep 17 00:00:00 2001 From: Dimitri Papadopoulos <3234522+DimitriPapadopoulos@users.noreply.github.com> Date: Wed, 2 Nov 2022 10:22:08 +0100 Subject: [PATCH 056/302] =?UTF-8?q?Fix=20typo=20in=20README=20pin=20?= =?UTF-8?q?=E2=86=92=20pip?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- README.rst | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.rst b/README.rst index 702823efad..3de51b834c 100644 --- a/README.rst +++ b/README.rst @@ -169,7 +169,7 @@ Development Setup As suggested in the `Python Packaging User Guide`_, ensure ``pip``, ``setuptools``, and ``wheel`` are up to date before installing from source. Specifically you will need recent versions of ``setuptools`` and ``setuptools_scm``:: - pin install --upgrade pip setuptools setuptools_scm wheel + pip install --upgrade pip setuptools setuptools_scm wheel You can install required dependencies for development by running the following within a checkout of the codespell source:: From 4f7231e7d06e588b2bd597f3144b510b894597b9 Mon Sep 17 00:00:00 2001 From: Dimitri Papadopoulos <3234522+DimitriPapadopoulos@users.noreply.github.com> Date: Wed, 2 Nov 2022 10:07:38 +0100 Subject: [PATCH 057/302] Keep GitHub Actions up to date with Dependabot --- .github/dependabot.yml | 10 ++++++++++ 1 file changed, 10 insertions(+) create mode 100644 .github/dependabot.yml diff --git a/.github/dependabot.yml b/.github/dependabot.yml new file mode 100644 index 0000000000..fd83b118ad --- /dev/null +++ b/.github/dependabot.yml @@ -0,0 +1,10 @@ +# See: https://docs.github.com/code-security/dependabot/dependabot-version-updates/configuration-options-for-the-dependabot.yml-file#about-the-dependabotyml-file +version: 2 + +updates: + # Configure check for outdated GitHub Actions actions in workflows. + # See: https://docs.github.com/code-security/dependabot/working-with-dependabot/keeping-your-actions-up-to-date-with-dependabot + - package-ecosystem: github-actions + directory: / # Check the repository's workflows under /.github/workflows/ + schedule: + interval: daily From 50106dd578dcebee5b4cf97ca8d86253118bc1b5 Mon Sep 17 00:00:00 2001 From: Jon Dufresne Date: Wed, 2 Nov 2022 08:42:44 -0700 Subject: [PATCH 058/302] Add isort to project (#2564) isort is a utility to sort Python imports alphabetically, and automatically separate into sections and by type. This will provide a consistent import style from contributors. As well, by using a tool, a contributor doesn't need to think about or anticipate the project's preferred style, just let the tool handle it. Run isort GitHub action as part of CI. --- .github/workflows/isort.yml | 12 ++++++++++++ codespell_lib/__init__.py | 2 +- codespell_lib/tests/test_basic.py | 4 ++-- codespell_lib/tests/test_dictionary.py | 5 ++--- 4 files changed, 17 insertions(+), 6 deletions(-) create mode 100644 .github/workflows/isort.yml diff --git a/.github/workflows/isort.yml b/.github/workflows/isort.yml new file mode 100644 index 0000000000..a7b43c207c --- /dev/null +++ b/.github/workflows/isort.yml @@ -0,0 +1,12 @@ +name: isort + +on: + - push + - pull_request + +jobs: + isort: + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v3 + - uses: isort/isort-action@v1.0.0 diff --git a/codespell_lib/__init__.py b/codespell_lib/__init__.py index 019d227001..6f455ec3b1 100644 --- a/codespell_lib/__init__.py +++ b/codespell_lib/__init__.py @@ -1,2 +1,2 @@ -from ._codespell import main, _script_main # noqa +from ._codespell import _script_main, main # noqa from ._version import __version__ # noqa diff --git a/codespell_lib/tests/test_basic.py b/codespell_lib/tests/test_basic.py index ea7803c926..0973b4c7ae 100644 --- a/codespell_lib/tests/test_basic.py +++ b/codespell_lib/tests/test_basic.py @@ -3,14 +3,14 @@ import os import os.path as op import re -from shutil import copyfile import subprocess import sys +from shutil import copyfile import pytest import codespell_lib as cs_ -from codespell_lib._codespell import uri_regex_def, EX_USAGE, EX_OK, EX_DATAERR +from codespell_lib._codespell import EX_DATAERR, EX_OK, EX_USAGE, uri_regex_def def test_constants(): diff --git a/codespell_lib/tests/test_dictionary.py b/codespell_lib/tests/test_dictionary.py index 9f3dec0365..c4b81fdd66 100644 --- a/codespell_lib/tests/test_dictionary.py +++ b/codespell_lib/tests/test_dictionary.py @@ -1,13 +1,12 @@ import glob -import os.path as op import os +import os.path as op import re import warnings import pytest -from codespell_lib._codespell import _builtin_dictionaries -from codespell_lib._codespell import supported_languages +from codespell_lib._codespell import _builtin_dictionaries, supported_languages spellers = dict() From 62bd5ce330707786e5b41a98b5e4e620bd3e2ae6 Mon Sep 17 00:00:00 2001 From: Dimitri Papadopoulos Orfanos <3234522+DimitriPapadopoulos@users.noreply.github.com> Date: Wed, 2 Nov 2022 16:44:15 +0100 Subject: [PATCH 059/302] Fix Deepsource issues (#2085) * DeepSource issue: Built-in function `len` used as condition Using the `len` function to check if a sequence is empty is not idiomatic and can be less performant than checking the truthiness of the object. `len` doesn't know the context in which it is called, so if computing the length means traversing the entire sequence, it must; it doesn't know that the result is just being compared to 0. Computing the boolean value can stop after it sees the first element, regardless of how long the sequence actually is. * DeepSource issue: Consider using literal syntax to create the data structure Using the literal syntax can give minor performance bumps compared to using function calls to create `dict`, `list` and `tuple`. This is because here, the name dict must be looked up in the global scope in case it has been rebound. Same goes for the other two types `list()` and `tuple()`. * DeepSource issue: Consider decorating method with `@staticmethod` The method doesn't use its bound instance. Decorate this method with `@staticmethod` decorator, so that Python does not have to instantiate a bound method for every instance of this class thereby saving memory and computation. Read more about staticmethods here. * DeepSource issue: Consider using `in` To check if a variable is equal to one of many values, combine the values into a tuple and check if the variable is contained `in` it instead of checking for equality against each of the values. This is faster, less verbose, and more readable. * DeepSource issue: Implicit enumerate calls found Using `range(len(...))` is not pythonic. Python does not have not index-based loops. Instead, it uses collection iterators. Python has a built-in method enumerate which adds a counter to an iterable. Using this, you can access the counter and the value from the iterable at the same time. It is therefore recommended to replace `range(len(...))` with `enumerate(...)`. --- codespell_lib/_codespell.py | 6 +++--- codespell_lib/tests/test_basic.py | 3 ++- codespell_lib/tests/test_dictionary.py | 10 +++++----- 3 files changed, 10 insertions(+), 9 deletions(-) diff --git a/codespell_lib/_codespell.py b/codespell_lib/_codespell.py index 0e13f15571..f982d31a06 100644 --- a/codespell_lib/_codespell.py +++ b/codespell_lib/_codespell.py @@ -536,7 +536,7 @@ def ask_for_word_fix(line, wrongword, misspelling, interactivity): r = sys.stdin.readline().strip().upper() if not r: r = 'Y' - if r != 'Y' and r != 'N': + if r not in ('Y', 'N'): print("Say 'y' or 'n'") r = '' @@ -551,8 +551,8 @@ def ask_for_word_fix(line, wrongword, misspelling, interactivity): opt = [w.strip() for w in misspelling.data.split(',')] while not r: print("%s Choose an option (blank for none): " % line, end='') - for i in range(len(opt)): - fixword = fix_case(wrongword, opt[i]) + for i, o in enumerate(opt): + fixword = fix_case(wrongword, o) print(" %d) %s" % (i, fixword), end='') print(": ", end='') sys.stdout.flush() diff --git a/codespell_lib/tests/test_basic.py b/codespell_lib/tests/test_basic.py index 0973b4c7ae..f88f3de672 100644 --- a/codespell_lib/tests/test_basic.py +++ b/codespell_lib/tests/test_basic.py @@ -23,7 +23,8 @@ def test_constants(): class MainWrapper: """Compatibility wrapper for when we used to return the count.""" - def main(self, *args, count=True, std=False, **kwargs): + @staticmethod + def main(*args, count=True, std=False, **kwargs): if count: args = ('--count',) + args code = cs_.main(*args, **kwargs) diff --git a/codespell_lib/tests/test_dictionary.py b/codespell_lib/tests/test_dictionary.py index c4b81fdd66..745b4ab72c 100644 --- a/codespell_lib/tests/test_dictionary.py +++ b/codespell_lib/tests/test_dictionary.py @@ -8,7 +8,7 @@ from codespell_lib._codespell import _builtin_dictionaries, supported_languages -spellers = dict() +spellers = {} try: import aspell @@ -25,7 +25,7 @@ 'aspell not found, but not required, skipping aspell tests. Got ' 'error during import:\n%s' % (exp,)) -global_err_dicts = dict() +global_err_dicts = {} global_pairs = set() # Filename, should be seen as errors in aspell or not @@ -47,7 +47,7 @@ def test_dictionaries_exist(): @fname_params def test_dictionary_formatting(fname, in_aspell, in_dictionary): """Test that all dictionary entries are valid.""" - errors = list() + errors = [] with open(fname, 'rb') as fid: for line in fid: err, rep = line.decode('utf-8').split('->') @@ -57,7 +57,7 @@ def test_dictionary_formatting(fname, in_aspell, in_dictionary): _check_err_rep(err, rep, in_aspell, fname, in_dictionary) except AssertionError as exp: errors.append(str(exp).split('\n')[0]) - if len(errors): + if errors: raise AssertionError('\n' + '\n'.join(errors)) @@ -207,7 +207,7 @@ def test_error_checking_in_aspell(err, rep, err_aspell, rep_aspell, match): @pytest.mark.dependency(name='dictionary loop') def test_dictionary_looping(fname, in_aspell, in_dictionary): """Test that all dictionary entries are valid.""" - this_err_dict = dict() + this_err_dict = {} short_fname = op.basename(fname) with open(fname, 'rb') as fid: for line in fid: From cad848357a82f7b63208a20a00459d1d3993818b Mon Sep 17 00:00:00 2001 From: Jon Dufresne Date: Wed, 2 Nov 2022 10:00:54 -0700 Subject: [PATCH 060/302] Replace list()/dict() with literals (#2380) Literals are always faster and conventional in modern Python style. --- codespell_lib/_codespell.py | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/codespell_lib/_codespell.py b/codespell_lib/_codespell.py index f982d31a06..3cabd2f304 100644 --- a/codespell_lib/_codespell.py +++ b/codespell_lib/_codespell.py @@ -230,7 +230,7 @@ class NewlineHelpFormatter(argparse.HelpFormatter): def _split_lines(self, text, width): parts = text.split('\n') - out = list() + out = [] for part in parts: # Eventually we could allow others... indent_start = '- ' @@ -400,7 +400,7 @@ def parse_options(args): config = configparser.ConfigParser(interpolation=None) # Read toml before other config files. - toml_files_errors = list() + toml_files_errors = [] if os.path.isfile('pyproject.toml'): toml_files_errors.append(('pyproject.toml', False)) if options.toml: @@ -834,7 +834,7 @@ def main(*args): dictionaries = options.dictionary else: dictionaries = ['-'] - use_dictionaries = list() + use_dictionaries = [] for dictionary in dictionaries: if dictionary == "-": # figure out which builtin dictionaries to use @@ -858,7 +858,7 @@ def main(*args): parser.print_help() return EX_USAGE use_dictionaries.append(dictionary) - misspellings = dict() + misspellings = {} for dictionary in use_dictionaries: build_dict(dictionary, misspellings, ignore_words) colors = TermColors() From 1bd917599943799fb240233f787a1f5d317f6689 Mon Sep 17 00:00:00 2001 From: Dimitri Papadopoulos Orfanos <3234522+DimitriPapadopoulos@users.noreply.github.com> Date: Thu, 3 Nov 2022 23:05:32 +0100 Subject: [PATCH 061/302] Use major version @v1 of isort GitHub Action (#2581) Amend 50106dd The major version tag for this GitHub Action has just been created: https://github.com/isort/isort-action/issues/61 --- .github/workflows/isort.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/isort.yml b/.github/workflows/isort.yml index a7b43c207c..f314e5b555 100644 --- a/.github/workflows/isort.yml +++ b/.github/workflows/isort.yml @@ -9,4 +9,4 @@ jobs: runs-on: ubuntu-latest steps: - uses: actions/checkout@v3 - - uses: isort/isort-action@v1.0.0 + - uses: isort/isort-action@v1 From 6d001a1b32b53284278f297cce810e3fa453eafb Mon Sep 17 00:00:00 2001 From: fxlb Date: Fri, 4 Nov 2022 15:00:45 +0000 Subject: [PATCH 062/302] Add a spelling correction (#2572) --- 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 0f99997312..2dfadfe14d 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -8838,6 +8838,7 @@ cors-sute->cross-site corse->course corsor->cursor corss->cross, course, +corss-compiling->cross-compiling corss-site->cross-site corss-sute->cross-site corsses->crosses, courses, @@ -18810,6 +18811,10 @@ initation->initiation, imitation, initations->initiations, imitations, initator->initiator, imitator, initators->initiators, imitators, +initiailize->initialize +initiailized->initialized +initiailizes->initializes +initiailizing->initializing initiaitive->initiative initiaitives->initiatives initiales->initialize, initializes, initials, initialise, initialises, From 3576f32eee7048e0203e3b6dc250f9bc063268dd Mon Sep 17 00:00:00 2001 From: Jon Dufresne Date: Sun, 6 Nov 2022 12:51:56 -0800 Subject: [PATCH 063/302] Remove obsolete Python 2 workaround --- codespell_lib/tests/test_basic.py | 5 +---- 1 file changed, 1 insertion(+), 4 deletions(-) diff --git a/codespell_lib/tests/test_basic.py b/codespell_lib/tests/test_basic.py index f88f3de672..a9401b2a74 100644 --- a/codespell_lib/tests/test_basic.py +++ b/codespell_lib/tests/test_basic.py @@ -5,6 +5,7 @@ import re import subprocess import sys +from io import StringIO from shutil import copyfile import pytest @@ -908,10 +909,6 @@ def test_config_toml(tmp_path, capsys, kind): @contextlib.contextmanager def FakeStdin(text): - if sys.version[0] == '2': - from StringIO import StringIO - else: - from io import StringIO oldin = sys.stdin try: in_ = StringIO(text) From e0d98cb474a1aec00ca7a44583f5e6e9a4a6910d Mon Sep 17 00:00:00 2001 From: vikivivi <22041592+vikivivi@users.noreply.github.com> Date: Mon, 7 Nov 2022 08:39:22 +0800 Subject: [PATCH 064/302] Add misspelling of Kafka --- 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 2dfadfe14d..7a99b201b3 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -20078,6 +20078,7 @@ juxtified->justified juxtifies->justifies juxtifying->justifying kake->cake, take, +kakfa->Kafka kazakstan->Kazakhstan keep-alives->keep-alive keept->kept From 2042e65274ce313cfbc94acc56c128b0f2ebe4e4 Mon Sep 17 00:00:00 2001 From: Jon Dufresne Date: Mon, 7 Nov 2022 08:06:38 -0800 Subject: [PATCH 065/302] Add testing and document support for Python 3.11 (#2585) * Add testing and document support for Python 3.11 Released Oct. 24, 2022. https://www.python.org/downloads/release/python-3110/ * Remove Python version classifiers --- .github/workflows/codespell-private.yml | 1 + pyproject.toml | 5 ++++- 2 files changed, 5 insertions(+), 1 deletion(-) diff --git a/.github/workflows/codespell-private.yml b/.github/workflows/codespell-private.yml index 44c71aca1d..88dd8aa2d1 100644 --- a/.github/workflows/codespell-private.yml +++ b/.github/workflows/codespell-private.yml @@ -21,6 +21,7 @@ jobs: - '3.8' - '3.9' - '3.10' + - '3.11' name: Python ${{ matrix.python-version }} test steps: - uses: actions/checkout@v3 diff --git a/pyproject.toml b/pyproject.toml index 997e91dc2f..71d90edf73 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -17,7 +17,10 @@ classifiers = [ "Operating System :: Microsoft :: Windows", "Operating System :: POSIX", "Operating System :: Unix", - "Operating System :: MacOS" + "Operating System :: MacOS", + "Programming Language :: Python", + "Programming Language :: Python :: 3", + "Programming Language :: Python :: 3 :: Only", ] dependencies = [] dynamic = ["version"] From 8d0d82bcc07aaef5211127683aba7de67b923aac Mon Sep 17 00:00:00 2001 From: Jon Dufresne Date: Mon, 7 Nov 2022 08:10:00 -0800 Subject: [PATCH 066/302] Add type annotations to the project and use mypy (#2588) Provide type annotations and use mypy for static type checking. Type checkers help ensure that the project is using variables and functions in the code correctly. With mypy, CI will warn when those types are used incorrectly. The mypy project and docs: https://github.com/python/mypy https://mypy.readthedocs.io/en/stable/index.html --- .github/workflows/mypy.yml | 22 ++ codespell_lib/__init__.py | 6 +- codespell_lib/_codespell.py | 117 ++++++---- codespell_lib/py.typed | 0 codespell_lib/tests/test_basic.py | 304 +++++++++++++++++++------ codespell_lib/tests/test_dictionary.py | 53 +++-- pyproject.toml | 14 +- 7 files changed, 386 insertions(+), 130 deletions(-) create mode 100644 .github/workflows/mypy.yml create mode 100644 codespell_lib/py.typed diff --git a/.github/workflows/mypy.yml b/.github/workflows/mypy.yml new file mode 100644 index 0000000000..927c6a24c4 --- /dev/null +++ b/.github/workflows/mypy.yml @@ -0,0 +1,22 @@ +name: mypy + +on: + - push + - pull_request + +jobs: + mypy: + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v3 + + - name: Setup python + uses: actions/setup-python@v4 + with: + python-version: '3.7' + + - name: Install dependencies + run: pip install -e .[types] + + - name: Run mypy + run: mypy . diff --git a/codespell_lib/__init__.py b/codespell_lib/__init__.py index 6f455ec3b1..cd77a5534c 100644 --- a/codespell_lib/__init__.py +++ b/codespell_lib/__init__.py @@ -1,2 +1,4 @@ -from ._codespell import _script_main, main # noqa -from ._version import __version__ # noqa +from ._codespell import _script_main, main +from ._version import __version__ + +__all__ = ["_script_main", "main", "__version__"] diff --git a/codespell_lib/_codespell.py b/codespell_lib/_codespell.py index 3cabd2f304..ea8ce77dae 100644 --- a/codespell_lib/_codespell.py +++ b/codespell_lib/_codespell.py @@ -23,6 +23,7 @@ import re import sys import textwrap +from typing import Dict, List, Optional, Pattern, Sequence, Set, Tuple # autogenerated by setuptools_scm from ._version import __version__ as VERSION @@ -91,14 +92,15 @@ class QuietLevels: class GlobMatch: - def __init__(self, pattern): + def __init__(self, pattern: Optional[str]) -> None: + self.pattern_list: Optional[List[str]] if pattern: # Pattern might be a list of comma-delimited strings self.pattern_list = ','.join(pattern).split(',') else: self.pattern_list = None - def match(self, filename): + def match(self, filename: str) -> bool: if self.pattern_list is None: return False @@ -106,20 +108,20 @@ def match(self, filename): class Misspelling: - def __init__(self, data, fix, reason): + def __init__(self, data: str, fix: bool, reason: str) -> None: self.data = data self.fix = fix self.reason = reason class TermColors: - def __init__(self): + def __init__(self) -> None: self.FILE = '\033[33m' self.WWORD = '\033[31m' self.FWORD = '\033[32m' self.DISABLE = '\033[0m' - def disable(self): + def disable(self) -> None: self.FILE = '' self.WWORD = '' self.FWORD = '' @@ -127,16 +129,16 @@ def disable(self): class Summary: - def __init__(self): - self.summary = {} + def __init__(self) -> None: + self.summary: Dict[str, int] = {} - def update(self, wrongword): + def update(self, wrongword: str) -> None: if wrongword in self.summary: self.summary[wrongword] += 1 else: self.summary[wrongword] = 1 - def __str__(self): + def __str__(self) -> str: keys = list(self.summary.keys()) keys.sort() @@ -147,13 +149,13 @@ def __str__(self): class FileOpener: - def __init__(self, use_chardet, quiet_level): + def __init__(self, use_chardet: bool, quiet_level: int) -> None: self.use_chardet = use_chardet if use_chardet: self.init_chardet() self.quiet_level = quiet_level - def init_chardet(self): + def init_chardet(self) -> None: try: from chardet.universaldetector import UniversalDetector except ImportError: @@ -163,21 +165,22 @@ def init_chardet(self): self.encdetector = UniversalDetector() - def open(self, filename): + def open(self, filename: str) -> Tuple[List[str], str]: if self.use_chardet: return self.open_with_chardet(filename) else: return self.open_with_internal(filename) - def open_with_chardet(self, filename): + def open_with_chardet(self, filename: str) -> Tuple[List[str], str]: self.encdetector.reset() - with open(filename, 'rb') as f: - for line in f: + with open(filename, 'rb') as fb: + for line in fb: self.encdetector.feed(line) if self.encdetector.done: break self.encdetector.close() encoding = self.encdetector.result['encoding'] + assert encoding is not None try: f = open(filename, encoding=encoding, newline='') @@ -195,7 +198,7 @@ def open_with_chardet(self, filename): return lines, encoding - def open_with_internal(self, filename): + def open_with_internal(self, filename: str) -> Tuple[List[str], str]: encoding = None first_try = True for encoding in encodings: @@ -228,7 +231,7 @@ def open_with_internal(self, filename): class NewlineHelpFormatter(argparse.HelpFormatter): """Help formatter that preserves newlines and deals with lists.""" - def _split_lines(self, text, width): + def _split_lines(self, text: str, width: int) -> List[str]: parts = text.split('\n') out = [] for part in parts: @@ -248,7 +251,9 @@ def _split_lines(self, text, width): return out -def parse_options(args): +def parse_options( + args: Sequence[str] +) -> Tuple[argparse.Namespace, argparse.ArgumentParser, List[str]]: parser = argparse.ArgumentParser(formatter_class=NewlineHelpFormatter) parser.set_defaults(colors=sys.stdout.isatty()) @@ -452,7 +457,7 @@ def parse_options(args): return options, parser, used_cfg_files -def parse_ignore_words_option(ignore_words_option): +def parse_ignore_words_option(ignore_words_option: List[str]) -> Set[str]: ignore_words = set() if ignore_words_option: for comma_separated_words in ignore_words_option: @@ -461,19 +466,23 @@ def parse_ignore_words_option(ignore_words_option): return ignore_words -def build_exclude_hashes(filename, exclude_lines): +def build_exclude_hashes(filename: str, exclude_lines: Set[str]) -> None: with open(filename, encoding='utf-8') as f: for line in f: exclude_lines.add(line) -def build_ignore_words(filename, ignore_words): +def build_ignore_words(filename: str, ignore_words: Set[str]) -> None: with open(filename, encoding='utf-8') as f: for line in f: ignore_words.add(line.strip()) -def build_dict(filename, misspellings, ignore_words): +def build_dict( + filename: str, + misspellings: Dict[str, Misspelling], + ignore_words: Set[str], +) -> None: with open(filename, encoding='utf-8') as f: for line in f: [key, data] = line.split('->') @@ -501,20 +510,20 @@ def build_dict(filename, misspellings, ignore_words): misspellings[key] = Misspelling(data, fix, reason) -def is_hidden(filename, check_hidden): +def is_hidden(filename: str, check_hidden: bool) -> bool: bfilename = os.path.basename(filename) return bfilename not in ('', '.', '..') and \ (not check_hidden and bfilename[0] == '.') -def is_text_file(filename): +def is_text_file(filename: str) -> bool: with open(filename, mode='rb') as f: s = f.read(1024) return b'\x00' not in s -def fix_case(word, fixword): +def fix_case(word: str, fixword: str) -> str: if word == word.capitalize(): return ', '.join(w.strip().capitalize() for w in fixword.split(',')) elif word == word.upper(): @@ -524,7 +533,12 @@ def fix_case(word, fixword): return fixword -def ask_for_word_fix(line, wrongword, misspelling, interactivity): +def ask_for_word_fix( + line: str, + wrongword: str, + misspelling: Misspelling, + interactivity: int, +) -> Tuple[bool, str]: if interactivity <= 0: return misspelling.fix, fix_case(wrongword, misspelling.data) @@ -562,8 +576,8 @@ def ask_for_word_fix(line, wrongword, misspelling, interactivity): break try: - n = int(n) - r = opt[n] + i = int(n) + r = opt[i] except (ValueError, IndexError): print("Not a valid option\n") @@ -574,21 +588,35 @@ def ask_for_word_fix(line, wrongword, misspelling, interactivity): return misspelling.fix, fix_case(wrongword, misspelling.data) -def print_context(lines, index, context): +def print_context( + lines: List[str], + index: int, + context: Tuple[int, int], +) -> None: # context = (context_before, context_after) for i in range(index - context[0], index + context[1] + 1): if 0 <= i < len(lines): print('%s %s' % ('>' if i == index else ':', lines[i].rstrip())) -def extract_words(text, word_regex, ignore_word_regex): +def extract_words( + text: str, + word_regex: Pattern[str], + ignore_word_regex: Optional[Pattern[str]], +) -> List[str]: if ignore_word_regex: text = ignore_word_regex.sub(' ', text) return word_regex.findall(text) -def apply_uri_ignore_words(check_words, line, word_regex, ignore_word_regex, - uri_regex, uri_ignore_words): +def apply_uri_ignore_words( + check_words: List[str], + line: str, + word_regex: Pattern[str], + ignore_word_regex: Optional[Pattern[str]], + uri_regex: Pattern[str], + uri_ignore_words: Set[str] +) -> None: if not uri_ignore_words: return for uri in re.findall(uri_regex, line): @@ -598,9 +626,20 @@ def apply_uri_ignore_words(check_words, line, word_regex, ignore_word_regex, check_words.remove(uri_word) -def parse_file(filename, colors, summary, misspellings, exclude_lines, - file_opener, word_regex, ignore_word_regex, uri_regex, - uri_ignore_words, context, options): +def parse_file( + filename: str, + colors: TermColors, + summary: Optional[Summary], + misspellings: Dict[str, Misspelling], + 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 lines = None changed = False @@ -770,12 +809,12 @@ def parse_file(filename, colors, summary, misspellings, exclude_lines, return bad_count -def _script_main(): +def _script_main() -> int: """Wrap to main() for setuptools.""" return main(*sys.argv[1:]) -def main(*args): +def main(*args: str) -> int: """Contains flow control""" options, parser, used_cfg_files = parse_options(args) @@ -858,7 +897,7 @@ def main(*args): parser.print_help() return EX_USAGE use_dictionaries.append(dictionary) - misspellings = {} + misspellings: Dict[str, Misspelling] = {} for dictionary in use_dictionaries: build_dict(dictionary, misspellings, ignore_words) colors = TermColors() @@ -891,7 +930,7 @@ def main(*args): context_after = max(0, options.after_context) context = (context_before, context_after) - exclude_lines = set() + exclude_lines: Set[str] = set() if options.exclude_file: build_exclude_hashes(options.exclude_file, exclude_lines) diff --git a/codespell_lib/py.typed b/codespell_lib/py.typed new file mode 100644 index 0000000000..e69de29bb2 diff --git a/codespell_lib/tests/test_basic.py b/codespell_lib/tests/test_basic.py index a9401b2a74..892401dc3b 100644 --- a/codespell_lib/tests/test_basic.py +++ b/codespell_lib/tests/test_basic.py @@ -6,7 +6,9 @@ import subprocess import sys from io import StringIO +from pathlib import Path from shutil import copyfile +from typing import Generator, Optional, Tuple, Union import pytest @@ -14,7 +16,7 @@ from codespell_lib._codespell import EX_DATAERR, EX_OK, EX_USAGE, uri_regex_def -def test_constants(): +def test_constants() -> None: """Test our EX constants.""" assert EX_OK == 0 assert EX_USAGE == 64 @@ -25,11 +27,19 @@ class MainWrapper: """Compatibility wrapper for when we used to return the count.""" @staticmethod - def main(*args, count=True, std=False, **kwargs): + def main( + *args: str, + count: bool = True, + std: bool = False, + ) -> Union[int, Tuple[int, str, str]]: if count: args = ('--count',) + args - code = cs_.main(*args, **kwargs) - capsys = inspect.currentframe().f_back.f_locals['capsys'] + code = cs_.main(*args) + frame = inspect.currentframe() + assert frame is not None + frame = frame.f_back + assert frame is not None + capsys = frame.f_locals['capsys'] stdout, stderr = capsys.readouterr() assert code in (EX_OK, EX_USAGE, EX_DATAERR) if code == EX_DATAERR: # have some misspellings @@ -46,7 +56,10 @@ def main(*args, count=True, std=False, **kwargs): cs = MainWrapper() -def run_codespell(args=(), cwd=None): +def run_codespell( + args: Tuple[str, ...] = (), + cwd: Optional[str] = None, +) -> int: """Run codespell.""" args = ('--count',) + args proc = subprocess.run( @@ -56,7 +69,7 @@ def run_codespell(args=(), cwd=None): return count -def test_command(tmpdir): +def test_command(tmpdir: pytest.TempPathFactory) -> None: """Test running the codespell executable.""" # With no arguments does "." d = str(tmpdir) @@ -66,13 +79,18 @@ def test_command(tmpdir): assert run_codespell(cwd=d) == 4 -def test_basic(tmpdir, capsys): +def test_basic( + tmpdir: pytest.TempPathFactory, + capsys: pytest.CaptureFixture[str], +) -> None: """Test some basic functionality.""" assert cs.main('_does_not_exist_') == 0 fname = op.join(str(tmpdir), 'tmp') with open(fname, 'w') as f: pass - code, _, stderr = cs.main('-D', 'foo', f.name, std=True) + result = cs.main('-D', 'foo', f.name, std=True) + assert isinstance(result, tuple) + code, _, stderr = result assert code == EX_USAGE, 'missing dictionary' assert 'cannot find dictionary' in stderr assert cs.main(fname) == 0, 'empty file' @@ -89,11 +107,15 @@ def test_basic(tmpdir, capsys): f.write('tim\ngonna\n') assert cs.main(fname) == 2, 'with a name' assert cs.main('--builtin', 'clear,rare,names,informal', fname) == 4 - code, _, stderr = cs.main(fname, '--builtin', 'foo', std=True) + result = cs.main(fname, '--builtin', 'foo', std=True) + assert isinstance(result, tuple) + code, _, stderr = result assert code == EX_USAGE # bad type assert 'Unknown builtin dictionary' in stderr d = str(tmpdir) - code, _, stderr = cs.main(fname, '-D', op.join(d, 'foo'), std=True) + result = cs.main(fname, '-D', op.join(d, 'foo'), std=True) + assert isinstance(result, tuple) + code, _, stderr = result assert code == EX_USAGE # bad dict assert 'cannot find dictionary' in stderr os.remove(fname) @@ -101,7 +123,9 @@ def test_basic(tmpdir, capsys): with open(op.join(d, 'bad.txt'), 'w', newline='') as f: f.write('abandonned\nAbandonned\nABANDONNED\nAbAnDoNnEd\nabandonned\rAbandonned\r\nABANDONNED \n AbAnDoNnEd') # noqa: E501 assert cs.main(d) == 8 - code, _, stderr = cs.main('-w', d, std=True) + result = cs.main('-w', d, std=True) + assert isinstance(result, tuple) + code, _, stderr = result assert code == 0 assert 'FIXED:' in stderr with open(op.join(d, 'bad.txt'), newline='') as f: @@ -112,8 +136,9 @@ def test_basic(tmpdir, capsys): with open(op.join(d, 'bad.txt'), 'w') as f: f.write('abandonned abandonned\n') assert cs.main(d) == 2 - code, stdout, stderr = cs.main( - '-q', '16', '-w', d, count=False, std=True) + result = cs.main('-q', '16', '-w', d, count=False, std=True) + assert isinstance(result, tuple) + code, stdout, stderr = result assert code == 0 assert stdout == stderr == '' assert cs.main(d) == 0 @@ -123,17 +148,21 @@ def test_basic(tmpdir, capsys): assert cs.main(d) == 0 -def test_bad_glob(tmpdir, capsys): +def test_bad_glob( + tmpdir: pytest.TempPathFactory, + capsys: pytest.CaptureFixture[str], +) -> None: # disregard invalid globs, properly handle escaped globs - g = op.join(tmpdir, 'glob') + g = op.join(str(tmpdir), 'glob') os.mkdir(g) fname = op.join(g, '[b-a].txt') with open(fname, 'a') as f: f.write('abandonned\n') assert cs.main(g) == 1 # bad glob is invalid - code, _, stderr = cs.main('--skip', '[b-a].txt', - g, std=True) + result = cs.main('--skip', '[b-a].txt', g, std=True) + assert isinstance(result, tuple) + code, _, stderr = result if sys.hexversion < 0x030A05F0: # Python < 3.10.5 raises re.error assert code == EX_USAGE, 'invalid glob' assert 'invalid glob' in stderr @@ -145,19 +174,29 @@ def test_bad_glob(tmpdir, capsys): @pytest.mark.skipif( not sys.platform == 'linux', reason='Only supported on Linux') -def test_permission_error(tmp_path, capsys): +def test_permission_error( + tmp_path: Path, + capsys: pytest.CaptureFixture[str], +) -> None: """Test permission error handling.""" d = tmp_path with open(d / 'unreadable.txt', 'w') as f: f.write('abandonned\n') - code, _, stderr = cs.main(f.name, std=True) + result = cs.main(f.name, std=True) + assert isinstance(result, tuple) + code, _, stderr = result assert 'WARNING:' not in stderr os.chmod(f.name, 0o000) - code, _, stderr = cs.main(f.name, std=True) + result = cs.main(f.name, std=True) + assert isinstance(result, tuple) + code, _, stderr = result assert 'WARNING:' in stderr -def test_interactivity(tmpdir, capsys): +def test_interactivity( + tmpdir: pytest.TempPathFactory, + capsys: pytest.CaptureFixture[str], +) -> None: """Test interaction""" # Windows can't read a currently-opened file, so here we use # NamedTemporaryFile just to get a good name @@ -171,7 +210,9 @@ def test_interactivity(tmpdir, capsys): with FakeStdin('y\n'): assert cs.main('-i', '3', f.name) == 1 with FakeStdin('n\n'): - code, stdout, _ = cs.main('-w', '-i', '3', f.name, std=True) + result = cs.main('-w', '-i', '3', f.name, std=True) + assert isinstance(result, tuple) + code, stdout, _ = result assert code == 0 assert '==>' in stdout with FakeStdin('x\ny\n'): @@ -213,7 +254,9 @@ def test_interactivity(tmpdir, capsys): f.write('ackward\n') assert cs.main(f.name) == 1 with FakeStdin('x\n1\n'): # blank input -> nothing - code, stdout, _ = cs.main('-w', '-i', '3', f.name, std=True) + result = cs.main('-w', '-i', '3', f.name, std=True) + assert isinstance(result, tuple) + code, stdout, _ = result assert code == 0 assert 'a valid option' in stdout assert cs.main(f.name) == 0 @@ -223,14 +266,21 @@ def test_interactivity(tmpdir, capsys): os.remove(f.name) -def test_summary(tmpdir, capsys): +def test_summary( + tmpdir: pytest.TempPathFactory, + capsys: pytest.CaptureFixture[str], +) -> None: """Test summary functionality.""" with open(op.join(str(tmpdir), 'tmp'), 'w') as f: pass - code, stdout, stderr = cs.main(f.name, std=True, count=False) + result = cs.main(f.name, std=True, count=False) + assert isinstance(result, tuple) + code, stdout, stderr = result assert code == 0 assert stdout == stderr == '', 'no output' - code, stdout, stderr = cs.main(f.name, '--summary', std=True) + result = cs.main(f.name, '--summary', std=True) + assert isinstance(result, tuple) + code, stdout, stderr = result assert code == 0 assert stderr == '0\n' assert 'SUMMARY' in stdout @@ -238,14 +288,19 @@ def test_summary(tmpdir, capsys): with open(f.name, 'w') as f: f.write('abandonned\nabandonned') assert code == 0 - code, stdout, stderr = cs.main(f.name, '--summary', std=True) + result = cs.main(f.name, '--summary', std=True) + assert isinstance(result, tuple) + code, stdout, stderr = result assert stderr == '2\n' assert 'SUMMARY' in stdout assert len(stdout.split('\n')) == 7 assert 'abandonned' in stdout.split()[-2] -def test_ignore_dictionary(tmpdir, capsys): +def test_ignore_dictionary( + tmpdir: pytest.TempPathFactory, + capsys: pytest.CaptureFixture[str], +) -> None: """Test ignore dictionary functionality.""" d = str(tmpdir) with open(op.join(d, 'bad.txt'), 'w') as f: @@ -257,7 +312,10 @@ def test_ignore_dictionary(tmpdir, capsys): assert cs.main('-I', f.name, bad_name) == 1 -def test_ignore_word_list(tmpdir, capsys): +def test_ignore_word_list( + tmpdir: pytest.TempPathFactory, + capsys: pytest.CaptureFixture[str], +) -> None: """Test ignore word list functionality.""" d = str(tmpdir) with open(op.join(d, 'bad.txt'), 'w') as f: @@ -266,19 +324,27 @@ def test_ignore_word_list(tmpdir, capsys): assert cs.main('-Labandonned,someword', '-Labilty', d) == 1 -def test_custom_regex(tmpdir, capsys): +def test_custom_regex( + tmpdir: pytest.TempPathFactory, + capsys: pytest.CaptureFixture[str], +) -> None: """Test custom word regex.""" d = str(tmpdir) with open(op.join(d, 'bad.txt'), 'w') as f: f.write('abandonned_abondon\n') assert cs.main(d) == 0 assert cs.main('-r', "[a-z]+", d) == 2 - code, _, stderr = cs.main('-r', '[a-z]+', '--write-changes', d, std=True) + result = cs.main('-r', '[a-z]+', '--write-changes', d, std=True) + assert isinstance(result, tuple) + code, _, stderr = result assert code == EX_USAGE assert 'ERROR:' in stderr -def test_exclude_file(tmpdir, capsys): +def test_exclude_file( + tmpdir: pytest.TempPathFactory, + capsys: pytest.CaptureFixture[str], +) -> None: """Test exclude file functionality.""" d = str(tmpdir) with open(op.join(d, 'bad.txt'), 'wb') as f: @@ -291,10 +357,13 @@ def test_exclude_file(tmpdir, capsys): assert cs.main('-x', f.name, bad_name) == 1 -def test_encoding(tmpdir, capsys): +def test_encoding( + tmpdir: pytest.TempPathFactory, + capsys: pytest.CaptureFixture[str], +) -> None: """Test encoding handling.""" # Some simple Unicode things - with open(op.join(str(tmpdir), 'tmp'), 'w') as f: + with open(op.join(str(tmpdir), 'tmp'), 'wb') as f: pass # with CaptureStdout() as sio: assert cs.main(f.name) == 0 @@ -309,28 +378,39 @@ def test_encoding(tmpdir, capsys): with open(f.name, 'wb') as f: f.write(b'Speling error, non-ASCII: h\xe9t\xe9rog\xe9n\xe9it\xe9\n') # check warnings about wrong encoding are enabled with "-q 0" - code, stdout, stderr = cs.main('-q', '0', f.name, std=True, count=True) + result = cs.main('-q', '0', f.name, std=True, count=True) + assert isinstance(result, tuple) + code, stdout, stderr = result assert code == 1 assert 'Speling' in stdout assert 'iso-8859-1' in stderr # check warnings about wrong encoding are disabled with "-q 1" - code, stdout, stderr = cs.main('-q', '1', f.name, std=True, count=True) + result = cs.main('-q', '1', f.name, std=True, count=True) + assert isinstance(result, tuple) + code, stdout, stderr = result assert code == 1 assert 'Speling' in stdout assert 'iso-8859-1' not in stderr # Binary file warning with open(f.name, 'wb') as f: f.write(b'\x00\x00naiive\x00\x00') - code, stdout, stderr = cs.main(f.name, std=True, count=False) + result = cs.main(f.name, std=True, count=False) + assert isinstance(result, tuple) + code, stdout, stderr = result assert code == 0 assert stdout == stderr == '' - code, stdout, stderr = cs.main('-q', '0', f.name, std=True, count=False) + result = cs.main('-q', '0', f.name, std=True, count=False) + assert isinstance(result, tuple) + code, stdout, stderr = result assert code == 0 assert stdout == '' assert 'WARNING: Binary file' in stderr -def test_ignore(tmpdir, capsys): +def test_ignore( + tmpdir: pytest.TempPathFactory, + capsys: pytest.CaptureFixture[str], +) -> None: """Test ignoring of files and directories.""" d = str(tmpdir) goodtxt = op.join(d, 'good.txt') @@ -357,7 +437,10 @@ def test_ignore(tmpdir, capsys): assert cs.main('--skip=*.js', goodtxt, badtxt, badjs) == 1 -def test_check_filename(tmpdir, capsys): +def test_check_filename( + tmpdir: pytest.TempPathFactory, + capsys: pytest.CaptureFixture[str], +) -> None: """Test filename check.""" d = str(tmpdir) # Empty file @@ -376,7 +459,10 @@ def test_check_filename(tmpdir, capsys): @pytest.mark.skipif((not hasattr(os, "mkfifo") or not callable(os.mkfifo)), reason='requires os.mkfifo') -def test_check_filename_irregular_file(tmpdir, capsys): +def test_check_filename_irregular_file( + tmpdir: pytest.TempPathFactory, + capsys: pytest.CaptureFixture[str], +) -> None: """Test irregular file filename check.""" # Irregular file (!isfile()) d = str(tmpdir) @@ -385,7 +471,10 @@ def test_check_filename_irregular_file(tmpdir, capsys): d = str(tmpdir) -def test_check_hidden(tmpdir, capsys): +def test_check_hidden( + tmpdir: pytest.TempPathFactory, + capsys: pytest.CaptureFixture[str], +) -> None: """Test ignoring of hidden files.""" d = str(tmpdir) # visible file @@ -419,7 +508,7 @@ def test_check_hidden(tmpdir, capsys): assert cs.main('--check-hidden', d) == 2 assert cs.main('--check-hidden', '--check-filenames', d) == 5 # check again with a relative path - rel = op.relpath(tmpdir) + rel = op.relpath(d) assert cs.main(rel) == 0 assert cs.main('--check-hidden', rel) == 2 assert cs.main('--check-hidden', '--check-filenames', rel) == 5 @@ -437,26 +526,37 @@ def test_check_hidden(tmpdir, capsys): assert cs.main('--check-hidden', '--check-filenames', d) == 8 -def test_case_handling(tmpdir, capsys): +def test_case_handling( + tmpdir: pytest.TempPathFactory, + capsys: pytest.CaptureFixture[str], +) -> None: """Test that capitalized entries get detected properly.""" # Some simple Unicode things - with open(op.join(str(tmpdir), 'tmp'), 'w') as f: + with open(op.join(str(tmpdir), 'tmp'), 'wb') as f: pass # with CaptureStdout() as sio: assert cs.main(f.name) == 0 with open(f.name, 'wb') as f: f.write(b'this has an ACII error') - code, stdout, _ = cs.main(f.name, std=True) + result = cs.main(f.name, std=True) + assert isinstance(result, tuple) + code, stdout, _ = result assert code == 1 assert 'ASCII' in stdout - code, _, stderr = cs.main('-w', f.name, std=True) + result = cs.main('-w', f.name, std=True) + assert isinstance(result, tuple) + code, _, stderr = result assert code == 0 assert 'FIXED' in stderr - with open(f.name, 'rb') as f: - assert f.read().decode('utf-8') == 'this has an ASCII error' + with open(f.name, 'rb') as fp: + assert fp.read().decode('utf-8') == 'this has an ASCII error' -def _helper_test_case_handling_in_fixes(tmpdir, capsys, reason): +def _helper_test_case_handling_in_fixes( + tmpdir: pytest.TempPathFactory, + capsys: pytest.CaptureFixture[str], + reason: bool, +) -> None: d = str(tmpdir) with open(op.join(d, 'dictionary.txt'), 'w') as f: @@ -469,7 +569,9 @@ def _helper_test_case_handling_in_fixes(tmpdir, capsys, reason): # the mispelled word is entirely lowercase with open(op.join(d, 'bad.txt'), 'w') as f: f.write('early adoptor\n') - code, stdout, _ = cs.main('-D', dictionary_name, f.name, std=True) + result = cs.main('-D', dictionary_name, f.name, std=True) + assert isinstance(result, tuple) + code, stdout, _ = result # all suggested fixes must be lowercase too assert 'adopter, adaptor' in stdout # the reason, if any, must not be modified @@ -479,7 +581,9 @@ def _helper_test_case_handling_in_fixes(tmpdir, capsys, reason): # the mispelled word is capitalized with open(op.join(d, 'bad.txt'), 'w') as f: f.write('Early Adoptor\n') - code, stdout, _ = cs.main('-D', dictionary_name, f.name, std=True) + result = cs.main('-D', dictionary_name, f.name, std=True) + assert isinstance(result, tuple) + code, stdout, _ = result # all suggested fixes must be capitalized too assert 'Adopter, Adaptor' in stdout # the reason, if any, must not be modified @@ -489,7 +593,9 @@ def _helper_test_case_handling_in_fixes(tmpdir, capsys, reason): # the mispelled word is entirely uppercase with open(op.join(d, 'bad.txt'), 'w') as f: f.write('EARLY ADOPTOR\n') - code, stdout, _ = cs.main('-D', dictionary_name, f.name, std=True) + result = cs.main('-D', dictionary_name, f.name, std=True) + assert isinstance(result, tuple) + code, stdout, _ = result # all suggested fixes must be uppercase too assert 'ADOPTER, ADAPTOR' in stdout # the reason, if any, must not be modified @@ -499,7 +605,9 @@ def _helper_test_case_handling_in_fixes(tmpdir, capsys, reason): # the mispelled word mixes lowercase and uppercase with open(op.join(d, 'bad.txt'), 'w') as f: f.write('EaRlY AdOpToR\n') - code, stdout, _ = cs.main('-D', dictionary_name, f.name, std=True) + result = cs.main('-D', dictionary_name, f.name, std=True) + assert isinstance(result, tuple) + code, stdout, _ = result # all suggested fixes should be lowercase assert 'adopter, adaptor' in stdout # the reason, if any, must not be modified @@ -507,20 +615,28 @@ def _helper_test_case_handling_in_fixes(tmpdir, capsys, reason): assert 'reason' in stdout -def test_case_handling_in_fixes(tmpdir, capsys): +def test_case_handling_in_fixes( + tmpdir: pytest.TempPathFactory, + capsys: pytest.CaptureFixture[str] +) -> None: """Test that the case of fixes is similar to the mispelled word.""" _helper_test_case_handling_in_fixes(tmpdir, capsys, reason=False) _helper_test_case_handling_in_fixes(tmpdir, capsys, reason=True) -def test_context(tmpdir, capsys): +def test_context( + tmpdir: pytest.TempPathFactory, + capsys: pytest.CaptureFixture[str], +) -> None: """Test context options.""" d = str(tmpdir) with open(op.join(d, 'context.txt'), 'w') as f: f.write('line 1\nline 2\nline 3 abandonned\nline 4\nline 5') # symmetric context, fully within file - code, stdout, _ = cs.main('-C', '1', d, std=True) + result = cs.main('-C', '1', d, std=True) + assert isinstance(result, tuple) + code, stdout, _ = result assert code == 1 lines = stdout.split('\n') assert len(lines) == 5 @@ -529,7 +645,9 @@ def test_context(tmpdir, capsys): assert lines[2] == ': line 4' # requested context is bigger than the file - code, stdout, _ = cs.main('-C', '10', d, std=True) + result = cs.main('-C', '10', d, std=True) + assert isinstance(result, tuple) + code, stdout, _ = result assert code == 1 lines = stdout.split('\n') assert len(lines) == 7 @@ -540,7 +658,9 @@ def test_context(tmpdir, capsys): assert lines[4] == ': line 5' # only before context - code, stdout, _ = cs.main('-B', '2', d, std=True) + result = cs.main('-B', '2', d, std=True) + assert isinstance(result, tuple) + code, stdout, _ = result assert code == 1 lines = stdout.split('\n') assert len(lines) == 5 @@ -549,7 +669,9 @@ def test_context(tmpdir, capsys): assert lines[2] == '> line 3 abandonned' # only after context - code, stdout, _ = cs.main('-A', '1', d, std=True) + result = cs.main('-A', '1', d, std=True) + assert isinstance(result, tuple) + code, stdout, _ = result assert code == 1 lines = stdout.split('\n') assert len(lines) == 4 @@ -557,7 +679,9 @@ def test_context(tmpdir, capsys): assert lines[1] == ': line 4' # asymmetric context - code, stdout, _ = cs.main('-B', '2', '-A', '1', d, std=True) + result = cs.main('-B', '2', '-A', '1', d, std=True) + assert isinstance(result, tuple) + code, stdout, _ = result assert code == 1 lines = stdout.split('\n') assert len(lines) == 6 @@ -567,24 +691,33 @@ def test_context(tmpdir, capsys): assert lines[3] == ': line 4' # both '-C' and '-A' on the command line - code, _, stderr = cs.main('-C', '2', '-A', '1', d, std=True) + result = cs.main('-C', '2', '-A', '1', d, std=True) + assert isinstance(result, tuple) + code, _, stderr = result assert code == EX_USAGE lines = stderr.split('\n') assert 'ERROR' in lines[0] # both '-C' and '-B' on the command line - code, _, stderr = cs.main('-C', '2', '-B', '1', d, std=True) + result = cs.main('-C', '2', '-B', '1', d, std=True) + assert isinstance(result, tuple) + code, _, stderr = result assert code == EX_USAGE lines = stderr.split('\n') assert 'ERROR' in lines[0] -def test_ignore_regex_option(tmpdir, capsys): +def test_ignore_regex_option( + tmpdir: pytest.TempPathFactory, + capsys: pytest.CaptureFixture[str], +) -> None: """Test ignore regex option functionality.""" d = str(tmpdir) # Invalid regex. - code, stdout, _ = cs.main('--ignore-regex=(', std=True) + result = cs.main('--ignore-regex=(', std=True) + assert isinstance(result, tuple) + code, stdout, _ = result assert code == EX_USAGE assert 'usage:' in stdout @@ -612,12 +745,17 @@ def test_ignore_regex_option(tmpdir, capsys): assert cs.main(f.name, r'--ignore-regex=\bdonn\b') == 1 -def test_uri_regex_option(tmpdir, capsys): +def test_uri_regex_option( + tmpdir: pytest.TempPathFactory, + capsys: pytest.CaptureFixture[str], +) -> None: """Test --uri-regex option functionality.""" d = str(tmpdir) # Invalid regex. - code, stdout, _ = cs.main('--uri-regex=(', std=True) + result = cs.main('--uri-regex=(', std=True) + assert isinstance(result, tuple) + code, stdout, _ = result assert code == EX_USAGE assert 'usage:' in stdout @@ -646,7 +784,10 @@ def test_uri_regex_option(tmpdir, capsys): '--uri-ignore-words-list=abandonned') == 0 -def test_uri_ignore_words_list_option_uri(tmpdir, capsys): +def test_uri_ignore_words_list_option_uri( + tmpdir: pytest.TempPathFactory, + capsys: pytest.CaptureFixture[str], +) -> None: """Test ignore regex option functionality.""" d = str(tmpdir) @@ -708,7 +849,10 @@ def test_uri_ignore_words_list_option_uri(tmpdir, capsys): assert cs.main(f.name, variation_option) == 1, variation -def test_uri_ignore_words_list_option_email(tmpdir, capsys): +def test_uri_ignore_words_list_option_email( + tmpdir: pytest.TempPathFactory, + capsys: pytest.CaptureFixture[str], +) -> None: """Test ignore regex option functionality.""" d = str(tmpdir) @@ -761,7 +905,7 @@ def test_uri_ignore_words_list_option_email(tmpdir, capsys): assert cs.main(f.name, variation_option) == 1, variation -def test_uri_regex_def(): +def test_uri_regex_def() -> None: uri_regex = re.compile(uri_regex_def) # Tests based on https://mathiasbynens.be/demo/url-regex @@ -855,7 +999,11 @@ def test_uri_regex_def(): @pytest.mark.parametrize('kind', ('toml', 'cfg')) -def test_config_toml(tmp_path, capsys, kind): +def test_config_toml( + tmp_path: Path, + capsys: pytest.CaptureFixture[str], + kind: str, +) -> None: """Test loading options from a config file or toml.""" d = tmp_path / 'files' d.mkdir() @@ -865,7 +1013,9 @@ def test_config_toml(tmp_path, capsys, kind): f.write("good") # Should fail when checking both. - code, stdout, _ = cs.main(str(d), count=True, std=True) + result = cs.main(str(d), count=True, std=True) + assert isinstance(result, tuple) + code, stdout, _ = result # Code in this case is not exit code, but count of misspellings. assert code == 2 assert 'bad.txt' in stdout @@ -892,7 +1042,9 @@ def test_config_toml(tmp_path, capsys, kind): """) # Should pass when skipping bad.txt - code, stdout, _ = cs.main(str(d), *args, count=True, std=True) + result = cs.main(str(d), *args, count=True, std=True) + assert isinstance(result, tuple) + code, stdout, _ = result assert code == 0 assert 'bad.txt' not in stdout @@ -900,7 +1052,9 @@ def test_config_toml(tmp_path, capsys, kind): cwd = os.getcwd() try: os.chdir(tmp_path) - code, stdout, _ = cs.main(str(d), count=True, std=True) + result = cs.main(str(d), count=True, std=True) + assert isinstance(result, tuple) + code, stdout, _ = result finally: os.chdir(cwd) assert code == 0 @@ -908,7 +1062,7 @@ def test_config_toml(tmp_path, capsys, kind): @contextlib.contextmanager -def FakeStdin(text): +def FakeStdin(text: str) -> Generator[None, None, None]: oldin = sys.stdin try: in_ = StringIO(text) diff --git a/codespell_lib/tests/test_dictionary.py b/codespell_lib/tests/test_dictionary.py index 745b4ab72c..327c647d2f 100644 --- a/codespell_lib/tests/test_dictionary.py +++ b/codespell_lib/tests/test_dictionary.py @@ -3,6 +3,7 @@ import os.path as op import re import warnings +from typing import Any, Dict, Iterable, Optional, Set, Tuple import pytest @@ -11,7 +12,7 @@ spellers = {} try: - import aspell + import aspell # type: ignore[import] for lang in supported_languages: spellers[lang] = aspell.Speller('lang', lang) except Exception as exp: # probably ImportError, but maybe also language @@ -25,8 +26,8 @@ 'aspell not found, but not required, skipping aspell tests. Got ' 'error during import:\n%s' % (exp,)) -global_err_dicts = {} -global_pairs = 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') @@ -36,7 +37,7 @@ fname_params = pytest.mark.parametrize('fname, in_aspell, in_dictionary', _fnames_in_aspell) # noqa: E501 -def test_dictionaries_exist(): +def test_dictionaries_exist() -> None: """Test consistency of dictionaries.""" doc_fnames = {op.basename(f[0]) for f in _fnames_in_aspell} got_fnames = {op.basename(f) @@ -45,7 +46,11 @@ def test_dictionaries_exist(): @fname_params -def test_dictionary_formatting(fname, in_aspell, in_dictionary): +def test_dictionary_formatting( + fname: str, + in_aspell: Tuple[bool, bool], + in_dictionary: Tuple[Iterable[str], Iterable[str]], +) -> None: """Test that all dictionary entries are valid.""" errors = [] with open(fname, 'rb') as fid: @@ -61,7 +66,13 @@ def test_dictionary_formatting(fname, in_aspell, in_dictionary): raise AssertionError('\n' + '\n'.join(errors)) -def _check_aspell(phrase, msg, in_aspell, fname, languages): +def _check_aspell( + phrase: str, + msg: str, + in_aspell: Optional[bool], + fname: str, + languages: Iterable[str], +) -> None: if not spellers: # if no spellcheckers exist return # cannot check if in_aspell is None: @@ -90,7 +101,13 @@ def _check_aspell(phrase, msg, in_aspell, fname, languages): single_comma = re.compile(r'^[^,]*,\s*$') -def _check_err_rep(err, rep, in_aspell, fname, languages): +def _check_err_rep( + err: str, + rep: str, + in_aspell: Tuple[Optional[bool], Optional[bool]], + fname: str, + languages: Tuple[Iterable[str], Iterable[str]], +) -> None: assert whitespace.search(err) is None, 'error %r has whitespace' % err assert ',' not in err, 'error %r has a comma' % err assert len(rep) > 0, ('error %s: correction %r must be non-empty' @@ -100,7 +117,7 @@ def _check_err_rep(err, rep, in_aspell, fname, languages): % (err, rep)) _check_aspell(err, 'error %r' % (err,), in_aspell[0], fname, languages[0]) prefix = 'error %s: correction %r' % (err, rep) - for (r, msg) in [ + for (regex, msg) in [ (start_comma, '%s starts with a comma'), (whitespace_comma, @@ -113,7 +130,7 @@ def _check_err_rep(err, rep, in_aspell, fname, languages): '%s has a trailing space'), (single_comma, '%s has a single entry but contains a trailing comma')]: - assert not r.search(rep), (msg % (prefix,)) + assert not regex.search(rep), (msg % (prefix,)) del msg if rep.count(','): assert rep.endswith(','), ('error %s: multiple corrections must end ' @@ -150,7 +167,7 @@ def _check_err_rep(err, rep, in_aspell, fname, languages): ('a', 'a', 'corrects to itself'), ('a', 'bar, Bar,', 'unique'), ]) -def test_error_checking(err, rep, match): +def test_error_checking(err: str, rep: str, match: str) -> None: """Test that our error checking works.""" with pytest.raises(AssertionError, match=match): _check_err_rep(err, rep, (None, None), 'dummy', @@ -182,7 +199,13 @@ def test_error_checking(err, rep, match): ('a', 'bar abcdef', None, True, 'should be in aspell'), ('a', 'abcdef back', None, False, 'should not be in aspell'), ]) -def test_error_checking_in_aspell(err, rep, err_aspell, rep_aspell, match): +def test_error_checking_in_aspell( + err: str, + rep: str, + err_aspell: Optional[bool], + rep_aspell: Optional[bool], + match: str +) -> None: """Test that our error checking works with aspell.""" with pytest.raises(AssertionError, match=match): _check_err_rep( @@ -205,7 +228,11 @@ def test_error_checking_in_aspell(err, rep, err_aspell, rep_aspell, match): @fname_params @pytest.mark.dependency(name='dictionary loop') -def test_dictionary_looping(fname, in_aspell, in_dictionary): +def test_dictionary_looping( + fname: str, + in_aspell: Tuple[bool, bool], + in_dictionary: Tuple[bool, bool], +) -> None: """Test that all dictionary entries are valid.""" this_err_dict = {} short_fname = op.basename(fname) @@ -263,7 +290,7 @@ def test_dictionary_looping(fname, in_aspell, in_dictionary): @pytest.mark.dependency(depends=['dictionary loop']) -def test_ran_all(): +def test_ran_all() -> None: """Test that all pairwise tests ran.""" for f1, _, _ in _fnames_in_aspell: f1 = op.basename(f1) diff --git a/pyproject.toml b/pyproject.toml index 71d90edf73..4c45d3de38 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -40,6 +40,12 @@ hard-encoding-detection = [ toml = [ "tomli; python_version < '3.11'" ] +types = [ + "mypy", + "pytest", + "types-chardet", + "types-setuptools", +] [project.scripts] codespell = "codespell_lib:_script_main" @@ -64,11 +70,17 @@ exclude = [ [tool.setuptools.package-data] codespell_lib = [ "data/dictionary*.txt", - "data/linux-kernel.exclude" + "data/linux-kernel.exclude", + "py.typed", ] [tool.check-manifest] ignore = ["codespell_lib/_version.py"] +[tool.mypy] +pretty = true +show_error_codes = true +strict = true + [tool.pytest.ini_options] addopts = "--cov=codespell_lib -rs --cov-report= --tb=short --junit-xml=junit-results.xml" From 2364249117217043b3455d3fc78d42c4d0781fce Mon Sep 17 00:00:00 2001 From: Jason Yuen Date: Mon, 7 Nov 2022 10:43:46 -0800 Subject: [PATCH 067/302] Add a few spelling corrections (#2550) --- codespell_lib/data/dictionary.txt | 30 +++++++++++++++++++++++++- codespell_lib/data/dictionary_rare.txt | 1 + 2 files changed, 30 insertions(+), 1 deletion(-) diff --git a/codespell_lib/data/dictionary.txt b/codespell_lib/data/dictionary.txt index 7a99b201b3..19cd4d2646 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -5631,6 +5631,9 @@ centruies->centuries centruy->century centuties->centuries centuty->century +cerain->certain +cerainly->certainly +cerainty->certainty cerate->create cerated->created, serrated, ceratin->certain, keratin, @@ -5714,6 +5717,9 @@ certiticated->certificated certiticates->certificates certitication->certification cervial->cervical, servile, serval, +cetain->certain +cetainly->certainly +cetainty->certainty cetrainly->certainly cetting->setting Cgywin->Cygwin @@ -7091,6 +7097,10 @@ compelte->complete compeltelyt->completely compeltion->completion compeltly->completely +compelx->complex +compelxes->complexes +compelxities->complexities +compelxity->complexity compenent->component, competent, compenents->components, competence, compensantion->compensation @@ -17325,7 +17335,7 @@ hightlight->highlight hightlighted->highlighted hightlighting->highlighting hightlights->highlights -hights->height +hights->heights higlight->highlight higlighted->highlighted higlighting->highlighting @@ -20428,6 +20438,8 @@ libarary->library libaries->libraries libary->library libell->libel +liberaries->libraries +liberary->library liberoffice->libreoffice liberry->library libgng->libpng @@ -25238,6 +25250,8 @@ playge->plague playgerise->plagiarise playgerize->plagiarize playgropund->playground +playist->playlist +playists->playlists playright->playwright playwrite->playwright playwrites->playwrights @@ -29286,6 +29300,7 @@ restoreing->restoring restors->restores restouration->restoration restraunt->restraint, restaurant, +restraunts->restraints, restaurants, restrcted->restricted restrcuture->restructure restriced->restricted @@ -31265,6 +31280,7 @@ solfs->solves soliders->soldiers solification->solidification soliliquy->soliloquy +solitare->solitaire, solitary, soltion->solution soltuion->solution soltuions->solutions @@ -31492,6 +31508,8 @@ speciffic->specific speciffically->specifically specifi->specific, specify, specifially->specifically +specificaiton->specification +specificaitons->specifications specificallly->specifically specificaly->specifically specificated->specified @@ -33719,6 +33737,8 @@ terimnate->terminate termial->terminal termials->terminals termianted->terminated +termimal->terminal +termimals->terminals terminater->terminator terminaters->terminators terminats->terminates @@ -33750,6 +33770,8 @@ termporarily->temporarily termporary->temporary ternament->tournament ternimate->terminate +terninal->terminal +terninals->terminals terrable->terrible terrestial->terrestrial terrform->terraform @@ -35074,10 +35096,16 @@ uncalcualted->uncalculated unce->once uncehck->uncheck uncehcked->unchecked +uncerain->uncertain +uncerainties->uncertainties +uncerainty->uncertainty uncertaincy->uncertainty uncertainities->uncertainties uncertainity->uncertainty uncessarily->unnecessarily +uncetain->uncertain +uncetainties->uncertainties +uncetainty->uncertainty unchache->uncache unchached->uncached unchaged->unchanged diff --git a/codespell_lib/data/dictionary_rare.txt b/codespell_lib/data/dictionary_rare.txt index 814348e506..b4c24a1a1e 100644 --- a/codespell_lib/data/dictionary_rare.txt +++ b/codespell_lib/data/dictionary_rare.txt @@ -129,6 +129,7 @@ pleas->please predicable->predictable preform->perform preformed->performed +preforming->performing preforms->performs pres->press prioritary->priority From 790e2479fd16ce4101bab02aa58b679bc48c6ca2 Mon Sep 17 00:00:00 2001 From: luzpaz Date: Mon, 7 Nov 2022 13:45:49 -0500 Subject: [PATCH 068/302] Add several spelling corrections (#2582) Co-authored-by: vikivivi <22041592+vikivivi@users.noreply.github.com> --- codespell_lib/data/dictionary.txt | 40 +++++++++++++++++++++++++++++++ 1 file changed, 40 insertions(+) diff --git a/codespell_lib/data/dictionary.txt b/codespell_lib/data/dictionary.txt index 19cd4d2646..cac2173ec9 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -5860,6 +5860,9 @@ charactetr->character charactetrs->characters charactets->characters characther->character +charactiristic->characteristic +charactiristically->characteristically +charactiristics->characteristics charactor->character charactors->characters charactristic->characteristic @@ -7176,6 +7179,7 @@ completeion->completion completelly->completely completelty->completely completelyl->completely +completess->completes, completeness, completetion->completion completetly->completely completiom->completion @@ -8472,6 +8476,7 @@ convienent->convenient convienience->convenience convienient->convenient convieniently->conveniently +convient->convenient, convent, conviently->conveniently conviguration->configuration convigure->configure @@ -13452,6 +13457,8 @@ ephememeris->ephemeris epidsodes->episodes epigramic->epigrammatic epilgoue->epilogue +episdoe->episode +episdoes->episodes eploit->exploit eploits->exploits epmty->empty @@ -14395,6 +14402,8 @@ exixt->exist exlamation->exclamation exlcude->exclude exlcuding->excluding +exlcusion->exclusion +exlcusions->exclusions exlcusive->exclusive exlicit->explicit exlicite->explicit @@ -16334,6 +16343,11 @@ functonality->functionality functoning->functioning functons->functions functtion->function +functtional->functional +functtionalities->functionalities +functtioned->functioned +functtioning->functioning +functtions->functions funczion->function fundametal->fundamental fundametals->fundamentals @@ -24455,6 +24469,7 @@ paramemter->parameter paramemters->parameters paramenet->parameter paramenets->parameters +paramenter->parameter paramenters->parameters paramer->parameter paramert->parameter @@ -25007,6 +25022,10 @@ peroendicular->perpendicular perogative->prerogative peroid->period peroidic->periodic +peroidical->periodical +peroidically->periodically +peroidicals->periodicals +peroidicity->periodicity peroids->periods peronal->personal peroperly->properly @@ -27011,6 +27030,7 @@ quicly->quickly quiessent->quiescent quiest->quest, quiet, quiests->quests +quikc->quick quinessential->quintessential quitely->quite, quietly, quith->quit, with, @@ -27063,6 +27083,7 @@ rapresentation->representation rapresented->represented rapresenting->representing rapresents->represents +rapsberry->raspberry rarelly->rarely rarified->rarefied rasberry->raspberry @@ -31955,6 +31976,7 @@ spred->spread spredsheet->spreadsheet spreedsheet->spreadsheet sprinf->sprintf +spririous->spurious spriritual->spiritual spritual->spiritual sproon->spoon @@ -32083,6 +32105,11 @@ staps->steps, stops, staration->starvation stard->start stardard->standard +stardardize->standardize +stardardized->standardized +stardardizes->standardizes +stardardizing->standardizing +stardards->standards staright->straight startd->started startegic->strategic @@ -33150,7 +33177,17 @@ swithing->switching switiches->switches swown->shown swtich->switch +swtichable->switchable +swtichback->switchback +swtichbacks->switchbacks +swtichboard->switchboard +swtichboards->switchboards +swtiched->switched +swticher->switcher +swtichers->switchers +swtiches->switches swtiching->switching +swtichover->switchover swtichs->switches sxl->xsl syantax->syntax @@ -34035,6 +34072,9 @@ througout->throughout througt->through througth->through throuh->through +throuhg->through +throuhgout->throughout +throuhgput->throughput throuth->through throwed->threw, thrown, throwgh->through From 1302d7974fb12ae2d723376e81e9b2f1e5c7a5bd Mon Sep 17 00:00:00 2001 From: Janosh Riebesell Date: Tue, 8 Nov 2022 14:27:03 -0800 Subject: [PATCH 069/302] quation->equation (#2591) --- codespell_lib/data/dictionary.txt | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/codespell_lib/data/dictionary.txt b/codespell_lib/data/dictionary.txt index cac2173ec9..5e14b0eea2 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -26991,7 +26991,9 @@ quartenions->quaternions quartically->quadratically quatation->quotation quater->quarter -quating->quoting, squatting, +quating->quoting, squatting, equating, +quation->equation +quations->equations quckstarter->quickstarter qudrangles->quadrangles quee->queue From a7d80cf9a40ca7759f62da297cc53919b6616dca Mon Sep 17 00:00:00 2001 From: Jon Dufresne Date: Sun, 6 Nov 2022 13:04:22 -0800 Subject: [PATCH 070/302] Use black to format Python files Black is a popular Python code formatter. By using it, contributors don't need to think about the project's styles preferences and avoids the need for hand-formatting. Instead, let the tool handle it. This can help smooth the review process. Updated existing tools to follow the integration docs: https://black.readthedocs.io/en/stable/guides/using_black_with_other_tools.html For more details, see the project: https://github.com/psf/black --- .github/workflows/black.yml | 12 + codespell_lib/__main__.py | 2 +- codespell_lib/_codespell.py | 835 +++++++++++++--------- codespell_lib/tests/test_basic.py | 916 +++++++++++++------------ codespell_lib/tests/test_dictionary.py | 320 +++++---- pyproject.toml | 3 + setup.cfg | 4 +- 7 files changed, 1183 insertions(+), 909 deletions(-) create mode 100644 .github/workflows/black.yml diff --git a/.github/workflows/black.yml b/.github/workflows/black.yml new file mode 100644 index 0000000000..7091279815 --- /dev/null +++ b/.github/workflows/black.yml @@ -0,0 +1,12 @@ +name: black + +on: + - push + - pull_request + +jobs: + black: + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v3 + - uses: psf/black@stable diff --git a/codespell_lib/__main__.py b/codespell_lib/__main__.py index 2d8f4b629f..bbadb84c5b 100644 --- a/codespell_lib/__main__.py +++ b/codespell_lib/__main__.py @@ -1,4 +1,4 @@ from ._codespell import _script_main -if __name__ == '__main__': +if __name__ == "__main__": _script_main() diff --git a/codespell_lib/_codespell.py b/codespell_lib/_codespell.py index ea8ce77dae..8811a049e6 100644 --- a/codespell_lib/_codespell.py +++ b/codespell_lib/_codespell.py @@ -32,41 +32,84 @@ # While we want to treat characters like ( or " as okay for a starting break, # 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)") -encodings = ('utf-8', 'iso-8859-1') +uri_regex_def = ( + "(\\b(?:https?|[ts]?ftp|file|git|smb)://[^\\s]+(?=$|\\s)|" + "\\b[\\w.%+-]+@[\\w.-]+\\b)" +) +encodings = ("utf-8", "iso-8859-1") USAGE = """ \t%prog [OPTIONS] [file1 file2 ... fileN] """ -supported_languages_en = ('en', 'en_GB', 'en_US', 'en_CA', 'en_AU') +supported_languages_en = ("en", "en_GB", "en_US", "en_CA", "en_AU") supported_languages = supported_languages_en # Users might want to link this file into /usr/local/bin, so we resolve the # symbolic link path to the real path if necessary. -_data_root = os.path.join(os.path.dirname(os.path.realpath(__file__)), 'data') +_data_root = os.path.join(os.path.dirname(os.path.realpath(__file__)), "data") _builtin_dictionaries = ( # name, desc, name, err in aspell, correction in aspell, \ # err dictionary array, rep dictionary array # The arrays must contain the names of aspell dictionaries # The aspell tests here aren't the ideal state, but the None's are # realistic for obscure words - ('clear', 'for unambiguous errors', '', - False, None, supported_languages_en, None), - ('rare', 'for rare (but valid) words that are likely to be errors', '_rare', # noqa: E501 - None, None, None, None), - ('informal', 'for making informal words more formal', '_informal', - True, True, supported_languages_en, supported_languages_en), - ('usage', 'for replacing phrasing with recommended terms', '_usage', - None, None, None, None), - ('code', 'for words from code and/or mathematics that are likely to be typos in other contexts (such as uint)', '_code', # noqa: E501 - None, None, None, None,), - ('names', 'for valid proper names that might be typos', '_names', - None, None, None, None,), - ('en-GB_to_en-US', 'for corrections from en-GB to en-US', '_en-GB_to_en-US', # noqa: E501 - True, True, ('en_GB',), ('en_US',)), + ("clear", "for unambiguous errors", "", False, None, supported_languages_en, None), + ( + "rare", + "for rare (but valid) words that are likely to be errors", + "_rare", # noqa: E501 + None, + None, + None, + None, + ), + ( + "informal", + "for making informal words more formal", + "_informal", + True, + True, + supported_languages_en, + supported_languages_en, + ), + ( + "usage", + "for replacing phrasing with recommended terms", + "_usage", + None, + None, + None, + None, + ), + ( + "code", + "for words from code and/or mathematics that are likely to be typos in other contexts (such as uint)", # noqa: E501 + "_code", + None, + None, + None, + None, + ), + ( + "names", + "for valid proper names that might be typos", + "_names", + None, + None, + None, + None, + ), + ( + "en-GB_to_en-US", + "for corrections from en-GB to en-US", + "_en-GB_to_en-US", # noqa: E501 + True, + True, + ("en_GB",), + ("en_US",), + ), ) -_builtin_default = 'clear,rare' +_builtin_default = "clear,rare" # docs say os.EX_USAGE et al. are only available on Unix systems, so to be safe # we protect and just use the values they are on macOS and Linux @@ -96,7 +139,7 @@ def __init__(self, pattern: Optional[str]) -> None: self.pattern_list: Optional[List[str]] if pattern: # Pattern might be a list of comma-delimited strings - self.pattern_list = ','.join(pattern).split(',') + self.pattern_list = ",".join(pattern).split(",") else: self.pattern_list = None @@ -116,16 +159,16 @@ def __init__(self, data: str, fix: bool, reason: str) -> None: class TermColors: def __init__(self) -> None: - self.FILE = '\033[33m' - self.WWORD = '\033[31m' - self.FWORD = '\033[32m' - self.DISABLE = '\033[0m' + self.FILE = "\033[33m" + self.WWORD = "\033[31m" + self.FWORD = "\033[32m" + self.DISABLE = "\033[0m" def disable(self) -> None: - self.FILE = '' - self.WWORD = '' - self.FWORD = '' - self.DISABLE = '' + self.FILE = "" + self.WWORD = "" + self.FWORD = "" + self.DISABLE = "" class Summary: @@ -142,10 +185,12 @@ def __str__(self) -> str: keys = list(self.summary.keys()) keys.sort() - return "\n".join(["{0}{1:{width}}".format( - key, - self.summary.get(key), - width=15 - len(key)) for key in keys]) + return "\n".join( + [ + "{0}{1:{width}}".format(key, self.summary.get(key), width=15 - len(key)) + for key in keys + ] + ) class FileOpener: @@ -159,9 +204,11 @@ def init_chardet(self) -> None: try: from chardet.universaldetector import UniversalDetector except ImportError: - raise ImportError("There's no chardet installed to import from. " - "Please, install it and check your PYTHONPATH " - "environment variable") + raise ImportError( + "There's no chardet installed to import from. " + "Please, install it and check your PYTHONPATH " + "environment variable" + ) self.encdetector = UniversalDetector() @@ -173,24 +220,29 @@ def open(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: + with open(filename, "rb") as fb: for line in fb: self.encdetector.feed(line) if self.encdetector.done: break self.encdetector.close() - encoding = self.encdetector.result['encoding'] + encoding = self.encdetector.result["encoding"] assert encoding is not None try: - f = open(filename, encoding=encoding, newline='') + f = open(filename, encoding=encoding, newline="") except UnicodeDecodeError: - print("ERROR: Could not detect encoding: %s" % filename, - file=sys.stderr) + print("ERROR: Could not detect encoding: %s" % filename, file=sys.stderr) raise except LookupError: - print("ERROR: Don't know how to handle encoding %s: %s" - % (encoding, filename,), file=sys.stderr) + print( + "ERROR: Don't know how to handle encoding %s: %s" + % ( + encoding, + filename, + ), + file=sys.stderr, + ) raise else: lines = f.readlines() @@ -205,46 +257,53 @@ def open_with_internal(self, filename: str) -> Tuple[List[str], str]: if first_try: first_try = False elif not self.quiet_level & QuietLevels.ENCODING: - print("WARNING: Trying next encoding %s" - % encoding, file=sys.stderr) - with open(filename, encoding=encoding, newline='') as f: + print("WARNING: Trying next encoding %s" % encoding, file=sys.stderr) + with open(filename, encoding=encoding, newline="") as f: try: lines = f.readlines() except UnicodeDecodeError: if not self.quiet_level & QuietLevels.ENCODING: - print("WARNING: Decoding file using encoding=%s " - "failed: %s" % (encoding, filename,), - file=sys.stderr) + print( + "WARNING: Decoding file using encoding=%s " + "failed: %s" + % ( + encoding, + filename, + ), + file=sys.stderr, + ) else: break else: - raise Exception('Unknown encoding') + raise Exception("Unknown encoding") return lines, encoding + # -.-:-.-:-.-:-.:-.-:-.-:-.-:-.-:-.:-.-:-.-:-.-:-.-:-.:-.-:- # If someday this breaks, we can just switch to using RawTextHelpFormatter, # but it has the disadvantage of not wrapping our long lines. + class NewlineHelpFormatter(argparse.HelpFormatter): """Help formatter that preserves newlines and deals with lists.""" def _split_lines(self, text: str, width: int) -> List[str]: - parts = text.split('\n') + parts = text.split("\n") out = [] for part in parts: # Eventually we could allow others... - indent_start = '- ' + indent_start = "- " if part.startswith(indent_start): offset = len(indent_start) else: offset = 0 part = part[offset:] - part = self._whitespace_matcher.sub(' ', part).strip() + part = self._whitespace_matcher.sub(" ", part).strip() parts = textwrap.wrap(part, width - offset) - parts = [' ' * offset + p for p in parts] + parts = [" " * offset + p for p in parts] if offset: parts[0] = indent_start + parts[0][offset:] out.extend(parts) @@ -252,162 +311,248 @@ def _split_lines(self, text: str, width: int) -> List[str]: def parse_options( - args: Sequence[str] + args: Sequence[str], ) -> Tuple[argparse.Namespace, argparse.ArgumentParser, List[str]]: parser = argparse.ArgumentParser(formatter_class=NewlineHelpFormatter) parser.set_defaults(colors=sys.stdout.isatty()) - parser.add_argument('--version', action='version', version=VERSION) - - parser.add_argument('-d', '--disable-colors', - action='store_false', dest='colors', - help='disable colors, even when printing to terminal ' - '(always set for Windows)') - parser.add_argument('-c', '--enable-colors', - action='store_true', dest='colors', - help='enable colors, even when not printing to ' - 'terminal') - - parser.add_argument('-w', '--write-changes', - action='store_true', default=False, - help='write changes in place if possible') - - parser.add_argument('-D', '--dictionary', - action='append', - help='custom dictionary file that contains spelling ' - 'corrections. If this flag is not specified or ' - 'equals "-" then the default dictionary is used. ' - 'This option can be specified multiple times.') - builtin_opts = '\n- '.join([''] + [ - '%r %s' % (d[0], d[1]) for d in _builtin_dictionaries]) - parser.add_argument('--builtin', - dest='builtin', default=_builtin_default, - metavar='BUILTIN-LIST', - help='comma-separated list of builtin dictionaries ' - 'to include (when "-D -" or no "-D" is passed). ' - 'Current options are:' + builtin_opts + '\n' - 'The default is %(default)r.') - parser.add_argument('--ignore-regex', - action='store', type=str, - help='regular expression that is used to find ' - 'patterns to ignore by treating as whitespace. ' - 'When writing regular expressions, consider ' - 'ensuring there are boundary non-word chars, ' - 'e.g., "\\bmatch\\b". Defaults to ' - 'empty/disabled.') - parser.add_argument('-I', '--ignore-words', - action='append', metavar='FILE', - help='file that contains words that will be ignored ' - 'by codespell. File must contain 1 word per line.' - ' Words are case sensitive based on how they are ' - 'written in the dictionary file') - parser.add_argument('-L', '--ignore-words-list', - action='append', metavar='WORDS', - help='comma separated list of words to be ignored ' - 'by codespell. Words are case sensitive based on ' - 'how they are written in the dictionary file') - parser.add_argument('--uri-ignore-words-list', - action='append', metavar='WORDS', - help='comma separated list of words to be ignored ' - 'by codespell in URIs and emails only. Words are ' - 'case sensitive based on how they are written in ' - 'the dictionary file. If set to "*", all ' - 'misspelling in URIs and emails will be ignored.') - parser.add_argument('-r', '--regex', - action='store', type=str, - help='regular expression that is used to find words. ' - 'By default any alphanumeric character, the ' - 'underscore, the hyphen, and the apostrophe is ' - 'used to build words. This option cannot be ' - 'specified together with --write-changes.') - parser.add_argument('--uri-regex', - action='store', type=str, - help='regular expression that is used to find URIs ' - 'and emails. A default expression is provided.') - parser.add_argument('-s', '--summary', - action='store_true', default=False, - help='print summary of fixes') - - parser.add_argument('--count', - action='store_true', default=False, - help='print the number of errors as the last line of ' - 'stderr') - - parser.add_argument('-S', '--skip', - action='append', - help='comma-separated list of files to skip. It ' - 'accepts globs as well. E.g.: if you want ' - 'codespell to skip .eps and .txt files, ' - 'you\'d give "*.eps,*.txt" to this option.') - - parser.add_argument('-x', '--exclude-file', type=str, metavar='FILE', - help='ignore whole lines that match those ' - 'in the file FILE. The lines in FILE ' - 'should match the to-be-excluded lines exactly') - - parser.add_argument('-i', '--interactive', - action='store', type=int, default=0, - help='set interactive mode when writing changes:\n' - '- 0: no interactivity.\n' - '- 1: ask for confirmation.\n' - '- 2: ask user to choose one fix when more than one is available.\n' # noqa: E501 - '- 3: both 1 and 2') - - parser.add_argument('-q', '--quiet-level', - action='store', type=int, default=2, - help='bitmask that allows suppressing messages:\n' - '- 0: print all messages.\n' - '- 1: disable warnings about wrong encoding.\n' - '- 2: disable warnings about binary files.\n' - '- 4: omit warnings about automatic fixes that were disabled in the dictionary.\n' # noqa: E501 - '- 8: don\'t print anything for non-automatic fixes.\n' # noqa: E501 - '- 16: don\'t print the list of fixed files.\n' - 'As usual with bitmasks, these levels can be ' - 'combined; e.g. use 3 for levels 1+2, 7 for ' - '1+2+4, 23 for 1+2+4+16, etc. ' - 'The default mask is %(default)s.') - - parser.add_argument('-e', '--hard-encoding-detection', - action='store_true', default=False, - help='use chardet to detect the encoding of each ' - 'file. This can slow down codespell, but is more ' - 'reliable in detecting encodings other than ' - 'utf-8, iso8859-1, and ascii.') - - parser.add_argument('-f', '--check-filenames', - action='store_true', default=False, - help='check file names as well') - - parser.add_argument('-H', '--check-hidden', - action='store_true', default=False, - help='check hidden files and directories (those ' - 'starting with ".") as well.') - parser.add_argument('-A', '--after-context', type=int, metavar='LINES', - help='print LINES of trailing context') - parser.add_argument('-B', '--before-context', type=int, metavar='LINES', - help='print LINES of leading context') - parser.add_argument('-C', '--context', type=int, metavar='LINES', - help='print LINES of surrounding context') - parser.add_argument('--config', type=str, - help='path to config file.') - parser.add_argument('--toml', type=str, - help='path to a pyproject.toml file.') - parser.add_argument('files', nargs='*', - help='files or directories to check') + parser.add_argument("--version", action="version", version=VERSION) + + parser.add_argument( + "-d", + "--disable-colors", + action="store_false", + dest="colors", + help="disable colors, even when printing to terminal " + "(always set for Windows)", + ) + parser.add_argument( + "-c", + "--enable-colors", + action="store_true", + dest="colors", + help="enable colors, even when not printing to terminal", + ) + + parser.add_argument( + "-w", + "--write-changes", + action="store_true", + default=False, + help="write changes in place if possible", + ) + + parser.add_argument( + "-D", + "--dictionary", + action="append", + help="custom dictionary file that contains spelling " + "corrections. If this flag is not specified or " + 'equals "-" then the default dictionary is used. ' + "This option can be specified multiple times.", + ) + builtin_opts = "\n- ".join( + [""] + ["%r %s" % (d[0], d[1]) for d in _builtin_dictionaries] + ) + parser.add_argument( + "--builtin", + dest="builtin", + default=_builtin_default, + metavar="BUILTIN-LIST", + help="comma-separated list of builtin dictionaries " + 'to include (when "-D -" or no "-D" is passed). ' + "Current options are:" + builtin_opts + "\n" + "The default is %(default)r.", + ) + parser.add_argument( + "--ignore-regex", + action="store", + type=str, + help="regular expression that is used to find " + "patterns to ignore by treating as whitespace. " + "When writing regular expressions, consider " + "ensuring there are boundary non-word chars, " + 'e.g., "\\bmatch\\b". Defaults to ' + "empty/disabled.", + ) + parser.add_argument( + "-I", + "--ignore-words", + action="append", + metavar="FILE", + help="file that contains words that will be ignored " + "by codespell. File must contain 1 word per line." + " Words are case sensitive based on how they are " + "written in the dictionary file", + ) + parser.add_argument( + "-L", + "--ignore-words-list", + action="append", + metavar="WORDS", + help="comma separated list of words to be ignored " + "by codespell. Words are case sensitive based on " + "how they are written in the dictionary file", + ) + parser.add_argument( + "--uri-ignore-words-list", + action="append", + metavar="WORDS", + help="comma separated list of words to be ignored " + "by codespell in URIs and emails only. Words are " + "case sensitive based on how they are written in " + 'the dictionary file. If set to "*", all ' + "misspelling in URIs and emails will be ignored.", + ) + parser.add_argument( + "-r", + "--regex", + action="store", + type=str, + help="regular expression that is used to find words. " + "By default any alphanumeric character, the " + "underscore, the hyphen, and the apostrophe is " + "used to build words. This option cannot be " + "specified together with --write-changes.", + ) + parser.add_argument( + "--uri-regex", + action="store", + type=str, + help="regular expression that is used to find URIs " + "and emails. A default expression is provided.", + ) + parser.add_argument( + "-s", + "--summary", + action="store_true", + default=False, + help="print summary of fixes", + ) + + parser.add_argument( + "--count", + action="store_true", + default=False, + help="print the number of errors as the last line of stderr", + ) + + parser.add_argument( + "-S", + "--skip", + action="append", + help="comma-separated list of files to skip. It " + "accepts globs as well. E.g.: if you want " + "codespell to skip .eps and .txt files, " + 'you\'d give "*.eps,*.txt" to this option.', + ) + + parser.add_argument( + "-x", + "--exclude-file", + type=str, + metavar="FILE", + help="ignore whole lines that match those " + "in the file FILE. The lines in FILE " + "should match the to-be-excluded lines exactly", + ) + + parser.add_argument( + "-i", + "--interactive", + action="store", + type=int, + default=0, + help="set interactive mode when writing changes:\n" + "- 0: no interactivity.\n" + "- 1: ask for confirmation.\n" + "- 2: ask user to choose one fix when more than one is available.\n" # noqa: E501 + "- 3: both 1 and 2", + ) + + parser.add_argument( + "-q", + "--quiet-level", + action="store", + type=int, + default=2, + help="bitmask that allows suppressing messages:\n" + "- 0: print all messages.\n" + "- 1: disable warnings about wrong encoding.\n" + "- 2: disable warnings about binary files.\n" + "- 4: omit warnings about automatic fixes that were disabled in the dictionary.\n" # noqa: E501 + "- 8: don't print anything for non-automatic fixes.\n" # noqa: E501 + "- 16: don't print the list of fixed files.\n" + "As usual with bitmasks, these levels can be " + "combined; e.g. use 3 for levels 1+2, 7 for " + "1+2+4, 23 for 1+2+4+16, etc. " + "The default mask is %(default)s.", + ) + + parser.add_argument( + "-e", + "--hard-encoding-detection", + action="store_true", + default=False, + help="use chardet to detect the encoding of each " + "file. This can slow down codespell, but is more " + "reliable in detecting encodings other than " + "utf-8, iso8859-1, and ascii.", + ) + + parser.add_argument( + "-f", + "--check-filenames", + action="store_true", + default=False, + help="check file names as well", + ) + + parser.add_argument( + "-H", + "--check-hidden", + action="store_true", + default=False, + help="check hidden files and directories (those " 'starting with ".") as well.', + ) + parser.add_argument( + "-A", + "--after-context", + type=int, + metavar="LINES", + help="print LINES of trailing context", + ) + parser.add_argument( + "-B", + "--before-context", + type=int, + metavar="LINES", + help="print LINES of leading context", + ) + parser.add_argument( + "-C", + "--context", + type=int, + metavar="LINES", + help="print LINES of surrounding context", + ) + parser.add_argument("--config", type=str, help="path to config file.") + parser.add_argument("--toml", type=str, help="path to a pyproject.toml file.") + parser.add_argument("files", nargs="*", help="files or directories to check") # Parse command line options. options = parser.parse_args(list(args)) # Load config files and look for ``codespell`` options. - cfg_files = ['setup.cfg', '.codespellrc'] + cfg_files = ["setup.cfg", ".codespellrc"] if options.config: cfg_files.append(options.config) config = configparser.ConfigParser(interpolation=None) # Read toml before other config files. toml_files_errors = [] - if os.path.isfile('pyproject.toml'): - toml_files_errors.append(('pyproject.toml', False)) + if os.path.isfile("pyproject.toml"): + toml_files_errors.append(("pyproject.toml", False)) if options.toml: toml_files_errors.append((options.toml, True)) for toml_file, raise_error in toml_files_errors: @@ -416,12 +561,13 @@ def parse_options( except Exception as exc: if raise_error: raise ImportError( - f'tomli is required to read pyproject.toml but could not ' - f'be imported, got: {exc}') from None + f"tomli is required to read pyproject.toml but could not " + f"be imported, got: {exc}" + ) from None else: continue - with open(toml_file, 'rb') as f: - data = tomli.load(f).get('tool', {}) + with open(toml_file, "rb") as f: + data = tomli.load(f).get("tool", {}) config.read_dict(data) # Collect which config files are going to be used @@ -429,19 +575,19 @@ def parse_options( for cfg_file in cfg_files: _cfg = configparser.ConfigParser() _cfg.read(cfg_file) - if _cfg.has_section('codespell'): + if _cfg.has_section("codespell"): used_cfg_files.append(cfg_file) # Use config files config.read(cfg_files) - if config.has_section('codespell'): + if config.has_section("codespell"): # Build a "fake" argv list using option name and value. cfg_args = [] - for key in config['codespell']: + for key in config["codespell"]: # Add option as arg. cfg_args.append("--%s" % key) # If value is blank, skip. - val = config['codespell'][key] + val = config["codespell"][key] if val != "": cfg_args.append(val) @@ -452,7 +598,7 @@ def parse_options( options = parser.parse_args(list(args), namespace=options) if not options.files: - options.files.append('.') + options.files.append(".") return options, parser, used_cfg_files @@ -461,19 +607,19 @@ def parse_ignore_words_option(ignore_words_option: List[str]) -> Set[str]: ignore_words = set() if ignore_words_option: for comma_separated_words in ignore_words_option: - for word in comma_separated_words.split(','): + for word in comma_separated_words.split(","): ignore_words.add(word.strip()) return ignore_words def build_exclude_hashes(filename: str, exclude_lines: Set[str]) -> None: - with open(filename, encoding='utf-8') as f: + with open(filename, encoding="utf-8") as f: for line in f: exclude_lines.add(line) def build_ignore_words(filename: str, ignore_words: Set[str]) -> None: - with open(filename, encoding='utf-8') as f: + with open(filename, encoding="utf-8") as f: for line in f: ignore_words.add(line.strip()) @@ -483,9 +629,9 @@ def build_dict( misspellings: Dict[str, Misspelling], ignore_words: Set[str], ) -> None: - with open(filename, encoding='utf-8') as f: + with open(filename, encoding="utf-8") as f: for line in f: - [key, data] = line.split('->') + [key, data] = line.split("->") # TODO for now, convert both to lower. Someday we can maybe add # support for fixing caps. key = key.lower() @@ -493,17 +639,17 @@ def build_dict( if key in ignore_words: continue data = data.strip() - fix = data.rfind(',') + fix = data.rfind(",") if fix < 0: fix = True - reason = '' + reason = "" elif fix == (len(data) - 1): data = data[:fix] - reason = '' + reason = "" fix = False else: - reason = data[fix + 1:].strip() + reason = data[fix + 1 :].strip() data = data[:fix] fix = False @@ -513,19 +659,20 @@ def build_dict( def is_hidden(filename: str, check_hidden: bool) -> bool: bfilename = os.path.basename(filename) - return bfilename not in ('', '.', '..') and \ - (not check_hidden and bfilename[0] == '.') + return bfilename not in ("", ".", "..") and ( + not check_hidden and bfilename[0] == "." + ) def is_text_file(filename: str) -> bool: - with open(filename, mode='rb') as f: + with open(filename, mode="rb") as f: s = f.read(1024) - return b'\x00' not in s + return b"\x00" not in s def fix_case(word: str, fixword: str) -> str: if word == word.capitalize(): - return ', '.join(w.strip().capitalize() for w in fixword.split(',')) + return ", ".join(w.strip().capitalize() for w in fixword.split(",")) elif word == word.upper(): return fixword.upper() # they are both lower case @@ -543,32 +690,32 @@ def ask_for_word_fix( return misspelling.fix, fix_case(wrongword, misspelling.data) if misspelling.fix and interactivity & 1: - r = '' + r = "" fixword = fix_case(wrongword, misspelling.data) while not r: - print("%s\t%s ==> %s (Y/n) " % (line, wrongword, fixword), end='') + print("%s\t%s ==> %s (Y/n) " % (line, wrongword, fixword), end="") r = sys.stdin.readline().strip().upper() if not r: - r = 'Y' - if r not in ('Y', 'N'): + r = "Y" + if r not in ("Y", "N"): print("Say 'y' or 'n'") - r = '' + r = "" - if r == 'N': + if r == "N": misspelling.fix = False elif (interactivity & 2) and not misspelling.reason: # if it is not disabled, i.e. it just has more than one possible fix, # we ask the user which word to use - r = '' - opt = [w.strip() for w in misspelling.data.split(',')] + r = "" + opt = [w.strip() for w in misspelling.data.split(",")] while not r: - print("%s Choose an option (blank for none): " % line, end='') + print("%s Choose an option (blank for none): " % line, end="") for i, o in enumerate(opt): fixword = fix_case(wrongword, o) - print(" %d) %s" % (i, fixword), end='') - print(": ", end='') + print(" %d) %s" % (i, fixword), end="") + print(": ", end="") sys.stdout.flush() n = sys.stdin.readline().strip() @@ -596,7 +743,7 @@ def print_context( # context = (context_before, context_after) for i in range(index - context[0], index + context[1] + 1): if 0 <= i < len(lines): - print('%s %s' % ('>' if i == index else ':', lines[i].rstrip())) + print("%s %s" % (">" if i == index else ":", lines[i].rstrip())) def extract_words( @@ -605,7 +752,7 @@ def extract_words( ignore_word_regex: Optional[Pattern[str]], ) -> List[str]: if ignore_word_regex: - text = ignore_word_regex.sub(' ', text) + text = ignore_word_regex.sub(" ", text) return word_regex.findall(text) @@ -615,13 +762,12 @@ def apply_uri_ignore_words( word_regex: Pattern[str], ignore_word_regex: Optional[Pattern[str]], uri_regex: Pattern[str], - uri_ignore_words: Set[str] + uri_ignore_words: Set[str], ) -> None: if not uri_ignore_words: return for uri in re.findall(uri_regex, line): - for uri_word in extract_words(uri, word_regex, - ignore_word_regex): + for uri_word in extract_words(uri, word_regex, ignore_word_regex): if uri_word in uri_ignore_words: check_words.remove(uri_word) @@ -645,7 +791,7 @@ def parse_file( changed = False encoding = encodings[0] # if not defined, use UTF-8 - if filename == '-': + if filename == "-": f = sys.stdin lines = f.readlines() else: @@ -667,21 +813,28 @@ def parse_file( if misspellings[lword].reason: if options.quiet_level & QuietLevels.DISABLED_FIXES: continue - creason = " | %s%s%s" % (colors.FILE, - misspellings[lword].reason, - colors.DISABLE) + creason = " | %s%s%s" % ( + colors.FILE, + misspellings[lword].reason, + colors.DISABLE, + ) else: if options.quiet_level & QuietLevels.NON_AUTOMATIC_FIXES: continue - creason = '' + creason = "" bad_count += 1 - print("%(FILENAME)s: %(WRONGWORD)s" - " ==> %(RIGHTWORD)s%(REASON)s" - % {'FILENAME': cfilename, - 'WRONGWORD': cwrongword, - 'RIGHTWORD': crightword, 'REASON': creason}) + print( + "%(FILENAME)s: %(WRONGWORD)s" + " ==> %(RIGHTWORD)s%(REASON)s" + % { + "FILENAME": cfilename, + "WRONGWORD": cwrongword, + "RIGHTWORD": crightword, + "REASON": creason, + } + ) # ignore irregular files if not os.path.isfile(filename): @@ -690,8 +843,7 @@ def parse_file( try: text = is_text_file(filename) except PermissionError as e: - print("WARNING: %s: %s" % (e.strerror, filename), - file=sys.stderr) + print("WARNING: %s: %s" % (e.strerror, filename), file=sys.stderr) return bad_count except OSError: return bad_count @@ -717,12 +869,17 @@ def parse_file( # This ensures that if a URI ignore word occurs both inside a URI and # outside, it will still be a spelling error. if "*" in uri_ignore_words: - line = uri_regex.sub(' ', line) + line = uri_regex.sub(" ", line) check_words = extract_words(line, word_regex, ignore_word_regex) if "*" not in uri_ignore_words: - apply_uri_ignore_words(check_words, line, word_regex, - ignore_word_regex, uri_regex, - uri_ignore_words) + apply_uri_ignore_words( + check_words, + line, + word_regex, + ignore_word_regex, + uri_regex, + uri_ignore_words, + ) for word in check_words: lword = word.lower() @@ -736,8 +893,8 @@ def parse_file( context_shown = True print_context(lines, i, context) fix, fixword = ask_for_word_fix( - lines[i], word, misspellings[lword], - options.interactive) + lines[i], word, misspellings[lword], options.interactive + ) asked_for.add(lword) if summary and fix: @@ -748,13 +905,16 @@ def parse_file( if options.write_changes and fix: changed = True - lines[i] = re.sub(r'\b%s\b' % word, fixword, lines[i]) + lines[i] = re.sub(r"\b%s\b" % word, fixword, lines[i]) fixed_words.add(word) continue # otherwise warning was explicitly set by interactive mode - if (options.interactive & 2 and not fix and not - misspellings[lword].reason): + if ( + options.interactive & 2 + and not fix + and not misspellings[lword].reason + ): continue cfilename = "%s%s%s" % (colors.FILE, filename, colors.DISABLE) @@ -766,14 +926,16 @@ def parse_file( if options.quiet_level & QuietLevels.DISABLED_FIXES: continue - creason = " | %s%s%s" % (colors.FILE, - misspellings[lword].reason, - colors.DISABLE) + creason = " | %s%s%s" % ( + colors.FILE, + misspellings[lword].reason, + colors.DISABLE, + ) else: if options.quiet_level & QuietLevels.NON_AUTOMATIC_FIXES: continue - creason = '' + creason = "" # If we get to this point (uncorrected error) we should change # our bad_count and thus return value @@ -781,30 +943,43 @@ def parse_file( if (not context_shown) and (context is not None): print_context(lines, i, context) - if filename != '-': - print("%(FILENAME)s:%(LINE)s: %(WRONGWORD)s " - "==> %(RIGHTWORD)s%(REASON)s" - % {'FILENAME': cfilename, 'LINE': cline, - 'WRONGWORD': cwrongword, - 'RIGHTWORD': crightword, 'REASON': creason}) + if filename != "-": + print( + "%(FILENAME)s:%(LINE)s: %(WRONGWORD)s " + "==> %(RIGHTWORD)s%(REASON)s" + % { + "FILENAME": cfilename, + "LINE": cline, + "WRONGWORD": cwrongword, + "RIGHTWORD": crightword, + "REASON": creason, + } + ) else: - print("%(LINE)s: %(STRLINE)s\n\t%(WRONGWORD)s " - "==> %(RIGHTWORD)s%(REASON)s" - % {'LINE': cline, 'STRLINE': line.strip(), - 'WRONGWORD': cwrongword, - 'RIGHTWORD': crightword, 'REASON': creason}) + print( + "%(LINE)s: %(STRLINE)s\n\t%(WRONGWORD)s " + "==> %(RIGHTWORD)s%(REASON)s" + % { + "LINE": cline, + "STRLINE": line.strip(), + "WRONGWORD": cwrongword, + "RIGHTWORD": crightword, + "REASON": creason, + } + ) if changed: - if filename == '-': + if filename == "-": print("---") for line in lines: - print(line, end='') + print(line, end="") else: if not options.quiet_level & QuietLevels.FIXES: - print("%sFIXED:%s %s" - % (colors.FWORD, colors.DISABLE, filename), - file=sys.stderr) - with open(filename, 'w', encoding=encoding, newline='') as f: + print( + "%sFIXED:%s %s" % (colors.FWORD, colors.DISABLE, filename), + file=sys.stderr, + ) + with open(filename, "w", encoding=encoding, newline="") as f: f.writelines(lines) return bad_count @@ -820,21 +995,22 @@ def main(*args: str) -> int: # Report used config files if len(used_cfg_files) > 0: - print('Used config files:') + print("Used config files:") for ifile, cfg_file in enumerate(used_cfg_files, start=1): - print(' %i: %s' % (ifile, cfg_file)) + print(" %i: %s" % (ifile, cfg_file)) if options.regex and options.write_changes: - print("ERROR: --write-changes cannot be used together with " - "--regex", file=sys.stderr) + print( + "ERROR: --write-changes cannot be used together with --regex", + file=sys.stderr, + ) parser.print_help() return EX_USAGE word_regex = options.regex or word_regex_def try: word_regex = re.compile(word_regex) except re.error as err: - print("ERROR: invalid --regex \"%s\" (%s)" % - (word_regex, err), file=sys.stderr) + print('ERROR: invalid --regex "%s" (%s)' % (word_regex, err), file=sys.stderr) parser.print_help() return EX_USAGE @@ -842,8 +1018,10 @@ def main(*args: str) -> int: try: ignore_word_regex = re.compile(options.ignore_regex) except re.error as err: - print("ERROR: invalid --ignore-regex \"%s\" (%s)" % - (options.ignore_regex, err), file=sys.stderr) + print( + 'ERROR: invalid --ignore-regex "%s" (%s)' % (options.ignore_regex, err), + file=sys.stderr, + ) parser.print_help() return EX_USAGE else: @@ -853,8 +1031,10 @@ def main(*args: str) -> int: ignore_words = parse_ignore_words_option(options.ignore_words_list) for ignore_words_file in ignore_words_files: if not os.path.isfile(ignore_words_file): - print("ERROR: cannot find ignore-words file: %s" % - ignore_words_file, file=sys.stderr) + print( + "ERROR: cannot find ignore-words file: %s" % ignore_words_file, + file=sys.stderr, + ) parser.print_help() return EX_USAGE build_ignore_words(ignore_words_file, ignore_words) @@ -863,8 +1043,9 @@ def main(*args: str) -> int: try: uri_regex = re.compile(uri_regex) except re.error as err: - print("ERROR: invalid --uri-regex \"%s\" (%s)" % - (uri_regex, err), file=sys.stderr) + print( + 'ERROR: invalid --uri-regex "%s" (%s)' % (uri_regex, err), file=sys.stderr + ) parser.print_help() return EX_USAGE uri_ignore_words = parse_ignore_words_option(options.uri_ignore_words_list) @@ -872,28 +1053,31 @@ def main(*args: str) -> int: if options.dictionary: dictionaries = options.dictionary else: - dictionaries = ['-'] + dictionaries = ["-"] use_dictionaries = [] for dictionary in dictionaries: if dictionary == "-": # figure out which builtin dictionaries to use - use = sorted(set(options.builtin.split(','))) + use = sorted(set(options.builtin.split(","))) for u in use: for builtin in _builtin_dictionaries: if builtin[0] == u: use_dictionaries.append( - os.path.join(_data_root, 'dictionary%s.txt' - % (builtin[2],))) + os.path.join(_data_root, "dictionary%s.txt" % (builtin[2],)) + ) break else: - print("ERROR: Unknown builtin dictionary: %s" % (u,), - file=sys.stderr) + print( + "ERROR: Unknown builtin dictionary: %s" % (u,), file=sys.stderr + ) parser.print_help() return EX_USAGE else: if not os.path.isfile(dictionary): - print("ERROR: cannot find dictionary file: %s" % dictionary, - file=sys.stderr) + print( + "ERROR: cannot find dictionary file: %s" % dictionary, + file=sys.stderr, + ) parser.print_help() return EX_USAGE use_dictionaries.append(dictionary) @@ -901,7 +1085,7 @@ def main(*args: str) -> int: for dictionary in use_dictionaries: build_dict(dictionary, misspellings, ignore_words) colors = TermColors() - if not options.colors or sys.platform == 'win32': + if not options.colors or sys.platform == "win32": colors.disable() if options.summary: @@ -911,17 +1095,17 @@ def main(*args: str) -> int: context = None if options.context is not None: - if (options.before_context is not None) or \ - (options.after_context is not None): - print("ERROR: --context/-C cannot be used together with " - "--context-before/-B or --context-after/-A", - file=sys.stderr) + if (options.before_context is not None) or (options.after_context is not None): + print( + "ERROR: --context/-C cannot be used together with " + "--context-before/-B or --context-after/-A", + file=sys.stderr, + ) parser.print_help() return EX_USAGE context_both = max(0, options.context) context = (context_both, context_both) - elif (options.before_context is not None) or \ - (options.after_context is not None): + elif (options.before_context is not None) or (options.after_context is not None): context_before = 0 context_after = 0 if options.before_context is not None: @@ -934,16 +1118,17 @@ def main(*args: str) -> int: if options.exclude_file: build_exclude_hashes(options.exclude_file, exclude_lines) - file_opener = FileOpener(options.hard_encoding_detection, - options.quiet_level) + file_opener = FileOpener(options.hard_encoding_detection, options.quiet_level) glob_match = GlobMatch(options.skip) try: glob_match.match("/random/path") # does not need a real path except re.error: - print("ERROR: --skip/-S has been fed an invalid glob, " - "try escaping special characters", - file=sys.stderr) + print( + "ERROR: --skip/-S has been fed an invalid glob, " + "try escaping special characters", + file=sys.stderr, + ) return EX_USAGE bad_count = 0 @@ -969,18 +1154,38 @@ def main(*args: str) -> int: if glob_match.match(fname): # skip paths continue bad_count += parse_file( - fname, colors, summary, misspellings, exclude_lines, - file_opener, word_regex, ignore_word_regex, uri_regex, - uri_ignore_words, context, options) + fname, + colors, + summary, + misspellings, + exclude_lines, + file_opener, + word_regex, + ignore_word_regex, + uri_regex, + uri_ignore_words, + context, + options, + ) # skip (relative) directories dirs[:] = [dir_ for dir_ in dirs if not glob_match.match(dir_)] elif not glob_match.match(filename): # skip files bad_count += parse_file( - filename, colors, summary, misspellings, exclude_lines, - file_opener, word_regex, ignore_word_regex, uri_regex, - uri_ignore_words, context, options) + filename, + colors, + summary, + misspellings, + exclude_lines, + file_opener, + word_regex, + ignore_word_regex, + uri_regex, + uri_ignore_words, + context, + options, + ) if summary: print("\n-------8<-------\nSUMMARY:") diff --git a/codespell_lib/tests/test_basic.py b/codespell_lib/tests/test_basic.py index 892401dc3b..4a04e2b395 100644 --- a/codespell_lib/tests/test_basic.py +++ b/codespell_lib/tests/test_basic.py @@ -33,19 +33,19 @@ def main( std: bool = False, ) -> Union[int, Tuple[int, str, str]]: if count: - args = ('--count',) + args + args = ("--count",) + args code = cs_.main(*args) frame = inspect.currentframe() assert frame is not None frame = frame.f_back assert frame is not None - capsys = frame.f_locals['capsys'] + capsys = frame.f_locals["capsys"] stdout, stderr = capsys.readouterr() assert code in (EX_OK, EX_USAGE, EX_DATAERR) if code == EX_DATAERR: # have some misspellings - code = int(stderr.split('\n')[-2]) + code = int(stderr.split("\n")[-2]) elif code == EX_OK and count: - code = int(stderr.split('\n')[-2]) + code = int(stderr.split("\n")[-2]) assert code == 0 if std: return (code, stdout, stderr) @@ -61,11 +61,11 @@ def run_codespell( cwd: Optional[str] = None, ) -> int: """Run codespell.""" - args = ('--count',) + args + args = ("--count",) + args proc = subprocess.run( - ['codespell'] + list(args), cwd=cwd, - capture_output=True, encoding='utf-8') - count = int(proc.stderr.split('\n')[-2]) + ["codespell"] + list(args), cwd=cwd, capture_output=True, encoding="utf-8" + ) + count = int(proc.stderr.split("\n")[-2]) return count @@ -74,8 +74,8 @@ def test_command(tmpdir: pytest.TempPathFactory) -> None: # With no arguments does "." d = str(tmpdir) assert run_codespell(cwd=d) == 0 - with open(op.join(d, 'bad.txt'), 'w') as f: - f.write('abandonned\nAbandonned\nABANDONNED\nAbAnDoNnEd') + with open(op.join(d, "bad.txt"), "w") as f: + f.write("abandonned\nAbandonned\nABANDONNED\nAbAnDoNnEd") assert run_codespell(cwd=d) == 4 @@ -84,67 +84,72 @@ def test_basic( capsys: pytest.CaptureFixture[str], ) -> None: """Test some basic functionality.""" - assert cs.main('_does_not_exist_') == 0 - fname = op.join(str(tmpdir), 'tmp') - with open(fname, 'w') as f: + assert cs.main("_does_not_exist_") == 0 + fname = op.join(str(tmpdir), "tmp") + with open(fname, "w") as f: pass - result = cs.main('-D', 'foo', f.name, std=True) + result = cs.main("-D", "foo", f.name, std=True) assert isinstance(result, tuple) code, _, stderr = result - assert code == EX_USAGE, 'missing dictionary' - assert 'cannot find dictionary' in stderr - assert cs.main(fname) == 0, 'empty file' - with open(fname, 'a') as f: - f.write('this is a test file\n') - assert cs.main(fname) == 0, 'good' - with open(fname, 'a') as f: - f.write('abandonned\n') - assert cs.main(fname) == 1, 'bad' - with open(fname, 'a') as f: - f.write('abandonned\n') - assert cs.main(fname) == 2, 'worse' - with open(fname, 'a') as f: - f.write('tim\ngonna\n') - assert cs.main(fname) == 2, 'with a name' - assert cs.main('--builtin', 'clear,rare,names,informal', fname) == 4 - result = cs.main(fname, '--builtin', 'foo', std=True) + assert code == EX_USAGE, "missing dictionary" + assert "cannot find dictionary" in stderr + assert cs.main(fname) == 0, "empty file" + with open(fname, "a") as f: + f.write("this is a test file\n") + assert cs.main(fname) == 0, "good" + with open(fname, "a") as f: + f.write("abandonned\n") + assert cs.main(fname) == 1, "bad" + with open(fname, "a") as f: + f.write("abandonned\n") + assert cs.main(fname) == 2, "worse" + with open(fname, "a") as f: + f.write("tim\ngonna\n") + assert cs.main(fname) == 2, "with a name" + assert cs.main("--builtin", "clear,rare,names,informal", fname) == 4 + result = cs.main(fname, "--builtin", "foo", std=True) assert isinstance(result, tuple) code, _, stderr = result assert code == EX_USAGE # bad type - assert 'Unknown builtin dictionary' in stderr + assert "Unknown builtin dictionary" in stderr d = str(tmpdir) - result = cs.main(fname, '-D', op.join(d, 'foo'), std=True) + result = cs.main(fname, "-D", op.join(d, "foo"), std=True) assert isinstance(result, tuple) code, _, stderr = result assert code == EX_USAGE # bad dict - assert 'cannot find dictionary' in stderr + assert "cannot find dictionary" in stderr os.remove(fname) - with open(op.join(d, 'bad.txt'), 'w', newline='') as f: - f.write('abandonned\nAbandonned\nABANDONNED\nAbAnDoNnEd\nabandonned\rAbandonned\r\nABANDONNED \n AbAnDoNnEd') # noqa: E501 + with open(op.join(d, "bad.txt"), "w", newline="") as f: + f.write( + "abandonned\nAbandonned\nABANDONNED\nAbAnDoNnEd\nabandonned\rAbandonned\r\nABANDONNED \n AbAnDoNnEd" # noqa: E501 + ) assert cs.main(d) == 8 - result = cs.main('-w', d, std=True) + result = cs.main("-w", d, std=True) assert isinstance(result, tuple) code, _, stderr = result assert code == 0 - assert 'FIXED:' in stderr - with open(op.join(d, 'bad.txt'), newline='') as f: + assert "FIXED:" in stderr + with open(op.join(d, "bad.txt"), newline="") as f: new_content = f.read() assert cs.main(d) == 0 - assert new_content == 'abandoned\nAbandoned\nABANDONED\nabandoned\nabandoned\rAbandoned\r\nABANDONED \n abandoned' # noqa: E501 + assert ( + new_content + == "abandoned\nAbandoned\nABANDONED\nabandoned\nabandoned\rAbandoned\r\nABANDONED \n abandoned" # noqa: E501 + ) - with open(op.join(d, 'bad.txt'), 'w') as f: - f.write('abandonned abandonned\n') + with open(op.join(d, "bad.txt"), "w") as f: + f.write("abandonned abandonned\n") assert cs.main(d) == 2 - result = cs.main('-q', '16', '-w', d, count=False, std=True) + result = cs.main("-q", "16", "-w", d, count=False, std=True) assert isinstance(result, tuple) code, stdout, stderr = result assert code == 0 - assert stdout == stderr == '' + assert stdout == stderr == "" assert cs.main(d) == 0 # empty directory - os.mkdir(op.join(d, 'empty')) + os.mkdir(op.join(d, "empty")) assert cs.main(d) == 0 @@ -153,44 +158,43 @@ def test_bad_glob( capsys: pytest.CaptureFixture[str], ) -> None: # disregard invalid globs, properly handle escaped globs - g = op.join(str(tmpdir), 'glob') + g = op.join(str(tmpdir), "glob") os.mkdir(g) - fname = op.join(g, '[b-a].txt') - with open(fname, 'a') as f: - f.write('abandonned\n') + fname = op.join(g, "[b-a].txt") + with open(fname, "a") as f: + f.write("abandonned\n") assert cs.main(g) == 1 # bad glob is invalid - result = cs.main('--skip', '[b-a].txt', g, std=True) + result = cs.main("--skip", "[b-a].txt", g, std=True) assert isinstance(result, tuple) code, _, stderr = result if sys.hexversion < 0x030A05F0: # Python < 3.10.5 raises re.error - assert code == EX_USAGE, 'invalid glob' - assert 'invalid glob' in stderr + assert code == EX_USAGE, "invalid glob" + assert "invalid glob" in stderr else: # Python >= 3.10.5 does not match assert code == 1 # properly escaped glob is valid, and matches glob-like file name - assert cs.main('--skip', '[[]b-a[]].txt', g) == 0 + assert cs.main("--skip", "[[]b-a[]].txt", g) == 0 -@pytest.mark.skipif( - not sys.platform == 'linux', reason='Only supported on Linux') +@pytest.mark.skipif(not sys.platform == "linux", reason="Only supported on Linux") def test_permission_error( tmp_path: Path, capsys: pytest.CaptureFixture[str], ) -> None: """Test permission error handling.""" d = tmp_path - with open(d / 'unreadable.txt', 'w') as f: - f.write('abandonned\n') + with open(d / "unreadable.txt", "w") as f: + f.write("abandonned\n") result = cs.main(f.name, std=True) assert isinstance(result, tuple) code, _, stderr = result - assert 'WARNING:' not in stderr + assert "WARNING:" not in stderr os.chmod(f.name, 0o000) result = cs.main(f.name, std=True) assert isinstance(result, tuple) code, _, stderr = result - assert 'WARNING:' in stderr + assert "WARNING:" in stderr def test_interactivity( @@ -200,68 +204,68 @@ def test_interactivity( """Test interaction""" # Windows can't read a currently-opened file, so here we use # NamedTemporaryFile just to get a good name - with open(op.join(str(tmpdir), 'tmp'), 'w') as f: + with open(op.join(str(tmpdir), "tmp"), "w") as f: pass try: - assert cs.main(f.name) == 0, 'empty file' - with open(f.name, 'w') as f: - f.write('abandonned\n') - assert cs.main('-i', '-1', f.name) == 1, 'bad' - with FakeStdin('y\n'): - assert cs.main('-i', '3', f.name) == 1 - with FakeStdin('n\n'): - result = cs.main('-w', '-i', '3', f.name, std=True) + assert cs.main(f.name) == 0, "empty file" + with open(f.name, "w") as f: + f.write("abandonned\n") + assert cs.main("-i", "-1", f.name) == 1, "bad" + with FakeStdin("y\n"): + assert cs.main("-i", "3", f.name) == 1 + with FakeStdin("n\n"): + result = cs.main("-w", "-i", "3", f.name, std=True) assert isinstance(result, tuple) code, stdout, _ = result assert code == 0 - assert '==>' in stdout - with FakeStdin('x\ny\n'): - assert cs.main('-w', '-i', '3', f.name) == 0 + assert "==>" in stdout + with FakeStdin("x\ny\n"): + assert cs.main("-w", "-i", "3", f.name) == 0 assert cs.main(f.name) == 0 finally: os.remove(f.name) # New example - with open(op.join(str(tmpdir), 'tmp2'), 'w') as f: + with open(op.join(str(tmpdir), "tmp2"), "w") as f: pass try: - with open(f.name, 'w') as f: - f.write('abandonned\n') + with open(f.name, "w") as f: + f.write("abandonned\n") assert cs.main(f.name) == 1 - with FakeStdin(' '): # blank input -> Y - assert cs.main('-w', '-i', '3', f.name) == 0 + with FakeStdin(" "): # blank input -> Y + assert cs.main("-w", "-i", "3", f.name) == 0 assert cs.main(f.name) == 0 finally: os.remove(f.name) # multiple options - with open(op.join(str(tmpdir), 'tmp3'), 'w') as f: + with open(op.join(str(tmpdir), "tmp3"), "w") as f: pass try: - with open(f.name, 'w') as f: - f.write('ackward\n') + with open(f.name, "w") as f: + f.write("ackward\n") assert cs.main(f.name) == 1 - with FakeStdin(' \n'): # blank input -> nothing - assert cs.main('-w', '-i', '3', f.name) == 0 + with FakeStdin(" \n"): # blank input -> nothing + assert cs.main("-w", "-i", "3", f.name) == 0 assert cs.main(f.name) == 1 - with FakeStdin('0\n'): # blank input -> nothing - assert cs.main('-w', '-i', '3', f.name) == 0 + with FakeStdin("0\n"): # blank input -> nothing + assert cs.main("-w", "-i", "3", f.name) == 0 assert cs.main(f.name) == 0 with open(f.name) as f_read: - assert f_read.read() == 'awkward\n' - with open(f.name, 'w') as f: - f.write('ackward\n') + assert f_read.read() == "awkward\n" + with open(f.name, "w") as f: + f.write("ackward\n") assert cs.main(f.name) == 1 - with FakeStdin('x\n1\n'): # blank input -> nothing - result = cs.main('-w', '-i', '3', f.name, std=True) + with FakeStdin("x\n1\n"): # blank input -> nothing + result = cs.main("-w", "-i", "3", f.name, std=True) assert isinstance(result, tuple) code, stdout, _ = result assert code == 0 - assert 'a valid option' in stdout + assert "a valid option" in stdout assert cs.main(f.name) == 0 with open(f.name) as f: - assert f.read() == 'backward\n' + assert f.read() == "backward\n" finally: os.remove(f.name) @@ -271,30 +275,30 @@ def test_summary( capsys: pytest.CaptureFixture[str], ) -> None: """Test summary functionality.""" - with open(op.join(str(tmpdir), 'tmp'), 'w') as f: + with open(op.join(str(tmpdir), "tmp"), "w") as f: pass result = cs.main(f.name, std=True, count=False) assert isinstance(result, tuple) code, stdout, stderr = result assert code == 0 - assert stdout == stderr == '', 'no output' - result = cs.main(f.name, '--summary', std=True) + assert stdout == stderr == "", "no output" + result = cs.main(f.name, "--summary", std=True) assert isinstance(result, tuple) code, stdout, stderr = result assert code == 0 - assert stderr == '0\n' - assert 'SUMMARY' in stdout - assert len(stdout.split('\n')) == 5 - with open(f.name, 'w') as f: - f.write('abandonned\nabandonned') + assert stderr == "0\n" + assert "SUMMARY" in stdout + assert len(stdout.split("\n")) == 5 + with open(f.name, "w") as f: + f.write("abandonned\nabandonned") assert code == 0 - result = cs.main(f.name, '--summary', std=True) + result = cs.main(f.name, "--summary", std=True) assert isinstance(result, tuple) code, stdout, stderr = result - assert stderr == '2\n' - assert 'SUMMARY' in stdout - assert len(stdout.split('\n')) == 7 - assert 'abandonned' in stdout.split()[-2] + assert stderr == "2\n" + assert "SUMMARY" in stdout + assert len(stdout.split("\n")) == 7 + assert "abandonned" in stdout.split()[-2] def test_ignore_dictionary( @@ -303,13 +307,13 @@ def test_ignore_dictionary( ) -> None: """Test ignore dictionary functionality.""" d = str(tmpdir) - with open(op.join(d, 'bad.txt'), 'w') as f: - f.write('1 abandonned 1\n2 abandonned 2\nabondon\n') + with open(op.join(d, "bad.txt"), "w") as f: + f.write("1 abandonned 1\n2 abandonned 2\nabondon\n") bad_name = f.name assert cs.main(bad_name) == 3 - with open(op.join(d, 'ignore.txt'), 'w') as f: - f.write('abandonned\n') - assert cs.main('-I', f.name, bad_name) == 1 + with open(op.join(d, "ignore.txt"), "w") as f: + f.write("abandonned\n") + assert cs.main("-I", f.name, bad_name) == 1 def test_ignore_word_list( @@ -318,10 +322,10 @@ def test_ignore_word_list( ) -> None: """Test ignore word list functionality.""" d = str(tmpdir) - with open(op.join(d, 'bad.txt'), 'w') as f: - f.write('abandonned\nabondon\nabilty\n') + with open(op.join(d, "bad.txt"), "w") as f: + f.write("abandonned\nabondon\nabilty\n") assert cs.main(d) == 3 - assert cs.main('-Labandonned,someword', '-Labilty', d) == 1 + assert cs.main("-Labandonned,someword", "-Labilty", d) == 1 def test_custom_regex( @@ -330,15 +334,15 @@ def test_custom_regex( ) -> None: """Test custom word regex.""" d = str(tmpdir) - with open(op.join(d, 'bad.txt'), 'w') as f: - f.write('abandonned_abondon\n') + with open(op.join(d, "bad.txt"), "w") as f: + f.write("abandonned_abondon\n") assert cs.main(d) == 0 - assert cs.main('-r', "[a-z]+", d) == 2 - result = cs.main('-r', '[a-z]+', '--write-changes', d, std=True) + assert cs.main("-r", "[a-z]+", d) == 2 + result = cs.main("-r", "[a-z]+", "--write-changes", d, std=True) assert isinstance(result, tuple) code, _, stderr = result assert code == EX_USAGE - assert 'ERROR:' in stderr + assert "ERROR:" in stderr def test_exclude_file( @@ -347,14 +351,14 @@ def test_exclude_file( ) -> None: """Test exclude file functionality.""" d = str(tmpdir) - with open(op.join(d, 'bad.txt'), 'wb') as f: - f.write(b'1 abandonned 1\n2 abandonned 2\n') + with open(op.join(d, "bad.txt"), "wb") as f: + f.write(b"1 abandonned 1\n2 abandonned 2\n") bad_name = f.name assert cs.main(bad_name) == 2 - with open(op.join(d, 'tmp.txt'), 'wb') as f: - f.write(b'1 abandonned 1\n') + with open(op.join(d, "tmp.txt"), "wb") as f: + f.write(b"1 abandonned 1\n") assert cs.main(bad_name) == 2 - assert cs.main('-x', f.name, bad_name) == 1 + assert cs.main("-x", f.name, bad_name) == 1 def test_encoding( @@ -363,48 +367,48 @@ def test_encoding( ) -> None: """Test encoding handling.""" # Some simple Unicode things - with open(op.join(str(tmpdir), 'tmp'), 'wb') as f: + with open(op.join(str(tmpdir), "tmp"), "wb") as f: pass # with CaptureStdout() as sio: assert cs.main(f.name) == 0 - with open(f.name, 'wb') as f: - f.write('naïve\n'.encode()) + with open(f.name, "wb") as f: + f.write("naïve\n".encode()) assert cs.main(f.name) == 0 - assert cs.main('-e', f.name) == 0 - with open(f.name, 'ab') as f: - f.write(b'naieve\n') + assert cs.main("-e", f.name) == 0 + with open(f.name, "ab") as f: + f.write(b"naieve\n") assert cs.main(f.name) == 1 # Encoding detection (only try ISO 8859-1 because UTF-8 is the default) - with open(f.name, 'wb') as f: - f.write(b'Speling error, non-ASCII: h\xe9t\xe9rog\xe9n\xe9it\xe9\n') + with open(f.name, "wb") as f: + f.write(b"Speling error, non-ASCII: h\xe9t\xe9rog\xe9n\xe9it\xe9\n") # check warnings about wrong encoding are enabled with "-q 0" - result = cs.main('-q', '0', f.name, std=True, count=True) + result = cs.main("-q", "0", f.name, std=True, count=True) assert isinstance(result, tuple) code, stdout, stderr = result assert code == 1 - assert 'Speling' in stdout - assert 'iso-8859-1' in stderr + assert "Speling" in stdout + assert "iso-8859-1" in stderr # check warnings about wrong encoding are disabled with "-q 1" - result = cs.main('-q', '1', f.name, std=True, count=True) + result = cs.main("-q", "1", f.name, std=True, count=True) assert isinstance(result, tuple) code, stdout, stderr = result assert code == 1 - assert 'Speling' in stdout - assert 'iso-8859-1' not in stderr + assert "Speling" in stdout + assert "iso-8859-1" not in stderr # Binary file warning - with open(f.name, 'wb') as f: - f.write(b'\x00\x00naiive\x00\x00') + with open(f.name, "wb") as f: + f.write(b"\x00\x00naiive\x00\x00") result = cs.main(f.name, std=True, count=False) assert isinstance(result, tuple) code, stdout, stderr = result assert code == 0 - assert stdout == stderr == '' - result = cs.main('-q', '0', f.name, std=True, count=False) + assert stdout == stderr == "" + result = cs.main("-q", "0", f.name, std=True, count=False) assert isinstance(result, tuple) code, stdout, stderr = result assert code == 0 - assert stdout == '' - assert 'WARNING: Binary file' in stderr + assert stdout == "" + assert "WARNING: Binary file" in stderr def test_ignore( @@ -413,28 +417,28 @@ def test_ignore( ) -> None: """Test ignoring of files and directories.""" d = str(tmpdir) - goodtxt = op.join(d, 'good.txt') - with open(goodtxt, 'w') as f: - f.write('this file is okay') + goodtxt = op.join(d, "good.txt") + with open(goodtxt, "w") as f: + f.write("this file is okay") assert cs.main(d) == 0 - badtxt = op.join(d, 'bad.txt') - with open(badtxt, 'w') as f: - f.write('abandonned') + badtxt = op.join(d, "bad.txt") + with open(badtxt, "w") as f: + f.write("abandonned") assert cs.main(d) == 1 - assert cs.main('--skip=bad*', d) == 0 - assert cs.main('--skip=bad.txt', d) == 0 - subdir = op.join(d, 'ignoredir') + assert cs.main("--skip=bad*", d) == 0 + assert cs.main("--skip=bad.txt", d) == 0 + subdir = op.join(d, "ignoredir") os.mkdir(subdir) - with open(op.join(subdir, 'bad.txt'), 'w') as f: - f.write('abandonned') + with open(op.join(subdir, "bad.txt"), "w") as f: + f.write("abandonned") assert cs.main(d) == 2 - assert cs.main('--skip=bad*', d) == 0 - assert cs.main('--skip=*ignoredir*', d) == 1 - assert cs.main('--skip=ignoredir', d) == 1 - assert cs.main('--skip=*ignoredir/bad*', d) == 1 - badjs = op.join(d, 'bad.js') + assert cs.main("--skip=bad*", d) == 0 + assert cs.main("--skip=*ignoredir*", d) == 1 + assert cs.main("--skip=ignoredir", d) == 1 + assert cs.main("--skip=*ignoredir/bad*", d) == 1 + badjs = op.join(d, "bad.js") copyfile(badtxt, badjs) - assert cs.main('--skip=*.js', goodtxt, badtxt, badjs) == 1 + assert cs.main("--skip=*.js", goodtxt, badtxt, badjs) == 1 def test_check_filename( @@ -444,21 +448,22 @@ def test_check_filename( """Test filename check.""" d = str(tmpdir) # Empty file - with open(op.join(d, 'abandonned.txt'), 'w') as f: - f.write('') - assert cs.main('-f', d) == 1 + with open(op.join(d, "abandonned.txt"), "w") as f: + f.write("") + assert cs.main("-f", d) == 1 # Normal file with contents - with open(op.join(d, 'abandonned.txt'), 'w') as f: - f.write('.') - assert cs.main('-f', d) == 1 + with open(op.join(d, "abandonned.txt"), "w") as f: + f.write(".") + assert cs.main("-f", d) == 1 # Normal file with binary contents - with open(op.join(d, 'abandonned.txt'), 'wb') as f: - f.write(b'\x00\x00naiive\x00\x00') - assert cs.main('-f', d) == 1 + with open(op.join(d, "abandonned.txt"), "wb") as f: + f.write(b"\x00\x00naiive\x00\x00") + assert cs.main("-f", d) == 1 -@pytest.mark.skipif((not hasattr(os, "mkfifo") or not callable(os.mkfifo)), - reason='requires os.mkfifo') +@pytest.mark.skipif( + (not hasattr(os, "mkfifo") or not callable(os.mkfifo)), reason="requires os.mkfifo" +) def test_check_filename_irregular_file( tmpdir: pytest.TempPathFactory, capsys: pytest.CaptureFixture[str], @@ -466,8 +471,8 @@ def test_check_filename_irregular_file( """Test irregular file filename check.""" # Irregular file (!isfile()) d = str(tmpdir) - os.mkfifo(op.join(d, 'abandonned')) - assert cs.main('-f', d) == 1 + os.mkfifo(op.join(d, "abandonned")) + assert cs.main("-f", d) == 1 d = str(tmpdir) @@ -478,52 +483,54 @@ def test_check_hidden( """Test ignoring of hidden files.""" d = str(tmpdir) # visible file - with open(op.join(d, 'test.txt'), 'w') as f: - f.write('abandonned\n') - assert cs.main(op.join(d, 'test.txt')) == 1 + with open(op.join(d, "test.txt"), "w") as f: + f.write("abandonned\n") + assert cs.main(op.join(d, "test.txt")) == 1 assert cs.main(d) == 1 # hidden file - os.rename(op.join(d, 'test.txt'), op.join(d, '.test.txt')) - assert cs.main(op.join(d, '.test.txt')) == 0 + os.rename(op.join(d, "test.txt"), op.join(d, ".test.txt")) + assert cs.main(op.join(d, ".test.txt")) == 0 assert cs.main(d) == 0 - assert cs.main('--check-hidden', op.join(d, '.test.txt')) == 1 - assert cs.main('--check-hidden', d) == 1 + assert cs.main("--check-hidden", op.join(d, ".test.txt")) == 1 + assert cs.main("--check-hidden", d) == 1 # hidden file with typo in name - os.rename(op.join(d, '.test.txt'), op.join(d, '.abandonned.txt')) - assert cs.main(op.join(d, '.abandonned.txt')) == 0 + os.rename(op.join(d, ".test.txt"), op.join(d, ".abandonned.txt")) + assert cs.main(op.join(d, ".abandonned.txt")) == 0 assert cs.main(d) == 0 - assert cs.main('--check-hidden', op.join(d, '.abandonned.txt')) == 1 - assert cs.main('--check-hidden', d) == 1 - assert cs.main('--check-hidden', '--check-filenames', - op.join(d, '.abandonned.txt')) == 2 - assert cs.main('--check-hidden', '--check-filenames', d) == 2 + assert cs.main("--check-hidden", op.join(d, ".abandonned.txt")) == 1 + assert cs.main("--check-hidden", d) == 1 + assert ( + cs.main("--check-hidden", "--check-filenames", op.join(d, ".abandonned.txt")) + == 2 + ) + assert cs.main("--check-hidden", "--check-filenames", d) == 2 # hidden directory assert cs.main(d) == 0 - assert cs.main('--check-hidden', d) == 1 - assert cs.main('--check-hidden', '--check-filenames', d) == 2 - os.mkdir(op.join(d, '.abandonned')) - copyfile(op.join(d, '.abandonned.txt'), - op.join(d, '.abandonned', 'abandonned.txt')) + assert cs.main("--check-hidden", d) == 1 + assert cs.main("--check-hidden", "--check-filenames", d) == 2 + os.mkdir(op.join(d, ".abandonned")) + copyfile(op.join(d, ".abandonned.txt"), op.join(d, ".abandonned", "abandonned.txt")) assert cs.main(d) == 0 - assert cs.main('--check-hidden', d) == 2 - assert cs.main('--check-hidden', '--check-filenames', d) == 5 + assert cs.main("--check-hidden", d) == 2 + assert cs.main("--check-hidden", "--check-filenames", d) == 5 # check again with a relative path rel = op.relpath(d) assert cs.main(rel) == 0 - assert cs.main('--check-hidden', rel) == 2 - assert cs.main('--check-hidden', '--check-filenames', rel) == 5 + assert cs.main("--check-hidden", rel) == 2 + assert cs.main("--check-hidden", "--check-filenames", rel) == 5 # hidden subdirectory assert cs.main(d) == 0 - assert cs.main('--check-hidden', d) == 2 - assert cs.main('--check-hidden', '--check-filenames', d) == 5 - subdir = op.join(d, 'subdir') + assert cs.main("--check-hidden", d) == 2 + assert cs.main("--check-hidden", "--check-filenames", d) == 5 + subdir = op.join(d, "subdir") os.mkdir(subdir) - os.mkdir(op.join(subdir, '.abandonned')) - copyfile(op.join(d, '.abandonned.txt'), - op.join(subdir, '.abandonned', 'abandonned.txt')) + os.mkdir(op.join(subdir, ".abandonned")) + copyfile( + op.join(d, ".abandonned.txt"), op.join(subdir, ".abandonned", "abandonned.txt") + ) assert cs.main(d) == 0 - assert cs.main('--check-hidden', d) == 3 - assert cs.main('--check-hidden', '--check-filenames', d) == 8 + assert cs.main("--check-hidden", d) == 3 + assert cs.main("--check-hidden", "--check-filenames", d) == 8 def test_case_handling( @@ -532,24 +539,24 @@ def test_case_handling( ) -> None: """Test that capitalized entries get detected properly.""" # Some simple Unicode things - with open(op.join(str(tmpdir), 'tmp'), 'wb') as f: + with open(op.join(str(tmpdir), "tmp"), "wb") as f: pass # with CaptureStdout() as sio: assert cs.main(f.name) == 0 - with open(f.name, 'wb') as f: - f.write(b'this has an ACII error') + with open(f.name, "wb") as f: + f.write(b"this has an ACII error") result = cs.main(f.name, std=True) assert isinstance(result, tuple) code, stdout, _ = result assert code == 1 - assert 'ASCII' in stdout - result = cs.main('-w', f.name, std=True) + assert "ASCII" in stdout + result = cs.main("-w", f.name, std=True) assert isinstance(result, tuple) code, _, stderr = result assert code == 0 - assert 'FIXED' in stderr - with open(f.name, 'rb') as fp: - assert fp.read().decode('utf-8') == 'this has an ASCII error' + assert "FIXED" in stderr + with open(f.name, "rb") as fp: + assert fp.read().decode("utf-8") == "this has an ASCII error" def _helper_test_case_handling_in_fixes( @@ -559,65 +566,64 @@ def _helper_test_case_handling_in_fixes( ) -> None: d = str(tmpdir) - with open(op.join(d, 'dictionary.txt'), 'w') as f: + with open(op.join(d, "dictionary.txt"), "w") as f: if reason: - f.write('adoptor->adopter, adaptor, reason\n') + f.write("adoptor->adopter, adaptor, reason\n") else: - f.write('adoptor->adopter, adaptor,\n') + f.write("adoptor->adopter, adaptor,\n") dictionary_name = f.name # the mispelled word is entirely lowercase - with open(op.join(d, 'bad.txt'), 'w') as f: - f.write('early adoptor\n') - result = cs.main('-D', dictionary_name, f.name, std=True) + with open(op.join(d, "bad.txt"), "w") as f: + f.write("early adoptor\n") + result = cs.main("-D", dictionary_name, f.name, std=True) assert isinstance(result, tuple) code, stdout, _ = result # all suggested fixes must be lowercase too - assert 'adopter, adaptor' in stdout + assert "adopter, adaptor" in stdout # the reason, if any, must not be modified if reason: - assert 'reason' in stdout + assert "reason" in stdout # the mispelled word is capitalized - with open(op.join(d, 'bad.txt'), 'w') as f: - f.write('Early Adoptor\n') - result = cs.main('-D', dictionary_name, f.name, std=True) + with open(op.join(d, "bad.txt"), "w") as f: + f.write("Early Adoptor\n") + result = cs.main("-D", dictionary_name, f.name, std=True) assert isinstance(result, tuple) code, stdout, _ = result # all suggested fixes must be capitalized too - assert 'Adopter, Adaptor' in stdout + assert "Adopter, Adaptor" in stdout # the reason, if any, must not be modified if reason: - assert 'reason' in stdout + assert "reason" in stdout # the mispelled word is entirely uppercase - with open(op.join(d, 'bad.txt'), 'w') as f: - f.write('EARLY ADOPTOR\n') - result = cs.main('-D', dictionary_name, f.name, std=True) + with open(op.join(d, "bad.txt"), "w") as f: + f.write("EARLY ADOPTOR\n") + result = cs.main("-D", dictionary_name, f.name, std=True) assert isinstance(result, tuple) code, stdout, _ = result # all suggested fixes must be uppercase too - assert 'ADOPTER, ADAPTOR' in stdout + assert "ADOPTER, ADAPTOR" in stdout # the reason, if any, must not be modified if reason: - assert 'reason' in stdout + assert "reason" in stdout # the mispelled word mixes lowercase and uppercase - with open(op.join(d, 'bad.txt'), 'w') as f: - f.write('EaRlY AdOpToR\n') - result = cs.main('-D', dictionary_name, f.name, std=True) + with open(op.join(d, "bad.txt"), "w") as f: + f.write("EaRlY AdOpToR\n") + result = cs.main("-D", dictionary_name, f.name, std=True) assert isinstance(result, tuple) code, stdout, _ = result # all suggested fixes should be lowercase - assert 'adopter, adaptor' in stdout + assert "adopter, adaptor" in stdout # the reason, if any, must not be modified if reason: - assert 'reason' in stdout + assert "reason" in stdout def test_case_handling_in_fixes( - tmpdir: pytest.TempPathFactory, - capsys: pytest.CaptureFixture[str] + tmpdir: pytest.TempPathFactory, capsys: pytest.CaptureFixture[str] ) -> None: """Test that the case of fixes is similar to the mispelled word.""" _helper_test_case_handling_in_fixes(tmpdir, capsys, reason=False) @@ -630,81 +636,81 @@ def test_context( ) -> None: """Test context options.""" d = str(tmpdir) - with open(op.join(d, 'context.txt'), 'w') as f: - f.write('line 1\nline 2\nline 3 abandonned\nline 4\nline 5') + with open(op.join(d, "context.txt"), "w") as f: + f.write("line 1\nline 2\nline 3 abandonned\nline 4\nline 5") # symmetric context, fully within file - result = cs.main('-C', '1', d, std=True) + result = cs.main("-C", "1", d, std=True) assert isinstance(result, tuple) code, stdout, _ = result assert code == 1 - lines = stdout.split('\n') + lines = stdout.split("\n") assert len(lines) == 5 - assert lines[0] == ': line 2' - assert lines[1] == '> line 3 abandonned' - assert lines[2] == ': line 4' + assert lines[0] == ": line 2" + assert lines[1] == "> line 3 abandonned" + assert lines[2] == ": line 4" # requested context is bigger than the file - result = cs.main('-C', '10', d, std=True) + result = cs.main("-C", "10", d, std=True) assert isinstance(result, tuple) code, stdout, _ = result assert code == 1 - lines = stdout.split('\n') + lines = stdout.split("\n") assert len(lines) == 7 - assert lines[0] == ': line 1' - assert lines[1] == ': line 2' - assert lines[2] == '> line 3 abandonned' - assert lines[3] == ': line 4' - assert lines[4] == ': line 5' + assert lines[0] == ": line 1" + assert lines[1] == ": line 2" + assert lines[2] == "> line 3 abandonned" + assert lines[3] == ": line 4" + assert lines[4] == ": line 5" # only before context - result = cs.main('-B', '2', d, std=True) + result = cs.main("-B", "2", d, std=True) assert isinstance(result, tuple) code, stdout, _ = result assert code == 1 - lines = stdout.split('\n') + lines = stdout.split("\n") assert len(lines) == 5 - assert lines[0] == ': line 1' - assert lines[1] == ': line 2' - assert lines[2] == '> line 3 abandonned' + assert lines[0] == ": line 1" + assert lines[1] == ": line 2" + assert lines[2] == "> line 3 abandonned" # only after context - result = cs.main('-A', '1', d, std=True) + result = cs.main("-A", "1", d, std=True) assert isinstance(result, tuple) code, stdout, _ = result assert code == 1 - lines = stdout.split('\n') + lines = stdout.split("\n") assert len(lines) == 4 - assert lines[0] == '> line 3 abandonned' - assert lines[1] == ': line 4' + assert lines[0] == "> line 3 abandonned" + assert lines[1] == ": line 4" # asymmetric context - result = cs.main('-B', '2', '-A', '1', d, std=True) + result = cs.main("-B", "2", "-A", "1", d, std=True) assert isinstance(result, tuple) code, stdout, _ = result assert code == 1 - lines = stdout.split('\n') + lines = stdout.split("\n") assert len(lines) == 6 - assert lines[0] == ': line 1' - assert lines[1] == ': line 2' - assert lines[2] == '> line 3 abandonned' - assert lines[3] == ': line 4' + assert lines[0] == ": line 1" + assert lines[1] == ": line 2" + assert lines[2] == "> line 3 abandonned" + assert lines[3] == ": line 4" # both '-C' and '-A' on the command line - result = cs.main('-C', '2', '-A', '1', d, std=True) + result = cs.main("-C", "2", "-A", "1", d, std=True) assert isinstance(result, tuple) code, _, stderr = result assert code == EX_USAGE - lines = stderr.split('\n') - assert 'ERROR' in lines[0] + lines = stderr.split("\n") + assert "ERROR" in lines[0] # both '-C' and '-B' on the command line - result = cs.main('-C', '2', '-B', '1', d, std=True) + result = cs.main("-C", "2", "-B", "1", d, std=True) assert isinstance(result, tuple) code, _, stderr = result assert code == EX_USAGE - lines = stderr.split('\n') - assert 'ERROR' in lines[0] + lines = stderr.split("\n") + assert "ERROR" in lines[0] def test_ignore_regex_option( @@ -715,34 +721,34 @@ def test_ignore_regex_option( d = str(tmpdir) # Invalid regex. - result = cs.main('--ignore-regex=(', std=True) + result = cs.main("--ignore-regex=(", std=True) assert isinstance(result, tuple) code, stdout, _ = result assert code == EX_USAGE - assert 'usage:' in stdout + assert "usage:" in stdout - with open(op.join(d, 'flag.txt'), 'w') as f: - f.write('# Please see http://example.com/abandonned for info\n') + with open(op.join(d, "flag.txt"), "w") as f: + f.write("# Please see http://example.com/abandonned for info\n") # Test file has 1 invalid entry, and it's not ignored by default. assert cs.main(f.name) == 1 # An empty regex is the default value, and nothing is ignored. - assert cs.main(f.name, '--ignore-regex=') == 1 + assert cs.main(f.name, "--ignore-regex=") == 1 assert cs.main(f.name, '--ignore-regex=""') == 1 # Non-matching regex results in nothing being ignored. - assert cs.main(f.name, '--ignore-regex=^$') == 1 + assert cs.main(f.name, "--ignore-regex=^$") == 1 # A word can be ignored. - assert cs.main(f.name, '--ignore-regex=abandonned') == 0 + assert cs.main(f.name, "--ignore-regex=abandonned") == 0 # Ignoring part of the word can result in odd behavior. - assert cs.main(f.name, '--ignore-regex=nn') == 0 + assert cs.main(f.name, "--ignore-regex=nn") == 0 - with open(op.join(d, 'flag.txt'), 'w') as f: - f.write('abandonned donn\n') + with open(op.join(d, "flag.txt"), "w") as f: + f.write("abandonned donn\n") # Test file has 2 invalid entries. assert cs.main(f.name) == 2 # Ignoring donn breaks them both. - assert cs.main(f.name, '--ignore-regex=donn') == 0 + assert cs.main(f.name, "--ignore-regex=donn") == 0 # Adding word breaks causes only one to be ignored. - assert cs.main(f.name, r'--ignore-regex=\bdonn\b') == 1 + assert cs.main(f.name, r"--ignore-regex=\bdonn\b") == 1 def test_uri_regex_option( @@ -753,35 +759,37 @@ def test_uri_regex_option( d = str(tmpdir) # Invalid regex. - result = cs.main('--uri-regex=(', std=True) + result = cs.main("--uri-regex=(", std=True) assert isinstance(result, tuple) code, stdout, _ = result assert code == EX_USAGE - assert 'usage:' in stdout + assert "usage:" in stdout - with open(op.join(d, 'flag.txt'), 'w') as f: - f.write('# Please see http://abandonned.com for info\n') + with open(op.join(d, "flag.txt"), "w") as f: + f.write("# Please see http://abandonned.com for info\n") # By default, the standard regex is used. assert cs.main(f.name) == 1 - assert cs.main(f.name, '--uri-ignore-words-list=abandonned') == 0 + assert cs.main(f.name, "--uri-ignore-words-list=abandonned") == 0 # If empty, nothing matches. - assert cs.main(f.name, '--uri-regex=', - '--uri-ignore-words-list=abandonned') == 0 + assert cs.main(f.name, "--uri-regex=", "--uri-ignore-words-list=abandonned") == 0 # Can manually match urls. - assert cs.main(f.name, '--uri-regex=\\bhttp.*\\b', - '--uri-ignore-words-list=abandonned') == 0 + assert ( + cs.main( + f.name, "--uri-regex=\\bhttp.*\\b", "--uri-ignore-words-list=abandonned" + ) + == 0 + ) # Can also match arbitrary content. - with open(op.join(d, 'flag.txt'), 'w') as f: - f.write('abandonned') + with open(op.join(d, "flag.txt"), "w") as f: + f.write("abandonned") assert cs.main(f.name) == 1 - assert cs.main(f.name, '--uri-ignore-words-list=abandonned') == 1 - assert cs.main(f.name, '--uri-regex=.*') == 1 - assert cs.main(f.name, '--uri-regex=.*', - '--uri-ignore-words-list=abandonned') == 0 + assert cs.main(f.name, "--uri-ignore-words-list=abandonned") == 1 + assert cs.main(f.name, "--uri-regex=.*") == 1 + assert cs.main(f.name, "--uri-regex=.*", "--uri-ignore-words-list=abandonned") == 0 def test_uri_ignore_words_list_option_uri( @@ -791,59 +799,63 @@ def test_uri_ignore_words_list_option_uri( """Test ignore regex option functionality.""" d = str(tmpdir) - with open(op.join(d, 'flag.txt'), 'w') as f: - f.write('# Please see http://example.com/abandonned for info\n') + with open(op.join(d, "flag.txt"), "w") as f: + f.write("# Please see http://example.com/abandonned for info\n") # Test file has 1 invalid entry, and it's not ignored by default. assert cs.main(f.name) == 1 # An empty list is the default value, and nothing is ignored. - assert cs.main(f.name, '--uri-ignore-words-list=') == 1 + assert cs.main(f.name, "--uri-ignore-words-list=") == 1 # Non-matching regex results in nothing being ignored. - assert cs.main(f.name, '--uri-ignore-words-list=foo,example') == 1 + assert cs.main(f.name, "--uri-ignore-words-list=foo,example") == 1 # A word can be ignored. - assert cs.main(f.name, '--uri-ignore-words-list=abandonned') == 0 - assert cs.main(f.name, '--uri-ignore-words-list=foo,abandonned,bar') == 0 - assert cs.main(f.name, '--uri-ignore-words-list=*') == 0 + assert cs.main(f.name, "--uri-ignore-words-list=abandonned") == 0 + assert cs.main(f.name, "--uri-ignore-words-list=foo,abandonned,bar") == 0 + assert cs.main(f.name, "--uri-ignore-words-list=*") == 0 # The match must be for the complete word. - assert cs.main(f.name, '--uri-ignore-words-list=abandonn') == 1 + assert cs.main(f.name, "--uri-ignore-words-list=abandonn") == 1 - with open(op.join(d, 'flag.txt'), 'w') as f: - f.write('abandonned http://example.com/abandonned\n') + with open(op.join(d, "flag.txt"), "w") as f: + f.write("abandonned http://example.com/abandonned\n") # Test file has 2 invalid entries. assert cs.main(f.name) == 2 # Ignoring the value in the URI won't ignore the word completely. - assert cs.main(f.name, '--uri-ignore-words-list=abandonned') == 1 - assert cs.main(f.name, '--uri-ignore-words-list=*') == 1 + assert cs.main(f.name, "--uri-ignore-words-list=abandonned") == 1 + assert cs.main(f.name, "--uri-ignore-words-list=*") == 1 # The regular --ignore-words-list will ignore both. - assert cs.main(f.name, '--ignore-words-list=abandonned') == 0 + assert cs.main(f.name, "--ignore-words-list=abandonned") == 0 - variation_option = '--uri-ignore-words-list=abandonned' + variation_option = "--uri-ignore-words-list=abandonned" # Variations where an error is ignored. - for variation in ('# Please see http://abandonned for info\n', - '# Please see "http://abandonned" for info\n', - # This variation could be un-ignored, but it'd require a - # more complex regex as " is valid in parts of URIs. - '# Please see "http://foo"abandonned for info\n', - '# Please see https://abandonned for info\n', - '# Please see ftp://abandonned for info\n', - '# Please see http://example/abandonned for info\n', - '# Please see http://example.com/abandonned for info\n', - '# Please see http://exam.com/ple#abandonned for info\n', - '# Please see http://exam.com/ple?abandonned for info\n', - '# Please see http://127.0.0.1/abandonned for info\n', - '# Please see http://[2001:0db8:85a3:0000:0000:8a2e:0370' - ':7334]/abandonned for info\n'): - with open(op.join(d, 'flag.txt'), 'w') as f: + for variation in ( + "# Please see http://abandonned for info\n", + '# Please see "http://abandonned" for info\n', + # This variation could be un-ignored, but it'd require a + # more complex regex as " is valid in parts of URIs. + '# Please see "http://foo"abandonned for info\n', + "# Please see https://abandonned for info\n", + "# Please see ftp://abandonned for info\n", + "# Please see http://example/abandonned for info\n", + "# Please see http://example.com/abandonned for info\n", + "# Please see http://exam.com/ple#abandonned for info\n", + "# Please see http://exam.com/ple?abandonned for info\n", + "# Please see http://127.0.0.1/abandonned for info\n", + "# Please see http://[2001:0db8:85a3:0000:0000:8a2e:0370" + ":7334]/abandonned for info\n", + ): + with open(op.join(d, "flag.txt"), "w") as f: f.write(variation) assert cs.main(f.name) == 1, variation assert cs.main(f.name, variation_option) == 0, variation # Variations where no error is ignored. - for variation in ('# Please see abandonned/ for info\n', - '# Please see http:abandonned for info\n', - '# Please see foo/abandonned for info\n', - '# Please see http://foo abandonned for info\n'): - with open(op.join(d, 'flag.txt'), 'w') as f: + for variation in ( + "# Please see abandonned/ for info\n", + "# Please see http:abandonned for info\n", + "# Please see foo/abandonned for info\n", + "# Please see http://foo abandonned for info\n", + ): + with open(op.join(d, "flag.txt"), "w") as f: f.write(variation) assert cs.main(f.name) == 1, variation assert cs.main(f.name, variation_option) == 1, variation @@ -856,50 +868,52 @@ def test_uri_ignore_words_list_option_email( """Test ignore regex option functionality.""" d = str(tmpdir) - with open(op.join(d, 'flag.txt'), 'w') as f: - f.write('# Please see example@abandonned.com for info\n') + with open(op.join(d, "flag.txt"), "w") as f: + f.write("# Please see example@abandonned.com for info\n") # Test file has 1 invalid entry, and it's not ignored by default. assert cs.main(f.name) == 1 # An empty list is the default value, and nothing is ignored. - assert cs.main(f.name, '--uri-ignore-words-list=') == 1 + assert cs.main(f.name, "--uri-ignore-words-list=") == 1 # Non-matching regex results in nothing being ignored. - assert cs.main(f.name, '--uri-ignore-words-list=foo,example') == 1 + assert cs.main(f.name, "--uri-ignore-words-list=foo,example") == 1 # A word can be ignored. - assert cs.main(f.name, '--uri-ignore-words-list=abandonned') == 0 - assert cs.main(f.name, '--uri-ignore-words-list=foo,abandonned,bar') == 0 - assert cs.main(f.name, '--uri-ignore-words-list=*') == 0 + assert cs.main(f.name, "--uri-ignore-words-list=abandonned") == 0 + assert cs.main(f.name, "--uri-ignore-words-list=foo,abandonned,bar") == 0 + assert cs.main(f.name, "--uri-ignore-words-list=*") == 0 # The match must be for the complete word. - assert cs.main(f.name, '--uri-ignore-words-list=abandonn') == 1 + assert cs.main(f.name, "--uri-ignore-words-list=abandonn") == 1 - with open(op.join(d, 'flag.txt'), 'w') as f: - f.write('abandonned example@abandonned.com\n') + with open(op.join(d, "flag.txt"), "w") as f: + f.write("abandonned example@abandonned.com\n") # Test file has 2 invalid entries. assert cs.main(f.name) == 2 # Ignoring the value in the URI won't ignore the word completely. - assert cs.main(f.name, '--uri-ignore-words-list=abandonned') == 1 - assert cs.main(f.name, '--uri-ignore-words-list=*') == 1 + assert cs.main(f.name, "--uri-ignore-words-list=abandonned") == 1 + assert cs.main(f.name, "--uri-ignore-words-list=*") == 1 # The regular --ignore-words-list will ignore both. - assert cs.main(f.name, '--ignore-words-list=abandonned') == 0 + assert cs.main(f.name, "--ignore-words-list=abandonned") == 0 - variation_option = '--uri-ignore-words-list=abandonned' + variation_option = "--uri-ignore-words-list=abandonned" # Variations where an error is ignored. - for variation in ('# Please see example@abandonned for info\n', - '# Please see abandonned@example for info\n', - '# Please see abandonned@example.com for info\n', - '# Please see mailto:abandonned@example.com?subject=Test' - ' for info\n'): - with open(op.join(d, 'flag.txt'), 'w') as f: + for variation in ( + "# Please see example@abandonned for info\n", + "# Please see abandonned@example for info\n", + "# Please see abandonned@example.com for info\n", + "# Please see mailto:abandonned@example.com?subject=Test for info\n", + ): + with open(op.join(d, "flag.txt"), "w") as f: f.write(variation) assert cs.main(f.name) == 1, variation assert cs.main(f.name, variation_option) == 0, variation # Variations where no error is ignored. - for variation in ('# Please see example @ abandonned for info\n', - '# Please see abandonned@ example for info\n', - '# Please see mailto:foo@example.com?subject=Test' - ' abandonned for info\n'): - with open(op.join(d, 'flag.txt'), 'w') as f: + for variation in ( + "# Please see example @ abandonned for info\n", + "# Please see abandonned@ example for info\n", + "# Please see mailto:foo@example.com?subject=Test abandonned for info\n", + ): + with open(op.join(d, "flag.txt"), "w") as f: f.write(variation) assert cs.main(f.name) == 1, variation assert cs.main(f.name, variation_option) == 1, variation @@ -910,84 +924,84 @@ def test_uri_regex_def() -> None: # Tests based on https://mathiasbynens.be/demo/url-regex true_positives = ( - 'http://foo.com/blah_blah', - 'http://foo.com/blah_blah/', - 'http://foo.com/blah_blah_(wikipedia)', - 'http://foo.com/blah_blah_(wikipedia)_(again)', - 'http://www.example.com/wpstyle/?p=364', - 'https://www.example.com/foo/?bar=baz&inga=42&quux', - 'http://✪df.ws/123', - 'http://userid:password@example.com:8080', - 'http://userid:password@example.com:8080/', - 'http://userid@example.com', - 'http://userid@example.com/', - 'http://userid@example.com:8080', - 'http://userid@example.com:8080/', - 'http://userid:password@example.com', - 'http://userid:password@example.com/', - 'http://142.42.1.1/', - 'http://142.42.1.1:8080/', - 'http://➡.ws/䨹', - 'http://⌘.ws', - 'http://⌘.ws/', - 'http://foo.com/blah_(wikipedia)#cite-1', - 'http://foo.com/blah_(wikipedia)_blah#cite-1', - 'http://foo.com/unicode_(✪)_in_parens', - 'http://foo.com/(something)?after=parens', - 'http://☺.damowmow.com/', - 'http://code.google.com/events/#&product=browser', - 'http://j.mp', - 'ftp://foo.bar/baz', - 'http://foo.bar/?q=Test%20URL-encoded%20stuff', - 'http://مثال.إختبار', - 'http://例子.测试', - 'http://उदाहरण.परीक्षा', + "http://foo.com/blah_blah", + "http://foo.com/blah_blah/", + "http://foo.com/blah_blah_(wikipedia)", + "http://foo.com/blah_blah_(wikipedia)_(again)", + "http://www.example.com/wpstyle/?p=364", + "https://www.example.com/foo/?bar=baz&inga=42&quux", + "http://✪df.ws/123", + "http://userid:password@example.com:8080", + "http://userid:password@example.com:8080/", + "http://userid@example.com", + "http://userid@example.com/", + "http://userid@example.com:8080", + "http://userid@example.com:8080/", + "http://userid:password@example.com", + "http://userid:password@example.com/", + "http://142.42.1.1/", + "http://142.42.1.1:8080/", + "http://➡.ws/䨹", + "http://⌘.ws", + "http://⌘.ws/", + "http://foo.com/blah_(wikipedia)#cite-1", + "http://foo.com/blah_(wikipedia)_blah#cite-1", + "http://foo.com/unicode_(✪)_in_parens", + "http://foo.com/(something)?after=parens", + "http://☺.damowmow.com/", + "http://code.google.com/events/#&product=browser", + "http://j.mp", + "ftp://foo.bar/baz", + "http://foo.bar/?q=Test%20URL-encoded%20stuff", + "http://مثال.إختبار", + "http://例子.测试", + "http://उदाहरण.परीक्षा", "http://-.~_!$&'()*+,;=:%40:80%2f::::::@example.com", - 'http://1337.net', - 'http://a.b-c.de', - 'http://223.255.255.254', + "http://1337.net", + "http://a.b-c.de", + "http://223.255.255.254", ) true_negatives = ( - 'http://', - '//', - '//a', - '///a', - '///', - 'foo.com', - 'rdar://1234', - 'h://test', - '://should.fail', - 'ftps://foo.bar/', + "http://", + "//", + "//a", + "///a", + "///", + "foo.com", + "rdar://1234", + "h://test", + "://should.fail", + "ftps://foo.bar/", ) false_positives = ( - 'http://.', - 'http://..', - 'http://../', - 'http://?', - 'http://??', - 'http://??/', - 'http://#', - 'http://##', - 'http://##/', - 'http:///a', - 'http://-error-.invalid/', - 'http://a.b--c.de/', - 'http://-a.b.co', - 'http://a.b-.co', - 'http://0.0.0.0', - 'http://10.1.1.0', - 'http://10.1.1.255', - 'http://224.1.1.1', - 'http://1.1.1.1.1', - 'http://123.123.123', - 'http://3628126748', - 'http://.www.foo.bar/', - 'http://www.foo.bar./', - 'http://.www.foo.bar./', - 'http://10.1.1.1', + "http://.", + "http://..", + "http://../", + "http://?", + "http://??", + "http://??/", + "http://#", + "http://##", + "http://##/", + "http:///a", + "http://-error-.invalid/", + "http://a.b--c.de/", + "http://-a.b.co", + "http://a.b-.co", + "http://0.0.0.0", + "http://10.1.1.0", + "http://10.1.1.255", + "http://224.1.1.1", + "http://1.1.1.1.1", + "http://123.123.123", + "http://3628126748", + "http://.www.foo.bar/", + "http://www.foo.bar./", + "http://.www.foo.bar./", + "http://10.1.1.1", ) - boilerplate = 'Surrounding text %s more text' + boilerplate = "Surrounding text %s more text" for uri in true_positives + false_positives: assert uri_regex.findall(uri) == [uri], uri @@ -998,18 +1012,18 @@ def test_uri_regex_def() -> None: assert not uri_regex.findall(boilerplate % uri), uri -@pytest.mark.parametrize('kind', ('toml', 'cfg')) +@pytest.mark.parametrize("kind", ("toml", "cfg")) def test_config_toml( tmp_path: Path, capsys: pytest.CaptureFixture[str], kind: str, ) -> None: """Test loading options from a config file or toml.""" - d = tmp_path / 'files' + d = tmp_path / "files" d.mkdir() - with open(d / 'bad.txt', 'w') as f: - f.write('abandonned donn\n') - with open(d / 'good.txt', 'w') as f: + with open(d / "bad.txt", "w") as f: + f.write("abandonned donn\n") + with open(d / "good.txt", "w") as f: f.write("good") # Should fail when checking both. @@ -1018,35 +1032,39 @@ def test_config_toml( code, stdout, _ = result # Code in this case is not exit code, but count of misspellings. assert code == 2 - assert 'bad.txt' in stdout - - if kind == 'cfg': - conffile = str(tmp_path / 'setup.cfg') - args = ('--config', conffile) - with open(conffile, 'w') as f: - f.write("""\ + assert "bad.txt" in stdout + + if kind == "cfg": + conffile = str(tmp_path / "setup.cfg") + args = ("--config", conffile) + with open(conffile, "w") as f: + f.write( + """\ [codespell] skip = bad.txt, whatever.txt count = -""") +""" + ) else: - assert kind == 'toml' - pytest.importorskip('tomli') - tomlfile = str(tmp_path / 'pyproject.toml') - args = ('--toml', tomlfile) - with open(tomlfile, 'w') as f: - f.write("""\ + assert kind == "toml" + pytest.importorskip("tomli") + tomlfile = str(tmp_path / "pyproject.toml") + args = ("--toml", tomlfile) + with open(tomlfile, "w") as f: + f.write( + """\ [tool.codespell] skip = 'bad.txt,whatever.txt' count = false -""") +""" + ) # Should pass when skipping bad.txt result = cs.main(str(d), *args, count=True, std=True) assert isinstance(result, tuple) code, stdout, _ = result assert code == 0 - assert 'bad.txt' not in stdout + assert "bad.txt" not in stdout # And both should automatically work if they're in cwd cwd = os.getcwd() @@ -1058,7 +1076,7 @@ def test_config_toml( finally: os.chdir(cwd) assert code == 0 - assert 'bad.txt' not in stdout + assert "bad.txt" not in stdout @contextlib.contextmanager diff --git a/codespell_lib/tests/test_dictionary.py b/codespell_lib/tests/test_dictionary.py index 327c647d2f..448c07ac4b 100644 --- a/codespell_lib/tests/test_dictionary.py +++ b/codespell_lib/tests/test_dictionary.py @@ -13,35 +13,39 @@ try: import aspell # type: ignore[import] + for lang in supported_languages: - spellers[lang] = aspell.Speller('lang', lang) + spellers[lang] = aspell.Speller("lang", lang) except Exception as exp: # probably ImportError, but maybe also language - if os.getenv('REQUIRE_ASPELL', 'false').lower() == 'true': + if os.getenv("REQUIRE_ASPELL", "false").lower() == "true": raise RuntimeError( - 'Cannot run complete tests without aspell when ' - 'REQUIRE_ASPELL=true. Got error during import:\n%s' - % (exp,)) + "Cannot run complete tests without aspell when " + "REQUIRE_ASPELL=true. Got error during import:\n%s" % (exp,) + ) else: warnings.warn( - 'aspell not found, but not required, skipping aspell tests. Got ' - 'error during import:\n%s' % (exp,)) + "aspell not found, but not required, skipping aspell tests. Got " + "error during import:\n%s" % (exp,) + ) 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') +_data_dir = op.join(op.dirname(__file__), "..", "data") _fnames_in_aspell = [ - (op.join(_data_dir, 'dictionary%s.txt' % d[2]), d[3:5], d[5:7]) - for d in _builtin_dictionaries] -fname_params = pytest.mark.parametrize('fname, in_aspell, in_dictionary', _fnames_in_aspell) # noqa: E501 + (op.join(_data_dir, "dictionary%s.txt" % d[2]), d[3:5], d[5:7]) + for d in _builtin_dictionaries +] +fname_params = pytest.mark.parametrize( + "fname, in_aspell, in_dictionary", _fnames_in_aspell +) # noqa: E501 def test_dictionaries_exist() -> None: """Test consistency of dictionaries.""" doc_fnames = {op.basename(f[0]) for f in _fnames_in_aspell} - got_fnames = {op.basename(f) - for f in glob.glob(op.join(_data_dir, '*.txt'))} + got_fnames = {op.basename(f) for f in glob.glob(op.join(_data_dir, "*.txt"))} assert doc_fnames == got_fnames @@ -53,17 +57,17 @@ def test_dictionary_formatting( ) -> None: """Test that all dictionary entries are valid.""" errors = [] - with open(fname, 'rb') as fid: + with open(fname, "rb") as fid: for line in fid: - err, rep = line.decode('utf-8').split('->') + err, rep = line.decode("utf-8").split("->") err = err.lower() - rep = rep.rstrip('\n') + rep = rep.rstrip("\n") try: _check_err_rep(err, rep, in_aspell, fname, in_dictionary) except AssertionError as exp: - errors.append(str(exp).split('\n')[0]) + errors.append(str(exp).split("\n")[0]) if errors: - raise AssertionError('\n' + '\n'.join(errors)) + raise AssertionError("\n" + "\n".join(errors)) def _check_aspell( @@ -77,28 +81,32 @@ def _check_aspell( return # cannot check if in_aspell is None: return # don't check - if ' ' in phrase: + if " " in phrase: for word in phrase.split(): _check_aspell(word, msg, in_aspell, fname, languages) return # stop normal checking as we've done each word above - this_in_aspell = any(spellers[lang].check(phrase.encode( - spellers[lang].ConfigKeys()['encoding'][1])) for lang in languages) - end = 'be in aspell dictionaries (%s) for dictionary %s' % ( - ', '.join(languages), fname) + this_in_aspell = any( + spellers[lang].check(phrase.encode(spellers[lang].ConfigKeys()["encoding"][1])) + for lang in languages + ) + end = "be in aspell dictionaries (%s) for dictionary %s" % ( + ", ".join(languages), + fname, + ) if in_aspell: # should be an error in aspell - assert this_in_aspell, '%s should %s' % (msg, end) + assert this_in_aspell, "%s should %s" % (msg, end) else: # shouldn't be - assert not this_in_aspell, '%s should not %s' % (msg, end) + assert not this_in_aspell, "%s should not %s" % (msg, end) -whitespace = re.compile(r'\s') -start_whitespace = re.compile(r'^\s') -start_comma = re.compile(r'^,') -whitespace_comma = re.compile(r'\s,') -comma_whitespaces = re.compile(r',\s\s') -comma_without_space = re.compile(r',[^ ]') -whitespace_end = re.compile(r'\s+$') -single_comma = re.compile(r'^[^,]*,\s*$') +whitespace = re.compile(r"\s") +start_whitespace = re.compile(r"^\s") +start_comma = re.compile(r"^,") +whitespace_comma = re.compile(r"\s,") +comma_whitespaces = re.compile(r",\s\s") +comma_without_space = re.compile(r",[^ ]") +whitespace_end = re.compile(r"\s+$") +single_comma = re.compile(r"^[^,]*,\s*$") def _check_err_rep( @@ -108,126 +116,141 @@ def _check_err_rep( fname: str, languages: Tuple[Iterable[str], Iterable[str]], ) -> None: - assert whitespace.search(err) is None, 'error %r has whitespace' % err - assert ',' not in err, 'error %r has a comma' % err - assert len(rep) > 0, ('error %s: correction %r must be non-empty' - % (err, rep)) - assert not start_whitespace.match(rep), ('error %s: correction %r ' - 'cannot start with whitespace' - % (err, rep)) - _check_aspell(err, 'error %r' % (err,), in_aspell[0], fname, languages[0]) - prefix = 'error %s: correction %r' % (err, rep) + assert whitespace.search(err) is None, "error %r has whitespace" % err + assert "," not in err, "error %r has a comma" % err + assert len(rep) > 0, "error %s: correction %r must be non-empty" % (err, rep) + assert not start_whitespace.match( + rep + ), "error %s: correction %r cannot start with whitespace" % (err, rep) + _check_aspell(err, "error %r" % (err,), in_aspell[0], fname, languages[0]) + prefix = "error %s: correction %r" % (err, rep) for (regex, msg) in [ - (start_comma, - '%s starts with a comma'), - (whitespace_comma, - '%s contains a whitespace character followed by a comma'), - (comma_whitespaces, - '%s contains a comma followed by multiple whitespace characters'), - (comma_without_space, - '%s contains a comma *not* followed by a space'), - (whitespace_end, - '%s has a trailing space'), - (single_comma, - '%s has a single entry but contains a trailing comma')]: - assert not regex.search(rep), (msg % (prefix,)) + (start_comma, "%s starts with a comma"), + (whitespace_comma, "%s contains a whitespace character followed by a comma"), + ( + comma_whitespaces, + "%s contains a comma followed by multiple whitespace characters", + ), + (comma_without_space, "%s contains a comma *not* followed by a space"), + (whitespace_end, "%s has a trailing space"), + (single_comma, "%s has a single entry but contains a trailing comma"), + ]: + assert not regex.search(rep), msg % (prefix,) del msg - if rep.count(','): - assert rep.endswith(','), ('error %s: multiple corrections must end ' - 'with trailing ","' % (err,)) - reps = [r.strip() for r in rep.split(',')] + if rep.count(","): + assert rep.endswith( + "," + ), "error %s: multiple corrections must end " 'with trailing ","' % (err,) + reps = [r.strip() for r in rep.split(",")] reps = [r for r in reps if len(r)] for r in reps: - assert err != r.lower(), ('error %r corrects to itself amongst others' - % (err,)) + assert err != r.lower(), "error %r corrects to itself amongst others" % (err,) _check_aspell( - r, 'error %s: correction %r' % (err, r), - in_aspell[1], fname, languages[1]) + r, "error %s: correction %r" % (err, r), in_aspell[1], fname, languages[1] + ) # aspell dictionary is case sensitive, so pass the original case into there # we could ignore the case, but that would miss things like days of the # week which we want to be correct reps = [r.lower() for r in reps] - assert len(set(reps)) == len(reps), ('error %s: corrections "%s" are not ' - '(lower-case) unique' % (err, rep)) + assert len(set(reps)) == len( + reps + ), 'error %s: corrections "%s" are not ' "(lower-case) unique" % (err, rep) -@pytest.mark.parametrize('err, rep, match', [ - ('a a', 'bar', 'has whitespace'), - ('a,a', 'bar', 'has a comma'), - ('a', '', 'non-empty'), - ('a', ' bar', 'start with whitespace'), - ('a', ',bar', 'starts with a comma'), - ('a', 'bar,bat', '.*not.*followed by a space'), - ('a', 'bar ', 'trailing space'), - ('a', 'b ,ar', 'contains a whitespace.*followed by a comma'), - ('a', 'bar,', 'single entry.*comma'), - ('a', 'bar, bat', 'must end with trailing ","'), - ('a', 'a, bar,', 'corrects to itself amongst others'), - ('a', 'a', 'corrects to itself'), - ('a', 'bar, Bar,', 'unique'), -]) +@pytest.mark.parametrize( + "err, rep, match", + [ + ("a a", "bar", "has whitespace"), + ("a,a", "bar", "has a comma"), + ("a", "", "non-empty"), + ("a", " bar", "start with whitespace"), + ("a", ",bar", "starts with a comma"), + ("a", "bar,bat", ".*not.*followed by a space"), + ("a", "bar ", "trailing space"), + ("a", "b ,ar", "contains a whitespace.*followed by a comma"), + ("a", "bar,", "single entry.*comma"), + ("a", "bar, bat", 'must end with trailing ","'), + ("a", "a, bar,", "corrects to itself amongst others"), + ("a", "a", "corrects to itself"), + ("a", "bar, Bar,", "unique"), + ], +) def test_error_checking(err: str, rep: str, match: str) -> None: """Test that our error checking works.""" with pytest.raises(AssertionError, match=match): - _check_err_rep(err, rep, (None, None), 'dummy', - (supported_languages, supported_languages)) + _check_err_rep( + err, rep, (None, None), "dummy", (supported_languages, supported_languages) + ) -@pytest.mark.skipif(not spellers, reason='requires aspell-en') -@pytest.mark.parametrize('err, rep, err_aspell, rep_aspell, match', [ - # This doesn't raise any exceptions, so skip for now: - # pytest.param('a', 'uvw, bar,', None, None, 'should be in aspell'), - ('abcdef', 'uvwxyz, bar,', True, None, 'should be in aspell'), - ('a', 'uvwxyz, bar,', False, None, 'should not be in aspell'), - ('a', 'abcdef, uvwxyz,', None, True, 'should be in aspell'), - ('abcdef', 'uvwxyz, bar,', True, True, 'should be in aspell'), - ('abcdef', 'uvwxyz, bar,', False, True, 'should be in aspell'), - ('a', 'bar, back,', None, False, 'should not be in aspell'), - ('a', 'bar, back, Wednesday,', None, False, 'should not be in aspell'), - ('abcdef', 'ghijkl, uvwxyz,', True, False, 'should be in aspell'), - ('abcdef', 'uvwxyz, bar,', False, False, 'should not be in aspell'), - # Multi-word corrections - # One multi-word, both parts - ('a', 'abcdef uvwxyz', None, True, 'should be in aspell'), - ('a', 'bar back', None, False, 'should not be in aspell'), - ('a', 'bar back Wednesday', None, False, 'should not be in aspell'), - # Second multi-word, both parts - ('a', 'bar back, abcdef uvwxyz, bar,', None, True, 'should be in aspell'), - ('a', 'abcdef uvwxyz, bar back, ghijkl,', None, False, 'should not be in aspell'), # noqa: E501 - # One multi-word, second part - ('a', 'bar abcdef', None, True, 'should be in aspell'), - ('a', 'abcdef back', None, False, 'should not be in aspell'), -]) +@pytest.mark.skipif(not spellers, reason="requires aspell-en") +@pytest.mark.parametrize( + "err, rep, err_aspell, rep_aspell, match", + [ + # This doesn't raise any exceptions, so skip for now: + # pytest.param('a', 'uvw, bar,', None, None, 'should be in aspell'), + ("abcdef", "uvwxyz, bar,", True, None, "should be in aspell"), + ("a", "uvwxyz, bar,", False, None, "should not be in aspell"), + ("a", "abcdef, uvwxyz,", None, True, "should be in aspell"), + ("abcdef", "uvwxyz, bar,", True, True, "should be in aspell"), + ("abcdef", "uvwxyz, bar,", False, True, "should be in aspell"), + ("a", "bar, back,", None, False, "should not be in aspell"), + ("a", "bar, back, Wednesday,", None, False, "should not be in aspell"), + ("abcdef", "ghijkl, uvwxyz,", True, False, "should be in aspell"), + ("abcdef", "uvwxyz, bar,", False, False, "should not be in aspell"), + # Multi-word corrections + # One multi-word, both parts + ("a", "abcdef uvwxyz", None, True, "should be in aspell"), + ("a", "bar back", None, False, "should not be in aspell"), + ("a", "bar back Wednesday", None, False, "should not be in aspell"), + # Second multi-word, both parts + ("a", "bar back, abcdef uvwxyz, bar,", None, True, "should be in aspell"), + ( + "a", + "abcdef uvwxyz, bar back, ghijkl,", + None, + False, + "should not be in aspell", + ), # noqa: E501 + # One multi-word, second part + ("a", "bar abcdef", None, True, "should be in aspell"), + ("a", "abcdef back", None, False, "should not be in aspell"), + ], +) def test_error_checking_in_aspell( err: str, rep: str, err_aspell: Optional[bool], rep_aspell: Optional[bool], - match: str + match: str, ) -> None: """Test that our error checking works with aspell.""" with pytest.raises(AssertionError, match=match): _check_err_rep( - err, rep, (err_aspell, rep_aspell), 'dummy', - (supported_languages, supported_languages)) + err, + rep, + (err_aspell, rep_aspell), + "dummy", + (supported_languages, supported_languages), + ) # allow some duplicates, like "m-i-n-i-m-i-s-e", or "c-a-l-c-u-l-a-t-a-b-l-e" # correction in left can appear as typo in right allowed_dups = { - ('dictionary.txt', 'dictionary_code.txt'), - ('dictionary.txt', 'dictionary_en-GB_to_en-US.txt'), - ('dictionary.txt', 'dictionary_names.txt'), - ('dictionary.txt', 'dictionary_rare.txt'), - ('dictionary.txt', 'dictionary_usage.txt'), - ('dictionary_code.txt', 'dictionary_rare.txt'), - ('dictionary_rare.txt', 'dictionary_usage.txt'), + ("dictionary.txt", "dictionary_code.txt"), + ("dictionary.txt", "dictionary_en-GB_to_en-US.txt"), + ("dictionary.txt", "dictionary_names.txt"), + ("dictionary.txt", "dictionary_rare.txt"), + ("dictionary.txt", "dictionary_usage.txt"), + ("dictionary_code.txt", "dictionary_rare.txt"), + ("dictionary_rare.txt", "dictionary_usage.txt"), } @fname_params -@pytest.mark.dependency(name='dictionary loop') +@pytest.mark.dependency(name="dictionary loop") def test_dictionary_looping( fname: str, in_aspell: Tuple[bool, bool], @@ -236,43 +259,55 @@ def test_dictionary_looping( """Test that all dictionary entries are valid.""" this_err_dict = {} short_fname = op.basename(fname) - with open(fname, 'rb') as fid: + with open(fname, "rb") as fid: for line in fid: - err, rep = line.decode('utf-8').split('->') + err, rep = line.decode("utf-8").split("->") err = err.lower() - assert err not in this_err_dict, \ - 'error %r already exists in %s' % (err, short_fname) - rep = rep.rstrip('\n') - reps = [r.strip() for r in rep.lower().split(',')] + assert err not in this_err_dict, "error %r already exists in %s" % ( + err, + short_fname, + ) + rep = rep.rstrip("\n") + reps = [r.strip() for r in rep.lower().split(",")] reps = [r for r in reps if len(r)] this_err_dict[err] = reps # 1. check the dict against itself (diagonal) for err in this_err_dict: for r in this_err_dict[err]: - assert r not in this_err_dict, \ - ('error %s: correction %s is an error itself in the same ' - 'dictionary file %s' % (err, r, short_fname)) + assert r not in this_err_dict, ( + "error %s: correction %s is an error itself in the same " + "dictionary file %s" % (err, r, short_fname) + ) pair = (short_fname, short_fname) assert pair not in global_pairs 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, \ - ('error %r in dictionary %s already exists in dictionary ' - '%s' % (err, short_fname, other_fname)) + assert ( + err not in other_err_dict + ), "error %r in dictionary %s already exists in dictionary %s" % ( + err, + short_fname, + other_fname, + ) # 2. check corrections in this dict against other dicts (upper) pair = (short_fname, other_fname) if pair not in allowed_dups: for err in this_err_dict: - assert err not in other_err_dict, \ - ('error %r in dictionary %s already exists in dictionary ' - '%s' % (err, short_fname, other_fname)) + assert ( + err not in other_err_dict + ), "error %r in dictionary %s already exists in dictionary %s" % ( + err, + short_fname, + other_fname, + ) for r in this_err_dict[err]: - assert r not in other_err_dict, \ - ('error %s: correction %s from dictionary %s is an ' - 'error itself in dictionary %s' - % (err, r, short_fname, other_fname)) + assert r not in other_err_dict, ( + "error %s: correction %s from dictionary %s is an " + "error itself in dictionary %s" + % (err, r, short_fname, other_fname) + ) assert pair not in global_pairs global_pairs.add(pair) # 3. check corrections in other dicts against this dict (lower) @@ -280,16 +315,17 @@ def test_dictionary_looping( if pair not in allowed_dups: for err in other_err_dict: for r in other_err_dict[err]: - assert r not in this_err_dict, \ - ('error %s: correction %s from dictionary %s is an ' - 'error itself in dictionary %s' - % (err, r, other_fname, short_fname)) + assert r not in this_err_dict, ( + "error %s: correction %s from dictionary %s is an " + "error itself in dictionary %s" + % (err, r, other_fname, short_fname) + ) assert pair not in global_pairs global_pairs.add(pair) global_err_dicts[short_fname] = this_err_dict -@pytest.mark.dependency(depends=['dictionary loop']) +@pytest.mark.dependency(depends=["dictionary loop"]) def test_ran_all() -> None: """Test that all pairwise tests ran.""" for f1, _, _ in _fnames_in_aspell: diff --git a/pyproject.toml b/pyproject.toml index 4c45d3de38..d3fa46e4d2 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -77,6 +77,9 @@ codespell_lib = [ [tool.check-manifest] ignore = ["codespell_lib/_version.py"] +[tool.isort] +profile = "black" + [tool.mypy] pretty = true show_error_codes = true diff --git a/setup.cfg b/setup.cfg index ae7e595a3b..8dd399ab55 100644 --- a/setup.cfg +++ b/setup.cfg @@ -1,3 +1,3 @@ [flake8] -exclude = build, ci-helpers -ignore = W503 +max-line-length = 88 +extend-ignore = E203 From 2c4d32bea37e57752a26186cc1658449370b8ec8 Mon Sep 17 00:00:00 2001 From: Jon Dufresne Date: Fri, 11 Nov 2022 11:52:06 -0800 Subject: [PATCH 071/302] Add .git-blame-ignore-revs --- .git-blame-ignore-revs | 1 + MANIFEST.in | 1 + 2 files changed, 2 insertions(+) create mode 100644 .git-blame-ignore-revs diff --git a/.git-blame-ignore-revs b/.git-blame-ignore-revs new file mode 100644 index 0000000000..cbc4221a43 --- /dev/null +++ b/.git-blame-ignore-revs @@ -0,0 +1 @@ +a7d80cf9a40ca7759f62da297cc53919b6616dca diff --git a/MANIFEST.in b/MANIFEST.in index e467a2b242..7809a71021 100644 --- a/MANIFEST.in +++ b/MANIFEST.in @@ -6,6 +6,7 @@ include COPYING include bin/codespell exclude *.yml *.yaml exclude .coveragerc +exclude .git-blame-ignore-revs exclude example example/* snap snap/* tools tools/* exclude Makefile exclude codespell.1.include From 7953a0d8505f9ccba9d1f1d7269fcf3a18bd7772 Mon Sep 17 00:00:00 2001 From: Stefan Kangas Date: Thu, 17 Nov 2022 16:00:26 +0100 Subject: [PATCH 072/302] Move "upto" to code dictionary --- codespell_lib/data/dictionary.txt | 1 - codespell_lib/data/dictionary_code.txt | 1 + 2 files changed, 1 insertion(+), 1 deletion(-) diff --git a/codespell_lib/data/dictionary.txt b/codespell_lib/data/dictionary.txt index 5e14b0eea2..13ebd0d207 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -36075,7 +36075,6 @@ uptadeable->updatable uptdate->update uptim->uptime uptions->options -upto->up to uptodate->up-to-date uptodateness->up-to-dateness uptream->upstream diff --git a/codespell_lib/data/dictionary_code.txt b/codespell_lib/data/dictionary_code.txt index 174a414c70..dcd8a183b1 100644 --- a/codespell_lib/data/dictionary_code.txt +++ b/codespell_lib/data/dictionary_code.txt @@ -71,6 +71,7 @@ udate->update, date, udates->updates, dates, uint->unit uis->is, use, +upto->up to usesd->used, uses, wan->want warmup->warm up, warm-up, From acb7189da435cd7250ea41716b9d7260e15387f4 Mon Sep 17 00:00:00 2001 From: Jon Dufresne Date: Thu, 17 Nov 2022 07:11:26 -0800 Subject: [PATCH 073/302] Document support for Python versions in pyproject.toml (#2379) --- pyproject.toml | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/pyproject.toml b/pyproject.toml index 4c45d3de38..74dd4e5d9d 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -21,6 +21,11 @@ classifiers = [ "Programming Language :: Python", "Programming Language :: Python :: 3", "Programming Language :: Python :: 3 :: Only", + "Programming Language :: Python :: 3.7", + "Programming Language :: Python :: 3.8", + "Programming Language :: Python :: 3.9", + "Programming Language :: Python :: 3.10", + "Programming Language :: Python :: 3.11", ] dependencies = [] dynamic = ["version"] From 8dec957d1932435ec1e05a664cc2718171035172 Mon Sep 17 00:00:00 2001 From: Stefan Kangas Date: Thu, 17 Nov 2022 13:50:01 +0100 Subject: [PATCH 074/302] Move sudo-like command name "doas" to code dictionary --- codespell_lib/data/dictionary.txt | 1 - codespell_lib/data/dictionary_code.txt | 1 + 2 files changed, 1 insertion(+), 1 deletion(-) diff --git a/codespell_lib/data/dictionary.txt b/codespell_lib/data/dictionary.txt index 5e14b0eea2..b85f2233f0 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -12156,7 +12156,6 @@ doalog->dialog doamin->domain, dopamine, doamine->dopamine, domain, doamins->domains -doas->does doasn't->doesn't doble->double dobled->doubled diff --git a/codespell_lib/data/dictionary_code.txt b/codespell_lib/data/dictionary_code.txt index 174a414c70..4e44c1a581 100644 --- a/codespell_lib/data/dictionary_code.txt +++ b/codespell_lib/data/dictionary_code.txt @@ -14,6 +14,7 @@ copyable->copiable creat->create, crate, define'd->defined deque->dequeue +doas->does, do as, dof->of, doff, dont->don't dosclose->disclose From 93ddc490df69203c9162a8d5d94a1f8d7010b83d Mon Sep 17 00:00:00 2001 From: Janosh Riebesell Date: Sat, 19 Nov 2022 03:52:09 -0800 Subject: [PATCH 075/302] enthapl(ies|y)->enthalp(ies|y) (#2590) --- 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 2d85e4ffa6..3921440802 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -13309,6 +13309,8 @@ enterprices->enterprises entery->entry enteties->entities entety->entity +enthaplies->enthalpies +enthaply->enthalpy enthousiasm->enthusiasm enthusiam->enthusiasm enthusiatic->enthusiastic From 2cbaef3de7511e2031615653ef33c6d81c7903d1 Mon Sep 17 00:00:00 2001 From: Christian Fischer Date: Sat, 19 Nov 2022 13:13:12 +0100 Subject: [PATCH 076/302] Add componoent(s)->component(s) (#2594) --- 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 3921440802..e4ccb2ea5c 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -7232,6 +7232,8 @@ componentes->components componet->component componets->components componnents->components +componoent->component +componoents->components componsites->composites compontent->component compontents->components From 055ed81a6b7b1c16e79831d94fbde014e5834b18 Mon Sep 17 00:00:00 2001 From: Stefan Kangas Date: Sat, 19 Nov 2022 15:50:20 +0100 Subject: [PATCH 077/302] Move "spawnve" to code dictionary --- codespell_lib/data/dictionary.txt | 1 - codespell_lib/data/dictionary_code.txt | 1 + 2 files changed, 1 insertion(+), 1 deletion(-) diff --git a/codespell_lib/data/dictionary.txt b/codespell_lib/data/dictionary.txt index 5e14b0eea2..84c7a5a1c1 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -31456,7 +31456,6 @@ spaw->spawn spawed->spawned spawing->spawning spawining->spawning -spawnve->spawn spaws->spawns spcae->space spcaed->spaced diff --git a/codespell_lib/data/dictionary_code.txt b/codespell_lib/data/dictionary_code.txt index 174a414c70..ebbc735c15 100644 --- a/codespell_lib/data/dictionary_code.txt +++ b/codespell_lib/data/dictionary_code.txt @@ -53,6 +53,7 @@ seeked->sought sinc->sync, sink, since, sincs->syncs, sinks, since, snd->send, and, sound, +spawnve->spawn stdio->studio stdios->studios stoll->still From 845272360348500c8b520db4520b7d3e4c95e7e4 Mon Sep 17 00:00:00 2001 From: Stefan Kangas Date: Sun, 20 Nov 2022 08:46:43 +0100 Subject: [PATCH 078/302] Move "MSDOS" to code dictionary --- codespell_lib/data/dictionary.txt | 1 - codespell_lib/data/dictionary_code.txt | 1 + 2 files changed, 1 insertion(+), 1 deletion(-) diff --git a/codespell_lib/data/dictionary.txt b/codespell_lib/data/dictionary.txt index 957c900609..04a2c3c600 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -22204,7 +22204,6 @@ msbuld->MSBuild msbulds->MSBuild's msbulid->MSBuild msbulids->MSBuild's -MSDOS->MS-DOS mssing->missing msssge->message mthod->method diff --git a/codespell_lib/data/dictionary_code.txt b/codespell_lib/data/dictionary_code.txt index 58306d409f..2c92b49669 100644 --- a/codespell_lib/data/dictionary_code.txt +++ b/codespell_lib/data/dictionary_code.txt @@ -34,6 +34,7 @@ jupyter->Jupiter keyserver->key server lateset->latest movei->movie +MSDOS->MS-DOS musl->must mut->must, mutt, moot, nmake->make From 8e855f48d630e319b42c3275d5e3bb22ab0d3608 Mon Sep 17 00:00:00 2001 From: Stefan Kangas Date: Wed, 23 Nov 2022 08:32:21 +0100 Subject: [PATCH 079/302] Improve format of CC BY-SA 3.0 license link --- README.rst | 5 +---- 1 file changed, 1 insertion(+), 4 deletions(-) diff --git a/README.rst b/README.rst index 3de51b834c..aef5c67234 100644 --- a/README.rst +++ b/README.rst @@ -260,7 +260,4 @@ with the following terms: .. _GPL v2: http://www.gnu.org/licenses/old-licenses/gpl-2.0.html -``dictionary.txt`` and the other ``dictionary_*.txt`` files are a derived work of -English Wikipedia and are released under the Creative Commons -Attribution-Share-Alike License 3.0 -http://creativecommons.org/licenses/by-sa/3.0/ +``dictionary.txt`` and the other ``dictionary_*.txt`` files are derivative works of English Wikipedia and are released under the `Creative Commons Attribution-Share-Alike License 3.0 `_. From 3a00e7a5a200c9564abcedc4834b9d569fa233cc Mon Sep 17 00:00:00 2001 From: Janosh Riebesell Date: Wed, 16 Nov 2022 13:58:58 -0800 Subject: [PATCH 080/302] {assymthotic, assymtotic}->asymptotic --- 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 04a2c3c600..cc1d8452b9 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -3251,6 +3251,8 @@ assymptote->asymptote assymptotes->asymptotes assymptotic->asymptotic assymptotically->asymptotically +assymthotic->asymptotic +assymtotic->asymptotic asterices->asterisks asteriks->asterisk, asterisks, asteriod->asteroid From 28ea98b770b3d664a79d269c0f821f0a1ed2ff46 Mon Sep 17 00:00:00 2001 From: Janosh Riebesell Date: Fri, 25 Nov 2022 07:27:19 -0800 Subject: [PATCH 081/302] add PR suggestion --- 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 cc1d8452b9..9e343a07cf 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -3252,7 +3252,10 @@ assymptotes->asymptotes assymptotic->asymptotic assymptotically->asymptotically assymthotic->asymptotic +assymtote->asymptote +assymtotes->asymptotes assymtotic->asymptotic +assymtotically->asymptotically asterices->asterisks asteriks->asterisk, asterisks, asteriod->asteroid From 041bd02a1c15a13f1842b173dbc6d235cee593a1 Mon Sep 17 00:00:00 2001 From: Jon Dufresne Date: Sun, 27 Nov 2022 07:52:40 -0800 Subject: [PATCH 082/302] Simplify some file reading in tests by opening in text mode --- codespell_lib/tests/test_basic.py | 4 ++-- codespell_lib/tests/test_dictionary.py | 8 ++++---- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/codespell_lib/tests/test_basic.py b/codespell_lib/tests/test_basic.py index 4a04e2b395..a6ec39286e 100644 --- a/codespell_lib/tests/test_basic.py +++ b/codespell_lib/tests/test_basic.py @@ -555,8 +555,8 @@ def test_case_handling( code, _, stderr = result assert code == 0 assert "FIXED" in stderr - with open(f.name, "rb") as fp: - assert fp.read().decode("utf-8") == "this has an ASCII error" + with open(f.name, encoding="utf-8") as fp: + assert fp.read() == "this has an ASCII error" def _helper_test_case_handling_in_fixes( diff --git a/codespell_lib/tests/test_dictionary.py b/codespell_lib/tests/test_dictionary.py index 448c07ac4b..56c373e311 100644 --- a/codespell_lib/tests/test_dictionary.py +++ b/codespell_lib/tests/test_dictionary.py @@ -57,9 +57,9 @@ def test_dictionary_formatting( ) -> None: """Test that all dictionary entries are valid.""" errors = [] - with open(fname, "rb") as fid: + with open(fname, encoding="utf-8") as fid: for line in fid: - err, rep = line.decode("utf-8").split("->") + err, rep = line.split("->") err = err.lower() rep = rep.rstrip("\n") try: @@ -259,9 +259,9 @@ def test_dictionary_looping( """Test that all dictionary entries are valid.""" this_err_dict = {} short_fname = op.basename(fname) - with open(fname, "rb") as fid: + with open(fname, encoding="utf-8") as fid: for line in fid: - err, rep = line.decode("utf-8").split("->") + err, rep = line.split("->") err = err.lower() assert err not in this_err_dict, "error %r already exists in %s" % ( err, From ba4e71d9ecc0b48946daac92430d73e57703c0b4 Mon Sep 17 00:00:00 2001 From: Jon Dufresne Date: Mon, 28 Nov 2022 05:52:54 -0800 Subject: [PATCH 083/302] Remove setup.py (#2626) With pyproject.toml, setup.py becomes unnecessary. Future versions of setuptools (and Python packaging in general) will deprecate the file. The command `setup.py check` was replaced by `twine check` which serves a similar role. setuptools is still a dependency of the build, just doesn't require setup.py. Fixes #2606 --- .github/workflows/codespell-private.yml | 2 +- Makefile | 11 +++++++---- appveyor.yml | 2 +- pyproject.toml | 1 - setup.py | 6 ------ 5 files changed, 9 insertions(+), 13 deletions(-) delete mode 100755 setup.py diff --git a/.github/workflows/codespell-private.yml b/.github/workflows/codespell-private.yml index 88dd8aa2d1..9aee75d231 100644 --- a/.github/workflows/codespell-private.yml +++ b/.github/workflows/codespell-private.yml @@ -34,7 +34,7 @@ jobs: run: | python --version # just to check pip install -U pip wheel # upgrade to latest pip find 3.5 wheels; wheel to avoid errors - pip install --upgrade chardet "setuptools!=47.2.0" docutils setuptools_scm[toml] + pip install --upgrade chardet "setuptools!=47.2.0" docutils setuptools_scm[toml] twine pip install aspell-python-py3 pip install -e ".[dev]" # install the codespell dev packages - run: codespell --help diff --git a/Makefile b/Makefile index 1757974280..d3beed1c45 100644 --- a/Makefile +++ b/Makefile @@ -2,11 +2,11 @@ SORT_ARGS := -f -b DICTIONARIES := codespell_lib/data/dictionary*.txt -PHONY := all check check-dictionaries sort-dictionaries trim-dictionaries check-dictionary sort-dictionary trim-dictionary check-manifest check-distutils flake8 pytest pypi clean +PHONY := all check check-dictionaries sort-dictionaries trim-dictionaries check-dictionary sort-dictionary trim-dictionary check-manifest check-dist flake8 pytest pypi clean all: check-dictionaries codespell.1 -check: check-dictionaries check-manifest check-distutils flake8 pytest +check: check-dictionaries check-manifest check-dist flake8 pytest check-dictionary: check-dictionaries sort-dictionary: sort-dictionaries @@ -47,8 +47,11 @@ trim-dictionaries: check-manifest: check-manifest --no-build-isolation -check-distutils: - python setup.py check --restructuredtext --strict +check-dist: + $(eval TMP := $(shell mktemp -d)) + python -m build -o $(TMP) + twine check --strict $(TMP)/* + rm -rf $(TMP) flake8: flake8 diff --git a/appveyor.yml b/appveyor.yml index 79740cac8c..920b3dd814 100644 --- a/appveyor.yml +++ b/appveyor.yml @@ -13,9 +13,9 @@ cache: install: - "SET PATH=%PYTHON%;%PYTHON%\\Scripts;%PATH%" + - "python.exe -m pip install -U pip" - "pip install codecov chardet setuptools" - "pip install -e \".[dev]\"" # install the codespell dev packages - - "python setup.py develop" build: false # Not a C# project, build stuff at the test step instead. diff --git a/pyproject.toml b/pyproject.toml index ed5fbc0dcc..834660b5c3 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -49,7 +49,6 @@ types = [ "mypy", "pytest", "types-chardet", - "types-setuptools", ] [project.scripts] diff --git a/setup.py b/setup.py deleted file mode 100755 index 4fe2f90ac6..0000000000 --- a/setup.py +++ /dev/null @@ -1,6 +0,0 @@ -#! /usr/bin/env python - -from setuptools import setup - -if __name__ == "__main__": - setup() From 8a68c1985dc9a6193bf5f008adfb07628ed354dc Mon Sep 17 00:00:00 2001 From: Waldir Pimenta Date: Mon, 28 Nov 2022 14:03:23 +0000 Subject: [PATCH 084/302] Normalize code block indicators in README (#2621) --- README.rst | 80 +++++++++++++++++++++++++++++++++++++------------- pyproject.toml | 1 + 2 files changed, 61 insertions(+), 20 deletions(-) diff --git a/README.rst b/README.rst index aef5c67234..69e9fee088 100644 --- a/README.rst +++ b/README.rst @@ -25,7 +25,9 @@ Python 3.7 or above. Installation ------------ -You can use ``pip`` to install codespell with e.g.:: +You can use ``pip`` to install codespell with e.g.: + +.. code-block:: sh pip install codespell @@ -34,24 +36,34 @@ Usage For more in depth info please check usage with ``codespell -h``. -Some noteworthy flags:: +Some noteworthy flags: + +.. code-block:: sh codespell -w, --write-changes -The ``-w`` flag will actually implement the changes recommended by codespell. Not running with ``-w`` flag is the same as with doing a dry run. It is recommended to run this with the ``-i`` or ``--interactive`` flag.:: +The ``-w`` flag will actually implement the changes recommended by codespell. Not running with ``-w`` flag is the same as with doing a dry run. It is recommended to run this with the ``-i`` or ``--interactive`` flag. + +.. code-block:: sh codespell -I FILE, --ignore-words=FILE -The ``-I`` flag can be used for a list of certain words to allow that are in the codespell dictionaries. The format of the file is one word per line. Invoke using: ``codespell -I path/to/file.txt`` to execute codespell referencing said list of allowed words. **Important note:** The list passed to ``-I`` is case-sensitive based on how it is listed in the codespell dictionaries. :: +The ``-I`` flag can be used for a list of certain words to allow that are in the codespell dictionaries. The format of the file is one word per line. Invoke using: ``codespell -I path/to/file.txt`` to execute codespell referencing said list of allowed words. **Important note:** The list passed to ``-I`` is case-sensitive based on how it is listed in the codespell dictionaries. + +.. code-block:: sh codespell -L word1,word2,word3,word4 -The ``-L`` flag can be used to allow certain words that are comma-separated placed immediately after it. **Important note:** The list passed to ``-L`` is case-sensitive based on how it is listed in the codespell dictionaries. :: +The ``-L`` flag can be used to allow certain words that are comma-separated placed immediately after it. **Important note:** The list passed to ``-L`` is case-sensitive based on how it is listed in the codespell dictionaries. + +.. code-block:: sh codespell -x FILE, --exclude-file=FILE Ignore whole lines that match those in ``FILE``. The lines in ``FILE`` should match the to-be-excluded lines exactly. +.. code-block:: sh + codespell -S, --skip= Comma-separated list of files to skip. It accepts globs as well. Examples: @@ -61,12 +73,16 @@ Comma-separated list of files to skip. It accepts globs as well. Examples: * to skip directories, invoke ``codespell --skip="./src/3rd-Party,./src/Test"`` -Useful commands:: +Useful commands: + +.. code-block:: sh codespell -d -q 3 --skip="*.po,*.ts,./src/3rdParty,./src/Test" List all typos found except translation files and some directories. -Display them without terminal colors and with a quiet level of 3. :: +Display them without terminal colors and with a quiet level of 3. + +.. code-block:: sh codespell -i 3 -w @@ -78,7 +94,9 @@ after applying them in projects like Linux Kernel, EFL, oFono among others. You can provide your own version of the dictionary, but patches for new/different entries are very welcome. -Want to know if a word you're proposing exists in codespell already? It is possible to test a word against the current set dictionaries that exist in ``codespell_lib/data/dictionary*.txt`` via:: +Want to know if a word you're proposing exists in codespell already? It is possible to test a word against the current set dictionaries that exist in ``codespell_lib/data/dictionary*.txt`` via: + +.. code-block:: sh echo "word" | codespell - echo "1stword,2ndword" | codespell - @@ -93,7 +111,9 @@ Command line options can also be specified in a config file. When running ``codespell``, it will check in the current directory for a file named ``setup.cfg`` or ``.codespellrc`` (or a file specified via ``--config``), containing an entry named ``[codespell]``. Each command line argument can -be specified in this file (without the preceding dashes), for example:: +be specified in this file (without the preceding dashes), for example: + +.. code-block:: ini [codespell] skip = *.po,*.ts,./src/3rdParty,./src/Test @@ -103,14 +123,18 @@ be specified in this file (without the preceding dashes), for example:: Codespell will also check in the current directory for a ``pyproject.toml`` (or a path can be specified via ``--toml ``) file, and the ``[tool.codespell]`` entry will be used as long as the tomli_ package -is installed, for example:: +is installed, for example: + +.. code-block:: toml [tool.codespell] skip = '*.po,*.ts,./src/3rdParty,./src/Test' count = '' quiet-level = 3 -These are both equivalent to running:: +These are both equivalent to running: + +.. code-block:: sh codespell --quiet-level 3 --count --skip "*.po,*.ts,./src/3rdParty,./src/Test" @@ -167,15 +191,21 @@ applied directly, but should instead be manually inspected. E.g.: Development Setup ----------------- -As suggested in the `Python Packaging User Guide`_, ensure ``pip``, ``setuptools``, and ``wheel`` are up to date before installing from source. Specifically you will need recent versions of ``setuptools`` and ``setuptools_scm``:: +As suggested in the `Python Packaging User Guide`_, ensure ``pip``, ``setuptools``, and ``wheel`` are up to date before installing from source. Specifically you will need recent versions of ``setuptools`` and ``setuptools_scm``: + +.. code-block:: sh pip install --upgrade pip setuptools setuptools_scm wheel -You can install required dependencies for development by running the following within a checkout of the codespell source:: +You can install required dependencies for development by running the following within a checkout of the codespell source: + +.. code-block:: sh pip install -e ".[dev]" -To run tests against the codebase run:: +To run tests against the codebase run: + +.. code-block:: sh make check @@ -190,11 +220,15 @@ If you have a suggested typo that you'd like to see merged please follow these s 2. Choose the correct dictionary file to add your typo to. See `codespell --help` for explanations of the different dictionaries. -3. Sort the dictionaries. This is done by invoking (in the top level directory of ``codespell/``):: +3. Sort the dictionaries. This is done by invoking (in the top level directory of ``codespell/``): + + .. code-block:: sh make check-dictionaries - If the make script finds that you need to sort a dictionary, please then run:: + If the make script finds that you need to sort a dictionary, please then run: + + .. code-block:: sh make sort-dictionaries @@ -208,15 +242,19 @@ If you have a suggested typo that you'd like to see merged please follow these s Updating -------- -To stay current with codespell developments it is possible to build codespell from GitHub via:: +To stay current with codespell developments it is possible to build codespell from GitHub via: + +.. code-block:: sh pip install --upgrade git+https://github.com/codespell-project/codespell.git **Important Notes:** -* Sometimes installing via ``pip`` will complain about permissions. If this is the case then run with :: +* Sometimes installing via ``pip`` will complain about permissions. If this is the case then run with: - pip install --user --upgrade git+https://github.com/codespell-project/codespell.git + .. code-block:: sh + + pip install --user --upgrade git+https://github.com/codespell-project/codespell.git * It has been reported that after installing from ``pip``, codespell can't be located. Please check the $PATH variable to see if ``~/.local/bin`` is present. If it isn't then add it to your path. * If you decide to install via ``pip`` then be sure to remove any previously installed versions of codespell (via your platform's preferred app manager). @@ -224,7 +262,9 @@ To stay current with codespell developments it is possible to build codespell fr Updating the dictionaries ------------------------- -In the scenario where the user prefers not to follow the development version of codespell yet still opts to benefit from the frequently updated dictionary files, we recommend running a simple set of commands to achieve this :: +In the scenario where the user prefers not to follow the development version of codespell yet still opts to benefit from the frequently updated dictionary files, we recommend running a simple set of commands to achieve this: + +.. code-block:: sh wget https://raw.githubusercontent.com/codespell-project/codespell/master/codespell_lib/data/dictionary.txt codespell -D dictionary.txt diff --git a/pyproject.toml b/pyproject.toml index 834660b5c3..32c9e55404 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -37,6 +37,7 @@ dev = [ "pytest", "pytest-cov", "pytest-dependency", + "Pygments", "tomli" ] hard-encoding-detection = [ From 67bc09e8720febe7ee2e0ead1e89bb5c8783f8af Mon Sep 17 00:00:00 2001 From: Dimitri Papadopoulos Orfanos <3234522+DimitriPapadopoulos@users.noreply.github.com> Date: Mon, 28 Nov 2022 15:06:15 +0100 Subject: [PATCH 085/302] PEP 517 (#2595) --- MANIFEST.in | 1 - Makefile | 4 ++-- bin/codespell | 7 ------- 3 files changed, 2 insertions(+), 10 deletions(-) delete mode 100755 bin/codespell diff --git a/MANIFEST.in b/MANIFEST.in index 7809a71021..d4cf114e40 100644 --- a/MANIFEST.in +++ b/MANIFEST.in @@ -3,7 +3,6 @@ recursive-include codespell_lib *.py include codespell_lib/data/dictionary*.txt include codespell_lib/data/linux-kernel.exclude include COPYING -include bin/codespell exclude *.yml *.yaml exclude .coveragerc exclude .git-blame-ignore-revs diff --git a/Makefile b/Makefile index d3beed1c45..fbe9814649 100644 --- a/Makefile +++ b/Makefile @@ -12,8 +12,8 @@ check-dictionary: check-dictionaries sort-dictionary: sort-dictionaries trim-dictionary: trim-dictionaries -codespell.1: codespell.1.include bin/codespell Makefile - PYTHONPATH=. help2man ./bin/codespell --include codespell.1.include --no-info --output codespell.1 +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: diff --git a/bin/codespell b/bin/codespell deleted file mode 100755 index b08fff12ac..0000000000 --- a/bin/codespell +++ /dev/null @@ -1,7 +0,0 @@ -#!/usr/bin/env python3 - -import sys - -if __name__ == '__main__': - import codespell_lib - sys.exit(codespell_lib.main(*sys.argv[1:])) From 21bca4e8ed8d582562a96ef04c3ad033786ab6c2 Mon Sep 17 00:00:00 2001 From: Adrien Berchet Date: Tue, 29 Nov 2022 10:32:52 +0100 Subject: [PATCH 086/302] Add spelling correction for 'alhpa' --- 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 9e343a07cf..4da964d613 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -1488,6 +1488,7 @@ alhapetically->alphabetically alhapeticaly->alphabetically alhapets->alphabets alhough->although +alhpa->alpha aliagn->align aliasas->aliases aliase->aliases, alias, From cef86165e57081ad8b7cdc27dab72e149b8374b6 Mon Sep 17 00:00:00 2001 From: Adrien Berchet Date: Tue, 29 Nov 2022 16:27:39 +0100 Subject: [PATCH 087/302] Add similar corrections for alphabet --- 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 4da964d613..ceb0302122 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -1489,6 +1489,11 @@ alhapeticaly->alphabetically alhapets->alphabets alhough->although alhpa->alpha +alhpabet->alphabet +alhpabetical->alphabetical +alhpabetically->alphabetically +alhpabeticaly->alphabetically +alhpabets->alphabets aliagn->align aliasas->aliases aliase->aliases, alias, From cff8215d4fd167e7bfc754df1126c4d7a09b4b50 Mon Sep 17 00:00:00 2001 From: Jon Dufresne Date: Mon, 5 Dec 2022 10:55:59 -0800 Subject: [PATCH 088/302] Move Windows CI from AppVeyor to GitHub Actions (#2628) --- .github/workflows/codespell-windows.yml | 24 +++++++++++++++++ appveyor.yml | 35 ------------------------- codespell_lib/tests/test_basic.py | 13 ++++++--- 3 files changed, 33 insertions(+), 39 deletions(-) create mode 100644 .github/workflows/codespell-windows.yml delete mode 100644 appveyor.yml diff --git a/.github/workflows/codespell-windows.yml b/.github/workflows/codespell-windows.yml new file mode 100644 index 0000000000..398cde0a7b --- /dev/null +++ b/.github/workflows/codespell-windows.yml @@ -0,0 +1,24 @@ +name: Test Codespell Windows +on: + - push + - pull_request +jobs: + test-windows: + name: Test Windows + runs-on: windows-latest + steps: + - uses: actions/checkout@v3 + - name: Setup python + uses: actions/setup-python@v4 + with: + python-version: '3.7' + - name: Install dependencies + run: | + python --version + pip install -U pip + pip install chardet setuptools + pip install -e .[dev] + - run: codespell --help + - run: codespell --version + - run: pytest codespell_lib + - uses: codecov/codecov-action@v3 diff --git a/appveyor.yml b/appveyor.yml deleted file mode 100644 index 920b3dd814..0000000000 --- a/appveyor.yml +++ /dev/null @@ -1,35 +0,0 @@ -clone_depth: 50 - -environment: - matrix: - - PYTHON: C:\Python37-x64 - PYTHON_VERSION: 3.7 - PYTHON_ARCH: 64 - -cache: - # Cache downloaded pip packages and built wheels. - - '%LOCALAPPDATA%\pip\Cache\http' - - '%LOCALAPPDATA%\pip\Cache\wheels' - -install: - - "SET PATH=%PYTHON%;%PYTHON%\\Scripts;%PATH%" - - "python.exe -m pip install -U pip" - - "pip install codecov chardet setuptools" - - "pip install -e \".[dev]\"" # install the codespell dev packages - -build: false # Not a C# project, build stuff at the test step instead. - -test_script: - - "codespell --help" - - "flake8" - - "pytest codespell_lib" - -on_success: - - "codecov" - # Remove old or huge cache files to hopefully not exceed the 1GB cache limit. - # (adapted from PyInstaller) - - C:\cygwin\bin\find "%LOCALAPPDATA%\pip" -type f -mtime +360 -delete - - C:\cygwin\bin\find "%LOCALAPPDATA%\pip" -type f -size +10M -delete - - C:\cygwin\bin\find "%LOCALAPPDATA%\pip" -empty -delete - # Show size of cache - - C:\cygwin\bin\du -hs "%LOCALAPPDATA%\pip\Cache" diff --git a/codespell_lib/tests/test_basic.py b/codespell_lib/tests/test_basic.py index a6ec39286e..ae4c29949a 100644 --- a/codespell_lib/tests/test_basic.py +++ b/codespell_lib/tests/test_basic.py @@ -514,10 +514,15 @@ def test_check_hidden( assert cs.main("--check-hidden", d) == 2 assert cs.main("--check-hidden", "--check-filenames", d) == 5 # check again with a relative path - rel = op.relpath(d) - assert cs.main(rel) == 0 - assert cs.main("--check-hidden", rel) == 2 - assert cs.main("--check-hidden", "--check-filenames", rel) == 5 + try: + rel = op.relpath(d) + except ValueError: + # Windows: path is on mount 'C:', start on mount 'D:' + pass + else: + assert cs.main(rel) == 0 + assert cs.main("--check-hidden", rel) == 2 + assert cs.main("--check-hidden", "--check-filenames", rel) == 5 # hidden subdirectory assert cs.main(d) == 0 assert cs.main("--check-hidden", d) == 2 From 063fc5b1d3b5eba76e72e0080fd52f6b9879becd Mon Sep 17 00:00:00 2001 From: Stefan Kangas Date: Tue, 6 Dec 2022 16:51:34 +0100 Subject: [PATCH 089/302] Add "token" as alternative for "toke" --- 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 b4c24a1a1e..738d397734 100644 --- a/codespell_lib/data/dictionary_rare.txt +++ b/codespell_lib/data/dictionary_rare.txt @@ -176,7 +176,7 @@ theses->these, thesis, thur->their tittle->title tittles->title -toke->took +toke->token, took, tread->thread, treat, trough->through unknow->unknown From 25227f203012325372cb11a828cf9bd475671b21 Mon Sep 17 00:00:00 2001 From: Christian Fischer Date: Tue, 6 Dec 2022 16:10:55 +0100 Subject: [PATCH 090/302] Add spelling corrections for version. --- 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 ceb0302122..299fe3a84e 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -36465,7 +36465,9 @@ verrical->vertical verry->very vershin->version versin->version +versino->version versinos->versions +versins->versions versio->version versiob->version versioed->versioned From 1615b83f228e0c49090a3ef932e2f871564b013c Mon Sep 17 00:00:00 2001 From: Matthew Feickert Date: Tue, 6 Dec 2022 18:41:03 -0600 Subject: [PATCH 091/302] feat: Add cataalogue->catalogue to dictionary Motivated by https://gitlab.cern.ch/recast-atlas/docs/-/merge_requests/50 --- 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 299fe3a84e..3fd227ac5a 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -5510,6 +5510,7 @@ casues->causes casuing->causing casulaties->casualties casulaty->casualty +cataalogue->catalogue catagorie->category, categories, catagories->categories catagorization->categorization From 9426f106523f13a006250f9cd0a51d361af6c394 Mon Sep 17 00:00:00 2001 From: Jon Dufresne Date: Sat, 26 Nov 2022 09:09:35 -0800 Subject: [PATCH 092/302] Add several spelling corrections found in personal projects The misspellings were all discovered in personal projects (or are variations of a discovered misspellings). --- codespell_lib/data/dictionary.txt | 82 +++++++++++++++++++++++++- codespell_lib/data/dictionary_rare.txt | 4 ++ 2 files changed, 85 insertions(+), 1 deletion(-) diff --git a/codespell_lib/data/dictionary.txt b/codespell_lib/data/dictionary.txt index 3fd227ac5a..fe9d251f53 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -22,6 +22,8 @@ aaproximately->approximately aaproximates->approximates aaproximating->approximating aare->are +aassignment->assignment +aassignments->assignments aassociated->associated aassumed->assumed aautomatic->automatic @@ -720,6 +722,7 @@ activete->activate activeted->activated activetes->activates activiate->activate +activies->activities activites->activities activiti->activity, activities, activitis->activities @@ -735,6 +738,7 @@ activties->activities activtion->activation activty->activity activw->active +activy->activity actove->active actuaal->actual actuaally->actually @@ -2039,6 +2043,7 @@ annother->another annouce->announce annouced->announced annoucement->announcement +annoucements->announcements annouces->announces annoucing->announcing annouing->annoying @@ -2951,6 +2956,8 @@ asending->ascending asent->ascent aserted->asserted asertion->assertion +asessment->assessment +asessments->assessments asetic->ascetic asfar->as far asign->assign @@ -3016,7 +3023,9 @@ assertio->assertion assertting->asserting assesmenet->assessment assesment->assessment +assesments->assessments assessmant->assessment +assessmants->assessments assgin->assign assgined->assigned assgining->assigning @@ -4657,6 +4666,8 @@ boomarks->bookmarks boook->book booolean->boolean boooleans->booleans +booshelf->bookshelf +booshelves->bookshelves boostrap->bootstrap boostrapped->bootstrapped boostrapping->bootstrapping @@ -6231,6 +6242,8 @@ clasified->classified clasifies->classifies clasify->classify clasifying->classifying +clasroom->classroom +clasrooms->classrooms classe->class, classes, classess->classes classesss->classes @@ -6239,6 +6252,8 @@ classifed->classified classifer->classifier classifers->classifiers classificaion->classification +classrom->classroom +classroms->classrooms classs->class classses->classes clatified->clarified @@ -6352,6 +6367,8 @@ cloumn->column cloumns->columns clousre->closure clsoe->close +clssroom->classroom +clssrooms->classrooms cluase->clause clude->clued, clue, clumn->column @@ -9486,8 +9503,13 @@ danceing->dancing dandidates->candidates daplicating->duplicating Dardenelles->Dardanelles +dasboard->dashboard +dasboards->dashboards dasdot->dashdot dashbaord->dashboard +dashbaords->dashboards +dashboad->dashboard +dashboads->dashboards dashboar->dashboard dashboars->dashboards dashbord->dashboard @@ -9859,6 +9881,7 @@ decording->decoding decordings->decodings decorrellation->decorrelation decortator->decorator +decortive->decorative decose->decode decosed->decoded decoser->decoder @@ -10198,12 +10221,15 @@ delclaration->declaration delection->detection, deletion, selection, delections->detections, deletions, selections, delele->delete +delelete->delete +deleleted->deleted delelte->delete delemeter->delimiter delemiter->delimiter delerious->delirious delet->delete deletd->deleted +deleteable->deletable deleteed->deleted deleteing->deleting deleteion->deletion @@ -12081,6 +12107,8 @@ distrbutes->distributes distrbuting->distributing distrbution->distribution distrbutions->distributions +distrct->district +distrcts->districts distrebuted->distributed distribtion->distribution distribtions->distributions @@ -12131,6 +12159,7 @@ disussion->discussion disussions->discussions disutils->distutils ditance->distance +ditial->digital ditinguishes->distinguishes ditorconfig->editorconfig ditribute->distribute @@ -12933,6 +12962,8 @@ elsiof->elseif elsof->elseif emabaroged->embargoed emable->enable +emabled->enabled +emables->enables emailling->emailing embarass->embarrass embarassed->embarrassed @@ -14408,6 +14439,7 @@ exitation->excitation exitations->excitations exite->exit, excite, exits, exitsing->existing, exiting, +exitss->exists, exits, exitt->exit exitted->exited exitting->exiting @@ -15996,6 +16028,7 @@ foontnotes->footnotes foootball->football foorter->footer footnoes->footnotes +footprinst->footprints foound->found foppy->floppy foppys->floppies @@ -16016,6 +16049,8 @@ forcasters->forecasters forcasting->forecasting forcasts->forecasts forcot->forgot +forece->force +foreced->forced foreces->forces foregrond->foreground foregronds->foregrounds @@ -17012,6 +17047,7 @@ guerrila->guerrilla guerrilas->guerrillas guesss->guess, guesses, gueswork->guesswork +guideded->guided guidence->guidance guidline->guideline guidlines->guidelines @@ -19765,6 +19801,7 @@ intrrupted->interrupted intrrupting->interrupting intrrupts->interrupts intruction->instruction +intructional->instructional intructions->instructions intruduced->introduced intruducing->introducing @@ -19779,6 +19816,9 @@ intstruct->instruct, in struct, intstructed->instructed intstructer->instructor intstructing->instructing +intstruction->instruction +intstructional->instructional +intstructions->instructions intstructor->instructor intstructs->instructs intterrupt->interrupt @@ -20171,6 +20211,8 @@ keyworkds->keywords keywors->keywords keywprd->keyword kindergarden->kindergarten +kindgergarden->kindergarten +kindgergarten->kindergarten kinf->kind kinfs->kinds kinnect->Kinect @@ -20437,6 +20479,8 @@ lerans->learns lern->learn, lean, lerned->learned, learnt, leaned, lerning->learning, leaning, +lessson->lesson +lesssons->lessons lesstiff->LessTif letgitimate->legitimate letmost->leftmost @@ -20526,6 +20570,12 @@ lications->locations licenceing->licencing licencse->license, licenses, licese->license +licesne->license +licesnes->licenses +licesnse->license +licesnses->licenses +licsense->license +licsenses->licenses lieing->lying liek->like liekd->liked @@ -24562,6 +24612,7 @@ parenthesies->parentheses parenthises->parentheses parenthsis->parenthesis paret->parent, parrot, +parge->large parial->partial parially->partially paricular->particular @@ -26747,6 +26798,8 @@ provdied->provided provdies->provides provding->providing provedd->proved, provided, +provence->province +provences->provinces provicde->provide provicded->provided provicdes->provides @@ -27363,7 +27416,8 @@ reacahble->reachable reaccurring->recurring reaceive->receive reacheable->reachable -reacher->richer +reacher->richer, reader, +reachers->readers reachs->reaches reacing->reaching reacll->recall @@ -27872,6 +27926,8 @@ redifinition->redefinition redifinitions->redefinitions redifintion->redefinition redifintions->redefinitions +reding->reading +redings->readings redircet->redirect redirectd->redirected redirectrion->redirection @@ -28455,6 +28511,7 @@ renabled->re-enabled rende->render, rend, renderadble->renderable renderd->rendered +rendereds->rendered, renders, rendereing->rendering rendererd->rendered renderered->rendered @@ -30008,6 +30065,7 @@ scholarhip->scholarship scholarhips->scholarships scholarstic->scholastic, scholarly, scholdn't->shouldn't +schoole->schools schould->should scientfic->scientific scientfically->scientifically @@ -30892,6 +30950,8 @@ shystems->systems shystemwindow->systemwindow, system window, sibiling->sibling sibilings->siblings +sibtitle->subtitle +sibtitles->subtitles sicinct->succinct sicinctly->succinctly sicne->since @@ -31388,6 +31448,7 @@ sophmore->sophomore sorce->source, force, sorceror->sorcerer sord->sword, sore, sored, sawed, soared, +soring->sorting sorkflow->workflow sorrounding->surrounding sortig->sorting @@ -32185,6 +32246,8 @@ statustics->statistics staulk->stalk stauration->saturation staus->status +stawberries->strawberries +stawberry->strawberry stawk->stalk stcokbrush->stockbrush stdanard->standard @@ -32337,6 +32400,8 @@ strictist->strictest strig->string strigification->stringification strigifying->stringifying +striing->string +striings->strings strikely->strikingly stringifed->stringified strinsg->strings @@ -32420,6 +32485,8 @@ stucture->structure stuctured->structured stuctures->structures studdy->study +studetn->student +studetns->students studi->study, studio, studing->studying studis->studies, studios, @@ -33559,8 +33626,12 @@ tcheckout->checkout tcpdumpp->tcpdump tcppcheck->cppcheck te->the, be, we, to, +teacer->teacher +teacers->teachers teached->taught teachnig->teaching +teaher->teacher +teahers->teachers teamplate->template teamplates->templates teated->treated @@ -33783,6 +33854,10 @@ teraform->terraform teraformed->terraformed teraforming->terraforming teraforms->terraforms +terfform->terraform +terfformed->terraformed +terfforming->terraforming +terfforms->terraforms teridactyl->pterodactyl terific->terrific terimnate->terminate @@ -34949,6 +35024,7 @@ turly->truly turnk->trunk, turnkey, turn, turorial->tutorial turorials->tutorials +turtleh->turtle turtorial->tutorial turtorials->tutorials Tuscon->Tucson @@ -36124,6 +36200,8 @@ useing->using user-defiend->user-defined user-defiened->user-defined usera->users +userame->username +userames->usernames userapace->userspace userful->useful userpace->userspace @@ -36346,8 +36424,10 @@ varous->various varously->variously varriance->variance varriances->variances +vart->cart vartical->vertical vartically->vertically +varts->carts vas->was vasall->vassal vasalls->vassals diff --git a/codespell_lib/data/dictionary_rare.txt b/codespell_lib/data/dictionary_rare.txt index 738d397734..af0ce41825 100644 --- a/codespell_lib/data/dictionary_rare.txt +++ b/codespell_lib/data/dictionary_rare.txt @@ -53,8 +53,11 @@ degrate->degrade degrates->degrades dependant->dependent derails->details +devise->device +devises->devices discontentment->discontent discreet->discrete +discuses->discusses fallow->follow fallowed->followed fallowing->following @@ -87,6 +90,7 @@ incluse->include indention->indentation indite->indict infarction->infraction +ingenuous->ingenious inly->only irregardless->regardless knifes->knives From a57ded15d7d58901792fef9ecafb2f9a1dbf63be Mon Sep 17 00:00:00 2001 From: Jon Dufresne Date: Thu, 1 Dec 2022 17:20:21 -0800 Subject: [PATCH 093/302] Apply suggestions from review --- codespell_lib/data/dictionary.txt | 9 ++++++--- codespell_lib/data/dictionary_rare.txt | 3 +-- 2 files changed, 7 insertions(+), 5 deletions(-) diff --git a/codespell_lib/data/dictionary.txt b/codespell_lib/data/dictionary.txt index fe9d251f53..18950fd90e 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -22,6 +22,7 @@ aaproximately->approximately aaproximates->approximates aaproximating->approximating aare->are +aassign->assign aassignment->assignment aassignments->assignments aassociated->associated @@ -2956,6 +2957,7 @@ asending->ascending asent->ascent aserted->asserted asertion->assertion +asess->assess asessment->assessment asessments->assessments asetic->ascetic @@ -30065,7 +30067,7 @@ scholarhip->scholarship scholarhips->scholarships scholarstic->scholastic, scholarly, scholdn't->shouldn't -schoole->schools +schoole->schools, schooled, schould->should scientfic->scientific scientfically->scientifically @@ -35025,6 +35027,7 @@ turnk->trunk, turnkey, turn, turorial->tutorial turorials->tutorials turtleh->turtle +turtlehs->turtles turtorial->tutorial turtorials->tutorials Tuscon->Tucson @@ -36424,10 +36427,10 @@ varous->various varously->variously varriance->variance varriances->variances -vart->cart +vart->cart, wart, vartical->vertical vartically->vertically -varts->carts +varts->carts, warts, vas->was vasall->vassal vasalls->vassals diff --git a/codespell_lib/data/dictionary_rare.txt b/codespell_lib/data/dictionary_rare.txt index af0ce41825..22397a6c62 100644 --- a/codespell_lib/data/dictionary_rare.txt +++ b/codespell_lib/data/dictionary_rare.txt @@ -53,10 +53,9 @@ degrate->degrade degrates->degrades dependant->dependent derails->details -devise->device -devises->devices discontentment->discontent discreet->discrete +discus->discuss discuses->discusses fallow->follow fallowed->followed From 733d712f251a69134e6bbae91d52ec521f43a64e Mon Sep 17 00:00:00 2001 From: Jon Dufresne Date: Tue, 6 Dec 2022 18:55:52 -0800 Subject: [PATCH 094/302] Apply more suggestions from code review --- codespell_lib/data/dictionary.txt | 8 ++++++-- codespell_lib/data/dictionary_rare.txt | 2 ++ 2 files changed, 8 insertions(+), 2 deletions(-) diff --git a/codespell_lib/data/dictionary.txt b/codespell_lib/data/dictionary.txt index 18950fd90e..6448a3d26d 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -10225,6 +10225,8 @@ delections->detections, deletions, selections, delele->delete delelete->delete deleleted->deleted +deleletes->deletes +deleleting->deleting delelte->delete delemeter->delimiter delemiter->delimiter @@ -12966,6 +12968,7 @@ emabaroged->embargoed emable->enable emabled->enabled emables->enables +emabling->enabling emailling->emailing embarass->embarrass embarassed->embarrassed @@ -20574,10 +20577,13 @@ licencse->license, licenses, licese->license licesne->license licesnes->licenses +licesning->licensing licesnse->license licesnses->licenses +licesnsing->licensing licsense->license licsenses->licenses +licsensing->licensing lieing->lying liek->like liekd->liked @@ -26800,7 +26806,6 @@ provdied->provided provdies->provides provding->providing provedd->proved, provided, -provence->province provences->provinces provicde->provide provicded->provided @@ -31450,7 +31455,6 @@ sophmore->sophomore sorce->source, force, sorceror->sorcerer sord->sword, sore, sored, sawed, soared, -soring->sorting sorkflow->workflow sorrounding->surrounding sortig->sorting diff --git a/codespell_lib/data/dictionary_rare.txt b/codespell_lib/data/dictionary_rare.txt index 22397a6c62..b07d485599 100644 --- a/codespell_lib/data/dictionary_rare.txt +++ b/codespell_lib/data/dictionary_rare.txt @@ -139,6 +139,7 @@ prioritary->priority programed->programmed programing->programming prosses->process, processes, possess, +provence->province purportive->supportive purvue->purview ques->quest @@ -165,6 +166,7 @@ simplication->simplification singe->single singed->signed, singled, sang, sung, slippy->slippery +soring->sorting specif->specify, specific, statics->statistics steams->streams From 6f6ef458a1155a210df3b5d6b5b1b996ef7dde7f Mon Sep 17 00:00:00 2001 From: Jon Dufresne Date: Tue, 6 Dec 2022 18:56:24 -0800 Subject: [PATCH 095/302] managet->manager --- 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 6448a3d26d..e3e838e451 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -20980,6 +20980,8 @@ managament->management manageed->managed managemenet->management managenment->management +managet->manager +managets->managers managmenet->management managment->management manaise->mayonnaise From b9c149a987a161615bca32ea5e413a761839283d Mon Sep 17 00:00:00 2001 From: Jon Dufresne Date: Wed, 7 Dec 2022 12:23:30 -0800 Subject: [PATCH 096/302] adevnture->adventure --- 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 e3e838e451..c6ce9f9ca8 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -909,6 +909,12 @@ addtitional->additional adecuate->adequate aded->added adequit->adequate +adevnture->adventure +adevntured->adventured +adevnturer->adventurer +adevnturers->adventurers +adevntures->adventures +adevnturing->adventuring adge->edge, badge, adage, adges->edges, badges, adages, adhearing->adhering From e2aedbd9301532a5293ff2b25fbf53137f8c4087 Mon Sep 17 00:00:00 2001 From: Jon Dufresne Date: Wed, 7 Dec 2022 17:23:07 -0800 Subject: [PATCH 097/302] proeprly->properly --- 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 c6ce9f9ca8..010a3a5007 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -26437,6 +26437,8 @@ proejct->project proejcted->projected proejcting->projecting proejction->projection +proepr->proper +proeprly->properly proeprties->properties proeprty->property proerties->properties From 3f9c2baabef6da0bb8ac0fcc4b272490c5081b16 Mon Sep 17 00:00:00 2001 From: Stefan Kangas Date: Thu, 17 Nov 2022 12:50:45 +0100 Subject: [PATCH 098/302] Dict: Add several words for en-GB to en-US --- .../data/dictionary_en-GB_to_en-US.txt | 100 ++++++++++++++++++ 1 file changed, 100 insertions(+) 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 07b06211d0..7dcbb8e7a9 100644 --- a/codespell_lib/data/dictionary_en-GB_to_en-US.txt +++ b/codespell_lib/data/dictionary_en-GB_to_en-US.txt @@ -10,6 +10,8 @@ analysed->analyzed analyser->analyzer analysers->analyzers analysing->analyzing +apologise->apologize +armour->armor artefact->artifact artefacts->artifacts authorisation->authorization @@ -17,7 +19,12 @@ authorise->authorize authorised->authorized authorises->authorizes authorising->authorizing +bastardise->bastardize +bastardised->bastardized +bastardises->bastardizes +bastardising->bastardizing behaviour->behavior +behavioural->behavioral behaviours->behaviors cancelled->canceled cancelling->canceling @@ -28,6 +35,9 @@ capitalises->capitalizes capitalising->capitalizing catalogue->catalog catalogues->catalogs +categorise->categorize +categorised->categorized +categorises->categorizes centimetre->centimeter centimetres->centimeters centralisation->centralization @@ -36,6 +46,7 @@ centralised->centralized centralises->centralizes centralising->centralizing centre->center +centred->centered centres->centers characterisation->characterization characterise->characterize @@ -43,9 +54,11 @@ characterised->characterized characterises->characterizes characterising->characterizing colour->color +coloured->colored colourful->colorful colourfully->colorfully colouring->coloring +colourless->colorless colours->colors counsellor->counselor criticise->criticize @@ -62,7 +75,14 @@ customise->customize customised->customized customises->customizes customising->customizing +decentralisation->decentralization +decentralise->decentralize +decentralised->decentralized +decentralises->decentralizes +decentralising->decentralizing defence->defense +defenceless->defenseless +defences->defenses demonise->demonize demonised->demonized demonises->demonizes @@ -73,13 +93,27 @@ digitise->digitize digitised->digitized digitises->digitizes digitising->digitizing +disfavour->disfavor +economise->economize emphasise->emphasize emphasised->emphasized emphasises->emphasizes emphasising->emphasizing endeavour->endeavor +endeavoured->endeavored +endeavouring->endeavoring endeavours->endeavors +equalisation->equalization +equalise->equalize +equalised->equalized +equaliser->equalizer +equalisers->equalizers +equalises->equalizes +equalising->equalizing favour->favor +favourable->favorable +favoured->favored +favouring->favoring favourite->favorite favourites->favorites favouritism->favoritism @@ -91,6 +125,11 @@ finalises->finalizes finalising->finalizing flavour->flavor flavours->flavors +formalisation->formalization +formalise->formalize +formalised->formalized +formalises->formalizes +formalising->formalizing fulfil->fulfill fulfils->fulfills generalisation->generalization @@ -100,13 +139,32 @@ generalised->generalized generalises->generalizes generalising->generalizing grey->gray +greyed->grayed +greyish->grayish +greys->grays honour->honor +honoured->honored +honouring->honoring honours->honors +humour->humor +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 judgement->judgment judgements->judgments kilometre->kilometer @@ -114,6 +172,8 @@ kilometres->kilometers labelled->labeled labelling->labeling labour->labor +laboured->labored +labours->labors legalisation->legalization legalise->legalize legalised->legalized @@ -121,8 +181,21 @@ legalises->legalizes legalising->legalizing licence->license licences->licenses +litre->liter +litres->liters +localise->localize +localised->localized +localises->localizes +localising->localizing manoeuvre->maneuver manoeuvres->maneuvers +marshalled->marshaled +marshalling->marshaling +maximisation->maximization +maximise->maximize +maximised->maximized +maximises->maximizes +maximising->maximizing memorisation->memorization memorise->memorize memorised->memorized @@ -140,6 +213,10 @@ minimising->minimizing mitre->miter modelled->modeled modelling->modeling +modernise->modernize +modernised->modernized +modernises->modernizes +modernising->modernizing mould->mold moulds->molds nasalisation->nasalization @@ -159,6 +236,7 @@ optimiser->optimizer optimises->optimizes optimising->optimizing organisation->organization +organisational->organizational organisations->organizations organise->organize organised->organized @@ -166,6 +244,10 @@ organiser->organizer organisers->organizers organises->organizes organising->organizing +penalise->penalize +penalised->penalized +penalises->penalizes +penalising->penalizing plagiarise->plagiarize plagiarised->plagiarized plagiarises->plagiarizes @@ -175,6 +257,8 @@ polarised->polarized polarises->polarizes polarising->polarizing practise->practice +pretence->pretense +pretences->pretenses prioritisation->prioritization prioritise->prioritize prioritised->prioritized @@ -184,6 +268,10 @@ publicise->publicize publicised->publicized publicises->publicizes publicising->publicizing +randomise->randomize +randomised->randomized +randomises->randomizes +randomising->randomizing realisation->realization realise->realize realised->realized @@ -205,16 +293,20 @@ reorganise->reorganize reorganised->reorganized reorganises->reorganizes reorganising->reorganizing +rigour->rigor sanitise->sanitize sanitised->sanitized sanitiser->sanitizer sanitises->sanitizes sanitising->sanitizing +sceptical->skeptical serialisation->serialization serialise->serialize serialised->serialized serialises->serializes serialising->serializing +signalled->signaled +signalling->signaling skilful->skillful skilfully->skillfully skilfulness->skillfulness @@ -241,6 +333,10 @@ summarise->summarize summarised->summarized summarises->summarizes summarising->summarizing +symbolise->symbolize +symbolised->symbolized +symbolises->symbolizes +symbolising->symbolizing synchronisation->synchronization synchronise->synchronize synchronised->synchronized @@ -249,8 +345,12 @@ synchronising->synchronizing totalled->totaled totalling->totaling unauthorised->unauthorized +unfavourable->unfavorable +unfavourably->unfavorably unorganised->unorganized +unrecognisable->unrecognizable unrecognised->unrecognized +utilisable->utilizable utilisation->utilization utilise->utilize utilised->utilized From 57198412018c9ca46a271dcddff559476eece7c3 Mon Sep 17 00:00:00 2001 From: Stefan Kangas Date: Sat, 19 Nov 2022 13:32:25 +0100 Subject: [PATCH 099/302] Add fixes from misspell-fixer's safe.1.dict https://github.com/vlajos/misspell-fixer/blob/master/dict/safe.1.dict --- 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 010a3a5007..2d53f3bce4 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -2918,6 +2918,7 @@ artillary->artillery artuments->arguments arugment->argument arugments->arguments +arument->argument aruments->arguments arund->around arvg->argv @@ -5016,6 +5017,7 @@ bulid->build buliding->building bulids->builds bulit->built +bulitin->built-in bulle->bullet bulletted->bulleted bulnerabilities->vulnerabilities @@ -5240,6 +5242,8 @@ calcutated->calculated calcutates->calculates calcutating->calculating caleed->called +caleee->callee +calees->callees caler->caller calescing->coalescing caliased->aliased @@ -5530,6 +5534,7 @@ casuing->causing casulaties->casualties casulaty->casualty cataalogue->catalogue +catagori->category catagorie->category, categories, catagories->categories catagorization->categorization @@ -15107,6 +15112,7 @@ explicitily->explicitly explicity->explicitly explicityly->explicitly explict->explicit +explicte->explicit, explicate, explictely->explicitly explictily->explicitly explictly->explicitly @@ -15155,7 +15161,10 @@ expors->exports exportet->exported, exporter, expport->export exppressed->expressed +expres->express +expresed->expressed expreses->expresses, express, +expresing->expressing expresion->expression expresions->expressions expressable->expressible @@ -36360,6 +36369,7 @@ valtage->voltage valtages->voltages valu->value valuble->valuable +valud->valid, value, valudes->values value-to-pack->value to pack valueable->valuable From c965f08329656492cd72cab069622b90321a062d Mon Sep 17 00:00:00 2001 From: Stefan Kangas Date: Sat, 19 Nov 2022 15:21:31 +0100 Subject: [PATCH 100/302] Prefer "converter" to "convertor" --- codespell_lib/data/dictionary.txt | 3 ++- codespell_lib/data/dictionary_rare.txt | 2 ++ 2 files changed, 4 insertions(+), 1 deletion(-) diff --git a/codespell_lib/data/dictionary.txt b/codespell_lib/data/dictionary.txt index 2d53f3bce4..50ef25e00c 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -9066,7 +9066,8 @@ covnerter->converter covnerters->converters covnertible->convertible covnerting->converting -covnertor->convertor +covnertor->converter +covnertors->converters covnerts->converts covriance->covariance covriate->covariate diff --git a/codespell_lib/data/dictionary_rare.txt b/codespell_lib/data/dictionary_rare.txt index b07d485599..e67c10625d 100644 --- a/codespell_lib/data/dictionary_rare.txt +++ b/codespell_lib/data/dictionary_rare.txt @@ -37,6 +37,8 @@ complier->compiler compliers->compilers confectionary->confectionery consequentially->consequently +convertor->converter +convertors->converters coo->coup copping->coping, copying, cropping, covert->convert From f010d35ad322ea6fa189b20f747f87f1c3c4ecb2 Mon Sep 17 00:00:00 2001 From: MDW Date: Fri, 9 Dec 2022 17:26:29 +0100 Subject: [PATCH 101/302] Add pre-commit configuration (#2459) --- .github/workflows/codespell-private.yml | 6 ++ .pre-commit-config.yaml | 111 ++++++++++++++++++++++++ MANIFEST.in | 1 + codespell_lib/_codespell.py | 40 +++++---- codespell_lib/tests/test_dictionary.py | 47 ++++++---- pyproject-codespell.precommit-toml | 7 ++ pyproject.toml | 62 +++++++++++++ setup.cfg | 3 - 8 files changed, 241 insertions(+), 36 deletions(-) create mode 100644 .pre-commit-config.yaml create mode 100644 pyproject-codespell.precommit-toml delete mode 100644 setup.cfg diff --git a/.github/workflows/codespell-private.yml b/.github/workflows/codespell-private.yml index 9aee75d231..f58feeae36 100644 --- a/.github/workflows/codespell-private.yml +++ b/.github/workflows/codespell-private.yml @@ -63,6 +63,12 @@ jobs: flake8-annotation: runs-on: ubuntu-latest steps: + - name: Setup python + uses: actions/setup-python@v4 + with: + python-version: 3.x - uses: actions/checkout@v3 + - name: Install codespell dependencies + run: pip install -e ".[dev]" - name: Flake8 with annotations uses: TrueBrain/actions-flake8@v2 diff --git a/.pre-commit-config.yaml b/.pre-commit-config.yaml new file mode 100644 index 0000000000..570d846a57 --- /dev/null +++ b/.pre-commit-config.yaml @@ -0,0 +1,111 @@ +--- +files: ^(.*\.(py|json|md|sh|yaml|cfg|txt))$ +exclude: ^(\.[^/]*cache/.*)$ +repos: + - repo: https://github.com/executablebooks/mdformat + # Do this before other tools "fixing" the line endings + rev: 0.7.16 + hooks: + - id: mdformat + name: Format Markdown + entry: mdformat # Executable to run, with fixed options + language: python + types: [markdown] + args: [--wrap, '75', --number] + additional_dependencies: + - mdformat-toc + - mdformat-beautysh + # -mdformat-shfmt + # -mdformat-tables + - mdformat-config + - mdformat-black + - mdformat-web + - mdformat-gfm + - repo: https://github.com/asottile/pyupgrade + rev: v3.3.1 + hooks: + - id: pyupgrade + args: [--py37-plus] + - repo: https://github.com/pre-commit/pre-commit-hooks + rev: v4.4.0 + hooks: + - id: no-commit-to-branch + args: [--branch, main] + - id: check-yaml + args: [--unsafe] + - id: debug-statements + - id: end-of-file-fixer + - id: trailing-whitespace + - id: check-json + - id: mixed-line-ending + - id: check-builtin-literals + - id: check-ast + - id: check-merge-conflict + - id: check-executables-have-shebangs + - id: check-shebang-scripts-are-executable + - id: check-docstring-first + - id: fix-byte-order-marker + - id: check-case-conflict + - id: check-toml + - repo: https://github.com/adrienverge/yamllint.git + rev: v1.28.0 + hooks: + - id: yamllint + args: + - --no-warnings + - -d + - '{extends: relaxed, rules: {line-length: {max: 90}}}' + - repo: https://github.com/psf/black + rev: 22.10.0 + hooks: + - id: black + - repo: https://github.com/Lucas-C/pre-commit-hooks-bandit + rev: v1.0.6 + hooks: + - id: python-bandit-vulnerability-check + - repo: https://github.com/PyCQA/autoflake + rev: v2.0.0 + hooks: + - id: autoflake + - repo: https://github.com/PyCQA/flake8 + rev: 6.0.0 + hooks: + - id: flake8 + additional_dependencies: + - flake8-pyproject>=1.2.2 + - flake8-bugbear>=22.7.1 + - flake8-comprehensions>=3.10.0 + - flake8-2020>=1.7.0 + - mccabe>=0.7.0 + - pycodestyle>=2.9.1 + - pyflakes>=2.5.0 + - repo: https://github.com/PyCQA/isort + rev: 5.10.1 + hooks: + - id: isort + - repo: https://github.com/codespell-project/codespell + rev: v2.2.2 + hooks: + - id: codespell + args: [--toml, pyproject-codespell.precommit-toml] + additional_dependencies: + - tomli + - repo: https://github.com/pre-commit/mirrors-pylint + rev: v3.0.0a5 + hooks: + - id: pylint + additional_dependencies: + - chardet + - pytest + - repo: https://github.com/pre-commit/mirrors-mypy + rev: v0.991 + hooks: + - id: mypy + args: [--no-warn-unused-ignores, --config-file, pyproject.toml, --disable-error-code, + import] + additional_dependencies: + - chardet + - pytest + - pytest-cov + - pytest-dependency + - types-chardet diff --git a/MANIFEST.in b/MANIFEST.in index d4cf114e40..f5358f6819 100644 --- a/MANIFEST.in +++ b/MANIFEST.in @@ -9,3 +9,4 @@ exclude .git-blame-ignore-revs exclude example example/* snap snap/* tools tools/* exclude Makefile exclude codespell.1.include +exclude pyproject-codespell.precommit-toml \ No newline at end of file diff --git a/codespell_lib/_codespell.py b/codespell_lib/_codespell.py index 8811a049e6..e1783b5a2a 100644 --- a/codespell_lib/_codespell.py +++ b/codespell_lib/_codespell.py @@ -352,7 +352,7 @@ def parse_options( "This option can be specified multiple times.", ) builtin_opts = "\n- ".join( - [""] + ["%r %s" % (d[0], d[1]) for d in _builtin_dictionaries] + [""] + [f"{d[0]!r} {d[1]}" for d in _builtin_dictionaries] ) parser.add_argument( "--builtin", @@ -693,7 +693,7 @@ def ask_for_word_fix( r = "" fixword = fix_case(wrongword, misspelling.data) while not r: - print("%s\t%s ==> %s (Y/n) " % (line, wrongword, fixword), end="") + print(f"{line}\t{wrongword} ==> {fixword} (Y/n) ", end="") r = sys.stdin.readline().strip().upper() if not r: r = "Y" @@ -743,7 +743,7 @@ def print_context( # context = (context_before, context_after) for i in range(index - context[0], index + context[1] + 1): if 0 <= i < len(lines): - print("%s %s" % (">" if i == index else ":", lines[i].rstrip())) + print("{} {}".format(">" if i == index else ":", lines[i].rstrip())) def extract_words( @@ -806,14 +806,14 @@ def parse_file( if summary and fix: summary.update(lword) - cfilename = "%s%s%s" % (colors.FILE, filename, colors.DISABLE) - cwrongword = "%s%s%s" % (colors.WWORD, word, colors.DISABLE) - crightword = "%s%s%s" % (colors.FWORD, fixword, colors.DISABLE) + cfilename = f"{colors.FILE}{filename}{colors.DISABLE}" + cwrongword = f"{colors.WWORD}{word}{colors.DISABLE}" + crightword = f"{colors.FWORD}{fixword}{colors.DISABLE}" if misspellings[lword].reason: if options.quiet_level & QuietLevels.DISABLED_FIXES: continue - creason = " | %s%s%s" % ( + creason = " | {}{}{}".format( colors.FILE, misspellings[lword].reason, colors.DISABLE, @@ -843,7 +843,7 @@ def parse_file( try: text = is_text_file(filename) except PermissionError as e: - print("WARNING: %s: %s" % (e.strerror, filename), file=sys.stderr) + print(f"WARNING: {e.strerror}: {filename}", file=sys.stderr) return bad_count except OSError: return bad_count @@ -917,16 +917,16 @@ def parse_file( ): continue - cfilename = "%s%s%s" % (colors.FILE, filename, colors.DISABLE) + cfilename = f"{colors.FILE}{filename}{colors.DISABLE}" cline = "%s%d%s" % (colors.FILE, i + 1, colors.DISABLE) - cwrongword = "%s%s%s" % (colors.WWORD, word, colors.DISABLE) - crightword = "%s%s%s" % (colors.FWORD, fixword, colors.DISABLE) + cwrongword = f"{colors.WWORD}{word}{colors.DISABLE}" + crightword = f"{colors.FWORD}{fixword}{colors.DISABLE}" if misspellings[lword].reason: if options.quiet_level & QuietLevels.DISABLED_FIXES: continue - creason = " | %s%s%s" % ( + creason = " | {}{}{}".format( colors.FILE, misspellings[lword].reason, colors.DISABLE, @@ -976,7 +976,7 @@ def parse_file( else: if not options.quiet_level & QuietLevels.FIXES: print( - "%sFIXED:%s %s" % (colors.FWORD, colors.DISABLE, filename), + f"{colors.FWORD}FIXED:{colors.DISABLE} {filename}", file=sys.stderr, ) with open(filename, "w", encoding=encoding, newline="") as f: @@ -1010,7 +1010,7 @@ def main(*args: str) -> int: try: word_regex = re.compile(word_regex) except re.error as err: - print('ERROR: invalid --regex "%s" (%s)' % (word_regex, err), file=sys.stderr) + print(f'ERROR: invalid --regex "{word_regex}" ({err})', file=sys.stderr) parser.print_help() return EX_USAGE @@ -1019,7 +1019,9 @@ def main(*args: str) -> int: ignore_word_regex = re.compile(options.ignore_regex) except re.error as err: print( - 'ERROR: invalid --ignore-regex "%s" (%s)' % (options.ignore_regex, err), + 'ERROR: invalid --ignore-regex "{}" ({})'.format( + options.ignore_regex, err + ), file=sys.stderr, ) parser.print_help() @@ -1044,7 +1046,8 @@ def main(*args: str) -> int: uri_regex = re.compile(uri_regex) except re.error as err: print( - 'ERROR: invalid --uri-regex "%s" (%s)' % (uri_regex, err), file=sys.stderr + f'ERROR: invalid --uri-regex "{uri_regex}" ({err})', + file=sys.stderr, ) parser.print_help() return EX_USAGE @@ -1063,12 +1066,13 @@ def main(*args: str) -> int: for builtin in _builtin_dictionaries: if builtin[0] == u: use_dictionaries.append( - os.path.join(_data_root, "dictionary%s.txt" % (builtin[2],)) + os.path.join(_data_root, f"dictionary{builtin[2]}.txt") ) break else: print( - "ERROR: Unknown builtin dictionary: %s" % (u,), file=sys.stderr + f"ERROR: Unknown builtin dictionary: {u}", + file=sys.stderr, ) parser.print_help() return EX_USAGE diff --git a/codespell_lib/tests/test_dictionary.py b/codespell_lib/tests/test_dictionary.py index 56c373e311..515c3d2d0a 100644 --- a/codespell_lib/tests/test_dictionary.py +++ b/codespell_lib/tests/test_dictionary.py @@ -89,14 +89,14 @@ def _check_aspell( spellers[lang].check(phrase.encode(spellers[lang].ConfigKeys()["encoding"][1])) for lang in languages ) - end = "be in aspell dictionaries (%s) for dictionary %s" % ( + end = "be in aspell dictionaries ({}) for dictionary {}".format( ", ".join(languages), fname, ) if in_aspell: # should be an error in aspell - assert this_in_aspell, "%s should %s" % (msg, end) + assert this_in_aspell, f"{msg} should {end}" else: # shouldn't be - assert not this_in_aspell, "%s should not %s" % (msg, end) + assert not this_in_aspell, f"{msg} should not {end}" whitespace = re.compile(r"\s") @@ -118,15 +118,18 @@ def _check_err_rep( ) -> None: assert whitespace.search(err) is None, "error %r has whitespace" % err assert "," not in err, "error %r has a comma" % err - assert len(rep) > 0, "error %s: correction %r must be non-empty" % (err, rep) + assert len(rep) > 0, f"error {err}: correction {rep!r} must be non-empty" assert not start_whitespace.match( rep - ), "error %s: correction %r cannot start with whitespace" % (err, rep) - _check_aspell(err, "error %r" % (err,), in_aspell[0], fname, languages[0]) - prefix = "error %s: correction %r" % (err, rep) + ), f"error {err}: correction {rep!r} cannot start with whitespace" + _check_aspell(err, f"error {err!r}", in_aspell[0], fname, languages[0]) + prefix = f"error {err}: correction {rep!r}" for (regex, msg) in [ (start_comma, "%s starts with a comma"), - (whitespace_comma, "%s contains a whitespace character followed by a comma"), + ( + whitespace_comma, + "%s contains a whitespace character followed by a comma", + ), ( comma_whitespaces, "%s contains a comma followed by multiple whitespace characters", @@ -144,9 +147,13 @@ def _check_err_rep( reps = [r.strip() for r in rep.split(",")] reps = [r for r in reps if len(r)] for r in reps: - assert err != r.lower(), "error %r corrects to itself amongst others" % (err,) + assert err != r.lower(), f"error {err!r} corrects to itself amongst others" _check_aspell( - r, "error %s: correction %r" % (err, r), in_aspell[1], fname, languages[1] + r, + f"error {err}: correction {r!r}", + in_aspell[1], + fname, + languages[1], ) # aspell dictionary is case sensitive, so pass the original case into there @@ -180,7 +187,11 @@ def test_error_checking(err: str, rep: str, match: str) -> None: """Test that our error checking works.""" with pytest.raises(AssertionError, match=match): _check_err_rep( - err, rep, (None, None), "dummy", (supported_languages, supported_languages) + err, + rep, + (None, None), + "dummy", + (supported_languages, supported_languages), ) @@ -205,7 +216,13 @@ def test_error_checking(err: str, rep: str, match: str) -> None: ("a", "bar back", None, False, "should not be in aspell"), ("a", "bar back Wednesday", None, False, "should not be in aspell"), # Second multi-word, both parts - ("a", "bar back, abcdef uvwxyz, bar,", None, True, "should be in aspell"), + ( + "a", + "bar back, abcdef uvwxyz, bar,", + None, + True, + "should be in aspell", + ), ( "a", "abcdef uvwxyz, bar back, ghijkl,", @@ -263,7 +280,7 @@ def test_dictionary_looping( for line in fid: err, rep = line.split("->") err = err.lower() - assert err not in this_err_dict, "error %r already exists in %s" % ( + assert err not in this_err_dict, "error {!r} already exists in {}".format( err, short_fname, ) @@ -286,7 +303,7 @@ def test_dictionary_looping( for err in this_err_dict: assert ( err not in other_err_dict - ), "error %r in dictionary %s already exists in dictionary %s" % ( + ), "error {!r} in dictionary {} already exists in dictionary {}".format( err, short_fname, other_fname, @@ -297,7 +314,7 @@ def test_dictionary_looping( for err in this_err_dict: assert ( err not in other_err_dict - ), "error %r in dictionary %s already exists in dictionary %s" % ( + ), "error {!r} in dictionary {} already exists in dictionary {}".format( err, short_fname, other_fname, diff --git a/pyproject-codespell.precommit-toml b/pyproject-codespell.precommit-toml new file mode 100644 index 0000000000..41a15c09dc --- /dev/null +++ b/pyproject-codespell.precommit-toml @@ -0,0 +1,7 @@ +[tool.codespell] +#builtin = ["clear","rare","informal","usage","code","names"] +builtin = "clear,rare,informal,usage,code,names" +#ignore-words-list = ["uint"] +ignore-words-list = "uint" +#skip=[ "./.*","codespell_lib/data/*","codespell_lib/tests/*"] +skip="./.*,codespell_lib/data/*,codespell_lib/tests/*" diff --git a/pyproject.toml b/pyproject.toml index 32c9e55404..4dc98082c8 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -34,6 +34,7 @@ dynamic = ["version"] dev = [ "check-manifest", "flake8", + "flake8-pyproject", "pytest", "pytest-cov", "pytest-dependency", @@ -49,6 +50,8 @@ toml = [ types = [ "mypy", "pytest", + "pytest-cov", + "pytest-dependency", "types-chardet", ] @@ -79,9 +82,28 @@ codespell_lib = [ "py.typed", ] +[tool.autoflake] +in-place = true +recursive = true +expand-star-imports = true + +[tool.bandit] +skip = "B101,B404,B603" +recursive = true + [tool.check-manifest] ignore = ["codespell_lib/_version.py"] +# TODO: reintegrate codespell configuration after updating test cases +#[tool.codespell] +#builtin = ["clear","rare","informal","usage","code","names"] +#ignore-words-list = ["uint"] +#skip=[ "./.*","codespell_lib/data/*","codespell_lib/tests/*"] + +[tool.flake8] +max-line-length = "88" +extend-ignore = "E203" + [tool.isort] profile = "black" @@ -90,5 +112,45 @@ pretty = true show_error_codes = true strict = true +[tool.pylint] +reports=false +py-version="3.7" +disable = [ + "broad-except", + "consider-using-f-string", + "consider-using-dict-items", + "consider-using-with", + "fixme", + "import-error", + "import-outside-toplevel", + "invalid-name", + "line-too-long", + "missing-class-docstring", + "missing-module-docstring", + "missing-function-docstring", + "no-else-raise", + "no-else-return", + "raise-missing-from", + "redefined-outer-name", + "subprocess-run-check", + "too-many-arguments", + "too-many-lines", + "too-many-locals", + "too-many-branches", + "too-many-statements", + "too-many-return-statements", + "too-few-public-methods", + "unneeded-not", + "unspecified-encoding", + "unused-argument", + "unused-variable", + "use-maxsplit-arg" +] + + +[tool.pylint.FORMAT] +good-names=["F","r","i","n"] +# include-naming-hint=yes + [tool.pytest.ini_options] addopts = "--cov=codespell_lib -rs --cov-report= --tb=short --junit-xml=junit-results.xml" diff --git a/setup.cfg b/setup.cfg deleted file mode 100644 index 8dd399ab55..0000000000 --- a/setup.cfg +++ /dev/null @@ -1,3 +0,0 @@ -[flake8] -max-line-length = 88 -extend-ignore = E203 From 26c7d2dba86d59324b380e262026ee08dd2f71a4 Mon Sep 17 00:00:00 2001 From: MDW Date: Fri, 9 Dec 2022 18:07:07 +0100 Subject: [PATCH 102/302] pre-commit: check toml, rst, yml and .in files (#2636) --- .github/workflows/codespell-private.yml | 2 +- .github/workflows/codespell.yml | 2 +- .pre-commit-config.yaml | 8 ++++++-- MANIFEST.in | 2 +- pyproject-codespell.precommit-toml | 2 +- 5 files changed, 10 insertions(+), 6 deletions(-) diff --git a/.github/workflows/codespell-private.yml b/.github/workflows/codespell-private.yml index f58feeae36..6ceff4667a 100644 --- a/.github/workflows/codespell-private.yml +++ b/.github/workflows/codespell-private.yml @@ -41,7 +41,7 @@ jobs: - run: codespell --version - run: make check - uses: codecov/codecov-action@v3 - - run: codespell --check-filenames --skip="./.git/*,*.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/*" + - run: codespell --check-filenames --skip="./.git/*,*.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" # this file has an error - run: "! codespell codespell_lib/tests/test_basic.py" diff --git a/.github/workflows/codespell.yml b/.github/workflows/codespell.yml index 585891230d..c9eb5ead6a 100644 --- a/.github/workflows/codespell.yml +++ b/.github/workflows/codespell.yml @@ -13,4 +13,4 @@ jobs: with: check_filenames: true # When using this Action in other repos, the --skip option below can be removed - skip: "./.git,./codespell_lib/data,./example/code.c,test_basic.py,*.pyc,README.rst" + skip: "./.git,./codespell_lib/data,./example/code.c,test_basic.py,*.pyc,README.rst,pyproject-codespell.precommit-toml" diff --git a/.pre-commit-config.yaml b/.pre-commit-config.yaml index 570d846a57..f2851fa68a 100644 --- a/.pre-commit-config.yaml +++ b/.pre-commit-config.yaml @@ -1,5 +1,5 @@ --- -files: ^(.*\.(py|json|md|sh|yaml|cfg|txt))$ +files: ^(.*\.(py|json|md|sh|yaml|yml|in|cfg|txt|rst|toml|precommit-toml))$ exclude: ^(\.[^/]*cache/.*)$ repos: - repo: https://github.com/executablebooks/mdformat @@ -21,6 +21,10 @@ repos: - mdformat-black - mdformat-web - mdformat-gfm + - repo: https://github.com/Lucas-C/pre-commit-hooks-markup + rev: v1.0.1 + hooks: + - id: rst-linter - repo: https://github.com/asottile/pyupgrade rev: v3.3.1 hooks: @@ -56,7 +60,7 @@ repos: - -d - '{extends: relaxed, rules: {line-length: {max: 90}}}' - repo: https://github.com/psf/black - rev: 22.10.0 + rev: 22.12.0 hooks: - id: black - repo: https://github.com/Lucas-C/pre-commit-hooks-bandit diff --git a/MANIFEST.in b/MANIFEST.in index f5358f6819..60957b16d9 100644 --- a/MANIFEST.in +++ b/MANIFEST.in @@ -9,4 +9,4 @@ exclude .git-blame-ignore-revs exclude example example/* snap snap/* tools tools/* exclude Makefile exclude codespell.1.include -exclude pyproject-codespell.precommit-toml \ No newline at end of file +exclude pyproject-codespell.precommit-toml diff --git a/pyproject-codespell.precommit-toml b/pyproject-codespell.precommit-toml index 41a15c09dc..e49d999770 100644 --- a/pyproject-codespell.precommit-toml +++ b/pyproject-codespell.precommit-toml @@ -2,6 +2,6 @@ #builtin = ["clear","rare","informal","usage","code","names"] builtin = "clear,rare,informal,usage,code,names" #ignore-words-list = ["uint"] -ignore-words-list = "uint" +ignore-words-list = "adn,master,uint" #skip=[ "./.*","codespell_lib/data/*","codespell_lib/tests/*"] skip="./.*,codespell_lib/data/*,codespell_lib/tests/*" From 060e9b59fd5ba21fb081527f3e1e3387d154c197 Mon Sep 17 00:00:00 2001 From: Janosh Riebesell Date: Fri, 9 Dec 2022 14:14:36 -0800 Subject: [PATCH 103/302] centriod->centroid --- 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 50ef25e00c..179055b395 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -5663,6 +5663,8 @@ centisencond->centisecond centisenconds->centiseconds centrifugeable->centrifugable centrigrade->centigrade +centriod->centroid +centriods->centroids centruies->centuries centruy->century centuties->centuries From 075a51742333a1ed9d35a3f50ab27f1ebe082448 Mon Sep 17 00:00:00 2001 From: Christian Fischer Date: Mon, 12 Dec 2022 13:50:07 +0100 Subject: [PATCH 104/302] Add operatin->operation, operating, 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 179055b395..710343c719 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -23831,6 +23831,7 @@ operaror->operator operatation->operation operatations->operations operater->operator +operatin->operation, operating, operatings->operating operatio->operation operatione->operation From fa3a11e566900350a5b9e7940882f81388d3e15f Mon Sep 17 00:00:00 2001 From: William Jamieson Date: Mon, 12 Dec 2022 10:07:10 -0500 Subject: [PATCH 105/302] README: Document how to use pre-commit (#2639) --- README.rst | 23 +++++++++++++++++++++++ 1 file changed, 23 insertions(+) diff --git a/README.rst b/README.rst index 69e9fee088..d3b49e06ec 100644 --- a/README.rst +++ b/README.rst @@ -154,6 +154,29 @@ config files. .. _tomli: https://pypi.org/project/tomli/ +`pre-commit `_ hook +-------------------------------------------- + +codespell also works with `pre-commit`, using + +.. code-block:: yaml + + - repo: https://github.com/codespell-project/codespell + rev: v2.2.2 + hooks: + - id: codespell + +If one configures codespell using the `pyproject.toml` file instead use: + +.. code-block:: yaml + + - repo: https://github.com/codespell-project/codespell + rev: v2.2.2 + hooks: + - id: codespell + additional_dependencies: + - tomli + Dictionary format ----------------- From d219e432de987188411b82d71ed54800f039fa75 Mon Sep 17 00:00:00 2001 From: Waldir Pimenta Date: Mon, 12 Dec 2022 15:59:44 +0000 Subject: [PATCH 106/302] README: document simplest usage pattern (#2638) --- README.rst | 17 +++++++++++++++-- 1 file changed, 15 insertions(+), 2 deletions(-) diff --git a/README.rst b/README.rst index d3b49e06ec..56f273fb15 100644 --- a/README.rst +++ b/README.rst @@ -34,7 +34,20 @@ You can use ``pip`` to install codespell with e.g.: Usage ----- -For more in depth info please check usage with ``codespell -h``. +Below are some simple usage examples to demonstrate how the tool works. +For exhaustive usage information, please check the output of ``codespell -h``. + +Run codespell in all files of the current directory: + +.. code-block:: sh + + codespell + +Run codespell in specific files or directories (specified via their names or glob patterns): + +.. code-block:: sh + + codespell some_file some_dir/ *.ext Some noteworthy flags: @@ -42,7 +55,7 @@ Some noteworthy flags: codespell -w, --write-changes -The ``-w`` flag will actually implement the changes recommended by codespell. Not running with ``-w`` flag is the same as with doing a dry run. It is recommended to run this with the ``-i`` or ``--interactive`` flag. +The ``-w`` flag will actually implement the changes recommended by codespell. Running without the ``-w`` flag is the same as with doing a dry run. It is recommended to run this with the ``-i`` or ``--interactive`` flag. .. code-block:: sh From e78840b143ccf4fcda4a6ff9f66cc6efa7c96a85 Mon Sep 17 00:00:00 2001 From: Stefan Kangas Date: Fri, 16 Dec 2022 01:22:38 +0100 Subject: [PATCH 107/302] Prefer HTTPS to HTTP in URLs --- README.rst | 6 +++--- codespell_lib/_codespell.py | 2 +- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/README.rst b/README.rst index 56f273fb15..f1c7e6d451 100644 --- a/README.rst +++ b/README.rst @@ -332,8 +332,8 @@ with the following terms: You should have received a copy of the GNU General Public License along with this program; if not, see - . + . -.. _GPL v2: http://www.gnu.org/licenses/old-licenses/gpl-2.0.html +.. _GPL v2: https://www.gnu.org/licenses/old-licenses/gpl-2.0.html -``dictionary.txt`` and the other ``dictionary_*.txt`` files are derivative works of English Wikipedia and are released under the `Creative Commons Attribution-Share-Alike License 3.0 `_. +``dictionary.txt`` and the other ``dictionary_*.txt`` files are derivative works of English Wikipedia and are released under the `Creative Commons Attribution-Share-Alike License 3.0 `_. diff --git a/codespell_lib/_codespell.py b/codespell_lib/_codespell.py index e1783b5a2a..c7ce66be1b 100644 --- a/codespell_lib/_codespell.py +++ b/codespell_lib/_codespell.py @@ -10,7 +10,7 @@ # # You should have received a copy of the GNU General Public License # along with this program; if not, see -# http://www.gnu.org/licenses/old-licenses/gpl-2.0.html. +# https://www.gnu.org/licenses/old-licenses/gpl-2.0.html. """ Copyright (C) 2010-2011 Lucas De Marchi Copyright (C) 2011 ProFUSION embedded systems From ee27767ffcbe2dcb3d48e85e4ac96f6f121ea437 Mon Sep 17 00:00:00 2001 From: Adrien Berchet Date: Fri, 16 Dec 2022 16:40:53 +0100 Subject: [PATCH 108/302] Flush stdout when asking word fix --- codespell_lib/_codespell.py | 1 + 1 file changed, 1 insertion(+) diff --git a/codespell_lib/_codespell.py b/codespell_lib/_codespell.py index c7ce66be1b..e91362b177 100644 --- a/codespell_lib/_codespell.py +++ b/codespell_lib/_codespell.py @@ -694,6 +694,7 @@ def ask_for_word_fix( fixword = fix_case(wrongword, misspelling.data) while not r: print(f"{line}\t{wrongword} ==> {fixword} (Y/n) ", end="") + sys.stdout.flush() r = sys.stdin.readline().strip().upper() if not r: r = "Y" From 261ad62c27bbbddf43548eab9dc9f80ca92ec34c Mon Sep 17 00:00:00 2001 From: Eric Larson Date: Fri, 16 Dec 2022 11:01:28 -0500 Subject: [PATCH 109/302] Update codespell_lib/_codespell.py --- codespell_lib/_codespell.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/codespell_lib/_codespell.py b/codespell_lib/_codespell.py index e91362b177..f75aba772a 100644 --- a/codespell_lib/_codespell.py +++ b/codespell_lib/_codespell.py @@ -693,8 +693,8 @@ def ask_for_word_fix( r = "" fixword = fix_case(wrongword, misspelling.data) while not r: - print(f"{line}\t{wrongword} ==> {fixword} (Y/n) ", end="") - sys.stdout.flush() + print(f"{line}\t{wrongword} ==> {fixword} (Y/n) ", end="", + flush=True) r = sys.stdin.readline().strip().upper() if not r: r = "Y" From 2c5cc9ebf1b6bad8efa88ee673ae6a88dc17d833 Mon Sep 17 00:00:00 2001 From: Adrien Berchet Date: Fri, 16 Dec 2022 17:26:55 +0100 Subject: [PATCH 110/302] Use flush for missplelling with a reason --- codespell_lib/_codespell.py | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/codespell_lib/_codespell.py b/codespell_lib/_codespell.py index f75aba772a..cd6845484f 100644 --- a/codespell_lib/_codespell.py +++ b/codespell_lib/_codespell.py @@ -693,8 +693,7 @@ def ask_for_word_fix( r = "" fixword = fix_case(wrongword, misspelling.data) while not r: - print(f"{line}\t{wrongword} ==> {fixword} (Y/n) ", end="", - flush=True) + print(f"{line}\t{wrongword} ==> {fixword} (Y/n) ", end="", flush=True) r = sys.stdin.readline().strip().upper() if not r: r = "Y" @@ -716,8 +715,7 @@ def ask_for_word_fix( for i, o in enumerate(opt): fixword = fix_case(wrongword, o) print(" %d) %s" % (i, fixword), end="") - print(": ", end="") - sys.stdout.flush() + print(": ", end="", flush=True) n = sys.stdin.readline().strip() if not n: From fb8ea00440bc2520ce8e62f9fc58c1aeec857b1e Mon Sep 17 00:00:00 2001 From: Stefan Kangas Date: Fri, 9 Dec 2022 12:36:18 +0100 Subject: [PATCH 111/302] Correct "3rt" to "3rd" --- 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 710343c719..ec95bf248a 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -2,6 +2,7 @@ 2rd->2nd 2st->2nd 3nd->3rd +3rt->3rd 3st->3rd 4rd->4th a-diaerers->a-diaereses From 56a6f7567b216e259d2c716c24a787cc941468cc Mon Sep 17 00:00:00 2001 From: Stefan Kangas Date: Sat, 17 Dec 2022 20:16:05 +0100 Subject: [PATCH 112/302] Don't print config files by default (#2618) --- codespell_lib/_codespell.py | 13 ++++++++----- codespell_lib/tests/test_basic.py | 29 +++++++++++++++++++++++++++++ 2 files changed, 37 insertions(+), 5 deletions(-) diff --git a/codespell_lib/_codespell.py b/codespell_lib/_codespell.py index cd6845484f..61de534674 100644 --- a/codespell_lib/_codespell.py +++ b/codespell_lib/_codespell.py @@ -132,6 +132,7 @@ class QuietLevels: DISABLED_FIXES = 4 NON_AUTOMATIC_FIXES = 8 FIXES = 16 + CONFIG_FILES = 32 class GlobMatch: @@ -475,7 +476,7 @@ def parse_options( "--quiet-level", action="store", type=int, - default=2, + default=34, help="bitmask that allows suppressing messages:\n" "- 0: print all messages.\n" "- 1: disable warnings about wrong encoding.\n" @@ -483,6 +484,7 @@ def parse_options( "- 4: omit warnings about automatic fixes that were disabled in the dictionary.\n" # noqa: E501 "- 8: don't print anything for non-automatic fixes.\n" # noqa: E501 "- 16: don't print the list of fixed files.\n" + "- 32: don't print configuration files.\n" "As usual with bitmasks, these levels can be " "combined; e.g. use 3 for levels 1+2, 7 for " "1+2+4, 23 for 1+2+4+16, etc. " @@ -993,10 +995,11 @@ def main(*args: str) -> int: options, parser, used_cfg_files = parse_options(args) # Report used config files - if len(used_cfg_files) > 0: - print("Used config files:") - for ifile, cfg_file in enumerate(used_cfg_files, start=1): - print(" %i: %s" % (ifile, cfg_file)) + if not options.quiet_level & QuietLevels.CONFIG_FILES: + if len(used_cfg_files) > 0: + print("Used config files:") + for ifile, cfg_file in enumerate(used_cfg_files, start=1): + print(" %i: %s" % (ifile, cfg_file)) if options.regex and options.write_changes: print( diff --git a/codespell_lib/tests/test_basic.py b/codespell_lib/tests/test_basic.py index ae4c29949a..eab7b30745 100644 --- a/codespell_lib/tests/test_basic.py +++ b/codespell_lib/tests/test_basic.py @@ -1017,6 +1017,35 @@ def test_uri_regex_def() -> None: assert not uri_regex.findall(boilerplate % uri), uri +def test_quiet_option_32( + tmp_path: Path, + tmpdir: pytest.TempPathFactory, + capsys: pytest.CaptureFixture[str], +) -> None: + d = tmp_path / "files" + d.mkdir() + conf = str(tmp_path / "setup.cfg") + with open(conf, "w") as f: + # It must contain a "codespell" section. + f.write("[codespell]\n") + args = ("--config", conf) + + # Config files should NOT be in output. + result = cs.main(str(d), *args, "--quiet-level=32", std=True) + assert isinstance(result, tuple) + code, stdout, _ = result + assert code == 0 + assert "Used config files:" not in stdout + + # Config files SHOULD be in output. + result = cs.main(str(d), *args, "--quiet-level=2", std=True) + assert isinstance(result, tuple) + code, stdout, _ = result + assert code == 0 + assert "Used config files:" in stdout + assert "setup.cfg" in stdout + + @pytest.mark.parametrize("kind", ("toml", "cfg")) def test_config_toml( tmp_path: Path, From 92c94fa77ce97dadbd274fb6c4fc7da51421b8db Mon Sep 17 00:00:00 2001 From: Cameron Brown Date: Sat, 17 Dec 2022 18:20:38 -0500 Subject: [PATCH 113/302] Add spelling fixes for derivative --- codespell_lib/data/dictionary_rare.txt | 2 ++ 1 file changed, 2 insertions(+) diff --git a/codespell_lib/data/dictionary_rare.txt b/codespell_lib/data/dictionary_rare.txt index e67c10625d..44b300b1d8 100644 --- a/codespell_lib/data/dictionary_rare.txt +++ b/codespell_lib/data/dictionary_rare.txt @@ -55,6 +55,8 @@ degrate->degrade degrates->degrades dependant->dependent derails->details +dirivative->derivative +dirivitive->derivative discontentment->discontent discreet->discrete discus->discuss From b8006de48411613957ae9d154d8e19f276d15cd8 Mon Sep 17 00:00:00 2001 From: Cameron Brown Date: Sun, 18 Dec 2022 11:52:07 -0500 Subject: [PATCH 114/302] Add plurals of derivative misspellings --- codespell_lib/data/dictionary_rare.txt | 2 ++ 1 file changed, 2 insertions(+) diff --git a/codespell_lib/data/dictionary_rare.txt b/codespell_lib/data/dictionary_rare.txt index 44b300b1d8..ab63671956 100644 --- a/codespell_lib/data/dictionary_rare.txt +++ b/codespell_lib/data/dictionary_rare.txt @@ -56,7 +56,9 @@ degrates->degrades dependant->dependent derails->details dirivative->derivative +dirivatives->derivatives dirivitive->derivative +dirivitives->derivatives discontentment->discontent discreet->discrete discus->discuss From 3a1634873a0b16733f86f63fdeac7c3e88b20a46 Mon Sep 17 00:00:00 2001 From: Dimitri Papadopoulos Orfanos <3234522+DimitriPapadopoulos@users.noreply.github.com> Date: Thu, 22 Dec 2022 00:13:50 +0100 Subject: [PATCH 115/302] Add several typos and refinements (#2635) From https://github.com/GEANT/CAT/pull/252 --- codespell_lib/data/dictionary.txt | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/codespell_lib/data/dictionary.txt b/codespell_lib/data/dictionary.txt index ec95bf248a..e3aa135370 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -11086,11 +11086,11 @@ deviceremoveable->deviceremovable devicesr->devices devicess->devices devicest->devices -devide->divide +devide->divide, device, devided->divided devider->divider deviders->dividers -devides->divides +devides->divides, devices, deviding->dividing deviece->device devied->device @@ -21402,6 +21402,9 @@ meeds->needs meens->means meerkrat->meerkat meerly->merely +meethod->method +meethodology->methodology +meethods->methods meetign->meeting meganism->mechanism mege->merge From 8cd47c19a73f402ac96770a4b4d284f4641a7d96 Mon Sep 17 00:00:00 2001 From: int-y1 Date: Tue, 18 Oct 2022 00:22:24 -0700 Subject: [PATCH 116/302] Update "exercise" --- codespell_lib/data/dictionary.txt | 23 +++++++++++++++++++++++ 1 file changed, 23 insertions(+) diff --git a/codespell_lib/data/dictionary.txt b/codespell_lib/data/dictionary.txt index e3aa135370..f3a59212fd 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -14052,6 +14052,13 @@ excerciser->exerciser excercises->exercises excercising->exercising excerise->exercise +excerised->exercised +excerises->exercises +excerising->exercising +excersize->exercise +excersized->exercised +excersizes->exercises +excersizing->exercising exces->excess excesed->exceeded excesive->excessive @@ -14218,6 +14225,9 @@ execeeded->exceeded execeeds->exceeds exeception->exception execeptions->exceptions +execise->excise, exercise, +execised->excised, exercised, +execises->excises, exercises, execising->exercising execption->exception execptions->exceptions @@ -14396,11 +14406,24 @@ exerciesed->exercised exercieses->exercises exerciesing->exercising exercize->exercise +exercized->exercised +exercizes->exercises +exercizing->exercising exerimental->experimental exerpt->excerpt exerpts->excerpts +exersice->exercise +exersiced->exercised +exersices->exercises +exersicing->exercising +exersise->exercise +exersised->exercised +exersises->exercises +exersising->exercising exersize->exercise +exersized->exercised exersizes->exercises +exersizing->exercising exerternal->external exeucte->execute exeucted->executed From fd47534ac74c494d8f40634d1d8d919b0bb37e30 Mon Sep 17 00:00:00 2001 From: - Date: Mon, 31 Oct 2022 13:26:04 +0100 Subject: [PATCH 117/302] Added month misspells --- codespell_lib/data/dictionary.txt | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/codespell_lib/data/dictionary.txt b/codespell_lib/data/dictionary.txt index f3a59212fd..5594f8886a 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -9760,6 +9760,7 @@ decceleration->deceleration deccrement->decrement deccremented->decremented deccrements->decrements +deceber->December decelaration->declaration, deceleration, decelarations->declarations, decelerations, Decemer->December @@ -11142,6 +11143,7 @@ devritualisation->devirtualisation devritualization->devirtualization devuce->device dewrapping->unwrapping +dezember->December dezert->dessert dezibel->decibel dezine->design @@ -20127,7 +20129,8 @@ jagwar->jaguar jalusey->jealousy, jalousie, januar->January janurary->January -Januray->January +januray->January +janury->January japanease->japanese japaneese->Japanese Japanes->Japanese @@ -20184,10 +20187,12 @@ judisuary->judiciary juducial->judicial juge->judge juipter->Jupiter +juli->July jumo->jump jumoed->jumped jumpimng->jumping jumpt->jumped, jump, +juni->June jupyther->Jupyter juristiction->jurisdiction juristictions->jurisdictions @@ -21164,6 +21169,7 @@ marryied->married marshmellow->marshmallow marshmellows->marshmallows marter->martyr +marz->March, Mars, masakist->masochist mashetty->machete mashine->machine @@ -23703,6 +23709,7 @@ ojective->objective ojects->objects ojekts->objects okat->okay +oktober->October oldes->oldest oll->all, ole, old, Olly, oil, olny->only From defc684225e9341db67d10c681889413effe6287 Mon Sep 17 00:00:00 2001 From: Stefan Kangas Date: Fri, 23 Dec 2022 13:24:27 +0100 Subject: [PATCH 118/302] Add typos from Linux kernel's spelling.txt file https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/plain/scripts/spelling.txt --- codespell_lib/data/dictionary.txt | 69 ++++++++++++++++++++++++++ codespell_lib/data/dictionary_code.txt | 1 + codespell_lib/data/dictionary_rare.txt | 1 + 3 files changed, 71 insertions(+) diff --git a/codespell_lib/data/dictionary.txt b/codespell_lib/data/dictionary.txt index 5594f8886a..e98e9e730d 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -760,6 +760,7 @@ actural->actual acturally->actually actusally->actually actve->active +actvie->active actzal->actual acual->actual acually->actually @@ -3329,6 +3330,7 @@ asynchroneously->asynchronously asynchronious->asynchronous asynchronlous->asynchronous asynchrons->asynchronous +asynchronus->asynchronous asynchroous->asynchronous asynchrounous->asynchronous asynchrounsly->asynchronously @@ -4240,6 +4242,7 @@ bateries->batteries batery->battery battaries->batteries battary->battery +battey->battery bbefore->before bboolean->boolean bbooleans->booleans @@ -4554,6 +4557,7 @@ bitfilelds->bitfields bitis->bits bitmast->bitmask bitnaps->bitmaps +bitwiedh->bitwidth bitwise-orring->bitwise-oring biult->built, build, bizare->bizarre @@ -4729,7 +4733,9 @@ bottonm->bottom bottons->bottoms, buttons, botttom->bottom bouce->bounce +bouced->bounced bouces->bounces +boucing->bouncing boudaries->boundaries boudary->boundary bouding->bounding @@ -5283,6 +5289,7 @@ callint->calling callled->called calllee->callee calloed->called +callser->caller callsr->calls calss->calls, class, calsses->classes @@ -6066,6 +6073,10 @@ chnage->change chnaged->changed chnages->changes chnaging->changing +chnange->change +chnanged->changed +chnanges->changes +chnanging->changing chnge->change chnged->changed chnges->changes @@ -7127,6 +7138,7 @@ compatiable->compatible compatiablity->compatibility compatibel->compatible compatibile->compatible +compatibililty->compatibility compatibiliy->compatibility compatibiltiy->compatibility compatibilty->compatibility @@ -9721,6 +9733,10 @@ debians->Debian's debina->Debian debloking->deblocking debnia->Debian +debouce->debounce +debouced->debounced +debouces->debounces +deboucing->debouncing debth->depth debths->depths debudg->debug @@ -10273,7 +10289,10 @@ deliberitely->deliberately delibery->delivery delibrate->deliberate delibrately->deliberately +deliever->deliver +delievered->delivered delievering->delivering +delievers->delivers delievery->delivery delievred->delivered delievries->deliveries @@ -10963,6 +10982,7 @@ detectetd->detected detectiona->detection, detections, detectsion->detection detectsions->detections +detectt->detect detemine->determine detemined->determined detemines->determines @@ -11570,6 +11590,7 @@ dirtyed->dirtied dirtyness->dirtiness dirver->driver disabe->disable +disabed->disabled disabeling->disabling disabels->disables disabes->disables @@ -11627,6 +11648,7 @@ disapprouving->disapproving disaproval->disapproval disard->discard disariable->desirable +disasembler->disassembler disassebled->disassembled disassocate->disassociate disassocation->disassociation @@ -11782,6 +11804,7 @@ disertation->dissertation disfunctional->dysfunctional disfunctionality->dysfunctionality disgarded->discarded, discarted, +disgest->digest disgn->design disgned->designed disgner->designer @@ -14014,6 +14037,7 @@ exceded->exceeded excedeed->exceeded excedes->exceeds exceding->exceeding +exceds->exceeds exceeed->exceed exceirpt->excerpt exceirpts->excerpts @@ -14430,6 +14454,7 @@ exerternal->external exeucte->execute exeucted->executed exeuctes->executes +exeuction->execution exeution->execution exexutable->executable exhalted->exalted @@ -15754,6 +15779,8 @@ fitering->filtering fiters->filters, fighters, fitters, fivers, fith->fifth, filth, fitler->filter +fitlered->filtered +fitlering->filtering fitlers->filters fivety->fifty fixe->fixed, fixes, fix, fixme, fixer, @@ -16902,6 +16929,7 @@ granchildren->grandchildren granilarity->granularity granuality->granularity granualtiry->granularity +granularty->granularity granulatiry->granularity grapgics->graphics graphcis->graphics @@ -17283,6 +17311,7 @@ havent't->haven't havent->haven't havew->have haviest->heaviest +havind->having havn't->haven't havnt->haven't hax->hex @@ -18341,6 +18370,8 @@ incomfort->discomfort, uncomfortable, in comfort, incomfortable->uncomfortable incomming->incoming incommplete->incomplete +incompaitible->incompatible +incompaitiblity->incompatibility incomparible->incompatible, incomparable, incompatabable->incompatible incompatabiity->incompatibility @@ -20027,6 +20058,7 @@ isssue->issue isssued->issued isssues->issues issueing->issuing +issus->issues ist->is, it, its, it's, sit, list, istalling->installing istance->instance @@ -20905,6 +20937,7 @@ lveo->love lvoe->love Lybia->Libya maake->make +maangement->management mabe->maybe mabye->maybe macack->macaque @@ -22215,6 +22248,7 @@ monickers->monikers monitary->monetary moniter->monitor monitoing->monitoring +monitring->monitoring monkies->monkeys monochorome->monochrome monochromo->monochrome @@ -23636,6 +23670,9 @@ odly->oddly ody->body oen->one ofcource->of course +off-laod->off-load +off-laoded->off-loaded +off-laoding->off-loading offcers->officers offcial->official offcially->officially @@ -23663,6 +23700,9 @@ officeally->officially officeals->officials officealy->officially officialy->officially +offlaod->offload +offlaoded->offloaded +offlaoding->offloading offloded->offloaded offred->offered offsence->offence @@ -23930,6 +23970,7 @@ oppinion->opinion oppinions->opinions opponant->opponent oppononent->opponent +opportunies->opportunities opportunisticly->opportunistically opportunistly->opportunistically opportunties->opportunities @@ -24323,6 +24364,7 @@ overcompansations->overcompensations overengeneer->overengineer overengeneering->overengineering overfl->overflow +overflw->overflow overfow->overflow overfowed->overflowed overfowing->overflowing @@ -24861,6 +24903,7 @@ pattented->patented pattersn->patterns pattren->pattern, patron, pattrens->patterns, patrons, +pattrns->patterns pavillion->pavilion pavillions->pavilions paínt->paint @@ -25092,6 +25135,7 @@ periode->period periodicaly->periodically periodioc->periodic peripathetic->peripatetic +periperal->peripheral peripherial->peripheral peripherials->peripherals perisist->persist @@ -26036,6 +26080,10 @@ preffixed->prefixed preffixes->prefixes preffixing->prefixing prefices->prefixes +prefitler->prefilter +prefitlered->prefiltered +prefitlering->prefiltering +prefitlers->prefilters preformance->performance preformances->performances pregancies->pregnancies @@ -26085,6 +26133,10 @@ preppended->prepended preppendet->prepended preppent->prepend, preprent, preppented->prepended +preprare->prepare +preprared->prepared +preprares->prepares +prepraring->preparing preprend->prepend preprended->prepended prepresent->represent @@ -26218,6 +26270,7 @@ previousl->previously previousy->previously previsou->previous previsouly->previously +previsously->previously previuous->previous previus->previous previvous->previous @@ -27045,6 +27098,7 @@ puposes->purposes pupulated->populated purcahed->purchased purcahse->purchase +purgable->purgeable purgest->purges puritannical->puritanical purposedly->purposely @@ -27759,6 +27813,7 @@ recidents->residents reciding->residing reciepents->recipients reciept->receipt +recievd->received recieve->receive recieved->received reciever->receiver @@ -29119,9 +29174,11 @@ reqirement->requirement reqirements->requirements reqires->requires reqiring->requiring +reqister->register reqiure->require reqrite->rewrite reqrites->rewrites +requed->requeued requencies->frequencies requency->frequency requeried->required @@ -29912,6 +29969,7 @@ runnigng->running runnin->running runnint->running runnners->runners +runnnig->running runnning->running runns->runs runnung->running @@ -30914,6 +30972,7 @@ shif-tab->shift-tab shineing->shining shiped->shipped shiping->shipping +shoft->shift, short, shoftware->software shoild->should shoing->showing @@ -31169,6 +31228,7 @@ simulatenously->simultaneously simultanaeous->simultaneous simultaneos->simultaneous simultaneosly->simultaneously +simultaneusly->simultaneously simultanious->simultaneous simultaniously->simultaneously simultanous->simultaneous @@ -31415,6 +31475,7 @@ soemthing->something soemwhere->somewhere sofisticated->sophisticated softend->softened +softwade->software softwares->software softwre->software sofware->software @@ -33376,6 +33437,7 @@ sycronizing->synchronizing sycronous->synchronous sycronously->synchronously sycronus->synchronous +syfs->sysfs sylabus->syllabus sylabuses->syllabuses, syllabi, syle->style @@ -33605,6 +33667,7 @@ tagnets->tangents tagued->tagged tahn->than taht->that +tained->tainted, stained, taks->task, tasks, takes, takslet->tasklet talbe->table @@ -33645,6 +33708,7 @@ tarce->trace tarced->traced tarces->traces tarcing->tracing +tarffic->traffic targed->target targer->target targest->targets @@ -34425,6 +34489,7 @@ topologie->topology torerable->tolerable toriodal->toroidal tork->torque +torlence->tolerance tormenters->tormentors tornadoe->tornado torpeados->torpedoes @@ -34682,6 +34747,7 @@ transisitioned->transitioned transisitioning->transitioning transisitions->transitions transistion->transition +transistioned->transitioned transistioning->transitioning transistions->transitions transitionnal->transitional @@ -35332,6 +35398,7 @@ uncommpressed->uncompressed uncommpression->uncompression uncommtited->uncommitted uncomon->uncommon +uncompatible->incompatible uncompetetive->uncompetitive uncompetive->uncompetitive uncomplete->incomplete @@ -35688,6 +35755,7 @@ unknon->unknown unknonw->unknown unknonwn->unknown unknonws->unknowns +unknouwn->unknown unknwn->unknown unknwns->unknowns unknwoing->unknowing @@ -36243,6 +36311,7 @@ usag->usage usal->usual usally->usually uscaled->unscaled +usccess->success useability->usability useable->usable useage->usage diff --git a/codespell_lib/data/dictionary_code.txt b/codespell_lib/data/dictionary_code.txt index 2c92b49669..66a54746b0 100644 --- a/codespell_lib/data/dictionary_code.txt +++ b/codespell_lib/data/dictionary_code.txt @@ -69,6 +69,7 @@ tarceback->traceback tarcebacks->tracebacks templace->template thead->thread +theads->threads todays->today's udate->update, date, udates->updates, dates, diff --git a/codespell_lib/data/dictionary_rare.txt b/codespell_lib/data/dictionary_rare.txt index ab63671956..41cfb349b4 100644 --- a/codespell_lib/data/dictionary_rare.txt +++ b/codespell_lib/data/dictionary_rare.txt @@ -76,6 +76,7 @@ forewarded->forwarded formule->formula, formulas, formules->formulas fount->found +frequence->frequency fro->for, from, froward->forward fulfilment->fulfillment From 73770ee43d928a94bc697fde02e357f956a3d2d8 Mon Sep 17 00:00:00 2001 From: Stefan Kangas Date: Fri, 23 Dec 2022 14:20:57 +0100 Subject: [PATCH 119/302] Add corrections from Fossies extra dictionary https://fossies.org/codespell_usage_hints.html Closes #2399 --- codespell_lib/data/dictionary.txt | 482 +++++++++++++++++++++++-- codespell_lib/data/dictionary_code.txt | 1 + codespell_lib/data/dictionary_rare.txt | 2 +- 3 files changed, 448 insertions(+), 37 deletions(-) diff --git a/codespell_lib/data/dictionary.txt b/codespell_lib/data/dictionary.txt index e98e9e730d..d454ce53d4 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -47,6 +47,7 @@ abborting->aborting abborts->aborts, abbots, abbout->about, abbot, abbrevate->abbreviate +abbrevated->abbreviated abbrevation->abbreviation abbrevations->abbreviations abbreviaton->abbreviation @@ -66,6 +67,7 @@ abitrary->arbitrary abitrate->arbitrate abitration->arbitration abizmal->abysmal +abliity->ability abnoramlly->abnormally abnormalty->abnormally abnormaly->abnormally @@ -815,6 +817,7 @@ addapts->adapts addd->add addded->added addding->adding +addditional->additional adddress->address adddresses->addresses addds->adds @@ -889,6 +892,7 @@ addres->address addresable->addressable addresed->addressed addreses->addresses +addresesd->addressed addresess->addresses addresing->addressing addresse->addresses, address, @@ -949,6 +953,7 @@ adjcence->adjacence adjcencies->adjacencies adjcent->adjacent adjcentcy->adjacency +adjecent->adjacent adjency->agency, adjacency, adjsence->adjacence adjsencies->adjacencies @@ -1189,6 +1194,7 @@ agument->argument agumented->augmented aguments->arguments aheared->adhered +ahere->here, adhere, ahev->have ahlpa->alpha ahlpas->alphas @@ -1553,6 +1559,7 @@ alingment->alignment alings->aligns, slings, alinment->alignment alinments->alignments +alisas->alias, aliases, alising->aliasing aliver->alive, liver, a liver, sliver, allcate->allocate @@ -1986,6 +1993,7 @@ ane->and anevironment->environment anevironments->environments angluar->angular +anguluar->angular anhoter->another anid->and anihilation->annihilation @@ -2272,6 +2280,7 @@ appendign->appending appendt->append appened->append, appended, happened, appeneded->appended +appenging->appending appenines->Apennines appens->appends appent->append @@ -2305,6 +2314,8 @@ appies->applies applay->apply applcation->application applcations->applications +applciation->application +applciations->applications appliable->applicable appliacable->applicable appliaction->application @@ -2316,6 +2327,7 @@ applicaion->application applicaions->applications applicaiton->application applicaitons->applications +applicalbe->applicable applicance->appliance applicapility->applicability applicaple->applicable @@ -2439,6 +2451,7 @@ approched->approached approches->approaches approching->approaching approiate->appropriate +approimation->approximation approopriate->appropriate approoximate->approximate approoximately->approximately @@ -2696,6 +2709,7 @@ archictectures->architectures archicture->architecture archiecture->architecture archiectures->architectures +archieve->achieve, archive, archimedian->archimedean architct->architect architcts->architects @@ -3054,6 +3068,7 @@ assiciated->associated assiciates->associates assiciation->association assiciations->associations +assicieted->associated asside->aside assiged->assigned assigend->assigned @@ -3231,6 +3246,7 @@ assumbed->assumed assumbes->assumes assumbing->assuming assumend->assumed +assumimg->assuming assumking->assuming assumme->assume assummed->assumed @@ -3392,6 +3408,7 @@ atribut->attribute atribute->attribute atributed->attributed atributes->attributes +atronomical->astronomical, agronomical, atrribute->attribute atrributes->attributes atrtribute->attribute @@ -3482,6 +3499,7 @@ attribted->attributed attribtes->attributes, attribute, attribting->attributing attribtue->attribute +attribtues->attributes attribtutes->attributes attribude->attribute attribue->attribute @@ -3990,6 +4008,7 @@ availabke->available availabl->available availabled->available availablen->available +availablility->availability availablity->availability availabyl->available availaiable->available @@ -4018,6 +4037,7 @@ availeble->available availiable->available availibility->availability availibilty->availability +availibity->availability availible->available availlable->available avalable->available @@ -4078,6 +4098,7 @@ avoind->avoid avoinded->avoided avoinding->avoiding avoinds->avoids +avoud->avoid avriable->variable avriables->variables avriant->variant @@ -4101,9 +4122,12 @@ axissymmetric->axisymmetric axix->axis axixsymmetric->axisymmetric axpressed->expressed +aynchronous->asynchronous aysnc->async +aything->anything ayway->anyway, away, ayways->always +baase->base, abase, bable->babel, table, bible, bacause->because baceause->because @@ -4116,6 +4140,7 @@ backedn->backend backedns->backends backened->backend, blackened, backeneds->backends, blackens, +backets->brackets, baskets, buckets, backgorund->background backgorunds->backgrounds backgound->background @@ -4166,6 +4191,8 @@ backwark->backward backwrad->backward bactracking->backtracking bacup->backup +bacward->backward +bacwards->backwards baed->based bage->bag bahaving->behaving @@ -4188,6 +4215,7 @@ bakwards->backwards balacing->balancing balck->black, balk, balence->balance +ballance->balance baloon->balloon baloons->balloons balse->false @@ -4262,6 +4290,7 @@ beaurocracy->bureaucracy beaurocratic->bureaucratic beause->because beauti->beauty +beautifull->beautiful, beautifully, beautiy->beauty beautyfied->beautified beautyfull->beautiful @@ -4306,6 +4335,7 @@ becxause->because beding->bedding, begging, bedore->before beed->been, bead, beet, beer, bees, +beeen->been beeing->being, been, beeings->beings beetween->between @@ -4358,6 +4388,7 @@ behaivors->behaviors behaivour->behaviour behaivoural->behavioural behaivours->behaviours +behavies->behaves behavious->behaviour, behaviours, behavioutr->behaviour behaviro->behavior @@ -4370,11 +4401,12 @@ behavriour->behaviour behavriours->behaviours behinde->behind behing->behind, being, +behvaior->behaviour behvaiour->behaviour behviour->behaviour beigin->begin beiginning->beginning -beind->behind +beind->behind, being, beinning->beginning bejond->beyond beleagured->beleaguered @@ -4557,6 +4589,7 @@ bitfilelds->bitfields bitis->bits bitmast->bitmask bitnaps->bitmaps +bitween->between bitwiedh->bitwidth bitwise-orring->bitwise-oring biult->built, build, @@ -4698,8 +4731,10 @@ bootstap->bootstrap bootstapped->bootstrapped bootstapping->bootstrapping bootstaps->bootstraps +bootstraping->bootstrapping booundaries->boundaries booundary->boundary +boounds->bounds boquet->bouquet borad->board boradcast->broadcast @@ -4961,7 +4996,7 @@ bufer->buffer bufers->buffers buffereed->buffered bufferent->buffered -bufferes->buffers +bufferes->buffers, buffered, bufferred->buffered buffeur->buffer bufffer->buffer @@ -5035,7 +5070,7 @@ bult-in->built-in bultin->builtin bumb->bump, bomb, bum, bumbed->bumped, bombed, -bumber->bumper, bomber, bummer, +bumber->bumper, bomber, bummer, number, bumbing->bumping, bombing, bumby->bumpy bumpded->bumped @@ -5075,6 +5110,7 @@ butttons->buttons buufers->buffers buuild->build buuilds->builds +buzilla->bugzilla bve->be bwtween->between bypas->bypass @@ -5204,6 +5240,8 @@ calcualates->calculates calcualating->calculating calcualation->calculation calcualations->calculations +calcualion->calculation +calcualions->calculations calcualte->calculate calcualted->calculated calcualter->calculator @@ -5251,6 +5289,7 @@ calcutating->calculating caleed->called caleee->callee calees->callees +calenday->calendar caler->caller calescing->coalescing caliased->aliased @@ -5274,8 +5313,8 @@ callbck->callback callcack->callback callcain->callchain calld->called -calle->called -callef->called +calle->called, caller, +callef->called, caller, calles->calls, called, callers, caller, callibrate->calibrate callibrated->calibrated @@ -5377,10 +5416,14 @@ cannotations->connotations cannote->cannot, connote, cannotes->cannot, connotes, cannott->cannot +cannt->cannot +canocical->canonical +canoical->canonical canonalize->canonicalize canonalized->canonicalized canonalizes->canonicalizes canonalizing->canonicalizing +canoncal->canonical canoncial->canonical canonicalizations->canonicalization canonival->canonical @@ -5440,6 +5483,7 @@ carachter->character caracter->character caractere->character caracteristic->characteristic +caracteristics->characteristics caracterized->characterized caracters->characters carbus->cardbus @@ -5567,6 +5611,7 @@ categogically->categorically categogies->categories categogy->category categorie->category, categories, +categoy->category cateogrical->categorical cateogrically->categorically cateogries->categories @@ -5608,6 +5653,7 @@ causion->caution causioned->cautioned causions->cautions causious->cautious +cautio->caution cavaet->caveat cavaets->caveats ccahe->cache @@ -5699,6 +5745,7 @@ certaily->certainly certaincy->certainty certainity->certainty certaint->certain +certaintly->certainly certaion->certain certan->certain certficate->certificate @@ -5769,9 +5816,12 @@ cetainty->certainty cetrainly->certainly cetting->setting Cgywin->Cygwin +chaarcter->character +chaarcters->characters chaarges->charges chacacter->character chacacters->characters +chace->chance, cache, chache->cache chached->cached chacheline->cacheline @@ -5991,6 +6041,8 @@ checkng->checking checkoslovakia->czechoslovakia checkox->checkbox checkpoing->checkpoint +checksm->checksum +checksms->checksums checkstum->checksum checkstuming->checksumming checkstumming->checksumming @@ -6069,6 +6121,7 @@ chipslect->chipselect chipstes->chipsets chiuldren->children chked->checked +chlid->child chnage->change chnaged->changed chnages->changes @@ -6274,6 +6327,7 @@ clasrooms->classrooms classe->class, classes, classess->classes classesss->classes +classied->classified classifcation->classification classifed->classified classifer->classifier @@ -6350,6 +6404,7 @@ climer->climber climers->climbers climing->climbing clincial->clinical +clinet->client clinets->clients clinicaly->clinically clipboad->clipboard @@ -6403,6 +6458,8 @@ clumsly->clumsily cluser->cluster clusetr->cluster clustred->clustered +clutser->cluster, clutter, +clutsers->clusters cmak->cmake cmmand->command cmmanded->commanded @@ -6733,6 +6790,8 @@ comaptibelities->compatibilities comaptibelity->compatibility comaptible->compatible comarators->comparators +comatibility->compatibility +comatible->compatible comback->comeback combained->combined combanations->combinations @@ -6815,6 +6874,7 @@ comletly->completely comlex->complex comlexity->complexity comlpeter->completer +comlpex->complex comma-separeted->comma-separated commad->command commadn->command @@ -6822,7 +6882,7 @@ commadn-line->command-line commadnline->commandline commadns->commands commads->commands -comman->command, common, comma, +comman->command, common, comma, commas, commandi->command commandoes->commandos commannd->command @@ -7020,6 +7080,9 @@ comnpress->compress comobobox->combo-box comon->common comonent->component +comonents->components +comopnent->component +comopnents->components comor->color compability->compatibility compabillity->compatibility @@ -7198,6 +7261,7 @@ compileable->compilable compiletime->compile time compiliant->compliant compiliation->compilation +compilicated->complicated compilier->compiler compiliers->compilers compitability->compatibility @@ -7219,6 +7283,7 @@ compleate->complete compleated->completed compleates->completes compleating->completing +compleation->completion, compilation, compleatly->completely compleete->complete compleeted->completed @@ -7252,6 +7317,7 @@ compliace->compliance complianse->compliance compliation->compilation compliations->compilations +complie->compile, complice, complied, complied-in->compiled-in complience->compliance complient->compliant @@ -7397,6 +7463,8 @@ conatining->containing conatins->contains conbination->combination conbinations->combinations +conbine->combine, confine, +conbined->combined, confined, conbtrols->controls concaneted->concatenated concantenated->concatenated @@ -7431,6 +7499,8 @@ concentating->concentrating concentation->concentration concentic->concentric concentraze->concentrate +concequence->consequence +concequences->consequences concered->concerned concerened->concerned concering->concerning @@ -7446,6 +7516,7 @@ concieved->conceived concious->conscious conciously->consciously conciousness->consciousness +concrets->concrete, concerts, concurence->concurrence concurency->concurrency concurent->concurrent @@ -7901,6 +7972,8 @@ conpleted->completed conpletes->completes conpleting->completing conpletion->completion +conpress->compress +conpressed->compressed conquerd->conquered conquerer->conqueror conquerers->conquerors @@ -8081,6 +8154,7 @@ constarint->constraint constarints->constraints constarnation->consternation constatn->constant +constatns->constants constatnt->constant constatnts->constants constcurts->constructs @@ -8101,6 +8175,8 @@ constitutents->constituents constly->costly constract->construct constracted->constructed +constraction->constriction, construction, contraction, +constractions->constrictions, constructions, contractions, constractor->constructor constractors->constructors constraing->constraining, constraint, @@ -8147,6 +8223,7 @@ constructcor->constructor constructer->constructor constructers->constructors constructes->constructs +constructiong->constructing, construction, constructred->constructed constructt->construct constructted->constructed @@ -8195,13 +8272,16 @@ consultunt->consultant consumate->consummate consumated->consummated consumating->consummating +consumation->consumption, consummation, consummed->consumed consummer->consumer consummers->consumers consumtion->consumption contacentaion->concatenation contagen->contagion +contaied->contained contaienr->container +contaienrs->containers contaier->container contails->contains contaiminate->contaminate @@ -8215,8 +8295,10 @@ containes->contains, container, contained, containg->containing containging->containing containig->containing +containined->contained containings->containing containining->containing +containinng->containing containint->containing containn->contain containner->container @@ -8238,6 +8320,8 @@ contamporaries->contemporaries contamporary->contemporary contan->contain contaned->contained +contaner->container +contaners->containers contanined->contained contaning->containing contanins->contains @@ -8330,15 +8414,18 @@ continential->continental continging->containing contingous->contiguous continguous->contiguous +contining->containing, continuing, continious->continuous continiously->continuously continoue->continue continouos->continuous continous->continuous continously->continuously +contins->contains continueing->continuing continuely->continually continuem->continuum +continuesly->continuously continuos->continuous continuosly->continuously continure->continue @@ -8456,10 +8543,13 @@ contsructor->constructor contstant->constant contstants->constants contstraint->constraint +contstruct->construct +contstructed->constructed contstructing->constructing contstruction->construction contstructor->constructor contstructors->constructors +contstructs->constructs contur->contour contzains->contains conuntry->country @@ -8511,6 +8601,7 @@ convertable->convertible convertables->convertibles convertation->conversation, conversion, convertations->conversations, conversions, +converterd->converted, converter, convertet->converted convertion->conversion convertions->conversions @@ -8758,6 +8849,8 @@ corosponds->corresponds corousel->carousel corparate->corporate corperations->corporations +corporatoin->corporation +corporatoins->corporations corpration->corporation corproration->corporation corprorations->corporations @@ -8825,6 +8918,7 @@ corresond->correspond corresonded->corresponded corresonding->corresponding corresonds->corresponds +corresopnding->corresponding correspdoning->corresponding correspending->corresponding correspinding->corresponding @@ -8907,6 +9001,7 @@ corrsponds->corresponds corrupeted->corrupted corruptable->corruptible corruptiuon->corruption +corruput->corrupt cors-site->cross-site cors-sute->cross-site corse->course @@ -8952,6 +9047,8 @@ costexpr->constexpr costitution->constitution costruct->construct costructer->constructor +costruction->construction +costructions->constructions costructor->constructor costum->custom, costume, costumary->customary @@ -9008,7 +9105,7 @@ coumpound->compound coumpounds->compounds councellor->councillor, counselor, councilor, councellors->councillors, counselors, councilors, -cound->could, count, +cound->could, count, found, counded->counted counding->counting coundition->condition @@ -9073,6 +9170,8 @@ coverred->covered coversion->conversion coversions->conversions coverted->converted, covered, coveted, +coverter->converter +coverters->converters coverting->converting covnersion->conversion covnert->convert @@ -9270,6 +9369,7 @@ crutially->crucially crutialy->crucially crypted->encrypted cryptocraphic->cryptographic +cryptograhic->cryptographic cryptograpic->cryptographic crystalisation->crystallisation cryto->crypto @@ -9309,6 +9409,7 @@ cumulattive->cumulative cuncurency->concurrency cunted->counted, hunted, cunter->counter, hunter, +cunterpart->counterpart cunting->counting, hunting, curce->curse, curve, course, curch->church @@ -9338,6 +9439,7 @@ currected->corrected currecting->correcting currectly->correctly, currently, currects->corrects, currents, +currecy->currency curreent->current curreents->currents curremt->current @@ -9356,6 +9458,7 @@ currentry->currently currenty->currently curresponding->corresponding curretly->currently +curretn->current curretnly->currently curriculem->curriculum currious->curious @@ -9383,6 +9486,7 @@ curtesy->courtesy, curtsy, curvatrue->curvature curvatrues->curvatures curvelinear->curvilinear +cusom->custom cusstom->custom cusstomer->customer cusstomers->customers @@ -9446,7 +9550,7 @@ custumized->customized custums->customs cuted->cut, cute, cuter, cutom->custom -cutted->cut +cutted->cutter, gutted, cut, cuurently->currently cuurrent->current cuurrents->currents @@ -9530,6 +9634,7 @@ damon->daemon, demon, damons->daemons, demons, danceing->dancing dandidates->candidates +dangereous->dangerous daplicating->duplicating Dardenelles->Dardanelles dasboard->dashboard @@ -10142,7 +10247,7 @@ definitian->definition definitiion->definition definitiions->definitions definitio->definition -definitios->definitions +definitios->definition, definitions, definitivly->definitively definitly->definitely definitoin->definition @@ -10326,6 +10431,7 @@ delimitors->delimiters delimitted->delimited delimma->dilemma delimted->delimited +delimter->delimiter delimters->delimiter delink->unlink delivared->delivered @@ -10494,6 +10600,7 @@ depenently->dependently depening->depending, deepening, depennding->depending depent->depend +depercated->deprecated deperecate->deprecate deperecated->deprecated deperecates->deprecates @@ -10676,6 +10783,7 @@ descreased->decreased descreases->decreases descreasing->decreasing descrementing->decrementing +descrepancy->discrepancy descrete->discrete describ->describe describbed->described @@ -10720,6 +10828,8 @@ descriptot->descriptor descriptoy->descriptor descriptuve->descriptive descrition->description +descritor->descriptor +descritors->descriptors descritpion->description descritpions->descriptions descritpiton->description @@ -10947,6 +11057,9 @@ destuction->destruction destuctive->destructive destuctor->destructor destuctors->destructors +desturb->disturb +desturbed->disturbed +desturbing->disturbing desturcted->destructed desturtor->destructor desturtors->destructors @@ -10970,6 +11083,7 @@ detaults->defaults detction->detection detctions->detections deteced->detected +detech->detect, detach, deteched->detached, detected, detecing->detecting detecion->detection @@ -10992,6 +11106,7 @@ deterant->deterrent deteremine->determine deteremined->determined deteriate->deteriorate +deterimine->determine deterimined->determined deterine->determine deterioriating->deteriorating @@ -11035,6 +11150,7 @@ detination->destination detinations->destinations detremental->detrimental detremining->determining +detrmination->determination detrmine->determine detrmined->determined detrmines->determines @@ -11313,6 +11429,8 @@ diffence->difference diffenet->different diffenrence->difference diffenrences->differences +diffent->different +diffentiating->differentiating differance->difference differances->differences differant->different @@ -11742,6 +11860,7 @@ disconnnect->disconnect discontigious->discontiguous discontigous->discontiguous discontiguities->discontinuities +discontiguos->discontiguous discontinous->discontinuous discontinuos->discontinuous discontinus->discontinue, discontinuous, @@ -12218,6 +12337,7 @@ diversed->diverse, diverged, divertion->diversion divertions->diversions divet->divot +diviation->deviation, divination, divice->device divicer->divider dividor->divider, divisor, @@ -12730,6 +12850,7 @@ eamples->examples eanable->enable eanble->enable earch->search, each, +eariler->earlier earleir->earlier earler->earlier earliear->earlier @@ -12829,6 +12950,7 @@ effcient->efficient effciently->efficiently effctive->effective effctively->effectively +effeceively->effectively effeciency->efficiency effecient->efficient effeciently->efficiently @@ -13424,6 +13546,7 @@ entitiy->entity entitiys->entities entitlied->entitled entitys->entities +entiy->entity entoties->entities entoty->entity entquire->enquire, inquire, @@ -13434,6 +13557,7 @@ entquiry->enquiry, inquiry, entrace->entrance entraced->entranced entraces->entrances +entreis->entries entrepeneur->entrepreneur entrepeneurs->entrepreneurs entrie->entry, entries, @@ -13461,6 +13585,8 @@ envelopped->enveloped enveloppes->envelopes envelopping->enveloping enver->never +envinronment->environment +envinronments->environments envioment->environment enviomental->environmental envioments->environments @@ -13509,6 +13635,9 @@ environement->environment environemnt->environment environemntal->environmental environemnts->environments +environemt->environment +environemtal->environmental +environemts->environments environent->environment environmane->environment environmenet->environment @@ -13616,6 +13745,7 @@ eqution->equation equtions->equations equvalent->equivalent equvivalent->equivalent +eralier->earlier erally->orally, really, erasablocks->eraseblocks erasuer->erasure, eraser, @@ -13639,11 +13769,13 @@ erraneously->erroneously erro->error erroneus->erroneous erroneusly->erroneously +erronoeus->erroneous erronous->erroneous erronously->erroneously errorneous->erroneous errorneously->erroneously errorneus->erroneous +errornoeus->erroneous errornous->erroneous errornously->erroneously errorprone->error-prone @@ -13785,6 +13917,7 @@ ethose->those, ethos, etiher->either etroneous->erroneous etroneously->erroneously +etropy->entropy etror->error, terror, etrors->errors, terrors, etsablishment->establishment @@ -13803,6 +13936,7 @@ Europian->European Europians->Europeans Eurpean->European Eurpoean->European +evailable->available evalation->evaluation evalite->evaluate evalited->evaluated @@ -13893,6 +14027,7 @@ everythings->everything everytime->every time everyting->everything everytone->everyone +everywher->everywhere evey->every eveyone->everyone eveyr->every @@ -13915,6 +14050,7 @@ evoluate->evaluate evoluated->evaluated evoluates->evaluates evoluation->evaluations +evoluton->evolution evovler->evolver evovling->evolving evrithing->everything @@ -13980,6 +14116,7 @@ exatcly->exactly exatctly->exactly exatly->exactly exausted->exhausted +exaustive->exhaustive excact->exact excactly->exactly excahcnge->exchange @@ -14436,6 +14573,7 @@ exercized->exercised exercizes->exercises exercizing->exercising exerimental->experimental +exernal->external exerpt->excerpt exerpts->excerpts exersice->exercise @@ -14455,6 +14593,8 @@ exeucte->execute exeucted->executed exeuctes->executes exeuction->execution +exeuctioner->executioner +exeuctions->executions exeution->execution exexutable->executable exhalted->exalted @@ -14494,7 +14634,7 @@ existance->existence existant->existent existatus->exitstatus existencd->existence -existend->existed +existend->existed, existent, existense->existence existin->existing existince->existence @@ -14560,6 +14700,7 @@ exoskelaton->exoskeleton expalin->explain expanation->explanation, expansion, expanations->explanations, expansions, +expanble->expandable expaned->expand, expanded, explained, expaning->expanding expanion->expansion @@ -14591,8 +14732,8 @@ expectatons->expectations expectd->expected expecte->expected expectes->expects -expection->exception -expections->exceptions +expection->exception, expectation, +expections->exceptions, expectations, expeditonary->expeditionary expeect->expect expeected->expected @@ -15155,6 +15296,7 @@ explecitely->explicitly explecitily->explicitly explecitly->explicitly explenation->explanation +explian->explain explicat->explicate explicilt->explicit explicilty->explicitly @@ -15250,6 +15392,8 @@ exsistent->existent exsisting->existing exsists->exists exsit->exist, exit, +exsited->excited, existed, +exsitence->existence exsiting->existing exsits->exists, exist, exspect->expect @@ -15306,6 +15450,7 @@ extepects->expects exteral->external extered->exerted extereme->extreme +extermal->external, extremal, exterme->extreme extermest->extremest extermist->extremist @@ -15346,6 +15491,7 @@ extractins->extractions extradiction->extradition extraenous->extraneous extranous->extraneous +extraordinarly->extraordinarily extrapoliate->extrapolate extrat->extract extrated->extracted @@ -15487,6 +15633,7 @@ falied->failed faliure->failure faliures->failures fallabck->fallback +fallbacl->fallback fallbck->fallback fallhrough->fallthrough fallthruogh->fallthrough @@ -15516,7 +15663,7 @@ farest->fairest, farthest, faries->fairies farmework->framework fasade->facade -fase->faze, phase, +fase->faze, phase, false, fased->fazed, phased, fases->fazes, phases, fasing->fazing, phasing, @@ -15665,6 +15812,7 @@ filetests->file tests fileystem->filesystem fileystems->filesystems filiament->filament +filies->files fillay->fillet filld->filled, filed, fill, fille->file, fill, filled, @@ -15811,6 +15959,7 @@ flakyness->flakiness flamable->flammable flaot->float flaoting->floating +flase->false, flake, flame, flare, flash, flask, flashflame->flashframe flashig->flashing flasing->flashing @@ -15831,6 +15980,7 @@ flexibel->flexible flexibele->flexible flexibilty->flexibility flexibily->flexibly, flexibility, +flexiblity->flexibility flext->flex flie->file fliter->filter @@ -16061,7 +16211,7 @@ folwoiwng->following folwoong->following folwos->follows folx->folks -fom->from +fom->from, form, fomat->format fomated->formatted fomater->formatter @@ -16137,6 +16287,7 @@ foreward->foreword, forward, forfiet->forfeit forgeround->foreground forgoten->forgotten +forgotton->forgotten forground->foreground forhead->forehead foriegn->foreign @@ -16154,9 +16305,11 @@ formaters->formatters formates->formats formath->format formaths->formats +formatiing->formatting formating->formatting formatteded->formatted formattgin->formatting +formattied->formatted formattind->formatting formattings->formatting formattring->formatting @@ -16267,6 +16420,7 @@ framents->fragments frametyp->frametype framewoek->framework framewoeks->frameworks +frameword->framework frameworkk->framework framlayout->framelayout framming->framing @@ -16342,7 +16496,7 @@ frome->from fromed->formed fromm->from froms->forms -fromt->from +fromt->from, front, fromthe->from the fron->from, front, fronat->front, format, @@ -16414,6 +16568,7 @@ funchtionning->functioning funchtionns->functions funchtions->functions funcion->function +funcionality->functionality funcions->functions funciotn->function funciotns->functions @@ -16649,6 +16804,7 @@ geneological->genealogical geneologies->genealogies geneology->genealogy generaates->generates +generaing->generating generall->generally, general, generaly->generally generalyl->generally @@ -16789,6 +16945,7 @@ getlael->getlabel getoe->ghetto getoject->getobject gettetx->gettext +gettign->getting gettitem->getitem, get item, gettitems->getitems, get items, gettter->getter @@ -16802,6 +16959,7 @@ ggogled->Googled ggogles->goggles, Googles, Ghandi->Gandhi ghostcript->ghostscript +ghostscipt->ghostscript ghostscritp->ghostscript ghraphic->graphic gien->given @@ -16822,6 +16980,7 @@ gitatributes->gitattributes gived->given, gave, giveing->giving givem->given, give them, give 'em, +givne->given givveing->giving givven->given givving->giving @@ -16962,6 +17121,7 @@ groouping->grouping grooups->groups grop->group, drop, gropu->group +gropuing->grouping gropus->groups, gropes, groubpy->groupby groupd->grouped @@ -17161,7 +17321,7 @@ haemorrage->haemorrhage haev->have, heave, hahve->have, halve, half, halarious->hilarious -hald->held +hald->held, hold, half, hall, halfs->halves Hallowean->Hallowe'en, Halloween, halp->help @@ -17320,6 +17480,7 @@ hazzle->hassle hda->had headder->header headders->headers +heade->header, head, headerr->header headerrs->headers headle->handle @@ -17336,6 +17497,7 @@ hearbeating->heartbeating, heart beating, hear beating, hearbeats->heartbeats, heart beats, hear beats, heared->heard, header, heathy->healthy +heders->headers hefer->heifer Heidelburg->Heidelberg heigest->highest @@ -17509,11 +17671,13 @@ hirearchy->hierarchy hirearcy->hierarchy hismelf->himself hisory->history +histerical->historical, hysterical, histgram->histogram histocompatability->histocompatibility historgram->histogram historgrams->histograms histori->history, historic, +historial->historical historicians->historians historyan->historian historyans->historians @@ -17535,6 +17699,7 @@ hitory->history hitsingles->hit singles hiygeine->hygiene hmdi->hdmi +hmtl->html hnalder->handler hoeks->hoax hoever->however @@ -17782,6 +17947,7 @@ identifing->identifying identifiy->identify identifyable->identifiable identifyed->identified +identitiy->identity identiviert->identifiers identiy->identify, identity, identtation->indentation @@ -18186,6 +18352,7 @@ implmented->implemented implmenting->implementing implments->implements imploys->employs +imporant->important imporing->importing imporot->import imporoted->imported @@ -18201,6 +18368,7 @@ imporsts->imports importamt->important importat->important importd->imported +importen->important, importance, importent->important importnt->important imporv->improve, improv, @@ -18276,6 +18444,7 @@ improvment->improvement improvments->improvements imput->input imrovement->improvement +imsensitive->insensitive in-memeory->in-memory inablility->inability inacccessible->inaccessible @@ -18514,6 +18683,7 @@ incrementaly->incrementally incremet->increment incremetal->incremental incremeted->incremented +incremeting->incrementing incremnet->increment increse->increase incresed->increased @@ -18648,6 +18818,7 @@ indicaite->indicate indicat->indicate indicateds->indicated, indicates, indicatee->indicates, indicated, +indicaters->indicators, indicates, indicationg->indicating, indication, indicats->indicates, indicate, indicees->indices @@ -18811,6 +18982,7 @@ inforce->enforce inforced->enforced informacion->information informaion->information +informaional->informational informaiton->information informatation->information informatations->information @@ -18887,6 +19059,7 @@ inhertig->inheriting, inherited, inherting->inheriting inherts->inherits inhomogenous->inhomogeneous +inialize->initialize inialized->initialized iniate->initiate inidicate->indicate @@ -18901,6 +19074,7 @@ inifinite->infinite inifinity->infinity inifinte->infinite inifite->infinite +iniitalize->initialize iniitial->initial iniitialization->initialization iniitializations->initializations @@ -19039,6 +19213,7 @@ initialyzing->initializing initialzation->initialization initialze->initialize initialzed->initialized +initialzer->initializer initialzes->initializes initialzing->initializing initiatiate->initiate @@ -19052,6 +19227,7 @@ initiatied->initiated initiaties->initiates initiialise->initialise initiialize->initialize +initilalize->initialize initilialised->initialised initilialization->initialization initilializations->initializations @@ -19141,6 +19317,8 @@ innactive->inactive innacurate->inaccurate innacurately->inaccurately innappropriate->inappropriate +inncrement->increment +inncrements->increments innecesarily->unnecessarily innecesary->unnecessary innecessarily->unnecessarily @@ -19238,6 +19416,7 @@ insependent->independent inseperable->inseparable insepsion->inception inser->insert +insered->inserted insering->inserting insersect->intersect insersected->intersected @@ -19258,6 +19437,7 @@ insesitivity->insensitivity insetad->instead insetead->instead inseted->inserted +insetion->insertion, insection, insid->inside insidde->inside insiddes->insides @@ -19298,6 +19478,7 @@ installatation->installation installationa->installation installe->installer, installed, install, installes->installs +installion->installation, installing, installtion->installation instals->installs instancd->instance @@ -19322,6 +19503,7 @@ instantiaties->instantiates instanze->instance instatance->instance instatiate->instantiate +instatiating->instantiating instatiation->instantiation instatiations->instantiations insteance->instance @@ -19380,7 +19562,9 @@ instrcutional->instructional instrcutions->instructions instrcuts->instructs instread->instead +instrinics->intrinsics instrinsic->intrinsic +instrospection->introspection instruccion->instruction instruccional->instructional instruccions->instructions @@ -19395,8 +19579,11 @@ instrumenetation->instrumentation instrumenetd->instrumented instrumeneted->instrumented instrumentaion->instrumentation +instrumentaiton->instrumentation instrumnet->instrument instrumnets->instruments +instrution->instruction +instrutions->instructions instsall->install instsallation->installation instsallations->installations @@ -19409,7 +19596,7 @@ instuments->instruments insturment->instrument insturments->instruments instutionalized->institutionalized -instutions->intuitions +instutions->intuitions, institutions, insue->ensue, insure, insuffciency->insufficiency insuffcient->insufficient @@ -19420,6 +19607,8 @@ insufficently->insufficiently insuffiency->insufficiency insuffient->insufficient insuffiently->insufficiently +insuficiency->insufficiency +insuficient->insufficient insurasnce->insurance insurence->insurance intaces->instance @@ -19457,6 +19646,7 @@ integation->integration integations->integrations integeral->integral integere->integer +integrat->integrate, integral, integreated->integrated integrety->integrity integrey->integrity @@ -19608,6 +19798,7 @@ interesst->interest interessted->interested interessting->interesting intereview->interview +interfact->interact, interface, interfal->interval interfals->intervals interfave->interface @@ -19761,6 +19952,7 @@ intervall->interval intervalls->intervals interveening->intervening intervines->intervenes +intesection->intersection intesity->intensity inteval->interval intevals->intervals @@ -19952,6 +20144,8 @@ invesitgated->investigated invesitgating->investigating invesitgation->investigation invesitgations->investigations +invesre->inverse +invesrse->inverse investingate->investigate inveting->inverting invetory->inventory @@ -20037,6 +20231,7 @@ isimilar->similar isloation->isolation ismas->isthmus isn;t->isn't +ISNB->ISBN isnpiron->inspiron isnt'->isn't isnt->isn't @@ -20061,6 +20256,7 @@ issueing->issuing issus->issues ist->is, it, its, it's, sit, list, istalling->installing +Istambul->Istanbul istance->instance istead->instead istened->listened @@ -20069,6 +20265,7 @@ isteners->listeners istening->listening ists->its, lists, isue->issue +isues->issues iteartor->iterator iteator->iterator iteger->integer @@ -20115,6 +20312,7 @@ itialize->initialize itialized->initialized itializes->initializes itializing->initializing +itmes->items, times, itnerest->interest itnerface->interface itnerfaces->interfaces @@ -20177,6 +20375,7 @@ javasript->javascript javasrript->javascript jave->java, have, javescript->javascript +javscript->javascript javsscript->javascript jeapardy->jeopardy jeffies->jiffies @@ -20628,6 +20827,7 @@ libralie->library libralies->libraries libraly->library libraray->library +librarie->libraries, library, libraris->libraries librarries->libraries librarry->library @@ -20651,6 +20851,8 @@ licate->locate licated->located lication->location lications->locations +licemse->license +licemses->licenses licenceing->licencing licencse->license, licenses, licese->license @@ -20705,6 +20907,7 @@ likly->likely lileral->literal limiation->limitation limiations->limitations +limination->limitation, lamination, liminted->limited limitaion->limitation limite->limit @@ -20751,6 +20954,7 @@ linewdith->linewidth linez->lines lingth->length linheight->lineheight +Linix->Linux linke->linked, like, linkfy->linkify linnaena->linnaean @@ -20769,6 +20973,7 @@ listeing->listening listeneing->listening listeneres->listeners listenes->listens +listenning->listening listensers->listeners listenter->listener listenters->listeners @@ -20916,7 +21121,7 @@ looop->loop loopup->lookup loosley->loosely loosly->loosely -loosy->lossy, lousy, +loosy->lossy, lousy, loose, losd->lost, loss, lose, load, losely->loosely losen->loosen @@ -20965,6 +21170,7 @@ macthing->matching madantory->mandatory madatory->mandatory maddness->madness +maeaningless->meaningless maesure->measure maesured->measured maesurement->measurement @@ -21001,6 +21207,7 @@ maintan->maintain maintanance->maintenance maintance->maintenance maintane->maintain +maintaned->maintained maintanence->maintenance maintaner->maintainer maintaners->maintainers @@ -21060,6 +21267,7 @@ managament->management manageed->managed managemenet->management managenment->management +managerment->management managet->manager managets->managers managmenet->management @@ -21179,6 +21387,7 @@ maped->mapped maping->mapping mapings->mappings mapp->map +mappble->mappable mappeds->mapped mappeed->mapped mappping->mapping @@ -21190,6 +21399,7 @@ margings->margins mariabd->MariaDB mariage->marriage marjority->majority +markaup->markup markes->marks, marked, markers, marketting->marketing markey->marquee @@ -21239,6 +21449,7 @@ matc->match matchies->matches matchign->matching matchin->matching +matchine->matching, machine, matchs->matches matchter->matcher matcing->matching @@ -21285,7 +21496,9 @@ mathmatically->mathematically mathmatician->mathematician mathmaticians->mathematicians mathod->method +mathods->methods matinay->matinee +matirx->matrix matix->matrix matreial->material matreials->materials @@ -21362,6 +21575,7 @@ meachnisms->mechanisms meading->meaning meaing->meaning mealflur->millefleur +meaned->meant meanigfull->meaningful meanign->meaning meanin->meaning @@ -21384,7 +21598,7 @@ measue->measure measued->measured measuement->measurement measuements->measurements -measuer->measurer +measuer->measurer, measure, measues->measures measuing->measuring measurd->measured, measure, @@ -21430,6 +21644,7 @@ mechandise->merchandise mechanim->mechanism mechanims->mechanisms mechanis->mechanism +mechanismn->mechanism mechansim->mechanism mechansims->mechanisms mechine->machine @@ -21528,6 +21743,7 @@ memmicked->mimicked memmicking->mimicking memmics->mimics memmory->memory +memner->member memoery->memory memomry->memory memor->memory @@ -21541,6 +21757,7 @@ memwoir->memoir memwoirs->memoirs menally->mentally menas->means +menber->member menetion->mention menetioned->mentioned menetioning->mentioning @@ -21640,6 +21857,7 @@ metapackges->metapackages metaphore->metaphor metaphoricial->metaphorical metaprogamming->metaprogramming +metatadata->metadata metatdata->metadata metdata->metadata meterial->material @@ -21664,6 +21882,7 @@ methons->methods methos->methods, method, methot->method methots->methods +metics->metrics metifor->metaphor metifors->metaphors metion->mention @@ -21878,6 +22097,7 @@ minium->minimum miniums->minimums miniumum->minimum minmal->minimal +minmize->minimize minmum->minimum minnimum->minimum minnimums->minimums @@ -21927,6 +22147,9 @@ mis-alignment->misalignment mis-intepret->mis-interpret mis-intepreted->mis-interpreted mis-match->mismatch +misake->mistake +misaken->mistaken +misakes->mistakes misalignement->misalignment misalinged->misaligned misbehaive->misbehave @@ -21996,6 +22219,7 @@ missingassignement->missingassignment missings->missing Missisipi->Mississippi Missisippi->Mississippi +Mississipi->Mississippi missle->missile missleading->misleading missletow->mistletoe @@ -22186,8 +22410,11 @@ modifuable->modifiable modifued->modified modifx->modify modifyable->modifiable +modiifier->modifier +modiifiers->modifiers modiration->moderation -modle->model +modle->model, module, +modles->models, modules, modlue->module modprobbing->modprobing modprobeing->modprobing @@ -22250,6 +22477,8 @@ moniter->monitor monitoing->monitoring monitring->monitoring monkies->monkeys +monnth->month +monnths->months monochorome->monochrome monochromo->monochrome monocrome->monochrome @@ -22298,7 +22527,7 @@ morrocco->morocco morroco->morocco mortage->mortgage morter->mortar -mose->more, mouse, +mose->more, mouse, mode, moslty->mostly mostlky->mostly mosture->moisture @@ -22311,6 +22540,7 @@ moteured->motored moteuring->motoring moteurs->motors mothing->nothing +motivaiton->motivation motiviated->motivated motiviation->motivation motononic->monotonic @@ -22376,6 +22606,7 @@ muiltiples->multiples muliple->multiple muliples->multiples mulithread->multithread +mulitiple->multiple mulitiplier->multiplier mulitipliers->multipliers mulitpart->multipart @@ -22560,7 +22791,11 @@ namnes->names namnespace->namespace namnespaces->namespaces nams->names +namspace->namespace +namspaces->namespaces nane->name +nanosecod->nanosecond +nanosecods->nanoseconds nanosencond->nanosecond nanosenconds->nanoseconds nanoseond->nanosecond @@ -22568,7 +22803,7 @@ nanoseonds->nanoseconds Naploeon->Napoleon Napolean->Napoleon Napoleonian->Napoleonic -nast->nest, mast, +nast->nest, mast, nasty, nasted->nested nasting->nesting nastly->nasty @@ -22588,6 +22823,7 @@ navagate->navigate navagating->navigating navagation->navigation navagitation->navigation +navgiation->navigation naviagte->navigate naviagted->navigated naviagtes->navigates @@ -22604,6 +22840,7 @@ Nazereth->Nazareth nce->once, nice, nclude->include nd->and, 2nd, +ndefined->undefined ndoe->node ndoes->nodes nead->need, knead, head, @@ -22641,7 +22878,7 @@ necessairly->necessarily necessar->necessary necessarilly->necessarily necessariy->necessary, necessarily, -necessarly->necessarily +necessarly->necessary, necessarily, necessarry->necessary necessaryly->necessarily necessay->necessary @@ -22664,7 +22901,7 @@ nedless->needless, needles, neds->needs neede->needed, need, needeed->needed -neeed->need +neeed->need, needed, neeeded->needed neeeding->needing neeedle->needle @@ -23197,6 +23434,7 @@ nknown->unknown nkow->know nkwo->know nmae->name +nmme->name nned->need nneeded->needed nnumber->number @@ -23205,7 +23443,7 @@ nodel->model, nodal, nodels->models nodess->nodes nodulated->modulated -noe->not, no, node, know, now, +noe->not, no, node, note, know, now, nofified->notified nofity->notify nohypen->nohyphen @@ -23215,6 +23453,7 @@ nombered->numbered nombering->numbering nombers->numbers nomimal->nominal +nomralization->normalization non-alphanumunder->non-alphanumeric non-asii->non-ascii non-assiged->non-assigned @@ -23417,6 +23656,7 @@ nuculear->nuclear nuisanse->nuisance nuissance->nuisance nulk->null +null-termined->null-terminated Nullabour->Nullarbor nulll->null numbber->number @@ -23647,6 +23887,7 @@ ocorrence->occurrence ocorrences->occurrences octect->octet octects->octets +Octobor->October octohedra->octahedra octohedral->octahedral octohedron->octahedron @@ -23669,6 +23910,8 @@ oder->order, odor, odly->oddly ody->body oen->one +oepration->operation +oeprations->operations ofcource->of course off-laod->off-load off-laoded->off-loaded @@ -23776,7 +24019,7 @@ omplementation->implementation omre->more onces->ounces, once, ones, onchage->onchange -ond->one +ond->one, and, one-dimenional->one-dimensional one-dimenionsal->one-dimensional onece->once @@ -23810,13 +24053,14 @@ ontext->context onthe->on the ontop->on top ontrolled->controlled +onveience->convenience onw->own onwed->owned onwer->owner onwership->ownership onwing->owning onws->owns -ony->only, on, +ony->only, on, one, onyl->only oommits->commits ooutput->output @@ -23928,6 +24172,7 @@ opetional->optional ophan->orphan ophtalmology->ophthalmology opion->option +opional->optional opionally->optionally opions->options opitionally->optionally @@ -24013,6 +24258,7 @@ optimiality->optimality optimice->optimize, optimise, optimiced->optimized, optimised, optimier->optimizer, optimiser, +optimimum->optimum optimisim->optimism optimisitc->optimistic optimisitic->optimistic @@ -24025,6 +24271,7 @@ optimiztion->optimization optimiztions->optimizations optimsitic->optimistic optimyze->optimize +optimzation->optimization optimze->optimize optimzie->optimize optin->option @@ -24078,6 +24325,7 @@ orede->order oredes->orders oreding->ordering oredred->ordered +orfer->order, offer, orgamise->organise organim->organism organisaion->organisation @@ -24492,6 +24740,7 @@ owerwrites->overwrites owful->awful ownder->owner ownerhsip->ownership +ownersip->ownership ownes->owns, ones, ownner->owner ownward->onward @@ -24632,6 +24881,7 @@ paramameter->parameter paramameters->parameters paramater->parameter paramaters->parameters +parameger->parameter paramemeter->parameter paramemeters->parameters paramemter->parameter @@ -24703,6 +24953,7 @@ paravirutalized->paravirtualized parctical->practical parctically->practically pard->part +parellel->parallel parellelogram->parallelogram parellels->parallels parem->param @@ -24717,6 +24968,7 @@ parenthesies->parentheses parenthises->parentheses parenthsis->parenthesis paret->parent, parrot, +paretheses->parentheses parge->large parial->partial parially->partially @@ -25213,6 +25465,8 @@ perpsective->perspective perpsectives->perspectives perrror->perror persan->person +persective->perspective +persectives->perspectives persepctive->perspective persepective->perspective persepectives->perspectives @@ -25235,6 +25489,7 @@ persisten->persistent persistented->persisted persited->persisted persitent->persistent +persmissions->permissions personalitie->personality personalitites->personalities personalitity->personality @@ -25270,6 +25525,7 @@ pertubing->perturbing perturbate->perturb perturbates->perturbs perturbe->perturb, perturbed, +perview->preview, purview, pervious->previous perviously->previously pessiary->pessary @@ -25367,6 +25623,8 @@ pipleine->pipeline pipleines->pipelines pipleline->pipeline piplelines->pipelines +pipline->pipeline +piplines->pipelines pitmap->pixmap, bitmap, pitty->pity pivott->pivot @@ -25502,6 +25760,8 @@ poentials->potentials poeoples->peoples poeple->people poer->power, poor, pour, +poerful->powerful +poers->powers poety->poetry pogress->progress poicies->policies @@ -25690,6 +25950,7 @@ porportional->proportional porportionally->proportionally porportioning->proportioning porportions->proportions +porposes->proposes, purposes, porsalin->porcelain porshan->portion porshon->portion @@ -25764,6 +26025,7 @@ positons->positions, positrons, positve->positive positves->positives POSIX-complient->POSIX-compliant +posotion->position pospone->postpone posponed->postponed posption->position @@ -25790,7 +26052,7 @@ possibile->possible possibilies->possibilities possibilites->possibilities possibilitities->possibilities -possibiliy->possibility +possibiliy->possibility, possibly, possibillity->possibility possibilties->possibilities possibilty->possibility @@ -25867,7 +26129,7 @@ potocol->protocol potrait->portrait potrayed->portrayed poulations->populations -pount->point +pount->point, pound, pounts->points poupular->popular poverful->powerful @@ -26017,6 +26279,7 @@ precondtionner->preconditioner precondtionners->preconditioners precondtions->preconditions preconfiged->preconfigured +precsion->precision precsions->precisions precuation->precaution preculde->preclude @@ -26029,6 +26292,7 @@ precussions->percussions predecesor->predecessor predecesors->predecessors predeclarnig->predeclaring +prededence->precedence predefiend->predefined predefiened->predefined predefiined->predefined @@ -26047,11 +26311,12 @@ preesnt->present prefectches->prefetches prefecth->prefetch prefectly->perfectly -prefence->preference +prefence->pretence, presence, preference, prefences->preferences preferance->preference preferances->preferences prefere->prefer, preferred, +prefereably->preferably preferecne->preference preferecnes->preferences prefered->preferred @@ -26181,6 +26446,7 @@ presense->presence presentaion->presentation presentaional->presentational presentaions->presentations +presentated->presented presernt->present preserrved->preserved preserv->preserve @@ -26226,6 +26492,7 @@ prestigous->prestigious presuambly->presumably presumabely->presumably presumaby->presumably +presumeably->presumably presumebly->presumably presumely->presumably presumibly->presumably @@ -26300,6 +26567,7 @@ primatively->primitively primatives->primitives primay->primary primeter->perimeter +primimitive->primitive primitave->primitive primitiv->primitive primitve->primitive @@ -26337,8 +26605,9 @@ priotity->priority priotized->prioritized priotizing->prioritizing priots->priors +pririty->priority, privity, prirority->priority -pris->prise +pris->prise, prism, priting->printing privalege->privilege privaleges->privileges @@ -26480,6 +26749,7 @@ processees->processes processer->processor processess->processes processessing->processing +processibg->processing processig->processing processinf->processing processore->processor @@ -26554,6 +26824,8 @@ proffesed->professed proffesion->profession proffesional->professional proffesor->professor +proffession->profession +proffessional->professional proffessor->professor profie->profile profied->profiled @@ -26677,6 +26949,8 @@ prohibted->prohibited prohibting->prohibiting prohibts->prohibits proirity->priority +projcet->project +projcets->projects projct's->project's projct->project projction->projection @@ -26806,6 +27080,7 @@ propietry->proprietary propigate->propagate propigation->propagation proplem->problem +propmpt->prompt propmt->prompt propmted->prompted propmter->prompter @@ -26854,6 +27129,7 @@ proprotion->proportion proprotional->proportional proprotionally->proportionally proprotions->proportions +proprties->properties proprty->property propt->prompt propteries->properties @@ -26866,6 +27142,7 @@ proseletyzing->proselytizing prosess->process prosessor->processor prosseses->processes, possesses, +protability->portability, probability, protable->portable protaganist->protagonist protaganists->protagonists @@ -26877,6 +27154,7 @@ protcted->protected protecion->protection protecte->protected, protect, protectiv->protective +protectoin->protection protedcted->protected protential->potential protext->protect @@ -26979,6 +27257,7 @@ psaced->spaced, paced, psaces->spaces, paces, psacing->spacing, pacing, psaswd->passwd +pseduo->pseudo pseude->pseudo pseudononymous->pseudonymous pseudonyn->pseudonym @@ -26998,8 +27277,10 @@ psudo->pseudo psudoinverse->pseudoinverse psuedo->pseudo psuedo-fork->pseudo-fork +psuedocode->pseudocode psuedoinverse->pseudoinverse psuedolayer->pseudolayer +psueudo->pseudo psuh->push psychadelic->psychedelic psycology->psychology @@ -27035,6 +27316,7 @@ publicher->publisher publichers->publishers publiches->publishes publiching->publishing +publick->public publihsed->published publihser->publisher publised->published @@ -27128,6 +27410,9 @@ pyramide->pyramid pyramides->pyramids pyrhon->python pyscic->psychic +pysical->physical +pysically->physically +pysics->physics pythin->python pythjon->python pytnon->python @@ -27227,6 +27512,7 @@ quitted->quit quizes->quizzes quotaion->quotation quoteed->quoted +quotent->quotient quottes->quotes quried->queried quroum->quorum @@ -27578,7 +27864,7 @@ realitvely->relatively realiy->really realiztion->realization realiztions->realizations -reall->real, really, +reall->real, really, recall, realling->really reallize->realize reallllly->really @@ -28040,6 +28326,8 @@ redered->rendered redict->redirect rediculous->ridiculous redidual->residual +rediect->redirect +rediected->redirected redifine->redefine redifinition->redefinition redifinitions->redefinitions @@ -28263,6 +28551,7 @@ regiser->register regisration->registration regist->register registartion->registration +registation->registration registe->register registed->registered registeing->registering @@ -28286,6 +28575,7 @@ registred->registered registrer->register registring->registering registrs->registers +registser->register registy->registry regiter->register regitered->registered @@ -28305,6 +28595,7 @@ regsiter->register regsitered->registered regsitering->registering regsiters->registers +regsitration->registration regsitry->registry regster->register regstered->registered @@ -28542,6 +28833,7 @@ relyably->reliably relyed->relied relyes->relies, realize, realise, relys->relies +remaind->remained, remind, remaines->remains, remained, remaing->remaining remainging->remaining @@ -28601,6 +28893,7 @@ remmebered->remembered remmebering->remembering remmebers->remembers remmove->remove +remmve->remove remoce->remove remoive->remove remoived->removed @@ -28616,6 +28909,7 @@ removeable->removable removefromat->removeformat removeing->removing removerd->removed +remplacement->replacement remve->remove remved->removed remves->removes @@ -29013,6 +29307,7 @@ reponses->responses reponsibilities->responsibilities reponsibility->responsibility reponsible->responsible +reporeted->reported reporing->reporting reporitory->repository reportadly->reportedly @@ -29137,6 +29432,7 @@ reprsents->represents reprtoire->repertoire reprucible->reproducible repsectively->respectively +repsented->represented, repented, repsonse->response repsonses->responses repsonsible->responsible @@ -29433,6 +29729,7 @@ responser's->responder's responser->responder responsers->responders responsess->responses +responsibe->responsive, responsible, responsibile->responsible responsibilites->responsibilities responsibilty->responsibility @@ -29482,6 +29779,8 @@ ressourced->resourced ressources->resources ressourcing->resourcing resssurecting->resurrecting +resstriction->restriction +resstrictions->restrictions ressult->result ressurect->resurrect ressurected->resurrected @@ -29495,6 +29794,7 @@ restaraunt->restaurant restaraunteur->restaurateur restaraunteurs->restaurateurs restaraunts->restaurants +restatting->restarting, restating, restauranteurs->restaurateurs restauration->restoration restauraunt->restaurant @@ -29505,6 +29805,7 @@ resteraunts->restaurants restes->reset restesting->retesting resticted->restricted +restictive->restrictive restoding->restoring restoiring->restoring restor->restore @@ -29521,6 +29822,7 @@ restrcuture->restructure restriced->restricted restroing->restoring restructed->restricted, restructured, +restructing->restricting, restructuring, reStructuredTetx->reStructuredText reStructuredTxet->reStructuredText reStrucuredText->reStructuredText @@ -29551,6 +29853,7 @@ resuilted->resulted resuilting->resulting resuilts->results resul->result +resuled->resulted, resumed, resuling->resulting resullt->result resulotion->resolution @@ -29576,12 +29879,17 @@ resurse->recurse, resource, resursive->recursive, resourceful, resursively->recursively resuse->reuse +resused->reused, refused, resumed, resuts->results resycn->resync retalitated->retaliated retalitation->retaliation retangles->rectangles retanslate->retranslate +retart->restart +retartation->retardation +retarted->restarted +retarting->restarting retcieve->retrieve, receive, retcieved->retrieved, received, retciever->retriever, receiver, @@ -29789,6 +30097,7 @@ revrieved->retrieved revriever->retriever revrievers->retrievers revrieves->retrieves +revserse->reverse revsion->revision rewiev->review rewieved->reviewed @@ -29824,6 +30133,7 @@ righ->right righht->right righmost->rightmost rightt->right +rigoreous->rigorous rigourous->rigorous rigt->right rigth->right @@ -29925,6 +30235,7 @@ rovided->provided rovider->provider rovides->provides roviding->providing +rplace->replace rqeuest->request, quest, rqeuested->requested rqeuesting->requesting @@ -30582,6 +30893,7 @@ separte->separate separted->separated separtes->separates separting->separating +separtor->separator sepatae->separate sepatate->separate sepcial->special @@ -30728,6 +31040,7 @@ sequemces->sequences sequencial->sequential sequencially->sequentially sequencies->sequences +sequenes->sequences sequense->sequence sequensed->sequenced sequenses->sequences @@ -30761,6 +31074,10 @@ serailse->serialise serailsed->serialised serailze->serialize serailzed->serialized +seralize->serialize +seralized->serialized +seralizes->serializes +seralizing->serializing serch->search serched->searched serches->searches @@ -30994,6 +31311,7 @@ shortcomming->shortcoming shortcommings->shortcomings shortcutt->shortcut shortend->shortened, short end, +shortended->shortened, short-ended, shortern->shorten shorthly->shortly shortkut->shortcut @@ -31059,6 +31377,8 @@ shttp->https shudown->shutdown shufle->shuffle shuld->should +shuold->should +shuoldnt->shouldn't shure->sure shurely->surely shutdownm->shutdown @@ -31101,6 +31421,7 @@ siganture->signature sigantures->signatures sigen->sign sigificance->significance +sigificant->significant siginificant->significant siginificantly->significantly siginify->signify @@ -31200,6 +31521,7 @@ simplifys->simplifies simpliifcation->simplification simpliifcations->simplifications simplist->simplest +simpliy->simply, simplify, simpy->simply simualte->simulate simualted->simulated @@ -31233,6 +31555,7 @@ simultanious->simultaneous simultaniously->simultaneously simultanous->simultaneous simultanously->simultaneously +simulteniously->simultaneously simutaneously->simultaneously sinature->signature sincerley->sincerely @@ -31349,6 +31672,8 @@ sitirs->stirs sitl->still sitll->still sitmuli->stimuli +situaion->situation +situaions->situations situationals->situational, situations, situationly->situationally, situational, situationnal->situational @@ -31399,6 +31724,7 @@ skippd->skipped skippped->skipped skippps->skips skipt->skip, Skype, skipped, +skopped->skipped, shopped, slopped, stopped, skyp->skip, Skype, slach->slash slaches->slashes @@ -31583,6 +31909,7 @@ sortnr->sorter sortrage->storage, shortage, soruce->source, spruce, soruces->sources, spruces, +sory->sorry, sort, soscket->socket soterd->stored, sorted, sotfware->software @@ -31593,6 +31920,7 @@ sotry->story, sorry, sotyr->satyr, story, souce->source souces->sources +souch->such, sough, pouch, touch, soucre->source soucres->sources soudn->sound @@ -31674,10 +32002,15 @@ speaces->spaces, species, speach->speech speacial->special, spacial, speacing->spacing +spearate->separate +spearated->separated +spearates->separates +spearating->separating spearator->separator spearators->separators spec-complient->spec-compliant specail->special +spece->space, spice, specefic->specific specefically->specifically speceficly->specifically @@ -31745,6 +32078,7 @@ specificiation->specification specificiations->specifications specificically->specifically specificied->specified +specificies->specifics, specifies, specificl->specific specificly->specifically specifiction->specification @@ -31760,6 +32094,7 @@ specifieced->specified specifiecs->specifics specifieed->specified specifiees->specifies +specififed->specified specifig->specific specifigation->specification specifigations->specifications @@ -32236,6 +32571,7 @@ ssee->see ssoaiating->associating ssome->some stabalization->stabilization +stabel->stable stabilitation->stabilization stabilite->stabilize stabilited->stabilized @@ -32267,6 +32603,8 @@ staition->station staitions->stations stalagtite->stalactite stamement's->statement's, statements, statement, +stanard->standard +stanards->standards standalown->standalone, stand-alone, standar->standard standarad->standard @@ -32294,6 +32632,9 @@ standartizator->standardizer standartized->standardized standarts->standards standatd->standard +standerd->standard +standerds->standards +standlone->standalone standrat->standard standrats->standards standtard->standard @@ -32449,6 +32790,8 @@ straighforward->straightforward straightfoward->straightforward straigt->straight straigth->straight +straigthen->straighten +straigthening->straightening straines->strains stram->steam, stream, tram, straming->streaming, steaming, @@ -32530,7 +32873,7 @@ strikely->strikingly stringifed->stringified strinsg->strings strippen->stripped -stript->stripped +stript->stripped, script, strirngification->stringification strnad->strand strng->string @@ -32539,6 +32882,7 @@ stroe->store stroing->storing stronlgy->strongly stronly->strongly +strorage->storage strore->store strored->stored strores->stores @@ -32682,13 +33026,19 @@ subjudgation->subjugation sublass->subclass sublasse->subclasse sublasses->subclasses +sublcass->subclass sublcasses->subclasses sublcuase->subclause suble->subtle submachne->submachine submision->submission +submisions->submissions +submisison->submission +submisisons->submissions submisson->submission +submissons->submissions submited->submitted +submiting->submitting submition->submission submitions->submissions submittted->submitted @@ -32843,7 +33193,10 @@ substitues->substitutes substituing->substituting substituion->substitution substituions->substitutions +substitutin->substitution, substituting, +substitutins->substitutions substiution->substitution +substiutions->substitutions substract->subtract substracted->subtracted substracting->subtracting @@ -32867,6 +33220,8 @@ subtances->substances subtarger->subtarget, sub-target, subtargers->subtargets, sub-targets, subterranian->subterranean +subtile->subtle, subtitle, subfile, +subtiles->subtitles, subfiles, subtitute->substitute subtituted->substituted subtitutes->substitutes @@ -32908,6 +33263,8 @@ succee->succeed succeedde->succeeded succeedes->succeeds succeeed->succeed, succeeded, +succeeeded->succeeded +succeeeds->succeeds succees->success, succeeds, succeess->success succeesses->successes @@ -33122,11 +33479,13 @@ superfluious->superfluous superfluos->superfluous superfulous->superfluous superintendant->superintendent +superios->superior, superiors, superopeator->superoperator supersed->superseded superseedd->superseded superseede->supersede superseeded->superseded +superseeding->superseding suphisticated->sophisticated suplant->supplant suplanted->supplanted @@ -33156,6 +33515,7 @@ supplamented->supplemented suppliad->supplied suppliementing->supplementing suppliment->supplement +suppling->supplying supplyed->supplied suppoed->supposed suppoert->support @@ -33184,6 +33544,8 @@ supposeds->supposed supposedy->supposedly supposingly->supposedly suppossed->supposed +suppost->support, suppose, supports, +suppot->support suppoted->supported suppplied->supplied suppport->support @@ -33203,6 +33565,7 @@ supproting->supporting supprots->supports supprt->support supprted->supported +supprting->supporting suppurt->support suppurted->supported suppurter->supporter @@ -33451,6 +33814,7 @@ sylog->syslog symantics->semantics symblic->symbolic symbo->symbol +symbolc->symbolic symboles->symbols symboll->symbol symbonname->symbolname @@ -33586,6 +33950,7 @@ sysmte->system sysmtes->systems systax->syntax syste->system +systemn->system systemwindiow->systemwindow, system window, systen->system systens->systems @@ -33724,7 +34089,7 @@ tarvis->Travis tarvisci->TravisCI tasbar->taskbar taskelt->tasklet -tast->taste +tast->taste, test, task, tatgert->target tatgerted->targeted tatgerting->targeting @@ -33803,6 +34168,7 @@ tecniques->techniques tedeous->tedious tefine->define teh->the +tehnically->technically tehy->they tekn->taken, Tekken, tekst->text @@ -33990,15 +34356,18 @@ terific->terrific terimnate->terminate termial->terminal termials->terminals +termiante->terminate termianted->terminated termimal->terminal termimals->terminals +terminatd->terminated terminater->terminator terminaters->terminators terminats->terminates termindate->terminate termine->determine termined->terminated +terminiator->terminator terminte->terminate termintor->terminator termniate->terminate @@ -34091,6 +34460,7 @@ thann->than, thank, thansk->thanks thansparent->transparent thant->than +thar->than, that, thare->there thast->that, that's, that;s->that's @@ -34098,6 +34468,8 @@ thatn->that, than, thats'->that's thats->that's thats;->that's +thaught->thought, taught, +thaughts->thoughts thay->they, that, thck->thick theard->thread @@ -34286,6 +34658,7 @@ throughly->thoroughly throught->thought, through, throughout, throughtout->throughout througout->throughout +througput->throughput througt->through througth->through throuh->through @@ -34433,6 +34806,7 @@ toches->touches tocksen->toxin todya->today toekn->token +toether->together, tether, togehter->together togeter->together togeterness->togetherness @@ -34478,6 +34852,7 @@ toogle->toggle toogling->toggling tookit->toolkit, took it, tookits->toolkits +tooks->took, takes, toolar->toolbar toolsbox->toolbox toom->tomb @@ -34510,6 +34885,7 @@ totorials->tutorials touble->trouble toubles->troubles toubling->troubling +touchsceen->touchscreen tought->thought, taught, tough, toughtful->thoughtful toughtly->tightly @@ -34649,6 +35025,10 @@ tranport->transport tranported->transported tranporting->transporting tranports->transports +tranpose->transpose +tranposed->transposed +tranposes->transposes +tranposing->transposing transacion->transaction transacions->transactions transaciton->transaction @@ -35001,6 +35381,7 @@ tressle->trestle treting->treating trgistration->registration trhe->the +trhough->through trian->train, trial, triancle->triangle triancles->triangles @@ -35147,7 +35528,7 @@ tuotirals->tutorials tupel->tuple tupple->tuple tupples->tuples -ture->true +ture->true, pure, turle->turtle turly->truly turnk->trunk, turnkey, turn, @@ -35180,6 +35561,7 @@ tyhat->that tyhe->they, the, type, tyies->tries tymecode->timecode +tyoe->type, toey, toe, tyope->type typcast->typecast typcasting->typecasting @@ -35220,6 +35602,7 @@ ubunut->Ubuntu ubutu->Ubuntu ubutunu->Ubuntu udated->updated, dated, +udateed->updated udater->updater, dater, udating->updating, dating, udno->undo, uno, @@ -35292,6 +35675,7 @@ unadvertedly->inadvertently unadvertent->inadvertent unadvertently->inadvertently unahppy->unhappy +unale->unable unalllowed->unallowed unambigious->unambiguous unambigous->unambiguous @@ -35375,6 +35759,7 @@ unchallengable->unchallengeable unchaned->unchanged unchaneged->unchanged unchangable->unchangeable +unchangd->unchanged uncheked->unchecked unchenged->unchanged uncler->unclear, uncle, uncles, @@ -35713,6 +36098,7 @@ unintiallized->uninitialized unintialsied->uninitialised unintialzied->uninitialized unio->union +uniocde->unicode unios->unions uniqe->unique uniqu->unique @@ -35764,6 +36150,7 @@ unknwon->unknown unknwons->unknowns unknwown->unknown unknwowns->unknowns +unkonw->unknown unkonwn->unknown unkonwns->unknowns unkown->unknown @@ -35786,6 +36173,8 @@ unmaping->unmapping unmappend->unmapped unmarsalling->unmarshalling unmaximice->unmaximize +unmisakable->unmistakable +unmisakably->unmistakably unmistakeably->unmistakably unmodfide->unmodified unmodfided->unmodified @@ -35863,6 +36252,7 @@ unplesent->unpleasant unprecendented->unprecedented unprecidented->unprecedented unprecise->imprecise +unpredicable->unpredictable unpredicatable->unpredictable unpredicatble->unpredictable unpredictablity->unpredictability @@ -35870,6 +36260,8 @@ unpredictible->unpredictable unpriviledged->unprivileged unpriviliged->unprivileged unprmopted->unprompted +unprobable->improbable, unprovable, +unprobably->improbably unqiue->unique unqoute->unquote unqouted->unquoted @@ -35947,7 +36339,7 @@ unsccessful->unsuccessful unscubscribe->subscribe unscubscribed->subscribed unsearcahble->unsearchable -unsed->unused, used, +unsed->unused, unset, used, unselct->unselect unselcted->unselected unselctes->unselects @@ -35980,6 +36372,7 @@ unsoclicited->unsolicited unsolicitied->unsolicited unsolicted->unsolicited unsollicited->unsolicited +unspecializated->unspecialized unspecificed->unspecified unspecifiec->unspecific unspecifiecd->unspecified @@ -36018,6 +36411,7 @@ unspefixeid->unspecified unspefixied->unspecified unspefixifed->unspecified unspported->unsupported +unssupported->unsupported unstabel->unstable unstalbe->unstable unstall->install, uninstall, @@ -36085,6 +36479,7 @@ unsuportable->unsupportable unsuported->unsupported unsupport->unsupported unsupproted->unsupported +unsupprted->unsupported unsupress->unsuppress unsupressed->unsuppressed unsupresses->unsuppresses @@ -36181,6 +36576,7 @@ updraged->upgraded updrages->upgrades updraging->upgrading updte->update +uper->upper, super, upercase->uppercase uperclass->upperclass upgade->upgrade @@ -36290,6 +36686,7 @@ upstreemed->upstreamed upstreemer->upstreamer upstreeming->upstreaming upstreems->upstreams +upstrem->upstream upstrema->upstream upsupported->unsupported uptadeable->updatable @@ -36315,6 +36712,7 @@ usccess->success useability->usability useable->usable useage->usage +useanother->use another usebility->usability useble->usable useed->used @@ -36488,7 +36886,9 @@ valule->value valuled->valued valules->values valuling->valuing +valus->values, value, talus, valuse->values, value, +valye->value, valse, valve, vanishs->vanishes varable->variable varables->variables @@ -36508,6 +36908,7 @@ variabe->variable variabel->variable variabele->variable variabes->variables +variabl->variable variabla->variable variablen->variable varialbe->variable @@ -36519,6 +36920,7 @@ variatinos->variations variationnal->variational variatoin->variation variatoins->variations +variaty->variety variavle->variable variavles->variables varibable->variable @@ -36678,6 +37080,7 @@ vermillion->vermilion verndor->vendor verrical->vertical verry->very +versatle->versatile vershin->version versin->version versino->version @@ -36741,6 +37144,7 @@ vetween->between vew->view veyr->very vhild->child +viariable->variable viatnamese->Vietnamese vice-fersa->vice-versa vice-wersa->vice-versa @@ -37066,6 +37470,7 @@ warings->warnings warinigs->warnings warining->warning warinings->warnings +waritable->writable warks->works warlking->walking warnibg->warning @@ -37405,6 +37810,7 @@ wizzard->wizard wjat->what wll->will wlll->will +wmpty->empty wnat->want, what, wnated->wanted wnating->wanting @@ -37490,6 +37896,7 @@ workstaiton->workstation workstaitons->workstations workststion->workstation workststions->workstations +workwround->workaround worl->world world-reknown->world renown world-reknowned->world renowned @@ -37546,11 +37953,13 @@ wresters->wrestlers wriet->write writebufer->writebuffer writechetque->writecheque +writed->wrote, written, write, writer, writeing->writing writen->written writet->writes writewr->writer writingm->writing +writte->write, written, writter->writer, written, writters->writers writtin->written, writing, @@ -37571,6 +37980,7 @@ wrokloads->workloads wroks->works wron->wrong wronf->wrong +wronly->wrongly wront->wrong wrtie->write wrting->writing diff --git a/codespell_lib/data/dictionary_code.txt b/codespell_lib/data/dictionary_code.txt index 66a54746b0..a232ac02aa 100644 --- a/codespell_lib/data/dictionary_code.txt +++ b/codespell_lib/data/dictionary_code.txt @@ -45,6 +45,7 @@ outputof->output of, output-of, packat->packet process'->process's protecten->protection, protected, +pysic->physic reday->ready referer->referrer rela->real diff --git a/codespell_lib/data/dictionary_rare.txt b/codespell_lib/data/dictionary_rare.txt index 41cfb349b4..db1a53a350 100644 --- a/codespell_lib/data/dictionary_rare.txt +++ b/codespell_lib/data/dictionary_rare.txt @@ -90,7 +90,7 @@ heterogenous->heterogeneous hided->hidden, hid, hove->have, hover, love, impassible->impassable -implicity->implicitly +implicity->implicitly, simplicity, inactivate->deactivate incluse->include indention->indentation From 589f70c664655e5cc6c3b737505bf04a622237f2 Mon Sep 17 00:00:00 2001 From: Stefan Kangas Date: Mon, 21 Nov 2022 15:37:18 +0100 Subject: [PATCH 120/302] Add typos found in Emacs --- codespell_lib/data/dictionary.txt | 113 +++++++++++++++++- .../data/dictionary_en-GB_to_en-US.txt | 10 ++ codespell_lib/data/dictionary_rare.txt | 2 +- 3 files changed, 121 insertions(+), 4 deletions(-) diff --git a/codespell_lib/data/dictionary.txt b/codespell_lib/data/dictionary.txt index d454ce53d4..8a72eb7436 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -297,6 +297,7 @@ accees->access acceess->access accelarate->accelerate accelaration->acceleration +accelarator->accelerator accelarete->accelerate accelearion->acceleration accelearte->accelerate @@ -1053,6 +1054,7 @@ advertized->advertised advertizes->advertises advesary->adversary advetise->advertise +advicable->advisable adviced->advised adviseable->advisable advisoriy->advisory, advisories, @@ -1559,6 +1561,7 @@ alingment->alignment alings->aligns, slings, alinment->alignment alinments->alignments +alis->alias, alas, axis, alms, alisas->alias, aliases, alising->aliasing aliver->alive, liver, a liver, sliver, @@ -2030,6 +2033,7 @@ anlge->angle anly->only, any, anlysis->analysis anlyzing->analyzing +anme->name, anime, annay->annoy, any, annayed->annoyed annaying->annoying @@ -2640,6 +2644,7 @@ arbitralrily->arbitrarily arbitralry->arbitrary arbitraly->arbitrary arbitrarion->arbitration +arbitrarity->arbitrarily arbitrariy->arbitrarily, arbitrary, arbitrarly->arbitrarily, arbitrary, arbitraryily->arbitrarily @@ -4060,6 +4065,7 @@ avaoidable->avoidable avaoided->avoided avarage->average avarageing->averaging +avare->aware avarege->average avary->every, aviary, avation->aviation @@ -4949,6 +4955,7 @@ brocken->broken brockend->broken brockened->broken brocolee->broccoli +brocoli->broccoli brodcast->broadcast broked->broken brokem->broken @@ -5055,6 +5062,7 @@ buittons->buttons buld->build bulding->building bulds->builds +bulgrian->Bulgarian bulid->build buliding->building bulids->builds @@ -5116,6 +5124,12 @@ bwtween->between bypas->bypass bypased->bypassed bypasing->bypassing +byte-comiler->byte-compiler +byte-compilier->byte-compiler +byte-complier->byte-compiler +byte-compliler->byte-compiler +byte-comppiler->byte-compiler +byte-copiler->byte-compiler byteoder->byteorder, byte order, bytetream->bytestream bytetreams->bytestreams @@ -5976,6 +5990,8 @@ chararcters->characters charas->chars charascter->character charascters->characters +charaset->charset +charasets->charsets charasmatic->charismatic charater->character charaterize->characterize @@ -6022,6 +6038,7 @@ cheatta->cheetah chec->check checbox->checkbox checboxes->checkboxes +checck->check checg->check checged->checked chech->check, czech, @@ -7327,6 +7344,8 @@ compliler->compiler compliles->compiles compliling->compiling compling->compiling +complitation->compilation, complication, +complitations->compilations, complications, complitely->completely complmenet->complement complted->completed @@ -8996,6 +9015,7 @@ corrruption->corruption corrseponding->corresponding corrspond->correspond corrsponded->corresponded +corrspondence->correspondence corrsponding->corresponding corrsponds->corresponds corrupeted->corrupted @@ -10744,6 +10764,8 @@ descchedules->deschedules desccription->description descencing->descending descendands->descendants +descendat->descendant +descendats->descendants descendend->descended, descendent, descendant, descentences->descendants, descendents, descibe->describe @@ -11237,6 +11259,7 @@ deviiates->deviates deviiating->deviating deviiation->deviation deviiations->deviations +devine->define, divine, devined->defined devired->derived devirtualiation->devirtualization, devirtualisation, @@ -11464,6 +11487,7 @@ differentl->differently differents->different, difference, differernt->different differes->differs +differet->different differetnt->different differnce->difference differnces->differences @@ -12710,6 +12734,11 @@ driagram->diagram driagrammed->diagrammed driagramming->diagramming driagrams->diagrams +dribbel->dribble +dribbeld->dribbled +dribbeled->dribbled +dribbeling->dribbling +dribbels->dribbles driectly->directly drity->dirty driveing->driving @@ -12845,6 +12874,7 @@ eailier->earlier eaiser->easier ealier->earlier ealiest->earliest +eamcs->emacs eample->example eamples->examples eanable->enable @@ -13132,6 +13162,7 @@ emabled->enabled emables->enables emabling->enabling emailling->emailing +emasc->emacs embarass->embarrass embarassed->embarrassed embarasses->embarrasses @@ -13154,11 +13185,13 @@ embeddeding->embedding embedds->embeds embeded->embedded embededded->embedded +embeding->embedding embeed->embed embezelled->embezzled emblamatic->emblematic embold->embolden embrodery->embroidery +emcas->emacs emcompass->encompass emcompassed->encompassed emcompassing->encompassing @@ -13315,8 +13348,13 @@ encounterd->encountered encountre->encounter, encountered, encountres->encounters encouraing->encouraging +encourge->encourage +encourged->encouraged +encourges->encourages +encourging->encouraging encouter->encounter encoutered->encountered +encoutering->encountering encouters->encounters encoutner->encounter encoutners->encounters @@ -13453,6 +13491,9 @@ Enlish->English, enlist, enlose->enclose enmpty->empty enmum->enum +enmvironment->environment +enmvironmental->environmental +enmvironments->environments ennpoint->endpoint enntries->entries enocde->encode @@ -15643,6 +15684,7 @@ falshed->flashed falshes->flashes falshing->flashing falsly->falsely +falso->false falt->fault falure->failure familar->familiar @@ -15869,6 +15911,7 @@ finelly->finally finess->finesse finge->finger, fringe, fingeprint->fingerprint +fingerpint->fingerprint finialization->finalization finializing->finalizing finilizes->finalizes @@ -16247,6 +16290,7 @@ fonetic->phonetic fontain->fountain, contain, fontains->fountains, contains, fontier->frontier +fontisizing->fontifying fontonfig->fontconfig fontrier->frontier fonud->found @@ -16398,6 +16442,7 @@ fowarding->forwarding fowards->forwards fpr->for, far, fps, fprmat->format +fpt->ftp fracional->fractional fragement->fragment fragementation->fragmentation @@ -16568,6 +16613,7 @@ funchtionning->functioning funchtionns->functions funchtions->functions funcion->function +funcional->functional funcionality->functionality funcions->functions funciotn->function @@ -17400,6 +17446,7 @@ hapens->happens happaned->happened happend->happened, happens, happen, happended->happened +happends->happens happenned->happened happenning->happening happennings->happenings @@ -17603,9 +17650,12 @@ hierchy->hierarchy hieroglph->hieroglyph hieroglphs->hieroglyphs hietus->hiatus +hig-resolution->high-resolution higeine->hygiene higer->higher +higer-resolution->higher-resolution higest->highest +higest-resolution->highest-resolution high-affort->high-effort highe->high, higher, highs, highes->highest, highs, @@ -17779,6 +17829,7 @@ howerver->however howeverm->however howewer->however howver->however +howvere->however hradware->hardware hradwares->hardwares hrlp->help @@ -17808,6 +17859,8 @@ htink->think htis->this htmp->html htose->those, these, +htpt->http +htpts->https htting->hitting hueristic->heuristic humber->number @@ -18265,7 +18318,9 @@ implementates->implements implementatin->implementation, implementing, implementating->implementing implementatins->implementations +implementatio->implementation implementation-spacific->implementation-specific +implementatios->implementations implementatition->implementation implementatoin->implementation implementatoins->implementations @@ -18820,6 +18875,8 @@ indicateds->indicated, indicates, indicatee->indicates, indicated, indicaters->indicators, indicates, indicationg->indicating, indication, +indicatior->indicator +indicatiors->indicators indicats->indicates, indicate, indicees->indices indiciate->indicate @@ -19128,6 +19185,7 @@ initalization->initialization initalize->initialize initalized->initialized initalizer->initializer +initalizers->initializers initalizes->initializes initalizing->initializing initally->initially @@ -19705,6 +19763,8 @@ interacive->interactive interacively->interactively interacsion->interaction interacsions->interactions +interacteve->interactive +interactevely->interactively interactionn->interaction interactionns->interactions interactiv->interactive @@ -20488,9 +20548,10 @@ keyservers->key servers keystokes->keystrokes keyward->keyword keywoards->keywords -keywork->keyword +keywork->keyword, key work, keyworkd->keyword keyworkds->keywords +keyworks->keywords, key works, keywors->keywords keywprd->keyword kindergarden->kindergarten @@ -20910,6 +20971,9 @@ limiations->limitations limination->limitation, lamination, liminted->limited limitaion->limitation +limitaions->limitations +limitaiton->limitation +limitaitons->limitations limite->limit limitiaion->limitation limitiaions->limitations @@ -21132,6 +21196,7 @@ lotharingen->Lothringen lowd->load, low, loud, lpatform->platform lsat->last, slat, sat, +lsip->lisp lsit->list, slit, sit, lsits->lists, slits, sits, luckly->luckily @@ -22249,6 +22314,7 @@ mistatching->mismatching misteek->mystique misteeks->mystiques misterious->mysterious +misteriously->mysteriously mistery->mystery misteryous->mysterious mistic->mystic @@ -22714,6 +22780,7 @@ mutches->matches mutecies->mutexes mutexs->mutexes muti->multi +muti-statement->multi-statement muticast->multicast mutices->mutexes mutiindex->multi index, multi-index, multiindex, @@ -23467,6 +23534,7 @@ non-indentended->non-indented non-inmediate->non-immediate non-inreractive->non-interactive non-instnat->non-instant +non-interactivly->non-interactively non-meausure->non-measure non-negatiotiable->non-negotiable non-negatiotiated->non-negotiated @@ -24489,6 +24557,7 @@ othere->other otherewise->otherwise otherise->otherwise otheriwse->otherwise +othersie->otherwise otherwaise->otherwise otherways->otherwise otherweis->otherwise @@ -24754,6 +24823,11 @@ oxzillary->auxiliary oyu->you p0enis->penis paackage->package +paackages->packages +paackaging->packaging +pacakage->package +pacakages->packages +pacakaging->packaging pacakge->package pacakges->packages pacakging->packaging @@ -25992,6 +26066,8 @@ posibilties->possibilities posible->possible posiblity->possibility posibly->possibly +posifion->position +posifions->positions posiitive->positive posiitives->positives posiitivity->positivity @@ -26588,6 +26664,7 @@ pring->print, bring, ping, spring, pringing->printing, springing, prinicipal->principal prining->printing +printes->printers printting->printing prioirties->priorities prioirty->priority @@ -27049,6 +27126,7 @@ properies->properties properites->properties properities->properties properity->property, proprietary, +properlty->property, properly, properries->properties properrt->property properry->property, properly, @@ -27056,6 +27134,7 @@ properrys->properties propert->property properteis->properties propertery->property +propertes->properties propertie->property, properties, propertion->proportion propertional->proportional @@ -27165,6 +27244,8 @@ protocls->protocols protoco->protocol protocoll->protocol protocolls->protocols +protocool->protocol +protocools->protocols protocos->protocols protoganist->protagonist protoge->protege @@ -27367,6 +27448,7 @@ pullrequests->pull requests puls->pulse, plus, pumkin->pumpkin punctation->punctuation +punctiation->punctuation puplar->popular puplarity->popularity puplate->populate @@ -27415,6 +27497,7 @@ pysically->physically pysics->physics pythin->python pythjon->python +pythong->python pytnon->python pytohn->python pyton->python @@ -27469,6 +27552,7 @@ qudrangles->quadrangles quee->queue Queenland->Queensland queing->queueing +queires->queries queiried->queried queisce->quiesce queriable->queryable @@ -27889,6 +27973,8 @@ realtive->relative, reactive, realy->really, relay, realyl->really reamde->README +reamin->remain +reamining->remaining reamins->remains reampping->remapping, revamping, reander->render @@ -28498,6 +28584,7 @@ refletions->reflections reflets->reflects refocuss->refocus refocussed->refocused +reformated->reformatted reformating->reformatting reformattd->reformatted refreh->refresh @@ -30395,6 +30482,7 @@ satifies->satisfies satifsy->satisfy satify->satisfy satifying->satisfying +satisfactorally->satisfactorily satisfactority->satisfactorily satisfiabilty->satisfiability satisfing->satisfying @@ -30455,6 +30543,7 @@ scavanger->scavenger scavangers->scavengers scavanges->scavenges sccope->scope +sccopes->scopes sceanrio->scenario sceanrios->scenarios scecified->specified @@ -30606,6 +30695,7 @@ seacrchable->searchable seamlessley->seamlessly seamlessy->seamlessly searcahble->searchable +searchd->searched searche->search, searched, searcheable->searchable searchin->searching @@ -30871,6 +30961,7 @@ seonds->seconds, sends, sepaate->separate separartor->separator separat->separate +separatedly->separately separatelly->separately separater->separator separatley->separately @@ -31364,6 +31455,7 @@ shreak->shriek shreshold->threshold shriks->shrinks shrinked->shrunk, shrank, +shs->ssh, NHS, shtop->stop, shop, shtoped->stopped, shopped, shtopes->stops, shops, @@ -31754,6 +31846,7 @@ sligtly->slightly sliped->slipped sliseshow->slideshow slowy->slowly +slq->sql sluggify->slugify smae->same smal->small @@ -32041,6 +32134,7 @@ specialisaitons->specialisations specialitzed->specialised, specialized, specializaiton->specialization specializaitons->specializations +speciall->special, specially, speciallized->specialised, specialized, specialy->specially specic->specific @@ -32100,6 +32194,7 @@ specifigation->specification specifigations->specifications specifing->specifying specifities->specifics +specifity->specificity specifix->specifics, specific, specifiy->specify specifiying->specifying @@ -33482,6 +33577,7 @@ superintendant->superintendent superios->superior, superiors, superopeator->superoperator supersed->superseded +superseed->supersede superseedd->superseded superseede->supersede superseeded->superseded @@ -33704,6 +33800,7 @@ suuported->supported suuporting->supporting suuports->supports suvenear->souvenir +suvh->such suystem->system suystemic->systemic suystems->systems @@ -33917,6 +34014,8 @@ syntatic->syntactic syntatically->syntactically syntaxe->syntax syntaxg->syntax +syntaxical->syntactical +syntaxically->syntactically syntaxt->syntax syntehsise->synthesise syntehsised->synthesised @@ -34714,6 +34813,7 @@ tichness->thickness tickness->thickness tidibt->tidbit tidibts->tidbits +tidyness->tidiness tieing->tying tiem->time, item, tiemout->timeout @@ -34759,6 +34859,7 @@ timestanp->timestamp, timespan, timestanps->timestamps, timespans, timestans->timespans timestap->timestamp +timestap-based->timestamp-based timestaped->timestamped timestaping->timestamping timestaps->timestamps @@ -36935,6 +37036,8 @@ variblae->variable variblaes->variables varible->variable varibles->variables +varieable->variable +varieables->variables varience->variance varient->variant varients->variants @@ -37018,6 +37121,7 @@ vengance->vengeance vengence->vengeance verbaitm->verbatim verbatum->verbatim +verboase->verbose verbous->verbose verbouse->verbose verbously->verbosely @@ -37236,9 +37340,11 @@ visiters->visitors visitng->visiting visivble->visible vissible->visible -visted->visited -visting->visiting +vist->visit, vast, vest, mist, list, fist, gist, vista, +visted->visited, listed, vested, +visting->visiting, listing, vistors->visitors +vists->visits, lists, fists, visuab->visual visuabisation->visualisation visuabise->visualise @@ -37585,6 +37691,7 @@ weree->were werent->weren't werever->wherever wery->very, wary, weary, +wesite->website wether->weather, whether, wew->we whan->want, when, 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 7dcbb8e7a9..d0463b655e 100644 --- a/codespell_lib/data/dictionary_en-GB_to_en-US.txt +++ b/codespell_lib/data/dictionary_en-GB_to_en-US.txt @@ -94,6 +94,11 @@ digitised->digitized digitises->digitizes digitising->digitizing disfavour->disfavor +dishonour->dishonor +dishonourable->dishonorable +dishonoured->dishonored +dishonouring->dishonoring +dishonours->dishonors economise->economize emphasise->emphasize emphasised->emphasized @@ -212,6 +217,8 @@ minimises->minimizes minimising->minimizing mitre->miter modelled->modeled +modeller->modeler +modellers->modelers modelling->modeling modernise->modernize modernised->modernized @@ -272,6 +279,9 @@ randomise->randomize randomised->randomized randomises->randomizes randomising->randomizing +rationalise->rationalize +rationalised->rationalized +rationalising->rationalizing realisation->realization realise->realize realised->realized diff --git a/codespell_lib/data/dictionary_rare.txt b/codespell_lib/data/dictionary_rare.txt index db1a53a350..c9680a1238 100644 --- a/codespell_lib/data/dictionary_rare.txt +++ b/codespell_lib/data/dictionary_rare.txt @@ -89,7 +89,7 @@ hart->heart, harm, heterogenous->heterogeneous hided->hidden, hid, hove->have, hover, love, -impassible->impassable +impassible->impassable, impossible, implicity->implicitly, simplicity, inactivate->deactivate incluse->include From 3c3de78a9583b79733ae9fc22f723a032a8dd179 Mon Sep 17 00:00:00 2001 From: Stefan Kangas Date: Sat, 24 Dec 2022 03:50:31 +0100 Subject: [PATCH 121/302] Add some typos found in FreedroidRPG --- codespell_lib/data/dictionary.txt | 10 ++++++++++ codespell_lib/data/dictionary_rare.txt | 1 + 2 files changed, 11 insertions(+) diff --git a/codespell_lib/data/dictionary.txt b/codespell_lib/data/dictionary.txt index 8a72eb7436..df0f093d83 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -8584,7 +8584,12 @@ conveinent->convenient conveinience->convenience conveinient->convenient convenant->covenant +convencion->convention +convencional->conventional +convencionally->conventionally convenction->convention, convection, +convenctional->conventional +convenctionally->conventionally conveneince->convenience conveniance->convenience conveniant->convenient @@ -9138,6 +9143,8 @@ countain->contain countainer->container countainers->containers countains->contains +countere->counter +counteres->counters counterfit->counterfeit counterfits->counterfeits counterintuive->counter intuitive @@ -18560,6 +18567,7 @@ inclode->include inclreased->increased includ->include includea->include +includeds->includes, included, includee->include includeing->including includied->included @@ -19947,6 +19955,8 @@ interprated->interpreted interpreation->interpretation interprerter->interpreter interpretated->interpreted +interpretaton->interpretation +interpretatons->interpretations interprete->interpret interpretes->interprets interpretet->interpreted diff --git a/codespell_lib/data/dictionary_rare.txt b/codespell_lib/data/dictionary_rare.txt index c9680a1238..d5a06c4460 100644 --- a/codespell_lib/data/dictionary_rare.txt +++ b/codespell_lib/data/dictionary_rare.txt @@ -182,6 +182,7 @@ stings->strings straightaway->straight away straighted->straightened, straighten, suppressable->suppressible +texturers->textures therefor->therefore therefrom->there from theses->these, thesis, From d67e57bab401af0bbc0461dc7bb5b82120db36a4 Mon Sep 17 00:00:00 2001 From: Felix Yan Date: Wed, 24 Aug 2022 13:03:28 +0300 Subject: [PATCH 122/302] Add common misspellings of RISC-V --- 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 df0f093d83..7d3b616554 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -30241,6 +30241,10 @@ riminders->reminders riminding->reminding rimitives->primitives rininging->ringing +rsicv->riscv +RSICV->RISCV +rsic-v->risc-v +RSIC-V->RISC-V rised->raised, rose, rispective->respective ristrict->restrict From ec5383ea18fe9cb4d79faf784219eae277849020 Mon Sep 17 00:00:00 2001 From: Felix Yan Date: Sat, 27 Aug 2022 22:58:35 +0300 Subject: [PATCH 123/302] Remove uppercase LHS and fix sorting --- codespell_lib/data/dictionary.txt | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/codespell_lib/data/dictionary.txt b/codespell_lib/data/dictionary.txt index 7d3b616554..39e8943852 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -30241,10 +30241,6 @@ riminders->reminders riminding->reminding rimitives->primitives rininging->ringing -rsicv->riscv -RSICV->RISCV -rsic-v->risc-v -RSIC-V->RISC-V rised->raised, rose, rispective->respective ristrict->restrict @@ -30357,6 +30353,8 @@ rrror->error rrrored->errored rrroring->erroring rrrors->errors +rsic-v->RISC-V +rsicv->RISCV rsizing->resizing, sizing, rsource->resource, source, rsourced->resourced, sourced, From 43a2b66560ec6ff9ed9c72242c7f1e942462c9af Mon Sep 17 00:00:00 2001 From: Peter Newman Date: Sun, 17 Jul 2022 14:45:32 +0100 Subject: [PATCH 124/302] Revert "Add spelling correction for in-flight" This reverts commit 7221e16e8035acf21914f6da492d1f2e7daac6f1. --- 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 39e8943852..2c84034105 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -19024,7 +19024,6 @@ infite->infinite inflamation->inflammation inflatoin->inflation inflexable->inflexible -inflight->in-flight influece->influence influeced->influenced influeces->influences From 09abf4dfdd9d8f2bbda6f7768a541c5448b256f6 Mon Sep 17 00:00:00 2001 From: bl-ue Date: Mon, 14 Jun 2021 08:55:21 -0400 Subject: [PATCH 125/302] Typos from marvin.cs.uidaho.edu (rework of #1374): A Closes #1950 --- codespell_lib/data/dictionary.txt | 185 ++++++++++++++++++++++++++++++ 1 file changed, 185 insertions(+) diff --git a/codespell_lib/data/dictionary.txt b/codespell_lib/data/dictionary.txt index 2c84034105..1f5b831d50 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -1824,10 +1824,24 @@ amacing->amazing amacingly->amazingly amalgomated->amalgamated amatuer->amateur +amatur->amateur amature->armature, amateur, +amaturs->amateurs amazaing->amazing +ambadexterous->ambidextrous +ambadexterouseness->ambidextrousness +ambadexterously->ambidextrously +ambadexterousness->ambidextrousness +ambadextrous->ambidextrous +ambadextrouseness->ambidextrousness +ambadextrously->ambidextrously +ambadextrousness->ambidextrousness ambedded->embedded ambibuity->ambiguity +ambidexterous->ambidextrous +ambidexterouseness->ambidextrousness +ambidexterously->ambidextrously +ambidexterousness->ambidextrousness ambien->ambient ambigious->ambiguous ambigous->ambiguous @@ -1839,6 +1853,22 @@ ambuguity->ambiguity ambulence->ambulance ambulences->ambulances amdgput->amdgpu +amealearate->ameliorate +amealearative->ameliorative +amealearator->ameliorator +amealiarate->ameliorate +amealiarative->ameliorative +amealiarator->ameliorator +ameba->amoeba +ameelarate->ameliorate +ameelarative->ameliorative +ameelarator->ameliorator +ameeliarate->ameliorate +ameeliarative->ameliorative +ameeliarator->ameliorator +amelearate->ameliorate +amelearative->ameliorative +amelearator->ameliorator amendement->amendment amendmant->amendment amened->amended, amend, @@ -1874,8 +1904,14 @@ amout->amount amoutn->amount amoutns->amounts amouts->amounts +ampatheater->amphitheater +ampatheaters->amphitheaters amperstands->ampersands amphasis->emphasis +amphatheater->amphitheater +amphatheaters->amphitheaters +ampitheater->amphitheater +ampitheaters->amphitheaters amplifer->amplifier amplifyer->amplifier amplitud->amplitude @@ -1926,6 +1962,8 @@ analyer->analyser, analyzer, analyers->analysers, analyzers, analyes->analyses, analyzes, analyse, analyze, analyis->analysis +analyist->analyst +analyists->analysts analysator->analyser analysies->analyses, analysis, analysus->analysis @@ -1944,6 +1982,8 @@ analzying->analyzing ananlog->analog anarchim->anarchism anarchistm->anarchism +anarkistic->anarchistic +anarkists->anarchists anarquism->anarchism anarquist->anarchist anaylse->analyse @@ -1971,6 +2011,7 @@ ancesetors->ancestors ancester->ancestor ancesteres->ancestors ancesters->ancestors +ancestoral->ancestral ancestore->ancestor ancestores->ancestors ancestory->ancestry @@ -1993,11 +2034,29 @@ androind->android androinds->androids andthe->and the ane->and +aneeling->annealing anevironment->environment anevironments->environments angluar->angular +angshios->anxious +angshiosly->anxiously +angshiosness->anxiousness +angshis->anxious +angshisly->anxiously +angshisness->anxiousness +angshiuos->anxious +angshiuosly->anxiously +angshiuosness->anxiousness +angshus->anxious +angshusly->anxiously +angshusness->anxiousness anguluar->angular +angziety->anxiety anhoter->another +anialate->annihilate +anialated->annihilated +anialates->annihilates +anialating->annihilating anid->and anihilation->annihilation animaing->animating @@ -2016,6 +2075,7 @@ animeted->animated animetion->animation animetions->animations animets->animates +animonee->anemone animore->anymore aninate->animate anination->animation @@ -2029,11 +2089,27 @@ anitrez->antirez aniversary->anniversary aniway->anyway aniwhere->anywhere +anjanew->ingenue +ankshios->anxious +ankshiosly->anxiously +ankshiosness->anxiousness +ankshis->anxious +ankshisly->anxiously +ankshisness->anxiousness +ankshiuos->anxious +ankshiuosly->anxiously +ankshiuosness->anxiousness +ankshus->anxious +ankshusly->anxiously +ankshusness->anxiousness anlge->angle anly->only, any, anlysis->analysis anlyzing->analyzing anme->name, anime, +annaverseries->anniversaries +annaversery->anniversary +annaverserys->anniversaries annay->annoy, any, annayed->annoyed annaying->annoying @@ -2056,6 +2132,9 @@ annoncement->announcement annoncements->announcements annonces->announces annoncing->announcing +annonomus->anonymous +annonomusally->anonymously +annonomusly->anonymously annonymous->anonymous annotaion->annotation annotaions->annotations @@ -2073,6 +2152,8 @@ announcments->announcements announed->announced announement->announcement announements->announcements +annoyence->annoyance +annoyences->annoyances annoymous->anonymous annoyying->annoying annualy->annually @@ -2082,10 +2163,14 @@ anoher->another anohter->another anologon->analogon anomally->anomaly +anomolee->anomaly anomolies->anomalies anomolous->anomalous anomoly->anomaly anonimity->anonymity +anonimus->anonymous +anonimusally->anonymously +anonimusly->anonymously anononymous->anonymous anonther->another anonymouse->anonymous @@ -2109,11 +2194,25 @@ anounce->announce anounced->announced anouncement->announcement anount->amount +anoyed->annoyed anoying->annoying anoymous->anonymous +anoys->annoys +anpatheater->amphitheater +anpatheaters->amphitheaters +anphatheater->amphitheater +anphatheaters->amphitheaters +anphibian->amphibian +anphibians->amphibians +anphitheater->amphitheater +anphitheaters->amphitheaters +anpitheater->amphitheater +anpitheaters->amphitheaters anroid->android ansalisation->nasalisation ansalization->nasalization +ansamble->ensemble +ansambles->ensembles anser->answer ansester->ancestor ansesters->ancestors @@ -2141,21 +2240,38 @@ anthropolgy->anthropology antialialised->antialiased antialising->antialiasing antiapartheid->anti-apartheid +anticdote->anecdote +anticdotes->anecdotes anticpate->anticipate +antripanewer->entrepreneur +antripanewers->entrepreneurs antry->entry antyhing->anything anual->annual anually->annually +anuled->annulled +anuling->annulling +anull->annul anulled->annulled +anulling->annulling +anulls->annulled anumber->a number +anurism->aneurysm anuwhere->anywhere anway->anyway anways->anyway +anwee->ennui anwhere->anywhere anwser->answer anwsered->answered anwsering->answering anwsers->answers +anxios->anxious +anxiosly->anxiously +anxiosness->anxiousness +anxiuos->anxious +anxiuosly->anxiously +anxiuosness->anxiousness anyawy->anyway anyhing->anything anyhting->anything @@ -2193,9 +2309,16 @@ apach->apache apapted->adapted aparant->apparent aparantly->apparently +aparatus->apparatus +aparatuses->apparatuses aparent->apparent aparently->apparently aparment->apartment +apartide->apartheid +apaul->appall +apauled->appalled +apauling->appalling +apauls->appalls apdated->updated apeal->appeal apealed->appealed @@ -2220,12 +2343,15 @@ aperure->aperture aperures->apertures apeture->aperture apetures->apertures +apihelion->aphelion +apihelions->aphelions apilogue->epilogue aplha->alpha aplication->application aplications->applications aplied->applied aplies->applies +aplikay->appliqué aplitude->amplitude, aptitude, apllicatin->application apllicatins->applications @@ -2238,14 +2364,19 @@ apllying->applying aply->apply aplyed->applied aplying->applying +apocraful->apocryphal apointed->appointed apointing->appointing apointment->appointment apoints->appoints apolegetic->apologetic apolegetics->apologetics +apollstree->upholstery apon->upon, apron, aportionable->apportionable +apostrafes->apostrophes +apostrafies->apostrophes +apostrafy->apostrophe apostrophie->apostrophe apostrophies->apostrophes appar->appear @@ -2261,6 +2392,9 @@ appars->appears appart->apart appartment->apartment appartments->apartments +appathetic->apathetic +appature->aperture +appatures->apertures appealling->appealing, appalling, appearaing->appearing appearantly->apparently @@ -2543,6 +2677,7 @@ apreciating->appreciating apreciation->appreciation apreciative->appreciative aprehensive->apprehensive +apresheation->appreciation apreteate->appreciate apreteated->appreciated apreteating->appreciating @@ -2579,6 +2714,7 @@ aprroximates->approximates aprroximation->approximation aprroximations->approximations aprtment->apartment +apyoon->uppugn aqain->again aqcuire->acquire aqcuired->acquired @@ -2590,7 +2726,12 @@ aquaintance->acquaintance aquainted->acquainted aquainting->acquainting aquaints->acquaints +aqueus->aqueous aquiantance->acquaintance +aquiess->acquiesce +aquiessed->acquiesced +aquiesses->acquiesces +aquiessing->acquiescing aquire->acquire aquired->acquired aquires->acquires @@ -2600,6 +2741,8 @@ aquisitions->acquisitions aquit->acquit aquitted->acquitted aquries->acquires, equerries, +aracnid->arachnid +aracnids->arachnids arameters->parameters aranged->arranged arangement->arrangement @@ -2764,6 +2907,8 @@ arcives->archives arciving->archiving arcticle->article Ardiuno->Arduino +ardvark->aardvark +ardvarks->aardvarks are'nt->aren't aready->already areea->area @@ -2835,11 +2980,19 @@ aritst->artist arival->arrival arive->arrive arlready->already +armagedon->armageddon +armagedons->armageddons armamant->armament armistace->armistice +armistis->armistice +armistises->armistices armonic->harmonic +armorment->armament +armorments->armaments arn't->aren't arne't->aren't +aroara->aurora +aroaras->auroras arogant->arrogant arogent->arrogant aronud->around @@ -2906,6 +3059,8 @@ arrengements->arrangements arrity->arity, parity, arriveis->arrives arrivial->arrival +arro->arrow +arros->arrows arround->around arrray->array arrrays->arrays @@ -2917,7 +3072,9 @@ arry->array, carry, arrya->array arryas->arrays arrys->arrays +arsnic->arsenic artcile->article +artic->arctic articaft->artifact articafts->artifacts artical->article @@ -3019,6 +3176,7 @@ asociated->associated asolute->absolute asorbed->absorbed aspected->expected +aspestus->asbestos asphyxation->asphyxiation assasin->assassin assasinate->assassinate @@ -3036,6 +3194,7 @@ asscociated->associated asscoitaed->associated assebly->assembly assebmly->assembly +assemalate->assimilate assembe->assemble assembed->assembled assembeld->assembled @@ -3056,6 +3215,7 @@ assesment->assessment assesments->assessments assessmant->assessment assessmants->assessments +assfalt->asphalt assgin->assign assgined->assigned assgining->assigning @@ -3114,6 +3274,8 @@ assigntment->assignment assihnment->assignment assihnments->assignments assime->assume +assimtote->asymptote +assimtotes->asymptotes assined->assigned assing->assign assinged->assigned @@ -3145,6 +3307,7 @@ assistent->assistant assit->assist assitant->assistant assition->assertion +assma->asthma assmbler->assembler assmeble->assemble assmebler->assembler @@ -3303,6 +3466,8 @@ assymtote->asymptote assymtotes->asymptotes assymtotic->asymptotic assymtotically->asymptotically +astarisk->asterisk +astarisks->asterisks asterices->asterisks asteriks->asterisk, asterisks, asteriod->asteroid @@ -3316,12 +3481,18 @@ asthetically->aesthetically asthetics->aesthetics astiimate->estimate astiimation->estimation +astrix->asterisk +astrixes->asterisks +astrixs->asterisks +astroid->asteroid asume->assume asumed->assumed asumes->assumes asuming->assuming asumption->assumption +asumtotic->asymptotic asure->assure +aswage->assuage aswell->as well asychronize->asynchronize asychronized->asynchronized @@ -3381,6 +3552,8 @@ atended->attended atendee->attendee atends->attends atention->attention +aternies->attorneys +aterny->attorney atheistical->atheistic athenean->Athenian atheneans->Athenians @@ -3488,6 +3661,7 @@ attitide->attitude attmept->attempt attmpt->attempt attnetion->attention +attornies->attorneys attosencond->attosecond attosenconds->attoseconds attrbiute->attribute @@ -3599,6 +3773,10 @@ auot->auto auotmatic->automatic auromated->automated aussian->Gaussian, Russian, Austrian, +austair->austere +austeer->austere +austensible->ostensible +austensibly->ostensibly austrailia->Australia austrailian->Australian Australien->Australian @@ -3967,6 +4145,8 @@ autosae->autosave autosavegs->autosaves autosaveperodical->autosaveperiodical autosence->autosense +autotorium->auditorium +autotoriums->auditoriums autum->autumn auxialiary->auxiliary auxilaries->auxiliaries @@ -3982,6 +4162,8 @@ auxilliaries->auxiliaries auxilliary->auxiliary auxiluary->auxiliary auxliliary->auxiliary +avacado->avocado +avacados->avocados avaiable->available avaialable->available avaialbale->available @@ -4133,6 +4315,9 @@ aysnc->async aything->anything ayway->anyway, away, ayways->always +azma->asthma +azmith->azimuth +azmiths->azimuths baase->base, abase, bable->babel, table, bible, bacause->because From 9affed22671bb9730eb35bd1545631a63cedc23c Mon Sep 17 00:00:00 2001 From: Stefan Kangas Date: Mon, 26 Dec 2022 05:41:40 +0100 Subject: [PATCH 126/302] Add suggestions from code review of #1950 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit This skips some of the suggestions due to: E error 'amoebas' should not be in aspell dictionaries E error 'amœba' should not be in aspell dictionaries E error 'amœbae' should not be in aspell dictionaries E error 'amœbas' should not be in aspell dictionaries E error 'applique' should not be in aspell dictionaries --- codespell_lib/data/dictionary.txt | 13 +++++++++++-- 1 file changed, 11 insertions(+), 2 deletions(-) diff --git a/codespell_lib/data/dictionary.txt b/codespell_lib/data/dictionary.txt index 1f5b831d50..ea30eef274 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -1859,7 +1859,9 @@ amealearator->ameliorator amealiarate->ameliorate amealiarative->ameliorative amealiarator->ameliorator -ameba->amoeba +ameba->amoebae +amebae->amoebae +amebas->amoebae ameelarate->ameliorate ameelarative->ameliorative ameelarator->ameliorator @@ -2352,6 +2354,7 @@ aplications->applications aplied->applied aplies->applies aplikay->appliqué +aplikays->appliqués aplitude->amplitude, aptitude, apllicatin->application apllicatins->applications @@ -2485,6 +2488,8 @@ applide->applied applie->apply, applied, applikation->application applikations->applications +applikay->appliqué +applikays->appliqués appling->applying, appalling, appllied->applied applly->apply @@ -2714,7 +2719,10 @@ aprroximates->approximates aprroximation->approximation aprroximations->approximations aprtment->apartment -apyoon->uppugn +apyoon->oppugn +apyooned->oppugned +apyooning->oppugning +apyoons->oppugns aqain->again aqcuire->acquire aqcuired->acquired @@ -3469,6 +3477,7 @@ assymtotically->asymptotically astarisk->asterisk astarisks->asterisks asterices->asterisks +asterik->asterisk asteriks->asterisk, asterisks, asteriod->asteroid astethic->aesthetic From 39342c6f991c12f170f8076e24b166d9107ced6d Mon Sep 17 00:00:00 2001 From: Stefan Kangas Date: Mon, 26 Dec 2022 05:56:20 +0100 Subject: [PATCH 127/302] Add several variations --- codespell_lib/data/dictionary.txt | 43 ++++++++++++++++++++++++++++--- 1 file changed, 40 insertions(+), 3 deletions(-) diff --git a/codespell_lib/data/dictionary.txt b/codespell_lib/data/dictionary.txt index ea30eef274..e15a5eb7e2 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -1854,21 +1854,36 @@ ambulence->ambulance ambulences->ambulances amdgput->amdgpu amealearate->ameliorate +amealearated->ameliorated +amealearates->ameliorates +amealearating->ameliorating amealearative->ameliorative amealearator->ameliorator amealiarate->ameliorate +amealiarated->ameliorated +amealiarates->ameliorates +amealiarating->ameliorating amealiarative->ameliorative amealiarator->ameliorator ameba->amoebae amebae->amoebae amebas->amoebae ameelarate->ameliorate +ameelarated->ameliorated +ameelarates->ameliorates +ameelarating->ameliorating ameelarative->ameliorative ameelarator->ameliorator ameeliarate->ameliorate +ameeliarated->ameliorated +ameeliarates->ameliorates +ameeliarating->ameliorating ameeliarative->ameliorative ameeliarator->ameliorator amelearate->ameliorate +amelearated->ameliorated +amelearates->ameliorates +amelearating->ameliorating amelearative->ameliorative amelearator->ameliorator amendement->amendment @@ -1876,6 +1891,11 @@ amendmant->amendment amened->amended, amend, Amercia->America amerliorate->ameliorate +amerliorated->ameliorated +amerliorates->ameliorates +amerliorating->ameliorating +amerliorative->ameliorative +amerliorator->ameliorator amgle->angle amgles->angles amiguous->ambiguous @@ -1983,11 +2003,16 @@ analzyes->analyzes analzying->analyzing ananlog->analog anarchim->anarchism -anarchistm->anarchism +anarchistm->anarchism, anarchist, +anarchit->anarchist +anarchits->anarchists +anarkist->anarchist anarkistic->anarchistic anarkists->anarchists anarquism->anarchism anarquist->anarchist +anarquistic->anarchistic +anarquists->anarchists anaylse->analyse anaylsed->analysed anaylser->analyser @@ -2036,7 +2061,10 @@ androind->android androinds->androids andthe->and the ane->and +aneel->anneal +aneeled->annealed aneeling->annealing +aneels->anneals anevironment->environment anevironments->environments angluar->angular @@ -2138,6 +2166,7 @@ annonomus->anonymous annonomusally->anonymously annonomusly->anonymously annonymous->anonymous +annonymously->anonymously annotaion->annotation annotaions->annotations annoted->annotated @@ -2196,6 +2225,7 @@ anounce->announce anounced->announced anouncement->announcement anount->amount +anoy->annoy anoyed->annoyed anoying->annoying anoymous->anonymous @@ -2242,8 +2272,8 @@ anthropolgy->anthropology antialialised->antialiased antialising->antialiasing antiapartheid->anti-apartheid -anticdote->anecdote -anticdotes->anecdotes +anticdote->anecdote, antidote, +anticdotes->anecdotes, antidotes, anticpate->anticipate antripanewer->entrepreneur antripanewers->entrepreneurs @@ -2257,6 +2287,7 @@ anull->annul anulled->annulled anulling->annulling anulls->annulled +anuls->annulls anumber->a number anurism->aneurysm anuwhere->anywhere @@ -3203,6 +3234,9 @@ asscoitaed->associated assebly->assembly assebmly->assembly assemalate->assimilate +assemalated->assimilated +assemalates->assimilates +assemalating->assimilating assembe->assemble assembed->assembled assembeld->assembled @@ -3224,6 +3258,9 @@ assesments->assessments assessmant->assessment assessmants->assessments assfalt->asphalt +assfalted->asphalted +assfalting->asphalting +assfalts->asphalts assgin->assign assgined->assigned assgining->assigning From 0068edbd3da86c481c0bfca2fc0ac6392d08890c Mon Sep 17 00:00:00 2001 From: Stefan Kangas Date: Mon, 26 Dec 2022 07:46:48 +0100 Subject: [PATCH 128/302] Add some additional corrections from marvin.cs.uidaho.edu (A) Updated 2022-12-26 --- codespell_lib/data/dictionary.txt | 26 ++++++++++++++++++++++++++ 1 file changed, 26 insertions(+) diff --git a/codespell_lib/data/dictionary.txt b/codespell_lib/data/dictionary.txt index e15a5eb7e2..e2f5574e71 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -326,6 +326,7 @@ accepeted->accepted acceppt->accept acceptence->acceptance acceptible->acceptable +acceptibly->acceptably acceptted->accepted acces->access accesed->accessed @@ -358,6 +359,7 @@ accessiiblity->accessibility accessile->accessible accessintg->accessing accessisble->accessible +accessment->assessment accessoire->accessory accessoires->accessories, accessorise, accessoirez->accessorize, accessories, @@ -517,6 +519,7 @@ accss->access accssible->accessible accssor->accessor acctual->actual +accually->actually accuarcy->accuracy accuarte->accurate accuartely->accurately @@ -579,6 +582,7 @@ acessible->accessible acessing->accessing acessor->accessor acessors->accessors, accessor, +acheeve->achieve acheive->achieve acheived->achieved acheivement->achievement @@ -667,6 +671,8 @@ acomplishments->accomplishments acontiguous->a contiguous acoording->according acoordingly->accordingly +acoostic->acoustic +acordian->accordion acording->according acordingly->accordingly acordinng->according @@ -676,9 +682,11 @@ acount->account acounts->accounts acquaintence->acquaintance acquaintences->acquaintances +acqueus->aqueous acquiantence->acquaintance acquiantences->acquaintances acquiesence->acquiescence +acquiess->acquiesce acquisiton->acquisition acquisitons->acquisitions acquited->acquitted @@ -693,8 +701,10 @@ acqusitions->acquisitions acrage->acreage acroos->across acrosss->across +acrost->across acrue->accrue acrued->accrued +acryllic->acrylic acses->cases, access, acssume->assume acssumed->assumed @@ -703,6 +713,7 @@ actally->actually actaly->actually actaul->actual actaully->actually +acter->actor actial->actual actially->actually actialy->actually @@ -785,6 +796,7 @@ acustommed->accustomed acutal->actual acutally->actually acutual->actual +adament->adamant adapated->adapted adapater->adapter adapaters->adapters @@ -804,6 +816,7 @@ adaptibe->adaptive adaptove->adaptive, adoptive, adaquate->adequate adaquately->adequately +adaquit->adequate adatper->adapter adatpers->adapters adavance->advance @@ -922,9 +935,11 @@ adevnturer->adventurer adevnturers->adventurers adevntures->adventures adevnturing->adventuring +adew->adieu adge->edge, badge, adage, adges->edges, badges, adages, adhearing->adhering +adheasive->adhesive adherance->adherence adiacent->adjacent adiditon->addition @@ -940,16 +955,20 @@ adivsories->advisories adivsoriy->advisory, advisories, adivsoriyes->advisories adivsory->advisory +adjacancy->adjacency adjacentcy->adjacency, adjacence, adjacentsy->adjacency adjactend->adjacent adjancent->adjacent +adjasant->adjacent adjascent->adjacent adjasence->adjacence adjasencies->adjacencies adjasensy->adjacency adjasent->adjacent adjast->adjust +adjatate->agitate +adjative->adjective adjcence->adjacence adjcencies->adjacencies adjcent->adjacent @@ -1041,6 +1060,7 @@ advaned->advanced advantagous->advantageous advanved->advanced adventages->advantages +adventagous->advantageous adventrous->adventurous adverised->advertised advertice->advertise @@ -1080,6 +1100,7 @@ afetr->after affact->affect, effect, affecfted->affected affekt->affect, effect, +afficianado->aficionado afficianados->aficionados afficionado->aficionado afficionados->aficionados @@ -1128,6 +1149,7 @@ agant->agent agants->agents, against, aggaravates->aggravates aggegate->aggregate +aggenst->against aggessive->aggressive aggessively->aggressively agggregate->aggregate @@ -1152,6 +1174,7 @@ aggresive->aggressive aggresively->aggressively aggrevate->aggravate aggrgate->aggregate +aggrivate->aggravate agian->again agianst->against agin->again @@ -1161,6 +1184,7 @@ aglorithm->algorithm aglorithms->algorithms agorithm->algorithm agrain->again +agrandize->aggrandize agravate->aggravate agre->agree agred->agreed @@ -1200,6 +1224,7 @@ ahere->here, adhere, ahev->have ahlpa->alpha ahlpas->alphas +ahmond->almond ahppen->happen ahve->have aicraft->aircraft @@ -1823,6 +1848,7 @@ alyways->always amacing->amazing amacingly->amazingly amalgomated->amalgamated +amalgum->amalgam amatuer->amateur amatur->amateur amature->armature, amateur, From 65efe4a074ab924863d1ca89bcfd798e61fd38e9 Mon Sep 17 00:00:00 2001 From: Stefan Kangas Date: Mon, 26 Dec 2022 07:58:52 +0100 Subject: [PATCH 129/302] Add even more variations --- codespell_lib/data/dictionary.txt | 31 ++++++++++++++++++- .../data/dictionary_en-GB_to_en-US.txt | 3 ++ codespell_lib/data/dictionary_rare.txt | 2 ++ 3 files changed, 35 insertions(+), 1 deletion(-) diff --git a/codespell_lib/data/dictionary.txt b/codespell_lib/data/dictionary.txt index e2f5574e71..ecefbc7ed2 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -360,6 +360,7 @@ accessile->accessible accessintg->accessing accessisble->accessible accessment->assessment +accessments->assessments accessoire->accessory accessoires->accessories, accessorise, accessoirez->accessorize, accessories, @@ -583,6 +584,11 @@ acessing->accessing acessor->accessor acessors->accessors, accessor, acheeve->achieve +acheeved->achieved +acheevement->achievement +acheevements->achievements +acheeves->achieves +acheeving->achieving acheive->achieve acheived->achieved acheivement->achievement @@ -673,9 +679,12 @@ acoording->according acoordingly->accordingly acoostic->acoustic acordian->accordion +acordians->accordions acording->according acordingly->accordingly acordinng->according +acordion->accordion +acordions->accordions acorss->across acorting->according acount->account @@ -687,6 +696,9 @@ acquiantence->acquaintance acquiantences->acquaintances acquiesence->acquiescence acquiess->acquiesce +acquiessed->acquiesced +acquiesses->acquiesces +acquiessing->acquiescing acquisiton->acquisition acquisitons->acquisitions acquited->acquitted @@ -713,7 +725,6 @@ actally->actually actaly->actually actaul->actual actaully->actually -acter->actor actial->actual actially->actually actialy->actually @@ -797,6 +808,7 @@ acutal->actual acutally->actually acutual->actual adament->adamant +adamently->adamantly adapated->adapted adapater->adapter adapaters->adapters @@ -817,6 +829,7 @@ adaptove->adaptive, adoptive, adaquate->adequate adaquately->adequately adaquit->adequate +adaquitly->adequately adatper->adapter adatpers->adapters adavance->advance @@ -940,6 +953,7 @@ adge->edge, badge, adage, adges->edges, badges, adages, adhearing->adhering adheasive->adhesive +adheasives->adhesives adherance->adherence adiacent->adjacent adiditon->addition @@ -961,13 +975,18 @@ adjacentsy->adjacency adjactend->adjacent adjancent->adjacent adjasant->adjacent +adjasantly->adjacently adjascent->adjacent +adjascently->adjacently adjasence->adjacence adjasencies->adjacencies adjasensy->adjacency adjasent->adjacent adjast->adjust adjatate->agitate +adjatated->agitated +adjatates->agitates +adjatating->agitating adjative->adjective adjcence->adjacence adjcencies->adjacencies @@ -1061,6 +1080,7 @@ advantagous->advantageous advanved->advanced adventages->advantages adventagous->advantageous +adventagously->advantageously adventrous->adventurous adverised->advertised advertice->advertise @@ -1175,6 +1195,9 @@ aggresively->aggressively aggrevate->aggravate aggrgate->aggregate aggrivate->aggravate +aggrivated->aggravated +aggrivates->aggravates +aggrivating->aggravating agian->again agianst->against agin->again @@ -1185,6 +1208,9 @@ aglorithms->algorithms agorithm->algorithm agrain->again agrandize->aggrandize +agrandized->aggrandized +agrandizes->aggrandizes +agrandizing->aggrandizing agravate->aggravate agre->agree agred->agreed @@ -1225,6 +1251,7 @@ ahev->have ahlpa->alpha ahlpas->alphas ahmond->almond +ahmonds->almonds ahppen->happen ahve->have aicraft->aircraft @@ -1849,7 +1876,9 @@ amacing->amazing amacingly->amazingly amalgomated->amalgamated amalgum->amalgam +amalgums->amalgams amatuer->amateur +amatuers->amateurs amatur->amateur amature->armature, amateur, amaturs->amateurs 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 d0463b655e..312d31f9ec 100644 --- a/codespell_lib/data/dictionary_en-GB_to_en-US.txt +++ b/codespell_lib/data/dictionary_en-GB_to_en-US.txt @@ -11,6 +11,9 @@ analyser->analyzer analysers->analyzers analysing->analyzing apologise->apologize +apologised->apologized +apologises->apologizes +apologising->apologizing armour->armor artefact->artifact artefacts->artifacts diff --git a/codespell_lib/data/dictionary_rare.txt b/codespell_lib/data/dictionary_rare.txt index d5a06c4460..6375607147 100644 --- a/codespell_lib/data/dictionary_rare.txt +++ b/codespell_lib/data/dictionary_rare.txt @@ -1,5 +1,7 @@ ablet->able, tablet, accreting->accrediting +acter->actor +acters->actors afterwords->afterwards amination->animation, lamination, aminations->animations, laminations, From 69b75cfca6bbf14c6f6ace6af58ae119caf3ef8d Mon Sep 17 00:00:00 2001 From: - Date: Mon, 31 Oct 2022 13:46:19 +0100 Subject: [PATCH 130/302] Added British words --- codespell_lib/data/dictionary_en-GB_to_en-US.txt | 1 + 1 file changed, 1 insertion(+) 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 312d31f9ec..581b736a74 100644 --- a/codespell_lib/data/dictionary_en-GB_to_en-US.txt +++ b/codespell_lib/data/dictionary_en-GB_to_en-US.txt @@ -102,6 +102,7 @@ dishonourable->dishonorable dishonoured->dishonored dishonouring->dishonoring dishonours->dishonors +doughnut->donut economise->economize emphasise->emphasize emphasised->emphasized From 1212dc4a1f9166046787cbc28c3506b08ac94e43 Mon Sep 17 00:00:00 2001 From: - Date: Mon, 31 Oct 2022 15:40:59 +0100 Subject: [PATCH 131/302] Added more words --- codespell_lib/data/dictionary_en-GB_to_en-US.txt | 3 +++ 1 file changed, 3 insertions(+) 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 581b736a74..1638a628e3 100644 --- a/codespell_lib/data/dictionary_en-GB_to_en-US.txt +++ b/codespell_lib/data/dictionary_en-GB_to_en-US.txt @@ -15,6 +15,8 @@ apologised->apologized apologises->apologizes apologising->apologizing armour->armor +armoured->armored +armoury->armoury artefact->artifact artefacts->artifacts authorisation->authorization @@ -103,6 +105,7 @@ dishonoured->dishonored dishonouring->dishonoring dishonours->dishonors doughnut->donut +doughnuts->donuts economise->economize emphasise->emphasize emphasised->emphasized From c5d495d60267c8bcef3d5b0e5465bab11a2f88c9 Mon Sep 17 00:00:00 2001 From: - Date: Mon, 31 Oct 2022 16:16:30 +0100 Subject: [PATCH 132/302] Added more suggestions --- codespell_lib/data/dictionary_en-GB_to_en-US.txt | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) 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 1638a628e3..02afc82340 100644 --- a/codespell_lib/data/dictionary_en-GB_to_en-US.txt +++ b/codespell_lib/data/dictionary_en-GB_to_en-US.txt @@ -16,7 +16,9 @@ apologises->apologizes apologising->apologizing armour->armor armoured->armored -armoury->armoury +armouring->armoring +armours->armors +armoury->armory artefact->artifact artefacts->artifacts authorisation->authorization From a80c4d5b8215d28a539ca248904099a7ea941eaf Mon Sep 17 00:00:00 2001 From: Dimitri Papadopoulos <3234522+DimitriPapadopoulos@users.noreply.github.com> Date: Mon, 26 Dec 2022 10:23:50 +0100 Subject: [PATCH 133/302] Remove donut for now Otherwise we cannot pass CI tests. --- codespell_lib/data/dictionary_en-GB_to_en-US.txt | 2 -- 1 file changed, 2 deletions(-) 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 02afc82340..703129e89f 100644 --- a/codespell_lib/data/dictionary_en-GB_to_en-US.txt +++ b/codespell_lib/data/dictionary_en-GB_to_en-US.txt @@ -106,8 +106,6 @@ dishonourable->dishonorable dishonoured->dishonored dishonouring->dishonoring dishonours->dishonors -doughnut->donut -doughnuts->donuts economise->economize emphasise->emphasize emphasised->emphasized From 1a660a6bf3c5c2052ee9e70bda06018113b2584e Mon Sep 17 00:00:00 2001 From: Stefan Kangas Date: Fri, 18 Nov 2022 11:03:11 +0100 Subject: [PATCH 134/302] Add many corrections to dictionary.txt --- codespell_lib/data/dictionary.txt | 140 ++++++++++++++++++++++++++++++ 1 file changed, 140 insertions(+) diff --git a/codespell_lib/data/dictionary.txt b/codespell_lib/data/dictionary.txt index ecefbc7ed2..d5ae74b800 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -589,6 +589,7 @@ acheevement->achievement acheevements->achievements acheeves->achieves acheeving->achieving +acheivable->achievable acheive->achieve acheived->achieved acheivement->achievement @@ -1232,6 +1233,7 @@ agressiveness->aggressiveness agressivity->aggressivity agressor->aggressor agresssive->aggressive +agrgressive->aggressive agrgument->argument agrguments->arguments agricultue->agriculture @@ -1246,6 +1248,7 @@ agument->argument agumented->augmented aguments->arguments aheared->adhered +ahed->ahead ahere->here, adhere, ahev->have ahlpa->alpha @@ -1815,6 +1818,7 @@ altenative->alternative alterated->altered alterately->alternately alterative->alternative +alteratively->alternatively alteratives->alternatives alterior->ulterior alternaive->alternative @@ -2241,6 +2245,8 @@ announements->announcements annoyence->annoyance annoyences->annoyances annoymous->anonymous +annoyn->annoy, annoying, +annoyning->annoying annoyying->annoying annualy->annually annuled->annulled @@ -2248,6 +2254,7 @@ annyoingly->annoyingly anoher->another anohter->another anologon->analogon +anologous->analogous anomally->anomaly anomolee->anomaly anomolies->anomalies @@ -2257,6 +2264,8 @@ anonimity->anonymity anonimus->anonymous anonimusally->anonymously anonimusly->anonymously +anonomous->anonymous +anonomously->anonymously anononymous->anonymous anonther->another anonymouse->anonymous @@ -2633,6 +2642,8 @@ appplying->applying apppriate->appropriate appproach->approach apppropriate->appropriate +appraent->apparent +appraently->apparently appraoch->approach appraochable->approachable appraoched->approached @@ -2953,6 +2964,7 @@ archiecture->architecture archiectures->architectures archieve->achieve, archive, archimedian->archimedean +archine->archive architct->architect architcts->architects architcture->architecture @@ -4055,6 +4067,7 @@ authobiographic->autobiographic authobiography->autobiography authoer->author authoratative->authoritative +authoratitative->authoritative authorative->authoritative authorded->authored authorites->authorities @@ -4480,6 +4493,7 @@ backwad->backwards backwardss->backwards backware->backward backwark->backward +backwars->backward, backwards, backwrad->backward bactracking->backtracking bacup->backup @@ -4812,6 +4826,7 @@ betwern->between betwween->between beucase->because beuracracy->bureaucracy +beuraucratic->bureaucratic beutification->beautification beutiful->beautiful beutifully->beautifully @@ -5627,6 +5642,7 @@ callig->calling callint->calling callled->called calllee->callee +calllers->callers calloed->called callser->caller callsr->calls @@ -5735,6 +5751,8 @@ cantact->contact cantacted->contacted cantacting->contacting cantacts->contacts +cantain->contain +cantains->contains canvase->canvas caost->coast capabable->capable @@ -6005,6 +6023,7 @@ cemetaries->cemeteries cemetary->cemetery cenario->scenario cenarios->scenarios +cencretely->concretely cencter->center cencus->census cengter->center @@ -6023,6 +6042,7 @@ centruies->centuries centruy->century centuties->centuries centuty->century +cenventions->conventions cerain->certain cerainly->certainly cerainty->certainty @@ -6061,6 +6081,7 @@ certficiations->certifications certfied->certified certfy->certify certi->certificate, certify, +certiainly->certainly certian->certain certianly->certainly certicate->certificate @@ -6174,6 +6195,7 @@ changge->change changged->changed changgeling->changeling changges->changes +changin->changing changlog->changelog changuing->changing chanined->chained @@ -6185,6 +6207,7 @@ channael->channel channe->channel channeles->channels channes->channels, chances, changes, +channge->change channl->channel channle->channel channles->channels @@ -6648,6 +6671,7 @@ clea->clean cleaer->clear, clearer, cleaner, cleaered->cleared cleaing->cleaning +clealy->clearly cleancacne->cleancache cleand->cleaned, cleans, clean, cleaness->cleanness @@ -6971,6 +6995,7 @@ colescing->coalescing colision->collision colission->collision collaberative->collaborative +collaboritave->collaborative collaction->collection collaobrative->collaborative collaps->collapse @@ -7048,6 +7073,7 @@ colourfull->colourful, colourfully, colourpsace->colourspace colourpsaces->colourspaces colsed->closed +colud->could, cloud, colum->column columm->column colummn->column @@ -7215,6 +7241,7 @@ commericial->commercial commericially->commercially commerorative->commemorative commeted->commented, competed, +commets->comments commig->commit, coming, comming->coming comminication->communication @@ -7394,6 +7421,7 @@ compabitility->compatibility compagnion->companion compagny->company compaibility->compatibility +compaigns->campaigns compain->complain compair->compare compaire->compare @@ -7550,6 +7578,7 @@ compicated->complicated compications->complications compied->compiled compilability->compatibility +compilaiton->compilation compilant->compliant compilaton->compilation compilatons->compilations @@ -8334,6 +8363,7 @@ conseeded->conceded conseeds->concedes consenquently->consequently consensis->consensus +consentious->conscientious consentrate->concentrate consentrated->concentrated consentrates->concentrates @@ -8781,6 +8811,7 @@ contraveining->contravening contravercial->controversial contraversy->controversy contrbution->contribution +contretely->concretely contribte->contribute contribted->contributed contribtes->contributes @@ -8855,6 +8886,12 @@ contstruction->construction contstructor->constructor contstructors->constructors contstructs->constructs +conttribute->contribute +conttributed->contributed +conttributes->contributes +conttributing->contributing +conttribution->contribution +conttributions->contributions contur->contour contzains->contains conuntry->country @@ -9098,6 +9135,8 @@ copyeight->copyright copyeighted->copyrighted copyeights->copyrights copyied->copied +copyirght->copyright +copyirghts->copyrights copyrigth->copyright copyrigthed->copyrighted copyrigths->copyrights @@ -9187,6 +9226,7 @@ correctlly->correctly correctnes->correctness correcton->correction correctons->corrections +correcttly->correctly correcttness->correctness correctures->correctors correcty->correctly @@ -9290,6 +9330,7 @@ corrolated->correlated corrolates->correlates corrolation->correlation corrolations->correlations +corrollary->corollary corrrect->correct corrrected->corrected corrrecting->correcting @@ -10557,6 +10598,7 @@ defininitions->definitions definintion->definition definit->definite definitian->definition +definitiely->definitely definitiion->definition definitiions->definitions definitio->definition @@ -10705,6 +10747,7 @@ deliberatly->deliberately deliberite->deliberate deliberitely->deliberately delibery->delivery +delibirate->deliberate delibrate->deliberate delibrately->deliberately deliever->deliver @@ -10776,6 +10819,7 @@ demoninator->denominator demoninators->denominators demonstates->demonstrates demonstrat->demonstrate +demonstratably->demonstrably demonstrats->demonstrates demorcracy->democracy demostrate->demonstrate @@ -11635,6 +11679,8 @@ dialgos->dialogs dialig->dialog dialigs->dialogs dialoge->dialog, dialogue, +dialouge->dialogue +dialouges->dialogues diamater->diameter diamaters->diameters diamon->diamond @@ -12252,6 +12298,7 @@ disguisting->disgusting disharge->discharge disign->design disignated->designated +disingenous->disingenuous disinguish->distinguish disiplined->disciplined disired->desired @@ -12304,6 +12351,7 @@ dispathing->dispatching dispay->display dispayed->displayed dispayes->displays +dispaying->displaying dispayport->displayport dispays->displays dispbibute->distribute @@ -12346,6 +12394,7 @@ disproportiate->disproportionate disproportionatly->disproportionately disputandem->disputandum disregrad->disregard +disrepectful->disrespectful disrete->discrete disretion->discretion disribution->distribution @@ -12740,6 +12789,7 @@ documentataion->documentation documentataions->documentations documentaton->documentation documentes->documents +documentiation->documentation documention->documentation documetation->documentation documetnation->documentation @@ -12905,6 +12955,7 @@ doucments->documents douible->double douibled->doubled doulbe->double +doumentation->documentation doumentc->document dout->doubt dowgrade->downgrade @@ -13278,6 +13329,7 @@ effeciency->efficiency effecient->efficient effeciently->efficiently effecitvely->effectively +effecive->effective effeck->effect effecked->effected effecks->effects @@ -13316,6 +13368,7 @@ egenralize->generalize egenralized->generalized egenralizes->generalizes egenrally->generally +egregrious->egregious ehance->enhance ehanced->enhanced ehancement->enhancement @@ -13456,10 +13509,12 @@ emables->enables emabling->enabling emailling->emailing emasc->emacs +embarasing->embarrassing embarass->embarrass embarassed->embarrassed embarasses->embarrasses embarassing->embarrassing +embarassingly->embarrassingly embarassment->embarrassment embargos->embargoes embarras->embarrass @@ -13901,6 +13956,7 @@ entrophy->entropy entrys->entries, entry, enttries->entries enttry->entry +entusiastic->enthusiastic enty->entry, entity, enulation->emulation enumarate->enumerate @@ -14008,6 +14064,7 @@ epecting->expecting epects->expects ephememeral->ephemeral ephememeris->ephemeris +ephemereal->ephemeral epidsodes->episodes epigramic->epigrammatic epilgoue->epilogue @@ -14403,6 +14460,8 @@ exagerate->exaggerate exagerated->exaggerated exagerates->exaggerates exagerating->exaggerating +exageration->exaggeration +exagerations->exaggerations exagerrate->exaggerate exagerrated->exaggerated exagerrates->exaggerates @@ -15068,6 +15127,7 @@ expecte->expected expectes->expects expection->exception, expectation, expections->exceptions, expectations, +expediated->expedited expeditonary->expeditionary expeect->expect expeected->expected @@ -16725,6 +16785,7 @@ foults->faults foundaries->foundries foundary->foundry Foundland->Newfoundland +fourh->fourth fourties->forties fourty->forty fouth->fourth @@ -16748,6 +16809,7 @@ fragmenetd->fragmented fragmeneted->fragmented fragmeneting->fragmenting fragmenets->fragments +fragmentization->fragmentation fragmnet->fragment frambuffer->framebuffer framebufer->framebuffer @@ -16819,6 +16881,8 @@ frist->first frition->friction fritional->frictional fritions->frictions +frivilous->frivolous +frivilously->frivolously frmat->format frmo->from froce->force @@ -17026,10 +17090,12 @@ furst->first fursther->further fursthermore->furthermore fursthest->furthest +furtehr->further furter->further furthemore->furthermore furthermor->furthermore furtherst->furthest +furthher->further furthremore->furthermore furthrest->furthest furthur->further @@ -17185,6 +17251,7 @@ genertion->generation genertor->generator genertors->generators genialia->genitalia +geniune->genuine genral->general genralisation->generalisation genralisations->generalisations @@ -17438,6 +17505,8 @@ grapics->graphics grat->great gratefull->grateful gratuitious->gratuitous +gratutious->gratuitous +gravitiation->gravitation grbber->grabber greate->greater, create, grate, great, greated->greater, grated, graded, @@ -17723,6 +17792,7 @@ hanle->handle hanled->handled hanles->handles hanling->handling +hannging->hanging hanshake->handshake hanshakes->handshakes hansome->handsome @@ -17866,6 +17936,7 @@ helpe->helper helpfull->helpful helpfuly->helpfully helpped->helped +helpying->helping hemipshere->hemisphere hemipsheres->hemispheres hemishpere->hemisphere @@ -17903,6 +17974,7 @@ hetrogenous->heterogenous, heterogeneous, heuristc->heuristic heuristcs->heuristics heursitics->heuristics +heusitic->heuristic hevy->heavy hexademical->hexadecimal hexdecimal->hexadecimal @@ -18121,6 +18193,7 @@ howeever->however howerver->however howeverm->however howewer->however +howover->However howver->however howvere->however hradware->hardware @@ -18311,6 +18384,7 @@ idicated->indicated idicates->indicates idicating->indicating idices->indices +idiosynchrasies->idiosyncrasies idiosyncracies->idiosyncrasies idiosyncracy->idiosyncrasy idividual->individual @@ -18714,6 +18788,7 @@ imporoves->improves imporoving->improving imporsts->imports importamt->important +importanly->importantly importat->important importd->imported importen->important, importance, @@ -18746,6 +18821,7 @@ impremented->implemented impres->impress impresive->impressive impressario->impresario +impreve->improve imprioned->imprisoned imprisonned->imprisoned improbe->improve @@ -19793,6 +19869,7 @@ insid->inside insidde->inside insiddes->insides insided->inside +insignifacnt->insignificant insignificat->insignificant insignificatly->insignificantly insigt->insight @@ -19857,6 +19934,7 @@ instatiate->instantiate instatiating->instantiating instatiation->instantiation instatiations->instantiations +instealled->installed insteance->instance insted->instead insteead->instead @@ -20373,6 +20451,7 @@ intiialise->initialise intiialize->initialize intilising->initialising intilizing->initializing +intimitading->intimidating intimite->intimate intinite->infinite intitial->initial @@ -20529,6 +20608,7 @@ invokve->invoke invokved->invoked invokves->invokes invokving->invoking +involed->involved involvment->involvement invovle->involve invovled->involved @@ -20865,6 +20945,7 @@ kno->know knowladge->knowledge knowlage->knowledge knowlageable->knowledgeable +knowledgable->knowledgeable knowlegde->knowledge knowlege->knowledge knowlegeabel->knowledgeable @@ -21321,6 +21402,7 @@ lintain->lintian linz->lines lippizaner->lipizzaner liquify->liquefy +liquour->liquor liscense->license, licence, lisence->license, licence, lisense->license, licence, @@ -22513,6 +22595,7 @@ misakes->mistakes misalignement->misalignment misalinged->misaligned misbehaive->misbehave +miscallenaous->miscellaneous miscallenous->miscellaneous misceancellous->miscellaneous miscelaneous->miscellaneous @@ -22647,6 +22730,7 @@ mmatching->matching mmbers->members mmnemonic->mnemonic mnay->many +mnemnonic->mnemonic moast->most, moat, mobify->modify mocrochip->microchip @@ -23131,6 +23215,7 @@ nagatively->negatively nagatives->negatives nagivation->navigation naieve->naive +naivity->naivety nam->name namaed->named namaes->names @@ -23239,6 +23324,7 @@ necessaery->necessary necessairly->necessarily necessar->necessary necessarilly->necessarily +necessarilyn->necessarily necessariy->necessary, necessarily, necessarly->necessary, necessarily, necessarry->necessary @@ -23994,6 +24080,7 @@ notmalize->normalize notmalized->normalized notmutch->notmuch notning->nothing +notod->noted notse->notes, note, nott->not nottaion->notation @@ -24158,6 +24245,7 @@ obsolate->obsolete obsolesence->obsolescence obsolite->obsolete obsolited->obsoleted +obsolote->obsolete obsolte->obsolete obsolted->obsoleted obssessed->obsessed @@ -24538,6 +24626,7 @@ opion->option opional->optional opionally->optionally opions->options +opitional->optional opitionally->optionally opiton->option opitons->options @@ -24743,6 +24832,9 @@ orgins->origins, organs, orginx->originx orginy->originy orhpan->orphan +orhtogonal->orthogonal +orhtogonality->orthogonality +orhtogonally->orthogonally oriant->orient oriantate->orientate oriantated->orientated @@ -25155,6 +25247,10 @@ packges->packages packgs->packages packhage->package packhages->packages +packkage->package +packkaged->packaged +packkages->packages +packkaging->packaging packtes->packets pactch->patch pactched->patched @@ -25422,6 +25518,7 @@ particulaly->particularly particularily->particularly particulary->particularly particuliar->particular +particuraly->particularly partifular->particular partiiton->partition partiitoned->partitioned @@ -25748,8 +25845,10 @@ perhasp->perhaps perheaps->perhaps perhpas->perhaps peridic->periodic +peridically->periodically perihperal->peripheral perihperals->peripherals +perilious->perilous perimetre->perimeter perimetres->perimeters periode->period @@ -25813,6 +25912,7 @@ permution->permutation permutions->permutations peroendicular->perpendicular perogative->prerogative +perogrative->prerogative peroid->period peroidic->periodic peroidical->periodical @@ -26285,6 +26385,7 @@ populare->popular populer->popular popullate->populate popullated->populated +populr->popular popuplar->popular popuplarity->popularity popuplate->populate @@ -26495,6 +26596,7 @@ potentiallly->potentially potentialy->potentially potentiel->potential potentiomenter->potentiometer +potientially->potentially potition->position potocol->protocol potrait->portrait @@ -27143,6 +27245,10 @@ proclomation->proclamation procoess->process procoessed->processed procoessing->processing +procrastrinate->procrastinate +procrastrinated->procrastinated +procrastrinates->procrastinates +procrastrinating->procrastinating proctect->protect proctected->protected proctecting->protecting @@ -27192,6 +27298,7 @@ profesionally->professionally profesionals->professionals profesor->professor professer->professor +professionaly->professionally proffesed->professed proffesion->profession proffesional->professional @@ -29156,6 +29263,9 @@ releive->relieve releived->relieved releiver->reliever releoad->reload +relesae->release +relesaed->released +relesaes->releases relese->release relesed->released releses->releases @@ -29536,6 +29646,7 @@ renforced->reinforced renforcement->reinforcement renforcements->reinforcements renforces->reinforces +rennaisance->renaissance rennovate->renovate rennovated->renovated rennovating->renovating @@ -29701,6 +29812,7 @@ repositiories->repositories repositiory->repository repositiroes->repositories reposititioning->repositioning +repositor->repository repositorry->repository repositotries->repositories repositotry->repository @@ -30115,6 +30227,7 @@ responsibe->responsive, responsible, responsibile->responsible responsibilites->responsibilities responsibilty->responsibility +responsibities->responsibilities responsiblities->responsibilities responsiblity->responsibility responsing->responding @@ -30339,6 +30452,7 @@ retriece->retrieve retrieces->retrieves retriev->retrieve retrieveds->retrieved +retrivable->retrievable retrival->retrieval, retrial, retrive->retrieve retrived->retrieved @@ -30504,6 +30618,9 @@ rference->reference rferences->references rfeturned->returned rgister->register +rhethoric->rhetoric +rhethorical->rhetorical +rhethorically->rhetorically rhymme->rhyme rhythem->rhythm rhythim->rhythm @@ -31392,6 +31509,7 @@ seporate->separate sepparation->separation sepparations->separations sepperate->separate +sepraate->separate seprarate->separate seprate->separate seprated->separated @@ -31688,6 +31806,7 @@ sholuld->should sholuldn't->shouldn't shoould->should shopkeeepers->shopkeepers +shopuld->should shorcut->shortcut shorcuts->shortcuts shorly->shortly @@ -32286,6 +32405,10 @@ sophisicated->sophisticated sophisitcated->sophisticated sophisticted->sophisticated sophmore->sophomore +sopund->sound +sopunded->sounded +sopunding->sounding +sopunds->sounds sorce->source, force, sorceror->sorcerer sord->sword, sore, sored, sawed, soared, @@ -34921,6 +35044,7 @@ thermisor->thermistor thermisors->thermistors thermostast->thermostat thermostasts->thermostats +therofer->therefore therough->through, thorough, therstat->thermostat therwise->otherwise @@ -34955,6 +35079,7 @@ thigns->things thigny->thingy thigsn->things thik->thick, think, +thiking->thinking thikn->think thikness->thickness thiknesses->thicknesses @@ -35131,6 +35256,7 @@ tigthening->tightening tigthens->tightens tigthly->tightly tihkn->think +tihnk->think tihs->this tiitle->title tillt->tilt @@ -35979,6 +36105,8 @@ typles->tuples typoe->typo, type, types, typoes->typos, types, typographc->typographic +typopgrahic->typographic +typopgrahical->typographical typpe->type typped->typed typpes->types @@ -35994,6 +36122,8 @@ ubelievebly->unbelievably ubernetes->Kubernetes ubiquitious->ubiquitous ubiquituously->ubiquitously +ubiquotous->ubiquitous +ubiquoutous->ubiquitous ubitquitous->ubiquitous ublisher->publisher ubunut->Ubuntu @@ -36272,6 +36402,7 @@ understadn->understand understadnable->understandable understadning->understanding understadns->understands +understandig->understanding understoon->understood understoud->understood undertable->understandable, understand, @@ -36317,6 +36448,7 @@ undupplicated->unduplicated uneccesary->unnecessary uneccessarily->unnecessarily uneccessary->unnecessary +unecesary->unnecessary unecessarily->unnecessarily unecessary->unnecessary uneeded->unneeded, unheeded, needed, @@ -36627,6 +36759,7 @@ unnused->unused unobstrusive->unobtrusive unocde->Unicode unoffical->unofficial +unoficcial->unofficial unoin->union unompress->uncompress unoperational->nonoperational @@ -36969,6 +37102,7 @@ updgrade->upgrade updgraded->upgraded updgrades->upgrades updgrading->upgrading +updload->upload updrage->upgrade updraged->upgraded updrages->upgrades @@ -37121,6 +37255,7 @@ usefulfor->useful for usefull->useful usefullness->usefulness usefult->useful +usefulu->useful usefuly->usefully usefutl->useful useg->user, usage, @@ -37676,6 +37811,7 @@ visualy->visually visualyse->visualise, visualize, visualzation->visualization vitories->victories +vitrole->vitriol vitrual->virtual vitrually->virtually vitual->virtual @@ -38244,12 +38380,14 @@ worarounds->workarounds worbench->workbench worbenches->workbenches worchester->Worcester +wordl->world wordlwide->worldwide wordpres->wordpress worfklow->workflow worfklows->workflows worflow->workflow worflows->workflows +worht->worth workaorund->workaround workaorunds->workarounds workaound->workaround @@ -38257,6 +38395,8 @@ workaounds->workarounds workaraound->workaround workaraounds->workarounds workarbound->workaround +workaronud->workaround +workaronuds->workarounds workaroud->workaround workaroudn->workaround workaroudns->workarounds From d306fd29bea0922d06a38152e211e3ce901e8e86 Mon Sep 17 00:00:00 2001 From: Stefan Kangas Date: Mon, 26 Dec 2022 10:17:22 +0100 Subject: [PATCH 135/302] Add variations --- codespell_lib/data/dictionary.txt | 46 +++++++++++++++++++++++++++++-- 1 file changed, 44 insertions(+), 2 deletions(-) diff --git a/codespell_lib/data/dictionary.txt b/codespell_lib/data/dictionary.txt index d5ae74b800..3466cc5f5c 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -583,6 +583,7 @@ acessible->accessible acessing->accessing acessor->accessor acessors->accessors, accessor, +acheevable->achievable acheeve->achieve acheeved->achieved acheevement->achievement @@ -1233,7 +1234,9 @@ agressiveness->aggressiveness agressivity->aggressivity agressor->aggressor agresssive->aggressive +agresssively->aggressively agrgressive->aggressive +agrgressively->aggressively agrgument->argument agrguments->arguments agricultue->agriculture @@ -1822,8 +1825,10 @@ alteratively->alternatively alteratives->alternatives alterior->ulterior alternaive->alternative +alternaively->alternatively alternaives->alternatives alternarive->alternative +alternarively->alternatively alternarives->alternatives alternatie->alternative, alternate, alternatiely->alternatively, alternately, @@ -1835,8 +1840,10 @@ alternativly->alternatively alternatve->alternative alternavtely->alternatively alternavtive->alternative +alternavtively->alternatively alternavtives->alternatives alternetive->alternative +alternetively->alternatively alternetives->alternatives alternitive->alternative alternitively->alternatively @@ -1844,6 +1851,8 @@ alternitiveness->alternativeness alternitives->alternatives alternitivly->alternatively altetnative->alternative +altetnatively->alternatively +altetnatives->alternatives altho->although althogh->although althorithm->algorithm @@ -2247,6 +2256,7 @@ annoyences->annoyances annoymous->anonymous annoyn->annoy, annoying, annoyning->annoying +annoyningly->annoyingly annoyying->annoying annualy->annually annuled->annulled @@ -2965,6 +2975,7 @@ archiectures->architectures archieve->achieve, archive, archimedian->archimedean archine->archive +archines->archives architct->architect architcts->architects architcture->architecture @@ -4067,7 +4078,9 @@ authobiographic->autobiographic authobiography->autobiography authoer->author authoratative->authoritative +authoratatively->authoritatively authoratitative->authoritative +authoratitatively->authoritatively authorative->authoritative authorded->authored authorites->authorities @@ -4827,6 +4840,7 @@ betwween->between beucase->because beuracracy->bureaucracy beuraucratic->bureaucratic +beuraucratically->bureaucratically beutification->beautification beutiful->beautiful beutifully->beautifully @@ -5752,6 +5766,8 @@ cantacted->contacted cantacting->contacting cantacts->contacts cantain->contain +cantained->contained +cantaining->containing cantains->contains canvase->canvas caost->coast @@ -6023,6 +6039,7 @@ cemetaries->cemeteries cemetary->cemetery cenario->scenario cenarios->scenarios +cencrete->concrete cencretely->concretely cencter->center cencus->census @@ -6042,6 +6059,7 @@ centruies->centuries centruy->century centuties->centuries centuty->century +cenvention->convention cenventions->conventions cerain->certain cerainly->certainly @@ -6081,6 +6099,7 @@ certficiations->certifications certfied->certified certfy->certify certi->certificate, certify, +certiain->certain certiainly->certainly certian->certain certianly->certainly @@ -6208,6 +6227,9 @@ channe->channel channeles->channels channes->channels, chances, changes, channge->change +channged->changed +channges->changes +channging->changing channl->channel channle->channel channles->channels @@ -6671,7 +6693,7 @@ clea->clean cleaer->clear, clearer, cleaner, cleaered->cleared cleaing->cleaning -clealy->clearly +clealy->clearly, cleanly, cleancacne->cleancache cleand->cleaned, cleans, clean, cleaness->cleanness @@ -6995,7 +7017,9 @@ colescing->coalescing colision->collision colission->collision collaberative->collaborative +collaberatively->collaboratively collaboritave->collaborative +collaboritavely->collaboratively collaction->collection collaobrative->collaborative collaps->collapse @@ -7241,7 +7265,7 @@ commericial->commercial commericially->commercially commerorative->commemorative commeted->commented, competed, -commets->comments +commets->comments, comets, commig->commit, coming, comming->coming comminication->communication @@ -7579,6 +7603,7 @@ compications->complications compied->compiled compilability->compatibility compilaiton->compilation +compilaitons->compilations compilant->compliant compilaton->compilation compilatons->compilations @@ -8364,6 +8389,7 @@ conseeds->concedes consenquently->consequently consensis->consensus consentious->conscientious +consentiously->conscientiously consentrate->concentrate consentrated->concentrated consentrates->concentrates @@ -8811,6 +8837,7 @@ contraveining->contravening contravercial->controversial contraversy->controversy contrbution->contribution +contrete->concrete contretely->concretely contribte->contribute contribted->contributed @@ -9136,6 +9163,7 @@ copyeighted->copyrighted copyeights->copyrights copyied->copied copyirght->copyright +copyirghted->copyrighted copyirghts->copyrights copyrigth->copyright copyrigthed->copyrighted @@ -9226,6 +9254,7 @@ correctlly->correctly correctnes->correctness correcton->correction correctons->corrections +correctt->correct correcttly->correctly correcttness->correctness correctures->correctors @@ -10748,6 +10777,7 @@ deliberite->deliberate deliberitely->deliberately delibery->delivery delibirate->deliberate +delibirately->deliberately delibrate->deliberate delibrately->deliberately deliever->deliver @@ -10819,6 +10849,7 @@ demoninator->denominator demoninators->denominators demonstates->demonstrates demonstrat->demonstrate +demonstratable->demonstrable demonstratably->demonstrably demonstrats->demonstrates demorcracy->democracy @@ -12299,6 +12330,7 @@ disharge->discharge disign->design disignated->designated disingenous->disingenuous +disingenously->disingenuously disinguish->distinguish disiplined->disciplined disired->desired @@ -12395,6 +12427,7 @@ disproportionatly->disproportionately disputandem->disputandum disregrad->disregard disrepectful->disrespectful +disrepectfully->disrespectfully disrete->discrete disretion->discretion disribution->distribution @@ -13330,6 +13363,7 @@ effecient->efficient effeciently->efficiently effecitvely->effectively effecive->effective +effecively->effectively effeck->effect effecked->effected effecks->effects @@ -13509,7 +13543,11 @@ emables->enables emabling->enabling emailling->emailing emasc->emacs +embaras->embarrass +embarased->embarrassed +embarases->embarrasses embarasing->embarrassing +embarasingly->embarrassingly embarass->embarrass embarassed->embarrassed embarasses->embarrasses @@ -13957,6 +13995,7 @@ entrys->entries, entry, enttries->entries enttry->entry entusiastic->enthusiastic +entusiastically->enthusiastically enty->entry, entity, enulation->emulation enumarate->enumerate @@ -14065,6 +14104,7 @@ epects->expects ephememeral->ephemeral ephememeris->ephemeris ephemereal->ephemeral +ephemereally->ephemerally epidsodes->episodes epigramic->epigrammatic epilgoue->epilogue @@ -17506,6 +17546,7 @@ grat->great gratefull->grateful gratuitious->gratuitous gratutious->gratuitous +gratutiously->gratuitously gravitiation->gravitation grbber->grabber greate->greater, create, grate, great, @@ -25845,6 +25886,7 @@ perhasp->perhaps perheaps->perhaps perhpas->perhaps peridic->periodic +peridical->periodical peridically->periodically perihperal->peripheral perihperals->peripherals From bfbf2aef658489d14029db9481d009eecad40630 Mon Sep 17 00:00:00 2001 From: bl-ue Date: Mon, 14 Jun 2021 08:58:29 -0400 Subject: [PATCH 136/302] Typos from marvin.cs.uidaho.edu/mispell.html (rework of #1374): B Closes #1951 --- codespell_lib/data/dictionary.txt | 102 ++++++++++++++++++++++++++++++ 1 file changed, 102 insertions(+) diff --git a/codespell_lib/data/dictionary.txt b/codespell_lib/data/dictionary.txt index 3466cc5f5c..daf4503411 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -4450,7 +4450,11 @@ bable->babel, table, bible, bacause->because baceause->because bacground->background +bachler->bachelor +bachlers->bachelors bacic->basic +backaloriette->baccalaureate +backaloriettes->baccalaureates backards->backwards backbround->background backbrounds->backgrounds @@ -4512,6 +4516,7 @@ bactracking->backtracking bacup->backup bacward->backward bacwards->backwards +badmitten->badminton baed->based bage->bag bahaving->behaving @@ -4532,9 +4537,13 @@ bakups->backups bakward->backward bakwards->backwards balacing->balancing +balaster->baluster +balasters->balusters balck->black, balk, balence->balance ballance->balance +balona->bologna +balony->baloney, bologna, baloon->balloon baloons->balloons balse->false @@ -4548,11 +4557,19 @@ bandwidht->bandwidth bandwidthm->bandwidth bandwitdh->bandwidth bandwith->bandwidth +bangquit->banquet +bangquits->banquet bankrupcy->bankruptcy banlance->balance +bannet->bayonet +bannets->bayonets banruptcy->bankruptcy baout->about, bout, +baray->beret +barays->berets barbedos->barbados +bargin->bargain +bargins->bargains bariier->barrier barnch->branch barnched->branched @@ -4560,6 +4577,7 @@ barncher->brancher barnchers->branchers barnches->branches barnching->branching +baroke->baroque barriors->barriers barrriers->barriers barycentic->barycentric @@ -4585,11 +4603,17 @@ bastractly->abstractly bastractness->abstractness bastractor->abstractor bastracts->abstracts +batchleur->bachelor +batchleurs->bachelors bateries->batteries batery->battery battaries->batteries battary->battery battey->battery +bayge->beige +bayliwick->bailiwick +bazare->bizarre, bazaar, +bazerk->berserk bbefore->before bboolean->boolean bbooleans->booleans @@ -4603,8 +4627,14 @@ beacuse->because beaon->beacon bearword->bareword beastiality->bestiality +beastiaries->bestiaries +beastiary->bestiary beatiful->beautiful +beauquet->bouquet +beauquets->bouquets beauracracy->bureaucracy +beauracratic->bureaucratic +beauracratical->bureaucratic beaurocracy->bureaucracy beaurocratic->bureaucratic beause->because @@ -4650,6 +4680,7 @@ bector->vector bectors->vectors becuase->because becuse->because +becuz->because becxause->because beding->bedding, begging, bedore->before @@ -4715,7 +4746,9 @@ behaviuor->behaviour behavoir->behavior behavoirs->behaviors behavor->behavior, behaviour, +behavoral->behavioral behavour->behaviour +behavoural->behavioural behavriour->behaviour behavriours->behaviours behinde->behind @@ -4729,6 +4762,11 @@ beind->behind, being, beinning->beginning bejond->beyond beleagured->beleaguered +beleave->believe +beleaved->believed +beleaver->believer +beleaves->believes +beleaving->believing beleif->belief beleifable->believable beleife->belief, believe, @@ -4768,6 +4806,10 @@ beloning->belonging belove->below, beloved, belown->belong belwo->below +belye->belie +belyed->belied +belyes->belies +belys->belies bemusemnt->bemusement benchamarked->benchmarked benchamarking->benchmarking @@ -4797,6 +4839,11 @@ beneits->benefits benerate->generate, venerate, benetifs->benefits beng->being +benge->binge +benged->binged +bengeing->bingeing +benges->binges +benging->binging benhind->behind benificial->beneficial benifit->benefit @@ -4805,6 +4852,12 @@ benifited->benefited benifitial->beneficial benifits->benefits benig->being +benine->benign +benj->binge +benjed->binged +benjer->binger +benjes->binges +benjing->bingeing beond->beyond berforming->performing bergamont->bergamot @@ -4874,6 +4927,7 @@ bilangual->bilingual bilateraly->bilaterally billingualism->bilingualism billon->billion +bilt->built bimask->bitmask bimillenia->bimillennia bimillenial->bimillennial @@ -4896,6 +4950,8 @@ birghtest->brightest birghtness->brightness biridectionality->bidirectionality bisct->bisect +biscut->biscuit +biscuts->biscuits bisines->business bisiness->business bisnes->business @@ -4914,8 +4970,15 @@ bitween->between bitwiedh->bitwidth bitwise-orring->bitwise-oring biult->built, build, +bivouaced->bivouacked +bivouacing->bivouacking +bivwack->bivouac +biyou->bayou +biyous->bayous bizare->bizarre bizarely->bizarrely +bizness->business +biznesses->businesses bizzare->bizarre bject->object bjects->objects @@ -4978,6 +5041,8 @@ blonging->belonging blongs->belongs bloock->block bloocks->blocks +blosum->blossom +blosums->blossoms bloted->bloated bluestooth->bluetooth bluetooh->bluetooth @@ -5000,6 +5065,8 @@ boeleans->booleans boffer->buffer bofore->before bofy->body +boganveelia->bougainvillaea +boganveelias->bougainvillaeas boggus->bogus bogos->bogus bointer->pointer @@ -5011,6 +5078,13 @@ bombarment->bombardment bondary->boundary Bonnano->Bonanno bood->boot +booda->Buddha +booe->buoy +booee->buoy +booees->buoys +booes->buoys +boofay->buffet +boofays->buffets bookeeping->bookkeeping bookkeeing->bookkeeping bookkeeiping->bookkeeping @@ -5034,6 +5108,7 @@ boomarks->bookmarks boook->book booolean->boolean boooleans->booleans +boorjwazee->bourgeoisie booshelf->bookshelf booshelves->bookshelves boostrap->bootstrap @@ -5172,6 +5247,8 @@ bouunds->bounds bouy->buoy bouyancy->buoyancy bouyant->buoyant +bowkay->bouquet +bowkays->bouquets boxe->boxes, box, boxer, boxs->boxes, box, boyant->buoyant @@ -5272,12 +5349,15 @@ brockened->broken brocolee->broccoli brocoli->broccoli brodcast->broadcast +broge->brogue broked->broken brokem->broken brokend->broken brokened->broken brokeness->brokenness bronken->broken +brooz->bruise +broozes->bruises brosable->browsable brose->browse, rose, brosed->browsed, rosed, @@ -5300,6 +5380,9 @@ browswed->browsed browswer->browser browswers->browsers browswing->browsing +bruse->bruise +bruses->bruises +brusk->brusque brutaly->brutally brwosable->browsable brwose->browse @@ -5311,6 +5394,7 @@ btye->byte btyes->bytes buad->baud bubbless->bubbles +buda->Buddha Buddah->Buddha Buddist->Buddhist bufefr->buffer @@ -5333,6 +5417,7 @@ buggest->biggest bugous->bogus buguous->bogus bugus->bogus +bui->buoy buid->build buider->builder buiders->builders @@ -5363,6 +5448,7 @@ buinseses->businesses buinsess->business buinsesses->businesses buipd->build +buis->buoy buisness->business buisnessman->businessman buissiness->business @@ -5385,6 +5471,9 @@ bulit->built bulitin->built-in bulle->bullet bulletted->bulleted +bullevard->boulevard +bullevards->boulevards +bullyan->bouillon bulnerabilities->vulnerabilities bulnerability->vulnerability bulnerable->vulnerable @@ -5408,17 +5497,27 @@ bundeled->bundled bundels->bundles bunding->binding, bundling, bounding, bunds->binds, bounds, +bunji->bungee buoancy->buoyancy +burbon->bourbon bureauracy->bureaucracy buring->burying, burning, burin, during, +burjun->burgeon +burjuns->burgeons +buro->bureau burocratic->bureaucratic +buros->bureaus burried->buried burtst->burst +burzwah->bourgeois busines->business busineses->business, businesses, busness->business bussiness->business bussy->busy +butiful->beautiful +butifully->beautifully +butifuly->beautifully buton->button butons->buttons butterly->butterfly @@ -5436,6 +5535,9 @@ buuilds->builds buzilla->bugzilla bve->be bwtween->between +byast->biased +bycicle->bicycle +bycicles->bicycles bypas->bypass bypased->bypassed bypasing->bypassing From 97931dc49697c9dbf710550e1153d7886428b39f Mon Sep 17 00:00:00 2001 From: Stefan Kangas Date: Mon, 26 Dec 2022 10:55:27 +0100 Subject: [PATCH 137/302] Address comments from code review for #1951 --- codespell_lib/data/dictionary.txt | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/codespell_lib/data/dictionary.txt b/codespell_lib/data/dictionary.txt index daf4503411..6c3a5877b7 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -4558,7 +4558,7 @@ bandwidthm->bandwidth bandwitdh->bandwidth bandwith->bandwidth bangquit->banquet -bangquits->banquet +bangquits->banquets bankrupcy->bankruptcy banlance->balance bannet->bayonet @@ -5082,7 +5082,7 @@ booda->Buddha booe->buoy booee->buoy booees->buoys -booes->buoys +booes->boos, buoys, booze, boofay->buffet boofays->buffets bookeeping->bookkeeping @@ -5448,7 +5448,7 @@ buinseses->businesses buinsess->business buinsesses->businesses buipd->build -buis->buoy +buis->buoy, buoys, buisness->business buisnessman->businessman buissiness->business @@ -5504,9 +5504,9 @@ bureauracy->bureaucracy buring->burying, burning, burin, during, burjun->burgeon burjuns->burgeons -buro->bureau +buro->bureau, burro, burocratic->bureaucratic -buros->bureaus +buros->bureaus, burros, burried->buried burtst->burst burzwah->bourgeois From 8040f4e888c9613113dfaf7b57c01d46336cab5c Mon Sep 17 00:00:00 2001 From: Stefan Kangas Date: Mon, 26 Dec 2022 11:01:18 +0100 Subject: [PATCH 138/302] Fix typo for "bougainvillea" --- 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 6c3a5877b7..b59bdcc17d 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -5065,8 +5065,8 @@ boeleans->booleans boffer->buffer bofore->before bofy->body -boganveelia->bougainvillaea -boganveelias->bougainvillaeas +boganveelia->bougainvillea +boganveelias->bougainvilleas boggus->bogus bogos->bogus bointer->pointer From 796326a7a935746c97ba033f1dc9353dff87b877 Mon Sep 17 00:00:00 2001 From: Stefan Kangas Date: Mon, 26 Dec 2022 11:04:19 +0100 Subject: [PATCH 139/302] Add some variations --- codespell_lib/data/dictionary.txt | 13 ++++++++++--- 1 file changed, 10 insertions(+), 3 deletions(-) diff --git a/codespell_lib/data/dictionary.txt b/codespell_lib/data/dictionary.txt index b59bdcc17d..64c2e3944c 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -4635,8 +4635,11 @@ beauquets->bouquets beauracracy->bureaucracy beauracratic->bureaucratic beauracratical->bureaucratic +beauracratically->bureaucratically beaurocracy->bureaucracy beaurocratic->bureaucratic +beaurocratical->bureaucratic +beaurocratically->bureaucratically beause->because beauti->beauty beautifull->beautiful, beautifully, @@ -4746,7 +4749,7 @@ behaviuor->behaviour behavoir->behavior behavoirs->behaviors behavor->behavior, behaviour, -behavoral->behavioral +behavoral->behavioral, behavioural, behavour->behaviour behavoural->behavioural behavriour->behaviour @@ -5350,6 +5353,7 @@ brocolee->broccoli brocoli->broccoli brodcast->broadcast broge->brogue +broges->brogues broked->broken brokem->broken brokend->broken @@ -5417,7 +5421,7 @@ buggest->biggest bugous->bogus buguous->bogus bugus->bogus -bui->buoy +bui->buoy, buy, buid->build buider->builder buiders->builders @@ -5448,7 +5452,7 @@ buinseses->businesses buinsess->business buinsesses->businesses buipd->build -buis->buoy, buoys, +buis->buoy, buoys, buys, buisness->business buisnessman->businessman buissiness->business @@ -5537,7 +5541,10 @@ bve->be bwtween->between byast->biased bycicle->bicycle +bycicled->bicycled bycicles->bicycles +bycicling->bicycling +byciclist->bicyclist bypas->bypass bypased->bypassed bypasing->bypassing From 36c8c27616c795d3f670edaa886e537ab76bdc46 Mon Sep 17 00:00:00 2001 From: Stefan Kangas Date: Mon, 26 Dec 2022 12:36:00 +0100 Subject: [PATCH 140/302] Add some more misspellings found in Emacs --- codespell_lib/data/dictionary.txt | 21 +++++++++++++++++++++ codespell_lib/data/dictionary_code.txt | 2 ++ codespell_lib/data/dictionary_names.txt | 1 + codespell_lib/data/dictionary_rare.txt | 1 + 4 files changed, 25 insertions(+) diff --git a/codespell_lib/data/dictionary.txt b/codespell_lib/data/dictionary.txt index 64c2e3944c..cea2e2237e 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -1985,6 +1985,7 @@ ammused->amused amny->many amongs->among amonst->amongst +amont->among, amount, amonut->amount amound->amount amounds->amounts @@ -5910,6 +5911,7 @@ capela->capella caperbility->capability Capetown->Cape Town capibilities->capabilities +capibility->capability capible->capable capitolize->capitalize cappable->capable @@ -6440,6 +6442,7 @@ charaters->characters charator->character charators->characters charcater->character +charcaters->characters charcter->character charcteristic->characteristic charcteristics->characteristics @@ -9579,6 +9582,7 @@ could'nt->couldn't could't->couldn't couldent->couldn't coulden`t->couldn't +couldn->could, couldn't, couldn;t->couldn't couldnt'->couldn't couldnt->couldn't @@ -10352,6 +10356,7 @@ debugggee->debuggee debuggger->debugger debuggging->debugging debugggs->debugs +debuggin->debugging debugginf->debugging debuggs->debugs debuging->debugging @@ -10551,6 +10556,7 @@ decroation->decoration decrpt->decrypt decrpted->decrypted decrption->decryption +decryped->decrypted decrytion->decryption decscription->description decsion->decision @@ -13870,6 +13876,7 @@ encrption->encryption encrptions->encryptions encrpts->encrypts encrupted->encrypted +encryped->encrypted encrypiton->encryption encrypte->encrypted, encrypt, encryptiion->encryption @@ -16552,6 +16559,8 @@ fluroescent->fluorescent flushs->flushes flusing->flushing flyes->flies, flyers, +fnction->function +fnctions->functions fo->of, for, to, do, go, focu->focus focued->focused @@ -17681,6 +17690,7 @@ grop->group, drop, gropu->group gropuing->grouping gropus->groups, gropes, +groth->growth groubpy->groupby groupd->grouped groupe->grouped, group, @@ -21163,6 +21173,7 @@ lanaguges->languages lanagugs->languages lanauge->language langage->language +langages->languages langauage->language langauge->language langauges->languages @@ -21442,6 +21453,7 @@ licemse->license licemses->licenses licenceing->licencing licencse->license, licenses, +licens->license licese->license licesne->license licesnes->licenses @@ -25723,7 +25735,10 @@ pass-trough->pass-through, pass through, passthrough, passerbys->passersby passin->passing passiv->passive +passord->password +passords->passwords passowrd->password +passowrds->passwords passs->pass passsed->passed passsing->passing @@ -28134,6 +28149,7 @@ queus->queues quew->queue quickier->quicker quicklyu->quickly +quicky->quickly, quickie, quickyl->quickly quicly->quickly quiessent->quiescent @@ -32156,6 +32172,9 @@ simliar->similar simliarly->similarly simlicity->simplicity simlified->simplified +simlifies->simplifies +simlify->simplify +simlifying->simplifying simly->simply, simile, smiley, simmetric->symmetric simmetrical->symmetrical @@ -36497,6 +36516,8 @@ unconditionaly->unconditionally unconditionnal->unconditional unconditionnally->unconditionally unconditionnaly->unconditionally +unconditonal->unconditional +unconditonally->unconditionally uncondtional->unconditional uncondtionally->unconditionally unconfiged->unconfigured diff --git a/codespell_lib/data/dictionary_code.txt b/codespell_lib/data/dictionary_code.txt index a232ac02aa..36fa7c3384 100644 --- a/codespell_lib/data/dictionary_code.txt +++ b/codespell_lib/data/dictionary_code.txt @@ -33,6 +33,7 @@ ith->with jupyter->Jupiter keyserver->key server lateset->latest +lite->light movei->movie MSDOS->MS-DOS musl->must @@ -46,6 +47,7 @@ packat->packet process'->process's protecten->protection, protected, pysic->physic +recomment->recommend reday->ready referer->referrer rela->real diff --git a/codespell_lib/data/dictionary_names.txt b/codespell_lib/data/dictionary_names.txt index f03bf668f8..0b47de2401 100644 --- a/codespell_lib/data/dictionary_names.txt +++ b/codespell_lib/data/dictionary_names.txt @@ -6,6 +6,7 @@ bae->base bridget->bridged, bridge, chang->change fike->file +forman->foreman liszt->list que->queue sargent->sergeant, argent, diff --git a/codespell_lib/data/dictionary_rare.txt b/codespell_lib/data/dictionary_rare.txt index 6375607147..af21ba44aa 100644 --- a/codespell_lib/data/dictionary_rare.txt +++ b/codespell_lib/data/dictionary_rare.txt @@ -176,6 +176,7 @@ singe->single singed->signed, singled, sang, sung, slippy->slippery soring->sorting +spacial->special, spatial, specif->specify, specific, statics->statistics steams->streams From b11cd233331056e7a30b42e065b2d3500627a692 Mon Sep 17 00:00:00 2001 From: Stefan Kangas Date: Tue, 27 Dec 2022 13:47:10 +0100 Subject: [PATCH 141/302] Add typos found in GnuTLS --- codespell_lib/data/dictionary.txt | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) diff --git a/codespell_lib/data/dictionary.txt b/codespell_lib/data/dictionary.txt index cea2e2237e..7314483453 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -2304,6 +2304,7 @@ anoy->annoy anoyed->annoyed anoying->annoying anoymous->anonymous +anoymously->anonymously anoys->annoys anpatheater->amphitheater anpatheaters->amphitheaters @@ -7700,6 +7701,7 @@ compenstates->compensates competance->competence competant->competent competative->competitive +competely->completely competetive->competitive competion->competition, completion, competions->completions @@ -8680,6 +8682,7 @@ constrcution->construction constrcutor->constructor constrcutors->constructors constrcuts->constructs +constriant->constraint constriants->constraints constrint->constraint constrints->constraints @@ -18142,8 +18145,11 @@ hexgaon->hexagon hexgaonal->hexagonal hexgaons->hexagons hexidecimal->hexadecimal +hexidecimals->hexadecimals hge->he +hhttp->http hiarchical->hierarchical +hiarchically->hierarchically hiarchy->hierarchy hiddden->hidden hidded->hidden @@ -26488,6 +26494,10 @@ polotical->political polotics->politics poltical->political poltry->poultry +polulate->populate +polulated->populated +polulates->populates +polulating->populating polute->pollute poluted->polluted polutes->pollutes @@ -27231,6 +27241,8 @@ printes->printers printting->printing prioirties->priorities prioirty->priority +prioritities->priorities +prioritity->priority prioritiy->priority priorization->prioritization priorizations->prioritizations @@ -30892,6 +30904,7 @@ rountriped->roundtripped, round-tripped, round tripped, rountriping->roundtripping, round-tripping, round tripping, rountripped->roundtripped, round-tripped, round tripped, rountripping->roundtripping, round-tripping, round tripping, +rountrips->roundtrips, round-trips, round trips, routet->routed, route, router, routiens->routines routin->routine, routing, @@ -37753,10 +37766,16 @@ verfiying->verifying verfy->verify verfying->verifying veriable->variable, veritable, +veriables->variables verical->vertical +verically->vertically +verication->verification +verications->verifications verifcation->verification +verifcations->verifications verifi->verify, verified, verifiaction->verification +verifiactions->verifications verificaion->verification verificaions->verifications verificiation->verification From 7473e450ba79bad74c2b06c63997e8635dc82f03 Mon Sep 17 00:00:00 2001 From: bl-ue Date: Mon, 14 Jun 2021 09:00:16 -0400 Subject: [PATCH 142/302] Typos from marvin.cs.uidaho.edu/mispell.html (rework of #1374): C Closes #1952 --- codespell_lib/data/dictionary.txt | 386 ++++++++++++++++++++++++++++++ 1 file changed, 386 insertions(+) diff --git a/codespell_lib/data/dictionary.txt b/codespell_lib/data/dictionary.txt index 7314483453..abd657145e 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -5561,6 +5561,8 @@ bytetream->bytestream bytetreams->bytestreams cabint->cabinet cabints->cabinets +cabnet->cabinet +cabnets->cabinets cacahe->cache cacahes->caches cace->cache @@ -5570,6 +5572,7 @@ cacheed->cached cacheing->caching cachline->cacheline cachse->cache, caches, +cachup->catchup cacl->calc caclate->calculate cacluate->calculate @@ -5590,6 +5593,8 @@ caclulates->calculates caclulating->calculating caclulation->calculation caclulations->calculations +cacoon->cocoon +cacoons->cocoons caculate->calculate caculated->calculated caculater->calculator @@ -5602,6 +5607,15 @@ cacuses->caucuses cadidate->candidate caefully->carefully Caesarian->Caesarean +caese->cease +caesed->ceased +caeseing->ceasing +caeses->ceases +caf->calf +cafay->cafe +cafays->cafes +cafine->caffeine +cafs->calves cahacter->character cahacters->characters cahange->change @@ -5726,12 +5740,15 @@ calcutate->calculate calcutated->calculated calcutates->calculates calcutating->calculating +caldesack->cul-de-sac caleed->called caleee->callee calees->callees calenday->calendar caler->caller calescing->coalescing +calfes->calves +calfs->calves caliased->aliased calibraiton->calibration calibraitons->calibrations @@ -5763,8 +5780,11 @@ callibrating->calibrating callibration->calibration callibrations->calibrations callibri->calibri +calliflower->cauliflower +calliflowers->cauliflowers callig->calling callint->calling +callis->callus callled->called calllee->callee calllers->callers @@ -5804,6 +5824,7 @@ calulation->calculation calulations->calculations caluse->clause, callus, callous, Cambrige->Cambridge +camelion->chameleon camoflage->camouflage camoflague->camouflage campagin->campaign @@ -5812,6 +5833,16 @@ campaing->campaign campains->campaigns camparing->comparing can;t->can't +canabel->cannibal +canabels->cannibals +canabelyse->cannibalise +canabelysed->cannibalised +canabelyses->cannibalises +canabelysing->cannibalising +canabelyze->cannibalize +canabelyzed->cannibalized +canabelyzes->cannibalizes +canabelyzing->cannibalizing canadan->canadian canbe->can be cancelaltion->cancellation @@ -5837,6 +5868,8 @@ candinate->candidate candinates->candidates canditate->candidate canditates->candidates +canew->canoe +canews->canoes cange->change canged->changed canges->changes @@ -5845,6 +5878,16 @@ canidate->candidate canidates->candidates cann't->can't cann->can +cannabile->cannibal +cannabiles->cannibals +cannabilyse->cannibalise +cannabilysed->cannibalised +cannabilyses->cannibalises +cannabilysing->cannibalising +cannabilyze->cannibalize +cannabilyzed->cannibalized +cannabilyzes->cannibalizes +cannabilyzing->cannibalizing cannister->canister cannisters->canisters cannnot->cannot @@ -5880,7 +5923,10 @@ cantain->contain cantained->contained cantaining->containing cantains->contains +cantalope->cantaloupe +cantalopes->cantaloupes canvase->canvas +canye->canaille caost->coast capabable->capable capabicity->capability @@ -5917,7 +5963,13 @@ capible->capable capitolize->capitalize cappable->capable captable->capable +capter->captor +capters->captors captial->capital +captian->captain +captians->captains +captin->captain +captins->captains captrure->capture captued->captured capturd->captured @@ -5925,6 +5977,8 @@ caputre->capture caputred->captured caputres->captures caputure->capture +caraboo->caribou +caraboos->caribous carachter->character caracter->character caractere->character @@ -5932,8 +5986,11 @@ caracteristic->characteristic caracteristics->characteristics caracterized->characterized caracters->characters +caraff->carafe carbus->cardbus carcas->carcass, Caracas, +carcus->carcass +carcuses->carcasses carefull->careful, carefully, carefuly->carefully careing->caring @@ -5941,17 +5998,39 @@ carfull->careful cariage->carriage caridge->carriage cariier->carrier +carimonial->ceremonial +carimonies->ceremonies +carimony->ceremony +carinomial->ceremonial +carinomies->ceremonies +carinomy->ceremony carismatic->charismatic Carmalite->Carmelite +carmonial->ceremonial +carmonies->ceremonies +carmony->ceremony Carnagie->Carnegie Carnagie-Mellon->Carnegie-Mellon +carnavor->carnivore +carnavores->carnivores +carnavors->carnivores carnege->carnage, Carnegie, carnige->carnage, Carnegie, Carnigie->Carnegie Carnigie-Mellon->Carnegie-Mellon carniverous->carnivorous +carnomial->ceremonial +carnomies->ceremonies +carnomy->ceremony caronavirus->coronavirus caronaviruses->coronaviruses +carosel->carousel +caroseles->carousels +carosels->carousels +carrage->carriage +carrages->carriages +carrear->career +carrears->careers carreer->career carreid->carried carrers->careers @@ -5972,10 +6051,18 @@ Carthagian->Carthaginian carthesian->cartesian carthographer->cartographer cartiesian->cartesian +cartiladge->cartilage +cartiledge->cartilage cartilege->cartilage cartilidge->cartilage +cartladge->cartilage +cartlage->cartilage +cartledge->cartilage +cartlege->cartilage cartrige->cartridge caryy->carry +casarole->casserole +casaroles->casseroles cascace->cascade case-insensative->case-insensitive case-insensetive->case-insensitive @@ -6020,10 +6107,18 @@ casesentivite->case-sensitive casesesitive->case-sensitive casette->cassette cashe->cache +casim->chasm +casims->chasms casion->caisson caspule->capsule caspules->capsules +cassarole->casserole +cassaroles->casseroles cassawory->cassowary +cassim->chasm +cassims->chasms +cassm->chasm +cassms->chasms cassowarry->cassowary casue->cause casued->caused @@ -6032,6 +6127,9 @@ casuing->causing casulaties->casualties casulaty->casualty cataalogue->catalogue +cataclism->cataclysm +cataclismic->cataclysmic +cataclismical->cataclysmic catagori->category catagorie->category, categories, catagories->categories @@ -6044,6 +6142,8 @@ catapillar->caterpillar catapillars->caterpillars catapiller->caterpillar catapillers->caterpillars +catastrofies->catastrophes +catastrofy->catastrophe catastronphic->catastrophic catastropic->catastrophic catastropically->catastrophically @@ -6102,6 +6202,8 @@ causious->cautious cautio->caution cavaet->caveat cavaets->caveats +cavren->cavern +cavrens->caverns ccahe->cache ccale->scale ccertificate->certificate @@ -6122,6 +6224,11 @@ ccustoms->customs cdecompress->decompress ceartype->cleartype Ceasar->Caesar +ceasars->Caesars +ceaser->Caesar +ceasers->Caesars +ceasser->Caesar +ceassers->Caesars ceate->create ceated->created ceates->creates @@ -6140,6 +6247,11 @@ cehcker->checker cehcking->checking cehcks->checks Celcius->Celsius +cellabration->celebration +cellabrations->celebrations +cellebration->celebration +cellebrations->celebrations +celler->cellar celles->cells cellpading->cellpadding cellst->cells @@ -6156,13 +6268,25 @@ cencretely->concretely cencter->center cencus->census cengter->center +censability->sensibility +censable->sensible +censably->sensibly censequence->consequence +censibility->sensibility +censible->sensible +censibly->sensibly censur->censor, censure, centain->certain +centenal->sentinel +centenals->sentinels cententenial->centennial centerd->centered +centerfuge->centrifuge +centerfuges->centrifuges centisencond->centisecond centisenconds->centiseconds +centrafuge->centrifuge +centrafuges->centrifuges centrifugeable->centrifugable centrigrade->centigrade centriod->centroid @@ -6179,6 +6303,10 @@ cerainty->certainty cerate->create cerated->created, serrated, ceratin->certain, keratin, +cercomstance->circumstance +cercomstances->circumstances +cercumstance->circumstance +cercumstances->circumstances cereates->creates cerification->certification, verification, cerifications->certifications, verifications, @@ -6190,7 +6318,18 @@ cerimonial->ceremonial cerimonies->ceremonies cerimonious->ceremonious cerimony->ceremony +cerinomial->ceremonial +cerinomies->ceremonies +cerinomy->ceremony +cermonial->ceremonial +cermonies->ceremonies +cermony->ceremony +cernomial->ceremonial +cernomies->ceremonies +cernomy->ceremony ceromony->ceremony +cerrebral->cerebral +cerrebrally->cerebrally certaily->certainly certaincy->certainty certainity->certainty @@ -6301,6 +6440,8 @@ challanges->challenges challege->challenge chambre->chamber chambres->chambers +champain->Champagne +champane->Champagne Champange->Champagne chanage->change chanaged->changed @@ -6311,6 +6452,12 @@ chanceled->canceled chanceling->canceling chanched->changed chancnel->channel, cancel, +chandaleer->chandelier +chandaleers->chandeliers +chandalier->chandelier +chandaliers->chandeliers +chandeleer->chandelier +chandeleers->chandeliers chane->change, chain, chaned->changed, chained, chaneged->changed @@ -6462,14 +6609,28 @@ chariman->chairman charistics->characteristics charizma->charisma chartroose->chartreuse +chasim->chasm +chasims->chasms chasnge->change, changes, chasr->chaser, chase, +chassim->chasm +chassims->chasms +chassm->chasm +chassms->chasms chassy->chassis chatacter->character chatacters->characters chatch->catch chatched->caught, chatted, +chateao->château +chateaos->châteaux +chateo->château +chateos->châteaux chater->chapter +chatou->château +chatous->châteaux +chatow->château +chatows->châteaux chawk->chalk chcek->check chceked->checked @@ -6567,6 +6728,8 @@ childs->children, child's, chiled->child, chilled, chiledren->children chilren->children +chimmenies->chimneys +chimmeny->chimney chineese->Chinese chinense->Chinese chinesse->Chinese @@ -6580,7 +6743,44 @@ chipertexts->ciphertexts chipet->chipset chipslect->chipselect chipstes->chipsets +chisell->chisel +chiselle->chisel +chiselles->chisels +chisil->chisel +chisiled->chiseled +chisiles->chisels +chisiling->chiseling +chisle->chisel +chisled->chiseled +chisles->chisels +chisling->chiseling chiuldren->children +chizell->chisel +chizelle->chisel +chizelled->chiseled +chizelles->chisels +chizelling->chiseling +chizil->chisel +chiziled->chiseled +chiziles->chisels +chiziling->chiseling +chizle->chisel +chizled->chiseled +chizles->chisels +chizling->chiseling +chizzell->chisel +chizzelle->chisel +chizzelled->chiseled +chizzelles->chisels +chizzelling->chiseling +chizzil->chisel +chizziled->chiseled +chizziles->chisels +chizziling->chiseling +chizzle->chisel +chizzled->chiseled +chizzles->chisels +chizzling->chiseling chked->checked chlid->child chnage->change @@ -6596,7 +6796,13 @@ chnged->changed chnges->changes chnging->changing chnnel->channel +chochka->tchotchke +chochkas->tchotchkes choclate->chocolate +chocolot->chocolate +chocolote->chocolate +chocolotes->chocolates +chocolots->chocolates choicing->choosing choise->choice choises->choices @@ -6647,6 +6853,14 @@ cicruit->circuit cicruits->circuits cicular->circular ciculars->circulars +cigarete->cigarette +cigarett->cigarette +cigarret->cigarette +cigarrete->cigarette +cigarrett->cigarette +cigarrette->cigarette +ciguret->cigarette +cigurete->cigarette cihpher->cipher cihphers->ciphers cilent->client, silent, @@ -6659,12 +6873,37 @@ cilindrical->cylindrical cilyndre->cylinder cilyndres->cylinders cilyndrs->cylinders +cimetric->symmetric +cimetrical->symmetrical +cimetricaly->symmetrically +cimetriclly->symmetrically +cimetricly->symmetrically +cimmetric->symmetric +cimmetrical->symmetrical +cimmetricaly->symmetrically +cimmetriclly->symmetrically +cimmetricly->symmetrically +cimptom->symptom +cimptomatic->symptomatic +cimptomatically->symptomatically +cimptomaticaly->symptomatically +cimptomaticlly->symptomatically +cimptomaticly->symptomatically +cimptoms->symptoms +cimptum->symptom +cimptumatic->symptomatic +cimptumatically->symptomatically +cimptumaticaly->symptomatically +cimptumaticlly->symptomatically +cimptumaticly->symptomatically +cimptums->symptoms Cincinatti->Cincinnati Cincinnatti->Cincinnati cinfiguration->configuration cinfigurations->configurations cintaner->container ciontrol->control +ciotee->coyote ciper->cipher cipers->ciphers cipersuite->ciphersuite @@ -6684,9 +6923,13 @@ ciphes->ciphers ciphr->cipher ciphrs->ciphers cips->chips +circit->circuit +circits->circuits circluar->circular circluarly->circularly circluars->circulars +circomstance->circumstance +circomstances->circumstances circomvent->circumvent circomvented->circumvented circomvents->circumvents @@ -6752,6 +6995,34 @@ ciruits->circuits cirumflex->circumflex cirumstance->circumstance cirumstances->circumstances +civalasation->civilisation +civalasations->civilisations +civalazation->civilization +civalazations->civilizations +civalesation->civilisation +civalesations->civilisations +civalezation->civilization +civalezations->civilizations +civalisation->civilisation +civalisations->civilisations +civalization->civilization +civalizations->civilizations +civelesation->civilisation +civelesations->civilisations +civelezation->civilization +civelezations->civilizations +civelisation->civilisation +civelisations->civilisations +civelization->civilization +civelizations->civilizations +civilasation->civilisation +civilasations->civilisations +civilazation->civilization +civilazations->civilizations +civilesation->civilisation +civilesations->civilisations +civilezation->civilization +civilezations->civilizations civillian->civilian civillians->civilians cjange->change @@ -6769,7 +7040,13 @@ claerly->clearly claibscale->calibscale claime->claim claimes->claims +clairvoiant->clairvoyant +clairvoiantes->clairvoyants +clairvoiants->clairvoyants clame->claim +claravoyant->clairvoyant +claravoyantes->clairvoyants +claravoyants->clairvoyants claread->cleared clared->cleared clarety->clarity @@ -6827,6 +7104,9 @@ clearling->clearing clearnance->clearance clearnances->clearances clearouput->clearoutput +clearstories->clerestories +clearstory->clerestory +clearstorys->clerestories clearted->cleared cleary->clearly cleaup->cleanup @@ -6836,6 +7116,10 @@ cleean->clean cleen->clean cleened->cleaned cleens->cleans +cleeshay->cliché +cleeshays->clichés +cleeshey->cliché +cleesheys->clichés cleff->clef cleint's->client's cleint->client @@ -6874,6 +7158,10 @@ clipboads->clipboards clipoard->clipboard clipoards->clipboards clipoing->clipping +clishay->cliché +clishays->clichés +clishey->cliché +clisheys->clichés cliuent->client cliuents->clients clloud->cloud @@ -6893,8 +7181,11 @@ cloes->close cloesd->closed cloesed->closed cloesing->closing +cloisonay->cloisonné +cloisonays->cloisonnés clonez->clones, cloner, clonning->cloning +cloreen->chlorine clory->glory clos->close closeing->closing @@ -6972,6 +7263,10 @@ coalesc->coalesce coalescsing->coalescing coalesed->coalesced coalesence->coalescence +coaless->coalesce +coalessed->coalesced +coalessense->coalescence +coalesses->coalesces coalessing->coalescing coallate->collate coallates->collates @@ -7018,11 +7313,14 @@ coaslescing->coalescing cobining->combining cobvers->covers coccinele->coccinelle +cockateel->cockatiel +cockateels->cockatiels coctail->cocktail cocument->document cocumentation->documentation cocuments->document codde->code, coded, coddle, +codeen->codeine codeing->coding codepoitn->codepoint codesc->codecs @@ -7097,7 +7395,9 @@ cofrimations->confirmations cofrimed->confirmed cofriming->confirming cofrims->confirms +cogniscent->cognizant, cognisant, cognizent->cognizant +cohabitating->cohabiting coherance->coherence coherancy->coherency coherant->coherent @@ -7123,8 +7423,12 @@ coldplg->coldplug colected->collected colection->collection colections->collections +coleeg->colleague +coleeges->colleagues +coleegs->colleagues colelction->collection colelctive->collective +colera->cholera colerscheme->colorscheme colescing->coalescing colision->collision @@ -7146,6 +7450,8 @@ collaspible->collapsible collasping->collapsing collationg->collation collborative->collaborative +colleage->colleague +colleages->colleagues collecing->collecting collecion->collection collecions->collections @@ -7155,9 +7461,12 @@ collectin->collection collecton->collection collectons->collections colleection->collection +collegate->collegiate collegue->colleague collegues->colleagues collektion->collection +collender->colander +collenders->colanders colletion->collection collidies->collides collisin->collision, collusion, @@ -7171,6 +7480,7 @@ collistions->collisions colllapses->collapses collocalized->colocalized collonade->colonnade +collone->cologne collonies->colonies collony->colony collorscheme->colorscheme @@ -7296,6 +7606,8 @@ coment->comment comented->commented comenting->commenting coments->comments +comerant->cormorant +comerants->cormorants cometed->commented, competed, comfirm->confirm comflicting->conflicting @@ -7526,6 +7838,7 @@ communiation->communication communicaion->communication communicatie->communication communicaton->communication +communikay->communiqué communitcate->communicate communitcated->communicated communitcates->communicates @@ -7551,6 +7864,7 @@ comonents->components comopnent->component comopnents->components comor->color +comotion->commotion compability->compatibility compabillity->compatibility compabitiliby->compatibility @@ -7682,6 +7996,10 @@ compation->compaction compatitbility->compatibility compativle->compatible compaytibility->compatibility +compeat->compete +compeated->competed +compeates->competes +compeating->competing compeitions->competitions compeletely->completely compelte->complete @@ -7784,6 +8102,7 @@ complette->complete complettly->completely complety->completely complext->complexity +complextion->complexion compliace->compliance complianse->compliance compliation->compilation @@ -7963,6 +8282,8 @@ concatonates->concatenates concatonating->concatenating conceed->concede conceedd->conceded +conceet->conceit +conceeted->conceited concensors->consensus concensus->consensus concentate->concentrate @@ -7972,12 +8293,20 @@ concentating->concentrating concentation->concentration concentic->concentric concentraze->concentrate +conceous->conscious +conceousally->consciously +conceously->consciously concequence->consequence concequences->consequences concered->concerned concerened->concerned concering->concerning concerntrating->concentrating +conchance->conscience +conchances->consciences +conchus->conscious +conchusally->consciously +conchusly->consciously concicely->concisely concider->consider concidered->considered @@ -7990,11 +8319,15 @@ concious->conscious conciously->consciously conciousness->consciousness concrets->concrete, concerts, +concured->conquered concurence->concurrence concurency->concurrency concurent->concurrent concurently->concurrently concurents->concurrents, concurrence, +concurer->conqueror +concures->conquers +concuring->conquering concurrect->concurrent condamned->condemned condem->condemn @@ -9326,6 +9659,8 @@ coresponds->corresponds corfirms->confirms coridal->cordial corispond->correspond +cornel->colonel +cornels->colonels cornmitted->committed corordinate->coordinate corordinates->coordinates @@ -9600,8 +9935,12 @@ coummunities->communities coummunity->community coumpound->compound coumpounds->compounds +councel->council councellor->councillor, counselor, councilor, councellors->councillors, counselors, councilors, +councels->councils +counciler->councilor +councilers->councilors cound->could, count, found, counded->counted counding->counting @@ -9611,6 +9950,8 @@ counld->could counpound->compound counpounds->compounds counries->countries, counties, +counsil->counsel +counsils->counsels countain->contain countainer->container countainers->containers @@ -9720,12 +10061,15 @@ crahed->crashed crahes->crashes crahs->crash, crass, crahses->crashes +cramugin->curmudgeon +cramugins->curmudgeons crashaes->crashes crasheed->crashed crashees->crashes crashess->crashes crashign->crashing crashs->crashes +cratashous->cretaceous cration->creation, ration, nation, crationalism->rationalism, nationalism, crationalist->rationalist, nationalist, @@ -9767,6 +10111,7 @@ credists->credits creditted->credited creedence->credence cresent->crescent +cresh->creche cresits->credits cretae->create cretaed->created @@ -9817,11 +10162,19 @@ critisizes->criticises, criticizes, critisizing->criticising, criticizing, critized->criticized critizing->criticizing +critque->critique +critqued->critiqued +critquing->critiquing croch->crotch crockadile->crocodile crockodiles->crocodiles cronological->chronological cronologically->chronologically +crooz->cruise +croozed->cruised +croozer->cruiser +croozes->cruises +croozing->cruising croppped->cropped cros->cross cros-site->cross-site @@ -9844,6 +10197,8 @@ crossute->cross-site crowdsigna->crowdsignal crowkay->croquet crowm->crown +crowshay->crochet +crowshays->crochets crrespond->correspond crsytal->crystal crsytalline->crystalline @@ -9866,6 +10221,11 @@ crusor->cursor crutial->crucial crutially->crucially crutialy->crucially +cruze->cruise +cruzed->cruised +cruzer->cruiser +cruzes->cruises +cruzing->cruising crypted->encrypted cryptocraphic->cryptographic cryptograhic->cryptographic @@ -9893,6 +10253,8 @@ cuase->cause cuased->caused cuases->causes cuasing->causing +cubburd->cupboard +cubburds->cupboards cuestion->question cuestioned->questioned cuestions->questions @@ -9903,6 +10265,8 @@ cummand->command cummulated->cumulated cummulative->cumulative cummunicate->communicate +cumpus->compass +cumpuses->compasses cumulatative->cumulative cumulattive->cumulative cuncurency->concurrency @@ -9910,6 +10274,10 @@ cunted->counted, hunted, cunter->counter, hunter, cunterpart->counterpart cunting->counting, hunting, +cuple->couple +cuples->couples +curage->courage +curageous->courageous curce->curse, curve, course, curch->church curcuit->circuit @@ -9927,9 +10295,13 @@ curerntly->currently curev->curve curevd->curved curevs->curves +curiocity->curiosity +curiosly->curiously curiousities->curiosities curiousity's->curiosity's curiousity->curiosity +curnel->colonel +curnels->colonels curnilinear->curvilinear currecnies->currencies currecny->currency @@ -9982,9 +10354,16 @@ cursos->cursors, cursor, cursot->cursor cursro->cursor curtesy->courtesy, curtsy, +curteus->courteous +curteusly->courteously +curvasious->curvaceous curvatrue->curvature curvatrues->curvatures curvelinear->curvilinear +cushin->cushion +cushins->cushions +cusine->cuisine +cusines->cuisines cusom->custom cusstom->custom cusstomer->customer @@ -10078,6 +10457,13 @@ cylnder->cylinder cylnders->cylinders cylynders->cylinders cymk->CMYK +cymptum->symptom +cymptumatic->symptomatic +cymptumatically->symptomatically +cymptumaticaly->symptomatically +cymptumaticlly->symptomatically +cymptumaticly->symptomatically +cymptums->symptoms cyphersuite->ciphersuite cyphersuites->ciphersuites cyphertext->ciphertext From 8b7af5b37deb2e6708c1a99b624f27ea725d62fa Mon Sep 17 00:00:00 2001 From: Stefan Kangas Date: Mon, 26 Dec 2022 11:19:56 +0100 Subject: [PATCH 143/302] Add some additional corrections from marvin.cs.uidaho.edu (C) Updated 2022-12-26 --- 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 abd657145e..d928901a44 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -6151,6 +6151,7 @@ catastrphic->catastrophic catche->catch catched->caught catchi->catch +catchip->ketchup catchs->catches categogical->categorical categogically->categorically @@ -6768,6 +6769,7 @@ chizle->chisel chizled->chiseled chizles->chisels chizling->chiseling +chizzel->chisel chizzell->chisel chizzelle->chisel chizzelled->chiseled @@ -7044,6 +7046,7 @@ clairvoiant->clairvoyant clairvoiantes->clairvoyants clairvoiants->clairvoyants clame->claim +clammer->clamber, clamor, claravoyant->clairvoyant claravoyantes->clairvoyants claravoyants->clairvoyants @@ -7479,6 +7482,7 @@ collistion->collision collistions->collisions colllapses->collapses collocalized->colocalized +collocweall->colloquial collonade->colonnade collone->cologne collonies->colonies @@ -7612,6 +7616,7 @@ cometed->commented, competed, comfirm->confirm comflicting->conflicting comformance->conformance +comfterble->comfortable comiled->compiled comilers->compilers comination->combination @@ -7674,6 +7679,7 @@ commect->connect commected->connected commecting->connecting commectivity->connectivity +commedian->comedian commedic->comedic commemerative->commemorative commemmorate->commemorate From 2b1e96f99e9d3d31270215caa5129f42649d5f5a Mon Sep 17 00:00:00 2001 From: Stefan Kangas Date: Mon, 26 Dec 2022 11:53:13 +0100 Subject: [PATCH 144/302] Add variations of misspellings starting with C --- codespell_lib/data/dictionary.txt | 50 ++++++++++++++++++++++---- codespell_lib/data/dictionary_rare.txt | 1 + 2 files changed, 45 insertions(+), 6 deletions(-) diff --git a/codespell_lib/data/dictionary.txt b/codespell_lib/data/dictionary.txt index d928901a44..82cd080a54 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -5999,14 +5999,17 @@ cariage->carriage caridge->carriage cariier->carrier carimonial->ceremonial +carimonially->ceremonially carimonies->ceremonies carimony->ceremony carinomial->ceremonial +carinomially->ceremonially carinomies->ceremonies carinomy->ceremony carismatic->charismatic Carmalite->Carmelite carmonial->ceremonial +carmonially->ceremonially carmonies->ceremonies carmony->ceremony Carnagie->Carnegie @@ -6020,6 +6023,7 @@ Carnigie->Carnegie Carnigie-Mellon->Carnegie-Mellon carniverous->carnivorous carnomial->ceremonial +carnomially->ceremonially carnomies->ceremonies carnomy->ceremony caronavirus->coronavirus @@ -6248,11 +6252,20 @@ cehcker->checker cehcking->checking cehcks->checks Celcius->Celsius +cellabrate->celebrate +cellabrated->celebrated +cellabrates->celebrates +cellabrating->celebrating cellabration->celebration cellabrations->celebrations +cellebrate->celebrate +cellebrated->celebrated +cellebrates->celebrates +cellebrating->celebrating cellebration->celebration cellebrations->celebrations celler->cellar +cellers->cellars celles->cells cellpading->cellpadding cellst->cells @@ -6269,6 +6282,7 @@ cencretely->concretely cencter->center cencus->census cengter->center +censabilities->sensibilities censability->sensibility censable->sensible censably->sensibly @@ -6306,8 +6320,12 @@ cerated->created, serrated, ceratin->certain, keratin, cercomstance->circumstance cercomstances->circumstances +cercomstancial->circumstantial +cercomstantial->circumstantial cercumstance->circumstance cercumstances->circumstances +cercumstancial->circumstantial +cercumstantial->circumstantial cereates->creates cerification->certification, verification, cerifications->certifications, verifications, @@ -6320,12 +6338,15 @@ cerimonies->ceremonies cerimonious->ceremonious cerimony->ceremony cerinomial->ceremonial +cerinomially->ceremonially cerinomies->ceremonies cerinomy->ceremony cermonial->ceremonial +cermonially->ceremonially cermonies->ceremonies cermony->ceremony cernomial->ceremonial +cernomially->ceremonially cernomies->ceremonies cernomy->ceremony ceromony->ceremony @@ -6856,13 +6877,20 @@ cicruits->circuits cicular->circular ciculars->circulars cigarete->cigarette +cigaretes->cigarettes cigarett->cigarette cigarret->cigarette cigarrete->cigarette +cigarretes->cigarettes +cigarrets->cigarettes cigarrett->cigarette cigarrette->cigarette +cigarrettes->cigarettes +cigarretts->cigarettes ciguret->cigarette cigurete->cigarette +ciguretes->cigarettes +cigurets->cigarettes cihpher->cipher cihphers->ciphers cilent->client, silent, @@ -6906,6 +6934,7 @@ cinfigurations->configurations cintaner->container ciontrol->control ciotee->coyote +ciotees->coyotes ciper->cipher cipers->ciphers cipersuite->ciphersuite @@ -7398,7 +7427,7 @@ cofrimations->confirmations cofrimed->confirmed cofriming->confirming cofrims->confirms -cogniscent->cognizant, cognisant, +cogniscent->cognizant cognizent->cognizant cohabitating->cohabiting coherance->coherence @@ -7483,6 +7512,7 @@ collistions->collisions colllapses->collapses collocalized->colocalized collocweall->colloquial +collocweally->colloquially collonade->colonnade collone->cologne collonies->colonies @@ -7617,6 +7647,7 @@ comfirm->confirm comflicting->conflicting comformance->conformance comfterble->comfortable +comfterbly->comfortably comiled->compiled comilers->compilers comination->combination @@ -7680,6 +7711,7 @@ commected->connected commecting->connecting commectivity->connectivity commedian->comedian +commedians->comedians commedic->comedic commemerative->commemorative commemmorate->commemorate @@ -7845,6 +7877,7 @@ communicaion->communication communicatie->communication communicaton->communication communikay->communiqué +communikays->communiqués communitcate->communicate communitcated->communicated communitcates->communicates @@ -8109,6 +8142,7 @@ complettly->completely complety->completely complext->complexity complextion->complexion +complextions->complexions compliace->compliance complianse->compliance compliation->compilation @@ -8325,16 +8359,17 @@ concious->conscious conciously->consciously conciousness->consciousness concrets->concrete, concerts, -concured->conquered +concured->concurred, conquered, concurence->concurrence concurency->concurrency concurent->concurrent concurently->concurrently concurents->concurrents, concurrence, concurer->conqueror -concures->conquers -concuring->conquering +concures->concurs, conquers, +concuring->concurring, conquering, concurrect->concurrent +concurrectly->concurrently condamned->condemned condem->condemn condemmed->condemned @@ -9941,10 +9976,12 @@ coummunities->communities coummunity->community coumpound->compound coumpounds->compounds -councel->council +councel->council, counsel, +councelled->counselled +councelling->counselling councellor->councillor, counselor, councilor, councellors->councillors, counselors, councilors, -councels->councils +councels->councils, counsels, counciler->councilor councilers->councilors cound->could, count, found, @@ -10279,6 +10316,7 @@ cuncurency->concurrency cunted->counted, hunted, cunter->counter, hunter, cunterpart->counterpart +cunters->counters, hunters, cunting->counting, hunting, cuple->couple cuples->couples diff --git a/codespell_lib/data/dictionary_rare.txt b/codespell_lib/data/dictionary_rare.txt index af21ba44aa..48846ac940 100644 --- a/codespell_lib/data/dictionary_rare.txt +++ b/codespell_lib/data/dictionary_rare.txt @@ -51,6 +51,7 @@ crated->created creche->crèche cristal->crystal crufts->cruft +curios->curious dealign->dealing deffer->differ, defer, degrate->degrade From c71477f04e604159a589b84d9447bdc338f05c22 Mon Sep 17 00:00:00 2001 From: Stefan Kangas Date: Mon, 26 Dec 2022 19:01:18 +0100 Subject: [PATCH 145/302] Incorporate changes from code review --- codespell_lib/data/dictionary.txt | 21 ++++++++++++++----- .../data/dictionary_en-GB_to_en-US.txt | 1 + 2 files changed, 17 insertions(+), 5 deletions(-) diff --git a/codespell_lib/data/dictionary.txt b/codespell_lib/data/dictionary.txt index 82cd080a54..6ec89cb626 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -5824,12 +5824,23 @@ calulation->calculation calulations->calculations caluse->clause, callus, callous, Cambrige->Cambridge +cameleon->chameleon +cameleons->chameleons camelion->chameleon +camelions->chameleons camoflage->camouflage +camoflaged->camouflaged +camoflages->camouflages +camoflaging->camouflaging camoflague->camouflage +camoflagued->camouflaged +camoflagues->camouflages +camoflaguing->camouflaging campagin->campaign +campagins->campaigns campain->campaign campaing->campaign +campaings->campaigns campains->campaigns camparing->comparing can;t->can't @@ -6292,8 +6303,8 @@ censible->sensible censibly->sensibly censur->censor, censure, centain->certain -centenal->sentinel -centenals->sentinels +centenal->sentinel, centennial, +centenals->sentinels, centennials, cententenial->centennial centerd->centered centerfuge->centrifuge @@ -7427,8 +7438,8 @@ cofrimations->confirmations cofrimed->confirmed cofriming->confirming cofrims->confirms -cogniscent->cognizant -cognizent->cognizant +cogniscent->cognizant, cognisant, +cognizent->cognizant, cognisant, cohabitating->cohabiting coherance->coherence coherancy->coherency @@ -10154,7 +10165,7 @@ credists->credits creditted->credited creedence->credence cresent->crescent -cresh->creche +cresh->crèche cresits->credits cretae->create cretaed->created 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 703129e89f..bde337d3db 100644 --- a/codespell_lib/data/dictionary_en-GB_to_en-US.txt +++ b/codespell_lib/data/dictionary_en-GB_to_en-US.txt @@ -60,6 +60,7 @@ characterise->characterize characterised->characterized characterises->characterizes characterising->characterizing +cognisant->cognizant colour->color coloured->colored colourful->colorful From 615c3f4a9e8aaf57d11405f3b8ffa02ffdcfd353 Mon Sep 17 00:00:00 2001 From: bl-ue Date: Mon, 14 Jun 2021 09:01:49 -0400 Subject: [PATCH 146/302] Typos from marvin.cs.uidaho.edu/mispell.html (rework of #1374): D Closes #1953 --- codespell_lib/data/dictionary.txt | 57 +++++++++++++++++++++++++++++++ 1 file changed, 57 insertions(+) diff --git a/codespell_lib/data/dictionary.txt b/codespell_lib/data/dictionary.txt index 6ec89cb626..d138944cec 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -10541,6 +10541,9 @@ cyrto->crypto cywgin->Cygwin daa->data dabase->database +dabree->debris +dabue->debut +dackery->daiquiri daclaration->declaration dacquiri->daiquiri dadlock->deadlock @@ -10565,9 +10568,11 @@ damange->damage damanged->damaged damanges->damages damanging->damaging +damed->damned damenor->demeanor dameon->daemon, demon, Damien, damge->damage +daming->damning dammage->damage dammages->damages damon->daemon, demon, @@ -10577,6 +10582,7 @@ dandidates->candidates dangereous->dangerous daplicating->duplicating Dardenelles->Dardanelles +darma->dharma dasboard->dashboard dasboards->dashboards dasdot->dashdot @@ -10589,6 +10595,7 @@ dashboars->dashboards dashbord->dashboard dashbords->dashboards dashs->dashes +daspora->diaspora dasy->days, dash, daisy, easy, data-strcuture->data-structure data-strcutures->data-structures @@ -10652,6 +10659,7 @@ daty->data, date, daugher->daughter daugther->daughter daugthers->daughters +daybue->debut dbeian->Debian DCHP->DHCP dcok->dock @@ -10835,6 +10843,10 @@ decendentant->descendant decendentants->descendants decendents->descendents, descendants, decending->descending +decern->discern +decerned->discerned +decerning->discerning +decerns->discerns deciaml->decimal deciamls->decimals decices->decides @@ -10858,6 +10870,8 @@ decieved->deceived decieves->deceives decieving->deceiving decimials->decimals +deciple->disciple +deciples->disciples decison->decision decission->decision declar->declare @@ -11061,6 +11075,10 @@ deeep->deep deelte->delete deendencies->dependencies deendency->dependency +deepo->depot +deepos->depots +deesil->diesel +deezil->diesel defail->detail defailt->default defalt->default @@ -11169,6 +11187,7 @@ defind->defined, defund, definde->defined, defines, define, definded->defined, defunded, definding->defining +defineable->definable defineas->defines defineed->defined definend->defined @@ -11208,6 +11227,8 @@ defintion->definition defintions->definitions defintition->definition defintivly->definitively +defishant->deficient +defishantly->deficiently defition->definition defitions->definitions deflaut->default @@ -11386,6 +11407,7 @@ deliverate->deliberate delivermode->deliverymode deliverying->delivering deliverys->deliveries, delivers, +delt->dealt delte->delete delted->deleted deltes->deletes @@ -11393,6 +11415,8 @@ delting->deleting deltion->deletion delusionally->delusively delvery->delivery +demagog->demagogue +demagogs->demagogues demaind->demand demaned->demand, demeaned, demenor->demeanor @@ -12307,12 +12331,15 @@ dichtomy->dichotomy dicionaries->dictionaries dicionary->dictionary dicipline->discipline +dicision->decision +dicisions->decisions dicitonaries->dictionaries dicitonary->dictionary dicline->decline diconnected->disconnected diconnection->disconnection diconnects->disconnects +dicotomy->dichotomy dicover->discover dicovered->discovered dicovering->discovering @@ -12513,6 +12540,8 @@ dilligence->diligence dilligent->diligent dilligently->diligently dillimport->dllimport +dimand->diamond +dimands->diamonds dimansion->dimension dimansional->dimensional dimansions->dimensions @@ -12553,15 +12582,21 @@ dimmensioning->dimensioning dimmensions->dimensions dimnension->dimension dimnention->dimension +dimond->diamond +dimonds->diamonds dimunitive->diminutive dinamic->dynamic dinamically->dynamically dinamicaly->dynamically dinamiclly->dynamically dinamicly->dynamically +dingee->dinghy +dingees->dinghies +dinghys->dinghies dinmaic->dynamic dinteractively->interactively diong->doing +dioreha->diarrhea diosese->diocese diphtong->diphthong diphtongs->diphthongs @@ -12574,6 +12609,7 @@ diplomancy->diplomacy dipose->dispose, depose, diposed->disposed, deposed, diposing->disposing, deposing, +diptheria->diphtheria dipthong->diphthong dipthongs->diphthongs dircet->direct @@ -12685,6 +12721,14 @@ disalow->disallow disambigouate->disambiguate disambiguaiton->disambiguation disambiguiation->disambiguation +disapait->dissipate +disapaited->dissipated +disapaiting->dissipating +disapaits->dissipates +disapat->dissipate +disapated->dissipated +disapating->dissipating +disapats->dissipates disapear->disappear disapeard->disappeared disapeared->disappeared @@ -12706,6 +12750,11 @@ disapperars->disappears disappered->disappeared disappering->disappearing disappers->disappears +disappline->discipline +disapplined->disciplined +disapplines->disciplines +disapplining->disciplining +disapplins->disciplines disapporval->disapproval disapporve->disapprove disapporved->disapproved @@ -13501,6 +13550,8 @@ dosn't->doesn't dosn;t->doesn't dosnt->doesn't dosposing->disposing +dosseay->dossier +dosseays->dossiers dosument->document dosuments->documents dota->data @@ -13689,6 +13740,7 @@ droppend->dropped droppped->dropped dropse->drops droput->dropout +drowt->drought druing->during druming->drumming drummless->drumless @@ -13707,12 +13759,17 @@ dstinations->destinations dthe->the dtoring->storing dubios->dubious +duble->double +dubled->doubled +dubley->doubly dublicade->duplicate dublicat->duplicate dublicate->duplicate dublicated->duplicated dublicates->duplicates dublication->duplication +dubling->doubling, Dublin, +dubly->doubly ducment->document ducument->document dueing->doing, during, dueling, From 78d92a205a8463e79ea04ff70dbc15abb572effe Mon Sep 17 00:00:00 2001 From: Stefan Kangas Date: Mon, 26 Dec 2022 14:22:39 +0100 Subject: [PATCH 147/302] Update corrections from marvin.cs.uidaho.edu: D Updated 2022-12-26 --- 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 d138944cec..239a3831f2 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -12867,6 +12867,8 @@ discontinous->discontinuous discontinuos->discontinuous discontinus->discontinue, discontinuous, discoraged->discouraged +discotek->discotheque +discoteque->discotheque discouranged->discouraged discourarged->discouraged discourrage->discourage From 5c13066a2327cf8bc08bebeb4c7710cf263e3d38 Mon Sep 17 00:00:00 2001 From: Stefan Kangas Date: Mon, 26 Dec 2022 14:29:22 +0100 Subject: [PATCH 148/302] Add variations of misspellings starting with D --- codespell_lib/data/dictionary.txt | 15 +++++++++++---- 1 file changed, 11 insertions(+), 4 deletions(-) diff --git a/codespell_lib/data/dictionary.txt b/codespell_lib/data/dictionary.txt index 239a3831f2..a50739b8bd 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -10568,11 +10568,11 @@ damange->damage damanged->damaged damanges->damages damanging->damaging -damed->damned +damed->damped, damned, gamed, domed, damenor->demeanor dameon->daemon, demon, Damien, damge->damage -daming->damning +daming->damning, damping, gaming, doming, dammage->damage dammages->damages damon->daemon, demon, @@ -10596,6 +10596,7 @@ dashbord->dashboard dashbords->dashboards dashs->dashes daspora->diaspora +dasporas->diasporas dasy->days, dash, daisy, easy, data-strcuture->data-structure data-strcutures->data-structures @@ -12328,6 +12329,10 @@ dicationaries->dictionaries dicationary->dictionary dicergence->divergence dichtomy->dichotomy +dicide->decide +dicided->decided +dicides->decides +diciding->deciding dicionaries->dictionaries dicionary->dictionary dicipline->discipline @@ -12339,6 +12344,7 @@ dicline->decline diconnected->disconnected diconnection->disconnection diconnects->disconnects +dicotomies->dichotomies dicotomy->dichotomy dicover->discover dicovered->discovered @@ -12540,8 +12546,8 @@ dilligence->diligence dilligent->diligent dilligently->diligently dillimport->dllimport -dimand->diamond -dimands->diamonds +dimand->demand, diamond, +dimands->demands, diamonds, dimansion->dimension dimansional->dimensional dimansions->dimensions @@ -13743,6 +13749,7 @@ droppped->dropped dropse->drops droput->dropout drowt->drought +drowts->droughts druing->during druming->drumming drummless->drumless From 1dbe900928d87076499daed1620c7c8bd8a7a4e8 Mon Sep 17 00:00:00 2001 From: bl-ue Date: Mon, 14 Jun 2021 09:03:58 -0400 Subject: [PATCH 149/302] Typos from marvin.cs.uidaho.edu/mispell.html (rework of #1374): E Closes #1954 --- codespell_lib/data/dictionary.txt | 98 ++++++++++++++++++++++++++++++- 1 file changed, 97 insertions(+), 1 deletion(-) diff --git a/codespell_lib/data/dictionary.txt b/codespell_lib/data/dictionary.txt index a50739b8bd..bf19aa7e3c 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -13883,6 +13883,7 @@ eanable->enable eanble->enable earch->search, each, eariler->earlier +earily->eerily earleir->earlier earler->earlier earliear->earlier @@ -13891,6 +13892,8 @@ earlist->earliest earlyer->earlier earnt->earned earpeice->earpiece +eary->eerie +earyly->eerily easely->easily easer->easier, eraser, easili->easily @@ -13902,6 +13905,9 @@ easly->easily easyer->easier eaturn->return, eaten, Saturn, eaxct->exact +eazier->easier +eaziest->easiest +eazy->easy ebale->enable ebaled->enabled EBCIDC->EBCDIC @@ -13933,11 +13939,15 @@ ecxited->excited ecxites->excites ecxiting->exciting ecxtracted->extracted +eczecutive->executive +eczecutives->executives EDCDIC->EBCDIC eddge->edge eddges->edges edditable->editable ede->edge +edeycat->etiquette +edeycats->etiquettes ediable->editable edige->edge ediges->edges @@ -13962,6 +13972,9 @@ edning->ending, edging, edxpected->expected eearly->early eeeprom->EEPROM +eeger->eager +eegerly->eagerly +eejus->aegis eescription->description eevery->every eeverything->everything @@ -14047,6 +14060,13 @@ einstance->instance eisntance->instance eiter->either eith->with +elagance->elegant +elagant->elegant +elagantly->elegantly +elamentaries->elementaries +elamentary->elementary +elamentries->elementaries +elamentry->elementary elaspe->elapse elasped->elapsed elaspes->elapses @@ -14062,6 +14082,7 @@ electical->electrical electirc->electric electircal->electrical electon->election, electron, +electorial->electoral electrial->electrical electricly->electrically electricty->electricity @@ -14092,6 +14113,7 @@ elemens->elements elemenst->elements elementay->elementary elemente->element, elements, +elementries->elementaries elementry->elementary elemet->element elemetal->elemental @@ -14168,6 +14190,7 @@ emables->enables emabling->enabling emailling->emailing emasc->emacs +embalance->imbalance embaras->embarrass embarased->embarrassed embarases->embarrasses @@ -14179,6 +14202,10 @@ embarasses->embarrasses embarassing->embarrassing embarassingly->embarrassingly embarassment->embarrassment +embaress->embarrass +embaressed->embarrassed +embaresses->embarrasses +embaressing->embarrassing embargos->embargoes embarras->embarrass embarrased->embarrassed @@ -14201,6 +14228,7 @@ embeed->embed embezelled->embezzled emblamatic->emblematic embold->embolden +embrio->embryos embrodery->embroidery emcas->emacs emcompass->encompass @@ -14210,6 +14238,8 @@ emedded->embedded emegrency->emergency emenet->element emenets->elements +emense->immense +emensely->immensely emiited->emitted eminate->emanate eminated->emanated @@ -14240,6 +14270,9 @@ emnity->enmity emoty->empty emough->enough emought->enough +empass->impasse +empasses->impasses +emperial->imperial emperical->empirical emperically->empirically emphaised->emphasised @@ -14258,6 +14291,12 @@ emplying->employing emplyment->employment emplyments->employments emporer->emperor +empress->impress +empressed->impressed +empresses->impresses +empressing->impressing +empressive->impressive +empressively->impressively emprically->empirically emprisoned->imprisoned emprove->improve @@ -14301,6 +14340,10 @@ enbales->enables enbaling->enabling enbedding->embedding enble->enable +enbrace->embrace +enbraced->embraced +enbracer->embracer +enbracing->embracing encapsualtes->encapsulates encapsulatzion->encapsulation encapsultion->encapsulation @@ -14331,6 +14374,10 @@ encompas->encompass encompased->encompassed encompases->encompasses encompasing->encompassing +encompus->encompass +encompused->encompassed +encompuses->encompasses +encompusing->encompassing enconde->encode enconded->encoded enconder->encoder @@ -14407,6 +14454,11 @@ endcoding->encoding endcodings->encodings endding->ending ende->end +endever->endeavor +endevered->endeavored +endeveres->endeavors +endevering->endeavoring +endevers->endeavors endevors->endeavors endevour->endeavour endfi->endif @@ -14429,6 +14481,7 @@ endpont->endpoint endponts->endpoints endsup->ends up enduce->induce +endur->endure eneables->enables enebale->enable enebaled->enabled @@ -14518,6 +14571,8 @@ enocdings->encodings enogh->enough enoght->enough enoguh->enough +enormass->enormous +enormassly->enormously enouch->enough enoucnter->encounter enoucntered->encountered @@ -14562,7 +14617,9 @@ entaglements->entanglements entended->intended entension->extension entensions->extensions +entent->intent ententries->entries +entents->intents enterance->entrance enteratinment->entertainment entereing->entering @@ -14577,6 +14634,9 @@ entety->entity enthaplies->enthalpies enthaply->enthalpy enthousiasm->enthusiasm +enthuseastic->enthusiastic +enthuseastically->enthusiastically +enthuseasticly->enthusiastically enthusiam->enthusiasm enthusiatic->enthusiastic entierly->entirely @@ -14610,6 +14670,8 @@ entquiry->enquiry, inquiry, entrace->entrance entraced->entranced entraces->entrances +entrapeneur->entrepreneur +entrapeneurs->entrepreneur entreis->entries entrepeneur->entrepreneur entrepeneurs->entrepreneurs @@ -14623,6 +14685,7 @@ enttry->entry entusiastic->enthusiastic entusiastically->enthusiastically enty->entry, entity, +enuf->enough enulation->emulation enumarate->enumerate enumarated->enumerated @@ -14704,6 +14767,10 @@ environmont->environment environnement->environment environtment->environment envoke->invoke, evoke, +envoked->invoked +envoker->invoker +envokes->invokes +envoking->invoking envolutionary->evolutionary envolved->involved envorce->enforce @@ -14736,6 +14803,7 @@ epigramic->epigrammatic epilgoue->epilogue episdoe->episode episdoes->episodes +epitamy->epitome eploit->exploit eploits->exploits epmty->empty @@ -14861,6 +14929,7 @@ escalting->escalating escaltion->escalation escapeable->escapable escapemant->escapement +escartment->escarpment escased->escaped escate->escalate, escape, escated->escalated, escaped, @@ -14947,15 +15016,22 @@ establishs->establishes establising->establishing establsihed->established estbalishment->establishment +esthetic->aesthetic +esthetically->aesthetically +estheticly->aesthetically +esthetics->aesthetics estimage->estimate estimages->estimates estiomator->estimator estiomators->estimators +estuwarries->estuaries +estuwarry->estuary esy->easy etablish->establish etablishd->established etablished->established etablishing->establishing +etamology->etymology etcc->etc etcp->etc etend->extend, attend, @@ -15085,12 +15161,20 @@ everytime->every time everyting->everything everytone->everyone everywher->everywhere +evesdrop->eavesdrop +evesdropper->eavesdropper +evesdropping->eavesdropping +evesdrops->eavesdrops evey->every eveyone->everyone eveyr->every evidentally->evidently evironment->environment evironments->environments +eviserate->eviscerate +eviserated->eviscerated +eviserates->eviscerates +eviserating->eviscerating evition->eviction evluate->evaluate evluated->evaluated @@ -15666,17 +15750,27 @@ exhautivity->exhaustivity exhcuast->exhaust exhcuasted->exhausted exhibtion->exhibition +exhilerate->exhilarate +exhilerated->exhilarated +exhilerates->exhilarates +exhilerating->exhilarating exhist->exist exhistance->existence exhisted->existed exhistence->existence exhisting->existing exhists->exists +exhorbitent->exorbitant +exhorbitently->exorbitantly exhostive->exhaustive exhustiveness->exhaustiveness exibition->exhibition exibitions->exhibitions exicting->exciting +exilerate->exhilarate +exilerated->exhilarated +exilerates->exhilarates +exilerating->exhilarating exinct->extinct exipration->expiration exipre->expire @@ -15753,7 +15847,7 @@ exntry->entry exolicit->explicit exolicitly->explicitly exonorate->exonerate -exort->export +exort->export, exhort, exorted->exported, extorted, exerted, exoskelaton->exoskeleton expalin->explain @@ -16608,6 +16702,8 @@ exturdes->extrudes exturding->extruding exuberent->exuberant exucuted->executed +exurpt->excerpt +exurpts->excerpts eyar->year, eyas, eyars->years, eyas, eyasr->years, eyas, From 681daa7fe04d6f3ab59ce029d1f80387c48d4c1c Mon Sep 17 00:00:00 2001 From: bl-ue Date: Mon, 14 Jun 2021 09:48:08 -0400 Subject: [PATCH 150/302] Move some to rare --- codespell_lib/data/dictionary.txt | 2 -- codespell_lib/data/dictionary_rare.txt | 2 ++ 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/codespell_lib/data/dictionary.txt b/codespell_lib/data/dictionary.txt index bf19aa7e3c..2553b96c6c 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -14291,9 +14291,7 @@ emplying->employing emplyment->employment emplyments->employments emporer->emperor -empress->impress empressed->impressed -empresses->impresses empressing->impressing empressive->impressive empressively->impressively diff --git a/codespell_lib/data/dictionary_rare.txt b/codespell_lib/data/dictionary_rare.txt index 48846ac940..3afaec3a1f 100644 --- a/codespell_lib/data/dictionary_rare.txt +++ b/codespell_lib/data/dictionary_rare.txt @@ -66,6 +66,8 @@ discontentment->discontent discreet->discrete discus->discuss discuses->discusses +empress->impress +empresses->impresses fallow->follow fallowed->followed fallowing->following From e9d089b8fd1a5f3cb2753be051eb4905ed8a9db3 Mon Sep 17 00:00:00 2001 From: Stefan Kangas Date: Mon, 26 Dec 2022 14:48:06 +0100 Subject: [PATCH 151/302] Add variations of misspellings starting with E --- codespell_lib/data/dictionary.txt | 24 +++++++++++++++--------- 1 file changed, 15 insertions(+), 9 deletions(-) diff --git a/codespell_lib/data/dictionary.txt b/codespell_lib/data/dictionary.txt index 2553b96c6c..d59024742f 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -13939,6 +13939,10 @@ ecxited->excited ecxites->excites ecxiting->exciting ecxtracted->extracted +eczecute->execute +eczecuted->executed +eczecutes->executes +eczecuting->executing eczecutive->executive eczecutives->executives EDCDIC->EBCDIC @@ -14228,7 +14232,8 @@ embeed->embed embezelled->embezzled emblamatic->emblematic embold->embolden -embrio->embryos +embrio->embryo +embrios->embryos embrodery->embroidery emcas->emacs emcompass->encompass @@ -14273,6 +14278,7 @@ emought->enough empass->impasse empasses->impasses emperial->imperial +emperially->imperially emperical->empirical emperically->empirically emphaised->emphasised @@ -14341,6 +14347,7 @@ enble->enable enbrace->embrace enbraced->embraced enbracer->embracer +enbraces->embraces enbracing->embracing encapsualtes->encapsulates encapsulatzion->encapsulation @@ -14765,10 +14772,10 @@ environmont->environment environnement->environment environtment->environment envoke->invoke, evoke, -envoked->invoked -envoker->invoker -envokes->invokes -envoking->invoking +envoked->invoked, evoked, +envoker->invoker, evoker, +envokes->invokes, evokes, +envoking->invoking, evoking, envolutionary->evolutionary envolved->involved envorce->enforce @@ -14928,6 +14935,7 @@ escaltion->escalation escapeable->escapable escapemant->escapement escartment->escarpment +escartments->escarpments escased->escaped escate->escalate, escape, escated->escalated, escaped, @@ -15014,10 +15022,6 @@ establishs->establishes establising->establishing establsihed->established estbalishment->establishment -esthetic->aesthetic -esthetically->aesthetically -estheticly->aesthetically -esthetics->aesthetics estimage->estimate estimages->estimates estiomator->estimator @@ -15029,6 +15033,7 @@ etablish->establish etablishd->established etablished->established etablishing->establishing +etamologies->etymologies etamology->etymology etcc->etc etcp->etc @@ -15160,6 +15165,7 @@ everyting->everything everytone->everyone everywher->everywhere evesdrop->eavesdrop +evesdropped->eavesdropped evesdropper->eavesdropper evesdropping->eavesdropping evesdrops->eavesdrops From 0a00f6170a5190663408a2bab11bc81b2deda283 Mon Sep 17 00:00:00 2001 From: Stefan Kangas Date: Wed, 28 Dec 2022 11:12:58 +0100 Subject: [PATCH 152/302] Add entend->intend and variations --- 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 d59024742f..1c87f51f1d 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -14619,7 +14619,10 @@ enrtry->entry enrty->entry ensconsed->ensconced entaglements->entanglements +entend->intend entended->intended +entending->intending +entends->intends entension->extension entensions->extensions entent->intent From e17165920b70c0fffb5e48591381b9eabeffa050 Mon Sep 17 00:00:00 2001 From: bl-ue Date: Mon, 14 Jun 2021 09:05:45 -0400 Subject: [PATCH 153/302] Typos from marvin.cs.uidaho.edu/mispell.html (rework of #1374): F Closes #1955 --- codespell_lib/data/dictionary.txt | 36 +++++++++++++++++++++++++++++++ 1 file changed, 36 insertions(+) diff --git a/codespell_lib/data/dictionary.txt b/codespell_lib/data/dictionary.txt index 1c87f51f1d..8ec33b01ca 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -16820,19 +16820,36 @@ famlily->family famoust->famous fanatism->fanaticism fancyness->fanciness +fane->fan, feign, farction->fraction, faction, Farenheight->Fahrenheit Farenheit->Fahrenheit farest->fairest, farthest, faries->fairies +farmasudical->pharmaceutical farmework->framework +farse->farce +farses->farces fasade->facade fase->faze, phase, false, fased->fazed, phased, +faseeshus->facetious +faseeshusly->facetiously +fasen->fasten +fasend->fastened +fasened->fastened fases->fazes, phases, +fashism->fascism +fashon->fashion +fashonable->fashionable +fashoned->fashioned +fashoning->fashioning +fashons->fashions fasing->fazing, phasing, fasion->fashion fasle->false +fasodd->facade +fasodds->facades fassade->facade fassinate->fascinate fasterner->fastener @@ -17430,6 +17447,7 @@ foramatting->formatting foramt->format forat->format forbad->forbade +forbatum->verbatim forbbiden->forbidden forbiden->forbidden forbit->forbid @@ -17442,6 +17460,7 @@ forcaster->forecaster forcasters->forecasters forcasting->forecasting forcasts->forecasts +forceably->forcibly forcot->forgot forece->force foreced->forced @@ -17453,12 +17472,19 @@ forementionned->aforementioned forermly->formerly foreward->foreword, forward, forfiet->forfeit +forfit->forfeit +forfited->forfeited +forfiting->forfeiting +forfits->forfeits forgeround->foreground forgoten->forgotten forgotton->forgotten forground->foreground forhead->forehead foriegn->foreign +forin->foreign +foriner->foreigner +foriners->foreigners forld->fold forlder->folder forlders->folders @@ -17466,6 +17492,7 @@ Formalhaut->Fomalhaut formallize->formalize formallized->formalized formaly->formally, formerly, +forman->foreman formate->format formated->formatted formater->formatter @@ -17485,6 +17512,7 @@ formattted->formatted formattting->formatting formelly->formerly formely->formerly +formen->foremen formend->formed formes->forms, formed, formidible->formidable @@ -17495,6 +17523,8 @@ formua->formula formual->formula formuale->formulae formuals->formulas +formulaical->formulaic +formulayic->formulaic fornat->format fornated->formatted fornater->formatter @@ -17641,6 +17671,7 @@ frequentily->frequently frequeny->frequency, frequently, frequent, frequncies->frequencies frequncy->frequency +frew-frew->frou-frou freze->freeze frezes->freezes frgament->fragment @@ -17814,6 +17845,8 @@ fundementals->fundamentals funguses->fungi funktion->function funnnily->funnily +funrel->funeral +funrels->funerals funtion->function funtional->functional funtionalities->functionalities @@ -17877,8 +17910,11 @@ furuther->further furutre->future furzzer->fuzzer fuschia->fuchsia +fusha->fuchsia +fushas->fuchsias fushed->flushed fushing->flushing +futal->futile futer->further, future, futher->further futherize->further From 2de6f5386dced7548d593211cecf7a00e8118d83 Mon Sep 17 00:00:00 2001 From: Stefan Kangas Date: Mon, 26 Dec 2022 14:59:31 +0100 Subject: [PATCH 154/302] Update corrections from marvin.cs.uidaho.edu: F Updated 2022-12-26 --- 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 8ec33b01ca..f93fde98b2 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -16817,6 +16817,7 @@ familliar->familiar familly->family famlilies->families famlily->family +famly->family famoust->famous fanatism->fanaticism fancyness->fanciness @@ -16825,6 +16826,7 @@ farction->fraction, faction, Farenheight->Fahrenheit Farenheit->Fahrenheit farest->fairest, farthest, +fariar->farrier faries->fairies farmasudical->pharmaceutical farmework->framework @@ -16871,6 +16873,7 @@ fautured->featured fautures->features fauturing->featuring favoutrable->favourable +favritt->favorite favuourites->favourites faymus->famous fcound->found From de6e4508fc55106fc893326dbfb44a2c671b72cb Mon Sep 17 00:00:00 2001 From: Stefan Kangas Date: Mon, 26 Dec 2022 15:04:39 +0100 Subject: [PATCH 155/302] Add variations of misspellings starting with F --- codespell_lib/data/dictionary.txt | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/codespell_lib/data/dictionary.txt b/codespell_lib/data/dictionary.txt index f93fde98b2..9a1df407a0 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -16828,10 +16828,13 @@ Farenheit->Fahrenheit farest->fairest, farthest, fariar->farrier faries->fairies +farmasudic->pharmaceutic farmasudical->pharmaceutical +farmasudics->pharmaceutics farmework->framework farse->farce farses->farces +farsical->farcical fasade->facade fase->faze, phase, false, fased->fazed, phased, @@ -16840,8 +16843,12 @@ faseeshusly->facetiously fasen->fasten fasend->fastened fasened->fastened +fasening->fastening +fasens->fastens, fasels, fases->fazes, phases, fashism->fascism +fashist->fascist +fashists->fascists fashon->fashion fashonable->fashionable fashoned->fashioned @@ -17495,7 +17502,6 @@ Formalhaut->Fomalhaut formallize->formalize formallized->formalized formaly->formally, formerly, -forman->foreman formate->format formated->formatted formater->formatter From 4cec7c7f27bf264d323bcb9ce402d5cb367e0f70 Mon Sep 17 00:00:00 2001 From: Stefan Kangas Date: Sat, 19 Nov 2022 14:00:05 +0100 Subject: [PATCH 156/302] Add fixes from misspell-fixer's safe.2.dict https://github.com/vlajos/misspell-fixer/blob/master/dict/safe.2.dict --- codespell_lib/data/dictionary.txt | 46 +++++++++++++++++++++++++- codespell_lib/data/dictionary_code.txt | 2 ++ 2 files changed, 47 insertions(+), 1 deletion(-) diff --git a/codespell_lib/data/dictionary.txt b/codespell_lib/data/dictionary.txt index 9a1df407a0..72255235ac 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -61,6 +61,7 @@ abiguity->ambiguity abilityes->abilities abilties->abilities abilty->ability +abiove->above abiss->abyss abitrarily->arbitrarily abitrary->arbitrary @@ -373,6 +374,7 @@ accesssiiblity->accessibility accesssing->accessing accesssor->accessor accesssors->accessors +accestor->ancestor, accessor, accet->accept accetable->acceptable accets->accepts @@ -926,6 +928,7 @@ addresess->addresses addresing->addressing addresse->addresses, address, addressess->addresses +addressibility->addressability addressings->addressing addresss->address addresssed->addressed @@ -1003,6 +1006,7 @@ adjuscent->adjacent adjusment->adjustment adjustement->adjustment adjustements->adjustments +adjustes->adjusted, adjusts, adjustificat->justification adjustification->justification adjustmant->adjustment @@ -1800,6 +1804,7 @@ alphapeticaly->alphabetically alrady->already alraedy->already alread->already +alreadh->already alreadly->already alreadt->already alreasy->already @@ -1815,6 +1820,7 @@ alrteady->already als->also alse->also, else, false, alsmost->almost +alsoneeds->also needs alsot->also alsready->already altenative->alternative @@ -3389,6 +3395,7 @@ assignenmentes->assignments assignenments->assignments assignenmet->assignment assignes->assigns +assignmen->assignment, assign men, assignmenet->assignment assignmens->assignments assignmet->assignment @@ -4416,6 +4423,7 @@ avoinded->avoided avoinding->avoiding avoinds->avoids avoud->avoid +avove->above avriable->variable avriables->variables avriant->variant @@ -4432,6 +4440,8 @@ awnser->answer awnsered->answered awnsers->answers awoid->avoid +awrning->warning, awning, +awrnings->warnings awsome->awesome awya->away axises->axes @@ -4580,6 +4590,7 @@ barnchers->branchers barnches->branches barnching->branching baroke->baroque +barrer->barrier, barred, barrel, barren, barriors->barriers barrriers->barriers barycentic->barycentric @@ -5074,6 +5085,7 @@ boganveelia->bougainvillea boganveelias->bougainvilleas boggus->bogus bogos->bogus +bogous->bogus bointer->pointer bolean->boolean boleen->boolean @@ -5445,6 +5457,7 @@ buildpackge->buildpackage buildpackges->buildpackages builing->building builings->buildings +builitn->built-in buillt->built built-time->build-time builter->builder @@ -5785,6 +5798,7 @@ calliflowers->cauliflowers callig->calling callint->calling callis->callus +calll->call callled->called calllee->callee calllers->callers @@ -6817,6 +6831,7 @@ chizzles->chisels chizzling->chiseling chked->checked chlid->child +chlids->children chnage->change chnaged->changed chnages->changes @@ -7243,6 +7258,7 @@ cloude->cloud cloudes->clouds cloumn->column cloumns->columns +cloure->closure, clojure, clousre->closure clsoe->close clssroom->classroom @@ -8103,6 +8119,7 @@ compiliation->compilation compilicated->complicated compilier->compiler compiliers->compilers +compination->combination, compilation, compitability->compatibility compitable->compatible compitent->competent @@ -8347,6 +8364,7 @@ concentraze->concentrate conceous->conscious conceousally->consciously conceously->consciously +conceptification->conceptualization, conceptualisation, concequence->consequence concequences->consequences concered->concerned @@ -9887,7 +9905,7 @@ corruptiuon->corruption corruput->corrupt cors-site->cross-site cors-sute->cross-site -corse->course +corse->course, coarse, core, curse, horse, norse, worse, corpse, CORS, torse, corset, corsor->cursor corss->cross, course, corss-compiling->cross-compiling @@ -10752,6 +10770,8 @@ deamonized->daemonized deamonizes->daemonizes deamonizing->daemonizing deamons->daemons +deapth->depth +deapths->depths deassering->deasserting deatch->detach deatched->detached @@ -11450,6 +11470,11 @@ denomitators->denominators densitity->density densly->densely denstiy->density +dentified->identified +dentifier->identifier +dentifiers->identifiers +dentifies->identifies +dentifying->identifying deocde->decode deocded->decoded deocder->decoder @@ -13899,6 +13924,7 @@ easer->easier, eraser, easili->easily easiliy->easily easilly->easily +easilty->easily easist->easiest easiy->easily easly->easily @@ -14016,6 +14042,7 @@ effectiviness->effectiveness effectivness->effectiveness effectly->effectively effedts->effects +effeect->effect effekt->effect effexts->effects efficcient->efficient @@ -14309,6 +14336,7 @@ emprovement->improvement emprovements->improvements emproves->improves emproving->improving +empted->emptied emptniess->emptiness emptry->empty emptyed->emptied @@ -14958,6 +14986,7 @@ esgers->edgers esges->edges esging->edging esiest->easiest +esily->easily esimate->estimate esimated->estimated esimates->estimates @@ -16466,6 +16495,7 @@ explicited->explicit, explicitly, explicitelly->explicitly explicitely->explicitly explicitily->explicitly +explicits->explicit explicity->explicitly explicityly->explicitly explict->explicit @@ -16577,6 +16607,9 @@ extacy->ecstasy extarnal->external extarnally->externally extatic->ecstatic +exteded->extended +exteder->extender +exteders->extenders extedn->extend extedned->extended extedner->extender @@ -17959,6 +17992,7 @@ garantee->guarantee garanteed->guaranteed garanteeed->guaranteed garantees->guarantees +garantie->guarantee garantied->guaranteed garanty->guarantee garbadge->garbage @@ -22319,6 +22353,7 @@ locatins->locations loccked->locked locgical->logical lockingf->locking +locla->local lodable->loadable loded->loaded loder->loader @@ -22771,6 +22806,7 @@ matresses->mattresses matrial->material matrials->materials matricess->matrices, mattresses, +matris->matrix matser->master mattern->pattern, matter, matterns->patterns, matters, @@ -25079,6 +25115,7 @@ obsure->obscure obtaien->obtain, obtained, obtaiend->obtained obtaiens->obtains +obtaines->obtains obtainig->obtaining obtaion->obtain obtaioned->obtained @@ -28051,6 +28088,7 @@ proceses->processes proceshandler->processhandler procesing->processing procesor->processor +procesors->processors processeed->processed processees->processes processer->processor @@ -31135,6 +31173,10 @@ restes->reset restesting->retesting resticted->restricted restictive->restrictive +restire->restore +restired->restored +restires->restores +restiring->restoring restoding->restoring restoiring->restoring restor->restore @@ -38343,6 +38385,8 @@ vas->was vasall->vassal vasalls->vassals vaue->value +vaued->valued +vaues->values vaule->value vauled->valued vaules->values diff --git a/codespell_lib/data/dictionary_code.txt b/codespell_lib/data/dictionary_code.txt index 36fa7c3384..657990214e 100644 --- a/codespell_lib/data/dictionary_code.txt +++ b/codespell_lib/data/dictionary_code.txt @@ -74,6 +74,7 @@ templace->template thead->thread theads->threads todays->today's +tomorrows->tomorrow's udate->update, date, udates->updates, dates, uint->unit @@ -84,3 +85,4 @@ wan->want warmup->warm up, warm-up, were'->we're whome->whom +yesterdays->yesterday's From 884225c91545cd20a5a613f9a3483d7c316681a1 Mon Sep 17 00:00:00 2001 From: Stefan Kangas Date: Mon, 26 Dec 2022 20:36:03 +0100 Subject: [PATCH 157/302] Add variations --- 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 72255235ac..57cd2b5f49 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -375,6 +375,7 @@ accesssing->accessing accesssor->accessor accesssors->accessors accestor->ancestor, accessor, +accestors->ancestors, accessors, accet->accept accetable->acceptable accets->accepts @@ -14043,6 +14044,7 @@ effectivness->effectiveness effectly->effectively effedts->effects effeect->effect +effeects->effects effekt->effect effexts->effects efficcient->efficient @@ -16607,6 +16609,7 @@ extacy->ecstasy extarnal->external extarnally->externally extatic->ecstatic +exted->extend exteded->extended exteder->extender exteders->extenders @@ -17994,6 +17997,7 @@ garanteeed->guaranteed garantees->guarantees garantie->guarantee garantied->guaranteed +garanties->guarantees garanty->guarantee garbadge->garbage garbage-dollected->garbage-collected @@ -22354,6 +22358,7 @@ loccked->locked locgical->logical lockingf->locking locla->local +loclas->locals lodable->loadable loded->loaded loder->loader @@ -25115,6 +25120,7 @@ obsure->obscure obtaien->obtain, obtained, obtaiend->obtained obtaiens->obtains +obtaine->obtain, obtained, obtains, obtaines->obtains obtainig->obtaining obtaion->obtain @@ -28092,17 +28098,20 @@ procesors->processors processeed->processed processees->processes processer->processor +processers->processors processess->processes processessing->processing processibg->processing processig->processing processinf->processing processore->processor +processores->processors processpr->processor processs->process, processes, processsed->processed processses->processes processsing->processing +processsor->processor processsors->processors procesure->procedure procesures->procedures @@ -31175,6 +31184,7 @@ resticted->restricted restictive->restrictive restire->restore restired->restored +restirer->restorer restires->restores restiring->restoring restoding->restoring From e5b30aaabffcc5e62232241b5b94e66110f299ba Mon Sep 17 00:00:00 2001 From: bl-ue Date: Mon, 14 Jun 2021 09:07:29 -0400 Subject: [PATCH 158/302] Typos from marvin.cs.uidaho.edu/mispell.html (rework of #1374): H Closes #1957 --- codespell_lib/data/dictionary.txt | 14 +++++++++++++- 1 file changed, 13 insertions(+), 1 deletion(-) diff --git a/codespell_lib/data/dictionary.txt b/codespell_lib/data/dictionary.txt index 57cd2b5f49..0cfdad03c3 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -18583,10 +18583,15 @@ hadnler->handler haeder->header haemorrage->haemorrhage haev->have, heave, +hagas->haggis +hagases->haggises +hagasses->haggises hahve->have, halve, half, halarious->hilarious hald->held, hold, half, hall, halfs->halves +hallaluja->hallelujah +hallaluya->hallelujah Hallowean->Hallowe'en, Halloween, halp->help halpoints->halfpoints @@ -18637,6 +18642,8 @@ handskake->handshake handwirting->handwriting hanel->handle hangig->hanging +hankerchif->handkerchief +hankerchifs->handkerchiefs hanlde->handle hanlded->handled hanlder->handler @@ -18695,6 +18702,10 @@ hardward->hardware hardwdare->hardware hardwirted->hardwired harge->charge +harrang->harangue +harranged->harangued +harranges->harangues +harranging->haranguing harras->harass harrased->harassed harrases->harasses @@ -18798,7 +18809,7 @@ hemipsheres->hemispheres hemishpere->hemisphere hemishperes->hemispheres hemmorhage->hemorrhage -hemorage->haemorrhage +hemorage->hemorrhage henc->hence henderence->hindrance hendler->handler @@ -18931,6 +18942,7 @@ hilighted->highlighted hilighting->highlighting hilights->highlights hillarious->hilarious +hims->his, hymns, himselv->himself hinderance->hindrance hinderence->hindrance From 40d37c804b4b38b7a7281d1c1e62359c4349e270 Mon Sep 17 00:00:00 2001 From: bl-ue Date: Mon, 14 Jun 2021 09:47:12 -0400 Subject: [PATCH 159/302] Move some to rare --- 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 0cfdad03c3..f4d410609d 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -18942,7 +18942,6 @@ hilighted->highlighted hilighting->highlighting hilights->highlights hillarious->hilarious -hims->his, hymns, himselv->himself hinderance->hindrance hinderence->hindrance diff --git a/codespell_lib/data/dictionary_rare.txt b/codespell_lib/data/dictionary_rare.txt index 3afaec3a1f..84dff00317 100644 --- a/codespell_lib/data/dictionary_rare.txt +++ b/codespell_lib/data/dictionary_rare.txt @@ -93,6 +93,7 @@ guerillas->guerrillas hart->heart, harm, heterogenous->heterogeneous hided->hidden, hid, +hims->his, hymns, hove->have, hover, love, impassible->impassable, impossible, implicity->implicitly, simplicity, From d9b8cdb7fdc54ee86d8b3d1447169c4fcbf343c4 Mon Sep 17 00:00:00 2001 From: Stefan Kangas Date: Mon, 26 Dec 2022 20:10:04 +0100 Subject: [PATCH 160/302] Add variations of misspellings starting with H --- codespell_lib/data/dictionary.txt | 22 ++++++++++++++----- .../data/dictionary_en-GB_to_en-US.txt | 4 ++++ 2 files changed, 21 insertions(+), 5 deletions(-) diff --git a/codespell_lib/data/dictionary.txt b/codespell_lib/data/dictionary.txt index f4d410609d..5dab2a996d 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -18609,6 +18609,8 @@ hander->handler handfull->handful handhake->handshake handker->handler +handkerchif->handkerchief +handkerchifs->handkerchiefs handleer->handler handleing->handling handlig->handling @@ -18703,9 +18705,11 @@ hardwdare->hardware hardwirted->hardwired harge->charge harrang->harangue -harranged->harangued -harranges->harangues -harranging->haranguing +harrange->harangue, arrange, +harranged->harangued, arranged, +harranger->haranguer, arranger, +harranges->harangues, arranges, +harranging->haranguing, arranging, harras->harass harrased->harassed harrases->harasses @@ -18808,8 +18812,16 @@ hemipshere->hemisphere hemipsheres->hemispheres hemishpere->hemisphere hemishperes->hemispheres -hemmorhage->hemorrhage -hemorage->hemorrhage +hemmorhage->haemorrhage, hemorrhage, +hemmorhaged->haemorrhaged, hemorrhaged, +hemmorhages->haemorrhages, hemorrhages, +hemmorhagic->haemorrhagic, hemorrhagic, +hemmorhaging->haemorrhaging, hemorrhaging, +hemorage->haemorrhage, hemorrhage, +hemoraged->haemorrhaged, hemorrhaged, +hemorages->haemorrhages, hemorrhages, +hemoragic->haemorrhagic, hemorrhagic, +hemoraging->haemorrhaging, hemorrhaging, henc->hence henderence->hindrance hendler->handler 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 bde337d3db..1a546a8b95 100644 --- a/codespell_lib/data/dictionary_en-GB_to_en-US.txt +++ b/codespell_lib/data/dictionary_en-GB_to_en-US.txt @@ -155,6 +155,10 @@ grey->gray greyed->grayed greyish->grayish greys->grays +haemorrhage->hemorrhage +haemorrhaged->hemorrhaged +haemorrhages->hemorrhages +haemorrhaging->hemorrhaging honour->honor honoured->honored honouring->honoring From b4c945924964ea8fc2d3105636f46e2659826135 Mon Sep 17 00:00:00 2001 From: bl-ue Date: Mon, 14 Jun 2021 09:06:14 -0400 Subject: [PATCH 161/302] Typos from marvin.cs.uidaho.edu/mispell.html (rework of #1374): G Closes #1956 --- codespell_lib/data/dictionary.txt | 45 +++++++++++++++++++++++++++++++ 1 file changed, 45 insertions(+) diff --git a/codespell_lib/data/dictionary.txt b/codespell_lib/data/dictionary.txt index 5dab2a996d..02a98be466 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -17976,6 +17976,10 @@ fysisist->physicist fysisit->physicist gabage->garbage gadged->gadget, gauged, +gage->gauge +gages->gauges +gagit->gadget +gagits->gadgets galatic->galactic Galations->Galatians gallaries->galleries @@ -18007,11 +18011,14 @@ gard->guard gardai->gardaí garentee->guarantee gargage->garbage, garage, +garilla->guerrilla +garillas->guerrillas garnison->garrison garuantee->guarantee garuanteed->guaranteed garuantees->guarantees garuantied->guaranteed +gastly->ghastly gatable->gateable gateing->gating gatherig->gathering @@ -18034,6 +18041,8 @@ gaus'->Gauss' gaus's->Gauss' gaus->Gauss, gauze, gausian->gaussian +gayity->gaiety +gaysha->geisha geeneric->generic geenrate->generate geenrated->generated @@ -18302,6 +18311,8 @@ goruped->grouped goruping->grouping gorups->groups gost->ghost +gotee->goatee +gotees->goatees Gothenberg->Gothenburg Gottleib->Gottlieb goup->group @@ -18318,6 +18329,8 @@ govermental->governmental govermnment->government governer->governor governmnet->government +govoner->governor +govoners->governors govorment->government govormental->governmental govornment->government @@ -18338,6 +18351,8 @@ grahics->graphics grahpic->graphic grahpical->graphical grahpics->graphics +graineries->granaries +grainery->granary gramar->grammar gramatically->grammatically grammartical->grammatical @@ -18345,7 +18360,21 @@ grammaticaly->grammatically grammer->grammar grammers->grammars granchildren->grandchildren +grandeeos->grandiose +grandise->aggrandise +grandised->aggrandised +grandisement->aggrandisement +grandiser->aggrandiser +grandises->aggrandises +grandising->aggrandising +grandize->aggrandize +grandized->aggrandized +grandizement->aggrandizement +grandizer->aggrandizer +grandizes->aggrandizes +grandizing->aggrandizing granilarity->granularity +granjure->grandeur granuality->granularity granualtiry->granularity granularty->granularity @@ -18378,6 +18407,10 @@ grigorian->Gregorian grobal->global grobally->globally grometry->geometry +groosome->gruesome +groosomely->gruesomely +groosum->gruesome +groosumly->gruesome grooup->group groouped->grouped groouping->grouping @@ -18386,6 +18419,8 @@ grop->group, drop, gropu->group gropuing->grouping gropus->groups, gropes, +groshuries->groceries +groshury->grocery groth->growth groubpy->groupby groupd->grouped @@ -18393,6 +18428,8 @@ groupe->grouped, group, groupes->groups, grouped, groupping->grouping groupt->grouped +growtesk->grotesque +growteskly->grotesquely grranted->granted gruop->group gruopd->grouped @@ -18542,6 +18579,7 @@ guass->Gauss guassian->Gaussian Guatamala->Guatemala Guatamalan->Guatemalan +gubnatorial->gubernatorial gud->good gude->guide, good, guerrila->guerrilla @@ -18564,7 +18602,14 @@ gurantees->guarantees gurrantee->guarantee guttaral->guttural gutteral->guttural +guyser->geyser +guysers->geysers +guyzer->geyser +guyzers->geysers +gwava->guava gylph->glyph +gymnist->gymnast +gymnistic->gymnastic gziniflate->gzinflate gziped->gzipped haa->has From 16c09b59c1b82eaece8e5eb2303fbf4c9d75cd12 Mon Sep 17 00:00:00 2001 From: Stefan Kangas Date: Mon, 26 Dec 2022 19:07:48 +0100 Subject: [PATCH 162/302] Update corrections from marvin.cs.uidaho.edu: G Updated 2022-12-26 --- 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 02a98be466..48f7d30bc1 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -18011,6 +18011,7 @@ gard->guard gardai->gardaí garentee->guarantee gargage->garbage, garage, +gargoil->gargoyle garilla->guerrilla garillas->guerrillas garnison->garrison From 345697b8698ea4ae27e1b37b11a5f8480c98fd7b Mon Sep 17 00:00:00 2001 From: Stefan Kangas Date: Mon, 26 Dec 2022 19:13:06 +0100 Subject: [PATCH 163/302] Add variations of misspellings starting with G --- codespell_lib/data/dictionary.txt | 6 +++++- codespell_lib/data/dictionary_en-GB_to_en-US.txt | 5 +++++ 2 files changed, 10 insertions(+), 1 deletion(-) diff --git a/codespell_lib/data/dictionary.txt b/codespell_lib/data/dictionary.txt index 48f7d30bc1..ba4d63334b 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -18012,6 +18012,7 @@ gardai->gardaí garentee->guarantee gargage->garbage, garage, gargoil->gargoyle +gargoils->gargoyles garilla->guerrilla garillas->guerrillas garnison->garrison @@ -18019,7 +18020,7 @@ garuantee->guarantee garuanteed->guaranteed garuantees->guarantees garuantied->guaranteed -gastly->ghastly +gastly->ghastly, vastly, gatable->gateable gateing->gating gatherig->gathering @@ -18044,6 +18045,7 @@ gaus->Gauss, gauze, gausian->gaussian gayity->gaiety gaysha->geisha +gayshas->geishas geeneric->generic geenrate->generate geenrated->generated @@ -18611,6 +18613,8 @@ gwava->guava gylph->glyph gymnist->gymnast gymnistic->gymnastic +gymnistics->gymnastics +gymnists->gymnasts gziniflate->gzinflate gziped->gzipped haa->has 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 1a546a8b95..9e7e52c0c7 100644 --- a/codespell_lib/data/dictionary_en-GB_to_en-US.txt +++ b/codespell_lib/data/dictionary_en-GB_to_en-US.txt @@ -1,5 +1,10 @@ acknowledgement->acknowledgment acknowledgements->acknowledgments +aggrandise->aggrandize +aggrandised->aggrandized +aggrandisement->aggrandizement +aggrandises->aggrandizes +aggrandising->aggrandizing amortise->amortize amortised->amortized amortises->amortizes From 1ff283f0dffe5498f9b838f9306f97e9f133d858 Mon Sep 17 00:00:00 2001 From: bl-ue Date: Mon, 14 Jun 2021 09:08:15 -0400 Subject: [PATCH 164/302] Typos from marvin.cs.uidaho.edu/mispell.html (rework of #1374): I Closes #1958 --- codespell_lib/data/dictionary.txt | 38 ++++++++++++++++++++++++++++++- 1 file changed, 37 insertions(+), 1 deletion(-) diff --git a/codespell_lib/data/dictionary.txt b/codespell_lib/data/dictionary.txt index ba4d63334b..3ca3a25a06 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -19305,7 +19305,10 @@ identtation->indentation identties->identities identtifier->identifier identty->identity -ideosyncracies->ideosyncrasies +ideosincracies->idiosyncrasies +ideosincracy->idiosyncrasy +ideosyncracies->idiosyncrasies +ideosyncracy->idiosyncrasy ideosyncratic->idiosyncratic idesa->ideas, ides, idetifier->identifier @@ -19316,6 +19319,8 @@ idicated->indicated idicates->indicates idicating->indicating idices->indices +idiosincracies->idiosyncrasies +idiosincracy->idiosyncrasy idiosynchrasies->idiosyncrasies idiosyncracies->idiosyncrasies idiosyncracy->idiosyncrasy @@ -19389,6 +19394,10 @@ igored->ignored igores->ignores igoring->ignoring igrnore->ignore +igzort->exhort +igzorted->exhorted +igzorter->exhorter +igzorts->exhorts Ihaca->Ithaca ihs->his iif->if @@ -19436,6 +19445,10 @@ imbed->embed imbedded->embedded imbedding->embedding imblance->imbalance +imbrace->embrace +imbraced->embraced +imbracer->embracer +imbracing->embracing imbrase->embrace imcoming->incoming imcomming->incoming @@ -19798,6 +19811,10 @@ improvmenet->improvement improvmenets->improvements improvment->improvement improvments->improvements +impune->impugn +impuned->impugned +impuner->impugner +impuning->impugning imput->input imrovement->improvement imsensitive->insensitive @@ -19830,10 +19847,18 @@ inaugures->inaugurates inavlid->invalid inbalance->imbalance inbalanced->imbalanced +inbankment->embankment +inbankments->embankments inbed->embed inbedded->embedded inbetween->between, in between, inbility->inability +inbrace->embrace +inbraced->embraced +inbracer->embracer +inbracing->embracing +inbrio->embryo +inbrios->embryos inbulit->inbuilt, built-in, incalid->invalid incarcirated->incarcerated @@ -19899,6 +19924,7 @@ incommplete->incomplete incompaitible->incompatible incompaitiblity->incompatibility incomparible->incompatible, incomparable, +incompasitate->incapacitate incompatabable->incompatible incompatabiity->incompatibility incompatabile->incompatible @@ -20161,8 +20187,14 @@ indepently->independently inderect->indirect inderts->inserts indes->index +indescriminent->indiscriminate indespensable->indispensable indespensible->indispensable +indever->endeavor +indevered->endeavored +indeveres->endeavors +indevering->endeavoring +indevers->endeavors indexig->indexing indexs->indexes, indices, indext->index, indent, @@ -20220,6 +20252,10 @@ individualy->individually individuel->individual individuelly->individually individuely->individually +individul->individual +individule->individual +individules->individuals +individuls->individuals indivisual->individual indivisuality->individuality indivisually->individually From 532245c6a255d1ff846b8e9ce9c51538123b91d1 Mon Sep 17 00:00:00 2001 From: Stefan Kangas Date: Mon, 26 Dec 2022 20:47:05 +0100 Subject: [PATCH 165/302] Update corrections from marvin.cs.uidaho.edu: I Updated 2022-12-26 --- 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 3ca3a25a06..24c51a5b65 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -19857,6 +19857,7 @@ inbrace->embrace inbraced->embraced inbracer->embracer inbracing->embracing +inbrase->embrace inbrio->embryo inbrios->embryos inbulit->inbuilt, built-in, From 4067a8f061e1304d45f5692823fe87052da85774 Mon Sep 17 00:00:00 2001 From: Stefan Kangas Date: Mon, 26 Dec 2022 20:52:27 +0100 Subject: [PATCH 166/302] Add variations of misspellings starting with I --- codespell_lib/data/dictionary.txt | 20 ++++++++++++++++++++ 1 file changed, 20 insertions(+) diff --git a/codespell_lib/data/dictionary.txt b/codespell_lib/data/dictionary.txt index 24c51a5b65..df136795df 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -19307,6 +19307,7 @@ identtifier->identifier identty->identity ideosincracies->idiosyncrasies ideosincracy->idiosyncrasy +ideosincratic->idiosyncratic ideosyncracies->idiosyncrasies ideosyncracy->idiosyncrasy ideosyncratic->idiosyncratic @@ -19321,7 +19322,10 @@ idicating->indicating idices->indices idiosincracies->idiosyncrasies idiosincracy->idiosyncrasy +idiosincratic->idiosyncratic idiosynchrasies->idiosyncrasies +idiosynchrasy->idiosyncrasy +idiosynchratic->idiosyncratic idiosyncracies->idiosyncrasies idiosyncracy->idiosyncrasy idividual->individual @@ -19397,6 +19401,7 @@ igrnore->ignore igzort->exhort igzorted->exhorted igzorter->exhorter +igzorting->exhorting igzorts->exhorts Ihaca->Ithaca ihs->his @@ -19448,8 +19453,13 @@ imblance->imbalance imbrace->embrace imbraced->embraced imbracer->embracer +imbraces->embraces imbracing->embracing imbrase->embrace +imbrased->embraced +imbraser->embracer +imbrases->embraces +imbrasing->embracing imcoming->incoming imcomming->incoming imcompatibility->incompatibility @@ -19814,7 +19824,9 @@ improvments->improvements impune->impugn impuned->impugned impuner->impugner +impunes->impugns impuning->impugning +impuns->impugns imput->input imrovement->improvement imsensitive->insensitive @@ -19856,8 +19868,13 @@ inbility->inability inbrace->embrace inbraced->embraced inbracer->embracer +inbraces->embraces inbracing->embracing inbrase->embrace +inbrased->embraced +inbraser->embracer +inbrases->embraces +inbrasing->embracing inbrio->embryo inbrios->embryos inbulit->inbuilt, built-in, @@ -19926,6 +19943,9 @@ incompaitible->incompatible incompaitiblity->incompatibility incomparible->incompatible, incomparable, incompasitate->incapacitate +incompasitated->incapacitated +incompasitates->incapacitates +incompasitating->incapacitating incompatabable->incompatible incompatabiity->incompatibility incompatabile->incompatible From 7cc6262c598a75ed689b3014b984d6b68f11b4d7 Mon Sep 17 00:00:00 2001 From: Stefan Kangas Date: Wed, 28 Dec 2022 17:45:33 +0100 Subject: [PATCH 167/302] Add `indever->endeavour, endeavor,` and variants --- codespell_lib/data/dictionary.txt | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/codespell_lib/data/dictionary.txt b/codespell_lib/data/dictionary.txt index df136795df..bc211f3b17 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -20211,11 +20211,11 @@ indes->index indescriminent->indiscriminate indespensable->indispensable indespensible->indispensable -indever->endeavor -indevered->endeavored -indeveres->endeavors -indevering->endeavoring -indevers->endeavors +indever->endeavour, endeavor, +indevered->endeavoured, endeavored, +indeveres->endeavours, endeavors, +indevering->endeavouring, endeavoring, +indevers->endeavours, endeavors, indexig->indexing indexs->indexes, indices, indext->index, indent, From 07c6d53fd39bd4dc93f349f5b75dfc9f6eea5370 Mon Sep 17 00:00:00 2001 From: bl-ue Date: Mon, 14 Jun 2021 09:09:21 -0400 Subject: [PATCH 168/302] Typos from marvin.cs.uidaho.edu/mispell.html (rework of #1374): K Closes #1960 --- codespell_lib/data/dictionary.txt | 45 +++++++++++++++++++++++++++++++ 1 file changed, 45 insertions(+) diff --git a/codespell_lib/data/dictionary.txt b/codespell_lib/data/dictionary.txt index bc211f3b17..8f50e22d1a 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -21863,11 +21863,16 @@ juxtifications->justifications juxtified->justified juxtifies->justifies juxtifying->justifying +kackie->khaki kake->cake, take, kakfa->Kafka +kalidescope->kaleidoscope +kalidescopes->kaleidoscopes +karisma->charisma kazakstan->Kazakhstan keep-alives->keep-alive keept->kept +keesh->quiche kenel->kernel, kennel, kenels->kernels, kennels, kenerl->kernel @@ -21882,6 +21887,8 @@ kernal->kernel kernals->kernels kernerl->kernel kernerls->kernels +kernul->colonel +kernuls->colonels ket->key, kept, keword->keyword kewords->keywords @@ -21904,6 +21911,8 @@ keybroad->keyboard keybroads->keyboards keyevente->keyevent keyords->keywords +keyosk->kiosk +keyosks->kiosks keyoutch->keytouch keyowrd->keyword keypair->key pair @@ -21918,23 +21927,45 @@ keyworkds->keywords keyworks->keywords, key works, keywors->keywords keywprd->keyword +kibutz->kibbutz +kibutzes->kibbutzim +kibutzim->kibbutzim +kidknap->kidnap +kighbosh->kibosh +kighboshed->kiboshed +kighboshes->kiboshes +kighboshing->kiboshing +kimerra->chimera kindergarden->kindergarten kindgergarden->kindergarten kindgergarten->kindergarten kinf->kind kinfs->kinds kinnect->Kinect +kiyack->kayak +kiyacked->kayaked +kiyacker->kayaker +kiyacking->kayaking +kiyacks->kayaks klenex->kleenex klick->click klicked->clicked klicks->clicks klunky->clunky +knarl->gnarl +knarled->gnarled +knarling->gnarling +knarls->gnarls +knarly->gnarly knive->knife kno->know +knockous->noxious +knockously->noxiously knowladge->knowledge knowlage->knowledge knowlageable->knowledgeable knowledgable->knowledgeable +knowlegable->knowledgeable knowlegde->knowledge knowlege->knowledge knowlegeabel->knowledgeable @@ -21952,9 +21983,17 @@ konstants->constants konw->know konwn->known konws->knows +kookoo->cuckoo +kookoos->cuckoos +koolot->culottes koordinate->coordinate koordinates->coordinates kown->known +kresh->crèche +kronicle->chronicle +kronicler->chronicler +kroniclers->chroniclers +kronicles->chronicles kubenates->Kubernetes kubenernetes->Kubernetes kubenertes->Kubernetes @@ -21968,8 +22007,14 @@ kubernates->Kubernetes kubernests->Kubernetes kubernete->Kubernetes kuberntes->Kubernetes +Kwanza->Kwanzaa kwno->know kwoledgebase->knowledge base +kwuzines->cuisines +kyebosh->kibosh +kyeboshed->kiboshed +kyeboshes->kiboshes +kyeboshing->kiboshing kyrillic->cyrillic labatory->lavatory, laboratory, labbel->label From 6c5f6c47a2752a9167528c9c8add2c68f7fc4eb9 Mon Sep 17 00:00:00 2001 From: Stefan Kangas Date: Tue, 27 Dec 2022 12:50:02 +0100 Subject: [PATCH 169/302] Update corrections from marvin.cs.uidaho.edu: K Updated 2022-12-27 --- 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 8f50e22d1a..fca3e4a6d3 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -22010,6 +22010,7 @@ kuberntes->Kubernetes Kwanza->Kwanzaa kwno->know kwoledgebase->knowledge base +kwuzine->cuisine kwuzines->cuisines kyebosh->kibosh kyeboshed->kiboshed From b36491ef45d18385a2d63814de11cb196cd2f83f Mon Sep 17 00:00:00 2001 From: Stefan Kangas Date: Tue, 27 Dec 2022 12:57:54 +0100 Subject: [PATCH 170/302] Add variations of misspellings starting with K --- codespell_lib/data/dictionary.txt | 20 +++++++++++++++++--- 1 file changed, 17 insertions(+), 3 deletions(-) diff --git a/codespell_lib/data/dictionary.txt b/codespell_lib/data/dictionary.txt index fca3e4a6d3..ea43df09e9 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -21864,11 +21864,14 @@ juxtified->justified juxtifies->justifies juxtifying->justifying kackie->khaki +kackies->khakis kake->cake, take, kakfa->Kafka kalidescope->kaleidoscope kalidescopes->kaleidoscopes karisma->charisma +karismatic->charismatic +karismatically->charismatically kazakstan->Kazakhstan keep-alives->keep-alive keept->kept @@ -21887,8 +21890,8 @@ kernal->kernel kernals->kernels kernerl->kernel kernerls->kernels -kernul->colonel -kernuls->colonels +kernul->kernel, colonel, +kernuls->kernels, colonels, ket->key, kept, keword->keyword kewords->keywords @@ -21931,6 +21934,13 @@ kibutz->kibbutz kibutzes->kibbutzim kibutzim->kibbutzim kidknap->kidnap +kidknapped->kidnapped +kidknappee->kidnappee +kidknappees->kidnappees +kidknapper->kidnapper +kidknappers->kidnappers +kidknapping->kidnapping +kidknaps->kidnaps kighbosh->kibosh kighboshed->kiboshed kighboshes->kiboshes @@ -21945,6 +21955,7 @@ kinnect->Kinect kiyack->kayak kiyacked->kayaked kiyacker->kayaker +kiyackers->kayakers kiyacking->kayaking kiyacks->kayaks klenex->kleenex @@ -21985,15 +21996,18 @@ konwn->known konws->knows kookoo->cuckoo kookoos->cuckoos -koolot->culottes +koolot->culotte +koolots->culottes koordinate->coordinate koordinates->coordinates kown->known kresh->crèche kronicle->chronicle +kronicled->chronicled kronicler->chronicler kroniclers->chroniclers kronicles->chronicles +kronicling->chronicling kubenates->Kubernetes kubenernetes->Kubernetes kubenertes->Kubernetes From 188593560dd024390201f6a8933b134790787e4f Mon Sep 17 00:00:00 2001 From: Stefan Kangas Date: Wed, 28 Dec 2022 17:50:48 +0100 Subject: [PATCH 171/302] Add more variations for `kimerra->chimera` --- 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 ea43df09e9..9931268ede 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -21945,7 +21945,14 @@ kighbosh->kibosh kighboshed->kiboshed kighboshes->kiboshes kighboshing->kiboshing +kimera->chimera +kimeric->chimeric +kimerical->chimerical +kimerically->chimerically kimerra->chimera +kimerric->chimeric +kimerrical->chimerical +kimerrically->chimerically kindergarden->kindergarten kindgergarden->kindergarten kindgergarten->kindergarten From c28478506d575a7d85948a3586ef2b34521165d0 Mon Sep 17 00:00:00 2001 From: Stefan Kangas Date: Thu, 29 Dec 2022 08:35:04 +0100 Subject: [PATCH 172/302] Move `ifset->if set` to code dictionary @ifset is a texinfo keyword, so this gives too many false positives: https://www.gnu.org/software/texinfo/manual/texinfo/html_node/_0040ifset-_0040ifclear.html --- codespell_lib/data/dictionary.txt | 1 - codespell_lib/data/dictionary_code.txt | 1 + 2 files changed, 1 insertion(+), 1 deletion(-) diff --git a/codespell_lib/data/dictionary.txt b/codespell_lib/data/dictionary.txt index 9931268ede..84a77cd1d0 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -19334,7 +19334,6 @@ idividuals->individuals idons->icons iechart->piechart ifself->itself -ifset->if set ignest->ingest ignested->ingested ignesting->ingesting diff --git a/codespell_lib/data/dictionary_code.txt b/codespell_lib/data/dictionary_code.txt index 657990214e..b6984a43c3 100644 --- a/codespell_lib/data/dictionary_code.txt +++ b/codespell_lib/data/dictionary_code.txt @@ -28,6 +28,7 @@ gae->game, Gael, gale, hist->heist, his, iam->I am, aim, iff->if +ifset->if set isenough->is enough ith->with jupyter->Jupiter From a4b2ed8de81f02c397a75c5dba1fad60677f723b Mon Sep 17 00:00:00 2001 From: bl-ue Date: Mon, 14 Jun 2021 09:10:02 -0400 Subject: [PATCH 173/302] Typos from marvin.cs.uidaho.edu/mispell.html (rework of #1374): L Closes #1961 --- codespell_lib/data/dictionary.txt | 69 +++++++++++++++++++ .../data/dictionary_en-GB_to_en-US.txt | 1 + 2 files changed, 70 insertions(+) diff --git a/codespell_lib/data/dictionary.txt b/codespell_lib/data/dictionary.txt index 84a77cd1d0..e5c65857f6 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -22052,6 +22052,16 @@ lables->labels labling->labeling, labelling, labouriously->laboriously labratory->laboratory +labrynth->labyrinth +labrynths->labyrinths +lacker->lacquer +lackered->lacquered +lackeres->lacquers +lackering->lacquering +lackers->lacquers +lackrimose->lachrymose +lackrimosity->lachrymosity +lackrimosly->lachrymosely laer->later, layer, lagacies->legacies lagacy->legacy @@ -22060,6 +22070,8 @@ laguages->languages laguague->language laguagues->languages laiter->later +lama->llama +lamas->llamas lamda->lambda lamdas->lambdas lanaguage->language @@ -22072,6 +22084,8 @@ langages->languages langauage->language langauge->language langauges->languages +langerie->lingerie +langerray->lingerie langeuage->language langeuagesection->languagesection langht->length @@ -22130,8 +22144,16 @@ larg->large larget->larger, largest, target, largets->largest, targets, largst->largest +laringes->larynxes +larinx->larynx +larinxes->larynxes larrry->larry +larvas->larvae +larvay->larvae +larvays->larvae +larvy->larvae laso->also, lasso, +lasonya->lasagna lastes->latest lastest->latest, last, lastr->last @@ -22162,6 +22184,10 @@ lavelling->levelling, labelling, lavels->levels, labels, layed->laid layou->layout +layringes->larynges +layrinks->larynx +layrinx->larynx +layrinxes->larynxes layser->layer, laser, laysered->layered, lasered, laysering->layering, lasering, @@ -22192,17 +22218,29 @@ leagl->legal leaglise->legalise leaglity->legality leaglize->legalize +leaneant->lenient +leaneantly->leniently leanr->lean, learn, leaner, leapyear->leap year leapyears->leap years leary->leery leaset->least +leasure->leisure +leasurely->leisurely +leasures->leisures leasy->least leat->lead, leak, least, leaf, leathal->lethal leats->least leaveing->leaving leavong->leaving +leeg->league +leegs->leagues +leegun->legion +leeguns->legions +leesure->leisure +leesurely->leisurely +leesures->leisures lefted->left legac->legacy legact->legacy @@ -22213,6 +22251,9 @@ leggacies->legacies leggacy->legacy leght->length leghts->lengths +legionair->legionnaire +legionaires->legionnaires +legionairs->legionnaires legitamate->legitimate legitimiately->legitimately legitmate->legitimate @@ -22221,6 +22262,8 @@ legth->length legths->lengths leibnitz->leibniz leightweight->lightweight +lemosine->limousine +lemosines->limousines lene->lens lenggth->length lengh->length @@ -22249,6 +22292,13 @@ lentgh->length lentghs->lengths lenth->length lenths->lengths +lepard->leopard +lepards->leopards +lepracan->leprechaun +lepracans->leprechauns +leprachan->leprechaun +leprachans->leprechauns +lepracy->leprosy leran->learn leraned->learned lerans->learns @@ -22271,6 +22321,12 @@ levetates->levitates levetating->levitating levl->level levle->level +lew->lieu, hew, sew, dew, +lewchemia->leukemia +lewow->luau +lewows->luaus +lewtenant->lieutenant +lewtenants->lieutenants lexial->lexical lexigraphic->lexicographic lexigraphical->lexicographical @@ -22356,6 +22412,7 @@ licesning->licensing licesnse->license licesnses->licenses licesnsing->licensing +licker->liquor licsense->license licsenses->licenses licsensing->licensing @@ -22383,6 +22440,10 @@ lightwieght->lightweight lightwight->lightweight lightyear->light year lightyears->light years +ligitamacy->legitimacy +ligitamassy->legitimacy +ligitamate->legitimate +ligitamately->legitimately ligth->light ligthing->lighting ligths->lights @@ -22431,6 +22492,8 @@ limitter->limiter limitting->limiting limitts->limits limk->link +limosine->limousine +limosines->limousines limted->limited limti->limit limts->limits @@ -22499,6 +22562,7 @@ litterally->literally litterals->literals litterate->literate litterature->literature +liturature->literature liuke->like liveing->living livel->level @@ -22520,6 +22584,7 @@ loactions->locations loadig->loading loadin->loading loadning->loading +loath->loathe locae->locate locaes->locates locahost->localhost @@ -22636,9 +22701,13 @@ lsip->lisp lsit->list, slit, sit, lsits->lists, slits, sits, luckly->luckily +lugage->luggage +lugages->luggage lukid->lucid, Likud, luminose->luminous luminousity->luminosity +lushis->luscious +lushisly->lusciously lveo->love lvoe->love Lybia->Libya 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 9e7e52c0c7..8f0b41e713 100644 --- a/codespell_lib/data/dictionary_en-GB_to_en-US.txt +++ b/codespell_lib/data/dictionary_en-GB_to_en-US.txt @@ -201,6 +201,7 @@ legalise->legalize legalised->legalized legalises->legalizes legalising->legalizing +leukaemia->leukemia licence->license licences->licenses litre->liter From 4da5720da07be713e4c8ccc2855d5deea6347905 Mon Sep 17 00:00:00 2001 From: bl-ue Date: Mon, 14 Jun 2021 09:45:48 -0400 Subject: [PATCH 174/302] Move some to rare --- codespell_lib/data/dictionary.txt | 3 --- codespell_lib/data/dictionary_rare.txt | 3 +++ 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/codespell_lib/data/dictionary.txt b/codespell_lib/data/dictionary.txt index e5c65857f6..d27eecaf28 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -22070,8 +22070,6 @@ laguages->languages laguague->language laguagues->languages laiter->later -lama->llama -lamas->llamas lamda->lambda lamdas->lambdas lanaguage->language @@ -22584,7 +22582,6 @@ loactions->locations loadig->loading loadin->loading loadning->loading -loath->loathe locae->locate locaes->locates locahost->localhost diff --git a/codespell_lib/data/dictionary_rare.txt b/codespell_lib/data/dictionary_rare.txt index 84dff00317..ee8628c9a0 100644 --- a/codespell_lib/data/dictionary_rare.txt +++ b/codespell_lib/data/dictionary_rare.txt @@ -106,10 +106,13 @@ ingenuous->ingenious inly->only irregardless->regardless knifes->knives +lama->llama +lamas->llamas leaded->led, lead, leas->least, lease, lightening->lightning, lighting, loafing->loading +loath->loathe lod->load, loud, lode, loos->loose, lose, loosing->losing From 70e8d6241c47e46cf82da555ca15b260c5135411 Mon Sep 17 00:00:00 2001 From: Stefan Kangas Date: Tue, 27 Dec 2022 13:04:13 +0100 Subject: [PATCH 175/302] Update corrections from marvin.cs.uidaho.edu: L Updated 2022-12-27 --- 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 d27eecaf28..05786e125f 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -22063,6 +22063,7 @@ lackrimose->lachrymose lackrimosity->lachrymosity lackrimosly->lachrymosely laer->later, layer, +laf->laugh lagacies->legacies lagacy->legacy laguage->language @@ -22070,6 +22071,7 @@ laguages->languages laguague->language laguagues->languages laiter->later +lambast->lambaste lamda->lambda lamdas->lambdas lanaguage->language @@ -22677,6 +22679,7 @@ loock->look, lock, loockdown->lockdown loocking->looking, locking, loockup->lookup, lockup, +lood->lewd lookes->looks looknig->looking looop->loop @@ -22692,6 +22695,7 @@ losted->listed, lost, lasted, lotation->rotation, flotation, lotharingen->Lothringen lowd->load, low, loud, +lozonya->lasagna lpatform->platform lsat->last, slat, sat, lsip->lisp From 7dc6f448fc74f2cc6839fe820f521a3363188dae Mon Sep 17 00:00:00 2001 From: Stefan Kangas Date: Tue, 27 Dec 2022 13:08:51 +0100 Subject: [PATCH 176/302] Add variations of misspellings starting with L --- 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 05786e125f..c09b8a4180 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -22322,7 +22322,7 @@ levetating->levitating levl->level levle->level lew->lieu, hew, sew, dew, -lewchemia->leukemia +lewchemia->leukaemia, leukemia, lewow->luau lewows->luaus lewtenant->lieutenant From 882b6fda4096a737a659d82eafd3779b47bda6d2 Mon Sep 17 00:00:00 2001 From: Stefan Kangas Date: Wed, 28 Dec 2022 17:57:58 +0100 Subject: [PATCH 177/302] Add suggestions from code review --- codespell_lib/data/dictionary.txt | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/codespell_lib/data/dictionary.txt b/codespell_lib/data/dictionary.txt index c09b8a4180..6d8fe3b065 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -22063,7 +22063,7 @@ lackrimose->lachrymose lackrimosity->lachrymosity lackrimosly->lachrymosely laer->later, layer, -laf->laugh +laf->laugh, leaf, loaf, lad, lag, lac, kaf, kaph, lagacies->legacies lagacy->legacy laguage->language @@ -22071,7 +22071,6 @@ laguages->languages laguague->language laguagues->languages laiter->later -lambast->lambaste lamda->lambda lamdas->lambdas lanaguage->language @@ -22679,7 +22678,7 @@ loock->look, lock, loockdown->lockdown loocking->looking, locking, loockup->lookup, lockup, -lood->lewd +lood->lewd, blood, flood, mood, look, loom, lookes->looks looknig->looking looop->loop From b62ce8358a9ea00fde8015ac6c00eddd4484246d Mon Sep 17 00:00:00 2001 From: Stefan Kangas Date: Thu, 29 Dec 2022 18:53:12 +0100 Subject: [PATCH 178/302] Move `keyservers->key servers' to code dictionary --- codespell_lib/data/dictionary.txt | 1 - codespell_lib/data/dictionary_code.txt | 1 + 2 files changed, 1 insertion(+), 1 deletion(-) diff --git a/codespell_lib/data/dictionary.txt b/codespell_lib/data/dictionary.txt index 6d8fe3b065..becc9da1d4 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -21919,7 +21919,6 @@ keyoutch->keytouch keyowrd->keyword keypair->key pair keypairs->key pairs -keyservers->key servers keystokes->keystrokes keyward->keyword keywoards->keywords diff --git a/codespell_lib/data/dictionary_code.txt b/codespell_lib/data/dictionary_code.txt index b6984a43c3..e60764728d 100644 --- a/codespell_lib/data/dictionary_code.txt +++ b/codespell_lib/data/dictionary_code.txt @@ -33,6 +33,7 @@ isenough->is enough ith->with jupyter->Jupiter keyserver->key server +keyservers->key servers lateset->latest lite->light movei->movie From ddbc432bbe344251723693a7745692e5854644bb Mon Sep 17 00:00:00 2001 From: Kian-Meng Ang Date: Sun, 1 Jan 2023 14:23:04 +0800 Subject: [PATCH 179/302] Add explixitely->explicitly --- 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 becc9da1d4..1f03681f89 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -16515,6 +16515,7 @@ explit->explicit explitictly->explicitly explitit->explicit explitly->explicitly +explixitely->explicitly explizit->explicit explizitly->explicitly exploition->explosion, exploitation, exploit, From ad6461b48d1b9efa4f9f0169d543c1465a894684 Mon Sep 17 00:00:00 2001 From: Stefan Kangas Date: Mon, 2 Jan 2023 14:56:05 +0100 Subject: [PATCH 180/302] Add fixes from travis (Closes #1312) (#2653) --- codespell_lib/data/dictionary.txt | 291 +++++++++++++++++++++++++++++- 1 file changed, 290 insertions(+), 1 deletion(-) diff --git a/codespell_lib/data/dictionary.txt b/codespell_lib/data/dictionary.txt index 1f03681f89..a14d92c5bf 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -9,6 +9,7 @@ a-diaerers->a-diaereses aaccess->access aaccessibility->accessibility aaccession->accession +aache->cache, ache, aack->ack aactual->actual aactually->actually @@ -903,9 +904,13 @@ addjusting->adjusting addjusts->adjusts addmission->admission addmit->admit +addno->addon, add no, +addnos->addons +addonts->addons addopt->adopt addopted->adopted addoptive->adoptive, adaptive, +addos->addons addpress->address addrass->address addrees->address @@ -955,6 +960,7 @@ adevnturers->adventurers adevntures->adventures adevnturing->adventuring adew->adieu +adfter->after adge->edge, badge, adage, adges->edges, badges, adages, adhearing->adhering @@ -1150,6 +1156,7 @@ affort->afford, effort, affortable->affordable afforts->affords affraid->afraid +affter->after afinity->affinity afor->for aforememtioned->aforementioned @@ -1251,6 +1258,7 @@ agrieved->aggrieved agrresive->aggressive agrument->argument agruments->arguments +ags->tags, ages, agsinst->against agument->argument agumented->augmented @@ -1675,6 +1683,7 @@ alllow->allow alllowed->allowed alllows->allows allmost->almost +allo->allow alloacate->allocate alloate->allocate, allotted, allot, alloated->allocated, allotted, @@ -2156,6 +2165,7 @@ angshiuosness->anxiousness angshus->anxious angshusly->anxiously angshusness->anxiousness +anguage->language anguluar->angular angziety->anxiety anhoter->another @@ -3245,6 +3255,8 @@ ascconciated->associated asceding->ascending ascpect->aspect ascpects->aspects +ascript->script, a script, +ascripts->scripts asdignment->assignment asdignments->assignments asemble->assemble @@ -3619,6 +3631,7 @@ astrix->asterisk astrixes->asterisks astrixs->asterisks astroid->asteroid +asudo->sudo asume->assume asumed->assumed asumes->assumes @@ -3882,6 +3895,7 @@ auccess->success auccessive->successive audeince->audience audiance->audience +aufter->after augest->August augmnet->augment augmnetation->augmentation @@ -4531,6 +4545,7 @@ bacward->backward bacwards->backwards badmitten->badminton baed->based +bafore->before bage->bag bahaving->behaving bahavior->behavior @@ -4578,6 +4593,7 @@ bannet->bayonet bannets->bayonets banruptcy->bankruptcy baout->about, bout, +baraches->branches baray->beret barays->berets barbedos->barbados @@ -4638,6 +4654,7 @@ beacaon->beacon beacause->because beachead->beachhead beacuse->because +beanches->branches, benches, beaon->beacon bearword->bareword beastiality->bestiality @@ -4661,7 +4678,9 @@ beautiy->beauty beautyfied->beautified beautyfull->beautiful beaviour->behaviour +bebefore->before bebongs->belongs +bebore->before becaause->because becacdd->because becahse->because @@ -4876,6 +4895,7 @@ benjer->binger benjes->binges benjing->bingeing beond->beyond +berfore->before berforming->performing bergamont->bergamot Berkley->Berkeley @@ -5069,6 +5089,7 @@ blured->blurred blurr->blur, blurred, blutooth->bluetooth bnecause->because +bnndler->bundler boads->boards boardcast->broadcast boaut->bout, boat, about, @@ -5150,6 +5171,7 @@ booundaries->boundaries booundary->boundary boounds->bounds boquet->bouquet +boraches->branches borad->board boradcast->broadcast bord->board, bored, border, @@ -5273,19 +5295,32 @@ boyant->buoyant boycot->boycott bracese->braces brach->branch +brached->branched, breached, +braches->branches, breaches, +braching->branching, breaching, brackeds->brackets bracketwith->bracket with brackground->background +bracnh->branch +bracnhed->branched +bracnhes->branches +bracnhing->branching bradcast->broadcast braket->bracket, brake, brakets->brackets, brakes, brakpoint->breakpoint brakpoints->breakpoints +branc->branch brance->branch, brace, branches, +branced->branched +brances->branches branchces->branches +branche->branch, branches, branched, +branchesonly->branches only brancheswith->branches with branchs->branches branchsi->branches +brancing->branching branck->branch branckes->branches brancket->bracket @@ -5304,6 +5339,7 @@ breakthroughts->breakthroughs breakthruogh->breakthrough breakthruoghs->breakthroughs breal->break +breanches->branches breating->breathing, beating, breef->brief, beef, breefly->briefly @@ -5510,6 +5546,10 @@ bumpt->bump bumpted->bumped bumpter->bumper bumpting->bumping +bunble->bundle +bunbled->bundled +bunbler->bundler +bunbling->bundling bund->bind, bound, bunded->binded, bundled, bounded, bundel->bundle @@ -5518,6 +5558,10 @@ bundels->bundles bunding->binding, bundling, bounding, bunds->binds, bounds, bunji->bungee +bunlde->bundle +bunlder->bundler +bunldes->bundles +bunlding->bundling buoancy->buoyancy burbon->bourbon bureauracy->bureaucracy @@ -6243,6 +6287,8 @@ ccertificates->certificates ccertification->certification ccessible->accessible cche->cache +ccompiler->compiler, C compiler, +ccompilers->compilers, C compilers, cconfiguration->configuration ccordinate->coordinate ccordinates->coordinates @@ -6940,6 +6986,8 @@ cimmetrical->symmetrical cimmetricaly->symmetrically cimmetriclly->symmetrically cimmetricly->symmetrically +cimpiler->compiler +cimpilers->compilers cimptom->symptom cimptomatic->symptomatic cimptomatically->symptomatically @@ -7677,8 +7725,11 @@ comformance->conformance comfterble->comfortable comfterbly->comfortably comiled->compiled +comiler->compiler comilers->compilers comination->combination +comipler->compiler +comiplers->compilers comision->commission comisioned->commissioned comisioner->commissioner @@ -8100,6 +8151,8 @@ compiant->compliant compicated->complicated compications->complications compied->compiled +compieler->compiler +compielers->compilers compilability->compatibility compilaiton->compilation compilaitons->compilations @@ -8115,11 +8168,17 @@ compilcation->complication compilcations->complications compileable->compilable compiletime->compile time +compilger->compiler +compilgers->compilers compiliant->compliant compiliation->compilation compilicated->complicated compilier->compiler compiliers->compilers +compiller->compiler +compillers->compilers +compilter->compiler +compilters->compilers compination->combination, compilation, compitability->compatibility compitable->compatible @@ -8208,6 +8267,8 @@ componeent->component componeents->components componemt->component componemts->components +componenent->component +componenents->components componenet->component componenete->component, components, componenets->components @@ -8264,6 +8325,8 @@ comptible->compatible comptue->compute compuatation->computation compuation->computation +compuler->compiler, computer, +compulers->compilers, computers, compulsary->compulsory compulsery->compulsory compund->compound @@ -9315,6 +9378,8 @@ continusly->continuously continuting->continuing contious->continuous contiously->continuously +contition->condition +contitions->conditions contiuation->continuation contiue->continue contiuguous->contiguous @@ -9650,6 +9715,7 @@ copmonent->component copmutations->computations copntroller->controller coponent->component +coponents->components copoying->copying coppermines->coppermine coppied->copied @@ -10082,6 +10148,7 @@ coverges->coverages, converges, coverred->covered coversion->conversion coversions->conversions +coversity->coverity coverted->converted, covered, coveted, coverter->converter coverters->converters @@ -10202,6 +10269,8 @@ crewsant->croissant cricital->critical cricitally->critically cricitals->criticals +cript->script, crypt, +cripts->scripts, crypts, crirical->critical crirically->critically criricals->criticals @@ -10439,6 +10508,7 @@ cushins->cushions cusine->cuisine cusines->cuisines cusom->custom +cussess->success cusstom->custom cusstomer->customer cusstomers->customers @@ -10693,6 +10763,7 @@ dcumented->documented dcumenting->documenting dcuments->documents ddelete->delete +ddons->addons de-actived->deactivated de-duplacate->de-duplicate de-duplacated->de-duplicated @@ -11429,6 +11500,9 @@ deliverate->deliberate delivermode->deliverymode deliverying->delivering deliverys->deliveries, delivers, +delpoy->deploy +delpoyed->deployed +delpoying->deploying delt->dealt delte->delete delted->deleted @@ -11606,13 +11680,18 @@ deperecating->deprecating deploied->deployed deploiment->deployment deploiments->deployments +deployd->deploy, deployed, deployement->deployment deploymenet->deployment deploymenets->deployments +deply->deploy, deeply, depndant->dependent depnds->depends deporarily->temporarily deposint->deposing +depoy->deploy +depoyed->deployed +depoying->deploying depracated->deprecated depreacte->deprecate depreacted->deprecated @@ -12658,6 +12737,8 @@ direcctries->directories direcdories->directories direcdory->directory direcdorys->directories +direcetories->directories +direcetory->directory direcion->direction direcions->directions direciton->direction @@ -12686,6 +12767,7 @@ directon->direction directoories->directories directoory->directory directores->directories +directoriei->directories directoris->directories directort->directory directorty->directory @@ -13807,6 +13889,7 @@ dubling->doubling, Dublin, dubly->doubly ducment->document ducument->document +dudo->sudo dueing->doing, during, dueling, duirng->during dulicate->duplicate @@ -14060,6 +14143,7 @@ efford->effort, afford, effords->efforts, affords, effulence->effluence eforceable->enforceable +efore->before, afore, egal->equal egals->equals egde->edge @@ -14221,6 +14305,7 @@ emable->enable emabled->enabled emables->enables emabling->enabling +emai->email emailling->emailing emasc->emacs embalance->imbalance @@ -14957,6 +15042,7 @@ ertor->error, terror, ertors->errors, terrors, ervery->every erverything->everything +ervices->services esacpe->escape esacped->escaped esacpes->escapes @@ -15062,6 +15148,7 @@ estiomator->estimator estiomators->estimators estuwarries->estuaries estuwarry->estuary +esudo->sudo esy->easy etablish->establish etablishd->established @@ -15520,6 +15607,7 @@ excitment->excitement exclamantion->exclamation excludde->exclude excludind->excluding +exclue->exclude excluse->exclude, excuse, exclusive, exclusiv->exclusive exclusivelly->exclusively @@ -16796,7 +16884,7 @@ faied->failed, fade, faield->failed faild->failed failded->failed -faile->failed +faile->fail, failed, failer->failure failes->fails failicies->facilities @@ -16815,12 +16903,16 @@ failsave->fail-safe, failsafe, failsaves->fail-safes, failsafes, failt->fail, failed, failture->failure +failtures->failures failue->failure failuer->failure +failuers->failures failues->failures failured->failed faireness->fairness fairoh->pharaoh +faiulre->failure +faiulres->failures faiway->fairway faiways->fairways faktor->factor @@ -16846,6 +16938,7 @@ falsly->falsely falso->false falt->fault falure->failure +falures->failures familar->familiar familes->families familiies->families @@ -16911,6 +17004,10 @@ fature->feature faught->fought fauilure->failure fauilures->failures +faulsure->failure +faulsures->failures +faulure->failure +faulures->failures faund->found, fund, fauture->feature fautured->featured @@ -17765,6 +17862,7 @@ frowrads->forwards frozee->frozen fschk->fsck FTBS->FTBFS +fter->after ftrunacate->ftruncate fualt->fault fualts->faults @@ -18264,8 +18362,10 @@ gloabal->global gloabl->global gloassaries->glossaries gloassary->glossary +globa->global globablly->globally globaly->globally +globas->globals globbal->global globel->global glorfied->glorified @@ -20802,8 +20902,10 @@ inrerface->interface inresponsive->unresponsive inro->into ins't->isn't +insall->install insallation->installation insalled->installed +insalling->installing insance->instance, insane, inscpeting->inspecting insctuction->instruction @@ -20883,8 +20985,10 @@ instaed->instead instal->install instalation->installation instalations->installations +instale->install instaled->installed instaler->installer +instales->installs instaling->installing installaion->installation installaiton->installation @@ -20967,7 +21071,10 @@ instnsiations->instantiations instnt->instant instntly->instantly instrace->instance +instrall->install instralled->installed +instralling->installing +instralls->installs instrction->instruction instrctional->instructional instrctions->instructions @@ -21506,6 +21613,10 @@ intrumented->instrumented intrumenting->instrumenting intruments->instruments intrusted->entrusted +intsall->install +intsalled->installed +intsalling->installing +intsalls->installs intstead->instead intstruct->instruct, in struct, intstructed->instructed @@ -21662,8 +21773,12 @@ isnt->isn't isnt;->isn't isntalation->installation isntalations->installations +isntall->install, isn't all, isntallation->installation isntallations->installations +isntalled->installed +isntalling->installing +isntalls->installs isntance->instance isntances->instances isntead->instead, isn't read, @@ -21817,6 +21932,7 @@ jhondoe->johndoe jist->gist jitterr->jitter jitterring->jittering +jkd->jdk jodpers->jodhpurs Johanine->Johannine joineable->joinable @@ -21831,6 +21947,7 @@ jouney->journey journied->journeyed journies->journeys joystik->joystick +jpin->join jpng->png, jpg, jpeg, jscipt->jscript jstu->just @@ -22070,6 +22187,8 @@ laguage->language laguages->languages laguague->language laguagues->languages +laguange->language +laguanges->languages laiter->later lamda->lambda lamdas->lambdas @@ -22077,9 +22196,13 @@ lanaguage->language lanaguge->language lanaguges->languages lanagugs->languages +lanauage->language +lanauages->languages lanauge->language langage->language langages->languages +langague->language +langagues->languages langauage->language langauge->language langauges->languages @@ -22089,13 +22212,22 @@ langeuage->language langeuagesection->languagesection langht->length langhts->lengths +langiage->language +langiages->languages +langnguage->language +langnguages->languages langth->length langths->lengths languace->language languaces->languages languae->language languaes->languages +languag->language language-spacific->language-specific +languagee->language +languagees->languages +languague->language +languagues->languages languahe->language languahes->languages languaje->language @@ -22105,14 +22237,20 @@ languale->language languales->languages langualge->language langualges->languages +languanage->language +languanages->languages languange->language languanges->languages languaqe->language languaqes->languages +languare->language +languares->languages languate->language languates->languages languauge->language languauges->languages +langueage->language +langueages->languages languege->language langueges->languages langugae->language @@ -22123,7 +22261,17 @@ languge->language languges->languages langugue->language langugues->languages +langulage->language +langulages->languages +languqge->language +languqges->languages +langurage->language +langurages->languages +langyage->language +langyages->languages lanich->launch +lannguage->language +lannguages->languages lanuage->language lanuch->launch lanuched->launched @@ -22170,9 +22318,15 @@ lauched->launched laucher->launcher lauches->launches lauching->launching +laugnage->language +laugnages->languages lauguage->language launchs->launch, launches, launck->launch +laungage->language +laungages->languages +launguage->language +launguages->languages launhed->launched lavae->larvae lavel->level, label, laravel, @@ -22285,6 +22439,8 @@ lengtext->longtext lengthes->lengths lengthh->length lengts->lengths +lenguage->language +lenguages->languages leniant->lenient leninent->lenient lentgh->length @@ -22573,6 +22729,8 @@ lizensing->licensing lke->like llinear->linear lmits->limits +lnguage->language +lnguages->languages loaader->loader loacal->local loacality->locality @@ -22706,6 +22864,8 @@ lugages->luggage lukid->lucid, Likud, luminose->luminous luminousity->luminosity +lunguage->language +lunguages->languages lushis->luscious lushisly->lusciously lveo->love @@ -23076,6 +23236,7 @@ matresses->mattresses matrial->material matrials->materials matricess->matrices, mattresses, +matrie->matrix matris->matrix matser->master mattern->pattern, matter, @@ -25007,6 +25168,8 @@ ninteenth->nineteenth ninties->nineties, 1990s, ninty->ninety, minty, nither->neither +nitification->notification +nitifications->notifications nknown->unknown nkow->know nkwo->know @@ -25025,6 +25188,8 @@ nofified->notified nofity->notify nohypen->nohyphen noice->noise, nice, notice, +nojification->notification +nojifications->notifications nomber->number nombered->numbered nombering->numbering @@ -25155,6 +25320,8 @@ normolise->normalise normolize->normalize northen->northern northereastern->northeastern +nortification->notification +nortifications->notifications nortmally->normally notabley->notably notaion->notation @@ -25185,7 +25352,11 @@ notications->notifications noticeing->noticing noticiable->noticeable noticible->noticeable +noticication->notification +noticications->notifications notidy->notify, not tidy, +notifacation->notification +notifacations->notifications notifaction->notification notifactions->notifications notifcation->notification @@ -25193,23 +25364,45 @@ notifcations->notifications notifed->notified notifer->notifier notifes->notifies +notifiaction->notification +notifiactions->notifications notifiation->notification +notifiations->notifications notificaction->notification +notificactions->notifications +notificaion->notification +notificaions->notifications notificaiton->notification notificaitons->notifications +notificarion->notification +notificarions->notifications +notificastion->notification +notificastions->notifications +notificatios->notification, notifications, notificaton->notification notificatons->notifications notificiation->notification notificiations->notifications +notificications->notifications +notifictation->notification +notifictations->notifications +notifiction->notification +notifictions->notifications +notififation->notification +notififations->notifications notifiy->notify notifiying->notifying notifycation->notification +notigication->notification +notigications->notifications notity->notify notmalize->normalize notmalized->normalized notmutch->notmuch notning->nothing notod->noted +notofocation->notification +notofocations->notifications notse->notes, note, nott->not nottaion->notation @@ -25224,6 +25417,11 @@ nowdays->nowadays nowe->now nown->known, noun, nowns->knowns, nouns, +nstall->install +nstallation->installation +nstalled->installed +nstalling->installing +nstalls->installs ntification->notification nuber->number nubering->numbering @@ -26106,6 +26304,7 @@ othwerise->otherwise othwerwise->otherwise othwhise->otherwise otification->notification +otifications->notifications otiginal->original otion->option otional->optional, notional, @@ -26343,6 +26542,9 @@ p0enis->penis paackage->package paackages->packages paackaging->packaging +pacage->package +pacages->packages +pacaging->packaging pacakage->package pacakages->packages pacakaging->packaging @@ -27356,6 +27558,7 @@ pobularity->popularity pocess->process, possess, pocessed->processed, possessed, pocession->procession, possession, +podfie->podfile podule->module poenis->penis poential->potential @@ -27595,6 +27798,7 @@ posesses->possesses posessing->possessing posession->possession posessions->possessions +posgresql->PostgreSQL posibilities->possibilities posibility->possibility posibilties->possibilities @@ -27693,6 +27897,9 @@ post-procesing->post-processing postcondtion->postcondition postcondtions->postconditions Postdam->Potsdam +postgesql->PostgreSQL +postgreslq->PostgreSQL +postgresq->PostgreSQL postgress->PostgreSQL postgressql->PostgreSQL postgrsql->PostgreSQL @@ -28582,6 +28789,8 @@ projctions->projections projctor->projector projctors->projectors projcts->projects +projec->project +projecs->projects projectd->projected projectio->projection projecttion->projection @@ -28921,6 +29130,7 @@ pthred->pthread pthreds->pthreads ptorions->portions ptrss->press +ptyhon->python pubilsh->publish pubilshed->published pubilsher->publisher @@ -29044,7 +29254,9 @@ pysically->physically pysics->physics pythin->python pythjon->python +pytho->python pythong->python +pythonl->python pytnon->python pytohn->python pyton->python @@ -29741,6 +29953,8 @@ recievers->receivers recieves->receives recieving->receiving recievs->receives +recipent->recipient +recipents->recipients recipiant->recipient recipiants->recipients recipie->recipe @@ -30339,6 +30553,8 @@ reintantiate->reinstantiate reintantiating->reinstantiating reintepret->reinterpret reintepreted->reinterpreted +reipient->recipient +reipients->recipients reister->register reitterate->reiterate reitterated->reiterated @@ -32108,8 +32324,16 @@ scavanged->scavenged scavanger->scavenger scavangers->scavengers scavanges->scavenges +sccess->success +sccesses->successes +sccessful->successful +sccessfully->successfully sccope->scope sccopes->scopes +sccriping->scripting +sccript->script +sccripted->scripted +sccripts->scripts sceanrio->scenario sceanrios->scenarios scecified->specified @@ -32170,6 +32394,10 @@ scince->science scinece->science scintiallation->scintillation scintillatqt->scintillaqt +sciprt->script +sciprted->scripted +sciprting->scripting +sciprts->scripts scipt->script, skipped, scipted->scripted scipting->scripting @@ -32208,19 +32436,26 @@ screenchot->screenshot screenchots->screenshots screenwrighter->screenwriter screnn->screen +scriipt->script +scriipted->scripted +scriipting->scripting scriopted->scripted scriopting->scripting scriopts->scripts scriopttype->scripttype +scripe->script, scribe, scrape, scrip, stripe, scriping->scripting scripst->scripts +scripte->script, scripted, scriptype->scripttype +scrit->script, scrip, scritp->script scritped->scripted scritping->scripting scritps->scripts scritpt->script scritpts->scripts +scrits->scripts scroipt->script scroipted->scripted scroipting->scripting @@ -32229,21 +32464,39 @@ scroipttype->scripttype scrollablbe->scrollable scrollin->scrolling scroolbar->scrollbar +scrpit->script +scrpited->scripted +scrpiting->scripting +scrpits->scripts scrpt->script scrpted->scripted scrpting->scripting scrpts->scripts scrren->screen +scrtip->script +scrtiped->scripted +scrtiping->scripting +scrtips->scripts scrutinity->scrutiny sction->section, suction, sctional->sectional, suctional, sctioned->sectioned, suctioned, sctioning->sectioning, suctioning, sctions->sections, suctions, +sctipt->script +sctipted->scripted +sctipting->scripting +sctipts->scripts +sctript->script +sctripted->scripted +sctripting->scripting +sctripts->scripts scubscribe->subscribe scubscribed->subscribed scubscriber->subscriber scubscribes->subscribes +scuccess->success +scuccesses->successes scuccessully->successfully sculpter->sculptor, sculpture, sculpters->sculptors, sculptures, @@ -32809,6 +33062,10 @@ serverlsss->serverless servicies->services servie->service servies->services +servise->service +servised->serviced +servises->services +servising->servicing servive->service servoce->service servoced->serviced @@ -32873,6 +33130,9 @@ severl->several severley->severely severly->severely sevice->service +seviced->serviced +sevices->services +sevicing->servicing sevirity->severity sevral->several sevrally->severally @@ -33389,8 +33649,11 @@ skippps->skips skipt->skip, Skype, skipped, skopped->skipped, shopped, slopped, stopped, skyp->skip, Skype, +slac->slack slach->slash slaches->slashes +slanguage->language +slanguages->languages slase->slash slases->slashes slashs->slashes @@ -33459,6 +33722,12 @@ socail->social socalism->socialism socekts->sockets socities->societies +socript->script +socripted->scripted +socripting->scripting +socripts->scripts +sodo->sudo, soda, sod, sods, dodo, solo, +sodu->sudo, soda, sod, sods, soecialize->specialized soem->some soemthing->something @@ -33596,6 +33865,8 @@ soudns->sounds sould'nt->shouldn't sould->could, should, sold, souldn't->shouldn't +soultion->solution +soultions->solutions soundard->soundcard sountrack->soundtrack sourc->source @@ -34181,6 +34452,10 @@ spred->spread spredsheet->spreadsheet spreedsheet->spreadsheet sprinf->sprintf +spript->script +spripted->scripted +spripting->scripting +spripts->scripts spririous->spurious spriritual->spiritual spritual->spiritual @@ -34240,6 +34515,7 @@ ssame->same ssee->see ssoaiating->associating ssome->some +ssudo->sudo stabalization->stabilization stabel->stable stabilitation->stabilization @@ -34544,6 +34820,9 @@ stringifed->stringified strinsg->strings strippen->stripped stript->stripped, script, +stripted->scripted, stripped, +stripting->scripting, stripping, +stripts->scripts, strips, strirngification->stringification strnad->strand strng->string @@ -35021,10 +35300,14 @@ sucidial->suicidal sucome->succumb sucsede->succeed sucsess->success +sude->sudo, side, sure, dude, suede, sued, sudent->student sudents->students +sudeo->sudo +sudio->sudo, audio, sudmobule->submodule sudmobules->submodules +sudu->sudo sueful->useful sueprset->superset suface->surface @@ -37289,6 +37572,7 @@ udateed->updated udater->updater, dater, udating->updating, dating, udno->undo, uno, +udo->undo, sudo, judo, ado, udon, UFO, udpatable->updatable udpate->update udpated->updated @@ -38877,11 +39161,13 @@ violoating->violating violoation->violation violoations->violations virtal->virtual +virtalenv->virtualenv virtaul->virtual virtical->vertical virtiual->virtual virttual->virtual virttually->virtually +virtualenf->virtualenv virtualiation->virtualization, virtualisation, virtualied->virtualized, virtualised, virtualisaion->virtualisation @@ -39256,6 +39542,8 @@ weas->was webage->webpage webaserver->web server, webserver, webbased->web-based +webbooks->webhooks +webhools->webhooks webiste->website wedensday->Wednesday wednesay->Wednesday @@ -39716,6 +40004,7 @@ xepects->expects xgetttext->xgettext xinitiazlize->xinitialize xmdoel->xmodel +xode->code, xcode, xour->your xwindows->X xyou->you From 5ff2a1e99f581d2d48b116f4c5178711daadd49a Mon Sep 17 00:00:00 2001 From: Dimitri Papadopoulos Orfanos <3234522+DimitriPapadopoulos@users.noreply.github.com> Date: Mon, 2 Jan 2023 15:15:53 +0100 Subject: [PATCH 181/302] Most of `MANIFEST.in` is obsolete, get rid of it (#2646) --- MANIFEST.in | 7 +------ Makefile | 7 ++----- pyproject.toml | 5 +---- 3 files changed, 4 insertions(+), 15 deletions(-) diff --git a/MANIFEST.in b/MANIFEST.in index 60957b16d9..36e8cf9628 100644 --- a/MANIFEST.in +++ b/MANIFEST.in @@ -1,12 +1,7 @@ -include codespell_lib/__init__.py -recursive-include codespell_lib *.py -include codespell_lib/data/dictionary*.txt -include codespell_lib/data/linux-kernel.exclude -include COPYING exclude *.yml *.yaml exclude .coveragerc exclude .git-blame-ignore-revs -exclude example example/* snap snap/* tools tools/* +exclude example example/* snap snap/* exclude Makefile exclude codespell.1.include exclude pyproject-codespell.precommit-toml diff --git a/Makefile b/Makefile index fbe9814649..88e6203522 100644 --- a/Makefile +++ b/Makefile @@ -2,11 +2,11 @@ SORT_ARGS := -f -b DICTIONARIES := codespell_lib/data/dictionary*.txt -PHONY := all check check-dictionaries sort-dictionaries trim-dictionaries check-dictionary sort-dictionary trim-dictionary check-manifest check-dist flake8 pytest pypi clean +PHONY := all check check-dictionaries sort-dictionaries trim-dictionaries check-dictionary sort-dictionary trim-dictionary check-dist flake8 pytest pypi clean all: check-dictionaries codespell.1 -check: check-dictionaries check-manifest check-dist flake8 pytest +check: check-dictionaries check-dist flake8 pytest check-dictionary: check-dictionaries sort-dictionary: sort-dictionaries @@ -44,9 +44,6 @@ trim-dictionaries: sed -E -i.bak -e 's/^[[:space:]]+//; s/[[:space:]]+$$//; /^$$/d' $$dictionary && rm $$dictionary.bak; \ done -check-manifest: - check-manifest --no-build-isolation - check-dist: $(eval TMP := $(shell mktemp -d)) python -m build -o $(TMP) diff --git a/pyproject.toml b/pyproject.toml index 4dc98082c8..3729f5df82 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -32,7 +32,7 @@ dynamic = ["version"] [project.optional-dependencies] dev = [ - "check-manifest", + "build", "flake8", "flake8-pyproject", "pytest", @@ -91,9 +91,6 @@ expand-star-imports = true skip = "B101,B404,B603" recursive = true -[tool.check-manifest] -ignore = ["codespell_lib/_version.py"] - # TODO: reintegrate codespell configuration after updating test cases #[tool.codespell] #builtin = ["clear","rare","informal","usage","code","names"] From 41e9bc44e6204b3bb5852a738da8b3d6fc43a481 Mon Sep 17 00:00:00 2001 From: Dimitri Papadopoulos Orfanos <3234522+DimitriPapadopoulos@users.noreply.github.com> Date: Mon, 2 Jan 2023 15:17:07 +0100 Subject: [PATCH 182/302] Use f-strings wherever possible (#2676) --- codespell_lib/_codespell.py | 101 +++++++++++------------------------- 1 file changed, 30 insertions(+), 71 deletions(-) diff --git a/codespell_lib/_codespell.py b/codespell_lib/_codespell.py index 61de534674..169fcc8443 100644 --- a/codespell_lib/_codespell.py +++ b/codespell_lib/_codespell.py @@ -233,15 +233,11 @@ def open_with_chardet(self, filename: str) -> Tuple[List[str], str]: try: f = open(filename, encoding=encoding, newline="") except UnicodeDecodeError: - print("ERROR: Could not detect encoding: %s" % filename, file=sys.stderr) + print(f"ERROR: Could not detect encoding: {filename}", file=sys.stderr) raise except LookupError: print( - "ERROR: Don't know how to handle encoding %s: %s" - % ( - encoding, - filename, - ), + f"ERROR: Don't know how to handle encoding {encoding}: {filename}", file=sys.stderr, ) raise @@ -258,19 +254,15 @@ def open_with_internal(self, filename: str) -> Tuple[List[str], str]: if first_try: first_try = False elif not self.quiet_level & QuietLevels.ENCODING: - print("WARNING: Trying next encoding %s" % encoding, file=sys.stderr) + print(f'WARNING: Trying next encoding "{encoding}"', file=sys.stderr) with open(filename, encoding=encoding, newline="") as f: try: lines = f.readlines() except UnicodeDecodeError: if not self.quiet_level & QuietLevels.ENCODING: print( - "WARNING: Decoding file using encoding=%s " - "failed: %s" - % ( - encoding, - filename, - ), + f'WARNING: Cannot decode file using encoding "{encoding}": ' + f"{filename}", file=sys.stderr, ) else: @@ -587,7 +579,7 @@ def parse_options( cfg_args = [] for key in config["codespell"]: # Add option as arg. - cfg_args.append("--%s" % key) + cfg_args.append(f"--{key}") # If value is blank, skip. val = config["codespell"][key] if val != "": @@ -713,10 +705,10 @@ def ask_for_word_fix( r = "" opt = [w.strip() for w in misspelling.data.split(",")] while not r: - print("%s Choose an option (blank for none): " % line, end="") + print(f"{line} Choose an option (blank for none): ", end="") for i, o in enumerate(opt): fixword = fix_case(wrongword, o) - print(" %d) %s" % (i, fixword), end="") + print(f" {i}) {fixword}", end="") print(": ", end="", flush=True) n = sys.stdin.readline().strip() @@ -811,14 +803,11 @@ def parse_file( cwrongword = f"{colors.WWORD}{word}{colors.DISABLE}" crightword = f"{colors.FWORD}{fixword}{colors.DISABLE}" - if misspellings[lword].reason: + reason = misspellings[lword].reason + if reason: if options.quiet_level & QuietLevels.DISABLED_FIXES: continue - creason = " | {}{}{}".format( - colors.FILE, - misspellings[lword].reason, - colors.DISABLE, - ) + creason = f" | {colors.FILE}{reason}{colors.DISABLE}" else: if options.quiet_level & QuietLevels.NON_AUTOMATIC_FIXES: continue @@ -826,16 +815,7 @@ def parse_file( bad_count += 1 - print( - "%(FILENAME)s: %(WRONGWORD)s" - " ==> %(RIGHTWORD)s%(REASON)s" - % { - "FILENAME": cfilename, - "WRONGWORD": cwrongword, - "RIGHTWORD": crightword, - "REASON": creason, - } - ) + print(f"{cfilename}: {cwrongword} ==> {crightword}{creason}") # ignore irregular files if not os.path.isfile(filename): @@ -851,7 +831,7 @@ def parse_file( if not text: if not options.quiet_level & QuietLevels.BINARY_FILE: - print("WARNING: Binary file: %s" % filename, file=sys.stderr) + print(f"WARNING: Binary file: {filename}", file=sys.stderr) return bad_count try: lines, encoding = file_opener.open(filename) @@ -919,23 +899,18 @@ def parse_file( continue cfilename = f"{colors.FILE}{filename}{colors.DISABLE}" - cline = "%s%d%s" % (colors.FILE, i + 1, colors.DISABLE) + cline = f"{colors.FILE}{i + 1}{colors.DISABLE}" cwrongword = f"{colors.WWORD}{word}{colors.DISABLE}" crightword = f"{colors.FWORD}{fixword}{colors.DISABLE}" - if misspellings[lword].reason: + reason = misspellings[lword].reason + if reason: if options.quiet_level & QuietLevels.DISABLED_FIXES: continue - - creason = " | {}{}{}".format( - colors.FILE, - misspellings[lword].reason, - colors.DISABLE, - ) + creason = f" | {colors.FILE}{reason}{colors.DISABLE}" else: if options.quiet_level & QuietLevels.NON_AUTOMATIC_FIXES: continue - creason = "" # If we get to this point (uncorrected error) we should change @@ -946,27 +921,13 @@ def parse_file( print_context(lines, i, context) if filename != "-": print( - "%(FILENAME)s:%(LINE)s: %(WRONGWORD)s " - "==> %(RIGHTWORD)s%(REASON)s" - % { - "FILENAME": cfilename, - "LINE": cline, - "WRONGWORD": cwrongword, - "RIGHTWORD": crightword, - "REASON": creason, - } + f"{cfilename}:{cline}: {cwrongword} " + f"==> {crightword}{creason}" ) else: print( - "%(LINE)s: %(STRLINE)s\n\t%(WRONGWORD)s " - "==> %(RIGHTWORD)s%(REASON)s" - % { - "LINE": cline, - "STRLINE": line.strip(), - "WRONGWORD": cwrongword, - "RIGHTWORD": crightword, - "REASON": creason, - } + f"{cline}: {line.strip()}\n\t{cwrongword} " + f"==> {crightword}{creason}" ) if changed: @@ -999,7 +960,7 @@ def main(*args: str) -> int: if len(used_cfg_files) > 0: print("Used config files:") for ifile, cfg_file in enumerate(used_cfg_files, start=1): - print(" %i: %s" % (ifile, cfg_file)) + print(f" {ifile}: {cfg_file}") if options.regex and options.write_changes: print( @@ -1011,19 +972,17 @@ def main(*args: str) -> int: word_regex = options.regex or word_regex_def try: word_regex = re.compile(word_regex) - except re.error as err: - print(f'ERROR: invalid --regex "{word_regex}" ({err})', file=sys.stderr) + except re.error as e: + print(f'ERROR: invalid --regex "{word_regex}" ({e})', file=sys.stderr) parser.print_help() return EX_USAGE if options.ignore_regex: try: ignore_word_regex = re.compile(options.ignore_regex) - except re.error as err: + except re.error as e: print( - 'ERROR: invalid --ignore-regex "{}" ({})'.format( - options.ignore_regex, err - ), + f'ERROR: invalid --ignore-regex "{options.ignore_regex}" ({e})', file=sys.stderr, ) parser.print_help() @@ -1036,7 +995,7 @@ def main(*args: str) -> int: for ignore_words_file in ignore_words_files: if not os.path.isfile(ignore_words_file): print( - "ERROR: cannot find ignore-words file: %s" % ignore_words_file, + f"ERROR: cannot find ignore-words file: {ignore_words_file}", file=sys.stderr, ) parser.print_help() @@ -1046,9 +1005,9 @@ def main(*args: str) -> int: uri_regex = options.uri_regex or uri_regex_def try: uri_regex = re.compile(uri_regex) - except re.error as err: + except re.error as e: print( - f'ERROR: invalid --uri-regex "{uri_regex}" ({err})', + f'ERROR: invalid --uri-regex "{uri_regex}" ({e})', file=sys.stderr, ) parser.print_help() @@ -1081,7 +1040,7 @@ def main(*args: str) -> int: else: if not os.path.isfile(dictionary): print( - "ERROR: cannot find dictionary file: %s" % dictionary, + f"ERROR: cannot find dictionary file: {dictionary}", file=sys.stderr, ) parser.print_help() From 587ee566f61dc3cb7e1af6c44bf85bc5ced4c730 Mon Sep 17 00:00:00 2001 From: Stefan Kangas Date: Mon, 2 Jan 2023 16:36:20 +0100 Subject: [PATCH 183/302] Harden GitHub CI configuration (#2655) --- .github/workflows/black.yml | 3 +++ .github/workflows/codespell-private.yml | 7 +++++++ .github/workflows/codespell-windows.yml | 3 +++ .github/workflows/codespell.yml | 3 +++ .github/workflows/isort.yml | 4 ++++ .github/workflows/mypy.yml | 4 ++++ .github/workflows/release.yml | 2 ++ 7 files changed, 26 insertions(+) diff --git a/.github/workflows/black.yml b/.github/workflows/black.yml index 7091279815..4d4bf42591 100644 --- a/.github/workflows/black.yml +++ b/.github/workflows/black.yml @@ -3,10 +3,13 @@ name: black on: - push - pull_request +permissions: {} jobs: black: runs-on: ubuntu-latest steps: - uses: actions/checkout@v3 + with: + persist-credentials: false - uses: psf/black@stable diff --git a/.github/workflows/codespell-private.yml b/.github/workflows/codespell-private.yml index 6ceff4667a..44489cc63d 100644 --- a/.github/workflows/codespell-private.yml +++ b/.github/workflows/codespell-private.yml @@ -7,6 +7,7 @@ concurrency: group: ${{ github.workflow }}-${{ github.event.number }}-${{ github.event.ref }} cancel-in-progress: true on: [push, pull_request] +permissions: {} jobs: test: env: @@ -25,6 +26,8 @@ jobs: name: Python ${{ matrix.python-version }} test steps: - uses: actions/checkout@v3 + with: + persist-credentials: false - name: Setup python uses: actions/setup-python@v4 with: @@ -53,6 +56,8 @@ jobs: with: python-version: 3.x - uses: actions/checkout@v3 + with: + persist-credentials: false - name: Install general dependencies run: pip install -U pip wheel # upgrade to latest pip find 3.5 wheels; wheel to avoid errors - name: Install codespell dependencies @@ -68,6 +73,8 @@ jobs: with: python-version: 3.x - uses: actions/checkout@v3 + with: + persist-credentials: false - name: Install codespell dependencies run: pip install -e ".[dev]" - name: Flake8 with annotations diff --git a/.github/workflows/codespell-windows.yml b/.github/workflows/codespell-windows.yml index 398cde0a7b..f4b203d53a 100644 --- a/.github/workflows/codespell-windows.yml +++ b/.github/workflows/codespell-windows.yml @@ -2,12 +2,15 @@ name: Test Codespell Windows on: - push - pull_request +permissions: {} jobs: test-windows: name: Test Windows runs-on: windows-latest steps: - uses: actions/checkout@v3 + with: + persist-credentials: false - name: Setup python uses: actions/setup-python@v4 with: diff --git a/.github/workflows/codespell.yml b/.github/workflows/codespell.yml index c9eb5ead6a..b782bf133e 100644 --- a/.github/workflows/codespell.yml +++ b/.github/workflows/codespell.yml @@ -3,12 +3,15 @@ # https://github.com/codespell-project/codespell name: codespell on: [push, pull_request] +permissions: {} jobs: codespell: name: Check for spelling errors runs-on: ubuntu-latest steps: - uses: actions/checkout@v3 + with: + persist-credentials: false - uses: codespell-project/actions-codespell@master with: check_filenames: true diff --git a/.github/workflows/isort.yml b/.github/workflows/isort.yml index f314e5b555..0919f7eae8 100644 --- a/.github/workflows/isort.yml +++ b/.github/workflows/isort.yml @@ -4,9 +4,13 @@ on: - push - pull_request +permissions: {} + jobs: isort: runs-on: ubuntu-latest steps: - uses: actions/checkout@v3 + with: + persist-credentials: false - uses: isort/isort-action@v1 diff --git a/.github/workflows/mypy.yml b/.github/workflows/mypy.yml index 927c6a24c4..199d0cc642 100644 --- a/.github/workflows/mypy.yml +++ b/.github/workflows/mypy.yml @@ -4,11 +4,15 @@ on: - push - pull_request +permissions: {} + jobs: mypy: runs-on: ubuntu-latest steps: - uses: actions/checkout@v3 + with: + persist-credentials: false - name: Setup python uses: actions/setup-python@v4 diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index 66f131cad9..8fab62fb00 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -19,6 +19,8 @@ jobs: runs-on: ubuntu-latest steps: - uses: actions/checkout@v3 + with: + persist-credentials: false - name: Set up Python uses: actions/setup-python@v4 with: From 390c3635bb9b4a7b030a5cde4574765c9a0fba9e Mon Sep 17 00:00:00 2001 From: bl-ue Date: Mon, 14 Jun 2021 09:16:40 -0400 Subject: [PATCH 184/302] Typos from marvin.cs.uidaho.edu/mispell.html (rework of #1374): O Closes #1964 --- codespell_lib/data/dictionary.txt | 116 ++++++++++++++++++++++++++++++ 1 file changed, 116 insertions(+) diff --git a/codespell_lib/data/dictionary.txt b/codespell_lib/data/dictionary.txt index a14d92c5bf..5bc54d808a 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -25490,7 +25490,14 @@ nuturing->nurturing nwe->new nwo->now o'caml->OCaml +oaker->ocher +oakereous->ocherous +oakereously->ocherously +oakerous->ocherous +oakerously->ocherously +oakery->ochery oaram->param +obation->ovation obay->obey obect->object obediance->obedience @@ -25558,6 +25565,10 @@ objtain->obtain objtained->obtained objtains->obtains objump->objdump +obleek->oblique +obleekly->obliquely +oblisk->obelisk +oblisks->obelisks oblitque->oblique obnject->object obscur->obscure @@ -25623,8 +25634,11 @@ occassionally->occasionally occassionaly->occasionally occassioned->occasioned occassions->occasions +occation->occasion occational->occasional occationally->occasionally +occationly->occasionally +occations->occasions occcur->occur occcured->occurred occcurs->occurs @@ -25661,12 +25675,22 @@ occurrances->occurrences occurrencs->occurrences occurrs->occurs oce->once, one, ore, +ochreous->ocherous +ochry->ochery +ocilate->oscillate +ocilated->oscillated +ocilater->oscillator +ocilaters->oscillators +ocilates->oscillates +ocilating->oscillating oclock->o'clock ocntext->context ocorrence->occurrence ocorrences->occurrences octect->octet octects->octets +octive->octave +octives->octaves Octobor->October octohedra->octahedra octohedral->octahedral @@ -25686,6 +25710,8 @@ ocurrences->occurrences ocurring->occurring ocurrred->occurred ocurrs->occurs +odasee->odyssey +odasees->odysseys oder->order, odor, odly->oddly ody->body @@ -25700,6 +25726,9 @@ offcers->officers offcial->official offcially->officially offcials->officials +offen->often +offener->oftener +offenest->oftenest offens->offend, offense, offends, offers, offerd->offered offereings->offerings @@ -25723,6 +25752,14 @@ officeally->officially officeals->officials officealy->officially officialy->officially +officianado->aficionado +officianados->aficionados +officionado->aficionado +officionados->aficionados +offisianado->aficionado +offisianados->aficionados +offisionado->aficionado +offisionados->aficionados offlaod->offload offlaoded->offloaded offlaoding->offloading @@ -25741,6 +25778,14 @@ offstets->offsets offten->often oficial->official oficially->officially +oficianado->aficionado +oficianados->aficionados +oficionado->aficionado +oficionados->aficionados +ofisianado->aficionado +ofisianados->aficionados +ofisionado->aficionado +ofisionados->aficionados ofmodule->of module ofo->of ofrom->from @@ -25779,11 +25824,28 @@ olny->only olt->old olther->other oly->only +omage->homage +omaj->homage +omaje->homage +omishience->omniscience +omishiences->omnisciences +omishients->omniscience +omishints->omniscience +omisience->omniscience +omisiences->omnisciences omision->omission omited->omitted omiting->omitting omitt->omit +omlet->omelet +omlets->omelets omlette->omelette +ommishience->omniscience +ommishiences->omnisciences +ommishients->omniscience +ommishints->omniscience +ommisience->omniscience +ommisiences->omnisciences ommision->omission ommission->omission ommit->omit @@ -25792,6 +25854,12 @@ ommiting->omitting ommits->omits ommitted->omitted ommitting->omitting +omnishience->omniscience +omnishiences->omnisciences +omnishients->omniscience +omnishints->omniscience +omnisience->omniscience +omnisiences->omnisciences omniverous->omnivorous omniverously->omnivorously omplementaion->implementation @@ -25814,7 +25882,15 @@ onliene->online onlly->only onlye->only onlyonce->only once +onmishience->omniscience +onmishiences->omnisciences +onmishients->omniscience +onmishints->omniscience +onmisience->omniscience +onmisiences->omnisciences onoly->only +onomanopea->onomatopoeia +onomonopea->onomatopoeia onot->note, not, onother->another ons->owns @@ -25836,6 +25912,7 @@ ontrolled->controlled onveience->convenience onw->own onwed->owned +onwee->ennui onwer->owner onwership->ownership onwing->owning @@ -25850,6 +25927,9 @@ opactiy->opacity opacy->opacity opague->opaque opatque->opaque +opayk->opaque +opaykely->opaquely +opaykes->opaques opbject->object opbjective->objective opbjects->objects @@ -25951,6 +26031,10 @@ opertors->operators opetional->optional ophan->orphan ophtalmology->ophthalmology +opinyon->opinion +opinyonated->opinionated +opinyonatedly->opinionatedly +opinyons->opinions opion->option opional->optional opionally->optionally @@ -26096,7 +26180,14 @@ opulate->populate, opiate, opulent, opulates->populates, opiates, opyion->option opyions->options +orangatang->orangutan +orangatangs->orangutans orcale->oracle +orcestrate->orchestrate +orcestrated->orchestrated +orcestrates->orchestrates +orcestrating->orchestrating +orcestrator->orchestrator orded->ordered orderd->ordered ordert->ordered @@ -26106,6 +26197,7 @@ orede->order oredes->orders oreding->ordering oredred->ordered +oregeno->oregano orfer->order, offer, orgamise->organise organim->organism @@ -26168,6 +26260,8 @@ oriant->orient oriantate->orientate oriantated->orientated oriantation->orientation +oricle->oracle +oricles->oracles oridinal->ordinal, original, oridinarily->ordinarily orieation->orientation @@ -26224,6 +26318,8 @@ orignially->originally origninal->original oringal->original oringally->originally +orkid->orchid +orkids->orchids orpan->orphan orpanage->orphanage orpaned->orphaned @@ -26244,12 +26340,18 @@ oscilate->oscillate oscilated->oscillated oscilating->oscillating oscilator->oscillator +oscillater->oscillator +oscillaters->oscillators oscilliscope->oscilloscope oscilliscopes->oscilloscopes osffset->offset osffsets->offsets osffsetting->offsetting osicllations->oscillations +osterage->ostrich +osterages->ostriches +ostridge->ostrich +ostridges->ostriches ot->to, of, or, not, otain->obtain otained->obtained @@ -26493,6 +26595,20 @@ overwritren->overwritten overwrittes->overwrites overwrittin->overwriting overwritting->overwriting +overzealis->overzealous +overzealisly->overzealously +overzealos->overzealous +overzealosly->overzealously +overzealus->overzealous +overzealusly->overzealously +overzelis->overzealous +overzelisly->overzealously +overzelos->overzealous +overzelosly->overzealously +overzelous->overzealous +overzelously->overzealously +overzelus->overzealous +overzelusly->overzealously ovewrite->overwrite ovewrites->overwrites ovewriting->overwriting From 61f5b3b73ad5c01178d2a6554502c3c6398566b8 Mon Sep 17 00:00:00 2001 From: Stefan Kangas Date: Wed, 28 Dec 2022 12:10:38 +0100 Subject: [PATCH 185/302] Update corrections from marvin.cs.uidaho.edu: O Updated 2022-12-28 --- 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 5bc54d808a..46bd0a3684 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -25610,6 +25610,7 @@ obvisous->obvious obvisously->obviously obyect->object obyekt->object +ocapella->a cappella ocasion->occasion ocasional->occasional ocasionally->occasionally @@ -25795,6 +25796,7 @@ oftenly->often ofter->often, offer, after, ofthe->of the ofthen->often, of then, +oger->ogre oging->going, ogling, oher->other, her, oherwise->otherwise @@ -26191,6 +26193,7 @@ orcestrator->orchestrator orded->ordered orderd->ordered ordert->ordered +orderves->hors d'oeuvre ording->ordering ordner->order orede->order From 68103b54d922543914ffa73dc4bae0338e28ae75 Mon Sep 17 00:00:00 2001 From: Stefan Kangas Date: Wed, 28 Dec 2022 12:04:40 +0100 Subject: [PATCH 186/302] Add variations of misspellings starting with O --- codespell_lib/data/dictionary.txt | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) diff --git a/codespell_lib/data/dictionary.txt b/codespell_lib/data/dictionary.txt index 46bd0a3684..0e6d726784 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -25498,7 +25498,11 @@ oakerously->ocherously oakery->ochery oaram->param obation->ovation +obations->ovations obay->obey +obayed->obeyed +obaying->obeying +obays->obeys obect->object obediance->obedience obediant->obedient @@ -25684,6 +25688,8 @@ ocilater->oscillator ocilaters->oscillators ocilates->oscillates ocilating->oscillating +ocilator->oscillator +ocilators->oscillators oclock->o'clock ocntext->context ocorrence->occurrence @@ -25797,6 +25803,8 @@ ofter->often, offer, after, ofthe->of the ofthen->often, of then, oger->ogre +ogerish->ogreish +ogers->ogres oging->going, ogling, oher->other, her, oherwise->otherwise @@ -25827,8 +25835,10 @@ olt->old olther->other oly->only omage->homage +omages->homages omaj->homage omaje->homage +omajes->homages omishience->omniscience omishiences->omnisciences omishients->omniscience @@ -26034,8 +26044,18 @@ opetional->optional ophan->orphan ophtalmology->ophthalmology opinyon->opinion +opinyonable->opinionable +opinyonaire->opinionnaire +opinyonal->opinional +opinyonate->opinionated opinyonated->opinionated opinyonatedly->opinionatedly +opinyonative->opinionative +opinyonator->opinionator +opinyonators->opinionators +opinyonist->opinionist +opinyonists->opinionists +opinyonnaire->opinionnaire opinyons->opinions opion->option opional->optional @@ -32804,6 +32824,7 @@ seletions->selections, deletions, selets->selects self-comparisson->self-comparison self-contianed->self-contained +self-opinyonated->self-opinionated self-referencial->self-referential self-refering->self-referring selfs->self From 4aee30baa86b6104b0550adbe5bbdfec1becb950 Mon Sep 17 00:00:00 2001 From: Stefan Kangas Date: Thu, 29 Dec 2022 11:50:31 +0100 Subject: [PATCH 187/302] Add suggestions from code review --- codespell_lib/data/dictionary.txt | 13 +++++++------ codespell_lib/data/dictionary_en-GB_to_en-US.txt | 1 + codespell_lib/data/dictionary_rare.txt | 2 ++ 3 files changed, 10 insertions(+), 6 deletions(-) diff --git a/codespell_lib/data/dictionary.txt b/codespell_lib/data/dictionary.txt index 0e6d726784..929a206d05 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -25490,7 +25490,7 @@ nuturing->nurturing nwe->new nwo->now o'caml->OCaml -oaker->ocher +oaker->ocher, oakier, oaken, baker, faker, laker, maker, taker, oakereous->ocherous oakereously->ocherously oakerous->ocherous @@ -25680,8 +25680,6 @@ occurrances->occurrences occurrencs->occurrences occurrs->occurs oce->once, one, ore, -ochreous->ocherous -ochry->ochery ocilate->oscillate ocilated->oscillated ocilater->oscillator @@ -25696,8 +25694,8 @@ ocorrence->occurrence ocorrences->occurrences octect->octet octects->octets -octive->octave -octives->octaves +octive->octave, active, +octives->octaves, actives, Octobor->October octohedra->octahedra octohedral->octahedral @@ -25836,7 +25834,7 @@ olther->other oly->only omage->homage omages->homages -omaj->homage +omaj->homage, Oman, omaje->homage omajes->homages omishience->omniscience @@ -25852,6 +25850,7 @@ omitt->omit omlet->omelet omlets->omelets omlette->omelette +omlettes->omelettes ommishience->omniscience ommishiences->omnisciences ommishients->omniscience @@ -26205,6 +26204,8 @@ opyions->options orangatang->orangutan orangatangs->orangutans orcale->oracle +orcestra->orchestra +orcestras->orchestras orcestrate->orchestrate orcestrated->orchestrated orcestrates->orchestrates 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 8f0b41e713..109222febc 100644 --- a/codespell_lib/data/dictionary_en-GB_to_en-US.txt +++ b/codespell_lib/data/dictionary_en-GB_to_en-US.txt @@ -253,6 +253,7 @@ normalise->normalize normalised->normalized normalises->normalizes normalising->normalizing +ochre->ocher optimisation->optimization optimisations->optimizations optimise->optimize diff --git a/codespell_lib/data/dictionary_rare.txt b/codespell_lib/data/dictionary_rare.txt index ee8628c9a0..4554c55360 100644 --- a/codespell_lib/data/dictionary_rare.txt +++ b/codespell_lib/data/dictionary_rare.txt @@ -1,4 +1,5 @@ ablet->able, tablet, +acapella->a cappella accreting->accrediting acter->actor acters->actors @@ -132,6 +133,7 @@ moue->mouse multistory->multistorey, multi-storey, nickle->nickel noes->nose, knows, nodes, does, +ochry->ochery, ochrey, oerflow->overflow oerflowed->overflowed oerflowing->overflowing From de58b7fd51fde578ec3d9e27aec788e992bbeb10 Mon Sep 17 00:00:00 2001 From: bl-ue Date: Mon, 14 Jun 2021 09:22:56 -0400 Subject: [PATCH 188/302] Typos from marvin.cs.uidaho.edu/mispell.html (rework of #1374): W Closes #1972 --- codespell_lib/data/dictionary.txt | 38 +++++++++++++++++++++++++++++++ 1 file changed, 38 insertions(+) diff --git a/codespell_lib/data/dictionary.txt b/codespell_lib/data/dictionary.txt index 929a206d05..d84b8cde66 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -39679,6 +39679,7 @@ weahter->weather weahters->weathers weant->want, wean, weaponary->weaponry +weappons->weapons weas->was webage->webpage webaserver->web server, webserver, @@ -39692,6 +39693,12 @@ wednesdaay->Wednesday wednesdey->Wednesday wednessday->Wednesday wednsday->Wednesday +weerd->weird +weerdly->weirdly +weev->weave +weeved->weaved, wove, +weeves->weaves +weeving->weaving wege->wedge wehere->where wehn->when @@ -39707,10 +39714,14 @@ weitght->weight wel->well well-reknown->well-renowned, well renown, well-reknowned->well-renowned, well renowned, +welp->whelp wendesday->Wednesday wendsay->Wednesday wendsday->Wednesday wensday->Wednesday +wepons->weapons +weppon->weapon +weppons->weapons were'nt->weren't wereabouts->whereabouts wereas->whereas @@ -39721,6 +39732,8 @@ wery->very, wary, weary, wesite->website wether->weather, whether, wew->we +wezzal->weasel +wezzals->weasels whan->want, when, whant->want whants->wants @@ -39796,6 +39809,7 @@ whn->when whne->when whoes->whose whoknows->who knows +wholely->wholly wholey->wholly wholy->wholly, holy, whoms->whom, whose, @@ -39860,11 +39874,15 @@ wikpedia->wikipedia wil->will, well, wilcard->wildcard wilcards->wildcards +wildebeast->wildebeest +wildebeasts->wildebeests wilh->will wille->will willingless->willingness willk->will willl->will +wimmen->women +wimmens->women windo->window windoes->windows windoow->window @@ -39889,6 +39907,12 @@ wirth->with, worth, wirting->writing wirtten->written wirtual->virtual +wiscle->whistle +wiscles->whistles +wisper->whisper +wispers->whispers +wissle->whistle +wissles->whistles witable->writeable witdh->width witdhs->widths @@ -39964,10 +39988,14 @@ wolrd->world wolrdly->worldly wolrdwide->worldwide wolwide->worldwide +womans->women womens->women's, women, won;t->won't +wonce->once wonderfull->wonderful wonderig->wondering +wonderous->wondrous +wonderously->wondrously wont't->won't woraround->workaround worarounds->workarounds @@ -40087,6 +40115,12 @@ wrapp->wrap wrappered->wrapped wrappng->wrapping wrapps->wraps +wressel->wrestle +wresseled->wrestled +wresseler->wrestler +wresselers->wrestlers +wresseling->wrestling +wressels->wrestles wresters->wrestlers wriet->write writebufer->writebuffer @@ -40122,6 +40156,10 @@ wronly->wrongly wront->wrong wrtie->write wrting->writing +wryth->writhe +wrythed->writhed +wrythes->writhes +wrything->writhing wsee->see wser->user wth->with From 364ef5a7aa8b0c21a26591b42108b19e47a2399d Mon Sep 17 00:00:00 2001 From: Stefan Kangas Date: Thu, 29 Dec 2022 12:39:37 +0100 Subject: [PATCH 189/302] Add variations of misspellings starting with W --- codespell_lib/data/dictionary.txt | 13 +++++++++++-- 1 file changed, 11 insertions(+), 2 deletions(-) diff --git a/codespell_lib/data/dictionary.txt b/codespell_lib/data/dictionary.txt index d84b8cde66..9de95df9b8 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -39679,6 +39679,7 @@ weahter->weather weahters->weathers weant->want, wean, weaponary->weaponry +weappon->weapon weappons->weapons weas->was webage->webpage @@ -39719,6 +39720,7 @@ wendesday->Wednesday wendsay->Wednesday wendsday->Wednesday wensday->Wednesday +wepon->weapon wepons->weapons weppon->weapon weppons->weapons @@ -39882,6 +39884,7 @@ willingless->willingness willk->will willl->will wimmen->women +wimmenly->womanly wimmens->women windo->window windoes->windows @@ -39908,11 +39911,17 @@ wirting->writing wirtten->written wirtual->virtual wiscle->whistle +wiscled->whistled wiscles->whistles +wiscling->whistling wisper->whisper +wispered->whispered +wispering->whispering wispers->whispers wissle->whistle +wissled->whistled wissles->whistles +wissling->whistling witable->writeable witdh->width witdhs->widths @@ -39988,10 +39997,10 @@ wolrd->world wolrdly->worldly wolrdwide->worldwide wolwide->worldwide -womans->women +womans->woman's, women, womens->women's, women, won;t->won't -wonce->once +wonce->once, nonce, ponce, wince, wonderfull->wonderful wonderig->wondering wonderous->wondrous From 076a661845437c688ab3db7545051f5fcd28b7ed Mon Sep 17 00:00:00 2001 From: Stefan Kangas Date: Tue, 3 Jan 2023 02:03:45 +0100 Subject: [PATCH 190/302] Typos from marvin.cs.uidaho.edu/mispell.html (rework of #1374): J Closes #1959 --- codespell_lib/data/dictionary.txt | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) diff --git a/codespell_lib/data/dictionary.txt b/codespell_lib/data/dictionary.txt index 9de95df9b8..cb37927376 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -21946,6 +21946,12 @@ jossle->jostle jouney->journey journied->journeyed journies->journeys +journing->journeying +journy->journey +journyed->journeyed +journyes->journeyed +journying->journeying +journys->journeys joystik->joystick jpin->join jpng->png, jpg, jpeg, @@ -21968,6 +21974,18 @@ juni->June jupyther->Jupyter juristiction->jurisdiction juristictions->jurisdictions +jurnal->journal +jurnaled->journaled +jurnaler->journaler +jurnales->journals +jurnaling->journaling +jurnals->journals +jurnied->journeyed +jurnies->journeys +jurny->journey +jurnyed->journeyed +jurnyes->journeys +jurnys->journeys jus->just juse->just, juice, Jude, June, justfied->justified From 487c58d24716c016e874873d95d1108fda7cb09c Mon Sep 17 00:00:00 2001 From: Stefan Kangas Date: Tue, 3 Jan 2023 02:05:49 +0100 Subject: [PATCH 191/302] `journyes->journeys, journeyed,` --- 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 cb37927376..6fc659a480 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -21949,7 +21949,7 @@ journies->journeys journing->journeying journy->journey journyed->journeyed -journyes->journeyed +journyes->journeys, journeyed, journying->journeying journys->journeys joystik->joystick From e144eabeea596ebeb58fd05c335f4a197c44d3fa Mon Sep 17 00:00:00 2001 From: bl-ue Date: Mon, 14 Jun 2021 09:22:31 -0400 Subject: [PATCH 192/302] Typos from marvin.cs.uidaho.edu/mispell.html (rework of #1374): V Closes #1971 --- codespell_lib/data/dictionary.txt | 88 +++++++++++++++++++++++++++++++ 1 file changed, 88 insertions(+) diff --git a/codespell_lib/data/dictionary.txt b/codespell_lib/data/dictionary.txt index 6fc659a480..55d5434f2c 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -38949,10 +38949,15 @@ vaalues->values vaccum->vacuum vaccume->vacuum vaccuum->vacuum +vacination->vaccination +vacinations->vaccinations vacinity->vicinity vactor->vector vactors->vectors +vacume->vacuum +vacumes->vacuums vacumme->vacuum +vacummes->vacuums vacuosly->vacuously vaelue->value, valued, vaelues->values @@ -38996,12 +39001,19 @@ valies->values valif->valid valitdity->validity valkues->values +vallay->valet +vallayed->valeted +vallaying->valeting +vallays->valets vallgrind->valgrind vallid->valid vallidation->validation vallidity->validity +vallies->valleys vallue->value vallues->values +vally->valley +vallys->valleys valsues->values valtage->voltage valtages->voltages @@ -39025,6 +39037,7 @@ valye->value, valse, valve, vanishs->vanishes varable->variable varables->variables +varagated->variegated varaiable->variable varaiables->variables varaiance->variance @@ -39035,6 +39048,8 @@ varaint->variant varaints->variants varation->variation varations->variations +varegated->variegated +vareigated->variegated variabble->variable variabbles->variables variabe->variable @@ -39075,7 +39090,10 @@ varient->variant varients->variants varierty->variety variey->variety +varification->verification +varifications->verifications varify->verify +varigated->variegated variing->varying varilue->variable, value, varilues->variables, values, @@ -39085,6 +39103,8 @@ varity->variety variuos->various variuous->various varius->various +varmit->varmint +varmits->varmints varn->warn varned->warned varning->warning @@ -39114,7 +39134,12 @@ vavle->valve vavlue->value vavriable->variable vavriables->variables +vawdville->vaudeville +vawdvillean->vaudevillian +vawdvillian->vaudevillian vbsrcript->vbscript +veamant->vehement +veamantly->vehemently vebrose->verbose vecotr->vector vecotrs->vectors @@ -39129,11 +39154,23 @@ vecvtors->vectors vedio->video vefiry->verify vegatarian->vegetarian +vegetarien->vegetarian +vegetariens->vegetarians +vegetarion->vegetarian +vegetarions->vegetarians vegeterian->vegetarian vegitable->vegetable vegitables->vegetables +vegitarian->vegetarian +vegitarians->vegetarians +vegitarien->vegetarian +vegitariens->vegetarians +vegitarion->vegetarian +vegitarions->vegetarians vegtable->vegetable vehicule->vehicle +veicle->vehicle +veicles->vehicles veify->verify veiw->view veiwed->viewed @@ -39153,6 +39190,14 @@ venders->vendors venemous->venomous vengance->vengeance vengence->vengeance +ventillate->ventilate +ventillated->ventilated +ventillates->ventilates +ventillating->ventilating +venyet->vignette +venyets->vignettes +veragated->variegated +verbage->verbiage verbaitm->verbatim verbatum->verbatim verboase->verbose @@ -39162,6 +39207,8 @@ verbously->verbosely verbse->verbose verctor->vector verctors->vectors +veregated->variegated +vereigated->variegated veresion->version veresions->versions verfication->verification @@ -39184,6 +39231,10 @@ verfy->verify verfying->verifying veriable->variable, veritable, veriables->variables +veriasion->variation +veriasions->variations +veriation->variation +veriations->variations verical->vertical verically->vertically verication->verification @@ -39205,6 +39256,7 @@ verifiying->verifying verifty->verify veriftying->verifying verifyied->verified +verigated->variegated verion->version verions->versions veriosn->version @@ -39220,7 +39272,9 @@ veritcal->vertical veritcally->vertically veritical->vertical verly->very +vermen->vermin vermillion->vermilion +vermuth->vermouth verndor->vendor verrical->vertical verry->very @@ -39241,8 +39295,10 @@ versionms->versions versionned->versioned versionning->versioning versios->versions +versital->versatile versitilaty->versatility versitile->versatile +versitle->versatile versitlity->versatility versoin->version versoion->version @@ -39250,6 +39306,7 @@ versoions->versions verson->version versoned->versioned versons->versions +vertabray->vertebrae vertextes->vertices vertexts->vertices vertial->vertical @@ -39279,11 +39336,15 @@ vesion->version vesions->versions vetex->vertex vetexes->vertices +vetinarian->veterinarian +vetinarians->veterinarians vetod->vetoed vetor->vector, veto, vetored->vectored, vetoed, vetoring->vectoring, vetoing, vetors->vectors, vetoes, +vetran->veteran +vetrans->veterans vetween->between vew->view veyr->very @@ -39295,6 +39356,10 @@ vice-wersa->vice-versa vicefersa->vice-versa viceversa->vice-versa vicewersa->vice-versa +victem->victim +victems->victims +victum->victim +victums->victims videostreamming->videostreaming viee->view viees->views @@ -39303,6 +39368,8 @@ vieports->viewports vietnamesea->Vietnamese viewtransfromation->viewtransformation vigeur->vigueur, vigour, vigor, +vigilanties->vigilantes +vigilanty->vigilante vigilence->vigilance vigourous->vigorous vill->will @@ -39310,8 +39377,14 @@ villian->villain villification->vilification villify->vilify villin->villi, villain, villein, +vinal->vinyl vincinity->vicinity +vinigar->vinegar +vinigarette->vinaigrette +vinigarettes->vinaigrettes vinrator->vibrator +vinyet->vignette +vinyets->vignettes vioalte->violate vioaltion->violation violentce->violence @@ -39319,6 +39392,7 @@ violoated->violated violoating->violating violoation->violation violoations->violations +viralence->virulence virtal->virtual virtalenv->virtualenv virtaul->virtual @@ -39358,6 +39432,14 @@ visbility->visibility visble->visible visblie->visible visbly->visibly +viseral->visceral +viserally->viscerally +visheate->vitiate +visheation->vitiation +visheator->vitiator +visheators->vitiators +vishus->vicious +vishusly->viciously visiable->visible visiably->visibly visibale->visible @@ -39455,6 +39537,8 @@ volcanoe->volcano volenteer->volunteer volenteered->volunteered volenteers->volunteers +volentier->volunteer +volentiers->volunteers voleyball->volleyball volontary->voluntary volonteer->volunteer @@ -39473,6 +39557,8 @@ volxels->voxels vonfig->config vould->would voxes->voxels, voxel, +voyouristic->voyeuristic +voyouristically->voyeuristically vreity->variety vresion->version vrey->very @@ -39595,6 +39681,8 @@ vulnreability->vulnerability vunerabilities->vulnerabilities vunerability->vulnerability vunerable->vulnerable +vunrability->vulnerability +vunrable->vulnerable vyer->very vyre->very waht->what From 86aadbaa524e334c56f6c3368670a19edc304296 Mon Sep 17 00:00:00 2001 From: Stefan Kangas Date: Thu, 29 Dec 2022 12:24:10 +0100 Subject: [PATCH 193/302] Update corrections from marvin.cs.uidaho.edu: V Updated 2022-12-29 --- 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 55d5434f2c..530ba6e049 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -38949,6 +38949,7 @@ vaalues->values vaccum->vacuum vaccume->vacuum vaccuum->vacuum +vacinate->vaccinate vacination->vaccination vacinations->vaccinations vacinity->vicinity @@ -39205,6 +39206,7 @@ verbous->verbose verbouse->verbose verbously->verbosely verbse->verbose +verchew->virtue verctor->vector verctors->vectors veregated->variegated @@ -39373,6 +39375,7 @@ vigilanty->vigilante vigilence->vigilance vigourous->vigorous vill->will +villan->villain villian->villain villification->vilification villify->vilify @@ -39492,6 +39495,7 @@ visuaized->visualized visuaizes->visualizes visuale->visual visuales->visuals +visualisation->visualization visualizaion->visualization visualizaiton->visualization visualizaitons->visualizations From a1124ef7776555af8fec1b310ed3d008d1366a28 Mon Sep 17 00:00:00 2001 From: Stefan Kangas Date: Thu, 29 Dec 2022 12:23:20 +0100 Subject: [PATCH 194/302] Add variations of misspellings starting with V --- codespell_lib/data/dictionary.txt | 27 ++++++++++++++++++++++++++- 1 file changed, 26 insertions(+), 1 deletion(-) diff --git a/codespell_lib/data/dictionary.txt b/codespell_lib/data/dictionary.txt index 530ba6e049..d4c0de2923 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -38950,15 +38950,24 @@ vaccum->vacuum vaccume->vacuum vaccuum->vacuum vacinate->vaccinate +vacinated->vaccinated +vacinates->vaccinates +vacinating->vaccinating vacination->vaccination vacinations->vaccinations +vacine->vaccine +vacines->vaccines vacinity->vicinity vactor->vector vactors->vectors vacume->vacuum +vacumed->vacuumed +vacumeed->vacuumed vacumes->vacuums +vacuming->vacuuming vacumme->vacuum vacummes->vacuums +vacums->vacuums vacuosly->vacuously vaelue->value, valued, vaelues->values @@ -39093,6 +39102,7 @@ varierty->variety variey->variety varification->verification varifications->verifications +varified->verified varify->verify varigated->variegated variing->varying @@ -39207,6 +39217,7 @@ verbouse->verbose verbously->verbosely verbse->verbose verchew->virtue +verchews->virtues verctor->vector verctors->vectors veregated->variegated @@ -39308,7 +39319,9 @@ versoions->versions verson->version versoned->versioned versons->versions +vertabraes->vertebraes vertabray->vertebrae +vertabrays->vertebraes vertextes->vertices vertexts->vertices vertial->vertical @@ -39359,6 +39372,10 @@ vicefersa->vice-versa viceversa->vice-versa vicewersa->vice-versa victem->victim +victemize->victimize +victemized->victimized +victemizes->victimizes +victemizing->victimizing victems->victims victum->victim victums->victims @@ -39376,11 +39393,14 @@ vigilence->vigilance vigourous->vigorous vill->will villan->villain +villans->villains villian->villain +villians->villains villification->vilification villify->vilify villin->villi, villain, villein, vinal->vinyl +vinals->vinyls vincinity->vicinity vinigar->vinegar vinigarette->vinaigrette @@ -39396,6 +39416,7 @@ violoating->violating violoation->violation violoations->violations viralence->virulence +viralently->virulently virtal->virtual virtalenv->virtualenv virtaul->virtual @@ -39495,7 +39516,6 @@ visuaized->visualized visuaizes->visualizes visuale->visual visuales->visuals -visualisation->visualization visualizaion->visualization visualizaiton->visualization visualizaitons->visualizations @@ -39542,6 +39562,8 @@ volenteer->volunteer volenteered->volunteered volenteers->volunteers volentier->volunteer +volentiered->volunteered +volentiering->volunteering volentiers->volunteers voleyball->volleyball volontary->voluntary @@ -39561,8 +39583,10 @@ volxels->voxels vonfig->config vould->would voxes->voxels, voxel, +voyour->voyeur voyouristic->voyeuristic voyouristically->voyeuristically +voyours->voyeurs vreity->variety vresion->version vrey->very @@ -39685,6 +39709,7 @@ vulnreability->vulnerability vunerabilities->vulnerabilities vunerability->vulnerability vunerable->vulnerable +vunrabilities->vulnerabilities vunrability->vulnerability vunrable->vulnerable vyer->very From c8011bedff85417c911b00887135a0b4c1bd50fe Mon Sep 17 00:00:00 2001 From: Stefan Kangas Date: Tue, 3 Jan 2023 01:59:57 +0100 Subject: [PATCH 195/302] Apply suggestions from code review --- codespell_lib/data/dictionary.txt | 8 ++++---- codespell_lib/data/dictionary_rare.txt | 2 ++ 2 files changed, 6 insertions(+), 4 deletions(-) diff --git a/codespell_lib/data/dictionary.txt b/codespell_lib/data/dictionary.txt index d4c0de2923..4e4a692ccd 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -39011,10 +39011,10 @@ valies->values valif->valid valitdity->validity valkues->values -vallay->valet +vallay->valet, valley, vallayed->valeted vallaying->valeting -vallays->valets +vallays->valets, valleys, vallgrind->valgrind vallid->valid vallidation->validation @@ -39103,7 +39103,9 @@ variey->variety varification->verification varifications->verifications varified->verified +varifies->verifies varify->verify +varifying->verifying varigated->variegated variing->varying varilue->variable, value, @@ -39399,8 +39401,6 @@ villians->villains villification->vilification villify->vilify villin->villi, villain, villein, -vinal->vinyl -vinals->vinyls vincinity->vicinity vinigar->vinegar vinigarette->vinaigrette diff --git a/codespell_lib/data/dictionary_rare.txt b/codespell_lib/data/dictionary_rare.txt index 4554c55360..ec76162060 100644 --- a/codespell_lib/data/dictionary_rare.txt +++ b/codespell_lib/data/dictionary_rare.txt @@ -210,6 +210,8 @@ unsecure->insecure untypically->atypically vertexes->vertices vie->via +vinal->vinyl +vinals->vinyls vise->vice want's->wants wee->we From 78cb5df9fb88ca4f34c80eca835637b4886c4af1 Mon Sep 17 00:00:00 2001 From: Dimitri Papadopoulos Orfanos <3234522+DimitriPapadopoulos@users.noreply.github.com> Date: Tue, 3 Jan 2023 19:08:52 +0100 Subject: [PATCH 196/302] usable / useable: force recommended spelling (#2694) --- 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 4e4a692ccd..b4ee91b3d5 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -32059,6 +32059,7 @@ reuqesting->requesting reuqests->requests reurn->return reursively->recursively +reuseable->reusable reuslt->result reussing->reusing reutnred->returned From 6a2e627f65345e54175891289b732fdba2bb50aa Mon Sep 17 00:00:00 2001 From: bl-ue Date: Mon, 14 Jun 2021 09:15:08 -0400 Subject: [PATCH 197/302] Typos from marvin.cs.uidaho.edu/mispell.html (rework of #1374): N Closes #1963 --- codespell_lib/data/dictionary.txt | 112 ++++++++++++++++++++++++++++++ 1 file changed, 112 insertions(+) diff --git a/codespell_lib/data/dictionary.txt b/codespell_lib/data/dictionary.txt index b4ee91b3d5..97f7fd50c1 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -24522,6 +24522,16 @@ nagative->negative nagatively->negatively nagatives->negatives nagivation->navigation +naibhor->neighbor +naibhorhood->neighborhood +naibhorhoods->neighborhoods +naibhorly->neighborly +naibhors->neighbors +naibor->neighbor +naiborhood->neighborhood +naiborhoods->neighborhoods +naiborly->neighborly +naibors->neighbors naieve->naive naivity->naivety nam->name @@ -24558,11 +24568,40 @@ nanoseonds->nanoseconds Naploeon->Napoleon Napolean->Napoleon Napoleonian->Napoleonic +napom->napalm +napomed->napalmed +napomes->napalmes +napoming->napalming +napommed->napalmed +napommes->napalmes +napomming->napalming +narl->gnarl +narled->gnarled +narling->gnarling +narls->gnarls +narly->gnarly nast->nest, mast, nasty, +nastalgea->nostalgia nasted->nested +nastershem->nasturtium +nastershems->nasturtiums +nastershum->nasturtium +nastershums->nasturtiums +nastersiem->nasturtium +nastersiems->nasturtiums +nastersium->nasturtium +nastersiums->nasturtiums +nastertiem->nasturtium +nastertiems->nasturtiums +nastertium->nasturtium +nastertiums->nasturtiums nasting->nesting nastly->nasty nasts->nests, masts, +nasturshem->nasturtium +nasturshems->nasturtiums +nasturshum->nasturtium +nasturshums->nasturtiums nastyness->nastiness natched->matched natches->matches @@ -24587,10 +24626,26 @@ naviagtion->navigation navitvely->natively navtive->native navtives->natives +nawsea->nausea +nawseous->nauseous +nawseously->nauseously +nawshea->nausea +nawshus->nauseous +nawshusly->nauseously nax->max, nad, naxima->maxima naximal->maximal naximum->maximum +naybhor->neighbor +naybhorhood->neighborhood +naybhorhoods->neighborhoods +naybhorly->neighborly +naybhors->neighbors +naybor->neighbor +nayborhood->neighborhood +nayborhoods->neighborhoods +nayborly->neighborly +naybors->neighbors Nazereth->Nazareth nce->once, nice, nclude->include @@ -24631,6 +24686,8 @@ necesary->necessary necessaery->necessary necessairly->necessarily necessar->necessary +necessarally->necessarily +necessaraly->necessarily necessarilly->necessarily necessarilyn->necessarily necessariy->necessary, necessarily, @@ -24673,6 +24730,7 @@ neesds->needs neested->nested neesting->nesting neet->need, neat, +neether->neither negaive->negative negarive->negative negatiotiable->negotiable @@ -25112,6 +25170,12 @@ neiter->neither nelink->netlink nenviroment->environment neolitic->neolithic +neral->neural +nerally->neurally +neraly->neurally +nerative->narrative +neratives->narratives +nervana->nirvana nerver->never nescesaries->necessaries nescesarily->necessarily @@ -25133,7 +25197,15 @@ nessesarily->necessarily nessesary->necessary nessessarily->necessarily nessessary->necessary +nestalgia->nostalgia +nestalgic->nostalgic +nestalgically->nostalgically +nestalgicly->nostalgically nestin->nesting +nestolgia->nostalgia +nestolgic->nostalgic +nestolgically->nostalgically +nestolgicly->nostalgically nestwork->network netacpe->netscape netcape->netscape @@ -25149,17 +25221,31 @@ netwroked->networked netwroks->networks netwrork->network neumeric->numeric +neumonic->mnemonic +neumonically->mnemonically +neumonicly->mnemonically +neumonics->mnemonics nevelope->envelope nevelopes->envelopes nevere->never neveretheless->nevertheless nevers->never neverthless->nevertheless +newance->nuance +newanced->nuanced +newances->nuances +newancing->nuancing newine->newline newines->newlines newletters->newsletters +newmatic->pneumatic +newmatically->pneumatically +newmaticly->pneumatically +newmonia->pneumonia nework->network neworks->networks +newsans->nuisance +newsanses->nuisances newslines->newlines newthon->newton newtork->network @@ -25168,13 +25254,26 @@ nexting->nesting, texting, niear->near niearest->nearest niether->neither +nieve->naive +nieveatay->naivete +nievely->naively +nife->knife +nifes->knives nighbor->neighbor nighborhood->neighborhood nighboring->neighboring nighlties->nightlies nighlty->nightly nightfa;;->nightfall +nighther->neither nightime->nighttime +nihther->neither +nimph->nymph +nimphal->nymphal +nimphean->nymphean +nimphian->nymphean +nimphlike->nymphlike +nimphs->nymphs nimutes->minutes nin->inn, min, bin, nine, nineth->ninth @@ -25188,6 +25287,7 @@ ninty->ninety, minty, nither->neither nitification->notification nitifications->notifications +nives->knives nknown->unknown nkow->know nkwo->know @@ -25341,6 +25441,10 @@ northereastern->northeastern nortification->notification nortifications->notifications nortmally->normally +nostolgia->nostalgia +nostolgic->nostalgic +nostolgically->nostalgically +nostolgicly->nostalgically notabley->notably notaion->notation notaly->notably @@ -25421,6 +25525,8 @@ notning->nothing notod->noted notofocation->notification notofocations->notifications +notoreous->notorious +notoreously->notoriously notse->notes, note, nott->not nottaion->notation @@ -25448,7 +25554,9 @@ nubmers->numbers nucleous->nucleus, nucleolus, nucular->nuclear nuculear->nuclear +nuisans->nuisance nuisanse->nuisance +nuisanses->nuisance nuissance->nuisance nulk->null null-termined->null-terminated @@ -25502,6 +25610,10 @@ nunber->number nunbers->numbers Nuremburg->Nuremberg nusance->nuisance +nutral->neutral +nutrally->neutrally +nutraly->neutrally +nutrieous->nutritious nutritent->nutrient nutritents->nutrients nuturing->nurturing From af1ebce632b20c5b85bba4e3f98b0da278550c68 Mon Sep 17 00:00:00 2001 From: Stefan Kangas Date: Wed, 28 Dec 2022 11:46:20 +0100 Subject: [PATCH 198/302] Update corrections from marvin.cs.uidaho.edu: N Updated 2022-12-28 --- 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 97f7fd50c1..7a04cf2d94 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -25284,6 +25284,7 @@ ninjs->ninja ninteenth->nineteenth ninties->nineties, 1990s, ninty->ninety, minty, +nitch->niche nither->neither nitification->notification nitifications->notifications @@ -25295,6 +25296,7 @@ nmae->name nmme->name nned->need nneeded->needed +nnovisheate->novitiate nnumber->number no-overide->no-override nodel->model, nodal, @@ -25312,6 +25314,7 @@ nomber->number nombered->numbered nombering->numbering nombers->numbers +nome->gnome nomimal->nominal nomralization->normalization non-alphanumunder->non-alphanumeric @@ -25536,6 +25539,7 @@ noveau->nouveau novemeber->November Novemer->November Novermber->November +novisheut->novitiate nowadys->nowadays nowdays->nowadays nowe->now @@ -25609,6 +25613,7 @@ numvers->numbers nunber->number nunbers->numbers Nuremburg->Nuremberg +nurishment->nourishment nusance->nuisance nutral->neutral nutrally->neutrally From f8131702adc7933e7bff9dac185f15dfa12f4482 Mon Sep 17 00:00:00 2001 From: Stefan Kangas Date: Wed, 28 Dec 2022 11:42:46 +0100 Subject: [PATCH 199/302] Add variations of misspellings starting with N --- codespell_lib/data/dictionary.txt | 52 +++++++++++++++++++++----- codespell_lib/data/dictionary_rare.txt | 1 + 2 files changed, 44 insertions(+), 9 deletions(-) diff --git a/codespell_lib/data/dictionary.txt b/codespell_lib/data/dictionary.txt index 7a04cf2d94..02bae5a683 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -24570,11 +24570,13 @@ Napolean->Napoleon Napoleonian->Napoleonic napom->napalm napomed->napalmed -napomes->napalmes +napomes->napalms napoming->napalming napommed->napalmed -napommes->napalmes +napommes->napalms napomming->napalming +napomms->napalms +napoms->napalms narl->gnarl narled->gnarled narling->gnarling @@ -24630,6 +24632,8 @@ nawsea->nausea nawseous->nauseous nawseously->nauseously nawshea->nausea +nawshes->nauseous +nawshesly->nauseously nawshus->nauseous nawshusly->nauseously nax->max, nad, @@ -25173,9 +25177,11 @@ neolitic->neolithic neral->neural nerally->neurally neraly->neurally -nerative->narrative -neratives->narratives +nerative->narrative, negative, +neratively->narratively, negatively, +neratives->narratives, negatives, nervana->nirvana +nervanic->nirvanic nerver->never nescesaries->necessaries nescesarily->necessarily @@ -25221,12 +25227,20 @@ netwroked->networked netwroks->networks netwrork->network neumeric->numeric -neumonic->mnemonic +neumonectomies->pneumonectomies +neumonectomy->pneumonectomy +neumonia->pneumonia +neumonic->mnemonic, pneumonic, neumonically->mnemonically neumonicly->mnemonically neumonics->mnemonics -nevelope->envelope +neumonitis->pneumonitis +nevelop->envelop +nevelope->envelope, envelop, +neveloped->enveloped nevelopes->envelopes +neveloping->enveloping +nevelops->envelops nevere->never neveretheless->nevertheless nevers->never @@ -25241,7 +25255,11 @@ newletters->newsletters newmatic->pneumatic newmatically->pneumatically newmaticly->pneumatically +newmonectomies->pneumonectomies +newmonectomy->pneumonectomy newmonia->pneumonia +newmonic->pneumonic +newmonitis->pneumonitis nework->network neworks->networks newsans->nuisance @@ -25273,22 +25291,33 @@ nimphal->nymphal nimphean->nymphean nimphian->nymphean nimphlike->nymphlike +nimpho->nympho +nimphomania->nymphomania +nimphomaniac->nymphomaniac +nimphomaniacs->nymphomaniacs +nimphos->nymphos nimphs->nymphs +nimute->minute nimutes->minutes nin->inn, min, bin, nine, nineth->ninth ninima->minima ninimal->minimal +ninimally->minimally ninimum->minimum -ninjs->ninja +ninj->ninja +ninjs->ninja, ninjas, ninteenth->nineteenth ninties->nineties, 1990s, ninty->ninety, minty, nitch->niche +nitched->niched +nitches->niches +nitching->niching nither->neither nitification->notification nitifications->notifications -nives->knives +nives->knives, nieves, nines, dives, fives, hives, wives, nknown->unknown nkow->know nkwo->know @@ -25314,7 +25343,7 @@ nomber->number nombered->numbered nombering->numbering nombers->numbers -nome->gnome +nomes->gnomes nomimal->nominal nomralization->normalization non-alphanumunder->non-alphanumeric @@ -25613,6 +25642,11 @@ numvers->numbers nunber->number nunbers->numbers Nuremburg->Nuremberg +nurish->nourish +nurished->nourished +nurisher->nourisher +nurishes->nourishes +nurishing->nourishing nurishment->nourishment nusance->nuisance nutral->neutral diff --git a/codespell_lib/data/dictionary_rare.txt b/codespell_lib/data/dictionary_rare.txt index ec76162060..e3cdd48135 100644 --- a/codespell_lib/data/dictionary_rare.txt +++ b/codespell_lib/data/dictionary_rare.txt @@ -133,6 +133,7 @@ moue->mouse multistory->multistorey, multi-storey, nickle->nickel noes->nose, knows, nodes, does, +nome->gnome ochry->ochery, ochrey, oerflow->overflow oerflowed->overflowed From bec2b9ba4e01cf0956ee9dcd74d85dd8e5958c4a Mon Sep 17 00:00:00 2001 From: Stefan Kangas Date: Thu, 29 Dec 2022 11:03:18 +0100 Subject: [PATCH 200/302] Add suggestions from code review --- codespell_lib/data/dictionary.txt | 39 +++++++++++++++++++------------ 1 file changed, 24 insertions(+), 15 deletions(-) diff --git a/codespell_lib/data/dictionary.txt b/codespell_lib/data/dictionary.txt index 02bae5a683..d4691b8246 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -24522,16 +24522,16 @@ nagative->negative nagatively->negatively nagatives->negatives nagivation->navigation -naibhor->neighbor -naibhorhood->neighborhood -naibhorhoods->neighborhoods -naibhorly->neighborly -naibhors->neighbors -naibor->neighbor -naiborhood->neighborhood -naiborhoods->neighborhoods -naiborly->neighborly -naibors->neighbors +naibhor->neighbor, neighbour, +naibhorhood->neighborhood, neighbourhood, +naibhorhoods->neighborhoods, neighbourhoods, +naibhorly->neighborly, neighbourly, +naibhors->neighbors, neighbour, +naibor->neighbor, neighbour, +naiborhood->neighborhood, neighbourhood, +naiborhoods->neighborhoods, neighbourhoods, +naiborly->neighborly, neighbourly, +naibors->neighbors, neighbours, naieve->naive naivity->naivety nam->name @@ -24577,10 +24577,10 @@ napommes->napalms napomming->napalming napomms->napalms napoms->napalms -narl->gnarl -narled->gnarled -narling->gnarling -narls->gnarls +narl->gnarl, snarl, earl, farl, marl, nail, nark, nary, +narled->gnarled, snarled, nailed, narked, +narling->gnarling, snarling, nailing, narking, +narls->gnarls, snarls, earls, farls, marls, nails, narks, narly->gnarly nast->nest, mast, nasty, nastalgea->nostalgia @@ -24650,6 +24650,11 @@ nayborhood->neighborhood nayborhoods->neighborhoods nayborly->neighborly naybors->neighbors +naybour->neighbour +naybourhood->neighbourhood +naybourhoods->neighbourhoods +naybourly->neighbourly +naybours->neighbours Nazereth->Nazareth nce->once, nice, nclude->include @@ -25326,6 +25331,7 @@ nmme->name nned->need nneeded->needed nnovisheate->novitiate +nnovisheates->novitiates nnumber->number no-overide->no-override nodel->model, nodal, @@ -25568,7 +25574,10 @@ noveau->nouveau novemeber->November Novemer->November Novermber->November +novisheate->novitiate +novisheates->novitiates novisheut->novitiate +novisheuts->novitiates nowadys->nowadays nowdays->nowadays nowe->now @@ -25589,7 +25598,7 @@ nucular->nuclear nuculear->nuclear nuisans->nuisance nuisanse->nuisance -nuisanses->nuisance +nuisanses->nuisance, nuisances, nuissance->nuisance nulk->null null-termined->null-terminated From 2b61dd34c409e7d23cd418f1494c8e38d49a6747 Mon Sep 17 00:00:00 2001 From: bl-ue Date: Mon, 14 Jun 2021 09:22:00 -0400 Subject: [PATCH 201/302] Typos from marvin.cs.uidaho.edu/mispell.html (rework of #1374): U Closes #1970 --- codespell_lib/data/dictionary.txt | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) diff --git a/codespell_lib/data/dictionary.txt b/codespell_lib/data/dictionary.txt index d4691b8246..2b2e9116b1 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -37969,7 +37969,19 @@ unambigous->unambiguous unambigously->unambiguously unamed->unnamed unanimuous->unanimous +unanimuously->unanimously +unannimous->unanimous +unannimously->unanimously +unannomous->unanimous +unannomously->unanimously +unannomus->unanimous +unannomusly->unanimously +unanomous->unanimous +unanomously->unanimously +unanomus->unanimous +unanomusly->unanimously unanymous->unanimous +unanymously->unanimously unappretiated->unappreciated unappretiative->unappreciative unapprieciated->unappreciated @@ -38205,6 +38217,7 @@ undorder->unorder undordered->unordered undoubtely->undoubtedly undreground->underground +unduely->unduly undupplicated->unduplicated uneccesary->unnecessary uneccessarily->unnecessarily @@ -38321,6 +38334,8 @@ unhilighted->unhighlighted unhilights->unhighlights Unicde->Unicode unich->unix +unick->eunuch, unix, +unicks->eunuchs unidentifiedly->unidentified unidimensionnal->unidimensional unifform->uniform @@ -38447,6 +38462,7 @@ unkonwns->unknowns unkown->unknown unkowns->unknowns unkwown->unknown +unlabled->unlabeled unlcear->unclear unleess->unless, unleash, unles->unless From 403978e0948b61a2cc7d27622c1567d9cbdf94d7 Mon Sep 17 00:00:00 2001 From: Stefan Kangas Date: Tue, 3 Jan 2023 01:56:36 +0100 Subject: [PATCH 202/302] Add variations for `labeled`/`labelled` --- 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 2b2e9116b1..a0268c01e3 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -22174,9 +22174,9 @@ kyeboshing->kiboshing kyrillic->cyrillic labatory->lavatory, laboratory, labbel->label -labbeled->labeled +labbeled->labeled, labelled, labbels->labels -labed->labeled +labed->labeled, labelled, labeld->labelled labirinth->labyrinth lable->label @@ -38462,7 +38462,7 @@ unkonwns->unknowns unkown->unknown unkowns->unknowns unkwown->unknown -unlabled->unlabeled +unlabled->unlabeled, unlabelled, unlcear->unclear unleess->unless, unleash, unles->unless From 8a89552ae24b05f30c606d1e36842664f6c25965 Mon Sep 17 00:00:00 2001 From: bl-ue Date: Mon, 14 Jun 2021 09:18:33 -0400 Subject: [PATCH 203/302] Typos from marvin.cs.uidaho.edu/mispell.html (rework of #1374): Q Closes #1966 --- codespell_lib/data/dictionary.txt | 27 +++++++++++++++++++++++++++ 1 file changed, 27 insertions(+) diff --git a/codespell_lib/data/dictionary.txt b/codespell_lib/data/dictionary.txt index a0268c01e3..782a25603a 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -29597,13 +29597,21 @@ qouting->quoting qtuie->quite, quiet, quadddec->quaddec quadranle->quadrangle +quadraped->quadruped +quadrapeds->quadrupeds +quadroople->quadruple +quadrooples->quadruples +quafeur->coiffure +quafeured->coiffured quailified->qualified qualfied->qualified qualfy->qualify qualifer->qualifier qualitification->qualification qualitifications->qualifications +quanities->quantities quanitified->quantified +quanity->quantity quanlification->qualification, quantification, quanlified->qualified, quantified, quanlifies->qualifies, quantifies, @@ -29639,6 +29647,8 @@ querry->query, quarry, queryies->queries queryinterace->queryinterface querys->queries +quesant->croissant +quesants->croissants queset->quest quesets->quests quesiton->question @@ -29647,7 +29657,11 @@ quesitons->questions quesr->quest quesrs->quests quess->guess, quests, +quessant->croissant +quessants->croissants questionaire->questionnaire +questionare->questionnaire +questionares->questionnaires questionnair->questionnaire questoin->question questoins->questions @@ -29666,12 +29680,17 @@ quiest->quest, quiet, quiests->quests quikc->quick quinessential->quintessential +quire->choir +quires->choirs quitely->quite, quietly, quith->quit, with, quiting->quitting quitt->quit quitted->quit quizes->quizzes +quizs->quizzes +quizzs->quizzes +quoshant->quotient quotaion->quotation quoteed->quoted quotent->quotient @@ -29681,6 +29700,14 @@ quroum->quorum qust->quest qusts->quests qutie->quite, quiet, +quwesant->croissant +quwesants->croissants +quwessant->croissant +quwessants->croissants +qwesant->croissant +qwesants->croissants +qwessant->croissant +qwessants->croissants rabinnical->rabbinical racaus->raucous ractise->practise From fe8ad558e5c9cfb28200b504ff0a0210fb650e7a Mon Sep 17 00:00:00 2001 From: bl-ue Date: Mon, 14 Jun 2021 09:39:07 -0400 Subject: [PATCH 204/302] Move quire(s) to rare --- codespell_lib/data/dictionary.txt | 2 -- 1 file changed, 2 deletions(-) diff --git a/codespell_lib/data/dictionary.txt b/codespell_lib/data/dictionary.txt index 782a25603a..f3688b05d1 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -29680,8 +29680,6 @@ quiest->quest, quiet, quiests->quests quikc->quick quinessential->quintessential -quire->choir -quires->choirs quitely->quite, quietly, quith->quit, with, quiting->quitting From 4bff92933332ed7f0b29071599834707fd698740 Mon Sep 17 00:00:00 2001 From: Stefan Kangas Date: Wed, 28 Dec 2022 17:34:26 +0100 Subject: [PATCH 205/302] Add variations of misspellings starting with Q --- 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 f3688b05d1..00b17743f9 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -29598,9 +29598,12 @@ qtuie->quite, quiet, quadddec->quaddec quadranle->quadrangle quadraped->quadruped +quadrapedal->quadrupedal quadrapeds->quadrupeds quadroople->quadruple +quadroopled->quadrupled quadrooples->quadruples +quadroopling->quadrupling quafeur->coiffure quafeured->coiffured quailified->qualified @@ -29689,7 +29692,9 @@ quizes->quizzes quizs->quizzes quizzs->quizzes quoshant->quotient +quoshants->quotients quotaion->quotation +quotaions->quotations quoteed->quoted quotent->quotient quottes->quotes From 031f439f5ecb2435b8f0080f7c8006b7ee1e1538 Mon Sep 17 00:00:00 2001 From: cconverse711 Date: Thu, 1 Sep 2022 01:01:04 -0400 Subject: [PATCH 206/302] add spelling corrections from wikipedia corpus * based on https://www.dcs.bbk.ac.uk/~roger/wikipedia.dat --- codespell_lib/data/dictionary.txt | 2 ++ codespell_lib/data/dictionary_en-GB_to_en-US.txt | 3 +++ codespell_lib/data/dictionary_rare.txt | 3 +++ 3 files changed, 8 insertions(+) diff --git a/codespell_lib/data/dictionary.txt b/codespell_lib/data/dictionary.txt index 00b17743f9..35132ebe21 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -32794,6 +32794,7 @@ scriopts->scripts scriopttype->scripttype scripe->script, scribe, scrape, scrip, stripe, scriping->scripting +scripot->script scripst->scripts scripte->script, scripted, scriptype->scripttype @@ -40511,6 +40512,7 @@ wryth->writhe wrythed->writhed wrythes->writhes wrything->writhing +ws->was wsee->see wser->user wth->with 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 109222febc..1c08146f4d 100644 --- a/codespell_lib/data/dictionary_en-GB_to_en-US.txt +++ b/codespell_lib/data/dictionary_en-GB_to_en-US.txt @@ -67,6 +67,7 @@ characterises->characterizes characterising->characterizing cognisant->cognizant colour->color +colouration->coloration coloured->colored colourful->colorful colourfully->colorfully @@ -117,6 +118,8 @@ emphasise->emphasize emphasised->emphasized emphasises->emphasizes emphasising->emphasizing +enamour->enamor +enamoured->enamored endeavour->endeavor endeavoured->endeavored endeavouring->endeavoring diff --git a/codespell_lib/data/dictionary_rare.txt b/codespell_lib/data/dictionary_rare.txt index e3cdd48135..99da7389f2 100644 --- a/codespell_lib/data/dictionary_rare.txt +++ b/codespell_lib/data/dictionary_rare.txt @@ -91,6 +91,8 @@ girds->grids guarantied->guaranteed guerilla->guerrilla guerillas->guerrillas +habitant->inhabitant +habitants->inhabitants hart->heart, harm, heterogenous->heterogeneous hided->hidden, hid, @@ -111,6 +113,7 @@ lama->llama lamas->llamas leaded->led, lead, leas->least, lease, +lief->leaf, life, lightening->lightning, lighting, loafing->loading loath->loathe From 8c69834849a610a827f0675d83ad376b8f188015 Mon Sep 17 00:00:00 2001 From: Dimitri Papadopoulos Orfanos <3234522+DimitriPapadopoulos@users.noreply.github.com> Date: Fri, 25 Nov 2022 17:57:44 +0100 Subject: [PATCH 207/302] Add suggestions from reviews --- codespell_lib/data/dictionary.txt | 3 +++ codespell_lib/data/dictionary_en-GB_to_en-US.txt | 2 ++ 2 files changed, 5 insertions(+) diff --git a/codespell_lib/data/dictionary.txt b/codespell_lib/data/dictionary.txt index 35132ebe21..a3b66c1b5a 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -32795,6 +32795,9 @@ scriopttype->scripttype scripe->script, scribe, scrape, scrip, stripe, scriping->scripting scripot->script +scripoted->scripted +scripoting->scripting +scripots->scripts scripst->scripts scripte->script, scripted, scriptype->scripttype 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 1c08146f4d..4a6245a643 100644 --- a/codespell_lib/data/dictionary_en-GB_to_en-US.txt +++ b/codespell_lib/data/dictionary_en-GB_to_en-US.txt @@ -120,6 +120,8 @@ emphasises->emphasizes emphasising->emphasizing enamour->enamor enamoured->enamored +enamouring->enamoring +enamours->enamors endeavour->endeavor endeavoured->endeavored endeavouring->endeavoring From ffeb930eb191ab5ecd3874eea840b98978793fda Mon Sep 17 00:00:00 2001 From: Stefan Kangas Date: Wed, 4 Jan 2023 11:12:09 +0100 Subject: [PATCH 208/302] Move `ws->was` to code dictionary --- codespell_lib/data/dictionary.txt | 1 - codespell_lib/data/dictionary_code.txt | 1 + 2 files changed, 1 insertion(+), 1 deletion(-) diff --git a/codespell_lib/data/dictionary.txt b/codespell_lib/data/dictionary.txt index a3b66c1b5a..e8f7f3c9a9 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -40515,7 +40515,6 @@ wryth->writhe wrythed->writhed wrythes->writhes wrything->writhing -ws->was wsee->see wser->user wth->with diff --git a/codespell_lib/data/dictionary_code.txt b/codespell_lib/data/dictionary_code.txt index e60764728d..8f3c234473 100644 --- a/codespell_lib/data/dictionary_code.txt +++ b/codespell_lib/data/dictionary_code.txt @@ -87,4 +87,5 @@ wan->want warmup->warm up, warm-up, were'->we're whome->whom +ws->was yesterdays->yesterday's From 049e309a806883458b5d39181f1ea5873a6ac159 Mon Sep 17 00:00:00 2001 From: bl-ue Date: Mon, 14 Jun 2021 09:21:33 -0400 Subject: [PATCH 209/302] Typos from marvin.cs.uidaho.edu/mispell.html (rework of #1374): T Closes #1969 --- codespell_lib/data/dictionary.txt | 73 +++++++++++++++++++++++++++++++ 1 file changed, 73 insertions(+) diff --git a/codespell_lib/data/dictionary.txt b/codespell_lib/data/dictionary.txt index e8f7f3c9a9..86d6aad6c2 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -36438,6 +36438,10 @@ teahers->teachers teamplate->template teamplates->templates teated->treated +teatotaler->teetotaler +teatotalers->teetotalers +teatotler->teetotaler +teatotlers->teetotalers teched->taught techer->teacher techers->teachers @@ -36477,6 +36481,8 @@ tecnicians->technicians tecnique->technique tecniques->techniques tedeous->tedious +teetotler->teetotaler +teetotlers->teetotalers tefine->define teh->the tehnically->technically @@ -37174,6 +37180,7 @@ toolsbox->toolbox toom->tomb tooo->todo, too, tool, took, toos->tools +Toosday->Tuesday tootonic->teutonic topicaizer->topicalizer topologie->topology @@ -37189,6 +37196,7 @@ tortilini->tortellini tortise->tortoise torward->toward torwards->towards +Tosday->Tuesday, today, totaly->totally totat->total totation->rotation @@ -37694,7 +37702,12 @@ trempoline->trampoline treshhold->threshold treshold->threshold tressle->trestle +tresure->treasure +tresures->treasures treting->treating +trew->true +trewthful->truthful +trewthfully->truthfully trgistration->registration trhe->the trhough->through @@ -37713,6 +37726,8 @@ trianing->training trianlge->triangle trianlges->triangles trians->trains +triathalon->triathlon +triathalons->triathlons triger->trigger, tiger, trigered->triggered trigerred->triggered @@ -37725,6 +37740,7 @@ triggerred->triggered triggerring->triggering triggerrs->triggers triggger->trigger +trignametric->trigonometric trignometric->trigonometric trignometry->trigonometry triguered->triggered @@ -37741,6 +37757,8 @@ trimmng->trimming trinagle->triangle trinagles->triangles tring->trying, string, ring, +tringket->trinket +tringkets->trinkets trings->strings, rings, triniy->trinity triology->trilogy @@ -37748,6 +37766,22 @@ tripel->triple tripeld->tripled tripels->triples tripple->triple +triptick->triptych +triptickes->triptychs +tripticks->triptychs +triptish->triptych +triptishes->triptychs +triptishs->triptychs +triscadecafobia->triskaidekaphobia +triscadecaphobia->triskaidekaphobia +triscaidecafobia->triskaidekaphobia +triscaidecaphobia->triskaidekaphobia +triscaidekafobia->triskaidekaphobia +triscaidekaphobia->triskaidekaphobia +triskadecafobia->triskaidekaphobia +triskadecaphobia->triskaidekaphobia +triskadekafobia->triskaidekaphobia +triskadekaphobia->triskaidekaphobia triuangulate->triangulate trival->trivial trivally->trivially @@ -37760,10 +37794,29 @@ trnasmits->transmits trnsfer->transfer trnsfered->transferred trnsfers->transfers +trogladite->troglodyte +trogladitic->troglodytic +trogladitical->troglodytical +trogladitism->troglodytism +troglidite->troglodyte +trogliditic->troglodytic +trogliditical->troglodytical +trogliditism->troglodytism +troglodite->troglodyte +trogloditic->troglodytic +trogloditical->troglodytical +trogloditism->troglodytism troling->trolling +trolly->trolley +trooso->trousseau +troosos->trousseaux, trousseaus, +troosso->trousseau +troossos->trousseaux, trousseaus, trottle->throttle trottled->throttled, trotted, trottling->throttling, trotting, +troubador->troubadour +troubadors->troubadours troubeshoot->troubleshoot troubeshooted->troubleshooted troubeshooter->troubleshooter @@ -37786,6 +37839,10 @@ trrigger->trigger trriggered->triggered trriggering->triggering trriggers->triggers +trubador->troubadour +trubadors->troubadours +trubadour->troubadour +trubadours->troubadours trubble->trouble trubbled->troubled trubbles->troubles @@ -37803,6 +37860,9 @@ trucnating->truncating truct->struct truelly->truly truely->truly +truged->trudged +trugged->trudged, tugged, +truging->trudging truied->tried trully->truly trun->turn @@ -37830,12 +37890,18 @@ trys->tries tryying->trying ttests->tests tthe->the +tucan->toucan +tucans->toucans tuesdey->Tuesday tuesdsy->Tuesday tufure->future tuhmbnail->thumbnail tunelled->tunnelled tunelling->tunneling +tung->tongue +tunges->tongues +tungs->tongues +tungues->tongues tunned->tuned tunnell->tunnel tunning->tuning, running, @@ -37844,12 +37910,18 @@ tuotirals->tutorials tupel->tuple tupple->tuple tupples->tuples +turain->terrain +turains->terrains +turcoise->turquoise ture->true, pure, +turkoise->turquoise turle->turtle turly->truly turnk->trunk, turnkey, turn, turorial->tutorial turorials->tutorials +turrain->terrain +turrains->terrains turtleh->turtle turtlehs->turtles turtorial->tutorial @@ -37869,6 +37941,7 @@ twodimenional->two-dimensional twodimenionsal->two-dimensional twon->town twoo->two, too, +Twosday->Tuesday twpo->two tye->type, tie, tyep->type From 74fcfe0f7f1bf3d029386c3ef1abe55015cffa8f Mon Sep 17 00:00:00 2001 From: Stefan Kangas Date: Thu, 29 Dec 2022 11:58:15 +0100 Subject: [PATCH 210/302] Update corrections from marvin.cs.uidaho.edu: T Updated 2022-12-29 --- 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 86d6aad6c2..40777433b8 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -36910,6 +36910,7 @@ thnig->thing thnigs->things thoese->those, these, thonic->chthonic +thorasic->thoracic thoroidal->toroidal thoroughty->thoroughly thorugh->through, thorough, @@ -37020,6 +37021,7 @@ thumbbnail->thumbnail thumbnal->thumbnail thumbnals->thumbnails thundebird->thunderbird +thur->their thurday->Thursday thurough->thorough thurrow->thorough From 41772b0212f553e2c9e0be58415b0777f7491652 Mon Sep 17 00:00:00 2001 From: Stefan Kangas Date: Thu, 29 Dec 2022 12:00:43 +0100 Subject: [PATCH 211/302] Add variations of misspellings starting with T --- codespell_lib/data/dictionary.txt | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/codespell_lib/data/dictionary.txt b/codespell_lib/data/dictionary.txt index 40777433b8..205811324c 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -37021,7 +37021,6 @@ thumbbnail->thumbnail thumbnal->thumbnail thumbnals->thumbnails thundebird->thunderbird -thur->their thurday->Thursday thurough->thorough thurrow->thorough @@ -37705,9 +37704,12 @@ treshhold->threshold treshold->threshold tressle->trestle tresure->treasure +tresured->treasured +tresurer->treasurer tresures->treasures +tresuring->treasuring treting->treating -trew->true +trew->true, threw, trewthful->truthful trewthfully->truthfully trgistration->registration @@ -37743,6 +37745,7 @@ triggerring->triggering triggerrs->triggers triggger->trigger trignametric->trigonometric +trignametry->trigonometry trignometric->trigonometric trignometry->trigonometry triguered->triggered @@ -37797,19 +37800,23 @@ trnsfer->transfer trnsfered->transferred trnsfers->transfers trogladite->troglodyte +trogladites->troglodytes trogladitic->troglodytic trogladitical->troglodytical trogladitism->troglodytism troglidite->troglodyte +troglidites->troglodytes trogliditic->troglodytic trogliditical->troglodytical trogliditism->troglodytism troglodite->troglodyte +troglodites->troglodytes trogloditic->troglodytic trogloditical->troglodytical trogloditism->troglodytism troling->trolling trolly->trolley +trollys->trolleys trooso->trousseau troosos->trousseaux, trousseaus, troosso->trousseau From 6068f9991e4d1d41506e9dc7858a4bc5342fa25d Mon Sep 17 00:00:00 2001 From: Jon Dufresne Date: Tue, 3 Jan 2023 13:28:56 -0800 Subject: [PATCH 212/302] Add "inable" and its variations Found in a real world project: https://github.com/rubocop/rubocop-rails/pull/904 --- 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 205811324c..8166228011 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -19931,7 +19931,11 @@ imput->input imrovement->improvement imsensitive->insensitive in-memeory->in-memory +inable->enable, unable, +inabled->enabled +inables->enables inablility->inability +inabling->enabling inacccessible->inaccessible inaccesible->inaccessible inaccessable->inaccessible From fbd90f07e4ca86578ebe84865228e3280a03486f Mon Sep 17 00:00:00 2001 From: Jon Dufresne Date: Wed, 4 Jan 2023 05:14:02 -0800 Subject: [PATCH 213/302] Remove alias make targets to facilitate tab completion When running the check/sort/trim make targets, I normally type something along the lines of: make check-d And let the shell tab completion finish the line for me. As there exists multiple variations, (check-dictionary and check-dictionaries) tab completion stops at the common substring and then I must finish typing the rest of the command. By removing the aliases, tab completion will complete the full command immediately. --- Makefile | 6 +----- 1 file changed, 1 insertion(+), 5 deletions(-) diff --git a/Makefile b/Makefile index 88e6203522..06a4cbfd45 100644 --- a/Makefile +++ b/Makefile @@ -2,16 +2,12 @@ SORT_ARGS := -f -b DICTIONARIES := codespell_lib/data/dictionary*.txt -PHONY := all check check-dictionaries sort-dictionaries trim-dictionaries check-dictionary sort-dictionary trim-dictionary check-dist flake8 pytest pypi clean +PHONY := all check check-dictionaries sort-dictionaries trim-dictionaries check-dist flake8 pytest pypi clean all: check-dictionaries codespell.1 check: check-dictionaries check-dist flake8 pytest -check-dictionary: check-dictionaries -sort-dictionary: sort-dictionaries -trim-dictionary: trim-dictionaries - 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 From 732a713958b9f60c31c34e3648c6c516d57e6e5c Mon Sep 17 00:00:00 2001 From: Yudai Takada Date: Thu, 5 Jan 2023 00:44:59 +0900 Subject: [PATCH 214/302] Add several spelling corrections (#2701) --- 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 8166228011..57eaf12a7f 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -21410,6 +21410,12 @@ interpolaion->interpolation interpolaiton->interpolation interpolar->interpolator interpolayed->interpolated +interpoloate->interpolate +interpoloated->interpolated +interpoloates->interpolates +interpoloating->interpolating +interpoloation->interpolation +interpoloations->interpolations interporated->interpolated, interpreted, interporation->interpolation interporations->interpolations @@ -34132,6 +34138,7 @@ solveing->solving solwed->solved som->some someboby->somebody +someghing->something somehing->something somehting->something somehwat->somewhat From 186f16423e3a1ca50895069e1590cbdd10deb652 Mon Sep 17 00:00:00 2001 From: Jon Dufresne Date: Wed, 4 Jan 2023 05:36:30 -0800 Subject: [PATCH 215/302] Use type annotations directly from chardet package Starting with chardet 5.1.0, the package now includes type annotations. The typeshed stubs are obsolete and should no longer be used. See the release notes: https://github.com/chardet/chardet/releases/tag/5.1.0 > Add type annotations to the project and run mypy on CI --- pyproject.toml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pyproject.toml b/pyproject.toml index 3729f5df82..e510dd3419 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -48,11 +48,11 @@ toml = [ "tomli; python_version < '3.11'" ] types = [ + "chardet>=5.1.0", "mypy", "pytest", "pytest-cov", "pytest-dependency", - "types-chardet", ] [project.scripts] From a70c628036d2cf52f31266e5d2a7652e5c7e9ba4 Mon Sep 17 00:00:00 2001 From: Ian Fisher Date: Wed, 4 Jan 2023 12:41:54 -0500 Subject: [PATCH 216/302] Add outoing->outgoing and other possible intended spellings (#2698) This typo has been observed in the wild, e.g. at https://fuchsia-review.googlesource.com/c/fuchsia/+/785502 --- 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 57eaf12a7f..10555c8939 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -26661,6 +26661,7 @@ outher->other, outer, outisde->outside outllook->outlook outoign->outgoing +outoing->outgoing, outdoing, outing, outout->output outperfoem->outperform outperfoeming->outperforming From 86bb10bbef6a0dd783f0005642c20e55ac602e2e Mon Sep 17 00:00:00 2001 From: bl-ue Date: Mon, 14 Jun 2021 09:19:15 -0400 Subject: [PATCH 217/302] Typos from marvin.cs.uidaho.edu/mispell.html (rework of #1374): R Closes #1967 --- codespell_lib/data/dictionary.txt | 152 ++++++++++++++++++++++++++++++ 1 file changed, 152 insertions(+) diff --git a/codespell_lib/data/dictionary.txt b/codespell_lib/data/dictionary.txt index 10555c8939..1973aecfbb 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -29723,10 +29723,20 @@ qwesants->croissants qwessant->croissant qwessants->croissants rabinnical->rabbinical +rabit->rabbit +rabits->rabbits racaus->raucous +racoon->raccoon +racoons->raccoons ractise->practise radation->radiation rade->read, raid, +rademption->redemption +rademptions->redemptions +rademtion->redemption +rademtions->redemptions +radeus->radius +radeuses->radii radiactive->radioactive radiaton->radiation radify->ratify @@ -29741,6 +29751,14 @@ raelly->really raisedd->raised raison->reason, raisin, ralation->relation +randayvoo->rendezvous +randayvooed->rendezvoused +randayvou->rendezvous +randayvoued->rendezvoused +randazyvoo->rendezvous +randazyvooed->rendezvoused +randazyvou->rendezvous +randazyvoued->rendezvoused randmom->random randomally->randomly raoming->roaming @@ -29754,11 +29772,15 @@ raotations->rotations raotats->rotates raplace->replace raplacing->replacing +rapore->rapport rapresent->represent rapresentation->representation rapresented->represented rapresenting->representing rapresents->represents +rapsadies->rhapsodies +rapsady->rhapsody +rapsadys->rhapsodies rapsberry->raspberry rarelly->rarely rarified->rarefied @@ -29771,6 +29793,9 @@ rasing->raising rasons->reasons raspbery->raspberry raspoberry->raspberry +ratatooee->ratatouille +ratatoolee->ratatouille +ratatui->ratatouille rathar->rather rathern->rather rationnal->rational, rationale, @@ -30262,6 +30287,8 @@ reccursive->recursive reccursively->recursively receeded->receded receeding->receding +receet->receipt +receets->receipts receied->received receieve->receive receieved->received @@ -30276,6 +30303,12 @@ receivedfrom->received from receiveing->receiving receiviing->receiving receivs->receives +recend->rescind +recendable->rescindable +recended->rescinded +recendes->rescinds +recending->rescinding +recends->rescinds recenet->recent recenlty->recently recenly->recently @@ -30284,6 +30317,8 @@ recepient->recipient recepients->recipients recepion->reception recepit->recipe, receipt, +receptical->receptacle +recepticals->receptacles receve->receive receved->received receves->receives @@ -30394,6 +30429,7 @@ recompuuted->recomputed recompuutes->recomputes recompuuting->recomputing reconaissance->reconnaissance +reconasence->reconnaissance reconcilation->reconciliation recondifure->reconfigure reconecct->reconnect @@ -30477,6 +30513,12 @@ recrational->recreational recreateation->recreation recrod->record recrods->records +recroot->recruit +recrooted->recruited +recrooter->recruiter +recrooters->recruiters +recrooting->recruiting +recroots->recruits recrusevly->recursively recrusion->recursion recrusive->recursive @@ -30491,6 +30533,9 @@ rectiinear->rectilinear recude->reduce recuiting->recruiting reculrively->recursively +recun->reckon +recund->reckoned +recuning->reckoning recuring->recurring recurisvely->recursively recurively->recursively @@ -30528,6 +30573,8 @@ redefiend->redefined redefiende->redefined redefintion->redefinition redefintions->redefinitions +redemtion->redemption +redemtions->redemptions redenderer->renderer redered->rendered redict->redirect @@ -30559,6 +30606,7 @@ redistrubutions->redistributions redliens->redlines rednerer->renderer redonly->readonly +reduceable->reducible redudancy->redundancy redudant->redundant redunancy->redundancy @@ -30590,6 +30638,8 @@ reencode->re-encode reenfoce->reinforce reenfoced->reinforced reenforced->reinforced +reenforcement->reinforcement +reenforcements->reinforcements reesrved->reserved reesult->result reeturn->return @@ -30965,6 +31015,10 @@ releae->release releaed->released releaeing->releasing releaes->releases, release, +releaf->relief +releafed->relieved +releafes->relieves +releafing->relieving releaing->releasing releant->relevant, relent, releas->release @@ -30978,11 +31032,19 @@ releationship->relationship releationships->relationships releative->relative releavant->relevant +releaved->relieved +releaves->relieves +releaving->relieving relecant->relevant relected->reelected, reflected, +releifed->relieved +releifes->relieves +releifing->relieving releive->relieve releived->relieved releiver->reliever +releives->relieves +releiving->relieving releoad->reload relesae->release relesaed->released @@ -31008,7 +31070,12 @@ relfections->reflections reliabily->reliably, reliability, reliablity->reliability relie->rely, relies, really, relief, +reliefed->relieved +reliefes->relieves +reliefing->relieving relient->reliant +religeon->religion +religeons->religions religeous->religious religous->religious religously->religiously @@ -31020,6 +31087,8 @@ relitavely->relatively relized->realised, realized, rellocates->reallocates, relocates, relly->really +relm->realm +relms->realms reloade->reload relocae->relocate relocaes->relocates @@ -31052,6 +31121,11 @@ remaing->remaining remainging->remaining remainig->remaining remainst->remains +remander->remainder +remane->remain +remaned->remained +remaner->remainder +remanes->remains remanin->remaining, remain, remaning->remaining remaped->remapped @@ -31090,6 +31164,10 @@ rememver->remember remenant->remnant remenber->remember remenicent->reminiscent +remeniss->reminisce +remenissed->reminisced +remenisser->reminiscer +remenissing->reminiscing remian->remain remiander->remainder, reminder, remianed->remained @@ -31099,8 +31177,12 @@ reminent->remnant reminescent->reminiscent remining->remaining reminiscense->reminiscence +reminisent->reminiscent +reminisentky->reminiscently reminscent->reminiscent +reminscently->reminiscently reminsicent->reminiscent +reminsicently->reminiscently remmeber->remember remmebered->remembered remmebering->remembering @@ -31134,6 +31216,14 @@ remvoved->removed remvoves->removes remvs->removes renabled->re-enabled +rendayvoo->rendezvous +rendayvooed->rendezvoused +rendayvou->rendezvous +rendayvoued->rendezvoused +rendazyvoo->rendezvous +rendazyvooed->rendezvoused +rendazyvou->rendezvous +rendazyvoued->rendezvoused rende->render, rend, renderadble->renderable renderd->rendered @@ -31367,11 +31457,18 @@ renforced->reinforced renforcement->reinforcement renforcements->reinforcements renforces->reinforces +renig->renege +reniged->reneged +reniger->reneger +reniging->reneging rennaisance->renaissance rennovate->renovate rennovated->renovated rennovating->renovating rennovation->renovation +renosance->renaissance +renoun->renown +renouned->renowned rentime->runtime rentors->renters reoadmap->roadmap @@ -31414,6 +31511,8 @@ repant->repaint, repent, repants->repaints, repents, reparamterization->reparameterization repatition->repetition, repartition, +repatwar->repertoire +repatwars->repertoires repblic->republic repblican->republican repblicans->republicans @@ -31430,6 +31529,7 @@ repects->respects repedability->repeatability repedable->repeatable repeition->repetition +repell->repel repentence->repentance repentent->repentant reperesent->represent @@ -31441,6 +31541,9 @@ reperesenting->representing reperesents->represents repersentation->representation repertoir->repertoire +repertwar->repertoire +repertwares->repertoires +repertwars->repertoires repesent->represent repesentation->representation repesentational->representational @@ -31458,6 +31561,8 @@ repeting->repeating repetion->repetition repetions->repetitions repetive->repetitive +repetoire->repertoire +repetoires->repertoires repid->rapid repition->repetition repitions->repetitions @@ -31501,6 +31606,11 @@ replasing->replacing, relapsing, rephasing, replcace->replace replcaced->replaced replcaof->replicaof +replentish->replenish +replentished->replenished +replentishes->replenishes +replentishing->replenishing +replentishs->replenishes replicae->replicate replicaes->replicates replicaiing->replicating @@ -31521,6 +31631,7 @@ reponses->responses reponsibilities->responsibilities reponsibility->responsibility reponsible->responsible +repore->report, rapport, reporeted->reported reporing->reporting reporitory->repository @@ -31545,10 +31656,15 @@ reposonders->responders reposonding->responding reposonse->response reposonses->responses +repost->riposte +reposted->riposted +repostes->ripostes +reposting->riposting repostiories->repositories repostiory->repository repostories->repositories repostory->repository +reposts->ripostes repote->report, remote, repport->report reppository->repository @@ -32348,12 +32464,21 @@ rgister->register rhethoric->rhetoric rhethorical->rhetorical rhethorically->rhetorically +rhinosarus->rhinoceros +rhinosaruses->rhinoceroses +rhinosaruss->rhinoceroses rhymme->rhyme rhythem->rhythm rhythim->rhythm rhythimcally->rhythmically rhytmic->rhythmic +rickoshay->ricochet +rickoshays->ricochets ridiculus->ridiculous +riendeer->reindeer +riendeers->reindeer +rige->ridge +riges->ridges rigeur->rigueur, rigour, rigor, righ->right righht->right @@ -32365,17 +32490,36 @@ rigt->right rigth->right rigths->rights rigurous->rigorous +rimaniss->reminisce +rimanissed->reminisced +rimanisser->reminiscer +rimanissing->reminiscing riminder->reminder riminders->reminders riminding->reminding +riminiced->reminisced +riminicent->reminiscent +riminicer->reminiscer +riminicing->reminiscing rimitives->primitives rininging->ringing +rinosarus->rhinoceros +rinosaruses->rhinoceroses +rinosaruss->rhinoceroses rised->raised, rose, rispective->respective ristrict->restrict ristricted->restricted ristriction->restriction ritable->writable +rithm->rhythm +rithmic->rhythmic +rithmicly->rhythmically +rittle->riddle +rittled->riddled +rittler->riddler +rittles->riddles +rittling->riddling rivised->revised rizes->rises rlation->relation @@ -32417,6 +32561,14 @@ romotely->remotely romotes->remotes romoting->remoting romotly->remotely +rondayvoo->rendezvous +rondayvooed->rendezvoused +rondayvou->rendezvous +rondayvoued->rendezvoused +rondazyvoo->rendezvous +rondazyvooed->rendezvoused +rondazyvou->rendezvous +rondazyvoued->rendezvoused roomate->roommate ropeat->repeat rorated->rotated From 77da78e8748545a2daa950c29f1acccc5637e1ce Mon Sep 17 00:00:00 2001 From: Stefan Kangas Date: Wed, 28 Dec 2022 18:30:40 +0100 Subject: [PATCH 218/302] Update corrections from marvin.cs.uidaho.edu: R Updated 2022-12-28 --- 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 1973aecfbb..f51e2e9ed6 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -29726,6 +29726,7 @@ rabinnical->rabbinical rabit->rabbit rabits->rabbits racaus->raucous +rackit->racket, racquet, racoon->raccoon racoons->raccoons ractise->practise @@ -29770,6 +29771,7 @@ raotating->rotating raotation->rotation raotations->rotations raotats->rotates +rapell->rappel raplace->replace raplacing->replacing rapore->rapport @@ -32507,6 +32509,7 @@ rinosarus->rhinoceros rinosaruses->rhinoceroses rinosaruss->rhinoceroses rised->raised, rose, +riskay->risque rispective->respective ristrict->restrict ristricted->restricted From 808c3c1dc556ad2e354d4a704675c2f5641d977b Mon Sep 17 00:00:00 2001 From: Stefan Kangas Date: Wed, 28 Dec 2022 18:29:16 +0100 Subject: [PATCH 219/302] Add variations of misspellings starting with R --- codespell_lib/data/dictionary.txt | 63 +++++++++++++++++++++++-------- 1 file changed, 48 insertions(+), 15 deletions(-) diff --git a/codespell_lib/data/dictionary.txt b/codespell_lib/data/dictionary.txt index f51e2e9ed6..828febeba9 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -29727,6 +29727,7 @@ rabit->rabbit rabits->rabbits racaus->raucous rackit->racket, racquet, +rackits->rackets, racquets, racoon->raccoon racoons->raccoons ractise->practise @@ -29737,7 +29738,7 @@ rademptions->redemptions rademtion->redemption rademtions->redemptions radeus->radius -radeuses->radii +radeuses->radii, radiuses, radiactive->radioactive radiaton->radiation radify->ratify @@ -29754,12 +29755,16 @@ raison->reason, raisin, ralation->relation randayvoo->rendezvous randayvooed->rendezvoused +randayvoos->rendezvous randayvou->rendezvous randayvoued->rendezvoused +randayvous->rendezvous randazyvoo->rendezvous randazyvooed->rendezvoused +randazyvoos->rendezvous randazyvou->rendezvous randazyvoued->rendezvoused +randazyvous->rendezvous randmom->random randomally->randomly raoming->roaming @@ -29772,6 +29777,9 @@ raotation->rotation raotations->rotations raotats->rotates rapell->rappel +rapelled->rappelled +rapelling->rappelling +rapells->rappells raplace->replace raplacing->replacing rapore->rapport @@ -31034,11 +31042,14 @@ releationship->relationship releationships->relationships releative->relative releavant->relevant +releave->relieve releaved->relieved releaves->relieves releaving->relieving relecant->relevant relected->reelected, reflected, +releif->relief +releife->relief releifed->relieved releifes->relieves releifing->relieving @@ -31089,8 +31100,8 @@ relitavely->relatively relized->realised, realized, rellocates->reallocates, relocates, relly->really -relm->realm -relms->realms +relm->realm, elm, helm, ream, rem, +relms->realms, elms, helms, reams, reloade->reload relocae->relocate relocaes->relocates @@ -31168,7 +31179,12 @@ remenber->remember remenicent->reminiscent remeniss->reminisce remenissed->reminisced +remenissence->reminiscence +remenissense->reminiscence +remenissent->reminiscent +remenissently->reminiscently remenisser->reminiscer +remenisses->reminisces remenissing->reminiscing remian->remain remiander->remainder, reminder, @@ -31178,11 +31194,23 @@ remians->remains reminent->remnant reminescent->reminiscent remining->remaining +reminis->reminisce reminiscense->reminiscence +reminise->reminisce +reminised->reminisced reminisent->reminiscent reminisentky->reminiscently +reminiser->reminiscer +reminises->reminisces +reminising->reminiscing +reminsce->reminisce +reminsced->reminisced +reminscence->reminiscence reminscent->reminiscent reminscently->reminiscently +reminscer->reminiscer +reminsces->reminisces +reminscing->reminiscing reminsicent->reminiscent reminsicently->reminiscently remmeber->remember @@ -31531,7 +31559,11 @@ repects->respects repedability->repeatability repedable->repeatable repeition->repetition +repeled->repelled +repeler->repeller +repeling->repelling repell->repel +repells->repels repentence->repentance repentent->repentant reperesent->represent @@ -31658,15 +31690,11 @@ reposonders->responders reposonding->responding reposonse->response reposonses->responses -repost->riposte -reposted->riposted -repostes->ripostes -reposting->riposting +repostes->reposts, ripostes, repostiories->repositories repostiory->repository repostories->repositories repostory->repository -reposts->ripostes repote->report, remote, repport->report reppository->repository @@ -32475,10 +32503,12 @@ rhythim->rhythm rhythimcally->rhythmically rhytmic->rhythmic rickoshay->ricochet +rickoshayed->ricocheted +rickoshaying->ricocheting rickoshays->ricochets ridiculus->ridiculous riendeer->reindeer -riendeers->reindeer +riendeers->reindeers rige->ridge riges->ridges rigeur->rigueur, rigour, rigor, @@ -32494,7 +32524,9 @@ rigths->rights rigurous->rigorous rimaniss->reminisce rimanissed->reminisced +rimanissent->reminiscent rimanisser->reminiscer +rimanisses->reminisces rimanissing->reminiscing riminder->reminder riminders->reminders @@ -32502,6 +32534,7 @@ riminding->reminding riminiced->reminisced riminicent->reminiscent riminicer->reminiscer +riminices->reminisces riminicing->reminiscing rimitives->primitives rininging->ringing @@ -32509,7 +32542,7 @@ rinosarus->rhinoceros rinosaruses->rhinoceroses rinosaruss->rhinoceroses rised->raised, rose, -riskay->risque +riskay->risky, risqué, rispective->respective ristrict->restrict ristricted->restricted @@ -32518,11 +32551,11 @@ ritable->writable rithm->rhythm rithmic->rhythmic rithmicly->rhythmically -rittle->riddle -rittled->riddled -rittler->riddler -rittles->riddles -rittling->riddling +rittle->riddle, rattle, +rittled->riddled, rattled, +rittler->riddler, rattler, +rittles->riddles, rattles, +rittling->riddling, rattling, rivised->revised rizes->rises rlation->relation From e1c8ec7d6d2a42e53a940b9aa7e281b7c010cf29 Mon Sep 17 00:00:00 2001 From: Stefan Kangas Date: Tue, 3 Jan 2023 01:53:41 +0100 Subject: [PATCH 220/302] Add suggestions from code review --- codespell_lib/data/dictionary.txt | 25 ++++++++++++++++--------- 1 file changed, 16 insertions(+), 9 deletions(-) diff --git a/codespell_lib/data/dictionary.txt b/codespell_lib/data/dictionary.txt index 828febeba9..3e90ed26d0 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -30543,9 +30543,9 @@ rectiinear->rectilinear recude->reduce recuiting->recruiting reculrively->recursively -recun->reckon -recund->reckoned -recuning->reckoning +recun->reckon, recon, recur, +recund->reckoned, fecund, +recuning->reckoning, retuning, recusing, recuring->recurring recurisvely->recursively recurively->recursively @@ -30647,9 +30647,15 @@ reename->rename reencode->re-encode reenfoce->reinforce reenfoced->reinforced +reenfocement->reinforcement +reenfoces->reinforces +reenfocing->reinforcing +reenforce->reinforce reenforced->reinforced reenforcement->reinforcement reenforcements->reinforcements +reenforces->reinforces +reenforcing->reinforcing reesrved->reserved reesult->result reeturn->return @@ -31029,6 +31035,7 @@ releaf->relief releafed->relieved releafes->relieves releafing->relieving +releafs->relieves releaing->releasing releant->relevant, relent, releas->release @@ -31135,7 +31142,7 @@ remainging->remaining remainig->remaining remainst->remains remander->remainder -remane->remain +remane->remain, rename, remake, remaned->remained remaner->remainder remanes->remains @@ -31496,9 +31503,9 @@ rennovate->renovate rennovated->renovated rennovating->renovating rennovation->renovation -renosance->renaissance +renosance->renaissance, resonance, renoun->renown -renouned->renowned +renouned->renowned, renounced, rentime->runtime rentors->renters reoadmap->roadmap @@ -31665,7 +31672,7 @@ reponses->responses reponsibilities->responsibilities reponsibility->responsibility reponsible->responsible -repore->report, rapport, +repore->report, rapport, repose, reporeted->reported reporing->reporting reporitory->repository @@ -32509,8 +32516,8 @@ rickoshays->ricochets ridiculus->ridiculous riendeer->reindeer riendeers->reindeers -rige->ridge -riges->ridges +rige->ridge, rice, ride, rigs, +riges->ridges, rides, rigeur->rigueur, rigour, rigor, righ->right righht->right From 1f3ab5d6fadcfe9aa6128581233399f19f3f9a43 Mon Sep 17 00:00:00 2001 From: Dimitri Papadopoulos Orfanos <3234522+DimitriPapadopoulos@users.noreply.github.com> Date: Thu, 5 Jan 2023 20:49:07 +0100 Subject: [PATCH 221/302] Rehabilitate extraversion (#2198) --- codespell_lib/data/dictionary.txt | 3 --- 1 file changed, 3 deletions(-) diff --git a/codespell_lib/data/dictionary.txt b/codespell_lib/data/dictionary.txt index 3e90ed26d0..56d5403dd0 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -16790,9 +16790,6 @@ extrator->extractor extrators->extractors extrats->extracts extravagent->extravagant -extraversion->extroversion -extravert->extrovert -extraverts->extroverts extraxt->extract extraxted->extracted extraxting->extracting From 16e6905ea2f9392649bafda1e6ef8a4e42bc77d4 Mon Sep 17 00:00:00 2001 From: Kian-Meng Ang Date: Fri, 6 Jan 2023 15:06:02 +0800 Subject: [PATCH 222/302] Add contineous -> continuous (#2703) 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 56d5403dd0..d6d3ed99dc 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -9354,6 +9354,8 @@ contination->continuation contine->continue, contain, contined->continued continential->continental +contineous->continuous +contineously->continuously continging->containing contingous->contiguous continguous->contiguous From 9b58f7ee80d994b73c2e017b9bb6986af2ebadf9 Mon Sep 17 00:00:00 2001 From: Kian-Meng Ang Date: Sat, 7 Jan 2023 14:27:39 +0800 Subject: [PATCH 223/302] Add neglibible -> negligible --- 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 d6d3ed99dc..3945b423ef 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -24773,6 +24773,7 @@ negitiations->negotiations negitiator->negotiator negitiators->negotiators negitive->negative +neglibible->negligible neglible->negligible negligable->negligible negligble->negligible From 5ff734d4100aa3b87fb3d1cfbf6b95de4d1dbde1 Mon Sep 17 00:00:00 2001 From: Robin Tweedie Date: Thu, 12 Jan 2023 14:26:42 +0000 Subject: [PATCH 224/302] move pullrequest to code dictionary --- codespell_lib/data/dictionary.txt | 3 --- codespell_lib/data/dictionary_code.txt | 3 +++ 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/codespell_lib/data/dictionary.txt b/codespell_lib/data/dictionary.txt index 3945b423ef..1db07facd9 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -29528,9 +29528,6 @@ Pucini->Puccini Puertorrican->Puerto Rican Puertorricans->Puerto Ricans pulisher->publisher -pullrequenst->pull requests, pull request, -pullrequest->pull request -pullrequests->pull requests puls->pulse, plus, pumkin->pumpkin punctation->punctuation diff --git a/codespell_lib/data/dictionary_code.txt b/codespell_lib/data/dictionary_code.txt index 8f3c234473..aea0216a82 100644 --- a/codespell_lib/data/dictionary_code.txt +++ b/codespell_lib/data/dictionary_code.txt @@ -48,6 +48,9 @@ outputof->output of, output-of, packat->packet process'->process's protecten->protection, protected, +pullrequenst->pull requests, pull request, +pullrequest->pull request +pullrequests->pull requests pysic->physic recomment->recommend reday->ready From 3511fcd9b57e167b2bb17fd07c680eaf9befa4b2 Mon Sep 17 00:00:00 2001 From: Stefan Kangas Date: Fri, 13 Jan 2023 02:11:50 +0100 Subject: [PATCH 225/302] Add `propect->prospect, protect, project,` and variations --- 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 1db07facd9..b756ba8b70 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -29203,6 +29203,18 @@ propatagion->propagation propator->propagator propators->propagators propbably->probably +propect->prospect, protect, project, +propectable->protectable, projectable, +propected->prospected, protected, projected, +propecting->prospecting, protecting, projecting, +propection->prospection, protection, projection, +propective->prospective, protective, projective, +propectively->prospectively, protectively, projectively, +propectless->prospectless +propector->prospector, protector, projector, +propects->prospects, protects, projects, +propectus->prospectus +propectuses->prospectuses propely->properly propeoperties->properties propereties->properties From 71cef5c61c1c3fd88f5c3dfd9c48eb8690956a3e Mon Sep 17 00:00:00 2001 From: Kian-Meng Ang Date: Sun, 15 Jan 2023 11:34:28 +0800 Subject: [PATCH 226/302] Add respwan -> respawn and related words --- 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 b756ba8b70..71f606a024 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -32132,6 +32132,10 @@ respresentations->representations respresented->represented respresenting->representing respresents->represents +respwan->respawn +respwaned->respawned +respwaning->respawning +respwans->respawns resquest->request resrouce->resource resrouced->resourced From 066bcd281941c28bd49623a996c5a3c9a780cd98 Mon Sep 17 00:00:00 2001 From: bl-ue Date: Mon, 14 Jun 2021 09:17:14 -0400 Subject: [PATCH 227/302] Typos from marvin.cs.uidaho.edu/mispell.html (rework of #1374): P Closes #1965 --- codespell_lib/data/dictionary.txt | 245 ++++++++++++++++++++++++++++++ 1 file changed, 245 insertions(+) diff --git a/codespell_lib/data/dictionary.txt b/codespell_lib/data/dictionary.txt index 71f606a024..439182af31 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -26884,6 +26884,7 @@ paceholder->placeholder pach->patch, path, pachage->package paches->patches +pachooly->patchouli pacht->patch pachtches->patches pachtes->patches @@ -26917,6 +26918,8 @@ packtes->packets pactch->patch pactched->patched pactches->patches +paculier->peculiar +paculierly->peculiarly padam->param padd->pad, padded, padds->pads @@ -26925,6 +26928,8 @@ paermission->permission paermissions->permissions paeth->path pagagraph->paragraph +pagent->pageant +pagents->pageants pahses->phases paht->path, pat, part, pahts->paths, pats, parts, @@ -26933,6 +26938,18 @@ paied->paid, paired, painiting->painting paintile->painttile paintin->painting +pairocheal->parochial +pairocheality->parochiality +pairocheally->parochially +pairocheel->parochial +pairocheelity->parochiality +pairocheelly->parochially +pairokeal->parochial +pairokeality->parochiality +pairokeally->parochially +pairokeel->parochial +pairokeelity->parochiality +pairokeelly->parochially paitience->patience paiting->painting pakage->package @@ -27096,9 +27113,12 @@ parenthises->parentheses parenthsis->parenthesis paret->parent, parrot, paretheses->parentheses +parfay->parfait parge->large +paria->pariah parial->partial parially->partially +parias->pariahs paricular->particular paricularly->particularly parisitic->parasitic @@ -27117,15 +27137,26 @@ parititioning->partitioning parititions->partitions paritiy->parity parituclar->particular +parkay->parquet +parkays->parquets +parlament->parliament +parlamentary->parliamentary +parlaments->parliaments parliment->parliament +parlimentary->parliamentary +parliments->parliaments parm->param, pram, Parma, parmaeter->parameter parmaeters->parameters parmameter->parameter parmameters->parameters parmaters->parameters +parmesian->Parmesan parmeter->parameter parmeters->parameters +parmetian->Parmesan +parmisan->Parmesan +parmisian->Parmesan parms->params, prams, parmter->parameter parmters->parameters @@ -27136,8 +27167,23 @@ parntering->partnering parnters->partners parntership->partnership parnterships->partnerships +parocheal->parochial +parocheality->parochiality +parocheally->parochially +parocheel->parochial +parocheelity->parochiality +parocheelly->parochially +parokeal->parochial +parokeality->parochiality +parokeally->parochially +parokeel->parochial +parokeelity->parochiality +parokeelly->parochially parrakeets->parakeets parralel->parallel +parralell->parallel +parralelly->parallelly +parralely->parallelly parrallel->parallel parrallell->parallel parrallelly->parallelly @@ -27146,6 +27192,10 @@ parrent->parent parsef->parsed, parser, parsec, parseing->parsing parsering->parsing +parshally->partially +parshaly->partially +parsially->partially +parsialy->partially parsin->parsing parstree->parse tree partaining->pertaining @@ -27218,6 +27268,10 @@ partiular->particular partiularly->particularly partiulars->particulars pary->party, parry, +pascheurise->pasteurise +pascheurize->pasteurize +paschurise->pasteurise +paschurize->pasteurize pase->pass, pace, parse, pased->passed, parsed, pasengers->passengers @@ -27252,8 +27306,12 @@ passwirds->passwords passwrod->password passwrods->passwords pasteing->pasting +pasteries->pastries +pastery->pastry pasttime->pastime pastural->pastoral +pasturise->pasteurise +pasturize->pasteurize pasword->password paswords->passwords patameter->parameter @@ -27296,8 +27354,17 @@ peacd->peace peacefuland->peaceful and peacify->pacify peageant->pageant +peanochle->pinochle +peanockle->pinochle +peanuchle->pinochle +peanuckle->pinochle +peapel->people +peapels->peoples peaple->people peaples->peoples +pease->peace +peaseful->peaceful +peasefully->peacefully pecentage->percentage pecified->specified, pacified, pecularities->peculiarities @@ -27305,7 +27372,14 @@ pecularity->peculiarity peculure->peculiar pedestrain->pedestrian peding->pending +pedistal->pedestal +pedistals->pedestals pedning->pending +peedmont->piedmont +peedmonts->piedmonts +peepel->people +peepels->peoples +peerowet->pirouette pefer->prefer peferable->preferable peferably->preferably @@ -27334,15 +27408,23 @@ peirods->periods Peloponnes->Peloponnese, Peloponnesus, penalities->penalties penality->penalty +penatentury->penitentiary penatly->penalty pendantic->pedantic pendig->pending pendning->pending penerator->penetrator +pengwen->penguin +pengwens->penguins +pengwin->penguin +pengwins->penguins penisula->peninsula penisular->peninsular pennal->panel pennals->panels +pennensula->peninsula +pennensular->peninsular +pennensulas->peninsulas penninsula->peninsula penninsular->peninsular pennisula->peninsula @@ -27350,6 +27432,7 @@ Pennyslvania->Pennsylvania pensinula->peninsula pensle->pencil penultimante->penultimate +penwar->peignoir peom->poem peoms->poems peopel->people @@ -27504,6 +27587,14 @@ perfromance->performance perfromed->performed perfroming->performing perfroms->performs +perfur->prefer +perfurd->preferred +perfured->preferred +perfuring->preferring +perfurrd->preferred +perfurred->preferred +perfurring->preferring +perfurs->prefers perhabs->perhaps perhas->perhaps perhasp->perhaps @@ -27531,6 +27622,10 @@ peristent->persistent perjery->perjury perjorative->pejorative perlciritc->perlcritic +perliferate->proliferate +perliferated->proliferated +perliferates->proliferates +perliferating->proliferating permable->permeable permament->permanent permamently->permanently @@ -27600,8 +27695,17 @@ perpsective->perspective perpsectives->perspectives perrror->perror persan->person +persciuos->precious +persciuosly->preciously +perscius->precious +persciusly->preciously persective->perspective persectives->perspectives +perseed->precede +perseeded->preceded +perseedes->precedes +perseeding->preceding +perseeds->precedes persepctive->perspective persepective->perspective persepectives->perspectives @@ -27615,6 +27719,16 @@ perservering->persevering perserves->preserves perserving->preserving perseverence->perseverance +persew->pursue +persewed->pursued +persewer->pursuer +persewes->pursues +persewing->pursuing +persews->pursues +pershis->precious +pershisly->preciously +pershus->precious +pershusly->preciously persisit->persist persisited->persisted persistance->persistence @@ -27636,6 +27750,10 @@ personnal->personal personnaly->personally personnell->personnel perspecitve->perspective +perssious->precious +perssiously->preciously +perssiuos->precious +perssiuosly->preciously persuded->persuaded persue->pursue persued->pursued @@ -27643,9 +27761,14 @@ persuing->pursuing persuit->pursuit persuits->pursuits persumably->presumably +perticipate->participate +perticipated->participated +perticipates->participates +perticipating->participating perticular->particular perticularly->particularly perticulars->particulars +pertinate->pertinent pertrub->perturb pertrubation->perturbation pertrubations->perturbations @@ -27661,15 +27784,33 @@ perturbate->perturb perturbates->perturbs perturbe->perturb, perturbed, perview->preview, purview, +perview->purview +perviews->purviews pervious->previous perviously->previously pessiary->pessary petetion->petition pevent->prevent pevents->prevents +pewder->pewter pezier->bezier phanthom->phantom +pharmaseudical->pharmaceutical +pharmaseudically->pharmaceutical +pharmaseudicaly->pharmaceutical +pharmaseutical->pharmaceutical +pharmaseutically->pharmaceutical +pharmaseuticaly->pharmaceutical +pharmasist->pharmacist +pharmasists->pharmacists +pharmasudical->pharmaceutical +pharmasudically->pharmaceutical +pharmasudicaly->pharmaceutical +pharmasutical->pharmaceutical +pharmasutically->pharmaceutical +pharmasuticaly->pharmaceutical Pharoah->Pharaoh +pharoh->Pharaoh phasepsace->phasespace phasis->phases phenomenom->phenomenon @@ -27695,6 +27836,7 @@ phisically->physically phisicaly->physically phisics->physics phisosophy->philosophy +phlem->phlegm Phonecian->Phoenecian phoneticly->phonetically phongraph->phonograph @@ -27715,6 +27857,16 @@ phylosophical->philosophical physcial->physical physial->physical physicaly->physically +physican->physician +physicans->physicians +physicion->physician +physicions->physicians +physisan->physician +physisans->physicians +physisian->physician +physisians->physicians +physision->physician +physisions->physicians physisist->physicist phython->python phyton->python @@ -27723,22 +27875,62 @@ piar->pair, pier, pliers, piars->pairs, piers, pliers, piblisher->publisher pice->piece +pich->pitch pich->pitch, pick, pinch, +picknic->picnic +pickniced->picnicked +picknicer->picnicker +picknicing->picnicking +picknick->picnic +picknicked->picnicked +picknicker->picnicker +picknicking->picnicking +picknicks->picnics +picknics->picnics +pickyune->picayune +pickyunes->picayunes +picniced->picnicked +picnicer->picnicker +picnicing->picnicking +picnick->picnic +picnicks->picnics picoseond->picosecond picoseonds->picoseconds +picturesk->picturesque +pictureskely->picturesquely +pictureskly->picturesquely +pictureskness->picturesqueness pieceweise->piecewise, piece wise, piecewiese->piecewise, piece wise, piecwise->piecewise, piece wise, +pigen->pigeon +pigens->pigeons piggypack->piggyback piggypacked->piggybacked +pigin->pigeon +pigins->pigeons +pigun->pigeon +piguns->pigeons +pijeon->pigeon +pijeons->pigeons +pijun->pigeon +pijuns->pigeons +pilgram->pilgrim +pilgramidge->pilgrimage +pilgramig->pilgrimage pilgrimmage->pilgrimage pilgrimmages->pilgrimages +pilon->pylon +pilons->pylons pimxap->pixmap pimxaps->pixmaps pinapple->pineapple pinnaple->pineapple +pinockle->pinochle pinoneered->pioneered pinter->pointer, printer, +pinuchle->pinochle +pinuckle->pinochle piont->point pionter->pointer pionts->points @@ -27760,6 +27952,7 @@ pipleline->pipeline piplelines->pipelines pipline->pipeline piplines->pipelines +pirric->Pyrrhic pitmap->pixmap, bitmap, pitty->pity pivott->pivot @@ -27780,13 +27973,16 @@ placemet->placement, placemat, place mat, placemets->placements, placemats, place mats, placholder->placeholder placholders->placeholders +plack->plaque placmenet->placement placmenets->placements +plad->plaid plaform->platform plaforms->platforms plaftorm->platform plaftorms->platforms plagarism->plagiarism +plagerism->plagiarism plalform->platform plalforms->platforms planation->plantation @@ -27816,6 +28012,8 @@ platformt->platforms platfrom->platform platfroms->platforms plathome->platform +platoe->plateau +platoes->plateaus platofmr->platform platofmrs->platforms platofms->platforms @@ -27826,6 +28024,8 @@ platofrm->platform platofrms->platforms plattform->platform plattforms->platforms +plattoe->plateau +plattoes->plateaus plausability->plausibility plausable->plausible playble->playable @@ -28303,6 +28503,8 @@ pracitcally->practically practial->practical practially->practically practicaly->practically +practicianer->practitioner +practicianers->practitioners practicioner->practitioner practicioners->practitioners practicly->practically @@ -28325,6 +28527,9 @@ praries->prairies pratical->practical pratically->practically pratice->practice +prayries->prairies +prayry->prairie +prayrys->prairies prcess->process prcesses->processes prcessing->processing @@ -28493,6 +28698,9 @@ preffixed->prefixed preffixes->prefixes preffixing->prefixing prefices->prefixes +preficiency->proficiency +preficient->proficient +preficientsy->proficiency prefitler->prefilter prefitlered->prefiltered prefitlering->prefiltering @@ -28509,6 +28717,10 @@ prejected->projected prejection->projection prejections->projections prejects->projects, prefects, +prejudgudice->prejudice +prejudgudiced->prejudiced +prejudgudices->prejudices +prejudgudicing->prejudicing preliferation->proliferation prelimitary->preliminary premeire->premiere @@ -28575,6 +28787,14 @@ preriod->period preriodic->periodic prersistent->persistent presance->presence +presbaterian->Presbyterian +presbaterians->Presbyterians +presbaterien->Presbyterian +presbateriens->Presbyterians +presciuos->precious +presciuosly->preciously +prescius->precious +presciusly->preciously prescripe->prescribe prescriped->prescribed prescrition->prescription @@ -28605,6 +28825,10 @@ preseverance->perseverance preseverence->perseverance preseves->preserves preseving->preserving +preshis->precious +preshisly->preciously +preshus->precious +preshusly->preciously presicion->precision presidenital->presidential presidental->presidential @@ -28631,6 +28855,10 @@ presse->pressed, press, pressent->present pressentation->presentation pressented->presented +pressious->precious +pressiously->preciously +pressiuos->precious +pressiuosly->preciously pressre->pressure presss->press, presses, pressue->pressure @@ -28715,6 +28943,7 @@ primatively->primitively primatives->primitives primay->primary primeter->perimeter +primevil->primeval primimitive->primitive primitave->primitive primitiv->primitive @@ -28799,6 +29028,8 @@ privision->provision privisional->provisional privisions->provisions privledge->privilege +privlege->privilege +privleged->privileged privleges->privileges privte->private prject->project @@ -29102,6 +29333,7 @@ progrom->pogrom, program, progroms->pogroms, programs, progrss->progress prohabition->prohibition +prohibative->prohibitive prohibitted->prohibited prohibitting->prohibiting prohibt->prohibit @@ -29132,7 +29364,9 @@ prolbems->problems prolem->problem prolematic->problematic prolems->problems +prolicks->prolix prologomena->prolegomena +promatory->promontory prominance->prominence prominant->prominent prominantly->prominently @@ -29288,6 +29522,9 @@ propperty->property proprely->properly propreties->properties proprety->property +propriatery->proprietary +proprieter->proprietor +proprieters->proprietors proprietory->proprietary proproable->probable proproably->probably @@ -29332,9 +29569,12 @@ protecte->protected, protect, protectiv->protective protectoin->protection protedcted->protected +proteen->protein protential->potential protext->protect protocal->protocol +protocall->protocol +protocalls->protocols protocals->protocols protocl->protocol protocls->protocols @@ -29462,6 +29702,8 @@ psueudo->pseudo psuh->push psychadelic->psychedelic psycology->psychology +psydonym->pseudonym +psydonyms->pseudonyms psyhic->psychic ptd->pdf ptherad->pthread @@ -29544,6 +29786,8 @@ puls->pulse, plus, pumkin->pumpkin punctation->punctuation punctiation->punctuation +pundent->pundit +pundents->pundits puplar->popular puplarity->popularity puplate->populate @@ -29566,6 +29810,7 @@ purpse->purpose pursuade->persuade pursuaded->persuaded pursuades->persuades +purtain->pertain pusehd->pushed pususading->persuading puting->putting From dda0ca62e31a8569c8dc06b5ec700df037a6a662 Mon Sep 17 00:00:00 2001 From: Stefan Kangas Date: Wed, 28 Dec 2022 17:03:21 +0100 Subject: [PATCH 228/302] Update corrections from marvin.cs.uidaho.edu: P Updated 2022-12-28 --- codespell_lib/data/dictionary.txt | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/codespell_lib/data/dictionary.txt b/codespell_lib/data/dictionary.txt index 439182af31..7df604152c 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -27925,6 +27925,7 @@ pilons->pylons pimxap->pixmap pimxaps->pixmaps pinapple->pineapple +pincher->pinscher pinnaple->pineapple pinockle->pinochle pinoneered->pioneered @@ -28031,7 +28032,7 @@ plausable->plausible playble->playable playfull->playful, playfully, playge->plague -playgerise->plagiarise +playgerise->plagiarize, plagiarise, playgerize->plagiarize playgropund->playground playist->playlist @@ -28989,6 +28990,7 @@ pririty->priority, privity, prirority->priority pris->prise, prism, priting->printing +privaledge->privilege privalege->privilege privaleges->privileges privaye->private From fb7c47fb2d6609204751298c3c761d7891911fe5 Mon Sep 17 00:00:00 2001 From: Stefan Kangas Date: Wed, 28 Dec 2022 17:26:25 +0100 Subject: [PATCH 229/302] Add variations of misspellings starting with P --- codespell_lib/data/dictionary.txt | 74 +++++++++++++++++-- .../data/dictionary_en-GB_to_en-US.txt | 5 ++ codespell_lib/data/dictionary_rare.txt | 1 + 3 files changed, 72 insertions(+), 8 deletions(-) diff --git a/codespell_lib/data/dictionary.txt b/codespell_lib/data/dictionary.txt index 7df604152c..cf5ba9baf1 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -27192,8 +27192,10 @@ parrent->parent parsef->parsed, parser, parsec, parseing->parsing parsering->parsing +parshal->partial parshally->partially parshaly->partially +parsial->partial parsially->partially parsialy->partially parsin->parsing @@ -27268,10 +27270,26 @@ partiular->particular partiularly->particularly partiulars->particulars pary->party, parry, +pascheurisation->pasteurisation pascheurise->pasteurise +pascheurised->pasteurised +pascheurises->pasteurises +pascheurising->pasteurising +pascheurization->pasteurization pascheurize->pasteurize +pascheurized->pasteurized +pascheurizes->pasteurizes +pascheurizing->pasteurizing +paschurisation->pasteurisation paschurise->pasteurise +paschurised->pasteurised +paschurises->pasteurises +paschurising->pasteurising +paschurization->pasteurization paschurize->pasteurize +paschurized->pasteurized +paschurizes->pasteurizes +paschurizing->pasteurizing pase->pass, pace, parse, pased->passed, parsed, pasengers->passengers @@ -27310,8 +27328,16 @@ pasteries->pastries pastery->pastry pasttime->pastime pastural->pastoral +pasturisation->pasteurisation pasturise->pasteurise +pasturised->pasteurised +pasturises->pasteurises +pasturising->pasteurising +pasturization->pasteurization pasturize->pasteurize +pasturized->pasteurized +pasturizes->pasteurizes +pasturizing->pasteurizing pasword->password paswords->passwords patameter->parameter @@ -27362,9 +27388,12 @@ peapel->people peapels->peoples peaple->people peaples->peoples -pease->peace +pease->peace, piece, +peased->pieced peaseful->peaceful peasefully->peacefully +peases->pieces +peasing->piecing pecentage->percentage pecified->specified, pacified, pecularities->peculiarities @@ -27380,6 +27409,8 @@ peedmonts->piedmonts peepel->people peepels->peoples peerowet->pirouette +peerowetes->pirouettes +peerowets->pirouettes pefer->prefer peferable->preferable peferably->preferably @@ -27408,6 +27439,7 @@ peirods->periods Peloponnes->Peloponnese, Peloponnesus, penalities->penalties penality->penalty +penatenturies->penitentiaries penatentury->penitentiary penatly->penalty pendantic->pedantic @@ -27427,7 +27459,10 @@ pennensular->peninsular pennensulas->peninsulas penninsula->peninsula penninsular->peninsular +penninsulas->peninsulas pennisula->peninsula +pennisular->peninsular +pennisulas->peninsulas Pennyslvania->Pennsylvania pensinula->peninsula pensle->pencil @@ -27765,10 +27800,12 @@ perticipate->participate perticipated->participated perticipates->participates perticipating->participating +perticipation->participation perticular->particular perticularly->particularly perticulars->particulars pertinate->pertinent +pertinately->pertinently pertrub->perturb pertrubation->perturbation pertrubations->perturbations @@ -27784,8 +27821,7 @@ perturbate->perturb perturbates->perturbs perturbe->perturb, perturbed, perview->preview, purview, -perview->purview -perviews->purviews +perviews->previews, purviews, pervious->previous perviously->previously pessiary->pessary @@ -27797,17 +27833,21 @@ pezier->bezier phanthom->phantom pharmaseudical->pharmaceutical pharmaseudically->pharmaceutical +pharmaseudicals->pharmaceuticals pharmaseudicaly->pharmaceutical pharmaseutical->pharmaceutical pharmaseutically->pharmaceutical +pharmaseuticals->pharmaceuticals pharmaseuticaly->pharmaceutical pharmasist->pharmacist pharmasists->pharmacists pharmasudical->pharmaceutical pharmasudically->pharmaceutical +pharmasudicals->pharmaceuticals pharmasudicaly->pharmaceutical pharmasutical->pharmaceutical pharmasutically->pharmaceutical +pharmasuticals->pharmaceuticals pharmasuticaly->pharmaceutical Pharoah->Pharaoh pharoh->Pharaoh @@ -27837,6 +27877,11 @@ phisicaly->physically phisics->physics phisosophy->philosophy phlem->phlegm +phlema->phlegma +phlematic->phlegmatic +phlematically->phlegmatically +phlematous->phlegmatous +phlemy->phlegmy Phonecian->Phoenecian phoneticly->phonetically phongraph->phonograph @@ -27875,13 +27920,14 @@ piar->pair, pier, pliers, piars->pairs, piers, pliers, piblisher->publisher pice->piece -pich->pitch pich->pitch, pick, pinch, +piched->pitched, picked, pinched, +piches->pitches, pinches, +piching->pitching, picking, pinching, picknic->picnic pickniced->picnicked picknicer->picnicker picknicing->picnicking -picknick->picnic picknicked->picnicked picknicker->picnicker picknicking->picnicking @@ -27892,7 +27938,7 @@ pickyunes->picayunes picniced->picnicked picnicer->picnicker picnicing->picnicking -picnick->picnic +picnick->picnic, picknick, picnicks->picnics picoseond->picosecond picoseonds->picoseconds @@ -27918,6 +27964,7 @@ pijuns->pigeons pilgram->pilgrim pilgramidge->pilgrimage pilgramig->pilgrimage +pilgramige->pilgrimage pilgrimmage->pilgrimage pilgrimmages->pilgrimages pilon->pylon @@ -27974,10 +28021,10 @@ placemet->placement, placemat, place mat, placemets->placements, placemats, place mats, placholder->placeholder placholders->placeholders -plack->plaque placmenet->placement placmenets->placements -plad->plaid +plad->plaid, plead, +pladed->plaided, pleaded, plaform->platform plaforms->platforms plaftorm->platform @@ -28700,7 +28747,9 @@ preffixes->prefixes preffixing->prefixing prefices->prefixes preficiency->proficiency +preficiensy->proficiency preficient->proficient +preficiently->proficiently preficientsy->proficiency prefitler->prefilter prefitlered->prefiltered @@ -29695,6 +29744,10 @@ pssed->passed pssibility->possibility psudo->pseudo psudoinverse->pseudoinverse +psudonym->pseudonym +psudonymity->pseudonymity +psudonymous->pseudonymous +psudonyms->pseudonyms psuedo->pseudo psuedo-fork->pseudo-fork psuedocode->pseudocode @@ -29705,6 +29758,8 @@ psuh->push psychadelic->psychedelic psycology->psychology psydonym->pseudonym +psydonymity->pseudonymity +psydonymous->pseudonymous psydonyms->pseudonyms psyhic->psychic ptd->pdf @@ -29813,6 +29868,9 @@ pursuade->persuade pursuaded->persuaded pursuades->persuades purtain->pertain +purtained->pertained +purtaining->pertaining +purtains->pertains pusehd->pushed pususading->persuading puting->putting 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 4a6245a643..7d75653e95 100644 --- a/codespell_lib/data/dictionary_en-GB_to_en-US.txt +++ b/codespell_lib/data/dictionary_en-GB_to_en-US.txt @@ -275,6 +275,11 @@ organiser->organizer organisers->organizers organises->organizes organising->organizing +pasteurisation->pasteurization +pasteurise->pasteurize +pasteurised->pasteurized +pasteurises->pasteurizes +pasteurising->pasteurizing penalise->penalize penalised->penalized penalises->penalizes diff --git a/codespell_lib/data/dictionary_rare.txt b/codespell_lib/data/dictionary_rare.txt index 99da7389f2..886f9cc2b8 100644 --- a/codespell_lib/data/dictionary_rare.txt +++ b/codespell_lib/data/dictionary_rare.txt @@ -149,6 +149,7 @@ patter->pattern patters->patterns pavings->paving payed->paid +plack->plaque planed->planned pleas->please predicable->predictable From 90b947757bba0ad27901a1d17b315608f8c62c2c Mon Sep 17 00:00:00 2001 From: Stefan Kangas Date: Fri, 13 Jan 2023 02:11:31 +0100 Subject: [PATCH 230/302] Add suggestions from code review --- codespell_lib/data/dictionary.txt | 45 +++++++++++++------------- codespell_lib/data/dictionary_rare.txt | 1 + 2 files changed, 24 insertions(+), 22 deletions(-) diff --git a/codespell_lib/data/dictionary.txt b/codespell_lib/data/dictionary.txt index cf5ba9baf1..140e72cedd 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -26928,8 +26928,9 @@ paermission->permission paermissions->permissions paeth->path pagagraph->paragraph -pagent->pageant -pagents->pageants +pagent->pageant, plangent, +pagentry->pageantry, plangently, +pagents->pageants, plangents, pahses->phases paht->path, pat, part, pahts->paths, pats, parts, @@ -27115,10 +27116,10 @@ paret->parent, parrot, paretheses->parentheses parfay->parfait parge->large -paria->pariah +paria->pariah, parka, parial->partial parially->partially -parias->pariahs +parias->pariahs, parkas, paricular->particular paricularly->particularly parisitic->parasitic @@ -27137,8 +27138,8 @@ parititioning->partitioning parititions->partitions paritiy->parity parituclar->particular -parkay->parquet -parkays->parquets +parkay->parquet, parlay, parkway, +parkays->parquets, parlays, parkways, parlament->parliament parlamentary->parliamentary parlaments->parliaments @@ -27192,7 +27193,7 @@ parrent->parent parsef->parsed, parser, parsec, parseing->parsing parsering->parsing -parshal->partial +parshal->partial, marshal, parshally->partially parshaly->partially parsial->partial @@ -27388,12 +27389,12 @@ peapel->people peapels->peoples peaple->people peaples->peoples -pease->peace, piece, -peased->pieced +pease->peace, piece, please, lease, +peased->pieced, pleased, leased, peaseful->peaceful peasefully->peacefully -peases->pieces -peasing->piecing +peases->pieces, pleases, leases, +peasing->piecing, pleasing, leasing, pecentage->percentage pecified->specified, pacified, pecularities->peculiarities @@ -27828,7 +27829,7 @@ pessiary->pessary petetion->petition pevent->prevent pevents->prevents -pewder->pewter +pewder->pewter, powder, lewder, pezier->bezier phanthom->phantom pharmaseudical->pharmaceutical @@ -27849,8 +27850,8 @@ pharmasutical->pharmaceutical pharmasutically->pharmaceutical pharmasuticals->pharmaceuticals pharmasuticaly->pharmaceutical -Pharoah->Pharaoh -pharoh->Pharaoh +pharoah->pharaoh +pharoh->pharaoh phasepsace->phasespace phasis->phases phenomenom->phenomenon @@ -27876,7 +27877,7 @@ phisically->physically phisicaly->physically phisics->physics phisosophy->philosophy -phlem->phlegm +phlem->phlegm, phloem, phlema->phlegma phlematic->phlegmatic phlematically->phlegmatically @@ -27938,7 +27939,7 @@ pickyunes->picayunes picniced->picnicked picnicer->picnicker picnicing->picnicking -picnick->picnic, picknick, +picnick->picnic picnicks->picnics picoseond->picosecond picoseonds->picoseconds @@ -27949,8 +27950,8 @@ pictureskness->picturesqueness pieceweise->piecewise, piece wise, piecewiese->piecewise, piece wise, piecwise->piecewise, piece wise, -pigen->pigeon -pigens->pigeons +pigen->pigeon, pigpen, +pigens->pigeons, pigpens, piggypack->piggyback piggypacked->piggybacked pigin->pigeon @@ -27967,8 +27968,8 @@ pilgramig->pilgrimage pilgramige->pilgrimage pilgrimmage->pilgrimage pilgrimmages->pilgrimages -pilon->pylon -pilons->pylons +pilon->pylon, pillion, +pilons->pylons, pillions, pimxap->pixmap pimxaps->pixmaps pinapple->pineapple @@ -28079,7 +28080,7 @@ plausable->plausible playble->playable playfull->playful, playfully, playge->plague -playgerise->plagiarize, plagiarise, +playgerise->plagiarise playgerize->plagiarize playgropund->playground playist->playlist @@ -29620,7 +29621,7 @@ protecte->protected, protect, protectiv->protective protectoin->protection protedcted->protected -proteen->protein +proteen->protein, protean, preteen, protential->potential protext->protect protocal->protocol diff --git a/codespell_lib/data/dictionary_rare.txt b/codespell_lib/data/dictionary_rare.txt index 886f9cc2b8..aebecfaf39 100644 --- a/codespell_lib/data/dictionary_rare.txt +++ b/codespell_lib/data/dictionary_rare.txt @@ -150,6 +150,7 @@ patters->patterns pavings->paving payed->paid plack->plaque +placks->plaques planed->planned pleas->please predicable->predictable From 3a6764c002f3a63316a4ec4f158d766978b47b81 Mon Sep 17 00:00:00 2001 From: bl-ue Date: Mon, 14 Jun 2021 09:20:00 -0400 Subject: [PATCH 231/302] Typos from marvin.cs.uidaho.edu/mispell.html (rework of #1374): S Closes #1968 --- codespell_lib/data/dictionary.txt | 262 +++++++++++++++++++++++++++++- 1 file changed, 261 insertions(+), 1 deletion(-) diff --git a/codespell_lib/data/dictionary.txt b/codespell_lib/data/dictionary.txt index 140e72cedd..3d5e1968c6 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -33043,6 +33043,10 @@ rythmic->rhythmic rythyms->rhythms saame->same sabatage->sabotage +sabatosh->sabotage +sabatoshed->sabotaged +sabatoshes->sabotages +sabatoshing->sabotaging sabatour->saboteur sacalar->scalar sacalars->scalars @@ -33115,6 +33119,12 @@ saphire->sapphire saphires->sapphires sargant->sergeant sargeant->sergeant +sarimonial->ceremonial +sarimonies->ceremonies +sarimony->ceremony +sarinomial->ceremonial +sarinomies->ceremonies +sarinomy->ceremony sart->start, star, sarted->started sarter->starter @@ -33162,6 +33172,11 @@ saturdey->Saturday satursday->Saturday satus->status saught->sought +sautay->sauté +sautayed->sautéd +sautayes->sautés +sautaying->sautéing +sautays->sautés sav->save savees->saves saveing->saving @@ -33172,8 +33187,24 @@ savety->safety savgroup->savegroup savve->save, savvy, salve, savy->savvy +sawtay->sauté +sawtayed->sautéd +sawtayes->sautés +sawtaying->sautéing +sawtays->sautés +sawte->sauté +sawteed->sautéd +sawtees->sautés +sawteing->sautéing +sawtes->sautés saxaphone->saxophone sbsampling->subsampling +scafold->scaffold +scafolded->scaffolded +scafolder->scaffolder +scafoldes->scaffolds +scafolding->scaffolding +scafolds->scaffolds scahr->schar scalarr->scalar scaleability->scalability @@ -33215,6 +33246,8 @@ sceen->scene, seen, screen, scheme, sceens->scenes, screens, schemes, sceme->scheme, scene, scemes->schemes, scenes, +scenaireo->scenario +scenaireos->scenarios scenarion->scenario scenarions->scenarios scence->scene, science, sense, @@ -33480,6 +33513,10 @@ securuity->security sedereal->sidereal seeem->seem seeen->seen +seege->siege +seeged->sieged +seeges->sieges +seeging->sieging seelect->select seelected->selected seemes->seems @@ -33491,6 +33528,12 @@ seeting->seating, setting, seething, seetings->settings seeverities->severities seeverity->severity +seez->seize +seezed->seized +seezes->seizes +seezing->seizing +seezure->seizure +seezures->seizures segault->segfault segaults->segfaults segement->segment @@ -33519,8 +33562,12 @@ segmetned->segmented segmetns->segments segument->segment seguoys->segues +segway->segue +segwayed->segued +segwaying->segueing seh->she seige->siege +seina->sienna seing->seeing seinor->senior seires->series @@ -33604,10 +33651,14 @@ sempaphores->semaphores semphore->semaphore semphores->semaphores sempphore->semaphore +senaireo->scenario +senaireos->scenarios senaphore->semaphore senaphores->semaphores senario->scenario senarios->scenarios +senarreo->scenario +senarreos->scenarios sence->sense, since, sencond->second sencondary->secondary @@ -33622,6 +33673,9 @@ senintels->sentinels senitnel->sentinel senitnels->sentinels senquence->sequence +sensability->sensibility +sensable->sensible +sensably->sensibly sensative->sensitive sensetive->sensitive sensisble->sensible @@ -33645,6 +33699,8 @@ sensure->censure sentance->sentence sentances->sentences senteces->sentences +sentenal->sentinel +sentenals->sentinels sentense->sentence sentienl->sentinel sentinal->sentinel @@ -33789,6 +33845,10 @@ sepetated->separated sepetately->separately sepetates->separates sepina->subpoena +seplicural->sepulchral +seplicurally->sepulchrally +seplicuraly->sepulchrally +seplicurlly->sepulchrally seporate->separate sepparation->separation sepparations->separations @@ -33800,6 +33860,9 @@ seprated->separated seprator->separator seprators->separators Septemer->September +sepulchraly->sepulchrally +sepulchrlly->sepulchrally +sepulchrly->sepulchrally sepulchure->sepulchre, sepulcher, sepulcre->sepulchre, sepulcher, seqence->sequence @@ -33868,6 +33931,12 @@ seralize->serialize seralized->serialized seralizes->serializes seralizing->serializing +seramonial->ceremonial +seramonies->ceremonies +seramony->ceremony +seranomial->ceremonial +seranomies->ceremonies +seranomy->ceremony serch->search serched->searched serches->searches @@ -33876,9 +33945,17 @@ sercive->service sercived->serviced sercives->services serciving->servicing +serebral->cerebral +serebrally->cerebrally +sereous->serious +sereousally->seriously +sereouslly->seriously +sereously->seriously sereverless->serverless serevrless->serverless sergent->sergeant +sergun->surgeon +serguns->surgeons serialialisation->serialisation serialialise->serialise serialialised->serialised @@ -33906,11 +33983,21 @@ serices->services, series, serie->series seriel->serial serieses->series +serimonial->ceremonial +serimonies->ceremonies +serimony->ceremony +serinomial->ceremonial +serinomies->ceremonies +serinomy->ceremony serios->serious seriouly->seriously +seriousally->seriously +seriouslly->seriously seriuos->serious serivce->service serivces->services +serrebral->cerebral +serrebrally->cerebrally sersies->series sertificate->certificate sertificated->certificated @@ -33951,6 +34038,17 @@ servoced->serviced servoces->services servocing->servicing serwer->server, sewer, +sescede->secede +sesceded->seceded +sesceder->seceder +sescedes->secedes +sesceding->seceding +seseed->secede +seseeded->seceded +seseeder->seceder +seseedes->secedes +seseeding->seceding +seseeds->secedes sesion->session sesions->sessions sesitive->sensitive @@ -34045,7 +34143,8 @@ sharloton->charlatan sharraid->charade sharraids->charades shashes->slashes -shatow->château +shatow->château, châteaux, +shatows->châteaus, châteauxs, shbang->shebang sheat->sheath, sheet, cheat, sheck->check, cheque, shuck, @@ -34065,6 +34164,8 @@ sheilded->shielded sheilding->shielding sheilds->shields sheme->scheme, shame, +shepard->shepherd +shepards->shepherds shepe->shape sheped->shaped, shepherd, shepered->shepherd @@ -34196,6 +34297,8 @@ sibtitle->subtitle sibtitles->subtitles sicinct->succinct sicinctly->succinctly +sickamore->sycamore +sickamores->sycamores sicne->since sidde->side sideral->sidereal @@ -34219,6 +34322,8 @@ sigals->signals, sigils, siganture->signature sigantures->signatures sigen->sign +sighrynge->syringe +sighrynges->syringes sigificance->significance sigificant->significant siginificant->significant @@ -34261,14 +34366,54 @@ signto->sign to signul->signal signular->singular signularity->singularity +sigrynge->syringe +sigrynges->syringes +silabus->syllabus +silabuses->syllabuses silentely->silently silenty->silently +silhouete->silhouette +silhoueted->silhouetted +silhouetes->silhouettes +silhoueting->silhouetting +silhouwet->silhouette +silhouweted->silhouetted +silhouwetes->silhouettes +silhouweting->silhouetting +silibus->syllabus +silibuses->syllabuses siliently->silently, saliently, +sillabus->syllabus +sillabuses->syllabuses +sillibus->syllabus +sillibuses->syllabuses +sillybus->syllabus +sillybuses->syllabuses +silouet->silhouette +silouete->silhouette +siloueted->silhouetted +silouetes->silhouettes +siloueting->silhouetting silouhette->silhouette silouhetted->silhouetted silouhettes->silhouettes silouhetting->silhouetting +silouwet->silhouette +silouweted->silhouetted +silouwetes->silhouettes +silouweting->silhouetting +silowet->silhouette +siloweted->silhouetted +silowetes->silhouettes +siloweting->silhouetting +silybus->syllabus +silybuses->syllabuses simeple->simple +simetric->symmetric +simetrical->symmetrical +simetricaly->symmetrically +simetriclly->symmetrically +simetricly->symmetrically simetrie->symmetry simetries->symmetries simgle->single @@ -34302,6 +34447,9 @@ simlifying->simplifying simly->simply, simile, smiley, simmetric->symmetric simmetrical->symmetrical +simmetricaly->symmetrically +simmetriclly->symmetrically +simmetricly->symmetrically simmetry->symmetry simmilar->similar simpification->simplification @@ -34324,6 +34472,20 @@ simpliifcation->simplification simpliifcations->simplifications simplist->simplest simpliy->simply, simplify, +simptom->symptom +simptomatic->symptomatic +simptomatically->symptomatically +simptomaticaly->symptomatically +simptomaticlly->symptomatically +simptomaticly->symptomatically +simptoms->symptoms +simptum->symptom +simptumatic->symptomatic +simptumatically->symptomatically +simptumaticaly->symptomatically +simptumaticlly->symptomatically +simptumaticly->symptomatically +simptums->symptoms simpy->simply simualte->simulate simualted->simulated @@ -34359,6 +34521,8 @@ simultanous->simultaneous simultanously->simultaneously simulteniously->simultaneously simutaneously->simultaneously +sinagog->synagogue +sinagogs->synagogues sinature->signature sincerley->sincerely sincerly->sincerely @@ -34378,6 +34542,7 @@ singificand->significand, significant, singl->single singlar->singular single-threded->single-threaded +singlely->singly singls->singles, single, singlton->singleton singltons->singletons @@ -34402,8 +34567,14 @@ singuarity->singularity singuarl->singular singulat->singular singulaties->singularities +sinic->cynic +sinics->cynics sinlge->single sinlges->singles +sinnagog->synagogue +sinnagogs->synagogues +sinnic->cynic +sinnics->cynics sinply->simply sinse->sines, since, sintac->syntax @@ -34441,8 +34612,16 @@ sirectories->directories sirectors->directors sirectory->directory sirects->directs +siringe->syringe +siringes->syringes +sirvaylence->surveillance +sirynge->syringe +sirynges->syringes sise->size, sisal, sisnce->since +sisser->scissor +sissers->scissors +sist->cyst sistem->system sistematically->systematically sistematics->systematics @@ -34462,6 +34641,7 @@ sistemized->systemized sistemizes->systemizes sistemizing->systemizing sistems->systems +sists->cysts sitation->situation sitations->situations sitaution->situation @@ -34494,12 +34674,19 @@ situtation->situation situtations->situations siutable->suitable siute->suite +sive->sieve +sives->sieves sivible->visible siwtch->switch siwtched->switched siwtching->switching Sixtin->Sistine, Sixteen, siz->size, six, +sizemologogical->seismological +sizemologogically->seismologically +sizemology->seismology +sizor->sizer, scissor, +sizors->sizers, scissors, sizre->size Skagerak->Skagerrak skalar->scalar @@ -34526,7 +34713,20 @@ skippd->skipped skippped->skipped skippps->skips skipt->skip, Skype, skipped, +skitsofrinic->schizophrenic +skool->school +skooled->schooled +skooling->schooling +skools->schools skopped->skipped, shopped, slopped, stopped, +skurge->scourge +skurged->scourged +skurges->scourges +skurging->scourging +skwalk->squawk +skwalked->squawked +skwalking->squawking +skwalks->squawks skyp->skip, Skype, slac->slack slach->slash @@ -34544,6 +34744,10 @@ slection->selection sleect->select sleeped->slept sleepp->sleep +slewth->sleuth +slewthed->sleuthed +slewthing->sleuthing +slewths->sleuths slicable->sliceable slient->silent sliently->silently @@ -34558,6 +34762,11 @@ sligthly->slightly sligtly->slightly sliped->slipped sliseshow->slideshow +slite->sleight +slooth->sleuth +sloothed->sleuthing +sloothing->sleuthing +slooths->sleuths slowy->slowly slq->sql sluggify->slugify @@ -34605,6 +34814,8 @@ socript->script socripted->scripted socripting->scripting socripts->scripts +sodder->solder +sodders->solders sodo->sudo, soda, sod, sods, dodo, solo, sodu->sudo, soda, sod, sods, soecialize->specialized @@ -34612,6 +34823,10 @@ soem->some soemthing->something soemwhere->somewhere sofisticated->sophisticated +sofmore->sophomore +sofmores->sophomores +sofomore->sophomore +sofomores->sophomores softend->softened softwade->software softwares->software @@ -34624,11 +34839,15 @@ soiurce->source soket->socket sokets->sockets solarmutx->solarmutex +solataire->solitaire +solatare->solitaire solatary->solitary solate->isolate solated->isolated solates->isolates solating->isolating +soldger->soldier +soldgers->soldiers soler->solver, solar, solely, soley->solely solf->solve, sold, @@ -34637,6 +34856,8 @@ solfer->solver, solder, solfes->solves solfing->solving solfs->solves +solger->soldier +solgers->soldiers soliders->soldiers solification->solidification soliliquy->soliloquy @@ -34704,11 +34925,18 @@ soodonim->pseudonym sooit->suet, suit, soot, soop->soup, scoop, snoop, soap, soource->source +soovinear->souvenir +soovinears->souvenirs +soovineer->souvenir +soovineers->souvenirs +soovinneer->souvenir +soovinneers->souvenirs sophicated->sophisticated sophisicated->sophisticated sophisitcated->sophisticated sophisticted->sophisticated sophmore->sophomore +sophmores->sophomores sopund->sound sopunded->sounded sopunding->sounding @@ -34749,6 +34977,7 @@ soultion->solution soultions->solutions soundard->soundcard sountrack->soundtrack +sourbraten->sauerbraten sourc->source sourcd->sourced, source, sourcde->sourced, source, @@ -34767,6 +34996,12 @@ sourthern->southern southbrige->southbridge souvenier->souvenir souveniers->souvenirs +souvinear->souvenir +souvinears->souvenirs +souvineer->souvenir +souvineers->souvenirs +souvinneer->souvenir +souvinneers->souvenirs soveits->soviets sover->solver sovereignity->sovereignty @@ -35543,6 +35778,7 @@ stawk->stalk stcokbrush->stockbrush stdanard->standard stdanards->standards +stegnography->steganography stength->strength steram->stream steramed->streamed @@ -36495,10 +36731,21 @@ susbsystem->subsystem susbsystems->subsystems susbsytem->subsystem susbsytems->subsystems +suscede->secede +susceded->seceded +susceder->seceder +suscedes->secedes +susceding->seceding suscribe->subscribe suscribed->subscribed suscribes->subscribes suscript->subscript +suseed->secede +suseeded->seceded +suseeder->seceder +suseedes->secedes +suseeding->seceding +suseeds->secedes susepect->suspect suseptable->susceptible suseptible->susceptible @@ -36513,6 +36760,12 @@ suspicous->suspicious suspicously->suspiciously suspision->suspicion suspsend->suspend +susseed->secede +susseeded->seceded +susseeder->seceder +susseedes->secedes +susseeding->seceding +susseeds->secedes sussinct->succinct sustainaiblity->sustainability sustem->system @@ -36677,6 +36930,13 @@ symobolic->symbolic symobolical->symbolical symol->symbol symols->symbols +symptum->symptom +symptumatic->symptomatic +symptumatically->symptomatically +symptumaticaly->symptomatically +symptumaticlly->symptomatically +symptumaticly->symptomatically +symptums->symptoms synagouge->synagogue synamic->dynamic synax->syntax From a718234e96465418a47060655f290b29f99f8c05 Mon Sep 17 00:00:00 2001 From: bl-ue Date: Mon, 14 Jun 2021 09:20:43 -0400 Subject: [PATCH 232/302] Add a few en_GB -> en_US --- codespell_lib/data/dictionary_en-GB_to_en-US.txt | 2 ++ 1 file changed, 2 insertions(+) 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 7d75653e95..b84e3d418b 100644 --- a/codespell_lib/data/dictionary_en-GB_to_en-US.txt +++ b/codespell_lib/data/dictionary_en-GB_to_en-US.txt @@ -368,6 +368,8 @@ sterilised->sterilized steriliser->sterilizer sterilises->sterilizes sterilising->sterilizing +storey->story +storeys->stories summarise->summarize summarised->summarized summarises->summarizes From 586b55cca510f0255fd33db131a2163fefd410d7 Mon Sep 17 00:00:00 2001 From: Stefan Kangas Date: Thu, 29 Dec 2022 11:27:32 +0100 Subject: [PATCH 233/302] Update corrections from marvin.cs.uidaho.edu: S Updated 2022-12-29 --- 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 3d5e1968c6..a4f6158e94 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -33115,6 +33115,7 @@ sanwich->sandwich sanwiches->sandwiches sanytise->sanitise sanytize->sanitize +sapeena->subpoena saphire->sapphire saphires->sapphires sargant->sergeant @@ -33996,6 +33997,7 @@ seriouslly->seriously seriuos->serious serivce->service serivces->services +seround->surround serrebral->cerebral serrebrally->cerebrally sersies->series @@ -34173,6 +34175,7 @@ sheperedly->shepherdly shepereds->shepherds shepes->shapes sheping->shaping +shepperd->shepherd shepre->sphere shepres->spheres sherif->sheriff @@ -34324,6 +34327,7 @@ sigantures->signatures sigen->sign sighrynge->syringe sighrynges->syringes +sighth->scythe sigificance->significance sigificant->significant siginificant->significant @@ -34368,6 +34372,7 @@ signular->singular signularity->singularity sigrynge->syringe sigrynges->syringes +siguret->cigarette silabus->syllabus silabuses->syllabuses silentely->silently @@ -36749,6 +36754,7 @@ suseeds->secedes susepect->suspect suseptable->susceptible suseptible->susceptible +susinct->succinct susinctly->succinctly susinkt->succinct suspedn->suspend From 6ccf2dd61780ce146c261e1ffbd71797d12773cc Mon Sep 17 00:00:00 2001 From: Stefan Kangas Date: Thu, 29 Dec 2022 11:22:45 +0100 Subject: [PATCH 234/302] Add variations of misspellings starting with S --- codespell_lib/data/dictionary.txt | 71 ++++++++++++++++++++++++++++--- 1 file changed, 64 insertions(+), 7 deletions(-) diff --git a/codespell_lib/data/dictionary.txt b/codespell_lib/data/dictionary.txt index a4f6158e94..20f8101f29 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -33116,6 +33116,9 @@ sanwiches->sandwiches sanytise->sanitise sanytize->sanitize sapeena->subpoena +sapeenad->subpoenaed +sapeenaing->subpoenaing +sapeenas->subpoenas saphire->sapphire saphires->sapphires sargant->sergeant @@ -33123,9 +33126,11 @@ sargeant->sergeant sarimonial->ceremonial sarimonies->ceremonies sarimony->ceremony +sarimonys->ceremonies sarinomial->ceremonial sarinomies->ceremonies sarinomy->ceremony +sarinomys->ceremonies sart->start, star, sarted->started sarter->starter @@ -33187,6 +33192,7 @@ savere->severe savety->safety savgroup->savegroup savve->save, savvy, salve, +savves->saves, salves, savy->savvy sawtay->sauté sawtayed->sautéd @@ -33678,7 +33684,9 @@ sensability->sensibility sensable->sensible sensably->sensibly sensative->sensitive +sensativity->sensitivity sensetive->sensitive +sensetivity->sensitivity sensisble->sensible sensistive->sensitive sensistively->sensitively, sensitivity, @@ -33935,9 +33943,11 @@ seralizing->serializing seramonial->ceremonial seramonies->ceremonies seramony->ceremony +seramonys->ceremonies seranomial->ceremonial seranomies->ceremonies seranomy->ceremony +seranomys->ceremonies serch->search serched->searched serches->searches @@ -33987,9 +33997,11 @@ serieses->series serimonial->ceremonial serimonies->ceremonies serimony->ceremony +serimonys->ceremonies serinomial->ceremonial serinomies->ceremonies serinomy->ceremony +serinomys->ceremonies serios->serious seriouly->seriously seriousally->seriously @@ -33998,6 +34010,9 @@ seriuos->serious serivce->service serivces->services seround->surround +serounded->surrounded +serounding->surrounding +serounds->surrounds serrebral->cerebral serrebrally->cerebrally sersies->series @@ -34167,6 +34182,8 @@ sheilding->shielding sheilds->shields sheme->scheme, shame, shepard->shepherd +sheparded->shepherded +sheparding->shepherding shepards->shepherds shepe->shape sheped->shaped, shepherd, @@ -34176,9 +34193,13 @@ shepereds->shepherds shepes->shapes sheping->shaping shepperd->shepherd +shepperded->shepherded +shepperding->shepherding +shepperds->shepherds shepre->sphere shepres->spheres sherif->sheriff +sherifs->sheriffs shfit->shift shfited->shifted shfiting->shifting @@ -34327,7 +34348,8 @@ sigantures->signatures sigen->sign sighrynge->syringe sighrynges->syringes -sighth->scythe +sighth->scythe, sight, +sighths->scythes, sights, sigificance->significance sigificant->significant siginificant->significant @@ -34373,6 +34395,10 @@ signularity->singularity sigrynge->syringe sigrynges->syringes siguret->cigarette +sigurete->cigarette +siguretes->cigarettes +sigurets->cigarettes +sigurette->cigarette silabus->syllabus silabuses->syllabuses silentely->silently @@ -34381,10 +34407,12 @@ silhouete->silhouette silhoueted->silhouetted silhouetes->silhouettes silhoueting->silhouetting +silhouetist->silhouettist silhouwet->silhouette silhouweted->silhouetted silhouwetes->silhouettes silhouweting->silhouetting +silhouwetist->silhouettist silibus->syllabus silibuses->syllabuses siliently->silently, saliently, @@ -34399,6 +34427,7 @@ silouete->silhouette siloueted->silhouetted silouetes->silhouettes siloueting->silhouetting +silouetist->silhouettist silouhette->silhouette silouhetted->silhouetted silouhettes->silhouettes @@ -34407,10 +34436,12 @@ silouwet->silhouette silouweted->silhouetted silouwetes->silhouettes silouweting->silhouetting +silouwetist->silhouettist silowet->silhouette siloweted->silhouetted silowetes->silhouettes siloweting->silhouetting +silowetist->silhouettist silybus->syllabus silybuses->syllabuses simeple->simple @@ -34573,12 +34604,18 @@ singuarl->singular singulat->singular singulaties->singularities sinic->cynic +sinical->cynical +sinically->cynically +sinicaly->cynically sinics->cynics sinlge->single sinlges->singles sinnagog->synagogue sinnagogs->synagogues sinnic->cynic +sinnical->cynical +sinnically->cynically +sinnicaly->cynically sinnics->cynics sinply->simply sinse->sines, since, @@ -34619,12 +34656,19 @@ sirectory->directory sirects->directs siringe->syringe siringes->syringes +sirvayl->surveil +sirvayled->surveiled sirvaylence->surveillance +sirvayles->surveils +sirvayling->surveiling +sirvayls->surveils sirynge->syringe sirynges->syringes sise->size, sisal, sisnce->since sisser->scissor +sissered->scissored +sissering->scissoring sissers->scissors sist->cyst sistem->system @@ -34679,14 +34723,18 @@ situtation->situation situtations->situations siutable->suitable siute->suite -sive->sieve -sives->sieves +sive->sieve, save, +sived->sieved, saved, +sives->sieves, saves, sivible->visible +siving->sieving, saving, siwtch->switch siwtched->switched siwtching->switching Sixtin->Sistine, Sixteen, siz->size, six, +sizemologist->seismologist +sizemologists->seismologists sizemologogical->seismological sizemologogically->seismologically sizemology->seismology @@ -34719,6 +34767,7 @@ skippped->skipped skippps->skips skipt->skip, Skype, skipped, skitsofrinic->schizophrenic +skitsofrinics->schizophrenics skool->school skooled->schooled skooling->schooling @@ -34820,6 +34869,8 @@ socripted->scripted socripting->scripting socripts->scripts sodder->solder +soddered->soldered +soddering->soldering sodders->solders sodo->sudo, soda, sod, sods, dodo, solo, sodu->sudo, soda, sod, sods, @@ -34852,6 +34903,8 @@ solated->isolated solates->isolates solating->isolating soldger->soldier +soldgered->soldiered +soldgering->soldiering soldgers->soldiers soler->solver, solar, solely, soley->solely @@ -34862,6 +34915,8 @@ solfes->solves solfing->solving solfs->solves solger->soldier +solgered->soldiered +solgering->soldiering solgers->soldiers soliders->soldiers solification->solidification @@ -35783,6 +35838,7 @@ stawk->stalk stcokbrush->stockbrush stdanard->standard stdanards->standards +stegnographic->steganographic stegnography->steganography stength->strength steram->stream @@ -36736,11 +36792,12 @@ susbsystem->subsystem susbsystems->subsystems susbsytem->subsystem susbsytems->subsystems -suscede->secede -susceded->seceded +suscede->secede, succeed, +susceded->seceded, succeeded, susceder->seceder -suscedes->secedes -susceding->seceding +susceders->seceders +suscedes->secedes, succeeds, +susceding->seceding, succeeding, suscribe->subscribe suscribed->subscribed suscribes->subscribes From f7ef43a26f7783207f51024d9766b2b3914de9ed Mon Sep 17 00:00:00 2001 From: Stefan Kangas Date: Fri, 13 Jan 2023 02:11:40 +0100 Subject: [PATCH 235/302] Add suggestions from code review --- codespell_lib/data/dictionary.txt | 22 +++++++++++----------- 1 file changed, 11 insertions(+), 11 deletions(-) diff --git a/codespell_lib/data/dictionary.txt b/codespell_lib/data/dictionary.txt index 20f8101f29..3a288a5616 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -33574,7 +33574,7 @@ segwayed->segued segwaying->segueing seh->she seige->siege -seina->sienna +seina->sienna, seine, seing->seeing seinor->senior seires->series @@ -33958,7 +33958,7 @@ sercives->services serciving->servicing serebral->cerebral serebrally->cerebrally -sereous->serious +sereous->serious, serous, sereousally->seriously sereouslly->seriously sereously->seriously @@ -34160,8 +34160,8 @@ sharloton->charlatan sharraid->charade sharraids->charades shashes->slashes -shatow->château, châteaux, -shatows->châteaus, châteauxs, +shatow->shadow, château, châteaux, +shatows->shadows, châteaux, châteaus, shbang->shebang sheat->sheath, sheet, cheat, sheck->check, cheque, shuck, @@ -34603,7 +34603,7 @@ singuarity->singularity singuarl->singular singulat->singular singulaties->singularities -sinic->cynic +sinic->cynic, sonic, sinical->cynical sinically->cynically sinicaly->cynically @@ -34666,11 +34666,11 @@ sirynge->syringe sirynges->syringes sise->size, sisal, sisnce->since -sisser->scissor +sisser->scissor, sister, sissier, sissered->scissored sissering->scissoring -sissers->scissors -sist->cyst +sissers->scissors, sisters, +sist->cyst, sits, sift, sistem->system sistematically->systematically sistematics->systematics @@ -34690,7 +34690,7 @@ sistemized->systemized sistemizes->systemizes sistemizing->systemizing sistems->systems -sists->cysts +sists->cysts, sifts, sits, sitation->situation sitations->situations sitaution->situation @@ -34816,8 +34816,8 @@ sligthly->slightly sligtly->slightly sliped->slipped sliseshow->slideshow -slite->sleight -slooth->sleuth +slite->sleight, elite, slide, site, +slooth->sleuth, sloth, sooth, sloothed->sleuthing sloothing->sleuthing slooths->sleuths From f15a8c92911ef6ae84b7ffa6037a3e21bf929bc0 Mon Sep 17 00:00:00 2001 From: Christian Fischer Date: Wed, 18 Jan 2023 10:34:09 +0100 Subject: [PATCH 236/302] Add various spelling corrections for words containing "meant" (#2712) --- 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 3a288a5616..74b1598354 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -11083,6 +11083,11 @@ decrasing->decreasing, deceasing, decration->decoration decreace->decrease decreas->decrease +decremeant->decrement +decremeantal->decremental +decremeanted->decremented +decremeanting->decrementing +decremeants->decrements decremenet->decrement decremenetd->decremented decremeneted->decremented @@ -20181,7 +20186,11 @@ increament->increment increas->increase incredable->incredible incremantal->incremental +incremeant->increment incremeantal->incremental +incremeanted->incremented +incremeanting->incrementing +incremeants->increments incremenet->increment incremenetd->incremented incremeneted->incremented @@ -23343,6 +23352,7 @@ meaningfull->meaningful meanining->meaning meaninless->meaningless meaninng->meaning +meanting->meaning mear->wear, mere, mare, mearly->merely, nearly, meassurable->measurable From 3841ffe24aba604a5d16439c8216b018a7ec649a Mon Sep 17 00:00:00 2001 From: Dimitri Papadopoulos Orfanos <3234522+DimitriPapadopoulos@users.noreply.github.com> Date: Wed, 18 Jan 2023 18:02:01 +0100 Subject: [PATCH 237/302] Improve support of TOML config files (#2715) --- codespell_lib/_codespell.py | 36 ++++++++++++++++++++---------------- 1 file changed, 20 insertions(+), 16 deletions(-) diff --git a/codespell_lib/_codespell.py b/codespell_lib/_codespell.py index 169fcc8443..5b9fe32c23 100644 --- a/codespell_lib/_codespell.py +++ b/codespell_lib/_codespell.py @@ -544,25 +544,29 @@ def parse_options( config = configparser.ConfigParser(interpolation=None) # Read toml before other config files. - toml_files_errors = [] + toml_files = [] + tomlib_raise_error = False if os.path.isfile("pyproject.toml"): - toml_files_errors.append(("pyproject.toml", False)) + toml_files.append("pyproject.toml") if options.toml: - toml_files_errors.append((options.toml, True)) - for toml_file, raise_error in toml_files_errors: + toml_files.append(options.toml) + tomlib_raise_error = True + if toml_files: try: - import tomli - except Exception as exc: - if raise_error: - raise ImportError( - f"tomli is required to read pyproject.toml but could not " - f"be imported, got: {exc}" - ) from None - else: - continue - with open(toml_file, "rb") as f: - data = tomli.load(f).get("tool", {}) - config.read_dict(data) + import tomlib # type: ignore + except ModuleNotFoundError: + try: + import tomli as tomlib # type: ignore + except ImportError as e: + if tomlib_raise_error: + raise ImportError( + f"tomlib or tomli are required to read pyproject.toml " + f"but could not be imported, got: {e}" + ) from None + for toml_file in toml_files: + with open(toml_file, "rb") as f: + data = tomlib.load(f).get("tool", {}) + config.read_dict(data) # Collect which config files are going to be used used_cfg_files = [] From 7b107a70cbc45305dd1d8348e149c2310e65ffea Mon Sep 17 00:00:00 2001 From: Marvin Vogt Date: Wed, 25 Jan 2023 12:10:27 +0100 Subject: [PATCH 238/302] Adjust test for `python3.11` --- codespell_lib/tests/test_basic.py | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/codespell_lib/tests/test_basic.py b/codespell_lib/tests/test_basic.py index eab7b30745..21856c7a37 100644 --- a/codespell_lib/tests/test_basic.py +++ b/codespell_lib/tests/test_basic.py @@ -1081,7 +1081,9 @@ def test_config_toml( ) else: assert kind == "toml" - pytest.importorskip("tomli") + python_version = sys.version_info + if python_version.major == 3 and python_version.minor < 11: + pytest.importorskip("tomli") tomlfile = str(tmp_path / "pyproject.toml") args = ("--toml", tomlfile) with open(tomlfile, "w") as f: From 65b2f88ae48c42cba8b4194a8a66f70977738d0b Mon Sep 17 00:00:00 2001 From: Marvin Vogt Date: Wed, 25 Jan 2023 21:45:37 +0100 Subject: [PATCH 239/302] Simplify evaluation --- codespell_lib/tests/test_basic.py | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/codespell_lib/tests/test_basic.py b/codespell_lib/tests/test_basic.py index 21856c7a37..cb000afd5f 100644 --- a/codespell_lib/tests/test_basic.py +++ b/codespell_lib/tests/test_basic.py @@ -1081,8 +1081,7 @@ def test_config_toml( ) else: assert kind == "toml" - python_version = sys.version_info - if python_version.major == 3 and python_version.minor < 11: + if sys.version_info < (3, 11): pytest.importorskip("tomli") tomlfile = str(tmp_path / "pyproject.toml") args = ("--toml", tomlfile) From 7478623cc81c88e288ae053121ccd89f1efda1aa Mon Sep 17 00:00:00 2001 From: Marvin Vogt Date: Thu, 26 Jan 2023 20:18:37 +0100 Subject: [PATCH 240/302] Fix typo "tomlib" --- codespell_lib/_codespell.py | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/codespell_lib/_codespell.py b/codespell_lib/_codespell.py index 5b9fe32c23..b0462ebd20 100644 --- a/codespell_lib/_codespell.py +++ b/codespell_lib/_codespell.py @@ -545,27 +545,27 @@ def parse_options( # Read toml before other config files. toml_files = [] - tomlib_raise_error = False + tomllib_raise_error = False if os.path.isfile("pyproject.toml"): toml_files.append("pyproject.toml") if options.toml: toml_files.append(options.toml) - tomlib_raise_error = True + tomllib_raise_error = True if toml_files: try: - import tomlib # type: ignore + import tomllib # type: ignore except ModuleNotFoundError: try: - import tomli as tomlib # type: ignore + import tomli as tomllib # type: ignore except ImportError as e: - if tomlib_raise_error: + if tomllib_raise_error: raise ImportError( - f"tomlib or tomli are required to read pyproject.toml " + f"tomllib or tomli are required to read pyproject.toml " f"but could not be imported, got: {e}" ) from None for toml_file in toml_files: with open(toml_file, "rb") as f: - data = tomlib.load(f).get("tool", {}) + data = tomllib.load(f).get("tool", {}) config.read_dict(data) # Collect which config files are going to be used From f3561a3c91d955739b4c31f63820d50a47ad9982 Mon Sep 17 00:00:00 2001 From: Christian Clauss Date: Wed, 1 Feb 2023 14:31:27 +0100 Subject: [PATCH 241/302] pre-commit: Upgrade psf/black for stable style 2023 --- .pre-commit-config.yaml | 8 ++++---- README.rst | 2 +- codespell_lib/tests/test_dictionary.py | 2 +- 3 files changed, 6 insertions(+), 6 deletions(-) diff --git a/.pre-commit-config.yaml b/.pre-commit-config.yaml index f2851fa68a..018858e8d7 100644 --- a/.pre-commit-config.yaml +++ b/.pre-commit-config.yaml @@ -52,7 +52,7 @@ repos: - id: check-case-conflict - id: check-toml - repo: https://github.com/adrienverge/yamllint.git - rev: v1.28.0 + rev: v1.29.0 hooks: - id: yamllint args: @@ -60,7 +60,7 @@ repos: - -d - '{extends: relaxed, rules: {line-length: {max: 90}}}' - repo: https://github.com/psf/black - rev: 22.12.0 + rev: 23.1.0 hooks: - id: black - repo: https://github.com/Lucas-C/pre-commit-hooks-bandit @@ -68,7 +68,7 @@ repos: hooks: - id: python-bandit-vulnerability-check - repo: https://github.com/PyCQA/autoflake - rev: v2.0.0 + rev: v2.0.1 hooks: - id: autoflake - repo: https://github.com/PyCQA/flake8 @@ -84,7 +84,7 @@ repos: - pycodestyle>=2.9.1 - pyflakes>=2.5.0 - repo: https://github.com/PyCQA/isort - rev: 5.10.1 + rev: 5.12.0 hooks: - id: isort - repo: https://github.com/codespell-project/codespell diff --git a/README.rst b/README.rst index f1c7e6d451..5399c77e34 100644 --- a/README.rst +++ b/README.rst @@ -178,7 +178,7 @@ codespell also works with `pre-commit`, using rev: v2.2.2 hooks: - id: codespell - + If one configures codespell using the `pyproject.toml` file instead use: .. code-block:: yaml diff --git a/codespell_lib/tests/test_dictionary.py b/codespell_lib/tests/test_dictionary.py index 515c3d2d0a..c9302ae34d 100644 --- a/codespell_lib/tests/test_dictionary.py +++ b/codespell_lib/tests/test_dictionary.py @@ -124,7 +124,7 @@ def _check_err_rep( ), f"error {err}: correction {rep!r} cannot start with whitespace" _check_aspell(err, f"error {err!r}", in_aspell[0], fname, languages[0]) prefix = f"error {err}: correction {rep!r}" - for (regex, msg) in [ + for regex, msg in [ (start_comma, "%s starts with a comma"), ( whitespace_comma, From 5a73a626f81a86ac875a871c0011106d24418f26 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Armin=20M=C3=BCller?= <27155134+arm-in@users.noreply.github.com> Date: Wed, 1 Feb 2023 22:08:12 +0100 Subject: [PATCH 242/302] Add recjected->rejected --- 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 74b1598354..db5a7126a7 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -30697,6 +30697,10 @@ recivers->receivers recivership->receivership recives->receives reciving->receiving +recject->reject +recjected->rejected +recjecting->rejecting +recjects->rejects reclaimation->reclamation recnt->recent, recant, rent, recntly->recently From fb4d6635d076fc9d3548241d89f35b3b5c12d145 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Armin=20M=C3=BCller?= <27155134+arm-in@users.noreply.github.com> Date: Wed, 1 Feb 2023 22:09:26 +0100 Subject: [PATCH 243/302] Add evaluatated->evaluated --- 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 db5a7126a7..8e082252b3 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -15207,6 +15207,10 @@ evalited->evaluated evalites->evaluates evaluataion->evaluation evaluataions->evaluations +evaluatate->evaluate +evaluatated->evaluated +evaluatates->evaluates +evaluatating->evaluating evalueate->evaluate evalueated->evaluated evaluete->evaluate From 11c4931e269cc467e1ddca1c8810d2d5abb28ede Mon Sep 17 00:00:00 2001 From: luzpaz Date: Sat, 4 Feb 2023 11:19:06 +0000 Subject: [PATCH 244/302] Add totatl(ly)->total(ly) --- 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 8e082252b3..7e4537bd3d 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -38068,6 +38068,8 @@ Tosday->Tuesday, today, totaly->totally totat->total totation->rotation +totatl->total +totatlly->totally totats->totals tothe->to the tothiba->toshiba From b1c6519dd375b62397fc4cf844aa7898427e4321 Mon Sep 17 00:00:00 2001 From: Tetsuo Koyama Date: Sat, 13 Aug 2022 13:13:26 +0900 Subject: [PATCH 245/302] Add visulization->visualization --- 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 7e4537bd3d..92dd4301b5 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -40688,6 +40688,7 @@ visuallization->visualization visualy->visually visualyse->visualise, visualize, visualzation->visualization +visulization->visualization vitories->victories vitrole->vitriol vitrual->virtual From 206503ef041351eb72b49006ffd916c4ff6ddcda Mon Sep 17 00:00:00 2001 From: Tetsuo Koyama Date: Wed, 17 Aug 2022 04:09:27 +0900 Subject: [PATCH 246/302] Apply suggestions from code review --- 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 92dd4301b5..f71c5a60ef 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -40685,10 +40685,16 @@ visualizaton->visualization visualizatons->visualizations visuallisation->visualisation visuallization->visualization +visualsation->visualisation +visualsations->visualisations visualy->visually visualyse->visualise, visualize, visualzation->visualization +visualzations->visualizations +visulisation->visualisation +visulisations->visualisations visulization->visualization +visulizations->visualizations vitories->victories vitrole->vitriol vitrual->virtual From ea349a2ab846ace712f81b50825942935805d531 Mon Sep 17 00:00:00 2001 From: luzpaz Date: Sun, 5 Feb 2023 08:52:26 -0500 Subject: [PATCH 247/302] Add several spelling corrections (#2410) Co-authored-by: Peter Newman --- codespell_lib/data/dictionary.txt | 1 + codespell_lib/data/dictionary_rare.txt | 1 + 2 files changed, 2 insertions(+) diff --git a/codespell_lib/data/dictionary.txt b/codespell_lib/data/dictionary.txt index f71c5a60ef..500fb3d0d4 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -11083,6 +11083,7 @@ decrasing->decreasing, deceasing, decration->decoration decreace->decrease decreas->decrease +decreate->decrease, discrete, destroy, desecrate, decremeant->decrement decremeantal->decremental decremeanted->decremented diff --git a/codespell_lib/data/dictionary_rare.txt b/codespell_lib/data/dictionary_rare.txt index aebecfaf39..43f4ecd892 100644 --- a/codespell_lib/data/dictionary_rare.txt +++ b/codespell_lib/data/dictionary_rare.txt @@ -130,6 +130,7 @@ medias->media, mediums, meu->menu meus->menus midwifes->midwives +mistakingly->mistakenly moil->soil, mohel, mot->not moue->mouse From ab75ed60c35d97fe3064df33311a547f2dfe4464 Mon Sep 17 00:00:00 2001 From: Dimitri Papadopoulos <3234522+DimitriPapadopoulos@users.noreply.github.com> Date: Wed, 8 Feb 2023 08:03:25 +0100 Subject: [PATCH 248/302] Fix CI mypy job I guess mypy has been updated in CI images: it used to require `type: ignore` and now asks we remove it. --- 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 b0462ebd20..a082e6d1a9 100644 --- a/codespell_lib/_codespell.py +++ b/codespell_lib/_codespell.py @@ -556,7 +556,7 @@ def parse_options( import tomllib # type: ignore except ModuleNotFoundError: try: - import tomli as tomllib # type: ignore + import tomli as tomllib except ImportError as e: if tomllib_raise_error: raise ImportError( From f5255b66606f37859d1e441054a5dac99adde101 Mon Sep 17 00:00:00 2001 From: Christian Fischer Date: Wed, 8 Feb 2023 07:42:28 +0100 Subject: [PATCH 249/302] Add various spelling corrections for (in|ex)clude* and modify* --- 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 500fb3d0d4..f29021bbff 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -15617,6 +15617,10 @@ excisted->existed excisting->existing excitment->excitement exclamantion->exclamation +excliude->exclude +excliuded->excluded +excliudes->excludes +excliuding->excluding excludde->exclude excludind->excluding exclue->exclude @@ -20013,6 +20017,10 @@ incldue->include incldued->included incldues->includes inclinaison->inclination +incliude->include +incliuded->included +incliudes->includes +incliuding->including inclode->include inclreased->increased includ->include @@ -24187,6 +24195,10 @@ modifuable->modifiable modifued->modified modifx->modify modifyable->modifiable +modifyed->modified +modifyer->modifier +modifyers->modifiers +modifyes->modifies modiifier->modifier modiifiers->modifiers modiration->moderation From a31a93c862ca529cfbee454f6c1439cdf85bc7fb Mon Sep 17 00:00:00 2001 From: Dimitri Papadopoulos <3234522+DimitriPapadopoulos@users.noreply.github.com> Date: Tue, 17 Jan 2023 17:07:50 +0100 Subject: [PATCH 250/302] =?UTF-8?q?spwan=20=E2=86=92=20spawn?= 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 f29021bbff..8a6532d4c5 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -35673,6 +35673,10 @@ spsacing->spacing sptintf->sprintf spurios->spurious spurrious->spurious +spwan->spawn +spwaned->spawned +spwaning->spawning +spwans->spawns sqare->square sqared->squared sqares->squares From fcbd07ab8bf85ee9a838cd19d7c58728a1778a4f Mon Sep 17 00:00:00 2001 From: Dimitri Papadopoulos <3234522+DimitriPapadopoulos@users.noreply.github.com> Date: Thu, 12 Jan 2023 16:13:28 +0100 Subject: [PATCH 251/302] Focussed is correct in British English According to Longman, focussed is British English and focused American English. --- codespell_lib/data/dictionary.txt | 3 --- 1 file changed, 3 deletions(-) diff --git a/codespell_lib/data/dictionary.txt b/codespell_lib/data/dictionary.txt index 8a6532d4c5..17320e9193 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -17355,8 +17355,6 @@ focument->document focuse->focus focusf->focus focuss->focus -focussed->focused -focusses->focuses fof->for foget->forget fogot->forgot @@ -31116,7 +31114,6 @@ refletion->reflection refletions->reflections reflets->reflects refocuss->refocus -refocussed->refocused reformated->reformatted reformating->reformatting reformattd->reformatted From e4439eaab7d3772b73547ea8ffa3718faf6c99d7 Mon Sep 17 00:00:00 2001 From: Dimitri Papadopoulos Orfanos <3234522+DimitriPapadopoulos@users.noreply.github.com> Date: Fri, 10 Feb 2023 13:39:48 +0100 Subject: [PATCH 252/302] Removed dedent (outdent) since used in Python (#2696) --- 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 17320e9193..1aaeebcaea 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -11145,7 +11145,6 @@ dedected->detected, deducted, dedection->detection, deduction, dedections->detections dedects->detects, deducts, -dedented->indented dedfined->defined dedidate->dedicate dedidated->dedicated From fa257a5ae1f51483e063ca34c6c88131ba98af44 Mon Sep 17 00:00:00 2001 From: Dimitri Papadopoulos Orfanos <3234522+DimitriPapadopoulos@users.noreply.github.com> Date: Fri, 10 Feb 2023 13:41:12 +0100 Subject: [PATCH 253/302] Add maanger(s)->manager(s) (#2650) --- 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 1aaeebcaea..d7893a6e2f 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -22919,6 +22919,8 @@ lvoe->love Lybia->Libya maake->make maangement->management +maanger->manager +maangers->managers mabe->maybe mabye->maybe macack->macaque From 9bd885ec6b639c3364c7860b2bc9b79fb21426bc Mon Sep 17 00:00:00 2001 From: Dimitri Papadopoulos <3234522+DimitriPapadopoulos@users.noreply.github.com> Date: Mon, 2 Jan 2023 16:05:42 +0100 Subject: [PATCH 254/302] sizeable is correct, resizeable should be correct too The proper spelling in the UK is `sizeable`. In the US, both `sizeable` and `sizable` are valid. Additionally, fix `sizeble` along with `resizeble`. --- 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 d7893a6e2f..ff12cc8e17 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -32330,8 +32330,7 @@ resitances->resistances resitor->resistor resitors->resistors resivwar->reservoir -resizeable->resizable -resizeble->resizable +resizeble->resizeable, resizable, reslection->reselection reslove->resolve resloved->resolved @@ -34762,6 +34761,7 @@ siwtched->switched siwtching->switching Sixtin->Sistine, Sixteen, siz->size, six, +sizeble->sizeable, sizable, sizemologist->seismologist sizemologists->seismologists sizemologogical->seismological From d4b45d9bb0740f4265b72704255c84b608b75ff0 Mon Sep 17 00:00:00 2001 From: Dimitri Papadopoulos <3234522+DimitriPapadopoulos@users.noreply.github.com> Date: Fri, 23 Dec 2022 13:34:38 +0100 Subject: [PATCH 255/302] Fix more words derived from paramterize/paramterise --- codespell_lib/data/dictionary.txt | 19 ++++++++++++++++++- 1 file changed, 18 insertions(+), 1 deletion(-) diff --git a/codespell_lib/data/dictionary.txt b/codespell_lib/data/dictionary.txt index ff12cc8e17..c357a5af36 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -27087,8 +27087,16 @@ paramterer->parameter paramterers->parameters paramteres->parameters paramterical->parametric, parametrically, -paramterization->parametrization, parameterization, +paramterisation->parameterisation +paramterise->parameterise +paramterised->parameterised +paramterises->parameterises +paramterising->parameterising +paramterization->parameterization paramterize->parameterize +paramterized->parameterized +paramterizes->parameterizes +paramterizing->parameterizing paramterless->parameterless paramters->parameters paramtrical->parametrical @@ -31890,7 +31898,16 @@ repackged->repackaged repaitnt->repaint repant->repaint, repent, repants->repaints, repents, +reparamterisation->reparameterisation +reparamterise->reparameterise +reparamterised->reparameterised +reparamterises->reparameterises +reparamterising->reparameterising reparamterization->reparameterization +reparamterize->reparameterize +reparamterized->reparameterized +reparamterizes->reparameterizes +reparamterizing->reparameterizing repatition->repetition, repartition, repatwar->repertoire repatwars->repertoires From f3dbebea6a92ec2b3478d0d77dacb264e77a051e Mon Sep 17 00:00:00 2001 From: Dimitri Papadopoulos <3234522+DimitriPapadopoulos@users.noreply.github.com> Date: Fri, 23 Dec 2022 13:50:31 +0100 Subject: [PATCH 256/302] Fix more words derived from renable --- 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 c357a5af36..8f2167a6fb 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -31604,7 +31604,10 @@ remvove->remove remvoved->removed remvoves->removes remvs->removes +renable->re-enable renabled->re-enabled +renables->re-enables +renabling->re-enabling rendayvoo->rendezvous rendayvooed->rendezvoused rendayvou->rendezvous From dc369941c2ece9b7cdae32004dd2fe24ed0e7e0c Mon Sep 17 00:00:00 2001 From: luzpaz Date: Sat, 11 Feb 2023 16:13:10 +0000 Subject: [PATCH 257/302] Add accordin->according --- 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 8f2167a6fb..a15936ac40 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -469,6 +469,7 @@ accordeon->accordion accordian->accordion accordign->according accordiingly->accordingly +accordin->according accordinag->according accordind->according accordinly->accordingly From 377985900a0a5a87880f183b33e000139fd79d62 Mon Sep 17 00:00:00 2001 From: luzpaz Date: Sat, 11 Feb 2023 15:52:56 +0000 Subject: [PATCH 258/302] Add variations of grow --- 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 a15936ac40..a3226cf631 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -18425,6 +18425,9 @@ gorup->group goruped->grouped goruping->grouping gorups->groups +gorw->grow, gore, +gorwing->growing +gorws->grows gost->ghost gotee->goatee gotees->goatees From a30024897edcd5b3b7f059ef6e8aaf9198f18828 Mon Sep 17 00:00:00 2001 From: Tetsuo Koyama Date: Sat, 11 Feb 2023 23:18:20 +0900 Subject: [PATCH 259/302] regargless->regardless --- 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 a3226cf631..dcbfc7c07a 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -31156,6 +31156,7 @@ regalars->regulars regardes->regards regardles->regardless regardlesss->regardless +regargless->regardless regaring->regarding regarldess->regardless regarless->regardless From dc99f9a1948c7d85dc4a07f8ce13b234f74d28a3 Mon Sep 17 00:00:00 2001 From: Tetsuo Koyama Date: Sat, 11 Feb 2023 23:06:04 +0900 Subject: [PATCH 260/302] convienant->convenient --- 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 dcbfc7c07a..5e120bcd74 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -9580,6 +9580,7 @@ convets->converts convexe->convex, convexes, conveyer->conveyor conviced->convinced +convienant->convenient convience->convince, convenience, conviencece->convenience convienence->convenience From 1ef1e219aff6b9a447d8ee9d0454b155af55f6f5 Mon Sep 17 00:00:00 2001 From: luzpaz Date: Sat, 11 Feb 2023 07:50:18 +0000 Subject: [PATCH 261/302] Add involtue(d|s)->involute(d|s) --- 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 5e120bcd74..ae4ac61670 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -21742,6 +21742,9 @@ invokved->invoked invokves->invokes invokving->invoking involed->involved +involtue->involute +involtued->involuted +involtues->involutes involvment->involvement invovle->involve invovled->involved From fe0a77a967ebf5e2992c5dd9c5dae4f5a752cc98 Mon Sep 17 00:00:00 2001 From: Stefan Kangas Date: Sun, 12 Feb 2023 08:03:17 +0100 Subject: [PATCH 262/302] Typos from Emacs --- codespell_lib/data/dictionary.txt | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) diff --git a/codespell_lib/data/dictionary.txt b/codespell_lib/data/dictionary.txt index ae4ac61670..afda51d71a 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -4135,6 +4135,7 @@ auto-detets->auto-detects, auto-deletes, auto-genrated->auto-generated auto-genratet->auto-generated auto-genration->auto-generation +auto-identation->auto-indentation auto-negatiotiation->auto-negotiation auto-negatiotiations->auto-negotiations auto-negoatiation->auto-negotiation @@ -10584,6 +10585,15 @@ cuve->curve, cube, cave, cuves->curves, cubes, caves, cuvre->curve, cover, cuvres->curves, covers, +cuztomizable->customizable +cuztomization->customization +cuztomizations->customizations +cuztomize->customize +cuztomized->customized +cuztomizer->customizer +cuztomizers->customizers +cuztomizes->customizes +cuztomizing->customizing cvignore->cvsignore cxan->cyan cycic->cyclic @@ -14599,6 +14609,7 @@ endiannes->endianness endien->endian, indian, endiens->endians, indians, endig->ending +endiif->endif endiness->endianness endnoden->endnode endoint->endpoint @@ -14826,6 +14837,8 @@ enumarating->enumerating enumation->enumeration enumearate->enumerate enumearation->enumeration +enumeratior->enumerator +enumeratiors->enumerators enumerble->enumerable enumertaion->enumeration enusre->ensure @@ -21697,6 +21710,8 @@ invarients->invariants invarinat->invariant invarinats->invariants inventer->inventor +inveral->interval +inverals->intervals inverded->inverted inverion->inversion inverions->inversions @@ -23257,6 +23272,10 @@ materils->materials materla->material materlas->materials mathamatics->mathematics +mathc->match +mathced->matched +mathcer->matcher +mathcers->matchers mathces->matches mathch->match mathched->matched @@ -25411,6 +25430,7 @@ non-inreractive->non-interactive non-instnat->non-instant non-interactivly->non-interactively non-meausure->non-measure +non-mergable->non-mergeable non-negatiotiable->non-negotiable non-negatiotiated->non-negotiated non-negativ->non-negative @@ -30385,6 +30405,7 @@ re-negoziator->re-negotiator re-negoziators->re-negotiators re-realease->re-release re-spawining->re-spawning, respawning, +re-synching->re-syncing re-uplad->re-upload re-upladad->re-upload, re-uploaded, re-upladed->re-uploaded From 4ccbc554e25494a7dd31e3dc3c714291a74301c1 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?R=C3=A9mi=20Verschelde?= Date: Tue, 14 Feb 2023 17:28:53 +0100 Subject: [PATCH 263/302] dict: Add variations of intersection (#2741) Props to user akien-mga --- 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 afda51d71a..f25ce4a215 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -21076,7 +21076,11 @@ insterad->instead insterrupts->interrupts instersction->intersection instersctions->intersections +instersection->intersection +instersectional->intersectional +instersectionality->intersectionality instersectioned->intersection +instersections->intersections instert->insert insterted->inserted instertion->insertion From 5b5d4839fe89af83f259cabe39cf3cb2523fda47 Mon Sep 17 00:00:00 2001 From: Stefan Date: Tue, 14 Feb 2023 22:44:58 +0100 Subject: [PATCH 264/302] Added more common 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 f25ce4a215..556067501c 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -33250,8 +33250,10 @@ satistying->satisfying satric->satiric satrical->satirical satrically->satirically +sattelit->satellite sattelite->satellite sattelites->satellites +sattelits->satellites sattellite->satellite sattellites->satellites satuaday->Saturday @@ -34410,6 +34412,7 @@ sidde->side sideral->sidereal siduction->seduction sie->size, sigh, side, +sience->science, silence, sies->size, sighs, sides, siez->size, seize, sieze->seize, size, @@ -35672,6 +35675,7 @@ spligs->splits spliiter->splitter spliitting->splitting splite->split, splits, splice, +splited->split spliting->splitting splitted->split splittng->splitting @@ -37607,6 +37611,7 @@ terfforms->terraforms teridactyl->pterodactyl terific->terrific terimnate->terminate +teritory->territory termial->terminal termials->terminals termiante->terminate From 1478904a4ff47fc28e4755462cc9ce1dbecc533d Mon Sep 17 00:00:00 2001 From: luz paz Date: Sun, 13 Nov 2022 09:49:35 -0500 Subject: [PATCH 265/302] Add several spelling corrections --- codespell_lib/data/dictionary.txt | 39 +++++++++++++++++++++++++++++++ 1 file changed, 39 insertions(+) diff --git a/codespell_lib/data/dictionary.txt b/codespell_lib/data/dictionary.txt index 556067501c..0fb5dc5009 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -246,6 +246,7 @@ abtractor->abstractor abtracts->abstracts abudance->abundance abudances->abundances +abundace->abundance abundacies->abundances abundancies->abundances abundand->abundant @@ -936,6 +937,7 @@ addresing->addressing addresse->addresses, address, addressess->addresses addressibility->addressability +addressible->addressable addressings->addressing addresss->address addresssed->addressed @@ -1164,6 +1166,7 @@ aforememtioned->aforementioned aforementiond->aforementioned aforementionned->aforementioned aformentioned->aforementioned +afrer->after afterall->after all afterw->after afther->after, father, @@ -1362,6 +1365,8 @@ aleviate->alleviate aleviates->alleviates aleviating->alleviating alevt->alert +alforithm->algorithm +alforithms->algorithms algebraical->algebraic algebric->algebraic algebrra->algebra @@ -2039,6 +2044,7 @@ analiser->analyser analises->analysis, analyses, analising->analysing analisis->analysis +analisys->analysis analitic->analytic analitical->analytical analitically->analytically @@ -2474,6 +2480,8 @@ apihelion->aphelion apihelions->aphelions apilogue->epilogue aplha->alpha +aplicabile->applicable +aplicability->applicability aplication->application aplications->applications aplied->applied @@ -3143,6 +3151,7 @@ arquitecture->architecture arquitectures->architectures arraay->array arragement->arrangement +arraies->arrays arraival->arrival arral->array arranable->arrangeable @@ -4123,6 +4132,7 @@ authrorization->authorization authrors->authors autimatic->automatic autimatically->automatically +autio->audio autmatically->automatically auto-dependancies->auto-dependencies auto-destrcut->auto-destruct @@ -4929,6 +4939,7 @@ betwene->between betwenn->between betwern->between betwween->between +betwwen->between beucase->because beuracracy->bureaucracy beuraucratic->bureaucratic @@ -5587,6 +5598,8 @@ butifuly->beautifully buton->button butons->buttons butterly->butterfly +buttin->button +buttins->buttons buttom->button, bottom, buttoms->buttons, bottom, buttong->button @@ -7531,8 +7544,11 @@ colaborations->collaborations colateral->collateral coldplg->coldplug colected->collected +colecting->collecting colection->collection colections->collections +colector->collector +colectors->collectors coleeg->colleague coleeges->colleagues coleegs->colleagues @@ -10522,6 +10538,7 @@ cusstomization->customization cusstomize->customize cusstomized->customized cusstoms->customs +custamizable->customizable custoisable->customisable custoisation->customisation custoise->customise @@ -15133,6 +15150,8 @@ especifically->specifically, especially, especiially->especially espect->expect espeically->especially +espisode->episode +espisodes->episodes esponding->desponding, responding, esseintially->essentially essencial->essential @@ -17262,6 +17281,7 @@ firmwear->firmware firmwqre->firmware firmwre->firmware firmwware->firmware +firrst->first firsname->firstname, first name, firsr->first firstest->firsttest, first test, @@ -17763,6 +17783,8 @@ foward->forward fowarded->forwarded fowarding->forwarding fowards->forwards +fowll->follow, foul, +fowlling->following fpr->for, far, fps, fprmat->format fpt->ftp @@ -17793,9 +17815,12 @@ frameword->framework frameworkk->framework framlayout->framelayout framming->framing +framw->frame +framwd->framed framwework->framework framwork->framework framworks->frameworks +framws->frames frane->frame frankin->franklin Fransiscan->Franciscan @@ -18296,6 +18321,7 @@ geomitrically->geometrically geomoetric->geometric geomoetrically->geometrically geomoetry->geometry +geomteries->geometries geomtery->geometry geomtries->geometries geomtry->geometry @@ -18558,6 +18584,7 @@ groubpy->groupby groupd->grouped groupe->grouped, group, groupes->groups, grouped, +groupped->grouped groupping->grouping groupt->grouped growtesk->grotesque @@ -19061,6 +19088,7 @@ hierachies->hierarchies hierachries->hierarchies hierachry->hierarchy hierachy->hierarchy +hierachycal->hierarchical hierarachical->hierarchical hierarachy->hierarchy hierarchichal->hierarchical @@ -23160,6 +23188,7 @@ manualyl->manually manualyy->manually manuell->manual manuelly->manually +manues->menus manuever->maneuver, manoeuvre, manuevers->maneuvers, manoeuvres, manufactuer->manufacture, manufacturer, @@ -23925,6 +23954,7 @@ minue->minute, minus, menu, minues->minutes, minus, minuses, menus, minum->minimum minumum->minimum +minumun->minimum minuscle->minuscule minusculy->minusculely, minuscule, minuts->minutes @@ -24351,6 +24381,7 @@ moslty->mostly mostlky->mostly mosture->moisture mosty->mostly +mosue->mouse, mosque, motation->notation, rotation, motivation, moteef->motif moteefs->motifs @@ -27056,6 +27087,8 @@ paragarph->paragraph paragarphs->paragraphs paragph->paragraph paragpraph->paragraph +paragrah->paragraph +paragrahs->paragraphs paragraphy->paragraph paragrphs->paragraphs parahaps->perhaps @@ -34916,7 +34949,9 @@ smaler->smaller smallar->smaller smalles->smallest smaple->sample +smapled->sampled smaples->samples +smapling->sampling smealting->smelting smething->something smll->small, smell, @@ -35864,6 +35899,7 @@ stardardizes->standardizes stardardizing->standardizing stardards->standards staright->straight +starigth->straight startd->started startegic->strategic startegies->strategies @@ -39899,6 +39935,7 @@ unwarrented->unwarranted unweildly->unwieldy unwieldly->unwieldy unwraped->unwrapped +unwraping->unwrapping unwrritten->unwritten unx->unix unxepected->unexpected @@ -41278,6 +41315,8 @@ winndows->windows winodw->window wipoing->wiping wirded->wired, weird, +wireframw->wireframe +wireframws->wireframes wirh->with wirtable->writable, writeable, wirte->write From 8cd88d6b3ad189e2c0b37ccd35a2450b6048d26b Mon Sep 17 00:00:00 2001 From: luz paz Date: Tue, 15 Nov 2022 07:05:09 -0500 Subject: [PATCH 266/302] Add requested revisions --- 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 0fb5dc5009..5624e878ad 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -247,6 +247,7 @@ abtracts->abstracts abudance->abundance abudances->abundances abundace->abundance +abundaces->abundances abundacies->abundances abundancies->abundances abundand->abundant @@ -1366,6 +1367,8 @@ aleviates->alleviates aleviating->alleviating alevt->alert alforithm->algorithm +alforithmic->algorithmic +alforithmically->algorithmically alforithms->algorithms algebraical->algebraic algebric->algebraic @@ -2482,6 +2485,7 @@ apilogue->epilogue aplha->alpha aplicabile->applicable aplicability->applicability +aplicable->applicable aplication->application aplications->applications aplied->applied @@ -7543,12 +7547,15 @@ colaboration->collaboration colaborations->collaborations colateral->collateral coldplg->coldplug +colectable->collectable colected->collected colecting->collecting colection->collection colections->collections +colective->collective colector->collector colectors->collectors +colects->collects coleeg->colleague coleeges->colleagues coleegs->colleagues @@ -10539,6 +10546,9 @@ cusstomize->customize cusstomized->customized cusstoms->customs custamizable->customizable +custamized->customized +custamizes->customizes +custamizing->customizing custoisable->customisable custoisation->customisation custoise->customise @@ -15152,6 +15162,9 @@ espect->expect espeically->especially espisode->episode espisodes->episodes +espisodic->episodic +espisodical->episodical +espisodically->episodically esponding->desponding, responding, esseintially->essentially essencial->essential @@ -18321,6 +18334,8 @@ geomitrically->geometrically geomoetric->geometric geomoetrically->geometrically geomoetry->geometry +geomteric->geometric +geomterically->geometrically geomteries->geometries geomtery->geometry geomtries->geometries From b7795989df8e1e8607d12476f40e9123292a8838 Mon Sep 17 00:00:00 2001 From: Sebastian Weber Date: Wed, 24 Nov 2021 11:41:44 +0100 Subject: [PATCH 267/302] Add explicete* --- 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 5624e878ad..eeaef404e7 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -16640,6 +16640,9 @@ explecitly->explicitly explenation->explanation explian->explain explicat->explicate +explicete->explicite +explicetely->explicitly +explicetly->explicitly explicilt->explicit explicilty->explicitly explicite->explicit, explicitly, From 028a1869cd516ee46e3c30f4c986884c1280228d Mon Sep 17 00:00:00 2001 From: Sebastian Weber Date: Wed, 24 Nov 2021 11:48:14 +0100 Subject: [PATCH 268/302] Fix french spelling :-) --- 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 eeaef404e7..81be8c1bcf 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -16640,7 +16640,7 @@ explecitly->explicitly explenation->explanation explian->explain explicat->explicate -explicete->explicite +explicete->explicit, explicitly, explicetely->explicitly explicetly->explicitly explicilt->explicit From 0382bc1d0f62135ef2cd3966ef770dfea68e0790 Mon Sep 17 00:00:00 2001 From: vikivivi <22041592+vikivivi@users.noreply.github.com> Date: Sun, 6 Nov 2022 22:42:25 +0800 Subject: [PATCH 269/302] Add misspellings of resolvable, resolver, unresolved --- 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 81be8c1bcf..6eaea5d889 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -32511,8 +32511,11 @@ resourse->resource, recourse, resourses->resources resoution->resolution resoves->resolves +resovlable->resolvable resovle->resolve resovled->resolved +resovler->resolver +resovlers->resolvers resovles->resolves resovling->resolving respawining->respawning @@ -39749,6 +39752,7 @@ unresgistered->unregistered unresgisters->unregisters unresolvabvle->unresolvable unresonable->unreasonable +unresovled->unresolved unresposive->unresponsive unrestrcited->unrestricted unrgesiter->unregister From 83a02f2f90f4d79cded87efa9f66e7089076b8ab Mon Sep 17 00:00:00 2001 From: Dimitri Papadopoulos <3234522+DimitriPapadopoulos@users.noreply.github.com> Date: Tue, 14 Feb 2023 23:35:43 +0100 Subject: [PATCH 270/302] Add misspelling of unresolvable --- 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 6eaea5d889..2c277b7c5c 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -39752,6 +39752,7 @@ unresgistered->unregistered unresgisters->unregisters unresolvabvle->unresolvable unresonable->unreasonable +unresovlable->unresolvable unresovled->unresolved unresposive->unresponsive unrestrcited->unrestricted From b8801c85770925e0ec47a86dbdb8be993c738912 Mon Sep 17 00:00:00 2001 From: vikivivi <22041592+vikivivi@users.noreply.github.com> Date: Sun, 6 Nov 2022 22:15:49 +0800 Subject: [PATCH 271/302] Add misspellings of mobile, modules, models --- 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 2c277b7c5c..1d2650b319 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -24279,10 +24279,15 @@ modifyers->modifiers modifyes->modifies modiifier->modifier modiifiers->modifiers +modile->module, mobile, +modiles->modules, mobiles, modiration->moderation modle->model, module, modles->models, modules, +modle->model +modles->models modlue->module +modlues->modules modprobbing->modprobing modprobeing->modprobing modtified->modified @@ -24308,6 +24313,8 @@ mofifies->modifies mofify->modify mohammedan->muslim mohammedans->muslims +moible->mobile +moibles->mobiles moint->mount mointor->monitor mointored->monitored @@ -24414,7 +24421,9 @@ motiviation->motivation motononic->monotonic motoroloa->motorola moudle->module +moudles->modules moudule->module +moudules->modules mounth->month, mouth, mounths->months, mouths, mountian->mountain From f23f521e41ac9151c461289471dc287d3792b39b Mon Sep 17 00:00:00 2001 From: Dimitri Papadopoulos <3234522+DimitriPapadopoulos@users.noreply.github.com> Date: Tue, 14 Feb 2023 23:46:20 +0100 Subject: [PATCH 272/302] Apply suggestions --- codespell_lib/data/dictionary.txt | 2 -- 1 file changed, 2 deletions(-) diff --git a/codespell_lib/data/dictionary.txt b/codespell_lib/data/dictionary.txt index 1d2650b319..0117930145 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -24284,8 +24284,6 @@ modiles->modules, mobiles, modiration->moderation modle->model, module, modles->models, modules, -modle->model -modles->models modlue->module modlues->modules modprobbing->modprobing From 15444647d121633ec541b7ac38920b047f921273 Mon Sep 17 00:00:00 2001 From: Mateusz Konieczny Date: Fri, 12 Nov 2021 09:10:34 +0100 Subject: [PATCH 273/302] "keyserver" is correct, fixes #2084 --- codespell_lib/data/dictionary_code.txt | 2 -- 1 file changed, 2 deletions(-) diff --git a/codespell_lib/data/dictionary_code.txt b/codespell_lib/data/dictionary_code.txt index aea0216a82..51fbf882c1 100644 --- a/codespell_lib/data/dictionary_code.txt +++ b/codespell_lib/data/dictionary_code.txt @@ -32,8 +32,6 @@ ifset->if set isenough->is enough ith->with jupyter->Jupiter -keyserver->key server -keyservers->key servers lateset->latest lite->light movei->movie From f6ea9a0c6dea6cbd1734455b32b9bd8374d43f93 Mon Sep 17 00:00:00 2001 From: sed-i <82407168+sed-i@users.noreply.github.com> Date: Fri, 19 Aug 2022 13:06:29 -0400 Subject: [PATCH 274/302] IBMInclusiveITLanguage https://github.com/IBM/IBMInclusiveITLanguage --- codespell_lib/data/dictionary_usage.txt | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/codespell_lib/data/dictionary_usage.txt b/codespell_lib/data/dictionary_usage.txt index 9cd13a25fe..bb94e5dd80 100644 --- a/codespell_lib/data/dictionary_usage.txt +++ b/codespell_lib/data/dictionary_usage.txt @@ -1,9 +1,13 @@ blacklist->blocklist blacklists->blocklists blueish->bluish +man-hour->person-hour +man-hours->person-hours man-in-the-middle->on-path attacker master->primary, leader, active, writer, coordinator, parent, manager, main, masters->primaries, leaders, actives, writers, coordinators, parents, managers, +segregation->separation, segmentation +segregations->separations, segmentations slave->secondary, follower, standby, replica, reader, worker, helper, subordinate, subsystem, slaves->secondaries, followers, standbys, replicas, readers, workers, helpers, subordinates, whitelist->allowlist, permitlist, From 9421eb77d7197719c65a6f75bdd195fd7794c41b Mon Sep 17 00:00:00 2001 From: sed-i <82407168+sed-i@users.noreply.github.com> Date: Fri, 19 Aug 2022 13:11:25 -0400 Subject: [PATCH 275/302] inclusivenaming.org https://inclusivenaming.org/word-lists/ --- codespell_lib/data/dictionary_usage.txt | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/codespell_lib/data/dictionary_usage.txt b/codespell_lib/data/dictionary_usage.txt index bb94e5dd80..880980daea 100644 --- a/codespell_lib/data/dictionary_usage.txt +++ b/codespell_lib/data/dictionary_usage.txt @@ -3,9 +3,13 @@ blacklists->blocklists blueish->bluish man-hour->person-hour man-hours->person-hours -man-in-the-middle->on-path attacker +man-in-the-middle->on-path attacker, interceptor, intermediary master->primary, leader, active, writer, coordinator, parent, manager, main, masters->primaries, leaders, actives, writers, coordinators, parents, managers, +sanity-check->test, verification +sanity-checks->tests, verifications +sanity-test->test, verification +sanity-tests->tests, verifications segregation->separation, segmentation segregations->separations, segmentations slave->secondary, follower, standby, replica, reader, worker, helper, subordinate, subsystem, From 2232cfcee2a91f6c775d02d7b6b7685b7b386e35 Mon Sep 17 00:00:00 2001 From: sed-i <82407168+sed-i@users.noreply.github.com> Date: Fri, 19 Aug 2022 14:01:44 -0400 Subject: [PATCH 276/302] Replacement Wordlist --- codespell_lib/data/dictionary_usage.txt | 15 ++++++++++++--- 1 file changed, 12 insertions(+), 3 deletions(-) diff --git a/codespell_lib/data/dictionary_usage.txt b/codespell_lib/data/dictionary_usage.txt index 880980daea..3dc6e4f8b1 100644 --- a/codespell_lib/data/dictionary_usage.txt +++ b/codespell_lib/data/dictionary_usage.txt @@ -1,11 +1,20 @@ +black-hat->malicious actor, attacker +blackhat->malicious actor, attacker blacklist->blocklist blacklists->blocklists blueish->bluish -man-hour->person-hour -man-hours->person-hours -man-in-the-middle->on-path attacker, interceptor, intermediary +cripples->slows down, hinders, obstructs +crippling->attenuating, incapacitating +dummy-value->placeholder value +girlfriend-test->mom-test->user test, acceptance test, validation test, ease-of-use test, friendliness test, useability test +man-hour->staff hour, volunteer hour, hour of effort, person-hour +man-hours->staff hours, volunteer hours, hours of effort, person-hours +man-in-the-middle->on-path attacker, interceptor, intermediary, machine-in-the-middle, person-in-the-middle +manned->crewed, staffed, monitored, human operated master->primary, leader, active, writer, coordinator, parent, manager, main, masters->primaries, leaders, actives, writers, coordinators, parents, managers, +middleman->intermediary, broker +mom-test->user test, acceptance test, validation test, ease-of-use test, friendliness test, useability test sanity-check->test, verification sanity-checks->tests, verifications sanity-test->test, verification From 95287188457a98203e2af602e75c6989c608253f Mon Sep 17 00:00:00 2001 From: sed-i <82407168+sed-i@users.noreply.github.com> Date: Fri, 19 Aug 2022 14:10:55 -0400 Subject: [PATCH 277/302] Fix copy-paste error --- codespell_lib/data/dictionary_usage.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/codespell_lib/data/dictionary_usage.txt b/codespell_lib/data/dictionary_usage.txt index 3dc6e4f8b1..1028baf856 100644 --- a/codespell_lib/data/dictionary_usage.txt +++ b/codespell_lib/data/dictionary_usage.txt @@ -6,7 +6,7 @@ blueish->bluish cripples->slows down, hinders, obstructs crippling->attenuating, incapacitating dummy-value->placeholder value -girlfriend-test->mom-test->user test, acceptance test, validation test, ease-of-use test, friendliness test, useability test +girlfriend-test->user test, acceptance test, validation test, ease-of-use test, friendliness test, useability test man-hour->staff hour, volunteer hour, hour of effort, person-hour man-hours->staff hours, volunteer hours, hours of effort, person-hours man-in-the-middle->on-path attacker, interceptor, intermediary, machine-in-the-middle, person-in-the-middle From 4f85661c4e528cb42e316a8a385751667b85984e Mon Sep 17 00:00:00 2001 From: sed-i <82407168+sed-i@users.noreply.github.com> Date: Fri, 19 Aug 2022 14:12:41 -0400 Subject: [PATCH 278/302] multiple corrections must end with trailing ',' --- codespell_lib/data/dictionary_usage.txt | 34 ++++++++++++------------- 1 file changed, 17 insertions(+), 17 deletions(-) diff --git a/codespell_lib/data/dictionary_usage.txt b/codespell_lib/data/dictionary_usage.txt index 1028baf856..3059509cdd 100644 --- a/codespell_lib/data/dictionary_usage.txt +++ b/codespell_lib/data/dictionary_usage.txt @@ -1,26 +1,26 @@ -black-hat->malicious actor, attacker -blackhat->malicious actor, attacker +black-hat->malicious actor, attacker, +blackhat->malicious actor, attacker, blacklist->blocklist blacklists->blocklists blueish->bluish -cripples->slows down, hinders, obstructs -crippling->attenuating, incapacitating +cripples->slows down, hinders, obstructs, +crippling->attenuating, incapacitating, dummy-value->placeholder value -girlfriend-test->user test, acceptance test, validation test, ease-of-use test, friendliness test, useability test -man-hour->staff hour, volunteer hour, hour of effort, person-hour -man-hours->staff hours, volunteer hours, hours of effort, person-hours -man-in-the-middle->on-path attacker, interceptor, intermediary, machine-in-the-middle, person-in-the-middle -manned->crewed, staffed, monitored, human operated +girlfriend-test->user test, acceptance test, validation test, ease-of-use test, friendliness test, useability test, +man-hour->staff hour, volunteer hour, hour of effort, person-hour, +man-hours->staff hours, volunteer hours, hours of effort, person-hours, +man-in-the-middle->on-path attacker, interceptor, intermediary, machine-in-the-middle, person-in-the-middle, +manned->crewed, staffed, monitored, human operated, master->primary, leader, active, writer, coordinator, parent, manager, main, masters->primaries, leaders, actives, writers, coordinators, parents, managers, -middleman->intermediary, broker -mom-test->user test, acceptance test, validation test, ease-of-use test, friendliness test, useability test -sanity-check->test, verification -sanity-checks->tests, verifications -sanity-test->test, verification -sanity-tests->tests, verifications -segregation->separation, segmentation -segregations->separations, segmentations +middleman->intermediary, broker, +mom-test->user test, acceptance test, validation test, ease-of-use test, friendliness test, useability test, +sanity-check->test, verification, +sanity-checks->tests, verifications, +sanity-test->test, verification, +sanity-tests->tests, verifications, +segregation->separation, segmentation, +segregations->separations, segmentations, slave->secondary, follower, standby, replica, reader, worker, helper, subordinate, subsystem, slaves->secondaries, followers, standbys, replicas, readers, workers, helpers, subordinates, whitelist->allowlist, permitlist, From 823363166dbf6775574c7170e3da6dcba1bcc513 Mon Sep 17 00:00:00 2001 From: Jakub Kuczys Date: Sun, 11 Sep 2022 18:13:32 +0200 Subject: [PATCH 279/302] Include chardet in dev dependencies --- pyproject.toml | 1 + 1 file changed, 1 insertion(+) diff --git a/pyproject.toml b/pyproject.toml index e510dd3419..1d6ee00905 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -33,6 +33,7 @@ dynamic = ["version"] [project.optional-dependencies] dev = [ "build", + "chardet", "flake8", "flake8-pyproject", "pytest", From 203cda840ba1a29bef94ec9d303bb276f331771a Mon Sep 17 00:00:00 2001 From: Jakub Kuczys Date: Sun, 11 Sep 2022 18:15:51 +0200 Subject: [PATCH 280/302] Remove pip install chardet from CI now that it's in dev extra --- .github/workflows/codespell-private.yml | 2 +- .github/workflows/codespell-windows.yml | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/codespell-private.yml b/.github/workflows/codespell-private.yml index 44489cc63d..9a14d55169 100644 --- a/.github/workflows/codespell-private.yml +++ b/.github/workflows/codespell-private.yml @@ -37,7 +37,7 @@ jobs: run: | python --version # just to check pip install -U pip wheel # upgrade to latest pip find 3.5 wheels; wheel to avoid errors - pip install --upgrade chardet "setuptools!=47.2.0" docutils setuptools_scm[toml] twine + 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: codespell --help diff --git a/.github/workflows/codespell-windows.yml b/.github/workflows/codespell-windows.yml index f4b203d53a..0b29bff622 100644 --- a/.github/workflows/codespell-windows.yml +++ b/.github/workflows/codespell-windows.yml @@ -19,7 +19,7 @@ jobs: run: | python --version pip install -U pip - pip install chardet setuptools + pip install setuptools pip install -e .[dev] - run: codespell --help - run: codespell --version From 48b6c6c734026d86528dd670e29efa4c416d142d Mon Sep 17 00:00:00 2001 From: Stefan Kangas Date: Sat, 18 Feb 2023 11:08:00 +0100 Subject: [PATCH 281/302] Move `keypair(s)->key pair(s)` to code dictionary --- codespell_lib/data/dictionary.txt | 2 -- codespell_lib/data/dictionary_code.txt | 2 ++ 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/codespell_lib/data/dictionary.txt b/codespell_lib/data/dictionary.txt index 0117930145..f0d3fe72f0 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -22154,8 +22154,6 @@ keyosk->kiosk keyosks->kiosks keyoutch->keytouch keyowrd->keyword -keypair->key pair -keypairs->key pairs keystokes->keystrokes keyward->keyword keywoards->keywords diff --git a/codespell_lib/data/dictionary_code.txt b/codespell_lib/data/dictionary_code.txt index 51fbf882c1..cdd1766a36 100644 --- a/codespell_lib/data/dictionary_code.txt +++ b/codespell_lib/data/dictionary_code.txt @@ -32,6 +32,8 @@ ifset->if set isenough->is enough ith->with jupyter->Jupiter +keypair->key pair +keypairs->key pairs lateset->latest lite->light movei->movie From f44dec3e0609b9ccb3f531ac5cea20d86f62611b Mon Sep 17 00:00:00 2001 From: Stefan Kangas Date: Sat, 18 Feb 2023 13:28:08 +0100 Subject: [PATCH 282/302] Add `man-in-the-middle->adversary-in-the-middle` alternative --- codespell_lib/data/dictionary_usage.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/codespell_lib/data/dictionary_usage.txt b/codespell_lib/data/dictionary_usage.txt index 3059509cdd..77018c4eb5 100644 --- a/codespell_lib/data/dictionary_usage.txt +++ b/codespell_lib/data/dictionary_usage.txt @@ -9,7 +9,7 @@ dummy-value->placeholder value girlfriend-test->user test, acceptance test, validation test, ease-of-use test, friendliness test, useability test, man-hour->staff hour, volunteer hour, hour of effort, person-hour, man-hours->staff hours, volunteer hours, hours of effort, person-hours, -man-in-the-middle->on-path attacker, interceptor, intermediary, machine-in-the-middle, person-in-the-middle, +man-in-the-middle->on-path attacker, adversary-in-the-middle, interceptor, intermediary, machine-in-the-middle, person-in-the-middle, manned->crewed, staffed, monitored, human operated, master->primary, leader, active, writer, coordinator, parent, manager, main, masters->primaries, leaders, actives, writers, coordinators, parents, managers, From a80626550a85832dc9bacc399f8e247017743426 Mon Sep 17 00:00:00 2001 From: Dimitri Papadopoulos <3234522+DimitriPapadopoulos@users.noreply.github.com> Date: Sat, 18 Feb 2023 09:05:46 +0100 Subject: [PATCH 283/302] Add typos found in zlib https://github.com/madler/zlib/pull/775#issuecomment-1435039849 --- 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 f0d3fe72f0..643dfed54c 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -8139,6 +8139,11 @@ compation->compaction compatitbility->compatibility compativle->compatible compaytibility->compatibility +compeare->compare +compeared->compared +compeares->compares +compearing->comparing +compears->compares compeat->compete compeated->competed compeates->competes @@ -11809,6 +11814,12 @@ deregistrated->deregistered deregistred->deregistered deregiter->deregister deregiters->deregisters +dereivative->derivative +dereivatives->derivatives +dereive->derive +dereived->derived +dereives->derives +dereiving->deriving derevative->derivative derevatives->derivatives derference->dereference, deference, @@ -15112,6 +15123,12 @@ escating->escalating, escaping, escation->escalation esccape->escape esccaped->escaped +esclude->exclude +escluded->excluded +escludes->excludes +escluding->excluding +esclusion->exclusion +esclusions->exclusions escpae->escape escpaed->escaped esecute->execute @@ -20124,6 +20141,7 @@ incommplete->incomplete incompaitible->incompatible incompaitiblity->incompatibility incomparible->incompatible, incomparable, +incompartible->incompatible incompasitate->incapacitate incompasitated->incapacitated incompasitates->incapacitates @@ -29261,6 +29279,10 @@ problme->problem problmes->problems probly->probably procceed->proceed +procces->process +proccesed->processed +procceses->processes +proccesing->processing proccesor->processor proccesors->processors proccess->process @@ -30963,6 +30985,12 @@ recpies->recipes recquired->required recrational->recreational recreateation->recreation +recrete->recreate +recreted->recreated +recretes->recreates +recreting->recreating +recretion->recreation +recretional->recreational recrod->record recrods->records recroot->recruit @@ -31955,6 +31983,7 @@ rentime->runtime rentors->renters reoadmap->roadmap reoccurrence->recurrence +reocmpression->recompression reocurring->reoccurring, recurring, reoder->reorder reomvable->removable @@ -35718,6 +35747,8 @@ spesified->specified spesifities->specifics spesify->specify spetial->special, spatial, +spetsific->specific +spetsified->specified spezialisation->specialization spezific->specific spezified->specified @@ -36180,6 +36211,10 @@ structered->structured structeres->structures structetr->structure structire->structure +structore->structure +structored->structured +structores->structures +structoring->structuring structre->structure structred->structured structres->structures From 7b09dd1bd22cbb1c0f3aadcce879122c2a370c0c Mon Sep 17 00:00:00 2001 From: Stefan Kangas Date: Sat, 18 Feb 2023 14:38:10 +0100 Subject: [PATCH 284/302] Add typos found in Emacs --- codespell_lib/data/dictionary.txt | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) diff --git a/codespell_lib/data/dictionary.txt b/codespell_lib/data/dictionary.txt index 643dfed54c..40c1f353ac 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -1113,6 +1113,7 @@ advesary->adversary advetise->advertise advicable->advisable adviced->advised +advicing->advising adviseable->advisable advisoriy->advisory, advisories, advisoriyes->advisories @@ -8231,6 +8232,8 @@ compleates->completes compleating->completing compleation->completion, compilation, compleatly->completely +complection->completion +complections->completions compleete->complete compleeted->completed compleetly->completely @@ -10577,6 +10580,7 @@ customisaton->customisation customisatons->customisations customizaton->customization customizatons->customizations +customizeable->customizable customizeble->customizable customn->custom customns->customs @@ -11441,6 +11445,10 @@ deivatives->derivatives deivce->device deivces->devices deivices->devices +dekete->delete +deketed->deleted +deketes->deletes +deketing->deleting deklaration->declaration dekstop->desktop dekstops->desktops @@ -18454,6 +18462,8 @@ globaly->globally globas->globals globbal->global globel->global +globlal->global +globlaly->globally glorfied->glorified glpyh->glyph glpyhs->glyphs @@ -18972,6 +18982,7 @@ hashi->hash hashreference->hash reference hashs->hashes hashses->hashes +hasing->hashing hask->hash hasn;t->hasn't hasnt'->hasn't @@ -32645,7 +32656,11 @@ ressurected->resurrected ressurecting->resurrecting ressurection->resurrection ressurects->resurrects +ressurrect->resurrect +ressurrected->resurrected +ressurrecting->resurrecting ressurrection->resurrection +ressurrects->resurrects restarant->restaurant restarants->restaurants restaraunt->restaurant @@ -33174,6 +33189,9 @@ rsource->resource, source, rsourced->resourced, sourced, rsources->resources, sources, rsourcing->resourcing, sourcing, +rturn->return +rturned->returned +rturning->returning rturns->returns, turns, rubarb->rhubarb rucuperate->recuperate @@ -38198,6 +38216,7 @@ Tolkein->Tolkien tollerable->tolerable tollerance->tolerance tollerances->tolerances +tollerant->tolerant tolorance->tolerance tolorances->tolerances tolorant->tolerant @@ -39010,6 +39029,7 @@ typdef->typedef, typed, typechek->typecheck typecheking->typechecking typesrript->typescript +typess->types typicall->typically, typical, typicallly->typically typicaly->typically @@ -40203,6 +40223,7 @@ usera->users userame->username userames->usernames userapace->userspace +usere->user userful->useful userpace->userspace userpsace->userspace From f7aba568937e99667532267c225ac58868e40fda Mon Sep 17 00:00:00 2001 From: Stefan Kangas Date: Sun, 19 Feb 2023 11:53:48 +0100 Subject: [PATCH 285/302] Move `shouldnot` to code dictionary (Fixes #2528) --- codespell_lib/data/dictionary.txt | 1 - codespell_lib/data/dictionary_code.txt | 1 + 2 files changed, 1 insertion(+), 1 deletion(-) diff --git a/codespell_lib/data/dictionary.txt b/codespell_lib/data/dictionary.txt index 40c1f353ac..8169e3445c 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -34452,7 +34452,6 @@ should'nt->shouldn't should't->shouldn't shouldbe->should, should be, shouldn;t->shouldn't -shouldnot->should not, shouldn't, shouldnt'->shouldn't shouldnt->shouldn't shouldnt;->shouldn't diff --git a/codespell_lib/data/dictionary_code.txt b/codespell_lib/data/dictionary_code.txt index cdd1766a36..4c1ef90f57 100644 --- a/codespell_lib/data/dictionary_code.txt +++ b/codespell_lib/data/dictionary_code.txt @@ -60,6 +60,7 @@ rendir->render rendirs->renders ro->to, row, rob, rod, roe, rot, seeked->sought +shouldnot->should not, shouldn't, sinc->sync, sink, since, sincs->syncs, sinks, since, snd->send, and, sound, From f1f28271e2d401ace30a7dca930cec0a3fe0a44f Mon Sep 17 00:00:00 2001 From: Stefan Kangas Date: Sat, 18 Feb 2023 14:48:13 +0100 Subject: [PATCH 286/302] Add `convervation->conservation` et al (Fix #2716) --- 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 8169e3445c..1826097c5a 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -9598,6 +9598,16 @@ converterd->converted, converter, convertet->converted convertion->conversion convertions->conversions +convervable->conservable +convervation->conservation, conversation, +convervative->conservative +convervatives->conservatives +converve->conserve, converse, +converved->conserved, conversed, +converver->conserver, converter, +conververs->conservers +converves->conserves, converses, +converving->conserving, conversing, convery->convert convesion->conversion convesions->conversions From e1ef978009da3cec29b3f575978e3e20cd8a6c2e Mon Sep 17 00:00:00 2001 From: Stefan Kangas Date: Sun, 19 Feb 2023 14:20:22 +0100 Subject: [PATCH 287/302] Add many political terms --- codespell_lib/data/dictionary.txt | 105 ++++++++++++++++++ .../data/dictionary_en-GB_to_en-US.txt | 5 + 2 files changed, 110 insertions(+) diff --git a/codespell_lib/data/dictionary.txt b/codespell_lib/data/dictionary.txt index 1826097c5a..fc075b65e0 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -6056,6 +6056,9 @@ captable->capable capter->captor capters->captors captial->capital +captialism->capitalism +captialist->capitalist +captialists->capitalists captian->captain captians->captains captin->captain @@ -7837,6 +7840,9 @@ commets->comments, comets, commig->commit, coming, comming->coming comminication->communication +comminism->communism +comminist->communist +comminists->communists comminity->community comminucating->communicating comminucation->communication @@ -7983,6 +7989,9 @@ communicatie->communication communicaton->communication communikay->communiqué communikays->communiqués +communisim->communism +communisit->communist +communisits->communists communitcate->communicate communitcated->communicated communitcates->communicates @@ -7991,6 +8000,9 @@ communitcations->communications communites->communities communiy->community communiyt->community +communsim->communism +communsit->communist +communsits->communists communuication->communication commutated->commuted commutating->commuting @@ -8393,6 +8405,9 @@ comtainer->container comtains->contains comunicate->communicate comunication->communication +comunism->communism +comunist->communist +comunists->communists comunity->community comute->commute, compute, comuted->commuted, computed, @@ -16756,7 +16771,10 @@ exprience->experience exprienced->experienced expriences->experiences exprimental->experimental +expropiate->expropriate expropiated->expropriated +expropiates->expropriates +expropiating->expropriating expropiation->expropriation exprot->export exproted->exported @@ -21319,6 +21337,10 @@ intelligable->intelligible intemediary->intermediary intenal->internal intenational->international +intenationalism->internationalism +intenationalist->internationalist +intenationalists->internationalists +intenationally->internationally intendet->intended inteneded->intended intenisty->intensity @@ -21385,6 +21407,10 @@ interates->iterates, interacts, integrated, interating->iterating, interacting, integrating, interation->iteration, interaction, integration, interational->international +interationalism->internationalism +interationalist->internationalist +interationalists->internationalists +interationally->internationally interations->iterations, interactions, interative->interactive interatively->interactively @@ -21500,7 +21526,15 @@ intermperance->intemperance internall->internal, internally, internaly->internally internatinal->international +internatinalism->internationalism +internatinalist->internationalist +internatinalists->internationalists +internatinally->internationally internatioanl->international +internatioanlism->internationalism +internatioanlist->internationalist +internatioanlists->internationalists +internatioanlly->internationally internation->international internel->internal internels->internals @@ -23287,6 +23321,9 @@ marging->margin, merging, margings->margins mariabd->MariaDB mariage->marriage +marixsm->marxism +marixst->marxist +marixsts->marxists marjority->majority markaup->markup markes->marks, marked, markers, @@ -23301,6 +23338,9 @@ marryied->married marshmellow->marshmallow marshmellows->marshmallows marter->martyr +marxisim->marxism +marxisit->marxist +marxisits->marxists marz->March, Mars, masakist->masochist mashetty->machete @@ -24766,6 +24806,18 @@ nasturshums->nasturtiums nastyness->nastiness natched->matched natches->matches +natinal->matinal, national, +natinalism->nationalism +natinalist->nationalist +natinalists->nationalists +natinally->nationally +natinals->nationals +natioanl->national +natioanlism->nationalism +natioanlist->nationalist +natioanlists->nationalists +natioanlly->nationally +natioanls->nationals nativelyx->natively natrual->natural naturaly->naturally @@ -26042,6 +26094,8 @@ octohedron->octahedron ocuntries->countries ocuntry->country ocupied->occupied +ocupier->occupier +ocupiers->occupiers ocupies->occupies ocupy->occupy ocupying->occupying @@ -28377,6 +28431,7 @@ polariy->polarity polgon->polygon polgons->polygons polical->political +polically->politically policie->policies, policy, police, policiy->policy policys->policies, police, @@ -28396,8 +28451,12 @@ pologon->polygon pologons->polygons polotic->politic polotical->political +polotically->politically polotics->politics +poltic->politic poltical->political +poltically->politically +poltics->politics poltry->poultry polulate->populate polulated->populated @@ -31279,8 +31338,13 @@ refreshs->refreshes refreshses->refreshes refridgeration->refrigeration refridgerator->refrigerator +refrom->reform +refromation->reformation refromatting->refomatting +refroming->reforming refromist->reformist +refromists->reformists +refroms->reforms refrormatting->reformatting refure->refuse refures->refuses @@ -32945,6 +33009,7 @@ reveiwing->reviewing reveiws->reviews revelent->relevant revelution->revolution +revelutionary->revolutionary revelutions->revolutions reveokes->revokes rever->revert, refer, fever, @@ -32979,8 +33044,30 @@ reviwed->reviewed reviwer->reviewer reviwers->reviewers reviwing->reviewing +revoltuion->revolution +revoltuionary->revolutionary +revoltuions->revolutions revoluion->revolution +revoluionary->revolutionary +revoluions->revolutions +revoluiton->revolution +revoluitonary->revolutionary +revoluitons->revolutions +revolulionary->revolutionary +revolutin->revolution +revolutinary->revolutionary +revolutins->revolutions +revolutionaary->revolutionary +revolutionairy->revolutionary revolutionar->revolutionary +revolutionaryy->revolutionary +revolutionay->revolutionary +revolutionnary->revolutionary +revolutoin->revolutions +revolutoinary->revolutionary +revolutoins->revolutionss +revoluttionary->revolutionary +revoluutionary->revolutionary revrese->reverse revrieve->retrieve revrieved->retrieved @@ -35065,6 +35152,8 @@ snytax->syntax Soalris->Solaris socail->social socalism->socialism +socalist->socialist +socalists->socialists socekts->sockets socities->societies socript->script @@ -38889,9 +38978,25 @@ trooso->trousseau troosos->trousseaux, trousseaus, troosso->trousseau troossos->trousseaux, trousseaus, +trotski->Trotsky +trotskism->trotskyism +trotskist->trotskyist +trotskists->trotskyists +trotskyite->trotskyist +trotskyites->trotskyists trottle->throttle trottled->throttled, trotted, trottling->throttling, trotting, +trotzki->Trotsky +trotzkism->trotskyism +trotzkist->trotskyist +trotzkists->trotskyists +trotzky->Trotsky +trotzkyism->trotskyism +trotzkyist->trotskyist +trotzkyists->trotskyists +trotzkyite->trotskyist +trotzkyites->trotskyists troubador->troubadour troubadors->troubadours troubeshoot->troubleshoot 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 b84e3d418b..79aad073ac 100644 --- a/codespell_lib/data/dictionary_en-GB_to_en-US.txt +++ b/codespell_lib/data/dictionary_en-GB_to_en-US.txt @@ -250,6 +250,11 @@ modernising->modernizing mould->mold moulds->molds nasalisation->nasalization +nationalisation->nationalization +nationalise->nationalize +nationalised->nationalized +nationalises->nationalizes +nationalising->nationalizing neighbour->neighbor neighbouring->neighboring neighbours->neighbors From e52e87d4831ac9e063f0ef676dff51a04f65672a Mon Sep 17 00:00:00 2001 From: Dimitri Papadopoulos <3234522+DimitriPapadopoulos@users.noreply.github.com> Date: Thu, 12 Jan 2023 18:27:13 +0100 Subject: [PATCH 288/302] requenst: fix typo found in blogs See also: 5ff734d --- 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 fc075b65e0..89dd098d96 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -32413,6 +32413,7 @@ reqrites->rewrites requed->requeued requencies->frequencies requency->frequency +requenst->request, requests, requeried->required requeriment->requirement requeriments->requirements From 1db5045ede3651a9d60550d900fb4058b061bdd5 Mon Sep 17 00:00:00 2001 From: Christian Fischer Date: Mon, 20 Feb 2023 07:28:33 +0100 Subject: [PATCH 289/302] Add spelling corrections for Policy 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 89dd098d96..3320188eec 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -28428,6 +28428,9 @@ pojrectors->projectors pojrects->projects poket->pocket polariy->polarity +polcies->policies +polciy->policy +polcy->policy polgon->polygon polgons->polygons polical->political From e21131469b76f2d290f0134918e28678d2729c5c Mon Sep 17 00:00:00 2001 From: Dimitri Papadopoulos Orfanos <3234522+DimitriPapadopoulos@users.noreply.github.com> Date: Mon, 20 Feb 2023 16:38:14 +0100 Subject: [PATCH 290/302] Add sockt(s)->socket(s) to code dict (typos found in iperf) (#2360) --- codespell_lib/data/dictionary_code.txt | 2 ++ 1 file changed, 2 insertions(+) diff --git a/codespell_lib/data/dictionary_code.txt b/codespell_lib/data/dictionary_code.txt index 4c1ef90f57..c4edb9e9e2 100644 --- a/codespell_lib/data/dictionary_code.txt +++ b/codespell_lib/data/dictionary_code.txt @@ -64,6 +64,8 @@ shouldnot->should not, shouldn't, sinc->sync, sink, since, sincs->syncs, sinks, since, snd->send, and, sound, +sockt->socket +sockts->sockets spawnve->spawn stdio->studio stdios->studios From 172596b727d8b7ba4c7f0565c67e3486ab0d104c Mon Sep 17 00:00:00 2001 From: Christian Fischer Date: Mon, 20 Feb 2023 14:58:15 +0100 Subject: [PATCH 291/302] Add spelling corrections for duplicate 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 3320188eec..c9c6d45ee7 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -14025,6 +14025,10 @@ dupliations->duplications duplicat->duplicate duplicatd->duplicated duplicats->duplicates +duplicte->duplicate +duplicted->duplicated +duplictes->duplicates +dupliction->duplication dupplicate->duplicate dupplicated->duplicated dupplicates->duplicates From 68ea3cff5eba266e0814794cce6cd19537f58137 Mon Sep 17 00:00:00 2001 From: Stefan Date: Wed, 22 Feb 2023 16:56:46 +0100 Subject: [PATCH 292/302] Fixed #2690 (#2755) --- codespell_lib/data/dictionary.txt | 2 -- 1 file changed, 2 deletions(-) diff --git a/codespell_lib/data/dictionary.txt b/codespell_lib/data/dictionary.txt index c9c6d45ee7..5f2d27797a 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -34448,7 +34448,6 @@ shapshots->snapshots shapsnot->snapshot shapsnots->snapshots shapt->shaped, shape, -sharable->shareable shareed->shared shareing->sharing sharloton->charlatan @@ -39964,7 +39963,6 @@ unser->under, unset, unsure, user, unseting->unsetting unsetset->unset unsettin->unsetting -unsharable->unshareable unshfit->unshift unshfited->unshifted unshfiting->unshifting From 55fe25616b9b50fd5f4385cdc25df95d3b23ee30 Mon Sep 17 00:00:00 2001 From: Christian Fischer Date: Thu, 23 Feb 2023 16:41:46 +0100 Subject: [PATCH 293/302] Add protlet(s)->portlet(s) correction --- 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 5f2d27797a..a9696145f6 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -29855,6 +29855,8 @@ protedcted->protected proteen->protein, protean, preteen, protential->potential protext->protect +protlet->portlet +protlets->portlets protocal->protocol protocall->protocol protocalls->protocols From bf8d70ce2e05cc218ce9cbf2bc7cffc603391a20 Mon Sep 17 00:00:00 2001 From: Christian Fischer Date: Wed, 1 Mar 2023 09:12:37 +0100 Subject: [PATCH 294/302] Add deffault(s|ed)->default(s|ed) correction --- 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 a9696145f6..3b02603561 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -11329,6 +11329,9 @@ deferencing->dereferencing deferentiating->differentiating defering->deferring deferreal->deferral +deffault->default +deffaulted->defaulted +deffaults->defaults deffensively->defensively deffered->differed, deferred, defference->difference, deference, From 5c9aeeb0136a0d0b81890ff08fc9bd802148921a Mon Sep 17 00:00:00 2001 From: Dimitri Papadopoulos Orfanos <3234522+DimitriPapadopoulos@users.noreply.github.com> Date: Wed, 1 Mar 2023 17:35:33 +0100 Subject: [PATCH 295/302] More precise ignore directive for mypy (#2760) --- 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 a082e6d1a9..9f211247b7 100644 --- a/codespell_lib/_codespell.py +++ b/codespell_lib/_codespell.py @@ -553,7 +553,7 @@ def parse_options( tomllib_raise_error = True if toml_files: try: - import tomllib # type: ignore + import tomllib # type: ignore[import] except ModuleNotFoundError: try: import tomli as tomllib From 0c347972abc2942ed871a123e84dca6f79005243 Mon Sep 17 00:00:00 2001 From: Francois-Xavier Le Bail Date: Wed, 1 Mar 2023 12:11:22 +0100 Subject: [PATCH 296/302] Add a 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 3b02603561..ef3258188b 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -23166,6 +23166,7 @@ makrs->makes, makers, macros, maks->mask, masks, makes, make, makse->makes, masks, makss->masks, makes, +makwfile->makefile Malcom->Malcolm maliciousally->maliciously malicius->malicious From 22ac85a4fe7e42f7cb5d2c24959edae86c906034 Mon Sep 17 00:00:00 2001 From: Dimitri Papadopoulos Orfanos <3234522+DimitriPapadopoulos@users.noreply.github.com> Date: Fri, 3 Mar 2023 17:20:36 +0100 Subject: [PATCH 297/302] doc: tomli is not needed for Python >= 3.11 (#2751) --- README.rst | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/README.rst b/README.rst index 5399c77e34..d9d15f46f8 100644 --- a/README.rst +++ b/README.rst @@ -135,8 +135,8 @@ be specified in this file (without the preceding dashes), for example: Codespell will also check in the current directory for a ``pyproject.toml`` (or a path can be specified via ``--toml ``) file, and the -``[tool.codespell]`` entry will be used as long as the tomli_ package -is installed, for example: +``[tool.codespell]`` entry will be used, but only if the tomli_ package +is installed for versions of Python prior to 3.11. For example: .. code-block:: toml From 41ed86a5d77668737c4db6546643318c8acf61c4 Mon Sep 17 00:00:00 2001 From: Christian Fischer Date: Mon, 6 Mar 2023 16:01:44 +0100 Subject: [PATCH 298/302] Add spelling correction for vulnderabilit(y|ies)->vulnerabilit(y|ies) --- 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 ef3258188b..dbb5ce960a 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -41144,6 +41144,8 @@ vulernability->vulnerability vulernable->vulnerable vulnarabilities->vulnerabilities vulnarability->vulnerability +vulnderabilities->vulnerabilities +vulnderability->vulnerability vulneabilities->vulnerabilities vulneability->vulnerability vulneable->vulnerable From 3601c9a8efb7aaff6020abd90cb418641ddf890d Mon Sep 17 00:00:00 2001 From: Tetsuo Koyama Date: Tue, 7 Mar 2023 12:09:11 +0900 Subject: [PATCH 299/302] tetrahedoren->tetrahedron (#2769) --- 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 dbb5ce960a..c2ae16045c 100644 --- a/codespell_lib/data/dictionary.txt +++ b/codespell_lib/data/dictionary.txt @@ -37920,6 +37920,9 @@ testng->testing testof->test of testomony->testimony testsing->testing +tetrahedora->tetrahedra +tetrahedoren->tetrahedron +tetrahedorens->tetrahedrons tetrahedran->tetrahedron tetrahedrans->tetrahedrons tetry->retry From 892922e11e524ffe72fe07258af925603fb8a021 Mon Sep 17 00:00:00 2001 From: Yaroslav Halchenko Date: Tue, 7 Mar 2023 15:40:03 -0500 Subject: [PATCH 300/302] ENH: Color matching wrong word in the interactive session (#2771) --- codespell_lib/_codespell.py | 66 +++++++++++++++++++++++++++---------- 1 file changed, 49 insertions(+), 17 deletions(-) diff --git a/codespell_lib/_codespell.py b/codespell_lib/_codespell.py index 9f211247b7..0e4209a1a5 100644 --- a/codespell_lib/_codespell.py +++ b/codespell_lib/_codespell.py @@ -23,7 +23,7 @@ import re import sys import textwrap -from typing import Dict, List, Optional, Pattern, Sequence, Set, Tuple +from typing import Dict, List, Match, Optional, Pattern, Sequence, Set, Tuple # autogenerated by setuptools_scm from ._version import __version__ as VERSION @@ -680,18 +680,26 @@ def fix_case(word: str, fixword: str) -> str: def ask_for_word_fix( line: str, - wrongword: str, + match: Match[str], misspelling: Misspelling, interactivity: int, + colors: TermColors, ) -> Tuple[bool, str]: + wrongword = match.group() if interactivity <= 0: return misspelling.fix, fix_case(wrongword, misspelling.data) + line_ui = ( + f"{line[:match.start()]}" + f"{colors.WWORD}{wrongword}{colors.DISABLE}" + f"{line[match.end():]}" + ) + if misspelling.fix and interactivity & 1: r = "" fixword = fix_case(wrongword, misspelling.data) while not r: - print(f"{line}\t{wrongword} ==> {fixword} (Y/n) ", end="", flush=True) + print(f"{line_ui}\t{wrongword} ==> {fixword} (Y/n) ", end="", flush=True) r = sys.stdin.readline().strip().upper() if not r: r = "Y" @@ -709,7 +717,7 @@ def ask_for_word_fix( r = "" opt = [w.strip() for w in misspelling.data.split(",")] while not r: - print(f"{line} Choose an option (blank for none): ", end="") + print(f"{line_ui} Choose an option (blank for none): ", end="") for i, o in enumerate(opt): fixword = fix_case(wrongword, o) print(f" {i}) {fixword}", end="") @@ -743,30 +751,50 @@ def print_context( print("{} {}".format(">" if i == index else ":", lines[i].rstrip())) +def _ignore_word_sub( + text: str, + ignore_word_regex: Optional[Pattern[str]], +) -> str: + if ignore_word_regex: + text = ignore_word_regex.sub(" ", text) + return text + + def extract_words( text: str, word_regex: Pattern[str], ignore_word_regex: Optional[Pattern[str]], ) -> List[str]: - if ignore_word_regex: - text = ignore_word_regex.sub(" ", text) - return word_regex.findall(text) + return word_regex.findall(_ignore_word_sub(text, ignore_word_regex)) + + +def extract_words_iter( + text: str, + word_regex: Pattern[str], + ignore_word_regex: Optional[Pattern[str]], +) -> List[Match[str]]: + return list(word_regex.finditer(_ignore_word_sub(text, ignore_word_regex))) def apply_uri_ignore_words( - check_words: List[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], -) -> None: +) -> List[Match[str]]: if not uri_ignore_words: - return + return check_matches for uri in re.findall(uri_regex, line): for uri_word in extract_words(uri, word_regex, ignore_word_regex): if uri_word in uri_ignore_words: - check_words.remove(uri_word) + # determine/remove only the first among matches + for i, match in enumerate(check_matches): + if match.group() == uri_word: + check_matches = check_matches[:i] + check_matches[i + 1 :] + break + return check_matches def parse_file( @@ -855,18 +883,18 @@ def parse_file( # outside, it will still be a spelling error. if "*" in uri_ignore_words: line = uri_regex.sub(" ", line) - check_words = extract_words(line, word_regex, ignore_word_regex) + check_matches = extract_words_iter(line, word_regex, ignore_word_regex) if "*" not in uri_ignore_words: - apply_uri_ignore_words( - check_words, + check_matches = apply_uri_ignore_words( + check_matches, line, word_regex, ignore_word_regex, uri_regex, uri_ignore_words, ) - - for word in check_words: + for match in check_matches: + word = match.group() lword = word.lower() if lword in misspellings: context_shown = False @@ -878,7 +906,11 @@ def parse_file( context_shown = True print_context(lines, i, context) fix, fixword = ask_for_word_fix( - lines[i], word, misspellings[lword], options.interactive + lines[i], + match, + misspellings[lword], + options.interactive, + colors=colors, ) asked_for.add(lword) From 8fa416764c412c2adb68d48af577176395fbf34f Mon Sep 17 00:00:00 2001 From: Jon Dufresne Date: Wed, 8 Mar 2023 09:58:44 -0800 Subject: [PATCH 301/302] Switch from pytest tmpdir to tmp_path in tests (#2625) --- codespell_lib/tests/test_basic.py | 670 ++++++++++++++---------------- 1 file changed, 303 insertions(+), 367 deletions(-) diff --git a/codespell_lib/tests/test_basic.py b/codespell_lib/tests/test_basic.py index cb000afd5f..7a36369bf9 100644 --- a/codespell_lib/tests/test_basic.py +++ b/codespell_lib/tests/test_basic.py @@ -8,7 +8,7 @@ from io import StringIO from pathlib import Path from shutil import copyfile -from typing import Generator, Optional, Tuple, Union +from typing import Any, Generator, Optional, Tuple, Union import pytest @@ -28,10 +28,11 @@ class MainWrapper: @staticmethod def main( - *args: str, + *args: Any, count: bool = True, std: bool = False, ) -> Union[int, Tuple[int, str, str]]: + args = tuple(str(arg) for arg in args) if count: args = ("--count",) + args code = cs_.main(*args) @@ -57,53 +58,50 @@ def main( def run_codespell( - args: Tuple[str, ...] = (), - cwd: Optional[str] = None, + args: Tuple[Any, ...] = (), + cwd: Optional[Path] = None, ) -> int: """Run codespell.""" - args = ("--count",) + args + args = tuple(str(arg) for arg in args) proc = subprocess.run( - ["codespell"] + list(args), cwd=cwd, capture_output=True, encoding="utf-8" + ["codespell", "--count", *args], cwd=cwd, capture_output=True, encoding="utf-8" ) count = int(proc.stderr.split("\n")[-2]) return count -def test_command(tmpdir: pytest.TempPathFactory) -> None: +def test_command(tmp_path: Path) -> None: """Test running the codespell executable.""" # With no arguments does "." - d = str(tmpdir) - assert run_codespell(cwd=d) == 0 - with open(op.join(d, "bad.txt"), "w") as f: - f.write("abandonned\nAbandonned\nABANDONNED\nAbAnDoNnEd") - assert run_codespell(cwd=d) == 4 + assert run_codespell(cwd=tmp_path) == 0 + (tmp_path / "bad.txt").write_text("abandonned\nAbandonned\nABANDONNED\nAbAnDoNnEd") + assert run_codespell(cwd=tmp_path) == 4 def test_basic( - tmpdir: pytest.TempPathFactory, + tmp_path: Path, capsys: pytest.CaptureFixture[str], ) -> None: """Test some basic functionality.""" assert cs.main("_does_not_exist_") == 0 - fname = op.join(str(tmpdir), "tmp") - with open(fname, "w") as f: - pass - result = cs.main("-D", "foo", f.name, std=True) + fname = tmp_path / "tmp" + fname.touch() + result = cs.main("-D", "foo", fname, std=True) assert isinstance(result, tuple) code, _, stderr = result assert code == EX_USAGE, "missing dictionary" assert "cannot find dictionary" in stderr assert cs.main(fname) == 0, "empty file" - with open(fname, "a") as f: + with fname.open("a") as f: f.write("this is a test file\n") assert cs.main(fname) == 0, "good" - with open(fname, "a") as f: + with fname.open("a") as f: f.write("abandonned\n") assert cs.main(fname) == 1, "bad" - with open(fname, "a") as f: + with fname.open("a") as f: f.write("abandonned\n") assert cs.main(fname) == 2, "worse" - with open(fname, "a") as f: + with fname.open("a") as f: f.write("tim\ngonna\n") assert cs.main(fname) == 2, "with a name" assert cs.main("--builtin", "clear,rare,names,informal", fname) == 4 @@ -112,57 +110,54 @@ def test_basic( code, _, stderr = result assert code == EX_USAGE # bad type assert "Unknown builtin dictionary" in stderr - d = str(tmpdir) - result = cs.main(fname, "-D", op.join(d, "foo"), std=True) + result = cs.main(fname, "-D", tmp_path / "foo", std=True) assert isinstance(result, tuple) code, _, stderr = result assert code == EX_USAGE # bad dict assert "cannot find dictionary" in stderr - os.remove(fname) + fname.unlink() - with open(op.join(d, "bad.txt"), "w", newline="") as f: + with (tmp_path / "bad.txt").open("w", newline="") as f: f.write( "abandonned\nAbandonned\nABANDONNED\nAbAnDoNnEd\nabandonned\rAbandonned\r\nABANDONNED \n AbAnDoNnEd" # noqa: E501 ) - assert cs.main(d) == 8 - result = cs.main("-w", d, std=True) + assert cs.main(tmp_path) == 8 + result = cs.main("-w", tmp_path, std=True) assert isinstance(result, tuple) code, _, stderr = result assert code == 0 assert "FIXED:" in stderr - with open(op.join(d, "bad.txt"), newline="") as f: + with (tmp_path / "bad.txt").open(newline="") as f: new_content = f.read() - assert cs.main(d) == 0 + assert cs.main(tmp_path) == 0 assert ( new_content == "abandoned\nAbandoned\nABANDONED\nabandoned\nabandoned\rAbandoned\r\nABANDONED \n abandoned" # noqa: E501 ) - with open(op.join(d, "bad.txt"), "w") as f: - f.write("abandonned abandonned\n") - assert cs.main(d) == 2 - result = cs.main("-q", "16", "-w", d, count=False, std=True) + (tmp_path / "bad.txt").write_text("abandonned abandonned\n") + assert cs.main(tmp_path) == 2 + result = cs.main("-q", "16", "-w", tmp_path, count=False, std=True) assert isinstance(result, tuple) code, stdout, stderr = result assert code == 0 assert stdout == stderr == "" - assert cs.main(d) == 0 + assert cs.main(tmp_path) == 0 # empty directory - os.mkdir(op.join(d, "empty")) - assert cs.main(d) == 0 + (tmp_path / "empty").mkdir() + assert cs.main(tmp_path) == 0 def test_bad_glob( - tmpdir: pytest.TempPathFactory, + tmp_path: Path, capsys: pytest.CaptureFixture[str], ) -> None: # disregard invalid globs, properly handle escaped globs - g = op.join(str(tmpdir), "glob") - os.mkdir(g) - fname = op.join(g, "[b-a].txt") - with open(fname, "a") as f: - f.write("abandonned\n") + g = tmp_path / "glob" + g.mkdir() + fname = g / "[b-a].txt" + fname.write_text("abandonned\n") assert cs.main(g) == 1 # bad glob is invalid result = cs.main("--skip", "[b-a].txt", g, std=True) @@ -183,116 +178,105 @@ def test_permission_error( capsys: pytest.CaptureFixture[str], ) -> None: """Test permission error handling.""" - d = tmp_path - with open(d / "unreadable.txt", "w") as f: - f.write("abandonned\n") - result = cs.main(f.name, std=True) + fname = tmp_path / "unreadable.txt" + fname.write_text("abandonned\n") + result = cs.main(fname, std=True) assert isinstance(result, tuple) code, _, stderr = result assert "WARNING:" not in stderr - os.chmod(f.name, 0o000) - result = cs.main(f.name, std=True) + fname.chmod(0o000) + result = cs.main(fname, std=True) assert isinstance(result, tuple) code, _, stderr = result assert "WARNING:" in stderr def test_interactivity( - tmpdir: pytest.TempPathFactory, + tmp_path: Path, capsys: pytest.CaptureFixture[str], ) -> None: """Test interaction""" # Windows can't read a currently-opened file, so here we use # NamedTemporaryFile just to get a good name - with open(op.join(str(tmpdir), "tmp"), "w") as f: - pass + fname = tmp_path / "tmp" + fname.touch() try: - assert cs.main(f.name) == 0, "empty file" - with open(f.name, "w") as f: - f.write("abandonned\n") - assert cs.main("-i", "-1", f.name) == 1, "bad" + assert cs.main(fname) == 0, "empty file" + fname.write_text("abandonned\n") + assert cs.main("-i", "-1", fname) == 1, "bad" with FakeStdin("y\n"): - assert cs.main("-i", "3", f.name) == 1 + assert cs.main("-i", "3", fname) == 1 with FakeStdin("n\n"): - result = cs.main("-w", "-i", "3", f.name, std=True) + result = cs.main("-w", "-i", "3", fname, std=True) assert isinstance(result, tuple) code, stdout, _ = result assert code == 0 assert "==>" in stdout with FakeStdin("x\ny\n"): - assert cs.main("-w", "-i", "3", f.name) == 0 - assert cs.main(f.name) == 0 + assert cs.main("-w", "-i", "3", fname) == 0 + assert cs.main(fname) == 0 finally: - os.remove(f.name) + fname.unlink() # New example - with open(op.join(str(tmpdir), "tmp2"), "w") as f: - pass + fname = tmp_path / "tmp2" + fname.write_text("abandonned\n") try: - with open(f.name, "w") as f: - f.write("abandonned\n") - assert cs.main(f.name) == 1 + assert cs.main(fname) == 1 with FakeStdin(" "): # blank input -> Y - assert cs.main("-w", "-i", "3", f.name) == 0 - assert cs.main(f.name) == 0 + assert cs.main("-w", "-i", "3", fname) == 0 + assert cs.main(fname) == 0 finally: - os.remove(f.name) + fname.unlink() # multiple options - with open(op.join(str(tmpdir), "tmp3"), "w") as f: - pass + fname = tmp_path / "tmp3" + fname.write_text("ackward\n") try: - with open(f.name, "w") as f: - f.write("ackward\n") - - assert cs.main(f.name) == 1 + assert cs.main(fname) == 1 with FakeStdin(" \n"): # blank input -> nothing - assert cs.main("-w", "-i", "3", f.name) == 0 - assert cs.main(f.name) == 1 + assert cs.main("-w", "-i", "3", fname) == 0 + assert cs.main(fname) == 1 with FakeStdin("0\n"): # blank input -> nothing - assert cs.main("-w", "-i", "3", f.name) == 0 - assert cs.main(f.name) == 0 - with open(f.name) as f_read: - assert f_read.read() == "awkward\n" - with open(f.name, "w") as f: - f.write("ackward\n") - assert cs.main(f.name) == 1 + assert cs.main("-w", "-i", "3", fname) == 0 + assert cs.main(fname) == 0 + assert fname.read_text() == "awkward\n" + fname.write_text("ackward\n") + assert cs.main(fname) == 1 with FakeStdin("x\n1\n"): # blank input -> nothing - result = cs.main("-w", "-i", "3", f.name, std=True) + result = cs.main("-w", "-i", "3", fname, std=True) assert isinstance(result, tuple) code, stdout, _ = result assert code == 0 assert "a valid option" in stdout - assert cs.main(f.name) == 0 - with open(f.name) as f: - assert f.read() == "backward\n" + assert cs.main(fname) == 0 + assert fname.read_text() == "backward\n" finally: - os.remove(f.name) + fname.unlink() def test_summary( - tmpdir: pytest.TempPathFactory, + tmp_path: Path, capsys: pytest.CaptureFixture[str], ) -> None: """Test summary functionality.""" - with open(op.join(str(tmpdir), "tmp"), "w") as f: - pass - result = cs.main(f.name, std=True, count=False) + fname = tmp_path / "tmp" + fname.touch() + result = cs.main(fname, std=True, count=False) assert isinstance(result, tuple) code, stdout, stderr = result assert code == 0 assert stdout == stderr == "", "no output" - result = cs.main(f.name, "--summary", std=True) + result = cs.main(fname, "--summary", std=True) assert isinstance(result, tuple) code, stdout, stderr = result assert code == 0 assert stderr == "0\n" assert "SUMMARY" in stdout assert len(stdout.split("\n")) == 5 - with open(f.name, "w") as f: - f.write("abandonned\nabandonned") + fname.write_text("abandonned\nabandonned") assert code == 0 - result = cs.main(f.name, "--summary", std=True) + result = cs.main(fname, "--summary", std=True) assert isinstance(result, tuple) code, stdout, stderr = result assert stderr == "2\n" @@ -302,43 +286,37 @@ def test_summary( def test_ignore_dictionary( - tmpdir: pytest.TempPathFactory, + tmp_path: Path, capsys: pytest.CaptureFixture[str], ) -> None: """Test ignore dictionary functionality.""" - d = str(tmpdir) - with open(op.join(d, "bad.txt"), "w") as f: - f.write("1 abandonned 1\n2 abandonned 2\nabondon\n") - bad_name = f.name + bad_name = tmp_path / "bad.txt" + bad_name.write_text("1 abandonned 1\n2 abandonned 2\nabondon\n") assert cs.main(bad_name) == 3 - with open(op.join(d, "ignore.txt"), "w") as f: - f.write("abandonned\n") - assert cs.main("-I", f.name, bad_name) == 1 + fname = tmp_path / "ignore.txt" + fname.write_text("abandonned\n") + assert cs.main("-I", fname, bad_name) == 1 def test_ignore_word_list( - tmpdir: pytest.TempPathFactory, + tmp_path: Path, capsys: pytest.CaptureFixture[str], ) -> None: """Test ignore word list functionality.""" - d = str(tmpdir) - with open(op.join(d, "bad.txt"), "w") as f: - f.write("abandonned\nabondon\nabilty\n") - assert cs.main(d) == 3 - assert cs.main("-Labandonned,someword", "-Labilty", d) == 1 + (tmp_path / "bad.txt").write_text("abandonned\nabondon\nabilty\n") + assert cs.main(tmp_path) == 3 + assert cs.main("-Labandonned,someword", "-Labilty", tmp_path) == 1 def test_custom_regex( - tmpdir: pytest.TempPathFactory, + tmp_path: Path, capsys: pytest.CaptureFixture[str], ) -> None: """Test custom word regex.""" - d = str(tmpdir) - with open(op.join(d, "bad.txt"), "w") as f: - f.write("abandonned_abondon\n") - assert cs.main(d) == 0 - assert cs.main("-r", "[a-z]+", d) == 2 - result = cs.main("-r", "[a-z]+", "--write-changes", d, std=True) + (tmp_path / "bad.txt").write_text("abandonned_abondon\n") + assert cs.main(tmp_path) == 0 + assert cs.main("-r", "[a-z]+", tmp_path) == 2 + result = cs.main("-r", "[a-z]+", "--write-changes", tmp_path, std=True) assert isinstance(result, tuple) code, _, stderr = result assert code == EX_USAGE @@ -346,64 +324,59 @@ def test_custom_regex( def test_exclude_file( - tmpdir: pytest.TempPathFactory, + tmp_path: Path, capsys: pytest.CaptureFixture[str], ) -> None: """Test exclude file functionality.""" - d = str(tmpdir) - with open(op.join(d, "bad.txt"), "wb") as f: - f.write(b"1 abandonned 1\n2 abandonned 2\n") - bad_name = f.name + bad_name = tmp_path / "bad.txt" + bad_name.write_bytes(b"1 abandonned 1\n2 abandonned 2\n") assert cs.main(bad_name) == 2 - with open(op.join(d, "tmp.txt"), "wb") as f: - f.write(b"1 abandonned 1\n") + fname = tmp_path / "tmp.txt" + fname.write_bytes(b"1 abandonned 1\n") assert cs.main(bad_name) == 2 - assert cs.main("-x", f.name, bad_name) == 1 + assert cs.main("-x", fname, bad_name) == 1 def test_encoding( - tmpdir: pytest.TempPathFactory, + tmp_path: Path, capsys: pytest.CaptureFixture[str], ) -> None: """Test encoding handling.""" # Some simple Unicode things - with open(op.join(str(tmpdir), "tmp"), "wb") as f: - pass + fname = tmp_path / "tmp" + fname.touch() # with CaptureStdout() as sio: - assert cs.main(f.name) == 0 - with open(f.name, "wb") as f: - f.write("naïve\n".encode()) - assert cs.main(f.name) == 0 - assert cs.main("-e", f.name) == 0 - with open(f.name, "ab") as f: + assert cs.main(fname) == 0 + fname.write_bytes("naïve\n".encode()) + assert cs.main(fname) == 0 + assert cs.main("-e", fname) == 0 + with fname.open("ab") as f: f.write(b"naieve\n") - assert cs.main(f.name) == 1 + assert cs.main(fname) == 1 # Encoding detection (only try ISO 8859-1 because UTF-8 is the default) - with open(f.name, "wb") as f: - f.write(b"Speling error, non-ASCII: h\xe9t\xe9rog\xe9n\xe9it\xe9\n") + fname.write_bytes(b"Speling error, non-ASCII: h\xe9t\xe9rog\xe9n\xe9it\xe9\n") # check warnings about wrong encoding are enabled with "-q 0" - result = cs.main("-q", "0", f.name, std=True, count=True) + result = cs.main("-q", "0", fname, std=True, count=True) assert isinstance(result, tuple) code, stdout, stderr = result assert code == 1 assert "Speling" in stdout assert "iso-8859-1" in stderr # check warnings about wrong encoding are disabled with "-q 1" - result = cs.main("-q", "1", f.name, std=True, count=True) + result = cs.main("-q", "1", fname, std=True, count=True) assert isinstance(result, tuple) code, stdout, stderr = result assert code == 1 assert "Speling" in stdout assert "iso-8859-1" not in stderr # Binary file warning - with open(f.name, "wb") as f: - f.write(b"\x00\x00naiive\x00\x00") - result = cs.main(f.name, std=True, count=False) + fname.write_bytes(b"\x00\x00naiive\x00\x00") + result = cs.main(fname, std=True, count=False) assert isinstance(result, tuple) code, stdout, stderr = result assert code == 0 assert stdout == stderr == "" - result = cs.main("-q", "0", f.name, std=True, count=False) + result = cs.main("-q", "0", fname, std=True, count=False) assert isinstance(result, tuple) code, stdout, stderr = result assert code == 0 @@ -412,110 +385,100 @@ def test_encoding( def test_ignore( - tmpdir: pytest.TempPathFactory, + tmp_path: Path, capsys: pytest.CaptureFixture[str], ) -> None: """Test ignoring of files and directories.""" - d = str(tmpdir) - goodtxt = op.join(d, "good.txt") - with open(goodtxt, "w") as f: - f.write("this file is okay") - assert cs.main(d) == 0 - badtxt = op.join(d, "bad.txt") - with open(badtxt, "w") as f: - f.write("abandonned") - assert cs.main(d) == 1 - assert cs.main("--skip=bad*", d) == 0 - assert cs.main("--skip=bad.txt", d) == 0 - subdir = op.join(d, "ignoredir") - os.mkdir(subdir) - with open(op.join(subdir, "bad.txt"), "w") as f: - f.write("abandonned") - assert cs.main(d) == 2 - assert cs.main("--skip=bad*", d) == 0 - assert cs.main("--skip=*ignoredir*", d) == 1 - assert cs.main("--skip=ignoredir", d) == 1 - assert cs.main("--skip=*ignoredir/bad*", d) == 1 - badjs = op.join(d, "bad.js") + goodtxt = tmp_path / "good.txt" + goodtxt.write_text("this file is okay") + assert cs.main(tmp_path) == 0 + badtxt = tmp_path / "bad.txt" + badtxt.write_text("abandonned") + assert cs.main(tmp_path) == 1 + assert cs.main("--skip=bad*", tmp_path) == 0 + assert cs.main("--skip=bad.txt", tmp_path) == 0 + subdir = tmp_path / "ignoredir" + subdir.mkdir() + (subdir / "bad.txt").write_text("abandonned") + assert cs.main(tmp_path) == 2 + assert cs.main("--skip=bad*", tmp_path) == 0 + assert cs.main("--skip=*ignoredir*", tmp_path) == 1 + assert cs.main("--skip=ignoredir", tmp_path) == 1 + assert cs.main("--skip=*ignoredir/bad*", tmp_path) == 1 + badjs = tmp_path / "bad.js" copyfile(badtxt, badjs) assert cs.main("--skip=*.js", goodtxt, badtxt, badjs) == 1 def test_check_filename( - tmpdir: pytest.TempPathFactory, + tmp_path: Path, capsys: pytest.CaptureFixture[str], ) -> None: """Test filename check.""" - d = str(tmpdir) + fname = tmp_path / "abandonned.txt" # Empty file - with open(op.join(d, "abandonned.txt"), "w") as f: - f.write("") - assert cs.main("-f", d) == 1 + fname.touch() + assert cs.main("-f", tmp_path) == 1 # Normal file with contents - with open(op.join(d, "abandonned.txt"), "w") as f: - f.write(".") - assert cs.main("-f", d) == 1 + fname.write_text(".") + assert cs.main("-f", tmp_path) == 1 # Normal file with binary contents - with open(op.join(d, "abandonned.txt"), "wb") as f: - f.write(b"\x00\x00naiive\x00\x00") - assert cs.main("-f", d) == 1 + fname.write_bytes(b"\x00\x00naiive\x00\x00") + assert cs.main("-f", tmp_path) == 1 @pytest.mark.skipif( (not hasattr(os, "mkfifo") or not callable(os.mkfifo)), reason="requires os.mkfifo" ) def test_check_filename_irregular_file( - tmpdir: pytest.TempPathFactory, + tmp_path: Path, capsys: pytest.CaptureFixture[str], ) -> None: """Test irregular file filename check.""" # Irregular file (!isfile()) - d = str(tmpdir) - os.mkfifo(op.join(d, "abandonned")) - assert cs.main("-f", d) == 1 - d = str(tmpdir) + os.mkfifo(tmp_path / "abandonned") + assert cs.main("-f", tmp_path) == 1 def test_check_hidden( - tmpdir: pytest.TempPathFactory, + tmp_path: Path, capsys: pytest.CaptureFixture[str], ) -> None: """Test ignoring of hidden files.""" - d = str(tmpdir) + fname = tmp_path / "test.txt" # visible file - with open(op.join(d, "test.txt"), "w") as f: - f.write("abandonned\n") - assert cs.main(op.join(d, "test.txt")) == 1 - assert cs.main(d) == 1 + fname.write_text("abandonned\n") + assert cs.main(fname) == 1 + assert cs.main(tmp_path) == 1 # hidden file - os.rename(op.join(d, "test.txt"), op.join(d, ".test.txt")) - assert cs.main(op.join(d, ".test.txt")) == 0 - assert cs.main(d) == 0 - assert cs.main("--check-hidden", op.join(d, ".test.txt")) == 1 - assert cs.main("--check-hidden", d) == 1 + hidden_file = tmp_path / ".test.txt" + fname.rename(hidden_file) + assert cs.main(hidden_file) == 0 + assert cs.main(tmp_path) == 0 + assert cs.main("--check-hidden", hidden_file) == 1 + assert cs.main("--check-hidden", tmp_path) == 1 # hidden file with typo in name - os.rename(op.join(d, ".test.txt"), op.join(d, ".abandonned.txt")) - assert cs.main(op.join(d, ".abandonned.txt")) == 0 - assert cs.main(d) == 0 - assert cs.main("--check-hidden", op.join(d, ".abandonned.txt")) == 1 - assert cs.main("--check-hidden", d) == 1 - assert ( - cs.main("--check-hidden", "--check-filenames", op.join(d, ".abandonned.txt")) - == 2 - ) - assert cs.main("--check-hidden", "--check-filenames", d) == 2 + typo_file = tmp_path / ".abandonned.txt" + hidden_file.rename(typo_file) + assert cs.main(typo_file) == 0 + assert cs.main(tmp_path) == 0 + assert cs.main("--check-hidden", typo_file) == 1 + assert cs.main("--check-hidden", tmp_path) == 1 + assert cs.main("--check-hidden", "--check-filenames", typo_file) == 2 + assert cs.main("--check-hidden", "--check-filenames", tmp_path) == 2 # hidden directory - assert cs.main(d) == 0 - assert cs.main("--check-hidden", d) == 1 - assert cs.main("--check-hidden", "--check-filenames", d) == 2 - os.mkdir(op.join(d, ".abandonned")) - copyfile(op.join(d, ".abandonned.txt"), op.join(d, ".abandonned", "abandonned.txt")) - assert cs.main(d) == 0 - assert cs.main("--check-hidden", d) == 2 - assert cs.main("--check-hidden", "--check-filenames", d) == 5 + assert cs.main(tmp_path) == 0 + assert cs.main("--check-hidden", tmp_path) == 1 + assert cs.main("--check-hidden", "--check-filenames", tmp_path) == 2 + hidden_dir = tmp_path / ".abandonned" + hidden_dir.mkdir() + copyfile(typo_file, hidden_dir / typo_file.name) + assert cs.main(tmp_path) == 0 + assert cs.main("--check-hidden", tmp_path) == 2 + assert cs.main("--check-hidden", "--check-filenames", tmp_path) == 5 # check again with a relative path try: - rel = op.relpath(d) + rel = op.relpath(tmp_path) except ValueError: # Windows: path is on mount 'C:', start on mount 'D:' pass @@ -524,64 +487,58 @@ def test_check_hidden( assert cs.main("--check-hidden", rel) == 2 assert cs.main("--check-hidden", "--check-filenames", rel) == 5 # hidden subdirectory - assert cs.main(d) == 0 - assert cs.main("--check-hidden", d) == 2 - assert cs.main("--check-hidden", "--check-filenames", d) == 5 - subdir = op.join(d, "subdir") - os.mkdir(subdir) - os.mkdir(op.join(subdir, ".abandonned")) - copyfile( - op.join(d, ".abandonned.txt"), op.join(subdir, ".abandonned", "abandonned.txt") - ) - assert cs.main(d) == 0 - assert cs.main("--check-hidden", d) == 3 - assert cs.main("--check-hidden", "--check-filenames", d) == 8 + assert cs.main(tmp_path) == 0 + assert cs.main("--check-hidden", tmp_path) == 2 + assert cs.main("--check-hidden", "--check-filenames", tmp_path) == 5 + subdir = tmp_path / "subdir" + subdir.mkdir() + hidden_subdir = subdir / ".abandonned" + hidden_subdir.mkdir() + copyfile(typo_file, hidden_subdir / typo_file.name) + assert cs.main(tmp_path) == 0 + assert cs.main("--check-hidden", tmp_path) == 3 + assert cs.main("--check-hidden", "--check-filenames", tmp_path) == 8 def test_case_handling( - tmpdir: pytest.TempPathFactory, + tmp_path: Path, capsys: pytest.CaptureFixture[str], ) -> None: """Test that capitalized entries get detected properly.""" # Some simple Unicode things - with open(op.join(str(tmpdir), "tmp"), "wb") as f: - pass + fname = tmp_path / "tmp" + fname.touch() # with CaptureStdout() as sio: - assert cs.main(f.name) == 0 - with open(f.name, "wb") as f: - f.write(b"this has an ACII error") - result = cs.main(f.name, std=True) + assert cs.main(fname) == 0 + fname.write_bytes(b"this has an ACII error") + result = cs.main(fname, std=True) assert isinstance(result, tuple) code, stdout, _ = result assert code == 1 assert "ASCII" in stdout - result = cs.main("-w", f.name, std=True) + result = cs.main("-w", fname, std=True) assert isinstance(result, tuple) code, _, stderr = result assert code == 0 assert "FIXED" in stderr - with open(f.name, encoding="utf-8") as fp: - assert fp.read() == "this has an ASCII error" + assert fname.read_text(encoding="utf-8") == "this has an ASCII error" def _helper_test_case_handling_in_fixes( - tmpdir: pytest.TempPathFactory, + tmp_path: Path, capsys: pytest.CaptureFixture[str], reason: bool, ) -> None: - d = str(tmpdir) - - with open(op.join(d, "dictionary.txt"), "w") as f: - if reason: - f.write("adoptor->adopter, adaptor, reason\n") - else: - f.write("adoptor->adopter, adaptor,\n") - dictionary_name = f.name + dictionary_name = tmp_path / "dictionary.txt" + if reason: + dictionary_name.write_text("adoptor->adopter, adaptor, reason\n") + else: + dictionary_name.write_text("adoptor->adopter, adaptor,\n") # the mispelled word is entirely lowercase - with open(op.join(d, "bad.txt"), "w") as f: - f.write("early adoptor\n") - result = cs.main("-D", dictionary_name, f.name, std=True) + fname = tmp_path / "bad.txt" + fname.write_text("early adoptor\n") + result = cs.main("-D", dictionary_name, fname, std=True) assert isinstance(result, tuple) code, stdout, _ = result # all suggested fixes must be lowercase too @@ -591,9 +548,8 @@ def _helper_test_case_handling_in_fixes( assert "reason" in stdout # the mispelled word is capitalized - with open(op.join(d, "bad.txt"), "w") as f: - f.write("Early Adoptor\n") - result = cs.main("-D", dictionary_name, f.name, std=True) + fname.write_text("Early Adoptor\n") + result = cs.main("-D", dictionary_name, fname, std=True) assert isinstance(result, tuple) code, stdout, _ = result # all suggested fixes must be capitalized too @@ -603,9 +559,8 @@ def _helper_test_case_handling_in_fixes( assert "reason" in stdout # the mispelled word is entirely uppercase - with open(op.join(d, "bad.txt"), "w") as f: - f.write("EARLY ADOPTOR\n") - result = cs.main("-D", dictionary_name, f.name, std=True) + fname.write_text("EARLY ADOPTOR\n") + result = cs.main("-D", dictionary_name, fname, std=True) assert isinstance(result, tuple) code, stdout, _ = result # all suggested fixes must be uppercase too @@ -615,9 +570,8 @@ def _helper_test_case_handling_in_fixes( assert "reason" in stdout # the mispelled word mixes lowercase and uppercase - with open(op.join(d, "bad.txt"), "w") as f: - f.write("EaRlY AdOpToR\n") - result = cs.main("-D", dictionary_name, f.name, std=True) + fname.write_text("EaRlY AdOpToR\n") + result = cs.main("-D", dictionary_name, fname, std=True) assert isinstance(result, tuple) code, stdout, _ = result # all suggested fixes should be lowercase @@ -628,24 +582,24 @@ def _helper_test_case_handling_in_fixes( def test_case_handling_in_fixes( - tmpdir: pytest.TempPathFactory, capsys: pytest.CaptureFixture[str] + tmp_path: Path, capsys: pytest.CaptureFixture[str] ) -> None: """Test that the case of fixes is similar to the mispelled word.""" - _helper_test_case_handling_in_fixes(tmpdir, capsys, reason=False) - _helper_test_case_handling_in_fixes(tmpdir, capsys, reason=True) + _helper_test_case_handling_in_fixes(tmp_path, capsys, reason=False) + _helper_test_case_handling_in_fixes(tmp_path, capsys, reason=True) def test_context( - tmpdir: pytest.TempPathFactory, + tmp_path: Path, capsys: pytest.CaptureFixture[str], ) -> None: """Test context options.""" - d = str(tmpdir) - with open(op.join(d, "context.txt"), "w") as f: - f.write("line 1\nline 2\nline 3 abandonned\nline 4\nline 5") + (tmp_path / "context.txt").write_text( + "line 1\nline 2\nline 3 abandonned\nline 4\nline 5" + ) # symmetric context, fully within file - result = cs.main("-C", "1", d, std=True) + result = cs.main("-C", "1", tmp_path, std=True) assert isinstance(result, tuple) code, stdout, _ = result assert code == 1 @@ -656,7 +610,7 @@ def test_context( assert lines[2] == ": line 4" # requested context is bigger than the file - result = cs.main("-C", "10", d, std=True) + result = cs.main("-C", "10", tmp_path, std=True) assert isinstance(result, tuple) code, stdout, _ = result assert code == 1 @@ -669,7 +623,7 @@ def test_context( assert lines[4] == ": line 5" # only before context - result = cs.main("-B", "2", d, std=True) + result = cs.main("-B", "2", tmp_path, std=True) assert isinstance(result, tuple) code, stdout, _ = result assert code == 1 @@ -680,7 +634,7 @@ def test_context( assert lines[2] == "> line 3 abandonned" # only after context - result = cs.main("-A", "1", d, std=True) + result = cs.main("-A", "1", tmp_path, std=True) assert isinstance(result, tuple) code, stdout, _ = result assert code == 1 @@ -690,7 +644,7 @@ def test_context( assert lines[1] == ": line 4" # asymmetric context - result = cs.main("-B", "2", "-A", "1", d, std=True) + result = cs.main("-B", "2", "-A", "1", tmp_path, std=True) assert isinstance(result, tuple) code, stdout, _ = result assert code == 1 @@ -702,7 +656,7 @@ def test_context( assert lines[3] == ": line 4" # both '-C' and '-A' on the command line - result = cs.main("-C", "2", "-A", "1", d, std=True) + result = cs.main("-C", "2", "-A", "1", tmp_path, std=True) assert isinstance(result, tuple) code, _, stderr = result assert code == EX_USAGE @@ -710,7 +664,7 @@ def test_context( assert "ERROR" in lines[0] # both '-C' and '-B' on the command line - result = cs.main("-C", "2", "-B", "1", d, std=True) + result = cs.main("-C", "2", "-B", "1", tmp_path, std=True) assert isinstance(result, tuple) code, _, stderr = result assert code == EX_USAGE @@ -719,11 +673,10 @@ def test_context( def test_ignore_regex_option( - tmpdir: pytest.TempPathFactory, + tmp_path: Path, capsys: pytest.CaptureFixture[str], ) -> None: """Test ignore regex option functionality.""" - d = str(tmpdir) # Invalid regex. result = cs.main("--ignore-regex=(", std=True) @@ -732,36 +685,34 @@ def test_ignore_regex_option( assert code == EX_USAGE assert "usage:" in stdout - with open(op.join(d, "flag.txt"), "w") as f: - f.write("# Please see http://example.com/abandonned for info\n") + fname = tmp_path / "flag.txt" + fname.write_text("# Please see http://example.com/abandonned for info\n") # Test file has 1 invalid entry, and it's not ignored by default. - assert cs.main(f.name) == 1 + assert cs.main(fname) == 1 # An empty regex is the default value, and nothing is ignored. - assert cs.main(f.name, "--ignore-regex=") == 1 - assert cs.main(f.name, '--ignore-regex=""') == 1 + assert cs.main(fname, "--ignore-regex=") == 1 + assert cs.main(fname, '--ignore-regex=""') == 1 # Non-matching regex results in nothing being ignored. - assert cs.main(f.name, "--ignore-regex=^$") == 1 + assert cs.main(fname, "--ignore-regex=^$") == 1 # A word can be ignored. - assert cs.main(f.name, "--ignore-regex=abandonned") == 0 + assert cs.main(fname, "--ignore-regex=abandonned") == 0 # Ignoring part of the word can result in odd behavior. - assert cs.main(f.name, "--ignore-regex=nn") == 0 + assert cs.main(fname, "--ignore-regex=nn") == 0 - with open(op.join(d, "flag.txt"), "w") as f: - f.write("abandonned donn\n") + fname.write_text("abandonned donn\n") # Test file has 2 invalid entries. - assert cs.main(f.name) == 2 + assert cs.main(fname) == 2 # Ignoring donn breaks them both. - assert cs.main(f.name, "--ignore-regex=donn") == 0 + assert cs.main(fname, "--ignore-regex=donn") == 0 # Adding word breaks causes only one to be ignored. - assert cs.main(f.name, r"--ignore-regex=\bdonn\b") == 1 + assert cs.main(fname, r"--ignore-regex=\bdonn\b") == 1 def test_uri_regex_option( - tmpdir: pytest.TempPathFactory, + tmp_path: Path, capsys: pytest.CaptureFixture[str], ) -> None: """Test --uri-regex option functionality.""" - d = str(tmpdir) # Invalid regex. result = cs.main("--uri-regex=(", std=True) @@ -770,64 +721,59 @@ def test_uri_regex_option( assert code == EX_USAGE assert "usage:" in stdout - with open(op.join(d, "flag.txt"), "w") as f: - f.write("# Please see http://abandonned.com for info\n") + fname = tmp_path / "flag.txt" + fname.write_text("# Please see http://abandonned.com for info\n") # By default, the standard regex is used. - assert cs.main(f.name) == 1 - assert cs.main(f.name, "--uri-ignore-words-list=abandonned") == 0 + assert cs.main(fname) == 1 + assert cs.main(fname, "--uri-ignore-words-list=abandonned") == 0 # If empty, nothing matches. - assert cs.main(f.name, "--uri-regex=", "--uri-ignore-words-list=abandonned") == 0 + assert cs.main(fname, "--uri-regex=", "--uri-ignore-words-list=abandonned") == 0 # Can manually match urls. assert ( - cs.main( - f.name, "--uri-regex=\\bhttp.*\\b", "--uri-ignore-words-list=abandonned" - ) + cs.main(fname, "--uri-regex=\\bhttp.*\\b", "--uri-ignore-words-list=abandonned") == 0 ) # Can also match arbitrary content. - with open(op.join(d, "flag.txt"), "w") as f: - f.write("abandonned") - assert cs.main(f.name) == 1 - assert cs.main(f.name, "--uri-ignore-words-list=abandonned") == 1 - assert cs.main(f.name, "--uri-regex=.*") == 1 - assert cs.main(f.name, "--uri-regex=.*", "--uri-ignore-words-list=abandonned") == 0 + fname.write_text("abandonned") + assert cs.main(fname) == 1 + assert cs.main(fname, "--uri-ignore-words-list=abandonned") == 1 + assert cs.main(fname, "--uri-regex=.*") == 1 + assert cs.main(fname, "--uri-regex=.*", "--uri-ignore-words-list=abandonned") == 0 def test_uri_ignore_words_list_option_uri( - tmpdir: pytest.TempPathFactory, + tmp_path: Path, capsys: pytest.CaptureFixture[str], ) -> None: """Test ignore regex option functionality.""" - d = str(tmpdir) - with open(op.join(d, "flag.txt"), "w") as f: - f.write("# Please see http://example.com/abandonned for info\n") + fname = tmp_path / "flag.txt" + fname.write_text("# Please see http://example.com/abandonned for info\n") # Test file has 1 invalid entry, and it's not ignored by default. - assert cs.main(f.name) == 1 + assert cs.main(fname) == 1 # An empty list is the default value, and nothing is ignored. - assert cs.main(f.name, "--uri-ignore-words-list=") == 1 + assert cs.main(fname, "--uri-ignore-words-list=") == 1 # Non-matching regex results in nothing being ignored. - assert cs.main(f.name, "--uri-ignore-words-list=foo,example") == 1 + assert cs.main(fname, "--uri-ignore-words-list=foo,example") == 1 # A word can be ignored. - assert cs.main(f.name, "--uri-ignore-words-list=abandonned") == 0 - assert cs.main(f.name, "--uri-ignore-words-list=foo,abandonned,bar") == 0 - assert cs.main(f.name, "--uri-ignore-words-list=*") == 0 + assert cs.main(fname, "--uri-ignore-words-list=abandonned") == 0 + assert cs.main(fname, "--uri-ignore-words-list=foo,abandonned,bar") == 0 + assert cs.main(fname, "--uri-ignore-words-list=*") == 0 # The match must be for the complete word. - assert cs.main(f.name, "--uri-ignore-words-list=abandonn") == 1 + assert cs.main(fname, "--uri-ignore-words-list=abandonn") == 1 - with open(op.join(d, "flag.txt"), "w") as f: - f.write("abandonned http://example.com/abandonned\n") + fname.write_text("abandonned http://example.com/abandonned\n") # Test file has 2 invalid entries. - assert cs.main(f.name) == 2 + assert cs.main(fname) == 2 # Ignoring the value in the URI won't ignore the word completely. - assert cs.main(f.name, "--uri-ignore-words-list=abandonned") == 1 - assert cs.main(f.name, "--uri-ignore-words-list=*") == 1 + assert cs.main(fname, "--uri-ignore-words-list=abandonned") == 1 + assert cs.main(fname, "--uri-ignore-words-list=*") == 1 # The regular --ignore-words-list will ignore both. - assert cs.main(f.name, "--ignore-words-list=abandonned") == 0 + assert cs.main(fname, "--ignore-words-list=abandonned") == 0 variation_option = "--uri-ignore-words-list=abandonned" @@ -848,10 +794,9 @@ def test_uri_ignore_words_list_option_uri( "# Please see http://[2001:0db8:85a3:0000:0000:8a2e:0370" ":7334]/abandonned for info\n", ): - with open(op.join(d, "flag.txt"), "w") as f: - f.write(variation) - assert cs.main(f.name) == 1, variation - assert cs.main(f.name, variation_option) == 0, variation + fname.write_text(variation) + assert cs.main(fname) == 1, variation + assert cs.main(fname, variation_option) == 0, variation # Variations where no error is ignored. for variation in ( @@ -860,43 +805,40 @@ def test_uri_ignore_words_list_option_uri( "# Please see foo/abandonned for info\n", "# Please see http://foo abandonned for info\n", ): - with open(op.join(d, "flag.txt"), "w") as f: - f.write(variation) - assert cs.main(f.name) == 1, variation - assert cs.main(f.name, variation_option) == 1, variation + fname.write_text(variation) + assert cs.main(fname) == 1, variation + assert cs.main(fname, variation_option) == 1, variation def test_uri_ignore_words_list_option_email( - tmpdir: pytest.TempPathFactory, + tmp_path: Path, capsys: pytest.CaptureFixture[str], ) -> None: """Test ignore regex option functionality.""" - d = str(tmpdir) - with open(op.join(d, "flag.txt"), "w") as f: - f.write("# Please see example@abandonned.com for info\n") + fname = tmp_path / "flag.txt" + fname.write_text("# Please see example@abandonned.com for info\n") # Test file has 1 invalid entry, and it's not ignored by default. - assert cs.main(f.name) == 1 + assert cs.main(fname) == 1 # An empty list is the default value, and nothing is ignored. - assert cs.main(f.name, "--uri-ignore-words-list=") == 1 + assert cs.main(fname, "--uri-ignore-words-list=") == 1 # Non-matching regex results in nothing being ignored. - assert cs.main(f.name, "--uri-ignore-words-list=foo,example") == 1 + assert cs.main(fname, "--uri-ignore-words-list=foo,example") == 1 # A word can be ignored. - assert cs.main(f.name, "--uri-ignore-words-list=abandonned") == 0 - assert cs.main(f.name, "--uri-ignore-words-list=foo,abandonned,bar") == 0 - assert cs.main(f.name, "--uri-ignore-words-list=*") == 0 + assert cs.main(fname, "--uri-ignore-words-list=abandonned") == 0 + assert cs.main(fname, "--uri-ignore-words-list=foo,abandonned,bar") == 0 + assert cs.main(fname, "--uri-ignore-words-list=*") == 0 # The match must be for the complete word. - assert cs.main(f.name, "--uri-ignore-words-list=abandonn") == 1 + assert cs.main(fname, "--uri-ignore-words-list=abandonn") == 1 - with open(op.join(d, "flag.txt"), "w") as f: - f.write("abandonned example@abandonned.com\n") + fname.write_text("abandonned example@abandonned.com\n") # Test file has 2 invalid entries. - assert cs.main(f.name) == 2 + assert cs.main(fname) == 2 # Ignoring the value in the URI won't ignore the word completely. - assert cs.main(f.name, "--uri-ignore-words-list=abandonned") == 1 - assert cs.main(f.name, "--uri-ignore-words-list=*") == 1 + assert cs.main(fname, "--uri-ignore-words-list=abandonned") == 1 + assert cs.main(fname, "--uri-ignore-words-list=*") == 1 # The regular --ignore-words-list will ignore both. - assert cs.main(f.name, "--ignore-words-list=abandonned") == 0 + assert cs.main(fname, "--ignore-words-list=abandonned") == 0 variation_option = "--uri-ignore-words-list=abandonned" @@ -907,10 +849,9 @@ def test_uri_ignore_words_list_option_email( "# Please see abandonned@example.com for info\n", "# Please see mailto:abandonned@example.com?subject=Test for info\n", ): - with open(op.join(d, "flag.txt"), "w") as f: - f.write(variation) - assert cs.main(f.name) == 1, variation - assert cs.main(f.name, variation_option) == 0, variation + fname.write_text(variation) + assert cs.main(fname) == 1, variation + assert cs.main(fname, variation_option) == 0, variation # Variations where no error is ignored. for variation in ( @@ -918,10 +859,9 @@ def test_uri_ignore_words_list_option_email( "# Please see abandonned@ example for info\n", "# Please see mailto:foo@example.com?subject=Test abandonned for info\n", ): - with open(op.join(d, "flag.txt"), "w") as f: - f.write(variation) - assert cs.main(f.name) == 1, variation - assert cs.main(f.name, variation_option) == 1, variation + fname.write_text(variation) + assert cs.main(fname) == 1, variation + assert cs.main(fname, variation_option) == 1, variation def test_uri_regex_def() -> None: @@ -1055,13 +995,11 @@ def test_config_toml( """Test loading options from a config file or toml.""" d = tmp_path / "files" d.mkdir() - with open(d / "bad.txt", "w") as f: - f.write("abandonned donn\n") - with open(d / "good.txt", "w") as f: - f.write("good") + (d / "bad.txt").write_text("abandonned donn\n") + (d / "good.txt").write_text("good") # Should fail when checking both. - result = cs.main(str(d), count=True, std=True) + result = cs.main(d, count=True, std=True) assert isinstance(result, tuple) code, stdout, _ = result # Code in this case is not exit code, but count of misspellings. @@ -1069,43 +1007,41 @@ def test_config_toml( assert "bad.txt" in stdout if kind == "cfg": - conffile = str(tmp_path / "setup.cfg") + conffile = tmp_path / "setup.cfg" args = ("--config", conffile) - with open(conffile, "w") as f: - f.write( - """\ + conffile.write_text( + """\ [codespell] skip = bad.txt, whatever.txt count = """ - ) + ) else: assert kind == "toml" if sys.version_info < (3, 11): pytest.importorskip("tomli") - tomlfile = str(tmp_path / "pyproject.toml") + tomlfile = tmp_path / "pyproject.toml" args = ("--toml", tomlfile) - with open(tomlfile, "w") as f: - f.write( - """\ + tomlfile.write_text( + """\ [tool.codespell] skip = 'bad.txt,whatever.txt' count = false """ - ) + ) # Should pass when skipping bad.txt - result = cs.main(str(d), *args, count=True, std=True) + result = cs.main(d, *args, count=True, std=True) assert isinstance(result, tuple) code, stdout, _ = result assert code == 0 assert "bad.txt" not in stdout # And both should automatically work if they're in cwd - cwd = os.getcwd() + cwd = Path.cwd() try: os.chdir(tmp_path) - result = cs.main(str(d), count=True, std=True) + result = cs.main(d, count=True, std=True) assert isinstance(result, tuple) code, stdout, _ = result finally: From ec0f41b9573937aebab66e3ca5b00d00a7b339fa Mon Sep 17 00:00:00 2001 From: Eric Larson Date: Wed, 8 Mar 2023 13:58:14 -0500 Subject: [PATCH 302/302] BUG: Fix bug with toml triage (#2774) --- .github/workflows/codespell-private.yml | 15 ++++++++++++--- codespell_lib/_codespell.py | 10 ++++++---- 2 files changed, 18 insertions(+), 7 deletions(-) diff --git a/.github/workflows/codespell-private.yml b/.github/workflows/codespell-private.yml index 9a14d55169..1318451862 100644 --- a/.github/workflows/codespell-private.yml +++ b/.github/workflows/codespell-private.yml @@ -2,7 +2,7 @@ # For general usage in your repo, see the example in codespell.yml # https://github.com/codespell-project/codespell # Concurrency cancels an action on a given PR once a new commit is pushed -name: Test Codespell +name: Pytest concurrency: group: ${{ github.workflow }}-${{ github.event.number }}-${{ github.event.ref }} cancel-in-progress: true @@ -23,7 +23,12 @@ jobs: - '3.9' - '3.10' - '3.11' - name: Python ${{ matrix.python-version }} test + no-toml: + - '' + include: + - python-version: '3.10' + no-toml: 'no-toml' + name: ${{ matrix.python-version }} ${{ matrix.no-toml }} steps: - uses: actions/checkout@v3 with: @@ -44,10 +49,14 @@ jobs: - run: codespell --version - run: make check - uses: codecov/codecov-action@v3 - - run: codespell --check-filenames --skip="./.git/*,*.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" + # 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/*,*.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" # this file has an error - run: "! codespell codespell_lib/tests/test_basic.py" + make-check-dictionaries: runs-on: ubuntu-latest steps: diff --git a/codespell_lib/_codespell.py b/codespell_lib/_codespell.py index 0e4209a1a5..3b79286f77 100644 --- a/codespell_lib/_codespell.py +++ b/codespell_lib/_codespell.py @@ -563,10 +563,12 @@ def parse_options( f"tomllib or tomli are required to read pyproject.toml " f"but could not be imported, got: {e}" ) from None - for toml_file in toml_files: - with open(toml_file, "rb") as f: - data = tomllib.load(f).get("tool", {}) - config.read_dict(data) + tomllib = None + if tomllib is not None: + for toml_file in toml_files: + with open(toml_file, "rb") as f: + data = tomllib.load(f).get("tool", {}) + config.read_dict(data) # Collect which config files are going to be used used_cfg_files = []