class Semverve::Task
Defines Semverveโs Rake tasks for the current Rake application.
Public Class Methods
Source
# File lib/semverve/task.rb, line 25 def install return if installed_for_current_application? new end
Installs Semverve tasks once for the current Rake application.
@return [Semverve::Task, nil]
# File lib/semverve/task.rb, line 64 def initialize yield Semverve.configuration if block_given? unless self.class.send(:installed_for_current_application?) define self.class.send(:mark_current_application_installed) end end
Configures and defines Semverve tasks if needed.
@yieldparam [Semverve::Configuration] configuration
@return [Semverve::Task]
Public Instance Methods
Source
# File lib/semverve/task.rb, line 77 def define namespace :semverve do desc "Print the current version from the version.rb file" task :current do puts VersionFile.new(Semverve.configuration.resolved).current end namespace :increment do desc "Increment the version's PATCH level" task :patch do increment(:patch) end desc "Increment the version's MINOR level" task :minor do increment(:minor) end desc "Increment the version's MAJOR level" task :major do increment(:major) end end desc "Generate a version.rb file" task :generate, [:version, :format, :force] do |_task, args| generator_options = generate_options(args) puts "Generated #{Generator.new( Semverve.configuration.resolved, version: generator_options[:version], format: generator_options[:format], force: generator_options[:force] ).generate}" end desc "Set the version.rb file to version" task :set, [:version] do |_task, args| set(args) end desc "Check version references, code literals, and metadata" task :check do check end namespace :check do desc "Check configured files for stale version references" task :references do check_references end desc "Check configured code files for version literals" task :code do check_code end desc "Check gem metadata for version mismatches" task :metadata do check_metadata end desc "Check whether the current gem version is already published" task :rubygems do check_rubygems end desc "Check configured release-readiness surfaces" task :release do check_release end end desc "Fix version references, code literals, and metadata" task :fix do fix end namespace :fix do desc "Replace stale version references in configured files" task :references do fix_references end desc "Replace safe code version literals in configured files" task :code do fix_code end desc "Fix safe gem metadata version mismatches" task :metadata do fix_metadata end end end end
Defines the semverve:* Rake tasks.
@return [void]