Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Emscripten 3.1.45 and Python 3.11 update #643

Merged
merged 49 commits into from
Oct 23, 2023
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
49 commits
Select commit Hold shift + click to select a range
8f7961c
python is building again
DerThorsten Aug 24, 2023
7ec8c5f
wip
DerThorsten Aug 28, 2023
ca2375c
moving to new platform
DerThorsten Sep 19, 2023
7c0eeba
change emsdk ver
DerThorsten Sep 19, 2023
0d67904
build emsdk
DerThorsten Sep 20, 2023
1760997
build emsdk
DerThorsten Sep 20, 2023
ad77932
update recipe
DerThorsten Sep 20, 2023
84e4303
Merge branch 'main' into 3.1.45
DerThorsten Sep 20, 2023
b507e4b
update recipes
DerThorsten Sep 20, 2023
5907f9d
use mamba-org/setup-micromamba@v1
DerThorsten Sep 20, 2023
1e9d5c9
remove wrong urls
DerThorsten Sep 20, 2023
feaa680
removed duplicated block
DerThorsten Sep 20, 2023
abda92c
removed explicit activation
DerThorsten Sep 20, 2023
7cc58d6
use different dir
DerThorsten Sep 20, 2023
aba804e
saved not save file
DerThorsten Sep 20, 2023
bdc7dbb
removed duplicated key
DerThorsten Sep 20, 2023
1242b12
changed compiler pkg
DerThorsten Sep 20, 2023
0d02a55
changed numpy recipe
DerThorsten Sep 20, 2023
a6738b2
adding local env
DerThorsten Sep 20, 2023
a8399a5
adding strict pinning
DerThorsten Sep 20, 2023
e284869
relaxing env constraints
DerThorsten Sep 20, 2023
767f115
adding more deps
DerThorsten Sep 20, 2023
f9e044c
ignore run exports
DerThorsten Sep 20, 2023
e28b1fe
just remove python as dep
DerThorsten Sep 20, 2023
e125e60
build pyjs right away
DerThorsten Sep 20, 2023
c145ef0
uploaded more
DerThorsten Sep 20, 2023
908115a
adding kernel headers to deps for libuuid
DerThorsten Sep 21, 2023
d48a907
with hook to skip exisitng
DerThorsten Sep 21, 2023
a6cce7b
update many
DerThorsten Sep 21, 2023
2975f26
wip
DerThorsten Sep 25, 2023
d6432c4
added missing cross python
DerThorsten Sep 25, 2023
e47ffd8
changed recipes
DerThorsten Sep 25, 2023
d7d1121
postponing gmp
DerThorsten Sep 25, 2023
cee0fc8
pandas
DerThorsten Sep 25, 2023
0c98fef
sklearn
DerThorsten Sep 26, 2023
ea55d1e
statsmodel
DerThorsten Sep 27, 2023
d18ba32
swig
DerThorsten Sep 27, 2023
13fd7bc
wip
DerThorsten Sep 29, 2023
4f2a3d7
Merge branch '3.1.45' of github.com:DerThorsten/recipes into 3.1.45
DerThorsten Sep 29, 2023
68eead6
wip
DerThorsten Oct 19, 2023
24b3e49
add playwright back
DerThorsten Oct 19, 2023
6403390
Merge branch 'main' into 3.1.45
DerThorsten Oct 19, 2023
a98eebc
add code runner
DerThorsten Oct 19, 2023
b4aa00f
Merge branch '3.1.45' of github.com:DerThorsten/recipes into 3.1.45
DerThorsten Oct 19, 2023
2889a0b
test
DerThorsten Oct 19, 2023
a762302
test2
DerThorsten Oct 19, 2023
7636a50
change config
DerThorsten Oct 19, 2023
dec4dce
move recipes
DerThorsten Oct 20, 2023
b6227f4
fixed future recipe
DerThorsten Oct 20, 2023
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
3 changes: 2 additions & 1 deletion .github/workflows/.condarc
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
channels:
- "https://repo.mamba.pm/emscripten-forge"
- /home/runner/micromamba/envs/ci/conda-bld
- conda-forge

add_pip_as_python_dependency: false
add_pip_as_python_dependency: true
39 changes: 16 additions & 23 deletions .github/workflows/build_all.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -8,12 +8,12 @@ jobs:
build_all:
runs-on: ubuntu-latest
env:
TARGET_PLATFORM: emscripten-32
TARGET_PLATFORM: emscripten-wasm32
GITHUB_OWNER: "emscripten-forge"
strategy:
fail-fast: false
matrix:
emsdk_ver: ["3.1.27"]
emsdk_ver: ["3.1.45"]

steps:

Expand All @@ -30,7 +30,7 @@ jobs:
# CONFIG
################################################################
- name: global config
shell: bash -l {0}
shell: bash -el {0}
run: |
git config --global advice.detachedHead false
cp $GITHUB_WORKSPACE/.github/workflows/.condarc $HOME/.condarc
Expand All @@ -39,37 +39,31 @@ jobs:
################################################################
# MAMBA
################################################################
- name: install mamba
uses: mamba-org/provision-with-micromamba@main
- uses: mamba-org/setup-micromamba@v1
with:
environment-file: ci_env.yml
environment-name: ci-env
micromamba-version: '0.23.2'
environment-name: ci
init-shell: >-
bash
cache-environment: true
post-cleanup: 'all'

################################################################
# POST ENV INSTALL CONFIG
################################################################
- name: post env install config
shell: bash -l {0}
shell: bash -el {0}
run: |
cp $GITHUB_WORKSPACE/.github/workflows/.condarc $HOME/.condarc
micromamba activate ci-env
playwright install

################################################################
# setup emsdk
################################################################
- name: "setup emsdk"
shell: bash -l {0}
shell: bash -el {0}
run: |
micromamba activate ci-env

git clone https://github.com/emscripten-core/emsdk.git
cd emsdk
./emsdk install ${{ matrix.emsdk_ver }}
./emsdk activate ${{ matrix.emsdk_ver }}
echo $(pwd)/emsdk-${{ matrix.emsdk_ver }}
echo $(pwd) > $HOME/.emsdkdir
./emsdk/setup_emsdk.sh ${{ matrix.emsdk_ver }} $(pwd)/emsdk_install



Expand All @@ -80,19 +74,18 @@ jobs:
# in the conda env named "ci-env"
################################################################
- name: "install custom non-master dependencies"
shell: bash -l {0}
shell: bash -el {0}
run: |
micromamba activate ci-env
python -m pip install git+https://github.com/DerThorsten/boa.git@python_api --no-deps --ignore-installed
python -m pip install git+https://github.com/DerThorsten/boa.git@python_api_v2 --no-deps --ignore-installed


################################################################
# build ALL recipes
################################################################
- name: "build packages workflow_dispatch"
shell: bash -l {0}
shell: bash -el {0}
run: |
micromamba activate ci-env
cd ${GITHUB_WORKSPACE}
python builder.py build directory $GITHUB_WORKSPACE/recipes/recipes --skip-tests
python builder.py build directory $GITHUB_WORKSPACE/recipes/recipes_emscripten --emscripten-32
python builder.py build directory $GITHUB_WORKSPACE/recipes/recipes_emscripten --emscripten-wasm32
96 changes: 49 additions & 47 deletions .github/workflows/build_recipes.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -10,12 +10,12 @@ jobs:
build_recipes:
runs-on: ubuntu-latest
env:
TARGET_PLATFORM: emscripten-32
TARGET_PLATFORM: emscripten-wasm32
GITHUB_OWNER: "emscripten-forge"
strategy:
fail-fast: false
matrix:
emsdk_ver: ["3.1.27"]
emsdk_ver: ["3.1.45"]

steps:
- name: Checkout repo
Expand All @@ -41,7 +41,7 @@ jobs:
# CONFIG
################################################################
- name: global config
shell: bash -l {0}
shell: bash -el {0}
run: |
git config --global advice.detachedHead false
cp $GITHUB_WORKSPACE/.github/workflows/.condarc $HOME
Expand All @@ -50,38 +50,32 @@ jobs:
################################################################
# MAMBA
################################################################
- name: install mamba
uses: mamba-org/provision-with-micromamba@main
- uses: mamba-org/setup-micromamba@v1
with:
environment-file: ci_env.yml
environment-name: ci-env
micromamba-version: '0.23.2'
environment-name: ci
init-shell: >-
bash
cache-environment: true
post-cleanup: 'all'

################################################################
# setup emsdk
################################################################
- name: "setup emsdk"
shell: bash -el {0}
run: |
./emsdk/setup_emsdk.sh ${{ matrix.emsdk_ver }} $(pwd)/emsdk_install

################################################################
# POST ENV INSTALL CONFIG
################################################################
- name: post env install config
shell: bash -l {0}
shell: bash -el {0}
run: |
cp $GITHUB_WORKSPACE/.github/workflows/.condarc $HOME/.condarc
micromamba activate ci-env
playwright install

