Class: Factorix::CLI::Commands::MOD::Changelog::Add

Inherits:
Base
  • Object
show all
Defined in:
lib/factorix/cli/commands/mod/changelog/add.rb

Overview

Add an entry to a MOD’s changelog.txt

Instance Method Summary collapse

Methods inherited from Base

backup_support!, confirmable!, inherited, require_game_stopped!

Instance Method Details

#call(version:, category:, entry:, changelog: "changelog.txt") ⇒ void

This method returns an undefined value.

Parameters:

  • version (String)

    version string (X.Y.Z or Unreleased)

  • category (String)

    category name

  • entry (Array<String>)

    entry text words

  • changelog (String) (defaults to: "changelog.txt")

    path to changelog file



23
24
25
26
27
28
29
30
# File 'lib/factorix/cli/commands/mod/changelog/add.rb', line 23

def call(version:, category:, entry:, changelog: "changelog.txt", **)
  target_version = version.casecmp("unreleased").zero? ? Factorix::Changelog::UNRELEASED : MODVersion.from_string(version)
  path = Pathname(changelog)
  log = Factorix::Changelog.load(path)
  log.add_entry(target_version, category, entry.join(" "))
  log.save(path)
  say "Added entry to #{target_version} [#{category}]", prefix: :success
end