diff --git a/.github/workflows/PR.yml b/.github/workflows/PR.yml index 82f17b7c4a736..53140212f477f 100644 --- a/.github/workflows/PR.yml +++ b/.github/workflows/PR.yml @@ -39,6 +39,7 @@ jobs: set -e eval "$(conda shell.bash hook)" conda activate bioconda + source common.sh echo '============' conda info --all conda config --show-sources @@ -93,15 +94,15 @@ jobs: eval "$(conda shell.bash hook)" conda activate bioconda + source common.sh if [ -z "$GITHUB_BASE_REF" ] ; then export GITHUB_BASE_REF="master" fi git fetch origin "$GITHUB_BASE_REF" - docker pull quay.io/dpryan79/mulled_container:latest + bioconda-utils build recipes config.yml \ --docker --mulled-test \ --git-range origin/"$GITHUB_BASE_REF" HEAD - docker rmi quay.io/dpryan79/mulled_container:latest - name: Prepare artifacts run: | @@ -149,6 +150,7 @@ jobs: strategy: fail-fast: true max-parallel: 4 + # Limited concurrency for osx, so first make sure linux can pass needs: build-linux steps: - uses: actions/checkout@v4 @@ -178,19 +180,20 @@ jobs: set -e eval "$(conda shell.bash hook)" conda activate bioconda + source common.sh + # Sets up OSX SDK + run_conda_forge_build_setup # Clean up lingering build artifacts for n in linux-64 osx-64 noarch; do rm -f /opt/mambaforge/envs/bioconda/conda-bld/$n/*.tar.bz2 done - # The SDK isn't actually cached, so reinstall it - run_conda_forge_build_setup - if [ -z "$GITHUB_BASE_REF" ] ; then export GITHUB_BASE_REF="master" fi git fetch origin "$GITHUB_BASE_REF" + bioconda-utils build recipes config.yml \ --git-range origin/"$GITHUB_BASE_REF" HEAD @@ -213,84 +216,85 @@ jobs: path: | /tmp/artifacts/packages - build_and_test-osx-arm64: - name: OSX-ARM64 Tests - runs-on: macOS-14 # M1 - strategy: - fail-fast: true - max-parallel: 4 - needs: build-linux - steps: - - uses: actions/checkout@v4 - with: - fetch-depth: 0 - - # bail if there's no osx-arm64 recipes - - name: Check for Additional Platforms - id: additional_platforms - run: | - result=$(./scripts/check-for-additional-platforms.sh "origin/master...HEAD" "build_and_test" "${GITHUB_JOB}") - if [[ ${result} != "build" ]] - then - echo "No recipes using this platform, skipping rest of job." - echo "skip_build=true" >> $GITHUB_OUTPUT - fi - - - name: set path - run: echo "/opt/mambaforge/bin" >> $GITHUB_PATH - - - name: Fetch conda install script - if: steps.additional_platforms.outputs.skip_build != 'true' - run: | - wget https://raw.githubusercontent.com/bioconda/bioconda-common/master/{install-and-set-up-conda,configure-conda,common}.sh - - - name: Set up bioconda-utils - if: steps.additional_platforms.outputs.skip_build != 'true' - run: bash install-and-set-up-conda.sh - - - name: Configure conda - if: steps.additional_platforms.outputs.skip_build != 'true' - run: bash configure-conda.sh - - - name: Build and Test - if: steps.additional_platforms.outputs.skip_build != 'true' - env: - # Mimic circleci - OSTYPE: "darwin" - CI: "true" - run: | - set -xe - eval "$(conda shell.bash hook)" - conda activate bioconda - source common.sh - # Sets up OSX SDK - run_conda_forge_build_setup - - if [ -z "$GITHUB_BASE_REF" ] ; then - export GITHUB_BASE_REF="master" - fi - git fetch origin "$GITHUB_BASE_REF" - - bioconda-utils build recipes config.yml \ - --lint --git-range origin/"$GITHUB_BASE_REF" HEAD - - - name: Prepare artifacts - if: steps.additional_platforms.outputs.skip_build != 'true' - run: | - ( - rm -rf /tmp/artifacts - mkdir -p /tmp/artifacts/packages - cd /opt/mambaforge/envs/bioconda/conda-bld || exit 0 - find -name .cache | xargs rm -rf || true - for n in index.html channeldata.json osx-arm64 noarch; do - cp -rv $n /tmp/artifacts/packages || true - done - ) || true - - - name: Archive packages - if: steps.additional_platforms.outputs.skip_build != 'true' - uses: actions/upload-artifact@v4 - with: - name: osx-arm64-packages - path: | - /tmp/artifacts + # Disabled due to concurrency limits on GHA for OSX. osx-arm64 builds are on CircleCI. + # build_and_test-osx-arm64: + # name: OSX-ARM64 Tests + # runs-on: macOS-14 # M1 + # strategy: + # fail-fast: true + # max-parallel: 4 + # needs: build-linux + # steps: + # - uses: actions/checkout@v4 + # with: + # fetch-depth: 0 + + # # bail if there's no osx-arm64 recipes + # - name: Check for Additional Platforms + # id: additional_platforms + # run: | + # result=$(./scripts/check-for-additional-platforms.sh "origin/master...HEAD" "build_and_test" "${GITHUB_JOB}") + # if [[ ${result} != "build" ]] + # then + # echo "No recipes using this platform, skipping rest of job." + # echo "skip_build=true" >> $GITHUB_OUTPUT + # fi + + # - name: set path + # run: echo "/opt/mambaforge/bin" >> $GITHUB_PATH + + # - name: Fetch conda install script + # if: steps.additional_platforms.outputs.skip_build != 'true' + # run: | + # wget https://raw.githubusercontent.com/bioconda/bioconda-common/master/{install-and-set-up-conda,configure-conda,common}.sh + + # - name: Set up bioconda-utils + # if: steps.additional_platforms.outputs.skip_build != 'true' + # run: bash install-and-set-up-conda.sh + + # - name: Configure conda + # if: steps.additional_platforms.outputs.skip_build != 'true' + # run: bash configure-conda.sh + + # - name: Build and Test + # if: steps.additional_platforms.outputs.skip_build != 'true' + # env: + # # Mimic circleci + # OSTYPE: "darwin" + # CI: "true" + # run: | + # set -xe + # eval "$(conda shell.bash hook)" + # conda activate bioconda + # source common.sh + # # Sets up OSX SDK + # run_conda_forge_build_setup + + # if [ -z "$GITHUB_BASE_REF" ] ; then + # export GITHUB_BASE_REF="master" + # fi + # git fetch origin "$GITHUB_BASE_REF" + + # bioconda-utils build recipes config.yml \ + # --lint --git-range origin/"$GITHUB_BASE_REF" HEAD + + # - name: Prepare artifacts + # if: steps.additional_platforms.outputs.skip_build != 'true' + # run: | + # ( + # rm -rf /tmp/artifacts + # mkdir -p /tmp/artifacts/packages + # cd /opt/mambaforge/envs/bioconda/conda-bld || exit 0 + # find -name .cache | xargs rm -rf || true + # for n in index.html channeldata.json osx-arm64 noarch; do + # cp -rv $n /tmp/artifacts/packages || true + # done + # ) || true + + # - name: Archive packages + # if: steps.additional_platforms.outputs.skip_build != 'true' + # uses: actions/upload-artifact@v4 + # with: + # name: osx-arm64-packages + # path: | + # /tmp/artifacts diff --git a/.github/workflows/master.yml b/.github/workflows/master.yml index 7e237b314da22..243e3a6ac1dd3 100644 --- a/.github/workflows/master.yml +++ b/.github/workflows/master.yml @@ -44,16 +44,12 @@ jobs: set -ex eval "$(conda shell.bash hook)" conda activate bioconda - docker pull quay.io/dpryan79/mulled_container:latest - # bioconda-utils handle-merged-pr recipes config.yml \ - # --repo bioconda/bioconda-recipes \ - # --git-range ${BUILD_SOURCEVERSION}~1 ${BUILD_SOURCEVERSION} \ - # --quay-upload-target biocontainers \ - # --fallback build - bioconda-utils build recipes config.yml \ + bioconda-utils handle-merged-pr recipes config.yml \ + --repo bioconda/bioconda-recipes \ --git-range ${GITHUB_SHA}~1 ${GITHUB_SHA} \ - --docker --mulled-test --anaconda-upload --mulled-upload-target biocontainers - docker rmi quay.io/dpryan79/mulled_container:latest + --quay-upload-target biocontainers \ + --fallback build \ + --artifact-source github-actions build-osx-64: name: OSX-64 Upload @@ -99,74 +95,75 @@ jobs: # Sets up OSX SDK run_conda_forge_build_setup - # bioconda-utils handle-merged-pr recipes config.yml \ - # --repo bioconda/bioconda-recipes \ - # --git-range ${BUILD_SOURCEVERSION}~1 ${BUILD_SOURCEVERSION} \ - # --fallback build - bioconda-utils build recipes config.yml \ - --anaconda-upload --git-range ${GITHUB_SHA}~1 ${GITHUB_SHA} - - build_and_upload-osx-arm64: - name: OSX-ARM64 Upload - if: github.repository == 'bioconda/bioconda-recipes' - runs-on: macOS-14 # M1 - strategy: - fail-fast: false - max-parallel: 4 - steps: - - uses: actions/checkout@v4 - with: - fetch-depth: 0 - - # bail if there's no osx-arm64 recipes - - name: Check for Additional Platforms - id: additional_platforms - run: | - result=$(./scripts/check-for-additional-platforms.sh "${GITHUB_SHA}~1 ${GITHUB_SHA}" "build_and_upload" "${GITHUB_JOB}") - if [[ ${result} != "build" ]] - then - echo "No recipes using this platform, skipping rest of job." - echo "skip_build=true" >> $GITHUB_OUTPUT - fi - - - name: set path - run: | - echo "/opt/mambaforge/bin" >> $GITHUB_PATH - - - name: Fetch conda install script - if: steps.additional_platforms.outputs.skip_build != 'true' - run: | - wget https://raw.githubusercontent.com/bioconda/bioconda-common/master/{install-and-set-up-conda,configure-conda,common}.sh - - - name: Set up bioconda-utils - if: steps.additional_platforms.outputs.skip_build != 'true' - run: bash install-and-set-up-conda.sh - - - name: Configure conda - if: steps.additional_platforms.outputs.skip_build != 'true' - run: bash configure-conda.sh - - - name: Build and Upload - if: steps.additional_platforms.outputs.skip_build != 'true' - env: - QUAY_LOGIN: ${{ secrets.QUAY_LOGIN }} - QUAY_OAUTH_TOKEN: ${{ secrets.QUAY_OAUTH_TOKEN }} - ANACONDA_TOKEN: ${{ secrets.ANACONDA_TOKEN }} - INVOLUCRO_AUTH: ${{ secrets.INVOLUCRO_AUTH }} - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - # Mimic circleci - OSTYPE: "darwin" - CI: "true" - run: | - set -xe - eval "$(conda shell.bash hook)" - conda activate bioconda - source common.sh - # Sets up OSX SDK - run_conda_forge_build_setup - bioconda-utils handle-merged-pr recipes config.yml \ - --repo bioconda/bioconda-recipes \ - --git-range ${GITHUB_SHA}~1 ${GITHUB_SHA} \ - --fallback build \ - --artifact-source github-actions + --repo bioconda/bioconda-recipes \ + --git-range ${GITHUB_SHA}~1 ${GITHUB_SHA} \ + --fallback build \ + --artifact-source github-actions + + + # Disabled due to concurrency limits on GHA for OSX. osx-arm64 builds are on CircleCI. + # build_and_upload-osx-arm64: + # name: OSX-ARM64 Upload + # if: github.repository == 'bioconda/bioconda-recipes' + # runs-on: macOS-14 # M1 + # strategy: + # fail-fast: false + # max-parallel: 4 + # steps: + # - uses: actions/checkout@v4 + # with: + # fetch-depth: 0 + + # # bail if there's no osx-arm64 recipes + # - name: Check for Additional Platforms + # id: additional_platforms + # run: | + # result=$(./scripts/check-for-additional-platforms.sh "${GITHUB_SHA}~1 ${GITHUB_SHA}" "build_and_upload" "${GITHUB_JOB}") + # if [[ ${result} != "build" ]] + # then + # echo "No recipes using this platform, skipping rest of job." + # echo "skip_build=true" >> $GITHUB_OUTPUT + # fi + + # - name: set path + # run: | + # echo "/opt/mambaforge/bin" >> $GITHUB_PATH + + # - name: Fetch conda install script + # if: steps.additional_platforms.outputs.skip_build != 'true' + # run: | + # wget https://raw.githubusercontent.com/bioconda/bioconda-common/master/{install-and-set-up-conda,configure-conda,common}.sh + + # - name: Set up bioconda-utils + # if: steps.additional_platforms.outputs.skip_build != 'true' + # run: bash install-and-set-up-conda.sh + + # - name: Configure conda + # if: steps.additional_platforms.outputs.skip_build != 'true' + # run: bash configure-conda.sh + + # - name: Build and Upload + # if: steps.additional_platforms.outputs.skip_build != 'true' + # env: + # QUAY_LOGIN: ${{ secrets.QUAY_LOGIN }} + # QUAY_OAUTH_TOKEN: ${{ secrets.QUAY_OAUTH_TOKEN }} + # ANACONDA_TOKEN: ${{ secrets.ANACONDA_TOKEN }} + # INVOLUCRO_AUTH: ${{ secrets.INVOLUCRO_AUTH }} + # GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} + # # Mimic circleci + # OSTYPE: "darwin" + # CI: "true" + # run: | + # set -xe + # eval "$(conda shell.bash hook)" + # conda activate bioconda + # source common.sh + # # Sets up OSX SDK + # run_conda_forge_build_setup + + # bioconda-utils handle-merged-pr recipes config.yml \ + # --repo bioconda/bioconda-recipes \ + # --git-range ${GITHUB_SHA}~1 ${GITHUB_SHA} \ + # --fallback build \ + # --artifact-source github-actions diff --git a/azure-pipeline-master.yml b/azure-pipeline-master.yml index 68f8bd157bc35..904519f9f3082 100644 --- a/azure-pipeline-master.yml +++ b/azure-pipeline-master.yml @@ -1,6 +1,8 @@ +# Disable Azure checks in favor of GitHub Actions due to memory issues pr: none -trigger: - - master +trigger: none +# trigger: +# - master jobs: - job: "build_and_push_linux" @@ -39,11 +41,7 @@ jobs: bioconda-utils handle-merged-pr recipes config.yml \ --repo bioconda/bioconda-recipes \ --git-range $(Build.SourceVersion)~1 $(Build.SourceVersion) \ - --quay-upload-target biocontainers \ - --fallback build - #bioconda-utils build recipes config.yml \ - # --git-range $(Build.SourceVersion)~1 $(Build.SourceVersion) \ - # --docker --mulled-test --anaconda-upload --mulled-upload-target biocontainers + --quay-upload-target biocontainers env: QUAY_LOGIN: $(QUAY_LOGIN) diff --git a/azure-pipeline.yml b/azure-pipeline.yml index 10df61e7f2a5e..f39c53d4110f9 100644 --- a/azure-pipeline.yml +++ b/azure-pipeline.yml @@ -1,10 +1,12 @@ -pr: - autoCancel: true -trigger: - branches: - exclude: - - master - - "*" +# Disable Azure checks in favor of GitHub Actions due to memory issues +# pr: +# autoCancel: true +trigger: none +# trigger: + # branches: + # exclude: + # - master + # - "*" stages: - stage: "lint" diff --git a/recipes/kmer-jellyfish/build.sh b/recipes/kmer-jellyfish/build.sh index d80b1f2cbe9b7..d64bbe1f11fdd 100644 --- a/recipes/kmer-jellyfish/build.sh +++ b/recipes/kmer-jellyfish/build.sh @@ -1,11 +1,16 @@ #!/bin/bash -euo -./configure --prefix=${PREFIX} --enable-python-binding --with-sse CXX="${CXX}" \ - CXXFLAGS="${CXXFLAGS} -O3" CPPFLAGS="${CPPFLAGS} -I${PREFIX}/include" \ - LDFLAGS="${LDFLAGS} -L${PREFIX}/lib" +export INCLUDES="-I${PREFIX}/include" +export LIBPATH="-L${PREFIX}/lib" +export LDFLAGS="${LDFLAGS} -L${PREFIX}/lib" +export CXXFLAGS="${CXXFLAGS} -O3 -I${PREFIX}/include" -make -j ${CPU_COUNT} +./configure --prefix="${PREFIX}" --enable-python-binding --with-sse CXX="${CXX}" \ + CXXFLAGS="${CXXFLAGS}" CPPFLAGS="${CPPFLAGS} -O3 -I${PREFIX}/include" \ + LDFLAGS="${LDFLAGS} -Wl,-rpath,${PREFIX}/lib" + +make -j"${CPU_COUNT}" make install -make check -j ${CPU_COUNT} +#make check -j"${CPU_COUNT}" cd swig/python -pip install . --prefix=$PREFIX +${PYTHON} -m pip install . --no-deps --no-build-isolation --no-cache-dir -vvv diff --git a/recipes/kmer-jellyfish/meta.yaml b/recipes/kmer-jellyfish/meta.yaml index 3c7f76dafe597..d349363ebfb1d 100644 --- a/recipes/kmer-jellyfish/meta.yaml +++ b/recipes/kmer-jellyfish/meta.yaml @@ -10,7 +10,8 @@ source: sha256: ee032b57257948ca0f0610883099267572c91a635eecbd88ae5d8974c2430fcd build: - number: 3 + number: 4 + skip: True # [py < 38] run_exports: - {{ pin_subpackage("kmer-jellyfish", max_pin="x") }} @@ -18,10 +19,13 @@ requirements: build: - {{ compiler('cxx') }} - make + - pkg-config host: - - python >=3.8 + - python + - pip + - yaggo run: - - python >=3.8 + - python test: commands: @@ -33,11 +37,14 @@ about: home: "https://genome.umd.edu/jellyfish.html" license: "GPL-3.0-or-later" license_family: GPL3 + license_file: "LICENSE-GPL-3.0" summary: "Jellyfish is a tool for fast, memory-efficient counting of k-mers in DNA. A k-mer is a substring of length k, and counting the occurrences of all such substrings is a central step in many analyses of DNA sequence." dev_url: "https://github.com/gmarcais/Jellyfish" doc_url: "https://genome.umd.edu/docs/JellyfishUserGuide.pdf" extra: + additional-platforms: + - linux-aarch64 identifiers: - biotools:jellyfish - doi:10.1093/bioinformatics/btr011 diff --git a/recipes/piawka/meta.yaml b/recipes/piawka/meta.yaml index 873fd2896a466..537b4d0c0d15a 100644 --- a/recipes/piawka/meta.yaml +++ b/recipes/piawka/meta.yaml @@ -1,5 +1,5 @@ {% set name = "piawka" %} -{% set version = "0.8.6" %} +{% set version = "0.8.7" %} package: name: {{ name|lower }} @@ -7,7 +7,7 @@ package: source: url: https://github.com/novikovalab/{{ name }}/archive/refs/tags/{{ version }}.tar.gz - sha256: 5da0029ef43fbe159052e5523bcd7db69a4566bf8268fcd2db44d91521e028f6 + sha256: 7fc2e1ae564264342cef6cc54a35d8b6796482476553e3e2bb867931f310b4b6 build: noarch: generic