python-clu 0.11.2__tar.gz → 0.11.4__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (269) hide show
  1. {python_clu-0.11.2 → python_clu-0.11.4}/.bumpversion.toml +1 -1
  2. {python_clu-0.11.2 → python_clu-0.11.4}/Makefile +1 -2
  3. {python_clu-0.11.2 → python_clu-0.11.4}/PKG-INFO +1 -1
  4. {python_clu-0.11.2 → python_clu-0.11.4}/README.md +3 -0
  5. python_clu-0.11.4/clu/__version__.py +1 -0
  6. {python_clu-0.11.2 → python_clu-0.11.4}/clu/constants/data.py +60 -0
  7. {python_clu-0.11.2 → python_clu-0.11.4}/clu/scripts/repl.py +39 -14
  8. {python_clu-0.11.2 → python_clu-0.11.4}/python_clu.egg-info/PKG-INFO +1 -1
  9. {python_clu-0.11.2 → python_clu-0.11.4}/setup.py +1 -1
  10. python_clu-0.11.2/clu/__version__.py +0 -1
  11. {python_clu-0.11.2 → python_clu-0.11.4}/.coveragerc +0 -0
  12. {python_clu-0.11.2 → python_clu-0.11.4}/.editorconfig +0 -0
  13. {python_clu-0.11.2 → python_clu-0.11.4}/.gitchangelog.rc +0 -0
  14. {python_clu-0.11.2 → python_clu-0.11.4}/.gitignore +0 -0
  15. {python_clu-0.11.2 → python_clu-0.11.4}/.landscape.yml +0 -0
  16. {python_clu-0.11.2 → python_clu-0.11.4}/.travis.yml +0 -0
  17. {python_clu-0.11.2 → python_clu-0.11.4}/ABOUT.md +0 -0
  18. {python_clu-0.11.2 → python_clu-0.11.4}/CHANGELOG.md +0 -0
  19. {python_clu-0.11.2 → python_clu-0.11.4}/CLASSIFIERS.txt +0 -0
  20. {python_clu-0.11.2 → python_clu-0.11.4}/CODE_OF_CONDUCT.md +0 -0
  21. {python_clu-0.11.2 → python_clu-0.11.4}/COPYING.md +0 -0
  22. {python_clu-0.11.2 → python_clu-0.11.4}/LICENSE.txt +0 -0
  23. {python_clu-0.11.2 → python_clu-0.11.4}/MANIFEST.in +0 -0
  24. {python_clu-0.11.2 → python_clu-0.11.4}/appveyor.yml +0 -0
  25. {python_clu-0.11.2 → python_clu-0.11.4}/clu/__init__.py +0 -0
  26. {python_clu-0.11.2 → python_clu-0.11.4}/clu/__main__.py +0 -0
  27. {python_clu-0.11.2 → python_clu-0.11.4}/clu/abstract.py +0 -0
  28. {python_clu-0.11.2 → python_clu-0.11.4}/clu/all.py +0 -0
  29. {python_clu-0.11.2 → python_clu-0.11.4}/clu/api/__init__.py +0 -0
  30. {python_clu-0.11.2 → python_clu-0.11.4}/clu/api/__main__.py +0 -0
  31. {python_clu-0.11.2 → python_clu-0.11.4}/clu/application.py +0 -0
  32. {python_clu-0.11.2 → python_clu-0.11.4}/clu/compilation/__init__.py +0 -0
  33. {python_clu-0.11.2 → python_clu-0.11.4}/clu/compilation/compiledb.py +0 -0
  34. {python_clu-0.11.2 → python_clu-0.11.4}/clu/compilation/macros.py +0 -0
  35. {python_clu-0.11.2 → python_clu-0.11.4}/clu/config/__init__.py +0 -0
  36. {python_clu-0.11.2 → python_clu-0.11.4}/clu/config/abc.py +0 -0
  37. {python_clu-0.11.2 → python_clu-0.11.4}/clu/config/base.py +0 -0
  38. {python_clu-0.11.2 → python_clu-0.11.4}/clu/config/codecs.py +0 -0
  39. {python_clu-0.11.2 → python_clu-0.11.4}/clu/config/env.py +0 -0
  40. {python_clu-0.11.2 → python_clu-0.11.4}/clu/config/fieldtypes.py +0 -0
  41. {python_clu-0.11.2 → python_clu-0.11.4}/clu/config/filebase.py +0 -0
  42. {python_clu-0.11.2 → python_clu-0.11.4}/clu/config/formats/__init__.py +0 -0
  43. {python_clu-0.11.2 → python_clu-0.11.4}/clu/config/formats/jsonfile.py +0 -0
  44. {python_clu-0.11.2 → python_clu-0.11.4}/clu/config/formats/picklefile.py +0 -0
  45. {python_clu-0.11.2 → python_clu-0.11.4}/clu/config/formats/tomlfile.py +0 -0
  46. {python_clu-0.11.2 → python_clu-0.11.4}/clu/config/formats/yamlfile.py +0 -0
  47. {python_clu-0.11.2 → python_clu-0.11.4}/clu/config/keymap.py +0 -0
  48. {python_clu-0.11.2 → python_clu-0.11.4}/clu/config/keymapview.py +0 -0
  49. {python_clu-0.11.2 → python_clu-0.11.4}/clu/config/ns.py +0 -0
  50. {python_clu-0.11.2 → python_clu-0.11.4}/clu/config/proxy.py +0 -0
  51. {python_clu-0.11.2 → python_clu-0.11.4}/clu/config/settings.py +0 -0
  52. {python_clu-0.11.2 → python_clu-0.11.4}/clu/constants/__init__.py +0 -0
  53. {python_clu-0.11.2 → python_clu-0.11.4}/clu/constants/__main__.py +0 -0
  54. {python_clu-0.11.2 → python_clu-0.11.4}/clu/constants/consts.py +0 -0
  55. {python_clu-0.11.2 → python_clu-0.11.4}/clu/constants/enums.py +0 -0
  56. {python_clu-0.11.2 → python_clu-0.11.4}/clu/constants/exceptions.py +0 -0
  57. {python_clu-0.11.2 → python_clu-0.11.4}/clu/constants/polyfills.py +0 -0
  58. {python_clu-0.11.2 → python_clu-0.11.4}/clu/csv.py +0 -0
  59. {python_clu-0.11.2 → python_clu-0.11.4}/clu/dicts.py +0 -0
  60. {python_clu-0.11.2 → python_clu-0.11.4}/clu/dispatch.py +0 -0
  61. {python_clu-0.11.2 → python_clu-0.11.4}/clu/enums.py +0 -0
  62. {python_clu-0.11.2 → python_clu-0.11.4}/clu/exporting.py +0 -0
  63. {python_clu-0.11.2 → python_clu-0.11.4}/clu/extending.py +0 -0
  64. {python_clu-0.11.2 → python_clu-0.11.4}/clu/fs/__init__.py +0 -0
  65. {python_clu-0.11.2 → python_clu-0.11.4}/clu/fs/abc.py +0 -0
  66. {python_clu-0.11.2 → python_clu-0.11.4}/clu/fs/appdirectories.py +0 -0
  67. {python_clu-0.11.2 → python_clu-0.11.4}/clu/fs/filesystem.py +0 -0
  68. {python_clu-0.11.2 → python_clu-0.11.4}/clu/fs/misc.py +0 -0
  69. {python_clu-0.11.2 → python_clu-0.11.4}/clu/fs/pypath.py +0 -0
  70. {python_clu-0.11.2 → python_clu-0.11.4}/clu/fs/sourcetree.py +0 -0
  71. {python_clu-0.11.2 → python_clu-0.11.4}/clu/importing/__init__.py +0 -0
  72. {python_clu-0.11.2 → python_clu-0.11.4}/clu/importing/__main__.py +0 -0
  73. {python_clu-0.11.2 → python_clu-0.11.4}/clu/importing/base.py +0 -0
  74. {python_clu-0.11.2 → python_clu-0.11.4}/clu/importing/proxy.py +0 -0
  75. {python_clu-0.11.2 → python_clu-0.11.4}/clu/keyvalue.py +0 -0
  76. {python_clu-0.11.2 → python_clu-0.11.4}/clu/mathematics.py +0 -0
  77. {python_clu-0.11.2 → python_clu-0.11.4}/clu/naming.py +0 -0
  78. {python_clu-0.11.2 → python_clu-0.11.4}/clu/predicates.py +0 -0
  79. {python_clu-0.11.2 → python_clu-0.11.4}/clu/repl/__init__.py +0 -0
  80. {python_clu-0.11.2 → python_clu-0.11.4}/clu/repl/ansi.py +0 -0
  81. {python_clu-0.11.2 → python_clu-0.11.4}/clu/repl/banners.py +0 -0
  82. {python_clu-0.11.2 → python_clu-0.11.4}/clu/repl/cli/__init__.py +0 -0
  83. {python_clu-0.11.2 → python_clu-0.11.4}/clu/repl/cli/boilerplate.py +0 -0
  84. {python_clu-0.11.2 → python_clu-0.11.4}/clu/repl/cli/boilerplate_copy.py +0 -0
  85. {python_clu-0.11.2 → python_clu-0.11.4}/clu/repl/cli/print_version.py +0 -0
  86. {python_clu-0.11.2 → python_clu-0.11.4}/clu/repl/columnize.py +0 -0
  87. {python_clu-0.11.2 → python_clu-0.11.4}/clu/repl/modules.py +0 -0
  88. {python_clu-0.11.2 → python_clu-0.11.4}/clu/repr.py +0 -0
  89. {python_clu-0.11.2 → python_clu-0.11.4}/clu/sanitizer.py +0 -0
  90. {python_clu-0.11.2 → python_clu-0.11.4}/clu/scripts/.gitignore +0 -0
  91. {python_clu-0.11.2 → python_clu-0.11.4}/clu/scripts/README.md +0 -0
  92. {python_clu-0.11.2 → python_clu-0.11.4}/clu/scripts/__init__.py +0 -0
  93. {python_clu-0.11.2 → python_clu-0.11.4}/clu/scripts/ansicolors.py +0 -0
  94. {python_clu-0.11.2 → python_clu-0.11.4}/clu/scripts/boilerplate.py +0 -0
  95. {python_clu-0.11.2 → python_clu-0.11.4}/clu/scripts/dictroast.py +0 -0
  96. {python_clu-0.11.2 → python_clu-0.11.4}/clu/scripts/legacy/forkumask.py +0 -0
  97. {python_clu-0.11.2 → python_clu-0.11.4}/clu/scripts/legacy/repl-bpython.py +0 -0
  98. {python_clu-0.11.2 → python_clu-0.11.4}/clu/scripts/legacy/repl-ipython.py +0 -0
  99. {python_clu-0.11.2 → python_clu-0.11.4}/clu/scripts/legacy/repl-ptpython.py +0 -0
  100. {python_clu-0.11.2 → python_clu-0.11.4}/clu/scripts/legacy/repl-pyzo.py +0 -0
  101. {python_clu-0.11.2 → python_clu-0.11.4}/clu/scripts/legacy/xdg-runtime.py +0 -0
  102. {python_clu-0.11.2 → python_clu-0.11.4}/clu/scripts/prediversus.py +0 -0
  103. {python_clu-0.11.2 → python_clu-0.11.4}/clu/scripts/treeline.py +0 -0
  104. {python_clu-0.11.2 → python_clu-0.11.4}/clu/shelving/__init__.py +0 -0
  105. {python_clu-0.11.2 → python_clu-0.11.4}/clu/shelving/redat.py +0 -0
  106. {python_clu-0.11.2 → python_clu-0.11.4}/clu/shelving/redis.conf +0 -0
  107. {python_clu-0.11.2 → python_clu-0.11.4}/clu/stdio.py +0 -0
  108. {python_clu-0.11.2 → python_clu-0.11.4}/clu/testing/__init__.py +0 -0
  109. {python_clu-0.11.2 → python_clu-0.11.4}/clu/testing/hook.py +0 -0
  110. {python_clu-0.11.2 → python_clu-0.11.4}/clu/testing/obsolete.py +0 -0
  111. {python_clu-0.11.2 → python_clu-0.11.4}/clu/testing/pytest.py +0 -0
  112. {python_clu-0.11.2 → python_clu-0.11.4}/clu/testing/utils.py +0 -0
  113. {python_clu-0.11.2 → python_clu-0.11.4}/clu/typespace/__init__.py +0 -0
  114. {python_clu-0.11.2 → python_clu-0.11.4}/clu/typespace/__main__.py +0 -0
  115. {python_clu-0.11.2 → python_clu-0.11.4}/clu/typespace/namespace.py +0 -0
  116. {python_clu-0.11.2 → python_clu-0.11.4}/clu/typology.py +0 -0
  117. {python_clu-0.11.2 → python_clu-0.11.4}/clu/version/__init__.py +0 -0
  118. {python_clu-0.11.2 → python_clu-0.11.4}/clu/version/__main__.py +0 -0
  119. {python_clu-0.11.2 → python_clu-0.11.4}/clu/version/git_version.py +0 -0
  120. {python_clu-0.11.2 → python_clu-0.11.4}/clu/version/read_version.py +0 -0
  121. {python_clu-0.11.2 → python_clu-0.11.4}/codecov.yml +0 -0
  122. {python_clu-0.11.2 → python_clu-0.11.4}/conftest.py +0 -0
  123. {python_clu-0.11.2 → python_clu-0.11.4}/docs/Makefile +0 -0
  124. {python_clu-0.11.2 → python_clu-0.11.4}/docs/build/doctrees/api.doctree +0 -0
  125. {python_clu-0.11.2 → python_clu-0.11.4}/docs/build/doctrees/environment.pickle +0 -0
  126. {python_clu-0.11.2 → python_clu-0.11.4}/docs/build/doctrees/generated/clu.doctree +0 -0
  127. {python_clu-0.11.2 → python_clu-0.11.4}/docs/build/doctrees/index.doctree +0 -0
  128. {python_clu-0.11.2 → python_clu-0.11.4}/docs/build/html/.buildinfo +0 -0
  129. {python_clu-0.11.2 → python_clu-0.11.4}/docs/build/html/_sources/api.rst.txt +0 -0
  130. {python_clu-0.11.2 → python_clu-0.11.4}/docs/build/html/_sources/generated/clu.rst.txt +0 -0
  131. {python_clu-0.11.2 → python_clu-0.11.4}/docs/build/html/_sources/index.rst.txt +0 -0
  132. {python_clu-0.11.2 → python_clu-0.11.4}/docs/build/html/_static/_sphinx_javascript_frameworks_compat.js +0 -0
  133. {python_clu-0.11.2 → python_clu-0.11.4}/docs/build/html/_static/alabaster.css +0 -0
  134. {python_clu-0.11.2 → python_clu-0.11.4}/docs/build/html/_static/basic.css +0 -0
  135. {python_clu-0.11.2 → python_clu-0.11.4}/docs/build/html/_static/css/badge_only.css +0 -0
  136. {python_clu-0.11.2 → python_clu-0.11.4}/docs/build/html/_static/css/fonts/Roboto-Slab-Bold.woff +0 -0
  137. {python_clu-0.11.2 → python_clu-0.11.4}/docs/build/html/_static/css/fonts/Roboto-Slab-Bold.woff2 +0 -0
  138. {python_clu-0.11.2 → python_clu-0.11.4}/docs/build/html/_static/css/fonts/Roboto-Slab-Regular.woff +0 -0
  139. {python_clu-0.11.2 → python_clu-0.11.4}/docs/build/html/_static/css/fonts/Roboto-Slab-Regular.woff2 +0 -0
  140. {python_clu-0.11.2 → python_clu-0.11.4}/docs/build/html/_static/css/fonts/fontawesome-webfont.eot +0 -0
  141. {python_clu-0.11.2 → python_clu-0.11.4}/docs/build/html/_static/css/fonts/fontawesome-webfont.svg +0 -0
  142. {python_clu-0.11.2 → python_clu-0.11.4}/docs/build/html/_static/css/fonts/fontawesome-webfont.ttf +0 -0
  143. {python_clu-0.11.2 → python_clu-0.11.4}/docs/build/html/_static/css/fonts/fontawesome-webfont.woff +0 -0
  144. {python_clu-0.11.2 → python_clu-0.11.4}/docs/build/html/_static/css/fonts/fontawesome-webfont.woff2 +0 -0
  145. {python_clu-0.11.2 → python_clu-0.11.4}/docs/build/html/_static/css/fonts/lato-bold-italic.woff +0 -0
  146. {python_clu-0.11.2 → python_clu-0.11.4}/docs/build/html/_static/css/fonts/lato-bold-italic.woff2 +0 -0
  147. {python_clu-0.11.2 → python_clu-0.11.4}/docs/build/html/_static/css/fonts/lato-bold.woff +0 -0
  148. {python_clu-0.11.2 → python_clu-0.11.4}/docs/build/html/_static/css/fonts/lato-bold.woff2 +0 -0
  149. {python_clu-0.11.2 → python_clu-0.11.4}/docs/build/html/_static/css/fonts/lato-normal-italic.woff +0 -0
  150. {python_clu-0.11.2 → python_clu-0.11.4}/docs/build/html/_static/css/fonts/lato-normal-italic.woff2 +0 -0
  151. {python_clu-0.11.2 → python_clu-0.11.4}/docs/build/html/_static/css/fonts/lato-normal.woff +0 -0
  152. {python_clu-0.11.2 → python_clu-0.11.4}/docs/build/html/_static/css/fonts/lato-normal.woff2 +0 -0
  153. {python_clu-0.11.2 → python_clu-0.11.4}/docs/build/html/_static/css/theme.css +0 -0
  154. {python_clu-0.11.2 → python_clu-0.11.4}/docs/build/html/_static/custom.css +0 -0
  155. {python_clu-0.11.2 → python_clu-0.11.4}/docs/build/html/_static/doctools.js +0 -0
  156. {python_clu-0.11.2 → python_clu-0.11.4}/docs/build/html/_static/documentation_options.js +0 -0
  157. {python_clu-0.11.2 → python_clu-0.11.4}/docs/build/html/_static/file.png +0 -0
  158. {python_clu-0.11.2 → python_clu-0.11.4}/docs/build/html/_static/jquery-3.6.0.js +0 -0
  159. {python_clu-0.11.2 → python_clu-0.11.4}/docs/build/html/_static/jquery.js +0 -0
  160. {python_clu-0.11.2 → python_clu-0.11.4}/docs/build/html/_static/js/badge_only.js +0 -0
  161. {python_clu-0.11.2 → python_clu-0.11.4}/docs/build/html/_static/js/html5shiv-printshiv.min.js +0 -0
  162. {python_clu-0.11.2 → python_clu-0.11.4}/docs/build/html/_static/js/html5shiv.min.js +0 -0
  163. {python_clu-0.11.2 → python_clu-0.11.4}/docs/build/html/_static/js/theme.js +0 -0
  164. {python_clu-0.11.2 → python_clu-0.11.4}/docs/build/html/_static/language_data.js +0 -0
  165. {python_clu-0.11.2 → python_clu-0.11.4}/docs/build/html/_static/minus.png +0 -0
  166. {python_clu-0.11.2 → python_clu-0.11.4}/docs/build/html/_static/plus.png +0 -0
  167. {python_clu-0.11.2 → python_clu-0.11.4}/docs/build/html/_static/pygments.css +0 -0
  168. {python_clu-0.11.2 → python_clu-0.11.4}/docs/build/html/_static/searchtools.js +0 -0
  169. {python_clu-0.11.2 → python_clu-0.11.4}/docs/build/html/_static/underscore-1.13.1.js +0 -0
  170. {python_clu-0.11.2 → python_clu-0.11.4}/docs/build/html/_static/underscore.js +0 -0
  171. {python_clu-0.11.2 → python_clu-0.11.4}/docs/build/html/api.html +0 -0
  172. {python_clu-0.11.2 → python_clu-0.11.4}/docs/build/html/generated/clu.html +0 -0
  173. {python_clu-0.11.2 → python_clu-0.11.4}/docs/build/html/genindex.html +0 -0
  174. {python_clu-0.11.2 → python_clu-0.11.4}/docs/build/html/index.html +0 -0
  175. {python_clu-0.11.2 → python_clu-0.11.4}/docs/build/html/objects.inv +0 -0
  176. {python_clu-0.11.2 → python_clu-0.11.4}/docs/build/html/py-modindex.html +0 -0
  177. {python_clu-0.11.2 → python_clu-0.11.4}/docs/build/html/search.html +0 -0
  178. {python_clu-0.11.2 → python_clu-0.11.4}/docs/build/html/searchindex.js +0 -0
  179. {python_clu-0.11.2 → python_clu-0.11.4}/docs/build/man/clu.1 +0 -0
  180. {python_clu-0.11.2 → python_clu-0.11.4}/docs/make.bat +0 -0
  181. {python_clu-0.11.2 → python_clu-0.11.4}/docs/source/api.rst +0 -0
  182. {python_clu-0.11.2 → python_clu-0.11.4}/docs/source/conf.py +0 -0
  183. {python_clu-0.11.2 → python_clu-0.11.4}/docs/source/generated/clu.rst +0 -0
  184. {python_clu-0.11.2 → python_clu-0.11.4}/docs/source/index.rst +0 -0
  185. {python_clu-0.11.2 → python_clu-0.11.4}/hooks/autohook.sh +0 -0
  186. {python_clu-0.11.2 → python_clu-0.11.4}/hooks/post-push/00-coverage.sh +0 -0
  187. {python_clu-0.11.2 → python_clu-0.11.4}/hooks/pre-push/00-noop.sh +0 -0
  188. {python_clu-0.11.2 → python_clu-0.11.4}/hooks/pre-push/01-direnv-stdlib.sh +0 -0
  189. {python_clu-0.11.2 → python_clu-0.11.4}/hooks/scripts/coverage.sh +0 -0
  190. {python_clu-0.11.2 → python_clu-0.11.4}/hooks/scripts/display-issues.sh +0 -0
  191. {python_clu-0.11.2 → python_clu-0.11.4}/hooks/scripts/git-pushex +0 -0
  192. {python_clu-0.11.2 → python_clu-0.11.4}/hooks/scripts/noop.sh +0 -0
  193. {python_clu-0.11.2 → python_clu-0.11.4}/mypy.ini +0 -0
  194. {python_clu-0.11.2 → python_clu-0.11.4}/noxfile.py +0 -0
  195. {python_clu-0.11.2 → python_clu-0.11.4}/pyproject.toml +0 -0
  196. {python_clu-0.11.2 → python_clu-0.11.4}/pytest.ini +0 -0
  197. {python_clu-0.11.2 → python_clu-0.11.4}/python_clu.egg-info/SOURCES.txt +0 -0
  198. {python_clu-0.11.2 → python_clu-0.11.4}/python_clu.egg-info/dependency_links.txt +0 -0
  199. {python_clu-0.11.2 → python_clu-0.11.4}/python_clu.egg-info/entry_points.txt +0 -0
  200. {python_clu-0.11.2 → python_clu-0.11.4}/python_clu.egg-info/requires.txt +0 -0
  201. {python_clu-0.11.2 → python_clu-0.11.4}/python_clu.egg-info/top_level.txt +0 -0
  202. {python_clu-0.11.2 → python_clu-0.11.4}/python_clu.egg-info/zip-safe +0 -0
  203. {python_clu-0.11.2 → python_clu-0.11.4}/pytype.cfg +0 -0
  204. {python_clu-0.11.2 → python_clu-0.11.4}/requirements/changelog.txt +0 -0
  205. {python_clu-0.11.2 → python_clu-0.11.4}/requirements/dev.txt +0 -0
  206. {python_clu-0.11.2 → python_clu-0.11.4}/requirements/docs.txt +0 -0
  207. {python_clu-0.11.2 → python_clu-0.11.4}/requirements/install.txt +0 -0
  208. {python_clu-0.11.2 → python_clu-0.11.4}/requirements/nox/codecov.txt +0 -0
  209. {python_clu-0.11.2 → python_clu-0.11.4}/requirements/nox/docs.txt +0 -0
  210. {python_clu-0.11.2 → python_clu-0.11.4}/requirements/nox/manifest.txt +0 -0
  211. {python_clu-0.11.2 → python_clu-0.11.4}/requirements/nox/repl.txt +0 -0
  212. {python_clu-0.11.2 → python_clu-0.11.4}/requirements/nox/tests.txt +0 -0
  213. {python_clu-0.11.2 → python_clu-0.11.4}/requirements/tox.txt +0 -0
  214. {python_clu-0.11.2 → python_clu-0.11.4}/requirements/typecheck.txt +0 -0
  215. {python_clu-0.11.2 → python_clu-0.11.4}/scratch/direnv_transformed_env.py +0 -0
  216. {python_clu-0.11.2 → python_clu-0.11.4}/scratch/inline-tests-ImportError-uggggh.ipynb +0 -0
  217. {python_clu-0.11.2 → python_clu-0.11.4}/scratch/nteract.ipynb +0 -0
  218. {python_clu-0.11.2 → python_clu-0.11.4}/setup.cfg +0 -0
  219. {python_clu-0.11.2 → python_clu-0.11.4}/tests/__init__.py +0 -0
  220. {python_clu-0.11.2 → python_clu-0.11.4}/tests/data/1-58.jpg +0 -0
  221. {python_clu-0.11.2 → python_clu-0.11.4}/tests/data/3471426989_aa8e83cac5_o.jpg +0 -0
  222. {python_clu-0.11.2 → python_clu-0.11.4}/tests/data/3472236406_1fbf1a567d_o.jpg +0 -0
  223. {python_clu-0.11.2 → python_clu-0.11.4}/tests/data/8600JC.jpg +0 -0
  224. {python_clu-0.11.2 → python_clu-0.11.4}/tests/data/8ba.png +0 -0
  225. {python_clu-0.11.2 → python_clu-0.11.4}/tests/data/IMG_20180505_205153567.jpg +0 -0
  226. {python_clu-0.11.2 → python_clu-0.11.4}/tests/data/cheetah-003.jpg +0 -0
  227. {python_clu-0.11.2 → python_clu-0.11.4}/tests/data/config/clu-config.toml +0 -0
  228. {python_clu-0.11.2 → python_clu-0.11.4}/tests/data/config/yodogg.toml +0 -0
  229. {python_clu-0.11.2 → python_clu-0.11.4}/tests/data/shutterstock_90194617.jpg +0 -0
  230. {python_clu-0.11.2 → python_clu-0.11.4}/tests/data/yodata/09163d51421853.5608b3c2a1be0.jpg +0 -0
  231. {python_clu-0.11.2 → python_clu-0.11.4}/tests/data/yodata/5d0227342500004e12e3506d.jpg +0 -0
  232. {python_clu-0.11.2 → python_clu-0.11.4}/tests/data/yodata/BlackCat2_large-22.jpg +0 -0
  233. {python_clu-0.11.2 → python_clu-0.11.4}/tests/data/yodogg/Serval_Cat_Kitten-706.jpg +0 -0
  234. {python_clu-0.11.2 → python_clu-0.11.4}/tests/data/yodogg/Servals_Thoiry_19801.jpg +0 -0
  235. {python_clu-0.11.2 → python_clu-0.11.4}/tests/data/yodogg/video-pride-serval.jpg +0 -0
  236. {python_clu-0.11.2 → python_clu-0.11.4}/tests/test_abstract.py +0 -0
  237. {python_clu-0.11.2 → python_clu-0.11.4}/tests/test_all.py +0 -0
  238. {python_clu-0.11.2 → python_clu-0.11.4}/tests/test_boilerplate.py +0 -0
  239. {python_clu-0.11.2 → python_clu-0.11.4}/tests/test_config.py +0 -0
  240. {python_clu-0.11.2 → python_clu-0.11.4}/tests/test_config_abc.py +0 -0
  241. {python_clu-0.11.2 → python_clu-0.11.4}/tests/test_csv.py +0 -0
  242. {python_clu-0.11.2 → python_clu-0.11.4}/tests/test_dicts.py +0 -0
  243. {python_clu-0.11.2 → python_clu-0.11.4}/tests/test_dispatch.py +0 -0
  244. {python_clu-0.11.2 → python_clu-0.11.4}/tests/test_enum_aliases.py +0 -0
  245. {python_clu-0.11.2 → python_clu-0.11.4}/tests/test_exporting.py +0 -0
  246. {python_clu-0.11.2 → python_clu-0.11.4}/tests/test_extending.py +0 -0
  247. {python_clu-0.11.2 → python_clu-0.11.4}/tests/test_fs_abc.py +0 -0
  248. {python_clu-0.11.2 → python_clu-0.11.4}/tests/test_fs_appdirectories.py +0 -0
  249. {python_clu-0.11.2 → python_clu-0.11.4}/tests/test_fs_filesystem.py +0 -0
  250. {python_clu-0.11.2 → python_clu-0.11.4}/tests/test_fs_misc.py +0 -0
  251. {python_clu-0.11.2 → python_clu-0.11.4}/tests/test_importing.py +0 -0
  252. {python_clu-0.11.2 → python_clu-0.11.4}/tests/test_keyvalue.py +0 -0
  253. {python_clu-0.11.2 → python_clu-0.11.4}/tests/test_mathematics.py +0 -0
  254. {python_clu-0.11.2 → python_clu-0.11.4}/tests/test_naming.py +0 -0
  255. {python_clu-0.11.2 → python_clu-0.11.4}/tests/test_predicates.py +0 -0
  256. {python_clu-0.11.2 → python_clu-0.11.4}/tests/test_repl_columnize.py +0 -0
  257. {python_clu-0.11.2 → python_clu-0.11.4}/tests/test_repl_modules.py +0 -0
  258. {python_clu-0.11.2 → python_clu-0.11.4}/tests/test_repr.py +0 -0
  259. {python_clu-0.11.2 → python_clu-0.11.4}/tests/test_scripts_repl.py +0 -0
  260. {python_clu-0.11.2 → python_clu-0.11.4}/tests/test_typespace_namespace.py +0 -0
  261. {python_clu-0.11.2 → python_clu-0.11.4}/tests/test_typology.py +0 -0
  262. {python_clu-0.11.2 → python_clu-0.11.4}/tests/test_version.py +0 -0
  263. {python_clu-0.11.2 → python_clu-0.11.4}/tests/yodogg/.tm_properties +0 -0
  264. {python_clu-0.11.2 → python_clu-0.11.4}/tests/yodogg/__init__.py +0 -0
  265. {python_clu-0.11.2 → python_clu-0.11.4}/tests/yodogg/yodogg/__init__.py +0 -0
  266. {python_clu-0.11.2 → python_clu-0.11.4}/tests/yodogg/yodogg/config.py +0 -0
  267. {python_clu-0.11.2 → python_clu-0.11.4}/tests/yodogg/yodogg/exporting.py +0 -0
  268. {python_clu-0.11.2 → python_clu-0.11.4}/tests/yodogg/yodogg/iheard.py +0 -0
  269. {python_clu-0.11.2 → python_clu-0.11.4}/tox.ini +0 -0
