File tree Expand file tree Collapse file tree
Expand file tree Collapse file tree Original file line number Diff line number Diff line change 11require "bundler/gem_tasks"
22require "rake/testtask"
33
4+ helper = Bundler ::GemHelper . instance
5+
46Rake ::TestTask . new ( :test ) do |t |
57 t . test_files = FileList [ "test/**/test_*.rb" ]
68end
@@ -12,3 +14,41 @@ task "build" => "date_epoch"
1214task "date_epoch" do
1315 ENV [ "SOURCE_DATE_EPOCH" ] = IO . popen ( %W[ git -C #{ __dir__ } log -1 --format=%ct ] , &:read ) . chomp
1416end
17+
18+ def helper . update_gemspec
19+ path = "#{ __dir__ } /#{ gemspec . name } .gemspec"
20+ File . open ( path , "r+b" ) do |f |
21+ if ( d = f . read ) . sub! ( /^(version\s *=\s *)".*"/ ) { $1 + gemspec . version . to_s . dump }
22+ f . rewind
23+ f . truncate ( 0 )
24+ f . print ( d )
25+ end
26+ end
27+ end
28+
29+ def helper . commit_bump
30+ sh ( %W[ git -C #{ __dir__ } commit -m bump\ up\ to\ #{ gemspec . version }
31+ #{ gemspec . name } .gemspec] )
32+ end
33+
34+ def helper . version = ( v )
35+ gemspec . version = v
36+ update_gemspec
37+ commit_bump
38+ tag_version
39+ end
40+ major , minor , teeny = helper . gemspec . version . segments
41+
42+ task "bump:teeny" do
43+ helper . version = Gem ::Version . new ( "#{ major } .#{ minor } .#{ teeny +1 } " )
44+ end
45+
46+ task "bump:minor" do
47+ raise "can't bump up minor"
48+ end
49+
50+ task "bump:major" do
51+ raise "can't bump up major"
52+ end
53+
54+ task "bump" => "bump:teeny"
You can’t perform that action at this time.
0 commit comments