Class: Gemspec

Inherits:
Object
  • Object
show all
Defined in:
lib/gemspec.rb

Class Method Summary collapse

Class Method Details

.gemfile(gemspec_file) ⇒ Object



8
9
10
11
# File 'lib/gemspec.rb', line 8

def self.gemfile gemspec_file
	spec=Gem::Specification.load(gemspec_file)
	return "#{spec.name}-#{spec.version}.gem"
end

.normalize(gemspec_file) ⇒ Object



32
33
34
35
# File 'lib/gemspec.rb', line 32

def self.normalize gemspec_file
	spec=Gem::Specification.load(gemspec_file)
	File.open(gemspec_file,'w'){|f|f.write(spec.to_ruby)}
end

.published?(gemspec_file) ⇒ Boolean

Returns:

  • (Boolean)


28
29
30
# File 'lib/gemspec.rb', line 28

def self.published? gemspec_file
	published_version(gemspec_file)==version(gemspec_file) ? true : false
end

.published_version(gemspec_file) ⇒ Object



18
19
20
21
22
23
24
25
26
27
# File 'lib/gemspec.rb', line 18

def self.published_version gemspec_file
published_version=''
	spec=Gem::Specification.load(gemspec_file)
		begin
published_version = `gem list -r #{spec.name} -r`.scan(/\((\d+.\d+.\d+)\)/)[0][0]
		rescue
published_version=''
		end
		published_version
end

.update(gemspec_file) ⇒ Object



2
3
4
5
6
# File 'lib/gemspec.rb', line 2

def self.update gemspec_file
	Text.replace_in_file gemspec_file,
                             /('\d{4}-\d{2}-\d{2}')/,
                             "'#{Time.now.strftime('%Y-%m-%d')}'"
end

.version(gemspec_file) ⇒ Object



13
14
15
16
# File 'lib/gemspec.rb', line 13

def self.version gemspec_file
	spec=Gem::Specification.load(gemspec_file)
		return spec.version.to_s
end