| changeset | 67ed90055e47 |
|---|---|
| branch | |
| bookmark | |
| tag | |
| user | John Rouillard <rouilj@ieee.org> |
| description | test: handle failing email signature removal test differently The comment for the test is: # This fails because the sig isn't removed (we currently remove the # sig only if the delimiter is the first line in a section) Originally the test was decorated so it didn't run at all and reported PASSED. The decorator also returned the value 0. This caused a deprecation warning: test/test_mailgw.py::MailgwTestCase::testEmailQuotingRemove3 /usr/lib/python3.12/unittest/case.py:690: DeprecationWarning: It is deprecated to return a value that is not None from a test case [...] Better to handle it using pytest xfail so if we start stripping the signature we get a failure. This does mean the tests get an xfail registered, but I am ok with that. I added "OK" to the reason to indicate it was expected. |
| files |
| changeset | 520075b29474 |
|---|---|
| branch | |
| bookmark | |
| tag | |
| user | John Rouillard <rouilj@ieee.org> |
| description | feat: support justhtml parsing library to convert email to plain text justhtml is an pure python, fast, HTML5 compliant parser. It is now an option for converting html only emails to plain text. Its output format differs slightly from dehtml or beautifulsoup. Mostly by removing extra blank lines. dehtml.py: Using the stream parser of justhtml. Unable to get the full document parser to successfully strip script and style blocks. If I can fix this and use the standard parser, I can in theory generate markdown from the DOM tree generated by justhtml. Updated test case to include inline elements that should not cause a line break when they are encountered. Running dehtml as: `python roundup/dehtml.py foo.html` will load foo.html and parse it using all available parsers. configuration.py: justhtml is available as an option. docs: updated CHANGES.txt, doc/tracker_config.txt added beautifulsoup and justhtml to the optional software section of doc/installtion.txt. test_mailgw.py, .github/workflows/ci-test Updated tests and install justhtml as part of CI. |
| files |
| changeset | 28c5030757d3 |
|---|---|
| branch | |
| bookmark | |
| tag | |
| user | John Rouillard <rouilj@ieee.org> |
| description | fix: cae1bbf2536b - expression errors not setting result properly Rather than setting 'result' in renderContext, I was wrirting the output directly, but was stil falling through to where result would be used. This caused email to be sent to the admin and when test_mailgw was called the mail-test.log was somehow created and caused the test there to fail. Fixed renderContext to use result variable and output contents of mail-test.log to make debugging easier. This should fix CI failure. |
| files |
| changeset | c12377fb4144 |
|---|---|
| branch | permission-performance |
| bookmark | |
| tag | |
| user | Ralf Schlatterbeck <rsc@runtux.com> |
| description | Change permission representation Now permissions are checked in different order. Permissions without a check method (which are cheap to check) are checked first. Only if no permission is found do we check permissions with check methods. |
| files |
| changeset | 0713c286f71c |
|---|---|
| branch | |
| bookmark | |
| tag | |
| user | John Rouillard <rouilj@ieee.org> |
| description | Fix tests The testEmailBodyUnchangedNewIsYes was using a signature (sig) that didn't have a blank line before it. Therefore the sig wasn't recognised as a message section and wasn't a candidate to be removed even if EMAIL_LEAVE_BODY_UNCHANGED was set to no. Appended a newline before the signature block so testing with self.instance.config.EMAIL_LEAVE_BODY_UNCHANGED = 'no' will cause test to fail and setting it to yes (the test condition) will cause test to pass by keeping signature. Make same sig change to testEmailBodyUnchangedFollowupIsYes for same reason. Add new tests for other permutations: testEmailBodyUnchangedNewIsNew - keep sig testEmailBodyUnchangedFollowupIsNew - remove sig testEmailBodyUnchangedFollowupIsNo - remove sig |
| files |
| changeset | cde2b45d599a |
|---|---|
| branch | |
| bookmark | |
| tag | |
| user | John Rouillard <rouilj@ieee.org> |
| description | Add new test new email body unchanged is no. verify that sig is stipped. |
| files |
| changeset | 86862ed039fa |
|---|---|
| branch | |
| bookmark | |
| tag | |
| user | John Rouillard <rouilj@ieee.org> |
| description | issue2551262 - make mail gateway subject prefix parsing accept spaces Allow spaces before/after prefix. Also allow spaces between classname and id number in prefix designator. So "[ issue 23 ] subject" is parsed like "[issue23] subject". |
| files |
| changeset | 27c2d7295ba2 |
|---|---|
| branch | |
| bookmark | |
| tag | |
| user | Ralf Schlatterbeck <rsc@runtux.com> |
| description | Changes from review mailgw script was still using usage() |
| files |
| changeset | 3359dc1dabb0 |
|---|---|
| branch | |
| bookmark | |
| tag | |
| user | Ralf Schlatterbeck <rsc@runtux.com> |
| description | Add OAuth authentication to the mailgw script Now IMAPS can be used with OAuth as required by several large cloud providers. Move command line processing of the mailgw script to ``argparse``. Note that the command line options of the mailgw have changed, see upgrading.txt for details. |
| files |
| changeset | bd2c3b2010c3 |
|---|---|
| branch | |
| bookmark | |
| tag | |
| user | John Rouillard <rouilj@ieee.org> |
| description | issue2551232 - modify in-reply-to threading when multiple matches if an email is missing an issue designator, in-reply-to threading is attempted. In this change if in-reply-to threading matches multiple issues, fall back to matching on subject. It used to just arbitrairly choose the first matching issue. |
| files |
| changeset | 68f7acd67298 |
|---|---|
| branch | |
| bookmark | |
| tag | |
| user | John Rouillard <rouilj@ieee.org> |
| description | Remove pytest deprication warnings. returns of anything but None are depricated for test methods. |
| files |
| changeset | 567283742a5c |
|---|---|
| branch | |
| bookmark | |
| tag | |
| user | John Rouillard <rouilj@ieee.org> |
| description | Add more translation tests for mailgw.py Verify error in German for [issue999999] and [frobulated] in subject line. The issue doesn't exist and the class doesn't exist. Also add warning to mailgw.py for mailgw.py::handle_message that any chnags to that method need to be replicated for all Translate tests in test_mailgw.py since it can't be tested directly as it destroys the mock used for the database by the test harness. |
| files |
| changeset | 01216187a167 |
|---|---|
| branch | |
| bookmark | |
| tag | |
| user | John Rouillard <rouilj@ieee.org> |
| description | Testing translations in mailgw.py, update translations, i18n improved i18n.py: translation objects get a _file which is the file that catalog was loaded from. Useful for debugging. mailgw.py: fix code to include roundup.i18n and invoke propert method. GNUMakefile: added roundup.pot target. Also building roundup.pot sets the release version and product code in roundup.pot. Release version from roundup.__init__.py. merged roundup.pot changes into all *.po files. Not sure if the version info in the headers of the .po files is supposed to be updated to match roundup.pot or not. test_mailgw.py: test cases for en and de translations tested. Not sure why I neede to set roundupdb._ and mailgw._, but followed setUp method code and it worked. |
| files |
| changeset | 0ef688717613 |
|---|---|
| branch | |
| bookmark | |
| tag | |
| user | John Rouillard <rouilj@ieee.org> |
| description | Add testing for beautifulsoup4 as html -> text converter. |
| files |
| changeset | 2453d7b58a92 |
|---|---|
| branch | |
| bookmark | |
| tag | |
| user | John Rouillard <rouilj@ieee.org> |
| description | Start work on supporting testing of beautifulsoup Change original dehtml only test into a method to be called by a test method. Converter to be used is passed in and selects the right comparison text. All this change does is set things up to run the dehtml test parameterized. It also provdes the stub for the beautiful soup test. |
| files |
| changeset | 7f00fc5958ca |
|---|---|
| branch | |
| bookmark | |
| tag | |
| user | Ralf Schlatterbeck <rsc@runtux.com> |
| description | Make memorydb persistent across re-open This allows memorydb to be used for more tests, in particular re-opening with another user for checking permissions. |
| files |
| changeset | 58817c3bf471 |
|---|---|
| branch | |
| bookmark | |
| tag | |
| user | Ralf Schlatterbeck <rsc@runtux.com> |
| description | Fix roundup/test Move the test-detectors in tx_Source_detector.py to roundup/test for two reasons: It's used in the memorydb convenience functions and it may be useful in other tests. Make the prefix a paramter of the convenience functions to be usable in other tests. |
| files |
| changeset | 14c9284a8bad |
|---|---|
| branch | |
| bookmark | |
| tag | |
| user | Ralf Schlatterbeck <rsc@runtux.com> |
| description | Fix filename created from mail attachments Fixes issue2551118 |
| files |
| changeset | 778a9f455067 |
|---|---|
| branch | |
| bookmark | |
| tag | |
| user | John Rouillard <rouilj@ieee.org> |
| description | Remove old code import imp, old style trackers db/backend_name Module imp is depricated. Removing that means rewriting old style trackers that used imp to load schema and config files. So removed code supporting old style trackers that have been depricated since 2008. Added test to verify that existence of dbinit.py triggers alert that tracker is old style and not supported. Also remove support for depricated db/backend_name file for specifying backend. It is now specified in config.ini's [rdbms] backend. It looks like not specifying an [rdbms] backend key in config.ini throws a config error. However I left in a check and throw an exception with details if there is an empty backend value. But I don't think it will ever be triggered. Removed unused import of imp in a number of test files. |
| files |
| changeset | ca0915457761 |
|---|---|
| branch | |
| bookmark | |
| tag | |
| user | John Rouillard <rouilj@ieee.org> |
| description | Handle auto-submitted header on inbound email like bulk. Part of issue2550564. |
| files |
| changeset | ad0ece9cb01b |
|---|---|
| branch | |
| bookmark | |
| tag | |
| user | John Rouillard <rouilj@ieee.org> |
| description | Removing @pytest.mark.xfail decoration. Ralf fixed the test. |
| files |
| changeset | f767a83a6af0 |
|---|---|
| branch | |
| bookmark | |
| tag | |
| user | Ralf Schlatterbeck <rsc@runtux.com> |
| description | Fix test for mailer.standard_message Python3 needs normal (unicode) strings while python2 needs UTF-8 encoded strings for the mail interface. |
| files |
| changeset | 75586a0c26c0 |
|---|---|
| branch | |
| bookmark | |
| tag | |
| user | John Rouillard <rouilj@ieee.org> |
| description | Mark failing test as xfail till it gets fixed. |
| files |
| changeset | 7c05c481e470 |
|---|---|
| branch | |
| bookmark | |
| tag | |
| user | Ralf Schlatterbeck <rsc@runtux.com> |
| description | Add test for standard_message .. with utf-8 subject, TO header, and content. |
| files |
| changeset | 95a366d46065 |
|---|---|
| branch | |
| bookmark | |
| tag | |
| user | John Rouillard <rouilj@ieee.org> |
| description | Replace deprecated assertEquals with assertEqual and failUnlessRaises with assertRaises. |
| files |
| changeset | 2c0f89edabe1 |
|---|---|
| branch | |
| bookmark | |
| tag | |
| user | John Rouillard <rouilj@ieee.org> |
| description | issue2551043: Add X-Roundup-issue-id email header. Add a new header to make it easier to filter notification emails without having to parse the subject line. Modified tests to account for new header. |
| files |
| changeset | f3d68c1bb96e |
|---|---|
| branch | |
| bookmark | |
| tag | |
| user | John Rouillard <rouilj@ieee.org> |
| description | issue2551018 add new nosy_filter parameter to nosymessage. Function passed as nosy_filter can rewrite the nosy message body before it's sent. Tom Ekberg tekberg did the work. |
| files |
| changeset | f8893e1cde0d |
|---|---|
| branch | |
| bookmark | |
| tag | |
| user | John Rouillard <rouilj@ieee.org> |
| description | assert_ is depricated. Replacing with assertTrue to reduce logs in travisci. |
| files |
| changeset | 081be318661b |
|---|---|
| branch | |
| bookmark | |
| tag | |
| user | Joseph Myers <jsm@polyomino.org.uk> |
| description | Do not transcode binary email attachments (issue2551004). Only transcode attachments if a charset is specified or if they have a text/* content-type. |
| files |
| changeset | 52e50ab5dfda |
|---|---|
| branch | |
| bookmark | |
| tag | |
| user | Ralf Schlatterbeck <rsc@runtux.com> |
| description | Mark failing test |
| files |
| changeset | 4523fe3cf04c |
|---|---|
| branch | |
| bookmark | |
| tag | |
| user | Ralf Schlatterbeck <rsc@runtux.com> |
| description | Add failing transcoding test An attachment with Content-Type application/octet is transcoded to utf-8, originally the attachment is in latin1 (although that doen't matter, no charset can be asumed for a binary-only attachment). |
| files |
| changeset | 29346d92d80c |
|---|---|
| branch | |
| bookmark | |
| tag | |
| user | Joseph Myers <jsm@polyomino.org.uk> |
| description | Fix email interfaces with Python 3 (issue 2550974, issue 2551000). This patch fixes various issues handling incoming email with roundup-mailgw with Python 3. Incoming email must always be handled as bytes, not strings, because it may contain 8-bit-encoded MIME parts with different encodings in each part. When handling piped input, that means using sys.stdin.buffer in Python 3 for binary input, along with message_from_binary_file, not sys.stdin which is text input and may be for the wrong encoding and not message_from_file. (In turn, tests that use MailGW.main with text input are affected so an s2b call is inserted in the test code and it is made to use BytesIO not StringIO. Properly all the test messages in test_mailgw.py ought to use b'' explicitly rather than having such an s2b conversion, and there ought to be test messages using 8-bit encodings with non-ASCII characters to verify that that case works.) imaplib and poplib return bytes not strings with Python 3 (from inspection of the code, not tested), as is necessary for the above reasons. Thus, the handling of IMAP and POP messages must expect bytes and handle the data accordingly. For messages from mailboxes, I saw the same problem described in issue 2551000 for a multipart message with a single (non-ASCII) part. The Roundup code requires RoundupMessage not email.message.Message to be used recursively for all MIME parts of a message. Because the mailbox module uses email.message_from_* directly without passing the _class argument to them, fixing this requires temporarily patching the email module to ensure _class=RoundupMessage gets passed to those methods. |
| files |
| changeset | 19bd4b413ed6 |
|---|---|
| branch | |
| bookmark | |
| tag | |
| user | Christof Meerwald <cmeerw@cmeerw.org> |
| description | be more lenient when comparing string results |
| files |
| changeset | 497ab896397d |
|---|---|
| branch | |
| bookmark | |
| tag | |
| user | Christof Meerwald <cmeerw@cmeerw.org> |
| description | compare folded headers in mailgw tests |
| files |
| changeset | b7fa56ced601 |
|---|---|
| branch | |
| bookmark | |
| tag | |
| user | Christof Meerwald <cmeerw@cmeerw.org> |
| description | use gpg module instead of pyme module for PGP encryption |
| files |
| changeset | 725266c03eab |
|---|---|
| branch | |
| bookmark | |
| tag | |
| user | Christof Meerwald <cmeerw@cmeerw.org> |
| description | updated mailgw to no longer use mimetools based on jerrykan's patch |
| files |
| changeset | b0048969990d |
|---|---|
| branch | |
| bookmark | |
| tag | |
| user | Christof Meerwald <cmeerw@cmeerw.org> |
| description | encoding fixes in test cases |
| files |
| changeset | 55f09ca366c4 |
|---|---|
| branch | |
| bookmark | |
| tag | |
| user | Joseph Myers <jsm@polyomino.org.uk> |
| description | Python 3 preparation: StringIO. This generally arranges for StringIO and cStringIO references to use io.StringIO for Python 3 but io.BytesIO for Python 2, consistent with the string representations generally used in Roundup. A special FasterStringIO in the TAL code, which referenced internals of the old Python 2 StringIO module, is cut down so it doesn't actually do anything beyond the StringIO class it inherits from (it would also be reasonable to remove FasterStringIO completely). One place in roundup_server.py clearly needing binary I/O is made to use io.BytesIO unconditionally. |
| files |
| changeset | d26921b851c3 |
|---|---|
| branch | |
| bookmark | |
| tag | |
| user | Joseph Myers <jsm@polyomino.org.uk> |
| description | Python 3 preparation: make relative imports explicit. Tool-generated patch. |
| files |
| changeset | 0942fe89e82e |
|---|---|
| branch | |
| bookmark | |
| tag | |
| user | Joseph Myers <jsm@polyomino.org.uk> |
| description | Python 3 preparation: change "x.has_key(y)" to "y in x". (Also likewise "not in" where appropriate.) Tool-generated patch. |
| files |
| changeset | 35ea9b1efc14 |
|---|---|
| branch | |
| bookmark | |
| tag | |
| user | Joseph Myers <jsm@polyomino.org.uk> |
| description | Python 3 preparation: "raise" syntax. Changing "raise Exception, value" to "raise Exception(value)". Tool-assisted patch. Particular cases to check carefully are the one place in frontends/ZRoundup/ZRoundup.py where a string exception needed to be fixed, and the one in roundup/cgi/client.py involving raising an exception with a traceback (requires three-argument form of raise in Python 2, which as I understand it requires exec() to avoid a Python 3 syntax error). |
| files |
| changeset | a4fe76fba54a |
|---|---|
| branch | |
| bookmark | |
| tag | |
| user | John Rouillard <rouilj@ieee.org> |
| description | issue2550957: Duplicate emails (with patch). Bcc and cc users passed to nosymessage are not properly recorded. This results in duplicate emails. Patch by Trent Gamblin (trentgg). Applied by and test added by John Rouillard. |
| files |
| changeset | e20f472fde7d |
|---|---|
| branch | |
| bookmark | |
| tag | |
| user | John Rouillard <rouilj@ieee.org> |
| description | issue2550799: provide basic support for handling html only emails Initial implementation and testing with the dehtml html converter done. The use of beautifulsoup 4 is not tested. My test system breaks when running dehtml.py using beautiful soup. I don't get the failures when running under the test harness, but the text output is significantly different (different line breaks, number of newlines etc.) The tests for dehtml need to be generated for beautiful soup and the expected output changed. Since I have a wonky install of beautiful soup, I don't trust my output as the standard to test against. Also since beautiful soup is optional, the test harness needs to skip the beautifulsoup tests if import bs4 fails. Again something outside of my expertise. I deleted the work I had done to implement that. I could not get it working and wanted to get this feature in in some form. |
| files |
| changeset | 198b6e810c67 |
|---|---|
| branch | |
| bookmark | |
| tag | |
| user | Eric S. Raymond <esr@thyrsus.com> |
| description | Use Python-3-compatible 'as' syntax for except statements Many raise statements near these are also fixed. So are two ivorrect file encoding marks ('utf8'->'utf-8'). |
| files |
| changeset | 65b42fd96c00 |
|---|---|
| branch | |
| bookmark | |
| tag | |
| user | John Rouillard <rouilj@ieee.org> |
| description | partly test subject line of 'help' to trigger help message. Can't verify the help message is sent though |
| files |
| changeset | 6bbb6dd97458 |
|---|---|
| branch | |
| bookmark | |
| tag | |
| user | Ralf Schlatterbeck <rsc@runtux.com> |
| description | Fix subject parsing in mail gateway. The previous parsing routine would not ensure that arguments are at the end of the subject and when subject_suffix_parsing was configured to be 'loose' it would truncate the subject when encountering a double prefix, e.g. Subject: [frobulated] [frobulatedagain] this part would be lost |
| files |
| changeset | 0c9eed9c4029 |
|---|---|
| branch | |
| bookmark | |
| tag | |
| user | Ralf Schlatterbeck <rsc@runtux.com> |
| description | Add test for msg_header_property of assignedto |
| files |
| changeset | 410e565b5c1f |
|---|---|
| branch | |
| bookmark | |
| tag | |
| user | John Rouillard <rouilj@ieee.org> |
| description | adding test for issue934009. Code coverage shows no test for MAILGW_LEAVE_BODY_UNCHANGED=yes. Adding that for new issue creation and followup. |
| files |
| changeset | a927f9549af0 |
|---|---|
| branch | |
| bookmark | |
| tag | |
| user | John Rouillard <rouilj@ieee.org> |
| description | Fix issue2550751: Email Header Issue. Noel Garces requested the ability to suppress email headers like "x-roundup-issue-files". With Ralf's addition of the Link/Multilink property attribute 'msg_header_property' we can do this easily. Setting the 'msg_header_property' to the empty string '' (not to None) will suppress the header for that property. 3 line code change, single test, doc updated and change note. |
| files |
| changeset | 226052e0cc4c |
|---|---|
| branch | |
| bookmark | |
| tag | |
| user | John Rouillard <rouilj@ieee.org> |
| description | Fixed incorrect header comparisons in compareMessages. It iterated over every header in the new message and didn't detect when the new message was missing a header that was in the reference message. I have fixed that by retrieving all header names from the new and reference (old) messages, lower casing the list and comparing them (with a fixup for the x-roundup-version header). If the list of headers isn't identical, I throw an error. Also the Content-Type mime values are now being compared as well to make sure the new message being generates matches the reference mime content type. Of course this broke some tests. A number of them were using compareMessages when they should have been using assertEqual. That was an easy fix. Also some messages when retrieved from the content property are missing trailing newlines. I think this is part of the signature removal algorithm. This may be a bug or intended. In any case I am fixing the tests to remove trailing newlines. However I have a handful of tests that are not that obvious. Two of are test_mailgw.py:testMultipartCharsetLatin1AttachFile test_mailgw.py:testMultipartCharsetUTF8AttachFile I removed a: Content-Transfer-Encoding: quoted-printable message header from the reference message in both cases. The message content-type was multipart/mixed and it had no content that was outside of a mime part. Sending a message like this using mailx and nmh resulted in an email being delivered that was missing a Content-Transfer-Encoding, so I think I am ok here. The last broken test also started as a missing Content-Transfer-Encoding header. But there was a twist: test-mailgw.py:testMultipartRFC822 had a reference copy with a mime type of text/plain which requires a Content-Transfer-Encoding. However I never looked at the mime type of the mail being generated. The generated mail was of type multipart/mixed. So I changed the reference copy to remove the Content-Transfer-Encoding and changed the reference mime type to multipart/mixed. Now all the mailgw tests are passing. With luck I haven't encoded an invalid test. Also did one minor spelling correction. |
| files |
| changeset | 14abd0a67207 |
|---|---|
| branch | |
| bookmark | |
| tag | |
| user | John Rouillard <rouilj@ieee.org> |
| description | Fix issue934009: Have New Issues Submitted By Email *Not* Change Body! The mailgw config options: keep_quoted_text and leave_body_unchanged can now have a new values: new. If set to new, keep_quoted_text acts like yes if the message is starting a new issue. Otherise it strips quoted text. This allows somebody to start a new issue by forwarding a threaded email (with multiple quoted parts) into roundup and keeping all the quoted parts. If leave_body_unchanged is set to new, even the signature on the email that starts a new issue will be preserved. |
| files |
| changeset | 43a1f7fe39f5 |
|---|---|
| branch | |
| bookmark | |
| tag | |
| user | John Kristensen <john@jerrykan.com> |
| description | Improved work-around for pytest markers bug The previous fix was only a partial solution. Any test class sharing a parent with, and appearing after, a skipped test class was being skipped (not just other test classes using the skip/skipif marker). Now only tests that should be skipped will be skipped, the rest should run as normal. |
| files |
| changeset | 37d1e24fb941 |
|---|---|
| branch | |
| bookmark | |
| tag | |
| user | John Kristensen <john@jerrykan.com> |
| description | Fix work-around for pytest markers bug The initial work-around implemented was totally botched using 'pytest.skip' instead of 'pytest.mark.skip' which resulted in all tests in a file being completely ignored if any skip conditions that evaluated to true were declared or imported in the file. This work-around will not correctly display why all the tests have been skipped when using the '-rs' parameter. Only the first skip marker to taint a parent test class will be displayed (ie. if both xapian and mysql tests are being skipped, pytest will only output that tests are being skipped because xapian is not installed even though the mysql tests are also being skipped because mysql backend is not available). There also seems to be a bug in the current version of pytest being used in 'run_tests.py' (v2.8.4) that results in the skip not actually working when using 'pytest.mark.skip'. This does work correctly with the most recent release (v2.9.2), so the 'run_tests.py' script will need to be updated. |
| files |
| changeset | 99e289359798 |
|---|---|
| branch | |
| bookmark | |
| tag | |
| user | John Rouillard <rouilj@ieee.org> |
| description | issue2550803: Replying to NOSY mail goes to the tracker through reply-to, not original message author. Created new [tracker] replyto_address config.ini option to allow: 1) setting reply-to header to the tracker 2) setting reply-to header to the address of the author of the change 3) setting it to a fixed address (like noreply@some.place) Proposal by Peter Funk (pefu) in discussion with Tom Ekberg (tekberg). I chose to re-retrieve the email address for the author from the database rather than adding a new variable. Also managed to make a test case for each of the three settings. |
| files |
| changeset | 786f0581bc90 |
|---|---|
| branch | |
| bookmark | |
| tag | |
| user | John Rouillard <rouilj@ieee.org> |
| description | issue2109308 add subject argument to nosymessage. Initial patch Frank Niessink. Test and application with slight mods by rouilj |
| files |
| changeset | 2706b66675bf |
|---|---|
| branch | |
| bookmark | |
| tag | |
| user | John Rouillard <rouilj@ieee.org> |
| description | issue2550763 Strip whitespace from Multilink values after + or -. Diagnosis, patch developed by W. Trevor King. Test heavily modified by John Rouillard. The goal is to make: Subject: [issue23455] ... [ keyword =+ Foo,Foo Zot ; nosy =+ mary ] act like: Subject: [issue23455] ... [ keyword =+Foo,Foo Zot; nosy =+mary] Without the patch " Foo" is not recognized. |
| files |
| changeset | a46d5d0fd5f8 |
|---|---|
| branch | |
| bookmark | |
| tag | |
| user | Peter Funk <pf@artcom-gmbh.de> |
| description | Fix issue1615201: Added a new configuration option EMAIL_KEEP_REAL_FROM which makes the mail gateway ignore a Resent-From:-header and use the real From:-header of the original author for further processing of the message. Setting this option to 'yes' restores the original behaviour of Roundup before the change in version 0.7.0 where the processing of Resent-From: was added unconditionally. |
| files |
| changeset | c977f3530944 |
|---|---|
| branch | |
| bookmark | |
| tag | |
| user | John Kristensen <john@jerrykan.com> |
| description | Work-around for pytest.mark.skipif() bug There is a pytest bug that can cause all test classes marked with the skipif() decorator that inherit a common class to be skipped if one of the skipif() conditions is True. See: https://github.com/pytest-dev/pytest/issues/568 |
| files |
| changeset | 364c54991861 |
|---|---|
| branch | |
| bookmark | |
| tag | |
| user | John Kristensen <john@jerrykan.com> |
| description | Remove unneeded TestSuite code from tests The TestSuite code is no longer needed now that we are using py.test which can automatically discover tests |
| files |
| changeset | 380d8d8b30a3 |
|---|---|
| branch | |
| bookmark | |
| tag | |
| user | John Kristensen <john@jerrykan.com> |
| description | Replace existing run_tests.py script with a pytest script The existing run_test.py script is quite old, a bit restrictive, and doesn't always behave as documented. The pytest testing tool is mature, well documented, and maintained. The run_tests.py script is generating by installing py.test and running: py.tests --genscript=run_tests.py Note: to generate a script that is compatible with python2.6 the command needs to be run using python2.6 |
| files |