Pick a shorter or distinct CLI alias/entrypoint
ruff-sync is a useful utility, but its name is a bit long to type when you need it only occasionally (e.g., when setting up a new project or updating a shared Ruff configuration).
Providing a concise, memorable alias – even one that does not start with ruff or r – would make the command easier to discover and type without sacrificing clarity.
Why an alias matters (even for occasional use)
- Reduced friction – Users can invoke the tool with a single short word instead of typing the full
ruff-sync.
- Shell completion friendliness – Short commands are easier to select from fuzzy‑finder or auto‑completion menus.
- Namespace safety – By choosing a name that does not start with
ruff/r, we avoid accidental matches with the actual ruff linter or other r*‑prefixed tools.
Candidate aliases & entrypoints (none start with ruff or r)
| Alias |
Rationale / Meaning |
Known conflicts |
Implementation notes |
tms |
Toml Sync – short, descriptive of the purpose (syncing a TOML config). |
No common binary named tms. |
Add a console script tms = "ruff_sync:main". |
cfgsync |
Config Sync – generic enough to cover any future config‑syncing features. |
No widely‑used command named cfgsync. |
Add cfgsync = "ruff_sync:main". |
syncup |
Implies “synchronise upstream config”. |
No conflict with standard tools. |
Add syncup = "ruff_sync:main". |
upsync |
Emphasises pulling upstream configuration. |
No conflict. |
Add upsync = "ruff_sync:main". |
tomlsync |
Directly describes the operation (syncing a TOML file). |
Might clash with a custom script, but none in the common toolchain. |
Add tomlsync = "ruff_sync:main". |
cfgup |
Short for “config upstream”. |
No conflict. |
Add cfgup = "ruff_sync:main". |
Recommended minimal set
To keep the package lightweight while offering clear options, we propose exposing three aliases:
tms – the shortest, still hints at TOML.
cfgsync – a generic, future‑proof name.
syncup – conveys the “pull upstream” semantics.
All four entrypoints (ruff-sync, tms, cfgsync, syncup) will point to the same main() function, so they stay fully compatible.
Implementation Plan
-
Update pyproject.toml
Add the new console‑script entries under [project.scripts]:
[project.scripts]
ruff-sync = "ruff_sync:main"
tms = "ruff_sync:main"
cfgsync = "ruff_sync:main"
syncup = "ruff_sync:main"
Pick a shorter or distinct CLI alias/entrypoint
ruff-syncis a useful utility, but its name is a bit long to type when you need it only occasionally (e.g., when setting up a new project or updating a shared Ruff configuration).Providing a concise, memorable alias – even one that does not start with
rufforr– would make the command easier to discover and type without sacrificing clarity.Why an alias matters (even for occasional use)
ruff-sync.ruff/r, we avoid accidental matches with the actualrufflinter or otherr*‑prefixed tools.Candidate aliases & entrypoints (none start with
rufforr)tmstms.tms = "ruff_sync:main".cfgsynccfgsync.cfgsync = "ruff_sync:main".syncupsyncup = "ruff_sync:main".upsyncupsync = "ruff_sync:main".tomlsynctomlsync = "ruff_sync:main".cfgupcfgup = "ruff_sync:main".Recommended minimal set
To keep the package lightweight while offering clear options, we propose exposing three aliases:
tms– the shortest, still hints at TOML.cfgsync– a generic, future‑proof name.syncup– conveys the “pull upstream” semantics.All four entrypoints (
ruff-sync,tms,cfgsync,syncup) will point to the samemain()function, so they stay fully compatible.Implementation Plan
Update
pyproject.tomlAdd the new console‑script entries under
[project.scripts]: