[ANNOUNCEMENT] tcsh 6.24.05-1

2022-12-04 Thread Corinna Vinschen via Cygwin
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

2022-12-04 Thread Corinna Vinschen
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

2022-12-04 Thread Jon Turney via 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

2022-12-04 Thread Jon Turney via 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

2022-12-04 Thread Jon Turney via Cygwin-apps

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

2022-12-04 Thread Corinna Vinschen via Cygwin
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

2022-12-04 Thread Corinna Vinschen
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