Commit graph

194 commits

Author SHA1 Message Date
Jennifer Richards 70ab711216
refactor: separate concerns / rename notify_events (#8328)
* refactor: separate signal receiver from work

* test: split test to match code structure

* test: fix test

* refactor: reorg signals in community app
2024-12-12 16:48:44 -06:00
Jennifer Richards a35aa67c70
chore: clarify transaction-related comments (#8180) 2024-11-08 11:55:47 +00:00
Jennifer Richards afbe6aa429
fix: queue tasks in on_commit hook (#8149)
* fix: dispatch tasks in on_commit hook

* test: fix test
2024-11-06 08:49:54 +00:00
Jennifer Richards a338df16f2
fix: 404 instead of 300 for ambiguous email_or_person (#8004)
* fix: 404 on CommunityList name collision

* fix: 404 on ambiuous person for photo() view

* test: update tests

---------

Co-authored-by: Robert Sparks <rjsparks@nostrum.com>
2024-10-16 11:36:54 -05:00
Jennifer Richards c6389ba65f
fix: only send state change notifications once (#7953)
* feat: split state_change_event create / save

* refactor: avoid double-save in rfceditor.py

* feat: only send notifications on event creation

* test: update test_notification_signal_receiver()

* chore: update comment
2024-09-18 14:02:00 -05:00
Sangho Na 9d583ab9eb
fix: Use email or name when building community list view (#7203)
* fix: Use email or name when building community list view

instead of email

* test: add test case

* chore: remove debug

* fix: use name in community list menu when no active email is found

---------

Co-authored-by: Jennifer Richards <jennifer@staff.ietf.org>
2024-09-16 10:06:16 -05:00
Jennifer Richards f1d58da877
feat: send doc event emails via celery (#7680)
* feat: notify_event_to_subscribers_task

* fix: avoid circular import, handle error

* fix: don't queue task in test mode

* fix: don't even send mail in test mode

* test: separately test signal

* fix: if/else error

* test: better naming

* test: test the new task

* test: better test name

* test: refactor notify email test

* fix: save, not update

* test: restore template coverage
2024-07-12 10:10:46 -05:00
Jennifer Richards 3157cf65d1
fix: Accept&ignore group_type for some views 2024-02-12 17:38:36 -04:00
Robert Sparks d9cc26be96
feat: replace references to User with references to Person (#6024)
* 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>
2024-01-24 11:00:19 -06:00
Jennifer Richards b215867cb1
chore: Reorder migrations (#6660) 2023-11-17 14:56:21 -04:00
Robert Sparks 4fa8bfa543
fix: use correct doc types and states for rfcs (#6639) 2023-11-15 10:08:39 -04:00
Robert Sparks 4811374014
chore: reorder migrations (#6325) 2023-09-15 13:10:19 -05:00
Robert Sparks 4946430159
chore: checkpoint: halfway through removing docalias 2023-08-15 09:11:53 -05:00
Jennifer Richards 2d46a978e0
chore: Renumber migrations 2023-08-04 00:42:16 -03:00
Jennifer Richards 48d4072eeb
Merge branch 'feat/rfc' into main-merge
# Conflicts:
#	ietf/doc/factories.py
#	ietf/doc/tests_status_change.py
#	ietf/name/fixtures/names.json
#	ietf/templates/doc/document_info.html
2023-08-03 18:34:06 -03:00
Ali e61f779816
fix: avoid deprecation warning on view_list() for objs without CommunityList
Fixes #5942
2023-07-23 09:12:13 -07:00
Jennifer Richards 2b0f95477e
test: Remove unused import 2023-07-22 15:45:25 -07:00
Jennifer Richards 423514467d
fix: Track RFC documents that came from tracked drafts 2023-07-22 14:23:44 -07:00
Jennifer Richards 938f862cc2
refactor: Prevent undefined variable reference 2023-07-22 14:11:57 -07:00
Jennifer Richards 4e670692f8
refactor: Clear rule.state when migrating *_rfc rules 2023-07-22 13:29:43 -07:00
Jennifer Richards 8f73849343
refactor: Remove "state" field entirely for rfc rules 2023-07-22 11:51:27 -07:00
Jennifer Richards a6d5cb69d4
refactor: Use empty rule.states for _rfc rules 2023-07-22 11:39:34 -07:00
Jennifer Richards 2f94383fca
refactor: Find SearchRules using rfc doc type 2023-07-22 11:29:18 -07:00
Jennifer Richards 0959a2e82e
refactor: Filter SearchRule matching using rfc doc type 2023-07-22 11:13:51 -07:00
Jennifer Richards 1660a14331
test: Use (rfc, published) state in test 2023-07-21 13:33:33 -03:00
Jennifer Richards e42ac40ec4
fix: Use (rfc, published) state for RFC SearchRules 2023-07-11 16:16:05 -03:00
Jennifer Richards 5385760f2a
chore: Migrate SearchRules for the rfc state 2023-07-11 16:14:49 -03:00
Jennifer Richards 71270621b7
chore: Track RFCs if they were tracked as a draft 2023-07-11 11:59:39 -03:00
Jennifer Richards 075aed7e9a
refactor: Replace deprecated request.is_ajax() 2023-05-12 18:26:56 -03: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
Robert Sparks c38ade6e1b
feat: treat django auth username as case insensitive throughout the datatracker (#5165)
* feat: insensitive username matching at django authentication

* feat: use iexact when using the User object manager

* fix: more places to ignore username case

* fix: remove unused management command

* fix: avoid get when probing for object existance

* fix: force lowercase new usernames in secr/rolodex

* fix: use explicit arguments when creating user
2023-02-21 10:01:03 -06:00
Robert Sparks e1206fa91e
Merge remote-tracking branch 'upstream/main' into feat/postgres 2023-02-13 09:17:05 -06:00
Lars Eggert f8b48f4c43
fix: use Internet-Draft more consistently across the UI (#5104)
* s/Internet Draft/Internet-Draft/i

* s/draft/Internet-Draft/i or s/draft/I-D/i

* s/ID/I-D/

* Fix tests

* a -> an

* Undo case-change to ASCII

* Address code review comments

* Add migrations

* Add merged migration

* fix: straighten out migrations

* fix: finish straightening out migrations

---------

Co-authored-by: Robert Sparks <rjsparks@nostrum.com>
2023-02-11 10:09:28 -06:00
Robert Sparks 27fccc6ba0
feat: move to postgresql (#4744)
* feat: move to postgresql

* fix: repair fractional replace statement

* fix: use pathlib to manipulate settings_local

Co-authored-by: Jennifer Richards <jennifer@painless-security.com>

* fix: do two string replacements, not one followed by another that throws away the first.

Co-authored-by: Jennifer Richards <jennifer@painless-security.com>

* fix: use pathlib again to manipulate settings_local

Co-authored-by: Jennifer Richards <jennifer@painless-security.com>

* fix: properly use assert (1/2)

Co-authored-by: Jennifer Richards <jennifer@painless-security.com>

* fix: properly use assert (2/2)

Co-authored-by: Jennifer Richards <jennifer@painless-security.com>

Co-authored-by: Jennifer Richards <jennifer@painless-security.com>
2022-11-11 11:01:01 +00:00
Jennifer Richards ebebdbed3e
refactor: replace datetime.now and datetime.today with timezone.now (#4211)
* refactor: replace datetime.now with timezone.now

* refactor: migrate model fields to use timezone.now as default

* refactor: replace datetime.today with timezone.now

datetime.datetime.today() is equivalent to datetime.datetime.now(); both
return a naive datetime with the current local time.

* refactor: rephrase datetime.now(tz) as timezone.now().astimezone(tz)

This is effectively the same, but is less likely to encourage accidental
use of naive datetimes.

* refactor: revert datetime.today() change to old migrations

* refactor: change a missed datetime.now to timezone.now

* chore: renumber timezone_now migration

* chore: renumber migrations
2022-08-25 13:45:16 -03:00
Lars Eggert beab785903
fix: Remove unicode encode from CVS row writer (#4294)
Fixes #4292
2022-08-02 10:23:53 -05:00
Robert Sparks 23fc0ea44a
fix: add new search rule to correct group community lists (#4291) 2022-07-28 09:13:29 -05:00
Valery Smyslov a5f27b0a5b
feat: show expired WG/RG drafts at WG/RG Documents page (#4252)
* Show expired WG/RG drafts.

* Update 0009_add_group_exp_rule_to_groups.py

fix dependency on migration file name

* Update forms.py

Simplify condition statements

* Update views.py

Fix - remove erroneous check (never happen)

* Added tests for expired WG drafts filtering rule
2022-07-26 12:02:09 -05:00
Lars Eggert 5132661b06 More test fixes
- Legacy-Id: 19803
2022-01-05 11:25:25 +00:00
Lars Eggert e9fd78128c Interim commit
- Legacy-Id: 19765
2021-12-09 18:26:53 +00:00
Jennifer Richards 17d37723f7 Consolidate repeated searchable field code into SearchableField class. Fix single-valued searchable fields. Make javascript test config reusable. Use Django Form.media for JS/CSS inclusion. Fixes #3196, #3204. Commit ready for merge.
- Legacy-Id: 18939
2021-04-09 15:18:11 +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 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
Robert Sparks 2b10465aa7 Convert IRTF area groups into their own group type rather than attempting to overload AG. Fixes #3027. Commit ready for merge.
- Legacy-Id: 18298
2020-07-28 18:54:44 +00:00
Henrik Levkowetz 9aeda11a29 Removed some Py2 compatibility decorators.
- Legacy-Id: 17673
2020-04-21 13:54:31 +00:00
Henrik Levkowetz f10ddadc0e Merged in changes from trunk up to r17584.
- Legacy-Id: 17593
2020-04-07 16:02:52 +00:00
Robert Sparks 70a20b3e8c Basic regex validation on community rule entry form. Fixes #2928. Commit ready for merge.
- Legacy-Id: 17490
2020-03-21 20:20:40 +00:00
Henrik Levkowetz 726fcbf27d Removed all __future__ imports.
- Legacy-Id: 17391
2020-03-05 23:53:42 +00:00