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