Skip to content

Add short, non‑ruff CLI aliases (e.g., tms, cfgsync, syncup) for occasional use #74

@Kilo59

Description

@Kilo59

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:

  1. tms – the shortest, still hints at TOML.
  2. cfgsync – a generic, future‑proof name.
  3. 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

  1. 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"

Metadata

Metadata

Assignees

No one assigned

    Labels

    questionFurther information is requested

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions