diff options
| author | 2025-05-31 13:43:33 +0200 | |
|---|---|---|
| committer | 2025-05-31 13:43:33 +0200 | |
| commit | 3b46eb6a9eb312abf5f160552b5521e4cd8d6603 (patch) | |
| tree | 0530ad65f5d5428473f521f997809ace5a8b7004 /vendor/github.com/ncruces/go-sqlite3/vfs | |
| parent | [docs] fix typo in swagger description for ListsGETHandler (#4217) (diff) | |
| download | gotosocial-3b46eb6a9eb312abf5f160552b5521e4cd8d6603.tar.xz | |
[chore] Upgrade to SQLite 3.50 (#4218)
# Description
Upgrades ncruces/go-sqlite3 to 0.26 which includes SQLite 3.50.
## Checklist
Please put an x inside each checkbox to indicate that you've read and followed it: `[ ]` -> `[x]`
If this is a documentation change, only the first checkbox must be filled (you can delete the others if you want).
- [x] I/we have read the [GoToSocial contribution guidelines](https://codeberg.org/superseriousbusiness/gotosocial/src/branch/main/CONTRIBUTING.md).
- [ ] I/we have discussed the proposed changes already, either in an issue on the repository, or in the Matrix chat.
- [x] I/we have not leveraged AI to create the proposed changes.
- [ ] I/we have performed a self-review of added code.
- [ ] I/we have written code that is legible and maintainable by others.
- [ ] I/we have commented the added code, particularly in hard-to-understand areas.
- [ ] I/we have made any necessary changes to documentation.
- [ ] I/we have added tests that cover new code.
- [ ] I/we have run tests and they pass locally with the changes.
- [ ] I/we have run `go fmt ./...` and `golangci-lint run`.
Reviewed-on: https://codeberg.org/superseriousbusiness/gotosocial/pulls/4218
Co-authored-by: Daenney <daenney@noreply.codeberg.org>
Co-committed-by: Daenney <daenney@noreply.codeberg.org>
Diffstat (limited to 'vendor/github.com/ncruces/go-sqlite3/vfs')
5 files changed, 23 insertions, 14 deletions
diff --git a/vendor/github.com/ncruces/go-sqlite3/vfs/const.go b/vendor/github.com/ncruces/go-sqlite3/vfs/const.go index b789d1203..11afb1254 100644 --- a/vendor/github.com/ncruces/go-sqlite3/vfs/const.go +++ b/vendor/github.com/ncruces/go-sqlite3/vfs/const.go @@ -234,6 +234,7 @@ const ( _FCNTL_CKSM_FILE _FcntlOpcode = 41 _FCNTL_RESET_CACHE _FcntlOpcode = 42 _FCNTL_NULL_IO _FcntlOpcode = 43 + _FCNTL_BLOCK_ON_CONNECT _FcntlOpcode = 44 ) // https://sqlite.org/c3ref/c_shm_exclusive.html @@ -246,6 +247,6 @@ const ( _SHM_EXCLUSIVE _ShmFlag = 8 _SHM_NLOCK = 8 - _SHM_BASE = 120 + _SHM_BASE = (22 + _SHM_NLOCK) * 4 _SHM_DMS = _SHM_BASE + _SHM_NLOCK ) diff --git a/vendor/github.com/ncruces/go-sqlite3/vfs/file.go b/vendor/github.com/ncruces/go-sqlite3/vfs/file.go index 65409823c..8e65ca660 100644 --- a/vendor/github.com/ncruces/go-sqlite3/vfs/file.go +++ b/vendor/github.com/ncruces/go-sqlite3/vfs/file.go @@ -13,22 +13,28 @@ import ( type vfsOS struct{} func (vfsOS) FullPathname(path string) (string, error) { - path, err := filepath.Abs(path) + link, err := evalSymlinks(path) if err != nil { return "", err } - return path, testSymlinks(filepath.Dir(path)) + full, err := filepath.Abs(link) + if err == nil && link != path { + err = _OK_SYMLINK + } + return full, err } -func testSymlinks(path string) error { - p, err := filepath.EvalSymlinks(path) - if err != nil { - return err +func evalSymlinks(path string) (string, error) { + var file string + _, err := os.Lstat(path) + if errors.Is(err, fs.ErrNotExist) { + path, file = filepath.Split(path) } - if p != path { - return _OK_SYMLINK + path, err = filepath.EvalSymlinks(path) + if err != nil { + return "", err } - return nil + return filepath.Join(path, file), nil } func (vfsOS) Delete(path string, syncDir bool) error { diff --git a/vendor/github.com/ncruces/go-sqlite3/vfs/memdb/memdb.go b/vendor/github.com/ncruces/go-sqlite3/vfs/memdb/memdb.go index 419fd1c64..94347f1cc 100644 --- a/vendor/github.com/ncruces/go-sqlite3/vfs/memdb/memdb.go +++ b/vendor/github.com/ncruces/go-sqlite3/vfs/memdb/memdb.go @@ -28,9 +28,8 @@ func (memVFS) Open(name string, flags vfs.OpenFlag) (vfs.File, vfs.OpenFlag, err // // We refuse to open all other file types, // but returning OPEN_MEMORY means SQLite won't ask us to. - const types = vfs.OPEN_MAIN_DB | - vfs.OPEN_TEMP_DB | - vfs.OPEN_TEMP_JOURNAL + const types = vfs.OPEN_MAIN_DB | vfs.OPEN_TEMP_DB | + vfs.OPEN_TRANSIENT_DB | vfs.OPEN_TEMP_JOURNAL if flags&types == 0 { // notest // OPEN_MEMORY return nil, flags, sqlite3.CANTOPEN diff --git a/vendor/github.com/ncruces/go-sqlite3/vfs/shm_windows.go b/vendor/github.com/ncruces/go-sqlite3/vfs/shm_windows.go index 7cc5b2a23..0be523ad6 100644 --- a/vendor/github.com/ncruces/go-sqlite3/vfs/shm_windows.go +++ b/vendor/github.com/ncruces/go-sqlite3/vfs/shm_windows.go @@ -26,7 +26,6 @@ type vfsShm struct { ptrs []ptr_t stack [1]stk_t fileLock bool - blocking bool sync.Mutex } diff --git a/vendor/github.com/ncruces/go-sqlite3/vfs/vfs.go b/vendor/github.com/ncruces/go-sqlite3/vfs/vfs.go index c70507caa..2656ddb49 100644 --- a/vendor/github.com/ncruces/go-sqlite3/vfs/vfs.go +++ b/vendor/github.com/ncruces/go-sqlite3/vfs/vfs.go @@ -381,6 +381,10 @@ func vfsFileControlImpl(ctx context.Context, mod api.Module, file File, op _Fcnt file.SetDB(ctx.Value(util.ConnKey{})) return _OK } + + case _FCNTL_NULL_IO: + file.Close() + return _OK } return _NOTFOUND |
