Upgrade to GraalVM 21.2.0
This commit is contained in:
parent
242c3d442f
commit
cebdd19c00
8 changed files with 120 additions and 116 deletions
|
|
@ -76,7 +76,7 @@ jobs:
|
|||
working_directory: ~/repo
|
||||
environment:
|
||||
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_TEST_ENV: native
|
||||
BABASHKA_XMX: "-J-Xmx6500m"
|
||||
|
|
@ -110,9 +110,9 @@ jobs:
|
|||
name: Download GraalVM
|
||||
command: |
|
||||
cd ~
|
||||
if ! [ -d graalvm-ce-java11-21.1.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
|
||||
tar xzf graalvm-ce-java11-linux-amd64-21.1.0.tar.gz
|
||||
if ! [ -d graalvm-ce-java11-21.2.0 ]; then
|
||||
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.2.0.tar.gz
|
||||
fi
|
||||
- run:
|
||||
name: Build binary
|
||||
|
|
@ -136,7 +136,7 @@ jobs:
|
|||
- save_cache:
|
||||
paths:
|
||||
- ~/.m2
|
||||
- ~/graalvm-ce-java11-21.1.0
|
||||
- ~/graalvm-ce-java11-21.2.0
|
||||
key: linux-{{ checksum "project.clj" }}-{{ checksum ".circleci/config.yml" }}
|
||||
- store_artifacts:
|
||||
path: /tmp/release
|
||||
|
|
@ -151,7 +151,7 @@ jobs:
|
|||
working_directory: ~/repo
|
||||
environment:
|
||||
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_TEST_ENV: native
|
||||
BABASHKA_STATIC: "true"
|
||||
|
|
@ -198,9 +198,9 @@ jobs:
|
|||
name: Download GraalVM
|
||||
command: |
|
||||
cd ~
|
||||
if ! [ -d graalvm-ce-java11-21.1.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
|
||||
tar xzf graalvm-ce-java11-linux-amd64-21.1.0.tar.gz
|
||||
if ! [ -d graalvm-ce-java11-21.2.0 ]; then
|
||||
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.2.0.tar.gz
|
||||
fi
|
||||
- run:
|
||||
name: Build binary
|
||||
|
|
@ -224,7 +224,7 @@ jobs:
|
|||
- save_cache:
|
||||
paths:
|
||||
- ~/.m2
|
||||
- ~/graalvm-ce-java11-21.1.0
|
||||
- ~/graalvm-ce-java11-21.2.0
|
||||
key: linux-{{ checksum "project.clj" }}-{{ checksum ".circleci/config.yml" }}
|
||||
- store_artifacts:
|
||||
path: /tmp/release
|
||||
|
|
@ -241,7 +241,7 @@ jobs:
|
|||
working_directory: ~/repo
|
||||
environment:
|
||||
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_ARCH: aarch64
|
||||
BABASHKA_TEST_ENV: native
|
||||
|
|
@ -287,9 +287,9 @@ jobs:
|
|||
name: Download GraalVM
|
||||
command: |
|
||||
cd ~
|
||||
if ! [ -d graalvm-ce-java11-21.1.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
|
||||
tar xzf graalvm-ce-java11-linux-aarch64-21.1.0.tar.gz
|
||||
if ! [ -d graalvm-ce-java11-21.2.0 ]; then
|
||||
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.2.0.tar.gz
|
||||
fi
|
||||
- run:
|
||||
name: Build binary
|
||||
|
|
@ -313,7 +313,7 @@ jobs:
|
|||
- save_cache:
|
||||
paths:
|
||||
- ~/.m2
|
||||
- ~/graalvm-ce-java11-21.1.0
|
||||
- ~/graalvm-ce-java11-21.2.0
|
||||
key: linux-aarch64-{{ checksum "project.clj" }}-{{ checksum ".circleci/config.yml" }}
|
||||
- store_artifacts:
|
||||
path: /tmp/release
|
||||
|
|
@ -330,7 +330,7 @@ jobs:
|
|||
working_directory: ~/repo
|
||||
environment:
|
||||
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_ARCH: aarch64
|
||||
BABASHKA_TEST_ENV: native
|
||||
|
|
@ -378,9 +378,9 @@ jobs:
|
|||
name: Download GraalVM
|
||||
command: |
|
||||
cd ~
|
||||
if ! [ -d graalvm-ce-java11-21.1.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
|
||||
tar xzf graalvm-ce-java11-linux-aarch64-21.1.0.tar.gz
|
||||
if ! [ -d graalvm-ce-java11-21.2.0 ]; then
|
||||
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.2.0.tar.gz
|
||||
fi
|
||||
- run:
|
||||
name: Build binary
|
||||
|
|
@ -404,7 +404,7 @@ jobs:
|
|||
- save_cache:
|
||||
paths:
|
||||
- ~/.m2
|
||||
- ~/graalvm-ce-java11-21.1.0
|
||||
- ~/graalvm-ce-java11-21.2.0
|
||||
key: linux-aarch64-{{ checksum "project.clj" }}-{{ checksum ".circleci/config.yml" }}
|
||||
- store_artifacts:
|
||||
path: /tmp/release
|
||||
|
|
@ -418,7 +418,7 @@ jobs:
|
|||
xcode: "12.0.0"
|
||||
environment:
|
||||
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_TEST_ENV: native
|
||||
BABASHKA_XMX: "-J-Xmx6500m"
|
||||
|
|
@ -446,9 +446,9 @@ jobs:
|
|||
command: |
|
||||
cd ~
|
||||
ls -la
|
||||
if ! [ -d graalvm-ce-java11-21.1.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
|
||||
tar xzf graalvm-ce-java11-darwin-amd64-21.1.0.tar.gz
|
||||
if ! [ -d graalvm-ce-java11-21.2.0 ]; then
|
||||
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.2.0.tar.gz
|
||||
fi
|
||||
- run:
|
||||
name: Build binary
|
||||
|
|
@ -470,7 +470,7 @@ jobs:
|
|||
- save_cache:
|
||||
paths:
|
||||
- ~/.m2
|
||||
- ~/graalvm-ce-java11-21.1.0
|
||||
- ~/graalvm-ce-java11-21.2.0
|
||||
key: mac-{{ checksum "project.clj" }}-{{ checksum ".circleci/config.yml" }}
|
||||
- store_artifacts:
|
||||
path: /tmp/release
|
||||
|
|
|
|||
72
.github/workflows/build.yml
vendored
72
.github/workflows/build.yml
vendored
|
|
@ -45,17 +45,17 @@ jobs:
|
|||
uses: actions/cache@v1
|
||||
id: cache-graalvm
|
||||
with:
|
||||
path: ~/graalvm-ce-java11-21.1.0
|
||||
key: ${{ runner.os }}-graalvm-21.1.0
|
||||
path: ~/graalvm-ce-java11-21.2.0
|
||||
key: ${{ runner.os }}-graalvm-21.2.0
|
||||
restore-keys: |
|
||||
${{ runner.os }}-graalvm-21.1.0
|
||||
${{ runner.os }}-graalvm-21.2.0
|
||||
|
||||
- name: Download GraalVM
|
||||
run: |
|
||||
cd ~
|
||||
if ! [ -d graalvm-ce-java11-21.1.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
|
||||
tar xzf graalvm-ce-java11-linux-amd64-21.1.0.tar.gz
|
||||
if ! [ -d graalvm-ce-java11-21.2.0 ]; then
|
||||
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.2.0.tar.gz
|
||||
fi
|
||||
|
||||
- name: Fetch deps
|
||||
|
|
@ -65,18 +65,18 @@ jobs:
|
|||
|
||||
- name: Run tests
|
||||
run: |
|
||||
export GRAALVM_HOME="$HOME/graalvm-ce-java11-21.1.0"
|
||||
export GRAALVM_HOME="$HOME/graalvm-ce-java11-21.2.0"
|
||||
script/test
|
||||
|
||||
- name: Test libraries
|
||||
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
|
||||
script/run_lib_tests
|
||||
|
||||
- name: Build uberjar
|
||||
run: |
|
||||
export GRAALVM_HOME="$HOME/graalvm-ce-java11-21.1.0"
|
||||
export GRAALVM_HOME="$HOME/graalvm-ce-java11-21.2.0"
|
||||
script/uberjar
|
||||
|
||||
- name: Babashka version
|
||||
|
|
@ -119,17 +119,17 @@ jobs:
|
|||
uses: actions/cache@v1
|
||||
id: cache-graalvm
|
||||
with:
|
||||
path: ~/graalvm-ce-java11-21.1.0
|
||||
key: ${{ runner.os }}-graalvm-21.1.0
|
||||
path: ~/graalvm-ce-java11-21.2.0
|
||||
key: ${{ runner.os }}-graalvm-21.2.0
|
||||
restore-keys: |
|
||||
${{ runner.os }}-graalvm-21.1.0
|
||||
${{ runner.os }}-graalvm-21.2.0
|
||||
|
||||
- name: Download GraalVM
|
||||
run: |
|
||||
cd ~
|
||||
if ! [ -d graalvm-ce-java11-21.1.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
|
||||
tar xzf graalvm-ce-java11-linux-amd64-21.1.0.tar.gz
|
||||
if ! [ -d graalvm-ce-java11-21.2.0 ]; then
|
||||
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.2.0.tar.gz
|
||||
fi
|
||||
|
||||
- name: Babashka version
|
||||
|
|
@ -142,12 +142,12 @@ jobs:
|
|||
run: |
|
||||
export BABASHKA_JAR=babashka-${{ steps.babashka-version.outputs.version }}-standalone.jar
|
||||
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
|
||||
|
||||
- name: Test binary
|
||||
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
|
||||
|
||||
- name: Install clojure
|
||||
|
|
@ -156,7 +156,7 @@ jobs:
|
|||
|
||||
- name: Test libraries
|
||||
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
|
||||
|
||||
- name: Upload artifact
|
||||
|
|
@ -194,17 +194,17 @@ jobs:
|
|||
uses: actions/cache@v1
|
||||
id: cache-graalvm
|
||||
with:
|
||||
path: ~/graalvm-ce-java11-21.1.0
|
||||
key: ${{ runner.os }}-graalvm-21.1.0
|
||||
path: ~/graalvm-ce-java11-21.2.0
|
||||
key: ${{ runner.os }}-graalvm-21.2.0
|
||||
restore-keys: |
|
||||
${{ runner.os }}-graalvm-21.1.0
|
||||
${{ runner.os }}-graalvm-21.2.0
|
||||
|
||||
- name: Download GraalVM
|
||||
run: |
|
||||
cd ~
|
||||
if ! [ -d graalvm-ce-java11-21.1.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
|
||||
tar xzf graalvm-ce-java11-linux-amd64-21.1.0.tar.gz
|
||||
if ! [ -d graalvm-ce-java11-21.2.0 ]; then
|
||||
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.2.0.tar.gz
|
||||
fi
|
||||
|
||||
- name: Babashka version
|
||||
|
|
@ -217,14 +217,14 @@ jobs:
|
|||
run: |
|
||||
export BABASHKA_JAR=babashka-${{ steps.babashka-version.outputs.version }}-standalone.jar
|
||||
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
|
||||
script/compile
|
||||
|
||||
- name: Test binary
|
||||
run: |
|
||||
./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
|
||||
|
||||
- name: Install clojure
|
||||
|
|
@ -233,7 +233,7 @@ jobs:
|
|||
|
||||
- name: Test libraries
|
||||
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
|
||||
|
||||
- name: Upload artifact
|
||||
|
|
@ -262,17 +262,17 @@ jobs:
|
|||
uses: actions/cache@v1
|
||||
id: cache-graalvm
|
||||
with:
|
||||
path: ~/graalvm-ce-java11-21.1.0
|
||||
key: ${{ runner.os }}-graalvm-21.1.0
|
||||
path: ~/graalvm-ce-java11-21.2.0
|
||||
key: ${{ runner.os }}-graalvm-21.2.0
|
||||
restore-keys: |
|
||||
${{ runner.os }}-graalvm-21.1.0
|
||||
${{ runner.os }}-graalvm-21.2.0
|
||||
|
||||
- name: Download GraalVM
|
||||
run: |
|
||||
cd ~
|
||||
if ! [ -d graalvm-ce-java11-21.1.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
|
||||
tar xzf graalvm-ce-java11-darwin-amd64-21.1.0.tar.gz
|
||||
if ! [ -d graalvm-ce-java11-21.2.0 ]; then
|
||||
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.2.0.tar.gz
|
||||
fi
|
||||
|
||||
- name: Babashka version
|
||||
|
|
@ -285,18 +285,18 @@ jobs:
|
|||
run: |
|
||||
export BABASHKA_JAR=babashka-${{ steps.babashka-version.outputs.version }}-standalone.jar
|
||||
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
|
||||
|
||||
- name: Test binary
|
||||
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
|
||||
BABASHKA_TEST_ENV=native script/test
|
||||
|
||||
- name: Test libraries
|
||||
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
|
||||
BABASHKA_TEST_ENV=native script/run_lib_tests
|
||||
|
||||
|
|
|
|||
|
|
@ -4,13 +4,13 @@ ENV DEBIAN_FRONTEND=noninteractive
|
|||
RUN apt update
|
||||
RUN apt install --no-install-recommends -yy curl unzip build-essential zlib1g-dev sudo
|
||||
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 tar -xzf 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.2.0.tar.gz
|
||||
|
||||
ARG BABASHKA_XMX="-J-Xmx4500m"
|
||||
|
||||
ENV GRAALVM_HOME="/opt/graalvm-ce-java11-21.1.0"
|
||||
ENV JAVA_HOME="/opt/graalvm-ce-java11-21.1.0/bin"
|
||||
ENV GRAALVM_HOME="/opt/graalvm-ce-java11-21.2.0"
|
||||
ENV JAVA_HOME="/opt/graalvm-ce-java11-21.2.0/bin"
|
||||
ENV PATH="$JAVA_HOME:$PATH"
|
||||
ENV BABASHKA_XMX=$BABASHKA_XMX
|
||||
|
||||
|
|
|
|||
|
|
@ -7,8 +7,8 @@ image: Visual Studio 2017
|
|||
clone_folder: C:\projects\babashka
|
||||
|
||||
environment:
|
||||
GRAALVM_HOME: C:\projects\babashka\graalvm\graalvm-ce-java11-21.1.0
|
||||
JAVA_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.2.0
|
||||
BABASHKA_XMX: "-J-Xmx5g"
|
||||
|
||||
cache:
|
||||
|
|
@ -33,7 +33,7 @@ clone_script:
|
|||
|
||||
build_script:
|
||||
- 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 }"
|
||||
|
||||
|
|
|
|||
|
|
@ -3,24 +3,24 @@
|
|||
## Prerequisites
|
||||
|
||||
- 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
|
||||
with C++" workload is recommended.
|
||||
- Set `$GRAALVM_HOME` to the GraalVM distribution directory. On macOS this can look like:
|
||||
|
||||
``` 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:
|
||||
|
||||
``` 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):
|
||||
```
|
||||
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:
|
||||
```
|
||||
|
|
|
|||
|
|
@ -1,6 +1,6 @@
|
|||
# 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
|
||||
|
||||
|
|
|
|||
|
|
@ -51,9 +51,9 @@
|
|||
;; OR
|
||||
;;
|
||||
;; 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 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 cl-options
|
||||
|
|
|
|||
|
|
@ -2,8 +2,8 @@
|
|||
(:require [babashka.fs :as fs]
|
||||
[babashka.test-utils :as tu]
|
||||
[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
|
||||
'(do
|
||||
|
|
@ -43,36 +43,38 @@
|
|||
(timbre/swap-config! (constantly old-config))))
|
||||
|
||||
(deftest logging-test
|
||||
(let [res (tu/bb nil (pr-str program))]
|
||||
(is (= 17 (count (re-seq #"\[dude:.\]" res))))
|
||||
(is (= 6 (count (re-seq #"DEBUG" res))))
|
||||
(is (= 11 (count (re-seq #"INFO" res)))))
|
||||
(testing "println appender works with with-out-str"
|
||||
(let [res (tu/bb
|
||||
nil
|
||||
(pr-str '(do
|
||||
(require '[taoensso.timbre :as timbre]
|
||||
'[clojure.string :as str])
|
||||
(str/includes? (with-out-str (timbre/info "hello")) "hello"))))
|
||||
res (edn/read-string res)]
|
||||
(is (true? res))))
|
||||
(testing "spit-appender"
|
||||
(let [temp-file (-> (fs/create-temp-dir)
|
||||
(fs/file "log.txt"))
|
||||
program (pr-str '(do
|
||||
(require '[taoensso.timbre :as timbre]
|
||||
'[clojure.string :as str])
|
||||
(def appender (timbre/spit-appender {:fname :fname-placeholder}))
|
||||
(def old-config timbre/*config*)
|
||||
(timbre/swap-config! assoc-in [:appenders :spit] appender)
|
||||
(str/includes? (with-out-str (timbre/info "hello")) "hello")
|
||||
(timbre/swap-config! (constantly old-config))))
|
||||
program (str/replace program ":fname-placeholder" (pr-str (.getPath temp-file)))
|
||||
_ (tu/bb
|
||||
nil
|
||||
program)
|
||||
res (slurp temp-file)]
|
||||
(is (str/includes? res "hello")))))
|
||||
(when-not (and (= "true" (System/getenv "BABASHKA_STATIC"))
|
||||
(= "aarch64" (System/getenv "BABASHKA_ARCH")))
|
||||
(let [res (tu/bb nil (pr-str program))]
|
||||
(is (= 17 (count (re-seq #"\[dude:.\]" res))))
|
||||
(is (= 6 (count (re-seq #"DEBUG" res))))
|
||||
(is (= 11 (count (re-seq #"INFO" res)))))
|
||||
(testing "println appender works with with-out-str"
|
||||
(let [res (tu/bb
|
||||
nil
|
||||
(pr-str '(do
|
||||
(require '[taoensso.timbre :as timbre]
|
||||
'[clojure.string :as str])
|
||||
(str/includes? (with-out-str (timbre/info "hello")) "hello"))))
|
||||
res (edn/read-string res)]
|
||||
(is (true? res))))
|
||||
(testing "spit-appender"
|
||||
(let [temp-file (-> (fs/create-temp-dir)
|
||||
(fs/file "log.txt"))
|
||||
program (pr-str '(do
|
||||
(require '[taoensso.timbre :as timbre]
|
||||
'[clojure.string :as str])
|
||||
(def appender (timbre/spit-appender {:fname :fname-placeholder}))
|
||||
(def old-config timbre/*config*)
|
||||
(timbre/swap-config! assoc-in [:appenders :spit] appender)
|
||||
(str/includes? (with-out-str (timbre/info "hello")) "hello")
|
||||
(timbre/swap-config! (constantly old-config))))
|
||||
program (str/replace program ":fname-placeholder" (pr-str (.getPath temp-file)))
|
||||
_ (tu/bb
|
||||
nil
|
||||
program)
|
||||
res (slurp temp-file)]
|
||||
(is (str/includes? res "hello"))))))
|
||||
|
||||
(def readable-prog
|
||||
'(do
|
||||
|
|
@ -101,12 +103,14 @@
|
|||
(timbre/set-level! :debug)))
|
||||
|
||||
(deftest readable-logging-test
|
||||
(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)"
|
||||
(is (= 5 (count (re-seq #"abc,def,ghi" res)))))
|
||||
(testing "spied value is printed readably as a result of spyf"
|
||||
(is (= 2 (count (re-seq #"\"abc,def,ghi\"" res)))))
|
||||
(testing "strings logged are printed readably"
|
||||
(is (= 3 (count (re-seq #"\"test warn\"" res)))))
|
||||
(testing "lists are printed readably"
|
||||
(is (= 2 (count (re-seq #"\(\\a \\b\)" res)))))))
|
||||
(when-not (and (= "true" (System/getenv "BABASHKA_STATIC"))
|
||||
(= "aarch64" (System/getenv "BABASHKA_ARCH")))
|
||||
(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)"
|
||||
(is (= 5 (count (re-seq #"abc,def,ghi" res)))))
|
||||
(testing "spied value is printed readably as a result of spyf"
|
||||
(is (= 2 (count (re-seq #"\"abc,def,ghi\"" res)))))
|
||||
(testing "strings logged are printed readably"
|
||||
(is (= 3 (count (re-seq #"\"test warn\"" res)))))
|
||||
(testing "lists are printed readably"
|
||||
(is (= 2 (count (re-seq #"\(\\a \\b\)" res))))))))
|
||||
|
|
|
|||
Loading…
Reference in a new issue