galactic 0.4.0.0.post1.dev142__tar.gz → 0.4.0.0.post1.dev149__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.
- {galactic-0.4.0.0.post1.dev142 → galactic-0.4.0.0.post1.dev149}/PKG-INFO +1 -3
- {galactic-0.4.0.0.post1.dev142 → galactic-0.4.0.0.post1.dev149}/docs/conf.py +8 -1
- {galactic-0.4.0.0.post1.dev142 → galactic-0.4.0.0.post1.dev149}/package.store/README.md +2 -3
- {galactic-0.4.0.0.post1.dev142 → galactic-0.4.0.0.post1.dev149}/pyproject.toml +3 -6
- {galactic-0.4.0.0.post1.dev142 → galactic-0.4.0.0.post1.dev149}/src/galactic/apps/cli/main/__init__.pyi +9 -9
- {galactic-0.4.0.0.post1.dev142 → galactic-0.4.0.0.post1.dev149}/src/galactic/apps/cli/main/_app.py +101 -89
- galactic-0.4.0.0.post1.dev149/store.md +4 -0
- galactic-0.4.0.0.post1.dev142/store.md +0 -1
- {galactic-0.4.0.0.post1.dev142 → galactic-0.4.0.0.post1.dev149}/.gitignore +0 -0
- {galactic-0.4.0.0.post1.dev142 → galactic-0.4.0.0.post1.dev149}/LICENSE +0 -0
- {galactic-0.4.0.0.post1.dev142 → galactic-0.4.0.0.post1.dev149}/README.rst +0 -0
- {galactic-0.4.0.0.post1.dev142 → galactic-0.4.0.0.post1.dev149}/docs/_templates/autosummary/module.rst +0 -0
- {galactic-0.4.0.0.post1.dev142 → galactic-0.4.0.0.post1.dev149}/docs/_templates/components/prev-next.html +0 -0
- {galactic-0.4.0.0.post1.dev142 → galactic-0.4.0.0.post1.dev149}/docs/api/apps/cli/main/index.rst +0 -0
- {galactic-0.4.0.0.post1.dev142 → galactic-0.4.0.0.post1.dev149}/docs/api/apps/cli/main/modules/galactic.apps.cli.main.rst +0 -0
- {galactic-0.4.0.0.post1.dev142 → galactic-0.4.0.0.post1.dev149}/docs/icon-dark.svg +0 -0
- {galactic-0.4.0.0.post1.dev142 → galactic-0.4.0.0.post1.dev149}/docs/icon-light.svg +0 -0
- {galactic-0.4.0.0.post1.dev142 → galactic-0.4.0.0.post1.dev149}/docs/index.rst +0 -0
- {galactic-0.4.0.0.post1.dev142 → galactic-0.4.0.0.post1.dev149}/docs/install/index.rst +0 -0
- {galactic-0.4.0.0.post1.dev142 → galactic-0.4.0.0.post1.dev149}/docs/release-notes.md +0 -0
- {galactic-0.4.0.0.post1.dev142 → galactic-0.4.0.0.post1.dev149}/docs/release-notes.txt +0 -0
- {galactic-0.4.0.0.post1.dev142 → galactic-0.4.0.0.post1.dev149}/docs/thegalactic.ico +0 -0
- {galactic-0.4.0.0.post1.dev142 → galactic-0.4.0.0.post1.dev149}/docs/thegalactic.svg +0 -0
- {galactic-0.4.0.0.post1.dev142 → galactic-0.4.0.0.post1.dev149}/docs/usage.rst +0 -0
- {galactic-0.4.0.0.post1.dev142 → galactic-0.4.0.0.post1.dev149}/hatch/.git +0 -0
- {galactic-0.4.0.0.post1.dev142 → galactic-0.4.0.0.post1.dev149}/hatch/.gitignore +0 -0
- {galactic-0.4.0.0.post1.dev142 → galactic-0.4.0.0.post1.dev149}/hatch/README.md +0 -0
- {galactic-0.4.0.0.post1.dev142 → galactic-0.4.0.0.post1.dev149}/hatch/build.py +0 -0
- {galactic-0.4.0.0.post1.dev142 → galactic-0.4.0.0.post1.dev149}/hatch/icon.svg +0 -0
- {galactic-0.4.0.0.post1.dev142 → galactic-0.4.0.0.post1.dev149}/package.store/.git +0 -0
- {galactic-0.4.0.0.post1.dev142 → galactic-0.4.0.0.post1.dev149}/package.store/.gitignore +0 -0
- {galactic-0.4.0.0.post1.dev142 → galactic-0.4.0.0.post1.dev149}/package.store/hatch_build.py +0 -0
- {galactic-0.4.0.0.post1.dev142 → galactic-0.4.0.0.post1.dev149}/package.store/icon.svg +0 -0
- {galactic-0.4.0.0.post1.dev142 → galactic-0.4.0.0.post1.dev149}/package.store/pyproject.toml +0 -0
- {galactic-0.4.0.0.post1.dev142 → galactic-0.4.0.0.post1.dev149}/src/galactic/apps/cli/main/__init__.py +0 -0
- {galactic-0.4.0.0.post1.dev142 → galactic-0.4.0.0.post1.dev149}/src/galactic/apps/cli/main/py.typed +0 -0
- {galactic-0.4.0.0.post1.dev142 → galactic-0.4.0.0.post1.dev149}/tests/dummy/src/galactic/apps/cli/dummy/__init__.py +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: galactic
|
|
3
|
-
Version: 0.4.0.0.post1.
|
|
3
|
+
Version: 0.4.0.0.post1.dev149
|
|
4
4
|
Summary: GALACTIC main application
|
|
5
5
|
Project-URL: Homepage, https://www.thegalactic.org/
|
|
6
6
|
Project-URL: Documentation, https://www.thegalactic.org/docs/apps/cli/main/latest/
|
|
@@ -8,7 +8,6 @@ Project-URL: Repository, https://gitlab.univ-lr.fr/galactic/public/src/apps/cli/
|
|
|
8
8
|
Project-URL: Issues, https://gitlab.univ-lr.fr/galactic/public/src/apps/cli/galactic-app-cli-main/-/issues/
|
|
9
9
|
Project-URL: Icon-light, https://www.thegalactic.org/docs/apps/cli/main/latest/_static/icon-light.svg
|
|
10
10
|
Project-URL: Icon-dark, https://www.thegalactic.org/docs/apps/cli/main/latest/_static/icon-dark.svg
|
|
11
|
-
Project-URL: Index-public, https://www.thegalactic.org/pypi/public/simple/
|
|
12
11
|
Author-email: The Galactic Organization <contact@thegalactic.org>
|
|
13
12
|
Maintainer-email: The Galactic Organization <contact@thegalactic.org>
|
|
14
13
|
License-Expression: BSD-3-Clause
|
|
@@ -25,7 +24,6 @@ Classifier: Programming Language :: Python :: 3.12
|
|
|
25
24
|
Classifier: Programming Language :: Python :: 3.13
|
|
26
25
|
Classifier: Programming Language :: Python :: 3.14
|
|
27
26
|
Requires-Python: <3.15,>=3.11
|
|
28
|
-
Requires-Dist: click~=8.3
|
|
29
27
|
Requires-Dist: galactic-helper-core>=0.4.0.0.post1.dev
|
|
30
28
|
Requires-Dist: platformdirs~=4.9
|
|
31
29
|
Requires-Dist: rich-click~=1.9
|
|
@@ -30,7 +30,14 @@ extensions = [
|
|
|
30
30
|
"sphinx_click",
|
|
31
31
|
]
|
|
32
32
|
|
|
33
|
-
copybutton_prompt_text =
|
|
33
|
+
copybutton_prompt_text = (
|
|
34
|
+
r">>> "
|
|
35
|
+
r"|\.\.\. "
|
|
36
|
+
r"|(?:\([^)\n]*\)\s*)?\$ "
|
|
37
|
+
r"|In \[\d*\]: "
|
|
38
|
+
r"| {2,5}\.\.\.: "
|
|
39
|
+
r"| {5,8}: "
|
|
40
|
+
)
|
|
34
41
|
copybutton_prompt_is_regexp = True
|
|
35
42
|
copybutton_line_continuation_character = "\\"
|
|
36
43
|
|
|
@@ -1,9 +1,8 @@
|
|
|
1
|
-
**GALACTIC** `package.
|
|
1
|
+
**GALACTIC** `package.store` submodule
|
|
2
2
|
=======================================
|
|
3
3
|
|
|
4
4
|
This submodule can be added to projects that need to build an additional package for
|
|
5
|
-
the market.
|
|
6
|
-
documentation package.
|
|
5
|
+
the market.
|
|
7
6
|
|
|
8
7
|
Icon constructed using:
|
|
9
8
|
|
|
@@ -40,15 +40,11 @@ classifiers = [
|
|
|
40
40
|
"Natural Language :: English"
|
|
41
41
|
]
|
|
42
42
|
dependencies = [
|
|
43
|
-
"click~=8.3",
|
|
44
43
|
"platformdirs~=4.9",
|
|
45
44
|
"rich-click~=1.9",
|
|
46
45
|
"galactic-helper-core>=0.4.0.0.post1.dev"
|
|
47
46
|
]
|
|
48
47
|
|
|
49
|
-
[project.package.store]
|
|
50
|
-
readme = "store.md"
|
|
51
|
-
|
|
52
48
|
[project.urls]
|
|
53
49
|
Homepage = "https://www.thegalactic.org/"
|
|
54
50
|
Documentation = "https://www.thegalactic.org/docs/apps/cli/main/latest/"
|
|
@@ -57,8 +53,6 @@ Issues = "https://gitlab.univ-lr.fr/galactic/public/src/apps/cli/galactic-app-cl
|
|
|
57
53
|
# Icons for the GUI and the documentation
|
|
58
54
|
Icon-light = "https://www.thegalactic.org/docs/apps/cli/main/latest/_static/icon-light.svg"
|
|
59
55
|
Icon-dark = "https://www.thegalactic.org/docs/apps/cli/main/latest/_static/icon-dark.svg"
|
|
60
|
-
# List of extra-index-url used by pip starting by 'Index'
|
|
61
|
-
Index-public = "https://www.thegalactic.org/pypi/public/simple/"
|
|
62
56
|
|
|
63
57
|
[project.scripts]
|
|
64
58
|
galactic = "galactic.apps.cli.main:application"
|
|
@@ -99,6 +93,9 @@ include = [
|
|
|
99
93
|
"src/galactic/**/examples/"
|
|
100
94
|
]
|
|
101
95
|
|
|
96
|
+
[tool.hatch.build.targets."package.store".metadata]
|
|
97
|
+
readme = "store.md"
|
|
98
|
+
|
|
102
99
|
[tool.hatch.envs.default]
|
|
103
100
|
installer = "uv"
|
|
104
101
|
|
|
@@ -9,10 +9,10 @@ class Group(click.Group): # type: ignore[misc]
|
|
|
9
9
|
|
|
10
10
|
application: Group
|
|
11
11
|
|
|
12
|
-
def error(text: str
|
|
13
|
-
def info(text: str
|
|
14
|
-
def warning(text: str
|
|
15
|
-
def comment(text: str
|
|
12
|
+
def error(text: str) -> None: ...
|
|
13
|
+
def info(text: str) -> None: ...
|
|
14
|
+
def warning(text: str) -> None: ...
|
|
15
|
+
def comment(text: str) -> None: ...
|
|
16
16
|
def prompt(text: str, **kwargs: Any) -> Any: ...
|
|
17
17
|
def confirm(text: str, **kwargs: Any) -> bool: ...
|
|
18
18
|
def prompt_password_with_confirmation(
|
|
@@ -21,11 +21,11 @@ def prompt_password_with_confirmation(
|
|
|
21
21
|
) -> str: ...
|
|
22
22
|
|
|
23
23
|
class AppStyles:
|
|
24
|
-
ERROR: ClassVar[
|
|
25
|
-
WARNING: ClassVar[
|
|
26
|
-
INFO: ClassVar[
|
|
27
|
-
COMMENT: ClassVar[
|
|
28
|
-
QUESTION: ClassVar[
|
|
24
|
+
ERROR: ClassVar[str]
|
|
25
|
+
WARNING: ClassVar[str]
|
|
26
|
+
INFO: ClassVar[str]
|
|
27
|
+
COMMENT: ClassVar[str]
|
|
28
|
+
QUESTION: ClassVar[str]
|
|
29
29
|
|
|
30
30
|
def get_global_extra_index_lines(config_parser: ConfigParser) -> list[str]: ...
|
|
31
31
|
def set_global_extra_index_lines(
|
{galactic-0.4.0.0.post1.dev142 → galactic-0.4.0.0.post1.dev149}/src/galactic/apps/cli/main/_app.py
RENAMED
|
@@ -10,6 +10,7 @@ import urllib.parse
|
|
|
10
10
|
from configparser import ConfigParser
|
|
11
11
|
from typing import TYPE_CHECKING, Any, ClassVar
|
|
12
12
|
|
|
13
|
+
import rich.console
|
|
13
14
|
import rich_click as click
|
|
14
15
|
|
|
15
16
|
from galactic.helpers.core import detect_plugins, resolve_pip_config_path
|
|
@@ -19,30 +20,6 @@ if TYPE_CHECKING:
|
|
|
19
20
|
from pathlib import Path
|
|
20
21
|
|
|
21
22
|
|
|
22
|
-
GALACTIC_INDEX_URL = "https://www.thegalactic.org/pypi/public/simple/"
|
|
23
|
-
GALACTIC_EPILOG_PLAIN = (
|
|
24
|
-
"GAlois LAttices, Concept Theory, Implicational systems and Closures."
|
|
25
|
-
)
|
|
26
|
-
GALACTIC_EPILOG_RICH = (
|
|
27
|
-
"[yellow][bold]GA[/bold][/yellow]lois "
|
|
28
|
-
"[yellow][bold]LA[/bold][/yellow]ttices, "
|
|
29
|
-
"[yellow][bold]C[/bold][/yellow]oncept "
|
|
30
|
-
"[yellow][bold]T[/bold][/yellow]heory, "
|
|
31
|
-
"[yellow][bold]I[/bold][/yellow]mplicational systems and "
|
|
32
|
-
"[yellow][bold]C[/bold][/yellow]losures."
|
|
33
|
-
)
|
|
34
|
-
GALACTIC_HELP_PLAIN = "GALACTIC main application."
|
|
35
|
-
GALACTIC_HELP_RICH = "[yellow][bold]GALACTIC[/bold][/yellow] main application."
|
|
36
|
-
|
|
37
|
-
if "sphinx" in sys.modules:
|
|
38
|
-
GALACTIC_EPILOG = GALACTIC_EPILOG_PLAIN
|
|
39
|
-
GALACTIC_HELP = GALACTIC_HELP_PLAIN
|
|
40
|
-
else:
|
|
41
|
-
click.rich_click.TEXT_MARKUP = "rich"
|
|
42
|
-
GALACTIC_EPILOG = GALACTIC_EPILOG_RICH
|
|
43
|
-
GALACTIC_HELP = GALACTIC_HELP_RICH
|
|
44
|
-
|
|
45
|
-
|
|
46
23
|
# pylint: disable=too-few-public-methods
|
|
47
24
|
class AppStyles:
|
|
48
25
|
"""
|
|
@@ -51,25 +28,67 @@ class AppStyles:
|
|
|
51
28
|
Attributes
|
|
52
29
|
----------
|
|
53
30
|
ERROR
|
|
54
|
-
Style for errors (``
|
|
31
|
+
Style for errors (``red bold`` by default).
|
|
55
32
|
WARNING
|
|
56
|
-
Style for warnings (``
|
|
33
|
+
Style for warnings (``yellow bold`` by default).
|
|
57
34
|
INFO
|
|
58
|
-
Style for informations (``
|
|
35
|
+
Style for informations (``bright_magenta`` by default).
|
|
59
36
|
COMMENT
|
|
60
|
-
Style for comments (``
|
|
37
|
+
Style for comments (``green`` by default).
|
|
61
38
|
QUESTION
|
|
62
|
-
Style for questions (``
|
|
39
|
+
Style for questions (``cyan`` by default).
|
|
63
40
|
"""
|
|
64
41
|
|
|
65
|
-
ERROR: ClassVar[
|
|
66
|
-
WARNING: ClassVar[
|
|
67
|
-
INFO: ClassVar[
|
|
68
|
-
COMMENT: ClassVar[
|
|
69
|
-
QUESTION: ClassVar[
|
|
42
|
+
ERROR: ClassVar[str] = "red bold"
|
|
43
|
+
WARNING: ClassVar[str] = "yellow bold"
|
|
44
|
+
INFO: ClassVar[str] = "bright_magenta"
|
|
45
|
+
COMMENT: ClassVar[str] = "green"
|
|
46
|
+
QUESTION: ClassVar[str] = "cyan"
|
|
70
47
|
|
|
71
48
|
|
|
72
|
-
|
|
49
|
+
# pylint: disable=too-few-public-methods
|
|
50
|
+
class AppEnvVars:
|
|
51
|
+
"""
|
|
52
|
+
Environment variables.
|
|
53
|
+
|
|
54
|
+
Attributes
|
|
55
|
+
----------
|
|
56
|
+
NO_COLOR
|
|
57
|
+
Name of environment variable for no-color.
|
|
58
|
+
FORCE_COLOR
|
|
59
|
+
Name of environment variable for force color.
|
|
60
|
+
"""
|
|
61
|
+
|
|
62
|
+
# https://no-color.org
|
|
63
|
+
NO_COLOR = "NO_COLOR"
|
|
64
|
+
FORCE_COLOR = "FORCE_COLOR"
|
|
65
|
+
|
|
66
|
+
|
|
67
|
+
GALACTIC_INDEX_URL = "https://www.thegalactic.org/pypi/simple/"
|
|
68
|
+
GALACTIC_EPILOG_PLAIN = (
|
|
69
|
+
"GAlois LAttices, Concept Theory, Implicational systems and Closures."
|
|
70
|
+
)
|
|
71
|
+
GALACTIC_EPILOG_RICH = (
|
|
72
|
+
f"[{AppStyles.WARNING}]GA[/]lois "
|
|
73
|
+
f"[{AppStyles.WARNING}]LA[/]ttices, "
|
|
74
|
+
f"[{AppStyles.WARNING}]C[/]oncept "
|
|
75
|
+
f"[{AppStyles.WARNING}]T[/]heory, "
|
|
76
|
+
f"[{AppStyles.WARNING}]I[/]mplicational systems and "
|
|
77
|
+
f"[{AppStyles.WARNING}]C[/]losures."
|
|
78
|
+
)
|
|
79
|
+
GALACTIC_HELP_PLAIN = "GALACTIC main application."
|
|
80
|
+
GALACTIC_HELP_RICH = f"[{AppStyles.WARNING}]GALACTIC[/] main application."
|
|
81
|
+
|
|
82
|
+
if "sphinx" in sys.modules:
|
|
83
|
+
GALACTIC_EPILOG = GALACTIC_EPILOG_PLAIN
|
|
84
|
+
GALACTIC_HELP = GALACTIC_HELP_PLAIN
|
|
85
|
+
else:
|
|
86
|
+
click.rich_click.TEXT_MARKUP = "rich"
|
|
87
|
+
GALACTIC_EPILOG = GALACTIC_EPILOG_RICH
|
|
88
|
+
GALACTIC_HELP = GALACTIC_HELP_RICH
|
|
89
|
+
|
|
90
|
+
|
|
91
|
+
def error(text: str) -> None:
|
|
73
92
|
"""
|
|
74
93
|
Display an error message.
|
|
75
94
|
|
|
@@ -77,14 +96,12 @@ def error(text: str, **kwargs: Any) -> None:
|
|
|
77
96
|
----------
|
|
78
97
|
text
|
|
79
98
|
Text to display
|
|
80
|
-
**kwargs
|
|
81
|
-
Additional parameters passed to click.secho
|
|
82
99
|
|
|
83
100
|
"""
|
|
84
|
-
|
|
101
|
+
rich.console.Console().print(text, style=AppStyles.ERROR)
|
|
85
102
|
|
|
86
103
|
|
|
87
|
-
def info(text: str
|
|
104
|
+
def info(text: str) -> None:
|
|
88
105
|
"""
|
|
89
106
|
Display an info message.
|
|
90
107
|
|
|
@@ -92,14 +109,12 @@ def info(text: str, **kwargs: Any) -> None:
|
|
|
92
109
|
----------
|
|
93
110
|
text
|
|
94
111
|
Text to display
|
|
95
|
-
**kwargs
|
|
96
|
-
Additional parameters passed to click.secho
|
|
97
112
|
|
|
98
113
|
"""
|
|
99
|
-
|
|
114
|
+
rich.console.Console().print(text, style=AppStyles.INFO)
|
|
100
115
|
|
|
101
116
|
|
|
102
|
-
def warning(text: str
|
|
117
|
+
def warning(text: str) -> None:
|
|
103
118
|
"""
|
|
104
119
|
Display a warning.
|
|
105
120
|
|
|
@@ -107,14 +122,12 @@ def warning(text: str, **kwargs: Any) -> None:
|
|
|
107
122
|
----------
|
|
108
123
|
text
|
|
109
124
|
Text to display
|
|
110
|
-
**kwargs
|
|
111
|
-
Additional parameters passed to click.secho
|
|
112
125
|
|
|
113
126
|
"""
|
|
114
|
-
|
|
127
|
+
rich.console.Console().print(text, style=AppStyles.WARNING)
|
|
115
128
|
|
|
116
129
|
|
|
117
|
-
def comment(text: str
|
|
130
|
+
def comment(text: str) -> None:
|
|
118
131
|
"""
|
|
119
132
|
Display a comment.
|
|
120
133
|
|
|
@@ -122,11 +135,9 @@ def comment(text: str, **kwargs: Any) -> None:
|
|
|
122
135
|
----------
|
|
123
136
|
text
|
|
124
137
|
Text to display
|
|
125
|
-
**kwargs
|
|
126
|
-
Additional parameters passed to click.secho
|
|
127
138
|
|
|
128
139
|
"""
|
|
129
|
-
|
|
140
|
+
rich.console.Console().print(text, style=AppStyles.COMMENT)
|
|
130
141
|
|
|
131
142
|
|
|
132
143
|
def prompt(text: str, **kwargs: Any) -> Any:
|
|
@@ -141,7 +152,8 @@ def prompt(text: str, **kwargs: Any) -> Any:
|
|
|
141
152
|
Additional parameters passed to click.prompt
|
|
142
153
|
|
|
143
154
|
"""
|
|
144
|
-
|
|
155
|
+
rich.console.Console().print(text, style=AppStyles.QUESTION, end="")
|
|
156
|
+
return click.prompt("", **kwargs)
|
|
145
157
|
|
|
146
158
|
|
|
147
159
|
def confirm(text: str, **kwargs: Any) -> bool:
|
|
@@ -156,7 +168,8 @@ def confirm(text: str, **kwargs: Any) -> bool:
|
|
|
156
168
|
Additional parameters passed to click.confirm
|
|
157
169
|
|
|
158
170
|
"""
|
|
159
|
-
|
|
171
|
+
rich.console.Console().print(text, style=AppStyles.QUESTION, end="")
|
|
172
|
+
return click.confirm("", **kwargs)
|
|
160
173
|
|
|
161
174
|
|
|
162
175
|
def prompt_password_with_confirmation(
|
|
@@ -199,24 +212,6 @@ def prompt_password_with_confirmation(
|
|
|
199
212
|
error("Passwords do not match. Please retry.")
|
|
200
213
|
|
|
201
214
|
|
|
202
|
-
# pylint: disable=too-few-public-methods
|
|
203
|
-
class AppEnvVars:
|
|
204
|
-
"""
|
|
205
|
-
Environment variables.
|
|
206
|
-
|
|
207
|
-
Attributes
|
|
208
|
-
----------
|
|
209
|
-
NO_COLOR
|
|
210
|
-
Name of environment variable for no-color.
|
|
211
|
-
FORCE_COLOR
|
|
212
|
-
Name of environment variable for force color.
|
|
213
|
-
"""
|
|
214
|
-
|
|
215
|
-
# https://no-color.org
|
|
216
|
-
NO_COLOR = "NO_COLOR"
|
|
217
|
-
FORCE_COLOR = "FORCE_COLOR"
|
|
218
|
-
|
|
219
|
-
|
|
220
215
|
class Group(click.RichGroup): # type: ignore[misc]
|
|
221
216
|
"""
|
|
222
217
|
Group class for the GALACTIC app.
|
|
@@ -342,39 +337,54 @@ def config_init() -> None:
|
|
|
342
337
|
if config_path.exists():
|
|
343
338
|
backup_path = config_path.with_name(f"{config_path.name}.old")
|
|
344
339
|
config_parser.read(config_path, encoding="utf-8")
|
|
345
|
-
|
|
346
|
-
|
|
340
|
+
if not config_parser.has_section("global"):
|
|
341
|
+
config_parser.add_section("global")
|
|
342
|
+
index = config_parser.get("global", "index-url", fallback="")
|
|
343
|
+
url = urllib.parse.urlparse(index)
|
|
344
|
+
hostname = url.hostname
|
|
345
|
+
port = url.port
|
|
346
|
+
netloc = f"{hostname}{':' + str(port) if port else ''}"
|
|
347
|
+
index = urllib.parse.urlunparse(
|
|
348
|
+
(url.scheme, netloc, url.path, url.params, url.query, url.fragment),
|
|
349
|
+
)
|
|
350
|
+
if index == GALACTIC_INDEX_URL:
|
|
347
351
|
warning(
|
|
348
352
|
f"GALACTIC public index is already configured in {config_path}.",
|
|
349
353
|
)
|
|
350
354
|
return
|
|
351
355
|
warn_backup(config_parser, backup_path)
|
|
352
|
-
|
|
353
|
-
|
|
354
|
-
|
|
355
|
-
set_global_extra_index_lines(config_parser, lines)
|
|
356
|
+
if not config_parser.has_section("global"):
|
|
357
|
+
config_parser.add_section("global")
|
|
358
|
+
config_parser.set("global", "index-url", GALACTIC_INDEX_URL)
|
|
356
359
|
info_save(config_parser, config_path)
|
|
357
360
|
|
|
358
361
|
|
|
359
|
-
@config.command("
|
|
360
|
-
def
|
|
362
|
+
@config.command("credential") # type: ignore[untyped-decorator]
|
|
363
|
+
def config_credential() -> None:
|
|
361
364
|
"""
|
|
362
|
-
Update credentials for an
|
|
365
|
+
Update credentials for an index-url entry.
|
|
363
366
|
"""
|
|
364
367
|
config_parser = ConfigParser(interpolation=None)
|
|
365
368
|
config_path = resolve_pip_config_path()
|
|
366
369
|
if config_path.exists():
|
|
367
370
|
backup_path = config_path.with_name(f"{config_path.name}.old")
|
|
368
371
|
config_parser.read(config_path, encoding="utf-8")
|
|
369
|
-
|
|
370
|
-
|
|
372
|
+
if not config_parser.has_section("global"):
|
|
373
|
+
config_parser.add_section("global")
|
|
374
|
+
index_url = config_parser.get("global", "index-url", fallback="")
|
|
375
|
+
url = urllib.parse.urlparse(index_url)
|
|
376
|
+
hostname = url.hostname
|
|
377
|
+
port = url.port
|
|
378
|
+
netloc = f"{hostname}{':' + str(port) if port else ''}"
|
|
379
|
+
index_url = urllib.parse.urlunparse(
|
|
380
|
+
(url.scheme, netloc, url.path, url.params, url.query, url.fragment),
|
|
381
|
+
)
|
|
382
|
+
if index_url != GALACTIC_INDEX_URL:
|
|
371
383
|
warn_run_init()
|
|
372
384
|
return
|
|
373
|
-
lines =
|
|
374
|
-
|
|
375
|
-
|
|
376
|
-
return
|
|
377
|
-
info("Found extra-index-url entries:")
|
|
385
|
+
lines = get_global_extra_index_lines(config_parser)
|
|
386
|
+
lines.insert(0, index_url)
|
|
387
|
+
info("Found index entries:")
|
|
378
388
|
parsed_urls = [urllib.parse.urlparse(line) for line in lines]
|
|
379
389
|
for index, url in enumerate(parsed_urls, start=1):
|
|
380
390
|
hostname = url.hostname
|
|
@@ -398,14 +408,16 @@ def config_extra_index_url() -> None:
|
|
|
398
408
|
f"{urllib.parse.quote(username)}"
|
|
399
409
|
f":{urllib.parse.quote(password)}"
|
|
400
410
|
f"@{hostname}"
|
|
401
|
-
f"{':' + port if port else ''}"
|
|
411
|
+
f"{':' + str(port) if port else ''}"
|
|
402
412
|
)
|
|
403
413
|
warn_backup(config_parser, backup_path)
|
|
404
414
|
lines[selected_index - 1] = urllib.parse.urlunparse(
|
|
405
415
|
(url.scheme, netloc, url.path, url.params, url.query, url.fragment),
|
|
406
416
|
)
|
|
407
|
-
|
|
408
|
-
|
|
417
|
+
if selected_index == 1:
|
|
418
|
+
config_parser.set("global", "index-url", lines[0])
|
|
419
|
+
else:
|
|
420
|
+
set_global_extra_index_lines(config_parser, lines[1:])
|
|
409
421
|
info_save(config_parser, config_path)
|
|
410
422
|
else:
|
|
411
423
|
warn_run_init()
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
Main `galactic` command line application.
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{galactic-0.4.0.0.post1.dev142 → galactic-0.4.0.0.post1.dev149}/docs/api/apps/cli/main/index.rst
RENAMED
|
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
|
{galactic-0.4.0.0.post1.dev142 → galactic-0.4.0.0.post1.dev149}/package.store/hatch_build.py
RENAMED
|
File without changes
|
|
File without changes
|
{galactic-0.4.0.0.post1.dev142 → galactic-0.4.0.0.post1.dev149}/package.store/pyproject.toml
RENAMED
|
File without changes
|
|
File without changes
|
{galactic-0.4.0.0.post1.dev142 → galactic-0.4.0.0.post1.dev149}/src/galactic/apps/cli/main/py.typed
RENAMED
|
File without changes
|
|
File without changes
|