Tags: get-convex/convex-backend
Tags
dev --once --debug-node-apis (#35201) Flag to bundle non-'use node' entry points one at a time in order to provide an import trace if they use Node.js APIs. If this works well it could run automatically on relevant bundler errors. GitOrigin-RevId: bfbdc200f0f7a7246137671513f6b60e6858aee6
Make `db` APIs take an explicit table name argument (#38505) This PR modifies the `DatabaseWriter`/`DatabaseReader` APIs so that they take the appropriate table name as an explicit parameter, instead of just using the information from the name. For instance, instead of writing: ```ts const document = await db.get(id); await db.patch(id, { count: (document?.count ?? 0) + 1 }); ``` the new API is: ```ts const document = await db.get("documents", id); await db.patch("documents", id, { count: (document?.count ?? 0) + 1 }); ``` ### Why? The goal is to allow in the future users to use arbitrary strings in IDs. In particular, it makes it easier to create documents with optimistic updates on the client, without needing an additional kind of ID. In rare cases, the current API can also create vulnerabilities where attackers would get or modify data from an unexpected table. Argument validation prevents this from working, so it shouldn’t affect too many projects. ### Backwards-compatibility As of now, both the old API and the new one are still supported. For now, the new API is marked as `@internal` so that we can test it in our internal projects. Once it’s ready for general usage, we will remove `@internal` on the new APIs and mark the old APIs as `@deprecated`. Later, we plan to remove the old APIs. ### Code migration To make the migration of existing code easier, I created a codemod tool. It will be added in an upcoming PR. ### Testing This PR adds JavaScript-only tests that verify that the new types of `DatabaseReader`/`DatabaseWriter` work as expected. It also adds new UDF tests that verify that the syscall argument validation works correctly. GitOrigin-RevId: 433aa6df650f1179ed24bd053d11dd60fb09b296
dashboard: fix clipping issue with backup deployment selector (#38668) GitOrigin-RevId: 24062daeaa30c1bee8c7a7f25afcd9a8dffdffc5
Add some tracing to postgres (#38626) GitOrigin-RevId: 4cb11cde5003af9dae426df94567b9d71eaf70f2
support period for token info (#38605) GitOrigin-RevId: 0d7b8be01c4a0d0cd69d43bd184f323d15382312
dashboard: reduce member used by loaded data on data page (#38582) removing an unnecessary useMemo / filter when we can infer whether or not we need to keep the data GitOrigin-RevId: a8eb21edcb0426f5b860cc0930c3cefb6baa31b8
npm release version 1.25.1 (#38516) GitOrigin-RevId: 653105fd42b817ee1314240db22383b7308fcdf8
Do not reuse connections after certain errors (#38477) GitOrigin-RevId: 757fd7e1bf7e4ff35b2ab99f811579a9916dfd65
Store index keys instead of full documents in the write log (#38204) GitOrigin-RevId: 24809bc92c1f28433969528a8209ba602cb9d623
Patch tokio-postgres to add error details (#38398) GitOrigin-RevId: ec094aa13828d4c7ead00a1f34bda53ba2e42076
PreviousNext