Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
281 commits
Select commit Hold shift + click to select a range
bf0ab3f
new
Apr 15, 2024
35eb093
[ 101 ] correct time for Dov's talk
fredrikNordvallForsberg Apr 17, 2024
2e17aa5
[ 101 ] typo
fredrikNordvallForsberg Apr 17, 2024
26ee6d1
Add Ezra's talk details
dylanbraithwaite Apr 18, 2024
8955cb4
Update _101.json
dylanbraithwaite Apr 19, 2024
d058b45
Zanzi 101 talk abstract
dylanbraithwaite Apr 25, 2024
ceb0868
Escape quotes in 101.json
dylanbraithwaite Apr 25, 2024
f8f4d1c
[ 101 ] video
gallais Apr 26, 2024
07d0fc3
[ update ] remove PhD advert
fredrikNordvallForsberg May 7, 2024
6b1c319
Clemens 101 abstract
dylanbraithwaite May 9, 2024
cd65c04
Ross 101 abstract
dylanbraithwaite May 14, 2024
bff8daa
Push Guillaume's talk by a week, and add Jan in his place
dylanbraithwaite May 15, 2024
76f1ce9
Push Guillaume's talk by another week
dylanbraithwaite May 15, 2024
7d53d27
Jan Abstract
dylanbraithwaite May 23, 2024
8c320a6
[ 101 ] deploy abstract
gallais Jun 5, 2024
76ca5a2
[ people ] add Riu's website
gallais Jun 19, 2024
526d79d
[ people ] André's website
gallais Jun 19, 2024
ef05251
update people
fredrikNordvallForsberg Aug 28, 2024
de0fd5c
[ news ] recording some past events
fredrikNordvallForsberg Aug 30, 2024
0fb987b
[ accommodation ] update pass
fredrikNordvallForsberg Sep 18, 2024
deaa984
[ 101 ] planning meeting
fredrikNordvallForsberg Sep 18, 2024
6f57520
[ TYPES25 ] placeholder webpage
fredrikNordvallForsberg Sep 25, 2024
d622497
[ TYPES ] remove CALCO link for now
fredrikNordvallForsberg Sep 25, 2024
a9fec2f
[ 101 ] talk by Conor
fredrikNordvallForsberg Sep 25, 2024
2f2009b
[ TYPES ] straighten image
fredrikNordvallForsberg Sep 25, 2024
d301032
[ 101 ] talk by André.json
dbyuksel Oct 2, 2024
2849661
[ 101 ] new usual time
fredrikNordvallForsberg Oct 3, 2024
4606c9a
new people
fredrikNordvallForsberg Oct 3, 2024
37828ae
[ news ] fix date
fredrikNordvallForsberg Oct 3, 2024
5a13c58
[ CI ] update cron time, and dependencies to latest versions
fredrikNordvallForsberg Oct 4, 2024
d6f471f
Update _101.json
dbyuksel Oct 5, 2024
01bfcd7
Update _101.json
dbyuksel Oct 15, 2024
a46a4c2
Sean's talk.json
dbyuksel Oct 18, 2024
0606483
[ 101 ] affiliations + some HTML encodings
fredrikNordvallForsberg Oct 21, 2024
08ae45c
101: translate <p> + <q> properly
fredrikNordvallForsberg Oct 21, 2024
53e06e0
Update _101.json
dbyuksel Nov 1, 2024
0040573
Update _101.json
dbyuksel Nov 1, 2024
43df8b0
location updates for the coming talks
dbyuksel Nov 1, 2024
cc1fdc0
[ Phd 2024 ] add ad
fredrikNordvallForsberg Nov 4, 2024
cbf78da
[ phd 2024 ] link to ad
fredrikNordvallForsberg Nov 4, 2024
91999b2
[ fix ] stray +
fredrikNordvallForsberg Nov 4, 2024
c900639
recording links updated for the last three talks
dbyuksel Nov 4, 2024
0561ec3
[ ci ] Winter time...
fredrikNordvallForsberg Nov 8, 2024
9cbc991
remove Twitter link
fredrikNordvallForsberg Nov 8, 2024
11943d5
Bob's talk recording link update
dbyuksel Nov 8, 2024
6b93b71
Bob's talk new material added
dbyuksel Nov 8, 2024
23525ba
Jade's talk
dbyuksel Nov 11, 2024
89236aa
Jade's talk - recording added
dbyuksel Nov 15, 2024
007b0c9
Jade's talk - added new material
dbyuksel Nov 15, 2024
3b6c2d7
cancelled talk (22Nov)
dbyuksel Nov 15, 2024
f9b247f
Fred's talk
dbyuksel Nov 25, 2024
3bc8744
add CF blurb
fredrikNordvallForsberg Nov 26, 2024
1eb7d64
Clemens' talk
dbyuksel Dec 2, 2024
f7e4bbd
first draft BCTCS 2025 website
fredrikNordvallForsberg Dec 3, 2024
3f75191
Clemens' talk update
dbyuksel Dec 4, 2024
7b0081f
Neil's talk cancelled
dbyuksel Dec 4, 2024
11e6c82
[ BCTCS ] update dates slightly
fredrikNordvallForsberg Dec 9, 2024
b072e83
[ TYPES 2025 ] CFP and PC
fredrikNordvallForsberg Dec 10, 2024
d5fa8fd
[ TYPES 2025 ] fix w3c validator error
fredrikNordvallForsberg Dec 10, 2024
8dff89b
[ TYPES 2025 ] fix typo
fredrikNordvallForsberg Dec 10, 2024
a814d7e
Cancelled talk - Clemens'
dbyuksel Dec 11, 2024
3f65715
[ TYPES 2025 ] Women in EPN link
fredrikNordvallForsberg Dec 12, 2024
ba12864
[ BCTCS 2025 ] abstract submission + registration fees
fredrikNordvallForsberg Dec 13, 2024
7b8c9eb
April's talk and planning meeting
dbyuksel Jan 13, 2025
9de71aa
April's talk update
dbyuksel Jan 13, 2025
277e43a
new msp-interest address
fredrikNordvallForsberg Jan 13, 2025
b6e1004
advertise conferences
fredrikNordvallForsberg Jan 13, 2025
32678f1
[ news ] conferences
fredrikNordvallForsberg Jan 13, 2025
e63599b
new semesters talks
dbyuksel Jan 17, 2025
6965396
[ 101 ] talk by Matthew Cartmell
fredrikNordvallForsberg Jan 17, 2025
9f8e683
[ 101 ] remove TBD abstracts
fredrikNordvallForsberg Jan 17, 2025
df95f8c
[ 101 ] cancel duplicate talk
fredrikNordvallForsberg Jan 17, 2025
7a83ad0
[ 101 ] usual time and place
fredrikNordvallForsberg Jan 17, 2025
9748425
venue updates
dbyuksel Jan 17, 2025
130e590
Conor's talk
dbyuksel Jan 17, 2025
e7fd5f4
[ 101 ] abstract from Matthew
fredrikNordvallForsberg Jan 17, 2025
1e23721
Conor's talk recording
dbyuksel Jan 20, 2025
da54c42
Conor's talk recording
dbyuksel Jan 20, 2025
eafc853
[ BCTCS ] invited speakers
fredrikNordvallForsberg Jan 21, 2025
652a0a7
update projects and people
fredrikNordvallForsberg Jan 21, 2025
daf4a01
Andre's talk
dbyuksel Jan 24, 2025
a5775a8
materials for André's talk
dbyuksel Jan 27, 2025
897d433
Jules' talk
dbyuksel Jan 27, 2025
99e04f0
Ezra's talk and Jules' video link
dbyuksel Feb 3, 2025
ed104f2
fix
dbyuksel Feb 3, 2025
04aa55a
Room updates
dbyuksel Feb 3, 2025
4e83bdb
some fixes
dbyuksel Feb 3, 2025
118af99
[ types ] first sponsor
fredrikNordvallForsberg Feb 6, 2025
622ddda
[ types ] confirmed invited speakers (not linked for now)
fredrikNordvallForsberg Feb 6, 2025
0f07ff3
[ bctcs ] registration link
fredrikNordvallForsberg Feb 6, 2025
56d3712
[ types ] Well-typed sponsor
fredrikNordvallForsberg Feb 7, 2025
cd7b158
[ types ] invited speakers
fredrikNordvallForsberg Feb 9, 2025
d0187f0
[ types ] update CFP slightly
fredrikNordvallForsberg Feb 10, 2025
d1d8b39
Recording link for Ezra's talk
dbyuksel Feb 10, 2025
ef953bf
link fix
dbyuksel Feb 10, 2025
274c964
[ ci ] broken caching?
fredrikNordvallForsberg Feb 10, 2025
029edae
Remove link to MSP201 until we revive it
fredrikNordvallForsberg Feb 10, 2025
985cbd6
[ ci ] special if syntax
fredrikNordvallForsberg Feb 10, 2025
b1c1f37
change 201 tense
fredrikNordvallForsberg Feb 10, 2025
2dc9528
[ ci ] work around cache-hit bug/questionable feature
fredrikNordvallForsberg Feb 10, 2025
3fa21aa
Clovis' talk
dbyuksel Feb 13, 2025
8781bcd
Bob's talk
dbyuksel Feb 20, 2025
9540b99
[ TYPES ] add Jane Street as gold sponsor
fredrikNordvallForsberg Feb 21, 2025
64895b2
2025-02-24-msp101-bob.pdf
dbyuksel Feb 25, 2025
adbb675
[ BCTCS ] practical information
fredrikNordvallForsberg Feb 25, 2025
c89dbb4
[ BCTCS ] close submissions
fredrikNordvallForsberg Feb 25, 2025
670fca6
Fred's talk
dbyuksel Feb 27, 2025
2fee121
[ BCTCS ] accepted talks
fredrikNordvallForsberg Feb 27, 2025
6d9981d
[ BCTCS ] Malin's title
fredrikNordvallForsberg Feb 27, 2025
1a124a7
[ TYPES ] deadline extension
fredrikNordvallForsberg Feb 27, 2025
9ca89a5
[ TYPES ] correct title
fredrikNordvallForsberg Feb 27, 2025
ee49016
[ BCTCS ] rough schedule announcement
fredrikNordvallForsberg Feb 27, 2025
c201c6f
[ BCTCS ] fix
fredrikNordvallForsberg Feb 27, 2025
cf9edba
[ BCTCS ] abstracts
fredrikNordvallForsberg Feb 27, 2025
f02591b
[ TYPES ] logo
fredrikNordvallForsberg Feb 27, 2025
212b941
[ BCTCS ] Riu's abstract
fredrikNordvallForsberg Feb 28, 2025
b5d2253
[ bctcs ] travel bursaries
fredrikNordvallForsberg Mar 4, 2025
6cae206
[ bctcs ] change wording slightly
fredrikNordvallForsberg Mar 4, 2025
4c62d28
Cancelled talk (Matthew Cartmell)
dbyuksel Mar 4, 2025
a4786d2
[ BCTCS ] short form URL
fredrikNordvallForsberg Mar 5, 2025
b5be08f
Zanzi's talk
dbyuksel Mar 7, 2025
6f67568
switch in the schedule (April-Philippa)
dbyuksel Mar 7, 2025
71aa943
[ bctcs ] education track blurb
fredrikNordvallForsberg Mar 10, 2025
75d2807
recording link for Zanzi
dbyuksel Mar 10, 2025
1e5e2ca
[ bctcs ] Heilbronn logos
fredrikNordvallForsberg Mar 11, 2025
4f7d137
[ types ] submission deadline over
fredrikNordvallForsberg Mar 11, 2025
c0f04fc
[ bctcs ] add Oana
fredrikNordvallForsberg Mar 12, 2025
9eab441
Ross' talk
dbyuksel Mar 13, 2025
5385fe5
[ bctcs ] make clear that the sponsors are sponsors
fredrikNordvallForsberg Mar 13, 2025
e477c41
[ bctcs ] remove Worrall's abstract (withdrawn)
fredrikNordvallForsberg Mar 14, 2025
9dee88c
[ types ] IOG sponsor
fredrikNordvallForsberg Mar 18, 2025
0ec46d6
[ 101 ] last minute talk
fredrikNordvallForsberg Mar 19, 2025
d6ff436
Ross' talk recording
dbyuksel Mar 19, 2025
d0f4d3e
Recording links updated
dbyuksel Mar 19, 2025
a5b4a76
Justus' talk - schedule change
dbyuksel Mar 20, 2025
2562e87
[ bctcs ] TCS Teaching track talks
fredrikNordvallForsberg Mar 20, 2025
d385ae9
[ bctcs ] update dates, close submissions
fredrikNordvallForsberg Mar 20, 2025
99bed09
[ bctcs ] update finishing time
fredrikNordvallForsberg Mar 20, 2025
f152f13
[ bctcs ] invited talk abstracts
fredrikNordvallForsberg Mar 25, 2025
956cf47
[ bctcs ] oops, add the file as well
fredrikNordvallForsberg Mar 25, 2025
9b7eb8b
[ types ] Tunnock's sponsors
fredrikNordvallForsberg Mar 25, 2025
e02a93a
Cancellation of Philippa's talk
dbyuksel Mar 28, 2025
f2bd262
[ bctcs ] t & a from Elizabeth
fredrikNordvallForsberg Mar 28, 2025
63cd467
[ bctcs ] draft programme
fredrikNordvallForsberg Mar 31, 2025
8b0ed4a
[ bctcs ] some programme tweaks
fredrikNordvallForsberg Mar 31, 2025
261b8de
[ bctcs ] w3c validator
fredrikNordvallForsberg Apr 1, 2025
a7ab366
[ bctcs ] dinner in programme
fredrikNordvallForsberg Apr 1, 2025
5520e9b
[ bctcs ] make schedule available, describe dinner
fredrikNordvallForsberg Apr 2, 2025
c914991
Aven's talk
dbyuksel Apr 3, 2025
b0510ba
[ types ] registration link
fredrikNordvallForsberg Apr 3, 2025
cae10fc
[ bctcs ] abstract from Jess, cancel Neil
fredrikNordvallForsberg Apr 7, 2025
405dae3
[ bctcs ] AGM
fredrikNordvallForsberg Apr 8, 2025
9ad1221
[ bctcs ] registration room
fredrikNordvallForsberg Apr 8, 2025
e7f5779
[ bctcs ] update room information
fredrikNordvallForsberg Apr 8, 2025
4ee35e7
[ bctcs ] registration is closed
fredrikNordvallForsberg Apr 10, 2025
c277ecd
[ types ] accepted talks
fredrikNordvallForsberg Apr 11, 2025
f9650b1
[ types ] . instead of :
fredrikNordvallForsberg Apr 11, 2025
6da0775
[ bctcs ] programme is final
fredrikNordvallForsberg Apr 11, 2025
b060719
[ types ] update affiliation
fredrikNordvallForsberg Apr 14, 2025
687fb75
[ types ] one `.` to `:`
fredrikNordvallForsberg Apr 14, 2025
bf76167
[ bctcs ] slides from Monday
fredrikNordvallForsberg Apr 14, 2025
7bfaaad
[ types ] practical information
fredrikNordvallForsberg Apr 14, 2025
e950ae5
[ types ] add social hub + running
fredrikNordvallForsberg Apr 15, 2025
40f9ef5
April's 101 talk
dbyuksel Apr 15, 2025
09beab7
room update April's talk
dbyuksel Apr 15, 2025
4edad89
[ bctcs ] changes in programme
fredrikNordvallForsberg Apr 15, 2025
fb20c19
[ bctcs ] title and abstract from Conor
fredrikNordvallForsberg Apr 15, 2025
f5a25eb
[ bctcs ] slides Tuesday
fredrikNordvallForsberg Apr 15, 2025
83d032f
[ bctcs ] Wed AM slides
fredrikNordvallForsberg Apr 16, 2025
008376b
[ bctcs ] oops, missed one set of slides
fredrikNordvallForsberg Apr 16, 2025
a1f2e86
[ bctcs ] oops oops, forgot to add the PDF
fredrikNordvallForsberg Apr 16, 2025
cf3b7d0
[ bctcs ] slides Wed PM
fredrikNordvallForsberg Apr 16, 2025
8fbbfc0
[ bctcs ] receipt
fredrikNordvallForsberg Apr 16, 2025
bc0a00f
[ types ] correct author order
fredrikNordvallForsberg Apr 16, 2025
f6ac99d
Justus' talk cancelled
dbyuksel Apr 22, 2025
b557182
[ types ] registration page
fredrikNordvallForsberg Apr 22, 2025
38896c5
[ types ] poster
fredrikNordvallForsberg Apr 22, 2025
8ba1690
video recording link added
dbyuksel Apr 22, 2025
efc76ca
[ types ] link to EPN funding for ITG countries
fredrikNordvallForsberg Apr 23, 2025
d6bce24
[ 101 ] ADR meeting
fredrikNordvallForsberg Apr 29, 2025
ae9555a
[ types ] fix typo in abstract title
fredrikNordvallForsberg May 5, 2025
7b32d26
[ types ] some added authors
fredrikNordvallForsberg May 10, 2025
1c0c357
[ types ] another missing author name
fredrikNordvallForsberg May 11, 2025
031c513
[ types ] abstracts
fredrikNordvallForsberg May 12, 2025
b05880c
[ types ] reinstate manual additional author
fredrikNordvallForsberg May 12, 2025
9112567
[ types ] invited speakers + the passage of time
fredrikNordvallForsberg May 13, 2025
427393b
some recent news
fredrikNordvallForsberg May 13, 2025
2475814
[ types ] title from Sonia
fredrikNordvallForsberg May 14, 2025
3d401ad
[ types ] update paper 27
fredrikNordvallForsberg May 14, 2025
ea2d153
[ types ] preliminary programme
fredrikNordvallForsberg May 21, 2025
2806cce
[ types ] update short talk background
fredrikNordvallForsberg May 21, 2025
7c0ad83
[ types ] two missing short annotations
fredrikNordvallForsberg May 21, 2025
185ad94
[ types ] make programme public
fredrikNordvallForsberg May 21, 2025
d909cbc
[ types ] update abstract
fredrikNordvallForsberg May 22, 2025
378afe9
Liang-Ting Chen's talk
dbyuksel May 23, 2025
06a53a8
[ types ] corrected paper 82
fredrikNordvallForsberg May 28, 2025
225c7d3
[ types ] a requested swap in the programme
fredrikNordvallForsberg May 28, 2025
166ecea
[ types ] also change order within session
fredrikNordvallForsberg May 28, 2025
b1a18c6
[ types ] Irish Conor
fredrikNordvallForsberg May 30, 2025
8ae5d1d
[ types ] registration is closed
fredrikNordvallForsberg May 31, 2025
f87cead
[ types ] ICS programme
fredrikNordvallForsberg May 31, 2025
5a58957
[ types ] fix ICS links
fredrikNordvallForsberg May 31, 2025
433711d
[ types ] PDF programme
fredrikNordvallForsberg May 31, 2025
44581fd
[ types ] makes Christian's "title" public
fredrikNordvallForsberg Jun 2, 2025
d5761a0
[ types ] abstract from Sonia
fredrikNordvallForsberg Jun 3, 2025
aabf6c1
[ types ] Sonia PDF abstract
fredrikNordvallForsberg Jun 3, 2025
236ff7a
[ types ] one talk swap
fredrikNordvallForsberg Jun 3, 2025
ed4ae9e
[ types ] Ingo's abstract
fredrikNordvallForsberg Jun 6, 2025
2a69bc6
[ types ] update programme
fredrikNordvallForsberg Jun 6, 2025
571aff7
[ types ] timezone in ICS file
fredrikNordvallForsberg Jun 6, 2025
022c61e
[ types ] who the f is chair?
fredrikNordvallForsberg Jun 6, 2025
c293fd5
[ types ] handout + chair
fredrikNordvallForsberg Jun 6, 2025
b9fc1bf
[ types ] Christian's title and abstract
fredrikNordvallForsberg Jun 8, 2025
8195568
make sidebar links robust, add Fiona
fredrikNordvallForsberg Jun 8, 2025
13fbec2
[ types ] abstract Chris
fredrikNordvallForsberg Jun 9, 2025
f0f381e
[ types ] update adaptTT abstract
fredrikNordvallForsberg Jun 9, 2025
14da1d8
[ types ] last chair
fredrikNordvallForsberg Jun 9, 2025
cec01d5
[ types ] book of abstracts
fredrikNordvallForsberg Jun 9, 2025
1a7728e
[ types ] abstract 16 updated
fredrikNordvallForsberg Jun 9, 2025
49a8a67
[ types ] slides Monday
fredrikNordvallForsberg Jun 9, 2025
a7b16d3
[ types ] updated WEPN programme
fredrikNordvallForsberg Jun 10, 2025
671065f
[ types ] fix bug in programme rendering
fredrikNordvallForsberg Jun 10, 2025
7ee656b
[ TYPES ] add coffee promise
gallais Jun 10, 2025
bc2e86a
[ types ] slides Tuesday
fredrikNordvallForsberg Jun 10, 2025
278ef9d
[ types ] contributed slides Wed
fredrikNordvallForsberg Jun 11, 2025
22f048f
[ types ] updated (?) slides Roux
fredrikNordvallForsberg Jun 11, 2025
ab8bb75
[ types ] group photo
fredrikNordvallForsberg Jun 11, 2025
35a5763
[ types ] Sonia slides
fredrikNordvallForsberg Jun 11, 2025
4f56b09
[ TYPES ] HERE
gallais Jun 12, 2025
891912d
[ types ] slides Thursday
fredrikNordvallForsberg Jun 12, 2025
44b4932
[ types ] business meeting slides
fredrikNordvallForsberg Jun 12, 2025
888e3a4
[ types ] update abstract 68
fredrikNordvallForsberg Jun 12, 2025
8d25a06
[ types ] correct filename
fredrikNordvallForsberg Jun 12, 2025
3cc68ca
[ types ] talk swap
fredrikNordvallForsberg Jun 13, 2025
fdb78e3
[ types ] update programme in handout
fredrikNordvallForsberg Jun 13, 2025
db50c9a
[ types ] slides Friday
fredrikNordvallForsberg Jun 13, 2025
8447588
[ types ] fix link
fredrikNordvallForsberg Jun 13, 2025
cb2601b
[ types ] scanned Conor's slides
fredrikNordvallForsberg Jun 16, 2025
b0be1aa
Fiona's webpage
fredrikNordvallForsberg Jun 16, 2025
17b7f36
Fiona news
fredrikNordvallForsberg Jun 16, 2025
ed947c8
[ types ] updated slides Blechschmidt
iblech Jun 20, 2025
a6f87d9
[ types ] updated slides 17, video links from confirmed invited speakers
fredrikNordvallForsberg Jun 26, 2025
fc01d5d
[ types ] video links
fredrikNordvallForsberg Jun 30, 2025
f5b70c9
[ types ] update Bálint's slides
fredrikNordvallForsberg Jul 8, 2025
f649afc
update logic blurb, record Riu's viva
fredrikNordvallForsberg Jul 23, 2025
2921ae9
[ types 2025 ] in the short term, be a little bit more detailed about…
fredrikNordvallForsberg Sep 1, 2025
dc047f5
[ admin ] ignore files ending with a tilda.
jfdm Sep 4, 2025
bafeb73
[ phd ] make explicit that previous opportunities are closed.
jfdm Sep 4, 2025
ddf011c
[ phd ] daft text for JARSS 2026.
jfdm Sep 4, 2025
7993e5b
[ phd ] better text for vikraman.
jfdm Sep 4, 2025
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
23 changes: 12 additions & 11 deletions .github/workflows/generate-website.yml
Original file line number Diff line number Diff line change
Expand Up @@ -17,10 +17,10 @@ jobs:
steps:
##### Setup ##############################################
- name: Checkout repository
uses: actions/checkout@v3
uses: actions/checkout@v4

