class Semverve::Generator
Generates new Ruby version files from Semverve configuration.
Constants
- DEFAULT_VERSION
-
Default version used when a version argument is not provided.
@return [String]
Public Class Methods
# File lib/semverve/generator.rb, line 28 def initialize(configuration, version: nil, format: nil, force: false) @configuration = configuration @version = version @format = format @force = force end
Initializes a version-file generator.
@param [Semverve::ResolvedConfiguration] configuration @param [String, nil] version @param [String, Symbol, nil] format @param [Boolean] force
@return [Semverve::Generator]
Public Instance Methods
Source
# File lib/semverve/generator.rb, line 39 def generate version = SemanticVersion.parse(requested_version) format = Formats.fetch(requested_format) path = configuration.absolute_version_file if File.exist?(path) && !force? raise Error, "Version file already exists at #{path}. Run rake 'semverve:generate[force]' to overwrite it." end FileUtils.mkdir_p(File.dirname(path)) File.write(path, format.generate(version, module_name: configuration.module_name)) path end
Generates the configured version file.
@return [String]