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

curses for win32 #40725

Open
tonal mannequin opened this issue Aug 9, 2004 · 17 comments
Open

curses for win32 #40725

tonal mannequin opened this issue Aug 9, 2004 · 17 comments
Labels
extension-modules C modules in the Modules dir OS-windows type-feature A feature request or enhancement

Comments

@tonal
Copy link
Mannequin

tonal mannequin commented Aug 9, 2004

BPO 1005895
Nosy @tonal, @tjguk, @mcepl
Files
  • _cursesmodule.c.patch
  • test_curses.py.patch
  • mingw32.mak: makefile for compile _curses
  • Note: these values reflect the state of the issue at the time it was migrated and might not reflect the current state.

    Show more details

    GitHub fields:

    assignee = None
    closed_at = None
    created_at = <Date 2004-08-09.11:05:57.000>
    labels = ['extension-modules', 'type-feature', 'OS-windows']
    title = 'curses for win32'
    updated_at = <Date 2016-08-03.03:22:13.589>
    user = 'https://github.com/tonal'

    bugs.python.org fields:

    activity = <Date 2016-08-03.03:22:13.589>
    actor = 'BreamoreBoy'
    assignee = 'none'
    closed = False
    closed_date = None
    closer = None
    components = ['Extension Modules', 'Windows']
    creation = <Date 2004-08-09.11:05:57.000>
    creator = 'shura_zam'
    dependencies = []
    files = ['6163', '6164', '6165']
    hgrepos = []
    issue_num = 1005895
    keywords = ['patch']
    message_count = 16.0
    messages = ['46600', '46601', '46602', '46603', '46604', '46605', '46606', '46607', '98813', '99410', '114369', '114372', '114397', '114484', '222627', '271783']
    nosy_count = 5.0
    nosy_names = ['jlt63', 'techtonik', 'shura_zam', 'tim.golden', 'mcepl']
    pr_nums = []
    priority = 'normal'
    resolution = None
    stage = 'patch review'
    status = 'open'
    superseder = None
    type = 'enhancement'
    url = 'https://bugs.python.org/issue1005895'
    versions = ['Python 3.4']

    @tonal
    Copy link
    Mannequin Author

    tonal mannequin commented Aug 9, 2004

    I have paths for compile _curses module.
    I use
    compiler - mingw32 v3.3.1
    curses library - Public Domain Curses (PDCurses 2.6)

    @tonal tonal mannequin added extension-modules C modules in the Modules dir labels Aug 9, 2004
    @akuchling
    Copy link
    Member

    Logged In: YES
    user_id=11375

    In the cursesmodule patch, the first argument to intrflush
    is changed from NULL to stdscr. Why? According to the
    ncurses man page, the window argument is ignored.

    use_env() is apparently a no-op for PDcurses; why not just
    remove the Python-visible use_env function completely?

    In the setting of _C_API_VERSION, what does the string
    "PDCurses M" mean? (In particular, what does the 'M' stand
    for?)

    Except for the above questions, the patches to
    test_curses.py and _cursesmodule.c look OK. I have no
    access to a Windows machine and no way to test them or the
    new .mak file, so I'm reassigning this bug to Jason Tishler,
    who does a lot of Cygwin work. Jason, please feel free to
    ask me any questions you might have about curses, the
    _cursesmodule.c file, or whatever.

    @tonal
    Copy link
    Mannequin Author

    tonal mannequin commented Jun 16, 2005

    Logged In: YES
    user_id=980085

    In the cursesmodule patch, the first argument to intrflush
    is changed from NULL to stdscr. Why?
    In PDCurses intrflush return ERR if first arg is NULL.

    In the setting of _C_API_VERSION, what does the string
    "PDCurses M" mean? (In particular, what does the 'M' stand
    for?)
    _C_API_VERSION setting to numeric constant PDC_BUILD
    currentli 2601.
    Bat _C_API_NAME setting to name of C curses library.
    I modyfy source of PDCurses and add suffix "M".
    Currently all my changes applay in head branch,
    and suffix "M" not nidded. ;-)

    @jlt63
    Copy link
    Mannequin

    jlt63 mannequin commented Jun 16, 2005

    Logged In: YES
    user_id=86216

    I have no access to a Windows machine and no way
    to test them or the new .mak file, so I'm
    reassigning this bug to Jason Tishler, who does a
    lot of Cygwin work. Jason, please feel free to
    ask me any questions you might have about curses,
    the _cursesmodule.c file, or whatever.

    Andrew,

    Sorry, but I'm confused. What exactly are you
    asking me to do? Make sure Alexandr's patch
    doesn't break the Cygwin build? Other builds?
    Works?

    Thanks,
    Jason

    @akuchling
    Copy link
    Member

    Logged In: YES
    user_id=11375

    As maintainer of the curses module, applying the patch is OK
    with me, but I'm not going to apply it because I don't use
    Cygwin, the affected platform. I leave it up to you to
    apply the patch, or reject it, or demand changes; I'm happy
    if you decide to apply it, but don't really care.

    (Note that the patch to test_curses.py won't apply cleanly;
    it includes some other fixes from Alexandr that I've already
    applied. If you decide to accept the patch, I can help
    straighten out test_curses.py.)

    @jlt63
    Copy link
    Mannequin

    jlt63 mannequin commented Jun 16, 2005

    Logged In: YES
    user_id=86216

    If the patch affects Cygwin, then it's not obvious:

    $ fgrep -i cygwin _cursesmodule.c.patch mingw32.mak 
    test_curses.py.patch
    $

    However, it seems to affect the native Windows build:

    $ grep -i 'platform.*win' _cursesmodule.c.patch mingw32.mak 
    test_curses.py.patch 
    test_curses.py.patch:+ if sys.platform == 'win32':

    Please point out actually where the patch affects Cygwin.
    Thanks.

    @akuchling
    Copy link
    Member

    Logged In: YES
    user_id=11375

    Ah; I looked at the initial description which says 'mingw32'
    was used, and thought that was the Cygwin compiler. Sorry!
    If this patch applies to the standard windows build, just
    unassign it; some Windows person will have to look at it.

    @jlt63
    Copy link
    Mannequin

    jlt63 mannequin commented Jun 16, 2005

    Logged In: YES
    user_id=86216

    AFAICT, this patch applies to the standard Windows build.
    So, I'm unassigning it as suggested by Andrew.

    @techtonik
    Copy link
    Mannequin

    techtonik mannequin commented Feb 4, 2010

    Can this be considered a duplicate of bpo-2889?

    @jlt63
    Copy link
    Mannequin

    jlt63 mannequin commented Feb 16, 2010

    Sorry, but I don't know. I haven't looked at this issue for almost five years! And when I did, I only looked as far to determine it wasn't Cygwin related.

    @BreamoreBoy
    Copy link
    Mannequin

    BreamoreBoy mannequin commented Aug 19, 2010

    Brian or Tim any interest in this?

    I consider bpo-2889 to be a duplicate of this and not the other way around.

    @BreamoreBoy BreamoreBoy mannequin added type-feature A feature request or enhancement labels Aug 19, 2010
    @briancurtin
    Copy link
    Member

    I have zero knowledge and experience when it comes to curses so I'm afraid I can't really provide much here.

    One thing I can say is that this patch would have to be converted to be compiled by MSVC rather than MinGW. That was an early issue with bpo-2889 but it appears that patch was converted.

    @tjguk
    Copy link
    Member

    tjguk commented Aug 19, 2010

    It looks as though bpo-2889 has a better chance of getting into the VS build than this one, which appears to be MingW-based (at a quick glance). I'm loosely keen to see it in, although I have no knowledge of curses as such. I'll assign it to myself so it appears on my to-do queue but I'm not promising to do anything with it immediately. Anyone who feels up to the task, feel free to take it off me.

    Mark: why do you consider bpo-1005895 the master, so to speak? I can see more mileage in pursuing the other?

    @BreamoreBoy
    Copy link
    Mannequin

    BreamoreBoy mannequin commented Aug 21, 2010

    Tim: mainly because this was raised some 4 years earlier and the title of bpo-2889 "curses for windows (alternative patch)"

    @BreamoreBoy
    Copy link
    Mannequin

    BreamoreBoy mannequin commented Jul 9, 2014

    Is this worth pursuing as https://docs.python.org/3/howto/curses.html states "The Windows version of Python doesn’t include the curses module. A ported version called UniCurses is available" ? This is available at https://pypi.python.org/pypi/UniCurses

    @mcepl
    Copy link
    Mannequin

    mcepl mannequin commented Aug 1, 2016

    Well, basically any solution is better than nothing ;)

    @ezio-melotti ezio-melotti transferred this issue from another repository Apr 9, 2022
    @erlend-aasland
    Copy link
    Contributor

    See also #47138

    Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
    Labels
    extension-modules C modules in the Modules dir OS-windows type-feature A feature request or enhancement
    5 participants