1
0
mirror of https://github.com/rclone/rclone.git synced 2025-12-19 09:43:14 +00:00

Compare commits

...

15 Commits

Author SHA1 Message Date
Nick Craig-Wood
73bcae2245 Version v1.72.1 2025-12-10 12:54:18 +00:00
Nick Craig-Wood
e8d6de09c6 s3: add more regions for Selectel 2025-12-10 12:44:23 +00:00
Nick Craig-Wood
bc3305efd1 log: fix backtrace not going to the --log-file #9014
Before the log re-organisation in:

8d353039a6 log: add log rotation to --log-file

rclone would write any backtraces to the --log-file which was very
convenient for users.

This got accidentally disabled due to a typo which meant backtraces
started going to stderr even if --log-file was supplied.

This fixes the problem.
2025-12-10 12:44:23 +00:00
Nick Craig-Wood
3dd0232a26 build: fix lint warning after linter upgrade 2025-12-10 12:44:23 +00:00
Jonas Tingeborn
e6ce9d4a98 configfile: add piped config support - fixes #9012 2025-12-10 12:44:23 +00:00
Tingsong Xu
c37c6248fc fs/log: fix PID not included in JSON log output
When using `--log-format pid,json`, the PID was not being added to the JSON log output. This fix adds PID support to JSON logging.
2025-12-10 12:44:23 +00:00
Nick Craig-Wood
a8bece6585 build: adjust lint rules to exclude new errors from linter update 2025-12-10 12:44:23 +00:00
Nick Craig-Wood
9bc877ad44 proxy: fix error handling in tests spotted by the linter 2025-12-10 12:44:23 +00:00
Johannes Rothe
2631392740 googlecloudstorage: improve endpoint parameter docs
When specifying a custom endpoint with a subpath, there is a limitation
in the Google cloud storage integration that the subpath is ignored
during upload operations. For example with the custom endpoint
"example.org/custom/endpoint" on upload the /custom/endpoint is not
reflected.

As this is most likely an issue with the underlying API client, there is
no way to fix this in rclone. By extending the documentation at least
rclone users are made aware of this limitation.

Related forum thread: https://forum.rclone.org/t/googlecloudstorage-custom-endpoint-subpath-removed-for-upload/53059
2025-12-10 12:44:23 +00:00
Nick Craig-Wood
1b3a5fe1fa docs: note where a provider has an S3 compatible alternative 2025-12-10 12:44:23 +00:00
Nick Craig-Wood
615d5876a7 Add Shade as sponsor 2025-12-10 12:44:23 +00:00
Duncan Smart
ed36d2330f docs: Clarify OAuth scopes for readonly Google Drive access 2025-12-10 12:44:23 +00:00
Nick Craig-Wood
532c16c1e9 docs: update sponsor logos 2025-12-10 12:44:23 +00:00
Nick Craig-Wood
a08d66793b docs: fix lint error in changelog 2025-12-10 12:44:23 +00:00
Nick Craig-Wood
c4a2440492 Start v1.72.1-DEV development 2025-12-10 12:30:26 +00:00
30 changed files with 654 additions and 107 deletions

View File

@@ -17,6 +17,14 @@ linters:
#- prealloc # TODO #- prealloc # TODO
- revive - revive
- unconvert - unconvert
exclusions:
rules:
- linters:
- revive
text: 'var-naming: avoid meaningless package names'
- linters:
- revive
text: 'var-naming: avoid package names that conflict with Go standard library package names'
# Configure checks. Mostly using defaults but with some commented exceptions. # Configure checks. Mostly using defaults but with some commented exceptions.
settings: settings:
govet: govet:
@@ -136,6 +144,7 @@ linters:
- name: var-naming - name: var-naming
disabled: false disabled: false
formatters: formatters:
enable: enable:
- goimports - goimports

142
MANUAL.html generated
View File

@@ -233,7 +233,7 @@
<header id="title-block-header"> <header id="title-block-header">
<h1 class="title">rclone(1) User Manual</h1> <h1 class="title">rclone(1) User Manual</h1>
<p class="author">Nick Craig-Wood</p> <p class="author">Nick Craig-Wood</p>
<p class="date">Nov 21, 2025</p> <p class="date">Dec 10, 2025</p>
</header> </header>
<h1 id="name">NAME</h1> <h1 id="name">NAME</h1>
<p>rclone - manage files on cloud storage</p> <p>rclone - manage files on cloud storage</p>
@@ -4531,9 +4531,9 @@ SquareBracket</code></pre>
<pre class="console"><code>rclone convmv &quot;stories/The Quick Brown Fox!.txt&quot; --name-transform &quot;all,command=echo&quot; <pre class="console"><code>rclone convmv &quot;stories/The Quick Brown Fox!.txt&quot; --name-transform &quot;all,command=echo&quot;
// Output: stories/The Quick Brown Fox!.txt</code></pre> // Output: stories/The Quick Brown Fox!.txt</code></pre>
<pre class="console"><code>rclone convmv &quot;stories/The Quick Brown Fox!&quot; --name-transform &quot;date=-{YYYYMMDD}&quot; <pre class="console"><code>rclone convmv &quot;stories/The Quick Brown Fox!&quot; --name-transform &quot;date=-{YYYYMMDD}&quot;
// Output: stories/The Quick Brown Fox!-20251121</code></pre> // Output: stories/The Quick Brown Fox!-20251210</code></pre>
<pre class="console"><code>rclone convmv &quot;stories/The Quick Brown Fox!&quot; --name-transform &quot;date=-{macfriendlytime}&quot; <pre class="console"><code>rclone convmv &quot;stories/The Quick Brown Fox!&quot; --name-transform &quot;date=-{macfriendlytime}&quot;
// Output: stories/The Quick Brown Fox!-2025-11-21 0505PM</code></pre> // Output: stories/The Quick Brown Fox!-2025-12-10 1247PM</code></pre>
<pre class="console"><code>rclone convmv &quot;stories/The Quick Brown Fox!.txt&quot; --name-transform &quot;all,regex=[\\.\\w]/ab&quot; <pre class="console"><code>rclone convmv &quot;stories/The Quick Brown Fox!.txt&quot; --name-transform &quot;all,regex=[\\.\\w]/ab&quot;
// Output: ababababababab/ababab ababababab ababababab ababab!abababab</code></pre> // Output: ababababababab/ababab ababababab ababababab ababab!abababab</code></pre>
<p>The regex command generally accepts Perl-style regular expressions, <p>The regex command generally accepts Perl-style regular expressions,
@@ -22567,7 +22567,7 @@ split into groups.</p>
--tpslimit float Limit HTTP transactions per second to this --tpslimit float Limit HTTP transactions per second to this
--tpslimit-burst int Max burst of transactions for --tpslimit (default 1) --tpslimit-burst int Max burst of transactions for --tpslimit (default 1)
--use-cookies Enable session cookiejar --use-cookies Enable session cookiejar
--user-agent string Set the user-agent to a specified string (default &quot;rclone/v1.72.0&quot;)</code></pre> --user-agent string Set the user-agent to a specified string (default &quot;rclone/v1.72.1&quot;)</code></pre>
<h2 id="performance">Performance</h2> <h2 id="performance">Performance</h2>
<p>Flags helpful for increasing performance.</p> <p>Flags helpful for increasing performance.</p>
<pre><code> --buffer-size SizeSuffix In memory buffer size when reading files for each --transfer (default 16Mi) <pre><code> --buffer-size SizeSuffix In memory buffer size when reading files for each --transfer (default 16Mi)
@@ -23024,7 +23024,7 @@ split into groups.</p>
--gcs-description string Description of the remote --gcs-description string Description of the remote
--gcs-directory-markers Upload an empty object with a trailing slash when a new directory is created --gcs-directory-markers Upload an empty object with a trailing slash when a new directory is created
--gcs-encoding Encoding The encoding for the backend (default Slash,CrLf,InvalidUtf8,Dot) --gcs-encoding Encoding The encoding for the backend (default Slash,CrLf,InvalidUtf8,Dot)
--gcs-endpoint string Endpoint for the service --gcs-endpoint string Custom endpoint for the storage API. Leave blank to use the provider default
--gcs-env-auth Get GCP IAM credentials from runtime (environment variables or instance meta data if no env vars) --gcs-env-auth Get GCP IAM credentials from runtime (environment variables or instance meta data if no env vars)
--gcs-location string Location for the newly created buckets --gcs-location string Location for the newly created buckets
--gcs-no-check-bucket If set, don&#39;t attempt to check the bucket exists or create it --gcs-no-check-bucket If set, don&#39;t attempt to check the bucket exists or create it
@@ -25234,7 +25234,29 @@ investigation:</p>
<li><a <li><a
href="https://pub.rclone.org/integration-tests/current/dropbox-cmd.bisync-TestDropbox-1.txt"><code>TestBisyncRemoteRemote/normalization</code></a></li> href="https://pub.rclone.org/integration-tests/current/dropbox-cmd.bisync-TestDropbox-1.txt"><code>TestBisyncRemoteRemote/normalization</code></a></li>
</ul></li> </ul></li>
<li>Updated: 2025-11-21-010037 <li><code>TestGoFile</code> (<code>gofile</code>)
<ul>
<li><a
href="https://pub.rclone.org/integration-tests/current/gofile-cmd.bisync-TestGoFile-1.txt"><code>TestBisyncRemoteLocal/all_changed</code></a></li>
<li><a
href="https://pub.rclone.org/integration-tests/current/gofile-cmd.bisync-TestGoFile-1.txt"><code>TestBisyncRemoteLocal/backupdir</code></a></li>
<li><a
href="https://pub.rclone.org/integration-tests/current/gofile-cmd.bisync-TestGoFile-1.txt"><code>TestBisyncRemoteLocal/basic</code></a></li>
<li><a
href="https://pub.rclone.org/integration-tests/current/gofile-cmd.bisync-TestGoFile-1.txt"><code>TestBisyncRemoteLocal/changes</code></a></li>
<li><a
href="https://pub.rclone.org/integration-tests/current/gofile-cmd.bisync-TestGoFile-1.txt"><code>TestBisyncRemoteLocal/check_access</code></a></li>
<li><a href="https://pub.rclone.org/integration-tests/current/">78
more</a></li>
</ul></li>
<li><code>TestPcloud</code> (<code>pcloud</code>)
<ul>
<li><a
href="https://pub.rclone.org/integration-tests/current/pcloud-cmd.bisync-TestPcloud-1.txt"><code>TestBisyncRemoteRemote/check_access</code></a></li>
<li><a
href="https://pub.rclone.org/integration-tests/current/pcloud-cmd.bisync-TestPcloud-1.txt"><code>TestBisyncRemoteRemote/check_access_filters</code></a></li>
</ul></li>
<li>Updated: 2025-12-10-010012
<!--- end list_failures - DO NOT EDIT THIS SECTION - use make commanddocs ---></li> <!--- end list_failures - DO NOT EDIT THIS SECTION - use make commanddocs ---></li>
</ul> </ul>
<p>The following backends either have not been tested recently or have <p>The following backends either have not been tested recently or have
@@ -28374,15 +28396,30 @@ centers for low latency.</li>
<li>St. Petersburg</li> <li>St. Petersburg</li>
<li>Provider: Selectel,Servercore</li> <li>Provider: Selectel,Servercore</li>
</ul></li> </ul></li>
<li>"gis-1" <li>"ru-3"
<ul> <ul>
<li>Moscow</li> <li>St. Petersburg</li>
<li>Provider: Servercore</li> <li>Provider: Selectel</li>
</ul></li> </ul></li>
<li>"ru-7" <li>"ru-7"
<ul> <ul>
<li>Moscow</li> <li>Moscow</li>
<li>Provider: Servercore</li> <li>Provider: Selectel,Servercore</li>
</ul></li>
<li>"gis-1"
<ul>
<li>Moscow</li>
<li>Provider: Selectel,Servercore</li>
</ul></li>
<li>"kz-1"
<ul>
<li>Kazakhstan</li>
<li>Provider: Selectel</li>
</ul></li>
<li>"uz-2"
<ul>
<li>Uzbekistan</li>
<li>Provider: Selectel</li>
</ul></li> </ul></li>
<li>"uz-2" <li>"uz-2"
<ul> <ul>
@@ -29690,17 +29727,37 @@ AWS,Alibaba,ArvanCloud,Ceph,ChinaMobile,Cloudflare,Cubbit,DigitalOcean,Dreamhost
</ul></li> </ul></li>
<li>"s3.ru-1.storage.selcloud.ru" <li>"s3.ru-1.storage.selcloud.ru"
<ul> <ul>
<li>Saint Petersburg</li> <li>St. Petersburg</li>
<li>Provider: Selectel</li>
</ul></li>
<li>"s3.ru-3.storage.selcloud.ru"
<ul>
<li>St. Petersburg</li>
<li>Provider: Selectel</li>
</ul></li>
<li>"s3.ru-7.storage.selcloud.ru"
<ul>
<li>Moscow</li>
<li>Provider: Selectel,Servercore</li> <li>Provider: Selectel,Servercore</li>
</ul></li> </ul></li>
<li>"s3.gis-1.storage.selcloud.ru" <li>"s3.gis-1.storage.selcloud.ru"
<ul> <ul>
<li>Moscow</li> <li>Moscow</li>
<li>Provider: Servercore</li> <li>Provider: Selectel,Servercore</li>
</ul></li> </ul></li>
<li>"s3.ru-7.storage.selcloud.ru" <li>"s3.kz-1.storage.selcloud.ru"
<ul> <ul>
<li>Moscow</li> <li>Kazakhstan</li>
<li>Provider: Selectel</li>
</ul></li>
<li>"s3.uz-2.storage.selcloud.ru"
<ul>
<li>Uzbekistan</li>
<li>Provider: Selectel</li>
</ul></li>
<li>"s3.ru-1.storage.selcloud.ru"
<ul>
<li>Saint Petersburg</li>
<li>Provider: Servercore</li> <li>Provider: Servercore</li>
</ul></li> </ul></li>
<li>"s3.uz-2.srvstorage.uz" <li>"s3.uz-2.srvstorage.uz"
@@ -41496,6 +41553,9 @@ storage options, and sharing capabilities. With support for high storage
limits and seamless integration with rclone, FileLu makes managing files limits and seamless integration with rclone, FileLu makes managing files
in the cloud easy. Its cross-platform file backup services let you in the cloud easy. Its cross-platform file backup services let you
upload and back up files from any internet-connected device.</p> upload and back up files from any internet-connected device.</p>
<p><strong>Note</strong> FileLu now has a fully featured S3 backend <a
href="/s3#filelu-s5">FileLu S5</a>, an industry standard S3 compatible
object store.</p>
<h2 id="configuration-16">Configuration</h2> <h2 id="configuration-16">Configuration</h2>
<p>Here is an example of how to make a remote called <p>Here is an example of how to make a remote called
<code>filelu</code>. First, run:</p> <code>filelu</code>. First, run:</p>
@@ -43418,14 +43478,36 @@ decompressed.</p>
<li>Default: false</li> <li>Default: false</li>
</ul> </ul>
<h4 id="gcs-endpoint">--gcs-endpoint</h4> <h4 id="gcs-endpoint">--gcs-endpoint</h4>
<p>Endpoint for the service.</p> <p>Custom endpoint for the storage API. Leave blank to use the provider
<p>Leave blank normally.</p> default.</p>
<p>When using a custom endpoint that includes a subpath (e.g.
example.org/custom/endpoint), the subpath will be ignored during upload
operations due to a limitation in the underlying Google API Go client
library. Download and listing operations will work correctly with the
full endpoint path. If you require subpath support for uploads, avoid
using subpaths in your custom endpoint configuration.</p>
<p>Properties:</p> <p>Properties:</p>
<ul> <ul>
<li>Config: endpoint</li> <li>Config: endpoint</li>
<li>Env Var: RCLONE_GCS_ENDPOINT</li> <li>Env Var: RCLONE_GCS_ENDPOINT</li>
<li>Type: string</li> <li>Type: string</li>
<li>Required: false</li> <li>Required: false</li>
<li>Examples:
<ul>
<li>"storage.example.org"
<ul>
<li>Specify a custom endpoint</li>
</ul></li>
<li>"storage.example.org:4443"
<ul>
<li>Specifying a custom endpoint with port</li>
</ul></li>
<li>"storage.example.org:4443/gcs/api"
<ul>
<li>Specifying a subpath, see the note, uploads won't use the custom
path!</li>
</ul></li>
</ul></li>
</ul> </ul>
<h4 id="gcs-encoding">--gcs-encoding</h4> <h4 id="gcs-encoding">--gcs-encoding</h4>
<p>The encoding for the backend.</p> <p>The encoding for the backend.</p>
@@ -43670,7 +43752,7 @@ account. It is a ~21 character numerical string.</li>
<code>https://www.googleapis.com/auth/drive</code> to grant read/write <code>https://www.googleapis.com/auth/drive</code> to grant read/write
access to Google Drive specifically. You can also use access to Google Drive specifically. You can also use
<code>https://www.googleapis.com/auth/drive.readonly</code> for read <code>https://www.googleapis.com/auth/drive.readonly</code> for read
only access.</li> only access with <code>--drive-scope=drive.readonly</code>.</li>
<li>Click "Authorise"</li> <li>Click "Authorise"</li>
</ul> </ul>
<h5 id="configure-rclone-assuming-a-new-install">3. Configure rclone, <h5 id="configure-rclone-assuming-a-new-install">3. Configure rclone,
@@ -62593,6 +62675,32 @@ the output.</p>
<!-- autogenerated options stop --> <!-- autogenerated options stop -->
<!-- markdownlint-disable line-length --> <!-- markdownlint-disable line-length -->
<h1 id="changelog-1">Changelog</h1> <h1 id="changelog-1">Changelog</h1>
<h2 id="v1.72.1---2025-12-10">v1.72.1 - 2025-12-10</h2>
<p><a
href="https://github.com/rclone/rclone/compare/v1.72.0...v1.72.1">See
commits</a></p>
<ul>
<li>Bug Fixes
<ul>
<li>build: update to go1.25.5 to fix <a
href="https://pkg.go.dev/vuln/GO-2025-4155">CVE-2025-61729</a></li>
<li>doc fixes (Duncan Smart, Nick Craig-Wood)</li>
<li>configfile: Fix piped config support (Jonas Tingeborn)</li>
<li>log
<ul>
<li>Fix PID not included in JSON log output (Tingsong Xu)</li>
<li>Fix backtrace not going to the --log-file (Nick Craig-Wood)</li>
</ul></li>
</ul></li>
<li>Google Cloud Storage
<ul>
<li>Improve endpoint parameter docs (Johannes Rothe)</li>
</ul></li>
<li>S3
<ul>
<li>Add missing regions for Selectel provider (Nick Craig-Wood)</li>
</ul></li>
</ul>
<h2 id="v1.72.0---2025-11-21">v1.72.0 - 2025-11-21</h2> <h2 id="v1.72.0---2025-11-21">v1.72.0 - 2025-11-21</h2>
<p><a <p><a
href="https://github.com/rclone/rclone/compare/v1.71.0...v1.72.0">See href="https://github.com/rclone/rclone/compare/v1.71.0...v1.72.0">See

96
MANUAL.md generated
View File

