Commit graph

566 commits

Author SHA1 Message Date
Henrik Levkowetz 484dcece5f Changed all model __unicode__() methods to __str__()
- Legacy-Id: 16330
2019-06-28 21:07:08 +00:00
Henrik Levkowetz 3ec7e864be Converted leading tabs to spaces in ietf/**/*.py
- Legacy-Id: 16310
2019-06-27 14:51:02 +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
Henrik Levkowetz db12f2b948 Fixed some name versus pk issues lingering after the Document/DocAlias primary key refactoring. Fixes issue #2729.
- Legacy-Id: 16288
2019-06-19 12:57:52 +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 7270d5f67a Added the option to order API resource lists by primary key, for stable ordering when paging through a list.
- Legacy-Id: 16284
2019-06-18 12:40:19 +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 5e796292ff Added class inheritance from 'object'.
- Legacy-Id: 16238
2019-06-12 21:31:42 +00:00
Henrik Levkowetz 815602351f This is a series of 50 migrations that changes the Document and DocAlias
primary keys from character strings to integers, and makes corresponding code
changes.

This was prompted by database limitations discovered when trying to make
DocAlias use a m2m document field; with 255 long strings as primary keys for
Document and DocAlias this violated the MySQL database limitations.

Changing the primary keys to integers should also improve efficiency.  

Due to the data migrations which create the new integer primary keys and adds
corresponding integer foreign keys matching the previous string foreign keys
in all tables having foreign keys to Document and DocAlias, some of these
migrations take a long time.  The total set of migrations are expected to have
a runtime on the order of 2 hours.
 - Legacy-Id: 16237
2019-06-10 11:32:46 +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 175c75cfaf Removed a debug print statement
- Legacy-Id: 16111
2019-03-28 10:11:33 +00:00
Henrik Levkowetz 2f31f7fb88 Temorary workaround to upload xml validation. The tree.validate() of xml2rfc should be updated to check vocabulary version and validate against the appropriate schema, to fix this properly.
- Legacy-Id: 16101
2019-03-25 10:56:30 +00:00
Henrik Levkowetz 07fa09b6dc Removed a debug print statement
- Legacy-Id: 15963
2019-02-25 12:30:52 +00:00
Henrik Levkowetz e8a59ce1e5 Rewrote the submission deduce_group() to consider all groups with acronyms that are also GroupTypeNames. Added GroupTypeName for iesg,ise,adhoc groups, and appropriate GroupFeatures for each. Updated the names.json fixture.
- Legacy-Id: 15960
2019-02-21 15:27:58 +00:00
Henrik Levkowetz fc5dd02c27 Fixed a submission failure for xml files missing abstract sections.
- Legacy-Id: 15933
2019-02-07 15:26:26 +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 c87d3741f3 Added 2 utility functions to help create group features query filters, and applied them in 3 places in order to move group feature role list code back into DB queries.
- Legacy-Id: 15911
2019-01-23 18:40:39 +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 47aaf48cd5 Merged in [15833] from rjsparks@nostrum.com:
Incremental improvements to the submit_existing tests.
 - Legacy-Id: 15873
Note: SVN reference [15833] has been migrated to Git commit 21a673490b
2019-01-07 17:56:04 +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
Henrik Levkowetz 0cc7f73d58 Additional tweaks to submission yang testing and the test runner
- Legacy-Id: 15870
2019-01-07 13:38:44 +00:00
Henrik Levkowetz 2634e2143a Added a bit of additional checking to test_submit_invalid_yang.
- Legacy-Id: 15869
2019-01-07 11:43:28 +00:00
Robert Sparks 21a673490b Incremental improvements to the submit_existing tests. Commit ready for merge.
- Legacy-Id: 15833
2018-12-18 23:22:40 +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 8180716efa Added a couple of assertion to help understand test coverage percentage variations
- Legacy-Id: 15751
2018-11-11 12:19:29 +00:00
Henrik Levkowetz ef3cbf4684 Merged in [15595] from rjsparks@nostrum.com:
Converted stats, submit, sync. and utils/test to use factories. Excluded utils/test_data from coverage checks.
 - Legacy-Id: 15599
