bluer-objects 6.309.1__tar.gz → 6.317.1__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.

Potentially problematic release.


This version of bluer-objects might be problematic. Click here for more details.

Files changed (203) hide show
  1. {bluer_objects-6.309.1/bluer_objects.egg-info → bluer_objects-6.317.1}/PKG-INFO +2 -2
  2. {bluer_objects-6.309.1 → bluer_objects-6.317.1}/README.md +1 -1
  3. bluer_objects-6.317.1/bluer_objects/.abcli/file.sh +19 -0
  4. bluer_objects-6.317.1/bluer_objects/.abcli/tests/file.sh +64 -0
  5. {bluer_objects-6.309.1 → bluer_objects-6.317.1}/bluer_objects/.abcli/tests/help.sh +4 -0
  6. {bluer_objects-6.309.1 → bluer_objects-6.317.1}/bluer_objects/README/__init__.py +1 -0
  7. {bluer_objects-6.309.1 → bluer_objects-6.317.1}/bluer_objects/__init__.py +1 -1
  8. bluer_objects-6.317.1/bluer_objects/file/__main__.py +101 -0
  9. bluer_objects-6.317.1/bluer_objects/help/file.py +59 -0
  10. {bluer_objects-6.309.1 → bluer_objects-6.317.1}/bluer_objects/help/functions.py +2 -0
  11. {bluer_objects-6.309.1 → bluer_objects-6.317.1/bluer_objects.egg-info}/PKG-INFO +2 -2
  12. {bluer_objects-6.309.1 → bluer_objects-6.317.1}/bluer_objects.egg-info/SOURCES.txt +2 -0
  13. bluer_objects-6.309.1/bluer_objects/.abcli/file.sh +0 -8
  14. bluer_objects-6.309.1/bluer_objects/file/__main__.py +0 -56
  15. {bluer_objects-6.309.1 → bluer_objects-6.317.1}/LICENSE +0 -0
  16. {bluer_objects-6.309.1 → bluer_objects-6.317.1}/MANIFEST.in +0 -0
  17. {bluer_objects-6.309.1 → bluer_objects-6.317.1}/bluer_objects/.abcli/abcli.sh +0 -0
  18. {bluer_objects-6.309.1 → bluer_objects-6.317.1}/bluer_objects/.abcli/actions.sh +0 -0
  19. {bluer_objects-6.309.1 → bluer_objects-6.317.1}/bluer_objects/.abcli/aka.sh +0 -0
  20. {bluer_objects-6.309.1 → bluer_objects-6.317.1}/bluer_objects/.abcli/alias.sh +0 -0
  21. {bluer_objects-6.309.1 → bluer_objects-6.317.1}/bluer_objects/.abcli/assets/cd.sh +0 -0
  22. {bluer_objects-6.309.1 → bluer_objects-6.317.1}/bluer_objects/.abcli/assets/mv.sh +0 -0
  23. {bluer_objects-6.309.1 → bluer_objects-6.317.1}/bluer_objects/.abcli/assets/publish.sh +0 -0
  24. {bluer_objects-6.309.1 → bluer_objects-6.317.1}/bluer_objects/.abcli/assets.sh +0 -0
  25. {bluer_objects-6.309.1 → bluer_objects-6.317.1}/bluer_objects/.abcli/bluer_objects.sh +0 -0
  26. {bluer_objects-6.309.1 → bluer_objects-6.317.1}/bluer_objects/.abcli/clone.sh +0 -0
  27. {bluer_objects-6.309.1 → bluer_objects-6.317.1}/bluer_objects/.abcli/create_test_asset.sh +0 -0
  28. {bluer_objects-6.309.1 → bluer_objects-6.317.1}/bluer_objects/.abcli/download.sh +0 -0
  29. {bluer_objects-6.309.1 → bluer_objects-6.317.1}/bluer_objects/.abcli/gif.sh +0 -0
  30. {bluer_objects-6.309.1 → bluer_objects-6.317.1}/bluer_objects/.abcli/host.sh +0 -0
  31. {bluer_objects-6.309.1 → bluer_objects-6.317.1}/bluer_objects/.abcli/ls.sh +0 -0
  32. {bluer_objects-6.309.1 → bluer_objects-6.317.1}/bluer_objects/.abcli/metadata/get.sh +0 -0
  33. {bluer_objects-6.309.1 → bluer_objects-6.317.1}/bluer_objects/.abcli/metadata/post.sh +0 -0
  34. {bluer_objects-6.309.1 → bluer_objects-6.317.1}/bluer_objects/.abcli/metadata.sh +0 -0
  35. {bluer_objects-6.309.1 → bluer_objects-6.317.1}/bluer_objects/.abcli/mlflow/browse.sh +0 -0
  36. {bluer_objects-6.309.1 → bluer_objects-6.317.1}/bluer_objects/.abcli/mlflow/cache.sh +0 -0
  37. {bluer_objects-6.309.1 → bluer_objects-6.317.1}/bluer_objects/.abcli/mlflow/deploy.sh +0 -0
  38. {bluer_objects-6.309.1 → bluer_objects-6.317.1}/bluer_objects/.abcli/mlflow/list_registered_models.sh +0 -0
  39. {bluer_objects-6.309.1 → bluer_objects-6.317.1}/bluer_objects/.abcli/mlflow/lock/lock.sh +0 -0
  40. {bluer_objects-6.309.1 → bluer_objects-6.317.1}/bluer_objects/.abcli/mlflow/lock/unlock.sh +0 -0
  41. {bluer_objects-6.309.1 → bluer_objects-6.317.1}/bluer_objects/.abcli/mlflow/lock.sh +0 -0
  42. {bluer_objects-6.309.1 → bluer_objects-6.317.1}/bluer_objects/.abcli/mlflow/log_artifacts.sh +0 -0
  43. {bluer_objects-6.309.1 → bluer_objects-6.317.1}/bluer_objects/.abcli/mlflow/log_run.sh +0 -0
  44. {bluer_objects-6.309.1 → bluer_objects-6.317.1}/bluer_objects/.abcli/mlflow/run.sh +0 -0
  45. {bluer_objects-6.309.1 → bluer_objects-6.317.1}/bluer_objects/.abcli/mlflow/tags/clone.sh +0 -0
  46. {bluer_objects-6.309.1 → bluer_objects-6.317.1}/bluer_objects/.abcli/mlflow/tags/get.sh +0 -0
  47. {bluer_objects-6.309.1 → bluer_objects-6.317.1}/bluer_objects/.abcli/mlflow/tags/search.sh +0 -0
  48. {bluer_objects-6.309.1 → bluer_objects-6.317.1}/bluer_objects/.abcli/mlflow/tags/set.sh +0 -0
  49. {bluer_objects-6.309.1 → bluer_objects-6.317.1}/bluer_objects/.abcli/mlflow/tags.sh +0 -0
  50. {bluer_objects-6.309.1 → bluer_objects-6.317.1}/bluer_objects/.abcli/mlflow/test.sh +0 -0
  51. {bluer_objects-6.309.1 → bluer_objects-6.317.1}/bluer_objects/.abcli/mlflow/transition.sh +0 -0
  52. {bluer_objects-6.309.1 → bluer_objects-6.317.1}/bluer_objects/.abcli/mlflow.sh +0 -0
  53. {bluer_objects-6.309.1 → bluer_objects-6.317.1}/bluer_objects/.abcli/object.sh +0 -0
  54. {bluer_objects-6.309.1 → bluer_objects-6.317.1}/bluer_objects/.abcli/select.sh +0 -0
  55. {bluer_objects-6.309.1 → bluer_objects-6.317.1}/bluer_objects/.abcli/storage/clear.sh +0 -0
  56. {bluer_objects-6.309.1 → bluer_objects-6.317.1}/bluer_objects/.abcli/storage/status.sh +0 -0
  57. {bluer_objects-6.309.1 → bluer_objects-6.317.1}/bluer_objects/.abcli/storage.sh +0 -0
  58. {bluer_objects-6.309.1 → bluer_objects-6.317.1}/bluer_objects/.abcli/tests/README.sh +0 -0
  59. {bluer_objects-6.309.1 → bluer_objects-6.317.1}/bluer_objects/.abcli/tests/clone.sh +0 -0
  60. {bluer_objects-6.309.1 → bluer_objects-6.317.1}/bluer_objects/.abcli/tests/create_test_asset.sh +0 -0
  61. {bluer_objects-6.309.1 → bluer_objects-6.317.1}/bluer_objects/.abcli/tests/gif.sh +0 -0
  62. {bluer_objects-6.309.1 → bluer_objects-6.317.1}/bluer_objects/.abcli/tests/host.sh +0 -0
  63. {bluer_objects-6.309.1 → bluer_objects-6.317.1}/bluer_objects/.abcli/tests/ls.sh +0 -0
  64. {bluer_objects-6.309.1 → bluer_objects-6.317.1}/bluer_objects/.abcli/tests/metadata.sh +0 -0
  65. {bluer_objects-6.309.1 → bluer_objects-6.317.1}/bluer_objects/.abcli/tests/mlflow_cache.sh +0 -0
  66. {bluer_objects-6.309.1 → bluer_objects-6.317.1}/bluer_objects/.abcli/tests/mlflow_lock.sh +0 -0
  67. {bluer_objects-6.309.1 → bluer_objects-6.317.1}/bluer_objects/.abcli/tests/mlflow_logging.sh +0 -0
  68. {bluer_objects-6.309.1 → bluer_objects-6.317.1}/bluer_objects/.abcli/tests/mlflow_tags.sh +0 -0
  69. {bluer_objects-6.309.1 → bluer_objects-6.317.1}/bluer_objects/.abcli/tests/mlflow_test.sh +0 -0
  70. {bluer_objects-6.309.1 → bluer_objects-6.317.1}/bluer_objects/.abcli/tests/open.sh +0 -0
  71. {bluer_objects-6.309.1 → bluer_objects-6.317.1}/bluer_objects/.abcli/tests/open_gif_open.sh +0 -0
  72. {bluer_objects-6.309.1 → bluer_objects-6.317.1}/bluer_objects/.abcli/tests/storage_public_upload.sh +0 -0
  73. {bluer_objects-6.309.1 → bluer_objects-6.317.1}/bluer_objects/.abcli/tests/storage_upload_download.sh +0 -0
  74. {bluer_objects-6.309.1 → bluer_objects-6.317.1}/bluer_objects/.abcli/tests/version.sh +0 -0
  75. {bluer_objects-6.309.1 → bluer_objects-6.317.1}/bluer_objects/.abcli/tests/web_is_accessible.sh +0 -0
  76. {bluer_objects-6.309.1 → bluer_objects-6.317.1}/bluer_objects/.abcli/tests/web_where_am_ai.sh +0 -0
  77. {bluer_objects-6.309.1 → bluer_objects-6.317.1}/bluer_objects/.abcli/upload.sh +0 -0
  78. {bluer_objects-6.309.1 → bluer_objects-6.317.1}/bluer_objects/.abcli/url.sh +0 -0
  79. {bluer_objects-6.309.1 → bluer_objects-6.317.1}/bluer_objects/.abcli/web/is_accessible.sh +0 -0
  80. {bluer_objects-6.309.1 → bluer_objects-6.317.1}/bluer_objects/.abcli/web/where_am_i.sh +0 -0
  81. {bluer_objects-6.309.1 → bluer_objects-6.317.1}/bluer_objects/README/consts.py +0 -0
  82. {bluer_objects-6.309.1 → bluer_objects-6.317.1}/bluer_objects/README/functions.py +0 -0
  83. {bluer_objects-6.309.1 → bluer_objects-6.317.1}/bluer_objects/README/items.py +0 -0
  84. {bluer_objects-6.309.1 → bluer_objects-6.317.1}/bluer_objects/README/utils.py +0 -0
  85. {bluer_objects-6.309.1 → bluer_objects-6.317.1}/bluer_objects/__main__.py +0 -0
  86. {bluer_objects-6.309.1 → bluer_objects-6.317.1}/bluer_objects/assets/__init__.py +0 -0
  87. {bluer_objects-6.309.1 → bluer_objects-6.317.1}/bluer_objects/assets/__main__.py +0 -0
  88. {bluer_objects-6.309.1 → bluer_objects-6.317.1}/bluer_objects/assets/functions.py +0 -0
  89. {bluer_objects-6.309.1 → bluer_objects-6.317.1}/bluer_objects/config.env +0 -0
  90. {bluer_objects-6.309.1 → bluer_objects-6.317.1}/bluer_objects/env.py +0 -0
  91. {bluer_objects-6.309.1 → bluer_objects-6.317.1}/bluer_objects/file/__init__.py +0 -0
  92. {bluer_objects-6.309.1 → bluer_objects-6.317.1}/bluer_objects/file/classes.py +0 -0
  93. {bluer_objects-6.309.1 → bluer_objects-6.317.1}/bluer_objects/file/functions.py +0 -0
  94. {bluer_objects-6.309.1 → bluer_objects-6.317.1}/bluer_objects/file/load.py +0 -0
  95. {bluer_objects-6.309.1 → bluer_objects-6.317.1}/bluer_objects/file/save.py +0 -0
  96. {bluer_objects-6.309.1 → bluer_objects-6.317.1}/bluer_objects/graphics/__init__.py +0 -0
  97. {bluer_objects-6.309.1 → bluer_objects-6.317.1}/bluer_objects/graphics/__main__.py +0 -0
  98. {bluer_objects-6.309.1 → bluer_objects-6.317.1}/bluer_objects/graphics/frame.py +0 -0
  99. {bluer_objects-6.309.1 → bluer_objects-6.317.1}/bluer_objects/graphics/gif.py +0 -0
  100. {bluer_objects-6.309.1 → bluer_objects-6.317.1}/bluer_objects/graphics/screen.py +0 -0
  101. {bluer_objects-6.309.1 → bluer_objects-6.317.1}/bluer_objects/graphics/signature.py +0 -0
  102. {bluer_objects-6.309.1 → bluer_objects-6.317.1}/bluer_objects/graphics/text.py +0 -0
  103. {bluer_objects-6.309.1 → bluer_objects-6.317.1}/bluer_objects/help/__init__.py +0 -0
  104. {bluer_objects-6.309.1 → bluer_objects-6.317.1}/bluer_objects/help/__main__.py +0 -0
  105. {bluer_objects-6.309.1 → bluer_objects-6.317.1}/bluer_objects/help/assets.py +0 -0
  106. {bluer_objects-6.309.1 → bluer_objects-6.317.1}/bluer_objects/help/clone.py +0 -0
  107. {bluer_objects-6.309.1 → bluer_objects-6.317.1}/bluer_objects/help/create_test_asset.py +0 -0
  108. {bluer_objects-6.309.1 → bluer_objects-6.317.1}/bluer_objects/help/download.py +0 -0
  109. {bluer_objects-6.309.1 → bluer_objects-6.317.1}/bluer_objects/help/gif.py +0 -0
  110. {bluer_objects-6.309.1 → bluer_objects-6.317.1}/bluer_objects/help/host.py +0 -0
  111. {bluer_objects-6.309.1 → bluer_objects-6.317.1}/bluer_objects/help/ls.py +0 -0
  112. {bluer_objects-6.309.1 → bluer_objects-6.317.1}/bluer_objects/help/metadata.py +0 -0
  113. {bluer_objects-6.309.1 → bluer_objects-6.317.1}/bluer_objects/help/mlflow/__init__.py +0 -0
  114. {bluer_objects-6.309.1 → bluer_objects-6.317.1}/bluer_objects/help/mlflow/cache.py +0 -0
  115. {bluer_objects-6.309.1 → bluer_objects-6.317.1}/bluer_objects/help/mlflow/lock.py +0 -0
  116. {bluer_objects-6.309.1 → bluer_objects-6.317.1}/bluer_objects/help/mlflow/tags.py +0 -0
  117. {bluer_objects-6.309.1 → bluer_objects-6.317.1}/bluer_objects/help/upload.py +0 -0
  118. {bluer_objects-6.309.1 → bluer_objects-6.317.1}/bluer_objects/help/web.py +0 -0
  119. {bluer_objects-6.309.1 → bluer_objects-6.317.1}/bluer_objects/host/__init__.py +0 -0
  120. {bluer_objects-6.309.1 → bluer_objects-6.317.1}/bluer_objects/host/__main__.py +0 -0
  121. {bluer_objects-6.309.1 → bluer_objects-6.317.1}/bluer_objects/host/functions.py +0 -0
  122. {bluer_objects-6.309.1 → bluer_objects-6.317.1}/bluer_objects/logger/__init__.py +0 -0
  123. {bluer_objects-6.309.1 → bluer_objects-6.317.1}/bluer_objects/logger/image.py +0 -0
  124. {bluer_objects-6.309.1 → bluer_objects-6.317.1}/bluer_objects/logger/matrix.py +0 -0
  125. {bluer_objects-6.309.1 → bluer_objects-6.317.1}/bluer_objects/logger/stitch.py +0 -0
  126. {bluer_objects-6.309.1 → bluer_objects-6.317.1}/bluer_objects/markdown.py +0 -0
  127. {bluer_objects-6.309.1 → bluer_objects-6.317.1}/bluer_objects/metadata/__init__.py +0 -0
  128. {bluer_objects-6.309.1 → bluer_objects-6.317.1}/bluer_objects/metadata/__main__.py +0 -0
  129. {bluer_objects-6.309.1 → bluer_objects-6.317.1}/bluer_objects/metadata/enums.py +0 -0
  130. {bluer_objects-6.309.1 → bluer_objects-6.317.1}/bluer_objects/metadata/flatten.py +0 -0
  131. {bluer_objects-6.309.1 → bluer_objects-6.317.1}/bluer_objects/metadata/get.py +0 -0
  132. {bluer_objects-6.309.1 → bluer_objects-6.317.1}/bluer_objects/metadata/post.py +0 -0
  133. {bluer_objects-6.309.1 → bluer_objects-6.317.1}/bluer_objects/mlflow/__init__.py +0 -0
  134. {bluer_objects-6.309.1 → bluer_objects-6.317.1}/bluer_objects/mlflow/__main__.py +0 -0
  135. {bluer_objects-6.309.1 → bluer_objects-6.317.1}/bluer_objects/mlflow/cache.py +0 -0
  136. {bluer_objects-6.309.1 → bluer_objects-6.317.1}/bluer_objects/mlflow/lock/__init__.py +0 -0
  137. {bluer_objects-6.309.1 → bluer_objects-6.317.1}/bluer_objects/mlflow/lock/__main__.py +0 -0
  138. {bluer_objects-6.309.1 → bluer_objects-6.317.1}/bluer_objects/mlflow/lock/functions.py +0 -0
  139. {bluer_objects-6.309.1 → bluer_objects-6.317.1}/bluer_objects/mlflow/logging.py +0 -0
  140. {bluer_objects-6.309.1 → bluer_objects-6.317.1}/bluer_objects/mlflow/models.py +0 -0
  141. {bluer_objects-6.309.1 → bluer_objects-6.317.1}/bluer_objects/mlflow/objects.py +0 -0
  142. {bluer_objects-6.309.1 → bluer_objects-6.317.1}/bluer_objects/mlflow/runs.py +0 -0
  143. {bluer_objects-6.309.1 → bluer_objects-6.317.1}/bluer_objects/mlflow/tags.py +0 -0
  144. {bluer_objects-6.309.1 → bluer_objects-6.317.1}/bluer_objects/mlflow/testing.py +0 -0
  145. {bluer_objects-6.309.1 → bluer_objects-6.317.1}/bluer_objects/objects.py +0 -0
  146. {bluer_objects-6.309.1 → bluer_objects-6.317.1}/bluer_objects/path.py +0 -0
  147. {bluer_objects-6.309.1 → bluer_objects-6.317.1}/bluer_objects/sample.env +0 -0
  148. {bluer_objects-6.309.1 → bluer_objects-6.317.1}/bluer_objects/storage/WebDAV.py +0 -0
  149. {bluer_objects-6.309.1 → bluer_objects-6.317.1}/bluer_objects/storage/WebDAVrequest.py +0 -0
  150. {bluer_objects-6.309.1 → bluer_objects-6.317.1}/bluer_objects/storage/WebDAVzip.py +0 -0
  151. {bluer_objects-6.309.1 → bluer_objects-6.317.1}/bluer_objects/storage/__init__.py +0 -0
  152. {bluer_objects-6.309.1 → bluer_objects-6.317.1}/bluer_objects/storage/__main__.py +0 -0
  153. {bluer_objects-6.309.1 → bluer_objects-6.317.1}/bluer_objects/storage/base.py +0 -0
  154. {bluer_objects-6.309.1 → bluer_objects-6.317.1}/bluer_objects/storage/policies.py +0 -0
  155. {bluer_objects-6.309.1 → bluer_objects-6.317.1}/bluer_objects/storage/s3.py +0 -0
  156. {bluer_objects-6.309.1 → bluer_objects-6.317.1}/bluer_objects/testing/__init__.py +0 -0
  157. {bluer_objects-6.309.1 → bluer_objects-6.317.1}/bluer_objects/testing/__main__.py +0 -0
  158. {bluer_objects-6.309.1 → bluer_objects-6.317.1}/bluer_objects/testing/functions.py +0 -0
  159. {bluer_objects-6.309.1 → bluer_objects-6.317.1}/bluer_objects/tests/__init__.py +0 -0
  160. {bluer_objects-6.309.1 → bluer_objects-6.317.1}/bluer_objects/tests/test_README.py +0 -0
  161. {bluer_objects-6.309.1 → bluer_objects-6.317.1}/bluer_objects/tests/test_README_consts.py +0 -0
  162. {bluer_objects-6.309.1 → bluer_objects-6.317.1}/bluer_objects/tests/test_README_items.py +0 -0
  163. {bluer_objects-6.309.1 → bluer_objects-6.317.1}/bluer_objects/tests/test_env.py +0 -0
  164. {bluer_objects-6.309.1 → bluer_objects-6.317.1}/bluer_objects/tests/test_file_download.py +0 -0
  165. {bluer_objects-6.309.1 → bluer_objects-6.317.1}/bluer_objects/tests/test_file_load_save.py +0 -0
  166. {bluer_objects-6.309.1 → bluer_objects-6.317.1}/bluer_objects/tests/test_file_load_save_text.py +0 -0
  167. {bluer_objects-6.309.1 → bluer_objects-6.317.1}/bluer_objects/tests/test_fullname.py +0 -0
  168. {bluer_objects-6.309.1 → bluer_objects-6.317.1}/bluer_objects/tests/test_graphics.py +0 -0
  169. {bluer_objects-6.309.1 → bluer_objects-6.317.1}/bluer_objects/tests/test_graphics_frame.py +0 -0
  170. {bluer_objects-6.309.1 → bluer_objects-6.317.1}/bluer_objects/tests/test_graphics_gif.py +0 -0
  171. {bluer_objects-6.309.1 → bluer_objects-6.317.1}/bluer_objects/tests/test_graphics_screen.py +0 -0
  172. {bluer_objects-6.309.1 → bluer_objects-6.317.1}/bluer_objects/tests/test_graphics_signature.py +0 -0
  173. {bluer_objects-6.309.1 → bluer_objects-6.317.1}/bluer_objects/tests/test_graphics_text.py +0 -0
  174. {bluer_objects-6.309.1 → bluer_objects-6.317.1}/bluer_objects/tests/test_log_image_grid.py +0 -0
  175. {bluer_objects-6.309.1 → bluer_objects-6.317.1}/bluer_objects/tests/test_logger.py +0 -0
  176. {bluer_objects-6.309.1 → bluer_objects-6.317.1}/bluer_objects/tests/test_logger_matrix.py +0 -0
  177. {bluer_objects-6.309.1 → bluer_objects-6.317.1}/bluer_objects/tests/test_logger_stitch_images.py +0 -0
  178. {bluer_objects-6.309.1 → bluer_objects-6.317.1}/bluer_objects/tests/test_markdown.py +0 -0
  179. {bluer_objects-6.309.1 → bluer_objects-6.317.1}/bluer_objects/tests/test_metadata.py +0 -0
  180. {bluer_objects-6.309.1 → bluer_objects-6.317.1}/bluer_objects/tests/test_metadata_flatten.py +0 -0
  181. {bluer_objects-6.309.1 → bluer_objects-6.317.1}/bluer_objects/tests/test_mlflow.py +0 -0
  182. {bluer_objects-6.309.1 → bluer_objects-6.317.1}/bluer_objects/tests/test_mlflow_lock.py +0 -0
  183. {bluer_objects-6.309.1 → bluer_objects-6.317.1}/bluer_objects/tests/test_objects.py +0 -0
  184. {bluer_objects-6.309.1 → bluer_objects-6.317.1}/bluer_objects/tests/test_path.py +0 -0
  185. {bluer_objects-6.309.1 → bluer_objects-6.317.1}/bluer_objects/tests/test_storage.py +0 -0
  186. {bluer_objects-6.309.1 → bluer_objects-6.317.1}/bluer_objects/tests/test_storage_base.py +0 -0
  187. {bluer_objects-6.309.1 → bluer_objects-6.317.1}/bluer_objects/tests/test_storage_s3.py +0 -0
  188. {bluer_objects-6.309.1 → bluer_objects-6.317.1}/bluer_objects/tests/test_storage_webdav_request.py +0 -0
  189. {bluer_objects-6.309.1 → bluer_objects-6.317.1}/bluer_objects/tests/test_storage_webdav_zip.py +0 -0
  190. {bluer_objects-6.309.1 → bluer_objects-6.317.1}/bluer_objects/tests/test_testing.py +0 -0
  191. {bluer_objects-6.309.1 → bluer_objects-6.317.1}/bluer_objects/tests/test_version.py +0 -0
  192. {bluer_objects-6.309.1 → bluer_objects-6.317.1}/bluer_objects/tests/test_web_is_accessible.py +0 -0
  193. {bluer_objects-6.309.1 → bluer_objects-6.317.1}/bluer_objects/urls.py +0 -0
  194. {bluer_objects-6.309.1 → bluer_objects-6.317.1}/bluer_objects/web/__init__.py +0 -0
  195. {bluer_objects-6.309.1 → bluer_objects-6.317.1}/bluer_objects/web/__main__.py +0 -0
  196. {bluer_objects-6.309.1 → bluer_objects-6.317.1}/bluer_objects/web/functions.py +0 -0
  197. {bluer_objects-6.309.1 → bluer_objects-6.317.1}/bluer_objects.egg-info/dependency_links.txt +0 -0
  198. {bluer_objects-6.309.1 → bluer_objects-6.317.1}/bluer_objects.egg-info/requires.txt +0 -0
  199. {bluer_objects-6.309.1 → bluer_objects-6.317.1}/bluer_objects.egg-info/top_level.txt +0 -0
  200. {bluer_objects-6.309.1 → bluer_objects-6.317.1}/pyproject.toml +0 -0
  201. {bluer_objects-6.309.1 → bluer_objects-6.317.1}/requirements.txt +0 -0
  202. {bluer_objects-6.309.1 → bluer_objects-6.317.1}/setup.cfg +0 -0
  203. {bluer_objects-6.309.1 → bluer_objects-6.317.1}/setup.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: bluer_objects
3
- Version: 6.309.1
3
+ Version: 6.317.1
4
4
  Summary: 🌀 Object management in Bash.
5
5
  Home-page: https://github.com/kamangir/bluer-objects
6
6
  Author: Arash Abadpour (Kamangir)
@@ -65,6 +65,6 @@ pip install bluer-objects
65
65
 
66
66
  [![pylint](https://github.com/kamangir/bluer-objects/actions/workflows/pylint.yml/badge.svg)](https://github.com/kamangir/bluer-objects/actions/workflows/pylint.yml) [![pytest](https://github.com/kamangir/bluer-objects/actions/workflows/pytest.yml/badge.svg)](https://github.com/kamangir/bluer-objects/actions/workflows/pytest.yml) [![bashtest](https://github.com/kamangir/bluer-objects/actions/workflows/bashtest.yml/badge.svg)](https://github.com/kamangir/bluer-objects/actions/workflows/bashtest.yml) [![PyPI version](https://img.shields.io/pypi/v/bluer-objects.svg)](https://pypi.org/project/bluer-objects/) [![PyPI - Downloads](https://img.shields.io/pypi/dd/bluer-objects)](https://pypistats.org/packages/bluer-objects)
67
67
 
68
- built by 🌀 [`bluer README`](https://github.com/kamangir/bluer-objects/tree/main/bluer_objects/README), based on 🌀 [`bluer_objects-6.309.1`](https://github.com/kamangir/bluer-objects).
68
+ built by 🌀 [`bluer README`](https://github.com/kamangir/bluer-objects/tree/main/bluer_objects/README), based on 🌀 [`bluer_objects-6.317.1`](https://github.com/kamangir/bluer-objects).
69
69
 
70
70
  built by 🌀 [`blueness-3.118.1`](https://github.com/kamangir/blueness).
@@ -31,4 +31,4 @@ pip install bluer-objects
31
31
 
32
32
  [![pylint](https://github.com/kamangir/bluer-objects/actions/workflows/pylint.yml/badge.svg)](https://github.com/kamangir/bluer-objects/actions/workflows/pylint.yml) [![pytest](https://github.com/kamangir/bluer-objects/actions/workflows/pytest.yml/badge.svg)](https://github.com/kamangir/bluer-objects/actions/workflows/pytest.yml) [![bashtest](https://github.com/kamangir/bluer-objects/actions/workflows/bashtest.yml/badge.svg)](https://github.com/kamangir/bluer-objects/actions/workflows/bashtest.yml) [![PyPI version](https://img.shields.io/pypi/v/bluer-objects.svg)](https://pypi.org/project/bluer-objects/) [![PyPI - Downloads](https://img.shields.io/pypi/dd/bluer-objects)](https://pypistats.org/packages/bluer-objects)
33
33
 
34
- built by 🌀 [`bluer README`](https://github.com/kamangir/bluer-objects/tree/main/bluer_objects/README), based on 🌀 [`bluer_objects-6.309.1`](https://github.com/kamangir/bluer-objects).
34
+ built by 🌀 [`bluer README`](https://github.com/kamangir/bluer-objects/tree/main/bluer_objects/README), based on 🌀 [`bluer_objects-6.317.1`](https://github.com/kamangir/bluer-objects).
@@ -0,0 +1,19 @@
1
+ #! /usr/bin/env bash
2
+
3
+ function bluer_objects_file() {
4
+ local options=$1
5
+ local do_sudo=$(bluer_ai_option_int "$options" sudo 0)
6
+
7
+ local task=$2
8
+
9
+ local prefix=""
10
+ [[ "$do_sudo" == 1 ]] &&
11
+ prefix="sudo -E"
12
+
13
+ local filename=$3
14
+
15
+ $prefix $(which python) -m bluer_objects.file \
16
+ "$task" \
17
+ --filename "$filename" \
18
+ "${@:4}"
19
+ }
@@ -0,0 +1,64 @@
1
+ #! /usr/bin/env bash
2
+
3
+ function test_file_asset() {
4
+ echo $abcli_path_git/bluer-objects/bluer_objects/.abcli/tests/file.sh
5
+ }
6
+
7
+ function test_file_replace() {
8
+ local options=$1
9
+
10
+ local filename=$abcli_path_git/file.sh
11
+
12
+ cp -v \
13
+ $(test_file_asset) \
14
+ $filename
15
+ [[ $? -ne 0 ]] && return 1
16
+
17
+ bluer_objects_file - \
18
+ replace \
19
+ $filename \
20
+ --this function+local \
21
+ --that FUNCTION+LOCAL \
22
+ --cat 1 \
23
+ "${@:2}"
24
+ [[ $? -ne 0 ]] && return 1
25
+ bluer_ai_hr
26
+
27
+ # ---
28
+
29
+ bluer_objects_file - \
30
+ replace \
31
+ $filename \
32
+ --this "FUNCTION test_file_asset() {+echo" \
33
+ --that ":)+:(" \
34
+ --cat 1 \
35
+ --whole_line 1 \
36
+ "${@:2}"
37
+ [[ $? -ne 0 ]] && return 1
38
+ rm -v $filename
39
+ }
40
+
41
+ function test_file_size() {
42
+ local options=$1
43
+
44
+ local size=$(bluer_objects_file - \
45
+ size \
46
+ $(test_file_asset))
47
+
48
+ bluer_ai_assert \
49
+ "$size" \
50
+ "1.18 kB"
51
+ [[ $? -ne 0 ]] && return 1
52
+ bluer_ai_hr
53
+
54
+ # ---
55
+
56
+ local size=$(bluer_objects_file - \
57
+ size \
58
+ $(test_file_asset) \
59
+ --pretty 0)
60
+
61
+ bluer_ai_assert \
62
+ "$size" \
63
+ "1209"
64
+ }
@@ -38,6 +38,10 @@ function test_bluer_objects_help() {
38
38
  \
39
39
  "@ls" \
40
40
  \
41
+ "@file" \
42
+ "@file replace" \
43
+ "@file size" \
44
+ \
41
45
  "@host" \
42
46
  "@host get" \
43
47
  "@host reboot" \
@@ -41,6 +41,7 @@ def build_me() -> bool:
41
41
  "assets",
42
42
  "clone",
43
43
  "download",
44
+ "file",
44
45
  "gif",
45
46
  "host",
46
47
  "ls",
@@ -4,7 +4,7 @@ ICON = "🌀"
4
4
 
5
5
  DESCRIPTION = f"{ICON} Object management in Bash."
6
6
 
7
- VERSION = "6.309.1"
7
+ VERSION = "6.317.1"
8
8
 
9
9
  REPO_NAME = "bluer-objects"
10
10
 
@@ -0,0 +1,101 @@
1
+ import argparse
2
+ from tqdm import tqdm
3
+
4
+ from blueness import module
5
+ from blueness.argparse.generic import sys_exit
6
+ from bluer_options import string
7
+
8
+ from bluer_objects import file, NAME
9
+ from bluer_objects.logger import logger
10
+
11
+ NAME = module.name(__file__, NAME)
12
+
13
+ parser = argparse.ArgumentParser(NAME)
14
+ parser.add_argument(
15
+ "task",
16
+ type=str,
17
+ help="replace | size",
18
+ )
19
+ parser.add_argument(
20
+ "--filename",
21
+ type=str,
22
+ )
23
+ parser.add_argument(
24
+ "--this",
25
+ type=str,
26
+ help="<this-1+this-2+this-3>",
27
+ )
28
+ parser.add_argument(
29
+ "--that",
30
+ type=str,
31
+ help="<that-1+that-2+that-3>",
32
+ )
33
+ parser.add_argument(
34
+ "--pretty",
35
+ type=int,
36
+ default=1,
37
+ help="0 | 1",
38
+ )
39
+ parser.add_argument(
40
+ "--save",
41
+ type=int,
42
+ default=1,
43
+ help="0 | 1",
44
+ )
45
+ parser.add_argument(
46
+ "--whole_line",
47
+ type=int,
48
+ default=0,
49
+ help="0 | 1",
50
+ )
51
+ parser.add_argument(
52
+ "--log",
53
+ type=int,
54
+ default=0,
55
+ help="0 | 1",
56
+ )
57
+ parser.add_argument(
58
+ "--cat",
59
+ type=int,
60
+ default=0,
61
+ help="0 | 1",
62
+ )
63
+ args = parser.parse_args()
64
+
65
+ success = False
66
+ if args.task == "replace":
67
+ logger.info(
68
+ f'{NAME}.{args.task}: "{args.this}" -> "{args.that}" in {args.filename}'
69
+ )
70
+
71
+ success, content = file.load_text(
72
+ args.filename,
73
+ log=args.log == 1,
74
+ )
75
+ if success:
76
+ for this, that in tqdm(zip(args.this.split("+"), args.that.split("+"))):
77
+ if args.whole_line:
78
+ content = [that if line == this else line for line in content]
79
+ else:
80
+ content = [line.replace(this, that) for line in content]
81
+
82
+ if args.save == 1:
83
+ success = file.save_text(
84
+ args.filename,
85
+ content,
86
+ log=args.log == 1,
87
+ )
88
+
89
+ if success and args.cat:
90
+ for line in content:
91
+ if any(this in line for this in args.this.split("+")):
92
+ logger.info(line)
93
+
94
+ elif args.task == "size":
95
+ size = file.size(args.filename)
96
+ print(string.pretty_bytes(size) if args.pretty == 1 else size)
97
+ success = True
98
+ else:
99
+ success = None
100
+
101
+ sys_exit(logger, NAME, args.task, success)
@@ -0,0 +1,59 @@
1
+ from typing import List
2
+
3
+ from bluer_options.terminal import show_usage, xtra
4
+
5
+
6
+ def help_replace(
7
+ tokens: List[str],
8
+ mono: bool,
9
+ ) -> str:
10
+ options = xtra("sudo", mono=mono)
11
+
12
+ args = [
13
+ "--cat 1",
14
+ "--save 0",
15
+ "--this this-1+this-2",
16
+ "--that that-1+that-2",
17
+ "--whole_line 1",
18
+ ]
19
+
20
+ return show_usage(
21
+ [
22
+ "@file",
23
+ f"[{options}]",
24
+ "replace",
25
+ "<filename>",
26
+ ]
27
+ + args,
28
+ "<this> -> <that> in <filename>.",
29
+ mono=mono,
30
+ )
31
+
32
+
33
+ def help_size(
34
+ tokens: List[str],
35
+ mono: bool,
36
+ ) -> str:
37
+ options = "-"
38
+
39
+ args = [
40
+ "--pretty 0",
41
+ ]
42
+
43
+ return show_usage(
44
+ [
45
+ "@file",
46
+ f"[{options}]",
47
+ "size",
48
+ "<filename>",
49
+ ]
50
+ + args,
51
+ "size of <filename>",
52
+ mono=mono,
53
+ )
54
+
55
+
56
+ help_functions = {
57
+ "replace": help_replace,
58
+ "size": help_size,
59
+ }
@@ -6,6 +6,7 @@ from bluer_objects.help.clone import help_clone
6
6
  from bluer_objects.help.create_test_asset import help_create_test_asset
7
7
  from bluer_objects.help.download import help_download
8
8
  from bluer_objects.help.gif import help_functions as help_gif
9
+ from bluer_objects.help.file import help_functions as help_file
9
10
  from bluer_objects.help.host import help_functions as help_host
10
11
  from bluer_objects.help.ls import help_ls
11
12
  from bluer_objects.help.metadata import help_functions as help_metadata
@@ -21,6 +22,7 @@ help_functions.update(
21
22
  "clone": help_clone,
22
23
  "create_test_asset": help_create_test_asset,
23
24
  "download": help_download,
25
+ "file": help_file,
24
26
  "gif": help_gif,
25
27
  "host": help_host,
26
28
  "ls": help_ls,
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: bluer_objects
3
- Version: 6.309.1
3
+ Version: 6.317.1
4
4
  Summary: 🌀 Object management in Bash.
5
5
  Home-page: https://github.com/kamangir/bluer-objects
6
6
  Author: Arash Abadpour (Kamangir)
@@ -65,6 +65,6 @@ pip install bluer-objects
65
65
 
66
66
  [![pylint](https://github.com/kamangir/bluer-objects/actions/workflows/pylint.yml/badge.svg)](https://github.com/kamangir/bluer-objects/actions/workflows/pylint.yml) [![pytest](https://github.com/kamangir/bluer-objects/actions/workflows/pytest.yml/badge.svg)](https://github.com/kamangir/bluer-objects/actions/workflows/pytest.yml) [![bashtest](https://github.com/kamangir/bluer-objects/actions/workflows/bashtest.yml/badge.svg)](https://github.com/kamangir/bluer-objects/actions/workflows/bashtest.yml) [![PyPI version](https://img.shields.io/pypi/v/bluer-objects.svg)](https://pypi.org/project/bluer-objects/) [![PyPI - Downloads](https://img.shields.io/pypi/dd/bluer-objects)](https://pypistats.org/packages/bluer-objects)
67
67
 
68
- built by 🌀 [`bluer README`](https://github.com/kamangir/bluer-objects/tree/main/bluer_objects/README), based on 🌀 [`bluer_objects-6.309.1`](https://github.com/kamangir/bluer-objects).
68
+ built by 🌀 [`bluer README`](https://github.com/kamangir/bluer-objects/tree/main/bluer_objects/README), based on 🌀 [`bluer_objects-6.317.1`](https://github.com/kamangir/bluer-objects).
69
69
 
70
70
  built by 🌀 [`blueness-3.118.1`](https://github.com/kamangir/blueness).
@@ -65,6 +65,7 @@ bluer_objects/.abcli/storage/status.sh
65
65
  bluer_objects/.abcli/tests/README.sh
66
66
  bluer_objects/.abcli/tests/clone.sh
67
67
  bluer_objects/.abcli/tests/create_test_asset.sh
68
+ bluer_objects/.abcli/tests/file.sh
68
69
  bluer_objects/.abcli/tests/gif.sh
69
70
  bluer_objects/.abcli/tests/help.sh
70
71
  bluer_objects/.abcli/tests/host.sh
@@ -111,6 +112,7 @@ bluer_objects/help/assets.py
111
112
  bluer_objects/help/clone.py
112
113
  bluer_objects/help/create_test_asset.py
113
114
  bluer_objects/help/download.py
115
+ bluer_objects/help/file.py
114
116
  bluer_objects/help/functions.py
115
117
  bluer_objects/help/gif.py
116
118
  bluer_objects/help/host.py
@@ -1,8 +0,0 @@
1
- #! /usr/bin/env bash
2
-
3
- function bluer_objects_file() {
4
- python3 -m bluer_objects.file \
5
- "$1" \
6
- --filename "$2" \
7
- "${@:3}"
8
- }
@@ -1,56 +0,0 @@
1
- import argparse
2
- from tqdm import tqdm
3
-
4
- from blueness import module
5
- from blueness.argparse.generic import sys_exit
6
- from bluer_options import string
7
-
8
- from bluer_objects import file, NAME
9
- from bluer_objects.logger import logger
10
-
11
- NAME = module.name(__file__, NAME)
12
-
13
- parser = argparse.ArgumentParser(NAME)
14
- parser.add_argument(
15
- "task",
16
- type=str,
17
- help="replace | size",
18
- )
19
- parser.add_argument(
20
- "--filename",
21
- type=str,
22
- )
23
- parser.add_argument(
24
- "--this",
25
- type=str,
26
- help="<this-1+this-2+this-3>",
27
- )
28
- parser.add_argument(
29
- "--that",
30
- type=str,
31
- help="<that-1+that-2+that-3>",
32
- )
33
- parser.add_argument(
34
- "--size",
35
- type=int,
36
- default=16,
37
- )
38
- args = parser.parse_args()
39
-
40
- success = False
41
- if args.task == "replace":
42
- logger.info(f"{NAME}.{args.task}: {args.this} -> {args.that} in {args.filename}")
43
-
44
- success, content = file.load_text(args.filename)
45
- if success:
46
- for this, that in tqdm(zip(args.this.split("+"), args.that.split("+"))):
47
- content = [line.replace(this, that) for line in content]
48
-
49
- success = file.save_text(args.filename, content)
50
- elif args.task == "size":
51
- print(string.pretty_bytes(file.size(args.filename)))
52
- success = True
53
- else:
54
- success = None
55
-
56
- sys_exit(logger, NAME, args.task, success)
File without changes