Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Allow specific emoji in nicks/channels #137

Closed
DanielOaks opened this issue Sep 25, 2017 · 4 comments
Closed

Allow specific emoji in nicks/channels #137

DanielOaks opened this issue Sep 25, 2017 · 4 comments

Comments

@DanielOaks
Copy link
Member

You could probably do it in a way similar to...

Get nick Frosty☃Dude, convert to Frosty:codepoint:Dude, casefold that, replace :codepoint: with and get the casefolded resultant nick frosty☃dude.

This would work because : is not allowed in nicknames, so there'd be no chance of doing an accidental replacement involving :.

@DanielOaks
Copy link
Member Author

" ,*?" is disallowed in both nicks and channels. See if any of those are allowed by PRECIS, and if so choose one of those as the fabled replacement character.

As a note, the specific character is entirely unimportant since it'll never be exposed outside of the folding function. tl;dr figure out where to throw it, probably inside Casefold(), make sure we run a specific check for the character before we do the substitution and then do the subs as roughly laid out above. This ensures that the character doesn't leak outside of the function, that the character can't be used by dodgy users to create escapes where they shouldn't exist, and similar (check for things like Unicode folding wide : into a normal : which could stuff it up, and similar issues).

@slingamn
Copy link
Member

Given ircv3/ircv3-specifications#259, this is clearly thorny stuff. I don't think it's a big priority for our deployment (irc.darwin.network) to restore support for this in the absence of an agreed-upon standard. Really we were just goofing around with emoji nicks :-)

@DanielOaks
Copy link
Member Author

DanielOaks commented Sep 26, 2017

For sure! Something to look at down the road, but super experimental and not urgent :)

@DanielOaks
Copy link
Member Author

This is more trouble than it's worth, especially with the standard approach to casemapping we're doing. I'll close this issue for now

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

2 participants