drh 92d252e06d Fix more harmless compiler warnings. hai 1 mes
..
README.md 4297584d66 Updates to the README.md file for the ext/misc directory. No code changes. %!s(int64=7) %!d(string=hai) anos
amatch.c 1935887a68 Ensure that all fields of static sqlite3_module objects are explicitly hai 1 ano
anycollseq.c b65b3e429a Add the anycollseq.c loadable extension in etc/misc %!s(int64=7) %!d(string=hai) anos
appendvfs.c a959bf5311 Add NULL checks on all sqlite3_vfs_find(0) calls. This is not strictly %!s(int64=3) %!d(string=hai) anos
base64.c 38c2052767 Handle newline-trimmed input TEXT correctly in base64, base85 UDFs. hai 1 ano
base85.c 38c2052767 Handle newline-trimmed input TEXT correctly in base64, base85 UDFs. hai 1 ano
basexx.c 273c2a9425 Fix compilation issue seen with MSVC. hai 1 ano
blobio.c 0a0e89fa21 Fix an error message on the blobread() extension function so that it says %!s(int64=5) %!d(string=hai) anos
btreeinfo.c 1935887a68 Ensure that all fields of static sqlite3_module objects are explicitly hai 1 ano
carray.c 1935887a68 Ensure that all fields of static sqlite3_module objects are explicitly hai 1 ano
carray.h a794af53b4 Add the missing CARRAY_BLOB macro to the carray.h extension header. %!s(int64=2) %!d(string=hai) anos
cksumvfs.c 365b6e9769 Avoid spurious SQLITE_IOERR_DATA errors when reading partial pages from a cksumvfs database using a SQLITE_DIRECT_OVERFLOW_READ build. hai 10 meses
closure.c 1935887a68 Ensure that all fields of static sqlite3_module objects are explicitly hai 1 ano
completion.c 9e278d7ec0 For shell completion, use pragma_table_xinfo instead of pragma_table_info, so that generated columns are handled, as reported in [forum:f0735e05d8d7e857|forum post f0735e05d8d7e857]. hai 6 meses
compress.c ecaa021759 Fix harmless compiler warnings seen with MSVC. hai 7 meses
csv.c 1935887a68 Ensure that all fields of static sqlite3_module objects are explicitly hai 1 ano
dbdump.c 067b92ba00 Extend the refactoring into extensions. Clean up stray newlines. %!s(int64=4) %!d(string=hai) anos
decimal.c 4d8eb16f07 Rename the decimal_sci() function to decimal_exp(). hai 1 ano
eval.c 2b1c2aad9f Create the "trusted_schema" pragma. Add sqlite3_vtab_config() calls to set %!s(int64=5) %!d(string=hai) anos
explain.c 1935887a68 Ensure that all fields of static sqlite3_module objects are explicitly hai 1 ano
fileio.c 7119a6c16b Have the zipfile and fileio extensions use sqlite3_stdio.c when it is hai 4 meses
fossildelta.c 1935887a68 Ensure that all fields of static sqlite3_module objects are explicitly hai 1 ano
fuzzer.c 1935887a68 Ensure that all fields of static sqlite3_module objects are explicitly hai 1 ano
ieee754.c 6aa5a42beb Add the ieee754_inc(r,N) function to the ieee754.c extension. hai 1 ano
memstat.c 1935887a68 Ensure that all fields of static sqlite3_module objects are explicitly hai 1 ano
memtrace.c d46b6f57c9 Fix a harmless compiler warning in the memtrace.c extension. %!s(int64=6) %!d(string=hai) anos
memvfs.c a959bf5311 Add NULL checks on all sqlite3_vfs_find(0) calls. This is not strictly %!s(int64=3) %!d(string=hai) anos
mmapwarm.c 208f5c65d4 Fix harmless compiler warnings. hai 1 ano
nextchar.c 2b1c2aad9f Create the "trusted_schema" pragma. Add sqlite3_vtab_config() calls to set %!s(int64=5) %!d(string=hai) anos
noop.c 4c43f1881e When doing a text-affinity comparison between two values where one or both hai 1 ano
normalize.c 08b9208660 Fix harmless compiler warnings that surface in newer versions of GCC. %!s(int64=4) %!d(string=hai) anos
pcachetrace.c 3a202be6f1 Add the --pcachetrace option to the CLI. hai 1 ano
percentile.c bf19927688 Fix the percentile extension so that works as an independent extension. hai 2 meses
prefixes.c 1935887a68 Ensure that all fields of static sqlite3_module objects are explicitly hai 1 ano
qpvtab.c 1935887a68 Ensure that all fields of static sqlite3_module objects are explicitly hai 1 ano
randomjson.c 4449a1b66d Fix harmless compiler warning in the randomjson.c extension. hai 1 ano
regexp.c 59b6a2bcbe Fix harmless compiler warning caused by [0772ddf56713d013]. hai 1 ano
remember.c aabebc27b7 Comment changes clarifying details of the pointer-type parameter. No %!s(int64=7) %!d(string=hai) anos
rot13.c 6d35956c86 Fix the rot13.c extension to be deterministic. Add the noop.c extension. %!s(int64=5) %!d(string=hai) anos
scrub.c 067b92ba00 Extend the refactoring into extensions. Clean up stray newlines. %!s(int64=4) %!d(string=hai) anos
series.c 19c4fa92dd Have the xBestIndex method of the generate_series virtual table ignore contraints on the "value" column with usable=0. hai 2 meses
sha1.c 165daef043 Add sha1() functions to the CLI. Fix sha1b() such that it actually returns hai 4 meses
shathree.c 76412af157 Minor doc correction in ext/misc/shathree.c, as reported in the forum. No functional changes. hai 1 mes
showauth.c 249489331c Add the "showauth" extension in ext/misc. %!s(int64=10) %!d(string=hai) anos
spellfix.c c707b2eb6d Squash sign-comparison warnings reported in [forum:5e605a763a65c3f8 | forum post 5e605a763a65c3f8]. hai 4 meses
sqlar.c 1002bcff43 Fix problem in sqlar_uncompress() when being used to extract symbolic links. hai 8 meses
sqlite3_stdio.c e4d4d73397 Use Win32 APIs to read/write the console in Windows unless the hai 2 meses
sqlite3_stdio.h a55901a27c Port sqldiff over to use sqlite3_stdio. hai 4 meses
stmt.c 1935887a68 Ensure that all fields of static sqlite3_module objects are explicitly hai 1 ano
stmtrand.c 31079226f7 Add the stmtrand() extension function for use in testing. hai 8 meses
templatevtab.c 1935887a68 Ensure that all fields of static sqlite3_module objects are explicitly hai 1 ano
totype.c 1cfc040bba Update extension ext/misc/totext.c to avoid both ubsan warnings and dubious real->integer conversions. hai 1 ano
uint.c 3d42fb788a Fix harmless compiler warnings. %!s(int64=4) %!d(string=hai) anos
unionvtab.c 1935887a68 Ensure that all fields of static sqlite3_module objects are explicitly hai 1 ano
urifuncs.c be22a85406 Fix the urifuncs.c extension (used for testing and debugging only) so that %!s(int64=5) %!d(string=hai) anos
uuid.c 2b1c2aad9f Create the "trusted_schema" pragma. Add sqlite3_vtab_config() calls to set %!s(int64=5) %!d(string=hai) anos
vfslog.c a959bf5311 Add NULL checks on all sqlite3_vfs_find(0) calls. This is not strictly %!s(int64=3) %!d(string=hai) anos
vfsstat.c 1935887a68 Ensure that all fields of static sqlite3_module objects are explicitly hai 1 ano
vfstrace.c 92d252e06d Fix more harmless compiler warnings. hai 1 mes
vtablog.c 4397d28378 Improvements to the vtablog.c extension: Eliminate memory leaks. hai 10 meses
vtshim.c 2f31d02049 In the 'vtshim' extension, avoid accessing freed memory when handling errors from xCreate/xConnect. %!s(int64=8) %!d(string=hai) anos
wholenumber.c 1935887a68 Ensure that all fields of static sqlite3_module objects are explicitly hai 1 ano
zipfile.c 7119a6c16b Have the zipfile and fileio extensions use sqlite3_stdio.c when it is hai 4 meses
zorder.c 510fea885e Add the zorder.c extension implementing zorder() and unzorder() SQL functions. %!s(int64=7) %!d(string=hai) anos

