Commit graph

529 commits

Author SHA1 Message Date
Robert Sparks 216ec499df Checkpointing. Remaining work: convert meetingregistation fixup to a migration and a mgmt comment. Flesh out testing of 8989 rule 2 and fix the known edge case bug. Remove old implementation and connect UI to the new implementation.
- Legacy-Id: 18971
2021-05-01 19:57:04 +00:00
Robert Sparks 3697180cc1 Reverted merge of timezone-aware migration efforts.
- Legacy-Id: 18792
2021-01-12 16:54:20 +00:00
Henrik Levkowetz 774e752a54 Snapshot of timezone-aware datatracker code. Tests pass, and the test-crawler shows only expected differences. Trunk changes merged in up to r18768.
- Legacy-Id: 18770
2020-12-16 23:53:37 +00:00
Henrik Levkowetz 088033d843 Added matching indexes to a number of models with ordering by multiple keys.
- Legacy-Id: 18664
2020-11-09 19:41:12 +00:00
Henrik Levkowetz f4b90c0dc8 Nomcom topic responses didn't save respondent because of a missing form creation parameter. Fixed.
- Legacy-Id: 18652
2020-10-31 19:49:56 +00:00
Henrik Levkowetz eaf9546d0e Fixed a bug in the charset handling of individual parts in multipart email messages in ietf.nomcom.get_body()
- Legacy-Id: 18615
2020-10-13 10:57:23 +00:00
Henrik Levkowetz 779087d24b Merged in [18601] from fenton@bluepopcorn.net:
Added NomCom membership history page. Fixes issue #3006. Branch
 - Legacy-Id: 18614
Note: SVN reference [18601] has been migrated to Git commit 431a112bf1
2020-10-12 19:55:04 +00:00
Henrik Levkowetz f557708ce0 Fixed another py2/py3 issue with the nomcom mail processing script.
- Legacy-Id: 18602
2020-10-12 11:24:15 +00:00
Jim Fenton 431a112bf1 Added NomCom membership history page. Fixes issue #3006. Branch ready for merge.
- Legacy-Id: 18601
2020-10-12 02:36:16 +00:00
Henrik Levkowetz a7396d4756 Tweaked the verbose name of the Nomcom Topic Questionnaire's 'audience' field.
- Legacy-Id: 18568
2020-10-08 12:38:38 +00:00
Henrik Levkowetz 8b9d04f49f Fixed a Py3 str/bytes issue in the feedback_email handler.
- Legacy-Id: 18551
2020-10-02 18:06:11 +00:00
Henrik Levkowetz 0bc492afaf Fixed a bytes/unicode issue for echoed-back nomcom questionnaire text.
- Legacy-Id: 18523
2020-09-28 11:06:55 +00:00
Henrik Levkowetz 60a1e0fe3d Tweaked the decode() templatetag code slightly.
- Legacy-Id: 18482
2020-09-09 19:05:59 +00:00
Henrik Levkowetz 638797cb65 Updated the decrypt() templatetag to ensure it returns string rather than bytes.
- Legacy-Id: 18481
2020-09-09 17:46:27 +00:00
Henrik Levkowetz 57938b039d Converted many cases of plain-text 403 messages to use a properly styled page instead, with a login link when appropriate. Also changed some API endpoint 400 responses to a more correct 403.
- Legacy-Id: 18339
2020-08-06 10:59:52 +00:00
Henrik Levkowetz efcdc4d917 Updated meeting attendance and nomcom eligibility calculations to take the MeetingRegistration.attendance flag into account.
- Legacy-Id: 17955
2020-06-09 21:00:07 +00:00
Henrik Levkowetz ac52ce6595 Updated the NomCom eligibility calculation to use the last 5 in-person meetings, in accordance with draft-iesg-nomcom-eligibility-2020-03 which has now been approved for publication. The code will need revisiting when the long-term policy is available.
- Legacy-Id: 17859
2020-05-20 19:41:25 +00:00
Henrik Levkowetz bc05e7a8d0 Refactored many instances of msg.get_payload(decode=True).decode('utf-8') and similar to get_payload_text(msg), which uses msg.get_charset() to get the actual charset to do the decoding, in a consistent manner. Also removed some instances of force_str, but more remain.
- Legacy-Id: 17807
2020-05-16 20:20:05 +00:00
Henrik Levkowetz 9aeda11a29 Removed some Py2 compatibility decorators.
- Legacy-Id: 17673
2020-04-21 13:54:31 +00:00
Robert Sparks d981076432 Refactor disqualifying roles into one place. Commit ready for merge.
- Legacy-Id: 17650
2020-04-15 22:34:44 +00:00
Robert Sparks b387599dac Follow RFC8713 section 4.15 for roles that disqualify for nomcom. Fixes #2944. Commit ready for merge.
- Legacy-Id: 17649
2020-04-15 21:39:58 +00:00
Henrik Levkowetz f10ddadc0e Merged in changes from trunk up to r17584.
- Legacy-Id: 17593
2020-04-07 16:02:52 +00:00
Henrik Levkowetz dc4c05ec5b Changed the object factory instances of nomcom private key and cert to be byte objects (matching the production settings), and fixed the issue with nomcom key handling under Py3 found by fenton@bluepopcorn.net. Did some renaming in nomcom/tests.py to better match setup/teardown function names to functionality.
- Legacy-Id: 17536
2020-03-25 13:36:29 +00:00
Henrik Levkowetz a91e7aa4c8 Merged in [17493] from mahoney@nostrum.com:
Changed awkward IESG/IAB Nominating Committee names to just NomCom, updated a ref. Fixes #2860.
 - Legacy-Id: 17515
Note: SVN reference [17493] has been migrated to Git commit cf98a644e3da5d2a4303156048ef6aed039f908e
2020-03-22 23:19:55 +00:00
Henrik Levkowetz 726fcbf27d Removed all __future__ imports.
- Legacy-Id: 17391
2020-03-05 23:53:42 +00:00
Henrik Levkowetz ab173cb2eb Removed further six usage: six.string_types, six.integer_types, six.moves.urllib instances.
- Legacy-Id: 17390
2020-03-05 20:46:58 +00:00
Henrik Levkowetz 566971a6ae Removed further six usage.
- Legacy-Id: 17386
2020-03-05 15:10:33 +00:00
Henrik Levkowetz e9a37d8ac8 Removed six.text_type(), changed six.moves.urllib to plain urllib, and removed now unused six imports.
- Legacy-Id: 17385
2020-03-05 14:41:41 +00:00
Henrik Levkowetz fa4adeb374 Fixed a number of bad Message.content_type settings.
- Legacy-Id: 17339
2020-02-26 17:05:53 +00:00
Jennifer Richards cd77c76372 Add links to user profiles from nominee list and feedback page. Fixes #2839. Commit ready for merge.
- Legacy-Id: 17275
2020-02-05 21:10:47 +00:00
Henrik Levkowetz a33f9724af Merged in [17201] from rjsparks@nostrum.com:
Make it easier for the nomcom chair to manage generic IESG requirements. Fixes #2794.
 - Legacy-Id: 17216
Note: SVN reference [17201] has been migrated to Git commit c9d944b312
2020-01-10 16:16:31 +00:00
Robert Sparks c9d944b312 Make it easier for the nomcom chair to manage generic IESG requirements. Fixes #2794. Commit ready for merge.
- Legacy-Id: 17201
2020-01-08 19:51:14 +00:00
Henrik Levkowetz 2749759216 Fixed a backwards compatibiltiy issue for the factoryboy lib and updated a dependency requirement.
- Legacy-Id: 17115
2019-11-30 13:15:44 +00:00
Robert Sparks cca04b6330 Correct construction for a reverse URL in an edge case. Fixes #2815. Commit ready for merge.
- Legacy-Id: 16907
2019-10-22 18:24:57 +00:00
Henrik Levkowetz 77abc3868e Type checking tweaks.
- Legacy-Id: 16867
2019-10-15 16:54:33 +00:00
Henrik Levkowetz 0c6bca8e59 Merged in [16759] from rjsparks@nostrum.com:
Restrict comments total on nomcom private index to comments on positions. Fixes #2792.
 - Legacy-Id: 16826
Note: SVN reference [16759] has been migrated to Git commit 7aa57e9f57
2019-10-04 20:54:05 +00:00
Henrik Levkowetz 33e8733b91 Fixed up mypy issues or added type:ignore comments as needed for a clean mypy run.
- Legacy-Id: 16772
2019-09-30 15:42:18 +00:00
Robert Sparks 7aa57e9f57 Restrict comments total on nomcom private index to comments on positions. Fixes #2792. Commit ready for merge.
- Legacy-Id: 16759
2019-09-26 21:49:55 +00:00
Henrik Levkowetz aafc66c490 Merged in [16646] from rjsparks@nostrum.com:
Don't manually linewrap when looking at feedback - let the pasted styling do that. Fixes #2761.
 - Legacy-Id: 16706
