From 8ed49b6fa1e4f92d75d4eee50afbb1899bc6c305 Mon Sep 17 00:00:00 2001 From: "H. Vetinari" Date: Mon, 6 Mar 2023 16:58:27 +1100 Subject: [PATCH 1/2] build for windows --- recipe/meta.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/recipe/meta.yaml b/recipe/meta.yaml index c8a0444..85c1ec8 100644 --- a/recipe/meta.yaml +++ b/recipe/meta.yaml @@ -15,7 +15,7 @@ source: build: number: 0 - skip: true # [not linux] + skip: true # [not (linux or win)] outputs: # The core package From 9b9ab7d0a5aac9b672f09d9c2ef7ba41d124320d Mon Sep 17 00:00:00 2001 From: "H. Vetinari" Date: Mon, 6 Mar 2023 17:00:07 +1100 Subject: [PATCH 2/2] MNT: Re-rendered with conda-build 3.23.3, conda-smithy 3.23.0, and conda-forge-pinning 2023.03.06.02.24.27 --- .azure-pipelines/azure-pipelines-win.yml | 98 +++++++++++++++++++ .../win_64_python3.10.____cpython.yaml | 39 ++++++++ .ci_support/win_64_python3.8.____73_pypy.yaml | 39 ++++++++ .ci_support/win_64_python3.8.____cpython.yaml | 39 ++++++++ .ci_support/win_64_python3.9.____73_pypy.yaml | 39 ++++++++ .ci_support/win_64_python3.9.____cpython.yaml | 39 ++++++++ README.md | 58 ++++++++--- azure-pipelines.yml | 3 +- 8 files changed, 342 insertions(+), 12 deletions(-) create mode 100644 .azure-pipelines/azure-pipelines-win.yml create mode 100644 .ci_support/win_64_python3.10.____cpython.yaml create mode 100644 .ci_support/win_64_python3.8.____73_pypy.yaml create mode 100644 .ci_support/win_64_python3.8.____cpython.yaml create mode 100644 .ci_support/win_64_python3.9.____73_pypy.yaml create mode 100644 .ci_support/win_64_python3.9.____cpython.yaml diff --git a/.azure-pipelines/azure-pipelines-win.yml b/.azure-pipelines/azure-pipelines-win.yml new file mode 100644 index 0000000..973b096 --- /dev/null +++ b/.azure-pipelines/azure-pipelines-win.yml @@ -0,0 +1,98 @@ +# This file was generated automatically from conda-smithy. To update this configuration, +# update the conda-forge.yml and/or the recipe/meta.yaml. +# -*- mode: yaml -*- + +jobs: +- job: win + pool: + vmImage: windows-2022 + strategy: + matrix: + win_64_python3.10.____cpython: + CONFIG: win_64_python3.10.____cpython + UPLOAD_PACKAGES: 'True' + win_64_python3.8.____73_pypy: + CONFIG: win_64_python3.8.____73_pypy + UPLOAD_PACKAGES: 'True' + win_64_python3.8.____cpython: + CONFIG: win_64_python3.8.____cpython + UPLOAD_PACKAGES: 'True' + win_64_python3.9.____73_pypy: + CONFIG: win_64_python3.9.____73_pypy + UPLOAD_PACKAGES: 'True' + win_64_python3.9.____cpython: + CONFIG: win_64_python3.9.____cpython + UPLOAD_PACKAGES: 'True' + timeoutInMinutes: 360 + variables: + CONDA_BLD_PATH: D:\\bld\\ + UPLOAD_TEMP: D:\\tmp + + steps: + - task: PythonScript@0 + displayName: 'Download Miniforge' + inputs: + scriptSource: inline + script: | + import urllib.request + url = 'https://github.com/conda-forge/miniforge/releases/latest/download/Mambaforge-Windows-x86_64.exe' + path = r"$(Build.ArtifactStagingDirectory)/Miniforge.exe" + urllib.request.urlretrieve(url, path) + + - script: | + start /wait "" %BUILD_ARTIFACTSTAGINGDIRECTORY%\Miniforge.exe /InstallationType=JustMe /RegisterPython=0 /S /D=C:\Miniforge + displayName: Install Miniforge + + - powershell: Write-Host "##vso[task.prependpath]C:\Miniforge\Scripts" + displayName: Add conda to PATH + + - script: | + call activate base + mamba.exe install "python=3.10" conda-build conda pip boa conda-forge-ci-setup=3 -c conda-forge --strict-channel-priority --yes + displayName: Install conda-build + + - script: set PYTHONUNBUFFERED=1 + displayName: Set PYTHONUNBUFFERED + + # Configure the VM + - script: | + call activate base + setup_conda_rc .\ ".\recipe" .\.ci_support\%CONFIG%.yaml + displayName: conda-forge CI setup + + # Configure the VM. + - script: | + set "CI=azure" + call activate base + run_conda_forge_build_setup + displayName: conda-forge build setup + + - script: | + call activate base + if EXIST LICENSE.txt ( + copy LICENSE.txt "recipe\\recipe-scripts-license.txt" + ) + conda.exe mambabuild "recipe" -m .ci_support\%CONFIG%.yaml --suppress-variables + displayName: Build recipe + env: + PYTHONUNBUFFERED: 1 + - script: | + set "FEEDSTOCK_NAME=%BUILD_REPOSITORY_NAME:*/=%" + call activate base + validate_recipe_outputs "%FEEDSTOCK_NAME%" + displayName: Validate Recipe Outputs + + - script: | + set "GIT_BRANCH=%BUILD_SOURCEBRANCHNAME%" + set "FEEDSTOCK_NAME=%BUILD_REPOSITORY_NAME:*/=%" + set "TEMP=$(UPLOAD_TEMP)" + if not exist "%TEMP%\" md "%TEMP%" + set "TMP=%TEMP%" + call activate base + upload_package --validate --feedstock-name="%FEEDSTOCK_NAME%" .\ ".\recipe" .ci_support\%CONFIG%.yaml + displayName: Upload package + env: + BINSTAR_TOKEN: $(BINSTAR_TOKEN) + FEEDSTOCK_TOKEN: $(FEEDSTOCK_TOKEN) + STAGING_BINSTAR_TOKEN: $(STAGING_BINSTAR_TOKEN) + condition: and(succeeded(), not(eq(variables['UPLOAD_PACKAGES'], 'False')), not(eq(variables['Build.Reason'], 'PullRequest'))) \ No newline at end of file diff --git a/.ci_support/win_64_python3.10.____cpython.yaml b/.ci_support/win_64_python3.10.____cpython.yaml new file mode 100644 index 0000000..491fe3c --- /dev/null +++ b/.ci_support/win_64_python3.10.____cpython.yaml @@ -0,0 +1,39 @@ +c_compiler: +- vs2019 +channel_sources: +- conda-forge +channel_targets: +- conda-forge main +coin_or_cbc: +- '2.10' +coin_or_cgl: +- '0.60' +coin_or_clp: +- '1.17' +coin_or_osi: +- '0.108' +coin_or_utils: +- '2.11' +cxx_compiler: +- vs2019 +libabseil: +- '20230125' +libprotobuf: +- '3.21' +numpy: +- '1.21' +pin_run_as_build: + python: + min_pin: x.x + max_pin: x.x +python: +- 3.10.* *_cpython +re2: +- 2023.02.02 +target_platform: +- win-64 +zip_keys: +- - python + - numpy +zlib: +- '1.2' diff --git a/.ci_support/win_64_python3.8.____73_pypy.yaml b/.ci_support/win_64_python3.8.____73_pypy.yaml new file mode 100644 index 0000000..454a395 --- /dev/null +++ b/.ci_support/win_64_python3.8.____73_pypy.yaml @@ -0,0 +1,39 @@ +c_compiler: +- vs2019 +channel_sources: +- conda-forge +channel_targets: +- conda-forge main +coin_or_cbc: +- '2.10' +coin_or_cgl: +- '0.60' +coin_or_clp: +- '1.17' +coin_or_osi: +- '0.108' +coin_or_utils: +- '2.11' +cxx_compiler: +- vs2019 +libabseil: +- '20230125' +libprotobuf: +- '3.21' +numpy: +- '1.20' +pin_run_as_build: + python: + min_pin: x.x + max_pin: x.x +python: +- 3.8.* *_73_pypy +re2: +- 2023.02.02 +target_platform: +- win-64 +zip_keys: +- - python + - numpy +zlib: +- '1.2' diff --git a/.ci_support/win_64_python3.8.____cpython.yaml b/.ci_support/win_64_python3.8.____cpython.yaml new file mode 100644 index 0000000..b316ddf --- /dev/null +++ b/.ci_support/win_64_python3.8.____cpython.yaml @@ -0,0 +1,39 @@ +c_compiler: +- vs2019 +channel_sources: +- conda-forge +channel_targets: +- conda-forge main +coin_or_cbc: +- '2.10' +coin_or_cgl: +- '0.60' +coin_or_clp: +- '1.17' +coin_or_osi: +- '0.108' +coin_or_utils: +- '2.11' +cxx_compiler: +- vs2019 +libabseil: +- '20230125' +libprotobuf: +- '3.21' +numpy: +- '1.20' +pin_run_as_build: + python: + min_pin: x.x + max_pin: x.x +python: +- 3.8.* *_cpython +re2: +- 2023.02.02 +target_platform: +- win-64 +zip_keys: +- - python + - numpy +zlib: +- '1.2' diff --git a/.ci_support/win_64_python3.9.____73_pypy.yaml b/.ci_support/win_64_python3.9.____73_pypy.yaml new file mode 100644 index 0000000..6a3eebb --- /dev/null +++ b/.ci_support/win_64_python3.9.____73_pypy.yaml @@ -0,0 +1,39 @@ +c_compiler: +- vs2019 +channel_sources: +- conda-forge +channel_targets: +- conda-forge main +coin_or_cbc: +- '2.10' +coin_or_cgl: +- '0.60' +coin_or_clp: +- '1.17' +coin_or_osi: +- '0.108' +coin_or_utils: +- '2.11' +cxx_compiler: +- vs2019 +libabseil: +- '20230125' +libprotobuf: +- '3.21' +numpy: +- '1.20' +pin_run_as_build: + python: + min_pin: x.x + max_pin: x.x +python: +- 3.9.* *_73_pypy +re2: +- 2023.02.02 +target_platform: +- win-64 +zip_keys: +- - python + - numpy +zlib: +- '1.2' diff --git a/.ci_support/win_64_python3.9.____cpython.yaml b/.ci_support/win_64_python3.9.____cpython.yaml new file mode 100644 index 0000000..30fbe51 --- /dev/null +++ b/.ci_support/win_64_python3.9.____cpython.yaml @@ -0,0 +1,39 @@ +c_compiler: +- vs2019 +channel_sources: +- conda-forge +channel_targets: +- conda-forge main +coin_or_cbc: +- '2.10' +coin_or_cgl: +- '0.60' +coin_or_clp: +- '1.17' +coin_or_osi: +- '0.108' +coin_or_utils: +- '2.11' +cxx_compiler: +- vs2019 +libabseil: +- '20230125' +libprotobuf: +- '3.21' +numpy: +- '1.20' +pin_run_as_build: + python: + min_pin: x.x + max_pin: x.x +python: +- 3.9.* *_cpython +re2: +- 2023.02.02 +target_platform: +- win-64 +zip_keys: +- - python + - numpy +zlib: +- '1.2' diff --git a/README.md b/README.md index 31f03d8..4e5ca15 100644 --- a/README.md +++ b/README.md @@ -73,6 +73,41 @@ Current build status variant + + win_64_python3.10.____cpython + + + variant + + + + win_64_python3.8.____73_pypy + + + variant + + + + win_64_python3.8.____cpython + + + variant + + + + win_64_python3.9.____73_pypy + + + variant + + + + win_64_python3.9.____cpython + + + variant + + @@ -86,6 +121,7 @@ Current release info | Name | Downloads | Version | Platforms | | --- | --- | --- | --- | +| [![Conda Recipe](https://img.shields.io/badge/recipe-libortools-green.svg)](https://anaconda.org/conda-forge/libortools) | [![Conda Downloads](https://img.shields.io/conda/dn/conda-forge/libortools.svg)](https://anaconda.org/conda-forge/libortools) | [![Conda Version](https://img.shields.io/conda/vn/conda-forge/libortools.svg)](https://anaconda.org/conda-forge/libortools) | [![Conda Platforms](https://img.shields.io/conda/pn/conda-forge/libortools.svg)](https://anaconda.org/conda-forge/libortools) | | [![Conda Recipe](https://img.shields.io/badge/recipe-ortools--cpp-green.svg)](https://anaconda.org/conda-forge/ortools-cpp) | [![Conda Downloads](https://img.shields.io/conda/dn/conda-forge/ortools-cpp.svg)](https://anaconda.org/conda-forge/ortools-cpp) | [![Conda Version](https://img.shields.io/conda/vn/conda-forge/ortools-cpp.svg)](https://anaconda.org/conda-forge/ortools-cpp) | [![Conda Platforms](https://img.shields.io/conda/pn/conda-forge/ortools-cpp.svg)](https://anaconda.org/conda-forge/ortools-cpp) | | [![Conda Recipe](https://img.shields.io/badge/recipe-ortools--python-green.svg)](https://anaconda.org/conda-forge/ortools-python) | [![Conda Downloads](https://img.shields.io/conda/dn/conda-forge/ortools-python.svg)](https://anaconda.org/conda-forge/ortools-python) | [![Conda Version](https://img.shields.io/conda/vn/conda-forge/ortools-python.svg)](https://anaconda.org/conda-forge/ortools-python) | [![Conda Platforms](https://img.shields.io/conda/pn/conda-forge/ortools-python.svg)](https://anaconda.org/conda-forge/ortools-python) | @@ -99,41 +135,41 @@ conda config --add channels conda-forge conda config --set channel_priority strict ``` -Once the `conda-forge` channel has been enabled, `ortools-cpp, ortools-python` can be installed with `conda`: +Once the `conda-forge` channel has been enabled, `libortools, ortools-cpp, ortools-python` can be installed with `conda`: ``` -conda install ortools-cpp ortools-python +conda install libortools ortools-cpp ortools-python ``` or with `mamba`: ``` -mamba install ortools-cpp ortools-python +mamba install libortools ortools-cpp ortools-python ``` -It is possible to list all of the versions of `ortools-cpp` available on your platform with `conda`: +It is possible to list all of the versions of `libortools` available on your platform with `conda`: ``` -conda search ortools-cpp --channel conda-forge +conda search libortools --channel conda-forge ``` or with `mamba`: ``` -mamba search ortools-cpp --channel conda-forge +mamba search libortools --channel conda-forge ``` Alternatively, `mamba repoquery` may provide more information: ``` # Search all versions available on your platform: -mamba repoquery search ortools-cpp --channel conda-forge +mamba repoquery search libortools --channel conda-forge -# List packages depending on `ortools-cpp`: -mamba repoquery whoneeds ortools-cpp --channel conda-forge +# List packages depending on `libortools`: +mamba repoquery whoneeds libortools --channel conda-forge -# List dependencies of `ortools-cpp`: -mamba repoquery depends ortools-cpp --channel conda-forge +# List dependencies of `libortools`: +mamba repoquery depends libortools --channel conda-forge ``` diff --git a/azure-pipelines.yml b/azure-pipelines.yml index ad85a2c..baa1c2b 100644 --- a/azure-pipelines.yml +++ b/azure-pipelines.yml @@ -3,4 +3,5 @@ # -*- mode: yaml -*- jobs: - - template: ./.azure-pipelines/azure-pipelines-linux.yml \ No newline at end of file + - template: ./.azure-pipelines/azure-pipelines-linux.yml + - template: ./.azure-pipelines/azure-pipelines-win.yml \ No newline at end of file