diff --git a/.github/ISSUE_TEMPLATE.md b/.github/ISSUE_TEMPLATE.md
deleted file mode 100644
index f99fde4eb..000000000
--- a/.github/ISSUE_TEMPLATE.md
+++ /dev/null
@@ -1,31 +0,0 @@
-
-
-
-#### Output of `rclone version`
-
-
-
-#### Describe the issue
-
-
-
diff --git a/.github/ISSUE_TEMPLATE/Bug.md b/.github/ISSUE_TEMPLATE/Bug.md
deleted file mode 100644
index 5aa049c3d..000000000
--- a/.github/ISSUE_TEMPLATE/Bug.md
+++ /dev/null
@@ -1,74 +0,0 @@
----
-name: Bug report
-about: Report a problem with rclone
----
-
-
-
-#### The associated forum post URL from `https://forum.rclone.org`
-
-
-
-#### What is the problem you are having with rclone?
-
-
-
-#### What is your rclone version (output from `rclone version`)
-
-
-
-#### Which OS you are using and how many bits (e.g. Windows 7, 64 bit)
-
-
-
-#### Which cloud storage system are you using? (e.g. Google Drive)
-
-
-
-#### The command you were trying to run (e.g. `rclone copy /tmp remote:tmp`)
-
-
-
-#### A log from the command with the `-vv` flag (e.g. output from `rclone -vv copy /tmp remote:tmp`)
-
-
-
-
-
-#### How to use GitHub
-
-* Please use the 👍 [reaction](https://blog.github.com/2016-03-10-add-reactions-to-pull-requests-issues-and-comments/) to show that you are affected by the same issue.
-* Please don't comment if you have no relevant information to add. It's just extra noise for everyone subscribed to this issue.
-* Subscribe to receive notifications on status change and new comments.
diff --git a/.github/ISSUE_TEMPLATE/Feature.md b/.github/ISSUE_TEMPLATE/Feature.md
deleted file mode 100644
index 4631f6d5e..000000000
--- a/.github/ISSUE_TEMPLATE/Feature.md
+++ /dev/null
@@ -1,51 +0,0 @@
----
-name: Feature request
-about: Suggest a new feature or enhancement for rclone
----
-
-
-
-#### The associated forum post URL from `https://forum.rclone.org`
-
-
-
-#### What is your current rclone version (output from `rclone version`)?
-
-
-
-#### What problem are you are trying to solve?
-
-
-
-#### How do you think rclone should be changed to solve that?
-
-
-
-
-
-#### How to use GitHub
-
-* Please use the 👍 [reaction](https://blog.github.com/2016-03-10-add-reactions-to-pull-requests-issues-and-comments/) to show that you are affected by the same issue.
-* Please don't comment if you have no relevant information to add. It's just extra noise for everyone subscribed to this issue.
-* Subscribe to receive notifications on status change and new comments.
diff --git a/.github/ISSUE_TEMPLATE/bug.yml b/.github/ISSUE_TEMPLATE/bug.yml
new file mode 100644
index 000000000..73d5a2791
--- /dev/null
+++ b/.github/ISSUE_TEMPLATE/bug.yml
@@ -0,0 +1,124 @@
+name: Bug report
+description: Report a reproducible problem with rclone
+labels: ["bug"]
+body:
+ - type: markdown
+ attributes:
+ value: |
+ We want to help you with rclone - thank you for taking the time to fill this in!
+
+ **This tracker is for reproducible bugs only.** If you have a question, are
+ not sure whether something is a bug, or want help with a configuration, please
+ use the [rclone forum](https://forum.rclone.org/) instead - you will get a much
+ quicker answer there.
+
+ Before filing, please **test with the [latest beta or stable](https://rclone.org/commands/rclone_selfupdate/)**
+ (downloads at ) as your problem may already be fixed.
+
+ **Do not redact** any information except passwords, keys and personal info.
+ - type: checkboxes
+ id: acknowledgements
+ attributes:
+ label: Before you start
+ description: Please confirm the following. Issues that skip these steps may be closed.
+ options:
+ - label: I have searched the [forum](https://forum.rclone.org/) and the existing issues for this problem.
+ required: true
+ - label: I have tested with the latest beta or stable release and can still reproduce the problem.
+ required: true
+ - label: This is a reproducible bug, not a usage question (questions belong on the forum).
+ required: true
+ - type: input
+ id: forum-url
+ attributes:
+ label: Associated forum post URL
+ description: If you discussed this on the forum first (encouraged), paste the link here.
+ placeholder: https://forum.rclone.org/t/...
+ validations:
+ required: false
+ - type: textarea
+ id: problem
+ attributes:
+ label: What is the problem you are having with rclone?
+ description: Describe the problem and the exact steps to reproduce it.
+ validations:
+ required: true
+ - type: textarea
+ id: version
+ attributes:
+ label: rclone version
+ description: The full output of `rclone version`.
+ placeholder: |
+ rclone v1.75.0
+ - os/version: ubuntu 24.04 (64 bit)
+ - os/kernel: 6.8.0-111-generic (x86_64)
+ - os/type: linux
+ - os/arch: amd64
+ - go/version: go1.26.4
+ - go/linking: dynamic
+ - go/tags: none
+ validations:
+ required: true
+ - type: dropdown
+ id: os
+ attributes:
+ label: Operating system
+ description: Choose the operating system you are using with rclone.
+ options:
+ - Windows
+ - macOS
+ - Linux
+ - FreeBSD
+ - NetBSD
+ - OpenBSD
+ - Plan 9
+ - Solaris
+ - Android
+ - iOS
+ - Other
+ validations:
+ required: true
+ - type: input
+ id: backend
+ attributes:
+ label: Which cloud storage system are you using?
+ description: e.g. Google Drive, S3, Dropbox, local disk. List all involved.
+ validations:
+ required: true
+ - type: textarea
+ id: config
+ attributes:
+ label: Output of `rclone config redacted`
+ description: |
+ Run `rclone config redacted` (or `rclone config redacted ` for a
+ single remote). This command automatically replaces passwords and tokens
+ with `XXX`, so it should be safe to paste but please double-check before posting.
+ render: ini
+ validations:
+ required: true
+ - type: textarea
+ id: command
+ attributes:
+ label: The command you were trying to run
+ description: e.g. `rclone copy /tmp remote:tmp`
+ render: shell
+ validations:
+ required: true
+ - type: textarea
+ id: log
+ attributes:
+ label: A log from the command with the `-vv` flag
+ description: |
+ e.g. output from `rclone -vv copy /tmp remote:tmp`. For long logs (> 100 lines) use
+ `-vv --log-file bug.log` and attach it here or send to a service such as
+ or and link it here.
+ render: shell
+ validations:
+ required: true
+ - type: textarea
+ id: extra
+ attributes:
+ label: Anything else?
+ description: Anything else that might help us, e.g. a minimal way to replicate the problem.
+ validations:
+ required: false
diff --git a/.github/ISSUE_TEMPLATE/config.yml b/.github/ISSUE_TEMPLATE/config.yml
index 97c3c26ca..b70503252 100644
--- a/.github/ISSUE_TEMPLATE/config.yml
+++ b/.github/ISSUE_TEMPLATE/config.yml
@@ -1,5 +1,8 @@
blank_issues_enabled: false
contact_links:
- - name: Rclone Forum Community Support
+ - name: Rclone Forum - questions & support
url: https://forum.rclone.org/
- about: Please ask and answer questions here.
+ about: Have a question, need help, or not sure if it's a bug? Please ask here for a quick answer.
+ - name: Rclone Documentation
+ url: https://rclone.org/docs/
+ about: The docs answer many "how do I..." questions, including per-backend guides.
diff --git a/.github/ISSUE_TEMPLATE/feature.yml b/.github/ISSUE_TEMPLATE/feature.yml
new file mode 100644
index 000000000..35ca729c7
--- /dev/null
+++ b/.github/ISSUE_TEMPLATE/feature.yml
@@ -0,0 +1,68 @@
+name: Feature request
+description: Suggest a new feature or enhancement for rclone
+labels: ["enhancement"]
+body:
+ - type: markdown
+ attributes:
+ value: |
+ So you've got an idea to improve rclone? We love that - we've already
+ incorporated hundreds of ideas from contributors!
+
+ Please **search first**: your idea may already exist in the latest
+ [beta or stable](https://rclone.org/commands/rclone_selfupdate/), or already
+ be requested. It is often worth [discussing on the forum](https://forum.rclone.org/)
+ to refine the idea or checking to see if rclone can do it already before filing it here.
+ - type: checkboxes
+ id: acknowledgements
+ attributes:
+ label: Before you start
+ options:
+ - label: I have searched the [forum](https://forum.rclone.org/) and the existing issues and this hasn't already been requested.
+ required: true
+ - label: I have checked the latest beta and this feature doesn't already exist.
+ required: true
+ - type: input
+ id: forum-url
+ attributes:
+ label: Associated forum post URL
+ description: If you discussed this on the forum first (encouraged), paste the link here.
+ placeholder: https://forum.rclone.org/t/...
+ validations:
+ required: false
+ - type: textarea
+ id: version
+ attributes:
+ label: rclone version
+ description: The full output of `rclone version`, not just the version number.
+ placeholder: |
+ rclone v1.75.0
+ - os/version: ubuntu 24.04 (64 bit)
+ - os/kernel: 6.8.0-111-generic (x86_64)
+ - os/type: linux
+ - os/arch: amd64
+ - go/version: go1.26.4
+ - go/linking: dynamic
+ - go/tags: none
+ validations:
+ required: true
+ - type: textarea
+ id: problem
+ attributes:
+ label: What problem are you trying to solve?
+ description: Describe the use case and what is difficult or impossible today.
+ validations:
+ required: true
+ - type: textarea
+ id: solution
+ attributes:
+ label: How do you think rclone should be changed to solve that?
+ validations:
+ required: true
+ - type: checkboxes
+ id: involvement
+ attributes:
+ label: Getting involved
+ description: Features are much more likely to happen if someone helps make them.
+ options:
+ - label: I'm willing to help implement, test or fund this feature.
+ required: false
diff --git a/.github/PULL_REQUEST_TEMPLATE.md b/.github/PULL_REQUEST_TEMPLATE.md
index 81790b6db..5494faf72 100644
--- a/.github/PULL_REQUEST_TEMPLATE.md
+++ b/.github/PULL_REQUEST_TEMPLATE.md
@@ -1,29 +1,53 @@
-#### What is the purpose of this change?
+#### What does this change do?
+
+
+
+#### Linked issue
-#### Was the change discussed in an issue or in the forum before?
+Fixes #
+
+#### For new or changed backends
#### Checklist
+- [ ] This change is trivial **OR** it has been discussed and agreed in the linked issue.
- [ ] I have read the [contribution guidelines](https://github.com/rclone/rclone/blob/master/CONTRIBUTING.md#submitting-a-new-feature-or-bug-fix).
- [ ] I have added tests for all changes in this PR if appropriate.
- [ ] I have added documentation for the changes if appropriate.
- [ ] All commit messages are in [house style](https://github.com/rclone/rclone/blob/master/CONTRIBUTING.md#commit-messages).
-- [ ] I'm done, this Pull Request is ready for review :-)
+- [ ] **(Backend changes only)** `test_all` passes for this backend and I can provide a test account for the integration tester - see [CONTRIBUTING.md](https://github.com/rclone/rclone/blob/master/CONTRIBUTING.md#integration-tests).
+- [ ] This Pull Request is ready for review.
diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md
index caf3f1678..69e9eed28 100644
--- a/CONTRIBUTING.md
+++ b/CONTRIBUTING.md
@@ -623,6 +623,15 @@ Or if you want to run the integration tests manually:
- If your remote defines `ListR` check with this also
- `go test -v -remote TestRemote: -fast-list`
+Before a new or changed backend can be merged we require:
+
+- A clean run of `go run ./fstest/test_all -backends remote` (please include the
+ result in your pull request).
+- A test account for the backend so the maintainers can add it to the
+ [integration test server](https://integration.rclone.org) and keep the backend
+ working as rclone evolves. A backend that we cannot test is likely to break and
+ may be removed.
+
See the [testing](#testing) section for more information on integration tests.
### Backend documentation