jesopo
jesopo
it is simply an optimisation - if you have an `IPSet` of 4 IPv4 networks it does not make sense to iterate 32 times
``` ✨ ~/src/netaddr/netaddr master % python3 -m timeit -n 5000 'import netaddr; "127.0.0.1/32" in netaddr.IPSet(["127.0.0.0/1"]);' 5000 loops, best of 5: 73.8 usec per loop ✨ ~/src/netaddr/netaddr master % git checkout...
it's even competitive in a worst case scenario (please excuse the messy CIDR calculations!) ``` ✨ ~/src/netaddr/netaddr master % python3 -m timeit -n 50000 --setup 'from netaddr import IPSet, IPAddress,...
an alternative solution is to check what `CAP`s you know the other side has said they support, rather than checking what's actually been `ACK`ed, but that seems untidy
my suggestion would be that we store the forward channel in `MaskInfo` objects and then change https://github.com/oragono/oragono/blob/55b21fa86c462a283f296753cd3ee9288177ad5f/irc/client_lookup_set.go#L423 to somehow figure out which mask you match, rather than just "you match...
sounds good. perhaps we could change the big regex to be `"(asd!*@*)|(dsa!*@*)|(sda!*@*)"` etc and then we figure out the index of which group we matched and use that to figure...
yes that's usually cmode `+f`, banforwards are very often utilised for specific actions against specific people, such as if they are rapidly reconnecting, you forward them to `##fix-your-connection`
as for `$` being valid in nicknames, as long as it's not valid in hostnames, we can use `$` as the delimiter but only when it's on the righthand side...
`#python` on freenode almost always has 1700+ people in it; does that mean I'm to expect 1700+ `delivered` TAGMSGs to every message I send? Same goes for https://github.com/ircv3/ircv3-specifications/pull/347
> @jesopo In all likelihood, this tag would never be activated on huge public channels. The draft itself says it's intended for situations where all users know each other, not...