Sha256: 34cd0a1d8973088cbc655f377afb479ce0ef7e500b63ac70b63e1b39555b8fad

Contents?: true

Size: 969 Bytes

Versions: 6

Compression:

Stored size: 969 Bytes

Contents

desc "Validates your Changelog, updates your VERSION constant, commits that, then releases your gem."
task 'changelog:release', [:repo_path, :changelog_path, :version_path] do |_task, arguments|
  Rake::Task['changelog:prep'].execute(arguments)

  # Merely requiring `bundler/gem_tasks` instantiates & caches a gemspec. At this point in this code,
  # it's already set and attached to the `Bundler::GemHelper` module. In fact, it's there before this
  # file is laoded at all. This means that our changes to the filesystem won't change the version bundler
  # thinks our gem is. We could instantiate another gemspec and attach it, or we could try modifying the
  # gemspec in situ, but both would be extremely brittle. What we do instead, is start another process,
  # and because that process doesn't have the state ours does already, our changes to the filesystem will
  # be picked up, and we'll actually cut a release of the new version.
  exec('rake release')
end

Version data entries

6 entries across 6 versions & 1 rubygems

Version Path
structured_changelog-0.11.2 lib/structured_changelog/tasks/release.rb
structured_changelog-0.11.1 lib/structured_changelog/tasks/release.rb
structured_changelog-0.11.0 lib/structured_changelog/tasks/release.rb
structured_changelog-0.10.2 lib/structured_changelog/tasks/release.rb
structured_changelog-0.10.1 lib/structured_changelog/tasks/release.rb
structured_changelog-0.10.0 lib/structured_changelog/tasks/release.rb