annotate website/issues/detectors/newissuecopy.py @ 8440:254f70dfc585

bug, refactor, test: make pragma history_length work interactively history_length could be set interactively, but it was never used to set readline/pyreadline3's internal state. Using the pragma setting on the roundup-admin command line did set readline's state. Also refactored 2 calls to self.readline.get_current_history_length() into one call and storing in a variable. Also changed method for creating history strings for printing. Tests added for history_length pragma on cli and interactive use. Added test for exiting roundup-admin with EOF on input. Added test for 'readline nosuchdirective' error case. Added test to readline with a command directive to set an internal variable. This last one has no real test to see if it was successful because I can't emulate a real keyboard/tty which is needed to test.
author John Rouillard <rouilj@ieee.org>
date Sun, 31 Aug 2025 20:59:04 -0400
parents 35ea9b1efc14
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
4354
81a9eda2a798 I need to know when new issues are created
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
1 from roundup import roundupdb
81a9eda2a798 I need to know when new issues are created
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
2
81a9eda2a798 I need to know when new issues are created
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
3 def newissuecopy(db, cl, nodeid, oldvalues):
81a9eda2a798 I need to know when new issues are created
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
4 ''' Copy a message about new issues to a team address.
81a9eda2a798 I need to know when new issues are created
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
5 '''
81a9eda2a798 I need to know when new issues are created
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
6 # so use all the messages in the create
81a9eda2a798 I need to know when new issues are created
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
7 change_note = cl.generateCreateNote(nodeid)
81a9eda2a798 I need to know when new issues are created
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
8
81a9eda2a798 I need to know when new issues are created
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
9 # send a copy to the nosy list
81a9eda2a798 I need to know when new issues are created
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
10 for msgid in cl.get(nodeid, 'messages'):
81a9eda2a798 I need to know when new issues are created
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
11 try:
81a9eda2a798 I need to know when new issues are created
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
12 # note: last arg must be a list
81a9eda2a798 I need to know when new issues are created
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
13 cl.send_message(nodeid, msgid, change_note,
5277
b580f61929e2 Removing richard from notification list. Verified that
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
14 ['roundup-devel@lists.sourceforge.net'])
5248
198b6e810c67 Use Python-3-compatible 'as' syntax for except statements
Eric S. Raymond <esr@thyrsus.com>
parents: 4376
diff changeset
15 except roundupdb.MessageSendError as message:
5378
35ea9b1efc14 Python 3 preparation: "raise" syntax.
Joseph Myers <jsm@polyomino.org.uk>
parents: 5277
diff changeset
16 raise roundupdb.DetectorError(message)
4354
81a9eda2a798 I need to know when new issues are created
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
17
81a9eda2a798 I need to know when new issues are created
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
18 def init(db):
81a9eda2a798 I need to know when new issues are created
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
19 db.issue.react('create', newissuecopy)
5277
b580f61929e2 Removing richard from notification list. Verified that
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
20 #SHA: 6ed003c947e1f9df148f8f4500b7c2e68a45229b

Roundup Issue Tracker: http://roundup-tracker.org/