I've been thinking about this for a while. On the one hand, using the
"or later" clause means we have to place some trust in the Free Software
Foundation. On the other hand, being able to adopt newer versions of the
license without having to contact all contributors is useful for
compatibility (e.g. Apache 2 and GPLv3).
I recently noticed that Section 14 states that new versions of the
license will be "similar in spirit" to the current version. I think this
reduces the amount of trust we need to place in the FSF, as I'd hope
that if a future license did diverge too much from the original spirit
that a court might not consider it valid.
Furthermore, if the FSF went totally crazy, there are many bigger and
more important projects who would experience the same problem.
This is the bare minimum required to build the client. Returning null in
getWindow() makes this class appropriate for use at runtime too, as the
function is documented as returning null if the application is not
connected to a browser.
It is an LTS release that will remain supported for a while. It is also
supported by Quasar 0.8.x, but JDK 13 is not (and JDK 12 will not be
supported for much longer).
This is for several reasons:
* It makes building the main OpenRS2 repository easier, as it no longer
requires a C compiler.
* Pre-built versions for all platforms will be available in the Maven
repository. Many versions might not have access to build environments
for all of the supported operating systems and architectures.
* The bundler module should be able to depend on the pre-built versions
in the Maven repository. The Maven reactor isn't quite clever enough
for this to work, especially when depending on .nar artifacts with a
different operating system or architecture.