@@ -1,6 +1,6 @@
1
1
 
2
2
  [tool.bumpversion]
3
- current_version = "0.11.2"
3
+ current_version = "0.11.4"
4
4
  parse = "(?P<major>\\d+)\\.(?P<minor>\\d+)\\.(?P<patch>\\d+)"
5
5
  serialize = ["{major}.{minor}.{patch}"]
6
6
  search = "{current_version}"
@@ -93,8 +93,7 @@ changelog: remove-changelog
93
93
  gitchangelog > CHANGELOG.md
94
94
 
95
95
  repl:
96
- python -m bpython --config=$(PROJECT_ROOT)/.config/bpython/config.py3 \
97
- -i $(PROJECT_BASE)/clu/scripts/repl.py
96
+ python -m bpython --config=$(PROJECT_ROOT)/.config/bpython/config.py3 -i $(PROJECT_BASE)/clu/scripts/repl.py
98
97
 
99
98
  ipy:
100
99
  python -m IPython --autoindent --pylab --colors=LightBG \
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: python-clu
3
- Version: 0.11.2
3
+ Version: 0.11.4
4
4
  Summary: CLU - Common Lightweight Utilities, or Command-Line Utilities (your pick)
5
5
  Home-page: https://github.com/fish2000/clu
6
6
  Download-URL: https://github.com/fish2000/clu/zipball/master
