Skip to content

Conversation

@linkmauve
Copy link
Contributor

The main change is that jid now stores the JID as a single string, with an offset to the '@' and to the '/', and stringprep is now always applied. This lowers the size of the struct in memory, and makes it much faster to display a JID. In order to also make it fast to run stringprep, there are new NodePart, DomainPart and ResourcePart types which are guaranteed to have been validated/normalized, and thus can be used to construct a JID at the cost of a format!() call.

In lib-gst-meet in particular, this removes quite a bunch of clone() calls, but nothing significant.

Supersedes #47.

The main change is that jid now stores the JID as a single string, with
an offset to the '@' and to the '/', and stringprep is now always
applied.  This lowers the size of the struct in memory, and makes it
much faster to display a JID.  In order to also make it fast to run
stringprep, there are new NodePart, DomainPart and ResourcePart types
which are guaranteed to have been validated/normalized, and thus can be
used to construct a JID at the cost of a format!() call.

In lib-gst-meet in particular, this removes quite a bunch of clone()
calls, but nothing significant.

Supersedes avstack#47.
@jbg jbg closed this May 27, 2024
@linkmauve linkmauve deleted the bump-jid branch July 15, 2024 13:45
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants