Commit graph

12112 commits

Author SHA1 Message Date
Robert Sparks c7d98a1cdb
chore: remove stale commented codeblock (#5794) 2023-06-09 16:56:09 -05:00
Guillaume Ayoub 2e5c9ed160
fix: use v59.0 options for WeasyPrint (#5713) 2023-06-09 12:54:35 -05:00
Paul Selkirk 0567b3dea2
fix: /meeting/materials splits out named sessions the same way /meeting/proceedings does (#5715)
* fix: /meeting/materials splits out named sessions the same way /meeting/proceedings does

* test: Test separation of named sessions in the materials
2023-06-09 12:41:01 -05:00
Lars Eggert fbe876b758
fix: Produce correct HTML for the meeting requests table (#5712)
Co-authored-by: Robert Sparks <rjsparks@nostrum.com>
2023-06-08 15:39:55 -05:00
Jennifer Richards d18db5bb76
feat: Improve submission status UX during validation (#5742)
* feat: Quietly check submission status before reloading

* chore: Remove misleading "time since" display

* feat: Back off submission status poll frequency

* chore: Fix code comment
2023-06-08 15:15:27 -05:00
Lars Eggert 818f0a9938
fix: Add definition of DOWNREF from RFC3967 (#5789)
Fixes #2788, #5759
2023-06-08 15:14:14 -05:00
Paul Selkirk 2ca4f7beaf
fix: Improve validation for form that accepts pasted email feedback (#5761)
* test: Test paste-email-feedback-form with missing headers and/or body

* fix: Don't crash if paste-email-feedback-form doesn't contain a Subject line

* test: Test that paste-email-feedback-form requires headers

* fix: If email headers are missing, prompt the user to try again

* chore: retrigger PR checks
2023-06-08 13:56:24 -05:00
Lars Eggert cc35a2d678
fix: Don't add "essential people" to session requests by default (#5734)
* fix: Don't add "essential people" to session requests by default

Because since #5169 we ask they not be included anymore. (This was part of my
original change but I guess I forgot to add it to the PR...)

* Don't import Person
2023-06-08 13:48:53 -05:00
Paul Selkirk d2406d8420
fix: tweak Nomination.share_nominator label text (#5775)
* fix: tweak Nomination.share_nominator label text

"Share nominator name with candidate" was confusing, because it's
imperative, where it's really intended to be permissive - it's okay to
share with the candidate.

* chore: add migration for label text
2023-06-08 13:47:46 -05:00
Robert Sparks fcfe54baaf
Merge pull request #5766 from pselkirk/fix-4771
fix: Don't use an uninitialized variable (#4771)
2023-06-08 13:36:44 -05:00
Robert Sparks dfc5cc4b4b
Merge pull request #5768 from pselkirk/cleanup-feedback-email
fix: Remove leading 32 spaces in feedback email rendering
2023-06-08 13:36:23 -05:00
Robert Sparks 88a878fd61
Merge pull request #5774 from rjsparks/dont_come_around_here_no_more
chore: remove unused mgmt commands
2023-06-08 13:35:50 -05:00
Robert Sparks d6da25a448
fix: better caching of search results (#5782) 2023-06-07 16:25:19 -05:00
Robert Sparks 0864b73aab
fix: use slowpages to cache doc/active (#5781) 2023-06-07 15:35:17 -05:00
Robert Sparks ccf82bbd17
doc: update about.html for version 11 (#5770) 2023-06-06 18:14:29 -05:00
Robert Sparks 18941434c3
chore: remove unused mgmt commands 2023-06-06 16:12:35 -05:00
Jennifer Richards 9cee31613b
chore: Set CSRF_TRUSTED_HOSTS to localhost for dev (#5771) 2023-06-06 15:58:06 -05:00
Jennifer Richards edd72826e6
fix: Prevent errors when memcached object size is exceeded (#5769)
* feat: Subclass PyMemcacheCache to tolerate too-large object errors

* fix: Use LenientMemcacheCache to prevent search errors

* fix: Re-raise errors other than "object too large"
2023-06-06 14:35:41 -05:00
Paul Selkirk 4748a830fe fix: Remove leading 32 spaces in feedback email rendering 2023-06-06 00:07:49 -04:00
Paul Selkirk 1ad2e6bd59 fix: Don't use an uninitialized variable (#4771) 2023-06-05 23:15:02 -04:00
Robert Sparks 3fc77633a7
fix: protect htmlize and opengraph templates from fake dochistory objects (#5764) 2023-06-05 20:19:25 -05:00
Nicolas Giard cfaf966492
fix: add internal static.ietf.org var for pdfized render (#5765) 2023-06-05 20:18:35 -05:00
Nicolas Giard 7d04a71a94
chore: update .gitignore 2023-06-05 18:10:50 -04:00
Robert Sparks 4a062f5250
Merge pull request #5757 from ietf-tools/release
ci: merge release commit and patch back into main
2023-06-05 08:14:03 -05:00
Jennifer Richards d33a6f3c0c
fix: Handle missing date fields in XML submissions (#5744)
* refactor: Eliminate _construct_creation_date helper

* fix: Use xml2rfc method for filling in missing date fields

* fix: Set options.date for xml2rfc writers

* test: Test handling of missing date element/fields
2023-06-02 14:40:52 -05:00
Jennifer Richards 5d467d996c
Merge pull request #5739 from jennifer-richards/coop_setting
chore: Use permissive cross-origin-opener-policy setting
2023-06-01 18:44:00 -03:00
Jennifer Richards c8f9739604
Merge pull request #5738 from ietf-tools/main
chore: Merge main into feat/django4
2023-06-01 17:32:27 -03:00
Jennifer Richards 2d661a1a5f
chore: Use permissive cross-origin-opener-policy setting 2023-06-01 17:12:15 -03:00
Jennifer Richards e3d16bc8e6
feat: Use distinct event desc for drafts received via api_submit (#5735) 2023-06-01 11:15:57 -05:00
Jennifer Richards 5a2708283b
feat: Extract document creation date from XML draft (#5733)
* fix: Extract document creation date from XML draft

* test: Fix test
2023-06-01 09:58:55 -05:00
Jennifer Richards 8d4780d304
fix: Ignore failure to extract text draft title unless it is needed (#5730)
* fix: Accept a Path as source for a PlaintextDraft

* fix: Guard against failure to extract PlaintextDraft title

* fix: Ignore failure to extract text draft title unless it is needed
2023-06-01 09:39:59 -05:00
Robert Sparks 36b847b57a
fix: explain what is not counted in the meeting request summary (#5728) 2023-06-01 09:32:11 -05:00
Jennifer Richards 3391166aaf
fix: Return NomComs, not Groups, from active_nomcoms filter (#5726)
* fix: Return NomComs, not Groups, from active_nomcoms filter

* fix: deduplicate and order nomcoms in active_nomcoms filter
2023-05-31 15:05:59 -05:00
Robert Sparks c12f810dd4
test: ignore acceptable order change (#5727)
* test: ignore acceptable order change

* fix: address review comments
2023-05-31 15:04:51 -05:00
Nicolas Giard 1ec403dc8c
feat: disable login button on submit (#5718)
* feat: disable login button on submit

* refactor: move login js into its own file
2023-05-31 14:58:09 -05:00
Lars Eggert e5dcc1667c
fix: Fix overscrolling of rfc2html pre tags with new fonts (#5709) 2023-05-31 12:39:31 -05:00
Lars Eggert 48dce85cac
fix: Remove "purpose" column, show purpose as badge (#5721)
Fixes #5711
2023-05-31 12:37:21 -05:00
Jennifer Richards 8cd09ab3be
Revert "fix: Return NomComs, not Groups, from active_nomcoms filter"
This reverts commit e121b5dd50.
2023-05-31 14:13:46 -03:00
Jennifer Richards e121b5dd50
fix: Return NomComs, not Groups, from active_nomcoms filter 2023-05-31 12:36:49 -03:00
Jennifer Richards 3015359323
test: Use QuerySetAny alias for QuerySet type checks 2023-05-31 11:09:08 -03:00
Jennifer Richards 1922a6066e
Merge pull request #5700 from ietf-tools/main
chore: main -> django4
2023-05-31 10:59:09 -03:00
Lars Eggert f8e1899108
fix: Don't include modal headings in right-hand nav menu (#5710)
Fixes #5701
2023-05-30 11:56:17 -05:00
Jennifer Richards d595aaced0
fix: Skip title validation if only XML uploaded (#5694) 2023-05-26 09:28:16 -05:00
Nicolas Giard 0a11892414
chore: use variable for static.ietf.org references (#5692) 2023-05-25 17:23:18 -05:00
Lars Eggert 5f4dfb87b6
fix: Use new fonts for PDFization (#5688) 2023-05-25 09:43:15 -05:00
Robert Sparks 66f1ba3088
fix: reflect publication of rfc9389 (#5685) 2023-05-25 08:28:13 -05:00
Paul Selkirk 65bd689daa
fix: make chat room an overrideable property of Session (#5681)
* fix: make chat room an overrideable property of Session

* test: validate that /meeting/session/<sessionid>/edit shows and sets chat room

* test: validate Session.chat_room_name
2023-05-24 10:26:19 -05:00
Robert Sparks 4012a213c5
feat!: Version 11 based on Django 4 2023-05-23 11:25:28 -05:00
Robert Sparks 6178519d43
fix: optimize queries for DocumentChangesFeed (#5675) 2023-05-23 10:14:13 -05:00
Jennifer Richards e973672c25
Merge branch 'feat/django4' into dev/merge-main-5679 2023-05-23 12:11:17 -03:00
Jennifer Richards ceb41e6106
test: Check that error is displayed on decode failure 2023-05-23 11:30:35 -03:00
Jennifer Richards 5f0e1a524b
chore: Display errors if nomcom private key encoding fails 2023-05-23 11:30:14 -03:00
Jennifer Richards 58182fd7f6
test: Fix selectors in selenium tests 2023-05-19 17:54:24 -03:00
Jennifer Richards 2a29be5d6a
test: Remove unused import 2023-05-19 16:23:42 -03:00
Jennifer Richards 2eaea55ce8
chore: Move log out suppression to settings,py 2023-05-19 15:25:35 -03:00
Jennifer Richards 579d187f0c
chore: Suppress deprecation warning in oidc_provider 2023-05-19 15:20:09 -03:00
Jennifer Richards bc3dcb6c03
test: Fix another test broken by changing "Sign out" to a form 2023-05-19 15:11:59 -03:00
Jennifer Richards 36fe6a0206
fix: Store nomcom private key in session as str
bytes are incompatible with JSONSerializer
2023-05-19 14:57:27 -03:00
Jennifer Richards 93e9f8e850
fix: Do not set update_fields when saving new instance 2023-05-19 14:36:08 -03:00
Jennifer Richards be25fb954b
test: Ignore menu bar when counting "submit" buttons
(the "Sign out" link is now a submit button)
2023-05-19 14:18:02 -03:00
Jennifer Richards 102a612857
test: POST instead of GET for logout tests 2023-05-19 14:12:12 -03:00
Jennifer Richards 37a6521879
test: Form is r.context["form"], not r["form"] 2023-05-19 13:37:39 -03:00
Jennifer Richards 1eafdca65c
chore: Replace django.utils.timezone.utc with dateutil.timezone.utc 2023-05-19 13:23:38 -03:00
Jennifer Richards fdc074b313
test: Use new signature for assertFormError 2023-05-19 13:23:07 -03:00
Jennifer Richards da8717f0e9
chore: Set chunk_size on QuerySet.iterator() 2023-05-19 13:10:06 -03:00
Jennifer Richards 7ae0576a44
style: Apply Black style to methods in review.utils 2023-05-19 13:08:47 -03:00
Jennifer Richards b6a791511f
chore: Use DjangoDivFormRenderer to opt in to new default 2023-05-19 12:52:26 -03:00
Jennifer Richards 2d6681d78c
refactor: logout via GET is deprecated, use POST 2023-05-19 11:42:43 -03:00
Jennifer Richards b06fc7acc4
chore: Suppress warning about CryptPasswordHasher 2023-05-19 11:28:58 -03:00
Jennifer Richards 19abdfe5e7
refactor: Inject tests without using deprecated extra_tests 2023-05-19 11:09:05 -03:00
Jennifer Richards 25b9976460
chore: Switch to JSONSerializer
PickleSerializer is deprecated
2023-05-18 18:37:25 -03:00
Jennifer Richards 39a854fa1a
fix: Use arbitrary date in the past instead of datetime.min 2023-05-18 18:36:38 -03:00
Robert Sparks d0f8e1148a
chore: keep csp config in sync with production configuration (#5656) 2023-05-18 16:29:30 -05:00
Robert Sparks 34d714c4ec
chore: remove gather from CRSF_TRUSTED_ORIGINS (#5657) 2023-05-18 16:29:18 -05:00
Jennifer Richards c71f44fdb2
chore: Suppress deprecation warning for oidc_provider 2023-05-18 18:00:46 -03:00
Jennifer Richards 6df5d4c67f
chore: Suppress CICharField deprecation warning 2023-05-18 18:00:46 -03:00
Jennifer Richards 65ea426793
fix: Add changed fields to update_fields in Model.save() methods 2023-05-18 18:00:45 -03:00
Jennifer Richards 171a5bec73
chore: Update setuptools version and suppress warnings
pkg_resources warning is caused by a few packages
(django-simple-history. django-widget-tweaks, etc). The datetime_safe
warning is in tastypie, as indicated. The others are deprecated
settings we already have tickets for.
2023-05-18 18:00:45 -03:00
Jennifer Richards 55fb502179
test: Iterate over template.nodelist in apply_template_test 2023-05-18 15:18:02 -03:00
Jennifer Richards 47e2b0b027
fix: Prevent use of FK relation before review request is saved 2023-05-18 15:18:02 -03:00
Jennifer Richards c26c9c71e4
chore: Switch to PyMemcacheCache backend 2023-05-18 15:18:01 -03:00
Jennifer Richards cdec6cc0aa
Merge pull request #5655 from ietf-tools/main
chore: Merge main into feat/django4
2023-05-18 15:15:42 -03:00
Robert Sparks f9322391dd
fix: change trac.ietf.org links to what they redirect to now (#5651) 2023-05-18 08:31:54 -05:00
Jennifer Richards cbabb864c2
test: Use issubclass, not isinstance, to ID view_class 2023-05-17 16:09:56 -03:00
Jennifer Richards d519bca12c
test: Fix ignore_pattern so Redirect/TemplateViews are ignored again 2023-05-17 15:59:28 -03:00
Eric Vyncke 2a27a2bffc
feat: Can we provide a better review assignment email subject. #3760 (#5415)
* Specific email subject + requester/secretary in cc

* Send the deadline in the subject

* Use unicode rather than ASCII for reviewer's name

* More log info in the test

* Fix the closing parenthesis

* Fix the email test  when review is assigned

* chore: address review comment

---------

Co-authored-by: Robert Sparks <rjsparks@nostrum.com>
2023-05-17 12:23:20 -05:00
Jennifer Richards f85978fe24
chore: Disable L10N localization 2023-05-17 12:52:34 -03:00
Robert Sparks ab01e72ada
fix: tweak submit instructions to match very recent changes to the UI (#5646) 2023-05-17 09:25:17 -05:00
Russ Housley ef598a6dae
fix: Update I-D submission instructions. Fix #5264 (#5407)
* Fix: Update I-D submission instructions. Fix #5264

* Resolve comments in PR 5407
2023-05-17 09:17:30 -05:00
Jennifer Richards 8cf609bfa9
refactor: Implement require_api_key with functools.wraps
The @decorator mechanism does not seem to work with @method_decorator
in Django 4.0, have not tracked down why.
2023-05-17 09:45:07 -03:00
Robert Sparks 38bab2575e
fix: better htmlized access to uncurrent revisions (#5639) 2023-05-16 17:08:18 -05:00
Jennifer Richards 223c679942
chore: Add no-op migration to satisfy Django bookkeeping changes 2023-05-16 17:48:44 -03:00
Nicolas Giard 12f1cb200a
feat: set fonts for htmlized doc template (#5636) 2023-05-16 14:56:36 -05:00
Jennifer Richards 88452a2db1
chore: Add USE_DEPRECATED_PYTZ to settings.py 2023-05-16 16:20:51 -03:00
Jennifer Richards 76fa01b817
chore: Suppress deprecation warning for oidc_provider AppConfig 2023-05-16 13:21:12 -03:00
Jennifer Richards 374c1a40be
chore: Use new format for CSRF_TRUSTED_ORIGINS setting 2023-05-16 13:14:48 -03:00
Jennifer Richards 7475aa01b6
Merge pull request #5634 from ietf-tools/main
chore: Merge main into feat/django4
2023-05-16 13:06:49 -03:00
Paul Selkirk 37118a623a
fix: change api_submission blackout message to match web ui (#5623)
* test: api_submission returns an error in the blackout period

* fix: change api_submission blackout message to match web ui (#5350)
2023-05-16 09:43:20 -05:00
Robert Sparks c16a9d6cb5
fix: better area links from the menus (#5620)
* fix: better area links from the menus

* chore: remove debugging line
2023-05-15 16:41:42 -05:00
Robert Sparks 6fd9a39df8
chore: update test name fixuture (#5627) 2023-05-15 16:38:11 -05:00
Nicolas Giard 3d6ca172ce
feat: change fonts to Inter and Noto Sans Mono (#5628) 2023-05-15 16:37:00 -05:00
Jennifer Richards b714bfb083
chore: Put widgets from django-password-strength into ietfauth 2023-05-15 17:55:11 -03:00
Robert Sparks b4a692fac1
fix: show session times in meeting timezone when announcing scheduling (#5622) 2023-05-15 14:55:37 -05:00
Robert Sparks 7dbac2067f
fix: show meeting timezone when editing sessions (#5619)
* fix: show meeting timezone when editing sessions

* chore: run black on session_filters
2023-05-15 14:50:10 -05:00
Jennifer Richards 329fa26ee0
chore: Remove abandoned django-password-strength package 2023-05-15 15:29:00 -03:00
Robert Sparks 962af9feb3
fix: tweak removal of document info order (#5624)
* fix: tweak removal of document info order

* chore: add copyright line

* chore: correct dependencies
2023-05-15 13:20:59 -05:00
Jennifer Richards 0319f35e0f
test: Use Django 3.2 HttpResponse.headers API 2023-05-15 13:01:59 -03:00
Peter Yee 369fe0dfe5
fix: remove order from DocumentInfo as apparently unneeded (fixes #5245) (#5417)
* fix: remove order from DocumentInfo as apparently unneeded (fixes #5245)

Fixes #5245. Includes migration, however I did not test the reverse.

* Merge branch 'main' into pr/Spectre17/5417

* chore: Renumber migrations

* Revert "Merge branch 'main' into pr/Spectre17/5417"

This reverts commit 77b4a46f84e9ece6778dec6e8127aedad71c2625.

---------

Co-authored-by: Jennifer Richards <jennifer@staff.ietf.org>
Co-authored-by: Robert Sparks <rjsparks@nostrum.com>
2023-05-15 10:35:54 -05:00
Jennifer Richards 22bf508922
test: Suppress notices from mypy involving factory types 2023-05-15 12:20:02 -03:00
Jennifer Richards cbb946455f
test: Remove unused assignment that caused a mypy error 2023-05-15 11:25:38 -03:00
Jennifer Richards c840d53cb2
test: Suppress mypy error on import of _lazy_re_compile() 2023-05-15 11:04:29 -03:00
Jennifer Richards 68eb685382
test: Use django_stubs_ext.QuerySetAny for isinstance() checks
mypy complains if QuerySet is used because it uses a parameterized
generic type.
2023-05-13 10:05:33 -03:00
Jennifer Richards 7ad74c99e4
refactor: import from django.urls instead of django.conf.urls 2023-05-12 20:29:11 -03:00
Jennifer Richards 00f3f01e7e
fix: {% endif %}, not {% end %} 2023-05-12 18:52:35 -03:00
Jennifer Richards 872bdef06b
refactor: Use gettext instead of deprecated ugettext 2023-05-12 18:37:01 -03:00
Jennifer Richards 79b749fcdf
style: Restyle method using Black 2023-05-12 18:36:05 -03:00
Jennifer Richards 21004864b0
refactor: Replace deprecated is_safe_url with new name 2023-05-12 18:35:12 -03:00
Jennifer Richards 32ed1b7c4a
refactor: Replace deprecated {% ifequal %} with {% if %} 2023-05-12 18:33:15 -03:00
Jennifer Richards bee7e11360
chore: Remove accidental import from settings.py 2023-05-12 18:29:39 -03:00
Jennifer Richards b5d9e9b14c
refactor: Replace deprecated django.utils.http.urlquote 2023-05-12 18:27:51 -03:00
Jennifer Richards 075aed7e9a
refactor: Replace deprecated request.is_ajax() 2023-05-12 18:26:56 -03:00
Jennifer Richards 9d21196adc
chore: Add DEFAULT_AUTO_FIELD to settings.py 2023-05-12 18:03:28 -03:00
Jennifer Richards aa4c04126c
chore: Use re_path() instead of url(), its deprecated synonym, 2023-05-12 17:09:32 -03:00
Jennifer Richards d0cb46d320
fix: Use TruncDate instead of QuerySet.extra() 2023-05-12 15:47:37 -03:00
Jennifer Richards ccb7d666ce
chore: Remove add-django-http-cookie-value-none.patch
Fixed upstream
2023-05-12 15:47:37 -03:00
Jennifer Richards 1419a0e7c8
test: Remove ScheduleEditTests.testUnschedule (#5607)
* test: Remove ScheduleEditTests.testUnschedule

Has been disabled under Django 2. Simple refactoring does not make it
functional under Django 3. Probably because we know that Selenium does
not handle HTML5 drag-and-drop well. Discarding until we move to a
better JS testing framework.

* test: Remove unused imports
2023-05-12 13:18:15 -03:00
Jennifer Richards 96396b833c
Merge pull request #5611 from ietf-tools/main
chore: merge main into feat/django4
2023-05-12 11:05:57 -03:00
Robert Sparks 6b4115a52b
test: ignore irrelevant difference in list element order (#5609) 2023-05-12 09:03:13 -05:00
Robert Sparks 1afdb0b7cc
fix: show htmlized views of draft revisions without DocHistory (#5599)
* fix: show htmlized views of draft revisions without DocHistory

* fix: handle htmlized views of rfcs corectly
2023-05-11 17:15:01 -05:00
Jennifer Richards 264ff60cd2
Merge pull request #5601 from jennifer-richards/django4
chore: Upgrade to Django 3.0
2023-05-11 11:04:36 -04:00
Robert Sparks 6089d4726c
chore: remove debugging file write from test (#5598) 2023-05-11 09:37:02 -05:00
Jennifer Richards 0d070597b4
style: Double backslashes in strings
Not sure why, but if I change the DeprecationWarning filter to
"error", I get a SyntaxError from the \[ because it is an invalid
escape sequence. Not sure why that change triggers it, but
"\[" and "\\[" are the same, so this is a no-op.
2023-05-10 19:21:47 -03:00
Jennifer Richards eee145ee67
fix: Explicitly order GroupTypeNames in active_group_types
Relying on Meta.ordering to order querysets involving GROUP BY queries
is deprecated and will be dropped in Django 3.1.
2023-05-10 19:19:39 -03:00
Jennifer Richards 406ba7bf0b
style: Apply Black style to active_group_types() view 2023-05-10 19:18:30 -03:00
Jennifer Richards e6259a5218
chore: Remove filter on staticfiles DeprecationWarning 2023-05-10 18:52:52 -03:00
Jennifer Richards 1015cf83f8
fix: Finish refactoring LiaisonModelForm subclasses without BetterModelForm 2023-05-10 18:47:36 -03:00
Jennifer Richards 4f443cc445
refactor: Explicitly allow name=None for a couple of views 2023-05-10 17:16:20 -03:00
Jennifer Richards 163479bc06
refactor: Replace obsolete staticfiles template lib with static 2023-05-10 17:12:34 -03:00
Jennifer Richards 85d0934ba0
refactor: Refactor LiaisonForm without BetterModelForm 2023-05-10 17:03:31 -03:00
Jennifer Richards a75dbd4f40
chore: Remove accidentally reverted removal of form_utils app 2023-05-10 16:50:42 -03:00
Jennifer Richards 57026bbb5f
Revert "chore: Remove django-cookie-delete-with-all-settings.patch"
This reverts commit 2cf2a3dee6.
2023-05-10 15:55:25 -03:00
Jennifer Richards 69eb6340fd
test: Do not misuse django.conf.settings for HTML validation params 2023-05-10 15:41:36 -03:00
Robert Sparks f8113cb862
fix: close open things (#5593)
* fix: close open things

* fix: clean up test created files

* fix: remove one close too many
2023-05-10 11:19:34 -05:00
Jennifer Richards ed571ae50b
chore: Rename DB engine to drop the deprecated "_psycopg2" suffix 2023-05-10 12:40:37 -03:00
Jennifer Richards a0f6cdb661
feat: Process uploaded submissions asynchronously (#5580)
* fix: Use relative URL for submission status link

* refactor: Refactor/rename process_uploaded_submission async task

* feat: Add async task to process but not accept a submission

* feat: Replace upload_submission() with an async implementation (WIP)

* fix: Do not put Submission in "uploaded" state if an error occured

* refactor: Improve text/XML draft processing flow

* feat: Extract authors from text in async processing

* fix: Fix call signatures and abort submission on failed validation

* feat: Validate submission name format

* fix: Correctly validate emails from text submission

* fix: Clean up submission validation

* fix: Better display errors on upload_submission page

* feat: Reload submission status page when awaiting validation

* test: Fix call signatures; remove unused imports

* chore: Add type hint

* test: Update tests to match renamed task

* fix: Fix typo in error message

* test: Fix failing Api- and AsyncSubmissionTests

* Rename process_uploaded_submission to process_and_accept_...
* Remove outdated tests

Does not yet test new behavior.

* refactor: Break up submission_file() helper

* test: Refactor tests to run the async processing (wip)

* test: Drop test of bad PDF submission

The PDF submission field was removed, so no need to test it.

* test: Update more tests

* test: Bring back create_and_post_submission() and fix more tests

* fix: Drop to manual, don't cancel, on revision inconsistency

Fixes remaining failing SubmitTest tests

* style: Restyle upload_submission() with black

* test: Verify that async submission processing is invoked on upload

* test: Bring back old do_submission and fix tests

Properly separating the upload and async processing stages of submission
is a bigger refactoring than will fit right now. This better exercises
the submission pipeline.

* fix: Accept only XML for API submissions

* test: Test submission processing utilities

* feat: Improve status display for "validating" submissions

* chore: Remove obsolete code

* test: Update test to match amended text

---------

Co-authored-by: Robert Sparks <rjsparks@nostrum.com>
2023-05-09 15:21:46 -05:00
Jennifer Richards da168395fc
refactor: Replace deprecated smart_text with smart_str 2023-05-09 15:23:33 -03:00
Jennifer Richards 07e26dd52e
refactor: Replace deprecated force_text with force_str 2023-05-09 15:21:50 -03:00
Jennifer Richards dcb211fbb3
Merge remote-tracking branch 'origin/main' into django4 2023-05-09 14:26:47 -03:00
Jennifer Richards 2cf2a3dee6
chore: Remove django-cookie-delete-with-all-settings.patch
Patch no longer applies. Needed until Django 4.2.1, so bring it back
if we deploy something earlier than that to production.
2023-05-09 11:09:41 -03:00
Jennifer Richards 6d4d09542f
fix: Replace obsolete curry() with functools.partialmethod() 2023-05-08 22:55:15 -03:00
Robert Sparks 400a830661
chore: add bibxml-ids dir to container build. (#5590) 2023-05-08 15:16:31 -05:00
Jennifer Richards 9fda268853
fix: Replace available_attrs helper (dropped by Django 3.0) 2023-05-08 15:19:33 -03:00
Robert Sparks 2b1f248e36
fix: add a link to the simplified volunteer view (#5583) 2023-05-08 10:29:18 -05:00
Robert Sparks 3bbd5149de
feat: Easy extraction of qualified volunteer list for nomcom chair (#5578)
* feat: Easy extraction of qualified volunteer list for nomcom chair

* fix: tune test setup to years where eligibility calculations can return nonempty

* chore: revert unintended change

* feat: default string when no affiliation is provided
2023-05-05 15:33:47 -05:00
Eliot Lear 8af8a91c20
fix: allow ISE to initiate conflict review (#5570)
* ISE may initiate conflict review

Add ISE to list of those roles who can initiate a conflict review.

* fix: improve conditional for conflict review action. Add tests.

* chore: fix comment typo

---------

Co-authored-by: Robert Sparks <rjsparks@nostrum.com>
2023-05-03 14:04:09 -05:00
Jennifer Richards 6986cae1bf
fix: Listen for show.bs.modal on document (#5565)
Avoids losing the listener when DOM is changed dynamically.
2023-05-02 13:50:38 -05:00
Jennifer Richards db2f7362c5
feat: Include support address in error message 2023-04-27 17:51:19 +00:00
Jennifer Richards b691cb4a9f
fix: Avoid 500 error creating account when User.person is None 2023-04-26 18:34:49 +00:00
Lars Eggert 732cecf0e9
fix: Re-enable interim series "add session" button (#5485)
Fixes #5478

Co-authored-by: Nicolas Giard <github@ngpixel.com>
2023-04-25 16:30:06 -05:00
Robert Sparks 5f36905515
fix: reorder new nomcom migration (#5534) 2023-04-25 11:59:41 -05:00
Jennifer Richards 09ff9c6ced
refactor: Tie Meetecho resources to Session pk (#5281)
* feat: Use session.id to specify session for api_set_session_video_url

* feat: Use session.id to specify session for api_upload_bluesheet

* refactor: Add audio/video stream and onsite tool URLs to Session model

* refactor: Get onsite tool/stream URLs for agenda from Session

* refactor: Use Session methods for onsite tool/stream a few more places

* refactor: Move hard-coded meetecho URLs into settings.py

* feat: Add has_onsite_flag to Session

* chore: Set has_onsite_tool for sessions that had meetecho UrlResources

* fix: Only show onsite tool URLs when Session.has_onsite_tool is True

* test: Update test_api_upload_bluesheet to test deprecated version

* fix: Fix test failure in api_upload_bluesheet view

* test: Add test of new api_upload_bluesheet view

* style: Apply Black style to test_api_upload_bluesheet

* fix: Fix test failures in api_upload_bluesheet()

* test: Update test_api_set_session_video_url to test deprecated version

* fix: Fix test failure in api_set_session_video_url view

* test: Add test of new api_set_session_video_url view

* style: Apply Black styling to new test

* fix: Fix test failures in api_set_session_video_url view

* test: Fix test_meeting_agenda; set has_onsite_tool in SessionFactory

* feat: Add has_onsite_tool to Session list in admin

* feat: Add has_onsite_tool flag to SessionDetailsForm

* feat: Add has_onsite_tool flag to sreq

* feat: Show has_onsite_tool flag on secr view for a submitted request

* feat: Only prompt for has_onsite_tool in sreq for non-wg type groups

* fix: Clean up styling of sreq view a bit

* chore: Renumber migrations
2023-04-23 18:15:01 -05:00
Rich Salz 8c98abb537
fix: Edit "You've been nominated" text (#4641) (#5357)
Mention that the schedule is posted to ietf-announce and give a link
to subscribe to that.  Use vague wording to handle all cases.

Also add reminder when to not uncheck the "send automatically" box.
2023-04-23 18:07:27 -05:00
Jennifer Richards 372891194e
feat: Move IESG agenda items from filesystem to DB (#5366)
* feat: Add TelechatAgendaContent model and related support

* feat: Add UI for managing TelechatAgendaContents

* refactor: Rename _view view to _manage

* feat: Add a view to dump the TelechatAgendaContent as text/plain

* refactor: Point agenda_data() helpers at content in the DB

* refactor: Replace references to settings URLs/paths with new plumbing

* chore: Remove now-obsolete settings from settings.py

* feat: Link to telechat_agenda_content_manage view from iesg agenda

* fix: Use correct view name

* feat: Link from agenda content management page to IESG agenda view

* chore: Create resources

* chore: Add new names to names.json

* chore: Renumber migration after rebase

* chore: Remove unused import

* fix: Clean up partially removed code

* chore: Add admin model for TelechatAgendaContent

* chore: Simplify __str__ method for TelechatAgendaContent

* test: Add TelechatAgendaContentFactory

* test: Test the fill_in_agenda_administrivia() function

* test: Test that agenda contains action_items content

* test: Test that sensitive agenda links are restricted by role

* test: Test the telechat_agenda_content_view view

* test: Add test of telechat_agenda_content_edit view

* fix: Add type attribute to button to satisfy html validator

* test: Filter TelechatAgendaSectionName to used=True for tests

* test: More thoroughly test for likely(ish) permission errors

* fix: Fix typo in "tablist" role

* test: Test telechat_agenda_content_manage view

* style: Put back newlines at EOF

* chore: Add admin for TelechatAgendaSectionName

* chore: Renumber migrations

* fix: Depend on the correct migration

Forgot to update the number, but was also depending on the wrong
migration.
2023-04-23 18:05:58 -05:00
Rich Salz 24277f6ff2
fix: Add "empty-list" indicator (#5504) (#5505) 2023-04-23 17:58:40 -05:00
Jennifer Richards c6fbdef6df
fix: Handle integrity violations when confirming email address (#5506)
* fix: Handle integrity violations when confirming email address

* test: Add tests of confirm_new_email view
2023-04-23 17:58:05 -05:00
Robert Sparks a2f1c1f705
chore: update version in primary init (#5495) 2023-04-14 17:43:46 -05:00
Martin Thomson d3f3e1e40a
fix: Remove useless directives for Updates/Obsoletes (#5484)
These only unnecessarily narrow the space available.
See RFC 8996 for an example of where that might matter.
2023-04-14 17:43:25 -05:00
Nicolas Giard 48beabe606
chore: add release 10.0 info in about.html (#5492) 2023-04-13 11:47:46 -05:00
Lars Eggert 0f1a774b79
fix: Unbreak HTMLized table of contents (#5486)
Fixes #5483
2023-04-12 17:34:30 -05:00
Jennifer Richards 716a77a848
fix: Do not try to match None keyword when redirecting to agenda view (#5489) 2023-04-12 17:34:00 -05:00
Robert Sparks 84c1fa195b
feat!: Use postgresql instead of mysqldb (#5482)
BREAKING CHANGE: The underlying database is now postgresql.
2023-04-10 12:47:43 -05:00
Robert Sparks f556d1f6da
Merge remote-tracking branch 'ietf-tools/main' into feat/postgres 2023-04-10 12:20:24 -05:00
Lars Eggert 34482cd100
fix: Long session titles were overlapping the materials buttons (#5454) 2023-04-10 08:58:22 -05:00
Robert Sparks 0f1a09f635
Merge remote-tracking branch 'ietf-tools/main' into feat/postgres 2023-03-31 10:52:45 +09:00
Lars Eggert 50e716e440
fix: Only presort tables if sort order is specified (#5408)
Thanks to @kivinen
2023-03-31 10:38:02 +09:00
Lars Eggert 8b815fc76d
feat: Add list of sub-groups to group's "about" page (#5450)
* feat: Add list of sub-groups to group's "about" page

Fixes #5441

* Address review comments
2023-03-31 10:29:07 +09:00
Jennifer Richards 7f5c3a3699
refactor: Remove length limit on Message header fields (#5455) 2023-03-31 09:37:46 +09:00
Tero Kivinen d5bae45799
fix: Do not add user to the top of queue after reject (fixes #4505) (#5427)
* fix: Do not add user to the top of queue after reject (fixes #4505)
Added a checkbox in the reject review dialog to ask whether user
wants to be added to the top of the queue or not. Default is off.

* Do not change request_assignment_next if wants_to_be_next is not True.
Set the request_assignment_next also in LeastRecentlyUsedReviewerQueuePolicy
so it can be used to override the assignment policy rules (i.e., if
someone has once per month, but he rejects review with wants_to_be_next set
to true, he will get new assignment immediately, not after one month).

* Added wants_to_be_next to test cases too.

* Fixed test function prototypes, they can't have any parameters, only
self. Added test cases for test_return_reviewer_to_rotation_top both
for RotateAlphabeticallyReviewerQueuePolicyTest and
LeastRecentlyUsedReviewerQueuePolicyTest.
2023-03-30 08:34:08 +09:00
Ryan Cross 1bd5c5e2f1
feat: Add requests summary (#5439)
* feat: Add summary data to meeting/requests

* feat: Add Group Type and Purpose tables to requests summary

* fix: use self.assertXX instead of raw assert

---------

Co-authored-by: Robert Sparks <rjsparks@nostrum.com>
2023-03-30 08:07:59 +09:00
Jim Fenton 0f1a6c960f
chore: Update test docs to postgresql; remove extraneous sqlite stuff (#5400)
* chore: Update test docs to postgresql; remove extraneous sqlite stuff

* Reverted addition of settings_postgrestest.py to .gitignore
2023-03-29 10:45:03 +09:00
Robert Sparks 01b4a91bfe
Merge remote-tracking branch 'ietf-tools/main' into feat/postgres 2023-03-29 10:41:47 +09:00
Jennifer Richards 72954c24fc
chore: Add type annotations to satisfy linter (#5435) 2023-03-29 09:06:14 +09:00
Jennifer Richards 6b826fd985
refactor: Purge old migrations and update ci to build on a clean schema (#5431)
* refactor: Remove all existing migrations

* refactor: Create clean set of migrations

* chore: Skip check_statetype_slugs when DB is not yet populated

* fix: Do not cache active_groups_menu on module import

* fix: Do not patch timezone awareness out of oidc-provider

* refactor: Migrate to create postgres schema, only use pgloader for data

* ci: Use migration scripts from feat/pg-migrations branch

* Revert "ci: Use migration scripts from feat/pg-migrations branch"

This reverts commit c82f64c614241ccede4865a50d494725c8a47c15.

* ci: Run check before migrate

* fix: Remove redundant migration caused by merge error

* chore: Add casts/ALTER TABLEs to eliminate pgloader errors/warnings

* chore: Change schema name to match docker image assumptions

* chore: Clear out schema so we get a clean start in case of a retry
2023-03-28 18:06:07 +09:00
Lars Eggert 53a90a38ce
fix: Don't disable mouse hover UI functionality on touch screens (#5433)
Because devices can have both touch and mouse input.
2023-03-28 12:16:04 +09:00
Kesara Rathnayake b0c76416cd
feat: Allow password reset with non username email address (#5419)
This change allows password reset with any email address associated with the
account.
The password reset will only be sent to the active email addresses associated
with the account.

Fixes #5057
2023-03-28 11:07:31 +09:00
Robert Sparks 52a1069901
fix: reapply styling fix for pdfization (#5428) 2023-03-27 15:08:43 +09:00
Ian Williams a778377bb8
fix(doc): Replace iconography for position's email status with text label (#5421)
* fix(doc): Use text badges for email status

BI's envelope icons with status icons are difficult to read.
Use text labels instead (keeping the same tooltip).

Fixes #3855.

* test(doc): Fix failing ballot message tests

Some ballot message changes have been modified to correctly identify
what type of document this ballot is for.

Works on #3855

* test(doc): Remove debugging statement

Accidental inclusion of debug statement.

Works on #3855
2023-03-27 13:58:51 +09:00
Lars Eggert 7c890ea69e
chore: Remove unused agenda-personalize.js (#5387)
Co-authored-by: Robert Sparks <rjsparks@nostrum.com>
2023-03-26 14:53:31 +09:00
Rich Salz e1283cec6d
fix: Make "nomcom paths" field CSV-friendly (#4892) (#5401)
When generating the NomCom volunteer paths, use a plus sign rather
than a comma, so that the output is more CSV-friendly.

Co-authored-by: Robert Sparks <rjsparks@nostrum.com>
2023-03-26 14:19:49 +09:00
Lars Eggert 99cd5a39f4
chore: Remove unused arrow-ani.webp (#5386) 2023-03-26 14:15:39 +09:00
Jennifer Richards bc9c74ef50
fix: Render complete iCalendar event when show_location is False (#5394)
* test: More carefully test event syntax in ical file

* test: Test agenda.ics view with all meeting sessions

* fix: Render complete iCalendar event when show_location is False

* chore: Fix confusing comment
2023-03-26 14:13:58 +09:00
Lars Eggert b11f0fc50f
fix: Lengthen IESG dashboard trend period to 120 days (#5409)
Fixes #4450
2023-03-25 17:38:57 +09:00
Lars Eggert c3bb142c98
Rebase (#5416) 2023-03-25 17:37:33 +09:00
Jim Fenton 2c9a7fcb1c
fix(ipr): Clarify IPR update confirmation email (#5420)
Fixes #4133
2023-03-25 17:30:51 +09:00
Jim Fenton d25eca930d
fix(doc): remove revision from shepherd writeup title (#5413)
Fixes #4200
2023-03-25 16:15:34 +09:00
Lars Eggert 0bc0469df2
chore: Remove unused jquery-ui (#5385)
* chore: Remove unused jquery-ui

Two templates under `secr` included it, but didn't seem to use it
for anything.

* Run `yarn` after removal
2023-03-25 15:57:44 +09:00
Lars Eggert 58b3155eda
chore: Remove unused week-view.js file (#5383) 2023-03-21 08:48:40 -05:00
Lars Eggert 5ed1d69f52
chore: Remove unused room-params.js (#5384) 2023-03-21 08:48:22 -05:00
Lars Eggert 3865d5232b
chore: Remove unused agenda_timezone.js (#5388) 2023-03-21 08:42:34 -05:00
Lars Eggert 81573a29c9
fix: Use more subtle colors for "Request full access URL" alert (#5390)
Fixes #1765
2023-03-21 08:41:51 -05:00