fmtr.tools 1.3.67__tar.gz → 1.3.68__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.
- {fmtr_tools-1.3.67 → fmtr_tools-1.3.68}/PKG-INFO +48 -48
- {fmtr_tools-1.3.67 → fmtr_tools-1.3.68}/fmtr/tools/data_modelling_tools.py +8 -5
- fmtr_tools-1.3.68/fmtr/tools/version +1 -0
- {fmtr_tools-1.3.67 → fmtr_tools-1.3.68}/fmtr.tools.egg-info/PKG-INFO +48 -48
- fmtr_tools-1.3.67/fmtr/tools/version +0 -1
- {fmtr_tools-1.3.67 → fmtr_tools-1.3.68}/LICENSE +0 -0
- {fmtr_tools-1.3.67 → fmtr_tools-1.3.68}/README.md +0 -0
- {fmtr_tools-1.3.67 → fmtr_tools-1.3.68}/fmtr/tools/__init__.py +0 -0
- {fmtr_tools-1.3.67 → fmtr_tools-1.3.68}/fmtr/tools/ai_tools/__init__.py +0 -0
- {fmtr_tools-1.3.67 → fmtr_tools-1.3.68}/fmtr/tools/ai_tools/agentic_tools.py +0 -0
- {fmtr_tools-1.3.67 → fmtr_tools-1.3.68}/fmtr/tools/ai_tools/inference_tools.py +0 -0
- {fmtr_tools-1.3.67 → fmtr_tools-1.3.68}/fmtr/tools/api_tools.py +0 -0
- {fmtr_tools-1.3.67 → fmtr_tools-1.3.68}/fmtr/tools/async_tools.py +0 -0
- {fmtr_tools-1.3.67 → fmtr_tools-1.3.68}/fmtr/tools/augmentation_tools.py +0 -0
- {fmtr_tools-1.3.67 → fmtr_tools-1.3.68}/fmtr/tools/caching_tools.py +0 -0
- {fmtr_tools-1.3.67 → fmtr_tools-1.3.68}/fmtr/tools/constants.py +0 -0
- {fmtr_tools-1.3.67 → fmtr_tools-1.3.68}/fmtr/tools/context_tools.py +0 -0
- {fmtr_tools-1.3.67 → fmtr_tools-1.3.68}/fmtr/tools/database_tools/__init__.py +0 -0
- {fmtr_tools-1.3.67 → fmtr_tools-1.3.68}/fmtr/tools/database_tools/document.py +0 -0
- {fmtr_tools-1.3.67 → fmtr_tools-1.3.68}/fmtr/tools/dataclass_tools.py +0 -0
- {fmtr_tools-1.3.67 → fmtr_tools-1.3.68}/fmtr/tools/datatype_tools.py +0 -0
- {fmtr_tools-1.3.67 → fmtr_tools-1.3.68}/fmtr/tools/datetime_tools.py +0 -0
- {fmtr_tools-1.3.67 → fmtr_tools-1.3.68}/fmtr/tools/debugging_tools.py +0 -0
- {fmtr_tools-1.3.67 → fmtr_tools-1.3.68}/fmtr/tools/dns_tools/__init__.py +0 -0
- {fmtr_tools-1.3.67 → fmtr_tools-1.3.68}/fmtr/tools/dns_tools/client.py +0 -0
- {fmtr_tools-1.3.67 → fmtr_tools-1.3.68}/fmtr/tools/dns_tools/dm.py +0 -0
- {fmtr_tools-1.3.67 → fmtr_tools-1.3.68}/fmtr/tools/dns_tools/proxy.py +0 -0
- {fmtr_tools-1.3.67 → fmtr_tools-1.3.68}/fmtr/tools/dns_tools/server.py +0 -0
- {fmtr_tools-1.3.67 → fmtr_tools-1.3.68}/fmtr/tools/docker_tools/__init__.py +0 -0
- {fmtr_tools-1.3.67 → fmtr_tools-1.3.68}/fmtr/tools/entrypoints/__init__.py +0 -0
- {fmtr_tools-1.3.67 → fmtr_tools-1.3.68}/fmtr/tools/entrypoints/cache_hfh.py +0 -0
- {fmtr_tools-1.3.67 → fmtr_tools-1.3.68}/fmtr/tools/entrypoints/ep_test.py +0 -0
- {fmtr_tools-1.3.67 → fmtr_tools-1.3.68}/fmtr/tools/entrypoints/install_yamlscript.py +0 -0
- {fmtr_tools-1.3.67 → fmtr_tools-1.3.68}/fmtr/tools/entrypoints/remote_debug_test.py +0 -0
- {fmtr_tools-1.3.67 → fmtr_tools-1.3.68}/fmtr/tools/entrypoints/shell_debug.py +0 -0
- {fmtr_tools-1.3.67 → fmtr_tools-1.3.68}/fmtr/tools/environment_tools.py +0 -0
- {fmtr_tools-1.3.67 → fmtr_tools-1.3.68}/fmtr/tools/function_tools.py +0 -0
- {fmtr_tools-1.3.67 → fmtr_tools-1.3.68}/fmtr/tools/google_api_tools.py +0 -0
- {fmtr_tools-1.3.67 → fmtr_tools-1.3.68}/fmtr/tools/hash_tools.py +0 -0
- {fmtr_tools-1.3.67 → fmtr_tools-1.3.68}/fmtr/tools/hfh_tools.py +0 -0
- {fmtr_tools-1.3.67 → fmtr_tools-1.3.68}/fmtr/tools/html_tools.py +0 -0
- {fmtr_tools-1.3.67 → fmtr_tools-1.3.68}/fmtr/tools/http_tools.py +0 -0
- {fmtr_tools-1.3.67 → fmtr_tools-1.3.68}/fmtr/tools/import_tools.py +0 -0
- {fmtr_tools-1.3.67 → fmtr_tools-1.3.68}/fmtr/tools/inherit_tools.py +0 -0
- {fmtr_tools-1.3.67 → fmtr_tools-1.3.68}/fmtr/tools/inspection_tools.py +0 -0
- {fmtr_tools-1.3.67 → fmtr_tools-1.3.68}/fmtr/tools/interface_tools/__init__.py +0 -0
- {fmtr_tools-1.3.67 → fmtr_tools-1.3.68}/fmtr/tools/interface_tools/context.py +0 -0
- {fmtr_tools-1.3.67 → fmtr_tools-1.3.68}/fmtr/tools/interface_tools/controls.py +0 -0
- {fmtr_tools-1.3.67 → fmtr_tools-1.3.68}/fmtr/tools/interface_tools/interface_tools.py +0 -0
- {fmtr_tools-1.3.67 → fmtr_tools-1.3.68}/fmtr/tools/iterator_tools.py +0 -0
- {fmtr_tools-1.3.67 → fmtr_tools-1.3.68}/fmtr/tools/json_fix_tools.py +0 -0
- {fmtr_tools-1.3.67 → fmtr_tools-1.3.68}/fmtr/tools/json_tools.py +0 -0
- {fmtr_tools-1.3.67 → fmtr_tools-1.3.68}/fmtr/tools/logging_tools.py +0 -0
- {fmtr_tools-1.3.67 → fmtr_tools-1.3.68}/fmtr/tools/merging_tools.py +0 -0
- {fmtr_tools-1.3.67 → fmtr_tools-1.3.68}/fmtr/tools/metric_tools.py +0 -0
- {fmtr_tools-1.3.67 → fmtr_tools-1.3.68}/fmtr/tools/name_tools.py +0 -0
- {fmtr_tools-1.3.67 → fmtr_tools-1.3.68}/fmtr/tools/netrc_tools.py +0 -0
- {fmtr_tools-1.3.67 → fmtr_tools-1.3.68}/fmtr/tools/openai_tools.py +0 -0
- {fmtr_tools-1.3.67 → fmtr_tools-1.3.68}/fmtr/tools/packaging_tools.py +0 -0
- {fmtr_tools-1.3.67 → fmtr_tools-1.3.68}/fmtr/tools/parallel_tools.py +0 -0
- {fmtr_tools-1.3.67 → fmtr_tools-1.3.68}/fmtr/tools/path_tools/__init__.py +0 -0
- {fmtr_tools-1.3.67 → fmtr_tools-1.3.68}/fmtr/tools/path_tools/app_path_tools.py +0 -0
- {fmtr_tools-1.3.67 → fmtr_tools-1.3.68}/fmtr/tools/path_tools/path_tools.py +0 -0
- {fmtr_tools-1.3.67 → fmtr_tools-1.3.68}/fmtr/tools/path_tools/type_path_tools.py +0 -0
- {fmtr_tools-1.3.67 → fmtr_tools-1.3.68}/fmtr/tools/pattern_tools.py +0 -0
- {fmtr_tools-1.3.67 → fmtr_tools-1.3.68}/fmtr/tools/pdf_tools.py +0 -0
- {fmtr_tools-1.3.67 → fmtr_tools-1.3.68}/fmtr/tools/platform_tools.py +0 -0
- {fmtr_tools-1.3.67 → fmtr_tools-1.3.68}/fmtr/tools/process_tools.py +0 -0
- {fmtr_tools-1.3.67 → fmtr_tools-1.3.68}/fmtr/tools/profiling_tools.py +0 -0
- {fmtr_tools-1.3.67 → fmtr_tools-1.3.68}/fmtr/tools/random_tools.py +0 -0
- {fmtr_tools-1.3.67 → fmtr_tools-1.3.68}/fmtr/tools/semantic_tools.py +0 -0
- {fmtr_tools-1.3.67 → fmtr_tools-1.3.68}/fmtr/tools/settings_tools.py +0 -0
- {fmtr_tools-1.3.67 → fmtr_tools-1.3.68}/fmtr/tools/setup_tools/__init__.py +0 -0
- {fmtr_tools-1.3.67 → fmtr_tools-1.3.68}/fmtr/tools/setup_tools/setup_tools.py +0 -0
- {fmtr_tools-1.3.67 → fmtr_tools-1.3.68}/fmtr/tools/spaces_tools.py +0 -0
- {fmtr_tools-1.3.67 → fmtr_tools-1.3.68}/fmtr/tools/string_tools.py +0 -0
- {fmtr_tools-1.3.67 → fmtr_tools-1.3.68}/fmtr/tools/tabular_tools.py +0 -0
- {fmtr_tools-1.3.67 → fmtr_tools-1.3.68}/fmtr/tools/tests/__init__.py +0 -0
- {fmtr_tools-1.3.67 → fmtr_tools-1.3.68}/fmtr/tools/tests/conftest.py +0 -0
- {fmtr_tools-1.3.67 → fmtr_tools-1.3.68}/fmtr/tools/tests/helpers.py +0 -0
- {fmtr_tools-1.3.67 → fmtr_tools-1.3.68}/fmtr/tools/tests/test_datatype.py +0 -0
- {fmtr_tools-1.3.67 → fmtr_tools-1.3.68}/fmtr/tools/tests/test_environment.py +0 -0
- {fmtr_tools-1.3.67 → fmtr_tools-1.3.68}/fmtr/tools/tests/test_json.py +0 -0
- {fmtr_tools-1.3.67 → fmtr_tools-1.3.68}/fmtr/tools/tests/test_path.py +0 -0
- {fmtr_tools-1.3.67 → fmtr_tools-1.3.68}/fmtr/tools/tests/test_yaml.py +0 -0
- {fmtr_tools-1.3.67 → fmtr_tools-1.3.68}/fmtr/tools/tokenization_tools.py +0 -0
- {fmtr_tools-1.3.67 → fmtr_tools-1.3.68}/fmtr/tools/tools.py +0 -0
- {fmtr_tools-1.3.67 → fmtr_tools-1.3.68}/fmtr/tools/unicode_tools.py +0 -0
- {fmtr_tools-1.3.67 → fmtr_tools-1.3.68}/fmtr/tools/version_tools/__init__.py +0 -0
- {fmtr_tools-1.3.67 → fmtr_tools-1.3.68}/fmtr/tools/version_tools/version_tools.py +0 -0
- {fmtr_tools-1.3.67 → fmtr_tools-1.3.68}/fmtr/tools/webhook_tools.py +0 -0
- {fmtr_tools-1.3.67 → fmtr_tools-1.3.68}/fmtr/tools/yaml_tools.py +0 -0
- {fmtr_tools-1.3.67 → fmtr_tools-1.3.68}/fmtr.tools.egg-info/SOURCES.txt +0 -0
- {fmtr_tools-1.3.67 → fmtr_tools-1.3.68}/fmtr.tools.egg-info/dependency_links.txt +0 -0
- {fmtr_tools-1.3.67 → fmtr_tools-1.3.68}/fmtr.tools.egg-info/entry_points.txt +0 -0
- {fmtr_tools-1.3.67 → fmtr_tools-1.3.68}/fmtr.tools.egg-info/requires.txt +47 -47
- {fmtr_tools-1.3.67 → fmtr_tools-1.3.68}/fmtr.tools.egg-info/top_level.txt +0 -0
- {fmtr_tools-1.3.67 → fmtr_tools-1.3.68}/pyproject.toml +0 -0
- {fmtr_tools-1.3.67 → fmtr_tools-1.3.68}/setup.cfg +0 -0
- {fmtr_tools-1.3.67 → fmtr_tools-1.3.68}/setup.py +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: fmtr.tools
|
|
3
|
-
Version: 1.3.
|
|
3
|
+
Version: 1.3.68
|
|
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
|
|
@@ -168,68 +168,68 @@ Provides-Extra: db-document
|
|
|
168
168
|
Requires-Dist: beanie[odm]; extra == "db-document"
|
|
169
169
|
Requires-Dist: motor; extra == "db-document"
|
|
170
170
|
Provides-Extra: all
|
|
171
|
-
Requires-Dist:
|
|
172
|
-
Requires-Dist:
|
|
171
|
+
Requires-Dist: flet-webview; extra == "all"
|
|
172
|
+
Requires-Dist: sentence_transformers; extra == "all"
|
|
173
|
+
Requires-Dist: appdirs; extra == "all"
|
|
173
174
|
Requires-Dist: python-on-whales; extra == "all"
|
|
174
|
-
Requires-Dist: flet[all]; extra == "all"
|
|
175
175
|
Requires-Dist: dnspython[doh]; extra == "all"
|
|
176
|
-
Requires-Dist:
|
|
177
|
-
Requires-Dist: pytest-cov; extra == "all"
|
|
178
|
-
Requires-Dist: bokeh; extra == "all"
|
|
179
|
-
Requires-Dist: faker; extra == "all"
|
|
180
|
-
Requires-Dist: pydevd-pycharm~=251.25410.159; extra == "all"
|
|
181
|
-
Requires-Dist: peft; extra == "all"
|
|
182
|
-
Requires-Dist: Unidecode; extra == "all"
|
|
176
|
+
Requires-Dist: motor; extra == "all"
|
|
183
177
|
Requires-Dist: pycountry; extra == "all"
|
|
184
|
-
Requires-Dist: huggingface_hub; extra == "all"
|
|
185
|
-
Requires-Dist: flet-webview; extra == "all"
|
|
186
|
-
Requires-Dist: semver; extra == "all"
|
|
187
|
-
Requires-Dist: torchaudio; extra == "all"
|
|
188
|
-
Requires-Dist: google-api-python-client; extra == "all"
|
|
189
|
-
Requires-Dist: beanie[odm]; extra == "all"
|
|
190
|
-
Requires-Dist: playwright; extra == "all"
|
|
191
|
-
Requires-Dist: filetype; extra == "all"
|
|
192
|
-
Requires-Dist: html2text; extra == "all"
|
|
193
|
-
Requires-Dist: logfire; extra == "all"
|
|
194
|
-
Requires-Dist: pydantic-extra-types; extra == "all"
|
|
195
|
-
Requires-Dist: pymupdf; extra == "all"
|
|
196
|
-
Requires-Dist: pydantic-ai[logfire,openai]; extra == "all"
|
|
197
|
-
Requires-Dist: sentence_transformers; extra == "all"
|
|
198
|
-
Requires-Dist: deepmerge; extra == "all"
|
|
199
|
-
Requires-Dist: ollama; extra == "all"
|
|
200
|
-
Requires-Dist: odfpy; extra == "all"
|
|
201
178
|
Requires-Dist: pyyaml; extra == "all"
|
|
202
|
-
Requires-Dist:
|
|
179
|
+
Requires-Dist: tokenizers; extra == "all"
|
|
203
180
|
Requires-Dist: logfire[fastapi]; extra == "all"
|
|
204
|
-
Requires-Dist: motor; extra == "all"
|
|
205
181
|
Requires-Dist: json_repair; extra == "all"
|
|
206
|
-
Requires-Dist: tokenizers; extra == "all"
|
|
207
|
-
Requires-Dist: contexttimer; extra == "all"
|
|
208
182
|
Requires-Dist: httpx; extra == "all"
|
|
209
|
-
Requires-Dist: appdirs; extra == "all"
|
|
210
|
-
Requires-Dist: yamlscript; extra == "all"
|
|
211
|
-
Requires-Dist: distributed; extra == "all"
|
|
212
|
-
Requires-Dist: cachetools; extra == "all"
|
|
213
183
|
Requires-Dist: google-auth; extra == "all"
|
|
214
|
-
Requires-Dist:
|
|
184
|
+
Requires-Dist: pydantic-extra-types; extra == "all"
|
|
185
|
+
Requires-Dist: beanie[odm]; extra == "all"
|
|
186
|
+
Requires-Dist: Unidecode; extra == "all"
|
|
187
|
+
Requires-Dist: playwright; extra == "all"
|
|
188
|
+
Requires-Dist: flet-video; extra == "all"
|
|
189
|
+
Requires-Dist: pytest-cov; extra == "all"
|
|
190
|
+
Requires-Dist: semver; extra == "all"
|
|
215
191
|
Requires-Dist: pandas; extra == "all"
|
|
216
|
-
Requires-Dist:
|
|
192
|
+
Requires-Dist: dask[bag]; extra == "all"
|
|
193
|
+
Requires-Dist: tinynetrc; extra == "all"
|
|
194
|
+
Requires-Dist: cachetools; extra == "all"
|
|
195
|
+
Requires-Dist: logfire; extra == "all"
|
|
196
|
+
Requires-Dist: google-auth-oauthlib; extra == "all"
|
|
197
|
+
Requires-Dist: pydantic-settings; extra == "all"
|
|
217
198
|
Requires-Dist: setuptools; extra == "all"
|
|
218
|
-
Requires-Dist:
|
|
199
|
+
Requires-Dist: transformers[sentencepiece]; extra == "all"
|
|
200
|
+
Requires-Dist: pydevd-pycharm~=251.25410.159; extra == "all"
|
|
201
|
+
Requires-Dist: peft; extra == "all"
|
|
219
202
|
Requires-Dist: pymupdf4llm; extra == "all"
|
|
220
|
-
Requires-Dist:
|
|
221
|
-
Requires-Dist:
|
|
222
|
-
Requires-Dist:
|
|
203
|
+
Requires-Dist: bokeh; extra == "all"
|
|
204
|
+
Requires-Dist: openpyxl; extra == "all"
|
|
205
|
+
Requires-Dist: odfpy; extra == "all"
|
|
206
|
+
Requires-Dist: google-auth-httplib2; extra == "all"
|
|
207
|
+
Requires-Dist: huggingface_hub; extra == "all"
|
|
208
|
+
Requires-Dist: ollama; extra == "all"
|
|
209
|
+
Requires-Dist: google-api-python-client; extra == "all"
|
|
210
|
+
Requires-Dist: diskcache; extra == "all"
|
|
211
|
+
Requires-Dist: pymupdf; extra == "all"
|
|
212
|
+
Requires-Dist: flet[all]; extra == "all"
|
|
223
213
|
Requires-Dist: deepdiff; extra == "all"
|
|
224
|
-
Requires-Dist:
|
|
214
|
+
Requires-Dist: deepmerge; extra == "all"
|
|
215
|
+
Requires-Dist: logfire[httpx]; extra == "all"
|
|
216
|
+
Requires-Dist: contexttimer; extra == "all"
|
|
217
|
+
Requires-Dist: sre_yield; extra == "all"
|
|
225
218
|
Requires-Dist: uvicorn[standard]; extra == "all"
|
|
226
|
-
Requires-Dist: openai; extra == "all"
|
|
227
219
|
Requires-Dist: fastapi; extra == "all"
|
|
228
|
-
Requires-Dist:
|
|
229
|
-
Requires-Dist:
|
|
220
|
+
Requires-Dist: regex; extra == "all"
|
|
221
|
+
Requires-Dist: openai; extra == "all"
|
|
222
|
+
Requires-Dist: httpx_retries; extra == "all"
|
|
230
223
|
Requires-Dist: torchvision; extra == "all"
|
|
231
|
-
Requires-Dist:
|
|
232
|
-
Requires-Dist:
|
|
224
|
+
Requires-Dist: yamlscript; extra == "all"
|
|
225
|
+
Requires-Dist: pydantic; extra == "all"
|
|
226
|
+
Requires-Dist: html2text; extra == "all"
|
|
227
|
+
Requires-Dist: torchaudio; extra == "all"
|
|
228
|
+
Requires-Dist: filetype; extra == "all"
|
|
229
|
+
Requires-Dist: faker; extra == "all"
|
|
230
|
+
Requires-Dist: tabulate; extra == "all"
|
|
231
|
+
Requires-Dist: pydantic-ai[logfire,openai]; extra == "all"
|
|
232
|
+
Requires-Dist: distributed; extra == "all"
|
|
233
233
|
Dynamic: author
|
|
234
234
|
Dynamic: author-email
|
|
235
235
|
Dynamic: description
|
|
@@ -21,13 +21,14 @@ class Field(FieldInfo):
|
|
|
21
21
|
"""
|
|
22
22
|
NAME = Auto
|
|
23
23
|
ANNOTATION = Empty
|
|
24
|
+
EXCLUDE = False
|
|
24
25
|
DEFAULT = Auto
|
|
25
26
|
FILLS = None
|
|
26
27
|
DESCRIPTION = None
|
|
27
28
|
TITLE = Auto
|
|
28
29
|
CONFIG = None
|
|
29
30
|
|
|
30
|
-
def __init__(self, annotation=Empty, default=Empty, description=None, title=None, fills=None, **kwargs):
|
|
31
|
+
def __init__(self, annotation=Empty, default=Empty, description=None, title=None, fills=None, exclude=None, **kwargs):
|
|
31
32
|
"""
|
|
32
33
|
|
|
33
34
|
Infer default from type annotation, if enabled, use class/argument fills to create titles/descriptions, etc.
|
|
@@ -37,9 +38,12 @@ class Field(FieldInfo):
|
|
|
37
38
|
fills_super = getattr(super(), 'FILLS', None)
|
|
38
39
|
self.fills = (fills_super or {}) | (self.FILLS or {}) | (fills or {})
|
|
39
40
|
|
|
41
|
+
exclude = exclude if exclude is not None else self.EXCLUDE
|
|
42
|
+
|
|
40
43
|
self.annotation = self.ANNOTATION if annotation is Empty else annotation
|
|
41
44
|
if self.annotation is Empty:
|
|
42
45
|
raise ValueError("Annotation must be specified.")
|
|
46
|
+
annotation = self.annotation
|
|
43
47
|
|
|
44
48
|
default = self.get_default_auto(default)
|
|
45
49
|
if default is Required:
|
|
@@ -49,7 +53,8 @@ class Field(FieldInfo):
|
|
|
49
53
|
title = self.get_title_auto(title)
|
|
50
54
|
kwargs |= (self.CONFIG or {})
|
|
51
55
|
|
|
52
|
-
super().__init__(default=default, title=title, description=description, **kwargs)
|
|
56
|
+
super().__init__(default=default, title=title, description=description, exclude=exclude, **kwargs)
|
|
57
|
+
self.annotation = annotation
|
|
53
58
|
|
|
54
59
|
@classmethod
|
|
55
60
|
def get_name_auto(cls) -> str:
|
|
@@ -215,9 +220,7 @@ class Base(BaseModel, MixinFromJson):
|
|
|
215
220
|
field = field()
|
|
216
221
|
|
|
217
222
|
setattr(cls, name, field)
|
|
218
|
-
|
|
219
|
-
annotation = field.annotation
|
|
220
|
-
cls.__annotations__[name] = annotation
|
|
223
|
+
cls.__annotations__[name] = field.annotation
|
|
221
224
|
|
|
222
225
|
def to_df(self, name_value='value'):
|
|
223
226
|
"""
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
1.3.68
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: fmtr.tools
|
|
3
|
-
Version: 1.3.
|
|
3
|
+
Version: 1.3.68
|
|
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
|
|
@@ -168,68 +168,68 @@ Provides-Extra: db-document
|
|
|
168
168
|
Requires-Dist: beanie[odm]; extra == "db-document"
|
|
169
169
|
Requires-Dist: motor; extra == "db-document"
|
|
170
170
|
Provides-Extra: all
|
|
171
|
-
Requires-Dist:
|
|
172
|
-
Requires-Dist:
|
|
171
|
+
Requires-Dist: flet-webview; extra == "all"
|
|
172
|
+
Requires-Dist: sentence_transformers; extra == "all"
|
|
173
|
+
Requires-Dist: appdirs; extra == "all"
|
|
173
174
|
Requires-Dist: python-on-whales; extra == "all"
|
|
174
|
-
Requires-Dist: flet[all]; extra == "all"
|
|
175
175
|
Requires-Dist: dnspython[doh]; extra == "all"
|
|
176
|
-
Requires-Dist:
|
|
177
|
-
Requires-Dist: pytest-cov; extra == "all"
|
|
178
|
-
Requires-Dist: bokeh; extra == "all"
|
|
179
|
-
Requires-Dist: faker; extra == "all"
|
|
180
|
-
Requires-Dist: pydevd-pycharm~=251.25410.159; extra == "all"
|
|
181
|
-
Requires-Dist: peft; extra == "all"
|
|
182
|
-
Requires-Dist: Unidecode; extra == "all"
|
|
176
|
+
Requires-Dist: motor; extra == "all"
|
|
183
177
|
Requires-Dist: pycountry; extra == "all"
|
|
184
|
-
Requires-Dist: huggingface_hub; extra == "all"
|
|
185
|
-
Requires-Dist: flet-webview; extra == "all"
|
|
186
|
-
Requires-Dist: semver; extra == "all"
|
|
187
|
-
Requires-Dist: torchaudio; extra == "all"
|
|
188
|
-
Requires-Dist: google-api-python-client; extra == "all"
|
|
189
|
-
Requires-Dist: beanie[odm]; extra == "all"
|
|
190
|
-
Requires-Dist: playwright; extra == "all"
|
|
191
|
-
Requires-Dist: filetype; extra == "all"
|
|
192
|
-
Requires-Dist: html2text; extra == "all"
|
|
193
|
-
Requires-Dist: logfire; extra == "all"
|
|
194
|
-
Requires-Dist: pydantic-extra-types; extra == "all"
|
|
195
|
-
Requires-Dist: pymupdf; extra == "all"
|
|
196
|
-
Requires-Dist: pydantic-ai[logfire,openai]; extra == "all"
|
|
197
|
-
Requires-Dist: sentence_transformers; extra == "all"
|
|
198
|
-
Requires-Dist: deepmerge; extra == "all"
|
|
199
|
-
Requires-Dist: ollama; extra == "all"
|
|
200
|
-
Requires-Dist: odfpy; extra == "all"
|
|
201
178
|
Requires-Dist: pyyaml; extra == "all"
|
|
202
|
-
Requires-Dist:
|
|
179
|
+
Requires-Dist: tokenizers; extra == "all"
|
|
203
180
|
Requires-Dist: logfire[fastapi]; extra == "all"
|
|
204
|
-
Requires-Dist: motor; extra == "all"
|
|
205
181
|
Requires-Dist: json_repair; extra == "all"
|
|
206
|
-
Requires-Dist: tokenizers; extra == "all"
|
|
207
|
-
Requires-Dist: contexttimer; extra == "all"
|
|
208
182
|
Requires-Dist: httpx; extra == "all"
|
|
209
|
-
Requires-Dist: appdirs; extra == "all"
|
|
210
|
-
Requires-Dist: yamlscript; extra == "all"
|
|
211
|
-
Requires-Dist: distributed; extra == "all"
|
|
212
|
-
Requires-Dist: cachetools; extra == "all"
|
|
213
183
|
Requires-Dist: google-auth; extra == "all"
|
|
214
|
-
Requires-Dist:
|
|
184
|
+
Requires-Dist: pydantic-extra-types; extra == "all"
|
|
185
|
+
Requires-Dist: beanie[odm]; extra == "all"
|
|
186
|
+
Requires-Dist: Unidecode; extra == "all"
|
|
187
|
+
Requires-Dist: playwright; extra == "all"
|
|
188
|
+
Requires-Dist: flet-video; extra == "all"
|
|
189
|
+
Requires-Dist: pytest-cov; extra == "all"
|
|
190
|
+
Requires-Dist: semver; extra == "all"
|
|
215
191
|
Requires-Dist: pandas; extra == "all"
|
|
216
|
-
Requires-Dist:
|
|
192
|
+
Requires-Dist: dask[bag]; extra == "all"
|
|
193
|
+
Requires-Dist: tinynetrc; extra == "all"
|
|
194
|
+
Requires-Dist: cachetools; extra == "all"
|
|
195
|
+
Requires-Dist: logfire; extra == "all"
|
|
196
|
+
Requires-Dist: google-auth-oauthlib; extra == "all"
|
|
197
|
+
Requires-Dist: pydantic-settings; extra == "all"
|
|
217
198
|
Requires-Dist: setuptools; extra == "all"
|
|
218
|
-
Requires-Dist:
|
|
199
|
+
Requires-Dist: transformers[sentencepiece]; extra == "all"
|
|
200
|
+
Requires-Dist: pydevd-pycharm~=251.25410.159; extra == "all"
|
|
201
|
+
Requires-Dist: peft; extra == "all"
|
|
219
202
|
Requires-Dist: pymupdf4llm; extra == "all"
|
|
220
|
-
Requires-Dist:
|
|
221
|
-
Requires-Dist:
|
|
222
|
-
Requires-Dist:
|
|
203
|
+
Requires-Dist: bokeh; extra == "all"
|
|
204
|
+
Requires-Dist: openpyxl; extra == "all"
|
|
205
|
+
Requires-Dist: odfpy; extra == "all"
|
|
206
|
+
Requires-Dist: google-auth-httplib2; extra == "all"
|
|
207
|
+
Requires-Dist: huggingface_hub; extra == "all"
|
|
208
|
+
Requires-Dist: ollama; extra == "all"
|
|
209
|
+
Requires-Dist: google-api-python-client; extra == "all"
|
|
210
|
+
Requires-Dist: diskcache; extra == "all"
|
|
211
|
+
Requires-Dist: pymupdf; extra == "all"
|
|
212
|
+
Requires-Dist: flet[all]; extra == "all"
|
|
223
213
|
Requires-Dist: deepdiff; extra == "all"
|
|
224
|
-
Requires-Dist:
|
|
214
|
+
Requires-Dist: deepmerge; extra == "all"
|
|
215
|
+
Requires-Dist: logfire[httpx]; extra == "all"
|
|
216
|
+
Requires-Dist: contexttimer; extra == "all"
|
|
217
|
+
Requires-Dist: sre_yield; extra == "all"
|
|
225
218
|
Requires-Dist: uvicorn[standard]; extra == "all"
|
|
226
|
-
Requires-Dist: openai; extra == "all"
|
|
227
219
|
Requires-Dist: fastapi; extra == "all"
|
|
228
|
-
Requires-Dist:
|
|
229
|
-
Requires-Dist:
|
|
220
|
+
Requires-Dist: regex; extra == "all"
|
|
221
|
+
Requires-Dist: openai; extra == "all"
|
|
222
|
+
Requires-Dist: httpx_retries; extra == "all"
|
|
230
223
|
Requires-Dist: torchvision; extra == "all"
|
|
231
|
-
Requires-Dist:
|
|
232
|
-
Requires-Dist:
|
|
224
|
+
Requires-Dist: yamlscript; extra == "all"
|
|
225
|
+
Requires-Dist: pydantic; extra == "all"
|
|
226
|
+
Requires-Dist: html2text; extra == "all"
|
|
227
|
+
Requires-Dist: torchaudio; extra == "all"
|
|
228
|
+
Requires-Dist: filetype; extra == "all"
|
|
229
|
+
Requires-Dist: faker; extra == "all"
|
|
230
|
+
Requires-Dist: tabulate; extra == "all"
|
|
231
|
+
Requires-Dist: pydantic-ai[logfire,openai]; extra == "all"
|
|
232
|
+
Requires-Dist: distributed; extra == "all"
|
|
233
233
|
Dynamic: author
|
|
234
234
|
Dynamic: author-email
|
|
235
235
|
Dynamic: description
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
1.3.67
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
@@ -18,68 +18,68 @@ pydantic-ai[logfire,openai]
|
|
|
18
18
|
ollama
|
|
19
19
|
|
|
20
20
|
[all]
|
|
21
|
-
|
|
22
|
-
|
|
21
|
+
flet-webview
|
|
22
|
+
sentence_transformers
|
|
23
|
+
appdirs
|
|
23
24
|
python-on-whales
|
|
24
|
-
flet[all]
|
|
25
25
|
dnspython[doh]
|
|
26
|
-
|
|
27
|
-
pytest-cov
|
|
28
|
-
bokeh
|
|
29
|
-
faker
|
|
30
|
-
pydevd-pycharm~=251.25410.159
|
|
31
|
-
peft
|
|
32
|
-
Unidecode
|
|
26
|
+
motor
|
|
33
27
|
pycountry
|
|
34
|
-
huggingface_hub
|
|
35
|
-
flet-webview
|
|
36
|
-
semver
|
|
37
|
-
torchaudio
|
|
38
|
-
google-api-python-client
|
|
39
|
-
beanie[odm]
|
|
40
|
-
playwright
|
|
41
|
-
filetype
|
|
42
|
-
html2text
|
|
43
|
-
logfire
|
|
44
|
-
pydantic-extra-types
|
|
45
|
-
pymupdf
|
|
46
|
-
pydantic-ai[logfire,openai]
|
|
47
|
-
sentence_transformers
|
|
48
|
-
deepmerge
|
|
49
|
-
ollama
|
|
50
|
-
odfpy
|
|
51
28
|
pyyaml
|
|
52
|
-
|
|
29
|
+
tokenizers
|
|
53
30
|
logfire[fastapi]
|
|
54
|
-
motor
|
|
55
31
|
json_repair
|
|
56
|
-
tokenizers
|
|
57
|
-
contexttimer
|
|
58
32
|
httpx
|
|
59
|
-
appdirs
|
|
60
|
-
yamlscript
|
|
61
|
-
distributed
|
|
62
|
-
cachetools
|
|
63
33
|
google-auth
|
|
64
|
-
|
|
34
|
+
pydantic-extra-types
|
|
35
|
+
beanie[odm]
|
|
36
|
+
Unidecode
|
|
37
|
+
playwright
|
|
38
|
+
flet-video
|
|
39
|
+
pytest-cov
|
|
40
|
+
semver
|
|
65
41
|
pandas
|
|
66
|
-
|
|
42
|
+
dask[bag]
|
|
43
|
+
tinynetrc
|
|
44
|
+
cachetools
|
|
45
|
+
logfire
|
|
46
|
+
google-auth-oauthlib
|
|
47
|
+
pydantic-settings
|
|
67
48
|
setuptools
|
|
68
|
-
|
|
49
|
+
transformers[sentencepiece]
|
|
50
|
+
pydevd-pycharm~=251.25410.159
|
|
51
|
+
peft
|
|
69
52
|
pymupdf4llm
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
53
|
+
bokeh
|
|
54
|
+
openpyxl
|
|
55
|
+
odfpy
|
|
56
|
+
google-auth-httplib2
|
|
57
|
+
huggingface_hub
|
|
58
|
+
ollama
|
|
59
|
+
google-api-python-client
|
|
60
|
+
diskcache
|
|
61
|
+
pymupdf
|
|
62
|
+
flet[all]
|
|
73
63
|
deepdiff
|
|
74
|
-
|
|
64
|
+
deepmerge
|
|
65
|
+
logfire[httpx]
|
|
66
|
+
contexttimer
|
|
67
|
+
sre_yield
|
|
75
68
|
uvicorn[standard]
|
|
76
|
-
openai
|
|
77
69
|
fastapi
|
|
78
|
-
|
|
79
|
-
|
|
70
|
+
regex
|
|
71
|
+
openai
|
|
72
|
+
httpx_retries
|
|
80
73
|
torchvision
|
|
81
|
-
|
|
82
|
-
|
|
74
|
+
yamlscript
|
|
75
|
+
pydantic
|
|
76
|
+
html2text
|
|
77
|
+
torchaudio
|
|
78
|
+
filetype
|
|
79
|
+
faker
|
|
80
|
+
tabulate
|
|
81
|
+
pydantic-ai[logfire,openai]
|
|
82
|
+
distributed
|
|
83
83
|
|
|
84
84
|
[api]
|
|
85
85
|
fastapi
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|