diff --git a/docs/archive/slides/index.html b/docs/archive/slides/index.html
index 6954d1b24..7e3f058b2 100644
--- a/docs/archive/slides/index.html
+++ b/docs/archive/slides/index.html
@@ -4,7 +4,7 @@
-
+
@@ -443,7 +443,6 @@
The second part defined ways to store these values in memory.
The simplest of these is UTF-32 ,
which stores every character as a 32-bit number.
@@ -838,7 +838,7 @@
@@ -1237,7 +1237,7 @@ Roundoff
Calculate the absolute and relative differences between corresponding values
(which should be identical).
Repeat the exercise using the Fraction
class
- from the [fractions][py_fractions] module.
+ from the fractions module.
diff --git a/docs/binary/slides/index.html b/docs/binary/slides/index.html
index 4bf547119..5681aa2ac 100644
--- a/docs/binary/slides/index.html
+++ b/docs/binary/slides/index.html
@@ -4,7 +4,7 @@
-
+
@@ -499,7 +499,6 @@ Binary Data
[lorgat_tutorial]: https://wasimlorgat.com/posts/editor.html
[lorgat_wasim]: https://wasimlorgat.com/
[marthas_rules]: https://journals.sagepub.com/doi/10.1177/088610998600100206
-[mkdocs]: https://www.mkdocs.org/
[nison_mael]: https://arcanis.github.io/
[nystrom_bob]: http://journal.stuffwithstuff.com/
[package_manager_tutorial]: https://classic.yarnpkg.com/blog/2017/07/11/lets-dev-a-package-manager/
@@ -514,6 +513,7 @@ Binary Data
[py_ast]: https://docs.python.org/3/library/ast.html
[py_chainmap]: https://docs.python.org/3/library/collections.html#collections.ChainMap
[py_cprofile]: https://docs.python.org/3/library/profile.html
+[py_fractions]: https://docs.python.org/3/library/fractions.html
[py_glob]: https://docs.python.org/3/library/glob.html
[py_hashlib]: https://docs.python.org/3/library/hashlib.html
[py_inspect]: https://docs.python.org/3/library/inspect.html
@@ -521,15 +521,16 @@ Binary Data
[py_itertools]: https://docs.python.org/3/library/itertools.html
[py_json]: https://docs.python.org/3/library/json.html
[py_jsonschema]: https://python-jsonschema.readthedocs.io/
-[py_metaclass]: https://docs.python.org/3/reference/datamodel.html#metaclasses
[py_mimetypes]: https://docs.python.org/3/library/mimetypes.html
[py_pickle]: https://docs.python.org/3/library/pickle.html
[py_property]: https://docs.python.org/3/library/functions.html#property
[py_semver]: https://pypi.org/project/semantic-version/
+[py_struct]: https://docs.python.org/3/library/struct.html
[py_textwrap]: https://docs.python.org/3/library/textwrap.html
[py_urlparse]: https://docs.python.org/3/library/urllib.parse.html
[pyfakefs]: https://pytest-pyfakefs.readthedocs.io/
[pytest]: https://docs.pytest.org/
+[pytest_approx]: https://docs.pytest.org/en/4.6.x/reference.html#pytest-approx
[python]: https://www.python.org/
[reim_michael]: https://elderlinux.org/
[requests]: https://requests.readthedocs.io/
@@ -537,13 +538,15 @@ Binary Data
[selenium]: https://www.selenium.dev/
[semver_spec]: https://semver.org/
[sinel_joseph]: https://en.wikipedia.org/wiki/Joseph_Claude_Sinel
-[sphinx]: https://www.sphinx-doc.org/
+[snakemake]: https://snakemake.readthedocs.io/
[sqlite]: https://sqlite.org/
[stack_connor]: https://connorstack.com/
[svg_screenshot]: https://chrome.google.com/webstore/detail/svg-screenshot/nfakpcpmhhilkdpphcjgnokknpbpdllg
[t3_personas]: https://teachtogether.tech/en/index.html#s:process-personas
+[textualize_fraction]: https://www.textualize.io/blog/posts/7-things-about-terminals
[udhr]: https://www.un.org/en/universal-declaration-human-rights/
[ungc]: https://www.unglobalcompact.org/what-is-gc/mission/principles
+[unicode]: https://www.unicode.org/
[unix_glob]: https://en.wikipedia.org/wiki/Glob_(programming)
[unix_packaging]: https://eerielinux.wordpress.com/2017/08/15/the-history-of-nix-package-management/
[webaim_wave]: https://wave.webaim.org/
diff --git a/docs/build/index.html b/docs/build/index.html
index e3048cdef..c6ea6ac88 100644
--- a/docs/build/index.html
+++ b/docs/build/index.html
@@ -4,7 +4,7 @@
-
+
@@ -358,7 +358,7 @@ Chapter 19: A Build Manager
to keep track of which files depend on which
and what actions to take to create or update files.
The first tool of this kind was Make ,
-but many others now exist (such as [Snakemake][snakemake]).
+but many others now exist (such as Snakemake ).
If a target is stale
with respect to any of its dependencies ,
the builder manager runs a recipe to refresh it.
diff --git a/docs/build/slides/index.html b/docs/build/slides/index.html
index 224d54d44..dfeee403f 100644
--- a/docs/build/slides/index.html
+++ b/docs/build/slides/index.html
@@ -4,7 +4,7 @@
-
+
@@ -455,7 +455,6 @@ A Build Manager
[lorgat_tutorial]: https://wasimlorgat.com/posts/editor.html
[lorgat_wasim]: https://wasimlorgat.com/
[marthas_rules]: https://journals.sagepub.com/doi/10.1177/088610998600100206
-[mkdocs]: https://www.mkdocs.org/
[nison_mael]: https://arcanis.github.io/
[nystrom_bob]: http://journal.stuffwithstuff.com/
[package_manager_tutorial]: https://classic.yarnpkg.com/blog/2017/07/11/lets-dev-a-package-manager/
@@ -470,6 +469,7 @@ A Build Manager
[py_ast]: https://docs.python.org/3/library/ast.html
[py_chainmap]: https://docs.python.org/3/library/collections.html#collections.ChainMap
[py_cprofile]: https://docs.python.org/3/library/profile.html
+[py_fractions]: https://docs.python.org/3/library/fractions.html
[py_glob]: https://docs.python.org/3/library/glob.html
[py_hashlib]: https://docs.python.org/3/library/hashlib.html
[py_inspect]: https://docs.python.org/3/library/inspect.html
@@ -477,15 +477,16 @@ A Build Manager
[py_itertools]: https://docs.python.org/3/library/itertools.html
[py_json]: https://docs.python.org/3/library/json.html
[py_jsonschema]: https://python-jsonschema.readthedocs.io/
-[py_metaclass]: https://docs.python.org/3/reference/datamodel.html#metaclasses
[py_mimetypes]: https://docs.python.org/3/library/mimetypes.html
[py_pickle]: https://docs.python.org/3/library/pickle.html
[py_property]: https://docs.python.org/3/library/functions.html#property
[py_semver]: https://pypi.org/project/semantic-version/
+[py_struct]: https://docs.python.org/3/library/struct.html
[py_textwrap]: https://docs.python.org/3/library/textwrap.html
[py_urlparse]: https://docs.python.org/3/library/urllib.parse.html
[pyfakefs]: https://pytest-pyfakefs.readthedocs.io/
[pytest]: https://docs.pytest.org/
+[pytest_approx]: https://docs.pytest.org/en/4.6.x/reference.html#pytest-approx
[python]: https://www.python.org/
[reim_michael]: https://elderlinux.org/
[requests]: https://requests.readthedocs.io/
@@ -493,13 +494,15 @@ A Build Manager
[selenium]: https://www.selenium.dev/
[semver_spec]: https://semver.org/
[sinel_joseph]: https://en.wikipedia.org/wiki/Joseph_Claude_Sinel
-[sphinx]: https://www.sphinx-doc.org/
+[snakemake]: https://snakemake.readthedocs.io/
[sqlite]: https://sqlite.org/
[stack_connor]: https://connorstack.com/
[svg_screenshot]: https://chrome.google.com/webstore/detail/svg-screenshot/nfakpcpmhhilkdpphcjgnokknpbpdllg
[t3_personas]: https://teachtogether.tech/en/index.html#s:process-personas
+[textualize_fraction]: https://www.textualize.io/blog/posts/7-things-about-terminals
[udhr]: https://www.un.org/en/universal-declaration-human-rights/
[ungc]: https://www.unglobalcompact.org/what-is-gc/mission/principles
+[unicode]: https://www.unicode.org/
[unix_glob]: https://en.wikipedia.org/wiki/Glob_(programming)
[unix_packaging]: https://eerielinux.wordpress.com/2017/08/15/the-history-of-nix-package-management/
[webaim_wave]: https://wave.webaim.org/
diff --git a/docs/check/slides/index.html b/docs/check/slides/index.html
index c1a0cca4e..efeca62ed 100644
--- a/docs/check/slides/index.html
+++ b/docs/check/slides/index.html
@@ -4,7 +4,7 @@
-
+
@@ -490,7 +490,6 @@ Main Title
[lorgat_tutorial]: https://wasimlorgat.com/posts/editor.html
[lorgat_wasim]: https://wasimlorgat.com/
[marthas_rules]: https://journals.sagepub.com/doi/10.1177/088610998600100206
-[mkdocs]: https://www.mkdocs.org/
[nison_mael]: https://arcanis.github.io/
[nystrom_bob]: http://journal.stuffwithstuff.com/
[package_manager_tutorial]: https://classic.yarnpkg.com/blog/2017/07/11/lets-dev-a-package-manager/
@@ -505,6 +504,7 @@ Main Title
[py_ast]: https://docs.python.org/3/library/ast.html
[py_chainmap]: https://docs.python.org/3/library/collections.html#collections.ChainMap
[py_cprofile]: https://docs.python.org/3/library/profile.html
+[py_fractions]: https://docs.python.org/3/library/fractions.html
[py_glob]: https://docs.python.org/3/library/glob.html
[py_hashlib]: https://docs.python.org/3/library/hashlib.html
[py_inspect]: https://docs.python.org/3/library/inspect.html
@@ -512,15 +512,16 @@ Main Title
[py_itertools]: https://docs.python.org/3/library/itertools.html
[py_json]: https://docs.python.org/3/library/json.html
[py_jsonschema]: https://python-jsonschema.readthedocs.io/
-[py_metaclass]: https://docs.python.org/3/reference/datamodel.html#metaclasses
[py_mimetypes]: https://docs.python.org/3/library/mimetypes.html
[py_pickle]: https://docs.python.org/3/library/pickle.html
[py_property]: https://docs.python.org/3/library/functions.html#property
[py_semver]: https://pypi.org/project/semantic-version/
+[py_struct]: https://docs.python.org/3/library/struct.html
[py_textwrap]: https://docs.python.org/3/library/textwrap.html
[py_urlparse]: https://docs.python.org/3/library/urllib.parse.html
[pyfakefs]: https://pytest-pyfakefs.readthedocs.io/
[pytest]: https://docs.pytest.org/
+[pytest_approx]: https://docs.pytest.org/en/4.6.x/reference.html#pytest-approx
[python]: https://www.python.org/
[reim_michael]: https://elderlinux.org/
[requests]: https://requests.readthedocs.io/
@@ -528,13 +529,15 @@ Main Title
[selenium]: https://www.selenium.dev/
[semver_spec]: https://semver.org/
[sinel_joseph]: https://en.wikipedia.org/wiki/Joseph_Claude_Sinel
-[sphinx]: https://www.sphinx-doc.org/
+[snakemake]: https://snakemake.readthedocs.io/
[sqlite]: https://sqlite.org/
[stack_connor]: https://connorstack.com/
[svg_screenshot]: https://chrome.google.com/webstore/detail/svg-screenshot/nfakpcpmhhilkdpphcjgnokknpbpdllg
[t3_personas]: https://teachtogether.tech/en/index.html#s:process-personas
+[textualize_fraction]: https://www.textualize.io/blog/posts/7-things-about-terminals
[udhr]: https://www.un.org/en/universal-declaration-human-rights/
[ungc]: https://www.unglobalcompact.org/what-is-gc/mission/principles
+[unicode]: https://www.unicode.org/
[unix_glob]: https://en.wikipedia.org/wiki/Glob_(programming)
[unix_packaging]: https://eerielinux.wordpress.com/2017/08/15/the-history-of-nix-package-management/
[webaim_wave]: https://wave.webaim.org/
diff --git a/docs/db/slides/index.html b/docs/db/slides/index.html
index 5f9dc7a13..a933ceb29 100644
--- a/docs/db/slides/index.html
+++ b/docs/db/slides/index.html
@@ -4,7 +4,7 @@
-
+
@@ -670,7 +670,6 @@ A Database
[lorgat_tutorial]: https://wasimlorgat.com/posts/editor.html
[lorgat_wasim]: https://wasimlorgat.com/
[marthas_rules]: https://journals.sagepub.com/doi/10.1177/088610998600100206
-[mkdocs]: https://www.mkdocs.org/
[nison_mael]: https://arcanis.github.io/
[nystrom_bob]: http://journal.stuffwithstuff.com/
[package_manager_tutorial]: https://classic.yarnpkg.com/blog/2017/07/11/lets-dev-a-package-manager/
@@ -685,6 +684,7 @@ A Database
[py_ast]: https://docs.python.org/3/library/ast.html
[py_chainmap]: https://docs.python.org/3/library/collections.html#collections.ChainMap
[py_cprofile]: https://docs.python.org/3/library/profile.html
+[py_fractions]: https://docs.python.org/3/library/fractions.html
[py_glob]: https://docs.python.org/3/library/glob.html
[py_hashlib]: https://docs.python.org/3/library/hashlib.html
[py_inspect]: https://docs.python.org/3/library/inspect.html
@@ -692,15 +692,16 @@ A Database
[py_itertools]: https://docs.python.org/3/library/itertools.html
[py_json]: https://docs.python.org/3/library/json.html
[py_jsonschema]: https://python-jsonschema.readthedocs.io/
-[py_metaclass]: https://docs.python.org/3/reference/datamodel.html#metaclasses
[py_mimetypes]: https://docs.python.org/3/library/mimetypes.html
[py_pickle]: https://docs.python.org/3/library/pickle.html
[py_property]: https://docs.python.org/3/library/functions.html#property
[py_semver]: https://pypi.org/project/semantic-version/
+[py_struct]: https://docs.python.org/3/library/struct.html
[py_textwrap]: https://docs.python.org/3/library/textwrap.html
[py_urlparse]: https://docs.python.org/3/library/urllib.parse.html
[pyfakefs]: https://pytest-pyfakefs.readthedocs.io/
[pytest]: https://docs.pytest.org/
+[pytest_approx]: https://docs.pytest.org/en/4.6.x/reference.html#pytest-approx
[python]: https://www.python.org/
[reim_michael]: https://elderlinux.org/
[requests]: https://requests.readthedocs.io/
@@ -708,13 +709,15 @@ A Database
[selenium]: https://www.selenium.dev/
[semver_spec]: https://semver.org/
[sinel_joseph]: https://en.wikipedia.org/wiki/Joseph_Claude_Sinel
-[sphinx]: https://www.sphinx-doc.org/
+[snakemake]: https://snakemake.readthedocs.io/
[sqlite]: https://sqlite.org/
[stack_connor]: https://connorstack.com/
[svg_screenshot]: https://chrome.google.com/webstore/detail/svg-screenshot/nfakpcpmhhilkdpphcjgnokknpbpdllg
[t3_personas]: https://teachtogether.tech/en/index.html#s:process-personas
+[textualize_fraction]: https://www.textualize.io/blog/posts/7-things-about-terminals
[udhr]: https://www.un.org/en/universal-declaration-human-rights/
[ungc]: https://www.unglobalcompact.org/what-is-gc/mission/principles
+[unicode]: https://www.unicode.org/
[unix_glob]: https://en.wikipedia.org/wiki/Glob_(programming)
[unix_packaging]: https://eerielinux.wordpress.com/2017/08/15/the-history-of-nix-package-management/
[webaim_wave]: https://wave.webaim.org/
diff --git a/docs/debugger/slides/index.html b/docs/debugger/slides/index.html
index 4bef4e83e..2bb64aa33 100644
--- a/docs/debugger/slides/index.html
+++ b/docs/debugger/slides/index.html
@@ -4,7 +4,7 @@
-
+
@@ -526,7 +526,6 @@ A Debugger
[lorgat_tutorial]: https://wasimlorgat.com/posts/editor.html
[lorgat_wasim]: https://wasimlorgat.com/
[marthas_rules]: https://journals.sagepub.com/doi/10.1177/088610998600100206
-[mkdocs]: https://www.mkdocs.org/
[nison_mael]: https://arcanis.github.io/
[nystrom_bob]: http://journal.stuffwithstuff.com/
[package_manager_tutorial]: https://classic.yarnpkg.com/blog/2017/07/11/lets-dev-a-package-manager/
@@ -541,6 +540,7 @@ A Debugger
[py_ast]: https://docs.python.org/3/library/ast.html
[py_chainmap]: https://docs.python.org/3/library/collections.html#collections.ChainMap
[py_cprofile]: https://docs.python.org/3/library/profile.html
+[py_fractions]: https://docs.python.org/3/library/fractions.html
[py_glob]: https://docs.python.org/3/library/glob.html
[py_hashlib]: https://docs.python.org/3/library/hashlib.html
[py_inspect]: https://docs.python.org/3/library/inspect.html
@@ -548,15 +548,16 @@ A Debugger
[py_itertools]: https://docs.python.org/3/library/itertools.html
[py_json]: https://docs.python.org/3/library/json.html
[py_jsonschema]: https://python-jsonschema.readthedocs.io/
-[py_metaclass]: https://docs.python.org/3/reference/datamodel.html#metaclasses
[py_mimetypes]: https://docs.python.org/3/library/mimetypes.html
[py_pickle]: https://docs.python.org/3/library/pickle.html
[py_property]: https://docs.python.org/3/library/functions.html#property
[py_semver]: https://pypi.org/project/semantic-version/
+[py_struct]: https://docs.python.org/3/library/struct.html
[py_textwrap]: https://docs.python.org/3/library/textwrap.html
[py_urlparse]: https://docs.python.org/3/library/urllib.parse.html
[pyfakefs]: https://pytest-pyfakefs.readthedocs.io/
[pytest]: https://docs.pytest.org/
+[pytest_approx]: https://docs.pytest.org/en/4.6.x/reference.html#pytest-approx
[python]: https://www.python.org/
[reim_michael]: https://elderlinux.org/
[requests]: https://requests.readthedocs.io/
@@ -564,13 +565,15 @@ A Debugger
[selenium]: https://www.selenium.dev/
[semver_spec]: https://semver.org/
[sinel_joseph]: https://en.wikipedia.org/wiki/Joseph_Claude_Sinel
-[sphinx]: https://www.sphinx-doc.org/
+[snakemake]: https://snakemake.readthedocs.io/
[sqlite]: https://sqlite.org/
[stack_connor]: https://connorstack.com/
[svg_screenshot]: https://chrome.google.com/webstore/detail/svg-screenshot/nfakpcpmhhilkdpphcjgnokknpbpdllg
[t3_personas]: https://teachtogether.tech/en/index.html#s:process-personas
+[textualize_fraction]: https://www.textualize.io/blog/posts/7-things-about-terminals
[udhr]: https://www.un.org/en/universal-declaration-human-rights/
[ungc]: https://www.unglobalcompact.org/what-is-gc/mission/principles
+[unicode]: https://www.unicode.org/
[unix_glob]: https://en.wikipedia.org/wiki/Glob_(programming)
[unix_packaging]: https://eerielinux.wordpress.com/2017/08/15/the-history-of-nix-package-management/
[webaim_wave]: https://wave.webaim.org/
diff --git a/docs/dup/slides/index.html b/docs/dup/slides/index.html
index 35e87f97f..2948b502f 100644
--- a/docs/dup/slides/index.html
+++ b/docs/dup/slides/index.html
@@ -4,7 +4,7 @@
-
+
@@ -494,7 +494,6 @@ Finding Duplicate Files
[lorgat_tutorial]: https://wasimlorgat.com/posts/editor.html
[lorgat_wasim]: https://wasimlorgat.com/
[marthas_rules]: https://journals.sagepub.com/doi/10.1177/088610998600100206
-[mkdocs]: https://www.mkdocs.org/
[nison_mael]: https://arcanis.github.io/
[nystrom_bob]: http://journal.stuffwithstuff.com/
[package_manager_tutorial]: https://classic.yarnpkg.com/blog/2017/07/11/lets-dev-a-package-manager/
@@ -509,6 +508,7 @@ Finding Duplicate Files
[py_ast]: https://docs.python.org/3/library/ast.html
[py_chainmap]: https://docs.python.org/3/library/collections.html#collections.ChainMap
[py_cprofile]: https://docs.python.org/3/library/profile.html
+[py_fractions]: https://docs.python.org/3/library/fractions.html
[py_glob]: https://docs.python.org/3/library/glob.html
[py_hashlib]: https://docs.python.org/3/library/hashlib.html
[py_inspect]: https://docs.python.org/3/library/inspect.html
@@ -516,15 +516,16 @@ Finding Duplicate Files
[py_itertools]: https://docs.python.org/3/library/itertools.html
[py_json]: https://docs.python.org/3/library/json.html
[py_jsonschema]: https://python-jsonschema.readthedocs.io/
-[py_metaclass]: https://docs.python.org/3/reference/datamodel.html#metaclasses
[py_mimetypes]: https://docs.python.org/3/library/mimetypes.html
[py_pickle]: https://docs.python.org/3/library/pickle.html
[py_property]: https://docs.python.org/3/library/functions.html#property
[py_semver]: https://pypi.org/project/semantic-version/
+[py_struct]: https://docs.python.org/3/library/struct.html
[py_textwrap]: https://docs.python.org/3/library/textwrap.html
[py_urlparse]: https://docs.python.org/3/library/urllib.parse.html
[pyfakefs]: https://pytest-pyfakefs.readthedocs.io/
[pytest]: https://docs.pytest.org/
+[pytest_approx]: https://docs.pytest.org/en/4.6.x/reference.html#pytest-approx
[python]: https://www.python.org/
[reim_michael]: https://elderlinux.org/
[requests]: https://requests.readthedocs.io/
@@ -532,13 +533,15 @@ Finding Duplicate Files
[selenium]: https://www.selenium.dev/
[semver_spec]: https://semver.org/
[sinel_joseph]: https://en.wikipedia.org/wiki/Joseph_Claude_Sinel
-[sphinx]: https://www.sphinx-doc.org/
+[snakemake]: https://snakemake.readthedocs.io/
[sqlite]: https://sqlite.org/
[stack_connor]: https://connorstack.com/
[svg_screenshot]: https://chrome.google.com/webstore/detail/svg-screenshot/nfakpcpmhhilkdpphcjgnokknpbpdllg
[t3_personas]: https://teachtogether.tech/en/index.html#s:process-personas
+[textualize_fraction]: https://www.textualize.io/blog/posts/7-things-about-terminals
[udhr]: https://www.un.org/en/universal-declaration-human-rights/
[ungc]: https://www.unglobalcompact.org/what-is-gc/mission/principles
+[unicode]: https://www.unicode.org/
[unix_glob]: https://en.wikipedia.org/wiki/Glob_(programming)
[unix_packaging]: https://eerielinux.wordpress.com/2017/08/15/the-history-of-nix-package-management/
[webaim_wave]: https://wave.webaim.org/
diff --git a/docs/editor/slides/index.html b/docs/editor/slides/index.html
index 41c768186..6dfa60d92 100644
--- a/docs/editor/slides/index.html
+++ b/docs/editor/slides/index.html
@@ -4,7 +4,7 @@
-
+
@@ -95,7 +95,6 @@ A Text Editor
[lorgat_tutorial]: https://wasimlorgat.com/posts/editor.html
[lorgat_wasim]: https://wasimlorgat.com/
[marthas_rules]: https://journals.sagepub.com/doi/10.1177/088610998600100206
-[mkdocs]: https://www.mkdocs.org/
[nison_mael]: https://arcanis.github.io/
[nystrom_bob]: http://journal.stuffwithstuff.com/
[package_manager_tutorial]: https://classic.yarnpkg.com/blog/2017/07/11/lets-dev-a-package-manager/
@@ -110,6 +109,7 @@ A Text Editor
[py_ast]: https://docs.python.org/3/library/ast.html
[py_chainmap]: https://docs.python.org/3/library/collections.html#collections.ChainMap
[py_cprofile]: https://docs.python.org/3/library/profile.html
+[py_fractions]: https://docs.python.org/3/library/fractions.html
[py_glob]: https://docs.python.org/3/library/glob.html
[py_hashlib]: https://docs.python.org/3/library/hashlib.html
[py_inspect]: https://docs.python.org/3/library/inspect.html
@@ -117,15 +117,16 @@ A Text Editor
[py_itertools]: https://docs.python.org/3/library/itertools.html
[py_json]: https://docs.python.org/3/library/json.html
[py_jsonschema]: https://python-jsonschema.readthedocs.io/
-[py_metaclass]: https://docs.python.org/3/reference/datamodel.html#metaclasses
[py_mimetypes]: https://docs.python.org/3/library/mimetypes.html
[py_pickle]: https://docs.python.org/3/library/pickle.html
[py_property]: https://docs.python.org/3/library/functions.html#property
[py_semver]: https://pypi.org/project/semantic-version/
+[py_struct]: https://docs.python.org/3/library/struct.html
[py_textwrap]: https://docs.python.org/3/library/textwrap.html
[py_urlparse]: https://docs.python.org/3/library/urllib.parse.html
[pyfakefs]: https://pytest-pyfakefs.readthedocs.io/
[pytest]: https://docs.pytest.org/
+[pytest_approx]: https://docs.pytest.org/en/4.6.x/reference.html#pytest-approx
[python]: https://www.python.org/
[reim_michael]: https://elderlinux.org/
[requests]: https://requests.readthedocs.io/
@@ -133,13 +134,15 @@ A Text Editor
[selenium]: https://www.selenium.dev/
[semver_spec]: https://semver.org/
[sinel_joseph]: https://en.wikipedia.org/wiki/Joseph_Claude_Sinel
-[sphinx]: https://www.sphinx-doc.org/
+[snakemake]: https://snakemake.readthedocs.io/
[sqlite]: https://sqlite.org/
[stack_connor]: https://connorstack.com/
[svg_screenshot]: https://chrome.google.com/webstore/detail/svg-screenshot/nfakpcpmhhilkdpphcjgnokknpbpdllg
[t3_personas]: https://teachtogether.tech/en/index.html#s:process-personas
+[textualize_fraction]: https://www.textualize.io/blog/posts/7-things-about-terminals
[udhr]: https://www.un.org/en/universal-declaration-human-rights/
[ungc]: https://www.unglobalcompact.org/what-is-gc/mission/principles
+[unicode]: https://www.unicode.org/
[unix_glob]: https://en.wikipedia.org/wiki/Glob_(programming)
[unix_packaging]: https://eerielinux.wordpress.com/2017/08/15/the-history-of-nix-package-management/
[webaim_wave]: https://wave.webaim.org/
diff --git a/docs/finale/slides/index.html b/docs/finale/slides/index.html
index 01c735719..8e9bc06b8 100644
--- a/docs/finale/slides/index.html
+++ b/docs/finale/slides/index.html
@@ -4,7 +4,7 @@
-
+
@@ -146,7 +146,6 @@ Conclusion
[lorgat_tutorial]: https://wasimlorgat.com/posts/editor.html
[lorgat_wasim]: https://wasimlorgat.com/
[marthas_rules]: https://journals.sagepub.com/doi/10.1177/088610998600100206
-[mkdocs]: https://www.mkdocs.org/
[nison_mael]: https://arcanis.github.io/
[nystrom_bob]: http://journal.stuffwithstuff.com/
[package_manager_tutorial]: https://classic.yarnpkg.com/blog/2017/07/11/lets-dev-a-package-manager/
@@ -161,6 +160,7 @@ Conclusion
[py_ast]: https://docs.python.org/3/library/ast.html
[py_chainmap]: https://docs.python.org/3/library/collections.html#collections.ChainMap
[py_cprofile]: https://docs.python.org/3/library/profile.html
+[py_fractions]: https://docs.python.org/3/library/fractions.html
[py_glob]: https://docs.python.org/3/library/glob.html
[py_hashlib]: https://docs.python.org/3/library/hashlib.html
[py_inspect]: https://docs.python.org/3/library/inspect.html
@@ -168,15 +168,16 @@ Conclusion
[py_itertools]: https://docs.python.org/3/library/itertools.html
[py_json]: https://docs.python.org/3/library/json.html
[py_jsonschema]: https://python-jsonschema.readthedocs.io/
-[py_metaclass]: https://docs.python.org/3/reference/datamodel.html#metaclasses
[py_mimetypes]: https://docs.python.org/3/library/mimetypes.html
[py_pickle]: https://docs.python.org/3/library/pickle.html
[py_property]: https://docs.python.org/3/library/functions.html#property
[py_semver]: https://pypi.org/project/semantic-version/
+[py_struct]: https://docs.python.org/3/library/struct.html
[py_textwrap]: https://docs.python.org/3/library/textwrap.html
[py_urlparse]: https://docs.python.org/3/library/urllib.parse.html
[pyfakefs]: https://pytest-pyfakefs.readthedocs.io/
[pytest]: https://docs.pytest.org/
+[pytest_approx]: https://docs.pytest.org/en/4.6.x/reference.html#pytest-approx
[python]: https://www.python.org/
[reim_michael]: https://elderlinux.org/
[requests]: https://requests.readthedocs.io/
@@ -184,13 +185,15 @@ Conclusion
[selenium]: https://www.selenium.dev/
[semver_spec]: https://semver.org/
[sinel_joseph]: https://en.wikipedia.org/wiki/Joseph_Claude_Sinel
-[sphinx]: https://www.sphinx-doc.org/
+[snakemake]: https://snakemake.readthedocs.io/
[sqlite]: https://sqlite.org/
[stack_connor]: https://connorstack.com/
[svg_screenshot]: https://chrome.google.com/webstore/detail/svg-screenshot/nfakpcpmhhilkdpphcjgnokknpbpdllg
[t3_personas]: https://teachtogether.tech/en/index.html#s:process-personas
+[textualize_fraction]: https://www.textualize.io/blog/posts/7-things-about-terminals
[udhr]: https://www.un.org/en/universal-declaration-human-rights/
[ungc]: https://www.unglobalcompact.org/what-is-gc/mission/principles
+[unicode]: https://www.unicode.org/
[unix_glob]: https://en.wikipedia.org/wiki/Glob_(programming)
[unix_packaging]: https://eerielinux.wordpress.com/2017/08/15/the-history-of-nix-package-management/
[webaim_wave]: https://wave.webaim.org/
diff --git a/docs/ftp/slides/index.html b/docs/ftp/slides/index.html
index f42e8a67b..d2a8dbead 100644
--- a/docs/ftp/slides/index.html
+++ b/docs/ftp/slides/index.html
@@ -4,7 +4,7 @@
-
+
@@ -252,7 +252,6 @@ Transferring Files
[lorgat_tutorial]: https://wasimlorgat.com/posts/editor.html
[lorgat_wasim]: https://wasimlorgat.com/
[marthas_rules]: https://journals.sagepub.com/doi/10.1177/088610998600100206
-[mkdocs]: https://www.mkdocs.org/
[nison_mael]: https://arcanis.github.io/
[nystrom_bob]: http://journal.stuffwithstuff.com/
[package_manager_tutorial]: https://classic.yarnpkg.com/blog/2017/07/11/lets-dev-a-package-manager/
@@ -267,6 +266,7 @@ Transferring Files
[py_ast]: https://docs.python.org/3/library/ast.html
[py_chainmap]: https://docs.python.org/3/library/collections.html#collections.ChainMap
[py_cprofile]: https://docs.python.org/3/library/profile.html
+[py_fractions]: https://docs.python.org/3/library/fractions.html
[py_glob]: https://docs.python.org/3/library/glob.html
[py_hashlib]: https://docs.python.org/3/library/hashlib.html
[py_inspect]: https://docs.python.org/3/library/inspect.html
@@ -274,15 +274,16 @@ Transferring Files
[py_itertools]: https://docs.python.org/3/library/itertools.html
[py_json]: https://docs.python.org/3/library/json.html
[py_jsonschema]: https://python-jsonschema.readthedocs.io/
-[py_metaclass]: https://docs.python.org/3/reference/datamodel.html#metaclasses
[py_mimetypes]: https://docs.python.org/3/library/mimetypes.html
[py_pickle]: https://docs.python.org/3/library/pickle.html
[py_property]: https://docs.python.org/3/library/functions.html#property
[py_semver]: https://pypi.org/project/semantic-version/
+[py_struct]: https://docs.python.org/3/library/struct.html
[py_textwrap]: https://docs.python.org/3/library/textwrap.html
[py_urlparse]: https://docs.python.org/3/library/urllib.parse.html
[pyfakefs]: https://pytest-pyfakefs.readthedocs.io/
[pytest]: https://docs.pytest.org/
+[pytest_approx]: https://docs.pytest.org/en/4.6.x/reference.html#pytest-approx
[python]: https://www.python.org/
[reim_michael]: https://elderlinux.org/
[requests]: https://requests.readthedocs.io/
@@ -290,13 +291,15 @@ Transferring Files
[selenium]: https://www.selenium.dev/
[semver_spec]: https://semver.org/
[sinel_joseph]: https://en.wikipedia.org/wiki/Joseph_Claude_Sinel
-[sphinx]: https://www.sphinx-doc.org/
+[snakemake]: https://snakemake.readthedocs.io/
[sqlite]: https://sqlite.org/
[stack_connor]: https://connorstack.com/
[svg_screenshot]: https://chrome.google.com/webstore/detail/svg-screenshot/nfakpcpmhhilkdpphcjgnokknpbpdllg
[t3_personas]: https://teachtogether.tech/en/index.html#s:process-personas
+[textualize_fraction]: https://www.textualize.io/blog/posts/7-things-about-terminals
[udhr]: https://www.un.org/en/universal-declaration-human-rights/
[ungc]: https://www.unglobalcompact.org/what-is-gc/mission/principles
+[unicode]: https://www.unicode.org/
[unix_glob]: https://en.wikipedia.org/wiki/Glob_(programming)
[unix_packaging]: https://eerielinux.wordpress.com/2017/08/15/the-history-of-nix-package-management/
[webaim_wave]: https://wave.webaim.org/
diff --git a/docs/func/slides/index.html b/docs/func/slides/index.html
index f5f57133e..c0473151d 100644
--- a/docs/func/slides/index.html
+++ b/docs/func/slides/index.html
@@ -4,7 +4,7 @@
-
+
@@ -597,7 +597,6 @@ Functions and Closures
[lorgat_tutorial]: https://wasimlorgat.com/posts/editor.html
[lorgat_wasim]: https://wasimlorgat.com/
[marthas_rules]: https://journals.sagepub.com/doi/10.1177/088610998600100206
-[mkdocs]: https://www.mkdocs.org/
[nison_mael]: https://arcanis.github.io/
[nystrom_bob]: http://journal.stuffwithstuff.com/
[package_manager_tutorial]: https://classic.yarnpkg.com/blog/2017/07/11/lets-dev-a-package-manager/
@@ -612,6 +611,7 @@ Functions and Closures
[py_ast]: https://docs.python.org/3/library/ast.html
[py_chainmap]: https://docs.python.org/3/library/collections.html#collections.ChainMap
[py_cprofile]: https://docs.python.org/3/library/profile.html
+[py_fractions]: https://docs.python.org/3/library/fractions.html
[py_glob]: https://docs.python.org/3/library/glob.html
[py_hashlib]: https://docs.python.org/3/library/hashlib.html
[py_inspect]: https://docs.python.org/3/library/inspect.html
@@ -619,15 +619,16 @@ Functions and Closures
[py_itertools]: https://docs.python.org/3/library/itertools.html
[py_json]: https://docs.python.org/3/library/json.html
[py_jsonschema]: https://python-jsonschema.readthedocs.io/
-[py_metaclass]: https://docs.python.org/3/reference/datamodel.html#metaclasses
[py_mimetypes]: https://docs.python.org/3/library/mimetypes.html
[py_pickle]: https://docs.python.org/3/library/pickle.html
[py_property]: https://docs.python.org/3/library/functions.html#property
[py_semver]: https://pypi.org/project/semantic-version/
+[py_struct]: https://docs.python.org/3/library/struct.html
[py_textwrap]: https://docs.python.org/3/library/textwrap.html
[py_urlparse]: https://docs.python.org/3/library/urllib.parse.html
[pyfakefs]: https://pytest-pyfakefs.readthedocs.io/
[pytest]: https://docs.pytest.org/
+[pytest_approx]: https://docs.pytest.org/en/4.6.x/reference.html#pytest-approx
[python]: https://www.python.org/
[reim_michael]: https://elderlinux.org/
[requests]: https://requests.readthedocs.io/
@@ -635,13 +636,15 @@ Functions and Closures
[selenium]: https://www.selenium.dev/
[semver_spec]: https://semver.org/
[sinel_joseph]: https://en.wikipedia.org/wiki/Joseph_Claude_Sinel
-[sphinx]: https://www.sphinx-doc.org/
+[snakemake]: https://snakemake.readthedocs.io/
[sqlite]: https://sqlite.org/
[stack_connor]: https://connorstack.com/
[svg_screenshot]: https://chrome.google.com/webstore/detail/svg-screenshot/nfakpcpmhhilkdpphcjgnokknpbpdllg
[t3_personas]: https://teachtogether.tech/en/index.html#s:process-personas
+[textualize_fraction]: https://www.textualize.io/blog/posts/7-things-about-terminals
[udhr]: https://www.un.org/en/universal-declaration-human-rights/
[ungc]: https://www.unglobalcompact.org/what-is-gc/mission/principles
+[unicode]: https://www.unicode.org/
[unix_glob]: https://en.wikipedia.org/wiki/Glob_(programming)
[unix_packaging]: https://eerielinux.wordpress.com/2017/08/15/the-history-of-nix-package-management/
[webaim_wave]: https://wave.webaim.org/
diff --git a/docs/glob/slides/index.html b/docs/glob/slides/index.html
index 44f806f92..0b5727981 100644
--- a/docs/glob/slides/index.html
+++ b/docs/glob/slides/index.html
@@ -4,7 +4,7 @@
-
+
@@ -525,7 +525,6 @@ Matching Patterns
[lorgat_tutorial]: https://wasimlorgat.com/posts/editor.html
[lorgat_wasim]: https://wasimlorgat.com/
[marthas_rules]: https://journals.sagepub.com/doi/10.1177/088610998600100206
-[mkdocs]: https://www.mkdocs.org/
[nison_mael]: https://arcanis.github.io/
[nystrom_bob]: http://journal.stuffwithstuff.com/
[package_manager_tutorial]: https://classic.yarnpkg.com/blog/2017/07/11/lets-dev-a-package-manager/
@@ -540,6 +539,7 @@ Matching Patterns
[py_ast]: https://docs.python.org/3/library/ast.html
[py_chainmap]: https://docs.python.org/3/library/collections.html#collections.ChainMap
[py_cprofile]: https://docs.python.org/3/library/profile.html
+[py_fractions]: https://docs.python.org/3/library/fractions.html
[py_glob]: https://docs.python.org/3/library/glob.html
[py_hashlib]: https://docs.python.org/3/library/hashlib.html
[py_inspect]: https://docs.python.org/3/library/inspect.html
@@ -547,15 +547,16 @@ Matching Patterns
[py_itertools]: https://docs.python.org/3/library/itertools.html
[py_json]: https://docs.python.org/3/library/json.html
[py_jsonschema]: https://python-jsonschema.readthedocs.io/
-[py_metaclass]: https://docs.python.org/3/reference/datamodel.html#metaclasses
[py_mimetypes]: https://docs.python.org/3/library/mimetypes.html
[py_pickle]: https://docs.python.org/3/library/pickle.html
[py_property]: https://docs.python.org/3/library/functions.html#property
[py_semver]: https://pypi.org/project/semantic-version/
+[py_struct]: https://docs.python.org/3/library/struct.html
[py_textwrap]: https://docs.python.org/3/library/textwrap.html
[py_urlparse]: https://docs.python.org/3/library/urllib.parse.html
[pyfakefs]: https://pytest-pyfakefs.readthedocs.io/
[pytest]: https://docs.pytest.org/
+[pytest_approx]: https://docs.pytest.org/en/4.6.x/reference.html#pytest-approx
[python]: https://www.python.org/
[reim_michael]: https://elderlinux.org/
[requests]: https://requests.readthedocs.io/
@@ -563,13 +564,15 @@ Matching Patterns
[selenium]: https://www.selenium.dev/
[semver_spec]: https://semver.org/
[sinel_joseph]: https://en.wikipedia.org/wiki/Joseph_Claude_Sinel
-[sphinx]: https://www.sphinx-doc.org/
+[snakemake]: https://snakemake.readthedocs.io/
[sqlite]: https://sqlite.org/
[stack_connor]: https://connorstack.com/
[svg_screenshot]: https://chrome.google.com/webstore/detail/svg-screenshot/nfakpcpmhhilkdpphcjgnokknpbpdllg
[t3_personas]: https://teachtogether.tech/en/index.html#s:process-personas
+[textualize_fraction]: https://www.textualize.io/blog/posts/7-things-about-terminals
[udhr]: https://www.un.org/en/universal-declaration-human-rights/
[ungc]: https://www.unglobalcompact.org/what-is-gc/mission/principles
+[unicode]: https://www.unicode.org/
[unix_glob]: https://en.wikipedia.org/wiki/Glob_(programming)
[unix_packaging]: https://eerielinux.wordpress.com/2017/08/15/the-history-of-nix-package-management/
[webaim_wave]: https://wave.webaim.org/
diff --git a/docs/http/slides/index.html b/docs/http/slides/index.html
index 9225adcd5..28be81517 100644
--- a/docs/http/slides/index.html
+++ b/docs/http/slides/index.html
@@ -4,7 +4,7 @@
-
+
@@ -257,7 +257,6 @@ Hello, World!
[lorgat_tutorial]: https://wasimlorgat.com/posts/editor.html
[lorgat_wasim]: https://wasimlorgat.com/
[marthas_rules]: https://journals.sagepub.com/doi/10.1177/088610998600100206
-[mkdocs]: https://www.mkdocs.org/
[nison_mael]: https://arcanis.github.io/
[nystrom_bob]: http://journal.stuffwithstuff.com/
[package_manager_tutorial]: https://classic.yarnpkg.com/blog/2017/07/11/lets-dev-a-package-manager/
@@ -272,6 +271,7 @@ Hello, World!
[py_ast]: https://docs.python.org/3/library/ast.html
[py_chainmap]: https://docs.python.org/3/library/collections.html#collections.ChainMap
[py_cprofile]: https://docs.python.org/3/library/profile.html
+[py_fractions]: https://docs.python.org/3/library/fractions.html
[py_glob]: https://docs.python.org/3/library/glob.html
[py_hashlib]: https://docs.python.org/3/library/hashlib.html
[py_inspect]: https://docs.python.org/3/library/inspect.html
@@ -279,15 +279,16 @@ Hello, World!
[py_itertools]: https://docs.python.org/3/library/itertools.html
[py_json]: https://docs.python.org/3/library/json.html
[py_jsonschema]: https://python-jsonschema.readthedocs.io/
-[py_metaclass]: https://docs.python.org/3/reference/datamodel.html#metaclasses
[py_mimetypes]: https://docs.python.org/3/library/mimetypes.html
[py_pickle]: https://docs.python.org/3/library/pickle.html
[py_property]: https://docs.python.org/3/library/functions.html#property
[py_semver]: https://pypi.org/project/semantic-version/
+[py_struct]: https://docs.python.org/3/library/struct.html
[py_textwrap]: https://docs.python.org/3/library/textwrap.html
[py_urlparse]: https://docs.python.org/3/library/urllib.parse.html
[pyfakefs]: https://pytest-pyfakefs.readthedocs.io/
[pytest]: https://docs.pytest.org/
+[pytest_approx]: https://docs.pytest.org/en/4.6.x/reference.html#pytest-approx
[python]: https://www.python.org/
[reim_michael]: https://elderlinux.org/
[requests]: https://requests.readthedocs.io/
@@ -295,13 +296,15 @@ Hello, World!
[selenium]: https://www.selenium.dev/
[semver_spec]: https://semver.org/
[sinel_joseph]: https://en.wikipedia.org/wiki/Joseph_Claude_Sinel
-[sphinx]: https://www.sphinx-doc.org/
+[snakemake]: https://snakemake.readthedocs.io/
[sqlite]: https://sqlite.org/
[stack_connor]: https://connorstack.com/
[svg_screenshot]: https://chrome.google.com/webstore/detail/svg-screenshot/nfakpcpmhhilkdpphcjgnokknpbpdllg
[t3_personas]: https://teachtogether.tech/en/index.html#s:process-personas
+[textualize_fraction]: https://www.textualize.io/blog/posts/7-things-about-terminals
[udhr]: https://www.un.org/en/universal-declaration-human-rights/
[ungc]: https://www.unglobalcompact.org/what-is-gc/mission/principles
+[unicode]: https://www.unicode.org/
[unix_glob]: https://en.wikipedia.org/wiki/Glob_(programming)
[unix_packaging]: https://eerielinux.wordpress.com/2017/08/15/the-history-of-nix-package-management/
[webaim_wave]: https://wave.webaim.org/
diff --git a/docs/interp/slides/index.html b/docs/interp/slides/index.html
index 98adac23d..366956e65 100644
--- a/docs/interp/slides/index.html
+++ b/docs/interp/slides/index.html
@@ -4,7 +4,7 @@
-
+
@@ -388,7 +388,6 @@ An Interpreter
[lorgat_tutorial]: https://wasimlorgat.com/posts/editor.html
[lorgat_wasim]: https://wasimlorgat.com/
[marthas_rules]: https://journals.sagepub.com/doi/10.1177/088610998600100206
-[mkdocs]: https://www.mkdocs.org/
[nison_mael]: https://arcanis.github.io/
[nystrom_bob]: http://journal.stuffwithstuff.com/
[package_manager_tutorial]: https://classic.yarnpkg.com/blog/2017/07/11/lets-dev-a-package-manager/
@@ -403,6 +402,7 @@ An Interpreter
[py_ast]: https://docs.python.org/3/library/ast.html
[py_chainmap]: https://docs.python.org/3/library/collections.html#collections.ChainMap
[py_cprofile]: https://docs.python.org/3/library/profile.html
+[py_fractions]: https://docs.python.org/3/library/fractions.html
[py_glob]: https://docs.python.org/3/library/glob.html
[py_hashlib]: https://docs.python.org/3/library/hashlib.html
[py_inspect]: https://docs.python.org/3/library/inspect.html
@@ -410,15 +410,16 @@ An Interpreter
[py_itertools]: https://docs.python.org/3/library/itertools.html
[py_json]: https://docs.python.org/3/library/json.html
[py_jsonschema]: https://python-jsonschema.readthedocs.io/
-[py_metaclass]: https://docs.python.org/3/reference/datamodel.html#metaclasses
[py_mimetypes]: https://docs.python.org/3/library/mimetypes.html
[py_pickle]: https://docs.python.org/3/library/pickle.html
[py_property]: https://docs.python.org/3/library/functions.html#property
[py_semver]: https://pypi.org/project/semantic-version/
+[py_struct]: https://docs.python.org/3/library/struct.html
[py_textwrap]: https://docs.python.org/3/library/textwrap.html
[py_urlparse]: https://docs.python.org/3/library/urllib.parse.html
[pyfakefs]: https://pytest-pyfakefs.readthedocs.io/
[pytest]: https://docs.pytest.org/
+[pytest_approx]: https://docs.pytest.org/en/4.6.x/reference.html#pytest-approx
[python]: https://www.python.org/
[reim_michael]: https://elderlinux.org/
[requests]: https://requests.readthedocs.io/
@@ -426,13 +427,15 @@ An Interpreter
[selenium]: https://www.selenium.dev/
[semver_spec]: https://semver.org/
[sinel_joseph]: https://en.wikipedia.org/wiki/Joseph_Claude_Sinel
-[sphinx]: https://www.sphinx-doc.org/
+[snakemake]: https://snakemake.readthedocs.io/
[sqlite]: https://sqlite.org/
[stack_connor]: https://connorstack.com/
[svg_screenshot]: https://chrome.google.com/webstore/detail/svg-screenshot/nfakpcpmhhilkdpphcjgnokknpbpdllg
[t3_personas]: https://teachtogether.tech/en/index.html#s:process-personas
+[textualize_fraction]: https://www.textualize.io/blog/posts/7-things-about-terminals
[udhr]: https://www.un.org/en/universal-declaration-human-rights/
[ungc]: https://www.unglobalcompact.org/what-is-gc/mission/principles
+[unicode]: https://www.unicode.org/
[unix_glob]: https://en.wikipedia.org/wiki/Glob_(programming)
[unix_packaging]: https://eerielinux.wordpress.com/2017/08/15/the-history-of-nix-package-management/
[webaim_wave]: https://wave.webaim.org/
diff --git a/docs/intro/slides/index.html b/docs/intro/slides/index.html
index 9113053f7..a324fbe62 100644
--- a/docs/intro/slides/index.html
+++ b/docs/intro/slides/index.html
@@ -4,7 +4,7 @@
-
+
@@ -169,7 +169,7 @@ Introduction
- This one's for Mike and both Jons:
+ This one's for Mike and Jon:
I'm glad you always found time to chat.
@@ -237,7 +237,6 @@
Introduction
[lorgat_tutorial]: https://wasimlorgat.com/posts/editor.html
[lorgat_wasim]: https://wasimlorgat.com/
[marthas_rules]: https://journals.sagepub.com/doi/10.1177/088610998600100206
-[mkdocs]: https://www.mkdocs.org/
[nison_mael]: https://arcanis.github.io/
[nystrom_bob]: http://journal.stuffwithstuff.com/
[package_manager_tutorial]: https://classic.yarnpkg.com/blog/2017/07/11/lets-dev-a-package-manager/
@@ -252,6 +251,7 @@ Introduction
[py_ast]: https://docs.python.org/3/library/ast.html
[py_chainmap]: https://docs.python.org/3/library/collections.html#collections.ChainMap
[py_cprofile]: https://docs.python.org/3/library/profile.html
+[py_fractions]: https://docs.python.org/3/library/fractions.html
[py_glob]: https://docs.python.org/3/library/glob.html
[py_hashlib]: https://docs.python.org/3/library/hashlib.html
[py_inspect]: https://docs.python.org/3/library/inspect.html
@@ -259,15 +259,16 @@ Introduction
[py_itertools]: https://docs.python.org/3/library/itertools.html
[py_json]: https://docs.python.org/3/library/json.html
[py_jsonschema]: https://python-jsonschema.readthedocs.io/
-[py_metaclass]: https://docs.python.org/3/reference/datamodel.html#metaclasses
[py_mimetypes]: https://docs.python.org/3/library/mimetypes.html
[py_pickle]: https://docs.python.org/3/library/pickle.html
[py_property]: https://docs.python.org/3/library/functions.html#property
[py_semver]: https://pypi.org/project/semantic-version/
+[py_struct]: https://docs.python.org/3/library/struct.html
[py_textwrap]: https://docs.python.org/3/library/textwrap.html
[py_urlparse]: https://docs.python.org/3/library/urllib.parse.html
[pyfakefs]: https://pytest-pyfakefs.readthedocs.io/
[pytest]: https://docs.pytest.org/
+[pytest_approx]: https://docs.pytest.org/en/4.6.x/reference.html#pytest-approx
[python]: https://www.python.org/
[reim_michael]: https://elderlinux.org/
[requests]: https://requests.readthedocs.io/
@@ -275,13 +276,15 @@ Introduction
[selenium]: https://www.selenium.dev/
[semver_spec]: https://semver.org/
[sinel_joseph]: https://en.wikipedia.org/wiki/Joseph_Claude_Sinel
-[sphinx]: https://www.sphinx-doc.org/
+[snakemake]: https://snakemake.readthedocs.io/
[sqlite]: https://sqlite.org/
[stack_connor]: https://connorstack.com/
[svg_screenshot]: https://chrome.google.com/webstore/detail/svg-screenshot/nfakpcpmhhilkdpphcjgnokknpbpdllg
[t3_personas]: https://teachtogether.tech/en/index.html#s:process-personas
+[textualize_fraction]: https://www.textualize.io/blog/posts/7-things-about-terminals
[udhr]: https://www.un.org/en/universal-declaration-human-rights/
[ungc]: https://www.unglobalcompact.org/what-is-gc/mission/principles
+[unicode]: https://www.unicode.org/
[unix_glob]: https://en.wikipedia.org/wiki/Glob_(programming)
[unix_packaging]: https://eerielinux.wordpress.com/2017/08/15/the-history-of-nix-package-management/
[webaim_wave]: https://wave.webaim.org/
diff --git a/docs/layout/slides/index.html b/docs/layout/slides/index.html
index 4804e736b..ccfda12a8 100644
--- a/docs/layout/slides/index.html
+++ b/docs/layout/slides/index.html
@@ -4,7 +4,7 @@
-
+
@@ -440,7 +440,6 @@ Page Layout
[lorgat_tutorial]: https://wasimlorgat.com/posts/editor.html
[lorgat_wasim]: https://wasimlorgat.com/
[marthas_rules]: https://journals.sagepub.com/doi/10.1177/088610998600100206
-[mkdocs]: https://www.mkdocs.org/
[nison_mael]: https://arcanis.github.io/
[nystrom_bob]: http://journal.stuffwithstuff.com/
[package_manager_tutorial]: https://classic.yarnpkg.com/blog/2017/07/11/lets-dev-a-package-manager/
@@ -455,6 +454,7 @@ Page Layout
[py_ast]: https://docs.python.org/3/library/ast.html
[py_chainmap]: https://docs.python.org/3/library/collections.html#collections.ChainMap
[py_cprofile]: https://docs.python.org/3/library/profile.html
+[py_fractions]: https://docs.python.org/3/library/fractions.html
[py_glob]: https://docs.python.org/3/library/glob.html
[py_hashlib]: https://docs.python.org/3/library/hashlib.html
[py_inspect]: https://docs.python.org/3/library/inspect.html
@@ -462,15 +462,16 @@ Page Layout
[py_itertools]: https://docs.python.org/3/library/itertools.html
[py_json]: https://docs.python.org/3/library/json.html
[py_jsonschema]: https://python-jsonschema.readthedocs.io/
-[py_metaclass]: https://docs.python.org/3/reference/datamodel.html#metaclasses
[py_mimetypes]: https://docs.python.org/3/library/mimetypes.html
[py_pickle]: https://docs.python.org/3/library/pickle.html
[py_property]: https://docs.python.org/3/library/functions.html#property
[py_semver]: https://pypi.org/project/semantic-version/
+[py_struct]: https://docs.python.org/3/library/struct.html
[py_textwrap]: https://docs.python.org/3/library/textwrap.html
[py_urlparse]: https://docs.python.org/3/library/urllib.parse.html
[pyfakefs]: https://pytest-pyfakefs.readthedocs.io/
[pytest]: https://docs.pytest.org/
+[pytest_approx]: https://docs.pytest.org/en/4.6.x/reference.html#pytest-approx
[python]: https://www.python.org/
[reim_michael]: https://elderlinux.org/
[requests]: https://requests.readthedocs.io/
@@ -478,13 +479,15 @@ Page Layout
[selenium]: https://www.selenium.dev/
[semver_spec]: https://semver.org/
[sinel_joseph]: https://en.wikipedia.org/wiki/Joseph_Claude_Sinel
-[sphinx]: https://www.sphinx-doc.org/
+[snakemake]: https://snakemake.readthedocs.io/
[sqlite]: https://sqlite.org/
[stack_connor]: https://connorstack.com/
[svg_screenshot]: https://chrome.google.com/webstore/detail/svg-screenshot/nfakpcpmhhilkdpphcjgnokknpbpdllg
[t3_personas]: https://teachtogether.tech/en/index.html#s:process-personas
+[textualize_fraction]: https://www.textualize.io/blog/posts/7-things-about-terminals
[udhr]: https://www.un.org/en/universal-declaration-human-rights/
[ungc]: https://www.unglobalcompact.org/what-is-gc/mission/principles
+[unicode]: https://www.unicode.org/
[unix_glob]: https://en.wikipedia.org/wiki/Glob_(programming)
[unix_packaging]: https://eerielinux.wordpress.com/2017/08/15/the-history-of-nix-package-management/
[webaim_wave]: https://wave.webaim.org/
diff --git a/docs/lint/slides/index.html b/docs/lint/slides/index.html
index 2764cda11..584091a6c 100644
--- a/docs/lint/slides/index.html
+++ b/docs/lint/slides/index.html
@@ -4,7 +4,7 @@
-
+
@@ -501,7 +501,6 @@ A Code Linter
[lorgat_tutorial]: https://wasimlorgat.com/posts/editor.html
[lorgat_wasim]: https://wasimlorgat.com/
[marthas_rules]: https://journals.sagepub.com/doi/10.1177/088610998600100206
-[mkdocs]: https://www.mkdocs.org/
[nison_mael]: https://arcanis.github.io/
[nystrom_bob]: http://journal.stuffwithstuff.com/
[package_manager_tutorial]: https://classic.yarnpkg.com/blog/2017/07/11/lets-dev-a-package-manager/
@@ -516,6 +515,7 @@ A Code Linter
[py_ast]: https://docs.python.org/3/library/ast.html
[py_chainmap]: https://docs.python.org/3/library/collections.html#collections.ChainMap
[py_cprofile]: https://docs.python.org/3/library/profile.html
+[py_fractions]: https://docs.python.org/3/library/fractions.html
[py_glob]: https://docs.python.org/3/library/glob.html
[py_hashlib]: https://docs.python.org/3/library/hashlib.html
[py_inspect]: https://docs.python.org/3/library/inspect.html
@@ -523,15 +523,16 @@ A Code Linter
[py_itertools]: https://docs.python.org/3/library/itertools.html
[py_json]: https://docs.python.org/3/library/json.html
[py_jsonschema]: https://python-jsonschema.readthedocs.io/
-[py_metaclass]: https://docs.python.org/3/reference/datamodel.html#metaclasses
[py_mimetypes]: https://docs.python.org/3/library/mimetypes.html
[py_pickle]: https://docs.python.org/3/library/pickle.html
[py_property]: https://docs.python.org/3/library/functions.html#property
[py_semver]: https://pypi.org/project/semantic-version/
+[py_struct]: https://docs.python.org/3/library/struct.html
[py_textwrap]: https://docs.python.org/3/library/textwrap.html
[py_urlparse]: https://docs.python.org/3/library/urllib.parse.html
[pyfakefs]: https://pytest-pyfakefs.readthedocs.io/
[pytest]: https://docs.pytest.org/
+[pytest_approx]: https://docs.pytest.org/en/4.6.x/reference.html#pytest-approx
[python]: https://www.python.org/
[reim_michael]: https://elderlinux.org/
[requests]: https://requests.readthedocs.io/
@@ -539,13 +540,15 @@ A Code Linter
[selenium]: https://www.selenium.dev/
[semver_spec]: https://semver.org/
[sinel_joseph]: https://en.wikipedia.org/wiki/Joseph_Claude_Sinel
-[sphinx]: https://www.sphinx-doc.org/
+[snakemake]: https://snakemake.readthedocs.io/
[sqlite]: https://sqlite.org/
[stack_connor]: https://connorstack.com/
[svg_screenshot]: https://chrome.google.com/webstore/detail/svg-screenshot/nfakpcpmhhilkdpphcjgnokknpbpdllg
[t3_personas]: https://teachtogether.tech/en/index.html#s:process-personas
+[textualize_fraction]: https://www.textualize.io/blog/posts/7-things-about-terminals
[udhr]: https://www.un.org/en/universal-declaration-human-rights/
[ungc]: https://www.unglobalcompact.org/what-is-gc/mission/principles
+[unicode]: https://www.unicode.org/
[unix_glob]: https://en.wikipedia.org/wiki/Glob_(programming)
[unix_packaging]: https://eerielinux.wordpress.com/2017/08/15/the-history-of-nix-package-management/
[webaim_wave]: https://wave.webaim.org/
diff --git a/docs/mock/slides/index.html b/docs/mock/slides/index.html
index ae9921eec..d3aacc3ff 100644
--- a/docs/mock/slides/index.html
+++ b/docs/mock/slides/index.html
@@ -4,7 +4,7 @@
-
+
@@ -95,7 +95,6 @@ Mock Objects
[lorgat_tutorial]: https://wasimlorgat.com/posts/editor.html
[lorgat_wasim]: https://wasimlorgat.com/
[marthas_rules]: https://journals.sagepub.com/doi/10.1177/088610998600100206
-[mkdocs]: https://www.mkdocs.org/
[nison_mael]: https://arcanis.github.io/
[nystrom_bob]: http://journal.stuffwithstuff.com/
[package_manager_tutorial]: https://classic.yarnpkg.com/blog/2017/07/11/lets-dev-a-package-manager/
@@ -110,6 +109,7 @@ Mock Objects
[py_ast]: https://docs.python.org/3/library/ast.html
[py_chainmap]: https://docs.python.org/3/library/collections.html#collections.ChainMap
[py_cprofile]: https://docs.python.org/3/library/profile.html
+[py_fractions]: https://docs.python.org/3/library/fractions.html
[py_glob]: https://docs.python.org/3/library/glob.html
[py_hashlib]: https://docs.python.org/3/library/hashlib.html
[py_inspect]: https://docs.python.org/3/library/inspect.html
@@ -117,15 +117,16 @@ Mock Objects
[py_itertools]: https://docs.python.org/3/library/itertools.html
[py_json]: https://docs.python.org/3/library/json.html
[py_jsonschema]: https://python-jsonschema.readthedocs.io/
-[py_metaclass]: https://docs.python.org/3/reference/datamodel.html#metaclasses
[py_mimetypes]: https://docs.python.org/3/library/mimetypes.html
[py_pickle]: https://docs.python.org/3/library/pickle.html
[py_property]: https://docs.python.org/3/library/functions.html#property
[py_semver]: https://pypi.org/project/semantic-version/
+[py_struct]: https://docs.python.org/3/library/struct.html
[py_textwrap]: https://docs.python.org/3/library/textwrap.html
[py_urlparse]: https://docs.python.org/3/library/urllib.parse.html
[pyfakefs]: https://pytest-pyfakefs.readthedocs.io/
[pytest]: https://docs.pytest.org/
+[pytest_approx]: https://docs.pytest.org/en/4.6.x/reference.html#pytest-approx
[python]: https://www.python.org/
[reim_michael]: https://elderlinux.org/
[requests]: https://requests.readthedocs.io/
@@ -133,13 +134,15 @@ Mock Objects
[selenium]: https://www.selenium.dev/
[semver_spec]: https://semver.org/
[sinel_joseph]: https://en.wikipedia.org/wiki/Joseph_Claude_Sinel
-[sphinx]: https://www.sphinx-doc.org/
+[snakemake]: https://snakemake.readthedocs.io/
[sqlite]: https://sqlite.org/
[stack_connor]: https://connorstack.com/
[svg_screenshot]: https://chrome.google.com/webstore/detail/svg-screenshot/nfakpcpmhhilkdpphcjgnokknpbpdllg
[t3_personas]: https://teachtogether.tech/en/index.html#s:process-personas
+[textualize_fraction]: https://www.textualize.io/blog/posts/7-things-about-terminals
[udhr]: https://www.un.org/en/universal-declaration-human-rights/
[ungc]: https://www.unglobalcompact.org/what-is-gc/mission/principles
+[unicode]: https://www.unicode.org/
[unix_glob]: https://en.wikipedia.org/wiki/Glob_(programming)
[unix_packaging]: https://eerielinux.wordpress.com/2017/08/15/the-history-of-nix-package-management/
[webaim_wave]: https://wave.webaim.org/
diff --git a/docs/oop/slides/index.html b/docs/oop/slides/index.html
index 6de14566c..22db23ff1 100644
--- a/docs/oop/slides/index.html
+++ b/docs/oop/slides/index.html
@@ -4,7 +4,7 @@
-
+
@@ -477,7 +477,6 @@ Objects and Classes
[lorgat_tutorial]: https://wasimlorgat.com/posts/editor.html
[lorgat_wasim]: https://wasimlorgat.com/
[marthas_rules]: https://journals.sagepub.com/doi/10.1177/088610998600100206
-[mkdocs]: https://www.mkdocs.org/
[nison_mael]: https://arcanis.github.io/
[nystrom_bob]: http://journal.stuffwithstuff.com/
[package_manager_tutorial]: https://classic.yarnpkg.com/blog/2017/07/11/lets-dev-a-package-manager/
@@ -492,6 +491,7 @@ Objects and Classes
[py_ast]: https://docs.python.org/3/library/ast.html
[py_chainmap]: https://docs.python.org/3/library/collections.html#collections.ChainMap
[py_cprofile]: https://docs.python.org/3/library/profile.html
+[py_fractions]: https://docs.python.org/3/library/fractions.html
[py_glob]: https://docs.python.org/3/library/glob.html
[py_hashlib]: https://docs.python.org/3/library/hashlib.html
[py_inspect]: https://docs.python.org/3/library/inspect.html
@@ -499,15 +499,16 @@ Objects and Classes
[py_itertools]: https://docs.python.org/3/library/itertools.html
[py_json]: https://docs.python.org/3/library/json.html
[py_jsonschema]: https://python-jsonschema.readthedocs.io/
-[py_metaclass]: https://docs.python.org/3/reference/datamodel.html#metaclasses
[py_mimetypes]: https://docs.python.org/3/library/mimetypes.html
[py_pickle]: https://docs.python.org/3/library/pickle.html
[py_property]: https://docs.python.org/3/library/functions.html#property
[py_semver]: https://pypi.org/project/semantic-version/
+[py_struct]: https://docs.python.org/3/library/struct.html
[py_textwrap]: https://docs.python.org/3/library/textwrap.html
[py_urlparse]: https://docs.python.org/3/library/urllib.parse.html
[pyfakefs]: https://pytest-pyfakefs.readthedocs.io/
[pytest]: https://docs.pytest.org/
+[pytest_approx]: https://docs.pytest.org/en/4.6.x/reference.html#pytest-approx
[python]: https://www.python.org/
[reim_michael]: https://elderlinux.org/
[requests]: https://requests.readthedocs.io/
@@ -515,13 +516,15 @@ Objects and Classes
[selenium]: https://www.selenium.dev/
[semver_spec]: https://semver.org/
[sinel_joseph]: https://en.wikipedia.org/wiki/Joseph_Claude_Sinel
-[sphinx]: https://www.sphinx-doc.org/
+[snakemake]: https://snakemake.readthedocs.io/
[sqlite]: https://sqlite.org/
[stack_connor]: https://connorstack.com/
[svg_screenshot]: https://chrome.google.com/webstore/detail/svg-screenshot/nfakpcpmhhilkdpphcjgnokknpbpdllg
[t3_personas]: https://teachtogether.tech/en/index.html#s:process-personas
+[textualize_fraction]: https://www.textualize.io/blog/posts/7-things-about-terminals
[udhr]: https://www.un.org/en/universal-declaration-human-rights/
[ungc]: https://www.unglobalcompact.org/what-is-gc/mission/principles
+[unicode]: https://www.unicode.org/
[unix_glob]: https://en.wikipedia.org/wiki/Glob_(programming)
[unix_packaging]: https://eerielinux.wordpress.com/2017/08/15/the-history-of-nix-package-management/
[webaim_wave]: https://wave.webaim.org/
diff --git a/docs/pack/index.html b/docs/pack/index.html
index d15ba479b..1deba70db 100644
--- a/docs/pack/index.html
+++ b/docs/pack/index.html
@@ -4,7 +4,7 @@
-
+
@@ -602,6 +602,14 @@ Section 20.3: Generating Possibilities Manually
_make_possible ( tail , current + [ h ], accum )
+
+
18 possibilities
+3 allowed
+[('A', '3'), ('B', '3'), ('C', '2')]
+[('A', '2'), ('B', '2'), ('C', '1')]
+[('A', '1'), ('B', '1'), ('C', '1')]
+
+
Figure 20.3: Generating all possible combinations of items recursively.
diff --git a/docs/pack/slides/index.html b/docs/pack/slides/index.html
index f3ef775fa..1ff5f594a 100644
--- a/docs/pack/slides/index.html
+++ b/docs/pack/slides/index.html
@@ -4,7 +4,7 @@
-
+
@@ -584,7 +584,6 @@ A Package Manager
[lorgat_tutorial]: https://wasimlorgat.com/posts/editor.html
[lorgat_wasim]: https://wasimlorgat.com/
[marthas_rules]: https://journals.sagepub.com/doi/10.1177/088610998600100206
-[mkdocs]: https://www.mkdocs.org/
[nison_mael]: https://arcanis.github.io/
[nystrom_bob]: http://journal.stuffwithstuff.com/
[package_manager_tutorial]: https://classic.yarnpkg.com/blog/2017/07/11/lets-dev-a-package-manager/
@@ -599,6 +598,7 @@ A Package Manager
[py_ast]: https://docs.python.org/3/library/ast.html
[py_chainmap]: https://docs.python.org/3/library/collections.html#collections.ChainMap
[py_cprofile]: https://docs.python.org/3/library/profile.html
+[py_fractions]: https://docs.python.org/3/library/fractions.html
[py_glob]: https://docs.python.org/3/library/glob.html
[py_hashlib]: https://docs.python.org/3/library/hashlib.html
[py_inspect]: https://docs.python.org/3/library/inspect.html
@@ -606,15 +606,16 @@ A Package Manager
[py_itertools]: https://docs.python.org/3/library/itertools.html
[py_json]: https://docs.python.org/3/library/json.html
[py_jsonschema]: https://python-jsonschema.readthedocs.io/
-[py_metaclass]: https://docs.python.org/3/reference/datamodel.html#metaclasses
[py_mimetypes]: https://docs.python.org/3/library/mimetypes.html
[py_pickle]: https://docs.python.org/3/library/pickle.html
[py_property]: https://docs.python.org/3/library/functions.html#property
[py_semver]: https://pypi.org/project/semantic-version/
+[py_struct]: https://docs.python.org/3/library/struct.html
[py_textwrap]: https://docs.python.org/3/library/textwrap.html
[py_urlparse]: https://docs.python.org/3/library/urllib.parse.html
[pyfakefs]: https://pytest-pyfakefs.readthedocs.io/
[pytest]: https://docs.pytest.org/
+[pytest_approx]: https://docs.pytest.org/en/4.6.x/reference.html#pytest-approx
[python]: https://www.python.org/
[reim_michael]: https://elderlinux.org/
[requests]: https://requests.readthedocs.io/
@@ -622,13 +623,15 @@ A Package Manager
[selenium]: https://www.selenium.dev/
[semver_spec]: https://semver.org/
[sinel_joseph]: https://en.wikipedia.org/wiki/Joseph_Claude_Sinel
-[sphinx]: https://www.sphinx-doc.org/
+[snakemake]: https://snakemake.readthedocs.io/
[sqlite]: https://sqlite.org/
[stack_connor]: https://connorstack.com/
[svg_screenshot]: https://chrome.google.com/webstore/detail/svg-screenshot/nfakpcpmhhilkdpphcjgnokknpbpdllg
[t3_personas]: https://teachtogether.tech/en/index.html#s:process-personas
+[textualize_fraction]: https://www.textualize.io/blog/posts/7-things-about-terminals
[udhr]: https://www.un.org/en/universal-declaration-human-rights/
[ungc]: https://www.unglobalcompact.org/what-is-gc/mission/principles
+[unicode]: https://www.unicode.org/
[unix_glob]: https://en.wikipedia.org/wiki/Glob_(programming)
[unix_packaging]: https://eerielinux.wordpress.com/2017/08/15/the-history-of-nix-package-management/
[webaim_wave]: https://wave.webaim.org/
diff --git a/docs/parse/slides/index.html b/docs/parse/slides/index.html
index 368023f07..74a921eca 100644
--- a/docs/parse/slides/index.html
+++ b/docs/parse/slides/index.html
@@ -4,7 +4,7 @@
-
+
@@ -393,7 +393,6 @@ Parsing Text
[lorgat_tutorial]: https://wasimlorgat.com/posts/editor.html
[lorgat_wasim]: https://wasimlorgat.com/
[marthas_rules]: https://journals.sagepub.com/doi/10.1177/088610998600100206
-[mkdocs]: https://www.mkdocs.org/
[nison_mael]: https://arcanis.github.io/
[nystrom_bob]: http://journal.stuffwithstuff.com/
[package_manager_tutorial]: https://classic.yarnpkg.com/blog/2017/07/11/lets-dev-a-package-manager/
@@ -408,6 +407,7 @@ Parsing Text
[py_ast]: https://docs.python.org/3/library/ast.html
[py_chainmap]: https://docs.python.org/3/library/collections.html#collections.ChainMap
[py_cprofile]: https://docs.python.org/3/library/profile.html
+[py_fractions]: https://docs.python.org/3/library/fractions.html
[py_glob]: https://docs.python.org/3/library/glob.html
[py_hashlib]: https://docs.python.org/3/library/hashlib.html
[py_inspect]: https://docs.python.org/3/library/inspect.html
@@ -415,15 +415,16 @@ Parsing Text
[py_itertools]: https://docs.python.org/3/library/itertools.html
[py_json]: https://docs.python.org/3/library/json.html
[py_jsonschema]: https://python-jsonschema.readthedocs.io/
-[py_metaclass]: https://docs.python.org/3/reference/datamodel.html#metaclasses
[py_mimetypes]: https://docs.python.org/3/library/mimetypes.html
[py_pickle]: https://docs.python.org/3/library/pickle.html
[py_property]: https://docs.python.org/3/library/functions.html#property
[py_semver]: https://pypi.org/project/semantic-version/
+[py_struct]: https://docs.python.org/3/library/struct.html
[py_textwrap]: https://docs.python.org/3/library/textwrap.html
[py_urlparse]: https://docs.python.org/3/library/urllib.parse.html
[pyfakefs]: https://pytest-pyfakefs.readthedocs.io/
[pytest]: https://docs.pytest.org/
+[pytest_approx]: https://docs.pytest.org/en/4.6.x/reference.html#pytest-approx
[python]: https://www.python.org/
[reim_michael]: https://elderlinux.org/
[requests]: https://requests.readthedocs.io/
@@ -431,13 +432,15 @@ Parsing Text
[selenium]: https://www.selenium.dev/
[semver_spec]: https://semver.org/
[sinel_joseph]: https://en.wikipedia.org/wiki/Joseph_Claude_Sinel
-[sphinx]: https://www.sphinx-doc.org/
+[snakemake]: https://snakemake.readthedocs.io/
[sqlite]: https://sqlite.org/
[stack_connor]: https://connorstack.com/
[svg_screenshot]: https://chrome.google.com/webstore/detail/svg-screenshot/nfakpcpmhhilkdpphcjgnokknpbpdllg
[t3_personas]: https://teachtogether.tech/en/index.html#s:process-personas
+[textualize_fraction]: https://www.textualize.io/blog/posts/7-things-about-terminals
[udhr]: https://www.un.org/en/universal-declaration-human-rights/
[ungc]: https://www.unglobalcompact.org/what-is-gc/mission/principles
+[unicode]: https://www.unicode.org/
[unix_glob]: https://en.wikipedia.org/wiki/Glob_(programming)
[unix_packaging]: https://eerielinux.wordpress.com/2017/08/15/the-history-of-nix-package-management/
[webaim_wave]: https://wave.webaim.org/
diff --git a/docs/perf/slides/index.html b/docs/perf/slides/index.html
index a34bb158b..09fa14503 100644
--- a/docs/perf/slides/index.html
+++ b/docs/perf/slides/index.html
@@ -4,7 +4,7 @@
-
+
@@ -556,7 +556,6 @@ Performance Profiling
[lorgat_tutorial]: https://wasimlorgat.com/posts/editor.html
[lorgat_wasim]: https://wasimlorgat.com/
[marthas_rules]: https://journals.sagepub.com/doi/10.1177/088610998600100206
-[mkdocs]: https://www.mkdocs.org/
[nison_mael]: https://arcanis.github.io/
[nystrom_bob]: http://journal.stuffwithstuff.com/
[package_manager_tutorial]: https://classic.yarnpkg.com/blog/2017/07/11/lets-dev-a-package-manager/
@@ -571,6 +570,7 @@ Performance Profiling
[py_ast]: https://docs.python.org/3/library/ast.html
[py_chainmap]: https://docs.python.org/3/library/collections.html#collections.ChainMap
[py_cprofile]: https://docs.python.org/3/library/profile.html
+[py_fractions]: https://docs.python.org/3/library/fractions.html
[py_glob]: https://docs.python.org/3/library/glob.html
[py_hashlib]: https://docs.python.org/3/library/hashlib.html
[py_inspect]: https://docs.python.org/3/library/inspect.html
@@ -578,15 +578,16 @@ Performance Profiling
[py_itertools]: https://docs.python.org/3/library/itertools.html
[py_json]: https://docs.python.org/3/library/json.html
[py_jsonschema]: https://python-jsonschema.readthedocs.io/
-[py_metaclass]: https://docs.python.org/3/reference/datamodel.html#metaclasses
[py_mimetypes]: https://docs.python.org/3/library/mimetypes.html
[py_pickle]: https://docs.python.org/3/library/pickle.html
[py_property]: https://docs.python.org/3/library/functions.html#property
[py_semver]: https://pypi.org/project/semantic-version/
+[py_struct]: https://docs.python.org/3/library/struct.html
[py_textwrap]: https://docs.python.org/3/library/textwrap.html
[py_urlparse]: https://docs.python.org/3/library/urllib.parse.html
[pyfakefs]: https://pytest-pyfakefs.readthedocs.io/
[pytest]: https://docs.pytest.org/
+[pytest_approx]: https://docs.pytest.org/en/4.6.x/reference.html#pytest-approx
[python]: https://www.python.org/
[reim_michael]: https://elderlinux.org/
[requests]: https://requests.readthedocs.io/
@@ -594,13 +595,15 @@ Performance Profiling
[selenium]: https://www.selenium.dev/
[semver_spec]: https://semver.org/
[sinel_joseph]: https://en.wikipedia.org/wiki/Joseph_Claude_Sinel
-[sphinx]: https://www.sphinx-doc.org/
+[snakemake]: https://snakemake.readthedocs.io/
[sqlite]: https://sqlite.org/
[stack_connor]: https://connorstack.com/
[svg_screenshot]: https://chrome.google.com/webstore/detail/svg-screenshot/nfakpcpmhhilkdpphcjgnokknpbpdllg
[t3_personas]: https://teachtogether.tech/en/index.html#s:process-personas
+[textualize_fraction]: https://www.textualize.io/blog/posts/7-things-about-terminals
[udhr]: https://www.un.org/en/universal-declaration-human-rights/
[ungc]: https://www.unglobalcompact.org/what-is-gc/mission/principles
+[unicode]: https://www.unicode.org/
[unix_glob]: https://en.wikipedia.org/wiki/Glob_(programming)
[unix_packaging]: https://eerielinux.wordpress.com/2017/08/15/the-history-of-nix-package-management/
[webaim_wave]: https://wave.webaim.org/
diff --git a/docs/persist/slides/index.html b/docs/persist/slides/index.html
index bf228ab93..e162fce1f 100644
--- a/docs/persist/slides/index.html
+++ b/docs/persist/slides/index.html
@@ -4,7 +4,7 @@
-
+
@@ -381,7 +381,6 @@ Object Persistence
[lorgat_tutorial]: https://wasimlorgat.com/posts/editor.html
[lorgat_wasim]: https://wasimlorgat.com/
[marthas_rules]: https://journals.sagepub.com/doi/10.1177/088610998600100206
-[mkdocs]: https://www.mkdocs.org/
[nison_mael]: https://arcanis.github.io/
[nystrom_bob]: http://journal.stuffwithstuff.com/
[package_manager_tutorial]: https://classic.yarnpkg.com/blog/2017/07/11/lets-dev-a-package-manager/
@@ -396,6 +395,7 @@ Object Persistence
[py_ast]: https://docs.python.org/3/library/ast.html
[py_chainmap]: https://docs.python.org/3/library/collections.html#collections.ChainMap
[py_cprofile]: https://docs.python.org/3/library/profile.html
+[py_fractions]: https://docs.python.org/3/library/fractions.html
[py_glob]: https://docs.python.org/3/library/glob.html
[py_hashlib]: https://docs.python.org/3/library/hashlib.html
[py_inspect]: https://docs.python.org/3/library/inspect.html
@@ -403,15 +403,16 @@ Object Persistence
[py_itertools]: https://docs.python.org/3/library/itertools.html
[py_json]: https://docs.python.org/3/library/json.html
[py_jsonschema]: https://python-jsonschema.readthedocs.io/
-[py_metaclass]: https://docs.python.org/3/reference/datamodel.html#metaclasses
[py_mimetypes]: https://docs.python.org/3/library/mimetypes.html
[py_pickle]: https://docs.python.org/3/library/pickle.html
[py_property]: https://docs.python.org/3/library/functions.html#property
[py_semver]: https://pypi.org/project/semantic-version/
+[py_struct]: https://docs.python.org/3/library/struct.html
[py_textwrap]: https://docs.python.org/3/library/textwrap.html
[py_urlparse]: https://docs.python.org/3/library/urllib.parse.html
[pyfakefs]: https://pytest-pyfakefs.readthedocs.io/
[pytest]: https://docs.pytest.org/
+[pytest_approx]: https://docs.pytest.org/en/4.6.x/reference.html#pytest-approx
[python]: https://www.python.org/
[reim_michael]: https://elderlinux.org/
[requests]: https://requests.readthedocs.io/
@@ -419,13 +420,15 @@ Object Persistence
[selenium]: https://www.selenium.dev/
[semver_spec]: https://semver.org/
[sinel_joseph]: https://en.wikipedia.org/wiki/Joseph_Claude_Sinel
-[sphinx]: https://www.sphinx-doc.org/
+[snakemake]: https://snakemake.readthedocs.io/
[sqlite]: https://sqlite.org/
[stack_connor]: https://connorstack.com/
[svg_screenshot]: https://chrome.google.com/webstore/detail/svg-screenshot/nfakpcpmhhilkdpphcjgnokknpbpdllg
[t3_personas]: https://teachtogether.tech/en/index.html#s:process-personas
+[textualize_fraction]: https://www.textualize.io/blog/posts/7-things-about-terminals
[udhr]: https://www.un.org/en/universal-declaration-human-rights/
[ungc]: https://www.unglobalcompact.org/what-is-gc/mission/principles
+[unicode]: https://www.unicode.org/
[unix_glob]: https://en.wikipedia.org/wiki/Glob_(programming)
[unix_packaging]: https://eerielinux.wordpress.com/2017/08/15/the-history-of-nix-package-management/
[webaim_wave]: https://wave.webaim.org/
diff --git a/docs/template/slides/index.html b/docs/template/slides/index.html
index f53150478..0b8e5152b 100644
--- a/docs/template/slides/index.html
+++ b/docs/template/slides/index.html
@@ -4,7 +4,7 @@
-
+
@@ -597,7 +597,6 @@ Static Text
[lorgat_tutorial]: https://wasimlorgat.com/posts/editor.html
[lorgat_wasim]: https://wasimlorgat.com/
[marthas_rules]: https://journals.sagepub.com/doi/10.1177/088610998600100206
-[mkdocs]: https://www.mkdocs.org/
[nison_mael]: https://arcanis.github.io/
[nystrom_bob]: http://journal.stuffwithstuff.com/
[package_manager_tutorial]: https://classic.yarnpkg.com/blog/2017/07/11/lets-dev-a-package-manager/
@@ -612,6 +611,7 @@ Static Text
[py_ast]: https://docs.python.org/3/library/ast.html
[py_chainmap]: https://docs.python.org/3/library/collections.html#collections.ChainMap
[py_cprofile]: https://docs.python.org/3/library/profile.html
+[py_fractions]: https://docs.python.org/3/library/fractions.html
[py_glob]: https://docs.python.org/3/library/glob.html
[py_hashlib]: https://docs.python.org/3/library/hashlib.html
[py_inspect]: https://docs.python.org/3/library/inspect.html
@@ -619,15 +619,16 @@ Static Text
[py_itertools]: https://docs.python.org/3/library/itertools.html
[py_json]: https://docs.python.org/3/library/json.html
[py_jsonschema]: https://python-jsonschema.readthedocs.io/
-[py_metaclass]: https://docs.python.org/3/reference/datamodel.html#metaclasses
[py_mimetypes]: https://docs.python.org/3/library/mimetypes.html
[py_pickle]: https://docs.python.org/3/library/pickle.html
[py_property]: https://docs.python.org/3/library/functions.html#property
[py_semver]: https://pypi.org/project/semantic-version/
+[py_struct]: https://docs.python.org/3/library/struct.html
[py_textwrap]: https://docs.python.org/3/library/textwrap.html
[py_urlparse]: https://docs.python.org/3/library/urllib.parse.html
[pyfakefs]: https://pytest-pyfakefs.readthedocs.io/
[pytest]: https://docs.pytest.org/
+[pytest_approx]: https://docs.pytest.org/en/4.6.x/reference.html#pytest-approx
[python]: https://www.python.org/
[reim_michael]: https://elderlinux.org/
[requests]: https://requests.readthedocs.io/
@@ -635,13 +636,15 @@ Static Text
[selenium]: https://www.selenium.dev/
[semver_spec]: https://semver.org/
[sinel_joseph]: https://en.wikipedia.org/wiki/Joseph_Claude_Sinel
-[sphinx]: https://www.sphinx-doc.org/
+[snakemake]: https://snakemake.readthedocs.io/
[sqlite]: https://sqlite.org/
[stack_connor]: https://connorstack.com/
[svg_screenshot]: https://chrome.google.com/webstore/detail/svg-screenshot/nfakpcpmhhilkdpphcjgnokknpbpdllg
[t3_personas]: https://teachtogether.tech/en/index.html#s:process-personas
+[textualize_fraction]: https://www.textualize.io/blog/posts/7-things-about-terminals
[udhr]: https://www.un.org/en/universal-declaration-human-rights/
[ungc]: https://www.unglobalcompact.org/what-is-gc/mission/principles
+[unicode]: https://www.unicode.org/
[unix_glob]: https://en.wikipedia.org/wiki/Glob_(programming)
[unix_packaging]: https://eerielinux.wordpress.com/2017/08/15/the-history-of-nix-package-management/
[webaim_wave]: https://wave.webaim.org/
diff --git a/docs/test/slides/index.html b/docs/test/slides/index.html
index 0be538a61..1e54befc9 100644
--- a/docs/test/slides/index.html
+++ b/docs/test/slides/index.html
@@ -4,7 +4,7 @@
-
+
@@ -492,7 +492,6 @@ A Test Runner
[lorgat_tutorial]: https://wasimlorgat.com/posts/editor.html
[lorgat_wasim]: https://wasimlorgat.com/
[marthas_rules]: https://journals.sagepub.com/doi/10.1177/088610998600100206
-[mkdocs]: https://www.mkdocs.org/
[nison_mael]: https://arcanis.github.io/
[nystrom_bob]: http://journal.stuffwithstuff.com/
[package_manager_tutorial]: https://classic.yarnpkg.com/blog/2017/07/11/lets-dev-a-package-manager/
@@ -507,6 +506,7 @@ A Test Runner
[py_ast]: https://docs.python.org/3/library/ast.html
[py_chainmap]: https://docs.python.org/3/library/collections.html#collections.ChainMap
[py_cprofile]: https://docs.python.org/3/library/profile.html
+[py_fractions]: https://docs.python.org/3/library/fractions.html
[py_glob]: https://docs.python.org/3/library/glob.html
[py_hashlib]: https://docs.python.org/3/library/hashlib.html
[py_inspect]: https://docs.python.org/3/library/inspect.html
@@ -514,15 +514,16 @@ A Test Runner
[py_itertools]: https://docs.python.org/3/library/itertools.html
[py_json]: https://docs.python.org/3/library/json.html
[py_jsonschema]: https://python-jsonschema.readthedocs.io/
-[py_metaclass]: https://docs.python.org/3/reference/datamodel.html#metaclasses
[py_mimetypes]: https://docs.python.org/3/library/mimetypes.html
[py_pickle]: https://docs.python.org/3/library/pickle.html
[py_property]: https://docs.python.org/3/library/functions.html#property
[py_semver]: https://pypi.org/project/semantic-version/
+[py_struct]: https://docs.python.org/3/library/struct.html
[py_textwrap]: https://docs.python.org/3/library/textwrap.html
[py_urlparse]: https://docs.python.org/3/library/urllib.parse.html
[pyfakefs]: https://pytest-pyfakefs.readthedocs.io/
[pytest]: https://docs.pytest.org/
+[pytest_approx]: https://docs.pytest.org/en/4.6.x/reference.html#pytest-approx
[python]: https://www.python.org/
[reim_michael]: https://elderlinux.org/
[requests]: https://requests.readthedocs.io/
@@ -530,13 +531,15 @@ A Test Runner
[selenium]: https://www.selenium.dev/
[semver_spec]: https://semver.org/
[sinel_joseph]: https://en.wikipedia.org/wiki/Joseph_Claude_Sinel
-[sphinx]: https://www.sphinx-doc.org/
+[snakemake]: https://snakemake.readthedocs.io/
[sqlite]: https://sqlite.org/
[stack_connor]: https://connorstack.com/
[svg_screenshot]: https://chrome.google.com/webstore/detail/svg-screenshot/nfakpcpmhhilkdpphcjgnokknpbpdllg
[t3_personas]: https://teachtogether.tech/en/index.html#s:process-personas
+[textualize_fraction]: https://www.textualize.io/blog/posts/7-things-about-terminals
[udhr]: https://www.un.org/en/universal-declaration-human-rights/
[ungc]: https://www.unglobalcompact.org/what-is-gc/mission/principles
+[unicode]: https://www.unicode.org/
[unix_glob]: https://en.wikipedia.org/wiki/Glob_(programming)
[unix_packaging]: https://eerielinux.wordpress.com/2017/08/15/the-history-of-nix-package-management/
[webaim_wave]: https://wave.webaim.org/
diff --git a/docs/undo/slides/index.html b/docs/undo/slides/index.html
index 3026ec98d..995fde83c 100644
--- a/docs/undo/slides/index.html
+++ b/docs/undo/slides/index.html
@@ -4,7 +4,7 @@
-
+
@@ -95,7 +95,6 @@ Undo and Redo
[lorgat_tutorial]: https://wasimlorgat.com/posts/editor.html
[lorgat_wasim]: https://wasimlorgat.com/
[marthas_rules]: https://journals.sagepub.com/doi/10.1177/088610998600100206
-[mkdocs]: https://www.mkdocs.org/
[nison_mael]: https://arcanis.github.io/
[nystrom_bob]: http://journal.stuffwithstuff.com/
[package_manager_tutorial]: https://classic.yarnpkg.com/blog/2017/07/11/lets-dev-a-package-manager/
@@ -110,6 +109,7 @@ Undo and Redo
[py_ast]: https://docs.python.org/3/library/ast.html
[py_chainmap]: https://docs.python.org/3/library/collections.html#collections.ChainMap
[py_cprofile]: https://docs.python.org/3/library/profile.html
+[py_fractions]: https://docs.python.org/3/library/fractions.html
[py_glob]: https://docs.python.org/3/library/glob.html
[py_hashlib]: https://docs.python.org/3/library/hashlib.html
[py_inspect]: https://docs.python.org/3/library/inspect.html
@@ -117,15 +117,16 @@ Undo and Redo
[py_itertools]: https://docs.python.org/3/library/itertools.html
[py_json]: https://docs.python.org/3/library/json.html
[py_jsonschema]: https://python-jsonschema.readthedocs.io/
-[py_metaclass]: https://docs.python.org/3/reference/datamodel.html#metaclasses
[py_mimetypes]: https://docs.python.org/3/library/mimetypes.html
[py_pickle]: https://docs.python.org/3/library/pickle.html
[py_property]: https://docs.python.org/3/library/functions.html#property
[py_semver]: https://pypi.org/project/semantic-version/
+[py_struct]: https://docs.python.org/3/library/struct.html
[py_textwrap]: https://docs.python.org/3/library/textwrap.html
[py_urlparse]: https://docs.python.org/3/library/urllib.parse.html
[pyfakefs]: https://pytest-pyfakefs.readthedocs.io/
[pytest]: https://docs.pytest.org/
+[pytest_approx]: https://docs.pytest.org/en/4.6.x/reference.html#pytest-approx
[python]: https://www.python.org/
[reim_michael]: https://elderlinux.org/
[requests]: https://requests.readthedocs.io/
@@ -133,13 +134,15 @@ Undo and Redo
[selenium]: https://www.selenium.dev/
[semver_spec]: https://semver.org/
[sinel_joseph]: https://en.wikipedia.org/wiki/Joseph_Claude_Sinel
-[sphinx]: https://www.sphinx-doc.org/
+[snakemake]: https://snakemake.readthedocs.io/
[sqlite]: https://sqlite.org/
[stack_connor]: https://connorstack.com/
[svg_screenshot]: https://chrome.google.com/webstore/detail/svg-screenshot/nfakpcpmhhilkdpphcjgnokknpbpdllg
[t3_personas]: https://teachtogether.tech/en/index.html#s:process-personas
+[textualize_fraction]: https://www.textualize.io/blog/posts/7-things-about-terminals
[udhr]: https://www.un.org/en/universal-declaration-human-rights/
[ungc]: https://www.unglobalcompact.org/what-is-gc/mission/principles
+[unicode]: https://www.unicode.org/
[unix_glob]: https://en.wikipedia.org/wiki/Glob_(programming)
[unix_packaging]: https://eerielinux.wordpress.com/2017/08/15/the-history-of-nix-package-management/
[webaim_wave]: https://wave.webaim.org/
diff --git a/docs/vm/slides/index.html b/docs/vm/slides/index.html
index eef55206f..1d77fc463 100644
--- a/docs/vm/slides/index.html
+++ b/docs/vm/slides/index.html
@@ -4,7 +4,7 @@
-
+
@@ -513,7 +513,6 @@ A Virtual Machine
[lorgat_tutorial]: https://wasimlorgat.com/posts/editor.html
[lorgat_wasim]: https://wasimlorgat.com/
[marthas_rules]: https://journals.sagepub.com/doi/10.1177/088610998600100206
-[mkdocs]: https://www.mkdocs.org/
[nison_mael]: https://arcanis.github.io/
[nystrom_bob]: http://journal.stuffwithstuff.com/
[package_manager_tutorial]: https://classic.yarnpkg.com/blog/2017/07/11/lets-dev-a-package-manager/
@@ -528,6 +527,7 @@ A Virtual Machine
[py_ast]: https://docs.python.org/3/library/ast.html
[py_chainmap]: https://docs.python.org/3/library/collections.html#collections.ChainMap
[py_cprofile]: https://docs.python.org/3/library/profile.html
+[py_fractions]: https://docs.python.org/3/library/fractions.html
[py_glob]: https://docs.python.org/3/library/glob.html
[py_hashlib]: https://docs.python.org/3/library/hashlib.html
[py_inspect]: https://docs.python.org/3/library/inspect.html
@@ -535,15 +535,16 @@ A Virtual Machine
[py_itertools]: https://docs.python.org/3/library/itertools.html
[py_json]: https://docs.python.org/3/library/json.html
[py_jsonschema]: https://python-jsonschema.readthedocs.io/
-[py_metaclass]: https://docs.python.org/3/reference/datamodel.html#metaclasses
[py_mimetypes]: https://docs.python.org/3/library/mimetypes.html
[py_pickle]: https://docs.python.org/3/library/pickle.html
[py_property]: https://docs.python.org/3/library/functions.html#property
[py_semver]: https://pypi.org/project/semantic-version/
+[py_struct]: https://docs.python.org/3/library/struct.html
[py_textwrap]: https://docs.python.org/3/library/textwrap.html
[py_urlparse]: https://docs.python.org/3/library/urllib.parse.html
[pyfakefs]: https://pytest-pyfakefs.readthedocs.io/
[pytest]: https://docs.pytest.org/
+[pytest_approx]: https://docs.pytest.org/en/4.6.x/reference.html#pytest-approx
[python]: https://www.python.org/
[reim_michael]: https://elderlinux.org/
[requests]: https://requests.readthedocs.io/
@@ -551,13 +552,15 @@ A Virtual Machine
[selenium]: https://www.selenium.dev/
[semver_spec]: https://semver.org/
[sinel_joseph]: https://en.wikipedia.org/wiki/Joseph_Claude_Sinel
-[sphinx]: https://www.sphinx-doc.org/
+[snakemake]: https://snakemake.readthedocs.io/
[sqlite]: https://sqlite.org/
[stack_connor]: https://connorstack.com/
[svg_screenshot]: https://chrome.google.com/webstore/detail/svg-screenshot/nfakpcpmhhilkdpphcjgnokknpbpdllg
[t3_personas]: https://teachtogether.tech/en/index.html#s:process-personas
+[textualize_fraction]: https://www.textualize.io/blog/posts/7-things-about-terminals
[udhr]: https://www.un.org/en/universal-declaration-human-rights/
[ungc]: https://www.unglobalcompact.org/what-is-gc/mission/principles
+[unicode]: https://www.unicode.org/
[unix_glob]: https://en.wikipedia.org/wiki/Glob_(programming)
[unix_packaging]: https://eerielinux.wordpress.com/2017/08/15/the-history-of-nix-package-management/
[webaim_wave]: https://wave.webaim.org/
diff --git a/foo b/foo
new file mode 100644
index 000000000..6482dcab3
--- /dev/null
+++ b/foo
@@ -0,0 +1,187 @@
+ivy build && touch docs/index.html
+[06:23:23] [90m·[0m Rendered: 64 [90m·[0m Written: 30 [90m·[0m Time: 4.23 sec
+src/intro: inclusions
+- extra
+ - gvwilson-gage-2019.png
+src/test: inclusions
+- extra
+ - attribute.out
+ - callable.out
+ - callable.py
+ - concept_map.pdf
+ - concept_map.svg
+ - signature.out
+ - signature.py
+ - type_len.out
+ - type_len.py
+src/template: inclusions
+- extra
+ - conditional.sh
+ - loop.sh
+ - loop.xml
+ - multiple_variables.sh
+ - single_constant.sh
+ - single_variable.sh
+ - static_text.sh
+src/oop: inclusions
+- extra
+ - people_multiple.out
+ - people_multiple.py
+ - people_original.out
+ - people_original.py
+ - shapes_class.out
+ - shapes_dict.out
+ - shapes_original.out
+src/dup: inclusions
+- extra
+ - dracula.txt
+ - grouped.sh
+ - naive_dracula.py
+ - sha256_dracula.pdf
+ - sha256_dracula.py
+ - sha256_dracula.svg
+ - tests/a1.txt
+ - tests/a2.txt
+ - tests/a3.txt
+ - tests/b1.txt
+ - tests/b2.txt
+ - tests/c1.txt
+src/undo: inclusions
+- extra
+ - wasim.py
+src/vm: inclusions
+- extra
+ - count_up_assemble.sh
+ - count_up_run.sh
+ - fill_array.as
+ - fill_array.mx
+ - fill_array.out
+ - fill_array_assemble.sh
+ - fill_array_run.sh
+ - halt.as
+ - halt.mx
+ - halt.out
+ - halt_assemble.sh
+ - halt_run.sh
+ - print_r1.out
+ - print_r1_assemble.sh
+ - print_r1_run.sh
+src/debugger: inclusions
+- extra
+ - assembler.py
+ - fill_array.as
+ - fill_array.mx
+ - halt.as
+ - halt.mx
+ - print_num.as
+ - print_num.mx
+src/glob: inclusions
+- extra
+ - fowler-refactoring.webp
+ - gamma-design-patterns.webp
+ - kerievsky-refactoring-to-patterns.webp
+ - simpler_match.py
+ - test_glob_null.py
+ - test_simpler_match.py
+src/binary: inclusions
+- extra
+ - bird.txt
+ - dynamic_format.out
+ - dynamic_format.py
+ - endian.pdf
+ - endian.svg
+ - hex_notation.out
+ - hex_notation.py
+ - pack_unicode.out
+ - pack_unicode.py
+src/build: inclusions
+- extra
+ - circular.json
+ - compiling.pdf
+ - compiling.svg
+ - diamond.json
+ - double_linear_dep.sh
+ - double_no_dep.json
+ - empty.json
+ - single_no_dep.json
+src/perf: inclusions
+- extra
+ - analysis.py
+ - hennessy-patterson.jpg
+ - make.out
+ - make.py
+ - timing.csv
+ - timing.sh
+src/check: inclusions
+- extra
+ - catalog.out
+ - catalog.sh
+ - check.sh
+ - contains.sh
+src/persist: inclusions
+- extra
+ - shared.py
+src/editor: inclusions
+- extra
+ - controller_cursor.py
+ - controller_editor.py
+ - controller_original.py
+ - controller_up_down.py
+ - controller_viewport.py
+ - curses_wrapper.py
+ - main_cursor.py
+ - main_editor.py
+ - main_show_lines.py
+ - main_slice.py
+ - main_up_down.py
+ - main_up_down_fixed.py
+ - main_viewport.py
+ - model_editor.py
+ - model_original.py
+ - recorder.py
+ - test_original.py
+ - test_viewport.py
+ - utils.py
+ - view_cursor.py
+ - view_original.py
+ - view_show_lines.py
+ - view_slice.py
+ - view_up_down.py
+ - view_up_down_fixed.py
+ - viewport_editor.py
+ - viewport_viewport.py
+src/func: inclusions
+- extra
+ - dynamic.out
+ - dynamic.sh
+ - dynamic.tll
+ - func.sh
+ - wrap_infinite.out
+ - wrap_infinite.sh
+links
+- extra
+ - mkdocs
+ - py_metaclass
+ - sphinx
+b seen but not expected
+body.class seen but not expected
+class seen but not expected
+dictcomp seen but not expected
+div.class == 'bonus' seen but not expected
+div.class == 'lang-html' seen but not expected
+div.class == 'lang-txt' seen but not expected
+div.class == 'small' seen but not expected
+figure.class seen but not expected
+function seen but not expected
+genexpr seen but not expected
+h2.class seen but not expected
+module seen but not expected
+p.align seen but not expected
+p.z-if seen but not expected
+span.z-num seen but not expected
+span.z-var seen but not expected
+sub seen but not expected
+tag seen but not expected
+td.style seen but not expected
+th.style seen but not expected
+ul.z-loop seen but not expected
diff --git a/info/links.yml b/info/links.yml
index 8d1eb87f1..81bb01e46 100644
--- a/info/links.yml
+++ b/info/links.yml
@@ -186,9 +186,6 @@
- key: marthas_rules
url: https://journals.sagepub.com/doi/10.1177/088610998600100206
en: Martha's Rules
-- key: mkdocs
- url: https://www.mkdocs.org/
- en: MkDocs
# N
@@ -239,6 +236,9 @@
- key: py_cprofile
url: https://docs.python.org/3/library/profile.html
en: Python profile module
+- key: py_fractions
+ url: https://docs.python.org/3/library/fractions.html
+ en: Python fractions module
- key: py_glob
url: https://docs.python.org/3/library/glob.html
en: Python glob module
@@ -260,9 +260,6 @@
- key: py_jsonschema
url: https://python-jsonschema.readthedocs.io/
en: Python JSON schema module
-- key: py_metaclass
- url: https://docs.python.org/3/reference/datamodel.html#metaclasses
- en: Python metaclasses
- key: py_mimetypes
url: https://docs.python.org/3/library/mimetypes.html
en: Python mimetypes module
@@ -275,6 +272,9 @@
- key: py_semver
url: https://pypi.org/project/semantic-version/
en: Python semantic version module
+- key: py_struct
+ url: https://docs.python.org/3/library/struct.html
+ en: Python struct module
- key: py_textwrap
url: https://docs.python.org/3/library/textwrap.html
en: Python textwrap module
@@ -287,6 +287,9 @@
- key: pytest
url: https://docs.pytest.org/
en: pytest testing framework
+- key: pytest_approx
+ url: https://docs.pytest.org/en/4.6.x/reference.html#pytest-approx
+ en: pytest approximate equality
- key: python
url: https://www.python.org/
en: Python
@@ -316,9 +319,9 @@
- key: sinel_joseph
url: https://en.wikipedia.org/wiki/Joseph_Claude_Sinel
en: Joseph Sinel
-- key: sphinx
- url: https://www.sphinx-doc.org/
- en: Sphinx
+- key: snakemake
+ url: https://snakemake.readthedocs.io/
+ en: Snakemake
- key: sqlite
url: https://sqlite.org/
en: SQLite
@@ -334,6 +337,9 @@
- key: t3_personas
url: https://teachtogether.tech/en/index.html#s:process-personas
en: Learner personas
+- key: textualize_fraction
+ url: https://www.textualize.io/blog/posts/7-things-about-terminals
+ en: "A clever use of the `Fraction` package"
# U
@@ -343,6 +349,9 @@
- key: ungc
url: https://www.unglobalcompact.org/what-is-gc/mission/principles
en: United Nations Global Compact
+- key: unicode
+ url: https://www.unicode.org/
+ en: Unicode Consortium
- key: unix_glob
url: "https://en.wikipedia.org/wiki/Glob_(programming)"
en: globbing
diff --git a/src/archive/.mccole b/src/archive/.mccole
index b6188cfde..59851595d 100644
--- a/src/archive/.mccole
+++ b/src/archive/.mccole
@@ -1,2 +1,5 @@
exclude:
- sample_dir
+unreferenced:
+- sample_dir/*
+- sample_dir.sh
diff --git a/src/db/.mccole b/src/db/.mccole
new file mode 100644
index 000000000..d10820f23
--- /dev/null
+++ b/src/db/.mccole
@@ -0,0 +1,3 @@
+unreferenced:
+- test_db.py
+- test_records.py
diff --git a/src/interp/.mccole b/src/interp/.mccole
new file mode 100644
index 000000000..109021b06
--- /dev/null
+++ b/src/interp/.mccole
@@ -0,0 +1,3 @@
+unreferenced:
+- doubling.sh
+- vars.sh
diff --git a/src/intro/slides.html b/src/intro/slides.html
index c20789fa7..945d5d221 100644
--- a/src/intro/slides.html
+++ b/src/intro/slides.html
@@ -129,7 +129,7 @@
- This one's for Mike and both Jons:
+ This one's for Mike and Jon:
I'm glad you always found time to chat.
diff --git a/src/layout/.mccole b/src/layout/.mccole
new file mode 100644
index 000000000..b047d4001
--- /dev/null
+++ b/src/layout/.mccole
@@ -0,0 +1,4 @@
+unreferenced:
+- test_easy_mode.sh
+- test_placed.sh
+- test_wrapped.sh
diff --git a/src/lint/.mccole b/src/lint/.mccole
new file mode 100644
index 000000000..dad99c24a
--- /dev/null
+++ b/src/lint/.mccole
@@ -0,0 +1,6 @@
+unreferenced:
+- double.py
+- find_duplicate_keys.sh
+- find_unused_variables.sh
+- inheritance_example.out
+- inheritance_example.sh
diff --git a/src/pack/.mccole b/src/pack/.mccole
new file mode 100644
index 000000000..f5b4f1a30
--- /dev/null
+++ b/src/pack/.mccole
@@ -0,0 +1,3 @@
+unreferenced:
+- exhaustive.sh
+- manual.sh
diff --git a/src/pack/index.md b/src/pack/index.md
index 2d65e2d08..088330d51 100644
--- a/src/pack/index.md
+++ b/src/pack/index.md
@@ -218,6 +218,7 @@ the recursive calls must have included exactly one version of each package,
so the combination is appended to the accumulator.
[% inc file="manual.py" keep="make" %]
+[% inc file="manual.out" %]
[% figure
slug="pack-recursive"
diff --git a/src/parse/.mccole b/src/parse/.mccole
new file mode 100644
index 000000000..abba05377
--- /dev/null
+++ b/src/parse/.mccole
@@ -0,0 +1,2 @@
+unreferenced:
+- test_better_parser.py
diff --git a/unused/links.yml b/unused/links.yml
index 15488e854..bade05b03 100644
--- a/unused/links.yml
+++ b/unused/links.yml
@@ -16,6 +16,9 @@
- key: log_structured_storage
url: http://blog.notdot.net/2009/12/Damn-Cool-Algorithms-Log-structured-storage
en: "Damn Cool Algorithms: Log structured storage"
+- key: mkdocs
+ url: https://www.mkdocs.org/
+ en: MkDocs
- key: nash_joe
url: https://hachyderm.io/@joenash
en: Joe Nash
@@ -25,33 +28,18 @@
- key: pereira_juanan
url: https://ikasten.io/
en: Juanan Pereira
-- key: py_fractions
- url: https://docs.python.org/3/library/fractions.html
- en: Python fractions module
-- key: py_struct
- url: https://docs.python.org/3/library/struct.html
- en: Python struct module
- key: py_yaml
url: https://pypi.org/project/PyYAML/
en: Python YAML module
- key: py_zipfile
url: https://docs.python.org/3/library/zipfile.html
en: Python ZIP archive module
-- key: pytest_approx
- url: https://docs.pytest.org/en/4.6.x/reference.html#pytest-approx
- en: pytest approximate equality
- key: pytest_stdout
url: https://docs.pytest.org/en/6.2.x/capture.html
en: Capturing standard output with pytest
- key: smith_dave
url: https://davewsmith.com/
en: Dave Smith
-- key: snakemake
- url: https://snakemake.readthedocs.io/
- en: Snakemake
-- key: textualize_fraction
- url: https://www.textualize.io/blog/posts/7-things-about-terminals
- en: "A clever use of the `Fraction` package"
-- key: unicode
- url: https://www.unicode.org/
- en: Unicode Consortium
+- key: sphinx
+ url: https://www.sphinx-doc.org/
+ en: Sphinx