fmtr.tools 1.3.77__tar.gz → 1.3.78__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.77 → fmtr_tools-1.3.78}/PKG-INFO +49 -49
  2. {fmtr_tools-1.3.77 → fmtr_tools-1.3.78}/fmtr/tools/interface_tools/controls.py +63 -3
  3. fmtr_tools-1.3.78/fmtr/tools/version +1 -0
  4. {fmtr_tools-1.3.77 → fmtr_tools-1.3.78}/fmtr.tools.egg-info/PKG-INFO +49 -49
  5. fmtr_tools-1.3.77/fmtr/tools/version +0 -1
  6. {fmtr_tools-1.3.77 → fmtr_tools-1.3.78}/LICENSE +0 -0
  7. {fmtr_tools-1.3.77 → fmtr_tools-1.3.78}/README.md +0 -0
  8. {fmtr_tools-1.3.77 → fmtr_tools-1.3.78}/fmtr/tools/__init__.py +0 -0
  9. {fmtr_tools-1.3.77 → fmtr_tools-1.3.78}/fmtr/tools/ai_tools/__init__.py +0 -0
  10. {fmtr_tools-1.3.77 → fmtr_tools-1.3.78}/fmtr/tools/ai_tools/agentic_tools.py +0 -0
  11. {fmtr_tools-1.3.77 → fmtr_tools-1.3.78}/fmtr/tools/ai_tools/inference_tools.py +0 -0
  12. {fmtr_tools-1.3.77 → fmtr_tools-1.3.78}/fmtr/tools/api_tools.py +0 -0
  13. {fmtr_tools-1.3.77 → fmtr_tools-1.3.78}/fmtr/tools/async_tools.py +0 -0
  14. {fmtr_tools-1.3.77 → fmtr_tools-1.3.78}/fmtr/tools/augmentation_tools.py +0 -0
  15. {fmtr_tools-1.3.77 → fmtr_tools-1.3.78}/fmtr/tools/caching_tools.py +0 -0
  16. {fmtr_tools-1.3.77 → fmtr_tools-1.3.78}/fmtr/tools/constants.py +0 -0
  17. {fmtr_tools-1.3.77 → fmtr_tools-1.3.78}/fmtr/tools/context_tools.py +0 -0
  18. {fmtr_tools-1.3.77 → fmtr_tools-1.3.78}/fmtr/tools/data_modelling_tools.py +0 -0
  19. {fmtr_tools-1.3.77 → fmtr_tools-1.3.78}/fmtr/tools/database_tools/__init__.py +0 -0
  20. {fmtr_tools-1.3.77 → fmtr_tools-1.3.78}/fmtr/tools/database_tools/document.py +0 -0
  21. {fmtr_tools-1.3.77 → fmtr_tools-1.3.78}/fmtr/tools/dataclass_tools.py +0 -0
  22. {fmtr_tools-1.3.77 → fmtr_tools-1.3.78}/fmtr/tools/datatype_tools.py +0 -0
  23. {fmtr_tools-1.3.77 → fmtr_tools-1.3.78}/fmtr/tools/datetime_tools.py +0 -0
  24. {fmtr_tools-1.3.77 → fmtr_tools-1.3.78}/fmtr/tools/debugging_tools.py +0 -0
  25. {fmtr_tools-1.3.77 → fmtr_tools-1.3.78}/fmtr/tools/dns_tools/__init__.py +0 -0
  26. {fmtr_tools-1.3.77 → fmtr_tools-1.3.78}/fmtr/tools/dns_tools/client.py +0 -0
  27. {fmtr_tools-1.3.77 → fmtr_tools-1.3.78}/fmtr/tools/dns_tools/dm.py +0 -0
  28. {fmtr_tools-1.3.77 → fmtr_tools-1.3.78}/fmtr/tools/dns_tools/proxy.py +0 -0
  29. {fmtr_tools-1.3.77 → fmtr_tools-1.3.78}/fmtr/tools/dns_tools/server.py +0 -0
  30. {fmtr_tools-1.3.77 → fmtr_tools-1.3.78}/fmtr/tools/docker_tools/__init__.py +0 -0
  31. {fmtr_tools-1.3.77 → fmtr_tools-1.3.78}/fmtr/tools/entrypoints/__init__.py +0 -0
  32. {fmtr_tools-1.3.77 → fmtr_tools-1.3.78}/fmtr/tools/entrypoints/cache_hfh.py +0 -0
  33. {fmtr_tools-1.3.77 → fmtr_tools-1.3.78}/fmtr/tools/entrypoints/ep_test.py +0 -0
  34. {fmtr_tools-1.3.77 → fmtr_tools-1.3.78}/fmtr/tools/entrypoints/install_yamlscript.py +0 -0
  35. {fmtr_tools-1.3.77 → fmtr_tools-1.3.78}/fmtr/tools/entrypoints/remote_debug_test.py +0 -0
  36. {fmtr_tools-1.3.77 → fmtr_tools-1.3.78}/fmtr/tools/entrypoints/shell_debug.py +0 -0
  37. {fmtr_tools-1.3.77 → fmtr_tools-1.3.78}/fmtr/tools/environment_tools.py +0 -0
  38. {fmtr_tools-1.3.77 → fmtr_tools-1.3.78}/fmtr/tools/function_tools.py +0 -0
  39. {fmtr_tools-1.3.77 → fmtr_tools-1.3.78}/fmtr/tools/google_api_tools.py +0 -0
  40. {fmtr_tools-1.3.77 → fmtr_tools-1.3.78}/fmtr/tools/hash_tools.py +0 -0
  41. {fmtr_tools-1.3.77 → fmtr_tools-1.3.78}/fmtr/tools/hfh_tools.py +0 -0
  42. {fmtr_tools-1.3.77 → fmtr_tools-1.3.78}/fmtr/tools/html_tools.py +0 -0
  43. {fmtr_tools-1.3.77 → fmtr_tools-1.3.78}/fmtr/tools/http_tools.py +0 -0
  44. {fmtr_tools-1.3.77 → fmtr_tools-1.3.78}/fmtr/tools/import_tools.py +0 -0
  45. {fmtr_tools-1.3.77 → fmtr_tools-1.3.78}/fmtr/tools/inherit_tools.py +0 -0
  46. {fmtr_tools-1.3.77 → fmtr_tools-1.3.78}/fmtr/tools/inspection_tools.py +0 -0
  47. {fmtr_tools-1.3.77 → fmtr_tools-1.3.78}/fmtr/tools/interface_tools/__init__.py +0 -0
  48. {fmtr_tools-1.3.77 → fmtr_tools-1.3.78}/fmtr/tools/interface_tools/context.py +0 -0
  49. {fmtr_tools-1.3.77 → fmtr_tools-1.3.78}/fmtr/tools/interface_tools/interface_tools.py +0 -0
  50. {fmtr_tools-1.3.77 → fmtr_tools-1.3.78}/fmtr/tools/iterator_tools.py +0 -0
  51. {fmtr_tools-1.3.77 → fmtr_tools-1.3.78}/fmtr/tools/json_fix_tools.py +0 -0
  52. {fmtr_tools-1.3.77 → fmtr_tools-1.3.78}/fmtr/tools/json_tools.py +0 -0
  53. {fmtr_tools-1.3.77 → fmtr_tools-1.3.78}/fmtr/tools/logging_tools.py +0 -0
  54. {fmtr_tools-1.3.77 → fmtr_tools-1.3.78}/fmtr/tools/merging_tools.py +0 -0
  55. {fmtr_tools-1.3.77 → fmtr_tools-1.3.78}/fmtr/tools/metric_tools.py +0 -0
  56. {fmtr_tools-1.3.77 → fmtr_tools-1.3.78}/fmtr/tools/name_tools.py +0 -0
  57. {fmtr_tools-1.3.77 → fmtr_tools-1.3.78}/fmtr/tools/netrc_tools.py +0 -0
  58. {fmtr_tools-1.3.77 → fmtr_tools-1.3.78}/fmtr/tools/openai_tools.py +0 -0
  59. {fmtr_tools-1.3.77 → fmtr_tools-1.3.78}/fmtr/tools/packaging_tools.py +0 -0
  60. {fmtr_tools-1.3.77 → fmtr_tools-1.3.78}/fmtr/tools/parallel_tools.py +0 -0
  61. {fmtr_tools-1.3.77 → fmtr_tools-1.3.78}/fmtr/tools/path_tools/__init__.py +0 -0
  62. {fmtr_tools-1.3.77 → fmtr_tools-1.3.78}/fmtr/tools/path_tools/app_path_tools.py +0 -0
  63. {fmtr_tools-1.3.77 → fmtr_tools-1.3.78}/fmtr/tools/path_tools/path_tools.py +0 -0
  64. {fmtr_tools-1.3.77 → fmtr_tools-1.3.78}/fmtr/tools/path_tools/type_path_tools.py +0 -0
  65. {fmtr_tools-1.3.77 → fmtr_tools-1.3.78}/fmtr/tools/pattern_tools.py +0 -0
  66. {fmtr_tools-1.3.77 → fmtr_tools-1.3.78}/fmtr/tools/pdf_tools.py +0 -0
  67. {fmtr_tools-1.3.77 → fmtr_tools-1.3.78}/fmtr/tools/platform_tools.py +0 -0
  68. {fmtr_tools-1.3.77 → fmtr_tools-1.3.78}/fmtr/tools/process_tools.py +0 -0
  69. {fmtr_tools-1.3.77 → fmtr_tools-1.3.78}/fmtr/tools/profiling_tools.py +0 -0
  70. {fmtr_tools-1.3.77 → fmtr_tools-1.3.78}/fmtr/tools/random_tools.py +0 -0
  71. {fmtr_tools-1.3.77 → fmtr_tools-1.3.78}/fmtr/tools/semantic_tools.py +0 -0
  72. {fmtr_tools-1.3.77 → fmtr_tools-1.3.78}/fmtr/tools/settings_tools.py +0 -0
  73. {fmtr_tools-1.3.77 → fmtr_tools-1.3.78}/fmtr/tools/setup_tools/__init__.py +0 -0
  74. {fmtr_tools-1.3.77 → fmtr_tools-1.3.78}/fmtr/tools/setup_tools/setup_tools.py +0 -0
  75. {fmtr_tools-1.3.77 → fmtr_tools-1.3.78}/fmtr/tools/spaces_tools.py +0 -0
  76. {fmtr_tools-1.3.77 → fmtr_tools-1.3.78}/fmtr/tools/string_tools.py +0 -0
  77. {fmtr_tools-1.3.77 → fmtr_tools-1.3.78}/fmtr/tools/tabular_tools.py +0 -0
  78. {fmtr_tools-1.3.77 → fmtr_tools-1.3.78}/fmtr/tools/tests/__init__.py +0 -0
  79. {fmtr_tools-1.3.77 → fmtr_tools-1.3.78}/fmtr/tools/tests/conftest.py +0 -0
  80. {fmtr_tools-1.3.77 → fmtr_tools-1.3.78}/fmtr/tools/tests/helpers.py +0 -0
  81. {fmtr_tools-1.3.77 → fmtr_tools-1.3.78}/fmtr/tools/tests/test_datatype.py +0 -0
  82. {fmtr_tools-1.3.77 → fmtr_tools-1.3.78}/fmtr/tools/tests/test_environment.py +0 -0
  83. {fmtr_tools-1.3.77 → fmtr_tools-1.3.78}/fmtr/tools/tests/test_json.py +0 -0
  84. {fmtr_tools-1.3.77 → fmtr_tools-1.3.78}/fmtr/tools/tests/test_path.py +0 -0
  85. {fmtr_tools-1.3.77 → fmtr_tools-1.3.78}/fmtr/tools/tests/test_yaml.py +0 -0
  86. {fmtr_tools-1.3.77 → fmtr_tools-1.3.78}/fmtr/tools/tokenization_tools.py +0 -0
  87. {fmtr_tools-1.3.77 → fmtr_tools-1.3.78}/fmtr/tools/tools.py +0 -0
  88. {fmtr_tools-1.3.77 → fmtr_tools-1.3.78}/fmtr/tools/unicode_tools.py +0 -0
  89. {fmtr_tools-1.3.77 → fmtr_tools-1.3.78}/fmtr/tools/version_tools/__init__.py +0 -0
  90. {fmtr_tools-1.3.77 → fmtr_tools-1.3.78}/fmtr/tools/version_tools/version_tools.py +0 -0
  91. {fmtr_tools-1.3.77 → fmtr_tools-1.3.78}/fmtr/tools/webhook_tools.py +0 -0
  92. {fmtr_tools-1.3.77 → fmtr_tools-1.3.78}/fmtr/tools/yaml_tools.py +0 -0
  93. {fmtr_tools-1.3.77 → fmtr_tools-1.3.78}/fmtr.tools.egg-info/SOURCES.txt +0 -0
  94. {fmtr_tools-1.3.77 → fmtr_tools-1.3.78}/fmtr.tools.egg-info/dependency_links.txt +0 -0
  95. {fmtr_tools-1.3.77 → fmtr_tools-1.3.78}/fmtr.tools.egg-info/entry_points.txt +0 -0
  96. {fmtr_tools-1.3.77 → fmtr_tools-1.3.78}/fmtr.tools.egg-info/requires.txt +48 -48
  97. {fmtr_tools-1.3.77 → fmtr_tools-1.3.78}/fmtr.tools.egg-info/top_level.txt +0 -0
  98. {fmtr_tools-1.3.77 → fmtr_tools-1.3.78}/pyproject.toml +0 -0
  99. {fmtr_tools-1.3.77 → fmtr_tools-1.3.78}/setup.cfg +0 -0
  100. {fmtr_tools-1.3.77 → fmtr_tools-1.3.78}/setup.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: fmtr.tools
3
- Version: 1.3.77
3
+ Version: 1.3.78
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
@@ -166,67 +166,67 @@ Provides-Extra: db
166
166
  Provides-Extra: db-document
167
167
  Requires-Dist: beanie[odm]; extra == "db-document"
168
168
  Provides-Extra: all
169
- Requires-Dist: pyyaml; extra == "all"
170
- Requires-Dist: Unidecode; extra == "all"
171
- Requires-Dist: pydevd-pycharm~=251.25410.159; extra == "all"
172
- Requires-Dist: openai; extra == "all"
173
- Requires-Dist: json_repair; extra == "all"
174
- Requires-Dist: faker; extra == "all"
175
- Requires-Dist: semver; extra == "all"
176
- Requires-Dist: pydantic-ai[logfire,openai]; extra == "all"
177
- Requires-Dist: tabulate; extra == "all"
178
169
  Requires-Dist: huggingface_hub; extra == "all"
179
- Requires-Dist: dnspython[doh]; extra == "all"
180
- Requires-Dist: setuptools; extra == "all"
181
- Requires-Dist: filetype; extra == "all"
182
170
  Requires-Dist: distributed; extra == "all"
183
- Requires-Dist: bokeh; extra == "all"
184
- Requires-Dist: cachetools; extra == "all"
185
- Requires-Dist: httpx_retries; extra == "all"
186
- Requires-Dist: beanie[odm]; extra == "all"
187
- Requires-Dist: transformers[sentencepiece]; extra == "all"
188
- Requires-Dist: playwright; extra == "all"
189
- Requires-Dist: odfpy; extra == "all"
190
- Requires-Dist: python-on-whales; extra == "all"
191
- Requires-Dist: pymupdf; extra == "all"
192
- Requires-Dist: peft; extra == "all"
193
- Requires-Dist: regex; extra == "all"
171
+ Requires-Dist: torchaudio; extra == "all"
172
+ Requires-Dist: html2text; extra == "all"
194
173
  Requires-Dist: logfire; extra == "all"
174
+ Requires-Dist: dask[bag]; extra == "all"
175
+ Requires-Dist: faker; extra == "all"
176
+ Requires-Dist: diskcache; extra == "all"
177
+ Requires-Dist: regex; extra == "all"
178
+ Requires-Dist: peft; extra == "all"
179
+ Requires-Dist: openpyxl; extra == "all"
180
+ Requires-Dist: sre_yield; extra == "all"
181
+ Requires-Dist: flet-video; extra == "all"
182
+ Requires-Dist: yamlscript; extra == "all"
183
+ Requires-Dist: appdirs; extra == "all"
184
+ Requires-Dist: playwright; extra == "all"
185
+ Requires-Dist: pydantic; extra == "all"
186
+ Requires-Dist: contexttimer; extra == "all"
187
+ Requires-Dist: openai; extra == "all"
188
+ Requires-Dist: google-auth-oauthlib; extra == "all"
189
+ Requires-Dist: pydantic-ai[logfire,openai]; extra == "all"
190
+ Requires-Dist: uvicorn[standard]; extra == "all"
195
191
  Requires-Dist: deepdiff; extra == "all"
192
+ Requires-Dist: pymupdf; extra == "all"
193
+ Requires-Dist: flet[all]; extra == "all"
194
+ Requires-Dist: semver; extra == "all"
195
+ Requires-Dist: Unidecode; extra == "all"
196
+ Requires-Dist: ollama; extra == "all"
197
+ Requires-Dist: logfire[httpx]; extra == "all"
198
+ Requires-Dist: pyyaml; extra == "all"
199
+ Requires-Dist: filetype; extra == "all"
200
+ Requires-Dist: bokeh; extra == "all"
196
201
  Requires-Dist: flet-webview; extra == "all"
197
- Requires-Dist: uvicorn[standard]; extra == "all"
198
- Requires-Dist: deepmerge; extra == "all"
199
- Requires-Dist: pandas; extra == "all"
202
+ Requires-Dist: pydantic-settings; extra == "all"
203
+ Requires-Dist: odfpy; extra == "all"
200
204
  Requires-Dist: google-api-python-client; extra == "all"
201
- Requires-Dist: pymupdf4llm; extra == "all"
202
- Requires-Dist: pycountry; extra == "all"
203
- Requires-Dist: ollama; extra == "all"
204
- Requires-Dist: tinynetrc; extra == "all"
205
- Requires-Dist: sre_yield; extra == "all"
205
+ Requires-Dist: transformers[sentencepiece]; extra == "all"
206
+ Requires-Dist: deepmerge; extra == "all"
206
207
  Requires-Dist: sentence_transformers; extra == "all"
207
- Requires-Dist: pydantic; extra == "all"
208
- Requires-Dist: html2text; extra == "all"
209
- Requires-Dist: flet[all]; extra == "all"
208
+ Requires-Dist: tokenizers; extra == "all"
209
+ Requires-Dist: dnspython[doh]; extra == "all"
210
+ Requires-Dist: httpx_retries; extra == "all"
210
211
  Requires-Dist: google-auth; extra == "all"
211
- Requires-Dist: yamlscript; extra == "all"
212
+ Requires-Dist: pydevd-pycharm~=251.25410.159; extra == "all"
213
+ Requires-Dist: logfire[fastapi]; extra == "all"
212
214
  Requires-Dist: torchvision; extra == "all"
215
+ Requires-Dist: tinynetrc; extra == "all"
216
+ Requires-Dist: pandas; extra == "all"
217
+ Requires-Dist: cachetools; extra == "all"
218
+ Requires-Dist: pymupdf4llm; extra == "all"
219
+ Requires-Dist: setuptools; extra == "all"
213
220
  Requires-Dist: pytest-cov; extra == "all"
214
- Requires-Dist: dask[bag]; extra == "all"
215
- Requires-Dist: flet-video; extra == "all"
216
- Requires-Dist: logfire[fastapi]; extra == "all"
217
- Requires-Dist: diskcache; extra == "all"
218
- Requires-Dist: contexttimer; extra == "all"
219
- Requires-Dist: httpx; extra == "all"
220
- Requires-Dist: pydantic-settings; extra == "all"
221
- Requires-Dist: tokenizers; extra == "all"
222
- Requires-Dist: torchaudio; extra == "all"
223
- Requires-Dist: openpyxl; extra == "all"
221
+ Requires-Dist: pycountry; extra == "all"
224
222
  Requires-Dist: fastapi; extra == "all"
225
- Requires-Dist: appdirs; extra == "all"
223
+ Requires-Dist: python-on-whales; extra == "all"
224
+ Requires-Dist: json_repair; extra == "all"
225
+ Requires-Dist: httpx; extra == "all"
226
226
  Requires-Dist: pydantic-extra-types; extra == "all"
227
- Requires-Dist: google-auth-oauthlib; extra == "all"
228
227
  Requires-Dist: google-auth-httplib2; extra == "all"
229
- Requires-Dist: logfire[httpx]; extra == "all"
228
+ Requires-Dist: beanie[odm]; extra == "all"
229
+ Requires-Dist: tabulate; extra == "all"
230
230
  Dynamic: author
231
231
  Dynamic: author-email
232
232
  Dynamic: description
@@ -1,8 +1,10 @@
1
- from functools import cached_property
2
- from typing import Optional
3
-
4
1
  import flet as ft
