DKIM-Filter: OpenDKIM Filter v2.11.0 delorie.com 482Go5RR1244598 Authentication-Results: delorie.com; dkim=pass (1024-bit key, unprotected) header.d=cygwin.com header.i=@cygwin.com header.a=rsa-sha256 header.s=default header.b=MvjIcHxk X-Recipient: archive-cygwin AT delorie DOT com DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org 3734D385DDEB DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=cygwin.com; s=default; t=1725295803; bh=smBwrx1ypHjvW2H/mF+mp4tdToUpUO0XyEwAUuW+AWw=; h=Date:Subject:To:List-Id:List-Unsubscribe:List-Archive:List-Post: List-Help:List-Subscribe:From:Reply-To:From; b=MvjIcHxkhE+zaoDBrDOFs6GrvVG1OY66OhDEIBKuBOf/CekconyswQwDxDLkU5rWl CYRLj/iC4yX5oXNkciAEMb8y0ouzYkbVH04iPJcQdlo8WkeWakjQn2r+OdKXR4KJPO Sg8iaWSfmRxdb4UeH58bAL+N0fUqOMOdZoiZ1Jgw= X-Original-To: cygwin AT cygwin DOT com Delivered-To: cygwin AT cygwin DOT com DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org CEC3C3858C33 ARC-Filter: OpenARC Filter v1.0.0 sourceware.org CEC3C3858C33 ARC-Seal: i=1; a=rsa-sha256; d=sourceware.org; s=key; t=1725295749; cv=none; b=qfjwSSZlqP8SIThIBAvZSSKyjbVreoK9waB+KlpZnDUeXI9nWuCcK0ckD/mxyD2/slijD8xy8AnQioyUWOO3Xls9WFNsS15yQI98aYS3SQY64ETsdupTtNRTnaDlIbbz7QVgSC7X7qb94ux3Nc4k8asYz15YPsgiqJEUuNzyVvI= ARC-Message-Signature: i=1; a=rsa-sha256; d=sourceware.org; s=key; t=1725295749; c=relaxed/simple; bh=+gDSDWdug7YE4bo3WDhibhOatsa/BCa7otfCKMxsnjU=; h=DKIM-Signature:MIME-Version:From:Date:Message-ID:Subject:To; b=Cgi4uHQUkqgVZxiQHOExd8aKmnKQI3abd/tGDdILxre0OUlwxm4ewB5Qi7wYg3HR+F1tFIoMhRCeVBGNRBf3385VWFRVZYM5s0WbqlQ/W0TLV+DbVwV1WFzsPO/RfJTXejErg8hONJWgUqcT4NuKg1qEijo/sc27ZifB2Q0l/8M= ARC-Authentication-Results: i=1; server2.sourceware.org X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1725295745; x=1725900545; h=to:subject:message-id:date:from:mime-version:x-gm-message-state :from:to:cc:subject:date:message-id:reply-to; bh=/KIhFVCyvmKCmVeWZC6kos/k3KjfOJrBAWHO+zvc8os=; b=ukBp0MUbC0EIgF6qFycu3fldTKbKowYomKinENqacXsY1gR0pNEaGTcbprtEvEiWwS ILxb0NxtzfZLYM7peo0K+OszDIVGHKBRIjyyBEWk9Zi8x2ZRUkLWxQWnDTHQxwvf60tm jA/DgNMY2wkU0LDCTBi/17nDbPHuB5grnSrhYFOkNHFcC2jT7tsQnUVY19pWzuRLU2g3 vWc4wi0LmCmGnt8K509E6L8yeu+o1sHeN6c2YVM65JKVSxDc0Y3MYvFVMtfzcP3hR4TX 5hI2xSH59ju55r0uFss0h5wnqhLfH8xvIwU9BotNFPmn6oam/Z6jW7a17RN8Veuqw8/z yB3w== X-Gm-Message-State: AOJu0YxRMsIeNOoi5T00eX6Qr+kcyuSotck4gXTrz5MQL8mfRunjGwab 9w9ilWkImMPfesCrJQ3n7edOvUDkW8ndkv5fqTIqO8/li9JKh80QWh9GHtuO4zuLW0fs9uj3kUE OtVPkFaNSwSffMKNzDP7/tlAYxA0m2CXN X-Google-Smtp-Source: AGHT+IHuGi7kBrEMquSXhTVRIgkbM+wQIX1lcYO2t2cffoPtmxEgLt1L5blD4orFpGsmkZo16PIIik7ax8fe9DpqLrg= X-Received: by 2002:a17:90a:8d0e:b0:2cf:2ab6:a157 with SMTP id 98e67ed59e1d1-2d89728ba16mr5928765a91.12.1725295744932; Mon, 02 Sep 2024 09:49:04 -0700 (PDT) MIME-Version: 1.0 Date: Mon, 2 Sep 2024 12:48:53 -0400 Message-ID: Subject: Minor flaws in the Cygwin Perl installation; missing directories (Perl 5.40.0-1) To: cygwin AT cygwin DOT com X-Spam-Status: No, score=-0.1 required=5.0 tests=BAYES_00, DKIM_SIGNED, DKIM_VALID, DKIM_VALID_AU, DKIM_VALID_EF, FREEMAIL_ENVFROM_END_DIGIT, FREEMAIL_FROM, HTML_MESSAGE, RCVD_IN_DNSWL_NONE, SPF_HELO_NONE, SPF_PASS, TXREP, T_SCC_BODY_TEXT_LINE autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on server2.sourceware.org X-Content-Filtered-By: Mailman/MimeDel 2.1.30 X-BeenThere: cygwin AT cygwin DOT com X-Mailman-Version: 2.1.30 List-Id: General Cygwin discussions and problem reports List-Archive: List-Post: List-Help: List-Subscribe: , From: Soren via Cygwin Reply-To: Soren Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Sender: "Cygwin" The Perl interpreter uses directories contained in the internal array @INC to find libraries. Cygwin's Perl 5.40.0-1 installation leaves several directories uncreated but listed in @INC. Like so (from $perl -V): @INC: /usr/local/lib/perl5/site_perl/5.40/x86_64-cygwin-threads /usr/local/share/perl5/site_perl/5.40 /usr/lib/perl5/vendor_perl/5.40/x86_64-cygwin-threads /usr/share/perl5/vendor_perl/5.40 /usr/lib/perl5/5.40/x86_64-cygwin-threads /usr/share/perl5/5.40 ------------------------------ Let's look at the error messages we get. Can't stat /usr/local/lib/perl5/site_perl/5.40/x86_64-cygwin-threads: No such file or directory at C:\Users\Sally\Documents\Scripts\seekinc.pl line 30. Can't stat /usr/local/share/perl5/site_perl/5.40: No such file or directory at C:\Users\Sally\Documents\Scripts\seekinc.pl line 30. Can't stat /usr/share/perl5/vendor_perl/5.40: No such file or directory at C:\Users\Sally\Documents\Scripts\seekinc.pl line 30. It's micro-optimization, sure, but having Perl stat non-existent directories every time it runs; this is just not nice. And this is not the only issue. Observe the following, please: ------------------------------ @INCCount /usr/local/share/perl5/site_perl/5.40 0 /usr/local/lib/perl5/site_perl/5.40/x86_64-cygwin-threads 0 /usr/lib/perl5/vendor_perl/5.40/x86_64-cygwin-threads 2 /usr/lib/perl5/5.40/x86_64-cygwin-threads 112 /usr/share/perl5/5.40 1287 /usr/share/perl5/vendor_perl/5.40 0 ------------------------------ The left-hand column lists Perl's @INC and the right-hand numbers are counts of the libraries or modules found under those parent directories. No, I did not count them manually. I wrote a simple script in Perl to generate these. The 3 base directories with 0 files under them don't exist. For one example of consequences: If one were to use cpanplus, it would want to place files under /usr/local/share/perl5/site_perl/5.40 and suchlike. I love using cpanplus. Watching it run the builds, tests and installations automatically is very relaxing ;-). These examples are all from a Perl installation I did this evening, with no Perl ever installed before; completely "clean". Please check your own installation of cygwin-perl. By the way, the script used to investigate @INC (I call such programs "introspective" scripts) is on GitHub at: https://github.com/somian/seekinc/blob/main/seekinc.pl One further anomaly: In output of cygcheck: perl 5.40.0-1 Incomplete How do we fix this at Cygwin package build time? -- 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