stouputils 1.12.0__tar.gz → 1.12.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.
Files changed (141) hide show
  1. {stouputils-1.12.0 → stouputils-1.12.2}/PKG-INFO +164 -163
  2. {stouputils-1.12.0 → stouputils-1.12.2}/pyproject.toml +104 -106
  3. {stouputils-1.12.0 → stouputils-1.12.2}/stouputils/__init__.py +4 -4
  4. {stouputils-1.12.0 → stouputils-1.12.2}/stouputils/__init__.pyi +1 -0
  5. {stouputils-1.12.0 → stouputils-1.12.2}/stouputils/__main__.py +5 -5
  6. {stouputils-1.12.0 → stouputils-1.12.2}/stouputils/continuous_delivery/pypi.py +91 -90
  7. {stouputils-1.12.0 → stouputils-1.12.2}/stouputils/ctx.py +408 -408
  8. {stouputils-1.12.0 → stouputils-1.12.2}/stouputils/data_science/config/set.py +125 -125
  9. {stouputils-1.12.0 → stouputils-1.12.2}/stouputils/data_science/models/keras_utils/callbacks/model_checkpoint_v2.py +31 -31
  10. {stouputils-1.12.0 → stouputils-1.12.2}/stouputils/data_science/utils.py +285 -285
  11. {stouputils-1.12.0 → stouputils-1.12.2}/stouputils/installer/__init__.py +18 -18
  12. {stouputils-1.12.0 → stouputils-1.12.2}/stouputils/installer/linux.py +144 -144
  13. {stouputils-1.12.0 → stouputils-1.12.2}/stouputils/installer/main.py +223 -223
  14. {stouputils-1.12.0 → stouputils-1.12.2}/stouputils/installer/windows.py +136 -136
  15. {stouputils-1.12.0 → stouputils-1.12.2}/stouputils/print.py +0 -58
  16. {stouputils-1.12.0 → stouputils-1.12.2}/stouputils/print.pyi +0 -10
  17. {stouputils-1.12.0 → stouputils-1.12.2}/stouputils/py.typed +1 -1
  18. stouputils-1.12.2/stouputils/version_pkg.py +189 -0
  19. stouputils-1.12.2/stouputils/version_pkg.pyi +15 -0
  20. stouputils-1.12.0/.gitignore +0 -26
  21. stouputils-1.12.0/LICENSE +0 -21
  22. {stouputils-1.12.0 → stouputils-1.12.2}/README.md +0 -0
  23. {stouputils-1.12.0 → stouputils-1.12.2}/stouputils/_deprecated.py +0 -0
  24. {stouputils-1.12.0 → stouputils-1.12.2}/stouputils/_deprecated.pyi +0 -0
  25. {stouputils-1.12.0 → stouputils-1.12.2}/stouputils/all_doctests.py +0 -0
  26. {stouputils-1.12.0 → stouputils-1.12.2}/stouputils/all_doctests.pyi +0 -0
  27. {stouputils-1.12.0 → stouputils-1.12.2}/stouputils/applications/__init__.py +0 -0
  28. {stouputils-1.12.0 → stouputils-1.12.2}/stouputils/applications/__init__.pyi +0 -0
  29. {stouputils-1.12.0 → stouputils-1.12.2}/stouputils/applications/automatic_docs.py +0 -0
  30. {stouputils-1.12.0 → stouputils-1.12.2}/stouputils/applications/automatic_docs.pyi +0 -0
  31. {stouputils-1.12.0 → stouputils-1.12.2}/stouputils/applications/upscaler/__init__.py +0 -0
  32. {stouputils-1.12.0 → stouputils-1.12.2}/stouputils/applications/upscaler/__init__.pyi +0 -0
  33. {stouputils-1.12.0 → stouputils-1.12.2}/stouputils/applications/upscaler/config.py +0 -0
  34. {stouputils-1.12.0 → stouputils-1.12.2}/stouputils/applications/upscaler/config.pyi +0 -0
  35. {stouputils-1.12.0 → stouputils-1.12.2}/stouputils/applications/upscaler/image.py +0 -0
  36. {stouputils-1.12.0 → stouputils-1.12.2}/stouputils/applications/upscaler/image.pyi +0 -0
  37. {stouputils-1.12.0 → stouputils-1.12.2}/stouputils/applications/upscaler/video.py +0 -0
  38. {stouputils-1.12.0 → stouputils-1.12.2}/stouputils/applications/upscaler/video.pyi +0 -0
  39. {stouputils-1.12.0 → stouputils-1.12.2}/stouputils/archive.py +0 -0
  40. {stouputils-1.12.0 → stouputils-1.12.2}/stouputils/archive.pyi +0 -0
  41. {stouputils-1.12.0 → stouputils-1.12.2}/stouputils/backup.py +0 -0
  42. {stouputils-1.12.0 → stouputils-1.12.2}/stouputils/backup.pyi +0 -0
  43. {stouputils-1.12.0 → stouputils-1.12.2}/stouputils/collections.py +0 -0
  44. {stouputils-1.12.0 → stouputils-1.12.2}/stouputils/collections.pyi +0 -0
  45. {stouputils-1.12.0 → stouputils-1.12.2}/stouputils/continuous_delivery/__init__.py +0 -0
  46. {stouputils-1.12.0 → stouputils-1.12.2}/stouputils/continuous_delivery/__init__.pyi +0 -0
  47. {stouputils-1.12.0 → stouputils-1.12.2}/stouputils/continuous_delivery/cd_utils.py +0 -0
  48. {stouputils-1.12.0 → stouputils-1.12.2}/stouputils/continuous_delivery/cd_utils.pyi +0 -0
  49. {stouputils-1.12.0 → stouputils-1.12.2}/stouputils/continuous_delivery/github.py +0 -0
  50. {stouputils-1.12.0 → stouputils-1.12.2}/stouputils/continuous_delivery/github.pyi +0 -0
  51. {stouputils-1.12.0 → stouputils-1.12.2}/stouputils/continuous_delivery/pypi.pyi +0 -0
  52. {stouputils-1.12.0 → stouputils-1.12.2}/stouputils/continuous_delivery/pyproject.py +0 -0
  53. {stouputils-1.12.0 → stouputils-1.12.2}/stouputils/continuous_delivery/pyproject.pyi +0 -0
  54. {stouputils-1.12.0 → stouputils-1.12.2}/stouputils/continuous_delivery/stubs.py +0 -0
  55. {stouputils-1.12.0 → stouputils-1.12.2}/stouputils/continuous_delivery/stubs.pyi +0 -0
  56. {stouputils-1.12.0 → stouputils-1.12.2}/stouputils/ctx.pyi +0 -0
  57. {stouputils-1.12.0 → stouputils-1.12.2}/stouputils/data_science/config/get.py +0 -0
  58. {stouputils-1.12.0 → stouputils-1.12.2}/stouputils/data_science/data_processing/image/__init__.py +0 -0
  59. {stouputils-1.12.0 → stouputils-1.12.2}/stouputils/data_science/data_processing/image/auto_contrast.py +0 -0
  60. {stouputils-1.12.0 → stouputils-1.12.2}/stouputils/data_science/data_processing/image/axis_flip.py +0 -0
  61. {stouputils-1.12.0 → stouputils-1.12.2}/stouputils/data_science/data_processing/image/bias_field_correction.py +0 -0
  62. {stouputils-1.12.0 → stouputils-1.12.2}/stouputils/data_science/data_processing/image/binary_threshold.py +0 -0
  63. {stouputils-1.12.0 → stouputils-1.12.2}/stouputils/data_science/data_processing/image/blur.py +0 -0
  64. {stouputils-1.12.0 → stouputils-1.12.2}/stouputils/data_science/data_processing/image/brightness.py +0 -0
  65. {stouputils-1.12.0 → stouputils-1.12.2}/stouputils/data_science/data_processing/image/canny.py +0 -0
  66. {stouputils-1.12.0 → stouputils-1.12.2}/stouputils/data_science/data_processing/image/clahe.py +0 -0
  67. {stouputils-1.12.0 → stouputils-1.12.2}/stouputils/data_science/data_processing/image/common.py +0 -0
  68. {stouputils-1.12.0 → stouputils-1.12.2}/stouputils/data_science/data_processing/image/contrast.py +0 -0
  69. {stouputils-1.12.0 → stouputils-1.12.2}/stouputils/data_science/data_processing/image/curvature_flow_filter.py +0 -0
  70. {stouputils-1.12.0 → stouputils-1.12.2}/stouputils/data_science/data_processing/image/denoise.py +0 -0
  71. {stouputils-1.12.0 → stouputils-1.12.2}/stouputils/data_science/data_processing/image/histogram_equalization.py +0 -0
  72. {stouputils-1.12.0 → stouputils-1.12.2}/stouputils/data_science/data_processing/image/invert.py +0 -0
  73. {stouputils-1.12.0 → stouputils-1.12.2}/stouputils/data_science/data_processing/image/laplacian.py +0 -0
  74. {stouputils-1.12.0 → stouputils-1.12.2}/stouputils/data_science/data_processing/image/median_blur.py +0 -0
  75. {stouputils-1.12.0 → stouputils-1.12.2}/stouputils/data_science/data_processing/image/noise.py +0 -0
  76. {stouputils-1.12.0 → stouputils-1.12.2}/stouputils/data_science/data_processing/image/normalize.py +0 -0
  77. {stouputils-1.12.0 → stouputils-1.12.2}/stouputils/data_science/data_processing/image/random_erase.py +0 -0
  78. {stouputils-1.12.0 → stouputils-1.12.2}/stouputils/data_science/data_processing/image/resize.py +0 -0
  79. {stouputils-1.12.0 → stouputils-1.12.2}/stouputils/data_science/data_processing/image/rotation.py +0 -0
  80. {stouputils-1.12.0 → stouputils-1.12.2}/stouputils/data_science/data_processing/image/salt_pepper.py +0 -0
  81. {stouputils-1.12.0 → stouputils-1.12.2}/stouputils/data_science/data_processing/image/sharpening.py +0 -0
  82. {stouputils-1.12.0 → stouputils-1.12.2}/stouputils/data_science/data_processing/image/shearing.py +0 -0
  83. {stouputils-1.12.0 → stouputils-1.12.2}/stouputils/data_science/data_processing/image/threshold.py +0 -0
  84. {stouputils-1.12.0 → stouputils-1.12.2}/stouputils/data_science/data_processing/image/translation.py +0 -0
  85. {stouputils-1.12.0 → stouputils-1.12.2}/stouputils/data_science/data_processing/image/zoom.py +0 -0
  86. {stouputils-1.12.0 → stouputils-1.12.2}/stouputils/data_science/data_processing/image_augmentation.py +0 -0
  87. {stouputils-1.12.0 → stouputils-1.12.2}/stouputils/data_science/data_processing/image_preprocess.py +0 -0
  88. {stouputils-1.12.0 → stouputils-1.12.2}/stouputils/data_science/data_processing/prosthesis_detection.py +0 -0
  89. {stouputils-1.12.0 → stouputils-1.12.2}/stouputils/data_science/data_processing/technique.py +0 -0
  90. {stouputils-1.12.0 → stouputils-1.12.2}/stouputils/data_science/dataset/__init__.py +0 -0
  91. {stouputils-1.12.0 → stouputils-1.12.2}/stouputils/data_science/dataset/dataset.py +0 -0
  92. {stouputils-1.12.0 → stouputils-1.12.2}/stouputils/data_science/dataset/dataset_loader.py +0 -0
  93. {stouputils-1.12.0 → stouputils-1.12.2}/stouputils/data_science/dataset/grouping_strategy.py +0 -0
  94. {stouputils-1.12.0 → stouputils-1.12.2}/stouputils/data_science/dataset/image_loader.py +0 -0
  95. {stouputils-1.12.0 → stouputils-1.12.2}/stouputils/data_science/dataset/xy_tuple.py +0 -0
  96. {stouputils-1.12.0 → stouputils-1.12.2}/stouputils/data_science/metric_dictionnary.py +0 -0
  97. {stouputils-1.12.0 → stouputils-1.12.2}/stouputils/data_science/metric_utils.py +0 -0
  98. {stouputils-1.12.0 → stouputils-1.12.2}/stouputils/data_science/mlflow_utils.py +0 -0
  99. {stouputils-1.12.0 → stouputils-1.12.2}/stouputils/data_science/models/abstract_model.py +0 -0
  100. {stouputils-1.12.0 → stouputils-1.12.2}/stouputils/data_science/models/all.py +0 -0
  101. {stouputils-1.12.0 → stouputils-1.12.2}/stouputils/data_science/models/base_keras.py +0 -0
  102. {stouputils-1.12.0 → stouputils-1.12.2}/stouputils/data_science/models/keras/all.py +0 -0
  103. {stouputils-1.12.0 → stouputils-1.12.2}/stouputils/data_science/models/keras/convnext.py +0 -0
  104. {stouputils-1.12.0 → stouputils-1.12.2}/stouputils/data_science/models/keras/densenet.py +0 -0
  105. {stouputils-1.12.0 → stouputils-1.12.2}/stouputils/data_science/models/keras/efficientnet.py +0 -0
  106. {stouputils-1.12.0 → stouputils-1.12.2}/stouputils/data_science/models/keras/mobilenet.py +0 -0
  107. {stouputils-1.12.0 → stouputils-1.12.2}/stouputils/data_science/models/keras/resnet.py +0 -0
  108. {stouputils-1.12.0 → stouputils-1.12.2}/stouputils/data_science/models/keras/squeezenet.py +0 -0
  109. {stouputils-1.12.0 → stouputils-1.12.2}/stouputils/data_science/models/keras/vgg.py +0 -0
  110. {stouputils-1.12.0 → stouputils-1.12.2}/stouputils/data_science/models/keras/xception.py +0 -0
  111. {stouputils-1.12.0 → stouputils-1.12.2}/stouputils/data_science/models/keras_utils/callbacks/__init__.py +0 -0
  112. {stouputils-1.12.0 → stouputils-1.12.2}/stouputils/data_science/models/keras_utils/callbacks/colored_progress_bar.py +0 -0
  113. {stouputils-1.12.0 → stouputils-1.12.2}/stouputils/data_science/models/keras_utils/callbacks/learning_rate_finder.py +0 -0
  114. {stouputils-1.12.0 → stouputils-1.12.2}/stouputils/data_science/models/keras_utils/callbacks/progressive_unfreezing.py +0 -0
  115. {stouputils-1.12.0 → stouputils-1.12.2}/stouputils/data_science/models/keras_utils/callbacks/warmup_scheduler.py +0 -0
  116. {stouputils-1.12.0 → stouputils-1.12.2}/stouputils/data_science/models/keras_utils/losses/__init__.py +0 -0
  117. {stouputils-1.12.0 → stouputils-1.12.2}/stouputils/data_science/models/keras_utils/losses/next_generation_loss.py +0 -0
  118. {stouputils-1.12.0 → stouputils-1.12.2}/stouputils/data_science/models/keras_utils/visualizations.py +0 -0
  119. {stouputils-1.12.0 → stouputils-1.12.2}/stouputils/data_science/models/model_interface.py +0 -0
  120. {stouputils-1.12.0 → stouputils-1.12.2}/stouputils/data_science/models/sandbox.py +0 -0
  121. {stouputils-1.12.0 → stouputils-1.12.2}/stouputils/data_science/range_tuple.py +0 -0
  122. {stouputils-1.12.0 → stouputils-1.12.2}/stouputils/data_science/scripts/augment_dataset.py +0 -0
  123. {stouputils-1.12.0 → stouputils-1.12.2}/stouputils/data_science/scripts/exhaustive_process.py +0 -0
  124. {stouputils-1.12.0 → stouputils-1.12.2}/stouputils/data_science/scripts/preprocess_dataset.py +0 -0
  125. {stouputils-1.12.0 → stouputils-1.12.2}/stouputils/data_science/scripts/routine.py +0 -0
  126. {stouputils-1.12.0 → stouputils-1.12.2}/stouputils/decorators.py +0 -0
  127. {stouputils-1.12.0 → stouputils-1.12.2}/stouputils/decorators.pyi +0 -0
  128. {stouputils-1.12.0 → stouputils-1.12.2}/stouputils/image.py +0 -0
  129. {stouputils-1.12.0 → stouputils-1.12.2}/stouputils/image.pyi +0 -0
  130. {stouputils-1.12.0 → stouputils-1.12.2}/stouputils/installer/__init__.pyi +0 -0
  131. {stouputils-1.12.0 → stouputils-1.12.2}/stouputils/installer/common.py +0 -0
  132. {stouputils-1.12.0 → stouputils-1.12.2}/stouputils/installer/common.pyi +0 -0
  133. {stouputils-1.12.0 → stouputils-1.12.2}/stouputils/installer/downloader.py +0 -0
  134. {stouputils-1.12.0 → stouputils-1.12.2}/stouputils/installer/downloader.pyi +0 -0
  135. {stouputils-1.12.0 → stouputils-1.12.2}/stouputils/installer/linux.pyi +0 -0
  136. {stouputils-1.12.0 → stouputils-1.12.2}/stouputils/installer/main.pyi +0 -0
  137. {stouputils-1.12.0 → stouputils-1.12.2}/stouputils/installer/windows.pyi +0 -0
  138. {stouputils-1.12.0 → stouputils-1.12.2}/stouputils/io.py +0 -0
  139. {stouputils-1.12.0 → stouputils-1.12.2}/stouputils/io.pyi +0 -0
  140. {stouputils-1.12.0 → stouputils-1.12.2}/stouputils/parallel.py +0 -0
  141. {stouputils-1.12.0 → stouputils-1.12.2}/stouputils/parallel.pyi +0 -0
@@ -1,177 +1,178 @@
1
- Metadata-Version: 2.4
1
+ Metadata-Version: 2.3
2
2
  Name: stouputils
3
- Version: 1.12.0
3
+ Version: 1.12.2
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
- Project-URL: Homepage, https://github.com/Stoupy51/stouputils
6
- Project-URL: Issues, https://github.com/Stoupy51/stouputils/issues
5
+ Keywords: utilities,tools,helpers,development,python
6
+ Author: Stoupy51
7
7
  Author-email: Stoupy51 <stoupy51@gmail.com>
8
- License-File: LICENSE
9
- Classifier: License :: OSI Approved :: MIT License
10
- Classifier: Operating System :: OS Independent
11
8
  Classifier: Programming Language :: Python :: 3
12
9
  Classifier: Programming Language :: Python :: 3.12
13
10
  Classifier: Programming Language :: Python :: 3.13
14
11
  Classifier: Programming Language :: Python :: 3.14
15
- Requires-Python: >=3.12
16
- Requires-Dist: argcomplete>=3.0.0
12
+ Classifier: License :: OSI Approved :: MIT License
13
+ Classifier: Operating System :: OS Independent
14
+ Requires-Dist: tqdm>=4.0.0
15
+ Requires-Dist: requests>=2.20.0
17
16
  Requires-Dist: msgspec[toml,yaml]>=0.20.0
