Commit graph

9753 commits

Author SHA1 Message Date
Henrik Levkowetz 788321dbf3 Added two new methods to TimeSlot: local_start_time() and local_end_time().
- Legacy-Id: 17682
2020-04-24 15:13:39 +00:00
Henrik Levkowetz 20c1bd532f Added a warnings filter for some versions of 'coverage' under Py3.
- Legacy-Id: 17680
2020-04-23 18:51:32 +00:00
Henrik Levkowetz ebf9d1d32c Fixed a Py2/Py3 issue in patch.py.
- Legacy-Id: 17677
2020-04-23 04:15:08 +00:00
Henrik Levkowetz 9aeda11a29 Removed some Py2 compatibility decorators.
- Legacy-Id: 17673
2020-04-21 13:54:31 +00:00
Henrik Levkowetz 26907e510d Merged in [17663] from rjsparks@nostrum.com:
Show recent meetings on a group's meeting tab even if there aren't other past meetings. Fixes #2961.
 - Legacy-Id: 17670
Note: SVN reference [17663] has been migrated to Git commit fec811de36
2020-04-20 18:27:45 +00:00
Henrik Levkowetz 52a01645c7 PyFlakes fix
- Legacy-Id: 17669
2020-04-20 18:26:57 +00:00
Henrik Levkowetz 3054b8cf58 Removed usage of maybe_create_svn_symlinks()
- Legacy-Id: 17668
2020-04-20 18:03:25 +00:00
Henrik Levkowetz c1f6743b36 Removed code from checks.py that isn't needed any more under Py3.
- Legacy-Id: 17666
2020-04-20 17:55:07 +00:00
Henrik Levkowetz 8ec63ca0e1 Removed Py2 svn-package settings, and added a patch for request_profiler.
- Legacy-Id: 17665
2020-04-20 17:51:47 +00:00
Robert Sparks fec811de36 Show recent meetings on a group's meeting tab even if there aren't other past meetings. Fixes #2961. Commit ready for merge.
- Legacy-Id: 17663
2020-04-20 17:31:28 +00:00
Henrik Levkowetz 19a26dc39a Merged in [17650] from rjsparks@nostrum.com:
Refactor disqualifying roles into one place.
 - Legacy-Id: 17652
Note: SVN reference [17650] has been migrated to Git commit d981076432
2020-04-16 12:25:45 +00:00
Henrik Levkowetz 3e80114114 Merged in [17649] from rjsparks@nostrum.com:
Follow RFC8713 section 4.15 for roles that disqualify for nomcom. Fixes #2944.
 - Legacy-Id: 17651
Note: SVN reference [17649] has been migrated to Git commit b387599dac
2020-04-16 11:36:19 +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 78963ecdef Added request profiler and a management command to purge profiler records.
- Legacy-Id: 17648
2020-04-15 20:48:08 +00:00
Henrik Levkowetz 1b94e10f4a Added template fragment caching for upcoming meetings page.
- Legacy-Id: 17647
2020-04-15 20:46:00 +00:00
Henrik Levkowetz 623d25f4c0 Tweaked the group 'closing notes' edit line for the secretariat on the group about page.
- Legacy-Id: 17645
2020-04-15 19:02:02 +00:00
Henrik Levkowetz cefd3506f4 Migration for updated list of personal API endpoints.
- Legacy-Id: 17644
2020-04-15 18:35:25 +00:00
Henrik Levkowetz 69a5d0817d Refined the GUI for personal API endpoints so that endpoints for which one does not have the right Roles do not show in the GUI, and added a supporting method on Person objects. Updated tests accordingly.
- Legacy-Id: 17643
2020-04-15 17:22:06 +00:00
Henrik Levkowetz eedd48d455 Simplified the URL and view code for the personal meetecho access API endpoint, and added test code.
- Legacy-Id: 17642
2020-04-15 17:19:54 +00:00
Henrik Levkowetz 2d1685868d Added the meetecho access api key to the list of personal API keys available through the Personal API GUI, and removed a secretariat-only key from the list.
- Legacy-Id: 17633
2020-04-15 12:04:39 +00:00
Henrik Levkowetz e01cc95f15 Tweaked some comments
- Legacy-Id: 17632
2020-04-15 12:02:28 +00:00
Henrik Levkowetz 0db30f3ca8 Updated the API v2 JsonExporMixin to not try to use an API key argument as a queryset argument when building the json response.
- Legacy-Id: 17631
2020-04-15 12:01:52 +00:00
Henrik Levkowetz bd934d0f2d Added a personal API key for meetecho access.
- Legacy-Id: 17630
2020-04-15 11:58:52 +00:00
Henrik Levkowetz bba2149b5e Added exception handling in the require_api_key() decorator for AttributeError raised by the decorated function.
- Legacy-Id: 17629
2020-04-15 11:57:33 +00:00
Henrik Levkowetz b53846557e Set version info and settings back to development mode
- Legacy-Id: 17625
2020-04-14 19:46:22 +00:00
Henrik Levkowetz 771b3f31b5 Set version info to release version 6.127.0 before branching.
- Legacy-Id: 17623
2020-04-14 19:46:04 +00:00
Henrik Levkowetz 02e0ccf441 Removed a renamed migration
- Legacy-Id: 17620
2020-04-14 19:29:09 +00:00
Henrik Levkowetz 5a0a502ff9 Merged in the py3clean work, which removes usage of six and __future__ imports, along with other py2/3 compatibility code.
- Legacy-Id: 17619
2020-04-14 19:06:53 +00:00
Henrik Levkowetz f2b883d2bb Merged in ^/trunk@17617.
- Legacy-Id: 17618
2020-04-14 17:11:51 +00:00
Ole Laursen 76b8554a9c Add media query to fix problem with space-between and small windows
- Legacy-Id: 17617
2020-04-09 18:29:13 +00:00
Ole Laursen 6c48575042 Swap the axes in the meeting schedule editor and rework it to allow
flowing the days.

Add JS workaround for missing position sticky support, instead of the
CSS workaround which added an annoying padding for everyone.
 - Legacy-Id: 17616
2020-04-09 18:16:56 +00:00
Henrik Levkowetz e647fe4778 Set version info and settings back to development mode
- Legacy-Id: 17614
2020-04-09 16:26:04 +00:00
Henrik Levkowetz e0e191a6f7 Set version info to release version 6.126.0 before branching.
- Legacy-Id: 17612
2020-04-09 16:25:40 +00:00
Ole Laursen b8b1b67e6d Improve error handling when editing in the meeting scheduler, add
timeouts and output more error information.
 - Legacy-Id: 17608
2020-04-09 11:23:05 +00:00
Ole Laursen 8cc85e9fc2 Make possible constraint violations purple to make it easier to tell
them apart from the current constraint violations
 - Legacy-Id: 17607
2020-04-09 10:53:44 +00:00
Henrik Levkowetz b143dd407f Merged in ^/branch/dash/automatic-scheduler@17395, which adds groundwor for
upcoming automatic scheduling assistance:

 . Added a management command to create a dummy IETF 999 meeting.

 . Added display of new constraints and joint sessions to agenda builder
   interface.

 . The new timerange, time_relation and wg_adjacent constraints, along with
   the joint_with_groups option, are now reflected in the special requests
   field.  This allows them to be taken into account while scheduling
   sessions.

 . Clarified the wording in the session request form regarding conflicts with
   BOFs.

 . Added support for structured entry and storage of joint sessions in
   meetings:

   - Also adds additional tests for the SessionForm
   - Fixes a javascript error in session requests for non-WG groups,
     that could cause incorrect form behaviour.
   - Expands the tests added in [17289] a bit.

 . Added support for the timerange, wg_adjacent and time_relation constraints.
   This adds three new constraints to the database and relevant UIs:

   - timerange: "This WG can't meet during these timeframes"
   - wg_adjacent: "Schedule adjacent to another WG (directly following,
     no breaks, same room)"
   - time_relation: schedule the two sessions of one WG on subsequent
     days or with at least one day seperation
 - Legacy-Id: 17605