2
+ from dataclasses import dataclass
5
3
  from flet.core.gesture_detector import TapEvent
4
+ from flet.core.page import Page
5
+ from flet.core.types import ColorValue, IconValue
6
+ from functools import cached_property
7
+ from typing import Optional
6
8
 
7
9
  from fmtr.tools.logging_tools import logger
8
10
 
@@ -263,3 +265,61 @@ class Table(ft.DataTable):
263
265
  """
264
266
 
265
267
  return self.rows_data[item]
268
+
269
+
270
+ @dataclass
271
+ class NotificationDatum:
272
+ """
273
+
274
+ Color and icon for notification bar
275
+
276
+ """
277
+ color: ColorValue
278
+ icon: IconValue
279
+
280
+
281
+ class NotificationBar(ft.SnackBar):
282
+ """
283
+
284
+ Combined logging and notification bar: infers the appropriate UI representation from the log level
285
+
286
+ """
287
+ DATA = {
288
+ logger.info: NotificationDatum(color=ft.Colors.BLUE, icon=ft.Icons.INFO),
289
+ logger.warning: NotificationDatum(color=ft.Colors.AMBER, icon=ft.Icons.WARNING),
290
+ logger.error: NotificationDatum(color=ft.Colors.RED, icon=ft.Icons.ERROR),
291
+ logger.debug: NotificationDatum(color=ft.Colors.GREY, icon=ft.Icons.BUG_REPORT),
292
+ logger.exception: NotificationDatum(color=ft.Colors.RED_ACCENT, icon=ft.Icons.REPORT),
293
+ }
294
+
295
+ def __init__(self, msg: str, method=logger.info):
296
+ """
297
+
298
+ Log the message immediately, otherwise configure notification bar icon/color.
299
+
300
+ """
301
+ self.msg = msg
302
+ self.method = method
303
+ self.method(msg)
304
+
305
+ icon = ft.Icon(self.data.icon, color=self.data.color)
306
+ text = ft.Text(self.msg)
307
+ content = ft.Row(controls=[icon, text])
308
+ super().__init__(content=content)
309
+
310
+ @cached_property
311
+ def data(self) -> NotificationDatum:
312
+ """
313
+
314
+ Fetching data using logging method.
315
+
316
+ """
317
+ return self.DATA[self.method]
318
+
319
+ def show(self, page: Page):
320
+ """
321
+
322
+ Show the notification on the relevant page.
323
+
324
+ """
325
+ page.open(self)
@@ -0,0 +1 @@
1
+ 1.3.78
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: fmtr.tools
3
- Version: 1.3.77
3
+ Version: 1.3.78
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
@@ -166,67 +166,67 @@ Provides-Extra: db
166
166
  Provides-Extra: db-document
167
167
  Requires-Dist: beanie[odm]; extra == "db-document"
168
168
  Provides-Extra: all
169
- Requires-Dist: pyyaml; extra == "all"
170
- Requires-Dist: Unidecode; extra == "all"
171
- Requires-Dist: pydevd-pycharm~=251.25410.159; extra == "all"
172
- Requires-Dist: openai; extra == "all"
173
- Requires-Dist: json_repair; extra == "all"
174
- Requires-Dist: faker; extra == "all"
175
- Requires-Dist: semver; extra == "all"
176
- Requires-Dist: pydantic-ai[logfire,openai]; extra == "all"
177
- Requires-Dist: tabulate; extra == "all"
178
169
  Requires-Dist: huggingface_hub; extra == "all"
179
- Requires-Dist: dnspython[doh]; extra == "all"
180
- Requires-Dist: setuptools; extra == "all"
181
- Requires-Dist: filetype; extra == "all"
182
170
  Requires-Dist: distributed; extra == "all"
183
- Requires-Dist: bokeh; extra == "all"
184
- Requires-Dist: cachetools; extra == "all"
185
- Requires-Dist: httpx_retries; extra == "all"
186
- Requires-Dist: beanie[odm]; extra == "all"
187
- Requires-Dist: transformers[sentencepiece]; extra == "all"
188
- Requires-Dist: playwright; extra == "all"
189
- Requires-Dist: odfpy; extra == "all"
190
- Requires-Dist: python-on-whales; extra == "all"
191
- Requires-Dist: pymupdf; extra == "all"
192
- Requires-Dist: peft; extra == "all"
193
- Requires-Dist: regex; extra == "all"
171
+ Requires-Dist: torchaudio; extra == "all"
172
+ Requires-Dist: html2text; extra == "all"
194
173
  Requires-Dist: logfire; extra == "all"
174
+ Requires-Dist: dask[bag]; extra == "all"
175
+ Requires-Dist: faker; extra == "all"
176
+ Requires-Dist: diskcache; extra == "all"
177
+ Requires-Dist: regex; extra == "all"
178
+ Requires-Dist: peft; extra == "all"
179
+ Requires-Dist: openpyxl; extra == "all"
180
+ Requires-Dist: sre_yield; extra == "all"
181
+ Requires-Dist: flet-video; extra == "all"
182
+ Requires-Dist: yamlscript; extra == "all"
183
+ Requires-Dist: appdirs; extra == "all"
184
+ Requires-Dist: playwright; extra == "all"
185
+ Requires-Dist: pydantic; extra == "all"
186
+ Requires-Dist: contexttimer; extra == "all"
187
+ Requires-Dist: openai; extra == "all"
188
+ Requires-Dist: google-auth-oauthlib; extra == "all"
189
+ Requires-Dist: pydantic-ai[logfire,openai]; extra == "all"
190
+ Requires-Dist: uvicorn[standard]; extra == "all"
195
191
  Requires-Dist: deepdiff; extra == "all"
192
+ Requires-Dist: pymupdf; extra == "all"
193
+ Requires-Dist: flet[all]; extra == "all"
194
+ Requires-Dist: semver; extra == "all"
195
+ Requires-Dist: Unidecode; extra == "all"
196
+ Requires-Dist: ollama; extra == "all"
197
+ Requires-Dist: logfire[httpx]; extra == "all"
198
+ Requires-Dist: pyyaml; extra == "all"
199
+ Requires-Dist: filetype; extra == "all"
200
+ Requires-Dist: bokeh; extra == "all"
196
201
  Requires-Dist: flet-webview; extra == "all"
197
- Requires-Dist: uvicorn[standard]; extra == "all"
198
- Requires-Dist: deepmerge; extra == "all"
199
- Requires-Dist: pandas; extra == "all"
202
+ Requires-Dist: pydantic-settings; extra == "all"
203
+ Requires-Dist: odfpy; extra == "all"
200
204
  Requires-Dist: google-api-python-client; extra == "all"
201
- Requires-Dist: pymupdf4llm; extra == "all"
202
- Requires-Dist: pycountry; extra == "all"
203
- Requires-Dist: ollama; extra == "all"
204
- Requires-Dist: tinynetrc; extra == "all"
205
- Requires-Dist: sre_yield; extra == "all"
205
+ Requires-Dist: transformers[sentencepiece]; extra == "all"
206
+ Requires-Dist: deepmerge; extra == "all"
206
207
  Requires-Dist: sentence_transformers; extra == "all"
207
- Requires-Dist: pydantic; extra == "all"
208
- Requires-Dist: html2text; extra == "all"
209
- Requires-Dist: flet[all]; extra == "all"
208
+ Requires-Dist: tokenizers; extra == "all"
209
+ Requires-Dist: dnspython[doh]; extra == "all"
210
+ Requires-Dist: httpx_retries; extra == "all"
210
211
  Requires-Dist: google-auth; extra == "all"
211
- Requires-Dist: yamlscript; extra == "all"
212
+ Requires-Dist: pydevd-pycharm~=251.25410.159; extra == "all"
213
+ Requires-Dist: logfire[fastapi]; extra == "all"
212
214
  Requires-Dist: torchvision; extra == "all"
215
+ Requires-Dist: tinynetrc; extra == "all"
216
+ Requires-Dist: pandas; extra == "all"
217
+ Requires-Dist: cachetools; extra == "all"
218
+ Requires-Dist: pymupdf4llm; extra == "all"
219
+ Requires-Dist: setuptools; extra == "all"
213
220
  Requires-Dist: pytest-cov; extra == "all"
214
- Requires-Dist: dask[bag]; extra == "all"
215
- Requires-Dist: flet-video; extra == "all"
216
- Requires-Dist: logfire[fastapi]; extra == "all"
217
- Requires-Dist: diskcache; extra == "all"
218
- Requires-Dist: contexttimer; extra == "all"
219
- Requires-Dist: httpx; extra == "all"
220
- Requires-Dist: pydantic-settings; extra == "all"
221
- Requires-Dist: tokenizers; extra == "all"
222
- Requires-Dist: torchaudio; extra == "all"
223
- Requires-Dist: openpyxl; extra == "all"
221
+ Requires-Dist: pycountry; extra == "all"
224
222
  Requires-Dist: fastapi; extra == "all"
225
- Requires-Dist: appdirs; extra == "all"
223
+ Requires-Dist: python-on-whales; extra == "all"
224
+ Requires-Dist: json_repair; extra == "all"
225
+ Requires-Dist: httpx; extra == "all"
226
226
  Requires-Dist: pydantic-extra-types; extra == "all"
227
- Requires-Dist: google-auth-oauthlib; extra == "all"
228
227
  Requires-Dist: google-auth-httplib2; extra == "all"
229
- Requires-Dist: logfire[httpx]; extra == "all"
228
+ Requires-Dist: beanie[odm]; extra == "all"
229
+ Requires-Dist: tabulate; extra == "all"
230
230
  Dynamic: author
231
231
  Dynamic: author-email
232
232
  Dynamic: description
@@ -1 +0,0 @@
1
- 1.3.77
File without changes
File without changes
@@ -18,67 +18,67 @@ pydantic-ai[logfire,openai]
18
18
  ollama
19
19
 
20
20
  [all]
21
- pyyaml
22
- Unidecode
23
- pydevd-pycharm~=251.25410.159
24
- openai
25
- json_repair
26
- faker
27
- semver
28
- pydantic-ai[logfire,openai]
29
- tabulate
30
21
  huggingface_hub
31
- dnspython[doh]
32
- setuptools
33
- filetype
34
22
  distributed
35
- bokeh
36
- cachetools
37
- httpx_retries
38
- beanie[odm]
39
- transformers[sentencepiece]
40
- playwright
41
- odfpy
42
- python-on-whales
43
- pymupdf
44
- peft
45
- regex
23
+ torchaudio
24
+ html2text
46
25
  logfire
26
+ dask[bag]
27
+ faker
28
+ diskcache
29
+ regex
30
+ peft
31
+ openpyxl
32
+ sre_yield
33
+ flet-video
34
+ yamlscript
35
+ appdirs
36
+ playwright
37
+ pydantic
38
+ contexttimer
39
+ openai
40
+ google-auth-oauthlib
41
+ pydantic-ai[logfire,openai]
42
+ uvicorn[standard]
47
43
  deepdiff
44
+ pymupdf
45
+ flet[all]
46
+ semver
47
+ Unidecode
48
+ ollama
49
+ logfire[httpx]
50
+ pyyaml
51
+ filetype
52
+ bokeh
48
53
  flet-webview
49
- uvicorn[standard]
50
- deepmerge
51
- pandas
54
+ pydantic-settings
55
+ odfpy
52
56
  google-api-python-client
53
- pymupdf4llm
54
- pycountry
55
- ollama
56
- tinynetrc
57
- sre_yield
57
+ transformers[sentencepiece]
58
+ deepmerge
58
59
  sentence_transformers
59
- pydantic
60
- html2text
61
- flet[all]
60
+ tokenizers
61
+ dnspython[doh]
62
+ httpx_retries
62
63
  google-auth
63
- yamlscript
64
+ pydevd-pycharm~=251.25410.159
65
+ logfire[fastapi]
64
66
  torchvision
67
+ tinynetrc
68
+ pandas
69
+ cachetools
70
+ pymupdf4llm
71
+ setuptools
65
72
  pytest-cov
66
- dask[bag]
67
- flet-video
68
- logfire[fastapi]
69
- diskcache
70
- contexttimer
71
- httpx
72
- pydantic-settings
73
- tokenizers
74
- torchaudio
75
- openpyxl
73
+ pycountry
76
74
  fastapi
77
- appdirs
75
+ python-on-whales
76
+ json_repair
77
+ httpx
78
78
  pydantic-extra-types
79
- google-auth-oauthlib
80
79
  google-auth-httplib2
81
- logfire[httpx]
80
+ beanie[odm]
81
+ tabulate
82
82
 
83
83
  [api]
84
84
  fastapi
File without changes
File without changes
File without changes