Re: untest failing with TypeError: add_packages() got an unexpected keyword argument 'trustedMaint'
On 2023-01-21 16:57, Brian Inglis via Cygwin-apps wrote: $ ssh cygwin untest dash-0.5.12-1 Traceback (most recent call last): File "/usr/lib64/python3.6/runpy.py", line 193, in _run_module_as_main "__main__", mod_spec) File "/usr/lib64/python3.6/runpy.py", line 85, in _run_code exec(code, run_globals) File "/sourceware/cygwin-staging/calm/calm/untest.py", line 83, in sys.exit(main()) File "/sourceware/cygwin-staging/calm/calm/untest.py", line 79, in main untest(p) File "/sourceware/cygwin-staging/calm/calm/untest.py", line 39, in untest if not tool_util.permitted(p): File "/sourceware/cygwin-staging/calm/calm/tool_util.py", line 50, in permitted mlist = maintainers.add_packages(mlist, common_constants.PKGMAINT, trustedMaint=common_constants.TRUSTEDMAINT) TypeError: add_packages() got an unexpected keyword argument 'trustedMaint' Allowed keyword arguments were only orphanMaint and prev_maint: $ grep -H add_packages /usr/lib/python3.?/site-packages/**/maintainers* /usr/lib/python3.9/site-packages/calm/maintainers.py:def add_packages(mlist, pkglist, orphanMaint=None, prev_maint=True): /usr/lib/python3.9/site-packages/calm/maintainers.py:mlist = add_packages(mlist, args.pkglist, orphanmaint, prev_maint) Commit ad6b47c27b1113abacdfebf7234d38b6524606cd https://cygwin.com/git/?p=cygwin-apps/calm.git;a=commitdiff;h=ad6b47c27b1113abacdfebf7234d38b6524606cd removes orphanMaint but does not add trustedMaint in def: https://cygwin.com/git/?p=cygwin-apps%2Fcalm.git=search=HEAD=grep=add_packages calm/maintainers.py 139 def add_packages(mlist, pkglist, prev_maint=True): 201 mlist = add_packages(mlist, args.pkglist, prev_maint) calm/mkgitoliteconf.py 54 mlist = maintainers.add_packages(mlist, args.pkglist) calm/package.py 1091 mlist = maintainers.add_packages(mlist, args.pkglist) calm/tool_util.py 50 mlist = maintainers.add_packages(mlist, common_constants.PKGMAINT, trustedMaint=common_constants.TRUSTEDMAINT) test/test_calm.py 322 mlist = maintainers.add_packages(mlist, 'testdata/pkglist/cygwin-pkg-maint') Newer version not pushed, built, or installed on site? -- Take care. Thanks, Brian Inglis Calgary, Alberta, Canada La perfection est atteinte Perfection is achieved non pas lorsqu'il n'y a plus rien à ajouter not when there is no more to add mais lorsqu'il n'y a plus rien à retirerbut when there is no more to cut -- Antoine de Saint-Exupéry
[PATCH v2] Cygwin: fsync: Fix EINVAL for block device.
The commit af8a7c13b516 has a problem that fsync returns EINVAL for block device. This patch treats block devices as a special case. https://cygwin.com/pipermail/cygwin/2023-January/252916.html Fixes: af8a7c13b516 ("Cygwin: fsync: Return EINVAL for special files.") Reported-by: Yano Ray Reviewed-by: Corinna Vinschen Signed-off-by: Takashi Yano --- winsup/cygwin/fhandler/base.cc | 3 ++- winsup/cygwin/release/3.4.6| 5 + 2 files changed, 7 insertions(+), 1 deletion(-) create mode 100644 winsup/cygwin/release/3.4.6 diff --git a/winsup/cygwin/fhandler/base.cc b/winsup/cygwin/fhandler/base.cc index b2738cf20..9b49ec7b9 100644 --- a/winsup/cygwin/fhandler/base.cc +++ b/winsup/cygwin/fhandler/base.cc @@ -1728,7 +1728,8 @@ fhandler_base::utimens (const struct timespec *tvp) int fhandler_base::fsync () { - if (!get_handle () || nohandle () || pc.isspecial ()) + if (!get_handle () || nohandle () + || (pc.isspecial () && !S_ISBLK (pc.dev.mode ( { set_errno (EINVAL); return -1; diff --git a/winsup/cygwin/release/3.4.6 b/winsup/cygwin/release/3.4.6 new file mode 100644 index 0..c1476ff46 --- /dev/null +++ b/winsup/cygwin/release/3.4.6 @@ -0,0 +1,5 @@ +Bug Fixes +- + +Fix a problem that fsync returns EINVAL for block device. +Addresses: https://cygwin.com/pipermail/cygwin/2023-January/252916.html -- 2.39.0
untest failing with TypeError: add_packages() got an unexpected keyword argument 'trustedMaint'
$ ssh cygwin untest dash-0.5.12-1 Traceback (most recent call last): File "/usr/lib64/python3.6/runpy.py", line 193, in _run_module_as_main "__main__", mod_spec) File "/usr/lib64/python3.6/runpy.py", line 85, in _run_code exec(code, run_globals) File "/sourceware/cygwin-staging/calm/calm/untest.py", line 83, in sys.exit(main()) File "/sourceware/cygwin-staging/calm/calm/untest.py", line 79, in main untest(p) File "/sourceware/cygwin-staging/calm/calm/untest.py", line 39, in untest if not tool_util.permitted(p): File "/sourceware/cygwin-staging/calm/calm/tool_util.py", line 50, in permitted mlist = maintainers.add_packages(mlist, common_constants.PKGMAINT, trustedMaint=common_constants.TRUSTEDMAINT) TypeError: add_packages() got an unexpected keyword argument 'trustedMaint' -- Take care. Thanks, Brian Inglis Calgary, Alberta, Canada La perfection est atteinte Perfection is achieved non pas lorsqu'il n'y a plus rien à ajouter not when there is no more to add mais lorsqu'il n'y a plus rien à retirerbut when there is no more to cut -- Antoine de Saint-Exupéry
[ANNOUNCEMENT] Updated: cpuid 20230120
The following package has been upgraded in the Cygwin distribution: * cpuid 20230120 Displays detailed information about the CPU(s) gathered from the CPUID instruction, and also determines the exact model of CPU(s). Whereas /proc/cpuinfo is like an abstract of the features important to Linux in a system, cpuid is a standalone utility which writes a paper expounding on every feature in each CPU's architecture and what it can do, at about the one line per bit level. It is updated and released frequently to stay current with Intel and AMD information and supports other vendors' chips. See the project home page for more information: http://etallen.com/cpuid.html For information about changes since the previous Cygwin release, see below or /usr/share/doc/cpuid/ChangeLog after installation. Fri Jan 20 2023 20230120 - Eliminate reliance on "old" build system. Instead, for the cpuid.i386 and cpuid.x86_64, meant to be executable anywhere, including on old hardware & distros, use static builds. They're much bigger, but utterly immune to library changes. - Intel's 13th Generation Core datasheet provides stepping names as well as numbers! So: - Added synth decoding for (0,6),(11,7) Raptor Lake B0 stepping. - Added synth decoding for (0,6),(11,15) Raptor Lake C0 steppings, and clarified case for unknown stepping. - cpuid.man: Added 743844: 13th Generation Core datasheet. - Fixed (0,6)(12,15) synth typo: Emerald Rapids. - Added 6/eax IA32_HW_FEEDBACK_THREAD_CONFIG bit 25. - Added 7/0/edx SGX-KEYS: SGX attestation services. - Clarified 7/0/edx IA32_MCU_OPT_CTRL SRBDS mitigation MSR. - Clarified 7/0/edx IA32_TSX_FORCE_ABORT MSR. - Added 7/1/edx CET_SSS: shadow stacks w/o page faults. - Added several 7/2/edx bits. - In 0xd/0/eax, corrected CET_U & CET_S, which were IA32_XSS. - In 0xd/0/eax, removed the IA32_XSS bits, which aren't relevant for XCR0. - For 0xd/1/ecx, enumerate the IA32_XSS bits instead of a hex bitmask. - For 0xd, added IA32_XSS PASID state (couple places). - Renamed 0x1a: Native Model ID. - Added synth & uarch decoding for (0,6),(11,15) Raptor Lake from MSR_CPUID_table. - Added synth decoding for (0,6),(9,7),5 Pentium Gold G7400, based on instlatx64 sample. - Added rudimentary synth decoding for future (0,6),(12,15) Emerald Rapids CPUs. - Added 7/1/eax LASS: linear address space separation. - Corrected 0x18/n/edx maximum number of addressible IDs, which should use minus-one notation. - Certain leaves cannot be displayed correctly in isolation, i.e. without information about other leaves saved in the stash. For example, the display for leaf 3 uses bits saved from leaf 1. If the -l/--leaf option is used to restrict cpuid to reading only a single leaf, such leaves now are displayed as raw hex, rather than with incorrect information. This is handled by passing a NULL stash to print_reg() and below, and by many new checks for a NULL stash. - Updated cache associativity strings used in 0x8006 and 0x8019 leaves to use value ranges, as in AMD docs. - Fixed mistake in AMD L3 range reservation support: it's in 0x8020/0 register EBX, not ECX. - Added 0x8026/0/edx extended APIC ID. - Added synth & uarch decoding for (10,15),(1,1) Genoa, from AMD 57095 revision guide. - cpuid.man: Added AMD 57095 revision guides, and some older guides. -- Problem reports: https://cygwin.com/problems.html FAQ: https://cygwin.com/faq/ Documentation:https://cygwin.com/docs.html Unsubscribe info: https://cygwin.com/ml/#unsubscribe-simple
Updated: cpuid 20230120
The following package has been upgraded in the Cygwin distribution: * cpuid 20230120 Displays detailed information about the CPU(s) gathered from the CPUID instruction, and also determines the exact model of CPU(s). Whereas /proc/cpuinfo is like an abstract of the features important to Linux in a system, cpuid is a standalone utility which writes a paper expounding on every feature in each CPU's architecture and what it can do, at about the one line per bit level. It is updated and released frequently to stay current with Intel and AMD information and supports other vendors' chips. See the project home page for more information: http://etallen.com/cpuid.html For information about changes since the previous Cygwin release, see below or /usr/share/doc/cpuid/ChangeLog after installation. Fri Jan 20 2023 20230120 - Eliminate reliance on "old" build system. Instead, for the cpuid.i386 and cpuid.x86_64, meant to be executable anywhere, including on old hardware & distros, use static builds. They're much bigger, but utterly immune to library changes. - Intel's 13th Generation Core datasheet provides stepping names as well as numbers! So: - Added synth decoding for (0,6),(11,7) Raptor Lake B0 stepping. - Added synth decoding for (0,6),(11,15) Raptor Lake C0 steppings, and clarified case for unknown stepping. - cpuid.man: Added 743844: 13th Generation Core datasheet. - Fixed (0,6)(12,15) synth typo: Emerald Rapids. - Added 6/eax IA32_HW_FEEDBACK_THREAD_CONFIG bit 25. - Added 7/0/edx SGX-KEYS: SGX attestation services. - Clarified 7/0/edx IA32_MCU_OPT_CTRL SRBDS mitigation MSR. - Clarified 7/0/edx IA32_TSX_FORCE_ABORT MSR. - Added 7/1/edx CET_SSS: shadow stacks w/o page faults. - Added several 7/2/edx bits. - In 0xd/0/eax, corrected CET_U & CET_S, which were IA32_XSS. - In 0xd/0/eax, removed the IA32_XSS bits, which aren't relevant for XCR0. - For 0xd/1/ecx, enumerate the IA32_XSS bits instead of a hex bitmask. - For 0xd, added IA32_XSS PASID state (couple places). - Renamed 0x1a: Native Model ID. - Added synth & uarch decoding for (0,6),(11,15) Raptor Lake from MSR_CPUID_table. - Added synth decoding for (0,6),(9,7),5 Pentium Gold G7400, based on instlatx64 sample. - Added rudimentary synth decoding for future (0,6),(12,15) Emerald Rapids CPUs. - Added 7/1/eax LASS: linear address space separation. - Corrected 0x18/n/edx maximum number of addressible IDs, which should use minus-one notation. - Certain leaves cannot be displayed correctly in isolation, i.e. without information about other leaves saved in the stash. For example, the display for leaf 3 uses bits saved from leaf 1. If the -l/--leaf option is used to restrict cpuid to reading only a single leaf, such leaves now are displayed as raw hex, rather than with incorrect information. This is handled by passing a NULL stash to print_reg() and below, and by many new checks for a NULL stash. - Updated cache associativity strings used in 0x8006 and 0x8019 leaves to use value ranges, as in AMD docs. - Fixed mistake in AMD L3 range reservation support: it's in 0x8020/0 register EBX, not ECX. - Added 0x8026/0/edx extended APIC ID. - Added synth & uarch decoding for (10,15),(1,1) Genoa, from AMD 57095 revision guide. - cpuid.man: Added AMD 57095 revision guides, and some older guides.
[ANNOUNCEMENT] Test: ncurses/-demo libncurses/-devel/++/w10 terminfo/-extra 6.4-3.20230114 (TEST)
The following test packages have been uploaded to the Cygwin distribution: * ncurses 6.4-3.20230114 * ncurses-demo 6.4-3.20230114 * libncurses-devel 6.4-3.20230114 * libncurses++w10 6.4-3.20230114 * libncursesw10 6.4-3.20230114 * terminfo 6.4-3.20230114 * terminfo-extra6.4-3.20230114 This test release replaces the previous test release 6.4-2.20230107. Please test these packages as extensively as possible (especially if you are a Cygwin package maintainer) as libncursesw10 is used in many libraries including libreadline and utilities including less, vim, emacs, most other editors, screen, tmux, mail and web clients, and bash. Package maintainers should install this test release and rerun checks of as many libraries and packages depending on libncurses{,++}w10 as possible. If no issues are reported in the next few weeks, and no newer release becomes available, this release will be promoted to current stable. The ncurses (new curses) library is an emulation of Sys V R 4 curses, and more. It uses terminfo format, supports pads, color, multiple highlights, forms characters, function key mapping, and has all the other SVR4 curses enhancements over BSD curses. For more information see the project home page: https://invisible-island.net/ncurses As there are multiple components and many changes each release see below or read /usr/share/doc/ncurses/ANNOUNCE and /usr/share/doc/ncurses/NEWS after installation: https://invisible-island.net/ncurses/announce.html#h2-release-notes Release Notes These notes are for ncurses 6.4, released January 14, 2023. This release is designed to be source-compatible with ncurses 5.0 through 6.3; providing extensions to the application binary interface (ABI). Although the source can still be configured to support the ncurses 5 ABI, the reason for the release is to reflect improvements to the ncurses 6 ABI and the supporting utility programs. There are, of course, numerous other improvements, listed in this announcement. The most important bug-fixes/improvements dealt with robustness issues. The release notes also mention some other bug-fixes, but are focused on new features and improvements to existing features since ncurses 6.3 release. Library improvements New features There are no new features in this release. Other improvements These are improvements to existing features: * modify delscreen to more effectively delete all windows on the given screen. * modify wnoutrefresh to call pnoutrefresh if its parameter is a pad, rather than treating it as an error, and modify new_panel to permit its window-parameter to be a pad * modify curses_trace() to show the trace-mask as symbols, e.g., TRACE_ORDINARY, DEBUG_LEVEL(3). * improve checks for valid mouse events when an intermediate mouse state is not part of the mousemask specified by the caller * allow extended-color number in opts parameter of wattr_on. * improve _tracecchar_t2 formatting of base+combining character. * trim out some unwanted linker options from ncurses*config and .pc files seen in Fedora 36+. * improve shell-scripts with shellcheck * improve use of "trap" in shell scripts, using a script. * modify make-tar.sh scripts to make timestamps more predictable. These are corrections to existing features: * modify misc/gen-pkgconfig.in to allow for the case where the library directory does not yet exist, since this is processed before doing an install * set trailing null on string passed from winsnstr to wins_nwstr. * modify waddch_literal to allow for double-width base character when merging a combining character Program improvements Several improvements were made to the utility programs: infocmp * rewrite canonical_name function of infocmp to ensure buffer size * improve readability of long parameterized expressions with the infocmp "-f" option by allowing split before a "%p" marker. * modify verbose-option of infocmp, tic, toe to enable debug-tracing if that is configured. tabs limit tab-stop values to max-columns tic add consistency check in tic for u6/u7/u8/u9 and NQ capabilities. tput corrected use of original tty-modes in init/reset subcommands Examples Along with the library and utilities, improvements were made to the ncurses-examples. Most of this activity aimed at improving the test-packages: * add minimal -h (usage) and -V (version) getopt logic to all ncurses-examples programs. * fix an error in "@" command in test/ncurses.c F-menu * add curses_trace to ifdef's for START_TRACE in test/test.priv.h * improve pthread-configuration for test/worm.c * add setlocale call to several test-programs. * workaround in test/picsmap.c for use of floating point for rgb values by ImageMagick 6.9.11, which
Test: ncurses/-demo libncurses/-devel/++/w10 terminfo/-extra 6.4-3.20230114 (TEST)
The following test packages have been uploaded to the Cygwin distribution: * ncurses 6.4-3.20230114 * ncurses-demo 6.4-3.20230114 * libncurses-devel 6.4-3.20230114 * libncurses++w10 6.4-3.20230114 * libncursesw10 6.4-3.20230114 * terminfo 6.4-3.20230114 * terminfo-extra6.4-3.20230114 This test release replaces the previous test release 6.4-2.20230107. Please test these packages as extensively as possible (especially if you are a Cygwin package maintainer) as libncursesw10 is used in many libraries including libreadline and utilities including less, vim, emacs, most other editors, screen, tmux, mail and web clients, and bash. Package maintainers should install this test release and rerun checks of as many libraries and packages depending on libncurses{,++}w10 as possible. If no issues are reported in the next few weeks, and no newer release becomes available, this release will be promoted to current stable. The ncurses (new curses) library is an emulation of Sys V R 4 curses, and more. It uses terminfo format, supports pads, color, multiple highlights, forms characters, function key mapping, and has all the other SVR4 curses enhancements over BSD curses. For more information see the project home page: https://invisible-island.net/ncurses As there are multiple components and many changes each release see below or read /usr/share/doc/ncurses/ANNOUNCE and /usr/share/doc/ncurses/NEWS after installation: https://invisible-island.net/ncurses/announce.html#h2-release-notes Release Notes These notes are for ncurses 6.4, released January 14, 2023. This release is designed to be source-compatible with ncurses 5.0 through 6.3; providing extensions to the application binary interface (ABI). Although the source can still be configured to support the ncurses 5 ABI, the reason for the release is to reflect improvements to the ncurses 6 ABI and the supporting utility programs. There are, of course, numerous other improvements, listed in this announcement. The most important bug-fixes/improvements dealt with robustness issues. The release notes also mention some other bug-fixes, but are focused on new features and improvements to existing features since ncurses 6.3 release. Library improvements New features There are no new features in this release. Other improvements These are improvements to existing features: * modify delscreen to more effectively delete all windows on the given screen. * modify wnoutrefresh to call pnoutrefresh if its parameter is a pad, rather than treating it as an error, and modify new_panel to permit its window-parameter to be a pad * modify curses_trace() to show the trace-mask as symbols, e.g., TRACE_ORDINARY, DEBUG_LEVEL(3). * improve checks for valid mouse events when an intermediate mouse state is not part of the mousemask specified by the caller * allow extended-color number in opts parameter of wattr_on. * improve _tracecchar_t2 formatting of base+combining character. * trim out some unwanted linker options from ncurses*config and .pc files seen in Fedora 36+. * improve shell-scripts with shellcheck * improve use of "trap" in shell scripts, using a script. * modify make-tar.sh scripts to make timestamps more predictable. These are corrections to existing features: * modify misc/gen-pkgconfig.in to allow for the case where the library directory does not yet exist, since this is processed before doing an install * set trailing null on string passed from winsnstr to wins_nwstr. * modify waddch_literal to allow for double-width base character when merging a combining character Program improvements Several improvements were made to the utility programs: infocmp * rewrite canonical_name function of infocmp to ensure buffer size * improve readability of long parameterized expressions with the infocmp "-f" option by allowing split before a "%p" marker. * modify verbose-option of infocmp, tic, toe to enable debug-tracing if that is configured. tabs limit tab-stop values to max-columns tic add consistency check in tic for u6/u7/u8/u9 and NQ capabilities. tput corrected use of original tty-modes in init/reset subcommands Examples Along with the library and utilities, improvements were made to the ncurses-examples. Most of this activity aimed at improving the test-packages: * add minimal -h (usage) and -V (version) getopt logic to all ncurses-examples programs. * fix an error in "@" command in test/ncurses.c F-menu * add curses_trace to ifdef's for START_TRACE in test/test.priv.h * improve pthread-configuration for test/worm.c * add setlocale call to several test-programs. * workaround in test/picsmap.c for use of floating point for rgb values by ImageMagick 6.9.11, which
[ANNOUNCEMENT] tin 2.6.2-1
The following packages have been uploaded to the Cygwin distribution: * tin-2.6.2-1 Tin is a basic, easy to use Internet news reader. Tin can read news locally or remotely via an NNTP (Network News Transport Protocol) server. Install tin if you need a basic news reader. -- Problem reports: https://cygwin.com/problems.html FAQ: https://cygwin.com/faq/ Documentation:https://cygwin.com/docs.html Unsubscribe info: https://cygwin.com/ml/#unsubscribe-simple
tin 2.6.2-1
The following packages have been uploaded to the Cygwin distribution: * tin-2.6.2-1 Tin is a basic, easy to use Internet news reader. Tin can read news locally or remotely via an NNTP (Network News Transport Protocol) server. Install tin if you need a basic news reader.
Re: [ITA] SDL2 (2.26.2)
On 2023-01-21 07:58, Jon Turney via Cygwin-apps wrote: On 20/01/2023 10:35, Takashi Yano via Cygwin-apps wrote: I would like to take over the maintenance of SDL2 package which is currently orphanded. I have already prepared the updated package at: https://tyan0.yr32.net/cygwin/x86_64/release/SDL2/ You've made some changes in the configuration here (switching from enabling pulseaudio to oss) Not sure if many apps now support OSS (and no library or apps obvious on Cygwin) vs ALSA (also supported by PulseAudio), and on Linux they seem to be adding PipeWire. Pulseaudio support is available and required on Cygwin: $ cygcheck-dep -qcSn libpulse{,-simple}0 libpulse0: is needed for ( audacious-plugins empathy gnome-control-center gnome-flashback gnome-settings-daemon gstreamer1.0-plugins-good kde-runtime kmix kwave libao4 libespeak1 libfreerdp1.0 libfreerdp2_2 libgvnc1.0_0 libmatemixer0 libpulse-devel libpulse-mainloop-glib0 libpulse-simple0 libQt5Multimedia5 libspice-client-glib2.0_8 lxqt-panel mpd mpg123-pulse openmpt123 paman pamixer paprefs pasystray pavucontrol pavumeter plasma-desktop plasma-pa pulseaudio pulseaudio-equalizer pulseaudio-esound-compat pulseaudio-module-gconf pulseaudio-module-x11 pulseaudio-module-zeroconf pulseaudio-utils qmmp sidplayfp sox-fmt-pulseaudio speech-dispatcher xfce4-pulseaudio-plugin xmp ) libpulse-simple0: is needed for ( libao4 libespeak1 libfluidsynth1 libgvnc1.0_0 libmikmod3 libpulse-devel mpg123-pulse openmpt123 qmmp sidplayfp sox-fmt-pulseaudio speech-dispatcher xmp ) I think you've also dropped the winmm patch. Under Windows, it is critical that MM timer period/resolution be determined, saved, increased, and restored correctly, to avoid affecting other multimedia drivers, apps, and timing services, which may have changed the MM timer period/resolution. [NTP ntpd under Windows handles common NMEA and binary serial GPS units with DCD PPS (operates as well as under Linux with LinuxPPS) to maintain system timing within a few microseconds (RMS ~ 500ns) offset from UTC.] -- Take care. Thanks, Brian Inglis Calgary, Alberta, Canada La perfection est atteinte Perfection is achieved non pas lorsqu'il n'y a plus rien à ajouter not when there is no more to add mais lorsqu'il n'y a plus rien à retirerbut when there is no more to cut -- Antoine de Saint-Exupéry
[ANNOUNCEMENT] Updated: Perl distributions
The following Perl distributions have been updated to their latest release version available on CPAN: noarch -- perl-Alien-Build-2.77-1 perl-IO-Socket-SSL-2.080-1 perl-Sub-Quote-2.006008-1 -- *** CYGWIN-ANNOUNCE UNSUBSCRIBE INFO *** If you want to unsubscribe from the cygwin-announce mailing list, look at the "List-Unsubscribe: " tag in the email header of this message. Send email to the address specified there. It will be in the format: cygwin-announce-unsubscribe-you=yourdomain@cygwin.com If you need more information on unsubscribing, start reading here: http://sourceware.org/lists.html#unsubscribe-simple Please read *all* of the information on unsubscribing that is available starting at this URL. -- Problem reports: https://cygwin.com/problems.html FAQ: https://cygwin.com/faq/ Documentation:https://cygwin.com/docs.html Unsubscribe info: https://cygwin.com/ml/#unsubscribe-simple
Updated: Perl distributions
The following Perl distributions have been updated to their latest release version available on CPAN: noarch -- perl-Alien-Build-2.77-1 perl-IO-Socket-SSL-2.080-1 perl-Sub-Quote-2.006008-1 -- *** CYGWIN-ANNOUNCE UNSUBSCRIBE INFO *** If you want to unsubscribe from the cygwin-announce mailing list, look at the "List-Unsubscribe: " tag in the email header of this message. Send email to the address specified there. It will be in the format: cygwin-announce-unsubscribe-you=yourdomain@cygwin.com If you need more information on unsubscribing, start reading here: http://sourceware.org/lists.html#unsubscribe-simple Please read *all* of the information on unsubscribing that is available starting at this URL.
[ITP] italic-man
italic-man installs two scripts and hooks them into the workflow of the 'man' command so that the italic attribute of manual pages is actually displayed as italics in terminals that support it. cygport file attachedNAME=italic-man VERSION=1.0 RELEASE=1 ARCH=noarch SUMMARY="Enabling italic display in manual pages" CATEGORY="Utils Doc" HOMEPAGE=https://github.com/mintty/italic-man DESCRIPTION="italic-man installs two scripts and hooks them into the workflow of the 'man' command so that the italic attribute of manual pages is actually displayed as italics in terminals that support it." LICENSE="GNU GPL V3" SRC_URI=https://github.com/mintty/$NAME/archive/$VERSION/$NAME-$VERSION.tar.gz SRC_DIR=. src_compile() { : } src_install() { cd $S/$NAME-$VERSION doman italic-man.7 insinto /usr/share/${NAME} doins grotty iroff insinto /etc/postinstall newins postinstall ${NAME}.sh newins postinstall zp_${NAME}.sh insinto /etc/preremove newins preremove ${NAME}.sh }
[ANNOUNCEMENT] Re-release: procps-ng 4.0.2-2
The package procps-ng is re-released with a bugfix to prevent a crash of procps when using certain options. This package provides command line and full screen utilities for browsing procfs, a pseudo file system dynamically generated by the kernel to provide information about the status of entries in its process table (such as whether the process is running, stopped, or a zombie). It contains free, prockill, pkill, pgrep, pmap, procps, tload, top, uptime, vmstat, w, and watch. -- *** CYGWIN-ANNOUNCE UNSUBSCRIBE INFO *** If you want to unsubscribe from the cygwin-announce mailing list, look at the "List-Unsubscribe: " tag in the email header of this message. Send email to the address specified there. It will be in the format: cygwin-announce-unsubscribe-you=yourdomain@cygwin.com If you need more information on unsubscribing, start reading here: http://sourceware.org/lists.html#unsubscribe-simple Please read *all* of the information on unsubscribing that is available starting at this URL. -- Problem reports: https://cygwin.com/problems.html FAQ: https://cygwin.com/faq/ Documentation:https://cygwin.com/docs.html Unsubscribe info: https://cygwin.com/ml/#unsubscribe-simple
Re-release: procps-ng 4.0.2-2
The package procps-ng is re-released with a bugfix to prevent a crash of procps when using certain options. This package provides command line and full screen utilities for browsing procfs, a pseudo file system dynamically generated by the kernel to provide information about the status of entries in its process table (such as whether the process is running, stopped, or a zombie). It contains free, prockill, pkill, pgrep, pmap, procps, tload, top, uptime, vmstat, w, and watch. -- *** CYGWIN-ANNOUNCE UNSUBSCRIBE INFO *** If you want to unsubscribe from the cygwin-announce mailing list, look at the "List-Unsubscribe: " tag in the email header of this message. Send email to the address specified there. It will be in the format: cygwin-announce-unsubscribe-you=yourdomain@cygwin.com If you need more information on unsubscribing, start reading here: http://sourceware.org/lists.html#unsubscribe-simple Please read *all* of the information on unsubscribing that is available starting at this URL.
Re: compiling issue
Am 21.01.2023 um 06:19 schrieb Nathan via Cygwin: The file here for a game I wanted to use is http://www.ifarchive.org/if-archive/games/source/Adventure2.5.tar.gz and it all compiled but one file getting the error is init.c as follows: Leaving out result types isn't legal C nowadays. You could compile with gcc -std=c90 gcc -O -c init.c init.c:167:1: warning: return type defaults to 'int' [-Wimplicit-int] 167 | initialise() { | ^~ init.c: In function 'initialise': init.c:169:13: warning: implicit declaration of function 'quick_init' [-Wimplicit-function-declaration] 169 | if(!quick_init()){raw_init(); report(); quick_save();} | ^~ init.c:169:27: warning: implicit declaration of function 'raw_init' [-Wimplicit-function-declaration] 169 | if(!quick_init()){raw_init(); report(); quick_save();} | ^~~~ init.c:169:39: warning: implicit declaration of function 'report' [-Wimplicit-function-declaration] 169 | if(!quick_init()){raw_init(); report(); quick_save();} | ^~ init.c:169:49: warning: implicit declaration of function 'quick_save' [-Wimplicit-function-declaration] 169 | if(!quick_init()){raw_init(); report(); quick_save();} | ^~ init.c:170:9: warning: implicit declaration of function 'finish_init' [-Wimplicit-function-declaration] 170 | finish_init(); | ^~~ init.c: At top level: init.c:173:8: warning: return type defaults to 'int' [-Wimplicit-int] 173 | static raw_init() { |^~~~ init.c:173:8: error: static declaration of 'raw_init' follows non-static declaration init.c:169:27: note: previous implicit declaration of 'raw_init' with type 'int()' 169 | if(!quick_init()){raw_init(); report(); quick_save();} | ^~~~ init.c:369:8: warning: return type defaults to 'int' [-Wimplicit-int] 369 | static finish_init() { |^~~ init.c:369:8: error: static declaration of 'finish_init' follows non-static declaration init.c:170:9: note: previous implicit declaration of 'finish_init' with type 'int()' 170 | finish_init(); | ^~~ init.c:593:8: warning: return type defaults to 'int' [-Wimplicit-int] 593 | static report() { |^~ init.c:593:8: error: static declaration of 'report' follows non-static declaration init.c:169:39: note: previous implicit declaration of 'report' with type 'int()' 169 | if(!quick_init()){raw_init(); report(); quick_save();} | ^~ init.c:635:8: warning: return type defaults to 'int' [-Wimplicit-int] 635 | static quick_init() { |^~ init.c:635:8: error: static declaration of 'quick_init' follows non-static declaration init.c:169:13: note: previous implicit declaration of 'quick_init' with type 'int()' 169 | if(!quick_init()){raw_init(); report(); quick_save();} | ^~ init.c: In function 'quick_init': init.c:648:9: warning: implicit declaration of function 'quick_io'; did you mean 'quick_init'? [-Wimplicit-function-declaration] 648 | quick_io(); | ^~~~ | quick_init init.c: At top level: init.c:655:8: warning: return type defaults to 'int' [-Wimplicit-int] 655 | static quick_save() { |^~ init.c:655:8: error: static declaration of 'quick_save' follows non-static declaration init.c:169:49: note: previous implicit declaration of 'quick_save' with type 'int()' 169 | if(!quick_init()){raw_init(); report(); quick_save();} | ^~ init.c:667:8: warning: return type defaults to 'int' [-Wimplicit-int] 667 | static quick_io() { |^~~~ init.c:667:8: error: static declaration of 'quick_io' follows non-static declaration init.c:648:9: note: previous implicit declaration of 'quick_io' with type 'int()' 648 | quick_io(); | ^~~~ make: *** [Makefile:8: init.o] Error 1 so any tips or suggestions to fix this would be appreciated. Thank you. -- Problem reports: https://cygwin.com/problems.html FAQ: https://cygwin.com/faq/ Documentation:https://cygwin.com/docs.html Unsubscribe info: https://cygwin.com/ml/#unsubscribe-simple
Re: [PATCH] Cygwin: fsync: Fix EINVAL for block device.
On Sat, 21 Jan 2023 15:53:37 +0100 Corinna Vinschen wrote: > Hi Takashi, > > On Jan 21 21:44, Takashi Yano wrote: > > The commit af8a7c13b516 has a problem that fsync returns EINVAL for > > block device. This patch treats block devices as a special case. > > https://cygwin.com/pipermail/cygwin/2023-January/252916.html > > > > Fixes: af8a7c13b516 ("Cygwin: fsync: Return EINVAL for special files.") > > Signed-off-by: Takashi Yano > > --- > > winsup/cygwin/fhandler/base.cc | 23 ++- > > 1 file changed, 22 insertions(+), 1 deletion(-) > > > > diff --git a/winsup/cygwin/fhandler/base.cc b/winsup/cygwin/fhandler/base.cc > > index b2738cf20..fc0410522 100644 > > --- a/winsup/cygwin/fhandler/base.cc > > +++ b/winsup/cygwin/fhandler/base.cc > > @@ -1725,10 +1725,31 @@ fhandler_base::utimens (const struct timespec *tvp) > >return -1; > > } > > > > +static bool > > +is_block_device (_major_t major) > > +{ > > + switch (major) > > +{ > > +case DEV_FLOPPY_MAJOR: > > +case DEV_SD_MAJOR: > > +case DEV_CDROM_MAJOR: > > +case DEV_SD1_MAJOR: > > +case DEV_SD2_MAJOR: > > +case DEV_SD3_MAJOR: > > +case DEV_SD4_MAJOR: > > +case DEV_SD5_MAJOR: > > +case DEV_SD6_MAJOR: > > +case DEV_SD7_MAJOR: > > + return true; > > +} > > + return false; > > +} > > + > > You shouldn't need that. Just check S_ISBLK (pc.dev.mode ()) Thanks for the advice. I looked into the S_ISBLK macro and winsup/cygwin/devices.cc and noticed that S_ISBLK() returns true for tape device. Is this the right thing? -- Takashi Yano
[GOLDSTAR] Re: [ITA] libsndfile (1.2.0)
On 21/01/2023 14:59, Jon Turney via Cygwin-apps wrote: On 21/01/2023 00:20, Takashi Yano via Cygwin-apps wrote: On Fri, 20 Jan 2023 16:40:18 -0700 Brian Inglis wrote: On 2023-01-20 16:22, Takashi Yano via Cygwin-apps wrote: Do you mean, keep libsndfile1 and delete libsndfile, or vice versa? Presumably means to remove libsndfile from PKG_NAMES as it is no longer required by packaging tools and add: libsndfile1_OBSOLETES=libsndfile # no longer required by packaging tools in libsndfile1 package stanza lines in libsndfile.cygport. Thanks for the advice! This is correct. I have updated the package in: https://tyan0.yr32.net/cygwin/x86_64/release/libsndfile/ Thanks. I've given you the adopted packages: libsndfile, mpg123, opus, opus-tools, opusfile, SDL2. I'll look at the rest later. Please accept these literally priceless gold stars for adopting these packages.
Re: [ITA] libsndfile (1.2.0)
On 21/01/2023 00:20, Takashi Yano via Cygwin-apps wrote: On Fri, 20 Jan 2023 16:40:18 -0700 Brian Inglis wrote: On 2023-01-20 16:22, Takashi Yano via Cygwin-apps wrote: Do you mean, keep libsndfile1 and delete libsndfile, or vice versa? Presumably means to remove libsndfile from PKG_NAMES as it is no longer required by packaging tools and add: libsndfile1_OBSOLETES=libsndfile # no longer required by packaging tools in libsndfile1 package stanza lines in libsndfile.cygport. Thanks for the advice! This is correct. I have updated the package in: https://tyan0.yr32.net/cygwin/x86_64/release/libsndfile/ Thanks. I've given you the adopted packages: libsndfile, mpg123, opus, opus-tools, opusfile, SDL2. I'll look at the rest later. I note most of these sources also have mingw-cross packages as well. I don't know what we want to do about those.
Re: [ITA] SDL2 (2.26.2)
On 20/01/2023 10:35, Takashi Yano via Cygwin-apps wrote: I would like to take over the maintenance of SDL2 package which is currently orphanded. I have already prepared the updated package at: https://tyan0.yr32.net/cygwin/x86_64/release/SDL2/ You've made some changes in the configuration here (switching from enabling pulseaudio to oss) I think you've also dropped the winmm patch. I don't understand enough to evaluate the correctness those changes, so it would be nice if you could explain that to me.
Re: [ITA] mpg123 (1.31.1)
On 20/01/2023 10:34, Takashi Yano via Cygwin-apps wrote: I would like to take over the maintenance of mpg123 package which is currently orphanded. I have already prepared the updated package at: https://tyan0.yr32.net/cygwin/x86_64/release/mpg123/ Looks good, apart from: LICENSE="LGPL v2.1" The contents of LICENSE is expected to be a valid SPDX license expression, which I don't think this is. Perhaps "LGPL-2.1-only" [2] [1] https://cygwin.github.io/cygport/pkg_info_cygpart.html#LICENSE [2] https://spdx.org/licenses/
Re: compiling issue
On 21/01/2023 07:47, Arrigo Marchiori via Cygwin wrote: On Fri, Jan 20, 2023 at 09:19:49PM -0800, Nathan via Cygwin wrote: The file here for a game I wanted to use is http://www.ifarchive.org/if-archive/games/source/Adventure2.5.tar.gz and it all compiled but one file getting the error is init.c as follows: [...] so any tips or suggestions to fix this would be appreciated. You might also find the package 'nfrotz' of some interest. https://cygwin.com/packages/summary/nfrotz-src.html I guess that this code was written to work older compilers, that allowed different (looser) constructs. The problem is not Cygwin, but rather the compiler installed with Cygwin. For this reason, what follows is off-topic here. The attached patch should allow compilation with today's compilers. Copy the file in the same directory as the sources and run: $ patch < adventure.patch -- Problem reports: https://cygwin.com/problems.html FAQ: https://cygwin.com/faq/ Documentation:https://cygwin.com/docs.html Unsubscribe info: https://cygwin.com/ml/#unsubscribe-simple
[PATCH] Cygwin: fsync: Fix EINVAL for block device.
The commit af8a7c13b516 has a problem that fsync returns EINVAL for block device. This patch treats block devices as a special case. https://cygwin.com/pipermail/cygwin/2023-January/252916.html Fixes: af8a7c13b516 ("Cygwin: fsync: Return EINVAL for special files.") Signed-off-by: Takashi Yano --- winsup/cygwin/fhandler/base.cc | 23 ++- 1 file changed, 22 insertions(+), 1 deletion(-) diff --git a/winsup/cygwin/fhandler/base.cc b/winsup/cygwin/fhandler/base.cc index b2738cf20..fc0410522 100644 --- a/winsup/cygwin/fhandler/base.cc +++ b/winsup/cygwin/fhandler/base.cc @@ -1725,10 +1725,31 @@ fhandler_base::utimens (const struct timespec *tvp) return -1; } +static bool +is_block_device (_major_t major) +{ + switch (major) +{ +case DEV_FLOPPY_MAJOR: +case DEV_SD_MAJOR: +case DEV_CDROM_MAJOR: +case DEV_SD1_MAJOR: +case DEV_SD2_MAJOR: +case DEV_SD3_MAJOR: +case DEV_SD4_MAJOR: +case DEV_SD5_MAJOR: +case DEV_SD6_MAJOR: +case DEV_SD7_MAJOR: + return true; +} + return false; +} + int fhandler_base::fsync () { - if (!get_handle () || nohandle () || pc.isspecial ()) + if (!get_handle () || nohandle () + || (pc.isspecial () && !is_block_device (get_major ( { set_errno (EINVAL); return -1; -- 2.39.0
Re: fsync() cause "Invalid Argument" for block device.
On Sat, 21 Jan 2023 05:57:35 + Yano Ray wrote: > Hi, > I tried to format a partition using mkfs.ext4 (e2fsprogs) but it failed with > an error. > > $ /usr/sbin/mkfs.ext4 /dev/sde1 > mke2fs 1.44.5 (15-Dec-2018) > Creating filesystem with 16384 1k blocks and 4096 inodes > Filesystem UUID: fb09cfbf-9f2a-4874-82f7-26c7cb853093 > Superblock backups stored on blocks: > 8193 > > Allocating group tables: done > Writing inode tables: done > Creating journal (1024 blocks): done > Writing superblocks and filesystem accounting information: mkfs.ext4: Invalid > argument while writing out and closing file system > $ > > This also seems to happen with mkfs.minix (linux-utils). > > $ /sbin/mkfs.minix /dev/sde1 > 5472 inodes > 16384 blocks > Firstdatazone=176 (176) > Zonesize=1024 > Maxsize=268966912 > > mkfs.minix: write failed: Invalid argument > $ > > I think it's because fsync is not implemented (causes InvalidArgument) for > block devices. > Why fsync is not implemented for block devices? > > /* test code */ > #include > #include > #include > #include > #include > > int main(int argc, char** argv) { > int fd; > > if (argc != 2) { > puts("./program [file]"); > return -1; > } > > fd = open(argv[1], O_RDWR); > printf("open: %s\n", strerror(errno)); > if (errno) return -1; > > fsync(fd); > printf("fsync: %s\n", strerror(errno)); > if (errno) return -1; > } > > on Cygwin: > $ ./a.exe /dev/sde > open: No error > fsync: Invalid argument > $ ./a.exe /dev/sde1 > open: No error > fsync: Invalid argument > $ uname -a > CYGWIN_NT-10.0-22621 DESKTOP-5H6F7L3 3.4.5-1.x86_64 2023-01-19 19:09 UTC > x86_64 Cygwin > $ > > expected behaviour (on Arch Linux): > $ sudo ./a.out /dev/sda > $ sudo ./a.out /dev/sda > open: Success > fsync: Success > $ sudo ./a.out /dev/sda1 > open: Success > fsync: Success > $ uname -a > Linux arch 6.0.11-arch1-1 #1 SMP PREEMPT_DYNAMIC Fri, 02 Dec 2022 17:25:31 > + x86_64 GNU/Linux > $ Thanks for the report. I looked into this problem and found this causes after the commit: commit af8a7c13b516c77c1e6092157e23ca26db44b1af Author: Takashi Yano Date: Sat Mar 12 06:19:53 2022 +0900 Cygwin: fsync: Return EINVAL for special files. - Unlike linux, fsync() calls FlushFileBuffers() even for special files. This causes the problem reported in: https://cygwin.com/pipermail/cygwin/2022-March/251022.html This patch fixes the issue. I will submit a patch for this issue. -- Takashi Yano -- Problem reports: https://cygwin.com/problems.html FAQ: https://cygwin.com/faq/ Documentation:https://cygwin.com/docs.html Unsubscribe info: https://cygwin.com/ml/#unsubscribe-simple
[ANNOUNCEMENT] libfido2 1.12.0-1
The following packages have been uploaded to the Cygwin distribution: * libfido2-1.12.0-1 * libfido2-devel-1.12.0-1 libfido2 provides library functionality and command-line tools to communicate with a FIDO device over USB, and to verify attestation and assertion signatures. libfido2 supports the FIDO U2F (CTAP 1) and FIDO 2.0 (CTAP 2) protocols. -- Problem reports: https://cygwin.com/problems.html FAQ: https://cygwin.com/faq/ Documentation:https://cygwin.com/docs.html Unsubscribe info: https://cygwin.com/ml/#unsubscribe-simple
[ANNOUNCEMENT] libcbor 0.9.0-4
The following packages have been uploaded to the Cygwin distribution: * libcbor-0.9.0-4 * libcbor-devel-0.9.0-4 libcbor is a C library for parsing and generating CBOR. -- Problem reports: https://cygwin.com/problems.html FAQ: https://cygwin.com/faq/ Documentation:https://cygwin.com/docs.html Unsubscribe info: https://cygwin.com/ml/#unsubscribe-simple
libfido2 1.12.0-1
The following packages have been uploaded to the Cygwin distribution: * libfido2-1.12.0-1 * libfido2-devel-1.12.0-1 libfido2 provides library functionality and command-line tools to communicate with a FIDO device over USB, and to verify attestation and assertion signatures. libfido2 supports the FIDO U2F (CTAP 1) and FIDO 2.0 (CTAP 2) protocols.
libcbor 0.9.0-4
The following packages have been uploaded to the Cygwin distribution: * libcbor-0.9.0-4 * libcbor-devel-0.9.0-4 libcbor is a C library for parsing and generating CBOR.