Fails to parse channels with a key and '#' in the uri

I was following the instructions to get irkerd working with git lab, where it makes it seem lik you can have #channel in the uri with no problems:

Recipients have to be specified with a full URI: irc[s]://irc.network.net[:port]/#channel. Special cases: if you want the channel to be a nickname instead, append ",isnick" to the channel name; if the channel is protected by a secret password, append "?key=secretpassword" to the URI. Note that if you specify a default IRC URI to prepend before each recipient, you can just give a channel name.

However if the uri has a '#' in at while having a ?key at the same time, it wont properly parse the channel key. It looks like it is line 707 in irkerd where it checks parsed.query. Here are examples from urlparse (python 2.7.6)

>>> urlparse.urlparse('irc://irc.foo.com/#foo_channel?key=foo_password')
ParseResult(scheme='irc', netloc='irc.foo.com', path='/', params='', query='', fragment='foo_channel?key=foo_password')
>>> urlparse.urlparse('irc://irc.foo.com/foo_channel?key=foo_password')
ParseResult(scheme='irc', netloc='irc.foo.com', path='/foo_channel', params='', query='key=foo_password', fragment='')

Removing the '#' fixed the issue for me, but perhaps if this is documented or fixed somewhere it will save someone else the trouble of figuring out what is happening.

Thanks! --vimalloc