Commit Graph

120 Commits

Author SHA1 Message Date
Timothy Baldridge
1099d68ef7 Fix race condition with Do and async 2020-05-25 13:41:16 -06:00
Timothy Baldridge
191f321dc2 VirtualFile now useses Async IO exclusively 2020-05-25 10:30:47 -06:00
dependabot-preview[bot]
96cd064a13
Bump System.Collections.Immutable from 1.7.0 to 1.7.1
Bumps [System.Collections.Immutable](https://github.com/dotnet/corefx) from 1.7.0 to 1.7.1.
- [Release notes](https://github.com/dotnet/corefx/releases)
- [Commits](https://github.com/dotnet/corefx/commits)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-05-13 07:13:19 +00:00
Timothy Baldridge
80b98935fa Move xxHash and VFS cache data into RocksDB so we don't pollute folders and can cache more files 2020-05-12 15:28:09 -06:00
Timothy Baldridge
2b5adb3d8e Allow any file with the correct BSA headers to be extracted with the BSA extractor. 2020-05-11 06:52:23 -06:00
Timothy Baldridge
77acf01fa0 Debug code and fixes for BA2 duplicate file bug 2020-05-02 14:15:36 -06:00
Timothy Baldridge
c96665cde3 Print the archive being extracted when analysis fails. 2020-04-30 06:17:18 -06:00
Justin Swanson
2b0866b4f3 Adjusted TempFolder init concepts
Wasn't being awaited in the App ctor.  Swapped for a static factory that can be awaited to ensure initialization is complete
2020-04-27 22:17:06 -05:00
Timothy Baldridge
d9612609e8
Merge pull request #751 from wabbajack-tools/2.0-release-day-bug-fixes
Bug fixes encountered during the 2.0 release
2020-04-27 06:16:46 -06:00
erri120
b1011bd63e
Fixed path with whitespace in archive not being extracted 2020-04-27 13:06:57 +02:00
Timothy Baldridge
b475334d4b Fix BSA copy errors 2020-04-26 22:49:54 -06:00
Timothy Baldridge
fee49cca12 Fix VFS FullPath errors 2020-04-24 07:56:03 -06:00
Timothy Baldridge
00fdc132f3 Fix 7zip file pattern matching 2020-04-17 07:06:28 -06:00
Timothy Baldridge
fb8a56aedb Prefix 7zip path names with a slash 2020-04-16 22:39:49 -06:00
Timothy Baldridge
bb9ef89dee BSA archives are now lazily extracted.
7Zip extracted archives now only extract the fewest files required.
Audited the uses of .Wait
Lazily init the VFS cleaning
2020-04-16 21:52:19 -06:00
Timothy Baldridge
a0cfeb51bd Fix the empty log bug and UI hanging on VFS cleanup 2020-04-15 21:02:39 -06:00
Timothy Baldridge
a11508e4b6
Merge branch 'master' into missing-delete-awaits 2020-04-10 17:20:29 -06:00
Justin Swanson
69f18f2e22 Context.Stage's return action swapped to Func<Task>
So that its internal delete directory call can be awaited
2020-04-10 14:44:36 -05:00
Timothy Baldridge
712438c6a6 Several ProcessStartInfo -> ProcessHelper conversions 2020-04-10 06:58:55 -06:00
Timothy Baldridge
d4e7311115 Merge master 2020-04-09 16:36:07 -06:00
erri120
f98711d48c
Added extraction support for non-inno exes 2020-04-09 12:48:08 +02:00
Timothy Baldridge
45254b0055 No more MessagePack, Json is love, Json is life 2020-04-06 14:48:54 -06:00
Justin Swanson
0550dd751c Missing awaits 2020-04-03 16:41:17 -06:00
Timothy Baldridge
85b39d5dcc Fix some more race conditions in tests 2020-04-03 16:41:17 -06:00
Timothy Baldridge
129f6b4fc2 Cleaned up a bunch of warnings and errors 2020-04-03 16:40:52 -06:00
Timothy Baldridge
21189fd8e8 Most santiy tests pass 2020-04-03 16:40:51 -06:00
Timothy Baldridge
035e376a09 Only 246 errors left in Wabbajack.Lib 2020-04-03 16:38:05 -06:00
Timothy Baldridge
72d77bef1a VFS Tests pass 2020-04-03 16:37:28 -06:00
Timothy Baldridge
2b45210159 One test passes 2020-04-03 16:37:28 -06:00
Timothy Baldridge
80195b5620 WIP, VFS compiles, need to work on VFS tests 2020-04-03 16:37:27 -06:00
Timothy Baldridge
b37728eefd Tons of WIP changes for paths 2020-04-03 16:37:27 -06:00
Timothy Baldridge
3b895f4dbb WIP, converted Hashes to a Hash struct 2020-04-03 16:37:27 -06:00
Timothy Baldridge
2a14932092 Move around namespaces so BSA routines can use Common namespaces. Make BA2 creation use memory mapped files instead of memory streams 2020-03-04 17:02:16 -07:00
Timothy Baldridge
186facb066 Fixes for WorkBase 2020-03-03 22:23:08 -07:00
Timothy Baldridge
8d13a4c455 Swap HttpClient over to SocketsHttpHandler 2020-02-14 15:23:27 -07:00
Timothy Baldridge
b77db18bfa Fix a bunch of issues with compilation, indexing and VFS loading performance 2020-02-14 06:30:58 -07:00
Timothy Baldridge
c991f077c7 Make x64 the default in all cases, make published builds self-contained 2020-02-01 10:33:00 -07:00
Justin Swanson
638542c617 .NET Standard 2.1, .NET Core 3.1 2020-01-25 20:48:13 -06:00
Justin Swanson
5db84a6ee6 Replaced all File.OpenWrite calls /w .Open(FileMode.Create)
File.OpenWrite is equivalent to FileMode.OpenOrCreate, which caused errors when replacing a file that was larger previously
2020-01-18 14:52:09 -06:00
Timothy Baldridge
5393ed4a84 Can now get meta.ini data from a download state 2020-01-10 21:15:53 -07:00
Timothy Baldridge
a1258b5ea9 Index all archives from all modlists 2020-01-10 06:16:41 -07:00
Timothy Baldridge
51aa59ecee Integrate build server file indexing into the main app 2020-01-09 21:47:06 -07:00
Timothy Baldridge
965ca113ed VFS as .net Standard 2020-01-09 16:07:42 -07:00
Timothy Baldridge
717ad8c70a Rework WJ caching, move cache server routines to MongoDB 2020-01-01 09:19:06 -07:00
Justin Swanson
5f9d47eb5c Added status report for VFS.Indexing 2019-12-22 16:49:40 -06:00
Justin Swanson
bcd7c95caf Merge branch 'master' into async-exploration 2019-12-12 19:49:40 -06:00
Timothy Baldridge
2c69a9ec9b bump all the deps!! 2019-12-12 16:00:19 -07:00
Justin Swanson
729b5128da Random .Results swapped to async 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
ae05eb90d4 Ignore warning CS1998, mark CS4014 as error 2019-12-03 18:59:53 -06:00
Justin Swanson
4945f95066 PMap return swapped to array 2019-12-03 17:49:52 -06:00
erri120
694a5b8f8d
.exe files can be extracted with innounp after being tested 2019-12-01 14:57:28 +01:00
Timothy Baldridge
3976d7e526 Macro-level progress bar updates. 2019-11-24 16:03:36 -07: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
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
29f829329f Analyze distinct files 2019-11-21 22:25:54 -07:00
Timothy Baldridge
8a680a8f14 Several fixes for compilation and caching. 2019-11-21 22:19:42 -07:00
erri120
6892eced57
Removed unused imports from Wabbajack.VirtualFileSystem 2019-11-21 15:27:10 +01:00
erri120
97b7524030
Created READMEs for most projects 2019-11-21 15:11:08 +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
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
baab601f09 Rework Work queue to be non-static 2019-11-16 21:16:42 -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
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
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