Skip to content

[Toys-release] Configuration for updating version number #388

@dazuma

Description

@dazuma

Currently the mechanism for updating the version number when preparing a release, is hard-coded: it updates the value of the VERSION constant in a particular Ruby file. The path to the file can be configured, but the text and format of the update itself cannot. It should be possible to provide a more flexible configuration of this.

A few preliminary ideas:

  • We could borrow a few ideas from release-please, which lets you configure an overall "type" (generally mapping to programming language) of the release, which maps to code that specifies how to update files and perform releases. This, however, requires you to write code for everything, which may be unavoidable for some use cases but I hope we could do better for others. For example, even within a particular language (e.g. Ruby), I'd like to allow support for different ways to update files, if some users have a version.rb file, but others just want to update the gemspec directly, and still others might have a VERSION.txt file.
  • We could support some kind of regex-replace syntax (similar to gsub syntax), coupled with a way to specify which file to modify. Then provide a way to configure zero or more of those pairs, globally and/or at the component level.

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or request

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions