* make core.async integral (not a feature)
tasks (in particular, parallel tasks) require core.async
* make rewrite_clj integral (not a feature)
* cleanup mistakes
* Migrate `Dockerfile` to use a bullseye-based image
Also, some QoL changes on the `Dockerfile`:
- Parametrize GRAALVM_VERSION to make it easier to update
- Remove installing programs already included on base image
- Remove `deps.edn` from `.dockerignore` since it is necessary to build
* Migrate CircleCI to use a bullseye-based image
Also some modifications necessary to make it work:
- Migrate from `circleci` images to `clojure` since they're out-of-date
and also seem to be considered legacy:
https://circleci.com/docs/2.0/circleci-images/#legacy-language-images
- Remove unnecessary usage of `sudo`, since all commands runs as root
- Sync packages with `Dockerfile`. This will make easier to test locally
if everything will work (of course, it is not 100% guarantee)
* Remove lsof
* Remove "Install {Clojure,Leiningen}" steps
Already included on the base image.
* Do not change directory when downloading GraalVM
* Move "Download GraalVM" to script/download-graalvm
* Set GRAALVM_HOME correctly
* Unbreak mac build
* Revert "Set GRAALVM_HOME correctly"
This reverts commit 5e2a6158dc.
* Set GRAALVM_HOME correctly, take 2
* Improve download-graalvm script
* Re-added "Install Clojure" steps
* Set amd64 as default GRAALVM_ARCH
* Unbreak linux-aarch64
* Ubreak jvm
* Do not change directory
* Fix yaml
* Fix mac/linux-aarch64
* Add missing Clojure
* Fix cache
* Move GraalVM installation to /tmp
* Use script/install-clojure
* Use /opt instead of /tmp to install GraalVM
* Revert "Use /opt instead of /tmp to install GraalVM"
This reverts commit 3cfad03c8e.
* Use CircleCI's Clojure images again
* Go back to installing GraalVM on $HOME
* put tools.logging behind a feature flag
* add tools.logging.readable
- move logging namespace to feature folder
- add logging.readable namespace
- add tests for logging.readable
* cleanup logging changes
- add logging env var to compile script
- remove unconditional require of logging namespace
* move old-config capture to before alter
* remove feature check from logging tests
Now that bullseye was released, Debian is starting to make bigger
changes on unstable. To avoid breakage, let's use musl from bullseye
that is the correct version that we were using until now (1.22-1):
https://packages.debian.org/bullseye/musl-tools
Eventually a better solution would be to simply use Debian bullseye to
compile everything, however the official Clojure image from Docker is
still using stretch. So this is a temporary solution until them.
- add lib-tests path to deps.edn and remove it from shell scripts
- change windows lib test batch script to write a bb.edn file
- re-enable native lib tests on windows
* run lib tests in Windows CI
- add batch scripts for invoking tests
- skip some tests on windows
- tweak a couple tests to run on linux and windows
* configure git to checkout with Windows line endings on Appveyor
- add default test selector to skip "windows only" tests
- in cases where the differences between *nix shell and windows shell
make the test very messy, add a separate "windows only" test
- make more tests work on Windows
* make tests run on windows as the default
- change from selecting tests to run to selecting tests to skip (remove all :windows tags, add
:skip-windows tag to tests that don't currently work on windows)
- handfuls of calls to `normalize` and `escape-file-paths` to handle platform differences
- split `task-test` to make most of the tests run on windows, and exclude just a couple of Unix-y tests
* make a binding name clearer
* skip nrepl-server-test on Windows
- test fails on CI, so disabling it for now
* unset bb environment vars after running tests
* unset bb environment var after running release-artifact
BABASHKA_EDN being set can interfere with some tests, so unset it before running the
native tests
* skip uberjar test on Windows
uberjar-test's 'throw on empty classpath' test failing on Windows native
(but passes on JVM) - skip it for now
- add `normalize` call to `bb-native` output
- add `escape-file-paths` function to double up backslashes for Windows paths
passed as strings
- add :windows selector to about 10 more tests, along with various small changes
for Windows testing
- update test.bat to more closely mirror the Linux/Mac test script