Note: SVN reference [15595] has been migrated to Git commit 39e76a836996ec9ed8ea449c92bdfae91c3dbaae
2018-10-19 12:54:58 +00:00
Henrik Levkowetz 232774a5cc Adjusted the test_submit_nonascii_name() to match the output from idnits 2.16.0, which emits warnings rather than errors for nonascii content.
- Legacy-Id: 15525
2018-10-07 14:18:00 +00:00
Henrik Levkowetz c14b02cfa4 Fixed a problem where an exception could be raised when reporting an exception during draft XML processing to the user.
- Legacy-Id: 15491
2018-09-27 13:36:25 +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 dab5b81ae2 Fixed display of xml2rfc exceptions when processing draft submission in xml form.
- Legacy-Id: 15371
2018-07-17 14:23:18 +00:00
Henrik Levkowetz e87442f33a Merged in [15282] from housley@vigilsec.com:
Set reply-to for I-D Announcements that include a CC to a mail list.  Fixes #2530.
 - Legacy-Id: 15289
Note: SVN reference [15282] has been migrated to Git commit 733c304e3d
2018-07-10 17:16:47 +00:00
Russ Housley 733c304e3d Set reply-to for I-D Announcements that include a CC to a mail list. Fixes #2530.
- Legacy-Id: 15282
2018-06-29 18:15:42 +00:00
Henrik Levkowetz 4db4dd16b0 Merged in ^/personal/henrik/6.79.1-gdpr@15180 containing GDPR-adaptations.
- Legacy-Id: 15181
2018-05-28 11:26:24 +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 f0c0753e28 Added email origin information to some function calls that needed it.
- Legacy-Id: 15130
2018-05-05 12:49:10 +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 d076a1728c Added a 'recent drafts' page, showing drafs submitted the last 7 days.
- Legacy-Id: 15099
2018-05-01 17:55:22 +00:00
Henrik Levkowetz fec59ad937 Fixed a PyQuery property access that should have been a method call.
- Legacy-Id: 15087
2018-04-26 11:51:39 +00:00
Henrik Levkowetz a9fbea113b Changed incorrect use of 404 status code in api to 400. Fixes issue #2498.
- Legacy-Id: 15044
2018-04-13 11:11:48 +00:00
Henrik Levkowetz 9bd18df83b Use .assertIn(...) in tests instead of .assertTrue(x in y) as the failure messages are much more informative
- Legacy-Id: 15026
2018-04-07 10:09:07 +00:00
Henrik Levkowetz 327ffb6559 Test data template tweak.
- Legacy-Id: 14873
2018-03-20 13:17:29 +00:00
Henrik Levkowetz 04495217bc Merged in [14863] from rjsparks@nostrum.com:
Improved test coverage for ietf.utils.draft.
 - Legacy-Id: 14872
Note: SVN reference [14863] has been migrated to Git commit 1d021770a8
2018-03-20 12:58:44 +00:00
Henrik Levkowetz b75ee89865 Added a test case for reference extraction.
- Legacy-Id: 14869
2018-03-20 11:04:12 +00:00
Robert Sparks 1d021770a8 Improved test coverage for ietf.utils.draft. Commit ready for merge.
- Legacy-Id: 14863
2018-03-18 18:52:43 +00:00
Henrik Levkowetz 6e5e50c78c Added an error message for missing email in extracted author information during automated draft submission.
- Legacy-Id: 14743
2018-03-07 16:42:57 +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 1ed8e967e7 Merged in ^/personal/henrik/6.72.1-django-1.11@14676: Upgrade to Django 1.11
- Legacy-Id: 14695
2018-02-25 19:55:16 +00:00
Henrik Levkowetz 00a97a47fe Changed an exception handling to not depend on exceptions having a .msg element
- Legacy-Id: 14687
2018-02-23 14:48:18 +00:00
Henrik Levkowetz 8a9dcfc856 Call the xml2rfc parser with normalize=True, in alignment with xml2rfc internal use.
- Legacy-Id: 14686
2018-02-23 13:46:28 +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 a4768bb514 Removed unused imports. Added some explicit orderings to avoid pagination issues.
- Legacy-Id: 14664
2018-02-21 23:54:31 +00:00
Henrik Levkowetz 06362ec046 Got rid of old migrations and created new initial migrations.
- Legacy-Id: 14662
2018-02-21 23:46:22 +00:00
Henrik Levkowetz 5638cf3da3 Changed all usage of ForeignKey and OneToOneFiled in model.py files to the compatibility versions from ietf.utils.models.
- Legacy-Id: 14661
2018-02-20 15:36:05 +00:00
Henrik Levkowetz fcc22da623 Removed a chunk of code that won't be executed in all test environments from the test coverage measurements
- Legacy-Id: 14550
2018-01-23 17:29:41 +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 8ff59cd41c Fixed some issues with a migration. The migration has been re-run on production.
- Legacy-Id: 14484
2017-12-31 15:37:18 +00:00
Henrik Levkowetz 29a0c8a47f Added a data migration to create yang catalog links for yang documents published before the yang catalog link feature was introduced in the datatracker.
- Legacy-Id: 14447
2017-12-19 15:08:33 +00:00
Henrik Levkowetz 47a0b9d3ce Changed handling of yang modeules from drafts with errors, to not place them in separate directories, due to possible follow-on effects. Added use of IANA-held modules when validating, and regular rsyncing from IANA.
- Legacy-Id: 14389
2017-12-04 14:37:15 +00:00
Henrik Levkowetz 98d234cd86 Refactored the handling of BallotDocEvent in tests, only creating them as needed, in preparation for stricter checks on state transitions to avoid mismatches between state and ballot.
- Legacy-Id: 14380
2017-11-30 16:02:31 +00:00
Henrik Levkowetz b6f0fbd52d Added new checker runs for all active drafts with yang modules to the yang link data migration, in order to make sure to have module information available.
- Legacy-Id: 14277
2017-11-02 14:49:51 +00:00
Henrik Levkowetz 370a0e3d94 Added a progress bar to the submission checker json field upgrade migration.
- Legacy-Id: 14276
2017-11-02 14:48:28 +00:00
Henrik Levkowetz 6edcd1b407 Capture messages from xym's get_extracted_models()
- Legacy-Id: 14275
2017-11-02 14:45:58 +00:00
Henrik Levkowetz a25ee4e50d Fixed an initialization error.
- Legacy-Id: 14271
2017-11-01 20:58:21 +00:00
Henrik Levkowetz 48a81862b8 Added a data migration to upgrade the submission checker json details to a consistent format.
- Legacy-Id: 14269
2017-11-01 14:45:25 +00:00
Henrik Levkowetz 1e98a58386 Added missing in-loop variable initializations in the yang checker code. Fixes issue #2397.
- Legacy-Id: 14268
2017-11-01 14:40:56 +00:00
Henrik Levkowetz 02ec2aa7e3 Included the path for draft moduled found invalid in the module paths when running yanglint, in order to avoid some unhelpful model not found messages. Fixes issue #2398.
- Legacy-Id: 14266
2017-11-01 14:00:24 +00:00
Henrik Levkowetz ec02ed5cdd Removed case sensitivity in the submission API when comparing the submitter email address with the email addresses found in the draft. Fixes issue #2396.
- Legacy-Id: 14265
2017-11-01 13:47:12 +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 54088de325 Changed the submission checkers to return more information in the checker details json blob; in particular added information about individual extracted code modules associated with a draft. This is used by the yang valididty checker to return a list of extracted yang modules.
- Legacy-Id: 14236
2017-10-30 11:28:19 +00:00
Henrik Levkowetz 8f2247ad1d Changed the SubmissionCheck.time field to use a default now value, instead of auto_now, to permit migrations without changing the timestamps.
- Legacy-Id: 14235
2017-10-30 11:25:40 +00:00
Henrik Levkowetz f795fa56b9 Changed the SubmissionCheck.time field to use a default now value, instead of auto_now, to permit migrations without changing the timestamps.
- Legacy-Id: 14234
2017-10-30 11:24:47 +00:00
Henrik Levkowetz 7c9364b61f Added some more debugging output for occasional author extraction failures during test. See also [14226].
- Legacy-Id: 14233
Note: SVN reference [14226] has been migrated to Git commit 215008211a
2017-10-30 11:22:45 +00:00
Henrik Levkowetz 215008211a Added some debugging code to help identify random test failures
- Legacy-Id: 14226
2017-10-27 05:53:23 +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 437a622141 Set a temporary state 'confirmed' when handling submission confirmations in order to avoid running the confirmation code multiple times on multiple form submits.
- Legacy-Id: 14191
2017-10-07 13:34:14 +00:00
Henrik Levkowetz 7b2d921a5a Tweaked the submission search form to accept draft names which include revision numbers. Fixes issue #2380.
- Legacy-Id: 14171
2017-09-27 15:08:40 +00:00
Henrik Levkowetz 2d817427fc Added a cancel button to the submission confirmation page. Fixes issue #2379.
- Legacy-Id: 14170
2017-09-27 14:18:12 +00:00
Henrik Levkowetz 328c6c6ab8 Added a submission state filter to the submission admin page.
- Legacy-Id: 14169
2017-09-27 14:15:31 +00:00
Henrik Levkowetz d0583f4f02 Removed the repeat of the error message in the HTTP reason string. Fixes issue #2378.
- Legacy-Id: 14168
2017-09-27 11:03:25 +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 6aa2cfca89 Updated tests to match the submission API info page.
- Legacy-Id: 14127
2017-09-17 14:02:52 +00:00
Henrik Levkowetz 8d3c540edd Added submit API instructions and fixed a bug in error handling for the submission validity checkers.
- Legacy-Id: 14126
2017-09-17 13:04:41 +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 135d5d946b Tweaked the submission checker shell invocation code to deal with command lines starting with environment variable settings.
- Legacy-Id: 14107
2017-09-08 12:09:22 +00:00
Henrik Levkowetz a9b259ef26 Changed the message shown when xml file parsing fails during draft submission to include the actual error message from the xml parser. Fixes issue #2353.
- Legacy-Id: 14102
2017-09-06 17:41:29 +00:00
Henrik Levkowetz 95a5400dea Changed the handling of yang validation otput to capture errors messages also when command the exit code is zero.
- Legacy-Id: 14100
2017-09-03 14:40:02 +00:00
Henrik Levkowetz d481019803 Added reverse relationships from drafts to submissions to submission checks to the Json API, to make it easier to find the yang checks for a given document.
- Legacy-Id: 13785
2017-07-07 12:55:30 +00:00
Henrik Levkowetz 25e833444c Added a check for duplicate Yang model names after xym extraction. This prevents running pyang and yanglint on one module, moving it to the module libs, and then failing to run the checks on a second module with the same name, because the file has been moved after the first check.
- Legacy-Id: 13770
2017-07-03 21:24:19 +00:00
Henrik Levkowetz 08f0338555 Tweaked the wording of the unexpected-encoding warning.
- Legacy-Id: 13760
2017-07-03 11:38:03 +00:00
Henrik Levkowetz 274548f1b1 Check the whole draft submission text when checking mime type, and catch decoding errors and raise ValidationError when converting submission form txt file to unicode for Draft().
- Legacy-Id: 13759
2017-07-02 21:32:44 +00:00
Henrik Levkowetz 7e1b09410c Upgraded xym to 0.4.2, with related changes in method calls.
- Legacy-Id: 13741
2017-06-30 15:59:40 +00:00
Henrik Levkowetz 60e9b7451c Included the temporary yang model extraction directory in the list of model librarires given to yanglint, in order to support drafts with models referencing models in the same draft. Fixes issue #2324.
- Legacy-Id: 13736
2017-06-29 21:03:26 +00:00
Henrik Levkowetz 3b7f320c29 Removed the copy of xym copied directly from repository -- the method call we use is too unstable at the moment. Now requiring xym=='0.4'.
- Legacy-Id: 13723
2017-06-28 11:53:09 +00:00
Henrik Levkowetz 13905a2a84 Modified the yang checker to work with both versions 0.3.x and 0.4.x of xym (different signatures for get_extracted_models()).
- Legacy-Id: 13719
2017-06-27 11:37:56 +00:00
Henrik Levkowetz 8eded1d8d2 Return a checker None result with exception message on xym exceptions.
- Legacy-Id: 13707
2017-06-22 15:08:01 +00:00
Henrik Levkowetz 70de94fc48 Variable naming tweak
- Legacy-Id: 13701
2017-06-21 13:12:19 +00:00
Henrik Levkowetz 768ca0b45e Catch bad module names in the Yang checker (they are not currently flagged by xym).
- Legacy-Id: 13700
2017-06-21 13:10:05 +00:00
Henrik Levkowetz 95f966c98b Changed the implementation of Submission.latest_checks() to also return None checks, so it's possible to update a Passed due to no yang modules to a None (no modules to check).
- Legacy-Id: 13698
2017-06-20 21:05:48 +00:00
Henrik Levkowetz 508bf15c6c Work around an issue in xml2rfc
- Legacy-Id: 13682
2017-06-19 19:02: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
Henrik Levkowetz 228a68348f Don't deliver spurious yang extraction errors for drafts where no yang modules were found.
- Legacy-Id: 13668
2017-06-17 20:54:52 +00:00
Henrik Levkowetz 98dc0d0092 Only run yanglint and yanglint tests if we have it configured.
- Legacy-Id: 13636
2017-06-15 22:13:43 +00:00
Henrik Levkowetz 4fc2c6f960 Merged in ^/personal/henrik/6.54.2-yang@13630:
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
2017-06-15 20:16:48 +00:00
Henrik Levkowetz 207ea51723 Added a test case for invalid yang in a draft submission.
- Legacy-Id: 13633
2017-06-15 19:22:36 +00:00
Henrik Levkowetz d98054c103 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: 13630
2017-06-15 16:09:28 +00:00
Henrik Levkowetz df2d0571c4 Narrowed a too wide try/except region in order to give more correct error messages. Changed the the strip() application to happen only on extracted author elements that actually have content. Fixes an inability to upload xml-only drafts with missing author country information.
- Legacy-Id: 13574
2017-06-09 20:12:44 +00:00
Henrik Levkowetz fb66f38afd Undid an unintentional adaptation to the xml2rfc 2.6.0 call interface change.
- Legacy-Id: 13556
2017-06-07 00:07:39 +00:00
Henrik Levkowetz a28940fc1e Name/email formatting tweaks, to complement [13536].
- Legacy-Id: 13540
Note: SVN reference [13536] has been migrated to Git commit 55d36e284d
2017-06-06 08:11:31 +00:00
Henrik Levkowetz 55d36e284d Changed the '%s <%s>'%(name,email) idiom in several places to use email.utils.formataddr() instead, to avoid future problems with names that would need quotes. Added comments in 2 places where this change would not be appropriate.
- Legacy-Id: 13536
2017-06-05 22:40:11 +00:00
Henrik Levkowetz a92c2b4ad5 Updated migration numbering to avoid collisions.
- Legacy-Id: 13480
2017-05-31 21:36:08 +00:00
Henrik Levkowetz 76628be3fd Merged in ^/branch/iola/author-stats-r13145 from olau@iola.dk, and fixed some tests in code which moved after the latest merge with trunk. The test suite passes, but the migrations are _not_ ready to run, because of numbering conflicts (again due to code changes on trunk since the latest sync).
- Legacy-Id: 13479
2017-05-31 20:59:26 +00:00
Henrik Levkowetz 4afe0b8830 Added stripping of leading and trailing whitespace from submission data (including email addresses) gleaned from submitted xml. Changed email line parsing to use email.utils.parseaddr() instead of a regex which only would handle unwuoted names (and possibly not utf-8 names) correctly.
- Legacy-Id: 13423
2017-05-25 14:10:42 +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
Henrik Levkowetz 14c748df98 Changed the creation of temporary test dirs to use names which include the test class name, in order to make it possible to run test cases in parallel. Disabled coverage testing when running in parallel (those classes cannot be pickled and distributed to the test runner threads, and also won't pass coverage data back). Tweaked the TestCase.tempdir() method.
- Legacy-Id: 13157
2017-03-27 21:41:18 +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
Henrik Levkowetz 27351c4349 Fixed url lookups for doc.views_doc.document_main() to only use dotted-path, and removed the doc_view explicit url name. Fixes a 500 error in /submit/status/NNNN/.
- Legacy-Id: 12897
2017-02-22 11:40:55 +00:00
Henrik Levkowetz 8930d29a8e Merged in Django-1.10 upgrade work from ^/personal/henrik/6.43.1-django-1.10
- Legacy-Id: 12881
2017-02-19 18:18:00 +00:00
Henrik Levkowetz cf4a4b02a7 Reworked the email address handling in order to be able to support non-ascii names as part of email address fields. Reworked the generation of user names in the test suite to generate names from multiple non-ascii locales. Fixes issue #2080.
- Legacy-Id: 12872
2017-02-18 21:50:18 +00:00
Ole Laursen 9d8874d8b1 Add a suggestion to fix the country name when submitting a draft in
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
2017-02-16 17:56:23 +00:00
Ole Laursen b2ff10b0f2 Add support for extracting the country line from the author addresses
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
2017-02-15 18:43:57 +00:00
Henrik Levkowetz f6a1fcdaf8 Added more information about submission errors and a full idnits run to the manual post email sent to the secretariat.
- Legacy-Id: 12831
2017-02-13 20:37:47 +00:00
Henrik Levkowetz aa5e61d958 Updated all urlpatterns to use ietf.utils.urls.url() instead of django's,
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
2017-02-11 14:43:01 +00:00
Ole Laursen 8fdb0047e1 Add migration for converting existing Submission.authors to JSON
- Legacy-Id: 12746
2017-01-27 16:12:10 +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
Henrik Levkowetz 6de7be6953 Specified strip=False for another bunch of CharField form fields with Textarea widgets.
- Legacy-Id: 12711
2017-01-23 17:38:56 +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
Ole Laursen 1850a26b23 Add words and formal languages to Submission, set them in the submit
view, clean up submit view a bit to avoid duplicated attribute setting
code
 - Legacy-Id: 12660
2017-01-16 17:37:23 +00:00
Henrik Levkowetz 6eec4c2648 Converted all management commands which set up additional command-line switches to use the argparse approach instead of the deprecated optparse approach.
- Legacy-Id: 12645
2017-01-11 18:42:38 +00:00
Henrik Levkowetz c2541ec04b Django 1.9: Removed deprecated use of django.conf.urls.patterns() from all urls*.py files.
- Legacy-Id: 12618
2016-12-22 17:21:57 +00:00
Henrik Levkowetz 19ec458668 Added migrations for the model changes done for the Django 1.8 upgrade.
- Legacy-Id: 12478
2016-12-07 19:41:48 +00:00
Henrik Levkowetz 14776bae70 Merged django18 work forward to r12447
- Legacy-Id: 12455
2016-12-05 15:03:40 +00:00
Henrik Levkowetz 0bb7854591 Merged django18 work forward to 6.39
- Legacy-Id: 12449
2016-12-05 14:01:25 +00:00
Henrik Levkowetz 9c9b15bec8 Added guards against picking up non-ascii title and abstract from drafts submitted in xml form.
- Legacy-Id: 12429
2016-11-30 15:56:22 +00:00
Henrik Levkowetz b914f46313 Merged in ^/branch/iola/review-tracker-r12128@12397, bringing in the review tool functionality described in RFC7735. This adds the ability to set up review management pages for review teams such as genart, secdir, opsdir, etc.; letting the review team secretaries manage requested and completed reviews; letting the reviewers keep track of and document their reviews, and more. See the RFC for full specification, and the branch commit log for a full commit history.
- Legacy-Id: 12419
2016-11-29 14:54:19 +00:00