Skip to content

Improve documentation for using implicit layer versioning #316

@ncoghlan

Description

@ncoghlan

(This is a follow up to a previous comment comment at #168 (comment))

The introduction of cross platform locking in #254 effectively resolved #168 in favour of bumping the implicit layer version for all platforms even when a lock update only affects one platform. This means:

  • adding a new platform also bumps the layer version for existing platforms
  • the layer version is bumped for all platforms even if the dependency version changes only affect a subset of platforms

While this is enough to eliminate the cross-platform version inconsistency problem, it doesn't inherently avoid the potential implicit version inflation due to repeated local builds while iterating on a new version of a layer update (it just makes it so that if it happens, it affects all platforms).

The trick to avoiding layer version inflation when iterating on an update is to run then development iterations, and then restore the previously committed layer lock files. That way, the next lock update will increment to the implicit layer versions by a single step.

This isn't something venvstacks can reasonably automate, so it should instead be covered in the documentation when describing implicit layer versioning.

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions