# HG changeset patch # User Julien Cristau # Date 2019-02-11 15:27:20 # Node ID 570e62f1dcf2977f126a4c814c4258d9f15350da # Parent 3b0ba4575c8ca021cd3a37f7f03e7907ef5c9250 phabricator: make user searches case-insensitive User names in conduit are case insensitive, but when looking for "FOO" it would return "foo" instead and we'd think the user didn't exist. So lower case both the query and the response when comparing them. Differential Revision: https://phab.mercurial-scm.org/D5934 diff --git a/hgext/phabricator.py b/hgext/phabricator.py --- a/hgext/phabricator.py +++ b/hgext/phabricator.py @@ -450,12 +450,13 @@ def createdifferentialrevision(ctx, revi def userphids(repo, names): """convert user names to PHIDs""" + names = [name.lower() for name in names] query = {b'constraints': {b'usernames': names}} result = callconduit(repo, b'user.search', query) # username not found is not an error of the API. So check if we have missed # some names here. data = result[r'data'] - resolved = set(entry[r'fields'][r'username'] for entry in data) + resolved = set(entry[r'fields'][r'username'].lower() for entry in data) unresolved = set(names) - resolved if unresolved: raise error.Abort(_(b'unknown username: %s')