* feat: Show bluesheets using Attended tables (#7094) * feat: Show bluesheets using Attended tables (#6898) * feat: Allow users to add themselves to session attendance (#6454) * chore: Correct copyright year * fix: Address review comments * fix: Don't try to generate empty bluesheets * refactor: Complete rewrite of bluesheet.html * refactor: Fill in a few gaps, close a few holes - Rename the live "bluesheet" to "attendance", add some explanatory text. - Add attendance links in materials view and pre-finalized proceedings view. - Don't allow users to add themselves after the corrections cutoff date. * fix: Report file-save errors to caller * fix: Address review comments * fix: typo * refactor: if instead of except; refactor gently * refactor: Rearrange logic a little, add comment * style: Black * refactor: auto_now_add->default to allow override * refactor: jsonschema to validate API payload * feat: Handle new API data format Not yet tested except that it falls back when the old format is used. * test: Split test into deprecated/new version Have not yet touched the new version * style: Black * test: Test new add_session_attendees API * fix: Fix bug uncovered by test * refactor: Refactor affiliation lookup a bit * fix: Order bluesheet by Attended.time * refactor: Move helpers from views.py to utils.py * test: Test that finalize calls generate_bluesheets * test: test_bluesheet_data() * fix: Clean up merge * fix: Remove debug statement * chore: comments * refactor: Renumber migrations --------- Co-authored-by: Paul Selkirk <paul@painless-security.com> * chore: Remove unused import * style: Black * feat: Stub session update notify API * feat: Add order & rev to slides JSON * style: Black * feat: Stub actual Meetecho slide deck mgmt API * refactor: Limit reordering to type="slides" * chore: Remove repository from meetecho API (API changed on their end) * feat: update Meetecho on slide reorder * refactor: drop pytz from meetecho.py * chore: Remove more repository refs * refactor: Eliminate more pytz * test: Test add_slide_deck api * fix: Allow 202 status code / absent Content-Type * test: Test delete_slide_deck api * test: Test update_slide_decks api * refactor: sessionpresentation_set -> presentations * test: Test send_update() * fix: Debug send_update() * test: ajax_reorder_slides calls Meetecho API * test: Test SldesManager.add() * feat: Implement SlidesManager.add() * test: Test that ajax_add_slides... calls API * feat: Call Meetecho API when slides added to session * test: Test SlidesManager.delete() * feat: Implement SlidesManager.delete() * test: ajax_remove_slides... calls Meetecho API * feat: Call Meetecho API when slides removed * chore: Update docstring * feat: rudimentary debug mode for Meetecho API * test: remove_sessionpresentation() calls Meetecho API * feat: Call Meetecho API from remove_sessionpresentation() * test: upload_slides() calls Meetecho API * style: Black * fix: Refactor/debug upload_session_slides Avoids double-save of a SessionPresentation for the session being updated and updates other sessions when apply_to_all is set (previously it only created ones that did not exist, so rev would never be updated). * test: Fix test bug * feat: Call Meetecho API when uploading session slides * fix: Only replace slides actually linked to session * fix: Delint Removed some type checking rather than debugging it * fix: Send get_versionless_href() as url for slides * test: TZ-aware timestamps, please * chore: Add comments * feat: Call Meetecho API in edit_sessionpresentation * feat: Call Meetecho API in remove_sessionpresentation * feat: Call Meetecho API from add_sessionpresentation * fix: Set order in add_sessionpresentation * fix: Restrict API calls to "slides" docs * feat: Call Meetecho API on title changes * test: Check meetecho API calls in test_revise() * fix: better Meetecho API "order" management * fix: no PUT if there are no slides after DELETE * feat: Catch exceptions from SlidesManager Don't let errors in the MeetEcho slides API interfere with the ability to modify slides for a session. * feat: Limit which sessions we send notifications for * fix: handle absence of request_timeout in api config * test: always send slide notifications in tests * fix: save slides before sending notification (#7172) * fix: save slides before sending notification * style: fix indentation It's not a bug, it's a flourish! --------- Co-authored-by: Jennifer Richards <jennifer@staff.ietf.org> Co-authored-by: Paul Selkirk <paul@painless-security.com>
76 lines
2.9 KiB
Plaintext
76 lines
2.9 KiB
Plaintext
# -*- conf-mode -*-
|
|
setuptools>=51.1.0 # Require this first, to prevent later errors
|
|
#
|
|
argon2-cffi>=21.3.0 # For the Argon2 password hasher option
|
|
beautifulsoup4>=4.11.1 # Only used in tests
|
|
bibtexparser>=1.2.0 # Only used in tests
|
|
bleach>=6
|
|
types-bleach>=6
|
|
celery>=5.2.6
|
|
coverage>=4.5.4,<5.0 # Coverage 5.x moves from a json database to SQLite. Moving to 5.x will require substantial rewrites in ietf.utils.test_runner and ietf.release.views
|
|
decorator>=5.1.1
|
|
types-decorator>=5.1.1
|
|
defusedxml>=0.7.1 # for TastyPie when using xml; not a declared dependency
|
|
Django>4.2,<5
|
|
django-analytical>=3.1.0
|
|
django-bootstrap5>=21.3
|
|
django-celery-beat>=2.3.0
|
|
django-csp>=3.7
|
|
django-cors-headers>=3.11.0
|
|
django-debug-toolbar>=3.2.4
|
|
django-markup>=1.5 # Limited use - need to reconcile against direct use of markdown
|
|
django-oidc-provider>=0.8.1 # 0.8 dropped Django 2 support
|
|
django-referrer-policy>=1.0
|
|
django-simple-history>=3.0.0
|
|
django-stubs>=4.2.7 # The django-stubs version used determines the the mypy version indicated below
|
|
django-tastypie>=0.14.5 # Version must be locked in sync with version of Django
|
|
django-vite>=2.0.2,<3
|
|
django-widget-tweaks>=1.4.12
|
|
djlint>=1.0.0 # To auto-indent templates via "djlint --profile django --reformat"
|
|
docutils>=0.18.1 # Used only by dbtemplates for RestructuredText
|
|
types-docutils>=0.18.1
|
|
factory-boy>=3.3
|
|
github3.py>=3.2.0
|
|
gunicorn>=20.1.0
|
|
hashids>=1.3.1
|
|
html2text>=2020.1.16 # Used only to clean comment field of secr/sreq
|
|
html5lib>=1.1 # Only used in tests
|
|
inflect>= 6.0.2
|
|
jsonfield>=3.1.0 # for SubmissionCheck. This is https://github.com/bradjasper/django-jsonfield/.
|
|
jsonschema[format]>=4.2.1
|
|
jwcrypto>=1.2 # for signed notifications - this is aspirational, and is not really used.
|
|
logging_tree>=1.9 # Used only by the showloggers management command
|
|
lxml>=4.8.0,<5
|
|
markdown>=3.3.6
|
|
types-markdown>=3.3.6
|
|
mock>=4.0.3 # Used only by tests, of course
|
|
types-mock>=4.0.3
|
|
mypy~=1.7.0 # Version requirements determined by django-stubs.
|
|
oic>=1.3 # Used only by tests
|
|
Pillow>=9.1.0
|
|
psycopg2>=2.9.6
|
|
pyang>=2.5.3
|
|
pyflakes>=2.4.0
|
|
pyopenssl>=22.0.0 # Used by urllib3.contrib, which is used by PyQuery but not marked as a dependency
|
|
pyquery>=1.4.3
|
|
python-dateutil>=2.8.2
|
|
types-python-dateutil>=2.8.2
|
|
python-magic==0.4.18 # Versions beyond the yanked .19 and .20 introduce form failures
|
|
pymemcache>=4.0.0 # for django.core.cache.backends.memcached.PyMemcacheCache
|
|
python-mimeparse>=1.6 # from TastyPie
|
|
pytz==2022.2.1 # Pinned as changes need to be vetted for their effect on Meeting fields
|
|
requests>=2.31.0
|
|
types-requests>=2.27.1
|
|
requests-mock>=1.9.3
|
|
rfc2html>=2.0.3
|
|
scout-apm>=2.24.2
|
|
selenium>=4.0
|
|
tblib>=1.7.0 # So that the django test runner provides tracebacks
|
|
tlds>=2022042700 # Used to teach bleach about which TLDs currently exist
|
|
tqdm>=4.64.0
|
|
Unidecode>=1.3.4
|
|
urllib3>=2
|
|
weasyprint>=59
|
|
xml2rfc>=3.12.4
|
|
xym>=0.6,<1.0
|