[ANNOUNCEMENT] tcsh 6.24.05-1
The following packages have been uploaded to the Cygwin distribution: * tcsh-6.24.05-1 This is a maintenance release with no functional change to the shell itself, but all additional changes from 6.24.03 (and 6.24.04, never released) have been applied to the manual page. All other changes are about the build and release processes. Downside: The conversion from the man page to HTML has been deprecated, so the HTML documentation is no longer part of this package. Tcsh is an enhanced but completely compatible version of csh, the C shell. Tcsh is a command language interpreter which can be used both as an interactive login shell and as a shell script command processor. Tcsh includes a command line editor, programmable word completion, spelling correction, a history mechanism, job control and a C language like syntax. -- 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
tcsh 6.24.05-1
The following packages have been uploaded to the Cygwin distribution: * tcsh-6.24.05-1 This is a maintenance release with no functional change to the shell itself, but all additional changes from 6.24.03 (and 6.24.04, never released) have been applied to the manual page. All other changes are about the build and release processes. Downside: The conversion from the man page to HTML has been deprecated, so the HTML documentation is no longer part of this package. Tcsh is an enhanced but completely compatible version of csh, the C shell. Tcsh is a command language interpreter which can be used both as an interactive login shell and as a shell script command processor. Tcsh includes a command line editor, programmable word completion, spelling correction, a history mechanism, job control and a C language like syntax.
Re: Sharing my packages for CYGWIN
On 18/11/2022 14:32, Keith Christian wrote: Carlo, Since you are successfully creating Cygwin packages, one thing that would be very helpful is a detailed set of instructions for cygport to create a Cygwin package from source. There are instructions posted on the Cygwin website and other info about cygport, but I have not found a comprehensive document that makes packaging nearly "mistake-proof" for uninitiated packagers. (Maybe I'm not looking in the right place.) I know our documentation could be improved, but you seem to be asking for something which seems impossible. Some pieces of software are complex and very hard to package, and even experienced packagers can make mistakes. Can you perhaps explain more specifically where you get stuck in the process, and cannot find help? E.g., I want to create an up to date Ansible package for personal use, as the current version in Cygwin is 2.8.4, and it appears Ansible is up to at least 2.10.7, as that version is available in Debian Bullseye. As [1] suggests, you should start by taking the existing package and updating the version number. Hopefully it just works, but we cannot possibly anticipate all of the package-specific problems that might arise. [1] https://cygwin.com/packaging-contributors-guide.html#adopt -- 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: Sharing my packages for CYGWIN
On 17/11/2022 15:18, Carlo B. wrote: Hello, at this address I did a repository of packages that I made for CYGWIN: https://github.com/carlo-bramini/packages-cygwin Sometimes, when I need something not existing (or newer) into the official list of packages for CYGWIN, I upload it here. All these packages exists also in all major linux distributions. I hope that you will find it useful. Thanks for working on these. I'd really encourage you to share your updated .cygport files on the cygwin-apps list, even if you don't wish to take over maintainer-ship of those packages. That means your efforts are available via our setup and package repository mirrors, and so will reach a wider audience than just hosting the package yourself. -- 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: cygclass python-wheel setup.cfg-only projects
On 02/12/2022 12:10, Jon Turney wrote: On 01/12/2022 22:20, Libor Ukropec wrote: Hello, I have question to cygclass python-wheel. It seems that setup.py is being omited in some python packages (here I faced it in the python-fasteners) and as described here: https://setuptools.pypa.io/en/latest/setuptools.html , chapter "setup.cfg-only projects" > If setup.py is missing from the project directory when a PEP 517 build is invoked, > setuptools emulates a dummy setup.py file containing only a setuptools.setup() call. Currently the cyglass requires the setup.py being present, otherwise it throws error "No Python Distutils module detected" IMHO would be nice if the cygclass handle this case. Or should I create a patch that inserts empty setup.py module instead? Yeah, it seems this is definitely something that needs updating in cygport, so thanks for pointing that out. It's fairly straightforward to drop the check at [1], or perhaps it's more appropriate to change it to check for either setup.py or setup.cfg? But then we want to run 'python -msetuptools.launch setup.py bdist_wheel' to build the wheel. In a very quick bit of research, it' seems the modern equivalent would be something like 'python -m build --wheel', but we don't seem to have a python-build package? The other alternative seems to be 'pip wheel' Attached is a cygport patch which uses that for the setup.py-less case. (possibly we could use it in all cases, but I'm being conservative with this change) I'm not very familiar with the evolving state of python packaging, so I think I may need a bit of help getting this right! From a44b2e970293b34062da61844f7071fae70a230c Mon Sep 17 00:00:00 2001 From: Jon Turney Date: Fri, 2 Dec 2022 11:50:33 + Subject: [PATCH cygport] python-wheel: Handle projects without a setup.py Since setuptools 40.9.0, projects can have just a setup.cfg, and a default setup.py is emulated. Rather than setuptools, use 'pip wheel' to build the wheel. Note: possibly could use pypa build module to do the build, but we need pip for the install anyhow? --- cygclass/python-wheel.cygclass | 28 +--- 1 file changed, 17 insertions(+), 11 deletions(-) diff --git a/cygclass/python-wheel.cygclass b/cygclass/python-wheel.cygclass index b6ed68b..4d97945 100644 --- a/cygclass/python-wheel.cygclass +++ b/cygclass/python-wheel.cygclass @@ -24,9 +24,10 @@ #h* Cygclasses/python-wheel.cygclass # DESCRIPTION # Wheels are the new standard for installing Python libraries and programs. -# The build is defined by a setup.py file in the top source directory, which -# controls the installation of files and the building of C Python extensions. -# Many such packages are hosted on the Python Package Index (PyPI). +# The build is defined by a PEP 517 conformant source tree, or by a top-level +# setup.py file, which controls the installation of files and the building of C +# Python extensions. Many such packages are hosted on the Python Package Index +# (PyPI). # # This cygclass handles the building of wheel-based Python module packages # for multiple Python versions simultaneously. @@ -148,23 +149,28 @@ fi # SYNOPSIS # python_wheel_compile [OPTIONS] # DESCRIPTION -# Runs the setup.py 'bdist_wheel' command, to which any arguments are passed. -# +# Runs 'pip wheel', or the setup.py 'bdist_wheel' command, to which any +# arguments are passed. python_wheel_compile() { local ver - if [ ! -e setup.py ] + if [ ! -e setup.py ] && [ ! -e setup.cfg ] then - error "No Python Distutils module detected" + error "No Python Distutils module detected in source tree" fi for ver in ${PYTHON_WHEEL_VERSIONS//:/ } do [ ! -d build/lib ] || find build/lib -delete - # setuptools.launch imports setuptools hooks regardles of setup.py if [ ! -f dist/*-py2.py3*-none-any.whl -a ! -f dist/*py${ver:0:1}-none-any.whl ] then - /usr/bin/python${ver} -msetuptools.launch setup.py bdist_wheel "${@}" || error "setup.py bdist_wheel failed" + if [ ! -e setup.py ] + then + pip${ver} wheel --no-deps -w dist . || error "pip${ver} wheel failed" + else + # setuptools.launch imports setuptools hooks regardles of setup.py + /usr/bin/python${ver} -msetuptools.launch setup.py bdist_wheel "${@}" || error "setup.py bdist_wheel failed" + fi fi done } @@ -178,9 +184,9 @@ python_wheel_compile() { python_wheel_install() { local ver whl - if [ ! -e setup.py ] + if [ ! -e setup.py ] && [ ! -e setup.cfg ] then - error "No Python Distutils module detected" + error "No Python
[ANNOUNCEMENT] cygwin 3.4.0-1
The following packages have been uploaded to the Cygwin distribution: * cygwin-3.4.0-1 * cygwin-devel-3.4.0-1 * cygwin-doc-3.4.0-1 == IMPORTANT DEPRECATION NOTES == - Cygwin 3.4 is the FIRST major version dropping support for - 32 bit Windows including WOW64 on 64 bit Windows. - Windows Vista - Windows Server 2008 - Cygwin 3.4 is the LAST major version supporting - Windows 7 - Windows Server 2008 R2 - Windows 8 - Windows Server 2012 - Cygwin 3.5, which will probably be release at some point in late 2023, will run on - Windows 8.1 - Windows 10 - Windows 11 - Windows Server 2012 R2 - Windows Server 2016 - Windows Server 2019 - Windows Server 2022 There are no plans to deprecate support for 64 bit systems starting with Windows 8.1 / Windows Server 2012 R2 any time soon. == What's new: --- - Drop support for Vista and Server 2008. - Drop support for 32 bit Windows and WOW64. - Allow to run with full ASLR enabled and enable on Cygwin DLL by default. - Remove any special handling for the .com filename suffix. It has to be used always explicitely. - Add code to handle setrlimit(RLIMIT_AS). - Add code to handle signal masks in /proc//status. - Handle UDP_SEGMENT and UDP_GRO socket options. What changed: - - The CYGWIN=pipe_byte option is now set by default, so that pipes are opened in byte mode rather than message mode. Addresses: https://cygwin.com/pipermail/cygwin/2021-March/247987.html - The stdio input functions no longer try again to read after EOF. This aligns Cygwin behavior to that of Linux. Addresses: https://cygwin.com/pipermail/cygwin/2022-June/251672.html - Treat an empty path (empty element in PATH or PATH is absent) as the current directory as Linux does. Addresses: https://cygwin.com/pipermail/cygwin/2022-June/251730.html - The default values of FD_SETSIZE and NOFILE are now 1024 and 3200, respectively. Addresses: https://cygwin.com/pipermail/cygwin/2022-July/251839.html Bug Fixes - - Don't error out if getfacl(1) is called on a socket file. Partially addresses: https://cygwin.com/pipermail/cygwin/2022-July/251768.html - Make serial ioctl(TIOCMBIS/TIOCMBIC) work on USB CDC devices. Addresses: https://cygwin.com/pipermail/cygwin/2022-November/252443.html - Fix a SEGV when running a process with changed primary group. Addresses: https://cygwin.com/pipermail/cygwin-apps/2022-September/042245.html - Fix primary group handling when running a process tree containing non-Cygwin processes and with changed primary group. The Cygwin child process of a non-Cygwin process will have reverted its primary group to the default primary group erroneously. Addresses: https://cygwin.com/pipermail/cygwin-apps/2022-September/042245.html - Fix parsing Windows command line when non-ASCII chars are in the input. Addresses: https://cygwin.com/pipermail/cygwin/2022-November/252481.html -- 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
cygwin 3.4.0-1
The following packages have been uploaded to the Cygwin distribution: * cygwin-3.4.0-1 * cygwin-devel-3.4.0-1 * cygwin-doc-3.4.0-1 == IMPORTANT DEPRECATION NOTES == - Cygwin 3.4 is the FIRST major version dropping support for - 32 bit Windows including WOW64 on 64 bit Windows. - Windows Vista - Windows Server 2008 - Cygwin 3.4 is the LAST major version supporting - Windows 7 - Windows Server 2008 R2 - Windows 8 - Windows Server 2012 - Cygwin 3.5, which will probably be release at some point in late 2023, will run on - Windows 8.1 - Windows 10 - Windows 11 - Windows Server 2012 R2 - Windows Server 2016 - Windows Server 2019 - Windows Server 2022 There are no plans to deprecate support for 64 bit systems starting with Windows 8.1 / Windows Server 2012 R2 any time soon. == What's new: --- - Drop support for Vista and Server 2008. - Drop support for 32 bit Windows and WOW64. - Allow to run with full ASLR enabled and enable on Cygwin DLL by default. - Remove any special handling for the .com filename suffix. It has to be used always explicitely. - Add code to handle setrlimit(RLIMIT_AS). - Add code to handle signal masks in /proc//status. - Handle UDP_SEGMENT and UDP_GRO socket options. What changed: - - The CYGWIN=pipe_byte option is now set by default, so that pipes are opened in byte mode rather than message mode. Addresses: https://cygwin.com/pipermail/cygwin/2021-March/247987.html - The stdio input functions no longer try again to read after EOF. This aligns Cygwin behavior to that of Linux. Addresses: https://cygwin.com/pipermail/cygwin/2022-June/251672.html - Treat an empty path (empty element in PATH or PATH is absent) as the current directory as Linux does. Addresses: https://cygwin.com/pipermail/cygwin/2022-June/251730.html - The default values of FD_SETSIZE and NOFILE are now 1024 and 3200, respectively. Addresses: https://cygwin.com/pipermail/cygwin/2022-July/251839.html Bug Fixes - - Don't error out if getfacl(1) is called on a socket file. Partially addresses: https://cygwin.com/pipermail/cygwin/2022-July/251768.html - Make serial ioctl(TIOCMBIS/TIOCMBIC) work on USB CDC devices. Addresses: https://cygwin.com/pipermail/cygwin/2022-November/252443.html - Fix a SEGV when running a process with changed primary group. Addresses: https://cygwin.com/pipermail/cygwin-apps/2022-September/042245.html - Fix primary group handling when running a process tree containing non-Cygwin processes and with changed primary group. The Cygwin child process of a non-Cygwin process will have reverted its primary group to the default primary group erroneously. Addresses: https://cygwin.com/pipermail/cygwin-apps/2022-September/042245.html - Fix parsing Windows command line when non-ASCII chars are in the input. Addresses: https://cygwin.com/pipermail/cygwin/2022-November/252481.html