Inclusive language
Inclusive Language
First time topic was explored on mailing list. https://lists.openembedded.org/g/openembedded-architecture/topic/inclusive_language_summary/75821819
This is an attempt to collate Inclusive Language for OpenEmbedded and the Yocto Project in regards to code. This is an attempt to improve these variables, comments, and terminology to be more descriptive and also inclusive/ not offensive.
For reference: https://inclusivenaming.org/word-lists/overview/
Game play
If a BB variable has a local assignment, the rename should be transitive. Example: BB_HASHBASE_WHITELIST is changed to BB_HASHBASE_ALLOWLIST, then self.basewhitelist would become self.baseallowlist
Add an offending name in one of the three tables below. If you have a suggested replacement, please add. If the translation is approved, that will be noted in the same row. Approval process: TBD
Recommendations
Recommended replacements for 'blacklist/whitelist' are:
blacklist | whitelist |
---|---|
denylist/disallowlist | allowlist |
blocklist | passlist or welcomelist |
excludes or excludelist | includes or includelist |
Exceptions
Exceptions for introducing new usage is limited upstream sources outside the control of The Yocto Project and OpenEmbedded.
Branch names, like master, are not being handled on the initial phase of this task
Classes
Repo | Current name | Suggest rename | Recommended by | Approved name |
---|---|---|---|---|
core | blacklist.bbclass | excludelist.bbclass | Armin | |
core | blacklist.bbclass (alt) | forcerecipeskip.bbclass | Saul |
Variables
Repo | Current name | Approved rename | Recommended by | Volunteer Developer | Notes |
---|---|---|---|---|---|
Bitbake | ABORT | "HALT", "NO_NEW_TASKS" or "WARN" | Richard Purdie | ||
Bitbake | abort (comment or variable) | Should be changed in the code | Richard Purdie | ||
Bitbake | BB_ENV_WHITELIST | BB_ENV_PASSTHROUGH | Richard Purdie | ||
Bitbake | BB_ENV_EXTRAWHITE | BB_ENV_PASSTHROUGH_ADDITIONS | Richard Purdie | ||
Bitbake | BB_HASHCONFIG_WHITELIST | BB_HASHCONFIG_IGNORE_VARS | Richard Purdie | ||
Bitbake | BB_STAMP_WHITELIST | remove this along with BB_STAMP_POLICY | Richard Purdie | ||
Bitbake | BB_SETSCENE_ENFORCE_WHITELIST | BB_SETSCENE_ENFORCE_IGNORE_TASKS | Richard Purdie | ||
Bitbake | BB_HASHBASE_WHITELIST | BB_BASEHASH_IGNORE_VARS | Richard Purdie | ||
Bitbake | MULTI_PROVIDER_WHITELIST | BB_MULTI_PROVIDER_ALLOWED | Richard Purdie | ||
Bitbake | basewhitelist | ||||
Bitbake | taskwhitelist | ||||
core | abort (comment or variable) | based on context | Saul Wold | ||
core | PNBLACKLIST | See notes | Richard Purdie | Saul | For PNBLACKLIST and blacklist.bbclass, I think we need to take the opportunity
to use "recipe" instead of "pn". For blacklist.bbclass, perhaps we just merge into base.bbclass and use SKIP_RECIPE[pn] ? |
core | whitelist | allowlist | Saul | This could be change based on context | |
core | whitelisted | allowed | Saul | Context sensitive | |
core | whitelisting | allowing | Saul | ||
core | SSTATE_DUPWHITELIST | SSTATE_ALLOW_OVERLAP_FILES | Richard Purdie | ||
core | CVE_CHECK_PN_WHITELIST | CVE_CHECK_SKIP_RECIPE | Richard Purdie | ||
core | CVE_CHECK_WHITELIST | CVE_CHECK_IGNORE | Richard Purdie | ||
core | ICECC_USER_CLASS_BL | ICECC_USER_CLASS_EXCLUDES | Michael Opdenacker | Should be removed | |
core | ICECC_USER_PACKAGE_WL | ICECC_USER_CLASS_ALLOWLIST | Michael Opdenacker | Should be removed | |
core | ICECC_USER_PACKAGE_BL | ICECC_USER_PACKAGE_EXCLUDES | Michael Opdenacker | Should be removed | |
core | SYSROOT_DIRS_BLACKLIST | SYSROOT_DIRS_IGNORE | Richard Purdie | ||
core | INHERIT_BLACKLIST | INHERIT_RECIPE_SKIP | Saul | if we drop the blacklist class, we can drop this too (RP) | |
core | SDK_LOCAL_CONF_BLACKLIST | ESDK_LOCAL_CONF_REMOVE | Richard Purdie | ||
core | SDK_LOCAL_CONF_WHITELIST | ESDK_LOCALCONF_ALLOW | Richard Purdie | ||
core | SDK_INHERIT_BLACKLIST | ESDK_CLASS_INHERIT_DISABLE | Richard Purdie | ||
core | WHITELIST_(ANY LICENSE) | Should be removed and replaced with INCOMPATIBLE_LICENSE_ALLOWED_RECIPES, which would be a list of recipes which are of a blocked license that is now being overridden | |||
core | LICENSE_FLAGS_WHITELIST | LICENSE_FLAGS_ACCEPTED (and BLOCKED) | Saul | Should be changed to | |
core | UNKNOWN_CONFIGURE_WHITELIST | UNKNOWN_CONFIGURE_OPT_IGNORE | Richard Purdie | ||
TUNEABI_WHITELIST | Removed |
Functions
Repo | Current name | Suggest rename | Recommended by | Approved name |
---|---|---|---|---|
Bitbake | test_setscenewhitelist |
Patch Files
Repo | Recipe | Current name | Suggest rename | Recommended by | Approved name | Volunteer |
---|---|---|---|---|---|---|
core | tcp-wrappers | 11_tcpd_blacklist.patch | 11_tcpd_blocklist.patch | Saul Wold | as recommended | Saul |
core | udev-extraconf | mount.blacklist | mount.disallow | Saul Wold | as recommended | Saul |
oe | lxdm | 0001-lxdm.conf.in-blacklist-root-for-release-images.patch | 0001-lxdm.conf.in-deny-root-for-release-images.patch | Saul Wold | as recommended | Saul |
oe | multipath-tools | 022-RH-Remove-the-property-blacklist-exception-builtin.patch | 022-RH-Remove-the-default-property-exception-builtin.patch | Saul Wold | as recommended | Saul |
oe | mozjs | 0001-Cargo.toml-do-not-abort-on-panic.patch | 0001-Cargo.toml-do-not-exit-on-panic.patch | Saul Wold | as recommended | Saul |
oe | mozjs | 0004-Cargo.toml-do-not-abort-on-panic.patch | 0004-Cargo.toml-do-not-exit-on-panic.patch | Saul Wold | as recommended | Saul |
meta-integrity | files | ima_signing_blacklist | ima_signing_blocklist | Saul Wold | as recommended | Saul |
meta-efi-secure-boot | efitools | Fix-the-wrong-dependency-for-blacklist.esl.patch | Fix-the-wrong-dependency-esl-file.patch | Saul Wold | as recommended | Saul |
meta-raspberrypi | gstreamer1.0-omx | 0005-Don-t-abort-gst_omx_video_dec_set_format-if-there-s-.patch | 0005-Don-t-return-gst_omx_video_dec_set_format-if-there-s-.patch | Saul Wold | as recommended | Saul |
Migration
A warning mechanism will be added to bitbake to detect the issue (post processing), except for BB_ENV issues. A (limited) conversation script will be created to help with the migration. For those instances where a 1-1 mapping is not achievable, a list of the occurrences and what it should be changed to will occur.
Notes
Some upstream references:
[1][ Linux kernel]
[2][IETF: Terminology, Power and Inclusive Language: Draft v2]
[3][Why changing the terms blacklist and whitelist isn’t as easy as it might seem]