Нэт Фридмэн (Nat Friedman), руководитель GitHub подтвердил намерение компании перейти по умолчанию на использование для основных веток имени «main» вместо «master» в знак солидарности с протестующими против полицейского насилия и расизма в США. Новое имя будет использовано только для новых репозиториев, в уже существующих проектах ветка «master» сохранит своё имя. Тем не менее, обсуждается возможность подготовки опции, которая по желанию отдельных разработчиков позволит автоматизировать переименование для существующих проектов.

Обсуждение необходимости ухода от термина «master»
развязано и в списке рассылки разработчиков Git. Пока активными сторонниками данной идеи являются лишь отдельные активисты, а большинство разработчиков выступают против, тем более, что в Git слово master используется отдельно, а не в паре со словом «slave».

Но настоящее торжество политкорректности наблюдается в проекте OpenSSL, участники которого посчитали недопустимым выражение «чёрная магия». Разрабочтики OpenSSL рассматривают включение патча, заменяющего «black magic» на «magic», «blacklist» на «block list», «white space» на «whitespace», «master» на «parent» или «main».

Помимо упоминавшихся на днях инициатив OpenZFS и Go, можно отметить и некоторые другие недавние переименования:

  • В Chromium приняты изменения, заменяющие в именах файлов и коде упоминания «blacklist» на «blocklist» (видимые пользователю упоминания «blacklist» и «whitelist» были заменены в начале 2019 года).
  • В Android начали заменять «blacklist/whitelist» на «blocklist/allowlist».
  • Проект Node.js ведёт работу по замене blacklist/whitelist на blocklist/allowlist, но изменение пока не принято.
  • Проект Curl заменил упоминание «whitelist» на «skiplist», «select» или «skip», а «blacklist» на «blocklist».
  • Разработчики Ansible рассматривают возможность замены ветки «master» на «devel».
  • В коде PHPUnit заменили Blacklist на ExcludeList, в том числе поменяли файл PHPUnit/Util/Blacklist на PHPUnit/Util/ExcludeList.

Из сообществ, отказавшихся в прошлые годы от использования master/slave, можно отметить проекты Python, Drupal, Django, CouchDB, Salt, MediaWiki, PostgreSQL и Redis. В DNS-сервере BIND сохранили возможность использования настроек с именами «master/slave», но добавили альтернативы с «primary/secondary» и объявили их более предпочтительными. Разработчики ядра Linux в своё время назвали попытки переименования «blacklist/whitelist» вздором и глупостью, навиваемой политиками и популистами, и отказались производить замену, в том числе пояснив что термин «blocklist» приведёт к искажению смысла и не исключает восприятие как «список блочных объектов».

Комитет IETF (Internet Engineering Task Force), занимающийся развитием протоколов и архитектуры интернета, предложил альтернативы терминам «whitelist/blacklist» и «master/slave», предпочитаемые для использования в спецификациях — вместо «master/slave» рекомендуется использовать «primary/secondary», «leader/follower»,
«active/standby»,
«primary/replica»,
«writer/reader»,
«coordinator/worker» или
«parent/helper», а вместо «blacklist/whitelist» — «blocklist/allowlist» или «block/permit».