18
- Requires-Dist: numpy>=2.3.0
19
17
  Requires-Dist: pillow>=10.0.0
20
18
  Requires-Dist: python-box>=7.0.0
21
- Requires-Dist: requests>=2.20.0
22
- Requires-Dist: tqdm>=4.0.0
19
+ Requires-Dist: argcomplete>=3.0.0
20
+ Requires-Dist: numpy
21
+ Requires-Dist: opencv-python ; extra == 'data-science'
22
+ Requires-Dist: scikit-image ; extra == 'data-science'
23
+ Requires-Dist: simpleitk ; extra == 'data-science'
24
+ Requires-Dist: mlflow ; extra == 'data-science'
25
+ Requires-Dist: tensorflow ; extra == 'data-science'
26
+ Requires-Dist: scikit-learn ; extra == 'data-science'
27
+ Requires-Dist: pywavelets ; extra == 'data-science'
28
+ Requires-Dist: m2r2 ; extra == 'docs'
29
+ Requires-Dist: myst-parser ; extra == 'docs'
30
+ Requires-Dist: sphinx-copybutton ; extra == 'docs'
31
+ Requires-Dist: sphinx-design ; extra == 'docs'
32
+ Requires-Dist: sphinx-treeview ; extra == 'docs'
33
+ Requires-Dist: sphinx-breeze-theme ; extra == 'docs'
34
+ Requires-Dist: pydata-sphinx-theme ; extra == 'docs'
35
+ Requires-Python: >=3.12
36
+ Project-URL: Homepage, https://stoupy51.github.io/stouputils
37
+ Project-URL: Issues, https://github.com/Stoupy51/stouputils/issues
38
+ Project-URL: Source, https://github.com/Stoupy51/stouputils
23
39
  Provides-Extra: data-science
24
- Requires-Dist: mlflow; extra == 'data-science'
25
- Requires-Dist: opencv-python; extra == 'data-science'
26
- Requires-Dist: pywavelets; extra == 'data-science'
27
- Requires-Dist: scikit-image; extra == 'data-science'
28
- Requires-Dist: scikit-learn; extra == 'data-science'
29
- Requires-Dist: simpleitk; extra == 'data-science'
30
- Requires-Dist: tensorflow; extra == 'data-science'
31
40
  Provides-Extra: docs
32
- Requires-Dist: m2r2; extra == 'docs'
33
- Requires-Dist: mypy; extra == 'docs'
34
- Requires-Dist: myst-parser; extra == 'docs'
35
- Requires-Dist: pydata-sphinx-theme; extra == 'docs'
36
- Requires-Dist: sphinx-breeze-theme; extra == 'docs'
37
- Requires-Dist: sphinx-copybutton; extra == 'docs'
38
- Requires-Dist: sphinx-design; extra == 'docs'
39
- Requires-Dist: sphinx-treeview; extra == 'docs'
40
41
  Description-Content-Type: text/markdown
41
42
 
42
-
43
- ## 🛠️ Project Badges
44
- [![GitHub](https://img.shields.io/github/v/release/Stoupy51/stouputils?logo=github&label=GitHub)](https://github.com/Stoupy51/stouputils/releases/latest)
45
- [![PyPI - Downloads](https://img.shields.io/pypi/dm/stouputils?logo=python&label=PyPI%20downloads)](https://pypi.org/project/stouputils/)
46
- [![Documentation](https://img.shields.io/github/v/release/Stoupy51/stouputils?logo=sphinx&label=Documentation&color=purple)](https://stoupy51.github.io/stouputils/latest/)
47
-
48
- ## 📚 Project Overview
49
- Stouputils is a collection of utility modules designed to simplify and enhance the development process.<br>
50
- It includes a range of tools for tasks such as execution of doctests, display utilities, decorators, as well as context managers.<br>
51
- Start now by installing the package: `pip install stouputils`.<br>
52
-
53
- <a href="https://colab.research.google.com/drive/1mJ-KL-zXzIk1oKDxO6FC1SFfm-BVKG-P?usp=sharing" target="_blank" rel="noopener noreferrer" style="text-decoration: none;"><div class="admonition">
54
- 📖 <b>Want to see examples?</b> Check out our <u>Google Colab notebook</u> with practical usage examples!
55
- </div></a>
56
-
57
- ## 🚀 Project File Tree
58
- <html>
59
- <details style="display: none;">
60
- <summary></summary>
61
- <style>
62
- .code-tree {
63
- border-radius: 6px;
64
- padding: 16px;
65
- font-family: monospace;
66
- line-height: 1.45;
67
- overflow: auto;
68
- white-space: pre;
69
- background-color:rgb(43, 43, 43);
70
- color: #d4d4d4;
71
- }
72
- .code-tree a {
73
- color: #569cd6;
74
- text-decoration: none;
75
- }
76
- .code-tree a:hover {
77
- text-decoration: underline;
78
- }
79
- .code-tree .comment {
80
- color:rgb(231, 213, 48);
81
- }
82
- .code-tree .paren {
83
- color: orange;
84
- }
85
- </style>
86
- </details>
87
-
88
- <pre class="code-tree">stouputils/
89
- ├── <a href="https://stoupy51.github.io/stouputils/latest/modules/stouputils.print.html">print.py</a> <span class="comment"># 🖨️ Utility functions for printing <span class="paren">(info, debug, warning, error, whatisit, breakpoint, colored_for_loop, ...)</span></span>
90
- ├── <a href="https://stoupy51.github.io/stouputils/latest/modules/stouputils.decorators.html">decorators.py</a> <span class="comment"># 🎯 Decorators <span class="paren">(measure_time, handle_error, timeout, retry, simple_cache, abstract, deprecated, silent)</span></span>
91
- ├── <a href="https://stoupy51.github.io/stouputils/latest/modules/stouputils.ctx.html">ctx.py</a> <span class="comment"># 🔇 Context managers <span class="paren">(LogToFile, MeasureTime, Muffle, DoNothing, SetMPStartMethod)</span></span>
92
- ├── <a href="https://stoupy51.github.io/stouputils/latest/modules/stouputils.io.html">io.py</a> <span class="comment"># 💾 Utilities for file management <span class="paren">(json_dump, json_load, csv_dump, csv_load, read_file, super_copy, super_open, clean_path, ...)</span></span>
93
- ├── <a href="https://stoupy51.github.io/stouputils/latest/modules/stouputils.parallel.html">parallel.py</a> <span class="comment"># 🔀 Utility functions for parallel processing <span class="paren">(multiprocessing, multithreading, run_in_subprocess)</span></span>
94
- ├── <a href="https://stoupy51.github.io/stouputils/latest/modules/stouputils.image.html">image.py</a> <span class="comment"># 🖼️ Little utilities for image processing <span class="paren">(image_resize, auto_crop, numpy_to_gif, numpy_to_obj)</span></span>
95
- ├── <a href="https://stoupy51.github.io/stouputils/latest/modules/stouputils.collections.html">collections.py</a> <span class="comment"># 🧰 Utilities for collection manipulation <span class="paren">(unique_list, sort_dict_keys, upsert_in_dataframe, array_to_disk)</span></span>
96
- ├── <a href="https://stoupy51.github.io/stouputils/latest/modules/stouputils.all_doctests.html">all_doctests.py</a> <span class="comment"># ✅ Run all doctests for all modules in a given directory <span class="paren">(launch_tests, test_module_with_progress)</span></span>
97
- ├── <a href="https://stoupy51.github.io/stouputils/latest/modules/stouputils.backup.html">backup.py</a> <span class="comment"># 💾 Utilities for backup management <span class="paren">(delta backup, consolidate)</span></span>
98
- ├── <a href="https://stoupy51.github.io/stouputils/latest/modules/stouputils.archive.html">archive.py</a> <span class="comment"># 📦 Functions for creating and managing archives</span>
99
-
100
- ├── <a href="https://stoupy51.github.io/stouputils/latest/modules/stouputils.applications.html">applications/</a>
101
- │ ├── <a href="https://stoupy51.github.io/stouputils/latest/modules/stouputils.applications.automatic_docs.html">automatic_docs.py</a> <span class="comment"># 📚 Documentation generation utilities <span class="paren">(used to create this documentation)</span></span>
102
- │ ├── <a href="https://stoupy51.github.io/stouputils/latest/modules/stouputils.applications.upscaler.html">upscaler/</a> <span class="comment"># 🔎 Image & Video upscaler <span class="paren">(configurable)</span></span>
103
- │ └── ...
104
-
105
- ├── <a href="https://stoupy51.github.io/stouputils/latest/modules/stouputils.continuous_delivery.html">continuous_delivery/</a>
106
- │ ├── <a href="https://stoupy51.github.io/stouputils/latest/modules/stouputils.continuous_delivery.cd_utils.html">cd_utils.py</a> <span class="comment"># 🔧 Utilities for continuous delivery</span>
107
- │ ├── <a href="https://stoupy51.github.io/stouputils/latest/modules/stouputils.continuous_delivery.github.html">github.py</a> <span class="comment"># 📦 Utilities for continuous delivery on GitHub <span class="paren">(upload_to_github)</span></span>
108
- │ ├── <a href="https://stoupy51.github.io/stouputils/latest/modules/stouputils.continuous_delivery.pypi.html">pypi.py</a> <span class="comment"># 📦 Utilities for PyPI <span class="paren">(pypi_full_routine)</span></span>
109
- │ ├── <a href="https://stoupy51.github.io/stouputils/latest/modules/stouputils.continuous_delivery.pyproject.html">pyproject.py</a> <span class="comment"># 📝 Utilities for reading, writing and managing pyproject.toml files</span>
110
- │ ├── <a href="https://stoupy51.github.io/stouputils/latest/modules/stouputils.continuous_delivery.stubs.html">stubs.py</a> <span class="comment"># 📝 Utilities for generating stub files using stubgen</span>
111
- │ └── ...
112
-
113
- ├── <a href="https://stoupy51.github.io/stouputils/latest/modules/stouputils.data_science.html">data_science/</a>
114
- │ ├── <a href="https://stoupy51.github.io/stouputils/latest/modules/stouputils.data_science.config.html">config/</a> <span class="comment"># ⚙️ Configuration utilities for data science</span>
115
- │ ├── <a href="https://stoupy51.github.io/stouputils/latest/modules/stouputils.data_science.dataset.html">dataset/</a> <span class="comment"># 📊 Dataset handling <span class="paren">(dataset, dataset_loader, grouping_strategy)</span></span>
116
- │ ├── <a href="https://stoupy51.github.io/stouputils/latest/modules/stouputils.data_science.data_processing.html">data_processing/</a> <span class="comment"># 🔄 Data processing utilities <span class="paren">(image augmentation, preprocessing)</span></span>
117
- │ │ ├── <a href="https://stoupy51.github.io/stouputils/latest/modules/stouputils.data_science.data_processing.image.html">image/</a> <span class="comment"># 🖼️ Image processing techniques</span>
118
- │ │ └── ...
119
- │ ├── <a href="https://stoupy51.github.io/stouputils/latest/modules/stouputils.data_science.models.html">models/</a> <span class="comment"># 🧠 ML/DL model interfaces and implementations</span>
120
- │ │ ├── <a href="https://stoupy51.github.io/stouputils/latest/modules/stouputils.data_science.models.keras.html">keras/</a> <span class="comment"># 🤖 Keras model implementations</span>
121
- │ │ ├── <a href="https://stoupy51.github.io/stouputils/latest/modules/stouputils.data_science.models.keras_utils.html">keras_utils/</a> <span class="comment"># 🛠️ Keras utilities <span class="paren">(callbacks, losses, visualizations)</span></span>
122
- │ │ └── ...
123
- │ ├── <a href="https://stoupy51.github.io/stouputils/latest/modules/stouputils.data_science.scripts.html">scripts/</a> <span class="comment"># 📜 Data science scripts <span class="paren">(augment, preprocess, routine)</span></span>
124
- │ ├── <a href="https://stoupy51.github.io/stouputils/latest/modules/stouputils.data_science.metric_utils.html">metric_utils.py</a> <span class="comment"># 📏 Static methods for calculating various ML metrics</span>
125
- │ ├── <a href="https://stoupy51.github.io/stouputils/latest/modules/stouputils.data_science.mlflow_utils.html">mlflow_utils.py</a> <span class="comment"># 📊 Utility functions for working with MLflow</span>
126
- │ └── ...
127
-
128
- ├── <a href="https://stoupy51.github.io/stouputils/latest/modules/stouputils.installer.html">installer/</a>
129
- │ ├── <a href="https://stoupy51.github.io/stouputils/latest/modules/stouputils.installer.common.html">common.py</a> <span class="comment"># 🔧 Common functions used by the Linux and Windows installers modules</span>
130
- │ ├── <a href="https://stoupy51.github.io/stouputils/latest/modules/stouputils.installer.downloader.html">downloader.py</a> <span class="comment"># ⬇️ Functions for downloading and installing programs from URLs</span>
131
- │ ├── <a href="https://stoupy51.github.io/stouputils/latest/modules/stouputils.installer.linux.html">linux.py</a> <span class="comment"># 🐧 Linux/macOS specific implementations for installation</span>
132
- │ ├── <a href="https://stoupy51.github.io/stouputils/latest/modules/stouputils.installer.main.html">main.py</a> <span class="comment"># 🚀 Core installation functions for installing programs from zip files or URLs</span>
133
- │ ├── <a href="https://stoupy51.github.io/stouputils/latest/modules/stouputils.installer.windows.html">windows.py</a> <span class="comment"># 💻 Windows specific implementations for installation</span>
134
- │ └── ...
135
- └── ...
136
- </pre>
137
- </html>
138
-
139
- ## 🔧 Installation
140
-
141
- ```bash
142
- pip install stouputils
143
- ```
144
-
145
- ### ✨ Enable Tab Completion on Linux (Optional)
146
-
147
- For a better CLI experience, enable bash tab completion:
148
-
149
- ```bash
150
- # Option 1: Using argcomplete's global activation
151
- activate-global-python-argcomplete --user
152
-
153
- # Option 2: Manual setup for bash
154
- register-python-argcomplete stouputils >> ~/.bashrc
155
- source ~/.bashrc
156
- ```
157
-
158
- After enabling completion, you can use `<TAB>` to autocomplete commands:
159
- ```bash
160
- stouputils <TAB> # Shows: --version, -v, all_doctests, backup
161
- stouputils all_<TAB> # Completes to: all_doctests
162
- ```
163
-
164
- **Note:** Tab completion works best in bash, zsh, Git Bash, or WSL on Windows.
165
-
166
- ## ⭐ Star History
167
-
168
- <html>
169
- <a href="https://star-history.com/#Stoupy51/stouputils&Date">
170
- <picture>
171
- <source media="(prefers-color-scheme: dark)" srcset="https://api.star-history.com/svg?repos=Stoupy51/stouputils&type=Date&theme=dark" />
172
- <source media="(prefers-color-scheme: light)" srcset="https://api.star-history.com/svg?repos=Stoupy51/stouputils&type=Date" />
173
- <img alt="Star History Chart" src="https://api.star-history.com/svg?repos=Stoupy51/stouputils&type=Date" />
174
- </picture>
175
- </a>
176
- </html>
177
-
43
+
44
+ ## 🛠️ Project Badges
45
+ [![GitHub](https://img.shields.io/github/v/release/Stoupy51/stouputils?logo=github&label=GitHub)](https://github.com/Stoupy51/stouputils/releases/latest)
46
+ [![PyPI - Downloads](https://img.shields.io/pypi/dm/stouputils?logo=python&label=PyPI%20downloads)](https://pypi.org/project/stouputils/)
47
+ [![Documentation](https://img.shields.io/github/v/release/Stoupy51/stouputils?logo=sphinx&label=Documentation&color=purple)](https://stoupy51.github.io/stouputils/latest/)
48
+
49
+ ## 📚 Project Overview
50
+ Stouputils is a collection of utility modules designed to simplify and enhance the development process.<br>
51
+ It includes a range of tools for tasks such as execution of doctests, display utilities, decorators, as well as context managers.<br>
52
+ Start now by installing the package: `pip install stouputils`.<br>
53
+
54
+ <a href="https://colab.research.google.com/drive/1mJ-KL-zXzIk1oKDxO6FC1SFfm-BVKG-P?usp=sharing" target="_blank" rel="noopener noreferrer" style="text-decoration: none;"><div class="admonition">
55
+ 📖 <b>Want to see examples?</b> Check out our <u>Google Colab notebook</u> with practical usage examples!
56
+ </div></a>
57
+
58
+ ## 🚀 Project File Tree
59
+ <html>
60
+ <details style="display: none;">
61
+ <summary></summary>
62
+ <style>
63
+ .code-tree {
64
+ border-radius: 6px;
65
+ padding: 16px;
66
+ font-family: monospace;
67
+ line-height: 1.45;
68
+ overflow: auto;
69
+ white-space: pre;
70
+ background-color:rgb(43, 43, 43);
71
+ color: #d4d4d4;
72
+ }
73
+ .code-tree a {
74
+ color: #569cd6;
75
+ text-decoration: none;
76
+ }
77
+ .code-tree a:hover {
78
+ text-decoration: underline;
79
+ }
80
+ .code-tree .comment {
81
+ color:rgb(231, 213, 48);
82
+ }
83
+ .code-tree .paren {
84
+ color: orange;
85
+ }
86
+ </style>
87
+ </details>
88
+
89
+ <pre class="code-tree">stouputils/
90
+ ├── <a href="https://stoupy51.github.io/stouputils/latest/modules/stouputils.print.html">print.py</a> <span class="comment"># 🖨️ Utility functions for printing <span class="paren">(info, debug, warning, error, whatisit, breakpoint, colored_for_loop, ...)</span></span>
91
+ ├── <a href="https://stoupy51.github.io/stouputils/latest/modules/stouputils.decorators.html">decorators.py</a> <span class="comment"># 🎯 Decorators <span class="paren">(measure_time, handle_error, timeout, retry, simple_cache, abstract, deprecated, silent)</span></span>
92
+ ├── <a href="https://stoupy51.github.io/stouputils/latest/modules/stouputils.ctx.html">ctx.py</a> <span class="comment"># 🔇 Context managers <span class="paren">(LogToFile, MeasureTime, Muffle, DoNothing, SetMPStartMethod)</span></span>
93
+ ├── <a href="https://stoupy51.github.io/stouputils/latest/modules/stouputils.io.html">io.py</a> <span class="comment"># 💾 Utilities for file management <span class="paren">(json_dump, json_load, csv_dump, csv_load, read_file, super_copy, super_open, clean_path, ...)</span></span>
94
+ ├── <a href="https://stoupy51.github.io/stouputils/latest/modules/stouputils.parallel.html">parallel.py</a> <span class="comment"># 🔀 Utility functions for parallel processing <span class="paren">(multiprocessing, multithreading, run_in_subprocess)</span></span>
95
+ ├── <a href="https://stoupy51.github.io/stouputils/latest/modules/stouputils.image.html">image.py</a> <span class="comment"># 🖼️ Little utilities for image processing <span class="paren">(image_resize, auto_crop, numpy_to_gif, numpy_to_obj)</span></span>
96
+ ├── <a href="https://stoupy51.github.io/stouputils/latest/modules/stouputils.collections.html">collections.py</a> <span class="comment"># 🧰 Utilities for collection manipulation <span class="paren">(unique_list, sort_dict_keys, upsert_in_dataframe, array_to_disk)</span></span>
97
+ ├── <a href="https://stoupy51.github.io/stouputils/latest/modules/stouputils.all_doctests.html">all_doctests.py</a> <span class="comment"># ✅ Run all doctests for all modules in a given directory <span class="paren">(launch_tests, test_module_with_progress)</span></span>
98
+ ├── <a href="https://stoupy51.github.io/stouputils/latest/modules/stouputils.backup.html">backup.py</a> <span class="comment"># 💾 Utilities for backup management <span class="paren">(delta backup, consolidate)</span></span>
99
+ ├── <a href="https://stoupy51.github.io/stouputils/latest/modules/stouputils.archive.html">archive.py</a> <span class="comment"># 📦 Functions for creating and managing archives</span>
100
+
101
+ ├── <a href="https://stoupy51.github.io/stouputils/latest/modules/stouputils.applications.html">applications/</a>
102
+ │ ├── <a href="https://stoupy51.github.io/stouputils/latest/modules/stouputils.applications.automatic_docs.html">automatic_docs.py</a> <span class="comment"># 📚 Documentation generation utilities <span class="paren">(used to create this documentation)</span></span>
103
+ │ ├── <a href="https://stoupy51.github.io/stouputils/latest/modules/stouputils.applications.upscaler.html">upscaler/</a> <span class="comment"># 🔎 Image & Video upscaler <span class="paren">(configurable)</span></span>
104
+ │ └── ...
105
+
106
+ ├── <a href="https://stoupy51.github.io/stouputils/latest/modules/stouputils.continuous_delivery.html">continuous_delivery/</a>
107
+ │ ├── <a href="https://stoupy51.github.io/stouputils/latest/modules/stouputils.continuous_delivery.cd_utils.html">cd_utils.py</a> <span class="comment"># 🔧 Utilities for continuous delivery</span>
108
+ │ ├── <a href="https://stoupy51.github.io/stouputils/latest/modules/stouputils.continuous_delivery.github.html">github.py</a> <span class="comment"># 📦 Utilities for continuous delivery on GitHub <span class="paren">(upload_to_github)</span></span>
109
+ │ ├── <a href="https://stoupy51.github.io/stouputils/latest/modules/stouputils.continuous_delivery.pypi.html">pypi.py</a> <span class="comment"># 📦 Utilities for PyPI <span class="paren">(pypi_full_routine)</span></span>
110
+ │ ├── <a href="https://stoupy51.github.io/stouputils/latest/modules/stouputils.continuous_delivery.pyproject.html">pyproject.py</a> <span class="comment"># 📝 Utilities for reading, writing and managing pyproject.toml files</span>
111
+ │ ├── <a href="https://stoupy51.github.io/stouputils/latest/modules/stouputils.continuous_delivery.stubs.html">stubs.py</a> <span class="comment"># 📝 Utilities for generating stub files using stubgen</span>
112
+ │ └── ...
113
+
114
+ ├── <a href="https://stoupy51.github.io/stouputils/latest/modules/stouputils.data_science.html">data_science/</a>
115
+ │ ├── <a href="https://stoupy51.github.io/stouputils/latest/modules/stouputils.data_science.config.html">config/</a> <span class="comment"># ⚙️ Configuration utilities for data science</span>
116
+ │ ├── <a href="https://stoupy51.github.io/stouputils/latest/modules/stouputils.data_science.dataset.html">dataset/</a> <span class="comment"># 📊 Dataset handling <span class="paren">(dataset, dataset_loader, grouping_strategy)</span></span>
117
+ │ ├── <a href="https://stoupy51.github.io/stouputils/latest/modules/stouputils.data_science.data_processing.html">data_processing/</a> <span class="comment"># 🔄 Data processing utilities <span class="paren">(image augmentation, preprocessing)</span></span>
118
+ │ │ ├── <a href="https://stoupy51.github.io/stouputils/latest/modules/stouputils.data_science.data_processing.image.html">image/</a> <span class="comment"># 🖼️ Image processing techniques</span>
119
+ │ │ └── ...
120
+ │ ├── <a href="https://stoupy51.github.io/stouputils/latest/modules/stouputils.data_science.models.html">models/</a> <span class="comment"># 🧠 ML/DL model interfaces and implementations</span>
121
+ │ │ ├── <a href="https://stoupy51.github.io/stouputils/latest/modules/stouputils.data_science.models.keras.html">keras/</a> <span class="comment"># 🤖 Keras model implementations</span>
122
+ │ │ ├── <a href="https://stoupy51.github.io/stouputils/latest/modules/stouputils.data_science.models.keras_utils.html">keras_utils/</a> <span class="comment"># 🛠️ Keras utilities <span class="paren">(callbacks, losses, visualizations)</span></span>
123
+ │ │ └── ...
124
+ │ ├── <a href="https://stoupy51.github.io/stouputils/latest/modules/stouputils.data_science.scripts.html">scripts/</a> <span class="comment"># 📜 Data science scripts <span class="paren">(augment, preprocess, routine)</span></span>
125
+ │ ├── <a href="https://stoupy51.github.io/stouputils/latest/modules/stouputils.data_science.metric_utils.html">metric_utils.py</a> <span class="comment"># 📏 Static methods for calculating various ML metrics</span>
126
+ │ ├── <a href="https://stoupy51.github.io/stouputils/latest/modules/stouputils.data_science.mlflow_utils.html">mlflow_utils.py</a> <span class="comment"># 📊 Utility functions for working with MLflow</span>
127
+ │ └── ...
128
+
129
+ ├── <a href="https://stoupy51.github.io/stouputils/latest/modules/stouputils.installer.html">installer/</a>
130
+ │ ├── <a href="https://stoupy51.github.io/stouputils/latest/modules/stouputils.installer.common.html">common.py</a> <span class="comment"># 🔧 Common functions used by the Linux and Windows installers modules</span>
131
+ │ ├── <a href="https://stoupy51.github.io/stouputils/latest/modules/stouputils.installer.downloader.html">downloader.py</a> <span class="comment"># ⬇️ Functions for downloading and installing programs from URLs</span>
132
+ │ ├── <a href="https://stoupy51.github.io/stouputils/latest/modules/stouputils.installer.linux.html">linux.py</a> <span class="comment"># 🐧 Linux/macOS specific implementations for installation</span>
133
+ │ ├── <a href="https://stoupy51.github.io/stouputils/latest/modules/stouputils.installer.main.html">main.py</a> <span class="comment"># 🚀 Core installation functions for installing programs from zip files or URLs</span>
134
+ │ ├── <a href="https://stoupy51.github.io/stouputils/latest/modules/stouputils.installer.windows.html">windows.py</a> <span class="comment"># 💻 Windows specific implementations for installation</span>
135
+ │ └── ...
136
+ └── ...
137
+ </pre>
138
+ </html>
139
+
140
+ ## 🔧 Installation
141
+
142
+ ```bash
143
+ pip install stouputils
144
+ ```
145
+
146
+ ### ✨ Enable Tab Completion on Linux (Optional)
147
+
148
+ For a better CLI experience, enable bash tab completion:
149
+
150
+ ```bash
151
+ # Option 1: Using argcomplete's global activation
152
+ activate-global-python-argcomplete --user
153
+
154
+ # Option 2: Manual setup for bash
155
+ register-python-argcomplete stouputils >> ~/.bashrc
156
+ source ~/.bashrc
157
+ ```
158
+
159
+ After enabling completion, you can use `<TAB>` to autocomplete commands:
160
+ ```bash
161
+ stouputils <TAB> # Shows: --version, -v, all_doctests, backup
162
+ stouputils all_<TAB> # Completes to: all_doctests
163
+ ```
164
+
165
+ **Note:** Tab completion works best in bash, zsh, Git Bash, or WSL on Windows.
166
+
167
+ ## ⭐ Star History
168
+
169
+ <html>
170
+ <a href="https://star-history.com/#Stoupy51/stouputils&Date">
171
+ <picture>
172
+ <source media="(prefers-color-scheme: dark)" srcset="https://api.star-history.com/svg?repos=Stoupy51/stouputils&type=Date&theme=dark" />
173
+ <source media="(prefers-color-scheme: light)" srcset="https://api.star-history.com/svg?repos=Stoupy51/stouputils&type=Date" />
174
+ <img alt="Star History Chart" src="https://api.star-history.com/svg?repos=Stoupy51/stouputils&type=Date" />
175
+ </picture>
176
+ </a>
177
+ </html>
178
+
@@ -1,106 +1,104 @@
1
-
2
- [build-system]
3
- requires = [
4
- "hatchling",
5
- ]
6
- build-backend = "hatchling.build"
7
-
8
- [project]
9
- name = "stouputils"
10
- version = "1.12.0"
11
- 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."
12
- readme = "README.md"
13
- requires-python = ">=3.12"
14
- classifiers = [
15
- "Programming Language :: Python :: 3",
16
- "Programming Language :: Python :: 3.12",
17
- "Programming Language :: Python :: 3.13",
18
- "Programming Language :: Python :: 3.14",
19
- "License :: OSI Approved :: MIT License",
20
- "Operating System :: OS Independent",
21
- ]
22
- dependencies = [
23
- "tqdm>=4.0.0",
24
- "requests>=2.20.0",
25
- "msgspec[toml,yaml]>=0.20.0",
26
- "pillow>=10.0.0",
27
- "numpy>=2.3.0",
28
- "python-box>=7.0.0",
29
- "argcomplete>=3.0.0",
30
- ]
31
- authors = [
32
- { name = "Stoupy51", email = "stoupy51@gmail.com" },
33
- ]
34
-
35
- [project.optional-dependencies]
36
- docs = [
37
- "mypy",
38
- "m2r2",
39
- "myst_parser",
40
- "sphinx_copybutton",
41
- "sphinx_design",
42
- "sphinx_treeview",
43
- "sphinx_breeze_theme",
44
- "pydata_sphinx_theme",
45
- ]
46
- data_science = [
47
- "opencv-python",
48
- "scikit-image",
49
- "simpleitk",
50
- "mlflow",
51
- "tensorflow",
52
- "scikit-learn",
53
- "PyWavelets",
54
- ]
55
-
56
- [project.urls]
57
- Homepage = "https://github.com/Stoupy51/stouputils"
58
- Issues = "https://github.com/Stoupy51/stouputils/issues"
59
-
60
- [project.scripts]
61
- stouputils = "stouputils.__main__:main"
62
-
63
- [tool.pyright]
64
- typeCheckingMode = "strict"
65
-
66
- [tool.ruff]
67
- exclude = [
68
- ".git",
69
- ".ruff_cache",
70
- ".venv",
71
- ".vscode",
72
- ".cursor",
73
- "build",
74
- "dist",
75
- "*.pyi",
76
- ]
77
- line-length = 200
78
-
79
- [tool.ruff.lint]
80
- select = [
81
- "E",
82
- "W",
83
- "F",
84
- "I",
85
- "N",
86
- "UP",
87
- "B",
88
- "C4",
89
- "T20",
90
- "RUF",
91
- ]
92
- ignore = [
93
- "T201",
94
- "W191",
95
- "N803",
96
- "N806",
97
- "F403",
98
- "F405",
99
- ]
100
-
101
- [tool.hatch.build]
102
- include = [
103
- "stouputils",
104
- ]
105
- ignore-vcs = true
106
-
1
+
2
+ [build-system]
3
+ requires = ["uv_build"]
4
+ build-backend = "uv_build"
5
+
6
+ [tool.uv.build-backend]
7
+ module-root = ""
8
+ module-name = "stouputils"
9
+ ignore-vcs = true
10
+
11
+ [project]
12
+ name = "stouputils"
13
+ version = "1.12.2"
14
+ 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."
15
+ readme = "README.md"
16
+ keywords = ["utilities", "tools", "helpers", "development", "python"]
17
+ requires-python = ">=3.12"
18
+ classifiers = [
19
+ "Programming Language :: Python :: 3",
20
+ "Programming Language :: Python :: 3.12",
21
+ "Programming Language :: Python :: 3.13",
22
+ "Programming Language :: Python :: 3.14",
23
+ "License :: OSI Approved :: MIT License",
24
+ "Operating System :: OS Independent",
25
+ ]
26
+ dependencies = [
27
+ "tqdm>=4.0.0",
28
+ "requests>=2.20.0",
29
+ "msgspec[toml,yaml]>=0.20.0",
30
+ "pillow>=10.0.0",
31
+ "python-box>=7.0.0",
32
+ "argcomplete>=3.0.0",
33
+ "numpy",
34
+ ]
35
+ authors = [
36
+ { name = "Stoupy51", email = "stoupy51@gmail.com" },
37
+ ]
38
+
39
+ [project.optional-dependencies]
40
+ docs = [
41
+ "m2r2",
42
+ "myst_parser",
43
+ "sphinx_copybutton",
44
+ "sphinx_design",
45
+ "sphinx_treeview",
46
+ "sphinx_breeze_theme",
47
+ "pydata_sphinx_theme",
48
+ ]
49
+ data_science = [
50
+ "opencv-python",
51
+ "scikit-image",
52
+ "simpleitk",
53
+ "mlflow",
54
+ "tensorflow",
55
+ "scikit-learn",
56
+ "PyWavelets",
57
+ ]
58
+
59
+ [project.urls]
60
+ Homepage = "https://stoupy51.github.io/stouputils"
61
+ Issues = "https://github.com/Stoupy51/stouputils/issues"
62
+ Source = "https://github.com/Stoupy51/stouputils"
63
+
64
+ [project.scripts]
65
+ stouputils = "stouputils.__main__:main"
66
+
67
+ [tool.pyright]
68
+ typeCheckingMode = "strict"
69
+
70
+ [tool.ruff]
71
+ exclude = [
72
+ ".git",
73
+ ".ruff_cache",
74
+ ".venv",
75
+ ".vscode",
76
+ ".cursor",
77
+ "build",
78
+ "dist",
79
+ "*.pyi",
80
+ ]
81
+ line-length = 200
82
+
83
+ [tool.ruff.lint]
84
+ select = [
85
+ "E",
86
+ "W",
87
+ "F",
88
+ "I",
89
+ "N",
90
+ "UP",
91
+ "B",
92
+ "C4",
93
+ "T20",
94
+ "RUF",
95
+ ]
96
+ ignore = [
97
+ "T201",
98
+ "W191",
99
+ "N803",
100
+ "N806",
101
+ "F403",
102
+ "F405",
103
+ ]
104
+
@@ -14,10 +14,9 @@ Key Features:
14
14
  - Doctests utilities
15
15
 
16
16
  """
17
- # ruff: noqa: F403
18
-
19
17
  # Version (handle case where the package is not installed)
20
- from importlib.metadata import PackageNotFoundError, version
18
+ from importlib.metadata import PackageNotFoundError
19
+ from importlib.metadata import version as importlib_version
21
20
 
22
21
  # Imports
23
22
  from ._deprecated import *
@@ -32,9 +31,10 @@ from .image import *
32
31
  from .io import *
33
32
  from .parallel import *
34
33
  from .print import *
34
+ from .version_pkg import *
35
35
 
36
36
  try:
37
- __version__: str = version("stouputils")
37
+ __version__: str = importlib_version("stouputils")
38
38
  except PackageNotFoundError:
39
39
  __version__: str = "0.0.0-dev"
40
40
 
@@ -10,5 +10,6 @@ from .image import *
10
10
  from .io import *
11
11
  from .parallel import *
12
12
  from .print import *
13
+ from .version_pkg import *
13
14
 
14
15
  __version__: str