stouputils 1.3.5__tar.gz → 1.3.6__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.
- {stouputils-1.3.5 → stouputils-1.3.6}/PKG-INFO +1 -1
- {stouputils-1.3.5 → stouputils-1.3.6}/pyproject.toml +1 -1
- {stouputils-1.3.5 → stouputils-1.3.6}/stouputils/decorators.py +17 -0
- {stouputils-1.3.5 → stouputils-1.3.6}/.gitignore +0 -0
- {stouputils-1.3.5 → stouputils-1.3.6}/LICENSE +0 -0
- {stouputils-1.3.5 → stouputils-1.3.6}/README.md +0 -0
- {stouputils-1.3.5 → stouputils-1.3.6}/stouputils/__init__.py +0 -0
- {stouputils-1.3.5 → stouputils-1.3.6}/stouputils/all_doctests.py +0 -0
- {stouputils-1.3.5 → stouputils-1.3.6}/stouputils/applications/__init__.py +0 -0
- {stouputils-1.3.5 → stouputils-1.3.6}/stouputils/applications/automatic_docs.py +0 -0
- {stouputils-1.3.5 → stouputils-1.3.6}/stouputils/applications/upscaler/__init__.py +0 -0
- {stouputils-1.3.5 → stouputils-1.3.6}/stouputils/applications/upscaler/config.py +0 -0
- {stouputils-1.3.5 → stouputils-1.3.6}/stouputils/applications/upscaler/image.py +0 -0
- {stouputils-1.3.5 → stouputils-1.3.6}/stouputils/applications/upscaler/video.py +0 -0
- {stouputils-1.3.5 → stouputils-1.3.6}/stouputils/archive.py +0 -0
- {stouputils-1.3.5 → stouputils-1.3.6}/stouputils/backup.py +0 -0
- {stouputils-1.3.5 → stouputils-1.3.6}/stouputils/collections.py +0 -0
- {stouputils-1.3.5 → stouputils-1.3.6}/stouputils/continuous_delivery/__init__.py +0 -0
- {stouputils-1.3.5 → stouputils-1.3.6}/stouputils/continuous_delivery/cd_utils.py +0 -0
- {stouputils-1.3.5 → stouputils-1.3.6}/stouputils/continuous_delivery/github.py +0 -0
- {stouputils-1.3.5 → stouputils-1.3.6}/stouputils/continuous_delivery/pypi.py +0 -0
- {stouputils-1.3.5 → stouputils-1.3.6}/stouputils/continuous_delivery/pyproject.py +0 -0
- {stouputils-1.3.5 → stouputils-1.3.6}/stouputils/ctx.py +0 -0
- {stouputils-1.3.5 → stouputils-1.3.6}/stouputils/data_science/config/get.py +0 -0
- {stouputils-1.3.5 → stouputils-1.3.6}/stouputils/data_science/config/set.py +0 -0
- {stouputils-1.3.5 → stouputils-1.3.6}/stouputils/data_science/data_processing/image/__init__.py +0 -0
- {stouputils-1.3.5 → stouputils-1.3.6}/stouputils/data_science/data_processing/image/auto_contrast.py +0 -0
- {stouputils-1.3.5 → stouputils-1.3.6}/stouputils/data_science/data_processing/image/axis_flip.py +0 -0
- {stouputils-1.3.5 → stouputils-1.3.6}/stouputils/data_science/data_processing/image/bias_field_correction.py +0 -0
- {stouputils-1.3.5 → stouputils-1.3.6}/stouputils/data_science/data_processing/image/binary_threshold.py +0 -0
- {stouputils-1.3.5 → stouputils-1.3.6}/stouputils/data_science/data_processing/image/blur.py +0 -0
- {stouputils-1.3.5 → stouputils-1.3.6}/stouputils/data_science/data_processing/image/brightness.py +0 -0
- {stouputils-1.3.5 → stouputils-1.3.6}/stouputils/data_science/data_processing/image/canny.py +0 -0
- {stouputils-1.3.5 → stouputils-1.3.6}/stouputils/data_science/data_processing/image/clahe.py +0 -0
- {stouputils-1.3.5 → stouputils-1.3.6}/stouputils/data_science/data_processing/image/common.py +0 -0
- {stouputils-1.3.5 → stouputils-1.3.6}/stouputils/data_science/data_processing/image/contrast.py +0 -0
- {stouputils-1.3.5 → stouputils-1.3.6}/stouputils/data_science/data_processing/image/curvature_flow_filter.py +0 -0
- {stouputils-1.3.5 → stouputils-1.3.6}/stouputils/data_science/data_processing/image/denoise.py +0 -0
- {stouputils-1.3.5 → stouputils-1.3.6}/stouputils/data_science/data_processing/image/histogram_equalization.py +0 -0
- {stouputils-1.3.5 → stouputils-1.3.6}/stouputils/data_science/data_processing/image/invert.py +0 -0
- {stouputils-1.3.5 → stouputils-1.3.6}/stouputils/data_science/data_processing/image/laplacian.py +0 -0
- {stouputils-1.3.5 → stouputils-1.3.6}/stouputils/data_science/data_processing/image/median_blur.py +0 -0
- {stouputils-1.3.5 → stouputils-1.3.6}/stouputils/data_science/data_processing/image/noise.py +0 -0
- {stouputils-1.3.5 → stouputils-1.3.6}/stouputils/data_science/data_processing/image/normalize.py +0 -0
- {stouputils-1.3.5 → stouputils-1.3.6}/stouputils/data_science/data_processing/image/random_erase.py +0 -0
- {stouputils-1.3.5 → stouputils-1.3.6}/stouputils/data_science/data_processing/image/resize.py +0 -0
- {stouputils-1.3.5 → stouputils-1.3.6}/stouputils/data_science/data_processing/image/rotation.py +0 -0
- {stouputils-1.3.5 → stouputils-1.3.6}/stouputils/data_science/data_processing/image/salt_pepper.py +0 -0
- {stouputils-1.3.5 → stouputils-1.3.6}/stouputils/data_science/data_processing/image/sharpening.py +0 -0
- {stouputils-1.3.5 → stouputils-1.3.6}/stouputils/data_science/data_processing/image/shearing.py +0 -0
- {stouputils-1.3.5 → stouputils-1.3.6}/stouputils/data_science/data_processing/image/threshold.py +0 -0
- {stouputils-1.3.5 → stouputils-1.3.6}/stouputils/data_science/data_processing/image/translation.py +0 -0
- {stouputils-1.3.5 → stouputils-1.3.6}/stouputils/data_science/data_processing/image/zoom.py +0 -0
- {stouputils-1.3.5 → stouputils-1.3.6}/stouputils/data_science/data_processing/image_augmentation.py +0 -0
- {stouputils-1.3.5 → stouputils-1.3.6}/stouputils/data_science/data_processing/image_preprocess.py +0 -0
- {stouputils-1.3.5 → stouputils-1.3.6}/stouputils/data_science/data_processing/prosthesis_detection.py +0 -0
- {stouputils-1.3.5 → stouputils-1.3.6}/stouputils/data_science/data_processing/technique.py +0 -0
- {stouputils-1.3.5 → stouputils-1.3.6}/stouputils/data_science/dataset/__init__.py +0 -0
- {stouputils-1.3.5 → stouputils-1.3.6}/stouputils/data_science/dataset/dataset.py +0 -0
- {stouputils-1.3.5 → stouputils-1.3.6}/stouputils/data_science/dataset/dataset_loader.py +0 -0
- {stouputils-1.3.5 → stouputils-1.3.6}/stouputils/data_science/dataset/grouping_strategy.py +0 -0
- {stouputils-1.3.5 → stouputils-1.3.6}/stouputils/data_science/dataset/image_loader.py +0 -0
- {stouputils-1.3.5 → stouputils-1.3.6}/stouputils/data_science/dataset/xy_tuple.py +0 -0
- {stouputils-1.3.5 → stouputils-1.3.6}/stouputils/data_science/metric_dictionnary.py +0 -0
- {stouputils-1.3.5 → stouputils-1.3.6}/stouputils/data_science/metric_utils.py +0 -0
- {stouputils-1.3.5 → stouputils-1.3.6}/stouputils/data_science/mlflow_utils.py +0 -0
- {stouputils-1.3.5 → stouputils-1.3.6}/stouputils/data_science/models/abstract_model.py +0 -0
- {stouputils-1.3.5 → stouputils-1.3.6}/stouputils/data_science/models/all.py +0 -0
- {stouputils-1.3.5 → stouputils-1.3.6}/stouputils/data_science/models/base_keras.py +0 -0
- {stouputils-1.3.5 → stouputils-1.3.6}/stouputils/data_science/models/keras/all.py +0 -0
- {stouputils-1.3.5 → stouputils-1.3.6}/stouputils/data_science/models/keras/convnext.py +0 -0
- {stouputils-1.3.5 → stouputils-1.3.6}/stouputils/data_science/models/keras/densenet.py +0 -0
- {stouputils-1.3.5 → stouputils-1.3.6}/stouputils/data_science/models/keras/efficientnet.py +0 -0
- {stouputils-1.3.5 → stouputils-1.3.6}/stouputils/data_science/models/keras/mobilenet.py +0 -0
- {stouputils-1.3.5 → stouputils-1.3.6}/stouputils/data_science/models/keras/resnet.py +0 -0
- {stouputils-1.3.5 → stouputils-1.3.6}/stouputils/data_science/models/keras/squeezenet.py +0 -0
- {stouputils-1.3.5 → stouputils-1.3.6}/stouputils/data_science/models/keras/vgg.py +0 -0
- {stouputils-1.3.5 → stouputils-1.3.6}/stouputils/data_science/models/keras/xception.py +0 -0
- {stouputils-1.3.5 → stouputils-1.3.6}/stouputils/data_science/models/keras_utils/callbacks/__init__.py +0 -0
- {stouputils-1.3.5 → stouputils-1.3.6}/stouputils/data_science/models/keras_utils/callbacks/colored_progress_bar.py +0 -0
- {stouputils-1.3.5 → stouputils-1.3.6}/stouputils/data_science/models/keras_utils/callbacks/learning_rate_finder.py +0 -0
- {stouputils-1.3.5 → stouputils-1.3.6}/stouputils/data_science/models/keras_utils/callbacks/model_checkpoint_v2.py +0 -0
- {stouputils-1.3.5 → stouputils-1.3.6}/stouputils/data_science/models/keras_utils/callbacks/progressive_unfreezing.py +0 -0
- {stouputils-1.3.5 → stouputils-1.3.6}/stouputils/data_science/models/keras_utils/callbacks/warmup_scheduler.py +0 -0
- {stouputils-1.3.5 → stouputils-1.3.6}/stouputils/data_science/models/keras_utils/losses/__init__.py +0 -0
- {stouputils-1.3.5 → stouputils-1.3.6}/stouputils/data_science/models/keras_utils/losses/next_generation_loss.py +0 -0
- {stouputils-1.3.5 → stouputils-1.3.6}/stouputils/data_science/models/keras_utils/visualizations.py +0 -0
- {stouputils-1.3.5 → stouputils-1.3.6}/stouputils/data_science/models/model_interface.py +0 -0
- {stouputils-1.3.5 → stouputils-1.3.6}/stouputils/data_science/models/sandbox.py +0 -0
- {stouputils-1.3.5 → stouputils-1.3.6}/stouputils/data_science/range_tuple.py +0 -0
- {stouputils-1.3.5 → stouputils-1.3.6}/stouputils/data_science/scripts/augment_dataset.py +0 -0
- {stouputils-1.3.5 → stouputils-1.3.6}/stouputils/data_science/scripts/exhaustive_process.py +0 -0
- {stouputils-1.3.5 → stouputils-1.3.6}/stouputils/data_science/scripts/preprocess_dataset.py +0 -0
- {stouputils-1.3.5 → stouputils-1.3.6}/stouputils/data_science/scripts/routine.py +0 -0
- {stouputils-1.3.5 → stouputils-1.3.6}/stouputils/data_science/utils.py +0 -0
- {stouputils-1.3.5 → stouputils-1.3.6}/stouputils/dont_look/zip_file_override.py +0 -0
- {stouputils-1.3.5 → stouputils-1.3.6}/stouputils/image.py +0 -0
- {stouputils-1.3.5 → stouputils-1.3.6}/stouputils/installer/__init__.py +0 -0
- {stouputils-1.3.5 → stouputils-1.3.6}/stouputils/installer/common.py +0 -0
- {stouputils-1.3.5 → stouputils-1.3.6}/stouputils/installer/downloader.py +0 -0
- {stouputils-1.3.5 → stouputils-1.3.6}/stouputils/installer/linux.py +0 -0
- {stouputils-1.3.5 → stouputils-1.3.6}/stouputils/installer/main.py +0 -0
- {stouputils-1.3.5 → stouputils-1.3.6}/stouputils/installer/windows.py +0 -0
- {stouputils-1.3.5 → stouputils-1.3.6}/stouputils/io.py +0 -0
- {stouputils-1.3.5 → stouputils-1.3.6}/stouputils/parallel.py +0 -0
- {stouputils-1.3.5 → stouputils-1.3.6}/stouputils/print.py +0 -0
- {stouputils-1.3.5 → stouputils-1.3.6}/stouputils/py.typed +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: stouputils
|
|
3
|
-
Version: 1.3.
|
|
3
|
+
Version: 1.3.6
|
|
4
4
|
Summary: Stouputils is a collection of utility modules designed to simplify and enhance the development process. It includes a range of tools for tasks such as execution of doctests, display utilities, decorators, as well as context managers, and many more.
|
|
5
5
|
Project-URL: Homepage, https://github.com/Stoupy51/stouputils
|
|
6
6
|
Project-URL: Issues, https://github.com/Stoupy51/stouputils/issues
|
|
@@ -5,7 +5,7 @@ build-backend = "hatchling.build"
|
|
|
5
5
|
|
|
6
6
|
[project]
|
|
7
7
|
name = "stouputils"
|
|
8
|
-
version = "1.3.
|
|
8
|
+
version = "1.3.6"
|
|
9
9
|
description = "Stouputils is a collection of utility modules designed to simplify and enhance the development process. It includes a range of tools for tasks such as execution of doctests, display utilities, decorators, as well as context managers, and many more."
|
|
10
10
|
readme = "README.md"
|
|
11
11
|
requires-python = ">=3.10"
|
|
@@ -33,6 +33,17 @@ def get_func_name(func: Callable[..., Any]) -> str:
|
|
|
33
33
|
except AttributeError:
|
|
34
34
|
return "<unknown>"
|
|
35
35
|
|
|
36
|
+
def get_wrapper_name(decorator_name: str, func: Callable[..., Any]) -> str:
|
|
37
|
+
""" Get a descriptive name for a wrapper function.
|
|
38
|
+
|
|
39
|
+
Args:
|
|
40
|
+
decorator_name (str): Name of the decorator
|
|
41
|
+
func (Callable[..., Any]): Function being decorated
|
|
42
|
+
Returns:
|
|
43
|
+
str: Combined name for the wrapper function
|
|
44
|
+
"""
|
|
45
|
+
return f"{decorator_name}_{get_func_name(func)}"
|
|
46
|
+
|
|
36
47
|
# Decorator that make a function silent (disable stdout)
|
|
37
48
|
def silent(
|
|
38
49
|
func: Callable[..., Any] | None = None,
|
|
@@ -66,6 +77,7 @@ def silent(
|
|
|
66
77
|
# Use Muffle context manager to silence output
|
|
67
78
|
with Muffle(mute_stderr=mute_stderr):
|
|
68
79
|
return func(*args, **kwargs)
|
|
80
|
+
wrapper.__name__ = get_wrapper_name("stouputils.decorators.silent", func)
|
|
69
81
|
return wrapper
|
|
70
82
|
|
|
71
83
|
# Handle both @silent and @silent(mute_stderr=...)
|
|
@@ -108,6 +120,7 @@ def measure_time(
|
|
|
108
120
|
def wrapper(*args: tuple[Any, ...], **kwargs: dict[str, Any]) -> Any:
|
|
109
121
|
with MeasureTime(print_func=print_func, message=new_msg, perf_counter=perf_counter):
|
|
110
122
|
return func(*args, **kwargs)
|
|
123
|
+
wrapper.__name__ = get_wrapper_name("stouputils.decorators.measure_time", func)
|
|
111
124
|
return wrapper
|
|
112
125
|
return decorator
|
|
113
126
|
|
|
@@ -189,6 +202,7 @@ def handle_error(
|
|
|
189
202
|
# Sleep for the specified time, only if the error_log is not ERROR_TRACEBACK (because it's blocking)
|
|
190
203
|
if sleep_time > 0.0 and error_log != LogLevels.ERROR_TRACEBACK:
|
|
191
204
|
time.sleep(sleep_time)
|
|
205
|
+
wrapper.__name__ = get_wrapper_name("stouputils.decorators.handle_error", func)
|
|
192
206
|
return wrapper
|
|
193
207
|
|
|
194
208
|
# Handle both @handle_error and @handle_error(exceptions=..., message=..., error_log=...)
|
|
@@ -255,6 +269,7 @@ def simple_cache(
|
|
|
255
269
|
return result
|
|
256
270
|
|
|
257
271
|
# Return the wrapper
|
|
272
|
+
wrapper.__name__ = get_wrapper_name("stouputils.decorators.simple_cache", func)
|
|
258
273
|
return wrapper
|
|
259
274
|
|
|
260
275
|
# Handle both @simple_cache and @simple_cache(method=...)
|
|
@@ -312,6 +327,7 @@ def deprecated(
|
|
|
312
327
|
|
|
313
328
|
# Call the original function
|
|
314
329
|
return func(*args, **kwargs)
|
|
330
|
+
wrapper.__name__ = get_wrapper_name("stouputils.decorators.deprecated", func)
|
|
315
331
|
return wrapper
|
|
316
332
|
|
|
317
333
|
# Handle both @deprecated and @deprecated(message=..., error_log=...)
|
|
@@ -362,6 +378,7 @@ def abstract(
|
|
|
362
378
|
@handle_error(exceptions=NotImplementedError, error_log=error_log)
|
|
363
379
|
def wrapper(*args: tuple[Any, ...], **kwargs: dict[str, Any]) -> Any:
|
|
364
380
|
raise NotImplementedError(message)
|
|
381
|
+
wrapper.__name__ = get_wrapper_name("stouputils.decorators.abstract", func)
|
|
365
382
|
return wrapper
|
|
366
383
|
|
|
367
384
|
# Handle both @abstract and @abstract(error_log=...)
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{stouputils-1.3.5 → stouputils-1.3.6}/stouputils/data_science/data_processing/image/__init__.py
RENAMED
|
File without changes
|
{stouputils-1.3.5 → stouputils-1.3.6}/stouputils/data_science/data_processing/image/auto_contrast.py
RENAMED
|
File without changes
|
{stouputils-1.3.5 → stouputils-1.3.6}/stouputils/data_science/data_processing/image/axis_flip.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{stouputils-1.3.5 → stouputils-1.3.6}/stouputils/data_science/data_processing/image/brightness.py
RENAMED
|
File without changes
|
{stouputils-1.3.5 → stouputils-1.3.6}/stouputils/data_science/data_processing/image/canny.py
RENAMED
|
File without changes
|
{stouputils-1.3.5 → stouputils-1.3.6}/stouputils/data_science/data_processing/image/clahe.py
RENAMED
|
File without changes
|
{stouputils-1.3.5 → stouputils-1.3.6}/stouputils/data_science/data_processing/image/common.py
RENAMED
|
File without changes
|
{stouputils-1.3.5 → stouputils-1.3.6}/stouputils/data_science/data_processing/image/contrast.py
RENAMED
|
File without changes
|
|
File without changes
|
{stouputils-1.3.5 → stouputils-1.3.6}/stouputils/data_science/data_processing/image/denoise.py
RENAMED
|
File without changes
|
|
File without changes
|
{stouputils-1.3.5 → stouputils-1.3.6}/stouputils/data_science/data_processing/image/invert.py
RENAMED
|
File without changes
|
{stouputils-1.3.5 → stouputils-1.3.6}/stouputils/data_science/data_processing/image/laplacian.py
RENAMED
|
File without changes
|
{stouputils-1.3.5 → stouputils-1.3.6}/stouputils/data_science/data_processing/image/median_blur.py
RENAMED
|
File without changes
|
{stouputils-1.3.5 → stouputils-1.3.6}/stouputils/data_science/data_processing/image/noise.py
RENAMED
|
File without changes
|
{stouputils-1.3.5 → stouputils-1.3.6}/stouputils/data_science/data_processing/image/normalize.py
RENAMED
|
File without changes
|
{stouputils-1.3.5 → stouputils-1.3.6}/stouputils/data_science/data_processing/image/random_erase.py
RENAMED
|
File without changes
|
{stouputils-1.3.5 → stouputils-1.3.6}/stouputils/data_science/data_processing/image/resize.py
RENAMED
|
File without changes
|
{stouputils-1.3.5 → stouputils-1.3.6}/stouputils/data_science/data_processing/image/rotation.py
RENAMED
|
File without changes
|
{stouputils-1.3.5 → stouputils-1.3.6}/stouputils/data_science/data_processing/image/salt_pepper.py
RENAMED
|
File without changes
|
{stouputils-1.3.5 → stouputils-1.3.6}/stouputils/data_science/data_processing/image/sharpening.py
RENAMED
|
File without changes
|
{stouputils-1.3.5 → stouputils-1.3.6}/stouputils/data_science/data_processing/image/shearing.py
RENAMED
|
File without changes
|
{stouputils-1.3.5 → stouputils-1.3.6}/stouputils/data_science/data_processing/image/threshold.py
RENAMED
|
File without changes
|
{stouputils-1.3.5 → stouputils-1.3.6}/stouputils/data_science/data_processing/image/translation.py
RENAMED
|
File without changes
|
|
File without changes
|
{stouputils-1.3.5 → stouputils-1.3.6}/stouputils/data_science/data_processing/image_augmentation.py
RENAMED
|
File without changes
|
{stouputils-1.3.5 → stouputils-1.3.6}/stouputils/data_science/data_processing/image_preprocess.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
|
{stouputils-1.3.5 → stouputils-1.3.6}/stouputils/data_science/models/keras_utils/losses/__init__.py
RENAMED
|
File without changes
|
|
File without changes
|
{stouputils-1.3.5 → stouputils-1.3.6}/stouputils/data_science/models/keras_utils/visualizations.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
|