Skip to content

Commit 10ee1bb

Browse files
author
Release Manager
committed
gh-37447: Replace bootstrap-conda by grayskull and update conda lock files <!-- ^^^^^ Please provide a concise, informative and self-explanatory title. Don't put issue numbers in there, do this in the PR body below. For example, instead of "Fixes #1234" use "Introduce new method to calculate 1+1" --> <!-- Describe your changes here in detail --> Using the metadata added in #37446, we automatically generate the conda environment files. This no longer makes any reference to the `conda.txt` files contained in sage-the- distribution. Thus sage-on-top-of-conda is now completely independent of sage-the-distribution (only relying on information specified by sage- the-library). In particular, after this PR is merged the `conda.txt` files could be deleted from sage-the-distribution. In particular, we no longer need to maintain the mapping of pypi packages to conda packages but instead can rely on the offical mappings maintained by the conda team (https://github.com/regro/cf-graph- countyfair/tree/master/mappings/pypi). To test: ``` pip install grayskull conda-lock python tools/update-conda.py ``` The updated conda files are committed here as well. Moreover, the `environment-dev` files have been deleted as there was only little difference between these files and some people rightfully complained that having too many files in the root folder is distracting. As a byproduct, this fixes #34626. <!-- Why is this change required? What problem does it solve? --> <!-- If this PR resolves an open issue, please link to it here. For example "Fixes #12345". --> <!-- If your change requires a documentation PR, please link it appropriately. --> ### 📝 Checklist <!-- Put an `x` in all the boxes that apply. --> <!-- If your change requires a documentation PR, please link it appropriately --> <!-- If you're unsure about any of these, don't hesitate to ask. We're here to help! --> <!-- Feel free to remove irrelevant items. --> - [ ] The title is concise, informative, and self-explanatory. - [ ] The description explains in detail what this PR is about. - [ ] I have linked a relevant issue or discussion. - [ ] I have created tests covering the changes. - [ ] I have updated the documentation accordingly. ### ⌛ Dependencies - #37446: specifies additional requirements in the pyproject.toml which are used to generate the conda env files - #38983: for the update of numpy - #38982: to fix meson build <!-- List all open PRs that this PR logically depends on - #12345: short description why this is a dependency - #34567: ... --> <!-- If you're unsure about any of these, don't hesitate to ask. We're here to help! --> URL: #37447 Reported by: Tobias Diez Reviewer(s): Dima Pasechnik, Julian Rüth, Tobias Diez
2 parents f48da11 + c1f8dbc commit 10ee1bb

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

41 files changed

+2487
-9909
lines changed

.ci/write-dockerfile.sh

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -275,7 +275,7 @@ cat <<EOF
275275
FROM with-system-packages AS bootstrapped
276276
#:bootstrapping:
277277
RUN rm -rf /new /sage/.git
278-
$ADD Makefile VERSION.txt COPYING.txt condarc.yml README.md bootstrap bootstrap-conda configure.ac sage .homebrew-build-env tox.ini .gitignore /new/
278+
$ADD Makefile VERSION.txt COPYING.txt condarc.yml README.md bootstrap configure.ac sage .homebrew-build-env tox.ini .gitignore /new/
279279
$ADD config/config.rpath /new/config/config.rpath
280280
$ADD src/doc/bootstrap /new/src/doc/bootstrap
281281
$ADD src/bin /new/src/bin

.devcontainer/onCreate-conda.sh

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@ conda config --env --add channels conda-forge
66
conda config --env --set channel_priority strict
77
conda update -y --all --override-channels -c conda-forge
88
conda install mamba=1 -n base -y
9-
mamba env create -y --file environment-dev-3.11-linux.yml || mamba env update -y --file environment-dev-3.11-linux.yml
9+
mamba env create -y --file environment-3.11-linux.yml || mamba env update -y --file environment-3.11-linux.yml
1010
conda init bash
1111

1212
# Build sage

.github/workflows/ci-conda.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -69,7 +69,7 @@ jobs:
6969
use-mamba: true
7070
channels: conda-forge
7171
channel-priority: true
72-
activate-environment: sage
72+
activate-environment: sage-dev
7373
environment-file: ${{ matrix.conda-env }}-${{ matrix.python }}-${{ startsWith(matrix.os, 'macos') && (startsWith(runner.arch, 'ARM') && 'macos' || 'macos-x86_64') || 'linux' }}.yml
7474

7575
- name: Print Conda environment

.github/workflows/ci-meson.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -54,7 +54,7 @@ jobs:
5454
use-mamba: true
5555
channels: conda-forge
5656
channel-priority: true
57-
activate-environment: sage
57+
activate-environment: sage-dev
5858
environment-file: environment-${{ matrix.python }}-${{ startsWith(matrix.os, 'macos') && (startsWith(runner.arch, 'ARM') && 'macos' || 'macos-x86_64') || 'linux' }}.yml
5959

6060
- name: Print Conda environment

.github/workflows/conda-lock-update.py

Lines changed: 0 additions & 56 deletions
This file was deleted.

.gitignore

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -27,8 +27,8 @@
2727
# no longer generated, but may still be in user worktrees
2828
/src/lib/pkgconfig
2929

30-
# Environment files generated by bootstrap-conda.
31-
# The files without Python version and in src are no longer generated
30+
# Conda environment files
31+
# The files without Python version, with -dev or in src are no longer generated
3232
# but may still be in users' directories.
3333
/environment.yml
3434
/environment-3.9.yml

.gitpod.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@ tasks:
77
- name: Setup
88
# Create conda environment, then configure and build sage
99
init: >-
10-
&& mamba env create --file environment-dev-3.11-linux.yml --prefix venv
10+
&& mamba env create --file environment-3.11-linux.yml --prefix venv
1111
&& conda config --append envs_dirs $(pwd)
1212
&& conda activate $(pwd)/venv
1313
&& ./bootstrap

Makefile

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -174,7 +174,7 @@ bootstrap-clean:
174174
rm -rf config/install-sh config/compile config/config.guess config/config.sub config/missing configure build/make/Makefile-auto.in
175175
rm -f src/doc/en/installation/*.txt
176176
find src/doc/en/reference/spkg -name index.rst -prune -o -maxdepth 1 -name "*.rst" -exec rm -f {} \+
177-
for a in environment environment-optional src/environment src/environment-dev src/environment-optional; do rm -f $$a.yml $$a-3.[89].yml $$a-3.1[0-9].yml; done
177+
for a in environment environment-optional src/environment src/environment-optional; do rm -f $$a.yml $$a-3.[89].yml $$a-3.1[0-9].yml; done
178178
rm -f src/requirements.txt
179179
rm -f src/setup.cfg
180180
rm -f build/pkgs/cypari/version_requirements.txt

bootstrap

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -139,7 +139,6 @@ EOF
139139
# ONLY stderr, and to re-output the results back to stderr leaving
140140
# stdout alone. Basically we swap the two descriptors using a
141141
# third, filter, and then swap them back.
142-
./bootstrap-conda && \
143142
aclocal -I m4 && \
144143
automake --add-missing --copy build/make/Makefile-auto 3>&1 1>&2 2>&3 \
145144
| sed "${QUIET_SED_FILTER}" 3>&1 1>&2 2>&3 && \
@@ -226,7 +225,7 @@ save () {
226225
build/make/Makefile-auto.in \
227226
src/doc/en/installation/*.txt \
228227
$(find src/doc/en/reference/spkg -name index.rst -prune -o -maxdepth 1 -name "*.rst" -print) \
229-
environment-3.[89].yml environment-3.1[0-9].yml \
228+
environment-3.[89]-*.yml environment-3.1[0-9]-*.yml \
230229
src/pyproject.toml \
231230
src/requirements.txt \
232231
src/setup.cfg \
@@ -236,6 +235,7 @@ save () {
236235
build/pkgs/gmpy2/version_requirements.txt \
237236
build/pkgs/jupyter_core/version_requirements.txt \
238237
build/pkgs/memory_allocator/version_requirements.txt \
238+
build/pkgs/meson/version_requirements.txt \
239239
build/pkgs/numpy/version_requirements.txt \
240240
build/pkgs/pkgconfig/version_requirements.txt \
241241
build/pkgs/pplpy/version_requirements.txt \

bootstrap-conda

Lines changed: 0 additions & 125 deletions
This file was deleted.

0 commit comments

Comments
 (0)