Skip to content

Commit 8c20f50

Browse files
authored
Merge pull request #399 from OpenBioSim/release_2025.4.0
Release 2025.4.0
2 parents 7fbd3f6 + 76f190b commit 8c20f50

49 files changed

Lines changed: 1152 additions & 1319 deletions

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

.github/workflows/choose_branch.yaml

Lines changed: 29 additions & 24 deletions
Original file line numberDiff line numberDiff line change
@@ -2,8 +2,8 @@ name: Release Branch
22

33
# Note that push and pull-request builds are automatically
44
# now skipped by GitHub if
5-
# [skip ci], [ci skip], [no ci], [skip actions], or [actions skip]
6-
# are in the commit message. We don't need to check for this ourselves.
5+
# [skip ci], [ci skip], [no ci], [skip actions], or [actions skip]
6+
# are in the commit message. We don't need to check for this ourselves.
77

88
on:
99
workflow_dispatch:
@@ -31,11 +31,11 @@ jobs:
3131
- platform:
3232
{ name: "macos", os: "macos-latest", shell: "bash -l {0}" }
3333
python-version: "3.10"
34-
- platform: { name: "windows", os: "windows-latest", shell: "pwsh" }
35-
python-version: "3.10"
3634
- platform:
3735
{ name: "macos", os: "macos-latest", shell: "bash -l {0}" }
38-
python-version: "3.12" # MacOS can't run 3.12 yet...
36+
python-version: "3.11"
37+
- platform: { name: "windows", os: "windows-latest", shell: "pwsh" }
38+
python-version: "3.10"
3939
- platform: { name: "windows", os: "windows-latest", shell: "pwsh" }
4040
python-version: "3.11"
4141
environment:
@@ -50,31 +50,36 @@ jobs:
5050
REPO: "${{ github.repository }}"
5151
steps:
5252
#
53-
- uses: conda-incubator/setup-miniconda@v3
53+
- uses: actions/checkout@v4
54+
with:
55+
ref: ${{ github.event.inputs.branch }}
56+
fetch-depth: 0
57+
#
58+
- name: Install pixi
59+
uses: prefix-dev/setup-pixi@v0.9.4
5460
with:
55-
auto-update-conda: true
56-
python-version: ${{ matrix.python-version }}
57-
activate-environment: sire_build
58-
miniforge-version: latest
61+
run-install: false
5962
#
60-
- name: Clone the desired branch
61-
run: git clone https://github.com/${{ env.REPO }} -b ${{ github.event.inputs.branch }} sire
63+
- name: Install rattler-build
64+
shell: bash
65+
run: pixi global install rattler-build
6266
#
63-
- name: Setup Conda
64-
run: conda install -y -c conda-forge conda-build boa anaconda-client packaging pip-requirements-parser
67+
- name: Generate recipe
68+
run: python ${{ github.workspace }}/actions/generate_recipe.py --features obs emle
6569
#
66-
- name: Update Conda recipe
67-
run: python ${{ github.workspace }}/sire/actions/update_recipe.py
70+
- name: Write Python variant config
71+
shell: bash
72+
run: printf 'python:\n - "${{ matrix.python-version }}"\n' > "${{ github.workspace }}/python_variant.yaml"
6873
#
69-
- name: Prepare build location
70-
run: mkdir ${{ github.workspace }}/build
74+
- name: Build package using rattler-build
75+
shell: bash
76+
run: rattler-build build --recipe "${{ github.workspace }}/recipes/sire" -c conda-forge -c openbiosim/label/dev --variant-config "${{ github.workspace }}/python_variant.yaml"
7177
#
72-
- name: Build Conda package using conda build
73-
run: conda build -c conda-forge -c openbiosim/label/dev ${{ github.workspace }}/sire/recipes/sire
78+
- name: Install anaconda-client
79+
run: python -m pip install anaconda-client
7480
#
75-
- name: Upload Conda package
76-
# Maybe add the logic here that this is a dev package?
77-
run: python ${{ github.workspace }}/sire/actions/upload_package.py
81+
- name: Upload package
82+
run: python ${{ github.workspace }}/actions/upload_package.py
7883
env:
79-
SRC_DIR: ${{ github.workspace }}/sire
84+
SRC_DIR: ${{ github.workspace }}
8085
ANACONDA_TOKEN: ${{ secrets.ANACONDA_TOKEN }}

.github/workflows/devel.yaml

Lines changed: 29 additions & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -2,8 +2,8 @@ name: Release Devel
22

33
# Note that push and pull-request builds are automatically
44
# now skipped by GitHub if
5-
# [skip ci], [ci skip], [no ci], [skip actions], or [actions skip]
6-
# are in the commit message. We don't need to check for this ourselves.
5+
# [skip ci], [ci skip], [no ci], [skip actions], or [actions skip]
6+
# are in the commit message. We don't need to check for this ourselves.
77

88
on:
99
workflow_dispatch:
@@ -28,7 +28,10 @@ jobs:
2828
# but Linux
2929
- platform:
3030
{ name: "macos", os: "macos-latest", shell: "bash -l {0}" }
31-
python-version: "3.12" # MacOS can't run 3.12 yet... We want 3.10 and 3.11
31+
python-version: "3.10"
32+
- platform:
33+
{ name: "macos", os: "macos-latest", shell: "bash -l {0}" }
34+
python-version: "3.11"
3235
- platform: { name: "windows", os: "windows-latest", shell: "pwsh" }
3336
python-version: "3.10"
3437
- platform: { name: "windows", os: "windows-latest", shell: "pwsh" }
@@ -45,31 +48,35 @@ jobs:
4548
REPO: "${{ github.repository }}"
4649
steps:
4750
#
48-
- uses: conda-incubator/setup-miniconda@v3
51+
- uses: actions/checkout@v4
52+
with:
53+
fetch-depth: 0
54+
#
55+
- name: Install pixi
56+
uses: prefix-dev/setup-pixi@v0.9.4
4957
with:
50-
auto-update-conda: true
51-
python-version: ${{ matrix.python-version }}
52-
activate-environment: sire_build
53-
miniforge-version: latest
58+
run-install: false
5459
#
55-
- name: Clone the devel branch (push to devel)
56-
run: git clone https://github.com/${{ env.REPO }} sire
60+
- name: Install rattler-build
61+
shell: bash
62+
run: pixi global install rattler-build
5763
#
58-
- name: Setup Conda
59-
run: conda install -y -c conda-forge conda-build boa anaconda-client packaging pip-requirements-parser
64+
- name: Generate recipe
65+
run: python ${{ github.workspace }}/actions/generate_recipe.py --features obs emle
6066
#
61-
- name: Update Conda recipe
62-
run: python ${{ github.workspace }}/sire/actions/update_recipe.py
67+
- name: Write Python variant config
68+
shell: bash
69+
run: printf 'python:\n - "${{ matrix.python-version }}"\n' > "${{ github.workspace }}/python_variant.yaml"
6370
#
64-
- name: Prepare build location
65-
run: mkdir ${{ github.workspace }}/build
71+
- name: Build package using rattler-build
72+
shell: bash
73+
run: rattler-build build --recipe "${{ github.workspace }}/recipes/sire" -c conda-forge -c openbiosim/label/dev --variant-config "${{ github.workspace }}/python_variant.yaml"
6674
#
67-
- name: Build Conda package using conda build
68-
run: conda build -c conda-forge -c openbiosim/label/dev ${{ github.workspace }}/sire/recipes/sire
75+
- name: Install anaconda-client
76+
run: python -m pip install anaconda-client
6977
#
70-
- name: Upload Conda package
71-
# Maybe add the logic here that this is a dev package?
72-
run: python ${{ github.workspace }}/sire/actions/upload_package.py
78+
- name: Upload package
79+
run: python ${{ github.workspace }}/actions/upload_package.py
7380
env:
74-
SRC_DIR: ${{ github.workspace }}/sire
81+
SRC_DIR: ${{ github.workspace }}
7582
ANACONDA_TOKEN: ${{ secrets.ANACONDA_TOKEN }}

.github/workflows/main.yaml

Lines changed: 28 additions & 24 deletions
Original file line numberDiff line numberDiff line change
@@ -2,8 +2,8 @@ name: Release Main
22

33
# Note that push and pull-request builds are automatically
44
# now skipped by GitHub if
5-
# [skip ci], [ci skip], [no ci], [skip actions], or [actions skip]
6-
# are in the commit message. We don't need to check for this ourselves.
5+
# [skip ci], [ci skip], [no ci], [skip actions], or [actions skip]
6+
# are in the commit message. We don't need to check for this ourselves.
77

88
# Only allow this action to run on a manual run.
99
# We should specify when run whether or not we want
@@ -29,10 +29,7 @@ jobs:
2929
- { name: "windows", os: "windows-latest", shell: "pwsh" }
3030
- { name: "linux", os: "ubuntu-latest", shell: "bash -l {0}" }
3131
- { name: "macos", os: "macos-latest", shell: "bash -l {0}" }
32-
exclude:
33-
- platform:
34-
{ name: "macos", os: "macos-latest", shell: "bash -l {0}" }
35-
python-version: "3.12" # MacOS can't run 3.12 yet...
32+
# No exclusions - release builds all combinations
3633
environment:
3734
name: sire-build
3835
defaults:
@@ -45,32 +42,39 @@ jobs:
4542
REPO: "${{ github.event.pull_request.head.repo.full_name || github.repository }}"
4643
steps:
4744
#
48-
- uses: conda-incubator/setup-miniconda@v3
45+
- uses: actions/checkout@v4
4946
with:
50-
auto-update-conda: true
51-
python-version: ${{ matrix.python-version }}
52-
activate-environment: sire_build
53-
miniforge-version: latest
47+
ref: main
48+
fetch-depth: 0
5449
#
55-
- name: Clone the main branch (push to main)
56-
run: git clone -b main https://github.com/openbiosim/sire sire
50+
- name: Install pixi
51+
uses: prefix-dev/setup-pixi@v0.9.4
52+
with:
53+
run-install: false
54+
#
55+
- name: Install rattler-build
56+
shell: bash
57+
run: pixi global install rattler-build
5758
#
58-
- name: Setup Conda
59-
run: conda install -y -c conda-forge conda-build boa anaconda-client packaging pip-requirements-parser
59+
- name: Generate recipe
60+
run: python ${{ github.workspace }}/actions/generate_recipe.py --features obs emle
6061
#
61-
- name: Update Conda recipe
62-
run: python ${{ github.workspace }}/sire/actions/update_recipe.py
62+
- name: Write Python variant config
63+
shell: bash
64+
run: printf 'python:\n - "${{ matrix.python-version }}"\n' > "${{ github.workspace }}/python_variant.yaml"
6365
#
64-
- name: Prepare build location
65-
run: mkdir ${{ github.workspace }}/build
66+
- name: Build package using rattler-build
67+
shell: bash
68+
run: rattler-build build --recipe "${{ github.workspace }}/recipes/sire" -c conda-forge -c openbiosim/label/dev --variant-config "${{ github.workspace }}/python_variant.yaml"
6669
#
67-
- name: Build Conda package using conda build
68-
run: conda build -c conda-forge -c openbiosim/label/dev ${{ github.workspace }}/sire/recipes/sire
70+
- name: Install anaconda-client
71+
run: python -m pip install anaconda-client
72+
if: github.event.inputs.upload_packages == 'yes'
6973
#
70-
- name: Upload Conda package
74+
- name: Upload package
7175
# upload to the 'test' channel
72-
run: python ${{ github.workspace }}/sire/actions/upload_package.py test
76+
run: python ${{ github.workspace }}/actions/upload_package.py test
7377
env:
74-
SRC_DIR: ${{ github.workspace }}/sire
78+
SRC_DIR: ${{ github.workspace }}
7579
ANACONDA_TOKEN: ${{ secrets.ANACONDA_TOKEN }}
7680
if: github.event.inputs.upload_packages == 'yes'

.github/workflows/pr.yaml

