NetExplorer: add NetExplorer backend#9187
Open
TaoufikMseggar wants to merge 3 commits intorclone:masterfrom
Open
NetExplorer: add NetExplorer backend#9187TaoufikMseggar wants to merge 3 commits intorclone:masterfrom
TaoufikMseggar wants to merge 3 commits intorclone:masterfrom
Conversation
Add a new optional fs.RemotePathValidator interface and call it in copy/mkdir/dir-metadata paths so backends can fail invalid destination paths early, including in --dry-run scenarios. Also normalize leading/trailing slashes in list directory membership checks and preserve root '/' entries to avoid false filtering. Additionally promote unchanged-skip messages to info level for clearer transfer output.
Add a new netexplorer backend, register it in backend/all, and add integration test wiring with TestNetExplorer for fstests. Mark authentication fields as sensitive/password and generate backend options documentation in docs/content/netexplorer.md. Add NetExplorer to provider/documentation indexes (README, docs list, homepage provider list, navbar, manual builder).
Revert unchanged-skip messages back to Debugf to avoid timing-sensitive regressions in fs/sync directory modtime tests on Windows.
Member
|
HI! You shouldn't need to make any changes at all to anything under Please explain what problems you are having and we can try to come up with solutions that don't involve hacking the rclone core just for your backend. |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
What is the purpose of this change?
I'm a software engineer in the NetExplorer team. This PR adds support for NetExplorer as a new rclone backend and includes the minimal core hooks needed to enforce NetExplorer path constraints early.
Main changes:
backend/netexplorerbackend/all/all.goTestNetExplorer)README, docs index/list/navbar/manual,fstest/test_all/config.yaml)RemotePathValidatorinterface in core fs and call it in copy/mkdir/dir-metadata/sync pathsValidateRemotePath(...)to reject forbidden names early (including dry-run scenarios)NoPasswordGenerateoption flagWas the change discussed in an issue or in the forum before?
Not yet. I can open a discussion issue if maintainers prefer backend + core hook changes to be split.
Validation
I ran targeted tests locally:
go test ./backend/netexplorer -count=1go test ./fs/config -run "TestCRUD|TestChooseOption|TestDefaultRequired" -count=1go test ./fs -run "TestOptionMarshalJSON" -count=1go test ./fs/list ./fs/operations ./fs/sync -count=1Checklist