* Use explicit file attribute cache when possible, to avoid redundant filesystem ops in some cases
* Skip generating stable manifest signature during normal sync
* Fix few redundant memory allocations
* Add few log events around potentially expensive ops
[CL 29159251 by yuriy odonnell in ue5-main branch]
* Use instead of std::filesystem::relative() when possible, to avoid filesystem operations (lexically_relative() does not handle the case where only one of the input paths is UNC)
[CL 29057958 by yuriy odonnell in ue5-main branch]
* Derive output filename if one was not provided explicitly
* Include all encountered files and directories in the search query, not just leaf
* Bump version to 1.0.60
#rb none
[CL 28547863 by yuriy odonnell in ue5-main branch]
* Change EFileMode from regular enum to flags
* Add GetAnonymizedMachineId helper function
* Use MachineGuid registry key on Windows
#rb none
[CL 28160398 by yuriy odonnell in ue5-main branch]
Also minor fixes and improvements:
* Fix error code handling when connecting a socket
* Fix some of the naming convention violations
* Add --print-http-header option to login command
#rb none
[CL 27702511 by yuriy odonnell in ue5-main branch]
* Add --login flag to sync command
* Add in-process token cache
* Add auth token when quering server features
* Use direct download path when supported by server
#jira UE-192913
#rb none
[CL 27535921 by yuriy odonnell in ue5-main branch]
This is useful for people who want to download each data set into a uniquely named directory, instead of always patching the last downloaded version.
Current implementation is highly experimental and should only be used for testing purposes.
#jira UE-178864
#rb none
#preflight skip
[CL 25190443 by Yuriy ODonnell in ue5-main branch]