Opened 4 years ago

Closed 4 years ago

Last modified 3 years 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 (18)

comment:1 by Luke Plant, 4 years ago

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 by David Smith, 4 years ago

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 by Claude Paroz, 4 years ago

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 by Mariusz Felisiak, 4 years ago

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 4 years ago by Mariusz Felisiak (previous) (diff)

comment:5 by Luke Plant, 4 years ago

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 4 years ago by Luke Plant (previous) (diff)

comment:6 by Flavio Curella, 4 years ago

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 by Adam Johnson, 4 years ago

Resolution: wontfix
Status: closednew

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

comment:9 by Mariusz Felisiak, 4 years ago

Triage Stage: UnreviewedAccepted

comment:10 by GitHub <noreply@…>, 4 years ago

In 10df5b71:

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

comment:11 by Mariusz Felisiak <felisiak.mariusz@…>, 4 years ago

In 9b95c3bc:

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

Backport of 10df5b71775d8ee98201acb1367266521b17cc00 from master

comment:12 by Mariusz Felisiak, 4 years ago

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

comment:13 by Mariusz Felisiak <felisiak.mariusz@…>, 4 years ago

In 27c0904:

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

comment:14 by Mariusz Felisiak, 4 years ago

Resolution: fixed
Status: assignedclosed

comment:15 by Alexander Ovchinnikov, 4 years ago

I am [as part of the Django user community] don’t 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.

Version 0, edited 4 years ago by Alexander Ovchinnikov (next)

comment:16 by Mariusz Felisiak <felisiak.mariusz@…>, 3 years ago

In 51d6e6e7:

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

comment:17 by Carlton Gibson <carlton@…>, 3 years ago

In 0102b98:

Used allowlist_externals in tox.ini (again)

allowlist_externals is already used in this file.

Refs #31670

comment:18 by Mariusz Felisiak <felisiak.mariusz@…>, 3 years ago

In d25710a6:

Refs #31670 -- Removed whitelist argument and domain_whitelist attribute in EmailValidator per deprecation timeline.

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