* feat: django-rest-framework + Person/Email API (#8233)
* chore: djangorestframework -> requirements.txt
* chore: auth/perm/schema classes for drf
* chore: settings for drf and friends
* chore: comment that api/serializer.py is not DRF
* feat: URL router for DRF
* feat: simple api/v3/person/{id} endpoint
* fix: actually working demo endpoint
* chore: no auth for PersonViewSet
* ci: params in ci-run-tests.yml
* Revert "ci: params in ci-run-tests.yml"
This reverts commit 03808ddf94afe42b7382ddd3730959987389612b.
* feat: email addresses for person API
* feat: email update api (WIP)
* fix: working Email API endpoint
* chore: annotate address format in api schema
* chore: api adjustments
* feat: expose SpectacularAPIView
At least for now...
* chore: better schema_path_prefix
* feat: permissions for DRF API
* refactor: use permissions classes
* refactor: extract NewEmailForm validation for reuse
* refactor: ietfauth.validators module
* refactor: send new email conf req via helper
* feat: API call to issue new address request
* chore: move datatracker DRF api to /api/core/
* fix: unused import
* fix: lint
* test: drf URL names + API tests (#8248)
* refactor: better drf URL naming
* test: test person-detail view
* test: permissions
* test: add_email tests + stubs
* test: test email update
* test: test 404 vs 403
* fix: fix permissions
* test: test email partial update
* test: assert we have a nonexistent PK
* chore: disable DRF api for now
* chore: fix git inanity
* fix: lint
* test: disable tests of disabled code
* test: more lint
* fix: optimize can_manage_some_groups
* fix: improve cache key
* refactor: extra_role_qs to kwargs and bugfix to cache key
* fix: restrict groupman_role matches to active states
* chore: styling, decommenting, black
* feat: enable editorial stream adoption and balloting
* fix: bring tests into line with refactor
* feat: force intended_std_level to Informational when adopting into a non-ietf stream.
* fix: improve blocking position labels and email content
* fix: simplify pointer to group on doc main page for rswg docs
* fix: recover from merge typos
* fix: correct defer and clear ballot behavior
* fix: improve publication request access logic
* fix: clean up broken editorial state
* fix: adjust test to match migrations
* feat: add pronouns
* fix: include migrations
* fix: correct daggers on person form.
* fix: clean pronouns
* feat: add choices to pronouns
* feat: show pronouns on public profile
* feat: add pronouns to oidc userinfo
* fix: move pronouns to new claim. Add tests.
* fix: improve html generated by new widget
* feat: use a MultiWidget for pronouns
* refactor: use two fields on Person for the two types of pronoun entry.
* chore: update copyrights
* Registration API Update
- change MeetingRegistration.reg_type field to hold only one type
- allow multiple MeetingRegistration records per person/meeting
(one for each reg_type)
* Fix scope claims
* Add meeting 114 to MeetingRegistration migration
* fix: update stats views for MeetingRegistration model use changes
* refactor: remove unused imports
* feat: restructure rfcedtype groups. add rpc, rswg, rsab.
* feat: show rfc editor groups on menu
* feat: add the editorial stream
* fix: repair broken html and extent dest coverage.
* chore: address Lars review comment
* chore: update copyright notices.
Convert IRTF area groups into their own group type rather than attempting to overload AG. Fixes#3027.
- Legacy-Id: 18320
Note: SVN reference [18298] has been migrated to Git commit 2b10465aa7