Mercurial > kallithea
view setup.cfg @ 5877:ba5fee3879c8
utils: improve extract_mentioned_users usefulness
Previously, extract_mentioned_users performed a regex search, converted
to a set to remove duplicates, converted that set back into a list, and
sorted the list on username, ignoring case. Every single caller of the
function then promptly took the carefully pruned and sorted result and
put it back into a set, rendering the entire exercise pointless.
In addition, every caller also resolved the usernames to database User
objects.
In this changeset, extract_mentioned_users is changed to return a set
of database User objects directly. A new extract_mentioned_usernames
function, which does only username extraction, is kept for the sole
purpose of providing a more testable interface (no database needed).
Bonus feature: The new extract_mentioned_users will prune non-existent
users, as well as the DEFAULT user. This means it is no longer possible
to @mention (and send notifications to) the DEFAULT user.
author | Søren Løvborg <sorenl@unity3d.com> |
---|---|
date | Wed, 06 Apr 2016 14:50:47 +0200 |
parents | d88077fae3d6 |
children | 0a2d85671b59 |
line wrap: on
line source
[egg_info] tag_build = tag_svn_revision = 0 tag_date = 0 [aliases] test = pytest [compile_catalog] domain = kallithea directory = kallithea/i18n statistics = true [extract_messages] add_comments = TRANSLATORS: output_file = kallithea/i18n/kallithea.pot msgid-bugs-address = translations@kallithea-scm.org copyright-holder = Various authors, licensing as GPLv3 no-wrap = true [init_catalog] domain = kallithea input_file = kallithea/i18n/kallithea.pot output_dir = kallithea/i18n [update_catalog] domain = kallithea input_file = kallithea/i18n/kallithea.pot output_dir = kallithea/i18n previous = true [build_sphinx] source-dir = docs/ build-dir = docs/_build all_files = 1 [upload_sphinx] upload-dir = docs/_build/html