stouputils 1.3.13__tar.gz → 1.3.15__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.13 → stouputils-1.3.15}/PKG-INFO +1 -1
- {stouputils-1.3.13 → stouputils-1.3.15}/pyproject.toml +1 -1
- {stouputils-1.3.13 → stouputils-1.3.15}/stouputils/continuous_delivery/github.py +6 -1
- {stouputils-1.3.13 → stouputils-1.3.15}/stouputils/data_science/models/base_keras.py +1 -1
- {stouputils-1.3.13 → stouputils-1.3.15}/stouputils/decorators.py +8 -3
- {stouputils-1.3.13 → stouputils-1.3.15}/stouputils/io.py +2 -2
- {stouputils-1.3.13 → stouputils-1.3.15}/.gitignore +0 -0
- {stouputils-1.3.13 → stouputils-1.3.15}/LICENSE +0 -0
- {stouputils-1.3.13 → stouputils-1.3.15}/README.md +0 -0
- {stouputils-1.3.13 → stouputils-1.3.15}/stouputils/__init__.py +0 -0
- {stouputils-1.3.13 → stouputils-1.3.15}/stouputils/all_doctests.py +0 -0
- {stouputils-1.3.13 → stouputils-1.3.15}/stouputils/applications/__init__.py +0 -0
- {stouputils-1.3.13 → stouputils-1.3.15}/stouputils/applications/automatic_docs.py +0 -0
- {stouputils-1.3.13 → stouputils-1.3.15}/stouputils/applications/upscaler/__init__.py +0 -0
- {stouputils-1.3.13 → stouputils-1.3.15}/stouputils/applications/upscaler/config.py +0 -0
- {stouputils-1.3.13 → stouputils-1.3.15}/stouputils/applications/upscaler/image.py +0 -0
- {stouputils-1.3.13 → stouputils-1.3.15}/stouputils/applications/upscaler/video.py +0 -0
- {stouputils-1.3.13 → stouputils-1.3.15}/stouputils/archive.py +0 -0
- {stouputils-1.3.13 → stouputils-1.3.15}/stouputils/backup.py +0 -0
- {stouputils-1.3.13 → stouputils-1.3.15}/stouputils/collections.py +0 -0
- {stouputils-1.3.13 → stouputils-1.3.15}/stouputils/continuous_delivery/__init__.py +0 -0
- {stouputils-1.3.13 → stouputils-1.3.15}/stouputils/continuous_delivery/cd_utils.py +0 -0
- {stouputils-1.3.13 → stouputils-1.3.15}/stouputils/continuous_delivery/pypi.py +0 -0
- {stouputils-1.3.13 → stouputils-1.3.15}/stouputils/continuous_delivery/pyproject.py +0 -0
- {stouputils-1.3.13 → stouputils-1.3.15}/stouputils/ctx.py +0 -0
- {stouputils-1.3.13 → stouputils-1.3.15}/stouputils/data_science/config/get.py +0 -0
- {stouputils-1.3.13 → stouputils-1.3.15}/stouputils/data_science/config/set.py +0 -0
- {stouputils-1.3.13 → stouputils-1.3.15}/stouputils/data_science/data_processing/image/__init__.py +0 -0
- {stouputils-1.3.13 → stouputils-1.3.15}/stouputils/data_science/data_processing/image/auto_contrast.py +0 -0
- {stouputils-1.3.13 → stouputils-1.3.15}/stouputils/data_science/data_processing/image/axis_flip.py +0 -0
- {stouputils-1.3.13 → stouputils-1.3.15}/stouputils/data_science/data_processing/image/bias_field_correction.py +0 -0
- {stouputils-1.3.13 → stouputils-1.3.15}/stouputils/data_science/data_processing/image/binary_threshold.py +0 -0
- {stouputils-1.3.13 → stouputils-1.3.15}/stouputils/data_science/data_processing/image/blur.py +0 -0
- {stouputils-1.3.13 → stouputils-1.3.15}/stouputils/data_science/data_processing/image/brightness.py +0 -0
- {stouputils-1.3.13 → stouputils-1.3.15}/stouputils/data_science/data_processing/image/canny.py +0 -0
- {stouputils-1.3.13 → stouputils-1.3.15}/stouputils/data_science/data_processing/image/clahe.py +0 -0
- {stouputils-1.3.13 → stouputils-1.3.15}/stouputils/data_science/data_processing/image/common.py +0 -0
- {stouputils-1.3.13 → stouputils-1.3.15}/stouputils/data_science/data_processing/image/contrast.py +0 -0
- {stouputils-1.3.13 → stouputils-1.3.15}/stouputils/data_science/data_processing/image/curvature_flow_filter.py +0 -0
- {stouputils-1.3.13 → stouputils-1.3.15}/stouputils/data_science/data_processing/image/denoise.py +0 -0
- {stouputils-1.3.13 → stouputils-1.3.15}/stouputils/data_science/data_processing/image/histogram_equalization.py +0 -0
- {stouputils-1.3.13 → stouputils-1.3.15}/stouputils/data_science/data_processing/image/invert.py +0 -0
- {stouputils-1.3.13 → stouputils-1.3.15}/stouputils/data_science/data_processing/image/laplacian.py +0 -0
- {stouputils-1.3.13 → stouputils-1.3.15}/stouputils/data_science/data_processing/image/median_blur.py +0 -0
- {stouputils-1.3.13 → stouputils-1.3.15}/stouputils/data_science/data_processing/image/noise.py +0 -0
- {stouputils-1.3.13 → stouputils-1.3.15}/stouputils/data_science/data_processing/image/normalize.py +0 -0
- {stouputils-1.3.13 → stouputils-1.3.15}/stouputils/data_science/data_processing/image/random_erase.py +0 -0
- {stouputils-1.3.13 → stouputils-1.3.15}/stouputils/data_science/data_processing/image/resize.py +0 -0
- {stouputils-1.3.13 → stouputils-1.3.15}/stouputils/data_science/data_processing/image/rotation.py +0 -0
- {stouputils-1.3.13 → stouputils-1.3.15}/stouputils/data_science/data_processing/image/salt_pepper.py +0 -0
- {stouputils-1.3.13 → stouputils-1.3.15}/stouputils/data_science/data_processing/image/sharpening.py +0 -0
- {stouputils-1.3.13 → stouputils-1.3.15}/stouputils/data_science/data_processing/image/shearing.py +0 -0
- {stouputils-1.3.13 → stouputils-1.3.15}/stouputils/data_science/data_processing/image/threshold.py +0 -0
- {stouputils-1.3.13 → stouputils-1.3.15}/stouputils/data_science/data_processing/image/translation.py +0 -0
- {stouputils-1.3.13 → stouputils-1.3.15}/stouputils/data_science/data_processing/image/zoom.py +0 -0
- {stouputils-1.3.13 → stouputils-1.3.15}/stouputils/data_science/data_processing/image_augmentation.py +0 -0
- {stouputils-1.3.13 → stouputils-1.3.15}/stouputils/data_science/data_processing/image_preprocess.py +0 -0
- {stouputils-1.3.13 → stouputils-1.3.15}/stouputils/data_science/data_processing/prosthesis_detection.py +0 -0
- {stouputils-1.3.13 → stouputils-1.3.15}/stouputils/data_science/data_processing/technique.py +0 -0
- {stouputils-1.3.13 → stouputils-1.3.15}/stouputils/data_science/dataset/__init__.py +0 -0
- {stouputils-1.3.13 → stouputils-1.3.15}/stouputils/data_science/dataset/dataset.py +0 -0
- {stouputils-1.3.13 → stouputils-1.3.15}/stouputils/data_science/dataset/dataset_loader.py +0 -0
- {stouputils-1.3.13 → stouputils-1.3.15}/stouputils/data_science/dataset/grouping_strategy.py +0 -0
- {stouputils-1.3.13 → stouputils-1.3.15}/stouputils/data_science/dataset/image_loader.py +0 -0
- {stouputils-1.3.13 → stouputils-1.3.15}/stouputils/data_science/dataset/xy_tuple.py +0 -0
- {stouputils-1.3.13 → stouputils-1.3.15}/stouputils/data_science/metric_dictionnary.py +0 -0
- {stouputils-1.3.13 → stouputils-1.3.15}/stouputils/data_science/metric_utils.py +0 -0
- {stouputils-1.3.13 → stouputils-1.3.15}/stouputils/data_science/mlflow_utils.py +0 -0
- {stouputils-1.3.13 → stouputils-1.3.15}/stouputils/data_science/models/abstract_model.py +0 -0
- {stouputils-1.3.13 → stouputils-1.3.15}/stouputils/data_science/models/all.py +0 -0
- {stouputils-1.3.13 → stouputils-1.3.15}/stouputils/data_science/models/keras/all.py +0 -0
- {stouputils-1.3.13 → stouputils-1.3.15}/stouputils/data_science/models/keras/convnext.py +0 -0
- {stouputils-1.3.13 → stouputils-1.3.15}/stouputils/data_science/models/keras/densenet.py +0 -0
- {stouputils-1.3.13 → stouputils-1.3.15}/stouputils/data_science/models/keras/efficientnet.py +0 -0
- {stouputils-1.3.13 → stouputils-1.3.15}/stouputils/data_science/models/keras/mobilenet.py +0 -0
- {stouputils-1.3.13 → stouputils-1.3.15}/stouputils/data_science/models/keras/resnet.py +0 -0
- {stouputils-1.3.13 → stouputils-1.3.15}/stouputils/data_science/models/keras/squeezenet.py +0 -0
- {stouputils-1.3.13 → stouputils-1.3.15}/stouputils/data_science/models/keras/vgg.py +0 -0
- {stouputils-1.3.13 → stouputils-1.3.15}/stouputils/data_science/models/keras/xception.py +0 -0
- {stouputils-1.3.13 → stouputils-1.3.15}/stouputils/data_science/models/keras_utils/callbacks/__init__.py +0 -0
- {stouputils-1.3.13 → stouputils-1.3.15}/stouputils/data_science/models/keras_utils/callbacks/colored_progress_bar.py +0 -0
- {stouputils-1.3.13 → stouputils-1.3.15}/stouputils/data_science/models/keras_utils/callbacks/learning_rate_finder.py +0 -0
- {stouputils-1.3.13 → stouputils-1.3.15}/stouputils/data_science/models/keras_utils/callbacks/model_checkpoint_v2.py +0 -0
- {stouputils-1.3.13 → stouputils-1.3.15}/stouputils/data_science/models/keras_utils/callbacks/progressive_unfreezing.py +0 -0
- {stouputils-1.3.13 → stouputils-1.3.15}/stouputils/data_science/models/keras_utils/callbacks/warmup_scheduler.py +0 -0
- {stouputils-1.3.13 → stouputils-1.3.15}/stouputils/data_science/models/keras_utils/losses/__init__.py +0 -0
- {stouputils-1.3.13 → stouputils-1.3.15}/stouputils/data_science/models/keras_utils/losses/next_generation_loss.py +0 -0
- {stouputils-1.3.13 → stouputils-1.3.15}/stouputils/data_science/models/keras_utils/visualizations.py +0 -0
- {stouputils-1.3.13 → stouputils-1.3.15}/stouputils/data_science/models/model_interface.py +0 -0
- {stouputils-1.3.13 → stouputils-1.3.15}/stouputils/data_science/models/sandbox.py +0 -0
- {stouputils-1.3.13 → stouputils-1.3.15}/stouputils/data_science/range_tuple.py +0 -0
- {stouputils-1.3.13 → stouputils-1.3.15}/stouputils/data_science/scripts/augment_dataset.py +0 -0
- {stouputils-1.3.13 → stouputils-1.3.15}/stouputils/data_science/scripts/exhaustive_process.py +0 -0
- {stouputils-1.3.13 → stouputils-1.3.15}/stouputils/data_science/scripts/preprocess_dataset.py +0 -0
- {stouputils-1.3.13 → stouputils-1.3.15}/stouputils/data_science/scripts/routine.py +0 -0
- {stouputils-1.3.13 → stouputils-1.3.15}/stouputils/data_science/utils.py +0 -0
- {stouputils-1.3.13 → stouputils-1.3.15}/stouputils/dont_look/zip_file_override.py +0 -0
- {stouputils-1.3.13 → stouputils-1.3.15}/stouputils/image.py +0 -0
- {stouputils-1.3.13 → stouputils-1.3.15}/stouputils/installer/__init__.py +0 -0
- {stouputils-1.3.13 → stouputils-1.3.15}/stouputils/installer/common.py +0 -0
- {stouputils-1.3.13 → stouputils-1.3.15}/stouputils/installer/downloader.py +0 -0
- {stouputils-1.3.13 → stouputils-1.3.15}/stouputils/installer/linux.py +0 -0
- {stouputils-1.3.13 → stouputils-1.3.15}/stouputils/installer/main.py +0 -0
- {stouputils-1.3.13 → stouputils-1.3.15}/stouputils/installer/windows.py +0 -0
- {stouputils-1.3.13 → stouputils-1.3.15}/stouputils/parallel.py +0 -0
- {stouputils-1.3.13 → stouputils-1.3.15}/stouputils/print.py +0 -0
- {stouputils-1.3.13 → stouputils-1.3.15}/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.15
|
|
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.15"
|
|
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"
|
|
@@ -320,7 +320,12 @@ def generate_changelog(
|
|
|
320
320
|
|
|
321
321
|
# Prepend sub-category to description if present
|
|
322
322
|
if sub_category:
|
|
323
|
-
|
|
323
|
+
words: list[str] = [
|
|
324
|
+
word[0].upper() + word[1:] # We don't use title() because we don't want to lowercase any letter
|
|
325
|
+
for word in sub_category.replace('_', ' ').split()
|
|
326
|
+
]
|
|
327
|
+
formatted_sub_category: str = ' '.join(words)
|
|
328
|
+
formatted_desc = f"[{formatted_sub_category}] {desc}"
|
|
324
329
|
else:
|
|
325
330
|
formatted_desc = desc
|
|
326
331
|
changelog += f"- {formatted_desc} ([{sha[:7]}](https://github.com/{owner}/{project_name}/commit/{sha}))\n"
|
|
@@ -720,7 +720,7 @@ class BaseKeras(ModelInterface):
|
|
|
720
720
|
# Process test images
|
|
721
721
|
test_args_list: list[tuple[NDArray[Any], int, tuple[str, ...], str]] = [
|
|
722
722
|
(test_images[i], test_labels[i], test_filepaths[i], "test")
|
|
723
|
-
for i in range(min(
|
|
723
|
+
for i in range(min(100, len(test_images)))
|
|
724
724
|
]
|
|
725
725
|
|
|
726
726
|
# Process train images
|
|
@@ -15,16 +15,17 @@ This module provides decorators for various purposes:
|
|
|
15
15
|
"""
|
|
16
16
|
|
|
17
17
|
# Imports
|
|
18
|
+
import inspect
|
|
19
|
+
import time
|
|
18
20
|
from collections.abc import Callable
|
|
19
21
|
from enum import Enum
|
|
20
22
|
from functools import wraps
|
|
21
23
|
from pickle import dumps as pickle_dumps
|
|
22
24
|
from traceback import format_exc
|
|
23
25
|
from typing import Any, Literal
|
|
24
|
-
import time
|
|
25
26
|
|
|
27
|
+
from .ctx import MeasureTime, Muffle
|
|
26
28
|
from .print import debug, error, warning
|
|
27
|
-
from .ctx import Muffle, MeasureTime
|
|
28
29
|
|
|
29
30
|
|
|
30
31
|
def get_func_name(func: Callable[..., Any]) -> str:
|
|
@@ -118,8 +119,12 @@ def measure_time(
|
|
|
118
119
|
|
|
119
120
|
@wraps(func)
|
|
120
121
|
def wrapper(*args: tuple[Any, ...], **kwargs: dict[str, Any]) -> Any:
|
|
122
|
+
# Check if function is a generator
|
|
121
123
|
with MeasureTime(print_func=print_func, message=new_msg, perf_counter=perf_counter):
|
|
122
|
-
|
|
124
|
+
if inspect.isgeneratorfunction(func):
|
|
125
|
+
yield from func(*args, **kwargs)
|
|
126
|
+
else:
|
|
127
|
+
return func(*args, **kwargs)
|
|
123
128
|
wrapper.__name__ = get_wrapper_name("stouputils.decorators.measure_time", func)
|
|
124
129
|
return wrapper
|
|
125
130
|
return decorator
|
|
@@ -199,9 +199,9 @@ def super_copy(src: str, dst: str, create_dir: bool = True, symlink: bool = True
|
|
|
199
199
|
shutil.rmtree(dst)
|
|
200
200
|
else:
|
|
201
201
|
os.remove(dst)
|
|
202
|
-
return os.symlink(src, dst, target_is_directory=True) or dst
|
|
202
|
+
return os.symlink(src.rstrip('/'), dst.rstrip('/'), target_is_directory=True) or dst
|
|
203
203
|
else:
|
|
204
|
-
return os.symlink(src, dst, target_is_directory=True) or dst
|
|
204
|
+
return os.symlink(src.rstrip('/'), dst.rstrip('/'), target_is_directory=True) or dst
|
|
205
205
|
|
|
206
206
|
# Regular directory copy
|
|
207
207
|
else:
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
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.13 → stouputils-1.3.15}/stouputils/data_science/data_processing/image/__init__.py
RENAMED
|
File without changes
|
|
File without changes
|
{stouputils-1.3.13 → stouputils-1.3.15}/stouputils/data_science/data_processing/image/axis_flip.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{stouputils-1.3.13 → stouputils-1.3.15}/stouputils/data_science/data_processing/image/blur.py
RENAMED
|
File without changes
|
{stouputils-1.3.13 → stouputils-1.3.15}/stouputils/data_science/data_processing/image/brightness.py
RENAMED
|
File without changes
|
{stouputils-1.3.13 → stouputils-1.3.15}/stouputils/data_science/data_processing/image/canny.py
RENAMED
|
File without changes
|
{stouputils-1.3.13 → stouputils-1.3.15}/stouputils/data_science/data_processing/image/clahe.py
RENAMED
|
File without changes
|
{stouputils-1.3.13 → stouputils-1.3.15}/stouputils/data_science/data_processing/image/common.py
RENAMED
|
File without changes
|
{stouputils-1.3.13 → stouputils-1.3.15}/stouputils/data_science/data_processing/image/contrast.py
RENAMED
|
File without changes
|
|
File without changes
|
{stouputils-1.3.13 → stouputils-1.3.15}/stouputils/data_science/data_processing/image/denoise.py
RENAMED
|
File without changes
|
|
File without changes
|
{stouputils-1.3.13 → stouputils-1.3.15}/stouputils/data_science/data_processing/image/invert.py
RENAMED
|
File without changes
|
{stouputils-1.3.13 → stouputils-1.3.15}/stouputils/data_science/data_processing/image/laplacian.py
RENAMED
|
File without changes
|
{stouputils-1.3.13 → stouputils-1.3.15}/stouputils/data_science/data_processing/image/median_blur.py
RENAMED
|
File without changes
|
{stouputils-1.3.13 → stouputils-1.3.15}/stouputils/data_science/data_processing/image/noise.py
RENAMED
|
File without changes
|
{stouputils-1.3.13 → stouputils-1.3.15}/stouputils/data_science/data_processing/image/normalize.py
RENAMED
|
File without changes
|
|
File without changes
|
{stouputils-1.3.13 → stouputils-1.3.15}/stouputils/data_science/data_processing/image/resize.py
RENAMED
|
File without changes
|
{stouputils-1.3.13 → stouputils-1.3.15}/stouputils/data_science/data_processing/image/rotation.py
RENAMED
|
File without changes
|
{stouputils-1.3.13 → stouputils-1.3.15}/stouputils/data_science/data_processing/image/salt_pepper.py
RENAMED
|
File without changes
|
{stouputils-1.3.13 → stouputils-1.3.15}/stouputils/data_science/data_processing/image/sharpening.py
RENAMED
|
File without changes
|
{stouputils-1.3.13 → stouputils-1.3.15}/stouputils/data_science/data_processing/image/shearing.py
RENAMED
|
File without changes
|
{stouputils-1.3.13 → stouputils-1.3.15}/stouputils/data_science/data_processing/image/threshold.py
RENAMED
|
File without changes
|
{stouputils-1.3.13 → stouputils-1.3.15}/stouputils/data_science/data_processing/image/translation.py
RENAMED
|
File without changes
|
{stouputils-1.3.13 → stouputils-1.3.15}/stouputils/data_science/data_processing/image/zoom.py
RENAMED
|
File without changes
|
|
File without changes
|
{stouputils-1.3.13 → stouputils-1.3.15}/stouputils/data_science/data_processing/image_preprocess.py
RENAMED
|
File without changes
|
|
File without changes
|
{stouputils-1.3.13 → stouputils-1.3.15}/stouputils/data_science/data_processing/technique.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{stouputils-1.3.13 → stouputils-1.3.15}/stouputils/data_science/dataset/grouping_strategy.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
|
{stouputils-1.3.13 → stouputils-1.3.15}/stouputils/data_science/models/keras/efficientnet.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
|
{stouputils-1.3.13 → stouputils-1.3.15}/stouputils/data_science/models/keras_utils/visualizations.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{stouputils-1.3.13 → stouputils-1.3.15}/stouputils/data_science/scripts/exhaustive_process.py
RENAMED
|
File without changes
|
{stouputils-1.3.13 → stouputils-1.3.15}/stouputils/data_science/scripts/preprocess_dataset.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
|