fmtr.tools 1.1.11__tar.gz → 1.1.12__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.

Potentially problematic release.


This version of fmtr.tools might be problematic. Click here for more details.

Files changed (74) hide show
  1. {fmtr_tools-1.1.11 → fmtr_tools-1.1.12}/PKG-INFO +35 -35
  2. fmtr_tools-1.1.12/fmtr/tools/version +1 -0
  3. {fmtr_tools-1.1.11 → fmtr_tools-1.1.12}/fmtr/tools/yaml_tools.py +15 -0
  4. {fmtr_tools-1.1.11 → fmtr_tools-1.1.12}/fmtr.tools.egg-info/PKG-INFO +35 -35
  5. fmtr_tools-1.1.11/fmtr/tools/version +0 -1
  6. {fmtr_tools-1.1.11 → fmtr_tools-1.1.12}/LICENSE +0 -0
  7. {fmtr_tools-1.1.11 → fmtr_tools-1.1.12}/README.md +0 -0
  8. {fmtr_tools-1.1.11 → fmtr_tools-1.1.12}/fmtr/tools/__init__.py +0 -0
  9. {fmtr_tools-1.1.11 → fmtr_tools-1.1.12}/fmtr/tools/ai_tools/__init__.py +0 -0
  10. {fmtr_tools-1.1.11 → fmtr_tools-1.1.12}/fmtr/tools/ai_tools/agentic_tools.py +0 -0
  11. {fmtr_tools-1.1.11 → fmtr_tools-1.1.12}/fmtr/tools/ai_tools/inference_tools.py +0 -0
  12. {fmtr_tools-1.1.11 → fmtr_tools-1.1.12}/fmtr/tools/api_tools.py +0 -0
  13. {fmtr_tools-1.1.11 → fmtr_tools-1.1.12}/fmtr/tools/async_tools.py +0 -0
  14. {fmtr_tools-1.1.11 → fmtr_tools-1.1.12}/fmtr/tools/augmentation_tools.py +0 -0
  15. {fmtr_tools-1.1.11 → fmtr_tools-1.1.12}/fmtr/tools/caching_tools.py +0 -0
  16. {fmtr_tools-1.1.11 → fmtr_tools-1.1.12}/fmtr/tools/console_script_tools.py +0 -0
  17. {fmtr_tools-1.1.11 → fmtr_tools-1.1.12}/fmtr/tools/constants.py +0 -0
  18. {fmtr_tools-1.1.11 → fmtr_tools-1.1.12}/fmtr/tools/data_modelling_tools.py +0 -0
  19. {fmtr_tools-1.1.11 → fmtr_tools-1.1.12}/fmtr/tools/dataclass_tools.py +0 -0
  20. {fmtr_tools-1.1.11 → fmtr_tools-1.1.12}/fmtr/tools/datatype_tools.py +0 -0
  21. {fmtr_tools-1.1.11 → fmtr_tools-1.1.12}/fmtr/tools/debugging_tools.py +0 -0
  22. {fmtr_tools-1.1.11 → fmtr_tools-1.1.12}/fmtr/tools/docker_tools.py +0 -0
  23. {fmtr_tools-1.1.11 → fmtr_tools-1.1.12}/fmtr/tools/environment_tools.py +0 -0
  24. {fmtr_tools-1.1.11 → fmtr_tools-1.1.12}/fmtr/tools/function_tools.py +0 -0
  25. {fmtr_tools-1.1.11 → fmtr_tools-1.1.12}/fmtr/tools/google_api_tools.py +0 -0
  26. {fmtr_tools-1.1.11 → fmtr_tools-1.1.12}/fmtr/tools/hash_tools.py +0 -0
  27. {fmtr_tools-1.1.11 → fmtr_tools-1.1.12}/fmtr/tools/hfh_tools.py +0 -0
  28. {fmtr_tools-1.1.11 → fmtr_tools-1.1.12}/fmtr/tools/html_tools.py +0 -0
  29. {fmtr_tools-1.1.11 → fmtr_tools-1.1.12}/fmtr/tools/import_tools.py +0 -0
  30. {fmtr_tools-1.1.11 → fmtr_tools-1.1.12}/fmtr/tools/inspection_tools.py +0 -0
  31. {fmtr_tools-1.1.11 → fmtr_tools-1.1.12}/fmtr/tools/interface_tools.py +0 -0
  32. {fmtr_tools-1.1.11 → fmtr_tools-1.1.12}/fmtr/tools/iterator_tools.py +0 -0
  33. {fmtr_tools-1.1.11 → fmtr_tools-1.1.12}/fmtr/tools/json_fix_tools.py +0 -0
  34. {fmtr_tools-1.1.11 → fmtr_tools-1.1.12}/fmtr/tools/json_tools.py +0 -0
  35. {fmtr_tools-1.1.11 → fmtr_tools-1.1.12}/fmtr/tools/logging_tools.py +0 -0
  36. {fmtr_tools-1.1.11 → fmtr_tools-1.1.12}/fmtr/tools/merging_tools.py +0 -0
  37. {fmtr_tools-1.1.11 → fmtr_tools-1.1.12}/fmtr/tools/metric_tools.py +0 -0
  38. {fmtr_tools-1.1.11 → fmtr_tools-1.1.12}/fmtr/tools/name_tools.py +0 -0
  39. {fmtr_tools-1.1.11 → fmtr_tools-1.1.12}/fmtr/tools/netrc_tools.py +0 -0
  40. {fmtr_tools-1.1.11 → fmtr_tools-1.1.12}/fmtr/tools/openai_tools.py +0 -0
  41. {fmtr_tools-1.1.11 → fmtr_tools-1.1.12}/fmtr/tools/packaging_tools.py +0 -0
  42. {fmtr_tools-1.1.11 → fmtr_tools-1.1.12}/fmtr/tools/parallel_tools.py +0 -0
  43. {fmtr_tools-1.1.11 → fmtr_tools-1.1.12}/fmtr/tools/path_tools/__init__.py +0 -0
  44. {fmtr_tools-1.1.11 → fmtr_tools-1.1.12}/fmtr/tools/path_tools/app.py +0 -0
  45. {fmtr_tools-1.1.11 → fmtr_tools-1.1.12}/fmtr/tools/path_tools/base.py +0 -0
  46. {fmtr_tools-1.1.11 → fmtr_tools-1.1.12}/fmtr/tools/pdf_tools.py +0 -0
  47. {fmtr_tools-1.1.11 → fmtr_tools-1.1.12}/fmtr/tools/platform_tools.py +0 -0
  48. {fmtr_tools-1.1.11 → fmtr_tools-1.1.12}/fmtr/tools/process_tools.py +0 -0
  49. {fmtr_tools-1.1.11 → fmtr_tools-1.1.12}/fmtr/tools/profiling_tools.py +0 -0
  50. {fmtr_tools-1.1.11 → fmtr_tools-1.1.12}/fmtr/tools/random_tools.py +0 -0
  51. {fmtr_tools-1.1.11 → fmtr_tools-1.1.12}/fmtr/tools/semantic_tools.py +0 -0
  52. {fmtr_tools-1.1.11 → fmtr_tools-1.1.12}/fmtr/tools/settings_tools.py +0 -0
  53. {fmtr_tools-1.1.11 → fmtr_tools-1.1.12}/fmtr/tools/spaces_tools.py +0 -0
  54. {fmtr_tools-1.1.11 → fmtr_tools-1.1.12}/fmtr/tools/string_tools.py +0 -0
  55. {fmtr_tools-1.1.11 → fmtr_tools-1.1.12}/fmtr/tools/tabular_tools.py +0 -0
  56. {fmtr_tools-1.1.11 → fmtr_tools-1.1.12}/fmtr/tools/tests/__init__.py +0 -0
  57. {fmtr_tools-1.1.11 → fmtr_tools-1.1.12}/fmtr/tools/tests/conftest.py +0 -0
  58. {fmtr_tools-1.1.11 → fmtr_tools-1.1.12}/fmtr/tools/tests/helpers.py +0 -0
  59. {fmtr_tools-1.1.11 → fmtr_tools-1.1.12}/fmtr/tools/tests/test_datatype.py +0 -0
  60. {fmtr_tools-1.1.11 → fmtr_tools-1.1.12}/fmtr/tools/tests/test_environment.py +0 -0
  61. {fmtr_tools-1.1.11 → fmtr_tools-1.1.12}/fmtr/tools/tests/test_json.py +0 -0
  62. {fmtr_tools-1.1.11 → fmtr_tools-1.1.12}/fmtr/tools/tests/test_path.py +0 -0
  63. {fmtr_tools-1.1.11 → fmtr_tools-1.1.12}/fmtr/tools/tests/test_yaml.py +0 -0
  64. {fmtr_tools-1.1.11 → fmtr_tools-1.1.12}/fmtr/tools/tokenization_tools.py +0 -0
  65. {fmtr_tools-1.1.11 → fmtr_tools-1.1.12}/fmtr/tools/tools.py +0 -0
  66. {fmtr_tools-1.1.11 → fmtr_tools-1.1.12}/fmtr/tools/unicode_tools.py +0 -0
  67. {fmtr_tools-1.1.11 → fmtr_tools-1.1.12}/fmtr/tools/version_tools.py +0 -0
  68. {fmtr_tools-1.1.11 → fmtr_tools-1.1.12}/fmtr.tools.egg-info/SOURCES.txt +0 -0
  69. {fmtr_tools-1.1.11 → fmtr_tools-1.1.12}/fmtr.tools.egg-info/dependency_links.txt +0 -0
  70. {fmtr_tools-1.1.11 → fmtr_tools-1.1.12}/fmtr.tools.egg-info/entry_points.txt +0 -0
  71. {fmtr_tools-1.1.11 → fmtr_tools-1.1.12}/fmtr.tools.egg-info/requires.txt +34 -34
  72. {fmtr_tools-1.1.11 → fmtr_tools-1.1.12}/fmtr.tools.egg-info/top_level.txt +0 -0
  73. {fmtr_tools-1.1.11 → fmtr_tools-1.1.12}/setup.cfg +0 -0
  74. {fmtr_tools-1.1.11 → fmtr_tools-1.1.12}/setup.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: fmtr.tools
