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
scripts/benchmarking/      controlled local benchmark runners
benchmarks/                local-only benchmark snapshots (ignored by Git)

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.

性能说明: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 reference 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

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.3.tar.gz (26.3 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.3-cp314-cp314-win_amd64.whl (33.7 MB view details)

Uploaded CPython 3.14Windows x86-64

mdescriptor-0.2.3-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.3-cp314-cp314-macosx_11_0_arm64.whl (33.2 MB view details)

Uploaded CPython 3.14macOS 11.0+ ARM64

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

Uploaded CPython 3.13Windows x86-64

mdescriptor-0.2.3-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.3-cp313-cp313-macosx_11_0_arm64.whl (33.2 MB view details)

Uploaded CPython 3.13macOS 11.0+ ARM64

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

Uploaded CPython 3.12Windows x86-64

mdescriptor-0.2.3-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.3-cp312-cp312-macosx_11_0_arm64.whl (33.2 MB view details)

Uploaded CPython 3.12macOS 11.0+ ARM64

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

Uploaded CPython 3.11Windows x86-64

mdescriptor-0.2.3-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.3-cp311-cp311-macosx_11_0_arm64.whl (33.2 MB view details)

Uploaded CPython 3.11macOS 11.0+ ARM64

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

Uploaded CPython 3.10Windows x86-64

mdescriptor-0.2.3-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.3-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.3.tar.gz.

File metadata

  • Download URL: mdescriptor-0.2.3.tar.gz
  • Upload date:
  • Size: 26.3 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.3.tar.gz
Algorithm Hash digest
SHA256 17efa148c2e47176df6a8f20987cfbaa06360cf55223b38e16a3d14305e604d9
MD5 397be38d393332b8ad4528ed0a9cb5db
BLAKE2b-256 d15299437591514782bd0f53a44a9ef24675e53e2d1d637acf1bbaba5a150b88

See more details on using hashes here.

Provenance

The following attestation bundles were made for mdescriptor-0.2.3.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.3-cp314-cp314-win_amd64.whl.

File metadata

  • Download URL: mdescriptor-0.2.3-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.3-cp314-cp314-win_amd64.whl
Algorithm Hash digest
SHA256 1edcfdce5f4ea1c9cf7ef9f3be712c010e296beb20b046ae299e9c658debb0c2
MD5 ebe867bd6d22c192e092a48bc7a56bb2
BLAKE2b-256 97fc3edc134bac10b7ad2a27e568dbb8d46f08f35d7a910d3e8a075ee1b9839d

See more details on using hashes here.

Provenance

The following attestation bundles were made for mdescriptor-0.2.3-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.3-cp314-cp314-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for mdescriptor-0.2.3-cp314-cp314-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 2672764670108d215f968b7ef89d2874d5940f594b2638465c5e6626305e6fef
MD5 bf422906342723bb2bc9b0cf88966fbb
BLAKE2b-256 22bfabdd8b1c8aaa7833c938fd51bd48be8406301d5f45e3222683ff4d93c6ad

See more details on using hashes here.

Provenance

The following attestation bundles were made for mdescriptor-0.2.3-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.3-cp314-cp314-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for mdescriptor-0.2.3-cp314-cp314-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 feb64b9328b31e8710e5db95036f40fed224da0e70cec4d7f6acb6d273bf340f
MD5 5156783485a256b476d162118408c79d
BLAKE2b-256 7ef7b30f154a88541d7122f13ca2da1d21b38fbad64b30b14357db1ad274a55d

See more details on using hashes here.

Provenance

The following attestation bundles were made for mdescriptor-0.2.3-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.3-cp313-cp313-win_amd64.whl.

File metadata

  • Download URL: mdescriptor-0.2.3-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.3-cp313-cp313-win_amd64.whl
Algorithm Hash digest
SHA256 1547b5af8f3fb3fb8c5cba541f75f16474a4277ca06c1402e88e5e59860983ce
MD5 47450b2d6433b015594e37a87b2de7be
BLAKE2b-256 4615286296a2a25e98ce9ce498f34aaacc8816c5cc07e64834cff930e3f08271

See more details on using hashes here.

Provenance

The following attestation bundles were made for mdescriptor-0.2.3-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.3-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for mdescriptor-0.2.3-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 a66f2c71f261e7b8488e5dd6a6eaaf70153281dbce4991d109ac039fdd8faddf
MD5 ba8ecf96a0eee257ca29c3143caaffcc
BLAKE2b-256 9a3562f264cd6b066c7fef9e002b270682f6099e1acb2adddf0f62a927dc2702

See more details on using hashes here.

Provenance

The following attestation bundles were made for mdescriptor-0.2.3-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.3-cp313-cp313-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for mdescriptor-0.2.3-cp313-cp313-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 3158c28000809791576bcde443f59318b3046fe5383ed34b4ea7b7b61b336350
MD5 7cc5f7d2bcfe2860b1e61c24d5fc1a87
BLAKE2b-256 cdc996c4c29610f5ade6d2bf1df539bcf598b0e86e92473052104691e892981a

See more details on using hashes here.

Provenance

The following attestation bundles were made for mdescriptor-0.2.3-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.3-cp312-cp312-win_amd64.whl.

File metadata

  • Download URL: mdescriptor-0.2.3-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.3-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 14250f50999f112b13a766c0d9a96df59b12b4557a12979c1e365ed364eba14e
MD5 5db0bc16caf7515480a8911a3da14480
BLAKE2b-256 8d29b983ffec086ea37e1fc8880e799bd1a1cf53906444db61404bf2298dfc38

See more details on using hashes here.

Provenance

The following attestation bundles were made for mdescriptor-0.2.3-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.3-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for mdescriptor-0.2.3-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 9d87cce88d062be4c8a388af86c559df0f11d7a9ad0f4ea23e1b170921fe0b1b
MD5 256a100359194c6aac4333e58b70dd29
BLAKE2b-256 a7cbcc73a3273605860c7a9752201e6857e1bef6d13be487b359f94741c7d1c9

See more details on using hashes here.

Provenance

The following attestation bundles were made for mdescriptor-0.2.3-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.3-cp312-cp312-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for mdescriptor-0.2.3-cp312-cp312-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 cdc7f1fd4965786e87dda05859bbd90a78814a31830d17d8d567e3c5ac557795
MD5 9a963ab1d2563f67e2f38ddecb02b9b3
BLAKE2b-256 0d3d02ccf56636bb3e8a59518431cfc0a07cfb741002b1f2f42a75668ada7934

See more details on using hashes here.

Provenance

The following attestation bundles were made for mdescriptor-0.2.3-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.3-cp311-cp311-win_amd64.whl.

File metadata

  • Download URL: mdescriptor-0.2.3-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.3-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 1cd4b9ad736077dc1edfe304c617c045e020daf6660a7a9abb03349580ba6df1
MD5 3545ea780baa2aa0ddd38f644f3dc805
BLAKE2b-256 a9428309671e70dfd4c0193803e015714889d16e24659cd5298f6b6a88e1d3fa

See more details on using hashes here.

Provenance

The following attestation bundles were made for mdescriptor-0.2.3-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.3-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for mdescriptor-0.2.3-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 24ee6bdd94d2f91fcb04d2a80caaf1b17be6206349df4435a15ac963e8f05712
MD5 a7989a11fac88eeea3b5c71ca88e726d
BLAKE2b-256 07a0032577cd05ca6093f9a100fdd789299ef370e861832d5d9e6b67d121af0a

See more details on using hashes here.

Provenance

The following attestation bundles were made for mdescriptor-0.2.3-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.3-cp311-cp311-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for mdescriptor-0.2.3-cp311-cp311-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 abbee89d2e33d9f9e6527741a10e5a346fa97ec68c3ac88735597a1a89848f16
MD5 92c0277418c6b69e35829b8720be16f1
BLAKE2b-256 4dc8fcd0c0e46aa4ce1411d4e6eb508ef5c94945d93c0736c25b4fb72f78271f

See more details on using hashes here.

Provenance

The following attestation bundles were made for mdescriptor-0.2.3-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.3-cp310-cp310-win_amd64.whl.

File metadata

  • Download URL: mdescriptor-0.2.3-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.3-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 437d47a273143de63b00043a3935e3f124dec2f5650adb025291c21c9c96e66f
MD5 a81ca5b7da0b81a056e29197597e315e
BLAKE2b-256 56f6a9caf7ddf0c5089aa259dad06bb4558c130afbdedc89a223aea8d1fd9375

See more details on using hashes here.

Provenance

The following attestation bundles were made for mdescriptor-0.2.3-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.3-cp310-cp310-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for mdescriptor-0.2.3-cp310-cp310-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 446e7766fa7c614bf486ca95a7c9cb8564c48d9d28c15d5bc6ff88fe2b7dc5af
MD5 cb18957a6978fcb3f5dc9800803fc298
BLAKE2b-256 7906a1d2b3e2387bb4a6519b6335c1716ddc4c5de87a171086fd187412f695eb

See more details on using hashes here.

Provenance

The following attestation bundles were made for mdescriptor-0.2.3-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.3-cp310-cp310-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for mdescriptor-0.2.3-cp310-cp310-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 a898fde26ec44c942ee59be72d110ea46b69c40c66102f2cecc00175084c0fe3
MD5 d1495e8b61ce45f9291c753c29296d30
BLAKE2b-256 2c2696eace81ba1b35dfa9b8e2e5867160b93bab62745bd3a48ee6a430cfbd3d

See more details on using hashes here.

Provenance

The following attestation bundles were made for mdescriptor-0.2.3-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

0.2.4

16 files

This release

0.2.3 This release

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