Addresses issue #628, using reverse() and the newly created helper function
reverse_lazy() (found in ietf/utils/lazy.py) to DRY out the code a bit by
decoupling the urls from being hardcoded.
With this commit idrfc, and ipr modules have been modified to take advantage
of the reverse() and reverse_lazy() functions.
- Legacy-Id: 2956
Note: SVN reference [2948] has been migrated to Git commit 9399a2e0e8bbfe5c5a16781fd784776cfa31fbac
information: draft.get_author_info(). This method returns a list of
(full_name, first_name, middle_part, surname, suffix, email), with
middle_part, suffix and email set to None if none was found.
- Legacy-Id: 2921
to Yaco on 2011-03-19, and committed on branch/yaco/idsubmit as [2896].
* Extraction of Title which don't have the draft name on a separate
page fails. See for instance this example:
http://www.ietf.org/staging/draft-ma-cdni-publisher-use-cases-00.txt
The regex should maybe be updated to permit but not require a newline
before the draft filename:
'(?:\n\s*\n\s*)((.+\n){1,2}(.+\n?))(\s+<?draft-\S+\s*\n)\s*\n'
* If there are blank lines before the start of the author list on the
first page, the author extraction will fail. This sometimes happens
when there's junk at the start of a draft, see for instance
http://www.ietf.org/id/draft-ietf-mpls-tp-process-00.txt .
* Sometimes the Authors' Addresses section lists authors with the same
workplace address on the same line: "Sam Spade and Joe Smith". This
needs a fix in the author extraction code.
* Sometimes the order of first name, surname is different on the first
page and in the author list, and sometimes the surname is uppercase
in one place, but not in the other. This also needs a fix in the
author extraction code.
* The header stripping code had a bug, where multiple blank lines could
be replaced by a single blank line in the stripped text, which could
mess up title extraction.
* Title space normalization should be done also for titles from the
'unusual title format' code branch of the title extraction code.
* Company names on the first page are sometimes rendered with different
case than in the Authors' Addresses section.
* Some drafts list the draft filename _before_ the title, rather than
after the title. Permit this too. Covered in the patch.
* Spanish names can be shown as either
<given_name> <fathers_first_surname> <mothers_first_surname>
or less formally as
<given_name> <fathers_first_surname>
If the first form is used in the Authors' Addresses section, but the
second form (with the given name possibly abbreviated to its first
letter) the author extraction will fail.
* Drafts containing tabs will be caught by idnits during I-D submission,
but in case the drafts.py module is used independently from idnits,
convert tabs to spaces in order for the author extraction and other
methods to work as expected. Example: recently submitted draft
draft-bergeron-payload-rtpfec-rs-00.txt.
* Found a draft with a previously unhandled header/footer format:
draft-fang-mpls-tp-oam-toolset-01.txt. Tweak needed for header/footer
stripping.
- Legacy-Id: 2919
Note: SVN reference [2896] has been migrated to Git commit 5a34b70e52
Fill in the X-IETF-IDTracker header with the
I-D Tracker version number. This fixes#513
- Legacy-Id: 2647
Note: SVN reference [2644] has been migrated to Git commit 77a401f7eb3f06427d3cfae81ec71e4277d828cc
Add regression tests (and accompanying test mode) for utils.mail.
Fixes#538
- Legacy-Id: 2645
Note: SVN reference [2639] has been migrated to Git commit 14de6870df426f18afaf90af2c74a5009cca3c1f
Fixed a bug that was preventing CC/BCC from being honored. Fixes issue #528.
- Legacy-Id: 2623
Note: SVN reference [2604] has been migrated to Git commit 4d27ae4d7a535fb7c9cb44dd0d486a0f5850b1b1
closing <li> tags. BeautifulSoup can handle it, but the recursive text
rendering code in soup2text recurses too deeply with a sufficiently long
list...
* ietf/tests.py, in setUp(): grab the right tuple element when extracting
the URLs from the url test tuples
* ietf/tests.py, in read_testurls(): close opened file
* ietf/tests.py, in doUrlsTest(): narrower try/except clause, and a new one
* soup2text.py, in para(): undo previous change
- Legacy-Id: 304
of <p /> to indicate paragraph breaks.
This changes the failed diff for /iesg/telechat/detail/354/ to show only three
differences, where two are whitespace differences and one shows a difference
between '@ietf.org. The' and '@ietf.org . The' and is an artifact of the text
extraction. Will look at fixing that next.
- Legacy-Id: 300
- SQLLogMiddleware. This logs any INSERT or UPDATE performed by
a request.
- SMTPExceptionMiddleware. This renders a "please try again"
(template email_failed.html) message when an attempt to send
email failed. This uses a bit of a hack, in that the middleware
looks explicitly for smtplib.SMTPException, and smtplib can
raise other exceptions (particularly socket errors). utils/mail/send_smtp
catches all exceptions and reraises non-smtplib exceptions as
fake smtplib exceptions, and the middleware undoes the wrapping.
- Legacy-Id: 224
bits of configuration (e.g., mail server, any authentication required,
etc.) It has different behavior based on the setting of the
SERVER_MODE setting:
- 'development' or 'test': the message will be sent as an attachment
to ietf.tracker.archive+SERVER_MODE@gmail.com; the actual destination
supplied won't be used.
- 'production': the message will be sent to the addressees and a
copy sent to ietf.tracker.archive+production@gmail.com .
There are several functions to call, depending on what you want
to pass:
- send_mail_text() takes a request, "To:" list, From header (or None
to default), Subject text, Body text, an optional Cc: list, and
an optional dict with extra headers.
- send_mail() takes a template and a context instead of the body text,
and renders the template with the given context.
- send_mail_subj() takes a template for the subject as well as for the
body. It uses the same context to render both templates.
- Legacy-Id: 159
callback to provide a RegexpField class.
* Added checkbox for submitter contact information being the same as
IETF contact information; with javascript support and validation
support.
* Cleaned out the old split_form() and mk_formatting_form() functions from
ietf.utils.
- Legacy-Id: 138
utilities into separate files.
* Added a log() function in ietf/utils. It uses syslog, but adds some
information about where it was called from.
- Legacy-Id: 130