Skip to content

Commit 96dd153

Browse files
stefanunreinPaebbelsStefan Unrein
authored
Major updates towards v1.3.0 (#2)
Co-authored-by: Patrick Lehmann <[email protected]> Co-authored-by: Stefan Unrein <[email protected]> Co-authored-by: Patrick Lehmann <[email protected]> Co-authored-by: Asif Iqbal<[email protected]> Co-authored-by: Max Kraft-Kugler<[email protected]> Co-authored-by: Adrian Weiland<[email protected]> Co-authored-by: Jonas Schreiner<[email protected]>
1 parent 4844edf commit 96dd153

File tree

344 files changed

+9748
-10998
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

344 files changed

+9748
-10998
lines changed

.appveyor.yml

Lines changed: 0 additions & 28 deletions
This file was deleted.
Lines changed: 31 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,31 @@
1+
# Problem and/or Feature Description
2+
<!--
3+
Is your feature request related to a problem?
4+
Please describe.
5+
-->
6+
7+
> [!NOTE]
8+
> Add a clear and concise description of what the problem is.
9+
10+
11+
# Suggested Solution
12+
<!--
13+
Describe the solution you'd like.
14+
-->
15+
16+
> [!NOTE]
17+
> Add a clear and concise description of what you want to happen.
18+
19+
# Alternatives
20+
<!--
21+
Describe alternatives you've considered.
22+
-->
23+
24+
> [!TIP]
25+
> Add a clear and concise description of any alternative solutions
26+
> or features you've considered.
27+
28+
# Additional context
29+
30+
> [!TIP]
31+
> Add any other context or screenshots about the feature request here.
Lines changed: 62 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,62 @@
1+
<!--
2+
We do not consider any issue immediately a bug.
3+
In any case, an issue is a deviation from an expected
4+
behavior. Therefore, we write a problem description.
5+
Then the problem is investigated and either it's a bug
6+
or a misunderstanding/misinterpretation.
7+
-->
8+
9+
# Problem
10+
<!--
11+
What diverging behavior was observed? Please describe
12+
the behavior and how to reproduce.
13+
-->
14+
15+
> [!NOTE]
16+
> Write problem description here.
17+
18+
19+
# Root Cause
20+
<!--
21+
What is the root cause? This may need further investigation
22+
before agreeing on a final solution.
23+
-->
24+
25+
> [!TIP]
26+
> Write root cause description here.
27+
>
28+
> Might be filled in after investigation.
29+
30+
31+
# Solution
32+
<!--
33+
Solution to (finally) solve the problem in a new revision.
34+
-->
35+
36+
> [!TIP]
37+
> Write solution description here.
38+
>
39+
> If possible propose a solution.
40+
> Might be filled in after investigation and root cause detection.
41+
42+
43+
# Workaround
44+
<!--
45+
Intermediate solution (workaround), if even possible.
46+
-->
47+
48+
> [!TIP]
49+
> Write workaround description here.
50+
>
51+
> If possible propose a workaround.
52+
> Might be filled in after investigation.
53+
54+
55+
## Actions
56+
<!--
57+
Proposed next steps to either narrow down the problem, develop
58+
a workaround or to sketch a workaround.
59+
-->
60+
61+
1. {-fill out-}
62+
1. {-fill out-}

.github/pull_request_template.md

Lines changed: 30 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,30 @@
1+
# New Features
2+
3+
* tbd
4+
* tbd
5+
6+
# Changes
7+
8+
* tbd
9+
* tbd
10+
11+
# Bug Fixes
12+
13+
* tbd
14+
* tbd
15+
16+
# Documentation
17+
18+
* tbd
19+
* tbd
20+
21+
# Tests
22+
23+
* tbd
24+
* tbd
25+
26+
----------
27+
# Related Issues and Pull-Requests
28+
29+
* tbd
30+
* tbd

.github/workflows/Pipeline.yml

Lines changed: 235 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,235 @@
1+
name: Verify PoC and Generate Documentation
2+
3+
on:
4+
push:
5+
pull_request:
6+
7+
jobs:
8+
Build-OSVVM:
9+
name: Build OSVVM
10+
runs-on: ubuntu-24.04
11+
steps:
12+
- name: ⏬ Checkout repository
13+
uses: actions/checkout@v4
14+
with:
15+
lfs: true
16+
submodules: true
17+
18+
- name: 🔧 Install tcllib
19+
run: sudo apt-get install -y --no-install-recommends tcllib
20+
21+
- name: Setup GHDL ${{ inputs.ghdl_backend }}
22+
uses: ghdl/setup-ghdl@v1
23+
with:
24+
version: latest
25+
backend: llvm
26+
27+
- name: Prepare
28+
run: |
29+
mkdir -p temp/ghdl
30+
31+
- name: 🔨 Pre-compile OSVVM
32+
run: |
33+
cd temp/ghdl
34+
35+
tee run.tcl <<EOF
36+
source ../../lib/OSVVM-Scripts/StartGHDL.tcl
37+
build ../../lib/OsvvmLibraries.pro OsvvmLibraries
38+
EOF
39+
printf "=================\n"
40+
41+
tclsh run.tcl
42+
43+
- name: 📤 Upload 'GHDL-OSVVM-Report' artifacts
44+
uses: pyTooling/upload-artifact@v4
45+
continue-on-error: true
46+
with:
47+
name: GHDL-OSVVM-Report
48+
working-directory: temp/ghdl
49+
path: |
50+
logs
51+
reports
52+
*.html
53+
*.xml
54+
*.yml
55+
retention-days: 1
56+
57+
- name: 📤 Upload 'GHDL-OSVVM' artifacts
58+
uses: pyTooling/upload-artifact@v4
59+
with:
60+
name: GHDL-OSVVM
61+
working-directory: temp/ghdl
62+
path: |
63+
VHDL_LIBS
64+
retention-days: 1
65+
66+
- name: 📤 Upload 'GHDL-OSVVM-Generated' artifacts
67+
uses: pyTooling/upload-artifact@v4
68+
continue-on-error: true
69+
with:
70+
name: GHDL-OSVVM-Generated
71+
# working-directory: temp/ghdl
72+
path: |
73+
lib/osvvm/*_generated.vhd
74+
retention-days: 1
75+
76+
Build-PoC:
77+
name: Build PoC
78+
runs-on: ubuntu-24.04
79+
needs:
80+
- Build-OSVVM
81+
steps:
82+
- name: ⏬ Checkout repository
83+
uses: actions/checkout@v4
84+
with:
85+
lfs: true
86+
submodules: true
87+
88+
- name: 🔧 Install tcllib
89+
run: sudo apt-get install -y --no-install-recommends tcllib
90+
91+
- name: Setup GHDL ${{ inputs.ghdl_backend }}
92+
uses: ghdl/setup-ghdl@v1
93+
with:
94+
version: latest
95+
backend: llvm
96+
97+
- name: Prepare
98+
run: |
99+
mkdir -p temp/ghdl
100+
101+
mv src/common/my_project.vhdl.template tb/common/my_project.vhdl
102+
103+
- name: 📥 Download artifacts 'GHDL-OSVVM' from 'Build-OSVVM' job
104+
uses: pyTooling/download-artifact@v4
105+
with:
106+
name: GHDL-OSVVM
107+
path: temp/ghdl
108+
109+
- name: 📥 Download artifacts 'GHDL-OSVVM-Generated' from 'Build-OSVVM' job
110+
uses: pyTooling/download-artifact@v4
111+
with:
112+
name: GHDL-OSVVM-Generated
113+
# path: temp/ghdl
114+
115+
- name: 🔨 Pre-compile PoC
116+
run: |
117+
ls -lAh lib/osvvm/*_generated.vhd
118+
119+
cd temp/ghdl
120+
121+
tee run.tcl <<EOF
122+
source ../../lib/OSVVM-Scripts/StartGHDL.tcl
123+
124+
namespace eval ::poc {
125+
variable myConfigFile "../tb/common/my_config_GENERIC.vhdl"
126+
variable myProjectFile "../tb/common/my_project.vhdl"
127+
variable vendor "GENERIC"; # GENERIC for vendor-less build; Xilinx, Altera,... for vendor specific build
128+
}
129+
130+
set ::osvvm::AnalyzeErrorStopCount 1
131+
SetExtendedAnalyzeOptions {-frelaxed -Wno-specs}
132+
133+
build ../../src/PoC.pro PoC
134+
EOF
135+
136+
printf "=================\n"
137+
tclsh run.tcl
138+
139+
- name: 📈 Simulate PoC
140+
run: |
141+
cd temp/ghdl
142+
143+
tee run.tcl <<EOF
144+
source ../../lib/OSVVM-Scripts/StartGHDL.tcl
145+
146+
namespace eval ::poc {
147+
variable myConfigFile "../tb/common/my_config_GENERIC.vhdl"
148+
variable myProjectFile "../tb/common/my_project.vhdl"
149+
variable vendor "GENERIC"; # GENERIC for vendor-less build; Xilinx, Altera,... for vendor specific build
150+
}
151+
152+
SetExtendedSimulateOptions {-frelaxed -Wno-specs -Wno-binding}
153+
154+
build ../../tb/RunAllTests.pro
155+
EOF
156+
157+
printf "=================\n"
158+
tclsh run.tcl
159+
160+
- name: 📤 Upload 'GHDL-PoC-Report' artifacts
161+
uses: pyTooling/upload-artifact@v4
162+
continue-on-error: true
163+
with:
164+
name: GHDL-PoC-Report
165+
working-directory: temp/ghdl
166+
path: |
167+
logs
168+
reports
169+
*.html
170+
*.yml
171+
retention-days: 1
172+
173+
- name: 📤 Upload 'GHDL-PoC-Report-XML' artifacts
174+
uses: pyTooling/upload-artifact@v4
175+
continue-on-error: true
176+
with:
177+
name: GHDL-PoC-Report-XML
178+
working-directory: temp/ghdl
179+
path: |
180+
*.xml
181+
retention-days: 1
182+
183+
- name: 📤 Upload 'GHDL-PoC' artifacts
184+
uses: pyTooling/upload-artifact@v4
185+
with:
186+
name: GHDL-PoC
187+
working-directory: temp/ghdl
188+
path: |
189+
VHDL_LIBS
190+
retention-days: 1
191+
192+
Documentation:
193+
uses: pyTooling/Actions/.github/workflows/SphinxDocumentation.yml@r4
194+
needs:
195+
- Build-PoC
196+
with:
197+
requirements: '-r docs/requirements.txt'
198+
doc_directory: 'docs'
199+
unittest_xml_artifact: 'GHDL-PoC-Report-XML'
200+
html_artifact: 'PoC-HTML'
201+
latex_artifact: 'PoC-LaTeX'
202+
203+
PublishToGitHubPages:
204+
uses: pyTooling/Actions/.github/workflows/PublishToGitHubPages.yml@dev
205+
needs:
206+
- Documentation
207+
- Build-PoC
208+
with:
209+
doc: 'PoC-HTML'
210+
# coverage: 'PoC-Coverage-HTML'
211+
212+
Release:
213+
uses: pyTooling/Actions/.github/workflows/NightlyRelease.yml@r4
214+
if: startsWith(github.ref, 'refs/tags/v')
215+
needs:
216+
# - Ubuntu
217+
# - Windows
218+
# - PublishCoverageResults
219+
# - PublishTestResults
220+
- PublishToGitHubPages
221+
secrets: inherit
222+
permissions:
223+
contents: write
224+
actions: write
225+
attestations: write
226+
with:
227+
prerelease: true
228+
replacements: |
229+
poc=1.3.0
230+
nightly_name: "v1.3.0"
231+
nightly_description: |
232+
# The PoC-Library %poc%
233+
inventory-json: "inventory.json"
234+
inventory-version: "1.3.0"
235+
assets: |

0 commit comments

Comments
 (0)