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
Restructure packaging/ci infrastructure #2014
Merged
Merged
Conversation
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Please wait for #2016 to be merged before merging this PR. |
sdrave
force-pushed
the
setup_py_removal
branch
13 times, most recently
from
April 26, 2023 16:09
b8891c3
to
4cca912
Compare
sdrave
force-pushed
the
setup_py_removal
branch
9 times, most recently
from
April 27, 2023 18:35
a0a0893
to
2320254
Compare
sdrave
force-pushed
the
setup_py_removal
branch
2 times, most recently
from
April 28, 2023 09:41
a9bc78a
to
2905155
Compare
for more information, see https://pre-commit.ci
as conda-lock struggles with dependencies which appear in multiple extras
This was referenced May 10, 2023
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Labels
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This PR contains a major overhaul of pyMOR's packaging an CI infrastructure.
Main packaging changes:
pyproject.toml
-based package withhatch(ling)
as build backend.pyproject.toml
using extras. This includes additional dependencies for CI, etc.dependencies.py
is removed.__init__.py
, which is extracted by the buildsytem to determine the package version.pyproject.toml
.setup.cfg
has been removed.Main CI changes:
requirements-*-txt
lock files frompyproject.toml
using pip-compile.To update, call
make ci_requirements
.Dockerfile
located indocker/
. TheDockerfile
installs the current locked requirements into the image. Thepymor/docker
is obsolete.To generate, call
make ci_images
. To push to the registry, callmake ci_images_push
.preflight
phase in the gitlab pipeline computes this hash for the currently tested source tree. The following stages use this hash to select the CI image.ci-current
,ci-oldest
andci-fenics
.ci-current
will have it's requirements and Python version periodically updated to follow upstream.ci-oldest
will only be updated, when a new dependency is added or a minimal required version is bumped.installed
tests and the binder-related stuff. (The binder links should still work.)pyproject.toml
using conda-lock, which works simliar to pip-compile.dev
to avoid build timeouts.Remarks:
make ci_dependencies
if necessary. I am thinking about automating the image generation in the future in the CI pipeline. I would leave this for a future PR, however.export DOCKER=podman
).