Skip to content

Commit faad2d9

Browse files
authored
v0.3.0
2 parents 54e937d + 3fc04ea commit faad2d9

File tree

34 files changed

+822
-216
lines changed

34 files changed

+822
-216
lines changed

.github/dependabot.yml

Lines changed: 26 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -1,15 +1,29 @@
11
version: 2
22
updates:
3-
- package-ecosystem: pip
4-
directory: "/"
5-
target-branch: dev
6-
commit-message:
7-
prefix: "[Dependabot]"
8-
labels:
3+
# Maintain Python packages
4+
- package-ecosystem: "pip"
5+
directory: "/"
6+
target-branch: dev
7+
commit-message:
8+
prefix: "[Dependabot]"
9+
labels:
910
- Dependencies
10-
assignees:
11-
- Paebbels
12-
reviewers:
13-
- Paebbels
14-
schedule:
15-
interval: daily
11+
reviewers:
12+
- Paebbels
13+
- Umarcor
14+
schedule:
15+
interval: "daily" # Checks on Monday trough Friday.
16+
17+
# Maintain GitHub Action runners
18+
- package-ecosystem: "github-actions"
19+
directory: "/"
20+
target-branch: dev
21+
commit-message:
22+
prefix: "[Dependabot]"
23+
labels:
24+
- Dependencies
25+
reviewers:
26+
- Paebbels
27+
- Umarcor
28+
schedule:
29+
interval: "weekly"

.github/pull_request_template.md

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,16 @@
11
# New Features
2+
23
* tbd
34

45
# Changes
6+
57
* tbd
68

79
# Bug Fixes
10+
11+
* tbd
12+
13+
----------
14+
# Related PRs:
15+
816
* tbd

.github/workflows/Pipeline.yml

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@ jobs:
1212
uses: pyTooling/Actions/.github/workflows/Parameters.yml@r0
1313
with:
1414
name: pyEDAA.ToolSetup
15-
system_list: 'ubuntu windows macos'
15+
system_list: 'ubuntu windows macos' # disabled: "msys2"
1616

1717
UnitTesting:
1818
uses: pyTooling/Actions/.github/workflows/UnitTesting.yml@r0
@@ -21,6 +21,13 @@ jobs:
2121
with:
2222
jobs: ${{ needs.Params.outputs.python_jobs }}
2323
artifact: ${{ fromJson(needs.Params.outputs.params).artifacts.unittesting }}
24+
pacboy: >-
25+
python-pip:p
26+
python-wheel:p
27+
python-coverage:p
28+
python-lxml:p
29+
python-ruamel-yaml:p
30+
python-ruamel.yaml.clib:p
2431
2532
Coverage:
2633
uses: pyTooling/Actions/.github/workflows/CoverageCollection.yml@r0

.vscode/settings.json

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
{
2+
"files.trimTrailingWhitespace": false,
3+
}

doc/Dependency.rst

Lines changed: 35 additions & 18 deletions
Large diffs are not rendered by default.

doc/_templates/autoapi/module.rst