@@ -3,6 +3,9 @@ CLU – Common Lightweight Utilities (née Command-Line Utilities)
3
3
 
4
4
  [![codecov](https://codecov.io/gh/fish2000/CLU/branch/master/graph/badge.svg)](https://codecov.io/gh/fish2000/CLU)
5
5
 
6
+ Install it right now! Type: `$ pip install -U python-clu`
7
+ ---------------------------------------------------------
8
+
6
9
  This is a packaged-up and sanely version-controlled version of [the Python tools I wrote for my REPLs](https://github.com/fish2000/homage/blob/master/.script-bin/replutilities.py), divided up into
7
10
  a bunch of subordinate packages:
8
11
 
@@ -0,0 +1 @@
1
+ __version__ = '0.11.4'
@@ -211,6 +211,66 @@ banners['python3.x'] = """
211
211
 
212
212
  """
213
213
 
214
+ banners['python3.15'] = """
215
+ 888 888 .d8888b. d888 888888888
216
+ 888 888 d88P Y88b d8888 888
217
+ 888 888 .d88P 888 888
218
+ 88888b. 888 888 888888 88888b. .d88b. 88888b. 8888" 888 8888888b.
219
+ 888 "88b 888 888 888 888 "88b d88""88b 888 "88b "Y8b. 888 "Y88b
220
+ 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888
221
+ 888 d88P Y88b 888 Y88b. 888 888 Y88..88P 888 888 Y88b d88P d8b 888 Y88b d88P
222
+ 88888P" "Y88888 "Y888 888 888 "Y88P" 888 888 "Y8888P" Y8P 8888888 "Y8888P"
223
+ 888 888
224
+ 888 Y8b d88P
225
+ 888 "Y88P"
226
+
227
+ """
228
+
229
+ banners['python3.14'] = """
230
+ 888 888 .d8888b. d888 d8888
231
+ 888 888 d88P Y88b d8888 d8P888
232
+ 888 888 .d88P 888 d8P 888
233
+ 88888b. 888 888 888888 88888b. .d88b. 88888b. 8888" 888 d8P 888
234
+ 888 "88b 888 888 888 888 "88b d88""88b 888 "88b "Y8b. 888 d88 888
235
+ 888 888 888 888 888 888 888 888 888 888 888 888 888 888 8888888888
236
+ 888 d88P Y88b 888 Y88b. 888 888 Y88..88P 888 888 Y88b d88P d8b 888 888
237
+ 88888P" "Y88888 "Y888 888 888 "Y88P" 888 888 "Y8888P" Y8P 8888888 888
238
+ 888 888
239
+ 888 Y8b d88P
240
+ 888 "Y88P"
241
+
242
+ """
243
+
244
+ banners['python3.13'] = """
245
+ 888 888 .d8888b. d888 .d8888b.
246
+ 888 888 d88P Y88b d8888 d88P Y88b
247
+ 888 888 .d88P 888 .d88P
248
+ 88888b. 888 888 888888 88888b. .d88b. 88888b. 8888" 888 8888"
249
+ 888 "88b 888 888 888 888 "88b d88""88b 888 "88b "Y8b. 888 "Y8b.
250
+ 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888
251
+ 888 d88P Y88b 888 Y88b. 888 888 Y88..88P 888 888 Y88b d88P d8b 888 Y88b d88P
252
+ 88888P" "Y88888 "Y888 888 888 "Y88P" 888 888 "Y8888P" Y8P 8888888 "Y8888P"
253
+ 888 888
254
+ 888 Y8b d88P
255
+ 888 "Y88P"
256
+
257
+ """
258
+
259
+ banners['python3.12'] = """
260
+ 888 888 .d8888b. d888 .d8888b.
261
+ 888 888 d88P Y88b d8888 d88P Y88b
262
+ 888 888 .d88P 888 888
263
+ 88888b. 888 888 888888 88888b. .d88b. 88888b. 8888" 888 .d88P
264
+ 888 "88b 888 888 888 888 "88b d88""88b 888 "88b "Y8b. 888 .od888P"
265
+ 888 888 888 888 888 888 888 888 888 888 888 888 888 888 d88P"
266
+ 888 d88P Y88b 888 Y88b. 888 888 Y88..88P 888 888 Y88b d88P d8b 888 888"
267
+ 88888P" "Y88888 "Y888 888 888 "Y88P" 888 888 "Y8888P" Y8P 8888888 888888888
268
+ 888 888
269
+ 888 Y8b d88P
270
+ 888 "Y88P"
271
+
272
+ """
273
+
214
274
  banners['python3.11'] = """
215
275
  888 888 .d8888b. d888 d888
216
276
  888 888 d88P Y88b d8888 d8888
@@ -27,15 +27,23 @@ repl.py – THE RUBRICK:
27
27
  from __future__ import print_function
28
28
 
29
29
  import importlib
30
+ import os.path
31
+ import runpy
32
+ import warnings
30
33
 
31
34
  from clu.all import import_clu_modules
35
+ from clu.config.env import Environ
36
+ from clu.constants import consts
32
37
  from clu.naming import nameof, qualified_import
33
- from clu.predicates import ispublic
38
+ from clu.predicates import ispublic, listify
39
+ from clu.repl import columnize
40
+
41
+ # Set up the __all__ tuple:
42
+ __all__ = list()
34
43
 
35
44
  # MODULE EXPORT FUNCTIONS: given a module name, export
36
45
  # either the module or its contents into a given namespace:
37
-
38
- def star_export(modulename, namespace):
46
+ def star_export(modulename, namespace, alltuple=__all__):
39
47
  """ Safely bind everything a module exports to a namespace. """
40
48
  try:
41
49
  module = qualified_import(modulename)
@@ -44,8 +52,9 @@ def star_export(modulename, namespace):
44
52
  for name in dir(module):
45
53
  if ispublic(name):
46
54
  namespace[name] = getattr(module, name)
55
+ alltuple += listify(name)
47
56
 
48
- def module_export(modulename, namespace):
57
+ def module_export(modulename, namespace, alltuple=__all__):
49
58
  """ Safely bind a module to a namespace. """
50
59
  try:
51
60
  module = qualified_import(modulename)
@@ -53,14 +62,12 @@ def module_export(modulename, namespace):
53
62
  module = importlib.import_module(modulename)
54
63
  name = nameof(module)
55
64
  namespace[modulename] = namespace[name] = module
65
+ alltuple += listify(name)
56
66
 
57
67
  # Warm up sys.modules and friends:
58
-
59
68
  import_clu_modules()
60
69
 
61
- # Set up the GLOBAL namespace and the __all__ tuple:
62
-
63
- __all__ = tuple()
70
+ # Set up the GLOBALS namespace:
64
71
  GLOBALS = globals()
65
72
 
66
73
  starmods = ('clu.repl.ansi',
@@ -126,7 +133,6 @@ for mod in mods:
126
133
 
127
134
  # Additionals and corner-cases – imports requiring their own
128
135
  # bespoke import-statement forms:
129
-
130
136
  import collections.abc
131
137
  from PIL import Image
132
138
  from pprint import pprint, pformat
@@ -135,11 +141,12 @@ pp = pprint
135
141
  ppt = lambda thing: pprint(tuple(thing))
136
142
 
137
143
  # These two imports trigger module-level __getattr__ actions:
138
-
139
144
  from clu.testing.utils import pout, inline
140
145
 
141
- # Not quite sure where to put this, for now:
146
+ # Append to __all__:
147
+ __all__ += ['pout', 'inline', 'pp', 'ppt']
142
148
 
149
+ # Not quite sure where to put this, for now:
143
150
  _explain = lambda thing=None: print(columnize(dir(thing),
144
151
  display_width=consts.SEPARATOR_WIDTH,
145
152
  ljust=True))
@@ -182,7 +189,7 @@ except (ImportError, SyntaxError, TypeError): # pragma: no cover
182
189
  pass
183
190
  else:
184
191
  # Extend `__all__`:
185
- __all__ += ('asset', 'image_paths', 'catimage')
192
+ __all__ += ['asset', 'image_paths', 'catimage']
186
193
  # Prepare a list of readily open-able image file paths:
187
194
  image_paths = list(map(
188
195
  lambda image_file: asset.path('img', image_file),
@@ -190,12 +197,30 @@ else:
190
197
  # I do this practically every time, so I might as well do it here:
191
198
  catimage = Image.open(image_paths[0])
192
199
 
193
- # Remove duplicate and invalid sys.paths:
200
+ # Access CLU app environment variables:
201
+ cluenv = Environ(appname=consts.APPNAME)
202
+
203
+ # If you, the user, set up a CLU_USER_SCRIPT environment variable
204
+ # before running this repl script, you can have it executed herein:
205
+ if 'user:script' in cluenv:
206
+ user_script_path = cluenv['user:script']
207
+ if os.path.exists(user_script_path):
208
+ user_script_globals = runpy.run_path(user_script_path)
209
+ GLOBALS.update(user_script_globals)
210
+ __all__ += list(filter(ispublic, user_script_globals.keys()))
211
+ else:
212
+ message = "CLU_USER_SCRIPT needs to point to a Python file"
213
+ warnings.simplefilter('always')
214
+ warnings.warn(stacklevel=2, message=message)
215
+
194
216
 
217
+ # Adjust __all__ again:
218
+ __all__ += ['_explain', 'explain', 'cluenv']
219
+
220
+ # Remove duplicate and invalid sys.paths:
195
221
  pypath.remove_invalid_paths()
196
222
 
197
223
  # Print the Python banner and/or warnings, messages, and other tripe:
198
-
199
224
  if __name__ == '__main__':
200
225
  # In theory, this will *not* run when repl.py
201
226
  # is loaded into a REPL using a “-i” flag:
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: python-clu
3
- Version: 0.11.2
3
+ Version: 0.11.4
4
4
  Summary: CLU - Common Lightweight Utilities, or Command-Line Utilities (your pick)
5
5
  Home-page: https://github.com/fish2000/clu
6
6
  Download-URL: https://github.com/fish2000/clu/zipball/master
@@ -91,7 +91,7 @@ try:
91
91
  '__version__.py')).read(),
92
92
  '__version__.py', 'exec'))
93
93
  except:
94
- __version__ = '0.11.2'
94
+ __version__ = '0.11.4'
95
95
 
96
96
  # PROJECT DESCRIPTION
97
97
  LONG_DESCRIPTION = project_content('ABOUT.md')
@@ -1 +0,0 @@
1
- __version__ = '0.11.2'
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes