fmtr.tools 1.1.5__tar.gz → 1.1.6__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Potentially problematic release.
This version of fmtr.tools might be problematic. Click here for more details.
- {fmtr_tools-1.1.5 → fmtr_tools-1.1.6}/PKG-INFO +34 -34
- {fmtr_tools-1.1.5 → fmtr_tools-1.1.6}/fmtr/tools/console_script_tools.py +10 -0
- fmtr_tools-1.1.6/fmtr/tools/debugging_tools.py +90 -0
- fmtr_tools-1.1.6/fmtr/tools/version +1 -0
- {fmtr_tools-1.1.5 → fmtr_tools-1.1.6}/fmtr.tools.egg-info/PKG-INFO +34 -34
- {fmtr_tools-1.1.5 → fmtr_tools-1.1.6}/fmtr.tools.egg-info/entry_points.txt +1 -0
- fmtr_tools-1.1.5/fmtr/tools/debugging_tools.py +0 -31
- fmtr_tools-1.1.5/fmtr/tools/version +0 -1
- {fmtr_tools-1.1.5 → fmtr_tools-1.1.6}/LICENSE +0 -0
- {fmtr_tools-1.1.5 → fmtr_tools-1.1.6}/README.md +0 -0
- {fmtr_tools-1.1.5 → fmtr_tools-1.1.6}/fmtr/tools/__init__.py +0 -0
- {fmtr_tools-1.1.5 → fmtr_tools-1.1.6}/fmtr/tools/ai_tools/__init__.py +0 -0
- {fmtr_tools-1.1.5 → fmtr_tools-1.1.6}/fmtr/tools/ai_tools/agentic_tools.py +0 -0
- {fmtr_tools-1.1.5 → fmtr_tools-1.1.6}/fmtr/tools/ai_tools/inference_tools.py +0 -0
- {fmtr_tools-1.1.5 → fmtr_tools-1.1.6}/fmtr/tools/api_tools.py +0 -0
- {fmtr_tools-1.1.5 → fmtr_tools-1.1.6}/fmtr/tools/async_tools.py +0 -0
- {fmtr_tools-1.1.5 → fmtr_tools-1.1.6}/fmtr/tools/augmentation_tools.py +0 -0
- {fmtr_tools-1.1.5 → fmtr_tools-1.1.6}/fmtr/tools/caching_tools.py +0 -0
- {fmtr_tools-1.1.5 → fmtr_tools-1.1.6}/fmtr/tools/constants.py +0 -0
- {fmtr_tools-1.1.5 → fmtr_tools-1.1.6}/fmtr/tools/data_modelling_tools.py +0 -0
- {fmtr_tools-1.1.5 → fmtr_tools-1.1.6}/fmtr/tools/dataclass_tools.py +0 -0
- {fmtr_tools-1.1.5 → fmtr_tools-1.1.6}/fmtr/tools/datatype_tools.py +0 -0
- {fmtr_tools-1.1.5 → fmtr_tools-1.1.6}/fmtr/tools/docker_tools.py +0 -0
- {fmtr_tools-1.1.5 → fmtr_tools-1.1.6}/fmtr/tools/environment_tools.py +0 -0
- {fmtr_tools-1.1.5 → fmtr_tools-1.1.6}/fmtr/tools/function_tools.py +0 -0
- {fmtr_tools-1.1.5 → fmtr_tools-1.1.6}/fmtr/tools/google_api_tools.py +0 -0
- {fmtr_tools-1.1.5 → fmtr_tools-1.1.6}/fmtr/tools/hash_tools.py +0 -0
- {fmtr_tools-1.1.5 → fmtr_tools-1.1.6}/fmtr/tools/hfh_tools.py +0 -0
- {fmtr_tools-1.1.5 → fmtr_tools-1.1.6}/fmtr/tools/html_tools.py +0 -0
- {fmtr_tools-1.1.5 → fmtr_tools-1.1.6}/fmtr/tools/import_tools.py +0 -0
- {fmtr_tools-1.1.5 → fmtr_tools-1.1.6}/fmtr/tools/inspection_tools.py +0 -0
- {fmtr_tools-1.1.5 → fmtr_tools-1.1.6}/fmtr/tools/interface_tools.py +0 -0
- {fmtr_tools-1.1.5 → fmtr_tools-1.1.6}/fmtr/tools/iterator_tools.py +0 -0
- {fmtr_tools-1.1.5 → fmtr_tools-1.1.6}/fmtr/tools/json_fix_tools.py +0 -0
- {fmtr_tools-1.1.5 → fmtr_tools-1.1.6}/fmtr/tools/json_tools.py +0 -0
- {fmtr_tools-1.1.5 → fmtr_tools-1.1.6}/fmtr/tools/logging_tools.py +0 -0
- {fmtr_tools-1.1.5 → fmtr_tools-1.1.6}/fmtr/tools/merging_tools.py +0 -0
- {fmtr_tools-1.1.5 → fmtr_tools-1.1.6}/fmtr/tools/metric_tools.py +0 -0
- {fmtr_tools-1.1.5 → fmtr_tools-1.1.6}/fmtr/tools/name_tools.py +0 -0
- {fmtr_tools-1.1.5 → fmtr_tools-1.1.6}/fmtr/tools/netrc_tools.py +0 -0
- {fmtr_tools-1.1.5 → fmtr_tools-1.1.6}/fmtr/tools/openai_tools.py +0 -0
- {fmtr_tools-1.1.5 → fmtr_tools-1.1.6}/fmtr/tools/parallel_tools.py +0 -0
- {fmtr_tools-1.1.5 → fmtr_tools-1.1.6}/fmtr/tools/path_tools.py +0 -0
- {fmtr_tools-1.1.5 → fmtr_tools-1.1.6}/fmtr/tools/pdf_tools.py +0 -0
- {fmtr_tools-1.1.5 → fmtr_tools-1.1.6}/fmtr/tools/platform_tools.py +0 -0
- {fmtr_tools-1.1.5 → fmtr_tools-1.1.6}/fmtr/tools/process_tools.py +0 -0
- {fmtr_tools-1.1.5 → fmtr_tools-1.1.6}/fmtr/tools/profiling_tools.py +0 -0
- {fmtr_tools-1.1.5 → fmtr_tools-1.1.6}/fmtr/tools/random_tools.py +0 -0
- {fmtr_tools-1.1.5 → fmtr_tools-1.1.6}/fmtr/tools/semantic_tools.py +0 -0
- {fmtr_tools-1.1.5 → fmtr_tools-1.1.6}/fmtr/tools/settings_tools.py +0 -0
- {fmtr_tools-1.1.5 → fmtr_tools-1.1.6}/fmtr/tools/spaces_tools.py +0 -0
- {fmtr_tools-1.1.5 → fmtr_tools-1.1.6}/fmtr/tools/string_tools.py +0 -0
- {fmtr_tools-1.1.5 → fmtr_tools-1.1.6}/fmtr/tools/tabular_tools.py +0 -0
- {fmtr_tools-1.1.5 → fmtr_tools-1.1.6}/fmtr/tools/tests/__init__.py +0 -0
- {fmtr_tools-1.1.5 → fmtr_tools-1.1.6}/fmtr/tools/tests/conftest.py +0 -0
- {fmtr_tools-1.1.5 → fmtr_tools-1.1.6}/fmtr/tools/tests/helpers.py +0 -0
- {fmtr_tools-1.1.5 → fmtr_tools-1.1.6}/fmtr/tools/tests/test_datatype.py +0 -0
- {fmtr_tools-1.1.5 → fmtr_tools-1.1.6}/fmtr/tools/tests/test_environment.py +0 -0
- {fmtr_tools-1.1.5 → fmtr_tools-1.1.6}/fmtr/tools/tests/test_json.py +0 -0
- {fmtr_tools-1.1.5 → fmtr_tools-1.1.6}/fmtr/tools/tests/test_path.py +0 -0
- {fmtr_tools-1.1.5 → fmtr_tools-1.1.6}/fmtr/tools/tests/test_yaml.py +0 -0
- {fmtr_tools-1.1.5 → fmtr_tools-1.1.6}/fmtr/tools/tokenization_tools.py +0 -0
- {fmtr_tools-1.1.5 → fmtr_tools-1.1.6}/fmtr/tools/tools.py +0 -0
- {fmtr_tools-1.1.5 → fmtr_tools-1.1.6}/fmtr/tools/unicode_tools.py +0 -0
- {fmtr_tools-1.1.5 → fmtr_tools-1.1.6}/fmtr/tools/version_tools.py +0 -0
- {fmtr_tools-1.1.5 → fmtr_tools-1.1.6}/fmtr/tools/yaml_tools.py +0 -0
- {fmtr_tools-1.1.5 → fmtr_tools-1.1.6}/fmtr.tools.egg-info/SOURCES.txt +0 -0
- {fmtr_tools-1.1.5 → fmtr_tools-1.1.6}/fmtr.tools.egg-info/dependency_links.txt +0 -0
- {fmtr_tools-1.1.5 → fmtr_tools-1.1.6}/fmtr.tools.egg-info/requires.txt +33 -33
- {fmtr_tools-1.1.5 → fmtr_tools-1.1.6}/fmtr.tools.egg-info/top_level.txt +0 -0
- {fmtr_tools-1.1.5 → fmtr_tools-1.1.6}/setup.cfg +0 -0
- {fmtr_tools-1.1.5 → fmtr_tools-1.1.6}/setup.py +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: fmtr.tools
|
|
3
|
-
Version: 1.1.
|
|
3
|
+
Version: 1.1.6
|
|
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
|
|
@@ -9,51 +9,51 @@ License: Copyright © 2025 Frontmatter. All rights reserved.
|
|
|
9
9
|
Description-Content-Type: text/markdown
|
|
10
10
|
License-File: LICENSE
|
|
11
11
|
Provides-Extra: test
|
|
12
|
+
Requires-Dist: google-api-python-client; extra == "test"
|
|
12
13
|
Requires-Dist: pymupdf4llm; extra == "test"
|
|
14
|
+
Requires-Dist: faker; extra == "test"
|
|
15
|
+
Requires-Dist: pyyaml; extra == "test"
|
|
16
|
+
Requires-Dist: html2text; extra == "test"
|
|
13
17
|
Requires-Dist: pymupdf; extra == "test"
|
|
14
|
-
Requires-Dist: semver; extra == "test"
|
|
15
|
-
Requires-Dist: distributed; extra == "test"
|
|
16
|
-
Requires-Dist: fastapi; extra == "test"
|
|
17
|
-
Requires-Dist: pydantic-ai[logfire,openai]; extra == "test"
|
|
18
|
-
Requires-Dist: diskcache; extra == "test"
|
|
19
|
-
Requires-Dist: pandas; extra == "test"
|
|
20
18
|
Requires-Dist: contexttimer; extra == "test"
|
|
19
|
+
Requires-Dist: dask[bag]; extra == "test"
|
|
20
|
+
Requires-Dist: json_repair; extra == "test"
|
|
21
|
+
Requires-Dist: torchvision; extra == "test"
|
|
22
|
+
Requires-Dist: pydantic-settings; extra == "test"
|
|
23
|
+
Requires-Dist: huggingface_hub; extra == "test"
|
|
24
|
+
Requires-Dist: logfire[fastapi]; extra == "test"
|
|
25
|
+
Requires-Dist: transformers[sentencepiece]; extra == "test"
|
|
26
|
+
Requires-Dist: sre_yield; extra == "test"
|
|
21
27
|
Requires-Dist: pytest-cov; extra == "test"
|
|
28
|
+
Requires-Dist: torchaudio; extra == "test"
|
|
29
|
+
Requires-Dist: sentence_transformers; extra == "test"
|
|
30
|
+
Requires-Dist: pydantic; extra == "test"
|
|
31
|
+
Requires-Dist: docker; extra == "test"
|
|
32
|
+
Requires-Dist: tokenizers; extra == "test"
|
|
22
33
|
Requires-Dist: uvicorn[standard]; extra == "test"
|
|
34
|
+
Requires-Dist: pandas; extra == "test"
|
|
35
|
+
Requires-Dist: openpyxl; extra == "test"
|
|
36
|
+
Requires-Dist: ollama; extra == "test"
|
|
37
|
+
Requires-Dist: flet-video; extra == "test"
|
|
23
38
|
Requires-Dist: flet-webview; extra == "test"
|
|
39
|
+
Requires-Dist: pydevd-pycharm; extra == "test"
|
|
24
40
|
Requires-Dist: google-auth; extra == "test"
|
|
41
|
+
Requires-Dist: tinynetrc; extra == "test"
|
|
42
|
+
Requires-Dist: google-auth-oauthlib; extra == "test"
|
|
25
43
|
Requires-Dist: deepmerge; extra == "test"
|
|
26
|
-
Requires-Dist:
|
|
27
|
-
Requires-Dist:
|
|
28
|
-
Requires-Dist: torchaudio; extra == "test"
|
|
29
|
-
Requires-Dist: faker; extra == "test"
|
|
44
|
+
Requires-Dist: openai; extra == "test"
|
|
45
|
+
Requires-Dist: diskcache; extra == "test"
|
|
30
46
|
Requires-Dist: bokeh; extra == "test"
|
|
31
|
-
Requires-Dist: peft; extra == "test"
|
|
32
|
-
Requires-Dist: pydantic-settings; extra == "test"
|
|
33
47
|
Requires-Dist: logfire; extra == "test"
|
|
34
|
-
Requires-Dist: pyyaml; extra == "test"
|
|
35
|
-
Requires-Dist: tabulate; extra == "test"
|
|
36
|
-
Requires-Dist: openpyxl; extra == "test"
|
|
37
|
-
Requires-Dist: google-api-python-client; extra == "test"
|
|
38
|
-
Requires-Dist: flet[all]; extra == "test"
|
|
39
|
-
Requires-Dist: transformers[sentencepiece]; extra == "test"
|
|
40
|
-
Requires-Dist: openai; extra == "test"
|
|
41
|
-
Requires-Dist: sentence_transformers; extra == "test"
|
|
42
48
|
Requires-Dist: google-auth-httplib2; extra == "test"
|
|
43
|
-
Requires-Dist:
|
|
44
|
-
Requires-Dist:
|
|
45
|
-
Requires-Dist:
|
|
46
|
-
Requires-Dist:
|
|
47
|
-
Requires-Dist: sre_yield; extra == "test"
|
|
48
|
-
Requires-Dist: logfire[fastapi]; extra == "test"
|
|
49
|
-
Requires-Dist: torchvision; extra == "test"
|
|
50
|
-
Requires-Dist: pydantic; extra == "test"
|
|
51
|
-
Requires-Dist: ollama; extra == "test"
|
|
49
|
+
Requires-Dist: semver; extra == "test"
|
|
50
|
+
Requires-Dist: tabulate; extra == "test"
|
|
51
|
+
Requires-Dist: pydantic-ai[logfire,openai]; extra == "test"
|
|
52
|
+
Requires-Dist: fastapi; extra == "test"
|
|
52
53
|
Requires-Dist: Unidecode; extra == "test"
|
|
53
|
-
Requires-Dist:
|
|
54
|
-
Requires-Dist:
|
|
55
|
-
Requires-Dist:
|
|
56
|
-
Requires-Dist: tokenizers; extra == "test"
|
|
54
|
+
Requires-Dist: distributed; extra == "test"
|
|
55
|
+
Requires-Dist: peft; extra == "test"
|
|
56
|
+
Requires-Dist: flet[all]; extra == "test"
|
|
57
57
|
Provides-Extra: yaml
|
|
58
58
|
Requires-Dist: pyyaml; extra == "yaml"
|
|
59
59
|
Provides-Extra: logging
|
|
@@ -0,0 +1,90 @@
|
|
|
1
|
+
import dataclasses
|
|
2
|
+
|
|
3
|
+
import pydevd_pycharm
|
|
4
|
+
|
|
5
|
+
from fmtr.tools import environment_tools as env
|
|
6
|
+
from fmtr.tools.constants import Constants
|
|
7
|
+
|
|
8
|
+
MASK = 'Starting debugger at tcp://{host}:{port}...'
|
|
9
|
+
|
|
10
|
+
|
|
11
|
+
@dataclasses.dataclass
|
|
12
|
+
class ShellDebug:
|
|
13
|
+
"""
|
|
14
|
+
|
|
15
|
+
Debugging information for shell commands
|
|
16
|
+
|
|
17
|
+
"""
|
|
18
|
+
command: str
|
|
19
|
+
out: str
|
|
20
|
+
err: str
|
|
21
|
+
status: int
|
|
22
|
+
|
|
23
|
+
# timestamp: datetime=dataclasses.field(default_factory=datetime.now)
|
|
24
|
+
|
|
25
|
+
@classmethod
|
|
26
|
+
def from_path(cls, path_str):
|
|
27
|
+
"""
|
|
28
|
+
|
|
29
|
+
Get debug info from path
|
|
30
|
+
|
|
31
|
+
"""
|
|
32
|
+
from fmtr.tools import Path
|
|
33
|
+
path = Path(path_str).absolute()
|
|
34
|
+
data = {field.name: (path / f'{field.name}.log').read_text().strip() for field in dataclasses.fields(cls)}
|
|
35
|
+
self = cls(**data)
|
|
36
|
+
return self
|
|
37
|
+
|
|
38
|
+
@property
|
|
39
|
+
def env(self):
|
|
40
|
+
return env.get_dict()
|
|
41
|
+
|
|
42
|
+
|
|
43
|
+
|
|
44
|
+
def trace(is_debug=None, host=None, port=None, stdoutToServer=True, stderrToServer=True, **kwargs):
|
|
45
|
+
"""
|
|
46
|
+
|
|
47
|
+
Connect to PyCharm debugger if enabled
|
|
48
|
+
|
|
49
|
+
"""
|
|
50
|
+
if not is_debug:
|
|
51
|
+
is_debug = env.get_bool(Constants.FMTR_REMOTE_DEBUG_ENABLED_KEY, False)
|
|
52
|
+
|
|
53
|
+
if not is_debug:
|
|
54
|
+
return
|
|
55
|
+
|
|
56
|
+
if is_debug is True and not host:
|
|
57
|
+
host = Constants.FMTR_REMOTE_DEBUG_HOST_DEFAULT
|
|
58
|
+
|
|
59
|
+
host = host or env.get(Constants.FMTR_REMOTE_DEBUG_HOST_KEY, Constants.FMTR_REMOTE_DEBUG_HOST_DEFAULT)
|
|
60
|
+
port = port or Constants.FMTR_REMOTE_DEBUG_PORT_DEFAULT
|
|
61
|
+
|
|
62
|
+
from fmtr.tools import logger
|
|
63
|
+
|
|
64
|
+
msg = MASK.format(host=host, port=port)
|
|
65
|
+
logger.info(msg)
|
|
66
|
+
|
|
67
|
+
pydevd_pycharm.settrace(host, port=port, stdoutToServer=stdoutToServer, stderrToServer=stderrToServer, **kwargs)
|
|
68
|
+
|
|
69
|
+
|
|
70
|
+
def debug_shell():
|
|
71
|
+
"""
|
|
72
|
+
|
|
73
|
+
Starts a debug shell by initializing a `ShellDebug` object from a given path
|
|
74
|
+
and enabling tracing with debug mode turned on.
|
|
75
|
+
|
|
76
|
+
"""
|
|
77
|
+
path_str = sys.argv[1]
|
|
78
|
+
data = ShellDebug.from_path(path_str)
|
|
79
|
+
trace(is_debug=True)
|
|
80
|
+
data
|
|
81
|
+
|
|
82
|
+
|
|
83
|
+
if __name__ == "__main__":
|
|
84
|
+
import sys
|
|
85
|
+
|
|
86
|
+
sys.argv = [
|
|
87
|
+
'test.py',
|
|
88
|
+
'./fmtr-debug/34e8d492-2f15-419a-8fcb-fe4fa0fa02bb',
|
|
89
|
+
]
|
|
90
|
+
debug_shell()
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
1.1.6
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: fmtr.tools
|
|
3
|
-
Version: 1.1.
|
|
3
|
+
Version: 1.1.6
|
|
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
|
|
@@ -9,51 +9,51 @@ License: Copyright © 2025 Frontmatter. All rights reserved.
|
|
|
9
9
|
Description-Content-Type: text/markdown
|
|
10
10
|
License-File: LICENSE
|
|
11
11
|
Provides-Extra: test
|
|
12
|
+
Requires-Dist: google-api-python-client; extra == "test"
|
|
12
13
|
Requires-Dist: pymupdf4llm; extra == "test"
|
|
14
|
+
Requires-Dist: faker; extra == "test"
|
|
15
|
+
Requires-Dist: pyyaml; extra == "test"
|
|
16
|
+
Requires-Dist: html2text; extra == "test"
|
|
13
17
|
Requires-Dist: pymupdf; extra == "test"
|
|
14
|
-
Requires-Dist: semver; extra == "test"
|
|
15
|
-
Requires-Dist: distributed; extra == "test"
|
|
16
|
-
Requires-Dist: fastapi; extra == "test"
|
|
17
|
-
Requires-Dist: pydantic-ai[logfire,openai]; extra == "test"
|
|
18
|
-
Requires-Dist: diskcache; extra == "test"
|
|
19
|
-
Requires-Dist: pandas; extra == "test"
|
|
20
18
|
Requires-Dist: contexttimer; extra == "test"
|
|
19
|
+
Requires-Dist: dask[bag]; extra == "test"
|
|
20
|
+
Requires-Dist: json_repair; extra == "test"
|
|
21
|
+
Requires-Dist: torchvision; extra == "test"
|
|
22
|
+
Requires-Dist: pydantic-settings; extra == "test"
|
|
23
|
+
Requires-Dist: huggingface_hub; extra == "test"
|
|
24
|
+
Requires-Dist: logfire[fastapi]; extra == "test"
|
|
25
|
+
Requires-Dist: transformers[sentencepiece]; extra == "test"
|
|
26
|
+
Requires-Dist: sre_yield; extra == "test"
|
|
21
27
|
Requires-Dist: pytest-cov; extra == "test"
|
|
28
|
+
Requires-Dist: torchaudio; extra == "test"
|
|
29
|
+
Requires-Dist: sentence_transformers; extra == "test"
|
|
30
|
+
Requires-Dist: pydantic; extra == "test"
|
|
31
|
+
Requires-Dist: docker; extra == "test"
|
|
32
|
+
Requires-Dist: tokenizers; extra == "test"
|
|
22
33
|
Requires-Dist: uvicorn[standard]; extra == "test"
|
|
34
|
+
Requires-Dist: pandas; extra == "test"
|
|
35
|
+
Requires-Dist: openpyxl; extra == "test"
|
|
36
|
+
Requires-Dist: ollama; extra == "test"
|
|
37
|
+
Requires-Dist: flet-video; extra == "test"
|
|
23
38
|
Requires-Dist: flet-webview; extra == "test"
|
|
39
|
+
Requires-Dist: pydevd-pycharm; extra == "test"
|
|
24
40
|
Requires-Dist: google-auth; extra == "test"
|
|
41
|
+
Requires-Dist: tinynetrc; extra == "test"
|
|
42
|
+
Requires-Dist: google-auth-oauthlib; extra == "test"
|
|
25
43
|
Requires-Dist: deepmerge; extra == "test"
|
|
26
|
-
Requires-Dist:
|
|
27
|
-
Requires-Dist:
|
|
28
|
-
Requires-Dist: torchaudio; extra == "test"
|
|
29
|
-
Requires-Dist: faker; extra == "test"
|
|
44
|
+
Requires-Dist: openai; extra == "test"
|
|
45
|
+
Requires-Dist: diskcache; extra == "test"
|
|
30
46
|
Requires-Dist: bokeh; extra == "test"
|
|
31
|
-
Requires-Dist: peft; extra == "test"
|
|
32
|
-
Requires-Dist: pydantic-settings; extra == "test"
|
|
33
47
|
Requires-Dist: logfire; extra == "test"
|
|
34
|
-
Requires-Dist: pyyaml; extra == "test"
|
|
35
|
-
Requires-Dist: tabulate; extra == "test"
|
|
36
|
-
Requires-Dist: openpyxl; extra == "test"
|
|
37
|
-
Requires-Dist: google-api-python-client; extra == "test"
|
|
38
|
-
Requires-Dist: flet[all]; extra == "test"
|
|
39
|
-
Requires-Dist: transformers[sentencepiece]; extra == "test"
|
|
40
|
-
Requires-Dist: openai; extra == "test"
|
|
41
|
-
Requires-Dist: sentence_transformers; extra == "test"
|
|
42
48
|
Requires-Dist: google-auth-httplib2; extra == "test"
|
|
43
|
-
Requires-Dist:
|
|
44
|
-
Requires-Dist:
|
|
45
|
-
Requires-Dist:
|
|
46
|
-
Requires-Dist:
|
|
47
|
-
Requires-Dist: sre_yield; extra == "test"
|
|
48
|
-
Requires-Dist: logfire[fastapi]; extra == "test"
|
|
49
|
-
Requires-Dist: torchvision; extra == "test"
|
|
50
|
-
Requires-Dist: pydantic; extra == "test"
|
|
51
|
-
Requires-Dist: ollama; extra == "test"
|
|
49
|
+
Requires-Dist: semver; extra == "test"
|
|
50
|
+
Requires-Dist: tabulate; extra == "test"
|
|
51
|
+
Requires-Dist: pydantic-ai[logfire,openai]; extra == "test"
|
|
52
|
+
Requires-Dist: fastapi; extra == "test"
|
|
52
53
|
Requires-Dist: Unidecode; extra == "test"
|
|
53
|
-
Requires-Dist:
|
|
54
|
-
Requires-Dist:
|
|
55
|
-
Requires-Dist:
|
|
56
|
-
Requires-Dist: tokenizers; extra == "test"
|
|
54
|
+
Requires-Dist: distributed; extra == "test"
|
|
55
|
+
Requires-Dist: peft; extra == "test"
|
|
56
|
+
Requires-Dist: flet[all]; extra == "test"
|
|
57
57
|
Provides-Extra: yaml
|
|
58
58
|
Requires-Dist: pyyaml; extra == "yaml"
|
|
59
59
|
Provides-Extra: logging
|
|
@@ -1,31 +0,0 @@
|
|
|
1
|
-
import pydevd_pycharm
|
|
2
|
-
|
|
3
|
-
from fmtr.tools import environment_tools as env
|
|
4
|
-
from fmtr.tools.constants import Constants
|
|
5
|
-
|
|
6
|
-
MASK = 'Starting debugger at tcp://{host}:{port}...'
|
|
7
|
-
|
|
8
|
-
def trace(is_debug=None, host=None, port=None, stdoutToServer=True, stderrToServer=True, **kwargs):
|
|
9
|
-
"""
|
|
10
|
-
|
|
11
|
-
Connect to PyCharm debugger if enabled
|
|
12
|
-
|
|
13
|
-
"""
|
|
14
|
-
if not is_debug:
|
|
15
|
-
is_debug = env.get_bool(Constants.FMTR_REMOTE_DEBUG_ENABLED_KEY, False)
|
|
16
|
-
|
|
17
|
-
if not is_debug:
|
|
18
|
-
return
|
|
19
|
-
|
|
20
|
-
if is_debug is True and not host:
|
|
21
|
-
host = Constants.FMTR_REMOTE_DEBUG_HOST_DEFAULT
|
|
22
|
-
|
|
23
|
-
host = host or env.get(Constants.FMTR_REMOTE_DEBUG_HOST_KEY, Constants.FMTR_REMOTE_DEBUG_HOST_DEFAULT)
|
|
24
|
-
port = port or Constants.FMTR_REMOTE_DEBUG_PORT_DEFAULT
|
|
25
|
-
|
|
26
|
-
from fmtr.tools import logger
|
|
27
|
-
|
|
28
|
-
msg = MASK.format(host=host, port=port)
|
|
29
|
-
logger.info(msg)
|
|
30
|
-
|
|
31
|
-
pydevd_pycharm.settrace(host, port=port, stdoutToServer=stdoutToServer, stderrToServer=stderrToServer, **kwargs)
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
1.1.5
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
@@ -113,51 +113,51 @@ tabulate
|
|
|
113
113
|
openpyxl
|
|
114
114
|
|
|
115
115
|
[test]
|
|
116
|
+
google-api-python-client
|
|
116
117
|
pymupdf4llm
|
|
118
|
+
faker
|
|
119
|
+
pyyaml
|
|
120
|
+
html2text
|
|
117
121
|
pymupdf
|
|
118
|
-
semver
|
|
119
|
-
distributed
|
|
120
|
-
fastapi
|
|
121
|
-
pydantic-ai[logfire,openai]
|
|
122
|
-
diskcache
|
|
123
|
-
pandas
|
|
124
122
|
contexttimer
|
|
123
|
+
dask[bag]
|
|
124
|
+
json_repair
|
|
125
|
+
torchvision
|
|
126
|
+
pydantic-settings
|
|
127
|
+
huggingface_hub
|
|
128
|
+
logfire[fastapi]
|
|
129
|
+
transformers[sentencepiece]
|
|
130
|
+
sre_yield
|
|
125
131
|
pytest-cov
|
|
132
|
+
torchaudio
|
|
133
|
+
sentence_transformers
|
|
134
|
+
pydantic
|
|
135
|
+
docker
|
|
136
|
+
tokenizers
|
|
126
137
|
uvicorn[standard]
|
|
138
|
+
pandas
|
|
139
|
+
openpyxl
|
|
140
|
+
ollama
|
|
141
|
+
flet-video
|
|
127
142
|
flet-webview
|
|
143
|
+
pydevd-pycharm
|
|
128
144
|
google-auth
|
|
145
|
+
tinynetrc
|
|
146
|
+
google-auth-oauthlib
|
|
129
147
|
deepmerge
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
torchaudio
|
|
133
|
-
faker
|
|
148
|
+
openai
|
|
149
|
+
diskcache
|
|
134
150
|
bokeh
|
|
135
|
-
peft
|
|
136
|
-
pydantic-settings
|
|
137
151
|
logfire
|
|
138
|
-
pyyaml
|
|
139
|
-
tabulate
|
|
140
|
-
openpyxl
|
|
141
|
-
google-api-python-client
|
|
142
|
-
flet[all]
|
|
143
|
-
transformers[sentencepiece]
|
|
144
|
-
openai
|
|
145
|
-
sentence_transformers
|
|
146
152
|
google-auth-httplib2
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
sre_yield
|
|
152
|
-
logfire[fastapi]
|
|
153
|
-
torchvision
|
|
154
|
-
pydantic
|
|
155
|
-
ollama
|
|
153
|
+
semver
|
|
154
|
+
tabulate
|
|
155
|
+
pydantic-ai[logfire,openai]
|
|
156
|
+
fastapi
|
|
156
157
|
Unidecode
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
tokenizers
|
|
158
|
+
distributed
|
|
159
|
+
peft
|
|
160
|
+
flet[all]
|
|
161
161
|
|
|
162
162
|
[tokenization]
|
|
163
163
|
tokenizers
|
|
File without changes
|
|
File without changes
|
|
File without changes
|