Many hyperlinks are disabled.
Use anonymous login
to enable hyperlinks.
Overview
| Comment: | Add the --no-http-compression option to "fossil sync" and similar. Extra explanation of compressed and uncompressed values in the response output from the sync. |
|---|---|
| Timelines: | family | ancestors | descendants | both | trunk |
| Files: | files | file ages | folders |
| SHA3-256: |
2b8ac4d15b4385dc360ae0799267cff5 |
| User & Date: | drh 2021-07-14 12:52:35.774 |
References
|
2023-11-16
| ||
| 19:04 | Update transfer summaries in unversioned tests. Summaries changed in [2b8ac4d15b] and [0b7af9d865]. check-in: b94d8c4479 user: preben tags: test-fixes-2.24 | |
Context
|
2021-07-15
| ||
| 00:17 | Minor orthographic correction in settings help description. check-in: 66c309537b user: andybradford tags: trunk | |
|
2021-07-14
| ||
| 23:58 | Recreate the ability to view all the settings easily in one command that was lost with [f74f7014c2271beb] and enhance the output to show whether or not a setting is versioned. Closed-Leaf check-in: b572b76604 user: andybradford tags: verbose-settings-help | |
| 23:05 | A value of "auto" for --branchcolor (commit) or --bgcolor (branch new) instructs Fossil to choose the color automatically. This makes it possible to have private branches that are not colored orange by default. Closed-Leaf check-in: ac42160241 user: danield tags: private-non-orange | |
| 12:52 | Add the --no-http-compression option to "fossil sync" and similar. Extra explanation of compressed and uncompressed values in the response output from the sync. check-in: 2b8ac4d15b user: drh tags: trunk | |
|
2021-07-13
| ||
| 15:21 | When doing a verbose sync/pull/push, also print total uncompressed bytes sent/received, to match displayed statistics for each round trip. check-in: 9abbd35b8e user: danield tags: trunk | |
Changes
Changes to src/sync.c.
| ︙ | ︙ | |||
144 145 146 147 148 149 150 151 152 153 154 155 156 157 |
}
if( find_option("private",0,0)!=0 ){
*pSyncFlags |= SYNC_PRIVATE;
}
if( find_option("verbose","v",0)!=0 ){
*pSyncFlags |= SYNC_VERBOSE;
}
url_proxy_options();
clone_ssh_find_options();
if( !uvOnly ) db_find_and_open_repository(0, 0);
db_open_config(0, 1);
if( g.argc==2 ){
if( db_get_boolean("auto-shun",0) ) configSync = CONFIGSET_SHUN;
}else if( g.argc==3 ){
| > > > | 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 |
}
if( find_option("private",0,0)!=0 ){
*pSyncFlags |= SYNC_PRIVATE;
}
if( find_option("verbose","v",0)!=0 ){
*pSyncFlags |= SYNC_VERBOSE;
}
if( find_option("no-http-compression",0,0)!=0 ){
*pSyncFlags |= SYNC_NOHTTPCOMPRESS;
}
url_proxy_options();
clone_ssh_find_options();
if( !uvOnly ) db_find_and_open_repository(0, 0);
db_open_config(0, 1);
if( g.argc==2 ){
if( db_get_boolean("auto-shun",0) ) configSync = CONFIGSET_SHUN;
}else if( g.argc==3 ){
|
| ︙ | ︙ | |||
204 205 206 207 208 209 210 211 212 213 214 215 216 217 | ** ** Options: ** ** -B|--httpauth USER:PASS Credentials for the simple HTTP auth protocol, ** if required by the remote website ** --from-parent-project Pull content from the parent project ** --ipv4 Use only IPv4, not IPv6 ** --once Do not remember URL for subsequent syncs ** --private Pull private branches too ** --project-code CODE Use CODE as the project code ** --proxy PROXY Use the specified HTTP proxy ** -R|--repository REPO Local repository to pull into ** --ssl-identity FILE Local SSL credentials, if requested by remote ** --ssh-command SSH Use SSH as the "ssh" command | > | 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 | ** ** Options: ** ** -B|--httpauth USER:PASS Credentials for the simple HTTP auth protocol, ** if required by the remote website ** --from-parent-project Pull content from the parent project ** --ipv4 Use only IPv4, not IPv6 ** --no-http-compression Do not compress HTTP traffic ** --once Do not remember URL for subsequent syncs ** --private Pull private branches too ** --project-code CODE Use CODE as the project code ** --proxy PROXY Use the specified HTTP proxy ** -R|--repository REPO Local repository to pull into ** --ssl-identity FILE Local SSL credentials, if requested by remote ** --ssh-command SSH Use SSH as the "ssh" command |
| ︙ | ︙ | |||
254 255 256 257 258 259 260 261 262 263 264 265 266 267 | ** details on the URL formats. ** ** Options: ** ** -B|--httpauth USER:PASS Credentials for the simple HTTP auth protocol, ** if required by the remote website ** --ipv4 Use only IPv4, not IPv6 ** --once Do not remember URL for subsequent syncs ** --proxy PROXY Use the specified HTTP proxy ** --private Push private branches too ** -R|--repository REPO Local repository to push from ** --ssl-identity FILE Local SSL credentials, if requested by remote ** --ssh-command SSH Use SSH as the "ssh" command ** -v|--verbose Additional (debugging) output | > | 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 | ** details on the URL formats. ** ** Options: ** ** -B|--httpauth USER:PASS Credentials for the simple HTTP auth protocol, ** if required by the remote website ** --ipv4 Use only IPv4, not IPv6 ** --no-http-compression Do not compress HTTP traffic ** --once Do not remember URL for subsequent syncs ** --proxy PROXY Use the specified HTTP proxy ** --private Push private branches too ** -R|--repository REPO Local repository to push from ** --ssl-identity FILE Local SSL credentials, if requested by remote ** --ssh-command SSH Use SSH as the "ssh" command ** -v|--verbose Additional (debugging) output |
| ︙ | ︙ | |||
299 300 301 302 303 304 305 306 307 308 309 310 311 312 | ** details on the URL formats. ** ** Options: ** ** -B|--httpauth USER:PASS Credentials for the simple HTTP auth protocol, ** if required by the remote website ** --ipv4 Use only IPv4, not IPv6 ** --once Do not remember URL for subsequent syncs ** --proxy PROXY Use the specified HTTP proxy ** --private Sync private branches too ** -R|--repository REPO Local repository to sync with ** --ssl-identity FILE Local SSL credentials, if requested by remote ** --ssh-command SSH Use SSH as the "ssh" command ** -u|--unversioned Also sync unversioned content | > | 304 305 306 307 308 309 310 311 312 313 314 315 316 317 318 | ** details on the URL formats. ** ** Options: ** ** -B|--httpauth USER:PASS Credentials for the simple HTTP auth protocol, ** if required by the remote website ** --ipv4 Use only IPv4, not IPv6 ** --no-http-compression Do not compress HTTP traffic ** --once Do not remember URL for subsequent syncs ** --proxy PROXY Use the specified HTTP proxy ** --private Sync private branches too ** -R|--repository REPO Local repository to sync with ** --ssl-identity FILE Local SSL credentials, if requested by remote ** --ssh-command SSH Use SSH as the "ssh" command ** -u|--unversioned Also sync unversioned content |
| ︙ | ︙ |
Changes to src/xfer.c.
| ︙ | ︙ | |||
1818 1819 1820 1821 1822 1823 1824 1825 1826 1827 1828 1829 1830 1831 |
#define SYNC_FROMPARENT 0x0040 /* Pull from the parent project */
#define SYNC_UNVERSIONED 0x0100 /* Sync unversioned content */
#define SYNC_UV_REVERT 0x0200 /* Copy server unversioned to client */
#define SYNC_UV_TRACE 0x0400 /* Describe UV activities */
#define SYNC_UV_DRYRUN 0x0800 /* Do not actually exchange files */
#define SYNC_IFABLE 0x1000 /* Inability to sync is not fatal */
#define SYNC_CKIN_LOCK 0x2000 /* Lock the current check-in */
#endif
/*
** Floating-point absolute value
*/
static double fossil_fabs(double x){
return x>0.0 ? x : -x;
| > | 1818 1819 1820 1821 1822 1823 1824 1825 1826 1827 1828 1829 1830 1831 1832 |
#define SYNC_FROMPARENT 0x0040 /* Pull from the parent project */
#define SYNC_UNVERSIONED 0x0100 /* Sync unversioned content */
#define SYNC_UV_REVERT 0x0200 /* Copy server unversioned to client */
#define SYNC_UV_TRACE 0x0400 /* Describe UV activities */
#define SYNC_UV_DRYRUN 0x0800 /* Do not actually exchange files */
#define SYNC_IFABLE 0x1000 /* Inability to sync is not fatal */
#define SYNC_CKIN_LOCK 0x2000 /* Lock the current check-in */
#define SYNC_NOHTTPCOMPRESS 0x4000 /* Do not compression HTTP messages */
#endif
/*
** Floating-point absolute value
*/
static double fossil_fabs(double x){
return x>0.0 ? x : -x;
|
| ︙ | ︙ | |||
2125 2126 2127 2128 2129 2130 2131 2132 2133 2134 2135 2136 2137 2138 |
fflush(stdout);
/* Exchange messages with the server */
if( (syncFlags & SYNC_CLONE)!=0 && nCycle==0 ){
/* Do not send a login card on the first round-trip of a clone */
mHttpFlags = 0;
}else{
mHttpFlags = HTTP_USE_LOGIN;
}
if( http_exchange(&send, &recv, mHttpFlags, MAX_REDIRECTS, 0) ){
nErr++;
go = 2;
break;
}
| > > > | 2126 2127 2128 2129 2130 2131 2132 2133 2134 2135 2136 2137 2138 2139 2140 2141 2142 |
fflush(stdout);
/* Exchange messages with the server */
if( (syncFlags & SYNC_CLONE)!=0 && nCycle==0 ){
/* Do not send a login card on the first round-trip of a clone */
mHttpFlags = 0;
}else{
mHttpFlags = HTTP_USE_LOGIN;
}
if( syncFlags & SYNC_NOHTTPCOMPRESS ){
mHttpFlags |= HTTP_NOCOMPRESS;
}
if( http_exchange(&send, &recv, mHttpFlags, MAX_REDIRECTS, 0) ){
nErr++;
go = 2;
break;
}
|
| ︙ | ︙ | |||
2671 2672 2673 2674 2675 2676 2677 |
fossil_warning("*** time skew *** server is slow by %s",
db_timespan_name(-rSkew));
g.clockSkewSeen = 1;
}
fossil_force_newline();
fossil_print(
| | | | 2675 2676 2677 2678 2679 2680 2681 2682 2683 2684 2685 2686 2687 2688 2689 2690 2691 2692 2693 |
fossil_warning("*** time skew *** server is slow by %s",
db_timespan_name(-rSkew));
g.clockSkewSeen = 1;
}
fossil_force_newline();
fossil_print(
"%s done, wire bytes sent: %lld received: %lld ip: %s\n",
zOpType, nSent, nRcvd, g.zIpAddr);
if( syncFlags & SYNC_VERBOSE ){
fossil_print(
"Uncompressed payload sent: %lld received: %lld\n", nUncSent, nUncRcvd);
}
transport_close(&g.url);
transport_global_shutdown(&g.url);
if( nErr && go==2 ){
db_multi_exec("DROP TABLE onremote; DROP TABLE unk;");
manifest_crosslink_end(MC_PERMIT_HOOKS);
content_enable_dephantomize(1);
|
| ︙ | ︙ |