Track multiple submission cycles per conference
All checks were successful
Build and deploy static pages / build-and-push (push) Successful in 13s

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
This commit is contained in:
2026-08-17 19:55:07 +02:00
parent f132f6bc46
commit 2e95ede9c3
18 changed files with 595 additions and 218 deletions

View File

@@ -142,14 +142,16 @@ WikiCFP is the primary deadline source but has several quirks that required work
**Direct ID lookup**: Add `wikicfp_id: "<event_id>"` to a venue entry in `venues.yaml` to skip the search and fetch that page directly. This avoids wrong matches on common acronyms. Verified IDs for the cloud-edge topic: **Direct ID lookup**: Add `wikicfp_id: "<event_id>"` to a venue entry in `venues.yaml` to skip the search and fetch that page directly. This avoids wrong matches on common acronyms. Verified IDs for the cloud-edge topic:
| Venue | WikiCFP event ID | | Venue | WikiCFP event ID | |
| --- | --- | | --- | --- | --- |
| SOSP | 191399 | | SOSP | 191399 | |
| EuroSys | 186524 | | EuroSys | 186524 | superseded — `source: manual` (two cycles) |
| SoCC | 191071 | | SoCC | 191071 | superseded — `source: manual` (two cycles) |
| Middleware | 190153 | | Middleware | 190153 | superseded — `source: manual` (two cycles) |
| IPDPS | 189093 | | IPDPS | 189093 | superseded — `source: manual` (2027 edition) |
| HPDC | 191029 | | HPDC | 191029 | |
A venue whose `deadlines.yaml` entry says `source: manual` is skipped by the fetcher regardless of its `wikicfp_id`; the ID is kept so the lookup still works if the entry is ever handed back to WikiCFP.
**Skipping search**: Set `wikicfp_id: false` to skip WikiCFP entirely for a venue (e.g., ATC, SC, SEC — where the search returns wrong events). Deadlines for these must be filled manually. **Skipping search**: Set `wikicfp_id: false` to skip WikiCFP entirely for a venue (e.g., ATC, SC, SEC — where the search returns wrong events). Deadlines for these must be filled manually.
@@ -167,6 +169,47 @@ ATC:
cfp_url: https://sigops.org/s/conferences/atc/2026/cfp.html cfp_url: https://sigops.org/s/conferences/atc/2026/cfp.html
``` ```
### Multiple Submission Cycles
Many systems conferences run more than one submission round per year, all feeding the same event. Recording only one round makes the site claim a conference has been missed when a later round is still open. Give such a venue a `cycles` list instead of top-level deadline fields:
```yaml
EuroSys:
source: manual
event_dates: Apr 19-23, 2027 # event fields stay at the top level
location: Rabat, Morocco
cfp_url: https://2027.eurosys.org/cfp.html
cycles:
- name: Spring # free text, verbatim from the CFP
abstract_deadline: May 7, 2026
submission_deadline: May 14, 2026
notification: Aug 21, 2026
camera_ready: Sep 25, 2026
- name: Fall
abstract_deadline: Sep 17, 2026
submission_deadline: Sep 24, 2026
notification: Jan 29, 2027
camera_ready: Mar 5, 2027
```
Cycle fields are `name`, `abstract_deadline`, `submission_deadline`, `notification`, `camera_ready`, plus an optional per-cycle `cfp_url` where a venue publishes a separate call per round. Everything else (`source`, `event_dates`, `location`, `cfp_url`) describes the event and stays at the top level.
**Single-round venues need no change.** `load_deadlines()` folds a flat entry into a one-element `cycles` list on read, so the two shapes are interchangeable and only genuinely multi-round venues need the extra nesting.
What the generator does with cycles:
| Output | Behaviour |
| --- | --- |
| Venue page | Multi-cycle venues get a **Submission Cycles** table with every round; the next open one is bolded and marked `(next)`. Single-cycle venues keep the **Upcoming Deadline** block unchanged. |
| Venue index | One row per venue, showing the next open cycle with its name appended to the paper deadline. |
| Calendar table | One row per cycle, with a `Cycle` column, sorted by paper deadline. |
| Calendar grid | One event set per cycle; titles read `EuroSys Fall — paper deadline`. Elapsed cycles are kept — the grid is time-indexed, so past rounds only show when you navigate back to their month. |
| Front matter | `next_deadline` / `abstract_deadline` / `notification` / `camera_ready` reflect the **next** cycle. Multi-cycle venues additionally carry `cycles` and `next_cycle`. |
"Next" means the earliest cycle whose paper deadline has not passed; if every round has elapsed, the last one, so a page shows the most recent round rather than going blank.
**WikiCFP cannot express this.** It lists one deadline set per event, so a multi-round venue fetched from WikiCFP will silently record whichever round WikiCFP happens to hold. Research such venues from the CFP itself and mark them `source: manual` — otherwise the next fetcher run overwrites the extra rounds. SoCC, Middleware and IPDPS were converted this way even though they still carry `wikicfp_id` in `venues.yaml`.
--- ---
## `venues.yaml` Schema ## `venues.yaml` Schema

View File

