Skip to main content

MDescriptor

MDescriptor is a batch-oriented periodic atomic-descriptor library. The numerical kernels are implemented in C++17 and all Python descriptors share one input/result/lifecycle contract.

MDescriptor 是面向批量周期结构的原子描述符库。数值核心使用 C++17;所有 Python 描述符共享统一的输入、结果和生命周期契约。

Layout / 布局

The public namespace is intentionally small:

src/mdescriptor/             installable package
src/mdescriptor/core/         Descriptor, StructureBatch, DescriptorResult
src/mdescriptor/descriptors/
  standalone/                 no model required (ACE, matrices/, many_body/, local/, rotational/)
  model_backed/               graph seam plus NEP, DPA4, DPA4C
src/mdescriptor/models/assets/ packaged, hash-verified model resources
tests/golden/              descriptor-owned, benchmark-independent accuracy fixtures
docs/numerical-baselines.md  static-golden and external-runtime oracle inventory
scripts/benchmarking/      controlled local benchmark runners
benchmarks/                local benchmark snapshots (ignored except for tracked oracles)
benchmarks/_legacy_oracles/ pinned independent upstream oracle adapters

standalone descriptors never require a model file. model_backed descriptors always resolve a model resource (a packaged default or an explicit model= path). There are no network downloads or implicit model discovery.

standalone 中的描述符不需要模型文件;model_backed 中的 NEP、DPA4、DPA4C 始终解析模型资源(内置默认模型或显式 model= 路径)。不会联网下载,也不会 扫描目录自动发现模型。

Installation / 安装

The base package requires Python 3.10+, NumPy and array-api-compat. ASE is optional and is only needed for StructureBatch.from_ase or direct ASE input. Sparse output is provided as SciPy CSR by the optional sparse extra.

基础包需要 Python 3.10+、NumPy 和 array-api-compat。ASE 只在使用 StructureBatch.from_ase 或直接传入 ASE 对象时需要;稀疏输出由可选的 sparse extra 提供。

python -m pip install .
python -m pip install ".[ase]"
python -m pip install ".[sparse]"

DPA4 and DPA4C are CPU-only implementations. Their official .pt checkpoints are parsed by the bundled restricted NumPy reader without importing or installing Torch; the supported default graphs run through the C++17/OpenMP backend and specialised configurations retain the NumPy fallback. No network model download is performed.

可选的外部数值对照固定使用 deepmd-kit==3.2.0

python -m pip install ".[reference-deepmd]"
python -m pytest -m deepmd tests/external_reference/test_deepmd.py

该对照同时覆盖周期和非周期输入;非周期帧按 DeepMD 的 cells=None 语义传入。 tests/golden/dpa4* 的 expected output(包括非周期行)也由该外部 evaluator 生成, manifest 记录了 evaluator 脚本、模型 hash 和 deepmd-kit 版本;运行时仍只加载已 提交的 NPZ,不要求安装 DeepMD。

所有 28 个描述符都登记在数值基线清单,并都有外部 静态 golden:7 个沿用独立上游/source NPZ,另外 21 个在对应目录的 external_manifest.json 中保存固定版本 provider 生成的数值。默认测试只依赖提交的 fixture;外部 provider 缺失或版本漂移会使 reference job 失败,而不会静默跳过。

性能说明:DPA4 native 路径现在使用固定大小分块的 SGEMM、可复用的计算工作区, 并只为每条边计算一次 attention logit;DPA4C 的类型对 MLP 采用每个 calculator 实例独立的惰性缓存。OpenBLAS 仅作为构建依赖,官方 wheel 会内置 prefixed 的 OpenBLAS 及其运行时闭包和许可文件,安装后不需要 scipy-openblas32、Torch 或其他新增运行时依赖。大批量独立结构按结构分块消费,以控制峰值内存。

本地可复现实测(脚本默认 2 次预热、5 次稳态;基线为提交 334e159)可用 以下命令生成完整 JSON 报告;报告同时记录构造、首次调用、p95、线程扫描、RSS 和 profiling 构建中的私有阶段计时:

python scripts/benchmark_dpa_native.py \
  --descriptor DPA4 --dataset carbon_dataset_pbc --limit-frames 50 \
  --threads 1,4,32 --output /tmp/dpa4-native.json

当前 Linux 主机的候选测量中,DPA4 的 41 原子小批 median 约为 0.47 s(1 线程)和 0.30 s(32 线程);50 帧/3200 原子单次吞吐约为 57.8 s(1 线程) 和 21.6 s(32 线程)。这些数字用于同机 A/B 门禁,不代表跨机器性能保证。

Input contract / 输入契约

import numpy as np
from mdescriptor import StructureBatch

batch = StructureBatch(
    numbers=np.array([1, 8], dtype=np.int32),
    positions=np.array([[0., 0., 0.], [1., 0., 0.]]),
    cells=np.eye(3, dtype=np.float64)[None] * 12,
    pbc=np.ones((1, 3), dtype=np.int32),
    offsets=np.array([0, 2], dtype=np.int64),
    ids=("water-0",),
)

StructureBatch takes an owned, read-only snapshot of its contiguous arrays and validates integer fields before narrowing, finite positions/cells, nonsingular cells, positive atomic numbers, monotonic offsets and fully periodic pbc == (1, 1, 1). ASE conversion is available through StructureBatch.from_ase(...).

Descriptor API / 描述符 API

Algorithm classes live under mdescriptor.descriptors and use canonical names:

from mdescriptor.descriptors import SOAP

soap = SOAP(species=[1, 8], r_cut=4.5, n_max=4, l_max=3, average="off")
result = soap.compute(batch)

assert result.level == "atom"
assert result.values.shape == (batch.atoms, soap.feature_count)
assert len(result.labels) == result.values.shape[1]

with SOAP(species=[1, 8], r_cut=4.5, n_max=2, l_max=2) as descriptor:
    result = descriptor.compute(batch)

ACE (Atomic Cluster Expansion) is available as a standalone atom-level descriptor. Its public options mirror the standard ACE1.jl Utils.rpi_basis path and accept atomic numbers or chemical symbols:

from mdescriptor.descriptors import ACE

ace = ACE(species=["H", "O"], N=3, maxdeg=8, rcut=5.0)
result = ace.compute(batch)

Every descriptor has idempotent close(), a closed property and synchronous context-manager support. Computing after close raises ClosedDescriptorError. Instances are synchronous and not promised to be thread-safe.

每个描述符都提供幂等 close()closed 属性和同步上下文管理器;关闭后计算 会抛出 ClosedDescriptorError。实例是同步的,不承诺线程安全。

DescriptorResult contains values, level (atom, structure, or pair), structure_ids, row offsets, stable labels, JSON-safe metadata, per-row samples, and feature_count. The descriptor itself also retains the latest JSON-safe metadata and its configuration after close(). The standard shapes are (N, F), (S, F), and (P, F) for atom, structure and pair outputs respectively. Result arrays are owned snapshots and exposed read-only.

Supported descriptors / 支持的描述符

The built-in registry currently provides 28 descriptors. None means no model file is needed; Optional means a model can be supplied (as with MTP); and Required means the descriptor always resolves a local model resource. See the full descriptor inventory for parameters, capabilities and backend details.

内置注册表目前提供 28 个描述符。None 表示不需要模型文件;Optional 表示 可以提供模型(例如 MTP);Required 表示描述符始终解析本地模型资源。参数、 能力和后端详情请参阅完整描述符清单

Descriptor / 描述符 Category / 类型 Output / 输出 Model / 模型
SOAP Local / 局部 Structure / 结构 None
SOAPTurbo Local / 局部 Atom / 原子 None
ACSF Local / 局部 Atom / 原子 None
ACE Local / 局部 Atom / 原子 None
CoulombMatrix Matrix / 矩阵 Structure / 结构 None
SineMatrix Matrix / 矩阵 Structure / 结构 None
EwaldSumMatrix Matrix / 矩阵 Structure / 结构 None
MBTR Many-body / 多体 Structure / 结构 None
LMBTR Many-body / 多体 Atom / 原子 None
ValleOganov Many-body / 多体 Structure / 结构 None
AtomicComposition Local / 局部 Structure / 结构 None
NeighborList Local / 局部 Pair / 原子对 None
SortedDistances Local / 局部 Atom / 原子 None
SphericalExpansion Local / 局部 Atom / 原子 None
SphericalExpansionByPair Local / 局部 Pair / 原子对 None
SoapRadialSpectrum Local / 局部 Atom / 原子 None
SoapPowerSpectrum Local / 局部 Atom / 原子 None
LodeSphericalExpansion Local / 局部 Atom / 原子 None
EAD Rotational / 旋转 Atom / 原子 None
SO3 Rotational / 旋转 Atom / 原子 None
SO4 Rotational / 旋转 Atom / 原子 None
SNAP Rotational / 旋转 Atom / 原子 None
LBispectrum Rotational / 旋转 Atom / 原子 None
MTP Local / 局部 Atom / 原子 Optional
C00PSMLFF Local / 局部 Atom / 原子 None
NEP Model-backed / 模型 Atom / 原子 Required
DPA4 Model-backed / 模型 Atom / 原子 Required
DPA4C Model-backed / 模型 Atom / 原子 Required

Registry / 注册表

Built-ins come from one explicit immutable specification list. Imports are lazy and no decorator or filesystem scan is used.

import mdescriptor
from mdescriptor.descriptors import SOAP

print(mdescriptor.list_descriptors())
metadata = mdescriptor.describe_descriptor("SOAP")
runtime = mdescriptor.get_runtime_info()
soap = SOAP(species=[1, 8], r_cut=4.5, n_max=2, l_max=2)
rebuilt = mdescriptor.create_descriptor(soap.configuration)

child = mdescriptor.DescriptorRegistry(parent=mdescriptor.builtin_registry)
child.register(my_spec)

The built-in list separates AssetPolicy.NONE, OPTIONAL (for example MTP potentials), and REQUIRED (NEP/DPA4/DPA4C). The root package exposes stable contracts, registry functions and errors only; algorithm implementations are not re-exported from the root. describe_descriptor(name) reads static, JSON-safe GUI metadata from the registry without constructing a descriptor or resolving a model. get_runtime_info() reports the package and contract schema versions, including result_schema_version.

Model resources / 模型资源

ModelResource, ModelResolver, LoadedModel and ModelSession are the shared model-resource seam. Resolution is explicit, local and checksum-aware:

from pathlib import Path
from mdescriptor.descriptors import DPA4
from mdescriptor import ExecutionOptions

dpa4 = DPA4(
    model=Path("/path/to/official-checkpoint.pt"),
    execution=ExecutionOptions(device="cpu"),
)
result = dpa4.compute(batch)

For GUI configuration JSON, a model parameter may be an explicit path string or the tagged object returned by ModelResource.to_dict(); the latter is used for named/checksummed resources.

The DPA4/DPA4C checkpoint readers and NumPy fallback path remain isolated vendor adapters. The default inference graphs are lowered into the private mdescriptor._native C++17/OpenMP extension.

Development / 开发

.venv/bin/python -m pip install -e . --no-build-isolation
.venv/bin/python -m pytest --import-mode=importlib tests -q
.venv/bin/python -m pytest --cov=mdescriptor --cov-report=term-missing tests

.venv/bin/cmake -S cpp/tests -B build/cpp-tests -DCMAKE_BUILD_TYPE=Release
.venv/bin/cmake --build build/cpp-tests --config Release
.venv/bin/ctest --test-dir build/cpp-tests -C Release --output-on-failure

Coverage excludes the isolated vendored DPA implementation and enforces 75% branch coverage for project-owned Python code. Tests marked timing record repeatable timing samples but intentionally do not impose a runner-dependent speedup threshold; controlled performance reports are produced by scripts/run_benchmark.py.

The extension is private (mdescriptor._native). C++ shared math and batch helpers live in named headers under cpp/include/mdescriptor/detail/.

MDescriptor is licensed under the GNU General Public License v3.0; see LICENSE.

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

mdescriptor-0.2.4.tar.gz (26.4 MB view details)

Uploaded Source

Built Distributions

If you're not sure about the file name format, learn more about wheel file names.

mdescriptor-0.2.4-cp314-cp314-win_amd64.whl (33.7 MB view details)

Uploaded CPython 3.14Windows x86-64

mdescriptor-0.2.4-cp314-cp314-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl (35.4 MB view details)

Uploaded CPython 3.14manylinux: glibc 2.27+ x86-64manylinux: glibc 2.28+ x86-64

mdescriptor-0.2.4-cp314-cp314-macosx_11_0_arm64.whl (33.2 MB view details)

Uploaded CPython 3.14macOS 11.0+ ARM64

mdescriptor-0.2.4-cp313-cp313-win_amd64.whl (33.6 MB view details)

Uploaded CPython 3.13Windows x86-64

mdescriptor-0.2.4-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl (35.4 MB view details)

Uploaded CPython 3.13manylinux: glibc 2.27+ x86-64manylinux: glibc 2.28+ x86-64

mdescriptor-0.2.4-cp313-cp313-macosx_11_0_arm64.whl (33.2 MB view details)

Uploaded CPython 3.13macOS 11.0+ ARM64

