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

gh-108278: Deprecate passing the first param of sqlite3.Connection callback APIs by keyword #108632

Merged

Conversation

erlend-aasland
Copy link
Contributor

@erlend-aasland erlend-aasland commented Aug 29, 2023

Deprecate passing the callback callable by keyword for the following
sqlite3.Connection APIs:

  • set_authorizer(authorizer_callback)
  • set_progress_handler(progress_handler, ...)
  • set_trace_callback(trace_callback)

The affected parameters will become positional-only in Python 3.15.


📚 Documentation preview 📚: https://cpython-previews--108632.org.readthedocs.build/

…ion callback APIs by keyword

Deprecate passing the callback callable by keyword for the following
sqlite3.Connection APIs:

- set_authorizer(authorizer_callback)
- set_progress_handler(progress_handler, ...)
- set_trace_callback(trace_callback)

The affected parameters will become positional-only in Python 3.15.
@erlend-aasland
Copy link
Contributor Author

Also fixup the indent of the versionchanged directives added in gh-108281

Copy link
Member

@serhiy-storchaka serhiy-storchaka left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM, but should not n in set_progress_handler() be positional-only too?

@erlend-aasland
Copy link
Contributor Author

LGTM, but should not n in set_progress_handler() be positional-only too?

I am not sure. I left a comment regarding this on the issue.

@serhiy-storchaka
Copy link
Member

I am not sure too.

@erlend-aasland
Copy link
Contributor Author

I am not sure too.

We can always deprecate passing n by keyword at a later time; either later in 3.13 development, or in a following release.

@erlend-aasland
Copy link
Contributor Author

I posted about this on Discourse, and got encouraging reactions from Brett Cannon and Berker Peksag. (Berker is also an sqlite3 code owner.) Together with Serhiy's approval, I intend to land this.

It is still very early in the 3.13 development phase, so we have plenty of time to adjust or even revert this feature.

Thanks for raising the discussions on the issue, and thanks for the review, Serhiy!

@erlend-aasland erlend-aasland merged commit 0b0c1d0 into python:main Aug 29, 2023
22 checks passed
@erlend-aasland erlend-aasland deleted the sqlite/cleanup-callback-apis branch August 29, 2023 20:02
@bedevere-bot

This comment was marked as off-topic.

@bedevere-bot

This comment was marked as off-topic.

carljm added a commit to carljm/cpython that referenced this pull request Aug 30, 2023
* main:
  pythongh-108520: Fix bad fork detection in nested multiprocessing use case (python#108568)
  pythongh-108590: Revert pythongh-108657 (commit 400a1ce) (python#108686)
  pythongh-108494: Argument Clinic: Document how to generate code that uses the limited C API (python#108584)
  Document Python build requirements (python#108646)
  pythongh-101100: Fix Sphinx warnings in the Logging Cookbook (python#108678)
  Fix typo in multiprocessing docs (python#108666)
  pythongh-108669: unittest: Fix documentation for TestResult.collectedDurations (python#108670)
  pythongh-108590: Fix sqlite3.iterdump for invalid Unicode in TEXT columns (python#108657)
  Revert "pythongh-103224: Use the realpath of the Python executable in `test_venv` (pythonGH-103243)" (pythonGH-108667)
  pythongh-106320: Remove private _Py_ForgetReference() (python#108664)
  Mention Ellipsis pickling in the docs (python#103660)
  Revert "Use non alternate name for Kyiv (pythonGH-108533)" (pythonGH-108649)
  pythongh-108278: Deprecate passing the first param of sqlite3.Connection callback APIs by keyword (python#108632)
  pythongh-108455: peg_generator: install two stubs packages before running mypy (python#108637)
  pythongh-107801: Improve the accuracy of io.IOBase.seek docs (python#108268)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

3 participants