Commit graph

157 commits

Author SHA1 Message Date
Henrik Levkowetz e03784132d Merged changes from current trunk to Py3 branch.
- Legacy-Id: 16468
2019-07-16 15:36:16 +00:00
Henrik Levkowetz 8c6eb3a30a Python2/3 compatibility: Changed the use of open() and StringIO to io.open() etc.
- Legacy-Id: 16458
2019-07-15 19:14:04 +00:00
Henrik Levkowetz f481f5c3e6 Replaced use of six with the equivalent pure python3 constructs.
- Legacy-Id: 16428
2019-07-08 10:43:47 +00:00
Henrik Levkowetz 1225f8af6b Refactored submission code to be clearer and only do mimetype extraction in one place, made the point where files are saved less obscure, fixed bytes/str issues for file read and write, fixed regex strings, fixed variable name visibility due to scope changes in py3.
- Legacy-Id: 16375
2019-07-04 15:49:42 +00:00
Henrik Levkowetz b54e033474 Fixed an error in the handling of long draft names extracted from xml source.
- Legacy-Id: 16363
2019-07-03 19:56:04 +00:00
Henrik Levkowetz d7f5c84182 Initial 2to3 patch with added copyright statement updates.
- Legacy-Id: 16309
2019-06-27 14:40:54 +00:00
Henrik Levkowetz 13705976e2 Merged in [16287] from rjsparks@nostrum.com:
Send mail to a list when a new IETF WG -00 is submitted. Fixes #2730.
 - Legacy-Id: 16289
Note: SVN reference [16287] has been migrated to Git commit 9ace7db719
2019-06-19 14:32:25 +00:00
Robert Sparks 9ace7db719 Send mail to a list when a new IETF WG -00 is submitted. Fixes #2730. Commit ready for merge.
- Legacy-Id: 16287
2019-06-18 21:24:49 +00:00
Henrik Levkowetz a5cf8b6a3b Added a better error message for too long draft names during submission.
- Legacy-Id: 16281
2019-06-17 18:25:05 +00:00
Henrik Levkowetz 426870b766 Merged in the Document and DocAlias primary key change and m2m work in ^/personal/henrik/6.96.1-docalias.
- Legacy-Id: 16261
2019-06-15 12:00:48 +00:00
Henrik Levkowetz a2cafded25 Changed DocAlias to be many-to-many, in order to be able to handle STD aliases referring to multiple RFCs.
- Legacy-Id: 16249
2019-06-14 20:38:14 +00:00
Henrik Levkowetz d300a82845 Added validation of draft names extracted from XML submission files.
- Legacy-Id: 16239
2019-06-12 22:06:53 +00:00
Henrik Levkowetz 94de3e0f7e Refined the handling of draft xml version 3 versus version 2.
- Legacy-Id: 16229
2019-06-03 14:51:34 +00:00
Henrik Levkowetz b57ad67041 Updated code and templates to use the new docman and groupman group features.
- Legacy-Id: 15922
2019-01-30 15:59:00 +00:00
Henrik Levkowetz 57a4c9f41f Added 9 new group features, and changed list-like char fields to json fields, to get better support for using the values as lists. Modified code to use the group features instead of explicit lists of group types in many places in the code.
- Legacy-Id: 15908
2019-01-22 18:11:46 +00:00
Henrik Levkowetz 879f44a2ab Merged in [15829] from rjsparks@nostrum.com:
Make state/substate changes on new submissions sensitive to stream. Fixes #2642.
 - Legacy-Id: 15872
