diff --git a/MANUAL.html b/MANUAL.html
index a3efcec14..a6806137d 100644
--- a/MANUAL.html
+++ b/MANUAL.html
@@ -81,7 +81,7 @@
NAME
rclone - manage files on cloud storage
@@ -426,6 +426,7 @@ choco install rclone

Docker installation
The rclone developers maintain a docker image for rclone.
+Note: We also now offer a paid version of rclone with enterprise-grade security and zero CVEs through our partner SecureBuild. If you are interested, check out their website and the Rclone SecureBuild Image.
These images are built as part of the release process based on a minimal Alpine Linux.
The :latest tag will always point to the latest stable release. You can use the :beta tag to get the latest build from master. You can also use version tags, e.g. :1.49.1, :1.49 or :1.
$ docker pull rclone/rclone:latest
@@ -13230,7 +13231,7 @@ Showing nodes accounting for 1537.03kB, 100% of 1537.03kB total
--tpslimit float Limit HTTP transactions per second to this
--tpslimit-burst int Max burst of transactions for --tpslimit (default 1)
--use-cookies Enable session cookiejar
- --user-agent string Set the user-agent to a specified string (default "rclone/v1.70.1")
+ --user-agent string Set the user-agent to a specified string (default "rclone/v1.70.2")
Flags helpful for increasing performance.
--buffer-size SizeSuffix In memory buffer size when reading files for each --transfer (default 16Mi)
@@ -27604,6 +27605,13 @@ y/e/d> y
Rclone cannot delete files anywhere except under album.
Deleting albums
The Google Photos API does not support deleting albums - see bug #135714733.
+Making your own client_id
+When you use rclone with Google photos in its default configuration you are using rclone's client_id. This is shared between all the rclone users. There is a global rate limit on the number of queries per second that each client_id can do set by Google.
+If there is a problem with this client_id (eg quota too low or the client_id stops working) then you can make your own.
+Please follow the steps in the google drive docs. You will need these scopes instead of the drive ones detailed:
+https://www.googleapis.com/auth/photoslibrary.appendonly
+https://www.googleapis.com/auth/photoslibrary.readonly.appcreateddata
+https://www.googleapis.com/auth/photoslibrary.edit.appcreateddata
Hasher
Hasher is a special overlay backend to create remotes which handle checksums for other remotes. It's main functions include: - Emulate hash types unimplemented by backends - Cache checksums to help with slow hashing of large local or (S)FTP files - Warm up checksum cache from external SUM files
Getting started
@@ -32075,7 +32083,10 @@ y/e/d> y
Creating Client ID for OneDrive Personal
To create your own Client ID, please follow these steps:
-- Open https://portal.azure.com/#blade/Microsoft_AAD_RegisteredApps/ApplicationsListBlade and then click
New registration.
+- Open https://portal.azure.com/?quickstart=true#view/Microsoft_AAD_IAM/ActiveDirectoryMenuBlade/~/Overview and then under the
Add menu click App registration.
+
+- If you have not created an Azure account, you will be prompted to. This is free, but you need to provide a phone number, address, and credit card for identity verification.
+
- Enter a name for your app, choose account type
Accounts in any organizational directory (Any Azure AD directory - Multitenant) and personal Microsoft accounts (e.g. Skype, Xbox), select Web in Redirect URI, then type (do not copy and paste) http://localhost:53682/ and click Register. Copy and keep the Application (client) ID under the app name for later use.
- Under
manage select Certificates & secrets, click New client secret. Enter a description (can be anything) and set Expires to 24 months. Copy and keep that secret Value for later use (you won't be able to see this value afterwards).
- Under
manage select API permissions, click Add a permission and select Microsoft Graph then select delegated permissions.
@@ -32647,75 +32658,75 @@ rclone rc vfs/refresh recursive=true
Permissions are also supported, if --onedrive-metadata-permissions is set. The accepted values for --onedrive-metadata-permissions are "read", "write", "read,write", and "off" (the default). "write" supports adding new permissions, updating the "role" of existing permissions, and removing permissions. Updating and removing require the Permission ID to be known, so it is recommended to use "read,write" instead of "write" if you wish to update/remove permissions.
Permissions are read/written in JSON format using the same schema as the OneDrive API, which differs slightly between OneDrive Personal and Business.
Example for OneDrive Personal:
-[
- {
- "id": "1234567890ABC!123",
- "grantedTo": {
- "user": {
- "id": "ryan@contoso.com"
- },
- "application": {},
- "device": {}
- },
- "invitation": {
- "email": "ryan@contoso.com"
- },
- "link": {
- "webUrl": "https://1drv.ms/t/s!1234567890ABC"
- },
- "roles": [
- "read"
- ],
- "shareId": "s!1234567890ABC"
- }
-]
-Example for OneDrive Business:
[
{
- "id": "48d31887-5fad-4d73-a9f5-3c356e68a038",
- "grantedToIdentities": [
- {
- "user": {
- "displayName": "ryan@contoso.com"
- },
- "application": {},
- "device": {}
- }
- ],
- "link": {
- "type": "view",
- "scope": "users",
- "webUrl": "https://contoso.sharepoint.com/:w:/t/design/a577ghg9hgh737613bmbjf839026561fmzhsr85ng9f3hjck2t5s"
- },
- "roles": [
- "read"
- ],
- "shareId": "u!LKj1lkdlals90j1nlkascl"
- },
- {
- "id": "5D33DD65C6932946",
- "grantedTo": {
- "user": {
- "displayName": "John Doe",
- "id": "efee1b77-fb3b-4f65-99d6-274c11914d12"
- },
- "application": {},
- "device": {}
- },
- "roles": [
- "owner"
- ],
- "shareId": "FWxc1lasfdbEAGM5fI7B67aB5ZMPDMmQ11U"
- }
-]
+ "id": "1234567890ABC!123",
+ "grantedTo": {
+ "user": {
+ "id": "ryan@contoso.com"
+ },
+ "application": {},
+ "device": {}
+ },
+ "invitation": {
+ "email": "ryan@contoso.com"
+ },
+ "link": {
+ "webUrl": "https://1drv.ms/t/s!1234567890ABC"
+ },
+ "roles": [
+ "read"
+ ],
+ "shareId": "s!1234567890ABC"
+ }
+]
+Example for OneDrive Business:
+[
+ {
+ "id": "48d31887-5fad-4d73-a9f5-3c356e68a038",
+ "grantedToIdentities": [
+ {
+ "user": {
+ "displayName": "ryan@contoso.com"
+ },
+ "application": {},
+ "device": {}
+ }
+ ],
+ "link": {
+ "type": "view",
+ "scope": "users",
+ "webUrl": "https://contoso.sharepoint.com/:w:/t/design/a577ghg9hgh737613bmbjf839026561fmzhsr85ng9f3hjck2t5s"
+ },
+ "roles": [
+ "read"
+ ],
+ "shareId": "u!LKj1lkdlals90j1nlkascl"
+ },
+ {
+ "id": "5D33DD65C6932946",
+ "grantedTo": {
+ "user": {
+ "displayName": "John Doe",
+ "id": "efee1b77-fb3b-4f65-99d6-274c11914d12"
+ },
+ "application": {},
+ "device": {}
+ },
+ "roles": [
+ "owner"
+ ],
+ "shareId": "FWxc1lasfdbEAGM5fI7B67aB5ZMPDMmQ11U"
+ }
+]
To write permissions, pass in a "permissions" metadata key using this same format. The --metadata-mapper tool can be very helpful for this.
When adding permissions, an email address can be provided in the User.ID or DisplayName properties of grantedTo or grantedToIdentities. Alternatively, an ObjectID can be provided in User.ID. At least one valid recipient must be provided in order to add a permission for a user. Creating a Public Link is also supported, if Link.Scope is set to "anonymous".
Example request to add a "read" permission with --metadata-mapper:
-{
- "Metadata": {
- "permissions": "[{\"grantedToIdentities\":[{\"user\":{\"id\":\"ryan@contoso.com\"}}],\"roles\":[\"read\"]}]"
- }
-}
+{
+ "Metadata": {
+ "permissions": "[{\"grantedToIdentities\":[{\"user\":{\"id\":\"ryan@contoso.com\"}}],\"roles\":[\"read\"]}]"
+ }
+}
Note that adding a permission can fail if a conflicting permission already exists for the file/folder.
To update an existing permission, include both the Permission ID and the new roles to be assigned. roles is the only property that can be changed.
To remove permissions, pass in a blob containing only the permissions you wish to keep (which can be empty, to remove all.) Note that the owner role will be ignored, as it cannot be removed.
@@ -40079,6 +40090,36 @@ $ tree /tmp/c
- "error": return an error based on option value
Changelog
+v1.70.2 - 2025-06-27
+See commits
+
+- Bug Fixes
+
+- convmv: Make --dry-run logs less noisy (nielash)
+- sync: Avoid copying dir metadata to itself (nielash)
+- build: Bump github.com/go-chi/chi/v5 from 5.2.1 to 5.2.2 to fix GHSA-vrw8-fxc6-2r93 (dependabot[bot])
+- convmv: Fix moving to unicode-equivalent name (nielash)
+- log: Fix deadlock when using systemd logging (Nick Craig-Wood)
+- pacer: Fix nil pointer deref in RetryError (Nick Craig-Wood)
+- doc fixes (Ali Zein Yousuf, Nick Craig-Wood)
+
+- Local
+
+- Fix --skip-links on Windows when skipping Junction points (Nick Craig-Wood)
+
+- Combine
+
+- Fix directory not found errors with ListP interface (Nick Craig-Wood)
+
+- Mega
+
+- Fix tls handshake failure (necaran)
+
+- Pikpak
+
+- Fix uploads fail with "aws-chunked encoding is not supported" error (Nick Craig-Wood)
+
+
v1.70.1 - 2025-06-19
See commits
diff --git a/MANUAL.md b/MANUAL.md
index 5fc897923..f8fe241d6 100644
--- a/MANUAL.md
+++ b/MANUAL.md
@@ -1,6 +1,6 @@
% rclone(1) User Manual
% Nick Craig-Wood
-% Jun 19, 2025
+% Jun 27, 2025
# NAME
@@ -512,6 +512,12 @@ package is here.
The rclone developers maintain a [docker image for rclone](https://hub.docker.com/r/rclone/rclone).
+**Note:** We also now offer a paid version of rclone with
+enterprise-grade security and zero CVEs through our partner
+[SecureBuild](https://securebuild.com/blog/introducing-securebuild).
+If you are interested, check out their website and the [Rclone
+SecureBuild Image](https://securebuild.com/images/rclone).
+
These images are built as part of the release process based on a
minimal Alpine Linux.
@@ -22398,7 +22404,7 @@ Flags for general networking and HTTP stuff.
--tpslimit float Limit HTTP transactions per second to this
--tpslimit-burst int Max burst of transactions for --tpslimit (default 1)
--use-cookies Enable session cookiejar
- --user-agent string Set the user-agent to a specified string (default "rclone/v1.70.1")
+ --user-agent string Set the user-agent to a specified string (default "rclone/v1.70.2")
```
@@ -42271,6 +42277,25 @@ Rclone cannot delete files anywhere except under `album`.
The Google Photos API does not support deleting albums - see [bug #135714733](https://issuetracker.google.com/issues/135714733).
+## Making your own client_id
+
+When you use rclone with Google photos in its default configuration you
+are using rclone's client_id. This is shared between all the rclone
+users. There is a global rate limit on the number of queries per
+second that each client_id can do set by Google.
+
+If there is a problem with this client_id (eg quota too low or the
+client_id stops working) then you can make your own.
+
+Please follow the steps in [the google drive docs](https://rclone.org/drive/#making-your-own-client-id).
+You will need these scopes instead of the drive ones detailed:
+
+```
+https://www.googleapis.com/auth/photoslibrary.appendonly
+https://www.googleapis.com/auth/photoslibrary.readonly.appcreateddata
+https://www.googleapis.com/auth/photoslibrary.edit.appcreateddata
+```
+
# Hasher
Hasher is a special overlay backend to create remotes which handle
@@ -48337,7 +48362,8 @@ For example, you might see throttling.
To create your own Client ID, please follow these steps:
-1. Open https://portal.azure.com/#blade/Microsoft_AAD_RegisteredApps/ApplicationsListBlade and then click `New registration`.
+1. Open https://portal.azure.com/?quickstart=true#view/Microsoft_AAD_IAM/ActiveDirectoryMenuBlade/~/Overview and then under the `Add` menu click `App registration`.
+ * If you have not created an Azure account, you will be prompted to. This is free, but you need to provide a phone number, address, and credit card for identity verification.
2. Enter a name for your app, choose account type `Accounts in any organizational directory (Any Azure AD directory - Multitenant) and personal Microsoft accounts (e.g. Skype, Xbox)`, select `Web` in `Redirect URI`, then type (do not copy and paste) `http://localhost:53682/` and click Register. Copy and keep the `Application (client) ID` under the app name for later use.
3. Under `manage` select `Certificates & secrets`, click `New client secret`. Enter a description (can be anything) and set `Expires` to 24 months. Copy and keep that secret _Value_ for later use (you _won't_ be able to see this value afterwards).
4. Under `manage` select `API permissions`, click `Add a permission` and select `Microsoft Graph` then select `delegated permissions`.
@@ -59114,6 +59140,27 @@ Options:
# Changelog
+## v1.70.2 - 2025-06-27
+
+[See commits](https://github.com/rclone/rclone/compare/v1.70.1...v1.70.2)
+
+* Bug Fixes
+ * convmv: Make --dry-run logs less noisy (nielash)
+ * sync: Avoid copying dir metadata to itself (nielash)
+ * build: Bump github.com/go-chi/chi/v5 from 5.2.1 to 5.2.2 to fix GHSA-vrw8-fxc6-2r93 (dependabot[bot])
+ * convmv: Fix moving to unicode-equivalent name (nielash)
+ * log: Fix deadlock when using systemd logging (Nick Craig-Wood)
+ * pacer: Fix nil pointer deref in RetryError (Nick Craig-Wood)
+ * doc fixes (Ali Zein Yousuf, Nick Craig-Wood)
+* Local
+ * Fix --skip-links on Windows when skipping Junction points (Nick Craig-Wood)
+* Combine
+ * Fix directory not found errors with ListP interface (Nick Craig-Wood)
+* Mega
+ * Fix tls handshake failure (necaran)
+* Pikpak
+ * Fix uploads fail with "aws-chunked encoding is not supported" error (Nick Craig-Wood)
+
## v1.70.1 - 2025-06-19
[See commits](https://github.com/rclone/rclone/compare/v1.70.0...v1.70.1)
diff --git a/MANUAL.txt b/MANUAL.txt
index 360908ae0..a273e9f7c 100644
--- a/MANUAL.txt
+++ b/MANUAL.txt
@@ -1,6 +1,6 @@
rclone(1) User Manual
Nick Craig-Wood
-Jun 19, 2025
+Jun 27, 2025
NAME
@@ -491,6 +491,10 @@ Docker installation
The rclone developers maintain a docker image for rclone.
+Note: We also now offer a paid version of rclone with enterprise-grade
+security and zero CVEs through our partner SecureBuild. If you are
+interested, check out their website and the Rclone SecureBuild Image.
+
These images are built as part of the release process based on a minimal
Alpine Linux.
@@ -21959,7 +21963,7 @@ Flags for general networking and HTTP stuff.
--tpslimit float Limit HTTP transactions per second to this
--tpslimit-burst int Max burst of transactions for --tpslimit (default 1)
--use-cookies Enable session cookiejar
- --user-agent string Set the user-agent to a specified string (default "rclone/v1.70.1")
+ --user-agent string Set the user-agent to a specified string (default "rclone/v1.70.2")
Performance
@@ -41642,6 +41646,23 @@ Deleting albums
The Google Photos API does not support deleting albums - see bug
#135714733.
+Making your own client_id
+
+When you use rclone with Google photos in its default configuration you
+are using rclone's client_id. This is shared between all the rclone
+users. There is a global rate limit on the number of queries per second
+that each client_id can do set by Google.
+
+If there is a problem with this client_id (eg quota too low or the
+client_id stops working) then you can make your own.
+
+Please follow the steps in the google drive docs. You will need these
+scopes instead of the drive ones detailed:
+
+ https://www.googleapis.com/auth/photoslibrary.appendonly
+ https://www.googleapis.com/auth/photoslibrary.readonly.appcreateddata
+ https://www.googleapis.com/auth/photoslibrary.edit.appcreateddata
+
Hasher
Hasher is a special overlay backend to create remotes which handle
@@ -47861,8 +47882,11 @@ Creating Client ID for OneDrive Personal
To create your own Client ID, please follow these steps:
1. Open
- https://portal.azure.com/#blade/Microsoft_AAD_RegisteredApps/ApplicationsListBlade
- and then click New registration.
+ https://portal.azure.com/?quickstart=true#view/Microsoft_AAD_IAM/ActiveDirectoryMenuBlade/~/Overview
+ and then under the Add menu click App registration.
+ - If you have not created an Azure account, you will be prompted
+ to. This is free, but you need to provide a phone number,
+ address, and credit card for identity verification.
2. Enter a name for your app, choose account type
Accounts in any organizational directory (Any Azure AD directory - Multitenant) and personal Microsoft accounts (e.g. Skype, Xbox),
select Web in Redirect URI, then type (do not copy and paste)
@@ -58777,6 +58801,31 @@ Options:
Changelog
+v1.70.2 - 2025-06-27
+
+See commits
+
+- Bug Fixes
+ - convmv: Make --dry-run logs less noisy (nielash)
+ - sync: Avoid copying dir metadata to itself (nielash)
+ - build: Bump github.com/go-chi/chi/v5 from 5.2.1 to 5.2.2 to fix
+ GHSA-vrw8-fxc6-2r93 (dependabot[bot])
+ - convmv: Fix moving to unicode-equivalent name (nielash)
+ - log: Fix deadlock when using systemd logging (Nick Craig-Wood)
+ - pacer: Fix nil pointer deref in RetryError (Nick Craig-Wood)
+ - doc fixes (Ali Zein Yousuf, Nick Craig-Wood)
+- Local
+ - Fix --skip-links on Windows when skipping Junction points (Nick
+ Craig-Wood)
+- Combine
+ - Fix directory not found errors with ListP interface (Nick
+ Craig-Wood)
+- Mega
+ - Fix tls handshake failure (necaran)
+- Pikpak
+ - Fix uploads fail with "aws-chunked encoding is not supported"
+ error (Nick Craig-Wood)
+
v1.70.1 - 2025-06-19
See commits
diff --git a/docs/content/changelog.md b/docs/content/changelog.md
index f55930b46..ce2543a36 100644
--- a/docs/content/changelog.md
+++ b/docs/content/changelog.md
@@ -5,6 +5,27 @@ description: "Rclone Changelog"
# Changelog
+## v1.70.2 - 2025-06-27
+
+[See commits](https://github.com/rclone/rclone/compare/v1.70.1...v1.70.2)
+
+* Bug Fixes
+ * convmv: Make --dry-run logs less noisy (nielash)
+ * sync: Avoid copying dir metadata to itself (nielash)
+ * build: Bump github.com/go-chi/chi/v5 from 5.2.1 to 5.2.2 to fix GHSA-vrw8-fxc6-2r93 (dependabot[bot])
+ * convmv: Fix moving to unicode-equivalent name (nielash)
+ * log: Fix deadlock when using systemd logging (Nick Craig-Wood)
+ * pacer: Fix nil pointer deref in RetryError (Nick Craig-Wood)
+ * doc fixes (Ali Zein Yousuf, Nick Craig-Wood)
+* Local
+ * Fix --skip-links on Windows when skipping Junction points (Nick Craig-Wood)
+* Combine
+ * Fix directory not found errors with ListP interface (Nick Craig-Wood)
+* Mega
+ * Fix tls handshake failure (necaran)
+* Pikpak
+ * Fix uploads fail with "aws-chunked encoding is not supported" error (Nick Craig-Wood)
+
## v1.70.1 - 2025-06-19
[See commits](https://github.com/rclone/rclone/compare/v1.70.0...v1.70.1)
diff --git a/docs/content/commands/rclone.md b/docs/content/commands/rclone.md
index d5834b783..975c1a8b5 100644
--- a/docs/content/commands/rclone.md
+++ b/docs/content/commands/rclone.md
@@ -998,7 +998,7 @@ rclone [flags]
--use-json-log Use json log format
--use-mmap Use mmap allocator (see docs)
--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.70.1")
+ --user-agent string Set the user-agent to a specified string (default "rclone/v1.70.2")
-v, --verbose count Print lots more stuff (repeat for more)
-V, --version Print the version number
--webdav-auth-redirect Preserve authentication on redirect
diff --git a/docs/content/flags.md b/docs/content/flags.md
index 35a453830..8dba62822 100644
--- a/docs/content/flags.md
+++ b/docs/content/flags.md
@@ -119,7 +119,7 @@ Flags for general networking and HTTP stuff.
--tpslimit float Limit HTTP transactions per second to this
--tpslimit-burst int Max burst of transactions for --tpslimit (default 1)
--use-cookies Enable session cookiejar
- --user-agent string Set the user-agent to a specified string (default "rclone/v1.70.1")
+ --user-agent string Set the user-agent to a specified string (default "rclone/v1.70.2")
```
diff --git a/go.sum b/go.sum
index 0b53da1f0..3ebdd08e2 100644
--- a/go.sum
+++ b/go.sum
@@ -122,8 +122,6 @@ github.com/aws/aws-sdk-go-v2/feature/ec2/imds v1.16.30 h1:x793wxmUWVDhshP8WW2mln
github.com/aws/aws-sdk-go-v2/feature/ec2/imds v1.16.30/go.mod h1:Jpne2tDnYiFascUEs2AWHJL9Yp7A5ZVy3TNyxaAjD6M=
github.com/aws/aws-sdk-go-v2/feature/s3/manager v1.17.49 h1:7gss+6H2mrrFtBrkokJRR2TzQD9qkpGA4N6BvIP/pCM=
github.com/aws/aws-sdk-go-v2/feature/s3/manager v1.17.49/go.mod h1:30PBx0ENoUCJm2AxzgCue8j7KEjb9ci4enxy6CCOjbE=
-github.com/aws/aws-sdk-go-v2/feature/s3/manager v1.17.77 h1:xaRN9fags7iJznsMEjtcEuON1hGfCZ0y5MVfEMKtrx8=
-github.com/aws/aws-sdk-go-v2/feature/s3/manager v1.17.77/go.mod h1:lolsiGkT47AZ3DWqtxgEQM/wVMpayi7YWNjl3wHSRx8=
github.com/aws/aws-sdk-go-v2/internal/configsources v1.3.34 h1:ZK5jHhnrioRkUNOc+hOgQKlUL5JeC3S6JgLxtQ+Rm0Q=
github.com/aws/aws-sdk-go-v2/internal/configsources v1.3.34/go.mod h1:p4VfIceZokChbA9FzMbRGz5OV+lekcVtHlPKEO0gSZY=
github.com/aws/aws-sdk-go-v2/internal/endpoints/v2 v2.6.34 h1:SZwFm17ZUNNg5Np0ioo/gq8Mn6u9w19Mri8DnJ15Jf0=
@@ -142,8 +140,6 @@ github.com/aws/aws-sdk-go-v2/service/internal/s3shared v1.18.15 h1:moLQUoVq91Liq
github.com/aws/aws-sdk-go-v2/service/internal/s3shared v1.18.15/go.mod h1:ZH34PJUc8ApjBIfgQCFvkWcUDBtl/WTD+uiYHjd8igA=
github.com/aws/aws-sdk-go-v2/service/s3 v1.72.3 h1:WZOmJfCDV+4tYacLxpiojoAdT5sxTfB3nTqQNtZu+J4=
github.com/aws/aws-sdk-go-v2/service/s3 v1.72.3/go.mod h1:xMekrnhmJ5aqmyxtmALs7mlvXw5xRh+eYjOjvrIIFJ4=
-github.com/aws/aws-sdk-go-v2/service/s3 v1.80.0 h1:fV4XIU5sn/x8gjRouoJpDVHj+ExJaUk4prYF+eb6qTs=
-github.com/aws/aws-sdk-go-v2/service/s3 v1.80.0/go.mod h1:qbn305Je/IofWBJ4bJz/Q7pDEtnnoInw/dGt71v6rHE=
github.com/aws/aws-sdk-go-v2/service/sso v1.25.3 h1:1Gw+9ajCV1jogloEv1RRnvfRFia2cL6c9cuKV2Ps+G8=
github.com/aws/aws-sdk-go-v2/service/sso v1.25.3/go.mod h1:qs4a9T5EMLl/Cajiw2TcbNt2UNo/Hqlyp+GiuG4CFDI=
github.com/aws/aws-sdk-go-v2/service/ssooidc v1.30.1 h1:hXmVKytPfTy5axZ+fYbR5d0cFmC3JvwLm5kM83luako=
diff --git a/rclone.1 b/rclone.1
index c67051305..07d8c5d3c 100644
--- a/rclone.1
+++ b/rclone.1
@@ -1,7 +1,7 @@
.\"t
.\" Automatically generated by Pandoc 2.9.2.1
.\"
-.TH "rclone" "1" "Jun 19, 2025" "User Manual" ""
+.TH "rclone" "1" "Jun 27, 2025" "User Manual" ""
.hy
.SH NAME
.PP
@@ -747,6 +747,12 @@ status (https://repology.org/badge/vertical-allrepos/rclone.svg?columns=3)] (htt
The rclone developers maintain a docker image for
rclone (https://hub.docker.com/r/rclone/rclone).
.PP
+\f[B]Note:\f[R] We also now offer a paid version of rclone with
+enterprise-grade security and zero CVEs through our partner
+SecureBuild (https://securebuild.com/blog/introducing-securebuild).
+If you are interested, check out their website and the Rclone
+SecureBuild Image (https://securebuild.com/images/rclone).
+.PP
These images are built as part of the release process based on a minimal
Alpine Linux.
.PP
@@ -30210,7 +30216,7 @@ Flags for general networking and HTTP stuff.
--tpslimit float Limit HTTP transactions per second to this
--tpslimit-burst int Max burst of transactions for --tpslimit (default 1)
--use-cookies Enable session cookiejar
- --user-agent string Set the user-agent to a specified string (default \[dq]rclone/v1.70.1\[dq])
+ --user-agent string Set the user-agent to a specified string (default \[dq]rclone/v1.70.2\[dq])
\f[R]
.fi
.SS Performance
@@ -55710,6 +55716,28 @@ Rclone cannot delete files anywhere except under \f[C]album\f[R].
.PP
The Google Photos API does not support deleting albums - see bug
#135714733 (https://issuetracker.google.com/issues/135714733).
+.SS Making your own client_id
+.PP
+When you use rclone with Google photos in its default configuration you
+are using rclone\[aq]s client_id.
+This is shared between all the rclone users.
+There is a global rate limit on the number of queries per second that
+each client_id can do set by Google.
+.PP
+If there is a problem with this client_id (eg quota too low or the
+client_id stops working) then you can make your own.
+.PP
+Please follow the steps in the google drive
+docs (https://rclone.org/drive/#making-your-own-client-id).
+You will need these scopes instead of the drive ones detailed:
+.IP
+.nf
+\f[C]
+https://www.googleapis.com/auth/photoslibrary.appendonly
+https://www.googleapis.com/auth/photoslibrary.readonly.appcreateddata
+https://www.googleapis.com/auth/photoslibrary.edit.appcreateddata
+\f[R]
+.fi
.SH Hasher
.PP
Hasher is a special overlay backend to create remotes which handle
@@ -63750,8 +63778,14 @@ For example, you might see throttling.
To create your own Client ID, please follow these steps:
.IP "1." 3
Open
-https://portal.azure.com/#blade/Microsoft_AAD_RegisteredApps/ApplicationsListBlade
-and then click \f[C]New registration\f[R].
+https://portal.azure.com/?quickstart=true#view/Microsoft_AAD_IAM/ActiveDirectoryMenuBlade/\[ti]/Overview
+and then under the \f[C]Add\f[R] menu click \f[C]App registration\f[R].
+.RS 4
+.IP \[bu] 2
+If you have not created an Azure account, you will be prompted to.
+This is free, but you need to provide a phone number, address, and
+credit card for identity verification.
+.RE
.IP "2." 3
Enter a name for your app, choose account type
\f[C]Accounts in any organizational directory (Any Azure AD directory - Multitenant) and personal Microsoft accounts (e.g. Skype, Xbox)\f[R],
@@ -78205,6 +78239,54 @@ Options:
.IP \[bu] 2
\[dq]error\[dq]: return an error based on option value
.SH Changelog
+.SS v1.70.2 - 2025-06-27
+.PP
+See commits (https://github.com/rclone/rclone/compare/v1.70.1...v1.70.2)
+.IP \[bu] 2
+Bug Fixes
+.RS 2
+.IP \[bu] 2
+convmv: Make --dry-run logs less noisy (nielash)
+.IP \[bu] 2
+sync: Avoid copying dir metadata to itself (nielash)
+.IP \[bu] 2
+build: Bump github.com/go-chi/chi/v5 from 5.2.1 to 5.2.2 to fix
+GHSA-vrw8-fxc6-2r93 (dependabot[bot])
+.IP \[bu] 2
+convmv: Fix moving to unicode-equivalent name (nielash)
+.IP \[bu] 2
+log: Fix deadlock when using systemd logging (Nick Craig-Wood)
+.IP \[bu] 2
+pacer: Fix nil pointer deref in RetryError (Nick Craig-Wood)
+.IP \[bu] 2
+doc fixes (Ali Zein Yousuf, Nick Craig-Wood)
+.RE
+.IP \[bu] 2
+Local
+.RS 2
+.IP \[bu] 2
+Fix --skip-links on Windows when skipping Junction points (Nick
+Craig-Wood)
+.RE
+.IP \[bu] 2
+Combine
+.RS 2
+.IP \[bu] 2
+Fix directory not found errors with ListP interface (Nick Craig-Wood)
+.RE
+.IP \[bu] 2
+Mega
+.RS 2
+.IP \[bu] 2
+Fix tls handshake failure (necaran)
+.RE
+.IP \[bu] 2
+Pikpak
+.RS 2
+.IP \[bu] 2
+Fix uploads fail with \[dq]aws-chunked encoding is not supported\[dq]
+error (Nick Craig-Wood)
+.RE
.SS v1.70.1 - 2025-06-19
.PP
See commits (https://github.com/rclone/rclone/compare/v1.70.0...v1.70.1)