Commit Graph

93 Commits

Author SHA1 Message Date
Ben Marsh
f48053c6f1 Missing file for Blake3 hashes.
[CL 16781033 by Ben Marsh in ue5-main branch]
2021-06-24 22:00:56 -04:00
Ben Marsh
c02be00304 Horde: Basic implementation of storage API.
Current limitations:

* Only supports a filesystem backend
* No garbage collection
* Refs are stored in the database, and do not automatically expire.
* Validation of refs is slow and does not cache any data.

[CL 16778495 by Ben Marsh in ue5-main branch]
2021-06-24 16:57:21 -04:00
Ben Marsh
abe425743c Horde: Add TypeConverter for IoHash objects, to allow passing them via MVC routes.
[CL 16757331 by Ben Marsh in ue5-main branch]
2021-06-23 11:06:33 -04:00
Joe Kirchoff
eca62dcdf1 Horde: Move base RemoteExecution classes to EpicGames.Horde.Common
Fix IoHash Digest size being set to the size of the hash rather than the size of the hashed data

#rb Ben.Marsh
#rnx

[CL 16729492 by Joe Kirchoff in ue5-main branch]
2021-06-21 12:36:14 -04:00
Ben Marsh
72cc30dec1 Missing file for CB serialization.
[CL 16708503 by Ben Marsh in ue5-main branch]
2021-06-17 14:41:07 -04:00
jonathan adamczewski
e065cdf9cb BuildUtilities:
- Add Unreal.DotnetPath
- in Unreal.FindRootDirectory(), fix assembly path case sooner (allows UBT to run even if I type 'Engine' as 'engine')

EpicGames.Core:
- Add RuntimePlatform.ExeExtension

#trivial
#jira none

[CL 16704658 by jonathan adamczewski in ue5-main branch]
2021-06-17 10:42:37 -04:00
Ben Marsh
2c4b316eb5 Add missing configurations for EpicGames.Serialization.Tests.
[CL 16703657 by Ben Marsh in ue5-main branch]
2021-06-17 08:59:42 -04:00
Ben Marsh
c7bcab5731 Add C# compact binary library. Includes almost all functionality from C++ library, and test suite.
[CL 16703410 by Ben Marsh in ue5-main branch]
2021-06-17 08:22:02 -04:00
jonathan adamczewski
dbea0a3827 RuntimePlatform:
Add an enum and accessor for the current runtime platform

#jira none
#trivial

[CL 16698756 by jonathan adamczewski in ue5-main branch]
2021-06-16 19:40:48 -04:00
Joe Kirchoff
30be55d9d1 Horde: Move Horde protobuf schemas to Shared/EpicGames.Horde.Common
#rb Ben.Marsh
#rnx

[CL 16691739 by Joe Kirchoff in ue5-main branch]
2021-06-16 13:40:52 -04:00
Joe Kirchoff
b4b06d3119 EpicGames.Core: Ensure ManagedProcess threads start before Process.Exited callback runs, to handle cases where the spawned process completes extremely quickly
#rb trivial

[CL 16682085 by Joe Kirchoff in ue5-main branch]
2021-06-15 19:31:11 -04:00
Ben Marsh
0428c9e85b Join stdout/stderr threads before closing the buffering thread.
[CL 16669144 by Ben Marsh in ue5-main branch]
2021-06-14 23:23:34 -04:00
Ben Marsh
ed9295fb88 Swallow exceptions when copying output from stdout if a process is killed.
[CL 16668977 by Ben Marsh in ue5-main branch]
2021-06-14 22:58:32 -04:00
Ben Marsh
62a32a650b Manually copy stdout/stderr from managed framework processes asynchronously, in order to prevent garbled output when converting to/from strings.
[CL 16662357 by Ben Marsh in ue5-main branch]
2021-06-14 15:06:17 -04:00
joe kirchoff
b1dbb8de60 UnrealBuildTool: Remove LocalExecutor and use ParallelExecutor for all host platforms
Update ManagedProcess to capture stderr if using C# Process objects

#jira UE-117670
#rb Ben.Marsh

[CL 16647451 by joe kirchoff in ue5-main branch]
2021-06-11 17:19:03 -04:00
Ben Marsh
2af1d9cf54 Horde: Add a custom Json schema library that supports polymorphic types and System.Text.Json.
[CL 16646294 by Ben Marsh in ue5-main branch]
2021-06-11 16:08:31 -04:00
joe kirchoff
adb0960f09 [Backout] - CL16642253
#fyi Joe.Kirchoff
Original CL Desc
-----------------------------------------------------------------
UnrealBuildTool: Remove LocalExecutor and use ParallelExecutor for all host platforms
Update ManagedProcess to capture stderr if using C# Process objects

#jira UE-117670
#rb Ben.Marsh
#preflight 60c2a1d3730f8a000185ae66
#preflight 60c2a5bab1a4a300012ea45d

[CL 16642682 by joe kirchoff in ue5-main branch]
2021-06-11 12:13:57 -04:00
Joe Kirchoff
96db72f088 UnrealBuildTool: Remove LocalExecutor and use ParallelExecutor for all host platforms
Update ManagedProcess to capture stderr if using C# Process objects

#jira UE-117670
#rb Ben.Marsh
#preflight 60c2a1d3730f8a000185ae66
#preflight 60c2a5bab1a4a300012ea45d

[CL 16642253 by Joe Kirchoff in ue5-main branch]
2021-06-11 11:40:36 -04:00
jonathan adamczewski
0af1ea99af Add a common C# method for detecting the current host platform to EpicGames.Core, and move many a test to use that code.
#jira none
#rb joe.kirchoff

[CL 16593582 by jonathan adamczewski in ue5-main branch]
2021-06-08 17:01:23 -04:00
Ben Marsh
9d127c0f2f Change EpicGames.Perforce.Managed to use IoHash, simplifying the migration to using Jupiter for storage.
[CL 16592003 by Ben Marsh in ue5-main branch]
2021-06-08 15:51:04 -04:00
Ben Marsh
e100acb450 Add an IoHash library, allowing IoHash values to be computed from C#.
[CL 16591035 by Ben Marsh in ue5-main branch]
2021-06-08 15:25:40 -04:00
andrew firth
90e4596bd2 [P4VUtils] - add undo command
#review-16563620 @ben.Marsh @Marc.Audy
#rb ben.Marsh

[CL 16565952 by andrew firth in ue5-main branch]
2021-06-06 12:02:22 -04:00
Ben Marsh
d2f7a4d9e6 Horde: Automatically spawn a bundled copy of MongoDB if available. Data is stored in C:\ProgramData\Horde\Mongo by default.
[CL 16552409 by Ben Marsh in ue5-main branch]
2021-06-03 16:16:09 -04:00
Ben Marsh
df8f56b55f Horde: Catch exceptions thrown when waiting for tasks to complete.
[CL 16547590 by Ben Marsh in ue5-main branch]
2021-06-03 10:55:49 -04:00
Ben Marsh
21568f7a37 Add FileReference.WriteAllTextAsync() implementations.
[CL 16533497 by Ben Marsh in ue5-main branch]
2021-06-02 09:18:12 -04:00