databases/sqlite3: Update to 3.40.0
ChangeLog: https://www.sqlite.org/releaselog/3_40_0.html
- Add support for compiling SQLite to WASM and running it in web browsers.
- Add the recovery extension that might be able to recover some content from a corrupt database file.
- Query planner enhancements:
- A new typedef named sqlite3_filename is added and used to represent the name of a database file.
- Add the sqlite3_value_encoding() interface.
- Security enhancement: SQLITE_DBCONFIG_DEFENSIVE is augmented to prohibit changing the schema_version.
- Enhancements to the PRAGMA integrity_check statement:
- Enhance the VACUUM INTO statement so that it honors the PRAGMA synchronous setting.
- Enhance the sqlite3_strglob() and sqlite3_strlike() APIs
- Provide the new SQLITE_MAX_ALLOCATION_SIZE compile-time option for limiting the size of memory allocations.
- Change the algorithm used by SQLite's built-in pseudo-random number generator (PRNG) from RC4 to Chacha20.
- Allow two or more indexes to have the same name as long as they are all in separate schemas.
- Miscellaneous performance optimizations result in about 1% fewer CPU cycles used on typical workloads.
PR: 268012
Reported by: pavelivolkov@gmail.com (maintainer)