Note: SVN reference [17289] has been migrated to Git commit a227813dc5
2020-04-08 20:41:29 +00:00
Henrik Levkowetz 6f4372f54b Set version info and settings back to development mode
- Legacy-Id: 17602
2020-04-08 16:52:23 +00:00
Henrik Levkowetz a7be276e96 Set version info to release version 6.125.0 before branching.
- Legacy-Id: 17600
2020-04-08 16:52:00 +00:00
Henrik Levkowetz c908d267f4 Merged in [17590] from rcross@amsl.com:
Add support for variable length meetings to secr/meetings app.
 - Legacy-Id: 17597
Note: SVN reference [17590] has been migrated to Git commit 3f6081a5b9
2020-04-08 16:23:39 +00:00
Henrik Levkowetz 5c3c3fff82 Changed the handling of some exceptions during draft submission to give user feedback rather than server 500 responses, in order to deal better with severely malformed drafts.
- Legacy-Id: 17595
2020-04-08 13:12:39 +00:00
Henrik Levkowetz 0df0a87a48 Added a workaround for the current libmagic which quite easily can mischaracterise text/plain documents as text/x-Algol68. Fixes issues #2941 and #2956.
- Legacy-Id: 17594
2020-04-07 18:33:24 +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 1561120c27 Changed the interim session maximum length setting.
- Legacy-Id: 17592
2020-04-07 13:53:51 +00:00
Henrik Levkowetz 5cecc0bee2 Added validation of the duration in interim meeting requests, with settings for min and max duration in settings.
- Legacy-Id: 17591
2020-04-07 10:40:14 +00:00
Ryan Cross 3f6081a5b9 Add support for variable length meetings to secr/meetings app. Commit ready for merge
- Legacy-Id: 17590
2020-04-06 22:54:36 +00:00
Henrik Levkowetz 5f57e59a2b Clarified the standalone XML draft submission requirements, and mentioned the xml2rfc switch to use for v3 sources.
- Legacy-Id: 17589
2020-04-06 20:04:27 +00:00
Henrik Levkowetz 16608059d3 Be more inclusive when displaying call-in links from the Session agenda_note and remote_instructions fields.
- Legacy-Id: 17588
2020-04-03 16:38:29 +00:00
Henrik Levkowetz 353fad160f Changed some fields to raw_id_fields in the MessageAdmin.
- Legacy-Id: 17587
2020-04-03 16:29:54 +00:00
Henrik Levkowetz 47e33a39f4 Added 'Remote instructions' at the top of interim sesssion pages, and made the 'Meeting Details' button available to the group chairs, not only secretariat.
- Legacy-Id: 17586
2020-04-03 13:36:36 +00:00
Henrik Levkowetz 2634ec7bd4 Set version info and settings back to development mode
- Legacy-Id: 17584
2020-04-03 10:05:19 +00:00
Henrik Levkowetz 6c8a376e99 Set version info to release version 6.124.0 before branching.
- Legacy-Id: 17582
2020-04-03 10:04:58 +00:00
Henrik Levkowetz 976c8e6777 Use links instead of buttons for session resources on upcoming meetings page.
- Legacy-Id: 17579
2020-04-03 09:44:16 +00:00
Henrik Levkowetz 5e3ff97d31 Tweaked the group link on 'Upcoming Meetings'.
- Legacy-Id: 17578
2020-04-03 09:32:50 +00:00
Henrik Levkowetz e20e16a0f2 Updated bower-managed static web assets
- Legacy-Id: 17577
2020-04-03 09:24:26 +00:00
Henrik Levkowetz b74ce877f8 Added links to agenda/materials pop-up, materials download, etherpad, jabber room, and webex call-in session for interims on the upcoming meetings page. With the earlier changes from [17555], this fixes issue #2937.
- Legacy-Id: 17576
Note: SVN reference [17555] has been migrated to Git commit e9756d8987
2020-04-03 09:19:34 +00:00
Henrik Levkowetz 5ec243e14f Changed the IPR patent number regex to permit space between country code and serial number, and expanded on the help text for the IPR patent number field.
- Legacy-Id: 17573
2020-04-01 16:50:01 +00:00
Henrik Levkowetz d266a8b02d Added verification of response data to IphoneAppJsonTests
- Legacy-Id: 17572
2020-04-01 15:14:16 +00:00
Henrik Levkowetz 05cd2b9e09 Merged in [17564] from pusateri@bangj.com:
Added interim meetings to agenda.json API. Fixes #2946.
 - Legacy-Id: 17571
Note: SVN reference [17564] has been migrated to Git commit c2b40c3da8
2020-04-01 14:21:34 +00:00
Henrik Levkowetz 98fab6c05b Merged in [17562] from jennifer@painless-security.com:
Add tooltips with doc name to 'updates' and 'obsoletes' links. Fixes #2866;
 - Legacy-Id: 17569
Note: SVN reference [17562] has been migrated to Git commit 2d6179c1a5
2020-03-31 13:03:15 +00:00
Tom Pusateri c2b40c3da8 Add interim meetings to agenda.json API. Fixes #2946. Commit ready for merge.
- Legacy-Id: 17564
2020-03-31 04:39:00 +00:00
Jennifer Richards 2d6179c1a5 Add tooltips with doc name to "updates" and "obsoletes" links. Fixes #2866; Commit ready for merge.
- Legacy-Id: 17562
2020-03-30 20:22:05 +00:00
Henrik Levkowetz 7084e6e662 Merged in [17557] from fenton@bluepopcorn.net:
Provide more consistent links to people pages. Fixes #2918.
 - Legacy-Id: 17561
Note: SVN reference [17557] has been migrated to Git commit b9c5152714
2020-03-30 20:07:25 +00:00
Ole Laursen fa9b19e3a8 When a schedule is read only, only disable the part of the JS that
actually changes things so that the rest is still working
 - Legacy-Id: 17560
2020-03-30 18:16:37 +00:00
Henrik Levkowetz 3b1cb2903b Changed an obsolete document.href() to document.get_href(). Fixes issue #2945.
- Legacy-Id: 17559
2020-03-30 16:22:12 +00:00
Henrik Levkowetz 662df7cd5a Tweaked the upcoming calendar and calendar entries slightly, to render with times first and on two lines on narrow screens.
- Legacy-Id: 17558
2020-03-30 15:15:33 +00:00
Jim Fenton b9c5152714 Provide more consistent links to people pages. Fixes #2918. Commit ready for merge.
- Legacy-Id: 17557
2020-03-28 19:07:40 +00:00
Henrik Levkowetz f86b87e2ed Merged in [17555] from rjsparks@nostrum.com:
Remove the not-quite-working customization widgets from /meeting/upcoming and /meeting/past. Simplify those views. Correct the list of sessions on those pages when one interim has more than one session. Fixes #2938. Partially addresses #2937.
 - Legacy-Id: 17556
Note: SVN reference [17555] has been migrated to Git commit e9756d8987
2020-03-28 15:38:10 +00:00
Robert Sparks e9756d8987 Remove the not-quite-working customization widgets from /meeting/upcoming and /meeting/past. Simplify those views. Correct the list of sessions on those pages when one interim has more than one session. Fixes #2938. Partially addresses #2937. Commit ready for merge.
- Legacy-Id: 17555
2020-03-27 22:47:38 +00:00
Henrik Levkowetz 37f39163d1 Prevent an exception on missing author.email.person when listing author emails.
- Legacy-Id: 17554
2020-03-27 16:14:29 +00:00
Henrik Levkowetz 6fadf18ee9 Set version info and settings back to development mode
- Legacy-Id: 17551
2020-03-27 14:28:17 +00:00
Henrik Levkowetz 4836e9f6ba Set version info to release version 6.123.1 before branching.
- Legacy-Id: 17549
2020-03-27 14:27:44 +00:00
Henrik Levkowetz cb3e565d13 Merged in [17543] from rjsparks@nostrum.com:
Repair construction of group_hierarchy used for the customisation controls at /meeting/upcoming. Fixes #2940.
 - Legacy-Id: 17545
Note: SVN reference [17543] has been migrated to Git commit 8e9d65e7e0
2020-03-26 20:31:26 +00:00
Henrik Levkowetz 464665da93 Merged in [17542] from rjsparks@nostrum.com:
Show calendar entries on /meeting/upcoming in utc. Show end times. Partially addresses #2936.
 - Legacy-Id: 17544
Note: SVN reference [17542] has been migrated to Git commit 43fd1cf0eb
2020-03-26 20:05:54 +00:00
Robert Sparks 8e9d65e7e0 Repair construction of group_hierarchy used for the customisation controls at /meeting/upcoming. Fixes #2940. Commit ready for merge.
- Legacy-Id: 17543
2020-03-26 19:07:10 +00:00
Robert Sparks 43fd1cf0eb Show calendar entries on /meeting/upcoming in utc. Show end times. Partially addresses #2936. Commit ready for merge.
- Legacy-Id: 17542
2020-03-26 16:56:05 +00:00
Henrik Levkowetz eb3e85d5f0 Don't show agenda buttons for Meetecho recordings (after the session concludes) if there isn't a Meetecho UrlResource. Fixes issue #2934
- Legacy-Id: 17540
2020-03-25 21:01:37 +00:00
Henrik Levkowetz 17858beced Merged in [17538] from rjsparks@nostrum.com:
Allow an out-of-area AD assigned as the AD for a WG to approve interim requests for that WG. Fixes #2930.
 - Legacy-Id: 17539
Note: SVN reference [17538] has been migrated to Git commit 35759c2580
2020-03-25 20:17:59 +00:00
Robert Sparks 35759c2580 Allow an out-of-area AD assigned as the AD for a WG to approve interim requests for that WG. Fixes #2930. Commit ready for merge.
- Legacy-Id: 17538
2020-03-25 18:58:17 +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 827ab69705 Merged in [17521] from housley@vigilsec.com:
Improve performance of log.assertion() and log.unreachable()
 - Legacy-Id: 17535
Note: SVN reference [17521] has been migrated to Git commit 333abcab6d
2020-03-24 21:47:59 +00:00
Henrik Levkowetz c3135889b3 Set version info and settings back to development mode
- Legacy-Id: 17531
2020-03-24 17:54:10 +00:00
Henrik Levkowetz 8472516b56 Set version info to release version 6.123.0 before branching.
- Legacy-Id: 17529
2020-03-24 17:53:53 +00:00
Henrik Levkowetz 50bb971fc3 Merged in [17496] from rjsparks@nostrum.com:
Remove the rest of the log.assertions checking that iesg_state existed in places we expected it to.  Removed unnecessary imports.
 - Legacy-Id: 17522
Note: SVN reference [17496] has been migrated to Git commit db5d11ea32
2020-03-23 22:34:03 +00:00
Russ Housley 333abcab6d Improve performance of log.assertion() and log.unreachable()
- Legacy-Id: 17521
2020-03-23 22:02:58 +00:00
Henrik Levkowetz ec6f0aed8d Changed the page for upcoming meetings to show the current IETF meeting for 7 days from its start date, while interims are shown for today and forward. Also changed the upcoming.ics calendar to show future sessions, even if the meeting to which they belong started in the past. This improves on [17518].
- Legacy-Id: 17520
Note: SVN reference [17518] has been migrated to Git commit 0de5a4912a
2020-03-23 18:39:45 +00:00
Ole Laursen e5943f814d Add support for displaying constraint hints when scheduling a task and
for displaying violated constraints in the new schedule editor, with
the old of a new field, ConstraintName.editor_label.

Add support for displaying room capacity violations.

Add support for selecting a session and displaying information about
it similar to the existing scheduling editor.

Add support for sorting unassigned sessions.

Clean up markup and styles a bit, and fix some bugs.

Expand HTML-based test and add JS test that exercises the
Javascript-based functionality.

Switch to using Chrome driver instead of PhantomJS since the HTML
engine in PhantomJS is apparently too old to support the constructs in
the new schema editor.

Add a workaround for LiveServerTestCase clashing with IetfTestRunner
fixture loading.
 - Legacy-Id: 17519
2020-03-23 17:55:36 +00:00
Henrik Levkowetz 0de5a4912a Changed the starting point of display of upcoming meetings to be 7 days before today, rather than today, to let meetings linger a bit in the listing and iCalendar file after the meeting has started. Triggered by an observation from resnick@episteme.net about IETF 107 sessions disappearing from 'upcoming.ics' on meeting week Monday.
- Legacy-Id: 17518
2020-03-23 12:03:00 +00:00
Henrik Levkowetz c6be826113 Merged in [17495] from rjsparks@nostrum.com:
Remove log.assertion that was checking that we covered the edges when we changed documents to always have an iesg state.
 - Legacy-Id: 17517
Note: SVN reference [17495] has been migrated to Git commit f2b106cf8c
2020-03-23 11:16:19 +00:00
Henrik Levkowetz 970248a3d6 Merged in [17494] from rjsparks@nostrum.com:
Use current email addresses when we have them when listing document authors. Fixes #1902.
 - Legacy-Id: 17516
Note: SVN reference [17494] has been migrated to Git commit 8583a0a098
2020-03-22 23:55:49 +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 81cefbd859 Merged in [17492] from rcross@amsl.com:
On session request form make Special Requests field smaller and display 200 character limit. Fixes #2875.
 - Legacy-Id: 17514
Note: SVN reference [17492] has been migrated to Git commit a99c37cd47
2020-03-22 23:00:55 +00:00
Henrik Levkowetz 79c3182da8 Merged in [17491] from rcross@amsl.com:
Prevent use of capital letters in group acronym. Fixes #2709.
 - Legacy-Id: 17513
Note: SVN reference [17491] has been migrated to Git commit 3969d6c931
2020-03-22 22:25:38 +00:00
Henrik Levkowetz 02dd05a622 Merged in [17490] from rjsparks@nostrum.com:
Basic regex validation on community rule entry form. Fixes #2928.
 - Legacy-Id: 17512
Note: SVN reference [17490] has been migrated to Git commit 70a20b3e8c
2020-03-22 21:44:31 +00:00
Henrik Levkowetz 98028f8276 Merged in [17489] from rcross@amsl.com:
Remove redundant URL secr/groups/search because search page is available here secr/groups. Resolves issue with Add link. Fixes #2708.
 - Legacy-Id: 17511
Note: SVN reference [17489] has been migrated to Git commit 5d3601334e
2020-03-22 21:16:16 +00:00
Henrik Levkowetz e91e9092a8 Merged in [17488] from rcross@amsl.com:
Remove drafts secretariat tool because this functionality is now provided by the core Datatracker. Moved ID reports to proceedings tool. Fixes #1655.
 - Legacy-Id: 17508
Note: SVN reference [17488] has been migrated to Git commit 5649bfdfd1
2020-03-22 18:43:57 +00:00
Henrik Levkowetz d2eedb4a94 Merged in [17487] from rjsparks@nostrum.com:
Let chairs know what to do after material submission uploads have been cut off. Fixes #2887.
 - Legacy-Id: 17507
Note: SVN reference [17487] has been migrated to Git commit ebdadf38f2
2020-03-22 18:13:11 +00:00
Russ Housley 36fdc2dd5f Improve performance of many document list pages
- Legacy-Id: 17505
2020-03-22 16:26:43 +00:00
Henrik Levkowetz d78379054c Merged in [17484] from valery@smyslov.net:
When requesting a new WG session, and retrieving information about the previous session, look back to the previous time the group met, instead of simply checking the previous IETF meeting and maybe not finding any information to retrieve.
 - Legacy-Id: 17504
Note: SVN reference [17484] has been migrated to Git commit 88f11669fd
2020-03-22 15:19:23 +00:00
Henrik Levkowetz 19fcb37b31 Merged in [17483] from peter@akayla.com:
Changed so that only WGs/RGs can be closed, per RJS.  Fixes #1578.
 - Legacy-Id: 17503
Note: SVN reference [17483] has been migrated to Git commit 4737f0588e
2020-03-22 13:01:30 +00:00