README.md

Miscellaneous Extensions

This folder contains a collection of smaller loadable extensions. See https://www.sqlite.org/loadext.html for instructions on how to compile and use loadable extensions. Each extension in this folder is implemented in a single file of C code.

Each source file contains a description in its header comment. See the header comments for details about each extension. Additional notes are as follows:

  • carray.c — This module implements the carray table-valued function. It is a good example of how to go about implementing a custom table-valued function.

  • csv.c — A virtual table for reading Comma-Separated-Value (CSV) files.

  • dbdump.c — This is not actually a loadable extension, but rather a library that implements an approximate equivalent to the ".dump" command of the command-line shell.

  • json1.c — Various SQL functions and table-valued functions for processing JSON. This extension is already built into the SQLite amalgamation. See https://sqlite.org/json1.html for additional information.

  • memvfs.c — This file implements a custom VFS that stores an entire database file in a single block of RAM. It serves as a good example of how to implement a simple custom VFS.

  • rot13.c — This file implements the very simple rot13() substitution function. This file makes a good template for implementing new custom SQL functions for SQLite.

  • series.c — This is an implementation of the "generate_series" virtual table. It can make a good template for new custom virtual table implementations.

  • shathree.c — An implementation of the sha3() and sha3_query() SQL functions. The file is named "shathree.c" instead of "sha3.c" because the default entry point names in SQLite are based on the source filename with digits removed, so if we used the name "sha3.c" then the entry point would conflict with the prior "sha1.c" extension.

  • unionvtab.c — Implementation of the unionvtab and swarmvtab virtual tables. These virtual tables allow a single large table to be spread out across multiple database files. In the case of swarmvtab, the individual database files can be attached on demand.

  • zipfile.c — A virtual table that can read and write a ZIP archive.