manifest-format.md in inqlude-0.0.8 vs manifest-format.md in inqlude-0.7.0
- old
+ new
@@ -30,23 +30,37 @@
attributes describing the library and the specific version represented by the
concrete file.
These are the attributes:
-### schema_version
+### $schema
-Version number of the schema used in this manifest
+This is a reference to the schema which is used in the manifest file. The
+schema follows the [JSON Schema](http://json-schema.org) specification.
-This is used to make expectations of tools and processing explicit and adapt
-to schema changes.
+The schema comes in three flavors: "generic", "release", and
+"proprietary-release". They differe in what fields are required, the meaning of
+fields is the same in all. "generic" is a subset of "proprietary-release", which
+is a subset of "release".
+Each schema has an identifier. The current identifier for the release schema is
+"http://inqlude.org/schema/release-manifest-v1#". It includes the version
+number. The other identifiers are the same, but instead of "release" they use
+the corresponding sub string identifying the flavor.
+
+The schema and its versioning is used to make expectations of tools and
+processing explicit and adapt to schema changes.
+
If the schema is changed in a way incompatible with processing tools, the
schema version number has to be increased.
-This document specifies schema version 1.
+As Inqlude currently still is in alpha, changes to the schema are to be expected
+and while we will try to not break things, there might be some incompatible
+changes without changing the version number during development. This will stop,
+when we have reached beta state.
-*schema_version is a mandatory attribute*
+*$schema is a mandatory attribute*
### name
Name of the library
@@ -69,17 +83,17 @@
### release_date
Date, when the version was released
-*release_date is a mandatory attribute*
+*release_date is a mandatory attribute in the release schemas*
### version
Version of the release
-*version is a mandatory attribute*
+*version is a mandatory attribute in the release schemas*
### summary
One-line summary describing the library
@@ -130,12 +144,12 @@
### description
Full description of the library
The description is a text describing the library. It can be of arbitrary length.
-No special formatting is supported other than using newlines to start a new
-paragraph.
+The text is formatted using
+[Markdown](http://daringfireball.net/projects/markdown/syntax).
*description is a mandatory attribute*
### authors
@@ -156,11 +170,11 @@
* "stable": for stable releases ready for production use
* "beta": for pre-releases of stable versions used for gathering feedback, not
recommended for production use
* "alpha": preview releases, not suitable for production use
-*maturity is a mandatory attribute*
+*maturity is a mandatory attribute, it's optional in the generic schema*
### platforms
List of supported platforms
@@ -188,10 +202,11 @@
#### source
This is the source code of the release. It has one URL to the file, which
can be used to download the code.
-*source is a mandatory package attribute*
+*source is a mandatory package attribute in the release schema, it's optional
+in the proprietary-release schema*
#### openSUSE
openSUSE binary packages. For each version of openSUSE there is a separate
entry.