Mercurial > p > roundup > code
view detectors/newissuecopy.py @ 8408:e882a5d52ae5
refactor: move RateLimitExceeded to roundup.cgi.exceptions
RateLimitExceeded is an HTTP exception that raises code 429. Move it
to roundup.cgi.exceptions where all the other exceptions that result
in http status codes are located. Also make it inherit from
HTTPException since it is one.
Also add docstrings for all HTTP exceptions and order HTTPExceptions
by status code.
BREAKING CHANGE: if somebody is importing RateLimitExceeded they will
need to change their import. I consider it unlikely anybody is using
RateLimitExceeded. Detectors and extensions are unlikely to raise
RateLimitExceeded. So I am leaving it out of the upgrading doc. Just
doc in change log.
| author | John Rouillard <rouilj@ieee.org> |
|---|---|
| date | Sun, 10 Aug 2025 21:27:06 -0400 |
| parents | 198b6e810c67 |
| children |
line wrap: on
line source
# copied from nosyreaction from roundup import roundupdb def newissuecopy(db, cl, nodeid, oldvalues): ''' Copy a message about new issues to a team address. ''' # get relevant crypto settings encrypt = db.config.PGP_ENABLE and db.config.PGP_ENCRYPT # so use all the messages in the create change_note = cl.generateCreateNote(nodeid) # send a copy to the nosy list for msgid in cl.get(nodeid, 'messages'): try: # note: fourth arg must be a list cl.send_message(nodeid, msgid, change_note, ['team@team.host'], crypt=encrypt) except roundupdb.MessageSendError as message: raise roundupdb.DetectorError(message) def init(db): db.issue.react('create', newissuecopy) # vim: set filetype=python ts=4 sw=4 et si
