dycw-utilities 0.116.2__tar.gz → 0.116.3__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.
- {dycw_utilities-0.116.2 → dycw_utilities-0.116.3}/PKG-INFO +1 -1
- {dycw_utilities-0.116.2 → dycw_utilities-0.116.3}/pyproject.toml +2 -2
- {dycw_utilities-0.116.2 → dycw_utilities-0.116.3}/src/tests/test_asyncio.py +2 -2
- dycw_utilities-0.116.3/src/tests/test_importlib.py +20 -0
- {dycw_utilities-0.116.2 → dycw_utilities-0.116.3}/src/utilities/__init__.py +1 -1
- dycw_utilities-0.116.3/src/utilities/importlib.py +16 -0
- {dycw_utilities-0.116.2 → dycw_utilities-0.116.3}/.gitignore +0 -0
- {dycw_utilities-0.116.2 → dycw_utilities-0.116.3}/LICENSE +0 -0
- {dycw_utilities-0.116.2 → dycw_utilities-0.116.3}/README.md +0 -0
- {dycw_utilities-0.116.2 → dycw_utilities-0.116.3}/src/tests/__init__.py +0 -0
- {dycw_utilities-0.116.2 → dycw_utilities-0.116.3}/src/tests/conftest.py +0 -0
- {dycw_utilities-0.116.2 → dycw_utilities-0.116.3}/src/tests/modules/__init__.py +0 -0
- {dycw_utilities-0.116.2 → dycw_utilities-0.116.3}/src/tests/modules/package_missing/__init__.py +0 -0
- {dycw_utilities-0.116.2 → dycw_utilities-0.116.3}/src/tests/modules/package_missing/module.py +0 -0
- {dycw_utilities-0.116.2 → dycw_utilities-0.116.3}/src/tests/modules/package_with/__init__.py +0 -0
- {dycw_utilities-0.116.2 → dycw_utilities-0.116.3}/src/tests/modules/package_with/outer_1.py +0 -0
- {dycw_utilities-0.116.2 → dycw_utilities-0.116.3}/src/tests/modules/package_with/outer_2.py +0 -0
- {dycw_utilities-0.116.2 → dycw_utilities-0.116.3}/src/tests/modules/package_with/subpackage/__init__.py +0 -0
- {dycw_utilities-0.116.2 → dycw_utilities-0.116.3}/src/tests/modules/package_with/subpackage/inner_1.py +0 -0
- {dycw_utilities-0.116.2 → dycw_utilities-0.116.3}/src/tests/modules/package_with/subpackage/inner_2.py +0 -0
- {dycw_utilities-0.116.2 → dycw_utilities-0.116.3}/src/tests/modules/package_with/subpackage/inner_3.py +0 -0
- {dycw_utilities-0.116.2 → dycw_utilities-0.116.3}/src/tests/modules/package_without/__init__.py +0 -0
- {dycw_utilities-0.116.2 → dycw_utilities-0.116.3}/src/tests/modules/package_without/module_1.py +0 -0
- {dycw_utilities-0.116.2 → dycw_utilities-0.116.3}/src/tests/modules/package_without/module_2.py +0 -0
- {dycw_utilities-0.116.2 → dycw_utilities-0.116.3}/src/tests/modules/standalone.py +0 -0
- {dycw_utilities-0.116.2 → dycw_utilities-0.116.3}/src/tests/modules/with_imports.py +0 -0
- {dycw_utilities-0.116.2 → dycw_utilities-0.116.3}/src/tests/regressions/test_pytest_regressions/TestMultipleRegressionFixtures__test_main__obj.json +0 -0
- {dycw_utilities-0.116.2 → dycw_utilities-0.116.3}/src/tests/regressions/test_pytest_regressions/TestMultipleRegressionFixtures__test_main__series.json +0 -0
- {dycw_utilities-0.116.2 → dycw_utilities-0.116.3}/src/tests/regressions/test_pytest_regressions/TestOrjsonRegressionFixture__test_dataclass_int.json +0 -0
- {dycw_utilities-0.116.2 → dycw_utilities-0.116.3}/src/tests/regressions/test_pytest_regressions/TestOrjsonRegressionFixture__test_dataclass_literal__false.json +0 -0
- {dycw_utilities-0.116.2 → dycw_utilities-0.116.3}/src/tests/regressions/test_pytest_regressions/TestOrjsonRegressionFixture__test_dataclass_literal__true.json +0 -0
- {dycw_utilities-0.116.2 → dycw_utilities-0.116.3}/src/tests/regressions/test_pytest_regressions/TestOrjsonRegressionFixture__test_dataclass_nested.json +0 -0
- {dycw_utilities-0.116.2 → dycw_utilities-0.116.3}/src/tests/regressions/test_pytest_regressions/TestPolarsRegressionFixture__test_dataframe.json +0 -0
- {dycw_utilities-0.116.2 → dycw_utilities-0.116.3}/src/tests/regressions/test_pytest_regressions/TestPolarsRegressionFixture__test_series.json +0 -0
- {dycw_utilities-0.116.2 → dycw_utilities-0.116.3}/src/tests/scripts/__init__.py +0 -0
- {dycw_utilities-0.116.2 → dycw_utilities-0.116.3}/src/tests/scripts/test_async_service/__init__.py +0 -0
- {dycw_utilities-0.116.2 → dycw_utilities-0.116.3}/src/tests/scripts/test_async_service/__main__.py +0 -0
- {dycw_utilities-0.116.2 → dycw_utilities-0.116.3}/src/tests/scripts/test_async_service/run.sh +0 -0
- {dycw_utilities-0.116.2 → dycw_utilities-0.116.3}/src/tests/scripts/test_queue_processor/__init__.py +0 -0
- {dycw_utilities-0.116.2 → dycw_utilities-0.116.3}/src/tests/scripts/test_queue_processor/__main__.py +0 -0
- {dycw_utilities-0.116.2 → dycw_utilities-0.116.3}/src/tests/scripts/test_queue_processor/run.sh +0 -0
- {dycw_utilities-0.116.2 → dycw_utilities-0.116.3}/src/tests/test_altair.py +0 -0
- {dycw_utilities-0.116.2 → dycw_utilities-0.116.3}/src/tests/test_astor.py +0 -0
- {dycw_utilities-0.116.2 → dycw_utilities-0.116.3}/src/tests/test_atomicwrites.py +0 -0
- {dycw_utilities-0.116.2 → dycw_utilities-0.116.3}/src/tests/test_atools.py +0 -0
- {dycw_utilities-0.116.2 → dycw_utilities-0.116.3}/src/tests/test_cachetools.py +0 -0
- {dycw_utilities-0.116.2 → dycw_utilities-0.116.3}/src/tests/test_click.py +0 -0
- {dycw_utilities-0.116.2 → dycw_utilities-0.116.3}/src/tests/test_concurrent.py +0 -0
- {dycw_utilities-0.116.2 → dycw_utilities-0.116.3}/src/tests/test_contextlib.py +0 -0
- {dycw_utilities-0.116.2 → dycw_utilities-0.116.3}/src/tests/test_contextvars.py +0 -0
- {dycw_utilities-0.116.2 → dycw_utilities-0.116.3}/src/tests/test_cryptography.py +0 -0
- {dycw_utilities-0.116.2 → dycw_utilities-0.116.3}/src/tests/test_cvxpy.py +0 -0
- {dycw_utilities-0.116.2 → dycw_utilities-0.116.3}/src/tests/test_dataclasses.py +0 -0
- {dycw_utilities-0.116.2 → dycw_utilities-0.116.3}/src/tests/test_datetime.py +0 -0
- {dycw_utilities-0.116.2 → dycw_utilities-0.116.3}/src/tests/test_enum.py +0 -0
- {dycw_utilities-0.116.2 → dycw_utilities-0.116.3}/src/tests/test_errors.py +0 -0
- {dycw_utilities-0.116.2 → dycw_utilities-0.116.3}/src/tests/test_eventkit.py +0 -0
- {dycw_utilities-0.116.2 → dycw_utilities-0.116.3}/src/tests/test_fastapi.py +0 -0
- {dycw_utilities-0.116.2 → dycw_utilities-0.116.3}/src/tests/test_fpdf2.py +0 -0
- {dycw_utilities-0.116.2 → dycw_utilities-0.116.3}/src/tests/test_functions.py +0 -0
- {dycw_utilities-0.116.2 → dycw_utilities-0.116.3}/src/tests/test_functools.py +0 -0
- {dycw_utilities-0.116.2 → dycw_utilities-0.116.3}/src/tests/test_getpass.py +0 -0
- {dycw_utilities-0.116.2 → dycw_utilities-0.116.3}/src/tests/test_git.py +0 -0
- {dycw_utilities-0.116.2 → dycw_utilities-0.116.3}/src/tests/test_hashlib.py +0 -0
- {dycw_utilities-0.116.2 → dycw_utilities-0.116.3}/src/tests/test_http.py +0 -0
- {dycw_utilities-0.116.2 → dycw_utilities-0.116.3}/src/tests/test_hypothesis.py +0 -0
- {dycw_utilities-0.116.2 → dycw_utilities-0.116.3}/src/tests/test_ipython.py +0 -0
- {dycw_utilities-0.116.2 → dycw_utilities-0.116.3}/src/tests/test_iterables.py +0 -0
- {dycw_utilities-0.116.2 → dycw_utilities-0.116.3}/src/tests/test_jupyter.py +0 -0
- {dycw_utilities-0.116.2 → dycw_utilities-0.116.3}/src/tests/test_lightweight_charts.py +0 -0
- {dycw_utilities-0.116.2 → dycw_utilities-0.116.3}/src/tests/test_logging.py +0 -0
- {dycw_utilities-0.116.2 → dycw_utilities-0.116.3}/src/tests/test_loguru.py +0 -0
- {dycw_utilities-0.116.2 → dycw_utilities-0.116.3}/src/tests/test_luigi.py +0 -0
- {dycw_utilities-0.116.2 → dycw_utilities-0.116.3}/src/tests/test_math.py +0 -0
- {dycw_utilities-0.116.2 → dycw_utilities-0.116.3}/src/tests/test_memory_profiler.py +0 -0
- {dycw_utilities-0.116.2 → dycw_utilities-0.116.3}/src/tests/test_modules.py +0 -0
- {dycw_utilities-0.116.2 → dycw_utilities-0.116.3}/src/tests/test_more_itertools.py +0 -0
- {dycw_utilities-0.116.2 → dycw_utilities-0.116.3}/src/tests/test_numpy.py +0 -0
- {dycw_utilities-0.116.2 → dycw_utilities-0.116.3}/src/tests/test_operator.py +0 -0
- {dycw_utilities-0.116.2 → dycw_utilities-0.116.3}/src/tests/test_optuna.py +0 -0
- {dycw_utilities-0.116.2 → dycw_utilities-0.116.3}/src/tests/test_orjson.py +0 -0
- {dycw_utilities-0.116.2 → dycw_utilities-0.116.3}/src/tests/test_os.py +0 -0
- {dycw_utilities-0.116.2 → dycw_utilities-0.116.3}/src/tests/test_parse.py +0 -0
- {dycw_utilities-0.116.2 → dycw_utilities-0.116.3}/src/tests/test_pathlib.py +0 -0
- {dycw_utilities-0.116.2 → dycw_utilities-0.116.3}/src/tests/test_period.py +0 -0
- {dycw_utilities-0.116.2 → dycw_utilities-0.116.3}/src/tests/test_pickle.py +0 -0
- {dycw_utilities-0.116.2 → dycw_utilities-0.116.3}/src/tests/test_platform.py +0 -0
- {dycw_utilities-0.116.2 → dycw_utilities-0.116.3}/src/tests/test_polars.py +0 -0
- {dycw_utilities-0.116.2 → dycw_utilities-0.116.3}/src/tests/test_polars_ols.py +0 -0
- {dycw_utilities-0.116.2 → dycw_utilities-0.116.3}/src/tests/test_pqdm.py +0 -0
- {dycw_utilities-0.116.2 → dycw_utilities-0.116.3}/src/tests/test_pydantic.py +0 -0
- {dycw_utilities-0.116.2 → dycw_utilities-0.116.3}/src/tests/test_pyinstrument.py +0 -0
- {dycw_utilities-0.116.2 → dycw_utilities-0.116.3}/src/tests/test_pyrsistent.py +0 -0
- {dycw_utilities-0.116.2 → dycw_utilities-0.116.3}/src/tests/test_pytest.py +0 -0
- {dycw_utilities-0.116.2 → dycw_utilities-0.116.3}/src/tests/test_pytest_regressions.py +0 -0
- {dycw_utilities-0.116.2 → dycw_utilities-0.116.3}/src/tests/test_python_dotenv.py +0 -0
- {dycw_utilities-0.116.2 → dycw_utilities-0.116.3}/src/tests/test_random.py +0 -0
- {dycw_utilities-0.116.2 → dycw_utilities-0.116.3}/src/tests/test_re.py +0 -0
- {dycw_utilities-0.116.2 → dycw_utilities-0.116.3}/src/tests/test_redis.py +0 -0
- {dycw_utilities-0.116.2 → dycw_utilities-0.116.3}/src/tests/test_reprlib.py +0 -0
- {dycw_utilities-0.116.2 → dycw_utilities-0.116.3}/src/tests/test_rich.py +0 -0
- {dycw_utilities-0.116.2 → dycw_utilities-0.116.3}/src/tests/test_scipy.py +0 -0
- {dycw_utilities-0.116.2 → dycw_utilities-0.116.3}/src/tests/test_sentinel.py +0 -0
- {dycw_utilities-0.116.2 → dycw_utilities-0.116.3}/src/tests/test_shelve.py +0 -0
- {dycw_utilities-0.116.2 → dycw_utilities-0.116.3}/src/tests/test_slack_sdk.py +0 -0
- {dycw_utilities-0.116.2 → dycw_utilities-0.116.3}/src/tests/test_socket.py +0 -0
- {dycw_utilities-0.116.2 → dycw_utilities-0.116.3}/src/tests/test_sqlalchemy.py +0 -0
- {dycw_utilities-0.116.2 → dycw_utilities-0.116.3}/src/tests/test_sqlalchemy_polars.py +0 -0
- {dycw_utilities-0.116.2 → dycw_utilities-0.116.3}/src/tests/test_statsmodel.py +0 -0
- {dycw_utilities-0.116.2 → dycw_utilities-0.116.3}/src/tests/test_streamlit.py +0 -0
- {dycw_utilities-0.116.2 → dycw_utilities-0.116.3}/src/tests/test_sys.py +0 -0
- {dycw_utilities-0.116.2 → dycw_utilities-0.116.3}/src/tests/test_tempfile.py +0 -0
- {dycw_utilities-0.116.2 → dycw_utilities-0.116.3}/src/tests/test_tenacity.py +0 -0
- {dycw_utilities-0.116.2 → dycw_utilities-0.116.3}/src/tests/test_text.py +0 -0
- {dycw_utilities-0.116.2 → dycw_utilities-0.116.3}/src/tests/test_threading.py +0 -0
- {dycw_utilities-0.116.2 → dycw_utilities-0.116.3}/src/tests/test_timer.py +0 -0
- {dycw_utilities-0.116.2 → dycw_utilities-0.116.3}/src/tests/test_traceback.py +0 -0
- {dycw_utilities-0.116.2 → dycw_utilities-0.116.3}/src/tests/test_traceback_funcs/__init__.py +0 -0
- {dycw_utilities-0.116.2 → dycw_utilities-0.116.3}/src/tests/test_traceback_funcs/chain.py +0 -0
- {dycw_utilities-0.116.2 → dycw_utilities-0.116.3}/src/tests/test_traceback_funcs/decorated_async.py +0 -0
- {dycw_utilities-0.116.2 → dycw_utilities-0.116.3}/src/tests/test_traceback_funcs/decorated_sync.py +0 -0
- {dycw_utilities-0.116.2 → dycw_utilities-0.116.3}/src/tests/test_traceback_funcs/error_bind.py +0 -0
- {dycw_utilities-0.116.2 → dycw_utilities-0.116.3}/src/tests/test_traceback_funcs/many.py +0 -0
- {dycw_utilities-0.116.2 → dycw_utilities-0.116.3}/src/tests/test_traceback_funcs/one.py +0 -0
- {dycw_utilities-0.116.2 → dycw_utilities-0.116.3}/src/tests/test_traceback_funcs/recursive.py +0 -0
- {dycw_utilities-0.116.2 → dycw_utilities-0.116.3}/src/tests/test_traceback_funcs/task_group_one.py +0 -0
- {dycw_utilities-0.116.2 → dycw_utilities-0.116.3}/src/tests/test_traceback_funcs/task_group_two.py +0 -0
- {dycw_utilities-0.116.2 → dycw_utilities-0.116.3}/src/tests/test_traceback_funcs/two.py +0 -0
- {dycw_utilities-0.116.2 → dycw_utilities-0.116.3}/src/tests/test_traceback_funcs/untraced.py +0 -0
- {dycw_utilities-0.116.2 → dycw_utilities-0.116.3}/src/tests/test_types.py +0 -0
- {dycw_utilities-0.116.2 → dycw_utilities-0.116.3}/src/tests/test_typing.py +0 -0
- {dycw_utilities-0.116.2 → dycw_utilities-0.116.3}/src/tests/test_typing_funcs/__init__.py +0 -0
- {dycw_utilities-0.116.2 → dycw_utilities-0.116.3}/src/tests/test_typing_funcs/no_future.py +0 -0
- {dycw_utilities-0.116.2 → dycw_utilities-0.116.3}/src/tests/test_typing_funcs/with_future.py +0 -0
- {dycw_utilities-0.116.2 → dycw_utilities-0.116.3}/src/tests/test_tzdata.py +0 -0
- {dycw_utilities-0.116.2 → dycw_utilities-0.116.3}/src/tests/test_tzlocal.py +0 -0
- {dycw_utilities-0.116.2 → dycw_utilities-0.116.3}/src/tests/test_uuid.py +0 -0
- {dycw_utilities-0.116.2 → dycw_utilities-0.116.3}/src/tests/test_version.py +0 -0
- {dycw_utilities-0.116.2 → dycw_utilities-0.116.3}/src/tests/test_warnings.py +0 -0
- {dycw_utilities-0.116.2 → dycw_utilities-0.116.3}/src/tests/test_whenever.py +0 -0
- {dycw_utilities-0.116.2 → dycw_utilities-0.116.3}/src/tests/test_zipfile.py +0 -0
- {dycw_utilities-0.116.2 → dycw_utilities-0.116.3}/src/tests/test_zoneinfo.py +0 -0
- {dycw_utilities-0.116.2 → dycw_utilities-0.116.3}/src/utilities/altair.py +0 -0
- {dycw_utilities-0.116.2 → dycw_utilities-0.116.3}/src/utilities/astor.py +0 -0
- {dycw_utilities-0.116.2 → dycw_utilities-0.116.3}/src/utilities/asyncio.py +0 -0
- {dycw_utilities-0.116.2 → dycw_utilities-0.116.3}/src/utilities/atomicwrites.py +0 -0
- {dycw_utilities-0.116.2 → dycw_utilities-0.116.3}/src/utilities/atools.py +0 -0
- {dycw_utilities-0.116.2 → dycw_utilities-0.116.3}/src/utilities/cachetools.py +0 -0
- {dycw_utilities-0.116.2 → dycw_utilities-0.116.3}/src/utilities/click.py +0 -0
- {dycw_utilities-0.116.2 → dycw_utilities-0.116.3}/src/utilities/concurrent.py +0 -0
- {dycw_utilities-0.116.2 → dycw_utilities-0.116.3}/src/utilities/contextlib.py +0 -0
- {dycw_utilities-0.116.2 → dycw_utilities-0.116.3}/src/utilities/contextvars.py +0 -0
- {dycw_utilities-0.116.2 → dycw_utilities-0.116.3}/src/utilities/cryptography.py +0 -0
- {dycw_utilities-0.116.2 → dycw_utilities-0.116.3}/src/utilities/cvxpy.py +0 -0
- {dycw_utilities-0.116.2 → dycw_utilities-0.116.3}/src/utilities/dataclasses.py +0 -0
- {dycw_utilities-0.116.2 → dycw_utilities-0.116.3}/src/utilities/datetime.py +0 -0
- {dycw_utilities-0.116.2 → dycw_utilities-0.116.3}/src/utilities/enum.py +0 -0
- {dycw_utilities-0.116.2 → dycw_utilities-0.116.3}/src/utilities/errors.py +0 -0
- {dycw_utilities-0.116.2 → dycw_utilities-0.116.3}/src/utilities/eventkit.py +0 -0
- {dycw_utilities-0.116.2 → dycw_utilities-0.116.3}/src/utilities/fastapi.py +0 -0
- {dycw_utilities-0.116.2 → dycw_utilities-0.116.3}/src/utilities/fpdf2.py +0 -0
- {dycw_utilities-0.116.2 → dycw_utilities-0.116.3}/src/utilities/functions.py +0 -0
- {dycw_utilities-0.116.2 → dycw_utilities-0.116.3}/src/utilities/functools.py +0 -0
- {dycw_utilities-0.116.2 → dycw_utilities-0.116.3}/src/utilities/getpass.py +0 -0
- {dycw_utilities-0.116.2 → dycw_utilities-0.116.3}/src/utilities/git.py +0 -0
- {dycw_utilities-0.116.2 → dycw_utilities-0.116.3}/src/utilities/hashlib.py +0 -0
- {dycw_utilities-0.116.2 → dycw_utilities-0.116.3}/src/utilities/http.py +0 -0
- {dycw_utilities-0.116.2 → dycw_utilities-0.116.3}/src/utilities/hypothesis.py +0 -0
- {dycw_utilities-0.116.2 → dycw_utilities-0.116.3}/src/utilities/ipython.py +0 -0
- {dycw_utilities-0.116.2 → dycw_utilities-0.116.3}/src/utilities/iterables.py +0 -0
- {dycw_utilities-0.116.2 → dycw_utilities-0.116.3}/src/utilities/jupyter.py +0 -0
- {dycw_utilities-0.116.2 → dycw_utilities-0.116.3}/src/utilities/lightweight_charts.py +0 -0
- {dycw_utilities-0.116.2 → dycw_utilities-0.116.3}/src/utilities/logging.py +0 -0
- {dycw_utilities-0.116.2 → dycw_utilities-0.116.3}/src/utilities/loguru.py +0 -0
- {dycw_utilities-0.116.2 → dycw_utilities-0.116.3}/src/utilities/luigi.py +0 -0
- {dycw_utilities-0.116.2 → dycw_utilities-0.116.3}/src/utilities/math.py +0 -0
- {dycw_utilities-0.116.2 → dycw_utilities-0.116.3}/src/utilities/memory_profiler.py +0 -0
- {dycw_utilities-0.116.2 → dycw_utilities-0.116.3}/src/utilities/modules.py +0 -0
- {dycw_utilities-0.116.2 → dycw_utilities-0.116.3}/src/utilities/more_itertools.py +0 -0
- {dycw_utilities-0.116.2 → dycw_utilities-0.116.3}/src/utilities/numpy.py +0 -0
- {dycw_utilities-0.116.2 → dycw_utilities-0.116.3}/src/utilities/operator.py +0 -0
- {dycw_utilities-0.116.2 → dycw_utilities-0.116.3}/src/utilities/optuna.py +0 -0
- {dycw_utilities-0.116.2 → dycw_utilities-0.116.3}/src/utilities/orjson.py +0 -0
- {dycw_utilities-0.116.2 → dycw_utilities-0.116.3}/src/utilities/os.py +0 -0
- {dycw_utilities-0.116.2 → dycw_utilities-0.116.3}/src/utilities/parse.py +0 -0
- {dycw_utilities-0.116.2 → dycw_utilities-0.116.3}/src/utilities/pathlib.py +0 -0
- {dycw_utilities-0.116.2 → dycw_utilities-0.116.3}/src/utilities/period.py +0 -0
- {dycw_utilities-0.116.2 → dycw_utilities-0.116.3}/src/utilities/pickle.py +0 -0
- {dycw_utilities-0.116.2 → dycw_utilities-0.116.3}/src/utilities/platform.py +0 -0
- {dycw_utilities-0.116.2 → dycw_utilities-0.116.3}/src/utilities/polars.py +0 -0
- {dycw_utilities-0.116.2 → dycw_utilities-0.116.3}/src/utilities/polars_ols.py +0 -0
- {dycw_utilities-0.116.2 → dycw_utilities-0.116.3}/src/utilities/pqdm.py +0 -0
- {dycw_utilities-0.116.2 → dycw_utilities-0.116.3}/src/utilities/py.typed +0 -0
- {dycw_utilities-0.116.2 → dycw_utilities-0.116.3}/src/utilities/pydantic.py +0 -0
- {dycw_utilities-0.116.2 → dycw_utilities-0.116.3}/src/utilities/pyinstrument.py +0 -0
- {dycw_utilities-0.116.2 → dycw_utilities-0.116.3}/src/utilities/pyrsistent.py +0 -0
- {dycw_utilities-0.116.2 → dycw_utilities-0.116.3}/src/utilities/pytest.py +0 -0
- {dycw_utilities-0.116.2 → dycw_utilities-0.116.3}/src/utilities/pytest_regressions.py +0 -0
- {dycw_utilities-0.116.2 → dycw_utilities-0.116.3}/src/utilities/python_dotenv.py +0 -0
- {dycw_utilities-0.116.2 → dycw_utilities-0.116.3}/src/utilities/random.py +0 -0
- {dycw_utilities-0.116.2 → dycw_utilities-0.116.3}/src/utilities/re.py +0 -0
- {dycw_utilities-0.116.2 → dycw_utilities-0.116.3}/src/utilities/redis.py +0 -0
- {dycw_utilities-0.116.2 → dycw_utilities-0.116.3}/src/utilities/reprlib.py +0 -0
- {dycw_utilities-0.116.2 → dycw_utilities-0.116.3}/src/utilities/rich.py +0 -0
- {dycw_utilities-0.116.2 → dycw_utilities-0.116.3}/src/utilities/scipy.py +0 -0
- {dycw_utilities-0.116.2 → dycw_utilities-0.116.3}/src/utilities/sentinel.py +0 -0
- {dycw_utilities-0.116.2 → dycw_utilities-0.116.3}/src/utilities/shelve.py +0 -0
- {dycw_utilities-0.116.2 → dycw_utilities-0.116.3}/src/utilities/slack_sdk.py +0 -0
- {dycw_utilities-0.116.2 → dycw_utilities-0.116.3}/src/utilities/socket.py +0 -0
- {dycw_utilities-0.116.2 → dycw_utilities-0.116.3}/src/utilities/sqlalchemy.py +0 -0
- {dycw_utilities-0.116.2 → dycw_utilities-0.116.3}/src/utilities/sqlalchemy_polars.py +0 -0
- {dycw_utilities-0.116.2 → dycw_utilities-0.116.3}/src/utilities/statsmodels.py +0 -0
- {dycw_utilities-0.116.2 → dycw_utilities-0.116.3}/src/utilities/streamlit.py +0 -0
- {dycw_utilities-0.116.2 → dycw_utilities-0.116.3}/src/utilities/sys.py +0 -0
- {dycw_utilities-0.116.2 → dycw_utilities-0.116.3}/src/utilities/tempfile.py +0 -0
- {dycw_utilities-0.116.2 → dycw_utilities-0.116.3}/src/utilities/tenacity.py +0 -0
- {dycw_utilities-0.116.2 → dycw_utilities-0.116.3}/src/utilities/text.py +0 -0
- {dycw_utilities-0.116.2 → dycw_utilities-0.116.3}/src/utilities/threading.py +0 -0
- {dycw_utilities-0.116.2 → dycw_utilities-0.116.3}/src/utilities/timer.py +0 -0
- {dycw_utilities-0.116.2 → dycw_utilities-0.116.3}/src/utilities/traceback.py +0 -0
- {dycw_utilities-0.116.2 → dycw_utilities-0.116.3}/src/utilities/types.py +0 -0
- {dycw_utilities-0.116.2 → dycw_utilities-0.116.3}/src/utilities/typing.py +0 -0
- {dycw_utilities-0.116.2 → dycw_utilities-0.116.3}/src/utilities/tzdata.py +0 -0
- {dycw_utilities-0.116.2 → dycw_utilities-0.116.3}/src/utilities/tzlocal.py +0 -0
- {dycw_utilities-0.116.2 → dycw_utilities-0.116.3}/src/utilities/uuid.py +0 -0
- {dycw_utilities-0.116.2 → dycw_utilities-0.116.3}/src/utilities/version.py +0 -0
- {dycw_utilities-0.116.2 → dycw_utilities-0.116.3}/src/utilities/warnings.py +0 -0
- {dycw_utilities-0.116.2 → dycw_utilities-0.116.3}/src/utilities/whenever.py +0 -0
- {dycw_utilities-0.116.2 → dycw_utilities-0.116.3}/src/utilities/zipfile.py +0 -0
- {dycw_utilities-0.116.2 → dycw_utilities-0.116.3}/src/utilities/zoneinfo.py +0 -0
@@ -92,7 +92,7 @@ dependencies = [
|
|
92
92
|
name = "dycw-utilities"
|
93
93
|
readme = "README.md"
|
94
94
|
requires-python = ">= 3.12"
|
95
|
-
version = "0.116.
|
95
|
+
version = "0.116.3"
|
96
96
|
|
97
97
|
[project.optional-dependencies]
|
98
98
|
test = [
|
@@ -334,7 +334,7 @@ zzz-test-zoneinfo = [
|
|
334
334
|
# bump-my-version
|
335
335
|
[tool.bumpversion]
|
336
336
|
allow_dirty = true
|
337
|
-
current_version = "0.116.
|
337
|
+
current_version = "0.116.3"
|
338
338
|
|
339
339
|
[[tool.bumpversion.files]]
|
340
340
|
filename = "src/utilities/__init__.py"
|
@@ -435,7 +435,7 @@ class TestInfiniteLooper:
|
|
435
435
|
await looper()
|
436
436
|
assert 4 <= looper.initializations <= 6
|
437
437
|
assert 0 <= looper.counter <= 7
|
438
|
-
assert
|
438
|
+
assert 16 <= external <= 21
|
439
439
|
|
440
440
|
async def test_with_coroutine_self_error(self) -> None:
|
441
441
|
class CustomError(Exception): ...
|
@@ -517,7 +517,7 @@ class TestInfiniteLooper:
|
|
517
517
|
async with timeout_dur(duration=1.0):
|
518
518
|
await looper()
|
519
519
|
assert 3 <= looper.initializations <= 5
|
520
|
-
assert 1 <= looper.counter <=
|
520
|
+
assert 1 <= looper.counter <= 6
|
521
521
|
|
522
522
|
@given(logger=just("logger") | none())
|
523
523
|
async def test_error_upon_initialize(self, *, logger: str | None) -> None:
|
@@ -0,0 +1,20 @@
|
|
1
|
+
from __future__ import annotations
|
2
|
+
|
3
|
+
from hypothesis import given
|
4
|
+
from hypothesis.strategies import sampled_from
|
5
|
+
|
6
|
+
from utilities.importlib import is_valid_import
|
7
|
+
|
8
|
+
|
9
|
+
class TestIsValidImport:
|
10
|
+
@given(
|
11
|
+
case=sampled_from([
|
12
|
+
("utilities.importlib", "is_valid_import", True),
|
13
|
+
("utilities.importlib", "invalid", False),
|
14
|
+
("invalid", "invalid", False),
|
15
|
+
])
|
16
|
+
)
|
17
|
+
def test_main(self, *, case: tuple[str, str, bool]) -> None:
|
18
|
+
module, name, expected = case
|
19
|
+
result = is_valid_import(module, name)
|
20
|
+
assert result is expected
|
@@ -0,0 +1,16 @@
|
|
1
|
+
from __future__ import annotations
|
2
|
+
|
3
|
+
from importlib import import_module
|
4
|
+
from importlib.util import find_spec
|
5
|
+
|
6
|
+
|
7
|
+
def is_valid_import(module: str, name: str) -> bool:
|
8
|
+
"""Check if an import is valid."""
|
9
|
+
spec = find_spec(module)
|
10
|
+
if spec is None:
|
11
|
+
return False
|
12
|
+
mod = import_module(module)
|
13
|
+
return hasattr(mod, name)
|
14
|
+
|
15
|
+
|
16
|
+
__all__ = ["is_valid_import"]
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
{dycw_utilities-0.116.2 → dycw_utilities-0.116.3}/src/tests/modules/package_missing/__init__.py
RENAMED
File without changes
|
{dycw_utilities-0.116.2 → dycw_utilities-0.116.3}/src/tests/modules/package_missing/module.py
RENAMED
File without changes
|
{dycw_utilities-0.116.2 → dycw_utilities-0.116.3}/src/tests/modules/package_with/__init__.py
RENAMED
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
{dycw_utilities-0.116.2 → dycw_utilities-0.116.3}/src/tests/modules/package_without/__init__.py
RENAMED
File without changes
|
{dycw_utilities-0.116.2 → dycw_utilities-0.116.3}/src/tests/modules/package_without/module_1.py
RENAMED
File without changes
|
{dycw_utilities-0.116.2 → dycw_utilities-0.116.3}/src/tests/modules/package_without/module_2.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
|
{dycw_utilities-0.116.2 → dycw_utilities-0.116.3}/src/tests/scripts/test_async_service/__init__.py
RENAMED
File without changes
|
{dycw_utilities-0.116.2 → dycw_utilities-0.116.3}/src/tests/scripts/test_async_service/__main__.py
RENAMED
File without changes
|
{dycw_utilities-0.116.2 → dycw_utilities-0.116.3}/src/tests/scripts/test_async_service/run.sh
RENAMED
File without changes
|
{dycw_utilities-0.116.2 → dycw_utilities-0.116.3}/src/tests/scripts/test_queue_processor/__init__.py
RENAMED
File without changes
|
{dycw_utilities-0.116.2 → dycw_utilities-0.116.3}/src/tests/scripts/test_queue_processor/__main__.py
RENAMED
File without changes
|
{dycw_utilities-0.116.2 → dycw_utilities-0.116.3}/src/tests/scripts/test_queue_processor/run.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
|
{dycw_utilities-0.116.2 → dycw_utilities-0.116.3}/src/tests/test_traceback_funcs/__init__.py
RENAMED
File without changes
|
File without changes
|
{dycw_utilities-0.116.2 → dycw_utilities-0.116.3}/src/tests/test_traceback_funcs/decorated_async.py
RENAMED
File without changes
|
{dycw_utilities-0.116.2 → dycw_utilities-0.116.3}/src/tests/test_traceback_funcs/decorated_sync.py
RENAMED
File without changes
|
{dycw_utilities-0.116.2 → dycw_utilities-0.116.3}/src/tests/test_traceback_funcs/error_bind.py
RENAMED
File without changes
|
File without changes
|
File without changes
|
{dycw_utilities-0.116.2 → dycw_utilities-0.116.3}/src/tests/test_traceback_funcs/recursive.py
RENAMED
File without changes
|
{dycw_utilities-0.116.2 → dycw_utilities-0.116.3}/src/tests/test_traceback_funcs/task_group_one.py
RENAMED
File without changes
|
{dycw_utilities-0.116.2 → dycw_utilities-0.116.3}/src/tests/test_traceback_funcs/task_group_two.py
RENAMED
File without changes
|
File without changes
|
{dycw_utilities-0.116.2 → dycw_utilities-0.116.3}/src/tests/test_traceback_funcs/untraced.py
RENAMED
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
{dycw_utilities-0.116.2 → dycw_utilities-0.116.3}/src/tests/test_typing_funcs/with_future.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
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|