mesonbuild / wrapdb

New wrap requests
https://mesonbuild.com/Adding-new-projects-to-wrapdb.html
MIT License
78 stars 201 forks source link

wrapdb.mesonbuild.com v1 API support #1768

Open tp-m opened 5 days ago

tp-m commented 5 days ago

This is just a heads-up, so people know where to report issues and who to ping if anything comes up.

This only affects wraps with ancient Meson versions.

What is happening

I plan on switching over wrapdb.mesonbuild.com to server v1 api requests (project list, project info, latest version, get wrap, get patch zip) to be served from static content instead of scripts and a local database.

This means substring search for wraps via substrings will no longer work, but that's user interactive and I think it's ok to retire that after 4 years. People will just have to browse the list on the website or the full project list returned.

Reason is to simplify the server setup (Hetzner will force-reboot the machine on Nov 8 and it's unclear if the v1 scripting setup will come back up on its own, and it seems a good idea anyway to get rid of that).

Background

wrapdb.mesonbuild.com is a tiny VM on Hetzner that runs an nginx web server and handles API requests and wrap downloads for v1 API and v2 API.

In case of v2 API (introduced in v0.59 released on 18 Jul 2021) it's just redirects to github.

However, there's still support for the v1 API active which was used up to v0.58 (released on 2 May 2021).

Two bits of functionality, with a local database maintained on the server:

  1. downloads of wraps and patches
  2. remote API for listing available wraps and getting info on them

Mirror script and mirrored static content is here: https://github.com/tp-m/wrapdb-v1-api-mirror/

I have tested the new setup with the Meson v0.58 manual wrap tests, and it seems to work fine (using /x1/ as api prefix before the v1 redirect to static content goes live).

I have also run the mirror script against the existing v1 api (response from server scripts) and the redirect-to-static-content api variant on the server, and the mirrored files are identical in both cases.

tp-m commented 4 days ago