{"id":2815,"name":"modernc.org/sqlite","ecosystem":"go","repository_url":"https://gitlab.com/cznic/sqlite","issues_count":1333,"created_at":"2025-06-06T15:02:13.137Z","updated_at":"2025-06-06T15:02:13.137Z","purl":"pkg:golang/modernc.org/sqlite","metadata":{"id":3506840,"name":"modernc.org/sqlite","ecosystem":"go","description":"Package sqlite is a sql/database driver using a CGo-free port of the C\nSQLite3 library.\n\nSQLite is an in-process implementation of a self-contained, serverless,\nzero-configuration, transactional SQL database engine.\n\nWhen you import this package you should use in your go.mod file the exact\nsame version of modernc.org/libc as seen in the go.mod file of this\nrepository.\n\nSee the discussion at https://gitlab.com/cznic/sqlite/-/issues/177 for more details.\n\nThis project is sponsored by Schleibinger Geräte Teubert u. Greim GmbH by\nallowing one of the maintainers to work on it also in office hours.\n\nThese combinations of GOOS and GOARCH are currently supported\n\nThe SQLite Drivers Benchmarks Game\n\nBuilder results available at:\n\nhttps://modern-c.appspot.com/-/builder/?importpath=modernc.org%2fsqlite\n\n2025-02-26 v1.36.0: Upgrade to SQLite 3.49.0.\n\n2024-11-16 v1.34.0: Implement ResetSession and IsValid methods in connection\n\n2024-07-22 v1.31.0: Support windows/386.\n\n2024-06-04 v1.30.0: Upgrade to SQLite 3.46.0, release notes at\nhttps://sqlite.org/releaselog/3_46_0.html.\n\n2024-02-13 v1.29.0: Upgrade to SQLite 3.45.1, release notes at\nhttps://sqlite.org/releaselog/3_45_1.html.\n\n2023-12-14: v1.28.0: Add (*Driver).RegisterConnectionHook,\nConnectionHookFn, ExecQuerierContext, RegisterConnectionHook.\n\n2023-08-03 v1.25.0: enable SQLITE_ENABLE_DBSTAT_VTAB.\n\n2023-07-11 v1.24.0: Add\n(*conn).{Serialize,Deserialize,NewBackup,NewRestore} methods, add Backup\ntype.\n\n2023-06-01 v1.23.0: Allow registering aggregate functions.\n\n2023-04-22 v1.22.0: Support linux/s390x.\n\n2023-02-23 v1.21.0: Upgrade to SQLite 3.41.0, release notes at\nhttps://sqlite.org/releaselog/3_41_0.html.\n\n2022-11-28 v1.20.0: Support linux/ppc64le.\n\n2022-09-16 v1.19.0: Support frebsd/arm64.\n\n2022-07-26 v1.18.0: Add support for Go fs.FS based SQLite virtual\nfilesystems, see function New in modernc.org/sqlite/vfs and/or TestVFS in\nall_test.go\n\n2022-04-24 v1.17.0: Support windows/arm64.\n\n2022-04-04 v1.16.0: Support scalar application defined functions written\nin Go. See https://www.sqlite.org/appfunc.html\n\n2022-03-13 v1.15.0: Support linux/riscv64.\n\n2021-11-13 v1.14.0: Support windows/amd64. This target had previously\nonly experimental status because of a now resolved memory leak.\n\n2021-09-07 v1.13.0: Support freebsd/amd64.\n\n2021-06-23 v1.11.0: Upgrade to use sqlite 3.36.0, release notes at\nhttps://www.sqlite.org/releaselog/3_36_0.html.\n\n2021-05-06 v1.10.6: Fixes a memory corruption issue\n(https://gitlab.com/cznic/sqlite/-/issues/53).  Versions since v1.8.6 were\naffected and should be updated to v1.10.6.\n\n2021-03-14 v1.10.0: Update to use sqlite 3.35.0, release notes at\nhttps://www.sqlite.org/releaselog/3_35_0.html.\n\n2021-03-11 v1.9.0: Support darwin/arm64.\n\n2021-01-08 v1.8.0: Support darwin/amd64.\n\n2020-09-13 v1.7.0: Support linux/arm and linux/arm64.\n\n2020-09-08 v1.6.0: Support linux/386.\n\n2020-09-03 v1.5.0: This project is now completely CGo-free, including\nthe Tcl tests.\n\n2020-08-26 v1.4.0: First stable release for linux/amd64.  The\ndatabase/sql driver and its tests are CGo free.  Tests of the translated\nsqlite3.c library still require CGo.\n\n2020-07-26 v1.4.0-beta1: The project has reached beta status while\nsupporting linux/amd64 only at the moment. The 'extraquick' Tcl testsuite\nreports\n\n2019-12-28 v1.2.0-alpha.3: Third alpha fixes issue #19.\n\n2019-12-26 v1.1.0-alpha.2: Second alpha release adds support for\naccessing a database concurrently by multiple goroutines and/or processes.\nv1.1.0 is now considered feature-complete. Next planed release should be a\nbeta with a proper test suite.\n\n2019-12-18 v1.1.0-alpha.1: First alpha release using the new cc/v3,\ngocc, qbe toolchain. Some primitive tests pass on linux_{amd64,386}. Not\nyet safe for concurrent access by multiple goroutines. Next alpha release\nis planed to arrive before the end of this year.\n\n2017-06-10: Windows/Intel no more uses the VM (thanks Steffen Butzer).\n\n2017-06-05 Linux/Intel no more uses the VM (cznic/virtual).\n\nTo access a Sqlite database do something like\n\nA comma separated list of options can be passed to `go generate` via the\nenvironment variable GO_GENERATE. Some useful options include for example:\n\nTo create a debug/development version, issue for example:\n\nNote: To run `go generate` you need to have modernc.org/ccgo/v3 installed.\n\nThis is an example of how to use the debug logs in modernc.org/libc when hunting a bug.\n\nThe /tmp/libc.log file is created as requested. No useful messages there because none are enabled in libc. Let's try to enable Xwrite as an example.\n\nWe need to tell the Go build system to use our local, patched/debug libc:\n\nAnd run the test again:\n\nSee https://sqlite.org/docs.html","homepage":"https://gitlab.com/cznic/sqlite","licenses":"BSD-3-Clause","normalized_licenses":["BSD-3-Clause"],"repository_url":"https://gitlab.com/cznic/sqlite","keywords_array":[],"namespace":"modernc.org","versions_count":132,"first_release_published_at":"2018-11-06T17:50:11.000Z","latest_release_published_at":"2025-05-20T18:59:25.000Z","latest_release_number":"v1.37.1","last_synced_at":"2025-06-05T09:30:24.885Z","created_at":"2022-04-10T20:43:51.128Z","updated_at":"2025-06-05T09:33:52.354Z","registry_url":"https://pkg.go.dev/modernc.org/sqlite","install_command":"go get modernc.org/sqlite","documentation_url":"https://pkg.go.dev/modernc.org/sqlite#section-documentation","metadata":{},"repo_metadata":{"id":50110570,"uuid":"9241019","full_name":"cznic/sqlite","owner":"cznic","description":"Package sqlite is a CGo-free port of SQLite/SQLite3.\r\n\r\nSQLite is an in-process implementation of a self-contained, serverless, zero-configuration, transactional SQL database engine.","archived":false,"fork":false,"pushed_at":null,"size":null,"stargazers_count":447,"open_issues_count":21,"forks_count":76,"subscribers_count":null,"default_branch":"master","last_synced_at":"2025-05-07T04:36:36.730Z","etag":null,"topics":["cgo-free"],"latest_commit_sha":null,"homepage":null,"language":null,"has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"bsd-3-clause","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://gitlab.com/cznic/sqlite/-/avatar","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2018-11-06T12:44:10.208Z","updated_at":"2025-04-26T21:17:01.647Z","dependencies_parsed_at":"2022-08-22T11:30:30.658Z","dependency_job_id":null,"html_url":"https://gitlab.com/cznic/sqlite","commit_stats":null,"previous_names":[],"tags_count":83,"template":null,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/gitlab.com/repositories/cznic%2Fsqlite","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/gitlab.com/repositories/cznic%2Fsqlite/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/gitlab.com/repositories/cznic%2Fsqlite/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/gitlab.com/repositories/cznic%2Fsqlite/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/gitlab.com/owners/cznic","download_url":"https://gitlab.com/cznic/sqlite/-/archive/master/sqlite-master.zip","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/gitlab.com/repositories/cznic%2Fsqlite/sbom","host":{"name":"gitlab.com","url":"https://gitlab.com","kind":"gitlab","repositories_count":4518952,"owners_count":6979,"icon_url":"https://github.com/gitlab.png","version":null,"created_at":"2022-05-30T11:31:42.605Z","updated_at":"2024-07-18T11:24:13.055Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/gitlab.com","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/gitlab.com/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/gitlab.com/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/gitlab.com/owners"},"owner_record":{"login":"cznic","name":"cznic","uuid":"user-2447325","kind":"user","description":"","email":null,"website":"","location":"","twitter":null,"company":null,"icon_url":"https://gitlab.com/uploads/-/system/user/avatar/2447325/avatar.png","repositories_count":93,"last_synced_at":"2023-04-04T11:37:54.610Z","metadata":{},"html_url":"https://gitlab.com/cznic","funding_links":[],"total_stars":null,"followers":null,"following":null,"created_at":"2023-04-04T11:37:54.651Z","updated_at":"2023-04-04T11:37:54.651Z","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/gitlab.com/owners/cznic","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/gitlab.com/owners/cznic/repositories"},"tags":[{"name":"v1.20.2","sha":"52757880e464255bdbb9e3b7cd17ef423a280df2","kind":"tag","published_at":"2023-01-05T16:13:40.000Z","download_url":"https://gitlab.com/cznic/sqlite/-/archive/v1.20.2/sqlite-v1.20.2.zip","html_url":"https://gitlab.com/cznic/sqlite/-/tags/v1.20.2","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/gitlab.com/repositories/cznic%2Fsqlite/tags/v1.20.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/gitlab.com/repositories/cznic%2Fsqlite/tags/v1.20.2/manifests"},{"name":"v1.20.1","sha":"343988cb93086d0d93e76840c42a02bf40fab632","kind":"tag","published_at":"2022-12-28T22:26:14.000Z","download_url":"https://gitlab.com/cznic/sqlite/-/archive/v1.20.1/sqlite-v1.20.1.zip","html_url":"https://gitlab.com/cznic/sqlite/-/tags/v1.20.1","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/gitlab.com/repositories/cznic%2Fsqlite/tags/v1.20.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/gitlab.com/repositories/cznic%2Fsqlite/tags/v1.20.1/manifests"},{"name":"v1.20.0","sha":"96e24922e0839ec4bcefd396cc28e814852a1155","kind":"tag","published_at":"2022-11-28T13:14:37.000Z","download_url":"https://gitlab.com/cznic/sqlite/-/archive/v1.20.0/sqlite-v1.20.0.zip","html_url":"https://gitlab.com/cznic/sqlite/-/tags/v1.20.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/gitlab.com/repositories/cznic%2Fsqlite/tags/v1.20.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/gitlab.com/repositories/cznic%2Fsqlite/tags/v1.20.0/manifests"},{"name":"v1.19.5","sha":"dffc68cb2b36f4348c8e12a2ceba0f740c2d42b9","kind":"tag","published_at":"2022-11-23T10:26:21.000Z","download_url":"https://gitlab.com/cznic/sqlite/-/archive/v1.19.5/sqlite-v1.19.5.zip","html_url":"https://gitlab.com/cznic/sqlite/-/tags/v1.19.5","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/gitlab.com/repositories/cznic%2Fsqlite/tags/v1.19.5","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/gitlab.com/repositories/cznic%2Fsqlite/tags/v1.19.5/manifests"},{"name":"v1.19.4","sha":"e3f73e1fd28af357431d83239f13ad7efc1f0269","kind":"tag","published_at":"2022-11-01T15:09:36.000Z","download_url":"https://gitlab.com/cznic/sqlite/-/archive/v1.19.4/sqlite-v1.19.4.zip","html_url":"https://gitlab.com/cznic/sqlite/-/tags/v1.19.4","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/gitlab.com/repositories/cznic%2Fsqlite/tags/v1.19.4","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/gitlab.com/repositories/cznic%2Fsqlite/tags/v1.19.4/manifests"},{"name":"v1.19.3","sha":"e35b2ec9f0ca45816257314f9d0f24544901a247","kind":"tag","published_at":"2022-10-27T11:54:08.000Z","download_url":"https://gitlab.com/cznic/sqlite/-/archive/v1.19.3/sqlite-v1.19.3.zip","html_url":"https://gitlab.com/cznic/sqlite/-/tags/v1.19.3","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/gitlab.com/repositories/cznic%2Fsqlite/tags/v1.19.3","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/gitlab.com/repositories/cznic%2Fsqlite/tags/v1.19.3/manifests"},{"name":"v1.19.2","sha":"30423ea007f7442d0cc0329b2cbb87efc8ae9bd9","kind":"tag","published_at":"2022-10-12T14:30:59.000Z","download_url":"https://gitlab.com/cznic/sqlite/-/archive/v1.19.2/sqlite-v1.19.2.zip","html_url":"https://gitlab.com/cznic/sqlite/-/tags/v1.19.2","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/gitlab.com/repositories/cznic%2Fsqlite/tags/v1.19.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/gitlab.com/repositories/cznic%2Fsqlite/tags/v1.19.2/manifests"},{"name":"v1.19.1","sha":"99d11133fd86a80e08f4031151d6aae821fe9af6","kind":"tag","published_at":"2022-09-17T19:50:03.000Z","download_url":"https://gitlab.com/cznic/sqlite/-/archive/v1.19.1/sqlite-v1.19.1.zip","html_url":"https://gitlab.com/cznic/sqlite/-/tags/v1.19.1","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/gitlab.com/repositories/cznic%2Fsqlite/tags/v1.19.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/gitlab.com/repositories/cznic%2Fsqlite/tags/v1.19.1/manifests"},{"name":"v1.19.0","sha":"fd7b2cc5b3b1be8d962638485629a39431cac462","kind":"tag","published_at":"2022-09-15T09:30:54.000Z","download_url":"https://gitlab.com/cznic/sqlite/-/archive/v1.19.0/sqlite-v1.19.0.zip","html_url":"https://gitlab.com/cznic/sqlite/-/tags/v1.19.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/gitlab.com/repositories/cznic%2Fsqlite/tags/v1.19.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/gitlab.com/repositories/cznic%2Fsqlite/tags/v1.19.0/manifests"},{"name":"v1.18.2","sha":"eff53efe1bbdb62e36d814ac18b52a1df5f86fb9","kind":"tag","published_at":"2022-09-06T20:18:10.000Z","download_url":"https://gitlab.com/cznic/sqlite/-/archive/v1.18.2/sqlite-v1.18.2.zip","html_url":"https://gitlab.com/cznic/sqlite/-/tags/v1.18.2","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/gitlab.com/repositories/cznic%2Fsqlite/tags/v1.18.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/gitlab.com/repositories/cznic%2Fsqlite/tags/v1.18.2/manifests"},{"name":"v1.18.1","sha":"282bdb12f8ce48a34b4b768863c4e44c310c4bd8","kind":"tag","published_at":"2022-08-10T06:49:05.000Z","download_url":"https://gitlab.com/cznic/sqlite/-/archive/v1.18.1/sqlite-v1.18.1.zip","html_url":"https://gitlab.com/cznic/sqlite/-/tags/v1.18.1","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/gitlab.com/repositories/cznic%2Fsqlite/tags/v1.18.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/gitlab.com/repositories/cznic%2Fsqlite/tags/v1.18.1/manifests"},{"name":"v1.18.0","sha":"62081fe9295496f858856ca55531d645071f2e36","kind":"tag","published_at":"2022-07-25T08:19:12.000Z","download_url":"https://gitlab.com/cznic/sqlite/-/archive/v1.18.0/sqlite-v1.18.0.zip","html_url":"https://gitlab.com/cznic/sqlite/-/tags/v1.18.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/gitlab.com/repositories/cznic%2Fsqlite/tags/v1.18.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/gitlab.com/repositories/cznic%2Fsqlite/tags/v1.18.0/manifests"},{"name":"v1.17.3","sha":"f40342ecdc2945c7686c01dd1bebe9549f161a5d","kind":"tag","published_at":"2022-05-19T08:28:54.000Z","download_url":"https://gitlab.com/cznic/sqlite/-/archive/v1.17.3/sqlite-v1.17.3.zip","html_url":"https://gitlab.com/cznic/sqlite/-/tags/v1.17.3","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/gitlab.com/repositories/cznic%2Fsqlite/tags/v1.17.3","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/gitlab.com/repositories/cznic%2Fsqlite/tags/v1.17.3/manifests"},{"name":"v1.17.2","sha":"bb550d75dc6b518943316e5d54fa410ccf5d9847","kind":"tag","published_at":"2022-05-09T08:44:20.000Z","download_url":"https://gitlab.com/cznic/sqlite/-/archive/v1.17.2/sqlite-v1.17.2.zip","html_url":"https://gitlab.com/cznic/sqlite/-/tags/v1.17.2","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/gitlab.com/repositories/cznic%2Fsqlite/tags/v1.17.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/gitlab.com/repositories/cznic%2Fsqlite/tags/v1.17.2/manifests"},{"name":"v1.17.1","sha":"61483fe9bc293b715fd476c7396b45f345544954","kind":"tag","published_at":"2022-05-04T15:08:57.000Z","download_url":"https://gitlab.com/cznic/sqlite/-/archive/v1.17.1/sqlite-v1.17.1.zip","html_url":"https://gitlab.com/cznic/sqlite/-/tags/v1.17.1","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/gitlab.com/repositories/cznic%2Fsqlite/tags/v1.17.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/gitlab.com/repositories/cznic%2Fsqlite/tags/v1.17.1/manifests"},{"name":"v1.17.0","sha":"a306d198248b6323b230e0d896e5ee28d412181a","kind":"tag","published_at":"2022-04-24T09:19:32.000Z","download_url":"https://gitlab.com/cznic/sqlite/-/archive/v1.17.0/sqlite-v1.17.0.zip","html_url":"https://gitlab.com/cznic/sqlite/-/tags/v1.17.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/gitlab.com/repositories/cznic%2Fsqlite/tags/v1.17.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/gitlab.com/repositories/cznic%2Fsqlite/tags/v1.17.0/manifests"},{"name":"v1.16.0","sha":"07ddc240d99c8510a0dc01a0462640c161ef9fc6","kind":"tag","published_at":"2022-04-04T12:52:56.000Z","download_url":"https://gitlab.com/cznic/sqlite/-/archive/v1.16.0/sqlite-v1.16.0.zip","html_url":"https://gitlab.com/cznic/sqlite/-/tags/v1.16.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/gitlab.com/repositories/cznic%2Fsqlite/tags/v1.16.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/gitlab.com/repositories/cznic%2Fsqlite/tags/v1.16.0/manifests"},{"name":"v1.15.4","sha":"d6f9fa5f966bf90f18a42b4d526c32da8419d779","kind":"tag","published_at":"2022-03-28T12:25:37.000Z","download_url":"https://gitlab.com/cznic/sqlite/-/archive/v1.15.4/sqlite-v1.15.4.zip","html_url":"https://gitlab.com/cznic/sqlite/-/tags/v1.15.4","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/gitlab.com/repositories/cznic%2Fsqlite/tags/v1.15.4","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/gitlab.com/repositories/cznic%2Fsqlite/tags/v1.15.4/manifests"},{"name":"v1.15.3","sha":"6308f180f5be438483c0b72953df6c1d0d222fa6","kind":"tag","published_at":"2022-03-21T13:47:17.000Z","download_url":"https://gitlab.com/cznic/sqlite/-/archive/v1.15.3/sqlite-v1.15.3.zip","html_url":"https://gitlab.com/cznic/sqlite/-/tags/v1.15.3","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/gitlab.com/repositories/cznic%2Fsqlite/tags/v1.15.3","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/gitlab.com/repositories/cznic%2Fsqlite/tags/v1.15.3/manifests"},{"name":"v1.15.2","sha":"cba9cdc75d4f67fedb07c833c55d85c9ce0c3bd3","kind":"tag","published_at":"2022-03-15T11:22:26.000Z","download_url":"https://gitlab.com/cznic/sqlite/-/archive/v1.15.2/sqlite-v1.15.2.zip","html_url":"https://gitlab.com/cznic/sqlite/-/tags/v1.15.2","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/gitlab.com/repositories/cznic%2Fsqlite/tags/v1.15.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/gitlab.com/repositories/cznic%2Fsqlite/tags/v1.15.2/manifests"},{"name":"v1.15.1","sha":"1d86852311bd0e39a6ee1ca2a88f1a9390e2358a","kind":"tag","published_at":"2022-03-13T16:10:00.000Z","download_url":"https://gitlab.com/cznic/sqlite/-/archive/v1.15.1/sqlite-v1.15.1.zip","html_url":"https://gitlab.com/cznic/sqlite/-/tags/v1.15.1","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/gitlab.com/repositories/cznic%2Fsqlite/tags/v1.15.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/gitlab.com/repositories/cznic%2Fsqlite/tags/v1.15.1/manifests"},{"name":"v1.15.0","sha":"b23e51821674c13bcf0cc3d36f797d7b6bc886ff","kind":"tag","published_at":"2022-03-13T13:16:20.000Z","download_url":"https://gitlab.com/cznic/sqlite/-/archive/v1.15.0/sqlite-v1.15.0.zip","html_url":"https://gitlab.com/cznic/sqlite/-/tags/v1.15.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/gitlab.com/repositories/cznic%2Fsqlite/tags/v1.15.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/gitlab.com/repositories/cznic%2Fsqlite/tags/v1.15.0/manifests"},{"name":"v1.14.8","sha":"700f3e693a71db30be7f074e87d3e7a868de2086","kind":"tag","published_at":"2022-03-03T18:28:47.000Z","download_url":"https://gitlab.com/cznic/sqlite/-/archive/v1.14.8/sqlite-v1.14.8.zip","html_url":"https://gitlab.com/cznic/sqlite/-/tags/v1.14.8","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/gitlab.com/repositories/cznic%2Fsqlite/tags/v1.14.8","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/gitlab.com/repositories/cznic%2Fsqlite/tags/v1.14.8/manifests"},{"name":"v1.14.7","sha":"90075bb737ed72ed967767af2057ff24d5fb0fc9","kind":"tag","published_at":"2022-02-23T20:29:26.000Z","download_url":"https://gitlab.com/cznic/sqlite/-/archive/v1.14.7/sqlite-v1.14.7.zip","html_url":"https://gitlab.com/cznic/sqlite/-/tags/v1.14.7","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/gitlab.com/repositories/cznic%2Fsqlite/tags/v1.14.7","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/gitlab.com/repositories/cznic%2Fsqlite/tags/v1.14.7/manifests"},{"name":"v1.14.6","sha":"f4e26d2fda3bd04f0c36ca8f4bda932d586df96d","kind":"tag","published_at":"2022-02-03T14:14:25.000Z","download_url":"https://gitlab.com/cznic/sqlite/-/archive/v1.14.6/sqlite-v1.14.6.zip","html_url":"https://gitlab.com/cznic/sqlite/-/tags/v1.14.6","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/gitlab.com/repositories/cznic%2Fsqlite/tags/v1.14.6","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/gitlab.com/repositories/cznic%2Fsqlite/tags/v1.14.6/manifests"},{"name":"v1.14.5","sha":"17c0726ebc7fe3d5fb8858eb9b75f75c2965b342","kind":"tag","published_at":"2022-01-17T10:52:58.000Z","download_url":"https://gitlab.com/cznic/sqlite/-/archive/v1.14.5/sqlite-v1.14.5.zip","html_url":"https://gitlab.com/cznic/sqlite/-/tags/v1.14.5","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/gitlab.com/repositories/cznic%2Fsqlite/tags/v1.14.5","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/gitlab.com/repositories/cznic%2Fsqlite/tags/v1.14.5/manifests"},{"name":"v1.14.4","sha":"887e2f19d87c60a567227c6a47d22e961e13d8b2","kind":"tag","published_at":"2022-01-08T19:42:45.000Z","download_url":"https://gitlab.com/cznic/sqlite/-/archive/v1.14.4/sqlite-v1.14.4.zip","html_url":"https://gitlab.com/cznic/sqlite/-/tags/v1.14.4","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/gitlab.com/repositories/cznic%2Fsqlite/tags/v1.14.4","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/gitlab.com/repositories/cznic%2Fsqlite/tags/v1.14.4/manifests"},{"name":"v1.14.3","sha":"019ed373da322b2c4195e40412ba9beaac358343","kind":"tag","published_at":"2021-12-14T10:36:54.000Z","download_url":"https://gitlab.com/cznic/sqlite/-/archive/v1.14.3/sqlite-v1.14.3.zip","html_url":"https://gitlab.com/cznic/sqlite/-/tags/v1.14.3","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/gitlab.com/repositories/cznic%2Fsqlite/tags/v1.14.3","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/gitlab.com/repositories/cznic%2Fsqlite/tags/v1.14.3/manifests"},{"name":"v1.14.2","sha":"cfee3bea08fdbb033b0de2cc2ade3ad5d469e11c","kind":"tag","published_at":"2021-12-02T13:56:58.000Z","download_url":"https://gitlab.com/cznic/sqlite/-/archive/v1.14.2/sqlite-v1.14.2.zip","html_url":"https://gitlab.com/cznic/sqlite/-/tags/v1.14.2","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/gitlab.com/repositories/cznic%2Fsqlite/tags/v1.14.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/gitlab.com/repositories/cznic%2Fsqlite/tags/v1.14.2/manifests"},{"name":"v1.14.1","sha":"bf09fc9c7a0bd6609937fc6e6b3db30e91cb78a7","kind":"tag","published_at":"2021-11-14T10:12:37.000Z","download_url":"https://gitlab.com/cznic/sqlite/-/archive/v1.14.1/sqlite-v1.14.1.zip","html_url":"https://gitlab.com/cznic/sqlite/-/tags/v1.14.1","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/gitlab.com/repositories/cznic%2Fsqlite/tags/v1.14.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/gitlab.com/repositories/cznic%2Fsqlite/tags/v1.14.1/manifests"},{"name":"v1.14.0","sha":"6a550af056c19e545b55409f018f40ecc6e20abd","kind":"tag","published_at":"2021-11-13T19:39:47.000Z","download_url":"https://gitlab.com/cznic/sqlite/-/archive/v1.14.0/sqlite-v1.14.0.zip","html_url":"https://gitlab.com/cznic/sqlite/-/tags/v1.14.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/gitlab.com/repositories/cznic%2Fsqlite/tags/v1.14.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/gitlab.com/repositories/cznic%2Fsqlite/tags/v1.14.0/manifests"},{"name":"v1.13.4-pre.windows.amd64","sha":"c0894304cd55f15026ba504a1d6774fc19f822ad","kind":"tag","published_at":"2021-11-13T09:19:47.000Z","download_url":"https://gitlab.com/cznic/sqlite/-/archive/v1.13.4-pre.windows.amd64/sqlite-v1.13.4-pre.windows.amd64.zip","html_url":"https://gitlab.com/cznic/sqlite/-/tags/v1.13.4-pre.windows.amd64","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/gitlab.com/repositories/cznic%2Fsqlite/tags/v1.13.4-pre.windows.amd64","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/gitlab.com/repositories/cznic%2Fsqlite/tags/v1.13.4-pre.windows.amd64/manifests"},{"name":"v1.13.4-pre.darwin.amd64","sha":"5e04542b70deb840a6807b0c3891c2aa6a786362","kind":"tag","published_at":"2021-11-10T14:41:27.000Z","download_url":"https://gitlab.com/cznic/sqlite/-/archive/v1.13.4-pre.darwin.amd64/sqlite-v1.13.4-pre.darwin.amd64.zip","html_url":"https://gitlab.com/cznic/sqlite/-/tags/v1.13.4-pre.darwin.amd64","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/gitlab.com/repositories/cznic%2Fsqlite/tags/v1.13.4-pre.darwin.amd64","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/gitlab.com/repositories/cznic%2Fsqlite/tags/v1.13.4-pre.darwin.amd64/manifests"},{"name":"v1.13.4-pre.netbsd.amd64","sha":"03e0695dd5b1eecf348872a06c2993f0a6fbe35e","kind":"tag","published_at":"2021-11-09T14:30:55.000Z","download_url":"https://gitlab.com/cznic/sqlite/-/archive/v1.13.4-pre.netbsd.amd64/sqlite-v1.13.4-pre.netbsd.amd64.zip","html_url":"https://gitlab.com/cznic/sqlite/-/tags/v1.13.4-pre.netbsd.amd64","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/gitlab.com/repositories/cznic%2Fsqlite/tags/v1.13.4-pre.netbsd.amd64","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/gitlab.com/repositories/cznic%2Fsqlite/tags/v1.13.4-pre.netbsd.amd64/manifests"},{"name":"v1.13.4-pre.freebsd.amd64","sha":"f57b67ef4d02d060caba394feca7c4d644c83652","kind":"tag","published_at":"2021-11-07T22:16:53.000Z","download_url":"https://gitlab.com/cznic/sqlite/-/archive/v1.13.4-pre.freebsd.amd64/sqlite-v1.13.4-pre.freebsd.amd64.zip","html_url":"https://gitlab.com/cznic/sqlite/-/tags/v1.13.4-pre.freebsd.amd64","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/gitlab.com/repositories/cznic%2Fsqlite/tags/v1.13.4-pre.freebsd.amd64","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/gitlab.com/repositories/cznic%2Fsqlite/tags/v1.13.4-pre.freebsd.amd64/manifests"},{"name":"v1.13.4-pre.configure-mutexes","sha":"c07fc560c926c91ed3e96003f72d375ef2928e72","kind":"tag","published_at":"2021-11-04T20:11:26.000Z","download_url":"https://gitlab.com/cznic/sqlite/-/archive/v1.13.4-pre.configure-mutexes/sqlite-v1.13.4-pre.configure-mutexes.zip","html_url":"https://gitlab.com/cznic/sqlite/-/tags/v1.13.4-pre.configure-mutexes","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/gitlab.com/repositories/cznic%2Fsqlite/tags/v1.13.4-pre.configure-mutexes","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/gitlab.com/repositories/cznic%2Fsqlite/tags/v1.13.4-pre.configure-mutexes/manifests"},{"name":"v1.13.4-pre.linux.s390x","sha":"da7d46b478253d0706340a8ff2ae4a6492f40501","kind":"tag","published_at":"2021-11-03T14:50:37.000Z","download_url":"https://gitlab.com/cznic/sqlite/-/archive/v1.13.4-pre.linux.s390x/sqlite-v1.13.4-pre.linux.s390x.zip","html_url":"https://gitlab.com/cznic/sqlite/-/tags/v1.13.4-pre.linux.s390x","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/gitlab.com/repositories/cznic%2Fsqlite/tags/v1.13.4-pre.linux.s390x","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/gitlab.com/repositories/cznic%2Fsqlite/tags/v1.13.4-pre.linux.s390x/manifests"},{"name":"v1.13.4-pre.linux.arm64","sha":"6e9b1d510f9130666dbb658cfdcafaea6c0803bd","kind":"tag","published_at":"2021-11-02T16:42:35.000Z","download_url":"https://gitlab.com/cznic/sqlite/-/archive/v1.13.4-pre.linux.arm64/sqlite-v1.13.4-pre.linux.arm64.zip","html_url":"https://gitlab.com/cznic/sqlite/-/tags/v1.13.4-pre.linux.arm64","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/gitlab.com/repositories/cznic%2Fsqlite/tags/v1.13.4-pre.linux.arm64","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/gitlab.com/repositories/cznic%2Fsqlite/tags/v1.13.4-pre.linux.arm64/manifests"},{"name":"v1.13.4-pre.linux.arm","sha":"333ac00e6b13870f73c708412e6bbe1198392224","kind":"tag","published_at":"2021-11-01T21:34:01.000Z","download_url":"https://gitlab.com/cznic/sqlite/-/archive/v1.13.4-pre.linux.arm/sqlite-v1.13.4-pre.linux.arm.zip","html_url":"https://gitlab.com/cznic/sqlite/-/tags/v1.13.4-pre.linux.arm","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/gitlab.com/repositories/cznic%2Fsqlite/tags/v1.13.4-pre.linux.arm","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/gitlab.com/repositories/cznic%2Fsqlite/tags/v1.13.4-pre.linux.arm/manifests"},{"name":"v1.13.4-pre.386","sha":"e3f3850a65ea2e62213842b01ee9fa6af3d40192","kind":"tag","published_at":"2021-10-29T11:42:17.000Z","download_url":"https://gitlab.com/cznic/sqlite/-/archive/v1.13.4-pre.386/sqlite-v1.13.4-pre.386.zip","html_url":"https://gitlab.com/cznic/sqlite/-/tags/v1.13.4-pre.386","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/gitlab.com/repositories/cznic%2Fsqlite/tags/v1.13.4-pre.386","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/gitlab.com/repositories/cznic%2Fsqlite/tags/v1.13.4-pre.386/manifests"},{"name":"v1.13.3","sha":"6f800703d3f63cc1c56ec5be1a7878ea54efce17","kind":"tag","published_at":"2021-10-24T16:00:29.000Z","download_url":"https://gitlab.com/cznic/sqlite/-/archive/v1.13.3/sqlite-v1.13.3.zip","html_url":"https://gitlab.com/cznic/sqlite/-/tags/v1.13.3","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/gitlab.com/repositories/cznic%2Fsqlite/tags/v1.13.3","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/gitlab.com/repositories/cznic%2Fsqlite/tags/v1.13.3/manifests"},{"name":"v1.13.1","sha":"fa683c81c6f7595f31699d4cf0a0637f7a59b5db","kind":"tag","published_at":"2021-09-17T10:38:44.000Z","download_url":"https://gitlab.com/cznic/sqlite/-/archive/v1.13.1/sqlite-v1.13.1.zip","html_url":"https://gitlab.com/cznic/sqlite/-/tags/v1.13.1","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/gitlab.com/repositories/cznic%2Fsqlite/tags/v1.13.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/gitlab.com/repositories/cznic%2Fsqlite/tags/v1.13.1/manifests"},{"name":"v1.13.0","sha":"575ee467e08475d12053345ad401e9a51c3ad90a","kind":"tag","published_at":"2021-09-07T14:47:43.000Z","download_url":"https://gitlab.com/cznic/sqlite/-/archive/v1.13.0/sqlite-v1.13.0.zip","html_url":"https://gitlab.com/cznic/sqlite/-/tags/v1.13.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/gitlab.com/repositories/cznic%2Fsqlite/tags/v1.13.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/gitlab.com/repositories/cznic%2Fsqlite/tags/v1.13.0/manifests"},{"name":"v1.12.0","sha":"d5a408ea46bdb01b9ba331eaf920199512868030","kind":"tag","published_at":"2021-07-23T20:43:02.000Z","download_url":"https://gitlab.com/cznic/sqlite/-/archive/v1.12.0/sqlite-v1.12.0.zip","html_url":"https://gitlab.com/cznic/sqlite/-/tags/v1.12.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/gitlab.com/repositories/cznic%2Fsqlite/tags/v1.12.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/gitlab.com/repositories/cznic%2Fsqlite/tags/v1.12.0/manifests"},{"name":"v1.11.2","sha":"fbc07fb841defec228c94f32ef0a3f98f9440b34","kind":"tag","published_at":"2021-07-02T11:45:34.000Z","download_url":"https://gitlab.com/cznic/sqlite/-/archive/v1.11.2/sqlite-v1.11.2.zip","html_url":"https://gitlab.com/cznic/sqlite/-/tags/v1.11.2","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/gitlab.com/repositories/cznic%2Fsqlite/tags/v1.11.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/gitlab.com/repositories/cznic%2Fsqlite/tags/v1.11.2/manifests"},{"name":"v1.11.1","sha":"c4b5926a17d02a77b0f0aa9f762ce83906eb4359","kind":"tag","published_at":"2021-06-23T08:00:27.000Z","download_url":"https://gitlab.com/cznic/sqlite/-/archive/v1.11.1/sqlite-v1.11.1.zip","html_url":"https://gitlab.com/cznic/sqlite/-/tags/v1.11.1","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/gitlab.com/repositories/cznic%2Fsqlite/tags/v1.11.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/gitlab.com/repositories/cznic%2Fsqlite/tags/v1.11.1/manifests"},{"name":"v1.11.0","sha":"b0a9c609acb1c7c61882ee140d2611b2130cca8c","kind":"tag","published_at":"2021-06-23T04:13:02.000Z","download_url":"https://gitlab.com/cznic/sqlite/-/archive/v1.11.0/sqlite-v1.11.0.zip","html_url":"https://gitlab.com/cznic/sqlite/-/tags/v1.11.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/gitlab.com/repositories/cznic%2Fsqlite/tags/v1.11.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/gitlab.com/repositories/cznic%2Fsqlite/tags/v1.11.0/manifests"},{"name":"v1.10.8","sha":"0b2367747cba5699fd291b6364ebf2f7c96ccb01","kind":"tag","published_at":"2021-05-29T19:11:16.000Z","download_url":"https://gitlab.com/cznic/sqlite/-/archive/v1.10.8/sqlite-v1.10.8.zip","html_url":"https://gitlab.com/cznic/sqlite/-/tags/v1.10.8","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/gitlab.com/repositories/cznic%2Fsqlite/tags/v1.10.8","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/gitlab.com/repositories/cznic%2Fsqlite/tags/v1.10.8/manifests"},{"name":"v1.10.7","sha":"ac48e5985c522a47387ea750daef226d96dea31e","kind":"tag","published_at":"2021-05-12T14:49:53.000Z","download_url":"https://gitlab.com/cznic/sqlite/-/archive/v1.10.7/sqlite-v1.10.7.zip","html_url":"https://gitlab.com/cznic/sqlite/-/tags/v1.10.7","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/gitlab.com/repositories/cznic%2Fsqlite/tags/v1.10.7","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/gitlab.com/repositories/cznic%2Fsqlite/tags/v1.10.7/manifests"},{"name":"v1.10.6","sha":"8a0b7390c06fbb878542bc5239837b9228964c48","kind":"tag","published_at":"2021-05-06T15:35:10.000Z","download_url":"https://gitlab.com/cznic/sqlite/-/archive/v1.10.6/sqlite-v1.10.6.zip","html_url":"https://gitlab.com/cznic/sqlite/-/tags/v1.10.6","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/gitlab.com/repositories/cznic%2Fsqlite/tags/v1.10.6","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/gitlab.com/repositories/cznic%2Fsqlite/tags/v1.10.6/manifests"},{"name":"v1.10.5","sha":"d93404b2e022fa00d442206e9ba237c901f6d61d","kind":"tag","published_at":"2021-05-06T15:29:51.000Z","download_url":"https://gitlab.com/cznic/sqlite/-/archive/v1.10.5/sqlite-v1.10.5.zip","html_url":"https://gitlab.com/cznic/sqlite/-/tags/v1.10.5","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/gitlab.com/repositories/cznic%2Fsqlite/tags/v1.10.5","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/gitlab.com/repositories/cznic%2Fsqlite/tags/v1.10.5/manifests"},{"name":"v1.10.4","sha":"a3a619dcd203452d01f140d7d6a2f66255734a99","kind":"tag","published_at":"2021-04-22T23:59:02.000Z","download_url":"https://gitlab.com/cznic/sqlite/-/archive/v1.10.4/sqlite-v1.10.4.zip","html_url":"https://gitlab.com/cznic/sqlite/-/tags/v1.10.4","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/gitlab.com/repositories/cznic%2Fsqlite/tags/v1.10.4","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/gitlab.com/repositories/cznic%2Fsqlite/tags/v1.10.4/manifests"},{"name":"v1.10.3","sha":"4a946a98e952292157fae7d7a5c86657497b2194","kind":"tag","published_at":"2021-04-18T12:36:48.000Z","download_url":"https://gitlab.com/cznic/sqlite/-/archive/v1.10.3/sqlite-v1.10.3.zip","html_url":"https://gitlab.com/cznic/sqlite/-/tags/v1.10.3","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/gitlab.com/repositories/cznic%2Fsqlite/tags/v1.10.3","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/gitlab.com/repositories/cznic%2Fsqlite/tags/v1.10.3/manifests"},{"name":"v1.10.2","sha":"244d800af422e815c329636b3f6633e1f1bf504a","kind":"tag","published_at":"2021-04-09T22:38:16.000Z","download_url":"https://gitlab.com/cznic/sqlite/-/archive/v1.10.2/sqlite-v1.10.2.zip","html_url":"https://gitlab.com/cznic/sqlite/-/tags/v1.10.2","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/gitlab.com/repositories/cznic%2Fsqlite/tags/v1.10.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/gitlab.com/repositories/cznic%2Fsqlite/tags/v1.10.2/manifests"},{"name":"v1.10.1","sha":"2ba81b032f69dd39148519b2384a74ba28f0a38b","kind":"tag","published_at":"2021-04-09T09:54:40.000Z","download_url":"https://gitlab.com/cznic/sqlite/-/archive/v1.10.1/sqlite-v1.10.1.zip","html_url":"https://gitlab.com/cznic/sqlite/-/tags/v1.10.1","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/gitlab.com/repositories/cznic%2Fsqlite/tags/v1.10.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/gitlab.com/repositories/cznic%2Fsqlite/tags/v1.10.1/manifests"},{"name":"v1.10.0","sha":"c3e4c137845dffc43b0fdb38ca717efe305c752b","kind":"tag","published_at":"2021-03-14T13:46:32.000Z","download_url":"https://gitlab.com/cznic/sqlite/-/archive/v1.10.0/sqlite-v1.10.0.zip","html_url":"https://gitlab.com/cznic/sqlite/-/tags/v1.10.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/gitlab.com/repositories/cznic%2Fsqlite/tags/v1.10.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/gitlab.com/repositories/cznic%2Fsqlite/tags/v1.10.0/manifests"},{"name":"v1.9.0","sha":"63f10003aa509e06074865fbae0611df48204b83","kind":"tag","published_at":"2021-03-11T17:11:31.000Z","download_url":"https://gitlab.com/cznic/sqlite/-/archive/v1.9.0/sqlite-v1.9.0.zip","html_url":"https://gitlab.com/cznic/sqlite/-/tags/v1.9.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/gitlab.com/repositories/cznic%2Fsqlite/tags/v1.9.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/gitlab.com/repositories/cznic%2Fsqlite/tags/v1.9.0/manifests"},{"name":"v1.8.8","sha":"6976024d57272a3d3157206f4ff6e8d13b840aff","kind":"tag","published_at":"2021-02-26T11:13:39.000Z","download_url":"https://gitlab.com/cznic/sqlite/-/archive/v1.8.8/sqlite-v1.8.8.zip","html_url":"https://gitlab.com/cznic/sqlite/-/tags/v1.8.8","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/gitlab.com/repositories/cznic%2Fsqlite/tags/v1.8.8","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/gitlab.com/repositories/cznic%2Fsqlite/tags/v1.8.8/manifests"},{"name":"v1.8.7","sha":"139b2c627178a7324069ccb8451596f9565842e1","kind":"tag","published_at":"2021-01-31T11:07:26.000Z","download_url":"https://gitlab.com/cznic/sqlite/-/archive/v1.8.7/sqlite-v1.8.7.zip","html_url":"https://gitlab.com/cznic/sqlite/-/tags/v1.8.7","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/gitlab.com/repositories/cznic%2Fsqlite/tags/v1.8.7","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/gitlab.com/repositories/cznic%2Fsqlite/tags/v1.8.7/manifests"},{"name":"v1.8.6","sha":"ec8782971796ab123f15a5778d87af5804fecbfd","kind":"tag","published_at":"2021-01-26T21:32:10.000Z","download_url":"https://gitlab.com/cznic/sqlite/-/archive/v1.8.6/sqlite-v1.8.6.zip","html_url":"https://gitlab.com/cznic/sqlite/-/tags/v1.8.6","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/gitlab.com/repositories/cznic%2Fsqlite/tags/v1.8.6","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/gitlab.com/repositories/cznic%2Fsqlite/tags/v1.8.6/manifests"},{"name":"v1.8.5","sha":"5e0cb7e925a042c84deb7dcf36fb445b64267bcf","kind":"tag","published_at":"2021-01-21T11:20:43.000Z","download_url":"https://gitlab.com/cznic/sqlite/-/archive/v1.8.5/sqlite-v1.8.5.zip","html_url":"https://gitlab.com/cznic/sqlite/-/tags/v1.8.5","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/gitlab.com/repositories/cznic%2Fsqlite/tags/v1.8.5","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/gitlab.com/repositories/cznic%2Fsqlite/tags/v1.8.5/manifests"},{"name":"v1.8.4","sha":"295d48b2e826c1a6a001cb24be909fb9fb1c8ce3","kind":"tag","published_at":"2021-01-12T20:39:48.000Z","download_url":"https://gitlab.com/cznic/sqlite/-/archive/v1.8.4/sqlite-v1.8.4.zip","html_url":"https://gitlab.com/cznic/sqlite/-/tags/v1.8.4","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/gitlab.com/repositories/cznic%2Fsqlite/tags/v1.8.4","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/gitlab.com/repositories/cznic%2Fsqlite/tags/v1.8.4/manifests"},{"name":"v1.8.3","sha":"9383707da0263bdac706427d08f849e0c7db5d13","kind":"tag","published_at":"2021-01-11T12:21:44.000Z","download_url":"https://gitlab.com/cznic/sqlite/-/archive/v1.8.3/sqlite-v1.8.3.zip","html_url":"https://gitlab.com/cznic/sqlite/-/tags/v1.8.3","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/gitlab.com/repositories/cznic%2Fsqlite/tags/v1.8.3","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/gitlab.com/repositories/cznic%2Fsqlite/tags/v1.8.3/manifests"},{"name":"v1.8.2","sha":"90dac3ac7b00a15b738bad4a6cedc4e415dc89d8","kind":"tag","published_at":"2021-01-10T14:26:54.000Z","download_url":"https://gitlab.com/cznic/sqlite/-/archive/v1.8.2/sqlite-v1.8.2.zip","html_url":"https://gitlab.com/cznic/sqlite/-/tags/v1.8.2","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/gitlab.com/repositories/cznic%2Fsqlite/tags/v1.8.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/gitlab.com/repositories/cznic%2Fsqlite/tags/v1.8.2/manifests"},{"name":"v1.8.1","sha":"0ccef02582e22d75cbb569c792a7b2838eccb0f4","kind":"tag","published_at":"2021-01-09T11:57:10.000Z","download_url":"https://gitlab.com/cznic/sqlite/-/archive/v1.8.1/sqlite-v1.8.1.zip","html_url":"https://gitlab.com/cznic/sqlite/-/tags/v1.8.1","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/gitlab.com/repositories/cznic%2Fsqlite/tags/v1.8.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/gitlab.com/repositories/cznic%2Fsqlite/tags/v1.8.1/manifests"},{"name":"v1.8.0","sha":"e600c313a51dca2ab4b641dfb9ee96a6cee388da","kind":"tag","published_at":"2021-01-08T13:09:57.000Z","download_url":"https://gitlab.com/cznic/sqlite/-/archive/v1.8.0/sqlite-v1.8.0.zip","html_url":"https://gitlab.com/cznic/sqlite/-/tags/v1.8.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/gitlab.com/repositories/cznic%2Fsqlite/tags/v1.8.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/gitlab.com/repositories/cznic%2Fsqlite/tags/v1.8.0/manifests"},{"name":"v1.7.5","sha":"fa0727ab3c1a2b8d19d563d1aa58e97455688490","kind":"tag","published_at":"2020-11-19T16:53:04.000Z","download_url":"https://gitlab.com/cznic/sqlite/-/archive/v1.7.5/sqlite-v1.7.5.zip","html_url":"https://gitlab.com/cznic/sqlite/-/tags/v1.7.5","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/gitlab.com/repositories/cznic%2Fsqlite/tags/v1.7.5","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/gitlab.com/repositories/cznic%2Fsqlite/tags/v1.7.5/manifests"},{"name":"v1.7.4","sha":"91fc7a88e5cbcb745d181771500efedfd798f2e3","kind":"tag","published_at":"2020-10-13T04:20:47.000Z","download_url":"https://gitlab.com/cznic/sqlite/-/archive/v1.7.4/sqlite-v1.7.4.zip","html_url":"https://gitlab.com/cznic/sqlite/-/tags/v1.7.4","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/gitlab.com/repositories/cznic%2Fsqlite/tags/v1.7.4","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/gitlab.com/repositories/cznic%2Fsqlite/tags/v1.7.4/manifests"},{"name":"v1.7.3","sha":"736c530ac70b31867445bbf0212e308467fb53b3","kind":"tag","published_at":"2020-09-25T13:12:39.000Z","download_url":"https://gitlab.com/cznic/sqlite/-/archive/v1.7.3/sqlite-v1.7.3.zip","html_url":"https://gitlab.com/cznic/sqlite/-/tags/v1.7.3","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/gitlab.com/repositories/cznic%2Fsqlite/tags/v1.7.3","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/gitlab.com/repositories/cznic%2Fsqlite/tags/v1.7.3/manifests"},{"name":"v1.7.2","sha":"4e59395a6063396be299d3f16168744f1f7cf787","kind":"tag","published_at":"2020-09-24T09:30:27.000Z","download_url":"https://gitlab.com/cznic/sqlite/-/archive/v1.7.2/sqlite-v1.7.2.zip","html_url":"https://gitlab.com/cznic/sqlite/-/tags/v1.7.2","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/gitlab.com/repositories/cznic%2Fsqlite/tags/v1.7.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/gitlab.com/repositories/cznic%2Fsqlite/tags/v1.7.2/manifests"},{"name":"v1.7.1","sha":"a4318db8c7fc62f25e9f78c434d2a2a54fc1f433","kind":"tag","published_at":"2020-09-21T16:36:03.000Z","download_url":"https://gitlab.com/cznic/sqlite/-/archive/v1.7.1/sqlite-v1.7.1.zip","html_url":"https://gitlab.com/cznic/sqlite/-/tags/v1.7.1","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/gitlab.com/repositories/cznic%2Fsqlite/tags/v1.7.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/gitlab.com/repositories/cznic%2Fsqlite/tags/v1.7.1/manifests"},{"name":"v1.7.0","sha":"f228816300a40a6f8cd90293a629fffad952c6ce","kind":"tag","published_at":"2020-09-13T13:31:23.000Z","download_url":"https://gitlab.com/cznic/sqlite/-/archive/v1.7.0/sqlite-v1.7.0.zip","html_url":"https://gitlab.com/cznic/sqlite/-/tags/v1.7.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/gitlab.com/repositories/cznic%2Fsqlite/tags/v1.7.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/gitlab.com/repositories/cznic%2Fsqlite/tags/v1.7.0/manifests"},{"name":"v1.6.2","sha":"1a09ae480f6b16fb7690999ed66be5c58981c9d0","kind":"tag","published_at":"2020-09-08T11:39:54.000Z","download_url":"https://gitlab.com/cznic/sqlite/-/archive/v1.6.2/sqlite-v1.6.2.zip","html_url":"https://gitlab.com/cznic/sqlite/-/tags/v1.6.2","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/gitlab.com/repositories/cznic%2Fsqlite/tags/v1.6.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/gitlab.com/repositories/cznic%2Fsqlite/tags/v1.6.2/manifests"},{"name":"v1.6.1","sha":"8be1ac0cdb4f2d4840f9d574d39a79eea0646c87","kind":"tag","published_at":"2020-09-08T11:31:08.000Z","download_url":"https://gitlab.com/cznic/sqlite/-/archive/v1.6.1/sqlite-v1.6.1.zip","html_url":"https://gitlab.com/cznic/sqlite/-/tags/v1.6.1","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/gitlab.com/repositories/cznic%2Fsqlite/tags/v1.6.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/gitlab.com/repositories/cznic%2Fsqlite/tags/v1.6.1/manifests"},{"name":"v1.6.0","sha":"0d7a76444703f3275f151543189c1ee16326e6c2","kind":"tag","published_at":"2020-09-08T11:28:55.000Z","download_url":"https://gitlab.com/cznic/sqlite/-/archive/v1.6.0/sqlite-v1.6.0.zip","html_url":"https://gitlab.com/cznic/sqlite/-/tags/v1.6.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/gitlab.com/repositories/cznic%2Fsqlite/tags/v1.6.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/gitlab.com/repositories/cznic%2Fsqlite/tags/v1.6.0/manifests"},{"name":"v1.5.0","sha":"3ff11fb2cf3597e31eb790772bc03fae46e6b029","kind":"tag","published_at":"2020-09-03T13:37:08.000Z","download_url":"https://gitlab.com/cznic/sqlite/-/archive/v1.5.0/sqlite-v1.5.0.zip","html_url":"https://gitlab.com/cznic/sqlite/-/tags/v1.5.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/gitlab.com/repositories/cznic%2Fsqlite/tags/v1.5.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/gitlab.com/repositories/cznic%2Fsqlite/tags/v1.5.0/manifests"},{"name":"v1.4.0","sha":"e662a135d139be00d9539517df0976318adbdfa1","kind":"tag","published_at":"2020-08-26T21:31:54.000Z","download_url":"https://gitlab.com/cznic/sqlite/-/archive/v1.4.0/sqlite-v1.4.0.zip","html_url":"https://gitlab.com/cznic/sqlite/-/tags/v1.4.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/gitlab.com/repositories/cznic%2Fsqlite/tags/v1.4.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/gitlab.com/repositories/cznic%2Fsqlite/tags/v1.4.0/manifests"},{"name":"v1.4.0-beta1","sha":"b406626c64313ae348996c243a0a05d3f6ed2c3c","kind":"tag","published_at":"2020-07-26T20:36:18.000Z","download_url":"https://gitlab.com/cznic/sqlite/-/archive/v1.4.0-beta1/sqlite-v1.4.0-beta1.zip","html_url":"https://gitlab.com/cznic/sqlite/-/tags/v1.4.0-beta1","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/gitlab.com/repositories/cznic%2Fsqlite/tags/v1.4.0-beta1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/gitlab.com/repositories/cznic%2Fsqlite/tags/v1.4.0-beta1/manifests"},{"name":"v1.3.0","sha":"d8d9f40ce80062793349c0ea47520b6878312f4a","kind":"tag","published_at":"2020-01-10T09:40:14.000Z","download_url":"https://gitlab.com/cznic/sqlite/-/archive/v1.3.0/sqlite-v1.3.0.zip","html_url":"https://gitlab.com/cznic/sqlite/-/tags/v1.3.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/gitlab.com/repositories/cznic%2Fsqlite/tags/v1.3.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/gitlab.com/repositories/cznic%2Fsqlite/tags/v1.3.0/manifests"},{"name":"v1.2.0-alpha.3","sha":"ea2990f2041f1564cf05b1e6510bdae19f2f25ff","kind":"tag","published_at":"2019-12-28T10:22:30.000Z","download_url":"https://gitlab.com/cznic/sqlite/-/archive/v1.2.0-alpha.3/sqlite-v1.2.0-alpha.3.zip","html_url":"https://gitlab.com/cznic/sqlite/-/tags/v1.2.0-alpha.3","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/gitlab.com/repositories/cznic%2Fsqlite/tags/v1.2.0-alpha.3","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/gitlab.com/repositories/cznic%2Fsqlite/tags/v1.2.0-alpha.3/manifests"},{"name":"v1.1.0-alpha.2","sha":"6efd3c70006496181ffdf7397f8181c1b49895d8","kind":"tag","published_at":"2019-12-26T16:24:51.000Z","download_url":"https://gitlab.com/cznic/sqlite/-/archive/v1.1.0-alpha.2/sqlite-v1.1.0-alpha.2.zip","html_url":"https://gitlab.com/cznic/sqlite/-/tags/v1.1.0-alpha.2","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/gitlab.com/repositories/cznic%2Fsqlite/tags/v1.1.0-alpha.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/gitlab.com/repositories/cznic%2Fsqlite/tags/v1.1.0-alpha.2/manifests"},{"name":"v1.1.0-alpha.1","sha":"179c16d747dbaad875f20b52af14a4f95357003c","kind":"tag","published_at":"2019-12-18T17:33:15.000Z","download_url":"https://gitlab.com/cznic/sqlite/-/archive/v1.1.0-alpha.1/sqlite-v1.1.0-alpha.1.zip","html_url":"https://gitlab.com/cznic/sqlite/-/tags/v1.1.0-alpha.1","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/gitlab.com/repositories/cznic%2Fsqlite/tags/v1.1.0-alpha.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/gitlab.com/repositories/cznic%2Fsqlite/tags/v1.1.0-alpha.1/manifests"},{"name":"v1.0.0","sha":"6815fe120ff928e0cc80890cb371798a6ed4640a","kind":"tag","published_at":"2018-11-06T17:50:11.000Z","download_url":"https://gitlab.com/cznic/sqlite/-/archive/v1.0.0/sqlite-v1.0.0.zip","html_url":"https://gitlab.com/cznic/sqlite/-/tags/v1.0.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/gitlab.com/repositories/cznic%2Fsqlite/tags/v1.0.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/gitlab.com/repositories/cznic%2Fsqlite/tags/v1.0.0/manifests"}]},"repo_metadata_updated_at":"2025-06-05T09:33:52.354Z","dependent_packages_count":2736,"downloads":null,"downloads_period":null,"dependent_repos_count":4416,"rankings":{"downloads":null,"dependent_repos_count":0.12532368368634222,"dependent_packages_count":0.07884602616028152,"stargazers_count":2.978500022823755,"forks_count":3.171658429445766,"docker_downloads_count":0.10706460394396124,"average":1.2922785532120211},"purl":"pkg:golang/modernc.org/sqlite","advisories":[],"docker_usage_url":"https://docker.ecosyste.ms/usage/go/modernc.org/sqlite","docker_dependents_count":902,"docker_downloads_count":1640224145,"usage_url":"https://repos.ecosyste.ms/usage/go/modernc.org/sqlite","dependent_repositories_url":"https://repos.ecosyste.ms/api/v1/usage/go/modernc.org/sqlite/dependencies","status":null,"funding_links":[],"critical":null,"versions_url":"https://packages.ecosyste.ms/api/v1/registries/proxy.golang.org/packages/modernc.org%2Fsqlite/versions","version_numbers_url":"https://packages.ecosyste.ms/api/v1/registries/proxy.golang.org/packages/modernc.org%2Fsqlite/version_numbers","dependent_packages_url":"https://packages.ecosyste.ms/api/v1/registries/proxy.golang.org/packages/modernc.org%2Fsqlite/dependent_packages","related_packages_url":"https://packages.ecosyste.ms/api/v1/registries/proxy.golang.org/packages/modernc.org%2Fsqlite/related_packages","maintainers":[],"registry":{"name":"proxy.golang.org","url":"https://proxy.golang.org","ecosystem":"go","default":true,"packages_count":1882879,"maintainers_count":0,"namespaces_count":723926,"keywords_count":97872,"github":"golang","metadata":{"funded_packages_count":39346},"icon_url":"https://github.com/golang.png","created_at":"2022-04-04T15:19:22.939Z","updated_at":"2025-06-06T05:22:27.920Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/proxy.golang.org/packages","maintainers_url":"https://packages.ecosyste.ms/api/v1/registries/proxy.golang.org/maintainers","namespaces_url":"https://packages.ecosyste.ms/api/v1/registries/proxy.golang.org/namespaces"}},"unique_repositories_count":448,"unique_repositories_count_past_30_days":41,"recent_issues":[{"uuid":"4644537962","node_id":"PR_kwDOSQfPn87lhM0k","number":23,"state":"open","title":"chore(deps): bump modernc.org/sqlite from 1.50.1 to 1.52.0","user":"dependabot[bot]","labels":["dependencies","go"],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":null,"author_association":null,"state_reason":null,"created_at":"2026-06-11T22:05:18.000Z","updated_at":"2026-06-11T22:08:58.000Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"chore(deps)","packages":[{"name":"modernc.org/sqlite","old_version":"1.50.1","new_version":"1.52.0","repository_url":null}],"path":null,"ecosystem":"go"},"body":"Bumps [modernc.org/sqlite](https://gitlab.com/cznic/sqlite) from 1.50.1 to 1.52.0.\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://gitlab.com/cznic/sqlite/blob/master/CHANGELOG.md\"\u003emodernc.org/sqlite's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003eChangelog\u003c/h1\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e2026-06-10 v1.53.0:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdd a Go-facing wrapper for \u003ccode\u003eSQLITE_CONFIG_PCACHE2\u003c/code\u003e. \u003ccode\u003ePageCache\u003c/code\u003e is the factory and \u003ccode\u003eCache\u003c/code\u003e the per-database instance, both idiomatic Go interfaces; \u003ccode\u003ePage\u003c/code\u003e exposes the raw \u003ccode\u003eBuf\u003c/code\u003e and \u003ccode\u003eExtra\u003c/code\u003e pointers that SQLite reads through the C pcache contract. \u003ccode\u003eRegisterPageCache\u003c/code\u003e and \u003ccode\u003eMustRegisterPageCache\u003c/code\u003e install the module process-globally before the first \u003ccode\u003esql.Open\u003c/code\u003e; subsequent Open calls are gated through a one-shot \u003ccode\u003eXsqlite3_config(SQLITE_CONFIG_PCACHE2)\u003c/code\u003e so a too-late Register returns \u003ccode\u003eErrPageCacheTooLate\u003c/code\u003e rather than silently falling through to the built-in pcache1. The binding owns the \u003ccode\u003esqlite3_pcache_page\u003c/code\u003e stub and re-consults the implementation on every Fetch, reusing the stub only when the returned \u003ccode\u003ePage\u003c/code\u003e value is unchanged, which keeps a bounded/evicting purgeable cache safe by construction.\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/126\"\u003e#126\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/126\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/126\u003c/a\u003e), thanks Ian Chechin!\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003emodernc.org/sqlite/pcache\u003c/code\u003e, the reference page-cache implementation that accompanies the \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/126\"\u003e#126\u003c/a\u003e \u003ccode\u003eSQLITE_CONFIG_PCACHE2\u003c/code\u003e wrapper. \u003ccode\u003epcache.New\u003c/code\u003e returns a \u003ccode\u003e*Pool\u003c/code\u003e satisfying the \u003ccode\u003ePageCache\u003c/code\u003e interface; register it once with \u003ccode\u003esqlite.MustRegisterPageCache(pcache.New())\u003c/code\u003e and every connection opened afterwards draws its pages from it. Each \u003ccode\u003ePool.Create\u003c/code\u003e mints a fresh per-database \u003ccode\u003eCache\u003c/code\u003e: a bounded, LRU-evicting page store that honours the \u003ccode\u003ePRAGMA cache_size\u003c/code\u003e soft cap and releases the least-recently-unpinned page when it must make room. Page memory — the \u003ccode\u003eBuf\u003c/code\u003e and \u003ccode\u003eExtra\u003c/code\u003e buffers SQLite reads through — is allocated with \u003ccode\u003elibc.Xmalloc\u003c/code\u003e/\u003ccode\u003elibc.Xcalloc\u003c/code\u003e and therefore lives off the Go heap, which keeps SQLite's interior pointer arithmetic on the page extras from tripping the race detector's checkptr enforcement. \u003ccode\u003ePool.Stats\u003c/code\u003e reports aggregate lifetime counters (hits, misses, allocs, evictions, rekeys, truncates, caches) across every cache a Pool has created, so hit/miss/eviction behaviour is observable without instrumenting individual caches. Cross-connection page sharing is out of scope for now; each \u003ccode\u003eCreate\u003c/code\u003e returns an independent per-database cache.\u003c/li\u003e\n\u003cli\u003eValidated end-to-end against the \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/126\"\u003e#126\u003c/a\u003e stress workload (\u003ccode\u003ecache_size=16\u003c/code\u003e, 4000 BLOB rows with DELETE and \u003ccode\u003eincremental_vacuum\u003c/code\u003e, \u003ccode\u003eintegrity_check\u003c/code\u003e clean under \u003ccode\u003e-race\u003c/code\u003e) and benchmarked for the memory-utilization goal tracked in [GitLab issue \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/204\"\u003e#204\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/issues/204\"\u003ehttps://gitlab.com/cznic/sqlite/-/issues/204\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/127\"\u003e#127\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/127\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/127\u003c/a\u003e), thanks Ian Chechin!\u003c/li\u003e\n\u003cli\u003eAdd an opt-in \u003ccode\u003e_dqs\u003c/code\u003e DSN query parameter that disables SQLite's double-quoted string literal compatibility quirk on a per-connection basis. When \u003ccode\u003e_dqs=0\u003c/code\u003e (or any \u003ccode\u003estrconv.ParseBool\u003c/code\u003e false value) is supplied, the driver calls \u003ccode\u003esqlite3_db_config\u003c/code\u003e with \u003ccode\u003eSQLITE_DBCONFIG_DQS_DDL\u003c/code\u003e and \u003ccode\u003eSQLITE_DBCONFIG_DQS_DML\u003c/code\u003e set to off before any statement is prepared, so a double-quoted identifier that fails to resolve raises a parse error instead of silently falling back to a string literal. Absence of the parameter, or \u003ccode\u003e_dqs=1\u003c/code\u003e, leaves SQLite's default behavior unchanged; existing DSNs continue to work byte-for-byte. Resolves [GitLab issue \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/61\"\u003e#61\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/issues/61\"\u003ehttps://gitlab.com/cznic/sqlite/-/issues/61\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/128\"\u003e#128\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/128\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/128\u003c/a\u003e), thanks Ian Chechin!\u003c/li\u003e\n\u003cli\u003eAdd an opt-in \u003ccode\u003e_error_rc\u003c/code\u003e DSN query parameter for clearer error reporting on open-time failures. When \u003ccode\u003e_error_rc=1\u003c/code\u003e (or any \u003ccode\u003estrconv.ParseBool\u003c/code\u003e true value) is supplied, error strings synthesised from a \u003ccode\u003e(rc, db)\u003c/code\u003e pair only append \u003ccode\u003esqlite3_errmsg(db)\u003c/code\u003e when \u003ccode\u003esqlite3_extended_errcode(db)\u003c/code\u003e is consistent with the operation rc (full match first, primary code \u003ccode\u003e\u0026amp;0xff\u003c/code\u003e as fallback). On mismatch the canonical \u003ccode\u003esqlite3_errstr(rc)\u003c/code\u003e is used alone, so an open-time \u003ccode\u003eSQLITE_CANTOPEN\u003c/code\u003e no longer carries the temporary handle's stale \u0026quot;out of memory\u0026quot; errmsg. Absence of the parameter, or \u003ccode\u003e_error_rc=0\u003c/code\u003e, preserves the legacy \u0026quot;errstr: errmsg\u0026quot; form byte-for-byte; existing callers that parse error strings are unaffected. The driver's \u003ccode\u003e*Error.Code()\u003c/code\u003e returns the same SQLite result code in both modes. Parsed before \u003ccode\u003esqlite3_open_v2\u003c/code\u003e so open-time errors are covered. Resolves [GitLab issue \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/230\"\u003e#230\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/issues/230\"\u003ehttps://gitlab.com/cznic/sqlite/-/issues/230\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/129\"\u003e#129\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/129\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/129\u003c/a\u003e), thanks Ian Chechin!\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e2026-06-06 v1.52.0:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eUpgrade to \u003ca href=\"https://sqlite.org/releaselog/3_53_2.html\"\u003eSQLite 3.53.2\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003eBackup.Remaining\u003c/code\u003e and \u003ccode\u003eBackup.PageCount\u003c/code\u003e, thin wrappers around the existing \u003ccode\u003esqlite3_backup_remaining\u003c/code\u003e and \u003ccode\u003esqlite3_backup_pagecount\u003c/code\u003e C symbols. Together they expose the per-\u003ccode\u003eStep\u003c/code\u003e progress counters that the underlying backup object already maintains, enabling progress reporting during online backups without dropping to \u003ccode\u003emodernc.org/sqlite/lib\u003c/code\u003e directly.\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/122\"\u003e#122\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/122\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/122\u003c/a\u003e), thanks Ian Chechin!\u003c/li\u003e\n\u003cli\u003eDrop the redundant second copy in \u003ccode\u003e(*conn).columnText\u003c/code\u003e, the path that backs every \u003ccode\u003eRows.Scan\u003c/code\u003e into a Go \u003ccode\u003estring\u003c/code\u003e for a TEXT column. The value's bytes are still copied once out of SQLite-owned memory into a fresh Go buffer; that buffer is then reinterpreted as the result string with \u003ccode\u003eunsafe.String\u003c/code\u003e rather than copied a second time by the implicit \u003ccode\u003estring([]byte)\u003c/code\u003e conversion. This removes one allocation per TEXT value per row and roughly halves the bytes allocated on that path; on the new \u003ccode\u003eBenchmarkColumnTextScan\u003c/code\u003e cases it is ~13–20% faster for payloads of 256 B and larger, with no measurable change for very short strings. Purely internal: no API or behavioral change, and the returned string never aliases SQLite's buffer.\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/123\"\u003e#123\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/123\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/123\u003c/a\u003e), thanks Ian Chechin!\u003c/li\u003e\n\u003cli\u003eCache each result column's declared type once per result set in \u003ccode\u003enewRows\u003c/code\u003e instead of recomputing it on every row. The TEXT branch of \u003ccode\u003eRows.Next\u003c/code\u003e calls \u003ccode\u003eColumnTypeDatabaseTypeName\u003c/code\u003e for every TEXT column on every row (independent of any DSN flag), which previously did a \u003ccode\u003elibc.GoString\u003c/code\u003e + \u003ccode\u003estrings.ToUpper\u003c/code\u003e each time; that lookup is now a single index into a cached, pre-uppercased \u003ccode\u003e[]string\u003c/code\u003e, and \u003ccode\u003eColumnTypeScanType\u003c/code\u003e reads the same cache and drops its per-call \u003ccode\u003estrings.ToLower\u003c/code\u003e. The declared type is fixed for the lifetime of a prepared statement, so the C round-trip is paid once per column rather than once per column per row, removing exactly 1 alloc + 8 B per TEXT column per row from the \u003ccode\u003eNext\u003c/code\u003e hot path. The new \u003ccode\u003eBenchmarkTextToTimeScan\u003c/code\u003e cases show ~7% faster on a 1000-row DATETIME SELECT under \u003ccode\u003e_texttotime=1\u003c/code\u003e. Purely internal: \u003ccode\u003eColumnTypeDatabaseTypeName\u003c/code\u003e and \u003ccode\u003eColumnTypeScanType\u003c/code\u003e return identical values, no API or behavioral change.\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/124\"\u003e#124\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/124\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/124\u003c/a\u003e), thanks Ian Chechin!\u003c/li\u003e\n\u003cli\u003eCache, per result column, the \u003ccode\u003eparseTimeFormats\u003c/code\u003e index that first parsed a TEXT-stored DATE/DATETIME/TIMESTAMP value, and try that format first on later rows instead of re-walking the list from the top. \u003ccode\u003e(*conn).parseTime\u003c/code\u003e previously ran \u003ccode\u003etime.Parse\u003c/code\u003e down the format list on every such row; for the canonical SQLite TEXT datetime format every row paid two failed \u003ccode\u003etime.Parse\u003c/code\u003e attempts — each allocating a \u003ccode\u003e*time.ParseError\u003c/code\u003e — before the match. On a 1000-row DATETIME TEXT SELECT this cuts ~50% of allocs/op and ~57% of B/op and is ~37% faster. The fall-through chain is preserved exactly: the seven formats are mutually exclusive, so the cached hint can never select a different match than the in-order scan, and the parsed \u003ccode\u003edriver.Value\u003c/code\u003e is identical to before. Purely internal: no API or behavioral change.\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/125\"\u003e#125\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/125\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/125\u003c/a\u003e), thanks Ian Chechin!\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e2026-05-28 v1.51.0:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003ePool the \u003ccode\u003e[]driver.Value\u003c/code\u003e slice passed to scalar/aggregate UDF callbacks and to vtab \u003ccode\u003eFilter\u003c/code\u003e/\u003ccode\u003eInsert\u003c/code\u003e/\u003ccode\u003eUpdate\u003c/code\u003e callbacks, eliminating the dominant per-row allocation on UDF-heavy queries. Benchmarks on a 1000-row, 3-arg noop scalar UDF show ~40% fewer bytes/op and ~15% fewer allocs/op.\u003c/li\u003e\n\u003cli\u003eDocument the matching \u0026quot;arguments are not valid past return\u0026quot; contract on \u003ccode\u003evtab.Cursor.Filter\u003c/code\u003e and \u003ccode\u003evtab.Updater.Insert\u003c/code\u003e/\u003ccode\u003eUpdate\u003c/code\u003e, consistent with the existing rule for \u003ccode\u003eFunctionImpl.Scalar\u003c/code\u003e / \u003ccode\u003eAggregateFunction.Step\u003c/code\u003e / \u003ccode\u003eWindowInverse\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003eResolves [GitLab issue \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/226\"\u003e#226\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/issues/226\"\u003ehttps://gitlab.com/cznic/sqlite/-/issues/226\u003c/a\u003e). See [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/114\"\u003e#114\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/114\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/114\u003c/a\u003e), thanks Ian Chechin!\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003eFileControl.FileControlDataVersion\u003c/code\u003e, a wrapper around \u003ccode\u003eSQLITE_FCNTL_DATA_VERSION\u003c/code\u003e for observing pager-cache data-version changes, including those made on the same connection. Useful as a primitive for application-level cache invalidation.\u003c/li\u003e\n\u003cli\u003eExposed via the idiomatic \u003ccode\u003edatabase/sql\u003c/code\u003e escape hatch \u003ccode\u003e(*sql.Conn).Raw()\u003c/code\u003e, consistent with the existing \u003ccode\u003eFileControlPersistWAL\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/115\"\u003e#115\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/115\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/115\u003c/a\u003e), thanks Ian Chechin!\u003c/li\u003e\n\u003cli\u003eFix a regression where in-memory connections (\u003ccode\u003e:memory:\u003c/code\u003e, \u003ccode\u003efile::memory:\u003c/code\u003e, shared-cache memory URIs) were discarded by \u003ccode\u003edatabase/sql\u003c/code\u003e after a context-cancelled query, taking the entire in-memory store with them. The fix for \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/198\"\u003e#198\u003c/a\u003e had added an \u003ccode\u003esqlite3_is_interrupted\u003c/code\u003e check to the connection validator that mistakenly applied to in-memory connections too, re-introducing the bug originally fixed by !74. File-backed connections keep the existing behaviour and are still discarded after an interrupt.\u003c/li\u003e\n\u003cli\u003eResolves [GitLab issue \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/196\"\u003e#196\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/issues/196\"\u003ehttps://gitlab.com/cznic/sqlite/-/issues/196\u003c/a\u003e). See [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/116\"\u003e#116\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/116\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/116\u003c/a\u003e), thanks Ian Chechin!\u003c/li\u003e\n\u003cli\u003eAdd an opt-in \u003ccode\u003eFunctionImpl.VolatileArgs\u003c/code\u003e flag that hands TEXT and BLOB arguments to scalar and aggregate UDF callbacks as zero-copy views (\u003ccode\u003eunsafe.String\u003c/code\u003e/\u003ccode\u003eunsafe.Slice\u003c/code\u003e) over SQLite's own value buffers, eliminating the per-argument \u003ccode\u003elibc.GoString\u003c/code\u003e/\u003ccode\u003emake([]byte)\u003c/code\u003e copy that the \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/226\"\u003e#226\u003c/a\u003e slice-pooling left as the remaining per-row allocation. On the same 1000-row, 3-arg (INTEGER/TEXT/BLOB) noop scalar UDF this removes a further ~35% of allocs/op and ~11% of bytes/op on top of \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/226\"\u003e#226\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003eThe views are valid only for the duration of the callback and must not be retained past return or across rows; a callback that needs to keep a value must copy it. With \u003ccode\u003eVolatileArgs\u003c/code\u003e unset (the default) arguments keep the existing copied, caller-owned semantics, so the flag is fully backward compatible; it has no effect on integer, float, time, or NULL arguments.\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/120\"\u003e#120\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/120\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/120\u003c/a\u003e), thanks Ian Chechin!\u003c/li\u003e\n\u003cli\u003eExtend the opt-in \u003ccode\u003eVolatileArgs\u003c/code\u003e zero-copy TEXT/BLOB argument access from \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/120\"\u003e#120\u003c/a\u003e to the virtual-table \u003ccode\u003eCursor.Filter\u003c/code\u003e (\u003ccode\u003exFilter\u003c/code\u003e) and \u003ccode\u003eUpdater.Insert\u003c/code\u003e/\u003ccode\u003eUpdate\u003c/code\u003e (\u003ccode\u003exUpdate\u003c/code\u003e) callbacks. A \u003ccode\u003evtab.Module\u003c/code\u003e opts in by implementing the new optional \u003ccode\u003evtab.VolatileArgsOpter\u003c/code\u003e interface (\u003ccode\u003eVolatileArgs() bool\u003c/code\u003e); the flag is read once at module registration and shared by every table created from it. On a vtab call carrying one TEXT and one BLOB argument this removes 2 allocs/op (one \u003ccode\u003elibc.GoString\u003c/code\u003e, one \u003ccode\u003emake([]byte)\u003c/code\u003e) on each of the Filter and Update paths.\u003c/li\u003e\n\u003cli\u003eThe same safety contract as \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/120\"\u003e#120\u003c/a\u003e applies: the views are valid only for the duration of the callback and must not be retained past return or across rows; a callback that needs to keep a value must copy it. Modules that do not implement \u003ccode\u003eVolatileArgsOpter\u003c/code\u003e (the default for all existing modules) are byte-for-byte unchanged, and the flag has no effect on integer, float, time, or NULL arguments.\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/121\"\u003e#121\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/121\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/121\u003c/a\u003e), thanks Ian Chechin!\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e2026-05-10 v1.50.1:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eUpgrade to \u003ca href=\"https://sqlite.org/releaselog/3_53_1.html\"\u003eSQLite 3.53.1\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e2026-04-24 v1.50.0:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eUpgrade to sqlite-vec \u003ca href=\"https://github.com/asg017/sqlite-vec/releases/tag/v0.1.9\"\u003ev0.1.9\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003eIntroduce \u003ccode\u003eColumnInfo\u003c/code\u003e, enabling dynamic query builders and ORMs to retrieve underlying SQLite C-API metadata (\u003ccode\u003eOriginName\u003c/code\u003e, \u003ccode\u003eTableName\u003c/code\u003e, \u003ccode\u003eDatabaseName\u003c/code\u003e, and \u003ccode\u003eDeclType\u003c/code\u003e).\u003c/li\u003e\n\u003cli\u003eThis feature is exposed via the idiomatic \u003ccode\u003edatabase/sql\u003c/code\u003e escape hatch \u003ccode\u003e(*sql.Conn).Raw()\u003c/code\u003e, avoiding custom statement handles and keeping the standard library workflow intact.\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/113\"\u003e#113\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/113\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/113\u003c/a\u003e), thanks Josh Bleecher Snyder!\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e2026-04-17 v1.49.0: Upgrade to \u003ca href=\"https://sqlite.org/releaselog/3_53_0.html\"\u003eSQLite 3.53.0\u003c/a\u003e.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/66b4d20f42485b9823a2d35c86b08335d927d0e5\"\u003e\u003ccode\u003e66b4d20\u003c/code\u003e\u003c/a\u003e release v1.52.0, upgrade to SQLite 3.53.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/e3f64ec2f026880b2fbc868f195863648cd07fb3\"\u003e\u003ccode\u003ee3f64ec\u003c/code\u003e\u003c/a\u003e rows: clarify parseFmtIdx mixed-column cost; CHANGELOG.md: document \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/125\"\u003e#125\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/448579342c2da286622d7cab5db84a746124e7b1\"\u003e\u003ccode\u003e4485793\u003c/code\u003e\u003c/a\u003e Merge branch 'perf/cache-parse-time-format' into 'master'\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/3638d17bf28d730d7dd90ff5cf3f93c45b9d752e\"\u003e\u003ccode\u003e3638d17\u003c/code\u003e\u003c/a\u003e rows: cache the parseTime format index per result column\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/7da793ef16502dced14643451a8bec834f999d9e\"\u003e\u003ccode\u003e7da793e\u003c/code\u003e\u003c/a\u003e CHANGELOG.md: document \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/124\"\u003e#124\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/51e6714774262680e2454b1a9ccc49b4245b220a\"\u003e\u003ccode\u003e51e6714\u003c/code\u003e\u003c/a\u003e Merge branch 'perf/cache-column-decltype' into 'master'\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/8a6f33ce42bfa4a864daf8a4c97908e7691499d9\"\u003e\u003ccode\u003e8a6f33c\u003c/code\u003e\u003c/a\u003e rows: lock down ColumnTypeScanType under the decltype cache\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/f8fb6dd1d58d74d022b77cc385a9828a1ac49762\"\u003e\u003ccode\u003ef8fb6dd\u003c/code\u003e\u003c/a\u003e rows: cache the column decltype lookup once per result set\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/b17c0c7faf2247b8251efaa638ac101e5dea7ec1\"\u003e\u003ccode\u003eb17c0c7\u003c/code\u003e\u003c/a\u003e CHANGELOG.md: document \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/123\"\u003e#123\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/c80a08fbe3d37ffa8c7e669c46053b692135523b\"\u003e\u003ccode\u003ec80a08f\u003c/code\u003e\u003c/a\u003e Merge branch 'perf/column-text-zero-copy' into 'master'\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://gitlab.com/cznic/sqlite/compare/v1.50.1...v1.52.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\n\n[![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=modernc.org/sqlite\u0026package-manager=go_modules\u0026previous-version=1.50.1\u0026new-version=1.52.0)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)\n\nDependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.\n\n[//]: # (dependabot-automerge-start)\n[//]: # (dependabot-automerge-end)\n\n---\n\n\u003cdetails\u003e\n\u003csummary\u003eDependabot commands and options\u003c/summary\u003e\n\u003cbr /\u003e\n\nYou can trigger Dependabot actions by commenting on this PR:\n- `@dependabot rebase` will rebase this PR\n- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it\n- `@dependabot show \u003cdependency name\u003e ignore conditions` will show all of the ignore conditions of the specified dependency\n- `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)\n- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)\n- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)\n\n\n\u003c/details\u003e","html_url":"https://github.com/faultline-go/faultline/pull/23","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/faultline-go%2Ffaultline/issues/23","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/23/packages"},{"uuid":"4635505294","node_id":"PR_kwDOSCwGwM7lEW0X","number":58,"state":"open","title":"chore(deps): bump the minor-and-patch group across 1 directory with 4 updates","user":"dependabot[bot]","labels":["dependencies","go"],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":null,"author_association":null,"state_reason":null,"created_at":"2026-06-10T22:32:52.000Z","updated_at":"2026-06-10T22:52:24.000Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"chore(deps): bump","group_name":"minor-and-patch","update_count":4,"packages":[{"name":"github.com/godbus/dbus/v5","old_version":"5.1.0","new_version":"5.2.2","repository_url":"https://github.com/godbus/dbus"},{"name":"golang.org/x/sys","old_version":"0.44.0","new_version":"0.46.0","repository_url":"https://github.com/golang/sys"},{"name":"golang.org/x/term","old_version":"0.43.0","new_version":"0.44.0","repository_url":"https://github.com/golang/term"},{"name":"modernc.org/sqlite","old_version":"1.33.1","new_version":"1.52.0"}],"path":null,"ecosystem":"go"},"body":"Bumps the minor-and-patch group with 4 updates in the / directory: [github.com/godbus/dbus/v5](https://github.com/godbus/dbus), [golang.org/x/sys](https://github.com/golang/sys), [golang.org/x/term](https://github.com/golang/term) and [modernc.org/sqlite](https://gitlab.com/cznic/sqlite).\n\nUpdates `github.com/godbus/dbus/v5` from 5.1.0 to 5.2.2\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/godbus/dbus/releases\"\u003egithub.com/godbus/dbus/v5's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev5.2.2\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eDrop ununsed import in windows specific code by \u003ca href=\"https://github.com/dims\"\u003e\u003ccode\u003e@​dims\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/godbus/dbus/pull/427\"\u003egodbus/dbus#427\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eNew Contributors\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/dims\"\u003e\u003ccode\u003e@​dims\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/godbus/dbus/pull/427\"\u003egodbus/dbus#427\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/godbus/dbus/compare/v5.2.1...v5.2.2\"\u003ehttps://github.com/godbus/dbus/compare/v5.2.1...v5.2.2\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev5.2.1\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eci: bump freebsd to 14.3 by \u003ca href=\"https://github.com/kolyshkin\"\u003e\u003ccode\u003e@​kolyshkin\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/godbus/dbus/pull/421\"\u003egodbus/dbus#421\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAllow more than 32 containers / struct fields in a signature by \u003ca href=\"https://github.com/guelfey\"\u003e\u003ccode\u003e@​guelfey\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/godbus/dbus/pull/426\"\u003egodbus/dbus#426\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump golangci-lint to v2, fix some issues found by \u003ca href=\"https://github.com/kolyshkin\"\u003e\u003ccode\u003e@​kolyshkin\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/godbus/dbus/pull/419\"\u003egodbus/dbus#419\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix and simplify getHomeDir by \u003ca href=\"https://github.com/kolyshkin\"\u003e\u003ccode\u003e@​kolyshkin\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/godbus/dbus/pull/422\"\u003egodbus/dbus#422\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/godbus/dbus/compare/v5.2.0...v5.2.1\"\u003ehttps://github.com/godbus/dbus/compare/v5.2.0...v5.2.1\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev5.2.0\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFix default golangci-lint warnings, add it to GHA by \u003ca href=\"https://github.com/kolyshkin\"\u003e\u003ccode\u003e@​kolyshkin\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/godbus/dbus/pull/308\"\u003egodbus/dbus#308\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd example for grab media keys. by \u003ca href=\"https://github.com/linuxerwang\"\u003e\u003ccode\u003e@​linuxerwang\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/godbus/dbus/pull/316\"\u003egodbus/dbus#316\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eCI: enable more linters by \u003ca href=\"https://github.com/kolyshkin\"\u003e\u003ccode\u003e@​kolyshkin\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/godbus/dbus/pull/319\"\u003egodbus/dbus#319\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd rpic to projects using godbus by \u003ca href=\"https://github.com/stephenhu\"\u003e\u003ccode\u003e@​stephenhu\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/godbus/dbus/pull/320\"\u003egodbus/dbus#320\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eCI: Go 1.18 fixes by \u003ca href=\"https://github.com/guelfey\"\u003e\u003ccode\u003e@​guelfey\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/godbus/dbus/pull/322\"\u003egodbus/dbus#322\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eadd fuzz test for (signature) decoding by \u003ca href=\"https://github.com/guelfey\"\u003e\u003ccode\u003e@​guelfey\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/godbus/dbus/pull/323\"\u003egodbus/dbus#323\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003estyle: error should be returned as the last argument by \u003ca href=\"https://github.com/liaohanqin\"\u003e\u003ccode\u003e@​liaohanqin\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/godbus/dbus/pull/314\"\u003egodbus/dbus#314\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eexamples: Add asynchronous D-Bus call example in \u003ca href=\"https://redirect.github.com/godbus/dbus/pull/325\"\u003egodbus/dbus#325\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003edoc: fix spelling errors by \u003ca href=\"https://github.com/guelfey\"\u003e\u003ccode\u003e@​guelfey\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/godbus/dbus/pull/335\"\u003egodbus/dbus#335\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eReplace loop with call to copy() by \u003ca href=\"https://github.com/liaohanqin\"\u003e\u003ccode\u003e@​liaohanqin\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/godbus/dbus/pull/334\"\u003egodbus/dbus#334\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix(ci): apt-get update before installing dbus by \u003ca href=\"https://github.com/guelfey\"\u003e\u003ccode\u003e@​guelfey\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/godbus/dbus/pull/342\"\u003egodbus/dbus#342\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efreebsd: Remove the cgo dependency from transport_unixcred_freebsd.go by \u003ca href=\"https://github.com/dfr\"\u003e\u003ccode\u003e@​dfr\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/godbus/dbus/pull/332\"\u003egodbus/dbus#332\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eReduce allocs in decode function by \u003ca href=\"https://github.com/marselester\"\u003e\u003ccode\u003e@​marselester\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/godbus/dbus/pull/344\"\u003egodbus/dbus#344\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eSet argument of SetProperty to Variant by \u003ca href=\"https://github.com/WhyNotHugo\"\u003e\u003ccode\u003e@​WhyNotHugo\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/godbus/dbus/pull/239\"\u003egodbus/dbus#239\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eReduce allocs in ReadMessage (unix transport) by \u003ca href=\"https://github.com/marselester\"\u003e\u003ccode\u003e@​marselester\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/godbus/dbus/pull/347\"\u003egodbus/dbus#347\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix missing alignment in decodeU() by \u003ca href=\"https://github.com/felixonmars\"\u003e\u003ccode\u003e@​felixonmars\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/godbus/dbus/pull/348\"\u003egodbus/dbus#348\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd test case for bool alignment by \u003ca href=\"https://github.com/guelfey\"\u003e\u003ccode\u003e@​guelfey\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/godbus/dbus/pull/349\"\u003egodbus/dbus#349\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd go 1.19 support by \u003ca href=\"https://github.com/amenzhinsky\"\u003e\u003ccode\u003e@​amenzhinsky\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/godbus/dbus/pull/339\"\u003egodbus/dbus#339\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eCI tweaks by \u003ca href=\"https://github.com/guelfey\"\u003e\u003ccode\u003e@​guelfey\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/godbus/dbus/pull/360\"\u003egodbus/dbus#360\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eci: add FreBSD job using Cirrus by \u003ca href=\"https://github.com/guelfey\"\u003e\u003ccode\u003e@​guelfey\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/godbus/dbus/pull/361\"\u003egodbus/dbus#361\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eReduce decoder allocs due to int/uint decoding by \u003ca href=\"https://github.com/marselester\"\u003e\u003ccode\u003e@​marselester\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/godbus/dbus/pull/356\"\u003egodbus/dbus#356\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ePointer semantics in depthCounter by \u003ca href=\"https://github.com/marselester\"\u003e\u003ccode\u003e@​marselester\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/godbus/dbus/pull/352\"\u003egodbus/dbus#352\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003emessage: use Discard for encoding in IsValid by \u003ca href=\"https://github.com/guelfey\"\u003e\u003ccode\u003e@​guelfey\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/godbus/dbus/pull/362\"\u003egodbus/dbus#362\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eOmit extra (*Message).IsValid for outgoing messages by \u003ca href=\"https://github.com/guelfey\"\u003e\u003ccode\u003e@​guelfey\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/godbus/dbus/pull/363\"\u003egodbus/dbus#363\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eOnly check header validity when decoding messages by \u003ca href=\"https://github.com/guelfey\"\u003e\u003ccode\u003e@​guelfey\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/godbus/dbus/pull/364\"\u003egodbus/dbus#364\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eReplaced godoc url with pkg.go.dev url for v5. by \u003ca href=\"https://github.com/olivercalder\"\u003e\u003ccode\u003e@​olivercalder\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/godbus/dbus/pull/369\"\u003egodbus/dbus#369\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eReduce bytes to strings allocs in decoder by \u003ca href=\"https://github.com/marselester\"\u003e\u003ccode\u003e@​marselester\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/godbus/dbus/pull/367\"\u003egodbus/dbus#367\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efeat: add security-policy to project by \u003ca href=\"https://github.com/diogoteles08\"\u003e\u003ccode\u003e@​diogoteles08\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/godbus/dbus/pull/366\"\u003egodbus/dbus#366\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eauth: Do not send UID with external auth by \u003ca href=\"https://github.com/idleroamer\"\u003e\u003ccode\u003e@​idleroamer\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/godbus/dbus/pull/346\"\u003egodbus/dbus#346\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/godbus/dbus/commit/a8ac15ba63645f02ffd57f4b443203279ab40b30\"\u003e\u003ccode\u003ea8ac15b\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/godbus/dbus/issues/427\"\u003e#427\u003c/a\u003e from dims/drop-unused-import-in-windows-specific-code\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/godbus/dbus/commit/e638c721d984eab99e7a5d674ece2e17ea913aca\"\u003e\u003ccode\u003ee638c72\u003c/code\u003e\u003c/a\u003e Drop ununsed import in windows specific code\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/godbus/dbus/commit/20d95a3d9a57a5cb72cbdafb3fd9ecb6d2ccd038\"\u003e\u003ccode\u003e20d95a3\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/godbus/dbus/issues/422\"\u003e#422\u003c/a\u003e from kolyshkin/homedir\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/godbus/dbus/commit/d3fc3b583895e27c3337f77ea7134b0a81159955\"\u003e\u003ccode\u003ed3fc3b5\u003c/code\u003e\u003c/a\u003e Fix and simplify getHomeDir\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/godbus/dbus/commit/88ce46364db66b69f70017265a312b26ad7feba8\"\u003e\u003ccode\u003e88ce463\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/godbus/dbus/issues/419\"\u003e#419\u003c/a\u003e from kolyshkin/golangci-v2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/godbus/dbus/commit/feb892a0347fb361350229d969a2666a4791504e\"\u003e\u003ccode\u003efeb892a\u003c/code\u003e\u003c/a\u003e ci: bump golangci-lint to v2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/godbus/dbus/commit/c5ff039e5883a86f848ad6fbb820e471818c0bde\"\u003e\u003ccode\u003ec5ff039\u003c/code\u003e\u003c/a\u003e Ignore ST1008 warning for validSingle\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/godbus/dbus/commit/135663e52698feb5ad4b0733d7e457c82227214a\"\u003e\u003ccode\u003e135663e\u003c/code\u003e\u003c/a\u003e Omit embedded fields\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/godbus/dbus/commit/1b92cdcc136567c781bcc0ad1ccb4bd78b11e151\"\u003e\u003ccode\u003e1b92cdc\u003c/code\u003e\u003c/a\u003e variant_parser: simplify switch statement\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/godbus/dbus/commit/d03c0bea70755580de832141a43f544950e76fc7\"\u003e\u003ccode\u003ed03c0be\u003c/code\u003e\u003c/a\u003e Use switch where it makes sense\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/godbus/dbus/compare/v5.1.0...v5.2.2\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `golang.org/x/sys` from 0.44.0 to 0.46.0\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/golang/sys/commit/d58dcfa8a74514c0ef0fc401259156c5e2fc9ff5\"\u003e\u003ccode\u003ed58dcfa\u003c/code\u003e\u003c/a\u003e unix: add GPIO constants and structs\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/golang/sys/commit/397d5f80920585bc27433d878aba498d062f81e1\"\u003e\u003ccode\u003e397d5f8\u003c/code\u003e\u003c/a\u003e unix: update to Linux kernel 7.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/golang/sys/commit/0a387f7a07d7a0e9811f00603c10b4e5a94ab79c\"\u003e\u003ccode\u003e0a387f7\u003c/code\u003e\u003c/a\u003e cpu: detect zbc extension on riscv64\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/golang/sys/commit/758f71cb839d131daf0ba4befa6a2c6ceb21a649\"\u003e\u003ccode\u003e758f71c\u003c/code\u003e\u003c/a\u003e cpu: add LLACQ_SCREL, SCQ, DBAR_HINTS detection for loong64\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/golang/sys/commit/99666ae32e07f6403182a79cb5df0c417cbbf25f\"\u003e\u003ccode\u003e99666ae\u003c/code\u003e\u003c/a\u003e unix: merge Linux readv/writev implementation with Darwin/OpenBSD\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/golang/sys/commit/e4444cbaaaf61cecff8e635874066fcd5c841575\"\u003e\u003ccode\u003ee4444cb\u003c/code\u003e\u003c/a\u003e windows: add NtSetEaFile, NtQueryEaFile and NtQueryInformationFile\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/golang/sys/commit/04396e85d470b7f990a9a1df5c1a44dc8e30c292\"\u003e\u003ccode\u003e04396e8\u003c/code\u003e\u003c/a\u003e unix: add Readv, Writev, Preadv, Pwritev for OpenBSD\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/golang/sys/compare/v0.44.0...v0.46.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `golang.org/x/term` from 0.43.0 to 0.44.0\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/golang/term/commit/3b43943a9e7de876a5d5e1f5e7da7cdeae0f542a\"\u003e\u003ccode\u003e3b43943\u003c/code\u003e\u003c/a\u003e go.mod: update golang.org/x dependencies\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/golang/term/compare/v0.43.0...v0.44.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `modernc.org/sqlite` from 1.33.1 to 1.52.0\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://gitlab.com/cznic/sqlite/blob/master/CHANGELOG.md\"\u003emodernc.org/sqlite's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003eChangelog\u003c/h1\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e2026-06-10 v1.53.0:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdd a Go-facing wrapper for \u003ccode\u003eSQLITE_CONFIG_PCACHE2\u003c/code\u003e. \u003ccode\u003ePageCache\u003c/code\u003e is the factory and \u003ccode\u003eCache\u003c/code\u003e the per-database instance, both idiomatic Go interfaces; \u003ccode\u003ePage\u003c/code\u003e exposes the raw \u003ccode\u003eBuf\u003c/code\u003e and \u003ccode\u003eExtra\u003c/code\u003e pointers that SQLite reads through the C pcache contract. \u003ccode\u003eRegisterPageCache\u003c/code\u003e and \u003ccode\u003eMustRegisterPageCache\u003c/code\u003e install the module process-globally before the first \u003ccode\u003esql.Open\u003c/code\u003e; subsequent Open calls are gated through a one-shot \u003ccode\u003eXsqlite3_config(SQLITE_CONFIG_PCACHE2)\u003c/code\u003e so a too-late Register returns \u003ccode\u003eErrPageCacheTooLate\u003c/code\u003e rather than silently falling through to the built-in pcache1. The binding owns the \u003ccode\u003esqlite3_pcache_page\u003c/code\u003e stub and re-consults the implementation on every Fetch, reusing the stub only when the returned \u003ccode\u003ePage\u003c/code\u003e value is unchanged, which keeps a bounded/evicting purgeable cache safe by construction.\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/126\"\u003e#126\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/126\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/126\u003c/a\u003e), thanks Ian Chechin!\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003emodernc.org/sqlite/pcache\u003c/code\u003e, the reference page-cache implementation that accompanies the \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/126\"\u003e#126\u003c/a\u003e \u003ccode\u003eSQLITE_CONFIG_PCACHE2\u003c/code\u003e wrapper. \u003ccode\u003epcache.New\u003c/code\u003e returns a \u003ccode\u003e*Pool\u003c/code\u003e satisfying the \u003ccode\u003ePageCache\u003c/code\u003e interface; register it once with \u003ccode\u003esqlite.MustRegisterPageCache(pcache.New())\u003c/code\u003e and every connection opened afterwards draws its pages from it. Each \u003ccode\u003ePool.Create\u003c/code\u003e mints a fresh per-database \u003ccode\u003eCache\u003c/code\u003e: a bounded, LRU-evicting page store that honours the \u003ccode\u003ePRAGMA cache_size\u003c/code\u003e soft cap and releases the least-recently-unpinned page when it must make room. Page memory — the \u003ccode\u003eBuf\u003c/code\u003e and \u003ccode\u003eExtra\u003c/code\u003e buffers SQLite reads through — is allocated with \u003ccode\u003elibc.Xmalloc\u003c/code\u003e/\u003ccode\u003elibc.Xcalloc\u003c/code\u003e and therefore lives off the Go heap, which keeps SQLite's interior pointer arithmetic on the page extras from tripping the race detector's checkptr enforcement. \u003ccode\u003ePool.Stats\u003c/code\u003e reports aggregate lifetime counters (hits, misses, allocs, evictions, rekeys, truncates, caches) across every cache a Pool has created, so hit/miss/eviction behaviour is observable without instrumenting individual caches. Cross-connection page sharing is out of scope for now; each \u003ccode\u003eCreate\u003c/code\u003e returns an independent per-database cache.\u003c/li\u003e\n\u003cli\u003eValidated end-to-end against the \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/126\"\u003e#126\u003c/a\u003e stress workload (\u003ccode\u003ecache_size=16\u003c/code\u003e, 4000 BLOB rows with DELETE and \u003ccode\u003eincremental_vacuum\u003c/code\u003e, \u003ccode\u003eintegrity_check\u003c/code\u003e clean under \u003ccode\u003e-race\u003c/code\u003e) and benchmarked for the memory-utilization goal tracked in [GitLab issue \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/204\"\u003e#204\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/issues/204\"\u003ehttps://gitlab.com/cznic/sqlite/-/issues/204\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/127\"\u003e#127\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/127\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/127\u003c/a\u003e), thanks Ian Chechin!\u003c/li\u003e\n\u003cli\u003eAdd an opt-in \u003ccode\u003e_dqs\u003c/code\u003e DSN query parameter that disables SQLite's double-quoted string literal compatibility quirk on a per-connection basis. When \u003ccode\u003e_dqs=0\u003c/code\u003e (or any \u003ccode\u003estrconv.ParseBool\u003c/code\u003e false value) is supplied, the driver calls \u003ccode\u003esqlite3_db_config\u003c/code\u003e with \u003ccode\u003eSQLITE_DBCONFIG_DQS_DDL\u003c/code\u003e and \u003ccode\u003eSQLITE_DBCONFIG_DQS_DML\u003c/code\u003e set to off before any statement is prepared, so a double-quoted identifier that fails to resolve raises a parse error instead of silently falling back to a string literal. Absence of the parameter, or \u003ccode\u003e_dqs=1\u003c/code\u003e, leaves SQLite's default behavior unchanged; existing DSNs continue to work byte-for-byte. Resolves [GitLab issue \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/61\"\u003e#61\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/issues/61\"\u003ehttps://gitlab.com/cznic/sqlite/-/issues/61\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/128\"\u003e#128\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/128\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/128\u003c/a\u003e), thanks Ian Chechin!\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e2026-06-06 v1.52.0:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eUpgrade to \u003ca href=\"https://sqlite.org/releaselog/3_53_2.html\"\u003eSQLite 3.53.2\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003eBackup.Remaining\u003c/code\u003e and \u003ccode\u003eBackup.PageCount\u003c/code\u003e, thin wrappers around the existing \u003ccode\u003esqlite3_backup_remaining\u003c/code\u003e and \u003ccode\u003esqlite3_backup_pagecount\u003c/code\u003e C symbols. Together they expose the per-\u003ccode\u003eStep\u003c/code\u003e progress counters that the underlying backup object already maintains, enabling progress reporting during online backups without dropping to \u003ccode\u003emodernc.org/sqlite/lib\u003c/code\u003e directly.\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/122\"\u003e#122\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/122\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/122\u003c/a\u003e), thanks Ian Chechin!\u003c/li\u003e\n\u003cli\u003eDrop the redundant second copy in \u003ccode\u003e(*conn).columnText\u003c/code\u003e, the path that backs every \u003ccode\u003eRows.Scan\u003c/code\u003e into a Go \u003ccode\u003estring\u003c/code\u003e for a TEXT column. The value's bytes are still copied once out of SQLite-owned memory into a fresh Go buffer; that buffer is then reinterpreted as the result string with \u003ccode\u003eunsafe.String\u003c/code\u003e rather than copied a second time by the implicit \u003ccode\u003estring([]byte)\u003c/code\u003e conversion. This removes one allocation per TEXT value per row and roughly halves the bytes allocated on that path; on the new \u003ccode\u003eBenchmarkColumnTextScan\u003c/code\u003e cases it is ~13–20% faster for payloads of 256 B and larger, with no measurable change for very short strings. Purely internal: no API or behavioral change, and the returned string never aliases SQLite's buffer.\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/123\"\u003e#123\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/123\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/123\u003c/a\u003e), thanks Ian Chechin!\u003c/li\u003e\n\u003cli\u003eCache each result column's declared type once per result set in \u003ccode\u003enewRows\u003c/code\u003e instead of recomputing it on every row. The TEXT branch of \u003ccode\u003eRows.Next\u003c/code\u003e calls \u003ccode\u003eColumnTypeDatabaseTypeName\u003c/code\u003e for every TEXT column on every row (independent of any DSN flag), which previously did a \u003ccode\u003elibc.GoString\u003c/code\u003e + \u003ccode\u003estrings.ToUpper\u003c/code\u003e each time; that lookup is now a single index into a cached, pre-uppercased \u003ccode\u003e[]string\u003c/code\u003e, and \u003ccode\u003eColumnTypeScanType\u003c/code\u003e reads the same cache and drops its per-call \u003ccode\u003estrings.ToLower\u003c/code\u003e. The declared type is fixed for the lifetime of a prepared statement, so the C round-trip is paid once per column rather than once per column per row, removing exactly 1 alloc + 8 B per TEXT column per row from the \u003ccode\u003eNext\u003c/code\u003e hot path. The new \u003ccode\u003eBenchmarkTextToTimeScan\u003c/code\u003e cases show ~7% faster on a 1000-row DATETIME SELECT under \u003ccode\u003e_texttotime=1\u003c/code\u003e. Purely internal: \u003ccode\u003eColumnTypeDatabaseTypeName\u003c/code\u003e and \u003ccode\u003eColumnTypeScanType\u003c/code\u003e return identical values, no API or behavioral change.\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/124\"\u003e#124\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/124\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/124\u003c/a\u003e), thanks Ian Chechin!\u003c/li\u003e\n\u003cli\u003eCache, per result column, the \u003ccode\u003eparseTimeFormats\u003c/code\u003e index that first parsed a TEXT-stored DATE/DATETIME/TIMESTAMP value, and try that format first on later rows instead of re-walking the list from the top. \u003ccode\u003e(*conn).parseTime\u003c/code\u003e previously ran \u003ccode\u003etime.Parse\u003c/code\u003e down the format list on every such row; for the canonical SQLite TEXT datetime format every row paid two failed \u003ccode\u003etime.Parse\u003c/code\u003e attempts — each allocating a \u003ccode\u003e*time.ParseError\u003c/code\u003e — before the match. On a 1000-row DATETIME TEXT SELECT this cuts ~50% of allocs/op and ~57% of B/op and is ~37% faster. The fall-through chain is preserved exactly: the seven formats are mutually exclusive, so the cached hint can never select a different match than the in-order scan, and the parsed \u003ccode\u003edriver.Value\u003c/code\u003e is identical to before. Purely internal: no API or behavioral change.\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/125\"\u003e#125\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/125\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/125\u003c/a\u003e), thanks Ian Chechin!\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e2026-05-28 v1.51.0:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003ePool the \u003ccode\u003e[]driver.Value\u003c/code\u003e slice passed to scalar/aggregate UDF callbacks and to vtab \u003ccode\u003eFilter\u003c/code\u003e/\u003ccode\u003eInsert\u003c/code\u003e/\u003ccode\u003eUpdate\u003c/code\u003e callbacks, eliminating the dominant per-row allocation on UDF-heavy queries. Benchmarks on a 1000-row, 3-arg noop scalar UDF show ~40% fewer bytes/op and ~15% fewer allocs/op.\u003c/li\u003e\n\u003cli\u003eDocument the matching \u0026quot;arguments are not valid past return\u0026quot; contract on \u003ccode\u003evtab.Cursor.Filter\u003c/code\u003e and \u003ccode\u003evtab.Updater.Insert\u003c/code\u003e/\u003ccode\u003eUpdate\u003c/code\u003e, consistent with the existing rule for \u003ccode\u003eFunctionImpl.Scalar\u003c/code\u003e / \u003ccode\u003eAggregateFunction.Step\u003c/code\u003e / \u003ccode\u003eWindowInverse\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003eResolves [GitLab issue \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/226\"\u003e#226\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/issues/226\"\u003ehttps://gitlab.com/cznic/sqlite/-/issues/226\u003c/a\u003e). See [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/114\"\u003e#114\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/114\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/114\u003c/a\u003e), thanks Ian Chechin!\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003eFileControl.FileControlDataVersion\u003c/code\u003e, a wrapper around \u003ccode\u003eSQLITE_FCNTL_DATA_VERSION\u003c/code\u003e for observing pager-cache data-version changes, including those made on the same connection. Useful as a primitive for application-level cache invalidation.\u003c/li\u003e\n\u003cli\u003eExposed via the idiomatic \u003ccode\u003edatabase/sql\u003c/code\u003e escape hatch \u003ccode\u003e(*sql.Conn).Raw()\u003c/code\u003e, consistent with the existing \u003ccode\u003eFileControlPersistWAL\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/115\"\u003e#115\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/115\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/115\u003c/a\u003e), thanks Ian Chechin!\u003c/li\u003e\n\u003cli\u003eFix a regression where in-memory connections (\u003ccode\u003e:memory:\u003c/code\u003e, \u003ccode\u003efile::memory:\u003c/code\u003e, shared-cache memory URIs) were discarded by \u003ccode\u003edatabase/sql\u003c/code\u003e after a context-cancelled query, taking the entire in-memory store with them. The fix for \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/198\"\u003e#198\u003c/a\u003e had added an \u003ccode\u003esqlite3_is_interrupted\u003c/code\u003e check to the connection validator that mistakenly applied to in-memory connections too, re-introducing the bug originally fixed by !74. File-backed connections keep the existing behaviour and are still discarded after an interrupt.\u003c/li\u003e\n\u003cli\u003eResolves [GitLab issue \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/196\"\u003e#196\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/issues/196\"\u003ehttps://gitlab.com/cznic/sqlite/-/issues/196\u003c/a\u003e). See [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/116\"\u003e#116\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/116\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/116\u003c/a\u003e), thanks Ian Chechin!\u003c/li\u003e\n\u003cli\u003eAdd an opt-in \u003ccode\u003eFunctionImpl.VolatileArgs\u003c/code\u003e flag that hands TEXT and BLOB arguments to scalar and aggregate UDF callbacks as zero-copy views (\u003ccode\u003eunsafe.String\u003c/code\u003e/\u003ccode\u003eunsafe.Slice\u003c/code\u003e) over SQLite's own value buffers, eliminating the per-argument \u003ccode\u003elibc.GoString\u003c/code\u003e/\u003ccode\u003emake([]byte)\u003c/code\u003e copy that the \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/226\"\u003e#226\u003c/a\u003e slice-pooling left as the remaining per-row allocation. On the same 1000-row, 3-arg (INTEGER/TEXT/BLOB) noop scalar UDF this removes a further ~35% of allocs/op and ~11% of bytes/op on top of \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/226\"\u003e#226\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003eThe views are valid only for the duration of the callback and must not be retained past return or across rows; a callback that needs to keep a value must copy it. With \u003ccode\u003eVolatileArgs\u003c/code\u003e unset (the default) arguments keep the existing copied, caller-owned semantics, so the flag is fully backward compatible; it has no effect on integer, float, time, or NULL arguments.\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/120\"\u003e#120\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/120\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/120\u003c/a\u003e), thanks Ian Chechin!\u003c/li\u003e\n\u003cli\u003eExtend the opt-in \u003ccode\u003eVolatileArgs\u003c/code\u003e zero-copy TEXT/BLOB argument access from \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/120\"\u003e#120\u003c/a\u003e to the virtual-table \u003ccode\u003eCursor.Filter\u003c/code\u003e (\u003ccode\u003exFilter\u003c/code\u003e) and \u003ccode\u003eUpdater.Insert\u003c/code\u003e/\u003ccode\u003eUpdate\u003c/code\u003e (\u003ccode\u003exUpdate\u003c/code\u003e) callbacks. A \u003ccode\u003evtab.Module\u003c/code\u003e opts in by implementing the new optional \u003ccode\u003evtab.VolatileArgsOpter\u003c/code\u003e interface (\u003ccode\u003eVolatileArgs() bool\u003c/code\u003e); the flag is read once at module registration and shared by every table created from it. On a vtab call carrying one TEXT and one BLOB argument this removes 2 allocs/op (one \u003ccode\u003elibc.GoString\u003c/code\u003e, one \u003ccode\u003emake([]byte)\u003c/code\u003e) on each of the Filter and Update paths.\u003c/li\u003e\n\u003cli\u003eThe same safety contract as \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/120\"\u003e#120\u003c/a\u003e applies: the views are valid only for the duration of the callback and must not be retained past return or across rows; a callback that needs to keep a value must copy it. Modules that do not implement \u003ccode\u003eVolatileArgsOpter\u003c/code\u003e (the default for all existing modules) are byte-for-byte unchanged, and the flag has no effect on integer, float, time, or NULL arguments.\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/121\"\u003e#121\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/121\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/121\u003c/a\u003e), thanks Ian Chechin!\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e2026-05-10 v1.50.1:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eUpgrade to \u003ca href=\"https://sqlite.org/releaselog/3_53_1.html\"\u003eSQLite 3.53.1\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e2026-04-24 v1.50.0:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eUpgrade to sqlite-vec \u003ca href=\"https://github.com/asg017/sqlite-vec/releases/tag/v0.1.9\"\u003ev0.1.9\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003eIntroduce \u003ccode\u003eColumnInfo\u003c/code\u003e, enabling dynamic query builders and ORMs to retrieve underlying SQLite C-API metadata (\u003ccode\u003eOriginName\u003c/code\u003e, \u003ccode\u003eTableName\u003c/code\u003e, \u003ccode\u003eDatabaseName\u003c/code\u003e, and \u003ccode\u003eDeclType\u003c/code\u003e).\u003c/li\u003e\n\u003cli\u003eThis feature is exposed via the idiomatic \u003ccode\u003edatabase/sql\u003c/code\u003e escape hatch \u003ccode\u003e(*sql.Conn).Raw()\u003c/code\u003e, avoiding custom statement handles and keeping the standard library workflow intact.\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/113\"\u003e#113\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/113\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/113\u003c/a\u003e), thanks Josh Bleecher Snyder!\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e2026-04-17 v1.49.0: Upgrade to \u003ca href=\"https://sqlite.org/releaselog/3_53_0.html\"\u003eSQLite 3.53.0\u003c/a\u003e.\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdded \u003ccode\u003e-DSQLITE_ENABLE_DBPAGE_VTAB\u003c/code\u003e to the transpilation. See \u003ca href=\"https://www.sqlite.org/dbpage.html\"\u003e\u0026quot;The SQLITE_DBPAGE Virtual Table\u0026quot;\u003c/a\u003e for details.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/66b4d20f42485b9823a2d35c86b08335d927d0e5\"\u003e\u003ccode\u003e66b4d20\u003c/code\u003e\u003c/a\u003e release v1.52.0, upgrade to SQLite 3.53.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/e3f64ec2f026880b2fbc868f195863648cd07fb3\"\u003e\u003ccode\u003ee3f64ec\u003c/code\u003e\u003c/a\u003e rows: clarify parseFmtIdx mixed-column cost; CHANGELOG.md: document \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/125\"\u003e#125\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/448579342c2da286622d7cab5db84a746124e7b1\"\u003e\u003ccode\u003e4485793\u003c/code\u003e\u003c/a\u003e Merge branch 'perf/cache-parse-time-format' into 'master'\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/3638d17bf28d730d7dd90ff5cf3f93c45b9d752e\"\u003e\u003ccode\u003e3638d17\u003c/code\u003e\u003c/a\u003e rows: cache the parseTime format index per result column\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/7da793ef16502dced14643451a8bec834f999d9e\"\u003e\u003ccode\u003e7da793e\u003c/code\u003e\u003c/a\u003e CHANGELOG.md: document \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/124\"\u003e#124\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/51e6714774262680e2454b1a9ccc49b4245b220a\"\u003e\u003ccode\u003e51e6714\u003c/code\u003e\u003c/a\u003e Merge branch 'perf/cache-column-decltype' into 'master'\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/8a6f33ce42bfa4a864daf8a4c97908e7691499d9\"\u003e\u003ccode\u003e8a6f33c\u003c/code\u003e\u003c/a\u003e rows: lock down ColumnTypeScanType under the decltype cache\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/f8fb6dd1d58d74d022b77cc385a9828a1ac49762\"\u003e\u003ccode\u003ef8fb6dd\u003c/code\u003e\u003c/a\u003e rows: cache the column decltype lookup once per result set\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/b17c0c7faf2247b8251efaa638ac101e5dea7ec1\"\u003e\u003ccode\u003eb17c0c7\u003c/code\u003e\u003c/a\u003e CHANGELOG.md: document \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/123\"\u003e#123\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/c80a08fbe3d37ffa8c7e669c46053b692135523b\"\u003e\u003ccode\u003ec80a08f\u003c/code\u003e\u003c/a\u003e Merge branch 'perf/column-text-zero-copy' into 'master'\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://gitlab.com/cznic/sqlite/compare/v1.33.1...v1.52.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n","html_url":"https://github.com/Hanalyx/kensa/pull/58","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/Hanalyx%2Fkensa/issues/58","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/58/packages"},{"uuid":"4628741309","node_id":"PR_kwDOSVhE4c7kuKm1","number":20,"state":"closed","title":"build(deps): bump modernc.org/sqlite from 1.51.0 to 1.52.0","user":"dependabot[bot]","labels":["dependencies","go","build","merge-risk: 🚨 compatibility","rating: 🐚 platinum hermit","status: 👀 ready for maintainer look","P3"],"assignees":["vincentkoc"],"locked":false,"comments_count":2,"pull_request":true,"closed_at":"2026-06-10T06:57:32.000Z","author_association":null,"state_reason":null,"created_at":"2026-06-10T06:43:56.000Z","updated_at":"2026-06-10T06:57:59.000Z","time_to_close":816,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"build(deps)","packages":[{"name":"modernc.org/sqlite","old_version":"1.51.0","new_version":"1.52.0","repository_url":null}],"path":null,"ecosystem":"go"},"body":"Bumps [modernc.org/sqlite](https://gitlab.com/cznic/sqlite) from 1.51.0 to 1.52.0.\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://gitlab.com/cznic/sqlite/blob/master/CHANGELOG.md\"\u003emodernc.org/sqlite's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003eChangelog\u003c/h1\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eTBC vNEXT:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdd a Go-facing wrapper for \u003ccode\u003eSQLITE_CONFIG_PCACHE2\u003c/code\u003e. \u003ccode\u003ePageCache\u003c/code\u003e is the factory and \u003ccode\u003eCache\u003c/code\u003e the per-database instance, both idiomatic Go interfaces; \u003ccode\u003ePage\u003c/code\u003e exposes the raw \u003ccode\u003eBuf\u003c/code\u003e and \u003ccode\u003eExtra\u003c/code\u003e pointers that SQLite reads through the C pcache contract. \u003ccode\u003eRegisterPageCache\u003c/code\u003e and \u003ccode\u003eMustRegisterPageCache\u003c/code\u003e install the module process-globally before the first \u003ccode\u003esql.Open\u003c/code\u003e; subsequent Open calls are gated through a one-shot \u003ccode\u003eXsqlite3_config(SQLITE_CONFIG_PCACHE2)\u003c/code\u003e so a too-late Register returns \u003ccode\u003eErrPageCacheTooLate\u003c/code\u003e rather than silently falling through to the built-in pcache1. The binding owns the \u003ccode\u003esqlite3_pcache_page\u003c/code\u003e stub and re-consults the implementation on every Fetch, reusing the stub only when the returned \u003ccode\u003ePage\u003c/code\u003e value is unchanged, which keeps a bounded/evicting purgeable cache safe by construction.\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/126\"\u003e#126\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/126\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/126\u003c/a\u003e), thanks Ian Chechin!\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e2026-06-06 v1.52.0:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eUpgrade to \u003ca href=\"https://sqlite.org/releaselog/3_53_2.html\"\u003eSQLite 3.53.2\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003eBackup.Remaining\u003c/code\u003e and \u003ccode\u003eBackup.PageCount\u003c/code\u003e, thin wrappers around the existing \u003ccode\u003esqlite3_backup_remaining\u003c/code\u003e and \u003ccode\u003esqlite3_backup_pagecount\u003c/code\u003e C symbols. Together they expose the per-\u003ccode\u003eStep\u003c/code\u003e progress counters that the underlying backup object already maintains, enabling progress reporting during online backups without dropping to \u003ccode\u003emodernc.org/sqlite/lib\u003c/code\u003e directly.\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/122\"\u003e#122\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/122\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/122\u003c/a\u003e), thanks Ian Chechin!\u003c/li\u003e\n\u003cli\u003eDrop the redundant second copy in \u003ccode\u003e(*conn).columnText\u003c/code\u003e, the path that backs every \u003ccode\u003eRows.Scan\u003c/code\u003e into a Go \u003ccode\u003estring\u003c/code\u003e for a TEXT column. The value's bytes are still copied once out of SQLite-owned memory into a fresh Go buffer; that buffer is then reinterpreted as the result string with \u003ccode\u003eunsafe.String\u003c/code\u003e rather than copied a second time by the implicit \u003ccode\u003estring([]byte)\u003c/code\u003e conversion. This removes one allocation per TEXT value per row and roughly halves the bytes allocated on that path; on the new \u003ccode\u003eBenchmarkColumnTextScan\u003c/code\u003e cases it is ~13–20% faster for payloads of 256 B and larger, with no measurable change for very short strings. Purely internal: no API or behavioral change, and the returned string never aliases SQLite's buffer.\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/123\"\u003e#123\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/123\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/123\u003c/a\u003e), thanks Ian Chechin!\u003c/li\u003e\n\u003cli\u003eCache each result column's declared type once per result set in \u003ccode\u003enewRows\u003c/code\u003e instead of recomputing it on every row. The TEXT branch of \u003ccode\u003eRows.Next\u003c/code\u003e calls \u003ccode\u003eColumnTypeDatabaseTypeName\u003c/code\u003e for every TEXT column on every row (independent of any DSN flag), which previously did a \u003ccode\u003elibc.GoString\u003c/code\u003e + \u003ccode\u003estrings.ToUpper\u003c/code\u003e each time; that lookup is now a single index into a cached, pre-uppercased \u003ccode\u003e[]string\u003c/code\u003e, and \u003ccode\u003eColumnTypeScanType\u003c/code\u003e reads the same cache and drops its per-call \u003ccode\u003estrings.ToLower\u003c/code\u003e. The declared type is fixed for the lifetime of a prepared statement, so the C round-trip is paid once per column rather than once per column per row, removing exactly 1 alloc + 8 B per TEXT column per row from the \u003ccode\u003eNext\u003c/code\u003e hot path. The new \u003ccode\u003eBenchmarkTextToTimeScan\u003c/code\u003e cases show ~7% faster on a 1000-row DATETIME SELECT under \u003ccode\u003e_texttotime=1\u003c/code\u003e. Purely internal: \u003ccode\u003eColumnTypeDatabaseTypeName\u003c/code\u003e and \u003ccode\u003eColumnTypeScanType\u003c/code\u003e return identical values, no API or behavioral change.\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/124\"\u003e#124\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/124\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/124\u003c/a\u003e), thanks Ian Chechin!\u003c/li\u003e\n\u003cli\u003eCache, per result column, the \u003ccode\u003eparseTimeFormats\u003c/code\u003e index that first parsed a TEXT-stored DATE/DATETIME/TIMESTAMP value, and try that format first on later rows instead of re-walking the list from the top. \u003ccode\u003e(*conn).parseTime\u003c/code\u003e previously ran \u003ccode\u003etime.Parse\u003c/code\u003e down the format list on every such row; for the canonical SQLite TEXT datetime format every row paid two failed \u003ccode\u003etime.Parse\u003c/code\u003e attempts — each allocating a \u003ccode\u003e*time.ParseError\u003c/code\u003e — before the match. On a 1000-row DATETIME TEXT SELECT this cuts ~50% of allocs/op and ~57% of B/op and is ~37% faster. The fall-through chain is preserved exactly: the seven formats are mutually exclusive, so the cached hint can never select a different match than the in-order scan, and the parsed \u003ccode\u003edriver.Value\u003c/code\u003e is identical to before. Purely internal: no API or behavioral change.\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/125\"\u003e#125\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/125\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/125\u003c/a\u003e), thanks Ian Chechin!\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e2026-05-28 v1.51.0:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003ePool the \u003ccode\u003e[]driver.Value\u003c/code\u003e slice passed to scalar/aggregate UDF callbacks and to vtab \u003ccode\u003eFilter\u003c/code\u003e/\u003ccode\u003eInsert\u003c/code\u003e/\u003ccode\u003eUpdate\u003c/code\u003e callbacks, eliminating the dominant per-row allocation on UDF-heavy queries. Benchmarks on a 1000-row, 3-arg noop scalar UDF show ~40% fewer bytes/op and ~15% fewer allocs/op.\u003c/li\u003e\n\u003cli\u003eDocument the matching \u0026quot;arguments are not valid past return\u0026quot; contract on \u003ccode\u003evtab.Cursor.Filter\u003c/code\u003e and \u003ccode\u003evtab.Updater.Insert\u003c/code\u003e/\u003ccode\u003eUpdate\u003c/code\u003e, consistent with the existing rule for \u003ccode\u003eFunctionImpl.Scalar\u003c/code\u003e / \u003ccode\u003eAggregateFunction.Step\u003c/code\u003e / \u003ccode\u003eWindowInverse\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003eResolves [GitLab issue \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/226\"\u003e#226\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/issues/226\"\u003ehttps://gitlab.com/cznic/sqlite/-/issues/226\u003c/a\u003e). See [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/114\"\u003e#114\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/114\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/114\u003c/a\u003e), thanks Ian Chechin!\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003eFileControl.FileControlDataVersion\u003c/code\u003e, a wrapper around \u003ccode\u003eSQLITE_FCNTL_DATA_VERSION\u003c/code\u003e for observing pager-cache data-version changes, including those made on the same connection. Useful as a primitive for application-level cache invalidation.\u003c/li\u003e\n\u003cli\u003eExposed via the idiomatic \u003ccode\u003edatabase/sql\u003c/code\u003e escape hatch \u003ccode\u003e(*sql.Conn).Raw()\u003c/code\u003e, consistent with the existing \u003ccode\u003eFileControlPersistWAL\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/115\"\u003e#115\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/115\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/115\u003c/a\u003e), thanks Ian Chechin!\u003c/li\u003e\n\u003cli\u003eFix a regression where in-memory connections (\u003ccode\u003e:memory:\u003c/code\u003e, \u003ccode\u003efile::memory:\u003c/code\u003e, shared-cache memory URIs) were discarded by \u003ccode\u003edatabase/sql\u003c/code\u003e after a context-cancelled query, taking the entire in-memory store with them. The fix for \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/198\"\u003e#198\u003c/a\u003e had added an \u003ccode\u003esqlite3_is_interrupted\u003c/code\u003e check to the connection validator that mistakenly applied to in-memory connections too, re-introducing the bug originally fixed by !74. File-backed connections keep the existing behaviour and are still discarded after an interrupt.\u003c/li\u003e\n\u003cli\u003eResolves [GitLab issue \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/196\"\u003e#196\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/issues/196\"\u003ehttps://gitlab.com/cznic/sqlite/-/issues/196\u003c/a\u003e). See [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/116\"\u003e#116\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/116\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/116\u003c/a\u003e), thanks Ian Chechin!\u003c/li\u003e\n\u003cli\u003eAdd an opt-in \u003ccode\u003eFunctionImpl.VolatileArgs\u003c/code\u003e flag that hands TEXT and BLOB arguments to scalar and aggregate UDF callbacks as zero-copy views (\u003ccode\u003eunsafe.String\u003c/code\u003e/\u003ccode\u003eunsafe.Slice\u003c/code\u003e) over SQLite's own value buffers, eliminating the per-argument \u003ccode\u003elibc.GoString\u003c/code\u003e/\u003ccode\u003emake([]byte)\u003c/code\u003e copy that the \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/226\"\u003e#226\u003c/a\u003e slice-pooling left as the remaining per-row allocation. On the same 1000-row, 3-arg (INTEGER/TEXT/BLOB) noop scalar UDF this removes a further ~35% of allocs/op and ~11% of bytes/op on top of \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/226\"\u003e#226\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003eThe views are valid only for the duration of the callback and must not be retained past return or across rows; a callback that needs to keep a value must copy it. With \u003ccode\u003eVolatileArgs\u003c/code\u003e unset (the default) arguments keep the existing copied, caller-owned semantics, so the flag is fully backward compatible; it has no effect on integer, float, time, or NULL arguments.\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/120\"\u003e#120\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/120\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/120\u003c/a\u003e), thanks Ian Chechin!\u003c/li\u003e\n\u003cli\u003eExtend the opt-in \u003ccode\u003eVolatileArgs\u003c/code\u003e zero-copy TEXT/BLOB argument access from \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/120\"\u003e#120\u003c/a\u003e to the virtual-table \u003ccode\u003eCursor.Filter\u003c/code\u003e (\u003ccode\u003exFilter\u003c/code\u003e) and \u003ccode\u003eUpdater.Insert\u003c/code\u003e/\u003ccode\u003eUpdate\u003c/code\u003e (\u003ccode\u003exUpdate\u003c/code\u003e) callbacks. A \u003ccode\u003evtab.Module\u003c/code\u003e opts in by implementing the new optional \u003ccode\u003evtab.VolatileArgsOpter\u003c/code\u003e interface (\u003ccode\u003eVolatileArgs() bool\u003c/code\u003e); the flag is read once at module registration and shared by every table created from it. On a vtab call carrying one TEXT and one BLOB argument this removes 2 allocs/op (one \u003ccode\u003elibc.GoString\u003c/code\u003e, one \u003ccode\u003emake([]byte)\u003c/code\u003e) on each of the Filter and Update paths.\u003c/li\u003e\n\u003cli\u003eThe same safety contract as \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/120\"\u003e#120\u003c/a\u003e applies: the views are valid only for the duration of the callback and must not be retained past return or across rows; a callback that needs to keep a value must copy it. Modules that do not implement \u003ccode\u003eVolatileArgsOpter\u003c/code\u003e (the default for all existing modules) are byte-for-byte unchanged, and the flag has no effect on integer, float, time, or NULL arguments.\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/121\"\u003e#121\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/121\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/121\u003c/a\u003e), thanks Ian Chechin!\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e2026-05-10 v1.50.1:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eUpgrade to \u003ca href=\"https://sqlite.org/releaselog/3_53_1.html\"\u003eSQLite 3.53.1\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e2026-04-24 v1.50.0:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eUpgrade to sqlite-vec \u003ca href=\"https://github.com/asg017/sqlite-vec/releases/tag/v0.1.9\"\u003ev0.1.9\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003eIntroduce \u003ccode\u003eColumnInfo\u003c/code\u003e, enabling dynamic query builders and ORMs to retrieve underlying SQLite C-API metadata (\u003ccode\u003eOriginName\u003c/code\u003e, \u003ccode\u003eTableName\u003c/code\u003e, \u003ccode\u003eDatabaseName\u003c/code\u003e, and \u003ccode\u003eDeclType\u003c/code\u003e).\u003c/li\u003e\n\u003cli\u003eThis feature is exposed via the idiomatic \u003ccode\u003edatabase/sql\u003c/code\u003e escape hatch \u003ccode\u003e(*sql.Conn).Raw()\u003c/code\u003e, avoiding custom statement handles and keeping the standard library workflow intact.\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/113\"\u003e#113\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/113\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/113\u003c/a\u003e), thanks Josh Bleecher Snyder!\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e2026-04-17 v1.49.0: Upgrade to \u003ca href=\"https://sqlite.org/releaselog/3_53_0.html\"\u003eSQLite 3.53.0\u003c/a\u003e.\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdded \u003ccode\u003e-DSQLITE_ENABLE_DBPAGE_VTAB\u003c/code\u003e to the transpilation. See \u003ca href=\"https://www.sqlite.org/dbpage.html\"\u003e\u0026quot;The SQLITE_DBPAGE Virtual Table\u0026quot;\u003c/a\u003e for details.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e2026-04-06 v1.48.2:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eFix ABI mapping mismatch in the pre-update hook trampoline that caused silent truncation of large 64-bit RowIDs.\u003c/li\u003e\n\u003cli\u003eEnsure the Go trampoline signature correctly aligns with the public \u003ccode\u003esqlite3_preupdate_hook\u003c/code\u003e C API, preventing data corruption for high-entropy keys (e.g., Snowflake IDs).\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/98\"\u003e#98\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/98\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/98\u003c/a\u003e), thanks Josh Bleecher Snyder!\u003c/li\u003e\n\u003cli\u003eFix the memory allocator used in \u003ccode\u003e(*conn).Deserialize\u003c/code\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/66b4d20f42485b9823a2d35c86b08335d927d0e5\"\u003e\u003ccode\u003e66b4d20\u003c/code\u003e\u003c/a\u003e release v1.52.0, upgrade to SQLite 3.53.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/e3f64ec2f026880b2fbc868f195863648cd07fb3\"\u003e\u003ccode\u003ee3f64ec\u003c/code\u003e\u003c/a\u003e rows: clarify parseFmtIdx mixed-column cost; CHANGELOG.md: document \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/125\"\u003e#125\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/448579342c2da286622d7cab5db84a746124e7b1\"\u003e\u003ccode\u003e4485793\u003c/code\u003e\u003c/a\u003e Merge branch 'perf/cache-parse-time-format' into 'master'\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/3638d17bf28d730d7dd90ff5cf3f93c45b9d752e\"\u003e\u003ccode\u003e3638d17\u003c/code\u003e\u003c/a\u003e rows: cache the parseTime format index per result column\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/7da793ef16502dced14643451a8bec834f999d9e\"\u003e\u003ccode\u003e7da793e\u003c/code\u003e\u003c/a\u003e CHANGELOG.md: document \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/124\"\u003e#124\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/51e6714774262680e2454b1a9ccc49b4245b220a\"\u003e\u003ccode\u003e51e6714\u003c/code\u003e\u003c/a\u003e Merge branch 'perf/cache-column-decltype' into 'master'\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/8a6f33ce42bfa4a864daf8a4c97908e7691499d9\"\u003e\u003ccode\u003e8a6f33c\u003c/code\u003e\u003c/a\u003e rows: lock down ColumnTypeScanType under the decltype cache\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/f8fb6dd1d58d74d022b77cc385a9828a1ac49762\"\u003e\u003ccode\u003ef8fb6dd\u003c/code\u003e\u003c/a\u003e rows: cache the column decltype lookup once per result set\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/b17c0c7faf2247b8251efaa638ac101e5dea7ec1\"\u003e\u003ccode\u003eb17c0c7\u003c/code\u003e\u003c/a\u003e CHANGELOG.md: document \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/123\"\u003e#123\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/c80a08fbe3d37ffa8c7e669c46053b692135523b\"\u003e\u003ccode\u003ec80a08f\u003c/code\u003e\u003c/a\u003e Merge branch 'perf/column-text-zero-copy' into 'master'\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://gitlab.com/cznic/sqlite/compare/v1.51.0...v1.52.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\n\n[![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=modernc.org/sqlite\u0026package-manager=go_modules\u0026previous-version=1.51.0\u0026new-version=1.52.0)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)\n\nDependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.\n\n[//]: # (dependabot-automerge-start)\n[//]: # (dependabot-automerge-end)\n\n---\n\n\u003cdetails\u003e\n\u003csummary\u003eDependabot commands and options\u003c/summary\u003e\n\u003cbr /\u003e\n\nYou can trigger Dependabot actions by commenting on this PR:\n- `@dependabot rebase` will rebase this PR\n- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it\n- `@dependabot show \u003cdependency name\u003e ignore conditions` will show all of the ignore conditions of the specified dependency\n- `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)\n- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)\n- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)\n\n\n\u003c/details\u003e","html_url":"https://github.com/openclaw/graincrawl/pull/20","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/openclaw%2Fgraincrawl/issues/20","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/20/packages"},{"uuid":"4619835917","node_id":"PR_kwDOHsPGZ87kQ15f","number":749,"state":"closed","title":"Bump the go-modules group across 1 directory with 28 updates","user":"dependabot[bot]","labels":["semver:patch","dependencies","go"],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":"2026-06-10T07:05:02.000Z","author_association":null,"state_reason":null,"created_at":"2026-06-09T07:25:22.000Z","updated_at":"2026-06-10T07:05:05.000Z","time_to_close":85180,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"Bump","group_name":"go-modules","update_count":28,"packages":[{"name":"github.com/anchore/stereoscope","old_version":"0.2.0","new_version":"0.2.1","repository_url":"https://github.com/anchore/stereoscope"},{"name":"github.com/anchore/syft","old_version":"1.45.0","new_version":"1.45.1","repository_url":"https://github.com/anchore/syft"},{"name":"github.com/aws/aws-sdk-go-v2","old_version":"1.41.12","new_version":"1.42.0","repository_url":"https://github.com/aws/aws-sdk-go-v2"},{"name":"github.com/aws/aws-sdk-go-v2/config","old_version":"1.32.23","new_version":"1.32.24","repository_url":"https://github.com/aws/aws-sdk-go-v2"},{"name":"github.com/aws/aws-sdk-go-v2/service/internal/checksum","old_version":"1.9.21","new_version":"1.9.22","repository_url":"https://github.com/aws/aws-sdk-go-v2"},{"name":"github.com/aws/aws-sdk-go-v2/service/internal/s3shared","old_version":"1.19.28","new_version":"1.19.29","repository_url":"https://github.com/aws/aws-sdk-go-v2"},{"name":"github.com/aws/aws-sdk-go-v2/service/s3","old_version":"1.103.2","new_version":"1.103.3","repository_url":"https://github.com/aws/aws-sdk-go-v2"},{"name":"github.com/aws/smithy-go","old_version":"1.27.1","new_version":"1.27.2","repository_url":"https://github.com/aws/smithy-go"},{"name":"github.com/docker/docker-credential-helpers","old_version":"0.9.7","new_version":"0.9.8","repository_url":"https://github.com/docker/docker-credential-helpers"},{"name":"github.com/moby/sys/sequential","old_version":"0.6.0","new_version":"0.7.0","repository_url":"https://github.com/moby/sys"},{"name":"golang.org/x/crypto","old_version":"0.52.0","new_version":"0.53.0","repository_url":"https://github.com/golang/crypto"},{"name":"golang.org/x/mod","old_version":"0.36.0","new_version":"0.37.0","repository_url":"https://github.com/golang/mod"},{"name":"modernc.org/libc","old_version":"1.72.5","new_version":"1.73.0"},{"name":"modernc.org/sqlite","old_version":"1.51.0","new_version":"1.52.0"}],"path":null,"ecosystem":"go"},"body":"Bumps the go-modules group with 14 updates in the / directory:\n\n| Package | From | To |\n| --- | --- | --- |\n| [github.com/anchore/stereoscope](https://github.com/anchore/stereoscope) | `0.2.0` | `0.2.1` |\n| [github.com/anchore/syft](https://github.com/anchore/syft) | `1.45.0` | `1.45.1` |\n| [github.com/aws/aws-sdk-go-v2](https://github.com/aws/aws-sdk-go-v2) | `1.41.12` | `1.42.0` |\n| [github.com/aws/aws-sdk-go-v2/config](https://github.com/aws/aws-sdk-go-v2) | `1.32.23` | `1.32.24` |\n| [github.com/aws/aws-sdk-go-v2/service/internal/checksum](https://github.com/aws/aws-sdk-go-v2) | `1.9.21` | `1.9.22` |\n| [github.com/aws/aws-sdk-go-v2/service/internal/s3shared](https://github.com/aws/aws-sdk-go-v2) | `1.19.28` | `1.19.29` |\n| [github.com/aws/aws-sdk-go-v2/service/s3](https://github.com/aws/aws-sdk-go-v2) | `1.103.2` | `1.103.3` |\n| [github.com/aws/smithy-go](https://github.com/aws/smithy-go) | `1.27.1` | `1.27.2` |\n| [github.com/docker/docker-credential-helpers](https://github.com/docker/docker-credential-helpers) | `0.9.7` | `0.9.8` |\n| [github.com/moby/sys/sequential](https://github.com/moby/sys) | `0.6.0` | `0.7.0` |\n| [golang.org/x/crypto](https://github.com/golang/crypto) | `0.52.0` | `0.53.0` |\n| [golang.org/x/mod](https://github.com/golang/mod) | `0.36.0` | `0.37.0` |\n| [modernc.org/libc](https://gitlab.com/cznic/libc) | `1.72.5` | `1.73.0` |\n| [modernc.org/sqlite](https://gitlab.com/cznic/sqlite) | `1.51.0` | `1.52.0` |\n\n\nUpdates `github.com/anchore/stereoscope` from 0.2.0 to 0.2.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/anchore/stereoscope/releases\"\u003egithub.com/anchore/stereoscope's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev0.2.1\u003c/h2\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eclose layer readers to not block on registry limiter [\u003ca href=\"https://redirect.github.com/anchore/stereoscope/pull/612\"\u003e#612\u003c/a\u003e \u003ca href=\"https://github.com/spiffcs\"\u003e\u003ccode\u003e@​spiffcs\u003c/code\u003e\u003c/a\u003e]\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAdditional Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003ebump the actions-minor-patch group across 1 directory with 4 updates [\u003ca href=\"https://redirect.github.com/anchore/stereoscope/pull/607\"\u003e#607\u003c/a\u003e \u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e]\u003c/li\u003e\n\u003cli\u003ebump the actions-minor-patch group across 2 directories with 5 updates [\u003ca href=\"https://redirect.github.com/anchore/stereoscope/pull/605\"\u003e#605\u003c/a\u003e \u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e]\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003e\u003ca href=\"https://github.com/anchore/stereoscope/compare/v0.2.0...v0.2.1\"\u003e(Full Changelog)\u003c/a\u003e\u003c/strong\u003e\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/anchore/stereoscope/commit/28a3ab3f7dd5b2060cc7733d712f99995e48fef8\"\u003e\u003ccode\u003e28a3ab3\u003c/code\u003e\u003c/a\u003e fix: close readers to return limiter tokens (\u003ca href=\"https://redirect.github.com/anchore/stereoscope/issues/612\"\u003e#612\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/anchore/stereoscope/commit/a0763b55d3b2b03b46fbdb69d41bf1ddfa3fcffb\"\u003e\u003ccode\u003ea0763b5\u003c/code\u003e\u003c/a\u003e Pass 'contents: read' to check-gate workflow (\u003ca href=\"https://redirect.github.com/anchore/stereoscope/issues/611\"\u003e#611\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/anchore/stereoscope/commit/5c36ef0c6652ce5b16406cb156370f7511957206\"\u003e\u003ccode\u003e5c36ef0\u003c/code\u003e\u003c/a\u003e chore(deps): update tool versions (\u003ca href=\"https://redirect.github.com/anchore/stereoscope/issues/603\"\u003e#603\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/anchore/stereoscope/commit/4b860047288c76f12b5d2d7c80b887f87aef4cc7\"\u003e\u003ccode\u003e4b86004\u003c/code\u003e\u003c/a\u003e chore(deps): bump the actions-minor-patch group across 1 directory with 4 upd...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/anchore/stereoscope/commit/ff4e7b896e8d95ed66f8d280ff802b19b6f4b1b2\"\u003e\u003ccode\u003eff4e7b8\u003c/code\u003e\u003c/a\u003e chore(deps): bump the actions-minor-patch group across 2 directories with 5 u...\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/anchore/stereoscope/compare/v0.2.0...v0.2.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `github.com/anchore/syft` from 1.45.0 to 1.45.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/anchore/syft/releases\"\u003egithub.com/anchore/syft's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev1.45.1\u003c/h2\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003ebump stereoscope to pull in fix for registry client hanging [\u003ca href=\"https://redirect.github.com/anchore/syft/pull/4934\"\u003e#4934\u003c/a\u003e \u003ca href=\"https://github.com/anchore-oss-update-bot\"\u003e\u003ccode\u003e@​anchore-oss-update-bot\u003c/code\u003e\u003c/a\u003e]\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003e\u003ca href=\"https://github.com/anchore/syft/compare/v1.45.0...v1.45.1\"\u003e(Full Changelog)\u003c/a\u003e\u003c/strong\u003e\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/anchore/syft/commit/d4496b05aab2d489a5c2ec606755b657229b8925\"\u003e\u003ccode\u003ed4496b0\u003c/code\u003e\u003c/a\u003e chore(deps): update anchore dependencies (\u003ca href=\"https://redirect.github.com/anchore/syft/issues/4934\"\u003e#4934\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/anchore/syft/commit/adc55cdb3aa3736eaa20408c0349bffd937f303f\"\u003e\u003ccode\u003eadc55cd\u003c/code\u003e\u003c/a\u003e chore(deps): bump the go-minor-patch group across 1 directory with 3 updates ...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/anchore/syft/commit/00d0bb59ccc68af7484868844da9e60d7ecad973\"\u003e\u003ccode\u003e00d0bb5\u003c/code\u003e\u003c/a\u003e chore(deps): update tool versions (\u003ca href=\"https://redirect.github.com/anchore/syft/issues/4724\"\u003e#4724\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/anchore/syft/commit/f4743087837301da934ebcdc2b5e3a7a70e8a95f\"\u003e\u003ccode\u003ef474308\u003c/code\u003e\u003c/a\u003e chore(deps): bump the go-minor-patch group across 2 directories with 14 updat...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/anchore/syft/commit/bf67072246f44a933575ed29370b4027f55c0366\"\u003e\u003ccode\u003ebf67072\u003c/code\u003e\u003c/a\u003e chore: bump golang.org/x/crypto (\u003ca href=\"https://redirect.github.com/anchore/syft/issues/4955\"\u003e#4955\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/anchore/syft/compare/v1.45.0...v1.45.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `github.com/aws/aws-sdk-go-v2` from 1.41.12 to 1.42.0\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/9a3190f79c9e3f7dce5d602be375c07ecd8973cc\"\u003e\u003ccode\u003e9a3190f\u003c/code\u003e\u003c/a\u003e Release 2026-06-08\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/b20dd5bb52bbb193b036c3e81525e7a06f3f819b\"\u003e\u003ccode\u003eb20dd5b\u003c/code\u003e\u003c/a\u003e Regenerated Clients\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/75a45eaa192d32d7e1247a666f9572a61443b48a\"\u003e\u003ccode\u003e75a45ea\u003c/code\u003e\u003c/a\u003e Update API model\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/e736f55ba6d11d83f9b8d858bbd9ab6c1a883ee2\"\u003e\u003ccode\u003ee736f55\u003c/code\u003e\u003c/a\u003e Add preview of changes for standard retry mode behind flag (\u003ca href=\"https://redirect.github.com/aws/aws-sdk-go-v2/issues/3400\"\u003e#3400\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/ba08dc9776ad30b7e5299dd98f3f0360d39656d4\"\u003e\u003ccode\u003eba08dc9\u003c/code\u003e\u003c/a\u003e Release 2026-06-05.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/9a67e21ffef3d8b3c9c84e9ce7d90314b646f395\"\u003e\u003ccode\u003e9a67e21\u003c/code\u003e\u003c/a\u003e Revert schema serde (\u003ca href=\"https://redirect.github.com/aws/aws-sdk-go-v2/issues/3442\"\u003e#3442\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/51692f80a1919052106b080468a7d231649d10a4\"\u003e\u003ccode\u003e51692f8\u003c/code\u003e\u003c/a\u003e s3/transfermanager: avoid double-closing concurrentReader channel after read ...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/f696d5bbafd406a16429239844c6e70627aee935\"\u003e\u003ccode\u003ef696d5b\u003c/code\u003e\u003c/a\u003e Release 2026-06-05\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/7efb8fd6bd7b33d2242586a63a32eca93f774f89\"\u003e\u003ccode\u003e7efb8fd\u003c/code\u003e\u003c/a\u003e Regenerated Clients\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/1a420c53c9599f9267285650a61009933de8c9bb\"\u003e\u003ccode\u003e1a420c5\u003c/code\u003e\u003c/a\u003e Update endpoints model\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/aws/aws-sdk-go-v2/compare/v1.41.12...v1.42.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `github.com/aws/aws-sdk-go-v2/config` from 1.32.23 to 1.32.24\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/9a3190f79c9e3f7dce5d602be375c07ecd8973cc\"\u003e\u003ccode\u003e9a3190f\u003c/code\u003e\u003c/a\u003e Release 2026-06-08\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/b20dd5bb52bbb193b036c3e81525e7a06f3f819b\"\u003e\u003ccode\u003eb20dd5b\u003c/code\u003e\u003c/a\u003e Regenerated Clients\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/75a45eaa192d32d7e1247a666f9572a61443b48a\"\u003e\u003ccode\u003e75a45ea\u003c/code\u003e\u003c/a\u003e Update API model\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/e736f55ba6d11d83f9b8d858bbd9ab6c1a883ee2\"\u003e\u003ccode\u003ee736f55\u003c/code\u003e\u003c/a\u003e Add preview of changes for standard retry mode behind flag (\u003ca href=\"https://redirect.github.com/aws/aws-sdk-go-v2/issues/3400\"\u003e#3400\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/ba08dc9776ad30b7e5299dd98f3f0360d39656d4\"\u003e\u003ccode\u003eba08dc9\u003c/code\u003e\u003c/a\u003e Release 2026-06-05.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/9a67e21ffef3d8b3c9c84e9ce7d90314b646f395\"\u003e\u003ccode\u003e9a67e21\u003c/code\u003e\u003c/a\u003e Revert schema serde (\u003ca href=\"https://redirect.github.com/aws/aws-sdk-go-v2/issues/3442\"\u003e#3442\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/51692f80a1919052106b080468a7d231649d10a4\"\u003e\u003ccode\u003e51692f8\u003c/code\u003e\u003c/a\u003e s3/transfermanager: avoid double-closing concurrentReader channel after read ...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/f696d5bbafd406a16429239844c6e70627aee935\"\u003e\u003ccode\u003ef696d5b\u003c/code\u003e\u003c/a\u003e Release 2026-06-05\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/7efb8fd6bd7b33d2242586a63a32eca93f774f89\"\u003e\u003ccode\u003e7efb8fd\u003c/code\u003e\u003c/a\u003e Regenerated Clients\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/1a420c53c9599f9267285650a61009933de8c9bb\"\u003e\u003ccode\u003e1a420c5\u003c/code\u003e\u003c/a\u003e Update endpoints model\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/aws/aws-sdk-go-v2/compare/config/v1.32.23...config/v1.32.24\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `github.com/aws/aws-sdk-go-v2/credentials` from 1.19.22 to 1.19.23\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/9a3190f79c9e3f7dce5d602be375c07ecd8973cc\"\u003e\u003ccode\u003e9a3190f\u003c/code\u003e\u003c/a\u003e Release 2026-06-08\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/b20dd5bb52bbb193b036c3e81525e7a06f3f819b\"\u003e\u003ccode\u003eb20dd5b\u003c/code\u003e\u003c/a\u003e Regenerated Clients\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/75a45eaa192d32d7e1247a666f9572a61443b48a\"\u003e\u003ccode\u003e75a45ea\u003c/code\u003e\u003c/a\u003e Update API model\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/e736f55ba6d11d83f9b8d858bbd9ab6c1a883ee2\"\u003e\u003ccode\u003ee736f55\u003c/code\u003e\u003c/a\u003e Add preview of changes for standard retry mode behind flag (\u003ca href=\"https://redirect.github.com/aws/aws-sdk-go-v2/issues/3400\"\u003e#3400\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/ba08dc9776ad30b7e5299dd98f3f0360d39656d4\"\u003e\u003ccode\u003eba08dc9\u003c/code\u003e\u003c/a\u003e Release 2026-06-05.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/9a67e21ffef3d8b3c9c84e9ce7d90314b646f395\"\u003e\u003ccode\u003e9a67e21\u003c/code\u003e\u003c/a\u003e Revert schema serde (\u003ca href=\"https://redirect.github.com/aws/aws-sdk-go-v2/issues/3442\"\u003e#3442\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/51692f80a1919052106b080468a7d231649d10a4\"\u003e\u003ccode\u003e51692f8\u003c/code\u003e\u003c/a\u003e s3/transfermanager: avoid double-closing concurrentReader channel after read ...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/f696d5bbafd406a16429239844c6e70627aee935\"\u003e\u003ccode\u003ef696d5b\u003c/code\u003e\u003c/a\u003e Release 2026-06-05\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/7efb8fd6bd7b33d2242586a63a32eca93f774f89\"\u003e\u003ccode\u003e7efb8fd\u003c/code\u003e\u003c/a\u003e Regenerated Clients\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/1a420c53c9599f9267285650a61009933de8c9bb\"\u003e\u003ccode\u003e1a420c5\u003c/code\u003e\u003c/a\u003e Update endpoints model\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/aws/aws-sdk-go-v2/compare/credentials/v1.19.22...credentials/v1.19.23\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `github.com/aws/aws-sdk-go-v2/feature/ec2/imds` from 1.18.28 to 1.18.29\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/806208b12d2f51bf0a7eb79e56cb48fb65c39fab\"\u003e\u003ccode\u003e806208b\u003c/code\u003e\u003c/a\u003e Release 2023-07-25\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/6122cccddb427920740de13955eb7bcba89bd4be\"\u003e\u003ccode\u003e6122ccc\u003c/code\u003e\u003c/a\u003e Regenerated Clients\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/f4dd56b56176a632247f43e80d7e1c4a4b0f84d1\"\u003e\u003ccode\u003ef4dd56b\u003c/code\u003e\u003c/a\u003e Update API model\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/28158616ee5740cfb02dda5db9aa8c5e21c19657\"\u003e\u003ccode\u003e2815861\u003c/code\u003e\u003c/a\u003e Release 2023-07-24\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/374837233da053387c9e7c8f61b5c64ba7458139\"\u003e\u003ccode\u003e3748372\u003c/code\u003e\u003c/a\u003e Regenerated Clients\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/45fe75421d984874fa8ae2fa555bd2dbd92cbec7\"\u003e\u003ccode\u003e45fe754\u003c/code\u003e\u003c/a\u003e Update endpoints model\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/08fe2055886fa9af157f9a13d0fbf4e0323b2d4b\"\u003e\u003ccode\u003e08fe205\u003c/code\u003e\u003c/a\u003e Update API model\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/bd8bdffb8d030c176ee49a372292e29588683a5f\"\u003e\u003ccode\u003ebd8bdff\u003c/code\u003e\u003c/a\u003e added workflow for handling answerable discussions (\u003ca href=\"https://redirect.github.com/aws/aws-sdk-go-v2/issues/2191\"\u003e#2191\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/58257c6ec53d7ed32394a0abba2fb9bd86b63840\"\u003e\u003ccode\u003e58257c6\u003c/code\u003e\u003c/a\u003e Release 2023-07-21\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/f10862bc1e741bf1401874e7fe1b0d1f3beff561\"\u003e\u003ccode\u003ef10862b\u003c/code\u003e\u003c/a\u003e Regenerated Clients\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/aws/aws-sdk-go-v2/compare/config/v1.18.28...config/v1.18.29\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `github.com/aws/aws-sdk-go-v2/internal/configsources` from 1.4.28 to 1.4.29\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/7146c2b4007293f0acc9b2e8b92ffa7a30841df0\"\u003e\u003ccode\u003e7146c2b\u003c/code\u003e\u003c/a\u003e Release 2026-06-04\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/5aef2fd8a4027ecf34eb5e32a28ff4a955b353d6\"\u003e\u003ccode\u003e5aef2fd\u003c/code\u003e\u003c/a\u003e Regenerated Clients\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/f94c04478d36a4ffb777221761459fb4b1d20cba\"\u003e\u003ccode\u003ef94c044\u003c/code\u003e\u003c/a\u003e Update API model\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/f00b205128286d6431115dd078da3c36197999f4\"\u003e\u003ccode\u003ef00b205\u003c/code\u003e\u003c/a\u003e bump to smithy-go v1.27.1 (\u003ca href=\"https://redirect.github.com/aws/aws-sdk-go-v2/issues/3434\"\u003e#3434\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/c4ad7dee6ebd9a3e1c7ee208f77e4ac8532b17c9\"\u003e\u003ccode\u003ec4ad7de\u003c/code\u003e\u003c/a\u003e drop service/internal/benchmark (\u003ca href=\"https://redirect.github.com/aws/aws-sdk-go-v2/issues/3433\"\u003e#3433\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/91eca463daf932474778dc4a984c41ecfcd9dc3c\"\u003e\u003ccode\u003e91eca46\u003c/code\u003e\u003c/a\u003e Release 2026-06-03.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/e9d9e156c352b4956ed0b3d57614467d1f79c62b\"\u003e\u003ccode\u003ee9d9e15\u003c/code\u003e\u003c/a\u003e Regenerated Clients\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/def6a3a4bb06c199a4843c501d84730d8235cab4\"\u003e\u003ccode\u003edef6a3a\u003c/code\u003e\u003c/a\u003e Update API model\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/aws/aws-sdk-go-v2/compare/internal/v4a/v1.4.28...internal/v4a/v1.4.29\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `github.com/aws/aws-sdk-go-v2/internal/endpoints/v2` from 2.7.28 to 2.7.29\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/9a3190f79c9e3f7dce5d602be375c07ecd8973cc\"\u003e\u003ccode\u003e9a3190f\u003c/code\u003e\u003c/a\u003e Release 2026-06-08\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/b20dd5bb52bbb193b036c3e81525e7a06f3f819b\"\u003e\u003ccode\u003eb20dd5b\u003c/code\u003e\u003c/a\u003e Regenerated Clients\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/75a45eaa192d32d7e1247a666f9572a61443b48a\"\u003e\u003ccode\u003e75a45ea\u003c/code\u003e\u003c/a\u003e Update API model\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/e736f55ba6d11d83f9b8d858bbd9ab6c1a883ee2\"\u003e\u003ccode\u003ee736f55\u003c/code\u003e\u003c/a\u003e Add preview of changes for standard retry mode behind flag (\u003ca href=\"https://redirect.github.com/aws/aws-sdk-go-v2/issues/3400\"\u003e#3400\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/ba08dc9776ad30b7e5299dd98f3f0360d39656d4\"\u003e\u003ccode\u003eba08dc9\u003c/code\u003e\u003c/a\u003e Release 2026-06-05.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/9a67e21ffef3d8b3c9c84e9ce7d90314b646f395\"\u003e\u003ccode\u003e9a67e21\u003c/code\u003e\u003c/a\u003e Revert schema serde (\u003ca href=\"https://redirect.github.com/aws/aws-sdk-go-v2/issues/3442\"\u003e#3442\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/51692f80a1919052106b080468a7d231649d10a4\"\u003e\u003ccode\u003e51692f8\u003c/code\u003e\u003c/a\u003e s3/transfermanager: avoid double-closing concurrentReader channel after read ...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/f696d5bbafd406a16429239844c6e70627aee935\"\u003e\u003ccode\u003ef696d5b\u003c/code\u003e\u003c/a\u003e Release 2026-06-05\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/7efb8fd6bd7b33d2242586a63a32eca93f774f89\"\u003e\u003ccode\u003e7efb8fd\u003c/code\u003e\u003c/a\u003e Regenerated Clients\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/1a420c53c9599f9267285650a61009933de8c9bb\"\u003e\u003ccode\u003e1a420c5\u003c/code\u003e\u003c/a\u003e Update endpoints model\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/aws/aws-sdk-go-v2/compare/internal/endpoints/v2.7.28...internal/endpoints/v2.7.29\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `github.com/aws/aws-sdk-go-v2/internal/v4a` from 1.4.29 to 1.4.30\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/9a3190f79c9e3f7dce5d602be375c07ecd8973cc\"\u003e\u003ccode\u003e9a3190f\u003c/code\u003e\u003c/a\u003e Release 2026-06-08\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/b20dd5bb52bbb193b036c3e81525e7a06f3f819b\"\u003e\u003ccode\u003eb20dd5b\u003c/code\u003e\u003c/a\u003e Regenerated Clients\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/75a45eaa192d32d7e1247a666f9572a61443b48a\"\u003e\u003ccode\u003e75a45ea\u003c/code\u003e\u003c/a\u003e Update API model\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/e736f55ba6d11d83f9b8d858bbd9ab6c1a883ee2\"\u003e\u003ccode\u003ee736f55\u003c/code\u003e\u003c/a\u003e Add preview of changes for standard retry mode behind flag (\u003ca href=\"https://redirect.github.com/aws/aws-sdk-go-v2/issues/3400\"\u003e#3400\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/ba08dc9776ad30b7e5299dd98f3f0360d39656d4\"\u003e\u003ccode\u003eba08dc9\u003c/code\u003e\u003c/a\u003e Release 2026-06-05.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/9a67e21ffef3d8b3c9c84e9ce7d90314b646f395\"\u003e\u003ccode\u003e9a67e21\u003c/code\u003e\u003c/a\u003e Revert schema serde (\u003ca href=\"https://redirect.github.com/aws/aws-sdk-go-v2/issues/3442\"\u003e#3442\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/51692f80a1919052106b080468a7d231649d10a4\"\u003e\u003ccode\u003e51692f8\u003c/code\u003e\u003c/a\u003e s3/transfermanager: avoid double-closing concurrentReader channel after read ...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/f696d5bbafd406a16429239844c6e70627aee935\"\u003e\u003ccode\u003ef696d5b\u003c/code\u003e\u003c/a\u003e Release 2026-06-05\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/7efb8fd6bd7b33d2242586a63a32eca93f774f89\"\u003e\u003ccode\u003e7efb8fd\u003c/code\u003e\u003c/a\u003e Regenerated Clients\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/1a420c53c9599f9267285650a61009933de8c9bb\"\u003e\u003ccode\u003e1a420c5\u003c/code\u003e\u003c/a\u003e Update endpoints model\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/aws/aws-sdk-go-v2/compare/internal/v4a/v1.4.29...internal/v4a/v1.4.30\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `github.com/aws/aws-sdk-go-v2/service/internal/checksum` from 1.9.21 to 1.9.22\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/9bc9c51d733fd437a60a8710531477ca0347dcc4\"\u003e\u003ccode\u003e9bc9c51\u003c/code\u003e\u003c/a\u003e Release 2026-04-17\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/2b41455a8d88032b9b76b0bafbe23de0a61a6f29\"\u003e\u003ccode\u003e2b41455\u003c/code\u003e\u003c/a\u003e Regenerated Clients\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/2327a1b15b5f16414e715325bc9579082fde0767\"\u003e\u003ccode\u003e2327a1b\u003c/code\u003e\u003c/a\u003e Update endpoints model\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/9225797aa8ce8661d61f4628973aface4e01c922\"\u003e\u003ccode\u003e9225797\u003c/code\u003e\u003c/a\u003e Update API model\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/7b6f675adb365c7b069aaf2a8e81c4b8f8a5d08e\"\u003e\u003ccode\u003e7b6f675\u003c/code\u003e\u003c/a\u003e Bump smithy-go to 1.25 (again) (\u003ca href=\"https://redirect.github.com/aws/aws-sdk-go-v2/issues/3390\"\u003e#3390\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/c8b6a97220901cccfd8a06f6f25aef65a967384c\"\u003e\u003ccode\u003ec8b6a97\u003c/code\u003e\u003c/a\u003e Release 2026-04-16\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/4a05c2ba948715d305aff4519154abe2c4799246\"\u003e\u003ccode\u003e4a05c2b\u003c/code\u003e\u003c/a\u003e Regenerated Clients\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/6cd4cc9201382be2638c8b4951b5d92de73c1161\"\u003e\u003ccode\u003e6cd4cc9\u003c/code\u003e\u003c/a\u003e Update endpoints model\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/3153bed494fb9e426640b30c7b91be0510b20362\"\u003e\u003ccode\u003e3153bed\u003c/code\u003e\u003c/a\u003e Update API model\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/fe3cef6cc115a2915f5410c739dc73d51553d709\"\u003e\u003ccode\u003efe3cef6\u003c/code\u003e\u003c/a\u003e Make AccountIDEndpointRouting aware of bdd endpoints (\u003ca href=\"https://redirect.github.com/aws/aws-sdk-go-v2/issues/3387\"\u003e#3387\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/aws/aws-sdk-go-v2/compare/feature/cloudfront/sign/v1.9.21...feature/cloudfront/sign/v1.9.22\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `github.com/aws/aws-sdk-go-v2/service/internal/presigned-url` from 1.13.28 to 1.13.29\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/a5d5009095c5f8bf340673926d7dac305b2dcec3\"\u003e\u003ccode\u003ea5d5009\u003c/code\u003e\u003c/a\u003e Release 2023-07-28\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/ff82299a6ebbc5e5f0a9eddff7776c072f0cb4e8\"\u003e\u003ccode\u003eff82299\u003c/code\u003e\u003c/a\u003e Regenerated Clients\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/fc5a86f8fdc4e9af70b87362a6a55c6c6f91826f\"\u003e\u003ccode\u003efc5a86f\u003c/code\u003e\u003c/a\u003e Update API model\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/62ffb94b9079e4d5e154d7c7de1e89971d88b395\"\u003e\u003ccode\u003e62ffb94\u003c/code\u003e\u003c/a\u003e fix v4.go PresignHTTP doc (\u003ca href=\"https://redirect.github.com/aws/aws-sdk-go-v2/issues/2212\"\u003e#2212\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/b4d8d26ccac83a0c8e15b01990a475364ac03e52\"\u003e\u003ccode\u003eb4d8d26\u003c/code\u003e\u003c/a\u003e Release 2023-07-27\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/ad521060000fcf57abf457d6d9be1cc0290c0a4f\"\u003e\u003ccode\u003ead52106\u003c/code\u003e\u003c/a\u003e Regenerated Clients\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/f335bcf78da9b8d4b4208e5b632441991b2c79c5\"\u003e\u003ccode\u003ef335bcf\u003c/code\u003e\u003c/a\u003e Update API model\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/d5a9934e2bb72aa010b157965263b7f89698a5a4\"\u003e\u003ccode\u003ed5a9934\u003c/code\u003e\u003c/a\u003e Release 2023-07-26\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/247060d3224d694b43e53010f1e6d706d0ed3581\"\u003e\u003ccode\u003e247060d\u003c/code\u003e\u003c/a\u003e Regenerated Clients\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/61540ee88b45c53f89b9bb99db5c8fc079900bf5\"\u003e\u003ccode\u003e61540ee\u003c/code\u003e\u003c/a\u003e Update endpoints model\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/aws/aws-sdk-go-v2/compare/credentials/v1.13.28...credentials/v1.13.29\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `github.com/aws/aws-sdk-go-v2/service/internal/s3shared` from 1.19.28 to 1.19.29\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/9a3190f79c9e3f7dce5d602be375c07ecd8973cc\"\u003e\u003ccode\u003e9a3190f\u003c/code\u003e\u003c/a\u003e Release 2026-06-08\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/b20dd5bb52bbb193b036c3e81525e7a06f3f819b\"\u003e\u003ccode\u003eb20dd5b\u003c/code\u003e\u003c/a\u003e Regenerated Clients\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/75a45eaa192d32d7e1247a666f9572a61443b48a\"\u003e\u003ccode\u003e75a45ea\u003c/code\u003e\u003c/a\u003e Update API model\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/e736f55ba6d11d83f9b8d858bbd9ab6c1a883ee2\"\u003e\u003ccode\u003ee736f55\u003c/code\u003e\u003c/a\u003e Add preview of changes for standard retry mode behind flag (\u003ca href=\"https://redirect.github.com/aws/aws-sdk-go-v2/issues/3400\"\u003e#3400\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/ba08dc9776ad30b7e5299dd98f3f0360d39656d4\"\u003e\u003ccode\u003eba08dc9\u003c/code\u003e\u003c/a\u003e Release 2026-06-05.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/9a67e21ffef3d8b3c9c84e9ce7d90314b646f395\"\u003e\u003ccode\u003e9a67e21\u003c/code\u003e\u003c/a\u003e Revert schema serde (\u003ca href=\"https://redirect.github.com/aws/aws-sdk-go-v2/issues/3442\"\u003e#3442\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/51692f80a1919052106b080468a7d231649d10a4\"\u003e\u003ccode\u003e51692f8\u003c/code\u003e\u003c/a\u003e s3/transfermanager: avoid double-closing concurrentReader channel after read ...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/f696d5bbafd406a16429239844c6e70627aee935\"\u003e\u003ccode\u003ef696d5b\u003c/code\u003e\u003c/a\u003e Release 2026-06-05\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/7efb8fd6bd7b33d2242586a63a32eca93f774f89\"\u003e\u003ccode\u003e7efb8fd\u003c/code\u003e\u003c/a\u003e Regenerated Clients\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/1a420c53c9599f9267285650a61009933de8c9bb\"\u003e\u003ccode\u003e1a420c5\u003c/code\u003e\u003c/a\u003e Update endpoints model\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/aws/aws-sdk-go-v2/compare/service/internal/s3shared/v1.19.28...service/internal/s3shared/v1.19.29\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `github.com/aws/aws-sdk-go-v2/service/s3` from 1.103.2 to 1.103.3\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/9a3190f79c9e3f7dce5d602be375c07ecd8973cc\"\u003e\u003ccode\u003e9a3190f\u003c/code\u003e\u003c/a\u003e Release 2026-06-08\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/b20dd5bb52bbb193b036c3e81525e7a06f3f819b\"\u003e\u003ccode\u003eb20dd5b\u003c/code\u003e\u003c/a\u003e Regenerated Clients\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/75a45eaa192d32d7e1247a666f9572a61443b48a\"\u003e\u003ccode\u003e75a45ea\u003c/code\u003e\u003c/a\u003e Update API model\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/e736f55ba6d11d83f9b8d858bbd9ab6c1a883ee2\"\u003e\u003ccode\u003ee736f55\u003c/code\u003e\u003c/a\u003e Add preview of changes for standard retry mode behind flag (\u003ca href=\"https://redirect.github.com/aws/aws-sdk-go-v2/issues/3400\"\u003e#3400\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/ba08dc9776ad30b7e5299dd98f3f0360d39656d4\"\u003e\u003ccode\u003eba08dc9\u003c/code\u003e\u003c/a\u003e Release 2026-06-05.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/9a67e21ffef3d8b3c9c84e9ce7d90314b646f395\"\u003e\u003ccode\u003e9a67e21\u003c/code\u003e\u003c/a\u003e Revert schema serde (\u003ca href=\"https://redirect.github.com/aws/aws-sdk-go-v2/issues/3442\"\u003e#3442\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/51692f80a1919052106b080468a7d231649d10a4\"\u003e\u003ccode\u003e51692f8\u003c/code\u003e\u003c/a\u003e s3/transfermanager: avoid double-closing concurrentReader channel after read ...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/f696d5bbafd406a16429239844c6e70627aee935\"\u003e\u003ccode\u003ef696d5b\u003c/code\u003e\u003c/a\u003e Release 2026-06-05\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/7efb8fd6bd7b33d2242586a63a32eca93f774f89\"\u003e\u003ccode\u003e7efb8fd\u003c/code\u003e\u003c/a\u003e Regenerated Clients\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/1a420c53c9599f9267285650a61009933de8c9bb\"\u003e\u003ccode\u003e1a420c5\u003c/code\u003e\u003c/a\u003e Update endpoints model\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/aws/aws-sdk-go-v2/compare/service/s3/v1.103.2...service/s3/v1.103.3\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `github.com/aws/aws-sdk-go-v2/service/signin` from 1.1.4 to 1.1.5\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/fdbaadbce5fd7d742865b196dd074493e4cedfc7\"\u003e\u003ccode\u003efdbaadb\u003c/code\u003e\u003c/a\u003e Release 2021-04-08\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/d498a2e63a08514d0de475555f54d876c707d055\"\u003e\u003ccode\u003ed498a2e\u003c/code\u003e\u003c/a\u003e changenotes for smithy go dependency bump to core\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/bca1385dbac5906cc9753c264ea529fc0d49c5f3\"\u003e\u003ccode\u003ebca1385\u003c/code\u003e\u003c/a\u003e make generate changes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/214f719ecb764abc6af5ad7667e2ef307f9dca86\"\u003e\u003ccode\u003e214f719\u003c/code\u003e\u003c/a\u003e Sync smithy api models and endpoints (\u003ca href=\"https://redirect.github.com/aws/aws-sdk-go-v2/issues/1219\"\u003e#1219\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/67f74949e4831edc2d0a8da2aba8c4b356b27fff\"\u003e\u003ccode\u003e67f7494\u003c/code\u003e\u003c/a\u003e Remove unused RingBuffer implementation (\u003ca href=\"https://redirect.github.com/aws/aws-sdk-go-v2/issues/1206\"\u003e#1206\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/33f1593e43658fe592898c65525e0d335b3f4944\"\u003e\u003ccode\u003e33f1593\u003c/code\u003e\u003c/a\u003e Update generated code\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/453feacb57c4979429345d118e7c57e4b0e8c15e\"\u003e\u003ccode\u003e453feac\u003c/code\u003e\u003c/a\u003e Fix xml attribute serialization\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/f91a70bc40c9c3df0b3f0e22973ebeafba7550b0\"\u003e\u003ccode\u003ef91a70b\u003c/code\u003e\u003c/a\u003e codegen: Add make task to easily pull in smithy-go codegen modules (\u003ca href=\"https://redirect.github.com/aws/aws-sdk-go-v2/issues/1210\"\u003e#1210\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/aws/aws-sdk-go-v2/compare/config/v1.1.4...config/v1.1.5\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `github.com/aws/aws-sdk-go-v2/service/sso` from 1.31.2 to 1.31.3\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/e1909a587c354bd1b2962eebaba94c16838669a5\"\u003e\u003ccode\u003ee1909a5\u003c/code\u003e\u003c/a\u003e Release 2025-08-26\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/2dead494608f76e4d3fe649f643457f224dd434d\"\u003e\u003ccode\u003e2dead49\u003c/code\u003e\u003c/a\u003e Regenerated Clients\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/8f87507c4d78351202d05ad1d75dcb8b40ad1882\"\u003e\u003ccode\u003e8f87507\u003c/code\u003e\u003c/a\u003e Update endpoints model\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/9f13166e6c118ee340f5b2e666d44d67141c7327\"\u003e\u003ccode\u003e9f13166\u003c/code\u003e\u003c/a\u003e Update API model\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/92833dd046ba7e5afe1aafc56d0542c6668b4faf\"\u003e\u003ccode\u003e92833dd\u003c/code\u003e\u003c/a\u003e drop opsworks and opsworkscm (\u003ca href=\"https://redirect.github.com/aws/aws-sdk-go-v2/issues/3172\"\u003e#3172\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/50d1314f18412311633a2a9d9faec813e3998420\"\u003e\u003ccode\u003e50d1314\u003c/code\u003e\u003c/a\u003e Release 2025-08-25.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/d163c8cb48dcb1bfa07f51c26cb3cbde0d191159\"\u003e\u003ccode\u003ed163c8c\u003c/code\u003e\u003c/a\u003e Deprecate opsworks/opsworkscm (\u003ca href=\"https://redirect.github.com/aws/aws-sdk-go-v2/issues/3171\"\u003e#3171\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/f0a97a78c219cb6b0ceacfddc8107b850a87aa08\"\u003e\u003ccode\u003ef0a97a7\u003c/code\u003e\u003c/a\u003e Release 2025-08-25\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/3b73a3be8423cd3e099e3754830ebeefb5518afe\"\u003e\u003ccode\u003e3b73a3b\u003c/code\u003e\u003c/a\u003e Regenerated Clients\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/9c6a548460fe2cbd8a830ea5a6ed6bf62b667d82\"\u003e\u003ccode\u003e9c6a548\u003c/code\u003e\u003c/a\u003e Update endpoints model\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/aws/aws-sdk-go-v2/compare/config/v1.31.2...config/v1.31.3\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `github.com/aws/aws-sdk-go-v2/service/ssooidc` from 1.36.5 to 1.36.6\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/f9f7a6bb124a1a7daffc65db40053d97678bd371\"\u003e\u003ccode\u003ef9f7a6b\u003c/code\u003e\u003c/a\u003e Release 2025-07-19\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/c74fb637eb68925187407dfe105ba10d855cecd2\"\u003e\u003ccode\u003ec74fb63\u003c/code\u003e\u003c/a\u003e Regenerated Clients\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/d09b46671d6af69a0e1e808c953e5db4a0e5790c\"\u003e\u003ccode\u003ed09b466\u003c/code\u003e\u003c/a\u003e generate aws-eusc (\u003ca href=\"https://redirect.github.com/aws/aws-sdk-go-v2/issues/3144\"\u003e#3144\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/45575dd69588782d4a0944c7b3911018613d67c7\"\u003e\u003ccode\u003e45575dd\u003c/code\u003e\u003c/a\u003e Release 2025-07-18\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/40f9e8b889dbda9e80b651bd55ea13a99d75d6cc\"\u003e\u003ccode\u003e40f9e8b\u003c/code\u003e\u003c/a\u003e Regenerated Clients\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/da30009f1debd56e812c58845b0a3ee4e6e1fb58\"\u003e\u003ccode\u003eda30009\u003c/code\u003e\u003c/a\u003e Update endpoints model\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/78fe67fa8c7f08f490e1e04bbe3ce609bfc66fe6\"\u003e\u003ccode\u003e78fe67f\u003c/code\u003e\u003c/a\u003e Update API model\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/654c62d6b16cfa75aba17f6f2feb7d91d627186a\"\u003e\u003ccode\u003e654c62d\u003c/code\u003e\u003c/a\u003e Release 2025-07-17\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/47a74cd2a3a4464fbb1273db6ede81d2bb72bb1d\"\u003e\u003ccode\u003e47a74cd\u003c/code\u003e\u003c/a\u003e Regenerated Clients\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/bdd96b2ea29e4a7c96d0dbe1dc1a039bf85d090c\"\u003e\u003ccode\u003ebdd96b2\u003c/code\u003e\u003c/a\u003e Update endpoints model\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/aws/aws-sdk-go-v2/compare/v1.36.5...v1.36.6\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `github.com/aws/aws-sdk-go-v2/service/sts` from 1.43.2 to 1.43.3\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/fa369bd7bb9576e85ac094a43a15e8372a3d0129\"\u003e\u003ccode\u003efa369bd\u003c/code\u003e\u003c/a\u003e Release 2026-06-03\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/960ee4dc8380a46ded94f3976e073242d42bf8ed\"\u003e\u003ccode\u003e960ee4d\u003c/code\u003e\u003c/a\u003e Regenerated Clients\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/4b6df8b301a6c965903012dda08e9f38fd163f1c\"\u003e\u003ccode\u003e4b6df8b\u003c/code\u003e\u003c/a\u003e Update endpoints model\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/30b15dd22cc690c7d647c32f415111437cfbed2a\"\u003e\u003ccode\u003e30b15dd\u003c/code\u003e\u003c/a\u003e Update API model\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/e8c72af3150fa9c8898c916b2e213a5d3d7d64ed\"\u003e\u003ccode\u003ee8c72af\u003c/code\u003e\u003c/a\u003e enable schema-serde (\u003ca href=\"https://redirect.github.com/aws/aws-sdk-go-v2/issues/3421\"\u003e#3421\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/aws/aws-sdk-go-v2/compare/service/amp/v1.43.2...service/amp/v1.43.3\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `github.com/aws/smithy-go` from 1.27.1 to 1.27.2\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/aws/smithy-go/blob/main/CHANGELOG.md\"\u003egithub.com/aws/smithy-go's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003eRelease (2026-06-05)\u003c/h1\u003e\n\u003ch2\u003eGeneral Highlights\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eDependency Update\u003c/strong\u003e: Updated to the latest SDK module versions\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eModule Highlights\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003egithub.com/aws/smithy-go\u003c/code\u003e: v1.27.2\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eBug Fix\u003c/strong\u003e: Fix incorrect serialization of unions in CBOR-based protocols.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch1\u003eRelease (2026-06-04)\u003c/h1\u003e\n\u003ch2\u003eGeneral Highlights\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eDependency Update\u003c/strong\u003e: Updated to the latest SDK module versions\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eModule Highlights\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003egithub.com/aws/smithy-go\u003c/code\u003e: v1.27.1\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eBug Fix\u003c/strong\u003e: Fixed a deserialization failure in all protocols when encountering a union with explicit null members.\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eBug Fix\u003c/strong\u003e: Fixed a panic when deserializing nested unions in JSON- and CBOR-based protocols.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch1\u003eRelease (2026-06-02)\u003c/h1\u003e\n\u003ch2\u003eGeneral Highlights\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eDependency Update\u003c/strong\u003e: Updated to the latest SDK module versions\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eModule Highlights\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003egithub.com/aws/smithy-go\u003c/code\u003e: v1.27.0\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eFeature\u003c/strong\u003e: Add APIs for schema-based serialization.\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eFeature\u003c/strong\u003e: Add support for all current AWS and Smithy protocols.\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eBug Fix\u003c/strong\u003e: Enforce max nesting depth of 128 on CBOR payloads.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003egithub.com/aws/smithy-go/aws-http-auth\u003c/code\u003e: \u003ca href=\"https://github.com/aws/smithy-go/blob/main/aws-http-auth/CHANGELOG.md#v120-2026-06-02\"\u003ev1.2.0\u003c/a\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eFeature\u003c/strong\u003e: Add event stream signer.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch1\u003eRelease (2026-05-27)\u003c/h1\u003e\n\u003ch2\u003eGeneral Highlights\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eDependency Update\u003c/strong\u003e: Updated to the latest SDK module versions\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eModule Highlights\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003egithub.com/aws/smithy-go\u003c/code\u003e: v1.26.0\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eFeature\u003c/strong\u003e: Add StringSlice to endpoint rulesfn.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch1\u003eRelease (2026-04-23)\u003c/h1\u003e\n\u003ch2\u003eGeneral Highlights\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eDependency Update\u003c/strong\u003e: Updated to the latest SDK module versions\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eModule Highlights\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003egithub.com/aws/smithy-go\u003c/code\u003e: v1.25.1\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eBug Fix\u003c/strong\u003e: Fixed a memory leak in the LRU cache implementation used by some AWS services.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/smithy-go/commit/bff4b8cb91fc6e63e769581850fbe5b24d2b8b13\"\u003e\u003ccode\u003ebff4b8c\u003c/code\u003e\u003c/a\u003e Release 2026-06-05\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/smithy-go/commit/6b71b3a0a321ae5dc8eff7f2a3fb4a0a18a0cbe8\"\u003e\u003ccode\u003e6b71b3a\u003c/code\u003e\u003c/a\u003e fix broken cbor union serialization (\u003ca href=\"https://redirect.github.com/aws/smithy-go/issues/676\"\u003e#676\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/smithy-go/commit/3c67717123267c62cc877d842c6678d702cd2275\"\u003e\u003ccode\u003e3c67717\u003c/code\u003e\u003c/a\u003e serialize value types if \u003ca href=\"https://github.com/required\"\u003e\u003ccode\u003e@​required\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/aws/smithy-go/issues/675\"\u003e#675\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/aws/smithy-go/compare/v1.27.1...v1.27.2\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `github.com/docker/docker-credential-helpers` from 0.9.7 to 0.9.8\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/docker/docker-credential-helpers/releases\"\u003egithub.com/docker/docker-credential-helpers's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev0.9.8\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eupdate to go1.26.4\u003c/li\u003e\n\u003cli\u003ewincred: inline label, and append to existing\u003c/li\u003e\n\u003cli\u003ebuild(deps): bump actions/checkout from 6.0.2 to 6.0.3\u003c/li\u003e\n\u003cli\u003ebuild(deps): bump codecov/codecov-action from 6.0.0 to 6.0.1\u003c/li\u003e\n\u003cli\u003ebuild(deps): bump crazy-max/.github/.github/workflows/zizmor.yml from 1.7.1 to 1.10.0\u003c/li\u003e\n\u003cli\u003ebuild(deps): bump docker/bake-action from 7.1.0 to 7.2.0\u003c/li\u003e\n\u003cli\u003ebuild(deps): bump docker/setup-buildx-action from 4.0.0 to 4.1.0\u003c/li\u003e\n\u003cli\u003ebuild(deps): bump docker/setup-qemu-action from 4.0.0 to 4.1.0\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/docker/docker-credential-helpers/compare/v0.9.7...v0.9.8\"\u003ehttps://github.com/docker/docker-credential-helpers/compare/v0.9.7...v0.9.8\u003c/a\u003e\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/docker/docker-credential-helpers/commit/4f6bc8ab27f64fbc65f810814448c756e958ab65\"\u003e\u003ccode\u003e4f6bc8a\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/docker/docker-credential-helpers/issues/433\"\u003e#433\u003c/a\u003e from thaJeztah/wincred_inline\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/docker/docker-credential-helpers/commit/b0820e3a64d4e64473e91cfdc9ea4a0ca5a9a8d7\"\u003e\u003ccode\u003eb0820e3\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/docker/docker-credential-helpers/issues/441\"\u003e#441\u003c/a\u003e from docker/dependabot/github_actions/actions/checkou...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/docker/docker-credential-helpers/commit/f84e99174ce8ec47d21bd3a42e8575c1ff474ebb\"\u003e\u003ccode\u003ef84e991\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/docker/docker-credential-helpers/issues/445\"\u003e#445\u003c/a\u003e from thaJeztah/bump_go_1.26.4\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/docker/docker-credential-helpers/commit/65d13910ee69560b4aa87de465aeea85e154d009\"\u003e\u003ccode\u003e65d1391\u003c/code\u003e\u003c/a\u003e update to go1.26.4\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/docker/docker-credential-helpers/commit/d21de35039a4cae5adb06d44f8e079c69ada2542\"\u003e\u003ccode\u003ed21de35\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/docker/docker-credential-helpers/issues/444\"\u003e#444\u003c/a\u003e from docker/dependabot/github_actions/crazy-max/dot-g...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/docker/docker-credential-helpers/commit/c6ca626eb2a46f69fc745e4d03518c061c991772\"\u003e\u003ccode\u003ec6ca626\u003c/code\u003e\u003c/a\u003e build(deps): bump actions/checkout from 6.0.2 to 6.0.3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/docker/docker-credential-helpers/commit/1d2dd3daa2495ce9ba2477971607a80b93a82bd4\"\u003e\u003ccode\u003e1d2dd3d\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/docker/docker-credential-helpers/issues/440\"\u003e#440\u003c/a\u003e from docker/dependabot/github_actions/docker/setup-qe...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/docker/docker-credential-helpers/commit/3a54b5c9b198b8eb260450ba9eef56f73d631c15\"\u003e\u003ccode\u003e3a54b5c\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/docker/docker-credential-helpers/issues/439\"\u003e#439\u003c/a\u003e from docker/dependabot/github_actions/docker/bake-act...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/docker/docker-credential-helpers/commit/b68f2ecf6dcfbe9982313a2df2ddf0d4e6db3569\"\u003e\u003ccode\u003eb68f2ec\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/docker/docker-credential-helpers/issues/438\"\u003e#438\u003c/a\u003e from docker/dependabot/github_actions/docker/setup-bu...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/docker/docker-credential-helpers/commit/61072407aadd32152838da9d5737c28d477a5a62\"\u003e\u003ccode\u003e6107240\u003c/code\u003e\u003c/a\u003e build(deps): bump crazy-max/.github/.github/workflows/zizmor.yml\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/docker/docker-credential-helpers/compare/v0.9.7...v0.9.8\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `github.com/moby/sys/sequential` from 0.6.0 to 0.7.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/moby/sys/releases\"\u003egithub.com/moby/sys/sequential's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003esignal/v0.7.0\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAdd lcow supported signals to windows signal map by \u003ca href=\"https://github.com/katiewasnothere\"\u003e\u003ccode\u003e@​katiewasnothere\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/moby/sys/pull/98\"\u003emoby/sys#98\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eMakefile: rm .SHELLFLAGS, add set -e by \u003ca href=\"https://github.com/kolyshkin\"\u003e\u003ccode\u003e@​kolyshkin\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/moby/sys/pull/105\"\u003emoby/sys#105\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/moby/sys/compare/signal/v0.6.0...signal/v0.7.0\"\u003ehttps://github.com/moby/sys/compare/signal/v0.6.0...signal/v0.7.0\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003emountinfo v0.7.0\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003emountinfo: linux: use /proc/thread-self/mountinfo by \u003ca href=\"https://github.com/cyphar\"\u003e\u003ccode\u003e@​cyphar\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/moby/sys/pull/128\"\u003emoby/sys#128\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003esequential v0.7.0\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eupdate minimum go version to 1.24\u003c/li\u003e\n\u003cli\u003euse os.OpenFile with O_FILE_FLAG_SEQUENTIAL_SCAN on Go 1.26+\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/moby/sys/compare/sequential/v0.6.0...sequential/v0.7.0\"\u003ehttps://github.com/moby/sys/compare/sequential/v0.6.0...sequential/v0.7.0\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003emountinfo v0.6.2\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eupdate golang.org/x/sys v0.0.0-20220412211240-33da011f77ad by \u003ca href=\"https://github.com/thaJeztah\"\u003e\u003ccode\u003e@​thaJeztah\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/moby/sys/pull/116\"\u003emoby/sys#116\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003emountinfo: BSDs no longer need cgo nor reflect by \u003ca href=\"https://github.com/Red54\"\u003e\u003ccode\u003e@​Red54\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/moby/sys/pull/114\"\u003emoby/sys#114\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003emountinfo: update doc to use fs.ErrNotExist by \u003ca href=\"https://github.com/manugupt1\"\u003e\u003ccode\u003e@​manugupt1\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/moby/sys/pull/115\"\u003emoby/sys#115\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump x/sys/unix by \u003ca href=\"https://github.com/akhramov\"\u003e\u003ccode\u003e@​akhramov\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/moby/sys/pull/118\"\u003emoby/sys#118\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eNew Contributors\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Red54\"\u003e\u003ccode\u003e@​Red54\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/moby/sys/pull/114\"\u003emoby/sys#114\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/akhramov\"\u003e\u003ccode\u003e@​akhramov\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/moby/sys/pull/118\"\u003emoby/sys#118\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/moby/sys/compare/mountinfo/v0.6.1...mountinfo/v0.6.2\"\u003ehttps://github.com/moby/sys/compare/mountinfo/v0.6.1...mountinfo/v0.6.2\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003emountinfo v0.6.1\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eDo not wrap errors from filepath / os as they are already wrapped. by \u003ca href=\"https://github.com/manugupt1\"\u003e\u003ccode\u003e@​manugupt1\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/moby/sys/pull/109\"\u003emoby/sys#109\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eci: add go 1.18, drop 1.16 by \u003ca href=\"https://github.com/kolyshkin\"\u003e\u003ccode\u003e@​kolyshkin\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/moby/sys/pull/106\"\u003emoby/sys#106\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eNew Contributors\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/manugupt1\"\u003e\u003ccode\u003e@​manugupt1\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/moby/sys/pull/109\"\u003emoby/sys#109\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/moby/sys/compare/mountinfo/v0.6.0...mountinfo/v0.6.1\"\u003ehttps://github.com/moby/sys/compare/mountinfo/v0.6.0...mountinfo/v0.6.1\u003c/a\u003e\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/moby/sys/commit/b8d8fabf1fa5cf0de7c1a1729145eee854ea31f5\"\u003e\u003ccode\u003eb8d8fab\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/moby/sys/issues/105\"\u003e#105\u003c/a\u003e from kolyshkin/fix-mac-ci\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/moby/sys/commit/b12833524571bcc6c7ac781d53ecd7ebed9a19ff\"\u003e\u003ccode\u003eb128335\u003c/code\u003e\u003c/a\u003e Makefile: rm .SHELLFLAGS, add set -e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/moby/sys/commit/d4611de77a5e8b01f6e76a365dadaf0d63fd23bc\"\u003e\u003ccode\u003ed4611de\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/moby/sys/issues/103\"\u003e#103\u003c/a\u003e from kolyshkin/mount-bump-mountinfo-0.6\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/moby/sys/commit/e1c5b381e015fd09d60cef5242b0d2f374a80c7f\"\u003e\u003ccode\u003ee1c5b38\u003c/code\u003e\u003c/a\u003e mount: bump mountinfo to v0.6.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/moby/sys/commit/d01e595199e1213f509d8ee6e4b03217e6e54517\"\u003e\u003ccode\u003ed01e595\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/moby/sys/issues/100\"\u003e#100\u003c/a\u003e from kolyshkin/mounted-fast\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/moby/sys/commit/5d09d6976b05ad13edfde89cfe7ec98f1c657cc4\"\u003e\u003ccode\u003e5d09d69\u003c/code\u003e\u003c/a\u003e mountinfo: add TestMountedRoot\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/moby/sys/commit/303f101a47953b190bb980081a1f54e60f445368\"\u003e\u003ccode\u003e303f101\u003c/code\u003e\u003c/a\u003e mountinfo: add tests for MountedFast\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/moby/sys/commit/97425877370b3090e499b10e2488925ad7177122\"\u003e\u003ccode\u003e9742587\u003c/code\u003e\u003c/a\u003e mountinfo: TestMountedBy: rm exp\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/moby/sys/commit/3494465e1773a1bde25c640f866ac6a04812274e\"\u003e\u003ccode\u003e3494465\u003c/code\u003e\u003c/a\u003e mountinfo: mounted_linux_test: nits\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/moby/sys/commit/88ece65bf64bbb8cd80971835292cf910cd4e3a5\"\u003e\u003ccode\u003e88ece65\u003c/code\u003e\u003c/a\u003e mountinfo: add MountedFast\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/moby/sys/compare/signal/v0.6.0...signal/v0.7.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `golang.org/x/crypto` from 0.52.0 to 0.53.0\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/golang/crypto/commit/45460e079737ecb64f30d79d3d6fc2914494fa66\"\u003e\u003ccode\u003e45460e0\u003c/code\u003e\u003c/a\u003e go.mod: update golang.org/x dependencies\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/golang/crypto/commit/d37c95e27de65576f42440cdfbc261d810506841\"\u003e\u003ccode\u003ed37c95e\u003c/code\u003e\u003c/a\u003e pkcs12: limit PBKDF iteration count to prevent CPU exhaustion\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/golang/crypto/commit/e2ffffe738fb46531cd8924bab497bdc77d9ecc8\"\u003e\u003ccode\u003ee2ffffe\u003c/code\u003e\u003c/a\u003e ssh: reject incomplete gssapi-with-mic configurations\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/golang/crypto/commit/60e158ad30c226555794539d96f0f104f43395f7\"\u003e\u003ccode\u003e60e158a\u003c/code\u003e\u003c/a\u003e ssh/test: isolate CLI tests from user SSH config and agent\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/golang/crypto/commit/1b77d23dc8afb26a494e331a3c637b6de88398d2\"\u003e\u003ccode\u003e1b77d23\u003c/code\u003e\u003c/a\u003e ssh/knownhosts: reject lines with multiple or unknown markers\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/golang/crypto/commit/3872a2bc69f464352dea49c2856955ef7c5d5851\"\u003e\u003ccode\u003e3872a2b\u003c/code\u003e\u003c/a\u003e ssh/knownhosts: verify declared key type matches decoded key\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/golang/crypto/commit/9f72eccdf6fa09a7c68448a7fdc333dd2deb7d9d\"\u003e\u003ccode\u003e9f72ecc\u003c/code\u003e\u003c/a\u003e ssh/knownhosts: treat only ASCII space and tab as whitespace\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/golang/crypto/commit/8f405a4109d7ce87a44f89185bdc385914ce5c13\"\u003e\u003ccode\u003e8f405a4\u003c/code\u003e\u003c/a\u003e ssh: validate ECDSA curve matches expected algorithm\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/golang/crypto/commit/bb41b3dbe630c21c78e3aeb0ebdd8d06a3a34fcf\"\u003e\u003ccode\u003ebb41b3d\u003c/code\u003e\u003c/a\u003e ssh: improve DH GEX group selection using PreferredBits\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/golang/crypto/commit/e04e7219970912a40f80c4b13029416fdf960eeb\"\u003e\u003ccode\u003ee04e721\u003c/code\u003e\u003c/a\u003e ssh/agent: validate ed25519 private key length in Add\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/golang/crypto/compare/v0.52.0...v0.53.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `golang.org/x/mod` from 0.36.0 to 0.37.0\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/golang/mod/commit/deb1dfcdb7c7fd98fb5afddc3e95dd36d5880874\"\u003e\u003ccode\u003edeb1dfc\u003c/code\u003e\u003c/a\u003e go.mod: update golang.org/x dependencies\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/golang/mod/commit/087f6515dd3ba3e8b06918fa425ffe7732321a7a\"\u003e\u003ccode\u003e087f651\u003c/code\u003e\u003c/a\u003e modfile: use slices.Backward\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/golang/mod/commit/343ee60345a1f2ff0692be9dd068c0778dba985c\"\u003e\u003ccode\u003e343ee60\u003c/code\u003e\u003c/a\u003e x/mod: allow for aggressively conslidating requires\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/golang/mod/compare/v0.36.0...v0.37.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `golang.org/x/sync` from 0.20.0 to 0.21.0\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/golang/sync/commit/5071ed6a9f1617117556b66384f765c934de3698\"\u003e\u003ccode\u003e5071ed6\u003c/code\u003e\u003c/a\u003e all: fix some comments to improve readability\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/golang/sync/compare/v0.20.0...v0.21.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `golang.org/x/sys` from 0.45.0 to 0.46.0\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/golang/sys/commit/d58dcfa8a74514c0ef0fc401259156c5e2fc9ff5\"\u003e\u003ccode\u003ed58dcfa\u003c/code\u003e\u003c/a\u003e unix: add GPIO constants and structs\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/golang/sys/compare/v0.45.0...v0.46.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `golang.org/x/term` from 0.43.0 to 0.44.0\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/golang/term/commit/3b43943a9e7de876a5d5e1f5e7da7cdeae0f542a\"\u003e\u003ccode\u003e3b43943\u003c/code\u003e\u003c/a\u003e go.mod: update golang.org/x dependencies\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/golang/term/compare/v0.43.0...v0.44.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `golang.org/x/text` from 0.37.0 to 0.38.0\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/golang/text/commit/f4bb6328041b090f85b93014bd369edfcd24bdef\"\u003e\u003ccode\u003ef4bb632\u003c/code\u003e\u003c/a\u003e go.mod: update golang.org/x dependencies\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/golang/text/compare/v0.37.0...v0.38.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `modernc.org/libc` from 1.72.5 to 1.73.0\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/libc/commit/590e812d6c968bde4283faa466420551a2e6c1c4\"\u003e\u003ccode\u003e590e812\u003c/code\u003e\u003c/a\u003e modernc.org/libc: riscv64 auto generate\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/libc/commit/49b80c99182f5c0b12651d661b14b100e8040363\"\u003e\u003ccode\u003e49b80c9\u003c/code\u003e\u003c/a\u003e modernc.org/libc: pi64 auto generate\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/libc/commit/95c7898d6459c94b080b08ea55a810c224656dc1\"\u003e\u003ccode\u003e95c7898\u003c/code\u003e\u003c/a\u003e modernc.org/libc: s390x auto generate\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/libc/commit/5d087e6712afde99748d0bb420f410b127a516f9\"\u003e\u003ccode\u003e5d087e6\u003c/code\u003e\u003c/a\u003e modernc.org/libc: ppc64le auto generate\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/libc/commit/474da569fa453b611b02d6b2149e8892a282b5dd\"\u003e\u003ccode\u003e474da56\u003c/code\u003e\u003c/a\u003e modernc.org/libc: pi32 auto generate\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/libc/commit/d21cfc52073448d03935f6cf8fc565433a5df1cc\"\u003e\u003ccode\u003ed21cfc5\u003c/code\u003e\u003c/a\u003e modernc.org/libc: e5-1650 auto generate\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/libc/commit/521661f7edadc8aec7b4453de9a3d48ac6658497\"\u003e\u003ccode\u003e521661f\u003c/code\u003e\u003c/a\u003e modernc.org/libc: linux_loong64b auto generate\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/libc/commit/86316a5c5bb6fe7f4ac0474fbe3207ef45eb06d6\"\u003e\u003ccode\u003e86316a5\u003c/code\u003e\u003c/a\u003e modernc.org/libc: nuc64 auto generate\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/libc/commit/27c8c6ac61d9fe106ee76a78e27c1a659c151aa5\"\u003e\u003ccode\u003e27c8c6a\u003c/code\u003e\u003c/a\u003e nuc64: auto deps\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/libc/commit/bc390ee728e3d7256b022e1d0e1f2debcb0efc58\"\u003e\u003ccode\u003ebc390ee\u003c/code\u003e\u003c/a\u003e modernc.org/libc: riscv64 auto generate\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://gitlab.com/cznic/libc/compare/v1.72.5...v1.73.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `modernc.org/sqlite` from 1.51.0 to 1.52.0\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://gitlab.com/cznic/sqlite/blob/master/CHANGELOG.md\"\u003emodernc.org/sqlite's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003eChangelog\u003c/h1\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e2026-06-06 v1.52.0:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eUpgrade to \u003ca href=\"https://sqlite.org/releaselog/3_53_2.html\"\u003eSQLite 3.53.2\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003eBackup.Remaining\u003c/code\u003e and \u003ccode\u003eBackup.PageCount\u003c/code\u003e, thin wrappers around the existing \u003ccode\u003esqlite3_backup_remaining\u003c/code\u003e and \u003ccode\u003esqlite3_backup_pagecount\u003c/code\u003e C symbols. Together they expose the per-\u003ccode\u003eStep\u003c/code\u003e progress counters that the underlying backup object already maintains, enabling progress reporting during online backups without dropping to \u003ccode\u003emodernc.org/sqlite/lib\u003c/code\u003e directly.\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/122\"\u003e#122\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/122\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/122\u003c/a\u003e), thanks Ian Chechin!\u003c/li\u003e\n\u003cli\u003eDrop the redundant second copy in \u003ccode\u003e(*conn).columnText\u003c/code\u003e, the path that backs every \u003ccode\u003eRows.Scan\u003c/code\u003e into a Go \u003ccode\u003estring\u003c/code\u003e for a TEXT column. The value's bytes are still copied once out of SQLite-owned memory into a fresh Go buffer; that buffer is then reinterpreted as the result string with \u003ccode\u003eunsafe.String\u003c/code\u003e rather than copied a second time by the implicit \u003ccode\u003estring([]byte)\u003c/code\u003e conversion. This removes one allocation per TEXT value per row and roughly halves the bytes allocated on that path; on the new \u003ccode\u003eBenchmarkColumnTextScan\u003c/code\u003e cases it is ~13–20% faster for payloads of 256 B and larger, with no measurable change for very short strings. Purely internal: no API or behavioral change, and the returned string never aliases SQLite's buffer.\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/123\"\u003e#123\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/123\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/123\u003c/a\u003e), thanks Ian Chechin!\u003c/li\u003e\n\u003cli\u003eCache each result column's declared type once per result set in \u003ccode\u003enewRows\u003c/code\u003e instead of recomputing it on every row. The TEXT branch of \u003ccode\u003eRows.Next\u003c/code\u003e calls \u003ccode\u003eColumnTypeDatabaseTypeName\u003c/code\u003e for every TEXT column on every row (independent of any DSN flag), which previously did a \u003ccode\u003elibc.GoString\u003c/code\u003e + \u003ccode\u003estrings.ToUpper\u003c/code\u003e each time; that lookup is now a single index into a cached, pre-uppercased \u003ccode\u003e[]string\u003c/code\u003e, and \u003ccode\u003eColumnTypeScanType\u003c/code\u003e reads the same cache and drops its per-call \u003ccode\u003estrings.ToLower\u003c/code\u003e. The declared type is fixed for the lifetime of a prepared statement, so the C round-trip is paid once per column rather than once per column per row, removing exactly 1 alloc + 8 B per TEXT column per row from the \u003ccode\u003eNext\u003c/code\u003e hot path. The new \u003ccode\u003eBenchmarkTextToTimeScan\u003c/code\u003e cases show ~7% faster on a 1000-row DATETIME SELECT under \u003ccode\u003e_texttotime=1\u003c/code\u003e. Purely internal: \u003ccode\u003eColumnTypeDatabaseTypeName\u003c/code\u003e and \u003ccode\u003eColumnTypeScanType\u003c/code\u003e return identical values, no API or behavioral change.\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/124\"\u003e#124\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/124\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/124\u003c/a\u003e), thanks Ian Chechin!\u003c/li\u003e\n\u003cli\u003eCache, per result column, the \u003ccode\u003eparseTimeFormats\u003c/code\u003e index that first parsed a TEXT-stored DATE/DATETIME/TIMESTAMP value, and try that format first on later rows instead of re-walking the list from the top. \u003ccode\u003e(*conn).parseTime\u003c/code\u003e previously ran \u003ccode\u003etime.Parse\u003c/code\u003e down the format list on every such row; for the canonical SQLite TEXT datetime format every row paid two failed \u003ccode\u003etime.Parse\u003c/code\u003e attempts — each allocating a \u003ccode\u003e*time.ParseError\u003c/code\u003e — before the match. On a 1000-row DATETIME TEXT SELECT this cuts ~50% of allocs/op and ~57% of B/op and is ~37% faster. The fall-through chain is preserved exactly: the seven formats are mutually exclusive, so the cached hint can never select a different match than the in-order scan, and the parsed \u003ccode\u003edriver.Value\u003c/code\u003e is identical to before. Purely internal: no API or behavioral change.\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/125\"\u003e#125\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/125\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/125\u003c/a\u003e), thanks Ian Chechin!\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e2026-05-28 v1.51.0:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003ePool the \u003ccode\u003e[]driver.Value\u003c/code\u003e slice passed to scalar/aggregate UDF callbacks and to vtab \u003ccode\u003eFilter\u003c/code\u003e/\u003ccode\u003eInsert\u003c/code\u003e/\u003ccode\u003eUpdate\u003c/code\u003e callbacks, eliminating the dominant per-row allocation on UDF-heavy queries. Benchmarks on a 1000-row, 3-arg noop scalar UDF show ~40% fewer bytes/op and ~15% fewer allocs/op.\u003c/li\u003e\n\u003cli\u003eDocument the matching \u0026quot;arguments are not valid past return\u0026quot; contract on \u003ccode\u003evtab.Cursor.Filter\u003c/code\u003e and \u003ccode\u003evtab.Updater.Insert\u003c/code\u003e/\u003ccode\u003eUpdate\u003c/code\u003e, consistent with the existing rule for \u003ccode\u003eFunctionImpl.Scalar\u003c/code\u003e / \u003ccode\u003eAggregateFunction.Step\u003c/code\u003e / \u003ccode\u003eWindowInverse\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003eResolves [GitLab issue \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/226\"\u003e#226\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/issues/226\"\u003ehttps://gitlab.com/cznic/sqlite/-/issues/226\u003c/a\u003e). See [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/114\"\u003e#114\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/114\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/114\u003c/a\u003e), thanks Ian Chechin!\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003eFileControl.FileControlDataVersion\u003c/code\u003e, a wrapper around \u003ccode\u003eSQLITE_FCNTL_DATA_VERSION\u003c/code\u003e for observing pager-cache data-version changes, including those made on the same connection. Useful as a primitive for application-level cache invalidation.\u003c/li\u003e\n\u003cli\u003eExposed via the idiomatic \u003ccode\u003edatabase/sql\u003c/code\u003e escape hatch \u003ccode\u003e(*sql.Conn).Raw()\u003c/code\u003e, consistent with the existing \u003ccode\u003eFileControlPersistWAL\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/115\"\u003e#115\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/115\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/115\u003c/a\u003e), thanks Ian Chechin!\u003c/li\u003e\n\u003cli\u003eFix a regression where in-memory connections (\u003ccode\u003e:memory:\u003c/code\u003e, \u003ccode\u003efile::memory:\u003c/code\u003e, shared-cache memory URIs) were discarded by \u003ccode\u003edatabase/sql\u003c/code\u003e after a context-cancelled query, taking the entire in-memory store with them. The fix for \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/198\"\u003e#198\u003c/a\u003e had added an \u003ccode\u003esqlite3_is_interrupted\u003c/code\u003e check to the connection validator that mistakenly applied to in-memory connections too, re-introducing the bug originally fixed by !74. File-backed connections keep the existing behaviour and are still discarded after an interrupt.\u003c/li\u003e\n\u003cli\u003eResolves [GitLab issue \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/196\"\u003e#196\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/issues/196\"\u003ehttps://gitlab.com/cznic/sqlite/-/issues/196\u003c/a\u003e). See [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/116\"\u003e#116\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/116\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/116\u003c/a\u003e), thanks Ian Chechin!\u003c/li\u003e\n\u003cli\u003eAdd an opt-in \u003ccode\u003eFunctionImpl.VolatileArgs\u003c/code\u003e flag that hands TEXT and BLOB arguments to scalar and aggregate UDF callbacks as zero-copy views (\u003ccode\u003eunsafe.String\u003c/code\u003e/\u003ccode\u003eunsafe.Slice\u003c/code\u003e) over SQLite's own value buffers, eliminating the per-argument \u003ccode\u003elibc.GoString\u003c/code\u003e/\u003ccode\u003emake([]byte)\u003c/code\u003e copy that the \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/226\"\u003e#226\u003c/a\u003e slice-pooling left as the remaining per-row allocation. On the same 1000-row, 3-arg (INTEGER/TEXT/BLOB) noop scalar UDF this removes a further ~35% of allocs/op and ~11% of bytes/op on top of \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/226\"\u003e#226\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003eThe views are valid only for the duration of the callback and must not be retained past return or across rows; a callback that needs to keep a value must copy it. With \u003ccode\u003eVolatileArgs\u003c/code\u003e unset (the default) arguments keep the existing copied, caller-owned semantics, so the flag is fully backward compatible; it has no effect on integer, float, time, or NULL arguments.\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/120\"\u003e#120\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/120\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/120\u003c/a\u003e), thanks Ian Chechin!\u003c/li\u003e\n\u003cli\u003eExtend the opt-in \u003ccode\u003eVolatileArgs\u003c/code\u003e zero-copy TEXT/BLOB argument access from \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/120\"\u003e#120\u003c/a\u003e to the virtual-table \u003ccode\u003eCursor.Filter\u003c/code\u003e (\u003ccode\u003exFilter\u003c/code\u003e) and \u003ccode\u003eUpdater.Insert\u003c/code\u003e/\u003ccode\u003eUpdate\u003c/code\u003e (\u003ccode\u003exUpdate\u003c/code\u003e) callbacks. A \u003ccode\u003evtab.Module\u003c/code\u003e opts in by implementing the new optional \u003ccode\u003evtab.VolatileArgsOpter\u003c/code\u003e interface (\u003ccode\u003eVolatileArgs() bool\u003c/code\u003e); the flag is read once at module registration and shared by every table created from it. On a vtab call carrying one TEXT and one BLOB argument this removes 2 allocs/op (one \u003ccode\u003elibc.GoString\u003c/code\u003e, one \u003ccode\u003emake([]byte)\u003c/code\u003e) on each of the Filter and Update paths.\u003c/li\u003e\n\u003cli\u003eThe same safety contract as \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/120\"\u003e#120\u003c/a\u003e applies: the views are valid only for the duration of the callback and must not be retained past return or across rows; a callback that needs to keep a value must copy it. Modules that do not implement \u003ccode\u003eVolatileArgsOpter\u003c/code\u003e (the default for all existing modules) are byte-for-byte unchanged, and the flag has no effect on integer, float, time, or NULL arguments.\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/121\"\u003e#121\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/121\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/121\u003c/a\u003e), thanks Ian Chechin!\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e2026-05-10 v1.50.1:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eUpgrade to \u003ca href=\"https://sqlite.org/releaselog/3_53_1.html\"\u003eSQLite 3.53.1\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e2026-04-24 v1.50.0:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eUpgrade to sqlite-vec \u003ca href=\"https://github.com/asg017/sqlite-vec/releases/tag/v0.1.9\"\u003ev0.1.9\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003eIntroduce \u003ccode\u003eColumnInfo\u003c/code\u003e, enabling dynamic query builders and ORMs to retrieve underlying SQLite C-API metadata (\u003ccode\u003eOriginName\u003c/code\u003e, \u003ccode\u003eTableName\u003c/code\u003e, \u003ccode\u003eDatabaseName\u003c/code\u003e, and \u003ccode\u003eDeclType\u003c/code\u003e).\u003c/li\u003e\n\u003cli\u003eThis feature is exposed via the idiomatic \u003ccode\u003edatabase/sql\u003c/code\u003e escape hatch \u003ccode\u003e(*sql.Conn).Raw()\u003c/code\u003e, avoiding custom statement handles and keeping the standard library workflow intact.\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/113\"\u003e#113\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/113\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/113\u003c/a\u003e), thanks Josh Bleecher Snyder!\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e2026-04-17 v1.49.0: Upgrade to \u003ca href=\"https://sqlite.org/releaselog/3_53_0.html\"\u003eSQLite 3.53.0\u003c/a\u003e.\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdded \u003ccode\u003e-DSQLITE_ENABLE_DBPAGE_VTAB\u003c/code\u003e to the transpilation. See \u003ca href=\"https://www.sqlite.org/dbpage.html\"\u003e\u0026quot;The SQLITE_DBPAGE Virtual Table\u0026quot;\u003c/a\u003e for details.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e2026-04-06 v1.48.2:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eFix ABI mappin...\n\n_Description has been truncated_","html_url":"https://github.com/paketo-buildpacks/vsdbg/pull/749","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/paketo-buildpacks%2Fvsdbg/issues/749","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/749/packages"},{"uuid":"4608256010","node_id":"PR_kwDORhOvHc7jqu7q","number":34,"state":"open","title":"chore(deps): bump modernc.org/sqlite from 1.51.0 to 1.52.0","user":"dependabot[bot]","labels":["dependencies","go"],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":null,"author_association":null,"state_reason":null,"created_at":"2026-06-07T18:12:33.000Z","updated_at":"2026-06-07T18:13:17.000Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"chore(deps)","packages":[{"name":"modernc.org/sqlite","old_version":"1.51.0","new_version":"1.52.0","repository_url":null}],"path":null,"ecosystem":"go"},"body":"Bumps [modernc.org/sqlite](https://gitlab.com/cznic/sqlite) from 1.51.0 to 1.52.0.\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://gitlab.com/cznic/sqlite/blob/master/CHANGELOG.md\"\u003emodernc.org/sqlite's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003eChangelog\u003c/h1\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e2026-06-06 v1.52.0:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eUpgrade to \u003ca href=\"https://sqlite.org/releaselog/3_53_2.html\"\u003eSQLite 3.53.2\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003eBackup.Remaining\u003c/code\u003e and \u003ccode\u003eBackup.PageCount\u003c/code\u003e, thin wrappers around the existing \u003ccode\u003esqlite3_backup_remaining\u003c/code\u003e and \u003ccode\u003esqlite3_backup_pagecount\u003c/code\u003e C symbols. Together they expose the per-\u003ccode\u003eStep\u003c/code\u003e progress counters that the underlying backup object already maintains, enabling progress reporting during online backups without dropping to \u003ccode\u003emodernc.org/sqlite/lib\u003c/code\u003e directly.\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/122\"\u003e#122\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/122\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/122\u003c/a\u003e), thanks Ian Chechin!\u003c/li\u003e\n\u003cli\u003eDrop the redundant second copy in \u003ccode\u003e(*conn).columnText\u003c/code\u003e, the path that backs every \u003ccode\u003eRows.Scan\u003c/code\u003e into a Go \u003ccode\u003estring\u003c/code\u003e for a TEXT column. The value's bytes are still copied once out of SQLite-owned memory into a fresh Go buffer; that buffer is then reinterpreted as the result string with \u003ccode\u003eunsafe.String\u003c/code\u003e rather than copied a second time by the implicit \u003ccode\u003estring([]byte)\u003c/code\u003e conversion. This removes one allocation per TEXT value per row and roughly halves the bytes allocated on that path; on the new \u003ccode\u003eBenchmarkColumnTextScan\u003c/code\u003e cases it is ~13–20% faster for payloads of 256 B and larger, with no measurable change for very short strings. Purely internal: no API or behavioral change, and the returned string never aliases SQLite's buffer.\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/123\"\u003e#123\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/123\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/123\u003c/a\u003e), thanks Ian Chechin!\u003c/li\u003e\n\u003cli\u003eCache each result column's declared type once per result set in \u003ccode\u003enewRows\u003c/code\u003e instead of recomputing it on every row. The TEXT branch of \u003ccode\u003eRows.Next\u003c/code\u003e calls \u003ccode\u003eColumnTypeDatabaseTypeName\u003c/code\u003e for every TEXT column on every row (independent of any DSN flag), which previously did a \u003ccode\u003elibc.GoString\u003c/code\u003e + \u003ccode\u003estrings.ToUpper\u003c/code\u003e each time; that lookup is now a single index into a cached, pre-uppercased \u003ccode\u003e[]string\u003c/code\u003e, and \u003ccode\u003eColumnTypeScanType\u003c/code\u003e reads the same cache and drops its per-call \u003ccode\u003estrings.ToLower\u003c/code\u003e. The declared type is fixed for the lifetime of a prepared statement, so the C round-trip is paid once per column rather than once per column per row, removing exactly 1 alloc + 8 B per TEXT column per row from the \u003ccode\u003eNext\u003c/code\u003e hot path. The new \u003ccode\u003eBenchmarkTextToTimeScan\u003c/code\u003e cases show ~7% faster on a 1000-row DATETIME SELECT under \u003ccode\u003e_texttotime=1\u003c/code\u003e. Purely internal: \u003ccode\u003eColumnTypeDatabaseTypeName\u003c/code\u003e and \u003ccode\u003eColumnTypeScanType\u003c/code\u003e return identical values, no API or behavioral change.\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/124\"\u003e#124\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/124\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/124\u003c/a\u003e), thanks Ian Chechin!\u003c/li\u003e\n\u003cli\u003eCache, per result column, the \u003ccode\u003eparseTimeFormats\u003c/code\u003e index that first parsed a TEXT-stored DATE/DATETIME/TIMESTAMP value, and try that format first on later rows instead of re-walking the list from the top. \u003ccode\u003e(*conn).parseTime\u003c/code\u003e previously ran \u003ccode\u003etime.Parse\u003c/code\u003e down the format list on every such row; for the canonical SQLite TEXT datetime format every row paid two failed \u003ccode\u003etime.Parse\u003c/code\u003e attempts — each allocating a \u003ccode\u003e*time.ParseError\u003c/code\u003e — before the match. On a 1000-row DATETIME TEXT SELECT this cuts ~50% of allocs/op and ~57% of B/op and is ~37% faster. The fall-through chain is preserved exactly: the seven formats are mutually exclusive, so the cached hint can never select a different match than the in-order scan, and the parsed \u003ccode\u003edriver.Value\u003c/code\u003e is identical to before. Purely internal: no API or behavioral change.\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/125\"\u003e#125\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/125\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/125\u003c/a\u003e), thanks Ian Chechin!\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e2026-05-28 v1.51.0:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003ePool the \u003ccode\u003e[]driver.Value\u003c/code\u003e slice passed to scalar/aggregate UDF callbacks and to vtab \u003ccode\u003eFilter\u003c/code\u003e/\u003ccode\u003eInsert\u003c/code\u003e/\u003ccode\u003eUpdate\u003c/code\u003e callbacks, eliminating the dominant per-row allocation on UDF-heavy queries. Benchmarks on a 1000-row, 3-arg noop scalar UDF show ~40% fewer bytes/op and ~15% fewer allocs/op.\u003c/li\u003e\n\u003cli\u003eDocument the matching \u0026quot;arguments are not valid past return\u0026quot; contract on \u003ccode\u003evtab.Cursor.Filter\u003c/code\u003e and \u003ccode\u003evtab.Updater.Insert\u003c/code\u003e/\u003ccode\u003eUpdate\u003c/code\u003e, consistent with the existing rule for \u003ccode\u003eFunctionImpl.Scalar\u003c/code\u003e / \u003ccode\u003eAggregateFunction.Step\u003c/code\u003e / \u003ccode\u003eWindowInverse\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003eResolves [GitLab issue \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/226\"\u003e#226\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/issues/226\"\u003ehttps://gitlab.com/cznic/sqlite/-/issues/226\u003c/a\u003e). See [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/114\"\u003e#114\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/114\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/114\u003c/a\u003e), thanks Ian Chechin!\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003eFileControl.FileControlDataVersion\u003c/code\u003e, a wrapper around \u003ccode\u003eSQLITE_FCNTL_DATA_VERSION\u003c/code\u003e for observing pager-cache data-version changes, including those made on the same connection. Useful as a primitive for application-level cache invalidation.\u003c/li\u003e\n\u003cli\u003eExposed via the idiomatic \u003ccode\u003edatabase/sql\u003c/code\u003e escape hatch \u003ccode\u003e(*sql.Conn).Raw()\u003c/code\u003e, consistent with the existing \u003ccode\u003eFileControlPersistWAL\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/115\"\u003e#115\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/115\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/115\u003c/a\u003e), thanks Ian Chechin!\u003c/li\u003e\n\u003cli\u003eFix a regression where in-memory connections (\u003ccode\u003e:memory:\u003c/code\u003e, \u003ccode\u003efile::memory:\u003c/code\u003e, shared-cache memory URIs) were discarded by \u003ccode\u003edatabase/sql\u003c/code\u003e after a context-cancelled query, taking the entire in-memory store with them. The fix for \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/198\"\u003e#198\u003c/a\u003e had added an \u003ccode\u003esqlite3_is_interrupted\u003c/code\u003e check to the connection validator that mistakenly applied to in-memory connections too, re-introducing the bug originally fixed by !74. File-backed connections keep the existing behaviour and are still discarded after an interrupt.\u003c/li\u003e\n\u003cli\u003eResolves [GitLab issue \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/196\"\u003e#196\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/issues/196\"\u003ehttps://gitlab.com/cznic/sqlite/-/issues/196\u003c/a\u003e). See [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/116\"\u003e#116\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/116\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/116\u003c/a\u003e), thanks Ian Chechin!\u003c/li\u003e\n\u003cli\u003eAdd an opt-in \u003ccode\u003eFunctionImpl.VolatileArgs\u003c/code\u003e flag that hands TEXT and BLOB arguments to scalar and aggregate UDF callbacks as zero-copy views (\u003ccode\u003eunsafe.String\u003c/code\u003e/\u003ccode\u003eunsafe.Slice\u003c/code\u003e) over SQLite's own value buffers, eliminating the per-argument \u003ccode\u003elibc.GoString\u003c/code\u003e/\u003ccode\u003emake([]byte)\u003c/code\u003e copy that the \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/226\"\u003e#226\u003c/a\u003e slice-pooling left as the remaining per-row allocation. On the same 1000-row, 3-arg (INTEGER/TEXT/BLOB) noop scalar UDF this removes a further ~35% of allocs/op and ~11% of bytes/op on top of \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/226\"\u003e#226\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003eThe views are valid only for the duration of the callback and must not be retained past return or across rows; a callback that needs to keep a value must copy it. With \u003ccode\u003eVolatileArgs\u003c/code\u003e unset (the default) arguments keep the existing copied, caller-owned semantics, so the flag is fully backward compatible; it has no effect on integer, float, time, or NULL arguments.\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/120\"\u003e#120\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/120\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/120\u003c/a\u003e), thanks Ian Chechin!\u003c/li\u003e\n\u003cli\u003eExtend the opt-in \u003ccode\u003eVolatileArgs\u003c/code\u003e zero-copy TEXT/BLOB argument access from \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/120\"\u003e#120\u003c/a\u003e to the virtual-table \u003ccode\u003eCursor.Filter\u003c/code\u003e (\u003ccode\u003exFilter\u003c/code\u003e) and \u003ccode\u003eUpdater.Insert\u003c/code\u003e/\u003ccode\u003eUpdate\u003c/code\u003e (\u003ccode\u003exUpdate\u003c/code\u003e) callbacks. A \u003ccode\u003evtab.Module\u003c/code\u003e opts in by implementing the new optional \u003ccode\u003evtab.VolatileArgsOpter\u003c/code\u003e interface (\u003ccode\u003eVolatileArgs() bool\u003c/code\u003e); the flag is read once at module registration and shared by every table created from it. On a vtab call carrying one TEXT and one BLOB argument this removes 2 allocs/op (one \u003ccode\u003elibc.GoString\u003c/code\u003e, one \u003ccode\u003emake([]byte)\u003c/code\u003e) on each of the Filter and Update paths.\u003c/li\u003e\n\u003cli\u003eThe same safety contract as \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/120\"\u003e#120\u003c/a\u003e applies: the views are valid only for the duration of the callback and must not be retained past return or across rows; a callback that needs to keep a value must copy it. Modules that do not implement \u003ccode\u003eVolatileArgsOpter\u003c/code\u003e (the default for all existing modules) are byte-for-byte unchanged, and the flag has no effect on integer, float, time, or NULL arguments.\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/121\"\u003e#121\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/121\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/121\u003c/a\u003e), thanks Ian Chechin!\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e2026-05-10 v1.50.1:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eUpgrade to \u003ca href=\"https://sqlite.org/releaselog/3_53_1.html\"\u003eSQLite 3.53.1\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e2026-04-24 v1.50.0:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eUpgrade to sqlite-vec \u003ca href=\"https://github.com/asg017/sqlite-vec/releases/tag/v0.1.9\"\u003ev0.1.9\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003eIntroduce \u003ccode\u003eColumnInfo\u003c/code\u003e, enabling dynamic query builders and ORMs to retrieve underlying SQLite C-API metadata (\u003ccode\u003eOriginName\u003c/code\u003e, \u003ccode\u003eTableName\u003c/code\u003e, \u003ccode\u003eDatabaseName\u003c/code\u003e, and \u003ccode\u003eDeclType\u003c/code\u003e).\u003c/li\u003e\n\u003cli\u003eThis feature is exposed via the idiomatic \u003ccode\u003edatabase/sql\u003c/code\u003e escape hatch \u003ccode\u003e(*sql.Conn).Raw()\u003c/code\u003e, avoiding custom statement handles and keeping the standard library workflow intact.\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/113\"\u003e#113\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/113\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/113\u003c/a\u003e), thanks Josh Bleecher Snyder!\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e2026-04-17 v1.49.0: Upgrade to \u003ca href=\"https://sqlite.org/releaselog/3_53_0.html\"\u003eSQLite 3.53.0\u003c/a\u003e.\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdded \u003ccode\u003e-DSQLITE_ENABLE_DBPAGE_VTAB\u003c/code\u003e to the transpilation. See \u003ca href=\"https://www.sqlite.org/dbpage.html\"\u003e\u0026quot;The SQLITE_DBPAGE Virtual Table\u0026quot;\u003c/a\u003e for details.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e2026-04-06 v1.48.2:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eFix ABI mapping mismatch in the pre-update hook trampoline that caused silent truncation of large 64-bit RowIDs.\u003c/li\u003e\n\u003cli\u003eEnsure the Go trampoline signature correctly aligns with the public \u003ccode\u003esqlite3_preupdate_hook\u003c/code\u003e C API, preventing data corruption for high-entropy keys (e.g., Snowflake IDs).\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/98\"\u003e#98\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/98\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/98\u003c/a\u003e), thanks Josh Bleecher Snyder!\u003c/li\u003e\n\u003cli\u003eFix the memory allocator used in \u003ccode\u003e(*conn).Deserialize\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003eReplace \u003ccode\u003etls.Alloc\u003c/code\u003e with \u003ccode\u003esqlite3_malloc64\u003c/code\u003e to prevent internal allocator corruption. This ensures the buffer is safely owned by SQLite, which may resize or free it due to the \u003ccode\u003eSQLITE_DESERIALIZE_RESIZEABLE\u003c/code\u003e and \u003ccode\u003eSQLITE_DESERIALIZE_FREEONCLOSE\u003c/code\u003e flags.\u003c/li\u003e\n\u003cli\u003ePrevent a memory leak by properly freeing the allocated buffer if fetching the main database name fails before handing ownership to SQLite.\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/100\"\u003e#100\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/100\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/100\u003c/a\u003e), thanks Josh Bleecher Snyder!\u003c/li\u003e\n\u003cli\u003eFix \u003ccode\u003e(*conn).Deserialize\u003c/code\u003e to explicitly reject \u003ccode\u003enil\u003c/code\u003e or empty byte slices.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/66b4d20f42485b9823a2d35c86b08335d927d0e5\"\u003e\u003ccode\u003e66b4d20\u003c/code\u003e\u003c/a\u003e release v1.52.0, upgrade to SQLite 3.53.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/e3f64ec2f026880b2fbc868f195863648cd07fb3\"\u003e\u003ccode\u003ee3f64ec\u003c/code\u003e\u003c/a\u003e rows: clarify parseFmtIdx mixed-column cost; CHANGELOG.md: document \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/125\"\u003e#125\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/448579342c2da286622d7cab5db84a746124e7b1\"\u003e\u003ccode\u003e4485793\u003c/code\u003e\u003c/a\u003e Merge branch 'perf/cache-parse-time-format' into 'master'\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/3638d17bf28d730d7dd90ff5cf3f93c45b9d752e\"\u003e\u003ccode\u003e3638d17\u003c/code\u003e\u003c/a\u003e rows: cache the parseTime format index per result column\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/7da793ef16502dced14643451a8bec834f999d9e\"\u003e\u003ccode\u003e7da793e\u003c/code\u003e\u003c/a\u003e CHANGELOG.md: document \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/124\"\u003e#124\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/51e6714774262680e2454b1a9ccc49b4245b220a\"\u003e\u003ccode\u003e51e6714\u003c/code\u003e\u003c/a\u003e Merge branch 'perf/cache-column-decltype' into 'master'\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/8a6f33ce42bfa4a864daf8a4c97908e7691499d9\"\u003e\u003ccode\u003e8a6f33c\u003c/code\u003e\u003c/a\u003e rows: lock down ColumnTypeScanType under the decltype cache\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/f8fb6dd1d58d74d022b77cc385a9828a1ac49762\"\u003e\u003ccode\u003ef8fb6dd\u003c/code\u003e\u003c/a\u003e rows: cache the column decltype lookup once per result set\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/b17c0c7faf2247b8251efaa638ac101e5dea7ec1\"\u003e\u003ccode\u003eb17c0c7\u003c/code\u003e\u003c/a\u003e CHANGELOG.md: document \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/123\"\u003e#123\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/c80a08fbe3d37ffa8c7e669c46053b692135523b\"\u003e\u003ccode\u003ec80a08f\u003c/code\u003e\u003c/a\u003e Merge branch 'perf/column-text-zero-copy' into 'master'\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://gitlab.com/cznic/sqlite/compare/v1.51.0...v1.52.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\n\n[![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=modernc.org/sqlite\u0026package-manager=go_modules\u0026previous-version=1.51.0\u0026new-version=1.52.0)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)\n\nDependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.\n\n[//]: # (dependabot-automerge-start)\n[//]: # (dependabot-automerge-end)\n\n---\n\n\u003cdetails\u003e\n\u003csummary\u003eDependabot commands and options\u003c/summary\u003e\n\u003cbr /\u003e\n\nYou can trigger Dependabot actions by commenting on this PR:\n- `@dependabot rebase` will rebase this PR\n- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it\n- `@dependabot show \u003cdependency name\u003e ignore conditions` will show all of the ignore conditions of the specified dependency\n- `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)\n- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)\n- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)\n\n\n\u003c/details\u003e","html_url":"https://github.com/skrashevich/botmux/pull/34","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/skrashevich%2Fbotmux/issues/34","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/34/packages"},{"uuid":"4593313479","node_id":"PR_kwDOQhloqM7i6hwL","number":1495,"state":"closed","title":"chore(deps)(deps): bump the go-dependencies group across 1 directory with 3 updates","user":"dependabot[bot]","labels":["dependencies","area: deps"],"assignees":[],"locked":false,"comments_count":5,"pull_request":true,"closed_at":"2026-06-07T03:13:02.000Z","author_association":null,"state_reason":null,"created_at":"2026-06-05T01:07:58.000Z","updated_at":"2026-06-07T03:13:40.000Z","time_to_close":180304,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"chore(deps)(deps): bump","group_name":"go-dependencies","update_count":3,"packages":[{"name":"github.com/gopacket/gopacket","old_version":"1.6.0","new_version":"1.6.1","repository_url":"https://github.com/gopacket/gopacket"},{"name":"modernc.org/sqlite","old_version":"1.50.1","new_version":"1.52.0"},{"name":"github.com/go-playground/validator/v10","old_version":"10.30.2","new_version":"10.30.3","repository_url":"https://github.com/go-playground/validator"}],"path":null,"ecosystem":"go"},"body":"Bumps the go-dependencies group with 3 updates in the / directory: [github.com/gopacket/gopacket](https://github.com/gopacket/gopacket), [modernc.org/sqlite](https://gitlab.com/cznic/sqlite) and [github.com/go-playground/validator/v10](https://github.com/go-playground/validator).\n\nUpdates `github.com/gopacket/gopacket` from 1.6.0 to 1.6.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/gopacket/gopacket/releases\"\u003egithub.com/gopacket/gopacket's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev1.6.1\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/gopacket/gopacket/compare/v1.6.0...v1.6.1\"\u003ehttps://github.com/gopacket/gopacket/compare/v1.6.0...v1.6.1\u003c/a\u003e\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gopacket/gopacket/commit/76119086f5936aacd7088bdf97d565501bb6c4cc\"\u003e\u003ccode\u003e7611908\u003c/code\u003e\u003c/a\u003e Merge commit from fork\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gopacket/gopacket/commit/145859d0eaee1a6f5925ffb93851c976449c3311\"\u003e\u003ccode\u003e145859d\u003c/code\u003e\u003c/a\u003e Merge commit from fork\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/gopacket/gopacket/compare/v1.6.0...v1.6.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `modernc.org/sqlite` from 1.50.1 to 1.52.0\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://gitlab.com/cznic/sqlite/blob/master/CHANGELOG.md\"\u003emodernc.org/sqlite's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003eChangelog\u003c/h1\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e2026-06-06 v1.52.0:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eUpgrade to \u003ca href=\"https://sqlite.org/releaselog/3_53_2.html\"\u003eSQLite 3.53.2\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003eBackup.Remaining\u003c/code\u003e and \u003ccode\u003eBackup.PageCount\u003c/code\u003e, thin wrappers around the existing \u003ccode\u003esqlite3_backup_remaining\u003c/code\u003e and \u003ccode\u003esqlite3_backup_pagecount\u003c/code\u003e C symbols. Together they expose the per-\u003ccode\u003eStep\u003c/code\u003e progress counters that the underlying backup object already maintains, enabling progress reporting during online backups without dropping to \u003ccode\u003emodernc.org/sqlite/lib\u003c/code\u003e directly.\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/122\"\u003e#122\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/122\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/122\u003c/a\u003e), thanks Ian Chechin!\u003c/li\u003e\n\u003cli\u003eDrop the redundant second copy in \u003ccode\u003e(*conn).columnText\u003c/code\u003e, the path that backs every \u003ccode\u003eRows.Scan\u003c/code\u003e into a Go \u003ccode\u003estring\u003c/code\u003e for a TEXT column. The value's bytes are still copied once out of SQLite-owned memory into a fresh Go buffer; that buffer is then reinterpreted as the result string with \u003ccode\u003eunsafe.String\u003c/code\u003e rather than copied a second time by the implicit \u003ccode\u003estring([]byte)\u003c/code\u003e conversion. This removes one allocation per TEXT value per row and roughly halves the bytes allocated on that path; on the new \u003ccode\u003eBenchmarkColumnTextScan\u003c/code\u003e cases it is ~13–20% faster for payloads of 256 B and larger, with no measurable change for very short strings. Purely internal: no API or behavioral change, and the returned string never aliases SQLite's buffer.\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/123\"\u003e#123\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/123\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/123\u003c/a\u003e), thanks Ian Chechin!\u003c/li\u003e\n\u003cli\u003eCache each result column's declared type once per result set in \u003ccode\u003enewRows\u003c/code\u003e instead of recomputing it on every row. The TEXT branch of \u003ccode\u003eRows.Next\u003c/code\u003e calls \u003ccode\u003eColumnTypeDatabaseTypeName\u003c/code\u003e for every TEXT column on every row (independent of any DSN flag), which previously did a \u003ccode\u003elibc.GoString\u003c/code\u003e + \u003ccode\u003estrings.ToUpper\u003c/code\u003e each time; that lookup is now a single index into a cached, pre-uppercased \u003ccode\u003e[]string\u003c/code\u003e, and \u003ccode\u003eColumnTypeScanType\u003c/code\u003e reads the same cache and drops its per-call \u003ccode\u003estrings.ToLower\u003c/code\u003e. The declared type is fixed for the lifetime of a prepared statement, so the C round-trip is paid once per column rather than once per column per row, removing exactly 1 alloc + 8 B per TEXT column per row from the \u003ccode\u003eNext\u003c/code\u003e hot path. The new \u003ccode\u003eBenchmarkTextToTimeScan\u003c/code\u003e cases show ~7% faster on a 1000-row DATETIME SELECT under \u003ccode\u003e_texttotime=1\u003c/code\u003e. Purely internal: \u003ccode\u003eColumnTypeDatabaseTypeName\u003c/code\u003e and \u003ccode\u003eColumnTypeScanType\u003c/code\u003e return identical values, no API or behavioral change.\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/124\"\u003e#124\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/124\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/124\u003c/a\u003e), thanks Ian Chechin!\u003c/li\u003e\n\u003cli\u003eCache, per result column, the \u003ccode\u003eparseTimeFormats\u003c/code\u003e index that first parsed a TEXT-stored DATE/DATETIME/TIMESTAMP value, and try that format first on later rows instead of re-walking the list from the top. \u003ccode\u003e(*conn).parseTime\u003c/code\u003e previously ran \u003ccode\u003etime.Parse\u003c/code\u003e down the format list on every such row; for the canonical SQLite TEXT datetime format every row paid two failed \u003ccode\u003etime.Parse\u003c/code\u003e attempts — each allocating a \u003ccode\u003e*time.ParseError\u003c/code\u003e — before the match. On a 1000-row DATETIME TEXT SELECT this cuts ~50% of allocs/op and ~57% of B/op and is ~37% faster. The fall-through chain is preserved exactly: the seven formats are mutually exclusive, so the cached hint can never select a different match than the in-order scan, and the parsed \u003ccode\u003edriver.Value\u003c/code\u003e is identical to before. Purely internal: no API or behavioral change.\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/125\"\u003e#125\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/125\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/125\u003c/a\u003e), thanks Ian Chechin!\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e2026-05-28 v1.51.0:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003ePool the \u003ccode\u003e[]driver.Value\u003c/code\u003e slice passed to scalar/aggregate UDF callbacks and to vtab \u003ccode\u003eFilter\u003c/code\u003e/\u003ccode\u003eInsert\u003c/code\u003e/\u003ccode\u003eUpdate\u003c/code\u003e callbacks, eliminating the dominant per-row allocation on UDF-heavy queries. Benchmarks on a 1000-row, 3-arg noop scalar UDF show ~40% fewer bytes/op and ~15% fewer allocs/op.\u003c/li\u003e\n\u003cli\u003eDocument the matching \u0026quot;arguments are not valid past return\u0026quot; contract on \u003ccode\u003evtab.Cursor.Filter\u003c/code\u003e and \u003ccode\u003evtab.Updater.Insert\u003c/code\u003e/\u003ccode\u003eUpdate\u003c/code\u003e, consistent with the existing rule for \u003ccode\u003eFunctionImpl.Scalar\u003c/code\u003e / \u003ccode\u003eAggregateFunction.Step\u003c/code\u003e / \u003ccode\u003eWindowInverse\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003eResolves [GitLab issue \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/226\"\u003e#226\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/issues/226\"\u003ehttps://gitlab.com/cznic/sqlite/-/issues/226\u003c/a\u003e). See [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/114\"\u003e#114\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/114\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/114\u003c/a\u003e), thanks Ian Chechin!\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003eFileControl.FileControlDataVersion\u003c/code\u003e, a wrapper around \u003ccode\u003eSQLITE_FCNTL_DATA_VERSION\u003c/code\u003e for observing pager-cache data-version changes, including those made on the same connection. Useful as a primitive for application-level cache invalidation.\u003c/li\u003e\n\u003cli\u003eExposed via the idiomatic \u003ccode\u003edatabase/sql\u003c/code\u003e escape hatch \u003ccode\u003e(*sql.Conn).Raw()\u003c/code\u003e, consistent with the existing \u003ccode\u003eFileControlPersistWAL\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/115\"\u003e#115\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/115\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/115\u003c/a\u003e), thanks Ian Chechin!\u003c/li\u003e\n\u003cli\u003eFix a regression where in-memory connections (\u003ccode\u003e:memory:\u003c/code\u003e, \u003ccode\u003efile::memory:\u003c/code\u003e, shared-cache memory URIs) were discarded by \u003ccode\u003edatabase/sql\u003c/code\u003e after a context-cancelled query, taking the entire in-memory store with them. The fix for \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/198\"\u003e#198\u003c/a\u003e had added an \u003ccode\u003esqlite3_is_interrupted\u003c/code\u003e check to the connection validator that mistakenly applied to in-memory connections too, re-introducing the bug originally fixed by !74. File-backed connections keep the existing behaviour and are still discarded after an interrupt.\u003c/li\u003e\n\u003cli\u003eResolves [GitLab issue \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/196\"\u003e#196\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/issues/196\"\u003ehttps://gitlab.com/cznic/sqlite/-/issues/196\u003c/a\u003e). See [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/116\"\u003e#116\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/116\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/116\u003c/a\u003e), thanks Ian Chechin!\u003c/li\u003e\n\u003cli\u003eAdd an opt-in \u003ccode\u003eFunctionImpl.VolatileArgs\u003c/code\u003e flag that hands TEXT and BLOB arguments to scalar and aggregate UDF callbacks as zero-copy views (\u003ccode\u003eunsafe.String\u003c/code\u003e/\u003ccode\u003eunsafe.Slice\u003c/code\u003e) over SQLite's own value buffers, eliminating the per-argument \u003ccode\u003elibc.GoString\u003c/code\u003e/\u003ccode\u003emake([]byte)\u003c/code\u003e copy that the \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/226\"\u003e#226\u003c/a\u003e slice-pooling left as the remaining per-row allocation. On the same 1000-row, 3-arg (INTEGER/TEXT/BLOB) noop scalar UDF this removes a further ~35% of allocs/op and ~11% of bytes/op on top of \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/226\"\u003e#226\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003eThe views are valid only for the duration of the callback and must not be retained past return or across rows; a callback that needs to keep a value must copy it. With \u003ccode\u003eVolatileArgs\u003c/code\u003e unset (the default) arguments keep the existing copied, caller-owned semantics, so the flag is fully backward compatible; it has no effect on integer, float, time, or NULL arguments.\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/120\"\u003e#120\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/120\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/120\u003c/a\u003e), thanks Ian Chechin!\u003c/li\u003e\n\u003cli\u003eExtend the opt-in \u003ccode\u003eVolatileArgs\u003c/code\u003e zero-copy TEXT/BLOB argument access from \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/120\"\u003e#120\u003c/a\u003e to the virtual-table \u003ccode\u003eCursor.Filter\u003c/code\u003e (\u003ccode\u003exFilter\u003c/code\u003e) and \u003ccode\u003eUpdater.Insert\u003c/code\u003e/\u003ccode\u003eUpdate\u003c/code\u003e (\u003ccode\u003exUpdate\u003c/code\u003e) callbacks. A \u003ccode\u003evtab.Module\u003c/code\u003e opts in by implementing the new optional \u003ccode\u003evtab.VolatileArgsOpter\u003c/code\u003e interface (\u003ccode\u003eVolatileArgs() bool\u003c/code\u003e); the flag is read once at module registration and shared by every table created from it. On a vtab call carrying one TEXT and one BLOB argument this removes 2 allocs/op (one \u003ccode\u003elibc.GoString\u003c/code\u003e, one \u003ccode\u003emake([]byte)\u003c/code\u003e) on each of the Filter and Update paths.\u003c/li\u003e\n\u003cli\u003eThe same safety contract as \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/120\"\u003e#120\u003c/a\u003e applies: the views are valid only for the duration of the callback and must not be retained past return or across rows; a callback that needs to keep a value must copy it. Modules that do not implement \u003ccode\u003eVolatileArgsOpter\u003c/code\u003e (the default for all existing modules) are byte-for-byte unchanged, and the flag has no effect on integer, float, time, or NULL arguments.\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/121\"\u003e#121\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/121\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/121\u003c/a\u003e), thanks Ian Chechin!\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e2026-05-10 v1.50.1:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eUpgrade to \u003ca href=\"https://sqlite.org/releaselog/3_53_1.html\"\u003eSQLite 3.53.1\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e2026-04-24 v1.50.0:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eUpgrade to sqlite-vec \u003ca href=\"https://github.com/asg017/sqlite-vec/releases/tag/v0.1.9\"\u003ev0.1.9\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003eIntroduce \u003ccode\u003eColumnInfo\u003c/code\u003e, enabling dynamic query builders and ORMs to retrieve underlying SQLite C-API metadata (\u003ccode\u003eOriginName\u003c/code\u003e, \u003ccode\u003eTableName\u003c/code\u003e, \u003ccode\u003eDatabaseName\u003c/code\u003e, and \u003ccode\u003eDeclType\u003c/code\u003e).\u003c/li\u003e\n\u003cli\u003eThis feature is exposed via the idiomatic \u003ccode\u003edatabase/sql\u003c/code\u003e escape hatch \u003ccode\u003e(*sql.Conn).Raw()\u003c/code\u003e, avoiding custom statement handles and keeping the standard library workflow intact.\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/113\"\u003e#113\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/113\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/113\u003c/a\u003e), thanks Josh Bleecher Snyder!\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e2026-04-17 v1.49.0: Upgrade to \u003ca href=\"https://sqlite.org/releaselog/3_53_0.html\"\u003eSQLite 3.53.0\u003c/a\u003e.\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdded \u003ccode\u003e-DSQLITE_ENABLE_DBPAGE_VTAB\u003c/code\u003e to the transpilation. See \u003ca href=\"https://www.sqlite.org/dbpage.html\"\u003e\u0026quot;The SQLITE_DBPAGE Virtual Table\u0026quot;\u003c/a\u003e for details.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e2026-04-06 v1.48.2:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eFix ABI mapping mismatch in the pre-update hook trampoline that caused silent truncation of large 64-bit RowIDs.\u003c/li\u003e\n\u003cli\u003eEnsure the Go trampoline signature correctly aligns with the public \u003ccode\u003esqlite3_preupdate_hook\u003c/code\u003e C API, preventing data corruption for high-entropy keys (e.g., Snowflake IDs).\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/98\"\u003e#98\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/98\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/98\u003c/a\u003e), thanks Josh Bleecher Snyder!\u003c/li\u003e\n\u003cli\u003eFix the memory allocator used in \u003ccode\u003e(*conn).Deserialize\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003eReplace \u003ccode\u003etls.Alloc\u003c/code\u003e with \u003ccode\u003esqlite3_malloc64\u003c/code\u003e to prevent internal allocator corruption. This ensures the buffer is safely owned by SQLite, which may resize or free it due to the \u003ccode\u003eSQLITE_DESERIALIZE_RESIZEABLE\u003c/code\u003e and \u003ccode\u003eSQLITE_DESERIALIZE_FREEONCLOSE\u003c/code\u003e flags.\u003c/li\u003e\n\u003cli\u003ePrevent a memory leak by properly freeing the allocated buffer if fetching the main database name fails before handing ownership to SQLite.\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/100\"\u003e#100\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/100\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/100\u003c/a\u003e), thanks Josh Bleecher Snyder!\u003c/li\u003e\n\u003cli\u003eFix \u003ccode\u003e(*conn).Deserialize\u003c/code\u003e to explicitly reject \u003ccode\u003enil\u003c/code\u003e or empty byte slices.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/66b4d20f42485b9823a2d35c86b08335d927d0e5\"\u003e\u003ccode\u003e66b4d20\u003c/code\u003e\u003c/a\u003e release v1.52.0, upgrade to SQLite 3.53.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/e3f64ec2f026880b2fbc868f195863648cd07fb3\"\u003e\u003ccode\u003ee3f64ec\u003c/code\u003e\u003c/a\u003e rows: clarify parseFmtIdx mixed-column cost; CHANGELOG.md: document \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/125\"\u003e#125\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/448579342c2da286622d7cab5db84a746124e7b1\"\u003e\u003ccode\u003e4485793\u003c/code\u003e\u003c/a\u003e Merge branch 'perf/cache-parse-time-format' into 'master'\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/3638d17bf28d730d7dd90ff5cf3f93c45b9d752e\"\u003e\u003ccode\u003e3638d17\u003c/code\u003e\u003c/a\u003e rows: cache the parseTime format index per result column\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/7da793ef16502dced14643451a8bec834f999d9e\"\u003e\u003ccode\u003e7da793e\u003c/code\u003e\u003c/a\u003e CHANGELOG.md: document \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/124\"\u003e#124\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/51e6714774262680e2454b1a9ccc49b4245b220a\"\u003e\u003ccode\u003e51e6714\u003c/code\u003e\u003c/a\u003e Merge branch 'perf/cache-column-decltype' into 'master'\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/8a6f33ce42bfa4a864daf8a4c97908e7691499d9\"\u003e\u003ccode\u003e8a6f33c\u003c/code\u003e\u003c/a\u003e rows: lock down ColumnTypeScanType under the decltype cache\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/f8fb6dd1d58d74d022b77cc385a9828a1ac49762\"\u003e\u003ccode\u003ef8fb6dd\u003c/code\u003e\u003c/a\u003e rows: cache the column decltype lookup once per result set\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/b17c0c7faf2247b8251efaa638ac101e5dea7ec1\"\u003e\u003ccode\u003eb17c0c7\u003c/code\u003e\u003c/a\u003e CHANGELOG.md: document \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/123\"\u003e#123\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/c80a08fbe3d37ffa8c7e669c46053b692135523b\"\u003e\u003ccode\u003ec80a08f\u003c/code\u003e\u003c/a\u003e Merge branch 'perf/column-text-zero-copy' into 'master'\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://gitlab.com/cznic/sqlite/compare/v1.50.1...v1.52.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `github.com/go-playground/validator/v10` from 10.30.2 to 10.30.3\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/go-playground/validator/releases\"\u003egithub.com/go-playground/validator/v10's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev10.30.3\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFix/issue 1550 UUID case insensitive by \u003ca href=\"https://github.com/leo-jp-edwards\"\u003e\u003ccode\u003e@​leo-jp-edwards\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/go-playground/validator/pull/1551\"\u003ego-playground/validator#1551\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFeat: Add NoneOf Validation by \u003ca href=\"https://github.com/Carmen-Shannon\"\u003e\u003ccode\u003e@​Carmen-Shannon\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/go-playground/validator/pull/1554\"\u003ego-playground/validator#1554\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd bcp47_strict_language_tag validator by \u003ca href=\"https://github.com/bfabio\"\u003e\u003ccode\u003e@​bfabio\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/go-playground/validator/pull/1489\"\u003ego-playground/validator#1489\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps): bump golang.org/x/text from 0.35.0 to 0.36.0 by \u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/go-playground/validator/pull/1558\"\u003ego-playground/validator#1558\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps): bump golang.org/x/crypto from 0.49.0 to 0.50.0 by \u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/go-playground/validator/pull/1559\"\u003ego-playground/validator#1559\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd CLAUDE.md with repo guidance for Claude Code by \u003ca href=\"https://github.com/deankarn\"\u003e\u003ccode\u003e@​deankarn\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/go-playground/validator/pull/1564\"\u003ego-playground/validator#1564\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eReduce build size with dead code elimination by \u003ca href=\"https://github.com/zemzale\"\u003e\u003ccode\u003e@​zemzale\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/go-playground/validator/pull/1542\"\u003ego-playground/validator#1542\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eRefactored out detectFileMIMEType, matchesMIMEType logic for reuse. Added standalone isMIMEType validator for flexibility by \u003ca href=\"https://github.com/dapzthelegend\"\u003e\u003ccode\u003e@​dapzthelegend\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/go-playground/validator/pull/1544\"\u003ego-playground/validator#1544\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efeat(translations): add timezone support for en and ja locales by \u003ca href=\"https://github.com/dedyf5\"\u003e\u003ccode\u003e@​dedyf5\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/go-playground/validator/pull/1566\"\u003ego-playground/validator#1566\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003edocs: use errors.As in README and translations example by \u003ca href=\"https://github.com/eyupcanakman\"\u003e\u003ccode\u003e@​eyupcanakman\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/go-playground/validator/pull/1563\"\u003ego-playground/validator#1563\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003edocs: fix typos by \u003ca href=\"https://github.com/rymiyamoto\"\u003e\u003ccode\u003e@​rymiyamoto\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/go-playground/validator/pull/1568\"\u003ego-playground/validator#1568\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efeat: add origin validator for web origin URLs by \u003ca href=\"https://github.com/ahmedkamalio\"\u003e\u003ccode\u003e@​ahmedkamalio\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/go-playground/validator/pull/1565\"\u003ego-playground/validator#1565\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix: reject hostnames with trailing hyphen in RFC 952 validator by \u003ca href=\"https://github.com/ahmedkamalio\"\u003e\u003ccode\u003e@​ahmedkamalio\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/go-playground/validator/pull/1569\"\u003ego-playground/validator#1569\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix(lint): correctly disable govet inline analyzer \u0026amp; deprecated gomodguard by \u003ca href=\"https://github.com/nodivbyzero\"\u003e\u003ccode\u003e@​nodivbyzero\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/go-playground/validator/pull/1574\"\u003ego-playground/validator#1574\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps): bump golang.org/x/text from 0.36.0 to 0.37.0 by \u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/go-playground/validator/pull/1572\"\u003ego-playground/validator#1572\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps): bump golang.org/x/crypto from 0.50.0 to 0.51.0 by \u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/go-playground/validator/pull/1571\"\u003ego-playground/validator#1571\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix(cron): anchor regex and accept full cron syntax by \u003ca href=\"https://github.com/ahmedkamalio\"\u003e\u003ccode\u003e@​ahmedkamalio\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/go-playground/validator/pull/1577\"\u003ego-playground/validator#1577\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps): bump golang.org/x/crypto from 0.51.0 to 0.52.0 by \u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/go-playground/validator/pull/1580\"\u003ego-playground/validator#1580\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efeat: omit blank tag names from namespace by \u003ca href=\"https://github.com/abemedia\"\u003e\u003ccode\u003e@​abemedia\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/go-playground/validator/pull/1567\"\u003ego-playground/validator#1567\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix(docs): correct ripemd160 tag name in README validation table by \u003ca href=\"https://github.com/napoleonbot\"\u003e\u003ccode\u003e@​napoleonbot\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/go-playground/validator/pull/1582\"\u003ego-playground/validator#1582\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eNew Contributors\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/leo-jp-edwards\"\u003e\u003ccode\u003e@​leo-jp-edwards\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/go-playground/validator/pull/1551\"\u003ego-playground/validator#1551\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Carmen-Shannon\"\u003e\u003ccode\u003e@​Carmen-Shannon\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/go-playground/validator/pull/1554\"\u003ego-playground/validator#1554\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/dapzthelegend\"\u003e\u003ccode\u003e@​dapzthelegend\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/go-playground/validator/pull/1544\"\u003ego-playground/validator#1544\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/dedyf5\"\u003e\u003ccode\u003e@​dedyf5\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/go-playground/validator/pull/1566\"\u003ego-playground/validator#1566\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eyupcanakman\"\u003e\u003ccode\u003e@​eyupcanakman\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/go-playground/validator/pull/1563\"\u003ego-playground/validator#1563\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/rymiyamoto\"\u003e\u003ccode\u003e@​rymiyamoto\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/go-playground/validator/pull/1568\"\u003ego-playground/validator#1568\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/abemedia\"\u003e\u003ccode\u003e@​abemedia\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/go-playground/validator/pull/1567\"\u003ego-playground/validator#1567\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/napoleonbot\"\u003e\u003ccode\u003e@​napoleonbot\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/go-playground/validator/pull/1582\"\u003ego-playground/validator#1582\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/go-playground/validator/compare/v10.30.2...v10.30.3\"\u003ehttps://github.com/go-playground/validator/compare/v10.30.2...v10.30.3\u003c/a\u003e\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/go-playground/validator/commit/ac4c1bab0d4aa957466faa1948af28130767e43a\"\u003e\u003ccode\u003eac4c1ba\u003c/code\u003e\u003c/a\u003e fix(docs): correct ripemd160 tag name in README validation table (\u003ca href=\"https://redirect.github.com/go-playground/validator/issues/1582\"\u003e#1582\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/go-playground/validator/commit/feacb34d4fa5bd263392bcd03d5348a94ca28870\"\u003e\u003ccode\u003efeacb34\u003c/code\u003e\u003c/a\u003e feat: omit blank tag names from namespace (\u003ca href=\"https://redirect.github.com/go-playground/validator/issues/1567\"\u003e#1567\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/go-playground/validator/commit/5ed0a7ea9ac87c2409326e1d88f34678658b84e0\"\u003e\u003ccode\u003e5ed0a7e\u003c/code\u003e\u003c/a\u003e chore(deps): bump golang.org/x/crypto from 0.51.0 to 0.52.0 (\u003ca href=\"https://redirect.github.com/go-playground/validator/issues/1580\"\u003e#1580\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/go-playground/validator/commit/0364541fa467027703223b3d0cace07a667c8302\"\u003e\u003ccode\u003e0364541\u003c/code\u003e\u003c/a\u003e fix(cron): anchor regex and accept full cron syntax (\u003ca href=\"https://redirect.github.com/go-playground/validator/issues/1577\"\u003e#1577\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/go-playground/validator/commit/8eb2659789a33bda9262ce62eed2d714539dc8c5\"\u003e\u003ccode\u003e8eb2659\u003c/code\u003e\u003c/a\u003e chore(deps): bump golang.org/x/crypto from 0.50.0 to 0.51.0 (\u003ca href=\"https://redirect.github.com/go-playground/validator/issues/1571\"\u003e#1571\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/go-playground/validator/commit/f7e1721521360af7958fe59e9c34ba0813f25bf8\"\u003e\u003ccode\u003ef7e1721\u003c/code\u003e\u003c/a\u003e chore(deps): bump golang.org/x/text from 0.36.0 to 0.37.0 (\u003ca href=\"https://redirect.github.com/go-playground/validator/issues/1572\"\u003e#1572\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/go-playground/validator/commit/cf37fce7a1a5dee2810a085ae39aec5c78e7cd8a\"\u003e\u003ccode\u003ecf37fce\u003c/code\u003e\u003c/a\u003e fix(lint): correctly disable govet inline analyzer \u0026amp; deprecated gomodguard (#...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/go-playground/validator/commit/7c334e52092ad1224f0a2eed6bc77408374048b7\"\u003e\u003ccode\u003e7c334e5\u003c/code\u003e\u003c/a\u003e fix: reject hostnames with trailing hyphen in RFC 952 validator (\u003ca href=\"https://redirect.github.com/go-playground/validator/issues/1569\"\u003e#1569\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/go-playground/validator/commit/6bcb7bcaf6a99f8d6cf16cc8d062ad8c47950901\"\u003e\u003ccode\u003e6bcb7bc\u003c/code\u003e\u003c/a\u003e feat: add origin validator for web origin URLs (\u003ca href=\"https://redirect.github.com/go-playground/validator/issues/1565\"\u003e#1565\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/go-playground/validator/commit/6fd2fa82069c9aede1882d703c0e7ee2660bc4d9\"\u003e\u003ccode\u003e6fd2fa8\u003c/code\u003e\u003c/a\u003e docs: fix typos (\u003ca href=\"https://redirect.github.com/go-playground/validator/issues/1568\"\u003e#1568\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/go-playground/validator/compare/v10.30.2...v10.30.3\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n","html_url":"https://github.com/MustardSeedNetworks/seed/pull/1495","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/MustardSeedNetworks%2Fseed/issues/1495","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/1495/packages"},{"uuid":"4585954643","node_id":"PR_kwDOSCwGwM7iiNzn","number":33,"state":"closed","title":"chore(deps): bump the minor-and-patch group across 1 directory with 3 updates","user":"dependabot[bot]","labels":["dependencies","go"],"assignees":[],"locked":false,"comments_count":2,"pull_request":true,"closed_at":"2026-06-10T22:32:38.000Z","author_association":null,"state_reason":null,"created_at":"2026-06-04T05:01:33.000Z","updated_at":"2026-06-10T22:32:40.000Z","time_to_close":581465,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"chore(deps): bump","group_name":"minor-and-patch","update_count":3,"packages":[{"name":"github.com/godbus/dbus/v5","old_version":"5.1.0","new_version":"5.2.2","repository_url":"https://github.com/godbus/dbus"},{"name":"golang.org/x/sys","old_version":"0.44.0","new_version":"0.45.0","repository_url":"https://github.com/golang/sys"},{"name":"modernc.org/sqlite","old_version":"1.33.1","new_version":"1.52.0"}],"path":null,"ecosystem":"go"},"body":"Bumps the minor-and-patch group with 3 updates in the / directory: [github.com/godbus/dbus/v5](https://github.com/godbus/dbus), [golang.org/x/sys](https://github.com/golang/sys) and [modernc.org/sqlite](https://gitlab.com/cznic/sqlite).\n\nUpdates `github.com/godbus/dbus/v5` from 5.1.0 to 5.2.2\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/godbus/dbus/releases\"\u003egithub.com/godbus/dbus/v5's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev5.2.2\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eDrop ununsed import in windows specific code by \u003ca href=\"https://github.com/dims\"\u003e\u003ccode\u003e@​dims\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/godbus/dbus/pull/427\"\u003egodbus/dbus#427\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eNew Contributors\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/dims\"\u003e\u003ccode\u003e@​dims\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/godbus/dbus/pull/427\"\u003egodbus/dbus#427\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/godbus/dbus/compare/v5.2.1...v5.2.2\"\u003ehttps://github.com/godbus/dbus/compare/v5.2.1...v5.2.2\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev5.2.1\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eci: bump freebsd to 14.3 by \u003ca href=\"https://github.com/kolyshkin\"\u003e\u003ccode\u003e@​kolyshkin\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/godbus/dbus/pull/421\"\u003egodbus/dbus#421\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAllow more than 32 containers / struct fields in a signature by \u003ca href=\"https://github.com/guelfey\"\u003e\u003ccode\u003e@​guelfey\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/godbus/dbus/pull/426\"\u003egodbus/dbus#426\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump golangci-lint to v2, fix some issues found by \u003ca href=\"https://github.com/kolyshkin\"\u003e\u003ccode\u003e@​kolyshkin\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/godbus/dbus/pull/419\"\u003egodbus/dbus#419\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix and simplify getHomeDir by \u003ca href=\"https://github.com/kolyshkin\"\u003e\u003ccode\u003e@​kolyshkin\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/godbus/dbus/pull/422\"\u003egodbus/dbus#422\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/godbus/dbus/compare/v5.2.0...v5.2.1\"\u003ehttps://github.com/godbus/dbus/compare/v5.2.0...v5.2.1\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev5.2.0\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFix default golangci-lint warnings, add it to GHA by \u003ca href=\"https://github.com/kolyshkin\"\u003e\u003ccode\u003e@​kolyshkin\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/godbus/dbus/pull/308\"\u003egodbus/dbus#308\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd example for grab media keys. by \u003ca href=\"https://github.com/linuxerwang\"\u003e\u003ccode\u003e@​linuxerwang\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/godbus/dbus/pull/316\"\u003egodbus/dbus#316\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eCI: enable more linters by \u003ca href=\"https://github.com/kolyshkin\"\u003e\u003ccode\u003e@​kolyshkin\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/godbus/dbus/pull/319\"\u003egodbus/dbus#319\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd rpic to projects using godbus by \u003ca href=\"https://github.com/stephenhu\"\u003e\u003ccode\u003e@​stephenhu\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/godbus/dbus/pull/320\"\u003egodbus/dbus#320\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eCI: Go 1.18 fixes by \u003ca href=\"https://github.com/guelfey\"\u003e\u003ccode\u003e@​guelfey\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/godbus/dbus/pull/322\"\u003egodbus/dbus#322\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eadd fuzz test for (signature) decoding by \u003ca href=\"https://github.com/guelfey\"\u003e\u003ccode\u003e@​guelfey\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/godbus/dbus/pull/323\"\u003egodbus/dbus#323\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003estyle: error should be returned as the last argument by \u003ca href=\"https://github.com/liaohanqin\"\u003e\u003ccode\u003e@​liaohanqin\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/godbus/dbus/pull/314\"\u003egodbus/dbus#314\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eexamples: Add asynchronous D-Bus call example in \u003ca href=\"https://redirect.github.com/godbus/dbus/pull/325\"\u003egodbus/dbus#325\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003edoc: fix spelling errors by \u003ca href=\"https://github.com/guelfey\"\u003e\u003ccode\u003e@​guelfey\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/godbus/dbus/pull/335\"\u003egodbus/dbus#335\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eReplace loop with call to copy() by \u003ca href=\"https://github.com/liaohanqin\"\u003e\u003ccode\u003e@​liaohanqin\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/godbus/dbus/pull/334\"\u003egodbus/dbus#334\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix(ci): apt-get update before installing dbus by \u003ca href=\"https://github.com/guelfey\"\u003e\u003ccode\u003e@​guelfey\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/godbus/dbus/pull/342\"\u003egodbus/dbus#342\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efreebsd: Remove the cgo dependency from transport_unixcred_freebsd.go by \u003ca href=\"https://github.com/dfr\"\u003e\u003ccode\u003e@​dfr\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/godbus/dbus/pull/332\"\u003egodbus/dbus#332\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eReduce allocs in decode function by \u003ca href=\"https://github.com/marselester\"\u003e\u003ccode\u003e@​marselester\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/godbus/dbus/pull/344\"\u003egodbus/dbus#344\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eSet argument of SetProperty to Variant by \u003ca href=\"https://github.com/WhyNotHugo\"\u003e\u003ccode\u003e@​WhyNotHugo\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/godbus/dbus/pull/239\"\u003egodbus/dbus#239\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eReduce allocs in ReadMessage (unix transport) by \u003ca href=\"https://github.com/marselester\"\u003e\u003ccode\u003e@​marselester\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/godbus/dbus/pull/347\"\u003egodbus/dbus#347\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix missing alignment in decodeU() by \u003ca href=\"https://github.com/felixonmars\"\u003e\u003ccode\u003e@​felixonmars\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/godbus/dbus/pull/348\"\u003egodbus/dbus#348\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd test case for bool alignment by \u003ca href=\"https://github.com/guelfey\"\u003e\u003ccode\u003e@​guelfey\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/godbus/dbus/pull/349\"\u003egodbus/dbus#349\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd go 1.19 support by \u003ca href=\"https://github.com/amenzhinsky\"\u003e\u003ccode\u003e@​amenzhinsky\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/godbus/dbus/pull/339\"\u003egodbus/dbus#339\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eCI tweaks by \u003ca href=\"https://github.com/guelfey\"\u003e\u003ccode\u003e@​guelfey\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/godbus/dbus/pull/360\"\u003egodbus/dbus#360\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eci: add FreBSD job using Cirrus by \u003ca href=\"https://github.com/guelfey\"\u003e\u003ccode\u003e@​guelfey\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/godbus/dbus/pull/361\"\u003egodbus/dbus#361\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eReduce decoder allocs due to int/uint decoding by \u003ca href=\"https://github.com/marselester\"\u003e\u003ccode\u003e@​marselester\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/godbus/dbus/pull/356\"\u003egodbus/dbus#356\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ePointer semantics in depthCounter by \u003ca href=\"https://github.com/marselester\"\u003e\u003ccode\u003e@​marselester\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/godbus/dbus/pull/352\"\u003egodbus/dbus#352\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003emessage: use Discard for encoding in IsValid by \u003ca href=\"https://github.com/guelfey\"\u003e\u003ccode\u003e@​guelfey\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/godbus/dbus/pull/362\"\u003egodbus/dbus#362\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eOmit extra (*Message).IsValid for outgoing messages by \u003ca href=\"https://github.com/guelfey\"\u003e\u003ccode\u003e@​guelfey\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/godbus/dbus/pull/363\"\u003egodbus/dbus#363\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eOnly check header validity when decoding messages by \u003ca href=\"https://github.com/guelfey\"\u003e\u003ccode\u003e@​guelfey\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/godbus/dbus/pull/364\"\u003egodbus/dbus#364\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eReplaced godoc url with pkg.go.dev url for v5. by \u003ca href=\"https://github.com/olivercalder\"\u003e\u003ccode\u003e@​olivercalder\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/godbus/dbus/pull/369\"\u003egodbus/dbus#369\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eReduce bytes to strings allocs in decoder by \u003ca href=\"https://github.com/marselester\"\u003e\u003ccode\u003e@​marselester\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/godbus/dbus/pull/367\"\u003egodbus/dbus#367\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efeat: add security-policy to project by \u003ca href=\"https://github.com/diogoteles08\"\u003e\u003ccode\u003e@​diogoteles08\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/godbus/dbus/pull/366\"\u003egodbus/dbus#366\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eauth: Do not send UID with external auth by \u003ca href=\"https://github.com/idleroamer\"\u003e\u003ccode\u003e@​idleroamer\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/godbus/dbus/pull/346\"\u003egodbus/dbus#346\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/godbus/dbus/commit/a8ac15ba63645f02ffd57f4b443203279ab40b30\"\u003e\u003ccode\u003ea8ac15b\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/godbus/dbus/issues/427\"\u003e#427\u003c/a\u003e from dims/drop-unused-import-in-windows-specific-code\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/godbus/dbus/commit/e638c721d984eab99e7a5d674ece2e17ea913aca\"\u003e\u003ccode\u003ee638c72\u003c/code\u003e\u003c/a\u003e Drop ununsed import in windows specific code\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/godbus/dbus/commit/20d95a3d9a57a5cb72cbdafb3fd9ecb6d2ccd038\"\u003e\u003ccode\u003e20d95a3\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/godbus/dbus/issues/422\"\u003e#422\u003c/a\u003e from kolyshkin/homedir\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/godbus/dbus/commit/d3fc3b583895e27c3337f77ea7134b0a81159955\"\u003e\u003ccode\u003ed3fc3b5\u003c/code\u003e\u003c/a\u003e Fix and simplify getHomeDir\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/godbus/dbus/commit/88ce46364db66b69f70017265a312b26ad7feba8\"\u003e\u003ccode\u003e88ce463\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/godbus/dbus/issues/419\"\u003e#419\u003c/a\u003e from kolyshkin/golangci-v2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/godbus/dbus/commit/feb892a0347fb361350229d969a2666a4791504e\"\u003e\u003ccode\u003efeb892a\u003c/code\u003e\u003c/a\u003e ci: bump golangci-lint to v2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/godbus/dbus/commit/c5ff039e5883a86f848ad6fbb820e471818c0bde\"\u003e\u003ccode\u003ec5ff039\u003c/code\u003e\u003c/a\u003e Ignore ST1008 warning for validSingle\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/godbus/dbus/commit/135663e52698feb5ad4b0733d7e457c82227214a\"\u003e\u003ccode\u003e135663e\u003c/code\u003e\u003c/a\u003e Omit embedded fields\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/godbus/dbus/commit/1b92cdcc136567c781bcc0ad1ccb4bd78b11e151\"\u003e\u003ccode\u003e1b92cdc\u003c/code\u003e\u003c/a\u003e variant_parser: simplify switch statement\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/godbus/dbus/commit/d03c0bea70755580de832141a43f544950e76fc7\"\u003e\u003ccode\u003ed03c0be\u003c/code\u003e\u003c/a\u003e Use switch where it makes sense\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/godbus/dbus/compare/v5.1.0...v5.2.2\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `golang.org/x/sys` from 0.44.0 to 0.45.0\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/golang/sys/commit/397d5f80920585bc27433d878aba498d062f81e1\"\u003e\u003ccode\u003e397d5f8\u003c/code\u003e\u003c/a\u003e unix: update to Linux kernel 7.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/golang/sys/commit/0a387f7a07d7a0e9811f00603c10b4e5a94ab79c\"\u003e\u003ccode\u003e0a387f7\u003c/code\u003e\u003c/a\u003e cpu: detect zbc extension on riscv64\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/golang/sys/commit/758f71cb839d131daf0ba4befa6a2c6ceb21a649\"\u003e\u003ccode\u003e758f71c\u003c/code\u003e\u003c/a\u003e cpu: add LLACQ_SCREL, SCQ, DBAR_HINTS detection for loong64\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/golang/sys/commit/99666ae32e07f6403182a79cb5df0c417cbbf25f\"\u003e\u003ccode\u003e99666ae\u003c/code\u003e\u003c/a\u003e unix: merge Linux readv/writev implementation with Darwin/OpenBSD\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/golang/sys/commit/e4444cbaaaf61cecff8e635874066fcd5c841575\"\u003e\u003ccode\u003ee4444cb\u003c/code\u003e\u003c/a\u003e windows: add NtSetEaFile, NtQueryEaFile and NtQueryInformationFile\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/golang/sys/commit/04396e85d470b7f990a9a1df5c1a44dc8e30c292\"\u003e\u003ccode\u003e04396e8\u003c/code\u003e\u003c/a\u003e unix: add Readv, Writev, Preadv, Pwritev for OpenBSD\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/golang/sys/compare/v0.44.0...v0.45.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `modernc.org/sqlite` from 1.33.1 to 1.52.0\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://gitlab.com/cznic/sqlite/blob/master/CHANGELOG.md\"\u003emodernc.org/sqlite's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003eChangelog\u003c/h1\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e2026-06-06 v1.52.0:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eUpgrade to \u003ca href=\"https://sqlite.org/releaselog/3_53_2.html\"\u003eSQLite 3.53.2\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003eBackup.Remaining\u003c/code\u003e and \u003ccode\u003eBackup.PageCount\u003c/code\u003e, thin wrappers around the existing \u003ccode\u003esqlite3_backup_remaining\u003c/code\u003e and \u003ccode\u003esqlite3_backup_pagecount\u003c/code\u003e C symbols. Together they expose the per-\u003ccode\u003eStep\u003c/code\u003e progress counters that the underlying backup object already maintains, enabling progress reporting during online backups without dropping to \u003ccode\u003emodernc.org/sqlite/lib\u003c/code\u003e directly.\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/122\"\u003e#122\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/122\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/122\u003c/a\u003e), thanks Ian Chechin!\u003c/li\u003e\n\u003cli\u003eDrop the redundant second copy in \u003ccode\u003e(*conn).columnText\u003c/code\u003e, the path that backs every \u003ccode\u003eRows.Scan\u003c/code\u003e into a Go \u003ccode\u003estring\u003c/code\u003e for a TEXT column. The value's bytes are still copied once out of SQLite-owned memory into a fresh Go buffer; that buffer is then reinterpreted as the result string with \u003ccode\u003eunsafe.String\u003c/code\u003e rather than copied a second time by the implicit \u003ccode\u003estring([]byte)\u003c/code\u003e conversion. This removes one allocation per TEXT value per row and roughly halves the bytes allocated on that path; on the new \u003ccode\u003eBenchmarkColumnTextScan\u003c/code\u003e cases it is ~13–20% faster for payloads of 256 B and larger, with no measurable change for very short strings. Purely internal: no API or behavioral change, and the returned string never aliases SQLite's buffer.\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/123\"\u003e#123\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/123\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/123\u003c/a\u003e), thanks Ian Chechin!\u003c/li\u003e\n\u003cli\u003eCache each result column's declared type once per result set in \u003ccode\u003enewRows\u003c/code\u003e instead of recomputing it on every row. The TEXT branch of \u003ccode\u003eRows.Next\u003c/code\u003e calls \u003ccode\u003eColumnTypeDatabaseTypeName\u003c/code\u003e for every TEXT column on every row (independent of any DSN flag), which previously did a \u003ccode\u003elibc.GoString\u003c/code\u003e + \u003ccode\u003estrings.ToUpper\u003c/code\u003e each time; that lookup is now a single index into a cached, pre-uppercased \u003ccode\u003e[]string\u003c/code\u003e, and \u003ccode\u003eColumnTypeScanType\u003c/code\u003e reads the same cache and drops its per-call \u003ccode\u003estrings.ToLower\u003c/code\u003e. The declared type is fixed for the lifetime of a prepared statement, so the C round-trip is paid once per column rather than once per column per row, removing exactly 1 alloc + 8 B per TEXT column per row from the \u003ccode\u003eNext\u003c/code\u003e hot path. The new \u003ccode\u003eBenchmarkTextToTimeScan\u003c/code\u003e cases show ~7% faster on a 1000-row DATETIME SELECT under \u003ccode\u003e_texttotime=1\u003c/code\u003e. Purely internal: \u003ccode\u003eColumnTypeDatabaseTypeName\u003c/code\u003e and \u003ccode\u003eColumnTypeScanType\u003c/code\u003e return identical values, no API or behavioral change.\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/124\"\u003e#124\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/124\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/124\u003c/a\u003e), thanks Ian Chechin!\u003c/li\u003e\n\u003cli\u003eCache, per result column, the \u003ccode\u003eparseTimeFormats\u003c/code\u003e index that first parsed a TEXT-stored DATE/DATETIME/TIMESTAMP value, and try that format first on later rows instead of re-walking the list from the top. \u003ccode\u003e(*conn).parseTime\u003c/code\u003e previously ran \u003ccode\u003etime.Parse\u003c/code\u003e down the format list on every such row; for the canonical SQLite TEXT datetime format every row paid two failed \u003ccode\u003etime.Parse\u003c/code\u003e attempts — each allocating a \u003ccode\u003e*time.ParseError\u003c/code\u003e — before the match. On a 1000-row DATETIME TEXT SELECT this cuts ~50% of allocs/op and ~57% of B/op and is ~37% faster. The fall-through chain is preserved exactly: the seven formats are mutually exclusive, so the cached hint can never select a different match than the in-order scan, and the parsed \u003ccode\u003edriver.Value\u003c/code\u003e is identical to before. Purely internal: no API or behavioral change.\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/125\"\u003e#125\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/125\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/125\u003c/a\u003e), thanks Ian Chechin!\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e2026-05-28 v1.51.0:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003ePool the \u003ccode\u003e[]driver.Value\u003c/code\u003e slice passed to scalar/aggregate UDF callbacks and to vtab \u003ccode\u003eFilter\u003c/code\u003e/\u003ccode\u003eInsert\u003c/code\u003e/\u003ccode\u003eUpdate\u003c/code\u003e callbacks, eliminating the dominant per-row allocation on UDF-heavy queries. Benchmarks on a 1000-row, 3-arg noop scalar UDF show ~40% fewer bytes/op and ~15% fewer allocs/op.\u003c/li\u003e\n\u003cli\u003eDocument the matching \u0026quot;arguments are not valid past return\u0026quot; contract on \u003ccode\u003evtab.Cursor.Filter\u003c/code\u003e and \u003ccode\u003evtab.Updater.Insert\u003c/code\u003e/\u003ccode\u003eUpdate\u003c/code\u003e, consistent with the existing rule for \u003ccode\u003eFunctionImpl.Scalar\u003c/code\u003e / \u003ccode\u003eAggregateFunction.Step\u003c/code\u003e / \u003ccode\u003eWindowInverse\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003eResolves [GitLab issue \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/226\"\u003e#226\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/issues/226\"\u003ehttps://gitlab.com/cznic/sqlite/-/issues/226\u003c/a\u003e). See [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/114\"\u003e#114\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/114\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/114\u003c/a\u003e), thanks Ian Chechin!\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003eFileControl.FileControlDataVersion\u003c/code\u003e, a wrapper around \u003ccode\u003eSQLITE_FCNTL_DATA_VERSION\u003c/code\u003e for observing pager-cache data-version changes, including those made on the same connection. Useful as a primitive for application-level cache invalidation.\u003c/li\u003e\n\u003cli\u003eExposed via the idiomatic \u003ccode\u003edatabase/sql\u003c/code\u003e escape hatch \u003ccode\u003e(*sql.Conn).Raw()\u003c/code\u003e, consistent with the existing \u003ccode\u003eFileControlPersistWAL\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/115\"\u003e#115\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/115\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/115\u003c/a\u003e), thanks Ian Chechin!\u003c/li\u003e\n\u003cli\u003eFix a regression where in-memory connections (\u003ccode\u003e:memory:\u003c/code\u003e, \u003ccode\u003efile::memory:\u003c/code\u003e, shared-cache memory URIs) were discarded by \u003ccode\u003edatabase/sql\u003c/code\u003e after a context-cancelled query, taking the entire in-memory store with them. The fix for \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/198\"\u003e#198\u003c/a\u003e had added an \u003ccode\u003esqlite3_is_interrupted\u003c/code\u003e check to the connection validator that mistakenly applied to in-memory connections too, re-introducing the bug originally fixed by !74. File-backed connections keep the existing behaviour and are still discarded after an interrupt.\u003c/li\u003e\n\u003cli\u003eResolves [GitLab issue \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/196\"\u003e#196\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/issues/196\"\u003ehttps://gitlab.com/cznic/sqlite/-/issues/196\u003c/a\u003e). See [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/116\"\u003e#116\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/116\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/116\u003c/a\u003e), thanks Ian Chechin!\u003c/li\u003e\n\u003cli\u003eAdd an opt-in \u003ccode\u003eFunctionImpl.VolatileArgs\u003c/code\u003e flag that hands TEXT and BLOB arguments to scalar and aggregate UDF callbacks as zero-copy views (\u003ccode\u003eunsafe.String\u003c/code\u003e/\u003ccode\u003eunsafe.Slice\u003c/code\u003e) over SQLite's own value buffers, eliminating the per-argument \u003ccode\u003elibc.GoString\u003c/code\u003e/\u003ccode\u003emake([]byte)\u003c/code\u003e copy that the \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/226\"\u003e#226\u003c/a\u003e slice-pooling left as the remaining per-row allocation. On the same 1000-row, 3-arg (INTEGER/TEXT/BLOB) noop scalar UDF this removes a further ~35% of allocs/op and ~11% of bytes/op on top of \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/226\"\u003e#226\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003eThe views are valid only for the duration of the callback and must not be retained past return or across rows; a callback that needs to keep a value must copy it. With \u003ccode\u003eVolatileArgs\u003c/code\u003e unset (the default) arguments keep the existing copied, caller-owned semantics, so the flag is fully backward compatible; it has no effect on integer, float, time, or NULL arguments.\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/120\"\u003e#120\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/120\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/120\u003c/a\u003e), thanks Ian Chechin!\u003c/li\u003e\n\u003cli\u003eExtend the opt-in \u003ccode\u003eVolatileArgs\u003c/code\u003e zero-copy TEXT/BLOB argument access from \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/120\"\u003e#120\u003c/a\u003e to the virtual-table \u003ccode\u003eCursor.Filter\u003c/code\u003e (\u003ccode\u003exFilter\u003c/code\u003e) and \u003ccode\u003eUpdater.Insert\u003c/code\u003e/\u003ccode\u003eUpdate\u003c/code\u003e (\u003ccode\u003exUpdate\u003c/code\u003e) callbacks. A \u003ccode\u003evtab.Module\u003c/code\u003e opts in by implementing the new optional \u003ccode\u003evtab.VolatileArgsOpter\u003c/code\u003e interface (\u003ccode\u003eVolatileArgs() bool\u003c/code\u003e); the flag is read once at module registration and shared by every table created from it. On a vtab call carrying one TEXT and one BLOB argument this removes 2 allocs/op (one \u003ccode\u003elibc.GoString\u003c/code\u003e, one \u003ccode\u003emake([]byte)\u003c/code\u003e) on each of the Filter and Update paths.\u003c/li\u003e\n\u003cli\u003eThe same safety contract as \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/120\"\u003e#120\u003c/a\u003e applies: the views are valid only for the duration of the callback and must not be retained past return or across rows; a callback that needs to keep a value must copy it. Modules that do not implement \u003ccode\u003eVolatileArgsOpter\u003c/code\u003e (the default for all existing modules) are byte-for-byte unchanged, and the flag has no effect on integer, float, time, or NULL arguments.\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/121\"\u003e#121\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/121\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/121\u003c/a\u003e), thanks Ian Chechin!\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e2026-05-10 v1.50.1:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eUpgrade to \u003ca href=\"https://sqlite.org/releaselog/3_53_1.html\"\u003eSQLite 3.53.1\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e2026-04-24 v1.50.0:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eUpgrade to sqlite-vec \u003ca href=\"https://github.com/asg017/sqlite-vec/releases/tag/v0.1.9\"\u003ev0.1.9\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003eIntroduce \u003ccode\u003eColumnInfo\u003c/code\u003e, enabling dynamic query builders and ORMs to retrieve underlying SQLite C-API metadata (\u003ccode\u003eOriginName\u003c/code\u003e, \u003ccode\u003eTableName\u003c/code\u003e, \u003ccode\u003eDatabaseName\u003c/code\u003e, and \u003ccode\u003eDeclType\u003c/code\u003e).\u003c/li\u003e\n\u003cli\u003eThis feature is exposed via the idiomatic \u003ccode\u003edatabase/sql\u003c/code\u003e escape hatch \u003ccode\u003e(*sql.Conn).Raw()\u003c/code\u003e, avoiding custom statement handles and keeping the standard library workflow intact.\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/113\"\u003e#113\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/113\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/113\u003c/a\u003e), thanks Josh Bleecher Snyder!\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e2026-04-17 v1.49.0: Upgrade to \u003ca href=\"https://sqlite.org/releaselog/3_53_0.html\"\u003eSQLite 3.53.0\u003c/a\u003e.\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdded \u003ccode\u003e-DSQLITE_ENABLE_DBPAGE_VTAB\u003c/code\u003e to the transpilation. See \u003ca href=\"https://www.sqlite.org/dbpage.html\"\u003e\u0026quot;The SQLITE_DBPAGE Virtual Table\u0026quot;\u003c/a\u003e for details.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e2026-04-06 v1.48.2:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eFix ABI mapping mismatch in the pre-update hook trampoline that caused silent truncation of large 64-bit RowIDs.\u003c/li\u003e\n\u003cli\u003eEnsure the Go trampoline signature correctly aligns with the public \u003ccode\u003esqlite3_preupdate_hook\u003c/code\u003e C API, preventing data corruption for high-entropy keys (e.g., Snowflake IDs).\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/98\"\u003e#98\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/98\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/98\u003c/a\u003e), thanks Josh Bleecher Snyder!\u003c/li\u003e\n\u003cli\u003eFix the memory allocator used in \u003ccode\u003e(*conn).Deserialize\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003eReplace \u003ccode\u003etls.Alloc\u003c/code\u003e with \u003ccode\u003esqlite3_malloc64\u003c/code\u003e to prevent internal allocator corruption. This ensures the buffer is safely owned by SQLite, which may resize or free it due to the \u003ccode\u003eSQLITE_DESERIALIZE_RESIZEABLE\u003c/code\u003e and \u003ccode\u003eSQLITE_DESERIALIZE_FREEONCLOSE\u003c/code\u003e flags.\u003c/li\u003e\n\u003cli\u003ePrevent a memory leak by properly freeing the allocated buffer if fetching the main database name fails before handing ownership to SQLite.\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/100\"\u003e#100\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/100\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/100\u003c/a\u003e), thanks Josh Bleecher Snyder!\u003c/li\u003e\n\u003cli\u003eFix \u003ccode\u003e(*conn).Deserialize\u003c/code\u003e to explicitly reject \u003ccode\u003enil\u003c/code\u003e or empty byte slices.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/66b4d20f42485b9823a2d35c86b08335d927d0e5\"\u003e\u003ccode\u003e66b4d20\u003c/code\u003e\u003c/a\u003e release v1.52.0, upgrade to SQLite 3.53.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/e3f64ec2f026880b2fbc868f195863648cd07fb3\"\u003e\u003ccode\u003ee3f64ec\u003c/code\u003e\u003c/a\u003e rows: clarify parseFmtIdx mixed-column cost; CHANGELOG.md: document \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/125\"\u003e#125\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/448579342c2da286622d7cab5db84a746124e7b1\"\u003e\u003ccode\u003e4485793\u003c/code\u003e\u003c/a\u003e Merge branch 'perf/cache-parse-time-format' into 'master'\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/3638d17bf28d730d7dd90ff5cf3f93c45b9d752e\"\u003e\u003ccode\u003e3638d17\u003c/code\u003e\u003c/a\u003e rows: cache the parseTime format index per result column\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/7da793ef16502dced14643451a8bec834f999d9e\"\u003e\u003ccode\u003e7da793e\u003c/code\u003e\u003c/a\u003e CHANGELOG.md: document \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/124\"\u003e#124\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/51e6714774262680e2454b1a9ccc49b4245b220a\"\u003e\u003ccode\u003e51e6714\u003c/code\u003e\u003c/a\u003e Merge branch 'perf/cache-column-decltype' into 'master'\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/8a6f33ce42bfa4a864daf8a4c97908e7691499d9\"\u003e\u003ccode\u003e8a6f33c\u003c/code\u003e\u003c/a\u003e rows: lock down ColumnTypeScanType under the decltype cache\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/f8fb6dd1d58d74d022b77cc385a9828a1ac49762\"\u003e\u003ccode\u003ef8fb6dd\u003c/code\u003e\u003c/a\u003e rows: cache the column decltype lookup once per result set\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/b17c0c7faf2247b8251efaa638ac101e5dea7ec1\"\u003e\u003ccode\u003eb17c0c7\u003c/code\u003e\u003c/a\u003e CHANGELOG.md: document \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/123\"\u003e#123\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/c80a08fbe3d37ffa8c7e669c46053b692135523b\"\u003e\u003ccode\u003ec80a08f\u003c/code\u003e\u003c/a\u003e Merge branch 'perf/column-text-zero-copy' into 'master'\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://gitlab.com/cznic/sqlite/compare/v1.33.1...v1.52.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e","html_url":"https://github.com/Hanalyx/kensa/pull/33","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/Hanalyx%2Fkensa/issues/33","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/33/packages"},{"uuid":"4585774018","node_id":"PR_kwDOQQDZFs7ihnNp","number":793,"state":"open","title":"chore(deps)(deps): bump the go-deps group with 2 updates","user":"dependabot[bot]","labels":["dependencies","go","area: deps"],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":null,"author_association":null,"state_reason":null,"created_at":"2026-06-04T04:25:35.000Z","updated_at":"2026-06-07T00:33:48.000Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"chore(deps)(deps): bump","group_name":"go-deps","update_count":2,"packages":[{"name":"github.com/go-playground/validator/v10","old_version":"10.30.2","new_version":"10.30.3","repository_url":"https://github.com/go-playground/validator"},{"name":"modernc.org/sqlite","old_version":"1.50.1","new_version":"1.51.0"}],"path":null,"ecosystem":"go"},"body":"Bumps the go-deps group with 2 updates: [github.com/go-playground/validator/v10](https://github.com/go-playground/validator) and [modernc.org/sqlite](https://gitlab.com/cznic/sqlite).\n\nUpdates `github.com/go-playground/validator/v10` from 10.30.2 to 10.30.3\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/go-playground/validator/releases\"\u003egithub.com/go-playground/validator/v10's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev10.30.3\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFix/issue 1550 UUID case insensitive by \u003ca href=\"https://github.com/leo-jp-edwards\"\u003e\u003ccode\u003e@​leo-jp-edwards\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/go-playground/validator/pull/1551\"\u003ego-playground/validator#1551\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFeat: Add NoneOf Validation by \u003ca href=\"https://github.com/Carmen-Shannon\"\u003e\u003ccode\u003e@​Carmen-Shannon\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/go-playground/validator/pull/1554\"\u003ego-playground/validator#1554\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd bcp47_strict_language_tag validator by \u003ca href=\"https://github.com/bfabio\"\u003e\u003ccode\u003e@​bfabio\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/go-playground/validator/pull/1489\"\u003ego-playground/validator#1489\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps): bump golang.org/x/text from 0.35.0 to 0.36.0 by \u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/go-playground/validator/pull/1558\"\u003ego-playground/validator#1558\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps): bump golang.org/x/crypto from 0.49.0 to 0.50.0 by \u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/go-playground/validator/pull/1559\"\u003ego-playground/validator#1559\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd CLAUDE.md with repo guidance for Claude Code by \u003ca href=\"https://github.com/deankarn\"\u003e\u003ccode\u003e@​deankarn\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/go-playground/validator/pull/1564\"\u003ego-playground/validator#1564\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eReduce build size with dead code elimination by \u003ca href=\"https://github.com/zemzale\"\u003e\u003ccode\u003e@​zemzale\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/go-playground/validator/pull/1542\"\u003ego-playground/validator#1542\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eRefactored out detectFileMIMEType, matchesMIMEType logic for reuse. Added standalone isMIMEType validator for flexibility by \u003ca href=\"https://github.com/dapzthelegend\"\u003e\u003ccode\u003e@​dapzthelegend\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/go-playground/validator/pull/1544\"\u003ego-playground/validator#1544\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efeat(translations): add timezone support for en and ja locales by \u003ca href=\"https://github.com/dedyf5\"\u003e\u003ccode\u003e@​dedyf5\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/go-playground/validator/pull/1566\"\u003ego-playground/validator#1566\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003edocs: use errors.As in README and translations example by \u003ca href=\"https://github.com/eyupcanakman\"\u003e\u003ccode\u003e@​eyupcanakman\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/go-playground/validator/pull/1563\"\u003ego-playground/validator#1563\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003edocs: fix typos by \u003ca href=\"https://github.com/rymiyamoto\"\u003e\u003ccode\u003e@​rymiyamoto\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/go-playground/validator/pull/1568\"\u003ego-playground/validator#1568\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efeat: add origin validator for web origin URLs by \u003ca href=\"https://github.com/ahmedkamalio\"\u003e\u003ccode\u003e@​ahmedkamalio\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/go-playground/validator/pull/1565\"\u003ego-playground/validator#1565\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix: reject hostnames with trailing hyphen in RFC 952 validator by \u003ca href=\"https://github.com/ahmedkamalio\"\u003e\u003ccode\u003e@​ahmedkamalio\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/go-playground/validator/pull/1569\"\u003ego-playground/validator#1569\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix(lint): correctly disable govet inline analyzer \u0026amp; deprecated gomodguard by \u003ca href=\"https://github.com/nodivbyzero\"\u003e\u003ccode\u003e@​nodivbyzero\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/go-playground/validator/pull/1574\"\u003ego-playground/validator#1574\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps): bump golang.org/x/text from 0.36.0 to 0.37.0 by \u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/go-playground/validator/pull/1572\"\u003ego-playground/validator#1572\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps): bump golang.org/x/crypto from 0.50.0 to 0.51.0 by \u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/go-playground/validator/pull/1571\"\u003ego-playground/validator#1571\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix(cron): anchor regex and accept full cron syntax by \u003ca href=\"https://github.com/ahmedkamalio\"\u003e\u003ccode\u003e@​ahmedkamalio\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/go-playground/validator/pull/1577\"\u003ego-playground/validator#1577\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps): bump golang.org/x/crypto from 0.51.0 to 0.52.0 by \u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/go-playground/validator/pull/1580\"\u003ego-playground/validator#1580\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efeat: omit blank tag names from namespace by \u003ca href=\"https://github.com/abemedia\"\u003e\u003ccode\u003e@​abemedia\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/go-playground/validator/pull/1567\"\u003ego-playground/validator#1567\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix(docs): correct ripemd160 tag name in README validation table by \u003ca href=\"https://github.com/napoleonbot\"\u003e\u003ccode\u003e@​napoleonbot\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/go-playground/validator/pull/1582\"\u003ego-playground/validator#1582\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eNew Contributors\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/leo-jp-edwards\"\u003e\u003ccode\u003e@​leo-jp-edwards\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/go-playground/validator/pull/1551\"\u003ego-playground/validator#1551\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Carmen-Shannon\"\u003e\u003ccode\u003e@​Carmen-Shannon\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/go-playground/validator/pull/1554\"\u003ego-playground/validator#1554\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/dapzthelegend\"\u003e\u003ccode\u003e@​dapzthelegend\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/go-playground/validator/pull/1544\"\u003ego-playground/validator#1544\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/dedyf5\"\u003e\u003ccode\u003e@​dedyf5\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/go-playground/validator/pull/1566\"\u003ego-playground/validator#1566\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eyupcanakman\"\u003e\u003ccode\u003e@​eyupcanakman\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/go-playground/validator/pull/1563\"\u003ego-playground/validator#1563\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/rymiyamoto\"\u003e\u003ccode\u003e@​rymiyamoto\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/go-playground/validator/pull/1568\"\u003ego-playground/validator#1568\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/abemedia\"\u003e\u003ccode\u003e@​abemedia\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/go-playground/validator/pull/1567\"\u003ego-playground/validator#1567\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/napoleonbot\"\u003e\u003ccode\u003e@​napoleonbot\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/go-playground/validator/pull/1582\"\u003ego-playground/validator#1582\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/go-playground/validator/compare/v10.30.2...v10.30.3\"\u003ehttps://github.com/go-playground/validator/compare/v10.30.2...v10.30.3\u003c/a\u003e\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/go-playground/validator/commit/ac4c1bab0d4aa957466faa1948af28130767e43a\"\u003e\u003ccode\u003eac4c1ba\u003c/code\u003e\u003c/a\u003e fix(docs): correct ripemd160 tag name in README validation table (\u003ca href=\"https://redirect.github.com/go-playground/validator/issues/1582\"\u003e#1582\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/go-playground/validator/commit/feacb34d4fa5bd263392bcd03d5348a94ca28870\"\u003e\u003ccode\u003efeacb34\u003c/code\u003e\u003c/a\u003e feat: omit blank tag names from namespace (\u003ca href=\"https://redirect.github.com/go-playground/validator/issues/1567\"\u003e#1567\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/go-playground/validator/commit/5ed0a7ea9ac87c2409326e1d88f34678658b84e0\"\u003e\u003ccode\u003e5ed0a7e\u003c/code\u003e\u003c/a\u003e chore(deps): bump golang.org/x/crypto from 0.51.0 to 0.52.0 (\u003ca href=\"https://redirect.github.com/go-playground/validator/issues/1580\"\u003e#1580\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/go-playground/validator/commit/0364541fa467027703223b3d0cace07a667c8302\"\u003e\u003ccode\u003e0364541\u003c/code\u003e\u003c/a\u003e fix(cron): anchor regex and accept full cron syntax (\u003ca href=\"https://redirect.github.com/go-playground/validator/issues/1577\"\u003e#1577\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/go-playground/validator/commit/8eb2659789a33bda9262ce62eed2d714539dc8c5\"\u003e\u003ccode\u003e8eb2659\u003c/code\u003e\u003c/a\u003e chore(deps): bump golang.org/x/crypto from 0.50.0 to 0.51.0 (\u003ca href=\"https://redirect.github.com/go-playground/validator/issues/1571\"\u003e#1571\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/go-playground/validator/commit/f7e1721521360af7958fe59e9c34ba0813f25bf8\"\u003e\u003ccode\u003ef7e1721\u003c/code\u003e\u003c/a\u003e chore(deps): bump golang.org/x/text from 0.36.0 to 0.37.0 (\u003ca href=\"https://redirect.github.com/go-playground/validator/issues/1572\"\u003e#1572\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/go-playground/validator/commit/cf37fce7a1a5dee2810a085ae39aec5c78e7cd8a\"\u003e\u003ccode\u003ecf37fce\u003c/code\u003e\u003c/a\u003e fix(lint): correctly disable govet inline analyzer \u0026amp; deprecated gomodguard (#...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/go-playground/validator/commit/7c334e52092ad1224f0a2eed6bc77408374048b7\"\u003e\u003ccode\u003e7c334e5\u003c/code\u003e\u003c/a\u003e fix: reject hostnames with trailing hyphen in RFC 952 validator (\u003ca href=\"https://redirect.github.com/go-playground/validator/issues/1569\"\u003e#1569\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/go-playground/validator/commit/6bcb7bcaf6a99f8d6cf16cc8d062ad8c47950901\"\u003e\u003ccode\u003e6bcb7bc\u003c/code\u003e\u003c/a\u003e feat: add origin validator for web origin URLs (\u003ca href=\"https://redirect.github.com/go-playground/validator/issues/1565\"\u003e#1565\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/go-playground/validator/commit/6fd2fa82069c9aede1882d703c0e7ee2660bc4d9\"\u003e\u003ccode\u003e6fd2fa8\u003c/code\u003e\u003c/a\u003e docs: fix typos (\u003ca href=\"https://redirect.github.com/go-playground/validator/issues/1568\"\u003e#1568\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/go-playground/validator/compare/v10.30.2...v10.30.3\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `modernc.org/sqlite` from 1.50.1 to 1.51.0\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://gitlab.com/cznic/sqlite/blob/master/CHANGELOG.md\"\u003emodernc.org/sqlite's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003eChangelog\u003c/h1\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e2026-05-28 v1.52.0:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdd \u003ccode\u003eBackup.Remaining\u003c/code\u003e and \u003ccode\u003eBackup.PageCount\u003c/code\u003e, thin wrappers around the existing \u003ccode\u003esqlite3_backup_remaining\u003c/code\u003e and \u003ccode\u003esqlite3_backup_pagecount\u003c/code\u003e C symbols. Together they expose the per-\u003ccode\u003eStep\u003c/code\u003e progress counters that the underlying backup object already maintains, enabling progress reporting during online backups without dropping to \u003ccode\u003emodernc.org/sqlite/lib\u003c/code\u003e directly.\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/122\"\u003e#122\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/122\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/122\u003c/a\u003e), thanks Ian Chechin!\u003c/li\u003e\n\u003cli\u003eDrop the redundant second copy in \u003ccode\u003e(*conn).columnText\u003c/code\u003e, the path that backs every \u003ccode\u003eRows.Scan\u003c/code\u003e into a Go \u003ccode\u003estring\u003c/code\u003e for a TEXT column. The value's bytes are still copied once out of SQLite-owned memory into a fresh Go buffer; that buffer is then reinterpreted as the result string with \u003ccode\u003eunsafe.String\u003c/code\u003e rather than copied a second time by the implicit \u003ccode\u003estring([]byte)\u003c/code\u003e conversion. This removes one allocation per TEXT value per row and roughly halves the bytes allocated on that path; on the new \u003ccode\u003eBenchmarkColumnTextScan\u003c/code\u003e cases it is ~13–20% faster for payloads of 256 B and larger, with no measurable change for very short strings. Purely internal: no API or behavioral change, and the returned string never aliases SQLite's buffer.\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/123\"\u003e#123\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/123\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/123\u003c/a\u003e), thanks Ian Chechin!\u003c/li\u003e\n\u003cli\u003eCache each result column's declared type once per result set in \u003ccode\u003enewRows\u003c/code\u003e instead of recomputing it on every row. The TEXT branch of \u003ccode\u003eRows.Next\u003c/code\u003e calls \u003ccode\u003eColumnTypeDatabaseTypeName\u003c/code\u003e for every TEXT column on every row (independent of any DSN flag), which previously did a \u003ccode\u003elibc.GoString\u003c/code\u003e + \u003ccode\u003estrings.ToUpper\u003c/code\u003e each time; that lookup is now a single index into a cached, pre-uppercased \u003ccode\u003e[]string\u003c/code\u003e, and \u003ccode\u003eColumnTypeScanType\u003c/code\u003e reads the same cache and drops its per-call \u003ccode\u003estrings.ToLower\u003c/code\u003e. The declared type is fixed for the lifetime of a prepared statement, so the C round-trip is paid once per column rather than once per column per row, removing exactly 1 alloc + 8 B per TEXT column per row from the \u003ccode\u003eNext\u003c/code\u003e hot path. The new \u003ccode\u003eBenchmarkTextToTimeScan\u003c/code\u003e cases show ~7% faster on a 1000-row DATETIME SELECT under \u003ccode\u003e_texttotime=1\u003c/code\u003e. Purely internal: \u003ccode\u003eColumnTypeDatabaseTypeName\u003c/code\u003e and \u003ccode\u003eColumnTypeScanType\u003c/code\u003e return identical values, no API or behavioral change.\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/124\"\u003e#124\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/124\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/124\u003c/a\u003e), thanks Ian Chechin!\u003c/li\u003e\n\u003cli\u003eCache, per result column, the \u003ccode\u003eparseTimeFormats\u003c/code\u003e index that first parsed a TEXT-stored DATE/DATETIME/TIMESTAMP value, and try that format first on later rows instead of re-walking the list from the top. \u003ccode\u003e(*conn).parseTime\u003c/code\u003e previously ran \u003ccode\u003etime.Parse\u003c/code\u003e down the format list on every such row; for the canonical SQLite TEXT datetime format every row paid two failed \u003ccode\u003etime.Parse\u003c/code\u003e attempts — each allocating a \u003ccode\u003e*time.ParseError\u003c/code\u003e — before the match. On a 1000-row DATETIME TEXT SELECT this cuts ~50% of allocs/op and ~57% of B/op and is ~37% faster. The fall-through chain is preserved exactly: the seven formats are mutually exclusive, so the cached hint can never select a different match than the in-order scan, and the parsed \u003ccode\u003edriver.Value\u003c/code\u003e is identical to before. Purely internal: no API or behavioral change.\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/125\"\u003e#125\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/125\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/125\u003c/a\u003e), thanks Ian Chechin!\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e2026-05-28 v1.51.0:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003ePool the \u003ccode\u003e[]driver.Value\u003c/code\u003e slice passed to scalar/aggregate UDF callbacks and to vtab \u003ccode\u003eFilter\u003c/code\u003e/\u003ccode\u003eInsert\u003c/code\u003e/\u003ccode\u003eUpdate\u003c/code\u003e callbacks, eliminating the dominant per-row allocation on UDF-heavy queries. Benchmarks on a 1000-row, 3-arg noop scalar UDF show ~40% fewer bytes/op and ~15% fewer allocs/op.\u003c/li\u003e\n\u003cli\u003eDocument the matching \u0026quot;arguments are not valid past return\u0026quot; contract on \u003ccode\u003evtab.Cursor.Filter\u003c/code\u003e and \u003ccode\u003evtab.Updater.Insert\u003c/code\u003e/\u003ccode\u003eUpdate\u003c/code\u003e, consistent with the existing rule for \u003ccode\u003eFunctionImpl.Scalar\u003c/code\u003e / \u003ccode\u003eAggregateFunction.Step\u003c/code\u003e / \u003ccode\u003eWindowInverse\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003eResolves [GitLab issue \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/226\"\u003e#226\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/issues/226\"\u003ehttps://gitlab.com/cznic/sqlite/-/issues/226\u003c/a\u003e). See [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/114\"\u003e#114\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/114\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/114\u003c/a\u003e), thanks Ian Chechin!\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003eFileControl.FileControlDataVersion\u003c/code\u003e, a wrapper around \u003ccode\u003eSQLITE_FCNTL_DATA_VERSION\u003c/code\u003e for observing pager-cache data-version changes, including those made on the same connection. Useful as a primitive for application-level cache invalidation.\u003c/li\u003e\n\u003cli\u003eExposed via the idiomatic \u003ccode\u003edatabase/sql\u003c/code\u003e escape hatch \u003ccode\u003e(*sql.Conn).Raw()\u003c/code\u003e, consistent with the existing \u003ccode\u003eFileControlPersistWAL\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/115\"\u003e#115\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/115\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/115\u003c/a\u003e), thanks Ian Chechin!\u003c/li\u003e\n\u003cli\u003eFix a regression where in-memory connections (\u003ccode\u003e:memory:\u003c/code\u003e, \u003ccode\u003efile::memory:\u003c/code\u003e, shared-cache memory URIs) were discarded by \u003ccode\u003edatabase/sql\u003c/code\u003e after a context-cancelled query, taking the entire in-memory store with them. The fix for \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/198\"\u003e#198\u003c/a\u003e had added an \u003ccode\u003esqlite3_is_interrupted\u003c/code\u003e check to the connection validator that mistakenly applied to in-memory connections too, re-introducing the bug originally fixed by !74. File-backed connections keep the existing behaviour and are still discarded after an interrupt.\u003c/li\u003e\n\u003cli\u003eResolves [GitLab issue \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/196\"\u003e#196\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/issues/196\"\u003ehttps://gitlab.com/cznic/sqlite/-/issues/196\u003c/a\u003e). See [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/116\"\u003e#116\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/116\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/116\u003c/a\u003e), thanks Ian Chechin!\u003c/li\u003e\n\u003cli\u003eAdd an opt-in \u003ccode\u003eFunctionImpl.VolatileArgs\u003c/code\u003e flag that hands TEXT and BLOB arguments to scalar and aggregate UDF callbacks as zero-copy views (\u003ccode\u003eunsafe.String\u003c/code\u003e/\u003ccode\u003eunsafe.Slice\u003c/code\u003e) over SQLite's own value buffers, eliminating the per-argument \u003ccode\u003elibc.GoString\u003c/code\u003e/\u003ccode\u003emake([]byte)\u003c/code\u003e copy that the \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/226\"\u003e#226\u003c/a\u003e slice-pooling left as the remaining per-row allocation. On the same 1000-row, 3-arg (INTEGER/TEXT/BLOB) noop scalar UDF this removes a further ~35% of allocs/op and ~11% of bytes/op on top of \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/226\"\u003e#226\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003eThe views are valid only for the duration of the callback and must not be retained past return or across rows; a callback that needs to keep a value must copy it. With \u003ccode\u003eVolatileArgs\u003c/code\u003e unset (the default) arguments keep the existing copied, caller-owned semantics, so the flag is fully backward compatible; it has no effect on integer, float, time, or NULL arguments.\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/120\"\u003e#120\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/120\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/120\u003c/a\u003e), thanks Ian Chechin!\u003c/li\u003e\n\u003cli\u003eExtend the opt-in \u003ccode\u003eVolatileArgs\u003c/code\u003e zero-copy TEXT/BLOB argument access from \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/120\"\u003e#120\u003c/a\u003e to the virtual-table \u003ccode\u003eCursor.Filter\u003c/code\u003e (\u003ccode\u003exFilter\u003c/code\u003e) and \u003ccode\u003eUpdater.Insert\u003c/code\u003e/\u003ccode\u003eUpdate\u003c/code\u003e (\u003ccode\u003exUpdate\u003c/code\u003e) callbacks. A \u003ccode\u003evtab.Module\u003c/code\u003e opts in by implementing the new optional \u003ccode\u003evtab.VolatileArgsOpter\u003c/code\u003e interface (\u003ccode\u003eVolatileArgs() bool\u003c/code\u003e); the flag is read once at module registration and shared by every table created from it. On a vtab call carrying one TEXT and one BLOB argument this removes 2 allocs/op (one \u003ccode\u003elibc.GoString\u003c/code\u003e, one \u003ccode\u003emake([]byte)\u003c/code\u003e) on each of the Filter and Update paths.\u003c/li\u003e\n\u003cli\u003eThe same safety contract as \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/120\"\u003e#120\u003c/a\u003e applies: the views are valid only for the duration of the callback and must not be retained past return or across rows; a callback that needs to keep a value must copy it. Modules that do not implement \u003ccode\u003eVolatileArgsOpter\u003c/code\u003e (the default for all existing modules) are byte-for-byte unchanged, and the flag has no effect on integer, float, time, or NULL arguments.\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/121\"\u003e#121\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/121\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/121\u003c/a\u003e), thanks Ian Chechin!\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e2026-05-10 v1.50.1:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eUpgrade to \u003ca href=\"https://sqlite.org/releaselog/3_53_1.html\"\u003eSQLite 3.53.1\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e2026-04-24 v1.50.0:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eUpgrade to sqlite-vec \u003ca href=\"https://github.com/asg017/sqlite-vec/releases/tag/v0.1.9\"\u003ev0.1.9\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003eIntroduce \u003ccode\u003eColumnInfo\u003c/code\u003e, enabling dynamic query builders and ORMs to retrieve underlying SQLite C-API metadata (\u003ccode\u003eOriginName\u003c/code\u003e, \u003ccode\u003eTableName\u003c/code\u003e, \u003ccode\u003eDatabaseName\u003c/code\u003e, and \u003ccode\u003eDeclType\u003c/code\u003e).\u003c/li\u003e\n\u003cli\u003eThis feature is exposed via the idiomatic \u003ccode\u003edatabase/sql\u003c/code\u003e escape hatch \u003ccode\u003e(*sql.Conn).Raw()\u003c/code\u003e, avoiding custom statement handles and keeping the standard library workflow intact.\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/113\"\u003e#113\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/113\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/113\u003c/a\u003e), thanks Josh Bleecher Snyder!\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e2026-04-17 v1.49.0: Upgrade to \u003ca href=\"https://sqlite.org/releaselog/3_53_0.html\"\u003eSQLite 3.53.0\u003c/a\u003e.\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdded \u003ccode\u003e-DSQLITE_ENABLE_DBPAGE_VTAB\u003c/code\u003e to the transpilation. See \u003ca href=\"https://www.sqlite.org/dbpage.html\"\u003e\u0026quot;The SQLITE_DBPAGE Virtual Table\u0026quot;\u003c/a\u003e for details.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e2026-04-06 v1.48.2:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eFix ABI mapping mismatch in the pre-update hook trampoline that caused silent truncation of large 64-bit RowIDs.\u003c/li\u003e\n\u003cli\u003eEnsure the Go trampoline signature correctly aligns with the public \u003ccode\u003esqlite3_preupdate_hook\u003c/code\u003e C API, preventing data corruption for high-entropy keys (e.g., Snowflake IDs).\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/98\"\u003e#98\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/98\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/98\u003c/a\u003e), thanks Josh Bleecher Snyder!\u003c/li\u003e\n\u003cli\u003eFix the memory allocator used in \u003ccode\u003e(*conn).Deserialize\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003eReplace \u003ccode\u003etls.Alloc\u003c/code\u003e with \u003ccode\u003esqlite3_malloc64\u003c/code\u003e to prevent internal allocator corruption. This ensures the buffer is safely owned by SQLite, which may resize or free it due to the \u003ccode\u003eSQLITE_DESERIALIZE_RESIZEABLE\u003c/code\u003e and \u003ccode\u003eSQLITE_DESERIALIZE_FREEONCLOSE\u003c/code\u003e flags.\u003c/li\u003e\n\u003cli\u003ePrevent a memory leak by properly freeing the allocated buffer if fetching the main database name fails before handing ownership to SQLite.\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/100\"\u003e#100\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/100\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/100\u003c/a\u003e), thanks Josh Bleecher Snyder!\u003c/li\u003e\n\u003cli\u003eFix \u003ccode\u003e(*conn).Deserialize\u003c/code\u003e to explicitly reject \u003ccode\u003enil\u003c/code\u003e or empty byte slices.\u003c/li\u003e\n\u003cli\u003ePrevent silent database disconnection and connection pool corruption caused by SQLite's default behavior when \u003ccode\u003esqlite3_deserialize\u003c/code\u003e receives a 0-length buffer.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/a5f439be99fee4478456048b117d3ca84518d5a7\"\u003e\u003ccode\u003ea5f439b\u003c/code\u003e\u003c/a\u003e CHANGELOG.md: fix release tag\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/41e77be50473b810a66c9beaf6d05d042b2a5556\"\u003e\u003ccode\u003e41e77be\u003c/code\u003e\u003c/a\u003e CHANGELOG.md: document \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/121\"\u003e#121\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/827df98d7342db30f09454eaedfe87ef3e7277db\"\u003e\u003ccode\u003e827df98\u003c/code\u003e\u003c/a\u003e gofmt -l -s -w vtab/*.go\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/0d384cb7dcab26840d003cee10f3ae7ae08a883c\"\u003e\u003ccode\u003e0d384cb\u003c/code\u003e\u003c/a\u003e Merge branch 'feat/vtab-volatile-args-opt-in' into 'master'\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/06e06d50e3bec5f79dd4ad60847a6d6405b76721\"\u003e\u003ccode\u003e06e06d5\u003c/code\u003e\u003c/a\u003e extend VolatileArgs opt-in to vtab Filter and Updater Insert/Update\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/2486abd8b22026a1047cdf67a1b090f3bae4210f\"\u003e\u003ccode\u003e2486abd\u003c/code\u003e\u003c/a\u003e HACKING.md, CLAUDE.md: this repo is not auto-tagged, tagging is manual\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/d808a8f1a5d9651553bea0877197fe1c73dac189\"\u003e\u003ccode\u003ed808a8f\u003c/code\u003e\u003c/a\u003e CHANGELOG.md: document \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/120\"\u003e#120\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/fac1cab20834685f75c7201d756608fd71b71824\"\u003e\u003ccode\u003efac1cab\u003c/code\u003e\u003c/a\u003e Merge branch 'feat/volatile-args-opt-in' into 'master'\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/569614c5d4b0187b9b8c632292d3556ce53e1274\"\u003e\u003ccode\u003e569614c\u003c/code\u003e\u003c/a\u003e address review: empty-BLOB shape parity + re-entrancy note\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/905960c9f78c54b85f29718cc34b69088edb1db2\"\u003e\u003ccode\u003e905960c\u003c/code\u003e\u003c/a\u003e add FunctionImpl.VolatileArgs opt-in for zero-copy TEXT/BLOB args\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://gitlab.com/cznic/sqlite/compare/v1.50.1...v1.51.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\n\nDependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.\n\n[//]: # (dependabot-automerge-start)\n[//]: # (dependabot-automerge-end)\n\n---\n\n\u003cdetails\u003e\n\u003csummary\u003eDependabot commands and options\u003c/summary\u003e\n\u003cbr /\u003e\n\nYou can trigger Dependabot actions by commenting on this PR:\n- `@dependabot rebase` will rebase this PR\n- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it\n- `@dependabot show \u003cdependency name\u003e ignore conditions` will show all of the ignore conditions of the specified dependency\n- `@dependabot ignore \u003cdependency name\u003e major version` will close this group update PR and stop Dependabot creating any more for the specific dependency's major version (unless you unignore this specific dependency's major version or upgrade to it yourself)\n- `@dependabot ignore \u003cdependency name\u003e minor version` will close this group update PR and stop Dependabot creating any more for the specific dependency's minor version (unless you unignore this specific dependency's minor version or upgrade to it yourself)\n- `@dependabot ignore \u003cdependency name\u003e` will close this group update PR and stop Dependabot creating any more for the specific dependency (unless you unignore this specific dependency or upgrade to it yourself)\n- `@dependabot unignore \u003cdependency name\u003e` will remove all of the ignore conditions of the specified dependency\n- `@dependabot unignore \u003cdependency name\u003e \u003cignore condition\u003e` will remove the ignore condition of the specified dependency and ignore conditions\n\n\n\u003c/details\u003e","html_url":"https://github.com/MustardSeedNetworks/niac-go/pull/793","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/MustardSeedNetworks%2Fniac-go/issues/793","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/793/packages"},{"uuid":"4578251656","node_id":"PR_kwDOOcQ8Ic7iIsbY","number":92,"state":"closed","title":"chore(deps): bump modernc.org/sqlite from 1.44.3 to 1.51.0","user":"dependabot[bot]","labels":["dependencies","go"],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":"2026-06-08T21:05:45.000Z","author_association":null,"state_reason":null,"created_at":"2026-06-03T08:42:29.000Z","updated_at":"2026-06-08T21:05:47.000Z","time_to_close":476596,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"chore(deps)","packages":[{"name":"modernc.org/sqlite","old_version":"1.44.3","new_version":"1.51.0","repository_url":null}],"path":null,"ecosystem":"go"},"body":"Bumps [modernc.org/sqlite](https://gitlab.com/cznic/sqlite) from 1.44.3 to 1.51.0.\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://gitlab.com/cznic/sqlite/blob/master/CHANGELOG.md\"\u003emodernc.org/sqlite's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003eChangelog\u003c/h1\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e2026-05-28 v1.52.0:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdd \u003ccode\u003eBackup.Remaining\u003c/code\u003e and \u003ccode\u003eBackup.PageCount\u003c/code\u003e, thin wrappers around the existing \u003ccode\u003esqlite3_backup_remaining\u003c/code\u003e and \u003ccode\u003esqlite3_backup_pagecount\u003c/code\u003e C symbols. Together they expose the per-\u003ccode\u003eStep\u003c/code\u003e progress counters that the underlying backup object already maintains, enabling progress reporting during online backups without dropping to \u003ccode\u003emodernc.org/sqlite/lib\u003c/code\u003e directly.\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/122\"\u003e#122\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/122\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/122\u003c/a\u003e), thanks Ian Chechin!\u003c/li\u003e\n\u003cli\u003eDrop the redundant second copy in \u003ccode\u003e(*conn).columnText\u003c/code\u003e, the path that backs every \u003ccode\u003eRows.Scan\u003c/code\u003e into a Go \u003ccode\u003estring\u003c/code\u003e for a TEXT column. The value's bytes are still copied once out of SQLite-owned memory into a fresh Go buffer; that buffer is then reinterpreted as the result string with \u003ccode\u003eunsafe.String\u003c/code\u003e rather than copied a second time by the implicit \u003ccode\u003estring([]byte)\u003c/code\u003e conversion. This removes one allocation per TEXT value per row and roughly halves the bytes allocated on that path; on the new \u003ccode\u003eBenchmarkColumnTextScan\u003c/code\u003e cases it is ~13–20% faster for payloads of 256 B and larger, with no measurable change for very short strings. Purely internal: no API or behavioral change, and the returned string never aliases SQLite's buffer.\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/123\"\u003e#123\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/123\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/123\u003c/a\u003e), thanks Ian Chechin!\u003c/li\u003e\n\u003cli\u003eCache each result column's declared type once per result set in \u003ccode\u003enewRows\u003c/code\u003e instead of recomputing it on every row. The TEXT branch of \u003ccode\u003eRows.Next\u003c/code\u003e calls \u003ccode\u003eColumnTypeDatabaseTypeName\u003c/code\u003e for every TEXT column on every row (independent of any DSN flag), which previously did a \u003ccode\u003elibc.GoString\u003c/code\u003e + \u003ccode\u003estrings.ToUpper\u003c/code\u003e each time; that lookup is now a single index into a cached, pre-uppercased \u003ccode\u003e[]string\u003c/code\u003e, and \u003ccode\u003eColumnTypeScanType\u003c/code\u003e reads the same cache and drops its per-call \u003ccode\u003estrings.ToLower\u003c/code\u003e. The declared type is fixed for the lifetime of a prepared statement, so the C round-trip is paid once per column rather than once per column per row, removing exactly 1 alloc + 8 B per TEXT column per row from the \u003ccode\u003eNext\u003c/code\u003e hot path. The new \u003ccode\u003eBenchmarkTextToTimeScan\u003c/code\u003e cases show ~7% faster on a 1000-row DATETIME SELECT under \u003ccode\u003e_texttotime=1\u003c/code\u003e. Purely internal: \u003ccode\u003eColumnTypeDatabaseTypeName\u003c/code\u003e and \u003ccode\u003eColumnTypeScanType\u003c/code\u003e return identical values, no API or behavioral change.\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/124\"\u003e#124\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/124\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/124\u003c/a\u003e), thanks Ian Chechin!\u003c/li\u003e\n\u003cli\u003eCache, per result column, the \u003ccode\u003eparseTimeFormats\u003c/code\u003e index that first parsed a TEXT-stored DATE/DATETIME/TIMESTAMP value, and try that format first on later rows instead of re-walking the list from the top. \u003ccode\u003e(*conn).parseTime\u003c/code\u003e previously ran \u003ccode\u003etime.Parse\u003c/code\u003e down the format list on every such row; for the canonical SQLite TEXT datetime format every row paid two failed \u003ccode\u003etime.Parse\u003c/code\u003e attempts — each allocating a \u003ccode\u003e*time.ParseError\u003c/code\u003e — before the match. On a 1000-row DATETIME TEXT SELECT this cuts ~50% of allocs/op and ~57% of B/op and is ~37% faster. The fall-through chain is preserved exactly: the seven formats are mutually exclusive, so the cached hint can never select a different match than the in-order scan, and the parsed \u003ccode\u003edriver.Value\u003c/code\u003e is identical to before. Purely internal: no API or behavioral change.\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/125\"\u003e#125\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/125\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/125\u003c/a\u003e), thanks Ian Chechin!\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e2026-05-28 v1.51.0:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003ePool the \u003ccode\u003e[]driver.Value\u003c/code\u003e slice passed to scalar/aggregate UDF callbacks and to vtab \u003ccode\u003eFilter\u003c/code\u003e/\u003ccode\u003eInsert\u003c/code\u003e/\u003ccode\u003eUpdate\u003c/code\u003e callbacks, eliminating the dominant per-row allocation on UDF-heavy queries. Benchmarks on a 1000-row, 3-arg noop scalar UDF show ~40% fewer bytes/op and ~15% fewer allocs/op.\u003c/li\u003e\n\u003cli\u003eDocument the matching \u0026quot;arguments are not valid past return\u0026quot; contract on \u003ccode\u003evtab.Cursor.Filter\u003c/code\u003e and \u003ccode\u003evtab.Updater.Insert\u003c/code\u003e/\u003ccode\u003eUpdate\u003c/code\u003e, consistent with the existing rule for \u003ccode\u003eFunctionImpl.Scalar\u003c/code\u003e / \u003ccode\u003eAggregateFunction.Step\u003c/code\u003e / \u003ccode\u003eWindowInverse\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003eResolves [GitLab issue \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/226\"\u003e#226\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/issues/226\"\u003ehttps://gitlab.com/cznic/sqlite/-/issues/226\u003c/a\u003e). See [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/114\"\u003e#114\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/114\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/114\u003c/a\u003e), thanks Ian Chechin!\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003eFileControl.FileControlDataVersion\u003c/code\u003e, a wrapper around \u003ccode\u003eSQLITE_FCNTL_DATA_VERSION\u003c/code\u003e for observing pager-cache data-version changes, including those made on the same connection. Useful as a primitive for application-level cache invalidation.\u003c/li\u003e\n\u003cli\u003eExposed via the idiomatic \u003ccode\u003edatabase/sql\u003c/code\u003e escape hatch \u003ccode\u003e(*sql.Conn).Raw()\u003c/code\u003e, consistent with the existing \u003ccode\u003eFileControlPersistWAL\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/115\"\u003e#115\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/115\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/115\u003c/a\u003e), thanks Ian Chechin!\u003c/li\u003e\n\u003cli\u003eFix a regression where in-memory connections (\u003ccode\u003e:memory:\u003c/code\u003e, \u003ccode\u003efile::memory:\u003c/code\u003e, shared-cache memory URIs) were discarded by \u003ccode\u003edatabase/sql\u003c/code\u003e after a context-cancelled query, taking the entire in-memory store with them. The fix for \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/198\"\u003e#198\u003c/a\u003e had added an \u003ccode\u003esqlite3_is_interrupted\u003c/code\u003e check to the connection validator that mistakenly applied to in-memory connections too, re-introducing the bug originally fixed by !74. File-backed connections keep the existing behaviour and are still discarded after an interrupt.\u003c/li\u003e\n\u003cli\u003eResolves [GitLab issue \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/196\"\u003e#196\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/issues/196\"\u003ehttps://gitlab.com/cznic/sqlite/-/issues/196\u003c/a\u003e). See [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/116\"\u003e#116\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/116\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/116\u003c/a\u003e), thanks Ian Chechin!\u003c/li\u003e\n\u003cli\u003eAdd an opt-in \u003ccode\u003eFunctionImpl.VolatileArgs\u003c/code\u003e flag that hands TEXT and BLOB arguments to scalar and aggregate UDF callbacks as zero-copy views (\u003ccode\u003eunsafe.String\u003c/code\u003e/\u003ccode\u003eunsafe.Slice\u003c/code\u003e) over SQLite's own value buffers, eliminating the per-argument \u003ccode\u003elibc.GoString\u003c/code\u003e/\u003ccode\u003emake([]byte)\u003c/code\u003e copy that the \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/226\"\u003e#226\u003c/a\u003e slice-pooling left as the remaining per-row allocation. On the same 1000-row, 3-arg (INTEGER/TEXT/BLOB) noop scalar UDF this removes a further ~35% of allocs/op and ~11% of bytes/op on top of \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/226\"\u003e#226\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003eThe views are valid only for the duration of the callback and must not be retained past return or across rows; a callback that needs to keep a value must copy it. With \u003ccode\u003eVolatileArgs\u003c/code\u003e unset (the default) arguments keep the existing copied, caller-owned semantics, so the flag is fully backward compatible; it has no effect on integer, float, time, or NULL arguments.\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/120\"\u003e#120\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/120\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/120\u003c/a\u003e), thanks Ian Chechin!\u003c/li\u003e\n\u003cli\u003eExtend the opt-in \u003ccode\u003eVolatileArgs\u003c/code\u003e zero-copy TEXT/BLOB argument access from \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/120\"\u003e#120\u003c/a\u003e to the virtual-table \u003ccode\u003eCursor.Filter\u003c/code\u003e (\u003ccode\u003exFilter\u003c/code\u003e) and \u003ccode\u003eUpdater.Insert\u003c/code\u003e/\u003ccode\u003eUpdate\u003c/code\u003e (\u003ccode\u003exUpdate\u003c/code\u003e) callbacks. A \u003ccode\u003evtab.Module\u003c/code\u003e opts in by implementing the new optional \u003ccode\u003evtab.VolatileArgsOpter\u003c/code\u003e interface (\u003ccode\u003eVolatileArgs() bool\u003c/code\u003e); the flag is read once at module registration and shared by every table created from it. On a vtab call carrying one TEXT and one BLOB argument this removes 2 allocs/op (one \u003ccode\u003elibc.GoString\u003c/code\u003e, one \u003ccode\u003emake([]byte)\u003c/code\u003e) on each of the Filter and Update paths.\u003c/li\u003e\n\u003cli\u003eThe same safety contract as \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/120\"\u003e#120\u003c/a\u003e applies: the views are valid only for the duration of the callback and must not be retained past return or across rows; a callback that needs to keep a value must copy it. Modules that do not implement \u003ccode\u003eVolatileArgsOpter\u003c/code\u003e (the default for all existing modules) are byte-for-byte unchanged, and the flag has no effect on integer, float, time, or NULL arguments.\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/121\"\u003e#121\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/121\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/121\u003c/a\u003e), thanks Ian Chechin!\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e2026-05-10 v1.50.1:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eUpgrade to \u003ca href=\"https://sqlite.org/releaselog/3_53_1.html\"\u003eSQLite 3.53.1\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e2026-04-24 v1.50.0:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eUpgrade to sqlite-vec \u003ca href=\"https://github.com/asg017/sqlite-vec/releases/tag/v0.1.9\"\u003ev0.1.9\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003eIntroduce \u003ccode\u003eColumnInfo\u003c/code\u003e, enabling dynamic query builders and ORMs to retrieve underlying SQLite C-API metadata (\u003ccode\u003eOriginName\u003c/code\u003e, \u003ccode\u003eTableName\u003c/code\u003e, \u003ccode\u003eDatabaseName\u003c/code\u003e, and \u003ccode\u003eDeclType\u003c/code\u003e).\u003c/li\u003e\n\u003cli\u003eThis feature is exposed via the idiomatic \u003ccode\u003edatabase/sql\u003c/code\u003e escape hatch \u003ccode\u003e(*sql.Conn).Raw()\u003c/code\u003e, avoiding custom statement handles and keeping the standard library workflow intact.\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/113\"\u003e#113\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/113\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/113\u003c/a\u003e), thanks Josh Bleecher Snyder!\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e2026-04-17 v1.49.0: Upgrade to \u003ca href=\"https://sqlite.org/releaselog/3_53_0.html\"\u003eSQLite 3.53.0\u003c/a\u003e.\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdded \u003ccode\u003e-DSQLITE_ENABLE_DBPAGE_VTAB\u003c/code\u003e to the transpilation. See \u003ca href=\"https://www.sqlite.org/dbpage.html\"\u003e\u0026quot;The SQLITE_DBPAGE Virtual Table\u0026quot;\u003c/a\u003e for details.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e2026-04-06 v1.48.2:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eFix ABI mapping mismatch in the pre-update hook trampoline that caused silent truncation of large 64-bit RowIDs.\u003c/li\u003e\n\u003cli\u003eEnsure the Go trampoline signature correctly aligns with the public \u003ccode\u003esqlite3_preupdate_hook\u003c/code\u003e C API, preventing data corruption for high-entropy keys (e.g., Snowflake IDs).\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/98\"\u003e#98\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/98\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/98\u003c/a\u003e), thanks Josh Bleecher Snyder!\u003c/li\u003e\n\u003cli\u003eFix the memory allocator used in \u003ccode\u003e(*conn).Deserialize\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003eReplace \u003ccode\u003etls.Alloc\u003c/code\u003e with \u003ccode\u003esqlite3_malloc64\u003c/code\u003e to prevent internal allocator corruption. This ensures the buffer is safely owned by SQLite, which may resize or free it due to the \u003ccode\u003eSQLITE_DESERIALIZE_RESIZEABLE\u003c/code\u003e and \u003ccode\u003eSQLITE_DESERIALIZE_FREEONCLOSE\u003c/code\u003e flags.\u003c/li\u003e\n\u003cli\u003ePrevent a memory leak by properly freeing the allocated buffer if fetching the main database name fails before handing ownership to SQLite.\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/100\"\u003e#100\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/100\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/100\u003c/a\u003e), thanks Josh Bleecher Snyder!\u003c/li\u003e\n\u003cli\u003eFix \u003ccode\u003e(*conn).Deserialize\u003c/code\u003e to explicitly reject \u003ccode\u003enil\u003c/code\u003e or empty byte slices.\u003c/li\u003e\n\u003cli\u003ePrevent silent database disconnection and connection pool corruption caused by SQLite's default behavior when \u003ccode\u003esqlite3_deserialize\u003c/code\u003e receives a 0-length buffer.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/a5f439be99fee4478456048b117d3ca84518d5a7\"\u003e\u003ccode\u003ea5f439b\u003c/code\u003e\u003c/a\u003e CHANGELOG.md: fix release tag\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/41e77be50473b810a66c9beaf6d05d042b2a5556\"\u003e\u003ccode\u003e41e77be\u003c/code\u003e\u003c/a\u003e CHANGELOG.md: document \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/121\"\u003e#121\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/827df98d7342db30f09454eaedfe87ef3e7277db\"\u003e\u003ccode\u003e827df98\u003c/code\u003e\u003c/a\u003e gofmt -l -s -w vtab/*.go\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/0d384cb7dcab26840d003cee10f3ae7ae08a883c\"\u003e\u003ccode\u003e0d384cb\u003c/code\u003e\u003c/a\u003e Merge branch 'feat/vtab-volatile-args-opt-in' into 'master'\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/06e06d50e3bec5f79dd4ad60847a6d6405b76721\"\u003e\u003ccode\u003e06e06d5\u003c/code\u003e\u003c/a\u003e extend VolatileArgs opt-in to vtab Filter and Updater Insert/Update\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/2486abd8b22026a1047cdf67a1b090f3bae4210f\"\u003e\u003ccode\u003e2486abd\u003c/code\u003e\u003c/a\u003e HACKING.md, CLAUDE.md: this repo is not auto-tagged, tagging is manual\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/d808a8f1a5d9651553bea0877197fe1c73dac189\"\u003e\u003ccode\u003ed808a8f\u003c/code\u003e\u003c/a\u003e CHANGELOG.md: document \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/120\"\u003e#120\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/fac1cab20834685f75c7201d756608fd71b71824\"\u003e\u003ccode\u003efac1cab\u003c/code\u003e\u003c/a\u003e Merge branch 'feat/volatile-args-opt-in' into 'master'\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/569614c5d4b0187b9b8c632292d3556ce53e1274\"\u003e\u003ccode\u003e569614c\u003c/code\u003e\u003c/a\u003e address review: empty-BLOB shape parity + re-entrancy note\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/905960c9f78c54b85f29718cc34b69088edb1db2\"\u003e\u003ccode\u003e905960c\u003c/code\u003e\u003c/a\u003e add FunctionImpl.VolatileArgs opt-in for zero-copy TEXT/BLOB args\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://gitlab.com/cznic/sqlite/compare/v1.44.3...v1.51.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\n\n[![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=modernc.org/sqlite\u0026package-manager=go_modules\u0026previous-version=1.44.3\u0026new-version=1.51.0)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)\n\nDependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.\n\n[//]: # (dependabot-automerge-start)\n[//]: # (dependabot-automerge-end)\n\n---\n\n\u003cdetails\u003e\n\u003csummary\u003eDependabot commands and options\u003c/summary\u003e\n\u003cbr /\u003e\n\nYou can trigger Dependabot actions by commenting on this PR:\n- `@dependabot rebase` will rebase this PR\n- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it\n- `@dependabot show \u003cdependency name\u003e ignore conditions` will show all of the ignore conditions of the specified dependency\n- `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)\n- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)\n- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)\n\n\n\u003c/details\u003e","html_url":"https://github.com/bit8bytes/goalkeepr/pull/92","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/bit8bytes%2Fgoalkeepr/issues/92","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/92/packages"},{"uuid":"4567314063","node_id":"PR_kwDOOTv_y87hk6Op","number":831,"state":"open","title":"build(deps): bump modernc.org/sqlite from 1.47.0 to 1.51.0","user":"dependabot[bot]","labels":["dependencies","go"],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":null,"author_association":null,"state_reason":null,"created_at":"2026-06-02T00:19:13.000Z","updated_at":"2026-06-02T00:29:47.000Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"build(deps)","packages":[{"name":"modernc.org/sqlite","old_version":"1.47.0","new_version":"1.51.0","repository_url":null}],"path":null,"ecosystem":"go"},"body":"Bumps [modernc.org/sqlite](https://gitlab.com/cznic/sqlite) from 1.47.0 to 1.51.0.\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://gitlab.com/cznic/sqlite/blob/master/CHANGELOG.md\"\u003emodernc.org/sqlite's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003eChangelog\u003c/h1\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e2026-05-28 v1.52.0:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdd \u003ccode\u003eBackup.Remaining\u003c/code\u003e and \u003ccode\u003eBackup.PageCount\u003c/code\u003e, thin wrappers around the existing \u003ccode\u003esqlite3_backup_remaining\u003c/code\u003e and \u003ccode\u003esqlite3_backup_pagecount\u003c/code\u003e C symbols. Together they expose the per-\u003ccode\u003eStep\u003c/code\u003e progress counters that the underlying backup object already maintains, enabling progress reporting during online backups without dropping to \u003ccode\u003emodernc.org/sqlite/lib\u003c/code\u003e directly.\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/122\"\u003e#122\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/122\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/122\u003c/a\u003e), thanks Ian Chechin!\u003c/li\u003e\n\u003cli\u003eDrop the redundant second copy in \u003ccode\u003e(*conn).columnText\u003c/code\u003e, the path that backs every \u003ccode\u003eRows.Scan\u003c/code\u003e into a Go \u003ccode\u003estring\u003c/code\u003e for a TEXT column. The value's bytes are still copied once out of SQLite-owned memory into a fresh Go buffer; that buffer is then reinterpreted as the result string with \u003ccode\u003eunsafe.String\u003c/code\u003e rather than copied a second time by the implicit \u003ccode\u003estring([]byte)\u003c/code\u003e conversion. This removes one allocation per TEXT value per row and roughly halves the bytes allocated on that path; on the new \u003ccode\u003eBenchmarkColumnTextScan\u003c/code\u003e cases it is ~13–20% faster for payloads of 256 B and larger, with no measurable change for very short strings. Purely internal: no API or behavioral change, and the returned string never aliases SQLite's buffer.\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/123\"\u003e#123\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/123\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/123\u003c/a\u003e), thanks Ian Chechin!\u003c/li\u003e\n\u003cli\u003eCache each result column's declared type once per result set in \u003ccode\u003enewRows\u003c/code\u003e instead of recomputing it on every row. The TEXT branch of \u003ccode\u003eRows.Next\u003c/code\u003e calls \u003ccode\u003eColumnTypeDatabaseTypeName\u003c/code\u003e for every TEXT column on every row (independent of any DSN flag), which previously did a \u003ccode\u003elibc.GoString\u003c/code\u003e + \u003ccode\u003estrings.ToUpper\u003c/code\u003e each time; that lookup is now a single index into a cached, pre-uppercased \u003ccode\u003e[]string\u003c/code\u003e, and \u003ccode\u003eColumnTypeScanType\u003c/code\u003e reads the same cache and drops its per-call \u003ccode\u003estrings.ToLower\u003c/code\u003e. The declared type is fixed for the lifetime of a prepared statement, so the C round-trip is paid once per column rather than once per column per row, removing exactly 1 alloc + 8 B per TEXT column per row from the \u003ccode\u003eNext\u003c/code\u003e hot path. The new \u003ccode\u003eBenchmarkTextToTimeScan\u003c/code\u003e cases show ~7% faster on a 1000-row DATETIME SELECT under \u003ccode\u003e_texttotime=1\u003c/code\u003e. Purely internal: \u003ccode\u003eColumnTypeDatabaseTypeName\u003c/code\u003e and \u003ccode\u003eColumnTypeScanType\u003c/code\u003e return identical values, no API or behavioral change.\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/124\"\u003e#124\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/124\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/124\u003c/a\u003e), thanks Ian Chechin!\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e2026-05-28 v1.51.0:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003ePool the \u003ccode\u003e[]driver.Value\u003c/code\u003e slice passed to scalar/aggregate UDF callbacks and to vtab \u003ccode\u003eFilter\u003c/code\u003e/\u003ccode\u003eInsert\u003c/code\u003e/\u003ccode\u003eUpdate\u003c/code\u003e callbacks, eliminating the dominant per-row allocation on UDF-heavy queries. Benchmarks on a 1000-row, 3-arg noop scalar UDF show ~40% fewer bytes/op and ~15% fewer allocs/op.\u003c/li\u003e\n\u003cli\u003eDocument the matching \u0026quot;arguments are not valid past return\u0026quot; contract on \u003ccode\u003evtab.Cursor.Filter\u003c/code\u003e and \u003ccode\u003evtab.Updater.Insert\u003c/code\u003e/\u003ccode\u003eUpdate\u003c/code\u003e, consistent with the existing rule for \u003ccode\u003eFunctionImpl.Scalar\u003c/code\u003e / \u003ccode\u003eAggregateFunction.Step\u003c/code\u003e / \u003ccode\u003eWindowInverse\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003eResolves [GitLab issue \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/226\"\u003e#226\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/issues/226\"\u003ehttps://gitlab.com/cznic/sqlite/-/issues/226\u003c/a\u003e). See [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/114\"\u003e#114\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/114\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/114\u003c/a\u003e), thanks Ian Chechin!\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003eFileControl.FileControlDataVersion\u003c/code\u003e, a wrapper around \u003ccode\u003eSQLITE_FCNTL_DATA_VERSION\u003c/code\u003e for observing pager-cache data-version changes, including those made on the same connection. Useful as a primitive for application-level cache invalidation.\u003c/li\u003e\n\u003cli\u003eExposed via the idiomatic \u003ccode\u003edatabase/sql\u003c/code\u003e escape hatch \u003ccode\u003e(*sql.Conn).Raw()\u003c/code\u003e, consistent with the existing \u003ccode\u003eFileControlPersistWAL\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/115\"\u003e#115\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/115\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/115\u003c/a\u003e), thanks Ian Chechin!\u003c/li\u003e\n\u003cli\u003eFix a regression where in-memory connections (\u003ccode\u003e:memory:\u003c/code\u003e, \u003ccode\u003efile::memory:\u003c/code\u003e, shared-cache memory URIs) were discarded by \u003ccode\u003edatabase/sql\u003c/code\u003e after a context-cancelled query, taking the entire in-memory store with them. The fix for \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/198\"\u003e#198\u003c/a\u003e had added an \u003ccode\u003esqlite3_is_interrupted\u003c/code\u003e check to the connection validator that mistakenly applied to in-memory connections too, re-introducing the bug originally fixed by !74. File-backed connections keep the existing behaviour and are still discarded after an interrupt.\u003c/li\u003e\n\u003cli\u003eResolves [GitLab issue \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/196\"\u003e#196\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/issues/196\"\u003ehttps://gitlab.com/cznic/sqlite/-/issues/196\u003c/a\u003e). See [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/116\"\u003e#116\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/116\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/116\u003c/a\u003e), thanks Ian Chechin!\u003c/li\u003e\n\u003cli\u003eAdd an opt-in \u003ccode\u003eFunctionImpl.VolatileArgs\u003c/code\u003e flag that hands TEXT and BLOB arguments to scalar and aggregate UDF callbacks as zero-copy views (\u003ccode\u003eunsafe.String\u003c/code\u003e/\u003ccode\u003eunsafe.Slice\u003c/code\u003e) over SQLite's own value buffers, eliminating the per-argument \u003ccode\u003elibc.GoString\u003c/code\u003e/\u003ccode\u003emake([]byte)\u003c/code\u003e copy that the \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/226\"\u003e#226\u003c/a\u003e slice-pooling left as the remaining per-row allocation. On the same 1000-row, 3-arg (INTEGER/TEXT/BLOB) noop scalar UDF this removes a further ~35% of allocs/op and ~11% of bytes/op on top of \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/226\"\u003e#226\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003eThe views are valid only for the duration of the callback and must not be retained past return or across rows; a callback that needs to keep a value must copy it. With \u003ccode\u003eVolatileArgs\u003c/code\u003e unset (the default) arguments keep the existing copied, caller-owned semantics, so the flag is fully backward compatible; it has no effect on integer, float, time, or NULL arguments.\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/120\"\u003e#120\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/120\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/120\u003c/a\u003e), thanks Ian Chechin!\u003c/li\u003e\n\u003cli\u003eExtend the opt-in \u003ccode\u003eVolatileArgs\u003c/code\u003e zero-copy TEXT/BLOB argument access from \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/120\"\u003e#120\u003c/a\u003e to the virtual-table \u003ccode\u003eCursor.Filter\u003c/code\u003e (\u003ccode\u003exFilter\u003c/code\u003e) and \u003ccode\u003eUpdater.Insert\u003c/code\u003e/\u003ccode\u003eUpdate\u003c/code\u003e (\u003ccode\u003exUpdate\u003c/code\u003e) callbacks. A \u003ccode\u003evtab.Module\u003c/code\u003e opts in by implementing the new optional \u003ccode\u003evtab.VolatileArgsOpter\u003c/code\u003e interface (\u003ccode\u003eVolatileArgs() bool\u003c/code\u003e); the flag is read once at module registration and shared by every table created from it. On a vtab call carrying one TEXT and one BLOB argument this removes 2 allocs/op (one \u003ccode\u003elibc.GoString\u003c/code\u003e, one \u003ccode\u003emake([]byte)\u003c/code\u003e) on each of the Filter and Update paths.\u003c/li\u003e\n\u003cli\u003eThe same safety contract as \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/120\"\u003e#120\u003c/a\u003e applies: the views are valid only for the duration of the callback and must not be retained past return or across rows; a callback that needs to keep a value must copy it. Modules that do not implement \u003ccode\u003eVolatileArgsOpter\u003c/code\u003e (the default for all existing modules) are byte-for-byte unchanged, and the flag has no effect on integer, float, time, or NULL arguments.\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/121\"\u003e#121\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/121\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/121\u003c/a\u003e), thanks Ian Chechin!\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e2026-05-10 v1.50.1:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eUpgrade to \u003ca href=\"https://sqlite.org/releaselog/3_53_1.html\"\u003eSQLite 3.53.1\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e2026-04-24 v1.50.0:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eUpgrade to sqlite-vec \u003ca href=\"https://github.com/asg017/sqlite-vec/releases/tag/v0.1.9\"\u003ev0.1.9\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003eIntroduce \u003ccode\u003eColumnInfo\u003c/code\u003e, enabling dynamic query builders and ORMs to retrieve underlying SQLite C-API metadata (\u003ccode\u003eOriginName\u003c/code\u003e, \u003ccode\u003eTableName\u003c/code\u003e, \u003ccode\u003eDatabaseName\u003c/code\u003e, and \u003ccode\u003eDeclType\u003c/code\u003e).\u003c/li\u003e\n\u003cli\u003eThis feature is exposed via the idiomatic \u003ccode\u003edatabase/sql\u003c/code\u003e escape hatch \u003ccode\u003e(*sql.Conn).Raw()\u003c/code\u003e, avoiding custom statement handles and keeping the standard library workflow intact.\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/113\"\u003e#113\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/113\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/113\u003c/a\u003e), thanks Josh Bleecher Snyder!\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e2026-04-17 v1.49.0: Upgrade to \u003ca href=\"https://sqlite.org/releaselog/3_53_0.html\"\u003eSQLite 3.53.0\u003c/a\u003e.\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdded \u003ccode\u003e-DSQLITE_ENABLE_DBPAGE_VTAB\u003c/code\u003e to the transpilation. See \u003ca href=\"https://www.sqlite.org/dbpage.html\"\u003e\u0026quot;The SQLITE_DBPAGE Virtual Table\u0026quot;\u003c/a\u003e for details.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e2026-04-06 v1.48.2:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eFix ABI mapping mismatch in the pre-update hook trampoline that caused silent truncation of large 64-bit RowIDs.\u003c/li\u003e\n\u003cli\u003eEnsure the Go trampoline signature correctly aligns with the public \u003ccode\u003esqlite3_preupdate_hook\u003c/code\u003e C API, preventing data corruption for high-entropy keys (e.g., Snowflake IDs).\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/98\"\u003e#98\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/98\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/98\u003c/a\u003e), thanks Josh Bleecher Snyder!\u003c/li\u003e\n\u003cli\u003eFix the memory allocator used in \u003ccode\u003e(*conn).Deserialize\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003eReplace \u003ccode\u003etls.Alloc\u003c/code\u003e with \u003ccode\u003esqlite3_malloc64\u003c/code\u003e to prevent internal allocator corruption. This ensures the buffer is safely owned by SQLite, which may resize or free it due to the \u003ccode\u003eSQLITE_DESERIALIZE_RESIZEABLE\u003c/code\u003e and \u003ccode\u003eSQLITE_DESERIALIZE_FREEONCLOSE\u003c/code\u003e flags.\u003c/li\u003e\n\u003cli\u003ePrevent a memory leak by properly freeing the allocated buffer if fetching the main database name fails before handing ownership to SQLite.\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/100\"\u003e#100\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/100\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/100\u003c/a\u003e), thanks Josh Bleecher Snyder!\u003c/li\u003e\n\u003cli\u003eFix \u003ccode\u003e(*conn).Deserialize\u003c/code\u003e to explicitly reject \u003ccode\u003enil\u003c/code\u003e or empty byte slices.\u003c/li\u003e\n\u003cli\u003ePrevent silent database disconnection and connection pool corruption caused by SQLite's default behavior when \u003ccode\u003esqlite3_deserialize\u003c/code\u003e receives a 0-length buffer.\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/101\"\u003e#101\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/101\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/101\u003c/a\u003e), thanks Josh Bleecher Snyder!\u003c/li\u003e\n\u003cli\u003eFix \u003ccode\u003ecommitHookTrampoline\u003c/code\u003e and \u003ccode\u003erollbackHookTrampoline\u003c/code\u003e signatures by removing the unused \u003ccode\u003epCsr\u003c/code\u003e parameter.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/a5f439be99fee4478456048b117d3ca84518d5a7\"\u003e\u003ccode\u003ea5f439b\u003c/code\u003e\u003c/a\u003e CHANGELOG.md: fix release tag\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/41e77be50473b810a66c9beaf6d05d042b2a5556\"\u003e\u003ccode\u003e41e77be\u003c/code\u003e\u003c/a\u003e CHANGELOG.md: document \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/121\"\u003e#121\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/827df98d7342db30f09454eaedfe87ef3e7277db\"\u003e\u003ccode\u003e827df98\u003c/code\u003e\u003c/a\u003e gofmt -l -s -w vtab/*.go\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/0d384cb7dcab26840d003cee10f3ae7ae08a883c\"\u003e\u003ccode\u003e0d384cb\u003c/code\u003e\u003c/a\u003e Merge branch 'feat/vtab-volatile-args-opt-in' into 'master'\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/06e06d50e3bec5f79dd4ad60847a6d6405b76721\"\u003e\u003ccode\u003e06e06d5\u003c/code\u003e\u003c/a\u003e extend VolatileArgs opt-in to vtab Filter and Updater Insert/Update\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/2486abd8b22026a1047cdf67a1b090f3bae4210f\"\u003e\u003ccode\u003e2486abd\u003c/code\u003e\u003c/a\u003e HACKING.md, CLAUDE.md: this repo is not auto-tagged, tagging is manual\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/d808a8f1a5d9651553bea0877197fe1c73dac189\"\u003e\u003ccode\u003ed808a8f\u003c/code\u003e\u003c/a\u003e CHANGELOG.md: document \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/120\"\u003e#120\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/fac1cab20834685f75c7201d756608fd71b71824\"\u003e\u003ccode\u003efac1cab\u003c/code\u003e\u003c/a\u003e Merge branch 'feat/volatile-args-opt-in' into 'master'\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/569614c5d4b0187b9b8c632292d3556ce53e1274\"\u003e\u003ccode\u003e569614c\u003c/code\u003e\u003c/a\u003e address review: empty-BLOB shape parity + re-entrancy note\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/905960c9f78c54b85f29718cc34b69088edb1db2\"\u003e\u003ccode\u003e905960c\u003c/code\u003e\u003c/a\u003e add FunctionImpl.VolatileArgs opt-in for zero-copy TEXT/BLOB args\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://gitlab.com/cznic/sqlite/compare/v1.47.0...v1.51.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\n\n[![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=modernc.org/sqlite\u0026package-manager=go_modules\u0026previous-version=1.47.0\u0026new-version=1.51.0)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)\n\nDependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.\n\n[//]: # (dependabot-automerge-start)\n[//]: # (dependabot-automerge-end)\n\n---\n\n\u003cdetails\u003e\n\u003csummary\u003eDependabot commands and options\u003c/summary\u003e\n\u003cbr /\u003e\n\nYou can trigger Dependabot actions by commenting on this PR:\n- `@dependabot rebase` will rebase this PR\n- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it\n- `@dependabot show \u003cdependency name\u003e ignore conditions` will show all of the ignore conditions of the specified dependency\n- `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)\n- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)\n- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)\n\n\n\u003c/details\u003e","html_url":"https://github.com/GoCodeAlone/workflow/pull/831","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/GoCodeAlone%2Fworkflow/issues/831","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/831/packages"},{"uuid":"4558659763","node_id":"PR_kwDOPP3uM87hI9GB","number":6,"state":"closed","title":"chore(deps): bump modernc.org/sqlite from 1.50.1 to 1.51.0","user":"dependabot[bot]","labels":["dependencies","go"],"assignees":[],"locked":false,"comments_count":6,"pull_request":true,"closed_at":"2026-05-31T19:15:51.000Z","author_association":null,"state_reason":null,"created_at":"2026-05-31T19:06:00.000Z","updated_at":"2026-05-31T19:15:56.000Z","time_to_close":591,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"chore(deps)","packages":[{"name":"modernc.org/sqlite","old_version":"1.50.1","new_version":"1.51.0","repository_url":null}],"path":null,"ecosystem":"go"},"body":"Bumps [modernc.org/sqlite](https://gitlab.com/cznic/sqlite) from 1.50.1 to 1.51.0.\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://gitlab.com/cznic/sqlite/blob/master/CHANGELOG.md\"\u003emodernc.org/sqlite's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003eChangelog\u003c/h1\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e2026-05-28 v1.52.0:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdd \u003ccode\u003eBackup.Remaining\u003c/code\u003e and \u003ccode\u003eBackup.PageCount\u003c/code\u003e, thin wrappers around the existing \u003ccode\u003esqlite3_backup_remaining\u003c/code\u003e and \u003ccode\u003esqlite3_backup_pagecount\u003c/code\u003e C symbols. Together they expose the per-\u003ccode\u003eStep\u003c/code\u003e progress counters that the underlying backup object already maintains, enabling progress reporting during online backups without dropping to \u003ccode\u003emodernc.org/sqlite/lib\u003c/code\u003e directly.\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/122\"\u003e#122\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/122\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/122\u003c/a\u003e), thanks Ian Chechin!\u003c/li\u003e\n\u003cli\u003eDrop the redundant second copy in \u003ccode\u003e(*conn).columnText\u003c/code\u003e, the path that backs every \u003ccode\u003eRows.Scan\u003c/code\u003e into a Go \u003ccode\u003estring\u003c/code\u003e for a TEXT column. The value's bytes are still copied once out of SQLite-owned memory into a fresh Go buffer; that buffer is then reinterpreted as the result string with \u003ccode\u003eunsafe.String\u003c/code\u003e rather than copied a second time by the implicit \u003ccode\u003estring([]byte)\u003c/code\u003e conversion. This removes one allocation per TEXT value per row and roughly halves the bytes allocated on that path; on the new \u003ccode\u003eBenchmarkColumnTextScan\u003c/code\u003e cases it is ~13–20% faster for payloads of 256 B and larger, with no measurable change for very short strings. Purely internal: no API or behavioral change, and the returned string never aliases SQLite's buffer.\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/123\"\u003e#123\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/123\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/123\u003c/a\u003e), thanks Ian Chechin!\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e2026-05-28 v1.51.0:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003ePool the \u003ccode\u003e[]driver.Value\u003c/code\u003e slice passed to scalar/aggregate UDF callbacks and to vtab \u003ccode\u003eFilter\u003c/code\u003e/\u003ccode\u003eInsert\u003c/code\u003e/\u003ccode\u003eUpdate\u003c/code\u003e callbacks, eliminating the dominant per-row allocation on UDF-heavy queries. Benchmarks on a 1000-row, 3-arg noop scalar UDF show ~40% fewer bytes/op and ~15% fewer allocs/op.\u003c/li\u003e\n\u003cli\u003eDocument the matching \u0026quot;arguments are not valid past return\u0026quot; contract on \u003ccode\u003evtab.Cursor.Filter\u003c/code\u003e and \u003ccode\u003evtab.Updater.Insert\u003c/code\u003e/\u003ccode\u003eUpdate\u003c/code\u003e, consistent with the existing rule for \u003ccode\u003eFunctionImpl.Scalar\u003c/code\u003e / \u003ccode\u003eAggregateFunction.Step\u003c/code\u003e / \u003ccode\u003eWindowInverse\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003eResolves [GitLab issue \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/226\"\u003e#226\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/issues/226\"\u003ehttps://gitlab.com/cznic/sqlite/-/issues/226\u003c/a\u003e). See [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/114\"\u003e#114\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/114\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/114\u003c/a\u003e), thanks Ian Chechin!\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003eFileControl.FileControlDataVersion\u003c/code\u003e, a wrapper around \u003ccode\u003eSQLITE_FCNTL_DATA_VERSION\u003c/code\u003e for observing pager-cache data-version changes, including those made on the same connection. Useful as a primitive for application-level cache invalidation.\u003c/li\u003e\n\u003cli\u003eExposed via the idiomatic \u003ccode\u003edatabase/sql\u003c/code\u003e escape hatch \u003ccode\u003e(*sql.Conn).Raw()\u003c/code\u003e, consistent with the existing \u003ccode\u003eFileControlPersistWAL\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/115\"\u003e#115\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/115\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/115\u003c/a\u003e), thanks Ian Chechin!\u003c/li\u003e\n\u003cli\u003eFix a regression where in-memory connections (\u003ccode\u003e:memory:\u003c/code\u003e, \u003ccode\u003efile::memory:\u003c/code\u003e, shared-cache memory URIs) were discarded by \u003ccode\u003edatabase/sql\u003c/code\u003e after a context-cancelled query, taking the entire in-memory store with them. The fix for \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/198\"\u003e#198\u003c/a\u003e had added an \u003ccode\u003esqlite3_is_interrupted\u003c/code\u003e check to the connection validator that mistakenly applied to in-memory connections too, re-introducing the bug originally fixed by !74. File-backed connections keep the existing behaviour and are still discarded after an interrupt.\u003c/li\u003e\n\u003cli\u003eResolves [GitLab issue \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/196\"\u003e#196\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/issues/196\"\u003ehttps://gitlab.com/cznic/sqlite/-/issues/196\u003c/a\u003e). See [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/116\"\u003e#116\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/116\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/116\u003c/a\u003e), thanks Ian Chechin!\u003c/li\u003e\n\u003cli\u003eAdd an opt-in \u003ccode\u003eFunctionImpl.VolatileArgs\u003c/code\u003e flag that hands TEXT and BLOB arguments to scalar and aggregate UDF callbacks as zero-copy views (\u003ccode\u003eunsafe.String\u003c/code\u003e/\u003ccode\u003eunsafe.Slice\u003c/code\u003e) over SQLite's own value buffers, eliminating the per-argument \u003ccode\u003elibc.GoString\u003c/code\u003e/\u003ccode\u003emake([]byte)\u003c/code\u003e copy that the \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/226\"\u003e#226\u003c/a\u003e slice-pooling left as the remaining per-row allocation. On the same 1000-row, 3-arg (INTEGER/TEXT/BLOB) noop scalar UDF this removes a further ~35% of allocs/op and ~11% of bytes/op on top of \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/226\"\u003e#226\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003eThe views are valid only for the duration of the callback and must not be retained past return or across rows; a callback that needs to keep a value must copy it. With \u003ccode\u003eVolatileArgs\u003c/code\u003e unset (the default) arguments keep the existing copied, caller-owned semantics, so the flag is fully backward compatible; it has no effect on integer, float, time, or NULL arguments.\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/120\"\u003e#120\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/120\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/120\u003c/a\u003e), thanks Ian Chechin!\u003c/li\u003e\n\u003cli\u003eExtend the opt-in \u003ccode\u003eVolatileArgs\u003c/code\u003e zero-copy TEXT/BLOB argument access from \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/120\"\u003e#120\u003c/a\u003e to the virtual-table \u003ccode\u003eCursor.Filter\u003c/code\u003e (\u003ccode\u003exFilter\u003c/code\u003e) and \u003ccode\u003eUpdater.Insert\u003c/code\u003e/\u003ccode\u003eUpdate\u003c/code\u003e (\u003ccode\u003exUpdate\u003c/code\u003e) callbacks. A \u003ccode\u003evtab.Module\u003c/code\u003e opts in by implementing the new optional \u003ccode\u003evtab.VolatileArgsOpter\u003c/code\u003e interface (\u003ccode\u003eVolatileArgs() bool\u003c/code\u003e); the flag is read once at module registration and shared by every table created from it. On a vtab call carrying one TEXT and one BLOB argument this removes 2 allocs/op (one \u003ccode\u003elibc.GoString\u003c/code\u003e, one \u003ccode\u003emake([]byte)\u003c/code\u003e) on each of the Filter and Update paths.\u003c/li\u003e\n\u003cli\u003eThe same safety contract as \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/120\"\u003e#120\u003c/a\u003e applies: the views are valid only for the duration of the callback and must not be retained past return or across rows; a callback that needs to keep a value must copy it. Modules that do not implement \u003ccode\u003eVolatileArgsOpter\u003c/code\u003e (the default for all existing modules) are byte-for-byte unchanged, and the flag has no effect on integer, float, time, or NULL arguments.\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/121\"\u003e#121\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/121\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/121\u003c/a\u003e), thanks Ian Chechin!\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e2026-05-10 v1.50.1:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eUpgrade to \u003ca href=\"https://sqlite.org/releaselog/3_53_1.html\"\u003eSQLite 3.53.1\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e2026-04-24 v1.50.0:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eUpgrade to sqlite-vec \u003ca href=\"https://github.com/asg017/sqlite-vec/releases/tag/v0.1.9\"\u003ev0.1.9\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003eIntroduce \u003ccode\u003eColumnInfo\u003c/code\u003e, enabling dynamic query builders and ORMs to retrieve underlying SQLite C-API metadata (\u003ccode\u003eOriginName\u003c/code\u003e, \u003ccode\u003eTableName\u003c/code\u003e, \u003ccode\u003eDatabaseName\u003c/code\u003e, and \u003ccode\u003eDeclType\u003c/code\u003e).\u003c/li\u003e\n\u003cli\u003eThis feature is exposed via the idiomatic \u003ccode\u003edatabase/sql\u003c/code\u003e escape hatch \u003ccode\u003e(*sql.Conn).Raw()\u003c/code\u003e, avoiding custom statement handles and keeping the standard library workflow intact.\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/113\"\u003e#113\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/113\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/113\u003c/a\u003e), thanks Josh Bleecher Snyder!\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e2026-04-17 v1.49.0: Upgrade to \u003ca href=\"https://sqlite.org/releaselog/3_53_0.html\"\u003eSQLite 3.53.0\u003c/a\u003e.\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdded \u003ccode\u003e-DSQLITE_ENABLE_DBPAGE_VTAB\u003c/code\u003e to the transpilation. See \u003ca href=\"https://www.sqlite.org/dbpage.html\"\u003e\u0026quot;The SQLITE_DBPAGE Virtual Table\u0026quot;\u003c/a\u003e for details.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e2026-04-06 v1.48.2:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eFix ABI mapping mismatch in the pre-update hook trampoline that caused silent truncation of large 64-bit RowIDs.\u003c/li\u003e\n\u003cli\u003eEnsure the Go trampoline signature correctly aligns with the public \u003ccode\u003esqlite3_preupdate_hook\u003c/code\u003e C API, preventing data corruption for high-entropy keys (e.g., Snowflake IDs).\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/98\"\u003e#98\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/98\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/98\u003c/a\u003e), thanks Josh Bleecher Snyder!\u003c/li\u003e\n\u003cli\u003eFix the memory allocator used in \u003ccode\u003e(*conn).Deserialize\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003eReplace \u003ccode\u003etls.Alloc\u003c/code\u003e with \u003ccode\u003esqlite3_malloc64\u003c/code\u003e to prevent internal allocator corruption. This ensures the buffer is safely owned by SQLite, which may resize or free it due to the \u003ccode\u003eSQLITE_DESERIALIZE_RESIZEABLE\u003c/code\u003e and \u003ccode\u003eSQLITE_DESERIALIZE_FREEONCLOSE\u003c/code\u003e flags.\u003c/li\u003e\n\u003cli\u003ePrevent a memory leak by properly freeing the allocated buffer if fetching the main database name fails before handing ownership to SQLite.\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/100\"\u003e#100\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/100\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/100\u003c/a\u003e), thanks Josh Bleecher Snyder!\u003c/li\u003e\n\u003cli\u003eFix \u003ccode\u003e(*conn).Deserialize\u003c/code\u003e to explicitly reject \u003ccode\u003enil\u003c/code\u003e or empty byte slices.\u003c/li\u003e\n\u003cli\u003ePrevent silent database disconnection and connection pool corruption caused by SQLite's default behavior when \u003ccode\u003esqlite3_deserialize\u003c/code\u003e receives a 0-length buffer.\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/101\"\u003e#101\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/101\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/101\u003c/a\u003e), thanks Josh Bleecher Snyder!\u003c/li\u003e\n\u003cli\u003eFix \u003ccode\u003ecommitHookTrampoline\u003c/code\u003e and \u003ccode\u003erollbackHookTrampoline\u003c/code\u003e signatures by removing the unused \u003ccode\u003epCsr\u003c/code\u003e parameter.\u003c/li\u003e\n\u003cli\u003eAligns internal hook callbacks accurately with the underlying SQLite C API, cleaning up the code to prevent potential future confusion or bugs.\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/102\"\u003e#102\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/102\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/102\u003c/a\u003e), thanks Josh Bleecher Snyder!\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/a5f439be99fee4478456048b117d3ca84518d5a7\"\u003e\u003ccode\u003ea5f439b\u003c/code\u003e\u003c/a\u003e CHANGELOG.md: fix release tag\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/41e77be50473b810a66c9beaf6d05d042b2a5556\"\u003e\u003ccode\u003e41e77be\u003c/code\u003e\u003c/a\u003e CHANGELOG.md: document \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/121\"\u003e#121\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/827df98d7342db30f09454eaedfe87ef3e7277db\"\u003e\u003ccode\u003e827df98\u003c/code\u003e\u003c/a\u003e gofmt -l -s -w vtab/*.go\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/0d384cb7dcab26840d003cee10f3ae7ae08a883c\"\u003e\u003ccode\u003e0d384cb\u003c/code\u003e\u003c/a\u003e Merge branch 'feat/vtab-volatile-args-opt-in' into 'master'\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/06e06d50e3bec5f79dd4ad60847a6d6405b76721\"\u003e\u003ccode\u003e06e06d5\u003c/code\u003e\u003c/a\u003e extend VolatileArgs opt-in to vtab Filter and Updater Insert/Update\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/2486abd8b22026a1047cdf67a1b090f3bae4210f\"\u003e\u003ccode\u003e2486abd\u003c/code\u003e\u003c/a\u003e HACKING.md, CLAUDE.md: this repo is not auto-tagged, tagging is manual\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/d808a8f1a5d9651553bea0877197fe1c73dac189\"\u003e\u003ccode\u003ed808a8f\u003c/code\u003e\u003c/a\u003e CHANGELOG.md: document \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/120\"\u003e#120\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/fac1cab20834685f75c7201d756608fd71b71824\"\u003e\u003ccode\u003efac1cab\u003c/code\u003e\u003c/a\u003e Merge branch 'feat/volatile-args-opt-in' into 'master'\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/569614c5d4b0187b9b8c632292d3556ce53e1274\"\u003e\u003ccode\u003e569614c\u003c/code\u003e\u003c/a\u003e address review: empty-BLOB shape parity + re-entrancy note\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/905960c9f78c54b85f29718cc34b69088edb1db2\"\u003e\u003ccode\u003e905960c\u003c/code\u003e\u003c/a\u003e add FunctionImpl.VolatileArgs opt-in for zero-copy TEXT/BLOB args\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://gitlab.com/cznic/sqlite/compare/v1.50.1...v1.51.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\n\n[![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=modernc.org/sqlite\u0026package-manager=go_modules\u0026previous-version=1.50.1\u0026new-version=1.51.0)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)\n\nDependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.\n\n[//]: # (dependabot-automerge-start)\n[//]: # (dependabot-automerge-end)\n\n---\n\n\u003cdetails\u003e\n\u003csummary\u003eDependabot commands and options\u003c/summary\u003e\n\u003cbr /\u003e\n\nYou can trigger Dependabot actions by commenting on this PR:\n- `@dependabot rebase` will rebase this PR\n- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it\n- `@dependabot show \u003cdependency name\u003e ignore conditions` will show all of the ignore conditions of the specified dependency\n- `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)\n- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)\n- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)\n\n\n\u003c/details\u003e","html_url":"https://github.com/oratchade/vessel/pull/6","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/oratchade%2Fvessel/issues/6","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/6/packages"},{"uuid":"4556822576","node_id":"PR_kwDOSTWBRc7hDgEt","number":6,"state":"closed","title":"build(deps): bump modernc.org/sqlite from 1.50.0 to 1.51.0","user":"dependabot[bot]","labels":["dependencies","go"],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":"2026-06-07T06:52:45.000Z","author_association":null,"state_reason":null,"created_at":"2026-05-31T06:52:51.000Z","updated_at":"2026-06-07T06:52:47.000Z","time_to_close":604794,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"build(deps)","packages":[{"name":"modernc.org/sqlite","old_version":"1.50.0","new_version":"1.51.0","repository_url":null}],"path":null,"ecosystem":"go"},"body":"Bumps [modernc.org/sqlite](https://gitlab.com/cznic/sqlite) from 1.50.0 to 1.51.0.\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://gitlab.com/cznic/sqlite/blob/master/CHANGELOG.md\"\u003emodernc.org/sqlite's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003eChangelog\u003c/h1\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e2026-05-28 v1.52.0:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdd \u003ccode\u003eBackup.Remaining\u003c/code\u003e and \u003ccode\u003eBackup.PageCount\u003c/code\u003e, thin wrappers around the existing \u003ccode\u003esqlite3_backup_remaining\u003c/code\u003e and \u003ccode\u003esqlite3_backup_pagecount\u003c/code\u003e C symbols. Together they expose the per-\u003ccode\u003eStep\u003c/code\u003e progress counters that the underlying backup object already maintains, enabling progress reporting during online backups without dropping to \u003ccode\u003emodernc.org/sqlite/lib\u003c/code\u003e directly.\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/122\"\u003e#122\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/122\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/122\u003c/a\u003e), thanks Ian Chechin!\u003c/li\u003e\n\u003cli\u003eDrop the redundant second copy in \u003ccode\u003e(*conn).columnText\u003c/code\u003e, the path that backs every \u003ccode\u003eRows.Scan\u003c/code\u003e into a Go \u003ccode\u003estring\u003c/code\u003e for a TEXT column. The value's bytes are still copied once out of SQLite-owned memory into a fresh Go buffer; that buffer is then reinterpreted as the result string with \u003ccode\u003eunsafe.String\u003c/code\u003e rather than copied a second time by the implicit \u003ccode\u003estring([]byte)\u003c/code\u003e conversion. This removes one allocation per TEXT value per row and roughly halves the bytes allocated on that path; on the new \u003ccode\u003eBenchmarkColumnTextScan\u003c/code\u003e cases it is ~13–20% faster for payloads of 256 B and larger, with no measurable change for very short strings. Purely internal: no API or behavioral change, and the returned string never aliases SQLite's buffer.\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/123\"\u003e#123\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/123\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/123\u003c/a\u003e), thanks Ian Chechin!\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e2026-05-28 v1.51.0:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003ePool the \u003ccode\u003e[]driver.Value\u003c/code\u003e slice passed to scalar/aggregate UDF callbacks and to vtab \u003ccode\u003eFilter\u003c/code\u003e/\u003ccode\u003eInsert\u003c/code\u003e/\u003ccode\u003eUpdate\u003c/code\u003e callbacks, eliminating the dominant per-row allocation on UDF-heavy queries. Benchmarks on a 1000-row, 3-arg noop scalar UDF show ~40% fewer bytes/op and ~15% fewer allocs/op.\u003c/li\u003e\n\u003cli\u003eDocument the matching \u0026quot;arguments are not valid past return\u0026quot; contract on \u003ccode\u003evtab.Cursor.Filter\u003c/code\u003e and \u003ccode\u003evtab.Updater.Insert\u003c/code\u003e/\u003ccode\u003eUpdate\u003c/code\u003e, consistent with the existing rule for \u003ccode\u003eFunctionImpl.Scalar\u003c/code\u003e / \u003ccode\u003eAggregateFunction.Step\u003c/code\u003e / \u003ccode\u003eWindowInverse\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003eResolves [GitLab issue \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/226\"\u003e#226\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/issues/226\"\u003ehttps://gitlab.com/cznic/sqlite/-/issues/226\u003c/a\u003e). See [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/114\"\u003e#114\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/114\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/114\u003c/a\u003e), thanks Ian Chechin!\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003eFileControl.FileControlDataVersion\u003c/code\u003e, a wrapper around \u003ccode\u003eSQLITE_FCNTL_DATA_VERSION\u003c/code\u003e for observing pager-cache data-version changes, including those made on the same connection. Useful as a primitive for application-level cache invalidation.\u003c/li\u003e\n\u003cli\u003eExposed via the idiomatic \u003ccode\u003edatabase/sql\u003c/code\u003e escape hatch \u003ccode\u003e(*sql.Conn).Raw()\u003c/code\u003e, consistent with the existing \u003ccode\u003eFileControlPersistWAL\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/115\"\u003e#115\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/115\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/115\u003c/a\u003e), thanks Ian Chechin!\u003c/li\u003e\n\u003cli\u003eFix a regression where in-memory connections (\u003ccode\u003e:memory:\u003c/code\u003e, \u003ccode\u003efile::memory:\u003c/code\u003e, shared-cache memory URIs) were discarded by \u003ccode\u003edatabase/sql\u003c/code\u003e after a context-cancelled query, taking the entire in-memory store with them. The fix for \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/198\"\u003e#198\u003c/a\u003e had added an \u003ccode\u003esqlite3_is_interrupted\u003c/code\u003e check to the connection validator that mistakenly applied to in-memory connections too, re-introducing the bug originally fixed by !74. File-backed connections keep the existing behaviour and are still discarded after an interrupt.\u003c/li\u003e\n\u003cli\u003eResolves [GitLab issue \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/196\"\u003e#196\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/issues/196\"\u003ehttps://gitlab.com/cznic/sqlite/-/issues/196\u003c/a\u003e). See [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/116\"\u003e#116\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/116\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/116\u003c/a\u003e), thanks Ian Chechin!\u003c/li\u003e\n\u003cli\u003eAdd an opt-in \u003ccode\u003eFunctionImpl.VolatileArgs\u003c/code\u003e flag that hands TEXT and BLOB arguments to scalar and aggregate UDF callbacks as zero-copy views (\u003ccode\u003eunsafe.String\u003c/code\u003e/\u003ccode\u003eunsafe.Slice\u003c/code\u003e) over SQLite's own value buffers, eliminating the per-argument \u003ccode\u003elibc.GoString\u003c/code\u003e/\u003ccode\u003emake([]byte)\u003c/code\u003e copy that the \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/226\"\u003e#226\u003c/a\u003e slice-pooling left as the remaining per-row allocation. On the same 1000-row, 3-arg (INTEGER/TEXT/BLOB) noop scalar UDF this removes a further ~35% of allocs/op and ~11% of bytes/op on top of \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/226\"\u003e#226\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003eThe views are valid only for the duration of the callback and must not be retained past return or across rows; a callback that needs to keep a value must copy it. With \u003ccode\u003eVolatileArgs\u003c/code\u003e unset (the default) arguments keep the existing copied, caller-owned semantics, so the flag is fully backward compatible; it has no effect on integer, float, time, or NULL arguments.\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/120\"\u003e#120\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/120\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/120\u003c/a\u003e), thanks Ian Chechin!\u003c/li\u003e\n\u003cli\u003eExtend the opt-in \u003ccode\u003eVolatileArgs\u003c/code\u003e zero-copy TEXT/BLOB argument access from \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/120\"\u003e#120\u003c/a\u003e to the virtual-table \u003ccode\u003eCursor.Filter\u003c/code\u003e (\u003ccode\u003exFilter\u003c/code\u003e) and \u003ccode\u003eUpdater.Insert\u003c/code\u003e/\u003ccode\u003eUpdate\u003c/code\u003e (\u003ccode\u003exUpdate\u003c/code\u003e) callbacks. A \u003ccode\u003evtab.Module\u003c/code\u003e opts in by implementing the new optional \u003ccode\u003evtab.VolatileArgsOpter\u003c/code\u003e interface (\u003ccode\u003eVolatileArgs() bool\u003c/code\u003e); the flag is read once at module registration and shared by every table created from it. On a vtab call carrying one TEXT and one BLOB argument this removes 2 allocs/op (one \u003ccode\u003elibc.GoString\u003c/code\u003e, one \u003ccode\u003emake([]byte)\u003c/code\u003e) on each of the Filter and Update paths.\u003c/li\u003e\n\u003cli\u003eThe same safety contract as \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/120\"\u003e#120\u003c/a\u003e applies: the views are valid only for the duration of the callback and must not be retained past return or across rows; a callback that needs to keep a value must copy it. Modules that do not implement \u003ccode\u003eVolatileArgsOpter\u003c/code\u003e (the default for all existing modules) are byte-for-byte unchanged, and the flag has no effect on integer, float, time, or NULL arguments.\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/121\"\u003e#121\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/121\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/121\u003c/a\u003e), thanks Ian Chechin!\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e2026-05-10 v1.50.1:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eUpgrade to \u003ca href=\"https://sqlite.org/releaselog/3_53_1.html\"\u003eSQLite 3.53.1\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e2026-04-24 v1.50.0:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eUpgrade to sqlite-vec \u003ca href=\"https://github.com/asg017/sqlite-vec/releases/tag/v0.1.9\"\u003ev0.1.9\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003eIntroduce \u003ccode\u003eColumnInfo\u003c/code\u003e, enabling dynamic query builders and ORMs to retrieve underlying SQLite C-API metadata (\u003ccode\u003eOriginName\u003c/code\u003e, \u003ccode\u003eTableName\u003c/code\u003e, \u003ccode\u003eDatabaseName\u003c/code\u003e, and \u003ccode\u003eDeclType\u003c/code\u003e).\u003c/li\u003e\n\u003cli\u003eThis feature is exposed via the idiomatic \u003ccode\u003edatabase/sql\u003c/code\u003e escape hatch \u003ccode\u003e(*sql.Conn).Raw()\u003c/code\u003e, avoiding custom statement handles and keeping the standard library workflow intact.\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/113\"\u003e#113\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/113\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/113\u003c/a\u003e), thanks Josh Bleecher Snyder!\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e2026-04-17 v1.49.0: Upgrade to \u003ca href=\"https://sqlite.org/releaselog/3_53_0.html\"\u003eSQLite 3.53.0\u003c/a\u003e.\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdded \u003ccode\u003e-DSQLITE_ENABLE_DBPAGE_VTAB\u003c/code\u003e to the transpilation. See \u003ca href=\"https://www.sqlite.org/dbpage.html\"\u003e\u0026quot;The SQLITE_DBPAGE Virtual Table\u0026quot;\u003c/a\u003e for details.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e2026-04-06 v1.48.2:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eFix ABI mapping mismatch in the pre-update hook trampoline that caused silent truncation of large 64-bit RowIDs.\u003c/li\u003e\n\u003cli\u003eEnsure the Go trampoline signature correctly aligns with the public \u003ccode\u003esqlite3_preupdate_hook\u003c/code\u003e C API, preventing data corruption for high-entropy keys (e.g., Snowflake IDs).\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/98\"\u003e#98\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/98\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/98\u003c/a\u003e), thanks Josh Bleecher Snyder!\u003c/li\u003e\n\u003cli\u003eFix the memory allocator used in \u003ccode\u003e(*conn).Deserialize\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003eReplace \u003ccode\u003etls.Alloc\u003c/code\u003e with \u003ccode\u003esqlite3_malloc64\u003c/code\u003e to prevent internal allocator corruption. This ensures the buffer is safely owned by SQLite, which may resize or free it due to the \u003ccode\u003eSQLITE_DESERIALIZE_RESIZEABLE\u003c/code\u003e and \u003ccode\u003eSQLITE_DESERIALIZE_FREEONCLOSE\u003c/code\u003e flags.\u003c/li\u003e\n\u003cli\u003ePrevent a memory leak by properly freeing the allocated buffer if fetching the main database name fails before handing ownership to SQLite.\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/100\"\u003e#100\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/100\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/100\u003c/a\u003e), thanks Josh Bleecher Snyder!\u003c/li\u003e\n\u003cli\u003eFix \u003ccode\u003e(*conn).Deserialize\u003c/code\u003e to explicitly reject \u003ccode\u003enil\u003c/code\u003e or empty byte slices.\u003c/li\u003e\n\u003cli\u003ePrevent silent database disconnection and connection pool corruption caused by SQLite's default behavior when \u003ccode\u003esqlite3_deserialize\u003c/code\u003e receives a 0-length buffer.\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/101\"\u003e#101\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/101\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/101\u003c/a\u003e), thanks Josh Bleecher Snyder!\u003c/li\u003e\n\u003cli\u003eFix \u003ccode\u003ecommitHookTrampoline\u003c/code\u003e and \u003ccode\u003erollbackHookTrampoline\u003c/code\u003e signatures by removing the unused \u003ccode\u003epCsr\u003c/code\u003e parameter.\u003c/li\u003e\n\u003cli\u003eAligns internal hook callbacks accurately with the underlying SQLite C API, cleaning up the code to prevent potential future confusion or bugs.\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/102\"\u003e#102\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/102\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/102\u003c/a\u003e), thanks Josh Bleecher Snyder!\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/a5f439be99fee4478456048b117d3ca84518d5a7\"\u003e\u003ccode\u003ea5f439b\u003c/code\u003e\u003c/a\u003e CHANGELOG.md: fix release tag\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/41e77be50473b810a66c9beaf6d05d042b2a5556\"\u003e\u003ccode\u003e41e77be\u003c/code\u003e\u003c/a\u003e CHANGELOG.md: document \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/121\"\u003e#121\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/827df98d7342db30f09454eaedfe87ef3e7277db\"\u003e\u003ccode\u003e827df98\u003c/code\u003e\u003c/a\u003e gofmt -l -s -w vtab/*.go\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/0d384cb7dcab26840d003cee10f3ae7ae08a883c\"\u003e\u003ccode\u003e0d384cb\u003c/code\u003e\u003c/a\u003e Merge branch 'feat/vtab-volatile-args-opt-in' into 'master'\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/06e06d50e3bec5f79dd4ad60847a6d6405b76721\"\u003e\u003ccode\u003e06e06d5\u003c/code\u003e\u003c/a\u003e extend VolatileArgs opt-in to vtab Filter and Updater Insert/Update\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/2486abd8b22026a1047cdf67a1b090f3bae4210f\"\u003e\u003ccode\u003e2486abd\u003c/code\u003e\u003c/a\u003e HACKING.md, CLAUDE.md: this repo is not auto-tagged, tagging is manual\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/d808a8f1a5d9651553bea0877197fe1c73dac189\"\u003e\u003ccode\u003ed808a8f\u003c/code\u003e\u003c/a\u003e CHANGELOG.md: document \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/120\"\u003e#120\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/fac1cab20834685f75c7201d756608fd71b71824\"\u003e\u003ccode\u003efac1cab\u003c/code\u003e\u003c/a\u003e Merge branch 'feat/volatile-args-opt-in' into 'master'\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/569614c5d4b0187b9b8c632292d3556ce53e1274\"\u003e\u003ccode\u003e569614c\u003c/code\u003e\u003c/a\u003e address review: empty-BLOB shape parity + re-entrancy note\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/905960c9f78c54b85f29718cc34b69088edb1db2\"\u003e\u003ccode\u003e905960c\u003c/code\u003e\u003c/a\u003e add FunctionImpl.VolatileArgs opt-in for zero-copy TEXT/BLOB args\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://gitlab.com/cznic/sqlite/compare/v1.50.0...v1.51.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\n\n[![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=modernc.org/sqlite\u0026package-manager=go_modules\u0026previous-version=1.50.0\u0026new-version=1.51.0)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)\n\nDependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.\n\n[//]: # (dependabot-automerge-start)\n[//]: # (dependabot-automerge-end)\n\n---\n\n\u003cdetails\u003e\n\u003csummary\u003eDependabot commands and options\u003c/summary\u003e\n\u003cbr /\u003e\n\nYou can trigger Dependabot actions by commenting on this PR:\n- `@dependabot rebase` will rebase this PR\n- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it\n- `@dependabot show \u003cdependency name\u003e ignore conditions` will show all of the ignore conditions of the specified dependency\n- `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)\n- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)\n- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)\n\n\n\u003c/details\u003e","html_url":"https://github.com/callum-baillie/drive-agent/pull/6","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/callum-baillie%2Fdrive-agent/issues/6","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/6/packages"},{"uuid":"4556430796","node_id":"PR_kwDOR6L7xM7hCVsD","number":236,"state":"open","title":"chore(deps): bump modernc.org/sqlite from 1.50.1 to 1.51.0","user":"dependabot[bot]","labels":["dependencies","go"],"assignees":[],"locked":false,"comments_count":2,"pull_request":true,"closed_at":null,"author_association":null,"state_reason":null,"created_at":"2026-05-31T03:22:46.000Z","updated_at":"2026-05-31T03:23:48.000Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"chore(deps)","packages":[{"name":"modernc.org/sqlite","old_version":"1.50.1","new_version":"1.51.0","repository_url":null}],"path":null,"ecosystem":"go"},"body":"Bumps [modernc.org/sqlite](https://gitlab.com/cznic/sqlite) from 1.50.1 to 1.51.0.\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://gitlab.com/cznic/sqlite/blob/master/CHANGELOG.md\"\u003emodernc.org/sqlite's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003eChangelog\u003c/h1\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e2026-05-28 v1.52.0:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdd \u003ccode\u003eBackup.Remaining\u003c/code\u003e and \u003ccode\u003eBackup.PageCount\u003c/code\u003e, thin wrappers around the existing \u003ccode\u003esqlite3_backup_remaining\u003c/code\u003e and \u003ccode\u003esqlite3_backup_pagecount\u003c/code\u003e C symbols. Together they expose the per-\u003ccode\u003eStep\u003c/code\u003e progress counters that the underlying backup object already maintains, enabling progress reporting during online backups without dropping to \u003ccode\u003emodernc.org/sqlite/lib\u003c/code\u003e directly.\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/122\"\u003e#122\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/122\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/122\u003c/a\u003e), thanks Ian Chechin!\u003c/li\u003e\n\u003cli\u003eDrop the redundant second copy in \u003ccode\u003e(*conn).columnText\u003c/code\u003e, the path that backs every \u003ccode\u003eRows.Scan\u003c/code\u003e into a Go \u003ccode\u003estring\u003c/code\u003e for a TEXT column. The value's bytes are still copied once out of SQLite-owned memory into a fresh Go buffer; that buffer is then reinterpreted as the result string with \u003ccode\u003eunsafe.String\u003c/code\u003e rather than copied a second time by the implicit \u003ccode\u003estring([]byte)\u003c/code\u003e conversion. This removes one allocation per TEXT value per row and roughly halves the bytes allocated on that path; on the new \u003ccode\u003eBenchmarkColumnTextScan\u003c/code\u003e cases it is ~13–20% faster for payloads of 256 B and larger, with no measurable change for very short strings. Purely internal: no API or behavioral change, and the returned string never aliases SQLite's buffer.\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/123\"\u003e#123\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/123\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/123\u003c/a\u003e), thanks Ian Chechin!\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e2026-05-28 v1.51.0:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003ePool the \u003ccode\u003e[]driver.Value\u003c/code\u003e slice passed to scalar/aggregate UDF callbacks and to vtab \u003ccode\u003eFilter\u003c/code\u003e/\u003ccode\u003eInsert\u003c/code\u003e/\u003ccode\u003eUpdate\u003c/code\u003e callbacks, eliminating the dominant per-row allocation on UDF-heavy queries. Benchmarks on a 1000-row, 3-arg noop scalar UDF show ~40% fewer bytes/op and ~15% fewer allocs/op.\u003c/li\u003e\n\u003cli\u003eDocument the matching \u0026quot;arguments are not valid past return\u0026quot; contract on \u003ccode\u003evtab.Cursor.Filter\u003c/code\u003e and \u003ccode\u003evtab.Updater.Insert\u003c/code\u003e/\u003ccode\u003eUpdate\u003c/code\u003e, consistent with the existing rule for \u003ccode\u003eFunctionImpl.Scalar\u003c/code\u003e / \u003ccode\u003eAggregateFunction.Step\u003c/code\u003e / \u003ccode\u003eWindowInverse\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003eResolves [GitLab issue \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/226\"\u003e#226\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/issues/226\"\u003ehttps://gitlab.com/cznic/sqlite/-/issues/226\u003c/a\u003e). See [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/114\"\u003e#114\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/114\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/114\u003c/a\u003e), thanks Ian Chechin!\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003eFileControl.FileControlDataVersion\u003c/code\u003e, a wrapper around \u003ccode\u003eSQLITE_FCNTL_DATA_VERSION\u003c/code\u003e for observing pager-cache data-version changes, including those made on the same connection. Useful as a primitive for application-level cache invalidation.\u003c/li\u003e\n\u003cli\u003eExposed via the idiomatic \u003ccode\u003edatabase/sql\u003c/code\u003e escape hatch \u003ccode\u003e(*sql.Conn).Raw()\u003c/code\u003e, consistent with the existing \u003ccode\u003eFileControlPersistWAL\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/115\"\u003e#115\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/115\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/115\u003c/a\u003e), thanks Ian Chechin!\u003c/li\u003e\n\u003cli\u003eFix a regression where in-memory connections (\u003ccode\u003e:memory:\u003c/code\u003e, \u003ccode\u003efile::memory:\u003c/code\u003e, shared-cache memory URIs) were discarded by \u003ccode\u003edatabase/sql\u003c/code\u003e after a context-cancelled query, taking the entire in-memory store with them. The fix for \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/198\"\u003e#198\u003c/a\u003e had added an \u003ccode\u003esqlite3_is_interrupted\u003c/code\u003e check to the connection validator that mistakenly applied to in-memory connections too, re-introducing the bug originally fixed by !74. File-backed connections keep the existing behaviour and are still discarded after an interrupt.\u003c/li\u003e\n\u003cli\u003eResolves [GitLab issue \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/196\"\u003e#196\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/issues/196\"\u003ehttps://gitlab.com/cznic/sqlite/-/issues/196\u003c/a\u003e). See [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/116\"\u003e#116\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/116\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/116\u003c/a\u003e), thanks Ian Chechin!\u003c/li\u003e\n\u003cli\u003eAdd an opt-in \u003ccode\u003eFunctionImpl.VolatileArgs\u003c/code\u003e flag that hands TEXT and BLOB arguments to scalar and aggregate UDF callbacks as zero-copy views (\u003ccode\u003eunsafe.String\u003c/code\u003e/\u003ccode\u003eunsafe.Slice\u003c/code\u003e) over SQLite's own value buffers, eliminating the per-argument \u003ccode\u003elibc.GoString\u003c/code\u003e/\u003ccode\u003emake([]byte)\u003c/code\u003e copy that the \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/226\"\u003e#226\u003c/a\u003e slice-pooling left as the remaining per-row allocation. On the same 1000-row, 3-arg (INTEGER/TEXT/BLOB) noop scalar UDF this removes a further ~35% of allocs/op and ~11% of bytes/op on top of \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/226\"\u003e#226\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003eThe views are valid only for the duration of the callback and must not be retained past return or across rows; a callback that needs to keep a value must copy it. With \u003ccode\u003eVolatileArgs\u003c/code\u003e unset (the default) arguments keep the existing copied, caller-owned semantics, so the flag is fully backward compatible; it has no effect on integer, float, time, or NULL arguments.\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/120\"\u003e#120\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/120\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/120\u003c/a\u003e), thanks Ian Chechin!\u003c/li\u003e\n\u003cli\u003eExtend the opt-in \u003ccode\u003eVolatileArgs\u003c/code\u003e zero-copy TEXT/BLOB argument access from \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/120\"\u003e#120\u003c/a\u003e to the virtual-table \u003ccode\u003eCursor.Filter\u003c/code\u003e (\u003ccode\u003exFilter\u003c/code\u003e) and \u003ccode\u003eUpdater.Insert\u003c/code\u003e/\u003ccode\u003eUpdate\u003c/code\u003e (\u003ccode\u003exUpdate\u003c/code\u003e) callbacks. A \u003ccode\u003evtab.Module\u003c/code\u003e opts in by implementing the new optional \u003ccode\u003evtab.VolatileArgsOpter\u003c/code\u003e interface (\u003ccode\u003eVolatileArgs() bool\u003c/code\u003e); the flag is read once at module registration and shared by every table created from it. On a vtab call carrying one TEXT and one BLOB argument this removes 2 allocs/op (one \u003ccode\u003elibc.GoString\u003c/code\u003e, one \u003ccode\u003emake([]byte)\u003c/code\u003e) on each of the Filter and Update paths.\u003c/li\u003e\n\u003cli\u003eThe same safety contract as \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/120\"\u003e#120\u003c/a\u003e applies: the views are valid only for the duration of the callback and must not be retained past return or across rows; a callback that needs to keep a value must copy it. Modules that do not implement \u003ccode\u003eVolatileArgsOpter\u003c/code\u003e (the default for all existing modules) are byte-for-byte unchanged, and the flag has no effect on integer, float, time, or NULL arguments.\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/121\"\u003e#121\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/121\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/121\u003c/a\u003e), thanks Ian Chechin!\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e2026-05-10 v1.50.1:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eUpgrade to \u003ca href=\"https://sqlite.org/releaselog/3_53_1.html\"\u003eSQLite 3.53.1\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e2026-04-24 v1.50.0:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eUpgrade to sqlite-vec \u003ca href=\"https://github.com/asg017/sqlite-vec/releases/tag/v0.1.9\"\u003ev0.1.9\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003eIntroduce \u003ccode\u003eColumnInfo\u003c/code\u003e, enabling dynamic query builders and ORMs to retrieve underlying SQLite C-API metadata (\u003ccode\u003eOriginName\u003c/code\u003e, \u003ccode\u003eTableName\u003c/code\u003e, \u003ccode\u003eDatabaseName\u003c/code\u003e, and \u003ccode\u003eDeclType\u003c/code\u003e).\u003c/li\u003e\n\u003cli\u003eThis feature is exposed via the idiomatic \u003ccode\u003edatabase/sql\u003c/code\u003e escape hatch \u003ccode\u003e(*sql.Conn).Raw()\u003c/code\u003e, avoiding custom statement handles and keeping the standard library workflow intact.\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/113\"\u003e#113\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/113\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/113\u003c/a\u003e), thanks Josh Bleecher Snyder!\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e2026-04-17 v1.49.0: Upgrade to \u003ca href=\"https://sqlite.org/releaselog/3_53_0.html\"\u003eSQLite 3.53.0\u003c/a\u003e.\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdded \u003ccode\u003e-DSQLITE_ENABLE_DBPAGE_VTAB\u003c/code\u003e to the transpilation. See \u003ca href=\"https://www.sqlite.org/dbpage.html\"\u003e\u0026quot;The SQLITE_DBPAGE Virtual Table\u0026quot;\u003c/a\u003e for details.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e2026-04-06 v1.48.2:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eFix ABI mapping mismatch in the pre-update hook trampoline that caused silent truncation of large 64-bit RowIDs.\u003c/li\u003e\n\u003cli\u003eEnsure the Go trampoline signature correctly aligns with the public \u003ccode\u003esqlite3_preupdate_hook\u003c/code\u003e C API, preventing data corruption for high-entropy keys (e.g., Snowflake IDs).\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/98\"\u003e#98\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/98\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/98\u003c/a\u003e), thanks Josh Bleecher Snyder!\u003c/li\u003e\n\u003cli\u003eFix the memory allocator used in \u003ccode\u003e(*conn).Deserialize\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003eReplace \u003ccode\u003etls.Alloc\u003c/code\u003e with \u003ccode\u003esqlite3_malloc64\u003c/code\u003e to prevent internal allocator corruption. This ensures the buffer is safely owned by SQLite, which may resize or free it due to the \u003ccode\u003eSQLITE_DESERIALIZE_RESIZEABLE\u003c/code\u003e and \u003ccode\u003eSQLITE_DESERIALIZE_FREEONCLOSE\u003c/code\u003e flags.\u003c/li\u003e\n\u003cli\u003ePrevent a memory leak by properly freeing the allocated buffer if fetching the main database name fails before handing ownership to SQLite.\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/100\"\u003e#100\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/100\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/100\u003c/a\u003e), thanks Josh Bleecher Snyder!\u003c/li\u003e\n\u003cli\u003eFix \u003ccode\u003e(*conn).Deserialize\u003c/code\u003e to explicitly reject \u003ccode\u003enil\u003c/code\u003e or empty byte slices.\u003c/li\u003e\n\u003cli\u003ePrevent silent database disconnection and connection pool corruption caused by SQLite's default behavior when \u003ccode\u003esqlite3_deserialize\u003c/code\u003e receives a 0-length buffer.\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/101\"\u003e#101\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/101\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/101\u003c/a\u003e), thanks Josh Bleecher Snyder!\u003c/li\u003e\n\u003cli\u003eFix \u003ccode\u003ecommitHookTrampoline\u003c/code\u003e and \u003ccode\u003erollbackHookTrampoline\u003c/code\u003e signatures by removing the unused \u003ccode\u003epCsr\u003c/code\u003e parameter.\u003c/li\u003e\n\u003cli\u003eAligns internal hook callbacks accurately with the underlying SQLite C API, cleaning up the code to prevent potential future confusion or bugs.\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/102\"\u003e#102\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/102\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/102\u003c/a\u003e), thanks Josh Bleecher Snyder!\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/a5f439be99fee4478456048b117d3ca84518d5a7\"\u003e\u003ccode\u003ea5f439b\u003c/code\u003e\u003c/a\u003e CHANGELOG.md: fix release tag\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/41e77be50473b810a66c9beaf6d05d042b2a5556\"\u003e\u003ccode\u003e41e77be\u003c/code\u003e\u003c/a\u003e CHANGELOG.md: document \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/121\"\u003e#121\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/827df98d7342db30f09454eaedfe87ef3e7277db\"\u003e\u003ccode\u003e827df98\u003c/code\u003e\u003c/a\u003e gofmt -l -s -w vtab/*.go\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/0d384cb7dcab26840d003cee10f3ae7ae08a883c\"\u003e\u003ccode\u003e0d384cb\u003c/code\u003e\u003c/a\u003e Merge branch 'feat/vtab-volatile-args-opt-in' into 'master'\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/06e06d50e3bec5f79dd4ad60847a6d6405b76721\"\u003e\u003ccode\u003e06e06d5\u003c/code\u003e\u003c/a\u003e extend VolatileArgs opt-in to vtab Filter and Updater Insert/Update\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/2486abd8b22026a1047cdf67a1b090f3bae4210f\"\u003e\u003ccode\u003e2486abd\u003c/code\u003e\u003c/a\u003e HACKING.md, CLAUDE.md: this repo is not auto-tagged, tagging is manual\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/d808a8f1a5d9651553bea0877197fe1c73dac189\"\u003e\u003ccode\u003ed808a8f\u003c/code\u003e\u003c/a\u003e CHANGELOG.md: document \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/120\"\u003e#120\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/fac1cab20834685f75c7201d756608fd71b71824\"\u003e\u003ccode\u003efac1cab\u003c/code\u003e\u003c/a\u003e Merge branch 'feat/volatile-args-opt-in' into 'master'\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/569614c5d4b0187b9b8c632292d3556ce53e1274\"\u003e\u003ccode\u003e569614c\u003c/code\u003e\u003c/a\u003e address review: empty-BLOB shape parity + re-entrancy note\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/905960c9f78c54b85f29718cc34b69088edb1db2\"\u003e\u003ccode\u003e905960c\u003c/code\u003e\u003c/a\u003e add FunctionImpl.VolatileArgs opt-in for zero-copy TEXT/BLOB args\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://gitlab.com/cznic/sqlite/compare/v1.50.1...v1.51.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\n\n[![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=modernc.org/sqlite\u0026package-manager=go_modules\u0026previous-version=1.50.1\u0026new-version=1.51.0)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)\n\nDependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.\n\n[//]: # (dependabot-automerge-start)\n[//]: # (dependabot-automerge-end)\n\n---\n\n\u003cdetails\u003e\n\u003csummary\u003eDependabot commands and options\u003c/summary\u003e\n\u003cbr /\u003e\n\nYou can trigger Dependabot actions by commenting on this PR:\n- `@dependabot rebase` will rebase this PR\n- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it\n- `@dependabot show \u003cdependency name\u003e ignore conditions` will show all of the ignore conditions of the specified dependency\n- `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)\n- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)\n- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)\n\n\n\u003c/details\u003e","html_url":"https://github.com/kontext-security/kontext-cli/pull/236","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/kontext-security%2Fkontext-cli/issues/236","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/236/packages"},{"uuid":"4552441423","node_id":"PR_kwDOR48MTc7g2Ofr","number":115,"state":"open","title":"deps: bump modernc.org/sqlite from 1.50.1 to 1.51.0","user":"dependabot[bot]","labels":["dependencies","go"],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":null,"author_association":null,"state_reason":null,"created_at":"2026-05-30T00:21:03.000Z","updated_at":"2026-05-30T00:21:34.000Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"deps","packages":[{"name":"modernc.org/sqlite","old_version":"1.50.1","new_version":"1.51.0","repository_url":null}],"path":null,"ecosystem":"go"},"body":"Bumps [modernc.org/sqlite](https://gitlab.com/cznic/sqlite) from 1.50.1 to 1.51.0.\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://gitlab.com/cznic/sqlite/blob/master/CHANGELOG.md\"\u003emodernc.org/sqlite's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003eChangelog\u003c/h1\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e2026-05-28 v1.52.0:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdd \u003ccode\u003eBackup.Remaining\u003c/code\u003e and \u003ccode\u003eBackup.PageCount\u003c/code\u003e, thin wrappers around the existing \u003ccode\u003esqlite3_backup_remaining\u003c/code\u003e and \u003ccode\u003esqlite3_backup_pagecount\u003c/code\u003e C symbols. Together they expose the per-\u003ccode\u003eStep\u003c/code\u003e progress counters that the underlying backup object already maintains, enabling progress reporting during online backups without dropping to \u003ccode\u003emodernc.org/sqlite/lib\u003c/code\u003e directly.\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/122\"\u003e#122\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/122\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/122\u003c/a\u003e), thanks Ian Chechin!\u003c/li\u003e\n\u003cli\u003eDrop the redundant second copy in \u003ccode\u003e(*conn).columnText\u003c/code\u003e, the path that backs every \u003ccode\u003eRows.Scan\u003c/code\u003e into a Go \u003ccode\u003estring\u003c/code\u003e for a TEXT column. The value's bytes are still copied once out of SQLite-owned memory into a fresh Go buffer; that buffer is then reinterpreted as the result string with \u003ccode\u003eunsafe.String\u003c/code\u003e rather than copied a second time by the implicit \u003ccode\u003estring([]byte)\u003c/code\u003e conversion. This removes one allocation per TEXT value per row and roughly halves the bytes allocated on that path; on the new \u003ccode\u003eBenchmarkColumnTextScan\u003c/code\u003e cases it is ~13–20% faster for payloads of 256 B and larger, with no measurable change for very short strings. Purely internal: no API or behavioral change, and the returned string never aliases SQLite's buffer.\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/123\"\u003e#123\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/123\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/123\u003c/a\u003e), thanks Ian Chechin!\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e2026-05-28 v1.51.0:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003ePool the \u003ccode\u003e[]driver.Value\u003c/code\u003e slice passed to scalar/aggregate UDF callbacks and to vtab \u003ccode\u003eFilter\u003c/code\u003e/\u003ccode\u003eInsert\u003c/code\u003e/\u003ccode\u003eUpdate\u003c/code\u003e callbacks, eliminating the dominant per-row allocation on UDF-heavy queries. Benchmarks on a 1000-row, 3-arg noop scalar UDF show ~40% fewer bytes/op and ~15% fewer allocs/op.\u003c/li\u003e\n\u003cli\u003eDocument the matching \u0026quot;arguments are not valid past return\u0026quot; contract on \u003ccode\u003evtab.Cursor.Filter\u003c/code\u003e and \u003ccode\u003evtab.Updater.Insert\u003c/code\u003e/\u003ccode\u003eUpdate\u003c/code\u003e, consistent with the existing rule for \u003ccode\u003eFunctionImpl.Scalar\u003c/code\u003e / \u003ccode\u003eAggregateFunction.Step\u003c/code\u003e / \u003ccode\u003eWindowInverse\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003eResolves [GitLab issue \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/226\"\u003e#226\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/issues/226\"\u003ehttps://gitlab.com/cznic/sqlite/-/issues/226\u003c/a\u003e). See [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/114\"\u003e#114\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/114\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/114\u003c/a\u003e), thanks Ian Chechin!\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003eFileControl.FileControlDataVersion\u003c/code\u003e, a wrapper around \u003ccode\u003eSQLITE_FCNTL_DATA_VERSION\u003c/code\u003e for observing pager-cache data-version changes, including those made on the same connection. Useful as a primitive for application-level cache invalidation.\u003c/li\u003e\n\u003cli\u003eExposed via the idiomatic \u003ccode\u003edatabase/sql\u003c/code\u003e escape hatch \u003ccode\u003e(*sql.Conn).Raw()\u003c/code\u003e, consistent with the existing \u003ccode\u003eFileControlPersistWAL\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/115\"\u003e#115\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/115\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/115\u003c/a\u003e), thanks Ian Chechin!\u003c/li\u003e\n\u003cli\u003eFix a regression where in-memory connections (\u003ccode\u003e:memory:\u003c/code\u003e, \u003ccode\u003efile::memory:\u003c/code\u003e, shared-cache memory URIs) were discarded by \u003ccode\u003edatabase/sql\u003c/code\u003e after a context-cancelled query, taking the entire in-memory store with them. The fix for \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/198\"\u003e#198\u003c/a\u003e had added an \u003ccode\u003esqlite3_is_interrupted\u003c/code\u003e check to the connection validator that mistakenly applied to in-memory connections too, re-introducing the bug originally fixed by !74. File-backed connections keep the existing behaviour and are still discarded after an interrupt.\u003c/li\u003e\n\u003cli\u003eResolves [GitLab issue \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/196\"\u003e#196\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/issues/196\"\u003ehttps://gitlab.com/cznic/sqlite/-/issues/196\u003c/a\u003e). See [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/116\"\u003e#116\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/116\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/116\u003c/a\u003e), thanks Ian Chechin!\u003c/li\u003e\n\u003cli\u003eAdd an opt-in \u003ccode\u003eFunctionImpl.VolatileArgs\u003c/code\u003e flag that hands TEXT and BLOB arguments to scalar and aggregate UDF callbacks as zero-copy views (\u003ccode\u003eunsafe.String\u003c/code\u003e/\u003ccode\u003eunsafe.Slice\u003c/code\u003e) over SQLite's own value buffers, eliminating the per-argument \u003ccode\u003elibc.GoString\u003c/code\u003e/\u003ccode\u003emake([]byte)\u003c/code\u003e copy that the \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/226\"\u003e#226\u003c/a\u003e slice-pooling left as the remaining per-row allocation. On the same 1000-row, 3-arg (INTEGER/TEXT/BLOB) noop scalar UDF this removes a further ~35% of allocs/op and ~11% of bytes/op on top of \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/226\"\u003e#226\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003eThe views are valid only for the duration of the callback and must not be retained past return or across rows; a callback that needs to keep a value must copy it. With \u003ccode\u003eVolatileArgs\u003c/code\u003e unset (the default) arguments keep the existing copied, caller-owned semantics, so the flag is fully backward compatible; it has no effect on integer, float, time, or NULL arguments.\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/120\"\u003e#120\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/120\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/120\u003c/a\u003e), thanks Ian Chechin!\u003c/li\u003e\n\u003cli\u003eExtend the opt-in \u003ccode\u003eVolatileArgs\u003c/code\u003e zero-copy TEXT/BLOB argument access from \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/120\"\u003e#120\u003c/a\u003e to the virtual-table \u003ccode\u003eCursor.Filter\u003c/code\u003e (\u003ccode\u003exFilter\u003c/code\u003e) and \u003ccode\u003eUpdater.Insert\u003c/code\u003e/\u003ccode\u003eUpdate\u003c/code\u003e (\u003ccode\u003exUpdate\u003c/code\u003e) callbacks. A \u003ccode\u003evtab.Module\u003c/code\u003e opts in by implementing the new optional \u003ccode\u003evtab.VolatileArgsOpter\u003c/code\u003e interface (\u003ccode\u003eVolatileArgs() bool\u003c/code\u003e); the flag is read once at module registration and shared by every table created from it. On a vtab call carrying one TEXT and one BLOB argument this removes 2 allocs/op (one \u003ccode\u003elibc.GoString\u003c/code\u003e, one \u003ccode\u003emake([]byte)\u003c/code\u003e) on each of the Filter and Update paths.\u003c/li\u003e\n\u003cli\u003eThe same safety contract as \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/120\"\u003e#120\u003c/a\u003e applies: the views are valid only for the duration of the callback and must not be retained past return or across rows; a callback that needs to keep a value must copy it. Modules that do not implement \u003ccode\u003eVolatileArgsOpter\u003c/code\u003e (the default for all existing modules) are byte-for-byte unchanged, and the flag has no effect on integer, float, time, or NULL arguments.\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/121\"\u003e#121\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/121\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/121\u003c/a\u003e), thanks Ian Chechin!\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e2026-05-10 v1.50.1:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eUpgrade to \u003ca href=\"https://sqlite.org/releaselog/3_53_1.html\"\u003eSQLite 3.53.1\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e2026-04-24 v1.50.0:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eUpgrade to sqlite-vec \u003ca href=\"https://github.com/asg017/sqlite-vec/releases/tag/v0.1.9\"\u003ev0.1.9\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003eIntroduce \u003ccode\u003eColumnInfo\u003c/code\u003e, enabling dynamic query builders and ORMs to retrieve underlying SQLite C-API metadata (\u003ccode\u003eOriginName\u003c/code\u003e, \u003ccode\u003eTableName\u003c/code\u003e, \u003ccode\u003eDatabaseName\u003c/code\u003e, and \u003ccode\u003eDeclType\u003c/code\u003e).\u003c/li\u003e\n\u003cli\u003eThis feature is exposed via the idiomatic \u003ccode\u003edatabase/sql\u003c/code\u003e escape hatch \u003ccode\u003e(*sql.Conn).Raw()\u003c/code\u003e, avoiding custom statement handles and keeping the standard library workflow intact.\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/113\"\u003e#113\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/113\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/113\u003c/a\u003e), thanks Josh Bleecher Snyder!\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e2026-04-17 v1.49.0: Upgrade to \u003ca href=\"https://sqlite.org/releaselog/3_53_0.html\"\u003eSQLite 3.53.0\u003c/a\u003e.\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdded \u003ccode\u003e-DSQLITE_ENABLE_DBPAGE_VTAB\u003c/code\u003e to the transpilation. See \u003ca href=\"https://www.sqlite.org/dbpage.html\"\u003e\u0026quot;The SQLITE_DBPAGE Virtual Table\u0026quot;\u003c/a\u003e for details.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e2026-04-06 v1.48.2:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eFix ABI mapping mismatch in the pre-update hook trampoline that caused silent truncation of large 64-bit RowIDs.\u003c/li\u003e\n\u003cli\u003eEnsure the Go trampoline signature correctly aligns with the public \u003ccode\u003esqlite3_preupdate_hook\u003c/code\u003e C API, preventing data corruption for high-entropy keys (e.g., Snowflake IDs).\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/98\"\u003e#98\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/98\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/98\u003c/a\u003e), thanks Josh Bleecher Snyder!\u003c/li\u003e\n\u003cli\u003eFix the memory allocator used in \u003ccode\u003e(*conn).Deserialize\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003eReplace \u003ccode\u003etls.Alloc\u003c/code\u003e with \u003ccode\u003esqlite3_malloc64\u003c/code\u003e to prevent internal allocator corruption. This ensures the buffer is safely owned by SQLite, which may resize or free it due to the \u003ccode\u003eSQLITE_DESERIALIZE_RESIZEABLE\u003c/code\u003e and \u003ccode\u003eSQLITE_DESERIALIZE_FREEONCLOSE\u003c/code\u003e flags.\u003c/li\u003e\n\u003cli\u003ePrevent a memory leak by properly freeing the allocated buffer if fetching the main database name fails before handing ownership to SQLite.\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/100\"\u003e#100\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/100\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/100\u003c/a\u003e), thanks Josh Bleecher Snyder!\u003c/li\u003e\n\u003cli\u003eFix \u003ccode\u003e(*conn).Deserialize\u003c/code\u003e to explicitly reject \u003ccode\u003enil\u003c/code\u003e or empty byte slices.\u003c/li\u003e\n\u003cli\u003ePrevent silent database disconnection and connection pool corruption caused by SQLite's default behavior when \u003ccode\u003esqlite3_deserialize\u003c/code\u003e receives a 0-length buffer.\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/101\"\u003e#101\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/101\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/101\u003c/a\u003e), thanks Josh Bleecher Snyder!\u003c/li\u003e\n\u003cli\u003eFix \u003ccode\u003ecommitHookTrampoline\u003c/code\u003e and \u003ccode\u003erollbackHookTrampoline\u003c/code\u003e signatures by removing the unused \u003ccode\u003epCsr\u003c/code\u003e parameter.\u003c/li\u003e\n\u003cli\u003eAligns internal hook callbacks accurately with the underlying SQLite C API, cleaning up the code to prevent potential future confusion or bugs.\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/102\"\u003e#102\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/102\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/102\u003c/a\u003e), thanks Josh Bleecher Snyder!\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/a5f439be99fee4478456048b117d3ca84518d5a7\"\u003e\u003ccode\u003ea5f439b\u003c/code\u003e\u003c/a\u003e CHANGELOG.md: fix release tag\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/41e77be50473b810a66c9beaf6d05d042b2a5556\"\u003e\u003ccode\u003e41e77be\u003c/code\u003e\u003c/a\u003e CHANGELOG.md: document \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/121\"\u003e#121\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/827df98d7342db30f09454eaedfe87ef3e7277db\"\u003e\u003ccode\u003e827df98\u003c/code\u003e\u003c/a\u003e gofmt -l -s -w vtab/*.go\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/0d384cb7dcab26840d003cee10f3ae7ae08a883c\"\u003e\u003ccode\u003e0d384cb\u003c/code\u003e\u003c/a\u003e Merge branch 'feat/vtab-volatile-args-opt-in' into 'master'\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/06e06d50e3bec5f79dd4ad60847a6d6405b76721\"\u003e\u003ccode\u003e06e06d5\u003c/code\u003e\u003c/a\u003e extend VolatileArgs opt-in to vtab Filter and Updater Insert/Update\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/2486abd8b22026a1047cdf67a1b090f3bae4210f\"\u003e\u003ccode\u003e2486abd\u003c/code\u003e\u003c/a\u003e HACKING.md, CLAUDE.md: this repo is not auto-tagged, tagging is manual\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/d808a8f1a5d9651553bea0877197fe1c73dac189\"\u003e\u003ccode\u003ed808a8f\u003c/code\u003e\u003c/a\u003e CHANGELOG.md: document \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/120\"\u003e#120\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/fac1cab20834685f75c7201d756608fd71b71824\"\u003e\u003ccode\u003efac1cab\u003c/code\u003e\u003c/a\u003e Merge branch 'feat/volatile-args-opt-in' into 'master'\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/569614c5d4b0187b9b8c632292d3556ce53e1274\"\u003e\u003ccode\u003e569614c\u003c/code\u003e\u003c/a\u003e address review: empty-BLOB shape parity + re-entrancy note\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/905960c9f78c54b85f29718cc34b69088edb1db2\"\u003e\u003ccode\u003e905960c\u003c/code\u003e\u003c/a\u003e add FunctionImpl.VolatileArgs opt-in for zero-copy TEXT/BLOB args\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://gitlab.com/cznic/sqlite/compare/v1.50.1...v1.51.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\n\n[![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=modernc.org/sqlite\u0026package-manager=go_modules\u0026previous-version=1.50.1\u0026new-version=1.51.0)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)\n\nDependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.\n\n[//]: # (dependabot-automerge-start)\n[//]: # (dependabot-automerge-end)\n\n---\n\n\u003cdetails\u003e\n\u003csummary\u003eDependabot commands and options\u003c/summary\u003e\n\u003cbr /\u003e\n\nYou can trigger Dependabot actions by commenting on this PR:\n- `@dependabot rebase` will rebase this PR\n- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it\n- `@dependabot show \u003cdependency name\u003e ignore conditions` will show all of the ignore conditions of the specified dependency\n- `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)\n- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)\n- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)\n\n\n\u003c/details\u003e","html_url":"https://github.com/LISSConsulting/LISSTech.DrainCtl/pull/115","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/LISSConsulting%2FLISSTech.DrainCtl/issues/115","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/115/packages"},{"uuid":"4547045437","node_id":"PR_kwDONsZxpM7gkinD","number":911,"state":"closed","title":"chore(deps): bump the minor-patch group across 1 directory with 3 updates","user":"dependabot[bot]","labels":["dependencies","go","size:XS"],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":"2026-06-03T23:21:09.000Z","author_association":null,"state_reason":null,"created_at":"2026-05-29T08:40:18.000Z","updated_at":"2026-06-03T23:21:11.000Z","time_to_close":484851,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"chore(deps): bump","group_name":"minor-patch","update_count":3,"packages":[{"name":"golang.org/x/tools","old_version":"0.44.0","new_version":"0.45.0","repository_url":"https://github.com/golang/tools"},{"name":"modernc.org/sqlite","old_version":"1.50.1","new_version":"1.51.0"},{"name":"tailscale.com","old_version":"1.98.3","new_version":"1.98.5","repository_url":"https://github.com/tailscale/tailscale"}],"path":null,"ecosystem":"go"},"body":"Bumps the minor-patch group with 3 updates in the / directory: [golang.org/x/tools](https://github.com/golang/tools), [modernc.org/sqlite](https://gitlab.com/cznic/sqlite) and [tailscale.com](https://github.com/tailscale/tailscale).\n\nUpdates `golang.org/x/tools` from 0.44.0 to 0.45.0\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/golang/tools/commit/2aabba0e4be44cc8f254ced118a7156d04bbc9f3\"\u003e\u003ccode\u003e2aabba0\u003c/code\u003e\u003c/a\u003e go.mod: update golang.org/x dependencies\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/golang/tools/commit/ef989b3f45baff2849e87f4a70d9a189be5a6959\"\u003e\u003ccode\u003eef989b3\u003c/code\u003e\u003c/a\u003e go/types/internal/play: show Info.Instances[Ident]\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/golang/tools/commit/21d44f2f2bb3f3a8e06e35523d14bb70cb275c89\"\u003e\u003ccode\u003e21d44f2\u003c/code\u003e\u003c/a\u003e go/analysis/passes/inline: document skipping of TestF-\u0026gt;F calls\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/golang/tools/commit/ec83c2190d81a18bbd472cc1498575b168017e5d\"\u003e\u003ccode\u003eec83c21\u003c/code\u003e\u003c/a\u003e go/analysis/passes/modernize: minmax: only remove exact userdefined\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/golang/tools/commit/5625353d39195f1deb9261c5ee983abbdc4a15ca\"\u003e\u003ccode\u003e5625353\u003c/code\u003e\u003c/a\u003e go/analysis/passes/modernize: improve value variable name generation\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/golang/tools/commit/15a3bd5d4ce0651f5cf43ea125db2110c67b257b\"\u003e\u003ccode\u003e15a3bd5\u003c/code\u003e\u003c/a\u003e gopls/internal/analysis/errorsastype: imporove example clarity\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/golang/tools/commit/cd57ef8f8dd7a30ef500bfe1eef0779223cbdfc3\"\u003e\u003ccode\u003ecd57ef8\u003c/code\u003e\u003c/a\u003e go/packages: include dependency errors when CompiledGoFiles is missing\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/golang/tools/commit/053fdbcef55e8f977d8decc0fde2920c61eb5374\"\u003e\u003ccode\u003e053fdbc\u003c/code\u003e\u003c/a\u003e go/analysis/passes/modernize: minmax: fix pure operands only\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/golang/tools/commit/bf84681c4a0185014c089cffd533e22bbeffcb49\"\u003e\u003ccode\u003ebf84681\u003c/code\u003e\u003c/a\u003e go/analysis/passes/errorsas: add example of invalid errors.As use\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/golang/tools/commit/23921d1decfe5da40309ac183353c8cb38b03dfa\"\u003e\u003ccode\u003e23921d1\u003c/code\u003e\u003c/a\u003e gopls: add errorsastype analyzer\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/golang/tools/compare/v0.44.0...v0.45.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `modernc.org/sqlite` from 1.50.1 to 1.51.0\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://gitlab.com/cznic/sqlite/blob/master/CHANGELOG.md\"\u003emodernc.org/sqlite's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003eChangelog\u003c/h1\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e2026-05-28 v1.52.0:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdd \u003ccode\u003eBackup.Remaining\u003c/code\u003e and \u003ccode\u003eBackup.PageCount\u003c/code\u003e, thin wrappers around the existing \u003ccode\u003esqlite3_backup_remaining\u003c/code\u003e and \u003ccode\u003esqlite3_backup_pagecount\u003c/code\u003e C symbols. Together they expose the per-\u003ccode\u003eStep\u003c/code\u003e progress counters that the underlying backup object already maintains, enabling progress reporting during online backups without dropping to \u003ccode\u003emodernc.org/sqlite/lib\u003c/code\u003e directly.\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/122\"\u003e#122\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/122\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/122\u003c/a\u003e), thanks Ian Chechin!\u003c/li\u003e\n\u003cli\u003eDrop the redundant second copy in \u003ccode\u003e(*conn).columnText\u003c/code\u003e, the path that backs every \u003ccode\u003eRows.Scan\u003c/code\u003e into a Go \u003ccode\u003estring\u003c/code\u003e for a TEXT column. The value's bytes are still copied once out of SQLite-owned memory into a fresh Go buffer; that buffer is then reinterpreted as the result string with \u003ccode\u003eunsafe.String\u003c/code\u003e rather than copied a second time by the implicit \u003ccode\u003estring([]byte)\u003c/code\u003e conversion. This removes one allocation per TEXT value per row and roughly halves the bytes allocated on that path; on the new \u003ccode\u003eBenchmarkColumnTextScan\u003c/code\u003e cases it is ~13–20% faster for payloads of 256 B and larger, with no measurable change for very short strings. Purely internal: no API or behavioral change, and the returned string never aliases SQLite's buffer.\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/123\"\u003e#123\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/123\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/123\u003c/a\u003e), thanks Ian Chechin!\u003c/li\u003e\n\u003cli\u003eCache each result column's declared type once per result set in \u003ccode\u003enewRows\u003c/code\u003e instead of recomputing it on every row. The TEXT branch of \u003ccode\u003eRows.Next\u003c/code\u003e calls \u003ccode\u003eColumnTypeDatabaseTypeName\u003c/code\u003e for every TEXT column on every row (independent of any DSN flag), which previously did a \u003ccode\u003elibc.GoString\u003c/code\u003e + \u003ccode\u003estrings.ToUpper\u003c/code\u003e each time; that lookup is now a single index into a cached, pre-uppercased \u003ccode\u003e[]string\u003c/code\u003e, and \u003ccode\u003eColumnTypeScanType\u003c/code\u003e reads the same cache and drops its per-call \u003ccode\u003estrings.ToLower\u003c/code\u003e. The declared type is fixed for the lifetime of a prepared statement, so the C round-trip is paid once per column rather than once per column per row, removing exactly 1 alloc + 8 B per TEXT column per row from the \u003ccode\u003eNext\u003c/code\u003e hot path. The new \u003ccode\u003eBenchmarkTextToTimeScan\u003c/code\u003e cases show ~7% faster on a 1000-row DATETIME SELECT under \u003ccode\u003e_texttotime=1\u003c/code\u003e. Purely internal: \u003ccode\u003eColumnTypeDatabaseTypeName\u003c/code\u003e and \u003ccode\u003eColumnTypeScanType\u003c/code\u003e return identical values, no API or behavioral change.\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/124\"\u003e#124\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/124\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/124\u003c/a\u003e), thanks Ian Chechin!\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e2026-05-28 v1.51.0:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003ePool the \u003ccode\u003e[]driver.Value\u003c/code\u003e slice passed to scalar/aggregate UDF callbacks and to vtab \u003ccode\u003eFilter\u003c/code\u003e/\u003ccode\u003eInsert\u003c/code\u003e/\u003ccode\u003eUpdate\u003c/code\u003e callbacks, eliminating the dominant per-row allocation on UDF-heavy queries. Benchmarks on a 1000-row, 3-arg noop scalar UDF show ~40% fewer bytes/op and ~15% fewer allocs/op.\u003c/li\u003e\n\u003cli\u003eDocument the matching \u0026quot;arguments are not valid past return\u0026quot; contract on \u003ccode\u003evtab.Cursor.Filter\u003c/code\u003e and \u003ccode\u003evtab.Updater.Insert\u003c/code\u003e/\u003ccode\u003eUpdate\u003c/code\u003e, consistent with the existing rule for \u003ccode\u003eFunctionImpl.Scalar\u003c/code\u003e / \u003ccode\u003eAggregateFunction.Step\u003c/code\u003e / \u003ccode\u003eWindowInverse\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003eResolves [GitLab issue \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/226\"\u003e#226\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/issues/226\"\u003ehttps://gitlab.com/cznic/sqlite/-/issues/226\u003c/a\u003e). See [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/114\"\u003e#114\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/114\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/114\u003c/a\u003e), thanks Ian Chechin!\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003eFileControl.FileControlDataVersion\u003c/code\u003e, a wrapper around \u003ccode\u003eSQLITE_FCNTL_DATA_VERSION\u003c/code\u003e for observing pager-cache data-version changes, including those made on the same connection. Useful as a primitive for application-level cache invalidation.\u003c/li\u003e\n\u003cli\u003eExposed via the idiomatic \u003ccode\u003edatabase/sql\u003c/code\u003e escape hatch \u003ccode\u003e(*sql.Conn).Raw()\u003c/code\u003e, consistent with the existing \u003ccode\u003eFileControlPersistWAL\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/115\"\u003e#115\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/115\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/115\u003c/a\u003e), thanks Ian Chechin!\u003c/li\u003e\n\u003cli\u003eFix a regression where in-memory connections (\u003ccode\u003e:memory:\u003c/code\u003e, \u003ccode\u003efile::memory:\u003c/code\u003e, shared-cache memory URIs) were discarded by \u003ccode\u003edatabase/sql\u003c/code\u003e after a context-cancelled query, taking the entire in-memory store with them. The fix for \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/198\"\u003e#198\u003c/a\u003e had added an \u003ccode\u003esqlite3_is_interrupted\u003c/code\u003e check to the connection validator that mistakenly applied to in-memory connections too, re-introducing the bug originally fixed by !74. File-backed connections keep the existing behaviour and are still discarded after an interrupt.\u003c/li\u003e\n\u003cli\u003eResolves [GitLab issue \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/196\"\u003e#196\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/issues/196\"\u003ehttps://gitlab.com/cznic/sqlite/-/issues/196\u003c/a\u003e). See [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/116\"\u003e#116\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/116\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/116\u003c/a\u003e), thanks Ian Chechin!\u003c/li\u003e\n\u003cli\u003eAdd an opt-in \u003ccode\u003eFunctionImpl.VolatileArgs\u003c/code\u003e flag that hands TEXT and BLOB arguments to scalar and aggregate UDF callbacks as zero-copy views (\u003ccode\u003eunsafe.String\u003c/code\u003e/\u003ccode\u003eunsafe.Slice\u003c/code\u003e) over SQLite's own value buffers, eliminating the per-argument \u003ccode\u003elibc.GoString\u003c/code\u003e/\u003ccode\u003emake([]byte)\u003c/code\u003e copy that the \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/226\"\u003e#226\u003c/a\u003e slice-pooling left as the remaining per-row allocation. On the same 1000-row, 3-arg (INTEGER/TEXT/BLOB) noop scalar UDF this removes a further ~35% of allocs/op and ~11% of bytes/op on top of \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/226\"\u003e#226\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003eThe views are valid only for the duration of the callback and must not be retained past return or across rows; a callback that needs to keep a value must copy it. With \u003ccode\u003eVolatileArgs\u003c/code\u003e unset (the default) arguments keep the existing copied, caller-owned semantics, so the flag is fully backward compatible; it has no effect on integer, float, time, or NULL arguments.\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/120\"\u003e#120\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/120\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/120\u003c/a\u003e), thanks Ian Chechin!\u003c/li\u003e\n\u003cli\u003eExtend the opt-in \u003ccode\u003eVolatileArgs\u003c/code\u003e zero-copy TEXT/BLOB argument access from \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/120\"\u003e#120\u003c/a\u003e to the virtual-table \u003ccode\u003eCursor.Filter\u003c/code\u003e (\u003ccode\u003exFilter\u003c/code\u003e) and \u003ccode\u003eUpdater.Insert\u003c/code\u003e/\u003ccode\u003eUpdate\u003c/code\u003e (\u003ccode\u003exUpdate\u003c/code\u003e) callbacks. A \u003ccode\u003evtab.Module\u003c/code\u003e opts in by implementing the new optional \u003ccode\u003evtab.VolatileArgsOpter\u003c/code\u003e interface (\u003ccode\u003eVolatileArgs() bool\u003c/code\u003e); the flag is read once at module registration and shared by every table created from it. On a vtab call carrying one TEXT and one BLOB argument this removes 2 allocs/op (one \u003ccode\u003elibc.GoString\u003c/code\u003e, one \u003ccode\u003emake([]byte)\u003c/code\u003e) on each of the Filter and Update paths.\u003c/li\u003e\n\u003cli\u003eThe same safety contract as \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/120\"\u003e#120\u003c/a\u003e applies: the views are valid only for the duration of the callback and must not be retained past return or across rows; a callback that needs to keep a value must copy it. Modules that do not implement \u003ccode\u003eVolatileArgsOpter\u003c/code\u003e (the default for all existing modules) are byte-for-byte unchanged, and the flag has no effect on integer, float, time, or NULL arguments.\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/121\"\u003e#121\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/121\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/121\u003c/a\u003e), thanks Ian Chechin!\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e2026-05-10 v1.50.1:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eUpgrade to \u003ca href=\"https://sqlite.org/releaselog/3_53_1.html\"\u003eSQLite 3.53.1\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e2026-04-24 v1.50.0:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eUpgrade to sqlite-vec \u003ca href=\"https://github.com/asg017/sqlite-vec/releases/tag/v0.1.9\"\u003ev0.1.9\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003eIntroduce \u003ccode\u003eColumnInfo\u003c/code\u003e, enabling dynamic query builders and ORMs to retrieve underlying SQLite C-API metadata (\u003ccode\u003eOriginName\u003c/code\u003e, \u003ccode\u003eTableName\u003c/code\u003e, \u003ccode\u003eDatabaseName\u003c/code\u003e, and \u003ccode\u003eDeclType\u003c/code\u003e).\u003c/li\u003e\n\u003cli\u003eThis feature is exposed via the idiomatic \u003ccode\u003edatabase/sql\u003c/code\u003e escape hatch \u003ccode\u003e(*sql.Conn).Raw()\u003c/code\u003e, avoiding custom statement handles and keeping the standard library workflow intact.\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/113\"\u003e#113\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/113\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/113\u003c/a\u003e), thanks Josh Bleecher Snyder!\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e2026-04-17 v1.49.0: Upgrade to \u003ca href=\"https://sqlite.org/releaselog/3_53_0.html\"\u003eSQLite 3.53.0\u003c/a\u003e.\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdded \u003ccode\u003e-DSQLITE_ENABLE_DBPAGE_VTAB\u003c/code\u003e to the transpilation. See \u003ca href=\"https://www.sqlite.org/dbpage.html\"\u003e\u0026quot;The SQLITE_DBPAGE Virtual Table\u0026quot;\u003c/a\u003e for details.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e2026-04-06 v1.48.2:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eFix ABI mapping mismatch in the pre-update hook trampoline that caused silent truncation of large 64-bit RowIDs.\u003c/li\u003e\n\u003cli\u003eEnsure the Go trampoline signature correctly aligns with the public \u003ccode\u003esqlite3_preupdate_hook\u003c/code\u003e C API, preventing data corruption for high-entropy keys (e.g., Snowflake IDs).\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/98\"\u003e#98\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/98\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/98\u003c/a\u003e), thanks Josh Bleecher Snyder!\u003c/li\u003e\n\u003cli\u003eFix the memory allocator used in \u003ccode\u003e(*conn).Deserialize\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003eReplace \u003ccode\u003etls.Alloc\u003c/code\u003e with \u003ccode\u003esqlite3_malloc64\u003c/code\u003e to prevent internal allocator corruption. This ensures the buffer is safely owned by SQLite, which may resize or free it due to the \u003ccode\u003eSQLITE_DESERIALIZE_RESIZEABLE\u003c/code\u003e and \u003ccode\u003eSQLITE_DESERIALIZE_FREEONCLOSE\u003c/code\u003e flags.\u003c/li\u003e\n\u003cli\u003ePrevent a memory leak by properly freeing the allocated buffer if fetching the main database name fails before handing ownership to SQLite.\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/100\"\u003e#100\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/100\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/100\u003c/a\u003e), thanks Josh Bleecher Snyder!\u003c/li\u003e\n\u003cli\u003eFix \u003ccode\u003e(*conn).Deserialize\u003c/code\u003e to explicitly reject \u003ccode\u003enil\u003c/code\u003e or empty byte slices.\u003c/li\u003e\n\u003cli\u003ePrevent silent database disconnection and connection pool corruption caused by SQLite's default behavior when \u003ccode\u003esqlite3_deserialize\u003c/code\u003e receives a 0-length buffer.\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/101\"\u003e#101\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/101\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/101\u003c/a\u003e), thanks Josh Bleecher Snyder!\u003c/li\u003e\n\u003cli\u003eFix \u003ccode\u003ecommitHookTrampoline\u003c/code\u003e and \u003ccode\u003erollbackHookTrampoline\u003c/code\u003e signatures by removing the unused \u003ccode\u003epCsr\u003c/code\u003e parameter.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/a5f439be99fee4478456048b117d3ca84518d5a7\"\u003e\u003ccode\u003ea5f439b\u003c/code\u003e\u003c/a\u003e CHANGELOG.md: fix release tag\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/41e77be50473b810a66c9beaf6d05d042b2a5556\"\u003e\u003ccode\u003e41e77be\u003c/code\u003e\u003c/a\u003e CHANGELOG.md: document \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/121\"\u003e#121\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/827df98d7342db30f09454eaedfe87ef3e7277db\"\u003e\u003ccode\u003e827df98\u003c/code\u003e\u003c/a\u003e gofmt -l -s -w vtab/*.go\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/0d384cb7dcab26840d003cee10f3ae7ae08a883c\"\u003e\u003ccode\u003e0d384cb\u003c/code\u003e\u003c/a\u003e Merge branch 'feat/vtab-volatile-args-opt-in' into 'master'\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/06e06d50e3bec5f79dd4ad60847a6d6405b76721\"\u003e\u003ccode\u003e06e06d5\u003c/code\u003e\u003c/a\u003e extend VolatileArgs opt-in to vtab Filter and Updater Insert/Update\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/2486abd8b22026a1047cdf67a1b090f3bae4210f\"\u003e\u003ccode\u003e2486abd\u003c/code\u003e\u003c/a\u003e HACKING.md, CLAUDE.md: this repo is not auto-tagged, tagging is manual\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/d808a8f1a5d9651553bea0877197fe1c73dac189\"\u003e\u003ccode\u003ed808a8f\u003c/code\u003e\u003c/a\u003e CHANGELOG.md: document \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/120\"\u003e#120\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/fac1cab20834685f75c7201d756608fd71b71824\"\u003e\u003ccode\u003efac1cab\u003c/code\u003e\u003c/a\u003e Merge branch 'feat/volatile-args-opt-in' into 'master'\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/569614c5d4b0187b9b8c632292d3556ce53e1274\"\u003e\u003ccode\u003e569614c\u003c/code\u003e\u003c/a\u003e address review: empty-BLOB shape parity + re-entrancy note\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/905960c9f78c54b85f29718cc34b69088edb1db2\"\u003e\u003ccode\u003e905960c\u003c/code\u003e\u003c/a\u003e add FunctionImpl.VolatileArgs opt-in for zero-copy TEXT/BLOB args\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://gitlab.com/cznic/sqlite/compare/v1.50.1...v1.51.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `tailscale.com` from 1.98.3 to 1.98.5\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/tailscale/tailscale/releases\"\u003etailscale.com's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev1.98.5\u003c/h2\u003e\n\u003cp\u003ePlease refer to the changelog available at \u003ca href=\"https://tailscale.com/changelog\"\u003ehttps://tailscale.com/changelog\u003c/a\u003e\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tailscale/tailscale/commit/295179bf294d3d076397bcef6815b1d6854e197d\"\u003e\u003ccode\u003e295179b\u003c/code\u003e\u003c/a\u003e VERSION.txt: this is 1.98.5\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tailscale/tailscale/commit/01c6b9661c9e001674c650fa655e56ee1fda4d90\"\u003e\u003ccode\u003e01c6b96\u003c/code\u003e\u003c/a\u003e VERSION.txt: this is v1.98.4\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tailscale/tailscale/commit/a85a4acce070fd3a4306db8bb21b4e7e7236cfc3\"\u003e\u003ccode\u003ea85a4ac\u003c/code\u003e\u003c/a\u003e control/controlclient: fix deadlock in map session change queue processing (#...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tailscale/tailscale/commit/5f390d4845dfdf469e49109bb0801d757ea18adf\"\u003e\u003ccode\u003e5f390d4\u003c/code\u003e\u003c/a\u003e cmd/containerboot: clamp MSS to PMTU for proxy group pods (\u003ca href=\"https://redirect.github.com/tailscale/tailscale/issues/19686\"\u003e#19686\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/tailscale/tailscale/issues/19900\"\u003e#19900\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tailscale/tailscale/commit/49d7ad38b3a4fdf93b8c27b11b9706ea8e17228f\"\u003e\u003ccode\u003e49d7ad3\u003c/code\u003e\u003c/a\u003e cmd/k8s-operator: fix token exchange for identity federation (\u003ca href=\"https://redirect.github.com/tailscale/tailscale/issues/19845\"\u003e#19845\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/tailscale/tailscale/issues/19897\"\u003e#19897\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/tailscale/tailscale/compare/v1.98.3...v1.98.5\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e","html_url":"https://github.com/tinyauthapp/tinyauth/pull/911","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/tinyauthapp%2Ftinyauth/issues/911","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/911/packages"},{"uuid":"4544814647","node_id":"PR_kwDORUjCSc7gdP1Y","number":35,"state":"closed","title":"Bump modernc.org/sqlite from 1.50.0 to 1.51.0","user":"dependabot[bot]","labels":["dependencies","go"],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":"2026-06-12T00:43:34.000Z","author_association":null,"state_reason":null,"created_at":"2026-05-29T00:52:12.000Z","updated_at":"2026-06-12T00:43:35.000Z","time_to_close":1209082,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"Bump","packages":[{"name":"modernc.org/sqlite","old_version":"1.50.0","new_version":"1.51.0","repository_url":null}],"path":null,"ecosystem":"go"},"body":"Bumps [modernc.org/sqlite](https://gitlab.com/cznic/sqlite) from 1.50.0 to 1.51.0.\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://gitlab.com/cznic/sqlite/blob/master/CHANGELOG.md\"\u003emodernc.org/sqlite's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003eChangelog\u003c/h1\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e2026-05-28 v1.52.0:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdd \u003ccode\u003eBackup.Remaining\u003c/code\u003e and \u003ccode\u003eBackup.PageCount\u003c/code\u003e, thin wrappers around the existing \u003ccode\u003esqlite3_backup_remaining\u003c/code\u003e and \u003ccode\u003esqlite3_backup_pagecount\u003c/code\u003e C symbols. Together they expose the per-\u003ccode\u003eStep\u003c/code\u003e progress counters that the underlying backup object already maintains, enabling progress reporting during online backups without dropping to \u003ccode\u003emodernc.org/sqlite/lib\u003c/code\u003e directly.\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/122\"\u003e#122\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/122\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/122\u003c/a\u003e), thanks Ian Chechin!\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e2026-05-28 v1.51.0:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003ePool the \u003ccode\u003e[]driver.Value\u003c/code\u003e slice passed to scalar/aggregate UDF callbacks and to vtab \u003ccode\u003eFilter\u003c/code\u003e/\u003ccode\u003eInsert\u003c/code\u003e/\u003ccode\u003eUpdate\u003c/code\u003e callbacks, eliminating the dominant per-row allocation on UDF-heavy queries. Benchmarks on a 1000-row, 3-arg noop scalar UDF show ~40% fewer bytes/op and ~15% fewer allocs/op.\u003c/li\u003e\n\u003cli\u003eDocument the matching \u0026quot;arguments are not valid past return\u0026quot; contract on \u003ccode\u003evtab.Cursor.Filter\u003c/code\u003e and \u003ccode\u003evtab.Updater.Insert\u003c/code\u003e/\u003ccode\u003eUpdate\u003c/code\u003e, consistent with the existing rule for \u003ccode\u003eFunctionImpl.Scalar\u003c/code\u003e / \u003ccode\u003eAggregateFunction.Step\u003c/code\u003e / \u003ccode\u003eWindowInverse\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003eResolves [GitLab issue \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/226\"\u003e#226\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/issues/226\"\u003ehttps://gitlab.com/cznic/sqlite/-/issues/226\u003c/a\u003e). See [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/114\"\u003e#114\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/114\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/114\u003c/a\u003e), thanks Ian Chechin!\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003eFileControl.FileControlDataVersion\u003c/code\u003e, a wrapper around \u003ccode\u003eSQLITE_FCNTL_DATA_VERSION\u003c/code\u003e for observing pager-cache data-version changes, including those made on the same connection. Useful as a primitive for application-level cache invalidation.\u003c/li\u003e\n\u003cli\u003eExposed via the idiomatic \u003ccode\u003edatabase/sql\u003c/code\u003e escape hatch \u003ccode\u003e(*sql.Conn).Raw()\u003c/code\u003e, consistent with the existing \u003ccode\u003eFileControlPersistWAL\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/115\"\u003e#115\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/115\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/115\u003c/a\u003e), thanks Ian Chechin!\u003c/li\u003e\n\u003cli\u003eFix a regression where in-memory connections (\u003ccode\u003e:memory:\u003c/code\u003e, \u003ccode\u003efile::memory:\u003c/code\u003e, shared-cache memory URIs) were discarded by \u003ccode\u003edatabase/sql\u003c/code\u003e after a context-cancelled query, taking the entire in-memory store with them. The fix for \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/198\"\u003e#198\u003c/a\u003e had added an \u003ccode\u003esqlite3_is_interrupted\u003c/code\u003e check to the connection validator that mistakenly applied to in-memory connections too, re-introducing the bug originally fixed by !74. File-backed connections keep the existing behaviour and are still discarded after an interrupt.\u003c/li\u003e\n\u003cli\u003eResolves [GitLab issue \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/196\"\u003e#196\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/issues/196\"\u003ehttps://gitlab.com/cznic/sqlite/-/issues/196\u003c/a\u003e). See [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/116\"\u003e#116\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/116\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/116\u003c/a\u003e), thanks Ian Chechin!\u003c/li\u003e\n\u003cli\u003eAdd an opt-in \u003ccode\u003eFunctionImpl.VolatileArgs\u003c/code\u003e flag that hands TEXT and BLOB arguments to scalar and aggregate UDF callbacks as zero-copy views (\u003ccode\u003eunsafe.String\u003c/code\u003e/\u003ccode\u003eunsafe.Slice\u003c/code\u003e) over SQLite's own value buffers, eliminating the per-argument \u003ccode\u003elibc.GoString\u003c/code\u003e/\u003ccode\u003emake([]byte)\u003c/code\u003e copy that the \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/226\"\u003e#226\u003c/a\u003e slice-pooling left as the remaining per-row allocation. On the same 1000-row, 3-arg (INTEGER/TEXT/BLOB) noop scalar UDF this removes a further ~35% of allocs/op and ~11% of bytes/op on top of \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/226\"\u003e#226\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003eThe views are valid only for the duration of the callback and must not be retained past return or across rows; a callback that needs to keep a value must copy it. With \u003ccode\u003eVolatileArgs\u003c/code\u003e unset (the default) arguments keep the existing copied, caller-owned semantics, so the flag is fully backward compatible; it has no effect on integer, float, time, or NULL arguments.\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/120\"\u003e#120\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/120\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/120\u003c/a\u003e), thanks Ian Chechin!\u003c/li\u003e\n\u003cli\u003eExtend the opt-in \u003ccode\u003eVolatileArgs\u003c/code\u003e zero-copy TEXT/BLOB argument access from \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/120\"\u003e#120\u003c/a\u003e to the virtual-table \u003ccode\u003eCursor.Filter\u003c/code\u003e (\u003ccode\u003exFilter\u003c/code\u003e) and \u003ccode\u003eUpdater.Insert\u003c/code\u003e/\u003ccode\u003eUpdate\u003c/code\u003e (\u003ccode\u003exUpdate\u003c/code\u003e) callbacks. A \u003ccode\u003evtab.Module\u003c/code\u003e opts in by implementing the new optional \u003ccode\u003evtab.VolatileArgsOpter\u003c/code\u003e interface (\u003ccode\u003eVolatileArgs() bool\u003c/code\u003e); the flag is read once at module registration and shared by every table created from it. On a vtab call carrying one TEXT and one BLOB argument this removes 2 allocs/op (one \u003ccode\u003elibc.GoString\u003c/code\u003e, one \u003ccode\u003emake([]byte)\u003c/code\u003e) on each of the Filter and Update paths.\u003c/li\u003e\n\u003cli\u003eThe same safety contract as \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/120\"\u003e#120\u003c/a\u003e applies: the views are valid only for the duration of the callback and must not be retained past return or across rows; a callback that needs to keep a value must copy it. Modules that do not implement \u003ccode\u003eVolatileArgsOpter\u003c/code\u003e (the default for all existing modules) are byte-for-byte unchanged, and the flag has no effect on integer, float, time, or NULL arguments.\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/121\"\u003e#121\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/121\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/121\u003c/a\u003e), thanks Ian Chechin!\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e2026-05-10 v1.50.1:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eUpgrade to \u003ca href=\"https://sqlite.org/releaselog/3_53_1.html\"\u003eSQLite 3.53.1\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e2026-04-24 v1.50.0:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eUpgrade to sqlite-vec \u003ca href=\"https://github.com/asg017/sqlite-vec/releases/tag/v0.1.9\"\u003ev0.1.9\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003eIntroduce \u003ccode\u003eColumnInfo\u003c/code\u003e, enabling dynamic query builders and ORMs to retrieve underlying SQLite C-API metadata (\u003ccode\u003eOriginName\u003c/code\u003e, \u003ccode\u003eTableName\u003c/code\u003e, \u003ccode\u003eDatabaseName\u003c/code\u003e, and \u003ccode\u003eDeclType\u003c/code\u003e).\u003c/li\u003e\n\u003cli\u003eThis feature is exposed via the idiomatic \u003ccode\u003edatabase/sql\u003c/code\u003e escape hatch \u003ccode\u003e(*sql.Conn).Raw()\u003c/code\u003e, avoiding custom statement handles and keeping the standard library workflow intact.\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/113\"\u003e#113\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/113\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/113\u003c/a\u003e), thanks Josh Bleecher Snyder!\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e2026-04-17 v1.49.0: Upgrade to \u003ca href=\"https://sqlite.org/releaselog/3_53_0.html\"\u003eSQLite 3.53.0\u003c/a\u003e.\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdded \u003ccode\u003e-DSQLITE_ENABLE_DBPAGE_VTAB\u003c/code\u003e to the transpilation. See \u003ca href=\"https://www.sqlite.org/dbpage.html\"\u003e\u0026quot;The SQLITE_DBPAGE Virtual Table\u0026quot;\u003c/a\u003e for details.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e2026-04-06 v1.48.2:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eFix ABI mapping mismatch in the pre-update hook trampoline that caused silent truncation of large 64-bit RowIDs.\u003c/li\u003e\n\u003cli\u003eEnsure the Go trampoline signature correctly aligns with the public \u003ccode\u003esqlite3_preupdate_hook\u003c/code\u003e C API, preventing data corruption for high-entropy keys (e.g., Snowflake IDs).\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/98\"\u003e#98\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/98\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/98\u003c/a\u003e), thanks Josh Bleecher Snyder!\u003c/li\u003e\n\u003cli\u003eFix the memory allocator used in \u003ccode\u003e(*conn).Deserialize\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003eReplace \u003ccode\u003etls.Alloc\u003c/code\u003e with \u003ccode\u003esqlite3_malloc64\u003c/code\u003e to prevent internal allocator corruption. This ensures the buffer is safely owned by SQLite, which may resize or free it due to the \u003ccode\u003eSQLITE_DESERIALIZE_RESIZEABLE\u003c/code\u003e and \u003ccode\u003eSQLITE_DESERIALIZE_FREEONCLOSE\u003c/code\u003e flags.\u003c/li\u003e\n\u003cli\u003ePrevent a memory leak by properly freeing the allocated buffer if fetching the main database name fails before handing ownership to SQLite.\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/100\"\u003e#100\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/100\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/100\u003c/a\u003e), thanks Josh Bleecher Snyder!\u003c/li\u003e\n\u003cli\u003eFix \u003ccode\u003e(*conn).Deserialize\u003c/code\u003e to explicitly reject \u003ccode\u003enil\u003c/code\u003e or empty byte slices.\u003c/li\u003e\n\u003cli\u003ePrevent silent database disconnection and connection pool corruption caused by SQLite's default behavior when \u003ccode\u003esqlite3_deserialize\u003c/code\u003e receives a 0-length buffer.\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/101\"\u003e#101\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/101\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/101\u003c/a\u003e), thanks Josh Bleecher Snyder!\u003c/li\u003e\n\u003cli\u003eFix \u003ccode\u003ecommitHookTrampoline\u003c/code\u003e and \u003ccode\u003erollbackHookTrampoline\u003c/code\u003e signatures by removing the unused \u003ccode\u003epCsr\u003c/code\u003e parameter.\u003c/li\u003e\n\u003cli\u003eAligns internal hook callbacks accurately with the underlying SQLite C API, cleaning up the code to prevent potential future confusion or bugs.\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/102\"\u003e#102\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/102\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/102\u003c/a\u003e), thanks Josh Bleecher Snyder!\u003c/li\u003e\n\u003cli\u003eFix \u003ccode\u003echeckptr\u003c/code\u003e instrumentation failures during \u003ccode\u003ego test -race\u003c/code\u003e when registering and using virtual tables (\u003ccode\u003evtab\u003c/code\u003e).\u003c/li\u003e\n\u003cli\u003eAllocate \u003ccode\u003esqlite3_module\u003c/code\u003e instances using the C allocator (\u003ccode\u003elibc.Xcalloc\u003c/code\u003e) instead of the Go heap. This ensures transpiled C code can safely perform pointer operations on the struct without tripping Go's pointer checks.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/a5f439be99fee4478456048b117d3ca84518d5a7\"\u003e\u003ccode\u003ea5f439b\u003c/code\u003e\u003c/a\u003e CHANGELOG.md: fix release tag\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/41e77be50473b810a66c9beaf6d05d042b2a5556\"\u003e\u003ccode\u003e41e77be\u003c/code\u003e\u003c/a\u003e CHANGELOG.md: document \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/121\"\u003e#121\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/827df98d7342db30f09454eaedfe87ef3e7277db\"\u003e\u003ccode\u003e827df98\u003c/code\u003e\u003c/a\u003e gofmt -l -s -w vtab/*.go\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/0d384cb7dcab26840d003cee10f3ae7ae08a883c\"\u003e\u003ccode\u003e0d384cb\u003c/code\u003e\u003c/a\u003e Merge branch 'feat/vtab-volatile-args-opt-in' into 'master'\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/06e06d50e3bec5f79dd4ad60847a6d6405b76721\"\u003e\u003ccode\u003e06e06d5\u003c/code\u003e\u003c/a\u003e extend VolatileArgs opt-in to vtab Filter and Updater Insert/Update\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/2486abd8b22026a1047cdf67a1b090f3bae4210f\"\u003e\u003ccode\u003e2486abd\u003c/code\u003e\u003c/a\u003e HACKING.md, CLAUDE.md: this repo is not auto-tagged, tagging is manual\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/d808a8f1a5d9651553bea0877197fe1c73dac189\"\u003e\u003ccode\u003ed808a8f\u003c/code\u003e\u003c/a\u003e CHANGELOG.md: document \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/120\"\u003e#120\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/fac1cab20834685f75c7201d756608fd71b71824\"\u003e\u003ccode\u003efac1cab\u003c/code\u003e\u003c/a\u003e Merge branch 'feat/volatile-args-opt-in' into 'master'\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/569614c5d4b0187b9b8c632292d3556ce53e1274\"\u003e\u003ccode\u003e569614c\u003c/code\u003e\u003c/a\u003e address review: empty-BLOB shape parity + re-entrancy note\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/905960c9f78c54b85f29718cc34b69088edb1db2\"\u003e\u003ccode\u003e905960c\u003c/code\u003e\u003c/a\u003e add FunctionImpl.VolatileArgs opt-in for zero-copy TEXT/BLOB args\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://gitlab.com/cznic/sqlite/compare/v1.50.0...v1.51.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\n\n[![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=modernc.org/sqlite\u0026package-manager=go_modules\u0026previous-version=1.50.0\u0026new-version=1.51.0)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)\n\nDependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.\n\n[//]: # (dependabot-automerge-start)\n[//]: # (dependabot-automerge-end)\n\n---\n\n\u003cdetails\u003e\n\u003csummary\u003eDependabot commands and options\u003c/summary\u003e\n\u003cbr /\u003e\n\nYou can trigger Dependabot actions by commenting on this PR:\n- `@dependabot rebase` will rebase this PR\n- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it\n- `@dependabot show \u003cdependency name\u003e ignore conditions` will show all of the ignore conditions of the specified dependency\n- `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)\n- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)\n- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)\n\n\n\u003c/details\u003e","html_url":"https://github.com/mkoepf/photoo/pull/35","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/mkoepf%2Fphotoo/issues/35","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/35/packages"},{"uuid":"4544657725","node_id":"PR_kwDOB1EGJs7gcvuE","number":582,"state":"open","title":"chore(deps): bump modernc.org/sqlite from 1.49.1 to 1.51.0","user":"dependabot[bot]","labels":["dependencies","go"],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":null,"author_association":null,"state_reason":null,"created_at":"2026-05-29T00:08:46.000Z","updated_at":"2026-05-29T00:10:52.000Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"chore(deps)","packages":[{"name":"modernc.org/sqlite","old_version":"1.49.1","new_version":"1.51.0","repository_url":null}],"path":null,"ecosystem":"go"},"body":"Bumps [modernc.org/sqlite](https://gitlab.com/cznic/sqlite) from 1.49.1 to 1.51.0.\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://gitlab.com/cznic/sqlite/blob/master/CHANGELOG.md\"\u003emodernc.org/sqlite's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003eChangelog\u003c/h1\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e2026-05-28 v1.52.0:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdd \u003ccode\u003eBackup.Remaining\u003c/code\u003e and \u003ccode\u003eBackup.PageCount\u003c/code\u003e, thin wrappers around the existing \u003ccode\u003esqlite3_backup_remaining\u003c/code\u003e and \u003ccode\u003esqlite3_backup_pagecount\u003c/code\u003e C symbols. Together they expose the per-\u003ccode\u003eStep\u003c/code\u003e progress counters that the underlying backup object already maintains, enabling progress reporting during online backups without dropping to \u003ccode\u003emodernc.org/sqlite/lib\u003c/code\u003e directly.\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/122\"\u003e#122\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/122\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/122\u003c/a\u003e), thanks Ian Chechin!\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e2026-05-28 v1.51.0:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003ePool the \u003ccode\u003e[]driver.Value\u003c/code\u003e slice passed to scalar/aggregate UDF callbacks and to vtab \u003ccode\u003eFilter\u003c/code\u003e/\u003ccode\u003eInsert\u003c/code\u003e/\u003ccode\u003eUpdate\u003c/code\u003e callbacks, eliminating the dominant per-row allocation on UDF-heavy queries. Benchmarks on a 1000-row, 3-arg noop scalar UDF show ~40% fewer bytes/op and ~15% fewer allocs/op.\u003c/li\u003e\n\u003cli\u003eDocument the matching \u0026quot;arguments are not valid past return\u0026quot; contract on \u003ccode\u003evtab.Cursor.Filter\u003c/code\u003e and \u003ccode\u003evtab.Updater.Insert\u003c/code\u003e/\u003ccode\u003eUpdate\u003c/code\u003e, consistent with the existing rule for \u003ccode\u003eFunctionImpl.Scalar\u003c/code\u003e / \u003ccode\u003eAggregateFunction.Step\u003c/code\u003e / \u003ccode\u003eWindowInverse\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003eResolves [GitLab issue \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/226\"\u003e#226\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/issues/226\"\u003ehttps://gitlab.com/cznic/sqlite/-/issues/226\u003c/a\u003e). See [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/114\"\u003e#114\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/114\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/114\u003c/a\u003e), thanks Ian Chechin!\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003eFileControl.FileControlDataVersion\u003c/code\u003e, a wrapper around \u003ccode\u003eSQLITE_FCNTL_DATA_VERSION\u003c/code\u003e for observing pager-cache data-version changes, including those made on the same connection. Useful as a primitive for application-level cache invalidation.\u003c/li\u003e\n\u003cli\u003eExposed via the idiomatic \u003ccode\u003edatabase/sql\u003c/code\u003e escape hatch \u003ccode\u003e(*sql.Conn).Raw()\u003c/code\u003e, consistent with the existing \u003ccode\u003eFileControlPersistWAL\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/115\"\u003e#115\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/115\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/115\u003c/a\u003e), thanks Ian Chechin!\u003c/li\u003e\n\u003cli\u003eFix a regression where in-memory connections (\u003ccode\u003e:memory:\u003c/code\u003e, \u003ccode\u003efile::memory:\u003c/code\u003e, shared-cache memory URIs) were discarded by \u003ccode\u003edatabase/sql\u003c/code\u003e after a context-cancelled query, taking the entire in-memory store with them. The fix for \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/198\"\u003e#198\u003c/a\u003e had added an \u003ccode\u003esqlite3_is_interrupted\u003c/code\u003e check to the connection validator that mistakenly applied to in-memory connections too, re-introducing the bug originally fixed by !74. File-backed connections keep the existing behaviour and are still discarded after an interrupt.\u003c/li\u003e\n\u003cli\u003eResolves [GitLab issue \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/196\"\u003e#196\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/issues/196\"\u003ehttps://gitlab.com/cznic/sqlite/-/issues/196\u003c/a\u003e). See [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/116\"\u003e#116\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/116\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/116\u003c/a\u003e), thanks Ian Chechin!\u003c/li\u003e\n\u003cli\u003eAdd an opt-in \u003ccode\u003eFunctionImpl.VolatileArgs\u003c/code\u003e flag that hands TEXT and BLOB arguments to scalar and aggregate UDF callbacks as zero-copy views (\u003ccode\u003eunsafe.String\u003c/code\u003e/\u003ccode\u003eunsafe.Slice\u003c/code\u003e) over SQLite's own value buffers, eliminating the per-argument \u003ccode\u003elibc.GoString\u003c/code\u003e/\u003ccode\u003emake([]byte)\u003c/code\u003e copy that the \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/226\"\u003e#226\u003c/a\u003e slice-pooling left as the remaining per-row allocation. On the same 1000-row, 3-arg (INTEGER/TEXT/BLOB) noop scalar UDF this removes a further ~35% of allocs/op and ~11% of bytes/op on top of \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/226\"\u003e#226\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003eThe views are valid only for the duration of the callback and must not be retained past return or across rows; a callback that needs to keep a value must copy it. With \u003ccode\u003eVolatileArgs\u003c/code\u003e unset (the default) arguments keep the existing copied, caller-owned semantics, so the flag is fully backward compatible; it has no effect on integer, float, time, or NULL arguments.\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/120\"\u003e#120\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/120\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/120\u003c/a\u003e), thanks Ian Chechin!\u003c/li\u003e\n\u003cli\u003eExtend the opt-in \u003ccode\u003eVolatileArgs\u003c/code\u003e zero-copy TEXT/BLOB argument access from \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/120\"\u003e#120\u003c/a\u003e to the virtual-table \u003ccode\u003eCursor.Filter\u003c/code\u003e (\u003ccode\u003exFilter\u003c/code\u003e) and \u003ccode\u003eUpdater.Insert\u003c/code\u003e/\u003ccode\u003eUpdate\u003c/code\u003e (\u003ccode\u003exUpdate\u003c/code\u003e) callbacks. A \u003ccode\u003evtab.Module\u003c/code\u003e opts in by implementing the new optional \u003ccode\u003evtab.VolatileArgsOpter\u003c/code\u003e interface (\u003ccode\u003eVolatileArgs() bool\u003c/code\u003e); the flag is read once at module registration and shared by every table created from it. On a vtab call carrying one TEXT and one BLOB argument this removes 2 allocs/op (one \u003ccode\u003elibc.GoString\u003c/code\u003e, one \u003ccode\u003emake([]byte)\u003c/code\u003e) on each of the Filter and Update paths.\u003c/li\u003e\n\u003cli\u003eThe same safety contract as \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/120\"\u003e#120\u003c/a\u003e applies: the views are valid only for the duration of the callback and must not be retained past return or across rows; a callback that needs to keep a value must copy it. Modules that do not implement \u003ccode\u003eVolatileArgsOpter\u003c/code\u003e (the default for all existing modules) are byte-for-byte unchanged, and the flag has no effect on integer, float, time, or NULL arguments.\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/121\"\u003e#121\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/121\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/121\u003c/a\u003e), thanks Ian Chechin!\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e2026-05-10 v1.50.1:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eUpgrade to \u003ca href=\"https://sqlite.org/releaselog/3_53_1.html\"\u003eSQLite 3.53.1\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e2026-04-24 v1.50.0:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eUpgrade to sqlite-vec \u003ca href=\"https://github.com/asg017/sqlite-vec/releases/tag/v0.1.9\"\u003ev0.1.9\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003eIntroduce \u003ccode\u003eColumnInfo\u003c/code\u003e, enabling dynamic query builders and ORMs to retrieve underlying SQLite C-API metadata (\u003ccode\u003eOriginName\u003c/code\u003e, \u003ccode\u003eTableName\u003c/code\u003e, \u003ccode\u003eDatabaseName\u003c/code\u003e, and \u003ccode\u003eDeclType\u003c/code\u003e).\u003c/li\u003e\n\u003cli\u003eThis feature is exposed via the idiomatic \u003ccode\u003edatabase/sql\u003c/code\u003e escape hatch \u003ccode\u003e(*sql.Conn).Raw()\u003c/code\u003e, avoiding custom statement handles and keeping the standard library workflow intact.\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/113\"\u003e#113\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/113\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/113\u003c/a\u003e), thanks Josh Bleecher Snyder!\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e2026-04-17 v1.49.0: Upgrade to \u003ca href=\"https://sqlite.org/releaselog/3_53_0.html\"\u003eSQLite 3.53.0\u003c/a\u003e.\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdded \u003ccode\u003e-DSQLITE_ENABLE_DBPAGE_VTAB\u003c/code\u003e to the transpilation. See \u003ca href=\"https://www.sqlite.org/dbpage.html\"\u003e\u0026quot;The SQLITE_DBPAGE Virtual Table\u0026quot;\u003c/a\u003e for details.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e2026-04-06 v1.48.2:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eFix ABI mapping mismatch in the pre-update hook trampoline that caused silent truncation of large 64-bit RowIDs.\u003c/li\u003e\n\u003cli\u003eEnsure the Go trampoline signature correctly aligns with the public \u003ccode\u003esqlite3_preupdate_hook\u003c/code\u003e C API, preventing data corruption for high-entropy keys (e.g., Snowflake IDs).\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/98\"\u003e#98\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/98\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/98\u003c/a\u003e), thanks Josh Bleecher Snyder!\u003c/li\u003e\n\u003cli\u003eFix the memory allocator used in \u003ccode\u003e(*conn).Deserialize\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003eReplace \u003ccode\u003etls.Alloc\u003c/code\u003e with \u003ccode\u003esqlite3_malloc64\u003c/code\u003e to prevent internal allocator corruption. This ensures the buffer is safely owned by SQLite, which may resize or free it due to the \u003ccode\u003eSQLITE_DESERIALIZE_RESIZEABLE\u003c/code\u003e and \u003ccode\u003eSQLITE_DESERIALIZE_FREEONCLOSE\u003c/code\u003e flags.\u003c/li\u003e\n\u003cli\u003ePrevent a memory leak by properly freeing the allocated buffer if fetching the main database name fails before handing ownership to SQLite.\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/100\"\u003e#100\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/100\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/100\u003c/a\u003e), thanks Josh Bleecher Snyder!\u003c/li\u003e\n\u003cli\u003eFix \u003ccode\u003e(*conn).Deserialize\u003c/code\u003e to explicitly reject \u003ccode\u003enil\u003c/code\u003e or empty byte slices.\u003c/li\u003e\n\u003cli\u003ePrevent silent database disconnection and connection pool corruption caused by SQLite's default behavior when \u003ccode\u003esqlite3_deserialize\u003c/code\u003e receives a 0-length buffer.\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/101\"\u003e#101\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/101\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/101\u003c/a\u003e), thanks Josh Bleecher Snyder!\u003c/li\u003e\n\u003cli\u003eFix \u003ccode\u003ecommitHookTrampoline\u003c/code\u003e and \u003ccode\u003erollbackHookTrampoline\u003c/code\u003e signatures by removing the unused \u003ccode\u003epCsr\u003c/code\u003e parameter.\u003c/li\u003e\n\u003cli\u003eAligns internal hook callbacks accurately with the underlying SQLite C API, cleaning up the code to prevent potential future confusion or bugs.\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/102\"\u003e#102\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/102\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/102\u003c/a\u003e), thanks Josh Bleecher Snyder!\u003c/li\u003e\n\u003cli\u003eFix \u003ccode\u003echeckptr\u003c/code\u003e instrumentation failures during \u003ccode\u003ego test -race\u003c/code\u003e when registering and using virtual tables (\u003ccode\u003evtab\u003c/code\u003e).\u003c/li\u003e\n\u003cli\u003eAllocate \u003ccode\u003esqlite3_module\u003c/code\u003e instances using the C allocator (\u003ccode\u003elibc.Xcalloc\u003c/code\u003e) instead of the Go heap. This ensures transpiled C code can safely perform pointer operations on the struct without tripping Go's pointer checks.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/a5f439be99fee4478456048b117d3ca84518d5a7\"\u003e\u003ccode\u003ea5f439b\u003c/code\u003e\u003c/a\u003e CHANGELOG.md: fix release tag\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/41e77be50473b810a66c9beaf6d05d042b2a5556\"\u003e\u003ccode\u003e41e77be\u003c/code\u003e\u003c/a\u003e CHANGELOG.md: document \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/121\"\u003e#121\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/827df98d7342db30f09454eaedfe87ef3e7277db\"\u003e\u003ccode\u003e827df98\u003c/code\u003e\u003c/a\u003e gofmt -l -s -w vtab/*.go\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/0d384cb7dcab26840d003cee10f3ae7ae08a883c\"\u003e\u003ccode\u003e0d384cb\u003c/code\u003e\u003c/a\u003e Merge branch 'feat/vtab-volatile-args-opt-in' into 'master'\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/06e06d50e3bec5f79dd4ad60847a6d6405b76721\"\u003e\u003ccode\u003e06e06d5\u003c/code\u003e\u003c/a\u003e extend VolatileArgs opt-in to vtab Filter and Updater Insert/Update\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/2486abd8b22026a1047cdf67a1b090f3bae4210f\"\u003e\u003ccode\u003e2486abd\u003c/code\u003e\u003c/a\u003e HACKING.md, CLAUDE.md: this repo is not auto-tagged, tagging is manual\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/d808a8f1a5d9651553bea0877197fe1c73dac189\"\u003e\u003ccode\u003ed808a8f\u003c/code\u003e\u003c/a\u003e CHANGELOG.md: document \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/120\"\u003e#120\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/fac1cab20834685f75c7201d756608fd71b71824\"\u003e\u003ccode\u003efac1cab\u003c/code\u003e\u003c/a\u003e Merge branch 'feat/volatile-args-opt-in' into 'master'\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/569614c5d4b0187b9b8c632292d3556ce53e1274\"\u003e\u003ccode\u003e569614c\u003c/code\u003e\u003c/a\u003e address review: empty-BLOB shape parity + re-entrancy note\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/905960c9f78c54b85f29718cc34b69088edb1db2\"\u003e\u003ccode\u003e905960c\u003c/code\u003e\u003c/a\u003e add FunctionImpl.VolatileArgs opt-in for zero-copy TEXT/BLOB args\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://gitlab.com/cznic/sqlite/compare/v1.49.1...v1.51.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\n\n[![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=modernc.org/sqlite\u0026package-manager=go_modules\u0026previous-version=1.49.1\u0026new-version=1.51.0)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)\n\nDependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.\n\n[//]: # (dependabot-automerge-start)\n[//]: # (dependabot-automerge-end)\n\n---\n\n\u003cdetails\u003e\n\u003csummary\u003eDependabot commands and options\u003c/summary\u003e\n\u003cbr /\u003e\n\nYou can trigger Dependabot actions by commenting on this PR:\n- `@dependabot rebase` will rebase this PR\n- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it\n- `@dependabot show \u003cdependency name\u003e ignore conditions` will show all of the ignore conditions of the specified dependency\n- `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)\n- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)\n- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)\n\n\n\u003c/details\u003e","html_url":"https://github.com/dundee/gdu/pull/582","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/dundee%2Fgdu/issues/582","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/582/packages"},{"uuid":"4543804226","node_id":"PR_kwDOHI_2wc7gZ-IG","number":1292,"state":"closed","title":"chore: bump the engine group across 1 directory with 50 updates","user":"dependabot[bot]","labels":[],"assignees":[],"locked":false,"comments_count":2,"pull_request":true,"closed_at":"2026-06-12T01:24:26.000Z","author_association":null,"state_reason":null,"created_at":"2026-05-28T21:03:15.000Z","updated_at":"2026-06-12T01:24:28.000Z","time_to_close":1225271,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"chore: bump","group_name":"engine","update_count":50,"packages":[{"name":"charm.land/lipgloss/v2","old_version":"2.0.2","new_version":"2.0.3","repository_url":"https://github.com/charmbracelet/lipgloss"},{"name":"cloud.google.com/go/secretmanager","old_version":"1.16.0","new_version":"1.20.0","repository_url":"https://github.com/googleapis/google-cloud-go"},{"name":"github.com/1password/onepassword-sdk-go","old_version":"0.3.1","new_version":"0.4.0","repository_url":"https://github.com/1password/onepassword-sdk-go"},{"name":"github.com/99designs/gqlgen","old_version":"0.17.89","new_version":"0.17.90","repository_url":"https://github.com/99designs/gqlgen"},{"name":"github.com/alecthomas/chroma/v2","old_version":"2.23.1","new_version":"2.26.1","repository_url":"https://github.com/alecthomas/chroma"},{"name":"github.com/anthropics/anthropic-sdk-go","old_version":"1.30.0","new_version":"1.46.0","repository_url":"https://github.com/anthropics/anthropic-sdk-go"},{"name":"github.com/aws/aws-sdk-go-v2","old_version":"1.41.5","new_version":"1.41.9","repository_url":"https://github.com/aws/aws-sdk-go-v2"},{"name":"github.com/aws/aws-sdk-go-v2/config","old_version":"1.32.14","new_version":"1.32.20","repository_url":"https://github.com/aws/aws-sdk-go-v2"},{"name":"github.com/aws/aws-sdk-go-v2/service/secretsmanager","old_version":"1.41.5","new_version":"1.41.9","repository_url":"https://github.com/aws/aws-sdk-go-v2"},{"name":"github.com/aws/aws-sdk-go-v2/service/ssm","old_version":"1.68.4","new_version":"1.68.8","repository_url":"https://github.com/aws/aws-sdk-go-v2"},{"name":"github.com/containerd/containerd/api","old_version":"1.10.0","new_version":"1.11.1","repository_url":"https://github.com/containerd/containerd"},{"name":"github.com/containerd/containerd/v2","old_version":"2.2.3","new_version":"2.3.1","repository_url":"https://github.com/containerd/containerd"},{"name":"github.com/containerd/fuse-overlayfs-snapshotter/v2","old_version":"2.1.2","new_version":"2.1.7","repository_url":"https://github.com/containerd/fuse-overlayfs-snapshotter"},{"name":"github.com/containerd/typeurl/v2","old_version":"2.2.3","new_version":"2.3.0","repository_url":"https://github.com/containerd/typeurl"},{"name":"github.com/docker/cli","old_version":"29.3.1+incompatible","new_version":"29.5.2+incompatible","repository_url":"https://github.com/docker/cli"},{"name":"github.com/docker/go-connections","old_version":"0.6.0","new_version":"0.7.0","repository_url":"https://github.com/docker/go-connections"},{"name":"github.com/go-git/go-git/v5","old_version":"5.17.2","new_version":"5.19.1","repository_url":"https://github.com/go-git/go-git"},{"name":"github.com/google/go-containerregistry","old_version":"0.21.4","new_version":"0.21.6","repository_url":"https://github.com/google/go-containerregistry"},{"name":"github.com/goproxy/goproxy","old_version":"0.26.0","new_version":"0.26.1","repository_url":"https://github.com/goproxy/goproxy"},{"name":"github.com/in-toto/in-toto-golang","old_version":"0.10.0","new_version":"0.11.0","repository_url":"https://github.com/in-toto/in-toto-golang"},{"name":"github.com/invopop/jsonschema","old_version":"0.13.0","new_version":"0.14.0","repository_url":"https://github.com/invopop/jsonschema"},{"name":"github.com/jackpal/gateway","old_version":"1.1.1","new_version":"1.2.0","repository_url":"https://github.com/jackpal/gateway"},{"name":"github.com/mark3labs/mcp-go","old_version":"0.47.0","new_version":"0.54.1","repository_url":"https://github.com/mark3labs/mcp-go"},{"name":"github.com/moby/go-archive","old_version":"0.1.0","new_version":"0.2.0","repository_url":"https://github.com/moby/go-archive"},{"name":"github.com/modelcontextprotocol/go-sdk","old_version":"1.4.1","new_version":"1.6.1","repository_url":"https://github.com/modelcontextprotocol/go-sdk"},{"name":"github.com/opencontainers/selinux","old_version":"1.13.1","new_version":"1.15.1","repository_url":"https://github.com/opencontainers/selinux"},{"name":"github.com/package-url/packageurl-go","old_version":"0.1.5","new_version":"0.1.6","repository_url":"https://github.com/package-url/packageurl-go"},{"name":"github.com/tidwall/gjson","old_version":"1.18.0","new_version":"1.19.0","repository_url":"https://github.com/tidwall/gjson"},{"name":"golang.org/x/sys","old_version":"0.44.0","new_version":"0.45.0","repository_url":"https://github.com/golang/sys"},{"name":"google.golang.org/genai","old_version":"1.52.1","new_version":"1.58.0","repository_url":"https://github.com/googleapis/go-genai"},{"name":"google.golang.org/grpc","old_version":"1.80.0","new_version":"1.81.1","repository_url":"https://github.com/grpc/grpc-go"},{"name":"modernc.org/sqlite","old_version":"1.48.1","new_version":"1.51.0"}],"path":null,"ecosystem":"go"},"body":"Bumps the engine group with 32 updates in the / directory:\n\n| Package | From | To |\n| --- | --- | --- |\n| [charm.land/lipgloss/v2](https://github.com/charmbracelet/lipgloss) | `2.0.2` | `2.0.3` |\n| [cloud.google.com/go/secretmanager](https://github.com/googleapis/google-cloud-go) | `1.16.0` | `1.20.0` |\n| [github.com/1password/onepassword-sdk-go](https://github.com/1password/onepassword-sdk-go) | `0.3.1` | `0.4.0` |\n| [github.com/99designs/gqlgen](https://github.com/99designs/gqlgen) | `0.17.89` | `0.17.90` |\n| [github.com/alecthomas/chroma/v2](https://github.com/alecthomas/chroma) | `2.23.1` | `2.26.1` |\n| [github.com/anthropics/anthropic-sdk-go](https://github.com/anthropics/anthropic-sdk-go) | `1.30.0` | `1.46.0` |\n| [github.com/aws/aws-sdk-go-v2](https://github.com/aws/aws-sdk-go-v2) | `1.41.5` | `1.41.9` |\n| [github.com/aws/aws-sdk-go-v2/config](https://github.com/aws/aws-sdk-go-v2) | `1.32.14` | `1.32.20` |\n| [github.com/aws/aws-sdk-go-v2/service/secretsmanager](https://github.com/aws/aws-sdk-go-v2) | `1.41.5` | `1.41.9` |\n| [github.com/aws/aws-sdk-go-v2/service/ssm](https://github.com/aws/aws-sdk-go-v2) | `1.68.4` | `1.68.8` |\n| [github.com/containerd/containerd/api](https://github.com/containerd/containerd) | `1.10.0` | `1.11.1` |\n| [github.com/containerd/containerd/v2](https://github.com/containerd/containerd) | `2.2.3` | `2.3.1` |\n| [github.com/containerd/fuse-overlayfs-snapshotter/v2](https://github.com/containerd/fuse-overlayfs-snapshotter) | `2.1.2` | `2.1.7` |\n| [github.com/containerd/typeurl/v2](https://github.com/containerd/typeurl) | `2.2.3` | `2.3.0` |\n| [github.com/docker/cli](https://github.com/docker/cli) | `29.3.1+incompatible` | `29.5.2+incompatible` |\n| [github.com/docker/go-connections](https://github.com/docker/go-connections) | `0.6.0` | `0.7.0` |\n| [github.com/go-git/go-git/v5](https://github.com/go-git/go-git) | `5.17.2` | `5.19.1` |\n| [github.com/google/go-containerregistry](https://github.com/google/go-containerregistry) | `0.21.4` | `0.21.6` |\n| [github.com/goproxy/goproxy](https://github.com/goproxy/goproxy) | `0.26.0` | `0.26.1` |\n| [github.com/in-toto/in-toto-golang](https://github.com/in-toto/in-toto-golang) | `0.10.0` | `0.11.0` |\n| [github.com/invopop/jsonschema](https://github.com/invopop/jsonschema) | `0.13.0` | `0.14.0` |\n| [github.com/jackpal/gateway](https://github.com/jackpal/gateway) | `1.1.1` | `1.2.0` |\n| [github.com/mark3labs/mcp-go](https://github.com/mark3labs/mcp-go) | `0.47.0` | `0.54.1` |\n| [github.com/moby/go-archive](https://github.com/moby/go-archive) | `0.1.0` | `0.2.0` |\n| [github.com/modelcontextprotocol/go-sdk](https://github.com/modelcontextprotocol/go-sdk) | `1.4.1` | `1.6.1` |\n| [github.com/opencontainers/selinux](https://github.com/opencontainers/selinux) | `1.13.1` | `1.15.1` |\n| [github.com/package-url/packageurl-go](https://github.com/package-url/packageurl-go) | `0.1.5` | `0.1.6` |\n| [github.com/tidwall/gjson](https://github.com/tidwall/gjson) | `1.18.0` | `1.19.0` |\n| [golang.org/x/sys](https://github.com/golang/sys) | `0.44.0` | `0.45.0` |\n| [google.golang.org/genai](https://github.com/googleapis/go-genai) | `1.52.1` | `1.58.0` |\n| [google.golang.org/grpc](https://github.com/grpc/grpc-go) | `1.80.0` | `1.81.1` |\n| [modernc.org/sqlite](https://gitlab.com/cznic/sqlite) | `1.48.1` | `1.51.0` |\n\n\nUpdates `charm.land/lipgloss/v2` from 2.0.2 to 2.0.3\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/charmbracelet/lipgloss/releases\"\u003echarm.land/lipgloss/v2's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev2.0.3\u003c/h2\u003e\n\u003ch2\u003eChangelog\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e472d718e2314596549bee2c0c8ccf8beea5f25ae: fix: Avoid background color query hang (\u003ca href=\"https://redirect.github.com/charmbracelet/lipgloss/issues/636\"\u003e#636\u003c/a\u003e) (\u003ca href=\"https://github.com/jedevc\"\u003e\u003ccode\u003e@​jedevc\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eDocs\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e9e39a0ad4f4fc779d620f17783cee3494da6ae29: docs: fix README typo (\u003ca href=\"https://redirect.github.com/charmbracelet/lipgloss/issues/629\"\u003e#629\u003c/a\u003e) (\u003ca href=\"https://github.com/Rohan5commit\"\u003e\u003ccode\u003e@​Rohan5commit\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ecd93a9f5d2e3cb151da83150db29751d92585d23: docs: fix tree comment typo (\u003ca href=\"https://redirect.github.com/charmbracelet/lipgloss/issues/634\"\u003e#634\u003c/a\u003e) (\u003ca href=\"https://github.com/Rohan5commit\"\u003e\u003ccode\u003e@​Rohan5commit\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003chr /\u003e\n\u003cp\u003e\u003c!-- raw HTML omitted --\u003e\u003c!-- raw HTML omitted --\u003e\u003c!-- raw HTML omitted --\u003e\u003c/p\u003e\n\u003cp\u003eThoughts? Questions? We love hearing from you. Feel free to reach out on \u003ca href=\"https://x.com/charmcli\"\u003eX\u003c/a\u003e, \u003ca href=\"https://charm.land/discord\"\u003eDiscord\u003c/a\u003e, \u003ca href=\"https://charm.land/slack\"\u003eSlack\u003c/a\u003e, \u003ca href=\"https://mastodon.social/@charmcli\"\u003eThe Fediverse\u003c/a\u003e, \u003ca href=\"https://bsky.app/profile/charm.land\"\u003eBluesky\u003c/a\u003e.\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/charmbracelet/lipgloss/commit/472d718e2314596549bee2c0c8ccf8beea5f25ae\"\u003e\u003ccode\u003e472d718\u003c/code\u003e\u003c/a\u003e fix: Avoid background color query hang (\u003ca href=\"https://redirect.github.com/charmbracelet/lipgloss/issues/636\"\u003e#636\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/charmbracelet/lipgloss/commit/89fafbaf3ea3523e6afa6b82fde91fc41fefe45a\"\u003e\u003ccode\u003e89fafba\u003c/code\u003e\u003c/a\u003e chore: bump x/ansi to v0.11.7 to fix width calculation bug\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/charmbracelet/lipgloss/commit/d6d41e14fc7231f118013f5e5a05a9eb8224d7ea\"\u003e\u003ccode\u003ed6d41e1\u003c/code\u003e\u003c/a\u003e chore(deps): bump golang.org/x/sys in the all group (\u003ca href=\"https://redirect.github.com/charmbracelet/lipgloss/issues/663\"\u003e#663\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/charmbracelet/lipgloss/commit/23a1bb1ed311e489eadb6c8f3cf53e20cfcc9338\"\u003e\u003ccode\u003e23a1bb1\u003c/code\u003e\u003c/a\u003e chore(deps): bump github.com/lucasb-eyer/go-colorful in the all group (\u003ca href=\"https://redirect.github.com/charmbracelet/lipgloss/issues/640\"\u003e#640\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/charmbracelet/lipgloss/commit/cd93a9f5d2e3cb151da83150db29751d92585d23\"\u003e\u003ccode\u003ecd93a9f\u003c/code\u003e\u003c/a\u003e docs: fix tree comment typo (\u003ca href=\"https://redirect.github.com/charmbracelet/lipgloss/issues/634\"\u003e#634\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/charmbracelet/lipgloss/commit/25c5fb25df7b44558aa3678aa21f0a678e499602\"\u003e\u003ccode\u003e25c5fb2\u003c/code\u003e\u003c/a\u003e chore(deps): bump github.com/charmbracelet/colorprofile in the all group (\u003ca href=\"https://redirect.github.com/charmbracelet/lipgloss/issues/630\"\u003e#630\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/charmbracelet/lipgloss/commit/9e39a0ad4f4fc779d620f17783cee3494da6ae29\"\u003e\u003ccode\u003e9e39a0a\u003c/code\u003e\u003c/a\u003e docs: fix README typo (\u003ca href=\"https://redirect.github.com/charmbracelet/lipgloss/issues/629\"\u003e#629\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/charmbracelet/lipgloss/compare/v2.0.2...v2.0.3\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `cloud.google.com/go/secretmanager` from 1.16.0 to 1.20.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/googleapis/google-cloud-go/releases\"\u003ecloud.google.com/go/secretmanager's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eworkflows: v1.19.0\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/googleapis/google-cloud-go/compare/workflows/v1.18.0...workflows/v1.19.0\"\u003ev1.19.0\u003c/a\u003e (2026-05-07)\u003c/h2\u003e\n\u003ch2\u003estoragetransfer: v1.18.0\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/googleapis/google-cloud-go/compare/storagetransfer/v1.17.0...storagetransfer/v1.18.0\"\u003ev1.18.0\u003c/a\u003e (2026-05-07)\u003c/h2\u003e\n\u003ch2\u003eservicedirectory: v1.17.0\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/googleapis/google-cloud-go/compare/servicedirectory/v1.16.0...servicedirectory/v1.17.0\"\u003ev1.17.0\u003c/a\u003e (2026-05-07)\u003c/h2\u003e\n\u003ch2\u003etranslate: v1.17.0\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/googleapis/google-cloud-go/compare/translate/v1.16.0...translate/v1.17.0\"\u003ev1.17.0\u003c/a\u003e (2026-05-07)\u003c/h2\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/googleapis/google-cloud-go/blob/main/documentai/CHANGES.md\"\u003ecloud.google.com/go/secretmanager's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/googleapis/google-cloud-go/compare/documentai/v1.19.0...documentai/v1.20.0\"\u003e1.20.0\u003c/a\u003e (2023-06-20)\u003c/h2\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003edocumentai:\u003c/strong\u003e Add StyleInfo to document.proto (\u003ca href=\"https://github.com/googleapis/google-cloud-go/commit/b726d413166faa8c84c0a09c6019ff50f3249b9d\"\u003eb726d41\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003edocumentai:\u003c/strong\u003e Add StyleInfo to document.proto (\u003ca href=\"https://github.com/googleapis/google-cloud-go/commit/b726d413166faa8c84c0a09c6019ff50f3249b9d\"\u003eb726d41\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003edocumentai:\u003c/strong\u003e REST query UpdateMask bug (\u003ca href=\"https://github.com/googleapis/google-cloud-go/commit/df52820b0e7721954809a8aa8700b93c5662dc9b\"\u003edf52820\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/googleapis/google-cloud-go/compare/documentai/v1.18.1...documentai/v1.19.0\"\u003e1.19.0\u003c/a\u003e (2023-05-30)\u003c/h2\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003edocumentai:\u003c/strong\u003e Update all direct dependencies (\u003ca href=\"https://github.com/googleapis/google-cloud-go/commit/b340d030f2b52a4ce48846ce63984b28583abde6\"\u003eb340d03\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/googleapis/google-cloud-go/compare/documentai/v1.18.0...documentai/v1.18.1\"\u003e1.18.1\u003c/a\u003e (2023-05-08)\u003c/h2\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003edocumentai:\u003c/strong\u003e Update grpc to v1.55.0 (\u003ca href=\"https://github.com/googleapis/google-cloud-go/commit/1147ce02a990276ca4f8ab7a1ab65c14da4450ef\"\u003e1147ce0\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/googleapis/google-cloud-go/compare/documentai/v1.17.0...documentai/v1.18.0\"\u003e1.18.0\u003c/a\u003e (2023-03-22)\u003c/h2\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003edocumentai:\u003c/strong\u003e Add ImportProcessorVersion in v1beta3 (\u003ca href=\"https://github.com/googleapis/google-cloud-go/commit/c967961ed95750e173af0193ec8d0974471f43ff\"\u003ec967961\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/googleapis/google-cloud-go/compare/documentai/v1.16.0...documentai/v1.17.0\"\u003e1.17.0\u003c/a\u003e (2023-03-15)\u003c/h2\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003edocumentai:\u003c/strong\u003e Added hints.language_hints field in OcrConfig (\u003ca href=\"https://redirect.github.com/googleapis/google-cloud-go/issues/7522\"\u003e#7522\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-cloud-go/commit/b2c40c3df916691b82f1b384eac5bc953960960a\"\u003eb2c40c3\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/googleapis/google-cloud-go/commit/47bb902e48695e5f0c46f7bee00d72ae5f794e1e\"\u003e\u003ccode\u003e47bb902\u003c/code\u003e\u003c/a\u003e chore: release main (\u003ca href=\"https://redirect.github.com/googleapis/google-cloud-go/issues/10988\"\u003e#10988\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/googleapis/google-cloud-go/commit/2b8ca4b4127ce3025c7a21cc7247510e07cc5625\"\u003e\u003ccode\u003e2b8ca4b\u003c/code\u003e\u003c/a\u003e chore: add Protobuf warning to release notes (\u003ca href=\"https://redirect.github.com/googleapis/google-cloud-go/issues/11025\"\u003e#11025\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/googleapis/google-cloud-go/commit/8bb87d56af1cba736e0fe243979723e747e5e11e\"\u003e\u003ccode\u003e8bb87d5\u003c/code\u003e\u003c/a\u003e chore: update google.golang.org/api to v0.203.0 (\u003ca href=\"https://redirect.github.com/googleapis/google-cloud-go/issues/11022\"\u003e#11022\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/googleapis/google-cloud-go/commit/d40fbff9c1984aeed0224a4ac93eb95c5af17126\"\u003e\u003ccode\u003ed40fbff\u003c/code\u003e\u003c/a\u003e fix(storage): Skip only specific transport tests. (\u003ca href=\"https://redirect.github.com/googleapis/google-cloud-go/issues/11016\"\u003e#11016\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/googleapis/google-cloud-go/commit/ff06fc220a2457e57c9e904c9aae1ab7a283521f\"\u003e\u003ccode\u003eff06fc2\u003c/code\u003e\u003c/a\u003e fix: Fix default service account tests on GCE. (\u003ca href=\"https://redirect.github.com/googleapis/google-cloud-go/issues/11021\"\u003e#11021\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/googleapis/google-cloud-go/commit/6071167b8020c2190109035451a45aed28cc0061\"\u003e\u003ccode\u003e6071167\u003c/code\u003e\u003c/a\u003e feat(alloydb): add new PSC instance configuration setting and output the PSC ...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/googleapis/google-cloud-go/commit/15eacb97ec27d3869cd554d6983433fbf82d0b4a\"\u003e\u003ccode\u003e15eacb9\u003c/code\u003e\u003c/a\u003e chore: update SA used for tests (\u003ca href=\"https://redirect.github.com/googleapis/google-cloud-go/issues/11018\"\u003e#11018\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/googleapis/google-cloud-go/commit/e78389d1cf8ea4af49bfef76a36a08cb5f484b95\"\u003e\u003ccode\u003ee78389d\u003c/code\u003e\u003c/a\u003e chore: fix doc publish creds (\u003ca href=\"https://redirect.github.com/googleapis/google-cloud-go/issues/11019\"\u003e#11019\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/googleapis/google-cloud-go/commit/1d7ee9f526fdb4d8e2210cc41030effe2c8d36e7\"\u003e\u003ccode\u003e1d7ee9f\u003c/code\u003e\u003c/a\u003e chore(main): release auth 0.9.9 (\u003ca href=\"https://redirect.github.com/googleapis/google-cloud-go/issues/11003\"\u003e#11003\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/googleapis/google-cloud-go/commit/6e69d2e85849002bad227ea5bebcde9199605bef\"\u003e\u003ccode\u003e6e69d2e\u003c/code\u003e\u003c/a\u003e feat(texttospeech): add brand voice lite, which lets you clone a voice with j...\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/googleapis/google-cloud-go/compare/kms/v1.16.0...dlp/v1.20.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `github.com/1password/onepassword-sdk-go` from 0.3.1 to 0.4.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/1password/onepassword-sdk-go/releases\"\u003egithub.com/1password/onepassword-sdk-go's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eRelease 0.4.0\u003c/h2\u003e\n\u003ch1\u003e1Password Go SDK v0.4.0\u003c/h1\u003e\n\u003ch2\u003eNEW\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eDesktop App integration:\u003c/strong\u003e The SDK can now authenticate via an authorization prompt from the 1Password app.\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eVault CRUDL:\u003c/strong\u003e You can now fully manage 1Password vaults with the SDK, including creating, reading, updating, deleting and listing.\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eVault group permission management operations:\u003c/strong\u003e You can now grant, update and revoke group access to vaults using \u003ccode\u003egrantGroupPermissions\u003c/code\u003e, \u003ccode\u003eupdateGroupPermissions\u003c/code\u003e, and \u003ccode\u003erevokeGroupPermissions\u003c/code\u003e functions.\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eItem batch management:\u003c/strong\u003e You can now retrieve, create, update and delete items in batch, enabling more scalable item management.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eRelease 0.4.0-beta.2\u003c/h2\u003e\n\u003ch1\u003e1Password Go SDK v0.4.0-beta.2\u003c/h1\u003e\n\u003ch2\u003eNEW\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eVault group permission management operations:\u003c/strong\u003e You can now grant, update and revoke group access to vaults using \u003ccode\u003eGrantGroupPermissions\u003c/code\u003e, \u003ccode\u003eUpdateGroupPermissions\u003c/code\u003e, and \u003ccode\u003eRevokeGroupPermissions\u003c/code\u003e functions.\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eDesktop App integration on Windows:\u003c/strong\u003e The SDK can now authenticate via an authorization prompt from the 1Password app on Windows as well. Now all major desktop OSs support this feature.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eFIXED\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eVault listing with additional parameters:\u003c/strong\u003e \u003ccode\u003eVaults().List\u003c/code\u003e no longer errors when additional parameters are provided.\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eHandling locked 1Password app state:\u003c/strong\u003e When the 1Password app gets locked after the SDK client is authenticated, it will now automatically re-authenticate.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eRelease 0.4.0-beta.1\u003c/h2\u003e\n\u003ch1\u003e1Password Go SDK v0.4.0-beta.1\u003c/h1\u003e\n\u003ch2\u003eNEW\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eThe SDK can now authenticate with the Desktop App.\u003c/li\u003e\n\u003cli\u003eVault \u003ccode\u003eGet\u003c/code\u003e, \u003ccode\u003eGetOverview\u003c/code\u003e as well as new options for vault \u003ccode\u003eList\u003c/code\u003e are now available.\u003c/li\u003e\n\u003cli\u003eItem batch operations are now available.\u003c/li\u003e\n\u003cli\u003eThe Groups API has been introduced.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/1Password/onepassword-sdk-go/commit/d0f8afa3413b85fd22bac5e6ab2fbee550c17169\"\u003e\u003ccode\u003ed0f8afa\u003c/code\u003e\u003c/a\u003e Update notes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/1Password/onepassword-sdk-go/commit/6e24bc3f15761bedb052cf63b3fede06439b933d\"\u003e\u003ccode\u003e6e24bc3\u003c/code\u003e\u003c/a\u003e Release v0.4.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/1Password/onepassword-sdk-go/commit/ee80f4c52f796b3aceff5fc46f756d2ce32d34a5\"\u003e\u003ccode\u003eee80f4c\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/1password/onepassword-sdk-go/issues/249\"\u003e#249\u003c/a\u003e from 1Password/morgan/add-vault-group-operations-exam...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/1Password/onepassword-sdk-go/commit/2a46d8e1314c8682c74dd1d5808cd2f7c2d06f1a\"\u003e\u003ccode\u003e2a46d8e\u003c/code\u003e\u003c/a\u003e removed vault crudl operations from service account examples\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/1Password/onepassword-sdk-go/commit/26c7319f6830091ce71619ea7af83cf7076825ee\"\u003e\u003ccode\u003e26c7319\u003c/code\u003e\u003c/a\u003e formatted variable names. Removed create vault example from service account t...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/1Password/onepassword-sdk-go/commit/8d5d8a64f2defd9689baca68e4a1ca5a7121ac9a\"\u003e\u003ccode\u003e8d5d8a6\u003c/code\u003e\u003c/a\u003e reverted import change so it's contained within docs\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/1Password/onepassword-sdk-go/commit/b99ef4609ab857371790e56447776617a9836327\"\u003e\u003ccode\u003eb99ef46\u003c/code\u003e\u003c/a\u003e Merge branch 'main' into morgan/add-vault-group-operations-examples\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/1Password/onepassword-sdk-go/commit/47716edd199fbb239175a8c6386f335245a2d620\"\u003e\u003ccode\u003e47716ed\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/1password/onepassword-sdk-go/issues/251\"\u003e#251\u003c/a\u003e from 1Password/beta\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/1Password/onepassword-sdk-go/commit/5e5ee00644599b84681f0618292f6da272e4d0e2\"\u003e\u003ccode\u003e5e5ee00\u003c/code\u003e\u003c/a\u003e removed group functionality from service account example\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/1Password/onepassword-sdk-go/commit/35aa35cf03c08b29886b62d7a11dadf7c2582a05\"\u003e\u003ccode\u003e35aa35c\u003c/code\u003e\u003c/a\u003e fixed golangca lint error\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/1password/onepassword-sdk-go/compare/v0.3.1...v0.4.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `github.com/99designs/gqlgen` from 0.17.89 to 0.17.90\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/99designs/gqlgen/releases\"\u003egithub.com/99designs/gqlgen's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev0.17.90\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003efix: add locations to resolver error responses by \u003ca href=\"https://github.com/florinel-chis\"\u003e\u003ccode\u003e@​florinel-chis\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/99designs/gqlgen/pull/4090\"\u003e99designs/gqlgen#4090\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix: return 500 instead of 422 for panic recovery by \u003ca href=\"https://github.com/PavelStefanov\"\u003e\u003ccode\u003e@​PavelStefanov\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/99designs/gqlgen/pull/4098\"\u003e99designs/gqlgen#4098\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eRemove use_light_mode_prefetch docs by \u003ca href=\"https://github.com/henrywoody\"\u003e\u003ccode\u003e@​henrywoody\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/99designs/gqlgen/pull/4101\"\u003e99designs/gqlgen#4101\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003erefactor: fix modernize lint issues by \u003ca href=\"https://github.com/alexandear\"\u003e\u003ccode\u003e@​alexandear\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/99designs/gqlgen/pull/4111\"\u003e99designs/gqlgen#4111\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFeature/field requested condition by \u003ca href=\"https://github.com/parkerroan\"\u003e\u003ccode\u003e@​parkerroan\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/99designs/gqlgen/pull/4113\"\u003e99designs/gqlgen#4113\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBugfix/4102 input object dir with arg by \u003ca href=\"https://github.com/parkerroan\"\u003e\u003ccode\u003e@​parkerroan\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/99designs/gqlgen/pull/4112\"\u003e99designs/gqlgen#4112\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix panic in transport on null body by \u003ca href=\"https://github.com/jeolted\"\u003e\u003ccode\u003e@​jeolted\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/99designs/gqlgen/pull/4115\"\u003e99designs/gqlgen#4115\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix gosec G115 integer overflow in generated atomic.AddInt32 call by \u003ca href=\"https://github.com/3rg0n\"\u003e\u003ccode\u003e@​3rg0n\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/99designs/gqlgen/pull/4120\"\u003e99designs/gqlgen#4120\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efeat: deduplicate Child field context switches and scalar fieldContex… by \u003ca href=\"https://github.com/syssam\"\u003e\u003ccode\u003e@​syssam\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/99designs/gqlgen/pull/4086\"\u003e99designs/gqlgen#4086\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix: directive-only schema files break \u003ccode\u003efollow-schema\u003c/code\u003e code generation by \u003ca href=\"https://github.com/StevenACoffman\"\u003e\u003ccode\u003e@​StevenACoffman\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/99designs/gqlgen/pull/4141\"\u003e99designs/gqlgen#4141\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUpdate gqlparser to v2.5.33 see \u003ca href=\"https://github.com/vektah/gqlparser/releases/tag/v2_5_33\"\u003ehttps://github.com/vektah/gqlparser/releases/tag/v2_5_33\u003c/a\u003e by \u003ca href=\"https://github.com/StevenACoffman\"\u003e\u003ccode\u003e@​StevenACoffman\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/99designs/gqlgen/pull/4142\"\u003e99designs/gqlgen#4142\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eReduce template logic: Part 1 ECDot by \u003ca href=\"https://github.com/StevenACoffman\"\u003e\u003ccode\u003e@​StevenACoffman\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/99designs/gqlgen/pull/4144\"\u003e99designs/gqlgen#4144\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eReduce Template Logic Part 2 by \u003ca href=\"https://github.com/StevenACoffman\"\u003e\u003ccode\u003e@​StevenACoffman\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/99designs/gqlgen/pull/4145\"\u003e99designs/gqlgen#4145\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ePart 3 - reduce template logic: Unify ProcessArgField and ProcessArgFieldWithEC by \u003ca href=\"https://github.com/StevenACoffman\"\u003e\u003ccode\u003e@​StevenACoffman\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/99designs/gqlgen/pull/4146\"\u003e99designs/gqlgen#4146\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps): bump the npm_and_yarn group across 1 directory with 1 update by \u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/99designs/gqlgen/pull/4099\"\u003e99designs/gqlgen#4099\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps-dev): bump vitest from 4.0.18 to 4.1.0 in /integration by \u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/99designs/gqlgen/pull/4078\"\u003e99designs/gqlgen#4078\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps): bump github.com/urfave/cli/v3 from 3.7.0 to 3.8.0 by \u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/99designs/gqlgen/pull/4103\"\u003e99designs/gqlgen#4103\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps-dev): bump graphql-ws from 6.0.7 to 6.0.8 in /integration by \u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/99designs/gqlgen/pull/4104\"\u003e99designs/gqlgen#4104\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps): bump mikepenz/action-junit-report from 6.3.1 to 6.4.0 by \u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/99designs/gqlgen/pull/4110\"\u003e99designs/gqlgen#4110\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps-dev): bump graphql from 16.13.1 to 16.13.2 in /integration by \u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/99designs/gqlgen/pull/4106\"\u003e99designs/gqlgen#4106\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps): bump typescript from 5.9.3 to 6.0.2 in /_examples/chat by \u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/99designs/gqlgen/pull/4108\"\u003e99designs/gqlgen#4108\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps-dev): bump typescript from 5.9.3 to 6.0.2 in /integration by \u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/99designs/gqlgen/pull/4105\"\u003e99designs/gqlgen#4105\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps): bump actions/setup-go from 6.3.0 to 6.4.0 by \u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/99designs/gqlgen/pull/4109\"\u003e99designs/gqlgen#4109\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps-dev): bump vitest from 4.1.1 to 4.1.2 in /integration by \u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/99designs/gqlgen/pull/4107\"\u003e99designs/gqlgen#4107\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps): bump dawidd6/action-download-artifact from 19 to 20 by \u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/99designs/gqlgen/pull/4116\"\u003e99designs/gqlgen#4116\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps): bump golang.org/x/text from 0.34.0 to 0.35.0 in /_examples by \u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/99designs/gqlgen/pull/4075\"\u003e99designs/gqlgen#4075\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps): bump the npm_and_yarn group across 1 directory with 2 updates by \u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/99designs/gqlgen/pull/4118\"\u003e99designs/gqlgen#4118\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps-dev): bump vitest from 4.1.2 to 4.1.4 in /integration by \u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/99designs/gqlgen/pull/4125\"\u003e99designs/gqlgen#4125\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps-dev): bump \u003ccode\u003e@​apollo/client\u003c/code\u003e from 4.1.6 to 4.1.7 in /integration by \u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/99designs/gqlgen/pull/4126\"\u003e99designs/gqlgen#4126\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps): bump actions/upload-artifact from 7.0.0 to 7.0.1 by \u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/99designs/gqlgen/pull/4127\"\u003e99designs/gqlgen#4127\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps): bump golang.org/x/text from 0.35.0 to 0.36.0 in /_examples by \u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/99designs/gqlgen/pull/4124\"\u003e99designs/gqlgen#4124\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps): bump github.com/jackc/pgx/v5 from 5.7.4 to 5.9.0 in /_examples/mini-habr-with-subscriptions in the go_modules group across 1 directory by \u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/99designs/gqlgen/pull/4128\"\u003e99designs/gqlgen#4128\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps): bump github.com/jackc/pgx/v5 from 5.9.0 to 5.9.2 in /_examples/mini-habr-with-subscriptions in the go_modules group across 1 directory by \u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/99designs/gqlgen/pull/4139\"\u003e99designs/gqlgen#4139\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps): bump robherley/go-test-action from 0.7.1 to 1.0.0 by \u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/99designs/gqlgen/pull/4137\"\u003e99designs/gqlgen#4137\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps): bump actions/setup-node from 6.3.0 to 6.4.0 by \u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/99designs/gqlgen/pull/4136\"\u003e99designs/gqlgen#4136\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps-dev): bump \u003ccode\u003e@​graphql-codegen/introspection\u003c/code\u003e from 5.0.1 to 5.0.2 in /integration by \u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/99designs/gqlgen/pull/4134\"\u003e99designs/gqlgen#4134\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps-dev): bump \u003ccode\u003e@​graphql-codegen/cli\u003c/code\u003e from 6.2.1 to 6.3.1 in /integration by \u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/99designs/gqlgen/pull/4135\"\u003e99designs/gqlgen#4135\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps-dev): bump urql from 5.0.1 to 5.0.2 in /integration by \u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/99designs/gqlgen/pull/4133\"\u003e99designs/gqlgen#4133\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps): bump github.com/PuerkitoBio/goquery from 1.11.0 to 1.12.0 by \u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/99designs/gqlgen/pull/4076\"\u003e99designs/gqlgen#4076\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps): bump golang.org/x/tools from 0.42.0 to 0.44.0 by \u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/99designs/gqlgen/pull/4122\"\u003e99designs/gqlgen#4122\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps): bump golang.org/x/text from 0.35.0 to 0.36.0 by \u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/99designs/gqlgen/pull/4123\"\u003e99designs/gqlgen#4123\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps): bump github.com/mattn/go-isatty from 0.0.20 to 0.0.21 by \u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/99designs/gqlgen/pull/4130\"\u003e99designs/gqlgen#4130\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps-dev): bump postcss from 8.5.9 to 8.5.10 in /integration in the npm_and_yarn group across 1 directory by \u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/99designs/gqlgen/pull/4143\"\u003e99designs/gqlgen#4143\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eNew Contributors\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/florinel-chis\"\u003e\u003ccode\u003e@​florinel-chis\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/99designs/gqlgen/pull/4090\"\u003e99designs/gqlgen#4090\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PavelStefanov\"\u003e\u003ccode\u003e@​PavelStefanov\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/99designs/gqlgen/pull/4098\"\u003e99designs/gqlgen#4098\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/henrywoody\"\u003e\u003ccode\u003e@​henrywoody\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/99designs/gqlgen/pull/4101\"\u003e99designs/gqlgen#4101\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/99designs/gqlgen/commit/0945c8330037e838af683851b40983ede8df60d5\"\u003e\u003ccode\u003e0945c83\u003c/code\u003e\u003c/a\u003e release v0.17.90\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/99designs/gqlgen/commit/4a2c5d8022a73f2aefbe9d608f3932eef9ff9562\"\u003e\u003ccode\u003e4a2c5d8\u003c/code\u003e\u003c/a\u003e Part 3 - reduce template logic (\u003ca href=\"https://redirect.github.com/99designs/gqlgen/issues/4146\"\u003e#4146\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/99designs/gqlgen/commit/8b08751435cfe3c80a1de5319b58eaf8f6b5d31e\"\u003e\u003ccode\u003e8b08751\u003c/code\u003e\u003c/a\u003e Reduce Template Logic Part 2 (\u003ca href=\"https://redirect.github.com/99designs/gqlgen/issues/4145\"\u003e#4145\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/99designs/gqlgen/commit/8c35336ad3a074f07ee1578d32f9011772780ab8\"\u003e\u003ccode\u003e8c35336\u003c/code\u003e\u003c/a\u003e Reduce template logic: Part 1 ECDot (\u003ca href=\"https://redirect.github.com/99designs/gqlgen/issues/4144\"\u003e#4144\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/99designs/gqlgen/commit/bdeb6efa2bfffecce889d5fcc1da8605d75461ef\"\u003e\u003ccode\u003ebdeb6ef\u003c/code\u003e\u003c/a\u003e chore(deps-dev): bump postcss (\u003ca href=\"https://redirect.github.com/99designs/gqlgen/issues/4143\"\u003e#4143\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/99designs/gqlgen/commit/6e8a0482c5ef35b757321afdb1f5ab42954ad1a7\"\u003e\u003ccode\u003e6e8a048\u003c/code\u003e\u003c/a\u003e Update gqlparser to v2.5.33 see \u003ca href=\"https://github.com/vektah/gqlparser/releases/\"\u003ehttps://github.com/vektah/gqlparser/releases/\u003c/a\u003e...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/99designs/gqlgen/commit/e3f5362536a60f15e5973840f5d1b7cd43d5f7cc\"\u003e\u003ccode\u003ee3f5362\u003c/code\u003e\u003c/a\u003e Revise PR \u003ca href=\"https://redirect.github.com/99designs/gqlgen/issues/4121\"\u003e#4121\u003c/a\u003e from \u003ca href=\"https://github.com/toga4\"\u003e\u003ccode\u003e@​toga4\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/99designs/gqlgen/issues/4141\"\u003e#4141\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/99designs/gqlgen/commit/3ab446064e85efeda6de5e5a9c014ff3e1c0ffe0\"\u003e\u003ccode\u003e3ab4460\u003c/code\u003e\u003c/a\u003e feat: deduplicate Child field context switches and scalar fieldContex… (\u003ca href=\"https://redirect.github.com/99designs/gqlgen/issues/4086\"\u003e#4086\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/99designs/gqlgen/commit/2d63840966b8a2e3704f8ddb6445015854158b39\"\u003e\u003ccode\u003e2d63840\u003c/code\u003e\u003c/a\u003e chore(deps): bump github.com/mattn/go-isatty from 0.0.20 to 0.0.21 (\u003ca href=\"https://redirect.github.com/99designs/gqlgen/issues/4130\"\u003e#4130\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/99designs/gqlgen/commit/39d244a30d330c3605f3cb3ade0c7c3e95d6067d\"\u003e\u003ccode\u003e39d244a\u003c/code\u003e\u003c/a\u003e Fix go.sum\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/99designs/gqlgen/compare/v0.17.89...v0.17.90\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `github.com/alecthomas/chroma/v2` from 2.23.1 to 2.26.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/alecthomas/chroma/releases\"\u003egithub.com/alecthomas/chroma/v2's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev2.26.1\u003c/h2\u003e\n\u003ch2\u003eChangelog\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e56c7702 fix: downgrade go.mod version to 1.25\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev2.26.0\u003c/h2\u003e\n\u003ch2\u003eChangelog\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003ea4d3f60 feat(chromad): use style counterparts for theme switching\u003c/li\u003e\n\u003cli\u003ece159e6 chore: migrate to new bit format\u003c/li\u003e\n\u003cli\u003e180ea9f perf(colour): replace Sprintf/ParseUint round-trip in NewColour with direct bit arithmetic (\u003ca href=\"https://redirect.github.com/alecthomas/chroma/issues/1274\"\u003e#1274\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e68a08b0 docs: how to support dynamic theme switching\u003c/li\u003e\n\u003cli\u003e6fb9d92 feat(html): tag output with style mode\u003c/li\u003e\n\u003cli\u003ea71fea3 feat(styles): add light/dark mode support\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev2.25.0\u003c/h2\u003e\n\u003ch2\u003eChangelog\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003ec3826f0 chore: go mod tidy\u003c/li\u003e\n\u003cli\u003efb5bc39 fix: emit HTTP body tokens without Coalesce\u003c/li\u003e\n\u003cli\u003ea3c2946 Improve Nu file detection (\u003ca href=\"https://redirect.github.com/alecthomas/chroma/issues/1260\"\u003e#1260\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ee841b1a chore(deps): update all non-major dependencies (\u003ca href=\"https://redirect.github.com/alecthomas/chroma/issues/1272\"\u003e#1272\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e3ed2db8 Add Gemfile.lock lexer (\u0026amp; ruby improvements) (\u003ca href=\"https://redirect.github.com/alecthomas/chroma/issues/1269\"\u003e#1269\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e41fb546 Add YAML+Jinja lexer (\u003ca href=\"https://redirect.github.com/alecthomas/chroma/issues/1268\"\u003e#1268\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ee99b881 chore(deps): update all non-major dependencies (\u003ca href=\"https://redirect.github.com/alecthomas/chroma/issues/1263\"\u003e#1263\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ee67dd2f (Markless) Fix parse issue for embed directives without options (\u003ca href=\"https://redirect.github.com/alecthomas/chroma/issues/1266\"\u003e#1266\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003edffa370 fix(go): tokenize trailing // as comment instead of consuming next line (\u003ca href=\"https://redirect.github.com/alecthomas/chroma/issues/1265\"\u003e#1265\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e1cf1560 chore: upgrade to github.com/dlclark/regexp2/v2\u003c/li\u003e\n\u003cli\u003e2cbcf7b chore: upgrade golangci-lint\u003c/li\u003e\n\u003cli\u003e786675b chore(deps): update all non-major dependencies (\u003ca href=\"https://redirect.github.com/alecthomas/chroma/issues/1257\"\u003e#1257\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e235590c feat: add JSONL support to JSON lexer (\u003ca href=\"https://redirect.github.com/alecthomas/chroma/issues/1262\"\u003e#1262\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ef9b5c97 fix(dart): match single-line comments without trailing newline (\u003ca href=\"https://redirect.github.com/alecthomas/chroma/issues/1225\"\u003e#1225\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/alecthomas/chroma/issues/1261\"\u003e#1261\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e097f8e9 Mention Arturo in README (\u003ca href=\"https://redirect.github.com/alecthomas/chroma/issues/1256\"\u003e#1256\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ed46ce60 feat(markdown): highlight frontmatter and comments (\u003ca href=\"https://redirect.github.com/alecthomas/chroma/issues/1245\"\u003e#1245\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ef786b2a feat(lexers): add support for LilyPond (\u003ca href=\"https://redirect.github.com/alecthomas/chroma/issues/1255\"\u003e#1255\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e0a02b98 chore(deps): update actions/checkout digest to de0fac2 (\u003ca href=\"https://redirect.github.com/alecthomas/chroma/issues/1212\"\u003e#1212\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ec55009e Fix AGENTS.md referencing a non-existent scripts directory (\u003ca href=\"https://redirect.github.com/alecthomas/chroma/issues/1231\"\u003e#1231\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ec5e763e Improve protobuf lexer (\u003ca href=\"https://redirect.github.com/alecthomas/chroma/issues/1253\"\u003e#1253\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e113cd0e Add Arturo lexer (\u003ca href=\"https://redirect.github.com/alecthomas/chroma/issues/1232\"\u003e#1232\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e4498d71 chore(deps): update dependency binaryen to v129 (\u003ca href=\"https://redirect.github.com/alecthomas/chroma/issues/1238\"\u003e#1238\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e885f912 Added f4 to \u0026quot;Projects using Chroma\u0026quot; list (\u003ca href=\"https://redirect.github.com/alecthomas/chroma/issues/1242\"\u003e#1242\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ec42c9ef Update java lexer (\u003ca href=\"https://redirect.github.com/alecthomas/chroma/issues/1254\"\u003e#1254\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev2.24.1\u003c/h2\u003e\n\u003ch2\u003eChangelog\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003ed2a3784 fix: fallback bug\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev2.24.0\u003c/h2\u003e\n\u003ch2\u003eChangelog\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e0b841ee chore: go mod tidy\u003c/li\u003e\n\u003cli\u003e10fcb68 chore(deps): update ubuntu docker tag to v26 (\u003ca href=\"https://redirect.github.com/alecthomas/chroma/issues/1251\"\u003e#1251\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e2218de6 chore(deps): update all non-major dependencies (\u003ca href=\"https://redirect.github.com/alecthomas/chroma/issues/1236\"\u003e#1236\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e2099887 Update Solarized Light to use correct background color (\u003ca href=\"https://redirect.github.com/alecthomas/chroma/issues/1250\"\u003e#1250\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/alecthomas/chroma/commit/56c7702e16f3bf78b335c57cdd5af8f8b493f1c6\"\u003e\u003ccode\u003e56c7702\u003c/code\u003e\u003c/a\u003e fix: downgrade go.mod version to 1.25\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/alecthomas/chroma/commit/a4d3f60813272352474a6ecda93270487d20a9ee\"\u003e\u003ccode\u003ea4d3f60\u003c/code\u003e\u003c/a\u003e feat(chromad): use style counterparts for theme switching\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/alecthomas/chroma/commit/ce159e61b0d7234beba95e25e25464ea90324d1f\"\u003e\u003ccode\u003ece159e6\u003c/code\u003e\u003c/a\u003e chore: migrate to new bit format\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/alecthomas/chroma/commit/180ea9f54dce4c7b7241944110fc0e01bffae913\"\u003e\u003ccode\u003e180ea9f\u003c/code\u003e\u003c/a\u003e perf(colour): replace Sprintf/ParseUint round-trip in NewColour with direct b...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/alecthomas/chroma/commit/68a08b0f9a1f4edeaadd0ef9fbbc2945b5a02adf\"\u003e\u003ccode\u003e68a08b0\u003c/code\u003e\u003c/a\u003e docs: how to support dynamic theme switching\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/alecthomas/chroma/commit/6fb9d920b575be857c7322f79699fd92e3645e2f\"\u003e\u003ccode\u003e6fb9d92\u003c/code\u003e\u003c/a\u003e feat(html): tag output with style mode\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/alecthomas/chroma/commit/a71fea34358d2b9f75c0d5be2002a5293633116d\"\u003e\u003ccode\u003ea71fea3\u003c/code\u003e\u003c/a\u003e feat(styles): add light/dark mode support\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/alecthomas/chroma/commit/c3826f007cb719dfba2e331ee356c9f0d521dbad\"\u003e\u003ccode\u003ec3826f0\u003c/code\u003e\u003c/a\u003e chore: go mod tidy\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/alecthomas/chroma/commit/fb5bc39d407d3d39fb71f010683a2d4b6211da2f\"\u003e\u003ccode\u003efb5bc39\u003c/code\u003e\u003c/a\u003e fix: emit HTTP body tokens without Coalesce\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/alecthomas/chroma/commit/a3c2946ab1b0af692b2087b9f54e70f87a7b0295\"\u003e\u003ccode\u003ea3c2946\u003c/code\u003e\u003c/a\u003e Improve Nu file detection (\u003ca href=\"https://redirect.github.com/alecthomas/chroma/issues/1260\"\u003e#1260\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/alecthomas/chroma/compare/v2.23.1...v2.26.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `github.com/anthropics/anthropic-sdk-go` from 1.30.0 to 1.46.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/anthropics/anthropic-sdk-go/releases\"\u003egithub.com/anthropics/anthropic-sdk-go's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev1.46.0\u003c/h2\u003e\n\u003ch2\u003e1.46.0 (2026-05-28)\u003c/h2\u003e\n\u003cp\u003eFull Changelog: \u003ca href=\"https://github.com/anthropics/anthropic-sdk-go/compare/v1.45.0...v1.46.0\"\u003ev1.45.0...v1.46.0\u003c/a\u003e\u003c/p\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eapi:\u003c/strong\u003e Add support for claude-opus-4-8, mid-conversation system blocks, and usage.output_tokens_details (\u003ca href=\"https://github.com/anthropics/anthropic-sdk-go/commit/4cd860b8bd5365709f7f86466f449797a5f01875\"\u003e4cd860b\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003esupport custom file size caps (\u003ca href=\"https://redirect.github.com/anthropics/anthropic-sdk-go/issues/876\"\u003e#876\u003c/a\u003e) (\u003ca href=\"https://github.com/anthropics/anthropic-sdk-go/commit/99634e85815be2215a8beb05f2deeec895133b3b\"\u003e99634e8\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eChores\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eexamples:\u003c/strong\u003e rename managed-agents private-sandbox-worker to self-hosted-sandbox-worker (\u003ca href=\"https://redirect.github.com/anthropics/anthropic-sdk-go/issues/873\"\u003e#873\u003c/a\u003e) (\u003ca href=\"https://github.com/anthropics/anthropic-sdk-go/commit/07d3e461f094d40a1bcf25fa8cefee7a90835193\"\u003e07d3e46\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eDocumentation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003ereplace literal newlines (\u003ca href=\"https://github.com/anthropics/anthropic-sdk-go/commit/cbb7ea55b131f492753ce9fdcfc73df2847daafd\"\u003ecbb7ea5\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev1.45.0\u003c/h2\u003e\n\u003ch2\u003e1.45.0 (2026-05-21)\u003c/h2\u003e\n\u003cp\u003eFull Changelog: \u003ca href=\"https://github.com/anthropics/anthropic-sdk-go/compare/v1.44.1...v1.45.0\"\u003ev1.44.1...v1.45.0\u003c/a\u003e\u003c/p\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eapi:\u003c/strong\u003e Add support for thinking-token-count beta for estimated tokens in thinking block deltas when streaming (\u003ca href=\"https://github.com/anthropics/anthropic-sdk-go/commit/dedeb6d263a651d63c95bd360befbd53dd26ec12\"\u003ededeb6d\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev1.44.1\u003c/h2\u003e\n\u003ch2\u003e1.44.1 (2026-05-19)\u003c/h2\u003e\n\u003cp\u003eFull Changelog: \u003ca href=\"https://github.com/anthropics/anthropic-sdk-go/compare/v1.44.0...v1.44.1\"\u003ev1.44.0...v1.44.1\u003c/a\u003e\u003c/p\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003erunner:\u003c/strong\u003e skip tool calls SessionToolRunner does not own (\u003ca href=\"https://github.com/anthropics/anthropic-sdk-go/commit/93afc65f2f1b811d760f2e5149e13dd5eb328f79\"\u003e93afc65\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev1.44.0\u003c/h2\u003e\n\u003ch2\u003e1.44.0 (2026-05-19)\u003c/h2\u003e\n\u003cp\u003eFull Changelog: \u003ca href=\"https://github.com/anthropics/anthropic-sdk-go/compare/v1.43.0...v1.44.0\"\u003ev1.43.0...v1.44.0\u003c/a\u003e\u003c/p\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eclient:\u003c/strong\u003e Add support for self-hosted sandboxes in CMA with sandbox helpers (\u003ca href=\"https://github.com/anthropics/anthropic-sdk-go/commit/34354c43f329852a88682bb6665a1453754d61be\"\u003e34354c4\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev1.43.0\u003c/h2\u003e\n\u003ch2\u003e1.43.0 (2026-05-13)\u003c/h2\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/anthropics/anthropic-sdk-go/blob/main/CHANGELOG.md\"\u003egithub.com/anthropics/anthropic-sdk-go's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e1.46.0 (2026-05-28)\u003c/h2\u003e\n\u003cp\u003eFull Changelog: \u003ca href=\"https://github.com/anthropics/anthropic-sdk-go/compare/v1.45.0...v1.46.0\"\u003ev1.45.0...v1.46.0\u003c/a\u003e\u003c/p\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eapi:\u003c/strong\u003e Add support for claude-opus-4-8, mid-conversation system blocks, and usage.output_tokens_details (\u003ca href=\"https://github.com/anthropics/anthropic-sdk-go/commit/4cd860b8bd5365709f7f86466f449797a5f01875\"\u003e4cd860b\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003esupport custom file size caps (\u003ca href=\"https://redirect.github.com/anthropics/anthropic-sdk-go/issues/876\"\u003e#876\u003c/a\u003e) (\u003ca href=\"https://github.com/anthropics/anthropic-sdk-go/commit/99634e85815be2215a8beb05f2deeec895133b3b\"\u003e99634e8\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eChores\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eexamples:\u003c/strong\u003e rename managed-agents private-sandbox-worker to self-hosted-sandbox-worker (\u003ca href=\"https://redirect.github.com/anthropics/anthropic-sdk-go/issues/873\"\u003e#873\u003c/a\u003e) (\u003ca href=\"https://github.com/anthropics/anthropic-sdk-go/commit/07d3e461f094d40a1bcf25fa8cefee7a90835193\"\u003e07d3e46\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eDocumentation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003ereplace literal newlines (\u003ca href=\"https://github.com/anthropics/anthropic-sdk-go/commit/cbb7ea55b131f492753ce9fdcfc73df2847daafd\"\u003ecbb7ea5\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e1.45.0 (2026-05-21)\u003c/h2\u003e\n\u003cp\u003eFull Changelog: \u003ca href=\"https://github.com/anthropics/anthropic-sdk-go/compare/v1.44.1...v1.45.0\"\u003ev1.44.1...v1.45.0\u003c/a\u003e\u003c/p\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eapi:\u003c/strong\u003e Add support for thinking-token-count beta for estimated tokens in thinking block deltas when streaming (\u003ca href=\"https://github.com/anthropics/anthropic-sdk-go/commit/dedeb6d263a651d63c95bd360befbd53dd26ec12\"\u003ededeb6d\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e1.44.1 (2026-05-19)\u003c/h2\u003e\n\u003cp\u003eFull Changelog: \u003ca href=\"https://github.com/anthropics/anthropic-sdk-go/compare/v1.44.0...v1.44.1\"\u003ev1.44.0...v1.44.1\u003c/a\u003e\u003c/p\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003erunner:\u003c/strong\u003e skip tool calls SessionToolRunner does not own (\u003ca href=\"https://github.com/anthropics/anthropic-sdk-go/commit/93afc65f2f1b811d760f2e5149e13dd5eb328f79\"\u003e93afc65\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e1.44.0 (2026-05-19)\u003c/h2\u003e\n\u003cp\u003eFull Changelog: \u003ca href=\"https://github.com/anthropics/anthropic-sdk-go/compare/v1.43.0...v1.44.0\"\u003ev1.43.0...v1.44.0\u003c/a\u003e\u003c/p\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eclient:\u003c/strong\u003e Add support for self-hosted sandboxes in CMA with sandbox helpers (\u003ca href=\"https://github.com/anthropics/anthropic-sdk-go/commit/34354c43f329852a88682bb6665a1453754d61be\"\u003e34354c4\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e1.43.0 (2026-05-13)\u003c/h2\u003e\n\u003cp\u003eFull Changelog: \u003ca href=\"https://github.com/anthropics/anthropic-sdk-go/compare/v1.42.0...v1.43.0\"\u003ev1.42.0...v1.43.0\u003c/a\u003e\u003c/p\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eapi:\u003c/strong\u003e Add BetaManagedAgentsSearchResultBlock types (\u003ca href=\"https://github.com/anthropics/anthropic-sdk-go/commit/498fafcadd46be3a53e24ca2e7c40d00da6361bd\"\u003e498fafc\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/anthropics/anthropic-sdk-go/commit/058d85cd7e656f5fe972591bcf841c99564581e9\"\u003e\u003ccode\u003e058d85c\u003c/code\u003e\u003c/a\u003e release: 1.46.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/anthropics/anthropic-sdk-go/commit/5c328bc227a82cc46b273924a398d6fabc689410\"\u003e\u003ccode\u003e5c328bc\u003c/code\u003e\u003c/a\u003e feat(api): Add support for claude-opus-4-8, mid-conversation system blocks, a...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/anthropics/anthropic-sdk-go/commit/9df7ac07d30e17ce37712e0c083294a597058054\"\u003e\u003ccode\u003e9df7ac0\u003c/code\u003e\u003c/a\u003e docs: replace literal newlines\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/anthropics/anthropic-sdk-go/commit/d8020e0a73623855636de14c65a183fcc12f516f\"\u003e\u003ccode\u003ed8020e0\u003c/code\u003e\u003c/a\u003e ci: run breaking change detection on every branch (\u003ca href=\"https://redirect.github.com/anthropics/anthropic-sdk-go/issues/803\"\u003e#803\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/anthropics/anthropic-sdk-go/commit/c9bae2d86565b73cab7c4b6b7b0066a1697d4968\"\u003e\u003ccode\u003ec9bae2d\u003c/code\u003e\u003c/a\u003e feat: support custom file size caps (\u003ca href=\"https://redirect.github.com/anthropics/anthropic-sdk-go/issues/876\"\u003e#876\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/anthropics/anthropic-sdk-go/commit/816a9c6e9488edfab819a31d955e128ab57bede0\"\u003e\u003ccode\u003e816a9c6\u003c/code\u003e\u003c/a\u003e codegen metadata\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/anthropics/anthropic-sdk-go/commit/ec37441e01163d327f42b3eea6e9955e686b5e72\"\u003e\u003ccode\u003eec37441\u003c/code\u003e\u003c/a\u003e chore(examples): rename managed-agents private-sandbox-worker to self-hosted-...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/anthropics/anthropic-sdk-go/commit/88310ccdb19419fb6c8b0fd2e99f1e3d8c74041e\"\u003e\u003ccode\u003e88310cc\u003c/code\u003e\u003c/a\u003e release: 1.45.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/anthropics/anthropic-sdk-go/commit/4eb28e321282db071753c97d3223b092db9108d1\"\u003e\u003ccode\u003e4eb28e3\u003c/code\u003e\u003c/a\u003e feat(api): Add support for thinking-token-count beta for estimated tokens in ...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/anthropics/anthropic-sdk-go/commit/d138190aeae5568972430f9a6204875aa04097fc\"\u003e\u003ccode\u003ed138190\u003c/code\u003e\u003c/a\u003e release: 1.44.1\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/anthropics/anthropic-sdk-go/compare/v1.30.0...v1.46.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `github.com/aws/aws-sdk-go-v2` from 1.41.5 to 1.41.9\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/5841d3ae2cfd6e6113ca61b71d69131b84932f4c\"\u003e\u003ccode\u003e5841d3a\u003c/code\u003e\u003c/a\u003e Release 2026-05-29\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/16ac80d79c282366cae312281b3df925af4e9bf1\"\u003e\u003ccode\u003e16ac80d\u003c/code\u003e\u003c/a\u003e Regenerated Clients\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/167926f8aca7228f2dd1bed73707505875aafef4\"\u003e\u003ccode\u003e167926f\u003c/code\u003e\u003c/a\u003e Update endpoints model\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/a0fce13e18c6bff397ad77fac4cde4ab3f3b93e0\"\u003e\u003ccode\u003ea0fce13\u003c/code\u003e\u003c/a\u003e Update API model\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/223c0057211950899e0117dc027cc299a1dac664\"\u003e\u003ccode\u003e223c005\u003c/code\u003e\u003c/a\u003e update to smithy-go v1.26.0 (\u003ca href=\"https://redirect.github.com/aws/aws-sdk-go-v2/issues/3426\"\u003e#3426\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/74c501189a40c9b937432a1b2a4cacffc851ea76\"\u003e\u003ccode\u003e74c5011\u003c/code\u003e\u003c/a\u003e Release 2026-05-28\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/7d82651329a86064a9026f6219cff72921fa74da\"\u003e\u003ccode\u003e7d82651\u003c/code\u003e\u003c/a\u003e Regenerated Clients\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/79c63d9289784de4914143b7bff67157aa6a2a90\"\u003e\u003ccode\u003e79c63d9\u003c/code\u003e\u003c/a\u003e Update endpoints model\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/b15b3b873ad5c294d0c010fb1cc56ecb583d1618\"\u003e\u003ccode\u003eb15b3b8\u003c/code\u003e\u003c/a\u003e Update API model\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/090e46936630944917cfd6a0990ea3fd6391475b\"\u003e\u003ccode\u003e090e469\u003c/code\u003e\u003c/a\u003e Feat tmv2 parity (\u003ca href=\"https://redirect.github.com/aws/aws-sdk-go-v2/issues/3424\"\u003e#3424\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/aws/aws-sdk-go-v2/compare/v1.41.5...v1.41.9\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `github.com/aws/aws-sdk-go-v2/config` from 1.32.14 to 1.32.20\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/5841d3ae2cfd6e6113ca61b71d69131b84932f4c\"\u003e\u003ccode\u003e5841d3a\u003c/code\u003e\u003c/a\u003e Release 2026-05-29\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/16ac80d79c282366cae312281b3df925af4e9bf1\"\u003e\u003ccode\u003e16ac80d\u003c/code\u003e\u003c/a\u003e Regenerated Clients\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/167926f8aca7228f2dd1bed73707505875aafef4\"\u003e\u003ccode\u003e167926f\u003c/code\u003e\u003c/a\u003e Update endpoints model\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/a0fce13e18c6bff397ad77fac4cde4ab3f3b93e0\"\u003e\u003ccode\u003ea0fce13\u003c/code\u003e\u003c/a\u003e Update API model\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/223c0057211950899e0117dc027cc299a1dac664\"\u003e\u003ccode\u003e223c005\u003c/code\u003e\u003c/a\u003e update to smithy-go v1.26.0 (\u003ca href=\"https://redirect.github.com/aws/aws-sdk-go-v2/issues/3426\"\u003e#3426\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/74c501189a40c9b937432a1b2a4cacffc851ea76\"\u003e\u003ccode\u003e74c5011\u003c/code\u003e\u003c/a\u003e Release 2026-05-28\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/7d82651329a86064a9026f6219cff72921fa74da\"\u003e\u003ccode\u003e7d82651\u003c/code\u003e\u003c/a\u003e Regenerated Clients\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/79c63d9289784de4914143b7bff67157aa6a2a90\"\u003e\u003ccode\u003e79c63d9\u003c/code\u003e\u003c/a\u003e Update endpoints model\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/b15b3b873ad5c294d0c010fb1cc56ecb583d1618\"\u003e\u003ccode\u003eb15b3b8\u003c/code\u003e\u003c/a\u003e Update API model\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/090e46936630944917cfd6a0990ea3fd6391475b\"\u003e\u003ccode\u003e090e469\u003c/code\u003e\u003c/a\u003e Feat tmv2 parity (\u003ca href=\"https://redirect.github.com/aws/aws-sdk-go-v2/issues/3424\"\u003e#3424\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/aws/aws-sdk-go-v2/compare/config/v1.32.14...config/v1.32.20\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `github.com/aws/aws-sdk-go-v2/service/secretsmanager` from 1.41.5 to 1.41.9\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/5841d3ae2cfd6e6113ca61b71d69131b84932f4c\"\u003e\u003ccode\u003e5841d3a\u003c/code\u003e\u003c/a\u003e Release 2026-05-29\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/16ac80d79c282366cae312281b3df925af4e9bf1\"\u003e\u003ccode\u003e16ac80d\u003c/code\u003e\u003c/a\u003e Regenerated Clients\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/167926f8aca7228f2dd1bed73707505875aafef4\"\u003e\u003ccode\u003e167926f\u003c/code\u003e\u003c/a\u003e Update endpoints model\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/a0fce13e18c6bff397ad77fac4cde4ab3f3b93e0\"\u003e\u003ccode\u003ea0fce13\u003c/code\u003e\u003c/a\u003e Update API model\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/223c0057211950899e0117dc027cc299a1dac664\"\u003e\u003ccode\u003e223c005\u003c/code\u003e\u003c/a\u003e update to smithy-go v1.26.0 (\u003ca href=\"https://redirect.github.com/aws/aws-sdk-go-v2/issues/3426\"\u003e#3426\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/74c501189a40c9b937432a1b2a4cacffc851ea76\"\u003e\u003ccode\u003e74c5011\u003c/code\u003e\u003c/a\u003e Release 2026-05-28\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/7d82651329a86064a9026f6219cff72921fa74da\"\u003e\u003ccode\u003e7d82651\u003c/code\u003e\u003c/a\u003e Regenerated Clients\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/79c63d9289784de4914143b7bff67157aa6a2a90\"\u003e\u003ccode\u003e79c63d9\u003c/code\u003e\u003c/a\u003e Update endpoints model\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/b15b3b873ad5c294d0c010fb1cc56ecb583d1618\"\u003e\u003ccode\u003eb15b3b8\u003c/code\u003e\u003c/a\u003e Update API model\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/090e46936630944917cfd6a0990ea3fd6391475b\"\u003e\u003ccode\u003e090e469\u003c/code\u003e\u003c/a\u003e Feat tmv2 parity (\u003ca href=\"https://redirect.github.com/aws/aws-sdk-go-v2/issues/3424\"\u003e#3424\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/aws/aws-sdk-go-v2/compare/v1.41.5...v1.41.9\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `github.com/aws/aws-sdk-go-v2/service/ssm` from 1.68.4 to 1.68.8\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/5841d3ae2cfd6e6113ca61b71d69131b84932f4c\"\u003e\u003ccode\u003e5841d3a\u003c/code\u003e\u003c/a\u003e Release 2026-05-29\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/16ac80d79c282366cae312281b3df925af4e9bf1\"\u003e\u003ccode\u003e16ac80d\u003c/code\u003e\u003c/a\u003e Regenerated Clients\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/167926f8aca7228f2dd1bed73707505875aafef4\"\u003e\u003ccode\u003e167926f\u003c/code\u003e\u003c/a\u003e Update endpoints model\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/a0fce13e18c6bff397ad77fac4cde4ab3f3b93e0\"\u003e\u003ccode\u003ea0fce13\u003c/code\u003e\u003c/a\u003e Update API model\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/223c0057211950899e0117dc027cc299a1dac664\"\u003e\u003ccode\u003e223c005\u003c/code\u003e\u003c/a\u003e update to smithy-go v1.26.0 (\u003ca href=\"https://redirect.github.com/aws/aws-sdk-go-v2/issues/3426\"\u003e#3426\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/74c501189a40c9b937432a1b2a4cacffc851ea76\"\u003e\u003ccode\u003e74c5011\u003c/code\u003e\u003c/a\u003e Release 2026-05-28\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/7d82651329a86064a9026f6219cff72921fa74da\"\u003e\u003ccode\u003e7d82651\u003c/code\u003e\u003c/a\u003e Regenerated Clients\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/79c63d9289784de4914143b7bff67157aa6a2a90\"\u003e\u003ccode\u003e79c63d9\u003c/code\u003e\u003c/a\u003e Update endpoints model\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/b15b3b873ad5c294d0c010fb1cc56ecb583d1618\"\u003e\u003ccode\u003eb15b3b8\u003c/code\u003e\u003c/a\u003e Update API model\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/090e46936630944917cfd6a0990ea3fd6391475b\"\u003e\u003ccode\u003e090e469\u003c/code\u003e\u003c/a\u003e Feat tmv2 parity (\u003ca href=\"https://redirect.github.com/aws/aws-sdk-go-v2/issues/3424\"\u003e#3424\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/aws/aws-sdk-go-v2/compare/service/ssm/v1.68.4...service/ssm/v1.68.8\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `github.com/aws/smithy-go` from 1.24.2 to 1.26.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/aws/smithy-go/releases\"\u003egithub.com/aws/smithy-go's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev1.25.0\u003c/h2\u003e\n\u003ch1\u003eRelease (2026-04-15)\u003c/h1\u003e\n\u003ch2\u003eGeneral Highlights\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eDependency Update\u003c/strong\u003e: Updated to the latest SDK module versions\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eModule Highlights\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003egithub.com/aws/smithy-go\u003c/code\u003e: v1.25.0\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eFeature\u003c/strong\u003e: Add support for endpointBdd trait\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/aws/smithy-go/blob/main/CHANGELOG.md\"\u003egithub.com/aws/smithy-go's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003eRelease (2026-05-27)\u003c/h1\u003e\n\u003ch2\u003eGeneral Highlights\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eDependency Update\u003c/strong\u003e: Updated to the latest SDK module versions\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eModule Highlights\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003egithub.com/aws/smithy-go\u003c/code\u003e: v1.26.0\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eFeature\u003c/strong\u003e: Add StringSlice to endpoint rulesfn.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch1\u003eRelease (2026-04-23)\u003c/h1\u003e\n\u003ch2\u003eGeneral Highlights\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eDependency Update\u003c/strong\u003e: Updated to the latest SDK module versions\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eModule Highlights\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003egithub.com/aws/smithy-go\u003c/code\u003e: v1.25.1\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eBug Fix\u003c/strong\u003e: Fixed a memory leak in the LRU cache implementation used by some AWS services.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch1\u003eRelease (2026-04-15)\u003c/h1\u003e\n\u003ch2\u003eGeneral Highlights\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eDependency Update\u003c/strong\u003e: Updated to the latest SDK module versions\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eModule Highlights\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003egithub.com/aws/smithy-go\u003c/code\u003e: v1.25.0\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eFeature\u003c/strong\u003e: Add support for endpointBdd trait\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch1\u003eRelease (2026-04-02)\u003c/h1\u003e\n\u003ch2\u003eGeneral Highlights\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eDependency Update\u003c/strong\u003e: Updated to the latest SDK module versions\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eModule Highlights\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003egithub.com/aws/smithy-go\u003c/code\u003e: v1.24.3\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eBug Fix\u003c/strong\u003e: Add additional sigv4 configuration.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003egithub.com/aws/smithy-go/aws-http-auth\u003c/code\u003e: \u003ca href=\"https://github.com/aws/smithy-go/blob/main/aws-http-auth/CHANGELOG.md#v113-2026-04-02\"\u003ev1.1.3\u003c/a\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eBug Fix\u003c/strong\u003e: Add additional sigv4 configuration.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch1\u003eRelease (2026-02-27)\u003c/h1\u003e\n\u003ch2\u003eGeneral Highlights\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eDependency Update\u003c/strong\u003e: Bump minimum go version to 1.24.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch1\u003eRelease (2026-02-20)\u003c/h1\u003e\n\u003ch2\u003eGeneral Highlights\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eDependency Update\u003c/strong\u003e: Updated to the latest SDK module versions\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eModule Highlights\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003egithub.com/aws/smithy-go\u003c/code\u003e: v1.24.1\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/smithy-go/commit/45ed8311108fa4d204aa8ad3f5264442568c6b01\"\u003e\u003ccode\u003e45ed831\u003c/code\u003e\u003c/a\u003e Release 2026-05-27\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/smithy-go/commit/36699a9ad5bb1f4054d69de11e573003ec6c2865\"\u003e\u003ccode\u003e36699a9\u003c/code\u003e\u003c/a\u003e handle vars in auth scheme id tmpl (\u003ca href=\"https://redirect.github.com/aws/smithy-go/issues/667\"\u003e#667\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/smithy-go/commit/b81ddf73b3738ec93447b59aa920666f7154ae36\"\u003e\u003ccode\u003eb81ddf7\u003c/code\u003e\u003c/a\u003e Use GoDependency to add SDK dependencies on codegen instead of relying on go ...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/smithy-go/commit/999a54bb7359cf5740b9c23ca52220c5777b486d\"\u003e\u003ccode\u003e999a54b\u003c/code\u003e\u003c/a\u003e add event stream test generator (\u003ca href=\"https://redirect.github.com/aws/smithy-go/issues/661\"\u003e#661\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/smithy-go/commit/22e6cf7f8d19a35512b84cfb3f72e4e77ab29592\"\u003e\u003ccode\u003e22e6cf7\u003c/code\u003e\u003c/a\u003e Expand JMESPath truthy check by allowing bare collections to be evaluated (\u003ca href=\"https://redirect.github.com/aws/smithy-go/issues/654\"\u003e#654\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/smithy-go/commit/e094f45e716e33a1b950cf8bbe804790bf87f965\"\u003e\u003ccode\u003ee094f45\u003c/code\u003e\u003c/a\u003e Release 2026-04-23\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/smithy-go/commit/214d45be3be5188c4d2fd9cf744c21f8b3dfbabc\"\u003e\u003ccode\u003e214d45b\u003c/code\u003e\u003c/a\u003e changelog\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/smithy-go/commit/3477da0b4dbf31de58ac375fe5abe5d268280824\"\u003e\u003ccode\u003e3477da0\u003c/code\u003e\u003c/a\u003e fix lrucache memory leak on existing item put (\u003ca href=\"https://redirect.github.com/aws/smithy-go/issues/652\"\u003e#652\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/smithy-go/commit/0d0b4d00f2430e62a790203b89fd76dceb4ae213\"\u003e\u003ccode\u003e0d0b4d0\u003c/code\u003e\u003c/a\u003e Bump Smithy version to 1.69.0 (\u003ca href=\"https://redirect.github.com/aws/smithy-go/issues/650\"\u003e#650\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/smithy-go/commit/be5e5ef0d73560eac9d71df7995b0eaffb9a8d71\"\u003e\u003ccode\u003ebe5e5ef\u003c/code\u003e\u003c/a\u003e check \u003ca href=\"https://github.com/enum\"\u003e\u003ccode\u003e@​enum\u003c/code\u003e\u003c/a\u003e on strings for cbor (\u003ca href=\"https://redirect.github.com/aws/smithy-go/issues/649\"\u003e#649\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/aws/smithy-go/compare/v1.24.2...v1.26.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `github.com/containerd/containerd/api` from 1.10.0 to 1.11.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/containerd/containerd/releases\"\u003egithub.com/containerd/containerd/api's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003econtainerd API 1.11.1\u003c/h2\u003e\n\u003cp\u003eWelcome to the api/v1.11.1 release of containerd!\u003c/p\u003e\n\u003cp\u003eThe first patch release for the containerd 1.11 API includes a fix\nin the task endpoints for non-runc shims.\u003c/p\u003e\n\u003ch3\u003eHighlights\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix sandbox task API endpoints for non-runc runtimes (\u003ca href=\"https://redirect.github.com/containerd/containerd/pull/13422\"\u003e#13422\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003ePlease try out the release binaries and report any issues at\n\u003ca href=\"https://github.com/containerd/containerd/issues\"\u003ehttps://github.com/containerd/containerd/issues\u003c/a\u003e.\u003c/p\u003e\n\u003ch3\u003eContributors\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eDerek McGowan\u003c/li\u003e\n\u003cli\u003eMaksym Pavlenko\u003c/li\u003e\n\u003cli\u003eSamuel Karp\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eChanges\u003c/h3\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003cul\u003e\n\u003cli\u003ePrepare release notes for api/v1.11.1 (\u003ca href=\"https://redirect.github.com/containerd/containerd/pull/13444\"\u003e#13444\u003c/a\u003e)\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/containerd/containerd/commit/da7aef299c57cc1f290700ade8fa0a5fec69a462\"\u003e\u003ccode\u003eda7aef299\u003c/code\u003e\u003c/a\u003e Prepare release notes for api/v1.11.1\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003eFix sandbox task API endpoints for non-runc runtimes (\u003ca href=\"https://redirect.github.com/containerd/containerd/pull/13422\"\u003e#13422\u003c/a\u003e)\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/containerd/containerd/commit/e44f5f9ec610d95a712d230e8a19ae516e0a26ac\"\u003e\u003ccode\u003ee44f5f9ec\u003c/code\u003e\u003c/a\u003e protos: include task API address to CreateTaskRequest\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003ch3\u003eDependency Changes\u003c/h3\u003e\n\u003cp\u003eThis release has no dependency changes\u003c/p\u003e\n\u003cp\u003ePrevious release can be found at \u003ca href=\"https://github.com/containerd/containerd/releases/tag/api/v1.11.0\"\u003eapi/v1.11.0\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003econtainerd API 1.11.0\u003c/h2\u003e\n\u003cp\u003eWelcome to the api/v1.11.0 release of containerd!\u003c/p\u003e\n\u003cp\u003eThe 12th release for the containerd 1.x API aligns with the containerd 2.3 release.\u003c/p\u003e\n\u003ch3\u003eHighlights\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd transfer types for container filesystem copy (\u003ca href=\"https://redirect.github.com/containerd/containerd/pull/13165\"\u003e#13165\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eUpdate sandbox API to include spec field (\u003ca href=\"https://redirect.github.com/containerd/containerd/pull/12840\"\u003e#12840\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch4\u003eImage Distribution\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eAdd os.features support for EROFS native container images (\u003ca href=\"https://redirect.github.com/containerd/containerd/pull/13091\"\u003e#13091\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/containerd/containerd/commit/f822a911ab2b7c73e30bc0f36ea319642c9711b1\"\u003e\u003ccode\u003ef822a91\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/containerd/containerd/issues/13444\"\u003e#13444\u003c/a\u003e from dmcgowan/prepare-api-v1.11.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/containerd/containerd/commit/da7aef299c57cc1f290700ade8fa0a5fec69a462\"\u003e\u003ccode\u003eda7aef2\u003c/code\u003e\u003c/a\u003e Prepare release notes for api/v1.11.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/containerd/containerd/commit/a50a704094cf72710ccfa4944a642ef4e7ec9d2c\"\u003e\u003ccode\u003ea50a704\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/containerd/containerd/issues/13422\"\u003e#13422\u003c/a\u003e from k8s-infra-cherrypick-robot/cherry-pick-13360-t...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/containerd/containerd/commit/5282d4e09d3bc8b0957780caa7a4644fac7c86a7\"\u003e\u003ccode\u003e5282d4e\u003c/code\u003e\u003c/a\u003e Wire task address and version fields\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/containerd/containerd/commit/e44f5f9ec610d95a712d230e8a19ae516e0a26ac\"\u003e\u003ccode\u003ee44f5f9\u003c/code\u003e\u003c/a\u003e protos: include task API address to CreateTaskRequest\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/containerd/containerd/commit/85f22f7afa3af5aa5083cc7ae50c3b58a35b8849\"\u003e\u003ccode\u003e85f22f7\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/containerd/containerd/issues/13409\"\u003e#13409\u003c/a\u003e from k8s-infra-cherrypick-robot/cherry-pick-13327-t...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/containerd/containerd/commit/4d80a31bf637bc15e83e50a15941bf5bb0cb3988\"\u003e\u003ccode\u003e4d80a31\u003c/code\u003e\u003c/a\u003e seccomp: Block AF_ALG in default socket policy\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/containerd/containerd/commit/2ed0d97b6e58def34684a1bffc2ab6931182f221\"\u003e\u003ccode\u003e2ed0d97\u003c/code\u003e\u003c/a\u003e seccomp: Document socket rule scope and socketcall limitation\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/containerd/containerd/commit/2315484b7e7a5b53e73ad3b143c780ec7612420b\"\u003e\u003ccode\u003e2315484\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/containerd/containerd/issues/13390\"\u003e#13390\u003c/a\u003e from k8s-infra-cherrypick-robot/cherry-pick-13363-t...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/containerd/containerd/commit/1ad3402b855b77eb3800f74c87ff78736edf72d2\"\u003e\u003ccode\u003e1ad3402\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/containerd/containerd/issues/13394\"\u003e#13394\u003c/a\u003e from k8s-infra-cherrypick-robot/cherry-pick-13389-t...\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/containerd/containerd/compare/api/v1.10.0...api/v1.11.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `github.com/containerd/containerd/v2` from 2.2.3 to 2.3.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/containerd/containerd/releases\"\u003egithub.com/containerd/containerd/v2's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003econtainerd 2.3.1\u003c/h2\u003e\n\u003cp\u003eWelcome to the v2.3.1 release of containerd!\u003c/p\u003e\n\u003cp\u003eThe first patch ...\n\n_Description has been truncated_","html_url":"https://github.com/sipsma/dagger/pull/1292","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/sipsma%2Fdagger/issues/1292","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/1292/packages"},{"uuid":"4542377296","node_id":"PR_kwDOSqkYic7gVQz8","number":5,"state":"closed","title":"deps(deps): bump modernc.org/sqlite from 1.50.1 to 1.51.0","user":"dependabot[bot]","labels":["dependencies","go"],"assignees":[],"locked":false,"comments_count":2,"pull_request":true,"closed_at":"2026-05-28T18:05:41.000Z","author_association":null,"state_reason":null,"created_at":"2026-05-28T17:19:10.000Z","updated_at":"2026-05-28T18:05:51.000Z","time_to_close":2791,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"deps(deps)","packages":[{"name":"modernc.org/sqlite","old_version":"1.50.1","new_version":"1.51.0","repository_url":null}],"path":null,"ecosystem":"go"},"body":"Bumps [modernc.org/sqlite](https://gitlab.com/cznic/sqlite) from 1.50.1 to 1.51.0.\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://gitlab.com/cznic/sqlite/blob/master/CHANGELOG.md\"\u003emodernc.org/sqlite's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003eChangelog\u003c/h1\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e2026-05-28 v1.52.0:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdd \u003ccode\u003eBackup.Remaining\u003c/code\u003e and \u003ccode\u003eBackup.PageCount\u003c/code\u003e, thin wrappers around the existing \u003ccode\u003esqlite3_backup_remaining\u003c/code\u003e and \u003ccode\u003esqlite3_backup_pagecount\u003c/code\u003e C symbols. Together they expose the per-\u003ccode\u003eStep\u003c/code\u003e progress counters that the underlying backup object already maintains, enabling progress reporting during online backups without dropping to \u003ccode\u003emodernc.org/sqlite/lib\u003c/code\u003e directly.\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/122\"\u003e#122\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/122\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/122\u003c/a\u003e), thanks Ian Chechin!\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e2026-05-28 v1.51.0:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003ePool the \u003ccode\u003e[]driver.Value\u003c/code\u003e slice passed to scalar/aggregate UDF callbacks and to vtab \u003ccode\u003eFilter\u003c/code\u003e/\u003ccode\u003eInsert\u003c/code\u003e/\u003ccode\u003eUpdate\u003c/code\u003e callbacks, eliminating the dominant per-row allocation on UDF-heavy queries. Benchmarks on a 1000-row, 3-arg noop scalar UDF show ~40% fewer bytes/op and ~15% fewer allocs/op.\u003c/li\u003e\n\u003cli\u003eDocument the matching \u0026quot;arguments are not valid past return\u0026quot; contract on \u003ccode\u003evtab.Cursor.Filter\u003c/code\u003e and \u003ccode\u003evtab.Updater.Insert\u003c/code\u003e/\u003ccode\u003eUpdate\u003c/code\u003e, consistent with the existing rule for \u003ccode\u003eFunctionImpl.Scalar\u003c/code\u003e / \u003ccode\u003eAggregateFunction.Step\u003c/code\u003e / \u003ccode\u003eWindowInverse\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003eResolves [GitLab issue \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/226\"\u003e#226\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/issues/226\"\u003ehttps://gitlab.com/cznic/sqlite/-/issues/226\u003c/a\u003e). See [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/114\"\u003e#114\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/114\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/114\u003c/a\u003e), thanks Ian Chechin!\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003eFileControl.FileControlDataVersion\u003c/code\u003e, a wrapper around \u003ccode\u003eSQLITE_FCNTL_DATA_VERSION\u003c/code\u003e for observing pager-cache data-version changes, including those made on the same connection. Useful as a primitive for application-level cache invalidation.\u003c/li\u003e\n\u003cli\u003eExposed via the idiomatic \u003ccode\u003edatabase/sql\u003c/code\u003e escape hatch \u003ccode\u003e(*sql.Conn).Raw()\u003c/code\u003e, consistent with the existing \u003ccode\u003eFileControlPersistWAL\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/115\"\u003e#115\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/115\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/115\u003c/a\u003e), thanks Ian Chechin!\u003c/li\u003e\n\u003cli\u003eFix a regression where in-memory connections (\u003ccode\u003e:memory:\u003c/code\u003e, \u003ccode\u003efile::memory:\u003c/code\u003e, shared-cache memory URIs) were discarded by \u003ccode\u003edatabase/sql\u003c/code\u003e after a context-cancelled query, taking the entire in-memory store with them. The fix for \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/198\"\u003e#198\u003c/a\u003e had added an \u003ccode\u003esqlite3_is_interrupted\u003c/code\u003e check to the connection validator that mistakenly applied to in-memory connections too, re-introducing the bug originally fixed by !74. File-backed connections keep the existing behaviour and are still discarded after an interrupt.\u003c/li\u003e\n\u003cli\u003eResolves [GitLab issue \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/196\"\u003e#196\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/issues/196\"\u003ehttps://gitlab.com/cznic/sqlite/-/issues/196\u003c/a\u003e). See [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/116\"\u003e#116\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/116\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/116\u003c/a\u003e), thanks Ian Chechin!\u003c/li\u003e\n\u003cli\u003eAdd an opt-in \u003ccode\u003eFunctionImpl.VolatileArgs\u003c/code\u003e flag that hands TEXT and BLOB arguments to scalar and aggregate UDF callbacks as zero-copy views (\u003ccode\u003eunsafe.String\u003c/code\u003e/\u003ccode\u003eunsafe.Slice\u003c/code\u003e) over SQLite's own value buffers, eliminating the per-argument \u003ccode\u003elibc.GoString\u003c/code\u003e/\u003ccode\u003emake([]byte)\u003c/code\u003e copy that the \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/226\"\u003e#226\u003c/a\u003e slice-pooling left as the remaining per-row allocation. On the same 1000-row, 3-arg (INTEGER/TEXT/BLOB) noop scalar UDF this removes a further ~35% of allocs/op and ~11% of bytes/op on top of \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/226\"\u003e#226\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003eThe views are valid only for the duration of the callback and must not be retained past return or across rows; a callback that needs to keep a value must copy it. With \u003ccode\u003eVolatileArgs\u003c/code\u003e unset (the default) arguments keep the existing copied, caller-owned semantics, so the flag is fully backward compatible; it has no effect on integer, float, time, or NULL arguments.\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/120\"\u003e#120\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/120\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/120\u003c/a\u003e), thanks Ian Chechin!\u003c/li\u003e\n\u003cli\u003eExtend the opt-in \u003ccode\u003eVolatileArgs\u003c/code\u003e zero-copy TEXT/BLOB argument access from \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/120\"\u003e#120\u003c/a\u003e to the virtual-table \u003ccode\u003eCursor.Filter\u003c/code\u003e (\u003ccode\u003exFilter\u003c/code\u003e) and \u003ccode\u003eUpdater.Insert\u003c/code\u003e/\u003ccode\u003eUpdate\u003c/code\u003e (\u003ccode\u003exUpdate\u003c/code\u003e) callbacks. A \u003ccode\u003evtab.Module\u003c/code\u003e opts in by implementing the new optional \u003ccode\u003evtab.VolatileArgsOpter\u003c/code\u003e interface (\u003ccode\u003eVolatileArgs() bool\u003c/code\u003e); the flag is read once at module registration and shared by every table created from it. On a vtab call carrying one TEXT and one BLOB argument this removes 2 allocs/op (one \u003ccode\u003elibc.GoString\u003c/code\u003e, one \u003ccode\u003emake([]byte)\u003c/code\u003e) on each of the Filter and Update paths.\u003c/li\u003e\n\u003cli\u003eThe same safety contract as \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/120\"\u003e#120\u003c/a\u003e applies: the views are valid only for the duration of the callback and must not be retained past return or across rows; a callback that needs to keep a value must copy it. Modules that do not implement \u003ccode\u003eVolatileArgsOpter\u003c/code\u003e (the default for all existing modules) are byte-for-byte unchanged, and the flag has no effect on integer, float, time, or NULL arguments.\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/121\"\u003e#121\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/121\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/121\u003c/a\u003e), thanks Ian Chechin!\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e2026-05-10 v1.50.1:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eUpgrade to \u003ca href=\"https://sqlite.org/releaselog/3_53_1.html\"\u003eSQLite 3.53.1\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e2026-04-24 v1.50.0:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eUpgrade to sqlite-vec \u003ca href=\"https://github.com/asg017/sqlite-vec/releases/tag/v0.1.9\"\u003ev0.1.9\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003eIntroduce \u003ccode\u003eColumnInfo\u003c/code\u003e, enabling dynamic query builders and ORMs to retrieve underlying SQLite C-API metadata (\u003ccode\u003eOriginName\u003c/code\u003e, \u003ccode\u003eTableName\u003c/code\u003e, \u003ccode\u003eDatabaseName\u003c/code\u003e, and \u003ccode\u003eDeclType\u003c/code\u003e).\u003c/li\u003e\n\u003cli\u003eThis feature is exposed via the idiomatic \u003ccode\u003edatabase/sql\u003c/code\u003e escape hatch \u003ccode\u003e(*sql.Conn).Raw()\u003c/code\u003e, avoiding custom statement handles and keeping the standard library workflow intact.\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/113\"\u003e#113\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/113\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/113\u003c/a\u003e), thanks Josh Bleecher Snyder!\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e2026-04-17 v1.49.0: Upgrade to \u003ca href=\"https://sqlite.org/releaselog/3_53_0.html\"\u003eSQLite 3.53.0\u003c/a\u003e.\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdded \u003ccode\u003e-DSQLITE_ENABLE_DBPAGE_VTAB\u003c/code\u003e to the transpilation. See \u003ca href=\"https://www.sqlite.org/dbpage.html\"\u003e\u0026quot;The SQLITE_DBPAGE Virtual Table\u0026quot;\u003c/a\u003e for details.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e2026-04-06 v1.48.2:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eFix ABI mapping mismatch in the pre-update hook trampoline that caused silent truncation of large 64-bit RowIDs.\u003c/li\u003e\n\u003cli\u003eEnsure the Go trampoline signature correctly aligns with the public \u003ccode\u003esqlite3_preupdate_hook\u003c/code\u003e C API, preventing data corruption for high-entropy keys (e.g., Snowflake IDs).\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/98\"\u003e#98\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/98\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/98\u003c/a\u003e), thanks Josh Bleecher Snyder!\u003c/li\u003e\n\u003cli\u003eFix the memory allocator used in \u003ccode\u003e(*conn).Deserialize\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003eReplace \u003ccode\u003etls.Alloc\u003c/code\u003e with \u003ccode\u003esqlite3_malloc64\u003c/code\u003e to prevent internal allocator corruption. This ensures the buffer is safely owned by SQLite, which may resize or free it due to the \u003ccode\u003eSQLITE_DESERIALIZE_RESIZEABLE\u003c/code\u003e and \u003ccode\u003eSQLITE_DESERIALIZE_FREEONCLOSE\u003c/code\u003e flags.\u003c/li\u003e\n\u003cli\u003ePrevent a memory leak by properly freeing the allocated buffer if fetching the main database name fails before handing ownership to SQLite.\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/100\"\u003e#100\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/100\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/100\u003c/a\u003e), thanks Josh Bleecher Snyder!\u003c/li\u003e\n\u003cli\u003eFix \u003ccode\u003e(*conn).Deserialize\u003c/code\u003e to explicitly reject \u003ccode\u003enil\u003c/code\u003e or empty byte slices.\u003c/li\u003e\n\u003cli\u003ePrevent silent database disconnection and connection pool corruption caused by SQLite's default behavior when \u003ccode\u003esqlite3_deserialize\u003c/code\u003e receives a 0-length buffer.\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/101\"\u003e#101\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/101\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/101\u003c/a\u003e), thanks Josh Bleecher Snyder!\u003c/li\u003e\n\u003cli\u003eFix \u003ccode\u003ecommitHookTrampoline\u003c/code\u003e and \u003ccode\u003erollbackHookTrampoline\u003c/code\u003e signatures by removing the unused \u003ccode\u003epCsr\u003c/code\u003e parameter.\u003c/li\u003e\n\u003cli\u003eAligns internal hook callbacks accurately with the underlying SQLite C API, cleaning up the code to prevent potential future confusion or bugs.\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/102\"\u003e#102\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/102\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/102\u003c/a\u003e), thanks Josh Bleecher Snyder!\u003c/li\u003e\n\u003cli\u003eFix \u003ccode\u003echeckptr\u003c/code\u003e instrumentation failures during \u003ccode\u003ego test -race\u003c/code\u003e when registering and using virtual tables (\u003ccode\u003evtab\u003c/code\u003e).\u003c/li\u003e\n\u003cli\u003eAllocate \u003ccode\u003esqlite3_module\u003c/code\u003e instances using the C allocator (\u003ccode\u003elibc.Xcalloc\u003c/code\u003e) instead of the Go heap. This ensures transpiled C code can safely perform pointer operations on the struct without tripping Go's pointer checks.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/a5f439be99fee4478456048b117d3ca84518d5a7\"\u003e\u003ccode\u003ea5f439b\u003c/code\u003e\u003c/a\u003e CHANGELOG.md: fix release tag\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/41e77be50473b810a66c9beaf6d05d042b2a5556\"\u003e\u003ccode\u003e41e77be\u003c/code\u003e\u003c/a\u003e CHANGELOG.md: document \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/121\"\u003e#121\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/827df98d7342db30f09454eaedfe87ef3e7277db\"\u003e\u003ccode\u003e827df98\u003c/code\u003e\u003c/a\u003e gofmt -l -s -w vtab/*.go\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/0d384cb7dcab26840d003cee10f3ae7ae08a883c\"\u003e\u003ccode\u003e0d384cb\u003c/code\u003e\u003c/a\u003e Merge branch 'feat/vtab-volatile-args-opt-in' into 'master'\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/06e06d50e3bec5f79dd4ad60847a6d6405b76721\"\u003e\u003ccode\u003e06e06d5\u003c/code\u003e\u003c/a\u003e extend VolatileArgs opt-in to vtab Filter and Updater Insert/Update\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/2486abd8b22026a1047cdf67a1b090f3bae4210f\"\u003e\u003ccode\u003e2486abd\u003c/code\u003e\u003c/a\u003e HACKING.md, CLAUDE.md: this repo is not auto-tagged, tagging is manual\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/d808a8f1a5d9651553bea0877197fe1c73dac189\"\u003e\u003ccode\u003ed808a8f\u003c/code\u003e\u003c/a\u003e CHANGELOG.md: document \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/120\"\u003e#120\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/fac1cab20834685f75c7201d756608fd71b71824\"\u003e\u003ccode\u003efac1cab\u003c/code\u003e\u003c/a\u003e Merge branch 'feat/volatile-args-opt-in' into 'master'\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/569614c5d4b0187b9b8c632292d3556ce53e1274\"\u003e\u003ccode\u003e569614c\u003c/code\u003e\u003c/a\u003e address review: empty-BLOB shape parity + re-entrancy note\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/905960c9f78c54b85f29718cc34b69088edb1db2\"\u003e\u003ccode\u003e905960c\u003c/code\u003e\u003c/a\u003e add FunctionImpl.VolatileArgs opt-in for zero-copy TEXT/BLOB args\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://gitlab.com/cznic/sqlite/compare/v1.50.1...v1.51.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n","html_url":"https://github.com/NikeGunn/agentguard/pull/5","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/NikeGunn%2Fagentguard/issues/5","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/5/packages"},{"uuid":"4512382424","node_id":"PR_kwDOSmnmzc7e0IoW","number":7,"state":"open","title":"Bump modernc.org/sqlite from 1.46.1 to 1.50.1","user":"dependabot[bot]","labels":["dependencies","go"],"assignees":[],"locked":false,"comments_count":3,"pull_request":true,"closed_at":null,"author_association":null,"state_reason":null,"created_at":"2026-05-24T17:26:45.000Z","updated_at":"2026-05-24T18:09:56.000Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"Bump","packages":[{"name":"modernc.org/sqlite","old_version":"1.46.1","new_version":"1.50.1","repository_url":null}],"path":null,"ecosystem":"go"},"body":"Bumps [modernc.org/sqlite](https://gitlab.com/cznic/sqlite) from 1.46.1 to 1.50.1.\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://gitlab.com/cznic/sqlite/blob/master/CHANGELOG.md\"\u003emodernc.org/sqlite's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003eChangelog\u003c/h1\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e2026-05-21 v1.51.2:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003ePool the \u003ccode\u003e[]driver.Value\u003c/code\u003e slice passed to scalar/aggregate UDF callbacks and to vtab \u003ccode\u003eFilter\u003c/code\u003e/\u003ccode\u003eInsert\u003c/code\u003e/\u003ccode\u003eUpdate\u003c/code\u003e callbacks, eliminating the dominant per-row allocation on UDF-heavy queries. Benchmarks on a 1000-row, 3-arg noop scalar UDF show ~40% fewer bytes/op and ~15% fewer allocs/op.\u003c/li\u003e\n\u003cli\u003eDocument the matching \u0026quot;arguments are not valid past return\u0026quot; contract on \u003ccode\u003evtab.Cursor.Filter\u003c/code\u003e and \u003ccode\u003evtab.Updater.Insert\u003c/code\u003e/\u003ccode\u003eUpdate\u003c/code\u003e, consistent with the existing rule for \u003ccode\u003eFunctionImpl.Scalar\u003c/code\u003e / \u003ccode\u003eAggregateFunction.Step\u003c/code\u003e / \u003ccode\u003eWindowInverse\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003eResolves [GitLab issue \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/226\"\u003e#226\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/issues/226\"\u003ehttps://gitlab.com/cznic/sqlite/-/issues/226\u003c/a\u003e). See [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/114\"\u003e#114\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/114\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/114\u003c/a\u003e), thanks Ian Chechin!\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003eFileControl.FileControlDataVersion\u003c/code\u003e, a wrapper around \u003ccode\u003eSQLITE_FCNTL_DATA_VERSION\u003c/code\u003e for observing pager-cache data-version changes, including those made on the same connection. Useful as a primitive for application-level cache invalidation.\u003c/li\u003e\n\u003cli\u003eExposed via the idiomatic \u003ccode\u003edatabase/sql\u003c/code\u003e escape hatch \u003ccode\u003e(*sql.Conn).Raw()\u003c/code\u003e, consistent with the existing \u003ccode\u003eFileControlPersistWAL\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/115\"\u003e#115\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/115\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/115\u003c/a\u003e), thanks Ian Chechin!\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e2026-05-10 v1.50.1:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eUpgrade to \u003ca href=\"https://sqlite.org/releaselog/3_53_1.html\"\u003eSQLite 3.53.1\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e2026-04-24 v1.50.0:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eUpgrade to sqlite-vec \u003ca href=\"https://github.com/asg017/sqlite-vec/releases/tag/v0.1.9\"\u003ev0.1.9\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003eIntroduce \u003ccode\u003eColumnInfo\u003c/code\u003e, enabling dynamic query builders and ORMs to retrieve underlying SQLite C-API metadata (\u003ccode\u003eOriginName\u003c/code\u003e, \u003ccode\u003eTableName\u003c/code\u003e, \u003ccode\u003eDatabaseName\u003c/code\u003e, and \u003ccode\u003eDeclType\u003c/code\u003e).\u003c/li\u003e\n\u003cli\u003eThis feature is exposed via the idiomatic \u003ccode\u003edatabase/sql\u003c/code\u003e escape hatch \u003ccode\u003e(*sql.Conn).Raw()\u003c/code\u003e, avoiding custom statement handles and keeping the standard library workflow intact.\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/113\"\u003e#113\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/113\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/113\u003c/a\u003e), thanks Josh Bleecher Snyder!\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e2026-04-17 v1.49.0: Upgrade to \u003ca href=\"https://sqlite.org/releaselog/3_53_0.html\"\u003eSQLite 3.53.0\u003c/a\u003e.\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdded \u003ccode\u003e-DSQLITE_ENABLE_DBPAGE_VTAB\u003c/code\u003e to the transpilation. See \u003ca href=\"https://www.sqlite.org/dbpage.html\"\u003e\u0026quot;The SQLITE_DBPAGE Virtual Table\u0026quot;\u003c/a\u003e for details.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e2026-04-06 v1.48.2:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eFix ABI mapping mismatch in the pre-update hook trampoline that caused silent truncation of large 64-bit RowIDs.\u003c/li\u003e\n\u003cli\u003eEnsure the Go trampoline signature correctly aligns with the public \u003ccode\u003esqlite3_preupdate_hook\u003c/code\u003e C API, preventing data corruption for high-entropy keys (e.g., Snowflake IDs).\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/98\"\u003e#98\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/98\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/98\u003c/a\u003e), thanks Josh Bleecher Snyder!\u003c/li\u003e\n\u003cli\u003eFix the memory allocator used in \u003ccode\u003e(*conn).Deserialize\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003eReplace \u003ccode\u003etls.Alloc\u003c/code\u003e with \u003ccode\u003esqlite3_malloc64\u003c/code\u003e to prevent internal allocator corruption. This ensures the buffer is safely owned by SQLite, which may resize or free it due to the \u003ccode\u003eSQLITE_DESERIALIZE_RESIZEABLE\u003c/code\u003e and \u003ccode\u003eSQLITE_DESERIALIZE_FREEONCLOSE\u003c/code\u003e flags.\u003c/li\u003e\n\u003cli\u003ePrevent a memory leak by properly freeing the allocated buffer if fetching the main database name fails before handing ownership to SQLite.\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/100\"\u003e#100\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/100\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/100\u003c/a\u003e), thanks Josh Bleecher Snyder!\u003c/li\u003e\n\u003cli\u003eFix \u003ccode\u003e(*conn).Deserialize\u003c/code\u003e to explicitly reject \u003ccode\u003enil\u003c/code\u003e or empty byte slices.\u003c/li\u003e\n\u003cli\u003ePrevent silent database disconnection and connection pool corruption caused by SQLite's default behavior when \u003ccode\u003esqlite3_deserialize\u003c/code\u003e receives a 0-length buffer.\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/101\"\u003e#101\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/101\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/101\u003c/a\u003e), thanks Josh Bleecher Snyder!\u003c/li\u003e\n\u003cli\u003eFix \u003ccode\u003ecommitHookTrampoline\u003c/code\u003e and \u003ccode\u003erollbackHookTrampoline\u003c/code\u003e signatures by removing the unused \u003ccode\u003epCsr\u003c/code\u003e parameter.\u003c/li\u003e\n\u003cli\u003eAligns internal hook callbacks accurately with the underlying SQLite C API, cleaning up the code to prevent potential future confusion or bugs.\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/102\"\u003e#102\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/102\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/102\u003c/a\u003e), thanks Josh Bleecher Snyder!\u003c/li\u003e\n\u003cli\u003eFix \u003ccode\u003echeckptr\u003c/code\u003e instrumentation failures during \u003ccode\u003ego test -race\u003c/code\u003e when registering and using virtual tables (\u003ccode\u003evtab\u003c/code\u003e).\u003c/li\u003e\n\u003cli\u003eAllocate \u003ccode\u003esqlite3_module\u003c/code\u003e instances using the C allocator (\u003ccode\u003elibc.Xcalloc\u003c/code\u003e) instead of the Go heap. This ensures transpiled C code can safely perform pointer operations on the struct without tripping Go's pointer checks.\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/103\"\u003e#103\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/103\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/103\u003c/a\u003e), thanks Josh Bleecher Snyder!\u003c/li\u003e\n\u003cli\u003eFix data race on \u003ccode\u003emutex.id\u003c/code\u003e in the \u003ccode\u003emutexTry\u003c/code\u003e non-recursive path.\u003c/li\u003e\n\u003cli\u003eEnsure consistent atomic writes (\u003ccode\u003eatomic.StoreInt32\u003c/code\u003e) to prevent data races with atomic loads in \u003ccode\u003emutexHeld\u003c/code\u003e and \u003ccode\u003emutexNotheld\u003c/code\u003e during concurrent execution.\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/104\"\u003e#104\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/104\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/104\u003c/a\u003e), thanks Josh Bleecher Snyder!\u003c/li\u003e\n\u003cli\u003eFix resource leak in \u003ccode\u003e(*Backup).Commit\u003c/code\u003e where the destination connection was not closed on error.\u003c/li\u003e\n\u003cli\u003eEnsure \u003ccode\u003edstConn\u003c/code\u003e is properly closed when \u003ccode\u003esqlite3_backup_finish\u003c/code\u003e fails, preventing file descriptor, TLS, and memory leaks.\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/105\"\u003e#105\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/105\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/105\u003c/a\u003e), thanks Josh Bleecher Snyder!\u003c/li\u003e\n\u003cli\u003eFix \u003ccode\u003eExec\u003c/code\u003e to fully drain rows when encountering \u003ccode\u003eSQLITE_ROW\u003c/code\u003e, preventing silent data loss in DML statements.\u003c/li\u003e\n\u003cli\u003ePreviously, \u003ccode\u003eExec\u003c/code\u003e aborted after the first row, meaning \u003ccode\u003eINSERT\u003c/code\u003e, \u003ccode\u003eUPDATE\u003c/code\u003e, or \u003ccode\u003eDELETE\u003c/code\u003e statements with a \u003ccode\u003eRETURNING\u003c/code\u003e clause would fail to process subsequent rows. The execution path now correctly loops until \u003ccode\u003eSQLITE_DONE\u003c/code\u003e and properly respects context cancellations during the drain loop, fully aligning with native C \u003ccode\u003esqlite3_exec\u003c/code\u003e semantics.\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/106\"\u003e#106\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/106\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/106\u003c/a\u003e), thanks Josh Bleecher Snyder!\u003c/li\u003e\n\u003cli\u003eFix \u0026quot;Shadowed err value (stmt.go)\u0026quot;.\u003c/li\u003e\n\u003cli\u003eSee [GitLab issue \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/249\"\u003e#249\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/work_items/249\"\u003ehttps://gitlab.com/cznic/sqlite/-/work_items/249\u003c/a\u003e), thanks Emrecan BATI!\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/b95ed459e063439b1b7f58db051f168832bb14b6\"\u003e\u003ccode\u003eb95ed45\u003c/code\u003e\u003c/a\u003e upgrade to SQLite 3.53.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/e220cc9b51f0ce842490194538f3c45daf2572b3\"\u003e\u003ccode\u003ee220cc9\u003c/code\u003e\u003c/a\u003e CHANGELOG.md: add !113\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/a58d5e552a64d5082bdf1488db35f27ce7536c1d\"\u003e\u003ccode\u003ea58d5e5\u003c/code\u003e\u003c/a\u003e Merge branch 'columns' into 'master'\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/119d8b1c8514ceadf0a5a4aa8a9c94514b739377\"\u003e\u003ccode\u003e119d8b1\u003c/code\u003e\u003c/a\u003e add ColumnInfo, for inspecting query columns\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/c353a4f762ca821c6ebc6a17097e19e9dcec5306\"\u003e\u003ccode\u003ec353a4f\u003c/code\u003e\u003c/a\u003e upgrade to sqlite-vec v0.1.9\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/fe575e48232629112cce2e8bea368358e35c1616\"\u003e\u003ccode\u003efe575e4\u003c/code\u003e\u003c/a\u003e doc.go: update SQLite version\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/3ccb9cab30387f2192593c4acb635e58fd6bbd5e\"\u003e\u003ccode\u003e3ccb9ca\u003c/code\u003e\u003c/a\u003e upgrade to SQLite 3.53.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/df1697738de700bdbfe7a6ed822a8ddef14f1c98\"\u003e\u003ccode\u003edf16977\u003c/code\u003e\u003c/a\u003e CHANGELOG.md: add !112\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/172c3955c2894135d87e8a773248796afda13f77\"\u003e\u003ccode\u003e172c395\u003c/code\u003e\u003c/a\u003e Merge branch 'fix-openv2-handle-leak' into 'master'\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/27197307bbdb9c5c2a6dc683803f9c6e956e35a6\"\u003e\u003ccode\u003e2719730\u003c/code\u003e\u003c/a\u003e fix openV2 handle leak, TLS leak, and misleading error on failed open\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://gitlab.com/cznic/sqlite/compare/v1.46.1...v1.50.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n","html_url":"https://github.com/kioie/memex/pull/7","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/kioie%2Fmemex/issues/7","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/7/packages"}],"issue_packages":[{"old_version":"1.50.1","new_version":"1.52.0","update_type":"minor","path":null,"pr_created_at":"2026-06-11T22:05:18.000Z","version_change":"1.50.1 → 1.52.0","issue":{"uuid":"4644537962","node_id":"PR_kwDOSQfPn87lhM0k","number":23,"state":"open","title":"chore(deps): bump modernc.org/sqlite from 1.50.1 to 1.52.0","user":"dependabot[bot]","labels":["dependencies","go"],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":null,"author_association":null,"state_reason":null,"created_at":"2026-06-11T22:05:18.000Z","updated_at":"2026-06-11T22:08:58.000Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"chore(deps)","packages":[{"name":"modernc.org/sqlite","old_version":"1.50.1","new_version":"1.52.0","repository_url":null}],"path":null,"ecosystem":"go"},"body":"Bumps [modernc.org/sqlite](https://gitlab.com/cznic/sqlite) from 1.50.1 to 1.52.0.\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://gitlab.com/cznic/sqlite/blob/master/CHANGELOG.md\"\u003emodernc.org/sqlite's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003eChangelog\u003c/h1\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e2026-06-10 v1.53.0:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdd a Go-facing wrapper for \u003ccode\u003eSQLITE_CONFIG_PCACHE2\u003c/code\u003e. \u003ccode\u003ePageCache\u003c/code\u003e is the factory and \u003ccode\u003eCache\u003c/code\u003e the per-database instance, both idiomatic Go interfaces; \u003ccode\u003ePage\u003c/code\u003e exposes the raw \u003ccode\u003eBuf\u003c/code\u003e and \u003ccode\u003eExtra\u003c/code\u003e pointers that SQLite reads through the C pcache contract. \u003ccode\u003eRegisterPageCache\u003c/code\u003e and \u003ccode\u003eMustRegisterPageCache\u003c/code\u003e install the module process-globally before the first \u003ccode\u003esql.Open\u003c/code\u003e; subsequent Open calls are gated through a one-shot \u003ccode\u003eXsqlite3_config(SQLITE_CONFIG_PCACHE2)\u003c/code\u003e so a too-late Register returns \u003ccode\u003eErrPageCacheTooLate\u003c/code\u003e rather than silently falling through to the built-in pcache1. The binding owns the \u003ccode\u003esqlite3_pcache_page\u003c/code\u003e stub and re-consults the implementation on every Fetch, reusing the stub only when the returned \u003ccode\u003ePage\u003c/code\u003e value is unchanged, which keeps a bounded/evicting purgeable cache safe by construction.\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/126\"\u003e#126\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/126\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/126\u003c/a\u003e), thanks Ian Chechin!\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003emodernc.org/sqlite/pcache\u003c/code\u003e, the reference page-cache implementation that accompanies the \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/126\"\u003e#126\u003c/a\u003e \u003ccode\u003eSQLITE_CONFIG_PCACHE2\u003c/code\u003e wrapper. \u003ccode\u003epcache.New\u003c/code\u003e returns a \u003ccode\u003e*Pool\u003c/code\u003e satisfying the \u003ccode\u003ePageCache\u003c/code\u003e interface; register it once with \u003ccode\u003esqlite.MustRegisterPageCache(pcache.New())\u003c/code\u003e and every connection opened afterwards draws its pages from it. Each \u003ccode\u003ePool.Create\u003c/code\u003e mints a fresh per-database \u003ccode\u003eCache\u003c/code\u003e: a bounded, LRU-evicting page store that honours the \u003ccode\u003ePRAGMA cache_size\u003c/code\u003e soft cap and releases the least-recently-unpinned page when it must make room. Page memory — the \u003ccode\u003eBuf\u003c/code\u003e and \u003ccode\u003eExtra\u003c/code\u003e buffers SQLite reads through — is allocated with \u003ccode\u003elibc.Xmalloc\u003c/code\u003e/\u003ccode\u003elibc.Xcalloc\u003c/code\u003e and therefore lives off the Go heap, which keeps SQLite's interior pointer arithmetic on the page extras from tripping the race detector's checkptr enforcement. \u003ccode\u003ePool.Stats\u003c/code\u003e reports aggregate lifetime counters (hits, misses, allocs, evictions, rekeys, truncates, caches) across every cache a Pool has created, so hit/miss/eviction behaviour is observable without instrumenting individual caches. Cross-connection page sharing is out of scope for now; each \u003ccode\u003eCreate\u003c/code\u003e returns an independent per-database cache.\u003c/li\u003e\n\u003cli\u003eValidated end-to-end against the \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/126\"\u003e#126\u003c/a\u003e stress workload (\u003ccode\u003ecache_size=16\u003c/code\u003e, 4000 BLOB rows with DELETE and \u003ccode\u003eincremental_vacuum\u003c/code\u003e, \u003ccode\u003eintegrity_check\u003c/code\u003e clean under \u003ccode\u003e-race\u003c/code\u003e) and benchmarked for the memory-utilization goal tracked in [GitLab issue \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/204\"\u003e#204\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/issues/204\"\u003ehttps://gitlab.com/cznic/sqlite/-/issues/204\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/127\"\u003e#127\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/127\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/127\u003c/a\u003e), thanks Ian Chechin!\u003c/li\u003e\n\u003cli\u003eAdd an opt-in \u003ccode\u003e_dqs\u003c/code\u003e DSN query parameter that disables SQLite's double-quoted string literal compatibility quirk on a per-connection basis. When \u003ccode\u003e_dqs=0\u003c/code\u003e (or any \u003ccode\u003estrconv.ParseBool\u003c/code\u003e false value) is supplied, the driver calls \u003ccode\u003esqlite3_db_config\u003c/code\u003e with \u003ccode\u003eSQLITE_DBCONFIG_DQS_DDL\u003c/code\u003e and \u003ccode\u003eSQLITE_DBCONFIG_DQS_DML\u003c/code\u003e set to off before any statement is prepared, so a double-quoted identifier that fails to resolve raises a parse error instead of silently falling back to a string literal. Absence of the parameter, or \u003ccode\u003e_dqs=1\u003c/code\u003e, leaves SQLite's default behavior unchanged; existing DSNs continue to work byte-for-byte. Resolves [GitLab issue \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/61\"\u003e#61\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/issues/61\"\u003ehttps://gitlab.com/cznic/sqlite/-/issues/61\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/128\"\u003e#128\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/128\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/128\u003c/a\u003e), thanks Ian Chechin!\u003c/li\u003e\n\u003cli\u003eAdd an opt-in \u003ccode\u003e_error_rc\u003c/code\u003e DSN query parameter for clearer error reporting on open-time failures. When \u003ccode\u003e_error_rc=1\u003c/code\u003e (or any \u003ccode\u003estrconv.ParseBool\u003c/code\u003e true value) is supplied, error strings synthesised from a \u003ccode\u003e(rc, db)\u003c/code\u003e pair only append \u003ccode\u003esqlite3_errmsg(db)\u003c/code\u003e when \u003ccode\u003esqlite3_extended_errcode(db)\u003c/code\u003e is consistent with the operation rc (full match first, primary code \u003ccode\u003e\u0026amp;0xff\u003c/code\u003e as fallback). On mismatch the canonical \u003ccode\u003esqlite3_errstr(rc)\u003c/code\u003e is used alone, so an open-time \u003ccode\u003eSQLITE_CANTOPEN\u003c/code\u003e no longer carries the temporary handle's stale \u0026quot;out of memory\u0026quot; errmsg. Absence of the parameter, or \u003ccode\u003e_error_rc=0\u003c/code\u003e, preserves the legacy \u0026quot;errstr: errmsg\u0026quot; form byte-for-byte; existing callers that parse error strings are unaffected. The driver's \u003ccode\u003e*Error.Code()\u003c/code\u003e returns the same SQLite result code in both modes. Parsed before \u003ccode\u003esqlite3_open_v2\u003c/code\u003e so open-time errors are covered. Resolves [GitLab issue \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/230\"\u003e#230\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/issues/230\"\u003ehttps://gitlab.com/cznic/sqlite/-/issues/230\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/129\"\u003e#129\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/129\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/129\u003c/a\u003e), thanks Ian Chechin!\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e2026-06-06 v1.52.0:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eUpgrade to \u003ca href=\"https://sqlite.org/releaselog/3_53_2.html\"\u003eSQLite 3.53.2\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003eBackup.Remaining\u003c/code\u003e and \u003ccode\u003eBackup.PageCount\u003c/code\u003e, thin wrappers around the existing \u003ccode\u003esqlite3_backup_remaining\u003c/code\u003e and \u003ccode\u003esqlite3_backup_pagecount\u003c/code\u003e C symbols. Together they expose the per-\u003ccode\u003eStep\u003c/code\u003e progress counters that the underlying backup object already maintains, enabling progress reporting during online backups without dropping to \u003ccode\u003emodernc.org/sqlite/lib\u003c/code\u003e directly.\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/122\"\u003e#122\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/122\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/122\u003c/a\u003e), thanks Ian Chechin!\u003c/li\u003e\n\u003cli\u003eDrop the redundant second copy in \u003ccode\u003e(*conn).columnText\u003c/code\u003e, the path that backs every \u003ccode\u003eRows.Scan\u003c/code\u003e into a Go \u003ccode\u003estring\u003c/code\u003e for a TEXT column. The value's bytes are still copied once out of SQLite-owned memory into a fresh Go buffer; that buffer is then reinterpreted as the result string with \u003ccode\u003eunsafe.String\u003c/code\u003e rather than copied a second time by the implicit \u003ccode\u003estring([]byte)\u003c/code\u003e conversion. This removes one allocation per TEXT value per row and roughly halves the bytes allocated on that path; on the new \u003ccode\u003eBenchmarkColumnTextScan\u003c/code\u003e cases it is ~13–20% faster for payloads of 256 B and larger, with no measurable change for very short strings. Purely internal: no API or behavioral change, and the returned string never aliases SQLite's buffer.\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/123\"\u003e#123\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/123\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/123\u003c/a\u003e), thanks Ian Chechin!\u003c/li\u003e\n\u003cli\u003eCache each result column's declared type once per result set in \u003ccode\u003enewRows\u003c/code\u003e instead of recomputing it on every row. The TEXT branch of \u003ccode\u003eRows.Next\u003c/code\u003e calls \u003ccode\u003eColumnTypeDatabaseTypeName\u003c/code\u003e for every TEXT column on every row (independent of any DSN flag), which previously did a \u003ccode\u003elibc.GoString\u003c/code\u003e + \u003ccode\u003estrings.ToUpper\u003c/code\u003e each time; that lookup is now a single index into a cached, pre-uppercased \u003ccode\u003e[]string\u003c/code\u003e, and \u003ccode\u003eColumnTypeScanType\u003c/code\u003e reads the same cache and drops its per-call \u003ccode\u003estrings.ToLower\u003c/code\u003e. The declared type is fixed for the lifetime of a prepared statement, so the C round-trip is paid once per column rather than once per column per row, removing exactly 1 alloc + 8 B per TEXT column per row from the \u003ccode\u003eNext\u003c/code\u003e hot path. The new \u003ccode\u003eBenchmarkTextToTimeScan\u003c/code\u003e cases show ~7% faster on a 1000-row DATETIME SELECT under \u003ccode\u003e_texttotime=1\u003c/code\u003e. Purely internal: \u003ccode\u003eColumnTypeDatabaseTypeName\u003c/code\u003e and \u003ccode\u003eColumnTypeScanType\u003c/code\u003e return identical values, no API or behavioral change.\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/124\"\u003e#124\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/124\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/124\u003c/a\u003e), thanks Ian Chechin!\u003c/li\u003e\n\u003cli\u003eCache, per result column, the \u003ccode\u003eparseTimeFormats\u003c/code\u003e index that first parsed a TEXT-stored DATE/DATETIME/TIMESTAMP value, and try that format first on later rows instead of re-walking the list from the top. \u003ccode\u003e(*conn).parseTime\u003c/code\u003e previously ran \u003ccode\u003etime.Parse\u003c/code\u003e down the format list on every such row; for the canonical SQLite TEXT datetime format every row paid two failed \u003ccode\u003etime.Parse\u003c/code\u003e attempts — each allocating a \u003ccode\u003e*time.ParseError\u003c/code\u003e — before the match. On a 1000-row DATETIME TEXT SELECT this cuts ~50% of allocs/op and ~57% of B/op and is ~37% faster. The fall-through chain is preserved exactly: the seven formats are mutually exclusive, so the cached hint can never select a different match than the in-order scan, and the parsed \u003ccode\u003edriver.Value\u003c/code\u003e is identical to before. Purely internal: no API or behavioral change.\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/125\"\u003e#125\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/125\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/125\u003c/a\u003e), thanks Ian Chechin!\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e2026-05-28 v1.51.0:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003ePool the \u003ccode\u003e[]driver.Value\u003c/code\u003e slice passed to scalar/aggregate UDF callbacks and to vtab \u003ccode\u003eFilter\u003c/code\u003e/\u003ccode\u003eInsert\u003c/code\u003e/\u003ccode\u003eUpdate\u003c/code\u003e callbacks, eliminating the dominant per-row allocation on UDF-heavy queries. Benchmarks on a 1000-row, 3-arg noop scalar UDF show ~40% fewer bytes/op and ~15% fewer allocs/op.\u003c/li\u003e\n\u003cli\u003eDocument the matching \u0026quot;arguments are not valid past return\u0026quot; contract on \u003ccode\u003evtab.Cursor.Filter\u003c/code\u003e and \u003ccode\u003evtab.Updater.Insert\u003c/code\u003e/\u003ccode\u003eUpdate\u003c/code\u003e, consistent with the existing rule for \u003ccode\u003eFunctionImpl.Scalar\u003c/code\u003e / \u003ccode\u003eAggregateFunction.Step\u003c/code\u003e / \u003ccode\u003eWindowInverse\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003eResolves [GitLab issue \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/226\"\u003e#226\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/issues/226\"\u003ehttps://gitlab.com/cznic/sqlite/-/issues/226\u003c/a\u003e). See [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/114\"\u003e#114\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/114\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/114\u003c/a\u003e), thanks Ian Chechin!\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003eFileControl.FileControlDataVersion\u003c/code\u003e, a wrapper around \u003ccode\u003eSQLITE_FCNTL_DATA_VERSION\u003c/code\u003e for observing pager-cache data-version changes, including those made on the same connection. Useful as a primitive for application-level cache invalidation.\u003c/li\u003e\n\u003cli\u003eExposed via the idiomatic \u003ccode\u003edatabase/sql\u003c/code\u003e escape hatch \u003ccode\u003e(*sql.Conn).Raw()\u003c/code\u003e, consistent with the existing \u003ccode\u003eFileControlPersistWAL\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/115\"\u003e#115\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/115\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/115\u003c/a\u003e), thanks Ian Chechin!\u003c/li\u003e\n\u003cli\u003eFix a regression where in-memory connections (\u003ccode\u003e:memory:\u003c/code\u003e, \u003ccode\u003efile::memory:\u003c/code\u003e, shared-cache memory URIs) were discarded by \u003ccode\u003edatabase/sql\u003c/code\u003e after a context-cancelled query, taking the entire in-memory store with them. The fix for \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/198\"\u003e#198\u003c/a\u003e had added an \u003ccode\u003esqlite3_is_interrupted\u003c/code\u003e check to the connection validator that mistakenly applied to in-memory connections too, re-introducing the bug originally fixed by !74. File-backed connections keep the existing behaviour and are still discarded after an interrupt.\u003c/li\u003e\n\u003cli\u003eResolves [GitLab issue \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/196\"\u003e#196\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/issues/196\"\u003ehttps://gitlab.com/cznic/sqlite/-/issues/196\u003c/a\u003e). See [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/116\"\u003e#116\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/116\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/116\u003c/a\u003e), thanks Ian Chechin!\u003c/li\u003e\n\u003cli\u003eAdd an opt-in \u003ccode\u003eFunctionImpl.VolatileArgs\u003c/code\u003e flag that hands TEXT and BLOB arguments to scalar and aggregate UDF callbacks as zero-copy views (\u003ccode\u003eunsafe.String\u003c/code\u003e/\u003ccode\u003eunsafe.Slice\u003c/code\u003e) over SQLite's own value buffers, eliminating the per-argument \u003ccode\u003elibc.GoString\u003c/code\u003e/\u003ccode\u003emake([]byte)\u003c/code\u003e copy that the \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/226\"\u003e#226\u003c/a\u003e slice-pooling left as the remaining per-row allocation. On the same 1000-row, 3-arg (INTEGER/TEXT/BLOB) noop scalar UDF this removes a further ~35% of allocs/op and ~11% of bytes/op on top of \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/226\"\u003e#226\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003eThe views are valid only for the duration of the callback and must not be retained past return or across rows; a callback that needs to keep a value must copy it. With \u003ccode\u003eVolatileArgs\u003c/code\u003e unset (the default) arguments keep the existing copied, caller-owned semantics, so the flag is fully backward compatible; it has no effect on integer, float, time, or NULL arguments.\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/120\"\u003e#120\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/120\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/120\u003c/a\u003e), thanks Ian Chechin!\u003c/li\u003e\n\u003cli\u003eExtend the opt-in \u003ccode\u003eVolatileArgs\u003c/code\u003e zero-copy TEXT/BLOB argument access from \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/120\"\u003e#120\u003c/a\u003e to the virtual-table \u003ccode\u003eCursor.Filter\u003c/code\u003e (\u003ccode\u003exFilter\u003c/code\u003e) and \u003ccode\u003eUpdater.Insert\u003c/code\u003e/\u003ccode\u003eUpdate\u003c/code\u003e (\u003ccode\u003exUpdate\u003c/code\u003e) callbacks. A \u003ccode\u003evtab.Module\u003c/code\u003e opts in by implementing the new optional \u003ccode\u003evtab.VolatileArgsOpter\u003c/code\u003e interface (\u003ccode\u003eVolatileArgs() bool\u003c/code\u003e); the flag is read once at module registration and shared by every table created from it. On a vtab call carrying one TEXT and one BLOB argument this removes 2 allocs/op (one \u003ccode\u003elibc.GoString\u003c/code\u003e, one \u003ccode\u003emake([]byte)\u003c/code\u003e) on each of the Filter and Update paths.\u003c/li\u003e\n\u003cli\u003eThe same safety contract as \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/120\"\u003e#120\u003c/a\u003e applies: the views are valid only for the duration of the callback and must not be retained past return or across rows; a callback that needs to keep a value must copy it. Modules that do not implement \u003ccode\u003eVolatileArgsOpter\u003c/code\u003e (the default for all existing modules) are byte-for-byte unchanged, and the flag has no effect on integer, float, time, or NULL arguments.\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/121\"\u003e#121\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/121\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/121\u003c/a\u003e), thanks Ian Chechin!\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e2026-05-10 v1.50.1:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eUpgrade to \u003ca href=\"https://sqlite.org/releaselog/3_53_1.html\"\u003eSQLite 3.53.1\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e2026-04-24 v1.50.0:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eUpgrade to sqlite-vec \u003ca href=\"https://github.com/asg017/sqlite-vec/releases/tag/v0.1.9\"\u003ev0.1.9\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003eIntroduce \u003ccode\u003eColumnInfo\u003c/code\u003e, enabling dynamic query builders and ORMs to retrieve underlying SQLite C-API metadata (\u003ccode\u003eOriginName\u003c/code\u003e, \u003ccode\u003eTableName\u003c/code\u003e, \u003ccode\u003eDatabaseName\u003c/code\u003e, and \u003ccode\u003eDeclType\u003c/code\u003e).\u003c/li\u003e\n\u003cli\u003eThis feature is exposed via the idiomatic \u003ccode\u003edatabase/sql\u003c/code\u003e escape hatch \u003ccode\u003e(*sql.Conn).Raw()\u003c/code\u003e, avoiding custom statement handles and keeping the standard library workflow intact.\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/113\"\u003e#113\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/113\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/113\u003c/a\u003e), thanks Josh Bleecher Snyder!\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e2026-04-17 v1.49.0: Upgrade to \u003ca href=\"https://sqlite.org/releaselog/3_53_0.html\"\u003eSQLite 3.53.0\u003c/a\u003e.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/66b4d20f42485b9823a2d35c86b08335d927d0e5\"\u003e\u003ccode\u003e66b4d20\u003c/code\u003e\u003c/a\u003e release v1.52.0, upgrade to SQLite 3.53.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/e3f64ec2f026880b2fbc868f195863648cd07fb3\"\u003e\u003ccode\u003ee3f64ec\u003c/code\u003e\u003c/a\u003e rows: clarify parseFmtIdx mixed-column cost; CHANGELOG.md: document \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/125\"\u003e#125\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/448579342c2da286622d7cab5db84a746124e7b1\"\u003e\u003ccode\u003e4485793\u003c/code\u003e\u003c/a\u003e Merge branch 'perf/cache-parse-time-format' into 'master'\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/3638d17bf28d730d7dd90ff5cf3f93c45b9d752e\"\u003e\u003ccode\u003e3638d17\u003c/code\u003e\u003c/a\u003e rows: cache the parseTime format index per result column\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/7da793ef16502dced14643451a8bec834f999d9e\"\u003e\u003ccode\u003e7da793e\u003c/code\u003e\u003c/a\u003e CHANGELOG.md: document \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/124\"\u003e#124\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/51e6714774262680e2454b1a9ccc49b4245b220a\"\u003e\u003ccode\u003e51e6714\u003c/code\u003e\u003c/a\u003e Merge branch 'perf/cache-column-decltype' into 'master'\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/8a6f33ce42bfa4a864daf8a4c97908e7691499d9\"\u003e\u003ccode\u003e8a6f33c\u003c/code\u003e\u003c/a\u003e rows: lock down ColumnTypeScanType under the decltype cache\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/f8fb6dd1d58d74d022b77cc385a9828a1ac49762\"\u003e\u003ccode\u003ef8fb6dd\u003c/code\u003e\u003c/a\u003e rows: cache the column decltype lookup once per result set\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/b17c0c7faf2247b8251efaa638ac101e5dea7ec1\"\u003e\u003ccode\u003eb17c0c7\u003c/code\u003e\u003c/a\u003e CHANGELOG.md: document \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/123\"\u003e#123\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/c80a08fbe3d37ffa8c7e669c46053b692135523b\"\u003e\u003ccode\u003ec80a08f\u003c/code\u003e\u003c/a\u003e Merge branch 'perf/column-text-zero-copy' into 'master'\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://gitlab.com/cznic/sqlite/compare/v1.50.1...v1.52.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\n\n[![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=modernc.org/sqlite\u0026package-manager=go_modules\u0026previous-version=1.50.1\u0026new-version=1.52.0)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)\n\nDependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.\n\n[//]: # (dependabot-automerge-start)\n[//]: # (dependabot-automerge-end)\n\n---\n\n\u003cdetails\u003e\n\u003csummary\u003eDependabot commands and options\u003c/summary\u003e\n\u003cbr /\u003e\n\nYou can trigger Dependabot actions by commenting on this PR:\n- `@dependabot rebase` will rebase this PR\n- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it\n- `@dependabot show \u003cdependency name\u003e ignore conditions` will show all of the ignore conditions of the specified dependency\n- `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)\n- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)\n- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)\n\n\n\u003c/details\u003e","html_url":"https://github.com/faultline-go/faultline/pull/23","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/faultline-go%2Ffaultline/issues/23","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/23/packages"}},{"old_version":"1.33.1","new_version":"1.52.0","update_type":"minor","path":null,"pr_created_at":"2026-06-10T22:32:52.000Z","version_change":"1.33.1 → 1.52.0","issue":{"uuid":"4635505294","node_id":"PR_kwDOSCwGwM7lEW0X","number":58,"state":"open","title":"chore(deps): bump the minor-and-patch group across 1 directory with 4 updates","user":"dependabot[bot]","labels":["dependencies","go"],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":null,"author_association":null,"state_reason":null,"created_at":"2026-06-10T22:32:52.000Z","updated_at":"2026-06-10T22:52:24.000Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"chore(deps): bump","group_name":"minor-and-patch","update_count":4,"packages":[{"name":"github.com/godbus/dbus/v5","old_version":"5.1.0","new_version":"5.2.2","repository_url":"https://github.com/godbus/dbus"},{"name":"golang.org/x/sys","old_version":"0.44.0","new_version":"0.46.0","repository_url":"https://github.com/golang/sys"},{"name":"golang.org/x/term","old_version":"0.43.0","new_version":"0.44.0","repository_url":"https://github.com/golang/term"},{"name":"modernc.org/sqlite","old_version":"1.33.1","new_version":"1.52.0"}],"path":null,"ecosystem":"go"},"body":"Bumps the minor-and-patch group with 4 updates in the / directory: [github.com/godbus/dbus/v5](https://github.com/godbus/dbus), [golang.org/x/sys](https://github.com/golang/sys), [golang.org/x/term](https://github.com/golang/term) and [modernc.org/sqlite](https://gitlab.com/cznic/sqlite).\n\nUpdates `github.com/godbus/dbus/v5` from 5.1.0 to 5.2.2\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/godbus/dbus/releases\"\u003egithub.com/godbus/dbus/v5's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev5.2.2\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eDrop ununsed import in windows specific code by \u003ca href=\"https://github.com/dims\"\u003e\u003ccode\u003e@​dims\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/godbus/dbus/pull/427\"\u003egodbus/dbus#427\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eNew Contributors\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/dims\"\u003e\u003ccode\u003e@​dims\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/godbus/dbus/pull/427\"\u003egodbus/dbus#427\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/godbus/dbus/compare/v5.2.1...v5.2.2\"\u003ehttps://github.com/godbus/dbus/compare/v5.2.1...v5.2.2\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev5.2.1\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eci: bump freebsd to 14.3 by \u003ca href=\"https://github.com/kolyshkin\"\u003e\u003ccode\u003e@​kolyshkin\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/godbus/dbus/pull/421\"\u003egodbus/dbus#421\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAllow more than 32 containers / struct fields in a signature by \u003ca href=\"https://github.com/guelfey\"\u003e\u003ccode\u003e@​guelfey\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/godbus/dbus/pull/426\"\u003egodbus/dbus#426\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump golangci-lint to v2, fix some issues found by \u003ca href=\"https://github.com/kolyshkin\"\u003e\u003ccode\u003e@​kolyshkin\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/godbus/dbus/pull/419\"\u003egodbus/dbus#419\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix and simplify getHomeDir by \u003ca href=\"https://github.com/kolyshkin\"\u003e\u003ccode\u003e@​kolyshkin\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/godbus/dbus/pull/422\"\u003egodbus/dbus#422\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/godbus/dbus/compare/v5.2.0...v5.2.1\"\u003ehttps://github.com/godbus/dbus/compare/v5.2.0...v5.2.1\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev5.2.0\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFix default golangci-lint warnings, add it to GHA by \u003ca href=\"https://github.com/kolyshkin\"\u003e\u003ccode\u003e@​kolyshkin\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/godbus/dbus/pull/308\"\u003egodbus/dbus#308\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd example for grab media keys. by \u003ca href=\"https://github.com/linuxerwang\"\u003e\u003ccode\u003e@​linuxerwang\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/godbus/dbus/pull/316\"\u003egodbus/dbus#316\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eCI: enable more linters by \u003ca href=\"https://github.com/kolyshkin\"\u003e\u003ccode\u003e@​kolyshkin\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/godbus/dbus/pull/319\"\u003egodbus/dbus#319\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd rpic to projects using godbus by \u003ca href=\"https://github.com/stephenhu\"\u003e\u003ccode\u003e@​stephenhu\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/godbus/dbus/pull/320\"\u003egodbus/dbus#320\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eCI: Go 1.18 fixes by \u003ca href=\"https://github.com/guelfey\"\u003e\u003ccode\u003e@​guelfey\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/godbus/dbus/pull/322\"\u003egodbus/dbus#322\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eadd fuzz test for (signature) decoding by \u003ca href=\"https://github.com/guelfey\"\u003e\u003ccode\u003e@​guelfey\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/godbus/dbus/pull/323\"\u003egodbus/dbus#323\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003estyle: error should be returned as the last argument by \u003ca href=\"https://github.com/liaohanqin\"\u003e\u003ccode\u003e@​liaohanqin\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/godbus/dbus/pull/314\"\u003egodbus/dbus#314\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eexamples: Add asynchronous D-Bus call example in \u003ca href=\"https://redirect.github.com/godbus/dbus/pull/325\"\u003egodbus/dbus#325\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003edoc: fix spelling errors by \u003ca href=\"https://github.com/guelfey\"\u003e\u003ccode\u003e@​guelfey\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/godbus/dbus/pull/335\"\u003egodbus/dbus#335\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eReplace loop with call to copy() by \u003ca href=\"https://github.com/liaohanqin\"\u003e\u003ccode\u003e@​liaohanqin\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/godbus/dbus/pull/334\"\u003egodbus/dbus#334\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix(ci): apt-get update before installing dbus by \u003ca href=\"https://github.com/guelfey\"\u003e\u003ccode\u003e@​guelfey\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/godbus/dbus/pull/342\"\u003egodbus/dbus#342\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efreebsd: Remove the cgo dependency from transport_unixcred_freebsd.go by \u003ca href=\"https://github.com/dfr\"\u003e\u003ccode\u003e@​dfr\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/godbus/dbus/pull/332\"\u003egodbus/dbus#332\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eReduce allocs in decode function by \u003ca href=\"https://github.com/marselester\"\u003e\u003ccode\u003e@​marselester\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/godbus/dbus/pull/344\"\u003egodbus/dbus#344\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eSet argument of SetProperty to Variant by \u003ca href=\"https://github.com/WhyNotHugo\"\u003e\u003ccode\u003e@​WhyNotHugo\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/godbus/dbus/pull/239\"\u003egodbus/dbus#239\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eReduce allocs in ReadMessage (unix transport) by \u003ca href=\"https://github.com/marselester\"\u003e\u003ccode\u003e@​marselester\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/godbus/dbus/pull/347\"\u003egodbus/dbus#347\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix missing alignment in decodeU() by \u003ca href=\"https://github.com/felixonmars\"\u003e\u003ccode\u003e@​felixonmars\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/godbus/dbus/pull/348\"\u003egodbus/dbus#348\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd test case for bool alignment by \u003ca href=\"https://github.com/guelfey\"\u003e\u003ccode\u003e@​guelfey\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/godbus/dbus/pull/349\"\u003egodbus/dbus#349\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd go 1.19 support by \u003ca href=\"https://github.com/amenzhinsky\"\u003e\u003ccode\u003e@​amenzhinsky\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/godbus/dbus/pull/339\"\u003egodbus/dbus#339\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eCI tweaks by \u003ca href=\"https://github.com/guelfey\"\u003e\u003ccode\u003e@​guelfey\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/godbus/dbus/pull/360\"\u003egodbus/dbus#360\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eci: add FreBSD job using Cirrus by \u003ca href=\"https://github.com/guelfey\"\u003e\u003ccode\u003e@​guelfey\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/godbus/dbus/pull/361\"\u003egodbus/dbus#361\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eReduce decoder allocs due to int/uint decoding by \u003ca href=\"https://github.com/marselester\"\u003e\u003ccode\u003e@​marselester\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/godbus/dbus/pull/356\"\u003egodbus/dbus#356\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ePointer semantics in depthCounter by \u003ca href=\"https://github.com/marselester\"\u003e\u003ccode\u003e@​marselester\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/godbus/dbus/pull/352\"\u003egodbus/dbus#352\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003emessage: use Discard for encoding in IsValid by \u003ca href=\"https://github.com/guelfey\"\u003e\u003ccode\u003e@​guelfey\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/godbus/dbus/pull/362\"\u003egodbus/dbus#362\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eOmit extra (*Message).IsValid for outgoing messages by \u003ca href=\"https://github.com/guelfey\"\u003e\u003ccode\u003e@​guelfey\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/godbus/dbus/pull/363\"\u003egodbus/dbus#363\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eOnly check header validity when decoding messages by \u003ca href=\"https://github.com/guelfey\"\u003e\u003ccode\u003e@​guelfey\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/godbus/dbus/pull/364\"\u003egodbus/dbus#364\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eReplaced godoc url with pkg.go.dev url for v5. by \u003ca href=\"https://github.com/olivercalder\"\u003e\u003ccode\u003e@​olivercalder\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/godbus/dbus/pull/369\"\u003egodbus/dbus#369\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eReduce bytes to strings allocs in decoder by \u003ca href=\"https://github.com/marselester\"\u003e\u003ccode\u003e@​marselester\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/godbus/dbus/pull/367\"\u003egodbus/dbus#367\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efeat: add security-policy to project by \u003ca href=\"https://github.com/diogoteles08\"\u003e\u003ccode\u003e@​diogoteles08\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/godbus/dbus/pull/366\"\u003egodbus/dbus#366\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eauth: Do not send UID with external auth by \u003ca href=\"https://github.com/idleroamer\"\u003e\u003ccode\u003e@​idleroamer\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/godbus/dbus/pull/346\"\u003egodbus/dbus#346\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/godbus/dbus/commit/a8ac15ba63645f02ffd57f4b443203279ab40b30\"\u003e\u003ccode\u003ea8ac15b\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/godbus/dbus/issues/427\"\u003e#427\u003c/a\u003e from dims/drop-unused-import-in-windows-specific-code\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/godbus/dbus/commit/e638c721d984eab99e7a5d674ece2e17ea913aca\"\u003e\u003ccode\u003ee638c72\u003c/code\u003e\u003c/a\u003e Drop ununsed import in windows specific code\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/godbus/dbus/commit/20d95a3d9a57a5cb72cbdafb3fd9ecb6d2ccd038\"\u003e\u003ccode\u003e20d95a3\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/godbus/dbus/issues/422\"\u003e#422\u003c/a\u003e from kolyshkin/homedir\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/godbus/dbus/commit/d3fc3b583895e27c3337f77ea7134b0a81159955\"\u003e\u003ccode\u003ed3fc3b5\u003c/code\u003e\u003c/a\u003e Fix and simplify getHomeDir\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/godbus/dbus/commit/88ce46364db66b69f70017265a312b26ad7feba8\"\u003e\u003ccode\u003e88ce463\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/godbus/dbus/issues/419\"\u003e#419\u003c/a\u003e from kolyshkin/golangci-v2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/godbus/dbus/commit/feb892a0347fb361350229d969a2666a4791504e\"\u003e\u003ccode\u003efeb892a\u003c/code\u003e\u003c/a\u003e ci: bump golangci-lint to v2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/godbus/dbus/commit/c5ff039e5883a86f848ad6fbb820e471818c0bde\"\u003e\u003ccode\u003ec5ff039\u003c/code\u003e\u003c/a\u003e Ignore ST1008 warning for validSingle\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/godbus/dbus/commit/135663e52698feb5ad4b0733d7e457c82227214a\"\u003e\u003ccode\u003e135663e\u003c/code\u003e\u003c/a\u003e Omit embedded fields\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/godbus/dbus/commit/1b92cdcc136567c781bcc0ad1ccb4bd78b11e151\"\u003e\u003ccode\u003e1b92cdc\u003c/code\u003e\u003c/a\u003e variant_parser: simplify switch statement\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/godbus/dbus/commit/d03c0bea70755580de832141a43f544950e76fc7\"\u003e\u003ccode\u003ed03c0be\u003c/code\u003e\u003c/a\u003e Use switch where it makes sense\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/godbus/dbus/compare/v5.1.0...v5.2.2\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `golang.org/x/sys` from 0.44.0 to 0.46.0\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/golang/sys/commit/d58dcfa8a74514c0ef0fc401259156c5e2fc9ff5\"\u003e\u003ccode\u003ed58dcfa\u003c/code\u003e\u003c/a\u003e unix: add GPIO constants and structs\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/golang/sys/commit/397d5f80920585bc27433d878aba498d062f81e1\"\u003e\u003ccode\u003e397d5f8\u003c/code\u003e\u003c/a\u003e unix: update to Linux kernel 7.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/golang/sys/commit/0a387f7a07d7a0e9811f00603c10b4e5a94ab79c\"\u003e\u003ccode\u003e0a387f7\u003c/code\u003e\u003c/a\u003e cpu: detect zbc extension on riscv64\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/golang/sys/commit/758f71cb839d131daf0ba4befa6a2c6ceb21a649\"\u003e\u003ccode\u003e758f71c\u003c/code\u003e\u003c/a\u003e cpu: add LLACQ_SCREL, SCQ, DBAR_HINTS detection for loong64\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/golang/sys/commit/99666ae32e07f6403182a79cb5df0c417cbbf25f\"\u003e\u003ccode\u003e99666ae\u003c/code\u003e\u003c/a\u003e unix: merge Linux readv/writev implementation with Darwin/OpenBSD\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/golang/sys/commit/e4444cbaaaf61cecff8e635874066fcd5c841575\"\u003e\u003ccode\u003ee4444cb\u003c/code\u003e\u003c/a\u003e windows: add NtSetEaFile, NtQueryEaFile and NtQueryInformationFile\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/golang/sys/commit/04396e85d470b7f990a9a1df5c1a44dc8e30c292\"\u003e\u003ccode\u003e04396e8\u003c/code\u003e\u003c/a\u003e unix: add Readv, Writev, Preadv, Pwritev for OpenBSD\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/golang/sys/compare/v0.44.0...v0.46.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `golang.org/x/term` from 0.43.0 to 0.44.0\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/golang/term/commit/3b43943a9e7de876a5d5e1f5e7da7cdeae0f542a\"\u003e\u003ccode\u003e3b43943\u003c/code\u003e\u003c/a\u003e go.mod: update golang.org/x dependencies\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/golang/term/compare/v0.43.0...v0.44.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `modernc.org/sqlite` from 1.33.1 to 1.52.0\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://gitlab.com/cznic/sqlite/blob/master/CHANGELOG.md\"\u003emodernc.org/sqlite's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003eChangelog\u003c/h1\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e2026-06-10 v1.53.0:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdd a Go-facing wrapper for \u003ccode\u003eSQLITE_CONFIG_PCACHE2\u003c/code\u003e. \u003ccode\u003ePageCache\u003c/code\u003e is the factory and \u003ccode\u003eCache\u003c/code\u003e the per-database instance, both idiomatic Go interfaces; \u003ccode\u003ePage\u003c/code\u003e exposes the raw \u003ccode\u003eBuf\u003c/code\u003e and \u003ccode\u003eExtra\u003c/code\u003e pointers that SQLite reads through the C pcache contract. \u003ccode\u003eRegisterPageCache\u003c/code\u003e and \u003ccode\u003eMustRegisterPageCache\u003c/code\u003e install the module process-globally before the first \u003ccode\u003esql.Open\u003c/code\u003e; subsequent Open calls are gated through a one-shot \u003ccode\u003eXsqlite3_config(SQLITE_CONFIG_PCACHE2)\u003c/code\u003e so a too-late Register returns \u003ccode\u003eErrPageCacheTooLate\u003c/code\u003e rather than silently falling through to the built-in pcache1. The binding owns the \u003ccode\u003esqlite3_pcache_page\u003c/code\u003e stub and re-consults the implementation on every Fetch, reusing the stub only when the returned \u003ccode\u003ePage\u003c/code\u003e value is unchanged, which keeps a bounded/evicting purgeable cache safe by construction.\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/126\"\u003e#126\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/126\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/126\u003c/a\u003e), thanks Ian Chechin!\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003emodernc.org/sqlite/pcache\u003c/code\u003e, the reference page-cache implementation that accompanies the \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/126\"\u003e#126\u003c/a\u003e \u003ccode\u003eSQLITE_CONFIG_PCACHE2\u003c/code\u003e wrapper. \u003ccode\u003epcache.New\u003c/code\u003e returns a \u003ccode\u003e*Pool\u003c/code\u003e satisfying the \u003ccode\u003ePageCache\u003c/code\u003e interface; register it once with \u003ccode\u003esqlite.MustRegisterPageCache(pcache.New())\u003c/code\u003e and every connection opened afterwards draws its pages from it. Each \u003ccode\u003ePool.Create\u003c/code\u003e mints a fresh per-database \u003ccode\u003eCache\u003c/code\u003e: a bounded, LRU-evicting page store that honours the \u003ccode\u003ePRAGMA cache_size\u003c/code\u003e soft cap and releases the least-recently-unpinned page when it must make room. Page memory — the \u003ccode\u003eBuf\u003c/code\u003e and \u003ccode\u003eExtra\u003c/code\u003e buffers SQLite reads through — is allocated with \u003ccode\u003elibc.Xmalloc\u003c/code\u003e/\u003ccode\u003elibc.Xcalloc\u003c/code\u003e and therefore lives off the Go heap, which keeps SQLite's interior pointer arithmetic on the page extras from tripping the race detector's checkptr enforcement. \u003ccode\u003ePool.Stats\u003c/code\u003e reports aggregate lifetime counters (hits, misses, allocs, evictions, rekeys, truncates, caches) across every cache a Pool has created, so hit/miss/eviction behaviour is observable without instrumenting individual caches. Cross-connection page sharing is out of scope for now; each \u003ccode\u003eCreate\u003c/code\u003e returns an independent per-database cache.\u003c/li\u003e\n\u003cli\u003eValidated end-to-end against the \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/126\"\u003e#126\u003c/a\u003e stress workload (\u003ccode\u003ecache_size=16\u003c/code\u003e, 4000 BLOB rows with DELETE and \u003ccode\u003eincremental_vacuum\u003c/code\u003e, \u003ccode\u003eintegrity_check\u003c/code\u003e clean under \u003ccode\u003e-race\u003c/code\u003e) and benchmarked for the memory-utilization goal tracked in [GitLab issue \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/204\"\u003e#204\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/issues/204\"\u003ehttps://gitlab.com/cznic/sqlite/-/issues/204\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/127\"\u003e#127\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/127\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/127\u003c/a\u003e), thanks Ian Chechin!\u003c/li\u003e\n\u003cli\u003eAdd an opt-in \u003ccode\u003e_dqs\u003c/code\u003e DSN query parameter that disables SQLite's double-quoted string literal compatibility quirk on a per-connection basis. When \u003ccode\u003e_dqs=0\u003c/code\u003e (or any \u003ccode\u003estrconv.ParseBool\u003c/code\u003e false value) is supplied, the driver calls \u003ccode\u003esqlite3_db_config\u003c/code\u003e with \u003ccode\u003eSQLITE_DBCONFIG_DQS_DDL\u003c/code\u003e and \u003ccode\u003eSQLITE_DBCONFIG_DQS_DML\u003c/code\u003e set to off before any statement is prepared, so a double-quoted identifier that fails to resolve raises a parse error instead of silently falling back to a string literal. Absence of the parameter, or \u003ccode\u003e_dqs=1\u003c/code\u003e, leaves SQLite's default behavior unchanged; existing DSNs continue to work byte-for-byte. Resolves [GitLab issue \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/61\"\u003e#61\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/issues/61\"\u003ehttps://gitlab.com/cznic/sqlite/-/issues/61\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/128\"\u003e#128\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/128\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/128\u003c/a\u003e), thanks Ian Chechin!\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e2026-06-06 v1.52.0:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eUpgrade to \u003ca href=\"https://sqlite.org/releaselog/3_53_2.html\"\u003eSQLite 3.53.2\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003eBackup.Remaining\u003c/code\u003e and \u003ccode\u003eBackup.PageCount\u003c/code\u003e, thin wrappers around the existing \u003ccode\u003esqlite3_backup_remaining\u003c/code\u003e and \u003ccode\u003esqlite3_backup_pagecount\u003c/code\u003e C symbols. Together they expose the per-\u003ccode\u003eStep\u003c/code\u003e progress counters that the underlying backup object already maintains, enabling progress reporting during online backups without dropping to \u003ccode\u003emodernc.org/sqlite/lib\u003c/code\u003e directly.\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/122\"\u003e#122\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/122\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/122\u003c/a\u003e), thanks Ian Chechin!\u003c/li\u003e\n\u003cli\u003eDrop the redundant second copy in \u003ccode\u003e(*conn).columnText\u003c/code\u003e, the path that backs every \u003ccode\u003eRows.Scan\u003c/code\u003e into a Go \u003ccode\u003estring\u003c/code\u003e for a TEXT column. The value's bytes are still copied once out of SQLite-owned memory into a fresh Go buffer; that buffer is then reinterpreted as the result string with \u003ccode\u003eunsafe.String\u003c/code\u003e rather than copied a second time by the implicit \u003ccode\u003estring([]byte)\u003c/code\u003e conversion. This removes one allocation per TEXT value per row and roughly halves the bytes allocated on that path; on the new \u003ccode\u003eBenchmarkColumnTextScan\u003c/code\u003e cases it is ~13–20% faster for payloads of 256 B and larger, with no measurable change for very short strings. Purely internal: no API or behavioral change, and the returned string never aliases SQLite's buffer.\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/123\"\u003e#123\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/123\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/123\u003c/a\u003e), thanks Ian Chechin!\u003c/li\u003e\n\u003cli\u003eCache each result column's declared type once per result set in \u003ccode\u003enewRows\u003c/code\u003e instead of recomputing it on every row. The TEXT branch of \u003ccode\u003eRows.Next\u003c/code\u003e calls \u003ccode\u003eColumnTypeDatabaseTypeName\u003c/code\u003e for every TEXT column on every row (independent of any DSN flag), which previously did a \u003ccode\u003elibc.GoString\u003c/code\u003e + \u003ccode\u003estrings.ToUpper\u003c/code\u003e each time; that lookup is now a single index into a cached, pre-uppercased \u003ccode\u003e[]string\u003c/code\u003e, and \u003ccode\u003eColumnTypeScanType\u003c/code\u003e reads the same cache and drops its per-call \u003ccode\u003estrings.ToLower\u003c/code\u003e. The declared type is fixed for the lifetime of a prepared statement, so the C round-trip is paid once per column rather than once per column per row, removing exactly 1 alloc + 8 B per TEXT column per row from the \u003ccode\u003eNext\u003c/code\u003e hot path. The new \u003ccode\u003eBenchmarkTextToTimeScan\u003c/code\u003e cases show ~7% faster on a 1000-row DATETIME SELECT under \u003ccode\u003e_texttotime=1\u003c/code\u003e. Purely internal: \u003ccode\u003eColumnTypeDatabaseTypeName\u003c/code\u003e and \u003ccode\u003eColumnTypeScanType\u003c/code\u003e return identical values, no API or behavioral change.\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/124\"\u003e#124\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/124\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/124\u003c/a\u003e), thanks Ian Chechin!\u003c/li\u003e\n\u003cli\u003eCache, per result column, the \u003ccode\u003eparseTimeFormats\u003c/code\u003e index that first parsed a TEXT-stored DATE/DATETIME/TIMESTAMP value, and try that format first on later rows instead of re-walking the list from the top. \u003ccode\u003e(*conn).parseTime\u003c/code\u003e previously ran \u003ccode\u003etime.Parse\u003c/code\u003e down the format list on every such row; for the canonical SQLite TEXT datetime format every row paid two failed \u003ccode\u003etime.Parse\u003c/code\u003e attempts — each allocating a \u003ccode\u003e*time.ParseError\u003c/code\u003e — before the match. On a 1000-row DATETIME TEXT SELECT this cuts ~50% of allocs/op and ~57% of B/op and is ~37% faster. The fall-through chain is preserved exactly: the seven formats are mutually exclusive, so the cached hint can never select a different match than the in-order scan, and the parsed \u003ccode\u003edriver.Value\u003c/code\u003e is identical to before. Purely internal: no API or behavioral change.\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/125\"\u003e#125\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/125\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/125\u003c/a\u003e), thanks Ian Chechin!\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e2026-05-28 v1.51.0:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003ePool the \u003ccode\u003e[]driver.Value\u003c/code\u003e slice passed to scalar/aggregate UDF callbacks and to vtab \u003ccode\u003eFilter\u003c/code\u003e/\u003ccode\u003eInsert\u003c/code\u003e/\u003ccode\u003eUpdate\u003c/code\u003e callbacks, eliminating the dominant per-row allocation on UDF-heavy queries. Benchmarks on a 1000-row, 3-arg noop scalar UDF show ~40% fewer bytes/op and ~15% fewer allocs/op.\u003c/li\u003e\n\u003cli\u003eDocument the matching \u0026quot;arguments are not valid past return\u0026quot; contract on \u003ccode\u003evtab.Cursor.Filter\u003c/code\u003e and \u003ccode\u003evtab.Updater.Insert\u003c/code\u003e/\u003ccode\u003eUpdate\u003c/code\u003e, consistent with the existing rule for \u003ccode\u003eFunctionImpl.Scalar\u003c/code\u003e / \u003ccode\u003eAggregateFunction.Step\u003c/code\u003e / \u003ccode\u003eWindowInverse\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003eResolves [GitLab issue \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/226\"\u003e#226\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/issues/226\"\u003ehttps://gitlab.com/cznic/sqlite/-/issues/226\u003c/a\u003e). See [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/114\"\u003e#114\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/114\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/114\u003c/a\u003e), thanks Ian Chechin!\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003eFileControl.FileControlDataVersion\u003c/code\u003e, a wrapper around \u003ccode\u003eSQLITE_FCNTL_DATA_VERSION\u003c/code\u003e for observing pager-cache data-version changes, including those made on the same connection. Useful as a primitive for application-level cache invalidation.\u003c/li\u003e\n\u003cli\u003eExposed via the idiomatic \u003ccode\u003edatabase/sql\u003c/code\u003e escape hatch \u003ccode\u003e(*sql.Conn).Raw()\u003c/code\u003e, consistent with the existing \u003ccode\u003eFileControlPersistWAL\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/115\"\u003e#115\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/115\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/115\u003c/a\u003e), thanks Ian Chechin!\u003c/li\u003e\n\u003cli\u003eFix a regression where in-memory connections (\u003ccode\u003e:memory:\u003c/code\u003e, \u003ccode\u003efile::memory:\u003c/code\u003e, shared-cache memory URIs) were discarded by \u003ccode\u003edatabase/sql\u003c/code\u003e after a context-cancelled query, taking the entire in-memory store with them. The fix for \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/198\"\u003e#198\u003c/a\u003e had added an \u003ccode\u003esqlite3_is_interrupted\u003c/code\u003e check to the connection validator that mistakenly applied to in-memory connections too, re-introducing the bug originally fixed by !74. File-backed connections keep the existing behaviour and are still discarded after an interrupt.\u003c/li\u003e\n\u003cli\u003eResolves [GitLab issue \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/196\"\u003e#196\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/issues/196\"\u003ehttps://gitlab.com/cznic/sqlite/-/issues/196\u003c/a\u003e). See [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/116\"\u003e#116\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/116\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/116\u003c/a\u003e), thanks Ian Chechin!\u003c/li\u003e\n\u003cli\u003eAdd an opt-in \u003ccode\u003eFunctionImpl.VolatileArgs\u003c/code\u003e flag that hands TEXT and BLOB arguments to scalar and aggregate UDF callbacks as zero-copy views (\u003ccode\u003eunsafe.String\u003c/code\u003e/\u003ccode\u003eunsafe.Slice\u003c/code\u003e) over SQLite's own value buffers, eliminating the per-argument \u003ccode\u003elibc.GoString\u003c/code\u003e/\u003ccode\u003emake([]byte)\u003c/code\u003e copy that the \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/226\"\u003e#226\u003c/a\u003e slice-pooling left as the remaining per-row allocation. On the same 1000-row, 3-arg (INTEGER/TEXT/BLOB) noop scalar UDF this removes a further ~35% of allocs/op and ~11% of bytes/op on top of \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/226\"\u003e#226\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003eThe views are valid only for the duration of the callback and must not be retained past return or across rows; a callback that needs to keep a value must copy it. With \u003ccode\u003eVolatileArgs\u003c/code\u003e unset (the default) arguments keep the existing copied, caller-owned semantics, so the flag is fully backward compatible; it has no effect on integer, float, time, or NULL arguments.\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/120\"\u003e#120\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/120\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/120\u003c/a\u003e), thanks Ian Chechin!\u003c/li\u003e\n\u003cli\u003eExtend the opt-in \u003ccode\u003eVolatileArgs\u003c/code\u003e zero-copy TEXT/BLOB argument access from \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/120\"\u003e#120\u003c/a\u003e to the virtual-table \u003ccode\u003eCursor.Filter\u003c/code\u003e (\u003ccode\u003exFilter\u003c/code\u003e) and \u003ccode\u003eUpdater.Insert\u003c/code\u003e/\u003ccode\u003eUpdate\u003c/code\u003e (\u003ccode\u003exUpdate\u003c/code\u003e) callbacks. A \u003ccode\u003evtab.Module\u003c/code\u003e opts in by implementing the new optional \u003ccode\u003evtab.VolatileArgsOpter\u003c/code\u003e interface (\u003ccode\u003eVolatileArgs() bool\u003c/code\u003e); the flag is read once at module registration and shared by every table created from it. On a vtab call carrying one TEXT and one BLOB argument this removes 2 allocs/op (one \u003ccode\u003elibc.GoString\u003c/code\u003e, one \u003ccode\u003emake([]byte)\u003c/code\u003e) on each of the Filter and Update paths.\u003c/li\u003e\n\u003cli\u003eThe same safety contract as \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/120\"\u003e#120\u003c/a\u003e applies: the views are valid only for the duration of the callback and must not be retained past return or across rows; a callback that needs to keep a value must copy it. Modules that do not implement \u003ccode\u003eVolatileArgsOpter\u003c/code\u003e (the default for all existing modules) are byte-for-byte unchanged, and the flag has no effect on integer, float, time, or NULL arguments.\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/121\"\u003e#121\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/121\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/121\u003c/a\u003e), thanks Ian Chechin!\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e2026-05-10 v1.50.1:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eUpgrade to \u003ca href=\"https://sqlite.org/releaselog/3_53_1.html\"\u003eSQLite 3.53.1\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e2026-04-24 v1.50.0:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eUpgrade to sqlite-vec \u003ca href=\"https://github.com/asg017/sqlite-vec/releases/tag/v0.1.9\"\u003ev0.1.9\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003eIntroduce \u003ccode\u003eColumnInfo\u003c/code\u003e, enabling dynamic query builders and ORMs to retrieve underlying SQLite C-API metadata (\u003ccode\u003eOriginName\u003c/code\u003e, \u003ccode\u003eTableName\u003c/code\u003e, \u003ccode\u003eDatabaseName\u003c/code\u003e, and \u003ccode\u003eDeclType\u003c/code\u003e).\u003c/li\u003e\n\u003cli\u003eThis feature is exposed via the idiomatic \u003ccode\u003edatabase/sql\u003c/code\u003e escape hatch \u003ccode\u003e(*sql.Conn).Raw()\u003c/code\u003e, avoiding custom statement handles and keeping the standard library workflow intact.\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/113\"\u003e#113\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/113\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/113\u003c/a\u003e), thanks Josh Bleecher Snyder!\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e2026-04-17 v1.49.0: Upgrade to \u003ca href=\"https://sqlite.org/releaselog/3_53_0.html\"\u003eSQLite 3.53.0\u003c/a\u003e.\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdded \u003ccode\u003e-DSQLITE_ENABLE_DBPAGE_VTAB\u003c/code\u003e to the transpilation. See \u003ca href=\"https://www.sqlite.org/dbpage.html\"\u003e\u0026quot;The SQLITE_DBPAGE Virtual Table\u0026quot;\u003c/a\u003e for details.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/66b4d20f42485b9823a2d35c86b08335d927d0e5\"\u003e\u003ccode\u003e66b4d20\u003c/code\u003e\u003c/a\u003e release v1.52.0, upgrade to SQLite 3.53.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/e3f64ec2f026880b2fbc868f195863648cd07fb3\"\u003e\u003ccode\u003ee3f64ec\u003c/code\u003e\u003c/a\u003e rows: clarify parseFmtIdx mixed-column cost; CHANGELOG.md: document \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/125\"\u003e#125\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/448579342c2da286622d7cab5db84a746124e7b1\"\u003e\u003ccode\u003e4485793\u003c/code\u003e\u003c/a\u003e Merge branch 'perf/cache-parse-time-format' into 'master'\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/3638d17bf28d730d7dd90ff5cf3f93c45b9d752e\"\u003e\u003ccode\u003e3638d17\u003c/code\u003e\u003c/a\u003e rows: cache the parseTime format index per result column\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/7da793ef16502dced14643451a8bec834f999d9e\"\u003e\u003ccode\u003e7da793e\u003c/code\u003e\u003c/a\u003e CHANGELOG.md: document \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/124\"\u003e#124\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/51e6714774262680e2454b1a9ccc49b4245b220a\"\u003e\u003ccode\u003e51e6714\u003c/code\u003e\u003c/a\u003e Merge branch 'perf/cache-column-decltype' into 'master'\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/8a6f33ce42bfa4a864daf8a4c97908e7691499d9\"\u003e\u003ccode\u003e8a6f33c\u003c/code\u003e\u003c/a\u003e rows: lock down ColumnTypeScanType under the decltype cache\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/f8fb6dd1d58d74d022b77cc385a9828a1ac49762\"\u003e\u003ccode\u003ef8fb6dd\u003c/code\u003e\u003c/a\u003e rows: cache the column decltype lookup once per result set\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/b17c0c7faf2247b8251efaa638ac101e5dea7ec1\"\u003e\u003ccode\u003eb17c0c7\u003c/code\u003e\u003c/a\u003e CHANGELOG.md: document \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/123\"\u003e#123\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/c80a08fbe3d37ffa8c7e669c46053b692135523b\"\u003e\u003ccode\u003ec80a08f\u003c/code\u003e\u003c/a\u003e Merge branch 'perf/column-text-zero-copy' into 'master'\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://gitlab.com/cznic/sqlite/compare/v1.33.1...v1.52.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n","html_url":"https://github.com/Hanalyx/kensa/pull/58","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/Hanalyx%2Fkensa/issues/58","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/58/packages"}},{"old_version":"1.51.0","new_version":"1.52.0","update_type":"minor","path":null,"pr_created_at":"2026-06-10T06:43:56.000Z","version_change":"1.51.0 → 1.52.0","issue":{"uuid":"4628741309","node_id":"PR_kwDOSVhE4c7kuKm1","number":20,"state":"closed","title":"build(deps): bump modernc.org/sqlite from 1.51.0 to 1.52.0","user":"dependabot[bot]","labels":["dependencies","go","build","merge-risk: 🚨 compatibility","rating: 🐚 platinum hermit","status: 👀 ready for maintainer look","P3"],"assignees":["vincentkoc"],"locked":false,"comments_count":2,"pull_request":true,"closed_at":"2026-06-10T06:57:32.000Z","author_association":null,"state_reason":null,"created_at":"2026-06-10T06:43:56.000Z","updated_at":"2026-06-10T06:57:59.000Z","time_to_close":816,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"build(deps)","packages":[{"name":"modernc.org/sqlite","old_version":"1.51.0","new_version":"1.52.0","repository_url":null}],"path":null,"ecosystem":"go"},"body":"Bumps [modernc.org/sqlite](https://gitlab.com/cznic/sqlite) from 1.51.0 to 1.52.0.\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://gitlab.com/cznic/sqlite/blob/master/CHANGELOG.md\"\u003emodernc.org/sqlite's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003eChangelog\u003c/h1\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eTBC vNEXT:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdd a Go-facing wrapper for \u003ccode\u003eSQLITE_CONFIG_PCACHE2\u003c/code\u003e. \u003ccode\u003ePageCache\u003c/code\u003e is the factory and \u003ccode\u003eCache\u003c/code\u003e the per-database instance, both idiomatic Go interfaces; \u003ccode\u003ePage\u003c/code\u003e exposes the raw \u003ccode\u003eBuf\u003c/code\u003e and \u003ccode\u003eExtra\u003c/code\u003e pointers that SQLite reads through the C pcache contract. \u003ccode\u003eRegisterPageCache\u003c/code\u003e and \u003ccode\u003eMustRegisterPageCache\u003c/code\u003e install the module process-globally before the first \u003ccode\u003esql.Open\u003c/code\u003e; subsequent Open calls are gated through a one-shot \u003ccode\u003eXsqlite3_config(SQLITE_CONFIG_PCACHE2)\u003c/code\u003e so a too-late Register returns \u003ccode\u003eErrPageCacheTooLate\u003c/code\u003e rather than silently falling through to the built-in pcache1. The binding owns the \u003ccode\u003esqlite3_pcache_page\u003c/code\u003e stub and re-consults the implementation on every Fetch, reusing the stub only when the returned \u003ccode\u003ePage\u003c/code\u003e value is unchanged, which keeps a bounded/evicting purgeable cache safe by construction.\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/126\"\u003e#126\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/126\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/126\u003c/a\u003e), thanks Ian Chechin!\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e2026-06-06 v1.52.0:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eUpgrade to \u003ca href=\"https://sqlite.org/releaselog/3_53_2.html\"\u003eSQLite 3.53.2\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003eBackup.Remaining\u003c/code\u003e and \u003ccode\u003eBackup.PageCount\u003c/code\u003e, thin wrappers around the existing \u003ccode\u003esqlite3_backup_remaining\u003c/code\u003e and \u003ccode\u003esqlite3_backup_pagecount\u003c/code\u003e C symbols. Together they expose the per-\u003ccode\u003eStep\u003c/code\u003e progress counters that the underlying backup object already maintains, enabling progress reporting during online backups without dropping to \u003ccode\u003emodernc.org/sqlite/lib\u003c/code\u003e directly.\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/122\"\u003e#122\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/122\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/122\u003c/a\u003e), thanks Ian Chechin!\u003c/li\u003e\n\u003cli\u003eDrop the redundant second copy in \u003ccode\u003e(*conn).columnText\u003c/code\u003e, the path that backs every \u003ccode\u003eRows.Scan\u003c/code\u003e into a Go \u003ccode\u003estring\u003c/code\u003e for a TEXT column. The value's bytes are still copied once out of SQLite-owned memory into a fresh Go buffer; that buffer is then reinterpreted as the result string with \u003ccode\u003eunsafe.String\u003c/code\u003e rather than copied a second time by the implicit \u003ccode\u003estring([]byte)\u003c/code\u003e conversion. This removes one allocation per TEXT value per row and roughly halves the bytes allocated on that path; on the new \u003ccode\u003eBenchmarkColumnTextScan\u003c/code\u003e cases it is ~13–20% faster for payloads of 256 B and larger, with no measurable change for very short strings. Purely internal: no API or behavioral change, and the returned string never aliases SQLite's buffer.\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/123\"\u003e#123\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/123\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/123\u003c/a\u003e), thanks Ian Chechin!\u003c/li\u003e\n\u003cli\u003eCache each result column's declared type once per result set in \u003ccode\u003enewRows\u003c/code\u003e instead of recomputing it on every row. The TEXT branch of \u003ccode\u003eRows.Next\u003c/code\u003e calls \u003ccode\u003eColumnTypeDatabaseTypeName\u003c/code\u003e for every TEXT column on every row (independent of any DSN flag), which previously did a \u003ccode\u003elibc.GoString\u003c/code\u003e + \u003ccode\u003estrings.ToUpper\u003c/code\u003e each time; that lookup is now a single index into a cached, pre-uppercased \u003ccode\u003e[]string\u003c/code\u003e, and \u003ccode\u003eColumnTypeScanType\u003c/code\u003e reads the same cache and drops its per-call \u003ccode\u003estrings.ToLower\u003c/code\u003e. The declared type is fixed for the lifetime of a prepared statement, so the C round-trip is paid once per column rather than once per column per row, removing exactly 1 alloc + 8 B per TEXT column per row from the \u003ccode\u003eNext\u003c/code\u003e hot path. The new \u003ccode\u003eBenchmarkTextToTimeScan\u003c/code\u003e cases show ~7% faster on a 1000-row DATETIME SELECT under \u003ccode\u003e_texttotime=1\u003c/code\u003e. Purely internal: \u003ccode\u003eColumnTypeDatabaseTypeName\u003c/code\u003e and \u003ccode\u003eColumnTypeScanType\u003c/code\u003e return identical values, no API or behavioral change.\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/124\"\u003e#124\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/124\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/124\u003c/a\u003e), thanks Ian Chechin!\u003c/li\u003e\n\u003cli\u003eCache, per result column, the \u003ccode\u003eparseTimeFormats\u003c/code\u003e index that first parsed a TEXT-stored DATE/DATETIME/TIMESTAMP value, and try that format first on later rows instead of re-walking the list from the top. \u003ccode\u003e(*conn).parseTime\u003c/code\u003e previously ran \u003ccode\u003etime.Parse\u003c/code\u003e down the format list on every such row; for the canonical SQLite TEXT datetime format every row paid two failed \u003ccode\u003etime.Parse\u003c/code\u003e attempts — each allocating a \u003ccode\u003e*time.ParseError\u003c/code\u003e — before the match. On a 1000-row DATETIME TEXT SELECT this cuts ~50% of allocs/op and ~57% of B/op and is ~37% faster. The fall-through chain is preserved exactly: the seven formats are mutually exclusive, so the cached hint can never select a different match than the in-order scan, and the parsed \u003ccode\u003edriver.Value\u003c/code\u003e is identical to before. Purely internal: no API or behavioral change.\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/125\"\u003e#125\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/125\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/125\u003c/a\u003e), thanks Ian Chechin!\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e2026-05-28 v1.51.0:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003ePool the \u003ccode\u003e[]driver.Value\u003c/code\u003e slice passed to scalar/aggregate UDF callbacks and to vtab \u003ccode\u003eFilter\u003c/code\u003e/\u003ccode\u003eInsert\u003c/code\u003e/\u003ccode\u003eUpdate\u003c/code\u003e callbacks, eliminating the dominant per-row allocation on UDF-heavy queries. Benchmarks on a 1000-row, 3-arg noop scalar UDF show ~40% fewer bytes/op and ~15% fewer allocs/op.\u003c/li\u003e\n\u003cli\u003eDocument the matching \u0026quot;arguments are not valid past return\u0026quot; contract on \u003ccode\u003evtab.Cursor.Filter\u003c/code\u003e and \u003ccode\u003evtab.Updater.Insert\u003c/code\u003e/\u003ccode\u003eUpdate\u003c/code\u003e, consistent with the existing rule for \u003ccode\u003eFunctionImpl.Scalar\u003c/code\u003e / \u003ccode\u003eAggregateFunction.Step\u003c/code\u003e / \u003ccode\u003eWindowInverse\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003eResolves [GitLab issue \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/226\"\u003e#226\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/issues/226\"\u003ehttps://gitlab.com/cznic/sqlite/-/issues/226\u003c/a\u003e). See [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/114\"\u003e#114\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/114\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/114\u003c/a\u003e), thanks Ian Chechin!\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003eFileControl.FileControlDataVersion\u003c/code\u003e, a wrapper around \u003ccode\u003eSQLITE_FCNTL_DATA_VERSION\u003c/code\u003e for observing pager-cache data-version changes, including those made on the same connection. Useful as a primitive for application-level cache invalidation.\u003c/li\u003e\n\u003cli\u003eExposed via the idiomatic \u003ccode\u003edatabase/sql\u003c/code\u003e escape hatch \u003ccode\u003e(*sql.Conn).Raw()\u003c/code\u003e, consistent with the existing \u003ccode\u003eFileControlPersistWAL\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/115\"\u003e#115\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/115\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/115\u003c/a\u003e), thanks Ian Chechin!\u003c/li\u003e\n\u003cli\u003eFix a regression where in-memory connections (\u003ccode\u003e:memory:\u003c/code\u003e, \u003ccode\u003efile::memory:\u003c/code\u003e, shared-cache memory URIs) were discarded by \u003ccode\u003edatabase/sql\u003c/code\u003e after a context-cancelled query, taking the entire in-memory store with them. The fix for \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/198\"\u003e#198\u003c/a\u003e had added an \u003ccode\u003esqlite3_is_interrupted\u003c/code\u003e check to the connection validator that mistakenly applied to in-memory connections too, re-introducing the bug originally fixed by !74. File-backed connections keep the existing behaviour and are still discarded after an interrupt.\u003c/li\u003e\n\u003cli\u003eResolves [GitLab issue \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/196\"\u003e#196\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/issues/196\"\u003ehttps://gitlab.com/cznic/sqlite/-/issues/196\u003c/a\u003e). See [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/116\"\u003e#116\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/116\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/116\u003c/a\u003e), thanks Ian Chechin!\u003c/li\u003e\n\u003cli\u003eAdd an opt-in \u003ccode\u003eFunctionImpl.VolatileArgs\u003c/code\u003e flag that hands TEXT and BLOB arguments to scalar and aggregate UDF callbacks as zero-copy views (\u003ccode\u003eunsafe.String\u003c/code\u003e/\u003ccode\u003eunsafe.Slice\u003c/code\u003e) over SQLite's own value buffers, eliminating the per-argument \u003ccode\u003elibc.GoString\u003c/code\u003e/\u003ccode\u003emake([]byte)\u003c/code\u003e copy that the \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/226\"\u003e#226\u003c/a\u003e slice-pooling left as the remaining per-row allocation. On the same 1000-row, 3-arg (INTEGER/TEXT/BLOB) noop scalar UDF this removes a further ~35% of allocs/op and ~11% of bytes/op on top of \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/226\"\u003e#226\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003eThe views are valid only for the duration of the callback and must not be retained past return or across rows; a callback that needs to keep a value must copy it. With \u003ccode\u003eVolatileArgs\u003c/code\u003e unset (the default) arguments keep the existing copied, caller-owned semantics, so the flag is fully backward compatible; it has no effect on integer, float, time, or NULL arguments.\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/120\"\u003e#120\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/120\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/120\u003c/a\u003e), thanks Ian Chechin!\u003c/li\u003e\n\u003cli\u003eExtend the opt-in \u003ccode\u003eVolatileArgs\u003c/code\u003e zero-copy TEXT/BLOB argument access from \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/120\"\u003e#120\u003c/a\u003e to the virtual-table \u003ccode\u003eCursor.Filter\u003c/code\u003e (\u003ccode\u003exFilter\u003c/code\u003e) and \u003ccode\u003eUpdater.Insert\u003c/code\u003e/\u003ccode\u003eUpdate\u003c/code\u003e (\u003ccode\u003exUpdate\u003c/code\u003e) callbacks. A \u003ccode\u003evtab.Module\u003c/code\u003e opts in by implementing the new optional \u003ccode\u003evtab.VolatileArgsOpter\u003c/code\u003e interface (\u003ccode\u003eVolatileArgs() bool\u003c/code\u003e); the flag is read once at module registration and shared by every table created from it. On a vtab call carrying one TEXT and one BLOB argument this removes 2 allocs/op (one \u003ccode\u003elibc.GoString\u003c/code\u003e, one \u003ccode\u003emake([]byte)\u003c/code\u003e) on each of the Filter and Update paths.\u003c/li\u003e\n\u003cli\u003eThe same safety contract as \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/120\"\u003e#120\u003c/a\u003e applies: the views are valid only for the duration of the callback and must not be retained past return or across rows; a callback that needs to keep a value must copy it. Modules that do not implement \u003ccode\u003eVolatileArgsOpter\u003c/code\u003e (the default for all existing modules) are byte-for-byte unchanged, and the flag has no effect on integer, float, time, or NULL arguments.\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/121\"\u003e#121\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/121\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/121\u003c/a\u003e), thanks Ian Chechin!\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e2026-05-10 v1.50.1:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eUpgrade to \u003ca href=\"https://sqlite.org/releaselog/3_53_1.html\"\u003eSQLite 3.53.1\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e2026-04-24 v1.50.0:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eUpgrade to sqlite-vec \u003ca href=\"https://github.com/asg017/sqlite-vec/releases/tag/v0.1.9\"\u003ev0.1.9\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003eIntroduce \u003ccode\u003eColumnInfo\u003c/code\u003e, enabling dynamic query builders and ORMs to retrieve underlying SQLite C-API metadata (\u003ccode\u003eOriginName\u003c/code\u003e, \u003ccode\u003eTableName\u003c/code\u003e, \u003ccode\u003eDatabaseName\u003c/code\u003e, and \u003ccode\u003eDeclType\u003c/code\u003e).\u003c/li\u003e\n\u003cli\u003eThis feature is exposed via the idiomatic \u003ccode\u003edatabase/sql\u003c/code\u003e escape hatch \u003ccode\u003e(*sql.Conn).Raw()\u003c/code\u003e, avoiding custom statement handles and keeping the standard library workflow intact.\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/113\"\u003e#113\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/113\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/113\u003c/a\u003e), thanks Josh Bleecher Snyder!\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e2026-04-17 v1.49.0: Upgrade to \u003ca href=\"https://sqlite.org/releaselog/3_53_0.html\"\u003eSQLite 3.53.0\u003c/a\u003e.\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdded \u003ccode\u003e-DSQLITE_ENABLE_DBPAGE_VTAB\u003c/code\u003e to the transpilation. See \u003ca href=\"https://www.sqlite.org/dbpage.html\"\u003e\u0026quot;The SQLITE_DBPAGE Virtual Table\u0026quot;\u003c/a\u003e for details.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e2026-04-06 v1.48.2:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eFix ABI mapping mismatch in the pre-update hook trampoline that caused silent truncation of large 64-bit RowIDs.\u003c/li\u003e\n\u003cli\u003eEnsure the Go trampoline signature correctly aligns with the public \u003ccode\u003esqlite3_preupdate_hook\u003c/code\u003e C API, preventing data corruption for high-entropy keys (e.g., Snowflake IDs).\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/98\"\u003e#98\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/98\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/98\u003c/a\u003e), thanks Josh Bleecher Snyder!\u003c/li\u003e\n\u003cli\u003eFix the memory allocator used in \u003ccode\u003e(*conn).Deserialize\u003c/code\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/66b4d20f42485b9823a2d35c86b08335d927d0e5\"\u003e\u003ccode\u003e66b4d20\u003c/code\u003e\u003c/a\u003e release v1.52.0, upgrade to SQLite 3.53.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/e3f64ec2f026880b2fbc868f195863648cd07fb3\"\u003e\u003ccode\u003ee3f64ec\u003c/code\u003e\u003c/a\u003e rows: clarify parseFmtIdx mixed-column cost; CHANGELOG.md: document \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/125\"\u003e#125\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/448579342c2da286622d7cab5db84a746124e7b1\"\u003e\u003ccode\u003e4485793\u003c/code\u003e\u003c/a\u003e Merge branch 'perf/cache-parse-time-format' into 'master'\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/3638d17bf28d730d7dd90ff5cf3f93c45b9d752e\"\u003e\u003ccode\u003e3638d17\u003c/code\u003e\u003c/a\u003e rows: cache the parseTime format index per result column\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/7da793ef16502dced14643451a8bec834f999d9e\"\u003e\u003ccode\u003e7da793e\u003c/code\u003e\u003c/a\u003e CHANGELOG.md: document \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/124\"\u003e#124\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/51e6714774262680e2454b1a9ccc49b4245b220a\"\u003e\u003ccode\u003e51e6714\u003c/code\u003e\u003c/a\u003e Merge branch 'perf/cache-column-decltype' into 'master'\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/8a6f33ce42bfa4a864daf8a4c97908e7691499d9\"\u003e\u003ccode\u003e8a6f33c\u003c/code\u003e\u003c/a\u003e rows: lock down ColumnTypeScanType under the decltype cache\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/f8fb6dd1d58d74d022b77cc385a9828a1ac49762\"\u003e\u003ccode\u003ef8fb6dd\u003c/code\u003e\u003c/a\u003e rows: cache the column decltype lookup once per result set\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/b17c0c7faf2247b8251efaa638ac101e5dea7ec1\"\u003e\u003ccode\u003eb17c0c7\u003c/code\u003e\u003c/a\u003e CHANGELOG.md: document \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/123\"\u003e#123\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/c80a08fbe3d37ffa8c7e669c46053b692135523b\"\u003e\u003ccode\u003ec80a08f\u003c/code\u003e\u003c/a\u003e Merge branch 'perf/column-text-zero-copy' into 'master'\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://gitlab.com/cznic/sqlite/compare/v1.51.0...v1.52.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\n\n[![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=modernc.org/sqlite\u0026package-manager=go_modules\u0026previous-version=1.51.0\u0026new-version=1.52.0)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)\n\nDependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.\n\n[//]: # (dependabot-automerge-start)\n[//]: # (dependabot-automerge-end)\n\n---\n\n\u003cdetails\u003e\n\u003csummary\u003eDependabot commands and options\u003c/summary\u003e\n\u003cbr /\u003e\n\nYou can trigger Dependabot actions by commenting on this PR:\n- `@dependabot rebase` will rebase this PR\n- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it\n- `@dependabot show \u003cdependency name\u003e ignore conditions` will show all of the ignore conditions of the specified dependency\n- `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)\n- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)\n- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)\n\n\n\u003c/details\u003e","html_url":"https://github.com/openclaw/graincrawl/pull/20","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/openclaw%2Fgraincrawl/issues/20","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/20/packages"}},{"old_version":"1.51.0","new_version":"1.52.0","update_type":"minor","path":null,"pr_created_at":"2026-06-09T07:25:22.000Z","version_change":"1.51.0 → 1.52.0","issue":{"uuid":"4619835917","node_id":"PR_kwDOHsPGZ87kQ15f","number":749,"state":"closed","title":"Bump the go-modules group across 1 directory with 28 updates","user":"dependabot[bot]","labels":["semver:patch","dependencies","go"],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":"2026-06-10T07:05:02.000Z","author_association":null,"state_reason":null,"created_at":"2026-06-09T07:25:22.000Z","updated_at":"2026-06-10T07:05:05.000Z","time_to_close":85180,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"Bump","group_name":"go-modules","update_count":28,"packages":[{"name":"github.com/anchore/stereoscope","old_version":"0.2.0","new_version":"0.2.1","repository_url":"https://github.com/anchore/stereoscope"},{"name":"github.com/anchore/syft","old_version":"1.45.0","new_version":"1.45.1","repository_url":"https://github.com/anchore/syft"},{"name":"github.com/aws/aws-sdk-go-v2","old_version":"1.41.12","new_version":"1.42.0","repository_url":"https://github.com/aws/aws-sdk-go-v2"},{"name":"github.com/aws/aws-sdk-go-v2/config","old_version":"1.32.23","new_version":"1.32.24","repository_url":"https://github.com/aws/aws-sdk-go-v2"},{"name":"github.com/aws/aws-sdk-go-v2/service/internal/checksum","old_version":"1.9.21","new_version":"1.9.22","repository_url":"https://github.com/aws/aws-sdk-go-v2"},{"name":"github.com/aws/aws-sdk-go-v2/service/internal/s3shared","old_version":"1.19.28","new_version":"1.19.29","repository_url":"https://github.com/aws/aws-sdk-go-v2"},{"name":"github.com/aws/aws-sdk-go-v2/service/s3","old_version":"1.103.2","new_version":"1.103.3","repository_url":"https://github.com/aws/aws-sdk-go-v2"},{"name":"github.com/aws/smithy-go","old_version":"1.27.1","new_version":"1.27.2","repository_url":"https://github.com/aws/smithy-go"},{"name":"github.com/docker/docker-credential-helpers","old_version":"0.9.7","new_version":"0.9.8","repository_url":"https://github.com/docker/docker-credential-helpers"},{"name":"github.com/moby/sys/sequential","old_version":"0.6.0","new_version":"0.7.0","repository_url":"https://github.com/moby/sys"},{"name":"golang.org/x/crypto","old_version":"0.52.0","new_version":"0.53.0","repository_url":"https://github.com/golang/crypto"},{"name":"golang.org/x/mod","old_version":"0.36.0","new_version":"0.37.0","repository_url":"https://github.com/golang/mod"},{"name":"modernc.org/libc","old_version":"1.72.5","new_version":"1.73.0"},{"name":"modernc.org/sqlite","old_version":"1.51.0","new_version":"1.52.0"}],"path":null,"ecosystem":"go"},"body":"Bumps the go-modules group with 14 updates in the / directory:\n\n| Package | From | To |\n| --- | --- | --- |\n| [github.com/anchore/stereoscope](https://github.com/anchore/stereoscope) | `0.2.0` | `0.2.1` |\n| [github.com/anchore/syft](https://github.com/anchore/syft) | `1.45.0` | `1.45.1` |\n| [github.com/aws/aws-sdk-go-v2](https://github.com/aws/aws-sdk-go-v2) | `1.41.12` | `1.42.0` |\n| [github.com/aws/aws-sdk-go-v2/config](https://github.com/aws/aws-sdk-go-v2) | `1.32.23` | `1.32.24` |\n| [github.com/aws/aws-sdk-go-v2/service/internal/checksum](https://github.com/aws/aws-sdk-go-v2) | `1.9.21` | `1.9.22` |\n| [github.com/aws/aws-sdk-go-v2/service/internal/s3shared](https://github.com/aws/aws-sdk-go-v2) | `1.19.28` | `1.19.29` |\n| [github.com/aws/aws-sdk-go-v2/service/s3](https://github.com/aws/aws-sdk-go-v2) | `1.103.2` | `1.103.3` |\n| [github.com/aws/smithy-go](https://github.com/aws/smithy-go) | `1.27.1` | `1.27.2` |\n| [github.com/docker/docker-credential-helpers](https://github.com/docker/docker-credential-helpers) | `0.9.7` | `0.9.8` |\n| [github.com/moby/sys/sequential](https://github.com/moby/sys) | `0.6.0` | `0.7.0` |\n| [golang.org/x/crypto](https://github.com/golang/crypto) | `0.52.0` | `0.53.0` |\n| [golang.org/x/mod](https://github.com/golang/mod) | `0.36.0` | `0.37.0` |\n| [modernc.org/libc](https://gitlab.com/cznic/libc) | `1.72.5` | `1.73.0` |\n| [modernc.org/sqlite](https://gitlab.com/cznic/sqlite) | `1.51.0` | `1.52.0` |\n\n\nUpdates `github.com/anchore/stereoscope` from 0.2.0 to 0.2.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/anchore/stereoscope/releases\"\u003egithub.com/anchore/stereoscope's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev0.2.1\u003c/h2\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eclose layer readers to not block on registry limiter [\u003ca href=\"https://redirect.github.com/anchore/stereoscope/pull/612\"\u003e#612\u003c/a\u003e \u003ca href=\"https://github.com/spiffcs\"\u003e\u003ccode\u003e@​spiffcs\u003c/code\u003e\u003c/a\u003e]\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAdditional Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003ebump the actions-minor-patch group across 1 directory with 4 updates [\u003ca href=\"https://redirect.github.com/anchore/stereoscope/pull/607\"\u003e#607\u003c/a\u003e \u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e]\u003c/li\u003e\n\u003cli\u003ebump the actions-minor-patch group across 2 directories with 5 updates [\u003ca href=\"https://redirect.github.com/anchore/stereoscope/pull/605\"\u003e#605\u003c/a\u003e \u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e]\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003e\u003ca href=\"https://github.com/anchore/stereoscope/compare/v0.2.0...v0.2.1\"\u003e(Full Changelog)\u003c/a\u003e\u003c/strong\u003e\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/anchore/stereoscope/commit/28a3ab3f7dd5b2060cc7733d712f99995e48fef8\"\u003e\u003ccode\u003e28a3ab3\u003c/code\u003e\u003c/a\u003e fix: close readers to return limiter tokens (\u003ca href=\"https://redirect.github.com/anchore/stereoscope/issues/612\"\u003e#612\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/anchore/stereoscope/commit/a0763b55d3b2b03b46fbdb69d41bf1ddfa3fcffb\"\u003e\u003ccode\u003ea0763b5\u003c/code\u003e\u003c/a\u003e Pass 'contents: read' to check-gate workflow (\u003ca href=\"https://redirect.github.com/anchore/stereoscope/issues/611\"\u003e#611\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/anchore/stereoscope/commit/5c36ef0c6652ce5b16406cb156370f7511957206\"\u003e\u003ccode\u003e5c36ef0\u003c/code\u003e\u003c/a\u003e chore(deps): update tool versions (\u003ca href=\"https://redirect.github.com/anchore/stereoscope/issues/603\"\u003e#603\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/anchore/stereoscope/commit/4b860047288c76f12b5d2d7c80b887f87aef4cc7\"\u003e\u003ccode\u003e4b86004\u003c/code\u003e\u003c/a\u003e chore(deps): bump the actions-minor-patch group across 1 directory with 4 upd...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/anchore/stereoscope/commit/ff4e7b896e8d95ed66f8d280ff802b19b6f4b1b2\"\u003e\u003ccode\u003eff4e7b8\u003c/code\u003e\u003c/a\u003e chore(deps): bump the actions-minor-patch group across 2 directories with 5 u...\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/anchore/stereoscope/compare/v0.2.0...v0.2.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `github.com/anchore/syft` from 1.45.0 to 1.45.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/anchore/syft/releases\"\u003egithub.com/anchore/syft's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev1.45.1\u003c/h2\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003ebump stereoscope to pull in fix for registry client hanging [\u003ca href=\"https://redirect.github.com/anchore/syft/pull/4934\"\u003e#4934\u003c/a\u003e \u003ca href=\"https://github.com/anchore-oss-update-bot\"\u003e\u003ccode\u003e@​anchore-oss-update-bot\u003c/code\u003e\u003c/a\u003e]\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003e\u003ca href=\"https://github.com/anchore/syft/compare/v1.45.0...v1.45.1\"\u003e(Full Changelog)\u003c/a\u003e\u003c/strong\u003e\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/anchore/syft/commit/d4496b05aab2d489a5c2ec606755b657229b8925\"\u003e\u003ccode\u003ed4496b0\u003c/code\u003e\u003c/a\u003e chore(deps): update anchore dependencies (\u003ca href=\"https://redirect.github.com/anchore/syft/issues/4934\"\u003e#4934\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/anchore/syft/commit/adc55cdb3aa3736eaa20408c0349bffd937f303f\"\u003e\u003ccode\u003eadc55cd\u003c/code\u003e\u003c/a\u003e chore(deps): bump the go-minor-patch group across 1 directory with 3 updates ...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/anchore/syft/commit/00d0bb59ccc68af7484868844da9e60d7ecad973\"\u003e\u003ccode\u003e00d0bb5\u003c/code\u003e\u003c/a\u003e chore(deps): update tool versions (\u003ca href=\"https://redirect.github.com/anchore/syft/issues/4724\"\u003e#4724\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/anchore/syft/commit/f4743087837301da934ebcdc2b5e3a7a70e8a95f\"\u003e\u003ccode\u003ef474308\u003c/code\u003e\u003c/a\u003e chore(deps): bump the go-minor-patch group across 2 directories with 14 updat...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/anchore/syft/commit/bf67072246f44a933575ed29370b4027f55c0366\"\u003e\u003ccode\u003ebf67072\u003c/code\u003e\u003c/a\u003e chore: bump golang.org/x/crypto (\u003ca href=\"https://redirect.github.com/anchore/syft/issues/4955\"\u003e#4955\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/anchore/syft/compare/v1.45.0...v1.45.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `github.com/aws/aws-sdk-go-v2` from 1.41.12 to 1.42.0\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/9a3190f79c9e3f7dce5d602be375c07ecd8973cc\"\u003e\u003ccode\u003e9a3190f\u003c/code\u003e\u003c/a\u003e Release 2026-06-08\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/b20dd5bb52bbb193b036c3e81525e7a06f3f819b\"\u003e\u003ccode\u003eb20dd5b\u003c/code\u003e\u003c/a\u003e Regenerated Clients\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/75a45eaa192d32d7e1247a666f9572a61443b48a\"\u003e\u003ccode\u003e75a45ea\u003c/code\u003e\u003c/a\u003e Update API model\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/e736f55ba6d11d83f9b8d858bbd9ab6c1a883ee2\"\u003e\u003ccode\u003ee736f55\u003c/code\u003e\u003c/a\u003e Add preview of changes for standard retry mode behind flag (\u003ca href=\"https://redirect.github.com/aws/aws-sdk-go-v2/issues/3400\"\u003e#3400\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/ba08dc9776ad30b7e5299dd98f3f0360d39656d4\"\u003e\u003ccode\u003eba08dc9\u003c/code\u003e\u003c/a\u003e Release 2026-06-05.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/9a67e21ffef3d8b3c9c84e9ce7d90314b646f395\"\u003e\u003ccode\u003e9a67e21\u003c/code\u003e\u003c/a\u003e Revert schema serde (\u003ca href=\"https://redirect.github.com/aws/aws-sdk-go-v2/issues/3442\"\u003e#3442\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/51692f80a1919052106b080468a7d231649d10a4\"\u003e\u003ccode\u003e51692f8\u003c/code\u003e\u003c/a\u003e s3/transfermanager: avoid double-closing concurrentReader channel after read ...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/f696d5bbafd406a16429239844c6e70627aee935\"\u003e\u003ccode\u003ef696d5b\u003c/code\u003e\u003c/a\u003e Release 2026-06-05\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/7efb8fd6bd7b33d2242586a63a32eca93f774f89\"\u003e\u003ccode\u003e7efb8fd\u003c/code\u003e\u003c/a\u003e Regenerated Clients\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/1a420c53c9599f9267285650a61009933de8c9bb\"\u003e\u003ccode\u003e1a420c5\u003c/code\u003e\u003c/a\u003e Update endpoints model\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/aws/aws-sdk-go-v2/compare/v1.41.12...v1.42.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `github.com/aws/aws-sdk-go-v2/config` from 1.32.23 to 1.32.24\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/9a3190f79c9e3f7dce5d602be375c07ecd8973cc\"\u003e\u003ccode\u003e9a3190f\u003c/code\u003e\u003c/a\u003e Release 2026-06-08\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/b20dd5bb52bbb193b036c3e81525e7a06f3f819b\"\u003e\u003ccode\u003eb20dd5b\u003c/code\u003e\u003c/a\u003e Regenerated Clients\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/75a45eaa192d32d7e1247a666f9572a61443b48a\"\u003e\u003ccode\u003e75a45ea\u003c/code\u003e\u003c/a\u003e Update API model\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/e736f55ba6d11d83f9b8d858bbd9ab6c1a883ee2\"\u003e\u003ccode\u003ee736f55\u003c/code\u003e\u003c/a\u003e Add preview of changes for standard retry mode behind flag (\u003ca href=\"https://redirect.github.com/aws/aws-sdk-go-v2/issues/3400\"\u003e#3400\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/ba08dc9776ad30b7e5299dd98f3f0360d39656d4\"\u003e\u003ccode\u003eba08dc9\u003c/code\u003e\u003c/a\u003e Release 2026-06-05.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/9a67e21ffef3d8b3c9c84e9ce7d90314b646f395\"\u003e\u003ccode\u003e9a67e21\u003c/code\u003e\u003c/a\u003e Revert schema serde (\u003ca href=\"https://redirect.github.com/aws/aws-sdk-go-v2/issues/3442\"\u003e#3442\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/51692f80a1919052106b080468a7d231649d10a4\"\u003e\u003ccode\u003e51692f8\u003c/code\u003e\u003c/a\u003e s3/transfermanager: avoid double-closing concurrentReader channel after read ...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/f696d5bbafd406a16429239844c6e70627aee935\"\u003e\u003ccode\u003ef696d5b\u003c/code\u003e\u003c/a\u003e Release 2026-06-05\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/7efb8fd6bd7b33d2242586a63a32eca93f774f89\"\u003e\u003ccode\u003e7efb8fd\u003c/code\u003e\u003c/a\u003e Regenerated Clients\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/1a420c53c9599f9267285650a61009933de8c9bb\"\u003e\u003ccode\u003e1a420c5\u003c/code\u003e\u003c/a\u003e Update endpoints model\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/aws/aws-sdk-go-v2/compare/config/v1.32.23...config/v1.32.24\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `github.com/aws/aws-sdk-go-v2/credentials` from 1.19.22 to 1.19.23\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/9a3190f79c9e3f7dce5d602be375c07ecd8973cc\"\u003e\u003ccode\u003e9a3190f\u003c/code\u003e\u003c/a\u003e Release 2026-06-08\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/b20dd5bb52bbb193b036c3e81525e7a06f3f819b\"\u003e\u003ccode\u003eb20dd5b\u003c/code\u003e\u003c/a\u003e Regenerated Clients\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/75a45eaa192d32d7e1247a666f9572a61443b48a\"\u003e\u003ccode\u003e75a45ea\u003c/code\u003e\u003c/a\u003e Update API model\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/e736f55ba6d11d83f9b8d858bbd9ab6c1a883ee2\"\u003e\u003ccode\u003ee736f55\u003c/code\u003e\u003c/a\u003e Add preview of changes for standard retry mode behind flag (\u003ca href=\"https://redirect.github.com/aws/aws-sdk-go-v2/issues/3400\"\u003e#3400\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/ba08dc9776ad30b7e5299dd98f3f0360d39656d4\"\u003e\u003ccode\u003eba08dc9\u003c/code\u003e\u003c/a\u003e Release 2026-06-05.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/9a67e21ffef3d8b3c9c84e9ce7d90314b646f395\"\u003e\u003ccode\u003e9a67e21\u003c/code\u003e\u003c/a\u003e Revert schema serde (\u003ca href=\"https://redirect.github.com/aws/aws-sdk-go-v2/issues/3442\"\u003e#3442\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/51692f80a1919052106b080468a7d231649d10a4\"\u003e\u003ccode\u003e51692f8\u003c/code\u003e\u003c/a\u003e s3/transfermanager: avoid double-closing concurrentReader channel after read ...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/f696d5bbafd406a16429239844c6e70627aee935\"\u003e\u003ccode\u003ef696d5b\u003c/code\u003e\u003c/a\u003e Release 2026-06-05\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/7efb8fd6bd7b33d2242586a63a32eca93f774f89\"\u003e\u003ccode\u003e7efb8fd\u003c/code\u003e\u003c/a\u003e Regenerated Clients\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/1a420c53c9599f9267285650a61009933de8c9bb\"\u003e\u003ccode\u003e1a420c5\u003c/code\u003e\u003c/a\u003e Update endpoints model\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/aws/aws-sdk-go-v2/compare/credentials/v1.19.22...credentials/v1.19.23\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `github.com/aws/aws-sdk-go-v2/feature/ec2/imds` from 1.18.28 to 1.18.29\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/806208b12d2f51bf0a7eb79e56cb48fb65c39fab\"\u003e\u003ccode\u003e806208b\u003c/code\u003e\u003c/a\u003e Release 2023-07-25\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/6122cccddb427920740de13955eb7bcba89bd4be\"\u003e\u003ccode\u003e6122ccc\u003c/code\u003e\u003c/a\u003e Regenerated Clients\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/f4dd56b56176a632247f43e80d7e1c4a4b0f84d1\"\u003e\u003ccode\u003ef4dd56b\u003c/code\u003e\u003c/a\u003e Update API model\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/28158616ee5740cfb02dda5db9aa8c5e21c19657\"\u003e\u003ccode\u003e2815861\u003c/code\u003e\u003c/a\u003e Release 2023-07-24\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/374837233da053387c9e7c8f61b5c64ba7458139\"\u003e\u003ccode\u003e3748372\u003c/code\u003e\u003c/a\u003e Regenerated Clients\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/45fe75421d984874fa8ae2fa555bd2dbd92cbec7\"\u003e\u003ccode\u003e45fe754\u003c/code\u003e\u003c/a\u003e Update endpoints model\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/08fe2055886fa9af157f9a13d0fbf4e0323b2d4b\"\u003e\u003ccode\u003e08fe205\u003c/code\u003e\u003c/a\u003e Update API model\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/bd8bdffb8d030c176ee49a372292e29588683a5f\"\u003e\u003ccode\u003ebd8bdff\u003c/code\u003e\u003c/a\u003e added workflow for handling answerable discussions (\u003ca href=\"https://redirect.github.com/aws/aws-sdk-go-v2/issues/2191\"\u003e#2191\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/58257c6ec53d7ed32394a0abba2fb9bd86b63840\"\u003e\u003ccode\u003e58257c6\u003c/code\u003e\u003c/a\u003e Release 2023-07-21\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/f10862bc1e741bf1401874e7fe1b0d1f3beff561\"\u003e\u003ccode\u003ef10862b\u003c/code\u003e\u003c/a\u003e Regenerated Clients\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/aws/aws-sdk-go-v2/compare/config/v1.18.28...config/v1.18.29\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `github.com/aws/aws-sdk-go-v2/internal/configsources` from 1.4.28 to 1.4.29\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/7146c2b4007293f0acc9b2e8b92ffa7a30841df0\"\u003e\u003ccode\u003e7146c2b\u003c/code\u003e\u003c/a\u003e Release 2026-06-04\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/5aef2fd8a4027ecf34eb5e32a28ff4a955b353d6\"\u003e\u003ccode\u003e5aef2fd\u003c/code\u003e\u003c/a\u003e Regenerated Clients\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/f94c04478d36a4ffb777221761459fb4b1d20cba\"\u003e\u003ccode\u003ef94c044\u003c/code\u003e\u003c/a\u003e Update API model\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/f00b205128286d6431115dd078da3c36197999f4\"\u003e\u003ccode\u003ef00b205\u003c/code\u003e\u003c/a\u003e bump to smithy-go v1.27.1 (\u003ca href=\"https://redirect.github.com/aws/aws-sdk-go-v2/issues/3434\"\u003e#3434\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/c4ad7dee6ebd9a3e1c7ee208f77e4ac8532b17c9\"\u003e\u003ccode\u003ec4ad7de\u003c/code\u003e\u003c/a\u003e drop service/internal/benchmark (\u003ca href=\"https://redirect.github.com/aws/aws-sdk-go-v2/issues/3433\"\u003e#3433\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/91eca463daf932474778dc4a984c41ecfcd9dc3c\"\u003e\u003ccode\u003e91eca46\u003c/code\u003e\u003c/a\u003e Release 2026-06-03.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/e9d9e156c352b4956ed0b3d57614467d1f79c62b\"\u003e\u003ccode\u003ee9d9e15\u003c/code\u003e\u003c/a\u003e Regenerated Clients\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/def6a3a4bb06c199a4843c501d84730d8235cab4\"\u003e\u003ccode\u003edef6a3a\u003c/code\u003e\u003c/a\u003e Update API model\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/aws/aws-sdk-go-v2/compare/internal/v4a/v1.4.28...internal/v4a/v1.4.29\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `github.com/aws/aws-sdk-go-v2/internal/endpoints/v2` from 2.7.28 to 2.7.29\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/9a3190f79c9e3f7dce5d602be375c07ecd8973cc\"\u003e\u003ccode\u003e9a3190f\u003c/code\u003e\u003c/a\u003e Release 2026-06-08\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/b20dd5bb52bbb193b036c3e81525e7a06f3f819b\"\u003e\u003ccode\u003eb20dd5b\u003c/code\u003e\u003c/a\u003e Regenerated Clients\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/75a45eaa192d32d7e1247a666f9572a61443b48a\"\u003e\u003ccode\u003e75a45ea\u003c/code\u003e\u003c/a\u003e Update API model\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/e736f55ba6d11d83f9b8d858bbd9ab6c1a883ee2\"\u003e\u003ccode\u003ee736f55\u003c/code\u003e\u003c/a\u003e Add preview of changes for standard retry mode behind flag (\u003ca href=\"https://redirect.github.com/aws/aws-sdk-go-v2/issues/3400\"\u003e#3400\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/ba08dc9776ad30b7e5299dd98f3f0360d39656d4\"\u003e\u003ccode\u003eba08dc9\u003c/code\u003e\u003c/a\u003e Release 2026-06-05.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/9a67e21ffef3d8b3c9c84e9ce7d90314b646f395\"\u003e\u003ccode\u003e9a67e21\u003c/code\u003e\u003c/a\u003e Revert schema serde (\u003ca href=\"https://redirect.github.com/aws/aws-sdk-go-v2/issues/3442\"\u003e#3442\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/51692f80a1919052106b080468a7d231649d10a4\"\u003e\u003ccode\u003e51692f8\u003c/code\u003e\u003c/a\u003e s3/transfermanager: avoid double-closing concurrentReader channel after read ...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/f696d5bbafd406a16429239844c6e70627aee935\"\u003e\u003ccode\u003ef696d5b\u003c/code\u003e\u003c/a\u003e Release 2026-06-05\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/7efb8fd6bd7b33d2242586a63a32eca93f774f89\"\u003e\u003ccode\u003e7efb8fd\u003c/code\u003e\u003c/a\u003e Regenerated Clients\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/1a420c53c9599f9267285650a61009933de8c9bb\"\u003e\u003ccode\u003e1a420c5\u003c/code\u003e\u003c/a\u003e Update endpoints model\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/aws/aws-sdk-go-v2/compare/internal/endpoints/v2.7.28...internal/endpoints/v2.7.29\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `github.com/aws/aws-sdk-go-v2/internal/v4a` from 1.4.29 to 1.4.30\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/9a3190f79c9e3f7dce5d602be375c07ecd8973cc\"\u003e\u003ccode\u003e9a3190f\u003c/code\u003e\u003c/a\u003e Release 2026-06-08\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/b20dd5bb52bbb193b036c3e81525e7a06f3f819b\"\u003e\u003ccode\u003eb20dd5b\u003c/code\u003e\u003c/a\u003e Regenerated Clients\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/75a45eaa192d32d7e1247a666f9572a61443b48a\"\u003e\u003ccode\u003e75a45ea\u003c/code\u003e\u003c/a\u003e Update API model\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/e736f55ba6d11d83f9b8d858bbd9ab6c1a883ee2\"\u003e\u003ccode\u003ee736f55\u003c/code\u003e\u003c/a\u003e Add preview of changes for standard retry mode behind flag (\u003ca href=\"https://redirect.github.com/aws/aws-sdk-go-v2/issues/3400\"\u003e#3400\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/ba08dc9776ad30b7e5299dd98f3f0360d39656d4\"\u003e\u003ccode\u003eba08dc9\u003c/code\u003e\u003c/a\u003e Release 2026-06-05.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/9a67e21ffef3d8b3c9c84e9ce7d90314b646f395\"\u003e\u003ccode\u003e9a67e21\u003c/code\u003e\u003c/a\u003e Revert schema serde (\u003ca href=\"https://redirect.github.com/aws/aws-sdk-go-v2/issues/3442\"\u003e#3442\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/51692f80a1919052106b080468a7d231649d10a4\"\u003e\u003ccode\u003e51692f8\u003c/code\u003e\u003c/a\u003e s3/transfermanager: avoid double-closing concurrentReader channel after read ...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/f696d5bbafd406a16429239844c6e70627aee935\"\u003e\u003ccode\u003ef696d5b\u003c/code\u003e\u003c/a\u003e Release 2026-06-05\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/7efb8fd6bd7b33d2242586a63a32eca93f774f89\"\u003e\u003ccode\u003e7efb8fd\u003c/code\u003e\u003c/a\u003e Regenerated Clients\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/1a420c53c9599f9267285650a61009933de8c9bb\"\u003e\u003ccode\u003e1a420c5\u003c/code\u003e\u003c/a\u003e Update endpoints model\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/aws/aws-sdk-go-v2/compare/internal/v4a/v1.4.29...internal/v4a/v1.4.30\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `github.com/aws/aws-sdk-go-v2/service/internal/checksum` from 1.9.21 to 1.9.22\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/9bc9c51d733fd437a60a8710531477ca0347dcc4\"\u003e\u003ccode\u003e9bc9c51\u003c/code\u003e\u003c/a\u003e Release 2026-04-17\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/2b41455a8d88032b9b76b0bafbe23de0a61a6f29\"\u003e\u003ccode\u003e2b41455\u003c/code\u003e\u003c/a\u003e Regenerated Clients\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/2327a1b15b5f16414e715325bc9579082fde0767\"\u003e\u003ccode\u003e2327a1b\u003c/code\u003e\u003c/a\u003e Update endpoints model\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/9225797aa8ce8661d61f4628973aface4e01c922\"\u003e\u003ccode\u003e9225797\u003c/code\u003e\u003c/a\u003e Update API model\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/7b6f675adb365c7b069aaf2a8e81c4b8f8a5d08e\"\u003e\u003ccode\u003e7b6f675\u003c/code\u003e\u003c/a\u003e Bump smithy-go to 1.25 (again) (\u003ca href=\"https://redirect.github.com/aws/aws-sdk-go-v2/issues/3390\"\u003e#3390\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/c8b6a97220901cccfd8a06f6f25aef65a967384c\"\u003e\u003ccode\u003ec8b6a97\u003c/code\u003e\u003c/a\u003e Release 2026-04-16\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/4a05c2ba948715d305aff4519154abe2c4799246\"\u003e\u003ccode\u003e4a05c2b\u003c/code\u003e\u003c/a\u003e Regenerated Clients\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/6cd4cc9201382be2638c8b4951b5d92de73c1161\"\u003e\u003ccode\u003e6cd4cc9\u003c/code\u003e\u003c/a\u003e Update endpoints model\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/3153bed494fb9e426640b30c7b91be0510b20362\"\u003e\u003ccode\u003e3153bed\u003c/code\u003e\u003c/a\u003e Update API model\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/fe3cef6cc115a2915f5410c739dc73d51553d709\"\u003e\u003ccode\u003efe3cef6\u003c/code\u003e\u003c/a\u003e Make AccountIDEndpointRouting aware of bdd endpoints (\u003ca href=\"https://redirect.github.com/aws/aws-sdk-go-v2/issues/3387\"\u003e#3387\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/aws/aws-sdk-go-v2/compare/feature/cloudfront/sign/v1.9.21...feature/cloudfront/sign/v1.9.22\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `github.com/aws/aws-sdk-go-v2/service/internal/presigned-url` from 1.13.28 to 1.13.29\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/a5d5009095c5f8bf340673926d7dac305b2dcec3\"\u003e\u003ccode\u003ea5d5009\u003c/code\u003e\u003c/a\u003e Release 2023-07-28\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/ff82299a6ebbc5e5f0a9eddff7776c072f0cb4e8\"\u003e\u003ccode\u003eff82299\u003c/code\u003e\u003c/a\u003e Regenerated Clients\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/fc5a86f8fdc4e9af70b87362a6a55c6c6f91826f\"\u003e\u003ccode\u003efc5a86f\u003c/code\u003e\u003c/a\u003e Update API model\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/62ffb94b9079e4d5e154d7c7de1e89971d88b395\"\u003e\u003ccode\u003e62ffb94\u003c/code\u003e\u003c/a\u003e fix v4.go PresignHTTP doc (\u003ca href=\"https://redirect.github.com/aws/aws-sdk-go-v2/issues/2212\"\u003e#2212\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/b4d8d26ccac83a0c8e15b01990a475364ac03e52\"\u003e\u003ccode\u003eb4d8d26\u003c/code\u003e\u003c/a\u003e Release 2023-07-27\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/ad521060000fcf57abf457d6d9be1cc0290c0a4f\"\u003e\u003ccode\u003ead52106\u003c/code\u003e\u003c/a\u003e Regenerated Clients\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/f335bcf78da9b8d4b4208e5b632441991b2c79c5\"\u003e\u003ccode\u003ef335bcf\u003c/code\u003e\u003c/a\u003e Update API model\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/d5a9934e2bb72aa010b157965263b7f89698a5a4\"\u003e\u003ccode\u003ed5a9934\u003c/code\u003e\u003c/a\u003e Release 2023-07-26\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/247060d3224d694b43e53010f1e6d706d0ed3581\"\u003e\u003ccode\u003e247060d\u003c/code\u003e\u003c/a\u003e Regenerated Clients\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/61540ee88b45c53f89b9bb99db5c8fc079900bf5\"\u003e\u003ccode\u003e61540ee\u003c/code\u003e\u003c/a\u003e Update endpoints model\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/aws/aws-sdk-go-v2/compare/credentials/v1.13.28...credentials/v1.13.29\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `github.com/aws/aws-sdk-go-v2/service/internal/s3shared` from 1.19.28 to 1.19.29\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/9a3190f79c9e3f7dce5d602be375c07ecd8973cc\"\u003e\u003ccode\u003e9a3190f\u003c/code\u003e\u003c/a\u003e Release 2026-06-08\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/b20dd5bb52bbb193b036c3e81525e7a06f3f819b\"\u003e\u003ccode\u003eb20dd5b\u003c/code\u003e\u003c/a\u003e Regenerated Clients\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/75a45eaa192d32d7e1247a666f9572a61443b48a\"\u003e\u003ccode\u003e75a45ea\u003c/code\u003e\u003c/a\u003e Update API model\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/e736f55ba6d11d83f9b8d858bbd9ab6c1a883ee2\"\u003e\u003ccode\u003ee736f55\u003c/code\u003e\u003c/a\u003e Add preview of changes for standard retry mode behind flag (\u003ca href=\"https://redirect.github.com/aws/aws-sdk-go-v2/issues/3400\"\u003e#3400\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/ba08dc9776ad30b7e5299dd98f3f0360d39656d4\"\u003e\u003ccode\u003eba08dc9\u003c/code\u003e\u003c/a\u003e Release 2026-06-05.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/9a67e21ffef3d8b3c9c84e9ce7d90314b646f395\"\u003e\u003ccode\u003e9a67e21\u003c/code\u003e\u003c/a\u003e Revert schema serde (\u003ca href=\"https://redirect.github.com/aws/aws-sdk-go-v2/issues/3442\"\u003e#3442\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/51692f80a1919052106b080468a7d231649d10a4\"\u003e\u003ccode\u003e51692f8\u003c/code\u003e\u003c/a\u003e s3/transfermanager: avoid double-closing concurrentReader channel after read ...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/f696d5bbafd406a16429239844c6e70627aee935\"\u003e\u003ccode\u003ef696d5b\u003c/code\u003e\u003c/a\u003e Release 2026-06-05\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/7efb8fd6bd7b33d2242586a63a32eca93f774f89\"\u003e\u003ccode\u003e7efb8fd\u003c/code\u003e\u003c/a\u003e Regenerated Clients\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/1a420c53c9599f9267285650a61009933de8c9bb\"\u003e\u003ccode\u003e1a420c5\u003c/code\u003e\u003c/a\u003e Update endpoints model\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/aws/aws-sdk-go-v2/compare/service/internal/s3shared/v1.19.28...service/internal/s3shared/v1.19.29\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `github.com/aws/aws-sdk-go-v2/service/s3` from 1.103.2 to 1.103.3\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/9a3190f79c9e3f7dce5d602be375c07ecd8973cc\"\u003e\u003ccode\u003e9a3190f\u003c/code\u003e\u003c/a\u003e Release 2026-06-08\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/b20dd5bb52bbb193b036c3e81525e7a06f3f819b\"\u003e\u003ccode\u003eb20dd5b\u003c/code\u003e\u003c/a\u003e Regenerated Clients\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/75a45eaa192d32d7e1247a666f9572a61443b48a\"\u003e\u003ccode\u003e75a45ea\u003c/code\u003e\u003c/a\u003e Update API model\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/e736f55ba6d11d83f9b8d858bbd9ab6c1a883ee2\"\u003e\u003ccode\u003ee736f55\u003c/code\u003e\u003c/a\u003e Add preview of changes for standard retry mode behind flag (\u003ca href=\"https://redirect.github.com/aws/aws-sdk-go-v2/issues/3400\"\u003e#3400\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/ba08dc9776ad30b7e5299dd98f3f0360d39656d4\"\u003e\u003ccode\u003eba08dc9\u003c/code\u003e\u003c/a\u003e Release 2026-06-05.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/9a67e21ffef3d8b3c9c84e9ce7d90314b646f395\"\u003e\u003ccode\u003e9a67e21\u003c/code\u003e\u003c/a\u003e Revert schema serde (\u003ca href=\"https://redirect.github.com/aws/aws-sdk-go-v2/issues/3442\"\u003e#3442\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/51692f80a1919052106b080468a7d231649d10a4\"\u003e\u003ccode\u003e51692f8\u003c/code\u003e\u003c/a\u003e s3/transfermanager: avoid double-closing concurrentReader channel after read ...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/f696d5bbafd406a16429239844c6e70627aee935\"\u003e\u003ccode\u003ef696d5b\u003c/code\u003e\u003c/a\u003e Release 2026-06-05\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/7efb8fd6bd7b33d2242586a63a32eca93f774f89\"\u003e\u003ccode\u003e7efb8fd\u003c/code\u003e\u003c/a\u003e Regenerated Clients\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/1a420c53c9599f9267285650a61009933de8c9bb\"\u003e\u003ccode\u003e1a420c5\u003c/code\u003e\u003c/a\u003e Update endpoints model\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/aws/aws-sdk-go-v2/compare/service/s3/v1.103.2...service/s3/v1.103.3\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `github.com/aws/aws-sdk-go-v2/service/signin` from 1.1.4 to 1.1.5\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/fdbaadbce5fd7d742865b196dd074493e4cedfc7\"\u003e\u003ccode\u003efdbaadb\u003c/code\u003e\u003c/a\u003e Release 2021-04-08\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/d498a2e63a08514d0de475555f54d876c707d055\"\u003e\u003ccode\u003ed498a2e\u003c/code\u003e\u003c/a\u003e changenotes for smithy go dependency bump to core\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/bca1385dbac5906cc9753c264ea529fc0d49c5f3\"\u003e\u003ccode\u003ebca1385\u003c/code\u003e\u003c/a\u003e make generate changes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/214f719ecb764abc6af5ad7667e2ef307f9dca86\"\u003e\u003ccode\u003e214f719\u003c/code\u003e\u003c/a\u003e Sync smithy api models and endpoints (\u003ca href=\"https://redirect.github.com/aws/aws-sdk-go-v2/issues/1219\"\u003e#1219\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/67f74949e4831edc2d0a8da2aba8c4b356b27fff\"\u003e\u003ccode\u003e67f7494\u003c/code\u003e\u003c/a\u003e Remove unused RingBuffer implementation (\u003ca href=\"https://redirect.github.com/aws/aws-sdk-go-v2/issues/1206\"\u003e#1206\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/33f1593e43658fe592898c65525e0d335b3f4944\"\u003e\u003ccode\u003e33f1593\u003c/code\u003e\u003c/a\u003e Update generated code\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/453feacb57c4979429345d118e7c57e4b0e8c15e\"\u003e\u003ccode\u003e453feac\u003c/code\u003e\u003c/a\u003e Fix xml attribute serialization\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/f91a70bc40c9c3df0b3f0e22973ebeafba7550b0\"\u003e\u003ccode\u003ef91a70b\u003c/code\u003e\u003c/a\u003e codegen: Add make task to easily pull in smithy-go codegen modules (\u003ca href=\"https://redirect.github.com/aws/aws-sdk-go-v2/issues/1210\"\u003e#1210\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/aws/aws-sdk-go-v2/compare/config/v1.1.4...config/v1.1.5\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `github.com/aws/aws-sdk-go-v2/service/sso` from 1.31.2 to 1.31.3\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/e1909a587c354bd1b2962eebaba94c16838669a5\"\u003e\u003ccode\u003ee1909a5\u003c/code\u003e\u003c/a\u003e Release 2025-08-26\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/2dead494608f76e4d3fe649f643457f224dd434d\"\u003e\u003ccode\u003e2dead49\u003c/code\u003e\u003c/a\u003e Regenerated Clients\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/8f87507c4d78351202d05ad1d75dcb8b40ad1882\"\u003e\u003ccode\u003e8f87507\u003c/code\u003e\u003c/a\u003e Update endpoints model\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/9f13166e6c118ee340f5b2e666d44d67141c7327\"\u003e\u003ccode\u003e9f13166\u003c/code\u003e\u003c/a\u003e Update API model\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/92833dd046ba7e5afe1aafc56d0542c6668b4faf\"\u003e\u003ccode\u003e92833dd\u003c/code\u003e\u003c/a\u003e drop opsworks and opsworkscm (\u003ca href=\"https://redirect.github.com/aws/aws-sdk-go-v2/issues/3172\"\u003e#3172\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/50d1314f18412311633a2a9d9faec813e3998420\"\u003e\u003ccode\u003e50d1314\u003c/code\u003e\u003c/a\u003e Release 2025-08-25.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/d163c8cb48dcb1bfa07f51c26cb3cbde0d191159\"\u003e\u003ccode\u003ed163c8c\u003c/code\u003e\u003c/a\u003e Deprecate opsworks/opsworkscm (\u003ca href=\"https://redirect.github.com/aws/aws-sdk-go-v2/issues/3171\"\u003e#3171\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/f0a97a78c219cb6b0ceacfddc8107b850a87aa08\"\u003e\u003ccode\u003ef0a97a7\u003c/code\u003e\u003c/a\u003e Release 2025-08-25\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/3b73a3be8423cd3e099e3754830ebeefb5518afe\"\u003e\u003ccode\u003e3b73a3b\u003c/code\u003e\u003c/a\u003e Regenerated Clients\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/9c6a548460fe2cbd8a830ea5a6ed6bf62b667d82\"\u003e\u003ccode\u003e9c6a548\u003c/code\u003e\u003c/a\u003e Update endpoints model\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/aws/aws-sdk-go-v2/compare/config/v1.31.2...config/v1.31.3\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `github.com/aws/aws-sdk-go-v2/service/ssooidc` from 1.36.5 to 1.36.6\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/f9f7a6bb124a1a7daffc65db40053d97678bd371\"\u003e\u003ccode\u003ef9f7a6b\u003c/code\u003e\u003c/a\u003e Release 2025-07-19\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/c74fb637eb68925187407dfe105ba10d855cecd2\"\u003e\u003ccode\u003ec74fb63\u003c/code\u003e\u003c/a\u003e Regenerated Clients\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/d09b46671d6af69a0e1e808c953e5db4a0e5790c\"\u003e\u003ccode\u003ed09b466\u003c/code\u003e\u003c/a\u003e generate aws-eusc (\u003ca href=\"https://redirect.github.com/aws/aws-sdk-go-v2/issues/3144\"\u003e#3144\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/45575dd69588782d4a0944c7b3911018613d67c7\"\u003e\u003ccode\u003e45575dd\u003c/code\u003e\u003c/a\u003e Release 2025-07-18\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/40f9e8b889dbda9e80b651bd55ea13a99d75d6cc\"\u003e\u003ccode\u003e40f9e8b\u003c/code\u003e\u003c/a\u003e Regenerated Clients\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/da30009f1debd56e812c58845b0a3ee4e6e1fb58\"\u003e\u003ccode\u003eda30009\u003c/code\u003e\u003c/a\u003e Update endpoints model\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/78fe67fa8c7f08f490e1e04bbe3ce609bfc66fe6\"\u003e\u003ccode\u003e78fe67f\u003c/code\u003e\u003c/a\u003e Update API model\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/654c62d6b16cfa75aba17f6f2feb7d91d627186a\"\u003e\u003ccode\u003e654c62d\u003c/code\u003e\u003c/a\u003e Release 2025-07-17\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/47a74cd2a3a4464fbb1273db6ede81d2bb72bb1d\"\u003e\u003ccode\u003e47a74cd\u003c/code\u003e\u003c/a\u003e Regenerated Clients\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/bdd96b2ea29e4a7c96d0dbe1dc1a039bf85d090c\"\u003e\u003ccode\u003ebdd96b2\u003c/code\u003e\u003c/a\u003e Update endpoints model\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/aws/aws-sdk-go-v2/compare/v1.36.5...v1.36.6\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `github.com/aws/aws-sdk-go-v2/service/sts` from 1.43.2 to 1.43.3\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/fa369bd7bb9576e85ac094a43a15e8372a3d0129\"\u003e\u003ccode\u003efa369bd\u003c/code\u003e\u003c/a\u003e Release 2026-06-03\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/960ee4dc8380a46ded94f3976e073242d42bf8ed\"\u003e\u003ccode\u003e960ee4d\u003c/code\u003e\u003c/a\u003e Regenerated Clients\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/4b6df8b301a6c965903012dda08e9f38fd163f1c\"\u003e\u003ccode\u003e4b6df8b\u003c/code\u003e\u003c/a\u003e Update endpoints model\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/30b15dd22cc690c7d647c32f415111437cfbed2a\"\u003e\u003ccode\u003e30b15dd\u003c/code\u003e\u003c/a\u003e Update API model\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/e8c72af3150fa9c8898c916b2e213a5d3d7d64ed\"\u003e\u003ccode\u003ee8c72af\u003c/code\u003e\u003c/a\u003e enable schema-serde (\u003ca href=\"https://redirect.github.com/aws/aws-sdk-go-v2/issues/3421\"\u003e#3421\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/aws/aws-sdk-go-v2/compare/service/amp/v1.43.2...service/amp/v1.43.3\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `github.com/aws/smithy-go` from 1.27.1 to 1.27.2\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/aws/smithy-go/blob/main/CHANGELOG.md\"\u003egithub.com/aws/smithy-go's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003eRelease (2026-06-05)\u003c/h1\u003e\n\u003ch2\u003eGeneral Highlights\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eDependency Update\u003c/strong\u003e: Updated to the latest SDK module versions\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eModule Highlights\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003egithub.com/aws/smithy-go\u003c/code\u003e: v1.27.2\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eBug Fix\u003c/strong\u003e: Fix incorrect serialization of unions in CBOR-based protocols.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch1\u003eRelease (2026-06-04)\u003c/h1\u003e\n\u003ch2\u003eGeneral Highlights\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eDependency Update\u003c/strong\u003e: Updated to the latest SDK module versions\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eModule Highlights\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003egithub.com/aws/smithy-go\u003c/code\u003e: v1.27.1\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eBug Fix\u003c/strong\u003e: Fixed a deserialization failure in all protocols when encountering a union with explicit null members.\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eBug Fix\u003c/strong\u003e: Fixed a panic when deserializing nested unions in JSON- and CBOR-based protocols.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch1\u003eRelease (2026-06-02)\u003c/h1\u003e\n\u003ch2\u003eGeneral Highlights\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eDependency Update\u003c/strong\u003e: Updated to the latest SDK module versions\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eModule Highlights\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003egithub.com/aws/smithy-go\u003c/code\u003e: v1.27.0\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eFeature\u003c/strong\u003e: Add APIs for schema-based serialization.\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eFeature\u003c/strong\u003e: Add support for all current AWS and Smithy protocols.\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eBug Fix\u003c/strong\u003e: Enforce max nesting depth of 128 on CBOR payloads.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003egithub.com/aws/smithy-go/aws-http-auth\u003c/code\u003e: \u003ca href=\"https://github.com/aws/smithy-go/blob/main/aws-http-auth/CHANGELOG.md#v120-2026-06-02\"\u003ev1.2.0\u003c/a\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eFeature\u003c/strong\u003e: Add event stream signer.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch1\u003eRelease (2026-05-27)\u003c/h1\u003e\n\u003ch2\u003eGeneral Highlights\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eDependency Update\u003c/strong\u003e: Updated to the latest SDK module versions\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eModule Highlights\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003egithub.com/aws/smithy-go\u003c/code\u003e: v1.26.0\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eFeature\u003c/strong\u003e: Add StringSlice to endpoint rulesfn.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch1\u003eRelease (2026-04-23)\u003c/h1\u003e\n\u003ch2\u003eGeneral Highlights\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eDependency Update\u003c/strong\u003e: Updated to the latest SDK module versions\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eModule Highlights\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003egithub.com/aws/smithy-go\u003c/code\u003e: v1.25.1\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eBug Fix\u003c/strong\u003e: Fixed a memory leak in the LRU cache implementation used by some AWS services.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/smithy-go/commit/bff4b8cb91fc6e63e769581850fbe5b24d2b8b13\"\u003e\u003ccode\u003ebff4b8c\u003c/code\u003e\u003c/a\u003e Release 2026-06-05\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/smithy-go/commit/6b71b3a0a321ae5dc8eff7f2a3fb4a0a18a0cbe8\"\u003e\u003ccode\u003e6b71b3a\u003c/code\u003e\u003c/a\u003e fix broken cbor union serialization (\u003ca href=\"https://redirect.github.com/aws/smithy-go/issues/676\"\u003e#676\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/smithy-go/commit/3c67717123267c62cc877d842c6678d702cd2275\"\u003e\u003ccode\u003e3c67717\u003c/code\u003e\u003c/a\u003e serialize value types if \u003ca href=\"https://github.com/required\"\u003e\u003ccode\u003e@​required\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/aws/smithy-go/issues/675\"\u003e#675\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/aws/smithy-go/compare/v1.27.1...v1.27.2\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `github.com/docker/docker-credential-helpers` from 0.9.7 to 0.9.8\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/docker/docker-credential-helpers/releases\"\u003egithub.com/docker/docker-credential-helpers's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev0.9.8\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eupdate to go1.26.4\u003c/li\u003e\n\u003cli\u003ewincred: inline label, and append to existing\u003c/li\u003e\n\u003cli\u003ebuild(deps): bump actions/checkout from 6.0.2 to 6.0.3\u003c/li\u003e\n\u003cli\u003ebuild(deps): bump codecov/codecov-action from 6.0.0 to 6.0.1\u003c/li\u003e\n\u003cli\u003ebuild(deps): bump crazy-max/.github/.github/workflows/zizmor.yml from 1.7.1 to 1.10.0\u003c/li\u003e\n\u003cli\u003ebuild(deps): bump docker/bake-action from 7.1.0 to 7.2.0\u003c/li\u003e\n\u003cli\u003ebuild(deps): bump docker/setup-buildx-action from 4.0.0 to 4.1.0\u003c/li\u003e\n\u003cli\u003ebuild(deps): bump docker/setup-qemu-action from 4.0.0 to 4.1.0\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/docker/docker-credential-helpers/compare/v0.9.7...v0.9.8\"\u003ehttps://github.com/docker/docker-credential-helpers/compare/v0.9.7...v0.9.8\u003c/a\u003e\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/docker/docker-credential-helpers/commit/4f6bc8ab27f64fbc65f810814448c756e958ab65\"\u003e\u003ccode\u003e4f6bc8a\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/docker/docker-credential-helpers/issues/433\"\u003e#433\u003c/a\u003e from thaJeztah/wincred_inline\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/docker/docker-credential-helpers/commit/b0820e3a64d4e64473e91cfdc9ea4a0ca5a9a8d7\"\u003e\u003ccode\u003eb0820e3\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/docker/docker-credential-helpers/issues/441\"\u003e#441\u003c/a\u003e from docker/dependabot/github_actions/actions/checkou...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/docker/docker-credential-helpers/commit/f84e99174ce8ec47d21bd3a42e8575c1ff474ebb\"\u003e\u003ccode\u003ef84e991\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/docker/docker-credential-helpers/issues/445\"\u003e#445\u003c/a\u003e from thaJeztah/bump_go_1.26.4\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/docker/docker-credential-helpers/commit/65d13910ee69560b4aa87de465aeea85e154d009\"\u003e\u003ccode\u003e65d1391\u003c/code\u003e\u003c/a\u003e update to go1.26.4\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/docker/docker-credential-helpers/commit/d21de35039a4cae5adb06d44f8e079c69ada2542\"\u003e\u003ccode\u003ed21de35\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/docker/docker-credential-helpers/issues/444\"\u003e#444\u003c/a\u003e from docker/dependabot/github_actions/crazy-max/dot-g...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/docker/docker-credential-helpers/commit/c6ca626eb2a46f69fc745e4d03518c061c991772\"\u003e\u003ccode\u003ec6ca626\u003c/code\u003e\u003c/a\u003e build(deps): bump actions/checkout from 6.0.2 to 6.0.3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/docker/docker-credential-helpers/commit/1d2dd3daa2495ce9ba2477971607a80b93a82bd4\"\u003e\u003ccode\u003e1d2dd3d\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/docker/docker-credential-helpers/issues/440\"\u003e#440\u003c/a\u003e from docker/dependabot/github_actions/docker/setup-qe...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/docker/docker-credential-helpers/commit/3a54b5c9b198b8eb260450ba9eef56f73d631c15\"\u003e\u003ccode\u003e3a54b5c\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/docker/docker-credential-helpers/issues/439\"\u003e#439\u003c/a\u003e from docker/dependabot/github_actions/docker/bake-act...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/docker/docker-credential-helpers/commit/b68f2ecf6dcfbe9982313a2df2ddf0d4e6db3569\"\u003e\u003ccode\u003eb68f2ec\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/docker/docker-credential-helpers/issues/438\"\u003e#438\u003c/a\u003e from docker/dependabot/github_actions/docker/setup-bu...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/docker/docker-credential-helpers/commit/61072407aadd32152838da9d5737c28d477a5a62\"\u003e\u003ccode\u003e6107240\u003c/code\u003e\u003c/a\u003e build(deps): bump crazy-max/.github/.github/workflows/zizmor.yml\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/docker/docker-credential-helpers/compare/v0.9.7...v0.9.8\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `github.com/moby/sys/sequential` from 0.6.0 to 0.7.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/moby/sys/releases\"\u003egithub.com/moby/sys/sequential's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003esignal/v0.7.0\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAdd lcow supported signals to windows signal map by \u003ca href=\"https://github.com/katiewasnothere\"\u003e\u003ccode\u003e@​katiewasnothere\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/moby/sys/pull/98\"\u003emoby/sys#98\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eMakefile: rm .SHELLFLAGS, add set -e by \u003ca href=\"https://github.com/kolyshkin\"\u003e\u003ccode\u003e@​kolyshkin\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/moby/sys/pull/105\"\u003emoby/sys#105\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/moby/sys/compare/signal/v0.6.0...signal/v0.7.0\"\u003ehttps://github.com/moby/sys/compare/signal/v0.6.0...signal/v0.7.0\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003emountinfo v0.7.0\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003emountinfo: linux: use /proc/thread-self/mountinfo by \u003ca href=\"https://github.com/cyphar\"\u003e\u003ccode\u003e@​cyphar\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/moby/sys/pull/128\"\u003emoby/sys#128\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003esequential v0.7.0\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eupdate minimum go version to 1.24\u003c/li\u003e\n\u003cli\u003euse os.OpenFile with O_FILE_FLAG_SEQUENTIAL_SCAN on Go 1.26+\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/moby/sys/compare/sequential/v0.6.0...sequential/v0.7.0\"\u003ehttps://github.com/moby/sys/compare/sequential/v0.6.0...sequential/v0.7.0\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003emountinfo v0.6.2\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eupdate golang.org/x/sys v0.0.0-20220412211240-33da011f77ad by \u003ca href=\"https://github.com/thaJeztah\"\u003e\u003ccode\u003e@​thaJeztah\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/moby/sys/pull/116\"\u003emoby/sys#116\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003emountinfo: BSDs no longer need cgo nor reflect by \u003ca href=\"https://github.com/Red54\"\u003e\u003ccode\u003e@​Red54\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/moby/sys/pull/114\"\u003emoby/sys#114\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003emountinfo: update doc to use fs.ErrNotExist by \u003ca href=\"https://github.com/manugupt1\"\u003e\u003ccode\u003e@​manugupt1\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/moby/sys/pull/115\"\u003emoby/sys#115\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump x/sys/unix by \u003ca href=\"https://github.com/akhramov\"\u003e\u003ccode\u003e@​akhramov\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/moby/sys/pull/118\"\u003emoby/sys#118\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eNew Contributors\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Red54\"\u003e\u003ccode\u003e@​Red54\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/moby/sys/pull/114\"\u003emoby/sys#114\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/akhramov\"\u003e\u003ccode\u003e@​akhramov\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/moby/sys/pull/118\"\u003emoby/sys#118\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/moby/sys/compare/mountinfo/v0.6.1...mountinfo/v0.6.2\"\u003ehttps://github.com/moby/sys/compare/mountinfo/v0.6.1...mountinfo/v0.6.2\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003emountinfo v0.6.1\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eDo not wrap errors from filepath / os as they are already wrapped. by \u003ca href=\"https://github.com/manugupt1\"\u003e\u003ccode\u003e@​manugupt1\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/moby/sys/pull/109\"\u003emoby/sys#109\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eci: add go 1.18, drop 1.16 by \u003ca href=\"https://github.com/kolyshkin\"\u003e\u003ccode\u003e@​kolyshkin\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/moby/sys/pull/106\"\u003emoby/sys#106\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eNew Contributors\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/manugupt1\"\u003e\u003ccode\u003e@​manugupt1\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/moby/sys/pull/109\"\u003emoby/sys#109\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/moby/sys/compare/mountinfo/v0.6.0...mountinfo/v0.6.1\"\u003ehttps://github.com/moby/sys/compare/mountinfo/v0.6.0...mountinfo/v0.6.1\u003c/a\u003e\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/moby/sys/commit/b8d8fabf1fa5cf0de7c1a1729145eee854ea31f5\"\u003e\u003ccode\u003eb8d8fab\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/moby/sys/issues/105\"\u003e#105\u003c/a\u003e from kolyshkin/fix-mac-ci\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/moby/sys/commit/b12833524571bcc6c7ac781d53ecd7ebed9a19ff\"\u003e\u003ccode\u003eb128335\u003c/code\u003e\u003c/a\u003e Makefile: rm .SHELLFLAGS, add set -e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/moby/sys/commit/d4611de77a5e8b01f6e76a365dadaf0d63fd23bc\"\u003e\u003ccode\u003ed4611de\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/moby/sys/issues/103\"\u003e#103\u003c/a\u003e from kolyshkin/mount-bump-mountinfo-0.6\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/moby/sys/commit/e1c5b381e015fd09d60cef5242b0d2f374a80c7f\"\u003e\u003ccode\u003ee1c5b38\u003c/code\u003e\u003c/a\u003e mount: bump mountinfo to v0.6.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/moby/sys/commit/d01e595199e1213f509d8ee6e4b03217e6e54517\"\u003e\u003ccode\u003ed01e595\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/moby/sys/issues/100\"\u003e#100\u003c/a\u003e from kolyshkin/mounted-fast\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/moby/sys/commit/5d09d6976b05ad13edfde89cfe7ec98f1c657cc4\"\u003e\u003ccode\u003e5d09d69\u003c/code\u003e\u003c/a\u003e mountinfo: add TestMountedRoot\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/moby/sys/commit/303f101a47953b190bb980081a1f54e60f445368\"\u003e\u003ccode\u003e303f101\u003c/code\u003e\u003c/a\u003e mountinfo: add tests for MountedFast\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/moby/sys/commit/97425877370b3090e499b10e2488925ad7177122\"\u003e\u003ccode\u003e9742587\u003c/code\u003e\u003c/a\u003e mountinfo: TestMountedBy: rm exp\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/moby/sys/commit/3494465e1773a1bde25c640f866ac6a04812274e\"\u003e\u003ccode\u003e3494465\u003c/code\u003e\u003c/a\u003e mountinfo: mounted_linux_test: nits\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/moby/sys/commit/88ece65bf64bbb8cd80971835292cf910cd4e3a5\"\u003e\u003ccode\u003e88ece65\u003c/code\u003e\u003c/a\u003e mountinfo: add MountedFast\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/moby/sys/compare/signal/v0.6.0...signal/v0.7.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `golang.org/x/crypto` from 0.52.0 to 0.53.0\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/golang/crypto/commit/45460e079737ecb64f30d79d3d6fc2914494fa66\"\u003e\u003ccode\u003e45460e0\u003c/code\u003e\u003c/a\u003e go.mod: update golang.org/x dependencies\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/golang/crypto/commit/d37c95e27de65576f42440cdfbc261d810506841\"\u003e\u003ccode\u003ed37c95e\u003c/code\u003e\u003c/a\u003e pkcs12: limit PBKDF iteration count to prevent CPU exhaustion\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/golang/crypto/commit/e2ffffe738fb46531cd8924bab497bdc77d9ecc8\"\u003e\u003ccode\u003ee2ffffe\u003c/code\u003e\u003c/a\u003e ssh: reject incomplete gssapi-with-mic configurations\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/golang/crypto/commit/60e158ad30c226555794539d96f0f104f43395f7\"\u003e\u003ccode\u003e60e158a\u003c/code\u003e\u003c/a\u003e ssh/test: isolate CLI tests from user SSH config and agent\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/golang/crypto/commit/1b77d23dc8afb26a494e331a3c637b6de88398d2\"\u003e\u003ccode\u003e1b77d23\u003c/code\u003e\u003c/a\u003e ssh/knownhosts: reject lines with multiple or unknown markers\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/golang/crypto/commit/3872a2bc69f464352dea49c2856955ef7c5d5851\"\u003e\u003ccode\u003e3872a2b\u003c/code\u003e\u003c/a\u003e ssh/knownhosts: verify declared key type matches decoded key\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/golang/crypto/commit/9f72eccdf6fa09a7c68448a7fdc333dd2deb7d9d\"\u003e\u003ccode\u003e9f72ecc\u003c/code\u003e\u003c/a\u003e ssh/knownhosts: treat only ASCII space and tab as whitespace\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/golang/crypto/commit/8f405a4109d7ce87a44f89185bdc385914ce5c13\"\u003e\u003ccode\u003e8f405a4\u003c/code\u003e\u003c/a\u003e ssh: validate ECDSA curve matches expected algorithm\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/golang/crypto/commit/bb41b3dbe630c21c78e3aeb0ebdd8d06a3a34fcf\"\u003e\u003ccode\u003ebb41b3d\u003c/code\u003e\u003c/a\u003e ssh: improve DH GEX group selection using PreferredBits\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/golang/crypto/commit/e04e7219970912a40f80c4b13029416fdf960eeb\"\u003e\u003ccode\u003ee04e721\u003c/code\u003e\u003c/a\u003e ssh/agent: validate ed25519 private key length in Add\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/golang/crypto/compare/v0.52.0...v0.53.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `golang.org/x/mod` from 0.36.0 to 0.37.0\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/golang/mod/commit/deb1dfcdb7c7fd98fb5afddc3e95dd36d5880874\"\u003e\u003ccode\u003edeb1dfc\u003c/code\u003e\u003c/a\u003e go.mod: update golang.org/x dependencies\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/golang/mod/commit/087f6515dd3ba3e8b06918fa425ffe7732321a7a\"\u003e\u003ccode\u003e087f651\u003c/code\u003e\u003c/a\u003e modfile: use slices.Backward\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/golang/mod/commit/343ee60345a1f2ff0692be9dd068c0778dba985c\"\u003e\u003ccode\u003e343ee60\u003c/code\u003e\u003c/a\u003e x/mod: allow for aggressively conslidating requires\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/golang/mod/compare/v0.36.0...v0.37.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `golang.org/x/sync` from 0.20.0 to 0.21.0\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/golang/sync/commit/5071ed6a9f1617117556b66384f765c934de3698\"\u003e\u003ccode\u003e5071ed6\u003c/code\u003e\u003c/a\u003e all: fix some comments to improve readability\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/golang/sync/compare/v0.20.0...v0.21.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `golang.org/x/sys` from 0.45.0 to 0.46.0\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/golang/sys/commit/d58dcfa8a74514c0ef0fc401259156c5e2fc9ff5\"\u003e\u003ccode\u003ed58dcfa\u003c/code\u003e\u003c/a\u003e unix: add GPIO constants and structs\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/golang/sys/compare/v0.45.0...v0.46.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `golang.org/x/term` from 0.43.0 to 0.44.0\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/golang/term/commit/3b43943a9e7de876a5d5e1f5e7da7cdeae0f542a\"\u003e\u003ccode\u003e3b43943\u003c/code\u003e\u003c/a\u003e go.mod: update golang.org/x dependencies\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/golang/term/compare/v0.43.0...v0.44.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `golang.org/x/text` from 0.37.0 to 0.38.0\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/golang/text/commit/f4bb6328041b090f85b93014bd369edfcd24bdef\"\u003e\u003ccode\u003ef4bb632\u003c/code\u003e\u003c/a\u003e go.mod: update golang.org/x dependencies\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/golang/text/compare/v0.37.0...v0.38.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `modernc.org/libc` from 1.72.5 to 1.73.0\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/libc/commit/590e812d6c968bde4283faa466420551a2e6c1c4\"\u003e\u003ccode\u003e590e812\u003c/code\u003e\u003c/a\u003e modernc.org/libc: riscv64 auto generate\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/libc/commit/49b80c99182f5c0b12651d661b14b100e8040363\"\u003e\u003ccode\u003e49b80c9\u003c/code\u003e\u003c/a\u003e modernc.org/libc: pi64 auto generate\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/libc/commit/95c7898d6459c94b080b08ea55a810c224656dc1\"\u003e\u003ccode\u003e95c7898\u003c/code\u003e\u003c/a\u003e modernc.org/libc: s390x auto generate\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/libc/commit/5d087e6712afde99748d0bb420f410b127a516f9\"\u003e\u003ccode\u003e5d087e6\u003c/code\u003e\u003c/a\u003e modernc.org/libc: ppc64le auto generate\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/libc/commit/474da569fa453b611b02d6b2149e8892a282b5dd\"\u003e\u003ccode\u003e474da56\u003c/code\u003e\u003c/a\u003e modernc.org/libc: pi32 auto generate\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/libc/commit/d21cfc52073448d03935f6cf8fc565433a5df1cc\"\u003e\u003ccode\u003ed21cfc5\u003c/code\u003e\u003c/a\u003e modernc.org/libc: e5-1650 auto generate\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/libc/commit/521661f7edadc8aec7b4453de9a3d48ac6658497\"\u003e\u003ccode\u003e521661f\u003c/code\u003e\u003c/a\u003e modernc.org/libc: linux_loong64b auto generate\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/libc/commit/86316a5c5bb6fe7f4ac0474fbe3207ef45eb06d6\"\u003e\u003ccode\u003e86316a5\u003c/code\u003e\u003c/a\u003e modernc.org/libc: nuc64 auto generate\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/libc/commit/27c8c6ac61d9fe106ee76a78e27c1a659c151aa5\"\u003e\u003ccode\u003e27c8c6a\u003c/code\u003e\u003c/a\u003e nuc64: auto deps\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/libc/commit/bc390ee728e3d7256b022e1d0e1f2debcb0efc58\"\u003e\u003ccode\u003ebc390ee\u003c/code\u003e\u003c/a\u003e modernc.org/libc: riscv64 auto generate\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://gitlab.com/cznic/libc/compare/v1.72.5...v1.73.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `modernc.org/sqlite` from 1.51.0 to 1.52.0\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://gitlab.com/cznic/sqlite/blob/master/CHANGELOG.md\"\u003emodernc.org/sqlite's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003eChangelog\u003c/h1\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e2026-06-06 v1.52.0:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eUpgrade to \u003ca href=\"https://sqlite.org/releaselog/3_53_2.html\"\u003eSQLite 3.53.2\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003eBackup.Remaining\u003c/code\u003e and \u003ccode\u003eBackup.PageCount\u003c/code\u003e, thin wrappers around the existing \u003ccode\u003esqlite3_backup_remaining\u003c/code\u003e and \u003ccode\u003esqlite3_backup_pagecount\u003c/code\u003e C symbols. Together they expose the per-\u003ccode\u003eStep\u003c/code\u003e progress counters that the underlying backup object already maintains, enabling progress reporting during online backups without dropping to \u003ccode\u003emodernc.org/sqlite/lib\u003c/code\u003e directly.\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/122\"\u003e#122\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/122\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/122\u003c/a\u003e), thanks Ian Chechin!\u003c/li\u003e\n\u003cli\u003eDrop the redundant second copy in \u003ccode\u003e(*conn).columnText\u003c/code\u003e, the path that backs every \u003ccode\u003eRows.Scan\u003c/code\u003e into a Go \u003ccode\u003estring\u003c/code\u003e for a TEXT column. The value's bytes are still copied once out of SQLite-owned memory into a fresh Go buffer; that buffer is then reinterpreted as the result string with \u003ccode\u003eunsafe.String\u003c/code\u003e rather than copied a second time by the implicit \u003ccode\u003estring([]byte)\u003c/code\u003e conversion. This removes one allocation per TEXT value per row and roughly halves the bytes allocated on that path; on the new \u003ccode\u003eBenchmarkColumnTextScan\u003c/code\u003e cases it is ~13–20% faster for payloads of 256 B and larger, with no measurable change for very short strings. Purely internal: no API or behavioral change, and the returned string never aliases SQLite's buffer.\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/123\"\u003e#123\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/123\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/123\u003c/a\u003e), thanks Ian Chechin!\u003c/li\u003e\n\u003cli\u003eCache each result column's declared type once per result set in \u003ccode\u003enewRows\u003c/code\u003e instead of recomputing it on every row. The TEXT branch of \u003ccode\u003eRows.Next\u003c/code\u003e calls \u003ccode\u003eColumnTypeDatabaseTypeName\u003c/code\u003e for every TEXT column on every row (independent of any DSN flag), which previously did a \u003ccode\u003elibc.GoString\u003c/code\u003e + \u003ccode\u003estrings.ToUpper\u003c/code\u003e each time; that lookup is now a single index into a cached, pre-uppercased \u003ccode\u003e[]string\u003c/code\u003e, and \u003ccode\u003eColumnTypeScanType\u003c/code\u003e reads the same cache and drops its per-call \u003ccode\u003estrings.ToLower\u003c/code\u003e. The declared type is fixed for the lifetime of a prepared statement, so the C round-trip is paid once per column rather than once per column per row, removing exactly 1 alloc + 8 B per TEXT column per row from the \u003ccode\u003eNext\u003c/code\u003e hot path. The new \u003ccode\u003eBenchmarkTextToTimeScan\u003c/code\u003e cases show ~7% faster on a 1000-row DATETIME SELECT under \u003ccode\u003e_texttotime=1\u003c/code\u003e. Purely internal: \u003ccode\u003eColumnTypeDatabaseTypeName\u003c/code\u003e and \u003ccode\u003eColumnTypeScanType\u003c/code\u003e return identical values, no API or behavioral change.\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/124\"\u003e#124\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/124\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/124\u003c/a\u003e), thanks Ian Chechin!\u003c/li\u003e\n\u003cli\u003eCache, per result column, the \u003ccode\u003eparseTimeFormats\u003c/code\u003e index that first parsed a TEXT-stored DATE/DATETIME/TIMESTAMP value, and try that format first on later rows instead of re-walking the list from the top. \u003ccode\u003e(*conn).parseTime\u003c/code\u003e previously ran \u003ccode\u003etime.Parse\u003c/code\u003e down the format list on every such row; for the canonical SQLite TEXT datetime format every row paid two failed \u003ccode\u003etime.Parse\u003c/code\u003e attempts — each allocating a \u003ccode\u003e*time.ParseError\u003c/code\u003e — before the match. On a 1000-row DATETIME TEXT SELECT this cuts ~50% of allocs/op and ~57% of B/op and is ~37% faster. The fall-through chain is preserved exactly: the seven formats are mutually exclusive, so the cached hint can never select a different match than the in-order scan, and the parsed \u003ccode\u003edriver.Value\u003c/code\u003e is identical to before. Purely internal: no API or behavioral change.\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/125\"\u003e#125\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/125\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/125\u003c/a\u003e), thanks Ian Chechin!\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e2026-05-28 v1.51.0:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003ePool the \u003ccode\u003e[]driver.Value\u003c/code\u003e slice passed to scalar/aggregate UDF callbacks and to vtab \u003ccode\u003eFilter\u003c/code\u003e/\u003ccode\u003eInsert\u003c/code\u003e/\u003ccode\u003eUpdate\u003c/code\u003e callbacks, eliminating the dominant per-row allocation on UDF-heavy queries. Benchmarks on a 1000-row, 3-arg noop scalar UDF show ~40% fewer bytes/op and ~15% fewer allocs/op.\u003c/li\u003e\n\u003cli\u003eDocument the matching \u0026quot;arguments are not valid past return\u0026quot; contract on \u003ccode\u003evtab.Cursor.Filter\u003c/code\u003e and \u003ccode\u003evtab.Updater.Insert\u003c/code\u003e/\u003ccode\u003eUpdate\u003c/code\u003e, consistent with the existing rule for \u003ccode\u003eFunctionImpl.Scalar\u003c/code\u003e / \u003ccode\u003eAggregateFunction.Step\u003c/code\u003e / \u003ccode\u003eWindowInverse\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003eResolves [GitLab issue \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/226\"\u003e#226\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/issues/226\"\u003ehttps://gitlab.com/cznic/sqlite/-/issues/226\u003c/a\u003e). See [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/114\"\u003e#114\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/114\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/114\u003c/a\u003e), thanks Ian Chechin!\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003eFileControl.FileControlDataVersion\u003c/code\u003e, a wrapper around \u003ccode\u003eSQLITE_FCNTL_DATA_VERSION\u003c/code\u003e for observing pager-cache data-version changes, including those made on the same connection. Useful as a primitive for application-level cache invalidation.\u003c/li\u003e\n\u003cli\u003eExposed via the idiomatic \u003ccode\u003edatabase/sql\u003c/code\u003e escape hatch \u003ccode\u003e(*sql.Conn).Raw()\u003c/code\u003e, consistent with the existing \u003ccode\u003eFileControlPersistWAL\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/115\"\u003e#115\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/115\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/115\u003c/a\u003e), thanks Ian Chechin!\u003c/li\u003e\n\u003cli\u003eFix a regression where in-memory connections (\u003ccode\u003e:memory:\u003c/code\u003e, \u003ccode\u003efile::memory:\u003c/code\u003e, shared-cache memory URIs) were discarded by \u003ccode\u003edatabase/sql\u003c/code\u003e after a context-cancelled query, taking the entire in-memory store with them. The fix for \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/198\"\u003e#198\u003c/a\u003e had added an \u003ccode\u003esqlite3_is_interrupted\u003c/code\u003e check to the connection validator that mistakenly applied to in-memory connections too, re-introducing the bug originally fixed by !74. File-backed connections keep the existing behaviour and are still discarded after an interrupt.\u003c/li\u003e\n\u003cli\u003eResolves [GitLab issue \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/196\"\u003e#196\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/issues/196\"\u003ehttps://gitlab.com/cznic/sqlite/-/issues/196\u003c/a\u003e). See [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/116\"\u003e#116\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/116\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/116\u003c/a\u003e), thanks Ian Chechin!\u003c/li\u003e\n\u003cli\u003eAdd an opt-in \u003ccode\u003eFunctionImpl.VolatileArgs\u003c/code\u003e flag that hands TEXT and BLOB arguments to scalar and aggregate UDF callbacks as zero-copy views (\u003ccode\u003eunsafe.String\u003c/code\u003e/\u003ccode\u003eunsafe.Slice\u003c/code\u003e) over SQLite's own value buffers, eliminating the per-argument \u003ccode\u003elibc.GoString\u003c/code\u003e/\u003ccode\u003emake([]byte)\u003c/code\u003e copy that the \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/226\"\u003e#226\u003c/a\u003e slice-pooling left as the remaining per-row allocation. On the same 1000-row, 3-arg (INTEGER/TEXT/BLOB) noop scalar UDF this removes a further ~35% of allocs/op and ~11% of bytes/op on top of \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/226\"\u003e#226\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003eThe views are valid only for the duration of the callback and must not be retained past return or across rows; a callback that needs to keep a value must copy it. With \u003ccode\u003eVolatileArgs\u003c/code\u003e unset (the default) arguments keep the existing copied, caller-owned semantics, so the flag is fully backward compatible; it has no effect on integer, float, time, or NULL arguments.\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/120\"\u003e#120\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/120\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/120\u003c/a\u003e), thanks Ian Chechin!\u003c/li\u003e\n\u003cli\u003eExtend the opt-in \u003ccode\u003eVolatileArgs\u003c/code\u003e zero-copy TEXT/BLOB argument access from \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/120\"\u003e#120\u003c/a\u003e to the virtual-table \u003ccode\u003eCursor.Filter\u003c/code\u003e (\u003ccode\u003exFilter\u003c/code\u003e) and \u003ccode\u003eUpdater.Insert\u003c/code\u003e/\u003ccode\u003eUpdate\u003c/code\u003e (\u003ccode\u003exUpdate\u003c/code\u003e) callbacks. A \u003ccode\u003evtab.Module\u003c/code\u003e opts in by implementing the new optional \u003ccode\u003evtab.VolatileArgsOpter\u003c/code\u003e interface (\u003ccode\u003eVolatileArgs() bool\u003c/code\u003e); the flag is read once at module registration and shared by every table created from it. On a vtab call carrying one TEXT and one BLOB argument this removes 2 allocs/op (one \u003ccode\u003elibc.GoString\u003c/code\u003e, one \u003ccode\u003emake([]byte)\u003c/code\u003e) on each of the Filter and Update paths.\u003c/li\u003e\n\u003cli\u003eThe same safety contract as \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/120\"\u003e#120\u003c/a\u003e applies: the views are valid only for the duration of the callback and must not be retained past return or across rows; a callback that needs to keep a value must copy it. Modules that do not implement \u003ccode\u003eVolatileArgsOpter\u003c/code\u003e (the default for all existing modules) are byte-for-byte unchanged, and the flag has no effect on integer, float, time, or NULL arguments.\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/121\"\u003e#121\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/121\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/121\u003c/a\u003e), thanks Ian Chechin!\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e2026-05-10 v1.50.1:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eUpgrade to \u003ca href=\"https://sqlite.org/releaselog/3_53_1.html\"\u003eSQLite 3.53.1\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e2026-04-24 v1.50.0:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eUpgrade to sqlite-vec \u003ca href=\"https://github.com/asg017/sqlite-vec/releases/tag/v0.1.9\"\u003ev0.1.9\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003eIntroduce \u003ccode\u003eColumnInfo\u003c/code\u003e, enabling dynamic query builders and ORMs to retrieve underlying SQLite C-API metadata (\u003ccode\u003eOriginName\u003c/code\u003e, \u003ccode\u003eTableName\u003c/code\u003e, \u003ccode\u003eDatabaseName\u003c/code\u003e, and \u003ccode\u003eDeclType\u003c/code\u003e).\u003c/li\u003e\n\u003cli\u003eThis feature is exposed via the idiomatic \u003ccode\u003edatabase/sql\u003c/code\u003e escape hatch \u003ccode\u003e(*sql.Conn).Raw()\u003c/code\u003e, avoiding custom statement handles and keeping the standard library workflow intact.\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/113\"\u003e#113\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/113\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/113\u003c/a\u003e), thanks Josh Bleecher Snyder!\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e2026-04-17 v1.49.0: Upgrade to \u003ca href=\"https://sqlite.org/releaselog/3_53_0.html\"\u003eSQLite 3.53.0\u003c/a\u003e.\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdded \u003ccode\u003e-DSQLITE_ENABLE_DBPAGE_VTAB\u003c/code\u003e to the transpilation. See \u003ca href=\"https://www.sqlite.org/dbpage.html\"\u003e\u0026quot;The SQLITE_DBPAGE Virtual Table\u0026quot;\u003c/a\u003e for details.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e2026-04-06 v1.48.2:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eFix ABI mappin...\n\n_Description has been truncated_","html_url":"https://github.com/paketo-buildpacks/vsdbg/pull/749","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/paketo-buildpacks%2Fvsdbg/issues/749","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/749/packages"}},{"old_version":"1.51.0","new_version":"1.52.0","update_type":"minor","path":null,"pr_created_at":"2026-06-07T18:12:33.000Z","version_change":"1.51.0 → 1.52.0","issue":{"uuid":"4608256010","node_id":"PR_kwDORhOvHc7jqu7q","number":34,"state":"open","title":"chore(deps): bump modernc.org/sqlite from 1.51.0 to 1.52.0","user":"dependabot[bot]","labels":["dependencies","go"],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":null,"author_association":null,"state_reason":null,"created_at":"2026-06-07T18:12:33.000Z","updated_at":"2026-06-07T18:13:17.000Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"chore(deps)","packages":[{"name":"modernc.org/sqlite","old_version":"1.51.0","new_version":"1.52.0","repository_url":null}],"path":null,"ecosystem":"go"},"body":"Bumps [modernc.org/sqlite](https://gitlab.com/cznic/sqlite) from 1.51.0 to 1.52.0.\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://gitlab.com/cznic/sqlite/blob/master/CHANGELOG.md\"\u003emodernc.org/sqlite's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003eChangelog\u003c/h1\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e2026-06-06 v1.52.0:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eUpgrade to \u003ca href=\"https://sqlite.org/releaselog/3_53_2.html\"\u003eSQLite 3.53.2\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003eBackup.Remaining\u003c/code\u003e and \u003ccode\u003eBackup.PageCount\u003c/code\u003e, thin wrappers around the existing \u003ccode\u003esqlite3_backup_remaining\u003c/code\u003e and \u003ccode\u003esqlite3_backup_pagecount\u003c/code\u003e C symbols. Together they expose the per-\u003ccode\u003eStep\u003c/code\u003e progress counters that the underlying backup object already maintains, enabling progress reporting during online backups without dropping to \u003ccode\u003emodernc.org/sqlite/lib\u003c/code\u003e directly.\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/122\"\u003e#122\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/122\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/122\u003c/a\u003e), thanks Ian Chechin!\u003c/li\u003e\n\u003cli\u003eDrop the redundant second copy in \u003ccode\u003e(*conn).columnText\u003c/code\u003e, the path that backs every \u003ccode\u003eRows.Scan\u003c/code\u003e into a Go \u003ccode\u003estring\u003c/code\u003e for a TEXT column. The value's bytes are still copied once out of SQLite-owned memory into a fresh Go buffer; that buffer is then reinterpreted as the result string with \u003ccode\u003eunsafe.String\u003c/code\u003e rather than copied a second time by the implicit \u003ccode\u003estring([]byte)\u003c/code\u003e conversion. This removes one allocation per TEXT value per row and roughly halves the bytes allocated on that path; on the new \u003ccode\u003eBenchmarkColumnTextScan\u003c/code\u003e cases it is ~13–20% faster for payloads of 256 B and larger, with no measurable change for very short strings. Purely internal: no API or behavioral change, and the returned string never aliases SQLite's buffer.\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/123\"\u003e#123\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/123\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/123\u003c/a\u003e), thanks Ian Chechin!\u003c/li\u003e\n\u003cli\u003eCache each result column's declared type once per result set in \u003ccode\u003enewRows\u003c/code\u003e instead of recomputing it on every row. The TEXT branch of \u003ccode\u003eRows.Next\u003c/code\u003e calls \u003ccode\u003eColumnTypeDatabaseTypeName\u003c/code\u003e for every TEXT column on every row (independent of any DSN flag), which previously did a \u003ccode\u003elibc.GoString\u003c/code\u003e + \u003ccode\u003estrings.ToUpper\u003c/code\u003e each time; that lookup is now a single index into a cached, pre-uppercased \u003ccode\u003e[]string\u003c/code\u003e, and \u003ccode\u003eColumnTypeScanType\u003c/code\u003e reads the same cache and drops its per-call \u003ccode\u003estrings.ToLower\u003c/code\u003e. The declared type is fixed for the lifetime of a prepared statement, so the C round-trip is paid once per column rather than once per column per row, removing exactly 1 alloc + 8 B per TEXT column per row from the \u003ccode\u003eNext\u003c/code\u003e hot path. The new \u003ccode\u003eBenchmarkTextToTimeScan\u003c/code\u003e cases show ~7% faster on a 1000-row DATETIME SELECT under \u003ccode\u003e_texttotime=1\u003c/code\u003e. Purely internal: \u003ccode\u003eColumnTypeDatabaseTypeName\u003c/code\u003e and \u003ccode\u003eColumnTypeScanType\u003c/code\u003e return identical values, no API or behavioral change.\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/124\"\u003e#124\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/124\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/124\u003c/a\u003e), thanks Ian Chechin!\u003c/li\u003e\n\u003cli\u003eCache, per result column, the \u003ccode\u003eparseTimeFormats\u003c/code\u003e index that first parsed a TEXT-stored DATE/DATETIME/TIMESTAMP value, and try that format first on later rows instead of re-walking the list from the top. \u003ccode\u003e(*conn).parseTime\u003c/code\u003e previously ran \u003ccode\u003etime.Parse\u003c/code\u003e down the format list on every such row; for the canonical SQLite TEXT datetime format every row paid two failed \u003ccode\u003etime.Parse\u003c/code\u003e attempts — each allocating a \u003ccode\u003e*time.ParseError\u003c/code\u003e — before the match. On a 1000-row DATETIME TEXT SELECT this cuts ~50% of allocs/op and ~57% of B/op and is ~37% faster. The fall-through chain is preserved exactly: the seven formats are mutually exclusive, so the cached hint can never select a different match than the in-order scan, and the parsed \u003ccode\u003edriver.Value\u003c/code\u003e is identical to before. Purely internal: no API or behavioral change.\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/125\"\u003e#125\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/125\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/125\u003c/a\u003e), thanks Ian Chechin!\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e2026-05-28 v1.51.0:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003ePool the \u003ccode\u003e[]driver.Value\u003c/code\u003e slice passed to scalar/aggregate UDF callbacks and to vtab \u003ccode\u003eFilter\u003c/code\u003e/\u003ccode\u003eInsert\u003c/code\u003e/\u003ccode\u003eUpdate\u003c/code\u003e callbacks, eliminating the dominant per-row allocation on UDF-heavy queries. Benchmarks on a 1000-row, 3-arg noop scalar UDF show ~40% fewer bytes/op and ~15% fewer allocs/op.\u003c/li\u003e\n\u003cli\u003eDocument the matching \u0026quot;arguments are not valid past return\u0026quot; contract on \u003ccode\u003evtab.Cursor.Filter\u003c/code\u003e and \u003ccode\u003evtab.Updater.Insert\u003c/code\u003e/\u003ccode\u003eUpdate\u003c/code\u003e, consistent with the existing rule for \u003ccode\u003eFunctionImpl.Scalar\u003c/code\u003e / \u003ccode\u003eAggregateFunction.Step\u003c/code\u003e / \u003ccode\u003eWindowInverse\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003eResolves [GitLab issue \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/226\"\u003e#226\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/issues/226\"\u003ehttps://gitlab.com/cznic/sqlite/-/issues/226\u003c/a\u003e). See [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/114\"\u003e#114\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/114\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/114\u003c/a\u003e), thanks Ian Chechin!\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003eFileControl.FileControlDataVersion\u003c/code\u003e, a wrapper around \u003ccode\u003eSQLITE_FCNTL_DATA_VERSION\u003c/code\u003e for observing pager-cache data-version changes, including those made on the same connection. Useful as a primitive for application-level cache invalidation.\u003c/li\u003e\n\u003cli\u003eExposed via the idiomatic \u003ccode\u003edatabase/sql\u003c/code\u003e escape hatch \u003ccode\u003e(*sql.Conn).Raw()\u003c/code\u003e, consistent with the existing \u003ccode\u003eFileControlPersistWAL\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/115\"\u003e#115\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/115\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/115\u003c/a\u003e), thanks Ian Chechin!\u003c/li\u003e\n\u003cli\u003eFix a regression where in-memory connections (\u003ccode\u003e:memory:\u003c/code\u003e, \u003ccode\u003efile::memory:\u003c/code\u003e, shared-cache memory URIs) were discarded by \u003ccode\u003edatabase/sql\u003c/code\u003e after a context-cancelled query, taking the entire in-memory store with them. The fix for \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/198\"\u003e#198\u003c/a\u003e had added an \u003ccode\u003esqlite3_is_interrupted\u003c/code\u003e check to the connection validator that mistakenly applied to in-memory connections too, re-introducing the bug originally fixed by !74. File-backed connections keep the existing behaviour and are still discarded after an interrupt.\u003c/li\u003e\n\u003cli\u003eResolves [GitLab issue \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/196\"\u003e#196\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/issues/196\"\u003ehttps://gitlab.com/cznic/sqlite/-/issues/196\u003c/a\u003e). See [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/116\"\u003e#116\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/116\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/116\u003c/a\u003e), thanks Ian Chechin!\u003c/li\u003e\n\u003cli\u003eAdd an opt-in \u003ccode\u003eFunctionImpl.VolatileArgs\u003c/code\u003e flag that hands TEXT and BLOB arguments to scalar and aggregate UDF callbacks as zero-copy views (\u003ccode\u003eunsafe.String\u003c/code\u003e/\u003ccode\u003eunsafe.Slice\u003c/code\u003e) over SQLite's own value buffers, eliminating the per-argument \u003ccode\u003elibc.GoString\u003c/code\u003e/\u003ccode\u003emake([]byte)\u003c/code\u003e copy that the \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/226\"\u003e#226\u003c/a\u003e slice-pooling left as the remaining per-row allocation. On the same 1000-row, 3-arg (INTEGER/TEXT/BLOB) noop scalar UDF this removes a further ~35% of allocs/op and ~11% of bytes/op on top of \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/226\"\u003e#226\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003eThe views are valid only for the duration of the callback and must not be retained past return or across rows; a callback that needs to keep a value must copy it. With \u003ccode\u003eVolatileArgs\u003c/code\u003e unset (the default) arguments keep the existing copied, caller-owned semantics, so the flag is fully backward compatible; it has no effect on integer, float, time, or NULL arguments.\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/120\"\u003e#120\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/120\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/120\u003c/a\u003e), thanks Ian Chechin!\u003c/li\u003e\n\u003cli\u003eExtend the opt-in \u003ccode\u003eVolatileArgs\u003c/code\u003e zero-copy TEXT/BLOB argument access from \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/120\"\u003e#120\u003c/a\u003e to the virtual-table \u003ccode\u003eCursor.Filter\u003c/code\u003e (\u003ccode\u003exFilter\u003c/code\u003e) and \u003ccode\u003eUpdater.Insert\u003c/code\u003e/\u003ccode\u003eUpdate\u003c/code\u003e (\u003ccode\u003exUpdate\u003c/code\u003e) callbacks. A \u003ccode\u003evtab.Module\u003c/code\u003e opts in by implementing the new optional \u003ccode\u003evtab.VolatileArgsOpter\u003c/code\u003e interface (\u003ccode\u003eVolatileArgs() bool\u003c/code\u003e); the flag is read once at module registration and shared by every table created from it. On a vtab call carrying one TEXT and one BLOB argument this removes 2 allocs/op (one \u003ccode\u003elibc.GoString\u003c/code\u003e, one \u003ccode\u003emake([]byte)\u003c/code\u003e) on each of the Filter and Update paths.\u003c/li\u003e\n\u003cli\u003eThe same safety contract as \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/120\"\u003e#120\u003c/a\u003e applies: the views are valid only for the duration of the callback and must not be retained past return or across rows; a callback that needs to keep a value must copy it. Modules that do not implement \u003ccode\u003eVolatileArgsOpter\u003c/code\u003e (the default for all existing modules) are byte-for-byte unchanged, and the flag has no effect on integer, float, time, or NULL arguments.\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/121\"\u003e#121\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/121\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/121\u003c/a\u003e), thanks Ian Chechin!\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e2026-05-10 v1.50.1:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eUpgrade to \u003ca href=\"https://sqlite.org/releaselog/3_53_1.html\"\u003eSQLite 3.53.1\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e2026-04-24 v1.50.0:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eUpgrade to sqlite-vec \u003ca href=\"https://github.com/asg017/sqlite-vec/releases/tag/v0.1.9\"\u003ev0.1.9\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003eIntroduce \u003ccode\u003eColumnInfo\u003c/code\u003e, enabling dynamic query builders and ORMs to retrieve underlying SQLite C-API metadata (\u003ccode\u003eOriginName\u003c/code\u003e, \u003ccode\u003eTableName\u003c/code\u003e, \u003ccode\u003eDatabaseName\u003c/code\u003e, and \u003ccode\u003eDeclType\u003c/code\u003e).\u003c/li\u003e\n\u003cli\u003eThis feature is exposed via the idiomatic \u003ccode\u003edatabase/sql\u003c/code\u003e escape hatch \u003ccode\u003e(*sql.Conn).Raw()\u003c/code\u003e, avoiding custom statement handles and keeping the standard library workflow intact.\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/113\"\u003e#113\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/113\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/113\u003c/a\u003e), thanks Josh Bleecher Snyder!\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e2026-04-17 v1.49.0: Upgrade to \u003ca href=\"https://sqlite.org/releaselog/3_53_0.html\"\u003eSQLite 3.53.0\u003c/a\u003e.\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdded \u003ccode\u003e-DSQLITE_ENABLE_DBPAGE_VTAB\u003c/code\u003e to the transpilation. See \u003ca href=\"https://www.sqlite.org/dbpage.html\"\u003e\u0026quot;The SQLITE_DBPAGE Virtual Table\u0026quot;\u003c/a\u003e for details.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e2026-04-06 v1.48.2:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eFix ABI mapping mismatch in the pre-update hook trampoline that caused silent truncation of large 64-bit RowIDs.\u003c/li\u003e\n\u003cli\u003eEnsure the Go trampoline signature correctly aligns with the public \u003ccode\u003esqlite3_preupdate_hook\u003c/code\u003e C API, preventing data corruption for high-entropy keys (e.g., Snowflake IDs).\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/98\"\u003e#98\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/98\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/98\u003c/a\u003e), thanks Josh Bleecher Snyder!\u003c/li\u003e\n\u003cli\u003eFix the memory allocator used in \u003ccode\u003e(*conn).Deserialize\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003eReplace \u003ccode\u003etls.Alloc\u003c/code\u003e with \u003ccode\u003esqlite3_malloc64\u003c/code\u003e to prevent internal allocator corruption. This ensures the buffer is safely owned by SQLite, which may resize or free it due to the \u003ccode\u003eSQLITE_DESERIALIZE_RESIZEABLE\u003c/code\u003e and \u003ccode\u003eSQLITE_DESERIALIZE_FREEONCLOSE\u003c/code\u003e flags.\u003c/li\u003e\n\u003cli\u003ePrevent a memory leak by properly freeing the allocated buffer if fetching the main database name fails before handing ownership to SQLite.\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/100\"\u003e#100\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/100\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/100\u003c/a\u003e), thanks Josh Bleecher Snyder!\u003c/li\u003e\n\u003cli\u003eFix \u003ccode\u003e(*conn).Deserialize\u003c/code\u003e to explicitly reject \u003ccode\u003enil\u003c/code\u003e or empty byte slices.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/66b4d20f42485b9823a2d35c86b08335d927d0e5\"\u003e\u003ccode\u003e66b4d20\u003c/code\u003e\u003c/a\u003e release v1.52.0, upgrade to SQLite 3.53.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/e3f64ec2f026880b2fbc868f195863648cd07fb3\"\u003e\u003ccode\u003ee3f64ec\u003c/code\u003e\u003c/a\u003e rows: clarify parseFmtIdx mixed-column cost; CHANGELOG.md: document \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/125\"\u003e#125\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/448579342c2da286622d7cab5db84a746124e7b1\"\u003e\u003ccode\u003e4485793\u003c/code\u003e\u003c/a\u003e Merge branch 'perf/cache-parse-time-format' into 'master'\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/3638d17bf28d730d7dd90ff5cf3f93c45b9d752e\"\u003e\u003ccode\u003e3638d17\u003c/code\u003e\u003c/a\u003e rows: cache the parseTime format index per result column\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/7da793ef16502dced14643451a8bec834f999d9e\"\u003e\u003ccode\u003e7da793e\u003c/code\u003e\u003c/a\u003e CHANGELOG.md: document \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/124\"\u003e#124\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/51e6714774262680e2454b1a9ccc49b4245b220a\"\u003e\u003ccode\u003e51e6714\u003c/code\u003e\u003c/a\u003e Merge branch 'perf/cache-column-decltype' into 'master'\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/8a6f33ce42bfa4a864daf8a4c97908e7691499d9\"\u003e\u003ccode\u003e8a6f33c\u003c/code\u003e\u003c/a\u003e rows: lock down ColumnTypeScanType under the decltype cache\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/f8fb6dd1d58d74d022b77cc385a9828a1ac49762\"\u003e\u003ccode\u003ef8fb6dd\u003c/code\u003e\u003c/a\u003e rows: cache the column decltype lookup once per result set\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/b17c0c7faf2247b8251efaa638ac101e5dea7ec1\"\u003e\u003ccode\u003eb17c0c7\u003c/code\u003e\u003c/a\u003e CHANGELOG.md: document \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/123\"\u003e#123\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/c80a08fbe3d37ffa8c7e669c46053b692135523b\"\u003e\u003ccode\u003ec80a08f\u003c/code\u003e\u003c/a\u003e Merge branch 'perf/column-text-zero-copy' into 'master'\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://gitlab.com/cznic/sqlite/compare/v1.51.0...v1.52.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\n\n[![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=modernc.org/sqlite\u0026package-manager=go_modules\u0026previous-version=1.51.0\u0026new-version=1.52.0)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)\n\nDependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.\n\n[//]: # (dependabot-automerge-start)\n[//]: # (dependabot-automerge-end)\n\n---\n\n\u003cdetails\u003e\n\u003csummary\u003eDependabot commands and options\u003c/summary\u003e\n\u003cbr /\u003e\n\nYou can trigger Dependabot actions by commenting on this PR:\n- `@dependabot rebase` will rebase this PR\n- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it\n- `@dependabot show \u003cdependency name\u003e ignore conditions` will show all of the ignore conditions of the specified dependency\n- `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)\n- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)\n- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)\n\n\n\u003c/details\u003e","html_url":"https://github.com/skrashevich/botmux/pull/34","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/skrashevich%2Fbotmux/issues/34","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/34/packages"}},{"old_version":"1.50.1","new_version":"1.52.0","update_type":"minor","path":null,"pr_created_at":"2026-06-05T01:07:58.000Z","version_change":"1.50.1 → 1.52.0","issue":{"uuid":"4593313479","node_id":"PR_kwDOQhloqM7i6hwL","number":1495,"state":"closed","title":"chore(deps)(deps): bump the go-dependencies group across 1 directory with 3 updates","user":"dependabot[bot]","labels":["dependencies","area: deps"],"assignees":[],"locked":false,"comments_count":5,"pull_request":true,"closed_at":"2026-06-07T03:13:02.000Z","author_association":null,"state_reason":null,"created_at":"2026-06-05T01:07:58.000Z","updated_at":"2026-06-07T03:13:40.000Z","time_to_close":180304,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"chore(deps)(deps): bump","group_name":"go-dependencies","update_count":3,"packages":[{"name":"github.com/gopacket/gopacket","old_version":"1.6.0","new_version":"1.6.1","repository_url":"https://github.com/gopacket/gopacket"},{"name":"modernc.org/sqlite","old_version":"1.50.1","new_version":"1.52.0"},{"name":"github.com/go-playground/validator/v10","old_version":"10.30.2","new_version":"10.30.3","repository_url":"https://github.com/go-playground/validator"}],"path":null,"ecosystem":"go"},"body":"Bumps the go-dependencies group with 3 updates in the / directory: [github.com/gopacket/gopacket](https://github.com/gopacket/gopacket), [modernc.org/sqlite](https://gitlab.com/cznic/sqlite) and [github.com/go-playground/validator/v10](https://github.com/go-playground/validator).\n\nUpdates `github.com/gopacket/gopacket` from 1.6.0 to 1.6.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/gopacket/gopacket/releases\"\u003egithub.com/gopacket/gopacket's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev1.6.1\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/gopacket/gopacket/compare/v1.6.0...v1.6.1\"\u003ehttps://github.com/gopacket/gopacket/compare/v1.6.0...v1.6.1\u003c/a\u003e\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gopacket/gopacket/commit/76119086f5936aacd7088bdf97d565501bb6c4cc\"\u003e\u003ccode\u003e7611908\u003c/code\u003e\u003c/a\u003e Merge commit from fork\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gopacket/gopacket/commit/145859d0eaee1a6f5925ffb93851c976449c3311\"\u003e\u003ccode\u003e145859d\u003c/code\u003e\u003c/a\u003e Merge commit from fork\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/gopacket/gopacket/compare/v1.6.0...v1.6.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `modernc.org/sqlite` from 1.50.1 to 1.52.0\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://gitlab.com/cznic/sqlite/blob/master/CHANGELOG.md\"\u003emodernc.org/sqlite's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003eChangelog\u003c/h1\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e2026-06-06 v1.52.0:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eUpgrade to \u003ca href=\"https://sqlite.org/releaselog/3_53_2.html\"\u003eSQLite 3.53.2\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003eBackup.Remaining\u003c/code\u003e and \u003ccode\u003eBackup.PageCount\u003c/code\u003e, thin wrappers around the existing \u003ccode\u003esqlite3_backup_remaining\u003c/code\u003e and \u003ccode\u003esqlite3_backup_pagecount\u003c/code\u003e C symbols. Together they expose the per-\u003ccode\u003eStep\u003c/code\u003e progress counters that the underlying backup object already maintains, enabling progress reporting during online backups without dropping to \u003ccode\u003emodernc.org/sqlite/lib\u003c/code\u003e directly.\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/122\"\u003e#122\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/122\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/122\u003c/a\u003e), thanks Ian Chechin!\u003c/li\u003e\n\u003cli\u003eDrop the redundant second copy in \u003ccode\u003e(*conn).columnText\u003c/code\u003e, the path that backs every \u003ccode\u003eRows.Scan\u003c/code\u003e into a Go \u003ccode\u003estring\u003c/code\u003e for a TEXT column. The value's bytes are still copied once out of SQLite-owned memory into a fresh Go buffer; that buffer is then reinterpreted as the result string with \u003ccode\u003eunsafe.String\u003c/code\u003e rather than copied a second time by the implicit \u003ccode\u003estring([]byte)\u003c/code\u003e conversion. This removes one allocation per TEXT value per row and roughly halves the bytes allocated on that path; on the new \u003ccode\u003eBenchmarkColumnTextScan\u003c/code\u003e cases it is ~13–20% faster for payloads of 256 B and larger, with no measurable change for very short strings. Purely internal: no API or behavioral change, and the returned string never aliases SQLite's buffer.\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/123\"\u003e#123\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/123\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/123\u003c/a\u003e), thanks Ian Chechin!\u003c/li\u003e\n\u003cli\u003eCache each result column's declared type once per result set in \u003ccode\u003enewRows\u003c/code\u003e instead of recomputing it on every row. The TEXT branch of \u003ccode\u003eRows.Next\u003c/code\u003e calls \u003ccode\u003eColumnTypeDatabaseTypeName\u003c/code\u003e for every TEXT column on every row (independent of any DSN flag), which previously did a \u003ccode\u003elibc.GoString\u003c/code\u003e + \u003ccode\u003estrings.ToUpper\u003c/code\u003e each time; that lookup is now a single index into a cached, pre-uppercased \u003ccode\u003e[]string\u003c/code\u003e, and \u003ccode\u003eColumnTypeScanType\u003c/code\u003e reads the same cache and drops its per-call \u003ccode\u003estrings.ToLower\u003c/code\u003e. The declared type is fixed for the lifetime of a prepared statement, so the C round-trip is paid once per column rather than once per column per row, removing exactly 1 alloc + 8 B per TEXT column per row from the \u003ccode\u003eNext\u003c/code\u003e hot path. The new \u003ccode\u003eBenchmarkTextToTimeScan\u003c/code\u003e cases show ~7% faster on a 1000-row DATETIME SELECT under \u003ccode\u003e_texttotime=1\u003c/code\u003e. Purely internal: \u003ccode\u003eColumnTypeDatabaseTypeName\u003c/code\u003e and \u003ccode\u003eColumnTypeScanType\u003c/code\u003e return identical values, no API or behavioral change.\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/124\"\u003e#124\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/124\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/124\u003c/a\u003e), thanks Ian Chechin!\u003c/li\u003e\n\u003cli\u003eCache, per result column, the \u003ccode\u003eparseTimeFormats\u003c/code\u003e index that first parsed a TEXT-stored DATE/DATETIME/TIMESTAMP value, and try that format first on later rows instead of re-walking the list from the top. \u003ccode\u003e(*conn).parseTime\u003c/code\u003e previously ran \u003ccode\u003etime.Parse\u003c/code\u003e down the format list on every such row; for the canonical SQLite TEXT datetime format every row paid two failed \u003ccode\u003etime.Parse\u003c/code\u003e attempts — each allocating a \u003ccode\u003e*time.ParseError\u003c/code\u003e — before the match. On a 1000-row DATETIME TEXT SELECT this cuts ~50% of allocs/op and ~57% of B/op and is ~37% faster. The fall-through chain is preserved exactly: the seven formats are mutually exclusive, so the cached hint can never select a different match than the in-order scan, and the parsed \u003ccode\u003edriver.Value\u003c/code\u003e is identical to before. Purely internal: no API or behavioral change.\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/125\"\u003e#125\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/125\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/125\u003c/a\u003e), thanks Ian Chechin!\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e2026-05-28 v1.51.0:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003ePool the \u003ccode\u003e[]driver.Value\u003c/code\u003e slice passed to scalar/aggregate UDF callbacks and to vtab \u003ccode\u003eFilter\u003c/code\u003e/\u003ccode\u003eInsert\u003c/code\u003e/\u003ccode\u003eUpdate\u003c/code\u003e callbacks, eliminating the dominant per-row allocation on UDF-heavy queries. Benchmarks on a 1000-row, 3-arg noop scalar UDF show ~40% fewer bytes/op and ~15% fewer allocs/op.\u003c/li\u003e\n\u003cli\u003eDocument the matching \u0026quot;arguments are not valid past return\u0026quot; contract on \u003ccode\u003evtab.Cursor.Filter\u003c/code\u003e and \u003ccode\u003evtab.Updater.Insert\u003c/code\u003e/\u003ccode\u003eUpdate\u003c/code\u003e, consistent with the existing rule for \u003ccode\u003eFunctionImpl.Scalar\u003c/code\u003e / \u003ccode\u003eAggregateFunction.Step\u003c/code\u003e / \u003ccode\u003eWindowInverse\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003eResolves [GitLab issue \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/226\"\u003e#226\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/issues/226\"\u003ehttps://gitlab.com/cznic/sqlite/-/issues/226\u003c/a\u003e). See [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/114\"\u003e#114\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/114\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/114\u003c/a\u003e), thanks Ian Chechin!\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003eFileControl.FileControlDataVersion\u003c/code\u003e, a wrapper around \u003ccode\u003eSQLITE_FCNTL_DATA_VERSION\u003c/code\u003e for observing pager-cache data-version changes, including those made on the same connection. Useful as a primitive for application-level cache invalidation.\u003c/li\u003e\n\u003cli\u003eExposed via the idiomatic \u003ccode\u003edatabase/sql\u003c/code\u003e escape hatch \u003ccode\u003e(*sql.Conn).Raw()\u003c/code\u003e, consistent with the existing \u003ccode\u003eFileControlPersistWAL\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/115\"\u003e#115\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/115\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/115\u003c/a\u003e), thanks Ian Chechin!\u003c/li\u003e\n\u003cli\u003eFix a regression where in-memory connections (\u003ccode\u003e:memory:\u003c/code\u003e, \u003ccode\u003efile::memory:\u003c/code\u003e, shared-cache memory URIs) were discarded by \u003ccode\u003edatabase/sql\u003c/code\u003e after a context-cancelled query, taking the entire in-memory store with them. The fix for \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/198\"\u003e#198\u003c/a\u003e had added an \u003ccode\u003esqlite3_is_interrupted\u003c/code\u003e check to the connection validator that mistakenly applied to in-memory connections too, re-introducing the bug originally fixed by !74. File-backed connections keep the existing behaviour and are still discarded after an interrupt.\u003c/li\u003e\n\u003cli\u003eResolves [GitLab issue \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/196\"\u003e#196\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/issues/196\"\u003ehttps://gitlab.com/cznic/sqlite/-/issues/196\u003c/a\u003e). See [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/116\"\u003e#116\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/116\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/116\u003c/a\u003e), thanks Ian Chechin!\u003c/li\u003e\n\u003cli\u003eAdd an opt-in \u003ccode\u003eFunctionImpl.VolatileArgs\u003c/code\u003e flag that hands TEXT and BLOB arguments to scalar and aggregate UDF callbacks as zero-copy views (\u003ccode\u003eunsafe.String\u003c/code\u003e/\u003ccode\u003eunsafe.Slice\u003c/code\u003e) over SQLite's own value buffers, eliminating the per-argument \u003ccode\u003elibc.GoString\u003c/code\u003e/\u003ccode\u003emake([]byte)\u003c/code\u003e copy that the \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/226\"\u003e#226\u003c/a\u003e slice-pooling left as the remaining per-row allocation. On the same 1000-row, 3-arg (INTEGER/TEXT/BLOB) noop scalar UDF this removes a further ~35% of allocs/op and ~11% of bytes/op on top of \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/226\"\u003e#226\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003eThe views are valid only for the duration of the callback and must not be retained past return or across rows; a callback that needs to keep a value must copy it. With \u003ccode\u003eVolatileArgs\u003c/code\u003e unset (the default) arguments keep the existing copied, caller-owned semantics, so the flag is fully backward compatible; it has no effect on integer, float, time, or NULL arguments.\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/120\"\u003e#120\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/120\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/120\u003c/a\u003e), thanks Ian Chechin!\u003c/li\u003e\n\u003cli\u003eExtend the opt-in \u003ccode\u003eVolatileArgs\u003c/code\u003e zero-copy TEXT/BLOB argument access from \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/120\"\u003e#120\u003c/a\u003e to the virtual-table \u003ccode\u003eCursor.Filter\u003c/code\u003e (\u003ccode\u003exFilter\u003c/code\u003e) and \u003ccode\u003eUpdater.Insert\u003c/code\u003e/\u003ccode\u003eUpdate\u003c/code\u003e (\u003ccode\u003exUpdate\u003c/code\u003e) callbacks. A \u003ccode\u003evtab.Module\u003c/code\u003e opts in by implementing the new optional \u003ccode\u003evtab.VolatileArgsOpter\u003c/code\u003e interface (\u003ccode\u003eVolatileArgs() bool\u003c/code\u003e); the flag is read once at module registration and shared by every table created from it. On a vtab call carrying one TEXT and one BLOB argument this removes 2 allocs/op (one \u003ccode\u003elibc.GoString\u003c/code\u003e, one \u003ccode\u003emake([]byte)\u003c/code\u003e) on each of the Filter and Update paths.\u003c/li\u003e\n\u003cli\u003eThe same safety contract as \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/120\"\u003e#120\u003c/a\u003e applies: the views are valid only for the duration of the callback and must not be retained past return or across rows; a callback that needs to keep a value must copy it. Modules that do not implement \u003ccode\u003eVolatileArgsOpter\u003c/code\u003e (the default for all existing modules) are byte-for-byte unchanged, and the flag has no effect on integer, float, time, or NULL arguments.\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/121\"\u003e#121\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/121\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/121\u003c/a\u003e), thanks Ian Chechin!\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e2026-05-10 v1.50.1:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eUpgrade to \u003ca href=\"https://sqlite.org/releaselog/3_53_1.html\"\u003eSQLite 3.53.1\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e2026-04-24 v1.50.0:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eUpgrade to sqlite-vec \u003ca href=\"https://github.com/asg017/sqlite-vec/releases/tag/v0.1.9\"\u003ev0.1.9\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003eIntroduce \u003ccode\u003eColumnInfo\u003c/code\u003e, enabling dynamic query builders and ORMs to retrieve underlying SQLite C-API metadata (\u003ccode\u003eOriginName\u003c/code\u003e, \u003ccode\u003eTableName\u003c/code\u003e, \u003ccode\u003eDatabaseName\u003c/code\u003e, and \u003ccode\u003eDeclType\u003c/code\u003e).\u003c/li\u003e\n\u003cli\u003eThis feature is exposed via the idiomatic \u003ccode\u003edatabase/sql\u003c/code\u003e escape hatch \u003ccode\u003e(*sql.Conn).Raw()\u003c/code\u003e, avoiding custom statement handles and keeping the standard library workflow intact.\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/113\"\u003e#113\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/113\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/113\u003c/a\u003e), thanks Josh Bleecher Snyder!\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e2026-04-17 v1.49.0: Upgrade to \u003ca href=\"https://sqlite.org/releaselog/3_53_0.html\"\u003eSQLite 3.53.0\u003c/a\u003e.\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdded \u003ccode\u003e-DSQLITE_ENABLE_DBPAGE_VTAB\u003c/code\u003e to the transpilation. See \u003ca href=\"https://www.sqlite.org/dbpage.html\"\u003e\u0026quot;The SQLITE_DBPAGE Virtual Table\u0026quot;\u003c/a\u003e for details.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e2026-04-06 v1.48.2:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eFix ABI mapping mismatch in the pre-update hook trampoline that caused silent truncation of large 64-bit RowIDs.\u003c/li\u003e\n\u003cli\u003eEnsure the Go trampoline signature correctly aligns with the public \u003ccode\u003esqlite3_preupdate_hook\u003c/code\u003e C API, preventing data corruption for high-entropy keys (e.g., Snowflake IDs).\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/98\"\u003e#98\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/98\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/98\u003c/a\u003e), thanks Josh Bleecher Snyder!\u003c/li\u003e\n\u003cli\u003eFix the memory allocator used in \u003ccode\u003e(*conn).Deserialize\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003eReplace \u003ccode\u003etls.Alloc\u003c/code\u003e with \u003ccode\u003esqlite3_malloc64\u003c/code\u003e to prevent internal allocator corruption. This ensures the buffer is safely owned by SQLite, which may resize or free it due to the \u003ccode\u003eSQLITE_DESERIALIZE_RESIZEABLE\u003c/code\u003e and \u003ccode\u003eSQLITE_DESERIALIZE_FREEONCLOSE\u003c/code\u003e flags.\u003c/li\u003e\n\u003cli\u003ePrevent a memory leak by properly freeing the allocated buffer if fetching the main database name fails before handing ownership to SQLite.\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/100\"\u003e#100\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/100\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/100\u003c/a\u003e), thanks Josh Bleecher Snyder!\u003c/li\u003e\n\u003cli\u003eFix \u003ccode\u003e(*conn).Deserialize\u003c/code\u003e to explicitly reject \u003ccode\u003enil\u003c/code\u003e or empty byte slices.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/66b4d20f42485b9823a2d35c86b08335d927d0e5\"\u003e\u003ccode\u003e66b4d20\u003c/code\u003e\u003c/a\u003e release v1.52.0, upgrade to SQLite 3.53.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/e3f64ec2f026880b2fbc868f195863648cd07fb3\"\u003e\u003ccode\u003ee3f64ec\u003c/code\u003e\u003c/a\u003e rows: clarify parseFmtIdx mixed-column cost; CHANGELOG.md: document \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/125\"\u003e#125\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/448579342c2da286622d7cab5db84a746124e7b1\"\u003e\u003ccode\u003e4485793\u003c/code\u003e\u003c/a\u003e Merge branch 'perf/cache-parse-time-format' into 'master'\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/3638d17bf28d730d7dd90ff5cf3f93c45b9d752e\"\u003e\u003ccode\u003e3638d17\u003c/code\u003e\u003c/a\u003e rows: cache the parseTime format index per result column\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/7da793ef16502dced14643451a8bec834f999d9e\"\u003e\u003ccode\u003e7da793e\u003c/code\u003e\u003c/a\u003e CHANGELOG.md: document \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/124\"\u003e#124\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/51e6714774262680e2454b1a9ccc49b4245b220a\"\u003e\u003ccode\u003e51e6714\u003c/code\u003e\u003c/a\u003e Merge branch 'perf/cache-column-decltype' into 'master'\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/8a6f33ce42bfa4a864daf8a4c97908e7691499d9\"\u003e\u003ccode\u003e8a6f33c\u003c/code\u003e\u003c/a\u003e rows: lock down ColumnTypeScanType under the decltype cache\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/f8fb6dd1d58d74d022b77cc385a9828a1ac49762\"\u003e\u003ccode\u003ef8fb6dd\u003c/code\u003e\u003c/a\u003e rows: cache the column decltype lookup once per result set\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/b17c0c7faf2247b8251efaa638ac101e5dea7ec1\"\u003e\u003ccode\u003eb17c0c7\u003c/code\u003e\u003c/a\u003e CHANGELOG.md: document \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/123\"\u003e#123\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/c80a08fbe3d37ffa8c7e669c46053b692135523b\"\u003e\u003ccode\u003ec80a08f\u003c/code\u003e\u003c/a\u003e Merge branch 'perf/column-text-zero-copy' into 'master'\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://gitlab.com/cznic/sqlite/compare/v1.50.1...v1.52.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `github.com/go-playground/validator/v10` from 10.30.2 to 10.30.3\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/go-playground/validator/releases\"\u003egithub.com/go-playground/validator/v10's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev10.30.3\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFix/issue 1550 UUID case insensitive by \u003ca href=\"https://github.com/leo-jp-edwards\"\u003e\u003ccode\u003e@​leo-jp-edwards\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/go-playground/validator/pull/1551\"\u003ego-playground/validator#1551\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFeat: Add NoneOf Validation by \u003ca href=\"https://github.com/Carmen-Shannon\"\u003e\u003ccode\u003e@​Carmen-Shannon\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/go-playground/validator/pull/1554\"\u003ego-playground/validator#1554\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd bcp47_strict_language_tag validator by \u003ca href=\"https://github.com/bfabio\"\u003e\u003ccode\u003e@​bfabio\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/go-playground/validator/pull/1489\"\u003ego-playground/validator#1489\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps): bump golang.org/x/text from 0.35.0 to 0.36.0 by \u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/go-playground/validator/pull/1558\"\u003ego-playground/validator#1558\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps): bump golang.org/x/crypto from 0.49.0 to 0.50.0 by \u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/go-playground/validator/pull/1559\"\u003ego-playground/validator#1559\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd CLAUDE.md with repo guidance for Claude Code by \u003ca href=\"https://github.com/deankarn\"\u003e\u003ccode\u003e@​deankarn\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/go-playground/validator/pull/1564\"\u003ego-playground/validator#1564\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eReduce build size with dead code elimination by \u003ca href=\"https://github.com/zemzale\"\u003e\u003ccode\u003e@​zemzale\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/go-playground/validator/pull/1542\"\u003ego-playground/validator#1542\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eRefactored out detectFileMIMEType, matchesMIMEType logic for reuse. Added standalone isMIMEType validator for flexibility by \u003ca href=\"https://github.com/dapzthelegend\"\u003e\u003ccode\u003e@​dapzthelegend\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/go-playground/validator/pull/1544\"\u003ego-playground/validator#1544\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efeat(translations): add timezone support for en and ja locales by \u003ca href=\"https://github.com/dedyf5\"\u003e\u003ccode\u003e@​dedyf5\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/go-playground/validator/pull/1566\"\u003ego-playground/validator#1566\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003edocs: use errors.As in README and translations example by \u003ca href=\"https://github.com/eyupcanakman\"\u003e\u003ccode\u003e@​eyupcanakman\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/go-playground/validator/pull/1563\"\u003ego-playground/validator#1563\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003edocs: fix typos by \u003ca href=\"https://github.com/rymiyamoto\"\u003e\u003ccode\u003e@​rymiyamoto\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/go-playground/validator/pull/1568\"\u003ego-playground/validator#1568\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efeat: add origin validator for web origin URLs by \u003ca href=\"https://github.com/ahmedkamalio\"\u003e\u003ccode\u003e@​ahmedkamalio\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/go-playground/validator/pull/1565\"\u003ego-playground/validator#1565\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix: reject hostnames with trailing hyphen in RFC 952 validator by \u003ca href=\"https://github.com/ahmedkamalio\"\u003e\u003ccode\u003e@​ahmedkamalio\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/go-playground/validator/pull/1569\"\u003ego-playground/validator#1569\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix(lint): correctly disable govet inline analyzer \u0026amp; deprecated gomodguard by \u003ca href=\"https://github.com/nodivbyzero\"\u003e\u003ccode\u003e@​nodivbyzero\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/go-playground/validator/pull/1574\"\u003ego-playground/validator#1574\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps): bump golang.org/x/text from 0.36.0 to 0.37.0 by \u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/go-playground/validator/pull/1572\"\u003ego-playground/validator#1572\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps): bump golang.org/x/crypto from 0.50.0 to 0.51.0 by \u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/go-playground/validator/pull/1571\"\u003ego-playground/validator#1571\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix(cron): anchor regex and accept full cron syntax by \u003ca href=\"https://github.com/ahmedkamalio\"\u003e\u003ccode\u003e@​ahmedkamalio\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/go-playground/validator/pull/1577\"\u003ego-playground/validator#1577\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps): bump golang.org/x/crypto from 0.51.0 to 0.52.0 by \u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/go-playground/validator/pull/1580\"\u003ego-playground/validator#1580\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efeat: omit blank tag names from namespace by \u003ca href=\"https://github.com/abemedia\"\u003e\u003ccode\u003e@​abemedia\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/go-playground/validator/pull/1567\"\u003ego-playground/validator#1567\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix(docs): correct ripemd160 tag name in README validation table by \u003ca href=\"https://github.com/napoleonbot\"\u003e\u003ccode\u003e@​napoleonbot\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/go-playground/validator/pull/1582\"\u003ego-playground/validator#1582\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eNew Contributors\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/leo-jp-edwards\"\u003e\u003ccode\u003e@​leo-jp-edwards\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/go-playground/validator/pull/1551\"\u003ego-playground/validator#1551\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Carmen-Shannon\"\u003e\u003ccode\u003e@​Carmen-Shannon\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/go-playground/validator/pull/1554\"\u003ego-playground/validator#1554\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/dapzthelegend\"\u003e\u003ccode\u003e@​dapzthelegend\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/go-playground/validator/pull/1544\"\u003ego-playground/validator#1544\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/dedyf5\"\u003e\u003ccode\u003e@​dedyf5\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/go-playground/validator/pull/1566\"\u003ego-playground/validator#1566\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eyupcanakman\"\u003e\u003ccode\u003e@​eyupcanakman\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/go-playground/validator/pull/1563\"\u003ego-playground/validator#1563\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/rymiyamoto\"\u003e\u003ccode\u003e@​rymiyamoto\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/go-playground/validator/pull/1568\"\u003ego-playground/validator#1568\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/abemedia\"\u003e\u003ccode\u003e@​abemedia\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/go-playground/validator/pull/1567\"\u003ego-playground/validator#1567\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/napoleonbot\"\u003e\u003ccode\u003e@​napoleonbot\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/go-playground/validator/pull/1582\"\u003ego-playground/validator#1582\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/go-playground/validator/compare/v10.30.2...v10.30.3\"\u003ehttps://github.com/go-playground/validator/compare/v10.30.2...v10.30.3\u003c/a\u003e\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/go-playground/validator/commit/ac4c1bab0d4aa957466faa1948af28130767e43a\"\u003e\u003ccode\u003eac4c1ba\u003c/code\u003e\u003c/a\u003e fix(docs): correct ripemd160 tag name in README validation table (\u003ca href=\"https://redirect.github.com/go-playground/validator/issues/1582\"\u003e#1582\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/go-playground/validator/commit/feacb34d4fa5bd263392bcd03d5348a94ca28870\"\u003e\u003ccode\u003efeacb34\u003c/code\u003e\u003c/a\u003e feat: omit blank tag names from namespace (\u003ca href=\"https://redirect.github.com/go-playground/validator/issues/1567\"\u003e#1567\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/go-playground/validator/commit/5ed0a7ea9ac87c2409326e1d88f34678658b84e0\"\u003e\u003ccode\u003e5ed0a7e\u003c/code\u003e\u003c/a\u003e chore(deps): bump golang.org/x/crypto from 0.51.0 to 0.52.0 (\u003ca href=\"https://redirect.github.com/go-playground/validator/issues/1580\"\u003e#1580\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/go-playground/validator/commit/0364541fa467027703223b3d0cace07a667c8302\"\u003e\u003ccode\u003e0364541\u003c/code\u003e\u003c/a\u003e fix(cron): anchor regex and accept full cron syntax (\u003ca href=\"https://redirect.github.com/go-playground/validator/issues/1577\"\u003e#1577\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/go-playground/validator/commit/8eb2659789a33bda9262ce62eed2d714539dc8c5\"\u003e\u003ccode\u003e8eb2659\u003c/code\u003e\u003c/a\u003e chore(deps): bump golang.org/x/crypto from 0.50.0 to 0.51.0 (\u003ca href=\"https://redirect.github.com/go-playground/validator/issues/1571\"\u003e#1571\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/go-playground/validator/commit/f7e1721521360af7958fe59e9c34ba0813f25bf8\"\u003e\u003ccode\u003ef7e1721\u003c/code\u003e\u003c/a\u003e chore(deps): bump golang.org/x/text from 0.36.0 to 0.37.0 (\u003ca href=\"https://redirect.github.com/go-playground/validator/issues/1572\"\u003e#1572\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/go-playground/validator/commit/cf37fce7a1a5dee2810a085ae39aec5c78e7cd8a\"\u003e\u003ccode\u003ecf37fce\u003c/code\u003e\u003c/a\u003e fix(lint): correctly disable govet inline analyzer \u0026amp; deprecated gomodguard (#...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/go-playground/validator/commit/7c334e52092ad1224f0a2eed6bc77408374048b7\"\u003e\u003ccode\u003e7c334e5\u003c/code\u003e\u003c/a\u003e fix: reject hostnames with trailing hyphen in RFC 952 validator (\u003ca href=\"https://redirect.github.com/go-playground/validator/issues/1569\"\u003e#1569\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/go-playground/validator/commit/6bcb7bcaf6a99f8d6cf16cc8d062ad8c47950901\"\u003e\u003ccode\u003e6bcb7bc\u003c/code\u003e\u003c/a\u003e feat: add origin validator for web origin URLs (\u003ca href=\"https://redirect.github.com/go-playground/validator/issues/1565\"\u003e#1565\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/go-playground/validator/commit/6fd2fa82069c9aede1882d703c0e7ee2660bc4d9\"\u003e\u003ccode\u003e6fd2fa8\u003c/code\u003e\u003c/a\u003e docs: fix typos (\u003ca href=\"https://redirect.github.com/go-playground/validator/issues/1568\"\u003e#1568\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/go-playground/validator/compare/v10.30.2...v10.30.3\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n","html_url":"https://github.com/MustardSeedNetworks/seed/pull/1495","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/MustardSeedNetworks%2Fseed/issues/1495","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/1495/packages"}},{"old_version":"1.33.1","new_version":"1.52.0","update_type":"minor","path":null,"pr_created_at":"2026-06-04T05:01:33.000Z","version_change":"1.33.1 → 1.52.0","issue":{"uuid":"4585954643","node_id":"PR_kwDOSCwGwM7iiNzn","number":33,"state":"closed","title":"chore(deps): bump the minor-and-patch group across 1 directory with 3 updates","user":"dependabot[bot]","labels":["dependencies","go"],"assignees":[],"locked":false,"comments_count":2,"pull_request":true,"closed_at":"2026-06-10T22:32:38.000Z","author_association":null,"state_reason":null,"created_at":"2026-06-04T05:01:33.000Z","updated_at":"2026-06-10T22:32:40.000Z","time_to_close":581465,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"chore(deps): bump","group_name":"minor-and-patch","update_count":3,"packages":[{"name":"github.com/godbus/dbus/v5","old_version":"5.1.0","new_version":"5.2.2","repository_url":"https://github.com/godbus/dbus"},{"name":"golang.org/x/sys","old_version":"0.44.0","new_version":"0.45.0","repository_url":"https://github.com/golang/sys"},{"name":"modernc.org/sqlite","old_version":"1.33.1","new_version":"1.52.0"}],"path":null,"ecosystem":"go"},"body":"Bumps the minor-and-patch group with 3 updates in the / directory: [github.com/godbus/dbus/v5](https://github.com/godbus/dbus), [golang.org/x/sys](https://github.com/golang/sys) and [modernc.org/sqlite](https://gitlab.com/cznic/sqlite).\n\nUpdates `github.com/godbus/dbus/v5` from 5.1.0 to 5.2.2\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/godbus/dbus/releases\"\u003egithub.com/godbus/dbus/v5's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev5.2.2\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eDrop ununsed import in windows specific code by \u003ca href=\"https://github.com/dims\"\u003e\u003ccode\u003e@​dims\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/godbus/dbus/pull/427\"\u003egodbus/dbus#427\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eNew Contributors\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/dims\"\u003e\u003ccode\u003e@​dims\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/godbus/dbus/pull/427\"\u003egodbus/dbus#427\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/godbus/dbus/compare/v5.2.1...v5.2.2\"\u003ehttps://github.com/godbus/dbus/compare/v5.2.1...v5.2.2\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev5.2.1\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eci: bump freebsd to 14.3 by \u003ca href=\"https://github.com/kolyshkin\"\u003e\u003ccode\u003e@​kolyshkin\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/godbus/dbus/pull/421\"\u003egodbus/dbus#421\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAllow more than 32 containers / struct fields in a signature by \u003ca href=\"https://github.com/guelfey\"\u003e\u003ccode\u003e@​guelfey\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/godbus/dbus/pull/426\"\u003egodbus/dbus#426\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump golangci-lint to v2, fix some issues found by \u003ca href=\"https://github.com/kolyshkin\"\u003e\u003ccode\u003e@​kolyshkin\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/godbus/dbus/pull/419\"\u003egodbus/dbus#419\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix and simplify getHomeDir by \u003ca href=\"https://github.com/kolyshkin\"\u003e\u003ccode\u003e@​kolyshkin\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/godbus/dbus/pull/422\"\u003egodbus/dbus#422\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/godbus/dbus/compare/v5.2.0...v5.2.1\"\u003ehttps://github.com/godbus/dbus/compare/v5.2.0...v5.2.1\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev5.2.0\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFix default golangci-lint warnings, add it to GHA by \u003ca href=\"https://github.com/kolyshkin\"\u003e\u003ccode\u003e@​kolyshkin\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/godbus/dbus/pull/308\"\u003egodbus/dbus#308\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd example for grab media keys. by \u003ca href=\"https://github.com/linuxerwang\"\u003e\u003ccode\u003e@​linuxerwang\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/godbus/dbus/pull/316\"\u003egodbus/dbus#316\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eCI: enable more linters by \u003ca href=\"https://github.com/kolyshkin\"\u003e\u003ccode\u003e@​kolyshkin\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/godbus/dbus/pull/319\"\u003egodbus/dbus#319\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd rpic to projects using godbus by \u003ca href=\"https://github.com/stephenhu\"\u003e\u003ccode\u003e@​stephenhu\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/godbus/dbus/pull/320\"\u003egodbus/dbus#320\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eCI: Go 1.18 fixes by \u003ca href=\"https://github.com/guelfey\"\u003e\u003ccode\u003e@​guelfey\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/godbus/dbus/pull/322\"\u003egodbus/dbus#322\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eadd fuzz test for (signature) decoding by \u003ca href=\"https://github.com/guelfey\"\u003e\u003ccode\u003e@​guelfey\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/godbus/dbus/pull/323\"\u003egodbus/dbus#323\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003estyle: error should be returned as the last argument by \u003ca href=\"https://github.com/liaohanqin\"\u003e\u003ccode\u003e@​liaohanqin\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/godbus/dbus/pull/314\"\u003egodbus/dbus#314\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eexamples: Add asynchronous D-Bus call example in \u003ca href=\"https://redirect.github.com/godbus/dbus/pull/325\"\u003egodbus/dbus#325\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003edoc: fix spelling errors by \u003ca href=\"https://github.com/guelfey\"\u003e\u003ccode\u003e@​guelfey\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/godbus/dbus/pull/335\"\u003egodbus/dbus#335\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eReplace loop with call to copy() by \u003ca href=\"https://github.com/liaohanqin\"\u003e\u003ccode\u003e@​liaohanqin\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/godbus/dbus/pull/334\"\u003egodbus/dbus#334\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix(ci): apt-get update before installing dbus by \u003ca href=\"https://github.com/guelfey\"\u003e\u003ccode\u003e@​guelfey\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/godbus/dbus/pull/342\"\u003egodbus/dbus#342\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efreebsd: Remove the cgo dependency from transport_unixcred_freebsd.go by \u003ca href=\"https://github.com/dfr\"\u003e\u003ccode\u003e@​dfr\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/godbus/dbus/pull/332\"\u003egodbus/dbus#332\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eReduce allocs in decode function by \u003ca href=\"https://github.com/marselester\"\u003e\u003ccode\u003e@​marselester\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/godbus/dbus/pull/344\"\u003egodbus/dbus#344\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eSet argument of SetProperty to Variant by \u003ca href=\"https://github.com/WhyNotHugo\"\u003e\u003ccode\u003e@​WhyNotHugo\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/godbus/dbus/pull/239\"\u003egodbus/dbus#239\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eReduce allocs in ReadMessage (unix transport) by \u003ca href=\"https://github.com/marselester\"\u003e\u003ccode\u003e@​marselester\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/godbus/dbus/pull/347\"\u003egodbus/dbus#347\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix missing alignment in decodeU() by \u003ca href=\"https://github.com/felixonmars\"\u003e\u003ccode\u003e@​felixonmars\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/godbus/dbus/pull/348\"\u003egodbus/dbus#348\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd test case for bool alignment by \u003ca href=\"https://github.com/guelfey\"\u003e\u003ccode\u003e@​guelfey\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/godbus/dbus/pull/349\"\u003egodbus/dbus#349\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd go 1.19 support by \u003ca href=\"https://github.com/amenzhinsky\"\u003e\u003ccode\u003e@​amenzhinsky\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/godbus/dbus/pull/339\"\u003egodbus/dbus#339\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eCI tweaks by \u003ca href=\"https://github.com/guelfey\"\u003e\u003ccode\u003e@​guelfey\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/godbus/dbus/pull/360\"\u003egodbus/dbus#360\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eci: add FreBSD job using Cirrus by \u003ca href=\"https://github.com/guelfey\"\u003e\u003ccode\u003e@​guelfey\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/godbus/dbus/pull/361\"\u003egodbus/dbus#361\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eReduce decoder allocs due to int/uint decoding by \u003ca href=\"https://github.com/marselester\"\u003e\u003ccode\u003e@​marselester\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/godbus/dbus/pull/356\"\u003egodbus/dbus#356\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ePointer semantics in depthCounter by \u003ca href=\"https://github.com/marselester\"\u003e\u003ccode\u003e@​marselester\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/godbus/dbus/pull/352\"\u003egodbus/dbus#352\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003emessage: use Discard for encoding in IsValid by \u003ca href=\"https://github.com/guelfey\"\u003e\u003ccode\u003e@​guelfey\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/godbus/dbus/pull/362\"\u003egodbus/dbus#362\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eOmit extra (*Message).IsValid for outgoing messages by \u003ca href=\"https://github.com/guelfey\"\u003e\u003ccode\u003e@​guelfey\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/godbus/dbus/pull/363\"\u003egodbus/dbus#363\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eOnly check header validity when decoding messages by \u003ca href=\"https://github.com/guelfey\"\u003e\u003ccode\u003e@​guelfey\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/godbus/dbus/pull/364\"\u003egodbus/dbus#364\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eReplaced godoc url with pkg.go.dev url for v5. by \u003ca href=\"https://github.com/olivercalder\"\u003e\u003ccode\u003e@​olivercalder\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/godbus/dbus/pull/369\"\u003egodbus/dbus#369\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eReduce bytes to strings allocs in decoder by \u003ca href=\"https://github.com/marselester\"\u003e\u003ccode\u003e@​marselester\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/godbus/dbus/pull/367\"\u003egodbus/dbus#367\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efeat: add security-policy to project by \u003ca href=\"https://github.com/diogoteles08\"\u003e\u003ccode\u003e@​diogoteles08\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/godbus/dbus/pull/366\"\u003egodbus/dbus#366\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eauth: Do not send UID with external auth by \u003ca href=\"https://github.com/idleroamer\"\u003e\u003ccode\u003e@​idleroamer\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/godbus/dbus/pull/346\"\u003egodbus/dbus#346\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/godbus/dbus/commit/a8ac15ba63645f02ffd57f4b443203279ab40b30\"\u003e\u003ccode\u003ea8ac15b\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/godbus/dbus/issues/427\"\u003e#427\u003c/a\u003e from dims/drop-unused-import-in-windows-specific-code\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/godbus/dbus/commit/e638c721d984eab99e7a5d674ece2e17ea913aca\"\u003e\u003ccode\u003ee638c72\u003c/code\u003e\u003c/a\u003e Drop ununsed import in windows specific code\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/godbus/dbus/commit/20d95a3d9a57a5cb72cbdafb3fd9ecb6d2ccd038\"\u003e\u003ccode\u003e20d95a3\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/godbus/dbus/issues/422\"\u003e#422\u003c/a\u003e from kolyshkin/homedir\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/godbus/dbus/commit/d3fc3b583895e27c3337f77ea7134b0a81159955\"\u003e\u003ccode\u003ed3fc3b5\u003c/code\u003e\u003c/a\u003e Fix and simplify getHomeDir\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/godbus/dbus/commit/88ce46364db66b69f70017265a312b26ad7feba8\"\u003e\u003ccode\u003e88ce463\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/godbus/dbus/issues/419\"\u003e#419\u003c/a\u003e from kolyshkin/golangci-v2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/godbus/dbus/commit/feb892a0347fb361350229d969a2666a4791504e\"\u003e\u003ccode\u003efeb892a\u003c/code\u003e\u003c/a\u003e ci: bump golangci-lint to v2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/godbus/dbus/commit/c5ff039e5883a86f848ad6fbb820e471818c0bde\"\u003e\u003ccode\u003ec5ff039\u003c/code\u003e\u003c/a\u003e Ignore ST1008 warning for validSingle\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/godbus/dbus/commit/135663e52698feb5ad4b0733d7e457c82227214a\"\u003e\u003ccode\u003e135663e\u003c/code\u003e\u003c/a\u003e Omit embedded fields\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/godbus/dbus/commit/1b92cdcc136567c781bcc0ad1ccb4bd78b11e151\"\u003e\u003ccode\u003e1b92cdc\u003c/code\u003e\u003c/a\u003e variant_parser: simplify switch statement\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/godbus/dbus/commit/d03c0bea70755580de832141a43f544950e76fc7\"\u003e\u003ccode\u003ed03c0be\u003c/code\u003e\u003c/a\u003e Use switch where it makes sense\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/godbus/dbus/compare/v5.1.0...v5.2.2\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `golang.org/x/sys` from 0.44.0 to 0.45.0\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/golang/sys/commit/397d5f80920585bc27433d878aba498d062f81e1\"\u003e\u003ccode\u003e397d5f8\u003c/code\u003e\u003c/a\u003e unix: update to Linux kernel 7.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/golang/sys/commit/0a387f7a07d7a0e9811f00603c10b4e5a94ab79c\"\u003e\u003ccode\u003e0a387f7\u003c/code\u003e\u003c/a\u003e cpu: detect zbc extension on riscv64\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/golang/sys/commit/758f71cb839d131daf0ba4befa6a2c6ceb21a649\"\u003e\u003ccode\u003e758f71c\u003c/code\u003e\u003c/a\u003e cpu: add LLACQ_SCREL, SCQ, DBAR_HINTS detection for loong64\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/golang/sys/commit/99666ae32e07f6403182a79cb5df0c417cbbf25f\"\u003e\u003ccode\u003e99666ae\u003c/code\u003e\u003c/a\u003e unix: merge Linux readv/writev implementation with Darwin/OpenBSD\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/golang/sys/commit/e4444cbaaaf61cecff8e635874066fcd5c841575\"\u003e\u003ccode\u003ee4444cb\u003c/code\u003e\u003c/a\u003e windows: add NtSetEaFile, NtQueryEaFile and NtQueryInformationFile\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/golang/sys/commit/04396e85d470b7f990a9a1df5c1a44dc8e30c292\"\u003e\u003ccode\u003e04396e8\u003c/code\u003e\u003c/a\u003e unix: add Readv, Writev, Preadv, Pwritev for OpenBSD\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/golang/sys/compare/v0.44.0...v0.45.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `modernc.org/sqlite` from 1.33.1 to 1.52.0\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://gitlab.com/cznic/sqlite/blob/master/CHANGELOG.md\"\u003emodernc.org/sqlite's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003eChangelog\u003c/h1\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e2026-06-06 v1.52.0:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eUpgrade to \u003ca href=\"https://sqlite.org/releaselog/3_53_2.html\"\u003eSQLite 3.53.2\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003eBackup.Remaining\u003c/code\u003e and \u003ccode\u003eBackup.PageCount\u003c/code\u003e, thin wrappers around the existing \u003ccode\u003esqlite3_backup_remaining\u003c/code\u003e and \u003ccode\u003esqlite3_backup_pagecount\u003c/code\u003e C symbols. Together they expose the per-\u003ccode\u003eStep\u003c/code\u003e progress counters that the underlying backup object already maintains, enabling progress reporting during online backups without dropping to \u003ccode\u003emodernc.org/sqlite/lib\u003c/code\u003e directly.\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/122\"\u003e#122\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/122\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/122\u003c/a\u003e), thanks Ian Chechin!\u003c/li\u003e\n\u003cli\u003eDrop the redundant second copy in \u003ccode\u003e(*conn).columnText\u003c/code\u003e, the path that backs every \u003ccode\u003eRows.Scan\u003c/code\u003e into a Go \u003ccode\u003estring\u003c/code\u003e for a TEXT column. The value's bytes are still copied once out of SQLite-owned memory into a fresh Go buffer; that buffer is then reinterpreted as the result string with \u003ccode\u003eunsafe.String\u003c/code\u003e rather than copied a second time by the implicit \u003ccode\u003estring([]byte)\u003c/code\u003e conversion. This removes one allocation per TEXT value per row and roughly halves the bytes allocated on that path; on the new \u003ccode\u003eBenchmarkColumnTextScan\u003c/code\u003e cases it is ~13–20% faster for payloads of 256 B and larger, with no measurable change for very short strings. Purely internal: no API or behavioral change, and the returned string never aliases SQLite's buffer.\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/123\"\u003e#123\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/123\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/123\u003c/a\u003e), thanks Ian Chechin!\u003c/li\u003e\n\u003cli\u003eCache each result column's declared type once per result set in \u003ccode\u003enewRows\u003c/code\u003e instead of recomputing it on every row. The TEXT branch of \u003ccode\u003eRows.Next\u003c/code\u003e calls \u003ccode\u003eColumnTypeDatabaseTypeName\u003c/code\u003e for every TEXT column on every row (independent of any DSN flag), which previously did a \u003ccode\u003elibc.GoString\u003c/code\u003e + \u003ccode\u003estrings.ToUpper\u003c/code\u003e each time; that lookup is now a single index into a cached, pre-uppercased \u003ccode\u003e[]string\u003c/code\u003e, and \u003ccode\u003eColumnTypeScanType\u003c/code\u003e reads the same cache and drops its per-call \u003ccode\u003estrings.ToLower\u003c/code\u003e. The declared type is fixed for the lifetime of a prepared statement, so the C round-trip is paid once per column rather than once per column per row, removing exactly 1 alloc + 8 B per TEXT column per row from the \u003ccode\u003eNext\u003c/code\u003e hot path. The new \u003ccode\u003eBenchmarkTextToTimeScan\u003c/code\u003e cases show ~7% faster on a 1000-row DATETIME SELECT under \u003ccode\u003e_texttotime=1\u003c/code\u003e. Purely internal: \u003ccode\u003eColumnTypeDatabaseTypeName\u003c/code\u003e and \u003ccode\u003eColumnTypeScanType\u003c/code\u003e return identical values, no API or behavioral change.\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/124\"\u003e#124\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/124\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/124\u003c/a\u003e), thanks Ian Chechin!\u003c/li\u003e\n\u003cli\u003eCache, per result column, the \u003ccode\u003eparseTimeFormats\u003c/code\u003e index that first parsed a TEXT-stored DATE/DATETIME/TIMESTAMP value, and try that format first on later rows instead of re-walking the list from the top. \u003ccode\u003e(*conn).parseTime\u003c/code\u003e previously ran \u003ccode\u003etime.Parse\u003c/code\u003e down the format list on every such row; for the canonical SQLite TEXT datetime format every row paid two failed \u003ccode\u003etime.Parse\u003c/code\u003e attempts — each allocating a \u003ccode\u003e*time.ParseError\u003c/code\u003e — before the match. On a 1000-row DATETIME TEXT SELECT this cuts ~50% of allocs/op and ~57% of B/op and is ~37% faster. The fall-through chain is preserved exactly: the seven formats are mutually exclusive, so the cached hint can never select a different match than the in-order scan, and the parsed \u003ccode\u003edriver.Value\u003c/code\u003e is identical to before. Purely internal: no API or behavioral change.\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/125\"\u003e#125\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/125\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/125\u003c/a\u003e), thanks Ian Chechin!\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e2026-05-28 v1.51.0:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003ePool the \u003ccode\u003e[]driver.Value\u003c/code\u003e slice passed to scalar/aggregate UDF callbacks and to vtab \u003ccode\u003eFilter\u003c/code\u003e/\u003ccode\u003eInsert\u003c/code\u003e/\u003ccode\u003eUpdate\u003c/code\u003e callbacks, eliminating the dominant per-row allocation on UDF-heavy queries. Benchmarks on a 1000-row, 3-arg noop scalar UDF show ~40% fewer bytes/op and ~15% fewer allocs/op.\u003c/li\u003e\n\u003cli\u003eDocument the matching \u0026quot;arguments are not valid past return\u0026quot; contract on \u003ccode\u003evtab.Cursor.Filter\u003c/code\u003e and \u003ccode\u003evtab.Updater.Insert\u003c/code\u003e/\u003ccode\u003eUpdate\u003c/code\u003e, consistent with the existing rule for \u003ccode\u003eFunctionImpl.Scalar\u003c/code\u003e / \u003ccode\u003eAggregateFunction.Step\u003c/code\u003e / \u003ccode\u003eWindowInverse\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003eResolves [GitLab issue \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/226\"\u003e#226\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/issues/226\"\u003ehttps://gitlab.com/cznic/sqlite/-/issues/226\u003c/a\u003e). See [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/114\"\u003e#114\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/114\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/114\u003c/a\u003e), thanks Ian Chechin!\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003eFileControl.FileControlDataVersion\u003c/code\u003e, a wrapper around \u003ccode\u003eSQLITE_FCNTL_DATA_VERSION\u003c/code\u003e for observing pager-cache data-version changes, including those made on the same connection. Useful as a primitive for application-level cache invalidation.\u003c/li\u003e\n\u003cli\u003eExposed via the idiomatic \u003ccode\u003edatabase/sql\u003c/code\u003e escape hatch \u003ccode\u003e(*sql.Conn).Raw()\u003c/code\u003e, consistent with the existing \u003ccode\u003eFileControlPersistWAL\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/115\"\u003e#115\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/115\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/115\u003c/a\u003e), thanks Ian Chechin!\u003c/li\u003e\n\u003cli\u003eFix a regression where in-memory connections (\u003ccode\u003e:memory:\u003c/code\u003e, \u003ccode\u003efile::memory:\u003c/code\u003e, shared-cache memory URIs) were discarded by \u003ccode\u003edatabase/sql\u003c/code\u003e after a context-cancelled query, taking the entire in-memory store with them. The fix for \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/198\"\u003e#198\u003c/a\u003e had added an \u003ccode\u003esqlite3_is_interrupted\u003c/code\u003e check to the connection validator that mistakenly applied to in-memory connections too, re-introducing the bug originally fixed by !74. File-backed connections keep the existing behaviour and are still discarded after an interrupt.\u003c/li\u003e\n\u003cli\u003eResolves [GitLab issue \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/196\"\u003e#196\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/issues/196\"\u003ehttps://gitlab.com/cznic/sqlite/-/issues/196\u003c/a\u003e). See [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/116\"\u003e#116\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/116\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/116\u003c/a\u003e), thanks Ian Chechin!\u003c/li\u003e\n\u003cli\u003eAdd an opt-in \u003ccode\u003eFunctionImpl.VolatileArgs\u003c/code\u003e flag that hands TEXT and BLOB arguments to scalar and aggregate UDF callbacks as zero-copy views (\u003ccode\u003eunsafe.String\u003c/code\u003e/\u003ccode\u003eunsafe.Slice\u003c/code\u003e) over SQLite's own value buffers, eliminating the per-argument \u003ccode\u003elibc.GoString\u003c/code\u003e/\u003ccode\u003emake([]byte)\u003c/code\u003e copy that the \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/226\"\u003e#226\u003c/a\u003e slice-pooling left as the remaining per-row allocation. On the same 1000-row, 3-arg (INTEGER/TEXT/BLOB) noop scalar UDF this removes a further ~35% of allocs/op and ~11% of bytes/op on top of \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/226\"\u003e#226\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003eThe views are valid only for the duration of the callback and must not be retained past return or across rows; a callback that needs to keep a value must copy it. With \u003ccode\u003eVolatileArgs\u003c/code\u003e unset (the default) arguments keep the existing copied, caller-owned semantics, so the flag is fully backward compatible; it has no effect on integer, float, time, or NULL arguments.\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/120\"\u003e#120\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/120\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/120\u003c/a\u003e), thanks Ian Chechin!\u003c/li\u003e\n\u003cli\u003eExtend the opt-in \u003ccode\u003eVolatileArgs\u003c/code\u003e zero-copy TEXT/BLOB argument access from \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/120\"\u003e#120\u003c/a\u003e to the virtual-table \u003ccode\u003eCursor.Filter\u003c/code\u003e (\u003ccode\u003exFilter\u003c/code\u003e) and \u003ccode\u003eUpdater.Insert\u003c/code\u003e/\u003ccode\u003eUpdate\u003c/code\u003e (\u003ccode\u003exUpdate\u003c/code\u003e) callbacks. A \u003ccode\u003evtab.Module\u003c/code\u003e opts in by implementing the new optional \u003ccode\u003evtab.VolatileArgsOpter\u003c/code\u003e interface (\u003ccode\u003eVolatileArgs() bool\u003c/code\u003e); the flag is read once at module registration and shared by every table created from it. On a vtab call carrying one TEXT and one BLOB argument this removes 2 allocs/op (one \u003ccode\u003elibc.GoString\u003c/code\u003e, one \u003ccode\u003emake([]byte)\u003c/code\u003e) on each of the Filter and Update paths.\u003c/li\u003e\n\u003cli\u003eThe same safety contract as \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/120\"\u003e#120\u003c/a\u003e applies: the views are valid only for the duration of the callback and must not be retained past return or across rows; a callback that needs to keep a value must copy it. Modules that do not implement \u003ccode\u003eVolatileArgsOpter\u003c/code\u003e (the default for all existing modules) are byte-for-byte unchanged, and the flag has no effect on integer, float, time, or NULL arguments.\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/121\"\u003e#121\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/121\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/121\u003c/a\u003e), thanks Ian Chechin!\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e2026-05-10 v1.50.1:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eUpgrade to \u003ca href=\"https://sqlite.org/releaselog/3_53_1.html\"\u003eSQLite 3.53.1\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e2026-04-24 v1.50.0:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eUpgrade to sqlite-vec \u003ca href=\"https://github.com/asg017/sqlite-vec/releases/tag/v0.1.9\"\u003ev0.1.9\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003eIntroduce \u003ccode\u003eColumnInfo\u003c/code\u003e, enabling dynamic query builders and ORMs to retrieve underlying SQLite C-API metadata (\u003ccode\u003eOriginName\u003c/code\u003e, \u003ccode\u003eTableName\u003c/code\u003e, \u003ccode\u003eDatabaseName\u003c/code\u003e, and \u003ccode\u003eDeclType\u003c/code\u003e).\u003c/li\u003e\n\u003cli\u003eThis feature is exposed via the idiomatic \u003ccode\u003edatabase/sql\u003c/code\u003e escape hatch \u003ccode\u003e(*sql.Conn).Raw()\u003c/code\u003e, avoiding custom statement handles and keeping the standard library workflow intact.\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/113\"\u003e#113\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/113\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/113\u003c/a\u003e), thanks Josh Bleecher Snyder!\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e2026-04-17 v1.49.0: Upgrade to \u003ca href=\"https://sqlite.org/releaselog/3_53_0.html\"\u003eSQLite 3.53.0\u003c/a\u003e.\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdded \u003ccode\u003e-DSQLITE_ENABLE_DBPAGE_VTAB\u003c/code\u003e to the transpilation. See \u003ca href=\"https://www.sqlite.org/dbpage.html\"\u003e\u0026quot;The SQLITE_DBPAGE Virtual Table\u0026quot;\u003c/a\u003e for details.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e2026-04-06 v1.48.2:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eFix ABI mapping mismatch in the pre-update hook trampoline that caused silent truncation of large 64-bit RowIDs.\u003c/li\u003e\n\u003cli\u003eEnsure the Go trampoline signature correctly aligns with the public \u003ccode\u003esqlite3_preupdate_hook\u003c/code\u003e C API, preventing data corruption for high-entropy keys (e.g., Snowflake IDs).\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/98\"\u003e#98\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/98\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/98\u003c/a\u003e), thanks Josh Bleecher Snyder!\u003c/li\u003e\n\u003cli\u003eFix the memory allocator used in \u003ccode\u003e(*conn).Deserialize\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003eReplace \u003ccode\u003etls.Alloc\u003c/code\u003e with \u003ccode\u003esqlite3_malloc64\u003c/code\u003e to prevent internal allocator corruption. This ensures the buffer is safely owned by SQLite, which may resize or free it due to the \u003ccode\u003eSQLITE_DESERIALIZE_RESIZEABLE\u003c/code\u003e and \u003ccode\u003eSQLITE_DESERIALIZE_FREEONCLOSE\u003c/code\u003e flags.\u003c/li\u003e\n\u003cli\u003ePrevent a memory leak by properly freeing the allocated buffer if fetching the main database name fails before handing ownership to SQLite.\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/100\"\u003e#100\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/100\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/100\u003c/a\u003e), thanks Josh Bleecher Snyder!\u003c/li\u003e\n\u003cli\u003eFix \u003ccode\u003e(*conn).Deserialize\u003c/code\u003e to explicitly reject \u003ccode\u003enil\u003c/code\u003e or empty byte slices.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/66b4d20f42485b9823a2d35c86b08335d927d0e5\"\u003e\u003ccode\u003e66b4d20\u003c/code\u003e\u003c/a\u003e release v1.52.0, upgrade to SQLite 3.53.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/e3f64ec2f026880b2fbc868f195863648cd07fb3\"\u003e\u003ccode\u003ee3f64ec\u003c/code\u003e\u003c/a\u003e rows: clarify parseFmtIdx mixed-column cost; CHANGELOG.md: document \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/125\"\u003e#125\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/448579342c2da286622d7cab5db84a746124e7b1\"\u003e\u003ccode\u003e4485793\u003c/code\u003e\u003c/a\u003e Merge branch 'perf/cache-parse-time-format' into 'master'\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/3638d17bf28d730d7dd90ff5cf3f93c45b9d752e\"\u003e\u003ccode\u003e3638d17\u003c/code\u003e\u003c/a\u003e rows: cache the parseTime format index per result column\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/7da793ef16502dced14643451a8bec834f999d9e\"\u003e\u003ccode\u003e7da793e\u003c/code\u003e\u003c/a\u003e CHANGELOG.md: document \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/124\"\u003e#124\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/51e6714774262680e2454b1a9ccc49b4245b220a\"\u003e\u003ccode\u003e51e6714\u003c/code\u003e\u003c/a\u003e Merge branch 'perf/cache-column-decltype' into 'master'\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/8a6f33ce42bfa4a864daf8a4c97908e7691499d9\"\u003e\u003ccode\u003e8a6f33c\u003c/code\u003e\u003c/a\u003e rows: lock down ColumnTypeScanType under the decltype cache\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/f8fb6dd1d58d74d022b77cc385a9828a1ac49762\"\u003e\u003ccode\u003ef8fb6dd\u003c/code\u003e\u003c/a\u003e rows: cache the column decltype lookup once per result set\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/b17c0c7faf2247b8251efaa638ac101e5dea7ec1\"\u003e\u003ccode\u003eb17c0c7\u003c/code\u003e\u003c/a\u003e CHANGELOG.md: document \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/123\"\u003e#123\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/c80a08fbe3d37ffa8c7e669c46053b692135523b\"\u003e\u003ccode\u003ec80a08f\u003c/code\u003e\u003c/a\u003e Merge branch 'perf/column-text-zero-copy' into 'master'\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://gitlab.com/cznic/sqlite/compare/v1.33.1...v1.52.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e","html_url":"https://github.com/Hanalyx/kensa/pull/33","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/Hanalyx%2Fkensa/issues/33","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/33/packages"}},{"old_version":"1.50.1","new_version":"1.51.0","update_type":"minor","path":null,"pr_created_at":"2026-06-04T04:25:35.000Z","version_change":"1.50.1 → 1.51.0","issue":{"uuid":"4585774018","node_id":"PR_kwDOQQDZFs7ihnNp","number":793,"state":"open","title":"chore(deps)(deps): bump the go-deps group with 2 updates","user":"dependabot[bot]","labels":["dependencies","go","area: deps"],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":null,"author_association":null,"state_reason":null,"created_at":"2026-06-04T04:25:35.000Z","updated_at":"2026-06-07T00:33:48.000Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"chore(deps)(deps): bump","group_name":"go-deps","update_count":2,"packages":[{"name":"github.com/go-playground/validator/v10","old_version":"10.30.2","new_version":"10.30.3","repository_url":"https://github.com/go-playground/validator"},{"name":"modernc.org/sqlite","old_version":"1.50.1","new_version":"1.51.0"}],"path":null,"ecosystem":"go"},"body":"Bumps the go-deps group with 2 updates: [github.com/go-playground/validator/v10](https://github.com/go-playground/validator) and [modernc.org/sqlite](https://gitlab.com/cznic/sqlite).\n\nUpdates `github.com/go-playground/validator/v10` from 10.30.2 to 10.30.3\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/go-playground/validator/releases\"\u003egithub.com/go-playground/validator/v10's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev10.30.3\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFix/issue 1550 UUID case insensitive by \u003ca href=\"https://github.com/leo-jp-edwards\"\u003e\u003ccode\u003e@​leo-jp-edwards\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/go-playground/validator/pull/1551\"\u003ego-playground/validator#1551\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFeat: Add NoneOf Validation by \u003ca href=\"https://github.com/Carmen-Shannon\"\u003e\u003ccode\u003e@​Carmen-Shannon\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/go-playground/validator/pull/1554\"\u003ego-playground/validator#1554\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd bcp47_strict_language_tag validator by \u003ca href=\"https://github.com/bfabio\"\u003e\u003ccode\u003e@​bfabio\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/go-playground/validator/pull/1489\"\u003ego-playground/validator#1489\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps): bump golang.org/x/text from 0.35.0 to 0.36.0 by \u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/go-playground/validator/pull/1558\"\u003ego-playground/validator#1558\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps): bump golang.org/x/crypto from 0.49.0 to 0.50.0 by \u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/go-playground/validator/pull/1559\"\u003ego-playground/validator#1559\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd CLAUDE.md with repo guidance for Claude Code by \u003ca href=\"https://github.com/deankarn\"\u003e\u003ccode\u003e@​deankarn\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/go-playground/validator/pull/1564\"\u003ego-playground/validator#1564\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eReduce build size with dead code elimination by \u003ca href=\"https://github.com/zemzale\"\u003e\u003ccode\u003e@​zemzale\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/go-playground/validator/pull/1542\"\u003ego-playground/validator#1542\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eRefactored out detectFileMIMEType, matchesMIMEType logic for reuse. Added standalone isMIMEType validator for flexibility by \u003ca href=\"https://github.com/dapzthelegend\"\u003e\u003ccode\u003e@​dapzthelegend\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/go-playground/validator/pull/1544\"\u003ego-playground/validator#1544\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efeat(translations): add timezone support for en and ja locales by \u003ca href=\"https://github.com/dedyf5\"\u003e\u003ccode\u003e@​dedyf5\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/go-playground/validator/pull/1566\"\u003ego-playground/validator#1566\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003edocs: use errors.As in README and translations example by \u003ca href=\"https://github.com/eyupcanakman\"\u003e\u003ccode\u003e@​eyupcanakman\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/go-playground/validator/pull/1563\"\u003ego-playground/validator#1563\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003edocs: fix typos by \u003ca href=\"https://github.com/rymiyamoto\"\u003e\u003ccode\u003e@​rymiyamoto\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/go-playground/validator/pull/1568\"\u003ego-playground/validator#1568\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efeat: add origin validator for web origin URLs by \u003ca href=\"https://github.com/ahmedkamalio\"\u003e\u003ccode\u003e@​ahmedkamalio\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/go-playground/validator/pull/1565\"\u003ego-playground/validator#1565\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix: reject hostnames with trailing hyphen in RFC 952 validator by \u003ca href=\"https://github.com/ahmedkamalio\"\u003e\u003ccode\u003e@​ahmedkamalio\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/go-playground/validator/pull/1569\"\u003ego-playground/validator#1569\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix(lint): correctly disable govet inline analyzer \u0026amp; deprecated gomodguard by \u003ca href=\"https://github.com/nodivbyzero\"\u003e\u003ccode\u003e@​nodivbyzero\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/go-playground/validator/pull/1574\"\u003ego-playground/validator#1574\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps): bump golang.org/x/text from 0.36.0 to 0.37.0 by \u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/go-playground/validator/pull/1572\"\u003ego-playground/validator#1572\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps): bump golang.org/x/crypto from 0.50.0 to 0.51.0 by \u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/go-playground/validator/pull/1571\"\u003ego-playground/validator#1571\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix(cron): anchor regex and accept full cron syntax by \u003ca href=\"https://github.com/ahmedkamalio\"\u003e\u003ccode\u003e@​ahmedkamalio\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/go-playground/validator/pull/1577\"\u003ego-playground/validator#1577\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps): bump golang.org/x/crypto from 0.51.0 to 0.52.0 by \u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/go-playground/validator/pull/1580\"\u003ego-playground/validator#1580\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efeat: omit blank tag names from namespace by \u003ca href=\"https://github.com/abemedia\"\u003e\u003ccode\u003e@​abemedia\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/go-playground/validator/pull/1567\"\u003ego-playground/validator#1567\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix(docs): correct ripemd160 tag name in README validation table by \u003ca href=\"https://github.com/napoleonbot\"\u003e\u003ccode\u003e@​napoleonbot\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/go-playground/validator/pull/1582\"\u003ego-playground/validator#1582\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eNew Contributors\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/leo-jp-edwards\"\u003e\u003ccode\u003e@​leo-jp-edwards\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/go-playground/validator/pull/1551\"\u003ego-playground/validator#1551\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Carmen-Shannon\"\u003e\u003ccode\u003e@​Carmen-Shannon\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/go-playground/validator/pull/1554\"\u003ego-playground/validator#1554\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/dapzthelegend\"\u003e\u003ccode\u003e@​dapzthelegend\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/go-playground/validator/pull/1544\"\u003ego-playground/validator#1544\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/dedyf5\"\u003e\u003ccode\u003e@​dedyf5\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/go-playground/validator/pull/1566\"\u003ego-playground/validator#1566\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eyupcanakman\"\u003e\u003ccode\u003e@​eyupcanakman\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/go-playground/validator/pull/1563\"\u003ego-playground/validator#1563\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/rymiyamoto\"\u003e\u003ccode\u003e@​rymiyamoto\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/go-playground/validator/pull/1568\"\u003ego-playground/validator#1568\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/abemedia\"\u003e\u003ccode\u003e@​abemedia\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/go-playground/validator/pull/1567\"\u003ego-playground/validator#1567\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/napoleonbot\"\u003e\u003ccode\u003e@​napoleonbot\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/go-playground/validator/pull/1582\"\u003ego-playground/validator#1582\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/go-playground/validator/compare/v10.30.2...v10.30.3\"\u003ehttps://github.com/go-playground/validator/compare/v10.30.2...v10.30.3\u003c/a\u003e\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/go-playground/validator/commit/ac4c1bab0d4aa957466faa1948af28130767e43a\"\u003e\u003ccode\u003eac4c1ba\u003c/code\u003e\u003c/a\u003e fix(docs): correct ripemd160 tag name in README validation table (\u003ca href=\"https://redirect.github.com/go-playground/validator/issues/1582\"\u003e#1582\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/go-playground/validator/commit/feacb34d4fa5bd263392bcd03d5348a94ca28870\"\u003e\u003ccode\u003efeacb34\u003c/code\u003e\u003c/a\u003e feat: omit blank tag names from namespace (\u003ca href=\"https://redirect.github.com/go-playground/validator/issues/1567\"\u003e#1567\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/go-playground/validator/commit/5ed0a7ea9ac87c2409326e1d88f34678658b84e0\"\u003e\u003ccode\u003e5ed0a7e\u003c/code\u003e\u003c/a\u003e chore(deps): bump golang.org/x/crypto from 0.51.0 to 0.52.0 (\u003ca href=\"https://redirect.github.com/go-playground/validator/issues/1580\"\u003e#1580\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/go-playground/validator/commit/0364541fa467027703223b3d0cace07a667c8302\"\u003e\u003ccode\u003e0364541\u003c/code\u003e\u003c/a\u003e fix(cron): anchor regex and accept full cron syntax (\u003ca href=\"https://redirect.github.com/go-playground/validator/issues/1577\"\u003e#1577\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/go-playground/validator/commit/8eb2659789a33bda9262ce62eed2d714539dc8c5\"\u003e\u003ccode\u003e8eb2659\u003c/code\u003e\u003c/a\u003e chore(deps): bump golang.org/x/crypto from 0.50.0 to 0.51.0 (\u003ca href=\"https://redirect.github.com/go-playground/validator/issues/1571\"\u003e#1571\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/go-playground/validator/commit/f7e1721521360af7958fe59e9c34ba0813f25bf8\"\u003e\u003ccode\u003ef7e1721\u003c/code\u003e\u003c/a\u003e chore(deps): bump golang.org/x/text from 0.36.0 to 0.37.0 (\u003ca href=\"https://redirect.github.com/go-playground/validator/issues/1572\"\u003e#1572\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/go-playground/validator/commit/cf37fce7a1a5dee2810a085ae39aec5c78e7cd8a\"\u003e\u003ccode\u003ecf37fce\u003c/code\u003e\u003c/a\u003e fix(lint): correctly disable govet inline analyzer \u0026amp; deprecated gomodguard (#...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/go-playground/validator/commit/7c334e52092ad1224f0a2eed6bc77408374048b7\"\u003e\u003ccode\u003e7c334e5\u003c/code\u003e\u003c/a\u003e fix: reject hostnames with trailing hyphen in RFC 952 validator (\u003ca href=\"https://redirect.github.com/go-playground/validator/issues/1569\"\u003e#1569\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/go-playground/validator/commit/6bcb7bcaf6a99f8d6cf16cc8d062ad8c47950901\"\u003e\u003ccode\u003e6bcb7bc\u003c/code\u003e\u003c/a\u003e feat: add origin validator for web origin URLs (\u003ca href=\"https://redirect.github.com/go-playground/validator/issues/1565\"\u003e#1565\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/go-playground/validator/commit/6fd2fa82069c9aede1882d703c0e7ee2660bc4d9\"\u003e\u003ccode\u003e6fd2fa8\u003c/code\u003e\u003c/a\u003e docs: fix typos (\u003ca href=\"https://redirect.github.com/go-playground/validator/issues/1568\"\u003e#1568\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/go-playground/validator/compare/v10.30.2...v10.30.3\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `modernc.org/sqlite` from 1.50.1 to 1.51.0\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://gitlab.com/cznic/sqlite/blob/master/CHANGELOG.md\"\u003emodernc.org/sqlite's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003eChangelog\u003c/h1\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e2026-05-28 v1.52.0:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdd \u003ccode\u003eBackup.Remaining\u003c/code\u003e and \u003ccode\u003eBackup.PageCount\u003c/code\u003e, thin wrappers around the existing \u003ccode\u003esqlite3_backup_remaining\u003c/code\u003e and \u003ccode\u003esqlite3_backup_pagecount\u003c/code\u003e C symbols. Together they expose the per-\u003ccode\u003eStep\u003c/code\u003e progress counters that the underlying backup object already maintains, enabling progress reporting during online backups without dropping to \u003ccode\u003emodernc.org/sqlite/lib\u003c/code\u003e directly.\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/122\"\u003e#122\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/122\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/122\u003c/a\u003e), thanks Ian Chechin!\u003c/li\u003e\n\u003cli\u003eDrop the redundant second copy in \u003ccode\u003e(*conn).columnText\u003c/code\u003e, the path that backs every \u003ccode\u003eRows.Scan\u003c/code\u003e into a Go \u003ccode\u003estring\u003c/code\u003e for a TEXT column. The value's bytes are still copied once out of SQLite-owned memory into a fresh Go buffer; that buffer is then reinterpreted as the result string with \u003ccode\u003eunsafe.String\u003c/code\u003e rather than copied a second time by the implicit \u003ccode\u003estring([]byte)\u003c/code\u003e conversion. This removes one allocation per TEXT value per row and roughly halves the bytes allocated on that path; on the new \u003ccode\u003eBenchmarkColumnTextScan\u003c/code\u003e cases it is ~13–20% faster for payloads of 256 B and larger, with no measurable change for very short strings. Purely internal: no API or behavioral change, and the returned string never aliases SQLite's buffer.\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/123\"\u003e#123\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/123\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/123\u003c/a\u003e), thanks Ian Chechin!\u003c/li\u003e\n\u003cli\u003eCache each result column's declared type once per result set in \u003ccode\u003enewRows\u003c/code\u003e instead of recomputing it on every row. The TEXT branch of \u003ccode\u003eRows.Next\u003c/code\u003e calls \u003ccode\u003eColumnTypeDatabaseTypeName\u003c/code\u003e for every TEXT column on every row (independent of any DSN flag), which previously did a \u003ccode\u003elibc.GoString\u003c/code\u003e + \u003ccode\u003estrings.ToUpper\u003c/code\u003e each time; that lookup is now a single index into a cached, pre-uppercased \u003ccode\u003e[]string\u003c/code\u003e, and \u003ccode\u003eColumnTypeScanType\u003c/code\u003e reads the same cache and drops its per-call \u003ccode\u003estrings.ToLower\u003c/code\u003e. The declared type is fixed for the lifetime of a prepared statement, so the C round-trip is paid once per column rather than once per column per row, removing exactly 1 alloc + 8 B per TEXT column per row from the \u003ccode\u003eNext\u003c/code\u003e hot path. The new \u003ccode\u003eBenchmarkTextToTimeScan\u003c/code\u003e cases show ~7% faster on a 1000-row DATETIME SELECT under \u003ccode\u003e_texttotime=1\u003c/code\u003e. Purely internal: \u003ccode\u003eColumnTypeDatabaseTypeName\u003c/code\u003e and \u003ccode\u003eColumnTypeScanType\u003c/code\u003e return identical values, no API or behavioral change.\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/124\"\u003e#124\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/124\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/124\u003c/a\u003e), thanks Ian Chechin!\u003c/li\u003e\n\u003cli\u003eCache, per result column, the \u003ccode\u003eparseTimeFormats\u003c/code\u003e index that first parsed a TEXT-stored DATE/DATETIME/TIMESTAMP value, and try that format first on later rows instead of re-walking the list from the top. \u003ccode\u003e(*conn).parseTime\u003c/code\u003e previously ran \u003ccode\u003etime.Parse\u003c/code\u003e down the format list on every such row; for the canonical SQLite TEXT datetime format every row paid two failed \u003ccode\u003etime.Parse\u003c/code\u003e attempts — each allocating a \u003ccode\u003e*time.ParseError\u003c/code\u003e — before the match. On a 1000-row DATETIME TEXT SELECT this cuts ~50% of allocs/op and ~57% of B/op and is ~37% faster. The fall-through chain is preserved exactly: the seven formats are mutually exclusive, so the cached hint can never select a different match than the in-order scan, and the parsed \u003ccode\u003edriver.Value\u003c/code\u003e is identical to before. Purely internal: no API or behavioral change.\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/125\"\u003e#125\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/125\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/125\u003c/a\u003e), thanks Ian Chechin!\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e2026-05-28 v1.51.0:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003ePool the \u003ccode\u003e[]driver.Value\u003c/code\u003e slice passed to scalar/aggregate UDF callbacks and to vtab \u003ccode\u003eFilter\u003c/code\u003e/\u003ccode\u003eInsert\u003c/code\u003e/\u003ccode\u003eUpdate\u003c/code\u003e callbacks, eliminating the dominant per-row allocation on UDF-heavy queries. Benchmarks on a 1000-row, 3-arg noop scalar UDF show ~40% fewer bytes/op and ~15% fewer allocs/op.\u003c/li\u003e\n\u003cli\u003eDocument the matching \u0026quot;arguments are not valid past return\u0026quot; contract on \u003ccode\u003evtab.Cursor.Filter\u003c/code\u003e and \u003ccode\u003evtab.Updater.Insert\u003c/code\u003e/\u003ccode\u003eUpdate\u003c/code\u003e, consistent with the existing rule for \u003ccode\u003eFunctionImpl.Scalar\u003c/code\u003e / \u003ccode\u003eAggregateFunction.Step\u003c/code\u003e / \u003ccode\u003eWindowInverse\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003eResolves [GitLab issue \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/226\"\u003e#226\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/issues/226\"\u003ehttps://gitlab.com/cznic/sqlite/-/issues/226\u003c/a\u003e). See [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/114\"\u003e#114\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/114\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/114\u003c/a\u003e), thanks Ian Chechin!\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003eFileControl.FileControlDataVersion\u003c/code\u003e, a wrapper around \u003ccode\u003eSQLITE_FCNTL_DATA_VERSION\u003c/code\u003e for observing pager-cache data-version changes, including those made on the same connection. Useful as a primitive for application-level cache invalidation.\u003c/li\u003e\n\u003cli\u003eExposed via the idiomatic \u003ccode\u003edatabase/sql\u003c/code\u003e escape hatch \u003ccode\u003e(*sql.Conn).Raw()\u003c/code\u003e, consistent with the existing \u003ccode\u003eFileControlPersistWAL\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/115\"\u003e#115\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/115\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/115\u003c/a\u003e), thanks Ian Chechin!\u003c/li\u003e\n\u003cli\u003eFix a regression where in-memory connections (\u003ccode\u003e:memory:\u003c/code\u003e, \u003ccode\u003efile::memory:\u003c/code\u003e, shared-cache memory URIs) were discarded by \u003ccode\u003edatabase/sql\u003c/code\u003e after a context-cancelled query, taking the entire in-memory store with them. The fix for \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/198\"\u003e#198\u003c/a\u003e had added an \u003ccode\u003esqlite3_is_interrupted\u003c/code\u003e check to the connection validator that mistakenly applied to in-memory connections too, re-introducing the bug originally fixed by !74. File-backed connections keep the existing behaviour and are still discarded after an interrupt.\u003c/li\u003e\n\u003cli\u003eResolves [GitLab issue \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/196\"\u003e#196\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/issues/196\"\u003ehttps://gitlab.com/cznic/sqlite/-/issues/196\u003c/a\u003e). See [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/116\"\u003e#116\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/116\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/116\u003c/a\u003e), thanks Ian Chechin!\u003c/li\u003e\n\u003cli\u003eAdd an opt-in \u003ccode\u003eFunctionImpl.VolatileArgs\u003c/code\u003e flag that hands TEXT and BLOB arguments to scalar and aggregate UDF callbacks as zero-copy views (\u003ccode\u003eunsafe.String\u003c/code\u003e/\u003ccode\u003eunsafe.Slice\u003c/code\u003e) over SQLite's own value buffers, eliminating the per-argument \u003ccode\u003elibc.GoString\u003c/code\u003e/\u003ccode\u003emake([]byte)\u003c/code\u003e copy that the \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/226\"\u003e#226\u003c/a\u003e slice-pooling left as the remaining per-row allocation. On the same 1000-row, 3-arg (INTEGER/TEXT/BLOB) noop scalar UDF this removes a further ~35% of allocs/op and ~11% of bytes/op on top of \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/226\"\u003e#226\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003eThe views are valid only for the duration of the callback and must not be retained past return or across rows; a callback that needs to keep a value must copy it. With \u003ccode\u003eVolatileArgs\u003c/code\u003e unset (the default) arguments keep the existing copied, caller-owned semantics, so the flag is fully backward compatible; it has no effect on integer, float, time, or NULL arguments.\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/120\"\u003e#120\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/120\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/120\u003c/a\u003e), thanks Ian Chechin!\u003c/li\u003e\n\u003cli\u003eExtend the opt-in \u003ccode\u003eVolatileArgs\u003c/code\u003e zero-copy TEXT/BLOB argument access from \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/120\"\u003e#120\u003c/a\u003e to the virtual-table \u003ccode\u003eCursor.Filter\u003c/code\u003e (\u003ccode\u003exFilter\u003c/code\u003e) and \u003ccode\u003eUpdater.Insert\u003c/code\u003e/\u003ccode\u003eUpdate\u003c/code\u003e (\u003ccode\u003exUpdate\u003c/code\u003e) callbacks. A \u003ccode\u003evtab.Module\u003c/code\u003e opts in by implementing the new optional \u003ccode\u003evtab.VolatileArgsOpter\u003c/code\u003e interface (\u003ccode\u003eVolatileArgs() bool\u003c/code\u003e); the flag is read once at module registration and shared by every table created from it. On a vtab call carrying one TEXT and one BLOB argument this removes 2 allocs/op (one \u003ccode\u003elibc.GoString\u003c/code\u003e, one \u003ccode\u003emake([]byte)\u003c/code\u003e) on each of the Filter and Update paths.\u003c/li\u003e\n\u003cli\u003eThe same safety contract as \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/120\"\u003e#120\u003c/a\u003e applies: the views are valid only for the duration of the callback and must not be retained past return or across rows; a callback that needs to keep a value must copy it. Modules that do not implement \u003ccode\u003eVolatileArgsOpter\u003c/code\u003e (the default for all existing modules) are byte-for-byte unchanged, and the flag has no effect on integer, float, time, or NULL arguments.\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/121\"\u003e#121\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/121\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/121\u003c/a\u003e), thanks Ian Chechin!\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e2026-05-10 v1.50.1:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eUpgrade to \u003ca href=\"https://sqlite.org/releaselog/3_53_1.html\"\u003eSQLite 3.53.1\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e2026-04-24 v1.50.0:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eUpgrade to sqlite-vec \u003ca href=\"https://github.com/asg017/sqlite-vec/releases/tag/v0.1.9\"\u003ev0.1.9\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003eIntroduce \u003ccode\u003eColumnInfo\u003c/code\u003e, enabling dynamic query builders and ORMs to retrieve underlying SQLite C-API metadata (\u003ccode\u003eOriginName\u003c/code\u003e, \u003ccode\u003eTableName\u003c/code\u003e, \u003ccode\u003eDatabaseName\u003c/code\u003e, and \u003ccode\u003eDeclType\u003c/code\u003e).\u003c/li\u003e\n\u003cli\u003eThis feature is exposed via the idiomatic \u003ccode\u003edatabase/sql\u003c/code\u003e escape hatch \u003ccode\u003e(*sql.Conn).Raw()\u003c/code\u003e, avoiding custom statement handles and keeping the standard library workflow intact.\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/113\"\u003e#113\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/113\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/113\u003c/a\u003e), thanks Josh Bleecher Snyder!\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e2026-04-17 v1.49.0: Upgrade to \u003ca href=\"https://sqlite.org/releaselog/3_53_0.html\"\u003eSQLite 3.53.0\u003c/a\u003e.\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdded \u003ccode\u003e-DSQLITE_ENABLE_DBPAGE_VTAB\u003c/code\u003e to the transpilation. See \u003ca href=\"https://www.sqlite.org/dbpage.html\"\u003e\u0026quot;The SQLITE_DBPAGE Virtual Table\u0026quot;\u003c/a\u003e for details.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e2026-04-06 v1.48.2:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eFix ABI mapping mismatch in the pre-update hook trampoline that caused silent truncation of large 64-bit RowIDs.\u003c/li\u003e\n\u003cli\u003eEnsure the Go trampoline signature correctly aligns with the public \u003ccode\u003esqlite3_preupdate_hook\u003c/code\u003e C API, preventing data corruption for high-entropy keys (e.g., Snowflake IDs).\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/98\"\u003e#98\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/98\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/98\u003c/a\u003e), thanks Josh Bleecher Snyder!\u003c/li\u003e\n\u003cli\u003eFix the memory allocator used in \u003ccode\u003e(*conn).Deserialize\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003eReplace \u003ccode\u003etls.Alloc\u003c/code\u003e with \u003ccode\u003esqlite3_malloc64\u003c/code\u003e to prevent internal allocator corruption. This ensures the buffer is safely owned by SQLite, which may resize or free it due to the \u003ccode\u003eSQLITE_DESERIALIZE_RESIZEABLE\u003c/code\u003e and \u003ccode\u003eSQLITE_DESERIALIZE_FREEONCLOSE\u003c/code\u003e flags.\u003c/li\u003e\n\u003cli\u003ePrevent a memory leak by properly freeing the allocated buffer if fetching the main database name fails before handing ownership to SQLite.\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/100\"\u003e#100\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/100\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/100\u003c/a\u003e), thanks Josh Bleecher Snyder!\u003c/li\u003e\n\u003cli\u003eFix \u003ccode\u003e(*conn).Deserialize\u003c/code\u003e to explicitly reject \u003ccode\u003enil\u003c/code\u003e or empty byte slices.\u003c/li\u003e\n\u003cli\u003ePrevent silent database disconnection and connection pool corruption caused by SQLite's default behavior when \u003ccode\u003esqlite3_deserialize\u003c/code\u003e receives a 0-length buffer.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/a5f439be99fee4478456048b117d3ca84518d5a7\"\u003e\u003ccode\u003ea5f439b\u003c/code\u003e\u003c/a\u003e CHANGELOG.md: fix release tag\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/41e77be50473b810a66c9beaf6d05d042b2a5556\"\u003e\u003ccode\u003e41e77be\u003c/code\u003e\u003c/a\u003e CHANGELOG.md: document \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/121\"\u003e#121\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/827df98d7342db30f09454eaedfe87ef3e7277db\"\u003e\u003ccode\u003e827df98\u003c/code\u003e\u003c/a\u003e gofmt -l -s -w vtab/*.go\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/0d384cb7dcab26840d003cee10f3ae7ae08a883c\"\u003e\u003ccode\u003e0d384cb\u003c/code\u003e\u003c/a\u003e Merge branch 'feat/vtab-volatile-args-opt-in' into 'master'\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/06e06d50e3bec5f79dd4ad60847a6d6405b76721\"\u003e\u003ccode\u003e06e06d5\u003c/code\u003e\u003c/a\u003e extend VolatileArgs opt-in to vtab Filter and Updater Insert/Update\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/2486abd8b22026a1047cdf67a1b090f3bae4210f\"\u003e\u003ccode\u003e2486abd\u003c/code\u003e\u003c/a\u003e HACKING.md, CLAUDE.md: this repo is not auto-tagged, tagging is manual\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/d808a8f1a5d9651553bea0877197fe1c73dac189\"\u003e\u003ccode\u003ed808a8f\u003c/code\u003e\u003c/a\u003e CHANGELOG.md: document \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/120\"\u003e#120\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/fac1cab20834685f75c7201d756608fd71b71824\"\u003e\u003ccode\u003efac1cab\u003c/code\u003e\u003c/a\u003e Merge branch 'feat/volatile-args-opt-in' into 'master'\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/569614c5d4b0187b9b8c632292d3556ce53e1274\"\u003e\u003ccode\u003e569614c\u003c/code\u003e\u003c/a\u003e address review: empty-BLOB shape parity + re-entrancy note\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/905960c9f78c54b85f29718cc34b69088edb1db2\"\u003e\u003ccode\u003e905960c\u003c/code\u003e\u003c/a\u003e add FunctionImpl.VolatileArgs opt-in for zero-copy TEXT/BLOB args\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://gitlab.com/cznic/sqlite/compare/v1.50.1...v1.51.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\n\nDependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.\n\n[//]: # (dependabot-automerge-start)\n[//]: # (dependabot-automerge-end)\n\n---\n\n\u003cdetails\u003e\n\u003csummary\u003eDependabot commands and options\u003c/summary\u003e\n\u003cbr /\u003e\n\nYou can trigger Dependabot actions by commenting on this PR:\n- `@dependabot rebase` will rebase this PR\n- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it\n- `@dependabot show \u003cdependency name\u003e ignore conditions` will show all of the ignore conditions of the specified dependency\n- `@dependabot ignore \u003cdependency name\u003e major version` will close this group update PR and stop Dependabot creating any more for the specific dependency's major version (unless you unignore this specific dependency's major version or upgrade to it yourself)\n- `@dependabot ignore \u003cdependency name\u003e minor version` will close this group update PR and stop Dependabot creating any more for the specific dependency's minor version (unless you unignore this specific dependency's minor version or upgrade to it yourself)\n- `@dependabot ignore \u003cdependency name\u003e` will close this group update PR and stop Dependabot creating any more for the specific dependency (unless you unignore this specific dependency or upgrade to it yourself)\n- `@dependabot unignore \u003cdependency name\u003e` will remove all of the ignore conditions of the specified dependency\n- `@dependabot unignore \u003cdependency name\u003e \u003cignore condition\u003e` will remove the ignore condition of the specified dependency and ignore conditions\n\n\n\u003c/details\u003e","html_url":"https://github.com/MustardSeedNetworks/niac-go/pull/793","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/MustardSeedNetworks%2Fniac-go/issues/793","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/793/packages"}},{"old_version":"1.44.3","new_version":"1.51.0","update_type":"minor","path":null,"pr_created_at":"2026-06-03T08:42:29.000Z","version_change":"1.44.3 → 1.51.0","issue":{"uuid":"4578251656","node_id":"PR_kwDOOcQ8Ic7iIsbY","number":92,"state":"closed","title":"chore(deps): bump modernc.org/sqlite from 1.44.3 to 1.51.0","user":"dependabot[bot]","labels":["dependencies","go"],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":"2026-06-08T21:05:45.000Z","author_association":null,"state_reason":null,"created_at":"2026-06-03T08:42:29.000Z","updated_at":"2026-06-08T21:05:47.000Z","time_to_close":476596,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"chore(deps)","packages":[{"name":"modernc.org/sqlite","old_version":"1.44.3","new_version":"1.51.0","repository_url":null}],"path":null,"ecosystem":"go"},"body":"Bumps [modernc.org/sqlite](https://gitlab.com/cznic/sqlite) from 1.44.3 to 1.51.0.\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://gitlab.com/cznic/sqlite/blob/master/CHANGELOG.md\"\u003emodernc.org/sqlite's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003eChangelog\u003c/h1\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e2026-05-28 v1.52.0:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdd \u003ccode\u003eBackup.Remaining\u003c/code\u003e and \u003ccode\u003eBackup.PageCount\u003c/code\u003e, thin wrappers around the existing \u003ccode\u003esqlite3_backup_remaining\u003c/code\u003e and \u003ccode\u003esqlite3_backup_pagecount\u003c/code\u003e C symbols. Together they expose the per-\u003ccode\u003eStep\u003c/code\u003e progress counters that the underlying backup object already maintains, enabling progress reporting during online backups without dropping to \u003ccode\u003emodernc.org/sqlite/lib\u003c/code\u003e directly.\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/122\"\u003e#122\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/122\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/122\u003c/a\u003e), thanks Ian Chechin!\u003c/li\u003e\n\u003cli\u003eDrop the redundant second copy in \u003ccode\u003e(*conn).columnText\u003c/code\u003e, the path that backs every \u003ccode\u003eRows.Scan\u003c/code\u003e into a Go \u003ccode\u003estring\u003c/code\u003e for a TEXT column. The value's bytes are still copied once out of SQLite-owned memory into a fresh Go buffer; that buffer is then reinterpreted as the result string with \u003ccode\u003eunsafe.String\u003c/code\u003e rather than copied a second time by the implicit \u003ccode\u003estring([]byte)\u003c/code\u003e conversion. This removes one allocation per TEXT value per row and roughly halves the bytes allocated on that path; on the new \u003ccode\u003eBenchmarkColumnTextScan\u003c/code\u003e cases it is ~13–20% faster for payloads of 256 B and larger, with no measurable change for very short strings. Purely internal: no API or behavioral change, and the returned string never aliases SQLite's buffer.\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/123\"\u003e#123\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/123\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/123\u003c/a\u003e), thanks Ian Chechin!\u003c/li\u003e\n\u003cli\u003eCache each result column's declared type once per result set in \u003ccode\u003enewRows\u003c/code\u003e instead of recomputing it on every row. The TEXT branch of \u003ccode\u003eRows.Next\u003c/code\u003e calls \u003ccode\u003eColumnTypeDatabaseTypeName\u003c/code\u003e for every TEXT column on every row (independent of any DSN flag), which previously did a \u003ccode\u003elibc.GoString\u003c/code\u003e + \u003ccode\u003estrings.ToUpper\u003c/code\u003e each time; that lookup is now a single index into a cached, pre-uppercased \u003ccode\u003e[]string\u003c/code\u003e, and \u003ccode\u003eColumnTypeScanType\u003c/code\u003e reads the same cache and drops its per-call \u003ccode\u003estrings.ToLower\u003c/code\u003e. The declared type is fixed for the lifetime of a prepared statement, so the C round-trip is paid once per column rather than once per column per row, removing exactly 1 alloc + 8 B per TEXT column per row from the \u003ccode\u003eNext\u003c/code\u003e hot path. The new \u003ccode\u003eBenchmarkTextToTimeScan\u003c/code\u003e cases show ~7% faster on a 1000-row DATETIME SELECT under \u003ccode\u003e_texttotime=1\u003c/code\u003e. Purely internal: \u003ccode\u003eColumnTypeDatabaseTypeName\u003c/code\u003e and \u003ccode\u003eColumnTypeScanType\u003c/code\u003e return identical values, no API or behavioral change.\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/124\"\u003e#124\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/124\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/124\u003c/a\u003e), thanks Ian Chechin!\u003c/li\u003e\n\u003cli\u003eCache, per result column, the \u003ccode\u003eparseTimeFormats\u003c/code\u003e index that first parsed a TEXT-stored DATE/DATETIME/TIMESTAMP value, and try that format first on later rows instead of re-walking the list from the top. \u003ccode\u003e(*conn).parseTime\u003c/code\u003e previously ran \u003ccode\u003etime.Parse\u003c/code\u003e down the format list on every such row; for the canonical SQLite TEXT datetime format every row paid two failed \u003ccode\u003etime.Parse\u003c/code\u003e attempts — each allocating a \u003ccode\u003e*time.ParseError\u003c/code\u003e — before the match. On a 1000-row DATETIME TEXT SELECT this cuts ~50% of allocs/op and ~57% of B/op and is ~37% faster. The fall-through chain is preserved exactly: the seven formats are mutually exclusive, so the cached hint can never select a different match than the in-order scan, and the parsed \u003ccode\u003edriver.Value\u003c/code\u003e is identical to before. Purely internal: no API or behavioral change.\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/125\"\u003e#125\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/125\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/125\u003c/a\u003e), thanks Ian Chechin!\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e2026-05-28 v1.51.0:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003ePool the \u003ccode\u003e[]driver.Value\u003c/code\u003e slice passed to scalar/aggregate UDF callbacks and to vtab \u003ccode\u003eFilter\u003c/code\u003e/\u003ccode\u003eInsert\u003c/code\u003e/\u003ccode\u003eUpdate\u003c/code\u003e callbacks, eliminating the dominant per-row allocation on UDF-heavy queries. Benchmarks on a 1000-row, 3-arg noop scalar UDF show ~40% fewer bytes/op and ~15% fewer allocs/op.\u003c/li\u003e\n\u003cli\u003eDocument the matching \u0026quot;arguments are not valid past return\u0026quot; contract on \u003ccode\u003evtab.Cursor.Filter\u003c/code\u003e and \u003ccode\u003evtab.Updater.Insert\u003c/code\u003e/\u003ccode\u003eUpdate\u003c/code\u003e, consistent with the existing rule for \u003ccode\u003eFunctionImpl.Scalar\u003c/code\u003e / \u003ccode\u003eAggregateFunction.Step\u003c/code\u003e / \u003ccode\u003eWindowInverse\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003eResolves [GitLab issue \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/226\"\u003e#226\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/issues/226\"\u003ehttps://gitlab.com/cznic/sqlite/-/issues/226\u003c/a\u003e). See [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/114\"\u003e#114\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/114\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/114\u003c/a\u003e), thanks Ian Chechin!\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003eFileControl.FileControlDataVersion\u003c/code\u003e, a wrapper around \u003ccode\u003eSQLITE_FCNTL_DATA_VERSION\u003c/code\u003e for observing pager-cache data-version changes, including those made on the same connection. Useful as a primitive for application-level cache invalidation.\u003c/li\u003e\n\u003cli\u003eExposed via the idiomatic \u003ccode\u003edatabase/sql\u003c/code\u003e escape hatch \u003ccode\u003e(*sql.Conn).Raw()\u003c/code\u003e, consistent with the existing \u003ccode\u003eFileControlPersistWAL\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/115\"\u003e#115\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/115\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/115\u003c/a\u003e), thanks Ian Chechin!\u003c/li\u003e\n\u003cli\u003eFix a regression where in-memory connections (\u003ccode\u003e:memory:\u003c/code\u003e, \u003ccode\u003efile::memory:\u003c/code\u003e, shared-cache memory URIs) were discarded by \u003ccode\u003edatabase/sql\u003c/code\u003e after a context-cancelled query, taking the entire in-memory store with them. The fix for \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/198\"\u003e#198\u003c/a\u003e had added an \u003ccode\u003esqlite3_is_interrupted\u003c/code\u003e check to the connection validator that mistakenly applied to in-memory connections too, re-introducing the bug originally fixed by !74. File-backed connections keep the existing behaviour and are still discarded after an interrupt.\u003c/li\u003e\n\u003cli\u003eResolves [GitLab issue \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/196\"\u003e#196\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/issues/196\"\u003ehttps://gitlab.com/cznic/sqlite/-/issues/196\u003c/a\u003e). See [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/116\"\u003e#116\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/116\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/116\u003c/a\u003e), thanks Ian Chechin!\u003c/li\u003e\n\u003cli\u003eAdd an opt-in \u003ccode\u003eFunctionImpl.VolatileArgs\u003c/code\u003e flag that hands TEXT and BLOB arguments to scalar and aggregate UDF callbacks as zero-copy views (\u003ccode\u003eunsafe.String\u003c/code\u003e/\u003ccode\u003eunsafe.Slice\u003c/code\u003e) over SQLite's own value buffers, eliminating the per-argument \u003ccode\u003elibc.GoString\u003c/code\u003e/\u003ccode\u003emake([]byte)\u003c/code\u003e copy that the \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/226\"\u003e#226\u003c/a\u003e slice-pooling left as the remaining per-row allocation. On the same 1000-row, 3-arg (INTEGER/TEXT/BLOB) noop scalar UDF this removes a further ~35% of allocs/op and ~11% of bytes/op on top of \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/226\"\u003e#226\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003eThe views are valid only for the duration of the callback and must not be retained past return or across rows; a callback that needs to keep a value must copy it. With \u003ccode\u003eVolatileArgs\u003c/code\u003e unset (the default) arguments keep the existing copied, caller-owned semantics, so the flag is fully backward compatible; it has no effect on integer, float, time, or NULL arguments.\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/120\"\u003e#120\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/120\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/120\u003c/a\u003e), thanks Ian Chechin!\u003c/li\u003e\n\u003cli\u003eExtend the opt-in \u003ccode\u003eVolatileArgs\u003c/code\u003e zero-copy TEXT/BLOB argument access from \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/120\"\u003e#120\u003c/a\u003e to the virtual-table \u003ccode\u003eCursor.Filter\u003c/code\u003e (\u003ccode\u003exFilter\u003c/code\u003e) and \u003ccode\u003eUpdater.Insert\u003c/code\u003e/\u003ccode\u003eUpdate\u003c/code\u003e (\u003ccode\u003exUpdate\u003c/code\u003e) callbacks. A \u003ccode\u003evtab.Module\u003c/code\u003e opts in by implementing the new optional \u003ccode\u003evtab.VolatileArgsOpter\u003c/code\u003e interface (\u003ccode\u003eVolatileArgs() bool\u003c/code\u003e); the flag is read once at module registration and shared by every table created from it. On a vtab call carrying one TEXT and one BLOB argument this removes 2 allocs/op (one \u003ccode\u003elibc.GoString\u003c/code\u003e, one \u003ccode\u003emake([]byte)\u003c/code\u003e) on each of the Filter and Update paths.\u003c/li\u003e\n\u003cli\u003eThe same safety contract as \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/120\"\u003e#120\u003c/a\u003e applies: the views are valid only for the duration of the callback and must not be retained past return or across rows; a callback that needs to keep a value must copy it. Modules that do not implement \u003ccode\u003eVolatileArgsOpter\u003c/code\u003e (the default for all existing modules) are byte-for-byte unchanged, and the flag has no effect on integer, float, time, or NULL arguments.\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/121\"\u003e#121\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/121\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/121\u003c/a\u003e), thanks Ian Chechin!\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e2026-05-10 v1.50.1:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eUpgrade to \u003ca href=\"https://sqlite.org/releaselog/3_53_1.html\"\u003eSQLite 3.53.1\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e2026-04-24 v1.50.0:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eUpgrade to sqlite-vec \u003ca href=\"https://github.com/asg017/sqlite-vec/releases/tag/v0.1.9\"\u003ev0.1.9\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003eIntroduce \u003ccode\u003eColumnInfo\u003c/code\u003e, enabling dynamic query builders and ORMs to retrieve underlying SQLite C-API metadata (\u003ccode\u003eOriginName\u003c/code\u003e, \u003ccode\u003eTableName\u003c/code\u003e, \u003ccode\u003eDatabaseName\u003c/code\u003e, and \u003ccode\u003eDeclType\u003c/code\u003e).\u003c/li\u003e\n\u003cli\u003eThis feature is exposed via the idiomatic \u003ccode\u003edatabase/sql\u003c/code\u003e escape hatch \u003ccode\u003e(*sql.Conn).Raw()\u003c/code\u003e, avoiding custom statement handles and keeping the standard library workflow intact.\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/113\"\u003e#113\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/113\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/113\u003c/a\u003e), thanks Josh Bleecher Snyder!\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e2026-04-17 v1.49.0: Upgrade to \u003ca href=\"https://sqlite.org/releaselog/3_53_0.html\"\u003eSQLite 3.53.0\u003c/a\u003e.\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdded \u003ccode\u003e-DSQLITE_ENABLE_DBPAGE_VTAB\u003c/code\u003e to the transpilation. See \u003ca href=\"https://www.sqlite.org/dbpage.html\"\u003e\u0026quot;The SQLITE_DBPAGE Virtual Table\u0026quot;\u003c/a\u003e for details.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e2026-04-06 v1.48.2:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eFix ABI mapping mismatch in the pre-update hook trampoline that caused silent truncation of large 64-bit RowIDs.\u003c/li\u003e\n\u003cli\u003eEnsure the Go trampoline signature correctly aligns with the public \u003ccode\u003esqlite3_preupdate_hook\u003c/code\u003e C API, preventing data corruption for high-entropy keys (e.g., Snowflake IDs).\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/98\"\u003e#98\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/98\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/98\u003c/a\u003e), thanks Josh Bleecher Snyder!\u003c/li\u003e\n\u003cli\u003eFix the memory allocator used in \u003ccode\u003e(*conn).Deserialize\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003eReplace \u003ccode\u003etls.Alloc\u003c/code\u003e with \u003ccode\u003esqlite3_malloc64\u003c/code\u003e to prevent internal allocator corruption. This ensures the buffer is safely owned by SQLite, which may resize or free it due to the \u003ccode\u003eSQLITE_DESERIALIZE_RESIZEABLE\u003c/code\u003e and \u003ccode\u003eSQLITE_DESERIALIZE_FREEONCLOSE\u003c/code\u003e flags.\u003c/li\u003e\n\u003cli\u003ePrevent a memory leak by properly freeing the allocated buffer if fetching the main database name fails before handing ownership to SQLite.\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/100\"\u003e#100\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/100\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/100\u003c/a\u003e), thanks Josh Bleecher Snyder!\u003c/li\u003e\n\u003cli\u003eFix \u003ccode\u003e(*conn).Deserialize\u003c/code\u003e to explicitly reject \u003ccode\u003enil\u003c/code\u003e or empty byte slices.\u003c/li\u003e\n\u003cli\u003ePrevent silent database disconnection and connection pool corruption caused by SQLite's default behavior when \u003ccode\u003esqlite3_deserialize\u003c/code\u003e receives a 0-length buffer.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/a5f439be99fee4478456048b117d3ca84518d5a7\"\u003e\u003ccode\u003ea5f439b\u003c/code\u003e\u003c/a\u003e CHANGELOG.md: fix release tag\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/41e77be50473b810a66c9beaf6d05d042b2a5556\"\u003e\u003ccode\u003e41e77be\u003c/code\u003e\u003c/a\u003e CHANGELOG.md: document \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/121\"\u003e#121\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/827df98d7342db30f09454eaedfe87ef3e7277db\"\u003e\u003ccode\u003e827df98\u003c/code\u003e\u003c/a\u003e gofmt -l -s -w vtab/*.go\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/0d384cb7dcab26840d003cee10f3ae7ae08a883c\"\u003e\u003ccode\u003e0d384cb\u003c/code\u003e\u003c/a\u003e Merge branch 'feat/vtab-volatile-args-opt-in' into 'master'\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/06e06d50e3bec5f79dd4ad60847a6d6405b76721\"\u003e\u003ccode\u003e06e06d5\u003c/code\u003e\u003c/a\u003e extend VolatileArgs opt-in to vtab Filter and Updater Insert/Update\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/2486abd8b22026a1047cdf67a1b090f3bae4210f\"\u003e\u003ccode\u003e2486abd\u003c/code\u003e\u003c/a\u003e HACKING.md, CLAUDE.md: this repo is not auto-tagged, tagging is manual\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/d808a8f1a5d9651553bea0877197fe1c73dac189\"\u003e\u003ccode\u003ed808a8f\u003c/code\u003e\u003c/a\u003e CHANGELOG.md: document \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/120\"\u003e#120\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/fac1cab20834685f75c7201d756608fd71b71824\"\u003e\u003ccode\u003efac1cab\u003c/code\u003e\u003c/a\u003e Merge branch 'feat/volatile-args-opt-in' into 'master'\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/569614c5d4b0187b9b8c632292d3556ce53e1274\"\u003e\u003ccode\u003e569614c\u003c/code\u003e\u003c/a\u003e address review: empty-BLOB shape parity + re-entrancy note\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/905960c9f78c54b85f29718cc34b69088edb1db2\"\u003e\u003ccode\u003e905960c\u003c/code\u003e\u003c/a\u003e add FunctionImpl.VolatileArgs opt-in for zero-copy TEXT/BLOB args\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://gitlab.com/cznic/sqlite/compare/v1.44.3...v1.51.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\n\n[![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=modernc.org/sqlite\u0026package-manager=go_modules\u0026previous-version=1.44.3\u0026new-version=1.51.0)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)\n\nDependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.\n\n[//]: # (dependabot-automerge-start)\n[//]: # (dependabot-automerge-end)\n\n---\n\n\u003cdetails\u003e\n\u003csummary\u003eDependabot commands and options\u003c/summary\u003e\n\u003cbr /\u003e\n\nYou can trigger Dependabot actions by commenting on this PR:\n- `@dependabot rebase` will rebase this PR\n- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it\n- `@dependabot show \u003cdependency name\u003e ignore conditions` will show all of the ignore conditions of the specified dependency\n- `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)\n- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)\n- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)\n\n\n\u003c/details\u003e","html_url":"https://github.com/bit8bytes/goalkeepr/pull/92","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/bit8bytes%2Fgoalkeepr/issues/92","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/92/packages"}},{"old_version":"1.47.0","new_version":"1.51.0","update_type":"minor","path":null,"pr_created_at":"2026-06-02T00:19:13.000Z","version_change":"1.47.0 → 1.51.0","issue":{"uuid":"4567314063","node_id":"PR_kwDOOTv_y87hk6Op","number":831,"state":"open","title":"build(deps): bump modernc.org/sqlite from 1.47.0 to 1.51.0","user":"dependabot[bot]","labels":["dependencies","go"],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":null,"author_association":null,"state_reason":null,"created_at":"2026-06-02T00:19:13.000Z","updated_at":"2026-06-02T00:29:47.000Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"build(deps)","packages":[{"name":"modernc.org/sqlite","old_version":"1.47.0","new_version":"1.51.0","repository_url":null}],"path":null,"ecosystem":"go"},"body":"Bumps [modernc.org/sqlite](https://gitlab.com/cznic/sqlite) from 1.47.0 to 1.51.0.\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://gitlab.com/cznic/sqlite/blob/master/CHANGELOG.md\"\u003emodernc.org/sqlite's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003eChangelog\u003c/h1\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e2026-05-28 v1.52.0:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdd \u003ccode\u003eBackup.Remaining\u003c/code\u003e and \u003ccode\u003eBackup.PageCount\u003c/code\u003e, thin wrappers around the existing \u003ccode\u003esqlite3_backup_remaining\u003c/code\u003e and \u003ccode\u003esqlite3_backup_pagecount\u003c/code\u003e C symbols. Together they expose the per-\u003ccode\u003eStep\u003c/code\u003e progress counters that the underlying backup object already maintains, enabling progress reporting during online backups without dropping to \u003ccode\u003emodernc.org/sqlite/lib\u003c/code\u003e directly.\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/122\"\u003e#122\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/122\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/122\u003c/a\u003e), thanks Ian Chechin!\u003c/li\u003e\n\u003cli\u003eDrop the redundant second copy in \u003ccode\u003e(*conn).columnText\u003c/code\u003e, the path that backs every \u003ccode\u003eRows.Scan\u003c/code\u003e into a Go \u003ccode\u003estring\u003c/code\u003e for a TEXT column. The value's bytes are still copied once out of SQLite-owned memory into a fresh Go buffer; that buffer is then reinterpreted as the result string with \u003ccode\u003eunsafe.String\u003c/code\u003e rather than copied a second time by the implicit \u003ccode\u003estring([]byte)\u003c/code\u003e conversion. This removes one allocation per TEXT value per row and roughly halves the bytes allocated on that path; on the new \u003ccode\u003eBenchmarkColumnTextScan\u003c/code\u003e cases it is ~13–20% faster for payloads of 256 B and larger, with no measurable change for very short strings. Purely internal: no API or behavioral change, and the returned string never aliases SQLite's buffer.\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/123\"\u003e#123\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/123\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/123\u003c/a\u003e), thanks Ian Chechin!\u003c/li\u003e\n\u003cli\u003eCache each result column's declared type once per result set in \u003ccode\u003enewRows\u003c/code\u003e instead of recomputing it on every row. The TEXT branch of \u003ccode\u003eRows.Next\u003c/code\u003e calls \u003ccode\u003eColumnTypeDatabaseTypeName\u003c/code\u003e for every TEXT column on every row (independent of any DSN flag), which previously did a \u003ccode\u003elibc.GoString\u003c/code\u003e + \u003ccode\u003estrings.ToUpper\u003c/code\u003e each time; that lookup is now a single index into a cached, pre-uppercased \u003ccode\u003e[]string\u003c/code\u003e, and \u003ccode\u003eColumnTypeScanType\u003c/code\u003e reads the same cache and drops its per-call \u003ccode\u003estrings.ToLower\u003c/code\u003e. The declared type is fixed for the lifetime of a prepared statement, so the C round-trip is paid once per column rather than once per column per row, removing exactly 1 alloc + 8 B per TEXT column per row from the \u003ccode\u003eNext\u003c/code\u003e hot path. The new \u003ccode\u003eBenchmarkTextToTimeScan\u003c/code\u003e cases show ~7% faster on a 1000-row DATETIME SELECT under \u003ccode\u003e_texttotime=1\u003c/code\u003e. Purely internal: \u003ccode\u003eColumnTypeDatabaseTypeName\u003c/code\u003e and \u003ccode\u003eColumnTypeScanType\u003c/code\u003e return identical values, no API or behavioral change.\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/124\"\u003e#124\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/124\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/124\u003c/a\u003e), thanks Ian Chechin!\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e2026-05-28 v1.51.0:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003ePool the \u003ccode\u003e[]driver.Value\u003c/code\u003e slice passed to scalar/aggregate UDF callbacks and to vtab \u003ccode\u003eFilter\u003c/code\u003e/\u003ccode\u003eInsert\u003c/code\u003e/\u003ccode\u003eUpdate\u003c/code\u003e callbacks, eliminating the dominant per-row allocation on UDF-heavy queries. Benchmarks on a 1000-row, 3-arg noop scalar UDF show ~40% fewer bytes/op and ~15% fewer allocs/op.\u003c/li\u003e\n\u003cli\u003eDocument the matching \u0026quot;arguments are not valid past return\u0026quot; contract on \u003ccode\u003evtab.Cursor.Filter\u003c/code\u003e and \u003ccode\u003evtab.Updater.Insert\u003c/code\u003e/\u003ccode\u003eUpdate\u003c/code\u003e, consistent with the existing rule for \u003ccode\u003eFunctionImpl.Scalar\u003c/code\u003e / \u003ccode\u003eAggregateFunction.Step\u003c/code\u003e / \u003ccode\u003eWindowInverse\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003eResolves [GitLab issue \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/226\"\u003e#226\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/issues/226\"\u003ehttps://gitlab.com/cznic/sqlite/-/issues/226\u003c/a\u003e). See [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/114\"\u003e#114\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/114\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/114\u003c/a\u003e), thanks Ian Chechin!\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003eFileControl.FileControlDataVersion\u003c/code\u003e, a wrapper around \u003ccode\u003eSQLITE_FCNTL_DATA_VERSION\u003c/code\u003e for observing pager-cache data-version changes, including those made on the same connection. Useful as a primitive for application-level cache invalidation.\u003c/li\u003e\n\u003cli\u003eExposed via the idiomatic \u003ccode\u003edatabase/sql\u003c/code\u003e escape hatch \u003ccode\u003e(*sql.Conn).Raw()\u003c/code\u003e, consistent with the existing \u003ccode\u003eFileControlPersistWAL\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/115\"\u003e#115\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/115\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/115\u003c/a\u003e), thanks Ian Chechin!\u003c/li\u003e\n\u003cli\u003eFix a regression where in-memory connections (\u003ccode\u003e:memory:\u003c/code\u003e, \u003ccode\u003efile::memory:\u003c/code\u003e, shared-cache memory URIs) were discarded by \u003ccode\u003edatabase/sql\u003c/code\u003e after a context-cancelled query, taking the entire in-memory store with them. The fix for \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/198\"\u003e#198\u003c/a\u003e had added an \u003ccode\u003esqlite3_is_interrupted\u003c/code\u003e check to the connection validator that mistakenly applied to in-memory connections too, re-introducing the bug originally fixed by !74. File-backed connections keep the existing behaviour and are still discarded after an interrupt.\u003c/li\u003e\n\u003cli\u003eResolves [GitLab issue \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/196\"\u003e#196\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/issues/196\"\u003ehttps://gitlab.com/cznic/sqlite/-/issues/196\u003c/a\u003e). See [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/116\"\u003e#116\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/116\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/116\u003c/a\u003e), thanks Ian Chechin!\u003c/li\u003e\n\u003cli\u003eAdd an opt-in \u003ccode\u003eFunctionImpl.VolatileArgs\u003c/code\u003e flag that hands TEXT and BLOB arguments to scalar and aggregate UDF callbacks as zero-copy views (\u003ccode\u003eunsafe.String\u003c/code\u003e/\u003ccode\u003eunsafe.Slice\u003c/code\u003e) over SQLite's own value buffers, eliminating the per-argument \u003ccode\u003elibc.GoString\u003c/code\u003e/\u003ccode\u003emake([]byte)\u003c/code\u003e copy that the \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/226\"\u003e#226\u003c/a\u003e slice-pooling left as the remaining per-row allocation. On the same 1000-row, 3-arg (INTEGER/TEXT/BLOB) noop scalar UDF this removes a further ~35% of allocs/op and ~11% of bytes/op on top of \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/226\"\u003e#226\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003eThe views are valid only for the duration of the callback and must not be retained past return or across rows; a callback that needs to keep a value must copy it. With \u003ccode\u003eVolatileArgs\u003c/code\u003e unset (the default) arguments keep the existing copied, caller-owned semantics, so the flag is fully backward compatible; it has no effect on integer, float, time, or NULL arguments.\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/120\"\u003e#120\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/120\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/120\u003c/a\u003e), thanks Ian Chechin!\u003c/li\u003e\n\u003cli\u003eExtend the opt-in \u003ccode\u003eVolatileArgs\u003c/code\u003e zero-copy TEXT/BLOB argument access from \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/120\"\u003e#120\u003c/a\u003e to the virtual-table \u003ccode\u003eCursor.Filter\u003c/code\u003e (\u003ccode\u003exFilter\u003c/code\u003e) and \u003ccode\u003eUpdater.Insert\u003c/code\u003e/\u003ccode\u003eUpdate\u003c/code\u003e (\u003ccode\u003exUpdate\u003c/code\u003e) callbacks. A \u003ccode\u003evtab.Module\u003c/code\u003e opts in by implementing the new optional \u003ccode\u003evtab.VolatileArgsOpter\u003c/code\u003e interface (\u003ccode\u003eVolatileArgs() bool\u003c/code\u003e); the flag is read once at module registration and shared by every table created from it. On a vtab call carrying one TEXT and one BLOB argument this removes 2 allocs/op (one \u003ccode\u003elibc.GoString\u003c/code\u003e, one \u003ccode\u003emake([]byte)\u003c/code\u003e) on each of the Filter and Update paths.\u003c/li\u003e\n\u003cli\u003eThe same safety contract as \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/120\"\u003e#120\u003c/a\u003e applies: the views are valid only for the duration of the callback and must not be retained past return or across rows; a callback that needs to keep a value must copy it. Modules that do not implement \u003ccode\u003eVolatileArgsOpter\u003c/code\u003e (the default for all existing modules) are byte-for-byte unchanged, and the flag has no effect on integer, float, time, or NULL arguments.\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/121\"\u003e#121\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/121\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/121\u003c/a\u003e), thanks Ian Chechin!\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e2026-05-10 v1.50.1:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eUpgrade to \u003ca href=\"https://sqlite.org/releaselog/3_53_1.html\"\u003eSQLite 3.53.1\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e2026-04-24 v1.50.0:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eUpgrade to sqlite-vec \u003ca href=\"https://github.com/asg017/sqlite-vec/releases/tag/v0.1.9\"\u003ev0.1.9\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003eIntroduce \u003ccode\u003eColumnInfo\u003c/code\u003e, enabling dynamic query builders and ORMs to retrieve underlying SQLite C-API metadata (\u003ccode\u003eOriginName\u003c/code\u003e, \u003ccode\u003eTableName\u003c/code\u003e, \u003ccode\u003eDatabaseName\u003c/code\u003e, and \u003ccode\u003eDeclType\u003c/code\u003e).\u003c/li\u003e\n\u003cli\u003eThis feature is exposed via the idiomatic \u003ccode\u003edatabase/sql\u003c/code\u003e escape hatch \u003ccode\u003e(*sql.Conn).Raw()\u003c/code\u003e, avoiding custom statement handles and keeping the standard library workflow intact.\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/113\"\u003e#113\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/113\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/113\u003c/a\u003e), thanks Josh Bleecher Snyder!\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e2026-04-17 v1.49.0: Upgrade to \u003ca href=\"https://sqlite.org/releaselog/3_53_0.html\"\u003eSQLite 3.53.0\u003c/a\u003e.\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdded \u003ccode\u003e-DSQLITE_ENABLE_DBPAGE_VTAB\u003c/code\u003e to the transpilation. See \u003ca href=\"https://www.sqlite.org/dbpage.html\"\u003e\u0026quot;The SQLITE_DBPAGE Virtual Table\u0026quot;\u003c/a\u003e for details.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e2026-04-06 v1.48.2:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eFix ABI mapping mismatch in the pre-update hook trampoline that caused silent truncation of large 64-bit RowIDs.\u003c/li\u003e\n\u003cli\u003eEnsure the Go trampoline signature correctly aligns with the public \u003ccode\u003esqlite3_preupdate_hook\u003c/code\u003e C API, preventing data corruption for high-entropy keys (e.g., Snowflake IDs).\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/98\"\u003e#98\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/98\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/98\u003c/a\u003e), thanks Josh Bleecher Snyder!\u003c/li\u003e\n\u003cli\u003eFix the memory allocator used in \u003ccode\u003e(*conn).Deserialize\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003eReplace \u003ccode\u003etls.Alloc\u003c/code\u003e with \u003ccode\u003esqlite3_malloc64\u003c/code\u003e to prevent internal allocator corruption. This ensures the buffer is safely owned by SQLite, which may resize or free it due to the \u003ccode\u003eSQLITE_DESERIALIZE_RESIZEABLE\u003c/code\u003e and \u003ccode\u003eSQLITE_DESERIALIZE_FREEONCLOSE\u003c/code\u003e flags.\u003c/li\u003e\n\u003cli\u003ePrevent a memory leak by properly freeing the allocated buffer if fetching the main database name fails before handing ownership to SQLite.\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/100\"\u003e#100\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/100\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/100\u003c/a\u003e), thanks Josh Bleecher Snyder!\u003c/li\u003e\n\u003cli\u003eFix \u003ccode\u003e(*conn).Deserialize\u003c/code\u003e to explicitly reject \u003ccode\u003enil\u003c/code\u003e or empty byte slices.\u003c/li\u003e\n\u003cli\u003ePrevent silent database disconnection and connection pool corruption caused by SQLite's default behavior when \u003ccode\u003esqlite3_deserialize\u003c/code\u003e receives a 0-length buffer.\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/101\"\u003e#101\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/101\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/101\u003c/a\u003e), thanks Josh Bleecher Snyder!\u003c/li\u003e\n\u003cli\u003eFix \u003ccode\u003ecommitHookTrampoline\u003c/code\u003e and \u003ccode\u003erollbackHookTrampoline\u003c/code\u003e signatures by removing the unused \u003ccode\u003epCsr\u003c/code\u003e parameter.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/a5f439be99fee4478456048b117d3ca84518d5a7\"\u003e\u003ccode\u003ea5f439b\u003c/code\u003e\u003c/a\u003e CHANGELOG.md: fix release tag\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/41e77be50473b810a66c9beaf6d05d042b2a5556\"\u003e\u003ccode\u003e41e77be\u003c/code\u003e\u003c/a\u003e CHANGELOG.md: document \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/121\"\u003e#121\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/827df98d7342db30f09454eaedfe87ef3e7277db\"\u003e\u003ccode\u003e827df98\u003c/code\u003e\u003c/a\u003e gofmt -l -s -w vtab/*.go\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/0d384cb7dcab26840d003cee10f3ae7ae08a883c\"\u003e\u003ccode\u003e0d384cb\u003c/code\u003e\u003c/a\u003e Merge branch 'feat/vtab-volatile-args-opt-in' into 'master'\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/06e06d50e3bec5f79dd4ad60847a6d6405b76721\"\u003e\u003ccode\u003e06e06d5\u003c/code\u003e\u003c/a\u003e extend VolatileArgs opt-in to vtab Filter and Updater Insert/Update\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/2486abd8b22026a1047cdf67a1b090f3bae4210f\"\u003e\u003ccode\u003e2486abd\u003c/code\u003e\u003c/a\u003e HACKING.md, CLAUDE.md: this repo is not auto-tagged, tagging is manual\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/d808a8f1a5d9651553bea0877197fe1c73dac189\"\u003e\u003ccode\u003ed808a8f\u003c/code\u003e\u003c/a\u003e CHANGELOG.md: document \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/120\"\u003e#120\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/fac1cab20834685f75c7201d756608fd71b71824\"\u003e\u003ccode\u003efac1cab\u003c/code\u003e\u003c/a\u003e Merge branch 'feat/volatile-args-opt-in' into 'master'\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/569614c5d4b0187b9b8c632292d3556ce53e1274\"\u003e\u003ccode\u003e569614c\u003c/code\u003e\u003c/a\u003e address review: empty-BLOB shape parity + re-entrancy note\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/905960c9f78c54b85f29718cc34b69088edb1db2\"\u003e\u003ccode\u003e905960c\u003c/code\u003e\u003c/a\u003e add FunctionImpl.VolatileArgs opt-in for zero-copy TEXT/BLOB args\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://gitlab.com/cznic/sqlite/compare/v1.47.0...v1.51.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\n\n[![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=modernc.org/sqlite\u0026package-manager=go_modules\u0026previous-version=1.47.0\u0026new-version=1.51.0)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)\n\nDependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.\n\n[//]: # (dependabot-automerge-start)\n[//]: # (dependabot-automerge-end)\n\n---\n\n\u003cdetails\u003e\n\u003csummary\u003eDependabot commands and options\u003c/summary\u003e\n\u003cbr /\u003e\n\nYou can trigger Dependabot actions by commenting on this PR:\n- `@dependabot rebase` will rebase this PR\n- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it\n- `@dependabot show \u003cdependency name\u003e ignore conditions` will show all of the ignore conditions of the specified dependency\n- `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)\n- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)\n- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)\n\n\n\u003c/details\u003e","html_url":"https://github.com/GoCodeAlone/workflow/pull/831","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/GoCodeAlone%2Fworkflow/issues/831","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/831/packages"}},{"old_version":"1.50.1","new_version":"1.51.0","update_type":"minor","path":null,"pr_created_at":"2026-05-31T19:06:00.000Z","version_change":"1.50.1 → 1.51.0","issue":{"uuid":"4558659763","node_id":"PR_kwDOPP3uM87hI9GB","number":6,"state":"closed","title":"chore(deps): bump modernc.org/sqlite from 1.50.1 to 1.51.0","user":"dependabot[bot]","labels":["dependencies","go"],"assignees":[],"locked":false,"comments_count":6,"pull_request":true,"closed_at":"2026-05-31T19:15:51.000Z","author_association":null,"state_reason":null,"created_at":"2026-05-31T19:06:00.000Z","updated_at":"2026-05-31T19:15:56.000Z","time_to_close":591,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"chore(deps)","packages":[{"name":"modernc.org/sqlite","old_version":"1.50.1","new_version":"1.51.0","repository_url":null}],"path":null,"ecosystem":"go"},"body":"Bumps [modernc.org/sqlite](https://gitlab.com/cznic/sqlite) from 1.50.1 to 1.51.0.\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://gitlab.com/cznic/sqlite/blob/master/CHANGELOG.md\"\u003emodernc.org/sqlite's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003eChangelog\u003c/h1\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e2026-05-28 v1.52.0:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdd \u003ccode\u003eBackup.Remaining\u003c/code\u003e and \u003ccode\u003eBackup.PageCount\u003c/code\u003e, thin wrappers around the existing \u003ccode\u003esqlite3_backup_remaining\u003c/code\u003e and \u003ccode\u003esqlite3_backup_pagecount\u003c/code\u003e C symbols. Together they expose the per-\u003ccode\u003eStep\u003c/code\u003e progress counters that the underlying backup object already maintains, enabling progress reporting during online backups without dropping to \u003ccode\u003emodernc.org/sqlite/lib\u003c/code\u003e directly.\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/122\"\u003e#122\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/122\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/122\u003c/a\u003e), thanks Ian Chechin!\u003c/li\u003e\n\u003cli\u003eDrop the redundant second copy in \u003ccode\u003e(*conn).columnText\u003c/code\u003e, the path that backs every \u003ccode\u003eRows.Scan\u003c/code\u003e into a Go \u003ccode\u003estring\u003c/code\u003e for a TEXT column. The value's bytes are still copied once out of SQLite-owned memory into a fresh Go buffer; that buffer is then reinterpreted as the result string with \u003ccode\u003eunsafe.String\u003c/code\u003e rather than copied a second time by the implicit \u003ccode\u003estring([]byte)\u003c/code\u003e conversion. This removes one allocation per TEXT value per row and roughly halves the bytes allocated on that path; on the new \u003ccode\u003eBenchmarkColumnTextScan\u003c/code\u003e cases it is ~13–20% faster for payloads of 256 B and larger, with no measurable change for very short strings. Purely internal: no API or behavioral change, and the returned string never aliases SQLite's buffer.\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/123\"\u003e#123\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/123\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/123\u003c/a\u003e), thanks Ian Chechin!\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e2026-05-28 v1.51.0:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003ePool the \u003ccode\u003e[]driver.Value\u003c/code\u003e slice passed to scalar/aggregate UDF callbacks and to vtab \u003ccode\u003eFilter\u003c/code\u003e/\u003ccode\u003eInsert\u003c/code\u003e/\u003ccode\u003eUpdate\u003c/code\u003e callbacks, eliminating the dominant per-row allocation on UDF-heavy queries. Benchmarks on a 1000-row, 3-arg noop scalar UDF show ~40% fewer bytes/op and ~15% fewer allocs/op.\u003c/li\u003e\n\u003cli\u003eDocument the matching \u0026quot;arguments are not valid past return\u0026quot; contract on \u003ccode\u003evtab.Cursor.Filter\u003c/code\u003e and \u003ccode\u003evtab.Updater.Insert\u003c/code\u003e/\u003ccode\u003eUpdate\u003c/code\u003e, consistent with the existing rule for \u003ccode\u003eFunctionImpl.Scalar\u003c/code\u003e / \u003ccode\u003eAggregateFunction.Step\u003c/code\u003e / \u003ccode\u003eWindowInverse\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003eResolves [GitLab issue \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/226\"\u003e#226\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/issues/226\"\u003ehttps://gitlab.com/cznic/sqlite/-/issues/226\u003c/a\u003e). See [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/114\"\u003e#114\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/114\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/114\u003c/a\u003e), thanks Ian Chechin!\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003eFileControl.FileControlDataVersion\u003c/code\u003e, a wrapper around \u003ccode\u003eSQLITE_FCNTL_DATA_VERSION\u003c/code\u003e for observing pager-cache data-version changes, including those made on the same connection. Useful as a primitive for application-level cache invalidation.\u003c/li\u003e\n\u003cli\u003eExposed via the idiomatic \u003ccode\u003edatabase/sql\u003c/code\u003e escape hatch \u003ccode\u003e(*sql.Conn).Raw()\u003c/code\u003e, consistent with the existing \u003ccode\u003eFileControlPersistWAL\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/115\"\u003e#115\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/115\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/115\u003c/a\u003e), thanks Ian Chechin!\u003c/li\u003e\n\u003cli\u003eFix a regression where in-memory connections (\u003ccode\u003e:memory:\u003c/code\u003e, \u003ccode\u003efile::memory:\u003c/code\u003e, shared-cache memory URIs) were discarded by \u003ccode\u003edatabase/sql\u003c/code\u003e after a context-cancelled query, taking the entire in-memory store with them. The fix for \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/198\"\u003e#198\u003c/a\u003e had added an \u003ccode\u003esqlite3_is_interrupted\u003c/code\u003e check to the connection validator that mistakenly applied to in-memory connections too, re-introducing the bug originally fixed by !74. File-backed connections keep the existing behaviour and are still discarded after an interrupt.\u003c/li\u003e\n\u003cli\u003eResolves [GitLab issue \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/196\"\u003e#196\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/issues/196\"\u003ehttps://gitlab.com/cznic/sqlite/-/issues/196\u003c/a\u003e). See [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/116\"\u003e#116\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/116\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/116\u003c/a\u003e), thanks Ian Chechin!\u003c/li\u003e\n\u003cli\u003eAdd an opt-in \u003ccode\u003eFunctionImpl.VolatileArgs\u003c/code\u003e flag that hands TEXT and BLOB arguments to scalar and aggregate UDF callbacks as zero-copy views (\u003ccode\u003eunsafe.String\u003c/code\u003e/\u003ccode\u003eunsafe.Slice\u003c/code\u003e) over SQLite's own value buffers, eliminating the per-argument \u003ccode\u003elibc.GoString\u003c/code\u003e/\u003ccode\u003emake([]byte)\u003c/code\u003e copy that the \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/226\"\u003e#226\u003c/a\u003e slice-pooling left as the remaining per-row allocation. On the same 1000-row, 3-arg (INTEGER/TEXT/BLOB) noop scalar UDF this removes a further ~35% of allocs/op and ~11% of bytes/op on top of \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/226\"\u003e#226\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003eThe views are valid only for the duration of the callback and must not be retained past return or across rows; a callback that needs to keep a value must copy it. With \u003ccode\u003eVolatileArgs\u003c/code\u003e unset (the default) arguments keep the existing copied, caller-owned semantics, so the flag is fully backward compatible; it has no effect on integer, float, time, or NULL arguments.\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/120\"\u003e#120\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/120\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/120\u003c/a\u003e), thanks Ian Chechin!\u003c/li\u003e\n\u003cli\u003eExtend the opt-in \u003ccode\u003eVolatileArgs\u003c/code\u003e zero-copy TEXT/BLOB argument access from \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/120\"\u003e#120\u003c/a\u003e to the virtual-table \u003ccode\u003eCursor.Filter\u003c/code\u003e (\u003ccode\u003exFilter\u003c/code\u003e) and \u003ccode\u003eUpdater.Insert\u003c/code\u003e/\u003ccode\u003eUpdate\u003c/code\u003e (\u003ccode\u003exUpdate\u003c/code\u003e) callbacks. A \u003ccode\u003evtab.Module\u003c/code\u003e opts in by implementing the new optional \u003ccode\u003evtab.VolatileArgsOpter\u003c/code\u003e interface (\u003ccode\u003eVolatileArgs() bool\u003c/code\u003e); the flag is read once at module registration and shared by every table created from it. On a vtab call carrying one TEXT and one BLOB argument this removes 2 allocs/op (one \u003ccode\u003elibc.GoString\u003c/code\u003e, one \u003ccode\u003emake([]byte)\u003c/code\u003e) on each of the Filter and Update paths.\u003c/li\u003e\n\u003cli\u003eThe same safety contract as \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/120\"\u003e#120\u003c/a\u003e applies: the views are valid only for the duration of the callback and must not be retained past return or across rows; a callback that needs to keep a value must copy it. Modules that do not implement \u003ccode\u003eVolatileArgsOpter\u003c/code\u003e (the default for all existing modules) are byte-for-byte unchanged, and the flag has no effect on integer, float, time, or NULL arguments.\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/121\"\u003e#121\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/121\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/121\u003c/a\u003e), thanks Ian Chechin!\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e2026-05-10 v1.50.1:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eUpgrade to \u003ca href=\"https://sqlite.org/releaselog/3_53_1.html\"\u003eSQLite 3.53.1\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e2026-04-24 v1.50.0:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eUpgrade to sqlite-vec \u003ca href=\"https://github.com/asg017/sqlite-vec/releases/tag/v0.1.9\"\u003ev0.1.9\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003eIntroduce \u003ccode\u003eColumnInfo\u003c/code\u003e, enabling dynamic query builders and ORMs to retrieve underlying SQLite C-API metadata (\u003ccode\u003eOriginName\u003c/code\u003e, \u003ccode\u003eTableName\u003c/code\u003e, \u003ccode\u003eDatabaseName\u003c/code\u003e, and \u003ccode\u003eDeclType\u003c/code\u003e).\u003c/li\u003e\n\u003cli\u003eThis feature is exposed via the idiomatic \u003ccode\u003edatabase/sql\u003c/code\u003e escape hatch \u003ccode\u003e(*sql.Conn).Raw()\u003c/code\u003e, avoiding custom statement handles and keeping the standard library workflow intact.\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/113\"\u003e#113\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/113\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/113\u003c/a\u003e), thanks Josh Bleecher Snyder!\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e2026-04-17 v1.49.0: Upgrade to \u003ca href=\"https://sqlite.org/releaselog/3_53_0.html\"\u003eSQLite 3.53.0\u003c/a\u003e.\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdded \u003ccode\u003e-DSQLITE_ENABLE_DBPAGE_VTAB\u003c/code\u003e to the transpilation. See \u003ca href=\"https://www.sqlite.org/dbpage.html\"\u003e\u0026quot;The SQLITE_DBPAGE Virtual Table\u0026quot;\u003c/a\u003e for details.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e2026-04-06 v1.48.2:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eFix ABI mapping mismatch in the pre-update hook trampoline that caused silent truncation of large 64-bit RowIDs.\u003c/li\u003e\n\u003cli\u003eEnsure the Go trampoline signature correctly aligns with the public \u003ccode\u003esqlite3_preupdate_hook\u003c/code\u003e C API, preventing data corruption for high-entropy keys (e.g., Snowflake IDs).\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/98\"\u003e#98\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/98\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/98\u003c/a\u003e), thanks Josh Bleecher Snyder!\u003c/li\u003e\n\u003cli\u003eFix the memory allocator used in \u003ccode\u003e(*conn).Deserialize\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003eReplace \u003ccode\u003etls.Alloc\u003c/code\u003e with \u003ccode\u003esqlite3_malloc64\u003c/code\u003e to prevent internal allocator corruption. This ensures the buffer is safely owned by SQLite, which may resize or free it due to the \u003ccode\u003eSQLITE_DESERIALIZE_RESIZEABLE\u003c/code\u003e and \u003ccode\u003eSQLITE_DESERIALIZE_FREEONCLOSE\u003c/code\u003e flags.\u003c/li\u003e\n\u003cli\u003ePrevent a memory leak by properly freeing the allocated buffer if fetching the main database name fails before handing ownership to SQLite.\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/100\"\u003e#100\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/100\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/100\u003c/a\u003e), thanks Josh Bleecher Snyder!\u003c/li\u003e\n\u003cli\u003eFix \u003ccode\u003e(*conn).Deserialize\u003c/code\u003e to explicitly reject \u003ccode\u003enil\u003c/code\u003e or empty byte slices.\u003c/li\u003e\n\u003cli\u003ePrevent silent database disconnection and connection pool corruption caused by SQLite's default behavior when \u003ccode\u003esqlite3_deserialize\u003c/code\u003e receives a 0-length buffer.\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/101\"\u003e#101\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/101\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/101\u003c/a\u003e), thanks Josh Bleecher Snyder!\u003c/li\u003e\n\u003cli\u003eFix \u003ccode\u003ecommitHookTrampoline\u003c/code\u003e and \u003ccode\u003erollbackHookTrampoline\u003c/code\u003e signatures by removing the unused \u003ccode\u003epCsr\u003c/code\u003e parameter.\u003c/li\u003e\n\u003cli\u003eAligns internal hook callbacks accurately with the underlying SQLite C API, cleaning up the code to prevent potential future confusion or bugs.\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/102\"\u003e#102\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/102\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/102\u003c/a\u003e), thanks Josh Bleecher Snyder!\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/a5f439be99fee4478456048b117d3ca84518d5a7\"\u003e\u003ccode\u003ea5f439b\u003c/code\u003e\u003c/a\u003e CHANGELOG.md: fix release tag\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/41e77be50473b810a66c9beaf6d05d042b2a5556\"\u003e\u003ccode\u003e41e77be\u003c/code\u003e\u003c/a\u003e CHANGELOG.md: document \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/121\"\u003e#121\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/827df98d7342db30f09454eaedfe87ef3e7277db\"\u003e\u003ccode\u003e827df98\u003c/code\u003e\u003c/a\u003e gofmt -l -s -w vtab/*.go\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/0d384cb7dcab26840d003cee10f3ae7ae08a883c\"\u003e\u003ccode\u003e0d384cb\u003c/code\u003e\u003c/a\u003e Merge branch 'feat/vtab-volatile-args-opt-in' into 'master'\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/06e06d50e3bec5f79dd4ad60847a6d6405b76721\"\u003e\u003ccode\u003e06e06d5\u003c/code\u003e\u003c/a\u003e extend VolatileArgs opt-in to vtab Filter and Updater Insert/Update\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/2486abd8b22026a1047cdf67a1b090f3bae4210f\"\u003e\u003ccode\u003e2486abd\u003c/code\u003e\u003c/a\u003e HACKING.md, CLAUDE.md: this repo is not auto-tagged, tagging is manual\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/d808a8f1a5d9651553bea0877197fe1c73dac189\"\u003e\u003ccode\u003ed808a8f\u003c/code\u003e\u003c/a\u003e CHANGELOG.md: document \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/120\"\u003e#120\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/fac1cab20834685f75c7201d756608fd71b71824\"\u003e\u003ccode\u003efac1cab\u003c/code\u003e\u003c/a\u003e Merge branch 'feat/volatile-args-opt-in' into 'master'\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/569614c5d4b0187b9b8c632292d3556ce53e1274\"\u003e\u003ccode\u003e569614c\u003c/code\u003e\u003c/a\u003e address review: empty-BLOB shape parity + re-entrancy note\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/905960c9f78c54b85f29718cc34b69088edb1db2\"\u003e\u003ccode\u003e905960c\u003c/code\u003e\u003c/a\u003e add FunctionImpl.VolatileArgs opt-in for zero-copy TEXT/BLOB args\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://gitlab.com/cznic/sqlite/compare/v1.50.1...v1.51.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\n\n[![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=modernc.org/sqlite\u0026package-manager=go_modules\u0026previous-version=1.50.1\u0026new-version=1.51.0)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)\n\nDependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.\n\n[//]: # (dependabot-automerge-start)\n[//]: # (dependabot-automerge-end)\n\n---\n\n\u003cdetails\u003e\n\u003csummary\u003eDependabot commands and options\u003c/summary\u003e\n\u003cbr /\u003e\n\nYou can trigger Dependabot actions by commenting on this PR:\n- `@dependabot rebase` will rebase this PR\n- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it\n- `@dependabot show \u003cdependency name\u003e ignore conditions` will show all of the ignore conditions of the specified dependency\n- `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)\n- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)\n- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)\n\n\n\u003c/details\u003e","html_url":"https://github.com/oratchade/vessel/pull/6","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/oratchade%2Fvessel/issues/6","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/6/packages"}},{"old_version":"1.50.0","new_version":"1.51.0","update_type":"minor","path":null,"pr_created_at":"2026-05-31T06:52:51.000Z","version_change":"1.50.0 → 1.51.0","issue":{"uuid":"4556822576","node_id":"PR_kwDOSTWBRc7hDgEt","number":6,"state":"closed","title":"build(deps): bump modernc.org/sqlite from 1.50.0 to 1.51.0","user":"dependabot[bot]","labels":["dependencies","go"],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":"2026-06-07T06:52:45.000Z","author_association":null,"state_reason":null,"created_at":"2026-05-31T06:52:51.000Z","updated_at":"2026-06-07T06:52:47.000Z","time_to_close":604794,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"build(deps)","packages":[{"name":"modernc.org/sqlite","old_version":"1.50.0","new_version":"1.51.0","repository_url":null}],"path":null,"ecosystem":"go"},"body":"Bumps [modernc.org/sqlite](https://gitlab.com/cznic/sqlite) from 1.50.0 to 1.51.0.\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://gitlab.com/cznic/sqlite/blob/master/CHANGELOG.md\"\u003emodernc.org/sqlite's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003eChangelog\u003c/h1\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e2026-05-28 v1.52.0:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdd \u003ccode\u003eBackup.Remaining\u003c/code\u003e and \u003ccode\u003eBackup.PageCount\u003c/code\u003e, thin wrappers around the existing \u003ccode\u003esqlite3_backup_remaining\u003c/code\u003e and \u003ccode\u003esqlite3_backup_pagecount\u003c/code\u003e C symbols. Together they expose the per-\u003ccode\u003eStep\u003c/code\u003e progress counters that the underlying backup object already maintains, enabling progress reporting during online backups without dropping to \u003ccode\u003emodernc.org/sqlite/lib\u003c/code\u003e directly.\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/122\"\u003e#122\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/122\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/122\u003c/a\u003e), thanks Ian Chechin!\u003c/li\u003e\n\u003cli\u003eDrop the redundant second copy in \u003ccode\u003e(*conn).columnText\u003c/code\u003e, the path that backs every \u003ccode\u003eRows.Scan\u003c/code\u003e into a Go \u003ccode\u003estring\u003c/code\u003e for a TEXT column. The value's bytes are still copied once out of SQLite-owned memory into a fresh Go buffer; that buffer is then reinterpreted as the result string with \u003ccode\u003eunsafe.String\u003c/code\u003e rather than copied a second time by the implicit \u003ccode\u003estring([]byte)\u003c/code\u003e conversion. This removes one allocation per TEXT value per row and roughly halves the bytes allocated on that path; on the new \u003ccode\u003eBenchmarkColumnTextScan\u003c/code\u003e cases it is ~13–20% faster for payloads of 256 B and larger, with no measurable change for very short strings. Purely internal: no API or behavioral change, and the returned string never aliases SQLite's buffer.\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/123\"\u003e#123\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/123\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/123\u003c/a\u003e), thanks Ian Chechin!\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e2026-05-28 v1.51.0:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003ePool the \u003ccode\u003e[]driver.Value\u003c/code\u003e slice passed to scalar/aggregate UDF callbacks and to vtab \u003ccode\u003eFilter\u003c/code\u003e/\u003ccode\u003eInsert\u003c/code\u003e/\u003ccode\u003eUpdate\u003c/code\u003e callbacks, eliminating the dominant per-row allocation on UDF-heavy queries. Benchmarks on a 1000-row, 3-arg noop scalar UDF show ~40% fewer bytes/op and ~15% fewer allocs/op.\u003c/li\u003e\n\u003cli\u003eDocument the matching \u0026quot;arguments are not valid past return\u0026quot; contract on \u003ccode\u003evtab.Cursor.Filter\u003c/code\u003e and \u003ccode\u003evtab.Updater.Insert\u003c/code\u003e/\u003ccode\u003eUpdate\u003c/code\u003e, consistent with the existing rule for \u003ccode\u003eFunctionImpl.Scalar\u003c/code\u003e / \u003ccode\u003eAggregateFunction.Step\u003c/code\u003e / \u003ccode\u003eWindowInverse\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003eResolves [GitLab issue \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/226\"\u003e#226\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/issues/226\"\u003ehttps://gitlab.com/cznic/sqlite/-/issues/226\u003c/a\u003e). See [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/114\"\u003e#114\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/114\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/114\u003c/a\u003e), thanks Ian Chechin!\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003eFileControl.FileControlDataVersion\u003c/code\u003e, a wrapper around \u003ccode\u003eSQLITE_FCNTL_DATA_VERSION\u003c/code\u003e for observing pager-cache data-version changes, including those made on the same connection. Useful as a primitive for application-level cache invalidation.\u003c/li\u003e\n\u003cli\u003eExposed via the idiomatic \u003ccode\u003edatabase/sql\u003c/code\u003e escape hatch \u003ccode\u003e(*sql.Conn).Raw()\u003c/code\u003e, consistent with the existing \u003ccode\u003eFileControlPersistWAL\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/115\"\u003e#115\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/115\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/115\u003c/a\u003e), thanks Ian Chechin!\u003c/li\u003e\n\u003cli\u003eFix a regression where in-memory connections (\u003ccode\u003e:memory:\u003c/code\u003e, \u003ccode\u003efile::memory:\u003c/code\u003e, shared-cache memory URIs) were discarded by \u003ccode\u003edatabase/sql\u003c/code\u003e after a context-cancelled query, taking the entire in-memory store with them. The fix for \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/198\"\u003e#198\u003c/a\u003e had added an \u003ccode\u003esqlite3_is_interrupted\u003c/code\u003e check to the connection validator that mistakenly applied to in-memory connections too, re-introducing the bug originally fixed by !74. File-backed connections keep the existing behaviour and are still discarded after an interrupt.\u003c/li\u003e\n\u003cli\u003eResolves [GitLab issue \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/196\"\u003e#196\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/issues/196\"\u003ehttps://gitlab.com/cznic/sqlite/-/issues/196\u003c/a\u003e). See [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/116\"\u003e#116\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/116\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/116\u003c/a\u003e), thanks Ian Chechin!\u003c/li\u003e\n\u003cli\u003eAdd an opt-in \u003ccode\u003eFunctionImpl.VolatileArgs\u003c/code\u003e flag that hands TEXT and BLOB arguments to scalar and aggregate UDF callbacks as zero-copy views (\u003ccode\u003eunsafe.String\u003c/code\u003e/\u003ccode\u003eunsafe.Slice\u003c/code\u003e) over SQLite's own value buffers, eliminating the per-argument \u003ccode\u003elibc.GoString\u003c/code\u003e/\u003ccode\u003emake([]byte)\u003c/code\u003e copy that the \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/226\"\u003e#226\u003c/a\u003e slice-pooling left as the remaining per-row allocation. On the same 1000-row, 3-arg (INTEGER/TEXT/BLOB) noop scalar UDF this removes a further ~35% of allocs/op and ~11% of bytes/op on top of \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/226\"\u003e#226\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003eThe views are valid only for the duration of the callback and must not be retained past return or across rows; a callback that needs to keep a value must copy it. With \u003ccode\u003eVolatileArgs\u003c/code\u003e unset (the default) arguments keep the existing copied, caller-owned semantics, so the flag is fully backward compatible; it has no effect on integer, float, time, or NULL arguments.\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/120\"\u003e#120\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/120\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/120\u003c/a\u003e), thanks Ian Chechin!\u003c/li\u003e\n\u003cli\u003eExtend the opt-in \u003ccode\u003eVolatileArgs\u003c/code\u003e zero-copy TEXT/BLOB argument access from \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/120\"\u003e#120\u003c/a\u003e to the virtual-table \u003ccode\u003eCursor.Filter\u003c/code\u003e (\u003ccode\u003exFilter\u003c/code\u003e) and \u003ccode\u003eUpdater.Insert\u003c/code\u003e/\u003ccode\u003eUpdate\u003c/code\u003e (\u003ccode\u003exUpdate\u003c/code\u003e) callbacks. A \u003ccode\u003evtab.Module\u003c/code\u003e opts in by implementing the new optional \u003ccode\u003evtab.VolatileArgsOpter\u003c/code\u003e interface (\u003ccode\u003eVolatileArgs() bool\u003c/code\u003e); the flag is read once at module registration and shared by every table created from it. On a vtab call carrying one TEXT and one BLOB argument this removes 2 allocs/op (one \u003ccode\u003elibc.GoString\u003c/code\u003e, one \u003ccode\u003emake([]byte)\u003c/code\u003e) on each of the Filter and Update paths.\u003c/li\u003e\n\u003cli\u003eThe same safety contract as \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/120\"\u003e#120\u003c/a\u003e applies: the views are valid only for the duration of the callback and must not be retained past return or across rows; a callback that needs to keep a value must copy it. Modules that do not implement \u003ccode\u003eVolatileArgsOpter\u003c/code\u003e (the default for all existing modules) are byte-for-byte unchanged, and the flag has no effect on integer, float, time, or NULL arguments.\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/121\"\u003e#121\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/121\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/121\u003c/a\u003e), thanks Ian Chechin!\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e2026-05-10 v1.50.1:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eUpgrade to \u003ca href=\"https://sqlite.org/releaselog/3_53_1.html\"\u003eSQLite 3.53.1\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e2026-04-24 v1.50.0:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eUpgrade to sqlite-vec \u003ca href=\"https://github.com/asg017/sqlite-vec/releases/tag/v0.1.9\"\u003ev0.1.9\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003eIntroduce \u003ccode\u003eColumnInfo\u003c/code\u003e, enabling dynamic query builders and ORMs to retrieve underlying SQLite C-API metadata (\u003ccode\u003eOriginName\u003c/code\u003e, \u003ccode\u003eTableName\u003c/code\u003e, \u003ccode\u003eDatabaseName\u003c/code\u003e, and \u003ccode\u003eDeclType\u003c/code\u003e).\u003c/li\u003e\n\u003cli\u003eThis feature is exposed via the idiomatic \u003ccode\u003edatabase/sql\u003c/code\u003e escape hatch \u003ccode\u003e(*sql.Conn).Raw()\u003c/code\u003e, avoiding custom statement handles and keeping the standard library workflow intact.\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/113\"\u003e#113\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/113\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/113\u003c/a\u003e), thanks Josh Bleecher Snyder!\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e2026-04-17 v1.49.0: Upgrade to \u003ca href=\"https://sqlite.org/releaselog/3_53_0.html\"\u003eSQLite 3.53.0\u003c/a\u003e.\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdded \u003ccode\u003e-DSQLITE_ENABLE_DBPAGE_VTAB\u003c/code\u003e to the transpilation. See \u003ca href=\"https://www.sqlite.org/dbpage.html\"\u003e\u0026quot;The SQLITE_DBPAGE Virtual Table\u0026quot;\u003c/a\u003e for details.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e2026-04-06 v1.48.2:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eFix ABI mapping mismatch in the pre-update hook trampoline that caused silent truncation of large 64-bit RowIDs.\u003c/li\u003e\n\u003cli\u003eEnsure the Go trampoline signature correctly aligns with the public \u003ccode\u003esqlite3_preupdate_hook\u003c/code\u003e C API, preventing data corruption for high-entropy keys (e.g., Snowflake IDs).\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/98\"\u003e#98\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/98\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/98\u003c/a\u003e), thanks Josh Bleecher Snyder!\u003c/li\u003e\n\u003cli\u003eFix the memory allocator used in \u003ccode\u003e(*conn).Deserialize\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003eReplace \u003ccode\u003etls.Alloc\u003c/code\u003e with \u003ccode\u003esqlite3_malloc64\u003c/code\u003e to prevent internal allocator corruption. This ensures the buffer is safely owned by SQLite, which may resize or free it due to the \u003ccode\u003eSQLITE_DESERIALIZE_RESIZEABLE\u003c/code\u003e and \u003ccode\u003eSQLITE_DESERIALIZE_FREEONCLOSE\u003c/code\u003e flags.\u003c/li\u003e\n\u003cli\u003ePrevent a memory leak by properly freeing the allocated buffer if fetching the main database name fails before handing ownership to SQLite.\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/100\"\u003e#100\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/100\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/100\u003c/a\u003e), thanks Josh Bleecher Snyder!\u003c/li\u003e\n\u003cli\u003eFix \u003ccode\u003e(*conn).Deserialize\u003c/code\u003e to explicitly reject \u003ccode\u003enil\u003c/code\u003e or empty byte slices.\u003c/li\u003e\n\u003cli\u003ePrevent silent database disconnection and connection pool corruption caused by SQLite's default behavior when \u003ccode\u003esqlite3_deserialize\u003c/code\u003e receives a 0-length buffer.\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/101\"\u003e#101\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/101\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/101\u003c/a\u003e), thanks Josh Bleecher Snyder!\u003c/li\u003e\n\u003cli\u003eFix \u003ccode\u003ecommitHookTrampoline\u003c/code\u003e and \u003ccode\u003erollbackHookTrampoline\u003c/code\u003e signatures by removing the unused \u003ccode\u003epCsr\u003c/code\u003e parameter.\u003c/li\u003e\n\u003cli\u003eAligns internal hook callbacks accurately with the underlying SQLite C API, cleaning up the code to prevent potential future confusion or bugs.\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/102\"\u003e#102\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/102\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/102\u003c/a\u003e), thanks Josh Bleecher Snyder!\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/a5f439be99fee4478456048b117d3ca84518d5a7\"\u003e\u003ccode\u003ea5f439b\u003c/code\u003e\u003c/a\u003e CHANGELOG.md: fix release tag\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/41e77be50473b810a66c9beaf6d05d042b2a5556\"\u003e\u003ccode\u003e41e77be\u003c/code\u003e\u003c/a\u003e CHANGELOG.md: document \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/121\"\u003e#121\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/827df98d7342db30f09454eaedfe87ef3e7277db\"\u003e\u003ccode\u003e827df98\u003c/code\u003e\u003c/a\u003e gofmt -l -s -w vtab/*.go\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/0d384cb7dcab26840d003cee10f3ae7ae08a883c\"\u003e\u003ccode\u003e0d384cb\u003c/code\u003e\u003c/a\u003e Merge branch 'feat/vtab-volatile-args-opt-in' into 'master'\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/06e06d50e3bec5f79dd4ad60847a6d6405b76721\"\u003e\u003ccode\u003e06e06d5\u003c/code\u003e\u003c/a\u003e extend VolatileArgs opt-in to vtab Filter and Updater Insert/Update\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/2486abd8b22026a1047cdf67a1b090f3bae4210f\"\u003e\u003ccode\u003e2486abd\u003c/code\u003e\u003c/a\u003e HACKING.md, CLAUDE.md: this repo is not auto-tagged, tagging is manual\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/d808a8f1a5d9651553bea0877197fe1c73dac189\"\u003e\u003ccode\u003ed808a8f\u003c/code\u003e\u003c/a\u003e CHANGELOG.md: document \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/120\"\u003e#120\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/fac1cab20834685f75c7201d756608fd71b71824\"\u003e\u003ccode\u003efac1cab\u003c/code\u003e\u003c/a\u003e Merge branch 'feat/volatile-args-opt-in' into 'master'\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/569614c5d4b0187b9b8c632292d3556ce53e1274\"\u003e\u003ccode\u003e569614c\u003c/code\u003e\u003c/a\u003e address review: empty-BLOB shape parity + re-entrancy note\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/905960c9f78c54b85f29718cc34b69088edb1db2\"\u003e\u003ccode\u003e905960c\u003c/code\u003e\u003c/a\u003e add FunctionImpl.VolatileArgs opt-in for zero-copy TEXT/BLOB args\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://gitlab.com/cznic/sqlite/compare/v1.50.0...v1.51.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\n\n[![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=modernc.org/sqlite\u0026package-manager=go_modules\u0026previous-version=1.50.0\u0026new-version=1.51.0)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)\n\nDependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.\n\n[//]: # (dependabot-automerge-start)\n[//]: # (dependabot-automerge-end)\n\n---\n\n\u003cdetails\u003e\n\u003csummary\u003eDependabot commands and options\u003c/summary\u003e\n\u003cbr /\u003e\n\nYou can trigger Dependabot actions by commenting on this PR:\n- `@dependabot rebase` will rebase this PR\n- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it\n- `@dependabot show \u003cdependency name\u003e ignore conditions` will show all of the ignore conditions of the specified dependency\n- `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)\n- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)\n- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)\n\n\n\u003c/details\u003e","html_url":"https://github.com/callum-baillie/drive-agent/pull/6","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/callum-baillie%2Fdrive-agent/issues/6","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/6/packages"}},{"old_version":"1.50.1","new_version":"1.51.0","update_type":"minor","path":null,"pr_created_at":"2026-05-31T03:22:46.000Z","version_change":"1.50.1 → 1.51.0","issue":{"uuid":"4556430796","node_id":"PR_kwDOR6L7xM7hCVsD","number":236,"state":"open","title":"chore(deps): bump modernc.org/sqlite from 1.50.1 to 1.51.0","user":"dependabot[bot]","labels":["dependencies","go"],"assignees":[],"locked":false,"comments_count":2,"pull_request":true,"closed_at":null,"author_association":null,"state_reason":null,"created_at":"2026-05-31T03:22:46.000Z","updated_at":"2026-05-31T03:23:48.000Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"chore(deps)","packages":[{"name":"modernc.org/sqlite","old_version":"1.50.1","new_version":"1.51.0","repository_url":null}],"path":null,"ecosystem":"go"},"body":"Bumps [modernc.org/sqlite](https://gitlab.com/cznic/sqlite) from 1.50.1 to 1.51.0.\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://gitlab.com/cznic/sqlite/blob/master/CHANGELOG.md\"\u003emodernc.org/sqlite's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003eChangelog\u003c/h1\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e2026-05-28 v1.52.0:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdd \u003ccode\u003eBackup.Remaining\u003c/code\u003e and \u003ccode\u003eBackup.PageCount\u003c/code\u003e, thin wrappers around the existing \u003ccode\u003esqlite3_backup_remaining\u003c/code\u003e and \u003ccode\u003esqlite3_backup_pagecount\u003c/code\u003e C symbols. Together they expose the per-\u003ccode\u003eStep\u003c/code\u003e progress counters that the underlying backup object already maintains, enabling progress reporting during online backups without dropping to \u003ccode\u003emodernc.org/sqlite/lib\u003c/code\u003e directly.\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/122\"\u003e#122\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/122\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/122\u003c/a\u003e), thanks Ian Chechin!\u003c/li\u003e\n\u003cli\u003eDrop the redundant second copy in \u003ccode\u003e(*conn).columnText\u003c/code\u003e, the path that backs every \u003ccode\u003eRows.Scan\u003c/code\u003e into a Go \u003ccode\u003estring\u003c/code\u003e for a TEXT column. The value's bytes are still copied once out of SQLite-owned memory into a fresh Go buffer; that buffer is then reinterpreted as the result string with \u003ccode\u003eunsafe.String\u003c/code\u003e rather than copied a second time by the implicit \u003ccode\u003estring([]byte)\u003c/code\u003e conversion. This removes one allocation per TEXT value per row and roughly halves the bytes allocated on that path; on the new \u003ccode\u003eBenchmarkColumnTextScan\u003c/code\u003e cases it is ~13–20% faster for payloads of 256 B and larger, with no measurable change for very short strings. Purely internal: no API or behavioral change, and the returned string never aliases SQLite's buffer.\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/123\"\u003e#123\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/123\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/123\u003c/a\u003e), thanks Ian Chechin!\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e2026-05-28 v1.51.0:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003ePool the \u003ccode\u003e[]driver.Value\u003c/code\u003e slice passed to scalar/aggregate UDF callbacks and to vtab \u003ccode\u003eFilter\u003c/code\u003e/\u003ccode\u003eInsert\u003c/code\u003e/\u003ccode\u003eUpdate\u003c/code\u003e callbacks, eliminating the dominant per-row allocation on UDF-heavy queries. Benchmarks on a 1000-row, 3-arg noop scalar UDF show ~40% fewer bytes/op and ~15% fewer allocs/op.\u003c/li\u003e\n\u003cli\u003eDocument the matching \u0026quot;arguments are not valid past return\u0026quot; contract on \u003ccode\u003evtab.Cursor.Filter\u003c/code\u003e and \u003ccode\u003evtab.Updater.Insert\u003c/code\u003e/\u003ccode\u003eUpdate\u003c/code\u003e, consistent with the existing rule for \u003ccode\u003eFunctionImpl.Scalar\u003c/code\u003e / \u003ccode\u003eAggregateFunction.Step\u003c/code\u003e / \u003ccode\u003eWindowInverse\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003eResolves [GitLab issue \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/226\"\u003e#226\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/issues/226\"\u003ehttps://gitlab.com/cznic/sqlite/-/issues/226\u003c/a\u003e). See [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/114\"\u003e#114\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/114\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/114\u003c/a\u003e), thanks Ian Chechin!\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003eFileControl.FileControlDataVersion\u003c/code\u003e, a wrapper around \u003ccode\u003eSQLITE_FCNTL_DATA_VERSION\u003c/code\u003e for observing pager-cache data-version changes, including those made on the same connection. Useful as a primitive for application-level cache invalidation.\u003c/li\u003e\n\u003cli\u003eExposed via the idiomatic \u003ccode\u003edatabase/sql\u003c/code\u003e escape hatch \u003ccode\u003e(*sql.Conn).Raw()\u003c/code\u003e, consistent with the existing \u003ccode\u003eFileControlPersistWAL\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/115\"\u003e#115\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/115\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/115\u003c/a\u003e), thanks Ian Chechin!\u003c/li\u003e\n\u003cli\u003eFix a regression where in-memory connections (\u003ccode\u003e:memory:\u003c/code\u003e, \u003ccode\u003efile::memory:\u003c/code\u003e, shared-cache memory URIs) were discarded by \u003ccode\u003edatabase/sql\u003c/code\u003e after a context-cancelled query, taking the entire in-memory store with them. The fix for \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/198\"\u003e#198\u003c/a\u003e had added an \u003ccode\u003esqlite3_is_interrupted\u003c/code\u003e check to the connection validator that mistakenly applied to in-memory connections too, re-introducing the bug originally fixed by !74. File-backed connections keep the existing behaviour and are still discarded after an interrupt.\u003c/li\u003e\n\u003cli\u003eResolves [GitLab issue \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/196\"\u003e#196\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/issues/196\"\u003ehttps://gitlab.com/cznic/sqlite/-/issues/196\u003c/a\u003e). See [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/116\"\u003e#116\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/116\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/116\u003c/a\u003e), thanks Ian Chechin!\u003c/li\u003e\n\u003cli\u003eAdd an opt-in \u003ccode\u003eFunctionImpl.VolatileArgs\u003c/code\u003e flag that hands TEXT and BLOB arguments to scalar and aggregate UDF callbacks as zero-copy views (\u003ccode\u003eunsafe.String\u003c/code\u003e/\u003ccode\u003eunsafe.Slice\u003c/code\u003e) over SQLite's own value buffers, eliminating the per-argument \u003ccode\u003elibc.GoString\u003c/code\u003e/\u003ccode\u003emake([]byte)\u003c/code\u003e copy that the \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/226\"\u003e#226\u003c/a\u003e slice-pooling left as the remaining per-row allocation. On the same 1000-row, 3-arg (INTEGER/TEXT/BLOB) noop scalar UDF this removes a further ~35% of allocs/op and ~11% of bytes/op on top of \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/226\"\u003e#226\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003eThe views are valid only for the duration of the callback and must not be retained past return or across rows; a callback that needs to keep a value must copy it. With \u003ccode\u003eVolatileArgs\u003c/code\u003e unset (the default) arguments keep the existing copied, caller-owned semantics, so the flag is fully backward compatible; it has no effect on integer, float, time, or NULL arguments.\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/120\"\u003e#120\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/120\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/120\u003c/a\u003e), thanks Ian Chechin!\u003c/li\u003e\n\u003cli\u003eExtend the opt-in \u003ccode\u003eVolatileArgs\u003c/code\u003e zero-copy TEXT/BLOB argument access from \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/120\"\u003e#120\u003c/a\u003e to the virtual-table \u003ccode\u003eCursor.Filter\u003c/code\u003e (\u003ccode\u003exFilter\u003c/code\u003e) and \u003ccode\u003eUpdater.Insert\u003c/code\u003e/\u003ccode\u003eUpdate\u003c/code\u003e (\u003ccode\u003exUpdate\u003c/code\u003e) callbacks. A \u003ccode\u003evtab.Module\u003c/code\u003e opts in by implementing the new optional \u003ccode\u003evtab.VolatileArgsOpter\u003c/code\u003e interface (\u003ccode\u003eVolatileArgs() bool\u003c/code\u003e); the flag is read once at module registration and shared by every table created from it. On a vtab call carrying one TEXT and one BLOB argument this removes 2 allocs/op (one \u003ccode\u003elibc.GoString\u003c/code\u003e, one \u003ccode\u003emake([]byte)\u003c/code\u003e) on each of the Filter and Update paths.\u003c/li\u003e\n\u003cli\u003eThe same safety contract as \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/120\"\u003e#120\u003c/a\u003e applies: the views are valid only for the duration of the callback and must not be retained past return or across rows; a callback that needs to keep a value must copy it. Modules that do not implement \u003ccode\u003eVolatileArgsOpter\u003c/code\u003e (the default for all existing modules) are byte-for-byte unchanged, and the flag has no effect on integer, float, time, or NULL arguments.\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/121\"\u003e#121\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/121\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/121\u003c/a\u003e), thanks Ian Chechin!\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e2026-05-10 v1.50.1:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eUpgrade to \u003ca href=\"https://sqlite.org/releaselog/3_53_1.html\"\u003eSQLite 3.53.1\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e2026-04-24 v1.50.0:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eUpgrade to sqlite-vec \u003ca href=\"https://github.com/asg017/sqlite-vec/releases/tag/v0.1.9\"\u003ev0.1.9\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003eIntroduce \u003ccode\u003eColumnInfo\u003c/code\u003e, enabling dynamic query builders and ORMs to retrieve underlying SQLite C-API metadata (\u003ccode\u003eOriginName\u003c/code\u003e, \u003ccode\u003eTableName\u003c/code\u003e, \u003ccode\u003eDatabaseName\u003c/code\u003e, and \u003ccode\u003eDeclType\u003c/code\u003e).\u003c/li\u003e\n\u003cli\u003eThis feature is exposed via the idiomatic \u003ccode\u003edatabase/sql\u003c/code\u003e escape hatch \u003ccode\u003e(*sql.Conn).Raw()\u003c/code\u003e, avoiding custom statement handles and keeping the standard library workflow intact.\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/113\"\u003e#113\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/113\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/113\u003c/a\u003e), thanks Josh Bleecher Snyder!\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e2026-04-17 v1.49.0: Upgrade to \u003ca href=\"https://sqlite.org/releaselog/3_53_0.html\"\u003eSQLite 3.53.0\u003c/a\u003e.\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdded \u003ccode\u003e-DSQLITE_ENABLE_DBPAGE_VTAB\u003c/code\u003e to the transpilation. See \u003ca href=\"https://www.sqlite.org/dbpage.html\"\u003e\u0026quot;The SQLITE_DBPAGE Virtual Table\u0026quot;\u003c/a\u003e for details.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e2026-04-06 v1.48.2:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eFix ABI mapping mismatch in the pre-update hook trampoline that caused silent truncation of large 64-bit RowIDs.\u003c/li\u003e\n\u003cli\u003eEnsure the Go trampoline signature correctly aligns with the public \u003ccode\u003esqlite3_preupdate_hook\u003c/code\u003e C API, preventing data corruption for high-entropy keys (e.g., Snowflake IDs).\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/98\"\u003e#98\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/98\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/98\u003c/a\u003e), thanks Josh Bleecher Snyder!\u003c/li\u003e\n\u003cli\u003eFix the memory allocator used in \u003ccode\u003e(*conn).Deserialize\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003eReplace \u003ccode\u003etls.Alloc\u003c/code\u003e with \u003ccode\u003esqlite3_malloc64\u003c/code\u003e to prevent internal allocator corruption. This ensures the buffer is safely owned by SQLite, which may resize or free it due to the \u003ccode\u003eSQLITE_DESERIALIZE_RESIZEABLE\u003c/code\u003e and \u003ccode\u003eSQLITE_DESERIALIZE_FREEONCLOSE\u003c/code\u003e flags.\u003c/li\u003e\n\u003cli\u003ePrevent a memory leak by properly freeing the allocated buffer if fetching the main database name fails before handing ownership to SQLite.\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/100\"\u003e#100\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/100\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/100\u003c/a\u003e), thanks Josh Bleecher Snyder!\u003c/li\u003e\n\u003cli\u003eFix \u003ccode\u003e(*conn).Deserialize\u003c/code\u003e to explicitly reject \u003ccode\u003enil\u003c/code\u003e or empty byte slices.\u003c/li\u003e\n\u003cli\u003ePrevent silent database disconnection and connection pool corruption caused by SQLite's default behavior when \u003ccode\u003esqlite3_deserialize\u003c/code\u003e receives a 0-length buffer.\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/101\"\u003e#101\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/101\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/101\u003c/a\u003e), thanks Josh Bleecher Snyder!\u003c/li\u003e\n\u003cli\u003eFix \u003ccode\u003ecommitHookTrampoline\u003c/code\u003e and \u003ccode\u003erollbackHookTrampoline\u003c/code\u003e signatures by removing the unused \u003ccode\u003epCsr\u003c/code\u003e parameter.\u003c/li\u003e\n\u003cli\u003eAligns internal hook callbacks accurately with the underlying SQLite C API, cleaning up the code to prevent potential future confusion or bugs.\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/102\"\u003e#102\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/102\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/102\u003c/a\u003e), thanks Josh Bleecher Snyder!\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/a5f439be99fee4478456048b117d3ca84518d5a7\"\u003e\u003ccode\u003ea5f439b\u003c/code\u003e\u003c/a\u003e CHANGELOG.md: fix release tag\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/41e77be50473b810a66c9beaf6d05d042b2a5556\"\u003e\u003ccode\u003e41e77be\u003c/code\u003e\u003c/a\u003e CHANGELOG.md: document \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/121\"\u003e#121\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/827df98d7342db30f09454eaedfe87ef3e7277db\"\u003e\u003ccode\u003e827df98\u003c/code\u003e\u003c/a\u003e gofmt -l -s -w vtab/*.go\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/0d384cb7dcab26840d003cee10f3ae7ae08a883c\"\u003e\u003ccode\u003e0d384cb\u003c/code\u003e\u003c/a\u003e Merge branch 'feat/vtab-volatile-args-opt-in' into 'master'\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/06e06d50e3bec5f79dd4ad60847a6d6405b76721\"\u003e\u003ccode\u003e06e06d5\u003c/code\u003e\u003c/a\u003e extend VolatileArgs opt-in to vtab Filter and Updater Insert/Update\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/2486abd8b22026a1047cdf67a1b090f3bae4210f\"\u003e\u003ccode\u003e2486abd\u003c/code\u003e\u003c/a\u003e HACKING.md, CLAUDE.md: this repo is not auto-tagged, tagging is manual\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/d808a8f1a5d9651553bea0877197fe1c73dac189\"\u003e\u003ccode\u003ed808a8f\u003c/code\u003e\u003c/a\u003e CHANGELOG.md: document \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/120\"\u003e#120\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/fac1cab20834685f75c7201d756608fd71b71824\"\u003e\u003ccode\u003efac1cab\u003c/code\u003e\u003c/a\u003e Merge branch 'feat/volatile-args-opt-in' into 'master'\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/569614c5d4b0187b9b8c632292d3556ce53e1274\"\u003e\u003ccode\u003e569614c\u003c/code\u003e\u003c/a\u003e address review: empty-BLOB shape parity + re-entrancy note\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/905960c9f78c54b85f29718cc34b69088edb1db2\"\u003e\u003ccode\u003e905960c\u003c/code\u003e\u003c/a\u003e add FunctionImpl.VolatileArgs opt-in for zero-copy TEXT/BLOB args\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://gitlab.com/cznic/sqlite/compare/v1.50.1...v1.51.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\n\n[![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=modernc.org/sqlite\u0026package-manager=go_modules\u0026previous-version=1.50.1\u0026new-version=1.51.0)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)\n\nDependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.\n\n[//]: # (dependabot-automerge-start)\n[//]: # (dependabot-automerge-end)\n\n---\n\n\u003cdetails\u003e\n\u003csummary\u003eDependabot commands and options\u003c/summary\u003e\n\u003cbr /\u003e\n\nYou can trigger Dependabot actions by commenting on this PR:\n- `@dependabot rebase` will rebase this PR\n- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it\n- `@dependabot show \u003cdependency name\u003e ignore conditions` will show all of the ignore conditions of the specified dependency\n- `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)\n- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)\n- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)\n\n\n\u003c/details\u003e","html_url":"https://github.com/kontext-security/kontext-cli/pull/236","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/kontext-security%2Fkontext-cli/issues/236","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/236/packages"}},{"old_version":"1.50.1","new_version":"1.51.0","update_type":"minor","path":null,"pr_created_at":"2026-05-30T00:21:03.000Z","version_change":"1.50.1 → 1.51.0","issue":{"uuid":"4552441423","node_id":"PR_kwDOR48MTc7g2Ofr","number":115,"state":"open","title":"deps: bump modernc.org/sqlite from 1.50.1 to 1.51.0","user":"dependabot[bot]","labels":["dependencies","go"],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":null,"author_association":null,"state_reason":null,"created_at":"2026-05-30T00:21:03.000Z","updated_at":"2026-05-30T00:21:34.000Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"deps","packages":[{"name":"modernc.org/sqlite","old_version":"1.50.1","new_version":"1.51.0","repository_url":null}],"path":null,"ecosystem":"go"},"body":"Bumps [modernc.org/sqlite](https://gitlab.com/cznic/sqlite) from 1.50.1 to 1.51.0.\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://gitlab.com/cznic/sqlite/blob/master/CHANGELOG.md\"\u003emodernc.org/sqlite's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003eChangelog\u003c/h1\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e2026-05-28 v1.52.0:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdd \u003ccode\u003eBackup.Remaining\u003c/code\u003e and \u003ccode\u003eBackup.PageCount\u003c/code\u003e, thin wrappers around the existing \u003ccode\u003esqlite3_backup_remaining\u003c/code\u003e and \u003ccode\u003esqlite3_backup_pagecount\u003c/code\u003e C symbols. Together they expose the per-\u003ccode\u003eStep\u003c/code\u003e progress counters that the underlying backup object already maintains, enabling progress reporting during online backups without dropping to \u003ccode\u003emodernc.org/sqlite/lib\u003c/code\u003e directly.\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/122\"\u003e#122\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/122\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/122\u003c/a\u003e), thanks Ian Chechin!\u003c/li\u003e\n\u003cli\u003eDrop the redundant second copy in \u003ccode\u003e(*conn).columnText\u003c/code\u003e, the path that backs every \u003ccode\u003eRows.Scan\u003c/code\u003e into a Go \u003ccode\u003estring\u003c/code\u003e for a TEXT column. The value's bytes are still copied once out of SQLite-owned memory into a fresh Go buffer; that buffer is then reinterpreted as the result string with \u003ccode\u003eunsafe.String\u003c/code\u003e rather than copied a second time by the implicit \u003ccode\u003estring([]byte)\u003c/code\u003e conversion. This removes one allocation per TEXT value per row and roughly halves the bytes allocated on that path; on the new \u003ccode\u003eBenchmarkColumnTextScan\u003c/code\u003e cases it is ~13–20% faster for payloads of 256 B and larger, with no measurable change for very short strings. Purely internal: no API or behavioral change, and the returned string never aliases SQLite's buffer.\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/123\"\u003e#123\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/123\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/123\u003c/a\u003e), thanks Ian Chechin!\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e2026-05-28 v1.51.0:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003ePool the \u003ccode\u003e[]driver.Value\u003c/code\u003e slice passed to scalar/aggregate UDF callbacks and to vtab \u003ccode\u003eFilter\u003c/code\u003e/\u003ccode\u003eInsert\u003c/code\u003e/\u003ccode\u003eUpdate\u003c/code\u003e callbacks, eliminating the dominant per-row allocation on UDF-heavy queries. Benchmarks on a 1000-row, 3-arg noop scalar UDF show ~40% fewer bytes/op and ~15% fewer allocs/op.\u003c/li\u003e\n\u003cli\u003eDocument the matching \u0026quot;arguments are not valid past return\u0026quot; contract on \u003ccode\u003evtab.Cursor.Filter\u003c/code\u003e and \u003ccode\u003evtab.Updater.Insert\u003c/code\u003e/\u003ccode\u003eUpdate\u003c/code\u003e, consistent with the existing rule for \u003ccode\u003eFunctionImpl.Scalar\u003c/code\u003e / \u003ccode\u003eAggregateFunction.Step\u003c/code\u003e / \u003ccode\u003eWindowInverse\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003eResolves [GitLab issue \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/226\"\u003e#226\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/issues/226\"\u003ehttps://gitlab.com/cznic/sqlite/-/issues/226\u003c/a\u003e). See [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/114\"\u003e#114\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/114\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/114\u003c/a\u003e), thanks Ian Chechin!\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003eFileControl.FileControlDataVersion\u003c/code\u003e, a wrapper around \u003ccode\u003eSQLITE_FCNTL_DATA_VERSION\u003c/code\u003e for observing pager-cache data-version changes, including those made on the same connection. Useful as a primitive for application-level cache invalidation.\u003c/li\u003e\n\u003cli\u003eExposed via the idiomatic \u003ccode\u003edatabase/sql\u003c/code\u003e escape hatch \u003ccode\u003e(*sql.Conn).Raw()\u003c/code\u003e, consistent with the existing \u003ccode\u003eFileControlPersistWAL\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/115\"\u003e#115\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/115\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/115\u003c/a\u003e), thanks Ian Chechin!\u003c/li\u003e\n\u003cli\u003eFix a regression where in-memory connections (\u003ccode\u003e:memory:\u003c/code\u003e, \u003ccode\u003efile::memory:\u003c/code\u003e, shared-cache memory URIs) were discarded by \u003ccode\u003edatabase/sql\u003c/code\u003e after a context-cancelled query, taking the entire in-memory store with them. The fix for \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/198\"\u003e#198\u003c/a\u003e had added an \u003ccode\u003esqlite3_is_interrupted\u003c/code\u003e check to the connection validator that mistakenly applied to in-memory connections too, re-introducing the bug originally fixed by !74. File-backed connections keep the existing behaviour and are still discarded after an interrupt.\u003c/li\u003e\n\u003cli\u003eResolves [GitLab issue \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/196\"\u003e#196\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/issues/196\"\u003ehttps://gitlab.com/cznic/sqlite/-/issues/196\u003c/a\u003e). See [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/116\"\u003e#116\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/116\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/116\u003c/a\u003e), thanks Ian Chechin!\u003c/li\u003e\n\u003cli\u003eAdd an opt-in \u003ccode\u003eFunctionImpl.VolatileArgs\u003c/code\u003e flag that hands TEXT and BLOB arguments to scalar and aggregate UDF callbacks as zero-copy views (\u003ccode\u003eunsafe.String\u003c/code\u003e/\u003ccode\u003eunsafe.Slice\u003c/code\u003e) over SQLite's own value buffers, eliminating the per-argument \u003ccode\u003elibc.GoString\u003c/code\u003e/\u003ccode\u003emake([]byte)\u003c/code\u003e copy that the \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/226\"\u003e#226\u003c/a\u003e slice-pooling left as the remaining per-row allocation. On the same 1000-row, 3-arg (INTEGER/TEXT/BLOB) noop scalar UDF this removes a further ~35% of allocs/op and ~11% of bytes/op on top of \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/226\"\u003e#226\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003eThe views are valid only for the duration of the callback and must not be retained past return or across rows; a callback that needs to keep a value must copy it. With \u003ccode\u003eVolatileArgs\u003c/code\u003e unset (the default) arguments keep the existing copied, caller-owned semantics, so the flag is fully backward compatible; it has no effect on integer, float, time, or NULL arguments.\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/120\"\u003e#120\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/120\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/120\u003c/a\u003e), thanks Ian Chechin!\u003c/li\u003e\n\u003cli\u003eExtend the opt-in \u003ccode\u003eVolatileArgs\u003c/code\u003e zero-copy TEXT/BLOB argument access from \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/120\"\u003e#120\u003c/a\u003e to the virtual-table \u003ccode\u003eCursor.Filter\u003c/code\u003e (\u003ccode\u003exFilter\u003c/code\u003e) and \u003ccode\u003eUpdater.Insert\u003c/code\u003e/\u003ccode\u003eUpdate\u003c/code\u003e (\u003ccode\u003exUpdate\u003c/code\u003e) callbacks. A \u003ccode\u003evtab.Module\u003c/code\u003e opts in by implementing the new optional \u003ccode\u003evtab.VolatileArgsOpter\u003c/code\u003e interface (\u003ccode\u003eVolatileArgs() bool\u003c/code\u003e); the flag is read once at module registration and shared by every table created from it. On a vtab call carrying one TEXT and one BLOB argument this removes 2 allocs/op (one \u003ccode\u003elibc.GoString\u003c/code\u003e, one \u003ccode\u003emake([]byte)\u003c/code\u003e) on each of the Filter and Update paths.\u003c/li\u003e\n\u003cli\u003eThe same safety contract as \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/120\"\u003e#120\u003c/a\u003e applies: the views are valid only for the duration of the callback and must not be retained past return or across rows; a callback that needs to keep a value must copy it. Modules that do not implement \u003ccode\u003eVolatileArgsOpter\u003c/code\u003e (the default for all existing modules) are byte-for-byte unchanged, and the flag has no effect on integer, float, time, or NULL arguments.\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/121\"\u003e#121\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/121\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/121\u003c/a\u003e), thanks Ian Chechin!\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e2026-05-10 v1.50.1:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eUpgrade to \u003ca href=\"https://sqlite.org/releaselog/3_53_1.html\"\u003eSQLite 3.53.1\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e2026-04-24 v1.50.0:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eUpgrade to sqlite-vec \u003ca href=\"https://github.com/asg017/sqlite-vec/releases/tag/v0.1.9\"\u003ev0.1.9\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003eIntroduce \u003ccode\u003eColumnInfo\u003c/code\u003e, enabling dynamic query builders and ORMs to retrieve underlying SQLite C-API metadata (\u003ccode\u003eOriginName\u003c/code\u003e, \u003ccode\u003eTableName\u003c/code\u003e, \u003ccode\u003eDatabaseName\u003c/code\u003e, and \u003ccode\u003eDeclType\u003c/code\u003e).\u003c/li\u003e\n\u003cli\u003eThis feature is exposed via the idiomatic \u003ccode\u003edatabase/sql\u003c/code\u003e escape hatch \u003ccode\u003e(*sql.Conn).Raw()\u003c/code\u003e, avoiding custom statement handles and keeping the standard library workflow intact.\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/113\"\u003e#113\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/113\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/113\u003c/a\u003e), thanks Josh Bleecher Snyder!\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e2026-04-17 v1.49.0: Upgrade to \u003ca href=\"https://sqlite.org/releaselog/3_53_0.html\"\u003eSQLite 3.53.0\u003c/a\u003e.\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdded \u003ccode\u003e-DSQLITE_ENABLE_DBPAGE_VTAB\u003c/code\u003e to the transpilation. See \u003ca href=\"https://www.sqlite.org/dbpage.html\"\u003e\u0026quot;The SQLITE_DBPAGE Virtual Table\u0026quot;\u003c/a\u003e for details.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e2026-04-06 v1.48.2:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eFix ABI mapping mismatch in the pre-update hook trampoline that caused silent truncation of large 64-bit RowIDs.\u003c/li\u003e\n\u003cli\u003eEnsure the Go trampoline signature correctly aligns with the public \u003ccode\u003esqlite3_preupdate_hook\u003c/code\u003e C API, preventing data corruption for high-entropy keys (e.g., Snowflake IDs).\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/98\"\u003e#98\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/98\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/98\u003c/a\u003e), thanks Josh Bleecher Snyder!\u003c/li\u003e\n\u003cli\u003eFix the memory allocator used in \u003ccode\u003e(*conn).Deserialize\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003eReplace \u003ccode\u003etls.Alloc\u003c/code\u003e with \u003ccode\u003esqlite3_malloc64\u003c/code\u003e to prevent internal allocator corruption. This ensures the buffer is safely owned by SQLite, which may resize or free it due to the \u003ccode\u003eSQLITE_DESERIALIZE_RESIZEABLE\u003c/code\u003e and \u003ccode\u003eSQLITE_DESERIALIZE_FREEONCLOSE\u003c/code\u003e flags.\u003c/li\u003e\n\u003cli\u003ePrevent a memory leak by properly freeing the allocated buffer if fetching the main database name fails before handing ownership to SQLite.\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/100\"\u003e#100\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/100\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/100\u003c/a\u003e), thanks Josh Bleecher Snyder!\u003c/li\u003e\n\u003cli\u003eFix \u003ccode\u003e(*conn).Deserialize\u003c/code\u003e to explicitly reject \u003ccode\u003enil\u003c/code\u003e or empty byte slices.\u003c/li\u003e\n\u003cli\u003ePrevent silent database disconnection and connection pool corruption caused by SQLite's default behavior when \u003ccode\u003esqlite3_deserialize\u003c/code\u003e receives a 0-length buffer.\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/101\"\u003e#101\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/101\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/101\u003c/a\u003e), thanks Josh Bleecher Snyder!\u003c/li\u003e\n\u003cli\u003eFix \u003ccode\u003ecommitHookTrampoline\u003c/code\u003e and \u003ccode\u003erollbackHookTrampoline\u003c/code\u003e signatures by removing the unused \u003ccode\u003epCsr\u003c/code\u003e parameter.\u003c/li\u003e\n\u003cli\u003eAligns internal hook callbacks accurately with the underlying SQLite C API, cleaning up the code to prevent potential future confusion or bugs.\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/102\"\u003e#102\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/102\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/102\u003c/a\u003e), thanks Josh Bleecher Snyder!\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/a5f439be99fee4478456048b117d3ca84518d5a7\"\u003e\u003ccode\u003ea5f439b\u003c/code\u003e\u003c/a\u003e CHANGELOG.md: fix release tag\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/41e77be50473b810a66c9beaf6d05d042b2a5556\"\u003e\u003ccode\u003e41e77be\u003c/code\u003e\u003c/a\u003e CHANGELOG.md: document \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/121\"\u003e#121\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/827df98d7342db30f09454eaedfe87ef3e7277db\"\u003e\u003ccode\u003e827df98\u003c/code\u003e\u003c/a\u003e gofmt -l -s -w vtab/*.go\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/0d384cb7dcab26840d003cee10f3ae7ae08a883c\"\u003e\u003ccode\u003e0d384cb\u003c/code\u003e\u003c/a\u003e Merge branch 'feat/vtab-volatile-args-opt-in' into 'master'\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/06e06d50e3bec5f79dd4ad60847a6d6405b76721\"\u003e\u003ccode\u003e06e06d5\u003c/code\u003e\u003c/a\u003e extend VolatileArgs opt-in to vtab Filter and Updater Insert/Update\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/2486abd8b22026a1047cdf67a1b090f3bae4210f\"\u003e\u003ccode\u003e2486abd\u003c/code\u003e\u003c/a\u003e HACKING.md, CLAUDE.md: this repo is not auto-tagged, tagging is manual\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/d808a8f1a5d9651553bea0877197fe1c73dac189\"\u003e\u003ccode\u003ed808a8f\u003c/code\u003e\u003c/a\u003e CHANGELOG.md: document \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/120\"\u003e#120\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/fac1cab20834685f75c7201d756608fd71b71824\"\u003e\u003ccode\u003efac1cab\u003c/code\u003e\u003c/a\u003e Merge branch 'feat/volatile-args-opt-in' into 'master'\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/569614c5d4b0187b9b8c632292d3556ce53e1274\"\u003e\u003ccode\u003e569614c\u003c/code\u003e\u003c/a\u003e address review: empty-BLOB shape parity + re-entrancy note\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/905960c9f78c54b85f29718cc34b69088edb1db2\"\u003e\u003ccode\u003e905960c\u003c/code\u003e\u003c/a\u003e add FunctionImpl.VolatileArgs opt-in for zero-copy TEXT/BLOB args\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://gitlab.com/cznic/sqlite/compare/v1.50.1...v1.51.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\n\n[![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=modernc.org/sqlite\u0026package-manager=go_modules\u0026previous-version=1.50.1\u0026new-version=1.51.0)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)\n\nDependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.\n\n[//]: # (dependabot-automerge-start)\n[//]: # (dependabot-automerge-end)\n\n---\n\n\u003cdetails\u003e\n\u003csummary\u003eDependabot commands and options\u003c/summary\u003e\n\u003cbr /\u003e\n\nYou can trigger Dependabot actions by commenting on this PR:\n- `@dependabot rebase` will rebase this PR\n- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it\n- `@dependabot show \u003cdependency name\u003e ignore conditions` will show all of the ignore conditions of the specified dependency\n- `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)\n- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)\n- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)\n\n\n\u003c/details\u003e","html_url":"https://github.com/LISSConsulting/LISSTech.DrainCtl/pull/115","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/LISSConsulting%2FLISSTech.DrainCtl/issues/115","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/115/packages"}},{"old_version":"1.50.1","new_version":"1.51.0","update_type":"minor","path":null,"pr_created_at":"2026-05-29T08:40:18.000Z","version_change":"1.50.1 → 1.51.0","issue":{"uuid":"4547045437","node_id":"PR_kwDONsZxpM7gkinD","number":911,"state":"closed","title":"chore(deps): bump the minor-patch group across 1 directory with 3 updates","user":"dependabot[bot]","labels":["dependencies","go","size:XS"],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":"2026-06-03T23:21:09.000Z","author_association":null,"state_reason":null,"created_at":"2026-05-29T08:40:18.000Z","updated_at":"2026-06-03T23:21:11.000Z","time_to_close":484851,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"chore(deps): bump","group_name":"minor-patch","update_count":3,"packages":[{"name":"golang.org/x/tools","old_version":"0.44.0","new_version":"0.45.0","repository_url":"https://github.com/golang/tools"},{"name":"modernc.org/sqlite","old_version":"1.50.1","new_version":"1.51.0"},{"name":"tailscale.com","old_version":"1.98.3","new_version":"1.98.5","repository_url":"https://github.com/tailscale/tailscale"}],"path":null,"ecosystem":"go"},"body":"Bumps the minor-patch group with 3 updates in the / directory: [golang.org/x/tools](https://github.com/golang/tools), [modernc.org/sqlite](https://gitlab.com/cznic/sqlite) and [tailscale.com](https://github.com/tailscale/tailscale).\n\nUpdates `golang.org/x/tools` from 0.44.0 to 0.45.0\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/golang/tools/commit/2aabba0e4be44cc8f254ced118a7156d04bbc9f3\"\u003e\u003ccode\u003e2aabba0\u003c/code\u003e\u003c/a\u003e go.mod: update golang.org/x dependencies\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/golang/tools/commit/ef989b3f45baff2849e87f4a70d9a189be5a6959\"\u003e\u003ccode\u003eef989b3\u003c/code\u003e\u003c/a\u003e go/types/internal/play: show Info.Instances[Ident]\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/golang/tools/commit/21d44f2f2bb3f3a8e06e35523d14bb70cb275c89\"\u003e\u003ccode\u003e21d44f2\u003c/code\u003e\u003c/a\u003e go/analysis/passes/inline: document skipping of TestF-\u0026gt;F calls\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/golang/tools/commit/ec83c2190d81a18bbd472cc1498575b168017e5d\"\u003e\u003ccode\u003eec83c21\u003c/code\u003e\u003c/a\u003e go/analysis/passes/modernize: minmax: only remove exact userdefined\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/golang/tools/commit/5625353d39195f1deb9261c5ee983abbdc4a15ca\"\u003e\u003ccode\u003e5625353\u003c/code\u003e\u003c/a\u003e go/analysis/passes/modernize: improve value variable name generation\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/golang/tools/commit/15a3bd5d4ce0651f5cf43ea125db2110c67b257b\"\u003e\u003ccode\u003e15a3bd5\u003c/code\u003e\u003c/a\u003e gopls/internal/analysis/errorsastype: imporove example clarity\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/golang/tools/commit/cd57ef8f8dd7a30ef500bfe1eef0779223cbdfc3\"\u003e\u003ccode\u003ecd57ef8\u003c/code\u003e\u003c/a\u003e go/packages: include dependency errors when CompiledGoFiles is missing\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/golang/tools/commit/053fdbcef55e8f977d8decc0fde2920c61eb5374\"\u003e\u003ccode\u003e053fdbc\u003c/code\u003e\u003c/a\u003e go/analysis/passes/modernize: minmax: fix pure operands only\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/golang/tools/commit/bf84681c4a0185014c089cffd533e22bbeffcb49\"\u003e\u003ccode\u003ebf84681\u003c/code\u003e\u003c/a\u003e go/analysis/passes/errorsas: add example of invalid errors.As use\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/golang/tools/commit/23921d1decfe5da40309ac183353c8cb38b03dfa\"\u003e\u003ccode\u003e23921d1\u003c/code\u003e\u003c/a\u003e gopls: add errorsastype analyzer\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/golang/tools/compare/v0.44.0...v0.45.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `modernc.org/sqlite` from 1.50.1 to 1.51.0\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://gitlab.com/cznic/sqlite/blob/master/CHANGELOG.md\"\u003emodernc.org/sqlite's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003eChangelog\u003c/h1\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e2026-05-28 v1.52.0:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdd \u003ccode\u003eBackup.Remaining\u003c/code\u003e and \u003ccode\u003eBackup.PageCount\u003c/code\u003e, thin wrappers around the existing \u003ccode\u003esqlite3_backup_remaining\u003c/code\u003e and \u003ccode\u003esqlite3_backup_pagecount\u003c/code\u003e C symbols. Together they expose the per-\u003ccode\u003eStep\u003c/code\u003e progress counters that the underlying backup object already maintains, enabling progress reporting during online backups without dropping to \u003ccode\u003emodernc.org/sqlite/lib\u003c/code\u003e directly.\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/122\"\u003e#122\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/122\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/122\u003c/a\u003e), thanks Ian Chechin!\u003c/li\u003e\n\u003cli\u003eDrop the redundant second copy in \u003ccode\u003e(*conn).columnText\u003c/code\u003e, the path that backs every \u003ccode\u003eRows.Scan\u003c/code\u003e into a Go \u003ccode\u003estring\u003c/code\u003e for a TEXT column. The value's bytes are still copied once out of SQLite-owned memory into a fresh Go buffer; that buffer is then reinterpreted as the result string with \u003ccode\u003eunsafe.String\u003c/code\u003e rather than copied a second time by the implicit \u003ccode\u003estring([]byte)\u003c/code\u003e conversion. This removes one allocation per TEXT value per row and roughly halves the bytes allocated on that path; on the new \u003ccode\u003eBenchmarkColumnTextScan\u003c/code\u003e cases it is ~13–20% faster for payloads of 256 B and larger, with no measurable change for very short strings. Purely internal: no API or behavioral change, and the returned string never aliases SQLite's buffer.\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/123\"\u003e#123\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/123\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/123\u003c/a\u003e), thanks Ian Chechin!\u003c/li\u003e\n\u003cli\u003eCache each result column's declared type once per result set in \u003ccode\u003enewRows\u003c/code\u003e instead of recomputing it on every row. The TEXT branch of \u003ccode\u003eRows.Next\u003c/code\u003e calls \u003ccode\u003eColumnTypeDatabaseTypeName\u003c/code\u003e for every TEXT column on every row (independent of any DSN flag), which previously did a \u003ccode\u003elibc.GoString\u003c/code\u003e + \u003ccode\u003estrings.ToUpper\u003c/code\u003e each time; that lookup is now a single index into a cached, pre-uppercased \u003ccode\u003e[]string\u003c/code\u003e, and \u003ccode\u003eColumnTypeScanType\u003c/code\u003e reads the same cache and drops its per-call \u003ccode\u003estrings.ToLower\u003c/code\u003e. The declared type is fixed for the lifetime of a prepared statement, so the C round-trip is paid once per column rather than once per column per row, removing exactly 1 alloc + 8 B per TEXT column per row from the \u003ccode\u003eNext\u003c/code\u003e hot path. The new \u003ccode\u003eBenchmarkTextToTimeScan\u003c/code\u003e cases show ~7% faster on a 1000-row DATETIME SELECT under \u003ccode\u003e_texttotime=1\u003c/code\u003e. Purely internal: \u003ccode\u003eColumnTypeDatabaseTypeName\u003c/code\u003e and \u003ccode\u003eColumnTypeScanType\u003c/code\u003e return identical values, no API or behavioral change.\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/124\"\u003e#124\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/124\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/124\u003c/a\u003e), thanks Ian Chechin!\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e2026-05-28 v1.51.0:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003ePool the \u003ccode\u003e[]driver.Value\u003c/code\u003e slice passed to scalar/aggregate UDF callbacks and to vtab \u003ccode\u003eFilter\u003c/code\u003e/\u003ccode\u003eInsert\u003c/code\u003e/\u003ccode\u003eUpdate\u003c/code\u003e callbacks, eliminating the dominant per-row allocation on UDF-heavy queries. Benchmarks on a 1000-row, 3-arg noop scalar UDF show ~40% fewer bytes/op and ~15% fewer allocs/op.\u003c/li\u003e\n\u003cli\u003eDocument the matching \u0026quot;arguments are not valid past return\u0026quot; contract on \u003ccode\u003evtab.Cursor.Filter\u003c/code\u003e and \u003ccode\u003evtab.Updater.Insert\u003c/code\u003e/\u003ccode\u003eUpdate\u003c/code\u003e, consistent with the existing rule for \u003ccode\u003eFunctionImpl.Scalar\u003c/code\u003e / \u003ccode\u003eAggregateFunction.Step\u003c/code\u003e / \u003ccode\u003eWindowInverse\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003eResolves [GitLab issue \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/226\"\u003e#226\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/issues/226\"\u003ehttps://gitlab.com/cznic/sqlite/-/issues/226\u003c/a\u003e). See [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/114\"\u003e#114\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/114\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/114\u003c/a\u003e), thanks Ian Chechin!\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003eFileControl.FileControlDataVersion\u003c/code\u003e, a wrapper around \u003ccode\u003eSQLITE_FCNTL_DATA_VERSION\u003c/code\u003e for observing pager-cache data-version changes, including those made on the same connection. Useful as a primitive for application-level cache invalidation.\u003c/li\u003e\n\u003cli\u003eExposed via the idiomatic \u003ccode\u003edatabase/sql\u003c/code\u003e escape hatch \u003ccode\u003e(*sql.Conn).Raw()\u003c/code\u003e, consistent with the existing \u003ccode\u003eFileControlPersistWAL\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/115\"\u003e#115\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/115\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/115\u003c/a\u003e), thanks Ian Chechin!\u003c/li\u003e\n\u003cli\u003eFix a regression where in-memory connections (\u003ccode\u003e:memory:\u003c/code\u003e, \u003ccode\u003efile::memory:\u003c/code\u003e, shared-cache memory URIs) were discarded by \u003ccode\u003edatabase/sql\u003c/code\u003e after a context-cancelled query, taking the entire in-memory store with them. The fix for \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/198\"\u003e#198\u003c/a\u003e had added an \u003ccode\u003esqlite3_is_interrupted\u003c/code\u003e check to the connection validator that mistakenly applied to in-memory connections too, re-introducing the bug originally fixed by !74. File-backed connections keep the existing behaviour and are still discarded after an interrupt.\u003c/li\u003e\n\u003cli\u003eResolves [GitLab issue \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/196\"\u003e#196\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/issues/196\"\u003ehttps://gitlab.com/cznic/sqlite/-/issues/196\u003c/a\u003e). See [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/116\"\u003e#116\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/116\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/116\u003c/a\u003e), thanks Ian Chechin!\u003c/li\u003e\n\u003cli\u003eAdd an opt-in \u003ccode\u003eFunctionImpl.VolatileArgs\u003c/code\u003e flag that hands TEXT and BLOB arguments to scalar and aggregate UDF callbacks as zero-copy views (\u003ccode\u003eunsafe.String\u003c/code\u003e/\u003ccode\u003eunsafe.Slice\u003c/code\u003e) over SQLite's own value buffers, eliminating the per-argument \u003ccode\u003elibc.GoString\u003c/code\u003e/\u003ccode\u003emake([]byte)\u003c/code\u003e copy that the \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/226\"\u003e#226\u003c/a\u003e slice-pooling left as the remaining per-row allocation. On the same 1000-row, 3-arg (INTEGER/TEXT/BLOB) noop scalar UDF this removes a further ~35% of allocs/op and ~11% of bytes/op on top of \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/226\"\u003e#226\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003eThe views are valid only for the duration of the callback and must not be retained past return or across rows; a callback that needs to keep a value must copy it. With \u003ccode\u003eVolatileArgs\u003c/code\u003e unset (the default) arguments keep the existing copied, caller-owned semantics, so the flag is fully backward compatible; it has no effect on integer, float, time, or NULL arguments.\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/120\"\u003e#120\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/120\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/120\u003c/a\u003e), thanks Ian Chechin!\u003c/li\u003e\n\u003cli\u003eExtend the opt-in \u003ccode\u003eVolatileArgs\u003c/code\u003e zero-copy TEXT/BLOB argument access from \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/120\"\u003e#120\u003c/a\u003e to the virtual-table \u003ccode\u003eCursor.Filter\u003c/code\u003e (\u003ccode\u003exFilter\u003c/code\u003e) and \u003ccode\u003eUpdater.Insert\u003c/code\u003e/\u003ccode\u003eUpdate\u003c/code\u003e (\u003ccode\u003exUpdate\u003c/code\u003e) callbacks. A \u003ccode\u003evtab.Module\u003c/code\u003e opts in by implementing the new optional \u003ccode\u003evtab.VolatileArgsOpter\u003c/code\u003e interface (\u003ccode\u003eVolatileArgs() bool\u003c/code\u003e); the flag is read once at module registration and shared by every table created from it. On a vtab call carrying one TEXT and one BLOB argument this removes 2 allocs/op (one \u003ccode\u003elibc.GoString\u003c/code\u003e, one \u003ccode\u003emake([]byte)\u003c/code\u003e) on each of the Filter and Update paths.\u003c/li\u003e\n\u003cli\u003eThe same safety contract as \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/120\"\u003e#120\u003c/a\u003e applies: the views are valid only for the duration of the callback and must not be retained past return or across rows; a callback that needs to keep a value must copy it. Modules that do not implement \u003ccode\u003eVolatileArgsOpter\u003c/code\u003e (the default for all existing modules) are byte-for-byte unchanged, and the flag has no effect on integer, float, time, or NULL arguments.\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/121\"\u003e#121\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/121\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/121\u003c/a\u003e), thanks Ian Chechin!\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e2026-05-10 v1.50.1:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eUpgrade to \u003ca href=\"https://sqlite.org/releaselog/3_53_1.html\"\u003eSQLite 3.53.1\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e2026-04-24 v1.50.0:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eUpgrade to sqlite-vec \u003ca href=\"https://github.com/asg017/sqlite-vec/releases/tag/v0.1.9\"\u003ev0.1.9\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003eIntroduce \u003ccode\u003eColumnInfo\u003c/code\u003e, enabling dynamic query builders and ORMs to retrieve underlying SQLite C-API metadata (\u003ccode\u003eOriginName\u003c/code\u003e, \u003ccode\u003eTableName\u003c/code\u003e, \u003ccode\u003eDatabaseName\u003c/code\u003e, and \u003ccode\u003eDeclType\u003c/code\u003e).\u003c/li\u003e\n\u003cli\u003eThis feature is exposed via the idiomatic \u003ccode\u003edatabase/sql\u003c/code\u003e escape hatch \u003ccode\u003e(*sql.Conn).Raw()\u003c/code\u003e, avoiding custom statement handles and keeping the standard library workflow intact.\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/113\"\u003e#113\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/113\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/113\u003c/a\u003e), thanks Josh Bleecher Snyder!\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e2026-04-17 v1.49.0: Upgrade to \u003ca href=\"https://sqlite.org/releaselog/3_53_0.html\"\u003eSQLite 3.53.0\u003c/a\u003e.\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdded \u003ccode\u003e-DSQLITE_ENABLE_DBPAGE_VTAB\u003c/code\u003e to the transpilation. See \u003ca href=\"https://www.sqlite.org/dbpage.html\"\u003e\u0026quot;The SQLITE_DBPAGE Virtual Table\u0026quot;\u003c/a\u003e for details.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e2026-04-06 v1.48.2:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eFix ABI mapping mismatch in the pre-update hook trampoline that caused silent truncation of large 64-bit RowIDs.\u003c/li\u003e\n\u003cli\u003eEnsure the Go trampoline signature correctly aligns with the public \u003ccode\u003esqlite3_preupdate_hook\u003c/code\u003e C API, preventing data corruption for high-entropy keys (e.g., Snowflake IDs).\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/98\"\u003e#98\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/98\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/98\u003c/a\u003e), thanks Josh Bleecher Snyder!\u003c/li\u003e\n\u003cli\u003eFix the memory allocator used in \u003ccode\u003e(*conn).Deserialize\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003eReplace \u003ccode\u003etls.Alloc\u003c/code\u003e with \u003ccode\u003esqlite3_malloc64\u003c/code\u003e to prevent internal allocator corruption. This ensures the buffer is safely owned by SQLite, which may resize or free it due to the \u003ccode\u003eSQLITE_DESERIALIZE_RESIZEABLE\u003c/code\u003e and \u003ccode\u003eSQLITE_DESERIALIZE_FREEONCLOSE\u003c/code\u003e flags.\u003c/li\u003e\n\u003cli\u003ePrevent a memory leak by properly freeing the allocated buffer if fetching the main database name fails before handing ownership to SQLite.\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/100\"\u003e#100\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/100\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/100\u003c/a\u003e), thanks Josh Bleecher Snyder!\u003c/li\u003e\n\u003cli\u003eFix \u003ccode\u003e(*conn).Deserialize\u003c/code\u003e to explicitly reject \u003ccode\u003enil\u003c/code\u003e or empty byte slices.\u003c/li\u003e\n\u003cli\u003ePrevent silent database disconnection and connection pool corruption caused by SQLite's default behavior when \u003ccode\u003esqlite3_deserialize\u003c/code\u003e receives a 0-length buffer.\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/101\"\u003e#101\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/101\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/101\u003c/a\u003e), thanks Josh Bleecher Snyder!\u003c/li\u003e\n\u003cli\u003eFix \u003ccode\u003ecommitHookTrampoline\u003c/code\u003e and \u003ccode\u003erollbackHookTrampoline\u003c/code\u003e signatures by removing the unused \u003ccode\u003epCsr\u003c/code\u003e parameter.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/a5f439be99fee4478456048b117d3ca84518d5a7\"\u003e\u003ccode\u003ea5f439b\u003c/code\u003e\u003c/a\u003e CHANGELOG.md: fix release tag\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/41e77be50473b810a66c9beaf6d05d042b2a5556\"\u003e\u003ccode\u003e41e77be\u003c/code\u003e\u003c/a\u003e CHANGELOG.md: document \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/121\"\u003e#121\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/827df98d7342db30f09454eaedfe87ef3e7277db\"\u003e\u003ccode\u003e827df98\u003c/code\u003e\u003c/a\u003e gofmt -l -s -w vtab/*.go\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/0d384cb7dcab26840d003cee10f3ae7ae08a883c\"\u003e\u003ccode\u003e0d384cb\u003c/code\u003e\u003c/a\u003e Merge branch 'feat/vtab-volatile-args-opt-in' into 'master'\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/06e06d50e3bec5f79dd4ad60847a6d6405b76721\"\u003e\u003ccode\u003e06e06d5\u003c/code\u003e\u003c/a\u003e extend VolatileArgs opt-in to vtab Filter and Updater Insert/Update\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/2486abd8b22026a1047cdf67a1b090f3bae4210f\"\u003e\u003ccode\u003e2486abd\u003c/code\u003e\u003c/a\u003e HACKING.md, CLAUDE.md: this repo is not auto-tagged, tagging is manual\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/d808a8f1a5d9651553bea0877197fe1c73dac189\"\u003e\u003ccode\u003ed808a8f\u003c/code\u003e\u003c/a\u003e CHANGELOG.md: document \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/120\"\u003e#120\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/fac1cab20834685f75c7201d756608fd71b71824\"\u003e\u003ccode\u003efac1cab\u003c/code\u003e\u003c/a\u003e Merge branch 'feat/volatile-args-opt-in' into 'master'\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/569614c5d4b0187b9b8c632292d3556ce53e1274\"\u003e\u003ccode\u003e569614c\u003c/code\u003e\u003c/a\u003e address review: empty-BLOB shape parity + re-entrancy note\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/905960c9f78c54b85f29718cc34b69088edb1db2\"\u003e\u003ccode\u003e905960c\u003c/code\u003e\u003c/a\u003e add FunctionImpl.VolatileArgs opt-in for zero-copy TEXT/BLOB args\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://gitlab.com/cznic/sqlite/compare/v1.50.1...v1.51.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `tailscale.com` from 1.98.3 to 1.98.5\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/tailscale/tailscale/releases\"\u003etailscale.com's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev1.98.5\u003c/h2\u003e\n\u003cp\u003ePlease refer to the changelog available at \u003ca href=\"https://tailscale.com/changelog\"\u003ehttps://tailscale.com/changelog\u003c/a\u003e\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tailscale/tailscale/commit/295179bf294d3d076397bcef6815b1d6854e197d\"\u003e\u003ccode\u003e295179b\u003c/code\u003e\u003c/a\u003e VERSION.txt: this is 1.98.5\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tailscale/tailscale/commit/01c6b9661c9e001674c650fa655e56ee1fda4d90\"\u003e\u003ccode\u003e01c6b96\u003c/code\u003e\u003c/a\u003e VERSION.txt: this is v1.98.4\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tailscale/tailscale/commit/a85a4acce070fd3a4306db8bb21b4e7e7236cfc3\"\u003e\u003ccode\u003ea85a4ac\u003c/code\u003e\u003c/a\u003e control/controlclient: fix deadlock in map session change queue processing (#...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tailscale/tailscale/commit/5f390d4845dfdf469e49109bb0801d757ea18adf\"\u003e\u003ccode\u003e5f390d4\u003c/code\u003e\u003c/a\u003e cmd/containerboot: clamp MSS to PMTU for proxy group pods (\u003ca href=\"https://redirect.github.com/tailscale/tailscale/issues/19686\"\u003e#19686\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/tailscale/tailscale/issues/19900\"\u003e#19900\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tailscale/tailscale/commit/49d7ad38b3a4fdf93b8c27b11b9706ea8e17228f\"\u003e\u003ccode\u003e49d7ad3\u003c/code\u003e\u003c/a\u003e cmd/k8s-operator: fix token exchange for identity federation (\u003ca href=\"https://redirect.github.com/tailscale/tailscale/issues/19845\"\u003e#19845\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/tailscale/tailscale/issues/19897\"\u003e#19897\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/tailscale/tailscale/compare/v1.98.3...v1.98.5\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e","html_url":"https://github.com/tinyauthapp/tinyauth/pull/911","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/tinyauthapp%2Ftinyauth/issues/911","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/911/packages"}},{"old_version":"1.50.0","new_version":"1.51.0","update_type":"minor","path":null,"pr_created_at":"2026-05-29T00:52:12.000Z","version_change":"1.50.0 → 1.51.0","issue":{"uuid":"4544814647","node_id":"PR_kwDORUjCSc7gdP1Y","number":35,"state":"closed","title":"Bump modernc.org/sqlite from 1.50.0 to 1.51.0","user":"dependabot[bot]","labels":["dependencies","go"],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":"2026-06-12T00:43:34.000Z","author_association":null,"state_reason":null,"created_at":"2026-05-29T00:52:12.000Z","updated_at":"2026-06-12T00:43:35.000Z","time_to_close":1209082,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"Bump","packages":[{"name":"modernc.org/sqlite","old_version":"1.50.0","new_version":"1.51.0","repository_url":null}],"path":null,"ecosystem":"go"},"body":"Bumps [modernc.org/sqlite](https://gitlab.com/cznic/sqlite) from 1.50.0 to 1.51.0.\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://gitlab.com/cznic/sqlite/blob/master/CHANGELOG.md\"\u003emodernc.org/sqlite's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003eChangelog\u003c/h1\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e2026-05-28 v1.52.0:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdd \u003ccode\u003eBackup.Remaining\u003c/code\u003e and \u003ccode\u003eBackup.PageCount\u003c/code\u003e, thin wrappers around the existing \u003ccode\u003esqlite3_backup_remaining\u003c/code\u003e and \u003ccode\u003esqlite3_backup_pagecount\u003c/code\u003e C symbols. Together they expose the per-\u003ccode\u003eStep\u003c/code\u003e progress counters that the underlying backup object already maintains, enabling progress reporting during online backups without dropping to \u003ccode\u003emodernc.org/sqlite/lib\u003c/code\u003e directly.\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/122\"\u003e#122\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/122\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/122\u003c/a\u003e), thanks Ian Chechin!\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e2026-05-28 v1.51.0:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003ePool the \u003ccode\u003e[]driver.Value\u003c/code\u003e slice passed to scalar/aggregate UDF callbacks and to vtab \u003ccode\u003eFilter\u003c/code\u003e/\u003ccode\u003eInsert\u003c/code\u003e/\u003ccode\u003eUpdate\u003c/code\u003e callbacks, eliminating the dominant per-row allocation on UDF-heavy queries. Benchmarks on a 1000-row, 3-arg noop scalar UDF show ~40% fewer bytes/op and ~15% fewer allocs/op.\u003c/li\u003e\n\u003cli\u003eDocument the matching \u0026quot;arguments are not valid past return\u0026quot; contract on \u003ccode\u003evtab.Cursor.Filter\u003c/code\u003e and \u003ccode\u003evtab.Updater.Insert\u003c/code\u003e/\u003ccode\u003eUpdate\u003c/code\u003e, consistent with the existing rule for \u003ccode\u003eFunctionImpl.Scalar\u003c/code\u003e / \u003ccode\u003eAggregateFunction.Step\u003c/code\u003e / \u003ccode\u003eWindowInverse\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003eResolves [GitLab issue \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/226\"\u003e#226\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/issues/226\"\u003ehttps://gitlab.com/cznic/sqlite/-/issues/226\u003c/a\u003e). See [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/114\"\u003e#114\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/114\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/114\u003c/a\u003e), thanks Ian Chechin!\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003eFileControl.FileControlDataVersion\u003c/code\u003e, a wrapper around \u003ccode\u003eSQLITE_FCNTL_DATA_VERSION\u003c/code\u003e for observing pager-cache data-version changes, including those made on the same connection. Useful as a primitive for application-level cache invalidation.\u003c/li\u003e\n\u003cli\u003eExposed via the idiomatic \u003ccode\u003edatabase/sql\u003c/code\u003e escape hatch \u003ccode\u003e(*sql.Conn).Raw()\u003c/code\u003e, consistent with the existing \u003ccode\u003eFileControlPersistWAL\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/115\"\u003e#115\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/115\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/115\u003c/a\u003e), thanks Ian Chechin!\u003c/li\u003e\n\u003cli\u003eFix a regression where in-memory connections (\u003ccode\u003e:memory:\u003c/code\u003e, \u003ccode\u003efile::memory:\u003c/code\u003e, shared-cache memory URIs) were discarded by \u003ccode\u003edatabase/sql\u003c/code\u003e after a context-cancelled query, taking the entire in-memory store with them. The fix for \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/198\"\u003e#198\u003c/a\u003e had added an \u003ccode\u003esqlite3_is_interrupted\u003c/code\u003e check to the connection validator that mistakenly applied to in-memory connections too, re-introducing the bug originally fixed by !74. File-backed connections keep the existing behaviour and are still discarded after an interrupt.\u003c/li\u003e\n\u003cli\u003eResolves [GitLab issue \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/196\"\u003e#196\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/issues/196\"\u003ehttps://gitlab.com/cznic/sqlite/-/issues/196\u003c/a\u003e). See [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/116\"\u003e#116\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/116\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/116\u003c/a\u003e), thanks Ian Chechin!\u003c/li\u003e\n\u003cli\u003eAdd an opt-in \u003ccode\u003eFunctionImpl.VolatileArgs\u003c/code\u003e flag that hands TEXT and BLOB arguments to scalar and aggregate UDF callbacks as zero-copy views (\u003ccode\u003eunsafe.String\u003c/code\u003e/\u003ccode\u003eunsafe.Slice\u003c/code\u003e) over SQLite's own value buffers, eliminating the per-argument \u003ccode\u003elibc.GoString\u003c/code\u003e/\u003ccode\u003emake([]byte)\u003c/code\u003e copy that the \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/226\"\u003e#226\u003c/a\u003e slice-pooling left as the remaining per-row allocation. On the same 1000-row, 3-arg (INTEGER/TEXT/BLOB) noop scalar UDF this removes a further ~35% of allocs/op and ~11% of bytes/op on top of \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/226\"\u003e#226\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003eThe views are valid only for the duration of the callback and must not be retained past return or across rows; a callback that needs to keep a value must copy it. With \u003ccode\u003eVolatileArgs\u003c/code\u003e unset (the default) arguments keep the existing copied, caller-owned semantics, so the flag is fully backward compatible; it has no effect on integer, float, time, or NULL arguments.\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/120\"\u003e#120\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/120\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/120\u003c/a\u003e), thanks Ian Chechin!\u003c/li\u003e\n\u003cli\u003eExtend the opt-in \u003ccode\u003eVolatileArgs\u003c/code\u003e zero-copy TEXT/BLOB argument access from \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/120\"\u003e#120\u003c/a\u003e to the virtual-table \u003ccode\u003eCursor.Filter\u003c/code\u003e (\u003ccode\u003exFilter\u003c/code\u003e) and \u003ccode\u003eUpdater.Insert\u003c/code\u003e/\u003ccode\u003eUpdate\u003c/code\u003e (\u003ccode\u003exUpdate\u003c/code\u003e) callbacks. A \u003ccode\u003evtab.Module\u003c/code\u003e opts in by implementing the new optional \u003ccode\u003evtab.VolatileArgsOpter\u003c/code\u003e interface (\u003ccode\u003eVolatileArgs() bool\u003c/code\u003e); the flag is read once at module registration and shared by every table created from it. On a vtab call carrying one TEXT and one BLOB argument this removes 2 allocs/op (one \u003ccode\u003elibc.GoString\u003c/code\u003e, one \u003ccode\u003emake([]byte)\u003c/code\u003e) on each of the Filter and Update paths.\u003c/li\u003e\n\u003cli\u003eThe same safety contract as \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/120\"\u003e#120\u003c/a\u003e applies: the views are valid only for the duration of the callback and must not be retained past return or across rows; a callback that needs to keep a value must copy it. Modules that do not implement \u003ccode\u003eVolatileArgsOpter\u003c/code\u003e (the default for all existing modules) are byte-for-byte unchanged, and the flag has no effect on integer, float, time, or NULL arguments.\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/121\"\u003e#121\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/121\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/121\u003c/a\u003e), thanks Ian Chechin!\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e2026-05-10 v1.50.1:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eUpgrade to \u003ca href=\"https://sqlite.org/releaselog/3_53_1.html\"\u003eSQLite 3.53.1\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e2026-04-24 v1.50.0:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eUpgrade to sqlite-vec \u003ca href=\"https://github.com/asg017/sqlite-vec/releases/tag/v0.1.9\"\u003ev0.1.9\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003eIntroduce \u003ccode\u003eColumnInfo\u003c/code\u003e, enabling dynamic query builders and ORMs to retrieve underlying SQLite C-API metadata (\u003ccode\u003eOriginName\u003c/code\u003e, \u003ccode\u003eTableName\u003c/code\u003e, \u003ccode\u003eDatabaseName\u003c/code\u003e, and \u003ccode\u003eDeclType\u003c/code\u003e).\u003c/li\u003e\n\u003cli\u003eThis feature is exposed via the idiomatic \u003ccode\u003edatabase/sql\u003c/code\u003e escape hatch \u003ccode\u003e(*sql.Conn).Raw()\u003c/code\u003e, avoiding custom statement handles and keeping the standard library workflow intact.\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/113\"\u003e#113\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/113\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/113\u003c/a\u003e), thanks Josh Bleecher Snyder!\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e2026-04-17 v1.49.0: Upgrade to \u003ca href=\"https://sqlite.org/releaselog/3_53_0.html\"\u003eSQLite 3.53.0\u003c/a\u003e.\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdded \u003ccode\u003e-DSQLITE_ENABLE_DBPAGE_VTAB\u003c/code\u003e to the transpilation. See \u003ca href=\"https://www.sqlite.org/dbpage.html\"\u003e\u0026quot;The SQLITE_DBPAGE Virtual Table\u0026quot;\u003c/a\u003e for details.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e2026-04-06 v1.48.2:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eFix ABI mapping mismatch in the pre-update hook trampoline that caused silent truncation of large 64-bit RowIDs.\u003c/li\u003e\n\u003cli\u003eEnsure the Go trampoline signature correctly aligns with the public \u003ccode\u003esqlite3_preupdate_hook\u003c/code\u003e C API, preventing data corruption for high-entropy keys (e.g., Snowflake IDs).\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/98\"\u003e#98\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/98\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/98\u003c/a\u003e), thanks Josh Bleecher Snyder!\u003c/li\u003e\n\u003cli\u003eFix the memory allocator used in \u003ccode\u003e(*conn).Deserialize\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003eReplace \u003ccode\u003etls.Alloc\u003c/code\u003e with \u003ccode\u003esqlite3_malloc64\u003c/code\u003e to prevent internal allocator corruption. This ensures the buffer is safely owned by SQLite, which may resize or free it due to the \u003ccode\u003eSQLITE_DESERIALIZE_RESIZEABLE\u003c/code\u003e and \u003ccode\u003eSQLITE_DESERIALIZE_FREEONCLOSE\u003c/code\u003e flags.\u003c/li\u003e\n\u003cli\u003ePrevent a memory leak by properly freeing the allocated buffer if fetching the main database name fails before handing ownership to SQLite.\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/100\"\u003e#100\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/100\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/100\u003c/a\u003e), thanks Josh Bleecher Snyder!\u003c/li\u003e\n\u003cli\u003eFix \u003ccode\u003e(*conn).Deserialize\u003c/code\u003e to explicitly reject \u003ccode\u003enil\u003c/code\u003e or empty byte slices.\u003c/li\u003e\n\u003cli\u003ePrevent silent database disconnection and connection pool corruption caused by SQLite's default behavior when \u003ccode\u003esqlite3_deserialize\u003c/code\u003e receives a 0-length buffer.\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/101\"\u003e#101\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/101\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/101\u003c/a\u003e), thanks Josh Bleecher Snyder!\u003c/li\u003e\n\u003cli\u003eFix \u003ccode\u003ecommitHookTrampoline\u003c/code\u003e and \u003ccode\u003erollbackHookTrampoline\u003c/code\u003e signatures by removing the unused \u003ccode\u003epCsr\u003c/code\u003e parameter.\u003c/li\u003e\n\u003cli\u003eAligns internal hook callbacks accurately with the underlying SQLite C API, cleaning up the code to prevent potential future confusion or bugs.\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/102\"\u003e#102\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/102\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/102\u003c/a\u003e), thanks Josh Bleecher Snyder!\u003c/li\u003e\n\u003cli\u003eFix \u003ccode\u003echeckptr\u003c/code\u003e instrumentation failures during \u003ccode\u003ego test -race\u003c/code\u003e when registering and using virtual tables (\u003ccode\u003evtab\u003c/code\u003e).\u003c/li\u003e\n\u003cli\u003eAllocate \u003ccode\u003esqlite3_module\u003c/code\u003e instances using the C allocator (\u003ccode\u003elibc.Xcalloc\u003c/code\u003e) instead of the Go heap. This ensures transpiled C code can safely perform pointer operations on the struct without tripping Go's pointer checks.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/a5f439be99fee4478456048b117d3ca84518d5a7\"\u003e\u003ccode\u003ea5f439b\u003c/code\u003e\u003c/a\u003e CHANGELOG.md: fix release tag\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/41e77be50473b810a66c9beaf6d05d042b2a5556\"\u003e\u003ccode\u003e41e77be\u003c/code\u003e\u003c/a\u003e CHANGELOG.md: document \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/121\"\u003e#121\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/827df98d7342db30f09454eaedfe87ef3e7277db\"\u003e\u003ccode\u003e827df98\u003c/code\u003e\u003c/a\u003e gofmt -l -s -w vtab/*.go\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/0d384cb7dcab26840d003cee10f3ae7ae08a883c\"\u003e\u003ccode\u003e0d384cb\u003c/code\u003e\u003c/a\u003e Merge branch 'feat/vtab-volatile-args-opt-in' into 'master'\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/06e06d50e3bec5f79dd4ad60847a6d6405b76721\"\u003e\u003ccode\u003e06e06d5\u003c/code\u003e\u003c/a\u003e extend VolatileArgs opt-in to vtab Filter and Updater Insert/Update\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/2486abd8b22026a1047cdf67a1b090f3bae4210f\"\u003e\u003ccode\u003e2486abd\u003c/code\u003e\u003c/a\u003e HACKING.md, CLAUDE.md: this repo is not auto-tagged, tagging is manual\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/d808a8f1a5d9651553bea0877197fe1c73dac189\"\u003e\u003ccode\u003ed808a8f\u003c/code\u003e\u003c/a\u003e CHANGELOG.md: document \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/120\"\u003e#120\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/fac1cab20834685f75c7201d756608fd71b71824\"\u003e\u003ccode\u003efac1cab\u003c/code\u003e\u003c/a\u003e Merge branch 'feat/volatile-args-opt-in' into 'master'\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/569614c5d4b0187b9b8c632292d3556ce53e1274\"\u003e\u003ccode\u003e569614c\u003c/code\u003e\u003c/a\u003e address review: empty-BLOB shape parity + re-entrancy note\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/905960c9f78c54b85f29718cc34b69088edb1db2\"\u003e\u003ccode\u003e905960c\u003c/code\u003e\u003c/a\u003e add FunctionImpl.VolatileArgs opt-in for zero-copy TEXT/BLOB args\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://gitlab.com/cznic/sqlite/compare/v1.50.0...v1.51.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\n\n[![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=modernc.org/sqlite\u0026package-manager=go_modules\u0026previous-version=1.50.0\u0026new-version=1.51.0)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)\n\nDependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.\n\n[//]: # (dependabot-automerge-start)\n[//]: # (dependabot-automerge-end)\n\n---\n\n\u003cdetails\u003e\n\u003csummary\u003eDependabot commands and options\u003c/summary\u003e\n\u003cbr /\u003e\n\nYou can trigger Dependabot actions by commenting on this PR:\n- `@dependabot rebase` will rebase this PR\n- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it\n- `@dependabot show \u003cdependency name\u003e ignore conditions` will show all of the ignore conditions of the specified dependency\n- `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)\n- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)\n- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)\n\n\n\u003c/details\u003e","html_url":"https://github.com/mkoepf/photoo/pull/35","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/mkoepf%2Fphotoo/issues/35","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/35/packages"}},{"old_version":"1.49.1","new_version":"1.51.0","update_type":"minor","path":null,"pr_created_at":"2026-05-29T00:08:46.000Z","version_change":"1.49.1 → 1.51.0","issue":{"uuid":"4544657725","node_id":"PR_kwDOB1EGJs7gcvuE","number":582,"state":"open","title":"chore(deps): bump modernc.org/sqlite from 1.49.1 to 1.51.0","user":"dependabot[bot]","labels":["dependencies","go"],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":null,"author_association":null,"state_reason":null,"created_at":"2026-05-29T00:08:46.000Z","updated_at":"2026-05-29T00:10:52.000Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"chore(deps)","packages":[{"name":"modernc.org/sqlite","old_version":"1.49.1","new_version":"1.51.0","repository_url":null}],"path":null,"ecosystem":"go"},"body":"Bumps [modernc.org/sqlite](https://gitlab.com/cznic/sqlite) from 1.49.1 to 1.51.0.\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://gitlab.com/cznic/sqlite/blob/master/CHANGELOG.md\"\u003emodernc.org/sqlite's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003eChangelog\u003c/h1\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e2026-05-28 v1.52.0:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdd \u003ccode\u003eBackup.Remaining\u003c/code\u003e and \u003ccode\u003eBackup.PageCount\u003c/code\u003e, thin wrappers around the existing \u003ccode\u003esqlite3_backup_remaining\u003c/code\u003e and \u003ccode\u003esqlite3_backup_pagecount\u003c/code\u003e C symbols. Together they expose the per-\u003ccode\u003eStep\u003c/code\u003e progress counters that the underlying backup object already maintains, enabling progress reporting during online backups without dropping to \u003ccode\u003emodernc.org/sqlite/lib\u003c/code\u003e directly.\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/122\"\u003e#122\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/122\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/122\u003c/a\u003e), thanks Ian Chechin!\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e2026-05-28 v1.51.0:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003ePool the \u003ccode\u003e[]driver.Value\u003c/code\u003e slice passed to scalar/aggregate UDF callbacks and to vtab \u003ccode\u003eFilter\u003c/code\u003e/\u003ccode\u003eInsert\u003c/code\u003e/\u003ccode\u003eUpdate\u003c/code\u003e callbacks, eliminating the dominant per-row allocation on UDF-heavy queries. Benchmarks on a 1000-row, 3-arg noop scalar UDF show ~40% fewer bytes/op and ~15% fewer allocs/op.\u003c/li\u003e\n\u003cli\u003eDocument the matching \u0026quot;arguments are not valid past return\u0026quot; contract on \u003ccode\u003evtab.Cursor.Filter\u003c/code\u003e and \u003ccode\u003evtab.Updater.Insert\u003c/code\u003e/\u003ccode\u003eUpdate\u003c/code\u003e, consistent with the existing rule for \u003ccode\u003eFunctionImpl.Scalar\u003c/code\u003e / \u003ccode\u003eAggregateFunction.Step\u003c/code\u003e / \u003ccode\u003eWindowInverse\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003eResolves [GitLab issue \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/226\"\u003e#226\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/issues/226\"\u003ehttps://gitlab.com/cznic/sqlite/-/issues/226\u003c/a\u003e). See [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/114\"\u003e#114\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/114\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/114\u003c/a\u003e), thanks Ian Chechin!\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003eFileControl.FileControlDataVersion\u003c/code\u003e, a wrapper around \u003ccode\u003eSQLITE_FCNTL_DATA_VERSION\u003c/code\u003e for observing pager-cache data-version changes, including those made on the same connection. Useful as a primitive for application-level cache invalidation.\u003c/li\u003e\n\u003cli\u003eExposed via the idiomatic \u003ccode\u003edatabase/sql\u003c/code\u003e escape hatch \u003ccode\u003e(*sql.Conn).Raw()\u003c/code\u003e, consistent with the existing \u003ccode\u003eFileControlPersistWAL\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/115\"\u003e#115\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/115\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/115\u003c/a\u003e), thanks Ian Chechin!\u003c/li\u003e\n\u003cli\u003eFix a regression where in-memory connections (\u003ccode\u003e:memory:\u003c/code\u003e, \u003ccode\u003efile::memory:\u003c/code\u003e, shared-cache memory URIs) were discarded by \u003ccode\u003edatabase/sql\u003c/code\u003e after a context-cancelled query, taking the entire in-memory store with them. The fix for \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/198\"\u003e#198\u003c/a\u003e had added an \u003ccode\u003esqlite3_is_interrupted\u003c/code\u003e check to the connection validator that mistakenly applied to in-memory connections too, re-introducing the bug originally fixed by !74. File-backed connections keep the existing behaviour and are still discarded after an interrupt.\u003c/li\u003e\n\u003cli\u003eResolves [GitLab issue \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/196\"\u003e#196\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/issues/196\"\u003ehttps://gitlab.com/cznic/sqlite/-/issues/196\u003c/a\u003e). See [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/116\"\u003e#116\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/116\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/116\u003c/a\u003e), thanks Ian Chechin!\u003c/li\u003e\n\u003cli\u003eAdd an opt-in \u003ccode\u003eFunctionImpl.VolatileArgs\u003c/code\u003e flag that hands TEXT and BLOB arguments to scalar and aggregate UDF callbacks as zero-copy views (\u003ccode\u003eunsafe.String\u003c/code\u003e/\u003ccode\u003eunsafe.Slice\u003c/code\u003e) over SQLite's own value buffers, eliminating the per-argument \u003ccode\u003elibc.GoString\u003c/code\u003e/\u003ccode\u003emake([]byte)\u003c/code\u003e copy that the \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/226\"\u003e#226\u003c/a\u003e slice-pooling left as the remaining per-row allocation. On the same 1000-row, 3-arg (INTEGER/TEXT/BLOB) noop scalar UDF this removes a further ~35% of allocs/op and ~11% of bytes/op on top of \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/226\"\u003e#226\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003eThe views are valid only for the duration of the callback and must not be retained past return or across rows; a callback that needs to keep a value must copy it. With \u003ccode\u003eVolatileArgs\u003c/code\u003e unset (the default) arguments keep the existing copied, caller-owned semantics, so the flag is fully backward compatible; it has no effect on integer, float, time, or NULL arguments.\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/120\"\u003e#120\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/120\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/120\u003c/a\u003e), thanks Ian Chechin!\u003c/li\u003e\n\u003cli\u003eExtend the opt-in \u003ccode\u003eVolatileArgs\u003c/code\u003e zero-copy TEXT/BLOB argument access from \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/120\"\u003e#120\u003c/a\u003e to the virtual-table \u003ccode\u003eCursor.Filter\u003c/code\u003e (\u003ccode\u003exFilter\u003c/code\u003e) and \u003ccode\u003eUpdater.Insert\u003c/code\u003e/\u003ccode\u003eUpdate\u003c/code\u003e (\u003ccode\u003exUpdate\u003c/code\u003e) callbacks. A \u003ccode\u003evtab.Module\u003c/code\u003e opts in by implementing the new optional \u003ccode\u003evtab.VolatileArgsOpter\u003c/code\u003e interface (\u003ccode\u003eVolatileArgs() bool\u003c/code\u003e); the flag is read once at module registration and shared by every table created from it. On a vtab call carrying one TEXT and one BLOB argument this removes 2 allocs/op (one \u003ccode\u003elibc.GoString\u003c/code\u003e, one \u003ccode\u003emake([]byte)\u003c/code\u003e) on each of the Filter and Update paths.\u003c/li\u003e\n\u003cli\u003eThe same safety contract as \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/120\"\u003e#120\u003c/a\u003e applies: the views are valid only for the duration of the callback and must not be retained past return or across rows; a callback that needs to keep a value must copy it. Modules that do not implement \u003ccode\u003eVolatileArgsOpter\u003c/code\u003e (the default for all existing modules) are byte-for-byte unchanged, and the flag has no effect on integer, float, time, or NULL arguments.\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/121\"\u003e#121\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/121\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/121\u003c/a\u003e), thanks Ian Chechin!\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e2026-05-10 v1.50.1:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eUpgrade to \u003ca href=\"https://sqlite.org/releaselog/3_53_1.html\"\u003eSQLite 3.53.1\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e2026-04-24 v1.50.0:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eUpgrade to sqlite-vec \u003ca href=\"https://github.com/asg017/sqlite-vec/releases/tag/v0.1.9\"\u003ev0.1.9\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003eIntroduce \u003ccode\u003eColumnInfo\u003c/code\u003e, enabling dynamic query builders and ORMs to retrieve underlying SQLite C-API metadata (\u003ccode\u003eOriginName\u003c/code\u003e, \u003ccode\u003eTableName\u003c/code\u003e, \u003ccode\u003eDatabaseName\u003c/code\u003e, and \u003ccode\u003eDeclType\u003c/code\u003e).\u003c/li\u003e\n\u003cli\u003eThis feature is exposed via the idiomatic \u003ccode\u003edatabase/sql\u003c/code\u003e escape hatch \u003ccode\u003e(*sql.Conn).Raw()\u003c/code\u003e, avoiding custom statement handles and keeping the standard library workflow intact.\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/113\"\u003e#113\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/113\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/113\u003c/a\u003e), thanks Josh Bleecher Snyder!\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e2026-04-17 v1.49.0: Upgrade to \u003ca href=\"https://sqlite.org/releaselog/3_53_0.html\"\u003eSQLite 3.53.0\u003c/a\u003e.\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdded \u003ccode\u003e-DSQLITE_ENABLE_DBPAGE_VTAB\u003c/code\u003e to the transpilation. See \u003ca href=\"https://www.sqlite.org/dbpage.html\"\u003e\u0026quot;The SQLITE_DBPAGE Virtual Table\u0026quot;\u003c/a\u003e for details.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e2026-04-06 v1.48.2:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eFix ABI mapping mismatch in the pre-update hook trampoline that caused silent truncation of large 64-bit RowIDs.\u003c/li\u003e\n\u003cli\u003eEnsure the Go trampoline signature correctly aligns with the public \u003ccode\u003esqlite3_preupdate_hook\u003c/code\u003e C API, preventing data corruption for high-entropy keys (e.g., Snowflake IDs).\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/98\"\u003e#98\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/98\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/98\u003c/a\u003e), thanks Josh Bleecher Snyder!\u003c/li\u003e\n\u003cli\u003eFix the memory allocator used in \u003ccode\u003e(*conn).Deserialize\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003eReplace \u003ccode\u003etls.Alloc\u003c/code\u003e with \u003ccode\u003esqlite3_malloc64\u003c/code\u003e to prevent internal allocator corruption. This ensures the buffer is safely owned by SQLite, which may resize or free it due to the \u003ccode\u003eSQLITE_DESERIALIZE_RESIZEABLE\u003c/code\u003e and \u003ccode\u003eSQLITE_DESERIALIZE_FREEONCLOSE\u003c/code\u003e flags.\u003c/li\u003e\n\u003cli\u003ePrevent a memory leak by properly freeing the allocated buffer if fetching the main database name fails before handing ownership to SQLite.\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/100\"\u003e#100\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/100\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/100\u003c/a\u003e), thanks Josh Bleecher Snyder!\u003c/li\u003e\n\u003cli\u003eFix \u003ccode\u003e(*conn).Deserialize\u003c/code\u003e to explicitly reject \u003ccode\u003enil\u003c/code\u003e or empty byte slices.\u003c/li\u003e\n\u003cli\u003ePrevent silent database disconnection and connection pool corruption caused by SQLite's default behavior when \u003ccode\u003esqlite3_deserialize\u003c/code\u003e receives a 0-length buffer.\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/101\"\u003e#101\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/101\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/101\u003c/a\u003e), thanks Josh Bleecher Snyder!\u003c/li\u003e\n\u003cli\u003eFix \u003ccode\u003ecommitHookTrampoline\u003c/code\u003e and \u003ccode\u003erollbackHookTrampoline\u003c/code\u003e signatures by removing the unused \u003ccode\u003epCsr\u003c/code\u003e parameter.\u003c/li\u003e\n\u003cli\u003eAligns internal hook callbacks accurately with the underlying SQLite C API, cleaning up the code to prevent potential future confusion or bugs.\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/102\"\u003e#102\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/102\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/102\u003c/a\u003e), thanks Josh Bleecher Snyder!\u003c/li\u003e\n\u003cli\u003eFix \u003ccode\u003echeckptr\u003c/code\u003e instrumentation failures during \u003ccode\u003ego test -race\u003c/code\u003e when registering and using virtual tables (\u003ccode\u003evtab\u003c/code\u003e).\u003c/li\u003e\n\u003cli\u003eAllocate \u003ccode\u003esqlite3_module\u003c/code\u003e instances using the C allocator (\u003ccode\u003elibc.Xcalloc\u003c/code\u003e) instead of the Go heap. This ensures transpiled C code can safely perform pointer operations on the struct without tripping Go's pointer checks.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/a5f439be99fee4478456048b117d3ca84518d5a7\"\u003e\u003ccode\u003ea5f439b\u003c/code\u003e\u003c/a\u003e CHANGELOG.md: fix release tag\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/41e77be50473b810a66c9beaf6d05d042b2a5556\"\u003e\u003ccode\u003e41e77be\u003c/code\u003e\u003c/a\u003e CHANGELOG.md: document \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/121\"\u003e#121\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/827df98d7342db30f09454eaedfe87ef3e7277db\"\u003e\u003ccode\u003e827df98\u003c/code\u003e\u003c/a\u003e gofmt -l -s -w vtab/*.go\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/0d384cb7dcab26840d003cee10f3ae7ae08a883c\"\u003e\u003ccode\u003e0d384cb\u003c/code\u003e\u003c/a\u003e Merge branch 'feat/vtab-volatile-args-opt-in' into 'master'\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/06e06d50e3bec5f79dd4ad60847a6d6405b76721\"\u003e\u003ccode\u003e06e06d5\u003c/code\u003e\u003c/a\u003e extend VolatileArgs opt-in to vtab Filter and Updater Insert/Update\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/2486abd8b22026a1047cdf67a1b090f3bae4210f\"\u003e\u003ccode\u003e2486abd\u003c/code\u003e\u003c/a\u003e HACKING.md, CLAUDE.md: this repo is not auto-tagged, tagging is manual\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/d808a8f1a5d9651553bea0877197fe1c73dac189\"\u003e\u003ccode\u003ed808a8f\u003c/code\u003e\u003c/a\u003e CHANGELOG.md: document \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/120\"\u003e#120\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/fac1cab20834685f75c7201d756608fd71b71824\"\u003e\u003ccode\u003efac1cab\u003c/code\u003e\u003c/a\u003e Merge branch 'feat/volatile-args-opt-in' into 'master'\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/569614c5d4b0187b9b8c632292d3556ce53e1274\"\u003e\u003ccode\u003e569614c\u003c/code\u003e\u003c/a\u003e address review: empty-BLOB shape parity + re-entrancy note\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/905960c9f78c54b85f29718cc34b69088edb1db2\"\u003e\u003ccode\u003e905960c\u003c/code\u003e\u003c/a\u003e add FunctionImpl.VolatileArgs opt-in for zero-copy TEXT/BLOB args\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://gitlab.com/cznic/sqlite/compare/v1.49.1...v1.51.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\n\n[![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=modernc.org/sqlite\u0026package-manager=go_modules\u0026previous-version=1.49.1\u0026new-version=1.51.0)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)\n\nDependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.\n\n[//]: # (dependabot-automerge-start)\n[//]: # (dependabot-automerge-end)\n\n---\n\n\u003cdetails\u003e\n\u003csummary\u003eDependabot commands and options\u003c/summary\u003e\n\u003cbr /\u003e\n\nYou can trigger Dependabot actions by commenting on this PR:\n- `@dependabot rebase` will rebase this PR\n- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it\n- `@dependabot show \u003cdependency name\u003e ignore conditions` will show all of the ignore conditions of the specified dependency\n- `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)\n- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)\n- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)\n\n\n\u003c/details\u003e","html_url":"https://github.com/dundee/gdu/pull/582","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/dundee%2Fgdu/issues/582","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/582/packages"}},{"old_version":"1.48.1","new_version":"1.51.0","update_type":"minor","path":null,"pr_created_at":"2026-05-28T21:03:15.000Z","version_change":"1.48.1 → 1.51.0","issue":{"uuid":"4543804226","node_id":"PR_kwDOHI_2wc7gZ-IG","number":1292,"state":"closed","title":"chore: bump the engine group across 1 directory with 50 updates","user":"dependabot[bot]","labels":[],"assignees":[],"locked":false,"comments_count":2,"pull_request":true,"closed_at":"2026-06-12T01:24:26.000Z","author_association":null,"state_reason":null,"created_at":"2026-05-28T21:03:15.000Z","updated_at":"2026-06-12T01:24:28.000Z","time_to_close":1225271,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"chore: bump","group_name":"engine","update_count":50,"packages":[{"name":"charm.land/lipgloss/v2","old_version":"2.0.2","new_version":"2.0.3","repository_url":"https://github.com/charmbracelet/lipgloss"},{"name":"cloud.google.com/go/secretmanager","old_version":"1.16.0","new_version":"1.20.0","repository_url":"https://github.com/googleapis/google-cloud-go"},{"name":"github.com/1password/onepassword-sdk-go","old_version":"0.3.1","new_version":"0.4.0","repository_url":"https://github.com/1password/onepassword-sdk-go"},{"name":"github.com/99designs/gqlgen","old_version":"0.17.89","new_version":"0.17.90","repository_url":"https://github.com/99designs/gqlgen"},{"name":"github.com/alecthomas/chroma/v2","old_version":"2.23.1","new_version":"2.26.1","repository_url":"https://github.com/alecthomas/chroma"},{"name":"github.com/anthropics/anthropic-sdk-go","old_version":"1.30.0","new_version":"1.46.0","repository_url":"https://github.com/anthropics/anthropic-sdk-go"},{"name":"github.com/aws/aws-sdk-go-v2","old_version":"1.41.5","new_version":"1.41.9","repository_url":"https://github.com/aws/aws-sdk-go-v2"},{"name":"github.com/aws/aws-sdk-go-v2/config","old_version":"1.32.14","new_version":"1.32.20","repository_url":"https://github.com/aws/aws-sdk-go-v2"},{"name":"github.com/aws/aws-sdk-go-v2/service/secretsmanager","old_version":"1.41.5","new_version":"1.41.9","repository_url":"https://github.com/aws/aws-sdk-go-v2"},{"name":"github.com/aws/aws-sdk-go-v2/service/ssm","old_version":"1.68.4","new_version":"1.68.8","repository_url":"https://github.com/aws/aws-sdk-go-v2"},{"name":"github.com/containerd/containerd/api","old_version":"1.10.0","new_version":"1.11.1","repository_url":"https://github.com/containerd/containerd"},{"name":"github.com/containerd/containerd/v2","old_version":"2.2.3","new_version":"2.3.1","repository_url":"https://github.com/containerd/containerd"},{"name":"github.com/containerd/fuse-overlayfs-snapshotter/v2","old_version":"2.1.2","new_version":"2.1.7","repository_url":"https://github.com/containerd/fuse-overlayfs-snapshotter"},{"name":"github.com/containerd/typeurl/v2","old_version":"2.2.3","new_version":"2.3.0","repository_url":"https://github.com/containerd/typeurl"},{"name":"github.com/docker/cli","old_version":"29.3.1+incompatible","new_version":"29.5.2+incompatible","repository_url":"https://github.com/docker/cli"},{"name":"github.com/docker/go-connections","old_version":"0.6.0","new_version":"0.7.0","repository_url":"https://github.com/docker/go-connections"},{"name":"github.com/go-git/go-git/v5","old_version":"5.17.2","new_version":"5.19.1","repository_url":"https://github.com/go-git/go-git"},{"name":"github.com/google/go-containerregistry","old_version":"0.21.4","new_version":"0.21.6","repository_url":"https://github.com/google/go-containerregistry"},{"name":"github.com/goproxy/goproxy","old_version":"0.26.0","new_version":"0.26.1","repository_url":"https://github.com/goproxy/goproxy"},{"name":"github.com/in-toto/in-toto-golang","old_version":"0.10.0","new_version":"0.11.0","repository_url":"https://github.com/in-toto/in-toto-golang"},{"name":"github.com/invopop/jsonschema","old_version":"0.13.0","new_version":"0.14.0","repository_url":"https://github.com/invopop/jsonschema"},{"name":"github.com/jackpal/gateway","old_version":"1.1.1","new_version":"1.2.0","repository_url":"https://github.com/jackpal/gateway"},{"name":"github.com/mark3labs/mcp-go","old_version":"0.47.0","new_version":"0.54.1","repository_url":"https://github.com/mark3labs/mcp-go"},{"name":"github.com/moby/go-archive","old_version":"0.1.0","new_version":"0.2.0","repository_url":"https://github.com/moby/go-archive"},{"name":"github.com/modelcontextprotocol/go-sdk","old_version":"1.4.1","new_version":"1.6.1","repository_url":"https://github.com/modelcontextprotocol/go-sdk"},{"name":"github.com/opencontainers/selinux","old_version":"1.13.1","new_version":"1.15.1","repository_url":"https://github.com/opencontainers/selinux"},{"name":"github.com/package-url/packageurl-go","old_version":"0.1.5","new_version":"0.1.6","repository_url":"https://github.com/package-url/packageurl-go"},{"name":"github.com/tidwall/gjson","old_version":"1.18.0","new_version":"1.19.0","repository_url":"https://github.com/tidwall/gjson"},{"name":"golang.org/x/sys","old_version":"0.44.0","new_version":"0.45.0","repository_url":"https://github.com/golang/sys"},{"name":"google.golang.org/genai","old_version":"1.52.1","new_version":"1.58.0","repository_url":"https://github.com/googleapis/go-genai"},{"name":"google.golang.org/grpc","old_version":"1.80.0","new_version":"1.81.1","repository_url":"https://github.com/grpc/grpc-go"},{"name":"modernc.org/sqlite","old_version":"1.48.1","new_version":"1.51.0"}],"path":null,"ecosystem":"go"},"body":"Bumps the engine group with 32 updates in the / directory:\n\n| Package | From | To |\n| --- | --- | --- |\n| [charm.land/lipgloss/v2](https://github.com/charmbracelet/lipgloss) | `2.0.2` | `2.0.3` |\n| [cloud.google.com/go/secretmanager](https://github.com/googleapis/google-cloud-go) | `1.16.0` | `1.20.0` |\n| [github.com/1password/onepassword-sdk-go](https://github.com/1password/onepassword-sdk-go) | `0.3.1` | `0.4.0` |\n| [github.com/99designs/gqlgen](https://github.com/99designs/gqlgen) | `0.17.89` | `0.17.90` |\n| [github.com/alecthomas/chroma/v2](https://github.com/alecthomas/chroma) | `2.23.1` | `2.26.1` |\n| [github.com/anthropics/anthropic-sdk-go](https://github.com/anthropics/anthropic-sdk-go) | `1.30.0` | `1.46.0` |\n| [github.com/aws/aws-sdk-go-v2](https://github.com/aws/aws-sdk-go-v2) | `1.41.5` | `1.41.9` |\n| [github.com/aws/aws-sdk-go-v2/config](https://github.com/aws/aws-sdk-go-v2) | `1.32.14` | `1.32.20` |\n| [github.com/aws/aws-sdk-go-v2/service/secretsmanager](https://github.com/aws/aws-sdk-go-v2) | `1.41.5` | `1.41.9` |\n| [github.com/aws/aws-sdk-go-v2/service/ssm](https://github.com/aws/aws-sdk-go-v2) | `1.68.4` | `1.68.8` |\n| [github.com/containerd/containerd/api](https://github.com/containerd/containerd) | `1.10.0` | `1.11.1` |\n| [github.com/containerd/containerd/v2](https://github.com/containerd/containerd) | `2.2.3` | `2.3.1` |\n| [github.com/containerd/fuse-overlayfs-snapshotter/v2](https://github.com/containerd/fuse-overlayfs-snapshotter) | `2.1.2` | `2.1.7` |\n| [github.com/containerd/typeurl/v2](https://github.com/containerd/typeurl) | `2.2.3` | `2.3.0` |\n| [github.com/docker/cli](https://github.com/docker/cli) | `29.3.1+incompatible` | `29.5.2+incompatible` |\n| [github.com/docker/go-connections](https://github.com/docker/go-connections) | `0.6.0` | `0.7.0` |\n| [github.com/go-git/go-git/v5](https://github.com/go-git/go-git) | `5.17.2` | `5.19.1` |\n| [github.com/google/go-containerregistry](https://github.com/google/go-containerregistry) | `0.21.4` | `0.21.6` |\n| [github.com/goproxy/goproxy](https://github.com/goproxy/goproxy) | `0.26.0` | `0.26.1` |\n| [github.com/in-toto/in-toto-golang](https://github.com/in-toto/in-toto-golang) | `0.10.0` | `0.11.0` |\n| [github.com/invopop/jsonschema](https://github.com/invopop/jsonschema) | `0.13.0` | `0.14.0` |\n| [github.com/jackpal/gateway](https://github.com/jackpal/gateway) | `1.1.1` | `1.2.0` |\n| [github.com/mark3labs/mcp-go](https://github.com/mark3labs/mcp-go) | `0.47.0` | `0.54.1` |\n| [github.com/moby/go-archive](https://github.com/moby/go-archive) | `0.1.0` | `0.2.0` |\n| [github.com/modelcontextprotocol/go-sdk](https://github.com/modelcontextprotocol/go-sdk) | `1.4.1` | `1.6.1` |\n| [github.com/opencontainers/selinux](https://github.com/opencontainers/selinux) | `1.13.1` | `1.15.1` |\n| [github.com/package-url/packageurl-go](https://github.com/package-url/packageurl-go) | `0.1.5` | `0.1.6` |\n| [github.com/tidwall/gjson](https://github.com/tidwall/gjson) | `1.18.0` | `1.19.0` |\n| [golang.org/x/sys](https://github.com/golang/sys) | `0.44.0` | `0.45.0` |\n| [google.golang.org/genai](https://github.com/googleapis/go-genai) | `1.52.1` | `1.58.0` |\n| [google.golang.org/grpc](https://github.com/grpc/grpc-go) | `1.80.0` | `1.81.1` |\n| [modernc.org/sqlite](https://gitlab.com/cznic/sqlite) | `1.48.1` | `1.51.0` |\n\n\nUpdates `charm.land/lipgloss/v2` from 2.0.2 to 2.0.3\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/charmbracelet/lipgloss/releases\"\u003echarm.land/lipgloss/v2's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev2.0.3\u003c/h2\u003e\n\u003ch2\u003eChangelog\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e472d718e2314596549bee2c0c8ccf8beea5f25ae: fix: Avoid background color query hang (\u003ca href=\"https://redirect.github.com/charmbracelet/lipgloss/issues/636\"\u003e#636\u003c/a\u003e) (\u003ca href=\"https://github.com/jedevc\"\u003e\u003ccode\u003e@​jedevc\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eDocs\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e9e39a0ad4f4fc779d620f17783cee3494da6ae29: docs: fix README typo (\u003ca href=\"https://redirect.github.com/charmbracelet/lipgloss/issues/629\"\u003e#629\u003c/a\u003e) (\u003ca href=\"https://github.com/Rohan5commit\"\u003e\u003ccode\u003e@​Rohan5commit\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ecd93a9f5d2e3cb151da83150db29751d92585d23: docs: fix tree comment typo (\u003ca href=\"https://redirect.github.com/charmbracelet/lipgloss/issues/634\"\u003e#634\u003c/a\u003e) (\u003ca href=\"https://github.com/Rohan5commit\"\u003e\u003ccode\u003e@​Rohan5commit\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003chr /\u003e\n\u003cp\u003e\u003c!-- raw HTML omitted --\u003e\u003c!-- raw HTML omitted --\u003e\u003c!-- raw HTML omitted --\u003e\u003c/p\u003e\n\u003cp\u003eThoughts? Questions? We love hearing from you. Feel free to reach out on \u003ca href=\"https://x.com/charmcli\"\u003eX\u003c/a\u003e, \u003ca href=\"https://charm.land/discord\"\u003eDiscord\u003c/a\u003e, \u003ca href=\"https://charm.land/slack\"\u003eSlack\u003c/a\u003e, \u003ca href=\"https://mastodon.social/@charmcli\"\u003eThe Fediverse\u003c/a\u003e, \u003ca href=\"https://bsky.app/profile/charm.land\"\u003eBluesky\u003c/a\u003e.\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/charmbracelet/lipgloss/commit/472d718e2314596549bee2c0c8ccf8beea5f25ae\"\u003e\u003ccode\u003e472d718\u003c/code\u003e\u003c/a\u003e fix: Avoid background color query hang (\u003ca href=\"https://redirect.github.com/charmbracelet/lipgloss/issues/636\"\u003e#636\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/charmbracelet/lipgloss/commit/89fafbaf3ea3523e6afa6b82fde91fc41fefe45a\"\u003e\u003ccode\u003e89fafba\u003c/code\u003e\u003c/a\u003e chore: bump x/ansi to v0.11.7 to fix width calculation bug\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/charmbracelet/lipgloss/commit/d6d41e14fc7231f118013f5e5a05a9eb8224d7ea\"\u003e\u003ccode\u003ed6d41e1\u003c/code\u003e\u003c/a\u003e chore(deps): bump golang.org/x/sys in the all group (\u003ca href=\"https://redirect.github.com/charmbracelet/lipgloss/issues/663\"\u003e#663\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/charmbracelet/lipgloss/commit/23a1bb1ed311e489eadb6c8f3cf53e20cfcc9338\"\u003e\u003ccode\u003e23a1bb1\u003c/code\u003e\u003c/a\u003e chore(deps): bump github.com/lucasb-eyer/go-colorful in the all group (\u003ca href=\"https://redirect.github.com/charmbracelet/lipgloss/issues/640\"\u003e#640\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/charmbracelet/lipgloss/commit/cd93a9f5d2e3cb151da83150db29751d92585d23\"\u003e\u003ccode\u003ecd93a9f\u003c/code\u003e\u003c/a\u003e docs: fix tree comment typo (\u003ca href=\"https://redirect.github.com/charmbracelet/lipgloss/issues/634\"\u003e#634\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/charmbracelet/lipgloss/commit/25c5fb25df7b44558aa3678aa21f0a678e499602\"\u003e\u003ccode\u003e25c5fb2\u003c/code\u003e\u003c/a\u003e chore(deps): bump github.com/charmbracelet/colorprofile in the all group (\u003ca href=\"https://redirect.github.com/charmbracelet/lipgloss/issues/630\"\u003e#630\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/charmbracelet/lipgloss/commit/9e39a0ad4f4fc779d620f17783cee3494da6ae29\"\u003e\u003ccode\u003e9e39a0a\u003c/code\u003e\u003c/a\u003e docs: fix README typo (\u003ca href=\"https://redirect.github.com/charmbracelet/lipgloss/issues/629\"\u003e#629\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/charmbracelet/lipgloss/compare/v2.0.2...v2.0.3\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `cloud.google.com/go/secretmanager` from 1.16.0 to 1.20.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/googleapis/google-cloud-go/releases\"\u003ecloud.google.com/go/secretmanager's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eworkflows: v1.19.0\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/googleapis/google-cloud-go/compare/workflows/v1.18.0...workflows/v1.19.0\"\u003ev1.19.0\u003c/a\u003e (2026-05-07)\u003c/h2\u003e\n\u003ch2\u003estoragetransfer: v1.18.0\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/googleapis/google-cloud-go/compare/storagetransfer/v1.17.0...storagetransfer/v1.18.0\"\u003ev1.18.0\u003c/a\u003e (2026-05-07)\u003c/h2\u003e\n\u003ch2\u003eservicedirectory: v1.17.0\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/googleapis/google-cloud-go/compare/servicedirectory/v1.16.0...servicedirectory/v1.17.0\"\u003ev1.17.0\u003c/a\u003e (2026-05-07)\u003c/h2\u003e\n\u003ch2\u003etranslate: v1.17.0\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/googleapis/google-cloud-go/compare/translate/v1.16.0...translate/v1.17.0\"\u003ev1.17.0\u003c/a\u003e (2026-05-07)\u003c/h2\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/googleapis/google-cloud-go/blob/main/documentai/CHANGES.md\"\u003ecloud.google.com/go/secretmanager's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/googleapis/google-cloud-go/compare/documentai/v1.19.0...documentai/v1.20.0\"\u003e1.20.0\u003c/a\u003e (2023-06-20)\u003c/h2\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003edocumentai:\u003c/strong\u003e Add StyleInfo to document.proto (\u003ca href=\"https://github.com/googleapis/google-cloud-go/commit/b726d413166faa8c84c0a09c6019ff50f3249b9d\"\u003eb726d41\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003edocumentai:\u003c/strong\u003e Add StyleInfo to document.proto (\u003ca href=\"https://github.com/googleapis/google-cloud-go/commit/b726d413166faa8c84c0a09c6019ff50f3249b9d\"\u003eb726d41\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003edocumentai:\u003c/strong\u003e REST query UpdateMask bug (\u003ca href=\"https://github.com/googleapis/google-cloud-go/commit/df52820b0e7721954809a8aa8700b93c5662dc9b\"\u003edf52820\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/googleapis/google-cloud-go/compare/documentai/v1.18.1...documentai/v1.19.0\"\u003e1.19.0\u003c/a\u003e (2023-05-30)\u003c/h2\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003edocumentai:\u003c/strong\u003e Update all direct dependencies (\u003ca href=\"https://github.com/googleapis/google-cloud-go/commit/b340d030f2b52a4ce48846ce63984b28583abde6\"\u003eb340d03\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/googleapis/google-cloud-go/compare/documentai/v1.18.0...documentai/v1.18.1\"\u003e1.18.1\u003c/a\u003e (2023-05-08)\u003c/h2\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003edocumentai:\u003c/strong\u003e Update grpc to v1.55.0 (\u003ca href=\"https://github.com/googleapis/google-cloud-go/commit/1147ce02a990276ca4f8ab7a1ab65c14da4450ef\"\u003e1147ce0\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/googleapis/google-cloud-go/compare/documentai/v1.17.0...documentai/v1.18.0\"\u003e1.18.0\u003c/a\u003e (2023-03-22)\u003c/h2\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003edocumentai:\u003c/strong\u003e Add ImportProcessorVersion in v1beta3 (\u003ca href=\"https://github.com/googleapis/google-cloud-go/commit/c967961ed95750e173af0193ec8d0974471f43ff\"\u003ec967961\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/googleapis/google-cloud-go/compare/documentai/v1.16.0...documentai/v1.17.0\"\u003e1.17.0\u003c/a\u003e (2023-03-15)\u003c/h2\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003edocumentai:\u003c/strong\u003e Added hints.language_hints field in OcrConfig (\u003ca href=\"https://redirect.github.com/googleapis/google-cloud-go/issues/7522\"\u003e#7522\u003c/a\u003e) (\u003ca href=\"https://github.com/googleapis/google-cloud-go/commit/b2c40c3df916691b82f1b384eac5bc953960960a\"\u003eb2c40c3\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/googleapis/google-cloud-go/commit/47bb902e48695e5f0c46f7bee00d72ae5f794e1e\"\u003e\u003ccode\u003e47bb902\u003c/code\u003e\u003c/a\u003e chore: release main (\u003ca href=\"https://redirect.github.com/googleapis/google-cloud-go/issues/10988\"\u003e#10988\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/googleapis/google-cloud-go/commit/2b8ca4b4127ce3025c7a21cc7247510e07cc5625\"\u003e\u003ccode\u003e2b8ca4b\u003c/code\u003e\u003c/a\u003e chore: add Protobuf warning to release notes (\u003ca href=\"https://redirect.github.com/googleapis/google-cloud-go/issues/11025\"\u003e#11025\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/googleapis/google-cloud-go/commit/8bb87d56af1cba736e0fe243979723e747e5e11e\"\u003e\u003ccode\u003e8bb87d5\u003c/code\u003e\u003c/a\u003e chore: update google.golang.org/api to v0.203.0 (\u003ca href=\"https://redirect.github.com/googleapis/google-cloud-go/issues/11022\"\u003e#11022\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/googleapis/google-cloud-go/commit/d40fbff9c1984aeed0224a4ac93eb95c5af17126\"\u003e\u003ccode\u003ed40fbff\u003c/code\u003e\u003c/a\u003e fix(storage): Skip only specific transport tests. (\u003ca href=\"https://redirect.github.com/googleapis/google-cloud-go/issues/11016\"\u003e#11016\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/googleapis/google-cloud-go/commit/ff06fc220a2457e57c9e904c9aae1ab7a283521f\"\u003e\u003ccode\u003eff06fc2\u003c/code\u003e\u003c/a\u003e fix: Fix default service account tests on GCE. (\u003ca href=\"https://redirect.github.com/googleapis/google-cloud-go/issues/11021\"\u003e#11021\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/googleapis/google-cloud-go/commit/6071167b8020c2190109035451a45aed28cc0061\"\u003e\u003ccode\u003e6071167\u003c/code\u003e\u003c/a\u003e feat(alloydb): add new PSC instance configuration setting and output the PSC ...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/googleapis/google-cloud-go/commit/15eacb97ec27d3869cd554d6983433fbf82d0b4a\"\u003e\u003ccode\u003e15eacb9\u003c/code\u003e\u003c/a\u003e chore: update SA used for tests (\u003ca href=\"https://redirect.github.com/googleapis/google-cloud-go/issues/11018\"\u003e#11018\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/googleapis/google-cloud-go/commit/e78389d1cf8ea4af49bfef76a36a08cb5f484b95\"\u003e\u003ccode\u003ee78389d\u003c/code\u003e\u003c/a\u003e chore: fix doc publish creds (\u003ca href=\"https://redirect.github.com/googleapis/google-cloud-go/issues/11019\"\u003e#11019\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/googleapis/google-cloud-go/commit/1d7ee9f526fdb4d8e2210cc41030effe2c8d36e7\"\u003e\u003ccode\u003e1d7ee9f\u003c/code\u003e\u003c/a\u003e chore(main): release auth 0.9.9 (\u003ca href=\"https://redirect.github.com/googleapis/google-cloud-go/issues/11003\"\u003e#11003\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/googleapis/google-cloud-go/commit/6e69d2e85849002bad227ea5bebcde9199605bef\"\u003e\u003ccode\u003e6e69d2e\u003c/code\u003e\u003c/a\u003e feat(texttospeech): add brand voice lite, which lets you clone a voice with j...\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/googleapis/google-cloud-go/compare/kms/v1.16.0...dlp/v1.20.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `github.com/1password/onepassword-sdk-go` from 0.3.1 to 0.4.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/1password/onepassword-sdk-go/releases\"\u003egithub.com/1password/onepassword-sdk-go's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eRelease 0.4.0\u003c/h2\u003e\n\u003ch1\u003e1Password Go SDK v0.4.0\u003c/h1\u003e\n\u003ch2\u003eNEW\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eDesktop App integration:\u003c/strong\u003e The SDK can now authenticate via an authorization prompt from the 1Password app.\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eVault CRUDL:\u003c/strong\u003e You can now fully manage 1Password vaults with the SDK, including creating, reading, updating, deleting and listing.\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eVault group permission management operations:\u003c/strong\u003e You can now grant, update and revoke group access to vaults using \u003ccode\u003egrantGroupPermissions\u003c/code\u003e, \u003ccode\u003eupdateGroupPermissions\u003c/code\u003e, and \u003ccode\u003erevokeGroupPermissions\u003c/code\u003e functions.\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eItem batch management:\u003c/strong\u003e You can now retrieve, create, update and delete items in batch, enabling more scalable item management.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eRelease 0.4.0-beta.2\u003c/h2\u003e\n\u003ch1\u003e1Password Go SDK v0.4.0-beta.2\u003c/h1\u003e\n\u003ch2\u003eNEW\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eVault group permission management operations:\u003c/strong\u003e You can now grant, update and revoke group access to vaults using \u003ccode\u003eGrantGroupPermissions\u003c/code\u003e, \u003ccode\u003eUpdateGroupPermissions\u003c/code\u003e, and \u003ccode\u003eRevokeGroupPermissions\u003c/code\u003e functions.\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eDesktop App integration on Windows:\u003c/strong\u003e The SDK can now authenticate via an authorization prompt from the 1Password app on Windows as well. Now all major desktop OSs support this feature.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eFIXED\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eVault listing with additional parameters:\u003c/strong\u003e \u003ccode\u003eVaults().List\u003c/code\u003e no longer errors when additional parameters are provided.\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eHandling locked 1Password app state:\u003c/strong\u003e When the 1Password app gets locked after the SDK client is authenticated, it will now automatically re-authenticate.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eRelease 0.4.0-beta.1\u003c/h2\u003e\n\u003ch1\u003e1Password Go SDK v0.4.0-beta.1\u003c/h1\u003e\n\u003ch2\u003eNEW\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eThe SDK can now authenticate with the Desktop App.\u003c/li\u003e\n\u003cli\u003eVault \u003ccode\u003eGet\u003c/code\u003e, \u003ccode\u003eGetOverview\u003c/code\u003e as well as new options for vault \u003ccode\u003eList\u003c/code\u003e are now available.\u003c/li\u003e\n\u003cli\u003eItem batch operations are now available.\u003c/li\u003e\n\u003cli\u003eThe Groups API has been introduced.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/1Password/onepassword-sdk-go/commit/d0f8afa3413b85fd22bac5e6ab2fbee550c17169\"\u003e\u003ccode\u003ed0f8afa\u003c/code\u003e\u003c/a\u003e Update notes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/1Password/onepassword-sdk-go/commit/6e24bc3f15761bedb052cf63b3fede06439b933d\"\u003e\u003ccode\u003e6e24bc3\u003c/code\u003e\u003c/a\u003e Release v0.4.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/1Password/onepassword-sdk-go/commit/ee80f4c52f796b3aceff5fc46f756d2ce32d34a5\"\u003e\u003ccode\u003eee80f4c\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/1password/onepassword-sdk-go/issues/249\"\u003e#249\u003c/a\u003e from 1Password/morgan/add-vault-group-operations-exam...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/1Password/onepassword-sdk-go/commit/2a46d8e1314c8682c74dd1d5808cd2f7c2d06f1a\"\u003e\u003ccode\u003e2a46d8e\u003c/code\u003e\u003c/a\u003e removed vault crudl operations from service account examples\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/1Password/onepassword-sdk-go/commit/26c7319f6830091ce71619ea7af83cf7076825ee\"\u003e\u003ccode\u003e26c7319\u003c/code\u003e\u003c/a\u003e formatted variable names. Removed create vault example from service account t...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/1Password/onepassword-sdk-go/commit/8d5d8a64f2defd9689baca68e4a1ca5a7121ac9a\"\u003e\u003ccode\u003e8d5d8a6\u003c/code\u003e\u003c/a\u003e reverted import change so it's contained within docs\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/1Password/onepassword-sdk-go/commit/b99ef4609ab857371790e56447776617a9836327\"\u003e\u003ccode\u003eb99ef46\u003c/code\u003e\u003c/a\u003e Merge branch 'main' into morgan/add-vault-group-operations-examples\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/1Password/onepassword-sdk-go/commit/47716edd199fbb239175a8c6386f335245a2d620\"\u003e\u003ccode\u003e47716ed\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/1password/onepassword-sdk-go/issues/251\"\u003e#251\u003c/a\u003e from 1Password/beta\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/1Password/onepassword-sdk-go/commit/5e5ee00644599b84681f0618292f6da272e4d0e2\"\u003e\u003ccode\u003e5e5ee00\u003c/code\u003e\u003c/a\u003e removed group functionality from service account example\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/1Password/onepassword-sdk-go/commit/35aa35cf03c08b29886b62d7a11dadf7c2582a05\"\u003e\u003ccode\u003e35aa35c\u003c/code\u003e\u003c/a\u003e fixed golangca lint error\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/1password/onepassword-sdk-go/compare/v0.3.1...v0.4.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `github.com/99designs/gqlgen` from 0.17.89 to 0.17.90\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/99designs/gqlgen/releases\"\u003egithub.com/99designs/gqlgen's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev0.17.90\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003efix: add locations to resolver error responses by \u003ca href=\"https://github.com/florinel-chis\"\u003e\u003ccode\u003e@​florinel-chis\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/99designs/gqlgen/pull/4090\"\u003e99designs/gqlgen#4090\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix: return 500 instead of 422 for panic recovery by \u003ca href=\"https://github.com/PavelStefanov\"\u003e\u003ccode\u003e@​PavelStefanov\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/99designs/gqlgen/pull/4098\"\u003e99designs/gqlgen#4098\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eRemove use_light_mode_prefetch docs by \u003ca href=\"https://github.com/henrywoody\"\u003e\u003ccode\u003e@​henrywoody\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/99designs/gqlgen/pull/4101\"\u003e99designs/gqlgen#4101\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003erefactor: fix modernize lint issues by \u003ca href=\"https://github.com/alexandear\"\u003e\u003ccode\u003e@​alexandear\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/99designs/gqlgen/pull/4111\"\u003e99designs/gqlgen#4111\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFeature/field requested condition by \u003ca href=\"https://github.com/parkerroan\"\u003e\u003ccode\u003e@​parkerroan\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/99designs/gqlgen/pull/4113\"\u003e99designs/gqlgen#4113\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBugfix/4102 input object dir with arg by \u003ca href=\"https://github.com/parkerroan\"\u003e\u003ccode\u003e@​parkerroan\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/99designs/gqlgen/pull/4112\"\u003e99designs/gqlgen#4112\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix panic in transport on null body by \u003ca href=\"https://github.com/jeolted\"\u003e\u003ccode\u003e@​jeolted\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/99designs/gqlgen/pull/4115\"\u003e99designs/gqlgen#4115\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix gosec G115 integer overflow in generated atomic.AddInt32 call by \u003ca href=\"https://github.com/3rg0n\"\u003e\u003ccode\u003e@​3rg0n\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/99designs/gqlgen/pull/4120\"\u003e99designs/gqlgen#4120\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efeat: deduplicate Child field context switches and scalar fieldContex… by \u003ca href=\"https://github.com/syssam\"\u003e\u003ccode\u003e@​syssam\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/99designs/gqlgen/pull/4086\"\u003e99designs/gqlgen#4086\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix: directive-only schema files break \u003ccode\u003efollow-schema\u003c/code\u003e code generation by \u003ca href=\"https://github.com/StevenACoffman\"\u003e\u003ccode\u003e@​StevenACoffman\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/99designs/gqlgen/pull/4141\"\u003e99designs/gqlgen#4141\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUpdate gqlparser to v2.5.33 see \u003ca href=\"https://github.com/vektah/gqlparser/releases/tag/v2_5_33\"\u003ehttps://github.com/vektah/gqlparser/releases/tag/v2_5_33\u003c/a\u003e by \u003ca href=\"https://github.com/StevenACoffman\"\u003e\u003ccode\u003e@​StevenACoffman\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/99designs/gqlgen/pull/4142\"\u003e99designs/gqlgen#4142\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eReduce template logic: Part 1 ECDot by \u003ca href=\"https://github.com/StevenACoffman\"\u003e\u003ccode\u003e@​StevenACoffman\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/99designs/gqlgen/pull/4144\"\u003e99designs/gqlgen#4144\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eReduce Template Logic Part 2 by \u003ca href=\"https://github.com/StevenACoffman\"\u003e\u003ccode\u003e@​StevenACoffman\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/99designs/gqlgen/pull/4145\"\u003e99designs/gqlgen#4145\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ePart 3 - reduce template logic: Unify ProcessArgField and ProcessArgFieldWithEC by \u003ca href=\"https://github.com/StevenACoffman\"\u003e\u003ccode\u003e@​StevenACoffman\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/99designs/gqlgen/pull/4146\"\u003e99designs/gqlgen#4146\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps): bump the npm_and_yarn group across 1 directory with 1 update by \u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/99designs/gqlgen/pull/4099\"\u003e99designs/gqlgen#4099\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps-dev): bump vitest from 4.0.18 to 4.1.0 in /integration by \u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/99designs/gqlgen/pull/4078\"\u003e99designs/gqlgen#4078\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps): bump github.com/urfave/cli/v3 from 3.7.0 to 3.8.0 by \u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/99designs/gqlgen/pull/4103\"\u003e99designs/gqlgen#4103\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps-dev): bump graphql-ws from 6.0.7 to 6.0.8 in /integration by \u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/99designs/gqlgen/pull/4104\"\u003e99designs/gqlgen#4104\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps): bump mikepenz/action-junit-report from 6.3.1 to 6.4.0 by \u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/99designs/gqlgen/pull/4110\"\u003e99designs/gqlgen#4110\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps-dev): bump graphql from 16.13.1 to 16.13.2 in /integration by \u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/99designs/gqlgen/pull/4106\"\u003e99designs/gqlgen#4106\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps): bump typescript from 5.9.3 to 6.0.2 in /_examples/chat by \u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/99designs/gqlgen/pull/4108\"\u003e99designs/gqlgen#4108\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps-dev): bump typescript from 5.9.3 to 6.0.2 in /integration by \u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/99designs/gqlgen/pull/4105\"\u003e99designs/gqlgen#4105\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps): bump actions/setup-go from 6.3.0 to 6.4.0 by \u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/99designs/gqlgen/pull/4109\"\u003e99designs/gqlgen#4109\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps-dev): bump vitest from 4.1.1 to 4.1.2 in /integration by \u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/99designs/gqlgen/pull/4107\"\u003e99designs/gqlgen#4107\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps): bump dawidd6/action-download-artifact from 19 to 20 by \u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/99designs/gqlgen/pull/4116\"\u003e99designs/gqlgen#4116\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps): bump golang.org/x/text from 0.34.0 to 0.35.0 in /_examples by \u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/99designs/gqlgen/pull/4075\"\u003e99designs/gqlgen#4075\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps): bump the npm_and_yarn group across 1 directory with 2 updates by \u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/99designs/gqlgen/pull/4118\"\u003e99designs/gqlgen#4118\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps-dev): bump vitest from 4.1.2 to 4.1.4 in /integration by \u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/99designs/gqlgen/pull/4125\"\u003e99designs/gqlgen#4125\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps-dev): bump \u003ccode\u003e@​apollo/client\u003c/code\u003e from 4.1.6 to 4.1.7 in /integration by \u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/99designs/gqlgen/pull/4126\"\u003e99designs/gqlgen#4126\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps): bump actions/upload-artifact from 7.0.0 to 7.0.1 by \u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/99designs/gqlgen/pull/4127\"\u003e99designs/gqlgen#4127\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps): bump golang.org/x/text from 0.35.0 to 0.36.0 in /_examples by \u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/99designs/gqlgen/pull/4124\"\u003e99designs/gqlgen#4124\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps): bump github.com/jackc/pgx/v5 from 5.7.4 to 5.9.0 in /_examples/mini-habr-with-subscriptions in the go_modules group across 1 directory by \u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/99designs/gqlgen/pull/4128\"\u003e99designs/gqlgen#4128\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps): bump github.com/jackc/pgx/v5 from 5.9.0 to 5.9.2 in /_examples/mini-habr-with-subscriptions in the go_modules group across 1 directory by \u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/99designs/gqlgen/pull/4139\"\u003e99designs/gqlgen#4139\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps): bump robherley/go-test-action from 0.7.1 to 1.0.0 by \u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/99designs/gqlgen/pull/4137\"\u003e99designs/gqlgen#4137\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps): bump actions/setup-node from 6.3.0 to 6.4.0 by \u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/99designs/gqlgen/pull/4136\"\u003e99designs/gqlgen#4136\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps-dev): bump \u003ccode\u003e@​graphql-codegen/introspection\u003c/code\u003e from 5.0.1 to 5.0.2 in /integration by \u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/99designs/gqlgen/pull/4134\"\u003e99designs/gqlgen#4134\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps-dev): bump \u003ccode\u003e@​graphql-codegen/cli\u003c/code\u003e from 6.2.1 to 6.3.1 in /integration by \u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/99designs/gqlgen/pull/4135\"\u003e99designs/gqlgen#4135\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps-dev): bump urql from 5.0.1 to 5.0.2 in /integration by \u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/99designs/gqlgen/pull/4133\"\u003e99designs/gqlgen#4133\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps): bump github.com/PuerkitoBio/goquery from 1.11.0 to 1.12.0 by \u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/99designs/gqlgen/pull/4076\"\u003e99designs/gqlgen#4076\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps): bump golang.org/x/tools from 0.42.0 to 0.44.0 by \u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/99designs/gqlgen/pull/4122\"\u003e99designs/gqlgen#4122\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps): bump golang.org/x/text from 0.35.0 to 0.36.0 by \u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/99designs/gqlgen/pull/4123\"\u003e99designs/gqlgen#4123\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps): bump github.com/mattn/go-isatty from 0.0.20 to 0.0.21 by \u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/99designs/gqlgen/pull/4130\"\u003e99designs/gqlgen#4130\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps-dev): bump postcss from 8.5.9 to 8.5.10 in /integration in the npm_and_yarn group across 1 directory by \u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/99designs/gqlgen/pull/4143\"\u003e99designs/gqlgen#4143\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eNew Contributors\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/florinel-chis\"\u003e\u003ccode\u003e@​florinel-chis\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/99designs/gqlgen/pull/4090\"\u003e99designs/gqlgen#4090\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PavelStefanov\"\u003e\u003ccode\u003e@​PavelStefanov\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/99designs/gqlgen/pull/4098\"\u003e99designs/gqlgen#4098\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/henrywoody\"\u003e\u003ccode\u003e@​henrywoody\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/99designs/gqlgen/pull/4101\"\u003e99designs/gqlgen#4101\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/99designs/gqlgen/commit/0945c8330037e838af683851b40983ede8df60d5\"\u003e\u003ccode\u003e0945c83\u003c/code\u003e\u003c/a\u003e release v0.17.90\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/99designs/gqlgen/commit/4a2c5d8022a73f2aefbe9d608f3932eef9ff9562\"\u003e\u003ccode\u003e4a2c5d8\u003c/code\u003e\u003c/a\u003e Part 3 - reduce template logic (\u003ca href=\"https://redirect.github.com/99designs/gqlgen/issues/4146\"\u003e#4146\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/99designs/gqlgen/commit/8b08751435cfe3c80a1de5319b58eaf8f6b5d31e\"\u003e\u003ccode\u003e8b08751\u003c/code\u003e\u003c/a\u003e Reduce Template Logic Part 2 (\u003ca href=\"https://redirect.github.com/99designs/gqlgen/issues/4145\"\u003e#4145\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/99designs/gqlgen/commit/8c35336ad3a074f07ee1578d32f9011772780ab8\"\u003e\u003ccode\u003e8c35336\u003c/code\u003e\u003c/a\u003e Reduce template logic: Part 1 ECDot (\u003ca href=\"https://redirect.github.com/99designs/gqlgen/issues/4144\"\u003e#4144\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/99designs/gqlgen/commit/bdeb6efa2bfffecce889d5fcc1da8605d75461ef\"\u003e\u003ccode\u003ebdeb6ef\u003c/code\u003e\u003c/a\u003e chore(deps-dev): bump postcss (\u003ca href=\"https://redirect.github.com/99designs/gqlgen/issues/4143\"\u003e#4143\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/99designs/gqlgen/commit/6e8a0482c5ef35b757321afdb1f5ab42954ad1a7\"\u003e\u003ccode\u003e6e8a048\u003c/code\u003e\u003c/a\u003e Update gqlparser to v2.5.33 see \u003ca href=\"https://github.com/vektah/gqlparser/releases/\"\u003ehttps://github.com/vektah/gqlparser/releases/\u003c/a\u003e...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/99designs/gqlgen/commit/e3f5362536a60f15e5973840f5d1b7cd43d5f7cc\"\u003e\u003ccode\u003ee3f5362\u003c/code\u003e\u003c/a\u003e Revise PR \u003ca href=\"https://redirect.github.com/99designs/gqlgen/issues/4121\"\u003e#4121\u003c/a\u003e from \u003ca href=\"https://github.com/toga4\"\u003e\u003ccode\u003e@​toga4\u003c/code\u003e\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/99designs/gqlgen/issues/4141\"\u003e#4141\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/99designs/gqlgen/commit/3ab446064e85efeda6de5e5a9c014ff3e1c0ffe0\"\u003e\u003ccode\u003e3ab4460\u003c/code\u003e\u003c/a\u003e feat: deduplicate Child field context switches and scalar fieldContex… (\u003ca href=\"https://redirect.github.com/99designs/gqlgen/issues/4086\"\u003e#4086\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/99designs/gqlgen/commit/2d63840966b8a2e3704f8ddb6445015854158b39\"\u003e\u003ccode\u003e2d63840\u003c/code\u003e\u003c/a\u003e chore(deps): bump github.com/mattn/go-isatty from 0.0.20 to 0.0.21 (\u003ca href=\"https://redirect.github.com/99designs/gqlgen/issues/4130\"\u003e#4130\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/99designs/gqlgen/commit/39d244a30d330c3605f3cb3ade0c7c3e95d6067d\"\u003e\u003ccode\u003e39d244a\u003c/code\u003e\u003c/a\u003e Fix go.sum\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/99designs/gqlgen/compare/v0.17.89...v0.17.90\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `github.com/alecthomas/chroma/v2` from 2.23.1 to 2.26.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/alecthomas/chroma/releases\"\u003egithub.com/alecthomas/chroma/v2's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev2.26.1\u003c/h2\u003e\n\u003ch2\u003eChangelog\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e56c7702 fix: downgrade go.mod version to 1.25\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev2.26.0\u003c/h2\u003e\n\u003ch2\u003eChangelog\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003ea4d3f60 feat(chromad): use style counterparts for theme switching\u003c/li\u003e\n\u003cli\u003ece159e6 chore: migrate to new bit format\u003c/li\u003e\n\u003cli\u003e180ea9f perf(colour): replace Sprintf/ParseUint round-trip in NewColour with direct bit arithmetic (\u003ca href=\"https://redirect.github.com/alecthomas/chroma/issues/1274\"\u003e#1274\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e68a08b0 docs: how to support dynamic theme switching\u003c/li\u003e\n\u003cli\u003e6fb9d92 feat(html): tag output with style mode\u003c/li\u003e\n\u003cli\u003ea71fea3 feat(styles): add light/dark mode support\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev2.25.0\u003c/h2\u003e\n\u003ch2\u003eChangelog\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003ec3826f0 chore: go mod tidy\u003c/li\u003e\n\u003cli\u003efb5bc39 fix: emit HTTP body tokens without Coalesce\u003c/li\u003e\n\u003cli\u003ea3c2946 Improve Nu file detection (\u003ca href=\"https://redirect.github.com/alecthomas/chroma/issues/1260\"\u003e#1260\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ee841b1a chore(deps): update all non-major dependencies (\u003ca href=\"https://redirect.github.com/alecthomas/chroma/issues/1272\"\u003e#1272\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e3ed2db8 Add Gemfile.lock lexer (\u0026amp; ruby improvements) (\u003ca href=\"https://redirect.github.com/alecthomas/chroma/issues/1269\"\u003e#1269\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e41fb546 Add YAML+Jinja lexer (\u003ca href=\"https://redirect.github.com/alecthomas/chroma/issues/1268\"\u003e#1268\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ee99b881 chore(deps): update all non-major dependencies (\u003ca href=\"https://redirect.github.com/alecthomas/chroma/issues/1263\"\u003e#1263\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ee67dd2f (Markless) Fix parse issue for embed directives without options (\u003ca href=\"https://redirect.github.com/alecthomas/chroma/issues/1266\"\u003e#1266\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003edffa370 fix(go): tokenize trailing // as comment instead of consuming next line (\u003ca href=\"https://redirect.github.com/alecthomas/chroma/issues/1265\"\u003e#1265\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e1cf1560 chore: upgrade to github.com/dlclark/regexp2/v2\u003c/li\u003e\n\u003cli\u003e2cbcf7b chore: upgrade golangci-lint\u003c/li\u003e\n\u003cli\u003e786675b chore(deps): update all non-major dependencies (\u003ca href=\"https://redirect.github.com/alecthomas/chroma/issues/1257\"\u003e#1257\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e235590c feat: add JSONL support to JSON lexer (\u003ca href=\"https://redirect.github.com/alecthomas/chroma/issues/1262\"\u003e#1262\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ef9b5c97 fix(dart): match single-line comments without trailing newline (\u003ca href=\"https://redirect.github.com/alecthomas/chroma/issues/1225\"\u003e#1225\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/alecthomas/chroma/issues/1261\"\u003e#1261\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e097f8e9 Mention Arturo in README (\u003ca href=\"https://redirect.github.com/alecthomas/chroma/issues/1256\"\u003e#1256\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ed46ce60 feat(markdown): highlight frontmatter and comments (\u003ca href=\"https://redirect.github.com/alecthomas/chroma/issues/1245\"\u003e#1245\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ef786b2a feat(lexers): add support for LilyPond (\u003ca href=\"https://redirect.github.com/alecthomas/chroma/issues/1255\"\u003e#1255\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e0a02b98 chore(deps): update actions/checkout digest to de0fac2 (\u003ca href=\"https://redirect.github.com/alecthomas/chroma/issues/1212\"\u003e#1212\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ec55009e Fix AGENTS.md referencing a non-existent scripts directory (\u003ca href=\"https://redirect.github.com/alecthomas/chroma/issues/1231\"\u003e#1231\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ec5e763e Improve protobuf lexer (\u003ca href=\"https://redirect.github.com/alecthomas/chroma/issues/1253\"\u003e#1253\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e113cd0e Add Arturo lexer (\u003ca href=\"https://redirect.github.com/alecthomas/chroma/issues/1232\"\u003e#1232\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e4498d71 chore(deps): update dependency binaryen to v129 (\u003ca href=\"https://redirect.github.com/alecthomas/chroma/issues/1238\"\u003e#1238\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e885f912 Added f4 to \u0026quot;Projects using Chroma\u0026quot; list (\u003ca href=\"https://redirect.github.com/alecthomas/chroma/issues/1242\"\u003e#1242\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ec42c9ef Update java lexer (\u003ca href=\"https://redirect.github.com/alecthomas/chroma/issues/1254\"\u003e#1254\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev2.24.1\u003c/h2\u003e\n\u003ch2\u003eChangelog\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003ed2a3784 fix: fallback bug\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev2.24.0\u003c/h2\u003e\n\u003ch2\u003eChangelog\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e0b841ee chore: go mod tidy\u003c/li\u003e\n\u003cli\u003e10fcb68 chore(deps): update ubuntu docker tag to v26 (\u003ca href=\"https://redirect.github.com/alecthomas/chroma/issues/1251\"\u003e#1251\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e2218de6 chore(deps): update all non-major dependencies (\u003ca href=\"https://redirect.github.com/alecthomas/chroma/issues/1236\"\u003e#1236\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e2099887 Update Solarized Light to use correct background color (\u003ca href=\"https://redirect.github.com/alecthomas/chroma/issues/1250\"\u003e#1250\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/alecthomas/chroma/commit/56c7702e16f3bf78b335c57cdd5af8f8b493f1c6\"\u003e\u003ccode\u003e56c7702\u003c/code\u003e\u003c/a\u003e fix: downgrade go.mod version to 1.25\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/alecthomas/chroma/commit/a4d3f60813272352474a6ecda93270487d20a9ee\"\u003e\u003ccode\u003ea4d3f60\u003c/code\u003e\u003c/a\u003e feat(chromad): use style counterparts for theme switching\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/alecthomas/chroma/commit/ce159e61b0d7234beba95e25e25464ea90324d1f\"\u003e\u003ccode\u003ece159e6\u003c/code\u003e\u003c/a\u003e chore: migrate to new bit format\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/alecthomas/chroma/commit/180ea9f54dce4c7b7241944110fc0e01bffae913\"\u003e\u003ccode\u003e180ea9f\u003c/code\u003e\u003c/a\u003e perf(colour): replace Sprintf/ParseUint round-trip in NewColour with direct b...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/alecthomas/chroma/commit/68a08b0f9a1f4edeaadd0ef9fbbc2945b5a02adf\"\u003e\u003ccode\u003e68a08b0\u003c/code\u003e\u003c/a\u003e docs: how to support dynamic theme switching\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/alecthomas/chroma/commit/6fb9d920b575be857c7322f79699fd92e3645e2f\"\u003e\u003ccode\u003e6fb9d92\u003c/code\u003e\u003c/a\u003e feat(html): tag output with style mode\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/alecthomas/chroma/commit/a71fea34358d2b9f75c0d5be2002a5293633116d\"\u003e\u003ccode\u003ea71fea3\u003c/code\u003e\u003c/a\u003e feat(styles): add light/dark mode support\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/alecthomas/chroma/commit/c3826f007cb719dfba2e331ee356c9f0d521dbad\"\u003e\u003ccode\u003ec3826f0\u003c/code\u003e\u003c/a\u003e chore: go mod tidy\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/alecthomas/chroma/commit/fb5bc39d407d3d39fb71f010683a2d4b6211da2f\"\u003e\u003ccode\u003efb5bc39\u003c/code\u003e\u003c/a\u003e fix: emit HTTP body tokens without Coalesce\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/alecthomas/chroma/commit/a3c2946ab1b0af692b2087b9f54e70f87a7b0295\"\u003e\u003ccode\u003ea3c2946\u003c/code\u003e\u003c/a\u003e Improve Nu file detection (\u003ca href=\"https://redirect.github.com/alecthomas/chroma/issues/1260\"\u003e#1260\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/alecthomas/chroma/compare/v2.23.1...v2.26.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `github.com/anthropics/anthropic-sdk-go` from 1.30.0 to 1.46.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/anthropics/anthropic-sdk-go/releases\"\u003egithub.com/anthropics/anthropic-sdk-go's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev1.46.0\u003c/h2\u003e\n\u003ch2\u003e1.46.0 (2026-05-28)\u003c/h2\u003e\n\u003cp\u003eFull Changelog: \u003ca href=\"https://github.com/anthropics/anthropic-sdk-go/compare/v1.45.0...v1.46.0\"\u003ev1.45.0...v1.46.0\u003c/a\u003e\u003c/p\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eapi:\u003c/strong\u003e Add support for claude-opus-4-8, mid-conversation system blocks, and usage.output_tokens_details (\u003ca href=\"https://github.com/anthropics/anthropic-sdk-go/commit/4cd860b8bd5365709f7f86466f449797a5f01875\"\u003e4cd860b\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003esupport custom file size caps (\u003ca href=\"https://redirect.github.com/anthropics/anthropic-sdk-go/issues/876\"\u003e#876\u003c/a\u003e) (\u003ca href=\"https://github.com/anthropics/anthropic-sdk-go/commit/99634e85815be2215a8beb05f2deeec895133b3b\"\u003e99634e8\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eChores\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eexamples:\u003c/strong\u003e rename managed-agents private-sandbox-worker to self-hosted-sandbox-worker (\u003ca href=\"https://redirect.github.com/anthropics/anthropic-sdk-go/issues/873\"\u003e#873\u003c/a\u003e) (\u003ca href=\"https://github.com/anthropics/anthropic-sdk-go/commit/07d3e461f094d40a1bcf25fa8cefee7a90835193\"\u003e07d3e46\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eDocumentation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003ereplace literal newlines (\u003ca href=\"https://github.com/anthropics/anthropic-sdk-go/commit/cbb7ea55b131f492753ce9fdcfc73df2847daafd\"\u003ecbb7ea5\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev1.45.0\u003c/h2\u003e\n\u003ch2\u003e1.45.0 (2026-05-21)\u003c/h2\u003e\n\u003cp\u003eFull Changelog: \u003ca href=\"https://github.com/anthropics/anthropic-sdk-go/compare/v1.44.1...v1.45.0\"\u003ev1.44.1...v1.45.0\u003c/a\u003e\u003c/p\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eapi:\u003c/strong\u003e Add support for thinking-token-count beta for estimated tokens in thinking block deltas when streaming (\u003ca href=\"https://github.com/anthropics/anthropic-sdk-go/commit/dedeb6d263a651d63c95bd360befbd53dd26ec12\"\u003ededeb6d\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev1.44.1\u003c/h2\u003e\n\u003ch2\u003e1.44.1 (2026-05-19)\u003c/h2\u003e\n\u003cp\u003eFull Changelog: \u003ca href=\"https://github.com/anthropics/anthropic-sdk-go/compare/v1.44.0...v1.44.1\"\u003ev1.44.0...v1.44.1\u003c/a\u003e\u003c/p\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003erunner:\u003c/strong\u003e skip tool calls SessionToolRunner does not own (\u003ca href=\"https://github.com/anthropics/anthropic-sdk-go/commit/93afc65f2f1b811d760f2e5149e13dd5eb328f79\"\u003e93afc65\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev1.44.0\u003c/h2\u003e\n\u003ch2\u003e1.44.0 (2026-05-19)\u003c/h2\u003e\n\u003cp\u003eFull Changelog: \u003ca href=\"https://github.com/anthropics/anthropic-sdk-go/compare/v1.43.0...v1.44.0\"\u003ev1.43.0...v1.44.0\u003c/a\u003e\u003c/p\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eclient:\u003c/strong\u003e Add support for self-hosted sandboxes in CMA with sandbox helpers (\u003ca href=\"https://github.com/anthropics/anthropic-sdk-go/commit/34354c43f329852a88682bb6665a1453754d61be\"\u003e34354c4\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev1.43.0\u003c/h2\u003e\n\u003ch2\u003e1.43.0 (2026-05-13)\u003c/h2\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/anthropics/anthropic-sdk-go/blob/main/CHANGELOG.md\"\u003egithub.com/anthropics/anthropic-sdk-go's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e1.46.0 (2026-05-28)\u003c/h2\u003e\n\u003cp\u003eFull Changelog: \u003ca href=\"https://github.com/anthropics/anthropic-sdk-go/compare/v1.45.0...v1.46.0\"\u003ev1.45.0...v1.46.0\u003c/a\u003e\u003c/p\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eapi:\u003c/strong\u003e Add support for claude-opus-4-8, mid-conversation system blocks, and usage.output_tokens_details (\u003ca href=\"https://github.com/anthropics/anthropic-sdk-go/commit/4cd860b8bd5365709f7f86466f449797a5f01875\"\u003e4cd860b\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003esupport custom file size caps (\u003ca href=\"https://redirect.github.com/anthropics/anthropic-sdk-go/issues/876\"\u003e#876\u003c/a\u003e) (\u003ca href=\"https://github.com/anthropics/anthropic-sdk-go/commit/99634e85815be2215a8beb05f2deeec895133b3b\"\u003e99634e8\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eChores\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eexamples:\u003c/strong\u003e rename managed-agents private-sandbox-worker to self-hosted-sandbox-worker (\u003ca href=\"https://redirect.github.com/anthropics/anthropic-sdk-go/issues/873\"\u003e#873\u003c/a\u003e) (\u003ca href=\"https://github.com/anthropics/anthropic-sdk-go/commit/07d3e461f094d40a1bcf25fa8cefee7a90835193\"\u003e07d3e46\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eDocumentation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003ereplace literal newlines (\u003ca href=\"https://github.com/anthropics/anthropic-sdk-go/commit/cbb7ea55b131f492753ce9fdcfc73df2847daafd\"\u003ecbb7ea5\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e1.45.0 (2026-05-21)\u003c/h2\u003e\n\u003cp\u003eFull Changelog: \u003ca href=\"https://github.com/anthropics/anthropic-sdk-go/compare/v1.44.1...v1.45.0\"\u003ev1.44.1...v1.45.0\u003c/a\u003e\u003c/p\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eapi:\u003c/strong\u003e Add support for thinking-token-count beta for estimated tokens in thinking block deltas when streaming (\u003ca href=\"https://github.com/anthropics/anthropic-sdk-go/commit/dedeb6d263a651d63c95bd360befbd53dd26ec12\"\u003ededeb6d\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e1.44.1 (2026-05-19)\u003c/h2\u003e\n\u003cp\u003eFull Changelog: \u003ca href=\"https://github.com/anthropics/anthropic-sdk-go/compare/v1.44.0...v1.44.1\"\u003ev1.44.0...v1.44.1\u003c/a\u003e\u003c/p\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003erunner:\u003c/strong\u003e skip tool calls SessionToolRunner does not own (\u003ca href=\"https://github.com/anthropics/anthropic-sdk-go/commit/93afc65f2f1b811d760f2e5149e13dd5eb328f79\"\u003e93afc65\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e1.44.0 (2026-05-19)\u003c/h2\u003e\n\u003cp\u003eFull Changelog: \u003ca href=\"https://github.com/anthropics/anthropic-sdk-go/compare/v1.43.0...v1.44.0\"\u003ev1.43.0...v1.44.0\u003c/a\u003e\u003c/p\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eclient:\u003c/strong\u003e Add support for self-hosted sandboxes in CMA with sandbox helpers (\u003ca href=\"https://github.com/anthropics/anthropic-sdk-go/commit/34354c43f329852a88682bb6665a1453754d61be\"\u003e34354c4\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e1.43.0 (2026-05-13)\u003c/h2\u003e\n\u003cp\u003eFull Changelog: \u003ca href=\"https://github.com/anthropics/anthropic-sdk-go/compare/v1.42.0...v1.43.0\"\u003ev1.42.0...v1.43.0\u003c/a\u003e\u003c/p\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eapi:\u003c/strong\u003e Add BetaManagedAgentsSearchResultBlock types (\u003ca href=\"https://github.com/anthropics/anthropic-sdk-go/commit/498fafcadd46be3a53e24ca2e7c40d00da6361bd\"\u003e498fafc\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/anthropics/anthropic-sdk-go/commit/058d85cd7e656f5fe972591bcf841c99564581e9\"\u003e\u003ccode\u003e058d85c\u003c/code\u003e\u003c/a\u003e release: 1.46.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/anthropics/anthropic-sdk-go/commit/5c328bc227a82cc46b273924a398d6fabc689410\"\u003e\u003ccode\u003e5c328bc\u003c/code\u003e\u003c/a\u003e feat(api): Add support for claude-opus-4-8, mid-conversation system blocks, a...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/anthropics/anthropic-sdk-go/commit/9df7ac07d30e17ce37712e0c083294a597058054\"\u003e\u003ccode\u003e9df7ac0\u003c/code\u003e\u003c/a\u003e docs: replace literal newlines\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/anthropics/anthropic-sdk-go/commit/d8020e0a73623855636de14c65a183fcc12f516f\"\u003e\u003ccode\u003ed8020e0\u003c/code\u003e\u003c/a\u003e ci: run breaking change detection on every branch (\u003ca href=\"https://redirect.github.com/anthropics/anthropic-sdk-go/issues/803\"\u003e#803\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/anthropics/anthropic-sdk-go/commit/c9bae2d86565b73cab7c4b6b7b0066a1697d4968\"\u003e\u003ccode\u003ec9bae2d\u003c/code\u003e\u003c/a\u003e feat: support custom file size caps (\u003ca href=\"https://redirect.github.com/anthropics/anthropic-sdk-go/issues/876\"\u003e#876\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/anthropics/anthropic-sdk-go/commit/816a9c6e9488edfab819a31d955e128ab57bede0\"\u003e\u003ccode\u003e816a9c6\u003c/code\u003e\u003c/a\u003e codegen metadata\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/anthropics/anthropic-sdk-go/commit/ec37441e01163d327f42b3eea6e9955e686b5e72\"\u003e\u003ccode\u003eec37441\u003c/code\u003e\u003c/a\u003e chore(examples): rename managed-agents private-sandbox-worker to self-hosted-...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/anthropics/anthropic-sdk-go/commit/88310ccdb19419fb6c8b0fd2e99f1e3d8c74041e\"\u003e\u003ccode\u003e88310cc\u003c/code\u003e\u003c/a\u003e release: 1.45.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/anthropics/anthropic-sdk-go/commit/4eb28e321282db071753c97d3223b092db9108d1\"\u003e\u003ccode\u003e4eb28e3\u003c/code\u003e\u003c/a\u003e feat(api): Add support for thinking-token-count beta for estimated tokens in ...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/anthropics/anthropic-sdk-go/commit/d138190aeae5568972430f9a6204875aa04097fc\"\u003e\u003ccode\u003ed138190\u003c/code\u003e\u003c/a\u003e release: 1.44.1\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/anthropics/anthropic-sdk-go/compare/v1.30.0...v1.46.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `github.com/aws/aws-sdk-go-v2` from 1.41.5 to 1.41.9\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/5841d3ae2cfd6e6113ca61b71d69131b84932f4c\"\u003e\u003ccode\u003e5841d3a\u003c/code\u003e\u003c/a\u003e Release 2026-05-29\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/16ac80d79c282366cae312281b3df925af4e9bf1\"\u003e\u003ccode\u003e16ac80d\u003c/code\u003e\u003c/a\u003e Regenerated Clients\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/167926f8aca7228f2dd1bed73707505875aafef4\"\u003e\u003ccode\u003e167926f\u003c/code\u003e\u003c/a\u003e Update endpoints model\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/a0fce13e18c6bff397ad77fac4cde4ab3f3b93e0\"\u003e\u003ccode\u003ea0fce13\u003c/code\u003e\u003c/a\u003e Update API model\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/223c0057211950899e0117dc027cc299a1dac664\"\u003e\u003ccode\u003e223c005\u003c/code\u003e\u003c/a\u003e update to smithy-go v1.26.0 (\u003ca href=\"https://redirect.github.com/aws/aws-sdk-go-v2/issues/3426\"\u003e#3426\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/74c501189a40c9b937432a1b2a4cacffc851ea76\"\u003e\u003ccode\u003e74c5011\u003c/code\u003e\u003c/a\u003e Release 2026-05-28\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/7d82651329a86064a9026f6219cff72921fa74da\"\u003e\u003ccode\u003e7d82651\u003c/code\u003e\u003c/a\u003e Regenerated Clients\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/79c63d9289784de4914143b7bff67157aa6a2a90\"\u003e\u003ccode\u003e79c63d9\u003c/code\u003e\u003c/a\u003e Update endpoints model\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/b15b3b873ad5c294d0c010fb1cc56ecb583d1618\"\u003e\u003ccode\u003eb15b3b8\u003c/code\u003e\u003c/a\u003e Update API model\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/090e46936630944917cfd6a0990ea3fd6391475b\"\u003e\u003ccode\u003e090e469\u003c/code\u003e\u003c/a\u003e Feat tmv2 parity (\u003ca href=\"https://redirect.github.com/aws/aws-sdk-go-v2/issues/3424\"\u003e#3424\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/aws/aws-sdk-go-v2/compare/v1.41.5...v1.41.9\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `github.com/aws/aws-sdk-go-v2/config` from 1.32.14 to 1.32.20\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/5841d3ae2cfd6e6113ca61b71d69131b84932f4c\"\u003e\u003ccode\u003e5841d3a\u003c/code\u003e\u003c/a\u003e Release 2026-05-29\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/16ac80d79c282366cae312281b3df925af4e9bf1\"\u003e\u003ccode\u003e16ac80d\u003c/code\u003e\u003c/a\u003e Regenerated Clients\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/167926f8aca7228f2dd1bed73707505875aafef4\"\u003e\u003ccode\u003e167926f\u003c/code\u003e\u003c/a\u003e Update endpoints model\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/a0fce13e18c6bff397ad77fac4cde4ab3f3b93e0\"\u003e\u003ccode\u003ea0fce13\u003c/code\u003e\u003c/a\u003e Update API model\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/223c0057211950899e0117dc027cc299a1dac664\"\u003e\u003ccode\u003e223c005\u003c/code\u003e\u003c/a\u003e update to smithy-go v1.26.0 (\u003ca href=\"https://redirect.github.com/aws/aws-sdk-go-v2/issues/3426\"\u003e#3426\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/74c501189a40c9b937432a1b2a4cacffc851ea76\"\u003e\u003ccode\u003e74c5011\u003c/code\u003e\u003c/a\u003e Release 2026-05-28\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/7d82651329a86064a9026f6219cff72921fa74da\"\u003e\u003ccode\u003e7d82651\u003c/code\u003e\u003c/a\u003e Regenerated Clients\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/79c63d9289784de4914143b7bff67157aa6a2a90\"\u003e\u003ccode\u003e79c63d9\u003c/code\u003e\u003c/a\u003e Update endpoints model\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/b15b3b873ad5c294d0c010fb1cc56ecb583d1618\"\u003e\u003ccode\u003eb15b3b8\u003c/code\u003e\u003c/a\u003e Update API model\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/090e46936630944917cfd6a0990ea3fd6391475b\"\u003e\u003ccode\u003e090e469\u003c/code\u003e\u003c/a\u003e Feat tmv2 parity (\u003ca href=\"https://redirect.github.com/aws/aws-sdk-go-v2/issues/3424\"\u003e#3424\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/aws/aws-sdk-go-v2/compare/config/v1.32.14...config/v1.32.20\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `github.com/aws/aws-sdk-go-v2/service/secretsmanager` from 1.41.5 to 1.41.9\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/5841d3ae2cfd6e6113ca61b71d69131b84932f4c\"\u003e\u003ccode\u003e5841d3a\u003c/code\u003e\u003c/a\u003e Release 2026-05-29\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/16ac80d79c282366cae312281b3df925af4e9bf1\"\u003e\u003ccode\u003e16ac80d\u003c/code\u003e\u003c/a\u003e Regenerated Clients\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/167926f8aca7228f2dd1bed73707505875aafef4\"\u003e\u003ccode\u003e167926f\u003c/code\u003e\u003c/a\u003e Update endpoints model\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/a0fce13e18c6bff397ad77fac4cde4ab3f3b93e0\"\u003e\u003ccode\u003ea0fce13\u003c/code\u003e\u003c/a\u003e Update API model\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/223c0057211950899e0117dc027cc299a1dac664\"\u003e\u003ccode\u003e223c005\u003c/code\u003e\u003c/a\u003e update to smithy-go v1.26.0 (\u003ca href=\"https://redirect.github.com/aws/aws-sdk-go-v2/issues/3426\"\u003e#3426\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/74c501189a40c9b937432a1b2a4cacffc851ea76\"\u003e\u003ccode\u003e74c5011\u003c/code\u003e\u003c/a\u003e Release 2026-05-28\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/7d82651329a86064a9026f6219cff72921fa74da\"\u003e\u003ccode\u003e7d82651\u003c/code\u003e\u003c/a\u003e Regenerated Clients\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/79c63d9289784de4914143b7bff67157aa6a2a90\"\u003e\u003ccode\u003e79c63d9\u003c/code\u003e\u003c/a\u003e Update endpoints model\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/b15b3b873ad5c294d0c010fb1cc56ecb583d1618\"\u003e\u003ccode\u003eb15b3b8\u003c/code\u003e\u003c/a\u003e Update API model\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/090e46936630944917cfd6a0990ea3fd6391475b\"\u003e\u003ccode\u003e090e469\u003c/code\u003e\u003c/a\u003e Feat tmv2 parity (\u003ca href=\"https://redirect.github.com/aws/aws-sdk-go-v2/issues/3424\"\u003e#3424\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/aws/aws-sdk-go-v2/compare/v1.41.5...v1.41.9\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `github.com/aws/aws-sdk-go-v2/service/ssm` from 1.68.4 to 1.68.8\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/5841d3ae2cfd6e6113ca61b71d69131b84932f4c\"\u003e\u003ccode\u003e5841d3a\u003c/code\u003e\u003c/a\u003e Release 2026-05-29\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/16ac80d79c282366cae312281b3df925af4e9bf1\"\u003e\u003ccode\u003e16ac80d\u003c/code\u003e\u003c/a\u003e Regenerated Clients\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/167926f8aca7228f2dd1bed73707505875aafef4\"\u003e\u003ccode\u003e167926f\u003c/code\u003e\u003c/a\u003e Update endpoints model\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/a0fce13e18c6bff397ad77fac4cde4ab3f3b93e0\"\u003e\u003ccode\u003ea0fce13\u003c/code\u003e\u003c/a\u003e Update API model\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/223c0057211950899e0117dc027cc299a1dac664\"\u003e\u003ccode\u003e223c005\u003c/code\u003e\u003c/a\u003e update to smithy-go v1.26.0 (\u003ca href=\"https://redirect.github.com/aws/aws-sdk-go-v2/issues/3426\"\u003e#3426\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/74c501189a40c9b937432a1b2a4cacffc851ea76\"\u003e\u003ccode\u003e74c5011\u003c/code\u003e\u003c/a\u003e Release 2026-05-28\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/7d82651329a86064a9026f6219cff72921fa74da\"\u003e\u003ccode\u003e7d82651\u003c/code\u003e\u003c/a\u003e Regenerated Clients\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/79c63d9289784de4914143b7bff67157aa6a2a90\"\u003e\u003ccode\u003e79c63d9\u003c/code\u003e\u003c/a\u003e Update endpoints model\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/b15b3b873ad5c294d0c010fb1cc56ecb583d1618\"\u003e\u003ccode\u003eb15b3b8\u003c/code\u003e\u003c/a\u003e Update API model\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-go-v2/commit/090e46936630944917cfd6a0990ea3fd6391475b\"\u003e\u003ccode\u003e090e469\u003c/code\u003e\u003c/a\u003e Feat tmv2 parity (\u003ca href=\"https://redirect.github.com/aws/aws-sdk-go-v2/issues/3424\"\u003e#3424\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/aws/aws-sdk-go-v2/compare/service/ssm/v1.68.4...service/ssm/v1.68.8\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `github.com/aws/smithy-go` from 1.24.2 to 1.26.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/aws/smithy-go/releases\"\u003egithub.com/aws/smithy-go's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev1.25.0\u003c/h2\u003e\n\u003ch1\u003eRelease (2026-04-15)\u003c/h1\u003e\n\u003ch2\u003eGeneral Highlights\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eDependency Update\u003c/strong\u003e: Updated to the latest SDK module versions\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eModule Highlights\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003egithub.com/aws/smithy-go\u003c/code\u003e: v1.25.0\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eFeature\u003c/strong\u003e: Add support for endpointBdd trait\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/aws/smithy-go/blob/main/CHANGELOG.md\"\u003egithub.com/aws/smithy-go's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003eRelease (2026-05-27)\u003c/h1\u003e\n\u003ch2\u003eGeneral Highlights\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eDependency Update\u003c/strong\u003e: Updated to the latest SDK module versions\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eModule Highlights\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003egithub.com/aws/smithy-go\u003c/code\u003e: v1.26.0\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eFeature\u003c/strong\u003e: Add StringSlice to endpoint rulesfn.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch1\u003eRelease (2026-04-23)\u003c/h1\u003e\n\u003ch2\u003eGeneral Highlights\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eDependency Update\u003c/strong\u003e: Updated to the latest SDK module versions\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eModule Highlights\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003egithub.com/aws/smithy-go\u003c/code\u003e: v1.25.1\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eBug Fix\u003c/strong\u003e: Fixed a memory leak in the LRU cache implementation used by some AWS services.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch1\u003eRelease (2026-04-15)\u003c/h1\u003e\n\u003ch2\u003eGeneral Highlights\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eDependency Update\u003c/strong\u003e: Updated to the latest SDK module versions\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eModule Highlights\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003egithub.com/aws/smithy-go\u003c/code\u003e: v1.25.0\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eFeature\u003c/strong\u003e: Add support for endpointBdd trait\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch1\u003eRelease (2026-04-02)\u003c/h1\u003e\n\u003ch2\u003eGeneral Highlights\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eDependency Update\u003c/strong\u003e: Updated to the latest SDK module versions\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eModule Highlights\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003egithub.com/aws/smithy-go\u003c/code\u003e: v1.24.3\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eBug Fix\u003c/strong\u003e: Add additional sigv4 configuration.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003egithub.com/aws/smithy-go/aws-http-auth\u003c/code\u003e: \u003ca href=\"https://github.com/aws/smithy-go/blob/main/aws-http-auth/CHANGELOG.md#v113-2026-04-02\"\u003ev1.1.3\u003c/a\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eBug Fix\u003c/strong\u003e: Add additional sigv4 configuration.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch1\u003eRelease (2026-02-27)\u003c/h1\u003e\n\u003ch2\u003eGeneral Highlights\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eDependency Update\u003c/strong\u003e: Bump minimum go version to 1.24.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch1\u003eRelease (2026-02-20)\u003c/h1\u003e\n\u003ch2\u003eGeneral Highlights\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eDependency Update\u003c/strong\u003e: Updated to the latest SDK module versions\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eModule Highlights\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003egithub.com/aws/smithy-go\u003c/code\u003e: v1.24.1\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/smithy-go/commit/45ed8311108fa4d204aa8ad3f5264442568c6b01\"\u003e\u003ccode\u003e45ed831\u003c/code\u003e\u003c/a\u003e Release 2026-05-27\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/smithy-go/commit/36699a9ad5bb1f4054d69de11e573003ec6c2865\"\u003e\u003ccode\u003e36699a9\u003c/code\u003e\u003c/a\u003e handle vars in auth scheme id tmpl (\u003ca href=\"https://redirect.github.com/aws/smithy-go/issues/667\"\u003e#667\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/smithy-go/commit/b81ddf73b3738ec93447b59aa920666f7154ae36\"\u003e\u003ccode\u003eb81ddf7\u003c/code\u003e\u003c/a\u003e Use GoDependency to add SDK dependencies on codegen instead of relying on go ...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/smithy-go/commit/999a54bb7359cf5740b9c23ca52220c5777b486d\"\u003e\u003ccode\u003e999a54b\u003c/code\u003e\u003c/a\u003e add event stream test generator (\u003ca href=\"https://redirect.github.com/aws/smithy-go/issues/661\"\u003e#661\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/smithy-go/commit/22e6cf7f8d19a35512b84cfb3f72e4e77ab29592\"\u003e\u003ccode\u003e22e6cf7\u003c/code\u003e\u003c/a\u003e Expand JMESPath truthy check by allowing bare collections to be evaluated (\u003ca href=\"https://redirect.github.com/aws/smithy-go/issues/654\"\u003e#654\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/smithy-go/commit/e094f45e716e33a1b950cf8bbe804790bf87f965\"\u003e\u003ccode\u003ee094f45\u003c/code\u003e\u003c/a\u003e Release 2026-04-23\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/smithy-go/commit/214d45be3be5188c4d2fd9cf744c21f8b3dfbabc\"\u003e\u003ccode\u003e214d45b\u003c/code\u003e\u003c/a\u003e changelog\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/smithy-go/commit/3477da0b4dbf31de58ac375fe5abe5d268280824\"\u003e\u003ccode\u003e3477da0\u003c/code\u003e\u003c/a\u003e fix lrucache memory leak on existing item put (\u003ca href=\"https://redirect.github.com/aws/smithy-go/issues/652\"\u003e#652\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/smithy-go/commit/0d0b4d00f2430e62a790203b89fd76dceb4ae213\"\u003e\u003ccode\u003e0d0b4d0\u003c/code\u003e\u003c/a\u003e Bump Smithy version to 1.69.0 (\u003ca href=\"https://redirect.github.com/aws/smithy-go/issues/650\"\u003e#650\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/smithy-go/commit/be5e5ef0d73560eac9d71df7995b0eaffb9a8d71\"\u003e\u003ccode\u003ebe5e5ef\u003c/code\u003e\u003c/a\u003e check \u003ca href=\"https://github.com/enum\"\u003e\u003ccode\u003e@​enum\u003c/code\u003e\u003c/a\u003e on strings for cbor (\u003ca href=\"https://redirect.github.com/aws/smithy-go/issues/649\"\u003e#649\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/aws/smithy-go/compare/v1.24.2...v1.26.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `github.com/containerd/containerd/api` from 1.10.0 to 1.11.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/containerd/containerd/releases\"\u003egithub.com/containerd/containerd/api's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003econtainerd API 1.11.1\u003c/h2\u003e\n\u003cp\u003eWelcome to the api/v1.11.1 release of containerd!\u003c/p\u003e\n\u003cp\u003eThe first patch release for the containerd 1.11 API includes a fix\nin the task endpoints for non-runc shims.\u003c/p\u003e\n\u003ch3\u003eHighlights\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix sandbox task API endpoints for non-runc runtimes (\u003ca href=\"https://redirect.github.com/containerd/containerd/pull/13422\"\u003e#13422\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003ePlease try out the release binaries and report any issues at\n\u003ca href=\"https://github.com/containerd/containerd/issues\"\u003ehttps://github.com/containerd/containerd/issues\u003c/a\u003e.\u003c/p\u003e\n\u003ch3\u003eContributors\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eDerek McGowan\u003c/li\u003e\n\u003cli\u003eMaksym Pavlenko\u003c/li\u003e\n\u003cli\u003eSamuel Karp\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eChanges\u003c/h3\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003cul\u003e\n\u003cli\u003ePrepare release notes for api/v1.11.1 (\u003ca href=\"https://redirect.github.com/containerd/containerd/pull/13444\"\u003e#13444\u003c/a\u003e)\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/containerd/containerd/commit/da7aef299c57cc1f290700ade8fa0a5fec69a462\"\u003e\u003ccode\u003eda7aef299\u003c/code\u003e\u003c/a\u003e Prepare release notes for api/v1.11.1\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003eFix sandbox task API endpoints for non-runc runtimes (\u003ca href=\"https://redirect.github.com/containerd/containerd/pull/13422\"\u003e#13422\u003c/a\u003e)\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/containerd/containerd/commit/e44f5f9ec610d95a712d230e8a19ae516e0a26ac\"\u003e\u003ccode\u003ee44f5f9ec\u003c/code\u003e\u003c/a\u003e protos: include task API address to CreateTaskRequest\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003ch3\u003eDependency Changes\u003c/h3\u003e\n\u003cp\u003eThis release has no dependency changes\u003c/p\u003e\n\u003cp\u003ePrevious release can be found at \u003ca href=\"https://github.com/containerd/containerd/releases/tag/api/v1.11.0\"\u003eapi/v1.11.0\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003econtainerd API 1.11.0\u003c/h2\u003e\n\u003cp\u003eWelcome to the api/v1.11.0 release of containerd!\u003c/p\u003e\n\u003cp\u003eThe 12th release for the containerd 1.x API aligns with the containerd 2.3 release.\u003c/p\u003e\n\u003ch3\u003eHighlights\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd transfer types for container filesystem copy (\u003ca href=\"https://redirect.github.com/containerd/containerd/pull/13165\"\u003e#13165\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eUpdate sandbox API to include spec field (\u003ca href=\"https://redirect.github.com/containerd/containerd/pull/12840\"\u003e#12840\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch4\u003eImage Distribution\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eAdd os.features support for EROFS native container images (\u003ca href=\"https://redirect.github.com/containerd/containerd/pull/13091\"\u003e#13091\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/containerd/containerd/commit/f822a911ab2b7c73e30bc0f36ea319642c9711b1\"\u003e\u003ccode\u003ef822a91\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/containerd/containerd/issues/13444\"\u003e#13444\u003c/a\u003e from dmcgowan/prepare-api-v1.11.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/containerd/containerd/commit/da7aef299c57cc1f290700ade8fa0a5fec69a462\"\u003e\u003ccode\u003eda7aef2\u003c/code\u003e\u003c/a\u003e Prepare release notes for api/v1.11.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/containerd/containerd/commit/a50a704094cf72710ccfa4944a642ef4e7ec9d2c\"\u003e\u003ccode\u003ea50a704\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/containerd/containerd/issues/13422\"\u003e#13422\u003c/a\u003e from k8s-infra-cherrypick-robot/cherry-pick-13360-t...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/containerd/containerd/commit/5282d4e09d3bc8b0957780caa7a4644fac7c86a7\"\u003e\u003ccode\u003e5282d4e\u003c/code\u003e\u003c/a\u003e Wire task address and version fields\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/containerd/containerd/commit/e44f5f9ec610d95a712d230e8a19ae516e0a26ac\"\u003e\u003ccode\u003ee44f5f9\u003c/code\u003e\u003c/a\u003e protos: include task API address to CreateTaskRequest\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/containerd/containerd/commit/85f22f7afa3af5aa5083cc7ae50c3b58a35b8849\"\u003e\u003ccode\u003e85f22f7\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/containerd/containerd/issues/13409\"\u003e#13409\u003c/a\u003e from k8s-infra-cherrypick-robot/cherry-pick-13327-t...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/containerd/containerd/commit/4d80a31bf637bc15e83e50a15941bf5bb0cb3988\"\u003e\u003ccode\u003e4d80a31\u003c/code\u003e\u003c/a\u003e seccomp: Block AF_ALG in default socket policy\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/containerd/containerd/commit/2ed0d97b6e58def34684a1bffc2ab6931182f221\"\u003e\u003ccode\u003e2ed0d97\u003c/code\u003e\u003c/a\u003e seccomp: Document socket rule scope and socketcall limitation\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/containerd/containerd/commit/2315484b7e7a5b53e73ad3b143c780ec7612420b\"\u003e\u003ccode\u003e2315484\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/containerd/containerd/issues/13390\"\u003e#13390\u003c/a\u003e from k8s-infra-cherrypick-robot/cherry-pick-13363-t...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/containerd/containerd/commit/1ad3402b855b77eb3800f74c87ff78736edf72d2\"\u003e\u003ccode\u003e1ad3402\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/containerd/containerd/issues/13394\"\u003e#13394\u003c/a\u003e from k8s-infra-cherrypick-robot/cherry-pick-13389-t...\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/containerd/containerd/compare/api/v1.10.0...api/v1.11.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `github.com/containerd/containerd/v2` from 2.2.3 to 2.3.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/containerd/containerd/releases\"\u003egithub.com/containerd/containerd/v2's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003econtainerd 2.3.1\u003c/h2\u003e\n\u003cp\u003eWelcome to the v2.3.1 release of containerd!\u003c/p\u003e\n\u003cp\u003eThe first patch ...\n\n_Description has been truncated_","html_url":"https://github.com/sipsma/dagger/pull/1292","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/sipsma%2Fdagger/issues/1292","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/1292/packages"}},{"old_version":"1.50.1","new_version":"1.51.0","update_type":"minor","path":null,"pr_created_at":"2026-05-28T17:19:10.000Z","version_change":"1.50.1 → 1.51.0","issue":{"uuid":"4542377296","node_id":"PR_kwDOSqkYic7gVQz8","number":5,"state":"closed","title":"deps(deps): bump modernc.org/sqlite from 1.50.1 to 1.51.0","user":"dependabot[bot]","labels":["dependencies","go"],"assignees":[],"locked":false,"comments_count":2,"pull_request":true,"closed_at":"2026-05-28T18:05:41.000Z","author_association":null,"state_reason":null,"created_at":"2026-05-28T17:19:10.000Z","updated_at":"2026-05-28T18:05:51.000Z","time_to_close":2791,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"deps(deps)","packages":[{"name":"modernc.org/sqlite","old_version":"1.50.1","new_version":"1.51.0","repository_url":null}],"path":null,"ecosystem":"go"},"body":"Bumps [modernc.org/sqlite](https://gitlab.com/cznic/sqlite) from 1.50.1 to 1.51.0.\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://gitlab.com/cznic/sqlite/blob/master/CHANGELOG.md\"\u003emodernc.org/sqlite's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003eChangelog\u003c/h1\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e2026-05-28 v1.52.0:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdd \u003ccode\u003eBackup.Remaining\u003c/code\u003e and \u003ccode\u003eBackup.PageCount\u003c/code\u003e, thin wrappers around the existing \u003ccode\u003esqlite3_backup_remaining\u003c/code\u003e and \u003ccode\u003esqlite3_backup_pagecount\u003c/code\u003e C symbols. Together they expose the per-\u003ccode\u003eStep\u003c/code\u003e progress counters that the underlying backup object already maintains, enabling progress reporting during online backups without dropping to \u003ccode\u003emodernc.org/sqlite/lib\u003c/code\u003e directly.\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/122\"\u003e#122\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/122\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/122\u003c/a\u003e), thanks Ian Chechin!\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e2026-05-28 v1.51.0:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003ePool the \u003ccode\u003e[]driver.Value\u003c/code\u003e slice passed to scalar/aggregate UDF callbacks and to vtab \u003ccode\u003eFilter\u003c/code\u003e/\u003ccode\u003eInsert\u003c/code\u003e/\u003ccode\u003eUpdate\u003c/code\u003e callbacks, eliminating the dominant per-row allocation on UDF-heavy queries. Benchmarks on a 1000-row, 3-arg noop scalar UDF show ~40% fewer bytes/op and ~15% fewer allocs/op.\u003c/li\u003e\n\u003cli\u003eDocument the matching \u0026quot;arguments are not valid past return\u0026quot; contract on \u003ccode\u003evtab.Cursor.Filter\u003c/code\u003e and \u003ccode\u003evtab.Updater.Insert\u003c/code\u003e/\u003ccode\u003eUpdate\u003c/code\u003e, consistent with the existing rule for \u003ccode\u003eFunctionImpl.Scalar\u003c/code\u003e / \u003ccode\u003eAggregateFunction.Step\u003c/code\u003e / \u003ccode\u003eWindowInverse\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003eResolves [GitLab issue \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/226\"\u003e#226\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/issues/226\"\u003ehttps://gitlab.com/cznic/sqlite/-/issues/226\u003c/a\u003e). See [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/114\"\u003e#114\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/114\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/114\u003c/a\u003e), thanks Ian Chechin!\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003eFileControl.FileControlDataVersion\u003c/code\u003e, a wrapper around \u003ccode\u003eSQLITE_FCNTL_DATA_VERSION\u003c/code\u003e for observing pager-cache data-version changes, including those made on the same connection. Useful as a primitive for application-level cache invalidation.\u003c/li\u003e\n\u003cli\u003eExposed via the idiomatic \u003ccode\u003edatabase/sql\u003c/code\u003e escape hatch \u003ccode\u003e(*sql.Conn).Raw()\u003c/code\u003e, consistent with the existing \u003ccode\u003eFileControlPersistWAL\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/115\"\u003e#115\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/115\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/115\u003c/a\u003e), thanks Ian Chechin!\u003c/li\u003e\n\u003cli\u003eFix a regression where in-memory connections (\u003ccode\u003e:memory:\u003c/code\u003e, \u003ccode\u003efile::memory:\u003c/code\u003e, shared-cache memory URIs) were discarded by \u003ccode\u003edatabase/sql\u003c/code\u003e after a context-cancelled query, taking the entire in-memory store with them. The fix for \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/198\"\u003e#198\u003c/a\u003e had added an \u003ccode\u003esqlite3_is_interrupted\u003c/code\u003e check to the connection validator that mistakenly applied to in-memory connections too, re-introducing the bug originally fixed by !74. File-backed connections keep the existing behaviour and are still discarded after an interrupt.\u003c/li\u003e\n\u003cli\u003eResolves [GitLab issue \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/196\"\u003e#196\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/issues/196\"\u003ehttps://gitlab.com/cznic/sqlite/-/issues/196\u003c/a\u003e). See [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/116\"\u003e#116\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/116\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/116\u003c/a\u003e), thanks Ian Chechin!\u003c/li\u003e\n\u003cli\u003eAdd an opt-in \u003ccode\u003eFunctionImpl.VolatileArgs\u003c/code\u003e flag that hands TEXT and BLOB arguments to scalar and aggregate UDF callbacks as zero-copy views (\u003ccode\u003eunsafe.String\u003c/code\u003e/\u003ccode\u003eunsafe.Slice\u003c/code\u003e) over SQLite's own value buffers, eliminating the per-argument \u003ccode\u003elibc.GoString\u003c/code\u003e/\u003ccode\u003emake([]byte)\u003c/code\u003e copy that the \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/226\"\u003e#226\u003c/a\u003e slice-pooling left as the remaining per-row allocation. On the same 1000-row, 3-arg (INTEGER/TEXT/BLOB) noop scalar UDF this removes a further ~35% of allocs/op and ~11% of bytes/op on top of \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/226\"\u003e#226\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003eThe views are valid only for the duration of the callback and must not be retained past return or across rows; a callback that needs to keep a value must copy it. With \u003ccode\u003eVolatileArgs\u003c/code\u003e unset (the default) arguments keep the existing copied, caller-owned semantics, so the flag is fully backward compatible; it has no effect on integer, float, time, or NULL arguments.\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/120\"\u003e#120\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/120\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/120\u003c/a\u003e), thanks Ian Chechin!\u003c/li\u003e\n\u003cli\u003eExtend the opt-in \u003ccode\u003eVolatileArgs\u003c/code\u003e zero-copy TEXT/BLOB argument access from \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/120\"\u003e#120\u003c/a\u003e to the virtual-table \u003ccode\u003eCursor.Filter\u003c/code\u003e (\u003ccode\u003exFilter\u003c/code\u003e) and \u003ccode\u003eUpdater.Insert\u003c/code\u003e/\u003ccode\u003eUpdate\u003c/code\u003e (\u003ccode\u003exUpdate\u003c/code\u003e) callbacks. A \u003ccode\u003evtab.Module\u003c/code\u003e opts in by implementing the new optional \u003ccode\u003evtab.VolatileArgsOpter\u003c/code\u003e interface (\u003ccode\u003eVolatileArgs() bool\u003c/code\u003e); the flag is read once at module registration and shared by every table created from it. On a vtab call carrying one TEXT and one BLOB argument this removes 2 allocs/op (one \u003ccode\u003elibc.GoString\u003c/code\u003e, one \u003ccode\u003emake([]byte)\u003c/code\u003e) on each of the Filter and Update paths.\u003c/li\u003e\n\u003cli\u003eThe same safety contract as \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/120\"\u003e#120\u003c/a\u003e applies: the views are valid only for the duration of the callback and must not be retained past return or across rows; a callback that needs to keep a value must copy it. Modules that do not implement \u003ccode\u003eVolatileArgsOpter\u003c/code\u003e (the default for all existing modules) are byte-for-byte unchanged, and the flag has no effect on integer, float, time, or NULL arguments.\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/121\"\u003e#121\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/121\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/121\u003c/a\u003e), thanks Ian Chechin!\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e2026-05-10 v1.50.1:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eUpgrade to \u003ca href=\"https://sqlite.org/releaselog/3_53_1.html\"\u003eSQLite 3.53.1\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e2026-04-24 v1.50.0:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eUpgrade to sqlite-vec \u003ca href=\"https://github.com/asg017/sqlite-vec/releases/tag/v0.1.9\"\u003ev0.1.9\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003eIntroduce \u003ccode\u003eColumnInfo\u003c/code\u003e, enabling dynamic query builders and ORMs to retrieve underlying SQLite C-API metadata (\u003ccode\u003eOriginName\u003c/code\u003e, \u003ccode\u003eTableName\u003c/code\u003e, \u003ccode\u003eDatabaseName\u003c/code\u003e, and \u003ccode\u003eDeclType\u003c/code\u003e).\u003c/li\u003e\n\u003cli\u003eThis feature is exposed via the idiomatic \u003ccode\u003edatabase/sql\u003c/code\u003e escape hatch \u003ccode\u003e(*sql.Conn).Raw()\u003c/code\u003e, avoiding custom statement handles and keeping the standard library workflow intact.\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/113\"\u003e#113\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/113\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/113\u003c/a\u003e), thanks Josh Bleecher Snyder!\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e2026-04-17 v1.49.0: Upgrade to \u003ca href=\"https://sqlite.org/releaselog/3_53_0.html\"\u003eSQLite 3.53.0\u003c/a\u003e.\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdded \u003ccode\u003e-DSQLITE_ENABLE_DBPAGE_VTAB\u003c/code\u003e to the transpilation. See \u003ca href=\"https://www.sqlite.org/dbpage.html\"\u003e\u0026quot;The SQLITE_DBPAGE Virtual Table\u0026quot;\u003c/a\u003e for details.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e2026-04-06 v1.48.2:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eFix ABI mapping mismatch in the pre-update hook trampoline that caused silent truncation of large 64-bit RowIDs.\u003c/li\u003e\n\u003cli\u003eEnsure the Go trampoline signature correctly aligns with the public \u003ccode\u003esqlite3_preupdate_hook\u003c/code\u003e C API, preventing data corruption for high-entropy keys (e.g., Snowflake IDs).\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/98\"\u003e#98\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/98\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/98\u003c/a\u003e), thanks Josh Bleecher Snyder!\u003c/li\u003e\n\u003cli\u003eFix the memory allocator used in \u003ccode\u003e(*conn).Deserialize\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003eReplace \u003ccode\u003etls.Alloc\u003c/code\u003e with \u003ccode\u003esqlite3_malloc64\u003c/code\u003e to prevent internal allocator corruption. This ensures the buffer is safely owned by SQLite, which may resize or free it due to the \u003ccode\u003eSQLITE_DESERIALIZE_RESIZEABLE\u003c/code\u003e and \u003ccode\u003eSQLITE_DESERIALIZE_FREEONCLOSE\u003c/code\u003e flags.\u003c/li\u003e\n\u003cli\u003ePrevent a memory leak by properly freeing the allocated buffer if fetching the main database name fails before handing ownership to SQLite.\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/100\"\u003e#100\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/100\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/100\u003c/a\u003e), thanks Josh Bleecher Snyder!\u003c/li\u003e\n\u003cli\u003eFix \u003ccode\u003e(*conn).Deserialize\u003c/code\u003e to explicitly reject \u003ccode\u003enil\u003c/code\u003e or empty byte slices.\u003c/li\u003e\n\u003cli\u003ePrevent silent database disconnection and connection pool corruption caused by SQLite's default behavior when \u003ccode\u003esqlite3_deserialize\u003c/code\u003e receives a 0-length buffer.\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/101\"\u003e#101\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/101\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/101\u003c/a\u003e), thanks Josh Bleecher Snyder!\u003c/li\u003e\n\u003cli\u003eFix \u003ccode\u003ecommitHookTrampoline\u003c/code\u003e and \u003ccode\u003erollbackHookTrampoline\u003c/code\u003e signatures by removing the unused \u003ccode\u003epCsr\u003c/code\u003e parameter.\u003c/li\u003e\n\u003cli\u003eAligns internal hook callbacks accurately with the underlying SQLite C API, cleaning up the code to prevent potential future confusion or bugs.\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/102\"\u003e#102\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/102\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/102\u003c/a\u003e), thanks Josh Bleecher Snyder!\u003c/li\u003e\n\u003cli\u003eFix \u003ccode\u003echeckptr\u003c/code\u003e instrumentation failures during \u003ccode\u003ego test -race\u003c/code\u003e when registering and using virtual tables (\u003ccode\u003evtab\u003c/code\u003e).\u003c/li\u003e\n\u003cli\u003eAllocate \u003ccode\u003esqlite3_module\u003c/code\u003e instances using the C allocator (\u003ccode\u003elibc.Xcalloc\u003c/code\u003e) instead of the Go heap. This ensures transpiled C code can safely perform pointer operations on the struct without tripping Go's pointer checks.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/a5f439be99fee4478456048b117d3ca84518d5a7\"\u003e\u003ccode\u003ea5f439b\u003c/code\u003e\u003c/a\u003e CHANGELOG.md: fix release tag\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/41e77be50473b810a66c9beaf6d05d042b2a5556\"\u003e\u003ccode\u003e41e77be\u003c/code\u003e\u003c/a\u003e CHANGELOG.md: document \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/121\"\u003e#121\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/827df98d7342db30f09454eaedfe87ef3e7277db\"\u003e\u003ccode\u003e827df98\u003c/code\u003e\u003c/a\u003e gofmt -l -s -w vtab/*.go\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/0d384cb7dcab26840d003cee10f3ae7ae08a883c\"\u003e\u003ccode\u003e0d384cb\u003c/code\u003e\u003c/a\u003e Merge branch 'feat/vtab-volatile-args-opt-in' into 'master'\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/06e06d50e3bec5f79dd4ad60847a6d6405b76721\"\u003e\u003ccode\u003e06e06d5\u003c/code\u003e\u003c/a\u003e extend VolatileArgs opt-in to vtab Filter and Updater Insert/Update\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/2486abd8b22026a1047cdf67a1b090f3bae4210f\"\u003e\u003ccode\u003e2486abd\u003c/code\u003e\u003c/a\u003e HACKING.md, CLAUDE.md: this repo is not auto-tagged, tagging is manual\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/d808a8f1a5d9651553bea0877197fe1c73dac189\"\u003e\u003ccode\u003ed808a8f\u003c/code\u003e\u003c/a\u003e CHANGELOG.md: document \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/120\"\u003e#120\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/fac1cab20834685f75c7201d756608fd71b71824\"\u003e\u003ccode\u003efac1cab\u003c/code\u003e\u003c/a\u003e Merge branch 'feat/volatile-args-opt-in' into 'master'\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/569614c5d4b0187b9b8c632292d3556ce53e1274\"\u003e\u003ccode\u003e569614c\u003c/code\u003e\u003c/a\u003e address review: empty-BLOB shape parity + re-entrancy note\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/905960c9f78c54b85f29718cc34b69088edb1db2\"\u003e\u003ccode\u003e905960c\u003c/code\u003e\u003c/a\u003e add FunctionImpl.VolatileArgs opt-in for zero-copy TEXT/BLOB args\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://gitlab.com/cznic/sqlite/compare/v1.50.1...v1.51.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n","html_url":"https://github.com/NikeGunn/agentguard/pull/5","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/NikeGunn%2Fagentguard/issues/5","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/5/packages"}},{"old_version":"1.46.1","new_version":"1.50.1","update_type":"minor","path":null,"pr_created_at":"2026-05-24T17:26:45.000Z","version_change":"1.46.1 → 1.50.1","issue":{"uuid":"4512382424","node_id":"PR_kwDOSmnmzc7e0IoW","number":7,"state":"open","title":"Bump modernc.org/sqlite from 1.46.1 to 1.50.1","user":"dependabot[bot]","labels":["dependencies","go"],"assignees":[],"locked":false,"comments_count":3,"pull_request":true,"closed_at":null,"author_association":null,"state_reason":null,"created_at":"2026-05-24T17:26:45.000Z","updated_at":"2026-05-24T18:09:56.000Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"Bump","packages":[{"name":"modernc.org/sqlite","old_version":"1.46.1","new_version":"1.50.1","repository_url":null}],"path":null,"ecosystem":"go"},"body":"Bumps [modernc.org/sqlite](https://gitlab.com/cznic/sqlite) from 1.46.1 to 1.50.1.\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://gitlab.com/cznic/sqlite/blob/master/CHANGELOG.md\"\u003emodernc.org/sqlite's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003eChangelog\u003c/h1\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e2026-05-21 v1.51.2:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003ePool the \u003ccode\u003e[]driver.Value\u003c/code\u003e slice passed to scalar/aggregate UDF callbacks and to vtab \u003ccode\u003eFilter\u003c/code\u003e/\u003ccode\u003eInsert\u003c/code\u003e/\u003ccode\u003eUpdate\u003c/code\u003e callbacks, eliminating the dominant per-row allocation on UDF-heavy queries. Benchmarks on a 1000-row, 3-arg noop scalar UDF show ~40% fewer bytes/op and ~15% fewer allocs/op.\u003c/li\u003e\n\u003cli\u003eDocument the matching \u0026quot;arguments are not valid past return\u0026quot; contract on \u003ccode\u003evtab.Cursor.Filter\u003c/code\u003e and \u003ccode\u003evtab.Updater.Insert\u003c/code\u003e/\u003ccode\u003eUpdate\u003c/code\u003e, consistent with the existing rule for \u003ccode\u003eFunctionImpl.Scalar\u003c/code\u003e / \u003ccode\u003eAggregateFunction.Step\u003c/code\u003e / \u003ccode\u003eWindowInverse\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003eResolves [GitLab issue \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/226\"\u003e#226\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/issues/226\"\u003ehttps://gitlab.com/cznic/sqlite/-/issues/226\u003c/a\u003e). See [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/114\"\u003e#114\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/114\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/114\u003c/a\u003e), thanks Ian Chechin!\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003eFileControl.FileControlDataVersion\u003c/code\u003e, a wrapper around \u003ccode\u003eSQLITE_FCNTL_DATA_VERSION\u003c/code\u003e for observing pager-cache data-version changes, including those made on the same connection. Useful as a primitive for application-level cache invalidation.\u003c/li\u003e\n\u003cli\u003eExposed via the idiomatic \u003ccode\u003edatabase/sql\u003c/code\u003e escape hatch \u003ccode\u003e(*sql.Conn).Raw()\u003c/code\u003e, consistent with the existing \u003ccode\u003eFileControlPersistWAL\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/115\"\u003e#115\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/115\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/115\u003c/a\u003e), thanks Ian Chechin!\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e2026-05-10 v1.50.1:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eUpgrade to \u003ca href=\"https://sqlite.org/releaselog/3_53_1.html\"\u003eSQLite 3.53.1\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e2026-04-24 v1.50.0:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eUpgrade to sqlite-vec \u003ca href=\"https://github.com/asg017/sqlite-vec/releases/tag/v0.1.9\"\u003ev0.1.9\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003eIntroduce \u003ccode\u003eColumnInfo\u003c/code\u003e, enabling dynamic query builders and ORMs to retrieve underlying SQLite C-API metadata (\u003ccode\u003eOriginName\u003c/code\u003e, \u003ccode\u003eTableName\u003c/code\u003e, \u003ccode\u003eDatabaseName\u003c/code\u003e, and \u003ccode\u003eDeclType\u003c/code\u003e).\u003c/li\u003e\n\u003cli\u003eThis feature is exposed via the idiomatic \u003ccode\u003edatabase/sql\u003c/code\u003e escape hatch \u003ccode\u003e(*sql.Conn).Raw()\u003c/code\u003e, avoiding custom statement handles and keeping the standard library workflow intact.\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/113\"\u003e#113\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/113\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/113\u003c/a\u003e), thanks Josh Bleecher Snyder!\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e2026-04-17 v1.49.0: Upgrade to \u003ca href=\"https://sqlite.org/releaselog/3_53_0.html\"\u003eSQLite 3.53.0\u003c/a\u003e.\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdded \u003ccode\u003e-DSQLITE_ENABLE_DBPAGE_VTAB\u003c/code\u003e to the transpilation. See \u003ca href=\"https://www.sqlite.org/dbpage.html\"\u003e\u0026quot;The SQLITE_DBPAGE Virtual Table\u0026quot;\u003c/a\u003e for details.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e2026-04-06 v1.48.2:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eFix ABI mapping mismatch in the pre-update hook trampoline that caused silent truncation of large 64-bit RowIDs.\u003c/li\u003e\n\u003cli\u003eEnsure the Go trampoline signature correctly aligns with the public \u003ccode\u003esqlite3_preupdate_hook\u003c/code\u003e C API, preventing data corruption for high-entropy keys (e.g., Snowflake IDs).\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/98\"\u003e#98\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/98\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/98\u003c/a\u003e), thanks Josh Bleecher Snyder!\u003c/li\u003e\n\u003cli\u003eFix the memory allocator used in \u003ccode\u003e(*conn).Deserialize\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003eReplace \u003ccode\u003etls.Alloc\u003c/code\u003e with \u003ccode\u003esqlite3_malloc64\u003c/code\u003e to prevent internal allocator corruption. This ensures the buffer is safely owned by SQLite, which may resize or free it due to the \u003ccode\u003eSQLITE_DESERIALIZE_RESIZEABLE\u003c/code\u003e and \u003ccode\u003eSQLITE_DESERIALIZE_FREEONCLOSE\u003c/code\u003e flags.\u003c/li\u003e\n\u003cli\u003ePrevent a memory leak by properly freeing the allocated buffer if fetching the main database name fails before handing ownership to SQLite.\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/100\"\u003e#100\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/100\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/100\u003c/a\u003e), thanks Josh Bleecher Snyder!\u003c/li\u003e\n\u003cli\u003eFix \u003ccode\u003e(*conn).Deserialize\u003c/code\u003e to explicitly reject \u003ccode\u003enil\u003c/code\u003e or empty byte slices.\u003c/li\u003e\n\u003cli\u003ePrevent silent database disconnection and connection pool corruption caused by SQLite's default behavior when \u003ccode\u003esqlite3_deserialize\u003c/code\u003e receives a 0-length buffer.\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/101\"\u003e#101\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/101\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/101\u003c/a\u003e), thanks Josh Bleecher Snyder!\u003c/li\u003e\n\u003cli\u003eFix \u003ccode\u003ecommitHookTrampoline\u003c/code\u003e and \u003ccode\u003erollbackHookTrampoline\u003c/code\u003e signatures by removing the unused \u003ccode\u003epCsr\u003c/code\u003e parameter.\u003c/li\u003e\n\u003cli\u003eAligns internal hook callbacks accurately with the underlying SQLite C API, cleaning up the code to prevent potential future confusion or bugs.\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/102\"\u003e#102\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/102\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/102\u003c/a\u003e), thanks Josh Bleecher Snyder!\u003c/li\u003e\n\u003cli\u003eFix \u003ccode\u003echeckptr\u003c/code\u003e instrumentation failures during \u003ccode\u003ego test -race\u003c/code\u003e when registering and using virtual tables (\u003ccode\u003evtab\u003c/code\u003e).\u003c/li\u003e\n\u003cli\u003eAllocate \u003ccode\u003esqlite3_module\u003c/code\u003e instances using the C allocator (\u003ccode\u003elibc.Xcalloc\u003c/code\u003e) instead of the Go heap. This ensures transpiled C code can safely perform pointer operations on the struct without tripping Go's pointer checks.\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/103\"\u003e#103\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/103\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/103\u003c/a\u003e), thanks Josh Bleecher Snyder!\u003c/li\u003e\n\u003cli\u003eFix data race on \u003ccode\u003emutex.id\u003c/code\u003e in the \u003ccode\u003emutexTry\u003c/code\u003e non-recursive path.\u003c/li\u003e\n\u003cli\u003eEnsure consistent atomic writes (\u003ccode\u003eatomic.StoreInt32\u003c/code\u003e) to prevent data races with atomic loads in \u003ccode\u003emutexHeld\u003c/code\u003e and \u003ccode\u003emutexNotheld\u003c/code\u003e during concurrent execution.\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/104\"\u003e#104\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/104\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/104\u003c/a\u003e), thanks Josh Bleecher Snyder!\u003c/li\u003e\n\u003cli\u003eFix resource leak in \u003ccode\u003e(*Backup).Commit\u003c/code\u003e where the destination connection was not closed on error.\u003c/li\u003e\n\u003cli\u003eEnsure \u003ccode\u003edstConn\u003c/code\u003e is properly closed when \u003ccode\u003esqlite3_backup_finish\u003c/code\u003e fails, preventing file descriptor, TLS, and memory leaks.\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/105\"\u003e#105\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/105\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/105\u003c/a\u003e), thanks Josh Bleecher Snyder!\u003c/li\u003e\n\u003cli\u003eFix \u003ccode\u003eExec\u003c/code\u003e to fully drain rows when encountering \u003ccode\u003eSQLITE_ROW\u003c/code\u003e, preventing silent data loss in DML statements.\u003c/li\u003e\n\u003cli\u003ePreviously, \u003ccode\u003eExec\u003c/code\u003e aborted after the first row, meaning \u003ccode\u003eINSERT\u003c/code\u003e, \u003ccode\u003eUPDATE\u003c/code\u003e, or \u003ccode\u003eDELETE\u003c/code\u003e statements with a \u003ccode\u003eRETURNING\u003c/code\u003e clause would fail to process subsequent rows. The execution path now correctly loops until \u003ccode\u003eSQLITE_DONE\u003c/code\u003e and properly respects context cancellations during the drain loop, fully aligning with native C \u003ccode\u003esqlite3_exec\u003c/code\u003e semantics.\u003c/li\u003e\n\u003cli\u003eSee [GitLab merge request \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/106\"\u003e#106\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/merge_requests/106\"\u003ehttps://gitlab.com/cznic/sqlite/-/merge_requests/106\u003c/a\u003e), thanks Josh Bleecher Snyder!\u003c/li\u003e\n\u003cli\u003eFix \u0026quot;Shadowed err value (stmt.go)\u0026quot;.\u003c/li\u003e\n\u003cli\u003eSee [GitLab issue \u003ca href=\"https://gitlab.com/cznic/sqlite/issues/249\"\u003e#249\u003c/a\u003e](\u003ca href=\"https://gitlab.com/cznic/sqlite/-/work_items/249\"\u003ehttps://gitlab.com/cznic/sqlite/-/work_items/249\u003c/a\u003e), thanks Emrecan BATI!\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/b95ed459e063439b1b7f58db051f168832bb14b6\"\u003e\u003ccode\u003eb95ed45\u003c/code\u003e\u003c/a\u003e upgrade to SQLite 3.53.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/e220cc9b51f0ce842490194538f3c45daf2572b3\"\u003e\u003ccode\u003ee220cc9\u003c/code\u003e\u003c/a\u003e CHANGELOG.md: add !113\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/a58d5e552a64d5082bdf1488db35f27ce7536c1d\"\u003e\u003ccode\u003ea58d5e5\u003c/code\u003e\u003c/a\u003e Merge branch 'columns' into 'master'\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/119d8b1c8514ceadf0a5a4aa8a9c94514b739377\"\u003e\u003ccode\u003e119d8b1\u003c/code\u003e\u003c/a\u003e add ColumnInfo, for inspecting query columns\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/c353a4f762ca821c6ebc6a17097e19e9dcec5306\"\u003e\u003ccode\u003ec353a4f\u003c/code\u003e\u003c/a\u003e upgrade to sqlite-vec v0.1.9\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/fe575e48232629112cce2e8bea368358e35c1616\"\u003e\u003ccode\u003efe575e4\u003c/code\u003e\u003c/a\u003e doc.go: update SQLite version\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/3ccb9cab30387f2192593c4acb635e58fd6bbd5e\"\u003e\u003ccode\u003e3ccb9ca\u003c/code\u003e\u003c/a\u003e upgrade to SQLite 3.53.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/df1697738de700bdbfe7a6ed822a8ddef14f1c98\"\u003e\u003ccode\u003edf16977\u003c/code\u003e\u003c/a\u003e CHANGELOG.md: add !112\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/172c3955c2894135d87e8a773248796afda13f77\"\u003e\u003ccode\u003e172c395\u003c/code\u003e\u003c/a\u003e Merge branch 'fix-openv2-handle-leak' into 'master'\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://gitlab.com/cznic/sqlite/commit/27197307bbdb9c5c2a6dc683803f9c6e956e35a6\"\u003e\u003ccode\u003e2719730\u003c/code\u003e\u003c/a\u003e fix openV2 handle leak, TLS leak, and misleading error on failed open\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://gitlab.com/cznic/sqlite/compare/v1.46.1...v1.50.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n","html_url":"https://github.com/kioie/memex/pull/7","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/kioie%2Fmemex/issues/7","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/7/packages"}}]}