Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Bump required SQLite version to 3.15.2 #105875

Closed
erlend-aasland opened this issue Jun 16, 2023 · 3 comments · Fixed by #105876
Closed

Bump required SQLite version to 3.15.2 #105875

erlend-aasland opened this issue Jun 16, 2023 · 3 comments · Fixed by #105876
Assignees
Labels
3.13 bugs and security fixes topic-sqlite3

Comments

@erlend-aasland
Copy link
Contributor

erlend-aasland commented Jun 16, 2023

(Also posted on Discord.)

In January 2021 (mid 3.10 development), Sergey Fodoseev and I raised the compile time (and runtime) SQLite version requirements for the sqlite3 standard library extension module to SQLite 3.7.15 (2012-12-12) or newer (commit cf0b239). That enabled us to clean up the code by getting rid of a lot of preprocessor conditionals and other version specific workarounds.

For Python 3.13 (to be released October 2024), I'll raise the version requirements to either SQLite 3.8.11.1 (2015-07-29), 3.14.2 (2016-09-12), or 3.15.2 (2016-11-28). Preferably the latter.

AFAICS on DistroWatch, we should be fine with any of those SQLite versions, for all major distros1.

Major clean-ups:

  • For SQlite 3.8.11.1, I can remove a lot of conditional code related to CTEs and deterministic functions.
  • For SQLite 3.14.2 I no longer need to implement two different variants of the trace callback.
  • For SQLite 3.15.2, I can remove special handling for legacy deterministic user function behaviour.

Linked PRs

Footnotes

  1. RHEL-7.9 ships with SQLite 3.7.17 but is EOL in June 2024.

@erlend-aasland erlend-aasland self-assigned this Jun 16, 2023
@erlend-aasland erlend-aasland converted this from a draft issue Jun 16, 2023
@erlend-aasland erlend-aasland added topic-sqlite3 3.13 bugs and security fixes labels Jun 16, 2023
@erlend-aasland erlend-aasland changed the title Bump SQLite required version Bump required SQLite version to 3.15.2 Jun 16, 2023
erlend-aasland added a commit to erlend-aasland/cpython that referenced this issue Jun 16, 2023
SQLite 3.15.2 was released 2016-11-28.
@erlend-aasland erlend-aasland linked a pull request Jun 16, 2023 that will close this issue
@corona10
Copy link
Member

corona10 commented Jun 17, 2023

cc @ned-deily

Will it be okay to macOS too?
(From my local environment it looks okay)

@erlend-aasland
Copy link
Contributor Author

Will it be okay to macOS too?

(From my local environment it looks okay)

We bundle SQLite for macOS installers, so it is not a problem.

@corona10
Copy link
Member

We bundle SQLite for macOS installers, so it is not a problem.

Thanks!

@github-project-automation github-project-automation bot moved this from In Progress to Done in sqlite3 issues Jun 18, 2023
erlend-aasland added a commit that referenced this issue Jun 18, 2023
SQLite 3.15.2 was released 2016-11-28.
vstinner added a commit to vstinner/cpython that referenced this issue Aug 29, 2023
* Autoconf and aclocal: issue pythonGH-89886
* SQLite 3.15.2: issue pythonGH-105875
* Tcl/Tk 8.5.12: issue pythonGH-91152
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
3.13 bugs and security fixes topic-sqlite3
Projects
Status: Done
Development

Successfully merging a pull request may close this issue.

2 participants