-
Notifications
You must be signed in to change notification settings - Fork 13
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Modifications to enable libcnb to be compatible with both versions 0.5 and 0.6 of the API #54
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
There were some additional attributes added to launch.toml like the default flag for processes. Should we add a warning or throw an error if someone sets that with the v0.5 api?
I added |
…5 and 0.6 of the API Signed-off-by: Daniel Mikusa <dmikusa@vmware.com>
Signed-off-by: Daniel Mikusa <dmikusa@vmware.com>
Signed-off-by: Daniel Mikusa <dmikusa@vmware.com>
Co-authored-by: Emily Casey <emilykimballcasey@gmail.com> Signed-off-by: Daniel Mikusa <dmikusa@vmware.com>
Signed-off-by: Daniel Mikusa <dmikusa@vmware.com>
At the moment, the latest version of libcnb (1.20.0) breaks compatibility for buildpacks that are still on the 0.5 version of the API. This patch creates compatibility for both 0.5 and 0.6.
The use case for this change is upgrading buildpacks. On the Paketo team, we have quite a few buildpacks that are using libpak and libcnb. This abrupt change means we either have to hold back libcnb updates or we have to go through and update all of the buildpacks to use the new API. Having compatibility for both version 0.5 and 0.6 eases the transition as we can keep updating libcnb and migrate buildpacks to 0.6 at a more leisurely pace.
My suggestion would be to remove this 0.5 compatibility layer when we add support for the 0.7 (or whatever's next) API version. That way we're supporting the latest two API versions at any given moment, again helping buildpack authors to transition more easily.