fmtr.tools 1.3.39__tar.gz → 1.3.40__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 (97) hide show
  1. {fmtr_tools-1.3.39 → fmtr_tools-1.3.40}/PKG-INFO +45 -45
  2. {fmtr_tools-1.3.39 → fmtr_tools-1.3.40}/fmtr/tools/interface_tools/__init__.py +1 -0
  3. fmtr_tools-1.3.40/fmtr/tools/interface_tools/context.py +12 -0
  4. {fmtr_tools-1.3.39 → fmtr_tools-1.3.40}/fmtr/tools/interface_tools/interface_tools.py +12 -5
  5. fmtr_tools-1.3.40/fmtr/tools/version +1 -0
  6. {fmtr_tools-1.3.39 → fmtr_tools-1.3.40}/fmtr.tools.egg-info/PKG-INFO +45 -45
  7. {fmtr_tools-1.3.39 → fmtr_tools-1.3.40}/fmtr.tools.egg-info/SOURCES.txt +2 -0
  8. fmtr_tools-1.3.39/fmtr/tools/version +0 -1
  9. {fmtr_tools-1.3.39 → fmtr_tools-1.3.40}/LICENSE +0 -0
  10. {fmtr_tools-1.3.39 → fmtr_tools-1.3.40}/README.md +0 -0
  11. {fmtr_tools-1.3.39 → fmtr_tools-1.3.40}/fmtr/tools/__init__.py +0 -0
  12. {fmtr_tools-1.3.39 → fmtr_tools-1.3.40}/fmtr/tools/ai_tools/__init__.py +0 -0
  13. {fmtr_tools-1.3.39 → fmtr_tools-1.3.40}/fmtr/tools/ai_tools/agentic_tools.py +0 -0
  14. {fmtr_tools-1.3.39 → fmtr_tools-1.3.40}/fmtr/tools/ai_tools/inference_tools.py +0 -0
  15. {fmtr_tools-1.3.39 → fmtr_tools-1.3.40}/fmtr/tools/api_tools.py +0 -0
  16. {fmtr_tools-1.3.39 → fmtr_tools-1.3.40}/fmtr/tools/async_tools.py +0 -0
  17. {fmtr_tools-1.3.39 → fmtr_tools-1.3.40}/fmtr/tools/augmentation_tools.py +0 -0
  18. {fmtr_tools-1.3.39 → fmtr_tools-1.3.40}/fmtr/tools/caching_tools.py +0 -0
  19. {fmtr_tools-1.3.39 → fmtr_tools-1.3.40}/fmtr/tools/constants.py +0 -0
  20. {fmtr_tools-1.3.39 → fmtr_tools-1.3.40}/fmtr/tools/context_tools.py +0 -0
  21. {fmtr_tools-1.3.39 → fmtr_tools-1.3.40}/fmtr/tools/data_modelling_tools.py +0 -0
  22. {fmtr_tools-1.3.39 → fmtr_tools-1.3.40}/fmtr/tools/dataclass_tools.py +0 -0
  23. {fmtr_tools-1.3.39 → fmtr_tools-1.3.40}/fmtr/tools/datatype_tools.py +0 -0
  24. {fmtr_tools-1.3.39 → fmtr_tools-1.3.40}/fmtr/tools/debugging_tools.py +0 -0
  25. {fmtr_tools-1.3.39 → fmtr_tools-1.3.40}/fmtr/tools/dns_tools/__init__.py +0 -0
  26. {fmtr_tools-1.3.39 → fmtr_tools-1.3.40}/fmtr/tools/dns_tools/client.py +0 -0
  27. {fmtr_tools-1.3.39 → fmtr_tools-1.3.40}/fmtr/tools/dns_tools/dm.py +0 -0
  28. {fmtr_tools-1.3.39 → fmtr_tools-1.3.40}/fmtr/tools/dns_tools/proxy.py +0 -0
  29. {fmtr_tools-1.3.39 → fmtr_tools-1.3.40}/fmtr/tools/dns_tools/server.py +0 -0
  30. {fmtr_tools-1.3.39 → fmtr_tools-1.3.40}/fmtr/tools/docker_tools.py +0 -0
  31. {fmtr_tools-1.3.39 → fmtr_tools-1.3.40}/fmtr/tools/entrypoints/__init__.py +0 -0
  32. {fmtr_tools-1.3.39 → fmtr_tools-1.3.40}/fmtr/tools/entrypoints/cache_hfh.py +0 -0
  33. {fmtr_tools-1.3.39 → fmtr_tools-1.3.40}/fmtr/tools/entrypoints/ep_test.py +0 -0
  34. {fmtr_tools-1.3.39 → fmtr_tools-1.3.40}/fmtr/tools/entrypoints/install_yamlscript.py +0 -0
  35. {fmtr_tools-1.3.39 → fmtr_tools-1.3.40}/fmtr/tools/entrypoints/remote_debug_test.py +0 -0
  36. {fmtr_tools-1.3.39 → fmtr_tools-1.3.40}/fmtr/tools/entrypoints/shell_debug.py +0 -0
  37. {fmtr_tools-1.3.39 → fmtr_tools-1.3.40}/fmtr/tools/environment_tools.py +0 -0
  38. {fmtr_tools-1.3.39 → fmtr_tools-1.3.40}/fmtr/tools/function_tools.py +0 -0
  39. {fmtr_tools-1.3.39 → fmtr_tools-1.3.40}/fmtr/tools/google_api_tools.py +0 -0
  40. {fmtr_tools-1.3.39 → fmtr_tools-1.3.40}/fmtr/tools/hash_tools.py +0 -0
  41. {fmtr_tools-1.3.39 → fmtr_tools-1.3.40}/fmtr/tools/hfh_tools.py +0 -0
  42. {fmtr_tools-1.3.39 → fmtr_tools-1.3.40}/fmtr/tools/html_tools.py +0 -0
  43. {fmtr_tools-1.3.39 → fmtr_tools-1.3.40}/fmtr/tools/http_tools.py +0 -0
  44. {fmtr_tools-1.3.39 → fmtr_tools-1.3.40}/fmtr/tools/import_tools.py +0 -0
  45. {fmtr_tools-1.3.39 → fmtr_tools-1.3.40}/fmtr/tools/inherit_tools.py +0 -0
  46. {fmtr_tools-1.3.39 → fmtr_tools-1.3.40}/fmtr/tools/inspection_tools.py +0 -0
  47. {fmtr_tools-1.3.39 → fmtr_tools-1.3.40}/fmtr/tools/interface_tools/controls.py +0 -0
  48. {fmtr_tools-1.3.39 → fmtr_tools-1.3.40}/fmtr/tools/iterator_tools.py +0 -0
  49. {fmtr_tools-1.3.39 → fmtr_tools-1.3.40}/fmtr/tools/json_fix_tools.py +0 -0
  50. {fmtr_tools-1.3.39 → fmtr_tools-1.3.40}/fmtr/tools/json_tools.py +0 -0
  51. {fmtr_tools-1.3.39 → fmtr_tools-1.3.40}/fmtr/tools/logging_tools.py +0 -0
  52. {fmtr_tools-1.3.39 → fmtr_tools-1.3.40}/fmtr/tools/merging_tools.py +0 -0
  53. {fmtr_tools-1.3.39 → fmtr_tools-1.3.40}/fmtr/tools/metric_tools.py +0 -0
  54. {fmtr_tools-1.3.39 → fmtr_tools-1.3.40}/fmtr/tools/name_tools.py +0 -0
  55. {fmtr_tools-1.3.39 → fmtr_tools-1.3.40}/fmtr/tools/netrc_tools.py +0 -0
  56. {fmtr_tools-1.3.39 → fmtr_tools-1.3.40}/fmtr/tools/openai_tools.py +0 -0
  57. {fmtr_tools-1.3.39 → fmtr_tools-1.3.40}/fmtr/tools/packaging_tools.py +0 -0
  58. {fmtr_tools-1.3.39 → fmtr_tools-1.3.40}/fmtr/tools/parallel_tools.py +0 -0
  59. {fmtr_tools-1.3.39 → fmtr_tools-1.3.40}/fmtr/tools/path_tools/__init__.py +0 -0
  60. {fmtr_tools-1.3.39 → fmtr_tools-1.3.40}/fmtr/tools/path_tools/app_path_tools.py +0 -0
  61. {fmtr_tools-1.3.39 → fmtr_tools-1.3.40}/fmtr/tools/path_tools/path_tools.py +0 -0
  62. {fmtr_tools-1.3.39 → fmtr_tools-1.3.40}/fmtr/tools/path_tools/type_path_tools.py +0 -0
  63. {fmtr_tools-1.3.39 → fmtr_tools-1.3.40}/fmtr/tools/pattern_tools.py +0 -0
  64. {fmtr_tools-1.3.39 → fmtr_tools-1.3.40}/fmtr/tools/pdf_tools.py +0 -0
  65. {fmtr_tools-1.3.39 → fmtr_tools-1.3.40}/fmtr/tools/platform_tools.py +0 -0
  66. {fmtr_tools-1.3.39 → fmtr_tools-1.3.40}/fmtr/tools/process_tools.py +0 -0
  67. {fmtr_tools-1.3.39 → fmtr_tools-1.3.40}/fmtr/tools/profiling_tools.py +0 -0
  68. {fmtr_tools-1.3.39 → fmtr_tools-1.3.40}/fmtr/tools/random_tools.py +0 -0
  69. {fmtr_tools-1.3.39 → fmtr_tools-1.3.40}/fmtr/tools/semantic_tools.py +0 -0
  70. {fmtr_tools-1.3.39 → fmtr_tools-1.3.40}/fmtr/tools/settings_tools.py +0 -0
  71. {fmtr_tools-1.3.39 → fmtr_tools-1.3.40}/fmtr/tools/setup_tools/__init__.py +0 -0
  72. {fmtr_tools-1.3.39 → fmtr_tools-1.3.40}/fmtr/tools/setup_tools/setup_tools.py +0 -0
  73. {fmtr_tools-1.3.39 → fmtr_tools-1.3.40}/fmtr/tools/spaces_tools.py +0 -0
  74. {fmtr_tools-1.3.39 → fmtr_tools-1.3.40}/fmtr/tools/string_tools.py +0 -0
  75. {fmtr_tools-1.3.39 → fmtr_tools-1.3.40}/fmtr/tools/tabular_tools.py +0 -0
  76. {fmtr_tools-1.3.39 → fmtr_tools-1.3.40}/fmtr/tools/tests/__init__.py +0 -0
  77. {fmtr_tools-1.3.39 → fmtr_tools-1.3.40}/fmtr/tools/tests/conftest.py +0 -0
  78. {fmtr_tools-1.3.39 → fmtr_tools-1.3.40}/fmtr/tools/tests/helpers.py +0 -0
  79. {fmtr_tools-1.3.39 → fmtr_tools-1.3.40}/fmtr/tools/tests/test_datatype.py +0 -0
  80. {fmtr_tools-1.3.39 → fmtr_tools-1.3.40}/fmtr/tools/tests/test_environment.py +0 -0
  81. {fmtr_tools-1.3.39 → fmtr_tools-1.3.40}/fmtr/tools/tests/test_json.py +0 -0
  82. {fmtr_tools-1.3.39 → fmtr_tools-1.3.40}/fmtr/tools/tests/test_path.py +0 -0
  83. {fmtr_tools-1.3.39 → fmtr_tools-1.3.40}/fmtr/tools/tests/test_yaml.py +0 -0
  84. {fmtr_tools-1.3.39 → fmtr_tools-1.3.40}/fmtr/tools/tokenization_tools.py +0 -0
  85. {fmtr_tools-1.3.39 → fmtr_tools-1.3.40}/fmtr/tools/tools.py +0 -0
  86. {fmtr_tools-1.3.39 → fmtr_tools-1.3.40}/fmtr/tools/unicode_tools.py +0 -0
  87. {fmtr_tools-1.3.39 → fmtr_tools-1.3.40}/fmtr/tools/version_tools/__init__.py +0 -0
  88. {fmtr_tools-1.3.39 → fmtr_tools-1.3.40}/fmtr/tools/version_tools/version_tools.py +0 -0
  89. {fmtr_tools-1.3.39 → fmtr_tools-1.3.40}/fmtr/tools/webhook_tools.py +0 -0
  90. {fmtr_tools-1.3.39 → fmtr_tools-1.3.40}/fmtr/tools/yaml_tools.py +0 -0
  91. {fmtr_tools-1.3.39 → fmtr_tools-1.3.40}/fmtr.tools.egg-info/dependency_links.txt +0 -0
  92. {fmtr_tools-1.3.39 → fmtr_tools-1.3.40}/fmtr.tools.egg-info/entry_points.txt +0 -0
  93. {fmtr_tools-1.3.39 → fmtr_tools-1.3.40}/fmtr.tools.egg-info/requires.txt +44 -44
  94. {fmtr_tools-1.3.39 → fmtr_tools-1.3.40}/fmtr.tools.egg-info/top_level.txt +0 -0
  95. {fmtr_tools-1.3.39 → fmtr_tools-1.3.40}/pyproject.toml +0 -0
  96. {fmtr_tools-1.3.39 → fmtr_tools-1.3.40}/setup.cfg +0 -0
  97. {fmtr_tools-1.3.39 → fmtr_tools-1.3.40}/setup.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: fmtr.tools
3
- Version: 1.3.39
3
+ Version: 1.3.40
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
@@ -133,62 +133,62 @@ Requires-Dist: logfire[httpx]; extra == "webhook"
133
133
  Provides-Extra: browsers
134
134
  Requires-Dist: playwright; extra == "browsers"
135
135
  Provides-Extra: all
136
- Requires-Dist: distributed; extra == "all"
137
- Requires-Dist: pyyaml; extra == "all"
138
- Requires-Dist: flet-webview; extra == "all"
139
- Requires-Dist: google-api-python-client; extra == "all"
140
- Requires-Dist: cachetools; extra == "all"
141
- Requires-Dist: flet[all]; extra == "all"
142
- Requires-Dist: transformers[sentencepiece]; extra == "all"
143
136
  Requires-Dist: sentence_transformers; extra == "all"
144
- Requires-Dist: yamlscript; extra == "all"
145
- Requires-Dist: pytest-cov; extra == "all"
146
- Requires-Dist: json_repair; extra == "all"
147
- Requires-Dist: logfire[fastapi]; extra == "all"
148
- Requires-Dist: Unidecode; extra == "all"
149
- Requires-Dist: pymupdf4llm; extra == "all"
150
- Requires-Dist: semver; extra == "all"
151
- Requires-Dist: google-auth-oauthlib; extra == "all"
152
- Requires-Dist: appdirs; extra == "all"
153
- Requires-Dist: bokeh; extra == "all"
154
- Requires-Dist: sre_yield; extra == "all"
155
- Requires-Dist: pydevd-pycharm~=251.25410.159; extra == "all"
156
137
  Requires-Dist: google-auth; extra == "all"
138
+ Requires-Dist: flet[all]; extra == "all"
139
+ Requires-Dist: html2text; extra == "all"
140
+ Requires-Dist: ollama; extra == "all"
141
+ Requires-Dist: google-auth-oauthlib; extra == "all"
157
142
  Requires-Dist: docker; extra == "all"
158
- Requires-Dist: httpx_retries; extra == "all"
143
+ Requires-Dist: pytest-cov; extra == "all"
159
144
  Requires-Dist: pandas; extra == "all"
160
- Requires-Dist: google-auth-httplib2; extra == "all"
161
- Requires-Dist: filetype; extra == "all"
162
- Requires-Dist: torchaudio; extra == "all"
163
- Requires-Dist: diskcache; extra == "all"
145
+ Requires-Dist: openpyxl; extra == "all"
164
146
  Requires-Dist: tokenizers; extra == "all"
165
- Requires-Dist: html2text; extra == "all"
166
- Requires-Dist: dask[bag]; extra == "all"
167
- Requires-Dist: flet-video; extra == "all"
168
- Requires-Dist: contexttimer; extra == "all"
169
- Requires-Dist: setuptools; extra == "all"
170
- Requires-Dist: pydantic; extra == "all"
147
+ Requires-Dist: peft; extra == "all"
148
+ Requires-Dist: google-api-python-client; extra == "all"
149
+ Requires-Dist: pydantic-ai[logfire,openai]; extra == "all"
150
+ Requires-Dist: transformers[sentencepiece]; extra == "all"
151
+ Requires-Dist: google-auth-httplib2; extra == "all"
152
+ Requires-Dist: Unidecode; extra == "all"
153
+ Requires-Dist: tabulate; extra == "all"
154
+ Requires-Dist: pydevd-pycharm~=251.25410.159; extra == "all"
171
155
  Requires-Dist: dnspython[doh]; extra == "all"
172
- Requires-Dist: openai; extra == "all"
173
- Requires-Dist: huggingface_hub; extra == "all"
174
- Requires-Dist: logfire[httpx]; extra == "all"
156
+ Requires-Dist: pydantic-settings; extra == "all"
175
157
  Requires-Dist: fastapi; extra == "all"
158
+ Requires-Dist: json_repair; extra == "all"
159
+ Requires-Dist: pymupdf4llm; extra == "all"
160
+ Requires-Dist: pymupdf; extra == "all"
161
+ Requires-Dist: logfire[httpx]; extra == "all"
162
+ Requires-Dist: flet-video; extra == "all"
163
+ Requires-Dist: httpx_retries; extra == "all"
176
164
  Requires-Dist: deepmerge; extra == "all"
177
165
  Requires-Dist: logfire; extra == "all"
178
- Requires-Dist: pymupdf; extra == "all"
179
- Requires-Dist: httpx; extra == "all"
180
- Requires-Dist: tabulate; extra == "all"
181
- Requires-Dist: pydantic-settings; extra == "all"
182
- Requires-Dist: pydantic-ai[logfire,openai]; extra == "all"
183
- Requires-Dist: regex; extra == "all"
184
- Requires-Dist: faker; extra == "all"
185
- Requires-Dist: ollama; extra == "all"
186
- Requires-Dist: openpyxl; extra == "all"
166
+ Requires-Dist: distributed; extra == "all"
187
167
  Requires-Dist: playwright; extra == "all"
188
- Requires-Dist: tinynetrc; extra == "all"
168
+ Requires-Dist: pydantic; extra == "all"
189
169
  Requires-Dist: uvicorn[standard]; extra == "all"
190
- Requires-Dist: peft; extra == "all"
170
+ Requires-Dist: cachetools; extra == "all"
171
+ Requires-Dist: pyyaml; extra == "all"
172
+ Requires-Dist: bokeh; extra == "all"
173
+ Requires-Dist: openai; extra == "all"
174
+ Requires-Dist: tinynetrc; extra == "all"
175
+ Requires-Dist: huggingface_hub; extra == "all"
176
+ Requires-Dist: appdirs; extra == "all"
177
+ Requires-Dist: flet-webview; extra == "all"
178
+ Requires-Dist: yamlscript; extra == "all"
179
+ Requires-Dist: diskcache; extra == "all"
180
+ Requires-Dist: sre_yield; extra == "all"
181
+ Requires-Dist: semver; extra == "all"
182
+ Requires-Dist: faker; extra == "all"
183
+ Requires-Dist: contexttimer; extra == "all"
184
+ Requires-Dist: setuptools; extra == "all"
191
185
  Requires-Dist: torchvision; extra == "all"
186
+ Requires-Dist: logfire[fastapi]; extra == "all"
187
+ Requires-Dist: regex; extra == "all"
188
+ Requires-Dist: torchaudio; extra == "all"
189
+ Requires-Dist: dask[bag]; extra == "all"
190
+ Requires-Dist: httpx; extra == "all"
191
+ Requires-Dist: filetype; extra == "all"
192
192
  Dynamic: author
193
193
  Dynamic: author-email
194
194
  Dynamic: description
@@ -3,5 +3,6 @@ from fmtr.tools.import_tools import MissingExtraMockModule
3
3
  try:
4
4
  from fmtr.tools.interface_tools.interface_tools import Interface, update, progress
5
5
  from fmtr.tools.interface_tools import controls
6
+ from fmtr.tools.interface_tools.context import Context
6
7
  except ImportError as exception:
7
8
  Interface = update = progress = controls = MissingExtraMockModule('interface', exception)
@@ -0,0 +1,12 @@
1
+ from flet.core.page import Page
2
+
3
+ from fmtr.tools.data_modelling_tools import Base, MixinArbitraryTypes
4
+
5
+
6
+ class Context(Base, MixinArbitraryTypes):
7
+ """
8
+
9
+ Base context class
10
+
11
+ """
12
+ page: Page
@@ -1,12 +1,13 @@
1
- from functools import cached_property
2
-
3
1
  import flet as ft
4
2
  from flet.core.types import AppView
5
3
  from flet.core.view import View
4
+ from functools import cached_property
5
+ from typing import TypeVar, Generic, Type
6
6
 
7
7
  from fmtr.tools import environment_tools
8
8
  from fmtr.tools.constants import Constants
9
9
  from fmtr.tools.function_tools import MethodDecorator
10
+ from fmtr.tools.interface_tools.context import Context
10
11
  from fmtr.tools.logging_tools import logger
11
12
 
12
13
 
@@ -55,9 +56,10 @@ class progress(update):
55
56
  super().stop(instance)
56
57
 
57
58
 
59
+ T = TypeVar('T', bound=Context)
58
60
 
59
61
 
60
- class Interface(ft.Column):
62
+ class Interface(Generic[T], ft.Column):
61
63
  """
62
64
 
63
65
  Simple interface base class.
@@ -72,12 +74,15 @@ class Interface(ft.Column):
72
74
  ROUTE_ROOT = '/'
73
75
  SCROLL = ft.ScrollMode.AUTO
74
76
 
75
- def __init__(self, *args, **kwargs):
77
+ TypeContext: Type[T] = Context
78
+
79
+ def __init__(self, context: T, *args, **kwargs):
76
80
  """
77
81
 
78
82
  Instantiate and apply interface config
79
83
 
80
84
  """
85
+ self.context = context
81
86
  super().__init__(*args, **kwargs, scroll=self.SCROLL)
82
87
 
83
88
  @classmethod
@@ -88,9 +93,11 @@ class Interface(ft.Column):
88
93
 
89
94
  """
90
95
  if not page.on_route_change:
96
+ page.title = cls.TITLE
91
97
  page.theme = cls.get_theme()
92
98
  page.views.clear()
93
- self = cls()
99
+ context = cls.TypeContext(page=page)
100
+ self = cls(context)
94
101
  view = self.view
95
102
  if not view:
96
103
  view = self
@@ -0,0 +1 @@
1
+ 1.3.40
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: fmtr.tools
3
- Version: 1.3.39
3
+ Version: 1.3.40
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
@@ -133,62 +133,62 @@ Requires-Dist: logfire[httpx]; extra == "webhook"
133
133
  Provides-Extra: browsers
134
134
  Requires-Dist: playwright; extra == "browsers"
135
135
  Provides-Extra: all
136
- Requires-Dist: distributed; extra == "all"
137
- Requires-Dist: pyyaml; extra == "all"
138
- Requires-Dist: flet-webview; extra == "all"
139
- Requires-Dist: google-api-python-client; extra == "all"
140
- Requires-Dist: cachetools; extra == "all"
141
- Requires-Dist: flet[all]; extra == "all"
142
- Requires-Dist: transformers[sentencepiece]; extra == "all"
143
136
  Requires-Dist: sentence_transformers; extra == "all"
144
- Requires-Dist: yamlscript; extra == "all"
145
- Requires-Dist: pytest-cov; extra == "all"
146
- Requires-Dist: json_repair; extra == "all"
147
- Requires-Dist: logfire[fastapi]; extra == "all"
148
- Requires-Dist: Unidecode; extra == "all"
149
- Requires-Dist: pymupdf4llm; extra == "all"
150
- Requires-Dist: semver; extra == "all"
151
- Requires-Dist: google-auth-oauthlib; extra == "all"
152
- Requires-Dist: appdirs; extra == "all"
153
- Requires-Dist: bokeh; extra == "all"
154
- Requires-Dist: sre_yield; extra == "all"
155
- Requires-Dist: pydevd-pycharm~=251.25410.159; extra == "all"
156
137
  Requires-Dist: google-auth; extra == "all"
138
+ Requires-Dist: flet[all]; extra == "all"
139
+ Requires-Dist: html2text; extra == "all"
140
+ Requires-Dist: ollama; extra == "all"
141
+ Requires-Dist: google-auth-oauthlib; extra == "all"
157
142
  Requires-Dist: docker; extra == "all"
158
- Requires-Dist: httpx_retries; extra == "all"
143
+ Requires-Dist: pytest-cov; extra == "all"
159
144
  Requires-Dist: pandas; extra == "all"
