Modified UserFactory to use a new locale for each new user, instead of the
same locale for a whole test run. This (almost) ensures the exercise of
code to deal with non-ascii names, something which would not happen if a
locale with ascii names was chosen at the start of a run.
Modified name.initials() to not use non-word characters as initials.
Modified unidecode_name() to do more normalization, to conform to the
conventions used in internet-drafts.
Added saving of the factory-boy random state in order to be able to re-run
a test suite with the same pseudo-random sequence as in a previous failed
run.
Fixed an issue with email formatting in test_api_submit_ok().
Modified the draft author extraction code to deal better with names with
embedded apostrophes.
- Legacy-Id: 14141
Added a new yang checker, 'yanglint', to the existing Yang checker class, in
addition to the existing 'pyang' checker.
Added modal overlay displays showing the yang check results every place the
yin/yang symbol is shown (red or green) to indicate the presencee and result
of yang checks. Added a Yang Validation: line in the document
meta-information section on the document's page in the datatracker.
Added the result of the xym extaction to the yang check results, to make
extration failures visible.
Added the version of the used xym, pyang, and yanglint commands to the check
results.
Added an action to move successfully extracted and validated modules to the
module library directories immediately on submission.
Added the xym and pyang repositories as svn:external components, rather than
listing them in requirements.txt, as there has been delays of many months
between essential features in the repositories, and an actual release. We may
get occasional buildbot failures if broken code is pulled in from the
repository, but better that than the functionality failure of severely
outdated componets.
Added a new management command to re-run yang validation for active drafts for
which yang modules were found at submission time, in order to pick up imported
models which may have arrived in the model libraries after the draft's
submission. Run daily from bin/daily.
Added a table to hold version information for external commands. The yang
checker output should include the version information of the used checkers,
but seems unnecessary to run each command with its --version switch every
time we check a module...
Added a new management command to collect version information for external
commands on demand. To be run daily from bin/daily.
Added tests to verify that xym, pyang and yanglint information is available
on the submission confirmation page, and updated the yang module contained in
the test document to validate under both pyang and yanglint.
Updated admin.py and resource.py files as needed.
- Legacy-Id: 13634
addition to the existing 'pyang' checker.
Added modal overlay displays showing the yang check results every place the
yin/yang symbol is shown (red or green) to indicate the presencee and result
of yang checks. Added a Yang Validation: line in the document
meta-information section on the document's page in the datatracker.
Added the result of the xym extaction to the yang check results, to make
extration failures visible.
Added the version of the used xym, pyang, and yanglint commands to the check
results.
Added an action to move successfully extracted and validated modules to the
module library directories immediately on submission.
Added the xym and pyang repositories as svn:external components, rather than
listing them in requirements.txt, as there has been delays of many months
between essential features in the repositories, and an actual release. We may
get occasional buildbot failures if broken code is pulled in from the
repository, but better that than the functionality failure of severely
outdated componets.
Added a new management command to re-run yang validation for active drafts for
which yang modules were found at submission time, in order to pick up imported
models which may have arrived in the model libraries after the draft's
submission. Run daily from bin/daily.
Added a table to hold version information for external commands. The yang
checker output should include the version information of the used checkers,
but seems unnecessary to run each command with its --version switch every
time we check a module...
Added a new management command to collect version information for external
commands on demand. To be run daily from bin/daily.
Added tests to verify that xym, pyang and yanglint information is available
on the submission confirmation page, and updated the yang module contained in
the test document to validate under both pyang and yanglint.
Updated admin.py and resource.py files as needed.
- Legacy-Id: 13630
using the htmlization code previously developed for tools.ietf.org. As the
generation of the htmlized page is a bit too costly to do on the fly for
often-referenced drafts and RFCs, the part of each page which contains the
htmlized document is cached on file with a cache time of 2 weeks.
Changed all links which pointed to the htmlized version on tools to instead
point at the datatracker htmlized document.
Tweaked some URLs which didn't permit retrieval of intermediate-rev-charters.
Narrowed the pattern for document names to disallow dots in names, and
instead explicitly enumerated the few historical draftw with dots in the
name.
Added a file-system cache for the htmlized documents, and specified a
max_entries value for caches, overriding the default 300 entries.
Tweaked the code for new author email entries to provide a time if missing
in an updated entry.
Changed links in various email templates which pointed at tools.ietf.org
pages to instead point at datatracker pages, where appropriate.
Changed the search result rows to provide links to both the current meta-
information document pages (with a (i) info symbol) and to the new htmlized
document pages.
- Legacy-Id: 13040
case we can't parse it and it's not empty, add page with list of
countries (to be able to refer people to it), add ISO codes as country
aliases - the country alias code is now more intelligent with respect
to case so it's easier to keep these aliases explicitly
- Legacy-Id: 12862
to the draft parser (incorporating patch from trunk), store the
extracted country instead of trying to turn it into an ISO country
code, add country and continent name models and add initial data for
those, add helper function for cleaning the countries, add author
country and continent charts, move the affiliation models to
stats/models.py, fix a bunch of bugs.
- Legacy-Id: 12846
in order to autogenerate dotted path url pattern names. Updated a number
of url reverses to use dotted path, and removed explicit url pattern names
as needed.
Changed some imports to prevent import of ietf.urls before django
initialization was complete.
Changed 3 cases of form classes being curried to functions; django 1.10
didn't accept that.
Started converting old-style middleware classes to new-style middleware
functions (incomplete).
Tweaked a nomcom decorator to preserve function names and attributes, like
a good decorator should.
Replaced the removed django templatetag 'removetags' with our own version
which uses bleach, and does sanitizing in addition to removing explicitly
mentionied html tags.
Rewrote the filename argument handling in a management command which had
broken with the upgrade.
- Legacy-Id: 12818
DocumentAuthor, rename author field to email and make it optional (for
modeling old email-less submissions), remove the authors many to many
referencing field from Document as it is not really pointing the right
place.
Update the Secretariat tools to show affiliation and country.
Add migration for getting rid of the fake email addresses that the
migration script created some years ago (just set the author email
field to null).
- Legacy-Id: 12739
Improves who to copy when sending submission confirmation mail when authors change.
- Legacy-Id: 12044
Note: SVN reference [12014] has been migrated to Git commit 4f01de1b94
Added in support for displaying results from selected submission checks as symbols on draft pages and in draft lists. For now, that means that drafts with yang modules will show either a green or orange yang symbol, depending on the result of the submission yang validation check.
- Legacy-Id: 10996
page. Each WG/RG now gets a list with an initial set of rules to
populate the list.
Refine the community list management interface a bit to support the
group lists better - group lists aren't connected to the usual track
icons so need to be able to add/remove individual drafts.
Change the "name contains" rule to support regular expressions to
enable each group to have a default replacement for the previously
implemented "related documents" search. Maintain a materialized view
of the regexp-matched drafts with a call in the submit code to avoid
having to scan all drafts/~1000 group rules all the time.
- Legacy-Id: 10963
Stop making active unknown-email- objects. Mark existing such objects as inactive. Tweak exception handling in submit/utils to make it obvious that the utilities will not change the person an existing Email record is pointing to.
- Legacy-Id: 10787
Note: SVN reference [10780] has been migrated to Git commit c8c45e2213
Simplified the edit nominee form.
Replaced the merge nominee form with a request to the secretariat to merge Person records. Fixes#1847.
Added merging nominees to the secretariat's person merging script.
Restructured the person merging script to make it testable.
Updated some tests to match changes to the mailtriggers that hadn't made it to the fixtures.
- Legacy-Id: 10625
Provide information about who has suggested document replaced-by information in the notification email.
This commit fixes bug 1817,
- Legacy-Id: 10440
Note: SVN reference [10425] has been migrated to Git commit ba39077180
The new API requires at least one event and will automatically save a
snapshot of the document and related state. Document.save() will now
throw an exception if called directly, as the new API is intended to
ensure that documents are saved with both an appropriate snapsnot and
relevant history log, both of which are easily defeated by just
calling .save() directly.
To simplify things, the snapshot is generated after the changes to a
document have been made (in anticipation of coming changes), instead
of before as was usual.
While revising the existing code to work with this API, a couple of
missing events was discovered:
- In draft expiry, a "Document has expired" event was only generated
in case an IESG process had started on the document - now it's
always generated, as the document changes its state in any case
- Synchronization updates like title and abstract amendmends from the
RFC Editor were silently (except for RFC publication) applied and
not accompanied by a descriptive event - they now are
- do_replace in the Secretariat tools now adds an event
- Proceedings post_process in the Secretariat tools now adds an event
- do_withdraw in the Secretariat tools now adds an event
A migration is needed for snapshotting all documents, takes a while to
run. It turns out that a single document had a bad foreign key so the
migration fixes that too.
- Legacy-Id: 10101