Skip to content

Commit c692f44

Browse files
Merge branch 'main' into bump-m4_1.4.18_to_1.4.19_for_emscripten-4x
2 parents 5262daf + 904f073 commit c692f44

File tree

642 files changed

+23534
-33332
lines changed

Some content is hidden

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

642 files changed

+23534
-33332
lines changed

.github/copilot-instructions.md

Lines changed: 324 additions & 41 deletions
Large diffs are not rendered by default.

.github/pull_request_template.md

Lines changed: 52 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,52 @@
1+
## Template A: Checklist for **adding** a package
2+
3+
### Pre-submission Checks
4+
- [ ] Package requires building for `emscripten-wasm32` platform (not a noarch package), in other words, the package requires compilation.
5+
6+
<!-- If you have a noarch package, we suggest submitting your recipe to https://github.com/conda-forge/staged-recipes/ instead. -->
7+
8+
### Recipe Structure
9+
Added `recipes/recipes_emscripten/[package-name]/recipe.yaml` with proper structure:
10+
- [ ] `context` section with `version` (and optionally `name`)
11+
- [ ] `package` section with name and version using Jinja2 templates
12+
- [ ] `source` section with:
13+
- Source URL is valid and points to archive file (`.tar.gz`, `.tar.bz2`, `.tar.xz`, `.tgz`, or `.zip`)
14+
- Source URL contains `${{ version }}` template for version updates
15+
- SHA256 hash is correct (verified with `curl -sL <url> | sha256sum`)
16+
- Patches (if any) are included in `[package-name]/patches/` directory
17+
- [ ] `build` section with appropriate script/method
18+
- Python packages: `${PYTHON} -m pip install . ${PIP_ARGS}`
19+
- R packages: `$R CMD INSTALL $R_ARGS .`
20+
- C++ packages: Uses `emcmake`/`emmake` or `emconfigure`/`emmake`
21+
- Rust packages: Uses `rust-nightly` and `maturin` or appropriate Rust build tool
22+
- Build number is 0
23+
- If the script is longer than 3 lines, a *build.sh* is included
24+
- [ ] `requirements` section (build, host, run as needed)
25+
- [ ] `tests` section
26+
- Python packages: `test_import_[package].py` file created and referenced
27+
- C++ packages: Test executable or package_contents test
28+
- R packages: Package contents test
29+
- [ ] `about` section with license, homepage, summary
30+
31+
---
32+
33+
## Template B: Checklist for **updating** a package
34+
35+
- [ ] ⚠️ Bump build number if the version remains unchanged
36+
- [ ] Or reset build number to 0 if updating the package to a newer version
37+
38+
---
39+
40+
## PR Formatting
41+
- [ ] PR title follows format: `Add [package-name]` or `Update [package-name] to [version]`
42+
- [ ] PR description includes:
43+
- Version being added/updated
44+
- Any special build considerations or patches applied
45+
46+
## Package Details
47+
- **Package Name**:
48+
- **Version**:
49+
50+
## Build Notes
51+
<!-- Any special build considerations, patches applied, or issues encountered -->
52+

.github/workflows/build_docs.yaml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,7 @@ jobs:
2424
# SETUP
2525
################################################################
2626
- name: Checkout repo
27-
uses: actions/checkout@v5
27+
uses: actions/checkout@v6
2828
with:
2929
fetch-depth: 0
3030

.github/workflows/build_recipes.yaml

Lines changed: 18 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -3,18 +3,23 @@ name: Build Recipes
33
on:
44
push:
55
branches:
6-
- "emscripten-4x"
6+
- "main"
77
paths:
88
- "recipes/**"
99
pull_request:
1010
paths:
1111
- "recipes/**"
1212

13+
permissions:
14+
contents: read
15+
id-token: write
16+
1317
jobs:
1418

1519
build_recipes:
1620
runs-on: ubuntu-latest
1721
env:
22+
FORCE_COLOR: 1
1823
TARGET_PLATFORM: emscripten-wasm32
1924
GITHUB_OWNER: "emscripten-forge"
2025
strategy:
@@ -25,17 +30,10 @@ jobs:
2530
# SETUP
2631
################################################################
2732
- name: Checkout repo
28-
uses: actions/checkout@v5
33+
uses: actions/checkout@v6
2934
with:
3035
fetch-depth: 0
3136

32-
- name: Maximize build space
33-
run: |
34-
sudo rm -rf /usr/share/dotnet
35-
sudo rm -rf /opt/ghc
36-
sudo rm -rf "/usr/local/share/boost"
37-
sudo rm -rf "$AGENT_TOOLSDIRECTORY"
38-
3937
- name: apt-install playwright dependencies
4038
run: |
4139
sudo apt-get update -y && sudo apt-get install -y \
@@ -50,7 +48,8 @@ jobs:
5048
libmanette-0.2-0 \
5149
libgles2 \
5250
gstreamer1.0-libav \
53-
libgtk-4-1
51+
libgtk-4-1 \
52+
libwayland-server0
5453
################################################################
5554
# CONFIG
5655
################################################################
@@ -76,7 +75,7 @@ jobs:
7675
shell: bash -el {0}
7776
if: github.event_name == 'push'
7877
run: |
79-
python -m emci build changed $GITHUB_WORKSPACE/ origin/emscripten-4x~1 origin/emscripten-4x
78+
python -m emci build changed $GITHUB_WORKSPACE/ origin/main~1 origin/main
8079
8180
################################################################
8281
# PULL_REQUEST
@@ -85,16 +84,21 @@ jobs:
8584
shell: bash -el {0}
8685
if: github.event_name == 'pull_request'
8786
run: |
88-
python -m emci build changed $GITHUB_WORKSPACE/ origin/emscripten-4x HEAD
87+
python -m emci build changed $GITHUB_WORKSPACE/ origin/main HEAD
8988
9089
################################################################
9190
# UPLOAD
9291
################################################################
92+
- name: Create artifact
93+
uses: actions/upload-artifact@v6
94+
with:
95+
name: output
96+
path: output
97+
continue-on-error: true
98+
9399
- name: Upload packages to prefix channel
94100
if: (github.event_name == 'push' && github.repository == 'emscripten-forge/recipes')
95101
shell: bash -l {0}
96-
env:
97-
PREFIX_DEV_API_KEY: ${{ secrets.PREFIX_DEV_API_KEY }}
98102
run: |
99103
overall_success=true
100104
@@ -109,7 +113,6 @@ jobs:
109113
110114
rattler-build upload prefix \
111115
--channel emscripten-forge-4x \
112-
-a $PREFIX_DEV_API_KEY \
113116
${package}
114117
115118
RETURNCODE=$?

.github/workflows/copilot-setup-steps.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,7 @@ jobs:
2727
steps:
2828

2929
- name: Checkout repo
30-
uses: actions/checkout@v5
30+
uses: actions/checkout@v6
3131
with:
3232
fetch-depth: 0
33-
- uses: prefix-dev/setup-pixi@v0.9.0
33+
- uses: prefix-dev/setup-pixi@v0.9.0

.github/workflows/delete_package.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -6,14 +6,14 @@ def main():
66
parser = argparse.ArgumentParser(description='Delete a package from prefix.dev')
77
parser.add_argument('--token', required=True, help='API token')
88
parser.add_argument('--package', required=True, help='Package file name')
9-
9+
parser.add_argument('--channel', required=True, help='Package file name')
1010
args = parser.parse_args()
1111

1212
token = args.token
1313
package_file_name = args.package
14+
channel = args.channel
1415

1516
base_url = "https://prefix.dev/api/v1"
16-
channel = "emscripten-forge-dev"
1717
subdir = "emscripten-wasm32"
1818
headers = {"Authorization": f"Bearer {token}"}
1919
delete_url = f"{base_url}/delete/{channel}/{subdir}/{package_file_name}"

.github/workflows/delete_package.yaml

Lines changed: 9 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -7,13 +7,17 @@ on:
77
description: Name of the package to be deleted
88
required: true
99
default: myBadPackage-9.4.0-py313h6e18b15_0.tar.bz2
10+
channel_name:
11+
description: Name of the channel
12+
required: true
13+
default: emscripten-forge-4x
1014

1115
jobs:
1216
delete_package:
1317
runs-on: ubuntu-latest
1418
steps:
1519
- name: Checkout repo
16-
uses: actions/checkout@v5
20+
uses: actions/checkout@v6
1721

1822
- name: Install micromamba
1923
uses: mamba-org/setup-micromamba@v2
@@ -29,7 +33,10 @@ jobs:
2933
env:
3034
PREFIX_DEV_API_KEY: ${{ secrets.PREFIX_DEV_API_KEY }}
3135
PACKAGE_NAME: ${{ github.event.inputs.package_name }}
36+
CHANNEL_NAME: ${{ github.event.inputs.channel_name }}
3237
run: |
3338
python .github/workflows/delete_package.py \
34-
--token "$PREFIX_DEV_API_KEY" --package "$PACKAGE_NAME"
39+
--token "$PREFIX_DEV_API_KEY" \
40+
--package "$PACKAGE_NAME" \
41+
--channel "$CHANNEL_NAME"
3542

.github/workflows/lint_recipes.yaml

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -15,13 +15,13 @@ jobs:
1515
runs-on: ubuntu-latest
1616
steps:
1717
- name: Checkout repo
18-
uses: actions/checkout@v5
18+
uses: actions/checkout@v6
1919
with:
2020
fetch-depth: 0
2121
ref: ${{ github.sha }}
2222

23-
- name: Fetch emscripten-4x branch
24-
run: git fetch origin emscripten-4x
23+
- name: Fetch main branch
24+
run: git fetch origin main
2525

2626
- name: Install micromamba
2727
uses: mamba-org/setup-micromamba@v2
@@ -36,7 +36,7 @@ jobs:
3636
set -e
3737
3838
if [ "${{ github.event_name }}" = "pull_request" ]; then
39-
BASE_REF="origin/emscripten-4x"
39+
BASE_REF="origin/main"
4040
HEAD_REF="HEAD"
4141
else
4242
BASE_REF="HEAD~1"

.github/workflows/new_versions.yaml

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -5,17 +5,18 @@ on:
55
schedule:
66
- cron: '0 0 * * *'
77

8+
89
jobs:
910

1011
update_versions:
1112
strategy:
1213
matrix:
13-
branch: [main]
14+
branch: [main, emscripten-3x]
1415

1516
if: (github.event_name == 'schedule' && github.repository == 'emscripten-forge/recipes') || (github.event_name != 'schedule')
1617
runs-on: [ubuntu-latest]
1718
steps:
18-
- uses: actions/checkout@v5
19+
- uses: actions/checkout@v6
1920
with:
2021
ref: main
2122

@@ -26,6 +27,6 @@ jobs:
2627

2728
- name: Determine new package version and open/merge PRs
2829
shell: bash -l -eo pipefail {0}
29-
run: python -m emci bot bump-recipes-versions ${{ matrix.branch }}
30+
run: python -m emci bot bump-recipes-versions ${{ matrix.branch }}
3031
env:
3132
GITHUB_TOKEN: ${{ secrets.BOT_ACCESS_TOKEN }}
Lines changed: 35 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,35 @@
1+
name: Matplotlib Fontcache Update Bot
2+
3+
on:
4+
workflow_dispatch:
5+
schedule:
6+
- cron: '0 0 * * *'
7+
8+
jobs:
9+
10+
update_matplotlib_fontcache:
11+
strategy:
12+
fail-fast: false
13+
14+
if: (github.event_name == 'schedule' && github.repository == 'emscripten-forge/recipes') || (github.event_name != 'schedule')
15+
runs-on: [ubuntu-latest]
16+
steps:
17+
- uses: actions/checkout@v6
18+
with:
19+
ref: ${{ matrix.branch }}
20+
21+
- name: Install micromamba
22+
uses: mamba-org/setup-micromamba@v2
23+
with:
24+
environment-file: ci_env.yml
25+
create-args: >-
26+
microsoft::playwright
27+
pyjs_code_runner
28+
29+
- name: Update matplotlib font cache if needed
30+
shell: bash -l -eo pipefail {0}
31+
run: |
32+
playwright install
33+
python -m emci bot update-matplotlib-fontcache main
34+
env:
35+
GITHUB_TOKEN: ${{ secrets.BOT_ACCESS_TOKEN }}

0 commit comments

Comments
 (0)