tickets: 8794
This data as json
id | created | changetime | last_pulled_from_trac | stage | status | component | type | severity | version | resolution | summary | description | owner | reporter | keywords | easy | has_patch | needs_better_patch | needs_tests | needs_docs | ui_ux |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
8794 | 2008-09-02 11:54:58 | 2011-10-09 13:42:11 | 2022-03-06 03:43:11.277140 | Accepted | closed | contrib.comments | dev | fixed | Profanity filter suffers from the Scunthorpe problem | The implementation of the profanity filter suffers from the [http://en.wikipedia.org/wiki/Scunthorpe_Problem Scunthorpe Problem]; ie. that it considers the town of Scunthorpe, amongst other innocuous words, to be profane. Profanity filtering is A Hard Problem, and naïve solutions like this one cause frustrating problems to end-users. Checking the current profanities list for false positives in a couple of word lists I had to hand also yields: {{{ gobbledegook snigger Brushite Cushite Niggerhead Peshito Peshitto Shittah Shittah tree Shittim Shittim wood Shittle Shittlecock Shittleness }}} Obviously proper names are not in my dictionary, but they cause frequent and often more annoying problems. I suggest to disable the filter by default so that scope of the problem is limited, and at the very least the filter must be restricted to {{{re.match(r'\b' + word + '\b')}}}. Users who need stricter profanity filters should have the responsibility for doing so, and potentially annoying their users themselves. Django should not be doing it for them. | nobody | Daniel Pope <dan@mauveinternet.co.uk> | 0 | 0 | 0 | 0 | 0 | 0 |