From 7596fab0a4d9cd52e2e2c03a816a4b34f029e7e0 Mon Sep 17 00:00:00 2001 From: Micah Young Date: Wed, 18 Sep 2019 09:40:35 -0400 Subject: [PATCH 1/2] Adds api to buildpack.toml schema Signed-off-by: Micah Young Signed-off-by: Emily Casey --- buildpack.md | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/buildpack.md b/buildpack.md index fb383ef7..c46f3a70 100644 --- a/buildpack.md +++ b/buildpack.md @@ -937,6 +937,8 @@ For a given layer, the buildpack MAY specify: ### buildpack.toml (TOML) ```toml +api = "" + [buildpack] id = "" name = "" @@ -967,6 +969,8 @@ The buildpack ID: If an `order` is specified, then `stacks` MUST NOT be specified. +Buildpack API MUST be in form `.` and describe the implemented buildpack API. When `` is `0`, this buildpack is only compatible with lifecycles implementing that exact buildpack API. When `` is greater than `0`, this buildpack is compatible with lifecycles implementing buildpack API `.`, where `` equals the `` of the buildpack and `` is greater than or equal to that of the buildpack. + #### Buildpack Implementations A buildpack descriptor that specifies `stacks` MUST describe a buildpack that implements the [Buildpack Interface](#buildpack-interface). From 5fc5e3b212b9ff4ac80e292e15f6196f17b6cd7e Mon Sep 17 00:00:00 2001 From: Emily Casey Date: Thu, 19 Sep 2019 09:16:51 -0400 Subject: [PATCH 2/2] Allow buildpack api to imply a minor of 0 by omission Signed-off-by: Emily Casey --- buildpack.md | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/buildpack.md b/buildpack.md index c46f3a70..4781ca9d 100644 --- a/buildpack.md +++ b/buildpack.md @@ -969,7 +969,12 @@ The buildpack ID: If an `order` is specified, then `stacks` MUST NOT be specified. -Buildpack API MUST be in form `.` and describe the implemented buildpack API. When `` is `0`, this buildpack is only compatible with lifecycles implementing that exact buildpack API. When `` is greater than `0`, this buildpack is compatible with lifecycles implementing buildpack API `.`, where `` equals the `` of the buildpack and `` is greater than or equal to that of the buildpack. +The buildpack API: + - MUST be in form `.` or ``, where `` is equivalent to `.0` + - MUST describe the implemented buildpack API. + - SHALL indicate compatibility with a given lifecycle according to the following rules: + - When `` is `0`, the buildpack is only compatible with lifecycles implementing that exact buildpack API. + - When `` is greater than `0`, the buildpack is only compatible with lifecycles implementing buildpack API `.`, where `` of the lifecycle equals `` of the buildpack and `` of the lifecycle is greater than or equal to `` of the buildpack. #### Buildpack Implementations