From nobody Tue Oct 01 08:00:07 2024 X-Original-To: freebsd-python@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4XHr2v3WLxz5XS4B for ; Tue, 01 Oct 2024 08:00:23 +0000 (UTC) (envelope-from samjvaughan@gmail.com) Received: from mail-ot1-x334.google.com (mail-ot1-x334.google.com [IPv6:2607:f8b0:4864:20::334]) (using TLSv1.3 with cipher TLS_AES_128_GCM_SHA256 (128/128 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (2048 bits) client-digest SHA256) (Client CN "smtp.gmail.com", Issuer "WR4" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4XHr2t5ygJz4fq6 for ; Tue, 1 Oct 2024 08:00:22 +0000 (UTC) (envelope-from samjvaughan@gmail.com) Authentication-Results: mx1.freebsd.org; dkim=pass header.d=gmail.com header.s=20230601 header.b=KGRwFisy; spf=pass (mx1.freebsd.org: domain of samjvaughan@gmail.com designates 2607:f8b0:4864:20::334 as permitted sender) smtp.mailfrom=samjvaughan@gmail.com; dmarc=pass (policy=none) header.from=gmail.com Received: by mail-ot1-x334.google.com with SMTP id 46e09a7af769-710f0415ac8so2914293a34.1 for ; Tue, 01 Oct 2024 01:00:22 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1727769621; x=1728374421; darn=freebsd.org; h=to:date:message-id:subject:mime-version:content-transfer-encoding :from:from:to:cc:subject:date:message-id:reply-to; bh=YbztlsDixQBqkxUn57LLa+A743d2RtMrFfaPRxI6/mU=; b=KGRwFisyC+9vb8EYjoYNHObEALkxLdfSlvDq8beEtceIrZjZ8dHoc8GS5lla2kLbMk qZYsb+Xv+43uirJq3U55Vsz9yEMZzXwxqVU+kf3M+sc0Zi6ytiuruLrg8P2OHPOzuvUz +7LDbtNtWtCRrJdvert7z4blpVDInAOhWOpjGd7d5YnDfVz9QpkfhlA+sL4n6TzdDfRl tQSzsAlMYwBGbN7Khe5rLrpwjq/v6FRVLQiUHYCZs98n3cdcBNwEIqd3dThkREYXloIa KgCVlMJ+E7RWk+/+5YR+AAyB5n39AOxaZ8RLklcKvzBAtHTvzCOsGYRyy2jepFdHSU/W NCfw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1727769621; x=1728374421; h=to:date:message-id:subject:mime-version:content-transfer-encoding :from:x-gm-message-state:from:to:cc:subject:date:message-id:reply-to; bh=YbztlsDixQBqkxUn57LLa+A743d2RtMrFfaPRxI6/mU=; b=oRHv8PYRfqrVlicTAFEzpztgofzEpODXmXCHLwoGz/tB/Ar9gDuZMsunTJ8hiXComm HcPRHKVR03FXUZQ6dDccbN5xyiOk/GiBFyfY65dC8kGAsqXeJR0v4/3x5kWT98nuXX1u s+p/7Leyo+J85uyhiJ4KNLQhQvO7/X7smvTR/SySD9inw6VX8zBidaemvi4ABLtuckih WUt1ElUKipiKGyy5BU3LlQLHIYyAxSma5AKR01tQQKlo/EqSbixo7PnePywkIDldtlis 3W9X4DicZn6wZQegVrrGHXNFUzMJ1FjtoYZ7dXPmnEiQOKA/WuFmPWBJ6XpQ+AAsr9t2 EghQ== X-Gm-Message-State: AOJu0Yy74//1eddPR3v6ezrrXFVTsX8jELhcvdS02/TX+98QT4Mptp5e whyqPSPTDtGXq7izdNzXtmKe/lQMUxKMAlNH6rRhu/44iiTuB2xOhsip3w== X-Google-Smtp-Source: AGHT+IF615dQHls0mpWFGnJ5sSYTmnuP5jzeeHkPSPgRE4osEgaStrfY7o4Gm5hcYHai2wBDPxeASw== X-Received: by 2002:a05:6830:452a:b0:710:f8ef:6482 with SMTP id 46e09a7af769-714fbe8b6c5mr9209692a34.9.1727769621025; Tue, 01 Oct 2024 01:00:21 -0700 (PDT) Received: from smtpclient.apple (mail-relay.pixels.net.au. [210.50.201.66]) by smtp.gmail.com with ESMTPSA id 41be03b00d2f7-7e6db6110afsm7585589a12.92.2024.10.01.01.00.19 for (version=TLS1_2 cipher=ECDHE-ECDSA-AES128-GCM-SHA256 bits=128/128); Tue, 01 Oct 2024 01:00:20 -0700 (PDT) From: Sam Vaughan Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable List-Id: FreeBSD-specific Python issues List-Archive: https://lists.freebsd.org/archives/freebsd-python List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: freebsd-python@freebsd.org Sender: owner-freebsd-python@FreeBSD.org Mime-Version: 1.0 (Mac OS X Mail 16.0 \(3776.700.51\)) Subject: pip 24.2 pip check - package is not supported on this platform Message-Id: <10FABC99-E00A-4175-9B50-362FD6FDD96F@gmail.com> Date: Tue, 1 Oct 2024 18:00:07 +1000 To: freebsd-python@freebsd.org X-Mailer: Apple Mail (2.3776.700.51) X-Spamd-Result: default: False [-3.98 / 15.00]; NEURAL_HAM_LONG(-1.00)[-1.000]; NEURAL_HAM_SHORT(-1.00)[-1.000]; NEURAL_HAM_MEDIUM(-0.98)[-0.976]; DMARC_POLICY_ALLOW(-0.50)[gmail.com,none]; R_DKIM_ALLOW(-0.20)[gmail.com:s=20230601]; R_SPF_ALLOW(-0.20)[+ip6:2607:f8b0:4000::/36:c]; MIME_GOOD(-0.10)[text/plain]; FROM_HAS_DN(0.00)[]; TO_MATCH_ENVRCPT_ALL(0.00)[]; RCVD_TLS_LAST(0.00)[]; RCPT_COUNT_ONE(0.00)[1]; MIME_TRACE(0.00)[0:+]; ARC_NA(0.00)[]; FREEMAIL_ENVFROM(0.00)[gmail.com]; FREEMAIL_FROM(0.00)[gmail.com]; DKIM_TRACE(0.00)[gmail.com:+]; ASN(0.00)[asn:15169, ipnet:2607:f8b0::/32, country:US]; RCVD_VIA_SMTP_AUTH(0.00)[]; TO_DN_NONE(0.00)[]; RCVD_COUNT_TWO(0.00)[2]; FROM_EQ_ENVFROM(0.00)[]; DWL_DNSWL_NONE(0.00)[gmail.com:dkim]; PREVIOUSLY_DELIVERED(0.00)[freebsd-python@freebsd.org]; MID_RHS_MATCH_FROM(0.00)[]; MLMMJ_DEST(0.00)[freebsd-python@freebsd.org]; APPLE_MAILER_COMMON(0.00)[]; RCVD_IN_DNSWL_NONE(0.00)[2607:f8b0:4864:20::334:from] X-Rspamd-Queue-Id: 4XHr2t5ygJz4fq6 X-Spamd-Bar: --- Hi all, There is a problem with the `pip check` command when running pip 24.2 = and later on FreeBSD. I hope this is the right place to raise it. With pip version 24.2 and later, if a FreeBSD security update has been = applied since packages were last installed, running `pip check` fails = with errors that look like this: $ pip check xattr 1.1.0 is not supported on this platform psutil 6.0.0 is not supported on this platform PyYAML 6.0.2 is not supported on this platform coverage 7.6.1 is not supported on this platform cffi 1.17.1 is not supported on this platform MarkupSafe 2.1.5 is not supported on this platform This has started occurring because the pip check command was recently = made more strict. [1][2][3] It now checks that the tags listed in the = installed packages' WHEEL files match the OS. For packages that have = ABI dependencies, these tags include the full OS release information, = including the patch number. For example: Tag: cp311-cp311-freebsd_14_1_release_p4_amd64 This string looks to have been built from the output of `uname -mrs`, = which might not be a bad way of identifying the ABI on other OSes, but = it=E2=80=99s fragile on FreeBSD. Most other OSes don=E2=80=99t include = patch numbers in the output of `uname -r`, so this string doesn=E2=80=99t = change nearly as often for them. I think it would be good if the patch number could be filtered out = somehow when building this string on FreeBSD. The packaging = documentation [4] seems to suggest that it comes from = sysconfig.get_platform(), which currently returns = 'freebsd-14.1-RELEASE-p4-amd64=E2=80=99. So if that string could be filtered before it=E2=80=99s written out to = tags in WHEEL files, and pip could have the same change made to its = understanding of the current environment when checking tags, that would = fix this issue for all packages installed in future. Existing installed packages with patch numbers in their WHEEL files = would still need to be reinstalled, but that seems to be necessary = anyway to work around this issue as things stand. I=E2=80=99m not familiar enough with the pip or python packaging source = code to be able to suggest code patches, but I=E2=80=99m hoping that the = above information might be helpful to someone who is. Thanks in advance, Sam [1] = https://ichard26.github.io/blog/2024/08/whats-new-in-pip-24.2/#pip-check-j= ust-got-a-bit-stricter [2] https://github.com/pypa/pip/pull/11088 [3] = https://github.com/pypa/pip/commit/db062e8574ee78fc7a61ec3aff070395dec409f= f#diff-f38594dcdb284279fd0fb84ffc243fb2231337517f4b3ad572bd1ae809ecb524R7 [4] = https://packaging.python.org/en/latest/specifications/platform-compatibili= ty-tags/#platform-tag