- name: Detect if we should rebuild the binaries
uses: dorny/paths-filter@v2
uses: dorny/paths-filter@v3
id: changes
if: github.event_name != 'schedule'
with:
Expand All @@ -30,15 +30,9 @@ jobs:
- '*.hs'
- '.github/workflows/generate-website.yml'

- name: Install cabal and GHC
if: github.event_name != 'schedule' && steps.changes.outputs.haskell-changed == 'true'
uses: haskell-actions/setup@v2
with:
ghc-version: ${{ env.GHC_VERSION }}
cabal-version: 'latest'

- name: Cache cabal and executables
uses: actions/cache@v3
uses: actions/cache@v4
id: caching
with:
path: |
~/.cabal/store
Expand All @@ -47,9 +41,16 @@ jobs:
key: cabal-${{ runner.os }}-${{ env.GHC_VERSION }}-${{ github.sha }}
restore-keys: cabal-${{ runner.os }}-${{ env.GHC_VERSION }}

- name: Install cabal and GHC
if: github.event_name != 'schedule' && steps.changes.outputs.haskell-changed == 'true' || hashFiles('~/cabal/bin/Generate') != ''
uses: haskell-actions/setup@v2
with:
ghc-version: ${{ env.GHC_VERSION }}
cabal-version: 'latest'

