hexastack-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.
- {hexastack_cli-0.2.0 → hexastack_cli-0.4.0}/PKG-INFO +3 -3
- {hexastack_cli-0.2.0 → hexastack_cli-0.4.0}/README.md +2 -2
- {hexastack_cli-0.2.0 → hexastack_cli-0.4.0}/pyproject.toml +13 -2
- {hexastack_cli-0.2.0 → hexastack_cli-0.4.0}/pyproject.toml.orig +13 -2
- {hexastack_cli-0.2.0 → hexastack_cli-0.4.0}/src/hexastack_cli/adapters/__init__.py +0 -2
- {hexastack_cli-0.2.0/src/hexastack_cli/infra → hexastack_cli-0.4.0/src/hexastack_cli/domain}/config.py +0 -20
- {hexastack_cli-0.2.0 → hexastack_cli-0.4.0}/src/hexastack_cli/infra/__init__.py +2 -0
- {hexastack_cli-0.2.0 → hexastack_cli-0.4.0}/src/hexastack_cli/infra/bootstrap.py +1 -1
- hexastack_cli-0.4.0/src/hexastack_cli/infra/config.py +19 -0
- hexastack_cli-0.4.0/src/hexastack_cli/py.typed +0 -0
- {hexastack_cli-0.2.0 → hexastack_cli-0.4.0}/src/hexastack_cli/__init__.py +0 -0
- {hexastack_cli-0.2.0 → hexastack_cli-0.4.0}/src/hexastack_cli/adapters/presenter.py +0 -0
- {hexastack_cli-0.2.0 → hexastack_cli-0.4.0}/src/hexastack_cli/adapters/routing.py +0 -0
- /hexastack_cli-0.2.0/src/hexastack_cli/py.typed → /hexastack_cli-0.4.0/src/hexastack_cli/domain/__init__.py +0 -0
- {hexastack_cli-0.2.0/src/hexastack_cli/adapters → hexastack_cli-0.4.0/src/hexastack_cli/infra}/app.py +0 -0
- {hexastack_cli-0.2.0 → hexastack_cli-0.4.0}/src/hexastack_cli/infra/autodiscovery.py +0 -0
- {hexastack_cli-0.2.0 → hexastack_cli-0.4.0}/src/hexastack_cli/infra/decorators.py +0 -0
- {hexastack_cli-0.2.0 → hexastack_cli-0.4.0}/src/hexastack_cli/testing/__init__.py +0 -0
- {hexastack_cli-0.2.0 → hexastack_cli-0.4.0}/src/hexastack_cli/testing/events.py +0 -0
- {hexastack_cli-0.2.0 → hexastack_cli-0.4.0}/src/hexastack_cli/testing/narrator.py +0 -0
- {hexastack_cli-0.2.0 → hexastack_cli-0.4.0}/src/hexastack_cli/testing/terminal.py +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: hexastack-cli
|
|
3
|
-
Version: 0.
|
|
3
|
+
Version: 0.4.0
|
|
4
4
|
Summary: Hexastack CLI presentation adapter with Typer and Rich
|
|
5
5
|
Author: Richard West
|
|
6
6
|
Author-email: Richard West <dopplereffect.us@gmail.com>
|
|
@@ -43,8 +43,8 @@ Description-Content-Type: text/markdown
|
|
|
43
43
|
```
|
|
44
44
|
hexastack_cli/
|
|
45
45
|
├── domain/ # CliContext, OutputFormat enum
|
|
46
|
-
├── adapters/ #
|
|
47
|
-
└── infra/ # CliBootstrapper (order=
|
|
46
|
+
├── adapters/ # Rich presenters, Typer command runners
|
|
47
|
+
└── infra/ # create_cli_app, CliBootstrapper (order=40), @cli_command, @cli_query, @cli_group, @feature_flag_command
|
|
48
48
|
```
|
|
49
49
|
|
|
50
50
|
### Key Exports
|
|
@@ -27,8 +27,8 @@
|
|
|
27
27
|
```
|
|
28
28
|
hexastack_cli/
|
|
29
29
|
├── domain/ # CliContext, OutputFormat enum
|
|
30
|
-
├── adapters/ #
|
|
31
|
-
└── infra/ # CliBootstrapper (order=
|
|
30
|
+
├── adapters/ # Rich presenters, Typer command runners
|
|
31
|
+
└── infra/ # create_cli_app, CliBootstrapper (order=40), @cli_command, @cli_query, @cli_group, @feature_flag_command
|
|
32
32
|
```
|
|
33
33
|
|
|
34
34
|
### Key Exports
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
[project]
|
|
2
2
|
name = "hexastack-cli"
|
|
3
|
-
version = "0.
|
|
3
|
+
version = "0.4.0"
|
|
4
4
|
description = "Hexastack CLI presentation adapter with Typer and Rich"
|
|
5
5
|
readme = "README.md"
|
|
6
6
|
license = "Apache-2.0"
|
|
@@ -40,8 +40,19 @@ name = "Hexagonal architecture layer hierarchy"
|
|
|
40
40
|
type = "layers"
|
|
41
41
|
containers = ["hexastack_cli"]
|
|
42
42
|
layers = [
|
|
43
|
-
"adapters",
|
|
44
43
|
"infra",
|
|
44
|
+
"adapters",
|
|
45
|
+
"domain",
|
|
46
|
+
]
|
|
47
|
+
|
|
48
|
+
[[tool.importlinter.contracts]]
|
|
49
|
+
name = "Forbidden imports for domain"
|
|
50
|
+
type = "forbidden"
|
|
51
|
+
source_modules = ["hexastack_cli.domain"]
|
|
52
|
+
forbidden_modules = [
|
|
53
|
+
"hexastack_cli.adapters",
|
|
54
|
+
"hexastack_cli.infra",
|
|
55
|
+
"hexastack_cli.testing",
|
|
45
56
|
]
|
|
46
57
|
|
|
47
58
|
[[tool.importlinter.contracts]]
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
[project]
|
|
2
2
|
name = "hexastack-cli"
|
|
3
|
-
version = "0.
|
|
3
|
+
version = "0.4.0"
|
|
4
4
|
description = "Hexastack CLI presentation adapter with Typer and Rich"
|
|
5
5
|
readme = "README.md"
|
|
6
6
|
license = "Apache-2.0"
|
|
@@ -39,8 +39,19 @@ name = "Hexagonal architecture layer hierarchy"
|
|
|
39
39
|
type = "layers"
|
|
40
40
|
containers = ["hexastack_cli"]
|
|
41
41
|
layers = [
|
|
42
|
-
"adapters",
|
|
43
42
|
"infra",
|
|
43
|
+
"adapters",
|
|
44
|
+
"domain",
|
|
45
|
+
]
|
|
46
|
+
|
|
47
|
+
[[tool.importlinter.contracts]]
|
|
48
|
+
name = "Forbidden imports for domain"
|
|
49
|
+
type = "forbidden"
|
|
50
|
+
source_modules = ["hexastack_cli.domain"]
|
|
51
|
+
forbidden_modules = [
|
|
52
|
+
"hexastack_cli.adapters",
|
|
53
|
+
"hexastack_cli.infra",
|
|
54
|
+
"hexastack_cli.testing",
|
|
44
55
|
]
|
|
45
56
|
|
|
46
57
|
[[tool.importlinter.contracts]]
|
|
@@ -1,4 +1,3 @@
|
|
|
1
|
-
from hexastack_cli.adapters.app import create_cli_app
|
|
2
1
|
from hexastack_cli.adapters.presenter import RichTerminalPresenter
|
|
3
2
|
from hexastack_cli.adapters.routing import (
|
|
4
3
|
register_cqrs_command,
|
|
@@ -6,7 +5,6 @@ from hexastack_cli.adapters.routing import (
|
|
|
6
5
|
)
|
|
7
6
|
|
|
8
7
|
__all__ = [
|
|
9
|
-
"create_cli_app",
|
|
10
8
|
"register_cqrs_command",
|
|
11
9
|
"register_cqrs_query",
|
|
12
10
|
"RichTerminalPresenter",
|
|
@@ -1,10 +1,6 @@
|
|
|
1
1
|
from pydantic import BaseModel, Field
|
|
2
2
|
|
|
3
|
-
from hexastack_core.infra.decorators import config_section
|
|
4
|
-
from hexastack_core.infra.registries.config import ConfigRegistry
|
|
5
3
|
|
|
6
|
-
|
|
7
|
-
@config_section("cli")
|
|
8
4
|
class HexastackCliConfig(BaseModel):
|
|
9
5
|
"""Configuration schema for Hexastack CLI presentation adapter.
|
|
10
6
|
|
|
@@ -24,20 +20,4 @@ class HexastackCliConfig(BaseModel):
|
|
|
24
20
|
|
|
25
21
|
__all__ = [
|
|
26
22
|
"HexastackCliConfig",
|
|
27
|
-
"register_cli_config",
|
|
28
23
|
]
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
def register_cli_config(registry: ConfigRegistry) -> None:
|
|
32
|
-
"""Register CLI configuration schema with a ConfigRegistry under 'cli'.
|
|
33
|
-
|
|
34
|
-
Args:
|
|
35
|
-
registry: Target ConfigRegistry instance.
|
|
36
|
-
|
|
37
|
-
Returns:
|
|
38
|
-
None.
|
|
39
|
-
|
|
40
|
-
Raises:
|
|
41
|
-
None.
|
|
42
|
-
"""
|
|
43
|
-
registry.register_config_section("cli", HexastackCliConfig)
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
from hexastack_cli.infra.app import create_cli_app
|
|
1
2
|
from hexastack_cli.infra.autodiscovery import (
|
|
2
3
|
autodiscover_cli_commands,
|
|
3
4
|
create_cli_visitor,
|
|
@@ -22,6 +23,7 @@ __all__ = [
|
|
|
22
23
|
"cli_query",
|
|
23
24
|
"CliBootstrapper",
|
|
24
25
|
"CliMetadata",
|
|
26
|
+
"create_cli_app",
|
|
25
27
|
"create_cli_visitor",
|
|
26
28
|
"GroupMetadata",
|
|
27
29
|
"HexastackCliConfig",
|
|
@@ -34,7 +34,7 @@ class CliBootstrapper(BootstrapperPort):
|
|
|
34
34
|
Raises:
|
|
35
35
|
None.
|
|
36
36
|
"""
|
|
37
|
-
from hexastack_cli.
|
|
37
|
+
from hexastack_cli.infra.app import create_cli_app
|
|
38
38
|
from hexastack_cli.infra.autodiscovery import create_cli_visitor
|
|
39
39
|
|
|
40
40
|
cfg = HexastackCliConfig()
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
from hexastack_cli.domain.config import HexastackCliConfig
|
|
2
|
+
from hexastack_core.infra.decorators import config_section
|
|
3
|
+
from hexastack_core.infra.registries.config import ConfigRegistry
|
|
4
|
+
|
|
5
|
+
config_section("cli")(HexastackCliConfig)
|
|
6
|
+
|
|
7
|
+
__all__ = [
|
|
8
|
+
"HexastackCliConfig",
|
|
9
|
+
"register_cli_config",
|
|
10
|
+
]
|
|
11
|
+
|
|
12
|
+
|
|
13
|
+
def register_cli_config(registry: ConfigRegistry) -> None:
|
|
14
|
+
"""Register CLI configuration schema with a ConfigRegistry under 'cli'.
|
|
15
|
+
|
|
16
|
+
Args:
|
|
17
|
+
registry: Target ConfigRegistry instance.
|
|
18
|
+
"""
|
|
19
|
+
registry.register_config_section("cli", HexastackCliConfig)
|
|
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
|