Commit Graph

22 Commits

Author SHA1 Message Date
Devin Doucette
82621298bf DDC: Added -ExportBuildOutput to include outputs in exported builds
#preflight 63d804445c69f453c111cfd0
#rb Zousar.Shaker

[CL 23917590 by Devin Doucette in ue5-main branch]
2023-01-30 17:44:07 -05:00
Devin Doucette
9aee9a4bd8 DDC: Fixed unsafe type cast warnings
#preflight 6317fc04a20b67673b1de7c3
#rb Zousar.Shaker
#rnx

[CL 21850770 by Devin Doucette in ue5-main branch]
2022-09-07 10:37:16 -04:00
Devin Doucette
0b7aa65637 Replaced uses of _U8SV with UTF8TEXTVIEW
#preflight 626310ac006fa20b683d17b9
#rb Zousar.Shaker
#rnx

[CL 19901490 by Devin Doucette in ue5-main branch]
2022-04-25 09:36:34 -04:00
devin doucette
cdedb37d66 DDC: Converted the Build API to UTF-8 where appropriate
#jira UE-133382
#rb Zousar.Shaker
#rnx
#preflight 61e798ee3f00a0a23ef78c49

#ROBOMERGE-AUTHOR: devin.doucette
#ROBOMERGE-SOURCE: CL 18655307 in //UE5/Release-5.0/... via CL 18655320 via CL 18655322
#ROBOMERGE-BOT: UE5 (Release-Engine-Test -> Main) (v900-18638592)

[CL 18655349 by devin doucette in ue5-main branch]
2022-01-19 00:27:48 -05:00
devin doucette
b4e6fce55b DDC: Changed FCacheRecord to be a collection of values
The structure with a value and attachments is an artifact of an early design where the record *was* a compact binary package. That design changed months ago and it now simplifies the cache record significantly to make it a collection of values without specific "value" and "attachment" types.

#rb Zousar.Shaker
#rnx
#preflight 61d8b94ed17842e547def37a

#ROBOMERGE-AUTHOR: devin.doucette
#ROBOMERGE-SOURCE: CL 18553971 in //UE5/Release-5.0/... via CL 18553976
#ROBOMERGE-BOT: STARSHIP (Release-Engine-Staging -> Release-Engine-Test) (v899-18417669)

[CL 18553977 by devin doucette in ue5-release-engine-test branch]
2022-01-07 23:22:29 -05:00
devin doucette
35393bbb2b DDC: Split FPayload into separate FValue and FValueId types
A payload was conceptually a value with an ID. That has been formalized by removing the ID from the payload and having separate FValue and FValueId types. This separation cleans up the API in a few areas, and provides a more natural path to providing a basic key/value API.

#rb Zousar.Shaker
#rnx
#preflight 61d704c04c252480ca284d61

#ROBOMERGE-AUTHOR: devin.doucette
#ROBOMERGE-SOURCE: CL 18531844 in //UE5/Release-5.0/... via CL 18531856
#ROBOMERGE-BOT: STARSHIP (Release-Engine-Staging -> Release-Engine-Test) (v899-18417669)

[CL 18531864 by devin doucette in ue5-release-engine-test branch]
2022-01-06 11:05:57 -05:00
devin doucette
559754c569 DDC: Removed accessors for raw data from FCacheRecord
Use GetValue().GetData().Decompress() in place of GetValue(), or the equivalent for GetAttachment(Id). The removed accessors kept a cache of the decompressed payload and required synchronization to be safe to call from multiple threads.

#rb Zousar.Shaker
#rnx
#preflight 61b7a41efc570891338e17aa

#ROBOMERGE-AUTHOR: devin.doucette
#ROBOMERGE-SOURCE: CL 18447623 in //UE5/Release-5.0/... via CL 18448002
#ROBOMERGE-BOT: STARSHIP (Release-Engine-Staging -> Release-Engine-Test) (v897-18405271)

[CL 18448136 by devin doucette in ue5-release-engine-test branch]
2021-12-13 15:24:25 -05:00
devin doucette
cea98e6ab4 DDC: Split build diagnostics into messages and logs
Messages are deterministic output recorded explicitly by the build function. Logs will be automatically captured from the output log and are not necessarily deterministic. The presence of logs in a build output automatically disables caching of the build output.

#rb Zousar.Shaker
#rnx

#ROBOMERGE-AUTHOR: devin.doucette
#ROBOMERGE-SOURCE: CL 18286155 in //UE5/Release-5.0/... via CL 18286173
#ROBOMERGE-BOT: STARSHIP (Release-Engine-Staging -> Release-Engine-Test) (v895-18170469)

[CL 18286201 by devin doucette in ue5-release-engine-test branch]
2021-11-24 13:25:25 -05:00
devin doucette
c39e30cfd7 Added missing includes of DerivedDataPayload.h found by the non-unity build
#rb none
#rnx

#ROBOMERGE-SOURCE: CL 17426590 in //UE5/Main/...
#ROBOMERGE-BOT: STARSHIP (Main -> Release-Engine-Test) (v865-17346139)

[CL 17426595 by devin doucette in ue5-release-engine-test branch]
2021-09-03 17:11:57 -04:00
devin doucette
7ae4b64cd6 DDC: Removed IBuild::Load[Type] in favor of exported functions
#rb Zousar.Shaker
#rnx

#ROBOMERGE-SOURCE: CL 17083958 in //UE5/Main/...
#ROBOMERGE-BOT: STARSHIP (Main -> Release-Engine-Test) (v853-17066230)

[CL 17083970 by devin doucette in ue5-release-engine-test branch]
2021-08-06 11:58:24 -04:00
devin doucette
733d9c1a97 DDC: Added conversions between FPayloadId and FCbObjectId
#rb Zousar.Shaker
#rnx

#ROBOMERGE-SOURCE: CL 17071877 in //UE5/Main/...
#ROBOMERGE-BOT: STARSHIP (Main -> Release-Engine-Test) (v853-17066230)

[CL 17071890 by devin doucette in ue5-release-engine-test branch]
2021-08-05 13:37:13 -04:00
steve robb
fdd30297da FNames can now be constructed with UTF8CHAR strings.
UTF-8 support added to FString::AppendChars() and made able to correctly handle variably-encoded source strings (both wider and narrower than TCHAR).
FUTF8ToTCHAR now accepts either UTF8CHAR* or ANSICHAR* for better compatibility.
FUtf8StringView now binds to UTF8CHAR* or any UTF8CHAR range, and can be constructed via a _U8SV string literal suffix.
CompactBinary now supports UTF-8.
Miscellaneous other UTF8CHAR fixes.

#rb devin.doucette

#ROBOMERGE-SOURCE: CL 17017066 in //UE5/Main/...
#ROBOMERGE-BOT: STARSHIP (Main -> Release-Engine-Test) (v839-17012307)

[CL 17017071 by steve robb in ue5-release-engine-test branch]
2021-08-02 12:15:42 -04:00
Devin Doucette
b0c757dd31 DDC: Switched to operator[] and AsView() on compact binary types
#rb Zousar.Shaker
#rnx

[CL 16553598 by Devin Doucette in ue5-main branch]
2021-06-03 17:28:08 -04:00
Devin Doucette
eb2cda6fba Added conversions and constructors to/from 12-byte arrays for FCbObjectId and DerivedData::FPayloadId
#rb Zousar.Shaker
#rnx

[CL 16536271 by Devin Doucette in ue5-main branch]
2021-06-02 13:06:45 -04:00
Devin Doucette
80dba78363 DDC: Factored out function name validation
[CL 16509761 by Devin Doucette in ue5-main branch]
2021-05-31 12:24:20 -04:00
Devin Doucette
11970dd120 DDC: Reordered RawHash and RawSize fields in FBuildOutput for consistency
#rb trivial
#rnx

[CL 16489629 by Devin Doucette in ue5-main branch]
2021-05-27 15:03:26 -04:00
Devin Doucette
c434ed7dc5 DDC: Excluded payloads from build outputs with errors
The payloads are not used for failed builds and will cause unnecessary overhead to copy over the network for remote builds.

#rb Zousar.Shaker
#rnx

[CL 16420326 by Devin Doucette in ue5-main branch]
2021-05-21 12:24:29 -04:00
Devin Doucette
c20b3b16cf DDC: Made name and function asserts consistent and reordered members for debuggability
#rb Zousar.Shaker
#rnx
#preflight 60a6d5afb7ccb00001d42b6e

[CL 16414174 by Devin Doucette in ue5-main branch]
2021-05-20 21:54:47 -04:00
Devin Doucette
2a6278e430 DDC: Fixed a build error caught by Clang
#rb trivial
#rnx

[CL 16333256 by Devin Doucette in ue5-main branch]
2021-05-14 15:08:12 -04:00
Devin Doucette
8ce8977949 DDC: Added optional versions of BuildAction, BuildDefinition, BuildOutput, CacheRecord
- Optional versions are now returned from operations that may fail.
- Fixed a bug in the cache where a null record could be dereferenced.
- Improved validation when loading build types.

#rb Zousar.Shaker
#rnx

[CL 16332909 by Devin Doucette in ue5-main branch]
2021-05-14 14:47:11 -04:00
Devin Doucette
56502c549e DDC: Organized functions for consistency and fixed includes of Templates/Function.h
#rb trivial
#rnx
#preflight 609c4284dc97da000146a5e1

[CL 16306812 by Devin Doucette in ue5-main branch]
2021-05-12 17:57:54 -04:00
Devin Doucette
cf09b53604 DDC: Added UE::DerivedData::FBuildOutput
FBuildOutput and the associated builder type define the output of a derived data build as a collection of payloads and diagnostic messages.

#rb Zousar.Shaker
#rnx
#preflight 609c0fc05b35c60001cbc2e3

[CL 16304655 by Devin Doucette in ue5-main branch]
2021-05-12 15:46:19 -04:00