├── .github └── CODEOWNERS ├── recipe ├── run_test.bat ├── yum_requirements.txt ├── conda_build_config.yaml ├── run_test.sh ├── bld.bat ├── build.sh └── meta.yaml ├── conda-forge.yml ├── .ci_support ├── README ├── win_64_python3.10.____cpythonvariantall.yaml ├── win_64_python3.11.____cpythonvariantall.yaml ├── win_64_python3.12.____cpythonvariantall.yaml ├── win_64_python3.9.____cpythonvariantall.yaml ├── win_64_python3.10.____cpythonvariantnovtk.yaml ├── win_64_python3.11.____cpythonvariantnovtk.yaml ├── win_64_python3.12.____cpythonvariantnovtk.yaml ├── win_64_python3.9.____cpythonvariantnovtk.yaml ├── linux_64_python3.10.____cpythonvariantall.yaml ├── linux_64_python3.11.____cpythonvariantall.yaml ├── linux_64_python3.12.____cpythonvariantall.yaml ├── linux_64_python3.9.____cpythonvariantall.yaml ├── linux_64_python3.10.____cpythonvariantnovtk.yaml ├── linux_64_python3.11.____cpythonvariantnovtk.yaml ├── linux_64_python3.12.____cpythonvariantnovtk.yaml ├── linux_64_python3.9.____cpythonvariantnovtk.yaml ├── osx_64_python3.10.____cpythonvariantall.yaml ├── osx_64_python3.11.____cpythonvariantall.yaml ├── osx_64_python3.12.____cpythonvariantall.yaml ├── osx_64_python3.9.____cpythonvariantall.yaml ├── osx_arm64_python3.9.____cpythonvariantall.yaml ├── osx_64_python3.10.____cpythonvariantnovtk.yaml ├── osx_64_python3.11.____cpythonvariantnovtk.yaml ├── osx_64_python3.12.____cpythonvariantnovtk.yaml ├── osx_64_python3.9.____cpythonvariantnovtk.yaml ├── osx_arm64_python3.10.____cpythonvariantall.yaml ├── osx_arm64_python3.10.____cpythonvariantnovtk.yaml ├── osx_arm64_python3.11.____cpythonvariantall.yaml ├── osx_arm64_python3.11.____cpythonvariantnovtk.yaml ├── osx_arm64_python3.12.____cpythonvariantall.yaml ├── osx_arm64_python3.12.____cpythonvariantnovtk.yaml ├── osx_arm64_python3.9.____cpythonvariantnovtk.yaml ├── linux_aarch64_python3.9.____cpythonvariantall.yaml ├── linux_aarch64_python3.10.____cpythonvariantall.yaml ├── linux_aarch64_python3.11.____cpythonvariantall.yaml ├── linux_aarch64_python3.12.____cpythonvariantall.yaml ├── linux_aarch64_python3.9.____cpythonvariantnovtk.yaml ├── linux_aarch64_python3.10.____cpythonvariantnovtk.yaml ├── linux_aarch64_python3.11.____cpythonvariantnovtk.yaml ├── linux_aarch64_python3.12.____cpythonvariantnovtk.yaml └── migrations │ └── numpy2.yaml ├── .circleci └── config.yml ├── .gitignore ├── .gitattributes ├── .scripts ├── logging_utils.sh ├── run_docker_build.sh ├── run_osx_build.sh ├── build_steps.sh └── run_win_build.bat ├── azure-pipelines.yml ├── LICENSE.txt ├── .azure-pipelines ├── azure-pipelines-win.yml ├── azure-pipelines-osx.yml └── azure-pipelines-linux.yml └── README.md /.github/CODEOWNERS: -------------------------------------------------------------------------------- 1 | * @looooo -------------------------------------------------------------------------------- /recipe/run_test.bat: -------------------------------------------------------------------------------- 1 | cd test 2 | pytest -sv 3 | -------------------------------------------------------------------------------- /recipe/yum_requirements.txt: -------------------------------------------------------------------------------- 1 | mesa-libGLU-devel -------------------------------------------------------------------------------- /recipe/conda_build_config.yaml: -------------------------------------------------------------------------------- 1 | variant: 2 | - novtk 3 | - all -------------------------------------------------------------------------------- /recipe/run_test.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | if [ "$(uname)" == "Linux" ]; then 3 | cd test 4 | pytest -sv -k "not test_array1_of_gp and not test_array2_of_gp and not test_surface_derivative_eval" 5 | mypy test_mypy_classic_occ_bottle.py 6 | fi 7 | -------------------------------------------------------------------------------- /conda-forge.yml: -------------------------------------------------------------------------------- 1 | build_platform: 2 | linux_aarch64: linux_64 3 | osx_arm64: osx_64 4 | conda_build: 5 | pkg_format: '2' 6 | conda_forge_output_validation: true 7 | github: 8 | branch_name: main 9 | tooling_branch_name: main 10 | test: native_and_emulated 11 | -------------------------------------------------------------------------------- /.ci_support/README: -------------------------------------------------------------------------------- 1 | This file is automatically generated by conda-smithy. If any 2 | particular build configuration is expected, but it is not found, 3 | please make sure all dependencies are satisfiable. To add/modify any 4 | matrix elements, you should create/change conda-smithy's input 5 | recipe/conda_build_config.yaml and re-render the recipe, rather than 6 | editing these files directly. 7 | -------------------------------------------------------------------------------- /.ci_support/win_64_python3.10.____cpythonvariantall.yaml: -------------------------------------------------------------------------------- 1 | c_stdlib: 2 | - vs 3 | channel_sources: 4 | - conda-forge 5 | channel_targets: 6 | - conda-forge main 7 | cxx_compiler: 8 | - vs2019 9 | numpy: 10 | - '2.0' 11 | pin_run_as_build: 12 | python: 13 | min_pin: x.x 14 | max_pin: x.x 15 | python: 16 | - 3.10.* *_cpython 17 | target_platform: 18 | - win-64 19 | variant: 20 | - all 21 | zip_keys: 22 | - - python 23 | - numpy 24 | -------------------------------------------------------------------------------- /.ci_support/win_64_python3.11.____cpythonvariantall.yaml: -------------------------------------------------------------------------------- 1 | c_stdlib: 2 | - vs 3 | channel_sources: 4 | - conda-forge 5 | channel_targets: 6 | - conda-forge main 7 | cxx_compiler: 8 | - vs2019 9 | numpy: 10 | - '2.0' 11 | pin_run_as_build: 12 | python: 13 | min_pin: x.x 14 | max_pin: x.x 15 | python: 16 | - 3.11.* *_cpython 17 | target_platform: 18 | - win-64 19 | variant: 20 | - all 21 | zip_keys: 22 | - - python 23 | - numpy 24 | -------------------------------------------------------------------------------- /.ci_support/win_64_python3.12.____cpythonvariantall.yaml: -------------------------------------------------------------------------------- 1 | c_stdlib: 2 | - vs 3 | channel_sources: 4 | - conda-forge 5 | channel_targets: 6 | - conda-forge main 7 | cxx_compiler: 8 | - vs2019 9 | numpy: 10 | - '2.0' 11 | pin_run_as_build: 12 | python: 13 | min_pin: x.x 14 | max_pin: x.x 15 | python: 16 | - 3.12.* *_cpython 17 | target_platform: 18 | - win-64 19 | variant: 20 | - all 21 | zip_keys: 22 | - - python 23 | - numpy 24 | -------------------------------------------------------------------------------- /.ci_support/win_64_python3.9.____cpythonvariantall.yaml: -------------------------------------------------------------------------------- 1 | c_stdlib: 2 | - vs 3 | channel_sources: 4 | - conda-forge 5 | channel_targets: 6 | - conda-forge main 7 | cxx_compiler: 8 | - vs2019 9 | numpy: 10 | - '2.0' 11 | pin_run_as_build: 12 | python: 13 | min_pin: x.x 14 | max_pin: x.x 15 | python: 16 | - 3.9.* *_cpython 17 | target_platform: 18 | - win-64 19 | variant: 20 | - all 21 | zip_keys: 22 | - - python 23 | - numpy 24 | -------------------------------------------------------------------------------- /.ci_support/win_64_python3.10.____cpythonvariantnovtk.yaml: -------------------------------------------------------------------------------- 1 | c_stdlib: 2 | - vs 3 | channel_sources: 4 | - conda-forge 5 | channel_targets: 6 | - conda-forge main 7 | cxx_compiler: 8 | - vs2019 9 | numpy: 10 | - '2.0' 11 | pin_run_as_build: 12 | python: 13 | min_pin: x.x 14 | max_pin: x.x 15 | python: 16 | - 3.10.* *_cpython 17 | target_platform: 18 | - win-64 19 | variant: 20 | - novtk 21 | zip_keys: 22 | - - python 23 | - numpy 24 | -------------------------------------------------------------------------------- /.ci_support/win_64_python3.11.____cpythonvariantnovtk.yaml: -------------------------------------------------------------------------------- 1 | c_stdlib: 2 | - vs 3 | channel_sources: 4 | - conda-forge 5 | channel_targets: 6 | - conda-forge main 7 | cxx_compiler: 8 | - vs2019 9 | numpy: 10 | - '2.0' 11 | pin_run_as_build: 12 | python: 13 | min_pin: x.x 14 | max_pin: x.x 15 | python: 16 | - 3.11.* *_cpython 17 | target_platform: 18 | - win-64 19 | variant: 20 | - novtk 21 | zip_keys: 22 | - - python 23 | - numpy 24 | -------------------------------------------------------------------------------- /.ci_support/win_64_python3.12.____cpythonvariantnovtk.yaml: -------------------------------------------------------------------------------- 1 | c_stdlib: 2 | - vs 3 | channel_sources: 4 | - conda-forge 5 | channel_targets: 6 | - conda-forge main 7 | cxx_compiler: 8 | - vs2019 9 | numpy: 10 | - '2.0' 11 | pin_run_as_build: 12 | python: 13 | min_pin: x.x 14 | max_pin: x.x 15 | python: 16 | - 3.12.* *_cpython 17 | target_platform: 18 | - win-64 19 | variant: 20 | - novtk 21 | zip_keys: 22 | - - python 23 | - numpy 24 | -------------------------------------------------------------------------------- /.ci_support/win_64_python3.9.____cpythonvariantnovtk.yaml: -------------------------------------------------------------------------------- 1 | c_stdlib: 2 | - vs 3 | channel_sources: 4 | - conda-forge 5 | channel_targets: 6 | - conda-forge main 7 | cxx_compiler: 8 | - vs2019 9 | numpy: 10 | - '2.0' 11 | pin_run_as_build: 12 | python: 13 | min_pin: x.x 14 | max_pin: x.x 15 | python: 16 | - 3.9.* *_cpython 17 | target_platform: 18 | - win-64 19 | variant: 20 | - novtk 21 | zip_keys: 22 | - - python 23 | - numpy 24 | -------------------------------------------------------------------------------- /recipe/bld.bat: -------------------------------------------------------------------------------- 1 | mkdir build 2 | cd build 3 | 4 | cmake -G "Ninja" ^ 5 | -D CMAKE_INSTALL_PREFIX:FILEPATH="%LIBRARY_PREFIX%" ^ 6 | -D CMAKE_BUILD_TYPE:STRING=Release ^ 7 | -D Python3_FIND_STRATEGY:STRING=LOCATION ^ 8 | -D Python3_FIND_REGISTRY:STRING=NEVER ^ 9 | -D SWIG_HIDE_WARNINGS:BOOL=ON ^ 10 | -D PYTHONOCC_MESHDS_NUMPY=ON ^ 11 | .. 12 | 13 | if errorlevel 1 exit 1 14 | 15 | ninja install 16 | if errorlevel 1 exit 1 17 | -------------------------------------------------------------------------------- /recipe/build.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | 3 | mkdir build 4 | cd build 5 | 6 | cmake ${CMAKE_ARGS} -G Ninja \ 7 | -D CMAKE_INSTALL_PREFIX:FILEPATH=$PREFIX \ 8 | -D CMAKE_BUILD_TYPE:STRING=Release \ 9 | -D Python3_FIND_STRATEGY:STRING=LOCATION \ 10 | -D Python3_FIND_FRAMEWORK:STRING=NEVER \ 11 | -D SWIG_HIDE_WARNINGS:BOOL=ON \ 12 | -D PYTHONOCC_INSTALL_DIRECTORY:FILEPATH=$SP_DIR/OCC \ 13 | -D PYTHONOCC_MESHDS_NUMPY:BOOL=ON \ 14 | -D Python3_NumPy_INCLUDE_DIR=$SP_DIR/numpy/_core/include \ 15 | .. 16 | 17 | ninja install 18 | -------------------------------------------------------------------------------- /.ci_support/linux_64_python3.10.____cpythonvariantall.yaml: -------------------------------------------------------------------------------- 1 | c_stdlib: 2 | - sysroot 3 | c_stdlib_version: 4 | - '2.17' 5 | cdt_name: 6 | - conda 7 | channel_sources: 8 | - conda-forge 9 | channel_targets: 10 | - conda-forge main 11 | cxx_compiler: 12 | - gxx 13 | cxx_compiler_version: 14 | - '13' 15 | docker_image: 16 | - quay.io/condaforge/linux-anvil-cos7-x86_64 17 | numpy: 18 | - '2.0' 19 | pin_run_as_build: 20 | python: 21 | min_pin: x.x 22 | max_pin: x.x 23 | python: 24 | - 3.10.* *_cpython 25 | target_platform: 26 | - linux-64 27 | variant: 28 | - all 29 | zip_keys: 30 | - - python 31 | - numpy 32 | -------------------------------------------------------------------------------- /.ci_support/linux_64_python3.11.____cpythonvariantall.yaml: -------------------------------------------------------------------------------- 1 | c_stdlib: 2 | - sysroot 3 | c_stdlib_version: 4 | - '2.17' 5 | cdt_name: 6 | - conda 7 | channel_sources: 8 | - conda-forge 9 | channel_targets: 10 | - conda-forge main 11 | cxx_compiler: 12 | - gxx 13 | cxx_compiler_version: 14 | - '13' 15 | docker_image: 16 | - quay.io/condaforge/linux-anvil-cos7-x86_64 17 | numpy: 18 | - '2.0' 19 | pin_run_as_build: 20 | python: 21 | min_pin: x.x 22 | max_pin: x.x 23 | python: 24 | - 3.11.* *_cpython 25 | target_platform: 26 | - linux-64 27 | variant: 28 | - all 29 | zip_keys: 30 | - - python 31 | - numpy 32 | -------------------------------------------------------------------------------- /.ci_support/linux_64_python3.12.____cpythonvariantall.yaml: -------------------------------------------------------------------------------- 1 | c_stdlib: 2 | - sysroot 3 | c_stdlib_version: 4 | - '2.17' 5 | cdt_name: 6 | - conda 7 | channel_sources: 8 | - conda-forge 9 | channel_targets: 10 | - conda-forge main 11 | cxx_compiler: 12 | - gxx 13 | cxx_compiler_version: 14 | - '13' 15 | docker_image: 16 | - quay.io/condaforge/linux-anvil-cos7-x86_64 17 | numpy: 18 | - '2.0' 19 | pin_run_as_build: 20 | python: 21 | min_pin: x.x 22 | max_pin: x.x 23 | python: 24 | - 3.12.* *_cpython 25 | target_platform: 26 | - linux-64 27 | variant: 28 | - all 29 | zip_keys: 30 | - - python 31 | - numpy 32 | -------------------------------------------------------------------------------- /.ci_support/linux_64_python3.9.____cpythonvariantall.yaml: -------------------------------------------------------------------------------- 1 | c_stdlib: 2 | - sysroot 3 | c_stdlib_version: 4 | - '2.17' 5 | cdt_name: 6 | - conda 7 | channel_sources: 8 | - conda-forge 9 | channel_targets: 10 | - conda-forge main 11 | cxx_compiler: 12 | - gxx 13 | cxx_compiler_version: 14 | - '13' 15 | docker_image: 16 | - quay.io/condaforge/linux-anvil-cos7-x86_64 17 | numpy: 18 | - '2.0' 19 | pin_run_as_build: 20 | python: 21 | min_pin: x.x 22 | max_pin: x.x 23 | python: 24 | - 3.9.* *_cpython 25 | target_platform: 26 | - linux-64 27 | variant: 28 | - all 29 | zip_keys: 30 | - - python 31 | - numpy 32 | -------------------------------------------------------------------------------- /.ci_support/linux_64_python3.10.____cpythonvariantnovtk.yaml: -------------------------------------------------------------------------------- 1 | c_stdlib: 2 | - sysroot 3 | c_stdlib_version: 4 | - '2.17' 5 | cdt_name: 6 | - conda 7 | channel_sources: 8 | - conda-forge 9 | channel_targets: 10 | - conda-forge main 11 | cxx_compiler: 12 | - gxx 13 | cxx_compiler_version: 14 | - '13' 15 | docker_image: 16 | - quay.io/condaforge/linux-anvil-cos7-x86_64 17 | numpy: 18 | - '2.0' 19 | pin_run_as_build: 20 | python: 21 | min_pin: x.x 22 | max_pin: x.x 23 | python: 24 | - 3.10.* *_cpython 25 | target_platform: 26 | - linux-64 27 | variant: 28 | - novtk 29 | zip_keys: 30 | - - python 31 | - numpy 32 | -------------------------------------------------------------------------------- /.ci_support/linux_64_python3.11.____cpythonvariantnovtk.yaml: -------------------------------------------------------------------------------- 1 | c_stdlib: 2 | - sysroot 3 | c_stdlib_version: 4 | - '2.17' 5 | cdt_name: 6 | - conda 7 | channel_sources: 8 | - conda-forge 9 | channel_targets: 10 | - conda-forge main 11 | cxx_compiler: 12 | - gxx 13 | cxx_compiler_version: 14 | - '13' 15 | docker_image: 16 | - quay.io/condaforge/linux-anvil-cos7-x86_64 17 | numpy: 18 | - '2.0' 19 | pin_run_as_build: 20 | python: 21 | min_pin: x.x 22 | max_pin: x.x 23 | python: 24 | - 3.11.* *_cpython 25 | target_platform: 26 | - linux-64 27 | variant: 28 | - novtk 29 | zip_keys: 30 | - - python 31 | - numpy 32 | -------------------------------------------------------------------------------- /.ci_support/linux_64_python3.12.____cpythonvariantnovtk.yaml: -------------------------------------------------------------------------------- 1 | c_stdlib: 2 | - sysroot 3 | c_stdlib_version: 4 | - '2.17' 5 | cdt_name: 6 | - conda 7 | channel_sources: 8 | - conda-forge 9 | channel_targets: 10 | - conda-forge main 11 | cxx_compiler: 12 | - gxx 13 | cxx_compiler_version: 14 | - '13' 15 | docker_image: 16 | - quay.io/condaforge/linux-anvil-cos7-x86_64 17 | numpy: 18 | - '2.0' 19 | pin_run_as_build: 20 | python: 21 | min_pin: x.x 22 | max_pin: x.x 23 | python: 24 | - 3.12.* *_cpython 25 | target_platform: 26 | - linux-64 27 | variant: 28 | - novtk 29 | zip_keys: 30 | - - python 31 | - numpy 32 | -------------------------------------------------------------------------------- /.ci_support/linux_64_python3.9.____cpythonvariantnovtk.yaml: -------------------------------------------------------------------------------- 1 | c_stdlib: 2 | - sysroot 3 | c_stdlib_version: 4 | - '2.17' 5 | cdt_name: 6 | - conda 7 | channel_sources: 8 | - conda-forge 9 | channel_targets: 10 | - conda-forge main 11 | cxx_compiler: 12 | - gxx 13 | cxx_compiler_version: 14 | - '13' 15 | docker_image: 16 | - quay.io/condaforge/linux-anvil-cos7-x86_64 17 | numpy: 18 | - '2.0' 19 | pin_run_as_build: 20 | python: 21 | min_pin: x.x 22 | max_pin: x.x 23 | python: 24 | - 3.9.* *_cpython 25 | target_platform: 26 | - linux-64 27 | variant: 28 | - novtk 29 | zip_keys: 30 | - - python 31 | - numpy 32 | -------------------------------------------------------------------------------- /.ci_support/osx_64_python3.10.____cpythonvariantall.yaml: -------------------------------------------------------------------------------- 1 | MACOSX_DEPLOYMENT_TARGET: 2 | - '10.13' 3 | MACOSX_SDK_VERSION: 4 | - '10.13' 5 | c_stdlib: 6 | - macosx_deployment_target 7 | c_stdlib_version: 8 | - '10.13' 9 | channel_sources: 10 | - conda-forge 11 | channel_targets: 12 | - conda-forge main 13 | cxx_compiler: 14 | - clangxx 15 | cxx_compiler_version: 16 | - '18' 17 | macos_machine: 18 | - x86_64-apple-darwin13.4.0 19 | numpy: 20 | - '2.0' 21 | pin_run_as_build: 22 | python: 23 | min_pin: x.x 24 | max_pin: x.x 25 | python: 26 | - 3.10.* *_cpython 27 | target_platform: 28 | - osx-64 29 | variant: 30 | - all 31 | zip_keys: 32 | - - python 33 | - numpy 34 | -------------------------------------------------------------------------------- /.ci_support/osx_64_python3.11.____cpythonvariantall.yaml: -------------------------------------------------------------------------------- 1 | MACOSX_DEPLOYMENT_TARGET: 2 | - '10.13' 3 | MACOSX_SDK_VERSION: 4 | - '10.13' 5 | c_stdlib: 6 | - macosx_deployment_target 7 | c_stdlib_version: 8 | - '10.13' 9 | channel_sources: 10 | - conda-forge 11 | channel_targets: 12 | - conda-forge main 13 | cxx_compiler: 14 | - clangxx 15 | cxx_compiler_version: 16 | - '18' 17 | macos_machine: 18 | - x86_64-apple-darwin13.4.0 19 | numpy: 20 | - '2.0' 21 | pin_run_as_build: 22 | python: 23 | min_pin: x.x 24 | max_pin: x.x 25 | python: 26 | - 3.11.* *_cpython 27 | target_platform: 28 | - osx-64 29 | variant: 30 | - all 31 | zip_keys: 32 | - - python 33 | - numpy 34 | -------------------------------------------------------------------------------- /.ci_support/osx_64_python3.12.____cpythonvariantall.yaml: -------------------------------------------------------------------------------- 1 | MACOSX_DEPLOYMENT_TARGET: 2 | - '10.13' 3 | MACOSX_SDK_VERSION: 4 | - '10.13' 5 | c_stdlib: 6 | - macosx_deployment_target 7 | c_stdlib_version: 8 | - '10.13' 9 | channel_sources: 10 | - conda-forge 11 | channel_targets: 12 | - conda-forge main 13 | cxx_compiler: 14 | - clangxx 15 | cxx_compiler_version: 16 | - '18' 17 | macos_machine: 18 | - x86_64-apple-darwin13.4.0 19 | numpy: 20 | - '2.0' 21 | pin_run_as_build: 22 | python: 23 | min_pin: x.x 24 | max_pin: x.x 25 | python: 26 | - 3.12.* *_cpython 27 | target_platform: 28 | - osx-64 29 | variant: 30 | - all 31 | zip_keys: 32 | - - python 33 | - numpy 34 | -------------------------------------------------------------------------------- /.ci_support/osx_64_python3.9.____cpythonvariantall.yaml: -------------------------------------------------------------------------------- 1 | MACOSX_DEPLOYMENT_TARGET: 2 | - '10.13' 3 | MACOSX_SDK_VERSION: 4 | - '10.13' 5 | c_stdlib: 6 | - macosx_deployment_target 7 | c_stdlib_version: 8 | - '10.13' 9 | channel_sources: 10 | - conda-forge 11 | channel_targets: 12 | - conda-forge main 13 | cxx_compiler: 14 | - clangxx 15 | cxx_compiler_version: 16 | - '18' 17 | macos_machine: 18 | - x86_64-apple-darwin13.4.0 19 | numpy: 20 | - '2.0' 21 | pin_run_as_build: 22 | python: 23 | min_pin: x.x 24 | max_pin: x.x 25 | python: 26 | - 3.9.* *_cpython 27 | target_platform: 28 | - osx-64 29 | variant: 30 | - all 31 | zip_keys: 32 | - - python 33 | - numpy 34 | -------------------------------------------------------------------------------- /.ci_support/osx_arm64_python3.9.____cpythonvariantall.yaml: -------------------------------------------------------------------------------- 1 | MACOSX_DEPLOYMENT_TARGET: 2 | - '11.0' 3 | MACOSX_SDK_VERSION: 4 | - '11.0' 5 | c_stdlib: 6 | - macosx_deployment_target 7 | c_stdlib_version: 8 | - '11.0' 9 | channel_sources: 10 | - conda-forge 11 | channel_targets: 12 | - conda-forge main 13 | cxx_compiler: 14 | - clangxx 15 | cxx_compiler_version: 16 | - '18' 17 | macos_machine: 18 | - arm64-apple-darwin20.0.0 19 | numpy: 20 | - '2.0' 21 | pin_run_as_build: 22 | python: 23 | min_pin: x.x 24 | max_pin: x.x 25 | python: 26 | - 3.9.* *_cpython 27 | target_platform: 28 | - osx-arm64 29 | variant: 30 | - all 31 | zip_keys: 32 | - - python 33 | - numpy 34 | -------------------------------------------------------------------------------- /.ci_support/osx_64_python3.10.____cpythonvariantnovtk.yaml: -------------------------------------------------------------------------------- 1 | MACOSX_DEPLOYMENT_TARGET: 2 | - '10.13' 3 | MACOSX_SDK_VERSION: 4 | - '10.13' 5 | c_stdlib: 6 | - macosx_deployment_target 7 | c_stdlib_version: 8 | - '10.13' 9 | channel_sources: 10 | - conda-forge 11 | channel_targets: 12 | - conda-forge main 13 | cxx_compiler: 14 | - clangxx 15 | cxx_compiler_version: 16 | - '18' 17 | macos_machine: 18 | - x86_64-apple-darwin13.4.0 19 | numpy: 20 | - '2.0' 21 | pin_run_as_build: 22 | python: 23 | min_pin: x.x 24 | max_pin: x.x 25 | python: 26 | - 3.10.* *_cpython 27 | target_platform: 28 | - osx-64 29 | variant: 30 | - novtk 31 | zip_keys: 32 | - - python 33 | - numpy 34 | -------------------------------------------------------------------------------- /.ci_support/osx_64_python3.11.____cpythonvariantnovtk.yaml: -------------------------------------------------------------------------------- 1 | MACOSX_DEPLOYMENT_TARGET: 2 | - '10.13' 3 | MACOSX_SDK_VERSION: 4 | - '10.13' 5 | c_stdlib: 6 | - macosx_deployment_target 7 | c_stdlib_version: 8 | - '10.13' 9 | channel_sources: 10 | - conda-forge 11 | channel_targets: 12 | - conda-forge main 13 | cxx_compiler: 14 | - clangxx 15 | cxx_compiler_version: 16 | - '18' 17 | macos_machine: 18 | - x86_64-apple-darwin13.4.0 19 | numpy: 20 | - '2.0' 21 | pin_run_as_build: 22 | python: 23 | min_pin: x.x 24 | max_pin: x.x 25 | python: 26 | - 3.11.* *_cpython 27 | target_platform: 28 | - osx-64 29 | variant: 30 | - novtk 31 | zip_keys: 32 | - - python 33 | - numpy 34 | -------------------------------------------------------------------------------- /.ci_support/osx_64_python3.12.____cpythonvariantnovtk.yaml: -------------------------------------------------------------------------------- 1 | MACOSX_DEPLOYMENT_TARGET: 2 | - '10.13' 3 | MACOSX_SDK_VERSION: 4 | - '10.13' 5 | c_stdlib: 6 | - macosx_deployment_target 7 | c_stdlib_version: 8 | - '10.13' 9 | channel_sources: 10 | - conda-forge 11 | channel_targets: 12 | - conda-forge main 13 | cxx_compiler: 14 | - clangxx 15 | cxx_compiler_version: 16 | - '18' 17 | macos_machine: 18 | - x86_64-apple-darwin13.4.0 19 | numpy: 20 | - '2.0' 21 | pin_run_as_build: 22 | python: 23 | min_pin: x.x 24 | max_pin: x.x 25 | python: 26 | - 3.12.* *_cpython 27 | target_platform: 28 | - osx-64 29 | variant: 30 | - novtk 31 | zip_keys: 32 | - - python 33 | - numpy 34 | -------------------------------------------------------------------------------- /.ci_support/osx_64_python3.9.____cpythonvariantnovtk.yaml: -------------------------------------------------------------------------------- 1 | MACOSX_DEPLOYMENT_TARGET: 2 | - '10.13' 3 | MACOSX_SDK_VERSION: 4 | - '10.13' 5 | c_stdlib: 6 | - macosx_deployment_target 7 | c_stdlib_version: 8 | - '10.13' 9 | channel_sources: 10 | - conda-forge 11 | channel_targets: 12 | - conda-forge main 13 | cxx_compiler: 14 | - clangxx 15 | cxx_compiler_version: 16 | - '18' 17 | macos_machine: 18 | - x86_64-apple-darwin13.4.0 19 | numpy: 20 | - '2.0' 21 | pin_run_as_build: 22 | python: 23 | min_pin: x.x 24 | max_pin: x.x 25 | python: 26 | - 3.9.* *_cpython 27 | target_platform: 28 | - osx-64 29 | variant: 30 | - novtk 31 | zip_keys: 32 | - - python 33 | - numpy 34 | -------------------------------------------------------------------------------- /.ci_support/osx_arm64_python3.10.____cpythonvariantall.yaml: -------------------------------------------------------------------------------- 1 | MACOSX_DEPLOYMENT_TARGET: 2 | - '11.0' 3 | MACOSX_SDK_VERSION: 4 | - '11.0' 5 | c_stdlib: 6 | - macosx_deployment_target 7 | c_stdlib_version: 8 | - '11.0' 9 | channel_sources: 10 | - conda-forge 11 | channel_targets: 12 | - conda-forge main 13 | cxx_compiler: 14 | - clangxx 15 | cxx_compiler_version: 16 | - '18' 17 | macos_machine: 18 | - arm64-apple-darwin20.0.0 19 | numpy: 20 | - '2.0' 21 | pin_run_as_build: 22 | python: 23 | min_pin: x.x 24 | max_pin: x.x 25 | python: 26 | - 3.10.* *_cpython 27 | target_platform: 28 | - osx-arm64 29 | variant: 30 | - all 31 | zip_keys: 32 | - - python 33 | - numpy 34 | -------------------------------------------------------------------------------- /.ci_support/osx_arm64_python3.10.____cpythonvariantnovtk.yaml: -------------------------------------------------------------------------------- 1 | MACOSX_DEPLOYMENT_TARGET: 2 | - '11.0' 3 | MACOSX_SDK_VERSION: 4 | - '11.0' 5 | c_stdlib: 6 | - macosx_deployment_target 7 | c_stdlib_version: 8 | - '11.0' 9 | channel_sources: 10 | - conda-forge 11 | channel_targets: 12 | - conda-forge main 13 | cxx_compiler: 14 | - clangxx 15 | cxx_compiler_version: 16 | - '18' 17 | macos_machine: 18 | - arm64-apple-darwin20.0.0 19 | numpy: 20 | - '2.0' 21 | pin_run_as_build: 22 | python: 23 | min_pin: x.x 24 | max_pin: x.x 25 | python: 26 | - 3.10.* *_cpython 27 | target_platform: 28 | - osx-arm64 29 | variant: 30 | - novtk 31 | zip_keys: 32 | - - python 33 | - numpy 34 | -------------------------------------------------------------------------------- /.ci_support/osx_arm64_python3.11.____cpythonvariantall.yaml: -------------------------------------------------------------------------------- 1 | MACOSX_DEPLOYMENT_TARGET: 2 | - '11.0' 3 | MACOSX_SDK_VERSION: 4 | - '11.0' 5 | c_stdlib: 6 | - macosx_deployment_target 7 | c_stdlib_version: 8 | - '11.0' 9 | channel_sources: 10 | - conda-forge 11 | channel_targets: 12 | - conda-forge main 13 | cxx_compiler: 14 | - clangxx 15 | cxx_compiler_version: 16 | - '18' 17 | macos_machine: 18 | - arm64-apple-darwin20.0.0 19 | numpy: 20 | - '2.0' 21 | pin_run_as_build: 22 | python: 23 | min_pin: x.x 24 | max_pin: x.x 25 | python: 26 | - 3.11.* *_cpython 27 | target_platform: 28 | - osx-arm64 29 | variant: 30 | - all 31 | zip_keys: 32 | - - python 33 | - numpy 34 | -------------------------------------------------------------------------------- /.ci_support/osx_arm64_python3.11.____cpythonvariantnovtk.yaml: -------------------------------------------------------------------------------- 1 | MACOSX_DEPLOYMENT_TARGET: 2 | - '11.0' 3 | MACOSX_SDK_VERSION: 4 | - '11.0' 5 | c_stdlib: 6 | - macosx_deployment_target 7 | c_stdlib_version: 8 | - '11.0' 9 | channel_sources: 10 | - conda-forge 11 | channel_targets: 12 | - conda-forge main 13 | cxx_compiler: 14 | - clangxx 15 | cxx_compiler_version: 16 | - '18' 17 | macos_machine: 18 | - arm64-apple-darwin20.0.0 19 | numpy: 20 | - '2.0' 21 | pin_run_as_build: 22 | python: 23 | min_pin: x.x 24 | max_pin: x.x 25 | python: 26 | - 3.11.* *_cpython 27 | target_platform: 28 | - osx-arm64 29 | variant: 30 | - novtk 31 | zip_keys: 32 | - - python 33 | - numpy 34 | -------------------------------------------------------------------------------- /.ci_support/osx_arm64_python3.12.____cpythonvariantall.yaml: -------------------------------------------------------------------------------- 1 | MACOSX_DEPLOYMENT_TARGET: 2 | - '11.0' 3 | MACOSX_SDK_VERSION: 4 | - '11.0' 5 | c_stdlib: 6 | - macosx_deployment_target 7 | c_stdlib_version: 8 | - '11.0' 9 | channel_sources: 10 | - conda-forge 11 | channel_targets: 12 | - conda-forge main 13 | cxx_compiler: 14 | - clangxx 15 | cxx_compiler_version: 16 | - '18' 17 | macos_machine: 18 | - arm64-apple-darwin20.0.0 19 | numpy: 20 | - '2.0' 21 | pin_run_as_build: 22 | python: 23 | min_pin: x.x 24 | max_pin: x.x 25 | python: 26 | - 3.12.* *_cpython 27 | target_platform: 28 | - osx-arm64 29 | variant: 30 | - all 31 | zip_keys: 32 | - - python 33 | - numpy 34 | -------------------------------------------------------------------------------- /.ci_support/osx_arm64_python3.12.____cpythonvariantnovtk.yaml: -------------------------------------------------------------------------------- 1 | MACOSX_DEPLOYMENT_TARGET: 2 | - '11.0' 3 | MACOSX_SDK_VERSION: 4 | - '11.0' 5 | c_stdlib: 6 | - macosx_deployment_target 7 | c_stdlib_version: 8 | - '11.0' 9 | channel_sources: 10 | - conda-forge 11 | channel_targets: 12 | - conda-forge main 13 | cxx_compiler: 14 | - clangxx 15 | cxx_compiler_version: 16 | - '18' 17 | macos_machine: 18 | - arm64-apple-darwin20.0.0 19 | numpy: 20 | - '2.0' 21 | pin_run_as_build: 22 | python: 23 | min_pin: x.x 24 | max_pin: x.x 25 | python: 26 | - 3.12.* *_cpython 27 | target_platform: 28 | - osx-arm64 29 | variant: 30 | - novtk 31 | zip_keys: 32 | - - python 33 | - numpy 34 | -------------------------------------------------------------------------------- /.ci_support/osx_arm64_python3.9.____cpythonvariantnovtk.yaml: -------------------------------------------------------------------------------- 1 | MACOSX_DEPLOYMENT_TARGET: 2 | - '11.0' 3 | MACOSX_SDK_VERSION: 4 | - '11.0' 5 | c_stdlib: 6 | - macosx_deployment_target 7 | c_stdlib_version: 8 | - '11.0' 9 | channel_sources: 10 | - conda-forge 11 | channel_targets: 12 | - conda-forge main 13 | cxx_compiler: 14 | - clangxx 15 | cxx_compiler_version: 16 | - '18' 17 | macos_machine: 18 | - arm64-apple-darwin20.0.0 19 | numpy: 20 | - '2.0' 21 | pin_run_as_build: 22 | python: 23 | min_pin: x.x 24 | max_pin: x.x 25 | python: 26 | - 3.9.* *_cpython 27 | target_platform: 28 | - osx-arm64 29 | variant: 30 | - novtk 31 | zip_keys: 32 | - - python 33 | - numpy 34 | -------------------------------------------------------------------------------- /.ci_support/linux_aarch64_python3.9.____cpythonvariantall.yaml: -------------------------------------------------------------------------------- 1 | BUILD: 2 | - aarch64-conda_cos7-linux-gnu 3 | c_stdlib: 4 | - sysroot 5 | c_stdlib_version: 6 | - '2.17' 7 | cdt_arch: 8 | - aarch64 9 | cdt_name: 10 | - conda 11 | channel_sources: 12 | - conda-forge 13 | channel_targets: 14 | - conda-forge main 15 | cxx_compiler: 16 | - gxx 17 | cxx_compiler_version: 18 | - '13' 19 | docker_image: 20 | - quay.io/condaforge/linux-anvil-cos7-x86_64 21 | numpy: 22 | - '2.0' 23 | pin_run_as_build: 24 | python: 25 | min_pin: x.x 26 | max_pin: x.x 27 | python: 28 | - 3.9.* *_cpython 29 | target_platform: 30 | - linux-aarch64 31 | variant: 32 | - all 33 | zip_keys: 34 | - - python 35 | - numpy 36 | -------------------------------------------------------------------------------- /.ci_support/linux_aarch64_python3.10.____cpythonvariantall.yaml: -------------------------------------------------------------------------------- 1 | BUILD: 2 | - aarch64-conda_cos7-linux-gnu 3 | c_stdlib: 4 | - sysroot 5 | c_stdlib_version: 6 | - '2.17' 7 | cdt_arch: 8 | - aarch64 9 | cdt_name: 10 | - conda 11 | channel_sources: 12 | - conda-forge 13 | channel_targets: 14 | - conda-forge main 15 | cxx_compiler: 16 | - gxx 17 | cxx_compiler_version: 18 | - '13' 19 | docker_image: 20 | - quay.io/condaforge/linux-anvil-cos7-x86_64 21 | numpy: 22 | - '2.0' 23 | pin_run_as_build: 24 | python: 25 | min_pin: x.x 26 | max_pin: x.x 27 | python: 28 | - 3.10.* *_cpython 29 | target_platform: 30 | - linux-aarch64 31 | variant: 32 | - all 33 | zip_keys: 34 | - - python 35 | - numpy 36 | -------------------------------------------------------------------------------- /.ci_support/linux_aarch64_python3.11.____cpythonvariantall.yaml: -------------------------------------------------------------------------------- 1 | BUILD: 2 | - aarch64-conda_cos7-linux-gnu 3 | c_stdlib: 4 | - sysroot 5 | c_stdlib_version: 6 | - '2.17' 7 | cdt_arch: 8 | - aarch64 9 | cdt_name: 10 | - conda 11 | channel_sources: 12 | - conda-forge 13 | channel_targets: 14 | - conda-forge main 15 | cxx_compiler: 16 | - gxx 17 | cxx_compiler_version: 18 | - '13' 19 | docker_image: 20 | - quay.io/condaforge/linux-anvil-cos7-x86_64 21 | numpy: 22 | - '2.0' 23 | pin_run_as_build: 24 | python: 25 | min_pin: x.x 26 | max_pin: x.x 27 | python: 28 | - 3.11.* *_cpython 29 | target_platform: 30 | - linux-aarch64 31 | variant: 32 | - all 33 | zip_keys: 34 | - - python 35 | - numpy 36 | -------------------------------------------------------------------------------- /.ci_support/linux_aarch64_python3.12.____cpythonvariantall.yaml: -------------------------------------------------------------------------------- 1 | BUILD: 2 | - aarch64-conda_cos7-linux-gnu 3 | c_stdlib: 4 | - sysroot 5 | c_stdlib_version: 6 | - '2.17' 7 | cdt_arch: 8 | - aarch64 9 | cdt_name: 10 | - conda 11 | channel_sources: 12 | - conda-forge 13 | channel_targets: 14 | - conda-forge main 15 | cxx_compiler: 16 | - gxx 17 | cxx_compiler_version: 18 | - '13' 19 | docker_image: 20 | - quay.io/condaforge/linux-anvil-cos7-x86_64 21 | numpy: 22 | - '2.0' 23 | pin_run_as_build: 24 | python: 25 | min_pin: x.x 26 | max_pin: x.x 27 | python: 28 | - 3.12.* *_cpython 29 | target_platform: 30 | - linux-aarch64 31 | variant: 32 | - all 33 | zip_keys: 34 | - - python 35 | - numpy 36 | -------------------------------------------------------------------------------- /.ci_support/linux_aarch64_python3.9.____cpythonvariantnovtk.yaml: -------------------------------------------------------------------------------- 1 | BUILD: 2 | - aarch64-conda_cos7-linux-gnu 3 | c_stdlib: 4 | - sysroot 5 | c_stdlib_version: 6 | - '2.17' 7 | cdt_arch: 8 | - aarch64 9 | cdt_name: 10 | - conda 11 | channel_sources: 12 | - conda-forge 13 | channel_targets: 14 | - conda-forge main 15 | cxx_compiler: 16 | - gxx 17 | cxx_compiler_version: 18 | - '13' 19 | docker_image: 20 | - quay.io/condaforge/linux-anvil-cos7-x86_64 21 | numpy: 22 | - '2.0' 23 | pin_run_as_build: 24 | python: 25 | min_pin: x.x 26 | max_pin: x.x 27 | python: 28 | - 3.9.* *_cpython 29 | target_platform: 30 | - linux-aarch64 31 | variant: 32 | - novtk 33 | zip_keys: 34 | - - python 35 | - numpy 36 | -------------------------------------------------------------------------------- /.ci_support/linux_aarch64_python3.10.____cpythonvariantnovtk.yaml: -------------------------------------------------------------------------------- 1 | BUILD: 2 | - aarch64-conda_cos7-linux-gnu 3 | c_stdlib: 4 | - sysroot 5 | c_stdlib_version: 6 | - '2.17' 7 | cdt_arch: 8 | - aarch64 9 | cdt_name: 10 | - conda 11 | channel_sources: 12 | - conda-forge 13 | channel_targets: 14 | - conda-forge main 15 | cxx_compiler: 16 | - gxx 17 | cxx_compiler_version: 18 | - '13' 19 | docker_image: 20 | - quay.io/condaforge/linux-anvil-cos7-x86_64 21 | numpy: 22 | - '2.0' 23 | pin_run_as_build: 24 | python: 25 | min_pin: x.x 26 | max_pin: x.x 27 | python: 28 | - 3.10.* *_cpython 29 | target_platform: 30 | - linux-aarch64 31 | variant: 32 | - novtk 33 | zip_keys: 34 | - - python 35 | - numpy 36 | -------------------------------------------------------------------------------- /.ci_support/linux_aarch64_python3.11.____cpythonvariantnovtk.yaml: -------------------------------------------------------------------------------- 1 | BUILD: 2 | - aarch64-conda_cos7-linux-gnu 3 | c_stdlib: 4 | - sysroot 5 | c_stdlib_version: 6 | - '2.17' 7 | cdt_arch: 8 | - aarch64 9 | cdt_name: 10 | - conda 11 | channel_sources: 12 | - conda-forge 13 | channel_targets: 14 | - conda-forge main 15 | cxx_compiler: 16 | - gxx 17 | cxx_compiler_version: 18 | - '13' 19 | docker_image: 20 | - quay.io/condaforge/linux-anvil-cos7-x86_64 21 | numpy: 22 | - '2.0' 23 | pin_run_as_build: 24 | python: 25 | min_pin: x.x 26 | max_pin: x.x 27 | python: 28 | - 3.11.* *_cpython 29 | target_platform: 30 | - linux-aarch64 31 | variant: 32 | - novtk 33 | zip_keys: 34 | - - python 35 | - numpy 36 | -------------------------------------------------------------------------------- /.ci_support/linux_aarch64_python3.12.____cpythonvariantnovtk.yaml: -------------------------------------------------------------------------------- 1 | BUILD: 2 | - aarch64-conda_cos7-linux-gnu 3 | c_stdlib: 4 | - sysroot 5 | c_stdlib_version: 6 | - '2.17' 7 | cdt_arch: 8 | - aarch64 9 | cdt_name: 10 | - conda 11 | channel_sources: 12 | - conda-forge 13 | channel_targets: 14 | - conda-forge main 15 | cxx_compiler: 16 | - gxx 17 | cxx_compiler_version: 18 | - '13' 19 | docker_image: 20 | - quay.io/condaforge/linux-anvil-cos7-x86_64 21 | numpy: 22 | - '2.0' 23 | pin_run_as_build: 24 | python: 25 | min_pin: x.x 26 | max_pin: x.x 27 | python: 28 | - 3.12.* *_cpython 29 | target_platform: 30 | - linux-aarch64 31 | variant: 32 | - novtk 33 | zip_keys: 34 | - - python 35 | - numpy 36 | -------------------------------------------------------------------------------- /.circleci/config.yml: -------------------------------------------------------------------------------- 1 | # This file was generated automatically from conda-smithy. To update this configuration, 2 | # update the conda-forge.yml and/or the recipe/meta.yaml. 3 | # -*- mode: jinja-yaml -*- 4 | 5 | version: 2 6 | 7 | jobs: 8 | build: 9 | working_directory: ~/test 10 | machine: 11 | image: ubuntu-2004:current 12 | steps: 13 | - run: 14 | # The Circle-CI build should not be active, but if this is not true for some reason, do a fast finish. 15 | command: exit 0 16 | 17 | workflows: 18 | version: 2 19 | build_and_test: 20 | jobs: 21 | - build: 22 | filters: 23 | branches: 24 | ignore: 25 | - /.*/ 26 | -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | # User content belongs under recipe/. 2 | # Feedstock configuration goes in `conda-forge.yml` 3 | # Everything else is managed by the conda-smithy rerender process. 4 | # Please do not modify 5 | 6 | # Ignore all files and folders in root 7 | * 8 | !/conda-forge.yml 9 | 10 | # Don't ignore any files/folders if the parent folder is 'un-ignored' 11 | # This also avoids warnings when adding an already-checked file with an ignored parent. 12 | !/**/ 13 | # Don't ignore any files/folders recursively in the following folders 14 | !/recipe/** 15 | !/.ci_support/** 16 | 17 | # Since we ignore files/folders recursively, any folders inside 18 | # build_artifacts gets ignored which trips some build systems. 19 | # To avoid that we 'un-ignore' all files/folders recursively 20 | # and only ignore the root build_artifacts folder. 21 | !/build_artifacts/** 22 | /build_artifacts 23 | 24 | *.pyc 25 | -------------------------------------------------------------------------------- /.gitattributes: -------------------------------------------------------------------------------- 1 | * text=auto 2 | 3 | *.patch binary 4 | *.diff binary 5 | meta.yaml text eol=lf 6 | build.sh text eol=lf 7 | bld.bat text eol=crlf 8 | 9 | # github helper pieces to make some files not show up in diffs automatically 10 | .azure-pipelines/* linguist-generated=true 11 | .circleci/* linguist-generated=true 12 | .ci_support/README linguist-generated=true 13 | .drone/* linguist-generated=true 14 | .drone.yml linguist-generated=true 15 | .github/* linguist-generated=true 16 | .travis/* linguist-generated=true 17 | .appveyor.yml linguist-generated=true 18 | .gitattributes linguist-generated=true 19 | .gitignore linguist-generated=true 20 | .travis.yml linguist-generated=true 21 | .scripts/* linguist-generated=true 22 | .woodpecker.yml linguist-generated=true 23 | /LICENSE.txt linguist-generated=true 24 | /README.md linguist-generated=true 25 | azure-pipelines.yml linguist-generated=true 26 | build-locally.py linguist-generated=true 27 | shippable.yml linguist-generated=true 28 | -------------------------------------------------------------------------------- /.scripts/logging_utils.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | 3 | # Provide a unified interface for the different logging 4 | # utilities CI providers offer. If unavailable, provide 5 | # a compatible fallback (e.g. bare `echo xxxxxx`). 6 | 7 | function startgroup { 8 | # Start a foldable group of log lines 9 | # Pass a single argument, quoted 10 | case ${CI:-} in 11 | azure ) 12 | echo "##[group]$1";; 13 | travis ) 14 | echo "$1" 15 | echo -en 'travis_fold:start:'"${1// /}"'\r';; 16 | github_actions ) 17 | echo "::group::$1";; 18 | * ) 19 | echo "$1";; 20 | esac 21 | } 2> /dev/null 22 | 23 | function endgroup { 24 | # End a foldable group of log lines 25 | # Pass a single argument, quoted 26 | 27 | case ${CI:-} in 28 | azure ) 29 | echo "##[endgroup]";; 30 | travis ) 31 | echo -en 'travis_fold:end:'"${1// /}"'\r';; 32 | github_actions ) 33 | echo "::endgroup::";; 34 | esac 35 | } 2> /dev/null 36 | -------------------------------------------------------------------------------- /azure-pipelines.yml: -------------------------------------------------------------------------------- 1 | # This file was generated automatically from conda-smithy. To update this configuration, 2 | # update the conda-forge.yml and/or the recipe/meta.yaml. 3 | # -*- mode: yaml -*- 4 | 5 | stages: 6 | - stage: Check 7 | jobs: 8 | - job: Skip 9 | pool: 10 | vmImage: 'ubuntu-22.04' 11 | variables: 12 | DECODE_PERCENTS: 'false' 13 | RET: 'true' 14 | steps: 15 | - checkout: self 16 | fetchDepth: '2' 17 | - bash: | 18 | git_log=`git log --max-count=1 --skip=1 --pretty=format:"%B" | tr "\n" " "` 19 | echo "##vso[task.setvariable variable=log]$git_log" 20 | displayName: Obtain commit message 21 | - bash: echo "##vso[task.setvariable variable=RET]false" 22 | condition: and(eq(variables['Build.Reason'], 'PullRequest'), or(contains(variables.log, '[skip azp]'), contains(variables.log, '[azp skip]'), contains(variables.log, '[skip ci]'), contains(variables.log, '[ci skip]'))) 23 | displayName: Skip build? 24 | - bash: echo "##vso[task.setvariable variable=start_main;isOutput=true]$RET" 25 | name: result 26 | displayName: Export result 27 | - stage: Build 28 | condition: and(succeeded(), eq(dependencies.Check.outputs['Skip.result.start_main'], 'true')) 29 | dependsOn: Check 30 | jobs: 31 | - template: ./.azure-pipelines/azure-pipelines-linux.yml 32 | - template: ./.azure-pipelines/azure-pipelines-osx.yml 33 | - template: ./.azure-pipelines/azure-pipelines-win.yml -------------------------------------------------------------------------------- /LICENSE.txt: -------------------------------------------------------------------------------- 1 | BSD-3-Clause license 2 | Copyright (c) 2015-2022, conda-forge contributors 3 | All rights reserved. 4 | 5 | Redistribution and use in source and binary forms, with or without 6 | modification, are permitted provided that the following conditions are met: 7 | 8 | 1. Redistributions of source code must retain the above copyright notice, 9 | this list of conditions and the following disclaimer. 10 | 2. Redistributions in binary form must reproduce the above copyright 11 | notice, this list of conditions and the following disclaimer in the 12 | documentation and/or other materials provided with the distribution. 13 | 3. Neither the name of the copyright holder nor the names of its 14 | contributors may be used to endorse or promote products derived from 15 | this software without specific prior written permission. 16 | 17 | THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" 18 | AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 19 | IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE 20 | ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE FOR 21 | ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 22 | DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR 23 | SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER 24 | CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 25 | LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 26 | OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH 27 | DAMAGE. 28 | -------------------------------------------------------------------------------- /recipe/meta.yaml: -------------------------------------------------------------------------------- 1 | {% set version = "7.8.1.1" %} 2 | {% set occt_version = "7.8.1" %} 3 | {% set build = 0 %} 4 | 5 | # Higher number -> Always prioritize "all" variant over "novtk" variant 6 | {% set build = build + 100 %} # [variant == "novtk"] 7 | {% set build = build + 200 %} # [variant == "all"] 8 | 9 | package: 10 | name: pythonocc-core 11 | version: {{ version }} 12 | 13 | source: 14 | url: https://github.com/tpaviot/pythonocc-core/archive/{{ version }}.tar.gz 15 | sha256: f95f74f7fdf9d2eb1f1a5ff8e26d9f3a47c3ca190b8897f478e3562fcf13ef80 16 | 17 | build: 18 | string: {{ variant }}_h{{ PKG_HASH }}_{{ build }} 19 | number: {{ build }} 20 | 21 | requirements: 22 | build: 23 | - python # [build_platform != target_platform] 24 | - numpy # [build_platform != target_platform] 25 | - cross-python_{{ target_platform }} # [build_platform != target_platform] 26 | - {{ compiler('cxx') }} 27 | - {{ stdlib("c") }} 28 | - {{ cdt('mesa-libgl-devel') }} # [linux] 29 | - {{ cdt('libxi-devel') }} # [linux] 30 | - ninja 31 | - cmake 32 | - swig 4.2.1 33 | host: 34 | - python 35 | - occt {{ occt_version }} *{{ variant }}* 36 | - numpy 37 | run: 38 | - python 39 | - occt {{ occt_version }} *{{ variant }}* 40 | - svgwrite 41 | run_constrained: 42 | - occt {{ occt_version }} *{{ variant }}* 43 | 44 | test: 45 | source_files: 46 | - test 47 | imports: 48 | - OCC 49 | - OCC.Core.BRepPrimAPI 50 | requires: 51 | - pyqt >=5 52 | - pytest 53 | - mypy 54 | 55 | about: 56 | home: https://github.com/tpaviot/pythonocc-core 57 | license: LGPL-3.0-or-later 58 | license_family: LGPL 59 | license_file: LICENSE 60 | summary: python bindings for opencascade (occt) 61 | description: | 62 | pythonocc is a python package whose purpose is 63 | to provide 3D modeling features. It is intended 64 | to CAD/PDM/PLM and BIM related development. 65 | dev_url: https://github.com/tpaviot/pythonocc-core 66 | 67 | extra: 68 | recipe-maintainers: 69 | - looooo 70 | -------------------------------------------------------------------------------- /.azure-pipelines/azure-pipelines-win.yml: -------------------------------------------------------------------------------- 1 | # This file was generated automatically from conda-smithy. To update this configuration, 2 | # update the conda-forge.yml and/or the recipe/meta.yaml. 3 | # -*- mode: yaml -*- 4 | 5 | jobs: 6 | - job: win 7 | pool: 8 | vmImage: windows-2022 9 | strategy: 10 | matrix: 11 | win_64_python3.10.____cpythonvariantall: 12 | CONFIG: win_64_python3.10.____cpythonvariantall 13 | UPLOAD_PACKAGES: 'True' 14 | win_64_python3.10.____cpythonvariantnovtk: 15 | CONFIG: win_64_python3.10.____cpythonvariantnovtk 16 | UPLOAD_PACKAGES: 'True' 17 | win_64_python3.11.____cpythonvariantall: 18 | CONFIG: win_64_python3.11.____cpythonvariantall 19 | UPLOAD_PACKAGES: 'True' 20 | win_64_python3.11.____cpythonvariantnovtk: 21 | CONFIG: win_64_python3.11.____cpythonvariantnovtk 22 | UPLOAD_PACKAGES: 'True' 23 | win_64_python3.12.____cpythonvariantall: 24 | CONFIG: win_64_python3.12.____cpythonvariantall 25 | UPLOAD_PACKAGES: 'True' 26 | win_64_python3.12.____cpythonvariantnovtk: 27 | CONFIG: win_64_python3.12.____cpythonvariantnovtk 28 | UPLOAD_PACKAGES: 'True' 29 | win_64_python3.9.____cpythonvariantall: 30 | CONFIG: win_64_python3.9.____cpythonvariantall 31 | UPLOAD_PACKAGES: 'True' 32 | win_64_python3.9.____cpythonvariantnovtk: 33 | CONFIG: win_64_python3.9.____cpythonvariantnovtk 34 | UPLOAD_PACKAGES: 'True' 35 | timeoutInMinutes: 360 36 | variables: 37 | CONDA_BLD_PATH: D:\\bld\\ 38 | MINIFORGE_HOME: D:\Miniforge 39 | UPLOAD_TEMP: D:\\tmp 40 | 41 | steps: 42 | 43 | - script: | 44 | call ".scripts\run_win_build.bat" 45 | displayName: Run Windows build 46 | env: 47 | MINIFORGE_HOME: $(MINIFORGE_HOME) 48 | PYTHONUNBUFFERED: 1 49 | CONFIG: $(CONFIG) 50 | CI: azure 51 | flow_run_id: azure_$(Build.BuildNumber).$(System.JobAttempt) 52 | remote_url: $(Build.Repository.Uri) 53 | sha: $(Build.SourceVersion) 54 | UPLOAD_PACKAGES: $(UPLOAD_PACKAGES) 55 | UPLOAD_TEMP: $(UPLOAD_TEMP) 56 | BINSTAR_TOKEN: $(BINSTAR_TOKEN) 57 | FEEDSTOCK_TOKEN: $(FEEDSTOCK_TOKEN) 58 | STAGING_BINSTAR_TOKEN: $(STAGING_BINSTAR_TOKEN) -------------------------------------------------------------------------------- /.ci_support/migrations/numpy2.yaml: -------------------------------------------------------------------------------- 1 | __migrator: 2 | build_number: 1 3 | kind: version 4 | commit_message: | 5 | Rebuild for numpy 2.0 6 | 7 | TL;DR: The way we build against numpy has changed as of numpy 2.0. This bot 8 | PR has updated the recipe to account for the changes (see below for details). 9 | 10 | The biggest change is that we no longer need to use the oldest available numpy 11 | version at build time in order to support old numpy version at runtime - numpy 12 | will by default use a compatible ABI for the oldest still-supported numpy versions. 13 | 14 | Additionally, we no longer need to use `{{ pin_compatible("numpy") }}` as a 15 | run requirement - this has been handled for more than two years now by a 16 | run-export on the numpy package itself. The migrator will therefore remove 17 | any occurrences of this. 18 | 19 | However, you will still need to add the lower bound for the numpy version, 20 | in line with what the upstream package requires. The default lower bound from 21 | the run-export is `>=1.19`; if your package needs a newer version than that, 22 | please add `numpy >=x.y` under `run:`. 23 | 24 | Finally, by default, building against numpy 2.0 will assume that the package 25 | is compatible with numpy 2.0, which is not necessarily the case. You should 26 | check that the upstream package explicitly supports numpy 2.0, otherwise you 27 | need to add a `- numpy <2.0dev0` run requirement until that happens (check numpy 28 | issue 26191 for an overview of the most important packages). 29 | 30 | ### To-Dos: 31 | * [ ] Match run-requirements for numpy (i.e. check upstream `pyproject.toml` or however the project specifies numpy compatibility) 32 | * If upstream is not yet compatible with numpy 2.0, add `numpy <2.0dev0` upper bound under `run:`. 33 | * If upstream is already compatible with numpy 2.0, double-check their supported numpy versions. 34 | * If upstream requires a minimum numpy version newer than 1.19, you need to add `numpy >=x.y` under `run:`. 35 | * [ ] Remove any remaining occurrences of `{{ pin_compatible("numpy") }}` that the bot may have missed. 36 | 37 | PS. If the build does not compile anymore, this is almost certainly a sign that 38 | the upstream project is not yet ready for numpy 2.0; do not close this PR until 39 | a version compatible with numpy 2.0 has been released upstream and on this 40 | feedstock (in the meantime, you can keep the bot from reopening this PR in 41 | case of git conflicts by marking it as a draft). 42 | 43 | migration_number: 1 44 | 45 | # needs to match length of zip {python, python_impl, numpy} 46 | # as it is in global CBC in order to override it 47 | numpy: 48 | - 2.0 49 | - 2.0 50 | - 2.0 51 | - 2.0 52 | migrator_ts: 1713572489.295986 53 | -------------------------------------------------------------------------------- /.azure-pipelines/azure-pipelines-osx.yml: -------------------------------------------------------------------------------- 1 | # This file was generated automatically from conda-smithy. To update this configuration, 2 | # update the conda-forge.yml and/or the recipe/meta.yaml. 3 | # -*- mode: yaml -*- 4 | 5 | jobs: 6 | - job: osx 7 | pool: 8 | vmImage: macOS-13 9 | strategy: 10 | matrix: 11 | osx_64_python3.10.____cpythonvariantall: 12 | CONFIG: osx_64_python3.10.____cpythonvariantall 13 | UPLOAD_PACKAGES: 'True' 14 | osx_64_python3.10.____cpythonvariantnovtk: 15 | CONFIG: osx_64_python3.10.____cpythonvariantnovtk 16 | UPLOAD_PACKAGES: 'True' 17 | osx_64_python3.11.____cpythonvariantall: 18 | CONFIG: osx_64_python3.11.____cpythonvariantall 19 | UPLOAD_PACKAGES: 'True' 20 | osx_64_python3.11.____cpythonvariantnovtk: 21 | CONFIG: osx_64_python3.11.____cpythonvariantnovtk 22 | UPLOAD_PACKAGES: 'True' 23 | osx_64_python3.12.____cpythonvariantall: 24 | CONFIG: osx_64_python3.12.____cpythonvariantall 25 | UPLOAD_PACKAGES: 'True' 26 | osx_64_python3.12.____cpythonvariantnovtk: 27 | CONFIG: osx_64_python3.12.____cpythonvariantnovtk 28 | UPLOAD_PACKAGES: 'True' 29 | osx_64_python3.9.____cpythonvariantall: 30 | CONFIG: osx_64_python3.9.____cpythonvariantall 31 | UPLOAD_PACKAGES: 'True' 32 | osx_64_python3.9.____cpythonvariantnovtk: 33 | CONFIG: osx_64_python3.9.____cpythonvariantnovtk 34 | UPLOAD_PACKAGES: 'True' 35 | osx_arm64_python3.10.____cpythonvariantall: 36 | CONFIG: osx_arm64_python3.10.____cpythonvariantall 37 | UPLOAD_PACKAGES: 'True' 38 | osx_arm64_python3.10.____cpythonvariantnovtk: 39 | CONFIG: osx_arm64_python3.10.____cpythonvariantnovtk 40 | UPLOAD_PACKAGES: 'True' 41 | osx_arm64_python3.11.____cpythonvariantall: 42 | CONFIG: osx_arm64_python3.11.____cpythonvariantall 43 | UPLOAD_PACKAGES: 'True' 44 | osx_arm64_python3.11.____cpythonvariantnovtk: 45 | CONFIG: osx_arm64_python3.11.____cpythonvariantnovtk 46 | UPLOAD_PACKAGES: 'True' 47 | osx_arm64_python3.12.____cpythonvariantall: 48 | CONFIG: osx_arm64_python3.12.____cpythonvariantall 49 | UPLOAD_PACKAGES: 'True' 50 | osx_arm64_python3.12.____cpythonvariantnovtk: 51 | CONFIG: osx_arm64_python3.12.____cpythonvariantnovtk 52 | UPLOAD_PACKAGES: 'True' 53 | osx_arm64_python3.9.____cpythonvariantall: 54 | CONFIG: osx_arm64_python3.9.____cpythonvariantall 55 | UPLOAD_PACKAGES: 'True' 56 | osx_arm64_python3.9.____cpythonvariantnovtk: 57 | CONFIG: osx_arm64_python3.9.____cpythonvariantnovtk 58 | UPLOAD_PACKAGES: 'True' 59 | timeoutInMinutes: 360 60 | variables: {} 61 | 62 | steps: 63 | # TODO: Fast finish on azure pipelines? 64 | - script: | 65 | export CI=azure 66 | export flow_run_id=azure_$(Build.BuildNumber).$(System.JobAttempt) 67 | export remote_url=$(Build.Repository.Uri) 68 | export sha=$(Build.SourceVersion) 69 | export OSX_FORCE_SDK_DOWNLOAD="1" 70 | export GIT_BRANCH=$BUILD_SOURCEBRANCHNAME 71 | export FEEDSTOCK_NAME=$(basename ${BUILD_REPOSITORY_NAME}) 72 | if [[ "${BUILD_REASON:-}" == "PullRequest" ]]; then 73 | export IS_PR_BUILD="True" 74 | else 75 | export IS_PR_BUILD="False" 76 | fi 77 | ./.scripts/run_osx_build.sh 78 | displayName: Run OSX build 79 | env: 80 | BINSTAR_TOKEN: $(BINSTAR_TOKEN) 81 | FEEDSTOCK_TOKEN: $(FEEDSTOCK_TOKEN) 82 | STAGING_BINSTAR_TOKEN: $(STAGING_BINSTAR_TOKEN) -------------------------------------------------------------------------------- /.scripts/run_docker_build.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | 3 | # PLEASE NOTE: This script has been automatically generated by conda-smithy. Any changes here 4 | # will be lost next time ``conda smithy rerender`` is run. If you would like to make permanent 5 | # changes to this script, consider a proposal to conda-smithy so that other feedstocks can also 6 | # benefit from the improvement. 7 | 8 | source .scripts/logging_utils.sh 9 | 10 | ( startgroup "Configure Docker" ) 2> /dev/null 11 | 12 | set -xeo pipefail 13 | 14 | THISDIR="$( cd "$( dirname "$0" )" >/dev/null && pwd )" 15 | PROVIDER_DIR="$(basename $THISDIR)" 16 | 17 | FEEDSTOCK_ROOT="$( cd "$( dirname "$0" )/.." >/dev/null && pwd )" 18 | RECIPE_ROOT="${FEEDSTOCK_ROOT}/recipe" 19 | 20 | if [ -z ${FEEDSTOCK_NAME} ]; then 21 | export FEEDSTOCK_NAME=$(basename ${FEEDSTOCK_ROOT}) 22 | fi 23 | 24 | if [[ "${sha:-}" == "" ]]; then 25 | pushd "${FEEDSTOCK_ROOT}" 26 | sha=$(git rev-parse HEAD) 27 | popd 28 | fi 29 | 30 | docker info 31 | 32 | # In order for the conda-build process in the container to write to the mounted 33 | # volumes, we need to run with the same id as the host machine, which is 34 | # normally the owner of the mounted volumes, or at least has write permission 35 | export HOST_USER_ID=$(id -u) 36 | # Check if docker-machine is being used (normally on OSX) and get the uid from 37 | # the VM 38 | if hash docker-machine 2> /dev/null && docker-machine active > /dev/null; then 39 | export HOST_USER_ID=$(docker-machine ssh $(docker-machine active) id -u) 40 | fi 41 | 42 | ARTIFACTS="$FEEDSTOCK_ROOT/build_artifacts" 43 | 44 | if [ -z "$CONFIG" ]; then 45 | set +x 46 | FILES=`ls .ci_support/linux_*` 47 | CONFIGS="" 48 | for file in $FILES; do 49 | CONFIGS="${CONFIGS}'${file:12:-5}' or "; 50 | done 51 | echo "Need to set CONFIG env variable. Value can be one of ${CONFIGS:0:-4}" 52 | exit 1 53 | fi 54 | 55 | if [ -z "${DOCKER_IMAGE}" ]; then 56 | SHYAML_INSTALLED="$(shyaml -h || echo NO)" 57 | if [ "${SHYAML_INSTALLED}" == "NO" ]; then 58 | echo "WARNING: DOCKER_IMAGE variable not set and shyaml not installed. Trying to parse with coreutils" 59 | DOCKER_IMAGE=$(cat .ci_support/${CONFIG}.yaml | grep '^docker_image:$' -A 1 | tail -n 1 | cut -b 3-) 60 | if [ "${DOCKER_IMAGE}" = "" ]; then 61 | echo "No docker_image entry found in ${CONFIG}. Falling back to quay.io/condaforge/linux-anvil-comp7" 62 | DOCKER_IMAGE="quay.io/condaforge/linux-anvil-comp7" 63 | fi 64 | else 65 | DOCKER_IMAGE="$(cat "${FEEDSTOCK_ROOT}/.ci_support/${CONFIG}.yaml" | shyaml get-value docker_image.0 quay.io/condaforge/linux-anvil-comp7 )" 66 | fi 67 | fi 68 | 69 | mkdir -p "$ARTIFACTS" 70 | DONE_CANARY="$ARTIFACTS/conda-forge-build-done-${CONFIG}" 71 | rm -f "$DONE_CANARY" 72 | 73 | # Allow people to specify extra default arguments to `docker run` (e.g. `--rm`) 74 | DOCKER_RUN_ARGS="${CONDA_FORGE_DOCKER_RUN_ARGS}" 75 | if [ -z "${CI}" ]; then 76 | DOCKER_RUN_ARGS="-it ${DOCKER_RUN_ARGS}" 77 | fi 78 | 79 | ( endgroup "Configure Docker" ) 2> /dev/null 80 | 81 | ( startgroup "Start Docker" ) 2> /dev/null 82 | 83 | export UPLOAD_PACKAGES="${UPLOAD_PACKAGES:-True}" 84 | export IS_PR_BUILD="${IS_PR_BUILD:-False}" 85 | docker pull "${DOCKER_IMAGE}" 86 | docker run ${DOCKER_RUN_ARGS} \ 87 | -v "${RECIPE_ROOT}":/home/conda/recipe_root:rw,z,delegated \ 88 | -v "${FEEDSTOCK_ROOT}":/home/conda/feedstock_root:rw,z,delegated \ 89 | -e CONFIG \ 90 | -e HOST_USER_ID \ 91 | -e UPLOAD_PACKAGES \ 92 | -e IS_PR_BUILD \ 93 | -e GIT_BRANCH \ 94 | -e UPLOAD_ON_BRANCH \ 95 | -e CI \ 96 | -e FEEDSTOCK_NAME \ 97 | -e CPU_COUNT \ 98 | -e BUILD_WITH_CONDA_DEBUG \ 99 | -e BUILD_OUTPUT_ID \ 100 | -e flow_run_id \ 101 | -e remote_url \ 102 | -e sha \ 103 | -e BINSTAR_TOKEN \ 104 | -e FEEDSTOCK_TOKEN \ 105 | -e STAGING_BINSTAR_TOKEN \ 106 | "${DOCKER_IMAGE}" \ 107 | bash \ 108 | "/home/conda/feedstock_root/${PROVIDER_DIR}/build_steps.sh" 109 | 110 | # verify that the end of the script was reached 111 | test -f "$DONE_CANARY" 112 | 113 | # This closes the last group opened in `build_steps.sh` 114 | ( endgroup "Final checks" ) 2> /dev/null -------------------------------------------------------------------------------- /.scripts/run_osx_build.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | 3 | # -*- mode: jinja-shell -*- 4 | 5 | source .scripts/logging_utils.sh 6 | 7 | set -xe 8 | 9 | MINIFORGE_HOME=${MINIFORGE_HOME:-${HOME}/miniforge3} 10 | MINIFORGE_HOME=${MINIFORGE_HOME%/} # remove trailing slash 11 | 12 | ( startgroup "Provisioning base env with micromamba" ) 2> /dev/null 13 | MICROMAMBA_VERSION="1.5.10-0" 14 | if [[ "$(uname -m)" == "arm64" ]]; then 15 | osx_arch="osx-arm64" 16 | else 17 | osx_arch="osx-64" 18 | fi 19 | MICROMAMBA_URL="https://github.com/mamba-org/micromamba-releases/releases/download/${MICROMAMBA_VERSION}/micromamba-${osx_arch}" 20 | MAMBA_ROOT_PREFIX="${MINIFORGE_HOME}-micromamba-$(date +%s)" 21 | echo "Downloading micromamba ${MICROMAMBA_VERSION}" 22 | micromamba_exe="$(mktemp -d)/micromamba" 23 | curl -L -o "${micromamba_exe}" "${MICROMAMBA_URL}" 24 | chmod +x "${micromamba_exe}" 25 | echo "Creating environment" 26 | "${micromamba_exe}" create --yes --root-prefix "${MAMBA_ROOT_PREFIX}" --prefix "${MINIFORGE_HOME}" \ 27 | --channel conda-forge \ 28 | pip python=3.12 conda-build conda-forge-ci-setup=4 "conda-build>=24.1" 29 | echo "Moving pkgs cache from ${MAMBA_ROOT_PREFIX} to ${MINIFORGE_HOME}" 30 | mv "${MAMBA_ROOT_PREFIX}/pkgs" "${MINIFORGE_HOME}" 31 | echo "Cleaning up micromamba" 32 | rm -rf "${MAMBA_ROOT_PREFIX}" "${micromamba_exe}" || true 33 | ( endgroup "Provisioning base env with micromamba" ) 2> /dev/null 34 | 35 | ( startgroup "Configuring conda" ) 2> /dev/null 36 | echo "Activating environment" 37 | source "${MINIFORGE_HOME}/etc/profile.d/conda.sh" 38 | conda activate base 39 | export CONDA_SOLVER="libmamba" 40 | export CONDA_LIBMAMBA_SOLVER_NO_CHANNELS_FROM_INSTALLED=1 41 | 42 | 43 | 44 | 45 | 46 | echo -e "\n\nSetting up the condarc and mangling the compiler." 47 | setup_conda_rc ./ ./recipe ./.ci_support/${CONFIG}.yaml 48 | 49 | if [[ "${CI:-}" != "" ]]; then 50 | mangle_compiler ./ ./recipe .ci_support/${CONFIG}.yaml 51 | fi 52 | 53 | if [[ "${CI:-}" != "" ]]; then 54 | echo -e "\n\nMangling homebrew in the CI to avoid conflicts." 55 | /usr/bin/sudo mangle_homebrew 56 | /usr/bin/sudo -k 57 | else 58 | echo -e "\n\nNot mangling homebrew as we are not running in CI" 59 | fi 60 | 61 | if [[ "${sha:-}" == "" ]]; then 62 | sha=$(git rev-parse HEAD) 63 | fi 64 | 65 | echo -e "\n\nRunning the build setup script." 66 | source run_conda_forge_build_setup 67 | 68 | 69 | 70 | ( endgroup "Configuring conda" ) 2> /dev/null 71 | 72 | echo -e "\n\nMaking the build clobber file" 73 | make_build_number ./ ./recipe ./.ci_support/${CONFIG}.yaml 74 | 75 | if [[ -f LICENSE.txt ]]; then 76 | cp LICENSE.txt "recipe/recipe-scripts-license.txt" 77 | fi 78 | 79 | if [[ "${BUILD_WITH_CONDA_DEBUG:-0}" == 1 ]]; then 80 | if [[ "x${BUILD_OUTPUT_ID:-}" != "x" ]]; then 81 | EXTRA_CB_OPTIONS="${EXTRA_CB_OPTIONS:-} --output-id ${BUILD_OUTPUT_ID}" 82 | fi 83 | conda debug ./recipe -m ./.ci_support/${CONFIG}.yaml \ 84 | ${EXTRA_CB_OPTIONS:-} \ 85 | --clobber-file ./.ci_support/clobber_${CONFIG}.yaml 86 | 87 | # Drop into an interactive shell 88 | /bin/bash 89 | else 90 | 91 | if [[ "${HOST_PLATFORM}" != "${BUILD_PLATFORM}" ]]; then 92 | EXTRA_CB_OPTIONS="${EXTRA_CB_OPTIONS:-} --no-test" 93 | fi 94 | 95 | conda-build ./recipe -m ./.ci_support/${CONFIG}.yaml \ 96 | --suppress-variables ${EXTRA_CB_OPTIONS:-} \ 97 | --clobber-file ./.ci_support/clobber_${CONFIG}.yaml \ 98 | --extra-meta flow_run_id="$flow_run_id" remote_url="$remote_url" sha="$sha" 99 | 100 | ( startgroup "Inspecting artifacts" ) 2> /dev/null 101 | 102 | # inspect_artifacts was only added in conda-forge-ci-setup 4.9.4 103 | command -v inspect_artifacts >/dev/null 2>&1 && inspect_artifacts --recipe-dir ./recipe -m ./.ci_support/${CONFIG}.yaml || echo "inspect_artifacts needs conda-forge-ci-setup >=4.9.4" 104 | 105 | ( endgroup "Inspecting artifacts" ) 2> /dev/null 106 | ( startgroup "Validating outputs" ) 2> /dev/null 107 | 108 | validate_recipe_outputs "${FEEDSTOCK_NAME}" 109 | 110 | ( endgroup "Validating outputs" ) 2> /dev/null 111 | 112 | ( startgroup "Uploading packages" ) 2> /dev/null 113 | 114 | if [[ "${UPLOAD_PACKAGES}" != "False" ]] && [[ "${IS_PR_BUILD}" == "False" ]]; then 115 | upload_package --validate --feedstock-name="${FEEDSTOCK_NAME}" ./ ./recipe ./.ci_support/${CONFIG}.yaml 116 | fi 117 | 118 | ( endgroup "Uploading packages" ) 2> /dev/null 119 | fi -------------------------------------------------------------------------------- /.scripts/build_steps.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | 3 | # PLEASE NOTE: This script has been automatically generated by conda-smithy. Any changes here 4 | # will be lost next time ``conda smithy rerender`` is run. If you would like to make permanent 5 | # changes to this script, consider a proposal to conda-smithy so that other feedstocks can also 6 | # benefit from the improvement. 7 | 8 | # -*- mode: jinja-shell -*- 9 | 10 | set -xeuo pipefail 11 | export FEEDSTOCK_ROOT="${FEEDSTOCK_ROOT:-/home/conda/feedstock_root}" 12 | source ${FEEDSTOCK_ROOT}/.scripts/logging_utils.sh 13 | 14 | 15 | ( endgroup "Start Docker" ) 2> /dev/null 16 | 17 | ( startgroup "Configuring conda" ) 2> /dev/null 18 | 19 | export PYTHONUNBUFFERED=1 20 | export RECIPE_ROOT="${RECIPE_ROOT:-/home/conda/recipe_root}" 21 | export CI_SUPPORT="${FEEDSTOCK_ROOT}/.ci_support" 22 | export CONFIG_FILE="${CI_SUPPORT}/${CONFIG}.yaml" 23 | 24 | cat >~/.condarc < /opt/conda/conda-meta/history 36 | micromamba install --root-prefix ~/.conda --prefix /opt/conda \ 37 | --yes --override-channels --channel conda-forge --strict-channel-priority \ 38 | pip python=3.12 conda-build conda-forge-ci-setup=4 "conda-build>=24.1" 39 | export CONDA_LIBMAMBA_SOLVER_NO_CHANNELS_FROM_INSTALLED=1 40 | 41 | # set up the condarc 42 | setup_conda_rc "${FEEDSTOCK_ROOT}" "${RECIPE_ROOT}" "${CONFIG_FILE}" 43 | 44 | source run_conda_forge_build_setup 45 | 46 | ( 47 | # Due to https://bugzilla.redhat.com/show_bug.cgi?id=1537564 old versions of rpm 48 | # are drastically slowed down when the number of file descriptors is very high. 49 | # This can be visible during a `yum install` step of a feedstock build. 50 | # => Set a lower limit in a subshell for the `yum install`s only. 51 | ulimit -n 1024 52 | 53 | # Install the yum requirements defined canonically in the 54 | # "recipe/yum_requirements.txt" file. After updating that file, 55 | # run "conda smithy rerender" and this line will be updated 56 | # automatically. 57 | /usr/bin/sudo -n yum install -y mesa-libGLU-devel 58 | ) 59 | 60 | # make the build number clobber 61 | make_build_number "${FEEDSTOCK_ROOT}" "${RECIPE_ROOT}" "${CONFIG_FILE}" 62 | 63 | if [[ "${HOST_PLATFORM}" != "${BUILD_PLATFORM}" ]] && [[ "${HOST_PLATFORM}" != linux-* ]] && [[ "${BUILD_WITH_CONDA_DEBUG:-0}" != 1 ]]; then 64 | EXTRA_CB_OPTIONS="${EXTRA_CB_OPTIONS:-} --no-test" 65 | fi 66 | 67 | 68 | ( endgroup "Configuring conda" ) 2> /dev/null 69 | 70 | if [[ -f "${FEEDSTOCK_ROOT}/LICENSE.txt" ]]; then 71 | cp "${FEEDSTOCK_ROOT}/LICENSE.txt" "${RECIPE_ROOT}/recipe-scripts-license.txt" 72 | fi 73 | 74 | if [[ "${BUILD_WITH_CONDA_DEBUG:-0}" == 1 ]]; then 75 | if [[ "x${BUILD_OUTPUT_ID:-}" != "x" ]]; then 76 | EXTRA_CB_OPTIONS="${EXTRA_CB_OPTIONS:-} --output-id ${BUILD_OUTPUT_ID}" 77 | fi 78 | conda debug "${RECIPE_ROOT}" -m "${CI_SUPPORT}/${CONFIG}.yaml" \ 79 | ${EXTRA_CB_OPTIONS:-} \ 80 | --clobber-file "${CI_SUPPORT}/clobber_${CONFIG}.yaml" 81 | 82 | # Drop into an interactive shell 83 | /bin/bash 84 | else 85 | conda-build "${RECIPE_ROOT}" -m "${CI_SUPPORT}/${CONFIG}.yaml" \ 86 | --suppress-variables ${EXTRA_CB_OPTIONS:-} \ 87 | --clobber-file "${CI_SUPPORT}/clobber_${CONFIG}.yaml" \ 88 | --extra-meta flow_run_id="${flow_run_id:-}" remote_url="${remote_url:-}" sha="${sha:-}" 89 | ( startgroup "Inspecting artifacts" ) 2> /dev/null 90 | 91 | # inspect_artifacts was only added in conda-forge-ci-setup 4.9.4 92 | command -v inspect_artifacts >/dev/null 2>&1 && inspect_artifacts --recipe-dir "${RECIPE_ROOT}" -m "${CONFIG_FILE}" || echo "inspect_artifacts needs conda-forge-ci-setup >=4.9.4" 93 | 94 | ( endgroup "Inspecting artifacts" ) 2> /dev/null 95 | ( startgroup "Validating outputs" ) 2> /dev/null 96 | 97 | validate_recipe_outputs "${FEEDSTOCK_NAME}" 98 | 99 | ( endgroup "Validating outputs" ) 2> /dev/null 100 | 101 | ( startgroup "Uploading packages" ) 2> /dev/null 102 | 103 | if [[ "${UPLOAD_PACKAGES}" != "False" ]] && [[ "${IS_PR_BUILD}" == "False" ]]; then 104 | upload_package --validate --feedstock-name="${FEEDSTOCK_NAME}" "${FEEDSTOCK_ROOT}" "${RECIPE_ROOT}" "${CONFIG_FILE}" 105 | fi 106 | 107 | ( endgroup "Uploading packages" ) 2> /dev/null 108 | fi 109 | 110 | ( startgroup "Final checks" ) 2> /dev/null 111 | 112 | touch "${FEEDSTOCK_ROOT}/build_artifacts/conda-forge-build-done-${CONFIG}" -------------------------------------------------------------------------------- /.azure-pipelines/azure-pipelines-linux.yml: -------------------------------------------------------------------------------- 1 | # This file was generated automatically from conda-smithy. To update this configuration, 2 | # update the conda-forge.yml and/or the recipe/meta.yaml. 3 | # -*- mode: yaml -*- 4 | 5 | jobs: 6 | - job: linux 7 | pool: 8 | vmImage: ubuntu-latest 9 | strategy: 10 | matrix: 11 | linux_64_python3.10.____cpythonvariantall: 12 | CONFIG: linux_64_python3.10.____cpythonvariantall 13 | UPLOAD_PACKAGES: 'True' 14 | DOCKER_IMAGE: quay.io/condaforge/linux-anvil-cos7-x86_64 15 | linux_64_python3.10.____cpythonvariantnovtk: 16 | CONFIG: linux_64_python3.10.____cpythonvariantnovtk 17 | UPLOAD_PACKAGES: 'True' 18 | DOCKER_IMAGE: quay.io/condaforge/linux-anvil-cos7-x86_64 19 | linux_64_python3.11.____cpythonvariantall: 20 | CONFIG: linux_64_python3.11.____cpythonvariantall 21 | UPLOAD_PACKAGES: 'True' 22 | DOCKER_IMAGE: quay.io/condaforge/linux-anvil-cos7-x86_64 23 | linux_64_python3.11.____cpythonvariantnovtk: 24 | CONFIG: linux_64_python3.11.____cpythonvariantnovtk 25 | UPLOAD_PACKAGES: 'True' 26 | DOCKER_IMAGE: quay.io/condaforge/linux-anvil-cos7-x86_64 27 | linux_64_python3.12.____cpythonvariantall: 28 | CONFIG: linux_64_python3.12.____cpythonvariantall 29 | UPLOAD_PACKAGES: 'True' 30 | DOCKER_IMAGE: quay.io/condaforge/linux-anvil-cos7-x86_64 31 | linux_64_python3.12.____cpythonvariantnovtk: 32 | CONFIG: linux_64_python3.12.____cpythonvariantnovtk 33 | UPLOAD_PACKAGES: 'True' 34 | DOCKER_IMAGE: quay.io/condaforge/linux-anvil-cos7-x86_64 35 | linux_64_python3.9.____cpythonvariantall: 36 | CONFIG: linux_64_python3.9.____cpythonvariantall 37 | UPLOAD_PACKAGES: 'True' 38 | DOCKER_IMAGE: quay.io/condaforge/linux-anvil-cos7-x86_64 39 | linux_64_python3.9.____cpythonvariantnovtk: 40 | CONFIG: linux_64_python3.9.____cpythonvariantnovtk 41 | UPLOAD_PACKAGES: 'True' 42 | DOCKER_IMAGE: quay.io/condaforge/linux-anvil-cos7-x86_64 43 | linux_aarch64_python3.10.____cpythonvariantall: 44 | CONFIG: linux_aarch64_python3.10.____cpythonvariantall 45 | UPLOAD_PACKAGES: 'True' 46 | DOCKER_IMAGE: quay.io/condaforge/linux-anvil-cos7-x86_64 47 | linux_aarch64_python3.10.____cpythonvariantnovtk: 48 | CONFIG: linux_aarch64_python3.10.____cpythonvariantnovtk 49 | UPLOAD_PACKAGES: 'True' 50 | DOCKER_IMAGE: quay.io/condaforge/linux-anvil-cos7-x86_64 51 | linux_aarch64_python3.11.____cpythonvariantall: 52 | CONFIG: linux_aarch64_python3.11.____cpythonvariantall 53 | UPLOAD_PACKAGES: 'True' 54 | DOCKER_IMAGE: quay.io/condaforge/linux-anvil-cos7-x86_64 55 | linux_aarch64_python3.11.____cpythonvariantnovtk: 56 | CONFIG: linux_aarch64_python3.11.____cpythonvariantnovtk 57 | UPLOAD_PACKAGES: 'True' 58 | DOCKER_IMAGE: quay.io/condaforge/linux-anvil-cos7-x86_64 59 | linux_aarch64_python3.12.____cpythonvariantall: 60 | CONFIG: linux_aarch64_python3.12.____cpythonvariantall 61 | UPLOAD_PACKAGES: 'True' 62 | DOCKER_IMAGE: quay.io/condaforge/linux-anvil-cos7-x86_64 63 | linux_aarch64_python3.12.____cpythonvariantnovtk: 64 | CONFIG: linux_aarch64_python3.12.____cpythonvariantnovtk 65 | UPLOAD_PACKAGES: 'True' 66 | DOCKER_IMAGE: quay.io/condaforge/linux-anvil-cos7-x86_64 67 | linux_aarch64_python3.9.____cpythonvariantall: 68 | CONFIG: linux_aarch64_python3.9.____cpythonvariantall 69 | UPLOAD_PACKAGES: 'True' 70 | DOCKER_IMAGE: quay.io/condaforge/linux-anvil-cos7-x86_64 71 | linux_aarch64_python3.9.____cpythonvariantnovtk: 72 | CONFIG: linux_aarch64_python3.9.____cpythonvariantnovtk 73 | UPLOAD_PACKAGES: 'True' 74 | DOCKER_IMAGE: quay.io/condaforge/linux-anvil-cos7-x86_64 75 | timeoutInMinutes: 360 76 | variables: {} 77 | 78 | steps: 79 | # configure qemu binfmt-misc running. This allows us to run docker containers 80 | # embedded qemu-static 81 | - script: | 82 | docker run --rm --privileged multiarch/qemu-user-static:register --reset --credential yes 83 | ls /proc/sys/fs/binfmt_misc/ 84 | condition: not(startsWith(variables['CONFIG'], 'linux_64')) 85 | displayName: Configure binfmt_misc 86 | 87 | - script: | 88 | export CI=azure 89 | export flow_run_id=azure_$(Build.BuildNumber).$(System.JobAttempt) 90 | export remote_url=$(Build.Repository.Uri) 91 | export sha=$(Build.SourceVersion) 92 | export GIT_BRANCH=$BUILD_SOURCEBRANCHNAME 93 | export FEEDSTOCK_NAME=$(basename ${BUILD_REPOSITORY_NAME}) 94 | if [[ "${BUILD_REASON:-}" == "PullRequest" ]]; then 95 | export IS_PR_BUILD="True" 96 | else 97 | export IS_PR_BUILD="False" 98 | fi 99 | .scripts/run_docker_build.sh 100 | displayName: Run docker build 101 | env: 102 | BINSTAR_TOKEN: $(BINSTAR_TOKEN) 103 | FEEDSTOCK_TOKEN: $(FEEDSTOCK_TOKEN) 104 | STAGING_BINSTAR_TOKEN: $(STAGING_BINSTAR_TOKEN) -------------------------------------------------------------------------------- /.scripts/run_win_build.bat: -------------------------------------------------------------------------------- 1 | :: PLEASE NOTE: This script has been automatically generated by conda-smithy. Any changes here 2 | :: will be lost next time ``conda smithy rerender`` is run. If you would like to make permanent 3 | :: changes to this script, consider a proposal to conda-smithy so that other feedstocks can also 4 | :: benefit from the improvement. 5 | 6 | :: INPUTS (required environment variables) 7 | :: CONFIG: name of the .ci_support/*.yaml file for this job 8 | :: CI: azure, github_actions, or unset 9 | :: MINIFORGE_HOME: where to install the base conda environment 10 | :: UPLOAD_PACKAGES: true or false 11 | :: UPLOAD_ON_BRANCH: true or false 12 | 13 | setlocal enableextensions enabledelayedexpansion 14 | 15 | FOR %%A IN ("%~dp0.") DO SET "REPO_ROOT=%%~dpA" 16 | if "%MINIFORGE_HOME%"=="" set "MINIFORGE_HOME=%USERPROFILE%\Miniforge3" 17 | :: Remove trailing backslash, if present 18 | if "%MINIFORGE_HOME:~-1%"=="\" set "MINIFORGE_HOME=%MINIFORGE_HOME:~0,-1%" 19 | call :start_group "Provisioning base env with micromamba" 20 | set "MAMBA_ROOT_PREFIX=%MINIFORGE_HOME%-micromamba-%RANDOM%" 21 | set "MICROMAMBA_VERSION=1.5.10-0" 22 | set "MICROMAMBA_URL=https://github.com/mamba-org/micromamba-releases/releases/download/%MICROMAMBA_VERSION%/micromamba-win-64" 23 | set "MICROMAMBA_TMPDIR=%TMP%\micromamba-%RANDOM%" 24 | set "MICROMAMBA_EXE=%MICROMAMBA_TMPDIR%\micromamba.exe" 25 | 26 | echo Downloading micromamba %MICROMAMBA_VERSION% 27 | if not exist "%MICROMAMBA_TMPDIR%" mkdir "%MICROMAMBA_TMPDIR%" 28 | certutil -urlcache -split -f "%MICROMAMBA_URL%" "%MICROMAMBA_EXE%" 29 | if !errorlevel! neq 0 exit /b !errorlevel! 30 | 31 | echo Creating environment 32 | call "%MICROMAMBA_EXE%" create --yes --root-prefix "%MAMBA_ROOT_PREFIX%" --prefix "%MINIFORGE_HOME%" ^ 33 | --channel conda-forge ^ 34 | pip python=3.12 conda-build conda-forge-ci-setup=4 "conda-build>=24.1" 35 | if !errorlevel! neq 0 exit /b !errorlevel! 36 | echo Removing %MAMBA_ROOT_PREFIX% 37 | del /S /Q "%MAMBA_ROOT_PREFIX%" >nul 38 | del /S /Q "%MICROMAMBA_TMPDIR%" >nul 39 | 40 | call :start_group "Configuring conda" 41 | 42 | :: Activate the base conda environment 43 | echo Activating environment 44 | call "%MINIFORGE_HOME%\Scripts\activate.bat" 45 | :: Configure the solver 46 | set "CONDA_SOLVER=libmamba" 47 | if !errorlevel! neq 0 exit /b !errorlevel! 48 | set "CONDA_LIBMAMBA_SOLVER_NO_CHANNELS_FROM_INSTALLED=1" 49 | 50 | :: Set basic configuration 51 | echo Setting up configuration 52 | setup_conda_rc .\ ".\recipe" .\.ci_support\%CONFIG%.yaml 53 | if !errorlevel! neq 0 exit /b !errorlevel! 54 | echo Running build setup 55 | CALL run_conda_forge_build_setup 56 | 57 | 58 | if !errorlevel! neq 0 exit /b !errorlevel! 59 | 60 | if EXIST LICENSE.txt ( 61 | echo Copying feedstock license 62 | copy LICENSE.txt "recipe\\recipe-scripts-license.txt" 63 | ) 64 | if NOT [%HOST_PLATFORM%] == [%BUILD_PLATFORM%] ( 65 | if [%CROSSCOMPILING_EMULATOR%] == [] ( 66 | set "EXTRA_CB_OPTIONS=%EXTRA_CB_OPTIONS% --no-test" 67 | ) 68 | ) 69 | 70 | if NOT [%flow_run_id%] == [] ( 71 | set "EXTRA_CB_OPTIONS=%EXTRA_CB_OPTIONS% --extra-meta flow_run_id=%flow_run_id% remote_url=%remote_url% sha=%sha%" 72 | ) 73 | 74 | call :end_group 75 | 76 | :: Build the recipe 77 | echo Building recipe 78 | conda-build.exe "recipe" -m .ci_support\%CONFIG%.yaml --suppress-variables %EXTRA_CB_OPTIONS% 79 | if !errorlevel! neq 0 exit /b !errorlevel! 80 | 81 | call :start_group "Inspecting artifacts" 82 | :: inspect_artifacts was only added in conda-forge-ci-setup 4.9.4 83 | WHERE inspect_artifacts >nul 2>nul && inspect_artifacts --recipe-dir ".\recipe" -m .ci_support\%CONFIG%.yaml || echo "inspect_artifacts needs conda-forge-ci-setup >=4.9.4" 84 | call :end_group 85 | 86 | :: Prepare some environment variables for the upload step 87 | if /i "%CI%" == "github_actions" ( 88 | set "FEEDSTOCK_NAME=%GITHUB_REPOSITORY:*/=%" 89 | set "GIT_BRANCH=%GITHUB_REF:refs/heads/=%" 90 | if /i "%GITHUB_EVENT_NAME%" == "pull_request" ( 91 | set "IS_PR_BUILD=True" 92 | ) else ( 93 | set "IS_PR_BUILD=False" 94 | ) 95 | set "TEMP=%RUNNER_TEMP%" 96 | ) 97 | if /i "%CI%" == "azure" ( 98 | set "FEEDSTOCK_NAME=%BUILD_REPOSITORY_NAME:*/=%" 99 | set "GIT_BRANCH=%BUILD_SOURCEBRANCHNAME%" 100 | if /i "%BUILD_REASON%" == "PullRequest" ( 101 | set "IS_PR_BUILD=True" 102 | ) else ( 103 | set "IS_PR_BUILD=False" 104 | ) 105 | set "TEMP=%UPLOAD_TEMP%" 106 | ) 107 | 108 | :: Validate 109 | call :start_group "Validating outputs" 110 | validate_recipe_outputs "%FEEDSTOCK_NAME%" 111 | if !errorlevel! neq 0 exit /b !errorlevel! 112 | call :end_group 113 | 114 | if /i "%UPLOAD_PACKAGES%" == "true" ( 115 | if /i "%IS_PR_BUILD%" == "false" ( 116 | call :start_group "Uploading packages" 117 | if not exist "%TEMP%\" md "%TEMP%" 118 | set "TMP=%TEMP%" 119 | upload_package --validate --feedstock-name="%FEEDSTOCK_NAME%" .\ ".\recipe" .ci_support\%CONFIG%.yaml 120 | if !errorlevel! neq 0 exit /b !errorlevel! 121 | call :end_group 122 | ) 123 | ) 124 | 125 | exit 126 | 127 | :: Logging subroutines 128 | 129 | :start_group 130 | if /i "%CI%" == "github_actions" ( 131 | echo ::group::%~1 132 | exit /b 133 | ) 134 | if /i "%CI%" == "azure" ( 135 | echo ##[group]%~1 136 | exit /b 137 | ) 138 | echo %~1 139 | exit /b 140 | 141 | :end_group 142 | if /i "%CI%" == "github_actions" ( 143 | echo ::endgroup:: 144 | exit /b 145 | ) 146 | if /i "%CI%" == "azure" ( 147 | echo ##[endgroup] 148 | exit /b 149 | ) 150 | exit /b -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | About pythonocc-core-feedstock 2 | ============================== 3 | 4 | Feedstock license: [BSD-3-Clause](https://github.com/conda-forge/pythonocc-core-feedstock/blob/main/LICENSE.txt) 5 | 6 | Home: https://github.com/tpaviot/pythonocc-core 7 | 8 | Package license: LGPL-3.0-or-later 9 | 10 | Summary: python bindings for opencascade (occt) 11 | 12 | Development: https://github.com/tpaviot/pythonocc-core 13 | 14 | pythonocc is a python package whose purpose is 15 | to provide 3D modeling features. It is intended 16 | to CAD/PDM/PLM and BIM related development. 17 | 18 | 19 | Current build status 20 | ==================== 21 | 22 | 23 | 24 | 25 | 26 | 27 | 321 | 322 |
Azure 28 |
29 | 30 | 31 | 32 | 33 | 34 | 35 | 36 | 37 | 38 | 43 | 44 | 45 | 50 | 51 | 52 | 57 | 58 | 59 | 64 | 65 | 66 | 71 | 72 | 73 | 78 | 79 | 80 | 85 | 86 | 87 | 92 | 93 | 94 | 99 | 100 | 101 | 106 | 107 | 108 | 113 | 114 | 115 | 120 | 121 | 122 | 127 | 128 | 129 | 134 | 135 | 136 | 141 | 142 | 143 | 148 | 149 | 150 | 155 | 156 | 157 | 162 | 163 | 164 | 169 | 170 | 171 | 176 | 177 | 178 | 183 | 184 | 185 | 190 | 191 | 192 | 197 | 198 | 199 | 204 | 205 | 206 | 211 | 212 | 213 | 218 | 219 | 220 | 225 | 226 | 227 | 232 | 233 | 234 | 239 | 240 | 241 | 246 | 247 | 248 | 253 | 254 | 255 | 260 | 261 | 262 | 267 | 268 | 269 | 274 | 275 | 276 | 281 | 282 | 283 | 288 | 289 | 290 | 295 | 296 | 297 | 302 | 303 | 304 | 309 | 310 | 311 | 316 | 317 | 318 |
VariantStatus
linux_64_python3.10.____cpythonvariantall 39 | 40 | variant 41 | 42 |
linux_64_python3.10.____cpythonvariantnovtk 46 | 47 | variant 48 | 49 |
linux_64_python3.11.____cpythonvariantall 53 | 54 | variant 55 | 56 |
linux_64_python3.11.____cpythonvariantnovtk 60 | 61 | variant 62 | 63 |
linux_64_python3.12.____cpythonvariantall 67 | 68 | variant 69 | 70 |
linux_64_python3.12.____cpythonvariantnovtk 74 | 75 | variant 76 | 77 |
linux_64_python3.9.____cpythonvariantall 81 | 82 | variant 83 | 84 |
linux_64_python3.9.____cpythonvariantnovtk 88 | 89 | variant 90 | 91 |
linux_aarch64_python3.10.____cpythonvariantall 95 | 96 | variant 97 | 98 |
linux_aarch64_python3.10.____cpythonvariantnovtk 102 | 103 | variant 104 | 105 |
linux_aarch64_python3.11.____cpythonvariantall 109 | 110 | variant 111 | 112 |
linux_aarch64_python3.11.____cpythonvariantnovtk 116 | 117 | variant 118 | 119 |
linux_aarch64_python3.12.____cpythonvariantall 123 | 124 | variant 125 | 126 |
linux_aarch64_python3.12.____cpythonvariantnovtk 130 | 131 | variant 132 | 133 |
linux_aarch64_python3.9.____cpythonvariantall 137 | 138 | variant 139 | 140 |
linux_aarch64_python3.9.____cpythonvariantnovtk 144 | 145 | variant 146 | 147 |
osx_64_python3.10.____cpythonvariantall 151 | 152 | variant 153 | 154 |
osx_64_python3.10.____cpythonvariantnovtk 158 | 159 | variant 160 | 161 |
osx_64_python3.11.____cpythonvariantall 165 | 166 | variant 167 | 168 |
osx_64_python3.11.____cpythonvariantnovtk 172 | 173 | variant 174 | 175 |
osx_64_python3.12.____cpythonvariantall 179 | 180 | variant 181 | 182 |
osx_64_python3.12.____cpythonvariantnovtk 186 | 187 | variant 188 | 189 |
osx_64_python3.9.____cpythonvariantall 193 | 194 | variant 195 | 196 |
osx_64_python3.9.____cpythonvariantnovtk 200 | 201 | variant 202 | 203 |
osx_arm64_python3.10.____cpythonvariantall 207 | 208 | variant 209 | 210 |
osx_arm64_python3.10.____cpythonvariantnovtk 214 | 215 | variant 216 | 217 |
osx_arm64_python3.11.____cpythonvariantall 221 | 222 | variant 223 | 224 |
osx_arm64_python3.11.____cpythonvariantnovtk 228 | 229 | variant 230 | 231 |
osx_arm64_python3.12.____cpythonvariantall 235 | 236 | variant 237 | 238 |
osx_arm64_python3.12.____cpythonvariantnovtk 242 | 243 | variant 244 | 245 |
osx_arm64_python3.9.____cpythonvariantall 249 | 250 | variant 251 | 252 |
osx_arm64_python3.9.____cpythonvariantnovtk 256 | 257 | variant 258 | 259 |
win_64_python3.10.____cpythonvariantall 263 | 264 | variant 265 | 266 |
win_64_python3.10.____cpythonvariantnovtk 270 | 271 | variant 272 | 273 |
win_64_python3.11.____cpythonvariantall 277 | 278 | variant 279 | 280 |
win_64_python3.11.____cpythonvariantnovtk 284 | 285 | variant 286 | 287 |
win_64_python3.12.____cpythonvariantall 291 | 292 | variant 293 | 294 |
win_64_python3.12.____cpythonvariantnovtk 298 | 299 | variant 300 | 301 |
win_64_python3.9.____cpythonvariantall 305 | 306 | variant 307 | 308 |
win_64_python3.9.____cpythonvariantnovtk 312 | 313 | variant 314 | 315 |
319 |
320 |
323 | 324 | Current release info 325 | ==================== 326 | 327 | | Name | Downloads | Version | Platforms | 328 | | --- | --- | --- | --- | 329 | | [![Conda Recipe](https://img.shields.io/badge/recipe-pythonocc--core-green.svg)](https://anaconda.org/conda-forge/pythonocc-core) | [![Conda Downloads](https://img.shields.io/conda/dn/conda-forge/pythonocc-core.svg)](https://anaconda.org/conda-forge/pythonocc-core) | [![Conda Version](https://img.shields.io/conda/vn/conda-forge/pythonocc-core.svg)](https://anaconda.org/conda-forge/pythonocc-core) | [![Conda Platforms](https://img.shields.io/conda/pn/conda-forge/pythonocc-core.svg)](https://anaconda.org/conda-forge/pythonocc-core) | 330 | 331 | Installing pythonocc-core 332 | ========================= 333 | 334 | Installing `pythonocc-core` from the `conda-forge` channel can be achieved by adding `conda-forge` to your channels with: 335 | 336 | ``` 337 | conda config --add channels conda-forge 338 | conda config --set channel_priority strict 339 | ``` 340 | 341 | Once the `conda-forge` channel has been enabled, `pythonocc-core` can be installed with `conda`: 342 | 343 | ``` 344 | conda install pythonocc-core 345 | ``` 346 | 347 | or with `mamba`: 348 | 349 | ``` 350 | mamba install pythonocc-core 351 | ``` 352 | 353 | It is possible to list all of the versions of `pythonocc-core` available on your platform with `conda`: 354 | 355 | ``` 356 | conda search pythonocc-core --channel conda-forge 357 | ``` 358 | 359 | or with `mamba`: 360 | 361 | ``` 362 | mamba search pythonocc-core --channel conda-forge 363 | ``` 364 | 365 | Alternatively, `mamba repoquery` may provide more information: 366 | 367 | ``` 368 | # Search all versions available on your platform: 369 | mamba repoquery search pythonocc-core --channel conda-forge 370 | 371 | # List packages depending on `pythonocc-core`: 372 | mamba repoquery whoneeds pythonocc-core --channel conda-forge 373 | 374 | # List dependencies of `pythonocc-core`: 375 | mamba repoquery depends pythonocc-core --channel conda-forge 376 | ``` 377 | 378 | 379 | About conda-forge 380 | ================= 381 | 382 | [![Powered by 383 | NumFOCUS](https://img.shields.io/badge/powered%20by-NumFOCUS-orange.svg?style=flat&colorA=E1523D&colorB=007D8A)](https://numfocus.org) 384 | 385 | conda-forge is a community-led conda channel of installable packages. 386 | In order to provide high-quality builds, the process has been automated into the 387 | conda-forge GitHub organization. The conda-forge organization contains one repository 388 | for each of the installable packages. Such a repository is known as a *feedstock*. 389 | 390 | A feedstock is made up of a conda recipe (the instructions on what and how to build 391 | the package) and the necessary configurations for automatic building using freely 392 | available continuous integration services. Thanks to the awesome service provided by 393 | [Azure](https://azure.microsoft.com/en-us/services/devops/), [GitHub](https://github.com/), 394 | [CircleCI](https://circleci.com/), [AppVeyor](https://www.appveyor.com/), 395 | [Drone](https://cloud.drone.io/welcome), and [TravisCI](https://travis-ci.com/) 396 | it is possible to build and upload installable packages to the 397 | [conda-forge](https://anaconda.org/conda-forge) [anaconda.org](https://anaconda.org/) 398 | channel for Linux, Windows and OSX respectively. 399 | 400 | To manage the continuous integration and simplify feedstock maintenance 401 | [conda-smithy](https://github.com/conda-forge/conda-smithy) has been developed. 402 | Using the ``conda-forge.yml`` within this repository, it is possible to re-render all of 403 | this feedstock's supporting files (e.g. the CI configuration files) with ``conda smithy rerender``. 404 | 405 | For more information please check the [conda-forge documentation](https://conda-forge.org/docs/). 406 | 407 | Terminology 408 | =========== 409 | 410 | **feedstock** - the conda recipe (raw material), supporting scripts and CI configuration. 411 | 412 | **conda-smithy** - the tool which helps orchestrate the feedstock. 413 | Its primary use is in the construction of the CI ``.yml`` files 414 | and simplify the management of *many* feedstocks. 415 | 416 | **conda-forge** - the place where the feedstock and smithy live and work to 417 | produce the finished article (built conda distributions) 418 | 419 | 420 | Updating pythonocc-core-feedstock 421 | ================================= 422 | 423 | If you would like to improve the pythonocc-core recipe or build a new 424 | package version, please fork this repository and submit a PR. Upon submission, 425 | your changes will be run on the appropriate platforms to give the reviewer an 426 | opportunity to confirm that the changes result in a successful build. Once 427 | merged, the recipe will be re-built and uploaded automatically to the 428 | `conda-forge` channel, whereupon the built conda packages will be available for 429 | everybody to install and use from the `conda-forge` channel. 430 | Note that all branches in the conda-forge/pythonocc-core-feedstock are 431 | immediately built and any created packages are uploaded, so PRs should be based 432 | on branches in forks and branches in the main repository should only be used to 433 | build distinct package versions. 434 | 435 | In order to produce a uniquely identifiable distribution: 436 | * If the version of a package **is not** being increased, please add or increase 437 | the [``build/number``](https://docs.conda.io/projects/conda-build/en/latest/resources/define-metadata.html#build-number-and-string). 438 | * If the version of a package **is** being increased, please remember to return 439 | the [``build/number``](https://docs.conda.io/projects/conda-build/en/latest/resources/define-metadata.html#build-number-and-string) 440 | back to 0. 441 | 442 | Feedstock Maintainers 443 | ===================== 444 | 445 | * [@looooo](https://github.com/looooo/) 446 | 447 | --------------------------------------------------------------------------------