fmtr.tools 1.0.54__py3-none-any.whl → 1.0.55__py3-none-any.whl

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.

fmtr/tools/version CHANGED
@@ -1 +1 @@
1
- 1.0.54
1
+ 1.0.55
@@ -1,6 +1,6 @@
1
- Metadata-Version: 2.1
1
+ Metadata-Version: 2.4
2
2
  Name: fmtr.tools
3
- Version: 1.0.54
3
+ Version: 1.0.55
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
@@ -8,141 +8,150 @@ Author-email: innovative.fowler@mask.pro.fmtr.dev
8
8
  License: Copyright © 2025 Frontmatter. All rights reserved.
9
9
  Description-Content-Type: text/markdown
10
10
  License-File: LICENSE
11
- Provides-Extra: ai
12
- Requires-Dist: peft ; extra == 'ai'
13
- Requires-Dist: pydantic ; extra == 'ai'
14
- Requires-Dist: torchaudio ; extra == 'ai'
15
- Requires-Dist: torchvision ; extra == 'ai'
16
- Requires-Dist: transformers[sentencepiece] ; extra == 'ai'
17
- Provides-Extra: ai.client
18
- Requires-Dist: logfire ; extra == 'ai.client'
19
- Requires-Dist: ollama ; extra == 'ai.client'
20
- Requires-Dist: openai ; extra == 'ai.client'
21
- Requires-Dist: pydantic ; extra == 'ai.client'
22
- Requires-Dist: pydantic-ai[logfire,openai] ; extra == 'ai.client'
23
- Requires-Dist: semver ; extra == 'ai.client'
24
- Provides-Extra: api
25
- Requires-Dist: fastapi ; extra == 'api'
26
- Requires-Dist: logfire ; extra == 'api'
27
- Requires-Dist: pydantic ; extra == 'api'
28
- Requires-Dist: semver ; extra == 'api'
29
- Requires-Dist: uvicorn ; extra == 'api'
30
- Provides-Extra: augmentation
31
- Requires-Dist: faker ; extra == 'augmentation'
32
- Requires-Dist: sre-yield ; extra == 'augmentation'
33
- Provides-Extra: caching
34
- Requires-Dist: diskcache ; extra == 'caching'
35
- Provides-Extra: debug
36
- Requires-Dist: pydevd-pycharm ; extra == 'debug'
37
- Provides-Extra: dm
38
- Requires-Dist: pydantic ; extra == 'dm'
39
- Provides-Extra: docker.api
40
- Requires-Dist: docker ; extra == 'docker.api'
41
- Provides-Extra: google.api
42
- Requires-Dist: google-api-python-client ; extra == 'google.api'
43
- Requires-Dist: google-auth ; extra == 'google.api'
44
- Requires-Dist: google-auth-httplib2 ; extra == 'google.api'
45
- Requires-Dist: google-auth-oauthlib ; extra == 'google.api'
46
- Provides-Extra: hfh
47
- Requires-Dist: huggingface-hub ; extra == 'hfh'
48
- Provides-Extra: html
49
- Requires-Dist: html2text ; extra == 'html'
50
- Provides-Extra: interface
51
- Requires-Dist: flet-video ; extra == 'interface'
52
- Requires-Dist: flet-webview ; extra == 'interface'
53
- Requires-Dist: flet[all] ; extra == 'interface'
54
- Requires-Dist: pydantic ; extra == 'interface'
55
- Provides-Extra: json-fix
56
- Requires-Dist: json-repair ; extra == 'json-fix'
11
+ Provides-Extra: test
12
+ Requires-Dist: distributed; extra == "test"
13
+ Requires-Dist: ollama; extra == "test"
14
+ Requires-Dist: pytest-cov; extra == "test"
15
+ Requires-Dist: google-auth-httplib2; extra == "test"
16
+ Requires-Dist: semver; extra == "test"
17
+ Requires-Dist: pyyaml; extra == "test"
18
+ Requires-Dist: tinynetrc; extra == "test"
19
+ Requires-Dist: dask[bag]; extra == "test"
20
+ Requires-Dist: peft; extra == "test"
21
+ Requires-Dist: openpyxl; extra == "test"
22
+ Requires-Dist: google-auth-oauthlib; extra == "test"
23
+ Requires-Dist: huggingface_hub; extra == "test"
24
+ Requires-Dist: bokeh; extra == "test"
25
+ Requires-Dist: Unidecode; extra == "test"
26
+ Requires-Dist: docker; extra == "test"
27
+ Requires-Dist: deepmerge; extra == "test"
28
+ Requires-Dist: json_repair; extra == "test"
29
+ Requires-Dist: fastapi; extra == "test"
30
+ Requires-Dist: transformers[sentencepiece]; extra == "test"
31
+ Requires-Dist: pydevd-pycharm; extra == "test"
32
+ Requires-Dist: tokenizers; extra == "test"
33
+ Requires-Dist: diskcache; extra == "test"
34
+ Requires-Dist: logfire; extra == "test"
35
+ Requires-Dist: contexttimer; extra == "test"
36
+ Requires-Dist: flet-video; extra == "test"
37
+ Requires-Dist: torchvision; extra == "test"
38
+ Requires-Dist: google-api-python-client; extra == "test"
39
+ Requires-Dist: google-auth; extra == "test"
40
+ Requires-Dist: pydantic-ai[logfire,openai]; extra == "test"
41
+ Requires-Dist: flet[all]; extra == "test"
42
+ Requires-Dist: uvicorn; extra == "test"
43
+ Requires-Dist: pydantic; extra == "test"
44
+ Requires-Dist: tabulate; extra == "test"
45
+ Requires-Dist: pymupdf4llm; extra == "test"
46
+ Requires-Dist: openai; extra == "test"
47
+ Requires-Dist: pandas; extra == "test"
48
+ Requires-Dist: faker; extra == "test"
49
+ Requires-Dist: pymupdf; extra == "test"
50
+ Requires-Dist: sre_yield; extra == "test"
51
+ Requires-Dist: flet-webview; extra == "test"
52
+ Requires-Dist: sentence_transformers; extra == "test"
53
+ Requires-Dist: torchaudio; extra == "test"
54
+ Requires-Dist: html2text; extra == "test"
55
+ Provides-Extra: yaml
56
+ Requires-Dist: pyyaml; extra == "yaml"
57
57
  Provides-Extra: logging
58
- Requires-Dist: logfire ; extra == 'logging'
59
- Requires-Dist: semver ; extra == 'logging'
60
- Provides-Extra: merging
61
- Requires-Dist: deepmerge ; extra == 'merging'
62
- Provides-Extra: metric
63
- Requires-Dist: openpyxl ; extra == 'metric'
64
- Requires-Dist: pandas ; extra == 'metric'
65
- Requires-Dist: tabulate ; extra == 'metric'
66
- Provides-Extra: netrc
67
- Requires-Dist: tinynetrc ; extra == 'netrc'
68
- Provides-Extra: openai.api
69
- Requires-Dist: openai ; extra == 'openai.api'
58
+ Requires-Dist: logfire; extra == "logging"
59
+ Requires-Dist: semver; extra == "logging"
70
60
  Provides-Extra: parallel
71
- Requires-Dist: bokeh ; extra == 'parallel'
72
- Requires-Dist: dask[bag] ; extra == 'parallel'
73
- Requires-Dist: distributed ; extra == 'parallel'
74
- Provides-Extra: pdf
75
- Requires-Dist: pydantic ; extra == 'pdf'
76
- Requires-Dist: pymupdf ; extra == 'pdf'
77
- Requires-Dist: pymupdf4llm ; extra == 'pdf'
61
+ Requires-Dist: dask[bag]; extra == "parallel"
62
+ Requires-Dist: distributed; extra == "parallel"
63
+ Requires-Dist: bokeh; extra == "parallel"
64
+ Provides-Extra: tokenization
65
+ Requires-Dist: tokenizers; extra == "tokenization"
66
+ Provides-Extra: augmentation
67
+ Requires-Dist: faker; extra == "augmentation"
68
+ Requires-Dist: sre_yield; extra == "augmentation"
78
69
  Provides-Extra: process
79
- Requires-Dist: logfire ; extra == 'process'
80
- Requires-Dist: semver ; extra == 'process'
70
+ Requires-Dist: logfire; extra == "process"
71
+ Requires-Dist: semver; extra == "process"
81
72
  Provides-Extra: profiling
82
- Requires-Dist: contexttimer ; extra == 'profiling'
83
- Provides-Extra: semantic
84
- Requires-Dist: openpyxl ; extra == 'semantic'
85
- Requires-Dist: pandas ; extra == 'semantic'
86
- Requires-Dist: sentence-transformers ; extra == 'semantic'
87
- Requires-Dist: tabulate ; extra == 'semantic'
88
- Provides-Extra: spaces
89
- Requires-Dist: tinynetrc ; extra == 'spaces'
90
- Provides-Extra: tabular
91
- Requires-Dist: openpyxl ; extra == 'tabular'
92
- Requires-Dist: pandas ; extra == 'tabular'
93
- Requires-Dist: tabulate ; extra == 'tabular'
94
- Provides-Extra: test
95
- Requires-Dist: Unidecode ; extra == 'test'
96
- Requires-Dist: bokeh ; extra == 'test'
97
- Requires-Dist: contexttimer ; extra == 'test'
98
- Requires-Dist: dask[bag] ; extra == 'test'
99
- Requires-Dist: deepmerge ; extra == 'test'
100
- Requires-Dist: diskcache ; extra == 'test'
101
- Requires-Dist: distributed ; extra == 'test'
102
- Requires-Dist: docker ; extra == 'test'
103
- Requires-Dist: faker ; extra == 'test'
104
- Requires-Dist: fastapi ; extra == 'test'
105
- Requires-Dist: flet-video ; extra == 'test'
106
- Requires-Dist: flet-webview ; extra == 'test'
107
- Requires-Dist: flet[all] ; extra == 'test'
108
- Requires-Dist: google-api-python-client ; extra == 'test'
109
- Requires-Dist: google-auth ; extra == 'test'
110
- Requires-Dist: google-auth-httplib2 ; extra == 'test'
111
- Requires-Dist: google-auth-oauthlib ; extra == 'test'
112
- Requires-Dist: html2text ; extra == 'test'
113
- Requires-Dist: huggingface-hub ; extra == 'test'
114
- Requires-Dist: json-repair ; extra == 'test'
115
- Requires-Dist: logfire ; extra == 'test'
116
- Requires-Dist: ollama ; extra == 'test'
117
- Requires-Dist: openai ; extra == 'test'
118
- Requires-Dist: openpyxl ; extra == 'test'
119
- Requires-Dist: pandas ; extra == 'test'
120
- Requires-Dist: peft ; extra == 'test'
121
- Requires-Dist: pydantic ; extra == 'test'
122
- Requires-Dist: pydantic-ai[logfire,openai] ; extra == 'test'
123
- Requires-Dist: pydevd-pycharm ; extra == 'test'
124
- Requires-Dist: pymupdf ; extra == 'test'
125
- Requires-Dist: pymupdf4llm ; extra == 'test'
126
- Requires-Dist: pytest-cov ; extra == 'test'
127
- Requires-Dist: pyyaml ; extra == 'test'
128
- Requires-Dist: semver ; extra == 'test'
129
- Requires-Dist: sentence-transformers ; extra == 'test'
130
- Requires-Dist: sre-yield ; extra == 'test'
131
- Requires-Dist: tabulate ; extra == 'test'
132
- Requires-Dist: tinynetrc ; extra == 'test'
133
- Requires-Dist: tokenizers ; extra == 'test'
134
- Requires-Dist: torchaudio ; extra == 'test'
135
- Requires-Dist: torchvision ; extra == 'test'
136
- Requires-Dist: transformers[sentencepiece] ; extra == 'test'
137
- Requires-Dist: uvicorn ; extra == 'test'
138
- Provides-Extra: tokenization
139
- Requires-Dist: tokenizers ; extra == 'tokenization'
73
+ Requires-Dist: contexttimer; extra == "profiling"
74
+ Provides-Extra: docker-api
75
+ Requires-Dist: docker; extra == "docker-api"
140
76
  Provides-Extra: unicode
141
- Requires-Dist: Unidecode ; extra == 'unicode'
77
+ Requires-Dist: Unidecode; extra == "unicode"
142
78
  Provides-Extra: version
143
- Requires-Dist: semver ; extra == 'version'
144
- Provides-Extra: yaml
145
- Requires-Dist: pyyaml ; extra == 'yaml'
79
+ Requires-Dist: semver; extra == "version"
80
+ Provides-Extra: spaces
81
+ Requires-Dist: tinynetrc; extra == "spaces"
82
+ Provides-Extra: netrc
83
+ Requires-Dist: tinynetrc; extra == "netrc"
84
+ Provides-Extra: hfh
85
+ Requires-Dist: huggingface_hub; extra == "hfh"
86
+ Provides-Extra: merging
87
+ Requires-Dist: deepmerge; extra == "merging"
88
+ Provides-Extra: api
89
+ Requires-Dist: fastapi; extra == "api"
90
+ Requires-Dist: uvicorn; extra == "api"
91
+ Requires-Dist: logfire; extra == "api"
92
+ Requires-Dist: semver; extra == "api"
93
+ Requires-Dist: pydantic; extra == "api"
94
+ Provides-Extra: ai
95
+ Requires-Dist: peft; extra == "ai"
96
+ Requires-Dist: transformers[sentencepiece]; extra == "ai"
97
+ Requires-Dist: torchvision; extra == "ai"
98
+ Requires-Dist: torchaudio; extra == "ai"
99
+ Requires-Dist: pydantic; extra == "ai"
100
+ Provides-Extra: dm
101
+ Requires-Dist: pydantic; extra == "dm"
102
+ Provides-Extra: openai-api
103
+ Requires-Dist: openai; extra == "openai-api"
104
+ Provides-Extra: ai-client
105
+ Requires-Dist: logfire; extra == "ai-client"
106
+ Requires-Dist: semver; extra == "ai-client"
107
+ Requires-Dist: pydantic; extra == "ai-client"
108
+ Requires-Dist: openai; extra == "ai-client"
109
+ Requires-Dist: pydantic-ai[logfire,openai]; extra == "ai-client"
110
+ Requires-Dist: ollama; extra == "ai-client"
111
+ Provides-Extra: json-fix
112
+ Requires-Dist: json_repair; extra == "json-fix"
113
+ Provides-Extra: semantic
114
+ Requires-Dist: sentence_transformers; extra == "semantic"
115
+ Requires-Dist: pandas; extra == "semantic"
116
+ Requires-Dist: tabulate; extra == "semantic"
117
+ Requires-Dist: openpyxl; extra == "semantic"
118
+ Provides-Extra: metric
119
+ Requires-Dist: pandas; extra == "metric"
120
+ Requires-Dist: tabulate; extra == "metric"
121
+ Requires-Dist: openpyxl; extra == "metric"
122
+ Provides-Extra: tabular
123
+ Requires-Dist: pandas; extra == "tabular"
124
+ Requires-Dist: tabulate; extra == "tabular"
125
+ Requires-Dist: openpyxl; extra == "tabular"
126
+ Provides-Extra: html
127
+ Requires-Dist: html2text; extra == "html"
128
+ Provides-Extra: interface
129
+ Requires-Dist: flet[all]; extra == "interface"
130
+ Requires-Dist: flet-video; extra == "interface"
131
+ Requires-Dist: flet-webview; extra == "interface"
132
+ Requires-Dist: pydantic; extra == "interface"
133
+ Provides-Extra: google-api
134
+ Requires-Dist: google-auth; extra == "google-api"
135
+ Requires-Dist: google-auth-oauthlib; extra == "google-api"
136
+ Requires-Dist: google-auth-httplib2; extra == "google-api"
137
+ Requires-Dist: google-api-python-client; extra == "google-api"
138
+ Provides-Extra: caching
139
+ Requires-Dist: diskcache; extra == "caching"
140
+ Provides-Extra: pdf
141
+ Requires-Dist: pymupdf; extra == "pdf"
142
+ Requires-Dist: pydantic; extra == "pdf"
143
+ Requires-Dist: pymupdf4llm; extra == "pdf"
144
+ Provides-Extra: debug
145
+ Requires-Dist: pydevd-pycharm; extra == "debug"
146
+ Dynamic: author
147
+ Dynamic: author-email
148
+ Dynamic: description
149
+ Dynamic: description-content-type
150
+ Dynamic: home-page
151
+ Dynamic: license
152
+ Dynamic: license-file
153
+ Dynamic: provides-extra
154
+ Dynamic: summary
146
155
 
147
156
  # `fmtr.tools`
148
157
 
@@ -43,7 +43,7 @@ fmtr/tools/tabular_tools.py,sha256=tpIpZzYku1HcJrHZJL6BC39LmN3WUWVhFbK2N7nDVmE,1
43
43
  fmtr/tools/tokenization_tools.py,sha256=9FP5vgPufWv0XA961eVKObFll0d_2mM0W3ut3rtZyeo,4329
