Releases: libgdx/gdx-liftoff
1.10.0.10 "Blackjack"
This release includes a small fix to gdx-dialogs, a small but hard-to-implement fix that allows gdx-liftoff to run on more Linux machines, an additional library (libgdx-oboe, for Android audio), and a big, large, huge wall of text added to the Gradle files at the recommendation of the Gradle team. We have updated to Gradle 7.3.3, which includes some mitigations against log4shell (on top of the mitigations in the last release), and go beyond just updating Gradle by including that big-large-huge dependency constraint section to block vulnerable versions of log4j from being used transitively. Stay safe out there!
1.10.0.9 "Mighty Mitigation"
This release has some small improvements, but mostly exists to update the default Gradle to 7.3.2 because it contains mitigations for the "log4shell" vulnerability in log4j (which appears to affect earlier Gradle sometimes). Other than the Gradle update, this makes dist
an alias for jar
in the desktop projects (which lets instructions for gdx-setup also apply here), and updates Kotlin to 1.6.0. It also removes the deprecated option -XX:MaxPermSize=1G
from generated gradle.properties files because that option was fully removed starting in Java 17. Just a few small changes, and nothing you can't quickly apply yourself to existing projects, but this is good stuff to have by default in new projects.
1.10.0.8 "Learned The Truth"
It's what you've been waiting for, frothing eagerly at the mouth, wild-eyed and baying at the moon: Java 17 is supported! There's some nice fixes contributed by @mariorez in this release that help the Kotlin libraries, and Gretty is updated again, but other than that, the update to Gradle 7.3, supporting Java 17, is the headliner for most developers. This means that, if you're feeling brave (and don't mind updating gradle-wrapper.properties files), you could set Java 17 as your JAVA_HOME installation and still be able to build and run Gradle projects this generates. Since many developers who are just starting out download the newest Java as their first action, this update should be useful by allowing them to still generate projects. I hope this helps people use libGDX for the first time!
1.10.0.7 "Praise to the Unpronounceable One"
This release is chock-full of revisions and new features, almost all added by our valiant hero @czyzby . The latest version is now checked for a third-party library over the internet when you generate a project using that library, to ensure you start with the most recent version. You can always change the version in gradle.properties
in the new project. Lots of code is cleaner. There was a load of hacky Java code that I had copied in to make small changes; this has been replaced with a simple dependency on metaphore's gdx-lml repo. The UI is laid out a little differently, and generally should be cleaner and show more explanation of what options do. To match gdx-setup's behavior, "Desktop" refers to LWJGL3, and "Desktop (Legacy)" refers to LWJGL2; the LWJGL version is described next to the checkbox. These now make modules named lwjgl3
and lwjgl2
in generated projects; there is no single desktop
module, but you can generally substitute lwjgl3:run
for desktop:run
, like in earlier releases. There are a few small improvements to the default GWT files, like blocking right-click on the game itself, and removing padding around resizable GWT games.
π There are Kotlin templates now, including launchers! π
These can be selected as normal templates when you have Kotlin as your language choice, and there are new KTX templates, too.
π¦ The file picker isn't a home-made non-native dialog any more! It's fully native to your current OS! π¦
Thanks to @lyze237 for this great quality-of-life improvement, and the developer(s) behind NFD for their great library.
π Lombok is now an option for your project! π
This has been requested a lot, and even though I don't personally use Lombok, a lot of developers live by it. Lombok required more unusual configuration inside Liftoff than any other library so far, so I hope it's useful!
That's about it! I hope this works well!
(EDIT: The JAR was changed the same day it was released, because the version number was wrong initially. I don't know if this ever matters in practice, but it might help identify versions that have bugs.)
1.10.0.6 "Strawberry Jam Highlighter"
This release updates to the latest Gradle (7.2), updates quite a few third-party extensions, and (partly) fixes a selection bug on the SETUP COMPLETE
window. The last bug has been really a pain for a while, because it would crash gdx-liftoff after you selected too much text on that window (the project would still be created fully). Now, the selection looks extremely buggy, but it doesn't crash at least; Liftoff also attempts to copy the selection to the clipboard (because it's not easy to copy when the selection is flashing in and out), but this doesn't seem to work reliably. All of this happens because of a long-standing bug in libGDX with color markup in selectable TextArea
s; this may be getting resolved in the next libGDX release.
This also includes a PR by @Frosty-J that should really help with CPU usage when Liftoff is in the background, so thanks!
The reason for the name of this release should be obvious if you encounter the partial fix to the selection bug.
1.10.0.5 "Forays Far From Flatland"
This release mostly exists to update the Gradle (to 7.1.1), Gretty (away from the hacky JitPack release and on to the official 3.0.6), and Android Gradle Plugin (to 4.2.0) versions. It also adds gdx-gltf, which I couldn't believe I had forgotten in the third-party extensions; if you don't know it, gdx-gltf is a much better way of handling 3D graphics and assets in libGDX. SquidLib was also updated a little. There are some comments in the GWT files that detail how you can switch to a GWT 2.9.0 backend, if you want. In general, a small set of useful updates.
1.10.0.4 "Thirsty For Updates"
It's been a while, but there's lots of goodies in this release! We've updated to Gradle 7.1, various GWT-related aspects of the project have been cleaned up significantly, and of course more libraries are up-to-date. Now when you run html:dist
, the superDev refresh/reload button is automatically removed from the resulting page, and sourcemaps (which can be somewhat large) are omitted from the resulting folder. The font is also legible on the default background for HTML pages now. Android desugaring has also been updated, and the README is more clear about how Android doesn't yet support building with JDK 16.
1.10.0.3 "Artemis Hunting Androids"
This is a relatively minor release that fixes what could have become a more major issue ( #46 , caused by a change in how Android SDK installers lay out their files), and makes artemis-odb usable on GWT. Thanks to ronjunevaldoz, bestiardo, Beatrix, and mgsx for all contributing to these fixes in various ways. As before, this release uses Gradle 7.0 by default, so it will work with Java 16! Keep this in mind if you hit issues with gdx-setup, especially errors like Unsupported class file major version 60
, which this resolves!
1.10.0.2 "Tis but a scratch."
This release restores the missing armeabi-v7a libraries on Android, and updates KTX to the current 1.10.0-b1 version. It does nothing else. Everything else was already done by 1.10.0.0 (updating libGDX to 1.10.0) or 1.10.0.1 (updating Gradle to 7.0). The missing libraries for armeabi-v7a are probably pretty important if you're doing Android dev, so updating to this version, instead of 1.10.0.1 from about 20 hours ago, is probably a good idea.
1.10.0.1 "Lucky Number Seven Point Oh"
This release has two major features: it fixes the Android builds by no longer trying to download "armeabi" native libraries (which are no longer distributed by libGDX 1.10.0), and it updates to Gradle 7.0. The Gradle 7.0 update is significant for users who have Java 16 installed as their main JDK, since it means an end to the troublesome error "Unsupported class file major version 60" for those users. There's some slightly-hacky solutions to get Gradle 7.0 to work with HTML projects, but it does work now.
As an aside, I like Java 16 and it's the first JDK release in a while to include some serious performance improvements, so I'm especially glad we can use it now via Gradle 7.0.
Now get out there and make some projects!