From 38db66ac71f2fb511747a442d1b39b9e769e8fd3 Mon Sep 17 00:00:00 2001 From: mmatera Date: Sat, 22 Jul 2023 12:13:02 -0300 Subject: [PATCH 1/4] Pyston WF --- .github/workflows/ubuntu-pyston.yml | 57 +++++++++++++++++++++++++++++ 1 file changed, 57 insertions(+) create mode 100644 .github/workflows/ubuntu-pyston.yml diff --git a/.github/workflows/ubuntu-pyston.yml b/.github/workflows/ubuntu-pyston.yml new file mode 100644 index 000000000..0cb857ab7 --- /dev/null +++ b/.github/workflows/ubuntu-pyston.yml @@ -0,0 +1,57 @@ +name: Mathics3 (ubuntu full with Pyston) + +on: + push: + branches: [ master ] + pull_request: + branches: [ master ] + +jobs: + build: + runs-on: ubuntu-22.04 + strategy: + matrix: + pyston-version: [2.3.4] + steps: + - uses: actions/checkout@v3 + - name: Set up Pyston ${{ matrix.pyston-version }} + run: | + wget https://github.com/pyston/pyston/releases/download/pyston_2.3.4/pyston_2.3.4_20.04_amd64.deb + sudo apt-get install tk8.6-blt2.5 libffi7 + sudo dpkg -i pyston_2.3.4_20.04_amd64.deb + - name: Install dependencies + run: | + sudo apt-get update -qq && sudo apt-get install -qq liblapack-dev llvm-11 llvm-11-dev libopenblas0 tesseract-ocr + sudo pyston -m pip install --upgrade pip + sudo LLVM_CONFIG=/usr/lib/llvm-11/bin/llvm-config pyston -m pip install llvmlite + # Download wheels for heavy packages from mathics-omnibus + wget https://github.com/Mathics3/mathics-omnibus/raw/mathics-6.x/docker/src/numpy-1.24.0-pyston38-pyston_23_x86_64_linux_gnu-linux_x86_64.whl + wget https://github.com/Mathics3/mathics-omnibus/raw/mathics-6.x/docker/src/Pillow-9.2.0-pyston38-pyston_23_x86_64_linux_gnu-linux_x86_64.whl + wget https://github.com/Mathics3/mathics-omnibus/raw/mathics-6.x/docker/src/lxml-4.9.2-pyston38-pyston_23_x86_64_linux_gnu-linux_x86_64.whl + wget https://github.com/Mathics3/mathics-omnibus/raw/mathics-6.x/docker/src/wordcloud-1.8.2.2-pyston38-pyston_23_x86_64_linux_gnu-linux_x86_64.whl + wget https://github.com/Mathics3/mathics-omnibus/raw/mathics-6.x/docker/src/PyYAML-6.0-pyston38-pyston_23_x86_64_linux_gnu-linux_x86_64.whl + wget https://github.com/Mathics3/mathics-omnibus/raw/mathics-6.x/docker/src/pyocr-0.8.3-py3-none-any.whl + wget https://github.com/Mathics3/mathics-omnibus/raw/mathics-6.x/docker/src/scikit_image-0.19.3-pyston38-pyston_23_x86_64_linux_gnu-linux_x86_64.whl + wget https://github.com/Mathics3/mathics-omnibus/raw/mathics-6.x/docker/src/matplotlib-3.5.2-pyston38-pyston_23_x86_64_linux_gnu-linux_x86_64.whl + wget https://github.com/Mathics3/mathics-omnibus/raw/mathics-6.x/docker/src/PyWavelets-1.3.0-pyston38-pyston_23_x86_64_linux_gnu-linux_x86_64.whl + # Scipy wheel does not work.... + wget www2.fisica.unlp.edu.ar/~matera/scipy-1.7.3-pyston38-pyston_23_x86_64_linux_gnu-linux_x86_64.whl + wget https://github.com/Mathics3/mathics-omnibus/raw/mathics-6.x/docker/src/pyzmq-23.2.0-pyston38-pyston_23_x86_64_linux_gnu-linux_x86_64.whl + pip install numpy-1.24.0-pyston38-pyston_23_x86_64_linux_gnu-linux_x86_64.whl + pip install scipy-1.7.3-pyston38-pyston_23_x86_64_linux_gnu-linux_x86_64.whl + pip install PyWavelets-1.3.0-pyston38-pyston_23_x86_64_linux_gnu-linux_x86_64.whl + pip install Pillow-9.2.0-pyston38-pyston_23_x86_64_linux_gnu-linux_x86_64.whl + pip install matplotlib-3.5.2-pyston38-pyston_23_x86_64_linux_gnu-linux_x86_64.whl + pip install lxml-4.9.2-pyston38-pyston_23_x86_64_linux_gnu-linux_x86_64.whl + pip install wordcloud-1.8.2.2-pyston38-pyston_23_x86_64_linux_gnu-linux_x86_64.whl + pip install PyYAML-6.0-pyston38-pyston_23_x86_64_linux_gnu-linux_x86_64.whl + pip install pyocr-0.8.3-py3-none-any.whl + pip install scikit_image-0.19.3-pyston38-pyston_23_x86_64_linux_gnu-linux_x86_64.whl + pip install pyzmq-23.2.0-pyston38-pyston_23_x86_64_linux_gnu-linux_x86_64.whl + - name: Install Mathics with full dependencies + run: | + python -m pip install Mathics-Scanner + make develop-full + - name: Test Mathics + run: | + make -j3 PYTHON=pyston doctest From b34f21bb97230e279d5862f827999a738a420c87 Mon Sep 17 00:00:00 2001 From: rocky Date: Sun, 23 Jul 2023 20:36:46 -0400 Subject: [PATCH 2/4] Avoid OSX and Windows; they take too long --- .github/workflows/{osx.yml => osx-yml-notyet} | 0 .github/workflows/{windows.yml => windows.yml-notyet} | 0 2 files changed, 0 insertions(+), 0 deletions(-) rename .github/workflows/{osx.yml => osx-yml-notyet} (100%) rename .github/workflows/{windows.yml => windows.yml-notyet} (100%) diff --git a/.github/workflows/osx.yml b/.github/workflows/osx-yml-notyet similarity index 100% rename from .github/workflows/osx.yml rename to .github/workflows/osx-yml-notyet diff --git a/.github/workflows/windows.yml b/.github/workflows/windows.yml-notyet similarity index 100% rename from .github/workflows/windows.yml rename to .github/workflows/windows.yml-notyet From 701ad6de1a18b85ff2f7b3bab54682f7b6cf3662 Mon Sep 17 00:00:00 2001 From: rocky Date: Mon, 24 Jul 2023 07:42:58 -0400 Subject: [PATCH 3/4] Reinstate other OS testing This was my mistake. If it is slow, it is also slow in master --- .github/workflows/{osx-yml-notyet => osx.yml} | 0 .github/workflows/ubuntu-pyston.yml | 8 ++++---- .github/workflows/ubuntu.yml | 2 +- .github/workflows/{windows.yml-notyet => windows.yml} | 0 4 files changed, 5 insertions(+), 5 deletions(-) rename .github/workflows/{osx-yml-notyet => osx.yml} (100%) rename .github/workflows/{windows.yml-notyet => windows.yml} (100%) diff --git a/.github/workflows/osx-yml-notyet b/.github/workflows/osx.yml similarity index 100% rename from .github/workflows/osx-yml-notyet rename to .github/workflows/osx.yml diff --git a/.github/workflows/ubuntu-pyston.yml b/.github/workflows/ubuntu-pyston.yml index 0cb857ab7..40039c391 100644 --- a/.github/workflows/ubuntu-pyston.yml +++ b/.github/workflows/ubuntu-pyston.yml @@ -11,7 +11,7 @@ jobs: runs-on: ubuntu-22.04 strategy: matrix: - pyston-version: [2.3.4] + pyston-version: [2.3.5] steps: - uses: actions/checkout@v3 - name: Set up Pyston ${{ matrix.pyston-version }} @@ -50,8 +50,8 @@ jobs: pip install pyzmq-23.2.0-pyston38-pyston_23_x86_64_linux_gnu-linux_x86_64.whl - name: Install Mathics with full dependencies run: | - python -m pip install Mathics-Scanner - make develop-full - - name: Test Mathics + pyston -m pip install Mathics-Scanner + PYTHON=pyston make develop-full + - name: Test Mathics3 run: | make -j3 PYTHON=pyston doctest diff --git a/.github/workflows/ubuntu.yml b/.github/workflows/ubuntu.yml index e32d9b54b..76feddb7f 100644 --- a/.github/workflows/ubuntu.yml +++ b/.github/workflows/ubuntu.yml @@ -8,7 +8,7 @@ on: jobs: build: - runs-on: ubuntu-20.04 + runs-on: ubuntu-22.04 strategy: matrix: python-version: ['3.11', '3.8', '3.9', '3.10'] diff --git a/.github/workflows/windows.yml-notyet b/.github/workflows/windows.yml similarity index 100% rename from .github/workflows/windows.yml-notyet rename to .github/workflows/windows.yml From 5fef508d261de43461e0a5909722799a47cae9e0 Mon Sep 17 00:00:00 2001 From: rocky Date: Mon, 24 Jul 2023 08:30:16 -0400 Subject: [PATCH 4/4] Use Pyston 2.3.5 --- .github/workflows/ubuntu-pyston.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/ubuntu-pyston.yml b/.github/workflows/ubuntu-pyston.yml index 40039c391..ec47c6988 100644 --- a/.github/workflows/ubuntu-pyston.yml +++ b/.github/workflows/ubuntu-pyston.yml @@ -16,9 +16,9 @@ jobs: - uses: actions/checkout@v3 - name: Set up Pyston ${{ matrix.pyston-version }} run: | - wget https://github.com/pyston/pyston/releases/download/pyston_2.3.4/pyston_2.3.4_20.04_amd64.deb + wget https://github.com/pyston/pyston/releases/download/pyston_2.3.5/pyston_2.3.5_20.04_amd64.deb sudo apt-get install tk8.6-blt2.5 libffi7 - sudo dpkg -i pyston_2.3.4_20.04_amd64.deb + sudo dpkg -i pyston_2.3.5_20.04_amd64.deb - name: Install dependencies run: | sudo apt-get update -qq && sudo apt-get install -qq liblapack-dev llvm-11 llvm-11-dev libopenblas0 tesseract-ocr