Commit Graph

407 Commits

Author SHA1 Message Date
Timothy Baldridge
9ffdea44c5 Few bug fixes 2019-12-20 15:47:33 -07:00
Timothy Baldridge
f5eb4d1d84 WIP 2019-12-20 13:51:10 -07:00
Justin Swanson
790acec2d0 Added missing PMap overload for Func<Task> work actions 2019-12-20 14:50:02 -06:00
Justin Swanson
af6b42563d Ceras version tolerance enabled 2019-12-20 14:01:01 -06:00
Timothy Baldridge
d49c59480b Only benchmark the scratch disk, take ram size into account, support network drives 2019-12-19 09:09:31 -07:00
halgari
52b1b57e5d UI wasn't prompting for a new download when the list was updated 2019-12-17 21:30:36 -07:00
Timothy Baldridge
16cac7c57b
Merge pull request #289 from wabbajack-tools/more-fixes
Fixes for inis, resuming downloads and caching services
2019-12-17 16:58:36 -07:00
halgari
91e27fc3d7 Fixes for inis, resuming downloads and caching services 2019-12-17 16:17:44 -07:00
trawzified
8eec65954e Change HashSet SupportedArchives to be case insensitive aswell 2019-12-17 18:18:28 +01:00
trawzified
9f91974bd0 Change HashSets in Consts.cs to be case insensitive 2019-12-17 18:15:26 +01:00
erri120
ed1297b71d
Added error catching for FromJSON to catch NexusAPI error responses 2019-12-16 14:00:22 +01:00
Timothy Baldridge
ff25be8551
Merge pull request #275 from wabbajack-tools/broken-list-warning
Filter gallery by valid lists pulled from the validation service.
2019-12-15 16:54:42 -07:00
Timothy Baldridge
e9585feb9c
Merge pull request #274 from Noggog/polish-and-fixes
Polish and Fixes
2019-12-15 16:09:44 -07:00
halgari
4b11503319 Filter gallery by valid lists pulled from the validation service. 2019-12-15 14:52:12 -07:00
Justin Swanson
4285932ef9 Merge remote-tracking branch 'erri/master' into polish-and-fixes 2019-12-15 15:31:50 -06:00
erri120
364d41a171
Moved extraction check to CanExtract 2019-12-15 12:58:03 +01:00
erri120
d2a80b25c6
Added 7zip archive test before extraction for .dat files 2019-12-15 12:27:16 +01:00
erri120
f3c8b26b1f
Added Stardew Valley to the Supported games list 2019-12-15 12:08:37 +01:00
halgari
f4df8509f0 Fix metrics 2019-12-14 22:04:02 -07:00
Timothy Baldridge
70f3bcce9d
Merge branch 'master' into metrics 2019-12-14 21:41:01 -07:00
halgari
ff720cd044 Add anonymous metrics 2019-12-14 21:33:48 -07:00
Justin Swanson
a6082cc927 Merge remote-tracking branch 'wabbajack-tools/master' into polish-and-fixes 2019-12-14 17:48:27 -06:00
erri120
3c21dfd781
Added check for InstallDir 2019-12-14 22:43:47 +01:00
erri120
e13a57009a
Added ExtensionManager safety checks 2019-12-14 22:40:10 +01:00
erri120
86d91a3e4b
Added safety checks to the SteamHandler 2019-12-14 22:34:55 +01:00
Justin Swanson
078b457857 FilePickerVM unit tests, better filter enforcement 2019-12-14 14:11:39 -06:00
halgari
0464f1b43c Integrated list validation into the caching HTTP server. 2019-12-13 22:46:20 -07:00
Justin Swanson
3ae54d7575 Small formatting tweak 2019-12-12 19:52:26 -06:00
Justin Swanson
bcd7c95caf Merge branch 'master' into async-exploration 2019-12-12 19:49:40 -06:00
Timothy Baldridge
dba51fe4e7
Merge pull request #263 from wabbajack-tools/upgrade-deps
bump all the deps!!
2019-12-12 16:25:02 -07:00
Timothy Baldridge
2c69a9ec9b bump all the deps!! 2019-12-12 16:00:19 -07:00
Timothy Baldridge
e482197479 Fix case sensitive bug with download deletion during install 2019-12-12 15:52:24 -07:00
Timothy Baldridge
45a08b4005
Merge pull request #261 from wabbajack-tools/fix-missing-app-data-folder
Check if the directory exists first before saving data to it
2019-12-12 12:17:32 -07:00
Timothy Baldridge
cfa6855e89 Check if the directory exists first before saving data to it 2019-12-12 06:41:06 -07:00
Justin Swanson
96c1fe6bff Merge branch 'master' into intervention-frontend 2019-12-10 21:49:20 -06:00
Timothy Baldridge
f6e9d672d2 Create .metas automatically for source-from-game files. 2019-12-10 05:26:49 -07:00
Timothy Baldridge
ba556be994 Every steam install has the root steam folder as a implicit game location 2019-12-09 15:38:26 -07:00
Justin Swanson
7f695a4a9e Install/Compile views display ConfirmationInterventions in CPU area 2019-12-08 18:19:36 -06:00
Timothy Baldridge
3bbbfb3ea2 Finish up LL support. 2019-12-08 10:00:22 -07:00
Justin Swanson
86d4003398 Merge remote-tracking branch 'wabbajack-tools/master' into async-exploration 2019-12-08 01:10:51 -06:00
Timothy Baldridge
b9ae379c09
Merge pull request #240 from erri120/vortex-fixes-5
Vortex fixes 5
2019-12-07 11:30:11 -07:00
erri120
c5858c51c3
Vortex: Manual game files can be copied over 2019-12-07 17:35:57 +01:00
erri120
9d4325a5fe
Updated GameLocation property 2019-12-07 17:03:58 +01:00
Justin Swanson
bc436e53c7 Fixed [ThreadStatic] systems in WorkQueue 2019-12-07 01:22:34 -06:00
Justin Swanson
63afc2dc9e Remaining NexusAPI made async 2019-12-07 00:40:29 -06:00
Justin Swanson
367978967c GenericExceptions print more detail 2019-12-07 00:40:29 -06:00
Justin Swanson
5bd856a7c6 Utils async -> sync methods removed 2019-12-07 00:40:29 -06:00
Justin Swanson
e9deda9f44 Large swap to make WorkQueue able to take Task work items 2019-12-06 22:47:49 -06:00
Justin Swanson
f2014a1da3 WorkQueue.Threads now static 2019-12-06 20:05:50 -06:00
Justin Swanson
03c88b0f38 Removed some Shutdown/Terminate functions in favor of Dispose 2019-12-06 20:04:42 -06:00
Justin Swanson
caadbb0aee Removed abort call from WorkQueue 2019-12-06 19:04:39 -06:00
Timothy Baldridge
a8a344d4be Added libCef, hooked it into a WPF window. Made NexusAPI raise a message. Implemented encrypted caching routines. 2019-12-06 17:13:16 -07:00
Timothy Baldridge
822236de8c
Merge pull request #238 from wabbajack-tools/exceptions-as-data
Exceptions as data
2019-12-05 22:27:59 -07:00
Timothy Baldridge
56371b47ce
Merge pull request #235 from erri120/more-vortex-fixes
More Vortex Fixes
2019-12-05 21:06:02 -07:00
Justin Swanson
a0214d4cbe WorkQueue.Messages removed (for now) 2019-12-04 23:26:15 -06:00
Justin Swanson
b1ebd3c362 Removed IUserIntervention.Resume 2019-12-04 23:14:40 -06:00
Justin Swanson
760461ab3e Made lots of error classes members public gets 2019-12-04 23:11:15 -06:00
Justin Swanson
e946fc7ea4 Made Utils.LogToFile private. Removed ExceptionToString 2019-12-04 23:07:44 -06:00
Justin Swanson
bf87746e69 Utils.ErrorThrow added for when wanting to throw the exception 2019-12-04 22:58:02 -06:00
Justin Swanson
2c47f54752 IException, GenericException
Adds ability to wrap an existing exception and push it through the pipe
2019-12-04 22:57:05 -06:00
Timothy Baldridge
f67a235274 Logs and exceptions as classes 2019-12-04 16:17:02 -07:00
erri120
bc8dc65f29
Archives tagged with WABBAJACK_VORTEX_MANUAL will now be correctly detected and added to the modlist 2019-12-04 13:36:56 +01:00
erri120
036572f7db
Fixed SteamHandler Directory not found exception 2019-12-04 11:02:47 +01:00
Justin Swanson
ae05eb90d4 Ignore warning CS1998, mark CS4014 as error 2019-12-03 18:59:53 -06:00
Justin Swanson
299ee0041d Removed vestigial Utils status subject 2019-12-03 17:49:59 -06:00
Justin Swanson
17c38b897c Made some WorkQueue members non-static 2019-12-03 17:49:56 -06:00
Justin Swanson
4945f95066 PMap return swapped to array 2019-12-03 17:49:52 -06:00
Justin Swanson
0dc0c11e9f Filepicker bugfix for it not opening to current selected file/folder 2019-12-02 23:38:14 -06:00
Justin Swanson
1a5e052aef Install config no longer breaks if pointed to bad modlist 2019-12-02 23:38:06 -06:00
erri120
f4b3ba9a72
Created GetBySteamID function for the GameRegistry 2019-12-02 17:43:05 +01:00
erri120
694a5b8f8d
.exe files can be extracted with innounp after being tested 2019-12-01 14:57:28 +01:00
erri120
5bf73e637a
Re-added innounp 2019-12-01 13:22:23 +01:00
Timothy Baldridge
fa9431b001 Join threads after aborting in work queue 2019-11-30 14:57:59 -07:00
Timothy Baldridge
86733dd0f5
Merge pull request #221 from Noggog/mode-selection-browser-revamp
Mode-Selection and Browser Revamp
2019-11-30 06:09:53 -07:00
erri120
c15ab95517
SteamHandler: added LoadWorkshopItems function 2019-11-30 12:20:26 +01:00
erri120
7d9c80aef3
SteamHandler will skip broken acf files 2019-11-30 11:31:41 +01:00
Justin Swanson
107527311d Resource loading fixes 2019-11-29 17:56:56 -06:00
Timothy Baldridge
3ea10777e0 Switched CPU status into a blue-color-in-the-background style progress bar. Removed "CPU X" in the status, filter CPU lists to only contain non "Waiting" status 2019-11-28 10:30:19 -07:00
Timothy Baldridge
23a2f5e50f
Merge pull request #212 from wabbajack-tools/better-progress-bars
Macro-level progress bar updates.
2019-11-24 17:22:30 -07:00
Timothy Baldridge
3976d7e526 Macro-level progress bar updates. 2019-11-24 16:03:36 -07:00
Justin Swanson
5533b14cda Initial one-window setup 2019-11-24 16:01:13 -06:00
Justin Swanson
ece11e9f41 Compiler-side progress bars wired up again 2019-11-23 21:17:38 -06:00
erri120
899c7e4966
Downgraded ReactiveUI to 10.5.30 2019-11-23 19:50:56 +01:00
Timothy Baldridge
2afcb83456 Switch directory deleting back to use a shell process. It's the only 100% reliable method I've found. 2019-11-23 10:37:24 -07:00
erri120
bd13d15a81
Updated dependencies of main projects 2019-11-23 17:03:02 +01:00
erri120
b5871a3468
Updated all main projects to .NET 4.8.0 2019-11-23 16:50:09 +01:00
erri120
0b958f5f9b
Changed all relative references to use SolutionDir 2019-11-23 16:47:05 +01:00
Timothy Baldridge
d636d06ced Added extensions to the game enum, fixed the cache server (again) 2019-11-22 15:00:34 -07:00
Timothy Baldridge
8a680a8f14 Several fixes for compilation and caching. 2019-11-21 22:19:42 -07:00
Timothy Baldridge
0ddcaa8241 Fix bug in time conversion, implement update endpoint for nexus cache 2019-11-21 17:41:01 -07:00
Timothy Baldridge
1ee439c7c1 Better selection of patch file sources 2019-11-21 14:32:58 -07:00
erri120
4eec277955
Fixed naming in Wabbajack.Common 2019-11-21 16:49:14 +01:00
erri120
7583703239
Simplified names in Wabbajack.Common 2019-11-21 16:04:48 +01:00
erri120
a31ea20657
Removed unused imports from Wabbajack.Common 2019-11-21 15:26:08 +01:00
erri120
97b7524030
Created READMEs for most projects 2019-11-21 15:11:08 +01:00
Timothy Baldridge
7188a926af Cache disk speeds for better performance 2019-11-20 17:04:01 -07:00
Timothy Baldridge
27964f0348 Set the queue size during installation based on the disk performance. Abort installation if there isn't enough disk space to perform the installation. 2019-11-20 16:39:03 -07:00
Timothy Baldridge
a8d8d20a99 Several fixes that came up during testing.
* Fixed hashing progress bars
* Wired up the CPUStatus to the UI during installation
* Fixed xxHashing
* Verified modlist optimization works on a real modlist (noise)
* Added an optimizer test for extra files created by the user left in the install directory.
2019-11-19 17:15:46 -07:00
Timothy Baldridge
549d32579c
Merge pull request #190 from erri120/add-morrowind
Re-added Morrowind
2019-11-18 14:42:23 -07:00
erri120
fbb90d698e
Re-added Morrowind 2019-11-18 20:31:55 +01:00
erri120
bb2661f968
Changed ToDescriptionString to return toString if no description is present 2019-11-18 18:06:17 +01:00
Timothy Baldridge
0c78680c09 Abstract the base components of compilers/installers into a single abstract class 2019-11-17 16:48:32 -07:00
erri120
ed2a6c5592
Updated GOGHandler with new check for RequiredFiles 2019-11-17 15:00:40 +01:00
erri120
76db3cafea
Fixed typo 2019-11-17 15:00:40 +01:00
erri120
1e303a8339
Added RequiredFiles property to GameMetaData 2019-11-17 15:00:39 +01:00
erri120
e9a3030c91
Removed Morrowind from Game enum 2019-11-17 15:00:37 +01:00
erri120
e845f767e6
Fixed LoadAllGames failing when no GOGIDs List exist 2019-11-17 15:00:37 +01:00
Timothy Baldridge
702de2cfbe
Merge pull request #183 from Noggog/some-styling
Some Styling
2019-11-17 06:56:05 -07:00
Justin Swanson
856d19ec4e Removed weird ReactiveUI reference
Seemed to have a weird hardwired DLL reference, in addition to the NuGet
2019-11-17 01:51:10 -06:00
Justin Swanson
cafba5ff81 FilePickerVM ExistCheckOption /w IfNotEmpty features
Some paths aren't an error condition when the path is completely empty
2019-11-17 01:05:27 -06:00
Timothy Baldridge
2e2ced6023 Updated work queue reporting 2019-11-16 23:02:09 -07:00
Timothy Baldridge
d92d05dbf8 Merge remote-tracking branch 'origin/master' into compiler-update-streams 2019-11-16 21:16:51 -07:00
Timothy Baldridge
baab601f09 Rework Work queue to be non-static 2019-11-16 21:16:42 -07:00
Justin Swanson
4978e55e04 VortexCompilerVM staging and downloads picker wiring 2019-11-16 21:09:46 -06:00
Justin Swanson
dec8707ff2 Vortex Compilation game folder location commands 2019-11-16 19:42:42 -06:00
Justin Swanson
228bb3d070 VortexCompiler game selection combobox work 2019-11-16 18:41:59 -06:00
Timothy Baldridge
11cd96693a Compiles, working through the tests 2019-11-15 17:01:37 -07:00
Timothy Baldridge
4ffb533bc0
Merge pull request #174 from Noggog/random-refactors
Random refactors
2019-11-15 05:23:01 -07:00
Justin Swanson
deafaf5ebd Adjusted Game enum capitalization
C# standard is camel case, and the other enum values were that way, too.  KOTOR kept as is, as it's an acronym
2019-11-14 23:45:43 -06:00
Justin Swanson
9f86f3466d Made GameMetaData Games dictionary readonly 2019-11-14 23:43:58 -06:00
Justin Swanson
52517dc3e4 Some compiler VM startup optimizations 2019-11-14 22:59:12 -06:00
Justin Swanson
b31f336ddb Lots of compiler backend changes to support multiple
CompilerVM is lightweight now, with sub view models per mod manager mode
2019-11-14 20:25:09 -06:00
Timothy Baldridge
490bd4de5a Fix tests 2019-11-14 15:58:29 -07:00
erri120
82e93e04d1 Added Witcher 1,2,3 to GameMetaData 2019-11-14 15:34:11 -07:00
erri120
8f9a27d8f5 Changed int GOGID to List<int> GOGIDs for multiple id support 2019-11-14 15:34:11 -07:00
erri120
8ef41beb59 Added SWKOTOR and SWKOTOR2 to GameMetaData 2019-11-14 15:34:11 -07:00
erri120
12d4e2acda Added Starbound to GameMetaData 2019-11-14 15:34:11 -07:00
erri120
8309592ed2 Added Divinity Orginal Sins 2 Definitive Edition to GameMetaData 2019-11-14 15:34:11 -07:00
erri120
1d35bf5ed1 Created AdditionalFolders property 2019-11-14 15:34:11 -07:00
erri120
b02d9b50a2 Added Divinity Original Sins 2 to the Games list 2019-11-14 15:34:11 -07:00
erri120
2a92131025 Created GetByNexusName function for the GameRegistry 2019-11-14 15:34:10 -07:00
erri120
6062088681 Removed unused imports 2019-11-14 15:34:10 -07:00
erri120
de40b8ce32 Added GOGID property 2019-11-14 15:34:10 -07:00
erri120
ccafda79b2 Created GOG Handler 2019-11-14 15:34:10 -07:00
erri120
8de6c9d239 Fixed bad steam lib paths 2019-11-14 15:34:10 -07:00
erri120
2044a6728a Created SteamHandler 2019-11-14 15:34:10 -07:00
erri120
2497d5ba88 Added Steam ids 2019-11-14 15:34:10 -07:00
erri120
18a36437bc Added supported mod manager and Darkest Dungeon 2019-11-14 15:34:10 -07:00
erri120
dae96640d8 Created ModManager enum, moved enums to Wabbajack.Common 2019-11-14 15:34:10 -07:00
Timothy Baldridge
133fa2febd
Async VFS Implementation (#171)
* New VFS implementation can load/save/analyze files. All in a immutable, lock free (mostly) async parallel manner.

* VFS indexing is complete

* Can stage files

* Can extract VirtualFiles into PortableFiles and create contexts from PortableFiles

* Code cleanup
2019-11-14 15:22:53 -07:00
Timothy Baldridge
0cb6f2fa69 Make File Extractor async 2019-11-11 22:33:32 -07:00
Timothy Baldridge
d9ca38cdff
Make BSA Routines async (#168)
* Make BSA routines async
2019-11-11 21:35:07 -07:00
Timothy Baldridge
1ad74b450e
Merge pull request #166 from wabbajack-tools/bsa-tests
Add unit tests for BSAs
2019-11-11 06:17:48 -07:00
Timothy Baldridge
c6953bb42d
Merge pull request #165 from wabbajack-tools/async-work-queue
Async work queue
2019-11-11 06:17:36 -07:00
Timothy Baldridge
c3daf2b1bc Add unit tests for BSAs 2019-11-10 23:15:52 -07:00
Timothy Baldridge
35897bbf92 cleanup 2019-11-10 21:10:26 -07:00
Timothy Baldridge
e61b203d4c Final bits for CSP backend 2019-11-10 20:47:25 -07:00
Timothy Baldridge
e164d7a8bf Change exception printing, and unset read-only during move. 2019-11-10 16:03:10 -07:00
Timothy Baldridge
6639e9946b Other variants of pipelines 2019-11-10 15:36:04 -07:00
Timothy Baldridge
f66427c2ea Add a bunch of unit tests fixed a nasty race condition in the put/take handlers 2019-11-10 15:15:52 -07:00