Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 2 additions & 2 deletions .github/workflows/build.yml
Original file line number Diff line number Diff line change
Expand Up @@ -466,7 +466,7 @@ jobs:
token: ${{ secrets.GH_INFRA_K8S_TOKEN }}
inputs: '{ "environment":"${{ secrets.GHA_K8S_CLUSTER }}", "app":"datatracker", "appVersion":"${{ env.PKG_VERSION }}", "remoteRef":"${{ github.sha }}" }'
wait-for-completion: true
wait-for-completion-timeout: 10m
wait-for-completion-timeout: 30m
wait-for-completion-interval: 30s
display-workflow-run-url: false

Expand All @@ -493,6 +493,6 @@ jobs:
token: ${{ secrets.GH_INFRA_K8S_TOKEN }}
inputs: '{ "environment":"${{ secrets.GHA_K8S_CLUSTER }}", "app":"datatracker", "appVersion":"${{ env.PKG_VERSION }}", "remoteRef":"${{ github.sha }}" }'
wait-for-completion: true
wait-for-completion-timeout: 10m
wait-for-completion-timeout: 30m
wait-for-completion-interval: 30s
display-workflow-run-url: false
102 changes: 102 additions & 0 deletions .pnp.cjs

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

5 changes: 3 additions & 2 deletions ietf/static/js/meeting_stats.js
Original file line number Diff line number Diff line change
@@ -1,7 +1,8 @@
// Copyright The IETF Trust 2026, All Rights Reserved
import Chart from 'chart.js/auto'
import autocolors from 'chartjs-plugin-autocolors'

document.addEventListener('DOMContentLoaded', () => {
// Need to use autocolors plug-in else all slices are gray...
const autocolors = window['chartjs-plugin-autocolors']
Chart.register(autocolors)
// ── Safely parse JSON data injected from Django view ──
const totalChartData = JSON.parse(document.getElementById('total-chart-data').textContent)
Expand Down
10 changes: 9 additions & 1 deletion ietf/static/js/meeting_timeline.js
Original file line number Diff line number Diff line change
@@ -1,5 +1,10 @@
// Copyright The IETF Trust 2026, All Rights Reserved
import Chart from 'chart.js/auto'
import zoomPlugin from 'chartjs-plugin-zoom'

document.addEventListener('DOMContentLoaded', () => {
Chart.register(zoomPlugin) // enable the zoom plugin

// ── Safely parse JSON data injected from Django view ──
const totalChartData = JSON.parse(document.getElementById('total-chart-data').textContent)
const inPersonChartData = JSON.parse(document.getElementById('in-person-chart-data').textContent)
Expand Down Expand Up @@ -50,7 +55,10 @@ document.addEventListener('DOMContentLoaded', () => {
zoom: {
wheel: { enabled: true }, // scroll to zoom
pinch: { enabled: true }, // pinch on mobile
drag: { enabled: true }, // drag to select range
drag: { // drag to select range
enabled: true,
modifierKey: 'alt'
},
mode: 'xy', // zoom X-axis and Y-axis
},
pan: {
Expand Down
3 changes: 0 additions & 3 deletions ietf/templates/stats/meeting_stats.html
Original file line number Diff line number Diff line change
Expand Up @@ -3,9 +3,6 @@
{% origin %}
{% load ietf_filters static django_bootstrap5 %}
{% block js %}
<!-- Chart.js CDN -->
<script src="https://cdn.jsdelivr.net/npm/chart.js"></script>
<script src="https://cdn.jsdelivr.net/npm/chartjs-plugin-autocolors"></script>
{{ total_chart_data|json_script:"total-chart-data" }}
{{ in_person_chart_data|json_script:"in-person-chart-data" }}
<script src="{% static 'ietf/js/meeting_stats.js' %}"></script>
Expand Down
4 changes: 0 additions & 4 deletions ietf/templates/stats/meetings_timeline.html
Original file line number Diff line number Diff line change
Expand Up @@ -3,10 +3,6 @@
{% origin %}
{% load ietf_filters static django_bootstrap5 %}
{% block js %}
<!-- Chart.js CDN -->
<script src="https://cdn.jsdelivr.net/npm/chart.js"></script>
<script src="https://cdn.jsdelivr.net/npm/hammerjs@2.0.8"></script>
<script src="https://cdn.jsdelivr.net/npm/chartjs-plugin-zoom"></script>
{{ total_chart_data|json_script:"total-chart-data" }}
{{ in_person_chart_data|json_script:"in-person-chart-data" }}
{{ stats_type|json_script:"stats-type-data" }}
Expand Down
18 changes: 11 additions & 7 deletions k8s/settings_local.py
Original file line number Diff line number Diff line change
Expand Up @@ -155,14 +155,18 @@ def _multiline_to_list(s):
EMAIL_HOST = os.environ.get("DATATRACKER_EMAIL_HOST", "localhost")
EMAIL_PORT = int(os.environ.get("DATATRACKER_EMAIL_PORT", "2025"))

_broker_url = os.environ.get("DATATRACKER_BROKER_URL", None)
_celery_password = os.environ.get("CELERY_PASSWORD", None)
if _celery_password is None:
raise RuntimeError("CELERY_PASSWORD must be set")
CELERY_BROKER_URL = "amqp://datatracker:{password}@{host}/{queue}".format(
host=os.environ.get("RABBITMQ_HOSTNAME", "dt-rabbitmq"),
password=_celery_password,
queue=os.environ.get("RABBITMQ_QUEUE", "dt"),
)
if _broker_url is not None:
CELERY_BROKER_URL = _broker_url
elif _celery_password is not None:
CELERY_BROKER_URL = "amqp://datatracker:{password}@{host}/{queue}".format(
host=os.environ.get("RABBITMQ_HOSTNAME", "dt-rabbitmq"),
password=_celery_password,
queue=os.environ.get("RABBITMQ_QUEUE", "dt"),
)
else:
raise RuntimeError("DATATRACKER_BROKER_URL or CELERY_PASSWORD must be set")

# mailarchive API key
_mailing_list_archive_api_key = os.environ.get(
Expand Down
4 changes: 4 additions & 0 deletions package.json
Original file line number Diff line number Diff line change
Expand Up @@ -16,12 +16,16 @@
"@fullcalendar/luxon3": "6.1.11",
"@fullcalendar/timegrid": "6.1.11",
"@fullcalendar/vue3": "6.1.11",
"@kurkle/color": "0.3.1",
"@popperjs/core": "2.11.8",
"@twuni/emojify": "1.0.2",
"bootstrap": "5.3.3",
"bootstrap-icons": "1.11.3",
"browser-fs-access": "0.35.0",
"caniuse-lite": "1.0.30001603",
"chart.js": "^4.5.1",
"chartjs-plugin-autocolors": "0.3.1",
"chartjs-plugin-zoom": "2.2.0",
"d3": "7.9.0",
"file-saver": "2.0.5",
"highcharts": "11.4.0",
Expand Down
63 changes: 63 additions & 0 deletions yarn.lock
Original file line number Diff line number Diff line change
Expand Up @@ -532,6 +532,20 @@ __metadata:
languageName: node
linkType: hard

"@kurkle/color@npm:0.3.1":
version: 0.3.1
resolution: "@kurkle/color@npm:0.3.1"
checksum: e6be5c081bf5acfd4a1803dcd5a0733caf450e73148d5f02dc536b1ff0c60c959c23472a26c9c3c6c78ada04fb6a53c9202db9b2de8ea56f6eeec381f9cc3a1a
languageName: node
linkType: hard

"@kurkle/color@npm:^0.3.0":
version: 0.3.4
resolution: "@kurkle/color@npm:0.3.4"
checksum: b95c6abe0241ba1745b3c84de3b464296b95ce577110b54f46e6c6dcc9a0966491533df43812bd6c66f92cf818e385d1390b280cd5851d4afb52fc37f8a6c0b9
languageName: node
linkType: hard

"@lezer/common@npm:^0.15.0, @lezer/common@npm:^0.15.7":
version: 0.15.12
resolution: "@lezer/common@npm:0.15.12"
Expand Down Expand Up @@ -1944,6 +1958,13 @@ __metadata:
languageName: node
linkType: hard

"@types/hammerjs@npm:^2.0.45":
version: 2.0.46
resolution: "@types/hammerjs@npm:2.0.46"
checksum: caba6ec788d19905c71092670b58514b3d1f5eee5382bf9205e8df688d51e7857b7994e2dd7aed57fac8977bdf0e456d67fbaf23440a4385b8ce25fe2af1ec39
languageName: node
linkType: hard

"@types/istanbul-lib-coverage@npm:^2.0.1":
version: 2.0.4
resolution: "@types/istanbul-lib-coverage@npm:2.0.4"
Expand Down Expand Up @@ -2728,6 +2749,37 @@ browserlist@latest:
languageName: node
linkType: hard

"chart.js@npm:^4.5.1":
version: 4.5.1
resolution: "chart.js@npm:4.5.1"
dependencies:
"@kurkle/color": ^0.3.0
checksum: 34b35b373642994b2adac197e91363625930530e29fc1baa6dbb411b5e1295f9f6572922003a0224a21a3019aec916567c1ed00c33b1373081f189fc188e5a7b
languageName: node
linkType: hard

"chartjs-plugin-autocolors@npm:0.3.1":
version: 0.3.1
resolution: "chartjs-plugin-autocolors@npm:0.3.1"
peerDependencies:
"@kurkle/color": ^0.3.1
chart.js: ">=2"
checksum: de4f87b5bb3e042aa1d3de3886425bbd2340a55ca455b645569d0def602079833182ef214e205ff4466fb5ab1e708761cf37eb51ab3cd622284242c05ed94128
languageName: node
linkType: hard

"chartjs-plugin-zoom@npm:2.2.0":
version: 2.2.0
resolution: "chartjs-plugin-zoom@npm:2.2.0"
dependencies:
"@types/hammerjs": ^2.0.45
hammerjs: ^2.0.8
peerDependencies:
chart.js: ">=3.2.0"
checksum: a540e3834082eeb4dedb5ec6ca381f94d7e101075c19a7b65f2a4cd2d12685b3a416e718c9cf7145799802874fb397f69b71a955dfc56b035946cde4d1eb6c8e
languageName: node
linkType: hard

"chokidar@npm:>=3.0.0 <4.0.0":
version: 3.5.3
resolution: "chokidar@npm:3.5.3"
Expand Down Expand Up @@ -4616,6 +4668,13 @@ browserlist@latest:
languageName: node
linkType: hard

"hammerjs@npm:^2.0.8":
version: 2.0.8
resolution: "hammerjs@npm:2.0.8"
checksum: b092da7d1565a165d7edb53ef0ce212837a8b11f897aa3cf81a7818b66686b0ab3f4747fbce8fc8a41d1376594639ce3a054b0fd4889ca8b5b136a29ca500e27
languageName: node
linkType: hard

"has-bigints@npm:^1.0.1, has-bigints@npm:^1.0.2":
version: 1.0.2
resolution: "has-bigints@npm:1.0.2"
Expand Down Expand Up @@ -7030,6 +7089,7 @@ browserlist@latest:
"@fullcalendar/luxon3": 6.1.11
"@fullcalendar/timegrid": 6.1.11
"@fullcalendar/vue3": 6.1.11
"@kurkle/color": 0.3.1
"@parcel/optimizer-data-url": 2.12.0
"@parcel/transformer-inline-string": 2.12.0
"@parcel/transformer-sass": 2.12.0
Expand All @@ -7044,6 +7104,9 @@ browserlist@latest:
browserlist: latest
c8: 9.1.0
caniuse-lite: 1.0.30001603
chart.js: ^4.5.1
chartjs-plugin-autocolors: 0.3.1
chartjs-plugin-zoom: 2.2.0
d3: 7.9.0
eslint: 8.57.0
eslint-config-standard: 17.1.0
Expand Down
Loading