################################################################
# setup emsdk
################################################################
- name: "setup emsdk"
shell: bash -l {0}
run: |
micromamba activate ci-env

git clone https://github.com/emscripten-core/emsdk.git
cd emsdk
./emsdk install ${{ matrix.emsdk_ver }}
./emsdk activate ${{ matrix.emsdk_ver }}
echo $(pwd)/emsdk-${{ matrix.emsdk_ver }}
echo $(pwd) > $HOME/.emsdkdir



################################################################
Expand All @@ -91,29 +85,37 @@ jobs:
# in the conda env named "ci-env"
################################################################
- name: "install custom non-master dependencies"
shell: bash -l {0}
shell: bash -el {0}
run: |
micromamba activate ci-env
python -m pip install git+https://github.com/DerThorsten/boa.git@python_api --no-deps --ignore-installed
python -m pip install git+https://github.com/DerThorsten/boa.git@python_api_v2 --no-deps --ignore-installed

################################################################
# run pytests
################################################################
- name: "test config files"
shell: bash -l {0}
shell: bash -el {0}
run: |
micromamba activate ci-env
cd testing
pytest test_empack_config.py

# ################################################################
# # build pyjs
# ################################################################
# - name: "build package"
# shell: bash -el {0}
# run: |
# cd ${GITHUB_WORKSPACE}
# python builder.py build explicit $GITHUB_WORKSPACE/recipes/recipes/emscripten_emscripten-wasm32
# python builder.py build explicit $GITHUB_WORKSPACE/recipes/recipes_emscripten/pyjs --emscripten-wasm32


################################################################
# build recipes with changes PUSH
################################################################
- name: "build packages push"
shell: bash -l {0}
shell: bash -el {0}
if: github.event_name == 'push'
run: |
micromamba activate ci-env
cd ${GITHUB_WORKSPACE}
python builder.py build changed $GITHUB_WORKSPACE/ origin/main~1 origin/main

Expand All @@ -122,10 +124,9 @@ jobs:
# build recipes with changes PULL_REQUEST
################################################################
- name: "build packages pull_request"
shell: bash -l {0}
shell: bash -el {0}
if: github.event_name == 'pull_request'
run: |
micromamba activate ci-env
cd ${GITHUB_WORKSPACE}
python builder.py build changed $GITHUB_WORKSPACE/ origin/main HEAD

Expand All @@ -135,21 +136,22 @@ jobs:
################################################################
- name: "quetz upload packages"
if: github.event_name == 'push'
shell: bash -l {0}
shell: bash -el {0}
run: |

mkdir -p ${CONDA_PREFIX}/conda-bld/emscripten-32
mkdir -p ${CONDA_PREFIX}/conda-bld/emscripten-wasm32
mkdir -p ${CONDA_PREFIX}/conda-bld/linux-64
mkdir -p ${CONDA_PREFIX}/conda-bld/noarch

