bluer-objects 6.294.1__tar.gz → 6.301.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.
- {bluer_objects-6.294.1/bluer_objects.egg-info → bluer_objects-6.301.1}/PKG-INFO +2 -2
- {bluer_objects-6.294.1 → bluer_objects-6.301.1}/README.md +1 -1
- bluer_objects-6.301.1/bluer_objects/.abcli/host.sh +45 -0
- {bluer_objects-6.294.1 → bluer_objects-6.301.1}/bluer_objects/README/items.py +33 -0
- {bluer_objects-6.294.1 → bluer_objects-6.301.1}/bluer_objects/__init__.py +1 -1
- {bluer_objects-6.294.1 → bluer_objects-6.301.1}/bluer_objects/help/host.py +6 -4
- bluer_objects-6.301.1/bluer_objects/tests/test_README_items.py +120 -0
- {bluer_objects-6.294.1 → bluer_objects-6.301.1/bluer_objects.egg-info}/PKG-INFO +2 -2
- {bluer_objects-6.294.1 → bluer_objects-6.301.1}/bluer_objects.egg-info/SOURCES.txt +1 -0
- bluer_objects-6.294.1/bluer_objects/.abcli/host.sh +0 -29
- {bluer_objects-6.294.1 → bluer_objects-6.301.1}/LICENSE +0 -0
- {bluer_objects-6.294.1 → bluer_objects-6.301.1}/MANIFEST.in +0 -0
- {bluer_objects-6.294.1 → bluer_objects-6.301.1}/bluer_objects/.abcli/abcli.sh +0 -0
- {bluer_objects-6.294.1 → bluer_objects-6.301.1}/bluer_objects/.abcli/actions.sh +0 -0
- {bluer_objects-6.294.1 → bluer_objects-6.301.1}/bluer_objects/.abcli/aka.sh +0 -0
- {bluer_objects-6.294.1 → bluer_objects-6.301.1}/bluer_objects/.abcli/alias.sh +0 -0
- {bluer_objects-6.294.1 → bluer_objects-6.301.1}/bluer_objects/.abcli/assets/cd.sh +0 -0
- {bluer_objects-6.294.1 → bluer_objects-6.301.1}/bluer_objects/.abcli/assets/mv.sh +0 -0
- {bluer_objects-6.294.1 → bluer_objects-6.301.1}/bluer_objects/.abcli/assets/publish.sh +0 -0
- {bluer_objects-6.294.1 → bluer_objects-6.301.1}/bluer_objects/.abcli/assets.sh +0 -0
- {bluer_objects-6.294.1 → bluer_objects-6.301.1}/bluer_objects/.abcli/bluer_objects.sh +0 -0
- {bluer_objects-6.294.1 → bluer_objects-6.301.1}/bluer_objects/.abcli/clone.sh +0 -0
- {bluer_objects-6.294.1 → bluer_objects-6.301.1}/bluer_objects/.abcli/create_test_asset.sh +0 -0
- {bluer_objects-6.294.1 → bluer_objects-6.301.1}/bluer_objects/.abcli/download.sh +0 -0
- {bluer_objects-6.294.1 → bluer_objects-6.301.1}/bluer_objects/.abcli/file.sh +0 -0
- {bluer_objects-6.294.1 → bluer_objects-6.301.1}/bluer_objects/.abcli/gif.sh +0 -0
- {bluer_objects-6.294.1 → bluer_objects-6.301.1}/bluer_objects/.abcli/ls.sh +0 -0
- {bluer_objects-6.294.1 → bluer_objects-6.301.1}/bluer_objects/.abcli/metadata/get.sh +0 -0
- {bluer_objects-6.294.1 → bluer_objects-6.301.1}/bluer_objects/.abcli/metadata/post.sh +0 -0
- {bluer_objects-6.294.1 → bluer_objects-6.301.1}/bluer_objects/.abcli/metadata.sh +0 -0
- {bluer_objects-6.294.1 → bluer_objects-6.301.1}/bluer_objects/.abcli/mlflow/browse.sh +0 -0
- {bluer_objects-6.294.1 → bluer_objects-6.301.1}/bluer_objects/.abcli/mlflow/cache.sh +0 -0
- {bluer_objects-6.294.1 → bluer_objects-6.301.1}/bluer_objects/.abcli/mlflow/deploy.sh +0 -0
- {bluer_objects-6.294.1 → bluer_objects-6.301.1}/bluer_objects/.abcli/mlflow/list_registered_models.sh +0 -0
- {bluer_objects-6.294.1 → bluer_objects-6.301.1}/bluer_objects/.abcli/mlflow/lock/lock.sh +0 -0
- {bluer_objects-6.294.1 → bluer_objects-6.301.1}/bluer_objects/.abcli/mlflow/lock/unlock.sh +0 -0
- {bluer_objects-6.294.1 → bluer_objects-6.301.1}/bluer_objects/.abcli/mlflow/lock.sh +0 -0
- {bluer_objects-6.294.1 → bluer_objects-6.301.1}/bluer_objects/.abcli/mlflow/log_artifacts.sh +0 -0
- {bluer_objects-6.294.1 → bluer_objects-6.301.1}/bluer_objects/.abcli/mlflow/log_run.sh +0 -0
- {bluer_objects-6.294.1 → bluer_objects-6.301.1}/bluer_objects/.abcli/mlflow/run.sh +0 -0
- {bluer_objects-6.294.1 → bluer_objects-6.301.1}/bluer_objects/.abcli/mlflow/tags/clone.sh +0 -0
- {bluer_objects-6.294.1 → bluer_objects-6.301.1}/bluer_objects/.abcli/mlflow/tags/get.sh +0 -0
- {bluer_objects-6.294.1 → bluer_objects-6.301.1}/bluer_objects/.abcli/mlflow/tags/search.sh +0 -0
- {bluer_objects-6.294.1 → bluer_objects-6.301.1}/bluer_objects/.abcli/mlflow/tags/set.sh +0 -0
- {bluer_objects-6.294.1 → bluer_objects-6.301.1}/bluer_objects/.abcli/mlflow/tags.sh +0 -0
- {bluer_objects-6.294.1 → bluer_objects-6.301.1}/bluer_objects/.abcli/mlflow/test.sh +0 -0
- {bluer_objects-6.294.1 → bluer_objects-6.301.1}/bluer_objects/.abcli/mlflow/transition.sh +0 -0
- {bluer_objects-6.294.1 → bluer_objects-6.301.1}/bluer_objects/.abcli/mlflow.sh +0 -0
- {bluer_objects-6.294.1 → bluer_objects-6.301.1}/bluer_objects/.abcli/object.sh +0 -0
- {bluer_objects-6.294.1 → bluer_objects-6.301.1}/bluer_objects/.abcli/select.sh +0 -0
- {bluer_objects-6.294.1 → bluer_objects-6.301.1}/bluer_objects/.abcli/storage/clear.sh +0 -0
- {bluer_objects-6.294.1 → bluer_objects-6.301.1}/bluer_objects/.abcli/storage/status.sh +0 -0
- {bluer_objects-6.294.1 → bluer_objects-6.301.1}/bluer_objects/.abcli/storage.sh +0 -0
- {bluer_objects-6.294.1 → bluer_objects-6.301.1}/bluer_objects/.abcli/tests/README.sh +0 -0
- {bluer_objects-6.294.1 → bluer_objects-6.301.1}/bluer_objects/.abcli/tests/clone.sh +0 -0
- {bluer_objects-6.294.1 → bluer_objects-6.301.1}/bluer_objects/.abcli/tests/create_test_asset.sh +0 -0
- {bluer_objects-6.294.1 → bluer_objects-6.301.1}/bluer_objects/.abcli/tests/gif.sh +0 -0
- {bluer_objects-6.294.1 → bluer_objects-6.301.1}/bluer_objects/.abcli/tests/help.sh +0 -0
- {bluer_objects-6.294.1 → bluer_objects-6.301.1}/bluer_objects/.abcli/tests/host.sh +0 -0
- {bluer_objects-6.294.1 → bluer_objects-6.301.1}/bluer_objects/.abcli/tests/ls.sh +0 -0
- {bluer_objects-6.294.1 → bluer_objects-6.301.1}/bluer_objects/.abcli/tests/metadata.sh +0 -0
- {bluer_objects-6.294.1 → bluer_objects-6.301.1}/bluer_objects/.abcli/tests/mlflow_cache.sh +0 -0
- {bluer_objects-6.294.1 → bluer_objects-6.301.1}/bluer_objects/.abcli/tests/mlflow_lock.sh +0 -0
- {bluer_objects-6.294.1 → bluer_objects-6.301.1}/bluer_objects/.abcli/tests/mlflow_logging.sh +0 -0
- {bluer_objects-6.294.1 → bluer_objects-6.301.1}/bluer_objects/.abcli/tests/mlflow_tags.sh +0 -0
- {bluer_objects-6.294.1 → bluer_objects-6.301.1}/bluer_objects/.abcli/tests/mlflow_test.sh +0 -0
- {bluer_objects-6.294.1 → bluer_objects-6.301.1}/bluer_objects/.abcli/tests/open.sh +0 -0
- {bluer_objects-6.294.1 → bluer_objects-6.301.1}/bluer_objects/.abcli/tests/open_gif_open.sh +0 -0
- {bluer_objects-6.294.1 → bluer_objects-6.301.1}/bluer_objects/.abcli/tests/storage_public_upload.sh +0 -0
- {bluer_objects-6.294.1 → bluer_objects-6.301.1}/bluer_objects/.abcli/tests/storage_upload_download.sh +0 -0
- {bluer_objects-6.294.1 → bluer_objects-6.301.1}/bluer_objects/.abcli/tests/version.sh +0 -0
- {bluer_objects-6.294.1 → bluer_objects-6.301.1}/bluer_objects/.abcli/tests/web_is_accessible.sh +0 -0
- {bluer_objects-6.294.1 → bluer_objects-6.301.1}/bluer_objects/.abcli/tests/web_where_am_ai.sh +0 -0
- {bluer_objects-6.294.1 → bluer_objects-6.301.1}/bluer_objects/.abcli/upload.sh +0 -0
- {bluer_objects-6.294.1 → bluer_objects-6.301.1}/bluer_objects/.abcli/url.sh +0 -0
- {bluer_objects-6.294.1 → bluer_objects-6.301.1}/bluer_objects/.abcli/web/is_accessible.sh +0 -0
- {bluer_objects-6.294.1 → bluer_objects-6.301.1}/bluer_objects/.abcli/web/where_am_i.sh +0 -0
- {bluer_objects-6.294.1 → bluer_objects-6.301.1}/bluer_objects/README/__init__.py +0 -0
- {bluer_objects-6.294.1 → bluer_objects-6.301.1}/bluer_objects/README/consts.py +0 -0
- {bluer_objects-6.294.1 → bluer_objects-6.301.1}/bluer_objects/README/functions.py +0 -0
- {bluer_objects-6.294.1 → bluer_objects-6.301.1}/bluer_objects/README/utils.py +0 -0
- {bluer_objects-6.294.1 → bluer_objects-6.301.1}/bluer_objects/__main__.py +0 -0
- {bluer_objects-6.294.1 → bluer_objects-6.301.1}/bluer_objects/assets/__init__.py +0 -0
- {bluer_objects-6.294.1 → bluer_objects-6.301.1}/bluer_objects/assets/__main__.py +0 -0
- {bluer_objects-6.294.1 → bluer_objects-6.301.1}/bluer_objects/assets/functions.py +0 -0
- {bluer_objects-6.294.1 → bluer_objects-6.301.1}/bluer_objects/config.env +0 -0
- {bluer_objects-6.294.1 → bluer_objects-6.301.1}/bluer_objects/env.py +0 -0
- {bluer_objects-6.294.1 → bluer_objects-6.301.1}/bluer_objects/file/__init__.py +0 -0
- {bluer_objects-6.294.1 → bluer_objects-6.301.1}/bluer_objects/file/__main__.py +0 -0
- {bluer_objects-6.294.1 → bluer_objects-6.301.1}/bluer_objects/file/classes.py +0 -0
- {bluer_objects-6.294.1 → bluer_objects-6.301.1}/bluer_objects/file/functions.py +0 -0
- {bluer_objects-6.294.1 → bluer_objects-6.301.1}/bluer_objects/file/load.py +0 -0
- {bluer_objects-6.294.1 → bluer_objects-6.301.1}/bluer_objects/file/save.py +0 -0
- {bluer_objects-6.294.1 → bluer_objects-6.301.1}/bluer_objects/graphics/__init__.py +0 -0
- {bluer_objects-6.294.1 → bluer_objects-6.301.1}/bluer_objects/graphics/__main__.py +0 -0
- {bluer_objects-6.294.1 → bluer_objects-6.301.1}/bluer_objects/graphics/frame.py +0 -0
- {bluer_objects-6.294.1 → bluer_objects-6.301.1}/bluer_objects/graphics/gif.py +0 -0
- {bluer_objects-6.294.1 → bluer_objects-6.301.1}/bluer_objects/graphics/screen.py +0 -0
- {bluer_objects-6.294.1 → bluer_objects-6.301.1}/bluer_objects/graphics/signature.py +0 -0
- {bluer_objects-6.294.1 → bluer_objects-6.301.1}/bluer_objects/graphics/text.py +0 -0
- {bluer_objects-6.294.1 → bluer_objects-6.301.1}/bluer_objects/help/__init__.py +0 -0
- {bluer_objects-6.294.1 → bluer_objects-6.301.1}/bluer_objects/help/__main__.py +0 -0
- {bluer_objects-6.294.1 → bluer_objects-6.301.1}/bluer_objects/help/assets.py +0 -0
- {bluer_objects-6.294.1 → bluer_objects-6.301.1}/bluer_objects/help/clone.py +0 -0
- {bluer_objects-6.294.1 → bluer_objects-6.301.1}/bluer_objects/help/create_test_asset.py +0 -0
- {bluer_objects-6.294.1 → bluer_objects-6.301.1}/bluer_objects/help/download.py +0 -0
- {bluer_objects-6.294.1 → bluer_objects-6.301.1}/bluer_objects/help/functions.py +0 -0
- {bluer_objects-6.294.1 → bluer_objects-6.301.1}/bluer_objects/help/gif.py +0 -0
- {bluer_objects-6.294.1 → bluer_objects-6.301.1}/bluer_objects/help/ls.py +0 -0
- {bluer_objects-6.294.1 → bluer_objects-6.301.1}/bluer_objects/help/metadata.py +0 -0
- {bluer_objects-6.294.1 → bluer_objects-6.301.1}/bluer_objects/help/mlflow/__init__.py +0 -0
- {bluer_objects-6.294.1 → bluer_objects-6.301.1}/bluer_objects/help/mlflow/cache.py +0 -0
- {bluer_objects-6.294.1 → bluer_objects-6.301.1}/bluer_objects/help/mlflow/lock.py +0 -0
- {bluer_objects-6.294.1 → bluer_objects-6.301.1}/bluer_objects/help/mlflow/tags.py +0 -0
- {bluer_objects-6.294.1 → bluer_objects-6.301.1}/bluer_objects/help/upload.py +0 -0
- {bluer_objects-6.294.1 → bluer_objects-6.301.1}/bluer_objects/help/web.py +0 -0
- {bluer_objects-6.294.1 → bluer_objects-6.301.1}/bluer_objects/host/__init__.py +0 -0
- {bluer_objects-6.294.1 → bluer_objects-6.301.1}/bluer_objects/host/__main__.py +0 -0
- {bluer_objects-6.294.1 → bluer_objects-6.301.1}/bluer_objects/host/functions.py +0 -0
- {bluer_objects-6.294.1 → bluer_objects-6.301.1}/bluer_objects/logger/__init__.py +0 -0
- {bluer_objects-6.294.1 → bluer_objects-6.301.1}/bluer_objects/logger/image.py +0 -0
- {bluer_objects-6.294.1 → bluer_objects-6.301.1}/bluer_objects/logger/matrix.py +0 -0
- {bluer_objects-6.294.1 → bluer_objects-6.301.1}/bluer_objects/markdown.py +0 -0
- {bluer_objects-6.294.1 → bluer_objects-6.301.1}/bluer_objects/metadata/__init__.py +0 -0
- {bluer_objects-6.294.1 → bluer_objects-6.301.1}/bluer_objects/metadata/__main__.py +0 -0
- {bluer_objects-6.294.1 → bluer_objects-6.301.1}/bluer_objects/metadata/enums.py +0 -0
- {bluer_objects-6.294.1 → bluer_objects-6.301.1}/bluer_objects/metadata/flatten.py +0 -0
- {bluer_objects-6.294.1 → bluer_objects-6.301.1}/bluer_objects/metadata/get.py +0 -0
- {bluer_objects-6.294.1 → bluer_objects-6.301.1}/bluer_objects/metadata/post.py +0 -0
- {bluer_objects-6.294.1 → bluer_objects-6.301.1}/bluer_objects/mlflow/__init__.py +0 -0
- {bluer_objects-6.294.1 → bluer_objects-6.301.1}/bluer_objects/mlflow/__main__.py +0 -0
- {bluer_objects-6.294.1 → bluer_objects-6.301.1}/bluer_objects/mlflow/cache.py +0 -0
- {bluer_objects-6.294.1 → bluer_objects-6.301.1}/bluer_objects/mlflow/lock/__init__.py +0 -0
- {bluer_objects-6.294.1 → bluer_objects-6.301.1}/bluer_objects/mlflow/lock/__main__.py +0 -0
- {bluer_objects-6.294.1 → bluer_objects-6.301.1}/bluer_objects/mlflow/lock/functions.py +0 -0
- {bluer_objects-6.294.1 → bluer_objects-6.301.1}/bluer_objects/mlflow/logging.py +0 -0
- {bluer_objects-6.294.1 → bluer_objects-6.301.1}/bluer_objects/mlflow/models.py +0 -0
- {bluer_objects-6.294.1 → bluer_objects-6.301.1}/bluer_objects/mlflow/objects.py +0 -0
- {bluer_objects-6.294.1 → bluer_objects-6.301.1}/bluer_objects/mlflow/runs.py +0 -0
- {bluer_objects-6.294.1 → bluer_objects-6.301.1}/bluer_objects/mlflow/tags.py +0 -0
- {bluer_objects-6.294.1 → bluer_objects-6.301.1}/bluer_objects/mlflow/testing.py +0 -0
- {bluer_objects-6.294.1 → bluer_objects-6.301.1}/bluer_objects/objects.py +0 -0
- {bluer_objects-6.294.1 → bluer_objects-6.301.1}/bluer_objects/path.py +0 -0
- {bluer_objects-6.294.1 → bluer_objects-6.301.1}/bluer_objects/sample.env +0 -0
- {bluer_objects-6.294.1 → bluer_objects-6.301.1}/bluer_objects/storage/WebDAV.py +0 -0
- {bluer_objects-6.294.1 → bluer_objects-6.301.1}/bluer_objects/storage/WebDAVrequest.py +0 -0
- {bluer_objects-6.294.1 → bluer_objects-6.301.1}/bluer_objects/storage/WebDAVzip.py +0 -0
- {bluer_objects-6.294.1 → bluer_objects-6.301.1}/bluer_objects/storage/__init__.py +0 -0
- {bluer_objects-6.294.1 → bluer_objects-6.301.1}/bluer_objects/storage/__main__.py +0 -0
- {bluer_objects-6.294.1 → bluer_objects-6.301.1}/bluer_objects/storage/base.py +0 -0
- {bluer_objects-6.294.1 → bluer_objects-6.301.1}/bluer_objects/storage/policies.py +0 -0
- {bluer_objects-6.294.1 → bluer_objects-6.301.1}/bluer_objects/storage/s3.py +0 -0
- {bluer_objects-6.294.1 → bluer_objects-6.301.1}/bluer_objects/testing/__init__.py +0 -0
- {bluer_objects-6.294.1 → bluer_objects-6.301.1}/bluer_objects/testing/__main__.py +0 -0
- {bluer_objects-6.294.1 → bluer_objects-6.301.1}/bluer_objects/testing/functions.py +0 -0
- {bluer_objects-6.294.1 → bluer_objects-6.301.1}/bluer_objects/tests/__init__.py +0 -0
- {bluer_objects-6.294.1 → bluer_objects-6.301.1}/bluer_objects/tests/test_README.py +0 -0
- {bluer_objects-6.294.1 → bluer_objects-6.301.1}/bluer_objects/tests/test_README_consts.py +0 -0
- {bluer_objects-6.294.1 → bluer_objects-6.301.1}/bluer_objects/tests/test_env.py +0 -0
- {bluer_objects-6.294.1 → bluer_objects-6.301.1}/bluer_objects/tests/test_file_download.py +0 -0
- {bluer_objects-6.294.1 → bluer_objects-6.301.1}/bluer_objects/tests/test_file_load_save.py +0 -0
- {bluer_objects-6.294.1 → bluer_objects-6.301.1}/bluer_objects/tests/test_file_load_save_text.py +0 -0
- {bluer_objects-6.294.1 → bluer_objects-6.301.1}/bluer_objects/tests/test_fullname.py +0 -0
- {bluer_objects-6.294.1 → bluer_objects-6.301.1}/bluer_objects/tests/test_graphics.py +0 -0
- {bluer_objects-6.294.1 → bluer_objects-6.301.1}/bluer_objects/tests/test_graphics_frame.py +0 -0
- {bluer_objects-6.294.1 → bluer_objects-6.301.1}/bluer_objects/tests/test_graphics_gif.py +0 -0
- {bluer_objects-6.294.1 → bluer_objects-6.301.1}/bluer_objects/tests/test_graphics_screen.py +0 -0
- {bluer_objects-6.294.1 → bluer_objects-6.301.1}/bluer_objects/tests/test_graphics_signature.py +0 -0
- {bluer_objects-6.294.1 → bluer_objects-6.301.1}/bluer_objects/tests/test_graphics_text.py +0 -0
- {bluer_objects-6.294.1 → bluer_objects-6.301.1}/bluer_objects/tests/test_log_image_grid.py +0 -0
- {bluer_objects-6.294.1 → bluer_objects-6.301.1}/bluer_objects/tests/test_logger.py +0 -0
- {bluer_objects-6.294.1 → bluer_objects-6.301.1}/bluer_objects/tests/test_logger_matrix.py +0 -0
- {bluer_objects-6.294.1 → bluer_objects-6.301.1}/bluer_objects/tests/test_markdown.py +0 -0
- {bluer_objects-6.294.1 → bluer_objects-6.301.1}/bluer_objects/tests/test_metadata.py +0 -0
- {bluer_objects-6.294.1 → bluer_objects-6.301.1}/bluer_objects/tests/test_metadata_flatten.py +0 -0
- {bluer_objects-6.294.1 → bluer_objects-6.301.1}/bluer_objects/tests/test_mlflow.py +0 -0
- {bluer_objects-6.294.1 → bluer_objects-6.301.1}/bluer_objects/tests/test_mlflow_lock.py +0 -0
- {bluer_objects-6.294.1 → bluer_objects-6.301.1}/bluer_objects/tests/test_objects.py +0 -0
- {bluer_objects-6.294.1 → bluer_objects-6.301.1}/bluer_objects/tests/test_path.py +0 -0
- {bluer_objects-6.294.1 → bluer_objects-6.301.1}/bluer_objects/tests/test_storage.py +0 -0
- {bluer_objects-6.294.1 → bluer_objects-6.301.1}/bluer_objects/tests/test_storage_base.py +0 -0
- {bluer_objects-6.294.1 → bluer_objects-6.301.1}/bluer_objects/tests/test_storage_s3.py +0 -0
- {bluer_objects-6.294.1 → bluer_objects-6.301.1}/bluer_objects/tests/test_storage_webdav_request.py +0 -0
- {bluer_objects-6.294.1 → bluer_objects-6.301.1}/bluer_objects/tests/test_storage_webdav_zip.py +0 -0
- {bluer_objects-6.294.1 → bluer_objects-6.301.1}/bluer_objects/tests/test_testing.py +0 -0
- {bluer_objects-6.294.1 → bluer_objects-6.301.1}/bluer_objects/tests/test_version.py +0 -0
- {bluer_objects-6.294.1 → bluer_objects-6.301.1}/bluer_objects/tests/test_web_is_accessible.py +0 -0
- {bluer_objects-6.294.1 → bluer_objects-6.301.1}/bluer_objects/urls.py +0 -0
- {bluer_objects-6.294.1 → bluer_objects-6.301.1}/bluer_objects/web/__init__.py +0 -0
- {bluer_objects-6.294.1 → bluer_objects-6.301.1}/bluer_objects/web/__main__.py +0 -0
- {bluer_objects-6.294.1 → bluer_objects-6.301.1}/bluer_objects/web/functions.py +0 -0
- {bluer_objects-6.294.1 → bluer_objects-6.301.1}/bluer_objects.egg-info/dependency_links.txt +0 -0
- {bluer_objects-6.294.1 → bluer_objects-6.301.1}/bluer_objects.egg-info/requires.txt +0 -0
- {bluer_objects-6.294.1 → bluer_objects-6.301.1}/bluer_objects.egg-info/top_level.txt +0 -0
- {bluer_objects-6.294.1 → bluer_objects-6.301.1}/pyproject.toml +0 -0
- {bluer_objects-6.294.1 → bluer_objects-6.301.1}/requirements.txt +0 -0
- {bluer_objects-6.294.1 → bluer_objects-6.301.1}/setup.cfg +0 -0
- {bluer_objects-6.294.1 → bluer_objects-6.301.1}/setup.py +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: bluer_objects
|
|
3
|
-
Version: 6.
|
|
3
|
+
Version: 6.301.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
|
[](https://github.com/kamangir/bluer-objects/actions/workflows/pylint.yml) [](https://github.com/kamangir/bluer-objects/actions/workflows/pytest.yml) [](https://github.com/kamangir/bluer-objects/actions/workflows/bashtest.yml) [](https://pypi.org/project/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.
|
|
68
|
+
built by 🌀 [`bluer README`](https://github.com/kamangir/bluer-objects/tree/main/bluer_objects/README), based on 🌀 [`bluer_objects-6.301.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
|
[](https://github.com/kamangir/bluer-objects/actions/workflows/pylint.yml) [](https://github.com/kamangir/bluer-objects/actions/workflows/pytest.yml) [](https://github.com/kamangir/bluer-objects/actions/workflows/bashtest.yml) [](https://pypi.org/project/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.
|
|
34
|
+
built by 🌀 [`bluer README`](https://github.com/kamangir/bluer-objects/tree/main/bluer_objects/README), based on 🌀 [`bluer_objects-6.301.1`](https://github.com/kamangir/bluer-objects).
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
#! /usr/bin/env bash
|
|
2
|
+
|
|
3
|
+
function bluer_objects_host() {
|
|
4
|
+
local task=$1
|
|
5
|
+
local options=$2
|
|
6
|
+
|
|
7
|
+
if [ $task == "get" ]; then
|
|
8
|
+
python3 -m bluer_options.host \
|
|
9
|
+
get \
|
|
10
|
+
--keyword "$2" \
|
|
11
|
+
"${@:3}"
|
|
12
|
+
return
|
|
13
|
+
fi
|
|
14
|
+
|
|
15
|
+
if [[ "|reboot|shutdown|" == *"|$task|"* ]]; then
|
|
16
|
+
local command_line
|
|
17
|
+
[[ $task == "reboot" ]] &&
|
|
18
|
+
command_line="sudo reboot"
|
|
19
|
+
[[ $task == "shutdown" ]] &&
|
|
20
|
+
command_line="sudo shutdown -h now"
|
|
21
|
+
|
|
22
|
+
local rpi=$(bluer_ai_option_int "$options" rpi 0)
|
|
23
|
+
if [[ "$rpi" == 1 ]]; then
|
|
24
|
+
local machine_name=$3
|
|
25
|
+
if [[ -z "$machine_name" ]]; then
|
|
26
|
+
bluer_ai_log_error "machine_name not found."
|
|
27
|
+
return 1
|
|
28
|
+
fi
|
|
29
|
+
|
|
30
|
+
ssh \
|
|
31
|
+
pi@$machine_name.local \
|
|
32
|
+
$command_line
|
|
33
|
+
|
|
34
|
+
return
|
|
35
|
+
fi
|
|
36
|
+
|
|
37
|
+
bluer_ai_eval ,$options \
|
|
38
|
+
$command_line
|
|
39
|
+
|
|
40
|
+
return
|
|
41
|
+
fi
|
|
42
|
+
|
|
43
|
+
bluer_ai_log_error "@host: $task: command not found."
|
|
44
|
+
return 1
|
|
45
|
+
}
|
|
@@ -59,3 +59,36 @@ def Items(
|
|
|
59
59
|
output = sorted(output)
|
|
60
60
|
|
|
61
61
|
return output
|
|
62
|
+
|
|
63
|
+
|
|
64
|
+
# dict of {name, url, marquee, description}
|
|
65
|
+
def Items_of_dict(
|
|
66
|
+
dict_of_things: Dict[str, Dict],
|
|
67
|
+
) -> List[str]:
|
|
68
|
+
return Items(
|
|
69
|
+
sorted(
|
|
70
|
+
[
|
|
71
|
+
{
|
|
72
|
+
"name": thing_name,
|
|
73
|
+
"marquee": info.get("marquee", ""),
|
|
74
|
+
"url": f"./{thing_name}.md",
|
|
75
|
+
}
|
|
76
|
+
for thing_name, info in dict_of_things.items()
|
|
77
|
+
if thing_name != "template"
|
|
78
|
+
],
|
|
79
|
+
key=lambda x: x["name"],
|
|
80
|
+
)
|
|
81
|
+
)
|
|
82
|
+
|
|
83
|
+
|
|
84
|
+
# dict of {name, url, marquee, description}
|
|
85
|
+
def list_of_dict(
|
|
86
|
+
dict_of_things: Dict[str, Dict],
|
|
87
|
+
) -> List[str]:
|
|
88
|
+
return sorted(
|
|
89
|
+
[
|
|
90
|
+
f"- [{thing_name}](./{thing_name}.md)"
|
|
91
|
+
for thing_name in dict_of_things
|
|
92
|
+
if thing_name != "template"
|
|
93
|
+
]
|
|
94
|
+
)
|
|
@@ -24,15 +24,16 @@ def help_reboot(
|
|
|
24
24
|
tokens: List[str],
|
|
25
25
|
mono: bool,
|
|
26
26
|
) -> str:
|
|
27
|
-
options = xtra("dryrun", mono=mono)
|
|
27
|
+
options = xtra("dryrun,rpi", mono=mono)
|
|
28
28
|
|
|
29
29
|
return show_usage(
|
|
30
30
|
[
|
|
31
31
|
"@host",
|
|
32
32
|
"reboot",
|
|
33
33
|
f"[{options}]",
|
|
34
|
+
"[<machine-name>]",
|
|
34
35
|
],
|
|
35
|
-
"reboot
|
|
36
|
+
"reboot.",
|
|
36
37
|
mono=mono,
|
|
37
38
|
)
|
|
38
39
|
|
|
@@ -41,15 +42,16 @@ def help_shutdown(
|
|
|
41
42
|
tokens: List[str],
|
|
42
43
|
mono: bool,
|
|
43
44
|
) -> str:
|
|
44
|
-
options = xtra("dryrun", mono=mono)
|
|
45
|
+
options = xtra("dryrun,rpi", mono=mono)
|
|
45
46
|
|
|
46
47
|
return show_usage(
|
|
47
48
|
[
|
|
48
49
|
"@host",
|
|
49
50
|
"shutdown",
|
|
50
51
|
f"[{options}]",
|
|
52
|
+
"[<machine-name>]",
|
|
51
53
|
],
|
|
52
|
-
"shutdown
|
|
54
|
+
"shutdown.",
|
|
53
55
|
mono=mono,
|
|
54
56
|
)
|
|
55
57
|
|
|
@@ -0,0 +1,120 @@
|
|
|
1
|
+
from bluer_objects.README.items import ImageItems, Items, Items_of_dict, list_of_dict
|
|
2
|
+
from bluer_objects.README.consts import assets, assets2
|
|
3
|
+
from bluer_objects import markdown
|
|
4
|
+
from bluer_objects import env
|
|
5
|
+
|
|
6
|
+
dict_of_validations = dict_of_validations = {
|
|
7
|
+
"village-1": {
|
|
8
|
+
"ugv_name": "arzhang",
|
|
9
|
+
"items": ImageItems(
|
|
10
|
+
{
|
|
11
|
+
f"{assets2}/arzhang/20250905_120526.jpg": "",
|
|
12
|
+
f"{assets2}/arzhang/20250905_120808.jpg": "",
|
|
13
|
+
f"{assets2}/arzhang/20250905_121030.jpg": "",
|
|
14
|
+
f"{assets2}/arzhang/20250905_121032.jpg": "",
|
|
15
|
+
f"{assets2}/arzhang/20250905_121702.jpg": "",
|
|
16
|
+
f"{assets2}/arzhang/20250905_121711.jpg": "",
|
|
17
|
+
}
|
|
18
|
+
),
|
|
19
|
+
"marquee": f"{assets}/2025-09-05-11-48-27-d56azo/VID-20250905-WA0014_1.gif",
|
|
20
|
+
},
|
|
21
|
+
"village-2": {
|
|
22
|
+
"ugv_name": "arzhang",
|
|
23
|
+
"items": ImageItems(
|
|
24
|
+
{
|
|
25
|
+
f"{assets2}/arzhang/20250922_094548.jpg": "",
|
|
26
|
+
f"{assets2}/arzhang/20250922_101156.jpg": "",
|
|
27
|
+
f"{assets2}/arzhang/20250922_101409.jpg": "",
|
|
28
|
+
f"{assets2}/arzhang/20250922_101557.jpg": "",
|
|
29
|
+
f"{assets2}/arzhang/20250922_101653.jpg": "",
|
|
30
|
+
f"{assets2}/arzhang/20250922_102822.jpg": "",
|
|
31
|
+
}
|
|
32
|
+
),
|
|
33
|
+
"macros": {
|
|
34
|
+
"debug_objects": markdown.generate_table(
|
|
35
|
+
Items(
|
|
36
|
+
[
|
|
37
|
+
{
|
|
38
|
+
"name": object_name,
|
|
39
|
+
"url": "https://{}.{}/{}".format(
|
|
40
|
+
env.S3_PUBLIC_STORAGE_BUCKET,
|
|
41
|
+
env.S3_STORAGE_ENDPOINT_URL.split("https://", 1)[1],
|
|
42
|
+
f"{object_name}.tar.gz",
|
|
43
|
+
),
|
|
44
|
+
"marquee": f"{assets}/{object_name}/{object_name}.gif",
|
|
45
|
+
}
|
|
46
|
+
for object_name in [
|
|
47
|
+
"swallow-debug-2025-09-22-09-47-32-85hag3",
|
|
48
|
+
"swallow-debug-2025-09-22-09-59-29-emj29v",
|
|
49
|
+
"swallow-debug-2025-09-22-10-01-01-uzray6",
|
|
50
|
+
"swallow-debug-2025-09-22-10-06-19-hcyl1v",
|
|
51
|
+
"swallow-debug-2025-09-22-10-09-44-z6q9kn",
|
|
52
|
+
"swallow-debug-2025-09-22-10-19-35-mobajm",
|
|
53
|
+
]
|
|
54
|
+
]
|
|
55
|
+
),
|
|
56
|
+
cols=3,
|
|
57
|
+
log=False,
|
|
58
|
+
),
|
|
59
|
+
},
|
|
60
|
+
"marquee": f"{assets}/arzhang/20250922_101202_1.gif",
|
|
61
|
+
},
|
|
62
|
+
}
|
|
63
|
+
|
|
64
|
+
|
|
65
|
+
def test_ImageItems():
|
|
66
|
+
items = ImageItems(
|
|
67
|
+
{
|
|
68
|
+
f"{assets2}/swallow/20250701_2206342_1.gif": "",
|
|
69
|
+
f"{assets2}/swallow/20250913_203635~2_1.gif": "",
|
|
70
|
+
}
|
|
71
|
+
)
|
|
72
|
+
|
|
73
|
+
assert isinstance(items, list)
|
|
74
|
+
for item in items:
|
|
75
|
+
assert isinstance(item, str)
|
|
76
|
+
|
|
77
|
+
|
|
78
|
+
def test_Items():
|
|
79
|
+
items = Items(
|
|
80
|
+
[
|
|
81
|
+
{
|
|
82
|
+
"name": "yolo",
|
|
83
|
+
"description": "a yolo interface.",
|
|
84
|
+
"marquee": "https://github.com/kamangir/assets/raw/main/swallow-debug-2025-09-16-19-53-19-4yzsp8/swallow-debug-2025-09-16-19-53-19-4yzsp8-2.gif?raw=true",
|
|
85
|
+
"url": "./bluer_algo/docs/yolo",
|
|
86
|
+
},
|
|
87
|
+
{
|
|
88
|
+
"name": "tracker",
|
|
89
|
+
"marquee": "https://github.com/kamangir/assets/raw/main/tracker-camshift-2025-07-16-11-07-52-4u3nu4/tracker.gif?raw=true",
|
|
90
|
+
"description": "a visual tracker.",
|
|
91
|
+
"url": "./bluer_algo/docs/tracker",
|
|
92
|
+
},
|
|
93
|
+
{
|
|
94
|
+
"name": "image classifier",
|
|
95
|
+
"marquee": "https://github.com/kamangir/assets/raw/main/swallow-model-2025-07-11-15-04-03-2glcch/evaluation.png?raw=true",
|
|
96
|
+
"description": "an image classifier.",
|
|
97
|
+
"url": "./bluer_algo/docs/image_classifier",
|
|
98
|
+
},
|
|
99
|
+
]
|
|
100
|
+
)
|
|
101
|
+
|
|
102
|
+
assert isinstance(items, list)
|
|
103
|
+
for item in items:
|
|
104
|
+
assert isinstance(item, str)
|
|
105
|
+
|
|
106
|
+
|
|
107
|
+
def test_Items_of_dict():
|
|
108
|
+
items = Items_of_dict(dict_of_validations)
|
|
109
|
+
|
|
110
|
+
assert isinstance(items, list)
|
|
111
|
+
for item in items:
|
|
112
|
+
assert isinstance(item, str)
|
|
113
|
+
|
|
114
|
+
|
|
115
|
+
def test_list_of_dict():
|
|
116
|
+
items = list_of_dict(dict_of_validations)
|
|
117
|
+
|
|
118
|
+
assert isinstance(items, list)
|
|
119
|
+
for item in items:
|
|
120
|
+
assert isinstance(item, str)
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: bluer_objects
|
|
3
|
-
Version: 6.
|
|
3
|
+
Version: 6.301.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
|
[](https://github.com/kamangir/bluer-objects/actions/workflows/pylint.yml) [](https://github.com/kamangir/bluer-objects/actions/workflows/pytest.yml) [](https://github.com/kamangir/bluer-objects/actions/workflows/bashtest.yml) [](https://pypi.org/project/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.
|
|
68
|
+
built by 🌀 [`bluer README`](https://github.com/kamangir/bluer-objects/tree/main/bluer_objects/README), based on 🌀 [`bluer_objects-6.301.1`](https://github.com/kamangir/bluer-objects).
|
|
69
69
|
|
|
70
70
|
built by 🌀 [`blueness-3.118.1`](https://github.com/kamangir/blueness).
|
|
@@ -160,6 +160,7 @@ bluer_objects/testing/functions.py
|
|
|
160
160
|
bluer_objects/tests/__init__.py
|
|
161
161
|
bluer_objects/tests/test_README.py
|
|
162
162
|
bluer_objects/tests/test_README_consts.py
|
|
163
|
+
bluer_objects/tests/test_README_items.py
|
|
163
164
|
bluer_objects/tests/test_env.py
|
|
164
165
|
bluer_objects/tests/test_file_download.py
|
|
165
166
|
bluer_objects/tests/test_file_load_save.py
|
|
@@ -1,29 +0,0 @@
|
|
|
1
|
-
#! /usr/bin/env bash
|
|
2
|
-
|
|
3
|
-
function bluer_objects_host() {
|
|
4
|
-
local task=$1
|
|
5
|
-
local options=$2
|
|
6
|
-
|
|
7
|
-
if [ $task == "get" ]; then
|
|
8
|
-
python3 -m bluer_options.host \
|
|
9
|
-
get \
|
|
10
|
-
--keyword "$2" \
|
|
11
|
-
"${@:3}"
|
|
12
|
-
return
|
|
13
|
-
fi
|
|
14
|
-
|
|
15
|
-
if [ $task == "reboot" ]; then
|
|
16
|
-
bluer_ai_eval ,$options \
|
|
17
|
-
sudo reboot
|
|
18
|
-
return
|
|
19
|
-
fi
|
|
20
|
-
|
|
21
|
-
if [ $task == "shutdown" ]; then
|
|
22
|
-
bluer_ai_eval ,$options \
|
|
23
|
-
sudo shutdown -h now
|
|
24
|
-
return
|
|
25
|
-
fi
|
|
26
|
-
|
|
27
|
-
bluer_ai_log_error "@host: $task: command not found."
|
|
28
|
-
return 1
|
|
29
|
-
}
|
|
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
|
{bluer_objects-6.294.1 → bluer_objects-6.301.1}/bluer_objects/.abcli/mlflow/log_artifacts.sh
RENAMED
|
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
|
{bluer_objects-6.294.1 → bluer_objects-6.301.1}/bluer_objects/.abcli/tests/create_test_asset.sh
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{bluer_objects-6.294.1 → bluer_objects-6.301.1}/bluer_objects/.abcli/tests/mlflow_logging.sh
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{bluer_objects-6.294.1 → bluer_objects-6.301.1}/bluer_objects/.abcli/tests/storage_public_upload.sh
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{bluer_objects-6.294.1 → bluer_objects-6.301.1}/bluer_objects/.abcli/tests/web_is_accessible.sh
RENAMED
|
File without changes
|
{bluer_objects-6.294.1 → bluer_objects-6.301.1}/bluer_objects/.abcli/tests/web_where_am_ai.sh
RENAMED
|
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
|
|
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
|
|
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
|
{bluer_objects-6.294.1 → bluer_objects-6.301.1}/bluer_objects/tests/test_file_load_save_text.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{bluer_objects-6.294.1 → bluer_objects-6.301.1}/bluer_objects/tests/test_graphics_signature.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{bluer_objects-6.294.1 → bluer_objects-6.301.1}/bluer_objects/tests/test_metadata_flatten.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{bluer_objects-6.294.1 → bluer_objects-6.301.1}/bluer_objects/tests/test_storage_webdav_request.py
RENAMED
|
File without changes
|
{bluer_objects-6.294.1 → bluer_objects-6.301.1}/bluer_objects/tests/test_storage_webdav_zip.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{bluer_objects-6.294.1 → bluer_objects-6.301.1}/bluer_objects/tests/test_web_is_accessible.py
RENAMED
|
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
|