Note: SVN reference [16646] has been migrated to Git commit 33838840d1
2019-09-05 18:46:24 +00:00
Robert Sparks 33838840d1 Don't manually linewrap when looking at feedback - let the pasted styling do that. Fixes #2761. Commit ready for merge.
- Legacy-Id: 16646
2019-08-12 19:22:39 +00:00
Henrik Levkowetz 8e313e4ed5 Adjusted migrations for Python2/3 compatibility.
- Legacy-Id: 16633
2019-08-08 17:11:14 +00:00
Henrik Levkowetz f47212f239 Use BinaryField instead of our own EncryptedTextField which relied on cleartext and ciphertext being the same type.
- Legacy-Id: 16472
2019-07-16 19:28:45 +00:00
Henrik Levkowetz bdc73e771a Python2/3 compatibility: replaced six.ensure_text() with either six.text_type or django's force_text(), depending on the case, and fixed a variable scope issue.
- Legacy-Id: 16461
2019-07-16 13:20:05 +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 ea8c84d2f6 Python2/3 compatibility: used @python_2_unicode_compatible to provide __unicode__() versions of __str__() methods.
- Legacy-Id: 16455
2019-07-15 18:01:26 +00:00
Henrik Levkowetz a5e31c3f40 Py2/3 compatibility: Added __future__ import.
- Legacy-Id: 16452
2019-07-15 15:52:18 +00:00
Henrik Levkowetz 1fae7839e2 Py2/3 compatibility: Added __future__ import and an explicit encoding scheme, not relying on py3's implicit utf-8
- Legacy-Id: 16447
2019-07-15 15:44:38 +00:00
Henrik Levkowetz 2d7c9629aa Added 'from __future__' imports all over the place, to bring code behaviour into closer alignment between python2 and python3
- Legacy-Id: 16446
2019-07-15 15:40:51 +00:00
Henrik Levkowetz e314bb4723 Undid delete of ietf/nomcom/fields; it's currently needed by ietf/nomcom/migrations/0001_initial.py
- Legacy-Id: 16403
2019-07-04 22:04:42 +00:00
Henrik Levkowetz 0679eaa8d4 Removed unused imports.
- Legacy-Id: 16402
2019-07-04 21:06:57 +00:00
Henrik Levkowetz f480799af9 Undid unintentional bulk commit
- Legacy-Id: 16401
2019-07-04 21:04:46 +00:00
Henrik Levkowetz fc09a59950 Added decode() of command pipe output.
- Legacy-Id: 16400
2019-07-04 21:01:39 +00:00
Henrik Levkowetz 1e115539c4 The previous nomcom.fields.EncryptedTextField relied on initial cleartext content having the same type as ciphertext. Under Python3, that's not the case (ciphertext has type bytes). Rewrote the nomcom app and tests to handle capture of comments and encryption to the Feedback.comments ciphertext differently.
- Legacy-Id: 16350
2019-07-01 11:59:59 +00:00
Henrik Levkowetz a73e84a84c Removed
- Legacy-Id: 16347
2019-07-01 11:46:40 +00:00
Henrik Levkowetz 97a555936d Changed a large number of test assertions to use assertContains() and removed separate, now unnecessary,status_code checks. Also changed many assertTrue(... in ...) to use assertIn().
- Legacy-Id: 16346
2019-06-30 21:03:34 +00:00
Henrik Levkowetz 36cac48063 Fixed a bunch of str/bytes issues.
- Legacy-Id: 16341
2019-06-30 20:54:09 +00:00
Henrik Levkowetz 15e74e89cb Converted instances of assertTrue(text in response.content) to the recommended assertContains(response, text), and similar for assertFalse(... in ...)
- Legacy-Id: 16336
2019-06-29 13:43:31 +00:00
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 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 f54d6cd23d Merged in [16092] from rcross@amsl.com:
Remove ability to cancel a break session.  Fixes #2703.
 - Legacy-Id: 16105
