abstract-utilities 0.2.2.671__tar.gz → 0.2.2.679__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.
- {abstract_utilities-0.2.2.671 → abstract_utilities-0.2.2.679}/PKG-INFO +1 -1
- {abstract_utilities-0.2.2.671 → abstract_utilities-0.2.2.679}/setup.py +1 -1
- {abstract_utilities-0.2.2.671 → abstract_utilities-0.2.2.679}/src/abstract_utilities/__init__.py +3 -1
- {abstract_utilities-0.2.2.671 → abstract_utilities-0.2.2.679}/src/abstract_utilities/file_utils/imports/module_imports.py +1 -1
- {abstract_utilities-0.2.2.671 → abstract_utilities-0.2.2.679}/src/abstract_utilities/file_utils/src/find_collect.py +10 -0
- {abstract_utilities-0.2.2.671 → abstract_utilities-0.2.2.679}/src/abstract_utilities/import_utils/src/import_utils.py +7 -5
- {abstract_utilities-0.2.2.671 → abstract_utilities-0.2.2.679}/src/abstract_utilities/list_utils/list_utils.py +3 -0
- {abstract_utilities-0.2.2.671 → abstract_utilities-0.2.2.679}/src/abstract_utilities/log_utils/log_file.py +18 -14
- {abstract_utilities-0.2.2.671 → abstract_utilities-0.2.2.679}/src/abstract_utilities/read_write_utils/read_write_utils.py +66 -35
- abstract_utilities-0.2.2.679/src/abstract_utilities/safe_utils/imports/imports.py +2 -0
- {abstract_utilities-0.2.2.671 → abstract_utilities-0.2.2.679}/src/abstract_utilities/type_utils/get_type.py +4 -0
- {abstract_utilities-0.2.2.671 → abstract_utilities-0.2.2.679}/src/abstract_utilities.egg-info/PKG-INFO +1 -1
- abstract_utilities-0.2.2.671/src/abstract_utilities/json_utils/imports/imports.py +0 -2
- {abstract_utilities-0.2.2.671 → abstract_utilities-0.2.2.679}/README.md +0 -0
- {abstract_utilities-0.2.2.671 → abstract_utilities-0.2.2.679}/pyproject.toml +0 -0
- {abstract_utilities-0.2.2.671 → abstract_utilities-0.2.2.679}/setup.cfg +0 -0
- {abstract_utilities-0.2.2.671 → abstract_utilities-0.2.2.679}/src/abstract_utilities/class_utils/__init__.py +0 -0
- {abstract_utilities-0.2.2.671 → abstract_utilities-0.2.2.679}/src/abstract_utilities/class_utils/abstract_classes.py +0 -0
- {abstract_utilities-0.2.2.671 → abstract_utilities-0.2.2.679}/src/abstract_utilities/class_utils/caller_utils.py +0 -0
- {abstract_utilities-0.2.2.671 → abstract_utilities-0.2.2.679}/src/abstract_utilities/class_utils/class_utils.py +0 -0
- {abstract_utilities-0.2.2.671 → abstract_utilities-0.2.2.679}/src/abstract_utilities/class_utils/function_utils.py +0 -0
- {abstract_utilities-0.2.2.671 → abstract_utilities-0.2.2.679}/src/abstract_utilities/class_utils/global_utils.py +0 -0
- {abstract_utilities-0.2.2.671 → abstract_utilities-0.2.2.679}/src/abstract_utilities/class_utils/imports/__init__.py +0 -0
- {abstract_utilities-0.2.2.671 → abstract_utilities-0.2.2.679}/src/abstract_utilities/class_utils/imports/imports.py +0 -0
- {abstract_utilities-0.2.2.671 → abstract_utilities-0.2.2.679}/src/abstract_utilities/class_utils/imports/utils.py +0 -0
- {abstract_utilities-0.2.2.671 → abstract_utilities-0.2.2.679}/src/abstract_utilities/class_utils/module_utils.py +0 -0
- {abstract_utilities-0.2.2.671 → abstract_utilities-0.2.2.679}/src/abstract_utilities/compare_utils/__init__.py +0 -0
- {abstract_utilities-0.2.2.671 → abstract_utilities-0.2.2.679}/src/abstract_utilities/compare_utils/best_match.py +0 -0
- {abstract_utilities-0.2.2.671 → abstract_utilities-0.2.2.679}/src/abstract_utilities/compare_utils/compare_utils.py +0 -0
- {abstract_utilities-0.2.2.671 → abstract_utilities-0.2.2.679}/src/abstract_utilities/compare_utils/find_value.py +0 -0
- {abstract_utilities-0.2.2.671 → abstract_utilities-0.2.2.679}/src/abstract_utilities/directory_utils/__init__.py +0 -0
- {abstract_utilities-0.2.2.671 → abstract_utilities-0.2.2.679}/src/abstract_utilities/directory_utils/imports/__init__.py +0 -0
- {abstract_utilities-0.2.2.671 → abstract_utilities-0.2.2.679}/src/abstract_utilities/directory_utils/imports/imports.py +0 -0
- {abstract_utilities-0.2.2.671 → abstract_utilities-0.2.2.679}/src/abstract_utilities/directory_utils/imports/module_imports.py +0 -0
- {abstract_utilities-0.2.2.671 → abstract_utilities-0.2.2.679}/src/abstract_utilities/directory_utils/src/__init__.py +0 -0
- {abstract_utilities-0.2.2.671 → abstract_utilities-0.2.2.679}/src/abstract_utilities/directory_utils/src/directory_utils.py +0 -0
- {abstract_utilities-0.2.2.671 → abstract_utilities-0.2.2.679}/src/abstract_utilities/directory_utils/src/name_utils.py +0 -0
- {abstract_utilities-0.2.2.671 → abstract_utilities-0.2.2.679}/src/abstract_utilities/directory_utils/src/size_utils.py +0 -0
- {abstract_utilities-0.2.2.671 → abstract_utilities-0.2.2.679}/src/abstract_utilities/directory_utils/src/utils.py +0 -0
- {abstract_utilities-0.2.2.671 → abstract_utilities-0.2.2.679}/src/abstract_utilities/env_utils/__init__.py +0 -0
- {abstract_utilities-0.2.2.671 → abstract_utilities-0.2.2.679}/src/abstract_utilities/env_utils/abstractEnv.py +0 -0
- {abstract_utilities-0.2.2.671 → abstract_utilities-0.2.2.679}/src/abstract_utilities/env_utils/envy_it.py +0 -0
- {abstract_utilities-0.2.2.671 → abstract_utilities-0.2.2.679}/src/abstract_utilities/env_utils/imports/__init__.py +0 -0
- {abstract_utilities-0.2.2.671 → abstract_utilities-0.2.2.679}/src/abstract_utilities/env_utils/imports/imports.py +0 -0
- {abstract_utilities-0.2.2.671 → abstract_utilities-0.2.2.679}/src/abstract_utilities/env_utils/imports/utils.py +0 -0
- {abstract_utilities-0.2.2.671 → abstract_utilities-0.2.2.679}/src/abstract_utilities/error_utils/__init__.py +0 -0
- {abstract_utilities-0.2.2.671 → abstract_utilities-0.2.2.679}/src/abstract_utilities/error_utils/error_utils.py +0 -0
- {abstract_utilities-0.2.2.671 → abstract_utilities-0.2.2.679}/src/abstract_utilities/error_utils/imports/__init__.py +0 -0
- {abstract_utilities-0.2.2.671 → abstract_utilities-0.2.2.679}/src/abstract_utilities/error_utils/imports/imports.py +0 -0
- {abstract_utilities-0.2.2.671 → abstract_utilities-0.2.2.679}/src/abstract_utilities/error_utils/imports/module_imports.py +0 -0
- {abstract_utilities-0.2.2.671 → abstract_utilities-0.2.2.679}/src/abstract_utilities/file_utils/__init__.py +0 -0
- {abstract_utilities-0.2.2.671 → abstract_utilities-0.2.2.679}/src/abstract_utilities/file_utils/imports/__init__.py +0 -0
- {abstract_utilities-0.2.2.671 → abstract_utilities-0.2.2.679}/src/abstract_utilities/file_utils/imports/classes.py +0 -0
- {abstract_utilities-0.2.2.671 → abstract_utilities-0.2.2.679}/src/abstract_utilities/file_utils/imports/clean_imps.py +0 -0
- {abstract_utilities-0.2.2.671 → abstract_utilities-0.2.2.679}/src/abstract_utilities/file_utils/imports/constants.py +0 -0
- {abstract_utilities-0.2.2.671 → abstract_utilities-0.2.2.679}/src/abstract_utilities/file_utils/imports/imports.py +0 -0
- {abstract_utilities-0.2.2.671 → abstract_utilities-0.2.2.679}/src/abstract_utilities/file_utils/src/__init__.py +0 -0
- {abstract_utilities-0.2.2.671 → abstract_utilities-0.2.2.679}/src/abstract_utilities/file_utils/src/file_filters/__init__.py +0 -0
- {abstract_utilities-0.2.2.671 → abstract_utilities-0.2.2.679}/src/abstract_utilities/file_utils/src/file_filters/ensure_utils.py +0 -0
- {abstract_utilities-0.2.2.671 → abstract_utilities-0.2.2.679}/src/abstract_utilities/file_utils/src/file_filters/filter_params.py +0 -0
- {abstract_utilities-0.2.2.671 → abstract_utilities-0.2.2.679}/src/abstract_utilities/file_utils/src/file_filters/filter_utils.py +0 -0
- {abstract_utilities-0.2.2.671 → abstract_utilities-0.2.2.679}/src/abstract_utilities/file_utils/src/file_filters/predicate_utils.py +0 -0
- {abstract_utilities-0.2.2.671 → abstract_utilities-0.2.2.679}/src/abstract_utilities/file_utils/src/find_content.py +0 -0
- {abstract_utilities-0.2.2.671 → abstract_utilities-0.2.2.679}/src/abstract_utilities/file_utils/src/initFunctionsGen.py +0 -0
- {abstract_utilities-0.2.2.671 → abstract_utilities-0.2.2.679}/src/abstract_utilities/file_utils/src/initFunctionsGens.py +0 -0
- {abstract_utilities-0.2.2.671 → abstract_utilities-0.2.2.679}/src/abstract_utilities/file_utils/src/map_utils.py +0 -0
- {abstract_utilities-0.2.2.671 → abstract_utilities-0.2.2.679}/src/abstract_utilities/file_utils/src/reader_utils/__init__.py +0 -0
- {abstract_utilities-0.2.2.671 → abstract_utilities-0.2.2.679}/src/abstract_utilities/file_utils/src/reader_utils/directory_reader.py +0 -0
- {abstract_utilities-0.2.2.671 → abstract_utilities-0.2.2.679}/src/abstract_utilities/file_utils/src/reader_utils/file_reader.py +0 -0
- {abstract_utilities-0.2.2.671 → abstract_utilities-0.2.2.679}/src/abstract_utilities/file_utils/src/reader_utils/file_readers.py +0 -0
- {abstract_utilities-0.2.2.671 → abstract_utilities-0.2.2.679}/src/abstract_utilities/file_utils/src/reader_utils/imports.py +0 -0
- {abstract_utilities-0.2.2.671 → abstract_utilities-0.2.2.679}/src/abstract_utilities/file_utils/src/reader_utils/pdf_utils.py +0 -0
- {abstract_utilities-0.2.2.671 → abstract_utilities-0.2.2.679}/src/abstract_utilities/file_utils (2)/__init__.py +0 -0
- {abstract_utilities-0.2.2.671 → abstract_utilities-0.2.2.679}/src/abstract_utilities/file_utils (2)/imports/__init__.py +0 -0
- {abstract_utilities-0.2.2.671 → abstract_utilities-0.2.2.679}/src/abstract_utilities/file_utils (2)/imports/constants.py +0 -0
- {abstract_utilities-0.2.2.671 → abstract_utilities-0.2.2.679}/src/abstract_utilities/file_utils (2)/imports/imports/__init__.py +0 -0
- {abstract_utilities-0.2.2.671 → abstract_utilities-0.2.2.679}/src/abstract_utilities/file_utils (2)/imports/imports/constants.py +0 -0
- {abstract_utilities-0.2.2.671 → abstract_utilities-0.2.2.679}/src/abstract_utilities/file_utils (2)/imports/imports/imports.py +0 -0
- {abstract_utilities-0.2.2.671 → abstract_utilities-0.2.2.679}/src/abstract_utilities/file_utils (2)/imports/imports/module_imports.py +0 -0
- {abstract_utilities-0.2.2.671 → abstract_utilities-0.2.2.679}/src/abstract_utilities/file_utils (2)/imports/utils/__init__.py +0 -0
- {abstract_utilities-0.2.2.671 → abstract_utilities-0.2.2.679}/src/abstract_utilities/file_utils (2)/imports/utils/classes.py +0 -0
- {abstract_utilities-0.2.2.671 → abstract_utilities-0.2.2.679}/src/abstract_utilities/file_utils (2)/imports/utils/clean_imps.py +0 -0
- {abstract_utilities-0.2.2.671 → abstract_utilities-0.2.2.679}/src/abstract_utilities/file_utils (2)/imports/utils/filter_utils.py +0 -0
- {abstract_utilities-0.2.2.671 → abstract_utilities-0.2.2.679}/src/abstract_utilities/file_utils (2)/src/__init__.py +0 -0
- {abstract_utilities-0.2.2.671 → abstract_utilities-0.2.2.679}/src/abstract_utilities/file_utils (2)/src/file_filters.py +0 -0
- {abstract_utilities-0.2.2.671 → abstract_utilities-0.2.2.679}/src/abstract_utilities/file_utils (2)/src/file_reader.py +0 -0
- {abstract_utilities-0.2.2.671 → abstract_utilities-0.2.2.679}/src/abstract_utilities/file_utils (2)/src/find_collect.py +0 -0
- {abstract_utilities-0.2.2.671 → abstract_utilities-0.2.2.679}/src/abstract_utilities/file_utils (2)/src/map_utils.py +0 -0
- {abstract_utilities-0.2.2.671 → abstract_utilities-0.2.2.679}/src/abstract_utilities/file_utils (2)/src/pdf_utils.py +0 -0
- {abstract_utilities-0.2.2.671 → abstract_utilities-0.2.2.679}/src/abstract_utilities/hash_utils/__init__.py +0 -0
- {abstract_utilities-0.2.2.671 → abstract_utilities-0.2.2.679}/src/abstract_utilities/hash_utils/hash_utils.py +0 -0
- {abstract_utilities-0.2.2.671 → abstract_utilities-0.2.2.679}/src/abstract_utilities/hash_utils/imports/__init__.py +0 -0
- {abstract_utilities-0.2.2.671 → abstract_utilities-0.2.2.679}/src/abstract_utilities/hash_utils/imports/imports.py +0 -0
- {abstract_utilities-0.2.2.671 → abstract_utilities-0.2.2.679}/src/abstract_utilities/hash_utils/imports/module_imports.py +0 -0
- {abstract_utilities-0.2.2.671 → abstract_utilities-0.2.2.679}/src/abstract_utilities/history_utils/__init__.py +0 -0
- {abstract_utilities-0.2.2.671 → abstract_utilities-0.2.2.679}/src/abstract_utilities/history_utils/history_utils.py +0 -0
- {abstract_utilities-0.2.2.671 → abstract_utilities-0.2.2.679}/src/abstract_utilities/history_utils/imports/__init__.py +0 -0
- {abstract_utilities-0.2.2.671 → abstract_utilities-0.2.2.679}/src/abstract_utilities/history_utils/imports/imports.py +0 -0
- {abstract_utilities-0.2.2.671 → abstract_utilities-0.2.2.679}/src/abstract_utilities/history_utils/imports/module_imports.py +0 -0
- {abstract_utilities-0.2.2.671 → abstract_utilities-0.2.2.679}/src/abstract_utilities/import_utils/__init__.py +0 -0
- {abstract_utilities-0.2.2.671 → abstract_utilities-0.2.2.679}/src/abstract_utilities/import_utils/circular_import_finder.py +0 -0
- {abstract_utilities-0.2.2.671 → abstract_utilities-0.2.2.679}/src/abstract_utilities/import_utils/circular_import_finder2.py +0 -0
- {abstract_utilities-0.2.2.671 → abstract_utilities-0.2.2.679}/src/abstract_utilities/import_utils/imports/__init__.py +0 -0
- {abstract_utilities-0.2.2.671 → abstract_utilities-0.2.2.679}/src/abstract_utilities/import_utils/imports/constants.py +0 -0
- {abstract_utilities-0.2.2.671 → abstract_utilities-0.2.2.679}/src/abstract_utilities/import_utils/imports/init_imports.py +0 -0
- {abstract_utilities-0.2.2.671 → abstract_utilities-0.2.2.679}/src/abstract_utilities/import_utils/imports/module_imports.py +0 -0
- {abstract_utilities-0.2.2.671 → abstract_utilities-0.2.2.679}/src/abstract_utilities/import_utils/imports/utils.py +0 -0
- {abstract_utilities-0.2.2.671 → abstract_utilities-0.2.2.679}/src/abstract_utilities/import_utils/src/__init__.py +0 -0
- {abstract_utilities-0.2.2.671 → abstract_utilities-0.2.2.679}/src/abstract_utilities/import_utils/src/clean_imports.py +0 -0
- {abstract_utilities-0.2.2.671 → abstract_utilities-0.2.2.679}/src/abstract_utilities/import_utils/src/dot_utils.py +0 -0
- {abstract_utilities-0.2.2.671 → abstract_utilities-0.2.2.679}/src/abstract_utilities/import_utils/src/extract_utils.py +0 -0
- {abstract_utilities-0.2.2.671 → abstract_utilities-0.2.2.679}/src/abstract_utilities/import_utils/src/import_functions.py +0 -0
- {abstract_utilities-0.2.2.671 → abstract_utilities-0.2.2.679}/src/abstract_utilities/import_utils/src/layze_import_utils/__init__.py +0 -0
- {abstract_utilities-0.2.2.671 → abstract_utilities-0.2.2.679}/src/abstract_utilities/import_utils/src/layze_import_utils/lazy_utils.py +0 -0
- {abstract_utilities-0.2.2.671 → abstract_utilities-0.2.2.679}/src/abstract_utilities/import_utils/src/layze_import_utils/nullProxy.py +0 -0
- {abstract_utilities-0.2.2.671 → abstract_utilities-0.2.2.679}/src/abstract_utilities/import_utils/src/package_utils/__init__.py +0 -0
- {abstract_utilities-0.2.2.671 → abstract_utilities-0.2.2.679}/src/abstract_utilities/import_utils/src/package_utils/context_utils.py +0 -0
- {abstract_utilities-0.2.2.671 → abstract_utilities-0.2.2.679}/src/abstract_utilities/import_utils/src/package_utils/import_collectors.py +0 -0
- {abstract_utilities-0.2.2.671 → abstract_utilities-0.2.2.679}/src/abstract_utilities/import_utils/src/package_utils/path_utils.py +0 -0
- {abstract_utilities-0.2.2.671 → abstract_utilities-0.2.2.679}/src/abstract_utilities/import_utils/src/package_utils/safe_import.py +0 -0
- {abstract_utilities-0.2.2.671 → abstract_utilities-0.2.2.679}/src/abstract_utilities/import_utils/src/pkg_utils.py +0 -0
- {abstract_utilities-0.2.2.671 → abstract_utilities-0.2.2.679}/src/abstract_utilities/import_utils/src/sysroot_utils.py +0 -0
- {abstract_utilities-0.2.2.671 → abstract_utilities-0.2.2.679}/src/abstract_utilities/imports.py +0 -0
- {abstract_utilities-0.2.2.671 → abstract_utilities-0.2.2.679}/src/abstract_utilities/json_utils/__init__.py +0 -0
- {abstract_utilities-0.2.2.671 → abstract_utilities-0.2.2.679}/src/abstract_utilities/json_utils/imports/__init__.py +0 -0
- {abstract_utilities-0.2.2.671/src/abstract_utilities/safe_utils → abstract_utilities-0.2.2.679/src/abstract_utilities/json_utils}/imports/imports.py +0 -0
- {abstract_utilities-0.2.2.671 → abstract_utilities-0.2.2.679}/src/abstract_utilities/json_utils/imports/module_imports.py +0 -0
- {abstract_utilities-0.2.2.671 → abstract_utilities-0.2.2.679}/src/abstract_utilities/json_utils/json_utils.py +0 -0
- {abstract_utilities-0.2.2.671 → abstract_utilities-0.2.2.679}/src/abstract_utilities/list_utils/__init__.py +0 -0
- {abstract_utilities-0.2.2.671 → abstract_utilities-0.2.2.679}/src/abstract_utilities/list_utils/imports/__init__.py +0 -0
- {abstract_utilities-0.2.2.671 → abstract_utilities-0.2.2.679}/src/abstract_utilities/list_utils/imports/imports.py +0 -0
- {abstract_utilities-0.2.2.671 → abstract_utilities-0.2.2.679}/src/abstract_utilities/list_utils/imports/module_imports.py +0 -0
- {abstract_utilities-0.2.2.671 → abstract_utilities-0.2.2.679}/src/abstract_utilities/log_utils/__init__.py +0 -0
- {abstract_utilities-0.2.2.671 → abstract_utilities-0.2.2.679}/src/abstract_utilities/log_utils/abstractLogManager.py +0 -0
- {abstract_utilities-0.2.2.671 → abstract_utilities-0.2.2.679}/src/abstract_utilities/log_utils/call_response.py +0 -0
- {abstract_utilities-0.2.2.671 → abstract_utilities-0.2.2.679}/src/abstract_utilities/log_utils/imports/__init__.py +0 -0
- {abstract_utilities-0.2.2.671 → abstract_utilities-0.2.2.679}/src/abstract_utilities/log_utils/imports/imports.py +0 -0
- {abstract_utilities-0.2.2.671 → abstract_utilities-0.2.2.679}/src/abstract_utilities/log_utils/imports/module_imports.py +0 -0
- {abstract_utilities-0.2.2.671 → abstract_utilities-0.2.2.679}/src/abstract_utilities/log_utils/logger_callable.py +0 -0
- {abstract_utilities-0.2.2.671 → abstract_utilities-0.2.2.679}/src/abstract_utilities/math_utils/__init__.py +0 -0
- {abstract_utilities-0.2.2.671 → abstract_utilities-0.2.2.679}/src/abstract_utilities/math_utils/imports/__init__.py +0 -0
- {abstract_utilities-0.2.2.671 → abstract_utilities-0.2.2.679}/src/abstract_utilities/math_utils/imports/imports.py +0 -0
- {abstract_utilities-0.2.2.671 → abstract_utilities-0.2.2.679}/src/abstract_utilities/math_utils/imports/module_imports.py +0 -0
- {abstract_utilities-0.2.2.671 → abstract_utilities-0.2.2.679}/src/abstract_utilities/math_utils/math_utils.py +0 -0
- {abstract_utilities-0.2.2.671 → abstract_utilities-0.2.2.679}/src/abstract_utilities/parse_utils/__init__.py +0 -0
- {abstract_utilities-0.2.2.671 → abstract_utilities-0.2.2.679}/src/abstract_utilities/parse_utils/imports/__init__.py +0 -0
- {abstract_utilities-0.2.2.671 → abstract_utilities-0.2.2.679}/src/abstract_utilities/parse_utils/imports/constants.py +0 -0
- {abstract_utilities-0.2.2.671 → abstract_utilities-0.2.2.679}/src/abstract_utilities/parse_utils/imports/imports.py +0 -0
- {abstract_utilities-0.2.2.671 → abstract_utilities-0.2.2.679}/src/abstract_utilities/parse_utils/imports/module_imports.py +0 -0
- {abstract_utilities-0.2.2.671 → abstract_utilities-0.2.2.679}/src/abstract_utilities/parse_utils/parse_utils.py +0 -0
- {abstract_utilities-0.2.2.671 → abstract_utilities-0.2.2.679}/src/abstract_utilities/path_utils/__init__.py +0 -0
- {abstract_utilities-0.2.2.671 → abstract_utilities-0.2.2.679}/src/abstract_utilities/path_utils/imports/__init__.py +0 -0
- {abstract_utilities-0.2.2.671 → abstract_utilities-0.2.2.679}/src/abstract_utilities/path_utils/imports/imports.py +0 -0
- {abstract_utilities-0.2.2.671 → abstract_utilities-0.2.2.679}/src/abstract_utilities/path_utils/imports/module_imports.py +0 -0
- {abstract_utilities-0.2.2.671 → abstract_utilities-0.2.2.679}/src/abstract_utilities/path_utils/path_utils.py +0 -0
- {abstract_utilities-0.2.2.671 → abstract_utilities-0.2.2.679}/src/abstract_utilities/read_write_utils/__init__.py +0 -0
- {abstract_utilities-0.2.2.671 → abstract_utilities-0.2.2.679}/src/abstract_utilities/read_write_utils/imports/__init__.py +0 -0
- {abstract_utilities-0.2.2.671 → abstract_utilities-0.2.2.679}/src/abstract_utilities/read_write_utils/imports/imports.py +0 -0
- {abstract_utilities-0.2.2.671 → abstract_utilities-0.2.2.679}/src/abstract_utilities/read_write_utils/imports/module_imports.py +0 -0
- {abstract_utilities-0.2.2.671 → abstract_utilities-0.2.2.679}/src/abstract_utilities/safe_utils/__init__.py +0 -0
- {abstract_utilities-0.2.2.671 → abstract_utilities-0.2.2.679}/src/abstract_utilities/safe_utils/imports/__init__.py +0 -0
- {abstract_utilities-0.2.2.671 → abstract_utilities-0.2.2.679}/src/abstract_utilities/safe_utils/imports/module_imports.py +0 -0
- {abstract_utilities-0.2.2.671 → abstract_utilities-0.2.2.679}/src/abstract_utilities/safe_utils/safe_utils.py +0 -0
- {abstract_utilities-0.2.2.671 → abstract_utilities-0.2.2.679}/src/abstract_utilities/ssh_utils/__init__.py +0 -0
- {abstract_utilities-0.2.2.671 → abstract_utilities-0.2.2.679}/src/abstract_utilities/ssh_utils/classes.py +0 -0
- {abstract_utilities-0.2.2.671 → abstract_utilities-0.2.2.679}/src/abstract_utilities/ssh_utils/cmd_utils.py +0 -0
- {abstract_utilities-0.2.2.671 → abstract_utilities-0.2.2.679}/src/abstract_utilities/ssh_utils/imports/__init__.py +0 -0
- {abstract_utilities-0.2.2.671 → abstract_utilities-0.2.2.679}/src/abstract_utilities/ssh_utils/imports/imports.py +0 -0
- {abstract_utilities-0.2.2.671 → abstract_utilities-0.2.2.679}/src/abstract_utilities/ssh_utils/imports/module_imports.py +0 -0
- {abstract_utilities-0.2.2.671 → abstract_utilities-0.2.2.679}/src/abstract_utilities/ssh_utils/imports/utils.py +0 -0
- {abstract_utilities-0.2.2.671 → abstract_utilities-0.2.2.679}/src/abstract_utilities/ssh_utils/pexpect_utils.py +0 -0
- {abstract_utilities-0.2.2.671 → abstract_utilities-0.2.2.679}/src/abstract_utilities/ssh_utils/type_checks.py +0 -0
- {abstract_utilities-0.2.2.671 → abstract_utilities-0.2.2.679}/src/abstract_utilities/string_utils/__init__.py +0 -0
- {abstract_utilities-0.2.2.671 → abstract_utilities-0.2.2.679}/src/abstract_utilities/string_utils/clean_utils.py +0 -0
- {abstract_utilities-0.2.2.671 → abstract_utilities-0.2.2.679}/src/abstract_utilities/string_utils/eat_utils.py +0 -0
- {abstract_utilities-0.2.2.671 → abstract_utilities-0.2.2.679}/src/abstract_utilities/string_utils/imports/__init__.py +0 -0
- {abstract_utilities-0.2.2.671 → abstract_utilities-0.2.2.679}/src/abstract_utilities/string_utils/imports/imports.py +0 -0
- {abstract_utilities-0.2.2.671 → abstract_utilities-0.2.2.679}/src/abstract_utilities/string_utils/imports/module_imports.py +0 -0
- {abstract_utilities-0.2.2.671 → abstract_utilities-0.2.2.679}/src/abstract_utilities/string_utils/imports/utils.py +0 -0
- {abstract_utilities-0.2.2.671 → abstract_utilities-0.2.2.679}/src/abstract_utilities/string_utils/replace_utils.py +0 -0
- {abstract_utilities-0.2.2.671 → abstract_utilities-0.2.2.679}/src/abstract_utilities/thread_utils/__init__.py +0 -0
- {abstract_utilities-0.2.2.671 → abstract_utilities-0.2.2.679}/src/abstract_utilities/thread_utils/imports/__init__.py +0 -0
- {abstract_utilities-0.2.2.671 → abstract_utilities-0.2.2.679}/src/abstract_utilities/thread_utils/imports/imports.py +0 -0
- {abstract_utilities-0.2.2.671 → abstract_utilities-0.2.2.679}/src/abstract_utilities/thread_utils/imports/module_imports.py +0 -0
- {abstract_utilities-0.2.2.671 → abstract_utilities-0.2.2.679}/src/abstract_utilities/thread_utils/thread_utils.py +0 -0
- {abstract_utilities-0.2.2.671 → abstract_utilities-0.2.2.679}/src/abstract_utilities/time_utils/__init__.py +0 -0
- {abstract_utilities-0.2.2.671 → abstract_utilities-0.2.2.679}/src/abstract_utilities/time_utils/imports/__init__.py +0 -0
- {abstract_utilities-0.2.2.671 → abstract_utilities-0.2.2.679}/src/abstract_utilities/time_utils/imports/imports.py +0 -0
- {abstract_utilities-0.2.2.671 → abstract_utilities-0.2.2.679}/src/abstract_utilities/time_utils/imports/module_imports.py +0 -0
- {abstract_utilities-0.2.2.671 → abstract_utilities-0.2.2.679}/src/abstract_utilities/time_utils/time_utils.py +0 -0
- {abstract_utilities-0.2.2.671 → abstract_utilities-0.2.2.679}/src/abstract_utilities/type_utils/__init__.py +0 -0
- {abstract_utilities-0.2.2.671 → abstract_utilities-0.2.2.679}/src/abstract_utilities/type_utils/alpha_utils.py +0 -0
- {abstract_utilities-0.2.2.671 → abstract_utilities-0.2.2.679}/src/abstract_utilities/type_utils/imports/__init__.py +0 -0
- {abstract_utilities-0.2.2.671 → abstract_utilities-0.2.2.679}/src/abstract_utilities/type_utils/imports/constants.py +0 -0
- {abstract_utilities-0.2.2.671 → abstract_utilities-0.2.2.679}/src/abstract_utilities/type_utils/imports/imports.py +0 -0
- {abstract_utilities-0.2.2.671 → abstract_utilities-0.2.2.679}/src/abstract_utilities/type_utils/imports/module_imports.py +0 -0
- {abstract_utilities-0.2.2.671 → abstract_utilities-0.2.2.679}/src/abstract_utilities/type_utils/is_type.py +0 -0
- {abstract_utilities-0.2.2.671 → abstract_utilities-0.2.2.679}/src/abstract_utilities/type_utils/make_type.py +0 -0
- {abstract_utilities-0.2.2.671 → abstract_utilities-0.2.2.679}/src/abstract_utilities/type_utils/mime_types.py +0 -0
- {abstract_utilities-0.2.2.671 → abstract_utilities-0.2.2.679}/src/abstract_utilities/type_utils/num_utils.py +0 -0
- {abstract_utilities-0.2.2.671 → abstract_utilities-0.2.2.679}/src/abstract_utilities/type_utils/type_utils.py +0 -0
- {abstract_utilities-0.2.2.671 → abstract_utilities-0.2.2.679}/src/abstract_utilities/utils.py +0 -0
- {abstract_utilities-0.2.2.671 → abstract_utilities-0.2.2.679}/src/abstract_utilities.egg-info/SOURCES.txt +0 -0
- {abstract_utilities-0.2.2.671 → abstract_utilities-0.2.2.679}/src/abstract_utilities.egg-info/dependency_links.txt +0 -0
- {abstract_utilities-0.2.2.671 → abstract_utilities-0.2.2.679}/src/abstract_utilities.egg-info/requires.txt +0 -0
- {abstract_utilities-0.2.2.671 → abstract_utilities-0.2.2.679}/src/abstract_utilities.egg-info/top_level.txt +0 -0
- {abstract_utilities-0.2.2.671 → abstract_utilities-0.2.2.679}/tests/test.py +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: abstract_utilities
|
|
3
|
-
Version: 0.2.2.
|
|
3
|
+
Version: 0.2.2.679
|
|
4
4
|
Summary: abstract_utilities is a collection of utility modules providing a variety of functions to aid in tasks such as data comparison, list manipulation, JSON handling, string manipulation, mathematical computations, and time operations.
|
|
5
5
|
Home-page: https://github.com/AbstractEndeavors/abstract_utilities
|
|
6
6
|
Author: putkoff
|
|
@@ -4,7 +4,7 @@ with open("README.md", "r", encoding="utf-8") as fh:
|
|
|
4
4
|
long_description = fh.read()
|
|
5
5
|
setuptools.setup(
|
|
6
6
|
name='abstract_utilities',
|
|
7
|
-
version='0.2.2.
|
|
7
|
+
version='0.2.2.679',
|
|
8
8
|
author='putkoff',
|
|
9
9
|
author_email='partners@abstractendeavors.com',
|
|
10
10
|
description='abstract_utilities is a collection of utility modules providing a variety of functions to aid in tasks such as data comparison, list manipulation, JSON handling, string manipulation, mathematical computations, and time operations.',
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
from ...list_utils import make_list
|
|
2
|
-
from ...type_utils import get_media_exts, is_media_type, MIME_TYPES, is_str
|
|
2
|
+
from ...type_utils import get_media_exts, is_media_type, MIME_TYPES, is_str,if_not_bool_default
|
|
3
3
|
from ...ssh_utils import *
|
|
4
4
|
from ...env_utils import *
|
|
5
5
|
from ...read_write_utils import read_from_file,write_to_file
|
|
@@ -188,3 +188,13 @@ def collect_filepaths(
|
|
|
188
188
|
) -> List[str]:
|
|
189
189
|
kwargs['file_type']='f'
|
|
190
190
|
return collect_globs(*args,**kwargs)
|
|
191
|
+
|
|
192
|
+
def get_filename(path):
|
|
193
|
+
basename = os.path.basename(path)
|
|
194
|
+
filename,ext = os.path.splitext(basename)
|
|
195
|
+
return filename
|
|
196
|
+
def find_files(filename,directory=None,add=None):
|
|
197
|
+
add = if_not_bool_default(add,default=True)
|
|
198
|
+
directory = directory or os.getcwd()
|
|
199
|
+
dirs,files = get_files_and_dirs(directory,add=add)
|
|
200
|
+
return [file for file in files if get_filename(file) == filename]
|
|
@@ -326,12 +326,14 @@ def initFuncs(self, mode=None):
|
|
|
326
326
|
existing = set(self.__dict__) | set(dir(self))
|
|
327
327
|
|
|
328
328
|
for _, module_name, _ in pkgutil.iter_modules(pkg.__path__):
|
|
329
|
-
|
|
330
|
-
|
|
331
|
-
for name, obj in inspect.getmembers(mod, inspect.isfunction):
|
|
332
|
-
if name not in existing:
|
|
333
|
-
setattr(self, name, obj.__get__(self))
|
|
329
|
+
try:
|
|
330
|
+
mod = importlib.import_module(f"{pkg.__name__}.{module_name}")
|
|
334
331
|
|
|
332
|
+
for name, obj in inspect.getmembers(mod, inspect.isfunction):
|
|
333
|
+
if name not in existing:
|
|
334
|
+
setattr(self, name, obj.__get__(self))
|
|
335
|
+
except Exception as e:
|
|
336
|
+
logger.error(f"initFuncs({mode}) pkgutil error: {e}")
|
|
335
337
|
except Exception as e:
|
|
336
338
|
logger.error(f"initFuncs({mode}) error: {e}")
|
|
337
339
|
|
|
@@ -1,7 +1,8 @@
|
|
|
1
1
|
from .imports import *
|
|
2
2
|
import os, sys, inspect, logging
|
|
3
3
|
from logging.handlers import RotatingFileHandler
|
|
4
|
-
|
|
4
|
+
import logging
|
|
5
|
+
from pathlib import Path
|
|
5
6
|
PACKAGE_NAME = "abstract_utilities" # ← update if needed
|
|
6
7
|
|
|
7
8
|
|
|
@@ -96,7 +97,6 @@ def get_logFile(
|
|
|
96
97
|
):
|
|
97
98
|
logger = logging.getLogger(name)
|
|
98
99
|
|
|
99
|
-
# Prevent duplicate handlers (VERY important)
|
|
100
100
|
if logger.handlers:
|
|
101
101
|
return logger
|
|
102
102
|
|
|
@@ -104,20 +104,23 @@ def get_logFile(
|
|
|
104
104
|
|
|
105
105
|
formatter = logging.Formatter(LOG_FORMAT, DATE_FORMAT)
|
|
106
106
|
|
|
107
|
-
|
|
108
|
-
|
|
107
|
+
try:
|
|
108
|
+
log_dir = Path(log_dir)
|
|
109
|
+
log_dir.mkdir(parents=True, exist_ok=True)
|
|
110
|
+
|
|
111
|
+
file_handler = RotatingFileHandler(
|
|
112
|
+
log_dir / f"{name}.log",
|
|
113
|
+
maxBytes=max_bytes,
|
|
114
|
+
backupCount=backup_count,
|
|
115
|
+
encoding="utf-8",
|
|
116
|
+
)
|
|
117
|
+
file_handler.setFormatter(formatter)
|
|
118
|
+
logger.addHandler(file_handler)
|
|
109
119
|
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
maxBytes=max_bytes,
|
|
114
|
-
backupCount=backup_count,
|
|
115
|
-
encoding="utf-8",
|
|
116
|
-
)
|
|
117
|
-
file_handler.setFormatter(formatter)
|
|
118
|
-
logger.addHandler(file_handler)
|
|
120
|
+
except PermissionError:
|
|
121
|
+
# 🔒 Import-safe fallback
|
|
122
|
+
logger.addHandler(logging.NullHandler())
|
|
119
123
|
|
|
120
|
-
# Console handler
|
|
121
124
|
if console:
|
|
122
125
|
console_handler = logging.StreamHandler()
|
|
123
126
|
console_handler.setFormatter(formatter)
|
|
@@ -127,6 +130,7 @@ def get_logFile(
|
|
|
127
130
|
return logger
|
|
128
131
|
|
|
129
132
|
|
|
133
|
+
|
|
130
134
|
def _find_caller_frame_index():
|
|
131
135
|
"""Find the correct caller module outside this logger."""
|
|
132
136
|
for idx, frame_info in enumerate(inspect.stack()):
|
|
@@ -15,6 +15,38 @@ Usage:
|
|
|
15
15
|
from .imports import *
|
|
16
16
|
_FILE_PATH_KEYS = ['file', 'filepath', 'file_path', 'path', 'directory', 'f', 'dst', 'dest']
|
|
17
17
|
_CONTENTS_KEYS = ['cont', 'content', 'contents', 'data', 'datas', 'dat', 'src', 'source']
|
|
18
|
+
from pathlib import Path
|
|
19
|
+
import uuid
|
|
20
|
+
import shlex
|
|
21
|
+
|
|
22
|
+
_STAGE_ROOT = Path("/var/tmp/abstract_stage")
|
|
23
|
+
|
|
24
|
+
|
|
25
|
+
def _stage_file(contents: str, suffix=".tmp") -> Path:
|
|
26
|
+
"""
|
|
27
|
+
Write contents to a local staging file.
|
|
28
|
+
"""
|
|
29
|
+
_STAGE_ROOT.mkdir(parents=True, exist_ok=True)
|
|
30
|
+
path = _STAGE_ROOT / f"{uuid.uuid4().hex}{suffix}"
|
|
31
|
+
path.write_text(str(contents), encoding="utf-8")
|
|
32
|
+
return path
|
|
33
|
+
|
|
34
|
+
|
|
35
|
+
def _install_file(staged: Path, dest: str, **kwargs) -> str:
|
|
36
|
+
"""
|
|
37
|
+
Atomically install a staged file to destination using sudo install.
|
|
38
|
+
"""
|
|
39
|
+
cmd = (
|
|
40
|
+
f"sudo install -D -m 0644 "
|
|
41
|
+
f"{shlex.quote(str(staged))} "
|
|
42
|
+
f"{shlex.quote(dest)}"
|
|
43
|
+
)
|
|
44
|
+
return run_local_cmd(
|
|
45
|
+
cmd=cmd,
|
|
46
|
+
password=kwargs.get("password"),
|
|
47
|
+
key=kwargs.get("key"),
|
|
48
|
+
env_path=kwargs.get("env_path"),
|
|
49
|
+
)
|
|
18
50
|
|
|
19
51
|
|
|
20
52
|
# --- Helper utilities --------------------------------------------------------
|
|
@@ -251,54 +283,53 @@ def _should_use_remote(**kwargs) -> bool:
|
|
|
251
283
|
|
|
252
284
|
def _write_to_file(contents: str, file_path: str, **kwargs) -> str:
|
|
253
285
|
"""
|
|
254
|
-
|
|
255
|
-
Uses native I/O for local writes and streams for remote.
|
|
286
|
+
Unified writer using stage → install model.
|
|
256
287
|
"""
|
|
257
288
|
|
|
258
289
|
remote = _should_use_remote(**kwargs)
|
|
259
|
-
dirname = os.path.dirname(file_path)
|
|
260
|
-
make_dirs(dirname, exist_ok=True, **kwargs)
|
|
261
290
|
|
|
262
|
-
# ---
|
|
263
|
-
if
|
|
291
|
+
# --- Remote path (unchanged conceptually) ---
|
|
292
|
+
if remote:
|
|
293
|
+
tmp_path = _stage_file(contents)
|
|
294
|
+
|
|
295
|
+
user_at_host = kwargs["user_at_host"]
|
|
296
|
+
password = kwargs.get("password")
|
|
297
|
+
key = kwargs.get("key")
|
|
298
|
+
|
|
299
|
+
# copy staged file
|
|
300
|
+
scp_cmd = (
|
|
301
|
+
f"scp {shlex.quote(str(tmp_path))} "
|
|
302
|
+
f"{shlex.quote(user_at_host)}:{shlex.quote(file_path)}"
|
|
303
|
+
)
|
|
304
|
+
return run_pruned_func(
|
|
305
|
+
run_local_cmd,
|
|
306
|
+
cmd=scp_cmd,
|
|
307
|
+
password=password,
|
|
308
|
+
key=key,
|
|
309
|
+
**kwargs
|
|
310
|
+
)
|
|
311
|
+
|
|
312
|
+
# --- Local path ---
|
|
313
|
+
try:
|
|
314
|
+
# Attempt direct write for non-privileged paths
|
|
315
|
+
os.makedirs(os.path.dirname(file_path) or ".", exist_ok=True)
|
|
264
316
|
with open(file_path, "w", encoding="utf-8") as f:
|
|
265
|
-
f.write(contents)
|
|
317
|
+
f.write(str(contents))
|
|
266
318
|
return file_path
|
|
267
319
|
|
|
268
|
-
|
|
269
|
-
|
|
270
|
-
|
|
271
|
-
|
|
272
|
-
|
|
273
|
-
# Write to a temporary file locally first
|
|
274
|
-
tmp_path = "/tmp/_abstract_write.tmp"
|
|
275
|
-
with open(tmp_path, "w", encoding="utf-8") as tmpf:
|
|
276
|
-
tmpf.write(contents)
|
|
277
|
-
|
|
278
|
-
user_at_host = kwargs["user_at_host"]
|
|
279
|
-
password = kwargs.get("password")
|
|
280
|
-
key = kwargs.get("key")
|
|
281
|
-
|
|
282
|
-
# Use scp for remote write — no shell arg limits
|
|
283
|
-
scp_cmd = f"scp {shlex.quote(tmp_path)} {user_at_host}:{shlex.quote(file_path)}"
|
|
284
|
-
return run_pruned_func(
|
|
285
|
-
run_local_cmd,
|
|
286
|
-
cmd=scp_cmd,
|
|
287
|
-
password=password,
|
|
288
|
-
key=key,
|
|
289
|
-
**kwargs
|
|
290
|
-
)
|
|
320
|
+
except (PermissionError, FileNotFoundError):
|
|
321
|
+
# Privileged path → stage + install
|
|
322
|
+
staged = _stage_file(contents)
|
|
323
|
+
return _install_file(staged, file_path, **kwargs)
|
|
324
|
+
|
|
291
325
|
|
|
292
326
|
|
|
293
327
|
def write_to_file(*, contents: str, file_path: str, **kwargs):
|
|
294
328
|
"""
|
|
295
|
-
Error-handled
|
|
329
|
+
Error-handled public writer.
|
|
296
330
|
"""
|
|
297
|
-
|
|
298
331
|
try:
|
|
299
|
-
|
|
300
|
-
return result
|
|
301
|
-
|
|
332
|
+
return _write_to_file(contents=contents, file_path=file_path, **kwargs)
|
|
302
333
|
except Exception as e:
|
|
303
334
|
print("WRITE ERROR:", e)
|
|
304
335
|
raise RuntimeError(f"Failed writing: {file_path}")
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: abstract_utilities
|
|
3
|
-
Version: 0.2.2.
|
|
3
|
+
Version: 0.2.2.679
|
|
4
4
|
Summary: abstract_utilities is a collection of utility modules providing a variety of functions to aid in tasks such as data comparison, list manipulation, JSON handling, string manipulation, mathematical computations, and time operations.
|
|
5
5
|
Home-page: https://github.com/AbstractEndeavors/abstract_utilities
|
|
6
6
|
Author: putkoff
|
|
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
|
|
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
|
{abstract_utilities-0.2.2.671 → abstract_utilities-0.2.2.679}/src/abstract_utilities/imports.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
|
|
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
|
{abstract_utilities-0.2.2.671 → abstract_utilities-0.2.2.679}/src/abstract_utilities/utils.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|