ostruct-cli 0.2.0__tar.gz → 0.4.0__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.
- {ostruct_cli-0.2.0 → ostruct_cli-0.4.0}/PKG-INFO +9 -6
- {ostruct_cli-0.2.0 → ostruct_cli-0.4.0}/README.md +3 -3
- {ostruct_cli-0.2.0 → ostruct_cli-0.4.0}/pyproject.toml +11 -4
- {ostruct_cli-0.2.0 → ostruct_cli-0.4.0}/src/ostruct/cli/__init__.py +2 -2
- {ostruct_cli-0.2.0 → ostruct_cli-0.4.0}/src/ostruct/cli/cli.py +466 -604
- ostruct_cli-0.4.0/src/ostruct/cli/click_options.py +257 -0
- ostruct_cli-0.4.0/src/ostruct/cli/errors.py +380 -0
- {ostruct_cli-0.2.0 → ostruct_cli-0.4.0}/src/ostruct/cli/file_info.py +154 -50
- ostruct_cli-0.4.0/src/ostruct/cli/file_list.py +332 -0
- {ostruct_cli-0.2.0 → ostruct_cli-0.4.0}/src/ostruct/cli/file_utils.py +95 -67
- ostruct_cli-0.4.0/src/ostruct/cli/path_utils.py +104 -0
- ostruct_cli-0.4.0/src/ostruct/cli/security/__init__.py +32 -0
- ostruct_cli-0.4.0/src/ostruct/cli/security/allowed_checker.py +47 -0
- ostruct_cli-0.4.0/src/ostruct/cli/security/case_manager.py +75 -0
- ostruct_cli-0.4.0/src/ostruct/cli/security/errors.py +184 -0
- ostruct_cli-0.4.0/src/ostruct/cli/security/normalization.py +161 -0
- ostruct_cli-0.4.0/src/ostruct/cli/security/safe_joiner.py +211 -0
- ostruct_cli-0.4.0/src/ostruct/cli/security/security_manager.py +353 -0
- ostruct_cli-0.4.0/src/ostruct/cli/security/symlink_resolver.py +483 -0
- ostruct_cli-0.4.0/src/ostruct/cli/security/types.py +108 -0
- ostruct_cli-0.4.0/src/ostruct/cli/security/windows_paths.py +404 -0
- {ostruct_cli-0.2.0 → ostruct_cli-0.4.0}/src/ostruct/cli/template_filters.py +8 -5
- {ostruct_cli-0.2.0 → ostruct_cli-0.4.0}/src/ostruct/cli/template_io.py +4 -2
- ostruct_cli-0.2.0/src/ostruct/cli/errors.py +0 -329
- ostruct_cli-0.2.0/src/ostruct/cli/file_list.py +0 -207
- ostruct_cli-0.2.0/src/ostruct/cli/path_utils.py +0 -123
- ostruct_cli-0.2.0/src/ostruct/cli/security.py +0 -323
- ostruct_cli-0.2.0/src/ostruct/cli/security_types.py +0 -49
- {ostruct_cli-0.2.0 → ostruct_cli-0.4.0}/LICENSE +0 -0
- {ostruct_cli-0.2.0 → ostruct_cli-0.4.0}/src/ostruct/__init__.py +0 -0
- {ostruct_cli-0.2.0 → ostruct_cli-0.4.0}/src/ostruct/cli/cache_manager.py +0 -0
- {ostruct_cli-0.2.0 → ostruct_cli-0.4.0}/src/ostruct/cli/progress.py +0 -0
- {ostruct_cli-0.2.0 → ostruct_cli-0.4.0}/src/ostruct/cli/template_env.py +0 -0
- {ostruct_cli-0.2.0 → ostruct_cli-0.4.0}/src/ostruct/cli/template_extensions.py +0 -0
- {ostruct_cli-0.2.0 → ostruct_cli-0.4.0}/src/ostruct/cli/template_rendering.py +0 -0
- {ostruct_cli-0.2.0 → ostruct_cli-0.4.0}/src/ostruct/cli/template_schema.py +0 -0
- {ostruct_cli-0.2.0 → ostruct_cli-0.4.0}/src/ostruct/cli/template_utils.py +0 -0
- {ostruct_cli-0.2.0 → ostruct_cli-0.4.0}/src/ostruct/cli/template_validation.py +0 -0
- {ostruct_cli-0.2.0 → ostruct_cli-0.4.0}/src/ostruct/cli/utils.py +0 -0
- {ostruct_cli-0.2.0 → ostruct_cli-0.4.0}/src/ostruct/py.typed +0 -0
@@ -1,6 +1,6 @@
|
|
1
1
|
Metadata-Version: 2.3
|
2
2
|
Name: ostruct-cli
|
3
|
-
Version: 0.
|
3
|
+
Version: 0.4.0
|
4
4
|
Summary: CLI for OpenAI Structured Output
|
5
5
|
Author: Yaniv Golan
|
6
6
|
Author-email: yaniv@golan.name
|
@@ -13,21 +13,24 @@ Classifier: Programming Language :: Python :: 3.12
|
|
13
13
|
Classifier: Programming Language :: Python :: 3.13
|
14
14
|
Requires-Dist: cachetools (>=5.3.2,<6.0.0)
|
15
15
|
Requires-Dist: chardet (>=5.0.0,<6.0.0)
|
16
|
+
Requires-Dist: click (>=8.1.7,<9.0.0)
|
16
17
|
Requires-Dist: ijson (>=3.2.3,<4.0.0)
|
17
18
|
Requires-Dist: jsonschema (>=4.23.0,<5.0.0)
|
18
|
-
Requires-Dist: openai
|
19
|
+
Requires-Dist: openai (>=1.0.0,<2.0.0)
|
20
|
+
Requires-Dist: openai-structured (>=1.3.0,<2.0.0)
|
19
21
|
Requires-Dist: pydantic (>=2.6.3,<3.0.0)
|
20
22
|
Requires-Dist: pyyaml (>=6.0.2,<7.0.0)
|
21
|
-
Requires-Dist: tiktoken (>=0.
|
23
|
+
Requires-Dist: tiktoken (>=0.8.0,<0.9.0)
|
22
24
|
Requires-Dist: tomli (>=2.0.1,<3.0.0) ; python_version < "3.11"
|
23
25
|
Requires-Dist: typing-extensions (>=4.9.0,<5.0.0)
|
26
|
+
Requires-Dist: werkzeug (>=3.1.3,<4.0.0)
|
24
27
|
Description-Content-Type: text/markdown
|
25
28
|
|
26
29
|
# ostruct-cli
|
27
30
|
|
28
31
|
[](https://badge.fury.io/py/ostruct-cli)
|
29
|
-
[](https://pypi.org/project/ostruct-cli
|
30
|
-
[](https://pypi.org/project/ostruct-cli)
|
33
|
+
[](https://ostruct.readthedocs.io/en/latest/?badge=latest)
|
31
34
|
[](https://github.com/yaniv-golan/ostruct/actions/workflows/ci.yml)
|
32
35
|
[](https://opensource.org/licenses/MIT)
|
33
36
|
|
@@ -124,7 +127,7 @@ All debug and error logs are written to:
|
|
124
127
|
- `~/.ostruct/logs/ostruct.log`: General application logs
|
125
128
|
- `~/.ostruct/logs/openai_stream.log`: OpenAI streaming operations logs
|
126
129
|
|
127
|
-
For more detailed documentation and examples, visit our [documentation](https://ostruct
|
130
|
+
For more detailed documentation and examples, visit our [documentation](https://ostruct.readthedocs.io/).
|
128
131
|
|
129
132
|
## Development
|
130
133
|
|
@@ -1,8 +1,8 @@
|
|
1
1
|
# ostruct-cli
|
2
2
|
|
3
3
|
[](https://badge.fury.io/py/ostruct-cli)
|
4
|
-
[](https://pypi.org/project/ostruct-cli
|
5
|
-
[](https://pypi.org/project/ostruct-cli)
|
5
|
+
[](https://ostruct.readthedocs.io/en/latest/?badge=latest)
|
6
6
|
[](https://github.com/yaniv-golan/ostruct/actions/workflows/ci.yml)
|
7
7
|
[](https://opensource.org/licenses/MIT)
|
8
8
|
|
@@ -99,7 +99,7 @@ All debug and error logs are written to:
|
|
99
99
|
- `~/.ostruct/logs/ostruct.log`: General application logs
|
100
100
|
- `~/.ostruct/logs/openai_stream.log`: OpenAI streaming operations logs
|
101
101
|
|
102
|
-
For more detailed documentation and examples, visit our [documentation](https://ostruct
|
102
|
+
For more detailed documentation and examples, visit our [documentation](https://ostruct.readthedocs.io/).
|
103
103
|
|
104
104
|
## Development
|
105
105
|
|
@@ -4,7 +4,7 @@
|
|
4
4
|
|
5
5
|
[tool.poetry]
|
6
6
|
name = "ostruct-cli"
|
7
|
-
version = "0.
|
7
|
+
version = "0.4.0"
|
8
8
|
description = "CLI for OpenAI Structured Output"
|
9
9
|
authors = ["Yaniv Golan <yaniv@golan.name>"]
|
10
10
|
readme = "README.md"
|
@@ -18,10 +18,13 @@
|
|
18
18
|
cachetools = "^5.3.2"
|
19
19
|
ijson = "^3.2.3"
|
20
20
|
typing-extensions = "^4.9.0"
|
21
|
-
tiktoken = "^0.
|
21
|
+
tiktoken = "^0.8.0"
|
22
22
|
pyyaml = "^6.0.2"
|
23
|
-
openai-structured = "^1.0.0"
|
24
23
|
tomli = {version = "^2.0.1", python = "<3.11"}
|
24
|
+
click = "^8.1.7"
|
25
|
+
werkzeug = "^3.1.3"
|
26
|
+
openai = "^1.0.0"
|
27
|
+
openai-structured = "^1.3.0"
|
25
28
|
|
26
29
|
[tool.poetry.scripts]
|
27
30
|
ostruct = "ostruct.cli.cli:main"
|
@@ -46,6 +49,9 @@
|
|
46
49
|
types-chardet = "^5.0.4.6"
|
47
50
|
pyfakefs = "^5.7.4"
|
48
51
|
types-cachetools = "^5.5.0.20240820"
|
52
|
+
types-click = "^7.1.8"
|
53
|
+
types-requests = "^2.32.0.20241016"
|
54
|
+
pre-commit = "^4.1.0"
|
49
55
|
|
50
56
|
[tool.poetry.group.docs]
|
51
57
|
optional = true
|
@@ -98,6 +104,7 @@
|
|
98
104
|
markers = [
|
99
105
|
"live: mark test as a live test that should use real API key",
|
100
106
|
"asyncio: mark test as requiring async loop",
|
107
|
+
"no_pyfakefs: mark test to disable pyfakefs"
|
101
108
|
]
|
102
109
|
asyncio_default_fixture_loop_scope = "function"
|
103
110
|
|
@@ -109,4 +116,4 @@
|
|
109
116
|
|
110
117
|
[tool.poetry.group.examples.dependencies]
|
111
118
|
tenacity = "^8.2.3"
|
112
|
-
asyncio-throttle = "^1.0.2"
|
119
|
+
asyncio-throttle = "^1.0.2"
|
@@ -2,7 +2,7 @@
|
|
2
2
|
|
3
3
|
from .cli import (
|
4
4
|
ExitCode,
|
5
|
-
|
5
|
+
main,
|
6
6
|
validate_schema_file,
|
7
7
|
validate_task_template,
|
8
8
|
validate_variable_mapping,
|
@@ -11,7 +11,7 @@ from .path_utils import validate_path_mapping
|
|
11
11
|
|
12
12
|
__all__ = [
|
13
13
|
"ExitCode",
|
14
|
-
"
|
14
|
+
"main",
|
15
15
|
"validate_path_mapping",
|
16
16
|
"validate_schema_file",
|
17
17
|
"validate_task_template",
|