public inbox for cygwin@cygwin.com
 help / color / mirror / Atom feed
* [ANNOUNCEMENT] Cygwin 3.5 is coming soon, please test!
@ 2024-01-17 11:44 Corinna Vinschen
  2024-01-17 17:27 ` How to test Cygwin 3.5 using github actions Glenn Strauss
                   ` (2 more replies)
  0 siblings, 3 replies; 7+ messages in thread
From: Corinna Vinschen @ 2024-01-17 11:44 UTC (permalink / raw)
  To: cygwin

Hi folks,


we're planning to release Cygwin 3.5 end of this month (Jan 2024) if
nothing serious crops up.

-----------------------------------------------------------------------

One major change in this release is dropping Windows 7, Windows 8,
Windows Server 2008 R2, and Windows Server 2012 from the list of
supported operating systems.

For those of you still running one of these old systems (despite
them all being unsupported and unpatched by the vendor), we will
keep the last 3.4 release (3.4.10) available for quite some time.

-----------------------------------------------------------------------

The minimum supported OS version when running Cygwin 3.5 will be
Windows 8.1 and Windows Server 2012 R2.

-----------------------------------------------------------------------

In this phase of development, we concentrate mainly on avoiding
regressions from 3.4.10.

It would be kind if some of you would start testing, by downloading
the test release. The last test release at the moment of writing this
mail is

  cygwin		3.5.0-0.560.g07cccc74a5da

Latest documentation is

  cygwin-doc		3.5.0-0.560.g07cccc74a5da

Developers developing Cygwin applications should also switch to
the matching developer files:

  cygwin-devel		3.5.0-0.560.g07cccc74a5da

-----------------------------------------------------------------------

What's new:
-----------

- Drop support for Windows 7, Windows 8, Server 2008 R2 and Server 2012.

- Console devices (/dev/consN) are now accessible by processes attached
  to other consoles or ptys. Thanks to this new feature, GNU screen and
  tmux now work in the console.

- newgrp(1) tool.

- cygcheck has new options searching for available packages in the
  cygwin distro, as well as getting extended info on available and
  installed packages.

- fnmatch(3) and glob(3) now support named character classes, equivalence
  class expressions, and collating symbols in the search pattern, i.e.,
  [:alnum:], [=a=], [.aa.].

- Introduce /dev/disk directory with various by-* subdirectories which
  provide symlinks to disk and partition raw devices:
  by-drive/DRIVE_LETTER ->  ../../sdXN
  by-label/VOLUME_LABEL ->  ../../sdXN
  by-id/BUSTYPE-[VENDOR_]PRODUCT_[SERIAL|0xHASH][-partN] -> ../../sdX[N]
  by-partuuid/MBR_SERIAL-OFFSET -> ../../sdXN
  by-partuuid/GPT_GUID -> ../../sdXN
  by-uuid/VOLUME_SERIAL -> ../../sdXN
  by-voluuid/MBR_SERIAL-OFFSET -> ../../sdXN
  by-voluuid/VOLUME_GUID -> ../../sdXN
  The subdirectories by-drive and by-voluuid are Cygwin specific.

- Introduce /proc/codesets and /proc/locales with information on
  supported codesets and locales for all interested parties.  Locale(1)
  opens these files and uses the info for printing locale info like any
  other process could do.

- Add support for GB18030 codeset.

- Add support for lseek flags SEEK_DATA and SEEK_HOLE, a GNU extension.

- New API calls: posix_spawn_file_actions_addchdir_np,
  posix_spawn_file_actions_addfchdir_np.

- New API calls: c8rtomb, c16rtomb, c32rtomb, mbrtoc8, mbrtoc16, mbrtoc32.

- New API call: close_range (available on FreeBSD and Linux).

- New API call: fallocate (Linux-specific).

- Implement OSS-based sound mixer device (/dev/mixer).

What changed:
-------------

- posix_spawnp no longer falls back to starting the shell for unrecognized
  files as execvp.  For the reasoning, see
  https://www.austingroupbugs.net/view.php?id=1674

- FIFOs now also work on NFS filesystems.

- Enable automatic sparsifying of files on SSDs, independent of the
  "sparse" mount mode.

- When RLIMIT_CORE is more than 1MB, a core dump file which can be loaded by gdb
  is now written on a fatal error. Otherwise, if it's greater than zero, a text
  format .stackdump file is written, as previously.

- The default RLIMIT_CORE is now 0, disabling the generation of core dump or
  stackdump files.

^ permalink raw reply	[flat|nested] 7+ messages in thread

* How to test Cygwin 3.5 using github actions
  2024-01-17 11:44 [ANNOUNCEMENT] Cygwin 3.5 is coming soon, please test! Corinna Vinschen
@ 2024-01-17 17:27 ` Glenn Strauss
  2024-01-18  9:55   ` Corinna Vinschen
  2024-01-18 15:10   ` Jon Turney
  2024-01-18  8:28 ` [ANNOUNCEMENT] Cygwin 3.5 is coming soon, please test! Brian Inglis
  2024-01-21 11:18 ` Exponential slowdown for deep paths in Cygwin 3.5 Dan Shelton
  2 siblings, 2 replies; 7+ messages in thread
From: Glenn Strauss @ 2024-01-17 17:27 UTC (permalink / raw)
  To: cygwin

On Wed, Jan 17, 2024 at 12:44:32PM +0100, Corinna Vinschen via Cygwin wrote:
> Hi folks,
> 
> we're planning to release Cygwin 3.5 end of this month (Jan 2024) if
> nothing serious crops up.

Was: Re: [ANNOUNCEMENT] Cygwin 3.5 is coming soon, please test!

Corinna: Cygwin 3.5 works fine when tested with the lighttpd test suite.


For others who might try something similar on their own repos:

How to test Cygwin 3.5 using github actions
-------------------------------------------

Starting with:
  https://github.com/cygwin/cygwin-install-action/
  (Thanks Adam Dinwoodie, Jon Turney, Konrad Gräfe)

I added to my Windows-Cygwin job:

      - name: Update
        shell: powershell
        run: |
          # (https://github.com/cygwin/cygwin-install-action/blob/master/action.yml)
          Invoke-WebRequest https://cygwin.com/setup-x86_64.exe -OutFile C:\setup.exe
          # because setup is a Windows GUI app, make it part of a pipeline to make
          # PowerShell wait for it to exit
          & C:\setup.exe -qgnO -t | Out-Default

Hey Jon, would you accept a pull request to add an option to add -t to
the call to setup.exe in cygwin-install-action?

For lighttpd, I added the above to
https://github.com/lighttpd/lighttpd1.4/blob/master/.github/workflows/pr.yml#L190

The whole lighttpd Windows-Cygwin job currently looks like this:

  Windows-Cygwin:
    runs-on: windows-latest
    env:
      CYGWIN: winsymlinks:native
    steps:
      - run: git config --global core.autocrlf input
      - uses: actions/checkout@v4
      - uses: cygwin/cygwin-install-action@master
        with:
          packages: >
            autoconf automake libtool m4 make
            cmake meson ninja scons
            gcc-g++ git pkgconf perl
            libpcre2-devel
            libnettle-devel gnutls-devel mbedtls-devel libnss-devel libssl-devel
            libbrotli-devel libdeflate-devel zlib-devel libzstd-devel
            libsasl2-devel libkrb5-devel libdbi-devel openldap-devel
            libmariadb-devel libpq-devel
            libmaxminddb-devel libunwind-devel lua-devel lua5.1-devel
            libxml2-devel libuuid-devel libsqlite3-devel
      - name: Update
        shell: powershell
        run: |
          # (https://github.com/cygwin/cygwin-install-action/blob/master/action.yml)
          Invoke-WebRequest https://cygwin.com/setup-x86_64.exe -OutFile C:\setup.exe
          # because setup is a Windows GUI app, make it part of a pipeline to make
          # PowerShell wait for it to exit
          & C:\setup.exe -qgnO -t | Out-Default
      - name: Compile and Test
        #shell: C:\cygwin\bin\bash.exe --noprofile --norc -o igncr -eo pipefail '{0}'
        shell: C:\cygwin\bin\bash.exe --login -o igncr -eo pipefail '{0}'
        run: |
          set -e
          export PATH=/usr/bin:$(cygpath ${SYSTEMROOT})/system32
          # lighttpd-specific build and test commands:
          export NO_PAM=1 NO_UNWIND=1 NO_WOLFSSL=1
          cd "${{github.workspace}}" && scripts/ci-build.sh autobuild

Cheers, Glenn

^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: [ANNOUNCEMENT] Cygwin 3.5 is coming soon, please test!
  2024-01-17 11:44 [ANNOUNCEMENT] Cygwin 3.5 is coming soon, please test! Corinna Vinschen
  2024-01-17 17:27 ` How to test Cygwin 3.5 using github actions Glenn Strauss
@ 2024-01-18  8:28 ` Brian Inglis
  2024-01-21 11:18 ` Exponential slowdown for deep paths in Cygwin 3.5 Dan Shelton
  2 siblings, 0 replies; 7+ messages in thread
From: Brian Inglis @ 2024-01-18  8:28 UTC (permalink / raw)
  To: cygwin

On 2024-01-17 04:44, Corinna Vinschen via Cygwin wrote:
> we're planning to release Cygwin 3.5 end of this month (Jan 2024) if
> nothing serious crops up.
> -----------------------------------------------------------------------
> One major change in this release is dropping Windows 7, Windows 8,
> Windows Server 2008 R2, and Windows Server 2012 from the list of
> supported operating systems.
> For those of you still running one of these old systems (despite
> them all being unsupported and unpatched by the vendor), we will
> keep the last 3.4 release (3.4.10) available for quite some time.
> -----------------------------------------------------------------------
> The minimum supported OS version when running Cygwin 3.5 will be
> Windows 8.1 and Windows Server 2012 R2.
> -----------------------------------------------------------------------
> In this phase of development, we concentrate mainly on avoiding
> regressions from 3.4.10.
> It would be kind if some of you would start testing, by downloading
> the test release. The last test release at the moment of writing this
> mail is
>    cygwin		3.5.0-0.560.g07cccc74a5da
> Latest documentation is
>    cygwin-doc		3.5.0-0.560.g07cccc74a5da
> Developers developing Cygwin applications should also switch to
> the matching developer files:
>    cygwin-devel		3.5.0-0.560.g07cccc74a5da
> -----------------------------------------------------------------------
> What's new:
> -----------
> - Drop support for Windows 7, Windows 8, Server 2008 R2 and Server 2012.
> - Console devices (/dev/consN) are now accessible by processes attached
>    to other consoles or ptys. Thanks to this new feature, GNU screen and
>    tmux now work in the console.
> - newgrp(1) tool.
> - cygcheck has new options searching for available packages in the
>    cygwin distro, as well as getting extended info on available and
>    installed packages.
> - fnmatch(3) and glob(3) now support named character classes, equivalence
>    class expressions, and collating symbols in the search pattern, i.e.,
>    [:alnum:], [=a=], [.aa.].
> - Introduce /dev/disk directory with various by-* subdirectories which
>    provide symlinks to disk and partition raw devices:
>    by-drive/DRIVE_LETTER ->  ../../sdXN
>    by-label/VOLUME_LABEL ->  ../../sdXN
>    by-id/BUSTYPE-[VENDOR_]PRODUCT_[SERIAL|0xHASH][-partN] -> ../../sdX[N]
>    by-partuuid/MBR_SERIAL-OFFSET -> ../../sdXN
>    by-partuuid/GPT_GUID -> ../../sdXN
>    by-uuid/VOLUME_SERIAL -> ../../sdXN
>    by-voluuid/MBR_SERIAL-OFFSET -> ../../sdXN
>    by-voluuid/VOLUME_GUID -> ../../sdXN
>    The subdirectories by-drive and by-voluuid are Cygwin specific.
> - Introduce /proc/codesets and /proc/locales with information on
>    supported codesets and locales for all interested parties.  Locale(1)
>    opens these files and uses the info for printing locale info like any
>    other process could do.
> - Add support for GB18030 codeset.
> - Add support for lseek flags SEEK_DATA and SEEK_HOLE, a GNU extension.
> - New API calls: posix_spawn_file_actions_addchdir_np,
>    posix_spawn_file_actions_addfchdir_np.
> - New API calls: c8rtomb, c16rtomb, c32rtomb, mbrtoc8, mbrtoc16, mbrtoc32.
> - New API call: close_range (available on FreeBSD and Linux).
> - New API call: fallocate (Linux-specific).
> - Implement OSS-based sound mixer device (/dev/mixer).
> What changed:
> -------------
> - posix_spawnp no longer falls back to starting the shell for unrecognized
>    files as execvp.  For the reasoning, see
>    https://www.austingroupbugs.net/view.php?id=1674
> - FIFOs now also work on NFS filesystems.
> - Enable automatic sparsifying of files on SSDs, independent of the
>    "sparse" mount mode.
> - When RLIMIT_CORE is more than 1MB, a core dump file which can be loaded by gdb
>    is now written on a fatal error. Otherwise, if it's greater than zero, a text
>    format .stackdump file is written, as previously.
> - The default RLIMIT_CORE is now 0, disabling the generation of core dump or
>    stackdump files.

[reposting as followup in thread hopefully this time?!]

Recommend also upgrade dash to test release 0.5.12-5 which uses some of the new 
interfaces, and untest-ing this be coordinated with the Cygwin 3.5 release:

     Test: dash 0.5.12-5 (TEST)
     https://cygwin.com/pipermail/cygwin-announce/2023-March/010974.html

[test]
version: 0.5.12-5
...
depends2: cygwin ( >= 3.5.0-0 )
...

-- 
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 à retirer     but when there is no more to cut
                                 -- Antoine de Saint-Exupéry

^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: How to test Cygwin 3.5 using github actions
  2024-01-17 17:27 ` How to test Cygwin 3.5 using github actions Glenn Strauss
@ 2024-01-18  9:55   ` Corinna Vinschen
  2024-01-18 15:10   ` Jon Turney
  1 sibling, 0 replies; 7+ messages in thread
From: Corinna Vinschen @ 2024-01-18  9:55 UTC (permalink / raw)
  To: cygwin

On Jan 17 12:27, Glenn Strauss via Cygwin wrote:
> On Wed, Jan 17, 2024 at 12:44:32PM +0100, Corinna Vinschen via Cygwin wrote:
> > Hi folks,
> > 
> > we're planning to release Cygwin 3.5 end of this month (Jan 2024) if
> > nothing serious crops up.
> 
> Was: Re: [ANNOUNCEMENT] Cygwin 3.5 is coming soon, please test!
> 
> Corinna: Cygwin 3.5 works fine when tested with the lighttpd test suite.

Great, thanks for testing!


Corinna

^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: How to test Cygwin 3.5 using github actions
  2024-01-17 17:27 ` How to test Cygwin 3.5 using github actions Glenn Strauss
  2024-01-18  9:55   ` Corinna Vinschen
@ 2024-01-18 15:10   ` Jon Turney
  1 sibling, 0 replies; 7+ messages in thread
From: Jon Turney @ 2024-01-18 15:10 UTC (permalink / raw)
  To: Glenn Strauss; +Cc: cygwin

On 17/01/2024 17:27, Glenn Strauss via Cygwin wrote:
> On Wed, Jan 17, 2024 at 12:44:32PM +0100, Corinna Vinschen via Cygwin wrote:
>> Hi folks,
>>
>> we're planning to release Cygwin 3.5 end of this month (Jan 2024) if
>> nothing serious crops up.
> 
> Was: Re: [ANNOUNCEMENT] Cygwin 3.5 is coming soon, please test!
> 
> Corinna: Cygwin 3.5 works fine when tested with the lighttpd test suite.
> 
> 
> For others who might try something similar on their own repos:
> 
[...]
> 
> Hey Jon, would you accept a pull request to add an option to add -t to
> the call to setup.exe in cygwin-install-action?

Sure, that seems like a useful feature to add.


^ permalink raw reply	[flat|nested] 7+ messages in thread

* Exponential slowdown for deep paths in Cygwin 3.5
  2024-01-17 11:44 [ANNOUNCEMENT] Cygwin 3.5 is coming soon, please test! Corinna Vinschen
  2024-01-17 17:27 ` How to test Cygwin 3.5 using github actions Glenn Strauss
  2024-01-18  8:28 ` [ANNOUNCEMENT] Cygwin 3.5 is coming soon, please test! Brian Inglis
@ 2024-01-21 11:18 ` Dan Shelton
  2024-02-09  0:41   ` Dan Shelton
  2 siblings, 1 reply; 7+ messages in thread
From: Dan Shelton @ 2024-01-21 11:18 UTC (permalink / raw)
  To: cygwin; +Cc: Corinna Vinschen

On Wed, 17 Jan 2024 at 12:44, Corinna Vinschen via Cygwin
<cygwin@cygwin.com> wrote:
>
> Hi folks,
>
>
> we're planning to release Cygwin 3.5 end of this month (Jan 2024) if
> nothing serious crops up.
>

We still get severe performance problems with Cygwin 3.5 on Windows 10
with MAXPATH disabled, i.e. Control/FileSystem/LongPathsEnabled are
enabled.

One huge customer issue is the exponential slowdown for deep paths, e.g.
mkdir -p 0/1/2/3/4/5/6/7/8/9/a//b/c/d/e/f/g/h/o/j/k/l/m/n/o/p/q/r/t/s/u/v/w/x/y/z/
cd 0/1/2/3/4/5/6/7/8/9/a//b/c/d/e/f/g/h/o/j/k/l/m/n/o/p/q/r/t/s/u/v/w/x/y/z/

Now do something in that dir, like svn checkout. It will be
exponential slower as you add more subdirs to the base path.

Seen with a NIH customer, who switched from SFU to Cygwin with the
update to Windows 10, and is now unhappy about the slowdown.

Dan
-- 
Dan Shelton - Cluster Specialist Win/Lin/Bsd

^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: Exponential slowdown for deep paths in Cygwin 3.5
  2024-01-21 11:18 ` Exponential slowdown for deep paths in Cygwin 3.5 Dan Shelton
@ 2024-02-09  0:41   ` Dan Shelton
  0 siblings, 0 replies; 7+ messages in thread
From: Dan Shelton @ 2024-02-09  0:41 UTC (permalink / raw)
  To: cygwin

Did anyone look at this?

On Sun, 21 Jan 2024 at 12:18, Dan Shelton <dan.f.shelton@gmail.com> wrote:
>
> On Wed, 17 Jan 2024 at 12:44, Corinna Vinschen via Cygwin
> <cygwin@cygwin.com> wrote:
> >
> > Hi folks,
> >
> >
> > we're planning to release Cygwin 3.5 end of this month (Jan 2024) if
> > nothing serious crops up.
> >
>
> We still get severe performance problems with Cygwin 3.5 on Windows 10
> with MAXPATH disabled, i.e. Control/FileSystem/LongPathsEnabled are
> enabled.
>
> One huge customer issue is the exponential slowdown for deep paths, e.g.
> mkdir -p 0/1/2/3/4/5/6/7/8/9/a//b/c/d/e/f/g/h/o/j/k/l/m/n/o/p/q/r/t/s/u/v/w/x/y/z/
> cd 0/1/2/3/4/5/6/7/8/9/a//b/c/d/e/f/g/h/o/j/k/l/m/n/o/p/q/r/t/s/u/v/w/x/y/z/
>
> Now do something in that dir, like svn checkout. It will be
> exponential slower as you add more subdirs to the base path.
>
> Seen with a NIH customer, who switched from SFU to Cygwin with the
> update to Windows 10, and is now unhappy about the slowdown.
>
> Dan
> --
> Dan Shelton - Cluster Specialist Win/Lin/Bsd



-- 
Dan Shelton - Cluster Specialist Win/Lin/Bsd

^ permalink raw reply	[flat|nested] 7+ messages in thread

end of thread, other threads:[~2024-02-09  0:41 UTC | newest]

Thread overview: 7+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2024-01-17 11:44 [ANNOUNCEMENT] Cygwin 3.5 is coming soon, please test! Corinna Vinschen
2024-01-17 17:27 ` How to test Cygwin 3.5 using github actions Glenn Strauss
2024-01-18  9:55   ` Corinna Vinschen
2024-01-18 15:10   ` Jon Turney
2024-01-18  8:28 ` [ANNOUNCEMENT] Cygwin 3.5 is coming soon, please test! Brian Inglis
2024-01-21 11:18 ` Exponential slowdown for deep paths in Cygwin 3.5 Dan Shelton
2024-02-09  0:41   ` Dan Shelton

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).