if [ $(ls ${CONDA_PREFIX}/conda-bld/emscripten-32/*.tar.bz2 | wc -l) -ne 0 ]; then
QUETZ_API_KEY=${{ secrets.QUETZ_API_KEY}} quetz-client https://beta.mamba.pm/channels/emscripten-forge ${CONDA_PREFIX}/conda-bld/emscripten-32/*.tar.bz2
fi

if [ $(ls ${CONDA_PREFIX}/conda-bld/linux-64/*.tar.bz2 | wc -l) -ne 0 ]; then
QUETZ_API_KEY=${{ secrets.QUETZ_API_KEY}} quetz-client https://beta.mamba.pm/channels/emscripten-forge ${CONDA_PREFIX}/conda-bld/linux-64/*.tar.bz2
fi

if [ $(ls ${CONDA_PREFIX}/conda-bld/noarch/*.tar.bz2 | wc -l) -ne 0 ]; then
QUETZ_API_KEY=${{ secrets.QUETZ_API_KEY}} quetz-client https://beta.mamba.pm/channels/emscripten-forge ${CONDA_PREFIX}/conda-bld/noarch/*.tar.bz2
fi


# if [ $(ls ${CONDA_PREFIX}/conda-bld/emscripten-32/*.tar.bz2 | wc -l) -ne 0 ]; then
# QUETZ_API_KEY=${{ secrets.QUETZ_API_KEY}} quetz-client https://beta.mamba.pm/channels/emscripten-forge ${CONDA_PREFIX}/conda-bld/emscripten-wasm32/*.tar.bz2
# fi

# if [ $(ls ${CONDA_PREFIX}/conda-bld/linux-64/*.tar.bz2 | wc -l) -ne 0 ]; then
# QUETZ_API_KEY=${{ secrets.QUETZ_API_KEY}} quetz-client https://beta.mamba.pm/channels/emscripten-forge ${CONDA_PREFIX}/conda-bld/linux-64/*.tar.bz2
# fi

# if [ $(ls ${CONDA_PREFIX}/conda-bld/noarch/*.tar.bz2 | wc -l) -ne 0 ]; then
# QUETZ_API_KEY=${{ secrets.QUETZ_API_KEY}} quetz-client https://beta.mamba.pm/channels/emscripten-forge ${CONDA_PREFIX}/conda-bld/noarch/*.tar.bz2
# fi
45 changes: 18 additions & 27 deletions .github/workflows/build_simple.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -11,12 +11,12 @@ jobs:
build_simple:
runs-on: ubuntu-latest
env:
TARGET_PLATFORM: emscripten-32
TARGET_PLATFORM: emscripten-wasm32
GITHUB_OWNER: "emscripten-forge"
strategy:
fail-fast: false
matrix:
emsdk_ver: ["3.1.27"]
emsdk_ver: ["3.1.45"]

steps:

Expand All @@ -29,7 +29,7 @@ jobs:
# CONFIG
################################################################
- name: global config
shell: bash -l {0}
shell: bash -el {0}
run: |
git config --global advice.detachedHead false
cp $GITHUB_WORKSPACE/.github/workflows/.condarc $HOME/.condarc
Expand All @@ -38,37 +38,31 @@ jobs:
################################################################
# MAMBA
################################################################
- name: install mamba
uses: mamba-org/provision-with-micromamba@main
- uses: mamba-org/setup-micromamba@v1
with:
environment-file: ci_env.yml
environment-name: ci-env
micromamba-version: '0.23.2'
environment-name: ci
init-shell: >-
bash
cache-environment: true
post-cleanup: 'all'

################################################################
# POST ENV INSTALL CONFIG
################################################################
- name: post env install config
shell: bash -l {0}
shell: bash -el {0}
run: |
cp $GITHUB_WORKSPACE/.github/workflows/.condarc $HOME/.condarc
micromamba activate ci-env
playwright install

################################################################
# setup emsdk
################################################################
- name: "setup emsdk"
shell: bash -l {0}
shell: bash -el {0}
run: |
micromamba activate ci-env

git clone https://github.com/emscripten-core/emsdk.git
cd emsdk
./emsdk install ${{ matrix.emsdk_ver }}
./emsdk activate ${{ matrix.emsdk_ver }}
echo $(pwd)/emsdk-${{ matrix.emsdk_ver }}
echo $(pwd) > $HOME/.emsdkdir
./emsdk/setup_emsdk.sh ${{ matrix.emsdk_ver }} $(pwd)/emsdk_install

################################################################
# install / clone custom non-master things
Expand All @@ -77,28 +71,25 @@ jobs:
# in the conda env named "ci-env"
################################################################
- name: "install custom non-master dependencies"
shell: bash -l {0}
shell: bash -el {0}
run: |
micromamba activate ci-env
python -m pip install git+https://github.com/DerThorsten/boa.git@python_api --no-deps --ignore-installed
python -m pip install git+https://github.com/DerThorsten/boa.git@python_api_v2 --no-deps --ignore-installed


################################################################
# build a package which is **not** on emscripten forge
################################################################
- name: "build package"
shell: bash -l {0}
shell: bash -el {0}
run: |
micromamba activate ci-env
cd ${GITHUB_WORKSPACE}
python builder.py build explicit $GITHUB_WORKSPACE/testing/test_recipes/only_py_tests --emscripten-32
python builder.py build explicit $GITHUB_WORKSPACE/testing/test_recipes/only_py_tests --emscripten-wasm32

################################################################
# build a simple package
################################################################
- name: "build package"
shell: bash -l {0}
shell: bash -el {0}
run: |
micromamba activate ci-env
cd ${GITHUB_WORKSPACE}
python builder.py build explicit $GITHUB_WORKSPACE/recipes/recipes_emscripten/regex --emscripten-32
python builder.py build explicit $GITHUB_WORKSPACE/recipes/recipes_emscripten/regex --emscripten-wasm32
2 changes: 1 addition & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -38,4 +38,4 @@ We are working on:
## Credits
This project would not have been possible without the pioneering work of the [pyodide](https://pyodide.org/) team.
Many aspects of this project are heavily inspired by the [pyodide](https://pyodide.org/) project. This includes the build scripts and
many of the patches which have been taken from the pyodide packages.
many of the patches which have been taken from the pyodide packages.
Loading