3
- Version: 1.1.11
3
+ Version: 1.1.12
4
4
  Summary: Collection of high-level tools to simplify everyday development tasks, with a focus on AI/ML
5
5
  Home-page: https://github.com/fmtr/fmtr.tools
6
6
  Author: Frontmatter
@@ -9,52 +9,52 @@ License: Copyright © 2025 Frontmatter. All rights reserved.
9
9
  Description-Content-Type: text/markdown
10
10
  License-File: LICENSE
11
11
  Provides-Extra: test
12
- Requires-Dist: flet-webview; extra == "test"
13
- Requires-Dist: fastapi; extra == "test"
12
+ Requires-Dist: peft; extra == "test"
14
13
  Requires-Dist: pymupdf4llm; extra == "test"
15
- Requires-Dist: Unidecode; extra == "test"
16
- Requires-Dist: semver; extra == "test"
14
+ Requires-Dist: contexttimer; extra == "test"
15
+ Requires-Dist: bokeh; extra == "test"
16
+ Requires-Dist: tinynetrc; extra == "test"
17
+ Requires-Dist: torchvision; extra == "test"
18
+ Requires-Dist: flet-video; extra == "test"
19
+ Requires-Dist: google-api-python-client; extra == "test"
20
+ Requires-Dist: uvicorn[standard]; extra == "test"
17
21
  Requires-Dist: pydantic-settings; extra == "test"
18
- Requires-Dist: google-auth-httplib2; extra == "test"
19
22
  Requires-Dist: pandas; extra == "test"
23
+ Requires-Dist: google-auth; extra == "test"
24
+ Requires-Dist: huggingface_hub; extra == "test"
25
+ Requires-Dist: faker; extra == "test"
26
+ Requires-Dist: docker; extra == "test"
27
+ Requires-Dist: dask[bag]; extra == "test"
28
+ Requires-Dist: google-auth-httplib2; extra == "test"
29
+ Requires-Dist: flet[all]; extra == "test"
30
+ Requires-Dist: deepmerge; extra == "test"
31
+ Requires-Dist: Unidecode; extra == "test"
32
+ Requires-Dist: json_repair; extra == "test"
33
+ Requires-Dist: logfire[fastapi]; extra == "test"
34
+ Requires-Dist: tokenizers; extra == "test"
20
35
  Requires-Dist: google-auth-oauthlib; extra == "test"
21
36
  Requires-Dist: openai; extra == "test"
22
- Requires-Dist: pytest-cov; extra == "test"
23
37
  Requires-Dist: transformers[sentencepiece]; extra == "test"
24
38
  Requires-Dist: logfire; extra == "test"
25
- Requires-Dist: pydantic; extra == "test"
26
- Requires-Dist: deepmerge; extra == "test"
27
- Requires-Dist: pymupdf; extra == "test"
28
- Requires-Dist: sentence_transformers; extra == "test"
29
- Requires-Dist: html2text; extra == "test"
30
- Requires-Dist: sre_yield; extra == "test"
31
- Requires-Dist: flet[all]; extra == "test"
32
- Requires-Dist: peft; extra == "test"
33
- Requires-Dist: pydantic-ai[logfire,openai]; extra == "test"
34
- Requires-Dist: appdirs; extra == "test"
35
- Requires-Dist: google-api-python-client; extra == "test"
36
- Requires-Dist: json_repair; extra == "test"
37
- Requires-Dist: dask[bag]; extra == "test"
38
39
  Requires-Dist: torchaudio; extra == "test"
39
- Requires-Dist: google-auth; extra == "test"
40
40
  Requires-Dist: tabulate; extra == "test"
41
- Requires-Dist: tokenizers; extra == "test"
42
- Requires-Dist: ollama; extra == "test"
43
- Requires-Dist: torchvision; extra == "test"
44
- Requires-Dist: yamlscript; extra == "test"
45
- Requires-Dist: faker; extra == "test"
46
- Requires-Dist: bokeh; extra == "test"
47
- Requires-Dist: docker; extra == "test"
48
- Requires-Dist: tinynetrc; extra == "test"
49
- Requires-Dist: uvicorn[standard]; extra == "test"
50
- Requires-Dist: openpyxl; extra == "test"
41
+ Requires-Dist: flet-webview; extra == "test"
51
42
  Requires-Dist: diskcache; extra == "test"
52
43
  Requires-Dist: pydevd-pycharm; extra == "test"
53
- Requires-Dist: logfire[fastapi]; extra == "test"
54
- Requires-Dist: contexttimer; extra == "test"
55
44
  Requires-Dist: distributed; extra == "test"
56
- Requires-Dist: flet-video; extra == "test"
57
- Requires-Dist: huggingface_hub; extra == "test"
45
+ Requires-Dist: pytest-cov; extra == "test"
46
+ Requires-Dist: yamlscript; extra == "test"
47
+ Requires-Dist: html2text; extra == "test"
48
+ Requires-Dist: pydantic-ai[logfire,openai]; extra == "test"
49
+ Requires-Dist: pymupdf; extra == "test"
50
+ Requires-Dist: sre_yield; extra == "test"
51
+ Requires-Dist: openpyxl; extra == "test"
52
+ Requires-Dist: semver; extra == "test"
53
+ Requires-Dist: ollama; extra == "test"
54
+ Requires-Dist: pydantic; extra == "test"
55
+ Requires-Dist: appdirs; extra == "test"
56
+ Requires-Dist: sentence_transformers; extra == "test"
57
+ Requires-Dist: fastapi; extra == "test"
58
58
  Provides-Extra: yaml
59
59
  Requires-Dist: yamlscript; extra == "yaml"
60
60
  Provides-Extra: logging
@@ -0,0 +1 @@
1
+ 1.1.12
@@ -5,6 +5,13 @@ from yaml import dump
5
5
 
6
6
  from fmtr.tools import environment_tools as env
7
7
 
8
+ try:
9
+ import yamlscript
10
+ except ImportError:
11
+ raise # Raise if even the package isn't installed, to trigger the regular missing extra exception.
12
+ except Exception as exception:
13
+ pass # Allow missing binary, so we can install on-demand
14
+
8
15
 
9
16
  def install():
10
17
  """
@@ -67,3 +74,11 @@ def from_yaml(yaml_str: str) -> Any:
67
74
  """