Lines changed: 22 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -2,8 +2,8 @@ name: Pull-Request
22

33
# Note that push and pull-request builds are automatically
44
# now skipped by GitHub if
5-
# [skip ci], [ci skip], [no ci], [skip actions], or [actions skip]
6-
# are in the commit message. We don't need to check for this ourselves.
5+
# [skip ci], [ci skip], [no ci], [skip actions], or [actions skip]
6+
# are in the commit message. We don't need to check for this ourselves.
77

88
on:
99
pull_request:
@@ -28,11 +28,11 @@ jobs:
2828
- platform:
2929
{ name: "macos", os: "macos-latest", shell: "bash -l {0}" }
3030
python-version: "3.10"
31-
- platform: { name: "windows", os: "windows-latest", shell: "pwsh" }
32-
python-version: "3.10"
3331
- platform:
3432
{ name: "macos", os: "macos-latest", shell: "bash -l {0}" }
35-
python-version: "3.12" # MacOS can't run 3.12 yet...
33+
python-version: "3.11"
34+
- platform: { name: "windows", os: "windows-latest", shell: "pwsh" }
35+
python-version: "3.10"
3636
- platform: { name: "windows", os: "windows-latest", shell: "pwsh" }
3737
python-version: "3.11"
3838
environment:
@@ -47,24 +47,26 @@ jobs:
4747
REPO: "${{ github.event.pull_request.head.repo.full_name || github.repository }}"
4848
steps:
4949
#
50-
- uses: conda-incubator/setup-miniconda@v3
50+
- uses: actions/checkout@v4
5151
with:
52-
auto-update-conda: true
53-
python-version: ${{ matrix.python-version }}
54-
activate-environment: sire_build
55-
miniforge-version: latest
52+
fetch-depth: 0
5653
#
57-
- name: Clone the feature branch (pull request to devel)
58-
run: git clone -b ${{ github.head_ref }} --single-branch https://github.com/${{ env.REPO }} sire
54+
- name: Install pixi
55+
uses: prefix-dev/setup-pixi@v0.9.4
56+
with:
57+
run-install: false
5958
#
60-
- name: Setup Conda
61-
run: conda install -y -c conda-forge conda-build boa anaconda-client packaging pip-requirements-parser
59+
- name: Install rattler-build
60+
shell: bash
61+
run: pixi global install rattler-build
6262
#
63-
- name: Update Conda recipe
64-
run: python ${{ github.workspace }}/sire/actions/update_recipe.py
63+
- name: Generate recipe
64+
run: python ${{ github.workspace }}/actions/generate_recipe.py --features obs emle
6565
#
66-
- name: Prepare build location
67-
run: mkdir ${{ github.workspace }}/build
66+
- name: Write Python variant config
67+
shell: bash
68+
run: printf 'python:\n - "${{ matrix.python-version }}"\n' > "${{ github.workspace }}/python_variant.yaml"
6869
#
69-
- name: Build Conda package using conda build
70-
run: conda build -c conda-forge -c openbiosim/label/dev ${{ github.workspace }}/sire/recipes/sire
70+
- name: Build package using rattler-build
71+
shell: bash
72+
run: rattler-build build --recipe "${{ github.workspace }}/recipes/sire" -c conda-forge -c openbiosim/label/dev --variant-config "${{ github.workspace }}/python_variant.yaml"

.gitignore

Lines changed: 6 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@ build/wrapper/*
1010
build/module/*
1111
build/downloads/*
1212
recipes/sire/meta.yaml
13-
#files for wrapper
13+
# files for wrappers
1414
module_info
1515
active_headers.data
1616
exposed_decl.pypp.txt
@@ -57,12 +57,15 @@ tests/cache/*
5757
# Python autogenerated backup wrappers
5858
*~
5959

60-
#Atom
60+
# Atom
6161
.idea
6262

63-
#VS Code
63+
# VS Code
6464
.vscode
6565

6666
.DS_Store
6767

6868
.coverage
69+
70+
# Pixi startup file
71+
pixi.sh

0 commit comments

Comments
 (0)