@@ -1,6 +1,6 @@
% rclone(1) User Manual % rclone(1) User Manual
% Nick Craig-Wood % Nick Craig-Wood
% Nov 21, 2025 % Dec 10, 2025
# NAME # NAME
@@ -5369,12 +5369,12 @@ rclone convmv "stories/The Quick Brown Fox!.txt" --name-transform "all,command=e
```console ```console
rclone convmv "stories/The Quick Brown Fox!" --name-transform "date=-{YYYYMMDD}" rclone convmv "stories/The Quick Brown Fox!" --name-transform "date=-{YYYYMMDD}"
// Output: stories/The Quick Brown Fox!-20251121 // Output: stories/The Quick Brown Fox!-20251210
``` ```
```console ```console
rclone convmv "stories/The Quick Brown Fox!" --name-transform "date=-{macfriendlytime}" rclone convmv "stories/The Quick Brown Fox!" --name-transform "date=-{macfriendlytime}"
// Output: stories/The Quick Brown Fox!-2025-11-21 0505PM // Output: stories/The Quick Brown Fox!-2025-12-10 1247PM
``` ```
```console ```console
@@ -24802,7 +24802,7 @@ Flags for general networking and HTTP stuff.
--tpslimit float Limit HTTP transactions per second to this --tpslimit float Limit HTTP transactions per second to this
--tpslimit-burst int Max burst of transactions for --tpslimit (default 1) --tpslimit-burst int Max burst of transactions for --tpslimit (default 1)
--use-cookies Enable session cookiejar --use-cookies Enable session cookiejar
--user-agent string Set the user-agent to a specified string (default "rclone/v1.72.0") --user-agent string Set the user-agent to a specified string (default "rclone/v1.72.1")
``` ```
@@ -25319,7 +25319,7 @@ Backend-only flags (these can be set in the config file also).
--gcs-description string Description of the remote --gcs-description string Description of the remote
--gcs-directory-markers Upload an empty object with a trailing slash when a new directory is created --gcs-directory-markers Upload an empty object with a trailing slash when a new directory is created
--gcs-encoding Encoding The encoding for the backend (default Slash,CrLf,InvalidUtf8,Dot) --gcs-encoding Encoding The encoding for the backend (default Slash,CrLf,InvalidUtf8,Dot)
--gcs-endpoint string Endpoint for the service --gcs-endpoint string Custom endpoint for the storage API. Leave blank to use the provider default
--gcs-env-auth Get GCP IAM credentials from runtime (environment variables or instance meta data if no env vars) --gcs-env-auth Get GCP IAM credentials from runtime (environment variables or instance meta data if no env vars)
--gcs-location string Location for the newly created buckets --gcs-location string Location for the newly created buckets
--gcs-no-check-bucket If set, don't attempt to check the bucket exists or create it --gcs-no-check-bucket If set, don't attempt to check the bucket exists or create it
@@ -27514,7 +27514,17 @@ The following backends have known issues that need more investigation:
<!--- start list_failures - DO NOT EDIT THIS SECTION - use make commanddocs ---> <!--- start list_failures - DO NOT EDIT THIS SECTION - use make commanddocs --->
- `TestDropbox` (`dropbox`) - `TestDropbox` (`dropbox`)
- [`TestBisyncRemoteRemote/normalization`](https://pub.rclone.org/integration-tests/current/dropbox-cmd.bisync-TestDropbox-1.txt) - [`TestBisyncRemoteRemote/normalization`](https://pub.rclone.org/integration-tests/current/dropbox-cmd.bisync-TestDropbox-1.txt)
- Updated: 2025-11-21-010037 - `TestGoFile` (`gofile`)
- [`TestBisyncRemoteLocal/all_changed`](https://pub.rclone.org/integration-tests/current/gofile-cmd.bisync-TestGoFile-1.txt)
- [`TestBisyncRemoteLocal/backupdir`](https://pub.rclone.org/integration-tests/current/gofile-cmd.bisync-TestGoFile-1.txt)
- [`TestBisyncRemoteLocal/basic`](https://pub.rclone.org/integration-tests/current/gofile-cmd.bisync-TestGoFile-1.txt)
- [`TestBisyncRemoteLocal/changes`](https://pub.rclone.org/integration-tests/current/gofile-cmd.bisync-TestGoFile-1.txt)
- [`TestBisyncRemoteLocal/check_access`](https://pub.rclone.org/integration-tests/current/gofile-cmd.bisync-TestGoFile-1.txt)
- [78 more](https://pub.rclone.org/integration-tests/current/)
- `TestPcloud` (`pcloud`)
- [`TestBisyncRemoteRemote/check_access`](https://pub.rclone.org/integration-tests/current/pcloud-cmd.bisync-TestPcloud-1.txt)
- [`TestBisyncRemoteRemote/check_access_filters`](https://pub.rclone.org/integration-tests/current/pcloud-cmd.bisync-TestPcloud-1.txt)
- Updated: 2025-12-10-010012
<!--- end list_failures - DO NOT EDIT THIS SECTION - use make commanddocs ---> <!--- end list_failures - DO NOT EDIT THIS SECTION - use make commanddocs --->
The following backends either have not been tested recently or have known issues The following backends either have not been tested recently or have known issues
@@ -30343,12 +30353,21 @@ Properties:
- "ru-1" - "ru-1"
- St. Petersburg - St. Petersburg
- Provider: Selectel,Servercore - Provider: Selectel,Servercore
- "gis-1" - "ru-3"
- Moscow - St. Petersburg
- Provider: Servercore - Provider: Selectel
- "ru-7" - "ru-7"
- Moscow - Moscow
- Provider: Servercore - Provider: Selectel,Servercore
- "gis-1"
- Moscow
- Provider: Selectel,Servercore
- "kz-1"
- Kazakhstan
- Provider: Selectel
- "uz-2"
- Uzbekistan
- Provider: Selectel
- "uz-2" - "uz-2"
- Tashkent, Uzbekistan - Tashkent, Uzbekistan
- Provider: Servercore - Provider: Servercore
@@ -31140,13 +31159,25 @@ Properties:
- SeaweedFS S3 localhost - SeaweedFS S3 localhost
- Provider: SeaweedFS - Provider: SeaweedFS
- "s3.ru-1.storage.selcloud.ru" - "s3.ru-1.storage.selcloud.ru"
- Saint Petersburg - St. Petersburg
- Provider: Selectel
- "s3.ru-3.storage.selcloud.ru"
- St. Petersburg
- Provider: Selectel
- "s3.ru-7.storage.selcloud.ru"
- Moscow
- Provider: Selectel,Servercore - Provider: Selectel,Servercore
- "s3.gis-1.storage.selcloud.ru" - "s3.gis-1.storage.selcloud.ru"
- Moscow - Moscow
- Provider: Servercore - Provider: Selectel,Servercore
- "s3.ru-7.storage.selcloud.ru" - "s3.kz-1.storage.selcloud.ru"
- Moscow - Kazakhstan
- Provider: Selectel
- "s3.uz-2.storage.selcloud.ru"
- Uzbekistan
- Provider: Selectel
- "s3.ru-1.storage.selcloud.ru"
- Saint Petersburg
- Provider: Servercore - Provider: Servercore
- "s3.uz-2.srvstorage.uz" - "s3.uz-2.srvstorage.uz"
- Tashkent, Uzbekistan - Tashkent, Uzbekistan
@@ -43973,6 +44004,9 @@ managing files in the cloud easy. Its cross-platform file backup
services let you upload and back up files from any internet-connected services let you upload and back up files from any internet-connected
device. device.
**Note** FileLu now has a fully featured S3 backend [FileLu S5](/s3#filelu-s5),
an industry standard S3 compatible object store.
## Configuration ## Configuration
Here is an example of how to make a remote called `filelu`. First, run: Here is an example of how to make a remote called `filelu`. First, run:
@@ -46071,9 +46105,14 @@ Properties:
#### --gcs-endpoint #### --gcs-endpoint
Endpoint for the service. Custom endpoint for the storage API. Leave blank to use the provider default.
Leave blank normally. When using a custom endpoint that includes a subpath (e.g. example.org/custom/endpoint),
the subpath will be ignored during upload operations due to a limitation in the
underlying Google API Go client library.
Download and listing operations will work correctly with the full endpoint path.
If you require subpath support for uploads, avoid using subpaths in your custom
endpoint configuration.
Properties: Properties:
@@ -46081,6 +46120,13 @@ Properties:
- Env Var: RCLONE_GCS_ENDPOINT - Env Var: RCLONE_GCS_ENDPOINT
- Type: string - Type: string
- Required: false - Required: false
- Examples:
- "storage.example.org"
- Specify a custom endpoint
- "storage.example.org:4443"
- Specifying a custom endpoint with port
- "storage.example.org:4443/gcs/api"
- Specifying a subpath, see the note, uploads won't use the custom path!
#### --gcs-encoding #### --gcs-encoding
@@ -46379,7 +46425,7 @@ account key" button.
`https://www.googleapis.com/auth/drive` `https://www.googleapis.com/auth/drive`
to grant read/write access to Google Drive specifically. to grant read/write access to Google Drive specifically.
You can also use `https://www.googleapis.com/auth/drive.readonly` for read You can also use `https://www.googleapis.com/auth/drive.readonly` for read
only access. only access with `--drive-scope=drive.readonly`.
- Click "Authorise" - Click "Authorise"
##### 3. Configure rclone, assuming a new install ##### 3. Configure rclone, assuming a new install
@@ -66867,6 +66913,22 @@ Options:
# Changelog # Changelog
## v1.72.1 - 2025-12-10
[See commits](https://github.com/rclone/rclone/compare/v1.72.0...v1.72.1)
- Bug Fixes
- build: update to go1.25.5 to fix [CVE-2025-61729](https://pkg.go.dev/vuln/GO-2025-4155)
- doc fixes (Duncan Smart, Nick Craig-Wood)
- configfile: Fix piped config support (Jonas Tingeborn)
- log
- Fix PID not included in JSON log output (Tingsong Xu)
- Fix backtrace not going to the --log-file (Nick Craig-Wood)
- Google Cloud Storage
- Improve endpoint parameter docs (Johannes Rothe)
- S3
- Add missing regions for Selectel provider (Nick Craig-Wood)
## v1.72.0 - 2025-11-21 ## v1.72.0 - 2025-11-21
[See commits](https://github.com/rclone/rclone/compare/v1.71.0...v1.72.0) [See commits](https://github.com/rclone/rclone/compare/v1.71.0...v1.72.0)

99
MANUAL.txt generated
View File

@@ -1,6 +1,6 @@
rclone(1) User Manual rclone(1) User Manual
Nick Craig-Wood Nick Craig-Wood
Nov 21, 2025 Dec 10, 2025
NAME NAME
@@ -4588,10 +4588,10 @@ Examples:
// Output: stories/The Quick Brown Fox!.txt // Output: stories/The Quick Brown Fox!.txt
rclone convmv "stories/The Quick Brown Fox!" --name-transform "date=-{YYYYMMDD}" rclone convmv "stories/The Quick Brown Fox!" --name-transform "date=-{YYYYMMDD}"
// Output: stories/The Quick Brown Fox!-20251121 // Output: stories/The Quick Brown Fox!-20251210
rclone convmv "stories/The Quick Brown Fox!" --name-transform "date=-{macfriendlytime}" rclone convmv "stories/The Quick Brown Fox!" --name-transform "date=-{macfriendlytime}"
// Output: stories/The Quick Brown Fox!-2025-11-21 0505PM // Output: stories/The Quick Brown Fox!-2025-12-10 1247PM
rclone convmv "stories/The Quick Brown Fox!.txt" --name-transform "all,regex=[\\.\\w]/ab" rclone convmv "stories/The Quick Brown Fox!.txt" --name-transform "all,regex=[\\.\\w]/ab"
// Output: ababababababab/ababab ababababab ababababab ababab!abababab // Output: ababababababab/ababab ababababab ababababab ababab!abababab
@@ -23110,7 +23110,7 @@ Flags for general networking and HTTP stuff.
--tpslimit float Limit HTTP transactions per second to this --tpslimit float Limit HTTP transactions per second to this
--tpslimit-burst int Max burst of transactions for --tpslimit (default 1) --tpslimit-burst int Max burst of transactions for --tpslimit (default 1)
--use-cookies Enable session cookiejar --use-cookies Enable session cookiejar
--user-agent string Set the user-agent to a specified string (default "rclone/v1.72.0") --user-agent string Set the user-agent to a specified string (default "rclone/v1.72.1")
Performance Performance
@@ -23597,7 +23597,7 @@ Backend-only flags (these can be set in the config file also).
--gcs-description string Description of the remote --gcs-description string Description of the remote
--gcs-directory-markers Upload an empty object with a trailing slash when a new directory is created --gcs-directory-markers Upload an empty object with a trailing slash when a new directory is created
--gcs-encoding Encoding The encoding for the backend (default Slash,CrLf,InvalidUtf8,Dot) --gcs-encoding Encoding The encoding for the backend (default Slash,CrLf,InvalidUtf8,Dot)
--gcs-endpoint string Endpoint for the service --gcs-endpoint string Custom endpoint for the storage API. Leave blank to use the provider default
--gcs-env-auth Get GCP IAM credentials from runtime (environment variables or instance meta data if no env vars) --gcs-env-auth Get GCP IAM credentials from runtime (environment variables or instance meta data if no env vars)
--gcs-location string Location for the newly created buckets --gcs-location string Location for the newly created buckets
--gcs-no-check-bucket If set, don't attempt to check the bucket exists or create it --gcs-no-check-bucket If set, don't attempt to check the bucket exists or create it
@@ -25734,7 +25734,17 @@ The following backends have known issues that need more investigation:
- TestDropbox (dropbox) - TestDropbox (dropbox)
- TestBisyncRemoteRemote/normalization - TestBisyncRemoteRemote/normalization
- Updated: 2025-11-21-010037 - TestGoFile (gofile)
- TestBisyncRemoteLocal/all_changed
- TestBisyncRemoteLocal/backupdir
- TestBisyncRemoteLocal/basic
- TestBisyncRemoteLocal/changes
- TestBisyncRemoteLocal/check_access
- 78 more
- TestPcloud (pcloud)
- TestBisyncRemoteRemote/check_access
- TestBisyncRemoteRemote/check_access_filters
- Updated: 2025-12-10-010012
The following backends either have not been tested recently or have The following backends either have not been tested recently or have
known issues that are deemed unfixable for the time being: known issues that are deemed unfixable for the time being:
@@ -28517,12 +28527,21 @@ Properties:
- "ru-1" - "ru-1"
- St. Petersburg - St. Petersburg
- Provider: Selectel,Servercore - Provider: Selectel,Servercore
- "gis-1" - "ru-3"
- Moscow - St. Petersburg
- Provider: Servercore - Provider: Selectel
- "ru-7" - "ru-7"
- Moscow - Moscow
- Provider: Servercore - Provider: Selectel,Servercore
- "gis-1"
- Moscow
- Provider: Selectel,Servercore
- "kz-1"
- Kazakhstan
- Provider: Selectel
- "uz-2"
- Uzbekistan
- Provider: Selectel
- "uz-2" - "uz-2"
- Tashkent, Uzbekistan - Tashkent, Uzbekistan
- Provider: Servercore - Provider: Servercore
@@ -29315,13 +29334,25 @@ Properties:
- SeaweedFS S3 localhost - SeaweedFS S3 localhost
- Provider: SeaweedFS - Provider: SeaweedFS
- "s3.ru-1.storage.selcloud.ru" - "s3.ru-1.storage.selcloud.ru"
- Saint Petersburg - St. Petersburg
- Provider: Selectel
- "s3.ru-3.storage.selcloud.ru"
- St. Petersburg
- Provider: Selectel
- "s3.ru-7.storage.selcloud.ru"
- Moscow
- Provider: Selectel,Servercore - Provider: Selectel,Servercore
- "s3.gis-1.storage.selcloud.ru" - "s3.gis-1.storage.selcloud.ru"
- Moscow - Moscow
- Provider: Servercore - Provider: Selectel,Servercore
- "s3.ru-7.storage.selcloud.ru" - "s3.kz-1.storage.selcloud.ru"
- Moscow - Kazakhstan
- Provider: Selectel
- "s3.uz-2.storage.selcloud.ru"
- Uzbekistan
- Provider: Selectel
- "s3.ru-1.storage.selcloud.ru"
- Saint Petersburg
- Provider: Servercore - Provider: Servercore
- "s3.uz-2.srvstorage.uz" - "s3.uz-2.srvstorage.uz"
- Tashkent, Uzbekistan - Tashkent, Uzbekistan
@@ -41720,6 +41751,9 @@ integration with rclone, FileLu makes managing files in the cloud easy.
Its cross-platform file backup services let you upload and back up files Its cross-platform file backup services let you upload and back up files
from any internet-connected device. from any internet-connected device.
Note FileLu now has a fully featured S3 backend FileLu S5, an industry
standard S3 compatible object store.
Configuration Configuration
Here is an example of how to make a remote called filelu. First, run: Here is an example of how to make a remote called filelu. First, run:
@@ -43696,9 +43730,15 @@ Properties:
--gcs-endpoint --gcs-endpoint
Endpoint for the service. Custom endpoint for the storage API. Leave blank to use the provider
default.
Leave blank normally. When using a custom endpoint that includes a subpath (e.g.
example.org/custom/endpoint), the subpath will be ignored during upload
operations due to a limitation in the underlying Google API Go client
library. Download and listing operations will work correctly with the
full endpoint path. If you require subpath support for uploads, avoid
using subpaths in your custom endpoint configuration.
Properties: Properties:
@@ -43706,6 +43746,14 @@ Properties:
- Env Var: RCLONE_GCS_ENDPOINT - Env Var: RCLONE_GCS_ENDPOINT
- Type: string - Type: string
- Required: false - Required: false
- Examples:
- "storage.example.org"
- Specify a custom endpoint
- "storage.example.org:4443"
- Specifying a custom endpoint with port
- "storage.example.org:4443/gcs/api"
- Specifying a subpath, see the note, uploads won't use the
custom path!
--gcs-encoding --gcs-encoding
@@ -43989,7 +44037,8 @@ key" button.
- In the next field, "OAuth Scopes", enter - In the next field, "OAuth Scopes", enter
https://www.googleapis.com/auth/drive to grant read/write access to https://www.googleapis.com/auth/drive to grant read/write access to
Google Drive specifically. You can also use Google Drive specifically. You can also use
https://www.googleapis.com/auth/drive.readonly for read only access. https://www.googleapis.com/auth/drive.readonly for read only access
with --drive-scope=drive.readonly.
- Click "Authorise" - Click "Authorise"
3. Configure rclone, assuming a new install 3. Configure rclone, assuming a new install
@@ -64010,6 +64059,22 @@ Options:
Changelog Changelog
v1.72.1 - 2025-12-10
See commits
- Bug Fixes
- build: update to go1.25.5 to fix CVE-2025-61729
- doc fixes (Duncan Smart, Nick Craig-Wood)
- configfile: Fix piped config support (Jonas Tingeborn)
- log
- Fix PID not included in JSON log output (Tingsong Xu)
- Fix backtrace not going to the --log-file (Nick Craig-Wood)
- Google Cloud Storage
- Improve endpoint parameter docs (Johannes Rothe)
- S3
- Add missing regions for Selectel provider (Nick Craig-Wood)
v1.72.0 - 2025-11-21 v1.72.0 - 2025-11-21
See commits See commits

View File

@@ -21,6 +21,7 @@ This file describes how to make the various kinds of releases
- make doc - make doc
- git status - to check for new man pages - git add them - git status - to check for new man pages - git add them
- git commit -a -v -m "Version v1.XX.0" - git commit -a -v -m "Version v1.XX.0"
- make check
- make retag - make retag
- git push origin # without --follow-tags so it doesn't push the tag if it fails - git push origin # without --follow-tags so it doesn't push the tag if it fails
- git push --follow-tags origin - git push --follow-tags origin

View File

@@ -1 +1 @@
v1.72.0 v1.72.1

View File

@@ -347,8 +347,25 @@ can't check the size and hash but the file contents will be decompressed.
Default: false, Default: false,
}, { }, {
Name: "endpoint", Name: "endpoint",
Help: "Endpoint for the service.\n\nLeave blank normally.", Help: `Custom endpoint for the storage API. Leave blank to use the provider default.
When using a custom endpoint that includes a subpath (e.g. example.org/custom/endpoint),
the subpath will be ignored during upload operations due to a limitation in the
underlying Google API Go client library.
Download and listing operations will work correctly with the full endpoint path.
If you require subpath support for uploads, avoid using subpaths in your custom
endpoint configuration.`,
Advanced: true, Advanced: true,
Examples: []fs.OptionExample{{
Value: "storage.example.org",
Help: "Specify a custom endpoint",
}, {
Value: "storage.example.org:4443",
Help: "Specifying a custom endpoint with port",
}, {
Value: "storage.example.org:4443/gcs/api",
Help: "Specifying a subpath, see the note, uploads won't use the custom path!",
}},
}, { }, {
Name: config.ConfigEncoding, Name: config.ConfigEncoding,
Help: config.ConfigEncodingHelp, Help: config.ConfigEncodingHelp,

View File

@@ -2,7 +2,17 @@ name: Selectel
description: Selectel Object Storage description: Selectel Object Storage
region: region:
ru-1: St. Petersburg ru-1: St. Petersburg
ru-3: St. Petersburg
ru-7: Moscow
gis-1: Moscow
kz-1: Kazakhstan
uz-2: Uzbekistan
endpoint: endpoint:
s3.ru-1.storage.selcloud.ru: Saint Petersburg s3.ru-1.storage.selcloud.ru: St. Petersburg
s3.ru-3.storage.selcloud.ru: St. Petersburg
s3.ru-7.storage.selcloud.ru: Moscow
s3.gis-1.storage.selcloud.ru: Moscow
s3.kz-1.storage.selcloud.ru: Kazakhstan
s3.uz-2.storage.selcloud.ru: Uzbekistan
quirks: quirks:
list_url_encode: false list_url_encode: false

View File

@@ -153,7 +153,7 @@ func TestRun(t *testing.T) {
fs.Fatal(nil, "error generating test private key "+privateKeyErr.Error()) fs.Fatal(nil, "error generating test private key "+privateKeyErr.Error())
} }
publicKey, publicKeyError := ssh.NewPublicKey(&privateKey.PublicKey) publicKey, publicKeyError := ssh.NewPublicKey(&privateKey.PublicKey)
if privateKeyErr != nil { if publicKeyError != nil {
fs.Fatal(nil, "error generating test public key "+publicKeyError.Error()) fs.Fatal(nil, "error generating test public key "+publicKeyError.Error())
} }

View File

@@ -1049,7 +1049,17 @@ The following backends have known issues that need more investigation:
<!--- start list_failures - DO NOT EDIT THIS SECTION - use make commanddocs ---> <!--- start list_failures - DO NOT EDIT THIS SECTION - use make commanddocs --->
- `TestDropbox` (`dropbox`) - `TestDropbox` (`dropbox`)
- [`TestBisyncRemoteRemote/normalization`](https://pub.rclone.org/integration-tests/current/dropbox-cmd.bisync-TestDropbox-1.txt) - [`TestBisyncRemoteRemote/normalization`](https://pub.rclone.org/integration-tests/current/dropbox-cmd.bisync-TestDropbox-1.txt)
- Updated: 2025-11-21-010037 - `TestGoFile` (`gofile`)
- [`TestBisyncRemoteLocal/all_changed`](https://pub.rclone.org/integration-tests/current/gofile-cmd.bisync-TestGoFile-1.txt)
- [`TestBisyncRemoteLocal/backupdir`](https://pub.rclone.org/integration-tests/current/gofile-cmd.bisync-TestGoFile-1.txt)
- [`TestBisyncRemoteLocal/basic`](https://pub.rclone.org/integration-tests/current/gofile-cmd.bisync-TestGoFile-1.txt)
- [`TestBisyncRemoteLocal/changes`](https://pub.rclone.org/integration-tests/current/gofile-cmd.bisync-TestGoFile-1.txt)
- [`TestBisyncRemoteLocal/check_access`](https://pub.rclone.org/integration-tests/current/gofile-cmd.bisync-TestGoFile-1.txt)
- [78 more](https://pub.rclone.org/integration-tests/current/)
- `TestPcloud` (`pcloud`)
- [`TestBisyncRemoteRemote/check_access`](https://pub.rclone.org/integration-tests/current/pcloud-cmd.bisync-TestPcloud-1.txt)
- [`TestBisyncRemoteRemote/check_access_filters`](https://pub.rclone.org/integration-tests/current/pcloud-cmd.bisync-TestPcloud-1.txt)
- Updated: 2025-12-10-010012
<!--- end list_failures - DO NOT EDIT THIS SECTION - use make commanddocs ---> <!--- end list_failures - DO NOT EDIT THIS SECTION - use make commanddocs --->
The following backends either have not been tested recently or have known issues The following backends either have not been tested recently or have known issues

View File

@@ -6,6 +6,22 @@ description: "Rclone Changelog"
# Changelog # Changelog
## v1.72.1 - 2025-12-10
[See commits](https://github.com/rclone/rclone/compare/v1.72.0...v1.72.1)
- Bug Fixes
- build: update to go1.25.5 to fix [CVE-2025-61729](https://pkg.go.dev/vuln/GO-2025-4155)
- doc fixes (Duncan Smart, Nick Craig-Wood)
- configfile: Fix piped config support (Jonas Tingeborn)
- log
- Fix PID not included in JSON log output (Tingsong Xu)
- Fix backtrace not going to the --log-file (Nick Craig-Wood)
- Google Cloud Storage
- Improve endpoint parameter docs (Johannes Rothe)
- S3
- Add missing regions for Selectel provider (Nick Craig-Wood)
## v1.72.0 - 2025-11-21 ## v1.72.0 - 2025-11-21
[See commits](https://github.com/rclone/rclone/compare/v1.71.0...v1.72.0) [See commits](https://github.com/rclone/rclone/compare/v1.71.0...v1.72.0)

View File

@@ -369,7 +369,7 @@ rclone [flags]
--gcs-description string Description of the remote --gcs-description string Description of the remote
--gcs-directory-markers Upload an empty object with a trailing slash when a new directory is created --gcs-directory-markers Upload an empty object with a trailing slash when a new directory is created
--gcs-encoding Encoding The encoding for the backend (default Slash,CrLf,InvalidUtf8,Dot) --gcs-encoding Encoding The encoding for the backend (default Slash,CrLf,InvalidUtf8,Dot)
--gcs-endpoint string Endpoint for the service --gcs-endpoint string Custom endpoint for the storage API. Leave blank to use the provider default
--gcs-env-auth Get GCP IAM credentials from runtime (environment variables or instance meta data if no env vars) --gcs-env-auth Get GCP IAM credentials from runtime (environment variables or instance meta data if no env vars)
--gcs-location string Location for the newly created buckets --gcs-location string Location for the newly created buckets
--gcs-no-check-bucket If set, don't attempt to check the bucket exists or create it --gcs-no-check-bucket If set, don't attempt to check the bucket exists or create it
@@ -1023,7 +1023,7 @@ rclone [flags]
--use-json-log Use json log format --use-json-log Use json log format
--use-mmap Use mmap allocator (see docs) --use-mmap Use mmap allocator (see docs)
--use-server-modtime Use server modified time instead of object metadata --use-server-modtime Use server modified time instead of object metadata
--user-agent string Set the user-agent to a specified string (default "rclone/v1.72.0") --user-agent string Set the user-agent to a specified string (default "rclone/v1.72.1")
-v, --verbose count Print lots more stuff (repeat for more) -v, --verbose count Print lots more stuff (repeat for more)
-V, --version Print the version number -V, --version Print the version number
--webdav-auth-redirect Preserve authentication on redirect --webdav-auth-redirect Preserve authentication on redirect

View File

@@ -231,12 +231,12 @@ rclone convmv "stories/The Quick Brown Fox!.txt" --name-transform "all,command=e
```console ```console
rclone convmv "stories/The Quick Brown Fox!" --name-transform "date=-{YYYYMMDD}" rclone convmv "stories/The Quick Brown Fox!" --name-transform "date=-{YYYYMMDD}"
// Output: stories/The Quick Brown Fox!-20251121 // Output: stories/The Quick Brown Fox!-20251210
``` ```
```console ```console
rclone convmv "stories/The Quick Brown Fox!" --name-transform "date=-{macfriendlytime}" rclone convmv "stories/The Quick Brown Fox!" --name-transform "date=-{macfriendlytime}"
// Output: stories/The Quick Brown Fox!-2025-11-21 0505PM // Output: stories/The Quick Brown Fox!-2025-12-10 1247PM
``` ```
```console ```console

View File

@@ -265,7 +265,7 @@ account key" button.
`https://www.googleapis.com/auth/drive` `https://www.googleapis.com/auth/drive`
to grant read/write access to Google Drive specifically. to grant read/write access to Google Drive specifically.
You can also use `https://www.googleapis.com/auth/drive.readonly` for read You can also use `https://www.googleapis.com/auth/drive.readonly` for read
only access. only access with `--drive-scope=drive.readonly`.
- Click "Authorise" - Click "Authorise"
##### 3. Configure rclone, assuming a new install ##### 3. Configure rclone, assuming a new install

View File

@@ -14,6 +14,9 @@ managing files in the cloud easy. Its cross-platform file backup
services let you upload and back up files from any internet-connected services let you upload and back up files from any internet-connected
device. device.
**Note** FileLu now has a fully featured S3 backend [FileLu S5](/s3#filelu-s5),
an industry standard S3 compatible object store.
## Configuration ## Configuration
Here is an example of how to make a remote called `filelu`. First, run: Here is an example of how to make a remote called `filelu`. First, run:

View File

@@ -121,7 +121,7 @@ Flags for general networking and HTTP stuff.
--tpslimit float Limit HTTP transactions per second to this --tpslimit float Limit HTTP transactions per second to this
--tpslimit-burst int Max burst of transactions for --tpslimit (default 1) --tpslimit-burst int Max burst of transactions for --tpslimit (default 1)
--use-cookies Enable session cookiejar --use-cookies Enable session cookiejar
--user-agent string Set the user-agent to a specified string (default "rclone/v1.72.0") --user-agent string Set the user-agent to a specified string (default "rclone/v1.72.1")
``` ```
@@ -638,7 +638,7 @@ Backend-only flags (these can be set in the config file also).
--gcs-description string Description of the remote --gcs-description string Description of the remote
--gcs-directory-markers Upload an empty object with a trailing slash when a new directory is created --gcs-directory-markers Upload an empty object with a trailing slash when a new directory is created
--gcs-encoding Encoding The encoding for the backend (default Slash,CrLf,InvalidUtf8,Dot) --gcs-encoding Encoding The encoding for the backend (default Slash,CrLf,InvalidUtf8,Dot)
--gcs-endpoint string Endpoint for the service --gcs-endpoint string Custom endpoint for the storage API. Leave blank to use the provider default
--gcs-env-auth Get GCP IAM credentials from runtime (environment variables or instance meta data if no env vars) --gcs-env-auth Get GCP IAM credentials from runtime (environment variables or instance meta data if no env vars)
--gcs-location string Location for the newly created buckets --gcs-location string Location for the newly created buckets
--gcs-no-check-bucket If set, don't attempt to check the bucket exists or create it --gcs-no-check-bucket If set, don't attempt to check the bucket exists or create it

View File

@@ -785,9 +785,14 @@ Properties:
#### --gcs-endpoint #### --gcs-endpoint
Endpoint for the service. Custom endpoint for the storage API. Leave blank to use the provider default.
Leave blank normally. When using a custom endpoint that includes a subpath (e.g. example.org/custom/endpoint),
the subpath will be ignored during upload operations due to a limitation in the
underlying Google API Go client library.
Download and listing operations will work correctly with the full endpoint path.
If you require subpath support for uploads, avoid using subpaths in your custom
endpoint configuration.
Properties: Properties:
@@ -795,6 +800,13 @@ Properties:
- Env Var: RCLONE_GCS_ENDPOINT - Env Var: RCLONE_GCS_ENDPOINT
- Type: string - Type: string
- Required: false - Required: false
- Examples:
- "storage.example.org"
- Specify a custom endpoint
- "storage.example.org:4443"
- Specifying a custom endpoint with port
- "storage.example.org:4443/gcs/api"
- Specifying a subpath, see the note, uploads won't use the custom path!
#### --gcs-encoding #### --gcs-encoding

View File

@@ -1383,12 +1383,21 @@ Properties:
- "ru-1" - "ru-1"
- St. Petersburg - St. Petersburg
- Provider: Selectel,Servercore - Provider: Selectel,Servercore
- "gis-1" - "ru-3"
- Moscow - St. Petersburg
- Provider: Servercore - Provider: Selectel
- "ru-7" - "ru-7"
- Moscow - Moscow
- Provider: Servercore - Provider: Selectel,Servercore
- "gis-1"
- Moscow
- Provider: Selectel,Servercore
- "kz-1"
- Kazakhstan
- Provider: Selectel
- "uz-2"
- Uzbekistan
- Provider: Selectel
- "uz-2" - "uz-2"
- Tashkent, Uzbekistan - Tashkent, Uzbekistan
- Provider: Servercore - Provider: Servercore
@@ -2180,13 +2189,25 @@ Properties:
- SeaweedFS S3 localhost - SeaweedFS S3 localhost
- Provider: SeaweedFS - Provider: SeaweedFS
- "s3.ru-1.storage.selcloud.ru" - "s3.ru-1.storage.selcloud.ru"
- Saint Petersburg - St. Petersburg
- Provider: Selectel
- "s3.ru-3.storage.selcloud.ru"
- St. Petersburg
- Provider: Selectel
- "s3.ru-7.storage.selcloud.ru"
- Moscow
- Provider: Selectel,Servercore - Provider: Selectel,Servercore
- "s3.gis-1.storage.selcloud.ru" - "s3.gis-1.storage.selcloud.ru"
- Moscow - Moscow
- Provider: Servercore - Provider: Selectel,Servercore
- "s3.ru-7.storage.selcloud.ru" - "s3.kz-1.storage.selcloud.ru"
- Moscow - Kazakhstan
- Provider: Selectel
- "s3.uz-2.storage.selcloud.ru"
- Uzbekistan
- Provider: Selectel
- "s3.ru-1.storage.selcloud.ru"
- Saint Petersburg
- Provider: Servercore - Provider: Servercore
- "s3.uz-2.srvstorage.uz" - "s3.uz-2.srvstorage.uz"
- Tashkent, Uzbekistan - Tashkent, Uzbekistan

View File

@@ -19,8 +19,9 @@ Thank you to our sponsors:
{{< sponsor src="/img/logos/mega-s4.svg" width="300" height="200" title="MEGA S4: New S3 compatible object storage. High scale. Low cost. Free egress." link="https://mega.io/objectstorage?utm_source=rclone&utm_medium=referral&utm_campaign=rclone-mega-s4&mct=rclonepromo">}} {{< sponsor src="/img/logos/mega-s4.svg" width="300" height="200" title="MEGA S4: New S3 compatible object storage. High scale. Low cost. Free egress." link="https://mega.io/objectstorage?utm_source=rclone&utm_medium=referral&utm_campaign=rclone-mega-s4&mct=rclonepromo">}}
{{< sponsor src="/img/logos/sia.svg" width="200" height="200" title="Visit our sponsor sia" link="https://sia.tech">}} {{< sponsor src="/img/logos/sia.svg" width="200" height="200" title="Visit our sponsor sia" link="https://sia.tech">}}
{{< sponsor src="/img/logos/route4me.svg" width="400" height="200" title="Visit our sponsor Route4Me" link="https://route4me.com/">}} {{< sponsor src="/img/logos/route4me.svg" width="400" height="200" title="Visit our sponsor Route4Me" link="https://route4me.com/">}}
{{< sponsor src="/img/logos/rcloneview.svg" width="300" height="200" title="Visit our sponsor RcloneView" link="https://rcloneview.com/">}} {{< sponsor src="/img/logos/rcloneview-banner.svg" width="300" height="200" title="Visit our sponsor RcloneView" link="https://rcloneview.com/">}}
{{< sponsor src="/img/logos/rcloneui.svg" width="300" height="200" title="Visit our sponsor RcloneUI" link="https://github.com/rclone-ui/rclone-ui">}} {{< sponsor src="/img/logos/rcloneui.svg" width="300" height="200" title="Visit our sponsor RcloneUI" link="https://github.com/rclone-ui/rclone-ui">}}
{{< sponsor src="/img/logos/shade.svg" width="300" height="200" title="Visit our sponsor Shade" link="https://shade.inc">}}
{{< sponsor src="/img/logos/filelu-rclone.svg" width="300" height="200" title="Visit our sponsor FileLu" link="https://filelu.com/">}} {{< sponsor src="/img/logos/filelu-rclone.svg" width="300" height="200" title="Visit our sponsor FileLu" link="https://filelu.com/">}}
{{< sponsor src="/img/logos/torbox.png" width="200" height="200" title="Visit our sponsor TORBOX" link="https://www.torbox.app/">}} {{< sponsor src="/img/logos/torbox.png" width="200" height="200" title="Visit our sponsor TORBOX" link="https://www.torbox.app/">}}
{{< sponsor src="/img/logos/spectra-logic.svg" width="300" height="200" title="Visit our sponsor Spectra Logic" link="https://spectralogic.com/">}} {{< sponsor src="/img/logos/spectra-logic.svg" width="300" height="200" title="Visit our sponsor Spectra Logic" link="https://spectralogic.com/">}}

View File

@@ -14,13 +14,12 @@
Platinum Sponsor Platinum Sponsor
</div> </div>
<div class="card-body"> <div class="card-body">
<a id="platinum" href="https://rabata.io/?utm_source=banner&utm_medium=rclone&utm_content=general" target="_blank" rel="noopener" title="Visit rclone's sponsor Rabata.io"><img style="width: 100%; height: auto;" src="/img/logos/rabata/txt_1_300x114.png"></a><br /> <a id="platinum" href="https://rabata.io/?utm_source=banner&utm_medium=rclone&utm_content=general" target="_blank" rel="noopener" title="Visit rclone's sponsor Rabata.io"><img style="width: 100%; height: auto;" src="/img/logos/rabata/txt_1_website.png"></a><br />
<script> <script>
const imgs = [ const imgs = [
{ href: "https://rabata.io/?utm_source=banner&utm_medium=rclone&utm_content=general", img: "/img/logos/rabata/txt_1_300x114.png" }, { href: "https://rabata.io/?utm_source=banner&utm_medium=rclone&utm_content=general", img: "/img/logos/rabata/txt_1_website.png" },
{ href: "https://rabata.io/?utm_source=banner&utm_medium=rclone&utm_content=general", img: "/img/logos/rabata/txt_2_300x114.png" }, { href: "https://rabata.io/?utm_source=banner&utm_medium=rclone&utm_content=general", img: "/img/logos/rabata/txt_2_website.png" },
{ href: "https://rabata.io/?utm_source=banner&utm_medium=rclone&utm_content=general", img: "/img/logos/rabata/txt_3_300x114.png" }, { href: "https://rabata.io/grant-application?utm_source=banner&utm_medium=rclone&utm_content=grant1", img: "/img/logos/rabata/100k_website.png" },
{ href: "https://rabata.io/grant-application?utm_source=banner&utm_medium=rclone&utm_content=grant1", img: "/img/logos/rabata/100k_300x114.png" },
]; ];
const img = imgs[Math.floor(Math.random() * imgs.length)]; const img = imgs[Math.floor(Math.random() * imgs.length)];
document.addEventListener("DOMContentLoaded", () => { document.addEventListener("DOMContentLoaded", () => {
@@ -67,6 +66,14 @@
<a href="https://github.com/rclone-ui/rclone-ui" target="_blank" rel="noopener" title="Visit rclone's sponsor rclone UI"><img src="/img/logos/rcloneui.svg"></a><br /> <a href="https://github.com/rclone-ui/rclone-ui" target="_blank" rel="noopener" title="Visit rclone's sponsor rclone UI"><img src="/img/logos/rcloneui.svg"></a><br />
</div> </div>
</div> </div>
<div class="card">
<div class="card-header">
Silver Sponsor
</div>
<div class="card-body">
<a href="https://shade.inc/" target="_blank" rel="noopener" title="Visit rclone's sponsor Shade"><img style="max-width: 100%; height: auto;" src="/img/logos/shade.svg"></a><br />
</div>
</div>
{{end}} {{end}}
<div class="card"> <div class="card">

View File

@@ -55,7 +55,7 @@
<a class="dropdown-item" href="/fichier/"><i class="fa fa-archive fa-fw"></i> 1Fichier</a> <a class="dropdown-item" href="/fichier/"><i class="fa fa-archive fa-fw"></i> 1Fichier</a>
<a class="dropdown-item" href="/netstorage/"><i class="fas fa-database fa-fw"></i> Akamai NetStorage</a> <a class="dropdown-item" href="/netstorage/"><i class="fas fa-database fa-fw"></i> Akamai NetStorage</a>
<a class="dropdown-item" href="/alias/"><i class="fa fa-link fa-fw"></i> Alias</a> <a class="dropdown-item" href="/alias/"><i class="fa fa-link fa-fw"></i> Alias</a>
<a class="dropdown-item" href="/s3/"><i class="fab fa-amazon fa-fw"></i> Amazon S3</a> <a class="dropdown-item" href="/s3/"><i class="fab fa-amazon fa-fw"></i> Amazon S3 Storage Providers</a>
<a class="dropdown-item" href="/archive/"><i class="fa fa-archive fa-fw"></i> Archive</a> <a class="dropdown-item" href="/archive/"><i class="fa fa-archive fa-fw"></i> Archive</a>
<a class="dropdown-item" href="/b2/"><i class="fa fa-fire fa-fw"></i> Backblaze B2</a> <a class="dropdown-item" href="/b2/"><i class="fa fa-fire fa-fw"></i> Backblaze B2</a>
<a class="dropdown-item" href="/box/"><i class="fa fa-archive fa-fw"></i> Box</a> <a class="dropdown-item" href="/box/"><i class="fa fa-archive fa-fw"></i> Box</a>
@@ -69,6 +69,7 @@
<a class="dropdown-item" href="/dropbox/"><i class="fab fa-dropbox fa-fw"></i> Dropbox</a> <a class="dropdown-item" href="/dropbox/"><i class="fab fa-dropbox fa-fw"></i> Dropbox</a>
<a class="dropdown-item" href="/filefabric/"><i class="fa fa-cloud fa-fw"></i> Enterprise File Fabric</a> <a class="dropdown-item" href="/filefabric/"><i class="fa fa-cloud fa-fw"></i> Enterprise File Fabric</a>
<a class="dropdown-item" href="/filelu/"><i class="fa fa-folder fa-fw"></i> FileLu Cloud Storage</a> <a class="dropdown-item" href="/filelu/"><i class="fa fa-folder fa-fw"></i> FileLu Cloud Storage</a>
<a class="dropdown-item" href="/s3/#filelu-s5"><i class="fa fa-folder fa-fw"></i> FileLu S5 (S3-Compatible)</a>
<a class="dropdown-item" href="/filescom/"><i class="fa fa-brands fa-files-pinwheel fa-fw"></i> Files.com</a> <a class="dropdown-item" href="/filescom/"><i class="fa fa-brands fa-files-pinwheel fa-fw"></i> Files.com</a>
<a class="dropdown-item" href="/ftp/"><i class="fa fa-file fa-fw"></i> FTP</a> <a class="dropdown-item" href="/ftp/"><i class="fa fa-file fa-fw"></i> FTP</a>
<a class="dropdown-item" href="/gofile/"><i class="fa fa-folder fa-fw"></i> Gofile</a> <a class="dropdown-item" href="/gofile/"><i class="fa fa-folder fa-fw"></i> Gofile</a>
@@ -87,7 +88,7 @@
<a class="dropdown-item" href="/linkbox/"><i class="fa fa-infinity fa-fw"></i> Linkbox</a> <a class="dropdown-item" href="/linkbox/"><i class="fa fa-infinity fa-fw"></i> Linkbox</a>
<a class="dropdown-item" href="/mailru/"><i class="fa fa-at fa-fw"></i> Mail.ru Cloud</a> <a class="dropdown-item" href="/mailru/"><i class="fa fa-at fa-fw"></i> Mail.ru Cloud</a>
<a class="dropdown-item" href="/mega/"><i class="fa fa-archive fa-fw"></i> Mega</a> <a class="dropdown-item" href="/mega/"><i class="fa fa-archive fa-fw"></i> Mega</a>
<a class="dropdown-item" href="/s3/#mega"><i class="fa fa-archive fa-fw"></i> Mega S4</a> <a class="dropdown-item" href="/s3/#mega"><i class="fa fa-archive fa-fw"></i> Mega S4 (S3-Compatible)</a>
<a class="dropdown-item" href="/memory/"><i class="fas fa-memory fa-fw"></i> Memory</a> <a class="dropdown-item" href="/memory/"><i class="fas fa-memory fa-fw"></i> Memory</a>
<a class="dropdown-item" href="/azureblob/"><i class="fab fa-windows fa-fw"></i> Microsoft Azure Blob Storage</a> <a class="dropdown-item" href="/azureblob/"><i class="fab fa-windows fa-fw"></i> Microsoft Azure Blob Storage</a>
<a class="dropdown-item" href="/azurefiles/"><i class="fab fa-windows fa-fw"></i> Microsoft Azure Files Storage</a> <a class="dropdown-item" href="/azurefiles/"><i class="fab fa-windows fa-fw"></i> Microsoft Azure Files Storage</a>

View File

@@ -1 +1 @@
v1.72.0 v1.72.1

View File

@@ -2,6 +2,7 @@ package configfile
import ( import (
"fmt" "fmt"
"io"
"os" "os"
"path/filepath" "path/filepath"
"runtime" "runtime"
@@ -362,3 +363,39 @@ func TestConfigFileSaveSymlinkAbsolute(t *testing.T) {
testSymlink(t, link, target, resolvedTarget) testSymlink(t, link, target, resolvedTarget)
}) })
} }
type pipedInput struct {
io.Reader
}
func (p *pipedInput) Read(b []byte) (int, error) {
return p.Reader.Read(b)
}
func (*pipedInput) Seek(int64, int) (int64, error) {
return 0, fmt.Errorf("Seek not supported")
}
func TestPipedConfig(t *testing.T) {
t.Run("DoesNotSupportSeeking", func(t *testing.T) {
r := &pipedInput{strings.NewReader("")}
_, err := r.Seek(0, io.SeekStart)
require.Error(t, err)
})
t.Run("IsSupported", func(t *testing.T) {
r := &pipedInput{strings.NewReader(configData)}
_, err := config.Decrypt(r)
require.NoError(t, err)
})
t.Run("PlainTextConfigIsNotConsumedByCryptCheck", func(t *testing.T) {
in := &pipedInput{strings.NewReader(configData)}
r, _ := config.Decrypt(in)
got, err := io.ReadAll(r)
require.NoError(t, err)
assert.Equal(t, configData, string(got))
})
}

View File

@@ -77,8 +77,9 @@ func Decrypt(b io.ReadSeeker) (io.Reader, error) {
if strings.HasPrefix(l, "RCLONE_ENCRYPT_V") { if strings.HasPrefix(l, "RCLONE_ENCRYPT_V") {
return nil, errors.New("unsupported configuration encryption - update rclone for support") return nil, errors.New("unsupported configuration encryption - update rclone for support")
} }
// Restore non-seekable plain-text stream to its original state
if _, err := b.Seek(0, io.SeekStart); err != nil { if _, err := b.Seek(0, io.SeekStart); err != nil {
return nil, err return io.MultiReader(strings.NewReader(l+"\n"), r), nil
} }
return b, nil return b, nil
} }

View File

@@ -209,7 +209,7 @@ func InitLogging() {
// Log file output // Log file output
if Opt.File != "" { if Opt.File != "" {
var w io.Writer var w io.Writer
if Opt.MaxSize == 0 { if Opt.MaxSize < 0 {
// No log rotation - just open the file as normal // No log rotation - just open the file as normal
// We'll capture tracebacks like this too. // We'll capture tracebacks like this too.
f, err := os.OpenFile(Opt.File, os.O_WRONLY|os.O_CREATE|os.O_APPEND, 0640) f, err := os.OpenFile(Opt.File, os.O_WRONLY|os.O_CREATE|os.O_APPEND, 0640)

View File

@@ -310,6 +310,10 @@ func (h *OutputHandler) jsonLog(ctx context.Context, buf *bytes.Buffer, r slog.R
r.AddAttrs( r.AddAttrs(
slog.String("source", getCaller(2)), slog.String("source", getCaller(2)),
) )
// Add PID if requested
if h.format&logFormatPid != 0 {
r.AddAttrs(slog.Int("pid", os.Getpid()))
}
h.mu.Lock() h.mu.Lock()
err = h.jsonHandler.Handle(ctx, r) err = h.jsonHandler.Handle(ctx, r)
if err == nil { if err == nil {

View File

@@ -198,6 +198,17 @@ func TestAddOutputUseJSONLog(t *testing.T) {
assert.Equal(t, "2020/01/02 03:04:05 INFO : world\n", extraText) assert.Equal(t, "2020/01/02 03:04:05 INFO : world\n", extraText)
} }
// Test JSON log includes PID when logFormatPid is set.
func TestJSONLogWithPid(t *testing.T) {
buf := &bytes.Buffer{}
h := NewOutputHandler(buf, nil, logFormatJSON|logFormatPid)
r := slog.NewRecord(t0, slog.LevelInfo, "hello", 0)
require.NoError(t, h.Handle(context.Background(), r))
output := buf.String()
assert.Contains(t, output, fmt.Sprintf(`"pid":%d`, os.Getpid()))
}
// Test WithAttrs and WithGroup return new handlers with same settings. // Test WithAttrs and WithGroup return new handlers with same settings.
func TestWithAttrsAndGroup(t *testing.T) { func TestWithAttrsAndGroup(t *testing.T) {
buf := &bytes.Buffer{} buf := &bytes.Buffer{}

View File

@@ -1,4 +1,4 @@
package fs package fs
// VersionTag of rclone // VersionTag of rclone
var VersionTag = "v1.72.0" var VersionTag = "v1.72.1"

View File

@@ -218,12 +218,12 @@ rclone convmv "stories/The Quick Brown Fox!.txt" --name-transform "all,command=e
```console ```console
rclone convmv "stories/The Quick Brown Fox!" --name-transform "date=-{YYYYMMDD}" rclone convmv "stories/The Quick Brown Fox!" --name-transform "date=-{YYYYMMDD}"
// Output: stories/The Quick Brown Fox!-20251121 // Output: stories/The Quick Brown Fox!-20251210
``` ```
```console ```console
rclone convmv "stories/The Quick Brown Fox!" --name-transform "date=-{macfriendlytime}" rclone convmv "stories/The Quick Brown Fox!" --name-transform "date=-{macfriendlytime}"
// Output: stories/The Quick Brown Fox!-2025-11-21 0508PM // Output: stories/The Quick Brown Fox!-2025-12-10 1253PM
``` ```
```console ```console

185
rclone.1 generated
View File

@@ -15,7 +15,7 @@
. ftr VB CB . ftr VB CB
. ftr VBI CBI . ftr VBI CBI
.\} .\}
.TH "rclone" "1" "Nov 21, 2025" "User Manual" "" .TH "rclone" "1" "Dec 10, 2025" "User Manual" ""
.hy .hy
.SH NAME .SH NAME
.PP .PP
@@ -6260,14 +6260,14 @@ rclone convmv \[dq]stories/The Quick Brown Fox!.txt\[dq] --name-transform \[dq]a
.nf .nf
\f[C] \f[C]
rclone convmv \[dq]stories/The Quick Brown Fox!\[dq] --name-transform \[dq]date=-{YYYYMMDD}\[dq] rclone convmv \[dq]stories/The Quick Brown Fox!\[dq] --name-transform \[dq]date=-{YYYYMMDD}\[dq]
// Output: stories/The Quick Brown Fox!-20251121 // Output: stories/The Quick Brown Fox!-20251210
\f[R] \f[R]
.fi .fi
.IP .IP
.nf .nf
\f[C] \f[C]
rclone convmv \[dq]stories/The Quick Brown Fox!\[dq] --name-transform \[dq]date=-{macfriendlytime}\[dq] rclone convmv \[dq]stories/The Quick Brown Fox!\[dq] --name-transform \[dq]date=-{macfriendlytime}\[dq]
// Output: stories/The Quick Brown Fox!-2025-11-21 0505PM // Output: stories/The Quick Brown Fox!-2025-12-10 1247PM
\f[R] \f[R]
.fi .fi
.IP .IP
@@ -31741,7 +31741,7 @@ Flags for general networking and HTTP stuff.
--tpslimit float Limit HTTP transactions per second to this --tpslimit float Limit HTTP transactions per second to this
--tpslimit-burst int Max burst of transactions for --tpslimit (default 1) --tpslimit-burst int Max burst of transactions for --tpslimit (default 1)
--use-cookies Enable session cookiejar --use-cookies Enable session cookiejar
--user-agent string Set the user-agent to a specified string (default \[dq]rclone/v1.72.0\[dq]) --user-agent string Set the user-agent to a specified string (default \[dq]rclone/v1.72.1\[dq])
\f[R] \f[R]
.fi .fi
.SS Performance .SS Performance
@@ -32258,7 +32258,7 @@ Backend-only flags (these can be set in the config file also).
--gcs-description string Description of the remote --gcs-description string Description of the remote
--gcs-directory-markers Upload an empty object with a trailing slash when a new directory is created --gcs-directory-markers Upload an empty object with a trailing slash when a new directory is created
--gcs-encoding Encoding The encoding for the backend (default Slash,CrLf,InvalidUtf8,Dot) --gcs-encoding Encoding The encoding for the backend (default Slash,CrLf,InvalidUtf8,Dot)
--gcs-endpoint string Endpoint for the service --gcs-endpoint string Custom endpoint for the storage API. Leave blank to use the provider default
--gcs-env-auth Get GCP IAM credentials from runtime (environment variables or instance meta data if no env vars) --gcs-env-auth Get GCP IAM credentials from runtime (environment variables or instance meta data if no env vars)
--gcs-location string Location for the newly created buckets --gcs-location string Location for the newly created buckets
--gcs-no-check-bucket If set, don\[aq]t attempt to check the bucket exists or create it --gcs-no-check-bucket If set, don\[aq]t attempt to check the bucket exists or create it
@@ -34968,7 +34968,31 @@ The following backends have known issues that need more investigation:
\f[V]TestBisyncRemoteRemote/normalization\f[R] (https://pub.rclone.org/integration-tests/current/dropbox-cmd.bisync-TestDropbox-1.txt) \f[V]TestBisyncRemoteRemote/normalization\f[R] (https://pub.rclone.org/integration-tests/current/dropbox-cmd.bisync-TestDropbox-1.txt)
.RE .RE
.IP \[bu] 2 .IP \[bu] 2
Updated: 2025-11-21-010037 \f[V]TestGoFile\f[R] (\f[V]gofile\f[R])
.RS 2
.IP \[bu] 2
\f[V]TestBisyncRemoteLocal/all_changed\f[R] (https://pub.rclone.org/integration-tests/current/gofile-cmd.bisync-TestGoFile-1.txt)
.IP \[bu] 2
\f[V]TestBisyncRemoteLocal/backupdir\f[R] (https://pub.rclone.org/integration-tests/current/gofile-cmd.bisync-TestGoFile-1.txt)
.IP \[bu] 2
\f[V]TestBisyncRemoteLocal/basic\f[R] (https://pub.rclone.org/integration-tests/current/gofile-cmd.bisync-TestGoFile-1.txt)
.IP \[bu] 2
\f[V]TestBisyncRemoteLocal/changes\f[R] (https://pub.rclone.org/integration-tests/current/gofile-cmd.bisync-TestGoFile-1.txt)
.IP \[bu] 2
\f[V]TestBisyncRemoteLocal/check_access\f[R] (https://pub.rclone.org/integration-tests/current/gofile-cmd.bisync-TestGoFile-1.txt)
.IP \[bu] 2
78 more (https://pub.rclone.org/integration-tests/current/)
.RE
.IP \[bu] 2
\f[V]TestPcloud\f[R] (\f[V]pcloud\f[R])
.RS 2
.IP \[bu] 2
\f[V]TestBisyncRemoteRemote/check_access\f[R] (https://pub.rclone.org/integration-tests/current/pcloud-cmd.bisync-TestPcloud-1.txt)
.IP \[bu] 2
\f[V]TestBisyncRemoteRemote/check_access_filters\f[R] (https://pub.rclone.org/integration-tests/current/pcloud-cmd.bisync-TestPcloud-1.txt)
.RE
.IP \[bu] 2
Updated: 2025-12-10-010012
.PP .PP
The following backends either have not been tested recently or have The following backends either have not been tested recently or have
known issues that are deemed unfixable for the time being: known issues that are deemed unfixable for the time being:
@@ -39263,12 +39287,13 @@ Petersburg
Provider: Selectel,Servercore Provider: Selectel,Servercore
.RE .RE
.IP \[bu] 2 .IP \[bu] 2
\[dq]gis-1\[dq] \[dq]ru-3\[dq]
.RS 2 .RS 2
.IP \[bu] 2 .IP \[bu] 2
Moscow St.
Petersburg
.IP \[bu] 2 .IP \[bu] 2
Provider: Servercore Provider: Selectel
.RE .RE
.IP \[bu] 2 .IP \[bu] 2
\[dq]ru-7\[dq] \[dq]ru-7\[dq]
@@ -39276,7 +39301,31 @@ Provider: Servercore
.IP \[bu] 2 .IP \[bu] 2
Moscow Moscow
.IP \[bu] 2 .IP \[bu] 2
Provider: Servercore Provider: Selectel,Servercore
.RE
.IP \[bu] 2
\[dq]gis-1\[dq]
.RS 2
.IP \[bu] 2
Moscow
.IP \[bu] 2
Provider: Selectel,Servercore
.RE
.IP \[bu] 2
\[dq]kz-1\[dq]
.RS 2
.IP \[bu] 2
Kazakhstan
.IP \[bu] 2
Provider: Selectel
.RE
.IP \[bu] 2
\[dq]uz-2\[dq]
.RS 2
.IP \[bu] 2
Uzbekistan
.IP \[bu] 2
Provider: Selectel
.RE .RE
.IP \[bu] 2 .IP \[bu] 2
\[dq]uz-2\[dq] \[dq]uz-2\[dq]
@@ -41371,7 +41420,25 @@ Provider: SeaweedFS
\[dq]s3.ru-1.storage.selcloud.ru\[dq] \[dq]s3.ru-1.storage.selcloud.ru\[dq]
.RS 2 .RS 2
.IP \[bu] 2 .IP \[bu] 2
Saint Petersburg St.
Petersburg
.IP \[bu] 2
Provider: Selectel
.RE
.IP \[bu] 2
\[dq]s3.ru-3.storage.selcloud.ru\[dq]
.RS 2
.IP \[bu] 2
St.
Petersburg
.IP \[bu] 2
Provider: Selectel
.RE
.IP \[bu] 2
\[dq]s3.ru-7.storage.selcloud.ru\[dq]
.RS 2
.IP \[bu] 2
Moscow
.IP \[bu] 2 .IP \[bu] 2
Provider: Selectel,Servercore Provider: Selectel,Servercore
.RE .RE
@@ -41381,13 +41448,29 @@ Provider: Selectel,Servercore
.IP \[bu] 2 .IP \[bu] 2
Moscow Moscow
.IP \[bu] 2 .IP \[bu] 2
Provider: Servercore Provider: Selectel,Servercore
.RE .RE
.IP \[bu] 2 .IP \[bu] 2
\[dq]s3.ru-7.storage.selcloud.ru\[dq] \[dq]s3.kz-1.storage.selcloud.ru\[dq]
.RS 2 .RS 2
.IP \[bu] 2 .IP \[bu] 2
Moscow Kazakhstan
.IP \[bu] 2
Provider: Selectel
.RE
.IP \[bu] 2
\[dq]s3.uz-2.storage.selcloud.ru\[dq]
.RS 2
.IP \[bu] 2
Uzbekistan
.IP \[bu] 2
Provider: Selectel
.RE
.IP \[bu] 2
\[dq]s3.ru-1.storage.selcloud.ru\[dq]
.RS 2
.IP \[bu] 2
Saint Petersburg
.IP \[bu] 2 .IP \[bu] 2
Provider: Servercore Provider: Servercore
.RE .RE
@@ -57445,6 +57528,9 @@ With support for high storage limits and seamless integration with
rclone, FileLu makes managing files in the cloud easy. rclone, FileLu makes managing files in the cloud easy.
Its cross-platform file backup services let you upload and back up files Its cross-platform file backup services let you upload and back up files
from any internet-connected device. from any internet-connected device.
.PP
\f[B]Note\f[R] FileLu now has a fully featured S3 backend FileLu S5, an
industry standard S3 compatible object store.
.SS Configuration .SS Configuration
.PP .PP
Here is an example of how to make a remote called \f[V]filelu\f[R]. Here is an example of how to make a remote called \f[V]filelu\f[R].
@@ -60216,9 +60302,17 @@ Type: bool
Default: false Default: false
.SS --gcs-endpoint .SS --gcs-endpoint
.PP .PP
Endpoint for the service. Custom endpoint for the storage API.
Leave blank to use the provider default.
.PP .PP
Leave blank normally. When using a custom endpoint that includes a subpath (e.g.
example.org/custom/endpoint), the subpath will be ignored during upload
operations due to a limitation in the underlying Google API Go client
library.
Download and listing operations will work correctly with the full
endpoint path.
If you require subpath support for uploads, avoid using subpaths in your
custom endpoint configuration.
.PP .PP
Properties: Properties:
.IP \[bu] 2 .IP \[bu] 2
@@ -60229,6 +60323,29 @@ Env Var: RCLONE_GCS_ENDPOINT
Type: string Type: string
.IP \[bu] 2 .IP \[bu] 2
Required: false Required: false
.IP \[bu] 2
Examples:
.RS 2
.IP \[bu] 2
\[dq]storage.example.org\[dq]
.RS 2
.IP \[bu] 2
Specify a custom endpoint
.RE
.IP \[bu] 2
\[dq]storage.example.org:4443\[dq]
.RS 2
.IP \[bu] 2
Specifying a custom endpoint with port
.RE
.IP \[bu] 2
\[dq]storage.example.org:4443/gcs/api\[dq]
.RS 2
.IP \[bu] 2
Specifying a subpath, see the note, uploads won\[aq]t use the custom
path!
.RE
.RE
.SS --gcs-encoding .SS --gcs-encoding
.PP .PP
The encoding for the backend. The encoding for the backend.
@@ -60557,7 +60674,7 @@ In the next field, \[dq]OAuth Scopes\[dq], enter
access to Google Drive specifically. access to Google Drive specifically.
You can also use You can also use
\f[V]https://www.googleapis.com/auth/drive.readonly\f[R] for read only \f[V]https://www.googleapis.com/auth/drive.readonly\f[R] for read only
access. access with \f[V]--drive-scope=drive.readonly\f[R].
.IP \[bu] 2 .IP \[bu] 2
Click \[dq]Authorise\[dq] Click \[dq]Authorise\[dq]
.SS 3. Configure rclone, assuming a new install .SS 3. Configure rclone, assuming a new install
@@ -87115,6 +87232,40 @@ Options:
.IP \[bu] 2 .IP \[bu] 2
\[dq]error\[dq]: Return an error based on option value. \[dq]error\[dq]: Return an error based on option value.
.SH Changelog .SH Changelog
.SS v1.72.1 - 2025-12-10
.PP
See commits (https://github.com/rclone/rclone/compare/v1.72.0...v1.72.1)
.IP \[bu] 2
Bug Fixes
.RS 2
.IP \[bu] 2
build: update to go1.25.5 to fix
CVE-2025-61729 (https://pkg.go.dev/vuln/GO-2025-4155)
.IP \[bu] 2
doc fixes (Duncan Smart, Nick Craig-Wood)
.IP \[bu] 2
configfile: Fix piped config support (Jonas Tingeborn)
.IP \[bu] 2
log
.RS 2
.IP \[bu] 2
Fix PID not included in JSON log output (Tingsong Xu)
.IP \[bu] 2
Fix backtrace not going to the --log-file (Nick Craig-Wood)
.RE
.RE
.IP \[bu] 2
Google Cloud Storage
.RS 2
.IP \[bu] 2
Improve endpoint parameter docs (Johannes Rothe)
.RE
.IP \[bu] 2
S3
.RS 2
.IP \[bu] 2
Add missing regions for Selectel provider (Nick Craig-Wood)
.RE
.SS v1.72.0 - 2025-11-21 .SS v1.72.0 - 2025-11-21
.PP .PP
See commits (https://github.com/rclone/rclone/compare/v1.71.0...v1.72.0) See commits (https://github.com/rclone/rclone/compare/v1.71.0...v1.72.0)