Hi!

We are going to start rolling out a new version of the buildpack environment
for toolforge built images (see the task [1], and the process outline [2]).

If you build your container images using the toolforge build service, please
keep reading, there might be some actions needed on your part.

What you as tool admin need to do:

* [optional] For the next two weeks, test your builds using the
  `toolforge build start --use-latest-versions ...` flag. This will run with
  the next default version. If you have no errors, no new changes are needed.
  If you get errors, then you'll need to adapt to the newer versions or open a
  bug for us to fix it [3].

* [required if you got errors] In two weeks, 31-03-2026, if you want to still
  use the old deprecated versions of the buildpacks to continue
  debugging/fixing the builds with the newer versions, use the
  `toolforge build start --use-deprecated-versions ...` flag.
  If you were using Aptfile to install packages, you'll have to move to
  project.toml, see [4].

* [required if you were using the latest versions] That same day, the
  `--use-latest-versions` flag, will now point to a newer version of the
  buildpacks, this might break your builds, so you might want to either fix
  them, open a bug for follow up, and/or use the default version instead.

* [required if used the deprecated flag] on 2026-04-27, the flag will be
  disabled, and you will be required to stop using it.

Most of the time there will be no changes needed to your code, but if you were
relying on features or old languages that are not supported in the newer
buildpacks you might have to adjust your configuration or your code.


For reference, the current default version has the buildpacks:
heroku_go: 0.1.13
heroku_gradle: 4.0.2
heroku_java: 4.0.2
heroku_jvm: 4.0.2
heroku_maven: 4.0.2
heroku_nodejs: 2.6.2
heroku_nodejs-corepack: 2.6.2
heroku_nodejs-engine: 2.6.2
heroku_nodejs-npm-engine: 2.6.2
heroku_nodejs-npm-install: 2.6.2
heroku_nodejs-pnpm-engine: 2.6.2
heroku_nodejs-pnpm-install: 2.6.2
heroku_nodejs-yarn: 2.6.2
heroku_php: 0.1.2
heroku_procfile: 2.0.2
heroku_python: 0.8.0
heroku_ruby: 2.1.2
heroku_sbt: 4.0.2
heroku_scala: 4.0.2


The current latest version has the buildpacks:
heroku_deb-packages: 0.1.3
heroku_dotnet: 0.5.0
heroku_go: 0.5.8
heroku_gradle: 6.2.0
heroku_java: 6.2.0
heroku_jvm: 6.2.0
heroku_maven: 6.2.0
heroku_nodejs: 3.6.0
heroku_nodejs-corepack: 3.6.0
heroku_nodejs-engine: 3.6.0
heroku_nodejs-npm-engine: 3.6.0
heroku_nodejs-npm-install: 3.6.0
heroku_nodejs-pnpm-engine: 3.6.0
heroku_nodejs-pnpm-install: 3.6.0
heroku_nodejs-yarn: 3.6.0
heroku_php: 0.2.4
heroku_procfile: 4.2.1
heroku_python: 0.26.1
heroku_ruby: 7.0.1
heroku_sbt: 6.2.0
heroku_scala: 6.2.0


And the new latest version being rolled out will have the buildpacks:
heroku_deb-packages: 0.3.0
heroku_dotnet: 1.0.3
heroku_go: 2.2.1
heroku_gradle: 7.0.9
heroku_java: 7.0.9
heroku_jvm: 7.0.9
heroku_maven: 7.0.9
heroku_nodejs: 5.5.3
heroku_php: 1.4.0
heroku_procfile: 4.2.1
heroku_python: 6.0.1
heroku_ruby: 12.3.0
heroku_sbt: 7.0.9
heroku_scala: 7.0.9


Some improvements are:
* Native dotnet support (no need to install external buildpack).
* Newer language versions, like:
** dotnet 9.0.203 by default/10.0.103 latest versions
** golang 1.24 default/1.26 latest versions
** jdk versions 1.8.0_432, 11.0.25, 17.0.13, 21.0.5, 23.0.1 by default
   /1.8.0_482, 11.0.30, 17.0.18, 21.0.10, 25.0.2 latest versions
** php 8.3.7 by default/8.5.3 latest version
** python 3.13 by default with poetry support/3.14 latest version, with 
uv+poetry support
** ruby 3.3.7 by default/3.3.9 latest version
* Native apt buildpack support, if you were using Aptfile, you'll have to
  change to project.toml [4]

You can see upstream the details of each buildpack following the links in [5].


Cheers!


[1] https://phabricator.wikimedia.org/T380127
[2] 
https://wikitech.wikimedia.org/w/index.php?title=Help:Toolforge/Building_container_images&oldid=2392097#Buildpack_environment_upgrade_process
[3] https://phabricator.wikimedia.org/project/profile/539/
[4] 
https://github.com/heroku/buildpacks-deb-packages?tab=readme-ov-file#projecttoml
[5] https://github.com/heroku/buildpacks?tab=readme-ov-file#supported-languages


-- 
David Caro
SRE - Cloud Services
Wikimedia Foundation <https://wikimediafoundation.org/>
PGP Signature: 7180 83A2 AC8B 314F B4CE  1171 4071 C7E1 D262 69C3

"Imagine a world in which every single human being can freely share in the
sum of all knowledge. That's our commitment."

Attachment: signature.asc
Description: PGP signature

_______________________________________________
Cloud-announce mailing list -- [email protected]
List information: 
https://lists.wikimedia.org/postorius/lists/cloud-announce.lists.wikimedia.org/

Reply via email to