Commit Graph

310 Commits

Author SHA1 Message Date
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
f7a36bf20e Fix staging error with new patching code 2019-11-21 15:35:59 -07:00
Timothy Baldridge
1ee439c7c1 Better selection of patch file sources 2019-11-21 14:32:58 -07:00
erri120
b930724560
Fixed naming in Wabbajack.Lib 2019-11-21 16:51:57 +01:00
erri120
8342f00a53
Simplified names in BSA2Reader nad ModListMetadata 2019-11-21 16:06:17 +01:00
erri120
e4f17a81b8
Removed unused imports from Wabbajack.Lib 2019-11-21 15:25:56 +01:00
erri120
97b7524030
Created READMEs for most projects 2019-11-21 15:11:08 +01:00
Timothy Baldridge
046907499b Few bug fixes to the caching code, don't allow nulls to get into the cache. 2019-11-21 06:28:37 -07:00
Timothy Baldridge
e10112bff9 Nexus has dirty caches, so we have to work around it 2019-11-20 22:57:48 -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
c93b039912
Merge pull request #193 from tr4wzified/zEditfix
Change general _mo2Compiler back to installer to fix merges
2019-11-19 07:21:19 -07:00
trawzified
c403394592 Change general _mo2Compiler back to installer to fix merges 2019-11-19 14:04:17 +01:00
Timothy Baldridge
641dd36d7f Implement a better HTTP caching server 2019-11-18 22:10:07 -07:00
Timothy Baldridge
ce0e3da7cb
Merge pull request #189 from tr4wzified/win7downloadsfix
Change KnownFoldersType to Downloads instead of DownloadsLocalized, f…
2019-11-18 11:31:16 -07:00
Timothy Baldridge
7773d033ea
Merge pull request #187 from erri120/nitpicking-1
Nitpicking stuff #1
2019-11-18 11:30:47 -07:00
tr4wzified
7b20b40ce0 Change KnownFoldersType to Downloads instead of DownloadsLocalized, fixes Windows 7 crash 2019-11-18 18:53:11 +01:00
erri120
bb2661f968
Changed ToDescriptionString to return toString if no description is present 2019-11-18 18:06:17 +01:00
erri120
2fde106b92
ModList list from GitHub will display the description of a game instead of toString if available 2019-11-18 16:46:55 +01:00
Timothy Baldridge
13de3913da Optimize modlists before installation. Also fixed an async bug in VFS. 2019-11-17 22:21:24 -07:00
Timothy Baldridge
8d5843ecc6 Rename Compiler/Installer to MO2Compiler/MO2Installer, other code cleanup as well 2019-11-17 17:17:06 -07: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
e7a644ea6f
Removed IgnoreMissingFiles = true 2019-11-17 17:30:05 +01:00
erri120
7dbe31581f
Disabled mods will now be ignored in the VortexCompiler 2019-11-17 17:26:04 +01:00
erri120
ac178ed0c5
Moved core Compile functions to ACompiler 2019-11-17 16:00:33 +01:00
erri120
b21fdfbd8c
VortexCompiler will now export MD and HTML files 2019-11-17 15:54:07 +01:00
erri120
24378ac553
VortexCompiler include Properties 2019-11-17 15:45:21 +01:00
erri120
c22cc20fc8
Rebase fixes 2019-11-17 15:28:01 +01:00
erri120
a10a3ff1ff
ModList staging folder will be deleted when finished 2019-11-17 15:01:13 +01:00
erri120
bfbdc10860
Fixed Game not being set and vortex file not being ignored 2019-11-17 15:01:13 +01:00
erri120
03251804c1
Fixed typo 2019-11-17 15:00:37 +01:00
erri120
61b91ad460
Created an abstract Installer class and moved core functions over 2019-11-17 15:00:36 +01:00
Timothy Baldridge
2e2ced6023 Updated work queue reporting 2019-11-16 23:02:09 -07:00
Timothy Baldridge
9db982a13d Merge latest from master 2019-11-16 21:30:22 -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
30437ba9c3 VortexCompiler ctor made more explicit 2019-11-16 16:10:13 -06:00
Timothy Baldridge
a3b01b1353 Rework nexus key caching 2019-11-15 21:02:37 -07:00
Timothy Baldridge
11cd96693a Compiles, working through the tests 2019-11-15 17:01:37 -07:00
Timothy Baldridge
a8dd59227d Several fixes and performance improvements 2019-11-15 16:13:27 -07:00
Timothy Baldridge
a4c629ddc4
Merge branch 'master' into vfs-integration-redux 2019-11-15 07:19:39 -07:00
Timothy Baldridge
3d4947a27a All sanity checks pass 2019-11-15 06:41:08 -07:00
Timothy Baldridge
bb4354ad20 TestDirectMatch passes! 2019-11-15 06:37:04 -07:00
Timothy Baldridge
f6a27ac094 Much simpler integration 2019-11-15 06:06:34 -07:00
Justin Swanson
22d1f29a8d Removed duplicate member 2019-11-14 23:49:00 -06:00
Justin Swanson
9580301a4f Moved some trivial member instantiations to in-line
No need to make every sub compiler create these
2019-11-14 23:47:55 -06:00
erri120
7a0eae0127 Fixed TestVortexStackSerialization failing 2019-11-14 15:34:11 -07:00
erri120
6dc3fd4085 Fixed Vortex downloads folder not being detected 2019-11-14 15:34:11 -07:00
erri120
c41e1999f8 Vortex folder will be detected and set if found 2019-11-14 15:34:11 -07:00
erri120
f391254f1d Created Vortex Test for StackSerialization 2019-11-14 15:34:11 -07:00
Timothy Baldridge
9fad28f70a Don't cache MD5 searches
We don't have expiry for MD5 searches, so we won't cache them for now
2019-11-14 15:34:11 -07:00
erri120
c6b4155126 Fixed leftovers 2019-11-14 15:34:11 -07:00
erri120
f7ee563095 Removed Vortex/MO2 compiler reference in ACompiler in favor of casting 2019-11-14 15:34:11 -07:00
erri120
3f58803b4d Fixed zEditIntegrationTests failing 2019-11-14 15:34:11 -07:00
erri120
fa18a45ebc Refractored the creation of meta files and fixed downloads being included in the modlist 2019-11-14 15:34:11 -07:00
erri120
9272e9d67c VortexInstaller will now make use of the paths set by the InstallerView 2019-11-14 15:34:11 -07:00
erri120
60f9b33265 Working VortexInstaller 2019-11-14 15:34:11 -07:00
erri120
3ad63bda39 Created VortexInstaller 2019-11-14 15:34:11 -07:00
erri120
80068fdd7d Created AddExternalFolder function to index the AdditionalFolders for the game 2019-11-14 15:34:11 -07:00
erri120
9feed217ef Removed RunIfGame Step in favor of inline conditional statements 2019-11-14 15:34:11 -07:00
erri120
791438eea6 Created RunIfGame CompilationStep 2019-11-14 15:34:11 -07:00
erri120
a6016813f0 Added a comment 2019-11-14 15:34:11 -07:00
erri120
061e46572d VortexCompiler: Added support for different staging/downloads folder 2019-11-14 15:34:11 -07:00
erri120
00cacfd01f VortexCompiler: Added more logging 2019-11-14 15:34:11 -07:00
erri120
e23ca453a5 VortexCompiler: Added ModList metadata 2019-11-14 15:34:11 -07:00
erri120
5b1ea3d448 Added null check to NexusDownloader:GetDownloaderState 2019-11-14 15:34:11 -07:00
erri120
6c1177d8e1 Fixed typo 2019-11-14 15:34:10 -07:00
erri120
2a92131025 Created GetByNexusName function for the GameRegistry 2019-11-14 15:34:10 -07:00
erri120
233c85b36d Implemented new caching system with GetModInfoFromMD5 2019-11-14 15:34:10 -07:00
erri120
4900423f70 Fixed rebase issues 2019-11-14 15:34:10 -07:00
erri120
ece05901c2 Fixed stack compilation endless loop 2019-11-14 15:34:10 -07:00
erri120
22dbc7cab3 Rerolled a commit 2019-11-14 15:34:10 -07:00
erri120
3fb698789c Working VortexCompiler 2019-11-14 15:34:10 -07:00
erri120
0fa2be2c1d Fixed typo 2019-11-14 15:34:10 -07:00
erri120
1041f1ecde Using MD5 hash for getting mod info 2019-11-14 15:34:10 -07:00
erri120
68f800e783 Created GetModFiles NexusApi function 2019-11-14 15:34:10 -07:00
erri120
609c5d309b Game name will not be converted if it already is 2019-11-14 15:34:10 -07:00
erri120
1c9f960252 Created NexusFile class 2019-11-14 15:34:10 -07:00
erri120
f3b7b44d24 Fixed bad comment 2019-11-14 15:34:10 -07:00
erri120
bd3d753138 Created IncludeVortexDeployment Compilation Step 2019-11-14 15:34:10 -07:00
erri120
8d650fcbd9 Fixed some stuff 2019-11-14 15:34:10 -07:00
erri120
45ba7d4bce Updated zEditIntegration to use the new ACompiler 2019-11-14 15:34:10 -07:00
erri120
8eb2f34faa Updated all CompilationSteps to use the new ACompiler 2019-11-14 15:34:10 -07:00
erri120
917a9e296c Updated ACompilationStep and IStackStep to use new ACompiler 2019-11-14 15:34:10 -07:00
erri120
dcf91c0737 Created VortexCompiler and updated MO2 Compiler 2019-11-14 15:34:10 -07:00
erri120
f9b0976ef1 Created abstract Compiler class 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
9617ca4982
Fix how we clean the download cache (#170) 2019-11-14 14:53:29 -07:00
Timothy Baldridge
d9ca38cdff
Make BSA Routines async (#168)
* Make BSA routines async
2019-11-11 21:35:07 -07:00
Timothy Baldridge
3a66a35fe3 fix in readonly changes 2019-11-10 16:21:51 -07:00
Timothy Baldridge
e164d7a8bf Change exception printing, and unset read-only during move. 2019-11-10 16:03:10 -07:00
Timothy Baldridge
ba8e423f26
Merge pull request #157 from wabbajack-tools/better-downloader-progress
Feed archive info into the HTTP downloader
2019-11-08 08:28:01 -07:00
Timothy Baldridge
6996556642 Feed archive info into the HTTP downloader so we get proper downloader progress bars. 2019-11-07 22:19:39 -07:00
Timothy Baldridge
91738f9cec
Merge pull request #156 from erri120/property-ceras-fix
Added PropertyFile to CerasConfig
2019-11-07 20:58:37 -07:00
Timothy Baldridge
2fb857a093 Unify caching to reduce the number of Nexus calls on the build server 2019-11-07 18:36:01 -07:00
erri120
3833a5bae2
Added PropertyFile to CerasConfig 2019-11-07 18:26:04 +01:00
Timothy Baldridge
fdfe9d36f0
Merge pull request #154 from wabbajack-tools/move-dont-copy
Move files into the install folder
2019-11-06 21:56:16 -07:00
Timothy Baldridge
9d609fb0ca Move files into the install folder instead of copying them, should drastically reduce IO during installation. 2019-11-06 21:43:30 -07:00
Timothy Baldridge
4d68a0c5cb
Merge pull request #153 from wabbajack-tools/manual-download-guidence
Manual Download Guidence
2019-11-06 21:42:43 -07:00
Timothy Baldridge
040289f16c Fix bug with file moving in manual mode 2019-11-06 21:23:43 -07:00
Timothy Baldridge
a9f9209a1a
Merge pull request #152 from wabbajack-tools/detailed-modlist-metadata
Emit more detailed modlist metadata
2019-11-06 17:40:14 -07:00
Timothy Baldridge
cb667ed4f8 Fix broken interaction with http-downloader 2019-11-06 17:29:53 -07:00
Timothy Baldridge
1f0591d05e Download manual files first 2019-11-06 16:59:18 -07:00
Timothy Baldridge
e518f31a71 Enable guidence for users to download manual files. 2019-11-06 16:52:48 -07:00
Timothy Baldridge
7a28f813e8 Emit more detailed modlist metadata 2019-11-06 06:21:39 -07:00
Justin Swanson
9e8ea6d281 Initial settings systems
Waiting to do position/size implementation until new ModeSelection systems are finished
2019-11-05 21:22:38 -06:00
Justin Swanson
fa504a1b16 DictionaryExt. Other Ext files migrated to Common 2019-11-05 19:39:18 -06:00
Timothy Baldridge
eda43c0df6 Add modlist metadata to the compiler output and the list validation 2019-11-05 15:21:07 -07:00
Timothy Baldridge
f2efdeef9d Remove annoying warning message 2019-11-05 15:21:07 -07:00
Timothy Baldridge
3d9cf4cc65 Rework Nexus API caching logic to use build server cache 2019-11-05 15:21:07 -07:00
Timothy Baldridge
c43bcc7d89 wip 2019-11-05 15:21:07 -07:00
Timothy Baldridge
6ab49e380c Add modlist validation tests. 2019-11-05 15:21:07 -07:00
Timothy Baldridge
85d72968c3 reorder known types to not break old lists 2019-11-04 15:09:11 -07:00
Timothy Baldridge
b8471a41b3 Fixup missing .meta file when WJ uses a separate download folder 2019-11-03 21:36:25 -07:00
Justin Swanson
84d7eb0f49 Image cache and slideshow refactor 2019-11-03 00:01:19 -06:00
Justin Swanson
ecb789d088 Merge remote-tracking branch 'wabbajack-tools/master' into VM-split-and-styling 2019-11-02 18:41:37 -05:00
Timothy Baldridge
d01636eff8 set the install folder before checking ESMs 2019-11-02 17:20:41 -06:00
Justin Swanson
12daa32d4e All projects migrated to PackageReferences nuget systems 2019-11-02 17:57:51 -05:00
Justin Swanson
8eaec1eabb Merge branch 'VM-split-and-styling' 2019-11-02 17:13:12 -05:00
Timothy Baldridge
f33b018295 add mediafire state to CerasConfig 2019-11-02 15:20:05 -06:00
Timothy Baldridge
979334197f bump version, add check for Cleaned ESMs before install 2019-11-02 15:08:37 -06:00
Justin Swanson
2f8977feac Some additional library items
UserControlRx, FilePicker control, TaskExt.FireAndForget
2019-11-02 15:51:34 -05:00
Timothy Baldridge
a177a60c54 add support for .mohidden and /optional/ esps in zEdit integration 2019-11-02 14:32:40 -06:00
Timothy Baldridge
7e87e9fefd NOMATCH_INCLUDE after zEdit merges 2019-11-02 12:36:38 -06:00
Timothy Baldridge
9cbdbdfa0a add file state objects to serialization 2019-11-02 12:20:39 -06:00
Timothy Baldridge
51d1b32077 finish up zedit integration 2019-11-02 09:38:03 -06:00
Timothy Baldridge
610fea9d7f use xxHash64 hasing 2019-10-30 21:40:33 -06:00
Timothy Baldridge
6c79d0a9d2 Merge branch 'master' of https://github.com/halgari/wabbajack into programmable-stack 2019-10-30 20:25:14 -06:00
Timothy Baldridge
0151b219bf dump stack info to disk and load it during compilation 2019-10-30 20:24:42 -06:00
erri120
49ba23affe
Created ExtensionManager 2019-10-30 17:49:44 +01:00
Timothy Baldridge
eb6bf289a7 move compilation steps into separate files and abstract behind an interface 2019-10-30 06:29:06 -06:00
Timothy Baldridge
af1d4ff609
Merge pull request #126 from wabbajack-tools/end-to-end-tests
End to end tests
2019-10-29 16:40:05 -06:00
Timothy Baldridge
ae011ee7e4 add some validation to the installed modlist 2019-10-29 15:30:27 -06:00
erri120
08a831890e
Added BSAStateObject to KnownTypes list for Ceras serialization 2019-10-28 13:57:05 +01:00
erri120
81ccec3144
Added backwards compatibility for modlist.json 2019-10-27 14:59:23 +01:00
erri120
5128884b74
Changed KnownTypes 2019-10-27 14:55:32 +01:00
erri120
df3d6b4179
Created CerasConfig with KnownTypes 2019-10-27 14:55:31 +01:00
erri120
843228c09e
Using new Ceras options instead of JSON 2019-10-27 14:55:30 +01:00
erri120
d93fdf9b1f
Building and loading modlist will now use new Ceras functions 2019-10-27 14:55:30 +01:00
erri120
63574f9934
Added Ceras NuGet Package 2019-10-27 14:55:30 +01:00
Timothy Baldridge
0171843f56
Merge pull request #116 from wabbajack-tools/fix-tests-fix-web-remoting
fixes tests and adds support for media fire via web remoting
2019-10-27 05:12:49 -06:00
Justin Swanson
e2ff7efe76 Initial Compiler/Installer split for VM and Views 2019-10-24 23:36:58 -05:00
Timothy Baldridge
6126f3db8b navigateto hangs, source does not, why? I don't know 2019-10-24 21:02:32 -06:00
Timothy Baldridge
35f5730737 add files I forgot 2019-10-23 19:22:11 -06:00
Timothy Baldridge
49d49887a8 fixes tests and adds support for media fire via web remoting 2019-10-23 19:19:11 -06:00
erri120
9515947734
Changed version type to string 2019-10-23 19:00:45 +02:00
erri120
112bf5687f
Include Wabbajack fileversion in output 2019-10-23 18:33:53 +02:00
erri120
50e9c1a07f
Added WabbajackVersion field to Modlists 2019-10-23 18:13:41 +02:00
Timothy Baldridge
1882b9227b fixup some google download links so they properly download 2019-10-21 13:05:03 -06:00
Timothy Baldridge
60925a1f9f verified->official 2019-10-19 05:22:23 -06:00
Timothy Baldridge
7a0ef2a380 rework modlist metadata code to use static site json 2019-10-19 04:55:05 -06:00
Timothy Baldridge
7bc08df9bb add logo downloader for modlist metadata 2019-10-16 17:05:51 -06:00
Timothy Baldridge
65af535487 code cleanup 2019-10-16 15:36:14 -06:00
Timothy Baldridge
e4e307c4fd download dispatcher now also accepts urls as input 2019-10-16 05:44:45 -06:00
Timothy Baldridge
f06d3102ef fix sanity tests 2019-10-15 21:17:27 -06:00
Timothy Baldridge
518de4dacc pull the core of Wabbajack into Wabbajack.Lib so we can reuse it in other exes 2019-10-15 21:10:34 -06:00