Upgrade to GraalVM 21.2.0

This commit is contained in:
Michiel Borkent 2021-08-30 20:16:18 +02:00 committed by GitHub
parent 242c3d442f
commit cebdd19c00
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
8 changed files with 120 additions and 116 deletions

View file

@ -76,7 +76,7 @@ jobs:
working_directory: ~/repo working_directory: ~/repo
environment: environment:
LEIN_ROOT: "true" LEIN_ROOT: "true"
GRAALVM_HOME: /home/circleci/graalvm-ce-java11-21.1.0 GRAALVM_HOME: /home/circleci/graalvm-ce-java11-21.2.0
BABASHKA_PLATFORM: linux # used in release script BABASHKA_PLATFORM: linux # used in release script
BABASHKA_TEST_ENV: native BABASHKA_TEST_ENV: native
BABASHKA_XMX: "-J-Xmx6500m" BABASHKA_XMX: "-J-Xmx6500m"
@ -110,9 +110,9 @@ jobs:
name: Download GraalVM name: Download GraalVM
command: | command: |
cd ~ cd ~
if ! [ -d graalvm-ce-java11-21.1.0 ]; then if ! [ -d graalvm-ce-java11-21.2.0 ]; then
curl -O -sL https://github.com/graalvm/graalvm-ce-builds/releases/download/vm-21.1.0/graalvm-ce-java11-linux-amd64-21.1.0.tar.gz curl -O -sL https://github.com/graalvm/graalvm-ce-builds/releases/download/vm-21.2.0/graalvm-ce-java11-linux-amd64-21.2.0.tar.gz
tar xzf graalvm-ce-java11-linux-amd64-21.1.0.tar.gz tar xzf graalvm-ce-java11-linux-amd64-21.2.0.tar.gz
fi fi
- run: - run:
name: Build binary name: Build binary
@ -136,7 +136,7 @@ jobs:
- save_cache: - save_cache:
paths: paths:
- ~/.m2 - ~/.m2
- ~/graalvm-ce-java11-21.1.0 - ~/graalvm-ce-java11-21.2.0
key: linux-{{ checksum "project.clj" }}-{{ checksum ".circleci/config.yml" }} key: linux-{{ checksum "project.clj" }}-{{ checksum ".circleci/config.yml" }}
- store_artifacts: - store_artifacts:
path: /tmp/release path: /tmp/release
@ -151,7 +151,7 @@ jobs:
working_directory: ~/repo working_directory: ~/repo
environment: environment:
LEIN_ROOT: "true" LEIN_ROOT: "true"
GRAALVM_HOME: /home/circleci/graalvm-ce-java11-21.1.0 GRAALVM_HOME: /home/circleci/graalvm-ce-java11-21.2.0
BABASHKA_PLATFORM: linux # used in release script BABASHKA_PLATFORM: linux # used in release script
BABASHKA_TEST_ENV: native BABASHKA_TEST_ENV: native
BABASHKA_STATIC: "true" BABASHKA_STATIC: "true"
@ -198,9 +198,9 @@ jobs:
name: Download GraalVM name: Download GraalVM
command: | command: |
cd ~ cd ~
if ! [ -d graalvm-ce-java11-21.1.0 ]; then if ! [ -d graalvm-ce-java11-21.2.0 ]; then
curl -O -sL https://github.com/graalvm/graalvm-ce-builds/releases/download/vm-21.1.0/graalvm-ce-java11-linux-amd64-21.1.0.tar.gz curl -O -sL https://github.com/graalvm/graalvm-ce-builds/releases/download/vm-21.2.0/graalvm-ce-java11-linux-amd64-21.2.0.tar.gz
tar xzf graalvm-ce-java11-linux-amd64-21.1.0.tar.gz tar xzf graalvm-ce-java11-linux-amd64-21.2.0.tar.gz
fi fi
- run: - run:
name: Build binary name: Build binary
@ -224,7 +224,7 @@ jobs:
- save_cache: - save_cache:
paths: paths:
- ~/.m2 - ~/.m2
- ~/graalvm-ce-java11-21.1.0 - ~/graalvm-ce-java11-21.2.0
key: linux-{{ checksum "project.clj" }}-{{ checksum ".circleci/config.yml" }} key: linux-{{ checksum "project.clj" }}-{{ checksum ".circleci/config.yml" }}
- store_artifacts: - store_artifacts:
path: /tmp/release path: /tmp/release
@ -241,7 +241,7 @@ jobs:
working_directory: ~/repo working_directory: ~/repo
environment: environment:
LEIN_ROOT: "true" LEIN_ROOT: "true"
GRAALVM_HOME: /home/circleci/graalvm-ce-java11-21.1.0 GRAALVM_HOME: /home/circleci/graalvm-ce-java11-21.2.0
BABASHKA_PLATFORM: linux # used in release script BABASHKA_PLATFORM: linux # used in release script
BABASHKA_ARCH: aarch64 BABASHKA_ARCH: aarch64
BABASHKA_TEST_ENV: native BABASHKA_TEST_ENV: native
@ -287,9 +287,9 @@ jobs:
name: Download GraalVM name: Download GraalVM
command: | command: |
cd ~ cd ~
if ! [ -d graalvm-ce-java11-21.1.0 ]; then if ! [ -d graalvm-ce-java11-21.2.0 ]; then
curl -O -sL https://github.com/graalvm/graalvm-ce-builds/releases/download/vm-21.1.0/graalvm-ce-java11-linux-aarch64-21.1.0.tar.gz curl -O -sL https://github.com/graalvm/graalvm-ce-builds/releases/download/vm-21.2.0/graalvm-ce-java11-linux-aarch64-21.2.0.tar.gz
tar xzf graalvm-ce-java11-linux-aarch64-21.1.0.tar.gz tar xzf graalvm-ce-java11-linux-aarch64-21.2.0.tar.gz
fi fi
- run: - run:
name: Build binary name: Build binary
@ -313,7 +313,7 @@ jobs:
- save_cache: - save_cache:
paths: paths:
- ~/.m2 - ~/.m2
- ~/graalvm-ce-java11-21.1.0 - ~/graalvm-ce-java11-21.2.0
key: linux-aarch64-{{ checksum "project.clj" }}-{{ checksum ".circleci/config.yml" }} key: linux-aarch64-{{ checksum "project.clj" }}-{{ checksum ".circleci/config.yml" }}
- store_artifacts: - store_artifacts:
path: /tmp/release path: /tmp/release
@ -330,7 +330,7 @@ jobs:
working_directory: ~/repo working_directory: ~/repo
environment: environment:
LEIN_ROOT: "true" LEIN_ROOT: "true"
GRAALVM_HOME: /home/circleci/graalvm-ce-java11-21.1.0 GRAALVM_HOME: /home/circleci/graalvm-ce-java11-21.2.0
BABASHKA_PLATFORM: linux # used in release script BABASHKA_PLATFORM: linux # used in release script
BABASHKA_ARCH: aarch64 BABASHKA_ARCH: aarch64
BABASHKA_TEST_ENV: native BABASHKA_TEST_ENV: native
@ -378,9 +378,9 @@ jobs:
name: Download GraalVM name: Download GraalVM
command: | command: |
cd ~ cd ~
if ! [ -d graalvm-ce-java11-21.1.0 ]; then if ! [ -d graalvm-ce-java11-21.2.0 ]; then
curl -O -sL https://github.com/graalvm/graalvm-ce-builds/releases/download/vm-21.1.0/graalvm-ce-java11-linux-aarch64-21.1.0.tar.gz curl -O -sL https://github.com/graalvm/graalvm-ce-builds/releases/download/vm-21.2.0/graalvm-ce-java11-linux-aarch64-21.2.0.tar.gz
tar xzf graalvm-ce-java11-linux-aarch64-21.1.0.tar.gz tar xzf graalvm-ce-java11-linux-aarch64-21.2.0.tar.gz
fi fi
- run: - run:
name: Build binary name: Build binary
@ -404,7 +404,7 @@ jobs:
- save_cache: - save_cache:
paths: paths:
- ~/.m2 - ~/.m2
- ~/graalvm-ce-java11-21.1.0 - ~/graalvm-ce-java11-21.2.0
key: linux-aarch64-{{ checksum "project.clj" }}-{{ checksum ".circleci/config.yml" }} key: linux-aarch64-{{ checksum "project.clj" }}-{{ checksum ".circleci/config.yml" }}
- store_artifacts: - store_artifacts:
path: /tmp/release path: /tmp/release
@ -418,7 +418,7 @@ jobs:
xcode: "12.0.0" xcode: "12.0.0"
environment: environment:
MACOSX_DEPLOYMENT_TARGET: 10.13 # 10.12 is EOL MACOSX_DEPLOYMENT_TARGET: 10.13 # 10.12 is EOL
GRAALVM_HOME: /Users/distiller/graalvm-ce-java11-21.1.0/Contents/Home GRAALVM_HOME: /Users/distiller/graalvm-ce-java11-21.2.0/Contents/Home
BABASHKA_PLATFORM: macos # used in release script BABASHKA_PLATFORM: macos # used in release script
BABASHKA_TEST_ENV: native BABASHKA_TEST_ENV: native
BABASHKA_XMX: "-J-Xmx6500m" BABASHKA_XMX: "-J-Xmx6500m"
@ -446,9 +446,9 @@ jobs:
command: | command: |
cd ~ cd ~
ls -la ls -la
if ! [ -d graalvm-ce-java11-21.1.0 ]; then if ! [ -d graalvm-ce-java11-21.2.0 ]; then
curl -O -sL https://github.com/graalvm/graalvm-ce-builds/releases/download/vm-21.1.0/graalvm-ce-java11-darwin-amd64-21.1.0.tar.gz curl -O -sL https://github.com/graalvm/graalvm-ce-builds/releases/download/vm-21.2.0/graalvm-ce-java11-darwin-amd64-21.2.0.tar.gz
tar xzf graalvm-ce-java11-darwin-amd64-21.1.0.tar.gz tar xzf graalvm-ce-java11-darwin-amd64-21.2.0.tar.gz
fi fi
- run: - run:
name: Build binary name: Build binary
@ -470,7 +470,7 @@ jobs:
- save_cache: - save_cache:
paths: paths:
- ~/.m2 - ~/.m2
- ~/graalvm-ce-java11-21.1.0 - ~/graalvm-ce-java11-21.2.0
key: mac-{{ checksum "project.clj" }}-{{ checksum ".circleci/config.yml" }} key: mac-{{ checksum "project.clj" }}-{{ checksum ".circleci/config.yml" }}
- store_artifacts: - store_artifacts:
path: /tmp/release path: /tmp/release

View file

@ -45,17 +45,17 @@ jobs:
uses: actions/cache@v1 uses: actions/cache@v1
id: cache-graalvm id: cache-graalvm
with: with:
path: ~/graalvm-ce-java11-21.1.0 path: ~/graalvm-ce-java11-21.2.0
key: ${{ runner.os }}-graalvm-21.1.0 key: ${{ runner.os }}-graalvm-21.2.0
restore-keys: | restore-keys: |
${{ runner.os }}-graalvm-21.1.0 ${{ runner.os }}-graalvm-21.2.0
- name: Download GraalVM - name: Download GraalVM
run: | run: |
cd ~ cd ~
if ! [ -d graalvm-ce-java11-21.1.0 ]; then if ! [ -d graalvm-ce-java11-21.2.0 ]; then
curl -O -sL https://github.com/graalvm/graalvm-ce-builds/releases/download/vm-21.1.0/graalvm-ce-java11-linux-amd64-21.1.0.tar.gz curl -O -sL https://github.com/graalvm/graalvm-ce-builds/releases/download/vm-21.2.0/graalvm-ce-java11-linux-amd64-21.2.0.tar.gz
tar xzf graalvm-ce-java11-linux-amd64-21.1.0.tar.gz tar xzf graalvm-ce-java11-linux-amd64-21.2.0.tar.gz
fi fi
- name: Fetch deps - name: Fetch deps
@ -65,18 +65,18 @@ jobs:
- name: Run tests - name: Run tests
run: | run: |
export GRAALVM_HOME="$HOME/graalvm-ce-java11-21.1.0" export GRAALVM_HOME="$HOME/graalvm-ce-java11-21.2.0"
script/test script/test
- name: Test libraries - name: Test libraries
run: | run: |
export GRAALVM_HOME="$HOME/graalvm-ce-java11-21.1.0" export GRAALVM_HOME="$HOME/graalvm-ce-java11-21.2.0"
sudo script/install-clojure sudo script/install-clojure
script/run_lib_tests script/run_lib_tests
- name: Build uberjar - name: Build uberjar
run: | run: |
export GRAALVM_HOME="$HOME/graalvm-ce-java11-21.1.0" export GRAALVM_HOME="$HOME/graalvm-ce-java11-21.2.0"
script/uberjar script/uberjar
- name: Babashka version - name: Babashka version
@ -119,17 +119,17 @@ jobs:
uses: actions/cache@v1 uses: actions/cache@v1
id: cache-graalvm id: cache-graalvm
with: with:
path: ~/graalvm-ce-java11-21.1.0 path: ~/graalvm-ce-java11-21.2.0
key: ${{ runner.os }}-graalvm-21.1.0 key: ${{ runner.os }}-graalvm-21.2.0
restore-keys: | restore-keys: |
${{ runner.os }}-graalvm-21.1.0 ${{ runner.os }}-graalvm-21.2.0
- name: Download GraalVM - name: Download GraalVM
run: | run: |
cd ~ cd ~
if ! [ -d graalvm-ce-java11-21.1.0 ]; then if ! [ -d graalvm-ce-java11-21.2.0 ]; then
curl -O -sL https://github.com/graalvm/graalvm-ce-builds/releases/download/vm-21.1.0/graalvm-ce-java11-linux-amd64-21.1.0.tar.gz curl -O -sL https://github.com/graalvm/graalvm-ce-builds/releases/download/vm-21.2.0/graalvm-ce-java11-linux-amd64-21.2.0.tar.gz
tar xzf graalvm-ce-java11-linux-amd64-21.1.0.tar.gz tar xzf graalvm-ce-java11-linux-amd64-21.2.0.tar.gz
fi fi
- name: Babashka version - name: Babashka version
@ -142,12 +142,12 @@ jobs:
run: | run: |
export BABASHKA_JAR=babashka-${{ steps.babashka-version.outputs.version }}-standalone.jar export BABASHKA_JAR=babashka-${{ steps.babashka-version.outputs.version }}-standalone.jar
export BABASHKA_XMX="-J-Xmx6g" export BABASHKA_XMX="-J-Xmx6g"
export GRAALVM_HOME="$HOME/graalvm-ce-java11-21.1.0" export GRAALVM_HOME="$HOME/graalvm-ce-java11-21.2.0"
script/compile script/compile
- name: Test binary - name: Test binary
run: | run: |
export GRAALVM_HOME="$HOME/graalvm-ce-java11-21.1.0" export GRAALVM_HOME="$HOME/graalvm-ce-java11-21.2.0"
BABASHKA_TEST_ENV=native script/test BABASHKA_TEST_ENV=native script/test
- name: Install clojure - name: Install clojure
@ -156,7 +156,7 @@ jobs:
- name: Test libraries - name: Test libraries
run: | run: |
export GRAALVM_HOME="$HOME/graalvm-ce-java11-21.1.0" export GRAALVM_HOME="$HOME/graalvm-ce-java11-21.2.0"
BABASHKA_TEST_ENV=native script/run_lib_tests BABASHKA_TEST_ENV=native script/run_lib_tests
- name: Upload artifact - name: Upload artifact
@ -194,17 +194,17 @@ jobs:
uses: actions/cache@v1 uses: actions/cache@v1
id: cache-graalvm id: cache-graalvm
with: with:
path: ~/graalvm-ce-java11-21.1.0 path: ~/graalvm-ce-java11-21.2.0
key: ${{ runner.os }}-graalvm-21.1.0 key: ${{ runner.os }}-graalvm-21.2.0
restore-keys: | restore-keys: |
${{ runner.os }}-graalvm-21.1.0 ${{ runner.os }}-graalvm-21.2.0
- name: Download GraalVM - name: Download GraalVM
run: | run: |
cd ~ cd ~
if ! [ -d graalvm-ce-java11-21.1.0 ]; then if ! [ -d graalvm-ce-java11-21.2.0 ]; then
curl -O -sL https://github.com/graalvm/graalvm-ce-builds/releases/download/vm-21.1.0/graalvm-ce-java11-linux-amd64-21.1.0.tar.gz curl -O -sL https://github.com/graalvm/graalvm-ce-builds/releases/download/vm-21.2.0/graalvm-ce-java11-linux-amd64-21.2.0.tar.gz
tar xzf graalvm-ce-java11-linux-amd64-21.1.0.tar.gz tar xzf graalvm-ce-java11-linux-amd64-21.2.0.tar.gz
fi fi
- name: Babashka version - name: Babashka version
@ -217,14 +217,14 @@ jobs:
run: | run: |
export BABASHKA_JAR=babashka-${{ steps.babashka-version.outputs.version }}-standalone.jar export BABASHKA_JAR=babashka-${{ steps.babashka-version.outputs.version }}-standalone.jar
export BABASHKA_XMX="-J-Xmx6g" export BABASHKA_XMX="-J-Xmx6g"
export GRAALVM_HOME="$HOME/graalvm-ce-java11-21.1.0" export GRAALVM_HOME="$HOME/graalvm-ce-java11-21.2.0"
export BABASHKA_STATIC=true export BABASHKA_STATIC=true
script/compile script/compile
- name: Test binary - name: Test binary
run: | run: |
./bb '(+ 1 2 3)' ./bb '(+ 1 2 3)'
export GRAALVM_HOME="$HOME/graalvm-ce-java11-21.1.0" export GRAALVM_HOME="$HOME/graalvm-ce-java11-21.2.0"
BABASHKA_TEST_ENV=native script/test BABASHKA_TEST_ENV=native script/test
- name: Install clojure - name: Install clojure
@ -233,7 +233,7 @@ jobs:
- name: Test libraries - name: Test libraries
run: | run: |
export GRAALVM_HOME="$HOME/graalvm-ce-java11-21.1.0" export GRAALVM_HOME="$HOME/graalvm-ce-java11-21.2.0"
BABASHKA_TEST_ENV=native script/run_lib_tests BABASHKA_TEST_ENV=native script/run_lib_tests
- name: Upload artifact - name: Upload artifact
@ -262,17 +262,17 @@ jobs:
uses: actions/cache@v1 uses: actions/cache@v1
id: cache-graalvm id: cache-graalvm
with: with:
path: ~/graalvm-ce-java11-21.1.0 path: ~/graalvm-ce-java11-21.2.0
key: ${{ runner.os }}-graalvm-21.1.0 key: ${{ runner.os }}-graalvm-21.2.0
restore-keys: | restore-keys: |
${{ runner.os }}-graalvm-21.1.0 ${{ runner.os }}-graalvm-21.2.0
- name: Download GraalVM - name: Download GraalVM
run: | run: |
cd ~ cd ~
if ! [ -d graalvm-ce-java11-21.1.0 ]; then if ! [ -d graalvm-ce-java11-21.2.0 ]; then
curl -O -sL https://github.com/graalvm/graalvm-ce-builds/releases/download/vm-21.1.0/graalvm-ce-java11-darwin-amd64-21.1.0.tar.gz curl -O -sL https://github.com/graalvm/graalvm-ce-builds/releases/download/vm-21.2.0/graalvm-ce-java11-darwin-amd64-21.2.0.tar.gz
tar xzf graalvm-ce-java11-darwin-amd64-21.1.0.tar.gz tar xzf graalvm-ce-java11-darwin-amd64-21.2.0.tar.gz
fi fi
- name: Babashka version - name: Babashka version
@ -285,18 +285,18 @@ jobs:
run: | run: |
export BABASHKA_JAR=babashka-${{ steps.babashka-version.outputs.version }}-standalone.jar export BABASHKA_JAR=babashka-${{ steps.babashka-version.outputs.version }}-standalone.jar
export BABASHKA_XMX="-J-Xmx6g" export BABASHKA_XMX="-J-Xmx6g"
export GRAALVM_HOME="$HOME/graalvm-ce-java11-21.1.0/Contents/Home" export GRAALVM_HOME="$HOME/graalvm-ce-java11-21.2.0/Contents/Home"
script/compile script/compile
- name: Test binary - name: Test binary
run: | run: |
export GRAALVM_HOME="$HOME/graalvm-ce-java11-21.1.0/Contents/Home" export GRAALVM_HOME="$HOME/graalvm-ce-java11-21.2.0/Contents/Home"
sudo script/install-leiningen sudo script/install-leiningen
BABASHKA_TEST_ENV=native script/test BABASHKA_TEST_ENV=native script/test
- name: Test libraries - name: Test libraries
run: | run: |
export GRAALVM_HOME="$HOME/graalvm-ce-java11-21.1.0/Contents/Home" export GRAALVM_HOME="$HOME/graalvm-ce-java11-21.2.0/Contents/Home"
sudo script/install-clojure sudo script/install-clojure
BABASHKA_TEST_ENV=native script/run_lib_tests BABASHKA_TEST_ENV=native script/run_lib_tests

View file

@ -4,13 +4,13 @@ ENV DEBIAN_FRONTEND=noninteractive
RUN apt update RUN apt update
RUN apt install --no-install-recommends -yy curl unzip build-essential zlib1g-dev sudo RUN apt install --no-install-recommends -yy curl unzip build-essential zlib1g-dev sudo
WORKDIR "/opt" WORKDIR "/opt"
RUN curl -sLO https://github.com/graalvm/graalvm-ce-builds/releases/download/vm-21.1.0/graalvm-ce-java11-linux-amd64-21.1.0.tar.gz RUN curl -sLO https://github.com/graalvm/graalvm-ce-builds/releases/download/vm-21.2.0/graalvm-ce-java11-linux-amd64-21.2.0.tar.gz
RUN tar -xzf graalvm-ce-java11-linux-amd64-21.1.0.tar.gz RUN tar -xzf graalvm-ce-java11-linux-amd64-21.2.0.tar.gz
ARG BABASHKA_XMX="-J-Xmx4500m" ARG BABASHKA_XMX="-J-Xmx4500m"
ENV GRAALVM_HOME="/opt/graalvm-ce-java11-21.1.0" ENV GRAALVM_HOME="/opt/graalvm-ce-java11-21.2.0"
ENV JAVA_HOME="/opt/graalvm-ce-java11-21.1.0/bin" ENV JAVA_HOME="/opt/graalvm-ce-java11-21.2.0/bin"
ENV PATH="$JAVA_HOME:$PATH" ENV PATH="$JAVA_HOME:$PATH"
ENV BABASHKA_XMX=$BABASHKA_XMX ENV BABASHKA_XMX=$BABASHKA_XMX

View file

@ -7,8 +7,8 @@ image: Visual Studio 2017
clone_folder: C:\projects\babashka clone_folder: C:\projects\babashka
environment: environment:
GRAALVM_HOME: C:\projects\babashka\graalvm\graalvm-ce-java11-21.1.0 GRAALVM_HOME: C:\projects\babashka\graalvm\graalvm-ce-java11-21.2.0
JAVA_HOME: C:\projects\babashka\graalvm\graalvm-ce-java11-21.1.0 JAVA_HOME: C:\projects\babashka\graalvm\graalvm-ce-java11-21.2.0
BABASHKA_XMX: "-J-Xmx5g" BABASHKA_XMX: "-J-Xmx5g"
cache: cache:
@ -33,7 +33,7 @@ clone_script:
build_script: build_script:
- cmd: >- - cmd: >-
powershell -Command "if (Test-Path('graalvm')) { return } else { (New-Object Net.WebClient).DownloadFile('https://github.com/graalvm/graalvm-ce-builds/releases/download/vm-21.1.0/graalvm-ce-java11-windows-amd64-21.1.0.zip', 'graalvm.zip') }" powershell -Command "if (Test-Path('graalvm')) { return } else { (New-Object Net.WebClient).DownloadFile('https://github.com/graalvm/graalvm-ce-builds/releases/download/vm-21.2.0/graalvm-ce-java11-windows-amd64-21.2.0.zip', 'graalvm.zip') }"
powershell -Command "if (Test-Path('graalvm')) { return } else { Expand-Archive graalvm.zip graalvm }" powershell -Command "if (Test-Path('graalvm')) { return } else { Expand-Archive graalvm.zip graalvm }"

View file

@ -3,24 +3,24 @@
## Prerequisites ## Prerequisites
- Install [lein](https://leiningen.org/) for producing uberjars - Install [lein](https://leiningen.org/) for producing uberjars
- Download [GraalVM](https://www.graalvm.org/downloads/). Currently we use *java11-21.1.0*. - Download [GraalVM](https://www.graalvm.org/downloads/). Currently we use *java11-21.2.0*.
- For Windows, installing Visual Studio 2019 with the "Desktop development - For Windows, installing Visual Studio 2019 with the "Desktop development
with C++" workload is recommended. with C++" workload is recommended.
- Set `$GRAALVM_HOME` to the GraalVM distribution directory. On macOS this can look like: - Set `$GRAALVM_HOME` to the GraalVM distribution directory. On macOS this can look like:
``` shell ``` shell
export GRAALVM_HOME=~/Downloads/graalvm-ce-java11-21.1.0/Contents/Home export GRAALVM_HOME=~/Downloads/graalvm-ce-java11-21.2.0/Contents/Home
``` ```
On linux: On linux:
``` shell ``` shell
export GRAALVM_HOME=~/Downloads/graalvm-ce-java11-21.1.0 export GRAALVM_HOME=~/Downloads/graalvm-ce-java11-21.2.0
``` ```
On Windows, from the [Visual Studio 2019 x64 Native Tools Command Prompt](https://github.com/oracle/graal/issues/2116#issuecomment-590470806) or `cmd.exe` (not Powershell): On Windows, from the [Visual Studio 2019 x64 Native Tools Command Prompt](https://github.com/oracle/graal/issues/2116#issuecomment-590470806) or `cmd.exe` (not Powershell):
``` ```
set GRAALVM_HOME=%USERPROFILE%\Downloads\graalvm-ce-java11-21.1.0 set GRAALVM_HOME=%USERPROFILE%\Downloads\graalvm-ce-java11-21.2.0
``` ```
If you are not running from the x64 Native Tools Command Prompt, you will need to set additional environment variables using: If you are not running from the x64 Native Tools Command Prompt, you will need to set additional environment variables using:
``` ```

View file

@ -1,6 +1,6 @@
# Developing Babashka # Developing Babashka
You need [lein](https://leiningen.org/) for running JVM tests and/or producing uberjars. For building binaries you need GraalVM. Currently we use java11-21.1.0. You need [lein](https://leiningen.org/) for running JVM tests and/or producing uberjars. For building binaries you need GraalVM. Currently we use java11-21.2.0.
## Clone repository ## Clone repository

View file

@ -51,9 +51,9 @@
;; OR ;; OR
;; ;;
;; We could have them as environment variables ;; We could have them as environment variables
(def current-graal-version "21.0.0") (def current-graal-version "21.1.0")
(def current-java-version "java11") (def current-java-version "java11")
(def valid-graal-bumps ["19.3.2" "20.1.0" "20.2.0" "20.3.0" "21.0.0" "21.1.0"]) (def valid-graal-bumps ["19.3.2" "20.1.0" "20.2.0" "20.3.0" "21.0.0" "21.1.0" "21.2.0"])
(def valid-java-bumps ["java8" "java11"]) (def valid-java-bumps ["java8" "java11"])
(def cl-options (def cl-options

View file

@ -2,8 +2,8 @@
(:require [babashka.fs :as fs] (:require [babashka.fs :as fs]
[babashka.test-utils :as tu] [babashka.test-utils :as tu]
[clojure.edn :as edn] [clojure.edn :as edn]
[clojure.test :as t :refer [deftest is testing]] [clojure.string :as str]
[clojure.string :as str])) [clojure.test :as t :refer [deftest is testing]]))
(def program (def program
'(do '(do
@ -43,6 +43,8 @@
(timbre/swap-config! (constantly old-config)))) (timbre/swap-config! (constantly old-config))))
(deftest logging-test (deftest logging-test
(when-not (and (= "true" (System/getenv "BABASHKA_STATIC"))
(= "aarch64" (System/getenv "BABASHKA_ARCH")))
(let [res (tu/bb nil (pr-str program))] (let [res (tu/bb nil (pr-str program))]
(is (= 17 (count (re-seq #"\[dude:.\]" res)))) (is (= 17 (count (re-seq #"\[dude:.\]" res))))
(is (= 6 (count (re-seq #"DEBUG" res)))) (is (= 6 (count (re-seq #"DEBUG" res))))
@ -72,7 +74,7 @@
nil nil
program) program)
res (slurp temp-file)] res (slurp temp-file)]
(is (str/includes? res "hello"))))) (is (str/includes? res "hello"))))))
(def readable-prog (def readable-prog
'(do '(do
@ -101,6 +103,8 @@
(timbre/set-level! :debug))) (timbre/set-level! :debug)))
(deftest readable-logging-test (deftest readable-logging-test
(when-not (and (= "true" (System/getenv "BABASHKA_STATIC"))
(= "aarch64" (System/getenv "BABASHKA_ARCH")))
(let [res (tu/bb nil (pr-str readable-prog))] (let [res (tu/bb nil (pr-str readable-prog))]
(testing "spied value is returned and printed (and printed from println even though spyf level isn't enabled)" (testing "spied value is returned and printed (and printed from println even though spyf level isn't enabled)"
(is (= 5 (count (re-seq #"abc,def,ghi" res))))) (is (= 5 (count (re-seq #"abc,def,ghi" res)))))
@ -109,4 +113,4 @@
(testing "strings logged are printed readably" (testing "strings logged are printed readably"
(is (= 3 (count (re-seq #"\"test warn\"" res))))) (is (= 3 (count (re-seq #"\"test warn\"" res)))))
(testing "lists are printed readably" (testing "lists are printed readably"
(is (= 2 (count (re-seq #"\(\\a \\b\)" res))))))) (is (= 2 (count (re-seq #"\(\\a \\b\)" res))))))))