Note: SVN reference [16092] has been migrated to Git commit b5850d5c7f
2019-03-26 15:53:41 +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 5cd155429d Fixed a pyflakes error
- Legacy-Id: 15750
2018-11-11 12:05:09 +00:00
Henrik Levkowetz 129a1520d0 Corredted the rendering of non-ascii email names in nomcom templates.
- Legacy-Id: 15749
2018-11-10 20:37:27 +00:00
Henrik Levkowetz 4049b31026 Added normalization of the email addresses returned by ietf.nomcom.utils.parse_email, in order to not treat feedback from the same person as coming from different sources due to email name+address variations.
- Legacy-Id: 15731
2018-11-06 11:47:11 +00:00
Henrik Levkowetz 5ebeceaa8d Removed a test for the microscopic photos on the nomcom feedback page buttons.
- Legacy-Id: 15616
2018-10-30 11:45:58 +00:00
Henrik Levkowetz fcddc86447 Fixed some incorrect topic audience id slugs, to make the topic availability filtering work correctly.
- Legacy-Id: 15598
2018-10-19 12:53:16 +00:00
Henrik Levkowetz e20e8b7df5 Changed the mail sending routines so it's possible to not copy the debug archive on some messages.
- Legacy-Id: 15585
2018-10-16 14:32:10 +00:00
Henrik Levkowetz 6f9fbea6d3 Updated the nomcom admin pages for Feedback to make it possible to see and sort on the Nominees field.
- Legacy-Id: 15558
2018-10-11 13:40:15 +00:00
Henrik Levkowetz 8c985fe440 Turned the nomcom chair dropdown menu item 'Classify pending feedback' into a tab with a mail count badge.
- Legacy-Id: 15544
2018-10-08 15:11:21 +00:00
Henrik Levkowetz 7ac1556fbf Migration for changed default sort order for nominees.
- Legacy-Id: 15535
2018-10-08 13:03:21 +00:00
Henrik Levkowetz b984422471 Added pagination to the nomcom pending-feedback page, to reduce load time.
- Legacy-Id: 15534
2018-10-08 11:51:21 +00:00
Henrik Levkowetz 8a5e302745 Corrected the nominee ordering change.
- Legacy-Id: 15533
2018-10-08 10:26:00 +00:00
Henrik Levkowetz 64ba033a6c Changed the default sort for nomcom.models.Nominees to be 'person__name'.
- Legacy-Id: 15532
2018-10-08 09:55:10 +00:00
Henrik Levkowetz fc027ae161 Built out test_edit_nomcom_view() to also test adding and removing reminder dates.
- Legacy-Id: 15524
2018-10-06 13:01:08 +00:00
Henrik Levkowetz 2c2effde4f Added a form clean() for the reminder dates of the nomcom edit form, to make something appropriate out of edits that remove reminder dates, rather than clicking 'delete'. This fixes a potential exception, when a blank date cannot be saved, and also does what the user expected (deletes a blanked date).
- Legacy-Id: 15521
2018-10-04 18:03:41 +00:00
Henrik Levkowetz 29ae7809d7 Merged in [15486] from rjsparks@nostrum.com:
Allow a nomcom to show nominees that have accepted nomination before feedback is open. Fixes #2598.
 - Legacy-Id: 15487
