From b140a2ae014aa197a06a1e32c6922774d3794e75 Mon Sep 17 00:00:00 2001 From: tinyboxvk Date: Mon, 21 Oct 2024 17:09:07 +0000 Subject: [PATCH 01/12] Update meta.yaml --- .conda/recipe/meta.yaml | 213 ++++++++++++++++++++-------------------- 1 file changed, 107 insertions(+), 106 deletions(-) diff --git a/.conda/recipe/meta.yaml b/.conda/recipe/meta.yaml index 09a7e109..c576ef3c 100644 --- a/.conda/recipe/meta.yaml +++ b/.conda/recipe/meta.yaml @@ -9,118 +9,119 @@ {% set version = (tag_version if post_commit == "0" else "{0}.post{1}+{2}".format(tag_version, post_commit, hash)) if tag_version else fallback_version %} package: - name: {{ name|lower }} - version: {{ version }} +  name: {{ name|lower }} +  version: {{ version }} source: - # use local path or git repository depending on if the build is local or done on CI - path: "../.." # [not os.environ.get("CI")] - git_url: {{ environ.get('FEEDSTOCK_ROOT', "../..") }} # [os.environ.get("CI")] +  # use local path or git repository depending on if the build is local or done on CI +  path: "../.."  # [not os.environ.get("CI")] +  git_url: {{ environ.get('FEEDSTOCK_ROOT', "../..") }}  # [os.environ.get("CI")] build: - number: 0 - skip: true # [win] - skip: true # [py>=312] - +  number: 0 +  skip: true  # [win] +  skip: true  # [py>=313] +  requirements: - build: - - {{ compiler("c") }} - - {{ compiler("cxx") }} - - cmake - - git - - ninja - - pkg-config - # cross-compilation requirements - - python # [build_platform != target_platform] - - cross-python_{{ target_platform }} # [build_platform != target_platform] - - numpy # [build_platform != target_platform] - - pybind11 # [build_platform != target_platform] - # Add extra build tool dependencies here - - boost-cpp=1.78.0 - - volk=3.0.0 - - host: - - gmp # [linux] - # the following two entries are for generating builds against specific GR versions - - gnuradio-core # [not gnuradio_extra_pin] - - gnuradio-core {{ gnuradio_extra_pin }}.* # [gnuradio_extra_pin] - - pip # [win] - - pybind11 - - python - - numpy - # Add/remove library dependencies here - - boost-cpp=1.78.0 - - volk=3.0.0 - - run: - - numpy - - python - # Add/remove runtime dependencies here - - boost-cpp=1.78.0 - - volk=3.0.0 +  build: +    - {{ compiler("c") }} +    - {{ compiler("cxx") }} +    - cmake +    - git +    - ninja +    - pkg-config +    # cross-compilation requirements +    - python                              # [build_platform != target_platform] +    - cross-python_{{ target_platform }}  # [build_platform != target_platform] +    - numpy                               # [build_platform != target_platform] +    - pybind11                            # [build_platform != target_platform] +    # Add extra build tool dependencies here +    - boost-cpp=1.84.0 +    - volk=3.1.2 + +  host: +    - gmp  # [linux] +    # the following two entries are for generating builds against specific GR versions +    - gnuradio-core  # [not gnuradio_extra_pin] +    - gnuradio-core {{ gnuradio_extra_pin }}.*  # [gnuradio_extra_pin] +    - pip  # [win] +    - pybind11 +    - python +    - numpy +    # Add/remove library dependencies here +    - boost-cpp=1.84.0 +    - volk=3.1.2 + +  run: +    - numpy +    - python +    # Add/remove runtime dependencies here +    - boost-cpp=1.84.0 +    - volk=3.1.2 test: - requires: - - gnuradio-grc - - gnuradio-uhd - commands: - ## verify that commands run - #- COMMAND --help - - # verify that (some) headers get installed - - test -f $PREFIX/include/gnuradio/{{ oot_name }}/api.h # [not win] - - if not exist %PREFIX%\\Library\\include\\gnuradio\\{{ oot_name }}\\api.h exit 1 # [win] - - # verify that libraries get installed - - test -f $PREFIX/lib/lib{{ name }}${SHLIB_EXT} # [not win] - - if not exist %PREFIX%\\Library\\bin\\{{ name }}.dll exit 1 # [win] - - if not exist %PREFIX%\\Library\\lib\\{{ name }}.lib exit 1 # [win] - - # verify that (some) GRC blocks get installed - {% set blocks = ["lora_rx", "lora_tx", "header", "header_decoder", "modulate"] %} - {% for block in blocks %} - - test -f $PREFIX/share/gnuradio/grc/blocks/{{ oot_name }}_{{ block }}.block.yml # [not win] - - if not exist %PREFIX%\\Library\\share\\gnuradio\\grc\\blocks\\{{ oot_name }}_{{ block }}.block.yml exit 1 # [win] - {% endfor %} - - # verify that examples get installed - {% set example_grcs = ["lora_RX", "lora_TX", "tx_rx_functionality_check", "tx_rx_simulation", "tx_rx_usrp"] %} - {% for eg in example_grcs %} - - grcc $PREFIX/share/gr-{{ oot_name }}/examples/{{ eg }}.grc # [not win] - - grcc %PREFIX%\\Library\\share\\gr-{{ oot_name}}\\examples\\{{ eg }}.grc # [win] - {% endfor %} - - imports: - # verify that the python module imports - - gnuradio.{{ oot_name }} +  requires: +    - gnuradio-grc +    - gnuradio-uhd +  commands: +    ## verify that commands run +    #- COMMAND --help + +    # verify that (some) headers get installed +    - test -f $PREFIX/include/gnuradio/{{ oot_name }}/api.h  # [not win] +    - if not exist %PREFIX%\\Library\\include\\gnuradio\\{{ oot_name }}\\api.h exit 1  # [win] + +    # verify that libraries get installed +    - test -f $PREFIX/lib/lib{{ name }}${SHLIB_EXT}  # [not win] +    - if not exist %PREFIX%\\Library\\bin\\{{ name }}.dll exit 1  # [win] +    - if not exist %PREFIX%\\Library\\lib\\{{ name }}.lib exit 1  # [win] + +    # verify that (some) GRC blocks get installed +    {% set blocks = ["lora_rx", "lora_tx", "header", "header_decoder", "modulate"] %} +    {% for block in blocks %} +    - test -f $PREFIX/share/gnuradio/grc/blocks/{{ oot_name }}_{{ block }}.block.yml  # [not win] +    - if not exist %PREFIX%\\Library\\share\\gnuradio\\grc\\blocks\\{{ oot_name }}_{{ block }}.block.yml exit 1  # [win] +    {% endfor %} + +    # verify that examples get installed +    {% set example_grcs = ["lora_RX", "lora_TX", "tx_rx_functionality_check", "tx_rx_simulation", "tx_rx_usrp"] %} +    {% for eg in example_grcs %} +    - grcc $PREFIX/share/gr-{{ oot_name }}/examples/{{ eg }}.grc  # [not win] +    - grcc %PREFIX%\\Library\\share\\gr-{{ oot_name}}\\examples\\{{ eg }}.grc  # [win] +    {% endfor %} + +  imports: +    # verify that the python module imports +    - gnuradio.{{ oot_name }} about: - home: https://github.com/tapparelj/gr-lora_sdr - license: GPL-3.0-or-later - license_file: LICENSE - summary: GNU Radio software-defined radio (SDR) implementation of a LoRa transceiver - description: > - This is the fully-functional GNU Radio software-defined radio (SDR) - implementation of a LoRa transceiver with all the necessary receiver - components to operate correctly even at very low SNRs. The transceiver is - available as a module for GNU Radio 3.10. This work has been conducted at - the Telecommunication Circuits Laboratory, EPFL.
- - In the GNU Radio implementation of the LoRa Tx and Rx chains the user can - choose all the parameters of the transmission, such as the spreading - factor, the coding rate, the bandwidth, the sync word, the presence of an - explicit header and CRC.
- - Example gnuradio-companion flowgraphs are installed with the package and can be found in: - - - (Linux/macOS) `$CONDA_PREFIX/share/gr-lora_sdr/examples` - - (Windows) `%CONDA_PREFIX%\share\gr-lora_sdr\examples` -
- If you find this module useful for your project, please consider citing the - publication "An Open-Source LoRa Physical Layer Prototype on GNU Radio" - (IEEE Xplore, - arXiv) -

Installation issue

- Add conda-forge to the list of channel for installation with:
- `conda install -c tapparelj -c conda-forge gnuradio-lora_sdr` - +  home: https://github.com/tapparelj/gr-lora_sdr +  license: GPL-3.0-or-later +  license_file: LICENSE +  summary: GNU Radio software-defined radio (SDR) implementation of a LoRa transceiver +  description: > +    This is the fully-functional GNU Radio software-defined radio (SDR) +    implementation of a LoRa transceiver with all the necessary receiver +    components to operate correctly even at very low SNRs. The transceiver is +    available as a module for GNU Radio 3.10. This work has been conducted at +    the Telecommunication Circuits Laboratory, EPFL.
+ +    In the GNU Radio implementation of the LoRa Tx and Rx chains the user can +    choose all the parameters of the transmission, such as the spreading +    factor, the coding rate, the bandwidth, the sync word, the presence of an +    explicit header and CRC.
+ +    Example gnuradio-companion flowgraphs are installed with the package and can be found in: + +        - (Linux/macOS) `$CONDA_PREFIX/share/gr-lora_sdr/examples` +        - (Windows) `%CONDA_PREFIX%\share\gr-lora_sdr\examples` +   
+    If you find this module useful for your project, please consider citing the +    publication "An Open-Source LoRa Physical Layer Prototype on GNU Radio" +    (IEEE Xplore,   +    arXiv) +   

Installation issue

+    Add conda-forge to the list of channel for installation with:
+    `conda install -c tapparelj -c conda-forge gnuradio-lora_sdr` + + From 9b13c3e0bcda646dc49bdba5dd59ba2fe7b3ef77 Mon Sep 17 00:00:00 2001 From: tinyboxvk Date: Mon, 21 Oct 2024 17:11:06 +0000 Subject: [PATCH 02/12] Update conda_build_config.yaml --- .conda/recipe/conda_build_config.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.conda/recipe/conda_build_config.yaml b/.conda/recipe/conda_build_config.yaml index 040205e4..f1aa706c 100644 --- a/.conda/recipe/conda_build_config.yaml +++ b/.conda/recipe/conda_build_config.yaml @@ -5,7 +5,7 @@ channel_targets: # override the conda-forge pin for gnuradio-core by uncommenting # and specifying a different version here gnuradio_core: - - "3.10.6" + - "3.10.11" gnuradio_extra_pin: # always leave one entry with the empty string - "" From aa4e4b775d52b24d7e883e14a13ff50675153c6c Mon Sep 17 00:00:00 2001 From: tinyboxvk Date: Mon, 21 Oct 2024 14:32:15 -0300 Subject: [PATCH 03/12] MNT: Re-rendered with conda-build 24.9.0, conda-smithy 3.43.0, and conda-forge-pinning 2024.10.21.14.45.36 --- ...ux_64_numpy1.22python3.10.____cpython.yaml | 8 +- ...nux_64_numpy1.22python3.9.____cpython.yaml | 8 +- ...ux_64_numpy1.23python3.11.____cpython.yaml | 8 +- ...x_64_numpy1.26python3.12.____cpython.yaml} | 12 +- ...rch64_numpy1.22python3.10.____cpython.yaml | 8 +- ...arch64_numpy1.22python3.9.____cpython.yaml | 8 +- ...rch64_numpy1.23python3.11.____cpython.yaml | 8 +- ...ch64_numpy1.26python3.12.____cpython.yaml} | 12 +- ...c64le_numpy1.22python3.10.____cpython.yaml | 8 +- ...pc64le_numpy1.22python3.9.____cpython.yaml | 8 +- ...c64le_numpy1.23python3.11.____cpython.yaml | 8 +- ...64le_numpy1.26python3.12.____cpython.yaml} | 12 +- ...sx_64_numpy1.22python3.10.____cpython.yaml | 10 +- ...osx_64_numpy1.22python3.9.____cpython.yaml | 10 +- ...sx_64_numpy1.23python3.11.____cpython.yaml | 10 +- ...x_64_numpy1.26python3.12.____cpython.yaml} | 14 +- ...arm64_numpy1.22python3.10.____cpython.yaml | 10 +- ..._arm64_numpy1.22python3.9.____cpython.yaml | 10 +- ...arm64_numpy1.23python3.11.____cpython.yaml | 10 +- ...rm64_numpy1.26python3.12.____cpython.yaml} | 14 +- .conda/recipe/meta.yaml | 213 +++++++++--------- .github/workflows/conda-build.yml | 63 +++--- .scripts/build_steps.sh | 18 +- .scripts/run_osx_build.sh | 46 ++-- 24 files changed, 306 insertions(+), 230 deletions(-) rename .ci_support/{linux_64_numpy1.22python3.8.____cpython.yaml => linux_64_numpy1.26python3.12.____cpython.yaml} (87%) rename .ci_support/{linux_aarch64_numpy1.22python3.8.____cpython.yaml => linux_aarch64_numpy1.26python3.12.____cpython.yaml} (88%) rename .ci_support/{linux_ppc64le_numpy1.22python3.8.____cpython.yaml => linux_ppc64le_numpy1.26python3.12.____cpython.yaml} (87%) rename .ci_support/{osx_64_numpy1.22python3.8.____cpython.yaml => osx_64_numpy1.26python3.12.____cpython.yaml} (82%) rename .ci_support/{osx_arm64_numpy1.22python3.8.____cpython.yaml => osx_arm64_numpy1.26python3.12.____cpython.yaml} (82%) diff --git a/.ci_support/linux_64_numpy1.22python3.10.____cpython.yaml b/.ci_support/linux_64_numpy1.22python3.10.____cpython.yaml index b056ac03..0a9b2c06 100644 --- a/.ci_support/linux_64_numpy1.22python3.10.____cpython.yaml +++ b/.ci_support/linux_64_numpy1.22python3.10.____cpython.yaml @@ -1,7 +1,9 @@ +ace: +- 8.0.1 c_compiler: - gcc c_compiler_version: -- '12' +- '13' cdt_name: - cos7 channel_sources: @@ -11,13 +13,13 @@ channel_targets: cxx_compiler: - gxx cxx_compiler_version: -- '12' +- '13' docker_image: - quay.io/condaforge/linux-anvil-cos7-x86_64 gmp: - '6' gnuradio_core: -- 3.10.6 +- 3.10.11 gnuradio_extra_pin: - '' numpy: diff --git a/.ci_support/linux_64_numpy1.22python3.9.____cpython.yaml b/.ci_support/linux_64_numpy1.22python3.9.____cpython.yaml index 96d8a009..cc928b14 100644 --- a/.ci_support/linux_64_numpy1.22python3.9.____cpython.yaml +++ b/.ci_support/linux_64_numpy1.22python3.9.____cpython.yaml @@ -1,7 +1,9 @@ +ace: +- 8.0.1 c_compiler: - gcc c_compiler_version: -- '12' +- '13' cdt_name: - cos7 channel_sources: @@ -11,13 +13,13 @@ channel_targets: cxx_compiler: - gxx cxx_compiler_version: -- '12' +- '13' docker_image: - quay.io/condaforge/linux-anvil-cos7-x86_64 gmp: - '6' gnuradio_core: -- 3.10.6 +- 3.10.11 gnuradio_extra_pin: - '' numpy: diff --git a/.ci_support/linux_64_numpy1.23python3.11.____cpython.yaml b/.ci_support/linux_64_numpy1.23python3.11.____cpython.yaml index 716fac6b..4c79e61f 100644 --- a/.ci_support/linux_64_numpy1.23python3.11.____cpython.yaml +++ b/.ci_support/linux_64_numpy1.23python3.11.____cpython.yaml @@ -1,7 +1,9 @@ +ace: +- 8.0.1 c_compiler: - gcc c_compiler_version: -- '12' +- '13' cdt_name: - cos7 channel_sources: @@ -11,13 +13,13 @@ channel_targets: cxx_compiler: - gxx cxx_compiler_version: -- '12' +- '13' docker_image: - quay.io/condaforge/linux-anvil-cos7-x86_64 gmp: - '6' gnuradio_core: -- 3.10.6 +- 3.10.11 gnuradio_extra_pin: - '' numpy: diff --git a/.ci_support/linux_64_numpy1.22python3.8.____cpython.yaml b/.ci_support/linux_64_numpy1.26python3.12.____cpython.yaml similarity index 87% rename from .ci_support/linux_64_numpy1.22python3.8.____cpython.yaml rename to .ci_support/linux_64_numpy1.26python3.12.____cpython.yaml index 6ecafb4d..0e355479 100644 --- a/.ci_support/linux_64_numpy1.22python3.8.____cpython.yaml +++ b/.ci_support/linux_64_numpy1.26python3.12.____cpython.yaml @@ -1,7 +1,9 @@ +ace: +- 8.0.1 c_compiler: - gcc c_compiler_version: -- '12' +- '13' cdt_name: - cos7 channel_sources: @@ -11,23 +13,23 @@ channel_targets: cxx_compiler: - gxx cxx_compiler_version: -- '12' +- '13' docker_image: - quay.io/condaforge/linux-anvil-cos7-x86_64 gmp: - '6' gnuradio_core: -- 3.10.6 +- 3.10.11 gnuradio_extra_pin: - '' numpy: -- '1.22' +- '1.26' pin_run_as_build: python: min_pin: x.x max_pin: x.x python: -- 3.8.* *_cpython +- 3.12.* *_cpython target_platform: - linux-64 zip_keys: diff --git a/.ci_support/linux_aarch64_numpy1.22python3.10.____cpython.yaml b/.ci_support/linux_aarch64_numpy1.22python3.10.____cpython.yaml index 9827e425..cb247d4a 100644 --- a/.ci_support/linux_aarch64_numpy1.22python3.10.____cpython.yaml +++ b/.ci_support/linux_aarch64_numpy1.22python3.10.____cpython.yaml @@ -1,9 +1,11 @@ BUILD: - aarch64-conda_cos7-linux-gnu +ace: +- 8.0.1 c_compiler: - gcc c_compiler_version: -- '12' +- '13' cdt_arch: - aarch64 cdt_name: @@ -15,13 +17,13 @@ channel_targets: cxx_compiler: - gxx cxx_compiler_version: -- '12' +- '13' docker_image: - quay.io/condaforge/linux-anvil-cos7-x86_64 gmp: - '6' gnuradio_core: -- 3.10.6 +- 3.10.11 gnuradio_extra_pin: - '' numpy: diff --git a/.ci_support/linux_aarch64_numpy1.22python3.9.____cpython.yaml b/.ci_support/linux_aarch64_numpy1.22python3.9.____cpython.yaml index 19ce4afc..435ad1e1 100644 --- a/.ci_support/linux_aarch64_numpy1.22python3.9.____cpython.yaml +++ b/.ci_support/linux_aarch64_numpy1.22python3.9.____cpython.yaml @@ -1,9 +1,11 @@ BUILD: - aarch64-conda_cos7-linux-gnu +ace: +- 8.0.1 c_compiler: - gcc c_compiler_version: -- '12' +- '13' cdt_arch: - aarch64 cdt_name: @@ -15,13 +17,13 @@ channel_targets: cxx_compiler: - gxx cxx_compiler_version: -- '12' +- '13' docker_image: - quay.io/condaforge/linux-anvil-cos7-x86_64 gmp: - '6' gnuradio_core: -- 3.10.6 +- 3.10.11 gnuradio_extra_pin: - '' numpy: diff --git a/.ci_support/linux_aarch64_numpy1.23python3.11.____cpython.yaml b/.ci_support/linux_aarch64_numpy1.23python3.11.____cpython.yaml index f516c7d2..d4d0ae3e 100644 --- a/.ci_support/linux_aarch64_numpy1.23python3.11.____cpython.yaml +++ b/.ci_support/linux_aarch64_numpy1.23python3.11.____cpython.yaml @@ -1,9 +1,11 @@ BUILD: - aarch64-conda_cos7-linux-gnu +ace: +- 8.0.1 c_compiler: - gcc c_compiler_version: -- '12' +- '13' cdt_arch: - aarch64 cdt_name: @@ -15,13 +17,13 @@ channel_targets: cxx_compiler: - gxx cxx_compiler_version: -- '12' +- '13' docker_image: - quay.io/condaforge/linux-anvil-cos7-x86_64 gmp: - '6' gnuradio_core: -- 3.10.6 +- 3.10.11 gnuradio_extra_pin: - '' numpy: diff --git a/.ci_support/linux_aarch64_numpy1.22python3.8.____cpython.yaml b/.ci_support/linux_aarch64_numpy1.26python3.12.____cpython.yaml similarity index 88% rename from .ci_support/linux_aarch64_numpy1.22python3.8.____cpython.yaml rename to .ci_support/linux_aarch64_numpy1.26python3.12.____cpython.yaml index 60998df1..5bac1cd6 100644 --- a/.ci_support/linux_aarch64_numpy1.22python3.8.____cpython.yaml +++ b/.ci_support/linux_aarch64_numpy1.26python3.12.____cpython.yaml @@ -1,9 +1,11 @@ BUILD: - aarch64-conda_cos7-linux-gnu +ace: +- 8.0.1 c_compiler: - gcc c_compiler_version: -- '12' +- '13' cdt_arch: - aarch64 cdt_name: @@ -15,23 +17,23 @@ channel_targets: cxx_compiler: - gxx cxx_compiler_version: -- '12' +- '13' docker_image: - quay.io/condaforge/linux-anvil-cos7-x86_64 gmp: - '6' gnuradio_core: -- 3.10.6 +- 3.10.11 gnuradio_extra_pin: - '' numpy: -- '1.22' +- '1.26' pin_run_as_build: python: min_pin: x.x max_pin: x.x python: -- 3.8.* *_cpython +- 3.12.* *_cpython target_platform: - linux-aarch64 zip_keys: diff --git a/.ci_support/linux_ppc64le_numpy1.22python3.10.____cpython.yaml b/.ci_support/linux_ppc64le_numpy1.22python3.10.____cpython.yaml index e3411bca..2718d8b7 100644 --- a/.ci_support/linux_ppc64le_numpy1.22python3.10.____cpython.yaml +++ b/.ci_support/linux_ppc64le_numpy1.22python3.10.____cpython.yaml @@ -1,7 +1,9 @@ +ace: +- 8.0.1 c_compiler: - gcc c_compiler_version: -- '12' +- '13' cdt_name: - cos7 channel_sources: @@ -11,13 +13,13 @@ channel_targets: cxx_compiler: - gxx cxx_compiler_version: -- '12' +- '13' docker_image: - quay.io/condaforge/linux-anvil-cos7-x86_64 gmp: - '6' gnuradio_core: -- 3.10.6 +- 3.10.11 gnuradio_extra_pin: - '' numpy: diff --git a/.ci_support/linux_ppc64le_numpy1.22python3.9.____cpython.yaml b/.ci_support/linux_ppc64le_numpy1.22python3.9.____cpython.yaml index 96e66c1e..3d21809b 100644 --- a/.ci_support/linux_ppc64le_numpy1.22python3.9.____cpython.yaml +++ b/.ci_support/linux_ppc64le_numpy1.22python3.9.____cpython.yaml @@ -1,7 +1,9 @@ +ace: +- 8.0.1 c_compiler: - gcc c_compiler_version: -- '12' +- '13' cdt_name: - cos7 channel_sources: @@ -11,13 +13,13 @@ channel_targets: cxx_compiler: - gxx cxx_compiler_version: -- '12' +- '13' docker_image: - quay.io/condaforge/linux-anvil-cos7-x86_64 gmp: - '6' gnuradio_core: -- 3.10.6 +- 3.10.11 gnuradio_extra_pin: - '' numpy: diff --git a/.ci_support/linux_ppc64le_numpy1.23python3.11.____cpython.yaml b/.ci_support/linux_ppc64le_numpy1.23python3.11.____cpython.yaml index 49c0b9ad..dcafbcf0 100644 --- a/.ci_support/linux_ppc64le_numpy1.23python3.11.____cpython.yaml +++ b/.ci_support/linux_ppc64le_numpy1.23python3.11.____cpython.yaml @@ -1,7 +1,9 @@ +ace: +- 8.0.1 c_compiler: - gcc c_compiler_version: -- '12' +- '13' cdt_name: - cos7 channel_sources: @@ -11,13 +13,13 @@ channel_targets: cxx_compiler: - gxx cxx_compiler_version: -- '12' +- '13' docker_image: - quay.io/condaforge/linux-anvil-cos7-x86_64 gmp: - '6' gnuradio_core: -- 3.10.6 +- 3.10.11 gnuradio_extra_pin: - '' numpy: diff --git a/.ci_support/linux_ppc64le_numpy1.22python3.8.____cpython.yaml b/.ci_support/linux_ppc64le_numpy1.26python3.12.____cpython.yaml similarity index 87% rename from .ci_support/linux_ppc64le_numpy1.22python3.8.____cpython.yaml rename to .ci_support/linux_ppc64le_numpy1.26python3.12.____cpython.yaml index 576489eb..37590c48 100644 --- a/.ci_support/linux_ppc64le_numpy1.22python3.8.____cpython.yaml +++ b/.ci_support/linux_ppc64le_numpy1.26python3.12.____cpython.yaml @@ -1,7 +1,9 @@ +ace: +- 8.0.1 c_compiler: - gcc c_compiler_version: -- '12' +- '13' cdt_name: - cos7 channel_sources: @@ -11,23 +13,23 @@ channel_targets: cxx_compiler: - gxx cxx_compiler_version: -- '12' +- '13' docker_image: - quay.io/condaforge/linux-anvil-cos7-x86_64 gmp: - '6' gnuradio_core: -- 3.10.6 +- 3.10.11 gnuradio_extra_pin: - '' numpy: -- '1.22' +- '1.26' pin_run_as_build: python: min_pin: x.x max_pin: x.x python: -- 3.8.* *_cpython +- 3.12.* *_cpython target_platform: - linux-ppc64le zip_keys: diff --git a/.ci_support/osx_64_numpy1.22python3.10.____cpython.yaml b/.ci_support/osx_64_numpy1.22python3.10.____cpython.yaml index 69008603..76bfad28 100644 --- a/.ci_support/osx_64_numpy1.22python3.10.____cpython.yaml +++ b/.ci_support/osx_64_numpy1.22python3.10.____cpython.yaml @@ -1,9 +1,13 @@ MACOSX_DEPLOYMENT_TARGET: - '10.13' +MACOSX_SDK_VERSION: +- '10.13' +ace: +- 8.0.1 c_compiler: - clang c_compiler_version: -- '16' +- '17' channel_sources: - conda-forge channel_targets: @@ -11,9 +15,9 @@ channel_targets: cxx_compiler: - clangxx cxx_compiler_version: -- '16' +- '17' gnuradio_core: -- 3.10.6 +- 3.10.11 gnuradio_extra_pin: - '' macos_machine: diff --git a/.ci_support/osx_64_numpy1.22python3.9.____cpython.yaml b/.ci_support/osx_64_numpy1.22python3.9.____cpython.yaml index 9cac7669..e9977dd5 100644 --- a/.ci_support/osx_64_numpy1.22python3.9.____cpython.yaml +++ b/.ci_support/osx_64_numpy1.22python3.9.____cpython.yaml @@ -1,9 +1,13 @@ MACOSX_DEPLOYMENT_TARGET: - '10.13' +MACOSX_SDK_VERSION: +- '10.13' +ace: +- 8.0.1 c_compiler: - clang c_compiler_version: -- '16' +- '17' channel_sources: - conda-forge channel_targets: @@ -11,9 +15,9 @@ channel_targets: cxx_compiler: - clangxx cxx_compiler_version: -- '16' +- '17' gnuradio_core: -- 3.10.6 +- 3.10.11 gnuradio_extra_pin: - '' macos_machine: diff --git a/.ci_support/osx_64_numpy1.23python3.11.____cpython.yaml b/.ci_support/osx_64_numpy1.23python3.11.____cpython.yaml index 418d4ab0..eb2e63b9 100644 --- a/.ci_support/osx_64_numpy1.23python3.11.____cpython.yaml +++ b/.ci_support/osx_64_numpy1.23python3.11.____cpython.yaml @@ -1,9 +1,13 @@ MACOSX_DEPLOYMENT_TARGET: - '10.13' +MACOSX_SDK_VERSION: +- '10.13' +ace: +- 8.0.1 c_compiler: - clang c_compiler_version: -- '16' +- '17' channel_sources: - conda-forge channel_targets: @@ -11,9 +15,9 @@ channel_targets: cxx_compiler: - clangxx cxx_compiler_version: -- '16' +- '17' gnuradio_core: -- 3.10.6 +- 3.10.11 gnuradio_extra_pin: - '' macos_machine: diff --git a/.ci_support/osx_64_numpy1.22python3.8.____cpython.yaml b/.ci_support/osx_64_numpy1.26python3.12.____cpython.yaml similarity index 82% rename from .ci_support/osx_64_numpy1.22python3.8.____cpython.yaml rename to .ci_support/osx_64_numpy1.26python3.12.____cpython.yaml index f2d24928..ef49752a 100644 --- a/.ci_support/osx_64_numpy1.22python3.8.____cpython.yaml +++ b/.ci_support/osx_64_numpy1.26python3.12.____cpython.yaml @@ -1,9 +1,13 @@ MACOSX_DEPLOYMENT_TARGET: - '10.13' +MACOSX_SDK_VERSION: +- '10.13' +ace: +- 8.0.1 c_compiler: - clang c_compiler_version: -- '16' +- '17' channel_sources: - conda-forge channel_targets: @@ -11,21 +15,21 @@ channel_targets: cxx_compiler: - clangxx cxx_compiler_version: -- '16' +- '17' gnuradio_core: -- 3.10.6 +- 3.10.11 gnuradio_extra_pin: - '' macos_machine: - x86_64-apple-darwin13.4.0 numpy: -- '1.22' +- '1.26' pin_run_as_build: python: min_pin: x.x max_pin: x.x python: -- 3.8.* *_cpython +- 3.12.* *_cpython target_platform: - osx-64 zip_keys: diff --git a/.ci_support/osx_arm64_numpy1.22python3.10.____cpython.yaml b/.ci_support/osx_arm64_numpy1.22python3.10.____cpython.yaml index cc2ac42d..579a228b 100644 --- a/.ci_support/osx_arm64_numpy1.22python3.10.____cpython.yaml +++ b/.ci_support/osx_arm64_numpy1.22python3.10.____cpython.yaml @@ -1,9 +1,13 @@ MACOSX_DEPLOYMENT_TARGET: - '11.0' +MACOSX_SDK_VERSION: +- '11.0' +ace: +- 8.0.1 c_compiler: - clang c_compiler_version: -- '16' +- '17' channel_sources: - conda-forge channel_targets: @@ -11,9 +15,9 @@ channel_targets: cxx_compiler: - clangxx cxx_compiler_version: -- '16' +- '17' gnuradio_core: -- 3.10.6 +- 3.10.11 gnuradio_extra_pin: - '' macos_machine: diff --git a/.ci_support/osx_arm64_numpy1.22python3.9.____cpython.yaml b/.ci_support/osx_arm64_numpy1.22python3.9.____cpython.yaml index 9059e2d6..9549c5bd 100644 --- a/.ci_support/osx_arm64_numpy1.22python3.9.____cpython.yaml +++ b/.ci_support/osx_arm64_numpy1.22python3.9.____cpython.yaml @@ -1,9 +1,13 @@ MACOSX_DEPLOYMENT_TARGET: - '11.0' +MACOSX_SDK_VERSION: +- '11.0' +ace: +- 8.0.1 c_compiler: - clang c_compiler_version: -- '16' +- '17' channel_sources: - conda-forge channel_targets: @@ -11,9 +15,9 @@ channel_targets: cxx_compiler: - clangxx cxx_compiler_version: -- '16' +- '17' gnuradio_core: -- 3.10.6 +- 3.10.11 gnuradio_extra_pin: - '' macos_machine: diff --git a/.ci_support/osx_arm64_numpy1.23python3.11.____cpython.yaml b/.ci_support/osx_arm64_numpy1.23python3.11.____cpython.yaml index afb61750..e8887e07 100644 --- a/.ci_support/osx_arm64_numpy1.23python3.11.____cpython.yaml +++ b/.ci_support/osx_arm64_numpy1.23python3.11.____cpython.yaml @@ -1,9 +1,13 @@ MACOSX_DEPLOYMENT_TARGET: - '11.0' +MACOSX_SDK_VERSION: +- '11.0' +ace: +- 8.0.1 c_compiler: - clang c_compiler_version: -- '16' +- '17' channel_sources: - conda-forge channel_targets: @@ -11,9 +15,9 @@ channel_targets: cxx_compiler: - clangxx cxx_compiler_version: -- '16' +- '17' gnuradio_core: -- 3.10.6 +- 3.10.11 gnuradio_extra_pin: - '' macos_machine: diff --git a/.ci_support/osx_arm64_numpy1.22python3.8.____cpython.yaml b/.ci_support/osx_arm64_numpy1.26python3.12.____cpython.yaml similarity index 82% rename from .ci_support/osx_arm64_numpy1.22python3.8.____cpython.yaml rename to .ci_support/osx_arm64_numpy1.26python3.12.____cpython.yaml index 4b728f41..d6181c9e 100644 --- a/.ci_support/osx_arm64_numpy1.22python3.8.____cpython.yaml +++ b/.ci_support/osx_arm64_numpy1.26python3.12.____cpython.yaml @@ -1,9 +1,13 @@ MACOSX_DEPLOYMENT_TARGET: - '11.0' +MACOSX_SDK_VERSION: +- '11.0' +ace: +- 8.0.1 c_compiler: - clang c_compiler_version: -- '16' +- '17' channel_sources: - conda-forge channel_targets: @@ -11,21 +15,21 @@ channel_targets: cxx_compiler: - clangxx cxx_compiler_version: -- '16' +- '17' gnuradio_core: -- 3.10.6 +- 3.10.11 gnuradio_extra_pin: - '' macos_machine: - arm64-apple-darwin20.0.0 numpy: -- '1.22' +- '1.26' pin_run_as_build: python: min_pin: x.x max_pin: x.x python: -- 3.8.* *_cpython +- 3.12.* *_cpython target_platform: - osx-arm64 zip_keys: diff --git a/.conda/recipe/meta.yaml b/.conda/recipe/meta.yaml index c576ef3c..36b459e9 100644 --- a/.conda/recipe/meta.yaml +++ b/.conda/recipe/meta.yaml @@ -9,119 +9,118 @@ {% set version = (tag_version if post_commit == "0" else "{0}.post{1}+{2}".format(tag_version, post_commit, hash)) if tag_version else fallback_version %} package: -  name: {{ name|lower }} -  version: {{ version }} + name: {{ name|lower }} + version: {{ version }} source: -  # use local path or git repository depending on if the build is local or done on CI -  path: "../.."  # [not os.environ.get("CI")] -  git_url: {{ environ.get('FEEDSTOCK_ROOT', "../..") }}  # [os.environ.get("CI")] + # use local path or git repository depending on if the build is local or done on CI + path: "../.." # [not os.environ.get("CI")] + git_url: {{ environ.get('FEEDSTOCK_ROOT', "../..") }} # [os.environ.get("CI")] build: -  number: 0 -  skip: true  # [win] -  skip: true  # [py>=313] -  + number: 0 + skip: true # [win] + skip: true # [py>=313] + requirements: -  build: -    - {{ compiler("c") }} -    - {{ compiler("cxx") }} -    - cmake -    - git -    - ninja -    - pkg-config -    # cross-compilation requirements -    - python                              # [build_platform != target_platform] -    - cross-python_{{ target_platform }}  # [build_platform != target_platform] -    - numpy                               # [build_platform != target_platform] -    - pybind11                            # [build_platform != target_platform] -    # Add extra build tool dependencies here -    - boost-cpp=1.84.0 -    - volk=3.1.2 - -  host: -    - gmp  # [linux] -    # the following two entries are for generating builds against specific GR versions -    - gnuradio-core  # [not gnuradio_extra_pin] -    - gnuradio-core {{ gnuradio_extra_pin }}.*  # [gnuradio_extra_pin] -    - pip  # [win] -    - pybind11 -    - python -    - numpy -    # Add/remove library dependencies here -    - boost-cpp=1.84.0 -    - volk=3.1.2 - -  run: -    - numpy -    - python -    # Add/remove runtime dependencies here -    - boost-cpp=1.84.0 -    - volk=3.1.2 + build: + - {{ compiler("c") }} + - {{ compiler("cxx") }} + - cmake + - git + - ninja + - pkg-config + # cross-compilation requirements + - python # [build_platform != target_platform] + - cross-python_{{ target_platform }} # [build_platform != target_platform] + - numpy # [build_platform != target_platform] + - pybind11 # [build_platform != target_platform] + # Add extra build tool dependencies here + - boost-cpp=1.84.0 + - volk=3.1.2 + + host: + - gmp # [linux] + # the following two entries are for generating builds against specific GR versions + - gnuradio-core # [not gnuradio_extra_pin] + - gnuradio-core {{ gnuradio_extra_pin }}.* # [gnuradio_extra_pin] + - pip # [win] + - pybind11 + - python + - numpy + # Add/remove library dependencies here + - boost-cpp=1.84.0 + - volk=3.1.2 + + run: + - numpy + - python + # Add/remove runtime dependencies here + - boost-cpp=1.84.0 + - volk=3.1.2 test: -  requires: -    - gnuradio-grc -    - gnuradio-uhd -  commands: -    ## verify that commands run -    #- COMMAND --help - -    # verify that (some) headers get installed -    - test -f $PREFIX/include/gnuradio/{{ oot_name }}/api.h  # [not win] -    - if not exist %PREFIX%\\Library\\include\\gnuradio\\{{ oot_name }}\\api.h exit 1  # [win] - -    # verify that libraries get installed -    - test -f $PREFIX/lib/lib{{ name }}${SHLIB_EXT}  # [not win] -    - if not exist %PREFIX%\\Library\\bin\\{{ name }}.dll exit 1  # [win] -    - if not exist %PREFIX%\\Library\\lib\\{{ name }}.lib exit 1  # [win] - -    # verify that (some) GRC blocks get installed -    {% set blocks = ["lora_rx", "lora_tx", "header", "header_decoder", "modulate"] %} -    {% for block in blocks %} -    - test -f $PREFIX/share/gnuradio/grc/blocks/{{ oot_name }}_{{ block }}.block.yml  # [not win] -    - if not exist %PREFIX%\\Library\\share\\gnuradio\\grc\\blocks\\{{ oot_name }}_{{ block }}.block.yml exit 1  # [win] -    {% endfor %} - -    # verify that examples get installed -    {% set example_grcs = ["lora_RX", "lora_TX", "tx_rx_functionality_check", "tx_rx_simulation", "tx_rx_usrp"] %} -    {% for eg in example_grcs %} -    - grcc $PREFIX/share/gr-{{ oot_name }}/examples/{{ eg }}.grc  # [not win] -    - grcc %PREFIX%\\Library\\share\\gr-{{ oot_name}}\\examples\\{{ eg }}.grc  # [win] -    {% endfor %} - -  imports: -    # verify that the python module imports -    - gnuradio.{{ oot_name }} + requires: + - gnuradio-grc + - gnuradio-uhd + commands: + ## verify that commands run + #- COMMAND --help + + # verify that (some) headers get installed + - test -f $PREFIX/include/gnuradio/{{ oot_name }}/api.h # [not win] + - if not exist %PREFIX%\\Library\\include\\gnuradio\\{{ oot_name }}\\api.h exit 1 # [win] + + # verify that libraries get installed + - test -f $PREFIX/lib/lib{{ name }}${SHLIB_EXT} # [not win] + - if not exist %PREFIX%\\Library\\bin\\{{ name }}.dll exit 1 # [win] + - if not exist %PREFIX%\\Library\\lib\\{{ name }}.lib exit 1 # [win] + + # verify that (some) GRC blocks get installed + {% set blocks = ["lora_rx", "lora_tx", "header", "header_decoder", "modulate"] %} + {% for block in blocks %} + - test -f $PREFIX/share/gnuradio/grc/blocks/{{ oot_name }}_{{ block }}.block.yml # [not win] + - if not exist %PREFIX%\\Library\\share\\gnuradio\\grc\\blocks\\{{ oot_name }}_{{ block }}.block.yml exit 1 # [win] + {% endfor %} + + # verify that examples get installed + {% set example_grcs = ["lora_RX", "lora_TX", "tx_rx_functionality_check", "tx_rx_simulation", "tx_rx_usrp"] %} + {% for eg in example_grcs %} + - grcc $PREFIX/share/gr-{{ oot_name }}/examples/{{ eg }}.grc # [not win] + - grcc %PREFIX%\\Library\\share\\gr-{{ oot_name}}\\examples\\{{ eg }}.grc # [win] + {% endfor %} + + imports: + # verify that the python module imports + - gnuradio.{{ oot_name }} about: -  home: https://github.com/tapparelj/gr-lora_sdr -  license: GPL-3.0-or-later -  license_file: LICENSE -  summary: GNU Radio software-defined radio (SDR) implementation of a LoRa transceiver -  description: > -    This is the fully-functional GNU Radio software-defined radio (SDR) -    implementation of a LoRa transceiver with all the necessary receiver -    components to operate correctly even at very low SNRs. The transceiver is -    available as a module for GNU Radio 3.10. This work has been conducted at -    the Telecommunication Circuits Laboratory, EPFL.
- -    In the GNU Radio implementation of the LoRa Tx and Rx chains the user can -    choose all the parameters of the transmission, such as the spreading -    factor, the coding rate, the bandwidth, the sync word, the presence of an -    explicit header and CRC.
- -    Example gnuradio-companion flowgraphs are installed with the package and can be found in: - -        - (Linux/macOS) `$CONDA_PREFIX/share/gr-lora_sdr/examples` -        - (Windows) `%CONDA_PREFIX%\share\gr-lora_sdr\examples` -   
-    If you find this module useful for your project, please consider citing the -    publication "An Open-Source LoRa Physical Layer Prototype on GNU Radio" -    (IEEE Xplore,   -    arXiv) -   

Installation issue

-    Add conda-forge to the list of channel for installation with:
-    `conda install -c tapparelj -c conda-forge gnuradio-lora_sdr` - - + home: https://github.com/tapparelj/gr-lora_sdr + license: GPL-3.0-or-later + license_file: LICENSE + summary: GNU Radio software-defined radio (SDR) implementation of a LoRa transceiver + description: > + This is the fully-functional GNU Radio software-defined radio (SDR) + implementation of a LoRa transceiver with all the necessary receiver + components to operate correctly even at very low SNRs. The transceiver is + available as a module for GNU Radio 3.10. This work has been conducted at + the Telecommunication Circuits Laboratory, EPFL.
+ + In the GNU Radio implementation of the LoRa Tx and Rx chains the user can + choose all the parameters of the transmission, such as the spreading + factor, the coding rate, the bandwidth, the sync word, the presence of an + explicit header and CRC.
+ + Example gnuradio-companion flowgraphs are installed with the package and can be found in: + + - (Linux/macOS) `$CONDA_PREFIX/share/gr-lora_sdr/examples` + - (Windows) `%CONDA_PREFIX%\share\gr-lora_sdr\examples` +
+ If you find this module useful for your project, please consider citing the + publication "An Open-Source LoRa Physical Layer Prototype on GNU Radio" + (IEEE Xplore, + arXiv) +

Installation issue

+ Add conda-forge to the list of channel for installation with:
+ `conda install -c tapparelj -c conda-forge gnuradio-lora_sdr` + diff --git a/.github/workflows/conda-build.yml b/.github/workflows/conda-build.yml index fd9fd475..557aa528 100644 --- a/.github/workflows/conda-build.yml +++ b/.github/workflows/conda-build.yml @@ -29,12 +29,6 @@ jobs: os: ubuntu runs_on: ['ubuntu-latest'] DOCKER_IMAGE: quay.io/condaforge/linux-anvil-cos7-x86_64 - - CONFIG: linux_64_numpy1.22python3.8.____cpython - SHORT_CONFIG: linux_64_numpy1.22python3.8.____cpython - UPLOAD_PACKAGES: True - os: ubuntu - runs_on: ['ubuntu-latest'] - DOCKER_IMAGE: quay.io/condaforge/linux-anvil-cos7-x86_64 - CONFIG: linux_64_numpy1.22python3.9.____cpython SHORT_CONFIG: linux_64_numpy1.22python3.9.____cpython UPLOAD_PACKAGES: True @@ -47,14 +41,14 @@ jobs: os: ubuntu runs_on: ['ubuntu-latest'] DOCKER_IMAGE: quay.io/condaforge/linux-anvil-cos7-x86_64 - - CONFIG: linux_aarch64_numpy1.22python3.10.____cpython - SHORT_CONFIG: linux_aarch64_numpy1.22python3.10.____cpython + - CONFIG: linux_64_numpy1.26python3.12.____cpython + SHORT_CONFIG: linux_64_numpy1.26python3.12.____cpython UPLOAD_PACKAGES: True os: ubuntu runs_on: ['ubuntu-latest'] DOCKER_IMAGE: quay.io/condaforge/linux-anvil-cos7-x86_64 - - CONFIG: linux_aarch64_numpy1.22python3.8.____cpython - SHORT_CONFIG: linux_aarch64_numpy1.22python3.8.____cpython + - CONFIG: linux_aarch64_numpy1.22python3.10.____cpython + SHORT_CONFIG: linux_aarch64_numpy1.22python3.10.____cpython UPLOAD_PACKAGES: True os: ubuntu runs_on: ['ubuntu-latest'] @@ -71,14 +65,14 @@ jobs: os: ubuntu runs_on: ['ubuntu-latest'] DOCKER_IMAGE: quay.io/condaforge/linux-anvil-cos7-x86_64 - - CONFIG: linux_ppc64le_numpy1.22python3.10.____cpython - SHORT_CONFIG: linux_ppc64le_numpy1.22python3.10.____cpython + - CONFIG: linux_aarch64_numpy1.26python3.12.____cpython + SHORT_CONFIG: linux_aarch64_numpy1.26python3.12.____cpython UPLOAD_PACKAGES: True os: ubuntu runs_on: ['ubuntu-latest'] DOCKER_IMAGE: quay.io/condaforge/linux-anvil-cos7-x86_64 - - CONFIG: linux_ppc64le_numpy1.22python3.8.____cpython - SHORT_CONFIG: linux_ppc64le_numpy1.22python3.8.____cpython + - CONFIG: linux_ppc64le_numpy1.22python3.10.____cpython + SHORT_CONFIG: linux_ppc64le_numpy1.22python3.10.____cpython UPLOAD_PACKAGES: True os: ubuntu runs_on: ['ubuntu-latest'] @@ -95,16 +89,17 @@ jobs: os: ubuntu runs_on: ['ubuntu-latest'] DOCKER_IMAGE: quay.io/condaforge/linux-anvil-cos7-x86_64 + - CONFIG: linux_ppc64le_numpy1.26python3.12.____cpython + SHORT_CONFIG: linux_ppc64le_numpy1.26python3.12.____cpython + UPLOAD_PACKAGES: True + os: ubuntu + runs_on: ['ubuntu-latest'] + DOCKER_IMAGE: quay.io/condaforge/linux-anvil-cos7-x86_64 - CONFIG: osx_64_numpy1.22python3.10.____cpython SHORT_CONFIG: osx_64_numpy1.22python3.10.____cpython UPLOAD_PACKAGES: True os: macos runs_on: ['macos-13'] - - CONFIG: osx_64_numpy1.22python3.8.____cpython - SHORT_CONFIG: osx_64_numpy1.22python3.8.____cpython - UPLOAD_PACKAGES: True - os: macos - runs_on: ['macos-13'] - CONFIG: osx_64_numpy1.22python3.9.____cpython SHORT_CONFIG: osx_64_numpy1.22python3.9.____cpython UPLOAD_PACKAGES: True @@ -115,13 +110,13 @@ jobs: UPLOAD_PACKAGES: True os: macos runs_on: ['macos-13'] - - CONFIG: osx_arm64_numpy1.22python3.10.____cpython - SHORT_CONFIG: osx_arm64_numpy1.22python3.10.____cpython + - CONFIG: osx_64_numpy1.26python3.12.____cpython + SHORT_CONFIG: osx_64_numpy1.26python3.12.____cpython UPLOAD_PACKAGES: True os: macos runs_on: ['macos-13'] - - CONFIG: osx_arm64_numpy1.22python3.8.____cpython - SHORT_CONFIG: osx_arm64_numpy1.22python3.8.____cpython + - CONFIG: osx_arm64_numpy1.22python3.10.____cpython + SHORT_CONFIG: osx_arm64_numpy1.22python3.10.____cpython UPLOAD_PACKAGES: True os: macos runs_on: ['macos-13'] @@ -135,10 +130,15 @@ jobs: UPLOAD_PACKAGES: True os: macos runs_on: ['macos-13'] + - CONFIG: osx_arm64_numpy1.26python3.12.____cpython + SHORT_CONFIG: osx_arm64_numpy1.26python3.12.____cpython + UPLOAD_PACKAGES: True + os: macos + runs_on: ['macos-13'] steps: - name: Checkout code - uses: actions/checkout@v4 + uses: actions/checkout@0ad4b8fadaa221de15dcec353f45205ec38ea70b # v4.1.4 with: fetch-depth: 0 @@ -191,13 +191,6 @@ jobs: fi ./.scripts/run_osx_build.sh - - name: Install Miniconda for windows - uses: conda-incubator/setup-miniconda@v3 - with: - miniforge-version: latest - miniforge-variant: Mambaforge - if: matrix.os == 'windows' - - name: Build on windows shell: cmd run: | @@ -206,6 +199,7 @@ jobs: set "sha=%GITHUB_SHA%" call ".scripts\run_win_build.bat" env: + MINIFORGE_HOME: D:\Miniforge PYTHONUNBUFFERED: 1 CONFIG: ${{ matrix.CONFIG }} CI: github_actions @@ -221,6 +215,7 @@ jobs: CONFIG: ${{ matrix.CONFIG }} SHORT_CONFIG: ${{ matrix.SHORT_CONFIG }} OS: ${{ matrix.os }} + MINIFORGE_HOME_WIN: D:\Miniforge run: | export CI=github_actions export CI_RUN_ID=$GITHUB_RUN_ID @@ -229,7 +224,7 @@ jobs: if [ $OS == "macos" ]; then export CONDA_BLD_DIR="${MINIFORGE_HOME:-${HOME}/miniforge3}/conda-bld" elif [ $OS == "windows" ]; then - export CONDA_BLD_DIR="${CONDA//\\//}/conda-bld" + export CONDA_BLD_DIR="${MINIFORGE_HOME_WIN//\\//}/conda-bld" else export CONDA_BLD_DIR="build_artifacts" fi @@ -248,7 +243,7 @@ jobs: continue-on-error: true - name: Store conda build artifacts - uses: actions/upload-artifact@v3 + uses: actions/upload-artifact@50769540e7f4bd5e21e526ee35c689e35e0d6874 # v4.4.0 if: ${{ always() && steps.prepare-artifacts.outcome == 'success' }} with: name: ${{ steps.prepare-artifacts.outputs.BLD_ARTIFACT_NAME }} @@ -257,7 +252,7 @@ jobs: continue-on-error: true - name: Store conda build environment artifacts - uses: actions/upload-artifact@v3 + uses: actions/upload-artifact@50769540e7f4bd5e21e526ee35c689e35e0d6874 # v4.4.0 if: ${{ failure() && steps.prepare-artifacts.outcome == 'success' }} with: name: ${{ steps.prepare-artifacts.outputs.ENV_ARTIFACT_NAME }} diff --git a/.scripts/build_steps.sh b/.scripts/build_steps.sh index ddccc5d1..352d0523 100755 --- a/.scripts/build_steps.sh +++ b/.scripts/build_steps.sh @@ -31,18 +31,20 @@ pkgs_dirs: solver: libmamba CONDARC +mv /opt/conda/conda-meta/history /opt/conda/conda-meta/history.$(date +%Y-%m-%d-%H-%M-%S) +echo > /opt/conda/conda-meta/history +micromamba install --root-prefix ~/.conda --prefix /opt/conda \ + --yes --override-channels --channel conda-forge --strict-channel-priority \ + pip python=3.12 conda-build conda-forge-ci-setup=4 "conda-build>=24.1" export CONDA_LIBMAMBA_SOLVER_NO_CHANNELS_FROM_INSTALLED=1 -mamba install --update-specs --yes --quiet --channel conda-forge --strict-channel-priority \ - pip mamba conda-build conda-forge-ci-setup=4 "conda-build>=24.1" -mamba update --update-specs --yes --quiet --channel conda-forge --strict-channel-priority \ - pip mamba conda-build conda-forge-ci-setup=4 "conda-build>=24.1" - # set up the condarc setup_conda_rc "${FEEDSTOCK_ROOT}" "${RECIPE_ROOT}" "${CONFIG_FILE}" source run_conda_forge_build_setup + + # make the build number clobber make_build_number "${FEEDSTOCK_ROOT}" "${RECIPE_ROOT}" "${CONFIG_FILE}" @@ -72,6 +74,12 @@ else --suppress-variables ${EXTRA_CB_OPTIONS:-} \ --clobber-file "${CI_SUPPORT}/clobber_${CONFIG}.yaml" \ --extra-meta flow_run_id="${flow_run_id:-}" remote_url="${remote_url:-}" sha="${sha:-}" + ( startgroup "Inspecting artifacts" ) 2> /dev/null + + # inspect_artifacts was only added in conda-forge-ci-setup 4.9.4 + 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" + + ( endgroup "Inspecting artifacts" ) 2> /dev/null ( startgroup "Uploading packages" ) 2> /dev/null diff --git a/.scripts/run_osx_build.sh b/.scripts/run_osx_build.sh index 641aa3ee..06b0765f 100755 --- a/.scripts/run_osx_build.sh +++ b/.scripts/run_osx_build.sh @@ -7,28 +7,39 @@ source .scripts/logging_utils.sh set -xe MINIFORGE_HOME=${MINIFORGE_HOME:-${HOME}/miniforge3} +MINIFORGE_HOME=${MINIFORGE_HOME%/} # remove trailing slash -( startgroup "Installing a fresh version of Miniforge" ) 2> /dev/null - -MINIFORGE_URL="https://github.com/conda-forge/miniforge/releases/latest/download" -MINIFORGE_FILE="Mambaforge-MacOSX-$(uname -m).sh" -curl -L -O "${MINIFORGE_URL}/${MINIFORGE_FILE}" -rm -rf ${MINIFORGE_HOME} -bash $MINIFORGE_FILE -b -p ${MINIFORGE_HOME} - -( endgroup "Installing a fresh version of Miniforge" ) 2> /dev/null +( startgroup "Provisioning base env with micromamba" ) 2> /dev/null +MICROMAMBA_VERSION="1.5.10-0" +if [[ "$(uname -m)" == "arm64" ]]; then + osx_arch="osx-arm64" +else + osx_arch="osx-64" +fi +MICROMAMBA_URL="https://github.com/mamba-org/micromamba-releases/releases/download/${MICROMAMBA_VERSION}/micromamba-${osx_arch}" +MAMBA_ROOT_PREFIX="${MINIFORGE_HOME}-micromamba-$(date +%s)" +echo "Downloading micromamba ${MICROMAMBA_VERSION}" +micromamba_exe="$(mktemp -d)/micromamba" +curl -L -o "${micromamba_exe}" "${MICROMAMBA_URL}" +chmod +x "${micromamba_exe}" +echo "Creating environment" +"${micromamba_exe}" create --yes --root-prefix "${MAMBA_ROOT_PREFIX}" --prefix "${MINIFORGE_HOME}" \ + --channel conda-forge \ + pip python=3.12 conda-build conda-forge-ci-setup=4 "conda-build>=24.1" +echo "Moving pkgs cache from ${MAMBA_ROOT_PREFIX} to ${MINIFORGE_HOME}" +mv "${MAMBA_ROOT_PREFIX}/pkgs" "${MINIFORGE_HOME}" +echo "Cleaning up micromamba" +rm -rf "${MAMBA_ROOT_PREFIX}" "${micromamba_exe}" || true +( endgroup "Provisioning base env with micromamba" ) 2> /dev/null ( startgroup "Configuring conda" ) 2> /dev/null -source ${MINIFORGE_HOME}/etc/profile.d/conda.sh +source "${MINIFORGE_HOME}/etc/profile.d/conda.sh" conda activate base export CONDA_SOLVER="libmamba" export CONDA_LIBMAMBA_SOLVER_NO_CHANNELS_FROM_INSTALLED=1 -mamba install --update-specs --quiet --yes --channel conda-forge --strict-channel-priority \ - pip mamba conda-build conda-forge-ci-setup=4 "conda-build>=24.1" -mamba update --update-specs --yes --quiet --channel conda-forge --strict-channel-priority \ - pip mamba conda-build conda-forge-ci-setup=4 "conda-build>=24.1" + @@ -86,6 +97,13 @@ else --clobber-file ./.ci_support/clobber_${CONFIG}.yaml \ --extra-meta flow_run_id="$flow_run_id" remote_url="$remote_url" sha="$sha" + ( startgroup "Inspecting artifacts" ) 2> /dev/null + + # inspect_artifacts was only added in conda-forge-ci-setup 4.9.4 + command -v inspect_artifacts >/dev/null 2>&1 && inspect_artifacts --recipe-dir ./.conda/recipe -m ./.ci_support/${CONFIG}.yaml || echo "inspect_artifacts needs conda-forge-ci-setup >=4.9.4" + + ( endgroup "Inspecting artifacts" ) 2> /dev/null + ( startgroup "Uploading packages" ) 2> /dev/null if [[ "${UPLOAD_PACKAGES}" != "False" ]] && [[ "${IS_PR_BUILD}" == "False" ]]; then From 80b3946e08d4472a01b438caededd83fb3f3cd1b Mon Sep 17 00:00:00 2001 From: tinyboxvk Date: Mon, 21 Oct 2024 14:37:07 -0300 Subject: [PATCH 04/12] Use latest stable version for actions --- .github/workflows/conda-build.yml | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/.github/workflows/conda-build.yml b/.github/workflows/conda-build.yml index 557aa528..96616986 100644 --- a/.github/workflows/conda-build.yml +++ b/.github/workflows/conda-build.yml @@ -138,7 +138,7 @@ jobs: steps: - name: Checkout code - uses: actions/checkout@0ad4b8fadaa221de15dcec353f45205ec38ea70b # v4.1.4 + uses: actions/checkout@4 with: fetch-depth: 0 @@ -243,7 +243,7 @@ jobs: continue-on-error: true - name: Store conda build artifacts - uses: actions/upload-artifact@50769540e7f4bd5e21e526ee35c689e35e0d6874 # v4.4.0 + uses: actions/upload-artifact@4 if: ${{ always() && steps.prepare-artifacts.outcome == 'success' }} with: name: ${{ steps.prepare-artifacts.outputs.BLD_ARTIFACT_NAME }} @@ -252,7 +252,7 @@ jobs: continue-on-error: true - name: Store conda build environment artifacts - uses: actions/upload-artifact@50769540e7f4bd5e21e526ee35c689e35e0d6874 # v4.4.0 + uses: actions/upload-artifact@4 if: ${{ failure() && steps.prepare-artifacts.outcome == 'success' }} with: name: ${{ steps.prepare-artifacts.outputs.ENV_ARTIFACT_NAME }} From 8f3c26b1e8845240d50adc97efba1d6ddf3267cb Mon Sep 17 00:00:00 2001 From: tinyboxvk Date: Mon, 21 Oct 2024 14:39:22 -0300 Subject: [PATCH 05/12] Fix typo --- .github/workflows/conda-build.yml | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/.github/workflows/conda-build.yml b/.github/workflows/conda-build.yml index 96616986..6dd0dd26 100644 --- a/.github/workflows/conda-build.yml +++ b/.github/workflows/conda-build.yml @@ -138,7 +138,7 @@ jobs: steps: - name: Checkout code - uses: actions/checkout@4 + uses: actions/checkout@v4 with: fetch-depth: 0 @@ -243,7 +243,7 @@ jobs: continue-on-error: true - name: Store conda build artifacts - uses: actions/upload-artifact@4 + uses: actions/upload-artifact@v4 if: ${{ always() && steps.prepare-artifacts.outcome == 'success' }} with: name: ${{ steps.prepare-artifacts.outputs.BLD_ARTIFACT_NAME }} @@ -252,7 +252,7 @@ jobs: continue-on-error: true - name: Store conda build environment artifacts - uses: actions/upload-artifact@4 + uses: actions/upload-artifact@v4 if: ${{ failure() && steps.prepare-artifacts.outcome == 'success' }} with: name: ${{ steps.prepare-artifacts.outputs.ENV_ARTIFACT_NAME }} From 1131d846b959c5994964bc90cfba3e6c99bf350a Mon Sep 17 00:00:00 2001 From: tapparelj Date: Thu, 7 Nov 2024 14:26:30 -0300 Subject: [PATCH 06/12] build conda package on this branch --- .github/workflows/conda-build.yml | 1 - 1 file changed, 1 deletion(-) diff --git a/.github/workflows/conda-build.yml b/.github/workflows/conda-build.yml index 6dd0dd26..119e81c1 100644 --- a/.github/workflows/conda-build.yml +++ b/.github/workflows/conda-build.yml @@ -6,7 +6,6 @@ name: Build conda package on: push: branches: - - master pull_request: From 9b756c9f98d1136c5128fbe0a6d00b8e59b0ae5e Mon Sep 17 00:00:00 2001 From: tapparelj Date: Thu, 7 Nov 2024 14:39:24 -0300 Subject: [PATCH 07/12] MNT: Re-rendered with conda-build 24.5.0, conda-smithy 3.44.2, and conda-forge-pinning 2024.11.07.16.38.57 --- ...inux_64_numpy1.22python3.10.____cpython.yaml | 2 -- ...linux_64_numpy1.22python3.9.____cpython.yaml | 2 -- ...inux_64_numpy1.23python3.11.____cpython.yaml | 2 -- ...inux_64_numpy1.26python3.12.____cpython.yaml | 2 -- ...aarch64_numpy1.22python3.10.____cpython.yaml | 2 -- ..._aarch64_numpy1.22python3.9.____cpython.yaml | 2 -- ...aarch64_numpy1.23python3.11.____cpython.yaml | 2 -- ...aarch64_numpy1.26python3.12.____cpython.yaml | 2 -- ...ppc64le_numpy1.22python3.10.____cpython.yaml | 2 -- ..._ppc64le_numpy1.22python3.9.____cpython.yaml | 2 -- ...ppc64le_numpy1.23python3.11.____cpython.yaml | 2 -- ...ppc64le_numpy1.26python3.12.____cpython.yaml | 2 -- .../osx_64_numpy1.22python3.10.____cpython.yaml | 6 ++---- .../osx_64_numpy1.22python3.9.____cpython.yaml | 6 ++---- .../osx_64_numpy1.23python3.11.____cpython.yaml | 6 ++---- .../osx_64_numpy1.26python3.12.____cpython.yaml | 6 ++---- ...x_arm64_numpy1.22python3.10.____cpython.yaml | 6 ++---- ...sx_arm64_numpy1.22python3.9.____cpython.yaml | 6 ++---- ...x_arm64_numpy1.23python3.11.____cpython.yaml | 6 ++---- ...x_arm64_numpy1.26python3.12.____cpython.yaml | 6 ++---- .github/workflows/automerge.yml | 17 ----------------- .github/workflows/conda-build.yml | 7 ++++--- .github/workflows/webservices.yml | 13 ------------- .scripts/run_osx_build.sh | 2 +- 24 files changed, 21 insertions(+), 90 deletions(-) delete mode 100644 .github/workflows/automerge.yml delete mode 100644 .github/workflows/webservices.yml diff --git a/.ci_support/linux_64_numpy1.22python3.10.____cpython.yaml b/.ci_support/linux_64_numpy1.22python3.10.____cpython.yaml index 0a9b2c06..a2f9a6a0 100644 --- a/.ci_support/linux_64_numpy1.22python3.10.____cpython.yaml +++ b/.ci_support/linux_64_numpy1.22python3.10.____cpython.yaml @@ -1,5 +1,3 @@ -ace: -- 8.0.1 c_compiler: - gcc c_compiler_version: diff --git a/.ci_support/linux_64_numpy1.22python3.9.____cpython.yaml b/.ci_support/linux_64_numpy1.22python3.9.____cpython.yaml index cc928b14..455658be 100644 --- a/.ci_support/linux_64_numpy1.22python3.9.____cpython.yaml +++ b/.ci_support/linux_64_numpy1.22python3.9.____cpython.yaml @@ -1,5 +1,3 @@ -ace: -- 8.0.1 c_compiler: - gcc c_compiler_version: diff --git a/.ci_support/linux_64_numpy1.23python3.11.____cpython.yaml b/.ci_support/linux_64_numpy1.23python3.11.____cpython.yaml index 4c79e61f..c14bf9ee 100644 --- a/.ci_support/linux_64_numpy1.23python3.11.____cpython.yaml +++ b/.ci_support/linux_64_numpy1.23python3.11.____cpython.yaml @@ -1,5 +1,3 @@ -ace: -- 8.0.1 c_compiler: - gcc c_compiler_version: diff --git a/.ci_support/linux_64_numpy1.26python3.12.____cpython.yaml b/.ci_support/linux_64_numpy1.26python3.12.____cpython.yaml index 0e355479..3d4177c4 100644 --- a/.ci_support/linux_64_numpy1.26python3.12.____cpython.yaml +++ b/.ci_support/linux_64_numpy1.26python3.12.____cpython.yaml @@ -1,5 +1,3 @@ -ace: -- 8.0.1 c_compiler: - gcc c_compiler_version: diff --git a/.ci_support/linux_aarch64_numpy1.22python3.10.____cpython.yaml b/.ci_support/linux_aarch64_numpy1.22python3.10.____cpython.yaml index cb247d4a..adc753b5 100644 --- a/.ci_support/linux_aarch64_numpy1.22python3.10.____cpython.yaml +++ b/.ci_support/linux_aarch64_numpy1.22python3.10.____cpython.yaml @@ -1,7 +1,5 @@ BUILD: - aarch64-conda_cos7-linux-gnu -ace: -- 8.0.1 c_compiler: - gcc c_compiler_version: diff --git a/.ci_support/linux_aarch64_numpy1.22python3.9.____cpython.yaml b/.ci_support/linux_aarch64_numpy1.22python3.9.____cpython.yaml index 435ad1e1..bee41835 100644 --- a/.ci_support/linux_aarch64_numpy1.22python3.9.____cpython.yaml +++ b/.ci_support/linux_aarch64_numpy1.22python3.9.____cpython.yaml @@ -1,7 +1,5 @@ BUILD: - aarch64-conda_cos7-linux-gnu -ace: -- 8.0.1 c_compiler: - gcc c_compiler_version: diff --git a/.ci_support/linux_aarch64_numpy1.23python3.11.____cpython.yaml b/.ci_support/linux_aarch64_numpy1.23python3.11.____cpython.yaml index d4d0ae3e..b17b568f 100644 --- a/.ci_support/linux_aarch64_numpy1.23python3.11.____cpython.yaml +++ b/.ci_support/linux_aarch64_numpy1.23python3.11.____cpython.yaml @@ -1,7 +1,5 @@ BUILD: - aarch64-conda_cos7-linux-gnu -ace: -- 8.0.1 c_compiler: - gcc c_compiler_version: diff --git a/.ci_support/linux_aarch64_numpy1.26python3.12.____cpython.yaml b/.ci_support/linux_aarch64_numpy1.26python3.12.____cpython.yaml index 5bac1cd6..19c28724 100644 --- a/.ci_support/linux_aarch64_numpy1.26python3.12.____cpython.yaml +++ b/.ci_support/linux_aarch64_numpy1.26python3.12.____cpython.yaml @@ -1,7 +1,5 @@ BUILD: - aarch64-conda_cos7-linux-gnu -ace: -- 8.0.1 c_compiler: - gcc c_compiler_version: diff --git a/.ci_support/linux_ppc64le_numpy1.22python3.10.____cpython.yaml b/.ci_support/linux_ppc64le_numpy1.22python3.10.____cpython.yaml index 2718d8b7..3911f98a 100644 --- a/.ci_support/linux_ppc64le_numpy1.22python3.10.____cpython.yaml +++ b/.ci_support/linux_ppc64le_numpy1.22python3.10.____cpython.yaml @@ -1,5 +1,3 @@ -ace: -- 8.0.1 c_compiler: - gcc c_compiler_version: diff --git a/.ci_support/linux_ppc64le_numpy1.22python3.9.____cpython.yaml b/.ci_support/linux_ppc64le_numpy1.22python3.9.____cpython.yaml index 3d21809b..b2c403f2 100644 --- a/.ci_support/linux_ppc64le_numpy1.22python3.9.____cpython.yaml +++ b/.ci_support/linux_ppc64le_numpy1.22python3.9.____cpython.yaml @@ -1,5 +1,3 @@ -ace: -- 8.0.1 c_compiler: - gcc c_compiler_version: diff --git a/.ci_support/linux_ppc64le_numpy1.23python3.11.____cpython.yaml b/.ci_support/linux_ppc64le_numpy1.23python3.11.____cpython.yaml index dcafbcf0..046b54fd 100644 --- a/.ci_support/linux_ppc64le_numpy1.23python3.11.____cpython.yaml +++ b/.ci_support/linux_ppc64le_numpy1.23python3.11.____cpython.yaml @@ -1,5 +1,3 @@ -ace: -- 8.0.1 c_compiler: - gcc c_compiler_version: diff --git a/.ci_support/linux_ppc64le_numpy1.26python3.12.____cpython.yaml b/.ci_support/linux_ppc64le_numpy1.26python3.12.____cpython.yaml index 37590c48..8f2b7b77 100644 --- a/.ci_support/linux_ppc64le_numpy1.26python3.12.____cpython.yaml +++ b/.ci_support/linux_ppc64le_numpy1.26python3.12.____cpython.yaml @@ -1,5 +1,3 @@ -ace: -- 8.0.1 c_compiler: - gcc c_compiler_version: diff --git a/.ci_support/osx_64_numpy1.22python3.10.____cpython.yaml b/.ci_support/osx_64_numpy1.22python3.10.____cpython.yaml index 76bfad28..bf90167e 100644 --- a/.ci_support/osx_64_numpy1.22python3.10.____cpython.yaml +++ b/.ci_support/osx_64_numpy1.22python3.10.____cpython.yaml @@ -2,12 +2,10 @@ MACOSX_DEPLOYMENT_TARGET: - '10.13' MACOSX_SDK_VERSION: - '10.13' -ace: -- 8.0.1 c_compiler: - clang c_compiler_version: -- '17' +- '18' channel_sources: - conda-forge channel_targets: @@ -15,7 +13,7 @@ channel_targets: cxx_compiler: - clangxx cxx_compiler_version: -- '17' +- '18' gnuradio_core: - 3.10.11 gnuradio_extra_pin: diff --git a/.ci_support/osx_64_numpy1.22python3.9.____cpython.yaml b/.ci_support/osx_64_numpy1.22python3.9.____cpython.yaml index e9977dd5..803a880a 100644 --- a/.ci_support/osx_64_numpy1.22python3.9.____cpython.yaml +++ b/.ci_support/osx_64_numpy1.22python3.9.____cpython.yaml @@ -2,12 +2,10 @@ MACOSX_DEPLOYMENT_TARGET: - '10.13' MACOSX_SDK_VERSION: - '10.13' -ace: -- 8.0.1 c_compiler: - clang c_compiler_version: -- '17' +- '18' channel_sources: - conda-forge channel_targets: @@ -15,7 +13,7 @@ channel_targets: cxx_compiler: - clangxx cxx_compiler_version: -- '17' +- '18' gnuradio_core: - 3.10.11 gnuradio_extra_pin: diff --git a/.ci_support/osx_64_numpy1.23python3.11.____cpython.yaml b/.ci_support/osx_64_numpy1.23python3.11.____cpython.yaml index eb2e63b9..9752c1e9 100644 --- a/.ci_support/osx_64_numpy1.23python3.11.____cpython.yaml +++ b/.ci_support/osx_64_numpy1.23python3.11.____cpython.yaml @@ -2,12 +2,10 @@ MACOSX_DEPLOYMENT_TARGET: - '10.13' MACOSX_SDK_VERSION: - '10.13' -ace: -- 8.0.1 c_compiler: - clang c_compiler_version: -- '17' +- '18' channel_sources: - conda-forge channel_targets: @@ -15,7 +13,7 @@ channel_targets: cxx_compiler: - clangxx cxx_compiler_version: -- '17' +- '18' gnuradio_core: - 3.10.11 gnuradio_extra_pin: diff --git a/.ci_support/osx_64_numpy1.26python3.12.____cpython.yaml b/.ci_support/osx_64_numpy1.26python3.12.____cpython.yaml index ef49752a..365bd91b 100644 --- a/.ci_support/osx_64_numpy1.26python3.12.____cpython.yaml +++ b/.ci_support/osx_64_numpy1.26python3.12.____cpython.yaml @@ -2,12 +2,10 @@ MACOSX_DEPLOYMENT_TARGET: - '10.13' MACOSX_SDK_VERSION: - '10.13' -ace: -- 8.0.1 c_compiler: - clang c_compiler_version: -- '17' +- '18' channel_sources: - conda-forge channel_targets: @@ -15,7 +13,7 @@ channel_targets: cxx_compiler: - clangxx cxx_compiler_version: -- '17' +- '18' gnuradio_core: - 3.10.11 gnuradio_extra_pin: diff --git a/.ci_support/osx_arm64_numpy1.22python3.10.____cpython.yaml b/.ci_support/osx_arm64_numpy1.22python3.10.____cpython.yaml index 579a228b..f70a9561 100644 --- a/.ci_support/osx_arm64_numpy1.22python3.10.____cpython.yaml +++ b/.ci_support/osx_arm64_numpy1.22python3.10.____cpython.yaml @@ -2,12 +2,10 @@ MACOSX_DEPLOYMENT_TARGET: - '11.0' MACOSX_SDK_VERSION: - '11.0' -ace: -- 8.0.1 c_compiler: - clang c_compiler_version: -- '17' +- '18' channel_sources: - conda-forge channel_targets: @@ -15,7 +13,7 @@ channel_targets: cxx_compiler: - clangxx cxx_compiler_version: -- '17' +- '18' gnuradio_core: - 3.10.11 gnuradio_extra_pin: diff --git a/.ci_support/osx_arm64_numpy1.22python3.9.____cpython.yaml b/.ci_support/osx_arm64_numpy1.22python3.9.____cpython.yaml index 9549c5bd..de4d19db 100644 --- a/.ci_support/osx_arm64_numpy1.22python3.9.____cpython.yaml +++ b/.ci_support/osx_arm64_numpy1.22python3.9.____cpython.yaml @@ -2,12 +2,10 @@ MACOSX_DEPLOYMENT_TARGET: - '11.0' MACOSX_SDK_VERSION: - '11.0' -ace: -- 8.0.1 c_compiler: - clang c_compiler_version: -- '17' +- '18' channel_sources: - conda-forge channel_targets: @@ -15,7 +13,7 @@ channel_targets: cxx_compiler: - clangxx cxx_compiler_version: -- '17' +- '18' gnuradio_core: - 3.10.11 gnuradio_extra_pin: diff --git a/.ci_support/osx_arm64_numpy1.23python3.11.____cpython.yaml b/.ci_support/osx_arm64_numpy1.23python3.11.____cpython.yaml index e8887e07..92362523 100644 --- a/.ci_support/osx_arm64_numpy1.23python3.11.____cpython.yaml +++ b/.ci_support/osx_arm64_numpy1.23python3.11.____cpython.yaml @@ -2,12 +2,10 @@ MACOSX_DEPLOYMENT_TARGET: - '11.0' MACOSX_SDK_VERSION: - '11.0' -ace: -- 8.0.1 c_compiler: - clang c_compiler_version: -- '17' +- '18' channel_sources: - conda-forge channel_targets: @@ -15,7 +13,7 @@ channel_targets: cxx_compiler: - clangxx cxx_compiler_version: -- '17' +- '18' gnuradio_core: - 3.10.11 gnuradio_extra_pin: diff --git a/.ci_support/osx_arm64_numpy1.26python3.12.____cpython.yaml b/.ci_support/osx_arm64_numpy1.26python3.12.____cpython.yaml index d6181c9e..1ed1af5c 100644 --- a/.ci_support/osx_arm64_numpy1.26python3.12.____cpython.yaml +++ b/.ci_support/osx_arm64_numpy1.26python3.12.____cpython.yaml @@ -2,12 +2,10 @@ MACOSX_DEPLOYMENT_TARGET: - '11.0' MACOSX_SDK_VERSION: - '11.0' -ace: -- 8.0.1 c_compiler: - clang c_compiler_version: -- '17' +- '18' channel_sources: - conda-forge channel_targets: @@ -15,7 +13,7 @@ channel_targets: cxx_compiler: - clangxx cxx_compiler_version: -- '17' +- '18' gnuradio_core: - 3.10.11 gnuradio_extra_pin: diff --git a/.github/workflows/automerge.yml b/.github/workflows/automerge.yml deleted file mode 100644 index 0535f6aa..00000000 --- a/.github/workflows/automerge.yml +++ /dev/null @@ -1,17 +0,0 @@ -on: - status: {} - check_suite: - types: - - completed - -jobs: - automerge-action: - runs-on: ubuntu-latest - name: automerge - steps: - - name: automerge-action - id: automerge-action - uses: conda-forge/automerge-action@main - with: - github_token: ${{ secrets.GITHUB_TOKEN }} - rerendering_github_token: ${{ secrets.RERENDERING_GITHUB_TOKEN }} diff --git a/.github/workflows/conda-build.yml b/.github/workflows/conda-build.yml index 119e81c1..c1b0ed40 100644 --- a/.github/workflows/conda-build.yml +++ b/.github/workflows/conda-build.yml @@ -6,6 +6,7 @@ name: Build conda package on: push: branches: + - master pull_request: @@ -137,7 +138,7 @@ jobs: steps: - name: Checkout code - uses: actions/checkout@v4 + uses: actions/checkout@0ad4b8fadaa221de15dcec353f45205ec38ea70b # v4.1.4 with: fetch-depth: 0 @@ -242,7 +243,7 @@ jobs: continue-on-error: true - name: Store conda build artifacts - uses: actions/upload-artifact@v4 + uses: actions/upload-artifact@b4b15b8c7c6ac21ea08fcf65892d2ee8f75cf882 # v4.4.3 if: ${{ always() && steps.prepare-artifacts.outcome == 'success' }} with: name: ${{ steps.prepare-artifacts.outputs.BLD_ARTIFACT_NAME }} @@ -251,7 +252,7 @@ jobs: continue-on-error: true - name: Store conda build environment artifacts - uses: actions/upload-artifact@v4 + uses: actions/upload-artifact@b4b15b8c7c6ac21ea08fcf65892d2ee8f75cf882 # v4.4.3 if: ${{ failure() && steps.prepare-artifacts.outcome == 'success' }} with: name: ${{ steps.prepare-artifacts.outputs.ENV_ARTIFACT_NAME }} diff --git a/.github/workflows/webservices.yml b/.github/workflows/webservices.yml deleted file mode 100644 index d6f06b5c..00000000 --- a/.github/workflows/webservices.yml +++ /dev/null @@ -1,13 +0,0 @@ -on: repository_dispatch - -jobs: - webservices: - runs-on: ubuntu-latest - name: webservices - steps: - - name: webservices - id: webservices - uses: conda-forge/webservices-dispatch-action@main - with: - github_token: ${{ secrets.GITHUB_TOKEN }} - rerendering_github_token: ${{ secrets.RERENDERING_GITHUB_TOKEN }} diff --git a/.scripts/run_osx_build.sh b/.scripts/run_osx_build.sh index 06b0765f..6fe1f3cf 100755 --- a/.scripts/run_osx_build.sh +++ b/.scripts/run_osx_build.sh @@ -33,7 +33,7 @@ rm -rf "${MAMBA_ROOT_PREFIX}" "${micromamba_exe}" || true ( endgroup "Provisioning base env with micromamba" ) 2> /dev/null ( startgroup "Configuring conda" ) 2> /dev/null - +echo "Activating environment" source "${MINIFORGE_HOME}/etc/profile.d/conda.sh" conda activate base export CONDA_SOLVER="libmamba" From 1f546661dbd5ddb74e3f69cdd634510c116ae662 Mon Sep 17 00:00:00 2001 From: tapparelj Date: Thu, 7 Nov 2024 15:01:38 -0300 Subject: [PATCH 08/12] try to add back windows build --- .conda/conda-forge.yml | 3 ++- .github/workflows/conda-build.yml | 1 - 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/.conda/conda-forge.yml b/.conda/conda-forge.yml index d0932f99..35fdf467 100644 --- a/.conda/conda-forge.yml +++ b/.conda/conda-forge.yml @@ -6,6 +6,7 @@ build_platform: linux_aarch64: linux_64 linux_ppc64le: linux_64 osx_arm64: osx_64 + win_64: win_64 clone_depth: 0 github_actions: store_build_artifacts: true @@ -14,7 +15,7 @@ os_version: provider: linux: github_actions osx: github_actions - #win: github_actions + win: github_actions # uncomment to enable additional linux platforms #linux_aarch64: github_actions #linux_ppc64le: github_actions diff --git a/.github/workflows/conda-build.yml b/.github/workflows/conda-build.yml index c1b0ed40..b82a67ef 100644 --- a/.github/workflows/conda-build.yml +++ b/.github/workflows/conda-build.yml @@ -6,7 +6,6 @@ name: Build conda package on: push: branches: - - master pull_request: From 1e3da59dd93c848ba92fc9a2c7c74859716b7da3 Mon Sep 17 00:00:00 2001 From: tapparelj Date: Thu, 7 Nov 2024 15:11:17 -0300 Subject: [PATCH 09/12] MNT: Re-rendered with conda-build 24.5.0, conda-smithy 3.44.2, and conda-forge-pinning 2024.11.07.16.38.57 --- .github/workflows/conda-build.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/.github/workflows/conda-build.yml b/.github/workflows/conda-build.yml index b82a67ef..c1b0ed40 100644 --- a/.github/workflows/conda-build.yml +++ b/.github/workflows/conda-build.yml @@ -6,6 +6,7 @@ name: Build conda package on: push: branches: + - master pull_request: From 1cc421ebded6ccef47351d704f43b08369065b76 Mon Sep 17 00:00:00 2001 From: tapparelj Date: Thu, 7 Nov 2024 15:54:29 -0300 Subject: [PATCH 10/12] MNT: Re-rendered with conda-build 24.5.0, conda-smithy 3.44.2, and conda-forge-pinning 2024.11.07.16.38.57 --- ...in_64_numpy1.22python3.10.____cpython.yaml | 25 +++ ...win_64_numpy1.22python3.9.____cpython.yaml | 25 +++ ...in_64_numpy1.23python3.11.____cpython.yaml | 25 +++ ...in_64_numpy1.26python3.12.____cpython.yaml | 25 +++ .github/workflows/conda-build.yml | 20 +++ .scripts/run_win_build.bat | 148 ++++++++++++++++++ 6 files changed, 268 insertions(+) create mode 100644 .ci_support/win_64_numpy1.22python3.10.____cpython.yaml create mode 100644 .ci_support/win_64_numpy1.22python3.9.____cpython.yaml create mode 100644 .ci_support/win_64_numpy1.23python3.11.____cpython.yaml create mode 100644 .ci_support/win_64_numpy1.26python3.12.____cpython.yaml create mode 100755 .scripts/run_win_build.bat diff --git a/.ci_support/win_64_numpy1.22python3.10.____cpython.yaml b/.ci_support/win_64_numpy1.22python3.10.____cpython.yaml new file mode 100644 index 00000000..e90c55ea --- /dev/null +++ b/.ci_support/win_64_numpy1.22python3.10.____cpython.yaml @@ -0,0 +1,25 @@ +c_compiler: +- vs2019 +channel_sources: +- conda-forge +channel_targets: +- tapparelj main +cxx_compiler: +- vs2019 +gnuradio_core: +- 3.10.11 +gnuradio_extra_pin: +- '' +numpy: +- '1.22' +pin_run_as_build: + python: + min_pin: x.x + max_pin: x.x +python: +- 3.10.* *_cpython +target_platform: +- win-64 +zip_keys: +- - python + - numpy diff --git a/.ci_support/win_64_numpy1.22python3.9.____cpython.yaml b/.ci_support/win_64_numpy1.22python3.9.____cpython.yaml new file mode 100644 index 00000000..ea06ef6a --- /dev/null +++ b/.ci_support/win_64_numpy1.22python3.9.____cpython.yaml @@ -0,0 +1,25 @@ +c_compiler: +- vs2019 +channel_sources: +- conda-forge +channel_targets: +- tapparelj main +cxx_compiler: +- vs2019 +gnuradio_core: +- 3.10.11 +gnuradio_extra_pin: +- '' +numpy: +- '1.22' +pin_run_as_build: + python: + min_pin: x.x + max_pin: x.x +python: +- 3.9.* *_cpython +target_platform: +- win-64 +zip_keys: +- - python + - numpy diff --git a/.ci_support/win_64_numpy1.23python3.11.____cpython.yaml b/.ci_support/win_64_numpy1.23python3.11.____cpython.yaml new file mode 100644 index 00000000..27f746e3 --- /dev/null +++ b/.ci_support/win_64_numpy1.23python3.11.____cpython.yaml @@ -0,0 +1,25 @@ +c_compiler: +- vs2019 +channel_sources: +- conda-forge +channel_targets: +- tapparelj main +cxx_compiler: +- vs2019 +gnuradio_core: +- 3.10.11 +gnuradio_extra_pin: +- '' +numpy: +- '1.23' +pin_run_as_build: + python: + min_pin: x.x + max_pin: x.x +python: +- 3.11.* *_cpython +target_platform: +- win-64 +zip_keys: +- - python + - numpy diff --git a/.ci_support/win_64_numpy1.26python3.12.____cpython.yaml b/.ci_support/win_64_numpy1.26python3.12.____cpython.yaml new file mode 100644 index 00000000..69b71bdf --- /dev/null +++ b/.ci_support/win_64_numpy1.26python3.12.____cpython.yaml @@ -0,0 +1,25 @@ +c_compiler: +- vs2019 +channel_sources: +- conda-forge +channel_targets: +- tapparelj main +cxx_compiler: +- vs2019 +gnuradio_core: +- 3.10.11 +gnuradio_extra_pin: +- '' +numpy: +- '1.26' +pin_run_as_build: + python: + min_pin: x.x + max_pin: x.x +python: +- 3.12.* *_cpython +target_platform: +- win-64 +zip_keys: +- - python + - numpy diff --git a/.github/workflows/conda-build.yml b/.github/workflows/conda-build.yml index c1b0ed40..c7fb8a76 100644 --- a/.github/workflows/conda-build.yml +++ b/.github/workflows/conda-build.yml @@ -135,6 +135,26 @@ jobs: UPLOAD_PACKAGES: True os: macos runs_on: ['macos-13'] + - CONFIG: win_64_numpy1.22python3.10.____cpython + SHORT_CONFIG: win_64_numpy1.22python3.10.____cpython + UPLOAD_PACKAGES: True + os: windows + runs_on: ['windows-latest'] + - CONFIG: win_64_numpy1.22python3.9.____cpython + SHORT_CONFIG: win_64_numpy1.22python3.9.____cpython + UPLOAD_PACKAGES: True + os: windows + runs_on: ['windows-latest'] + - CONFIG: win_64_numpy1.23python3.11.____cpython + SHORT_CONFIG: win_64_numpy1.23python3.11.____cpython + UPLOAD_PACKAGES: True + os: windows + runs_on: ['windows-latest'] + - CONFIG: win_64_numpy1.26python3.12.____cpython + SHORT_CONFIG: win_64_numpy1.26python3.12.____cpython + UPLOAD_PACKAGES: True + os: windows + runs_on: ['windows-latest'] steps: - name: Checkout code diff --git a/.scripts/run_win_build.bat b/.scripts/run_win_build.bat new file mode 100755 index 00000000..ff599adc --- /dev/null +++ b/.scripts/run_win_build.bat @@ -0,0 +1,148 @@ +:: PLEASE NOTE: This script has been automatically generated by conda-smithy. Any changes here +:: will be lost next time ``conda smithy rerender`` is run. If you would like to make permanent +:: changes to this script, consider a proposal to conda-smithy so that other feedstocks can also +:: benefit from the improvement. + +:: INPUTS (required environment variables) +:: CONFIG: name of the .ci_support/*.yaml file for this job +:: CI: azure, github_actions, or unset +:: MINIFORGE_HOME: where to install the base conda environment +:: UPLOAD_PACKAGES: true or false +:: UPLOAD_ON_BRANCH: true or false + +setlocal enableextensions enabledelayedexpansion + +FOR %%A IN ("%~dp0.") DO SET "REPO_ROOT=%%~dpA" +if "%MINIFORGE_HOME%"=="" set "MINIFORGE_HOME=%USERPROFILE%\Miniforge3" +:: Remove trailing backslash, if present +if "%MINIFORGE_HOME:~-1%"=="\" set "MINIFORGE_HOME=%MINIFORGE_HOME:~0,-1%" +call :start_group "Provisioning base env with micromamba" +set "MAMBA_ROOT_PREFIX=%MINIFORGE_HOME%-micromamba-%RANDOM%" +set "MICROMAMBA_VERSION=1.5.10-0" +set "MICROMAMBA_URL=https://github.com/mamba-org/micromamba-releases/releases/download/%MICROMAMBA_VERSION%/micromamba-win-64" +set "MICROMAMBA_TMPDIR=%TMP%\micromamba-%RANDOM%" +set "MICROMAMBA_EXE=%MICROMAMBA_TMPDIR%\micromamba.exe" + +echo Downloading micromamba %MICROMAMBA_VERSION% +if not exist "%MICROMAMBA_TMPDIR%" mkdir "%MICROMAMBA_TMPDIR%" +certutil -urlcache -split -f "%MICROMAMBA_URL%" "%MICROMAMBA_EXE%" +if !errorlevel! neq 0 exit /b !errorlevel! + +echo Creating environment +call "%MICROMAMBA_EXE%" create --yes --root-prefix "%MAMBA_ROOT_PREFIX%" --prefix "%MINIFORGE_HOME%" ^ + --channel conda-forge ^ + pip python=3.12 conda-build conda-forge-ci-setup=4 "conda-build>=24.1" +if !errorlevel! neq 0 exit /b !errorlevel! +echo Removing %MAMBA_ROOT_PREFIX% +del /S /Q "%MAMBA_ROOT_PREFIX%" +del /S /Q "%MICROMAMBA_TMPDIR%" + +call :start_group "Configuring conda" + +:: Activate the base conda environment +echo Activating environment +call "%MINIFORGE_HOME%\Scripts\activate.bat" +:: Configure the solver +set "CONDA_SOLVER=libmamba" +if !errorlevel! neq 0 exit /b !errorlevel! +set "CONDA_LIBMAMBA_SOLVER_NO_CHANNELS_FROM_INSTALLED=1" + +:: Set basic configuration +echo Setting up configuration +setup_conda_rc .\ ".\.conda/recipe" .\.ci_support\%CONFIG%.yaml +if !errorlevel! neq 0 exit /b !errorlevel! +echo Running build setup +CALL run_conda_forge_build_setup + + +if !errorlevel! neq 0 exit /b !errorlevel! + +if EXIST LICENSE.txt ( + echo Copying feedstock license + copy LICENSE.txt ".conda/recipe\\recipe-scripts-license.txt" +) +if NOT [%HOST_PLATFORM%] == [%BUILD_PLATFORM%] ( + if [%CROSSCOMPILING_EMULATOR%] == [] ( + set "EXTRA_CB_OPTIONS=%EXTRA_CB_OPTIONS% --no-test" + ) +) + +if NOT [%flow_run_id%] == [] ( + set "EXTRA_CB_OPTIONS=%EXTRA_CB_OPTIONS% --extra-meta flow_run_id=%flow_run_id% remote_url=%remote_url% sha=%sha%" +) + +call :end_group + +:: Build the recipe +echo Building recipe +conda-build.exe ".conda/recipe" -m .ci_support\%CONFIG%.yaml --suppress-variables %EXTRA_CB_OPTIONS% +if !errorlevel! neq 0 exit /b !errorlevel! + +call :start_group "Inspecting artifacts" +:: inspect_artifacts was only added in conda-forge-ci-setup 4.9.4 +WHERE inspect_artifacts >nul 2>nul && inspect_artifacts --recipe-dir ".\.conda/recipe" -m .ci_support\%CONFIG%.yaml || echo "inspect_artifacts needs conda-forge-ci-setup >=4.9.4" +call :end_group + +:: Prepare some environment variables for the upload step +if /i "%CI%" == "github_actions" ( + set "FEEDSTOCK_NAME=%GITHUB_REPOSITORY:*/=%" + set "GIT_BRANCH=%GITHUB_REF:refs/heads/=%" + if /i "%GITHUB_EVENT_NAME%" == "pull_request" ( + set "IS_PR_BUILD=True" + ) else ( + set "IS_PR_BUILD=False" + ) + set "TEMP=%RUNNER_TEMP%" +) +if /i "%CI%" == "azure" ( + set "FEEDSTOCK_NAME=%BUILD_REPOSITORY_NAME:*/=%" + set "GIT_BRANCH=%BUILD_SOURCEBRANCHNAME%" + if /i "%BUILD_REASON%" == "PullRequest" ( + set "IS_PR_BUILD=True" + ) else ( + set "IS_PR_BUILD=False" + ) + set "TEMP=%UPLOAD_TEMP%" +) +set "UPLOAD_ON_BRANCH=master" +:: Note, this needs GIT_BRANCH too + +:: Validate + +if /i "%UPLOAD_PACKAGES%" == "true" ( + if /i "%IS_PR_BUILD%" == "false" ( + call :start_group "Uploading packages" + if not exist "%TEMP%\" md "%TEMP%" + set "TMP=%TEMP%" + upload_package .\ ".\.conda/recipe" .ci_support\%CONFIG%.yaml + if !errorlevel! neq 0 exit /b !errorlevel! + call :end_group + ) +) + +exit + +:: Logging subroutines + +:start_group +if /i "%CI%" == "github_actions" ( + echo ::group::%~1 + exit /b +) +if /i "%CI%" == "azure" ( + echo ##[group]%~1 + exit /b +) +echo %~1 +exit /b + +:end_group +if /i "%CI%" == "github_actions" ( + echo ::endgroup:: + exit /b +) +if /i "%CI%" == "azure" ( + echo ##[endgroup] + exit /b +) +exit /b \ No newline at end of file From c95786c9677b8c36b29db386018dec7da1a7a922 Mon Sep 17 00:00:00 2001 From: tapparelj Date: Thu, 7 Nov 2024 15:57:27 -0300 Subject: [PATCH 11/12] add windows build --- .conda/conda-forge.yml | 2 +- .conda/recipe/meta.yaml | 4 ++-- .github/workflows/conda-build.yml | 2 -- 3 files changed, 3 insertions(+), 5 deletions(-) diff --git a/.conda/conda-forge.yml b/.conda/conda-forge.yml index 35fdf467..211169f2 100644 --- a/.conda/conda-forge.yml +++ b/.conda/conda-forge.yml @@ -6,7 +6,6 @@ build_platform: linux_aarch64: linux_64 linux_ppc64le: linux_64 osx_arm64: osx_64 - win_64: win_64 clone_depth: 0 github_actions: store_build_artifacts: true @@ -19,6 +18,7 @@ provider: # uncomment to enable additional linux platforms #linux_aarch64: github_actions #linux_ppc64le: github_actions + recipe_dir: .conda/recipe # skip unnecessary files since this is not a full-fledged conda-forge feedstock skip_render: diff --git a/.conda/recipe/meta.yaml b/.conda/recipe/meta.yaml index 36b459e9..ff050109 100644 --- a/.conda/recipe/meta.yaml +++ b/.conda/recipe/meta.yaml @@ -19,8 +19,8 @@ source: build: number: 0 - skip: true # [win] - skip: true # [py>=313] + skip: false # [win] + skip: false # [py>=313] requirements: build: diff --git a/.github/workflows/conda-build.yml b/.github/workflows/conda-build.yml index c7fb8a76..7d17c980 100644 --- a/.github/workflows/conda-build.yml +++ b/.github/workflows/conda-build.yml @@ -6,8 +6,6 @@ name: Build conda package on: push: branches: - - master - pull_request: concurrency: From d36c8768263745c8881133ab54ca2363968c976f Mon Sep 17 00:00:00 2001 From: tapparelj Date: Thu, 7 Nov 2024 16:25:32 -0300 Subject: [PATCH 12/12] remove all branch github action build --- .github/workflows/conda-build.yml | 2 ++ 1 file changed, 2 insertions(+) diff --git a/.github/workflows/conda-build.yml b/.github/workflows/conda-build.yml index 7d17c980..c7fb8a76 100644 --- a/.github/workflows/conda-build.yml +++ b/.github/workflows/conda-build.yml @@ -6,6 +6,8 @@ name: Build conda package on: push: branches: + - master + pull_request: concurrency: