-
-
Notifications
You must be signed in to change notification settings - Fork 650
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Have you considered the possibility to replace blacklist/whitelist terminology after recent github decision to abandon master/slave?? #1466
Comments
We're already planning such a move since the master branch discussion started. As you may guess such a change has deeper impact than just changing a word: Current plan (as of writing this comment) is to remove the whitelist term in two steps: Step 1) PATCH VERSION: Change the official term to Step 2) MAJOR VERSION: whitelist term backwards support will be removed This is needed to give all the users of this module and plugin providers time to change their code without risking failures on running systems. |
…red lang is not allowed) (#2) * Refactor detectors * Moved fallback detector to a distinct folder * Mark private methods using "_" prefix (helps distinct what's meant to be used by developers vs utilities) * More refactoring + move "error handling" related stuff to utils/error * Massive refactoring, now resolves acceptLanguageHeader in order of user's preference, while only considering the supported languages * Add origin and context parameters to ErrorHandler function to help further debug when thing go south * Use COOKIE_LOOKUP_KEY_LANG as i18next lookupCookie to make sure we always use the same cookie's name when resolving cookie's value whether on browser or server * use i18next whitelist to avoid resolving unsupported languages when relying on i18next native detectors (such as "navigator") * Export universalLanguageDetect as default function * Update doc * release v2.0.0-beta.0 * Misc doc * Update nextjs demo * Add example with sentry usage
Wonderful 😃 !I'll definitely follow up! |
PATCH change: db90775 |
That was fast! |
STEP 1) was released: https://github.com/i18next/i18next/blob/master/CHANGELOG.md#1950 |
Seriously?!? How are those even derogatory, especially when the terms' origin as nothing to do with racism or slavery. At the very least, you could keep some traces in the documentation so that people don't searching aimlessly. |
@Sebdevar for further read - which leads to the decision to rename: https://www.ncbi.nlm.nih.gov/pmc/articles/PMC6148600/ beside that the old terms are still working as fallback but give a warning - https://github.com/i18next/i18next/blob/master/src/i18next.js#L46 |
I hate to say it, but @Sebdevar is right. The abandonment of master/slave in itself was stupid as it breaks a significant amount of older scripts which still default to those branch names and aren't maintained anymore, as well as a universal proliferative necessity to include support for both names now. Not to mention etymologically the terms master and slave originate far, far before the cause of any recent events. Furthermore, master/slave are key terms in general computer science. They are wholly and entirely ingrained into server based architecture and P2P control networks. Not because of any ulterior motive, but rather simply because the words are synonymous with commander and follower. Associating them with things beyond their scope is harmful, unnecessary, and violates the very principles of software engineering. The case is similar with blacklisting. The term originated from the 1600s according to most sources, in a document specifically from 1624, used to refer to a list of things deemed suspicious or negative, and not to be trusted. This is inline with literary connotations from earlier linguistics, where black (exempli gratia, in the phrase "the black of night") is associated with darkness, which is associated with the unknown and atmospheres of tense suspicion. None of the aforementioned terms are racially inclined in meaning whatsoever beyond linguistic expansion, societal association, and misinformation. In fact, what's going on here would be approximately akin to associating the word "proliferate" as I've used previously in this comment with the "pro-life" movement. It's nonsensical and frankly doesn't matter nor pertain to the meaning nor does anyone think it does; to do so would simply be a clear attempt at making an issue out of something that need not be one. As a field, software engineering is related entirely to information and logical constructs. There is no place for breaking, changing and deprecating things solely because it upsets some people, when the reality is it shouldn't. There is a reason in software engineering we deal with bug triages, feature requests, etc - and do you notice how, despite being categorised as a feature, this does not add anything nor provide any assistance or support for anything nor does it help anyone and certainly nor is it a feature? To note, I am not against inclusivity. I fully believe software and software engineering should be a safe environment for all who are involved. However, I do not believe such irrational discussions and changes have a place in that environment - it is our job as engineers to innovate and create the future of humanity, not to appeal to pedantic arguments which hold no real reasoning beyond an association that should not even exist in the first place. We should be focusing on designing software that is accessible and safe for all; not breaking things and making changes that are not constructive, meaningful, or additive in any way. Thank you for taking the time to read this. I hope this statement serves useful in advancing this conversation, hopefully to a close, within both this thread and the wider community. |
@Nytelife26 I think there is no right or wrong...I can understand both sides. As it was a small change with included backward compatibility we decided for doing the change. |
Ridiculous |
🚀 Feature Proposal
Abandon whitelist/blacklist terminology in favor of a more inclusive one and in line with the spirit of i18next
Motivation
Recent github decision to abandon master/slave terminology, recent events.
Example
An alternative to whitelist could be allowlist
The text was updated successfully, but these errors were encountered: