Skip to content
Warning:Contents are available for feedback and preview; practices and lexicons can still change. Implement at your own risk!

release.software

What does it look like to version, publish, and distribute software on AT Protocol? release.software aims to answer that question with a set of lexicons, guidelines, and recommendations for distributing software of any kind via the open social web.

Mechanical overview

  1. Create a software.release.project (e.g. myproject) that describes the overarching project. This only needs to be done for the first release.

  2. Create a software.release.manifest containing a list of artifacts that you are publishing.

  3. Create a version software.release.version (e.g. myproject:v1.0.0) to label the newly-created manifest.

  4. Update any relevant channels software.release.channel (e.g. myproject:latest) to point at the newly-published version.

  5. Later... Create software.release.status records to discourage using old versions or to retire the project.

Two crucial elements are purposefully not prescribed by the workflow: Artifact storage and version enforcement. Neither of those are goals of release.software, but we still provide recommendations later in the docs.