From 83e66ce03ec5d57a5fef285715259da8f9060c31 Mon Sep 17 00:00:00 2001 From: "Adam J. Stewart" Date: Mon, 19 Sep 2022 15:34:38 -0500 Subject: [PATCH] Deprecate Python 2 support (#32615) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit This PR deprecates using Spack to install [EOL Python versions](https://endoflife.date/python), including Python 2.7, 3.1–3.6. It also deprecates running Spack with Python 2.7. Going forward, we expect Spack to have the following Python support timeline. ### Running Spack * Spack 0.18 (spring 2022): Python 2.7, 3.5–3.10 * Spack 0.19 (fall 2022): Python 2.7 (deprecated), 3.6–3.11 * Spack 0.20 (spring 2023): Python 3.6–3.11 ### Building with Spack * Spack 0.18 (spring 2022): Python 2.7, 3.1–3.10 * Spack 0.19 (fall 2022): Python 2.7, 3.1–3.6 (deprecated), 3.7–3.11 * Spack 0.20 (spring 2023): Python 3.7–3.11 This is a reboot of #28003. See #31824 for a detailed discussion of the motivation for this PR. If you have concerns about this change, please comment on #31824. --- .../repos/builtin/packages/python/package.py | 254 +++++++++++++++--- 1 file changed, 211 insertions(+), 43 deletions(-) diff --git a/var/spack/repos/builtin/packages/python/package.py b/var/spack/repos/builtin/packages/python/package.py index 6951398c62..fb240d9685 100644 --- a/var/spack/repos/builtin/packages/python/package.py +++ b/var/spack/repos/builtin/packages/python/package.py @@ -36,7 +36,7 @@ class Python(Package): list_url = "https://www.python.org/ftp/python/" list_depth = 1 - maintainers = ["adamjstewart", "skosukhin", "scheibelp", "varioustoxins", "pradyunsg"] + maintainers = ["adamjstewart", "skosukhin", "scheibelp", "pradyunsg"] phases = ["configure", "build", "install"] @@ -97,53 +97,221 @@ class Python(Package): version("3.7.2", sha256="f09d83c773b9cc72421abba2c317e4e6e05d919f9bcf34468e192b6a6c8e328d") version("3.7.1", sha256="36c1b81ac29d0f8341f727ef40864d99d8206897be96be73dc34d4739c9c9f06") version("3.7.0", sha256="85bb9feb6863e04fb1700b018d9d42d1caac178559ffa453d7e6a436e259fd0d") - version("3.6.15", sha256="54570b7e339e2cfd72b29c7e2fdb47c0b7b18b7412e61de5b463fc087c13b043") - version("3.6.14", sha256="70064897bc434d6eae8bcc3e5678f282b5ea776d60e695da548a1219ccfd27a5") - version("3.6.13", sha256="614950d3d54f6e78dac651b49c64cfe2ceefea5af3aff3371a9e4b27a53b2669") - version("3.6.12", sha256="12dddbe52385a0f702fb8071e12dcc6b3cb2dde07cd8db3ed60e90d90ab78693") - version("3.6.11", sha256="96621902f89746fffc22f39749c07da7c2917b232e72352e6837d41850f7b90c") - version("3.6.10", sha256="7034dd7cba98d4f94c74f9edd7345bac71c8814c41672c64d9044fa2f96f334d") - version("3.6.9", sha256="47fc92a1dcb946b9ed0abc311d3767b7215c54e655b17fd1d3f9b538195525aa") - version("3.6.8", sha256="7f5b1f08b3b0a595387ef6c64c85b1b13b38abef0dd871835ee923262e4f32f0") - version("3.6.7", sha256="b7c36f7ed8f7143b2c46153b7332db2227669f583ea0cce753facf549d1a4239") - version("3.6.6", sha256="7d56dadf6c7d92a238702389e80cfe66fbfae73e584189ed6f89c75bbf3eda58") - version("3.6.5", sha256="53a3e17d77cd15c5230192b6a8c1e031c07cd9f34a2f089a731c6f6bd343d5c6") - version("3.6.4", sha256="7dc453e1a93c083388eb1a23a256862407f8234a96dc4fae0fc7682020227486") - version("3.6.3", sha256="ab6193af1921b30f587b302fe385268510e80187ca83ca82d2bfe7ab544c6f91") - version("3.6.2", sha256="7919489310a5f17f7acbab64d731e46dca0702874840dadce8bd4b2b3b8e7a82") - version("3.6.1", sha256="aa50b0143df7c89ce91be020fe41382613a817354b33acdc6641b44f8ced3828") - version("3.6.0", sha256="aa472515800d25a3739833f76ca3735d9f4b2fe77c3cb21f69275e0cce30cb2b") - version("3.5.10", sha256="3496a0daf51913718a6f10e3eda51fa43634cb6151cb096f312d48bdbeff7d3a") - version("3.5.9", sha256="67a1d4fc6e4540d6a092cadc488e533afa961b3c9becc74dc3d6b55cb56e0cc1") - version("3.5.8", sha256="18c88dfd260147bc7247e6356010e5d4916dfbfc480f6434917f88e61228177a") - version("3.5.7", sha256="542d94920a2a06a471a73b51614805ad65366af98145b0369bc374cf248b521b") - version("3.5.6", sha256="30d2ff093988e74283e1abfee823292c6b59590796b9827e95ba4940b27d26f8") - version("3.5.5", sha256="2f988db33913dcef17552fd1447b41afb89dbc26e3cdfc068ea6c62013a3a2a5") - version("3.5.4", sha256="6ed87a8b6c758cc3299a8b433e8a9a9122054ad5bc8aad43299cff3a53d8ca44") - version("3.5.3", sha256="d8890b84d773cd7059e597dbefa510340de8336ec9b9e9032bf030f19291565a") - version("3.5.2", sha256="1524b840e42cf3b909e8f8df67c1724012c7dc7f9d076d4feef2d3eff031e8a0") - version("3.5.1", sha256="687e067d9f391da645423c7eda8205bae9d35edc0c76ef5218dcbe4cc770d0d7") - version("3.5.0", sha256="584e3d5a02692ca52fce505e68ecd77248a6f2c99adf9db144a39087336b0fe0") - version("3.4.10", sha256="217757699249ab432571b381386d441e12b433100ab5f908051fcb7cced2539d") - version("3.4.3", sha256="8b743f56e9e50bf0923b9e9c45dd927c071d7aa56cd46569d8818add8cf01147") - version("3.3.6", sha256="0a58ad1f1def4ecc90b18b0c410a3a0e1a48cf7692c75d1f83d0af080e5d2034") - version("3.2.6", sha256="fc1e41296e29d476f696303acae293ae7a2310f0f9d0d637905e722a3f16163e") + version( + "3.6.15", + sha256="54570b7e339e2cfd72b29c7e2fdb47c0b7b18b7412e61de5b463fc087c13b043", + deprecated=True, + ) + version( + "3.6.14", + sha256="70064897bc434d6eae8bcc3e5678f282b5ea776d60e695da548a1219ccfd27a5", + deprecated=True, + ) + version( + "3.6.13", + sha256="614950d3d54f6e78dac651b49c64cfe2ceefea5af3aff3371a9e4b27a53b2669", + deprecated=True, + ) + version( + "3.6.12", + sha256="12dddbe52385a0f702fb8071e12dcc6b3cb2dde07cd8db3ed60e90d90ab78693", + deprecated=True, + ) + version( + "3.6.11", + sha256="96621902f89746fffc22f39749c07da7c2917b232e72352e6837d41850f7b90c", + deprecated=True, + ) + version( + "3.6.10", + sha256="7034dd7cba98d4f94c74f9edd7345bac71c8814c41672c64d9044fa2f96f334d", + deprecated=True, + ) + version( + "3.6.9", + sha256="47fc92a1dcb946b9ed0abc311d3767b7215c54e655b17fd1d3f9b538195525aa", + deprecated=True, + ) + version( + "3.6.8", + sha256="7f5b1f08b3b0a595387ef6c64c85b1b13b38abef0dd871835ee923262e4f32f0", + deprecated=True, + ) + version( + "3.6.7", + sha256="b7c36f7ed8f7143b2c46153b7332db2227669f583ea0cce753facf549d1a4239", + deprecated=True, + ) + version( + "3.6.6", + sha256="7d56dadf6c7d92a238702389e80cfe66fbfae73e584189ed6f89c75bbf3eda58", + deprecated=True, + ) + version( + "3.6.5", + sha256="53a3e17d77cd15c5230192b6a8c1e031c07cd9f34a2f089a731c6f6bd343d5c6", + deprecated=True, + ) + version( + "3.6.4", + sha256="7dc453e1a93c083388eb1a23a256862407f8234a96dc4fae0fc7682020227486", + deprecated=True, + ) + version( + "3.6.3", + sha256="ab6193af1921b30f587b302fe385268510e80187ca83ca82d2bfe7ab544c6f91", + deprecated=True, + ) + version( + "3.6.2", + sha256="7919489310a5f17f7acbab64d731e46dca0702874840dadce8bd4b2b3b8e7a82", + deprecated=True, + ) + version( + "3.6.1", + sha256="aa50b0143df7c89ce91be020fe41382613a817354b33acdc6641b44f8ced3828", + deprecated=True, + ) + version( + "3.6.0", + sha256="aa472515800d25a3739833f76ca3735d9f4b2fe77c3cb21f69275e0cce30cb2b", + deprecated=True, + ) + version( + "3.5.10", + sha256="3496a0daf51913718a6f10e3eda51fa43634cb6151cb096f312d48bdbeff7d3a", + deprecated=True, + ) + version( + "3.5.9", + sha256="67a1d4fc6e4540d6a092cadc488e533afa961b3c9becc74dc3d6b55cb56e0cc1", + deprecated=True, + ) + version( + "3.5.8", + sha256="18c88dfd260147bc7247e6356010e5d4916dfbfc480f6434917f88e61228177a", + deprecated=True, + ) + version( + "3.5.7", + sha256="542d94920a2a06a471a73b51614805ad65366af98145b0369bc374cf248b521b", + deprecated=True, + ) + version( + "3.5.6", + sha256="30d2ff093988e74283e1abfee823292c6b59590796b9827e95ba4940b27d26f8", + deprecated=True, + ) + version( + "3.5.5", + sha256="2f988db33913dcef17552fd1447b41afb89dbc26e3cdfc068ea6c62013a3a2a5", + deprecated=True, + ) + version( + "3.5.4", + sha256="6ed87a8b6c758cc3299a8b433e8a9a9122054ad5bc8aad43299cff3a53d8ca44", + deprecated=True, + ) + version( + "3.5.3", + sha256="d8890b84d773cd7059e597dbefa510340de8336ec9b9e9032bf030f19291565a", + deprecated=True, + ) + version( + "3.5.2", + sha256="1524b840e42cf3b909e8f8df67c1724012c7dc7f9d076d4feef2d3eff031e8a0", + deprecated=True, + ) + version( + "3.5.1", + sha256="687e067d9f391da645423c7eda8205bae9d35edc0c76ef5218dcbe4cc770d0d7", + deprecated=True, + ) + version( + "3.5.0", + sha256="584e3d5a02692ca52fce505e68ecd77248a6f2c99adf9db144a39087336b0fe0", + deprecated=True, + ) + version( + "3.4.10", + sha256="217757699249ab432571b381386d441e12b433100ab5f908051fcb7cced2539d", + deprecated=True, + ) + version( + "3.4.3", + sha256="8b743f56e9e50bf0923b9e9c45dd927c071d7aa56cd46569d8818add8cf01147", + deprecated=True, + ) + version( + "3.3.6", + sha256="0a58ad1f1def4ecc90b18b0c410a3a0e1a48cf7692c75d1f83d0af080e5d2034", + deprecated=True, + ) + version( + "3.2.6", + sha256="fc1e41296e29d476f696303acae293ae7a2310f0f9d0d637905e722a3f16163e", + deprecated=True, + ) version( "3.1.5", sha256="d12dae6d06f52ef6bf1271db4d5b4d14b5dd39813e324314e72b648ef1bc0103", deprecated=True, ) - version("2.7.18", sha256="da3080e3b488f648a3d7a4560ddee895284c3380b11d6de75edb986526b9a814") - version("2.7.17", sha256="f22059d09cdf9625e0a7284d24a13062044f5bf59d93a7f3382190dfa94cecde") - version("2.7.16", sha256="01da813a3600876f03f46db11cc5c408175e99f03af2ba942ef324389a83bad5") - version("2.7.15", sha256="18617d1f15a380a919d517630a9cd85ce17ea602f9bbdc58ddc672df4b0239db") - version("2.7.14", sha256="304c9b202ea6fbd0a4a8e0ad3733715fbd4749f2204a9173a58ec53c32ea73e8") - version("2.7.13", sha256="a4f05a0720ce0fd92626f0278b6b433eee9a6173ddf2bced7957dfb599a5ece1") - version("2.7.12", sha256="3cb522d17463dfa69a155ab18cffa399b358c966c0363d6c8b5b3bf1384da4b6") - version("2.7.11", sha256="82929b96fd6afc8da838b149107078c02fa1744b7e60999a8babbc0d3fa86fc6") - version("2.7.10", sha256="eda8ce6eec03e74991abb5384170e7c65fcd7522e409b8e83d7e6372add0f12a") - version("2.7.9", sha256="c8bba33e66ac3201dabdc556f0ea7cfe6ac11946ec32d357c4c6f9b018c12c5b") - version("2.7.8", sha256="74d70b914da4487aa1d97222b29e9554d042f825f26cb2b93abd20fdda56b557") + version( + "2.7.18", + sha256="da3080e3b488f648a3d7a4560ddee895284c3380b11d6de75edb986526b9a814", + deprecated=True, + ) + version( + "2.7.17", + sha256="f22059d09cdf9625e0a7284d24a13062044f5bf59d93a7f3382190dfa94cecde", + deprecated=True, + ) + version( + "2.7.16", + sha256="01da813a3600876f03f46db11cc5c408175e99f03af2ba942ef324389a83bad5", + deprecated=True, + ) + version( + "2.7.15", + sha256="18617d1f15a380a919d517630a9cd85ce17ea602f9bbdc58ddc672df4b0239db", + deprecated=True, + ) + version( + "2.7.14", + sha256="304c9b202ea6fbd0a4a8e0ad3733715fbd4749f2204a9173a58ec53c32ea73e8", + deprecated=True, + ) + version( + "2.7.13", + sha256="a4f05a0720ce0fd92626f0278b6b433eee9a6173ddf2bced7957dfb599a5ece1", + deprecated=True, + ) + version( + "2.7.12", + sha256="3cb522d17463dfa69a155ab18cffa399b358c966c0363d6c8b5b3bf1384da4b6", + deprecated=True, + ) + version( + "2.7.11", + sha256="82929b96fd6afc8da838b149107078c02fa1744b7e60999a8babbc0d3fa86fc6", + deprecated=True, + ) + version( + "2.7.10", + sha256="eda8ce6eec03e74991abb5384170e7c65fcd7522e409b8e83d7e6372add0f12a", + deprecated=True, + ) + version( + "2.7.9", + sha256="c8bba33e66ac3201dabdc556f0ea7cfe6ac11946ec32d357c4c6f9b018c12c5b", + deprecated=True, + ) + version( + "2.7.8", + sha256="74d70b914da4487aa1d97222b29e9554d042f825f26cb2b93abd20fdda56b557", + deprecated=True, + ) extendable = True