From 6f6fe571ed09065ec141f1e486434615d7f754c0 Mon Sep 17 00:00:00 2001 From: Martin Weinelt Date: Wed, 4 Feb 2026 02:06:13 +0100 Subject: [PATCH] python3Packages.ai-edge-litert: 2.1.0 -> 2.1.2 https://github.com/google-ai-edge/LiteRT/releases/tag/v2.1.1 https://github.com/google-ai-edge/LiteRT/releases/tag/v2.1.2 --- .../python-modules/ai-edge-litert/default.nix | 3 + .../ai-edge-litert/release.json | 60 +++++++++++-------- .../python-modules/ai-edge-litert/update.py | 31 +++++++--- 3 files changed, 62 insertions(+), 32 deletions(-) diff --git a/pkgs/development/python-modules/ai-edge-litert/default.nix b/pkgs/development/python-modules/ai-edge-litert/default.nix index 7a9e3c35bf3f..58be026d1134 100644 --- a/pkgs/development/python-modules/ai-edge-litert/default.nix +++ b/pkgs/development/python-modules/ai-edge-litert/default.nix @@ -77,11 +77,14 @@ buildPythonPackage { passthru.updateScript = ./update.py; meta = { + broken = stdenv.isDarwin; # elftools.common.exceptions.ELFError: Magic number does not match + changelog = "https://github.com/google-ai-edge/LiteRT/releases/tag/v${release.version}"; description = "LiteRT is for mobile and embedded devices"; downloadPage = "https://github.com/google-ai-edge/LiteRT"; homepage = "https://www.tensorflow.org/lite/"; license = lib.licenses.asl20; platforms = lib.attrNames platforms; + sourceProvenance = [ lib.sourceTypes.binaryNativeCode ]; maintainers = with lib.maintainers; [ hexa ]; }; } diff --git a/pkgs/development/python-modules/ai-edge-litert/release.json b/pkgs/development/python-modules/ai-edge-litert/release.json index d21b94acfeb9..ba9bdbe2b860 100644 --- a/pkgs/development/python-modules/ai-edge-litert/release.json +++ b/pkgs/development/python-modules/ai-edge-litert/release.json @@ -1,48 +1,58 @@ { - "version": "2.1.0", + "version": "2.1.2", "src": { - "aarch64-linux": { + "aarch64-darwin": { "3.10": { - "url": "https://files.pythonhosted.org/packages/a5/7a/6ea77fe405d76dcd1a95fceccd1018293603f551bf3645a382ef1fd470eb/ai_edge_litert-2.1.0-cp310-cp310-manylinux_2_27_aarch64.whl", - "hash": "sha256-eAZzWROFxGRqqCs42qLu2IvCY0bhqvvp0Nt/BJPWq1Q=" + "url": "https://files.pythonhosted.org/packages/6c/a5/0fbc63f8e076008481bc21af0d5085501555757194c7c1daaf2542cd7a82/ai_edge_litert-2.1.2-cp310-cp310-macosx_12_0_arm64.whl", + "hash": "sha256-Cn3V07eHS6ZqOCsmG//io9nvdyuEH0eqvtCYLWAl4OU=" }, "3.11": { - "url": "https://files.pythonhosted.org/packages/82/e7/73fff29c7a95a4f35953a027bdb174dd9ac08adbe8c2c322dee26d8f1d3f/ai_edge_litert-2.1.0-cp311-cp311-manylinux_2_27_aarch64.whl", - "hash": "sha256-krJNJQf8z1aAwm5xLBViZtz2Sokt85Id1C9KfSZSdGI=" + "url": "https://files.pythonhosted.org/packages/dd/f9/ba44382f353a2b845e9b6242750a7d56b0054ab6c6bcf53d20823bae58e4/ai_edge_litert-2.1.2-cp311-cp311-macosx_12_0_arm64.whl", + "hash": "sha256-B8P0QiEt4YWd3bzVH/kPL8swSNlAob3b1vE7BOWnkIM=" }, "3.12": { - "url": "https://files.pythonhosted.org/packages/61/f6/1aeccf3034f95ec680a2e25f33582d4adf02c30b3462357511d529a2cad2/ai_edge_litert-2.1.0-cp312-cp312-manylinux_2_27_aarch64.whl", - "hash": "sha256-4Gt9sF08WCT9S1biMY9oWN73GHgM2QMYYmtKqY23WDw=" + "url": "https://files.pythonhosted.org/packages/6d/59/5f65a091340c6abf26c66a11fc0c8ecbd264e93ad7293aaf1f1b6892cc00/ai_edge_litert-2.1.2-cp312-cp312-macosx_12_0_arm64.whl", + "hash": "sha256-IMljV6fGFgDn7JSowTH+5MCplBMuXm5DbHx+k9PzGyI=" }, "3.13": { - "url": "https://files.pythonhosted.org/packages/9e/b2/dde0f8043eb26f237c5958e44334d62fa90496fa51438f9c5179dec72d4c/ai_edge_litert-2.1.0-cp313-cp313-manylinux_2_27_aarch64.whl", - "hash": "sha256-eoB6MjbIz1ZeIxtuwzG+zjo/WhfDwl+I8+N8/oZo+NA=" + "url": "https://files.pythonhosted.org/packages/a0/c3/c004708dc361609e76788e2e0a46f598bb523fc301144e483121818f8798/ai_edge_litert-2.1.2-cp313-cp313-macosx_12_0_arm64.whl", + "hash": "sha256-U7xyFjinSb38D1vOkCMT7GmHHgUQiTtWPuc/GaFatpA=" + } + }, + "aarch64-linux": { + "3.10": { + "url": "https://files.pythonhosted.org/packages/3e/50/c55cc44c71fce9ef9a567928cdb80f03719b4c5b8309cceb8fad8f549e52/ai_edge_litert-2.1.2-cp310-cp310-manylinux_2_27_aarch64.whl", + "hash": "sha256-FkQ1vHqzQmsMI/RzK9Ti649J093hMkkB3KXXScxlqck=" }, - "3.9": { - "url": "https://files.pythonhosted.org/packages/30/8b/531b230a5377b2253eff8235f10e72489bc207f7e5ed6e531670495e4fd4/ai_edge_litert-2.1.0-cp39-cp39-manylinux_2_27_aarch64.whl", - "hash": "sha256-qe3jwpMVGnSt+hK6yLjOh+wB3Fhuw86hIqxxRlDIQb8=" + "3.11": { + "url": "https://files.pythonhosted.org/packages/ee/5a/57d9b8967fa5a2f3055ad3e7666446c8d2271446319e7f17c897b151544c/ai_edge_litert-2.1.2-cp311-cp311-manylinux_2_27_aarch64.whl", + "hash": "sha256-fcSvxLZ3l+d9h541rVWOYPdGvnweYWpmU70svx/++a0=" + }, + "3.12": { + "url": "https://files.pythonhosted.org/packages/7e/36/8ff07084091272db4df8de3859149be3913a6eaf2939575bb4200379b808/ai_edge_litert-2.1.2-cp312-cp312-manylinux_2_27_aarch64.whl", + "hash": "sha256-G0EjaJgLQEqgUdCUBavUc9OhUTDbAwk40mlm8aHnxBM=" + }, + "3.13": { + "url": "https://files.pythonhosted.org/packages/b8/ed/6763310cb4ea2d2e6cc61184127467e4c277ebbb8c49130eb3dfc6c1bb5c/ai_edge_litert-2.1.2-cp313-cp313-manylinux_2_27_aarch64.whl", + "hash": "sha256-bXYO9Rxy9Wswf6bxZ1pi+HClRlFbHaDA8oLKFf8YNsU=" } }, "x86_64-linux": { "3.10": { - "url": "https://files.pythonhosted.org/packages/20/4a/5f7848c8d21df432f44ebd36097406f66d98762295a4f11239f1d913f347/ai_edge_litert-2.1.0-cp310-cp310-manylinux_2_27_x86_64.whl", - "hash": "sha256-0FSis6ZeLCtFcahO0zul2ojp0Xhy/YdTwXc/+3g1HLE=" + "url": "https://files.pythonhosted.org/packages/c6/35/52fae12e74e9ee8c8e4e6a99cf478f3379e10a0a272e717b7915e2fa8922/ai_edge_litert-2.1.2-cp310-cp310-manylinux_2_27_x86_64.whl", + "hash": "sha256-5UyKkAbMvkNaG0zZGVP/yb6kHkLXvohsqAo/MZLN0ww=" }, "3.11": { - "url": "https://files.pythonhosted.org/packages/0d/d1/032cd1300a9b40da97e9f93781b3c2c5f104c22157695a3bb5bd5531821f/ai_edge_litert-2.1.0-cp311-cp311-manylinux_2_27_x86_64.whl", - "hash": "sha256-3PfXk3SrRnzsGfLtrdO+skOtF4M/jFrVm/dnEr8USbE=" + "url": "https://files.pythonhosted.org/packages/6a/a8/c8024c9657a76e3589cf2b8b21cbccdef0b9a64b74d98eebcabbbdfaeb7a/ai_edge_litert-2.1.2-cp311-cp311-manylinux_2_27_x86_64.whl", + "hash": "sha256-s/87Et9F38VAk04zvemvR0sLTBLDu2ESslGqrk0pMKA=" }, "3.12": { - "url": "https://files.pythonhosted.org/packages/bb/16/0aface4ec3554304487d6436938684023c054828b4334f114f7db303b27a/ai_edge_litert-2.1.0-cp312-cp312-manylinux_2_27_x86_64.whl", - "hash": "sha256-SNfm6BuqNYHmtIkgpzq4lzAcxIqluJq9012fBt9jLUo=" + "url": "https://files.pythonhosted.org/packages/0f/05/072e76dfa2bfd6aa4c5751f1b6d5ad11f74bba70177ad4c973b49678d4c2/ai_edge_litert-2.1.2-cp312-cp312-manylinux_2_27_x86_64.whl", + "hash": "sha256-Z9tt58cpu+WjHCCtxXPOR7iqbqS2vP7gq3f/GlHiDy4=" }, "3.13": { - "url": "https://files.pythonhosted.org/packages/96/c7/53b1f2627dbb0b307c1637e5f2cdbdc5a5f4ffecbebe75c8977d46590b6a/ai_edge_litert-2.1.0-cp313-cp313-manylinux_2_27_x86_64.whl", - "hash": "sha256-QeJJDL8dJmZj1FEllzEXC4Gqpwt9/vbXGIaX5lxxLJU=" - }, - "3.9": { - "url": "https://files.pythonhosted.org/packages/85/b7/efd39c318ae7f73bd3de247a93501f1d748e60979ecd97c794e7a4a1d671/ai_edge_litert-2.1.0-cp39-cp39-manylinux_2_27_x86_64.whl", - "hash": "sha256-QicA/OOs8HK8DVjXhj7BZjHwix2t3vyHwAjebkzaMWc=" + "url": "https://files.pythonhosted.org/packages/68/a3/e2bd759dc0fd3895b778b0480e6cae37bf5d4e50b611cb6a16d598992d02/ai_edge_litert-2.1.2-cp313-cp313-manylinux_2_27_x86_64.whl", + "hash": "sha256-vPlqDivXgbThJxVeOvM4BhdxnqidQbZfwhDRA53PpQ4=" } } } diff --git a/pkgs/development/python-modules/ai-edge-litert/update.py b/pkgs/development/python-modules/ai-edge-litert/update.py index e792c3a06443..84f7195c4f78 100755 --- a/pkgs/development/python-modules/ai-edge-litert/update.py +++ b/pkgs/development/python-modules/ai-edge-litert/update.py @@ -6,7 +6,7 @@ import httpx import re import subprocess from pathlib import Path -from typing import Dict +from typing import Dict, Optional from collections import defaultdict @@ -29,19 +29,33 @@ def get_hash(url) -> str: return sri_hash -def get_platform(platform: str) -> str: - result = re.match(r"^(?Pmacosx|manylinux)[\d+_]+(?Px86_64|aarch64)", platform) +def get_platform(platform: str) -> Optional[str]: + result = re.match( + r"^(?Pmacosx|manylinux|win)(?:)[\d_]+(?Px86_64|aarch64|amd64|arm64)", + platform, + ) if not result: raise RuntimeError(f"Unable to parse platform string: {platform}") - target = { + platform = result.group("platform") + if platform == "win": + return + + system = { "macosx": "darwin", "manylinux": "linux", - }[result.group("target")] + }[platform] - arch = result.group("arch") + try: + arch = { + "amd64": "x86_64", + "arm64": "aarch64", + }[result.group("arch")] + except KeyError: + arch = result.group("arch") + + return f"{arch}-{system}" - return f"{arch}-{target}" def get_python_version(python: str) -> str: result = re.match(r"^cp(?P\d)(?P\d+)$", python) @@ -84,6 +98,9 @@ def main(package: str): raise RuntimeError(f"Unable to disect wheel filename: {filename}") platform = get_platform(result.group("platform")) + if not platform: + continue + python_version = get_python_version(release["python_version"]) out["src"][platform][python_version] = {