This page serves as a way to list any problematic language in the Sling codebases and the steps to remove it.
Discussion
Some of us think some terms like "master/slave, black/white list" should not be used anymore.
Opinions vary widely on this topic, mostly between a desire to be polite and non-offensive and on the other hand considering that words can have very different meanings depending on context.
Starting to use "better" terms for new things can be fairly easy (assuming we agree on what "better" means) but renaming existing things can be a lot of work, with potentially subtle effects on automated processes and backwards compatibility.
This page was created to evaluate the work needed to change existing terms, in order for the Sling PMC to make informed decisions, on whether the efforts and related benefits make sense.
External Sources
Github is moving its default branch to 'main' https://www.bbc.com/news/technology-53050955
Topics
Rename 'master' Git branch
This branch can be renamed. One suggestion is to rename it to the 'main' branch although we should monitor what elsewhere is becoming the consensus on a new name for this branch.
Actions to take (potentially incomplete)
asking INFRA to change the default remote for 300+ repositories ( gitbox and github? )
- gstein/INFRA says: our limit is (10) repositories. any changes to more than ten must be performed by a script, rather than human hands. the script to perform the change must be provided to Infra to review, then to execute. (iow, Infra will not develop such a script; 300 repositories was chosen by Apache Sling; Infra supports up to 10)
adjusting Jenkins tooling (and potentially Jenkins jobs)
evaluating whether we need to change something in SonarCloud
updating the 'repo' setup
updating documentation
asking everyone to update their local checkouts
needing to rebase (or drop!) existing PRs
Open questions:
- what happens to links once we rename branches? Do they go stale or can we redirect?
Find problematic language in code and rename if possible
- $ repo grep -i 'whitelist'
rename to ... - $ repo grep -i 'blacklist'
rename to ... - $ repo grep -i 'slave'
rename to ... - $ repo grep -i 'master'
rename to ...
We need to investigate if the rename has an impact on backward compatibility.
Actions to take
...
Open questions
- how should we handle API that is affected? See for instance https://github.com/apache/sling-org-apache-sling-discovery-base/tree/master/src/main/java/org/apache/sling/discovery/base/connectors/ping/wl
- how should we handle metatype entries that are affected?
Documentation changes
Problematic language
Any problematic language in the documentation on its own should be fixed.
Actions to take
...
Changes required because of code/git changes
Changes made in git and/or source code should be reflected in the associated documentation.
Actions to take
...