diff --git a/.azure-pipelines/azure-pipelines-linux.yml b/.azure-pipelines/azure-pipelines-linux.yml index abcbeb9..875d996 100755 --- a/.azure-pipelines/azure-pipelines-linux.yml +++ b/.azure-pipelines/azure-pipelines-linux.yml @@ -13,6 +13,7 @@ jobs: UPLOAD_PACKAGES: 'True' DOCKER_IMAGE: quay.io/condaforge/linux-anvil-cos7-x86_64 timeoutInMinutes: 360 + variables: {} steps: # configure qemu binfmt-misc running. This allows us to run docker containers diff --git a/.ci_support/linux_64_.yaml b/.ci_support/linux_64_.yaml index 6c59082..3166d1d 100644 --- a/.ci_support/linux_64_.yaml +++ b/.ci_support/linux_64_.yaml @@ -1,3 +1,7 @@ +c_stdlib: +- sysroot +c_stdlib_version: +- '2.12' cdt_name: - cos6 channel_sources: @@ -6,3 +10,6 @@ channel_targets: - conda-forge main docker_image: - quay.io/condaforge/linux-anvil-cos7-x86_64 +zip_keys: +- - c_stdlib_version + - cdt_name diff --git a/.gitignore b/.gitignore index c89ecb7..179afe5 100644 --- a/.gitignore +++ b/.gitignore @@ -1,3 +1,24 @@ -*.pyc +# User content belongs under recipe/. +# Feedstock configuration goes in `conda-forge.yml` +# Everything else is managed by the conda-smithy rerender process. +# Please do not modify + +# Ignore all files and folders in root +* +!/conda-forge.yml + +# Don't ignore any files/folders if the parent folder is 'un-ignored' +# This also avoids warnings when adding an already-checked file with an ignored parent. +!/**/ +# Don't ignore any files/folders recursively in the following folders +!/recipe/** +!/.ci_support/** -build_artifacts +# Since we ignore files/folders recursively, any folders inside +# build_artifacts gets ignored which trips some build systems. +# To avoid that we 'un-ignore' all files/folders recursively +# and only ignore the root build_artifacts folder. +!/build_artifacts/** +/build_artifacts + +*.pyc diff --git a/.scripts/build_steps.sh b/.scripts/build_steps.sh index eba1dfd..9682555 100755 --- a/.scripts/build_steps.sh +++ b/.scripts/build_steps.sh @@ -34,9 +34,9 @@ CONDARC export CONDA_LIBMAMBA_SOLVER_NO_CHANNELS_FROM_INSTALLED=1 mamba install --update-specs --yes --quiet --channel conda-forge --strict-channel-priority \ - pip mamba conda-build boa conda-forge-ci-setup=4 + pip mamba conda-build boa conda-forge-ci-setup=4 "conda-build>=24.1" mamba update --update-specs --yes --quiet --channel conda-forge --strict-channel-priority \ - pip mamba conda-build boa conda-forge-ci-setup=4 + pip mamba conda-build boa conda-forge-ci-setup=4 "conda-build>=24.1" # set up the condarc setup_conda_rc "${FEEDSTOCK_ROOT}" "${RECIPE_ROOT}" "${CONFIG_FILE}" @@ -57,12 +57,6 @@ if [[ -f "${FEEDSTOCK_ROOT}/LICENSE.txt" ]]; then cp "${FEEDSTOCK_ROOT}/LICENSE.txt" "${RECIPE_ROOT}/recipe-scripts-license.txt" fi -if [[ "${sha:-}" == "" ]]; then - pushd ${FEEDSTOCK_ROOT} - sha=$(git rev-parse HEAD) - popd -fi - if [[ "${BUILD_WITH_CONDA_DEBUG:-0}" == 1 ]]; then if [[ "x${BUILD_OUTPUT_ID:-}" != "x" ]]; then EXTRA_CB_OPTIONS="${EXTRA_CB_OPTIONS:-} --output-id ${BUILD_OUTPUT_ID}" @@ -74,7 +68,7 @@ if [[ "${BUILD_WITH_CONDA_DEBUG:-0}" == 1 ]]; then # Drop into an interactive shell /bin/bash else - conda mambabuild "${RECIPE_ROOT}" -m "${CI_SUPPORT}/${CONFIG}.yaml" \ + conda-mambabuild "${RECIPE_ROOT}" -m "${CI_SUPPORT}/${CONFIG}.yaml" \ --suppress-variables ${EXTRA_CB_OPTIONS:-} \ --clobber-file "${CI_SUPPORT}/clobber_${CONFIG}.yaml" \ --extra-meta flow_run_id="${flow_run_id:-}" remote_url="${remote_url:-}" sha="${sha:-}" diff --git a/.scripts/run_docker_build.sh b/.scripts/run_docker_build.sh index b70ef01..00f377a 100755 --- a/.scripts/run_docker_build.sh +++ b/.scripts/run_docker_build.sh @@ -21,6 +21,12 @@ if [ -z ${FEEDSTOCK_NAME} ]; then export FEEDSTOCK_NAME=$(basename ${FEEDSTOCK_ROOT}) fi +if [[ "${sha:-}" == "" ]]; then + pushd "${FEEDSTOCK_ROOT}" + sha=$(git rev-parse HEAD) + popd +fi + docker info # In order for the conda-build process in the container to write to the mounted diff --git a/build-locally.py b/build-locally.py index 3f4b7a7..e0d408d 100755 --- a/build-locally.py +++ b/build-locally.py @@ -64,8 +64,9 @@ def verify_config(ns): elif ns.config.startswith("osx"): if "OSX_SDK_DIR" not in os.environ: raise RuntimeError( - "Need OSX_SDK_DIR env variable set. Run 'export OSX_SDK_DIR=SDKs' " - "to download the SDK automatically to 'SDKs/MacOSX.sdk'. " + "Need OSX_SDK_DIR env variable set. Run 'export OSX_SDK_DIR=$PWD/SDKs' " + "to download the SDK automatically to '$PWD/SDKs/MacOSX.sdk'. " + "Note: OSX_SDK_DIR must be set to an absolute path. " "Setting this variable implies agreement to the licensing terms of the SDK by Apple." ) diff --git a/conda-forge.yml b/conda-forge.yml index 4dc3a13..07c0d4b 100644 --- a/conda-forge.yml +++ b/conda-forge.yml @@ -1,7 +1,6 @@ build_platform: {osx_arm64: osx_64} conda_forge_output_validation: true provider: {linux_aarch64: default} -build_with_mambabuild: true github: branch_name: main tooling_branch_name: main diff --git a/recipe/meta.yaml b/recipe/meta.yaml index 1917b36..9c93351 100644 --- a/recipe/meta.yaml +++ b/recipe/meta.yaml @@ -1,5 +1,5 @@ {% set name = "sage" %} -{% set version = "10.2" %} +{% set version = "10.3" %} package: name: {{ name }} @@ -14,24 +14,25 @@ requirements: # We require all dependencies with at least that version that upstream uses # in their SPKGs. For packages that (seem to) use semantic versioning and # are at least 1.0.0, we limit the version to the next major release. - - alabaster >=0.7.12 + - alabaster >=0.7.16 - arb - - babel >=2.12.1,<3 + - babel >=2.14.0,<3 - bdw-gc >=8.0.4,<9 - blas-devel - - bleach >=5.0.1,<6 + - bleach >=6.1.0,<7 - brial - cddlib >=1!0.94m - certifi - cliquer - - cvxopt >=1.3.0,<2 + - conway-polynomials >=0.8 + - cvxopt >=1.3.2,<2 - cycler >=0.11.0 - cypari2 - cysignals - cython >=3,<4 - decorator >=5.1.1,<6 - - docutils >=0.17.1 - - ecl >=21.2.1,<21.2.2.a0 + - docutils >=0.20.1 + - ecl >=23.9.9,<24 - eclib - ecm - entrypoints >=0.4 @@ -51,13 +52,13 @@ requirements: - gsl - iml - ipykernel >=6.6.0,<7 - - ipython >=8.6.0,<9 - - ipywidgets >=8.0.2,<9 + - ipython >=8.18.1,<9 + - ipywidgets >=8.1.1,<9 - jinja2 - jmol >=14.29.52,<15 - - jsonschema >=4.17.1,<5 - - jupyter_client >=7.4.4,<8 - - jupyter_core + - jsonschema >=4.17.3,<5 + - jupyter_client >=8.3.1,<9 + - jupyter_core >=5.3.2,<6 - lcalc - libbraiding - libflint @@ -76,28 +77,28 @@ requirements: - mpfi - mpfr - mpmath >=1.3.0,<2 - - nauty >=2.8.6,<3 - - nbclient >=0.7.0,<0.8 - - nbconvert >=7.2.3,<8 - - nbformat >=5.7.0,<6 + - nauty >=2.8.8,<3 + - nbclient >=0.8.0,<0.9 + - nbconvert >=7.9.2,<8 + - nbformat >=5.9.2,<6 - ncurses >=6.3,<7 - - networkx >=3.1,<4 - - notebook >=6.4.10,<7 + - networkx >=3.2.1,<4 + - notebook >=7.1.1,<8 - ntl - numpy - palp >=2.11,<3 - pari >=2.15.4,<3 - - pexpect >=4.8.0,<5 - - pkg-config - - pkgconfig + - pexpect >=4.9.0,<5 - pickleshare >=0.7.5,<1.0 - pillow >=10.1.0,<11 + - pkg-config + - pkgconfig - planarity - ppl - pplpy - primecountpy >=0.1.0,<0.2.0 - ptyprocess >=0.7.0,<1 - - pygments >=2.13.0,<3 + - pygments >=2.17.2,<3 - pyparsing >=3.1.1,<4 - python >=3.9 - python-dateutil >=2.8.2,<3 @@ -110,27 +111,26 @@ requirements: - rw - sagelib {{ version }} - sagemath-db-combinatorial-designs >=20140630 - - sagemath-db-conway-polynomials >=0.5 - sagemath-db-elliptic-curves >=0.8.1 - sagemath-db-graphs >=20210214 - sagemath-db-polytopes >=20170220 - sagetex >=3.6.1,<4 - - scipy >=1.11.3,<2 + - scipy >=1.11.4,<2 - simplegeneric >=0.8.1,<1 - singular >=4.3.2p8,<4.4 - six >=1.16.0,<2 - - sphinx >=5.2.3,<6 + - sphinx >=7.2.6,<8 - sqlite >=3.36,<4 - symmetrica - sympow >=2.023.6,<3 - sympy >=1.12,<2 - tachyon 0.99.* - - terminado >=0.17.0 + - terminado >=0.17.1 - three.js 122 - - tornado >=6.2,<7 - - traitlets >=5.9.0,<6 - - wcwidth >=0.2.5,<2 - - widgetsnbextension >=4.0.8,<5 + - tornado >=6.4,<7 + - traitlets >=5.14.0,<6 + - wcwidth >=0.2.12,<2 + - widgetsnbextension >=4.0.9,<5 - zeromq >=4.3.5,<5 - zlib - zn_poly diff --git a/recipe/run_test.sh b/recipe/run_test.sh index b1f7e03..982d3bc 100644 --- a/recipe/run_test.sh +++ b/recipe/run_test.sh @@ -19,9 +19,7 @@ export SAGE_ROOT=$PWD ls $SAGE_ROOT ls $SAGE_LOCAL echo $SAGE_ROOT > "$SAGE_LOCAL/lib/sage-current-location.txt" -sed -i.bak "s@SAGE_ROOT=\"$PREFIX\"@SAGE_ROOT=\"$SAGE_ROOT\"@g" $PREFIX/bin/sage-env-config -export SAGE_NUM_THREADS_PARALLEL=$CPU_COUNT export SAGE_NUM_THREADS=$CPU_COUNT set +e