Commit Graph

10 Commits

Author SHA1 Message Date
Ben Marsh
15bde3f1c8 UBT: Add better messaging for modules that need to have a private PCH set. Now detects the likely PCH using the same method as legacy code and includes it as a suggestion.
#rb none

[CL 4234176 by Ben Marsh in Dev-Core branch]
2018-07-26 09:58:23 -04:00
Ben Marsh
bd61fc6100 UBT: Add utility functions to the log class to allow formatting errors and warnings in Visual Studio output format (eg. File(Line): warning: Message)
#rb none
#rnx

[CL 4230521 by Ben Marsh in Dev-Core branch]
2018-07-24 20:53:38 -04:00
Ben Marsh
dd6f3b0c59 WorkspaceTool: Improve resilience when long-running actions are interrupted.
* Before moving a large number of files, the workspace state is saved with information about files in the source and target locations, allowing recovery of files in either location.
* The workspace state can be tagged as dirty, meaning that some cache or workspace items may not be correct. If a workspace is loaded with this flag, we check integrity of all files in each category before continuing.
* Gathering files to add and remove is done in a two separate operations.
* Workspace state is captured after every 256mb is synced, to avoid large resyncs if an error occurs.
* If any attempt to move a file from the cache, or copy a file within the workspace fails, we fall back to re-syncing the item from Perforce.

Also other minor improvements:

* Always write out log file, and keep old log files for 3 days.
* Added dump command, to list contents of workspace and cache.

#rb none

[CL 4133164 by Ben Marsh in Dev-Core branch]
2018-06-15 14:30:23 -04:00
Ben Marsh
8211b33877 WorkspaceTool: Reduce unnecessary logging of status messages when console output is not redirected.
#rb none
#rnx

[CL 4127932 by Ben Marsh in Dev-Core branch]
2018-06-13 14:43:33 -04:00
Ben Marsh
b45cddbc7f UAT: Detect when stdout is redirected and prevent using backspace characters to move the cursor.
#rb none

[CL 4126132 by Ben Marsh in Dev-Core branch]
2018-06-12 17:05:39 -04:00
Ben Marsh
15f7cf42a7 Prevent doubled-up lines when writing status updates with console log verbosity.
#rb none
#rnx

[CL 4117091 by Ben Marsh in Dev-Core branch]
2018-06-06 18:40:48 -04:00
Ben Marsh
adef91feea UAT: Add support for setting a status message through the log class. Allows writing transient messages (eg. progress messages) which will be cleared out before writing other messages. Best used through the LogStatusScope class, which can set a status message for the duration of a using() block.
As part of this change, the console no longer has to be added as a dedicated trace listener. Since we already special-case this listener when formatting log output, it's easier to just keep the implementation separate to the other trace listeners.

#rb none

[CL 4111304 by Ben Marsh in Dev-Core branch]
2018-06-04 17:23:16 -04:00
Ben Marsh
587cd6e902 Merging CL 4109567 from 4.20 branch (fix to console colors on Mac after a warning or error)
#rb none
#rnx

[CL 4109606 by Ben Marsh in Dev-Core branch]
2018-06-04 12:16:20 -04:00
Ben Marsh
54ffe52b11 Add a Log.WriteException() method to dump an exception message to the console (and write the exception trace to the log)
#rb none

[CL 4083236 by Ben Marsh in Dev-Core branch]
2018-05-21 11:31:16 -04:00
Ben Marsh
e398d8954e Move the Log class from UBT to DotNetUtilities.
#rb none

[CL 4082591 by Ben Marsh in Dev-Core branch]
2018-05-20 18:49:37 -04:00