68
75
  obj = get_interpreter().load(yaml_str)
69
76
  return obj
77
+
78
+
79
+ if __name__ == '__main__':
80
+ from fmtr.tools import Path
81
+
82
+ py = Path('hw.yml')
83
+ data = py.read_yaml()
84
+ data
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: fmtr.tools
3
- Version: 1.1.11
3
+ Version: 1.1.12
4
4
  Summary: Collection of high-level tools to simplify everyday development tasks, with a focus on AI/ML
5
5
  Home-page: https://github.com/fmtr/fmtr.tools
6
6
  Author: Frontmatter
@@ -9,52 +9,52 @@ License: Copyright © 2025 Frontmatter. All rights reserved.
9
9
  Description-Content-Type: text/markdown
10
10
  License-File: LICENSE
11
11
  Provides-Extra: test
12
- Requires-Dist: flet-webview; extra == "test"
13
- Requires-Dist: fastapi; extra == "test"
12
+ Requires-Dist: peft; extra == "test"
14
13
  Requires-Dist: pymupdf4llm; extra == "test"
15
- Requires-Dist: Unidecode; extra == "test"
16
- Requires-Dist: semver; extra == "test"
14
+ Requires-Dist: contexttimer; extra == "test"
15
+ Requires-Dist: bokeh; extra == "test"
16
+ Requires-Dist: tinynetrc; extra == "test"
17
+ Requires-Dist: torchvision; extra == "test"
18
+ Requires-Dist: flet-video; extra == "test"
19
+ Requires-Dist: google-api-python-client; extra == "test"
20
+ Requires-Dist: uvicorn[standard]; extra == "test"
17
21
  Requires-Dist: pydantic-settings; extra == "test"
18
- Requires-Dist: google-auth-httplib2; extra == "test"
19
22
  Requires-Dist: pandas; extra == "test"
23
+ Requires-Dist: google-auth; extra == "test"
24
+ Requires-Dist: huggingface_hub; extra == "test"
25
+ Requires-Dist: faker; extra == "test"
26
+ Requires-Dist: docker; extra == "test"
27
+ Requires-Dist: dask[bag]; extra == "test"
28
+ Requires-Dist: google-auth-httplib2; extra == "test"
29
+ Requires-Dist: flet[all]; extra == "test"
30
+ Requires-Dist: deepmerge; extra == "test"
31
+ Requires-Dist: Unidecode; extra == "test"
32
+ Requires-Dist: json_repair; extra == "test"
33
+ Requires-Dist: logfire[fastapi]; extra == "test"
34
+ Requires-Dist: tokenizers; extra == "test"
20
35
  Requires-Dist: google-auth-oauthlib; extra == "test"
21
36
  Requires-Dist: openai; extra == "test"
22
- Requires-Dist: pytest-cov; extra == "test"
23
37
  Requires-Dist: transformers[sentencepiece]; extra == "test"
24
38
  Requires-Dist: logfire; extra == "test"
25
- Requires-Dist: pydantic; extra == "test"
26
- Requires-Dist: deepmerge; extra == "test"
27
- Requires-Dist: pymupdf; extra == "test"
28
- Requires-Dist: sentence_transformers; extra == "test"
29
- Requires-Dist: html2text; extra == "test"
30
- Requires-Dist: sre_yield; extra == "test"
31
- Requires-Dist: flet[all]; extra == "test"
32
- Requires-Dist: peft; extra == "test"
33
- Requires-Dist: pydantic-ai[logfire,openai]; extra == "test"
34
- Requires-Dist: appdirs; extra == "test"
35
- Requires-Dist: google-api-python-client; extra == "test"
36
- Requires-Dist: json_repair; extra == "test"
37
- Requires-Dist: dask[bag]; extra == "test"
38
39
  Requires-Dist: torchaudio; extra == "test"
39
- Requires-Dist: google-auth; extra == "test"
40
40
  Requires-Dist: tabulate; extra == "test"
