libbe.ui.util.user
¶
Tools for getting, setting, creating, and parsing the user’s ID.
IDs will look like ‘John Doe <jdoe@example.com>’. Note that the
libbe.storage.vcs.arch
enforces IDs with
this format.
Do not confuse the user IDs discussed in this module, which refer to
humans, with the “user IDs” discussed in libbe.util.id
, which
are human-readable tags refering to objects.
-
libbe.ui.util.user.
create_user_id
(name, email=None)¶ Create a user ID string from given name and email strings.
See also
parse_user_id
- inverse
Examples
>>> create_user_id("John Doe", "jdoe@example.com") 'John Doe <jdoe@example.com>' >>> create_user_id("John Doe") 'John Doe'
-
libbe.ui.util.user.
get_fallback_email
()¶ Return an email address extracted from environmental variables.
-
libbe.ui.util.user.
get_fallback_fullname
()¶ Return a full name extracted from environmental variables.
-
libbe.ui.util.user.
get_fallback_username
()¶ Return a username extracted from environmental variables.
-
libbe.ui.util.user.
get_user_id
(storage=None)¶ Return a user ID, checking a list of possible sources.
The source order is:
- Global BE configuration [1] (default section, setting ‘user’).
- storage.get_user_id, if that function is defined.
get_fallback_username()
andget_fallback_email()
.
[1] See libbe.storage.util.config
.Notes
Sometimes the storage will keep track of the user ID (e.g. most VCSs, see
libbe.storage.vcs.base.VCS.get_user_id()
). If so, we prefer that ID to the fallback, since the user has likely configured it directly.
-
libbe.ui.util.user.
parse_user_id
(value)¶ Parse a user ID string into name and email strings.
See also
create_user_id
- inverse
Examples
>>> parse_user_id("John Doe <jdoe@example.com>") ('John Doe', 'jdoe@example.com') >>> parse_user_id("John Doe") ('John Doe', None) >>> parse_user_id("John Doe <jdoe@example.com><what?>") ('John Doe', 'jdoe@example.com')
-
libbe.ui.util.user.
set_user_id
(user_id)¶ Set the user ID in a user’s BE configuration.
See also