Releases: apiaryio/api-blueprint-ast
Refract Data Structures
This release changes the format of the API Blueprint AST in a backward-incompatible way. MSON data structures and attributes are now represented by the Refract Data Structure Namespace instead of the MSON-AST. As such, any code using the MSON-AST will need to be updated to use the new Refract elements.
Additionally, mimetypes have been updated to remove the raw
and html
components. For example, application/vnd.apiblueprint.parseresult.raw+json
is now just application/vnd.apiblueprint.parseresult+json
.
1A8 Release and Element Introduction
This major release updates the API Blueprint AST to support API Blueprint Format 1A8. A few other changes include:
- We have introduced a new Element which is a basic component of API description and can be used to build other objects in API Blueprint AST. It is currently being used for only a few elements such as
Category
,Asset
,Copy
,DataStructure
andResource
- Resource Group has been deprecated. Category Element will be used to represent it.
payload.body
andpayload.schema
have been deprecated. Asset which inherits from Element will be used in a payload for both body and schema.
Reference Object and Source Maps
This is a minor change of the API Blueprint AST Serialization Media Types.
The following has been changed:
-
Payload Object will now contain a Reference Object if the respective payload has a reference to a Resource Model and if and only if it has been resolved correctly without any errors. The serialization of the Reference Object is as follows:
"reference": { "id": "resource model name" }
reference: id: "resource model name"
-
The Serialization document now includes description of the API Blueprint Source Map and it's serialization media types. This Source maps are exported by Snowcrash from version 0.15.0 onwards.
Breaking: Ordered arrays for metadata, headers and parameters
This is a major change of the API Blueprint AST Serialization Media Types.
This release is not backward compatible with v1.0
NOTE: The backward incompatible changes affects serialized API Blueprint AST media types (JSON or YAML) only. This changes has no effect on API Blueprint or its AST as exposed by Snow Crash.
It does affects the AST as exposed by Protagonist since its AST should be 1:1 with the AST JSON serialization media type.
The following has been changed:
-
Metadata, headers and parameter AST nodes are now associative arrays instead of maps (hashes):
For example from:
"metadata": { "<key>": { "value": "<value>" } }
to:
"metadata": [ { "name": "<metadata key name>", "value": "<metadata value>" } ]
Same applies to headers and parameters AST nodes. Former (a metadata, header or parameter name) is now the value under the
name
key. -
Headers node (deprecated in 1A3) removed from resrouce and action nodes.
-
Enumeration value in the parameter's value AST node is now a hash with
value
key with the enumeration as its valueFrom:
"values": [ "<element>" ]
to:
"values": [ { "value": "<element>" } ]
Refer to v2.0 Milestone (#4) for further details.
Initial Release
v1.0 Remove superfluous link