Commit Graph

29 Commits

Author SHA1 Message Date
yuriy odonnell
8a833fe9ff unsync - Add Horde artifact listing syntax backwards-compatible with filesystem based paths
* Specify artifact filters using `KeyA=ValueA;KeyB=ValueB` syntax
* Specify artifact listing formating and directory structure using `{FieldA}{dir}{FieldB}` syntax, where {FieldA/B} are substituted with artifact metadata and {dir} creates a virtual sub-directory
* Missing fields are substituted with `[unknown]`

[CL 34660906 by yuriy odonnell in ue5-main branch]
2024-06-25 18:31:35 -04:00
yuriy odonnell
fbd81d0c69 unsync - Add --protocol argument to explicitly specify the server protocol flavor to use
[CL 34207269 by yuriy odonnell in ue5-main branch]
2024-06-07 13:00:34 -04:00
yuriy odonnell
c3f2a984c2 unsync - Groundwork for downloading Horde artifacts
* Recognize Horde artifact URLs
* Download and decode manifest from Horde

[CL 34189213 by yuriy odonnell in ue5-main branch]
2024-06-07 00:03:58 -04:00
yuriy odonnell
5eee19aea6 unsync - Add experimental support for pure HTTP proxy server API, instead of custom binary protocol
[CL 34107282 by yuriy odonnell in ue5-main branch]
2024-06-04 17:15:24 -04:00
yuriy odonnell
d8ac614d60 unsync - Add a command to decode binary manifest to Json
[CL 34079955 by yuriy odonnell in ue5-main branch]
2024-06-03 18:26:41 -04:00
Yuriy ODonnell
0979b26d4a unsync - Add an abstraction for remote file system listing and manifest file downloads
#jira none

[CL 33925622 by Yuriy ODonnell in ue5-main branch]
2024-05-27 12:44:20 -04:00
Yuriy ODonnell
8812f02854 unsync - Further split utility code into dedicated modules
#jira none

[CL 33917971 by Yuriy ODonnell in ue5-main branch]
2024-05-26 13:37:37 -04:00
Yuriy ODonnell
0acabe5490 unsync - Added a mechanism for unified proxy server and source directory specification to simply sync command line
Example command line `unsync.exe sync https://foo.bar/directory/path <dest>` is equivalent to `unsync.exe sync --proxy https://foo.bar directory/path <dest>`

#jira none

[CL 33569778 by Yuriy ODonnell in ue5-main branch]
2024-05-10 00:54:55 -04:00
Yuriy ODonnell
bb18878804 unsync - Fix manifest search, output HTTP status codes on query errors
#jira none

[CL 33507065 by Yuriy ODonnell in ue5-main branch]
2024-05-08 01:56:22 -04:00
yuriy odonnell
c52aa8a73c unsync - Implement basic incremental sync in unpack command and named snapshots
[CL 29799570 by yuriy odonnell in ue5-main branch]
2023-11-16 21:05:20 -05:00
yuriy odonnell
09e98afaaf unsync - Store file revision control IDs in the manifest, when available
[CL 29384889 by yuriy odonnell in ue5-main branch]
2023-11-02 18:27:10 -04:00
yuriy odonnell
4efaac4719 unsync - Tweak default logging level to output minimal information by default
* Add --silent flag to explicitly turn off all console logging except warnings and errors
* Output command line when starting logging to file

[CL 29289476 by yuriy odonnell in ue5-main branch]
2023-10-31 16:34:04 -04:00
yuriy odonnell
7fe8c5a1e7 unsync - Store read-only file status in the manifest and apply it after sync, tweak background task balancing and other minor optimizations
* 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]
2023-10-26 20:34:50 -04:00
yuriy odonnell
220463e242 unsync - Output search query results as simple string array json
* Escape strings when formatting adhoc json output
* Bump version to 1.0.57

#rb none

[CL 28171508 by yuriy odonnell in ue5-main branch]
2023-09-23 01:59:00 -04:00
yuriy odonnell
0008562522 unsync - Add EFileMode::IgnoreDryRun mode to always allow certain file write operations
* 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]
2023-09-22 18:11:34 -04:00
yuriy odonnell
7b470612fc unsync - Implement OpenUrlInDefaultBrowser for mac and linux, fix various issues with direct download on those platforms
#rb none

[CL 27861855 by yuriy odonnell in ue5-main branch]
2023-09-13 20:30:26 -04:00
yuriy odonnell
abf5a85ab6 unsync - Fix various runtime issues on linux
* Wide string formatting
* Path normalization

#rb none

[CL 27856783 by yuriy odonnell in ue5-main branch]
2023-09-13 18:33:59 -04:00
yuriy odonnell
4fd271fff2 unsync - Fix clang/linux build errors
#rb none

[CL 27821338 by yuriy odonnell in ue5-main branch]
2023-09-13 02:10:23 -04:00
yuriy odonnell
a3bd8e9bb6 unsync - Add messages in addition to error codes in various places, fix CLI11 non-ascii printing, add --version argument
#rb none

[CL 27781280 by yuriy odonnell in ue5-main branch]
2023-09-11 22:49:17 -04:00
yuriy odonnell
37b1da7fde unsync - Groundwork for user authentication
#jira UE-192913
#rb none

[CL 27227985 by yuriy odonnell in ue5-main branch]
2023-08-18 21:41:29 -04:00
Yuriy ODonnell
788c8102f6 unsync - Fix resolving mapped network drive paths
Explicitly specify UNIVERSAL_NAME_INFOW instead of UNIVERSAL_NAME_INFO that depends on the compiler flags

#rb none
#preflight skip

[CL 25152835 by Yuriy ODonnell in ue5-main branch]
2023-04-21 16:29:05 -04:00
Yuriy ODonnell
da9b247942 unsync - Fix assert due to non-absolute path to unsync.cer in some cases
#rb none
#preflight skip

[CL 21988269 by Yuriy ODonnell in ue5-main branch]
2022-09-13 14:13:45 -04:00
Yuriy ODonnell
2cfe8f70ad unsync - Resolve letter-based source paths to universal form when syncing
#rb Robert.Millar
#preflight skip

[CL 21861981 by Yuriy ODonnell in ue5-main branch]
2022-09-07 16:50:30 -04:00
Yuriy ODonnell
4b06bf80b0 unsync - NormalizeFilenameUtf8 now also makes path absolute
#preflight skip

[CL 20938650 by Yuriy ODonnell in ue5-main branch]
2022-07-04 23:36:49 -04:00
Yuriy ODonnell
481883b4a3 unsync - Add a special case for utf8<->wide string conversion when all characters are ASCII
#rb none
#preflight skip

[CL 20924899 by Yuriy ODonnell in ue5-main branch]
2022-07-01 22:15:28 -04:00