Files
Sebastian Poxhofer 9fc451c44d refactor(manager): share the lock file updateArtifacts skeleton (#46093)
Migrate pub, gleam, helmfile, pixi, mise, poetry, pep621/pdm and
pep621/uv onto `updateLockFile()`, so each manager keeps only its
command and `ExecOptions` construction.

Behaviour changes:

- Artifact error text now comes from `artifactErrorMessageFromExecError`,
  i.e. a non-blank `err.stderr`, else a non-blank `err.stdout`, else
  `err.message`. Previously pixi used `${err}` ("Error: " prefix), mise
  joined stdout, stderr and message, and poetry rendered
  "<stdout>\n<stderr>" (literally "undefined\nundefined" when the error
  carried neither).
- helmfile, pixi, poetry, pdm and uv now return null instead of an
  addition when the lock file is missing or empty after the run, which
  is what gleam and mise already did.
- Unchanged/missing lock file debug messages are now uniformly
  "<lockFileName> is unchanged" / "No <lockFileName> found". pub gains
  such a message, mise loses "Returning updated mise lock file" and
  poetry loses "Returning updated <lockFileName>".
2026-09-16 13:13:42 +00:00
..

Renovate can update gleam.toml and/or manifest.toml files.

How Renovate updates gleam.toml files

The gleam manager extracts dependencies for the hex datasource, and uses Renovate's implementation of Hex SemVer to evaluate gleam.toml updates.

How Renovate updates manifest.toml files

The gleam manager uses the gleam program to update manifest.toml files.

Enable lockFileMaintenance

We recommend you set lockFileMaintenance to true for the gleam manager, in your Renovate config. This way Renovate can update all your dependencies, including those with in-range updates.

lockFileMaintenance=true periodically refreshes your manifest.toml files, ensuring all dependencies are updated to their latest allowed versions.

Default rangeStrategy=auto behavior

Renovate's default rangeStrategy is "auto". Here's how "auto" works with the gleam manager:

Version type New version Old range New range after update What Renovate does
Complex range 0.16.0 >= 0.14.0 and < 0.15.0 >= 0.14.0 and < 0.16.1 Widen range to include the new version.
Simple range 0.39.0 <= 0.38.0 <= 0.39.0 If update outside current range: widens range to include the new version.
Exact version constraint 0.13.0 == 0.12.0 == 0.13.0 Replace old version with new version.

For applications, we recommend using rangeStrategy=pin. This pins your dependencies to exact versions, which is generally considered best practice for apps.

For libraries, use rangeStrategy=widen with version ranges in your gleam.toml. This allows for greater compatibility with other projects that may use your library as a dependency.