diff --git a/.azure-pipelines/azure-pipelines-linux.yml b/.azure-pipelines/azure-pipelines-linux.yml index 5a9256e..7932850 100755 --- a/.azure-pipelines/azure-pipelines-linux.yml +++ b/.azure-pipelines/azure-pipelines-linux.yml @@ -8,26 +8,47 @@ jobs: vmImage: ubuntu-latest strategy: matrix: - linux_64_cuda_compiler_version12.6cxx_compiler_version13python3.10.____cpython: - CONFIG: linux_64_cuda_compiler_version12.6cxx_compiler_version13python3.10.____cpython + linux_64_c_compiler_version13cuda_compiler_version12.6cxx_compiler_version13python3.10.____cpython: + CONFIG: linux_64_c_compiler_version13cuda_compiler_version12.6cxx_compiler_version13python3.10.____cpython UPLOAD_PACKAGES: 'True' DOCKER_IMAGE: quay.io/condaforge/linux-anvil-x86_64:alma9 - linux_64_cuda_compiler_version12.6cxx_compiler_version13python3.11.____cpython: - CONFIG: linux_64_cuda_compiler_version12.6cxx_compiler_version13python3.11.____cpython + linux_64_c_compiler_version13cuda_compiler_version12.6cxx_compiler_version13python3.11.____cpython: + CONFIG: linux_64_c_compiler_version13cuda_compiler_version12.6cxx_compiler_version13python3.11.____cpython UPLOAD_PACKAGES: 'True' DOCKER_IMAGE: quay.io/condaforge/linux-anvil-x86_64:alma9 - linux_64_cuda_compiler_version12.6cxx_compiler_version13python3.12.____cpython: - CONFIG: linux_64_cuda_compiler_version12.6cxx_compiler_version13python3.12.____cpython + linux_64_c_compiler_version13cuda_compiler_version12.6cxx_compiler_version13python3.12.____cpython: + CONFIG: linux_64_c_compiler_version13cuda_compiler_version12.6cxx_compiler_version13python3.12.____cpython UPLOAD_PACKAGES: 'True' DOCKER_IMAGE: quay.io/condaforge/linux-anvil-x86_64:alma9 - linux_64_cuda_compiler_version12.6cxx_compiler_version13python3.13.____cp313: - CONFIG: linux_64_cuda_compiler_version12.6cxx_compiler_version13python3.13.____cp313 + linux_64_c_compiler_version13cuda_compiler_version12.6cxx_compiler_version13python3.13.____cp313: + CONFIG: linux_64_c_compiler_version13cuda_compiler_version12.6cxx_compiler_version13python3.13.____cp313 UPLOAD_PACKAGES: 'True' DOCKER_IMAGE: quay.io/condaforge/linux-anvil-x86_64:alma9 timeoutInMinutes: 360 variables: {} steps: + - script: | + sudo mkdir -p /opt/empty_dir || true + for d in \ + /opt/ghc \ + /opt/hostedtoolcache \ + /usr/lib/jvm \ + /usr/local/.ghcup \ + /usr/local/lib/android \ + /usr/local/share/powershell \ + /usr/share/dotnet \ + /usr/share/swift \ + ; do + sudo rsync --stats -a --delete /opt/empty_dir/ $d || true + done + sudo apt-get purge -y -f firefox \ + google-chrome-stable \ + microsoft-edge-stable + sudo apt-get autoremove -y >& /dev/null + sudo apt-get autoclean -y >& /dev/null + df -h + displayName: Manage disk space # configure qemu binfmt-misc running. This allows us to run docker containers # embedded qemu-static - script: | diff --git a/.ci_support/linux_64_cuda_compiler_version12.6cxx_compiler_version13python3.10.____cpython.yaml b/.ci_support/linux_64_c_compiler_version13cuda_compiler_version12.6cxx_compiler_version13python3.10.____cpython.yaml similarity index 83% rename from .ci_support/linux_64_cuda_compiler_version12.6cxx_compiler_version13python3.10.____cpython.yaml rename to .ci_support/linux_64_c_compiler_version13cuda_compiler_version12.6cxx_compiler_version13python3.10.____cpython.yaml index d22a952..4843e52 100644 --- a/.ci_support/linux_64_cuda_compiler_version12.6cxx_compiler_version13python3.10.____cpython.yaml +++ b/.ci_support/linux_64_c_compiler_version13cuda_compiler_version12.6cxx_compiler_version13python3.10.____cpython.yaml @@ -1,3 +1,7 @@ +c_compiler: +- gcc +c_compiler_version: +- '13' c_stdlib: - sysroot c_stdlib_version: @@ -27,6 +31,7 @@ python: target_platform: - linux-64 zip_keys: -- - cxx_compiler_version +- - c_compiler_version + - cxx_compiler_version - c_stdlib_version - cuda_compiler_version diff --git a/.ci_support/linux_64_cuda_compiler_version12.6cxx_compiler_version13python3.11.____cpython.yaml b/.ci_support/linux_64_c_compiler_version13cuda_compiler_version12.6cxx_compiler_version13python3.11.____cpython.yaml similarity index 83% rename from .ci_support/linux_64_cuda_compiler_version12.6cxx_compiler_version13python3.11.____cpython.yaml rename to .ci_support/linux_64_c_compiler_version13cuda_compiler_version12.6cxx_compiler_version13python3.11.____cpython.yaml index 2f8ebfc..145cbe3 100644 --- a/.ci_support/linux_64_cuda_compiler_version12.6cxx_compiler_version13python3.11.____cpython.yaml +++ b/.ci_support/linux_64_c_compiler_version13cuda_compiler_version12.6cxx_compiler_version13python3.11.____cpython.yaml @@ -1,3 +1,7 @@ +c_compiler: +- gcc +c_compiler_version: +- '13' c_stdlib: - sysroot c_stdlib_version: @@ -27,6 +31,7 @@ python: target_platform: - linux-64 zip_keys: -- - cxx_compiler_version +- - c_compiler_version + - cxx_compiler_version - c_stdlib_version - cuda_compiler_version diff --git a/.ci_support/linux_64_cuda_compiler_version12.6cxx_compiler_version13python3.12.____cpython.yaml b/.ci_support/linux_64_c_compiler_version13cuda_compiler_version12.6cxx_compiler_version13python3.12.____cpython.yaml similarity index 83% rename from .ci_support/linux_64_cuda_compiler_version12.6cxx_compiler_version13python3.12.____cpython.yaml rename to .ci_support/linux_64_c_compiler_version13cuda_compiler_version12.6cxx_compiler_version13python3.12.____cpython.yaml index f9ae85e..5378c4e 100644 --- a/.ci_support/linux_64_cuda_compiler_version12.6cxx_compiler_version13python3.12.____cpython.yaml +++ b/.ci_support/linux_64_c_compiler_version13cuda_compiler_version12.6cxx_compiler_version13python3.12.____cpython.yaml @@ -1,3 +1,7 @@ +c_compiler: +- gcc +c_compiler_version: +- '13' c_stdlib: - sysroot c_stdlib_version: @@ -27,6 +31,7 @@ python: target_platform: - linux-64 zip_keys: -- - cxx_compiler_version +- - c_compiler_version + - cxx_compiler_version - c_stdlib_version - cuda_compiler_version diff --git a/.ci_support/linux_64_cuda_compiler_version12.6cxx_compiler_version13python3.13.____cp313.yaml b/.ci_support/linux_64_c_compiler_version13cuda_compiler_version12.6cxx_compiler_version13python3.13.____cp313.yaml similarity index 83% rename from .ci_support/linux_64_cuda_compiler_version12.6cxx_compiler_version13python3.13.____cp313.yaml rename to .ci_support/linux_64_c_compiler_version13cuda_compiler_version12.6cxx_compiler_version13python3.13.____cp313.yaml index dc66bb8..76b75d5 100644 --- a/.ci_support/linux_64_cuda_compiler_version12.6cxx_compiler_version13python3.13.____cp313.yaml +++ b/.ci_support/linux_64_c_compiler_version13cuda_compiler_version12.6cxx_compiler_version13python3.13.____cp313.yaml @@ -1,3 +1,7 @@ +c_compiler: +- gcc +c_compiler_version: +- '13' c_stdlib: - sysroot c_stdlib_version: @@ -27,6 +31,7 @@ python: target_platform: - linux-64 zip_keys: -- - cxx_compiler_version +- - c_compiler_version + - cxx_compiler_version - c_stdlib_version - cuda_compiler_version diff --git a/.github/CODEOWNERS b/.github/CODEOWNERS index 8c8c873..122116a 100644 --- a/.github/CODEOWNERS +++ b/.github/CODEOWNERS @@ -1 +1 @@ -* @timkpaine \ No newline at end of file +* @timkpaine @weiji14 \ No newline at end of file diff --git a/.scripts/build_steps.sh b/.scripts/build_steps.sh index 250a5e2..5c71bce 100755 --- a/.scripts/build_steps.sh +++ b/.scripts/build_steps.sh @@ -35,7 +35,7 @@ mv /opt/conda/conda-meta/history /opt/conda/conda-meta/history.$(date +%Y-%m-%d- echo > /opt/conda/conda-meta/history micromamba install --root-prefix ~/.conda --prefix /opt/conda \ --yes --override-channels --channel conda-forge --strict-channel-priority \ - pip python=3.12 conda-build conda-forge-ci-setup=4 "conda-build>=24.1" + pip rattler-build conda-forge-ci-setup=4 "conda-build>=24.1" export CONDA_LIBMAMBA_SOLVER_NO_CHANNELS_FROM_INSTALLED=1 # set up the condarc @@ -57,20 +57,16 @@ if [[ -f "${FEEDSTOCK_ROOT}/LICENSE.txt" ]]; then 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}" - fi - conda debug "${RECIPE_ROOT}" -m "${CI_SUPPORT}/${CONFIG}.yaml" \ - ${EXTRA_CB_OPTIONS:-} \ - --clobber-file "${CI_SUPPORT}/clobber_${CONFIG}.yaml" - - # Drop into an interactive shell - /bin/bash + echo "rattler-build currently doesn't support debug mode" else - conda-build "${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:-}" + + rattler-build build --recipe "${RECIPE_ROOT}" \ + -m "${CI_SUPPORT}/${CONFIG}.yaml" \ + ${EXTRA_CB_OPTIONS:-} \ + --target-platform "${HOST_PLATFORM}" \ + --extra-meta flow_run_id="${flow_run_id:-}" \ + --extra-meta remote_url="${remote_url:-}" \ + --extra-meta sha="${sha:-}" ( startgroup "Inspecting artifacts" ) 2> /dev/null # inspect_artifacts was only added in conda-forge-ci-setup 4.9.4 diff --git a/README.md b/README.md index ccda15e..dc77025 100644 --- a/README.md +++ b/README.md @@ -27,31 +27,31 @@ Current build status - + - + - + - + @@ -184,4 +184,5 @@ Feedstock Maintainers ===================== * [@timkpaine](https://github.com/timkpaine/) +* [@weiji14](https://github.com/weiji14/) diff --git a/conda-forge.yml b/conda-forge.yml index e30df6f..1ba88eb 100644 --- a/conda-forge.yml +++ b/conda-forge.yml @@ -1,6 +1,9 @@ +azure: + free_disk_space: true github: branch_name: main tooling_branch_name: main conda_build: error_overlinking: true +conda_build_tool: rattler-build conda_forge_output_validation: true diff --git a/recipe/meta.yaml b/recipe/meta.yaml deleted file mode 100644 index 87d7212..0000000 --- a/recipe/meta.yaml +++ /dev/null @@ -1,64 +0,0 @@ -{% set name = "mamba-ssm" %} -{% set version = "2.2.5" %} - -package: - name: {{ name|lower }} - version: {{ version }} - -source: - url: https://pypi.org/packages/source/{{ name[0] }}/{{ name }}/mamba_ssm-{{ version }}.tar.gz - sha256: 5055c8e631a22bb3cfc9958828a7a57ea14deef2ab2a98dcf425a27c87dcf6a7 - -build: - number: 0 - skip: true # [cuda_compiler_version == "None" or not linux] - script: - - export MAMBA_FORCE_BUILD=TRUE - - export MAMBA_FORCE_CXX11_ABI=TRUE - - export MAMBA_SKIP_CUDA_BUILD=FALSE - - sed -i.bak 's@"ninja"@#"ninja"@g' setup.py - - sed -i.bak 's@"ninja"@#"ninja"@g' pyproject.toml - - {{ PYTHON }} -m pip install . -vv --no-deps --no-build-isolation - -requirements: - build: - - {{ compiler('cxx') }} - - {{ stdlib('c') }} - - {{ compiler('cuda') }} - - ninja - host: - - python - - setuptools >=61.0.0 - - wheel - - pytorch 2.7.* - - packaging - - pip - - cuda-cudart-dev - run: - - python - - pytorch 2.7.* - - triton - - einops - - transformers - - packaging - - setuptools >=61.0.0 - - causal-conv1d >=1.5.2 - -test: - # Need a GPU to import mamba_ssm - # imports: - # - mamba_ssm - commands: - - pip check - requires: - - pip - -about: - home: https://github.com/state-spaces/mamba - summary: Mamba state-space model - license: Apache-2.0 - license_file: LICENSE - -extra: - recipe-maintainers: - - timkpaine diff --git a/recipe/recipe.yaml b/recipe/recipe.yaml new file mode 100644 index 0000000..c17eef3 --- /dev/null +++ b/recipe/recipe.yaml @@ -0,0 +1,74 @@ +schema_version: 1 + +context: + name: mamba-ssm + version: 2.2.5 + +package: + name: ${{ name|lower }} + version: ${{ version }} + +source: + url: https://github.com/state-spaces/mamba/archive/refs/tags/v${{ version }}.tar.gz + sha256: 1e072841619af9c171709b2c6ff17daa0d9bf7caf0fcb083f5c11754b63c6cdb + +build: + number: 1 + script: + env: + MAMBA_FORCE_BUILD: "TRUE" + content: + - sed -i.bak 's@"ninja"@#"ninja"@g' setup.py + - sed -i.bak 's@"ninja"@#"ninja"@g' pyproject.toml + - ${{ PYTHON }} -m pip install . -vv --no-deps --no-build-isolation + skip: + # mamba-ssm requires CUDA (or ROCm) GPU + - cuda_compiler_version == "None" or not linux + +requirements: + build: + - ${{ compiler('c') }} + - ${{ compiler('cxx') }} + - ${{ compiler('cuda') }} + - ${{ stdlib('c') }} + host: + - cuda-version ==${{ cuda_compiler_version }} + - ninja + - packaging + - pip + - python + - pytorch * cuda* + - setuptools >=61.0.0 + - triton + - wheel + run: + - causal-conv1d >=1.5.2 + - einops + - packaging + - python + - pytorch + - setuptools >=61.0.0 + - transformers + +tests: + # Need a GPU to import mamba_ssm, can re-enable when pytorch depends on triton>=3.4.0 + # containing the https://github.com/triton-lang/triton/pull/6570 bugfix + # - python: + # imports: + # - mamba_ssm + - requirements: + run: + - pip + script: + - pip check + +about: + homepage: https://github.com/state-spaces/mamba + summary: Mamba state-space model + license: Apache-2.0 + license_file: LICENSE + +extra: + recipe-maintainers: + - timkpaine + - weiji14
VariantStatus
linux_64_cuda_compiler_version12.6cxx_compiler_version13python3.10.____cpythonlinux_64_c_compiler_version13cuda_compiler_version12.6cxx_compiler_version13python3.10.____cpython - variant + variant
linux_64_cuda_compiler_version12.6cxx_compiler_version13python3.11.____cpythonlinux_64_c_compiler_version13cuda_compiler_version12.6cxx_compiler_version13python3.11.____cpython - variant + variant
linux_64_cuda_compiler_version12.6cxx_compiler_version13python3.12.____cpythonlinux_64_c_compiler_version13cuda_compiler_version12.6cxx_compiler_version13python3.12.____cpython - variant + variant
linux_64_cuda_compiler_version12.6cxx_compiler_version13python3.13.____cp313linux_64_c_compiler_version13cuda_compiler_version12.6cxx_compiler_version13python3.13.____cp313 - variant + variant