Changelog
What's changed, and when — internal changes (dependency bumps, CI, tests) are left out.
v1.34.1
v1.34.0
- calendar show went-or-not marks, weekday labels and a weekend tint #915
v1.33.0
- log say why a viewing was logged without OMDb metadata #899
- omdb stop re-sending titles OMDb already answered without completing #904
- overview include entries missing a director or synopsis in Refresh all #897
- venues a search that is no longer wanted leaves no trace #902
- venues show the address search results for what was typed last #901
- wizard give way to the picker after logging, and keep the logged viewing #906
v1.32.0
v1.31.2
- omdb refresh an entry from its own IMDb ID, not by looking the title up #882
v1.31.1
v1.31.0
- venues refresh the maps a venue's viewings lost #872
v1.30.2
- export carry the venue's location through export and import #868
v1.30.1
- purge delete each event at the address the server listed #862
v1.30.0
- import show skipped IMDb rows apart from failed ones #858
v1.29.0
- import skip non-film rows in an IMDb ratings export #856
v1.28.0
- import read an IMDb ratings.csv #853
v1.27.0
- import read a Letterboxd diary.csv #850
v1.26.0
- import add a dropzone, name the target calendar and offer a sample CSV #848
v1.25.0
- import show progress and wait out a 423 or 429 when importing #846
v1.24.1
- settings make the purge one request per viewing and say why one failed #840
v1.24.0
- settings add a button that purges every viewing from the calendar #836
v1.23.2
v1.23.1
- perf preload the Inter font so the home page doesn't shift #826
v1.21.0
- cache clear the viewings cache and the service worker's cache #765
- log stop parsing emails in the web app #792
- settings add a button to clear this browser's local cache #765
- caldav read and write viewing times as wall-clock times #757
- export write a release year the import will take back #753
- import compare dates as the viewer's local date #760
- import validate rows the way the CLI and the schema do #753
- log write the same Cinema spelling from the Pathé path as the form #755
- medium group and match mediums whatever their casing #755
v1.20.0
- ui give disconnected visitors a way forward #709
v1.19.0
- caldav show cached viewings first, refresh them in the background #715
v1.17.0
- ui collapse the optional connect settings and shorten the intro #678
v1.14.0
- webmcp expose log/edit/delete/search as WebMCP tools #669
v1.13.1
- location surface a rejected picklist write instead of swallowing it #656
v1.13.0
v1.12.3
- changelog recognize entries from merge-commit-strategy PRs #649
v1.12.2
- omdb show a loading status and bounded scroll for a larger search #623
v1.12.0
- venue bulk-add venue names already seen in viewing history #636
v1.11.0
v1.9.4
- omdb accept a pasted IMDb ID or URL directly in search #629
v1.9.3
- omdb follow totalResults to search past OMDb's first page #624
v1.9.1
- share stop the shared-link privacy check false-positiving on "me" #613
v1.9.0
- log open a search-and-select-first wizard from the header button #611
v1.8.0
- medium add a Mediums page mirroring Venues, and link medium from details #609
v1.7.0
- venue turn Add/Edit venue into a real dialog, like medium #607
v1.6.0
- medium make medium a structured picklist, like venue #605
v1.5.1
- log open Search OMDb as a real popup, not an easy-to-miss inline reveal #597
v1.5.0
- log let a visitor search OMDb and pick a match before logging #594
v1.4.0
- pwa register a service worker for real installability #591
v1.1.1
v1.1.0
- missing data add a missing-data overview page #576
v0.111.0
- calendar order the heatmap's year grids newest first #569
v0.110.1
- calendar stop heatmap hover popup from scrolling the page to the top #566
v0.110.0
v0.109.0
v0.108.0
- nav underline and mark aria-current the page a visitor is on #557
v0.107.0
- overview show a spinner and dim the row during Delete/Refresh #554
v0.106.0
v0.105.4
- nav link a detail page's breadcrumb crumb, and reflect its value in the title #541
v0.105.3
- overview dedupe the two full-history CalDAV requests an unfiltered load fires #538
v0.105.2
- details link a viewing's venue to its dedicated page, not the overview #532
v0.105.1
- details dedupe splitMultiValue so a repeated chip value doesn't crash the page #530
v0.105.0
- attribute pages add per-value pages for director/actor/genre/country/language chips #523
v0.104.0
- venue edit an already-known venue's structured data #521
v0.103.0
- venue structured venue picklist with select + Add venue form #518
v0.102.0
- venue add a dedicated per-venue page #515
v0.101.0
- nav remove the standalone /map page #512
v0.100.0
- overview tier filters, wrap them in a card, and move map below results #507
v0.99.0
- details surface TMDb-derived collection, certification, budget, popularity and keywords #508
v0.98.0
- docs share this app's own header/footer with docs pages #505
v0.97.0
- venue trim the venue filter/picker suggestions to name+city #499
v0.96.0
- venue trim display to name + city, drop address/country #496
v0.95.0
- chrome restructure top nav — header button + Settings hub #480
v0.94.0
- tmdb fetch full TMDb data set wherever imdb_id is resolved #481
v0.93.0
- chrome add a logo to the left of the header title #478
v0.92.0
- activity log derive log entries by diffing CalDAV state, not just self-made writes #483
v0.91.0
- venues remove the From/To date-range filter #476
v0.90.2
v0.90.1
- a11y give genuine errors a distinct toast, not routine status text #459
- chrome stop clipping the mobile GitHub ribbon's text #456
- homepage remove duplicate visible "Movie Planner" heading #453
- overview relabel map icon to describe navigation, not an inline reveal #460
- overview select a filter field's value on focus so switching suggestions needs no manual clear #462
- tooling exclude .claude/ from prettier's format check #454
- ui hide the decorative time bar when a viewing has no meaningful duration #461
v0.90.0
- movie details show a venue's verified street address, once known #423
v0.89.0
- chrome add breadcrumb navigation #421
v0.88.1
- caldav force no-store on single-resource GET requests #419
v0.88.0
- movie details group fields into sections, cap long chip lists, widen the trailer #416
v0.87.0
- calendar overview reflect the active filter in the page title #413
v0.86.0
- calendar overview filter by release date, at day/month/year granularity #408
v0.85.3
- calendar overview clicking any filter chip clears every other active filter #406
v0.85.2
- movie details action row overflow, move Share next to Back to overview #404
v0.85.1
- share remove the overview's whole-list sharing, add per-viewing sharing instead #401
v0.85.0
- movie details export a single viewing as JSON #396
v0.84.1
- docs sync Starlight's theme with the main app's dark-mode preference #394
v0.84.0
- chrome move Export as JSON into Settings, rename it Export viewings #391
v0.83.0
v0.82.0
- calendar overview show venue's city/country alongside its name #383
v0.81.0
- calendar overview make venue city/country and movie country/language/rated clickable filters #378
v0.80.0
- changelog show the deployed version and an end-user-relevant changelog #370
v0.79.3
- movie details show just the date when Start and End are identical #367
v0.79.2
- calendar overview show the share link as visible text, not just an attempted copy #364
v0.79.1
- calendar overview scope the map to the current page, not the whole filter #361
v0.79.0
- calendar overview show a map of the currently-filtered viewings #356
v0.78.0
- movie details embed the trailer instead of just linking to it #354
v0.77.0
- activity log record every create/edit/delete locally, with a page to browse it #352
v0.76.2
- calendar overview use the Web Share API for Share, when available #347
v0.76.1
- omdb extract the rest of OMDb's response fields on refresh #344
v0.76.0
- calendar overview share a read-only, frozen link to the filtered view #341
v0.75.0
- disclaimer add a prominent use-at-your-own-risk warning #327
v0.74.1
- movie details fix WCAG AA contrast on the "not linked" gap indicator #325
v0.74.0
- calendar overview show a location pin on rows with known coordinates #323
v0.73.0
- about add a public About page touring the app's features #272
- bulk import export viewings as JSON, import OMDb fields and update-by-uid #122
- caldav client read the movie-planner CLI's own calendar format #83
- caldav proxy the seven CalDAV operations, real WebDAV wire calls #9
- caldav parse and write a viewing's geo coordinates #244
- caldav show a Pathé booking's row/seat on the details page #309
- calendar heatmap clickable year and month headings, grouped by year #281
- calendar heatmap open the day popup on hover too, not just click #279
- calendar heatmap skip months with no viewings entirely #287
- calendar overview add a bulk "Refresh all metadata" button #57
- calendar overview add a title filter, with autocomplete #290
- calendar overview add autocomplete to the medium filter #141
- calendar overview bring back Edit and Delete icons per row #299
- calendar overview collapse the filter fields behind a toggle #223
- calendar overview convert to Svelte, add a busy spinner on refresh #107
- calendar overview default From/To to the visitor's own history #189
- calendar overview default sort by start date, descending #41
- calendar overview enlarge poster thumbnails in the overview #72
- calendar overview extend autocomplete to Venue, Actor, Genre #180
- calendar overview make the poster thumbnail link to the details page #139
- calendar overview make Title/When/Venue columns sortable #170
- calendar overview numbered page links, first/last, and a page-size control #302
- calendar overview paginate the overview #74
- calendar overview show the blocked-time bar in the When column #307
- calendar overview simplify the list to poster/title/when/venue/refresh #94
- calendar overview skip already-matched titles in bulk refresh #90
- calendar overview the main screen, filterable, full metadata #11
- calendar add a viewing-density heatmap page #213
- calendar add month labels, popup instead of navigation #215
- chrome add a real logo/favicon and PWA install support #160
- chrome add smooth page transitions with Astro's ClientRouter #178
- chrome make poster thumbnails bigger #167
- credentials first-load capture, browser storage, settings #6
- credentials let a visitor pause OMDb lookups without clearing the key #81
- cross links use brand marks for IMDb/RT/Letterboxd, not text #194
- docs add a Starlight usage guide at /docs #201
- docs generate light/dark screenshots in CI, show them in README #197
- export make Export as JSON reachable from every page #175
- geo add a Nominatim address-search client and a reuse lookup #246
- import add CSV/JSON bulk import with duplicate detection #19
- keyboard nav add vim-style navigation and a help overlay #119
- layout add a "Fork me on GitHub" ribbon #85
- layout add a footer with legal pages, plus humans.txt #87
- layout adopt Inter typeface, widen data-heavy pages #111
- location management add a venues overview page, first Svelte island #104
- location management offer picklist suggestions on the log form #26
- map add a placeholder /map page ahead of real venue coordinates #240
- map render the real global map, replacing the static preview #254
- map show the poster in a pin's popup, and open it on hover too #283
- map switch from the bundled abstract outline to real map tiles #263
- movie details add a dedicated details page per logged viewing #54
- movie details add a visual blocked-time bar #211
- movie details flag IMDb/Letterboxd as not linked without a real match #154
- movie details let a visitor re-search OMDb to fix a wrong match #314
- movie details make director clickable, filterable, autocompleted #184
- movie details make the Venue field a clickable link #304
- movie details offer venue autocomplete when editing #101
- movie details render a per-venue map when the viewing has coordinates #252
- movie details show a movie synopsis #228
- movie details show personal notes, convert to Svelte #109
- movie details show ratings as badges, make actors/genre clickable #164
- movie details show the rest of OMDb's fields, plus the trailer link #316
- movie editing optional coordinate entry when editing a viewing #251
- movie editing re-check the calendar entry before refresh calls OMDb #96
- movie editing update and delete from the overview #17
- movie log make end time optional on the manual log form #31
- movie log manual form, Pathé email parsing, OMDb enrichment #13
- movie log optional coordinate entry when logging a viewing #248
- omdb add poster, genre, year, cross-links and a refresh control #47
- omdb offer a disambiguation picker when there's no confident match #62
- site nav add a Viewings link, reorder to match reading order #162
- theme add a dark mode toggle #45
- ui display the app as "Movie Planner", not movie-planner-web #39
- ui redesign the layout with Tailwind CSS #29
- ui show a placeholder graphic for movies with no poster #238
- venues add a date-range filter #125
- venues add a map pinning every venue, linking to its overview #285
- venues group the venues page by country and city, with a map per city #320
- venues make a venue name link to the overview, filtered to it #132
- caldav parse all-day VEVENTs instead of silently dropping them #234
- caldav preserve unknown VEVENT properties across an edit #296
- caldav stop dropping a VEVENT with a start time but no end time #321
- caldav supersede a stale in-flight request, not race it #207
- calendar heatmap collapse a zero-activity month to one line #260
- calendar heatmap don't render an empty grid for an account with nothing logged #242
- calendar heatmap make empty cells visible in dark mode #231
- calendar heatmap open the popup near the clicked day, with more detail #220
- calendar overview keep the filter set after navigating away and back #293
- calendar overview shrink the table's own mobile footprint #218
- calendar overview stop distorting non-portrait poster thumbnails #77
- calendar overview stop the count line flashing during a refresh #172
- chrome keep the GitHub ribbon clear of the header's toggle buttons #137
- chrome reapply dark mode on every client-side page transition #186
- data loading refresh pages restored from the browser's bfcache #225
- keyboard nav poll instead of racing a bare assertion in the g test #155
- keyboard nav wait for the smooth-scroll animation to finish #191
- map give every pin its own Open in Maps link, not just the single one #256
- omdb refresh stop treating a bare imdbId as an already-confirmed match #114
- omdb fall back to a plain title search when a year-scoped one finds nothing #52
- omdb let refresh reach OMDb for a matched title missing its poster #150
- site nav show the nav menu on every page, not just home #128
- ui render the weekday abbreviation in English, not Dutch #144
- ui stop iOS Safari auto-zoom from reading as horizontal scroll #43
- venues carry the venue page's date range through to the overview #147
- venues show a venue that only exists on a calendar entry #117
v0.72.0
- venues group the venues page by country and city, with a map per city #320
v0.71.0
- movie details let a visitor re-search OMDb to fix a wrong match #314
v0.70.0
- caldav show a Pathé booking's row/seat on the details page #309
v0.69.0
v0.68.0
- movie details make the Venue field a clickable link #304
v0.67.0
- calendar overview bring back Edit and Delete icons per row #299
v0.66.2
- caldav preserve unknown VEVENT properties across an edit #296
v0.66.1
- calendar overview keep the filter set after navigating away and back #293
v0.66.0
- calendar overview add a title filter, with autocomplete #290
v0.65.0
v0.64.0
- calendar heatmap clickable year and month headings, grouped by year #281
v0.63.0
- calendar heatmap open the day popup on hover too, not just click #279
v0.62.0
- about add a public About page touring the app's features #272
v0.61.0
- map switch from the bundled abstract outline to real map tiles #263
v0.60.2
- calendar heatmap collapse a zero-activity month to one line #260
v0.60.1
- map give every pin its own Open in Maps link, not just the single one #256
v0.60.0
- map render the real global map, replacing the static preview #254
v0.59.0
- movie details render a per-venue map when the viewing has coordinates #252
v0.58.0
v0.57.0
- geo add a Nominatim address-search client and a reuse lookup #246
v0.56.0
- caldav parse and write a viewing's geo coordinates #244
v0.55.1
- calendar heatmap don't render an empty grid for an account with nothing logged #242
v0.55.0
v0.54.2
- caldav parse all-day VEVENTs instead of silently dropping them #234
v0.54.1
- calendar heatmap make empty cells visible in dark mode #231
v0.54.0
- movie details show a movie synopsis #228
v0.53.0
v0.52.1
v0.52.0
- calendar add month labels, popup instead of navigation #215
v0.51.0
- calendar add a viewing-density heatmap page #213
v0.50.0
- movie details add a visual blocked-time bar #211
v0.49.1
- caldav supersede a stale in-flight request, not race it #207
v0.49.0
- docs add a Starlight usage guide at /docs #201
v0.48.0
- docs generate light/dark screenshots in CI, show them in README #197
v0.47.0
- cross links use brand marks for IMDb/RT/Letterboxd, not text #194
v0.46.1
- keyboard nav wait for the smooth-scroll animation to finish #191
v0.46.0
- calendar overview default From/To to the visitor's own history #189
v0.45.0
v0.44.0
- calendar overview extend autocomplete to Venue, Actor, Genre #180
v0.43.0
- chrome add smooth page transitions with Astro's ClientRouter #178
v0.42.0
v0.41.0
- calendar overview make Title/When/Venue columns sortable #170
v0.40.0
v0.39.0
- site nav add a Viewings link, reorder to match reading order #162
v0.38.1
- keyboard nav poll instead of racing a bare assertion in the g test #155
v0.38.0
- movie details flag IMDb/Letterboxd as not linked without a real match #154
v0.37.3
- omdb let refresh reach OMDb for a matched title missing its poster #150
v0.37.2
- venues carry the venue page's date range through to the overview #147
v0.37.1
- ui render the weekday abbreviation in English, not Dutch #144
v0.37.0
- calendar overview add autocomplete to the medium filter #141
v0.36.0
v0.35.1
- site nav show the nav menu on every page, not just home #128
v0.35.0
- venues add a date-range filter #125
v0.34.0
- bulk import export viewings as JSON, import OMDb fields and update-by-uid #122
v0.33.0
- keyboard nav add vim-style navigation and a help overlay #119
v0.32.2
- venues show a venue that only exists on a calendar entry #117
v0.32.1
- omdb refresh stop treating a bare imdbId as an already-confirmed match #114
v0.32.0
- layout adopt Inter typeface, widen data-heavy pages #111
v0.31.0
- movie details show personal notes, convert to Svelte #109
v0.30.0
- calendar overview convert to Svelte, add a busy spinner on refresh #107
v0.29.0
- location management add a venues overview page, first Svelte island #104
v0.28.0
- movie details offer venue autocomplete when editing #101
v0.27.0
- movie editing re-check the calendar entry before refresh calls OMDb #96
v0.26.0
- calendar overview simplify the list to poster/title/when/venue/refresh #94
v0.25.0
- calendar overview skip already-matched titles in bulk refresh #90
v0.24.0
- layout add a footer with legal pages, plus humans.txt #87
v0.23.0
- layout add a "Fork me on GitHub" ribbon #85
v0.22.0
- caldav client read the movie-planner CLI's own calendar format #83
v0.21.0
- credentials let a visitor pause OMDb lookups without clearing the key #81
v0.20.1
- calendar overview stop distorting non-portrait poster thumbnails #77
v0.20.0
- calendar overview paginate the overview #74
v0.19.0
- calendar overview enlarge poster thumbnails in the overview #72
v0.18.0
- omdb offer a disambiguation picker when there's no confident match #62
v0.17.0
- calendar overview add a bulk "Refresh all metadata" button #57
v0.16.0
- movie details add a dedicated details page per logged viewing #54
v0.15.1
- omdb fall back to a plain title search when a year-scoped one finds nothing #52
v0.15.0
- omdb add poster, genre, year, cross-links and a refresh control #47
v0.14.0
- theme add a dark mode toggle #45
v0.13.1
- ui stop iOS Safari auto-zoom from reading as horizontal scroll #43
v0.13.0
- calendar overview default sort by start date, descending #41
v0.12.0
- ui display the app as "Movie Planner", not movie-planner-web #39
v0.11.0
- movie log make end time optional on the manual log form #31
v0.10.0
- ui redesign the layout with Tailwind CSS #29
v0.9.0
- location management offer picklist suggestions on the log form #26
v0.8.0
- import add CSV/JSON bulk import with duplicate detection #19
v0.7.0
- movie editing update and delete from the overview #17
v0.6.0
- movie log manual form, Pathé email parsing, OMDb enrichment #13
v0.5.0
- calendar overview the main screen, filterable, full metadata #11
v0.4.0
- caldav proxy the seven CalDAV operations, real WebDAV wire calls #9
v0.3.0
- credentials first-load capture, browser storage, settings #6