kernels 0.18.1__tar.gz → 0.18.2__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {kernels-0.18.1 → kernels-0.18.2}/Cargo.lock +4 -4
- {kernels-0.18.1 → kernels-0.18.2}/PKG-INFO +3 -2
- {kernels-0.18.1 → kernels-0.18.2}/kernels/Cargo.toml +2 -2
- {kernels-0.18.1 → kernels-0.18.2}/kernels/tests/test_digest.py +14 -1
- {kernels-0.18.1 → kernels-0.18.2}/kernels/tests/test_verify.py +14 -10
- {kernels-0.18.1 → kernels-0.18.2}/kernels/uv.lock +6 -4
- {kernels-0.18.1 → kernels-0.18.2}/kernels-common/Cargo.toml +1 -1
- {kernels-0.18.1 → kernels-0.18.2}/pyproject.toml +2 -2
- {kernels-0.18.1 → kernels-0.18.2}/src/kernels/cli/verify_signature.py +13 -2
- {kernels-0.18.1 → kernels-0.18.2}/Cargo.toml +0 -0
- {kernels-0.18.1 → kernels-0.18.2}/README.md +0 -0
- {kernels-0.18.1 → kernels-0.18.2}/kernels/README.md +0 -0
- {kernels-0.18.1 → kernels-0.18.2}/kernels/pytest.ini +0 -0
- {kernels-0.18.1 → kernels-0.18.2}/kernels/rust/config.rs +0 -0
- {kernels-0.18.1 → kernels-0.18.2}/kernels/rust/git.rs +0 -0
- {kernels-0.18.1 → kernels-0.18.2}/kernels/rust/lib.rs +0 -0
- {kernels-0.18.1 → kernels-0.18.2}/kernels/rust/lock.rs +0 -0
- {kernels-0.18.1 → kernels-0.18.2}/kernels/rust/signing.rs +0 -0
- {kernels-0.18.1 → kernels-0.18.2}/kernels/rust/version.rs +0 -0
- {kernels-0.18.1 → kernels-0.18.2}/kernels/tests/conftest.py +0 -0
- {kernels-0.18.1 → kernels-0.18.2}/kernels/tests/kernel_locking/kernels.lock +0 -0
- {kernels-0.18.1 → kernels-0.18.2}/kernels/tests/kernel_locking/pyproject.toml +0 -0
- {kernels-0.18.1 → kernels-0.18.2}/kernels/tests/layer_locking/kernels.lock +0 -0
- {kernels-0.18.1 → kernels-0.18.2}/kernels/tests/layer_locking/pyproject.toml +0 -0
- {kernels-0.18.1 → kernels-0.18.2}/kernels/tests/test_archs.py +0 -0
- {kernels-0.18.1 → kernels-0.18.2}/kernels/tests/test_basic.py +0 -0
- {kernels-0.18.1 → kernels-0.18.2}/kernels/tests/test_benchmarks.py +0 -0
- {kernels-0.18.1 → kernels-0.18.2}/kernels/tests/test_cli_benchmark.py +0 -0
- {kernels-0.18.1 → kernels-0.18.2}/kernels/tests/test_cli_cache.py +0 -0
- {kernels-0.18.1 → kernels-0.18.2}/kernels/tests/test_cli_describe_api.py +0 -0
- {kernels-0.18.1 → kernels-0.18.2}/kernels/tests/test_cli_info.py +0 -0
- {kernels-0.18.1 → kernels-0.18.2}/kernels/tests/test_cli_variants.py +0 -0
- {kernels-0.18.1 → kernels-0.18.2}/kernels/tests/test_data_config.py +0 -0
- {kernels-0.18.1 → kernels-0.18.2}/kernels/tests/test_data_digest.py +0 -0
- {kernels-0.18.1 → kernels-0.18.2}/kernels/tests/test_data_kernel_lock.py +0 -0
- {kernels-0.18.1 → kernels-0.18.2}/kernels/tests/test_data_metadata.py +0 -0
- {kernels-0.18.1 → kernels-0.18.2}/kernels/tests/test_data_version.py +0 -0
- {kernels-0.18.1 → kernels-0.18.2}/kernels/tests/test_deps.py +0 -0
- {kernels-0.18.1 → kernels-0.18.2}/kernels/tests/test_doctest.py +0 -0
- {kernels-0.18.1 → kernels-0.18.2}/kernels/tests/test_entry_points.py +0 -0
- {kernels-0.18.1 → kernels-0.18.2}/kernels/tests/test_func.py +0 -0
- {kernels-0.18.1 → kernels-0.18.2}/kernels/tests/test_importer.py +0 -0
- {kernels-0.18.1 → kernels-0.18.2}/kernels/tests/test_interval_tree.py +0 -0
- {kernels-0.18.1 → kernels-0.18.2}/kernels/tests/test_kernel_locking.py +0 -0
- {kernels-0.18.1 → kernels-0.18.2}/kernels/tests/test_layer.py +0 -0
- {kernels-0.18.1 → kernels-0.18.2}/kernels/tests/test_loaded_kernels.py +0 -0
- {kernels-0.18.1 → kernels-0.18.2}/kernels/tests/test_python_deps.py +0 -0
- {kernels-0.18.1 → kernels-0.18.2}/kernels/tests/test_resolver.py +0 -0
- {kernels-0.18.1 → kernels-0.18.2}/kernels/tests/test_status.py +0 -0
- {kernels-0.18.1 → kernels-0.18.2}/kernels/tests/test_trust_remote_code.py +0 -0
- {kernels-0.18.1 → kernels-0.18.2}/kernels/tests/test_tvm_ffi.py +0 -0
- {kernels-0.18.1 → kernels-0.18.2}/kernels/tests/test_user_agent.py +0 -0
- {kernels-0.18.1 → kernels-0.18.2}/kernels/tests/test_validate.py +0 -0
- {kernels-0.18.1 → kernels-0.18.2}/kernels/tests/test_variants.py +0 -0
- {kernels-0.18.1 → kernels-0.18.2}/kernels/tests/test_versions.py +0 -0
- {kernels-0.18.1 → kernels-0.18.2}/kernels-common/src/config/compat.rs +0 -0
- {kernels-0.18.1 → kernels-0.18.2}/kernels-common/src/config/deps.rs +0 -0
- {kernels-0.18.1 → kernels-0.18.2}/kernels-common/src/config/git_url.rs +0 -0
- {kernels-0.18.1 → kernels-0.18.2}/kernels-common/src/config/kernel_deps.rs +0 -0
- {kernels-0.18.1 → kernels-0.18.2}/kernels-common/src/config/mod.rs +0 -0
- {kernels-0.18.1 → kernels-0.18.2}/kernels-common/src/config/name.rs +0 -0
- {kernels-0.18.1 → kernels-0.18.2}/kernels-common/src/config/parse.rs +0 -0
- {kernels-0.18.1 → kernels-0.18.2}/kernels-common/src/config/v1.rs +0 -0
- {kernels-0.18.1 → kernels-0.18.2}/kernels-common/src/config/v2.rs +0 -0
- {kernels-0.18.1 → kernels-0.18.2}/kernels-common/src/config/v3.rs +0 -0
- {kernels-0.18.1 → kernels-0.18.2}/kernels-common/src/config/v4.rs +0 -0
- {kernels-0.18.1 → kernels-0.18.2}/kernels-common/src/config/v5.rs +0 -0
- {kernels-0.18.1 → kernels-0.18.2}/kernels-common/src/config/v6.rs +0 -0
- {kernels-0.18.1 → kernels-0.18.2}/kernels-common/src/digest.rs +0 -0
- {kernels-0.18.1 → kernels-0.18.2}/kernels-common/src/git.rs +0 -0
- {kernels-0.18.1 → kernels-0.18.2}/kernels-common/src/hf.rs +0 -0
- {kernels-0.18.1 → kernels-0.18.2}/kernels-common/src/lib.rs +0 -0
- {kernels-0.18.1 → kernels-0.18.2}/kernels-common/src/lock.rs +0 -0
- {kernels-0.18.1 → kernels-0.18.2}/kernels-common/src/metadata.rs +0 -0
- {kernels-0.18.1 → kernels-0.18.2}/kernels-common/src/python_dependencies.json +0 -0
- {kernels-0.18.1 → kernels-0.18.2}/kernels-common/src/signing/mod.rs +0 -0
- {kernels-0.18.1 → kernels-0.18.2}/kernels-common/src/signing/receipt.rs +0 -0
- {kernels-0.18.1 → kernels-0.18.2}/kernels-common/src/version.rs +0 -0
- {kernels-0.18.1 → kernels-0.18.2}/kernels-common/tests/data/legacy-sha-provenance.json +0 -0
- {kernels-0.18.1 → kernels-0.18.2}/src/kernels/__init__.py +0 -0
- {kernels-0.18.1 → kernels-0.18.2}/src/kernels/_rust.pyi +0 -0
- {kernels-0.18.1 → kernels-0.18.2}/src/kernels/_system.py +0 -0
- {kernels-0.18.1 → kernels-0.18.2}/src/kernels/_versions.py +0 -0
- {kernels-0.18.1 → kernels-0.18.2}/src/kernels/_windows.py +0 -0
- {kernels-0.18.1 → kernels-0.18.2}/src/kernels/archs.py +0 -0
- {kernels-0.18.1 → kernels-0.18.2}/src/kernels/backends.py +0 -0
- {kernels-0.18.1 → kernels-0.18.2}/src/kernels/benchmark.py +0 -0
- {kernels-0.18.1 → kernels-0.18.2}/src/kernels/benchmarks/__init__.py +0 -0
- {kernels-0.18.1 → kernels-0.18.2}/src/kernels/benchmarks/activation.py +0 -0
- {kernels-0.18.1 → kernels-0.18.2}/src/kernels/benchmarks/attention.py +0 -0
- {kernels-0.18.1 → kernels-0.18.2}/src/kernels/benchmarks/layer_norm.py +0 -0
- {kernels-0.18.1 → kernels-0.18.2}/src/kernels/cli/__init__.py +0 -0
- {kernels-0.18.1 → kernels-0.18.2}/src/kernels/cli/benchmark.py +0 -0
- {kernels-0.18.1 → kernels-0.18.2}/src/kernels/cli/benchmark_graphics.py +0 -0
- {kernels-0.18.1 → kernels-0.18.2}/src/kernels/cli/cache.py +0 -0
- {kernels-0.18.1 → kernels-0.18.2}/src/kernels/cli/describe_api.py +0 -0
- {kernels-0.18.1 → kernels-0.18.2}/src/kernels/cli/download.py +0 -0
- {kernels-0.18.1 → kernels-0.18.2}/src/kernels/cli/info.py +0 -0
- {kernels-0.18.1 → kernels-0.18.2}/src/kernels/cli/lock.py +0 -0
- {kernels-0.18.1 → kernels-0.18.2}/src/kernels/cli/variants.py +0 -0
- {kernels-0.18.1 → kernels-0.18.2}/src/kernels/cli/versions.py +0 -0
- {kernels-0.18.1 → kernels-0.18.2}/src/kernels/compat.py +0 -0
- {kernels-0.18.1 → kernels-0.18.2}/src/kernels/deps.py +0 -0
- {kernels-0.18.1 → kernels-0.18.2}/src/kernels/digest.py +0 -0
- {kernels-0.18.1 → kernels-0.18.2}/src/kernels/hf_hub.py +0 -0
- {kernels-0.18.1 → kernels-0.18.2}/src/kernels/importer.py +0 -0
- {kernels-0.18.1 → kernels-0.18.2}/src/kernels/install.py +0 -0
- {kernels-0.18.1 → kernels-0.18.2}/src/kernels/layer/__init__.py +0 -0
- {kernels-0.18.1 → kernels-0.18.2}/src/kernels/layer/_interval_tree.py +0 -0
- {kernels-0.18.1 → kernels-0.18.2}/src/kernels/layer/device.py +0 -0
- {kernels-0.18.1 → kernels-0.18.2}/src/kernels/layer/func.py +0 -0
- {kernels-0.18.1 → kernels-0.18.2}/src/kernels/layer/globals.py +0 -0
- {kernels-0.18.1 → kernels-0.18.2}/src/kernels/layer/inspect.py +0 -0
- {kernels-0.18.1 → kernels-0.18.2}/src/kernels/layer/kernelize.py +0 -0
- {kernels-0.18.1 → kernels-0.18.2}/src/kernels/layer/layer.py +0 -0
- {kernels-0.18.1 → kernels-0.18.2}/src/kernels/layer/mode.py +0 -0
- {kernels-0.18.1 → kernels-0.18.2}/src/kernels/layer/repos.py +0 -0
- {kernels-0.18.1 → kernels-0.18.2}/src/kernels/load.py +0 -0
- {kernels-0.18.1 → kernels-0.18.2}/src/kernels/locking.py +0 -0
- {kernels-0.18.1 → kernels-0.18.2}/src/kernels/python_depends.json +0 -0
- {kernels-0.18.1 → kernels-0.18.2}/src/kernels/python_deps.py +0 -0
- {kernels-0.18.1 → kernels-0.18.2}/src/kernels/resolver.py +0 -0
- {kernels-0.18.1 → kernels-0.18.2}/src/kernels/status.py +0 -0
- {kernels-0.18.1 → kernels-0.18.2}/src/kernels/validate.py +0 -0
- {kernels-0.18.1 → kernels-0.18.2}/src/kernels/variants.py +0 -0
- {kernels-0.18.1 → kernels-0.18.2}/src/kernels/verify.py +0 -0
|
@@ -1058,7 +1058,7 @@ dependencies = [
|
|
|
1058
1058
|
|
|
1059
1059
|
[[package]]
|
|
1060
1060
|
name = "hf-kernel-builder"
|
|
1061
|
-
version = "0.18.
|
|
1061
|
+
version = "0.18.2"
|
|
1062
1062
|
dependencies = [
|
|
1063
1063
|
"base32",
|
|
1064
1064
|
"built",
|
|
@@ -1550,7 +1550,7 @@ dependencies = [
|
|
|
1550
1550
|
|
|
1551
1551
|
[[package]]
|
|
1552
1552
|
name = "kernel-abi-check"
|
|
1553
|
-
version = "0.18.
|
|
1553
|
+
version = "0.18.2"
|
|
1554
1554
|
dependencies = [
|
|
1555
1555
|
"cpp_demangle",
|
|
1556
1556
|
"eyre",
|
|
@@ -1581,7 +1581,7 @@ dependencies = [
|
|
|
1581
1581
|
|
|
1582
1582
|
[[package]]
|
|
1583
1583
|
name = "kernels-common"
|
|
1584
|
-
version = "0.18.
|
|
1584
|
+
version = "0.18.2"
|
|
1585
1585
|
dependencies = [
|
|
1586
1586
|
"base64",
|
|
1587
1587
|
"digest",
|
|
@@ -1603,7 +1603,7 @@ dependencies = [
|
|
|
1603
1603
|
|
|
1604
1604
|
[[package]]
|
|
1605
1605
|
name = "kernels-python"
|
|
1606
|
-
version = "0.18.
|
|
1606
|
+
version = "0.18.2"
|
|
1607
1607
|
dependencies = [
|
|
1608
1608
|
"eyre",
|
|
1609
1609
|
"kernels-common",
|
|
@@ -1,10 +1,9 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: kernels
|
|
3
|
-
Version: 0.18.
|
|
3
|
+
Version: 0.18.2
|
|
4
4
|
Requires-Dist: huggingface-hub>=1.32.0
|
|
5
5
|
Requires-Dist: packaging>=20.0
|
|
6
6
|
Requires-Dist: pyyaml>=6
|
|
7
|
-
Requires-Dist: sigstore>=4,<5
|
|
8
7
|
Requires-Dist: tomli>=2.0 ; python_full_version < '3.11'
|
|
9
8
|
Requires-Dist: typing-extensions>=4.0 ; python_full_version < '3.11'
|
|
10
9
|
Requires-Dist: tomlkit>=0.13.3
|
|
@@ -18,11 +17,13 @@ Requires-Dist: apache-tvm-ffi>=0.1.9,<0.2.0 ; extra == 'curated'
|
|
|
18
17
|
Requires-Dist: einops ; extra == 'curated-xpu'
|
|
19
18
|
Requires-Dist: apache-tvm-ffi>=0.1.9,<0.2.0 ; extra == 'curated-xpu'
|
|
20
19
|
Requires-Dist: hf-doc-builder ; extra == 'docs'
|
|
20
|
+
Requires-Dist: sigstore>=4,<5 ; extra == 'sigstore'
|
|
21
21
|
Requires-Dist: torch ; extra == 'torch'
|
|
22
22
|
Provides-Extra: benchmark
|
|
23
23
|
Provides-Extra: curated
|
|
24
24
|
Provides-Extra: curated-xpu
|
|
25
25
|
Provides-Extra: docs
|
|
26
|
+
Provides-Extra: sigstore
|
|
26
27
|
Provides-Extra: torch
|
|
27
28
|
Summary: Download compute kernels
|
|
28
29
|
Home-Page: https://github.com/huggingface/kernels
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
[package]
|
|
2
2
|
name = "kernels-python"
|
|
3
|
-
version = "0.18.
|
|
3
|
+
version = "0.18.2"
|
|
4
4
|
edition = "2024"
|
|
5
5
|
description = "Kernels data structures (Python bindings)"
|
|
6
6
|
homepage = "https://github.com/huggingface/kernels"
|
|
@@ -20,4 +20,4 @@ serde_json = "1"
|
|
|
20
20
|
|
|
21
21
|
[dependencies.kernels-common]
|
|
22
22
|
path = "../kernels-common"
|
|
23
|
-
version = "0.18.
|
|
23
|
+
version = "0.18.2"
|
|
@@ -223,13 +223,26 @@ def test_digest_verification_does_not_need_sigstore():
|
|
|
223
223
|
"import sys\n"
|
|
224
224
|
# A `None` entry makes importing the module fail.
|
|
225
225
|
"sys.modules['sigstore'] = None\n"
|
|
226
|
-
"import kernels.digest, kernels.validate\n"
|
|
226
|
+
"import kernels.cli, kernels.digest, kernels.validate\n"
|
|
227
227
|
"from kernels.compat import has_sigstore\n"
|
|
228
228
|
"assert not has_sigstore\n"
|
|
229
229
|
)
|
|
230
230
|
subprocess.run([sys.executable, "-c", script], check=True)
|
|
231
231
|
|
|
232
232
|
|
|
233
|
+
def test_verify_signature_command_needs_sigstore():
|
|
234
|
+
"""Without `sigstore`, `kernels verify-signature` must fail with an actionable message."""
|
|
235
|
+
script = (
|
|
236
|
+
"import argparse, sys\n"
|
|
237
|
+
"sys.modules['sigstore'] = None\n"
|
|
238
|
+
"from kernels.cli.verify_signature import verify_signature\n"
|
|
239
|
+
"verify_signature(argparse.Namespace())\n"
|
|
240
|
+
)
|
|
241
|
+
result = subprocess.run([sys.executable, "-c", script], capture_output=True, text=True)
|
|
242
|
+
assert result.returncode == 1
|
|
243
|
+
assert 'pip install "kernels[sigstore]"' in result.stderr
|
|
244
|
+
|
|
245
|
+
|
|
233
246
|
ALL_RESULTS = [
|
|
234
247
|
DigestVerificationResult.Success(),
|
|
235
248
|
DigestVerificationResult.DigestMissing(),
|
|
@@ -3,16 +3,20 @@ from dataclasses import is_dataclass
|
|
|
3
3
|
from pathlib import Path
|
|
4
4
|
|
|
5
5
|
import pytest
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
from
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
from kernels
|
|
14
|
-
from kernels.
|
|
15
|
-
from kernels.
|
|
6
|
+
|
|
7
|
+
# sigstore is an optional dependency.
|
|
8
|
+
pytest.importorskip("sigstore")
|
|
9
|
+
|
|
10
|
+
from sigstore.verify import policy # noqa: E402
|
|
11
|
+
|
|
12
|
+
import kernels.verify as verify_module # noqa: E402
|
|
13
|
+
from kernels import install_kernel # noqa: E402
|
|
14
|
+
from kernels._rust import DigestViolation, KernelLocation, Metadata, Oid, SignatureReceiptStore # noqa: E402
|
|
15
|
+
from kernels._versions import resolve_revision_or_version # noqa: E402
|
|
16
|
+
from kernels.digest import DigestVerificationResult, verify_digest # noqa: E402
|
|
17
|
+
from kernels.hf_hub import _get_cache_dir, _get_hf_api # noqa: E402
|
|
18
|
+
from kernels.resolver import _BYTECODE_IGNORE_PATTERNS # noqa: E402
|
|
19
|
+
from kernels.verify import SignatureVerificationResult, verify_signature # noqa: E402
|
|
16
20
|
|
|
17
21
|
TEST_POLICY: policy.VerificationPolicy = policy.Identity(
|
|
18
22
|
identity="me@danieldk.eu", issuer="https://github.com/login/oauth"
|
|
@@ -1457,13 +1457,12 @@ wheels = [
|
|
|
1457
1457
|
|
|
1458
1458
|
[[package]]
|
|
1459
1459
|
name = "kernels"
|
|
1460
|
-
version = "0.18.
|
|
1460
|
+
version = "0.18.2"
|
|
1461
1461
|
source = { editable = "." }
|
|
1462
1462
|
dependencies = [
|
|
1463
1463
|
{ name = "huggingface-hub" },
|
|
1464
1464
|
{ name = "packaging" },
|
|
1465
1465
|
{ name = "pyyaml" },
|
|
1466
|
-
{ name = "sigstore" },
|
|
1467
1466
|
{ name = "tomli", marker = "python_full_version < '3.11'" },
|
|
1468
1467
|
{ name = "tomlkit" },
|
|
1469
1468
|
{ name = "typing-extensions", marker = "python_full_version < '3.11'" },
|
|
@@ -1491,6 +1490,9 @@ curated-xpu = [
|
|
|
1491
1490
|
docs = [
|
|
1492
1491
|
{ name = "hf-doc-builder" },
|
|
1493
1492
|
]
|
|
1493
|
+
sigstore = [
|
|
1494
|
+
{ name = "sigstore" },
|
|
1495
|
+
]
|
|
1494
1496
|
torch = [
|
|
1495
1497
|
{ name = "torch" },
|
|
1496
1498
|
]
|
|
@@ -1522,7 +1524,7 @@ requires-dist = [
|
|
|
1522
1524
|
{ name = "nvidia-cutlass-dsl", marker = "extra == 'curated'" },
|
|
1523
1525
|
{ name = "packaging", specifier = ">=20.0" },
|
|
1524
1526
|
{ name = "pyyaml", specifier = ">=6" },
|
|
1525
|
-
{ name = "sigstore", specifier = ">=4,<5" },
|
|
1527
|
+
{ name = "sigstore", marker = "extra == 'sigstore'", specifier = ">=4,<5" },
|
|
1526
1528
|
{ name = "tabulate", marker = "extra == 'benchmark'", specifier = ">=0.9.0" },
|
|
1527
1529
|
{ name = "tomli", marker = "python_full_version < '3.11'", specifier = ">=2.0" },
|
|
1528
1530
|
{ name = "tomlkit", specifier = ">=0.13.3" },
|
|
@@ -1530,7 +1532,7 @@ requires-dist = [
|
|
|
1530
1532
|
{ name = "torch", marker = "extra == 'torch'" },
|
|
1531
1533
|
{ name = "typing-extensions", marker = "python_full_version < '3.11'", specifier = ">=4.0" },
|
|
1532
1534
|
]
|
|
1533
|
-
provides-extras = ["benchmark", "torch", "curated", "curated-xpu", "docs"]
|
|
1535
|
+
provides-extras = ["benchmark", "sigstore", "torch", "curated", "curated-xpu", "docs"]
|
|
1534
1536
|
|
|
1535
1537
|
[package.metadata.requires-dev]
|
|
1536
1538
|
dev = [
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
[project]
|
|
2
2
|
name = "kernels"
|
|
3
|
-
version = "0.18.
|
|
3
|
+
version = "0.18.2"
|
|
4
4
|
description = "Download compute kernels"
|
|
5
5
|
authors = [
|
|
6
6
|
{ name = "Daniel de Kok", email = "daniel@huggingface.co" },
|
|
@@ -13,7 +13,6 @@ dependencies = [
|
|
|
13
13
|
"huggingface-hub>=1.32.0",
|
|
14
14
|
"packaging>=20.0",
|
|
15
15
|
"pyyaml>=6",
|
|
16
|
-
"sigstore>=4,<5",
|
|
17
16
|
"tomli>=2.0; python_version<'3.11'",
|
|
18
17
|
"typing-extensions>=4.0; python_version<'3.11'",
|
|
19
18
|
"tomlkit>=0.13.3",
|
|
@@ -45,6 +44,7 @@ benchmark = [
|
|
|
45
44
|
"tabulate>=0.9.0",
|
|
46
45
|
"torch",
|
|
47
46
|
]
|
|
47
|
+
sigstore = ["sigstore>=4,<5"]
|
|
48
48
|
torch = ["torch"]
|
|
49
49
|
curated = [
|
|
50
50
|
"nvidia-cutlass-dsl",
|
|
@@ -10,14 +10,25 @@ else:
|
|
|
10
10
|
|
|
11
11
|
from kernels._rust import KernelLocation, Metadata
|
|
12
12
|
from kernels._versions import resolve_revision_or_version
|
|
13
|
+
from kernels.compat import has_sigstore
|
|
13
14
|
from kernels.digest import DigestVerificationResult, verify_digest
|
|
14
15
|
from kernels.install import install_kernel, install_kernel_all_variants
|
|
15
16
|
from kernels.variants import get_variants_local
|
|
16
|
-
from kernels.verify import SignatureVerificationResult
|
|
17
|
-
from kernels.verify import verify_signature as verify_variant_signature
|
|
18
17
|
|
|
19
18
|
|
|
20
19
|
def verify_signature(args: argparse.Namespace) -> None:
|
|
20
|
+
if not has_sigstore:
|
|
21
|
+
print(
|
|
22
|
+
"❌ Verifying signatures requires the `sigstore` package, "
|
|
23
|
+
'install it with: pip install "kernels[sigstore]"',
|
|
24
|
+
file=sys.stderr,
|
|
25
|
+
)
|
|
26
|
+
sys.exit(1)
|
|
27
|
+
|
|
28
|
+
# Lazily import optional dependency.
|
|
29
|
+
from kernels.verify import SignatureVerificationResult
|
|
30
|
+
from kernels.verify import verify_signature as verify_variant_signature
|
|
31
|
+
|
|
21
32
|
revision = resolve_revision_or_version(
|
|
22
33
|
args.repo_id,
|
|
23
34
|
revision=None,
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|