Changes:
* Drop CHANGELOG.md and tool, it is confused by two branches (1.x and master).
* Update GH workflows, they now provide all 4 needed binaries
* Release scripts: do NOT push, user will (but remind user)
* native: Makefile and built binaries updated (cross checked with @gnodet )
Changes:
* Cumulative update of GH flow
* Graal update
* Add concurrency
* Add -V to see what maven is used
* Use same Java version for def build
* Apply @gzm55 advice
The modern glibc from 2.34 had two breaking changes: move all api in lib{pthread,dl,rt}.so into libc.so, new static start up code breaking the runtime compatibility for old glibc (<2.34). See https://developers.redhat.com/articles/2021/12/17/why-glibc-234-removed-libpthread for more info.
This commit has 3 changes to overcome these changes:
- override gcc path to redefine glibc symbols on the fly in the generated .o by graalvm when linking
- provide a dynamic startup code to support both old and modern runtime glibc
- add needed dynamic libraries: lib{pthread,rt,dl}.so.
* building on ubuntu:22.04 produces binaries which require too recent glibc
version (2.32+) and that means the binary no longer works on
older ubuntu versions, like 20.04 and 18.04.
* building on ubuntu:20.04 fixes the problem and the binary again works
on ubuntu 18.04 and 20.04
* also bumped the version in the release workflow which got forgotten
* currently used versions are deprecated and GitHub is printing
warnings on the actions page, e.g.
"Node.js 12 actions are deprecated.
Please update the following actions to use Node.js 16: actions/checkout@v2,
actions/upload-artifact@v2."
* Make the default (non-native) build work again
* the renamed test is supposed to use the native binary, but it was
being picked up by surefire, because of its name. For non-native builds
(e.g. without -Pnative) the test would fail as the native
binary does not exist
* Add GitHub job for for default (non-native) build
* Run client connection handler inside new thread, fixes#798
* Execute CI build on ubuntu-22.04
* ubuntu-18.04 image is now deprecated and there are brownout periods
being introduced where the builds are failing
* see https://github.com/actions/runner-images/issues/6002 for more
details
* Refactor early-access builds with JReleaser
* Add brew and sdkman to release configuration
* Tweak changelog generation
* Do not trigger verify workflow when changelog is updated
* Add release workflows
* Exclude template files from license check
* configure access tokens for Homebrew and Sdkman
* Fix Graal settings in workflows
* setup-graalvm takes care of adjusting the environment on Windows
* Fix workflow configuration
* Uncoment sdkman settings in workflow
* Remove explicit JReleaser build from workflows
* Configure SCM urls
* Update to JReleaser 1.0.0-M1
* Update to JReleaser 1.0.0-RC2
* Update to JReleaser 1.0.0