Add renaming advice based on IETF draft-knodel-terminology-00 (#1556)
* Add renaming advice based on IETF draft-knodel-terminology-00
Add a new "usage" dictionary with usage advice based on:
https://tools.ietf.org/id/draft-knodel-terminology-00.html#rfc.section.1.1.1
Offer to replace master/slave with:
- Primary-secondary
- Leader-follower
- Active-standby
- Primary-replica
- Writer-reader
- Coordinator-worker
- Parent-helper
* Move recommended terms to "usage" dictionary
Backout the changes from commit 98ab0fa and move them into the
"usage" dictionary.
* Fix use of "whitelist" in README
Use the recommended replacement "allowlist"
* Update codespell_lib/_codespell.py
Co-authored-by: Eric Larson <larson.eric.d@gmail.com>
diff --git a/README.rst b/README.rst
index 92138e8..fc961bf 100644
--- a/README.rst
+++ b/README.rst
@@ -41,11 +41,11 @@
codespell -I FILE, --ignore-words=FILE
-The ``-I`` flag can be used to whitelist certain words that are in the ``codespell_lib/data/dictionary.txt``. The format of the whitelist file is one word per line. Invoke using: ``codespell -I path/to/file.txt`` to execute codespell referencing said whitelist. **Important note:** The whitelist passed to ``-I`` is case-sensitive based on how it is listed in ``dictionary.txt``. ::
+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. ::
codespell -L word1,word2,word3,word4
-The ``-L`` flag can be used to whitelist certain words that are comma-separated placed immediately after it. ::
+The ``-L`` flag can be used to allow certain words that are comma-separated placed immediately after it. ::
codespell -S, --skip=
diff --git a/codespell_lib/_codespell.py b/codespell_lib/_codespell.py
index b629161..17fc3b9 100755
--- a/codespell_lib/_codespell.py
+++ b/codespell_lib/_codespell.py
@@ -43,6 +43,7 @@
('clear', 'for unambiguous errors', '', False, None),
('rare', 'for rare but valid words', '_rare', None, None),
('informal', 'for informal words', '_informal', True, True),
+ ('usage', 'for recommended terms', '_usage', None, None),
('code', 'for words common to code and/or mathematics', '_code', None, None), # noqa: E501
('names', 'for valid proper names that might be typos', '_names', None, None), # noqa: E501
('en-GB_to_en-US', 'for corrections from en-GB to en-US', '_en-GB_to_en-US', True, True), # noqa: E501
diff --git a/codespell_lib/data/dictionary.txt b/codespell_lib/data/dictionary.txt
index 1307f90..f0f1adb 100644
--- a/codespell_lib/data/dictionary.txt
+++ b/codespell_lib/data/dictionary.txt
@@ -3556,7 +3556,7 @@
bject->object
bjects->objects
blackslashes->backslashes
-blaclist->blocklist
+blaclist->blacklist
blaim->blame
blaimed->blamed
blak->black, blank,
@@ -28091,10 +28091,10 @@
whihc->which
whihch->which
whilest->whilst
-whiltelist->allowlist
-whiltelisted->allowlisted
-whiltelisting->allowlisting
-whiltelists->allowlists
+whiltelist->whitelist
+whiltelisted->whitelisted
+whiltelisting->whitelisting
+whiltelists->whitelists
whilw->while
whioch->which
whiped->wiped
diff --git a/codespell_lib/data/dictionary_rare.txt b/codespell_lib/data/dictionary_rare.txt
index 8a134b9..cd425c0 100644
--- a/codespell_lib/data/dictionary_rare.txt
+++ b/codespell_lib/data/dictionary_rare.txt
@@ -6,7 +6,6 @@
automatizes->automates
backword->backward
backwords->backwards
-blacklist->blocklist
bloc->block
blocs->blocks
bodgy->body
@@ -135,7 +134,6 @@
whats->what's
whet->when, what, wet,
whiling->while
-whitelist->allowlist
wight->weight, white, right, write,
wights->weights, whites, rights, writes,
wit->with
diff --git a/codespell_lib/data/dictionary_usage.txt b/codespell_lib/data/dictionary_usage.txt
new file mode 100644
index 0000000..fb114f0
--- /dev/null
+++ b/codespell_lib/data/dictionary_usage.txt
@@ -0,0 +1,8 @@
+blacklist->blocklist
+blacklists->blocklists
+master->primary, leader, active, writer, coordinator, parent,
+masters->primaries, leaders, actives, writers, coordinators, parents,
+slave->secondary, follower, standby, replica, reader, worker, helper,
+slaves->secondaries, followers, standbys, replicas, readers, workers, helpers,
+whitelist->allowlist
+whitelists->allowlists
diff --git a/codespell_lib/tests/test_dictionary.py b/codespell_lib/tests/test_dictionary.py
index 2349874..d840ea7 100644
--- a/codespell_lib/tests/test_dictionary.py
+++ b/codespell_lib/tests/test_dictionary.py
@@ -175,6 +175,8 @@
allowed_dups = {
('dictionary.txt', 'dictionary_en-GB_to_en-US.txt'),
('dictionary.txt', 'dictionary_rare.txt'),
+ ('dictionary.txt', 'dictionary_usage.txt'),
+ ('dictionary_rare.txt', 'dictionary_usage.txt'),
}