[Dependabot]: Update mypy requirement from ~=1.13 to ~=1.14 #537
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: Pipeline | ||
on: | ||
push: | ||
workflow_dispatch: | ||
schedule: | ||
# Every Friday at 22:00 - rerun pipeline to check for dependency-based issues | ||
- cron: '0 22 * * 5' | ||
jobs: | ||
Java-Ant-JUnit4: | ||
runs-on: ubuntu-latest | ||
steps: | ||
- name: ⏬ Checkout repository | ||
uses: actions/checkout@v4 | ||
- name: ☕ Set up JDK 11 for x64 | ||
uses: actions/setup-java@v4 | ||
with: | ||
java-version: '11' | ||
distribution: 'temurin' | ||
architecture: x64 | ||
- name: ✅ Run the Ant 'junit' target | ||
run: | | ||
cd examples/Java/JUnit | ||
ant -noinput -buildfile build-github.xml junit | ||
- name: List generated XML reports | ||
run: ls -lAh examples/Java/JUnit/build/*.xml | ||
- name: 📤 Upload JUnit XML files as artifact | ||
uses: actions/upload-artifact@v4 | ||
with: | ||
name: Java-Ant-JUnit4 | ||
path: examples/Java/JUnit/build/*.xml | ||
Cpp-GoogleTest: | ||
runs-on: ubuntu-latest | ||
steps: | ||
- name: ⏬ Checkout repository | ||
uses: actions/checkout@v4 | ||
- name: 🔧 Install dependencies | ||
run: sudo apt-get install -y --no-install-recommends ninja-build | ||
- name: 🛠 Run CMake | ||
run: | | ||
cd examples/Cpp/GoogleTest | ||
cmake -B build -G Ninja | ||
cmake --build build | ||
- name: ✅ Run unit tests (directly) | ||
run: | | ||
cd examples/Cpp/GoogleTest | ||
./build/unit_tests --gtest_output=xml:gtest.xml | ||
- name: ✅ Run unit tests (by ctest) | ||
run: | | ||
cd examples/Cpp/GoogleTest | ||
ctest --test-dir build/ --output-junit ../ctest.xml | ||
- name: List generated XML reports | ||
run: | | ||
ls -lAh examples/Cpp/GoogleTest/*.xml | ||
- name: 📤 Upload JUnit XML files as artifact | ||
uses: actions/upload-artifact@v4 | ||
with: | ||
name: Cpp-GoogleTest | ||
path: examples/Cpp/GoogleTest/*.xml | ||
Python-pytest: | ||
runs-on: ubuntu-latest | ||
steps: | ||
- name: ⏬ Checkout repository | ||
uses: actions/checkout@v4 | ||
- name: 🐍 Setup Python 3.12 | ||
uses: actions/setup-python@v5 | ||
with: | ||
python-version: 3.12 | ||
- name: 🔧 Install pytest and other dependencies | ||
run: python -m pip install --disable-pip-version-check -U pytest | ||
- name: ✅ Run pytest | ||
run: | | ||
cd examples/Python/pytest | ||
python3 -m pytest -rAP --color=yes --junitxml=TestReportSummary.xml . | ||
- name: List generated XML reports | ||
run: ls -lAh examples/Python/pytest/*.xml | ||
- name: 📤 Upload JUnit XML files as artifact | ||
uses: actions/upload-artifact@v4 | ||
with: | ||
name: Python-pytest | ||
path: examples/Python/pytest/*.xml | ||
UnitTestingParams: | ||
uses: pyTooling/Actions/.github/workflows/Parameters.yml@dev | ||
with: | ||
name: pyEDAA.Reports | ||
python_version_list: "3.9 3.10 3.11 3.12 pypy-3.9 pypy-3.10" | ||
disable_list: "mingw64:* ucrt64:*" | ||
AppTestingParams: | ||
uses: pyTooling/Actions/.github/workflows/Parameters.yml@dev | ||
with: | ||
name: pyEDAA.Reports | ||
python_version_list: "" # use latest Python version | ||
system_list: "ubuntu macos macos-arm" | ||
UnitTesting: | ||
uses: pyTooling/Actions/.github/workflows/UnitTesting.yml@dev | ||
needs: | ||
- UnitTestingParams | ||
with: | ||
jobs: ${{ needs.UnitTestingParams.outputs.python_jobs }} | ||
requirements: "-r tests/unit/requirements.txt" | ||
pacboy: "msys/git python-lxml:p" | ||
unittest_xml_artifact: ${{ fromJson(needs.UnitTestingParams.outputs.artifact_names).unittesting_xml }} | ||
coverage_sqlite_artifact: ${{ fromJson(needs.UnitTestingParams.outputs.artifact_names).codecoverage_sqlite }} | ||
StaticTypeCheck: | ||
uses: pyTooling/Actions/.github/workflows/StaticTypeCheck.yml@dev | ||
needs: | ||
- UnitTestingParams | ||
with: | ||
python_version: ${{ needs.UnitTestingParams.outputs.python_version }} | ||
commands: | | ||
touch pyEDAA/__init__.py | ||
mypy --html-report htmlmypy -p pyEDAA.Reports | ||
html_report: 'htmlmypy' | ||
html_artifact: ${{ fromJson(needs.UnitTestingParams.outputs.artifact_names).statictyping_html }} | ||
DocCoverage: | ||
uses: pyTooling/Actions/.github/workflows/CheckDocumentation.yml@dev | ||
needs: | ||
- UnitTestingParams | ||
with: | ||
python_version: ${{ needs.UnitTestingParams.outputs.python_version }} | ||
directory: pyEDAA/Reports | ||
# fail_below: 70 | ||
ConfigParams: | ||
uses: pyTooling/Actions/.github/workflows/ExtractConfiguration.yml@dev | ||
needs: | ||
- DocCoverage | ||
Package: | ||
uses: pyTooling/Actions/.github/workflows/Package.yml@dev | ||
needs: | ||
- UnitTestingParams | ||
- UnitTesting | ||
with: | ||
python_version: ${{ needs.UnitTestingParams.outputs.python_version }} | ||
artifact: ${{ fromJson(needs.UnitTestingParams.outputs.artifact_names).package_all }} | ||
AppTesting: | ||
uses: pyTooling/Actions/.github/workflows/ApplicationTesting.yml@dev | ||
needs: | ||
- AppTestingParams | ||
- UnitTestingParams | ||
- Package | ||
- Java-Ant-JUnit4 | ||
- Cpp-GoogleTest | ||
- Python-pytest | ||
with: | ||
jobs: ${{ needs.AppTestingParams.outputs.python_jobs }} | ||
wheel: ${{ fromJson(needs.UnitTestingParams.outputs.artifact_names).package_all }} | ||
apptest_xml_artifact: ${{ fromJson(needs.UnitTestingParams.outputs.artifact_names).apptesting_xml }} | ||
PublishCoverageResults: | ||
uses: pyTooling/Actions/.github/workflows/PublishCoverageResults.yml@dev | ||
needs: | ||
- UnitTestingParams | ||
- UnitTesting | ||
with: | ||
# coverage_sqlite_artifact: ${{ fromJson(needs.UnitTestingParams.outputs.artifact_names).codecoverage_sqlite }} | ||
# coverage_xml_artifact: ${{ fromJson(needs.UnitTestingParams.outputs.artifact_names).codecoverage_xml }} | ||
coverage_json_artifact: ${{ fromJson(needs.UnitTestingParams.outputs.artifact_names).codecoverage_json }} | ||
coverage_html_artifact: ${{ fromJson(needs.UnitTestingParams.outputs.artifact_names).codecoverage_html }} | ||
secrets: | ||
codacy_token: ${{ secrets.CODACY_PROJECT_TOKEN }} | ||
PublishTestResults: | ||
uses: pyTooling/Actions/.github/workflows/PublishTestResults.yml@dev | ||
needs: | ||
- UnitTestingParams | ||
- UnitTesting | ||
with: | ||
merged_junit_artifact: ${{ fromJson(needs.UnitTestingParams.outputs.artifact_names).unittesting_xml }} | ||
# VerifyDocs: | ||
# uses: pyTooling/Actions/.github/workflows/VerifyDocs.yml@dev | ||
# needs: | ||
# - UnitTestingParams | ||
# with: | ||
# python_version: ${{ needs.UnitTestingParams.outputs.python_version }} | ||
Documentation: | ||
uses: pyTooling/Actions/.github/workflows/SphinxDocumentation.yml@dev | ||
needs: | ||
- UnitTestingParams | ||
- ConfigParams | ||
- PublishTestResults | ||
- PublishCoverageResults | ||
# - VerifyDocs | ||
with: | ||
python_version: ${{ needs.UnitTestingParams.outputs.python_version }} | ||
coverage_report_json_directory: ${{ needs.ConfigParams.outputs.coverage_report_json_directory }} | ||
unittest_xml_artifact: ${{ fromJson(needs.UnitTestingParams.outputs.artifact_names).unittesting_xml }}-ubuntu-native-3.12 | ||
coverage_json_artifact: ${{ fromJson(needs.UnitTestingParams.outputs.artifact_names).codecoverage_json }} | ||
html_artifact: ${{ fromJson(needs.UnitTestingParams.outputs.artifact_names).documentation_html }} | ||
latex_artifact: ${{ fromJson(needs.UnitTestingParams.outputs.artifact_names).documentation_latex }} | ||
IntermediateCleanUp: | ||
uses: pyTooling/Actions/.github/workflows/IntermediateCleanUp.yml@dev | ||
needs: | ||
- UnitTestingParams | ||
- PublishCoverageResults | ||
- PublishTestResults | ||
- Documentation | ||
with: | ||
sqlite_coverage_artifacts_prefix: ${{ fromJson(needs.UnitTestingParams.outputs.artifact_names).codecoverage_sqlite }}- | ||
xml_unittest_artifacts_prefix: ${{ fromJson(needs.UnitTestingParams.outputs.artifact_names).unittesting_xml }}- | ||
# PDFDocumentation: | ||
# uses: pyTooling/Actions/.github/workflows/LaTeXDocumentation.yml@dev | ||
# needs: | ||
# - UnitTestingParams | ||
# - Documentation | ||
# with: | ||
# document: pyEDAA.Reports | ||
# latex_artifact: ${{ fromJson(needs.UnitTestingParams.outputs.artifact_names).documentation_latex }} | ||
# pdf_artifact: ${{ fromJson(needs.UnitTestingParams.outputs.artifact_names).documentation_pdf }} | ||
PublishToGitHubPages: | ||
uses: pyTooling/Actions/.github/workflows/PublishToGitHubPages.yml@dev | ||
needs: | ||
- UnitTestingParams | ||
- Documentation | ||
# - PDFDocumentation | ||
- PublishCoverageResults | ||
- StaticTypeCheck | ||
with: | ||
doc: ${{ fromJson(needs.UnitTestingParams.outputs.artifact_names).documentation_html }} | ||
coverage: ${{ fromJson(needs.UnitTestingParams.outputs.artifact_names).codecoverage_html }} | ||
typing: ${{ fromJson(needs.UnitTestingParams.outputs.artifact_names).statictyping_html }} | ||
ReleasePage: | ||
uses: pyTooling/Actions/.github/workflows/Release.yml@dev | ||
if: startsWith(github.ref, 'refs/tags') | ||
needs: | ||
- Package | ||
- AppTesting | ||
- PublishToGitHubPages | ||
PublishOnPyPI: | ||
uses: pyTooling/Actions/.github/workflows/PublishOnPyPI.yml@dev | ||
if: startsWith(github.ref, 'refs/tags') | ||
needs: | ||
- UnitTestingParams | ||
- ReleasePage | ||
with: | ||
python_version: ${{ needs.UnitTestingParams.outputs.python_version }} | ||
requirements: -r dist/requirements.txt | ||
artifact: ${{ fromJson(needs.UnitTestingParams.outputs.artifact_names).package_all }} | ||
secrets: | ||
PYPI_TOKEN: ${{ secrets.PYPI_TOKEN }} | ||
ArtifactCleanUp: | ||
uses: pyTooling/Actions/.github/workflows/ArtifactCleanUp.yml@dev | ||
needs: | ||
- UnitTestingParams | ||
- UnitTesting | ||
- StaticTypeCheck | ||
- Documentation | ||
# - PDFDocumentation | ||
- PublishTestResults | ||
- PublishCoverageResults | ||
- PublishToGitHubPages | ||
# - PublishOnPyPI | ||
- IntermediateCleanUp | ||
with: | ||
package: ${{ fromJson(needs.UnitTestingParams.outputs.artifact_names).package_all }} | ||
remaining: | | ||
${{ fromJson(needs.UnitTestingParams.outputs.artifact_names).unittesting_html }}-* | ||
${{ fromJson(needs.UnitTestingParams.outputs.artifact_names).codecoverage_xml }}-* | ||
${{ fromJson(needs.UnitTestingParams.outputs.artifact_names).codecoverage_json }}-* | ||
${{ fromJson(needs.UnitTestingParams.outputs.artifact_names).codecoverage_html }}-* | ||
${{ fromJson(needs.UnitTestingParams.outputs.artifact_names).unittesting_xml }} | ||
${{ fromJson(needs.UnitTestingParams.outputs.artifact_names).unittesting_html }} | ||
${{ fromJson(needs.UnitTestingParams.outputs.artifact_names).codecoverage_sqlite }} | ||
${{ fromJson(needs.UnitTestingParams.outputs.artifact_names).codecoverage_xml }} | ||
${{ fromJson(needs.UnitTestingParams.outputs.artifact_names).codecoverage_json }} | ||
${{ fromJson(needs.UnitTestingParams.outputs.artifact_names).codecoverage_html }} | ||
${{ fromJson(needs.UnitTestingParams.outputs.artifact_names).statictyping_html }} | ||
${{ fromJson(needs.UnitTestingParams.outputs.artifact_names).documentation_html }} | ||
${{ fromJson(needs.UnitTestingParams.outputs.artifact_names).documentation_latex }} | ||
${{ fromJson(needs.UnitTestingParams.outputs.artifact_names).apptesting_xml }}-* | ||
# ${{ fromJson(needs.UnitTestingParams.outputs.artifact_names).documentation_pdf }} |