Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

👷♻️ Improved Reusable Workflows #594

Merged
merged 16 commits into from
Apr 22, 2024
Merged

Conversation

burgholzer
Copy link
Member

Description

This PR refactors parts of the reusable workflow and enhances them. Notable changes:

  • ⚡ Build and test parallelism is increased. Most public GitHub runners offer 4 cores now.
  • 🚸 Slightly reduces the number of individual macOS runs to avoid hitting the concurrency limit of 5 runners too often.
  • ✨ Adjusts the Python packaging workflow so that it also applies to pure Python projects
  • 🚸 Makes the default GitHub token available to Python test runs
  • ♻️ Combines the Python test and minimal version runs. This means fewer workflow runs and fewer coverage uploads. Minimal versions are now tests on all Python versions and operating systems to ensure smooth operation of the resulting packages.
  • ♻️ Automates the Python version selection for building wheels. Just one less place to touch when a new Python version comes around.

Checklist:

  • The pull request only contains commits that are related to it.
  • I have added appropriate tests and documentation.
  • I have made sure that all CI jobs on GitHub pass.
  • The pull request introduces no new warnings and follows the project's style guidelines.

Signed-off-by: burgholzer <burgholzer@me.com>
Signed-off-by: burgholzer <burgholzer@me.com>
Signed-off-by: burgholzer <burgholzer@me.com>
Signed-off-by: burgholzer <burgholzer@me.com>
…ects

Signed-off-by: burgholzer <burgholzer@me.com>
This tests the minimal versions on all Python versions and operating systems.
Due to no build isolation and caching, this should only marginally increase build times in CI.
Obviously, it will almost double the test runtime.

Signed-off-by: burgholzer <burgholzer@me.com>
Signed-off-by: burgholzer <burgholzer@me.com>
@burgholzer burgholzer added usability Anything related to usability refactor Anything related to code refactoring continuous integration Anything related to the CI setup Core Anything related to the Core library and IR labels Apr 22, 2024
@burgholzer burgholzer added this to the MQT Core milestone Apr 22, 2024
@burgholzer burgholzer self-assigned this Apr 22, 2024
Signed-off-by: burgholzer <burgholzer@me.com>
Signed-off-by: burgholzer <burgholzer@me.com>
…ackages built from source

Signed-off-by: burgholzer <burgholzer@me.com>
Signed-off-by: burgholzer <burgholzer@me.com>
Signed-off-by: burgholzer <burgholzer@me.com>
Signed-off-by: burgholzer <burgholzer@me.com>
Signed-off-by: burgholzer <burgholzer@me.com>
Signed-off-by: burgholzer <burgholzer@me.com>
Signed-off-by: burgholzer <burgholzer@me.com>
Copy link

codecov bot commented Apr 22, 2024

Codecov Report

All modified and coverable lines are covered by tests ✅

Project coverage is 91.4%. Comparing base (cb555c9) to head (ad8d582).

Additional details and impacted files

Impacted file tree graph

@@          Coverage Diff          @@
##            main    #594   +/-   ##
=====================================
  Coverage   91.4%   91.4%           
=====================================
  Files        131     131           
  Lines      14090   14090           
  Branches    2249    2249           
=====================================
+ Hits       12885   12886    +1     
+ Misses      1205    1204    -1     
Flag Coverage Δ
cpp 91.1% <ø> (+<0.1%) ⬆️
python 99.7% <ø> (ø)

see 1 file with indirect coverage changes

@burgholzer burgholzer merged commit 5f88f68 into main Apr 22, 2024
35 checks passed
@burgholzer burgholzer deleted the update-reusable-workflows branch April 22, 2024 20:53
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
continuous integration Anything related to the CI setup Core Anything related to the Core library and IR refactor Anything related to code refactoring usability Anything related to usability
Projects
Status: Done
Status: Done
Development

Successfully merging this pull request may close these issues.

1 participant