Commit 017e5ea8 authored by Eric Timmons's avatar Eric Timmons
Browse files

Add specs/

parent c983e330
......@@ -24,6 +24,9 @@ purely declarative specification of projects and their systems.
documented and supported by this project is v0.4. The specification is
located at [[file:specs/][specs/]].
A brief description of CLPI's object model is located at
* Taxonomy
This section attempts to ground the definitions of several terms used
throughout this documentation.
#+TITLE: CLPI Object Model
#+AUTHOR: Eric Timmons
This document provides a brief overview of the object model and terminology
used within CLPI.
* Project Index
A project index contains information on both projects and systems.
* Project
A project consists of some metadata and a set of releases.
Project metadata can include:
1. The project's VCS repository,
2. a list of authors,
3. a list of maintainers,
4. and a homepage.
* System
A system is merely the name of an ASDF system. Systems are provided by
releases of projects in the form of "system releases". Additionally, systems
can have the following metadata:
1. The primary project where the system is developed. Systems can move
between projects over time, but at any given time, a system must have a
single "primary" project where it is actively developed.
* Release
A release of a project is defined by the following metadata:
1. A version string naming the release. Must be unique within the project.
2. a URL where the release can be located.
3. a list of system releases provided by the release
* System release
A system release is a grounded system. That is, something that is loadable by
ASDF. A system release is defined by:
1. The name of the system,
2. a description,
3. a license,
4. a version string,
5. a list of dependencies.
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment