Class: Rake::Release::Task

Inherits:
Object
  • Object
show all
Includes:
DSL
Defined in:
lib/rake/release/task.rb

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(spec = nil, **kwargs, &block) ⇒ Task

Returns a new instance of Task.



17
18
19
20
21
22
23
24
25
# File 'lib/rake/release/task.rb', line 17

def initialize(spec = nil, **kwargs, &block)
  @spec = spec || Rake::Release::Spec.new(spec, **kwargs, &block)

  if @spec.namespace
    send(:namespace, @spec.namespace) { setup }
  else
    setup
  end
end

Class Method Details

.load_all(dir = pwd, &block) ⇒ Object



206
207
208
209
210
211
212
213
214
215
216
217
218
# File 'lib/rake/release/task.rb', line 206

def load_all(dir = pwd, &block)
  specs = Spec.scan dir.join('**/*.gemspec')

  specs.each {|spec| spec.namespace = spec.name } if specs.size > 1

  specs.each(&block) if block

  if specs.uniq {|s| s.namespace.to_s.strip }.size != specs.size
    raise 'Non distinct release task namespaces'
  end

  specs.each {|spec| Task.new spec }
end

.pwdObject



220
221
222
# File 'lib/rake/release/task.rb', line 220

def pwd
  @pwd ||= Pathname.new Bundler::SharedHelpers.pwd
end

.uiObject



224
225
226
# File 'lib/rake/release/task.rb', line 224

def ui
  @ui ||= Bundler::UI::Shell.new
end