Some IRCds include trailing space in capability lists, and this is not a spec violation. Default .split() behavior in Python should handle it fine, but it's also good to be explicit that we expect the default behavior, through tests.
[x] I can and do license this contribution under the EFLv2
[x] No issues are reported by make qa (runs make lint and make test)
Success: no issues found in 82 source files
1322 passed, 8 xfailed, 1 warning in 70.41s (0:01:10)
[x] I have tested the functionality of the things this change touches
Notes
Inspired by ircv3/ircv3-specifications#530, which is not yet merged. However, since this is de facto behavior by UnrealIRCd and InspIRCd that isn't likely to change very soon even if the spec amendment is rejected, I think we should just add the tests.
Review requested from @Exirel specifically because the new capability system is his baby, and he's the most likely one to point out any incorrect assumptions I might have had about how to adapt existing test cases for this purpose.
Some IRCds include trailing space in capability lists, and this is not a spec violation. Default
.split()
behavior in Python should handle it fine, but it's also good to be explicit that we expect the default behavior, through tests.Checklist
make qa
(runsmake lint
andmake test
)Success: no issues found in 82 source files
1322 passed, 8 xfailed, 1 warning in 70.41s (0:01:10)
Notes
Inspired by ircv3/ircv3-specifications#530, which is not yet merged. However, since this is de facto behavior by UnrealIRCd and InspIRCd that isn't likely to change very soon even if the spec amendment is rejected, I think we should just add the tests.
Review requested from @Exirel specifically because the new capability system is his baby, and he's the most likely one to point out any incorrect assumptions I might have had about how to adapt existing test cases for this purpose.