Commit Graph

235 Commits

Author SHA1 Message Date
Jan Dalheimer
00822fa0f9 Treat the updater separately 2013-12-23 10:34:43 +01:00
Petr Mrázek
f402001453 Use the central URL list for forge URLs 2013-12-23 00:43:29 +01:00
Petr Mrázek
56aeaec7d6 Merge branch 'feature_forge_gradle' of https://github.com/02JanDal/MultiMC5 into develop 2013-12-23 00:16:47 +01:00
Jan Dalheimer
9e645f4a37 Support for the new forge gradle repo 2013-12-23 00:12:03 +01:00
Petr Mrázek
3841260ef1 Fix Java checker leaving behind temporary jar files 2013-12-22 23:05:18 +01:00
Petr Mrázek
77ddf8b5d7 Show errors when logging in in the account dialog. 2013-12-22 19:47:58 +01:00
Petr Mrázek
3051d0d328 Make pack200 use QFile by proxy, eliminating some unicode issues. 2013-12-22 18:49:52 +01:00
Petr Mrázek
7a07ed7940 FTB fixage
* Corrected an uninitialized variable that prevented forge list loadinf on Windows
* Run the update step twice for FTB instances to ensure forge libs get downloaded
2013-12-22 05:47:10 +01:00
Petr Mrázek
245d441a6e Fail if we fail to find the right forge version 2013-12-22 05:15:26 +01:00
Petr Mrázek
74b5b5f535 Make FTB instances behave better
* Do not re-create on every reload
* Use the version.json/custom.json logic properly
* Should be offline-friendly
* FTB instances can be copied, turn into normal instances
2013-12-22 04:31:30 +01:00
Jan Dalheimer
82c87aa06f Initial FTB support. Allows "tracking" of FTB instances. 2013-12-21 23:40:37 +01:00
Petr Mrázek
01dbebdfc8 Fix issues with the updater
* Bad URLs used for downloading update files
* MD5ETagDownload resetting the expected ETag after failure to the failed file MD5 checksum
* Delete MD5ETagDownload downloaded files if the download fails.
2013-12-21 14:25:16 +01:00
Petr Mrázek
d6c71488b3 Some test madness 2013-12-20 23:04:11 +01:00
Petr Mrázek
be8dba9ee2 Remove obsolete auto login option. 2013-12-16 22:30:42 +01:00
Petr Mrázek
5df86d9ffa Merge branch 'updater_tests' of https://github.com/02JanDal/MultiMC5 into develop 2013-12-15 23:47:57 +01:00
Andrew
9d8006b597 Merge branch 'develop' of github.com:MultiMC/MultiMC5 into feature_news
Conflicts:
	CMakeLists.txt
2013-12-15 15:01:34 -06:00
Andrew
0ee8f90d40 Added a system to load news from MultiMC.org's RSS
Currently it doesn't show it anywhere in the UI. That's next.
2013-12-15 14:50:27 -06:00
Jan Dalheimer
7f884a18a8 Finish unit tests for the DownloadUpdateTask class 2013-12-15 18:50:56 +01:00
Petr Mrázek
dd9e04000c Improve group changing, update instance on version change
Gives a list of existing groups to choose from.
Instances are updated as long as there is at least one valid account.
2013-12-15 18:13:46 +01:00
Petr Mrázek
5a3043398e Use asset sizes from the index to make the progress bar better 2013-12-15 15:00:09 +01:00
Jan Dalheimer
3e8bcc1cf6 Unit tests for the DownloadUpdateTask class 2013-12-15 12:18:42 +01:00
Petr Mrázek
d15a6490f6 Fix bugs introduced by unit test branch
Account json was getting rewritten by a folder
Missing icon on Windows (hopefully fixed, `doing it live`)
2013-12-14 19:26:50 +01:00
Jan Dalheimer
f273334212 More tests for the UpdateChecker class. It should be done for now. 2013-12-14 19:19:14 +01:00
Jan Dalheimer
a02e62f17f Tests for parsing of channel lists in UpdateChecker 2013-12-14 16:02:51 +01:00
Petr Mrázek
8f856f5573 Merge branch 'testing' of https://github.com/02JanDal/MultiMC5 into develop
Conflicts:
	MultiMC.cpp
2013-12-14 14:00:23 +01:00
Sky
4623aa44f5 Add status shown specifically when downloading assets 2013-12-14 10:06:32 +00:00
Sky
20a332e97c Make the account selection list use checkboxes rather than text for active boolean 2013-12-14 09:35:23 +00:00
Petr Mrázek
bbd17b6224 Fix twitch 2013-12-14 01:18:54 +01:00
Sky
b69351d50d Merge branch 'develop' of github.com:Drayshak/MultiMC5 into develop 2013-12-13 14:58:35 +00:00
Sky
979946b7bb First sweep moving URLs to a constants file 2013-12-13 14:58:11 +00:00
Petr Mrázek
0af6f96c3d Do not log auth crud 2013-12-13 03:06:10 +01:00
Petr Mrázek
382e4fe6b3 Fix syntax error
You do not need goto for that. Really.
2013-12-13 02:52:54 +01:00
Petr Mrázek
7d20e2478a Merge branch 'develop' of github.com:MultiMC/MultiMC5 into develop 2013-12-13 02:48:31 +01:00
Petr Mrázek
39aebddf3b Add support for 1.7.4 user_type (needs testing with legacy accounts) 2013-12-13 02:47:59 +01:00
Andrew
a954fc1a32 Fix updater removing all files.
Yeah, I don't know what I was thinking, but somehow it worked before.
2013-12-12 17:10:43 -06:00
Petr Mrázek
bf34aa7fbd Use temporary files for the java checker 2013-12-13 00:02:58 +01:00
Sky
808ca76363 Make sure adding forced candidates doesn't result in duplicates 2013-12-12 15:25:02 +00:00
Sky
b963ff7416 Don't break Linux and OS X builds :( 2013-12-12 15:04:24 +00:00
Sky
a2b0941029 Java version list should be sorted, JRE->JDK, 64->32 2013-12-12 14:56:32 +00:00
Sky
3e8e0dd639 Fix checker progress derp 2013-12-11 09:39:25 +00:00
Petr Mrázek
26a7544325 Merge https://github.com/Drayshak/MultiMC5 into develop 2013-12-11 08:39:35 +01:00
Petr Mrázek
bace3c2eab Swap https -> http for asset indexes 2013-12-11 08:34:22 +01:00
Sky
afa5e14e20 Better (but unsorted) Java detection 2013-12-11 04:54:00 +00:00
Petr Mrázek
10e13df00d Use metacache for minecraft.jar downloads 2013-12-10 20:33:24 +01:00
Petr Mrázek
1b185eba41 Nuke. 2013-12-10 07:52:36 +01:00
Petr Mrázek
aa61bbe9e4 Merge branch 'develop' of github.com:MultiMC/MultiMC5 into develop
Conflicts:
	CMakeLists.txt
	gui/MainWindow.cpp
2013-12-10 07:22:22 +01:00
Petr Mrázek
3f5c46a1c4 Finish assets update for 1.7.3 2013-12-10 07:12:52 +01:00
Andrew
712b87c643 Merge branch 'develop' of github.com:MultiMC/MultiMC5 into develop 2013-12-09 12:06:33 -06:00
Andrew
7f52bed9e3 Merge branch 'feature_updater' into develop 2013-12-09 12:04:05 -06:00
Petr Mrázek
8db2e5db81 Merge branch 'feature_assets' into develop 2013-12-08 22:19:58 +01:00
Petr Mrázek
b0dbd4f4af Fix offline mode bugs 2013-12-08 22:06:04 +01:00
Petr Mrázek
d68f49ffc0 Merge branch 'feature_pasting' of https://github.com/robotbrain/MultiMC5 into develop 2013-12-08 17:39:32 +01:00
Petr Mrázek
0cb8ff40b2 Finish preliminary offline support
* ProgressProvider now has an abort() call
* Abort button support added to the progress dialog
* YggdrasilTask and MojangAccount adapted to support abort

YggdrasilTask will time out after 10 seconds of no network activity, or when the user pushes the Play Offline button.
In offline mode, all instance update tasks are skipped! This will need further work.
2013-12-08 17:34:45 +01:00
Sky
2fe27fd0da More work on new assets system. Works given a properly constructed assets folder, no downloading yet 2013-12-08 06:12:53 +00:00
Sky
6d438b2ef3 Work on new assets system. Working legacy assets importer, disabled assets downloading for now 2013-12-08 02:58:44 +00:00
robotbrainify
4548930e34 Open the url direectly. 2013-12-06 17:17:32 -05:00
robotbrainify
e2728317e7 Fixes to pasting 2013-12-06 17:13:09 -05:00
robotbrainify
5ad95134dc work on pasting instance logs
blame clang for formatting changes
2013-12-06 16:24:55 -05:00
Andrew
6ac94ddcb6 Finish implementing update installation.
Also add the option to update on exit.
2013-12-06 12:59:58 -06:00
Andrew
e90f1a2756 Implement update installer 2013-12-05 20:32:52 -06:00
Andrew
48ec8e67b8 Implement DownloadUpdateTask
Installing updates is not implemented yet. That's next.
2013-12-05 13:52:55 -06:00
Petr Mrázek
f028aa76bc Offline mode support, part 1
Refactor MojangAccount so it exposes a less generic interface and supports login. Hide the ugly details.
Yggdrasil tasks are now only used from MojangAccount.
2013-12-05 02:39:52 +01:00
Andrew
bf94aaea75 Rework the update checking system 2013-12-04 12:34:12 -06:00
Jan Dalheimer
4435016fae Fix some bugs that surfaced 2013-12-02 12:02:37 +01:00
Jan Dalheimer
0a6399b52c Unit testing 2013-12-02 11:09:56 +01:00
Petr Mrázek
6aa9bd0f77 Renew the updater branch
Now with some actual consensus on what the updater will do!
2013-12-02 00:55:24 +01:00
Petr Mrázek
f56eff04ef Fix (hopefully) library dependency resolution.
Installing libs is now enabled, hardcoded.
Enable -Wall for all builds.
Fix many warnings and latent bugs.
2013-12-01 16:34:51 +01:00
Petr Mrázek
a3fbf05c7b Fix private info censor 2013-12-01 02:14:32 +01:00
Petr Mrázek
f27a6c39ea Fix login and startup logging issues
Auth uses the refresh endpoint instead of validate. This means less password entering.
Console will now only autoscroll when already scrolled all the way down.
Better conformance with the Yggdrasil auth protocol (not complete yet, but Mojang launcher isn't complete either).
Fix bug that prevented saving the account data (uninitialized variable).
Accounts can now trigger account list saving, this is used for the refresh endpoint.
2013-12-01 02:00:42 +01:00
Jan Dalheimer
8334b6a09f Fix crash when no instances are available 2013-11-30 12:28:35 +01:00
Jan Dalheimer
8831856172 Remember the last selected instance and select it on startup 2013-11-30 12:28:20 +01:00
Andrew
0395474a0c Nuke dead code 2013-11-28 22:05:58 -06:00
Andrew
bfc9e1e5d5 Verify access tokens before launching Minecraft
Kind of an important thing to do... Heh...
2013-11-28 20:45:52 -06:00
Andrew
f7b64a551b Add icon for when no default account is selected
Also fixed a bug where the icon on the accounts button wouldn't change
when the user checked the "Use as default" checkbox in the account
selection dialog.
2013-11-28 15:46:04 -06:00
Petr Mrázek
60e325b8af Merge https://github.com/brainiac744/MultiMC5 into develop 2013-11-28 21:28:57 +01:00
Anthony Parrott
c0c7037e18 Could reach end of rulesFromJsonV4 method without returning a QList
It was possible for execution to reach the end of the rulesFromJsonV4
method without returning. This was causing a crash on OS X when parsing
rules inside an instance.
2013-11-28 14:50:04 -05:00
Sky
191e850cf1 Add support for "no default account" 2013-11-27 23:39:36 +00:00
Andrew
a4c5f0135e Allow setting no default account
This allows the user to select an account to use every time they launch
an instance.
2013-11-27 16:14:18 -06:00
Sky
38732636d3 Nuke skins.json, use nice yggdrasil implementation instead. Grabs all Mojang account skins on addition, active on startup 2013-11-27 18:45:29 +00:00
Sky
7d7579d7f0 Move "manage accounts" to right, use player skin when available 2013-11-27 16:56:15 +00:00
Petr Mrázek
7024e5a83e Fix for latest snapshot ``changes'' 2013-11-27 01:50:38 +01:00
Petr Mrázek
d6b09f7c13 Add java checker to the instance settings 2013-11-25 01:14:30 +01:00
Petr Mrázek
088b039cf7 Detect java bitness on launch, use appropriate libraries
Fixes problems with latest snapshot
2013-11-25 00:46:52 +01:00
Petr Mrázek
82225a21e1 Merge branch 'feature_yggdrasil' into develop
Conflicts:
	gui/MainWindow.cpp
	logic/OneSixInstance.h

Fix missing session id functionality for legacy and old onesix.
2013-11-24 18:41:35 +01:00
Petr Mrázek
ca297fca79 Prepare for rework of instance launch/update
Added missing licenses
Added a Java functionality checker (detects 32/64bit java)
Refactor of *Update - no longer based on BaseUpdate, but Task directly
Fixed runner script to not derp up on 32bit linux. Could add more detection and error reporting there.
Resources are now split into graphics and generated. Generated resources are placed in the build tree and included from there.
Used the Java checker in the main settings dialog (TODO: instance settings).
Partial support for ${arch}-using libraries - both 32 and 64 variants of ${arch} are downloaded.
2013-11-24 06:36:16 +01:00
Petr Mrázek
4124faf474 Fix console window (now not a QDialog)
It now opens and coloses as expected, depending on user
preferences and the status of the various processes involved.
Console window geometry and state are remembered between runs.
2013-11-23 01:41:28 +01:00
Andrew
75e7932607 Properly implement launching and downloading
Also added a system to select an active account to log in with.
2013-11-22 12:47:39 -06:00
Andrew
23bc195b3c Implement removing accounts. 2013-11-22 10:54:52 -06:00
Petr Mrázek
7f5eb5d61a Implement user info stub for newest minecraft snapshot 2013-11-22 01:04:14 +01:00
Andrew
abf8408911 Nuke and pave the old login system
Also, account list now saves profile lists.
2013-11-20 18:31:15 -06:00
Andrew
928e0d0b15 Implement saving account list to file
Currently it only saves when accounts are added or removed. We'll have
to fix this, but we need signals for when account objects change first.
2013-11-19 12:53:30 -06:00
Petr Mrázek
57a9dadb08 Forge XZ downloads now use temp files local to MultiMC, files are removed. 2013-11-19 00:47:59 +01:00
Petr Mrázek
294c2d122f Fix assets URL (expected to change... again) 2013-11-18 20:12:24 +01:00
Andrew
a9a0b65358 Implement loading accounts from list. 2013-11-18 12:58:03 -06:00
Andrew
cdca530139 Implement account list and account list dialog 2013-11-18 12:05:35 -06:00
Petr Mrázek
210629e274 Use the forge mirrors for downloading forge libraries
Let's hope we never, ever see a forge download error again.
2013-11-17 11:44:18 +01:00
Petr Mrázek
2a45302dfc Mark forge lib downloads as failed when they fail 2013-11-16 20:36:01 +01:00
Andrew
ad8aeb0b2b Implement auth task's response processing.
The authenticate task can now successfully log a user in.
2013-11-14 14:32:43 -06:00
Andrew
9cfd5ae465 Add test authentication task.
It doesn't actually do anything with the server's reply yet.
2013-11-14 12:17:38 -06:00
Andrew
d84b1a91f4 Add abstract base class for Yggdrasil tasks. 2013-11-13 14:12:31 -06:00