[#121] Upgrade to GraalVM JDK8 19.3.0

This commit is contained in:
Michiel Borkent 2019-11-20 21:34:31 +01:00 committed by GitHub
parent 0a039217eb
commit e7d6f7a777
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
3 changed files with 21 additions and 38 deletions

View file

@ -11,7 +11,7 @@ jobs:
working_directory: ~/repo working_directory: ~/repo
environment: environment:
LEIN_ROOT: "true" LEIN_ROOT: "true"
GRAALVM_HOME: /home/circleci/graalvm-ce-19.2.0 # GRAALVM_HOME: /home/circleci/graalvm-ce-java8-19.3.0
steps: steps:
- checkout - checkout
- run: - run:
@ -34,14 +34,14 @@ jobs:
name: Install lsof name: Install lsof
command: | command: |
sudo apt-get install lsof sudo apt-get install lsof
- run: # - run:
name: Download GraalVM # name: Download GraalVM
command: | # command: |
cd ~ # cd ~
if ! [ -d graalvm-ce-19.2.0 ]; then # if ! [ -d graalvm-ce-java8-19.3.0 ]; then
curl -O -sL https://github.com/oracle/graal/releases/download/vm-19.2.0/graalvm-ce-linux-amd64-19.2.0.tar.gz # curl -O -sL https://github.com/oracle/graal/releases/download/vm-19.2.0/graalvm-ce-linux-amd64-19.2.0.tar.gz
tar xzf graalvm-ce-linux-amd64-19.2.0.tar.gz # tar xzf graalvm-ce-linux-amd64-19.2.0.tar.gz
fi # fi
# - run: # - run:
# name: Install GraalVM SSL libs # name: Install GraalVM SSL libs
# command: | # command: |
@ -68,7 +68,7 @@ jobs:
working_directory: ~/repo working_directory: ~/repo
environment: environment:
LEIN_ROOT: "true" LEIN_ROOT: "true"
GRAALVM_HOME: /home/circleci/graalvm-ce-19.2.0 GRAALVM_HOME: /home/circleci/graalvm-ce-java8-19.3.0
BABASHKA_PLATFORM: linux # used in release script BABASHKA_PLATFORM: linux # used in release script
BABASHKA_TEST_ENV: native BABASHKA_TEST_ENV: native
steps: steps:
@ -95,14 +95,14 @@ jobs:
name: Install native dev tools name: Install native dev tools
command: | command: |
sudo apt-get update sudo apt-get update
sudo apt-get -y install gcc zlib1g-dev sudo apt-get -y install gcc g++ zlib1g-dev
- run: - run:
name: Download GraalVM name: Download GraalVM
command: | command: |
cd ~ cd ~
if ! [ -d graalvm-ce-19.2.0 ]; then if ! [ -d graalvm-ce-java8-19.3.0 ]; then
curl -O -sL https://github.com/oracle/graal/releases/download/vm-19.2.0/graalvm-ce-linux-amd64-19.2.0.tar.gz curl -O -sL https://github.com/graalvm/graalvm-ce-builds/releases/download/vm-19.3.0/graalvm-ce-java8-linux-amd64-19.3.0.tar.gz
tar xzf graalvm-ce-linux-amd64-19.2.0.tar.gz tar xzf graalvm-ce-java8-linux-amd64-19.3.0.tar.gz
fi fi
# - run: # - run:
# name: Install GraalVM SSL libs # name: Install GraalVM SSL libs
@ -128,7 +128,7 @@ jobs:
- save_cache: - save_cache:
paths: paths:
- ~/.m2 - ~/.m2
- ~/graalvm-ce-19.2.0 - ~/graalvm-ce-java8-19.3.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
@ -137,7 +137,7 @@ jobs:
macos: macos:
xcode: "9.0" xcode: "9.0"
environment: environment:
GRAALVM_HOME: /Users/distiller/graalvm-ce-19.2.0/Contents/Home GRAALVM_HOME: /Users/distiller/graalvm-ce-java8-19.3.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
steps: steps:
@ -163,9 +163,9 @@ jobs:
command: | command: |
cd ~ cd ~
ls -la ls -la
if ! [ -d graalvm-ce-19.2.0 ]; then if ! [ -d graalvm-ce-java8-19.3.0 ]; then
curl -O -sL https://github.com/oracle/graal/releases/download/vm-19.2.0/graalvm-ce-darwin-amd64-19.2.0.tar.gz curl -O -sL https://github.com/graalvm/graalvm-ce-builds/releases/download/vm-19.3.0/graalvm-ce-java8-darwin-amd64-19.3.0.tar.gz
tar xzf graalvm-ce-darwin-amd64-19.2.0.tar.gz tar xzf graalvm-ce-java8-darwin-amd64-19.3.0.tar.gz
fi fi
# - run: # - run:
# name: Install GraalVM SSL libs # name: Install GraalVM SSL libs
@ -191,7 +191,7 @@ jobs:
- save_cache: - save_cache:
paths: paths:
- ~/.m2 - ~/.m2
- ~/graalvm-ce-19.2.0 - ~/graalvm-ce-java8-19.3.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

@ -404,23 +404,6 @@ bb '
process 2 process 2
``` ```
## Enabling SSL
If you want to be able to use SSL to e.g. run `(slurp
"https://www.clojure.org")` you will need to add the location where
`libsunec.so` or `libsunec.dylib` is located to the `java.library.path` Java
property. This library comes with most JVM installations, so you might already
have it on your machine. It is usually located in `<JAVA_HOME>/jre/lib` or
`<JAVA_HOME>/jre/<platform>/lib`. It is also bundled with GraalVM.
Example:
``` shellsession
$ export BABASHKA_PRELOADS="(System/setProperty \"java.library.path\" \"$JAVA_HOME/jre/lib\")"
$ bb '(slurp "https://www.clojure.org")' | bb '(subs *in* 0 50)'
"<!doctype html><html itemscope=\"\" itemtype=\"http:/"
```
## Differences with Clojure ## Differences with Clojure
Babashka is implemented using the [Small Clojure Babashka is implemented using the [Small Clojure

View file

@ -114,7 +114,7 @@
}, },
{ {
"name":"java.lang.Thread", "name":"java.lang.Thread",
"allPublicMethods":true, "methods": [{"name":"run"},{"name":"toString"},{"name":"isInterrupted"},{"name":"currentThread"},{"name":"getName"},{"name":"join"},{"name":"getThreadGroup"},{"name":"getStackTrace"},{"name":"holdsLock"},{"name":"checkAccess"},{"name":"dumpStack"},{"name":"yield"},{"name":"setPriority"},{"name":"setDaemon"},{"name":"start"},{"name":"sleep"},{"name":"interrupt"},{"name":"interrupted"},{"name":"isAlive"},{"name":"getPriority"},{"name":"setName"},{"name":"activeCount"},{"name":"enumerate"},{"name":"isDaemon"},{"name":"getContextClassLoader"},{"name":"setContextClassLoader"},{"name":"getAllStackTraces"},{"name":"getId"},{"name":"getState"},{"name":"setDefaultUncaughtExceptionHandler"},{"name":"getDefaultUncaughtExceptionHandler"},{"name":"getUncaughtExceptionHandler"},{"name":"setUncaughtExceptionHandler"}],
"allPublicFields": true, "allPublicFields": true,
"allPublicConstructors": true "allPublicConstructors": true
}, },