160
- Requires-Dist: google-auth-httplib2; extra == "all"
161
- Requires-Dist: filetype; extra == "all"
162
- Requires-Dist: torchaudio; extra == "all"
163
- Requires-Dist: diskcache; extra == "all"
145
+ Requires-Dist: openpyxl; extra == "all"
164
146
  Requires-Dist: tokenizers; extra == "all"
165
- Requires-Dist: html2text; extra == "all"
166
- Requires-Dist: dask[bag]; extra == "all"
167
- Requires-Dist: flet-video; extra == "all"
168
- Requires-Dist: contexttimer; extra == "all"
169
- Requires-Dist: setuptools; extra == "all"
170
- Requires-Dist: pydantic; extra == "all"
147
+ Requires-Dist: peft; extra == "all"
148
+ Requires-Dist: google-api-python-client; extra == "all"
149
+ Requires-Dist: pydantic-ai[logfire,openai]; extra == "all"
150
+ Requires-Dist: transformers[sentencepiece]; extra == "all"
151
+ Requires-Dist: google-auth-httplib2; extra == "all"
152
+ Requires-Dist: Unidecode; extra == "all"
153
+ Requires-Dist: tabulate; extra == "all"
154
+ Requires-Dist: pydevd-pycharm~=251.25410.159; extra == "all"
171
155
  Requires-Dist: dnspython[doh]; extra == "all"
172
- Requires-Dist: openai; extra == "all"
173
- Requires-Dist: huggingface_hub; extra == "all"
174
- Requires-Dist: logfire[httpx]; extra == "all"
156
+ Requires-Dist: pydantic-settings; extra == "all"
175
157
  Requires-Dist: fastapi; extra == "all"
158
+ Requires-Dist: json_repair; extra == "all"
159
+ Requires-Dist: pymupdf4llm; extra == "all"
160
+ Requires-Dist: pymupdf; extra == "all"
161
+ Requires-Dist: logfire[httpx]; extra == "all"
162
+ Requires-Dist: flet-video; extra == "all"
163
+ Requires-Dist: httpx_retries; extra == "all"
176
164
  Requires-Dist: deepmerge; extra == "all"
177
165
  Requires-Dist: logfire; extra == "all"
178
- Requires-Dist: pymupdf; extra == "all"
179
- Requires-Dist: httpx; extra == "all"
180
- Requires-Dist: tabulate; extra == "all"
181
- Requires-Dist: pydantic-settings; extra == "all"
182
- Requires-Dist: pydantic-ai[logfire,openai]; extra == "all"
183
- Requires-Dist: regex; extra == "all"
184
- Requires-Dist: faker; extra == "all"
185
- Requires-Dist: ollama; extra == "all"
186
- Requires-Dist: openpyxl; extra == "all"
166
+ Requires-Dist: distributed; extra == "all"
187
167
  Requires-Dist: playwright; extra == "all"
188
- Requires-Dist: tinynetrc; extra == "all"
168
+ Requires-Dist: pydantic; extra == "all"
189
169
  Requires-Dist: uvicorn[standard]; extra == "all"
190
- Requires-Dist: peft; extra == "all"
170
+ Requires-Dist: cachetools; extra == "all"
171
+ Requires-Dist: pyyaml; extra == "all"
172
+ Requires-Dist: bokeh; extra == "all"
173
+ Requires-Dist: openai; extra == "all"
174
+ Requires-Dist: tinynetrc; extra == "all"
175
+ Requires-Dist: huggingface_hub; extra == "all"
176
+ Requires-Dist: appdirs; extra == "all"
177
+ Requires-Dist: flet-webview; extra == "all"
178
+ Requires-Dist: yamlscript; extra == "all"
179
+ Requires-Dist: diskcache; extra == "all"
180
+ Requires-Dist: sre_yield; extra == "all"
181
+ Requires-Dist: semver; extra == "all"
182
+ Requires-Dist: faker; extra == "all"
183
+ Requires-Dist: contexttimer; extra == "all"
184
+ Requires-Dist: setuptools; extra == "all"
191
185
  Requires-Dist: torchvision; extra == "all"
186
+ Requires-Dist: logfire[fastapi]; extra == "all"
187
+ Requires-Dist: regex; extra == "all"
188
+ Requires-Dist: torchaudio; extra == "all"
189
+ Requires-Dist: dask[bag]; extra == "all"
190
+ Requires-Dist: httpx; extra == "all"
191
+ Requires-Dist: filetype; extra == "all"
192
192
  Dynamic: author
193
193
  Dynamic: author-email
194
194
  Dynamic: description
@@ -67,6 +67,7 @@ setup.py
67
67
  ./fmtr/tools/entrypoints/remote_debug_test.py
68
68
  ./fmtr/tools/entrypoints/shell_debug.py
69
69
  ./fmtr/tools/interface_tools/__init__.py
70
+ ./fmtr/tools/interface_tools/context.py
70
71
  ./fmtr/tools/interface_tools/controls.py
71
72
  ./fmtr/tools/interface_tools/interface_tools.py
72
73
  ./fmtr/tools/path_tools/__init__.py
@@ -156,6 +157,7 @@ fmtr/tools/entrypoints/install_yamlscript.py
156
157
  fmtr/tools/entrypoints/remote_debug_test.py
157
158
  fmtr/tools/entrypoints/shell_debug.py
158
159
  fmtr/tools/interface_tools/__init__.py
160
+ fmtr/tools/interface_tools/context.py
159
161
  fmtr/tools/interface_tools/controls.py
160
162
  fmtr/tools/interface_tools/interface_tools.py
161
163
  fmtr/tools/path_tools/__init__.py
@@ -1 +0,0 @@
1
- 1.3.39
File without changes
File without changes
@@ -14,62 +14,62 @@ pydantic-ai[logfire,openai]
14
14
  ollama
15
15
 
16
16
  [all]
17
- distributed
18
- pyyaml
19
- flet-webview
20
- google-api-python-client
21
- cachetools
22
- flet[all]
23
- transformers[sentencepiece]
24
17
  sentence_transformers
25
- yamlscript
26
- pytest-cov
27
- json_repair
28
- logfire[fastapi]
29
- Unidecode
30
- pymupdf4llm
31
- semver
32
- google-auth-oauthlib
33
- appdirs
34
- bokeh
35
- sre_yield
36
- pydevd-pycharm~=251.25410.159
37
18
  google-auth
19
+ flet[all]
20
+ html2text
21
+ ollama
22
+ google-auth-oauthlib
38
23
  docker
39
- httpx_retries
24
+ pytest-cov
40
25
  pandas
41
- google-auth-httplib2
42
- filetype
43
- torchaudio
44
- diskcache
26
+ openpyxl
45
27
  tokenizers
46
- html2text
47
- dask[bag]
48
- flet-video
49
- contexttimer
50
- setuptools
51
- pydantic
28
+ peft
29
+ google-api-python-client
30
+ pydantic-ai[logfire,openai]
31
+ transformers[sentencepiece]
32
+ google-auth-httplib2
33
+ Unidecode
34
+ tabulate
35
+ pydevd-pycharm~=251.25410.159
52
36
  dnspython[doh]
53
- openai
54
- huggingface_hub
55
- logfire[httpx]
37
+ pydantic-settings
56
38
  fastapi
39
+ json_repair
40
+ pymupdf4llm
41
+ pymupdf
42
+ logfire[httpx]
43
+ flet-video
44
+ httpx_retries
57
45
  deepmerge
58
46
  logfire
59
- pymupdf
60
- httpx
61
- tabulate
62
- pydantic-settings
63
- pydantic-ai[logfire,openai]
64
- regex
65
- faker
66
- ollama
67
- openpyxl
47
+ distributed
68
48
  playwright
69
- tinynetrc
49
+ pydantic
70
50
  uvicorn[standard]
71
- peft
51
+ cachetools
52
+ pyyaml
53
+ bokeh
54
+ openai
55
+ tinynetrc
56
+ huggingface_hub
57
+ appdirs
58
+ flet-webview
59
+ yamlscript
60
+ diskcache
61
+ sre_yield
62
+ semver
63
+ faker
64
+ contexttimer
65
+ setuptools
72
66
  torchvision
67
+ logfire[fastapi]
68
+ regex
69
+ torchaudio
70
+ dask[bag]
71
+ httpx
72
+ filetype
73
73
 
74
74
  [api]
75
75
  fastapi
File without changes
File without changes
File without changes