mdescriptor-0.2.4-cp312-cp312-win_amd64.whl (33.6 MB view details)

Uploaded CPython 3.12Windows x86-64

mdescriptor-0.2.4-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl (35.4 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.27+ x86-64manylinux: glibc 2.28+ x86-64

mdescriptor-0.2.4-cp312-cp312-macosx_11_0_arm64.whl (33.2 MB view details)

Uploaded CPython 3.12macOS 11.0+ ARM64

mdescriptor-0.2.4-cp311-cp311-win_amd64.whl (33.6 MB view details)

Uploaded CPython 3.11Windows x86-64

mdescriptor-0.2.4-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl (35.4 MB view details)

Uploaded CPython 3.11manylinux: glibc 2.27+ x86-64manylinux: glibc 2.28+ x86-64

mdescriptor-0.2.4-cp311-cp311-macosx_11_0_arm64.whl (33.2 MB view details)

Uploaded CPython 3.11macOS 11.0+ ARM64

mdescriptor-0.2.4-cp310-cp310-win_amd64.whl (33.6 MB view details)

Uploaded CPython 3.10Windows x86-64

mdescriptor-0.2.4-cp310-cp310-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl (35.4 MB view details)

Uploaded CPython 3.10manylinux: glibc 2.27+ x86-64manylinux: glibc 2.28+ x86-64

mdescriptor-0.2.4-cp310-cp310-macosx_11_0_arm64.whl (33.2 MB view details)

Uploaded CPython 3.10macOS 11.0+ ARM64

File details

Details for the file mdescriptor-0.2.4.tar.gz.

File metadata

  • Download URL: mdescriptor-0.2.4.tar.gz
  • Upload date:
  • Size: 26.4 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/7.0.0 CPython/3.13.14

File hashes

Hashes for mdescriptor-0.2.4.tar.gz
Algorithm Hash digest
SHA256 743f27560a7a2bcfea29ce02fcc471e9ef196f76928f5e484b313363e4973fd9
MD5 a077a8fd6dcbfd87b75673c41e382bd3
BLAKE2b-256 0b9e8b04c749325b7de6a91f62826553f9bae9beb2cfd2b90a1e954068e8825a

See more details on using hashes here.

Provenance

The following attestation bundles were made for mdescriptor-0.2.4.tar.gz:

Publisher: release.yml on nicheal/MDescriptor

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file mdescriptor-0.2.4-cp314-cp314-win_amd64.whl.

File metadata

  • Download URL: mdescriptor-0.2.4-cp314-cp314-win_amd64.whl
  • Upload date:
  • Size: 33.7 MB
  • Tags: CPython 3.14, Windows x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/7.0.0 CPython/3.13.14

File hashes

Hashes for mdescriptor-0.2.4-cp314-cp314-win_amd64.whl
Algorithm Hash digest
SHA256 0c476cc74f6bb5b70dbfa88b1e8997ce53e54fe32e20d66154ca0967799b9c5f
MD5 2784be1c49775cbee76ae4ce51b1a10b
BLAKE2b-256 0a06202991b47a42cf53e77e1736e41cb9a86b7adbe15d7a3f728372fb884347

See more details on using hashes here.

Provenance

The following attestation bundles were made for mdescriptor-0.2.4-cp314-cp314-win_amd64.whl:

Publisher: release.yml on nicheal/MDescriptor

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file mdescriptor-0.2.4-cp314-cp314-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for mdescriptor-0.2.4-cp314-cp314-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 190cab03767902ae52cefa12126829593a828728cb8b0ee8abdd08d241618bcf
MD5 7a7aee2db1e08f2170a64e9f84446c74
BLAKE2b-256 4661b6a2238228b3a1c7c219d32bd2ee3d47b4e4bf191b9266cd867fdaf46f80

See more details on using hashes here.

Provenance

The following attestation bundles were made for mdescriptor-0.2.4-cp314-cp314-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl:

Publisher: release.yml on nicheal/MDescriptor

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file mdescriptor-0.2.4-cp314-cp314-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for mdescriptor-0.2.4-cp314-cp314-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 0875b745962685f52584db551a079d2fe7839c67ecd7f6baed447bc85dda0328
MD5 b2a22415d5bdb86a02cc41f3850ce7f7
BLAKE2b-256 6dd37aa87b82df7d89388ed5edffae30fb8dd52e51f64135eb363c7223524c9a

See more details on using hashes here.

Provenance

The following attestation bundles were made for mdescriptor-0.2.4-cp314-cp314-macosx_11_0_arm64.whl:

Publisher: release.yml on nicheal/MDescriptor

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file mdescriptor-0.2.4-cp313-cp313-win_amd64.whl.

File metadata

  • Download URL: mdescriptor-0.2.4-cp313-cp313-win_amd64.whl
  • Upload date:
  • Size: 33.6 MB
  • Tags: CPython 3.13, Windows x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/7.0.0 CPython/3.13.14

File hashes

Hashes for mdescriptor-0.2.4-cp313-cp313-win_amd64.whl
Algorithm Hash digest
SHA256 662063fe4cdc7a068aa3e9c2e1c3cb5ecacbea4f9cb59d99c6c3d9e0e68cfa3d
MD5 8ca6d9055a19b193407c2537f2c9a877
BLAKE2b-256 8d752317ea554ea1a3d42add838280c4351aad81d44b9b1823ff8a120cc82ca0

See more details on using hashes here.

Provenance

The following attestation bundles were made for mdescriptor-0.2.4-cp313-cp313-win_amd64.whl:

Publisher: release.yml on nicheal/MDescriptor

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file mdescriptor-0.2.4-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for mdescriptor-0.2.4-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 ac501b46fa1a7653cfce4472c17333ed9efe677bfdabb445c9b929ccc660c6ae
MD5 f5a66c7dcb97ecd1352135129a7b87d0
BLAKE2b-256 66567282801360dffca0bee7fb91cad99f4831ea7a1fcad51fa3e33b326cf625

See more details on using hashes here.

Provenance

The following attestation bundles were made for mdescriptor-0.2.4-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl:

Publisher: release.yml on nicheal/MDescriptor

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file mdescriptor-0.2.4-cp313-cp313-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for mdescriptor-0.2.4-cp313-cp313-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 93e31c2933f2efa7014b4444fb0c4e56c1f98bbd296b155ecacb4e43fe14ae34
MD5 b5236a13e5f6a40fdd4fdfe08afd2bc0
BLAKE2b-256 7aa55a20ffd3644821aa8db02e126d2565ebca314c0db547899d2ff1add68597

See more details on using hashes here.

Provenance

The following attestation bundles were made for mdescriptor-0.2.4-cp313-cp313-macosx_11_0_arm64.whl:

Publisher: release.yml on nicheal/MDescriptor

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file mdescriptor-0.2.4-cp312-cp312-win_amd64.whl.

File metadata

  • Download URL: mdescriptor-0.2.4-cp312-cp312-win_amd64.whl
  • Upload date:
  • Size: 33.6 MB
  • Tags: CPython 3.12, Windows x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/7.0.0 CPython/3.13.14

File hashes

Hashes for mdescriptor-0.2.4-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 62622533d3a39d3a6c7d33fd854a492f662c8109ac222de01dc1364179247fd7
MD5 69d6b2000773516fb6e780075e0532aa
BLAKE2b-256 285a6252d0fdfdc7d6c8b0fbc1be81502b3a6d953ef9bb9ac52f971c5edc995b

See more details on using hashes here.

Provenance

The following attestation bundles were made for mdescriptor-0.2.4-cp312-cp312-win_amd64.whl:

Publisher: release.yml on nicheal/MDescriptor

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file mdescriptor-0.2.4-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for mdescriptor-0.2.4-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 186a130c9054bd097ed9b9bae9716c659a882fab4275a58efc614623331548a5
MD5 594232d598939dde73db24720f8ec9de
BLAKE2b-256 09673e68ecf9f964648ac3788428382df7c37f597fac568267c72abcd96941b1

See more details on using hashes here.

Provenance

The following attestation bundles were made for mdescriptor-0.2.4-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl:

Publisher: release.yml on nicheal/MDescriptor

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file mdescriptor-0.2.4-cp312-cp312-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for mdescriptor-0.2.4-cp312-cp312-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 655efe2b86ef9a310863b092a65bcf1c4421a0db7be7aa6989f371604b79ac59
MD5 ec77bc0dd652faaef3d866b1ee6bdf6f
BLAKE2b-256 cf50d4cb56d7c6a1796e750455d93e131c8ca7e7def72f102cdcf9c65239eb4e

See more details on using hashes here.

Provenance

The following attestation bundles were made for mdescriptor-0.2.4-cp312-cp312-macosx_11_0_arm64.whl:

Publisher: release.yml on nicheal/MDescriptor

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file mdescriptor-0.2.4-cp311-cp311-win_amd64.whl.

File metadata

  • Download URL: mdescriptor-0.2.4-cp311-cp311-win_amd64.whl
  • Upload date:
  • Size: 33.6 MB
  • Tags: CPython 3.11, Windows x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/7.0.0 CPython/3.13.14

File hashes

Hashes for mdescriptor-0.2.4-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 95ded141a78ad67515914ca3ecb91ee46d89d0585592b1d43cb681e9b983483c
MD5 a3701575455634694002488fba3feff7
BLAKE2b-256 aaec67a6972f82c16d268a680c19b3333eb8c03516d67a8e6496543e15d65e66

See more details on using hashes here.

Provenance

The following attestation bundles were made for mdescriptor-0.2.4-cp311-cp311-win_amd64.whl:

Publisher: release.yml on nicheal/MDescriptor

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file mdescriptor-0.2.4-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for mdescriptor-0.2.4-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 8006501569d7cba1db71d994e4c3d996d62c9f2ca3b9b7f5966c3dc7b4b427fc
MD5 6db3fddab197e97b9d4bf042ee62a6dd
BLAKE2b-256 31fe040e04161205d2a766592617e894dd79433b42636130674d8c095325f9a9

See more details on using hashes here.

Provenance

The following attestation bundles were made for mdescriptor-0.2.4-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl:

Publisher: release.yml on nicheal/MDescriptor

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file mdescriptor-0.2.4-cp311-cp311-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for mdescriptor-0.2.4-cp311-cp311-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 953010945b57fbc8e3687d02c66b5aa04431a6a0c4b67c3c9bd398655513bddf
MD5 b6a851d0ee2616873c4714024ddde0d9
BLAKE2b-256 b299717ce83e3fafc8090444ace867957191551873b6ca753faee1b6df51e128

See more details on using hashes here.

Provenance

The following attestation bundles were made for mdescriptor-0.2.4-cp311-cp311-macosx_11_0_arm64.whl:

Publisher: release.yml on nicheal/MDescriptor

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file mdescriptor-0.2.4-cp310-cp310-win_amd64.whl.

File metadata

  • Download URL: mdescriptor-0.2.4-cp310-cp310-win_amd64.whl
  • Upload date:
  • Size: 33.6 MB
  • Tags: CPython 3.10, Windows x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/7.0.0 CPython/3.13.14

File hashes

Hashes for mdescriptor-0.2.4-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 c1ad840e50a622a873dc214b995323ae95872845c8f78cca2ab4c9cb98b520e7
MD5 4f23b9e20de7ae8d540cfcc23fcbc362
BLAKE2b-256 caea90b1ffcc7812b3ddaca407a5d81ad1e83182cb46082afb6944c6e4778344

See more details on using hashes here.

Provenance

The following attestation bundles were made for mdescriptor-0.2.4-cp310-cp310-win_amd64.whl:

Publisher: release.yml on nicheal/MDescriptor

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file mdescriptor-0.2.4-cp310-cp310-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for mdescriptor-0.2.4-cp310-cp310-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 a46e6aea1f2ba99678af2d971be0d6d43cd97bdc94b050da33b21a70eb791ee3
MD5 5b5fd0d3e3882501c93460908ee55f0a
BLAKE2b-256 7414e5067789b21a57489f4d0969fc1e91a3bdd8605608190f1f8d61aada2d77

See more details on using hashes here.

Provenance

The following attestation bundles were made for mdescriptor-0.2.4-cp310-cp310-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl:

Publisher: release.yml on nicheal/MDescriptor

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file mdescriptor-0.2.4-cp310-cp310-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for mdescriptor-0.2.4-cp310-cp310-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 3449c77a119474058e1cc976c39503881c4410a0c58c3ad5839472c533aba451
MD5 45a46d4c728412fbc3f93b70751149db
BLAKE2b-256 19fb513def4bb77daa02d3a3e33fd208707ee95c07c2476fae0dd27b2e69bab4

See more details on using hashes here.

Provenance

The following attestation bundles were made for mdescriptor-0.2.4-cp310-cp310-macosx_11_0_arm64.whl:

Publisher: release.yml on nicheal/MDescriptor

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Release history Release notifications | RSS feed

0.3.3

16 files

0.3.2

16 files

0.3.1

16 files

0.3.0

16 files

0.2.8

16 files

0.2.7

16 files

0.2.6

16 files

0.2.5

16 files

This release

0.2.4 This release

16 files

0.2.3

16 files

0.2.2

16 files

0.2.1

16 files

0.1.0

21 files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page