fmtr.tools 1.3.42__tar.gz → 1.3.44__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 (100) hide show
  1. {fmtr_tools-1.3.42 → fmtr_tools-1.3.44}/PKG-INFO +52 -46
  2. {fmtr_tools-1.3.42 → fmtr_tools-1.3.44}/fmtr/tools/__init__.py +1 -0
  3. {fmtr_tools-1.3.42 → fmtr_tools-1.3.44}/fmtr/tools/constants.py +4 -1
  4. fmtr_tools-1.3.44/fmtr/tools/database_tools/__init__.py +6 -0
  5. fmtr_tools-1.3.44/fmtr/tools/database_tools/document.py +33 -0
  6. fmtr_tools-1.3.44/fmtr/tools/version +1 -0
  7. {fmtr_tools-1.3.42 → fmtr_tools-1.3.44}/fmtr.tools.egg-info/PKG-INFO +52 -46
  8. {fmtr_tools-1.3.42 → fmtr_tools-1.3.44}/fmtr.tools.egg-info/SOURCES.txt +4 -0
  9. {fmtr_tools-1.3.42 → fmtr_tools-1.3.44}/fmtr.tools.egg-info/requires.txt +53 -45
  10. {fmtr_tools-1.3.42 → fmtr_tools-1.3.44}/setup.py +3 -1
  11. fmtr_tools-1.3.42/fmtr/tools/version +0 -1
  12. {fmtr_tools-1.3.42 → fmtr_tools-1.3.44}/LICENSE +0 -0
  13. {fmtr_tools-1.3.42 → fmtr_tools-1.3.44}/README.md +0 -0
  14. {fmtr_tools-1.3.42 → fmtr_tools-1.3.44}/fmtr/tools/ai_tools/__init__.py +0 -0
  15. {fmtr_tools-1.3.42 → fmtr_tools-1.3.44}/fmtr/tools/ai_tools/agentic_tools.py +0 -0
  16. {fmtr_tools-1.3.42 → fmtr_tools-1.3.44}/fmtr/tools/ai_tools/inference_tools.py +0 -0
  17. {fmtr_tools-1.3.42 → fmtr_tools-1.3.44}/fmtr/tools/api_tools.py +0 -0
  18. {fmtr_tools-1.3.42 → fmtr_tools-1.3.44}/fmtr/tools/async_tools.py +0 -0
  19. {fmtr_tools-1.3.42 → fmtr_tools-1.3.44}/fmtr/tools/augmentation_tools.py +0 -0
  20. {fmtr_tools-1.3.42 → fmtr_tools-1.3.44}/fmtr/tools/caching_tools.py +0 -0
  21. {fmtr_tools-1.3.42 → fmtr_tools-1.3.44}/fmtr/tools/context_tools.py +0 -0
  22. {fmtr_tools-1.3.42 → fmtr_tools-1.3.44}/fmtr/tools/data_modelling_tools.py +0 -0
  23. {fmtr_tools-1.3.42 → fmtr_tools-1.3.44}/fmtr/tools/dataclass_tools.py +0 -0
  24. {fmtr_tools-1.3.42 → fmtr_tools-1.3.44}/fmtr/tools/datatype_tools.py +0 -0
  25. {fmtr_tools-1.3.42 → fmtr_tools-1.3.44}/fmtr/tools/datetime_tools.py +0 -0
  26. {fmtr_tools-1.3.42 → fmtr_tools-1.3.44}/fmtr/tools/debugging_tools.py +0 -0
  27. {fmtr_tools-1.3.42 → fmtr_tools-1.3.44}/fmtr/tools/dns_tools/__init__.py +0 -0
  28. {fmtr_tools-1.3.42 → fmtr_tools-1.3.44}/fmtr/tools/dns_tools/client.py +0 -0
  29. {fmtr_tools-1.3.42 → fmtr_tools-1.3.44}/fmtr/tools/dns_tools/dm.py +0 -0
  30. {fmtr_tools-1.3.42 → fmtr_tools-1.3.44}/fmtr/tools/dns_tools/proxy.py +0 -0
  31. {fmtr_tools-1.3.42 → fmtr_tools-1.3.44}/fmtr/tools/dns_tools/server.py +0 -0
  32. {fmtr_tools-1.3.42 → fmtr_tools-1.3.44}/fmtr/tools/docker_tools.py +0 -0
  33. {fmtr_tools-1.3.42 → fmtr_tools-1.3.44}/fmtr/tools/entrypoints/__init__.py +0 -0
  34. {fmtr_tools-1.3.42 → fmtr_tools-1.3.44}/fmtr/tools/entrypoints/cache_hfh.py +0 -0
  35. {fmtr_tools-1.3.42 → fmtr_tools-1.3.44}/fmtr/tools/entrypoints/ep_test.py +0 -0
  36. {fmtr_tools-1.3.42 → fmtr_tools-1.3.44}/fmtr/tools/entrypoints/install_yamlscript.py +0 -0
  37. {fmtr_tools-1.3.42 → fmtr_tools-1.3.44}/fmtr/tools/entrypoints/remote_debug_test.py +0 -0
  38. {fmtr_tools-1.3.42 → fmtr_tools-1.3.44}/fmtr/tools/entrypoints/shell_debug.py +0 -0
  39. {fmtr_tools-1.3.42 → fmtr_tools-1.3.44}/fmtr/tools/environment_tools.py +0 -0
  40. {fmtr_tools-1.3.42 → fmtr_tools-1.3.44}/fmtr/tools/function_tools.py +0 -0
  41. {fmtr_tools-1.3.42 → fmtr_tools-1.3.44}/fmtr/tools/google_api_tools.py +0 -0
  42. {fmtr_tools-1.3.42 → fmtr_tools-1.3.44}/fmtr/tools/hash_tools.py +0 -0
  43. {fmtr_tools-1.3.42 → fmtr_tools-1.3.44}/fmtr/tools/hfh_tools.py +0 -0
  44. {fmtr_tools-1.3.42 → fmtr_tools-1.3.44}/fmtr/tools/html_tools.py +0 -0
  45. {fmtr_tools-1.3.42 → fmtr_tools-1.3.44}/fmtr/tools/http_tools.py +0 -0
  46. {fmtr_tools-1.3.42 → fmtr_tools-1.3.44}/fmtr/tools/import_tools.py +0 -0
  47. {fmtr_tools-1.3.42 → fmtr_tools-1.3.44}/fmtr/tools/inherit_tools.py +0 -0
  48. {fmtr_tools-1.3.42 → fmtr_tools-1.3.44}/fmtr/tools/inspection_tools.py +0 -0
  49. {fmtr_tools-1.3.42 → fmtr_tools-1.3.44}/fmtr/tools/interface_tools/__init__.py +0 -0
  50. {fmtr_tools-1.3.42 → fmtr_tools-1.3.44}/fmtr/tools/interface_tools/context.py +0 -0
  51. {fmtr_tools-1.3.42 → fmtr_tools-1.3.44}/fmtr/tools/interface_tools/controls.py +0 -0
  52. {fmtr_tools-1.3.42 → fmtr_tools-1.3.44}/fmtr/tools/interface_tools/interface_tools.py +0 -0
  53. {fmtr_tools-1.3.42 → fmtr_tools-1.3.44}/fmtr/tools/iterator_tools.py +0 -0
  54. {fmtr_tools-1.3.42 → fmtr_tools-1.3.44}/fmtr/tools/json_fix_tools.py +0 -0
  55. {fmtr_tools-1.3.42 → fmtr_tools-1.3.44}/fmtr/tools/json_tools.py +0 -0
  56. {fmtr_tools-1.3.42 → fmtr_tools-1.3.44}/fmtr/tools/logging_tools.py +0 -0
  57. {fmtr_tools-1.3.42 → fmtr_tools-1.3.44}/fmtr/tools/merging_tools.py +0 -0
  58. {fmtr_tools-1.3.42 → fmtr_tools-1.3.44}/fmtr/tools/metric_tools.py +0 -0
  59. {fmtr_tools-1.3.42 → fmtr_tools-1.3.44}/fmtr/tools/name_tools.py +0 -0
  60. {fmtr_tools-1.3.42 → fmtr_tools-1.3.44}/fmtr/tools/netrc_tools.py +0 -0
  61. {fmtr_tools-1.3.42 → fmtr_tools-1.3.44}/fmtr/tools/openai_tools.py +0 -0
  62. {fmtr_tools-1.3.42 → fmtr_tools-1.3.44}/fmtr/tools/packaging_tools.py +0 -0
  63. {fmtr_tools-1.3.42 → fmtr_tools-1.3.44}/fmtr/tools/parallel_tools.py +0 -0
  64. {fmtr_tools-1.3.42 → fmtr_tools-1.3.44}/fmtr/tools/path_tools/__init__.py +0 -0
  65. {fmtr_tools-1.3.42 → fmtr_tools-1.3.44}/fmtr/tools/path_tools/app_path_tools.py +0 -0
  66. {fmtr_tools-1.3.42 → fmtr_tools-1.3.44}/fmtr/tools/path_tools/path_tools.py +0 -0
  67. {fmtr_tools-1.3.42 → fmtr_tools-1.3.44}/fmtr/tools/path_tools/type_path_tools.py +0 -0
  68. {fmtr_tools-1.3.42 → fmtr_tools-1.3.44}/fmtr/tools/pattern_tools.py +0 -0
  69. {fmtr_tools-1.3.42 → fmtr_tools-1.3.44}/fmtr/tools/pdf_tools.py +0 -0
  70. {fmtr_tools-1.3.42 → fmtr_tools-1.3.44}/fmtr/tools/platform_tools.py +0 -0
  71. {fmtr_tools-1.3.42 → fmtr_tools-1.3.44}/fmtr/tools/process_tools.py +0 -0
  72. {fmtr_tools-1.3.42 → fmtr_tools-1.3.44}/fmtr/tools/profiling_tools.py +0 -0
  73. {fmtr_tools-1.3.42 → fmtr_tools-1.3.44}/fmtr/tools/random_tools.py +0 -0
  74. {fmtr_tools-1.3.42 → fmtr_tools-1.3.44}/fmtr/tools/semantic_tools.py +0 -0
  75. {fmtr_tools-1.3.42 → fmtr_tools-1.3.44}/fmtr/tools/settings_tools.py +0 -0
  76. {fmtr_tools-1.3.42 → fmtr_tools-1.3.44}/fmtr/tools/setup_tools/__init__.py +0 -0
  77. {fmtr_tools-1.3.42 → fmtr_tools-1.3.44}/fmtr/tools/setup_tools/setup_tools.py +0 -0
  78. {fmtr_tools-1.3.42 → fmtr_tools-1.3.44}/fmtr/tools/spaces_tools.py +0 -0
  79. {fmtr_tools-1.3.42 → fmtr_tools-1.3.44}/fmtr/tools/string_tools.py +0 -0
  80. {fmtr_tools-1.3.42 → fmtr_tools-1.3.44}/fmtr/tools/tabular_tools.py +0 -0
  81. {fmtr_tools-1.3.42 → fmtr_tools-1.3.44}/fmtr/tools/tests/__init__.py +0 -0
  82. {fmtr_tools-1.3.42 → fmtr_tools-1.3.44}/fmtr/tools/tests/conftest.py +0 -0
  83. {fmtr_tools-1.3.42 → fmtr_tools-1.3.44}/fmtr/tools/tests/helpers.py +0 -0
  84. {fmtr_tools-1.3.42 → fmtr_tools-1.3.44}/fmtr/tools/tests/test_datatype.py +0 -0
  85. {fmtr_tools-1.3.42 → fmtr_tools-1.3.44}/fmtr/tools/tests/test_environment.py +0 -0
  86. {fmtr_tools-1.3.42 → fmtr_tools-1.3.44}/fmtr/tools/tests/test_json.py +0 -0
  87. {fmtr_tools-1.3.42 → fmtr_tools-1.3.44}/fmtr/tools/tests/test_path.py +0 -0
  88. {fmtr_tools-1.3.42 → fmtr_tools-1.3.44}/fmtr/tools/tests/test_yaml.py +0 -0
  89. {fmtr_tools-1.3.42 → fmtr_tools-1.3.44}/fmtr/tools/tokenization_tools.py +0 -0
  90. {fmtr_tools-1.3.42 → fmtr_tools-1.3.44}/fmtr/tools/tools.py +0 -0
  91. {fmtr_tools-1.3.42 → fmtr_tools-1.3.44}/fmtr/tools/unicode_tools.py +0 -0
  92. {fmtr_tools-1.3.42 → fmtr_tools-1.3.44}/fmtr/tools/version_tools/__init__.py +0 -0
  93. {fmtr_tools-1.3.42 → fmtr_tools-1.3.44}/fmtr/tools/version_tools/version_tools.py +0 -0
  94. {fmtr_tools-1.3.42 → fmtr_tools-1.3.44}/fmtr/tools/webhook_tools.py +0 -0
  95. {fmtr_tools-1.3.42 → fmtr_tools-1.3.44}/fmtr/tools/yaml_tools.py +0 -0
  96. {fmtr_tools-1.3.42 → fmtr_tools-1.3.44}/fmtr.tools.egg-info/dependency_links.txt +0 -0
  97. {fmtr_tools-1.3.42 → fmtr_tools-1.3.44}/fmtr.tools.egg-info/entry_points.txt +0 -0
  98. {fmtr_tools-1.3.42 → fmtr_tools-1.3.44}/fmtr.tools.egg-info/top_level.txt +0 -0
  99. {fmtr_tools-1.3.42 → fmtr_tools-1.3.44}/pyproject.toml +0 -0
  100. {fmtr_tools-1.3.42 → fmtr_tools-1.3.44}/setup.cfg +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: fmtr.tools
3
- Version: 1.3.42
3
+ Version: 1.3.44
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
@@ -131,63 +131,69 @@ Requires-Dist: logfire; extra == "webhook"
131
131
  Requires-Dist: logfire[httpx]; extra == "webhook"
132
132
  Provides-Extra: browsers
133
133
  Requires-Dist: playwright; extra == "browsers"
134
+ Provides-Extra: db
135
+ Provides-Extra: db-document
136
+ Requires-Dist: beanie[odm]; extra == "db-document"
137
+ Requires-Dist: motor; extra == "db-document"
134
138
  Provides-Extra: all
139
+ Requires-Dist: sre_yield; extra == "all"
140
+ Requires-Dist: yamlscript; extra == "all"
141
+ Requires-Dist: pyyaml; extra == "all"
142
+ Requires-Dist: flet-webview; extra == "all"
143
+ Requires-Dist: peft; extra == "all"
144
+ Requires-Dist: playwright; extra == "all"
145
+ Requires-Dist: httpx_retries; extra == "all"
146
+ Requires-Dist: pydantic; extra == "all"
135
147
  Requires-Dist: flet[all]; extra == "all"
148
+ Requires-Dist: httpx; extra == "all"
149
+ Requires-Dist: beanie[odm]; extra == "all"
150
+ Requires-Dist: openai; extra == "all"
151
+ Requires-Dist: cachetools; extra == "all"
136
152
  Requires-Dist: pymupdf; extra == "all"
137
- Requires-Dist: appdirs; extra == "all"
138
- Requires-Dist: bokeh; extra == "all"
153
+ Requires-Dist: fastapi; extra == "all"
154
+ Requires-Dist: json_repair; extra == "all"
155
+ Requires-Dist: deepmerge; extra == "all"
139
156
  Requires-Dist: ollama; extra == "all"
140
- Requires-Dist: pymupdf4llm; extra == "all"
141
- Requires-Dist: logfire[fastapi]; extra == "all"
142
- Requires-Dist: pandas; extra == "all"
143
- Requires-Dist: pydantic; extra == "all"
144
- Requires-Dist: pytest-cov; extra == "all"
157
+ Requires-Dist: pydantic-settings; extra == "all"
158
+ Requires-Dist: faker; extra == "all"
159
+ Requires-Dist: uvicorn[standard]; extra == "all"
160
+ Requires-Dist: bokeh; extra == "all"
161
+ Requires-Dist: distributed; extra == "all"
162
+ Requires-Dist: semver; extra == "all"
163
+ Requires-Dist: appdirs; extra == "all"
145
164
  Requires-Dist: pydantic-ai[logfire,openai]; extra == "all"
146
- Requires-Dist: cachetools; extra == "all"
147
- Requires-Dist: httpx; extra == "all"
165
+ Requires-Dist: dask[bag]; extra == "all"
166
+ Requires-Dist: diskcache; extra == "all"
148
167
  Requires-Dist: tinynetrc; extra == "all"
149
- Requires-Dist: tabulate; extra == "all"
150
- Requires-Dist: google-api-python-client; extra == "all"
151
- Requires-Dist: contexttimer; extra == "all"
152
- Requires-Dist: flet-webview; extra == "all"
153
- Requires-Dist: torchvision; extra == "all"
154
- Requires-Dist: html2text; extra == "all"
155
- Requires-Dist: setuptools; extra == "all"
156
- Requires-Dist: logfire[httpx]; extra == "all"
157
- Requires-Dist: semver; extra == "all"
158
- Requires-Dist: httpx_retries; extra == "all"
159
- Requires-Dist: huggingface_hub; extra == "all"
160
- Requires-Dist: peft; extra == "all"
161
168
  Requires-Dist: tokenizers; extra == "all"
162
- Requires-Dist: sentence_transformers; extra == "all"
163
- Requires-Dist: yamlscript; extra == "all"
169
+ Requires-Dist: setuptools; extra == "all"
170
+ Requires-Dist: html2text; extra == "all"
164
171
  Requires-Dist: transformers[sentencepiece]; extra == "all"
165
- Requires-Dist: filetype; extra == "all"
166
- Requires-Dist: deepmerge; extra == "all"
172
+ Requires-Dist: pydevd-pycharm~=251.25410.159; extra == "all"
173
+ Requires-Dist: sentence_transformers; extra == "all"
174
+ Requires-Dist: motor; extra == "all"
175
+ Requires-Dist: pytest-cov; extra == "all"
176
+ Requires-Dist: docker; extra == "all"
167
177
  Requires-Dist: logfire; extra == "all"
168
- Requires-Dist: distributed; extra == "all"
178
+ Requires-Dist: openpyxl; extra == "all"
179
+ Requires-Dist: tabulate; extra == "all"
180
+ Requires-Dist: regex; extra == "all"
181
+ Requires-Dist: google-api-python-client; extra == "all"
182
+ Requires-Dist: logfire[httpx]; extra == "all"
183
+ Requires-Dist: torchaudio; extra == "all"
184
+ Requires-Dist: torchvision; extra == "all"
185
+ Requires-Dist: google-auth-oauthlib; extra == "all"
169
186
  Requires-Dist: google-auth-httplib2; extra == "all"
170
- Requires-Dist: openai; extra == "all"
171
- Requires-Dist: google-auth; extra == "all"
187
+ Requires-Dist: filetype; extra == "all"
188
+ Requires-Dist: huggingface_hub; extra == "all"
189
+ Requires-Dist: logfire[fastapi]; extra == "all"
190
+ Requires-Dist: pymupdf4llm; extra == "all"
191
+ Requires-Dist: contexttimer; extra == "all"
172
192
  Requires-Dist: Unidecode; extra == "all"
173
- Requires-Dist: google-auth-oauthlib; extra == "all"
174
- Requires-Dist: dnspython[doh]; extra == "all"
175
- Requires-Dist: pyyaml; extra == "all"
176
- Requires-Dist: regex; extra == "all"
177
- Requires-Dist: sre_yield; extra == "all"
178
- Requires-Dist: docker; extra == "all"
179
- Requires-Dist: json_repair; extra == "all"
180
- Requires-Dist: diskcache; extra == "all"
181
- Requires-Dist: playwright; extra == "all"
182
- Requires-Dist: fastapi; extra == "all"
183
- Requires-Dist: dask[bag]; extra == "all"
184
- Requires-Dist: uvicorn[standard]; extra == "all"
193
+ Requires-Dist: google-auth; extra == "all"
185
194
  Requires-Dist: flet-video; extra == "all"
186
- Requires-Dist: faker; extra == "all"
187
- Requires-Dist: pydantic-settings; extra == "all"
188
- Requires-Dist: pydevd-pycharm~=251.25410.159; extra == "all"
189
- Requires-Dist: openpyxl; extra == "all"
190
- Requires-Dist: torchaudio; extra == "all"
195
+ Requires-Dist: dnspython[doh]; extra == "all"
196
+ Requires-Dist: pandas; extra == "all"
191
197
  Dynamic: author
192
198
  Dynamic: author-email
193
199
  Dynamic: description
@@ -1,4 +1,5 @@
1
1
  import fmtr.tools.async_tools as asyncio
2
+ import fmtr.tools.database_tools as db
2
3
  import fmtr.tools.dataclass_tools as dataclass
3
4
  import fmtr.tools.datatype_tools as datatype
4
5
  import fmtr.tools.environment_tools as env
@@ -32,7 +32,10 @@ class Constants:
32
32
  FMTR_AI_HOST_KEY = 'FMTR_URL_HOST'
33
33
  FMTR_AI_HOST_DEFAULT = 'ai.gex.fmtr.dev'
34
34
 
35
- FMTR_DEV_INTERFACE_URL = 'https://ws.gex.fmtr.dev/'
35
+ FMTR_DEV_HOST = 'ws.gex.fmtr.dev'
36
+
37
+ FMTR_DEV_INTERFACE_URL = f'https://{FMTR_DEV_HOST}/'
38
+ FMTR_DEV_INTERFACE_SUB_URL_MASK = f'https://{{sub}}.{FMTR_DEV_HOST}/'
36
39
 
37
40
  FILENAME_CONFIG = 'settings.yaml'
38
41
  DIR_NAME_REPO = 'repo'
@@ -0,0 +1,6 @@
1
+ from fmtr.tools.import_tools import MissingExtraMockModule
2
+
3
+ try:
4
+ from fmtr.tools.database_tools import document
5
+ except ModuleNotFoundError as exception:
6
+ document = MissingExtraMockModule('db.document', exception)
@@ -0,0 +1,33 @@
1
+ import beanie
2
+ from functools import cached_property
3
+ from motor.motor_asyncio import AsyncIOMotorClient
4
+ from typing import List
5
+
6
+ from fmtr.tools.constants import Constants
7
+
8
+
9
+ class Document(beanie.Document):
10
+ """
11
+
12
+ Document stub.
13
+
14
+ """
15
+
16
+
17
+ class Client:
18
+
19
+ def __init__(self, name, host=Constants.FMTR_DEV_HOST, port=27017, documents: List[beanie.Document] | None = None):
20
+ self.name = name
21
+ self.host = host
22
+ self.port = port
23
+ self.documents = documents
24
+
25
+ self.client = AsyncIOMotorClient(self.uri)
26
+ self.db = self.client[self.name]
27
+
28
+ @cached_property
29
+ def uri(self):
30
+ return f'mongodb://{self.host}:{self.port}'
31
+
32
+ async def connect(self):
33
+ return await beanie.init_beanie(database=self.db, document_models=self.documents)
@@ -0,0 +1 @@
1
+ 1.3.44
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: fmtr.tools
3
- Version: 1.3.42
3
+ Version: 1.3.44
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
@@ -131,63 +131,69 @@ Requires-Dist: logfire; extra == "webhook"
131
131
  Requires-Dist: logfire[httpx]; extra == "webhook"
132
132
  Provides-Extra: browsers
133
133
  Requires-Dist: playwright; extra == "browsers"
134
+ Provides-Extra: db
135
+ Provides-Extra: db-document
136
+ Requires-Dist: beanie[odm]; extra == "db-document"
137
+ Requires-Dist: motor; extra == "db-document"
134
138
  Provides-Extra: all
139
+ Requires-Dist: sre_yield; extra == "all"
140
+ Requires-Dist: yamlscript; extra == "all"
141
+ Requires-Dist: pyyaml; extra == "all"
142
+ Requires-Dist: flet-webview; extra == "all"
143
+ Requires-Dist: peft; extra == "all"
144
+ Requires-Dist: playwright; extra == "all"
145
+ Requires-Dist: httpx_retries; extra == "all"
146
+ Requires-Dist: pydantic; extra == "all"
135
147
  Requires-Dist: flet[all]; extra == "all"
148
+ Requires-Dist: httpx; extra == "all"
149
+ Requires-Dist: beanie[odm]; extra == "all"
150
+ Requires-Dist: openai; extra == "all"
151
+ Requires-Dist: cachetools; extra == "all"
136
152
  Requires-Dist: pymupdf; extra == "all"
137
- Requires-Dist: appdirs; extra == "all"
138
- Requires-Dist: bokeh; extra == "all"
153
+ Requires-Dist: fastapi; extra == "all"
154
+ Requires-Dist: json_repair; extra == "all"
155
+ Requires-Dist: deepmerge; extra == "all"
139
156
  Requires-Dist: ollama; extra == "all"
140
- Requires-Dist: pymupdf4llm; extra == "all"
141
- Requires-Dist: logfire[fastapi]; extra == "all"
142
- Requires-Dist: pandas; extra == "all"
143
- Requires-Dist: pydantic; extra == "all"
144
- Requires-Dist: pytest-cov; extra == "all"
157
+ Requires-Dist: pydantic-settings; extra == "all"
158
+ Requires-Dist: faker; extra == "all"
159
+ Requires-Dist: uvicorn[standard]; extra == "all"
160
+ Requires-Dist: bokeh; extra == "all"
161
+ Requires-Dist: distributed; extra == "all"
162
+ Requires-Dist: semver; extra == "all"
163
+ Requires-Dist: appdirs; extra == "all"
145
164
  Requires-Dist: pydantic-ai[logfire,openai]; extra == "all"
146
- Requires-Dist: cachetools; extra == "all"
147
- Requires-Dist: httpx; extra == "all"
165
+ Requires-Dist: dask[bag]; extra == "all"
166
+ Requires-Dist: diskcache; extra == "all"
148
167
  Requires-Dist: tinynetrc; extra == "all"
149
- Requires-Dist: tabulate; extra == "all"
150
- Requires-Dist: google-api-python-client; extra == "all"
151
- Requires-Dist: contexttimer; extra == "all"
152
- Requires-Dist: flet-webview; extra == "all"
153
- Requires-Dist: torchvision; extra == "all"
154
- Requires-Dist: html2text; extra == "all"
155
- Requires-Dist: setuptools; extra == "all"
156
- Requires-Dist: logfire[httpx]; extra == "all"
157
- Requires-Dist: semver; extra == "all"
158
- Requires-Dist: httpx_retries; extra == "all"
159
- Requires-Dist: huggingface_hub; extra == "all"
160
- Requires-Dist: peft; extra == "all"
161
168
  Requires-Dist: tokenizers; extra == "all"
162
- Requires-Dist: sentence_transformers; extra == "all"
163
- Requires-Dist: yamlscript; extra == "all"
169
+ Requires-Dist: setuptools; extra == "all"
170
+ Requires-Dist: html2text; extra == "all"
164
171
  Requires-Dist: transformers[sentencepiece]; extra == "all"
165
- Requires-Dist: filetype; extra == "all"
166
- Requires-Dist: deepmerge; extra == "all"
172
+ Requires-Dist: pydevd-pycharm~=251.25410.159; extra == "all"
173
+ Requires-Dist: sentence_transformers; extra == "all"
174
+ Requires-Dist: motor; extra == "all"
175
+ Requires-Dist: pytest-cov; extra == "all"
176
+ Requires-Dist: docker; extra == "all"
167
177
  Requires-Dist: logfire; extra == "all"
168
- Requires-Dist: distributed; extra == "all"
178
+ Requires-Dist: openpyxl; extra == "all"
179
+ Requires-Dist: tabulate; extra == "all"
180
+ Requires-Dist: regex; extra == "all"
181
+ Requires-Dist: google-api-python-client; extra == "all"
182
+ Requires-Dist: logfire[httpx]; extra == "all"
183
+ Requires-Dist: torchaudio; extra == "all"
184
+ Requires-Dist: torchvision; extra == "all"
185
+ Requires-Dist: google-auth-oauthlib; extra == "all"
169
186
  Requires-Dist: google-auth-httplib2; extra == "all"
170
- Requires-Dist: openai; extra == "all"
171
- Requires-Dist: google-auth; extra == "all"
187
+ Requires-Dist: filetype; extra == "all"
188
+ Requires-Dist: huggingface_hub; extra == "all"
189
+ Requires-Dist: logfire[fastapi]; extra == "all"
190
+ Requires-Dist: pymupdf4llm; extra == "all"
191
+ Requires-Dist: contexttimer; extra == "all"
172
192
  Requires-Dist: Unidecode; extra == "all"
173
- Requires-Dist: google-auth-oauthlib; extra == "all"
174
- Requires-Dist: dnspython[doh]; extra == "all"
175
- Requires-Dist: pyyaml; extra == "all"
176
- Requires-Dist: regex; extra == "all"
177
- Requires-Dist: sre_yield; extra == "all"
178
- Requires-Dist: docker; extra == "all"
179
- Requires-Dist: json_repair; extra == "all"
180
- Requires-Dist: diskcache; extra == "all"
181
- Requires-Dist: playwright; extra == "all"
182
- Requires-Dist: fastapi; extra == "all"
183
- Requires-Dist: dask[bag]; extra == "all"
184
- Requires-Dist: uvicorn[standard]; extra == "all"
193
+ Requires-Dist: google-auth; extra == "all"
185
194
  Requires-Dist: flet-video; extra == "all"
186
- Requires-Dist: faker; extra == "all"
187
- Requires-Dist: pydantic-settings; extra == "all"
188
- Requires-Dist: pydevd-pycharm~=251.25410.159; extra == "all"
189
- Requires-Dist: openpyxl; extra == "all"
190
- Requires-Dist: torchaudio; extra == "all"
195
+ Requires-Dist: dnspython[doh]; extra == "all"
196
+ Requires-Dist: pandas; extra == "all"
191
197
  Dynamic: author
192
198
  Dynamic: author-email
193
199
  Dynamic: description
@@ -56,6 +56,8 @@ setup.py
56
56
  ./fmtr/tools/ai_tools/__init__.py
57
57
  ./fmtr/tools/ai_tools/agentic_tools.py
58
58
  ./fmtr/tools/ai_tools/inference_tools.py
59
+ ./fmtr/tools/database_tools/__init__.py
60
+ ./fmtr/tools/database_tools/document.py
59
61
  ./fmtr/tools/dns_tools/__init__.py
60
62
  ./fmtr/tools/dns_tools/client.py
61
63
  ./fmtr/tools/dns_tools/dm.py
@@ -147,6 +149,8 @@ fmtr/tools/yaml_tools.py
147
149
  fmtr/tools/ai_tools/__init__.py
148
150
  fmtr/tools/ai_tools/agentic_tools.py
149
151
  fmtr/tools/ai_tools/inference_tools.py
152
+ fmtr/tools/database_tools/__init__.py
153
+ fmtr/tools/database_tools/document.py
150
154
  fmtr/tools/dns_tools/__init__.py
151
155
  fmtr/tools/dns_tools/client.py
152
156
  fmtr/tools/dns_tools/dm.py
@@ -14,62 +14,64 @@ pydantic-ai[logfire,openai]
14
14
  ollama
15
15
 
16
16
  [all]
17
+ sre_yield
18
+ yamlscript
19
+ pyyaml
20
+ flet-webview
21
+ peft
22
+ playwright
23
+ httpx_retries
24
+ pydantic
17
25
  flet[all]
26
+ httpx
27
+ beanie[odm]
28
+ openai
29
+ cachetools
18
30
  pymupdf
19
- appdirs
20
- bokeh
31
+ fastapi
32
+ json_repair
33
+ deepmerge
21
34
  ollama
22
- pymupdf4llm
23
- logfire[fastapi]
24
- pandas
25
- pydantic
26
- pytest-cov
35
+ pydantic-settings
36
+ faker
37
+ uvicorn[standard]
38
+ bokeh
39
+ distributed
40
+ semver
41
+ appdirs
27
42
  pydantic-ai[logfire,openai]
28
- cachetools
29
- httpx
43
+ dask[bag]
44
+ diskcache
30
45
  tinynetrc
31
- tabulate
32
- google-api-python-client
33
- contexttimer
34
- flet-webview
35
- torchvision
36
- html2text
37
- setuptools
38
- logfire[httpx]
39
- semver
40
- httpx_retries
41
- huggingface_hub
42
- peft
43
46
  tokenizers
44
- sentence_transformers
45
- yamlscript
47
+ setuptools
48
+ html2text
46
49
  transformers[sentencepiece]
47
- filetype
48
- deepmerge
50
+ pydevd-pycharm~=251.25410.159
51
+ sentence_transformers
52
+ motor
53
+ pytest-cov
54
+ docker
49
55
  logfire
50
- distributed
56
+ openpyxl
57
+ tabulate
58
+ regex
59
+ google-api-python-client
60
+ logfire[httpx]
61
+ torchaudio
62
+ torchvision
63
+ google-auth-oauthlib
51
64
  google-auth-httplib2
52
- openai
53
- google-auth
65
+ filetype
66
+ huggingface_hub
67
+ logfire[fastapi]
68
+ pymupdf4llm
69
+ contexttimer
54
70
  Unidecode
55
- google-auth-oauthlib
56
- dnspython[doh]
57
- pyyaml
58
- regex
59
- sre_yield
60
- docker
61
- json_repair
62
- diskcache
63
- playwright
64
- fastapi
65
- dask[bag]
66
- uvicorn[standard]
71
+ google-auth
67
72
  flet-video
68
- faker
69
- pydantic-settings
70
- pydevd-pycharm~=251.25410.159
71
- openpyxl
72
- torchaudio
73
+ dnspython[doh]
74
+ pandas
73
75
 
74
76
  [api]
75
77
  fastapi
@@ -89,6 +91,12 @@ playwright
89
91
  diskcache
90
92
  cachetools
91
93
 
94
+ [db]
95
+
96
+ [db.document]
97
+ beanie[odm]
98
+ motor
99
+
92
100
  [debug]
93
101
  pydevd-pycharm~=251.25410.159
94
102
 
@@ -41,7 +41,9 @@ DEPENDENCIES = {
41
41
  'http': ['httpx', 'httpx_retries', 'logging', 'logfire[httpx]'],
42
42
  'setup': ['setuptools'],
43
43
  'webhook': ['http'],
44
- 'browsers': ['playwright']
44
+ 'browsers': ['playwright'],
45
+ 'db': [],
46
+ 'db.document': ['beanie[odm]', 'motor']
45
47
  }
46
48
 
47
49
  setup = Setup(
@@ -1 +0,0 @@
1
- 1.3.42
File without changes
File without changes
File without changes
File without changes