cgse-tools 2024.1.0__tar.gz → 2024.1.5__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.
@@ -0,0 +1,35 @@
1
+ # Python versions and environment
2
+
3
+ __pycache__
4
+ .python-version
5
+ .envrc
6
+
7
+ # Build systems
8
+
9
+ build
10
+ dist
11
+ **/*.egg-info
12
+
13
+ # Apple specific
14
+
15
+ .DS_Store
16
+
17
+ # Unit testing
18
+
19
+ .pytest_cache
20
+ .coverage
21
+ htmlcov
22
+
23
+ # Virtual environments
24
+
25
+ .env
26
+ .venv
27
+ venv
28
+
29
+ # PyCharm IDE
30
+
31
+ .idea
32
+
33
+ # Packaging
34
+
35
+ uv.lock
@@ -0,0 +1,19 @@
1
+ Metadata-Version: 2.4
2
+ Name: cgse-tools
3
+ Version: 2024.1.5
4
+ Summary: Tools for CGSE
5
+ Author: IVS KU Leuven
6
+ Maintainer-email: Rik Huygen <rik.huygen@kuleuven.be>, Sara Regibo <sara.regibo@kuleuven.be>
7
+ License-Expression: MIT
8
+ Keywords: CGSE,Common-EGSE,hardware testing,software framework
9
+ Requires-Python: >=3.9
10
+ Requires-Dist: cgse-core
11
+ Requires-Dist: rich>=13.9.4
12
+ Requires-Dist: textual>=1.0.0
13
+ Provides-Extra: test
14
+ Requires-Dist: pytest; extra == 'test'
15
+ Requires-Dist: pytest-cov; extra == 'test'
16
+ Requires-Dist: pytest-mock; extra == 'test'
17
+ Description-Content-Type: text/markdown
18
+
19
+ # Tools for the CGSE framework
@@ -0,0 +1 @@
1
+ # Tools for the CGSE framework
@@ -0,0 +1,69 @@
1
+ [project]
2
+ name = "cgse-tools"
3
+ version = "2024.1.5"
4
+ description = "Tools for CGSE"
5
+ authors = [
6
+ {name = "IVS KU Leuven"}
7
+ ]
8
+ maintainers = [
9
+ {name = "Rik Huygen", email = "rik.huygen@kuleuven.be"},
10
+ {name = "Sara Regibo", email = "sara.regibo@kuleuven.be"}
11
+ ]
12
+ readme = {"file" = "README.md", "content-type" = "text/markdown"}
13
+ requires-python = ">=3.9"
14
+ license = "MIT"
15
+ keywords = [
16
+ "CGSE",
17
+ "Common-EGSE",
18
+ "hardware testing",
19
+ "software framework"
20
+ ]
21
+ dependencies = [
22
+ "cgse-core",
23
+ "textual>=1.0.0",
24
+ "rich>=13.9.4",
25
+ ]
26
+
27
+ [project.optional-dependencies]
28
+ test = ["pytest", "pytest-mock", "pytest-cov"]
29
+
30
+ [project.scripts]
31
+ cgse-status = "egse.tools.status:main"
32
+
33
+ [project.entry-points."cgse.version"]
34
+ cgse-tools = 'egse.tools'
35
+
36
+ # Examples of how to provide plugins for the `cgse` command
37
+
38
+ [project.entry-points."cgse.plugins"]
39
+ foo = 'scripts.cgse_plugins:foo'
40
+
41
+ [project.entry-points."cgse.service.plugins"]
42
+ xxx = 'scripts.cgse_service_plugins:xxx'
43
+
44
+ [tool.hatch.build.targets.sdist]
45
+ exclude = [
46
+ "/tests",
47
+ "/pytest.ini",
48
+ "/.gitignore",
49
+ ]
50
+
51
+ [tool.hatch.build.targets.wheel]
52
+ packages = ["src/egse"]
53
+
54
+ [tool.ruff]
55
+ line-length = 120
56
+
57
+ [tool.ruff.lint]
58
+ extend-select = ["E501"]
59
+
60
+ [build-system]
61
+ requires = ["hatchling"]
62
+ build-backend = "hatchling.build"
63
+
64
+
65
+ [dependency-groups]
66
+ dev = [
67
+ "pytest>=8.3.4",
68
+ "ruff>=0.9.0",
69
+ ]
@@ -0,0 +1,9 @@
1
+ # An example plugin for a major command on the `cgse` script in `cgse-core`.
2
+ import click
3
+
4
+
5
+ @click.command()
6
+ @click.option("--full", is_flag=True, help="some option")
7
+ def foo(full: bool = False):
8
+ """Example of major command plugin for `cgse`."""
9
+ print(f"execute foo --{full=}")
@@ -0,0 +1,10 @@
1
+ # An example plugin for the `cgse {start,stop,status} service` command from `cgse-core`.
2
+
3
+ import click
4
+
5
+
6
+ @click.command()
7
+ @click.option("--xxx-plus", is_flag=True, help="some option")
8
+ @click.pass_context
9
+ def xxx(ctx, xxx_plus: bool = False):
10
+ print(f"{ctx.obj['action']} XXX services with {xxx_plus = }")
@@ -1,21 +0,0 @@
1
- Metadata-Version: 2.1
2
- Name: cgse-tools
3
- Version: 2024.1.0
4
- Summary: Tools for CGSE
5
- Author: Rik Huygen
6
- Author-email: rik.huygen@kuleuven.be
7
- Requires-Python: >=3.8,<4.0
8
- Classifier: Programming Language :: Python :: 3
9
- Classifier: Programming Language :: Python :: 3.8
10
- Classifier: Programming Language :: Python :: 3.9
11
- Classifier: Programming Language :: Python :: 3.10
12
- Classifier: Programming Language :: Python :: 3.11
13
- Classifier: Programming Language :: Python :: 3.12
14
- Classifier: Programming Language :: Python :: 3.13
15
- Requires-Dist: cgse-core (==2023.1.0)
16
- Requires-Dist: rich (>=13.6.0,<14.0.0)
17
- Requires-Dist: textual
18
- Description-Content-Type: text/markdown
19
-
20
- # Tools for the Common-EGSE
21
-
@@ -1 +0,0 @@
1
- # Tools for the Common-EGSE
@@ -1,46 +0,0 @@
1
- [tool.poetry]
2
- name = "cgse-tools"
3
- version = "2024.1.0"
4
- description = "Tools for CGSE"
5
- authors = [
6
- "Rik Huygen <rik.huygen@kuleuven.be>",
7
- "Sara Regibo <sara.regibo@kuleuven.be>",
8
- ]
9
- readme = "README.md"
10
- packages = [
11
- { include = "egse", from = "src" },
12
- ]
13
-
14
- [tool.poetry.dependencies]
15
- python = "^3.8"
16
- rich = "^13.6.0"
17
- textual = "*"
18
-
19
- # The following two lines should be used mutually exclusive. Use the development install of the package when you need
20
- # the latest source from the repo, when publishing however, the explicit version shall always be used.
21
- # cgse-core = {path = "../../../libs/cgse-core", develop = true} # this shall be replaced when building
22
- cgse-core = "2023.1.0"
23
-
24
- [tool.poetry.group.test.dependencies]
25
- pytest = "^7.4.2"
26
- pytest-mock = "^3.11.1"
27
- pytest-cov = "^4.1.0"
28
-
29
- [tool.poetry.group.dev.dependencies]
30
- pipdeptree = "^2.13.0"
31
- tomlkit = "^0.12.3"
32
-
33
- [tool.poetry.plugins."cgse.version"]
34
- cgse-tools = 'egse'
35
-
36
- # Examples of how to provide plugins for the `cgse` command
37
-
38
- [tool.poetry.plugins."cgse.plugins"]
39
- foo = 'scripts.cgse_plugins:foo'
40
-
41
- [tool.poetry.plugins."cgse.service.plugins"]
42
- xxx = 'scripts.cgse_service_plugins:xxx'
43
-
44
- [build-system]
45
- requires = ["poetry-core"]
46
- build-backend = "poetry.core.masonry.api"