Let's add more granular exceptions when resources do not exist.
Siege has written some client code that screen-scrapes faultStrings and puts those into more granular exceptions. Here's the list he's come up with. From https://obriencj.preoccupied.net/koji-smoky-dingo/kojismokydingo
NoSuchArchive NoSuchBuild NoSuchChannel NoSuchContentGenerator NoSuchPackage NoSuchPermission NoSuchRPM NoSuchRepo NoSuchTag NoSuchTarget NoSuchTask NoSuchUser
Since we assign numeric faultCodes sequentially as we add exceptions to Koji, it makes sense to me that we'd add these to koji in one go so they are ordered alphabetically.
The one I'm especially interested in is "NoSuchUser" for https://github.com/ktdreyer/koji-ansible/issues/221
I'm also wondering how long we have to wait to use these error classes on the hub, after we've shipped them in the main koji/__init__.py.