Skip to content
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

Update lifecycle from v0.17.2 to v0.18.1 #431

Merged
merged 2 commits into from
Nov 14, 2023
Merged

Conversation

heroku-linguist[bot]
Copy link
Contributor

@heroku-linguist heroku-linguist bot commented Oct 31, 2023

@heroku-linguist heroku-linguist bot requested a review from a team as a code owner October 31, 2023 17:22
@heroku-linguist heroku-linguist bot enabled auto-merge (squash) October 31, 2023 17:22
@edmorley
Copy link
Member

edmorley commented Nov 2, 2023

CI is failing because:

In addition to the cases seen in CI, there is also at least one Functions customer using this Buildpack API 0.2 (!!) buildpack:
https://github.com/CSGAMERSServices/puppeteer-heroku-buildpack

@heroku-linguist heroku-linguist bot changed the title Update lifecycle from v0.17.2 to v0.18.0 Update lifecycle from v0.17.2 to v0.18.1 Nov 6, 2023
Since these builder images contain buildpacks that are using
Buildpack API versions no longer supported in lifecycle 0.18.0+:
https://github.com/buildpacks/lifecycle/releases/tag/v0.18.0
https://github.com/buildpacks/lifecycle#supported-apis
@edmorley
Copy link
Member

edmorley commented Nov 14, 2023

CI is failing because:

I've downgraded the lifecycle version in the affected builder images to their original lifecycle version. For now, we'll only use the new lifecycle version in heroku/builder:22 and heroku/builder:20.

This is still a breaking change for anyone using heroku/builder:22 or heroku/builder:20 with a custom buildpack using a legacy Buildpack API version (anything <0.7), however:

  • lifecycle has been outputting deprecation warnings to the build log since lifecycle v0.16.0 (which our builders started using in Feb 2023 in Update lifecycle from v0.15.3 to v0.16.0 #318)
  • we have to rip this band aid off at some point, and doing so whilst Heroku's CNB support is not yet released (and so experimental only) seems preferable

@heroku-linguist heroku-linguist bot merged commit 4cb71e3 into main Nov 14, 2023
42 checks passed
@heroku-linguist heroku-linguist bot deleted the update-lifecycle branch November 14, 2023 10:49
edmorley added a commit to heroku/buildpacks-nodejs that referenced this pull request Nov 15, 2023
Since Buildpack API 0.6 has been deprecated for some time, and is no
longer supported by newer versions  of `lifecycle`, which is causing
CI to fail since the integration tests in this repo use `heroku/builder:22`,
which has just had its lifecycle version upgraded:
heroku/cnb-builder-images#431

These CI failures are not reflective of production (which is working fine),
since Functions in production are actually run via the functions builder
image (and not `heroku/builder:22`), which was intentionally left on the
old lifecycle version. However, this functions builder image is not available
on Docker Hub, so can't be used by the integration tests in this repo.

Improving parity of the integration tests here might be worth considering
longer term, however, upgrading the Buildpack API version was a simpler
(and arguably correct thing to do regardless) step for now.

There are no breaking changes that affect this buildpack in the new API
version, so no buildpack changes were required:
https://github.com/buildpacks/spec/releases/tag/buildpack%2Fv0.7

Fixes #720.
GUS-W-14493124.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant