Skip to content

Commit

Permalink
ci: merge main to release (pull request #7265)
Browse files Browse the repository at this point in the history
ci: merge main to release
  • Loading branch information
rjsparks committed Mar 28, 2024
2 parents 8c72efa + 452d5da commit c41c0bb
Show file tree
Hide file tree
Showing 80 changed files with 868 additions and 2,115 deletions.
4 changes: 2 additions & 2 deletions .github/workflows/build.yml
Expand Up @@ -201,8 +201,8 @@ jobs:
- name: Collect + Push Statics
env:
DEBIAN_FRONTEND: noninteractive
AWS_ACCESS_KEY_ID: ${{ secrets.CF_R2_KEY_ID }}
AWS_SECRET_ACCESS_KEY: ${{ secrets.CF_R2_KEY_SECRET }}
AWS_ACCESS_KEY_ID: ${{ secrets.CF_R2_STATIC_KEY_ID }}
AWS_SECRET_ACCESS_KEY: ${{ secrets.CF_R2_STATIC_KEY_SECRET }}
AWS_DEFAULT_REGION: auto
AWS_ENDPOINT_URL: ${{ secrets.CF_R2_ENDPOINT }}
run: |
Expand Down
1 change: 1 addition & 0 deletions .gitignore
Expand Up @@ -26,6 +26,7 @@ datatracker.sublime-workspace
/static
/tmp-*
/.testresult
*.swp
*.pyc
__pycache__
.yarn/*
Expand Down
244 changes: 204 additions & 40 deletions .pnp.cjs

Large diffs are not rendered by default.

Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file removed .yarn/cache/d3-npm-7.8.5-5db20a5616-e407e79731.zip
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
3 changes: 0 additions & 3 deletions bin/daily
Expand Up @@ -47,8 +47,5 @@ $DTDIR/ietf/manage.py run_yang_model_checks -v0
# Enable when removed from /a/www/ietf-datatracker/scripts/Cron-runner:
$DTDIR/ietf/bin/expire-last-calls

# Send reminders originating from the review app
$DTDIR/ietf/bin/send-review-reminders

# Purge older PersonApiKeyEvents
$DTDIR/ietf/manage.py purge_old_personal_api_key_events 14
3 changes: 3 additions & 0 deletions client/agenda/Agenda.vue
Expand Up @@ -58,14 +58,17 @@
n-button(
:type='agendaStore.isTimezoneMeeting ? `primary` : `default`'
@click='setTimezone(`meeting`)'
:text-color='agendaStore.isTimezoneMeeting ? `#FFF` : null'
) Meeting
n-button(
:type='agendaStore.isTimezoneLocal ? `primary` : `default`'
@click='setTimezone(`local`)'
:text-color='agendaStore.isTimezoneLocal ? `#FFF` : null'
) Local
n-button(
:type='agendaStore.timezone === `UTC` ? `primary` : `default`'
@click='setTimezone(`UTC`)'
:text-color='agendaStore.timezone === `UTC` ? `#FFF` : null'
) UTC
n-select.agenda-timezone-ddn(
v-if='siteStore.viewport > 1250'
Expand Down
7 changes: 4 additions & 3 deletions client/agenda/AgendaQuickAccess.vue
Expand Up @@ -62,7 +62,8 @@
n-button.mt-2(
id='agenda-quickaccess-calview-btn'
block
color='#6c757d'
color='#6f42c1'
text-color='#FFF'
size='large'
strong
@click='agendaStore.$patch({ calendarShown: true })'
Expand All @@ -78,8 +79,8 @@
n-button.mt-2(
id='agenda-quickaccess-addtocal-btn'
block
secondary
color='#6c757d'
:color='siteStore.theme === `dark` ? `rgba(111, 66, 193, .3)` : `#e2d9f3`'
:text-color='siteStore.theme === `dark` ? `#e2d9f3` : `#59359a`'
size='large'
strong
)
Expand Down
5 changes: 4 additions & 1 deletion client/agenda/AgendaScheduleCalendar.vue
Expand Up @@ -11,14 +11,17 @@ n-drawer(v-model:show='isShown', placement='bottom', :height='state.drawerHeight
n-button(
:type='agendaStore.isTimezoneMeeting ? `primary` : `default`'
@click='setTimezone(`meeting`)'
:text-color='agendaStore.isTimezoneMeeting ? `#FFF` : null'
) Meeting
n-button(
:type='agendaStore.isTimezoneLocal ? `primary` : `default`'
@click='setTimezone(`local`)'
:text-color='agendaStore.isTimezoneLocal ? `#FFF` : null'
) Local
n-button(
:type='agendaStore.timezone === `UTC` ? `primary` : `default`'
@click='setTimezone(`UTC`)'
:text-color='agendaStore.timezone === `UTC` ? `#FFF` : null'
) UTC
n-divider(vertical)
n-button.me-2(
Expand All @@ -32,7 +35,7 @@ n-drawer(v-model:show='isShown', placement='bottom', :height='state.drawerHeight
n-badge.ms-2(:value='agendaStore.selectedCatSubs.length', processing)
n-button(
ghost
color='gray'
:color='siteStore.theme === `dark` ? `#e35d6a` : `gray`'
strong
@click='close'
)
Expand Down
69 changes: 41 additions & 28 deletions client/components/Polls.vue
Expand Up @@ -3,19 +3,20 @@
n-data-table(
v-if='state.items.length > 0'
:data='state.items'
:columns='columns'
:columns='state.columns'
striped
)
span.text-danger(v-else-if='state.errMessage')
em {{ state.errMessage }}
span.text-body-secondary(v-else)
em No polls available.
</template>

<script setup>
import { onMounted, reactive } from 'vue'
import { DateTime } from 'luxon'
import {
NDataTable
} from 'naive-ui'
import { cloneDeep, startCase } from 'lodash-es'
import { NDataTable } from 'naive-ui'
// PROPS
Expand All @@ -29,13 +30,15 @@ const props = defineProps({
// STATE
const state = reactive({
items: []
items: [],
colums: [],
errMessage: null
})
const columns = [
const defaultColumns = [
{
title: 'Question',
key: 'question'
key: 'text'
},
{
title: 'Start Time',
Expand All @@ -44,35 +47,45 @@ const columns = [
{
title: 'End Time',
key: 'end_time'
},
{
title: 'Raise Hand',
key: 'raise_hand'
},
{
title: 'Do Not Raise Hand',
key: 'do_not_raise_hand'
}
]
// MOUNTED
onMounted(() => {
// Get polls from embedded json tag
const polls = JSON.parse(document.getElementById(`${props.componentId}-data`).textContent || '[]')
if (polls.length > 0) {
let idx = 1
for (const poll of polls) {
state.items.push({
id: `poll-${idx}`,
question: poll.text,
start_time: DateTime.fromISO(poll.start_time).toFormat('dd LLLL yyyy \'at\' HH:mm:ss a ZZZZ'),
end_time: DateTime.fromISO(poll.end_time).toFormat('dd LLLL yyyy \'at\' HH:mm:ss a ZZZZ'),
raise_hand: poll.raise_hand,
do_not_raise_hand: poll.do_not_raise_hand
})
idx++
try {
const polls = JSON.parse(document.getElementById(`${props.componentId}-data`).textContent || '[]')
if (polls.length > 0) {
// Populate columns
state.columns = cloneDeep(defaultColumns)
for (const col in polls[0]) {
if (!['text', 'start_time', 'end_time'].includes(col)) {
state.columns.push({
title: startCase(col),
key: col,
minWidth: 100,
titleAlign: 'center',
align: 'center'
})
}
}
// Populate rows
let idx = 1
for (const poll of polls) {
state.items.push({
...poll,
id: `poll-${idx}`,
start_time: DateTime.fromISO(poll.start_time).toFormat('dd LLLL yyyy \'at\' HH:mm:ss a ZZZZ'),
end_time: DateTime.fromISO(poll.end_time).toFormat('dd LLLL yyyy \'at\' HH:mm:ss a ZZZZ')
})
idx++
}
}
} catch (err) {
console.warn(err)
state.errMessage = 'Failed to load poll results.'
}
})
</script>
Expand Down
20 changes: 10 additions & 10 deletions debug.py
Expand Up @@ -55,7 +55,7 @@ def fix(s,n=64):
if len(s) > n+3:
s = s[:n]+"..."
return s
def wrap(fn, *params,**kwargs):
def wrap(*params,**kwargs):
call = wrap.callcount = wrap.callcount + 1

indent = ' ' * _report_indent[0]
Expand All @@ -81,8 +81,8 @@ def wrap(fn, *params,**kwargs):
return ret
wrap.callcount = 0
if debug:
from decorator import decorator
return decorator(wrap, fn)
from functools import update_wrapper
return update_wrapper(wrap, fn)
else:
return fn

Expand Down Expand Up @@ -119,7 +119,7 @@ def clock(s):
def time(fn):
"""Decorator to print timing information about a function call.
"""
def wrap(fn, *params,**kwargs):
def wrap(*params,**kwargs):

indent = ' ' * _report_indent[0]
fc = "%s.%s()" % (fn.__module__, fn.__name__,)
Expand All @@ -132,8 +132,8 @@ def wrap(fn, *params,**kwargs):
return ret
wrap.callcount = 0
if debug:
from decorator import decorator
return decorator(wrap, fn)
from functools import update_wrapper
return update_wrapper(wrap, fn)
else:
return fn

Expand Down Expand Up @@ -190,7 +190,7 @@ def type(name):
value = eval(name, frame.f_globals, frame.f_locals)
indent = ' ' * (_report_indent[0])
sys.stderr.write("%s%s: %s\n" % (indent, name, value))

def say(s):
if debug:
indent = ' ' * (_report_indent[0])
Expand All @@ -205,11 +205,11 @@ def wrapper(*args, **kwargs):
prof.dump_stats(datafn)
return retval
if debug:
from decorator import decorator
return decorator(wrapper, fn)
from functools import update_wrapper
return update_wrapper(wrapper, fn)
else:
return fn

def traceback(levels=None):
if debug:
indent = ' ' * (_report_indent[0])
Expand Down
14 changes: 7 additions & 7 deletions dev/coverage-action/package-lock.json

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

2 changes: 1 addition & 1 deletion dev/coverage-action/package.json
Expand Up @@ -19,6 +19,6 @@
"eslint-plugin-import": "2.29.1",
"eslint-plugin-node": "11.1.0",
"eslint-plugin-promise": "6.1.1",
"npm-check-updates": "16.14.15"
"npm-check-updates": "16.14.17"
}
}
8 changes: 4 additions & 4 deletions ietf/checks.py
Expand Up @@ -42,14 +42,14 @@ def check_group_email_aliases_exists(app_configs, **kwargs):
if not ok:
errors.append(checks.Error(
"Found no aliases in the group email aliases file\n'%s'."%settings.GROUP_ALIASES_PATH,
hint="Please run the generate_group_aliases management command to generate them.",
hint="These should be created by the infrastructure using ietf/bin/aliases-from-json.py.",
obj=None,
id="datatracker.E0002",
))
except IOError as e:
errors.append(checks.Error(
"Could not read group email aliases:\n %s" % e,
hint="Please run the generate_group_aliases management command to generate them.",
hint="These should be created by the infrastructure using ietf/bin/aliases-from-json.py.",
obj=None,
id="datatracker.E0003",
))
Expand All @@ -69,14 +69,14 @@ def check_doc_email_aliases_exists(app_configs, **kwargs):
if not ok:
errors.append(checks.Error(
"Found no aliases in the document email aliases file\n'%s'."%settings.DRAFT_VIRTUAL_PATH,
hint="Please run the generate_draft_aliases management command to generate them.",
hint="These should be created by the infrastructure using ietf/bin/aliases-from-json.py.",
obj=None,
id="datatracker.E0004",
))
except IOError as e:
errors.append(checks.Error(
"Could not read document email aliases:\n %s" % e,
hint="Please run the generate_draft_aliases management command to generate them.",
hint="These should be created by the infrastructure using ietf/bin/aliases-from-json.py.",
obj=None,
id="datatracker.E0005",
))
Expand Down

0 comments on commit c41c0bb

Please sign in to comment.