* Add configuration to send build scans to https://ge.apache.org
* Add `.mvn` directories to IT tests projects that lack one
Some of the integration tests to do not have `.mvn` directories and
search up the project structure until they find the `.mvn` directory
of the root project.
This change adds `.mvn` directories with empty `maven.config` files so
that the sample projects in VCS will be as close as possible to those
executed during integration testing
The second get-method wasn't actually overloaded, but had a different
signature than the superclass. This resulted in the superclass cache
being filled and never cleared, even when flush is called.
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
* the logging framework is extracted into its own jar and moved in the mvn/lib/ directory
* the other daemon jars are moved into the mvn/lib/mvnd directory and not used by maven at all
This makes maven class loader almost identical to the stock maven classloader, but for the logging framework
* 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."
* fix typo in method names
* add a test for the other *toHumanReadable method
* replace StringBuilder usage with simple concatenation
where applicable (for fixed length strings)
* 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