dycw-utilities 0.126.1__tar.gz → 0.126.2__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.126.1 → dycw_utilities-0.126.2}/PKG-INFO +2 -2
- {dycw_utilities-0.126.1 → dycw_utilities-0.126.2}/pyproject.toml +4 -4
- dycw_utilities-0.126.2/src/tests/test_errors.py +52 -0
- {dycw_utilities-0.126.1 → dycw_utilities-0.126.2}/src/utilities/__init__.py +1 -1
- {dycw_utilities-0.126.1 → dycw_utilities-0.126.2}/src/utilities/errors.py +4 -0
- dycw_utilities-0.126.1/src/tests/test_errors.py +0 -28
- {dycw_utilities-0.126.1 → dycw_utilities-0.126.2}/.gitignore +0 -0
- {dycw_utilities-0.126.1 → dycw_utilities-0.126.2}/LICENSE +0 -0
- {dycw_utilities-0.126.1 → dycw_utilities-0.126.2}/README.md +0 -0
- {dycw_utilities-0.126.1 → dycw_utilities-0.126.2}/src/tests/__init__.py +0 -0
- {dycw_utilities-0.126.1 → dycw_utilities-0.126.2}/src/tests/conftest.py +0 -0
- {dycw_utilities-0.126.1 → dycw_utilities-0.126.2}/src/tests/modules/__init__.py +0 -0
- {dycw_utilities-0.126.1 → dycw_utilities-0.126.2}/src/tests/modules/package_missing/__init__.py +0 -0
- {dycw_utilities-0.126.1 → dycw_utilities-0.126.2}/src/tests/modules/package_missing/module.py +0 -0
- {dycw_utilities-0.126.1 → dycw_utilities-0.126.2}/src/tests/modules/package_with/__init__.py +0 -0
- {dycw_utilities-0.126.1 → dycw_utilities-0.126.2}/src/tests/modules/package_with/outer_1.py +0 -0
- {dycw_utilities-0.126.1 → dycw_utilities-0.126.2}/src/tests/modules/package_with/outer_2.py +0 -0
- {dycw_utilities-0.126.1 → dycw_utilities-0.126.2}/src/tests/modules/package_with/subpackage/__init__.py +0 -0
- {dycw_utilities-0.126.1 → dycw_utilities-0.126.2}/src/tests/modules/package_with/subpackage/inner_1.py +0 -0
- {dycw_utilities-0.126.1 → dycw_utilities-0.126.2}/src/tests/modules/package_with/subpackage/inner_2.py +0 -0
- {dycw_utilities-0.126.1 → dycw_utilities-0.126.2}/src/tests/modules/package_with/subpackage/inner_3.py +0 -0
- {dycw_utilities-0.126.1 → dycw_utilities-0.126.2}/src/tests/modules/package_without/__init__.py +0 -0
- {dycw_utilities-0.126.1 → dycw_utilities-0.126.2}/src/tests/modules/package_without/module_1.py +0 -0
- {dycw_utilities-0.126.1 → dycw_utilities-0.126.2}/src/tests/modules/package_without/module_2.py +0 -0
- {dycw_utilities-0.126.1 → dycw_utilities-0.126.2}/src/tests/modules/standalone.py +0 -0
- {dycw_utilities-0.126.1 → dycw_utilities-0.126.2}/src/tests/modules/with_imports.py +0 -0
- {dycw_utilities-0.126.1 → dycw_utilities-0.126.2}/src/tests/regressions/test_pytest_regressions/TestMultipleRegressionFixtures__test_main__obj.json +0 -0
- {dycw_utilities-0.126.1 → dycw_utilities-0.126.2}/src/tests/regressions/test_pytest_regressions/TestMultipleRegressionFixtures__test_main__series.json +0 -0
- {dycw_utilities-0.126.1 → dycw_utilities-0.126.2}/src/tests/regressions/test_pytest_regressions/TestOrjsonRegressionFixture__test_dataclass_int.json +0 -0
- {dycw_utilities-0.126.1 → dycw_utilities-0.126.2}/src/tests/regressions/test_pytest_regressions/TestOrjsonRegressionFixture__test_dataclass_literal__false.json +0 -0
- {dycw_utilities-0.126.1 → dycw_utilities-0.126.2}/src/tests/regressions/test_pytest_regressions/TestOrjsonRegressionFixture__test_dataclass_literal__true.json +0 -0
- {dycw_utilities-0.126.1 → dycw_utilities-0.126.2}/src/tests/regressions/test_pytest_regressions/TestOrjsonRegressionFixture__test_dataclass_nested.json +0 -0
- {dycw_utilities-0.126.1 → dycw_utilities-0.126.2}/src/tests/regressions/test_pytest_regressions/TestPolarsRegressionFixture__test_dataframe.json +0 -0
- {dycw_utilities-0.126.1 → dycw_utilities-0.126.2}/src/tests/regressions/test_pytest_regressions/TestPolarsRegressionFixture__test_series.json +0 -0
- {dycw_utilities-0.126.1 → dycw_utilities-0.126.2}/src/tests/test_altair.py +0 -0
- {dycw_utilities-0.126.1 → dycw_utilities-0.126.2}/src/tests/test_asyncio.py +0 -0
- {dycw_utilities-0.126.1 → dycw_utilities-0.126.2}/src/tests/test_atomicwrites.py +0 -0
- {dycw_utilities-0.126.1 → dycw_utilities-0.126.2}/src/tests/test_atools.py +0 -0
- {dycw_utilities-0.126.1 → dycw_utilities-0.126.2}/src/tests/test_cachetools.py +0 -0
- {dycw_utilities-0.126.1 → dycw_utilities-0.126.2}/src/tests/test_click.py +0 -0
- {dycw_utilities-0.126.1 → dycw_utilities-0.126.2}/src/tests/test_concurrent.py +0 -0
- {dycw_utilities-0.126.1 → dycw_utilities-0.126.2}/src/tests/test_contextlib.py +0 -0
- {dycw_utilities-0.126.1 → dycw_utilities-0.126.2}/src/tests/test_contextvars.py +0 -0
- {dycw_utilities-0.126.1 → dycw_utilities-0.126.2}/src/tests/test_cryptography.py +0 -0
- {dycw_utilities-0.126.1 → dycw_utilities-0.126.2}/src/tests/test_cvxpy.py +0 -0
- {dycw_utilities-0.126.1 → dycw_utilities-0.126.2}/src/tests/test_dataclasses.py +0 -0
- {dycw_utilities-0.126.1 → dycw_utilities-0.126.2}/src/tests/test_datetime.py +0 -0
- {dycw_utilities-0.126.1 → dycw_utilities-0.126.2}/src/tests/test_enum.py +0 -0
- {dycw_utilities-0.126.1 → dycw_utilities-0.126.2}/src/tests/test_eventkit.py +0 -0
- {dycw_utilities-0.126.1 → dycw_utilities-0.126.2}/src/tests/test_fastapi.py +0 -0
- {dycw_utilities-0.126.1 → dycw_utilities-0.126.2}/src/tests/test_fpdf2.py +0 -0
- {dycw_utilities-0.126.1 → dycw_utilities-0.126.2}/src/tests/test_functions.py +0 -0
- {dycw_utilities-0.126.1 → dycw_utilities-0.126.2}/src/tests/test_functools.py +0 -0
- {dycw_utilities-0.126.1 → dycw_utilities-0.126.2}/src/tests/test_getpass.py +0 -0
- {dycw_utilities-0.126.1 → dycw_utilities-0.126.2}/src/tests/test_git.py +0 -0
- {dycw_utilities-0.126.1 → dycw_utilities-0.126.2}/src/tests/test_hashlib.py +0 -0
- {dycw_utilities-0.126.1 → dycw_utilities-0.126.2}/src/tests/test_http.py +0 -0
- {dycw_utilities-0.126.1 → dycw_utilities-0.126.2}/src/tests/test_hypothesis.py +0 -0
- {dycw_utilities-0.126.1 → dycw_utilities-0.126.2}/src/tests/test_importlib.py +0 -0
- {dycw_utilities-0.126.1 → dycw_utilities-0.126.2}/src/tests/test_ipython.py +0 -0
- {dycw_utilities-0.126.1 → dycw_utilities-0.126.2}/src/tests/test_iterables.py +0 -0
- {dycw_utilities-0.126.1 → dycw_utilities-0.126.2}/src/tests/test_jupyter.py +0 -0
- {dycw_utilities-0.126.1 → dycw_utilities-0.126.2}/src/tests/test_libcst.py +0 -0
- {dycw_utilities-0.126.1 → dycw_utilities-0.126.2}/src/tests/test_lightweight_charts.py +0 -0
- {dycw_utilities-0.126.1 → dycw_utilities-0.126.2}/src/tests/test_logging.py +0 -0
- {dycw_utilities-0.126.1 → dycw_utilities-0.126.2}/src/tests/test_loguru.py +0 -0
- {dycw_utilities-0.126.1 → dycw_utilities-0.126.2}/src/tests/test_luigi.py +0 -0
- {dycw_utilities-0.126.1 → dycw_utilities-0.126.2}/src/tests/test_math.py +0 -0
- {dycw_utilities-0.126.1 → dycw_utilities-0.126.2}/src/tests/test_memory_profiler.py +0 -0
- {dycw_utilities-0.126.1 → dycw_utilities-0.126.2}/src/tests/test_modules.py +0 -0
- {dycw_utilities-0.126.1 → dycw_utilities-0.126.2}/src/tests/test_more_itertools.py +0 -0
- {dycw_utilities-0.126.1 → dycw_utilities-0.126.2}/src/tests/test_numpy.py +0 -0
- {dycw_utilities-0.126.1 → dycw_utilities-0.126.2}/src/tests/test_operator.py +0 -0
- {dycw_utilities-0.126.1 → dycw_utilities-0.126.2}/src/tests/test_optuna.py +0 -0
- {dycw_utilities-0.126.1 → dycw_utilities-0.126.2}/src/tests/test_orjson.py +0 -0
- {dycw_utilities-0.126.1 → dycw_utilities-0.126.2}/src/tests/test_os.py +0 -0
- {dycw_utilities-0.126.1 → dycw_utilities-0.126.2}/src/tests/test_parse.py +0 -0
- {dycw_utilities-0.126.1 → dycw_utilities-0.126.2}/src/tests/test_pathlib.py +0 -0
- {dycw_utilities-0.126.1 → dycw_utilities-0.126.2}/src/tests/test_period.py +0 -0
- {dycw_utilities-0.126.1 → dycw_utilities-0.126.2}/src/tests/test_pickle.py +0 -0
- {dycw_utilities-0.126.1 → dycw_utilities-0.126.2}/src/tests/test_platform.py +0 -0
- {dycw_utilities-0.126.1 → dycw_utilities-0.126.2}/src/tests/test_polars.py +0 -0
- {dycw_utilities-0.126.1 → dycw_utilities-0.126.2}/src/tests/test_polars_ols.py +0 -0
- {dycw_utilities-0.126.1 → dycw_utilities-0.126.2}/src/tests/test_pqdm.py +0 -0
- {dycw_utilities-0.126.1 → dycw_utilities-0.126.2}/src/tests/test_psutil.py +0 -0
- {dycw_utilities-0.126.1 → dycw_utilities-0.126.2}/src/tests/test_pydantic.py +0 -0
- {dycw_utilities-0.126.1 → dycw_utilities-0.126.2}/src/tests/test_pyinstrument.py +0 -0
- {dycw_utilities-0.126.1 → dycw_utilities-0.126.2}/src/tests/test_pyrsistent.py +0 -0
- {dycw_utilities-0.126.1 → dycw_utilities-0.126.2}/src/tests/test_pytest.py +0 -0
- {dycw_utilities-0.126.1 → dycw_utilities-0.126.2}/src/tests/test_pytest_regressions.py +0 -0
- {dycw_utilities-0.126.1 → dycw_utilities-0.126.2}/src/tests/test_python_dotenv.py +0 -0
- {dycw_utilities-0.126.1 → dycw_utilities-0.126.2}/src/tests/test_random.py +0 -0
- {dycw_utilities-0.126.1 → dycw_utilities-0.126.2}/src/tests/test_re.py +0 -0
- {dycw_utilities-0.126.1 → dycw_utilities-0.126.2}/src/tests/test_redis.py +0 -0
- {dycw_utilities-0.126.1 → dycw_utilities-0.126.2}/src/tests/test_reprlib.py +0 -0
- {dycw_utilities-0.126.1 → dycw_utilities-0.126.2}/src/tests/test_rich.py +0 -0
- {dycw_utilities-0.126.1 → dycw_utilities-0.126.2}/src/tests/test_scipy.py +0 -0
- {dycw_utilities-0.126.1 → dycw_utilities-0.126.2}/src/tests/test_sentinel.py +0 -0
- {dycw_utilities-0.126.1 → dycw_utilities-0.126.2}/src/tests/test_shelve.py +0 -0
- {dycw_utilities-0.126.1 → dycw_utilities-0.126.2}/src/tests/test_slack_sdk.py +0 -0
- {dycw_utilities-0.126.1 → dycw_utilities-0.126.2}/src/tests/test_socket.py +0 -0
- {dycw_utilities-0.126.1 → dycw_utilities-0.126.2}/src/tests/test_sqlalchemy.py +0 -0
- {dycw_utilities-0.126.1 → dycw_utilities-0.126.2}/src/tests/test_sqlalchemy_polars.py +0 -0
- {dycw_utilities-0.126.1 → dycw_utilities-0.126.2}/src/tests/test_statsmodel.py +0 -0
- {dycw_utilities-0.126.1 → dycw_utilities-0.126.2}/src/tests/test_streamlit.py +0 -0
- {dycw_utilities-0.126.1 → dycw_utilities-0.126.2}/src/tests/test_string.py +0 -0
- {dycw_utilities-0.126.1 → dycw_utilities-0.126.2}/src/tests/test_sys.py +0 -0
- {dycw_utilities-0.126.1 → dycw_utilities-0.126.2}/src/tests/test_tempfile.py +0 -0
- {dycw_utilities-0.126.1 → dycw_utilities-0.126.2}/src/tests/test_tenacity.py +0 -0
- {dycw_utilities-0.126.1 → dycw_utilities-0.126.2}/src/tests/test_text.py +0 -0
- {dycw_utilities-0.126.1 → dycw_utilities-0.126.2}/src/tests/test_threading.py +0 -0
- {dycw_utilities-0.126.1 → dycw_utilities-0.126.2}/src/tests/test_timer.py +0 -0
- {dycw_utilities-0.126.1 → dycw_utilities-0.126.2}/src/tests/test_traceback.py +0 -0
- {dycw_utilities-0.126.1 → dycw_utilities-0.126.2}/src/tests/test_traceback_funcs/__init__.py +0 -0
- {dycw_utilities-0.126.1 → dycw_utilities-0.126.2}/src/tests/test_traceback_funcs/chain.py +0 -0
- {dycw_utilities-0.126.1 → dycw_utilities-0.126.2}/src/tests/test_traceback_funcs/decorated_async.py +0 -0
- {dycw_utilities-0.126.1 → dycw_utilities-0.126.2}/src/tests/test_traceback_funcs/decorated_sync.py +0 -0
- {dycw_utilities-0.126.1 → dycw_utilities-0.126.2}/src/tests/test_traceback_funcs/error_bind.py +0 -0
- {dycw_utilities-0.126.1 → dycw_utilities-0.126.2}/src/tests/test_traceback_funcs/many.py +0 -0
- {dycw_utilities-0.126.1 → dycw_utilities-0.126.2}/src/tests/test_traceback_funcs/one.py +0 -0
- {dycw_utilities-0.126.1 → dycw_utilities-0.126.2}/src/tests/test_traceback_funcs/recursive.py +0 -0
- {dycw_utilities-0.126.1 → dycw_utilities-0.126.2}/src/tests/test_traceback_funcs/task_group_one.py +0 -0
- {dycw_utilities-0.126.1 → dycw_utilities-0.126.2}/src/tests/test_traceback_funcs/task_group_two.py +0 -0
- {dycw_utilities-0.126.1 → dycw_utilities-0.126.2}/src/tests/test_traceback_funcs/two.py +0 -0
- {dycw_utilities-0.126.1 → dycw_utilities-0.126.2}/src/tests/test_traceback_funcs/untraced.py +0 -0
- {dycw_utilities-0.126.1 → dycw_utilities-0.126.2}/src/tests/test_types.py +0 -0
- {dycw_utilities-0.126.1 → dycw_utilities-0.126.2}/src/tests/test_typing.py +0 -0
- {dycw_utilities-0.126.1 → dycw_utilities-0.126.2}/src/tests/test_typing_funcs/__init__.py +0 -0
- {dycw_utilities-0.126.1 → dycw_utilities-0.126.2}/src/tests/test_typing_funcs/no_future.py +0 -0
- {dycw_utilities-0.126.1 → dycw_utilities-0.126.2}/src/tests/test_typing_funcs/with_future.py +0 -0
- {dycw_utilities-0.126.1 → dycw_utilities-0.126.2}/src/tests/test_tzdata.py +0 -0
- {dycw_utilities-0.126.1 → dycw_utilities-0.126.2}/src/tests/test_tzlocal.py +0 -0
- {dycw_utilities-0.126.1 → dycw_utilities-0.126.2}/src/tests/test_uuid.py +0 -0
- {dycw_utilities-0.126.1 → dycw_utilities-0.126.2}/src/tests/test_version.py +0 -0
- {dycw_utilities-0.126.1 → dycw_utilities-0.126.2}/src/tests/test_warnings.py +0 -0
- {dycw_utilities-0.126.1 → dycw_utilities-0.126.2}/src/tests/test_whenever.py +0 -0
- {dycw_utilities-0.126.1 → dycw_utilities-0.126.2}/src/tests/test_zipfile.py +0 -0
- {dycw_utilities-0.126.1 → dycw_utilities-0.126.2}/src/tests/test_zoneinfo.py +0 -0
- {dycw_utilities-0.126.1 → dycw_utilities-0.126.2}/src/utilities/altair.py +0 -0
- {dycw_utilities-0.126.1 → dycw_utilities-0.126.2}/src/utilities/asyncio.py +0 -0
- {dycw_utilities-0.126.1 → dycw_utilities-0.126.2}/src/utilities/atomicwrites.py +0 -0
- {dycw_utilities-0.126.1 → dycw_utilities-0.126.2}/src/utilities/atools.py +0 -0
- {dycw_utilities-0.126.1 → dycw_utilities-0.126.2}/src/utilities/cachetools.py +0 -0
- {dycw_utilities-0.126.1 → dycw_utilities-0.126.2}/src/utilities/click.py +0 -0
- {dycw_utilities-0.126.1 → dycw_utilities-0.126.2}/src/utilities/concurrent.py +0 -0
- {dycw_utilities-0.126.1 → dycw_utilities-0.126.2}/src/utilities/contextlib.py +0 -0
- {dycw_utilities-0.126.1 → dycw_utilities-0.126.2}/src/utilities/contextvars.py +0 -0
- {dycw_utilities-0.126.1 → dycw_utilities-0.126.2}/src/utilities/cryptography.py +0 -0
- {dycw_utilities-0.126.1 → dycw_utilities-0.126.2}/src/utilities/cvxpy.py +0 -0
- {dycw_utilities-0.126.1 → dycw_utilities-0.126.2}/src/utilities/dataclasses.py +0 -0
- {dycw_utilities-0.126.1 → dycw_utilities-0.126.2}/src/utilities/datetime.py +0 -0
- {dycw_utilities-0.126.1 → dycw_utilities-0.126.2}/src/utilities/enum.py +0 -0
- {dycw_utilities-0.126.1 → dycw_utilities-0.126.2}/src/utilities/eventkit.py +0 -0
- {dycw_utilities-0.126.1 → dycw_utilities-0.126.2}/src/utilities/fastapi.py +0 -0
- {dycw_utilities-0.126.1 → dycw_utilities-0.126.2}/src/utilities/fpdf2.py +0 -0
- {dycw_utilities-0.126.1 → dycw_utilities-0.126.2}/src/utilities/functions.py +0 -0
- {dycw_utilities-0.126.1 → dycw_utilities-0.126.2}/src/utilities/functools.py +0 -0
- {dycw_utilities-0.126.1 → dycw_utilities-0.126.2}/src/utilities/getpass.py +0 -0
- {dycw_utilities-0.126.1 → dycw_utilities-0.126.2}/src/utilities/git.py +0 -0
- {dycw_utilities-0.126.1 → dycw_utilities-0.126.2}/src/utilities/hashlib.py +0 -0
- {dycw_utilities-0.126.1 → dycw_utilities-0.126.2}/src/utilities/http.py +0 -0
- {dycw_utilities-0.126.1 → dycw_utilities-0.126.2}/src/utilities/hypothesis.py +0 -0
- {dycw_utilities-0.126.1 → dycw_utilities-0.126.2}/src/utilities/importlib.py +0 -0
- {dycw_utilities-0.126.1 → dycw_utilities-0.126.2}/src/utilities/ipython.py +0 -0
- {dycw_utilities-0.126.1 → dycw_utilities-0.126.2}/src/utilities/iterables.py +0 -0
- {dycw_utilities-0.126.1 → dycw_utilities-0.126.2}/src/utilities/jupyter.py +0 -0
- {dycw_utilities-0.126.1 → dycw_utilities-0.126.2}/src/utilities/libcst.py +0 -0
- {dycw_utilities-0.126.1 → dycw_utilities-0.126.2}/src/utilities/lightweight_charts.py +0 -0
- {dycw_utilities-0.126.1 → dycw_utilities-0.126.2}/src/utilities/logging.py +0 -0
- {dycw_utilities-0.126.1 → dycw_utilities-0.126.2}/src/utilities/loguru.py +0 -0
- {dycw_utilities-0.126.1 → dycw_utilities-0.126.2}/src/utilities/luigi.py +0 -0
- {dycw_utilities-0.126.1 → dycw_utilities-0.126.2}/src/utilities/math.py +0 -0
- {dycw_utilities-0.126.1 → dycw_utilities-0.126.2}/src/utilities/memory_profiler.py +0 -0
- {dycw_utilities-0.126.1 → dycw_utilities-0.126.2}/src/utilities/modules.py +0 -0
- {dycw_utilities-0.126.1 → dycw_utilities-0.126.2}/src/utilities/more_itertools.py +0 -0
- {dycw_utilities-0.126.1 → dycw_utilities-0.126.2}/src/utilities/numpy.py +0 -0
- {dycw_utilities-0.126.1 → dycw_utilities-0.126.2}/src/utilities/operator.py +0 -0
- {dycw_utilities-0.126.1 → dycw_utilities-0.126.2}/src/utilities/optuna.py +0 -0
- {dycw_utilities-0.126.1 → dycw_utilities-0.126.2}/src/utilities/orjson.py +0 -0
- {dycw_utilities-0.126.1 → dycw_utilities-0.126.2}/src/utilities/os.py +0 -0
- {dycw_utilities-0.126.1 → dycw_utilities-0.126.2}/src/utilities/parse.py +0 -0
- {dycw_utilities-0.126.1 → dycw_utilities-0.126.2}/src/utilities/pathlib.py +0 -0
- {dycw_utilities-0.126.1 → dycw_utilities-0.126.2}/src/utilities/period.py +0 -0
- {dycw_utilities-0.126.1 → dycw_utilities-0.126.2}/src/utilities/pickle.py +0 -0
- {dycw_utilities-0.126.1 → dycw_utilities-0.126.2}/src/utilities/platform.py +0 -0
- {dycw_utilities-0.126.1 → dycw_utilities-0.126.2}/src/utilities/polars.py +0 -0
- {dycw_utilities-0.126.1 → dycw_utilities-0.126.2}/src/utilities/polars_ols.py +0 -0
- {dycw_utilities-0.126.1 → dycw_utilities-0.126.2}/src/utilities/pqdm.py +0 -0
- {dycw_utilities-0.126.1 → dycw_utilities-0.126.2}/src/utilities/psutil.py +0 -0
- {dycw_utilities-0.126.1 → dycw_utilities-0.126.2}/src/utilities/py.typed +0 -0
- {dycw_utilities-0.126.1 → dycw_utilities-0.126.2}/src/utilities/pydantic.py +0 -0
- {dycw_utilities-0.126.1 → dycw_utilities-0.126.2}/src/utilities/pyinstrument.py +0 -0
- {dycw_utilities-0.126.1 → dycw_utilities-0.126.2}/src/utilities/pyrsistent.py +0 -0
- {dycw_utilities-0.126.1 → dycw_utilities-0.126.2}/src/utilities/pytest.py +0 -0
- {dycw_utilities-0.126.1 → dycw_utilities-0.126.2}/src/utilities/pytest_regressions.py +0 -0
- {dycw_utilities-0.126.1 → dycw_utilities-0.126.2}/src/utilities/python_dotenv.py +0 -0
- {dycw_utilities-0.126.1 → dycw_utilities-0.126.2}/src/utilities/random.py +0 -0
- {dycw_utilities-0.126.1 → dycw_utilities-0.126.2}/src/utilities/re.py +0 -0
- {dycw_utilities-0.126.1 → dycw_utilities-0.126.2}/src/utilities/redis.py +0 -0
- {dycw_utilities-0.126.1 → dycw_utilities-0.126.2}/src/utilities/reprlib.py +0 -0
- {dycw_utilities-0.126.1 → dycw_utilities-0.126.2}/src/utilities/rich.py +0 -0
- {dycw_utilities-0.126.1 → dycw_utilities-0.126.2}/src/utilities/scipy.py +0 -0
- {dycw_utilities-0.126.1 → dycw_utilities-0.126.2}/src/utilities/sentinel.py +0 -0
- {dycw_utilities-0.126.1 → dycw_utilities-0.126.2}/src/utilities/shelve.py +0 -0
- {dycw_utilities-0.126.1 → dycw_utilities-0.126.2}/src/utilities/slack_sdk.py +0 -0
- {dycw_utilities-0.126.1 → dycw_utilities-0.126.2}/src/utilities/socket.py +0 -0
- {dycw_utilities-0.126.1 → dycw_utilities-0.126.2}/src/utilities/sqlalchemy.py +0 -0
- {dycw_utilities-0.126.1 → dycw_utilities-0.126.2}/src/utilities/sqlalchemy_polars.py +0 -0
- {dycw_utilities-0.126.1 → dycw_utilities-0.126.2}/src/utilities/statsmodels.py +0 -0
- {dycw_utilities-0.126.1 → dycw_utilities-0.126.2}/src/utilities/streamlit.py +0 -0
- {dycw_utilities-0.126.1 → dycw_utilities-0.126.2}/src/utilities/string.py +0 -0
- {dycw_utilities-0.126.1 → dycw_utilities-0.126.2}/src/utilities/sys.py +0 -0
- {dycw_utilities-0.126.1 → dycw_utilities-0.126.2}/src/utilities/tempfile.py +0 -0
- {dycw_utilities-0.126.1 → dycw_utilities-0.126.2}/src/utilities/tenacity.py +0 -0
- {dycw_utilities-0.126.1 → dycw_utilities-0.126.2}/src/utilities/text.py +0 -0
- {dycw_utilities-0.126.1 → dycw_utilities-0.126.2}/src/utilities/threading.py +0 -0
- {dycw_utilities-0.126.1 → dycw_utilities-0.126.2}/src/utilities/timer.py +0 -0
- {dycw_utilities-0.126.1 → dycw_utilities-0.126.2}/src/utilities/traceback.py +0 -0
- {dycw_utilities-0.126.1 → dycw_utilities-0.126.2}/src/utilities/types.py +0 -0
- {dycw_utilities-0.126.1 → dycw_utilities-0.126.2}/src/utilities/typing.py +0 -0
- {dycw_utilities-0.126.1 → dycw_utilities-0.126.2}/src/utilities/tzdata.py +0 -0
- {dycw_utilities-0.126.1 → dycw_utilities-0.126.2}/src/utilities/tzlocal.py +0 -0
- {dycw_utilities-0.126.1 → dycw_utilities-0.126.2}/src/utilities/uuid.py +0 -0
- {dycw_utilities-0.126.1 → dycw_utilities-0.126.2}/src/utilities/version.py +0 -0
- {dycw_utilities-0.126.1 → dycw_utilities-0.126.2}/src/utilities/warnings.py +0 -0
- {dycw_utilities-0.126.1 → dycw_utilities-0.126.2}/src/utilities/whenever.py +0 -0
- {dycw_utilities-0.126.1 → dycw_utilities-0.126.2}/src/utilities/zipfile.py +0 -0
- {dycw_utilities-0.126.1 → dycw_utilities-0.126.2}/src/utilities/zoneinfo.py +0 -0
@@ -1,6 +1,6 @@
|
|
1
1
|
Metadata-Version: 2.4
|
2
2
|
Name: dycw-utilities
|
3
|
-
Version: 0.126.
|
3
|
+
Version: 0.126.2
|
4
4
|
Author-email: Derek Wan <d.wan@icloud.com>
|
5
5
|
License-File: LICENSE
|
6
6
|
Requires-Python: >=3.12
|
@@ -174,7 +174,7 @@ Requires-Dist: scipy<1.16,>=1.15.3; extra == 'zzz-test-scipy'
|
|
174
174
|
Provides-Extra: zzz-test-sentinel
|
175
175
|
Provides-Extra: zzz-test-shelve
|
176
176
|
Provides-Extra: zzz-test-slack-sdk
|
177
|
-
Requires-Dist: aiohttp<3.12.
|
177
|
+
Requires-Dist: aiohttp<3.12.7,>=3.12.6; extra == 'zzz-test-slack-sdk'
|
178
178
|
Requires-Dist: slack-sdk<3.36,>=3.35.0; extra == 'zzz-test-slack-sdk'
|
179
179
|
Provides-Extra: zzz-test-socket
|
180
180
|
Provides-Extra: zzz-test-sqlalchemy
|
@@ -8,7 +8,7 @@ requires = ["hatchling"]
|
|
8
8
|
# dependency groups
|
9
9
|
[dependency-groups]
|
10
10
|
dev = [
|
11
|
-
"aiohttp >= 3.12.
|
11
|
+
"aiohttp >= 3.12.6, < 3.12.7", # for slack
|
12
12
|
"aiosqlite >= 0.21.0, < 0.22",
|
13
13
|
"altair >= 5.5.0, < 5.6",
|
14
14
|
"asyncpg >= 0.30.0, < 0.31", # for sqlalchemy async
|
@@ -94,7 +94,7 @@ dependencies = [
|
|
94
94
|
name = "dycw-utilities"
|
95
95
|
readme = "README.md"
|
96
96
|
requires-python = ">= 3.12"
|
97
|
-
version = "0.126.
|
97
|
+
version = "0.126.2"
|
98
98
|
|
99
99
|
[project.optional-dependencies]
|
100
100
|
test = [
|
@@ -271,7 +271,7 @@ zzz-test-scipy = ["scipy >= 1.15.3, < 1.16"]
|
|
271
271
|
zzz-test-sentinel = []
|
272
272
|
zzz-test-shelve = []
|
273
273
|
zzz-test-slack-sdk = [
|
274
|
-
"aiohttp >= 3.12.
|
274
|
+
"aiohttp >= 3.12.6, < 3.12.7", # for slack
|
275
275
|
"slack-sdk >= 3.35.0, < 3.36",
|
276
276
|
]
|
277
277
|
zzz-test-socket = []
|
@@ -335,7 +335,7 @@ zzz-test-zoneinfo = [
|
|
335
335
|
# bump-my-version
|
336
336
|
[tool.bumpversion]
|
337
337
|
allow_dirty = true
|
338
|
-
current_version = "0.126.
|
338
|
+
current_version = "0.126.2"
|
339
339
|
|
340
340
|
[[tool.bumpversion.files]]
|
341
341
|
filename = "src/utilities/__init__.py"
|
@@ -0,0 +1,52 @@
|
|
1
|
+
from __future__ import annotations
|
2
|
+
|
3
|
+
from asyncio import TaskGroup
|
4
|
+
|
5
|
+
from pytest import raises
|
6
|
+
|
7
|
+
from utilities.errors import ImpossibleCaseError, repr_error
|
8
|
+
|
9
|
+
|
10
|
+
class TestImpossibleCaseError:
|
11
|
+
def test_main(self) -> None:
|
12
|
+
x = None
|
13
|
+
with raises(ImpossibleCaseError, match=r"Case must be possible: x=None\."):
|
14
|
+
raise ImpossibleCaseError(case=[f"{x=}"])
|
15
|
+
|
16
|
+
|
17
|
+
class TestReprError:
|
18
|
+
def test_class(self) -> None:
|
19
|
+
class CustomError(Exception): ...
|
20
|
+
|
21
|
+
result = repr_error(CustomError)
|
22
|
+
expected = "CustomError"
|
23
|
+
assert result == expected
|
24
|
+
|
25
|
+
async def test_group(self) -> None:
|
26
|
+
class Custom1Error(Exception): ...
|
27
|
+
|
28
|
+
async def coroutine1() -> None:
|
29
|
+
raise Custom1Error
|
30
|
+
|
31
|
+
class Custom2Error(Exception): ...
|
32
|
+
|
33
|
+
async def coroutine2() -> None:
|
34
|
+
msg = "message2"
|
35
|
+
raise Custom2Error(msg)
|
36
|
+
|
37
|
+
with raises(ExceptionGroup) as exc_info: # noqa: PT012
|
38
|
+
async with TaskGroup() as tg:
|
39
|
+
_ = tg.create_task(coroutine1())
|
40
|
+
_ = tg.create_task(coroutine2())
|
41
|
+
error = exc_info.value
|
42
|
+
assert isinstance(error, ExceptionGroup)
|
43
|
+
result = repr_error(error)
|
44
|
+
expected = "ExceptionGroup(Custom1Error(), Custom2Error(message2))"
|
45
|
+
assert result == expected
|
46
|
+
|
47
|
+
def test_instance(self) -> None:
|
48
|
+
class CustomError(Exception): ...
|
49
|
+
|
50
|
+
result = repr_error(CustomError("message"))
|
51
|
+
expected = "CustomError(message)"
|
52
|
+
assert result == expected
|
@@ -24,6 +24,10 @@ class ImpossibleCaseError(Exception):
|
|
24
24
|
def repr_error(error: MaybeType[BaseException], /) -> str:
|
25
25
|
"""Get a string representation of an error."""
|
26
26
|
match error:
|
27
|
+
case ExceptionGroup() as group:
|
28
|
+
descs = list(map(repr_error, group.exceptions))
|
29
|
+
joined = ", ".join(descs)
|
30
|
+
return f"{group.__class__.__name__}({joined})"
|
27
31
|
case BaseException() as error_obj:
|
28
32
|
return f"{error_obj.__class__.__name__}({error_obj})"
|
29
33
|
case type() as error_cls:
|
@@ -1,28 +0,0 @@
|
|
1
|
-
from __future__ import annotations
|
2
|
-
|
3
|
-
from pytest import raises
|
4
|
-
|
5
|
-
from utilities.errors import ImpossibleCaseError, repr_error
|
6
|
-
|
7
|
-
|
8
|
-
class TestImpossibleCaseError:
|
9
|
-
def test_main(self) -> None:
|
10
|
-
x = None
|
11
|
-
with raises(ImpossibleCaseError, match=r"Case must be possible: x=None\."):
|
12
|
-
raise ImpossibleCaseError(case=[f"{x=}"])
|
13
|
-
|
14
|
-
|
15
|
-
class TestReprError:
|
16
|
-
def test_class(self) -> None:
|
17
|
-
class CustomError(Exception): ...
|
18
|
-
|
19
|
-
result = repr_error(CustomError)
|
20
|
-
expected = "CustomError"
|
21
|
-
assert result == expected
|
22
|
-
|
23
|
-
def test_instance(self) -> None:
|
24
|
-
class CustomError(Exception): ...
|
25
|
-
|
26
|
-
result = repr_error(CustomError())
|
27
|
-
expected = "CustomError()"
|
28
|
-
assert result == expected
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
{dycw_utilities-0.126.1 → dycw_utilities-0.126.2}/src/tests/modules/package_missing/__init__.py
RENAMED
File without changes
|
{dycw_utilities-0.126.1 → dycw_utilities-0.126.2}/src/tests/modules/package_missing/module.py
RENAMED
File without changes
|
{dycw_utilities-0.126.1 → dycw_utilities-0.126.2}/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.126.1 → dycw_utilities-0.126.2}/src/tests/modules/package_without/__init__.py
RENAMED
File without changes
|
{dycw_utilities-0.126.1 → dycw_utilities-0.126.2}/src/tests/modules/package_without/module_1.py
RENAMED
File without changes
|
{dycw_utilities-0.126.1 → dycw_utilities-0.126.2}/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
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
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.126.1 → dycw_utilities-0.126.2}/src/tests/test_traceback_funcs/__init__.py
RENAMED
File without changes
|
File without changes
|
{dycw_utilities-0.126.1 → dycw_utilities-0.126.2}/src/tests/test_traceback_funcs/decorated_async.py
RENAMED
File without changes
|
{dycw_utilities-0.126.1 → dycw_utilities-0.126.2}/src/tests/test_traceback_funcs/decorated_sync.py
RENAMED
File without changes
|
{dycw_utilities-0.126.1 → dycw_utilities-0.126.2}/src/tests/test_traceback_funcs/error_bind.py
RENAMED
File without changes
|
File without changes
|
File without changes
|
{dycw_utilities-0.126.1 → dycw_utilities-0.126.2}/src/tests/test_traceback_funcs/recursive.py
RENAMED
File without changes
|
{dycw_utilities-0.126.1 → dycw_utilities-0.126.2}/src/tests/test_traceback_funcs/task_group_one.py
RENAMED
File without changes
|
{dycw_utilities-0.126.1 → dycw_utilities-0.126.2}/src/tests/test_traceback_funcs/task_group_two.py
RENAMED
File without changes
|
File without changes
|
{dycw_utilities-0.126.1 → dycw_utilities-0.126.2}/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.126.1 → dycw_utilities-0.126.2}/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
|
File without changes
|
File without changes
|