@@ -1,33 +1,41 @@
--- ---
title: Submission Deadlines title: Submission Deadlines
layout: calendar layout: calendar
generated: '2026-08-17T17:33:54Z' generated: '2026-08-17T17:53:37Z'
draft: false draft: false
events: events:
- title: OSDI — abstract deadline - title: OSDI — abstract deadline
start: '2025-12-04' start: '2026-12-01'
url: /cloud-edge/venues/conferences/osdi/ url: /cloud-edge/venues/conferences/osdi/
color: '#f4a261' color: '#f4a261'
allDay: true allDay: true
extendedProps: extendedProps:
location: Seattle, WA, USA location: Baltimore, MD, USA
cfp_url: https://www.usenix.org/conference/osdi26/call-for-papers cfp_url: https://www.usenix.org/conference/osdi27/call-for-papers
- title: OSDI — paper deadline - title: OSDI — paper deadline
start: '2025-12-11' start: '2026-12-08'
url: /cloud-edge/venues/conferences/osdi/ url: /cloud-edge/venues/conferences/osdi/
color: '#e63946' color: '#e63946'
allDay: true allDay: true
extendedProps: extendedProps:
location: Seattle, WA, USA location: Baltimore, MD, USA
cfp_url: https://www.usenix.org/conference/osdi26/call-for-papers cfp_url: https://www.usenix.org/conference/osdi27/call-for-papers
- title: OSDI — notification
start: '2027-03-16'
url: /cloud-edge/venues/conferences/osdi/
color: '#2a9d8f'
allDay: true
extendedProps:
location: Baltimore, MD, USA
cfp_url: https://www.usenix.org/conference/osdi27/call-for-papers
- title: OSDI - title: OSDI
start: '2026-07-13' start: '2027-07-07'
url: /cloud-edge/venues/conferences/osdi/ url: /cloud-edge/venues/conferences/osdi/
color: '#457b9d' color: '#457b9d'
allDay: true allDay: true
end: '2026-07-16' end: '2027-07-10'
extendedProps: extendedProps:
location: Seattle, WA, USA location: Baltimore, MD, USA
- title: SOSP — abstract deadline - title: SOSP — abstract deadline
start: '2026-03-26' start: '2026-03-26'
url: /cloud-edge/venues/conferences/sosp/ url: /cloud-edge/venues/conferences/sosp/
@@ -60,7 +68,34 @@ events:
end: '2026-10-03' end: '2026-10-03'
extendedProps: extendedProps:
location: Prague, Czechia location: Prague, Czechia
- title: NSDI — abstract deadline - title: NSDI Spring — abstract deadline
start: '2026-04-16'
url: /cloud-edge/venues/conferences/nsdi/
color: '#f4a261'
allDay: true
extendedProps:
location: Providence, RI, USA
cfp_url: https://www.usenix.org/conference/nsdi27/call-for-papers
cycle: Spring
- title: NSDI Spring — paper deadline
start: '2026-04-23'
url: /cloud-edge/venues/conferences/nsdi/
color: '#e63946'
allDay: true
extendedProps:
location: Providence, RI, USA
cfp_url: https://www.usenix.org/conference/nsdi27/call-for-papers
cycle: Spring
- title: NSDI Spring — notification
start: '2026-07-23'
url: /cloud-edge/venues/conferences/nsdi/
color: '#2a9d8f'
allDay: true
extendedProps:
location: Providence, RI, USA
cfp_url: https://www.usenix.org/conference/nsdi27/call-for-papers
cycle: Spring
- title: NSDI Fall — abstract deadline
start: '2026-09-10' start: '2026-09-10'
url: /cloud-edge/venues/conferences/nsdi/ url: /cloud-edge/venues/conferences/nsdi/
color: '#f4a261' color: '#f4a261'
@@ -68,7 +103,8 @@ events:
extendedProps: extendedProps:
location: Providence, RI, USA location: Providence, RI, USA
cfp_url: https://www.usenix.org/conference/nsdi27/call-for-papers cfp_url: https://www.usenix.org/conference/nsdi27/call-for-papers
- title: NSDI — paper deadline cycle: Fall
- title: NSDI Fall — paper deadline
start: '2026-09-17' start: '2026-09-17'
url: /cloud-edge/venues/conferences/nsdi/ url: /cloud-edge/venues/conferences/nsdi/
color: '#e63946' color: '#e63946'
@@ -76,7 +112,8 @@ events:
extendedProps: extendedProps:
location: Providence, RI, USA location: Providence, RI, USA
cfp_url: https://www.usenix.org/conference/nsdi27/call-for-papers cfp_url: https://www.usenix.org/conference/nsdi27/call-for-papers
- title: NSDI — notification cycle: Fall
- title: NSDI Fall — notification
start: '2026-12-08' start: '2026-12-08'
url: /cloud-edge/venues/conferences/nsdi/ url: /cloud-edge/venues/conferences/nsdi/
color: '#2a9d8f' color: '#2a9d8f'
@@ -84,6 +121,7 @@ events:
extendedProps: extendedProps:
location: Providence, RI, USA location: Providence, RI, USA
cfp_url: https://www.usenix.org/conference/nsdi27/call-for-papers cfp_url: https://www.usenix.org/conference/nsdi27/call-for-papers
cycle: Fall
- title: NSDI - title: NSDI
start: '2027-05-11' start: '2027-05-11'
url: /cloud-edge/venues/conferences/nsdi/ url: /cloud-edge/venues/conferences/nsdi/
@@ -92,7 +130,7 @@ events:
end: '2027-05-14' end: '2027-05-14'
extendedProps: extendedProps:
location: Providence, RI, USA location: Providence, RI, USA
- title: EuroSys — abstract deadline - title: EuroSys Spring — abstract deadline
start: '2026-05-07' start: '2026-05-07'
url: /cloud-edge/venues/conferences/eurosys/ url: /cloud-edge/venues/conferences/eurosys/
color: '#f4a261' color: '#f4a261'
@@ -100,7 +138,8 @@ events:
extendedProps: extendedProps:
location: Rabat, Morocco location: Rabat, Morocco
cfp_url: https://2027.eurosys.org/cfp.html cfp_url: https://2027.eurosys.org/cfp.html
- title: EuroSys — paper deadline cycle: Spring
- title: EuroSys Spring — paper deadline
start: '2026-05-14' start: '2026-05-14'
url: /cloud-edge/venues/conferences/eurosys/ url: /cloud-edge/venues/conferences/eurosys/
color: '#e63946' color: '#e63946'
@@ -108,7 +147,8 @@ events:
extendedProps: extendedProps:
location: Rabat, Morocco location: Rabat, Morocco
cfp_url: https://2027.eurosys.org/cfp.html cfp_url: https://2027.eurosys.org/cfp.html
- title: EuroSys — notification cycle: Spring
- title: EuroSys Spring — notification
start: '2026-08-21' start: '2026-08-21'
url: /cloud-edge/venues/conferences/eurosys/ url: /cloud-edge/venues/conferences/eurosys/
color: '#2a9d8f' color: '#2a9d8f'
@@ -116,6 +156,34 @@ events:
extendedProps: extendedProps:
location: Rabat, Morocco location: Rabat, Morocco
cfp_url: https://2027.eurosys.org/cfp.html cfp_url: https://2027.eurosys.org/cfp.html
cycle: Spring
- title: EuroSys Fall — abstract deadline
start: '2026-09-17'
url: /cloud-edge/venues/conferences/eurosys/
color: '#f4a261'
allDay: true
extendedProps:
location: Rabat, Morocco
cfp_url: https://2027.eurosys.org/cfp.html
cycle: Fall
- title: EuroSys Fall — paper deadline
start: '2026-09-24'
url: /cloud-edge/venues/conferences/eurosys/
color: '#e63946'
allDay: true
extendedProps:
location: Rabat, Morocco
cfp_url: https://2027.eurosys.org/cfp.html
cycle: Fall
- title: EuroSys Fall — notification
start: '2027-01-29'
url: /cloud-edge/venues/conferences/eurosys/
color: '#2a9d8f'
allDay: true
extendedProps:
location: Rabat, Morocco
cfp_url: https://2027.eurosys.org/cfp.html
cycle: Fall
- title: EuroSys - title: EuroSys
start: '2027-04-19' start: '2027-04-19'
url: /cloud-edge/venues/conferences/eurosys/ url: /cloud-edge/venues/conferences/eurosys/
@@ -148,7 +216,34 @@ events:
end: '2026-11-19' end: '2026-11-19'
extendedProps: extendedProps:
location: Hong Kong location: Hong Kong
- title: SoCC — abstract deadline - title: SoCC Round 1 — abstract deadline
start: '2026-02-06'
url: /cloud-edge/venues/conferences/socc/
color: '#f4a261'
allDay: true
extendedProps:
location: Singapore
cfp_url: https://acmsocc.org/2026/papers.html
cycle: Round 1
- title: SoCC Round 1 — paper deadline
start: '2026-02-13'
url: /cloud-edge/venues/conferences/socc/
color: '#e63946'
allDay: true
extendedProps:
location: Singapore
cfp_url: https://acmsocc.org/2026/papers.html
cycle: Round 1
- title: SoCC Round 1 — notification
start: '2026-04-29'
url: /cloud-edge/venues/conferences/socc/
color: '#2a9d8f'
allDay: true
extendedProps:
location: Singapore
cfp_url: https://acmsocc.org/2026/papers.html
cycle: Round 1
- title: SoCC Round 2 — abstract deadline
start: '2026-07-07' start: '2026-07-07'
url: /cloud-edge/venues/conferences/socc/ url: /cloud-edge/venues/conferences/socc/
color: '#f4a261' color: '#f4a261'
@@ -156,7 +251,8 @@ events:
extendedProps: extendedProps:
location: Singapore location: Singapore
cfp_url: https://acmsocc.org/2026/papers.html cfp_url: https://acmsocc.org/2026/papers.html
- title: SoCC — paper deadline cycle: Round 2
- title: SoCC Round 2 — paper deadline
start: '2026-07-14' start: '2026-07-14'
url: /cloud-edge/venues/conferences/socc/ url: /cloud-edge/venues/conferences/socc/
color: '#e63946' color: '#e63946'
@@ -164,7 +260,8 @@ events:
extendedProps: extendedProps:
location: Singapore location: Singapore
cfp_url: https://acmsocc.org/2026/papers.html cfp_url: https://acmsocc.org/2026/papers.html
- title: SoCC — notification cycle: Round 2
- title: SoCC Round 2 — notification
start: '2026-09-26' start: '2026-09-26'
url: /cloud-edge/venues/conferences/socc/ url: /cloud-edge/venues/conferences/socc/
color: '#2a9d8f' color: '#2a9d8f'
@@ -172,6 +269,7 @@ events:
extendedProps: extendedProps:
location: Singapore location: Singapore
cfp_url: https://acmsocc.org/2026/papers.html cfp_url: https://acmsocc.org/2026/papers.html
cycle: Round 2
- title: SoCC - title: SoCC
start: '2026-11-18' start: '2026-11-18'
url: /cloud-edge/venues/conferences/socc/ url: /cloud-edge/venues/conferences/socc/
@@ -180,7 +278,34 @@ events:
end: '2026-11-21' end: '2026-11-21'
extendedProps: extendedProps:
location: Singapore location: Singapore
- title: Middleware — abstract deadline - title: Middleware Winter — abstract deadline
start: '2025-12-09'
url: /cloud-edge/venues/conferences/middleware/
color: '#f4a261'
allDay: true
extendedProps:
location: Tarragona, Spain
cfp_url: https://middleware-conf.github.io/2026/calls/call-for-research-papers/
cycle: Winter
- title: Middleware Winter — paper deadline
start: '2025-12-12'
url: /cloud-edge/venues/conferences/middleware/
color: '#e63946'
allDay: true
extendedProps:
location: Tarragona, Spain
cfp_url: https://middleware-conf.github.io/2026/calls/call-for-research-papers/
cycle: Winter
- title: Middleware Winter — notification
start: '2026-03-06'
url: /cloud-edge/venues/conferences/middleware/
color: '#2a9d8f'
allDay: true
extendedProps:
location: Tarragona, Spain
cfp_url: https://middleware-conf.github.io/2026/calls/call-for-research-papers/
cycle: Winter
- title: Middleware Summer — abstract deadline
start: '2026-05-29' start: '2026-05-29'
url: /cloud-edge/venues/conferences/middleware/ url: /cloud-edge/venues/conferences/middleware/
color: '#f4a261' color: '#f4a261'
@@ -188,7 +313,8 @@ events:
extendedProps: extendedProps:
location: Tarragona, Spain location: Tarragona, Spain
cfp_url: https://middleware-conf.github.io/2026/calls/call-for-research-papers/ cfp_url: https://middleware-conf.github.io/2026/calls/call-for-research-papers/
- title: Middleware — paper deadline cycle: Summer
- title: Middleware Summer — paper deadline
start: '2026-06-05' start: '2026-06-05'
url: /cloud-edge/venues/conferences/middleware/ url: /cloud-edge/venues/conferences/middleware/
color: '#e63946' color: '#e63946'
@@ -196,7 +322,8 @@ events:
extendedProps: extendedProps:
location: Tarragona, Spain location: Tarragona, Spain
cfp_url: https://middleware-conf.github.io/2026/calls/call-for-research-papers/ cfp_url: https://middleware-conf.github.io/2026/calls/call-for-research-papers/
- title: Middleware — notification cycle: Summer
- title: Middleware Summer — notification
start: '2026-08-28' start: '2026-08-28'
url: /cloud-edge/venues/conferences/middleware/ url: /cloud-edge/venues/conferences/middleware/
color: '#2a9d8f' color: '#2a9d8f'
@@ -204,6 +331,7 @@ events:
extendedProps: extendedProps:
location: Tarragona, Spain location: Tarragona, Spain
cfp_url: https://middleware-conf.github.io/2026/calls/call-for-research-papers/ cfp_url: https://middleware-conf.github.io/2026/calls/call-for-research-papers/
cycle: Summer
- title: Middleware - title: Middleware
start: '2026-12-14' start: '2026-12-14'
url: /cloud-edge/venues/conferences/middleware/ url: /cloud-edge/venues/conferences/middleware/
@@ -213,37 +341,37 @@ events:
extendedProps: extendedProps:
location: Tarragona, Spain location: Tarragona, Spain
- title: IPDPS — abstract deadline - title: IPDPS — abstract deadline
start: '2025-10-02' start: '2026-10-01'
url: /cloud-edge/venues/conferences/ipdps/ url: /cloud-edge/venues/conferences/ipdps/
color: '#f4a261' color: '#f4a261'
allDay: true allDay: true
extendedProps: extendedProps:
location: New Orleans, USA location: Seattle, WA, USA
cfp_url: https://www.ipdps.org/ipdps2026/2026-call-for-papers.html cfp_url: https://www.ipdps.org/ipdps2027/2027-call-for-papers.html
- title: IPDPS — paper deadline - title: IPDPS — paper deadline
start: '2025-10-09' start: '2026-10-08'
url: /cloud-edge/venues/conferences/ipdps/ url: /cloud-edge/venues/conferences/ipdps/
color: '#e63946' color: '#e63946'
allDay: true allDay: true
extendedProps: extendedProps:
location: New Orleans, USA location: Seattle, WA, USA
cfp_url: https://www.ipdps.org/ipdps2026/2026-call-for-papers.html cfp_url: https://www.ipdps.org/ipdps2027/2027-call-for-papers.html
- title: IPDPS — notification - title: IPDPS — notification
start: '2026-02-02' start: '2027-02-02'
url: /cloud-edge/venues/conferences/ipdps/ url: /cloud-edge/venues/conferences/ipdps/
color: '#2a9d8f' color: '#2a9d8f'
allDay: true allDay: true
extendedProps: extendedProps:
location: New Orleans, USA location: Seattle, WA, USA
cfp_url: https://www.ipdps.org/ipdps2026/2026-call-for-papers.html cfp_url: https://www.ipdps.org/ipdps2027/2027-call-for-papers.html
- title: IPDPS - title: IPDPS
start: '2026-05-25' start: '2027-06-01'
url: /cloud-edge/venues/conferences/ipdps/ url: /cloud-edge/venues/conferences/ipdps/
color: '#457b9d' color: '#457b9d'
allDay: true allDay: true
end: '2026-05-30' end: '2027-06-06'
extendedProps: extendedProps:
location: New Orleans, USA location: Seattle, WA, USA
- title: SC — abstract deadline - title: SC — abstract deadline
start: '2026-04-01' start: '2026-04-01'
url: /cloud-edge/venues/conferences/sc/ url: /cloud-edge/venues/conferences/sc/
@@ -314,6 +442,7 @@ events:
color: '#f4a261' color: '#f4a261'
allDay: true allDay: true
extendedProps: extendedProps:
location: Cambridge, UK
cfp_url: https://www.sigmobile.org/mobisys/2026/ cfp_url: https://www.sigmobile.org/mobisys/2026/
- title: MobiSys — paper deadline - title: MobiSys — paper deadline
start: '2025-12-05' start: '2025-12-05'
@@ -321,6 +450,7 @@ events:
color: '#e63946' color: '#e63946'
allDay: true allDay: true
extendedProps: extendedProps:
location: Cambridge, UK
cfp_url: https://www.sigmobile.org/mobisys/2026/ cfp_url: https://www.sigmobile.org/mobisys/2026/
- title: MobiSys — notification - title: MobiSys — notification
start: '2026-03-02' start: '2026-03-02'
@@ -328,6 +458,7 @@ events:
color: '#2a9d8f' color: '#2a9d8f'
allDay: true allDay: true
extendedProps: extendedProps:
location: Cambridge, UK
cfp_url: https://www.sigmobile.org/mobisys/2026/ cfp_url: https://www.sigmobile.org/mobisys/2026/
- title: MobiSys - title: MobiSys
start: '2026-06-22' start: '2026-06-22'
@@ -335,15 +466,17 @@ events:
color: '#457b9d' color: '#457b9d'
allDay: true allDay: true
end: '2026-06-25' end: '2026-06-25'
extendedProps:
location: Cambridge, UK
- title: SEC — abstract deadline - title: SEC — abstract deadline
start: '2026-04-24' start: '2026-05-08'
url: /cloud-edge/venues/conferences/sec/ url: /cloud-edge/venues/conferences/sec/
color: '#f4a261' color: '#f4a261'
allDay: true allDay: true
extendedProps: extendedProps:
cfp_url: https://acm-ieee-sec.org/2026/ cfp_url: https://acm-ieee-sec.org/2026/
- title: SEC — paper deadline - title: SEC — paper deadline
start: '2026-05-01' start: '2026-05-08'
url: /cloud-edge/venues/conferences/sec/ url: /cloud-edge/venues/conferences/sec/
color: '#e63946' color: '#e63946'
allDay: true allDay: true
@@ -390,21 +523,25 @@ events:
## Conference Deadlines ## Conference Deadlines
| Venue | Name | Abstract | Paper deadline | Notification | Event dates | Location | ICORE | | Venue | Name | Cycle | Abstract | Paper deadline | Notification | Event dates | Location | ICORE |
|---|---|---|---|---|---|---|---| |---|---|---|---|---|---|---|---|---|
| [IPDPS](/cloud-edge/venues/conferences/ipdps/) | IEEE International Parallel and Distributed Processing Symposium | Oct 2, 2025 | Oct 9, 2025 | Feb 2, 2026 | May 25, 2026 - May 29, 2026 | New Orleans, USA | A | | [MobiSys](/cloud-edge/venues/conferences/mobisys/) | ACM International Conference on Mobile Systems, Applications, and Services | — | Nov 28, 2025 | Dec 5, 2025 | Mar 2, 2026 | Jun 22-24, 2026 | Cambridge, UK | A |
| [MobiSys](/cloud-edge/venues/conferences/mobisys/) | ACM International Conference on Mobile Systems, Applications, and Services | Nov 28, 2025 | Dec 5, 2025 | Mar 2, 2026 | Jun 22-24, 2026 | | A | | [Middleware](/cloud-edge/venues/conferences/middleware/) | ACM/IFIP/USENIX Middleware Conference | Winter | Dec 9, 2025 | Dec 12, 2025 | Mar 6, 2026 | Dec 14-18, 2026 | Tarragona, Spain | A |
| [OSDI](/cloud-edge/venues/conferences/osdi/) | USENIX Symposium on Operating Systems Design and Implementation | Dec 4, 2025 | Dec 11, 2025 | | Jul 13-15, 2026 | Seattle, WA, USA | A* | | [CCGrid](/cloud-edge/venues/conferences/ccgrid/) | IEEE/ACM International Symposium on Cluster, Cloud and Internet Computing | — | | Dec 21, 2025 | Feb 10, 2026 | May 18-21, 2026 | Sydney, Australia | B |
| [CCGrid](/cloud-edge/venues/conferences/ccgrid/) | IEEE/ACM International Symposium on Cluster, Cloud and Internet Computing | | Dec 21, 2025 | Feb 10, 2026 | May 18-21, 2026 | Sydney, Australia | B | | [HPDC](/cloud-edge/venues/conferences/hpdc/) | IEEE International Symposium on High Performance Distributed Computing | | Jan 29, 2026 | Feb 5, 2026 | Mar 31, 2026 | Jul 13, 2026 - Jul 16, 2026 | Cleveland, OH, USA | A |
| [HPDC](/cloud-edge/venues/conferences/hpdc/) | IEEE International Symposium on High Performance Distributed Computing | Jan 29, 2026 | Feb 5, 2026 | Mar 31, 2026 | Jul 13, 2026 - Jul 16, 2026 | Cleveland, OH, USA | A | | [SoCC](/cloud-edge/venues/conferences/socc/) | ACM Symposium on Cloud Computing | Round 1 | Feb 6, 2026 | Feb 13, 2026 | Apr 29, 2026 | Nov 18-20, 2026 | Singapore | |
| [SOSP](/cloud-edge/venues/conferences/sosp/) | ACM Symposium on Operating Systems Principles | Mar 26, 2026 | Apr 1, 2026 | Jul 3, 2026 | Sep 29, 2026 - Oct 2, 2026 | Prague, Czechia | A* | | [SOSP](/cloud-edge/venues/conferences/sosp/) | ACM Symposium on Operating Systems Principles | — | Mar 26, 2026 | Apr 1, 2026 | Jul 3, 2026 | Sep 29, 2026 - Oct 2, 2026 | Prague, Czechia | A* |
| [SC](/cloud-edge/venues/conferences/sc/) | International Conference for High Performance Computing, Networking, Storage and Analysis | Apr 1, 2026 | Apr 8, 2026 | Jul 1, 2026 | Nov 15-20, 2026 | Chicago, IL, USA | A | | [SC](/cloud-edge/venues/conferences/sc/) | International Conference for High Performance Computing, Networking, Storage and Analysis | — | Apr 1, 2026 | Apr 8, 2026 | Jul 1, 2026 | Nov 15-20, 2026 | Chicago, IL, USA | A |
| [SEC](/cloud-edge/venues/conferences/sec/) | IEEE/ACM Symposium on Edge Computing | Apr 24, 2026 | May 1, 2026 | Jul 29, 2026 | Oct 13-16, 2026 | | unranked | | [NSDI](/cloud-edge/venues/conferences/nsdi/) | USENIX Symposium on Networked Systems Design and Implementation | Spring | Apr 16, 2026 | Apr 23, 2026 | Jul 23, 2026 | May 11-13, 2027 | Providence, RI, USA | National: USA |
| [EuroSys](/cloud-edge/venues/conferences/eurosys/) | European Conference on Computer Systems | May 7, 2026 | May 14, 2026 | Aug 21, 2026 | Apr 19-23, 2027 | Rabat, Morocco | A | | [SEC](/cloud-edge/venues/conferences/sec/) | IEEE/ACM Symposium on Edge Computing | — | | May 8, 2026 | Jul 29, 2026 | Oct 13-16, 2026 | | unranked |
| [Middleware](/cloud-edge/venues/conferences/middleware/) | ACM/IFIP/USENIX Middleware Conference | May 29, 2026 | Jun 5, 2026 | Aug 28, 2026 | Dec 14-18, 2026 | Tarragona, Spain | A | | [EuroSys](/cloud-edge/venues/conferences/eurosys/) | European Conference on Computer Systems | Spring | May 7, 2026 | May 14, 2026 | Aug 21, 2026 | Apr 19-23, 2027 | Rabat, Morocco | A |
| [ATC](/cloud-edge/venues/conferences/atc/) | ACM SIGOPS Annual Technical Conference | | Jun 10, 2026 | Sep 18, 2026 | Nov 16-18, 2026 | Hong Kong | C | | [Middleware](/cloud-edge/venues/conferences/middleware/) | ACM/IFIP/USENIX Middleware Conference | Summer | May 29, 2026 | Jun 5, 2026 | Aug 28, 2026 | Dec 14-18, 2026 | Tarragona, Spain | A |
| [SoCC](/cloud-edge/venues/conferences/socc/) | ACM Symposium on Cloud Computing | Jul 7, 2026 | Jul 14, 2026 | Sep 26, 2026 | Nov 18-20, 2026 | Singapore | | | [ATC](/cloud-edge/venues/conferences/atc/) | ACM SIGOPS Annual Technical Conference | — | | Jun 10, 2026 | Sep 18, 2026 | Nov 16-18, 2026 | Hong Kong | C |
| [NSDI](/cloud-edge/venues/conferences/nsdi/) | USENIX Symposium on Networked Systems Design and Implementation | Sep 10, 2026 | Sep 17, 2026 | Dec 8, 2026 | May 11-13, 2027 | Providence, RI, USA | National: USA | | [SoCC](/cloud-edge/venues/conferences/socc/) | ACM Symposium on Cloud Computing | Round 2 | Jul 7, 2026 | Jul 14, 2026 | Sep 26, 2026 | Nov 18-20, 2026 | Singapore | — |
| [NSDI](/cloud-edge/venues/conferences/nsdi/) | USENIX Symposium on Networked Systems Design and Implementation | Fall | Sep 10, 2026 | Sep 17, 2026 | Dec 8, 2026 | May 11-13, 2027 | Providence, RI, USA | National: USA |
| [EuroSys](/cloud-edge/venues/conferences/eurosys/) | European Conference on Computer Systems | Fall | Sep 17, 2026 | Sep 24, 2026 | Jan 29, 2027 | Apr 19-23, 2027 | Rabat, Morocco | A |
| [IPDPS](/cloud-edge/venues/conferences/ipdps/) | IEEE International Parallel and Distributed Processing Symposium | — | Oct 1, 2026 | Oct 8, 2026 | Feb 2, 2027 | Jun 1-5, 2027 | Seattle, WA, USA | A |
| [OSDI](/cloud-edge/venues/conferences/osdi/) | USENIX Symposium on Operating Systems Design and Implementation | — | Dec 1, 2026 | Dec 8, 2026 | Mar 16, 2027 | Jul 7-9, 2027 | Baltimore, MD, USA | A* |
> Deadlines sourced from conference websites, [WikiCFP](http://www.wikicfp.com/), and journal special issue CFPs. > Deadlines sourced from conference websites, [WikiCFP](http://www.wikicfp.com/), and journal special issue CFPs.

View File

@@ -0,0 +1,13 @@
---
title: IPDPS 2027 Digest
venue: IPDPS
year: 2027
date: '2027-01-01'
tags: []
paper_count: 0
draft: false
build:
list: never
---
No papers selected yet.

View File

@@ -0,0 +1,13 @@
---
title: OSDI 2027 Digest
venue: OSDI
year: 2027
date: '2027-01-01'
tags: []
paper_count: 0
draft: false
build:
list: never
---
No papers selected yet.

View File

@@ -9,7 +9,6 @@ type: conference
icore_rank: C icore_rank: C
dblp_key: conf/usenix dblp_key: conf/usenix
draft: false draft: false
deadline_source: wikicfp:192652
homepage: https://sigops.org/s/conferences/atc/2026/ homepage: https://sigops.org/s/conferences/atc/2026/
next_deadline: Jun 10, 2026 next_deadline: Jun 10, 2026
next_event: Nov 16-18, 2026 next_event: Nov 16-18, 2026
@@ -38,7 +37,6 @@ cfp_url: https://sigops.org/s/conferences/atc/2026/cfp.html
| **Event dates** | Nov 16-18, 2026 | | **Event dates** | Nov 16-18, 2026 |
| **Location** | Hong Kong | | **Location** | Hong Kong |
| **CFP** | [https://sigops.org/s/conferences/atc/2026/cfp.html](https://sigops.org/s/conferences/atc/2026/cfp.html) | | **CFP** | [https://sigops.org/s/conferences/atc/2026/cfp.html](https://sigops.org/s/conferences/atc/2026/cfp.html) |
| **Source** | `wikicfp:192652` |
## Previous Editions ## Previous Editions

View File

@@ -14,7 +14,7 @@ draft: false
next_deadline: Dec 21, 2025 next_deadline: Dec 21, 2025
next_event: May 18-21, 2026 next_event: May 18-21, 2026
notification: Feb 10, 2026 notification: Feb 10, 2026
camera_ready: Mar 22, 2026 camera_ready: Mar 15, 2026
location: Sydney, Australia location: Sydney, Australia
cfp_url: https://ccgrid2026.org/cfp.html cfp_url: https://ccgrid2026.org/cfp.html
--- ---
@@ -34,7 +34,7 @@ cfp_url: https://ccgrid2026.org/cfp.html
|---|---| |---|---|
| **Paper deadline** | Dec 21, 2025 | | **Paper deadline** | Dec 21, 2025 |
| **Notification** | Feb 10, 2026 | | **Notification** | Feb 10, 2026 |
| **Camera-ready** | Mar 22, 2026 | | **Camera-ready** | Mar 15, 2026 |
| **Event dates** | May 18-21, 2026 | | **Event dates** | May 18-21, 2026 |
| **Location** | Sydney, Australia | | **Location** | Sydney, Australia |
| **CFP** | [https://ccgrid2026.org/cfp.html](https://ccgrid2026.org/cfp.html) | | **CFP** | [https://ccgrid2026.org/cfp.html](https://ccgrid2026.org/cfp.html) |

View File

@@ -9,14 +9,26 @@ type: conference
icore_rank: A icore_rank: A
dblp_key: conf/eurosys dblp_key: conf/eurosys
draft: false draft: false
deadline_source: wikicfp:186524
homepage: https://2027.eurosys.org/ homepage: https://2027.eurosys.org/
next_deadline: May 14, 2026 next_deadline: Sep 24, 2026
next_event: Apr 19-23, 2027 next_event: Apr 19-23, 2027
abstract_deadline: May 7, 2026 abstract_deadline: Sep 17, 2026
notification: Aug 21, 2026 notification: Jan 29, 2027
location: Rabat, Morocco location: Rabat, Morocco
cfp_url: https://2027.eurosys.org/cfp.html cfp_url: https://2027.eurosys.org/cfp.html
camera_ready: Mar 5, 2027
cycles:
- name: Spring
abstract_deadline: May 7, 2026
submission_deadline: May 14, 2026
notification: Aug 21, 2026
camera_ready: Sep 25, 2026
- name: Fall
abstract_deadline: Sep 17, 2026
submission_deadline: Sep 24, 2026
notification: Jan 29, 2027
camera_ready: Mar 5, 2027
next_cycle: Fall
--- ---
*European Conference on Computer Systems* *European Conference on Computer Systems*
@@ -28,17 +40,18 @@ cfp_url: https://2027.eurosys.org/cfp.html
| **Website** | [https://2027.eurosys.org/](https://2027.eurosys.org/) | | **Website** | [https://2027.eurosys.org/](https://2027.eurosys.org/) |
| **Latest digest** | [EuroSys 2025](/cloud-edge/digests/eurosys-2025/) — 13 papers | | **Latest digest** | [EuroSys 2025](/cloud-edge/digests/eurosys-2025/) — 13 papers |
## Upcoming Deadline ## Submission Cycles
| Cycle | Abstract | Paper deadline | Notification | Camera-ready |
|---|---|---|---|---|
| Spring | May 7, 2026 | May 14, 2026 | Aug 21, 2026 | Sep 25, 2026 |
| **Fall** (next) | Sep 17, 2026 | Sep 24, 2026 | Jan 29, 2027 | Mar 5, 2027 |
| | | | | |
|---|---| |---|---|
| **Abstract deadline** | May 7, 2026 |
| **Paper deadline** | May 14, 2026 |
| **Notification** | Aug 21, 2026 |
| **Event dates** | Apr 19-23, 2027 | | **Event dates** | Apr 19-23, 2027 |
| **Location** | Rabat, Morocco | | **Location** | Rabat, Morocco |
| **CFP** | [https://2027.eurosys.org/cfp.html](https://2027.eurosys.org/cfp.html) | | **CFP** | [https://2027.eurosys.org/cfp.html](https://2027.eurosys.org/cfp.html) |
| **Source** | `wikicfp:186524` |
## Previous Editions ## Previous Editions

View File

@@ -9,15 +9,14 @@ type: conference
icore_rank: A icore_rank: A
dblp_key: conf/ipps dblp_key: conf/ipps
draft: false draft: false
deadline_source: wikicfp:189093
homepage: https://www.ipdps.org/ homepage: https://www.ipdps.org/
next_deadline: Oct 9, 2025 next_deadline: Oct 8, 2026
next_event: May 25, 2026 - May 29, 2026 next_event: Jun 1-5, 2027
abstract_deadline: Oct 2, 2025 abstract_deadline: Oct 1, 2026
notification: Feb 2, 2026 notification: Feb 2, 2027
camera_ready: Feb 20, 2026 camera_ready: Feb 20, 2027
location: New Orleans, USA location: Seattle, WA, USA
cfp_url: https://www.ipdps.org/ipdps2026/2026-call-for-papers.html cfp_url: https://www.ipdps.org/ipdps2027/2027-call-for-papers.html
--- ---
*IEEE International Parallel and Distributed Processing Symposium* *IEEE International Parallel and Distributed Processing Symposium*
@@ -33,14 +32,13 @@ cfp_url: https://www.ipdps.org/ipdps2026/2026-call-for-papers.html
| | | | | |
|---|---| |---|---|
| **Abstract deadline** | Oct 2, 2025 | | **Abstract deadline** | Oct 1, 2026 |
| **Paper deadline** | Oct 9, 2025 | | **Paper deadline** | Oct 8, 2026 |
| **Notification** | Feb 2, 2026 | | **Notification** | Feb 2, 2027 |
| **Camera-ready** | Feb 20, 2026 | | **Camera-ready** | Feb 20, 2027 |
| **Event dates** | May 25, 2026 - May 29, 2026 | | **Event dates** | Jun 1-5, 2027 |
| **Location** | New Orleans, USA | | **Location** | Seattle, WA, USA |
| **CFP** | [https://www.ipdps.org/ipdps2026/2026-call-for-papers.html](https://www.ipdps.org/ipdps2026/2026-call-for-papers.html) | | **CFP** | [https://www.ipdps.org/ipdps2027/2027-call-for-papers.html](https://www.ipdps.org/ipdps2027/2027-call-for-papers.html) |
| **Source** | `wikicfp:189093` |
## Previous Editions ## Previous Editions

View File

@@ -8,7 +8,6 @@ type: conference
icore_rank: A icore_rank: A
dblp_key: conf/middleware dblp_key: conf/middleware
draft: false draft: false
deadline_source: wikicfp:190153
homepage: https://middleware-conf.github.io/2026/ homepage: https://middleware-conf.github.io/2026/
next_deadline: Jun 5, 2026 next_deadline: Jun 5, 2026
next_event: Dec 14-18, 2026 next_event: Dec 14-18, 2026
@@ -17,6 +16,18 @@ notification: Aug 28, 2026
camera_ready: Oct 16, 2026 camera_ready: Oct 16, 2026
location: Tarragona, Spain location: Tarragona, Spain
cfp_url: https://middleware-conf.github.io/2026/calls/call-for-research-papers/ cfp_url: https://middleware-conf.github.io/2026/calls/call-for-research-papers/
cycles:
- name: Winter
abstract_deadline: Dec 9, 2025
submission_deadline: Dec 12, 2025
notification: Mar 6, 2026
camera_ready: Apr 24, 2026
- name: Summer
abstract_deadline: May 29, 2026
submission_deadline: Jun 5, 2026
notification: Aug 28, 2026
camera_ready: Oct 16, 2026
next_cycle: Summer
--- ---
*ACM/IFIP/USENIX Middleware Conference* *ACM/IFIP/USENIX Middleware Conference*
@@ -28,18 +39,18 @@ cfp_url: https://middleware-conf.github.io/2026/calls/call-for-research-papers/
| **Website** | [https://middleware-conf.github.io/2026/](https://middleware-conf.github.io/2026/) | | **Website** | [https://middleware-conf.github.io/2026/](https://middleware-conf.github.io/2026/) |
| **Latest digest** | [Middleware 2025](/cloud-edge/digests/middleware-2025/) — 12 papers | | **Latest digest** | [Middleware 2025](/cloud-edge/digests/middleware-2025/) — 12 papers |
## Upcoming Deadline ## Submission Cycles
| Cycle | Abstract | Paper deadline | Notification | Camera-ready |
|---|---|---|---|---|
| Winter | Dec 9, 2025 | Dec 12, 2025 | Mar 6, 2026 | Apr 24, 2026 |
| **Summer** (next) | May 29, 2026 | Jun 5, 2026 | Aug 28, 2026 | Oct 16, 2026 |
| | | | | |
|---|---| |---|---|
| **Abstract deadline** | May 29, 2026 |
| **Paper deadline** | Jun 5, 2026 |
| **Notification** | Aug 28, 2026 |
| **Camera-ready** | Oct 16, 2026 |
| **Event dates** | Dec 14-18, 2026 | | **Event dates** | Dec 14-18, 2026 |
| **Location** | Tarragona, Spain | | **Location** | Tarragona, Spain |
| **CFP** | [https://middleware-conf.github.io/2026/calls/call-for-research-papers/](https://middleware-conf.github.io/2026/calls/call-for-research-papers/) | | **CFP** | [https://middleware-conf.github.io/2026/calls/call-for-research-papers/](https://middleware-conf.github.io/2026/calls/call-for-research-papers/) |
| **Source** | `wikicfp:190153` |
## Previous Editions ## Previous Editions

View File

@@ -16,6 +16,7 @@ next_event: Jun 22-24, 2026
notification: Mar 2, 2026 notification: Mar 2, 2026
camera_ready: Apr 13, 2026 camera_ready: Apr 13, 2026
cfp_url: https://www.sigmobile.org/mobisys/2026/ cfp_url: https://www.sigmobile.org/mobisys/2026/
location: Cambridge, UK
--- ---
*ACM International Conference on Mobile Systems, Applications, and Services* *ACM International Conference on Mobile Systems, Applications, and Services*
@@ -36,6 +37,7 @@ cfp_url: https://www.sigmobile.org/mobisys/2026/
| **Notification** | Mar 2, 2026 | | **Notification** | Mar 2, 2026 |
| **Camera-ready** | Apr 13, 2026 | | **Camera-ready** | Apr 13, 2026 |
| **Event dates** | Jun 22-24, 2026 | | **Event dates** | Jun 22-24, 2026 |
| **Location** | Cambridge, UK |
| **CFP** | [https://www.sigmobile.org/mobisys/2026/](https://www.sigmobile.org/mobisys/2026/) | | **CFP** | [https://www.sigmobile.org/mobisys/2026/](https://www.sigmobile.org/mobisys/2026/) |
## Previous Editions ## Previous Editions

View File

@@ -16,6 +16,19 @@ next_event: May 11-13, 2027
notification: Dec 8, 2026 notification: Dec 8, 2026
location: Providence, RI, USA location: Providence, RI, USA
cfp_url: https://www.usenix.org/conference/nsdi27/call-for-papers cfp_url: https://www.usenix.org/conference/nsdi27/call-for-papers
camera_ready: Mar 4, 2027
cycles:
- name: Spring
abstract_deadline: Apr 16, 2026
submission_deadline: Apr 23, 2026
notification: Jul 23, 2026
camera_ready: Oct 20, 2026
- name: Fall
abstract_deadline: Sep 10, 2026
submission_deadline: Sep 17, 2026
notification: Dec 8, 2026
camera_ready: Mar 4, 2027
next_cycle: Fall
--- ---
*USENIX Symposium on Networked Systems Design and Implementation* *USENIX Symposium on Networked Systems Design and Implementation*
@@ -27,13 +40,15 @@ cfp_url: https://www.usenix.org/conference/nsdi27/call-for-papers
| **Website** | [https://www.usenix.org/conference/nsdi27](https://www.usenix.org/conference/nsdi27) | | **Website** | [https://www.usenix.org/conference/nsdi27](https://www.usenix.org/conference/nsdi27) |
| **Latest digest** | [NSDI 2025](/cloud-edge/digests/nsdi-2025/) — 13 papers | | **Latest digest** | [NSDI 2025](/cloud-edge/digests/nsdi-2025/) — 13 papers |
## Upcoming Deadline ## Submission Cycles
| Cycle | Abstract | Paper deadline | Notification | Camera-ready |
|---|---|---|---|---|
| Spring | Apr 16, 2026 | Apr 23, 2026 | Jul 23, 2026 | Oct 20, 2026 |
| **Fall** (next) | Sep 10, 2026 | Sep 17, 2026 | Dec 8, 2026 | Mar 4, 2027 |
| | | | | |
|---|---| |---|---|
| **Abstract deadline** | Sep 10, 2026 |
| **Paper deadline** | Sep 17, 2026 |
| **Notification** | Dec 8, 2026 |
| **Event dates** | May 11-13, 2027 | | **Event dates** | May 11-13, 2027 |
| **Location** | Providence, RI, USA | | **Location** | Providence, RI, USA |
| **CFP** | [https://www.usenix.org/conference/nsdi27/call-for-papers](https://www.usenix.org/conference/nsdi27/call-for-papers) | | **CFP** | [https://www.usenix.org/conference/nsdi27/call-for-papers](https://www.usenix.org/conference/nsdi27/call-for-papers) |

View File

@@ -10,11 +10,13 @@ icore_rank: A*
dblp_key: conf/osdi dblp_key: conf/osdi
draft: false draft: false
homepage: https://www.usenix.org/conference/osdi26 homepage: https://www.usenix.org/conference/osdi26
next_deadline: Dec 11, 2025 next_deadline: Dec 8, 2026
abstract_deadline: Dec 4, 2025 abstract_deadline: Dec 1, 2026
next_event: Jul 13-15, 2026 next_event: Jul 7-9, 2027
location: Seattle, WA, USA location: Baltimore, MD, USA
cfp_url: https://www.usenix.org/conference/osdi26/call-for-papers cfp_url: https://www.usenix.org/conference/osdi27/call-for-papers
notification: Mar 16, 2027
camera_ready: Jun 3, 2027
--- ---
*USENIX Symposium on Operating Systems Design and Implementation* *USENIX Symposium on Operating Systems Design and Implementation*
@@ -30,11 +32,13 @@ cfp_url: https://www.usenix.org/conference/osdi26/call-for-papers
| | | | | |
|---|---| |---|---|
| **Abstract deadline** | Dec 4, 2025 | | **Abstract deadline** | Dec 1, 2026 |
| **Paper deadline** | Dec 11, 2025 | | **Paper deadline** | Dec 8, 2026 |
| **Event dates** | Jul 13-15, 2026 | | **Notification** | Mar 16, 2027 |
| **Location** | Seattle, WA, USA | | **Camera-ready** | Jun 3, 2027 |
| **CFP** | [https://www.usenix.org/conference/osdi26/call-for-papers](https://www.usenix.org/conference/osdi26/call-for-papers) | | **Event dates** | Jul 7-9, 2027 |
| **Location** | Baltimore, MD, USA |
| **CFP** | [https://www.usenix.org/conference/osdi27/call-for-papers](https://www.usenix.org/conference/osdi27/call-for-papers) |
## Previous Editions ## Previous Editions

View File

@@ -10,7 +10,6 @@ type: conference
icore_rank: A icore_rank: A
dblp_key: conf/sc dblp_key: conf/sc
draft: false draft: false
deadline_source: wikicfp:194274
homepage: https://sc24.supercomputing.org/ homepage: https://sc24.supercomputing.org/
next_deadline: Apr 8, 2026 next_deadline: Apr 8, 2026
abstract_deadline: Apr 1, 2026 abstract_deadline: Apr 1, 2026
@@ -41,7 +40,6 @@ cfp_url: https://sc26.supercomputing.org/program/papers/
| **Event dates** | Nov 15-20, 2026 | | **Event dates** | Nov 15-20, 2026 |
| **Location** | Chicago, IL, USA | | **Location** | Chicago, IL, USA |
| **CFP** | [https://sc26.supercomputing.org/program/papers/](https://sc26.supercomputing.org/program/papers/) | | **CFP** | [https://sc26.supercomputing.org/program/papers/](https://sc26.supercomputing.org/program/papers/) |
| **Source** | `wikicfp:194274` |
## Previous Editions ## Previous Editions

View File

@@ -8,10 +8,9 @@ type: conference
icore_rank: unranked icore_rank: unranked
dblp_key: conf/ieeesec dblp_key: conf/ieeesec
draft: false draft: false
deadline_source: wikicfp:189776
homepage: https://acm-ieee-sec.org/2026/ homepage: https://acm-ieee-sec.org/2026/
next_deadline: May 1, 2026 next_deadline: May 8, 2026
abstract_deadline: Apr 24, 2026 abstract_deadline: May 8, 2026
next_event: Oct 13-16, 2026 next_event: Oct 13-16, 2026
notification: Jul 29, 2026 notification: Jul 29, 2026
camera_ready: Sep 4, 2026 camera_ready: Sep 4, 2026
@@ -31,13 +30,11 @@ cfp_url: https://acm-ieee-sec.org/2026/
| | | | | |
|---|---| |---|---|
| **Abstract deadline** | Apr 24, 2026 | | **Paper deadline** | May 8, 2026 |
| **Paper deadline** | May 1, 2026 |
| **Notification** | Jul 29, 2026 | | **Notification** | Jul 29, 2026 |
| **Camera-ready** | Sep 4, 2026 | | **Camera-ready** | Sep 4, 2026 |
| **Event dates** | Oct 13-16, 2026 | | **Event dates** | Oct 13-16, 2026 |
| **CFP** | [https://acm-ieee-sec.org/2026/](https://acm-ieee-sec.org/2026/) | | **CFP** | [https://acm-ieee-sec.org/2026/](https://acm-ieee-sec.org/2026/) |
| **Source** | `wikicfp:189776` |
## Previous Editions ## Previous Editions

View File

@@ -8,7 +8,6 @@ type: conference
icore_rank: '' icore_rank: ''
dblp_key: conf/cloud dblp_key: conf/cloud
draft: false draft: false
deadline_source: wikicfp:191071
homepage: https://acmsocc.org/2026/ homepage: https://acmsocc.org/2026/
next_deadline: Jul 14, 2026 next_deadline: Jul 14, 2026
next_event: Nov 18-20, 2026 next_event: Nov 18-20, 2026
@@ -17,6 +16,18 @@ notification: Sep 26, 2026
camera_ready: Oct 17, 2026 camera_ready: Oct 17, 2026
location: Singapore location: Singapore
cfp_url: https://acmsocc.org/2026/papers.html cfp_url: https://acmsocc.org/2026/papers.html
cycles:
- name: Round 1
abstract_deadline: Feb 6, 2026
submission_deadline: Feb 13, 2026
notification: Apr 29, 2026
camera_ready: Oct 17, 2026
- name: Round 2
abstract_deadline: Jul 7, 2026
submission_deadline: Jul 14, 2026
notification: Sep 26, 2026
camera_ready: Oct 17, 2026
next_cycle: Round 2
--- ---
*ACM Symposium on Cloud Computing* *ACM Symposium on Cloud Computing*
@@ -28,18 +39,18 @@ cfp_url: https://acmsocc.org/2026/papers.html
| **Website** | [https://acmsocc.org/2026/](https://acmsocc.org/2026/) | | **Website** | [https://acmsocc.org/2026/](https://acmsocc.org/2026/) |
| **Latest digest** | [SoCC 2025](/cloud-edge/digests/socc-2025/) — 13 papers | | **Latest digest** | [SoCC 2025](/cloud-edge/digests/socc-2025/) — 13 papers |
## Upcoming Deadline ## Submission Cycles
| Cycle | Abstract | Paper deadline | Notification | Camera-ready |
|---|---|---|---|---|
| Round 1 | Feb 6, 2026 | Feb 13, 2026 | Apr 29, 2026 | Oct 17, 2026 |
| **Round 2** (next) | Jul 7, 2026 | Jul 14, 2026 | Sep 26, 2026 | Oct 17, 2026 |
| | | | | |
|---|---| |---|---|
| **Abstract deadline** | Jul 7, 2026 |
| **Paper deadline** | Jul 14, 2026 |
| **Notification** | Sep 26, 2026 |
| **Camera-ready** | Oct 17, 2026 |
| **Event dates** | Nov 18-20, 2026 | | **Event dates** | Nov 18-20, 2026 |
| **Location** | Singapore | | **Location** | Singapore |
| **CFP** | [https://acmsocc.org/2026/papers.html](https://acmsocc.org/2026/papers.html) | | **CFP** | [https://acmsocc.org/2026/papers.html](https://acmsocc.org/2026/papers.html) |
| **Source** | `wikicfp:191071` |
## Previous Editions ## Previous Editions

View File

@@ -6,16 +6,16 @@ draft: false
| Conference | Full name | ICORE | Domains | Abstract | Paper deadline | Notification | Event | Location | Digests | | Conference | Full name | ICORE | Domains | Abstract | Paper deadline | Notification | Event | Location | Digests |
|---|---|---|---|---|---|---|---|---|---| |---|---|---|---|---|---|---|---|---|---|
| [OSDI](/cloud-edge/venues/conferences/osdi/) | USENIX Symposium on Operating Systems Design and Implementation | **A*** | `edge-and-cloud`, `operating-systems`, `distributed-systems` | Dec 4, 2025 | Dec 11, 2025 | | Jul 13-15, 2026 | Seattle, WA, USA | 2 | | [OSDI](/cloud-edge/venues/conferences/osdi/) | USENIX Symposium on Operating Systems Design and Implementation | **A*** | `edge-and-cloud`, `operating-systems`, `distributed-systems` | Dec 1, 2026 | Dec 8, 2026 | Mar 16, 2027 | Jul 7-9, 2027 | Baltimore, MD, USA | 2 |
| [SOSP](/cloud-edge/venues/conferences/sosp/) | ACM Symposium on Operating Systems Principles | **A*** | `edge-and-cloud`, `operating-systems`, `distributed-systems` | Mar 26, 2026 | Apr 1, 2026 | Jul 3, 2026 | Sep 29, 2026 - Oct 2, 2026 | Prague, Czechia | 2 | | [SOSP](/cloud-edge/venues/conferences/sosp/) | ACM Symposium on Operating Systems Principles | **A*** | `edge-and-cloud`, `operating-systems`, `distributed-systems` | Mar 26, 2026 | Apr 1, 2026 | Jul 3, 2026 | Sep 29, 2026 - Oct 2, 2026 | Prague, Czechia | 2 |
| [EuroSys](/cloud-edge/venues/conferences/eurosys/) | European Conference on Computer Systems | **A** | `edge-and-cloud`, `operating-systems`, `distributed-systems` | May 7, 2026 | May 14, 2026 | Aug 21, 2026 | Apr 19-23, 2027 | Rabat, Morocco | 2 | | [EuroSys](/cloud-edge/venues/conferences/eurosys/) | European Conference on Computer Systems | **A** | `edge-and-cloud`, `operating-systems`, `distributed-systems` | Sep 17, 2026 | Sep 24, 2026 (Fall) | Jan 29, 2027 | Apr 19-23, 2027 | Rabat, Morocco | 2 |
| [HPDC](/cloud-edge/venues/conferences/hpdc/) | IEEE International Symposium on High Performance Distributed Computing | **A** | `edge-and-cloud`, `hpc`, `distributed-systems` | Jan 29, 2026 | Feb 5, 2026 | Mar 31, 2026 | Jul 13, 2026 - Jul 16, 2026 | Cleveland, OH, USA | 2 | | [HPDC](/cloud-edge/venues/conferences/hpdc/) | IEEE International Symposium on High Performance Distributed Computing | **A** | `edge-and-cloud`, `hpc`, `distributed-systems` | Jan 29, 2026 | Feb 5, 2026 | Mar 31, 2026 | Jul 13, 2026 - Jul 16, 2026 | Cleveland, OH, USA | 2 |
| [IPDPS](/cloud-edge/venues/conferences/ipdps/) | IEEE International Parallel and Distributed Processing Symposium | **A** | `edge-and-cloud`, `parallel-computing`, `distributed-systems` | Oct 2, 2025 | Oct 9, 2025 | Feb 2, 2026 | May 25, 2026 - May 29, 2026 | New Orleans, USA | 2 | | [IPDPS](/cloud-edge/venues/conferences/ipdps/) | IEEE International Parallel and Distributed Processing Symposium | **A** | `edge-and-cloud`, `parallel-computing`, `distributed-systems` | Oct 1, 2026 | Oct 8, 2026 | Feb 2, 2027 | Jun 1-5, 2027 | Seattle, WA, USA | 2 |
| [Middleware](/cloud-edge/venues/conferences/middleware/) | ACM/IFIP/USENIX Middleware Conference | **A** | `edge-and-cloud`, `distributed-systems` | May 29, 2026 | Jun 5, 2026 | Aug 28, 2026 | Dec 14-18, 2026 | Tarragona, Spain | 2 | | [Middleware](/cloud-edge/venues/conferences/middleware/) | ACM/IFIP/USENIX Middleware Conference | **A** | `edge-and-cloud`, `distributed-systems` | May 29, 2026 | Jun 5, 2026 (Summer) | Aug 28, 2026 | Dec 14-18, 2026 | Tarragona, Spain | 2 |
| [MobiSys](/cloud-edge/venues/conferences/mobisys/) | ACM International Conference on Mobile Systems, Applications, and Services | **A** | `edge-and-cloud`, `mobile-computing`, `edge-computing` | Nov 28, 2025 | Dec 5, 2025 | Mar 2, 2026 | Jun 22-24, 2026 | | 2 | | [MobiSys](/cloud-edge/venues/conferences/mobisys/) | ACM International Conference on Mobile Systems, Applications, and Services | **A** | `edge-and-cloud`, `mobile-computing`, `edge-computing` | Nov 28, 2025 | Dec 5, 2025 | Mar 2, 2026 | Jun 22-24, 2026 | Cambridge, UK | 2 |
| [SC](/cloud-edge/venues/conferences/sc/) | International Conference for High Performance Computing, Networking, Storage and Analysis | **A** | `edge-and-cloud`, `hpc`, `distributed-systems` | Apr 1, 2026 | Apr 8, 2026 | Jul 1, 2026 | Nov 15-20, 2026 | Chicago, IL, USA | 2 | | [SC](/cloud-edge/venues/conferences/sc/) | International Conference for High Performance Computing, Networking, Storage and Analysis | **A** | `edge-and-cloud`, `hpc`, `distributed-systems` | Apr 1, 2026 | Apr 8, 2026 | Jul 1, 2026 | Nov 15-20, 2026 | Chicago, IL, USA | 2 |
| [CCGrid](/cloud-edge/venues/conferences/ccgrid/) | IEEE/ACM International Symposium on Cluster, Cloud and Internet Computing | **B** | `edge-and-cloud`, `cloud-computing`, `hpc`, `distributed-systems` | | Dec 21, 2025 | Feb 10, 2026 | May 18-21, 2026 | Sydney, Australia | 1 | | [CCGrid](/cloud-edge/venues/conferences/ccgrid/) | IEEE/ACM International Symposium on Cluster, Cloud and Internet Computing | **B** | `edge-and-cloud`, `cloud-computing`, `hpc`, `distributed-systems` | | Dec 21, 2025 | Feb 10, 2026 | May 18-21, 2026 | Sydney, Australia | 1 |
| [ATC](/cloud-edge/venues/conferences/atc/) | ACM SIGOPS Annual Technical Conference | **C** | `edge-and-cloud`, `operating-systems`, `distributed-systems` | | Jun 10, 2026 | Sep 18, 2026 | Nov 16-18, 2026 | Hong Kong | 2 | | [ATC](/cloud-edge/venues/conferences/atc/) | ACM SIGOPS Annual Technical Conference | **C** | `edge-and-cloud`, `operating-systems`, `distributed-systems` | | Jun 10, 2026 | Sep 18, 2026 | Nov 16-18, 2026 | Hong Kong | 2 |
| [NSDI](/cloud-edge/venues/conferences/nsdi/) | USENIX Symposium on Networked Systems Design and Implementation | **National: USA** | `edge-and-cloud`, `networking`, `distributed-systems` | Sep 10, 2026 | Sep 17, 2026 | Dec 8, 2026 | May 11-13, 2027 | Providence, RI, USA | 2 | | [NSDI](/cloud-edge/venues/conferences/nsdi/) | USENIX Symposium on Networked Systems Design and Implementation | **National: USA** | `edge-and-cloud`, `networking`, `distributed-systems` | Sep 10, 2026 | Sep 17, 2026 (Fall) | Dec 8, 2026 | May 11-13, 2027 | Providence, RI, USA | 2 |
| [SEC](/cloud-edge/venues/conferences/sec/) | IEEE/ACM Symposium on Edge Computing | **unranked** | `edge-and-cloud`, `edge-computing` | Apr 24, 2026 | May 1, 2026 | Jul 29, 2026 | Oct 13-16, 2026 | | 2 | | [SEC](/cloud-edge/venues/conferences/sec/) | IEEE/ACM Symposium on Edge Computing | **unranked** | `edge-and-cloud`, `edge-computing` | | May 8, 2026 | Jul 29, 2026 | Oct 13-16, 2026 | | 2 |
| [SoCC](/cloud-edge/venues/conferences/socc/) | ACM Symposium on Cloud Computing | **—** | `edge-and-cloud`, `cloud-computing` | Jul 7, 2026 | Jul 14, 2026 | Sep 26, 2026 | Nov 18-20, 2026 | Singapore | 2 | | [SoCC](/cloud-edge/venues/conferences/socc/) | ACM Symposium on Cloud Computing | **—** | `edge-and-cloud`, `cloud-computing` | Jul 7, 2026 | Jul 14, 2026 (Round 2) | Sep 26, 2026 | Nov 18-20, 2026 | Singapore | 2 |

View File

@@ -4,28 +4,50 @@ deadlines:
source: manual source: manual
event_dates: Apr 19-23, 2027 event_dates: Apr 19-23, 2027
location: Rabat, Morocco location: Rabat, Morocco
abstract_deadline: May 7, 2026
submission_deadline: May 14, 2026
notification: Aug 21, 2026
cfp_url: https://2027.eurosys.org/cfp.html cfp_url: https://2027.eurosys.org/cfp.html
cycles:
- name: Spring
abstract_deadline: May 7, 2026
submission_deadline: May 14, 2026
notification: Aug 21, 2026
camera_ready: Sep 25, 2026
- name: Fall
abstract_deadline: Sep 17, 2026
submission_deadline: Sep 24, 2026
notification: Jan 29, 2027
camera_ready: Mar 5, 2027
SoCC: SoCC:
source: manual source: manual
event_dates: Nov 18-20, 2026 event_dates: Nov 18-20, 2026
location: Singapore location: Singapore
abstract_deadline: Jul 7, 2026
submission_deadline: Jul 14, 2026
notification: Sep 26, 2026
camera_ready: Oct 17, 2026
cfp_url: https://acmsocc.org/2026/papers.html cfp_url: https://acmsocc.org/2026/papers.html
cycles:
- name: Round 1
abstract_deadline: Feb 6, 2026
submission_deadline: Feb 13, 2026
notification: Apr 29, 2026
camera_ready: Oct 17, 2026
- name: Round 2
abstract_deadline: Jul 7, 2026
submission_deadline: Jul 14, 2026
notification: Sep 26, 2026
camera_ready: Oct 17, 2026
Middleware: Middleware:
source: manual source: manual
event_dates: Dec 14-18, 2026 event_dates: Dec 14-18, 2026
location: Tarragona, Spain location: Tarragona, Spain
abstract_deadline: May 29, 2026
submission_deadline: Jun 5, 2026
notification: Aug 28, 2026
camera_ready: Oct 16, 2026
cfp_url: https://middleware-conf.github.io/2026/calls/call-for-research-papers/ cfp_url: https://middleware-conf.github.io/2026/calls/call-for-research-papers/
cycles:
- name: Winter
abstract_deadline: Dec 9, 2025
submission_deadline: Dec 12, 2025
notification: Mar 6, 2026
camera_ready: Apr 24, 2026
- name: Summer
abstract_deadline: May 29, 2026
submission_deadline: Jun 5, 2026
notification: Aug 28, 2026
camera_ready: Oct 16, 2026
ATC: ATC:
source: manual source: manual
event_dates: Nov 16-18, 2026 event_dates: Nov 16-18, 2026
@@ -36,19 +58,29 @@ deadlines:
cfp_url: https://sigops.org/s/conferences/atc/2026/cfp.html cfp_url: https://sigops.org/s/conferences/atc/2026/cfp.html
OSDI: OSDI:
source: manual source: manual
event_dates: Jul 13-15, 2026 event_dates: Jul 7-9, 2027
location: Seattle, WA, USA location: Baltimore, MD, USA
abstract_deadline: Dec 4, 2025 abstract_deadline: Dec 1, 2026
submission_deadline: Dec 11, 2025 submission_deadline: Dec 8, 2026
cfp_url: https://www.usenix.org/conference/osdi26/call-for-papers notification: Mar 16, 2027
camera_ready: Jun 3, 2027
cfp_url: https://www.usenix.org/conference/osdi27/call-for-papers
NSDI: NSDI:
source: manual source: manual
event_dates: May 11-13, 2027 event_dates: May 11-13, 2027
location: Providence, RI, USA location: Providence, RI, USA
abstract_deadline: Sep 10, 2026
submission_deadline: Sep 17, 2026
notification: Dec 8, 2026
cfp_url: https://www.usenix.org/conference/nsdi27/call-for-papers cfp_url: https://www.usenix.org/conference/nsdi27/call-for-papers
cycles:
- name: Spring
abstract_deadline: Apr 16, 2026
submission_deadline: Apr 23, 2026
notification: Jul 23, 2026
camera_ready: Oct 20, 2026
- name: Fall
abstract_deadline: Sep 10, 2026
submission_deadline: Sep 17, 2026
notification: Dec 8, 2026
camera_ready: Mar 4, 2027
SC: SC:
source: manual source: manual
event_dates: Nov 15-20, 2026 event_dates: Nov 15-20, 2026
@@ -66,11 +98,12 @@ deadlines:
notification: Mar 2, 2026 notification: Mar 2, 2026
camera_ready: Apr 13, 2026 camera_ready: Apr 13, 2026
cfp_url: https://www.sigmobile.org/mobisys/2026/ cfp_url: https://www.sigmobile.org/mobisys/2026/
location: Cambridge, UK
SEC: SEC:
source: manual source: manual
event_dates: Oct 13-16, 2026 event_dates: Oct 13-16, 2026
abstract_deadline: Apr 24, 2026 abstract_deadline: May 8, 2026
submission_deadline: May 1, 2026 submission_deadline: May 8, 2026
notification: Jul 29, 2026 notification: Jul 29, 2026
camera_ready: Sep 4, 2026 camera_ready: Sep 4, 2026
cfp_url: https://acm-ieee-sec.org/2026/ cfp_url: https://acm-ieee-sec.org/2026/
@@ -80,7 +113,7 @@ deadlines:
location: Sydney, Australia location: Sydney, Australia
submission_deadline: Dec 21, 2025 submission_deadline: Dec 21, 2025
notification: Feb 10, 2026 notification: Feb 10, 2026
camera_ready: Mar 22, 2026 camera_ready: Mar 15, 2026
cfp_url: https://ccgrid2026.org/cfp.html cfp_url: https://ccgrid2026.org/cfp.html
SOSP: SOSP:
wikicfp_event_id: '191399' wikicfp_event_id: '191399'
@@ -94,16 +127,14 @@ deadlines:
cfp_url: https://sigops.org/s/conferences/sosp/2026/cfp.html cfp_url: https://sigops.org/s/conferences/sosp/2026/cfp.html
wikicfp_title: SOSP wikicfp_title: SOSP
IPDPS: IPDPS:
wikicfp_event_id: '189093' source: manual
source: wikicfp event_dates: Jun 1-5, 2027
event_dates: May 25, 2026 - May 29, 2026 location: Seattle, WA, USA
location: New Orleans, USA abstract_deadline: Oct 1, 2026
abstract_deadline: Oct 2, 2025 submission_deadline: Oct 8, 2026
submission_deadline: Oct 9, 2025 notification: Feb 2, 2027
notification: Feb 2, 2026 camera_ready: Feb 20, 2027
camera_ready: Feb 20, 2026 cfp_url: https://www.ipdps.org/ipdps2027/2027-call-for-papers.html
cfp_url: https://www.ipdps.org/ipdps2026/2026-call-for-papers.html
wikicfp_title: IPDPS
HPDC: HPDC:
wikicfp_event_id: '191029' wikicfp_event_id: '191029'
source: wikicfp source: wikicfp

View File

@@ -35,7 +35,9 @@ PRESERVED_VENUE_FIELDS = {"notes", "deadline_source"}
# Fields removed from existing front matter on every regeneration: # Fields removed from existing front matter on every regeneration:
# - "url" reserved by Hugo (overrides page URL) # - "url" reserved by Hugo (overrides page URL)
# - "papers" moved from front matter to rendered markdown body # - "papers" moved from front matter to rendered markdown body
_STRIP_FROM_EXISTING = {"url", "papers"} # - "cycles" / "next_cycle" rebuilt from deadlines.yaml every run, so a venue
# dropping back to a single round does not keep a stale cycle list
_STRIP_FROM_EXISTING = {"url", "papers", "cycles", "next_cycle"}
# --------------------------------------------------------------------------- # ---------------------------------------------------------------------------
@@ -118,13 +120,37 @@ def scimago_lookup(data: dict[str, dict], full_name: str, issn: str) -> dict:
return {} return {}
# Fields describing one submission cycle. Everything else on a deadline entry
# (event_dates, location, cfp_url, source) describes the event itself.
CYCLE_FIELDS = ("name", "abstract_deadline", "submission_deadline", "notification",
"camera_ready")
def _normalise_cycles(entry: dict) -> None:
"""Fold a flat, single-cycle entry into a one-element `cycles` list, in place.
Venues with a single submission round stay flat in YAML; consumers below only
ever see `cycles`. `cfp_url` stays at the top level — it describes the call,
not one round — but a cycle may override it where a venue publishes separate
calls per round.
"""
if entry.get("cycles"):
return
cycle = {k: entry.pop(k) for k in CYCLE_FIELDS if k in entry}
entry["cycles"] = [cycle] if cycle else []
def load_deadlines(path: str) -> dict[str, dict]: def load_deadlines(path: str) -> dict[str, dict]:
p = Path(path) p = Path(path)
if not p.exists(): if not p.exists():
return {} return {}
with open(p) as f: with open(p) as f:
data = yaml.safe_load(f) or {} data = yaml.safe_load(f) or {}
return data.get("deadlines", {}) deadlines = data.get("deadlines") or {}
for entry in deadlines.values():
if entry:
_normalise_cycles(entry)
return deadlines
def load_venue_digests(papers_dir: Path) -> dict[str, list[dict]]: def load_venue_digests(papers_dir: Path) -> dict[str, list[dict]]:
@@ -182,17 +208,40 @@ def _conf_body(fm: dict, digests: list[dict] | None = None, base_path: str = "")
count = latest.get("paper_count", 0) count = latest.get("paper_count", 0)
suffix = f"{count} papers" if count else "*(digest pending)*" suffix = f"{count} papers" if count else "*(digest pending)*"
lines.append(f"| **Latest digest** | [{title} {year}]({base_path}/digests/{slug}/) {suffix} |") lines.append(f"| **Latest digest** | [{title} {year}]({base_path}/digests/{slug}/) {suffix} |")
lines += [ cycles = fm.get("cycles") or []
"\n## Upcoming Deadline\n", if len(cycles) > 1:
"| | |", "|---|---|", lines += [
] "\n## Submission Cycles\n",
if abstract_dl and abstract_dl != dl: "| Cycle | Abstract | Paper deadline | Notification | Camera-ready |",
lines.append(f"| **Abstract deadline** | {abstract_dl} |") "|---|---|---|---|---|",
lines.append(f"| **Paper deadline** | {dl} |") ]
if notification: next_name = fm.get("next_cycle")
lines.append(f"| **Notification** | {notification} |") marked = False
if camera_ready: for cycle in cycles:
lines.append(f"| **Camera-ready** | {camera_ready} |") name = cycle.get("name") or ""
if not marked and name == next_name:
name = f"**{name}** (next)"
marked = True
paper = cycle.get("submission_deadline") or cycle.get("abstract_deadline") or "TBD"
abstract = cycle.get("abstract_deadline") or ""
abs_cell = abstract if (abstract and abstract != paper) else ""
lines.append(
f"| {name} | {abs_cell} | {paper} | {cycle.get('notification') or ''} "
f"| {cycle.get('camera_ready') or ''} |"
)
lines += ["\n| | |", "|---|---|"]
else:
lines += [
"\n## Upcoming Deadline\n",
"| | |", "|---|---|",
]
if abstract_dl and abstract_dl != dl:
lines.append(f"| **Abstract deadline** | {abstract_dl} |")
lines.append(f"| **Paper deadline** | {dl} |")
if notification:
lines.append(f"| **Notification** | {notification} |")
if camera_ready:
lines.append(f"| **Camera-ready** | {camera_ready} |")
lines.append(f"| **Event dates** | {event} |") lines.append(f"| **Event dates** | {event} |")
if location: if location:
lines.append(f"| **Location** | {location} |") lines.append(f"| **Location** | {location} |")
@@ -320,6 +369,30 @@ def _parse_date(s: str, month_only: bool = False) -> str | None:
return None return None
def _cycle_deadline(cycle: dict) -> str:
"""The date a cycle is judged by: its paper deadline, else its abstract deadline."""
return cycle.get("submission_deadline") or cycle.get("abstract_deadline") or ""
def _next_cycle(entry: dict, today: str | None = None) -> dict:
"""The cycle a reader should act on.
The earliest cycle whose paper deadline has not passed; if every cycle has
elapsed, the last one, so a page shows the most recent round rather than
going blank. Cycles with unparseable dates sort last.
"""
cycles = entry.get("cycles") or []
if not cycles:
return {}
today = today or datetime.now().strftime("%Y-%m-%d")
ordered = sorted(cycles, key=lambda c: _parse_date(_cycle_deadline(c)) or "9999-12-31")
for cycle in ordered:
iso = _parse_date(_cycle_deadline(cycle))
if iso and iso >= today:
return cycle
return ordered[-1]
def _parse_date_range(s: str) -> tuple[str | None, str | None]: def _parse_date_range(s: str) -> tuple[str | None, str | None]:
"""Return (start_iso, end_iso_exclusive) from a date-range string. """Return (start_iso, end_iso_exclusive) from a date-range string.
@@ -374,9 +447,14 @@ def _conferences_section_body(venues: dict, icore: dict, deadlines: dict,
acronym = conf.get("acronym", "") acronym = conf.get("acronym", "")
rank = icore.get(acronym.upper(), "") or "" rank = icore.get(acronym.upper(), "") or ""
dl = deadlines.get(acronym, {}) dl = deadlines.get(acronym, {})
abstract = dl.get("abstract_deadline") or "" # The venue index lists venues, not cycles: show the next open round and
paper = dl.get("submission_deadline") or dl.get("abstract_deadline") or "TBD" # name it, so a passed round never reads as "you missed this conference".
notif = dl.get("notification") or "" nxt = _next_cycle(dl)
abstract = nxt.get("abstract_deadline") or ""
paper = nxt.get("submission_deadline") or nxt.get("abstract_deadline") or "TBD"
if len(dl.get("cycles") or []) > 1 and nxt.get("name"):
paper = f"{paper} ({nxt['name']})"
notif = nxt.get("notification") or ""
event = dl.get("event_dates") or "" event = dl.get("event_dates") or ""
location = dl.get("location") or "" location = dl.get("location") or ""
domains = ", ".join(f"`{d}`" for d in conf.get("domain", [])) domains = ", ".join(f"`{d}`" for d in conf.get("domain", []))
@@ -432,25 +510,30 @@ def _calendar_events(venues: dict, deadlines: dict, base_path: str = "") -> list
dl = deadlines.get(acronym, {}) dl = deadlines.get(acronym, {})
url = f"{base_path}/venues/conferences/{acronym.lower()}/" url = f"{base_path}/venues/conferences/{acronym.lower()}/"
location = dl.get("location") or "" location = dl.get("location") or ""
cfp_url = dl.get("cfp_url") or ""
for field, label, color in [ for cycle in dl.get("cycles") or []:
("abstract_deadline", "abstract deadline", "#f4a261"), cycle_name = cycle.get("name") or ""
("submission_deadline", "paper deadline", "#e63946"), prefix = f"{acronym} {cycle_name}".strip()
("notification", "notification", "#2a9d8f"), cfp_url = cycle.get("cfp_url") or dl.get("cfp_url") or ""
]: for field, label, color in [
iso = _parse_date(dl.get(field) or "") ("abstract_deadline", "abstract deadline", "#f4a261"),
if iso: ("submission_deadline", "paper deadline", "#e63946"),
ev: dict = {"title": f"{acronym}{label}", "start": iso, ("notification", "notification", "#2a9d8f"),
"url": url, "color": color, "allDay": True} ]:
props: dict = {} iso = _parse_date(cycle.get(field) or "")
if location: if iso:
props["location"] = location ev: dict = {"title": f"{prefix}{label}", "start": iso,
if cfp_url: "url": url, "color": color, "allDay": True}
props["cfp_url"] = cfp_url props: dict = {}
if props: if location:
ev["extendedProps"] = props props["location"] = location
events.append(ev) if cfp_url:
props["cfp_url"] = cfp_url
if cycle_name:
props["cycle"] = cycle_name
if props:
ev["extendedProps"] = props
events.append(ev)
start, end = _parse_date_range(dl.get("event_dates") or "") start, end = _parse_date_range(dl.get("event_dates") or "")
if start: if start:
@@ -503,26 +586,28 @@ def _calendar_body(venues: dict, icore: dict, deadlines: dict, base_path: str =
acronym = conf.get("acronym", "") acronym = conf.get("acronym", "")
rank = icore.get(acronym.upper(), "") or "" rank = icore.get(acronym.upper(), "") or ""
dl_data = deadlines.get(acronym, {}) dl_data = deadlines.get(acronym, {})
abstract = dl_data.get("abstract_deadline") or ""
paper = dl_data.get("submission_deadline") or dl_data.get("abstract_deadline") or "TBD"
notif = dl_data.get("notification") or ""
event = dl_data.get("event_dates") or "" event = dl_data.get("event_dates") or ""
location = dl_data.get("location") or "" location = dl_data.get("location") or ""
conf_rows.append((acronym, conf.get("full_name", ""), abstract, paper, # One row per submission cycle — a venue's later rounds are the point.
notif, event, location, rank)) for cycle in dl_data.get("cycles") or [{}]:
abstract = cycle.get("abstract_deadline") or ""
paper = cycle.get("submission_deadline") or cycle.get("abstract_deadline") or "TBD"
notif = cycle.get("notification") or ""
conf_rows.append((acronym, conf.get("full_name", ""), cycle.get("name") or "",
abstract, paper, notif, event, location, rank))
conf_rows.sort(key=lambda r: (parse_deadline(r[3]), r[0])) conf_rows.sort(key=lambda r: (parse_deadline(r[4]), r[0]))
lines += [ lines += [
"\n## Conference Deadlines\n", "\n## Conference Deadlines\n",
"| Venue | Name | Abstract | Paper deadline | Notification | Event dates | Location | ICORE |", "| Venue | Name | Cycle | Abstract | Paper deadline | Notification | Event dates | Location | ICORE |",
"|---|---|---|---|---|---|---|---|", "|---|---|---|---|---|---|---|---|---|",
] ]
for acronym, full_name, abstract, paper, notif, event, location, rank in conf_rows: for acronym, full_name, cycle_name, abstract, paper, notif, event, location, rank in conf_rows:
abs_cell = abstract if (abstract and abstract != paper) else "" abs_cell = abstract if (abstract and abstract != paper) else ""
link = f"[{acronym}]({base_path}/venues/conferences/{acronym.lower()}/)" link = f"[{acronym}]({base_path}/venues/conferences/{acronym.lower()}/)"
lines.append( lines.append(
f"| {link} | {full_name} | {abs_cell} | {paper} | {notif} " f"| {link} | {full_name} | {cycle_name} | {abs_cell} | {paper} | {notif} "
f"| {event} | {location} | {rank} |" f"| {event} | {location} | {rank} |"
) )
@@ -617,16 +702,24 @@ def gen_conferences(venues: dict, icore: dict, deadlines: dict, root: Path,
"draft": False, "draft": False,
} }
dl = deadlines.get(acronym, {}) dl = deadlines.get(acronym, {})
if dl.get("submission_deadline"): cycles = dl.get("cycles") or []
new_fm["next_deadline"] = dl["submission_deadline"] nxt = _next_cycle(dl)
elif dl.get("abstract_deadline"): if nxt.get("submission_deadline"):
new_fm["next_deadline"] = dl["abstract_deadline"] new_fm["next_deadline"] = nxt["submission_deadline"]
if dl.get("abstract_deadline") and dl.get("submission_deadline"): elif nxt.get("abstract_deadline"):
new_fm["abstract_deadline"] = dl["abstract_deadline"] new_fm["next_deadline"] = nxt["abstract_deadline"]
if dl.get("notification"): if nxt.get("abstract_deadline") and nxt.get("submission_deadline"):
new_fm["notification"] = dl["notification"] new_fm["abstract_deadline"] = nxt["abstract_deadline"]
if dl.get("camera_ready"): if nxt.get("notification"):
new_fm["camera_ready"] = dl["camera_ready"] new_fm["notification"] = nxt["notification"]
if nxt.get("camera_ready"):
new_fm["camera_ready"] = nxt["camera_ready"]
# Only multi-cycle venues carry the full list; single-cycle pages keep
# the flat front matter they have always had.
if len(cycles) > 1:
new_fm["cycles"] = cycles
if nxt.get("name"):
new_fm["next_cycle"] = nxt["name"]
if dl.get("event_dates"): if dl.get("event_dates"):
new_fm["next_event"] = dl["event_dates"] new_fm["next_event"] = dl["event_dates"]
if dl.get("location"): if dl.get("location"):