Opened 11 months ago

Closed 11 months ago

Last modified 3 months ago

#31670 closed Cleanup/optimization (fixed)

Change "whitelist" to "allow list" and "blacklist" to "deny list".

Reported by: Adam Johnson Owned by: David Smith
Component: Core (Other) Version: dev
Severity: Normal Keywords:
Cc: Triage Stage: Ready for checkin
Has patch: yes Needs documentation: no
Needs tests: no Patch needs improvement: no
Easy pickings: no UI/UX: no

Description

Started by David Smith in https://github.com/django/django/pull/12755 but closed due to lack of discussion at the time. He used the term "blocklist" but I think "deny list" fits better in most circumstances.

Due to #BlackLivesMatter, this is currently being discussed on Twitter by several people including Simon Willison: https://twitter.com/simonw/status/1269292897997709317 . Carlton and I discussed on the original PR that the term's origin in English wasn't racist. But it has been used in racist contexts, and continues to be. Given that we put up our banner of support for BLM I think we should also make this docs change.

The 'whitelist' parameter and attribute of EmailValidator will need to go through the normal deprecation process.

Change History (17)

comment:1 Changed 11 months ago by Luke Plant

Can you give an example of it being used in racist context that means that the word "blacklist" itself carries a racist meaning? I can use the word "Hello" in a racist context, it doesn't make it racist.

Please let's not do this. It distracts from real issues, and discredits the BLM movement, because it is based on ignorance and misunderstanding.

comment:2 Changed 11 months ago by David Smith

Here are a few examples.

Microsoft made pull requests against Google's Chromium (allowlist / blocklist) https://bugs.chromium.org/p/chromium/issues/detail?id=981129
Rails - (allowlist / denylist) https://github.com/rails/rails/issues/33677
Tox - Issue closed due to backwards compatibility issue - Django currently relies on this setting. https://github.com/tox-dev/tox/issues/1491

PR

comment:3 Changed 11 months ago by Claude Paroz

I'm totally with Luke on this matter (https://lukeplant.me.uk/blog/posts/stop-trying-to-blacklist-blacklist/).
Let's not start flame wars, and do not rush this please.

comment:4 Changed 11 months ago by Mariusz Felisiak

Component: DocumentationCore (Other)
Resolution: wontfix
Status: newclosed
Summary: Change "whitelist" to "allow list" and "blacklist" to "deny list" in documentationChange "whitelist" to "allow list" and "blacklist" to "deny list".

These are also technical terms used in many (or at least few) RFCs so changing them can be misleading. We should reach a consensus on DevelopersMailingList before we will move it forward. Please start a discussion.

Last edited 11 months ago by Mariusz Felisiak (previous) (diff)

comment:5 Changed 11 months ago by Luke Plant

I have put my thoughts together in a longer form here - https://lukeplant.me.uk/blog/posts/stop-trying-to-blacklist-blacklist/

If the rest of the community disagrees with me, I'm not going to stand in the way, but I think it is important that we are not discrediting ourselves and the stand we have made (which I agree with entirely) by a partisan spirit. I've said my piece, I'm unlikely to be contributing any more to this discussion, thanks.

Last edited 11 months ago by Luke Plant (previous) (diff)

comment:6 Changed 11 months ago by Flavio Curella

I think all the etymological and linguist discussion detracts from the actual issue that we are trying to solve.

I would argue that it does not matter where words come from, or how we, the privileged people, interpret them. The only questions we need to answer are:

  • Do these words makes Black people less welcome?
  • Would replacing them be an improvement for them?

Then we can evaluate how hard it would be to change, and compare it to how much we value their experience.

Instead of focusing on logic and prior knowledge, let's focus on future developer experience.

comment:8 Changed 11 months ago by Adam Johnson

Resolution: wontfix
Status: closednew

The mailing list discussion seems in favour of doing this, and the PR has been reopened.

comment:9 Changed 11 months ago by Mariusz Felisiak

Triage Stage: UnreviewedAccepted

comment:10 Changed 11 months ago by GitHub <noreply@…>

In 10df5b71:

Refs #31670 -- Removed whitelist/blacklist terminology in docs and comments.

comment:11 Changed 11 months ago by Mariusz Felisiak <felisiak.mariusz@…>

In 9b95c3bc:

[3.1.x] Refs #31670 -- Removed whitelist/blacklist terminology in docs and comments.

Backport of 10df5b71775d8ee98201acb1367266521b17cc00 from master

comment:12 Changed 11 months ago by Mariusz Felisiak

Has patch: set
Owner: changed from nobody to David Smith
Status: newassigned
Triage Stage: AcceptedReady for checkin

comment:13 Changed 11 months ago by Mariusz Felisiak <felisiak.mariusz@…>

In 27c0904:

Refs #31670 -- Renamed whitelist argument and attribute of EmailValidator.

comment:14 Changed 11 months ago by Mariusz Felisiak

Resolution: fixed
Status: assignedclosed

comment:15 Changed 11 months ago by Alexander Ovchinnikov

I am [as part of the Django user community] give a damn about the black skin community members, gays, women, cats and puppies etc. I'm sorry for that.

Their troubles are their troubles, not my. Django project is not about saving world or humanity or black people.

You may follow #BlackLivesMatter or #AllLivesMatter or anything like that in your free time for you personal projects, why not.

I'm not a racist etc. I just do not want to spend even 1 minute of my time for solving that troubles. It's none of my business.

You renamed something in Django. For all of us. It mean, every Django user now will spend their time during upgrade. Tank you for that.

I hope that I did not offend anyone with my opinion.

Last edited 11 months ago by Alexander Ovchinnikov (previous) (diff)

comment:16 Changed 6 months ago by Mariusz Felisiak <felisiak.mariusz@…>

In 51d6e6e7:

Refs #31670 -- Used allowlist_externals in tox.ini.

comment:17 Changed 3 months ago by Carlton Gibson <carlton@…>

In 0102b98:

Used allowlist_externals in tox.ini (again)

allowlist_externals is already used in this file.

Refs #31670

Note: See TracTickets for help on using tickets.
Back to Top