Skip to content

Add RemoteSync package#9389

Open
NeloGH wants to merge 2 commits into
sublimehq:masterfrom
NeloGH:master
Open

Add RemoteSync package#9389
NeloGH wants to merge 2 commits into
sublimehq:masterfrom
NeloGH:master

Conversation

@NeloGH
Copy link
Copy Markdown

@NeloGH NeloGH commented Apr 23, 2026

  • I'm the package's author and/or maintainer.
  • I have read the docs.
  • I have tagged a release with a semver version number.
  • My package repo has a description and a README describing what it's for and how to use it.
  • My package doesn't add context menu entries.
  • My package doesn't add key bindings.
  • Any commands are available via the command palette.
  • Preferences and keybindings (if any) are listed in the menu and the command palette, and open in split view.
  • I use .gitattributes to exclude files from the package: images, test files, sublime-project/workspace.

My package is a Sublime Text 4 plugin for syncing files to remote servers via SFTP, FTP, FTPS, and SCP. It features upload-on-save, parallel batch folder operations, an interactive remote file browser, local vs remote diff, per-subfolder configs, connection pooling with keepalive, and support for pre/post upload commands.

There are no packages like it in Package Control.

@NeloGH
Copy link
Copy Markdown
Author

NeloGH commented Apr 26, 2026 via email

@braver
Copy link
Copy Markdown
Collaborator

braver commented May 4, 2026

There are no packages like it in Package Control.

There are quite a few actually: https://packages.sublimetext.io/?q=sync. Or at least, seems that way to me?

I see you unchecked those points about the context menu and key bindings. I'm sure you're aware of the caveats of that. Care to elaborate why your usage of these should be accepted?

About the package itself, some initial small questions. What's the purpose of the remote_sync_open_settings command over simply using the edit_settings command?
The remote-sync-config.json file seems pretty central to usage of your package, but it's not clear from the readme how these are supposed to work, or where they should be placed?

Comment thread repository/r.json
@braver braver added the feedback provided The changes and package have been seen by a reviewer label May 4, 2026
@github-actions
Copy link
Copy Markdown

github-actions Bot commented May 4, 2026

Package Review

Channel Diff

Removed (none), changed (none), added RemoteSync.

Review for RemoteSync main-03a42b2-2026.04.23.13.25.49

5 notices:
- Common used command prefix is: remote_sync.
- Consider requiring Sublime Text build >= 4171, where the API is available at import time and these initialization restrictions do not apply.
- The command referenced for editing key bindings is `remote_sync_open_keybindings`.
    File: Main.sublime-menu
- The command referenced for editing settings is `remote_sync_open_settings`.
    File: Main.sublime-menu
- Latest version 1.0.0 is 1 commit behind tip of main.
    Repository: https://github.com/NeloGH/RemoteSync

6 failures:
- The binding ['ctrl+shift+u'] unconditionally overrides a default binding
    File: Default (Windows).sublime-keymap
- The binding ['ctrl+shift+d'] unconditionally overrides a default binding
    File: Default (Windows).sublime-keymap
- The binding ['ctrl+shift+u'] unconditionally overrides a default binding
    File: Default (Linux).sublime-keymap
- The binding ['ctrl+shift+d'] unconditionally overrides a default binding
    File: Default (Linux).sublime-keymap
- The binding ['super+shift+u'] unconditionally overrides a default binding
    File: Default (OSX).sublime-keymap
- The binding ['super+shift+d'] unconditionally overrides a default binding
    File: Default (OSX).sublime-keymap

3 warnings:
- The package does not contain a top-level LICENSE file. A license helps users to contribute to the package.
- 'Main.sublime-menu' has no 'Key Bindings' entry with 'args.base_file' set to one of '${packages}/RemoteSync/Default (${platform}).sublime-keymap'. Found: <missing>
    File: Main.sublime-menu
- 'Main.sublime-menu' has no 'Settings' entry with 'args.base_file' set to '${packages}/RemoteSync/RemoteSync.sublime-settings'. Found: <missing>
    File: Main.sublime-menu


For more details on the report messages (for example how to resolve them), go to:
https://github.com/packagecontrol/st_package_reviewer/wiki

@github-actions
Copy link
Copy Markdown

This PR adds RemoteSync.

Review for RemoteSync main-d55c6b2-2026.05.10.15.58.39

- Common used command prefix is: remote_sync.
- Latest version 1.0.1 is 1 commit behind tip of main.
- This file only contains commented examples. Consider defining 'Example.sublime-keymap' and linking it from 'Main.sublime-menu'.
    File: Default (OSX).sublime-keymap
- This file only contains commented examples. Consider defining 'Example.sublime-keymap' and linking it from 'Main.sublime-menu'.
    File: Default (Windows).sublime-keymap
- This file only contains commented examples. Consider defining 'Example.sublime-keymap' and linking it from 'Main.sublime-menu'.
    File: Default (Linux).sublime-keymap

No failures, no warnings.


For more details on the report messages (for example how to resolve them), go to:
https://github.com/packagecontrol/st_package_reviewer/wiki

Repository: https://github.com/NeloGH/RemoteSync

@braver
Copy link
Copy Markdown
Collaborator

braver commented May 11, 2026

Please have a look at the test results.

@NeloGH
Copy link
Copy Markdown
Author

NeloGH commented May 12, 2026

Thank you for the feedback. I've addressed all the notices:

Removed all default key bindings to avoid conflicts — keymap files now contain only comments
Added Example.sublime-keymap with suggested bindings and linked it from Main.sublime-menu
Created tag 1.0.2 which is now up to date with the tip of main

@braver
Copy link
Copy Markdown
Collaborator

braver commented May 12, 2026

There are quite a few actually: https://packages.sublimetext.io/?q=sync. Or at least, seems that way to me?

Could you still respond to that? How is your package new compared to what already exists, and have you considered contributing to any existing package?

Added Example.sublime-keymap with suggested bindings and linked it from Main.sublime-menu

The example key map is supposed to replace the original key maps. Now you have too many files and menu entries that all do the same thing.

@braver
Copy link
Copy Markdown
Collaborator

braver commented May 12, 2026

Also have a look at this comment in a different PR. The same package layout issue applies to your package: #9355 (comment)

@NeloGH
Copy link
Copy Markdown
Author

NeloGH commented May 13, 2026

Re: similar packages — I reviewed all packages at that link before submitting:

SFTP (wbond): Commercial/paid and no longer maintained
FTPSync: FTP/FTPS only — no SFTP support
Sync Settings: Syncs Sublime Text settings between machines, not remote file sync
SyncedSideBar: Syncs the sidebar view with the active file — unrelated
SimpleSync: SCP only, no parallel operations, no browser, no config per subfolder
RemoteSync fills the gap: free, open source, supports SFTP/FTP/FTPS/SCP, parallel batch operations, per-subfolder independent configs, connection pooling, and pre/post upload commands — without requiring compiled extensions.

Re: keymap files — Removed the three platform-specific keymap files. Only Example.sublime-keymap remains.

Re: package layout — Moved all core modules to core/ subdirectory. RemoteSync.py is now the only Python file at the root. Also added the kiss-reloader pattern.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

feedback provided The changes and package have been seen by a reviewer

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants