fmtr.tools 1.0.43__tar.gz → 1.0.45__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.0.43 → fmtr.tools-1.0.45}/PKG-INFO +2 -2
- {fmtr.tools-1.0.43 → fmtr.tools-1.0.45}/fmtr/tools/data_modelling_tools.py +12 -4
- fmtr.tools-1.0.45/fmtr/tools/version +1 -0
- {fmtr.tools-1.0.43 → fmtr.tools-1.0.45}/fmtr.tools.egg-info/PKG-INFO +2 -2
- fmtr.tools-1.0.45/setup.py +50 -0
- fmtr.tools-1.0.43/fmtr/tools/version +0 -1
- fmtr.tools-1.0.43/setup.py +0 -36
- {fmtr.tools-1.0.43 → fmtr.tools-1.0.45}/LICENSE +0 -0
- {fmtr.tools-1.0.43 → fmtr.tools-1.0.45}/README.md +0 -0
- {fmtr.tools-1.0.43 → fmtr.tools-1.0.45}/fmtr/tools/__init__.py +0 -0
- {fmtr.tools-1.0.43 → fmtr.tools-1.0.45}/fmtr/tools/ai_tools/__init__.py +0 -0
- {fmtr.tools-1.0.43 → fmtr.tools-1.0.45}/fmtr/tools/ai_tools/agentic_tools.py +0 -0
- {fmtr.tools-1.0.43 → fmtr.tools-1.0.45}/fmtr/tools/ai_tools/inference_tools.py +0 -0
- {fmtr.tools-1.0.43 → fmtr.tools-1.0.45}/fmtr/tools/api_tools.py +0 -0
- {fmtr.tools-1.0.43 → fmtr.tools-1.0.45}/fmtr/tools/async_tools.py +0 -0
- {fmtr.tools-1.0.43 → fmtr.tools-1.0.45}/fmtr/tools/augmentation_tools.py +0 -0
- {fmtr.tools-1.0.43 → fmtr.tools-1.0.45}/fmtr/tools/caching_tools.py +0 -0
- {fmtr.tools-1.0.43 → fmtr.tools-1.0.45}/fmtr/tools/config.py +0 -0
- {fmtr.tools-1.0.43 → fmtr.tools-1.0.45}/fmtr/tools/config_tools.py +0 -0
- {fmtr.tools-1.0.43 → fmtr.tools-1.0.45}/fmtr/tools/console_script_tools.py +0 -0
- {fmtr.tools-1.0.43 → fmtr.tools-1.0.45}/fmtr/tools/dataclass_tools.py +0 -0
- {fmtr.tools-1.0.43 → fmtr.tools-1.0.45}/fmtr/tools/datatype_tools.py +0 -0
- {fmtr.tools-1.0.43 → fmtr.tools-1.0.45}/fmtr/tools/docker_tools.py +0 -0
- {fmtr.tools-1.0.43 → fmtr.tools-1.0.45}/fmtr/tools/environment_tools.py +0 -0
- {fmtr.tools-1.0.43 → fmtr.tools-1.0.45}/fmtr/tools/function_tools.py +0 -0
- {fmtr.tools-1.0.43 → fmtr.tools-1.0.45}/fmtr/tools/google_api_tools.py +0 -0
- {fmtr.tools-1.0.43 → fmtr.tools-1.0.45}/fmtr/tools/hash_tools.py +0 -0
- {fmtr.tools-1.0.43 → fmtr.tools-1.0.45}/fmtr/tools/hfh_tools.py +0 -0
- {fmtr.tools-1.0.43 → fmtr.tools-1.0.45}/fmtr/tools/html_tools.py +0 -0
- {fmtr.tools-1.0.43 → fmtr.tools-1.0.45}/fmtr/tools/import_tools.py +0 -0
- {fmtr.tools-1.0.43 → fmtr.tools-1.0.45}/fmtr/tools/inspection_tools.py +0 -0
- {fmtr.tools-1.0.43 → fmtr.tools-1.0.45}/fmtr/tools/interface_tools.py +0 -0
- {fmtr.tools-1.0.43 → fmtr.tools-1.0.45}/fmtr/tools/iterator_tools.py +0 -0
- {fmtr.tools-1.0.43 → fmtr.tools-1.0.45}/fmtr/tools/json_fix_tools.py +0 -0
- {fmtr.tools-1.0.43 → fmtr.tools-1.0.45}/fmtr/tools/json_tools.py +0 -0
- {fmtr.tools-1.0.43 → fmtr.tools-1.0.45}/fmtr/tools/logging_tools.py +0 -0
- {fmtr.tools-1.0.43 → fmtr.tools-1.0.45}/fmtr/tools/merging_tools.py +0 -0
- {fmtr.tools-1.0.43 → fmtr.tools-1.0.45}/fmtr/tools/metric_tools.py +0 -0
- {fmtr.tools-1.0.43 → fmtr.tools-1.0.45}/fmtr/tools/name_tools.py +0 -0
- {fmtr.tools-1.0.43 → fmtr.tools-1.0.45}/fmtr/tools/netrc_tools.py +0 -0
- {fmtr.tools-1.0.43 → fmtr.tools-1.0.45}/fmtr/tools/openai_tools.py +0 -0
- {fmtr.tools-1.0.43 → fmtr.tools-1.0.45}/fmtr/tools/parallel_tools.py +0 -0
- {fmtr.tools-1.0.43 → fmtr.tools-1.0.45}/fmtr/tools/path_tools.py +0 -0
- {fmtr.tools-1.0.43 → fmtr.tools-1.0.45}/fmtr/tools/pdf_tools.py +0 -0
- {fmtr.tools-1.0.43 → fmtr.tools-1.0.45}/fmtr/tools/platform_tools.py +0 -0
- {fmtr.tools-1.0.43 → fmtr.tools-1.0.45}/fmtr/tools/process_tools.py +0 -0
- {fmtr.tools-1.0.43 → fmtr.tools-1.0.45}/fmtr/tools/profiling_tools.py +0 -0
- {fmtr.tools-1.0.43 → fmtr.tools-1.0.45}/fmtr/tools/random_tools.py +0 -0
- {fmtr.tools-1.0.43 → fmtr.tools-1.0.45}/fmtr/tools/semantic_tools.py +0 -0
- {fmtr.tools-1.0.43 → fmtr.tools-1.0.45}/fmtr/tools/spaces_tools.py +0 -0
- {fmtr.tools-1.0.43 → fmtr.tools-1.0.45}/fmtr/tools/string_tools.py +0 -0
- {fmtr.tools-1.0.43 → fmtr.tools-1.0.45}/fmtr/tools/tabular_tools.py +0 -0
- {fmtr.tools-1.0.43 → fmtr.tools-1.0.45}/fmtr/tools/tests/__init__.py +0 -0
- {fmtr.tools-1.0.43 → fmtr.tools-1.0.45}/fmtr/tools/tests/conftest.py +0 -0
- {fmtr.tools-1.0.43 → fmtr.tools-1.0.45}/fmtr/tools/tests/helpers.py +0 -0
- {fmtr.tools-1.0.43 → fmtr.tools-1.0.45}/fmtr/tools/tests/test_datatype.py +0 -0
- {fmtr.tools-1.0.43 → fmtr.tools-1.0.45}/fmtr/tools/tests/test_environment.py +0 -0
- {fmtr.tools-1.0.43 → fmtr.tools-1.0.45}/fmtr/tools/tests/test_json.py +0 -0
- {fmtr.tools-1.0.43 → fmtr.tools-1.0.45}/fmtr/tools/tests/test_path.py +0 -0
- {fmtr.tools-1.0.43 → fmtr.tools-1.0.45}/fmtr/tools/tests/test_yaml.py +0 -0
- {fmtr.tools-1.0.43 → fmtr.tools-1.0.45}/fmtr/tools/tokenization_tools.py +0 -0
- {fmtr.tools-1.0.43 → fmtr.tools-1.0.45}/fmtr/tools/tools.py +0 -0
- {fmtr.tools-1.0.43 → fmtr.tools-1.0.45}/fmtr/tools/unicode_tools.py +0 -0
- {fmtr.tools-1.0.43 → fmtr.tools-1.0.45}/fmtr/tools/version_tools.py +0 -0
- {fmtr.tools-1.0.43 → fmtr.tools-1.0.45}/fmtr/tools/yaml_tools.py +0 -0
- {fmtr.tools-1.0.43 → fmtr.tools-1.0.45}/fmtr.tools.egg-info/SOURCES.txt +0 -0
- {fmtr.tools-1.0.43 → fmtr.tools-1.0.45}/fmtr.tools.egg-info/dependency_links.txt +0 -0
- {fmtr.tools-1.0.43 → fmtr.tools-1.0.45}/fmtr.tools.egg-info/entry_points.txt +0 -0
- {fmtr.tools-1.0.43 → fmtr.tools-1.0.45}/fmtr.tools.egg-info/requires.txt +0 -0
- {fmtr.tools-1.0.43 → fmtr.tools-1.0.45}/fmtr.tools.egg-info/top_level.txt +0 -0
- {fmtr.tools-1.0.43 → fmtr.tools-1.0.45}/setup.cfg +0 -0
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
Metadata-Version: 2.1
|
|
2
2
|
Name: fmtr.tools
|
|
3
|
-
Version: 1.0.
|
|
3
|
+
Version: 1.0.45
|
|
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
|
|
7
7
|
Author-email: innovative.fowler@mask.pro.fmtr.dev
|
|
8
|
-
License: Copyright ©
|
|
8
|
+
License: Copyright © 2025 Frontmatter. All rights reserved.
|
|
9
9
|
Description-Content-Type: text/markdown
|
|
10
10
|
Provides-Extra: ai
|
|
11
11
|
Provides-Extra: ai.client
|
|
@@ -1,14 +1,22 @@
|
|
|
1
1
|
from pydantic import BaseModel, RootModel
|
|
2
2
|
|
|
3
3
|
|
|
4
|
-
def to_df(*objs):
|
|
4
|
+
def to_df(*objs, name_value='value'):
|
|
5
5
|
"""
|
|
6
6
|
|
|
7
7
|
DataFrame representation of Data Models as rows.
|
|
8
8
|
|
|
9
9
|
"""
|
|
10
10
|
from fmtr.tools import tabular
|
|
11
|
-
|
|
11
|
+
|
|
12
|
+
rows = []
|
|
13
|
+
for obj in objs:
|
|
14
|
+
if isinstance(obj, BaseModel):
|
|
15
|
+
row = obj.model_dump()
|
|
16
|
+
else:
|
|
17
|
+
row = {name_value: obj}
|
|
18
|
+
rows.append(row)
|
|
19
|
+
|
|
12
20
|
df = tabular.DataFrame(rows)
|
|
13
21
|
return df
|
|
14
22
|
|
|
@@ -40,7 +48,7 @@ class Base(BaseModel, MixinFromJson):
|
|
|
40
48
|
|
|
41
49
|
"""
|
|
42
50
|
|
|
43
|
-
def to_df(self):
|
|
51
|
+
def to_df(self, name_value='value'):
|
|
44
52
|
"""
|
|
45
53
|
|
|
46
54
|
DataFrame representation with Fields as rows.
|
|
@@ -52,7 +60,7 @@ class Base(BaseModel, MixinFromJson):
|
|
|
52
60
|
val = getattr(self, name)
|
|
53
61
|
objs.append(val)
|
|
54
62
|
|
|
55
|
-
df = to_df(*objs)
|
|
63
|
+
df = to_df(*objs, name_value=name_value)
|
|
56
64
|
df['id'] = list(self.model_fields.keys())
|
|
57
65
|
return df
|
|
58
66
|
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
1.0.45
|
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
Metadata-Version: 2.1
|
|
2
2
|
Name: fmtr.tools
|
|
3
|
-
Version: 1.0.
|
|
3
|
+
Version: 1.0.45
|
|
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
|
|
7
7
|
Author-email: innovative.fowler@mask.pro.fmtr.dev
|
|
8
|
-
License: Copyright ©
|
|
8
|
+
License: Copyright © 2025 Frontmatter. All rights reserved.
|
|
9
9
|
Description-Content-Type: text/markdown
|
|
10
10
|
Provides-Extra: ai
|
|
11
11
|
Provides-Extra: ai.client
|
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
from datetime import datetime
|
|
2
|
+
from pathlib import Path
|
|
3
|
+
from setuptools import find_namespace_packages, setup, find_packages
|
|
4
|
+
|
|
5
|
+
import requirements
|
|
6
|
+
|
|
7
|
+
ORG, PACKAGE = 'fmtr', 'tools'
|
|
8
|
+
ORG_GITHUB = ORG
|
|
9
|
+
AUTHOR = 'Frontmatter'
|
|
10
|
+
AUTHOR_EMAIL = 'innovative.fowler@mask.pro.fmtr.dev'
|
|
11
|
+
DESCRIPTION = 'Collection of high-level tools to simplify everyday development tasks, with a focus on AI/ML'
|
|
12
|
+
|
|
13
|
+
PATH_BASE = Path(__file__).absolute().parent
|
|
14
|
+
IS_SINGLETON = (PATH_BASE / PACKAGE).exists()
|
|
15
|
+
VERSION = 'version'
|
|
16
|
+
|
|
17
|
+
if IS_SINGLETON:
|
|
18
|
+
packages = find_packages()
|
|
19
|
+
package_dir = None
|
|
20
|
+
name = PACKAGE
|
|
21
|
+
path_ver = PATH_BASE / name / VERSION
|
|
22
|
+
else:
|
|
23
|
+
packages = find_namespace_packages()
|
|
24
|
+
package_dir = {'': '.'}
|
|
25
|
+
name = f'{ORG}.{PACKAGE}'
|
|
26
|
+
path_ver = PATH_BASE / ORG / PACKAGE / VERSION
|
|
27
|
+
|
|
28
|
+
__version__ = path_ver.read_text().strip()
|
|
29
|
+
|
|
30
|
+
setup(
|
|
31
|
+
name=name,
|
|
32
|
+
version=__version__,
|
|
33
|
+
url=f'https://github.com/{ORG_GITHUB}/{name}',
|
|
34
|
+
author=AUTHOR,
|
|
35
|
+
license=f'Copyright © {datetime.now().year} {AUTHOR}. All rights reserved.',
|
|
36
|
+
author_email=AUTHOR_EMAIL,
|
|
37
|
+
description=DESCRIPTION,
|
|
38
|
+
long_description=(PATH_BASE / 'README.md').read_text(),
|
|
39
|
+
long_description_content_type='text/markdown',
|
|
40
|
+
packages=packages,
|
|
41
|
+
package_dir=package_dir,
|
|
42
|
+
package_data={
|
|
43
|
+
name: [VERSION],
|
|
44
|
+
},
|
|
45
|
+
entry_points={
|
|
46
|
+
'console_scripts': requirements.CONSOLE_SCRIPTS,
|
|
47
|
+
},
|
|
48
|
+
install_requires=requirements.INSTALL,
|
|
49
|
+
extras_require=requirements.EXTRAS,
|
|
50
|
+
)
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
1.0.43
|
fmtr.tools-1.0.43/setup.py
DELETED
|
@@ -1,36 +0,0 @@
|
|
|
1
|
-
from pathlib import Path
|
|
2
|
-
from setuptools import find_namespace_packages, setup, find_packages
|
|
3
|
-
|
|
4
|
-
import requirements
|
|
5
|
-
|
|
6
|
-
name_ns, name_base = 'fmtr', 'tools'
|
|
7
|
-
name = f'{name_ns}.{name_base}'
|
|
8
|
-
path_segment = f'{name_ns}/{name_base}'
|
|
9
|
-
path_base = Path(__file__).absolute().parent
|
|
10
|
-
path_ver = path_base / path_segment / 'version'
|
|
11
|
-
__version__ = path_ver.read_text().strip()
|
|
12
|
-
|
|
13
|
-
packages = find_packages(where=path_segment)
|
|
14
|
-
packages = [name] + [f'{name}.{nsp}' for nsp in packages]
|
|
15
|
-
|
|
16
|
-
setup(
|
|
17
|
-
name=name,
|
|
18
|
-
version=__version__,
|
|
19
|
-
url=f'https://github.com/{name_ns}/{name}',
|
|
20
|
-
license='Copyright © 2024 Frontmatter. All rights reserved.',
|
|
21
|
-
author='Frontmatter',
|
|
22
|
-
author_email='innovative.fowler@mask.pro.fmtr.dev',
|
|
23
|
-
description='Collection of high-level tools to simplify everyday development tasks, with a focus on AI/ML',
|
|
24
|
-
long_description=(path_base / 'README.md').read_text(),
|
|
25
|
-
long_description_content_type='text/markdown',
|
|
26
|
-
packages=find_namespace_packages(),
|
|
27
|
-
package_dir={'': '.'},
|
|
28
|
-
package_data={
|
|
29
|
-
name: [f'version'],
|
|
30
|
-
},
|
|
31
|
-
entry_points={
|
|
32
|
-
'console_scripts': requirements.CONSOLE_SCRIPTS,
|
|
33
|
-
},
|
|
34
|
-
install_requires=requirements.INSTALL,
|
|
35
|
-
extras_require=requirements.EXTRAS,
|
|
36
|
-
)
|
|
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
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|