Note: SVN reference [15829] has been migrated to Git commit 3d6c1f991b
2019-01-07 15:51:07 +00:00
Robert Sparks 3d6c1f991b Make state/substate changes on new submissions sensitive to stream. Fixes #2642. Commit ready for merge.
- Legacy-Id: 15829
2018-12-17 22:38:22 +00:00
Robert Sparks 6118975620 Added an explicit ID-Exists state for the IESG state machine. Reworked code so that the IESG state machine always has a state. Added the ability to release a document from a working group, research group, or the independent stream. Releasing a document removes all stream state, and sets the document to have no stream.
- Legacy-Id: 15809
2018-12-11 22:38:05 +00:00
Henrik Levkowetz b2bfc7858a Generalized the log.assertion() function a bit to be able to provide more information on assertion failure.
- Legacy-Id: 15426
2018-08-10 15:31:12 +00:00
Henrik Levkowetz b1440e818b Added assingment of the person.name_from_draft field on draft submission. To be used to replace the content of person.name if someone requires removal of consent-based name info.
- Legacy-Id: 15178
2018-05-26 08:40:58 +00:00
Henrik Levkowetz 6c3ec5b18e Added Email origin to Email record creation throughout the codebase.
- Legacy-Id: 15149
2018-05-17 16:56:26 +00:00
Henrik Levkowetz dda9c0136c Overwrite earlier email origin when we've picked up the address from a submission.
- Legacy-Id: 15141
2018-05-08 16:23:27 +00:00
Henrik Levkowetz 5f37a71889 Added origin information to all places where we create email address entries.
- Legacy-Id: 15127
2018-05-05 12:40:30 +00:00
Henrik Levkowetz 5573dc00d0 Find person by email during draft submission also if email case doesn't match.
- Legacy-Id: 14723
2018-03-02 21:27:13 +00:00
Henrik Levkowetz 26bf387356 Replaced direct assignment to m2m fields with .clear() and .set()
- Legacy-Id: 14666
2018-02-21 23:58:25 +00:00
Henrik Levkowetz 4695ec5383 Restricted automatic IANA state change into 'Version Changed - Review Needed' on new draft revisions to events before document approval, based on conversation with Michelle.
- Legacy-Id: 14486
2018-01-04 12:31:05 +00:00
Henrik Levkowetz 130261e781 Removed some debug statements.
- Legacy-Id: 14242
2017-10-30 12:28:51 +00:00
Henrik Levkowetz 7edb4da711 Added draft URLs pointing to Yang resources (impact analysis and model metadata) for submissions containing Yang modules.
- Legacy-Id: 14237
2017-10-30 11:30:01 +00:00
Henrik Levkowetz ac69d9889d Added a guard against feeding int() a non-numeric string during submission confirmation and a log assertion to report same.
- Legacy-Id: 14202
2017-10-10 15:02:00 +00:00
Henrik Levkowetz 2c1438c240 Moved unidecode_name from utils.text to person.name.
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
2017-09-20 15:36:30 +00:00
Henrik Levkowetz 33b275b04f Added ietf.utils.text.unidecode_name() and replaced various uses of unidecode() with it, in order to normalize the generation of ascii versions of names, to avoid different practices in space stripping and space normalization in different parts of the code.
- Legacy-Id: 14128
2017-09-17 15:12:18 +00:00
Henrik Levkowetz 3af2554b2f Added an API for draft submission, at /api/submit. Added an urls.py file under api/ to hold api urls, and moved those from ietf/urls.py. Refactored out many parts of the regular submission forms and functions in submit/forms.py and submit/views.py in order to re-use the appropriate parts for the submission API. Moved support functions to submit/utils.py. Added a new validation errors for missing docName in xml-based submissions. Updated the submission test document templates to use insert additional values. Added failure and success test cases for automated API submissions, and refactored some test utility functions.
- Legacy-Id: 14125
2017-09-16 09:35:42 +00:00
Henrik Levkowetz b42f1cbeb5 Replaced the use of unaccent.asciify(), which has similar functionality to unidecode.unidecode(). Changed the draft parser to work exclusively with unicode text, which both makes the removal of unaccent easier, and takes us closer to Py35 compatibility. Adjusted callers of the draft parser to send in unicode.
- Legacy-Id: 13673
2017-06-18 18:23:18 +00:00
Ole Laursen 5b677dc6ba Merge author stats branch into new branch from trunk
- Legacy-Id: 13159
2017-03-28 14:36:40 +00:00
Lars Eggert 8a70e9773d Fix various "RemovedInDjango20Warning" warnings. Commit ready for merge.
- Legacy-Id: 13112
2017-03-25 19:16:45 +00:00
Henrik Levkowetz 814e1315b5 Added a new document tab for some documents, showing htmlized drafts and RFCs
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
2017-03-20 14:08:52 +00:00
Henrik Levkowetz bb5096da8a Added more email validation for draft submission author emails, and blocked some baths that could lead to bad email addresses ('none') being set as document author email addresses.
- Legacy-Id: 13010
2017-03-14 14:07:21 +00:00
Henrik Levkowetz 4daf66d11c Added DocEvent rev= parameter througout the code.
- Legacy-Id: 12978
2017-03-06 15:08:21 +00:00
Henrik Levkowetz 5bb5ca727b Created a special function log.unreachable() to mark code unreachable, and changed a function name from log.affirm() to log.assertion().
- Legacy-Id: 12933
2017-02-28 20:16:52 +00:00
Henrik Levkowetz ffa19c9847 Added a log.affirm() call at the point where we may discover new flawed document author records. Fixed a place where the generation of Person.ascii from Person.name wasn't done well.
- Legacy-Id: 12903
2017-02-23 11:57:29 +00:00
Henrik Levkowetz a5290e143a Made some changes to the missing-email submission handling. This may have fixed the creation of author records containing 'none' email entries, but as I've not been able to reproduce the issue, this is uncertain. Next is to build an email notification assert statement to help capture information if this happens.
- Legacy-Id: 12898
2017-02-22 15:36:28 +00:00
Ole Laursen 90051a1575 Add support for displaying and editing author affiliation and country
when submitting a draft, replace the Submission.authors line-based
text field with a JSON field
 - Legacy-Id: 12745
2017-01-27 16:10:31 +00:00
Ole Laursen 9308948195 Add person, affiliation and country (through django-countries) to
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
2017-01-26 17:10:08 +00:00
Ole Laursen 76bcab6efc Show formal languages used on new submissions and make the field
editable, also add it to the test with a simple JSON example
 - Legacy-Id: 12662
2017-01-17 13:52:16 +00:00
Henrik Levkowetz 7f1c1e43f2 Replaced the use of plain DocEvent for submission doc events with a SubmissionDocEvent that carries rev and a FK to submission.
- Legacy-Id: 12275
2016-11-07 18:21:34 +00:00
Henrik Levkowetz 8a5593e714 When converting submission events to doc events, post them in chronological order. Don't add upload doc events until we're past the possibility of submission cancellation.
- Legacy-Id: 12097
2016-10-06 17:03:23 +00:00
Henrik Levkowetz 72cfe4cf68 Removed the creation of duplicate new revision doc events. Corrected the timestamp on approval docevents. Changed where the submission upload docevent is created, to avoid spurious events for cancelled uploads. Adjusted the person associated with some events from submitter to (System). Added tests for the sequence of events associated with a submission.
- Legacy-Id: 12072
2016-10-01 21:16:04 +00:00
Henrik Levkowetz da2c25182f Code changes to handle draft submission authors without email addresses better.
- Legacy-Id: 12063
2016-09-30 10:48:46 +00:00
Henrik Levkowetz 254c3db807 Style changes.
- Legacy-Id: 11944
2016-09-08 17:37:36 +00:00
Henrik Levkowetz 47d6bbbea3 Renamed the SubmissionEmail event class to SubmissionEmailEvent, and added an admin class for it.
- Legacy-Id: 11942
2016-09-08 15:04:53 +00:00