git_helper 1.1.1 → 1.2.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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 130ab19f392a258f0869dc46d7791b041da124d640d7d403233ea4dedb9c0877
4
- data.tar.gz: 3be0a8d79b78e8a56e09f658dcaa7c19ee944a19b49e0da1c4c49752608454c5
3
+ metadata.gz: 4cc3fc36c08dc2723f9f8bfcca211b1370cd55108c6c62767d1ef9f9bdd722f4
4
+ data.tar.gz: a00ace631f1832579d1fe8836bfffa91ef4833f38bc108029bc5b5cc9422f1ae
5
5
  SHA512:
6
- metadata.gz: 84351ee9438d3f8579ffa655ab10d50f156df16f8cb0421503363bff82870432683e511291a852ec47b8802ff1827b21dd15e1fe2fe4ce18fe8bc5576515ae28
7
- data.tar.gz: 8195c5bfd1760835379de77182302e329579cd16b92b03bb5e646e042c73124a32156477a1b7623e1ed495619745aa33891aae86cbfd3c0c66d12b48aabbf8b4
6
+ metadata.gz: 9526890d2b4d389a08edebbb7009ec66fe2532be829fe3bfaaec2a6f1e931ff063f61dfdb1dbeb9343787e1b2d9c4e2f04e979b3308b70730120c14b1315667a
7
+ data.tar.gz: 8ac4ef4d0ccd75c8ca95cc3fd6aa73090cd273ac2161089289abb9724a879d1edad520f683aafbe35426ebbe6cdd50b0456a6e9e9f7b519411a7647e992da71d
data/README.md CHANGED
@@ -173,3 +173,5 @@ To make a new release of this gem:
173
173
  4. Run `gem build *.gemspec`
174
174
  5. Run `gem push *.gem` to push the new gem to RubyGems
175
175
  6. Run `rm *.gem` to clean up your local repository
176
+
177
+ To set up your local machine to push to RubyGems via the API, see the [RubyGems documentation](https://guides.rubygems.org/publishing/#publishing-to-rubygemsorg).
@@ -97,7 +97,32 @@ module GitHelper
97
97
  end
98
98
 
99
99
  private def autogenerated_title
100
- @autogenerated_title ||= local_branch.split('_')[0..-1].join(' ').capitalize
100
+ @autogenerated_title ||= generate_title
101
+ end
102
+
103
+ private def generate_title
104
+ branch_arr = local_branch.split(local_branch.include?('_') ? '_' : '-')
105
+
106
+ return if branch_arr.empty?
107
+
108
+ if branch_arr.length == 1
109
+ return branch_arr.first.capitalize
110
+ end
111
+
112
+ if branch_arr[0].scan(/([\w]+)/).empty? || branch_arr[1].scan(/([\d]+)/).empty?
113
+ branch_arr[0..-1].join(' ').capitalize
114
+ else
115
+ issue = branch_arr[0].upcase
116
+
117
+ if issue.include?('-')
118
+ description = branch_arr[1..-1].join(' ')
119
+ else
120
+ issue = "#{issue}-#{branch_arr[1]}"
121
+ description = branch_arr[2..-1].join(' ')
122
+ end
123
+
124
+ "#{issue} #{description.capitalize}"
125
+ end
101
126
  end
102
127
 
103
128
  private def default_branch
@@ -137,8 +162,14 @@ module GitHelper
137
162
  end
138
163
 
139
164
  private def accept_autogenerated_title?
140
- answer = cli.ask("Accept the autogenerated merge request title '#{autogenerated_title}'? (y/n)")
141
- !!(answer =~ /^y/i)
165
+ title = autogenerated_title
166
+
167
+ if title
168
+ answer = cli.ask("Accept the autogenerated merge request title '#{title}'? (y/n)")
169
+ !!(answer =~ /^y/i)
170
+ else
171
+ false
172
+ end
142
173
  end
143
174
 
144
175
  private def squash_merge_request?
@@ -112,7 +112,32 @@ module GitHelper
112
112
  end
113
113
 
114
114
  private def autogenerated_title
115
- @autogenerated_title ||= local_branch.split('_')[0..-1].join(' ').capitalize
115
+ @autogenerated_title ||= generate_title
116
+ end
117
+
118
+ private def generate_title
119
+ branch_arr = local_branch.split(local_branch.include?('_') ? '_' : '-')
120
+
121
+ return if branch_arr.empty?
122
+
123
+ if branch_arr.length == 1
124
+ return branch_arr.first.capitalize
125
+ end
126
+
127
+ if branch_arr[0].scan(/([\w]+)/).empty? || branch_arr[1].scan(/([\d]+)/).empty?
128
+ branch_arr[0..-1].join(' ').capitalize
129
+ else
130
+ issue = branch_arr[0].upcase
131
+
132
+ if issue.include?('-')
133
+ description = branch_arr[1..-1].join(' ')
134
+ else
135
+ issue = "#{issue}-#{branch_arr[1]}"
136
+ description = branch_arr[2..-1].join(' ')
137
+ end
138
+
139
+ "#{issue} #{description.capitalize}"
140
+ end
116
141
  end
117
142
 
118
143
  private def default_branch
@@ -145,8 +170,14 @@ module GitHelper
145
170
  end
146
171
 
147
172
  private def accept_autogenerated_title?
148
- answer = cli.ask("Accept the autogenerated pull request title '#{autogenerated_title}'? (y/n)")
149
- !!(answer =~ /^y/i)
173
+ title = autogenerated_title
174
+
175
+ if title
176
+ answer = cli.ask("Accept the autogenerated merge request title '#{title}'? (y/n)")
177
+ !!(answer =~ /^y/i)
178
+ else
179
+ false
180
+ end
150
181
  end
151
182
 
152
183
  private def apply_template?(template_file_name)
@@ -1,3 +1,3 @@
1
1
  module GitHelper
2
- VERSION = '1.1.1'
2
+ VERSION = '1.2.0'
3
3
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: git_helper
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.1.1
4
+ version: 1.2.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Emma Sax
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2020-09-29 00:00:00.000000000 Z
11
+ date: 2020-09-30 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: gitlab