Note: SVN reference [15486] has been migrated to Git commit 4d5de5dee6
2018-09-26 21:54:05 +00:00
Robert Sparks 4d5de5dee6 Allow a nomcom to show nominees that have accepted nomination before feedback is open. Fixes #2598. Commit ready for merge.
- Legacy-Id: 15486
2018-09-26 18:57:30 +00:00
Henrik Levkowetz 4f2f843a55 A string.Template with a unicode template must be given unicode dictionary values if the values contain unicode codepoints. Providing values that are objects with __str__() methods, or utf-8 encoded strings doesn't work. Fixes an issue with nomcom template interpolation for nominees with non-ascii names.
- Legacy-Id: 15481
2018-09-24 21:25:20 +00:00
Henrik Levkowetz 120d78bbbf Changed the sort order of nominees on the private index page to be according to name (instead of email address).
- Legacy-Id: 15479
2018-09-21 19:47:40 +00:00
Henrik Levkowetz 5f512226a5 Added a missing migration and updated nomcom.resources to match model changes.
- Legacy-Id: 15465
2018-09-18 12:53:39 +00:00
Henrik Levkowetz 4fba531e9e Merged in the latest GDPR changes. This refines the handling of the consent checkbox on the account page; refines the Consent Needed warning given on login if consent is needed; tweaks several models to set the on_deletion fields for FK to User and Person appropriately; adds a Person.needs_consent() method to capture the logic of which fields require consent; refines the Person.plain_name() method and the user.log.log() function; and adds 2 management commands to send out consent requests and delete non-consent information, respectively.
- Legacy-Id: 15464
2018-09-16 23:12:43 +00:00
Peter E. Yee 047b91862c Fixed 2 trivial spelling errors in NomCom tools. Fixes issue #2569. Commit ready for merge.
- Legacy-Id: 15441
2018-08-17 04:24:51 +00:00
Henrik Levkowetz 35e16ef7d5 Changed User ForeignKeys to not delete objects pointing at a user when the user is deleted, instead setting the ForeignKey field to None.
- Legacy-Id: 15257
2018-06-14 18:53:48 +00:00
Henrik Levkowetz 46bee81bdc Fixed a test email object creation issue.
- Legacy-Id: 15180
2018-05-28 09:48:27 +00:00
Henrik Levkowetz 2522082979 Changed the email origin field during test to hold user.username in order to exercise more of the code. Changed the EmailFactory to also use user.username as origin.
- Legacy-Id: 15172
2018-05-26 08:32:20 +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 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 53c4ac36db Removed the Person.address field, which is not being used. This was a legacy from the 2001 perl-based datatracker tables. Fixes issue #2504.
- Legacy-Id: 15095
2018-04-27 14:00:33 +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 f996fe825f Added more test data for the eligibility view, in order to exercise all parts of the view code.
- Legacy-Id: 14541
2018-01-19 15:21:33 +00:00
Henrik Levkowetz 374950ede8 Removed code generating nomcom page urls which doesn't resolve any more. Added a comment about the eligibility view for previous nomcoms.
- Legacy-Id: 14540
2018-01-19 15:06:23 +00:00
Henrik Levkowetz 7921d613d5 Merged in [14533] from rjsparks@nostrum.com:
Add a page for the nomcom-chair and the secretariat to view who the datatracker thinks is nomcom eligible. Related to #2257.
 - Legacy-Id: 14538
Note: SVN reference [14533] has been migrated to Git commit 4ce6b934b8
2018-01-17 22:32:00 +00:00
Robert Sparks 4ce6b934b8 Add a page for the nomcom-chair and the secretariat to view who the datatracker thinks is nomcom eligible. Related to #2257. Commit ready for merge.
- Legacy-Id: 14533
2018-01-17 17:58:58 +00:00
Henrik Levkowetz c3f444eaf1 Merged in [14511] from rjsparks@nostrum.com:
Allow all the nomcom private tabs to show on the nomcom chair configuration help page. Fixes #2303.
 - Legacy-Id: 14513
Note: SVN reference [14511] has been migrated to Git commit 5835e52759
2018-01-11 17:14:21 +00:00
Henrik Levkowetz 16e155356e Merged in [14506] from rjsparks@nostrum.com:
Improved the resilience of the formatted_email nomcom filter. Fixes #1764.
 - Legacy-Id: 14512
Note: SVN reference [14506] has been migrated to Git commit 2dd1f0da29
2018-01-11 16:41:15 +00:00
Robert Sparks 5835e52759 Allow all the nomcom private tabs to show on the nomcom chair configuration help page. Fixes #2303. Commit ready for merge.
- Legacy-Id: 14511
2018-01-11 16:28:19 +00:00
Henrik Levkowetz 78304b4d57 Merged in [14505] from rjsparks@nostrum.com:
Make extracting lists of nomcom-related email addresses easier for the nomcom chair. Fixes #1852.
 - Legacy-Id: 14510
Note: SVN reference [14505] has been migrated to Git commit c8b451094a
2018-01-11 16:07:21 +00:00
Henrik Levkowetz 0bd9dbaab3 Removed some unused imports.
- Legacy-Id: 14509
2018-01-11 15:00:02 +00:00
Henrik Levkowetz 5e0335bbe3 Removed some dead code.
- Legacy-Id: 14508
2018-01-11 13:22:04 +00:00
Robert Sparks 2dd1f0da29 Improved the resilience of the formatted_email nomcom filter. Fixes #1764. Commit ready for merge.
- Legacy-Id: 14506
2018-01-10 22:42:18 +00:00
Robert Sparks c8b451094a Make extracting lists of nomcom-related email addresses easier for the nomcom chair. Fixes #1852. Commit ready for merge.
- Legacy-Id: 14505
2018-01-10 21:54:10 +00:00
Robert Sparks 94f4e9ac58 Simplify the edit nomcom members forms. Fixes #1756. Commit ready for merge.
- Legacy-Id: 14504
2018-01-10 18:26:20 +00:00
Henrik Levkowetz a5e5bb1aab Expanded one of the nomcom tests a bit, and updated a fixture to match the current /nomcom/default/email/feedback_receipt.txt template.
- Legacy-Id: 14223
2017-10-20 14:34:03 +00:00
Henrik Levkowetz ac8e18480e Added tests for correct nomcom email from-address to the nomcom tests, and did some refactoring to improve test failure messages.
- Legacy-Id: 14176
2017-09-28 09:09:51 +00:00
Henrik Levkowetz 166c7531f9 Changed the nomcom code to permit nomcom year interpolation in the nomcom from-address and in nomcom templates. Changed the nomcom from-address setting to 'nomcom-chair-{year}@ietf.org'.
- Legacy-Id: 14175
2017-09-27 21:20:59 +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 e393b83f6b Merged in [14058] from rjsparks@nostrum.com:
Further refinements to the nominee status table. Related to #2261.
 - Legacy-Id: 14068
Note: SVN reference [14058] has been migrated to Git commit 7cecd9fe38
2017-08-23 17:30:00 +00:00
Henrik Levkowetz 2b2753635f Merged in [14057] from rjsparks@nostrum.com:
Improve the nominee status table to serve as a nomcom dashboard. Fixes #2261.
 - Legacy-Id: 14067
Note: SVN reference [14057] has been migrated to Git commit 2dbb0766fd
2017-08-23 15:06:12 +00:00
Robert Sparks 7cecd9fe38 Further refinements to the nominee status table. Related to #2261. Commit ready for merge.
- Legacy-Id: 14058
2017-08-16 21:59:51 +00:00
Robert Sparks 2dbb0766fd Improve the nominee status table to serve as a nomcom dashboard. Fixes #2261. Commit ready for merge.
- Legacy-Id: 14057
2017-08-16 20:42:33 +00:00
Henrik Levkowetz 4dad8cdf9a Added a test to check for missing admin models, and added the admin models that were currently missing.
- Legacy-Id: 14021
2017-08-01 14:00:29 +00:00
Henrik Levkowetz c4954e13b1 Added more test objects in test_merge_users(), and fixed an issue with merge_users() uncovered by the added testing.
- Legacy-Id: 13730
2017-06-29 14:53:00 +00:00
Henrik Levkowetz 3c727106a2 Merged in [13717] from rjsparks@nostrum.com:
Actually use the topic audience type in the feedback view. Fixes #2320.
 - Legacy-Id: 13728
Note: SVN reference [13717] has been migrated to Git commit 9638cb2e397beab18f3607b324518fd2900215f7
2017-06-29 12:52:25 +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
Ryan Cross e9b7c5753e Refactor ietf/bin/merge-person-records to facilitate testing. Add tests. Fixes #2162. Commit ready for merge.
- Legacy-Id: 13567
2017-06-08 23:28:43 +00:00
Henrik Levkowetz f2b0881dae Corrected the add_topics migration
- Legacy-Id: 13525
2017-06-05 12:27:45 +00:00
Henrik Levkowetz d041edf1b3 Merged in [13501] from rjsparks@nostrum.com:
Use a simpler widget for the public key file when editing a nomcom to remove confusion between clearing keys and clearing the form control. Fixes #2299.
 - Legacy-Id: 13519
Note: SVN reference [13501] has been migrated to Git commit ca76f5c8f0fbf0832440680381380995b0092ea7
2017-06-04 19:40:26 +00:00
Henrik Levkowetz 495169de21 Merged in [13474] from rjsparks@nostrum.com:
Allow the nomcom to collect feedback on arbitrary topics. Fixes #2256 and #1846.
 - Legacy-Id: 13506
