Phabricator/Diffusion/Callsign naming conventions

From MediaWiki.org
Jump to navigation Jump to search

When repositories (git, SVN, etc.) are created in Phabricator, they are given a callsign. These are all-uppercase strings that are used in URLs and links. The important thing about callsigns is they cannot be changed (unlike repository names and other settings). Therefore, callsigns should be picked carefully as they become a permanent part of our nomenclature. Here are a couple of guidelines for picking a Phabricator callsign:

  • It must be unique – cannot be used by any other repository already
  • By extension: it should be forward thinking. If you know other repos exist (or are going to exist) that may clash, planning ahead for that is good.
  • Must be 4 letters or less, the first letter (or two) is reserved for the group under which the repo exists:
    • M - mediawiki/*, except for extensions and skins
    • E - extensions
    • S - skins
    • W - wikimedia
    • AN - analytics
    • AP - apps
    • CI - integration
    • O - operations
    • L - labs
    • T - labs/tools
    • PH - phabricator
    • PW - pywikibot
    • G - general (repos that don't really have another larger home but don't need their own group)
  • The remaining letter or two can be an abbreviation, acronym, or some other method of uniquely identifying the repository in question.

To add a new prefix for grouping, open a task for the Repo-Administrators project and gain consensus :)

Migrating existing code repositories[edit]

Since we have a large number of existing code repositories to migrate, we need to pick callsigns that are considerate of our other repos that might migrate soon after yours. We're working on a table to solidify people's choices for callsigns prior to mass migrating things.