diff --git a/nullgem.gemspec b/nullgem.gemspec index 3388824..0f49611 100644 --- a/nullgem.gemspec +++ b/nullgem.gemspec @@ -1,7 +1,18 @@ Gem::Specification.new do |gem| gem.name = "nullgem" - gem.version = '0.0.0' - gem.date = '2001-01-01' + gem.version = begin + head_sha = %x{git rev-parse HEAD}.strip + tag_version = %x{git name-rev --tags --name-only #{head_sha}}.strip + untracked_files = (%x{git ls-files --others --exclude-standard}.strip != '') + _diff_status_only = %x{git diff --quiet --exit-code HEAD} + head_diff = ($?.exitstatus != 0) + + version = (tag_version =~ /^\d+\.\d+\.\d+$/) ? tag_version : "0.0.0.#{head_sha[0..7]}" + dev_tag = (untracked_files || head_diff) ? '-dev' : '' + + version + dev_tag + end + gem.date = '2012-03-04' gem.authors = ["Michael Toy"] gem.email = ["michael@toyland.org"] gem.description = %q{A gem which does nothing, for testing}