167 Commits

Author SHA1 Message Date
Katherine
7420866dfc
MultiMC metadata: Support updating NeoForge version (#75) v0.5.14 2024-04-21 12:10:24 +01:00
comp500
1ebb28c3cc Make update progress reporting more descriptive and useful
Removed a deleteIfExists call - this should be handled by DownloadTask instead
v0.5.13
2023-10-24 00:43:49 +01:00
comp500
c9543f74ee Fix invalidation issues when changing --side without updating pack 2023-10-23 23:36:17 +01:00
Falxie_
b2421cfea7
Add open missing mods button (#66)
* add open missing mods button

* hide missing mods button if none are found

* add logging to openUrl
v0.5.12
2023-08-06 17:54:30 +01:00
comp500
6f05ac6bf0 Fix CLI updates being cancelled when there is launcher metadata to update v0.5.11 2023-06-23 17:58:16 +01:00
comp500
7b6daaf7e5 Allow multiple files from the same CurseForge project v0.5.10 2023-05-30 02:09:45 +01:00
comp500
758385c225 Fix onlyOtherSide state not updating properly when side changes (fixes #60) v0.5.9 2023-05-20 05:09:25 +01:00
comp500
304fb802ed Write packwiz.json with UTF8 instead of system charset v0.5.8 2023-04-15 02:03:05 +01:00
comp500
cc063773d8 Only run build on PR (no publishing) 2023-04-12 23:52:54 +01:00
comp500
1deed7dd0d Fix and simplify side matching code (fixes #54) v0.5.7 2023-01-17 05:21:20 +00:00
comp500
ad951b9b44 Download mods for both sides with --side both (fixes #14) v0.5.6 2023-01-17 02:33:07 +00:00
Eric Richter
4e415c1e1a
Add option to automatically close after a user-supplied amount of time (#42)
* Add option to automatically close after a user-specific amount of time

Add the -t/--timeout command line option to specific a number of seconds to
wait before automatically closing if there is no update or user-interactivity
required.

* Also use timeout setting when prompting about optional mods after/during an update

Additionally, clears the TODO comment.

* Change default timeout to 10 seconds
2023-01-17 02:30:05 +00:00
comp500
84bbbe0770 Tweak timeout strategy (see #52) 2023-01-15 02:23:18 +00:00
comp500
fa9fe18215 Fix manual link resolution for files not visible in CF API (fixes #48) v0.5.5 2023-01-02 21:15:48 +00:00
comp500
01dcc09a78 Add main method so link.infra.packwiz.installer.Main can be launched directly
Useful for scripts or tools that already handle automatic updates of
packwiz-installer, such as docker-minecraft-server :)
Adds a message to suggest using the bootstrapper for automatic updates
v0.5.4
2022-09-01 02:44:12 +01:00
comp500
a8f8444d45 Fix handling of old packwiz.json files with negative murmur2 values v0.5.3 2022-07-18 16:40:39 +01:00
comp500
d98baaf832 Change manifest file back to packwiz.json v0.5.2 2022-07-17 14:26:46 +01:00
comp500
783e35cf73 Fix OutOfBoundsException when parsing a single letter path component v0.5.1 2022-07-17 01:07:48 +01:00
comp500
ca172bdefc Fix order of modified MultiMC components when updating versions 2022-07-17 01:03:40 +01:00
comp500
b8cb9cc1aa Repack jar with Gradle so MANIFEST.MF is at the start
packwiz-installer-bootstrap relies on reading the manifest; breaking this means the update will run on every launch!
2022-07-17 00:30:22 +01:00
comp500
6f0beac1a1 Dry run fails the build when the release already exists; fix
Reverted to stop the snapshot build failing
2022-07-16 20:40:10 +01:00
comp500
f7257f4266 Fix dist jar path, do dry run when not releasing v0.5.0 2022-07-16 18:47:08 +01:00
comp500
9c475cba85 Fix gh release dependency on copyJar output 2022-07-16 18:15:58 +01:00
comp500
f1ba5e4343 Fix githubRelease as publish task dep 2022-07-16 18:02:29 +01:00
comp500
43873ac7f9 Add githubRelease as publish task dep 2022-07-16 17:58:13 +01:00
comp500
d83c4f1abc Pass tokens as command line arguments 2022-07-16 17:43:54 +01:00
comp500
db304f9d00 Upgradle to 7.5 2022-07-16 17:33:59 +01:00
comp500
6bb360f8e3 Fix environment variables passed to Gradle again 2022-07-16 17:19:24 +01:00
comp500
4115ea2a3a Fix environment variables passed to Gradle 2022-07-16 17:16:16 +01:00
comp500
d4e41ad85e Fix gradlew permissions 2022-07-16 17:11:48 +01:00
comp500
fcf249166c Add GH actions Maven publishing, improve buildscript 2022-07-16 17:10:26 +01:00
comp500
66bc4c3e29 Significant rewrite to use 4koma, OkHttp, PackwizPath; fixing several issues
Github release plugin, Kotlin, Okio and OkHttp updated
Toml4j removed and replaced with 4koma - improves null safety, immutability, TOML compliance
kotlin-result removed (I don't think it was used anyway)
SpaceSafeURI replaced with PackwizPath which handles special characters much better (fixes #5)
Fixed directory traversal issues
Hashing system rewritten for better type safety and cleaner code
Download mode changed to use an enum
Request system completely rewritten; now uses OkHttp for HTTP requests (fixes #36, fixes #5)
Added request interceptor which retries requests (fixes #4)
Removed: support for extracting packs from zip files (and Github zipballs)
Cleaner exceptions; more improvements pending (in particular showing request failure causes)
Improved speed of cancelling in-progress downloads
Better support for installing from local files (no file: URI required; though it is still supported)
Various code cleanup changes
2022-07-10 01:44:35 +01:00
comp500
02b01b90d7 Improvements to MultiMC metadata updating
Reformatted and refactored names to fit Kotlin conventions
Closed manifest file reader properly
Fixed switching between loaders, improved intermediary logic
Improved error messages
2022-06-29 03:26:50 +01:00
comp500
ab3de9a246 Merge remote-tracking branch 'origin/master' 2022-06-28 18:04:40 +01:00
Geferon
53286871e6
Initial MultiMC Forge and MC version support (#31)
* Initial MultiMC Forge and MC version support

* Added support for MultiMC MC and Forge versioning

* Added support for Fabric, added MultiMC confirmation prompt

* Refactored prompt method for MultiMC update

* Initial PR changes

* Refactored most MultiMC code to LauncherUtils
2022-06-28 17:52:26 +01:00
comp500
610aeeb166 Change usage of deprecated toLowerCase method 2022-06-19 19:40:14 +01:00
comp500
5e39907fae Fix build on J9+, exclude kotlin_metadata again (used to be removed with annots, but those are necessary) 2022-06-19 19:39:45 +01:00
comp500
d2556c4b4a Move to R8 shrinker, tweak compile args 2022-06-19 18:58:49 +01:00
comp500
858fd17f3e Fix optional and sided mod filtering properly v0.4.3 2022-05-23 20:32:22 +01:00
comp500
c2ee6fca8b Improve handling of manual downloads; "Continue" now rechecks files v0.4.2 2022-05-23 17:38:01 +01:00
comp500
73d21a475a Fix phantom state of opted-out files made non-optional v0.4.1 2022-05-23 00:55:58 +01:00
comp500
7568770078 Fix optional button waiting when there are no optional mods 2022-05-23 00:38:57 +01:00
comp500
3d1d6db9b4 Update licenses v0.4.0 2022-05-22 21:44:22 +01:00
comp500
c6e304bc7f Add support for mode field, with CurseForge metadata lookup
Now always asks the user before proceeding past the point where optional mods could be selected and configured
When updating files, the hash is checked so an update isn't redownloaded if it already exists
Added DevMain file for running in a dev environment
2022-05-22 21:20:52 +01:00
comp500
92d6f68f1d Always use UTF-8 for reading TOML files (fixes #22) 2022-05-11 17:45:39 +01:00
comp500
07af6046c1 Rework target into interface; add overwrite mode and validity/identity tokens 2022-03-06 21:28:27 +00:00
comp500
89bdfd9c98 WIP task system with lazy evaluation 2022-02-21 22:15:10 +00:00
comp500
f4dd4fa866 Implement new abstraction for file paths
Once integrated with the rest of the installer, this should fix many directory traversal and path encoding issues
2022-02-21 22:15:10 +00:00
comp500
6db8422c87 Add source link, update report issue link 2022-02-21 22:15:10 +00:00
comp500
7d6346c088 Shade and relocate Commons CLI, update to 1.5.0 2022-02-21 22:15:10 +00:00