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-157170: Document the scope of global curses settings by serhiy-storchaka · Pull Request #157207 · python/cpython

Conversation

@serhiy-storchaka

@serhiy-storchaka serhiy-storchaka commented Sep 9, 2026 •
edited by bedevere-app Bot
Loading

Uh oh!

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

Copy link
Copy Markdown
Member

use_env() and filter() set a default that every screen created afterwards inherits, slk_init() affects only the screen created next, and set_escdelay() and set_tabsize() may apply to all screens, depending on the curses library. All other settings belong to the current screen.

Also add the missing cross-references to newterm(), window.refresh() and doupdate().

  • Issue: test_curses fails in every Ubuntu CI run's parallel phase: test_use_prescr_screen leaves use_env(False) set, so newterm() fails with TERM=linux #157170

Sorry, something went wrong.

Uh oh!

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

All reactions
@serhiy-storchaka
pythongh-157170: Document the scope of global curses settings
3923ab9
use_env() and filter() affect every screen created afterwards, slk_init()
affects only the screen created next, and set_escdelay() and set_tabsize()
may apply to all screens.  Also add missing cross-references to newterm(),
window.refresh() and doupdate().
@serhiy-storchaka serhiy-storchaka added docs Documentation in the Doc dir skip news labels Sep 9, 2026
@github-project-automation github-project-automation Bot added this to Docs PRs Sep 9, 2026
@bedevere-app bedevere-app Bot mentioned this pull request Sep 9, 2026
test_curses fails in every Ubuntu CI run's parallel phase: test_use_prescr_screen leaves use_env(False) set, so newterm() fails with TERM=linux #157170
Closed
@bedevere-app bedevere-app Bot added the awaiting core review label Sep 9, 2026
@github-project-automation github-project-automation Bot moved this to Todo in Docs PRs Sep 9, 2026
@read-the-docs-community

read-the-docs-community Bot commented Sep 9, 2026

Copy link
Copy Markdown

Documentation build overview

📚 cpython-previews | 🛠️ Build #34467372 | 📁 Comparing 3923ab9 against main (1ac3bfa)

  🔍 Preview build  

1 file changed
± library/curses.html
All reactions

Sorry, something went wrong.

Uh oh!

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

@serhiy-storchaka
serhiy-storchaka merged commit 4de00a4 into python:main Sep 9, 2026
36 checks passed

Uh oh!

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

@bedevere-app bedevere-app Bot removed the awaiting core review label Sep 9, 2026
@github-project-automation github-project-automation Bot moved this from Todo to Done in Docs PRs Sep 9, 2026
@serhiy-storchaka
serhiy-storchaka deleted the curses-use-env-docs branch September 9, 2026 13:21
maurycy added a commit to maurycy/cpython that referenced this pull request Sep 10, 2026
@maurycy
Merge branch 'main' into tachyon-native-callable
e028ff5
* main: (158 commits)
  pythongh-156924: Try reifying lazy imports in `ForwarRef.evaluate()` (python#156940)
  pythongh-156233: Fix typos and code snippet errors in the docs (python#156475)
  pythongh-156837: Refer to yield expressions in generator function definitions (pythonGH-156863)
  pythongh-155292: Skip updating unicodedata with mismatched interpreter (pythonGH-157066)
  pythongh-157170: Document the scope of global curses settings (pythonGH-157207)
  pythongh-155966: Correct handling of `math.tanpi` poles (python#155980)
  pythongh-157170: Restore use_env() after test_use_prescr_screen in test_curses (pythonGH-157171)
  pythongh-156910: fix deadlock in type_set_abstractmethods under free-threading (python#156948)
  pythongh-155648: Write the empty and placeholder IDLE tests (python#156260)
  pythongh-153569: centralize formatted-string state and source spans (python#156484)
  pythongh-157137: Mark the PEP 820 soft deprecations as 3.15, not `next` (python#157138)
  pythongh-152433: Use regular LoadLibrary in UWP for Windows system libs (pythonGH-156972)
  pythongh-121617: Fix Py_CLEAR() memcpy in C++: replace NULL with _Py_NULL (python#157188)
  pythongh-157135: Fix documentation errors in the `math.atan{2}pi` functions (python#157136)
  pythongh-121617: Fix Py_CLEAR() in C++: replace NULL with _Py_NULL (python#157067)
  pythongh-156774: Speed up pdb startup with asyncio guard (python#156775)
  pythongh-156109: Allow static, non-framework iOS builds (python#156110)
  pythongh-156780: Emscripten: add missing EM_JS_DEPS (python#156798)
  pythongh-152936: Make privileged functions available on Android (python#152977)
  pythongh-123018: Keep the libedit history file header when truncating (pythonGH-157165)
  ...
clin1234 pushed a commit to clin1234/cpython that referenced this pull request Sep 12, 2026
@serhiy-storchaka @clin1234
pythongh-157170: Document the scope of global curses settings (python…
2ed3076
…GH-157207)

use_env() and filter() affect every screen created afterwards, slk_init()
affects only the screen created next, and set_escdelay() and set_tabsize()
may apply to all screens.  Also add missing cross-references to newterm(),
window.refresh() and doupdate().
johnslavik pushed a commit to johnslavik/cpython that referenced this pull request Sep 14, 2026
@serhiy-storchaka @johnslavik
pythongh-157170: Document the scope of global curses settings (python…
8b3efb0
…GH-157207)

use_env() and filter() affect every screen created afterwards, slk_init()
affects only the screen created next, and set_escdelay() and set_tabsize()
may apply to all screens.  Also add missing cross-references to newterm(),
window.refresh() and doupdate().
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

docs Documentation in the Doc dir skip news

Projects

Docs PRs
Status: Done

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.

1 participant

@serhiy-storchaka
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.