GeezerVisonThe World Wide Web, restored to 800 pixels of glory. | ||||||||||||||||||||||||||||||||||
| Home|About|Gaming cabinet|Archives|How it works|Starter sites | ||||||||||||||||||||||||||||||||||
GeezerVison is showing github.com — gh-160141: Curses core fixes by cdorsman · Pull Request #160142 · python/cpython ConversationSummaryComplete the core curses bindings in CPython and adapt the port to the The change covers the broader curses core API, including:
Existing functionality already present on Tests
Result:
NotesThe implementation uses the current CPython module-state and Argument Closes gh-160141
Sorry, something went wrong. Uh oh!
There was an error while loading. Please reload this page. All reactions
|
There was an error while loading. Please reload this page.
|
The following commit authors need to sign the Contributor License Agreement: |
Sorry, something went wrong.
There was an error while loading. Please reload this page.
|
Most changes to Python require a NEWS entry. Add one using the blurb_it web app or the blurb command-line tool. If this change has little impact on Python users, wait for a maintainer to apply the |
Sorry, something went wrong.
There was an error while loading. Please reload this page.
|
Most changes to Python require a NEWS entry. Add one using the blurb_it web app or the blurb command-line tool. If this change has little impact on Python users, wait for a maintainer to apply the |
Sorry, something went wrong.
There was an error while loading. Please reload this page.
Documentation build overview
|
Sorry, something went wrong.
There was an error while loading. Please reload this page.
|
Most changes to Python require a NEWS entry. Add one using the blurb_it web app or the blurb command-line tool. If this change has little impact on Python users, wait for a maintainer to apply the |
Sorry, something went wrong.
There was an error while loading. Please reload this page.
|
Most changes to Python require a NEWS entry. Add one using the blurb_it web app or the blurb command-line tool. If this change has little impact on Python users, wait for a maintainer to apply the |
Sorry, something went wrong.
There was an error while loading. Please reload this page.
|
Most changes to Python require a NEWS entry. Add one using the blurb_it web app or the blurb command-line tool. If this change has little impact on Python users, wait for a maintainer to apply the |
Sorry, something went wrong.
There was an error while loading. Please reload this page.
There was a problem hiding this comment.
The reason will be displayed to describe this comment to others. Learn more.
ISTM that this makes unrelated code changes and also doesn't use AC where it could be used. I also wonder whether this API is really necessayr.
Sorry, something went wrong.
There was an error while loading. Please reload this page.
| /* | ||
| * Interface to the ncurses panel library | ||
| * | ||
| * Original version by Thomas Gellekum |
There was a problem hiding this comment.
The reason will be displayed to describe this comment to others. Learn more.
I don't understand this specific change. Panels are already written in _curses_panel.c. Why duplicating this?
Sorry, something went wrong.
There was an error while loading. Please reload this page.
| return curses_check_err(module, putp(string), "putp", NULL); | ||
| } | ||
|
|
||
| static PyObject * |
There was a problem hiding this comment.
The reason will be displayed to describe this comment to others. Learn more.
Why not using Argument Clinic?
Sorry, something went wrong.
There was an error while loading. Please reload this page.
|
A Python core developer has requested some changes be made to your pull request before we can consider merging it. If you could please address their requests along with any other requests in other reviews from core developers that would be appreciated. Once you have made the requested changes, please leave a comment on this pull request containing the phrase |
Sorry, something went wrong.
There was an error while loading. Please reload this page.
|
I'm clsoing the PR because the feature has not been discussed by the maintainer. What are the use cases for those specific functions? panel is implemented by the _curses_panel.c file |
Sorry, something went wrong.
There was an error while loading. Please reload this page.
|
I understand that new functionality requires justification, but I think we’re overlooking a more fundamental question here.
What is the long-term purpose of maintaining the _curses module if its development is largely stagnant and contributions that complete existing functionality face these barriers?
My changes are not intended to introduce a new abstraction or fundamentally change the module. They expose functionality that already exists in the underlying Curses library, following the approach established by the existing implementation.
I acknowledge the technical feedback provided on this PR. The relevant comments, including the accidental inclusion of Panel-related functionality, will be addressed and incorporated into a revised implementation before resubmitting the PR.
Furthermore, my intention is to continue this work by implementing bindings for the Menu and Form libraries, with the goal of providing more complete coverage of the Curses ecosystem in Python.
However, the response to this PR raises concerns about whether such contributions are actually welcome.
If completing the existing bindings is not considered a sufficient reason for accepting these changes, what is the intended scope and future direction of this module? And would further contributions, including Menu and Form support, even be considered?
…________________________________
From: Bénédikt Tran ***@***.***>
Sent: Thursday, 22 October 2026 01:31:39
To: python/cpython ***@***.***>
Cc: Chris Dorsman ***@***.***>; Author ***@***.***>
Subject: Re: [python/cpython] gh-160141: Curses core fixes (PR #160142)
Closed #160142<#160142>.
—
Reply to this email directly, view it on GitHub<#160142?email_source=notifications&email_token=AJMU4ANWH65WQEW2NDV6U2D5VFBNXA5CNFSNUABQM5UWIORPF5TWS5BNNB2WEL2JONZXKZKFOZSW45CON52GSZTJMNQXI2LPNYXTGMZYHE4DIOBYGYYDBJTSMVQXG33OUZQXK5DIN5ZKKZLWMVXHJLDGN5XXIZLSL5RWY2LDNM#event-33898488600>, or unsubscribe<https://github.com/notifications/unsubscribe-auth/AJMU4AOA4EGC6YYF7RG3SDT5VFBNXAVCNFSNUABEKJSXA33TNF2G64TZHM4DCNJZHA4TMMJ3JFZXG5LFHM2TSNRZHA4TCMZRG6QXMAQ>.
You are receiving this because you authored the thread.Message ID: ***@***.***>
|
Sorry, something went wrong.
There was an error while loading. Please reload this page.
There was an error while loading. Please reload this page.
Successfully merging this pull request may close these issues.
Complete the missing core curses bindings
There was an error while loading. Please reload this page.