From unknown Tue Jun 17 22:30:03 2025 X-Loop: help-debbugs@gnu.org Subject: bug#38043: Incorrect Python byte-compiling for Python 3 and PyPy3 Resent-From: =?UTF-8?Q?Micha=C5=82_?= =?UTF-8?Q?G=C3=B3rny?= Original-Sender: "Debbugs-submit" Resent-CC: bug-automake@gnu.org Resent-Date: Sun, 03 Nov 2019 10:47:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: report 38043 X-GNU-PR-Package: automake X-GNU-PR-Keywords: To: 38043@debbugs.gnu.org X-Debbugs-Original-To: bug-automake@gnu.org Received: via spool by submit@debbugs.gnu.org id=B.157277797220003 (code B ref -1); Sun, 03 Nov 2019 10:47:02 +0000 Received: (at submit) by debbugs.gnu.org; 3 Nov 2019 10:46:12 +0000 Received: from localhost ([127.0.0.1]:33423 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1iRDOe-0005CZ-9M for submit@debbugs.gnu.org; Sun, 03 Nov 2019 05:46:12 -0500 Received: from lists.gnu.org ([209.51.188.17]:50597) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1iRDOb-0005CP-Sd for submit@debbugs.gnu.org; Sun, 03 Nov 2019 05:46:10 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]:49987) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1iRDOP-0004nP-Sk for bug-automake@gnu.org; Sun, 03 Nov 2019 05:46:04 -0500 X-Spam-Checker-Version: SpamAssassin 3.3.2 (2011-06-06) on eggs.gnu.org X-Spam-Level: X-Spam-Status: No, score=-4.2 required=5.0 tests=BAYES_50,RCVD_IN_DNSWL_HI, URIBL_BLOCKED autolearn=disabled version=3.3.2 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1iRDOL-0005Vg-JK for bug-automake@gnu.org; Sun, 03 Nov 2019 05:45:57 -0500 Received: from smtp.gentoo.org ([140.211.166.183]:52868) by eggs.gnu.org with esmtps (TLS1.0:DHE_RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1iRDOL-0005RA-Af for bug-automake@gnu.org; Sun, 03 Nov 2019 05:45:53 -0500 Received: from pomiot (c134-66.icpnet.pl [85.221.134.66]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) (Authenticated sender: mgorny) by smtp.gentoo.org (Postfix) with ESMTPSA id A3FE934C78D; Sun, 3 Nov 2019 10:45:43 +0000 (UTC) Message-ID: From: =?UTF-8?Q?Micha=C5=82_?= =?UTF-8?Q?G=C3=B3rny?= Date: Sun, 03 Nov 2019 11:45:39 +0100 Organization: Gentoo Content-Type: multipart/signed; micalg="pgp-sha512"; protocol="application/pgp-signature"; boundary="=-41qjJzF6FkmcyA/xg3DO" User-Agent: Evolution 3.32.4 MIME-Version: 1.0 X-detected-operating-system: by eggs.gnu.org: Genre and OS details not recognized. X-Received-From: 140.211.166.183 X-Spam-Score: -1.6 (-) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -2.6 (--) --=-41qjJzF6FkmcyA/xg3DO Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable Hello, I've noticed that the logic in py-compile is built on assumptions from Python 2 and does not fit Python 3 well. Notably, there are two or three bugs here: 1. .opt-2 (-OO) level is not compiled for py3.5+. 2. .opt-1 (-O) and .opt-2 (-OO) are wrongly skipped for PyPy3. Firstly, the code in py-compile byte-compiles in two steps: without '-O'= =20 and with '-O'. This is correct for Python <3.5 since '-O' and '-OO' share the same file (.pyo). However, since Python 3.5 they are written into separate '.opt-1.pyc' and '.opt-2.pyc' files and therefore can coexist. It is therefore necessary to perform another byte-compilation step with '-OO', so that all levels of optimization are installed and the module can be correctly loaded from cache independently of Python options used. Secondly, the code in '-O' block skips PyPy based on the existence of sys.pypy_translation_info. This is correct for PyPy2 that doesn't write optimized caches. However, PyPy3 (in particular versions based on Python 3.5 and newer, I'm not sure about the older versions) do use the same split naming scheme as CPython. Therefore, the check here needs to be modified to apply only to Python 2 versions of PyPy. To reproduce: touch mytest.py cat > configure.ac < Makefile.am < Original-Sender: "Debbugs-submit" Resent-CC: bug-automake@gnu.org Resent-Date: Sun, 03 Nov 2019 11:35:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 38043 X-GNU-PR-Package: automake X-GNU-PR-Keywords: To: 38043@debbugs.gnu.org Received: via spool by 38043-submit@debbugs.gnu.org id=B38043.157278088225338 (code B ref 38043); Sun, 03 Nov 2019 11:35:01 +0000 Received: (at 38043) by debbugs.gnu.org; 3 Nov 2019 11:34:42 +0000 Received: from localhost ([127.0.0.1]:33438 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1iRE9Z-0006ab-5c for submit@debbugs.gnu.org; Sun, 03 Nov 2019 06:34:42 -0500 Received: from smtp.gentoo.org ([140.211.166.183]:45812) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1iRE9W-0006aK-JD for 38043@debbugs.gnu.org; Sun, 03 Nov 2019 06:34:39 -0500 Received: from pomiot (c134-66.icpnet.pl [85.221.134.66]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) (Authenticated sender: mgorny) by smtp.gentoo.org (Postfix) with ESMTPSA id 0D49C34C788; Sun, 3 Nov 2019 11:34:30 +0000 (UTC) Message-ID: From: =?UTF-8?Q?Micha=C5=82_?= =?UTF-8?Q?G=C3=B3rny?= Date: Sun, 03 Nov 2019 12:34:26 +0100 In-Reply-To: References: Organization: Gentoo Content-Type: multipart/signed; micalg="pgp-sha512"; protocol="application/pgp-signature"; boundary="=-N3VT4FehSvnUoAI53u4H" User-Agent: Evolution 3.32.4 MIME-Version: 1.0 X-Spam-Score: -5.0 (-----) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -6.0 (------) --=-N3VT4FehSvnUoAI53u4H Content-Type: multipart/mixed; boundary="=-yBlW+Z/7L8F0NS7x/6En" --=-yBlW+Z/7L8F0NS7x/6En Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable I'm attaching a reference patch that fixes the issue for me. However, I'm sorry but I don't have the time to work on adding a test for it. --=20 Best regards, Micha=C5=82 G=C3=B3rny --=-yBlW+Z/7L8F0NS7x/6En Content-Disposition: attachment; filename="0001-py-compile-Support-OO-for-py3.5-and-O-OO-for-pypy3.patch" Content-Transfer-Encoding: base64 Content-Type: text/x-patch; name="0001-py-compile-Support-OO-for-py3.5-and-O-OO-for-pypy3.patch"; charset="UTF-8" RnJvbSBmYzAyMzk4ZmJiNWYxYTUwMzBhNzIwNWQyMjc5MGIwMjg4ZWM1YTJjIE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiA9P1VURi04P3E/TWljaGE9QzU9ODI9MjBHPUMzPUIzcm55Pz0g PG1nb3JueUBnZW50b28ub3JnPgpEYXRlOiBTdW4sIDMgTm92IDIwMTkgMTE6NTE6MTkgKzAxMDAK U3ViamVjdDogW1BBVENIXSBweS1jb21waWxlOiBTdXBwb3J0IC1PTyBmb3IgcHkzLjUrLCBhbmQg LU8mLU9PIGZvciBweXB5MwoKQWRkIGFuIGFkZGl0aW9uYWwgY29tcGlsYXRpb24gYmxvY2sgdG8g cHJvZHVjZSAtT08gb3B0aW1pemVkIG1vZHVsZXMKZm9yIFB5dGhvbiAzLjUrLiAgRW5hYmxlIGJv dGggLU8gYW5kIC1PTyBmb3IgUHlQeTMuNSsuICBSZW1vdmUKdGhlIHNlY29uZCBhcmd1bWVudCB0 byBpbXAuY2FjaGVfZnJvbV9zb3VyY2UoKSBpbiBib3RoIC1PIGFuZCAtT08gYmxvY2tzCmFzIHRo ZXkgZG8gbm90IHNlZW0gbmVjZXNzYXJ5IGFuZCBicmVhayAtT08gYnl0ZS1jb21waWxhdGlvbi4K CkZpeGVzIGF1dG9tYWtlIGJ1ZyAjMzgwNDMKLS0tCiBsaWIvcHktY29tcGlsZSB8IDI3ICsrKysr KysrKysrKysrKysrKysrKysrKystLQogMSBmaWxlIGNoYW5nZWQsIDI1IGluc2VydGlvbnMoKyks IDIgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvbGliL3B5LWNvbXBpbGUgYi9saWIvcHktY29t cGlsZQppbmRleCAxYTNmNGQ2NDQuLjQ0YmU5N2ZjNCAxMDA3NTUKLS0tIGEvbGliL3B5LWNvbXBp bGUKKysrIGIvbGliL3B5LWNvbXBpbGUKQEAgLTE0MCw3ICsxNDAsNyBAQCAkUFlUSE9OIC1PIC1j ICIKIGltcG9ydCBzeXMsIG9zLCBweV9jb21waWxlLCBpbXAKIAogIyBweXB5IGRvZXMgbm90IHVz ZSAucHlvIG9wdGltaXphdGlvbgotaWYgaGFzYXR0cihzeXMsICdweXB5X3RyYW5zbGF0aW9uX2lu Zm8nKToKK2lmIGhhc2F0dHIoc3lzLCAncHlweV90cmFuc2xhdGlvbl9pbmZvJykgYW5kIHN5cy5o ZXh2ZXJzaW9uIDwgMHgwMzA1MDAwMDoKICAgICBzeXMuZXhpdCgwKQogCiBmaWxlcyA9ICcnJyRm aWxlcycnJwpAQCAtMTU0LDcgKzE1NCwzMCBAQCBmb3IgZmlsZSBpbiBmaWxlcy5zcGxpdCgpOgog ICAgIHN5cy5zdGRvdXQud3JpdGUoZmlsZSkKICAgICBzeXMuc3Rkb3V0LmZsdXNoKCkKICAgICBp ZiBoYXNhdHRyKGltcCwgJ2dldF90YWcnKToKLSAgICAgICAgcHlfY29tcGlsZS5jb21waWxlKGZp bGVwYXRoLCBpbXAuY2FjaGVfZnJvbV9zb3VyY2UoZmlsZXBhdGgsIEZhbHNlKSwgcGF0aCkKKyAg ICAgICAgcHlfY29tcGlsZS5jb21waWxlKGZpbGVwYXRoLCBpbXAuY2FjaGVfZnJvbV9zb3VyY2Uo ZmlsZXBhdGgpLCBwYXRoKQorICAgIGVsc2U6CisgICAgICAgIHB5X2NvbXBpbGUuY29tcGlsZShm aWxlcGF0aCwgZmlsZXBhdGggKyAnbycsIHBhdGgpCitzeXMuc3Rkb3V0LndyaXRlKCdcbicpIiAy Pi9kZXYvbnVsbCB8fCA6CisKKyRQWVRIT04gLU9PIC1jICIKK2ltcG9ydCBzeXMsIG9zLCBweV9j b21waWxlLCBpbXAKKworIyBweXRob248My41IGRvZXMgbm90IGhhdmUgc3BsaXQgZmlsZXMgZm9y IC1PIGFuZCAtT08KK2lmIHN5cy5oZXh2ZXJzaW9uIDwgMHgwMzA1MDAwMDoKKyAgICBzeXMuZXhp dCgwKQorCitmaWxlcyA9ICcnJyRmaWxlcycnJworc3lzLnN0ZG91dC53cml0ZSgnQnl0ZS1jb21w aWxpbmcgcHl0aG9uIG1vZHVsZXMgKC1PTyB2ZXJzaW9ucykgLi4uXG4nKQorZm9yIGZpbGUgaW4g ZmlsZXMuc3BsaXQoKToKKyAgICAkcGF0aHRyYW5zCisgICAgJGZpbGV0cmFucworICAgIGlmIG5v dCBvcy5wYXRoLmV4aXN0cyhmaWxlcGF0aCkgb3Igbm90IChsZW4oZmlsZXBhdGgpID49IDMKKyAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYW5kIGZpbGVwYXRoWy0z Ol0gPT0gJy5weScpOgorCSAgICBjb250aW51ZQorICAgIHN5cy5zdGRvdXQud3JpdGUoZmlsZSkK KyAgICBzeXMuc3Rkb3V0LmZsdXNoKCkKKyAgICBpZiBoYXNhdHRyKGltcCwgJ2dldF90YWcnKToK KyAgICAgICAgcHlfY29tcGlsZS5jb21waWxlKGZpbGVwYXRoLCBpbXAuY2FjaGVfZnJvbV9zb3Vy Y2UoZmlsZXBhdGgpLCBwYXRoKQogICAgIGVsc2U6CiAgICAgICAgIHB5X2NvbXBpbGUuY29tcGls ZShmaWxlcGF0aCwgZmlsZXBhdGggKyAnbycsIHBhdGgpCiBzeXMuc3Rkb3V0LndyaXRlKCdcbicp IiAyPi9kZXYvbnVsbCB8fCA6Ci0tIAoyLjIzLjAKCg== --=-yBlW+Z/7L8F0NS7x/6En-- --=-N3VT4FehSvnUoAI53u4H Content-Type: application/pgp-signature; name="signature.asc" Content-Description: This is a digitally signed message part Content-Transfer-Encoding: 7bit -----BEGIN PGP SIGNATURE----- iQGTBAABCgB9FiEEx2qEUJQJjSjMiybFY5ra4jKeJA4FAl2+u0NfFIAAAAAALgAo aXNzdWVyLWZwckBub3RhdGlvbnMub3BlbnBncC5maWZ0aGhvcnNlbWFuLm5ldEM3 NkE4NDUwOTQwOThEMjhDQzhCMjZDNTYzOUFEQUUyMzI5RTI0MEUACgkQY5ra4jKe JA5khwf/URpC6A/6gNt23wEvLAfzv+5ReOMqL8tpbQhIo3/bdsZm1CPb4NXfSksn N2Wj+DCF6/zAK/qJqVtaBg1/9hYST3f/NwC11sryCzRSFPh2mVg21m0o1AY8S/36 caz3cWO14LePWZTpGlbb4s4XrpzOOl38P/qtHiKKmHAVy85mzqpwYNp8MKdrLuHs cDY1LU1OpykoHzsw3I2agLbE4ActiEp3luVjiHgZ0dVangEgqL3F00XkwuE3C1Ht iR2EyXmog1/Neoji+OkrEr1mpZ695KADlUxX9A8FlLJ/96o/C+VTOtTprjD0cs+P JxuLnimViD/3BGWfQROiwGPIiISNCg== =caS4 -----END PGP SIGNATURE----- --=-N3VT4FehSvnUoAI53u4H-- From unknown Tue Jun 17 22:30:03 2025 X-Loop: help-debbugs@gnu.org Subject: bug#38043: Incorrect Python byte-compiling for Python 3 and PyPy3 Resent-From: Mike Frysinger Original-Sender: "Debbugs-submit" Resent-CC: bug-automake@gnu.org Resent-Date: Tue, 18 Jan 2022 06:52:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 38043 X-GNU-PR-Package: automake X-GNU-PR-Keywords: To: =?UTF-8?Q?Micha=C5=82_?= =?UTF-8?Q?G=C3=B3rny?= Cc: 38043@debbugs.gnu.org Received: via spool by 38043-submit@debbugs.gnu.org id=B38043.164248870410907 (code B ref 38043); Tue, 18 Jan 2022 06:52:01 +0000 Received: (at 38043) by debbugs.gnu.org; 18 Jan 2022 06:51:44 +0000 Received: from localhost ([127.0.0.1]:48657 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1n9iLI-0002pr-2F for submit@debbugs.gnu.org; Tue, 18 Jan 2022 01:51:44 -0500 Received: from woodpecker.gentoo.org ([140.211.166.183]:34774 helo=smtp.gentoo.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1n9iLG-0002pb-0C for 38043@debbugs.gnu.org; Tue, 18 Jan 2022 01:51:42 -0500 Received: by smtp.gentoo.org (Postfix, from userid 559) id C5DF5342ED2; Tue, 18 Jan 2022 06:51:35 +0000 (UTC) Date: Tue, 18 Jan 2022 01:51:35 -0500 From: Mike Frysinger Message-ID: Mail-Followup-To: =?UTF-8?Q?Micha=C5=82_?= =?UTF-8?Q?G=C3=B3rny?= , 38043@debbugs.gnu.org References: MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Disposition: inline Content-Transfer-Encoding: 8bit In-Reply-To: X-Spam-Score: -5.0 (-----) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -6.0 (------) On 03 Nov 2019 11:45, Michał Górny wrote: > I've noticed that the logic in py-compile is built on assumptions from > Python 2 and does not fit Python 3 well. Notably, there are two or > three bugs here: > > 1. .opt-2 (-OO) level is not compiled for py3.5+. > > 2. .opt-1 (-O) and .opt-2 (-OO) are wrongly skipped for PyPy3. i'm inclined to drop support for Resent-From: Karl Berry Original-Sender: "Debbugs-submit" Resent-CC: bug-automake@gnu.org Resent-Date: Tue, 18 Jan 2022 23:16:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 38043 X-GNU-PR-Package: automake X-GNU-PR-Keywords: To: vapier@gentoo.org Cc: mgorny@gentoo.org, 38043@debbugs.gnu.org Received: via spool by 38043-submit@debbugs.gnu.org id=B38043.164254771118412 (code B ref 38043); Tue, 18 Jan 2022 23:16:02 +0000 Received: (at 38043) by debbugs.gnu.org; 18 Jan 2022 23:15:11 +0000 Received: from localhost ([127.0.0.1]:51940 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1n9xh0-0004mp-PY for submit@debbugs.gnu.org; Tue, 18 Jan 2022 18:15:10 -0500 Received: from freefriends.org ([96.88.95.60]:41322) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1n9xgz-0004me-NN for 38043@debbugs.gnu.org; Tue, 18 Jan 2022 18:15:10 -0500 X-Envelope-From: karl@freefriends.org Received: from freefriends.org (freefriends.org [96.88.95.60]) by freefriends.org (8.14.7/8.14.7) with ESMTP id 20INF8Br022052 (version=TLSv1/SSLv3 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Tue, 18 Jan 2022 16:15:08 -0700 Received: (from apache@localhost) by freefriends.org (8.14.7/8.14.7/Submit) id 20INF8kB022043; Tue, 18 Jan 2022 16:15:08 -0700 Date: Tue, 18 Jan 2022 16:15:08 -0700 Message-Id: <202201182315.20INF8kB022043@freefriends.org> From: Karl Berry In-Reply-To: X-Spam-Score: -2.3 (--) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -3.3 (---) i'm inclined to drop support for Original-Sender: "Debbugs-submit" Resent-CC: bug-automake@gnu.org Resent-Date: Wed, 19 Jan 2022 04:46:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 38043 X-GNU-PR-Package: automake X-GNU-PR-Keywords: To: Karl Berry Cc: mgorny@gentoo.org, 38043@debbugs.gnu.org Received: via spool by 38043-submit@debbugs.gnu.org id=B38043.164256754419397 (code B ref 38043); Wed, 19 Jan 2022 04:46:01 +0000 Received: (at 38043) by debbugs.gnu.org; 19 Jan 2022 04:45:44 +0000 Received: from localhost ([127.0.0.1]:52098 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1nA2qt-00052m-At for submit@debbugs.gnu.org; Tue, 18 Jan 2022 23:45:44 -0500 Received: from woodpecker.gentoo.org ([140.211.166.183]:44902 helo=smtp.gentoo.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1nA2qr-00052Y-C7 for 38043@debbugs.gnu.org; Tue, 18 Jan 2022 23:45:42 -0500 Received: by smtp.gentoo.org (Postfix, from userid 559) id F144D342DC1; Wed, 19 Jan 2022 04:45:34 +0000 (UTC) Date: Tue, 18 Jan 2022 23:45:35 -0500 From: Mike Frysinger Message-ID: Mail-Followup-To: Karl Berry , mgorny@gentoo.org, 38043@debbugs.gnu.org References: <202201182315.20INF8kB022043@freefriends.org> MIME-Version: 1.0 Content-Type: multipart/signed; micalg=pgp-sha256; protocol="application/pgp-signature"; boundary="ROpNcDT1TfHWCBo3" Content-Disposition: inline In-Reply-To: <202201182315.20INF8kB022043@freefriends.org> X-Spam-Score: -5.0 (-----) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -6.0 (------) --ROpNcDT1TfHWCBo3 Content-Type: text/plain; charset=utf-8 Content-Disposition: inline Content-Transfer-Encoding: quoted-printable On 18 Jan 2022 16:15, Karl Berry wrote: > i'm inclined to drop support for =20 > My recollection is, plenty of people are still using <3.6, EOL or not. > Tempting though it is. dissertation follows. i know it's a lot, and i don't normally like writing this much at a time, but i think this is something we need to agree to & wr= ite down because it's a promise/commitment to users, and will have very long-te= rm implications for us. if you want to skip to the end for "My proprosal", fe= el free, and if you disagree with parts, you can backup and read my logic :p. i don't think we can reasonably support every version of Python with the la= test automake release forever. we don't even support every version now, and i d= on't think we're going to backfill. fairly certain we don't work with Python 0.= x, or Python 1.x, and i suspect Python 2.[0-6] is rotting. so we already have a version cut off line. the question is where do we draw that line, and when do we move it ? let's say that we never remove support for versions we've added. i.e. once= a version is included, it'll always be here. how do we make sure it continues to work ? practically speaking, it's impossible for us to test. many dist= ros have already long ago deleted Python 3.[012], are in the process of deleting Python 2.7 now, and it's only getting worse. are automake developers expec= ted to manually download & build every Python version ? and when those versions stop compiling against current C runtimes (compilers/libraries), they have = to backport fixes to get them working ? for a diff project, i've already done this, and i know that old releases do not unpack+configure+compile+execute without backports (as in, `./python` segfaults). now you might argue that devs can install old distros. doing that in a chr= oot or in a container (e.g. docker) doesn't work as the kernel removes/disables features that old binaries need. i've seen this with CONFIG_COMPAT_VDSO be= ing removed -- old binaries now just segfault. which means you need to downgra= de your kernel and/or re-enable settings that include known security bugs. now you might argue that devs can always install old distros in VMs and thus isolate themselves. but those VMs will have known security issues at the security level (i.e. OpenSSH and such have known exploits). ok ok, you sho= uld have those VMs be firewalled, and only accessible from localhost. hopefully you can still find install media for these distros, and their net= work packages can still be installed. except their root CA store is going to be expired, and they'll be unable to access any HTTPS sites, so they won't be = able to download anything from the network. let's back up a little. automake doesn't exist for its own sake, it exists purely for its users (other developers). we add & maintain features purely because they want them. so what do those developers want ? do they want to support Python 2.[0-7] & 3.[0-9] in a single release of the= ir own software ? in my experience, that pretty much never happens. Python d= evs tend to say "we've dropped support for Python X.Y with current versions, so= if you want that, you'll need to download an old release". i have seen projects doing the Python 2.7 + Python 3.x support dance, but t= hat has largely evaporated with Python itself finally cutting Python 2 off. no= w i only see projects saying "if you want Python 2, grab an old release". similarly, while Python 3.[0-9] has been done by some projects, even that is evaporating. i think that was largely predicated on the Python project bei= ng very backwards compatible and not making breaking changes, and they were do= ing that only as a carrot to get people off of Python 2. now that they've kill= ed Python 2, they're starting to make breaking changes with Python 3.10+, and = that is only going to accelerate, which means projects are going to realize that= the effort to support Python 3.0 - 3.10+ in a single codebase is a lot harder t= han it used to be. now throw in alternative runtimes (cython, pypy, jython, etc...) and the va= riety of virtual environments (venvs). are we going to support those forever too= ? so if our users don't want every Python version, and keeping support for old versions is impossible for us to validate, when can we move the post ? to help the discussion, i indexed Python versions in Debian & Ubuntu releas= es starting from ~2008. from that we can Resent-From: Karl Berry Original-Sender: "Debbugs-submit" Resent-CC: bug-automake@gnu.org Resent-Date: Thu, 20 Jan 2022 02:33:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 38043 X-GNU-PR-Package: automake X-GNU-PR-Keywords: To: vapier@gentoo.org Cc: mgorny@gentoo.org, 38043@debbugs.gnu.org Received: via spool by 38043-submit@debbugs.gnu.org id=B38043.164264597420209 (code B ref 38043); Thu, 20 Jan 2022 02:33:01 +0000 Received: (at 38043) by debbugs.gnu.org; 20 Jan 2022 02:32:54 +0000 Received: from localhost ([127.0.0.1]:55950 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1nANFu-0005Fs-2S for submit@debbugs.gnu.org; Wed, 19 Jan 2022 21:32:54 -0500 Received: from freefriends.org ([96.88.95.60]:40520) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1nANFs-0005Fj-27 for 38043@debbugs.gnu.org; Wed, 19 Jan 2022 21:32:53 -0500 X-Envelope-From: karl@freefriends.org Received: from freefriends.org (freefriends.org [96.88.95.60]) by freefriends.org (8.14.7/8.14.7) with ESMTP id 20K2WovE020357 (version=TLSv1/SSLv3 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Wed, 19 Jan 2022 19:32:51 -0700 Received: (from apache@localhost) by freefriends.org (8.14.7/8.14.7/Submit) id 20K2WoVn020356; Wed, 19 Jan 2022 19:32:50 -0700 Date: Wed, 19 Jan 2022 19:32:50 -0700 Message-Id: <202201200232.20K2WoVn020356@freefriends.org> From: Karl Berry In-Reply-To: X-Spam-Score: -2.3 (--) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -3.3 (---) Automake guarantees releases will support all Python versions that are still supported by the Python project at the time of the Automake release. Support for EOL versions of Python are not guaranteed, but will be considered as long as it is not onerous to do so, and there are large supported distros including them. If you need to support older Python versions, please use a previous Automake release. That sounds like a sensible approach to me. Jim? * we update the manual to state clearly: * Python 2.7 & 3.4 - 3.10 are fully supported * Python 2.0 - 2.6 & 3.0 - 3.3 should work, but are not tested * Python <2.0 do not work are not supported at all I agree it would be useful to be explicit about Python versions in the manual. Personally, I would find it impossible to track what Python versions require what and what we support, but as long as you can make the needed updates to the manual at each release time (something to be added to the release list ... Jim?), sounds good to me. I would add that we don't object to installing patches for older versions, or for whatever other reason, as long as the patches are understandable and maintainable. In practice, that is what we (I) do now. I have little understanding of (or interest in) Python, but if people send usable patches, I'm happy to install them. What any given patch might mean for version support, I don't even begin to figure out. Thanks, Karl From unknown Tue Jun 17 22:30:03 2025 X-Loop: help-debbugs@gnu.org Subject: bug#38043: [PATCH 1/6] py-compile: clean up usage info References: In-Reply-To: Resent-From: Mike Frysinger Original-Sender: "Debbugs-submit" Resent-CC: bug-automake@gnu.org Resent-Date: Sun, 06 Feb 2022 06:58:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 38043 X-GNU-PR-Package: automake X-GNU-PR-Keywords: To: 38043@debbugs.gnu.org Received: via spool by 38043-submit@debbugs.gnu.org id=B38043.164413064319409 (code B ref 38043); Sun, 06 Feb 2022 06:58:01 +0000 Received: (at 38043) by debbugs.gnu.org; 6 Feb 2022 06:57:23 +0000 Received: from localhost ([127.0.0.1]:36211 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1nGbUB-00052z-JZ for submit@debbugs.gnu.org; Sun, 06 Feb 2022 01:57:23 -0500 Received: from woodpecker.gentoo.org ([140.211.166.183]:54184 helo=smtp.gentoo.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1nGbU9-00052X-Ch for 38043@debbugs.gnu.org; Sun, 06 Feb 2022 01:57:22 -0500 Received: by smtp.gentoo.org (Postfix, from userid 559) id 23B69342C57; Sun, 6 Feb 2022 06:57:15 +0000 (UTC) From: Mike Frysinger Date: Sun, 6 Feb 2022 01:57:09 -0500 Message-Id: <20220206065714.25758-1-vapier@gentoo.org> X-Mailer: git-send-email 2.34.1 MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Spam-Score: -5.0 (-----) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -6.0 (------) Include the full summary of options in the output. * lib/py-compile: Update usage output. * t/py-compile-usage.sh: Update test to match new output. --- lib/py-compile | 8 +++++++- t/py-compile-usage.sh | 4 ++-- 2 files changed, 9 insertions(+), 3 deletions(-) diff --git a/lib/py-compile b/lib/py-compile index 0597c85b2147..4917cfed008c 100755 --- a/lib/py-compile +++ b/lib/py-compile @@ -62,13 +62,19 @@ while test $# -ne 0; do ;; -h|--help) cat <<\EOF -Usage: py-compile [--help] [--version] [--basedir DIR] [--destdir DIR] FILES..." +Usage: py-compile [options] FILES... Byte compile some python scripts FILES. Use --destdir to specify any leading directory path to the FILES that you don't want to include in the byte compiled file. Specify --basedir for any additional path information you do want to be shown in the byte compiled file. +Options: + --basedir DIR Prefix all FILES with DIR, and include in error messages. + --destdir DIR Prefix all FILES with DIR before compiling. + -v, --version Display version information. + -h, --help This help screen. + Example: py-compile --destdir /tmp/pkg-root --basedir /usr/share/test test.py test2.py diff --git a/t/py-compile-usage.sh b/t/py-compile-usage.sh index 94c0c4c9d7ba..f324ec9e6d52 100644 --- a/t/py-compile-usage.sh +++ b/t/py-compile-usage.sh @@ -29,8 +29,8 @@ cp "$am_scriptdir/py-compile" . \ cat stdout test -s stderr && { cat stderr >&2; exit 1; } grep '^Usage: py-compile .' stdout -$FGREP ' [--basedir DIR]' stdout -$FGREP ' [--destdir DIR]' stdout +$FGREP ' --basedir DIR ' stdout +$FGREP ' --destdir DIR ' stdout # --version -- 2.34.1 From unknown Tue Jun 17 22:30:03 2025 X-Loop: help-debbugs@gnu.org Subject: bug#38043: [PATCH 2/6] py-compile: handle filenames with whitespace Resent-From: Mike Frysinger Original-Sender: "Debbugs-submit" Resent-CC: bug-automake@gnu.org Resent-Date: Sun, 06 Feb 2022 06:58:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 38043 X-GNU-PR-Package: automake X-GNU-PR-Keywords: To: 38043@debbugs.gnu.org Received: via spool by 38043-submit@debbugs.gnu.org id=B38043.164413064619431 (code B ref 38043); Sun, 06 Feb 2022 06:58:01 +0000 Received: (at 38043) by debbugs.gnu.org; 6 Feb 2022 06:57:26 +0000 Received: from localhost ([127.0.0.1]:36216 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1nGbUD-00053G-Oj for submit@debbugs.gnu.org; Sun, 06 Feb 2022 01:57:26 -0500 Received: from woodpecker.gentoo.org ([140.211.166.183]:54188 helo=smtp.gentoo.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1nGbUA-00052a-US for 38043@debbugs.gnu.org; Sun, 06 Feb 2022 01:57:23 -0500 Received: by smtp.gentoo.org (Postfix, from userid 559) id 4E4AA342DA0; Sun, 6 Feb 2022 06:57:17 +0000 (UTC) From: Mike Frysinger Date: Sun, 6 Feb 2022 01:57:10 -0500 Message-Id: <20220206065714.25758-2-vapier@gentoo.org> X-Mailer: git-send-email 2.34.1 In-Reply-To: <20220206065714.25758-1-vapier@gentoo.org> References: <20220206065714.25758-1-vapier@gentoo.org> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Spam-Score: -5.0 (-----) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -6.0 (------) The list of files is put into a string and then split on whitespace. Fix the way the list of files are passed to the compile script. * lib/py-compile: Pass files as arguments, not as a string. * t/py-compile-files.sh: New test. --- lib/py-compile | 14 +++++--------- t/py-compile-files.sh | 36 ++++++++++++++++++++++++++++++++++++ 2 files changed, 41 insertions(+), 9 deletions(-) create mode 100644 t/py-compile-files.sh diff --git a/lib/py-compile b/lib/py-compile index 4917cfed008c..0e1df24024e8 100755 --- a/lib/py-compile +++ b/lib/py-compile @@ -100,8 +100,7 @@ EOF shift done -files=$* -if test -z "$files"; then +if test $# -eq 0; then usage_error "no files given" fi @@ -143,10 +142,8 @@ fi $PYTHON -c " import sys, os, py_compile, $import_lib -files = '''$files''' - sys.stdout.write('Byte-compiling python modules...\n') -for file in files.split(): +for file in sys.argv[1:]: $pathtrans $filetrans if not os.path.exists(filepath) or not (len(filepath) >= 3 @@ -158,7 +155,7 @@ for file in files.split(): py_compile.compile(filepath, $import_call(filepath), path) else: py_compile.compile(filepath, filepath + 'c', path) -sys.stdout.write('\n')" || exit $? +sys.stdout.write('\n')" "$@" || exit $? # this will fail for python < 1.5, but that doesn't matter ... $PYTHON -O -c " @@ -168,9 +165,8 @@ import sys, os, py_compile, $import_lib if hasattr(sys, 'pypy_translation_info'): sys.exit(0) -files = '''$files''' sys.stdout.write('Byte-compiling python modules (optimized versions) ...\n') -for file in files.split(): +for file in sys.argv[1:]: $pathtrans $filetrans if not os.path.exists(filepath) or not (len(filepath) >= 3 @@ -182,7 +178,7 @@ for file in files.split(): py_compile.compile(filepath, $import_call(filepath$import_arg2), path) else: py_compile.compile(filepath, filepath + 'o', path) -sys.stdout.write('\n')" 2>/dev/null || exit $? +sys.stdout.write('\n')" "$@" 2>/dev/null || exit $? # Local Variables: # mode: shell-script diff --git a/t/py-compile-files.sh b/t/py-compile-files.sh new file mode 100644 index 000000000000..fa2dd3251372 --- /dev/null +++ b/t/py-compile-files.sh @@ -0,0 +1,36 @@ +#! /bin/sh +# Copyright (C) 2022 Free Software Foundation, Inc. +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2, or (at your option) +# any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program. If not, see . + +# Verify 'py-compile' script can handle inputs with spaces, etc... + +required=python +. test-init.sh + +cp "$am_scriptdir/py-compile" . \ + || fatal_ "failed to fetch auxiliary script py-compile" + +# Create files that require proper quoting. +mkdir "dir with spaces" +touch "nospace.py" "has space.py" "*.py" "dir with spaces/|.py" + +./py-compile "nospace.py" "has space.py" "*.py" "dir with spaces/|.py" + +py_installed "nospace.pyc" +py_installed "has space.pyc" +py_installed "*.pyc" +py_installed "dir with spaces/|.pyc" + +: -- 2.34.1 From unknown Tue Jun 17 22:30:03 2025 X-Loop: help-debbugs@gnu.org Subject: bug#38043: [PATCH 3/6] manual: document Python version support status Resent-From: Mike Frysinger Original-Sender: "Debbugs-submit" Resent-CC: bug-automake@gnu.org Resent-Date: Sun, 06 Feb 2022 06:58:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 38043 X-GNU-PR-Package: automake X-GNU-PR-Keywords: To: 38043@debbugs.gnu.org Received: via spool by 38043-submit@debbugs.gnu.org id=B38043.164413064819447 (code B ref 38043); Sun, 06 Feb 2022 06:58:02 +0000 Received: (at 38043) by debbugs.gnu.org; 6 Feb 2022 06:57:28 +0000 Received: from localhost ([127.0.0.1]:36219 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1nGbUG-00053a-7L for submit@debbugs.gnu.org; Sun, 06 Feb 2022 01:57:28 -0500 Received: from woodpecker.gentoo.org ([140.211.166.183]:54194 helo=smtp.gentoo.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1nGbUD-00052d-5j for 38043@debbugs.gnu.org; Sun, 06 Feb 2022 01:57:25 -0500 Received: by smtp.gentoo.org (Postfix, from userid 559) id 8A2BB342DA2; Sun, 6 Feb 2022 06:57:19 +0000 (UTC) From: Mike Frysinger Date: Sun, 6 Feb 2022 01:57:11 -0500 Message-Id: <20220206065714.25758-3-vapier@gentoo.org> X-Mailer: git-send-email 2.34.1 In-Reply-To: <20220206065714.25758-1-vapier@gentoo.org> References: <20220206065714.25758-1-vapier@gentoo.org> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Spam-Score: -5.0 (-----) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -6.0 (------) Clarify to users what versions of Python are supported and until when. This will make it easier for us to decide what versions to support. * doc/automake.texi: Add Supported Python versions section. --- doc/automake.texi | 53 +++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 53 insertions(+) diff --git a/doc/automake.texi b/doc/automake.texi index df2b46dfaa12..4a2c17fa9044 100644 --- a/doc/automake.texi +++ b/doc/automake.texi @@ -7967,6 +7967,59 @@ manual has a section with more details on this topic Variables, autoconf, The Autoconf Manual}). See also @ref{Hard-Coded Install Paths}. +@menu +* Supported Python versions:: +@end menu + +@node Supported Python versions +@subsection Supported versions + +Automake guarantees releases will support all Python versions that are still +supported by the Python project at the time of the Automake release. Support +for EOL versions of Python are not guaranteed, but will be considered as long +as it is not onerous to do so, and there are large supported distros including +them. If you need to support older Python versions, please use a previous +Automake release. + +Here are the current support plans. + +@multitable {2.0 -- 3.5} {Unsupported} +@headitem Version @tab Status +@item 0.x +@tab Not supported +@item 1.x +@tab Not supported +@item 2.0--2.6 +@tab Untested, but should work +@item 2.7 +@c Debian Bullseye goes EOL in Apr 2026. +@tab Supported (until Apr 2026) +@item 3.0--3.3 +@tab Untested, but should work +@item 3.4 +@c Ubuntu Trusty goes EOL in Apr 2022. +@tab Supported (until Apr 2022) +@item 3.5 +@c Ubuntu Xenial goes EOL in Apr 2024. +@tab Supported (until Apr 2024) +@item 3.6 +@c Ubuntu Bionic goes EOL in Apr 2028. +@tab Supported (until Apr 2028) +@item 3.7 +@c Debian Buster goes EOL in Apr 2024. +@c But should support at least as long as previous Python version? +@tab Supported (until Apr 2028) +@item 3.8 +@c Ubuntu Focal goes EOL in Apr 2030 +@tab Supported (until Apr 2030) +@item 3.9 +@c Debian Bullseye goes EOL in Apr 2026. +@c But should support at least as long as previous Python version? +@tab Supported (until Apr 2030) +@item 3.10 +@c But should support at least as long as previous Python version? +@tab Supported (until Apr 2030) +@end multitable @node Documentation @chapter Building documentation -- 2.34.1 From unknown Tue Jun 17 22:30:03 2025 X-Loop: help-debbugs@gnu.org Subject: bug#38043: [PATCH 4/6] py-compile: drop support for Python 0.x & 1.x Resent-From: Mike Frysinger Original-Sender: "Debbugs-submit" Resent-CC: bug-automake@gnu.org Resent-Date: Sun, 06 Feb 2022 06:58:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 38043 X-GNU-PR-Package: automake X-GNU-PR-Keywords: To: 38043@debbugs.gnu.org Received: via spool by 38043-submit@debbugs.gnu.org id=B38043.164413064919459 (code B ref 38043); Sun, 06 Feb 2022 06:58:02 +0000 Received: (at 38043) by debbugs.gnu.org; 6 Feb 2022 06:57:29 +0000 Received: from localhost ([127.0.0.1]:36223 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1nGbUH-00053l-CS for submit@debbugs.gnu.org; Sun, 06 Feb 2022 01:57:29 -0500 Received: from woodpecker.gentoo.org ([140.211.166.183]:54206 helo=smtp.gentoo.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1nGbUF-00052m-91 for 38043@debbugs.gnu.org; Sun, 06 Feb 2022 01:57:27 -0500 Received: by smtp.gentoo.org (Postfix, from userid 559) id B3092342DA5; Sun, 6 Feb 2022 06:57:21 +0000 (UTC) From: Mike Frysinger Date: Sun, 6 Feb 2022 01:57:12 -0500 Message-Id: <20220206065714.25758-4-vapier@gentoo.org> X-Mailer: git-send-email 2.34.1 In-Reply-To: <20220206065714.25758-1-vapier@gentoo.org> References: <20220206065714.25758-1-vapier@gentoo.org> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Spam-Score: -5.0 (-----) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -6.0 (------) Python 2.0 was released in 2000. There's really no way for us to check those old versions, so let's just drop them. No one will miss them. * lib/py-compile: Abort if major version 0 or 1 is found. * t/py-compile-env.sh: Rework slightly to handle new version probing. --- lib/py-compile | 35 +++++++++++++---------------------- t/py-compile-env.sh | 4 +--- 2 files changed, 14 insertions(+), 25 deletions(-) diff --git a/lib/py-compile b/lib/py-compile index 0e1df24024e8..2745d0b6b045 100755 --- a/lib/py-compile +++ b/lib/py-compile @@ -120,27 +120,19 @@ else filetrans="filepath = os.path.normpath('$destdir' + os.sep + path)" fi -python_major=`$PYTHON -V 2>&1 | sed -e 's/.* //;s/\..*$//;1q'` +python_major=`$PYTHON -c 'import sys; print(sys.version_info[0])'` if test -z "$python_major"; then - echo "$me: could not determine $PYTHON major version, guessing 3" >&2 - python_major=3 + usage_error "could not determine $PYTHON major version" fi -# The old way to import libraries was deprecated. -if test "$python_major" -le 2; then - import_lib=imp - import_test="hasattr(imp, 'get_tag')" - import_call=imp.cache_from_source - import_arg2=', False' # needed in one call and not the other -else - import_lib=importlib - import_test="hasattr(sys.implementation, 'cache_tag')" - import_call=importlib.util.cache_from_source - import_arg2= -fi +case $python_major in +[01]) + usage_error "python version 0.x and 1.x not supported" + ;; +esac $PYTHON -c " -import sys, os, py_compile, $import_lib +import sys, os, py_compile, importlib sys.stdout.write('Byte-compiling python modules...\n') for file in sys.argv[1:]: @@ -151,15 +143,14 @@ for file in sys.argv[1:]: continue sys.stdout.write(file) sys.stdout.flush() - if $import_test: - py_compile.compile(filepath, $import_call(filepath), path) + if hasattr(sys.implementation, 'cache_tag'): + py_compile.compile(filepath, importlib.util.cache_from_source(filepath), path) else: py_compile.compile(filepath, filepath + 'c', path) sys.stdout.write('\n')" "$@" || exit $? -# this will fail for python < 1.5, but that doesn't matter ... $PYTHON -O -c " -import sys, os, py_compile, $import_lib +import sys, os, py_compile, importlib # pypy does not use .pyo optimization if hasattr(sys, 'pypy_translation_info'): @@ -174,8 +165,8 @@ for file in sys.argv[1:]: continue sys.stdout.write(file) sys.stdout.flush() - if $import_test: - py_compile.compile(filepath, $import_call(filepath$import_arg2), path) + if hasattr(sys.implementation, 'cache_tag'): + py_compile.compile(filepath, importlib.util.cache_from_source(filepath), path) else: py_compile.compile(filepath, filepath + 'o', path) sys.stdout.write('\n')" "$@" 2>/dev/null || exit $? diff --git a/t/py-compile-env.sh b/t/py-compile-env.sh index 2c7fe508488a..e7998589278e 100644 --- a/t/py-compile-env.sh +++ b/t/py-compile-env.sh @@ -23,6 +23,7 @@ cp "$am_scriptdir/py-compile" . \ cat > my-py <<'END' #!/bin/sh +echo 2 : > my-py.run END chmod a+x my-py @@ -30,9 +31,6 @@ chmod a+x my-py mkdir sub1 cd sub1 -PYTHON=: ../py-compile foo.py -ls | grep . && exit 1 - PYTHON=false ../py-compile foo.py && exit 1 ls | grep . && exit 1 -- 2.34.1 From unknown Tue Jun 17 22:30:03 2025 X-Loop: help-debbugs@gnu.org Subject: bug#38043: [PATCH 5/6] py-compile: fix display when compiling multiple files Resent-From: Mike Frysinger Original-Sender: "Debbugs-submit" Resent-CC: bug-automake@gnu.org Resent-Date: Sun, 06 Feb 2022 06:58:03 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 38043 X-GNU-PR-Package: automake X-GNU-PR-Keywords: To: 38043@debbugs.gnu.org Received: via spool by 38043-submit@debbugs.gnu.org id=B38043.164413066119489 (code B ref 38043); Sun, 06 Feb 2022 06:58:03 +0000 Received: (at 38043) by debbugs.gnu.org; 6 Feb 2022 06:57:41 +0000 Received: from localhost ([127.0.0.1]:36228 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1nGbUJ-000541-QU for submit@debbugs.gnu.org; Sun, 06 Feb 2022 01:57:41 -0500 Received: from woodpecker.gentoo.org ([140.211.166.183]:54218 helo=smtp.gentoo.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1nGbUH-000536-DP for 38043@debbugs.gnu.org; Sun, 06 Feb 2022 01:57:30 -0500 Received: by smtp.gentoo.org (Postfix, from userid 559) id E15AC342DA4; Sun, 6 Feb 2022 06:57:23 +0000 (UTC) From: Mike Frysinger Date: Sun, 6 Feb 2022 01:57:13 -0500 Message-Id: <20220206065714.25758-5-vapier@gentoo.org> X-Mailer: git-send-email 2.34.1 In-Reply-To: <20220206065714.25758-1-vapier@gentoo.org> References: <20220206065714.25758-1-vapier@gentoo.org> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Spam-Score: -5.0 (-----) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -6.0 (------) The compilation steps print the filename as it runs, but forgets to add a space after it, so they all get squashed together: $ ./py-compile 1.py 2.py 3.py Byte-compiling python modules... 1.py2.py.3.py * lib/py-compile: Add missing write. --- lib/py-compile | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/lib/py-compile b/lib/py-compile index 2745d0b6b045..f72d4945da96 100755 --- a/lib/py-compile +++ b/lib/py-compile @@ -141,7 +141,7 @@ for file in sys.argv[1:]: if not os.path.exists(filepath) or not (len(filepath) >= 3 and filepath[-3:] == '.py'): continue - sys.stdout.write(file) + sys.stdout.write(file + ' ') sys.stdout.flush() if hasattr(sys.implementation, 'cache_tag'): py_compile.compile(filepath, importlib.util.cache_from_source(filepath), path) @@ -163,7 +163,7 @@ for file in sys.argv[1:]: if not os.path.exists(filepath) or not (len(filepath) >= 3 and filepath[-3:] == '.py'): continue - sys.stdout.write(file) + sys.stdout.write(file + ' ') sys.stdout.flush() if hasattr(sys.implementation, 'cache_tag'): py_compile.compile(filepath, importlib.util.cache_from_source(filepath), path) -- 2.34.1 From unknown Tue Jun 17 22:30:03 2025 X-Loop: help-debbugs@gnu.org Subject: bug#38043: [PATCH 6/6] py-compile: fix optimized compiling for Python 3.5+ Resent-From: Mike Frysinger Original-Sender: "Debbugs-submit" Resent-CC: bug-automake@gnu.org Resent-Date: Sun, 06 Feb 2022 06:58:03 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 38043 X-GNU-PR-Package: automake X-GNU-PR-Keywords: To: 38043@debbugs.gnu.org Received: via spool by 38043-submit@debbugs.gnu.org id=B38043.164413066619501 (code B ref 38043); Sun, 06 Feb 2022 06:58:03 +0000 Received: (at 38043) by debbugs.gnu.org; 6 Feb 2022 06:57:46 +0000 Received: from localhost ([127.0.0.1]:36230 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1nGbUT-00054I-E1 for submit@debbugs.gnu.org; Sun, 06 Feb 2022 01:57:46 -0500 Received: from woodpecker.gentoo.org ([140.211.166.183]:54230 helo=smtp.gentoo.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1nGbUJ-00053S-Mb for 38043@debbugs.gnu.org; Sun, 06 Feb 2022 01:57:35 -0500 Received: by smtp.gentoo.org (Postfix, from userid 559) id 15C3C342C57; Sun, 6 Feb 2022 06:57:25 +0000 (UTC) From: Mike Frysinger Date: Sun, 6 Feb 2022 01:57:14 -0500 Message-Id: <20220206065714.25758-6-vapier@gentoo.org> X-Mailer: git-send-email 2.34.1 In-Reply-To: <20220206065714.25758-1-vapier@gentoo.org> References: <20220206065714.25758-1-vapier@gentoo.org> MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Spam-Score: -5.0 (-----) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.0 (-) Fixes automake bug https://bugs.gnu.org/38043. Split the optimized compilation logic into a new section. This avoids trying to support multiple versions of major versions in a single script as it gets harder to verify new changes don't break old versions as time goes on. Now for Python 3.5+, compile with -O2. * THANKS: Add Michal Górny. * lib/py-compile: Add new section for compiling Python 3.5+. --- THANKS | 3 ++- lib/py-compile | 57 +++++++++++++++++++++++++++++++++++++++++++++++++- 2 files changed, 58 insertions(+), 2 deletions(-) diff --git a/THANKS b/THANKS index 5a11cf4d25d9..554013ca87c3 100644 --- a/THANKS +++ b/THANKS @@ -244,7 +244,7 @@ Leonardo Boiko leoboiko@conectiva.com.br Libor Bukata libor.bukata@oracle.com Loulou Pouchet loulou@lrde.epita.fr Ludovic Courtès ludo@gnu.org -Lukas Fleischer lfleischer@lfos.de +Lukas Fleischer lfleischer@lfos.de Luo Yi luoyi.ly@gmail.com Maciej Stachowiak mstachow@mit.edu Maciej W. Rozycki macro@ds2.pg.gda.pl @@ -285,6 +285,7 @@ Michael Daniels mdaniels@rim.com Michael Hofmann mhofma@googlemail.com Michael Ploujnikov ploujj@gmail.com Michael Zucchi notzed@gmail.com +Michał Górny mgorny@gentoo.org Michel de Ruiter mdruiter@cs.vu.nl Mike Castle dalgoda@ix.netcom.com Mike Frysinger vapier@gentoo.org diff --git a/lib/py-compile b/lib/py-compile index f72d4945da96..d34bb2dd2364 100755 --- a/lib/py-compile +++ b/lib/py-compile @@ -131,6 +131,13 @@ case $python_major in ;; esac +python_minor=`$PYTHON -c 'import sys; print(sys.version_info[1])'` + +# NB: When adding support for newer versions, prefer copying & adding new cases +# rather than try to keep things merged with shell variables. + +# First byte compile (no optimization) all the modules. +# This works for all currently known Python versions. $PYTHON -c " import sys, os, py_compile, importlib @@ -149,7 +156,10 @@ for file in sys.argv[1:]: py_compile.compile(filepath, filepath + 'c', path) sys.stdout.write('\n')" "$@" || exit $? -$PYTHON -O -c " +# Then byte compile w/optimization all the modules. +case $python_major.$python_minor in +2.*) + $PYTHON -O -c " import sys, os, py_compile, importlib # pypy does not use .pyo optimization @@ -170,6 +180,51 @@ for file in sys.argv[1:]: else: py_compile.compile(filepath, filepath + 'o', path) sys.stdout.write('\n')" "$@" 2>/dev/null || exit $? + ;; +*) # Python 3+ + $PYTHON -O -c " +import sys, os, py_compile, importlib + +print('Byte-compiling python modules (optimized versions) ...') +for file in sys.argv[1:]: + $pathtrans + $filetrans + if not os.path.exists(filepath) or not (len(filepath) >= 3 + and filepath[-3:] == '.py'): + continue + print(file, end=' ', flush=True) + if hasattr(sys.implementation, 'cache_tag'): + py_compile.compile(filepath, importlib.util.cache_from_source(filepath), path) + else: + py_compile.compile(filepath, filepath + 'o', path) +print()" "$@" 2>/dev/null || exit $? + ;; +esac + +# Then byte compile w/more optimization. +case $python_major.$python_minor in +2.*|3.[0-4]) + ;; +*) # Python 3.5+ + # See https://bugs.gnu.org/38043 for background. + $PYTHON -OO -c " +import sys, os, py_compile, imp + +print('Byte-compiling python modules (-OO version) ...') +for file in sys.argv[1:]: + $pathtrans + $filetrans + if not os.path.exists(filepath) or not (len(filepath) >= 3 + and filepath[-3:] == '.py'): + continue + print(file, end=' ', flush=True) + if hasattr(imp, 'get_tag'): + py_compile.compile(filepath, imp.cache_from_source(filepath), path) + else: + py_compile.compile(filepath, filepath + 'o', path) +print()" "$@" 2>/dev/null || exit $? + ;; +esac # Local Variables: # mode: shell-script -- 2.34.1 From debbugs-submit-bounces@debbugs.gnu.org Sun Feb 06 03:43:24 2022 Received: (at control) by debbugs.gnu.org; 6 Feb 2022 08:43:24 +0000 Received: from localhost ([127.0.0.1]:36360 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1nGd8m-0001Xx-8v for submit@debbugs.gnu.org; Sun, 06 Feb 2022 03:43:24 -0500 Received: from woodpecker.gentoo.org ([140.211.166.183]:41802 helo=smtp.gentoo.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1nGd8l-0001Xi-8g for control@debbugs.gnu.org; Sun, 06 Feb 2022 03:43:23 -0500 Received: by smtp.gentoo.org (Postfix, from userid 559) id C8E9A342D89; Sun, 6 Feb 2022 08:43:16 +0000 (UTC) From: Mike Frysinger To: control@debbugs.gnu.org Subject: Control message Message-Id: <20220206084316.C8E9A342D89@smtp.gentoo.org> Date: Sun, 6 Feb 2022 08:43:16 +0000 (UTC) X-Spam-Score: -5.0 (-----) X-Debbugs-Envelope-To: control X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -6.0 (------) block 38043 by 53340 thankyou From unknown Tue Jun 17 22:30:03 2025 X-Loop: help-debbugs@gnu.org Subject: bug#38043: [PATCH 6/6] py-compile: fix optimized compiling for Python 3.5+ References: Resent-From: Karl Berry Original-Sender: "Debbugs-submit" Resent-CC: bug-automake@gnu.org Resent-Date: Sun, 06 Feb 2022 22:48:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 38043 X-GNU-PR-Package: automake X-GNU-PR-Keywords: To: vapier@gentoo.org Cc: 38043@debbugs.gnu.org Received: via spool by 38043-submit@debbugs.gnu.org id=B38043.164418766730955 (code B ref 38043); Sun, 06 Feb 2022 22:48:02 +0000 Received: (at 38043) by debbugs.gnu.org; 6 Feb 2022 22:47:47 +0000 Received: from localhost ([127.0.0.1]:40124 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1nGqJu-00083B-Os for submit@debbugs.gnu.org; Sun, 06 Feb 2022 17:47:46 -0500 Received: from freefriends.org ([96.88.95.60]:53986) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1nGqJt-00082s-9A for 38043@debbugs.gnu.org; Sun, 06 Feb 2022 17:47:45 -0500 X-Envelope-From: karl@freefriends.org Received: from freefriends.org (freefriends.org [96.88.95.60]) by freefriends.org (8.14.7/8.14.7) with ESMTP id 216MlhpD021450 (version=TLSv1/SSLv3 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Sun, 6 Feb 2022 15:47:44 -0700 Received: (from apache@localhost) by freefriends.org (8.14.7/8.14.7/Submit) id 216Mlh2N021449; Sun, 6 Feb 2022 15:47:43 -0700 Date: Sun, 6 Feb 2022 15:47:43 -0700 Message-Id: <202202062247.216Mlh2N021449@freefriends.org> From: Karl Berry In-Reply-To: <20220206065714.25758-6-vapier@gentoo.org> X-Spam-Score: -2.3 (--) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -3.3 (---) Fixes automake bug https://bugs.gnu.org/38043. All these changes look good to me (just casting my eyes over them ...), and hopefully will result in something more future-maintainable. Thanks! From unknown Tue Jun 17 22:30:03 2025 X-Loop: help-debbugs@gnu.org Subject: bug#38043: [PATCH 6/6] py-compile: fix optimized compiling for Python 3.5+ Resent-From: Mike Frysinger Original-Sender: "Debbugs-submit" Resent-CC: bug-automake@gnu.org Resent-Date: Mon, 07 Feb 2022 01:15:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 38043 X-GNU-PR-Package: automake X-GNU-PR-Keywords: To: Karl Berry Cc: 38043@debbugs.gnu.org Received: via spool by 38043-submit@debbugs.gnu.org id=B38043.164419646217976 (code B ref 38043); Mon, 07 Feb 2022 01:15:02 +0000 Received: (at 38043) by debbugs.gnu.org; 7 Feb 2022 01:14:22 +0000 Received: from localhost ([127.0.0.1]:40421 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1nGsbl-0004fs-WD for submit@debbugs.gnu.org; Sun, 06 Feb 2022 20:14:22 -0500 Received: from woodpecker.gentoo.org ([140.211.166.183]:36440 helo=smtp.gentoo.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1nGsbk-0004fc-4w for 38043@debbugs.gnu.org; Sun, 06 Feb 2022 20:14:20 -0500 Received: by smtp.gentoo.org (Postfix, from userid 559) id 9406B342DFD; Mon, 7 Feb 2022 01:14:13 +0000 (UTC) Date: Sun, 6 Feb 2022 20:14:14 -0500 From: Mike Frysinger Message-ID: Mail-Followup-To: Karl Berry , 38043@debbugs.gnu.org References: <20220206065714.25758-6-vapier@gentoo.org> <202202062247.216Mlh2N021449@freefriends.org> MIME-Version: 1.0 Content-Type: multipart/signed; micalg=pgp-sha256; protocol="application/pgp-signature"; boundary="PQJfzkajO65A/EMC" Content-Disposition: inline In-Reply-To: <202202062247.216Mlh2N021449@freefriends.org> X-Spam-Score: -5.0 (-----) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -6.0 (------) --PQJfzkajO65A/EMC Content-Type: text/plain; charset=utf-8 Content-Disposition: inline Content-Transfer-Encoding: quoted-printable On 06 Feb 2022 15:47, Karl Berry wrote: > Fixes automake bug https://bugs.gnu.org/38043. >=20 > All these changes look good to me (just casting my eyes over them ...), > and hopefully will result in something more future-maintainable. Thanks! before i push, question about $scriptversion. is the policy for handling these documented somewhere ? is it like m4 serial numbers ? it should be updated whenever there's a code change ? -mike --PQJfzkajO65A/EMC Content-Type: application/pgp-signature; name="signature.asc" -----BEGIN PGP SIGNATURE----- iQIzBAABCAAdFiEEuQK1JxMl+JKsJRrUQWM7n+g39YEFAmIAcmYACgkQQWM7n+g3 9YESxRAAyR9CO6yZjoqEzTX3Ty2Z/qVSApAmKBMASWK8XlAQADm9O9y6AK85//AJ uRDOq5jdaKbhHAedtv1Z8OLsIh+DOBS60vPfJlGfccQPCLQie7BNfCMU5rAdqymK dIA+tSWSggx0yEnTNcT8HKj/Kc4/qnQNE3Rju+Fbn6T4BiwQHgZch6KQUImKxgg/ Y3KjFSGmVN7i0mBNFAl55YM3GaR7MeIREOVPjA+izRtHQI1iw27U2LahNsxP+QEK dI5OxE56EeKVVXHgdlE4dQjU475TIJUbek3LpBG4Fh69G8JeXUaOuekoZvpF057o WYx44bm6h+2vO71q+zZ4E/sBcfKRBzdS0qK/14xPhRaP8xaF4XQoQKEwoZkMqO+W nsnClT40firSZbQ0fPpkBpuHVER1g71K4roXZiNpLpr+JyCYddK6IvS5JhjkEgHt VzV5yrjHLOT+yYh4mgLXdBuIggRku1FuYDinkNEArEF8A/c5NEf+5M/ZYOcZOSpr lnHZMTnQ1i9hw7QBxFl9IyXWmbz7cJsv510evKEh7VVuyPHXWZzghIb4SDbmIrDV keIWrwznjtLXA+BZCmWhlJqrCTFW621+ylJpyeES8cb0Zwk3XtYrIufDJHpeKChW V5yDAf6Mk0IANjYKhfJGqI6X6B/Zystbu9PsPLgvB/rtCJ0GNs4= =zVnZ -----END PGP SIGNATURE----- --PQJfzkajO65A/EMC-- From unknown Tue Jun 17 22:30:03 2025 X-Loop: help-debbugs@gnu.org Subject: bug#38043: [PATCH 6/6] py-compile: fix optimized compiling for Python 3.5+ References: Resent-From: Karl Berry Original-Sender: "Debbugs-submit" Resent-CC: bug-automake@gnu.org Resent-Date: Mon, 07 Feb 2022 22:41:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 38043 X-GNU-PR-Package: automake X-GNU-PR-Keywords: To: vapier@gentoo.org Cc: 38043@debbugs.gnu.org Received: via spool by 38043-submit@debbugs.gnu.org id=B38043.164427360923231 (code B ref 38043); Mon, 07 Feb 2022 22:41:02 +0000 Received: (at 38043) by debbugs.gnu.org; 7 Feb 2022 22:40:09 +0000 Received: from localhost ([127.0.0.1]:44055 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1nHCg5-00062c-Jn for submit@debbugs.gnu.org; Mon, 07 Feb 2022 17:40:09 -0500 Received: from freefriends.org ([96.88.95.60]:54254) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1nHCg3-00062U-9i for 38043@debbugs.gnu.org; Mon, 07 Feb 2022 17:40:08 -0500 X-Envelope-From: karl@freefriends.org Received: from freefriends.org (freefriends.org [96.88.95.60]) by freefriends.org (8.14.7/8.14.7) with ESMTP id 217Me4Cn005033 (version=TLSv1/SSLv3 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Mon, 7 Feb 2022 15:40:05 -0700 Received: (from apache@localhost) by freefriends.org (8.14.7/8.14.7/Submit) id 217Me4n3005028; Mon, 7 Feb 2022 15:40:04 -0700 Date: Mon, 7 Feb 2022 15:40:04 -0700 Message-Id: <202202072240.217Me4n3005028@freefriends.org> From: Karl Berry In-Reply-To: X-Spam-Score: -2.3 (--) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -3.3 (---) before i push, question about $scriptversion. is the policy for handling these documented somewhere ? is it like m4 serial numbers ? it should be updated whenever there's a code change ? Yes. Standard practice is to update scriptversion whenever a new version of the file is committed, I mean, "pushed". This isn't documented anywhere in automake that I know of (feel free to add it to HACKING if you like); maybe it's in the gnulib manual, but I didn't check. --thanks, karl. From debbugs-submit-bounces@debbugs.gnu.org Mon Feb 07 22:50:20 2022 Received: (at control) by debbugs.gnu.org; 8 Feb 2022 03:50:20 +0000 Received: from localhost ([127.0.0.1]:44587 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1nHHWF-0005XA-Qn for submit@debbugs.gnu.org; Mon, 07 Feb 2022 22:50:19 -0500 Received: from woodpecker.gentoo.org ([140.211.166.183]:43286 helo=smtp.gentoo.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1nHHWE-0005Ws-Aw for control@debbugs.gnu.org; Mon, 07 Feb 2022 22:50:18 -0500 Received: by smtp.gentoo.org (Postfix, from userid 559) id C23C8342D46; Tue, 8 Feb 2022 03:50:12 +0000 (UTC) From: Mike Frysinger To: control@debbugs.gnu.org Subject: Control message Message-Id: <20220208035012.C23C8342D46@smtp.gentoo.org> Date: Tue, 8 Feb 2022 03:50:12 +0000 (UTC) X-Spam-Score: -5.0 (-----) X-Debbugs-Envelope-To: control X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -6.0 (------) tag 38043 = patch confirmed thankyou From debbugs-submit-bounces@debbugs.gnu.org Thu Feb 24 00:42:19 2022 Received: (at control) by debbugs.gnu.org; 24 Feb 2022 05:42:19 +0000 Received: from localhost ([127.0.0.1]:47218 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1nN6tP-0003Oi-3k for submit@debbugs.gnu.org; Thu, 24 Feb 2022 00:42:19 -0500 Received: from woodpecker.gentoo.org ([140.211.166.183]:37016 helo=smtp.gentoo.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1nN6tO-0003OW-3e for control@debbugs.gnu.org; Thu, 24 Feb 2022 00:42:18 -0500 Received: by smtp.gentoo.org (Postfix, from userid 559) id B949A342D48; Thu, 24 Feb 2022 05:42:11 +0000 (UTC) From: Mike Frysinger To: control@debbugs.gnu.org Subject: Control message Message-Id: <20220224054211.B949A342D48@smtp.gentoo.org> Date: Thu, 24 Feb 2022 05:42:11 +0000 (UTC) X-Spam-Score: -5.0 (-----) X-Debbugs-Envelope-To: control X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -6.0 (------) retitle 38043 Incorrect Python byte-compiling for Python 3.5+ and PyPy3 close 38043 thankyou