Note: SVN reference [13474] has been migrated to Git commit 4813177086
2017-06-03 13:50:44 +00:00
Henrik Levkowetz 5b2087f910 Eliminated several variations on word wrapping, keeping only what used to be wrap_text(), but renamed as ietf.utils.text.wordwrap(). This performs better than django.utils.text.wrap() when there are indented text parts. Replaced django's default wordwrap filter with one calling ietf.utils.text.wordwrap in templates. Changed to triggered wrapping in some cases, with the maybewordwrap filter, which triggers on lines longer than 100 characters. This fixes the issue with undesired wrapping of reviews.
- Legacy-Id: 13505
2017-06-02 23:13:22 +00:00
Robert Sparks 4813177086 Allow the nomcom to collect feedback on arbitrary topics. Fixes #2256 and #1846. Commit ready for merge.
- Legacy-Id: 13474
2017-05-30 19:54:31 +00:00
Robert Sparks c49abdd557 Allow nomcoms to configure the feedback page to show nominee pictures. Fixes #2252. Commit ready for merge,
- Legacy-Id: 13413
2017-05-23 22:18:04 +00:00
Robert Sparks ab6820e938 Correctly calculate statistics on the nomcom private index page. Fixes #2254. Commit ready for merge.
- Legacy-Id: 13400
2017-05-22 19:07:52 +00:00
Robert Sparks ac8e5f5402 Make it possible to close nominations without closing feedback. Fixes #2255. Commit ready for merge.
- Legacy-Id: 13399
2017-05-22 18:40:05 +00:00
Robert Sparks 1a18130c57 Avoid confusing messages saying a key has not been entered when it has. Fixes #2250. Commit ready for merge.
- Legacy-Id: 13390
2017-05-17 21:02:20 +00:00
Robert Sparks 4b0fefeb3e Revert an attempt to improve a nomcom test. Affects #2260. Commit ready for merge.
- Legacy-Id: 13389
2017-05-17 16:45:58 +00:00
Robert Sparks ceff54480c Update the feedback count badge when new feedback is provided. Fixes #2260. Commit ready for merge.
- Legacy-Id: 13388
2017-05-17 13:55:39 +00:00
Robert Sparks cf382d30bb Don't double-escape when showing feedback. Fixes #2297. Commit ready for merge.
- Legacy-Id: 13383
2017-05-16 22:25:52 +00:00
Henrik Levkowetz 3bccc5b3e6 Converted the make/delete_dummy_nomcom scripts to a management command.
- Legacy-Id: 13236
2017-04-18 21:14:37 +00:00
Robert Sparks 0088273f5a Adds scripts to create/delete a dummy nomcom to use in development environments. Commit ready for merge. Fixes #2283.
- Legacy-Id: 13230
2017-04-18 16:13:14 +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 5f053ad21a Cleaned up the remaining explicit url names, using dotted-paths to view
functions instead.  In all almost 700 changes.
 - Legacy-Id: 12923
2017-02-26 23:21:49 +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
Henrik Levkowetz dd7b3eb71a Stabilized a number of nomcom tests by enforcing queryset ordering.
- Legacy-Id: 12833
2017-02-13 21:37:41 +00:00
Henrik Levkowetz 9b23816a22 Stabilized a number of nomcom tests by enforcing queryset ordering.
- Legacy-Id: 12832
2017-02-13 20:58:28 +00:00
Henrik Levkowetz e5f889764c Fixed a problem with stability of test_accept_reject_nomination_edges(), and made some changes to make debugging this easier.
- Legacy-Id: 12829
2017-02-13 15:55:55 +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
Henrik Levkowetz 19d585255a Django 1.10 does not permit the view argument to url() to be a string any more. Changed all cases view arguments to url() which were strings to instead reference the actual imported function.
- Legacy-Id: 12815
2017-02-10 14:49:16 +00:00
Henrik Levkowetz 2b4f4b0302 Merged django-1.10 work forward to 6.43.0
- Legacy-Id: 12812
2017-02-10 11:05:43 +00:00
Henrik Levkowetz deb8ab6dba Changed the nomcom __getattr__ mixin manager so as to not interfere with django 1.10 internals.
- Legacy-Id: 12811
2017-02-10 11:02:06 +00:00
Henrik Levkowetz c7ec188d3f Added a migration to capture the ordering option on Nominee.
- Legacy-Id: 12801
2017-02-10 10:29:07 +00:00
Henrik Levkowetz 0c784f9976 Added an ordering for Nominee objects.
- Legacy-Id: 12800
2017-02-09 21:07:22 +00:00
Henrik Levkowetz 996f78135d Expanded the nominee __unicode__() method to provide unique results by including the nomcom year.
- Legacy-Id: 12799
2017-02-09 21:02:43 +00:00