GV

GeezerVison

The World Wide Web, restored to 800 pixels of glory.

Home|About|Gaming cabinet|Archives|How it works|Starter sites

On this site

  • Sign in
  • ActionsCI/CD and automation
  • CodespacesCloud development environments
  • All Features
  • Documentation
  • Training
  • Certifications
  • Build with Copilot
  • Customize Copilot
  • Integrations
  • Trending repos
  • GitHub Sponsors
  • Developer articles
  • Enterprises

This view

  • Original page
  • New address

GeezerVison is showing github.com — gh-105145: Remove old functions to config Python init by vstinner · Pull Request #105154 · python/cpython

Conversation

@vstinner

@vstinner vstinner commented May 31, 2023 •
edited
Loading

Uh oh!

There was an error while loading. Please reload this page.

Copy link
Copy Markdown
Member

Remove the following old functions to configure the Python initialization, deprecated in Python 3.11:

  • PySys_AddWarnOptionUnicode()
  • PySys_AddWarnOption()
  • PySys_AddXOption()
  • PySys_HasWarnOptions()
  • PySys_SetArgvEx()
  • PySys_SetArgv()
  • PySys_SetPath()
  • Py_SetPath()
  • Py_SetProgramName()
  • Py_SetPythonHome()
  • Py_SetStandardStreamEncoding()
  • _Py_SetProgramFullPath()

Most of these functions are kept in the stable ABI, except:

  • Py_SetStandardStreamEncoding()
  • _Py_SetProgramFullPath()

Update Doc/extending/embedding.rst and Doc/extending/extending.rst to use the new PyConfig API.

_testembed.c:

  • check_stdio_details() now sets stdio_encoding and stdio_errors of PyConfig.
  • Add definitions of functions removed from the API but kept for the stable ABI.
  • test_init_from_config() and test_init_read_set() now use PyConfig_SetString() instead of PyConfig_SetBytesString().

Remove _Py_ClearStandardStreamEncoding() internal function.

  • Issue: C API: Remove legacy API functions to configure Python initialization #105145

Sorry, something went wrong.

Uh oh!

There was an error while loading. Please reload this page.

All reactions
@bedevere-bot bedevere-bot added the awaiting core review label May 31, 2023
@bedevere-bot bedevere-bot mentioned this pull request May 31, 2023
C API: Remove legacy API functions to configure Python initialization #105145
Closed
@vstinner
vstinner force-pushed the remove_old_init_funcs branch from 449b4c8 to c16e3c9 Compare May 31, 2023 16:10
@vstinner
pythongh-105145: Remove old functions to config Python init
1453a74
Remove the following old functions to configure the Python
initialization, deprecated in Python 3.11:

* PySys_AddWarnOptionUnicode()
* PySys_AddWarnOption()
* PySys_AddXOption()
* PySys_HasWarnOptions()
* PySys_SetArgvEx()
* PySys_SetArgv()
* PySys_SetPath()
* Py_SetPath()
* Py_SetProgramName()
* Py_SetPythonHome()
* Py_SetStandardStreamEncoding()
* _Py_SetProgramFullPath()

Most of these functions are kept in the stable ABI, except:

* Py_SetStandardStreamEncoding()
* _Py_SetProgramFullPath()

Update Doc/extending/embedding.rst and Doc/extending/extending.rst to
use the new PyConfig API.

_testembed.c:

* check_stdio_details() now sets stdio_encoding and stdio_errors
  of PyConfig.
* Add definitions of functions removed from the API but kept for the
  stable ABI.
* test_init_from_config() and test_init_read_set() now use
  PyConfig_SetString() instead of PyConfig_SetBytesString().

Remove _Py_ClearStandardStreamEncoding() internal function.
@vstinner
vstinner force-pushed the remove_old_init_funcs branch from c16e3c9 to 1453a74 Compare May 31, 2023 16:11
@vstinner

vstinner commented May 31, 2023

Copy link
Copy Markdown
Member Author

It's funny to find such very old comment:

   .. XXX impl. doesn't seem consistent in allowing ``0``/``NULL`` for the params;
      check w/ Guido.
All reactions

Sorry, something went wrong.

Uh oh!

There was an error while loading. Please reload this page.

@vstinner
Run make regen-limited-abi
833ddf7
@vstinner
vstinner merged commit 424049c into python:main Jun 1, 2023
@bedevere-bot bedevere-bot removed the awaiting core review label Jun 1, 2023
@vstinner
vstinner deleted the remove_old_init_funcs branch June 1, 2023 07:14
@Eclips4 Eclips4 mentioned this pull request Aug 15, 2023
Test test_embed fails on Windows 11, Python 3.13.0a0 #106659
Closed
@erlend-aasland erlend-aasland mentioned this pull request Jan 11, 2024
bpo-43956: Doc/c-api: Fix default program name #24876
Closed
@TBBle TBBle mentioned this pull request Aug 29, 2024
Creating an ungodly amount of sub interpreters in a short amount of time causes memory debug assertions. #123134
Closed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Reviewers

No reviews

Uh oh!

There was an error while loading. Please reload this page.

Assignees

No one assigned

Labels

None yet

Projects

None yet

Milestone

No milestone

Development

Successfully merging this pull request may close these issues.

Uh oh!

There was an error while loading. Please reload this page.

2 participants

@vstinner @bedevere-bot
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
You are visitor 01402503 — GeezerVison does not store the pages you look up.
Best viewed with Netscape Navigator 4.7 or Internet Explorer 6 at 800×600. No cookies required.