Skip to content

Releases: markbeep/vvzapi

v1.7.0

01 Feb 12:37
e01b01e

Choose a tag to compare

1.7.0 (2026-02-01)

Features

  • search: add notice when viewing out-of-date units (c7cfddc)
  • search: match department on short acronym/name (e2718d2)

Bug Fixes

  • search: add cache busting to site CSS to circumvent cloudflare (eb6df48)
  • search: add reference to favicon in header (d2ff3bb)
  • search: fix robots.txt not being returned (6c5fcf8)
  • vacuum db into separate file to prevent file corruption (9d1fc6e)

Dependencies

  • update dependencies for python 3.14 compatibility (f5bf30e)
  • update python to 3.14 (ab908d9)

Miscellaneous Chores

  • add GPLv3 license (ff6c5b1)
  • add jj to devcontainer (cc9483e)
  • add justfile for local development (625f501)
  • api: send more info to plausible (d810e07)
  • set type checking mode to more strict "all" (757bf6e)
  • test mise for local development (652525f)

Build System

  • reduce scraper docker image size by removing uv from final step (b688a53)

v1.6.0

09 Jan 21:57
9bd0f36

Choose a tag to compare

1.6.0 (2026-01-09)

Features

  • api: data dump endpoint to download database. Closes #27 (cb62114)
  • search: add link anchors to guide page (efa91cc)
  • search: make external links more clear with an icon (42bc492)
  • search: show last scraped_at time on unit details page (799c6f4)

Bug Fixes

  • search: fix offered in typo (a38350d)
  • search: fix order of operator parsing to correctly match >= and <= (4637d95)
  • search: fix wrongly overflowing text about filter negation on guide page (41db41e)

Reverts

  • "feat(search): show last scraped_at time on unit details page" (d59c37c)

Documentation

  • update readme with model name explanation and details on how to contribute (cb62114)

Continuous Integration

  • increase basedpyright typing from 'recommended' to 'strict' (af123b0)

v1.5.0

08 Jan 22:01
76df434

Choose a tag to compare

1.5.0 (2026-01-08)

Features

  • search: add query time to results (c9378cf)
  • search: OR operator and parentheses for more complex queries (45227ea)
  • search: remove awkward '!:' operator and instead use prefixed minus operator for negation (3c76208)

Bug Fixes

  • api: fix wrong path in guide for first example (80d6452)
  • search: fix course numbers not being matched by regex (3c76208)
  • search: fix query from becoming infinitely big and fix invalid offered in results page filters (231d929)

Miscellaneous Chores

  • add back warnings for basedpyright (05906df)

v1.4.0

07 Jan 23:15
4feb9a0

Choose a tag to compare

1.4.0 (2026-01-07)

Features

  • add exam type filter (03baace)
  • add sitemap (ae0afb0)
  • api: offered in filters are now all matched against a single path of sections instead of against arbitrary matching sections (e6e47b1)

Bug Fixes

  • api: display search and unit information in embed description (6152a74)
  • api: fix crashing of unit pages if course hours are missing (488491b)
  • api: fix non-stacked elements not expanding correctly (0c7704b)
  • api: fix plausible event condition (77655df)
  • api: remove empty examination/registration block if no information exists (6152a74)
  • api: remove german title if it's the same as the english (0c7704b)
  • fix departments filter showing other departments (03baace)
  • fix incorrect media type for static files (65db758)

Miscellaneous Chores

  • move uv sync ahead of copy in dockerfiles (2941916)

Tests

  • replace ty with pyrefly type checking (ae0afb0)

Build System

  • api: reduce docker image size by splitting the build steps (11c64e0)

v1.3.0

27 Dec 16:24
fb95803

Choose a tag to compare

1.3.0 (2025-12-27)

Features

  • api: enable CORS (ff61a23)
  • api: fetch coursereview score when visiting a unit page (87d0302)
  • api: group together the same course by number (2df51f7)

Bug Fixes

  • api: fix formatting on vvz/cr and results page links (1d427ec)
  • api: intersect offered in filters instead of unioning (c2ba0e8)
  • api: wrap long links correctly (f469251)
  • scraper: make exercise sessions where weekdays are missing get parsed correctly (1f28faa)

Styles

  • api: change to a blue theme for search (a8ff8ca)

Miscellaneous Chores

  • replace pyright type checking with ty (06eb0ab)

v1.2.0

22 Dec 21:44
f7d2cfa

Choose a tag to compare

1.2.0 (2025-12-22)

Features

  • api: add courses and lecturers to unit details page (4faf15b)
  • api: add offered in details and search filter (8fc98fc)
  • api: change semester/year of a unit while on details page (5040463)
  • api: show filters that got applied when searching (09a1cf7)

Bug Fixes

  • api: correctly link to coursereview (9d06379)
  • api: correctly sort using department/level (e1141f4)
  • api: keep track of search options across pages (a34a9be)
  • api: make periodicity value more clear on unit page (d68ede3)
  • api: show short levels/departments with long title on hover (d68ede3)
  • scraper: not rescraping correctly (9043c0b)
  • scraper: parse multiple courses without explicit weekdays correctly (c63ccb7)

Miscellaneous Chores

  • make parsing of enums from db more consistent with separate wrapper class (d68ede3)

v1.1.3

21 Dec 21:24
17d4884

Choose a tag to compare

1.1.3 (2025-12-21)

Bug Fixes

  • allow for a unit to be in multiple departments (b9bf043)
  • api: title in search is not combined but instead each word is matched (b9bf043)

v1.1.2

21 Dec 20:27
367719a

Choose a tag to compare

1.1.2 (2025-12-21)

Features

  • api: add daisyui styling (548e1cd)
  • api: add level, deparment, and language operators (5f6275a)
  • api: add negation for all non-integer filter values as well (5f6275a)
  • api: add opensearch spec (6acabf4)
  • api: add ordering options to search (548e1cd)

Miscellaneous Chores

  • api: minimize/zip html and format files (e958db9)

v1.1.1

20 Dec 16:40
57e96b5

Choose a tag to compare

1.1.1 (2025-12-20)

Bug Fixes

  • api: translate fs/hs to correct semester (3afa824)

v1.1.0

20 Dec 15:17
d591c45

Choose a tag to compare

1.1.0 (2025-12-20)

Features

  • Search frontend with "poweruser" operators (#35) (b2c3daf)

Miscellaneous Chores

  • remove mention of alpha in readme (6d609d0)