Commit Graph

37 Commits

Author SHA1 Message Date
yuriy odonnell
ab5c5654f9 unsync - Use an regular ordered map to store file list in the manifest
* Ordered file list results in manfiests that can themselves be chunked and incrementally downloaded
* Add a command line parameter to specify storage location for pack command

[CL 29354873 by yuriy odonnell in ue5-main branch]
2023-11-02 01:12:47 -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
e82582b637 unsync - Groundwork for pack command
* This can be used to generate a compressed pack of a directory
* Supports using p4 have output to limit what is included in the pack

[CL 29223576 by yuriy odonnell in ue5-main branch]
2023-10-29 11:26:35 -04:00
yuriy odonnell
9972ec2091 unsync - Several Linux compatibility fixes (more still required for full support)
* Implement SetFileMtime and SetFileReadOnly
* Only allow --flag command line syntax, not /flag

[CL 29058493 by yuriy odonnell in ue5-main branch]
2023-10-24 23:10:40 -04:00
yuriy odonnell
149778ff91 unsync - Always use the specified proxy server for performing authentication instead of auto-selected closest, fix few other minor issues
* Use correct TLS subject after auto-selecting a proxy (previously the root proxy address was used)

[CL 29051065 by yuriy odonnell in ue5-main branch]
2023-10-24 15:07:43 -04:00
yuriy odonnell
3cf6f9a0c0 unsync - Add search query to discover available builds through proxy
#rb none

[CL 28166018 by yuriy odonnell in ue5-main branch]
2023-09-22 20:13:26 -04:00
yuriy odonnell
54072f0aee unsync - Set a 60 second timeout on socket recv operations by default
* Use --no-timeout flag to disable

#rb none

[CL 27942659 by yuriy odonnell in ue5-main branch]
2023-09-15 22:24:38 -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
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
a02ea83d83 unsync - Use multiple concurrent connections during file download query
* Bump version to 1.0.54

#rb none

[CL 27714879 by yuriy odonnell in ue5-main branch]
2023-09-08 12:19:57 -04:00
yuriy odonnell
f455aaecc7 unsync - Add support for HTTP HEAD requests
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]
2023-09-07 23:20:15 -04:00
yuriy odonnell
7a75fdfe69 unsync - Trim old cached manifest files during sync
#rb none

[CL 27541251 by yuriy odonnell in ue5-main branch]
2023-08-31 18:07:30 -04:00
yuriy odonnell
01b2df4dba unsync - Add quick login option
* Skip remote token validation in --quick mode, just check expiry locally

#rb none

[CL 27538554 by yuriy odonnell in ue5-main branch]
2023-08-31 17:15:46 -04:00
yuriy odonnell
8c7bdecb04 unsync - Add support for direct manifest download from proxy server (bypassing SMB)
* 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]
2023-08-31 16:20:09 -04:00
yuriy odonnell
c9dc86cb37 unsync - Add dedicated login command and make output more machine-friendly
* Make TLS a mandatory required library
* Redirect human-readable log messages of login and query commands to stderr, while only directing machine-readable messages to stdout

#rb none

[CL 27471298 by yuriy odonnell in ue5-main branch]
2023-08-29 19:18:18 -04:00
yuriy odonnell
c33f84e382 unsync - Groundwork for list query
#jira UE-192913
#rb none

[CL 27341587 by yuriy odonnell in ue5-main branch]
2023-08-24 10:44:55 -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
74e05813ad unsync - Skip automatic proxy selection for query command, use dedicated ping endpoint, refactor query helpers and download result mechanism
#rb none

[CL 27153277 by yuriy odonnell in ue5-main branch]
2023-08-16 16:34:36 -04:00
yuriy odonnell
c45fdca170 unsync - Automatically find closest proxy server by default
* Use --no-proxy-select to skip server selection
* Bump version to 1.0.52

#rb none

[CL 26157514 by yuriy odonnell in ue5-main branch]
2023-06-21 15:01:35 -04:00
yuriy odonnell
bec1e643ac unsync - Groundwork for mount command
#rb none

[CL 26154100 by yuriy odonnell in ue5-main branch]
2023-06-21 13:12:26 -04:00
Yuriy ODonnell
f4a7dc800b unsync - Improved manifest info command
* Allow --include and --exclude options
* Compute approximate patch size from manifest A to B

#rb none
#preflight skip

[CL 25437799 by Yuriy ODonnell in ue5-main branch]
2023-05-11 18:34:56 -04:00
Yuriy ODonnell
bb51087f42 unsync - Finish up --scavenge mode implementation, bump version to 1.0.51
* Count scavenged blocks as "base" data for stats/telemetry
* Gracefully handle missing/invalid scavenge root path
* Cancel reading blocks from a particular source if a hash mismatch was found

#rb none
#jira UE-178864
#preflight skip

[CL 25326911 by Yuriy ODonnell in ue5-main branch]
2023-05-03 17:28:38 -04:00
Yuriy ODonnell
7389b826b6 unsync - Initial implementation of the "scavenge" mode which aims to reduce download times by reusing data outside of the final sync directory
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]
2023-04-25 17:41:49 -04:00
Yuriy ODonnell
1702de7c3f unsync - Add available disk check before starting sync, add anonymized machine name to telemetry
#rb none
#preflight none

[CL 22490002 by Yuriy ODonnell in ue5-main branch]
2022-10-12 20:45:24 -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