Skip to content

Tags: get-convex/convex-backend

Tags

precompiled-2025-12-17-c612b16

Toggle precompiled-2025-12-17-c612b16's commit message
Reece/docs add note about installing tsgo (#44411)

GitOrigin-RevId: 71b1dfb699f05c19f18504059a7b5ee94367ba19

precompiled-2025-12-17-ae06f57

Toggle precompiled-2025-12-17-ae06f57's commit message
npm release version 1.31.2 (#44429)

GitOrigin-RevId: 9e9c09e5ddacdd975e3cb9f79822477789b8fe7a

precompiled-2025-12-17-26e4bc6

Toggle precompiled-2025-12-17-26e4bc6's commit message
Fix global.crypto property descriptors (#44415)

GitOrigin-RevId: 3f9ac9fa71fe1352d357645093323565403f235a

precompiled-2025-12-17-19c6cbf

Toggle precompiled-2025-12-17-19c6cbf's commit message
Add a changelog entry for convex 1.31.1 (#44423)

GitOrigin-RevId: 76edf46f5938445383677e8a43aec4a6c17461eb

precompiled-2025-12-17-3be72bd

Toggle precompiled-2025-12-17-3be72bd's commit message
Fix typo (#44409)

GitOrigin-RevId: 0b9f8cd02c253a9b366c210aac8d5f61203f1917

precompiled-2025-12-16-e1bd84c

Toggle precompiled-2025-12-16-e1bd84c's commit message
Add more tracing to start_push (#44311)

GitOrigin-RevId: 4648635272601f1ffbb1b62faf5cb0f81b3f2618

precompiled-2025-12-16-3867959

Toggle precompiled-2025-12-16-3867959's commit message
Rewrite SubtleCrypto implementation, mostly in Rust (#42754)

This PR completely replaces the implementation of `crypto.subtle`. The new implementation is primarily written in Rust, with minimal JS. In particular, this includes moving the "normalize an algorithm" logic into Rust.

We also now keep `CryptoKey` key material entirely in Rust, not accessible to V8; it also stays in a typed form (rather than shuffling bytes over the op boundary on every call). The JS `CryptoKey` object only stores an index into a slab of keys owned by the isolate. The Rust side also keeps a weak reference to the JS object, which allows the key to be garbage collected and also doubly ensures that CryptoKeys can't be improperly minted.

In support of this, ops now use new traits `ToV8` and `FromV8` to convert their return values and arguments, rather than always using serde_v8. Any type that implements the serde traits automatically gets the old treatment, but we need CryptoKey in particular to get custom handling.

To conform more closely to the WebCrypto specification, this PR also adds the ability to throw properly typed exceptions (`DOMException`, `TypeError`) from Rust via new error structs that are translated on the op boundary.

The new implementation is also more complete and adds support for more primitives, like the P-521 elliptic curve, encryption/decryption with AES-CTR/AES-CBC/RSA-OAEP, and a bit more stuff. Still not everything is supported; missing algorithms are HKDF, AES-KW, ECDH, and X25519.

I've added a lot of new tests to the test suite and added an interop test that checks that exported keys, signatures, and encrypted data match Node.js behaviour. This found a lot of bugs.

GitOrigin-RevId: aabf4959659d415bafa0a3845c36ddfefe3ae1f6

precompiled-2025-12-16-571f242

Toggle precompiled-2025-12-16-571f242's commit message
remove wait from usage tracking worker spans (#44347)

GitOrigin-RevId: 8bd978dc08986dc7c9f03abbe7a9f89ef1889cf2

precompiled-2025-12-16-86dfcd7

Toggle precompiled-2025-12-16-86dfcd7's commit message
npm release version 1.31.1 (#44394)

GitOrigin-RevId: c7eb334a1d7778e49dee238d3d0f99bcb8f29adc

precompiled-2025-12-12-5143b2f

Toggle precompiled-2025-12-12-5143b2f's commit message
dashboard: fix localization of DateTimePicker (#44315)

Our custom implementation of a datetime input was prettier, but lacked accessibility and was not localized.

This change uses the `datetime-local` input type, with less customized logic to keep things simple and easily localized.

GitOrigin-RevId: 9e93d6eb77eaa23aef60da4fc6b63c1cd1d203ba