snapshot of project "ncurses", label v6_5_20251206

This commit is contained in:
Thomas E. Dickey 2025-12-06 21:23:53 +00:00
parent 7c06cbacd7
commit a30bd7726b
No known key found for this signature in database
GPG Key ID: CC2AF4472167BE03
19 changed files with 606 additions and 502 deletions

5
NEWS
View File

@ -26,7 +26,7 @@
-- sale, use or other dealings in this Software without prior written --
-- authorization. --
-------------------------------------------------------------------------------
-- $Id: NEWS,v 1.4376 2025/11/29 19:07:52 tom Exp $
-- $Id: NEWS,v 1.4378 2025/12/06 21:23:53 tom Exp $
-------------------------------------------------------------------------------
This is a log of changes that ncurses has gone through since Zeyd started
@ -46,6 +46,9 @@ See the AUTHORS file for the corresponding full names.
Changes through 1.9.9e did not credit all contributions;
it is not possible to add this information.
20251206
+ in-progress work to merge MinGW/Windows port.
20251129
+ in-progress work to merge MinGW/Windows port.

View File

@ -1 +1 @@
5:0:10 6.5 20251129
5:0:10 6.5 20251206

View File

@ -26,7 +26,7 @@
# use or other dealings in this Software without prior written #
# authorization. #
##############################################################################
# $Id: dist.mk,v 1.1702 2025/11/29 10:26:45 tom Exp $
# $Id: dist.mk,v 1.1703 2025/12/06 12:06:12 tom Exp $
# Makefile for creating ncurses distributions.
#
# This only needs to be used directly as a makefile by developers, but
@ -38,7 +38,7 @@ SHELL = /bin/sh
# These define the major/minor/patch versions of ncurses.
NCURSES_MAJOR = 6
NCURSES_MINOR = 5
NCURSES_PATCH = 20251129
NCURSES_PATCH = 20251206
# We don't append the patch to the version, since this only applies to releases
VERSION = $(NCURSES_MAJOR).$(NCURSES_MINOR)

View File

@ -1,7 +1,7 @@
<!--
* t
****************************************************************************
* Copyright 2018-2023,2024 Thomas E. Dickey *
* Copyright 2018-2024,2025 Thomas E. Dickey *
* Copyright 1998-2016,2017 Free Software Foundation, Inc. *
* *
* Permission is hereby granted, free of charge, to any person obtaining a *
@ -28,7 +28,7 @@
* sale, use or other dealings in this Software without prior written *
* authorization. *
****************************************************************************
* @Id: form.3x,v 1.61 2025/11/12 01:02:14 tom Exp @
* @Id: form.3x,v 1.62 2025/11/12 01:27:41 tom Exp @
-->
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
<HTML>

View File

@ -1,7 +1,7 @@
<!--
* t
****************************************************************************
* Copyright 2018-2023,2024 Thomas E. Dickey *
* Copyright 2018-2024,2025 Thomas E. Dickey *
* Copyright 1998-2014,2017 Free Software Foundation, Inc. *
* *
* Permission is hereby granted, free of charge, to any person obtaining a *
@ -28,7 +28,7 @@
* sale, use or other dealings in this Software without prior written *
* authorization. *
****************************************************************************
* @Id: menu.3x,v 1.53 2025/11/12 01:03:18 tom Exp @
* @Id: menu.3x,v 1.54 2025/11/12 01:27:41 tom Exp @
-->
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
<HTML>

View File

@ -59,7 +59,7 @@
displays with output optimized to minimize screen updates. <EM>ncurses</EM>
replaces the <EM>curses</EM> libraries from System V Release 4 Unix ("SVr4") and
4.4BSD Unix, the development of which ceased in the 1990s. This
document describes <EM>ncurses</EM> version 6.5 (patch 20251115).
document describes <EM>ncurses</EM> version 6.5 (patch 20251206).
<EM>ncurses</EM> permits control of the terminal screen's contents; abstraction
and subdivision thereof with <EM>windows</EM> and <EM>pads</EM>; acquisition of keyboard

View File

@ -1,6 +1,6 @@
<!--
****************************************************************************
* Copyright 2019-2023,2024 Thomas E. Dickey *
* Copyright 2019-2024,2025 Thomas E. Dickey *
* Copyright 2010-2015,2017 Free Software Foundation, Inc. *
* *
* Permission is hereby granted, free of charge, to any person obtaining a *
@ -27,7 +27,7 @@
* sale, use or other dealings in this Software without prior written *
* authorization. *
****************************************************************************
* @Id: term_variables.3x,v 1.43 2025/11/12 00:57:49 tom Exp @
* @Id: term_variables.3x,v 1.44 2025/11/12 01:27:41 tom Exp @
-->
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
<HTML>

View File

@ -72,7 +72,7 @@
have, by specifying how to perform screen operations, and by specifying
padding requirements and initialization sequences.
This document describes <EM>ncurses</EM> version 6.5 (patch 20251115).
This document describes <EM>ncurses</EM> version 6.5 (patch 20251206).
</PRE><H3><a name="h3-terminfo-Entry-Syntax"><EM>terminfo</EM> Entry Syntax</a></H3><PRE>

View File

@ -1,8 +1,8 @@
ncurses6td (6.5+20251129) unstable; urgency=low
ncurses6td (6.5+20251206) unstable; urgency=low
* latest weekly patch
-- Thomas E. Dickey <dickey@invisible-island.net> Sat, 29 Nov 2025 05:26:45 -0500
-- Thomas E. Dickey <dickey@invisible-island.net> Mon, 01 Dec 2025 03:58:43 -0500
ncurses6 (5.9+20131005) unstable; urgency=low

View File

@ -1,8 +1,8 @@
ncurses6td (6.5+20251129) unstable; urgency=low
ncurses6td (6.5+20251206) unstable; urgency=low
* latest weekly patch
-- Thomas E. Dickey <dickey@invisible-island.net> Sat, 29 Nov 2025 05:26:45 -0500
-- Thomas E. Dickey <dickey@invisible-island.net> Mon, 01 Dec 2025 03:58:43 -0500
ncurses6 (5.9+20131005) unstable; urgency=low

View File

@ -1,8 +1,8 @@
ncurses6td (6.5+20251129) unstable; urgency=low
ncurses6td (6.5+20251206) unstable; urgency=low
* latest weekly patch
-- Thomas E. Dickey <dickey@invisible-island.net> Sat, 29 Nov 2025 05:26:45 -0500
-- Thomas E. Dickey <dickey@invisible-island.net> Mon, 01 Dec 2025 03:58:43 -0500
ncurses6 (5.9+20120608) unstable; urgency=low

View File

@ -1,4 +1,4 @@
; $Id: mingw-ncurses.nsi,v 1.733 2025/11/29 10:26:45 tom Exp $
; $Id: mingw-ncurses.nsi,v 1.734 2025/12/01 08:58:43 tom Exp $
; TODO add examples
; TODO bump ABI to 6
@ -10,7 +10,7 @@
!define VERSION_MAJOR "6"
!define VERSION_MINOR "5"
!define VERSION_YYYY "2025"
!define VERSION_MMDD "1129"
!define VERSION_MMDD "1206"
!define VERSION_PATCH ${VERSION_YYYY}${VERSION_MMDD}
!define MY_ABI "5"

View File

@ -3,7 +3,7 @@
Summary: shared libraries for terminal handling
Name: mingw32-ncurses6
Version: 6.5
Release: 20251129
Release: 20251206
License: X11 License Distribution Modification Variant
Group: Development/Libraries
URL: https://invisible-island.net/ncurses/
@ -144,8 +144,8 @@ popd
%changelog
* Sat Nov 29 2025 Thomas E. Dickey
- testing ncurses 6.5-20251129
* Sat Dec 06 2025 Thomas E. Dickey
- testing ncurses 6.5-20251206
* Sat Feb 25 2023 Thomas Dickey
- amend URLs per rpmlint

View File

@ -1,7 +1,7 @@
Summary: shared libraries for terminal handling
Name: ncurses6
Version: 6.5
Release: 20251129
Release: 20251206
License: X11 License Distribution Modification Variant
Group: Development/Libraries
URL: https://invisible-island.net/ncurses/
@ -134,8 +134,8 @@ rm -f test/ncurses
%changelog
* Sat Nov 29 2025 Thomas E. Dickey
- testing ncurses 6.5-20251129
* Sat Dec 06 2025 Thomas E. Dickey
- testing ncurses 6.5-20251206
* Sat Feb 25 2023 Thomas Dickey
- amend URLs per rpmlint

View File

@ -1,7 +1,7 @@
Summary: Curses library with POSIX thread support.
Name: ncursest6
Version: 6.5
Release: 20251129
Release: 20251206
License: X11 License Distribution Modification Variant
Group: Development/Libraries
Source: ncurses-%{version}-%{release}.tgz
@ -142,8 +142,8 @@ exit 0
%changelog
* Sat Nov 29 2025 Thomas E. Dickey
- testing ncurses 6.5-20251129
* Sat Dec 06 2025 Thomas E. Dickey
- testing ncurses 6.5-20251206
* Tue Dec 24 2019 Thomas Dickey
- drop custom CC_NORMAL warning flags because setting CFLAGS interferes with

View File

@ -38,23 +38,82 @@
#define USE_LIBTINFO
#include <clear_cmd.h>
MODULE_ID("$Id: clear_cmd.c,v 1.7 2025/11/29 19:34:33 tom Exp $")
MODULE_ID("$Id: clear_cmd.c,v 1.8 2025/12/06 21:00:26 tom Exp $")
#ifdef TERMIOS
static int
putch(int c)
{
return putchar(c);
}
#endif
int
clear_cmd(bool legacy)
{
int retval = tputs(clear_screen, lines > 0 ? lines : 1, putch);
int retval;
#ifdef TERMIOS
retval = tputs(clear_screen, lines > 0 ? lines : 1, putch);
if (!legacy) {
/* Clear the scrollback buffer if possible. */
char *E3 = tigetstr(UserCap(E3));
if (VALID_STRING(E3))
(void) tputs(E3, lines > 0 ? lines : 1, putch);
}
#elif defined(_NC_WINDOWS)
/*
* https://learn.microsoft.com/en-us/windows/console/clearing-the-screen
*/
HANDLE hConsole = GetStdHandle(STD_OUTPUT_HANDLE);
COORD coordScreen =
{0, 0};
#if defined(ENABLE_VIRTUAL_TERMINAL_PROCESSING)
DWORD mode = 0;
retval = ERR;
if (GetConsoleMode(hConsole, &mode)) {
const DWORD originalMode = mode;
mode |= ENABLE_VIRTUAL_TERMINAL_PROCESSING;
if (SetConsoleMode(hConsole, mode)) {
DWORD written = 0;
PCWSTR sequence = legacy ? L"\x1b[2J" : L"\x1b[2J\x1b[3J";
if (WriteConsoleW(hConsole, sequence,
(DWORD) wcslen(sequence),
&written, NULL)) {
SetConsoleCursorPosition(hConsole, coordScreen);
retval = OK;
}
SetConsoleMode(hConsole, originalMode);
}
}
#else
DWORD cCharsWritten;
CONSOLE_SCREEN_BUFFER_INFO csbi;
DWORD dwConSize;
(void) legacy;
retval = ERR;
/* Get the number of character cells in the current buffer,
* to fill the entire screen with blanks */
if (GetConsoleScreenBufferInfo(hConsole, &csbi)
&& (dwConSize = csbi.dwSize.X * csbi.dwSize.Y) > 0
&& FillConsoleOutputCharacter(hConsole,
(TCHAR) ' ',
dwConSize,
coordScreen,
&cCharsWritten)
&& FillConsoleOutputAttribute(hConsole,
csbi.wAttributes,
dwConSize,
coordScreen,
&cCharsWritten)) {
SetConsoleCursorPosition(hConsole, coordScreen);
retval = OK;
}
#endif
#endif
return retval;
}

937
test/configure vendored

File diff suppressed because it is too large Load Diff

View File

@ -1,5 +1,5 @@
dnl***************************************************************************
dnl Copyright 2018-2023,2024 Thomas E. Dickey *
dnl Copyright 2018-2024,2025 Thomas E. Dickey *
dnl Copyright 1998-2017,2018 Free Software Foundation, Inc. *
dnl *
dnl Permission is hereby granted, free of charge, to any person obtaining a *
@ -29,7 +29,7 @@ dnl***************************************************************************
dnl
dnl Author: Thomas E. Dickey 1996-on
dnl
dnl $Id: configure.in,v 1.178 2024/08/11 09:08:54 tom Exp $
dnl $Id: configure.in,v 1.179 2025/12/06 21:10:37 tom Exp $
dnl This is a simple configuration-script for the ncurses test programs that
dnl allows the test-directory to be separately configured against a reference
dnl system (i.e., sysvr4 curses)
@ -309,6 +309,7 @@ mbstowcs \
mbtowc \
wcsrtombs \
wcstombs \
wcwidth \
)
fi

View File

@ -30,7 +30,7 @@
/****************************************************************************
* Author: Thomas E. Dickey 1996-on *
****************************************************************************/
/* $Id: test.priv.h,v 1.227 2025/08/23 17:05:52 tom Exp $ */
/* $Id: test.priv.h,v 1.229 2025/12/06 21:21:06 tom Exp $ */
#ifndef __TEST_PRIV_H
#define __TEST_PRIV_H 1
@ -183,6 +183,30 @@
#define HAVE_MATH_H 0
#endif
#ifndef HAVE_MBLEN
#define HAVE_MBLEN 0
#endif
#ifndef HAVE_MBRLEN
#define HAVE_MBRLEN 0
#endif
#ifndef HAVE_MBRTOWC
#define HAVE_MBRTOWC 0
#endif
#ifndef HAVE_MBSRTOWCS
#define HAVE_MBSRTOWCS 0
#endif
#ifndef HAVE_MBSTOWCS
#define HAVE_MBSTOWCS 0
#endif
#ifndef HAVE_MBTOWC
#define HAVE_MBTOWC 0
#endif
#ifndef HAVE_MENU_H
#define HAVE_MENU_H 0
#endif
@ -275,6 +299,10 @@
#define HAVE_SYS_SELECT_H 0
#endif
#ifndef HAVE_SYS_TIME_SELECT
#define HAVE_SYS_TIME_SELECT 0
#endif
#ifndef HAVE_TERMATTRS
#define HAVE_TERMATTRS 0
#endif
@ -363,6 +391,18 @@
#define HAVE_VID_PUTS 0
#endif
#ifndef HAVE_WCSRTOMBS
#define HAVE_WCSRTOMBS 0
#endif
#ifndef HAVE_WCSTOMBS
#define HAVE_WCSTOMBS 0
#endif
#ifndef HAVE_WCWIDTH
#define HAVE_WCWIDTH 0
#endif
#ifndef HAVE_WINSDELLN
#define HAVE_WINSDELLN 0
#endif