New Features
* Added support for Python 3.11, 3.12 and 3.13-alpha.X (see 59)
* Added support for PyPy 3.8, 3.9 and 3.10.
* Added support for MSYS2 runtimes: msys, mingw32, mingw64, clang32, clang64 and ucrt64.
(Before it was MinGW64 only.)
* Prepared static type checking to support HTML and XML reports as well as artifacts.
See 41.
* Wrote a full documentation hosted at GitHub Pages: https://pytooling.github.io/Actions/ generated using BuildTheDocs.
* Mostly transferred README and other Markdown contents to ReST.
* Documented all job templates.
* description
* inputs
* secrets
* outputs
* usage examples
* Documented action dependencies.
* Added test pipeline(s) to verify job templates.
* Parameters are verified.
* ArtifactCleanup is verified.
* Split paths to e.g. unittests into 2 parameters for tests directory (working directory) and the subdirectory for unittests.
* New first-level outputs from `Parameters`:
* `python_version` - Python version is now a root element and does need to decode `params`.
* `artifact_names` - The list of artifact names is now a root element and does need to decode `params`. Compared to `params` it contains more artifact names and is prepared to contain more artifacts and artifact variants like XML vs. HTML.
* Providing `ENVIRONMENT_NAME` in unit tests and code coverage collection jobs.
* The unit testing job template extracts Python packages needed to be installed via pacboy automatically by comparing dependencies with a list of pacboy packages.
* Added editorconfig and vscode settings file.
* Added pull-request template.
* Added dependabot configuration file.
Changes
* Bumped Python version in MinGW64 from 3.9 to 3.10
* Bumped default Python version to 3.11
* Bumped used GitHub Actions to latest versions:
* `actions/checkoutv2` → `actions/checkoutv3`
* `actions/setup-pythonv2`→ `actions/setup-pythonv4`
* `actions/download-artifactv2` → `actions/download-artifactv3`
* `actions/upload-artifactv2` → `actions/upload-artifactv3`
* `codecov/codecov-actionv1` → `codecov/codecov-actionv3`
* `codacy/codacy-coverage-reporter-actionmaster` → `codacy/codacy-coverage-reporter-actionv1`
* `geekyeggo/delete-artifactv1` → `geekyeggo/delete-artifactv2`
* `actions/upload-artifactmaster` → `actions/upload-artifactv3`
* Action `geekyeggo/delete-artifactv2` now supports globbing.
* Actions will use Node.js 16 instead of Node.js 12.
* Split `report` and `artifact` input parameters of `StaticTypeCheck` template into a junit and html variant:
* Renamed `report` → `html_report`.
* Renamed `artifact` → `html_artifact`.
* Added `junit_report`.
* Added `junit_artifact`.
* When specifying packages for MSYS2's `pacboy`, only additional packages need to be listet.
* Changed echoing a special `::set-output::` string, now writing to a `$GITHUB_OUTPUT` file.
* Warn if system `msys2` is used and propose to use `mingw64`.
* Emit an error on empty system list.
* Use default python version, if python version list is empty.
* Removed `pip install -U pip` for updating pip to avoid warnings. Using `--disable-pip-version-check` instead. See 50.
* Deprecated output `params` from `Parameters`.
Bug Fixes
* Fixed ReST directives in documentation license file.
* Fixes Node.js 12 warnings.
* Fixed `::set-output::` warnings.
Related Issues and PRs
* Fixes 59
* 68
* 69
* 70
* 71
* 72