bump 0.8.0 → 0.9.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
 - data/README.md +40 -23
 - data/bin/bump +3 -0
 - data/lib/bump.rb +33 -1
 - data/lib/bump/tasks.rb +4 -2
 - metadata +3 -3
 
    
        checksums.yaml
    CHANGED
    
    | 
         @@ -1,7 +1,7 @@ 
     | 
|
| 
       1 
1 
     | 
    
         
             
            ---
         
     | 
| 
       2 
2 
     | 
    
         
             
            SHA1:
         
     | 
| 
       3 
     | 
    
         
            -
              metadata.gz:  
     | 
| 
       4 
     | 
    
         
            -
              data.tar.gz:  
     | 
| 
      
 3 
     | 
    
         
            +
              metadata.gz: 4cc77e3ae46a84602fc8c584624d77b69a44ef4e
         
     | 
| 
      
 4 
     | 
    
         
            +
              data.tar.gz: a8a1fad7cc8f4f3db749556b81f1c51c168aaaa0
         
     | 
| 
       5 
5 
     | 
    
         
             
            SHA512:
         
     | 
| 
       6 
     | 
    
         
            -
              metadata.gz:  
     | 
| 
       7 
     | 
    
         
            -
              data.tar.gz:  
     | 
| 
      
 6 
     | 
    
         
            +
              metadata.gz: e170caed9096057c8826562869cfd62b30b6cb25577b601242e17e3e603d620ddd5f43890cb7e47aa506719d2d198d13c18d581cfeaa21053c75757c3247d575
         
     | 
| 
      
 7 
     | 
    
         
            +
              data.tar.gz: 48323ff4e45dd6d626781b7251402376c5821cb14f8bcb3ed5b9c8cf198f0af6893c69c3356ff26fdece50e6466e247069022fbcc79db85e71223951595d976a
         
     | 
    
        data/README.md
    CHANGED
    
    | 
         @@ -1,9 +1,11 @@ 
     | 
|
| 
       1 
