* refactor: change references from User to Person (#5821)
* refactor: Change CommunityList reference from User to Person
* refactor: Convert more user references to person
* refactor: Change augment_docs_and_user_with_user_info to person
* refactor: Change Nomination and Feedback references from User to Person
* refactor: Change a few test case function signatures to be more pythonic
* refactor: Harmonize how profile and photo views look up email_or_name
* refactor: Rework community views to operate on Person instead of User (#5859)
* test: Update tests to try all of the person's emails and aliases
* fix: Recode a test case to avoid an exception if there's Unicode in the URL
This only happens using the form-filling and submission feature of
WebTest, which is only used in this one test case, so just it rip out.
* test: Add duplicate-person tests
* fix: If there are multiple matching users, prefer the logged-in one.
* chore: We no longer use WebTest, so don't include it.
* fix: Address review comments
* fix: case-insensitive person name or email matching (#6096)
* chore: Renumber migrations
* fix: Update merged code so tests pass (#6887)
* fix: Use refactored method
* fix: Don't assume user has person
* fix: Use new view param name
* chore: Drop community lists w/o person; cleanup (#6896)
* fix: Don't assume user has person
* fix: user->person in update_community_list_index.py
* feat: Remove CommunityLists without Person
* refactor: Speed up nomcom migrations
---------
Co-authored-by: Paul Selkirk <paul@painless-security.com>
Co-authored-by: Jennifer Richards <jennifer@staff.ietf.org>
* test: Test rfc_editor_index_update_task
* chore: Add docstring to test
* fix: Reuse stats instead of fetching twice
* test: Test fetch_meeting_attendance_task
* chore: Remove outdated tasks
* Revert "chore: Add docstring to test"
This reverts commit 0395410d665c0d310248fd151386f013357c5d13.
* Revert "test: Test rfc_editor_index_update_task"
This reverts commit 4dd9dd131723497db3d2aa76166169fd32c42fdd.
* test: Test rfc_editor_index_update_task
This time without reformatting the entire file...
* chore: Remove accidentally committed fragment
* test: Annotate function to satisfy mypy
* chore: Remove unused imports
* refactor: Factor out helper from fetch_meeting_attendance.py
* feat: Define fetch_meeting_attendance_task task
Equivalent to the fetch_meeting_attendance management command
* chore: Disable fetch_meeting_attendance in bin/daily
* feat: Log errors in fetch_meeting_attendance_task
* feat: Enable a result backend for celery
Ignore results by default, but enable the backend so we
can manage tasks
* feat: Define daily task in ietf.utils.tasks
* refactor: Make bin/send-review-reminders into a task
* refactor: Make bin/send-scheduled-mail into a task
* chore: Update copyright years
* refactor: Make bin/rfc-editor-index-updates into a task
* refactor: Accept date type in rfc index update fn
* chore: Update comment
* fix: Annotate param as Optional
* fix: Revert treating skip_older_than_date as str
Misunderstood the comment, "fixed" a non-bug. Oops.
* feat: mgmt command to create periodic tasks
* feat: add summary of tasks to mgmt cmd
* style: black
* fix: Remove debug statements
* feat: Enable/disable tasks
* chore: Disable periodic tasks by default
* chore: Revert changes to daily and every15m
* fix: Call intended function
* chore: Add task descriptions
* Switch to using geckodriver
* Switch to selenium 4
* Undo
* Remove comment
* Fixes
* Restore non-standard line endings to minimize diff
* Undo
* Remove comment
* test: Fix test_upcoming_view_time_zone_selection
The inputs are hidden and managed by JS, so click
the visible elements instead.
* test: Clumsy fix to test_upcoming_materials_modal
Waiting for the button to be clickable does not
work because the modal is still fading in, so does
not actually close. Would be better to check for it
responding, but I haven't found the right way to do
that yet.
* test: Fix test_add_author_forms
Sending '\n' does not seem to work as it did before,
so click the option instead.
Also reverted some fixme hacks that seem to be obe.
* ci: Update base.Dockerfile
* test: add resource limits to dev/tests/debug.sh env
* ci: add upload of geckodriver.log on failure
* ci: run tests as user 1001
* ci: run app-create-dirs as sudo
* ci: set home folder to root to run tests
---------
Co-authored-by: Jennifer Richards <jennifer@staff.ietf.org>
Co-authored-by: Nicolas Giard <github@ngpixel.com>
Co-authored-by: Robert Sparks <rjsparks@nostrum.com>
* Fix#3911 by adding a markdown filter for template
* fix: move the new markdown filter to utils
* fix: linkify after markdown
---------
Co-authored-by: Robert Sparks <rjsparks@nostrum.com>
Co-authored-by: Jennifer Richards <jennifer@staff.ietf.org>
* refactor: Update parsers/base.py for Python3
* style: Black
* refactor: Remove mime type check from FileParser
* refactor: Validate that submission is UTF-8
The mime check distinguished us-ascii from UTF-8,
but as far as I can tell the code relying on it
treated both as equally valid.
* feat: Clear error when file is not valid XML
* chore: Remove unused import
* test: Update tests to match changes
* fix: Count bytes starting from 1
* test: Add tests of FileParser validations
* fix: Fix / simplify regexp
* test: Test error caused by bad XML submission
---------
Co-authored-by: Robert Sparks <rjsparks@nostrum.com>
* refactor: Remove is_rfc() - test type_id instead
* fix: Guard against unknown pub_date
This should not ever come up - we have a published_rfc event for
every rfc. Should investigate fixing pub_date() to always return a val.
* refactor: Split up get_creation_date to ease testing
* test: Add tests of parse_creation_date()
Note change in expected output when date_elt is None:
instead of returning None, this expects today's date.
* fix: Return today instead of None when date is absent
* fix: Handle empty string for day attribute
* test: Check a couple more parse_creation_date cases
* fix: Revert to returning None when date elt is absent
* style: black
* feat: import IAB minutes from the IAB wordpress site
Work in Progress
* fix: refactor as management commands
* fix: use datetime.timezone.utc for comparisons
* fix: coerce an argument. Command now runs
* chore: extend queryset in a better way
* fix: fetch kesara's repo and move files into place.
* fix: add a DocEvent explaining where the Documents came from
* fix: small optimizations and typo fixes
* fix: performance compromise for very old meetings
* fix: ensure variable is initialized
* fix: avoid operating on null by changing method signature - address review comments
* fix: repair html typo and address pyflake complaint
* chore: run black on a new and changed things
* 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"
* 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
* 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
* 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>