* 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: add migration to change timestamps to UTC
* refactor: move tz instantiation/caching from TimeSlot to Meeting
* fix: assume utc if meeting.time_zone is blank
* chore: make datetime.combine() calls tz aware in the meeting app
* ci: correctly use meeting.tz in TimeSlotFactory
* chore: compute TimeSlot utc / local times assuming tz-aware times
* chore: use tzaware math for agenda editor timeslot layout
* chore: fill in Meeting.time_zone where it is blank
Nearly all interim meetings on or before 2016-07-01 have blank
time_zone values. This migration fills these in with PST8PDT.
* chore: disallow blank Meeting.time_zone value
* refactor: no need to handle blank time_zone case in TZ migration
* refactor: remove now-unnecessary checks that meeting has time_zone
* chore: fix timezone handling in agenda.ics and Meeting.updated()
* chore: fix tz handling in interim_request_details, exercise in tests
* chore: fix timezone handling for test_interim_send_announcement
* chore: fix timezone handling in agenda_json()
* chore: fix timezone handling in old agenda
* chore: fix timezone handling for EditTimeslotsTests
* refactor: refactor a few fixes for more consistent timezone handling
* chore: add timezone info to timestamps in fixtures
* chore: remove naive datetime warnings found in meetings.tests_views
* chore: fix a few more test failures in meetings.tests_views
All tests in meetings.tests_views now passing
* chore: remove unused import
* chore: fix timezone handling in test_schedule_generator.py
* chore: fix timezone handling affecting meeting.tests_js
* chore: fix timeslot test bug when local date != UTC date
* test: fix a few failing tests, all meetings tests now pass
(for me, anyway)
* chore: renumber migrations
* chore: update timestamp conversion migration
The django-celery-beat package introduces tables with timestamp
columns. These columns are stored in CELERY_TIMEZONE. Because we run with
this set to UTC, the migration ignores these columns.
* chore: fix pytz-related change in migration
* chore: remove duplicate migrations
* chore: remove CELERY_BEAT_TZ_AWARE setting now that USE_TZ is True
* test: avoid failure in test with bogus timezone
* chore: add migration to change timestamps to UTC
* chore: fill in Meeting.time_zone where it is blank
Nearly all interim meetings on or before 2016-07-01 have blank
time_zone values. This migration fills these in with PST8PDT.
* chore: disallow blank Meeting.time_zone value
* refactor: no need to handle blank time_zone case in TZ migration
* refactor: remove now-unnecessary checks that meeting has time_zone
* chore: renumber migrations
* chore: update timestamp conversion migration
The django-celery-beat package introduces tables with timestamp
columns. These columns are stored in CELERY_TIMEZONE. Because we run with
this set to UTC, the migration ignores these columns.
* chore: fix pytz-related change in migration
* chore: be explicit that Meeting.vtimezone can return None
* refactor: remove unnecessary save()
* 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
* feat: show session requests for all "has_meetings" groups
* test: test changes to groups whose session requests are shown
Note the change in capitalization for the 'active' group state fixes
the test but does not seem to affect production (which I guess uses
case insensitive matching?)
* test: remove leftover debug statement
* feature: exclude admin/social sessions from meeting requests view
* test: test exclusion of admin/social sessions from meeting requests view
* feat: group all non-area groups as "other" on meeting requests page
* fix: prevent doubling of first section header
* test: verify that more of the sreqs are / are not linked
* chore: remove more tools.ietf.org server only related things.
* chore: remove use of tools.ietf.org floorplans\n\nThe data will move into the FloorPlan models instead.
* fix: only use non-empty Q object as interim group filter
* refactor: add with_meetings queryset to GroupManager
* test: users can only request interims for managed groups
* fix: find managed groups from groupman_roles/authroles
* feat: let chair manage directorate groups
* test: remove debug statements and unused imports
* test: remove do-nothing code from test
* feat: add model to track session attendance
* feat: add model to track session attendance
* feat: add api to set session attendees
* fix: use user pk instead off person pk in the attended api.
* feat: calculate three of five from attended
* feat: management utility to populate Attended model history
* docs: document why nomcom calculations don't use Attended yet.
* fix: add migration to add new personalapikey endpoint to choices
* test: verify very old last login prevents api key use,
* chore: address review nits
* chore: comment on some idiosyncracies of the expected input to populate_attended
* fix: add unique_together constraint for the Attended model
* fix: correctly handle empty querysets passed to three_of_five_eligible functions.
* fix: use DST-friendly tz calculation for TimeSlot end times
Around DST changes, localize(time + duration).astimezone() is not
the same as localize(time).astimezone() + duration. The latter allows
tz-aware times to do their magic and give correct clock times.
* fix: refactor/correct calculation of week-view event start/end times
There were bugs in the timestamp calculations around DST switchover.
This corrects those and tries to clarify and improve documentation in
the relevant code.
* Update vnu.jar
* Fix py2 -> py3 issue
* Run pyupgrade
* test: Add default-jdk to images
* test: Add option to also validate HTML with vnu.jar
Since it's already installed in bin. Don't do this by default, since it
increases the time needed for tests by ~50%.
* fix: Stop the urlizer from urlizing in linkified mailto: text
* More HTML fixes
* More HTML validation fixes
* And more HTML fixes
* Fix floating badge
* Ignore unicode errors
* Only URLize docs that are existing
* Final fixes
* Don't URLize everything during test-crawl
* Feed HTML into vnu using python rather than Java to speed things up
* Allow test-crawl to start vnu on a different port
* Increase retry count to vnu. Restore batch size to 30.
* More HTML validation fixes
* Use urllib3 to make requests to vnu, since overriding requests_mock is tricky
* Undo commit of unmodified file
* Also urlize ftp links
* Fix matching of file name
* More HTML fixes
* Add `is_valid_url` filter
* weekday -> data-weekday
* urlencode URLs
* Add and use vnu_fmt_message. Bump vnu max buffer.
* Simplify doc_exists
* Don't add tab link to mail archive if the URL is invalid
* Run urlize_ietf_docs before linkify
Reduces the possibility of generating incorrect HTML
* Undo superfluous change
* Runner fixes
* Consolidate vnu message filtering into vnu_filter_message
* Correctly handle multiple persons with same name
* Minimze diff
* Fix HTML nits
* Print source snippet in vnu_fmt_message
* Only escape if there is something to escape
* Fix snippet
* Skip crufty old IPR declarations
* Only include modal when needed. Add handles.
* Fix wordwrap+linkification
* Update ietf/doc/templatetags/ietf_filters.py
* Update ietf/doc/templatetags/tests_ietf_filters.py
* Don't right-align second column
Also rewrites scroll_to_element() using javascript. This seems to be less flaky
than the ActionChains implementation. Slight change in behavior - now scrolls
the requested element to the middle of the window instead of barely into view.
This adds a POST action to the edit_meeting_schedule view that sets a list
of currently visible timeslot types in the user's session. On display of
the schedule editor, this is consulted before defaulting to show only 'regular'
timeslots. An ajax request is made to update the session when changing the
settings in the editor.
* fix: show "Edit materials" button for all groups for a secretariat user
Fixes ietf-tools#3763
* fix: show "import minutes" button to import initial revision
* test: validate that import session minutes buttons are shown
* test: validate that "Edit materials" links are shown
* fix: More fixes for narrow screens
Need to keep checking for issues, there are more.
* Make columns more narrow on narrow screens
* More fixes
* More fixes
* Test fixes
* Fix more tests
* Close tbody
Use correct UTC time when creating Meetecho conferences. Fixes#3565.
- Legacy-Id: 19970
Note: SVN reference [19969] has been migrated to Git commit 82ea659ed4
Create/delete Meetecho conferences when requesting/canceling interim sessions. Fixes#3507. Fixes#3508.
- Legacy-Id: 19934
Note: SVN reference [19917] has been migrated to Git commit 81cd64da2bc0122f733df02f7db634665c9b309a
Note: SVN reference [19930] has been migrated to Git commit c64297e495010f3c147726ad61c24ca436c324da
Make working with session purpose easier in the admin.
- Legacy-Id: 19928
Note: SVN reference [19920] has been migrated to Git commit 191d5b134fdab8782280eb9769beec793818975f
Import django.conf.settings instead of ietf.settings. Fixes#3392.
- Legacy-Id: 19798
Note: SVN reference [19788] has been migrated to Git commit ecde8a780fce609efc6539e258e57752a03aa2bd
Add ability to import session minutes from notes.ietf.org. Mock out calls to the requests library in tests. Call markdown library through a util method. Fixes#3489.
- Legacy-Id: 19767
Note: SVN reference [19763] has been migrated to Git commit fd0df6f619
Treat application/octet-stream as text/markdown for '.md' materials uploads. Refactor FileUploadForm hierarchy to reduce boilerplate. Fixes#3163.
- Legacy-Id: 19746
Note: SVN reference [19744] has been migrated to Git commit b04254a293
Update uploaded_filename when modifying agenda through the interim meeting request edit view. Fixes#3395.
- Legacy-Id: 19721
Note: SVN reference [19675] has been migrated to Git commit 9d853d3de3
Add tests of meeting forms for the new session purpose work and a few other untested parts. Fix a few bugs uncovered.
- Legacy-Id: 19720
Note: SVN reference [19672] has been migrated to Git commit 71ca72d8b8
Escape . in agenda url patterns. Guard against unrecognized extensions.
- Legacy-Id: 19671
Note: SVN reference [19670] has been migrated to Git commit 58bd89c99e
There is definitely still quite some breakage, my main focus during
the conflict resolution was not to drop any changes made by others.
- Legacy-Id: 19632
Create dev branch for session purpose work (from revision [19414])
Snapshot of dev work to add session purpose annotation (from revision [19415])
Allow non-WG-like groups to request additional sessions/durations and bypass approval (from revision [19424])
Add 'closed' session purpose, assign purposes for nomcom groups, and update schedule editor to enforce timeslot type and allow blurring sessions by purpose (from revision [19427])
Add management command to set up timeslots/sessions for testing/demoing 'purpose' field (from revision [19430])
Update session purposes and group type -> purpose map to match notes page, change 'session' purpose to 'regular' (from revision [19433])
Redirect edit_schedule urls to edit_meeting_schedule view (from revision [19434])
Allow hiding/blurring sessions and timeslots based on TimeSlotType in the schedule editor (from revision [19438])
Disable session purpose/timeslot type hiding on schedule editor when only 0 or 1 options (from revision [19439])
Improvements to the timeslot and schedule editors (move new toggles to modals, handle overflowing session names, fix timeslot editor scrolling, add buttons to quickly create single timeslot, accept trailing slash on edit URL) (from revision [19449])
Update purpose/types after discussions, add on_agenda Session field, prevent session requests for groups with no allowed purpose, handle addition fields in session request, fix editing session requests, add session edit form/access from schedule editor, eliminate TimeSlotTypeName "private" field, add server-side timeslot type filtering to schedule editor (from revision [19549])
Eliminate the officehours timeslot type, update/renumber migrations, mark offagenda/reserved TimeSlotTypeNames as not used, add a 'none' SessionPurposeName and disallow null, update agenda filter keywords/filter helpers, fix broken tests and general debugging (from revision [19550])
Tear out old meeting schedule editor and related code (from revision [19551])
Fix merge errors in preceding commits (from revision [19556])
- Legacy-Id: 19570
Note: SVN reference [19415] has been migrated to Git commit 1054f90873
Note: SVN reference [19424] has been migrated to Git commit 5318081608
Note: SVN reference [19427] has been migrated to Git commit 173e438aee
Note: SVN reference [19430] has been migrated to Git commit 7a2530a0a6
Note: SVN reference [19433] has been migrated to Git commit 3be50d6e39
Note: SVN reference [19434] has been migrated to Git commit 3e3d681e5f
Note: SVN reference [19438] has been migrated to Git commit b6ac3d4b1d
Note: SVN reference [19439] has been migrated to Git commit 446ac7a47e
Note: SVN reference [19449] has been migrated to Git commit 5cbe402036
Note: SVN reference [19549] has been migrated to Git commit 3dfce7b850
Note: SVN reference [19550] has been migrated to Git commit 7b35c09c40
Note: SVN reference [19551] has been migrated to Git commit d7f20342b6
Note: SVN reference [19556] has been migrated to Git commit 2b1864f5a0
Use temporary directories instead of 'real' filesystem for tests. Fixes#3414.
- Legacy-Id: 19561
Note: SVN reference [19555] has been migrated to Git commit 81d9234d54