Lines changed: 108 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,108 @@
1+
.. # Template modified by Patrick Lehmann
2+
* removed automodule on top, because private members are activated for autodoc (no doubled documentation).
3+
* Made sections like 'submodules' bold text, but no headlines to reduce number of ToC levels.
4+
5+
=={{ '=' * node.name|length }}==
6+
``{{ node.name }}``
7+
=={{ '=' * node.name|length }}==
8+
9+
{##}
10+
{%- block modules -%}
11+
{%- if subnodes %}
12+
13+
**Submodules**
14+
15+
16+
.. toctree::
17+
{% for item in subnodes %}
18+
{{ item.name }}
19+
{%- endfor %}
20+
{##}
21+
{%- endif -%}
22+
{%- endblock -%}
23+
{##}
24+
.. currentmodule:: {{ node.name }}
25+
{##}
26+
{%- block functions -%}
27+
{%- if node.functions %}
28+
29+
**Functions**
30+
31+
{% for item, obj in node.functions.items() -%}
32+
- :py:func:`{{ item }}`:
33+
{{ obj|summary }}
34+
35+
{% endfor -%}
36+
37+
{% for item in node.functions %}
38+
.. autofunction:: {{ item }}
39+
{##}
40+
{%- endfor -%}
41+
{%- endif -%}
42+
{%- endblock -%}
43+
44+
{%- block classes -%}
45+
{%- if node.classes %}
46+
47+
**Classes**
48+
49+
{% for item, obj in node.classes.items() -%}
50+
- :py:class:`{{ item }}`:
51+
{{ obj|summary }}
52+
53+
{% endfor -%}
54+
55+
{% for item in node.classes %}
56+
.. autoclass:: {{ item }}
57+
:members:
58+
59+
.. rubric:: Inheritance
60+
.. inheritance-diagram:: {{ item }}
61+
:parts: 1
62+
{##}
63+
{%- endfor -%}
64+
{%- endif -%}
65+
{%- endblock -%}
66+
67+
{%- block exceptions -%}
68+
{%- if node.exceptions %}
69+
70+
**Exceptions**
71+
72+
{% for item, obj in node.exceptions.items() -%}
73+
- :py:exc:`{{ item }}`:
74+
{{ obj|summary }}
75+
76+
{% endfor -%}
77+
78+
{% for item in node.exceptions %}
79+
.. autoexception:: {{ item }}
80+
81+
.. rubric:: Inheritance
82+
.. inheritance-diagram:: {{ item }}
83+
:parts: 1
84+
{##}
85+
{%- endfor -%}
86+
{%- endif -%}
87+
{%- endblock -%}
88+
89+
{%- block variables -%}
90+
{%- if node.variables %}
91+
92+
**Variables**
93+
94+
{% for item, obj in node.variables.items() -%}
95+
- :py:data:`{{ item }}`
96+
{% endfor -%}
97+
98+
{% for item, obj in node.variables.items() %}
99+
.. autodata:: {{ item }}
100+
:annotation:
101+
102+
.. code-block:: text
103+
104+
{{ obj|pprint|indent(6) }}
105+
{##}
106+
{%- endfor -%}
107+
{%- endif -%}
108+
{%- endblock -%}

doc/conf.py

Lines changed: 59 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,6 @@
1414
sys_path.insert(0, abspath('.'))
1515
sys_path.insert(0, abspath('..'))
1616
sys_path.insert(0, abspath('../pyEDAA/ToolSetup'))
17-
#sys_path.insert(0, abspath('_extensions'))
1817

1918

2019
# ==============================================================================
@@ -65,7 +64,7 @@
6564
with open(prologPath, "r") as prologFile:
6665
rst_prolog = prologFile.read()
6766
except Exception as ex:
68-
print("[ERROR:] While reading '{0!s}'.".format(prologPath))
67+
print(f"[ERROR:] While reading '{prologPath}'.")
6968
print(ex)
7069
rst_prolog = ""
7170

@@ -99,7 +98,7 @@
9998
html_favicon = str(Path(html_static_path[0]) / "favicon.svg")
10099

101100
# Output file base name for HTML help builder.
102-
htmlhelp_basename = 'pyEDAACLIToolDoc'
101+
htmlhelp_basename = 'pyEDAAToolSetupDoc'
103102

104103
# If not None, a 'Last updated on:' timestamp is inserted at every page
105104
# bottom, using the given strftime format.
@@ -146,8 +145,8 @@
146145
# author, documentclass [howto, manual, or own class]).
147146
latex_documents = [
148147
( master_doc,
149-
'pyEDAA.CLITool.tex',
150-
'The pyEDAA.CLITool Documentation',
148+
'pyEDAA.ToolSetup.tex',
149+
'The pyEDAA.ToolSetup Documentation',
151150
'Patrick Lehmann',
152151
'manual'
153152
),
@@ -158,8 +157,22 @@
158157
# Extensions
159158
# ==============================================================================
160159
extensions = [
160+
# Standard Sphinx extensions
161+
"sphinx.ext.autodoc",
161162
'sphinx.ext.extlinks',
162163
'sphinx.ext.intersphinx',
164+
'sphinx.ext.inheritance_diagram',
165+
'sphinx.ext.todo',
166+
'sphinx.ext.graphviz',
167+
'sphinx.ext.mathjax',
168+
'sphinx.ext.ifconfig',
169+
'sphinx.ext.viewcode',
170+
# SphinxContrib extensions
171+
'sphinxcontrib.mermaid',
172+
# Other extensions
173+
'sphinx_fontawesome',
174+
'sphinx_autodoc_typehints',
175+
'autoapi.sphinx',
163176
]
164177

165178

@@ -171,11 +184,49 @@
171184
}
172185

173186

187+
# ==============================================================================
188+
# Sphinx.Ext.AutoDoc
189+
# ==============================================================================
190+
# see: https://www.sphinx-doc.org/en/master/usage/extensions/autodoc.html#configuration
191+
autodoc_default_options = {
192+
"private-members": True,
193+
"special-members": True,
194+
"inherited-members": True,
195+
"exclude-members": "__weakref__"
196+
}
197+
#autodoc_class_signature = "separated"
198+
autodoc_member_order = "bysource" # alphabetical, groupwise, bysource
199+
autodoc_typehints = "both"
200+
#autoclass_content = "both"
201+
202+
174203
# ==============================================================================
175204
# Sphinx.Ext.ExtLinks
176205
# ==============================================================================
177206
extlinks = {
178-
'ghissue': ('https://GitHub.com/edaa-org/pyEDAA.CLITool/issues/%s', 'issue #'),
179-
'ghpull': ('https://GitHub.com/edaa-org/pyEDAA.CLITool/pull/%s', 'pull request #'),
180-
'ghsrc': ('https://GitHub.com/edaa-org/pyEDAA.CLITool/blob/main/%s', ''),
207+
"ghissue": ("https://GitHub.com/edaa-org/pyEDAA.ToolSetup/issues/%s", "issue #"),
208+
"ghpull": ("https://GitHub.com/edaa-org/pyEDAA.ToolSetup/pull/%s", "pull request #"),
209+
"ghsrc": ("https://GitHub.com/edaa-org/pyEDAA.ToolSetup/blob/main/%s", ""),
210+
}
211+
212+
213+
# ==============================================================================
214+
# Sphinx.Ext.Graphviz
215+
# ==============================================================================
216+
graphviz_output_format = "svg"
217+
218+
219+
# ==============================================================================
220+
# Sphinx.Ext.ToDo
221+
# ==============================================================================
222+
# If true, `todo` and `todoList` produce output, else they produce nothing.
223+
todo_include_todos = True
224+
todo_link_only = True
225+
226+
227+
# ==============================================================================
228+
# AutoAPI.Sphinx
229+
# ==============================================================================
230+
autoapi_modules = {
231+
'pyEDAA.ToolSetup': {'output': "pyEDAA.ToolSetup", "override": True}
181232
}

doc/coverage/index.rst

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,4 @@
1+
Coverage Report
2+
###############
3+
4+
*Placeholder for the Coverage report generated with* ``pytest`` *and* ``coverage``.

doc/index.rst

Lines changed: 8 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -61,13 +61,19 @@ Features
6161
********
6262

6363
* Find tool installations:
64+
6465
* at default installation locations (based on operating system).
66+
6567
* in ``PATH``.
68+
6669
* via environment variables.
70+
6771
* Support multiple versions of the same tool.
6872
E.g. Vivado 2018.3, 2021.2
73+
6974
* Support multiple variants of the same tool.
7075
E.g. ModelSim Altera Edition vs. ModelSim SE vs. QuestaSim
76+
7177
* Configuring a default version/variant per tool.
7278

7379

@@ -110,7 +116,6 @@ License
110116
Installation
111117
Dependency
112118

113-
114119
.. raw:: latex
115120

116121
\part{Main Documentation}
@@ -122,7 +127,6 @@ License
122127
DataModel
123128
YAML
124129

125-
126130
.. raw:: latex
127131

128132
\part{References}
@@ -141,8 +145,8 @@ License
141145
:caption: Appendix
142146
:hidden:
143147

144-
Coverage Report ➚ <https://edaa-org.GitHub.io/pyEDAA.ToolSetup/coverage/>
145-
Static Type Check Report ➚ <https://edaa-org.GitHub.io/pyEDAA.ToolSetup/typing/>
148+
Coverage Report ➚ <coverage/index>
149+
Static Type Check Report ➚ <typing/index>
146150
License
147151
Doc-License
148152
Glossary

doc/pyEDAA.ToolSetup/index.rst

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,8 @@
1+
Python Class Reference
2+
######################
3+
4+
Reference of all packages and modules:
5+
6+
.. toctree::
7+
8+
pyEDAA.ToolSetup

0 commit comments

Comments
 (0)