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
Kindrecord
Record keyany
Authorityknotless.dev
Indexed

Showing version bafyreibpvsjftpax64yaiqvd4m327ixupd63eva657igheltqsmfd6ozg4. Show the latest

Record

record · key any

Properties

check

string · at-uri

The 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

string

The hex object ID of the commit the files were built from.

  • minLength: 40
  • maxLength: 64

createdAt

requiredstring · datetime

files

requiredarray

What it publishes, by distinct names.

  • minLength: 1
  • maxLength: 64
itemsref
Reference

notes

string

What changed since the version before, in Markdown, as the changelog says.

  • maxLength: 20000
  • maxGraphemes: 5000

package

requiredstring

The package's name, as npm's rules have it: lowercase letters, digits, `-`, `.`, `_` and `~`, after an optional `@scope/`. A repository can publish several.

  • minLength: 1
  • maxLength: 214

repo

requiredstring · tid

The `key` of the dev.knotless.repo that publishes it.

version

requiredstring

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: 5
  • maxLength: 256

#file

object

One file of a release.

Properties

name

requiredstring

Its name, as it is downloaded: letters, digits, `.`, `_`, `+` and `-`, not first a `.`.

  • minLength: 1
  • maxLength: 255

parts

requiredarray

The file, split over blobs in order, each no larger than its PDS takes.

  • minLength: 1
itemsref
Reference

sha256

requiredstring

The lowercase hex SHA-256 of the file.

  • minLength: 64
  • maxLength: 64

size

requiredinteger

Bytes in the file.

  • minimum: 1

#part

object

One blob of a file, in order.

Properties

blob

requiredblob
  • accept: application/octet-stream

Similar lexicons

semantic match

Lexicons whose schemas describe something close to this one. Check them before publishing a new one that overlaps.

  • That 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.

  • One 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.

  • A release of a tcm package, announced on the AT Protocol by its author.

  • A record representing a software release.

  • An 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.