1 
     | 
    
         
             
            [](https://travis-ci.org/gregorym/bump)
         
     | 
| 
       2 
2 
     | 
    
         
             
            [](http://badge.fury.io/rb/bump)
         
     | 
| 
       3 
3 
     | 
    
         | 
| 
       4 
     | 
    
         
            -
             
     | 
| 
      
 4 
     | 
    
         
            +
            A gem to bump versions of gems and chef-cookbooks.
         
     | 
| 
       5 
5 
     | 
    
         | 
| 
       6 
     | 
    
         
            -
             
     | 
| 
      
 6 
     | 
    
         
            +
             - bumps version major / minor / patch / pre
         
     | 
| 
      
 7 
     | 
    
         
            +
             - bundles
         
     | 
| 
      
 8 
     | 
    
         
            +
             - commits changes
         
     | 
| 
       7 
9 
     | 
    
         | 
| 
       8 
10 
     | 
    
         
             
            # Installation
         
     | 
| 
       9 
11 
     | 
    
         | 
| 
         @@ -11,35 +13,35 @@ Bump is a gem that will simplify the way you build gems and chef-cookbooks. 
     | 
|
| 
       11 
13 
     | 
    
         | 
| 
       12 
14 
     | 
    
         
             
            # Usage
         
     | 
| 
       13 
15 
     | 
    
         | 
| 
       14 
     | 
    
         
            -
             
     | 
| 
      
 16 
     | 
    
         
            +
            ### Show current version
         
     | 
| 
       15 
17 
     | 
    
         | 
| 
       16 
18 
     | 
    
         
             
                bump current
         
     | 
| 
       17 
19 
     | 
    
         | 
| 
       18 
20 
     | 
    
         
             
            > Current version: 0.1.2
         
     | 
| 
       19 
21 
     | 
    
         | 
| 
       20 
     | 
    
         
            -
             
     | 
| 
      
 22 
     | 
    
         
            +
            ### Bump (major, minor, patch, pre)
         
     | 
| 
      
 23 
     | 
    
         
            +
             
     | 
| 
      
 24 
     | 
    
         
            +
                bump patch
         
     | 
| 
      
 25 
     | 
    
         
            +
             
     | 
| 
      
 26 
     | 
    
         
            +
            > Bump version 0.1.2 to 0.1.3
         
     | 
| 
      
 27 
     | 
    
         
            +
             
     | 
| 
      
 28 
     | 
    
         
            +
            ### Show next version
         
     | 
| 
       21 
29 
     | 
    
         | 
| 
       22 
30 
     | 
    
         
             
                bump show-next patch
         
     | 
| 
       23 
31 
     | 
    
         | 
| 
       24 
32 
     | 
    
         
             
            > Next patch version: 0.1.3
         
     | 
| 
       25 
33 
     | 
    
         | 
| 
       26 
     | 
    
         
            -
             
     | 
| 
      
 34 
     | 
    
         
            +
            ### Show version file path
         
     | 
| 
       27 
35 
     | 
    
         | 
| 
       28 
36 
     | 
    
         
             
                bump file
         
     | 
| 
       29 
37 
     | 
    
         | 
| 
       30 
38 
     | 
    
         
             
            > Version file path: lib/foo/version.rb
         
     | 
| 
       31 
39 
     | 
    
         | 
| 
       32 
     | 
    
         
            -
            Bump (major, minor, patch, pre):
         
     | 
| 
       33 
     | 
    
         
            -
             
     | 
| 
       34 
     | 
    
         
            -
                bump patch
         
     | 
| 
       35 
     | 
    
         
            -
             
     | 
| 
       36 
     | 
    
         
            -
            > Bump version 0.1.2 to 0.1.3
         
     | 
| 
       37 
     | 
    
         
            -
             
     | 
| 
       38 
40 
     | 
    
         
             
            ## Options
         
     | 
| 
       39 
41 
     | 
    
         | 
| 
       40 
42 
     | 
    
         
             
            ### `--no-commit`
         
     | 
| 
       41 
43 
     | 
    
         | 
| 
       42 
     | 
    
         
            -
             
     | 
| 
      
 44 
     | 
    
         
            +
            Do not commit after bumping.
         
     | 
| 
       43 
45 
     | 
    
         | 
| 
       44 
46 
     | 
    
         
             
                bump patch --no-commit
         
     | 
| 
       45 
47 
     | 
    
         | 
| 
         @@ -56,39 +58,54 @@ The `--tag-prefix` option can change the tag prefix: 
     | 
|
| 
       56 
58 
     | 
    
         | 
| 
       57 
59 
     | 
    
         
             
            ### `--no-bundle`
         
     | 
| 
       58 
60 
     | 
    
         | 
| 
       59 
     | 
    
         
            -
             
     | 
| 
      
 61 
     | 
    
         
            +
            Do not run `bundle` command after bumping.
         
     | 
| 
       60 
62 
     | 
    
         | 
| 
       61 
63 
     | 
    
         
             
                bump patch --no-bundle
         
     | 
| 
       62 
64 
     | 
    
         | 
| 
       63 
65 
     | 
    
         
             
            ### `--replace-in`
         
     | 
| 
       64 
66 
     | 
    
         | 
| 
       65 
     | 
    
         
            -
             
     | 
| 
      
 67 
     | 
    
         
            +
            Bump the version in additional files.
         
     | 
| 
       66 
68 
     | 
    
         | 
| 
       67 
69 
     | 
    
         
             
                bump patch --reaplace-in Readme.md
         
     | 
| 
       68 
70 
     | 
    
         | 
| 
       69 
71 
     | 
    
         
             
            ### `--commit-message [MSG], -m [MSG]`
         
     | 
| 
       70 
72 
     | 
    
         | 
| 
       71 
     | 
    
         
            -
             
     | 
| 
      
 73 
     | 
    
         
            +
            Append additional information to the commit message.
         
     | 
| 
       72 
74 
     | 
    
         | 
| 
       73 
     | 
    
         
            -
                bump patch --commit-message  
     | 
| 
      
 75 
     | 
    
         
            +
                bump patch --commit-message "Something extra"
         
     | 
| 
       74 
76 
     | 
    
         | 
| 
       75 
77 
     | 
    
         
             
            or
         
     | 
| 
       76 
78 
     | 
    
         | 
| 
       77 
     | 
    
         
            -
                bump patch -m  
     | 
| 
      
 79 
     | 
    
         
            +
                bump patch -m "Something extra"
         
     | 
| 
      
 80 
     | 
    
         
            +
             
     | 
| 
      
 81 
     | 
    
         
            +
            ### `--changelog`
         
     | 
| 
      
 82 
     | 
    
         
            +
             
     | 
| 
      
 83 
     | 
    
         
            +
            Update `CHANGELOG.md` when bumping.
         
     | 
| 
      
 84 
     | 
    
         
            +
            This requires a heading (starting with `##`) that includes the previous version and a heading above that, for example:
         
     | 
| 
      
 85 
     | 
    
         
            +
             
     | 
| 
      
 86 
     | 
    
         
            +
            ```markdown
         
     | 
| 
      
 87 
     | 
    
         
            +
            ### Next
         
     | 
| 
      
 88 
     | 
    
         
            +
            - Added bar
         
     | 
| 
       78 
89 
     | 
    
         | 
| 
       79 
     | 
    
         
            -
            ###  
     | 
| 
      
 90 
     | 
    
         
            +
            ### v0.0.0 - 2019-12-24
         
     | 
| 
      
 91 
     | 
    
         
            +
            - Added foo
         
     | 
| 
      
 92 
     | 
    
         
            +
            ```
         
     | 
| 
      
 93 
     | 
    
         
            +
             
     | 
| 
      
 94 
     | 
    
         
            +
            ## Rake
         
     | 
| 
       80 
95 
     | 
    
         | 
| 
       81 
96 
     | 
    
         
             
            ```ruby
         
     | 
| 
       82 
97 
     | 
    
         
             
            # Rakefile
         
     | 
| 
       83 
98 
     | 
    
         
             
            require "bump/tasks"
         
     | 
| 
       84 
99 
     | 
    
         | 
| 
       85 
100 
     | 
    
         
             
            #
         
     | 
| 
       86 
     | 
    
         
            -
            #  
     | 
| 
       87 
     | 
    
         
            -
            # Bump.tag_by_default =  
     | 
| 
      
 101 
     | 
    
         
            +
            # do not always tag the version
         
     | 
| 
      
 102 
     | 
    
         
            +
            # Bump.tag_by_default = false
         
     | 
| 
       88 
103 
     | 
    
         
             
            #
         
     | 
| 
       89 
     | 
    
         
            -
            #  
     | 
| 
      
 104 
     | 
    
         
            +
            # bump the version in additional files
         
     | 
| 
       90 
105 
     | 
    
         
             
            # Bump.replace_in_default = ["Readme.md"]
         
     | 
| 
       91 
     | 
    
         
            -
             
     | 
| 
      
 106 
     | 
    
         
            +
            #
         
     | 
| 
      
 107 
     | 
    
         
            +
            # Maintain changelog:
         
     | 
| 
      
 108 
     | 
    
         
            +
            # Bump.changelog = true
         
     | 
| 
       92 
109 
     | 
    
         
             
            ```
         
     | 
| 
       93 
110 
     | 
    
         | 
| 
       94 
111 
     | 
    
         
             
                rake bump:current                           # display current version
         
     | 
| 
         @@ -107,7 +124,7 @@ require "bump/tasks" 
     | 
|
| 
       107 
124 
     | 
    
         
             
                rake bump:patch COMMIT=false TAG=false      # don't commit, don't tag
         
     | 
| 
       108 
125 
     | 
    
         
             
                rake bump:minor BUNDLE=false                # don't run `bundle`
         
     | 
| 
       109 
126 
     | 
    
         | 
| 
       110 
     | 
    
         
            -
             
     | 
| 
      
 127 
     | 
    
         
            +
            ## Ruby
         
     | 
| 
       111 
128 
     | 
    
         | 
| 
       112 
129 
     | 
    
         
             
            ```ruby
         
     | 
| 
       113 
130 
     | 
    
         
             
            require "bump"
         
     | 
    
        data/bin/bump
    CHANGED
    
    | 
         @@ -1,4 +1,6 @@ 
     | 
|
| 
       1 
1 
     | 
    
         
             
            #!/usr/bin/env ruby
         
     | 
| 
      
 2 
     | 
    
         
            +
            # frozen_string_literal: true
         
     | 
| 
      
 3 
     | 
    
         
            +
             
     | 
| 
       2 
4 
     | 
    
         
             
            require 'optparse'
         
     | 
| 
       3 
5 
     | 
    
         
             
            require 'shellwords'
         
     | 
| 
       4 
6 
     | 
    
         | 
| 
         @@ -25,6 +27,7 @@ OptionParser.new do |opts| 
     | 
|
| 
       25 
27 
     | 
    
         
             
              opts.on("--tag", "Create git tag from version (only if commit is true).") { options[:tag] = true }
         
     | 
| 
       26 
28 
     | 
    
         
             
              opts.on("--tag-prefix TAG_PREFIX", "Prefix the tag with this string, ex. 'v'") { |tag_prefix| options[:tag_prefix] = tag_prefix }
         
     | 
| 
       27 
29 
     | 
    
         
             
              opts.on("--replace-in FILE", String, "Replace old version with the new version additionally in this file") { |f| (options[:replace_in] ||= []) << f }
         
     | 
| 
      
 30 
     | 
    
         
            +
              opts.on("--changelog", "Update CHANGELOG.md") { options[:changelog] = true }
         
     | 
| 
       28 
31 
     | 
    
         
             
              opts.on("-h", "--help", "Show this.") { puts opts; exit }
         
     | 
| 
       29 
32 
     | 
    
         
             
            end.parse!
         
     | 
| 
       30 
33 
     | 
    
         | 
    
        data/lib/bump.rb
    CHANGED
    
    | 
         @@ -1,3 +1,5 @@ 
     | 
|
| 
      
 1 
     | 
    
         
            +
            # frozen_string_literal: true
         
     | 
| 
      
 2 
     | 
    
         
            +
             
     | 
| 
       1 
3 
     | 
    
         
             
            module Bump
         
     | 
| 
       2 
4 
     | 
    
         
             
              class InvalidIncrementError < StandardError; end
         
     | 
| 
       3 
5 
     | 
    
         
             
              class InvalidOptionError < StandardError; end
         
     | 
| 
         @@ -8,7 +10,7 @@ module Bump 
     | 
|
| 
       8 
10 
     | 
    
         
             
              class RakeArgumentsDeprecatedError < StandardError; end
         
     | 
| 
       9 
11 
     | 
    
         | 
| 
       10 
12 
     | 
    
         
             
              class <<self
         
     | 
| 
       11 
     | 
    
         
            -
                attr_accessor :tag_by_default, :replace_in_default
         
     | 
| 
      
 13 
     | 
    
         
            +
                attr_accessor :tag_by_default, :replace_in_default, :changelog
         
     | 
| 
       12 
14 
     | 
    
         
             
              end
         
     | 
| 
       13 
15 
     | 
    
         | 
| 
       14 
16 
     | 
    
         
             
              class Bump
         
     | 
| 
         @@ -23,6 +25,7 @@ module Bump 
     | 
|
| 
       23 
25 
     | 
    
         
             
                      tag: ::Bump.tag_by_default,
         
     | 
| 
       24 
26 
     | 
    
         
             
                      tag_prefix: 'v',
         
     | 
| 
       25 
27 
     | 
    
         
             
                      commit: true,
         
     | 
| 
      
 28 
     | 
    
         
            +
                      changelog: ::Bump.changelog || false, # TODO: default to true with opt-out once it gets more stable
         
     | 
| 
       26 
29 
     | 
    
         
             
                      bundle: File.exist?("Gemfile"),
         
     | 
| 
       27 
30 
     | 
    
         
             
                      replace_in: ::Bump.replace_in_default || []
         
     | 
| 
       28 
31 
     | 
    
         
             
                    }
         
     | 
| 
         @@ -134,6 +137,17 @@ module Bump 
     | 
|
| 
       134 
137 
     | 
    
         
             
                      end
         
     | 
| 
       135 
138 
     | 
    
         
             
                    end
         
     | 
| 
       136 
139 
     | 
    
         | 
| 
      
 140 
     | 
    
         
            +
                    # changelog if needed
         
     | 
| 
      
 141 
     | 
    
         
            +
                    if options[:changelog]
         
     | 
| 
      
 142 
     | 
    
         
            +
                      log = Dir["CHANGELOG.md"].first
         
     | 
| 
      
 143 
     | 
    
         
            +
                      return ["Did not find CHANGELOG.md", 1] unless log
         
     | 
| 
      
 144 
     | 
    
         
            +
             
     | 
| 
      
 145 
     | 
    
         
            +
                      error = bump_changelog(log, next_version)
         
     | 
| 
      
 146 
     | 
    
         
            +
                      return [error, 1] if error
         
     | 
| 
      
 147 
     | 
    
         
            +
             
     | 
| 
      
 148 
     | 
    
         
            +
                      git_add log if options[:commit]
         
     | 
| 
      
 149 
     | 
    
         
            +
                    end
         
     | 
| 
      
 150 
     | 
    
         
            +
             
     | 
| 
       137 
151 
     | 
    
         
             
                    # commit staged changes
         
     | 
| 
       138 
152 
     | 
    
         
             
                    commit next_version, options if options[:commit]
         
     | 
| 
       139 
153 
     | 
    
         | 
| 
         @@ -160,6 +174,24 @@ module Bump 
     | 
|
| 
       160 
174 
     | 
    
         
             
                    bump(file, current, next_version, options)
         
     | 
| 
       161 
175 
     | 
    
         
             
                  end
         
     | 
| 
       162 
176 
     | 
    
         | 
| 
      
 177 
     | 
    
         
            +
                  def bump_changelog(file, current)
         
     | 
| 
      
 178 
     | 
    
         
            +
                    parts = File.read(file).split(/(^##+.*)/) # headlines and their content
         
     | 
| 
      
 179 
     | 
    
         
            +
                    prev_index = parts.index { |p| p =~ /(^##+.*(\d+\.\d+\.\d+(\.[a-z]+)?).*)/ } # position of previous version
         
     | 
| 
      
 180 
     | 
    
         
            +
                    return "Unable to find previous version" unless prev_index
         
     | 
| 
      
 181 
     | 
    
         
            +
             
     | 
| 
      
 182 
     | 
    
         
            +
                    # reuse the same style by just swapping the numbers
         
     | 
| 
      
 183 
     | 
    
         
            +
                    new_heading = "\n" + parts[prev_index].sub($2, current)
         
     | 
| 
      
 184 
     | 
    
         
            +
             
     | 
| 
      
 185 
     | 
    
         
            +
                    # add current date if previous heading used that
         
     | 
| 
      
 186 
     | 
    
         
            +
                    new_heading.sub!(/\d\d\d\d-\d\d-\d\d/, Time.now.strftime('%Y-%m-%d'))
         
     | 
| 
      
 187 
     | 
    
         
            +
             
     | 
| 
      
 188 
     | 
    
         
            +
                    # put our new heading underneath the "Next" heading, which should be above the last version
         
     | 
| 
      
 189 
     | 
    
         
            +
                    parts.insert prev_index - 1, new_heading
         
     | 
| 
      
 190 
     | 
    
         
            +
             
     | 
| 
      
 191 
     | 
    
         
            +
                    File.write file, parts.join("")
         
     | 
| 
      
 192 
     | 
    
         
            +
                    nil
         
     | 
| 
      
 193 
     | 
    
         
            +
                  end
         
     | 
| 
      
 194 
     | 
    
         
            +
             
     | 
| 
       163 
195 
     | 
    
         
             
                  def commit_message(version, options)
         
     | 
| 
       164 
196 
     | 
    
         
             
                    tag = "#{options[:tag_prefix]}#{version}"
         
     | 
| 
       165 
197 
     | 
    
         
             
                    options[:commit_message] ? "#{tag} #{options[:commit_message]}" : tag
         
     | 
    
        data/lib/bump/tasks.rb
    CHANGED
    
    | 
         @@ -1,3 +1,5 @@ 
     | 
|
| 
      
 1 
     | 
    
         
            +
            # frozen_string_literal: true
         
     | 
| 
      
 2 
     | 
    
         
            +
             
     | 
| 
       1 
3 
     | 
    
         
             
            require "bump"
         
     | 
| 
       2 
4 
     | 
    
         | 
| 
       3 
5 
     | 
    
         
             
            namespace :bump do
         
     | 
| 
         @@ -18,8 +20,8 @@ namespace :bump do 
     | 
|
| 
       18 
20 
     | 
    
         
             
                  desc "Bump #{bump} part of gem version"
         
     | 
| 
       19 
21 
     | 
    
         
             
                end
         
     | 
| 
       20 
22 
     | 
    
         | 
| 
       21 
     | 
    
         
            -
                task bump, : 
     | 
| 
       22 
     | 
    
         
            -
                  if args. 
     | 
| 
      
 23 
     | 
    
         
            +
                task bump, :no_args do |_task, args|
         
     | 
| 
      
 24 
     | 
    
         
            +
                  if args.no_args
         
     | 
| 
       23 
25 
     | 
    
         
             
                    raise(
         
     | 
| 
       24 
26 
     | 
    
         
             
                      RakeArgumentsDeprecatedError,
         
     | 
| 
       25 
27 
     | 
    
         
             
                      "rake arguments are deprecated, use TAG=false to disable tagging"
         
     | 
    
        metadata
    CHANGED
    
    | 
         @@ -1,14 +1,14 @@ 
     | 
|
| 
       1 
1 
     | 
    
         
             
            --- !ruby/object:Gem::Specification
         
     | 
| 
       2 
2 
     | 
    
         
             
            name: bump
         
     | 
| 
       3 
3 
     | 
    
         
             
            version: !ruby/object:Gem::Version
         
     | 
| 
       4 
     | 
    
         
            -
              version: 0. 
     | 
| 
      
 4 
     | 
    
         
            +
              version: 0.9.0
         
     | 
| 
       5 
5 
     | 
    
         
             
            platform: ruby
         
     | 
| 
       6 
6 
     | 
    
         
             
            authors:
         
     | 
| 
       7 
7 
     | 
    
         
             
            - Gregory Marcilhacy
         
     | 
| 
       8 
8 
     | 
    
         
             
            autorequire: 
         
     | 
| 
       9 
9 
     | 
    
         
             
            bindir: bin
         
     | 
| 
       10 
10 
     | 
    
         
             
            cert_chain: []
         
     | 
| 
       11 
     | 
    
         
            -
            date:  
     | 
| 
      
 11 
     | 
    
         
            +
            date: 2020-02-12 00:00:00.000000000 Z
         
     | 
| 
       12 
12 
     | 
    
         
             
            dependencies:
         
     | 
| 
       13 
13 
     | 
    
         
             
            - !ruby/object:Gem::Dependency
         
     | 
| 
       14 
14 
     | 
    
         
             
              name: bundler
         
     | 
| 
         @@ -89,7 +89,7 @@ required_ruby_version: !ruby/object:Gem::Requirement 
     | 
|
| 
       89 
89 
     | 
    
         
             
              requirements:
         
     | 
| 
       90 
90 
     | 
    
         
             
              - - ">="
         
     | 
| 
       91 
91 
     | 
    
         
             
                - !ruby/object:Gem::Version
         
     | 
| 
       92 
     | 
    
         
            -
                  version: 2. 
     | 
| 
      
 92 
     | 
    
         
            +
                  version: 2.3.0
         
     | 
| 
       93 
93 
     | 
    
         
             
            required_rubygems_version: !ruby/object:Gem::Requirement
         
     | 
| 
       94 
94 
     | 
    
         
             
              requirements:
         
     | 
| 
       95 
95 
     | 
    
         
             
              - - ">="
         
     |