Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
29 commits
Select commit Hold shift + click to select a range
26c218b
Fixed Python module index.
Paebbels May 22, 2022
d04d77b
Bumped dependencies.
Paebbels May 22, 2022
71e3230
Bumped dependencies.
Paebbels Nov 6, 2022
2bfcce2
Updated pipeline.
Paebbels Nov 6, 2022
8882c17
Bumped dependencies.
Paebbels Dec 18, 2022
e3289a1
Code cleanup.
Paebbels Dec 18, 2022
e7d1467
Enabled Windows + Python 3.11 again.
Paebbels Dec 18, 2022
42a38c5
Bumped dependencies.
Paebbels Jul 5, 2023
d8d8336
Bumped dependencies.
Paebbels Jul 15, 2023
0799d79
Updated pyproject file.
Paebbels Jul 29, 2023
503dd32
Updated coding style.
Paebbels Jul 30, 2023
61bd093
Bumped dependencies.
Paebbels Aug 13, 2023
c34795e
General updates.
Paebbels Nov 11, 2024
9648a2e
General updates.
Paebbels Feb 21, 2025
b931979
Run pipeline using new all-in-one template.
Paebbels Feb 21, 2025
5f100e0
Bumped dependencies
Paebbels May 4, 2025
f682494
Updates for latest pyTooling.
Paebbels May 4, 2025
1438f17
Fixed using print -> using self.Write***() methods.
Paebbels May 18, 2025
7517963
Updated testcases but deactivated some checks.
Paebbels May 18, 2025
de8e0cb
Bumped dependencies
Paebbels Oct 28, 2025
5984770
Dropped Python 3.9 and 3.10 support.
Paebbels Oct 29, 2025
ac06872
Bumped dependencies
Paebbels Nov 15, 2025
1086a0f
Updated pyproject configuration due to pytest v9.0.
Paebbels Nov 15, 2025
0c6da9b
Bumped copyright information.
Paebbels Jan 12, 2026
60e5ec8
Added missing type hints.
Paebbels Jan 12, 2026
9fc9d67
Bumped dependencies.
Paebbels Jan 12, 2026
1871fa3
Updated how Sphinx is started.
Paebbels Jan 12, 2026
323ae9b
Restructured requirements.txt files due to pyTooling/Actions update t…
Paebbels Jan 12, 2026
2bc0503
Bumped documentation dependencies.
Paebbels Jan 28, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
8 changes: 0 additions & 8 deletions .btd.yml

This file was deleted.

3 changes: 3 additions & 0 deletions .github/CODEOWNERS
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
* @Paebbels

/.github/ @Paebbels
6 changes: 0 additions & 6 deletions .github/dependabot.yml
Original file line number Diff line number Diff line change
Expand Up @@ -8,9 +8,6 @@ updates:
prefix: "[Dependabot]"
labels:
- Dependencies
reviewers:
- Paebbels
- Umarcor
schedule:
interval: "daily" # Checks on Monday trough Friday.

Expand All @@ -22,8 +19,5 @@ updates:
prefix: "[Dependabot]"
labels:
- Dependencies
reviewers:
- Paebbels
- Umarcor
schedule:
interval: "weekly"
18 changes: 16 additions & 2 deletions .github/pull_request_template.md
Original file line number Diff line number Diff line change
@@ -1,16 +1,30 @@
# New Features


* tbd
* tbd

# Changes

* tbd
* tbd

# Bug Fixes

* tbd
* tbd

# Documentation

* tbd
* tbd

# Unit Tests

* tbd
* tbd

----------
# Related PRs:
# Related Issues and Pull-Requests

* tbd
* tbd
152 changes: 22 additions & 130 deletions .github/workflows/Pipeline.yml
Original file line number Diff line number Diff line change
Expand Up @@ -4,136 +4,28 @@ on:
push:
workflow_dispatch:
schedule:
- cron: '0 0 * * 5'
# Every Friday at 22:00 - rerun pipeline to check for dependency-based issues
- cron: '0 22 * * 5'

jobs:

Params:
uses: pyTooling/Actions/.github/workflows/Parameters.yml@r0
with:
name: pyEDAA.UCIS

UnitTesting:
uses: pyTooling/Actions/.github/workflows/UnitTesting.yml@r0
needs:
- Params
with:
jobs: ${{ needs.Params.outputs.python_jobs }}
artifact: ${{ fromJson(needs.Params.outputs.params).artifacts.unittesting }}

Coverage:
uses: pyTooling/Actions/.github/workflows/CoverageCollection.yml@r0
needs:
- Params
with:
python_version: ${{ fromJson(needs.Params.outputs.params).python_version }}
artifact: ${{ fromJson(needs.Params.outputs.params).artifacts.coverage }}
secrets:
codacy_token: ${{ secrets.CODACY_PROJECT_TOKEN }}