##### Installation #######################################
- name: Install Generate[101]
if: github.event_name != 'schedule' && steps.changes.outputs.haskell-changed == 'true'
if: github.event_name != 'schedule' && steps.changes.outputs.haskell-changed == 'true' || hashFiles('~/cabal/bin/Generate') != ''
run: cabal install --overwrite-policy=always --builddir _dist

- name: Add .cabal/bin to PATH
Expand Down
3 changes: 3 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,9 @@ _build/*
_dist/*
dist/*

# Misc Backup files
*~

# Logs downloaded using make get-logs
_logs/*

Expand Down
Binary file added 101/slides/2024-02-23_videla.pdf
Binary file not shown.
Binary file added 101/slides/2024-03-22_capucci.pdf
Binary file not shown.
Binary file added 101/slides/slides-1740482502818.pdf
Binary file not shown.
20 changes: 20 additions & 0 deletions GenerateNews.hs
Original file line number Diff line number Diff line change
Expand Up @@ -9,9 +9,12 @@ import Data.List
import Data.Maybe
import Data.Function

import Data.Default (def)

-- import Data.ByteString.Lazy (ByteString)
-- import qualified Data.ByteString.Lazy as LBS
import qualified Data.ByteString as BS
import qualified Data.ByteString.Char8 as BS8
import Data.Text (Text)
import qualified Data.Text as T

Expand All @@ -22,6 +25,10 @@ import Data.Foldable
import Network.HTTP.Client
import Network.HTTP.Client.TLS
import Network.HTTP.Types.Status
import Network.TLS (defaultParamsClient, clientShared, clientSupported, sharedCAStore, supportedCiphers, supportedExtendedMainSecret, EMSMode(..))
import Network.TLS.Extra (ciphersuite_default)
import Network.Connection (TLSSettings(..))
import System.X509 (getSystemCertificateStore)

import Data.Time
import Data.Time.Format
Expand Down Expand Up @@ -117,6 +124,19 @@ pubsRSS = parseRequest_ "https://pureportal.strath.ac.uk/en/organisations/mathem
getPureRSS :: Int -- number of entries
-> IO [Item]
getPureRSS n = do
certificateStore <- getSystemCertificateStore
let tlsSettings = TLSSettings $
(defaultParamsClient
(show $ host pubsRSS)
(BS8.pack $ show $ port pubsRSS))
{ clientSupported = def { supportedCiphers =
ciphersuite_default
, supportedExtendedMainSecret =
AllowEMS
}
, clientShared = def { sharedCAStore = certificateStore }
}
let tlsManagerSettings = mkManagerSettings tlsSettings Nothing
manager <- newManager tlsManagerSettings
res <- httpLbs pubsRSS manager
case statusIsSuccessful (responseStatus res) of
Expand Down
4 changes: 4 additions & 0 deletions MSPweb.cabal
Original file line number Diff line number Diff line change
Expand Up @@ -47,12 +47,16 @@ executable GenerateNews
main-is: GenerateNews.hs
other-modules: Html
build-depends: base,
crypton-connection,
crypton-x509-system,
data-default,
yaml,
bytestring,
http-client,
http-client-tls,
http-types,
time,
tls,
feed,
text
default-language: Haskell2010
29 changes: 19 additions & 10 deletions OneOhOne.hs
Original file line number Diff line number Diff line change
Expand Up @@ -42,10 +42,10 @@ usualTime :: TimeOfDay
usualTime = TimeOfDay 15 0 0

usualDay :: String
usualDay = "Friday"
usualDay = "Monday"

usualRoom :: String
usualRoom = "LT209"
usualRoom = "LT1414a"

usualBuilding :: String
usualBuilding = "Livingstone Tower"
Expand Down Expand Up @@ -128,8 +128,10 @@ html2text s = foldl' (\ t (p , r) -> subRegex (makeRegex p) t r) s $
("<b>(.*?)</b>", "*\\1*"),
("<i>(.*?)</i>", "/\\1/"), -- italic
("<dfn>(.*?)</dfn>", "/\\1/"),
("<q>(.*?)</q>", "\"\\1\""), -- quoted
("<br/>|<br>", "\n"), -- line breaks
("<p>(.*?)</p>", "\\1\n\n"), -- paragraph breaks
("<p>", ""), -- paragraph breaks; remove opening tag
("</p>", "\n\n"), -- turn closing tag into double linebreaks
("<a\\s+href\\s*=\\s*[\"'](.*?)[\"']>\\1</a>", "\\1"), -- links
("<a\\s+href\\s*=\\s*[\"'](.*?)[\"']>(.*?)</a>", "\\2 (\\1)"),
("<ul>", "\n"), -- lists
Expand Down Expand Up @@ -423,10 +425,10 @@ generateHTML ts out = do
header = unlines ["### default.html(section.msp101=current,headtags=<link rel='alternate' type='application/rss+xml' title='MSP101 seminars RSS feed' href='/msp101.rss'/>)",
"<!-- DO NOT EDIT THIS FILE DIRECTLY — EDIT _101.json AND RUN Generate101.hs INSTEAD -->",
"<h2>MSP101 Seminar</h2>",
"<p>MSP101 is an ongoing series of informal talks by visiting academics or members of the MSP group. The talks are usually " ++ usualDay ++ " " ++ formattedTime ++ " in room " ++ usualRoom ++ " in " ++ usualBuilding ++ ". They are announced on the <a href='https://lists.cis.strath.ac.uk/mailman/listinfo/msp-interest'>msp-interest</a> mailing-list. The list of talks is also available as a <a type='application/rss+xml' href='/msp101.rss'><img src='/images/feed-icon-14x14.png' alt='feed icon'>RSS feed</a> and as a <a href='msp101.ics'>calendar file</a>. <b>The MSP 101 seminar is now hybrid, with both in-person attendance in room " ++ usualRoom ++ ", and online via Zoom (the link can be found on the msp-interest mailing list and the SPLS Zulipchat).</b></p>"]
"<p>MSP101 is an ongoing series of informal talks by visiting academics or members of the MSP group. The talks are usually " ++ usualDay ++ " " ++ formattedTime ++ " in room " ++ usualRoom ++ " in " ++ usualBuilding ++ ". They are announced on the <a href='http://lists.strath.ac.uk/mailman/listinfo/msp-interest'>msp-interest</a> mailing-list. The list of talks is also available as a <a type='application/rss+xml' href='/msp101.rss'><img src='/images/feed-icon-14x14.png' alt='feed icon'>RSS feed</a> and as a <a href='msp101.ics'>calendar file</a>. <b>The MSP 101 seminar is now hybrid, with both in-person attendance in room " ++ usualRoom ++ ", and online via Zoom (the link can be found on the msp-interest mailing list and the SPLS Zulipchat).</b></p>"]
writeFile out (header ++ upcoming ++ previous)
where
entryBlock b i dt abst = unlines $
entryBlock b i dt abst nMat mat = unlines $
[ " <dt id='" ++ show i ++ "'>" ++ dt ++ "</dt>"
, " <dd>"]
++
Expand All @@ -437,6 +439,14 @@ generateHTML ts out = do
, " </details>"
])
++
(if null mat then [] else
(if null abst then id else (("" :) . ("" :)))
[ " <details" ++ (if nMat <= 5 then " open" else "") ++ ">"
, " <summary><b>Material</b></summary>"
, " " ++ mat
, " </details>"
])
++
[ " </dd>"]

processEntry b (i,(Talk date speaker inst speakerurl insturl title abstract location material))
Expand All @@ -455,23 +465,22 @@ generateHTML ts out = do
pMat (Whiteboard dir) = createLink ("101/wb/" ++ dir) "Whiteboard photos"
mat = if null material then ""
else
(if null abstract then "" else "\n\n") ++
"<b>Material</b><ul>" ++
"<ul>" ++
(concatMap (\ x -> "<li>" ++ (pMat x) ++ "</li>")
material) ++ "</ul>"
in entryBlock b i dt (nl2br abstract ++ nl2br mat)
in entryBlock b i dt (nl2br abstract) (length material) (nl2br mat)
processEntry b (i,(DepartmentalSeminar date speaker inst speakerurl insturl title abstract location))
= let fmt = \ str -> formatTime defaultTimeLocale str date
time = createLinkAnchor ('#':show i) (fmt "%Y-%m-%d") ++ fmt ", %H:%M"
place = bracket location
person = if null inst then (createLink speakerurl speaker)
else (createLink speakerurl speaker) ++ ", " ++ (createLink insturl inst)
dt = time ++ " " ++ "Departmental seminar" ++ " " ++ place ++ ": " ++ title ++ (bracket person)
in entryBlock b i dt (nl2br abstract)
in entryBlock b i dt (nl2br abstract) 0 ""
processEntry b (i,(SpecialEvent date endDate title url location locationurl description))
= let time = createLinkAnchor ('#':show i) (formatTime defaultTimeLocale "%Y-%m-%d" date)
dt = time ++ ": " ++ (createLink url title)
++ (bracket (createLink locationurl location))
in entryBlock b i dt (nl2br description)
in entryBlock b i dt (nl2br description) 0 ""
processEntry b (i,(BasicTalk date speaker inst speakerurl insturl title abstract location material))
= processEntry b (i,(Talk date speaker inst speakerurl insturl ("MSP 101: " ++ title) abstract location material)) -- for now
Loading