Commit Graph

1113 Commits (master)

Author SHA1 Message Date
Tobias Nett c3d5f34e9e
doc: add release guide (#680) 2022-09-03 13:18:21 +02:00
Tobias Nett 2c47d0ae60 release: 4.6.0 2022-09-03 12:15:06 +02:00
Tobias Nett 88efba0d3e
doc: update documentation (#676)
- update the documentation in the README to reflect the current state of the launcher.

Co-authored-by: jdrueckert <jd.rueckert@googlemail.com>
2022-08-23 12:40:28 +02:00
Kevin Turner fdd426aa41
build!: remove 32-bit Windows build (#673)
* build! remove 32-bit Windows build
* build: remove EXE for 32-bit (x86) Windows
* build: remove 'windows32' from asset-upload github workflow

Co-authored-by: Tobias Nett <skaldarnar@gmail.com>
2022-08-22 19:16:34 +02:00
Kevin Turner 86045408ca
build: runtime upgrade to Java 11.0.16.1 (from 11.0.7) (#672)
* build: runtime upgrade to Java 11.0.16.1 (from 11.0.7)
* build: upgrade assorted gradle plugins
* build: upgrade assorted launcher dependencies
* build: upgrade assorted test dependencies
* build(checkstyle): set checkstyle.configDirectory

Co-authored-by: Tobias Nett <skaldarnar@gmail.com>
2022-08-22 09:22:35 +02:00
Tobias Nett b449d27088
build(github): update actions (#674) 2022-08-22 00:45:44 +02:00
Tobias Nett 8d81316631
feat: add request caching with OkHttp (#668)
Co-authored-by: Josephine Rueckert <jd.rueckert@googlemail.com>
2022-04-01 00:08:45 +02:00
Tobias Nett f0757ad509
feat: 1:1 migration from LauncherSettings >>> Settings (#667)
* test!: adjust test case to use `Settings`
* feat!: 1:1 migration from LauncherSettings >>> Settings
* fix: apply locale from settings during initialization

This does not (yet) make use of any feature we gain by having JavaFX properties or bindings, but on the upside this should be a feature-equivalent migration to the new settings POJO.

I know that the migration is not pretty, but I'd like to improve on the details in separate follow-up PRs to keep the review load bearable.
2021-12-19 17:04:11 +01:00
Rostyslav Zatserkovnyi 33786f61fa
feat(i18n): Update Ukrainian language strings & fill in missing i18n (#670)
Adds missing strings to the Ukrainian locale file (two of them), and internationalizes some parts of the launcher that previously had preset strings! This includes the three tabs on the main pane, and some new advanced settings.
2021-12-16 21:15:22 +01:00
Tobias Nett 0c9bbe9c45
refactor: change API of Settings#load/store to use folder path (#666)
Co-authored-by: jdrueckert <jd.rueckert@googlemail.com>
2021-12-16 20:05:14 +01:00
Tobias Nett 634037c6ad
feat: prepare for JavaFX-property-based launcher settings (#665) 2021-11-12 20:14:29 +01:00
Tobias Nett 6a41541d93
chore: merge BaseLauncherSettings into LauncherSettings (#662)
For historic reasons, the launcher settings classes were split into an abstract class interface and (several) implementations, but we dropped most of those some time ago.

Since we now only have single implementation class there's no point in keeping the interface and implementation separate.
2021-09-01 18:18:25 +02:00
Tobias Nett a0fed1fbae
chore: pass LauncherConfiguration to ApplicationController#update (#664)
We're unpacking all members from the LauncherConfiguration to pass separately to the ApplicationController when showing the main stage.

Instead, pass the configuration object as is, and take the respective information out as needed in ApplicationController#update itself.
2021-09-01 17:56:38 +02:00
Tobias Nett 2177d360ae release: 4.5.0 2021-08-29 11:53:07 +02:00
Tobias Nett dea72607d4
fix: pass JVM heap settings in correct order to GameStarter (#659)
Due to the two arguments being flipped selecting reasonable values (max memory >= min/initial memory) in the settings UI would lead to the game not starting properly with the following error message:

```
11:28:57.001 [GameService-0] INFO  o.t.launcher.game.RunGameTask - Game output: Error occurred during initialization of VM
11:28:57.001 [GameService-0] INFO  o.t.launcher.game.RunGameTask - Game output: Initial heap size set to a larger value than the maximum heap size
11:28:57.004 [GameService-0] DEBUG o.t.launcher.game.RunGameTask - Game closed with the exit value '1'.
```

Passing in the values in the right order fixes this.
2021-08-29 11:46:59 +02:00
Tobias Nett 55ffb4b6d3
feat: hide pre-releases by default (#658) 2021-08-29 10:33:56 +02:00
Tobias Nett 5d5b0dba82
feat: resolve Terasology.jar either from 'libs' or 'lib' (#638) 2021-08-28 12:38:50 -07:00
Kevin Turner 3a1bc1cbc0
chore(JenkinsClient): use new HTTP client with better diagnostics (#656) 2021-08-19 18:25:25 -07:00
Kevin Turner ab7a1e7c7f
fix(LauncherSettings): do not send a zero-length argument (#657)
This tended to happen if this setting was an empty string.
2021-08-19 11:39:03 +02:00
Kevin Turner c744d493c5
chore: update to jdk 11.0.12 from 11.0.8 (#645) 2021-08-14 21:02:10 +02:00
Kevin Turner fa71abb496
fix(GameStarter): do not depend on GameRelease to know the engine version (#654)
* fix(GameStarter): do not depend on GameRelease to know the engine version, inspect the local installation instead.
* chore(VersionHistory): remove interface to GameIdentifier, because engine version comes from someplace else.
* fix(GameManager): don't return Installations for locations that obviously don't exist
2021-08-14 18:20:23 +02:00
Kevin Turner d40284dd64
chore(GameIdentifier): remove engineVersion; rename String version to displayVersion (#655) 2021-08-12 14:04:34 -07:00
Kevin Turner 4327450c1e
feat: update command line options for Terasology (#646)
* feat: update command line options for Terasology to use POSIX-style syntax for https://github.com/MovingBlocks/Terasology/pull/4157
* refactor(GameStarter): put platform-specific launch parameters here
* fix(VersionHistory): picocli begins with 5.2.0-SNAPSHOT
2021-08-08 19:11:01 -07:00
Kevin Turner e1e530f3fa
feat(GameIdentifier): include the engine version (#647)
Co-authored-by: Tobias Nett <skaldarnar@gmail.com>

BREAKING CHANGE: `lastPlayedGameVersion` format in settings file changed to JSON.
2021-08-07 13:01:10 -07:00
Tobias Nett 8d928d37a1
build: update Gradle 6.8.2 >>> 7.1.1 (#644)
Co-authored-by: Kevin Turner <83819+keturn@users.noreply.github.com>
2021-07-27 19:49:39 -07:00
Tobias Nett 03c74c760b release: 4.4.0 2021-06-24 18:53:44 +02:00
Tobias Nett f1ba9c0046
feat: add Github repository adapter to fetch releases from Github (#616) 2021-06-20 15:22:37 +02:00
Tobias Nett e095c864d4 release: 4.3.4 2021-05-06 23:42:02 +02:00
Tobias Nett ec9c09145f
fix: add connection timeout; remove legacy jenkins adapter (#641)
* fix: add connection timeout of 10 seconds to JenkinsClient

Partially addressed #640

* feat: show info label in splash screen when fetching game releases

This introduces a new translation key `splash_fetchReleases`.

* perf: fetch releases in parallel

Fetching available releases from independent sources should be independent of each other. Thus, we
can run this in parallel by using a `parallelStream()`.

* chore: remove LegacyJenkinsRepositoryAdapter

The legacy Jenkins instance (`jenkins.terasology.org`) is no longer available. Therefore, we don't
need this repository adapter anymore.

Closes #640

* test: remove tests for legacy jenkins adapter

* test: adjust tests for JenkinsClient

This also makes the JenkinsClient testable again by making the `openStream` utility method a static
 member. This allows to stub only that static method for testing, while keeping the class-under-test
 untouched.
2021-05-06 23:40:04 +02:00
Tobias Nett 26728357cd release: version 4.3.3 2021-05-02 21:27:49 +02:00
Tobias Nett 4e7f71d676
fix: use custom start scripts instead of brittle patch files (#639)
* build: update Gradle v6.7.1 >>> v6.8.2
* build: use custom start script templates (based on Gradle defaults v6.8.2) instead of patch files
* build: remove bintray maven repo for spf4j dependencies
* build: remove unused patch files

Resolves #547
2021-05-02 21:23:43 +02:00
jdrueckert 378b7b37ad
build: remove jcenter (#637) 2021-04-23 18:48:25 +02:00
Tobias Nett abec10390b
chore: remove jcenter dependency (#636)
Fixes #635
2021-03-21 15:11:44 -07:00
Tobias Nett 65c2ca367e release: prepare release v4.3.2 2021-02-21 13:01:55 +01:00
Tobias Nett 9a703768cc
chore: address checkstyle warnings (add doc, optimize imports) (#633) 2021-02-21 11:48:08 +01:00
Tobias Nett 0ac6a84466
chore: sort test payloads into V1 and V2 (addresses checkstyle warnings) (#632) 2021-02-21 11:34:07 +01:00
Tobias Nett 7c5be8145d
fix: append build number to version in JenkinsRepositoryAdapter (#631) 2021-02-21 11:02:15 +01:00
Tobias Nett f4db71d587
test(JenkinsClient): add tests for exceptional cases on JenkinsClient (#629)
* test(JenkinsClient): test that IOException is handled gracefully
* test(JenkinsClient): test that invalid JSON payload is handled gracefully
* fix: make JenkinsClient more resilient against malformed JSON payload
2021-02-17 11:24:06 -08:00
Tobias Nett f9c912c36c release: prepare release v4.3.1 2021-02-16 21:38:24 +01:00
Tobias Nett c0fef8eec3
fix(controller): prevent NumberFormatException on starting game (#628) 2021-02-16 20:44:50 +01:00
Tobias Nett 47df617db5
refactor(model): add ReleaseMetadata container (#627) 2021-02-16 20:24:00 +01:00
Tobias Nett 4b27bfa527
test(repositories): add tests for LegacyJenkinsRepositoryAdapter (#626) 2021-02-15 20:02:38 +01:00
Tobias Nett 1e14b4aff6
test(repositories): prepare legacy adapter for testing (#625) 2021-02-15 19:11:53 +01:00
Tobias Nett 2f43b8aba1
fix(repositories): make JenkinsRepositoryAdapter more resilient (#624) 2021-02-14 20:50:16 +01:00
Tobias Nett a4265247ec release: prepare release v4.3.0 2021-01-30 10:59:00 +01:00
Tobias Nett b29a447e0f
feat(repositories): add adapter for new jenkins.terasology.io (#621)
* refactor(repositories): mark adapter for old Jenkins as "legacy"
* feat(repositories): add adapter for new jenkins.io builds
2021-01-23 22:58:04 +01:00
Tobias Nett 59f8a31d55 release: prepare release v4.2.0 2020-12-04 20:21:47 +01:00
Tobias Nett 0ca69120c1
epic: continue launcher clean-up (#619) 2020-11-30 20:04:12 +01:00
Tobias Nett 52ef300202
build: update Gradle (6.4.1 >>> 6.7.1) (#618) 2020-11-30 19:51:55 +01:00
jdrueckert 948f229cca
chore: update license headers (#617) 2020-11-15 12:30:41 +01:00