d1 release of the wrangler branch as it hasn't been merged into a release yet. If you do npx wrangler@d1 d1 time-travel info <db> then I believe it should workwrangler@d1 branch. It definitely works. I am using the same public version as everyone else. But also note that this isn’t final - I’d suggest holding off until we officially release it if you rely on your database.vite dev and the best I could find is re-running the production build. https://discord.com/channels/595317990191398933/1042974692186804295/1048148731670835290platform parameter needs to be able to receive the D1 client library when developing locally: https://github.com/sveltejs/kit/issues/4292--d1 flag to set up the database binding locally, but I assume that's for the wrangler CLI and not Vite.platform object and the APIs they need.DEFAULT constraint? wrangler.toml that work in production:c.req.url) I correctly get https://foo.com/login when it's deployed to Cloudflare.wrangler dev , I get http://send/login 
ON DUPLICATE KEY isn’t supported by D1’s query engine (SQLite) - use UPSERT or INSERT OR IGNORE instead: https://stackoverflow.com/a/4330694/556573ALTER TABLE likely to also cause requests to be held while it applies?table_list, table_info and table_xinfo workSELECT * FROM example with wrangler or the dashboard console, it works as expected, but the table viewer shows this:
table_info pragma to discover the structure of the table, when, for historical reasons, that pragma doesn't show generated columns - table_xinfo must be used instead. (see https://www.sqlite.org/gencol.html 2.3 #9)d1npx wrangler@d1 d1 time-travel info <db>wrangler@d1vite devplatformplatform--d1DEFAULTDROP COLUMNc.req.urlhttps://foo.com/loginhttp://send/loginON DUPLICATE KEYUPSERTINSERT OR IGNOREALTER TABLEtable_listtable_infotable_infotable_xinfotable_xinfoSELECT * FROM exampleroutes = [
{ pattern = "*/send", zone_id = "[id]" },
{ pattern = "*/login", zone_id = "[id]" },
{ pattern = "*/services", zone_id = "[id]" },
]CREATE TABLE example (
fruit TEXT,
fruit_but_lowercase TEXT GENERATED ALWAYS AS (lower(fruit)) VIRTUAL,
vegetable TEXT
);
INSERT INTO example (fruit, vegetable) VALUES
('Apples', 'Carrots'),
('Bananas', 'Broccoli');