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

Initiate switch to more modern GitHub Actions #312

Merged
merged 5 commits into from
May 14, 2024

Conversation

tovrstra
Copy link
Member

@tovrstra tovrstra commented May 3, 2024

This builds on the changes in #310, which will be merged before this one.

Main changes:

  • Replace setup.py by pyproject.toml
  • Replace .github/workflows/ci.yaml by .github/workflows/pytest.yaml
  • Remove unused config files

There are still related changes needed to get more linting back to work, but I'd like to defer this to later pull requests to limit the number of changes in one pull request. Things to be done include, probably one PR each:

  • Include ruff format in the pre-commit config (and exclude some sections in the unit tests that would become poorly formatted) + lots of changes due to the automatic formatting.
  • Include ruff in the pre-commit config + some cleanups due to ruff.
  • Add a workflow for PyPI releases.

After this PR, the master branch will be renamed to the main branch. After the planned PRs listed here, I will update the other PRs.

@tovrstra
Copy link
Member Author

tovrstra commented May 7, 2024

Some more background can be found in the discussion of pull request #263.

@PaulWAyers
Copy link
Member

Hi @tovrstra . I trust your judgement on this. As you note, the need to update our GitHub actions is essentially the conclusion from the long discussion in #263.

As we agreed in February, we want to harmonize workflows so that all the QC-Devs packages have the same workflow; it is too hard to maintain if iodata is different from everything else. So modernizing GitHub Actions for iodata is, in practice, potentially a large task, as it requires doing the same for ~10 core packages (and also potentially updating the contributing guidelines and other organization-level documentation so that users can effectively use the new workflow). (I don't see any point in rolling out the changes to stale repositories or those we are keeping only for archival purposes.) I, unfortunately, am not going to be very helpful for this (sort of) task.

@tovrstra can you coordinate the rollout of these changes across repositories, updating the contributing guidelines (if required) and documenting the workflow? (I leave it to your judgement as to whether we should first make sure everything works for iodata before rolling out changes organization-wide, or whether we should roll them out piecemeal to minimize disruption.) It may also be that we need to set up a "template repository" for new projects.

PaulWAyers
PaulWAyers previously approved these changes May 10, 2024
Copy link
Member

@PaulWAyers PaulWAyers left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

OK by me.

@tovrstra tovrstra dismissed PaulWAyers’s stale review May 10, 2024 17:07

The merge-base changed after approval.

@tovrstra
Copy link
Member Author

Thanks for the comments. I will open a new issue to maintain an overview of the pending and completed updates, of which this is the first one.

@tovrstra tovrstra merged commit d989495 into theochem:master May 14, 2024
7 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants