Compare commits

..

46 Commits

Author SHA1 Message Date
Patrick Lehmann
74afc5a42a Merge branch 'main' into r1 2024-08-06 10:33:22 +02:00
Patrick Lehmann
5dc19a5d65 Merge branch 'cherry-picking' 2024-08-06 10:12:18 +02:00
Patrick Lehmann
188feb556b Fixed next expected parameter set. 2024-08-06 10:11:02 +02:00
Patrick Lehmann
d58db55086 Improved actual vs. expected prints. 2024-08-06 10:05:14 +02:00
Patrick Lehmann
ee9a3fbdcd Remove macOS with Python 3.8, 3.9 from expected list. 2024-08-06 09:54:41 +02:00
Patrick Lehmann
8dfc484c42 Merge branch 'cherry-picking' 2024-08-06 09:44:19 +02:00
Patrick Lehmann
960b7089e7 Fixed import problem.
(cherry picked from commit 33b99a3b4e)
2024-08-06 09:44:05 +02:00
Patrick Lehmann
706ef39595 Merge branch 'fix-releaser' 2024-08-06 09:34:17 +02:00
Patrick Lehmann
04881fc4ca fix(releaser): Use '--break-system-packages' only for Ubuntu 24.04.
(cherry picked from commit e444e57112)
2024-08-06 09:33:12 +02:00
Patrick Lehmann
2e5a79e0c2 Merge remote-tracking branch 'github/main' into r1 2024-07-30 07:35:49 +02:00
Patrick Lehmann
0495bfb18c fix(releaser): fix failure to install PyGithub (#81) 2024-07-30 07:32:15 +02:00
Silverlan
7879c05ab7 fix(releaser): fix failure to install PyGithub
This fixes the error message:
× This environment is externally managed
2024-05-28 17:39:29 +02:00
Patrick Lehmann
db99e35dec v1.0.5 2024-04-24 23:07:34 +02:00
Patrick Lehmann
e9d0dc3dba v1.0.5 2024-04-24 23:06:13 +02:00
Patrick Lehmann
f9a74102d9 Avoid warning from geekyeggo/delete-artifact@v5. 2024-04-24 23:03:40 +02:00
Patrick Lehmann
b33e0f2782 Bumped dependencies. 2024-04-24 23:03:08 +02:00
Patrick Lehmann
6cfc6e0f8f Merge branch 'main' into r1 2024-04-24 00:42:05 +02:00
Patrick Lehmann
ae32d20719 Merge branch 'dev' 2024-04-24 00:41:32 +02:00
Patrick Lehmann
c3c6a09a9b Fixed syntax error. 2024-04-24 00:41:14 +02:00
Patrick Lehmann
5adddda1a1 Merge remote-tracking branch 'github/main' into r1 2024-04-24 00:32:50 +02:00
Patrick Lehmann
87fa2b693a v1.0.3 2024-04-24 00:32:05 +02:00
Patrick Lehmann
be27e58d8c Also handle pypy versions. 2024-04-24 00:30:55 +02:00
Patrick Lehmann
6d039bba90 v1.0.2 2024-04-23 23:56:28 +02:00
Patrick Lehmann
0753edca95 Bumped dependency geekyeggo/delete-artifact. 2024-04-23 23:47:40 +02:00
Patrick Lehmann
461931099a Added a minimum Python version field, so unsupported Python versions (e.g. for macOS) can be disabled. 2024-04-23 23:30:26 +02:00
Patrick Lehmann
0802f6d02f Bumped dependencies. 2024-04-23 23:27:42 +02:00
Patrick Lehmann
3b95a36955 Upgrade with-post-step action to run using the Node.js 20.x runtime 2024-03-27 18:17:23 +01:00
Erich Soares Machado
583eed8c84 Upgrade with-post-step action to run using the Node.js 20.x runtime 2024-03-27 10:48:02 -04:00
Patrick Lehmann
0e567aebc4 Added more packages to the list of Python pacboy packages. 2024-03-18 00:19:13 +01:00
Patrick Lehmann
91289c4257 v1.0.1 2024-02-01 00:24:24 +01:00
Patrick Lehmann
527e94b245 v1.0.0 2024-01-19 01:18:27 +01:00
umarcor
f11c335674 v0.4.6 2023-02-26 17:46:26 +01:00
umarcor
5bed864443 v0.4.5 2022-11-08 03:26:27 +01:00
Unai Martinez-Corral
37ec436eb4 v0.4.4 2022-11-08 00:06:47 +00:00
umarcor
6a7a4212c3 v0.4.3 2022-03-02 23:51:16 +01:00
umarcor
f5b6f17d4e v0.4.2 2022-02-22 21:48:31 +01:00
umarcor
883238547a v0.4.1 2022-01-17 01:30:55 +01:00
umarcor
7cd852db58 v0.4.0 2022-01-09 20:58:38 +01:00
umarcor
ce0d30fe3f v0.3.0 2021-12-26 01:45:35 +01:00
umarcor
34dacf7bcf v0.2.3 2021-12-21 01:03:20 +01:00
umarcor
48090e113d v0.2.2 2021-12-20 20:47:43 +01:00
umarcor
e082d77e7a v0.2.1 2021-12-16 07:40:36 +01:00
umarcor
181035b0ba v0.2.0 2021-12-16 07:18:39 +01:00
Patrick Lehmann
643f95bbb6 v0.1.0 2021-12-07 20:50:03 +01:00
umarcor
424b75ca96 v0.0.1 2021-12-07 03:39:33 +01:00
umarcor
f0610331b9 v0.0.0 2021-12-01 00:03:09 +01:00
15 changed files with 76 additions and 38 deletions

View File

@@ -36,23 +36,19 @@ on:
type: string
jobs:
ArtifactCleanUp:
name: 🗑️ Artifact Cleanup
runs-on: ubuntu-latest
steps:
- name: 🗑️ Delete package Artifacts
if: ${{ ! startsWith(github.ref, 'refs/tags') }}
uses: geekyeggo/delete-artifact@v4
uses: geekyeggo/delete-artifact@v5
with:
name: ${{ inputs.package }}
token: ${{ secrets.GITHUB_TOKEN }}
- name: 🗑️ Delete remaining Artifacts
if: ${{ inputs.remaining != '' }}
uses: geekyeggo/delete-artifact@v4
uses: geekyeggo/delete-artifact@v5
with:
name: ${{ inputs.remaining }}
token: ${{ secrets.GITHUB_TOKEN }}

View File

@@ -47,10 +47,10 @@ jobs:
- name: ⏬ Checkout repository
uses: actions/checkout@v4
- name: 🐍 Setup Python 3.11
- name: 🐍 Setup Python ${{ inputs.python_version }}
uses: actions/setup-python@v5
with:
python-version: "3.11"
python-version: ${{ inputs.python_version }}
- name: 🔧 Install wheel,tomli and pip dependencies (native)
run: |

View File

@@ -39,17 +39,15 @@ jobs:
runs-on: ubuntu-latest
steps:
- name: 🗑️ Delete SQLite coverage artifacts from matrix jobs
uses: geekyeggo/delete-artifact@v4
uses: geekyeggo/delete-artifact@v5
if: inputs.sqlite_coverage_artifacts_prefix != ''
continue-on-error: true
with:
name: ${{ inputs.sqlite_coverage_artifacts_prefix }}*
token: ${{ secrets.GITHUB_TOKEN }}
- name: 🗑️ Delete XML coverage artifacts from matrix jobs
uses: geekyeggo/delete-artifact@v4
uses: geekyeggo/delete-artifact@v5
if: inputs.xml_unittest_artifacts_prefix != ''
continue-on-error: true
with:
name: ${{ inputs.xml_unittest_artifacts_prefix }}*
token: ${{ secrets.GITHUB_TOKEN }}

View File

@@ -140,6 +140,7 @@ jobs:
for disable in disabled:
print(f"::warning title=Disabled Python Job::System '{disable}' temporary disabled.")
# see https://raw.githubusercontent.com/actions/python-versions/main/versions-manifest.json
data = {
# Python and PyPy versions supported by "setup-python" action
"python": {
@@ -157,9 +158,9 @@ jobs:
},
# Runner systems (runner images) supported by GitHub Actions
"sys": {
"ubuntu": { "icon": "🐧", "runs-on": "ubuntu-latest", "shell": "bash", "name": "Linux (x86-64)" },
"windows": { "icon": "🪟", "runs-on": "windows-latest", "shell": "pwsh", "name": "Windows (x86-64)" },
"macos": { "icon": "🍎", "runs-on": "macos-latest", "shell": "bash", "name": "MacOS (x86-64)" },
"ubuntu": { "icon": "🐧", "runs-on": "ubuntu-latest", "shell": "bash", "name": "Linux (x86-64)", "minPy": (3, 7)},
"windows": { "icon": "🪟", "runs-on": "windows-latest", "shell": "pwsh", "name": "Windows (x86-64)", "minPy": (3, 7)},
"macos": { "icon": "🍎", "runs-on": "macos-latest", "shell": "bash", "name": "MacOS (x86-64)", "minPy": (3, 10)},
},
# Runtimes provided by MSYS2
"runtime": {
@@ -182,12 +183,17 @@ jobs:
for disable in disabled:
print(f"- {disable}")
def toVersion(value):
major, minor = value.split(".")
return int(major[-1]), int(minor)
combinations = [
(system, version)
for system in systems
if system in data["sys"]
for version in versions
if version in data["python"]
and toVersion(version) >= data["sys"][system]["minPy"]
and f"{system}:{version}" not in excludes
and f"{system}:{version}" not in disabled
] + [
@@ -201,6 +207,7 @@ jobs:
for system, version in includes
if system in data["sys"]
and version in data["python"]
and toVersion(version) >= data["sys"][system]["minPy"]
and f"{system}:{version}" not in disabled
]
print(f"Combinations ({len(combinations)}):")

View File

@@ -78,6 +78,6 @@ jobs:
run: twine upload dist/*.whl
- name: 🗑️ Delete packaging Artifacts
uses: geekyeggo/delete-artifact@v4
uses: geekyeggo/delete-artifact@v5
with:
name: ${{ inputs.artifact }}

View File

@@ -165,11 +165,13 @@ jobs:
"sphinx": "python-markupsafe:p",
"tomli": "python-tomli:p",
"wheel": "python-wheel:p",
"pyEDAA.ProjectModel": "python-ruamel-yaml:p python-ruamel.yaml.clib:p python-lxml:p",
"pyEDAA.Reports": "python-ruamel-yaml:p python-ruamel.yaml.clib:p python-lxml:p",
}
subPackages = {
"pytooling": {
"yaml": "python-ruamel-yaml:p python-ruamel.yaml.clib:p",
}
},
}
regExp = compile(r"(?P<PackageName>[\w_\-\.]+)(?:\[(?P<SubPackages>(?:\w+)(?:\s*,\s*\w+)*)\])?(?:\s*(?P<Comperator>[<>~=]+)\s*)(?P<Version>\d+(?:\.\d+)*)(?:-(?P<VersionExtension>\w+))?")

View File

@@ -84,6 +84,8 @@ jobs:
expectedPythons = ["3.8", "3.9", "3.10", "3.11", "3.12"]
expectedSystems = ["ubuntu", "windows", "macos"]
expectedJobs = [f"{system}:{python}" for system in expectedSystems for python in expectedPythons] + ["mingw64:3.11", "ucrt64:3.11"]
expectedJobs.remove("macos:3.8")
expectedJobs.remove("macos:3.9")
expectedName = "Example"
expectedArtifacts = {
"unittesting_xml": f"{expectedName}-UnitTestReportSummary-XML",
@@ -112,8 +114,12 @@ jobs:
errors += 1
if len(actualPythonJobs) != len(expectedJobs):
print(f"Number of 'python_jobs' does not match: {len(actualPythonJobs)} != {len(expectedJobs)}.")
print("Actual jobs:")
for job in actualPythonJobs:
print(f" {job['system']}:{job['python']}")
print("Expected jobs:")
for job in expectedJobs:
print(f" {job}")
errors += 1
if len(actualArtifactNames) != len(expectedArtifacts):
print(f"Number of 'artifact_names' does not match: {len(actualArtifactNames)} != {len(expectedArtifacts)}.")
@@ -140,6 +146,9 @@ jobs:
expectedPythons = ["3.9", "3.10", "pypy-3.8", "pypy-3.9"]
expectedSystems = ["ubuntu", "windows", "macos"]
expectedJobs = [f"{system}:{python}" for system in expectedSystems for python in expectedPythons] + ["mingw64:3.11", "ucrt64:3.11"]
expectedJobs.remove("macos:3.9")
expectedJobs.remove("macos:pypy-3.8")
expectedJobs.remove("macos:pypy-3.9")
expectedName = "Example"
expectedArtifacts = {
"unittesting_xml": f"{expectedName}-UnitTestReportSummary-XML",
@@ -168,8 +177,12 @@ jobs:
errors += 1
if len(actualPythonJobs) != len(expectedJobs):
print(f"Number of 'python_jobs' does not match: {len(actualPythonJobs)} != {len(expectedJobs)}.")
print("Actual jobs:")
for job in actualPythonJobs:
print(f" {job['system']}:{job['python']}")
print("Expected jobs:")
for job in expectedJobs:
print(f" {job}")
errors += 1
if len(actualArtifactNames) != len(expectedArtifacts):
print(f"Number of 'artifact_names' does not match: {len(actualArtifactNames)} != {len(expectedArtifacts)}.")
@@ -224,8 +237,12 @@ jobs:
errors += 1
if len(actualPythonJobs) != len(expectedJobs):
print(f"Number of 'python_jobs' does not match: {len(actualPythonJobs)} != {len(expectedJobs)}.")
print("Actual jobs:")
for job in actualPythonJobs:
print(f" {job['system']}:{job['python']}")
print("Expected jobs:")
for job in expectedJobs:
print(f" {job}")
errors += 1
if len(actualArtifactNames) != len(expectedArtifacts):
print(f"Number of 'artifact_names' does not match: {len(actualArtifactNames)} != {len(expectedArtifacts)}.")
@@ -280,8 +297,12 @@ jobs:
errors += 1
if len(actualPythonJobs) != len(expectedJobs):
print(f"Number of 'python_jobs' does not match: {len(actualPythonJobs)} != {len(expectedJobs)}.")
print("Actual jobs:")
for job in actualPythonJobs:
print(f" {job['system']}:{job['python']}")
print("Expected jobs:")
for job in expectedJobs:
print(f" {job}")
errors += 1
if len(actualArtifactNames) != len(expectedArtifacts):
print(f"Number of 'artifact_names' does not match: {len(actualArtifactNames)} != {len(expectedArtifacts)}.")
@@ -336,8 +357,12 @@ jobs:
errors += 1
if len(actualPythonJobs) != len(expectedJobs):
print(f"Number of 'python_jobs' does not match: {len(actualPythonJobs)} != {len(expectedJobs)}.")
print("Actual jobs:")
for job in actualPythonJobs:
print(f" {job['system']}:{job['python']}")
print("Expected jobs:")
for job in expectedJobs:
print(f" {job}")
errors += 1
if len(actualArtifactNames) != len(expectedArtifacts):
print(f"Number of 'artifact_names' does not match: {len(actualArtifactNames)} != {len(expectedArtifacts)}.")
@@ -392,8 +417,12 @@ jobs:
errors += 1
if len(actualPythonJobs) != len(expectedJobs):
print(f"Number of 'python_jobs' does not match: {len(actualPythonJobs)} != {len(expectedJobs)}.")
print("Actual jobs:")
for job in actualPythonJobs:
print(f" {job['system']}:{job['python']}")
print("Expected jobs:")
for job in expectedJobs:
print(f" {job}")
errors += 1
if len(actualArtifactNames) != len(expectedArtifacts):
print(f"Number of 'artifact_names' does not match: {len(actualArtifactNames)} != {len(expectedArtifacts)}.")
@@ -448,8 +477,12 @@ jobs:
errors += 1
if len(actualPythonJobs) != len(expectedJobs):
print(f"Number of 'python_jobs' does not match: {len(actualPythonJobs)} != {len(expectedJobs)}.")
print("Actual jobs:")
for job in actualPythonJobs:
print(f" {job['system']}:{job['python']}")
print("Expected jobs:")
for job in expectedJobs:
print(f" {job}")
errors += 1
if len(actualArtifactNames) != len(expectedArtifacts):
print(f"Number of 'artifact_names' does not match: {len(actualArtifactNames)} != {len(expectedArtifacts)}.")

View File

@@ -80,7 +80,7 @@ Documentation Only (Sphinx)
steps:
- name: 🗑️ Delete artifacts
uses: geekyeggo/delete-artifact@v2
uses: geekyeggo/delete-artifact@v5
with:
name: Documentation

View File

@@ -1,10 +1,10 @@
-r ../requirements.txt
pyTooling ~= 6.0
pyTooling ~= 6.1
# Enforce latest version on ReadTheDocs
sphinx >= 7.1, < 8.0
docutils >= 0.18.0, < 0.19.0
sphinx ~= 7.3
docutils ~= 0.18.0
# Sphinx Extenstions
#sphinx.ext.coverage
@@ -16,5 +16,5 @@ sphinxcontrib-mermaid>=0.9.2
autoapi >= 2.0.1
sphinx_fontawesome >= 0.0.6
sphinx-inline-tabs >= 2023.4.21
sphinx_autodoc_typehints >= 1.24.0
sphinx_autodoc_typehints ~= 2.1
# changelog>=0.3.5

View File

@@ -1,8 +1,8 @@
[build-system]
requires = [
"setuptools >= 69.0.0",
"wheel >= 0.40.0",
"pyTooling ~= 6.0"
"setuptools ~= 69.5",
"wheel ~= 0.40.0",
"pyTooling ~= 6.1"
]
build-backend = "setuptools.build_meta"

View File

@@ -45,7 +45,9 @@ runs:
steps:
- shell: bash
run: pip install --disable-pip-version-check PyGithub --progress-bar off
run: |
[ "$(source /etc/os-release && echo $VERSION_ID)" == "24.04" ] && UBUNTU_2404_ARGS='--break-system-packages' || unset UBUNTU_2404_ARGS
pip install --disable-pip-version-check --progress-bar off $UBUNTU_2404_ARGS PyGithub
- shell: bash
run: '''${{ github.action_path }}/../releaser.py'''

View File

@@ -1 +1 @@
pyTooling ~= 6.0
pyTooling ~= 6.1

View File

@@ -28,12 +28,12 @@
# SPDX-License-Identifier: Apache-2.0 #
# ==================================================================================================================== #
#
from unittest import TestCase
from unittest import TestCase
from pytest import mark
from pyTooling.Common import CurrentPlatform
from pytest import mark
from pyTooling.Platform import CurrentPlatform
from pyDummy import Application
from pyDummy import Application
if __name__ == "__main__": # pragma: no cover

View File

@@ -1,13 +1,13 @@
-r ../requirements.txt
# Coverage collection
Coverage >= 7.4
Coverage ~= 7.5
# Test Runner
pytest >= 7.4.0
pytest-cov >= 4.1.0
pytest ~= 8.1
pytest-cov ~= 5.0
# Static Type Checking
mypy >= 1.8.0
typing_extensions >= 4.9.0
lxml >= 5.0
mypy ~= 1.10
typing_extensions ~= 4.11
lxml ~= 5.1

View File

@@ -37,6 +37,6 @@ inputs:
default: POST
runs:
using: 'node16'
using: 'node20'
main: 'main.js'
post: 'main.js'