hmm yea that's questionable documentation The Sqlite compilation for D1 is part of the open source
hmm yea that's questionable documentation
The Sqlite compilation for D1 is part of the open source workerd but hard to read: https://github.com/cloudflare/workerd/blob/4c42a4a9d3390c88e9bd977091c9d3395a6cd665/build/BUILD.sqlite3#L13
More simply, there's an specific allowlist of functions you're allowed to use with D1:
https://github.com/cloudflare/workerd/blob/4c42a4a9d3390c88e9bd977091c9d3395a6cd665/src/workerd/util/sqlite.c%2B%2B#L269
Json and fts5 are the only ones allowed for extensions/not base (and I've used both before, they def work).
They also only allow specific Virtual Tables for fts5 and fts5vocab: https://github.com/cloudflare/workerd/blob/4c42a4a9d3390c88e9bd977091c9d3395a6cd665/src/workerd/util/sqlite.c%2B%2B#L1155 so anything that depends on Virtual Tables (like zipfiles, csv, etc) will def not work
The Sqlite compilation for D1 is part of the open source workerd but hard to read: https://github.com/cloudflare/workerd/blob/4c42a4a9d3390c88e9bd977091c9d3395a6cd665/build/BUILD.sqlite3#L13
More simply, there's an specific allowlist of functions you're allowed to use with D1:
https://github.com/cloudflare/workerd/blob/4c42a4a9d3390c88e9bd977091c9d3395a6cd665/src/workerd/util/sqlite.c%2B%2B#L269
Json and fts5 are the only ones allowed for extensions/not base (and I've used both before, they def work).
They also only allow specific Virtual Tables for fts5 and fts5vocab: https://github.com/cloudflare/workerd/blob/4c42a4a9d3390c88e9bd977091c9d3395a6cd665/src/workerd/util/sqlite.c%2B%2B#L1155 so anything that depends on Virtual Tables (like zipfiles, csv, etc) will def not work