41
- Requires-Dist: tokenizers; extra == "test"
42
- Requires-Dist: ollama; extra == "test"
43
- Requires-Dist: torchvision; extra == "test"
44
- Requires-Dist: yamlscript; extra == "test"
45
- Requires-Dist: faker; extra == "test"
46
- Requires-Dist: bokeh; extra == "test"
47
- Requires-Dist: docker; extra == "test"
48
- Requires-Dist: tinynetrc; extra == "test"
49
- Requires-Dist: uvicorn[standard]; extra == "test"
50
- Requires-Dist: openpyxl; extra == "test"
41
+ Requires-Dist: flet-webview; extra == "test"
51
42
  Requires-Dist: diskcache; extra == "test"
52
43
  Requires-Dist: pydevd-pycharm; extra == "test"
53
- Requires-Dist: logfire[fastapi]; extra == "test"
54
- Requires-Dist: contexttimer; extra == "test"
55
44
  Requires-Dist: distributed; extra == "test"
56
- Requires-Dist: flet-video; extra == "test"
57
- Requires-Dist: huggingface_hub; extra == "test"
45
+ Requires-Dist: pytest-cov; extra == "test"
46
+ Requires-Dist: yamlscript; extra == "test"
47
+ Requires-Dist: html2text; extra == "test"
48
+ Requires-Dist: pydantic-ai[logfire,openai]; extra == "test"
49
+ Requires-Dist: pymupdf; extra == "test"
50
+ Requires-Dist: sre_yield; extra == "test"
51
+ Requires-Dist: openpyxl; extra == "test"
52
+ Requires-Dist: semver; extra == "test"
53
+ Requires-Dist: ollama; extra == "test"
54
+ Requires-Dist: pydantic; extra == "test"
55
+ Requires-Dist: appdirs; extra == "test"
56
+ Requires-Dist: sentence_transformers; extra == "test"
57
+ Requires-Dist: fastapi; extra == "test"
58
58
  Provides-Extra: yaml
59
59
  Requires-Dist: yamlscript; extra == "yaml"
60
60
  Provides-Extra: logging
@@ -1 +0,0 @@
1
- 1.1.11
File without changes
File without changes
@@ -116,52 +116,52 @@ tabulate
116
116
  openpyxl
117
117
 
118
118
  [test]
119
- flet-webview
120
- fastapi
119
+ peft
121
120
  pymupdf4llm
122
- Unidecode
123
- semver
121
+ contexttimer
122
+ bokeh
123
+ tinynetrc
124
+ torchvision
125
+ flet-video
126
+ google-api-python-client
127
+ uvicorn[standard]
124
128
  pydantic-settings
125
- google-auth-httplib2
126
129
  pandas
130
+ google-auth
131
+ huggingface_hub
132
+ faker
133
+ docker
134
+ dask[bag]
135
+ google-auth-httplib2
136
+ flet[all]
137
+ deepmerge
138
+ Unidecode
139
+ json_repair
140
+ logfire[fastapi]
141
+ tokenizers
127
142
  google-auth-oauthlib
128
143
  openai
129
- pytest-cov
130
144
  transformers[sentencepiece]
131
145
  logfire
132
- pydantic
133
- deepmerge
134
- pymupdf
135
- sentence_transformers
136
- html2text
137
- sre_yield
138
- flet[all]
139
- peft
140
- pydantic-ai[logfire,openai]
141
- appdirs
142
- google-api-python-client
143
- json_repair
144
- dask[bag]
145
146
  torchaudio
146
- google-auth
147
147
  tabulate
148
- tokenizers
149
- ollama
150
- torchvision
151
- yamlscript
152
- faker
153
- bokeh
154
- docker
155
- tinynetrc
156
- uvicorn[standard]
157
- openpyxl
148
+ flet-webview
158
149
  diskcache
159
150
  pydevd-pycharm
160
- logfire[fastapi]
161
- contexttimer
162
151
  distributed
163
- flet-video
164
- huggingface_hub
152
+ pytest-cov
153
+ yamlscript
154
+ html2text
155
+ pydantic-ai[logfire,openai]
156
+ pymupdf
157
+ sre_yield
158
+ openpyxl
159
+ semver
160
+ ollama
161
+ pydantic
162
+ appdirs
163
+ sentence_transformers
164
+ fastapi
165
165
 
166
166
  [tokenization]
167
167
  tokenizers
File without changes
File without changes