StaticTypeCheck:
uses: pyTooling/Actions/.github/workflows/StaticTypeCheck.yml@r0
needs:
- Params
with:
python_version: ${{ fromJson(needs.Params.outputs.params).python_version }}
requirements: '-r tests/requirements.txt'
commands: |
cd pyEDAA
mypy --html-report ../htmlmypy -p UCIS
report: 'htmlmypy'
artifact: ${{ fromJson(needs.Params.outputs.params).artifacts.typing }}

PublishTestResults:
uses: pyTooling/Actions/.github/workflows/PublishTestResults.yml@r0
needs:
- UnitTesting
permissions:
actions: write
contents: write
pages: write
id-token: write

Package:
uses: pyTooling/Actions/.github/workflows/Package.yml@r0
needs:
- Params
- Coverage
with:
python_version: ${{ fromJson(needs.Params.outputs.params).python_version }}
artifact: ${{ fromJson(needs.Params.outputs.params).artifacts.package }}

Release:
uses: pyTooling/Actions/.github/workflows/Release.yml@r0
if: startsWith(github.ref, 'refs/tags')
needs:
- UnitTesting
- Coverage
- StaticTypeCheck
- Package

PublishOnPyPI:
uses: pyTooling/Actions/.github/workflows/PublishOnPyPI.yml@r0
if: startsWith(github.ref, 'refs/tags')
needs:
- Params
- Release
- Package
with:
python_version: ${{ fromJson(needs.Params.outputs.params).python_version }}
requirements: -r dist/requirements.txt
artifact: ${{ fromJson(needs.Params.outputs.params).artifacts.package }}
jobs:
Pipeline:
uses: pyTooling/Actions/.github/workflows/CompletePipeline.yml@r7
with:
package_namespace: 'pyEDAA'
package_name: 'UCIS'
unittest_python_version_list: '3.11 3.12 3.13 3.14 pypy-3.11'
bandit: 'true'
pylint: 'true'
codecov: 'true'
codacy: 'true'
dorny: 'true'
secrets:
PYPI_TOKEN: ${{ secrets.PYPI_TOKEN }}

# VerifyDocs:
# uses: pyTooling/Actions/.github/workflows/VerifyDocs.yml@r0
# needs:
# - Params
# with:
# python_version: ${{ fromJson(needs.Params.outputs.params).python_version }}

BuildTheDocs:
uses: pyTooling/Actions/.github/workflows/BuildTheDocs.yml@r0
needs:
- Params
# - VerifyDocs
with:
artifact: ${{ fromJson(needs.Params.outputs.params).artifacts.doc }}

PublishToGitHubPages:
uses: pyTooling/Actions/.github/workflows/PublishToGitHubPages.yml@r0
needs:
- Params
- BuildTheDocs
- Coverage
- StaticTypeCheck
with:
doc: ${{ fromJson(needs.Params.outputs.params).artifacts.doc }}
coverage: ${{ fromJson(needs.Params.outputs.params).artifacts.coverage }}
typing: ${{ fromJson(needs.Params.outputs.params).artifacts.typing }}

ArtifactCleanUp:
uses: pyTooling/Actions/.github/workflows/ArtifactCleanUp.yml@r0
needs:
- Params
- UnitTesting
- Coverage
- StaticTypeCheck
- BuildTheDocs
- PublishToGitHubPages
- PublishTestResults
with:
package: ${{ fromJson(needs.Params.outputs.params).artifacts.package }}
remaining: |
${{ fromJson(needs.Params.outputs.params).artifacts.unittesting }}-ubuntu-3.7
${{ fromJson(needs.Params.outputs.params).artifacts.unittesting }}-ubuntu-3.8
${{ fromJson(needs.Params.outputs.params).artifacts.unittesting }}-ubuntu-3.9
${{ fromJson(needs.Params.outputs.params).artifacts.unittesting }}-ubuntu-3.10
${{ fromJson(needs.Params.outputs.params).artifacts.unittesting }}-windows-3.7
${{ fromJson(needs.Params.outputs.params).artifacts.unittesting }}-windows-3.8
${{ fromJson(needs.Params.outputs.params).artifacts.unittesting }}-windows-3.9
${{ fromJson(needs.Params.outputs.params).artifacts.unittesting }}-windows-3.10
${{ fromJson(needs.Params.outputs.params).artifacts.unittesting }}-msys2-3.9
${{ fromJson(needs.Params.outputs.params).artifacts.unittesting }}-macos-3.7
${{ fromJson(needs.Params.outputs.params).artifacts.unittesting }}-macos-3.8
${{ fromJson(needs.Params.outputs.params).artifacts.unittesting }}-macos-3.9
${{ fromJson(needs.Params.outputs.params).artifacts.unittesting }}-macos-3.10
${{ fromJson(needs.Params.outputs.params).artifacts.coverage }}
${{ fromJson(needs.Params.outputs.params).artifacts.typing }}
${{ fromJson(needs.Params.outputs.params).artifacts.doc }}
PYPI_TOKEN: ${{ secrets.PYPI_TOKEN }}
CODECOV_TOKEN: ${{ secrets.CODECOV_TOKEN }}
CODACY_TOKEN: ${{ secrets.CODACY_TOKEN }}
12 changes: 11 additions & 1 deletion .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,13 @@ __pycache__/
.coverage
.cov
coverage.xml
/report/coverage

# mypy
/report/typing

# pytest
/report/unit

# setuptools
/build/**/*.*
Expand All @@ -21,5 +28,8 @@ coverage.xml
/doc/pyEDAA.UCIS/**/*.*
!/doc/pyEDAA.UCIS/index.rst

# PyCharm project
# PyCharm project files
/.idea/workspace.xml

# Git files
!.git*
7 changes: 5 additions & 2 deletions .idea/pyEDAA.UCIS.iml

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

4 changes: 2 additions & 2 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@
[![PyPI](https://img.shields.io/pypi/v/pyEDAA.UCIS?longCache=true&style=flat-square&logo=PyPI&logoColor=FBE072)](https://pypi.org/project/pyEDAA.UCIS/)
![PyPI - Status](https://img.shields.io/pypi/status/pyEDAA.UCIS?longCache=true&style=flat-square&logo=PyPI&logoColor=FBE072)
![PyPI - Python Version](https://img.shields.io/pypi/pyversions/pyEDAA.UCIS?longCache=true&style=flat-square&logo=PyPI&logoColor=FBE072)
[![GitHub Workflow - Build and Test Status](https://img.shields.io/github/workflow/status/edaa-org/pyEDAA.UCIS/Pipeline/main?longCache=true&style=flat-square&label=Build%20and%20Test&logo=GitHub%20Actions&logoColor=FFFFFF)](https://GitHub.com/edaa-org/pyEDAA.UCIS/actions/workflows/Pipeline.yml)
[![GitHub Workflow - Build and Test Status](https://img.shields.io/github/actions/workflow/status/edaa-org/pyEDAA.UCIS/Pipeline.yml?longCache=true&style=flat-square&label=Build%20and%20Test&logo=GitHub%20Actions&logoColor=FFFFFF)](https://GitHub.com/edaa-org/pyEDAA.UCIS/actions/workflows/Pipeline.yml)
[![Libraries.io status for latest release](https://img.shields.io/librariesio/release/pypi/pyEDAA.UCIS?longCache=true&style=flat-square&logo=Libraries.io&logoColor=fff)](https://libraries.io/github/edaa-org/pyEDAA.UCIS)
[![Codacy - Quality](https://img.shields.io/codacy/grade/63bd2bd65585447a9f6d7ad4e7d82a35?longCache=true&style=flat-square&logo=Codacy)](https://app.codacy.com/gh/edaa-org/pyEDAA.UCIS)
[![Codacy - Coverage](https://img.shields.io/codacy/coverage/63bd2bd65585447a9f6d7ad4e7d82a35?longCache=true&style=flat-square&logo=Codacy)](https://app.codacy.com/gh/edaa-org/pyEDAA.UCIS)
Expand All @@ -27,7 +27,7 @@ Unified Coverage Interoperability Standard (UCIS)

## Main Goals

* Parse UCDB files and provide a UCDB data model.
* Convert UCDB files and provide a UCDB data model.
* Export and convert data from UCDB to Cobertura format.
* Also support flavors not following the Unified Coverage Interoperability Standard (UCIS).

Expand Down
4 changes: 2 additions & 2 deletions dist/requirements.txt
Original file line number Diff line number Diff line change
@@ -1,2 +1,2 @@
wheel
twine
wheel ~= 0.45.0
twine ~= 6.2
31 changes: 19 additions & 12 deletions doc/CodeCoverage.rst
Original file line number Diff line number Diff line change
@@ -1,18 +1,25 @@
Code Coverage
#############
.. _CODECOV:

Statement Coverage
******************
Code Coverage Report
####################

.. code-block:: Bash
.. grid:: 2

# Convert ACDB file into UCDB file (XML format)
acdb2xml -i aggregate.acdb -o ucdb.xml
.. grid-item::
:columns: 8

# Convert UCDB file into Cobertura format
pyedaa-ucis export --ucdb ucdb.xml --cobertura cobertura.xml
.. report:code-coverage::
:reportid: src

Branch Coverage
***************
.. grid-item::
:columns: 4

.. note:: Branch coverage isn't supported yet.
.. report:code-coverage-legend::
:reportid: src
:style: vertical-table

----------

Code coverage report generated with `pytest <https://github.com/pytest-dev/pytest>`__,
`Coverage.py <https://github.com/nedbat/coveragepy/tree/master>`__ and visualized by
`sphinx-reports <https://github.com/pyTooling/sphinx-reports>`__.
2 changes: 1 addition & 1 deletion doc/CommandLineInterface.rst
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
Command Line Interfaces
#######################

.. _References:cli:
.. _References/cli:

.. autoprogram:: pyEDAA.UCIS.CLI:Program().MainParser
:prog: pyedaa-ucis
Expand Down
Loading
Loading