dev.knotless.release
Kept in the repository owner's account, keyed `<repo key>.<package hash>.<version hash>`, where each hash is the first 26 characters of the lowercase unpadded base32 SHA-256 of `package` or `version`, so a listing from the cursor `<repo key>/` walks one repository's releases, and from `<repo key>.<package hash>/` one package's. Created and never updated: creating it fails if that version was published, so a version's files never change. Deleting it unpublishes the version; to withdraw one that others may have pinned, a dev.knotless.releaseYank leaves it to read. Readers check every file against its `sha256`.
Details · record, key any
| Kind | record |
|---|---|
| Record key | any |
| Authority | knotless.dev |
| Indexed |
Showing version bafyreiapopws6s4c2ju4fvsppgmqtrst3ws6isvchb3apjz2ipbuxccwlm. Show the latest
Record
record · key anyProperties
cargo
refWhat Cargo's registry says of it, when it is a crate: its one file then is `<name>-<version>.crate`.
check
string · at-uriThe dev.knotless.check, in its runner's account, of the run that built and published it. A reader trusts it only from a runner the repository names, and only once it has passed at `commit`.
commit
stringThe hex object ID of the commit the files were built from.
minLength: 40maxLength: 64
notes
stringWhat changed since the version before, in Markdown, as the changelog says.
maxLength: 20000maxGraphemes: 5000
The package's name, as npm's rules have it: lowercase letters, digits, `-`, `.`, `_` and `~`, after an optional `@scope/`. A repository can publish several.
minLength: 1maxLength: 214
The `key` of the dev.knotless.repo that publishes it.
A Semantic Versioning 2.0 version, such as 1.4.0 or 2.0.0-rc.1. The highest version without a pre-release part that no dev.knotless.releaseYank withdraws is the package's latest.
minLength: 5maxLength: 256
#cargo
objectA release as a crate.
Properties
description
stringWhat the crate says it is.
maxLength: 10000maxGraphemes: 1000
Its line of Cargo's registry index, as JSON, but for `yanked`, which a reader adds from the dev.knotless.releaseYank of its key. Kept as Cargo's format has it, which is Cargo's to change, and passed on as it is, since an index's line never changes.
maxLength: 100000
#file
objectOne file of a release.
Properties
Its name, as it is downloaded: letters, digits, `.`, `_`, `+` and `-`, not first a `.`.
minLength: 1maxLength: 255
The file, split over blobs in order, each no larger than its PDS takes.
minLength: 1
The lowercase hex SHA-256 of the file.
minLength: 64maxLength: 64
Bytes in the file.
minimum: 1
#part
objectOne blob of a file, in order.
Properties
accept: application/octet-stream
Similar lexicons
semantic matchLexicons whose schemas describe something close to this one. Check them before publishing a new one that overlaps.
-
dev.knotless.releaseYank
recordThat the owner of a repository withdrew a version of a package it publishes: the dev.knotless.release of the same key in the same account, which itself never changes, stays there to read, but is no longer its package's latest.
-
at.happyproto.plugin.release
recordOne version of a package. The record key is '<slug>:<version>'. A release at a given version is never modified: a registry that later sees a different CID at this key keeps the first and flags the conflict.
-
codes.tcm.release
recordA release of a tcm package, announced on the AT Protocol by its author.
-
io.agent.release
recordA record representing a software release.
-
software.release.version
recordAn immutable named pointer to a manifest. The record key is '{projectName}:{version}', making uniqueness per (project, version) mechanical and enabling AppView-free resolution. Version strings follow the project-name grammar (lowercase alphanumerics, interior hyphens) but allow dots. The version string cannot contain colons, but the rkey must contain exactly one colon. Valid only when same-DID with the referenced project, and only when target references a manifest of that same project.