Releases: pyTooling/Actions
Releases · pyTooling/Actions
tip
Converted boolean parameters to string.
v4.3.0
Release created on: 18.04.2025 - 08:47:38
New Features
CompletePipeline.yml
:- Added new
codecov
parameter to enable publishing coverage and unittest reports to Codecov. - Added new
codacy
parameter to enable publishing coverage reports to Codacy. - Added new
dorny
parameter to enable publishing unittest reports via Dorny Test-Reporter. - Added new
cleanup
parameter to skip cleanup jobs, thus temporary artifacts aren't removed and can be investigated after pipeline run.
- Added new
ExtractConfiguration.yml
:- Provide more output parameters for merged unittest reports in XML format:
unittest_merged_report_xml_directory
unittest_merged_report_xml_filename
unittest_merged_report_xml
- Provide more output parameters for merged unittest reports in XML format:
PublishCoverageResults.yml
- Added option
codecov
to activate publishing to Codecov. - Added option
codacy
to activate publishing to Codacy.
- Added option
PublishTestResults.yml
- Added option
testsuite-summary-name
to set the TestsuiteSummary name. - Added option
codecov
to activate publishing to Codecov. - Added option
dorny
to activate publishing via Dorny Test-Reporter.
(This will replacepublish
in future versions.)
- Added option
Changes
- Bumped Python dependencies.
- Updated
dorny/test-reporter
fromv1
tov2
- Changed default Python version in all jobs to 3.13.
CompletePipeline.yml
- Set
testsuite-summary-name
for jobPublishTestResults
topackage_name
from input parameters.
- Set
PublishCoverageResults.yml
:- Removed extraction of configuration variables and use variables provided by the
ExtractConfiguration.yml
job via input parameters.
(Reduced code duplication.) - New parameters:
coverage_report_xml_directory
andcoverage_report_xml_filename
coverage_report_json_directory
andcoverage_report_json_filename
coverage_report_html_directory
- Removed extraction of configuration variables and use variables provided by the
Bug Fixes
CompletePipeline.yml
- Forward secrets for Codacy and Codecov.
- Job
PublishCoverageResults
:- Provide parameters
coverage_report_json_directory
,coverage_report_json_filename
andcoverage_report_html_directory
to the job.
- Provide parameters
PublishTestResults
:- Provide parameters
merged_junit_filename
to the job.
- Provide parameters
Documentation
- Parameter
unittest_xml_artifact
: Use merged unittest results artifact fromPublishTestResults
.
(Before this change, one specific unittest variant - Ubuntu Python 3.12 - was used.)
- Parameter
PublishCoverageResults.yml
:- Run coverage report to XML conversion, also if no artifact is activated, but codacy or codecov is active.
Documentation
None
Unit Tests
- Adjusted code due to parameter changes.
v4.2.2
v4.2.1
Release created on: 02.03.2025 - 15:07:04
Bug Fixes
- Allow comments in the list of assets.
v4.2.0
New Features
- Prepared for
pypy-3.11
.
See https://github.com/actions/runner-images/blob/main/images/ubuntu/Ubuntu2404-Readme.md#pypy - Count errors.
Changes
- Bumped dependencies.
- Improved indentation of error messages.
- Improved Bash coding style.
Bug Fixes
- Fixed
done < <( ... )
syntax. - Fail step and job, if previous errors were encountered.
Documentation
- Fixed shield URLs.
v4.1.0
Changes
- Bumped dependencies.
- Improved YAML coding style.
- Added timezone to nightly release text footer line.
- Collect output from
zip
in a collapsible section. - Reduced restrictions on finding XML files for JUnit test report summary files.
Bug Fixes
- Removed artifact directory names from asset filenames in inventory JSON.
v4.0.1
v4.0.0
New Features
ExtractConfiguration
provides new output parameters:unittest_report_xml_directory
unittest_report_xml_filename
unittest_report_xml
coverage_report_xml_filename
coverage_report_json_filename
- First 3 parameters are read from:
Latter 2 parameters are read from:
[tool.pytest] junit_xml=
[tool.coverage.xml] output= [tool.coverage.json] output=
UnitTesting
has new parameters to specify the pytest JUnit file:unittest_report_xml_directory
unittest_report_xml_filename
UnitTesting
has new parameters ....................................coverage_report_html_directory
NightlyRelease
an now produce aninventory.json
file.- New parameter
inventory-json
to specify the inventory filename. - New parameter
inventory-categories
to specify the actual version shipped in the release. E.g. in case of a nightly release to specify it as5.0.0-dev
. - New parameter
inventory-categories
to specify the ordner and number of applied categories per file.
{ "version": 1.0, "timestamp": "2025-01-14T12-20-51+00:00", "meta": { "tag": "nightly", "version": "4.2.5", "git-hash": "699f86b451cf083927197327809b5c67550692dd", "repository-url": "https://github.com/pyTooling/Actions", "release-url": "https://github.com/pyTooling/Actions/releases/download/nightly", "categories": ["os", "version"] }, "files": { "ubuntu": {"24.04": {"file": "application", "title": "Application - myTool - 4.2.0" } }, "macos": {"14": {"file": "application", "title": "Application - myTool - 4.2.0" } }, "windows": {"2022": {"file": "application.exe", "title": "Application - myTool - 4.2.0" } } } }
-
Asset specifications now accept 3 and 4
:
-separated fields:- 3 part format:
<artifact-name>:<file-name>:<asset-title>
- 4 part format:
<artifact-name>:<file-name>:<inventory-categories>:<asset-title>
<inventory-categories>
is a,
-separated list of categories used to insert assets into the inventory JSON file. Categories are processed left-to-right. - 3 part format:
- New parameter
Changes
- Bumped dependencies.
- Bumped MSYS2 Python version from 3.11 to 3.12.
(Python 3.13 isn't yet supported by MSYS2 environments.) - Exchanged
echo
byprintf
in Bash scripting. - Reworked LaTeX/MikTeX job:
- Changed used action from
xu-cheng/latex-action@master
toaddnab/docker-run-action@v3
which starts thepytooling/miktex:sphinx
Docker image. - Build PDF documents with
latexmk
usingxelatex
.
- Changed used action from
- Implemented workarounds in the
SphinxDocumentation
template to workaround 2 bugs in Sphinx:- Workaround I: Name downloaded images according to their MIME type.
See also: sphinx-doc/sphinx#13190 - Workaround II: Escape
%
-sign in filenames.
See also: sphinx-doc/sphinx#13189
- Workaround I: Name downloaded images according to their MIME type.
- Removed
Extract configurations from pyproject.toml
step fromUnitTesting
workflow template. The needed information are provided by the separateExtractConfiguration
workflow template. While it needs some parameter passing, it reduces duplicated code for parsing the TOML configuration.
Bug Fixes
- Changed dependency from
interrogate
tointerrogate[png]
- Enhanced artifact pattern/filter, when downloading code coverage results in
PublishCoverageResults.yml
:
*-CodeCoverage-*
→*-CodeCoverage-SQLite-*
- Enhanced artifact pattern/filter, when downloading uni testing results in
PublishTestResults.yml
:
*-UnitTestReportSummary-*
→*-UnitTestReportSummary-XML-*
Documentation
- Updated README.
- Fixed shields.
Unit Tests
- Updated test pipelines.
CompletePipeline
uses latest templates and extracted parameters.- Removed
mingw32
from pipeline tests due to missing dependencies liketomli
in MSYS2/MinGW32.