44
44
  fmtr/tools/tools.py,sha256=xnfUrOnrT4OxFYez6vV5tAhydzCICJFiGVnviiZDEQo,796
45
45
  fmtr/tools/unicode_tools.py,sha256=yS_9wpu8ogNoiIL7s1G_8bETFFO_YQlo4LNPv1NLDeY,52
46
- fmtr/tools/version,sha256=sOToo55hxhnwyn90ru8LQoJIOtiDp6Wvn8_KEB9wC0w,6
46
+ fmtr/tools/version,sha256=PSXMF35J29qA7yxbAYVCFS2KwVCgo1LjZ-WN0QfBZFY,6
47
47
  fmtr/tools/version_tools.py,sha256=axzzHBS9V1n6YuSacsDKG3VfAvRqR8qr6aENCibR8vs,1248
48
48
  fmtr/tools/yaml_tools.py,sha256=Ol43ZwbnSXGnn1K98Uxx61KPGSqfC4axE-X2q1LKMwk,349
49
49
  fmtr/tools/ai_tools/__init__.py,sha256=JZrLuOFNV1A3wvJgonxOgz_4WS-7MfCuowGWA5uYCjs,372
@@ -57,9 +57,9 @@ fmtr/tools/tests/test_environment.py,sha256=iHaiMQfECYZPkPKwfuIZV9uHuWe3aE-p_dN_
57
57
  fmtr/tools/tests/test_json.py,sha256=IeSP4ziPvRcmS8kq7k9tHonC9rN5YYq9GSNT2ul6Msk,287
58
58
  fmtr/tools/tests/test_path.py,sha256=AkZQa6_8BQ-VaCyL_J-iKmdf2ZaM-xFYR37Kun3k4_g,2188
59
59
  fmtr/tools/tests/test_yaml.py,sha256=jc0TwwKu9eC0LvFGNMERdgBue591xwLxYXFbtsRwXVM,287
60
- fmtr.tools-1.0.54.dist-info/LICENSE,sha256=FW9aa6vVN5IjRQWLT43hs4_koYSmpcbIovlKeAJ0_cI,10757
61
- fmtr.tools-1.0.54.dist-info/METADATA,sha256=ZDGuHZCut80jtW-g5xM65BhSvakwjiW8NEkhjWmGZsg,13978
62
- fmtr.tools-1.0.54.dist-info/WHEEL,sha256=oiQVh_5PnQM0E3gPdiz09WCNmwiHDMaGer_elqB3coM,92
63
- fmtr.tools-1.0.54.dist-info/entry_points.txt,sha256=Zmeyls-zo5S99SlKUmsy9ULUNmk-4B9WQCEjuPIH0Yw,142
64
- fmtr.tools-1.0.54.dist-info/top_level.txt,sha256=t5341a8ii3n4RFizwTeXGmcq_pf4GqL1h9ylE5LIWRk,12
65
- fmtr.tools-1.0.54.dist-info/RECORD,,
60
+ fmtr_tools-1.0.55.dist-info/licenses/LICENSE,sha256=FW9aa6vVN5IjRQWLT43hs4_koYSmpcbIovlKeAJ0_cI,10757
61
+ fmtr_tools-1.0.55.dist-info/METADATA,sha256=7JEET3FilYkEqJsZePMIDXim5sbdAzwrfsyHzC3aVpw,14065
62
+ fmtr_tools-1.0.55.dist-info/WHEEL,sha256=GHB6lJx2juba1wDgXDNlMTyM13ckjBMKf-OnwgKOCtA,91
63
+ fmtr_tools-1.0.55.dist-info/entry_points.txt,sha256=Zmeyls-zo5S99SlKUmsy9ULUNmk-4B9WQCEjuPIH0Yw,142
64
+ fmtr_tools-1.0.55.dist-info/top_level.txt,sha256=t5341a8ii3n4RFizwTeXGmcq_pf4GqL1h9ylE5LIWRk,12
65
+ fmtr_tools-1.0.55.dist-info/RECORD,,
@@ -1,5 +1,5 @@
1
1
  Wheel-Version: 1.0
2
- Generator: bdist_wheel (0.42.0)
2
+ Generator: setuptools (80.3.0)
3
3
  Root-Is-Purelib: true
4
4
  Tag: py3-none-any
5
5