fastlane-plugin-semantic_convention_release 1.0.3 → 1.0.4
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/lib/fastlane/plugin/semantic_convention_release/actions/analyze_commits.rb +22 -11
- data/lib/fastlane/plugin/semantic_convention_release/actions/conventional_changelog.rb +2 -3
- data/lib/fastlane/plugin/semantic_convention_release/helper/semantic_convention_release_helper.rb +1 -1
- data/lib/fastlane/plugin/semantic_convention_release/version.rb +1 -1
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: d9f08f67b8b80e5f8c29eb96074ee4f7d3e89dd52173387ad893226f7bb32bea
|
4
|
+
data.tar.gz: 71b952d8c07eeae2b912377538ebc89cc02ba8f8b9cab3d253f75f2471dca3e0
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 488d021f6ce7c90b38fc7e9125b1e20819052eaa5f0f5b8a2dc7d30b35706804ca20c6cb37af2108c98935c437733dd9cf4e2e587b76df9c1ee31e2ad9282e81
|
7
|
+
data.tar.gz: 7b94d57a123309940683949fb93dd48b8ccd9999a6ae8b15fbe2626107e8fc534a0ce10528e1f974cdd166a1e27118ffdb4d6360591771fe480e30d108e60447
|
@@ -91,6 +91,10 @@ module Fastlane
|
|
91
91
|
releases = params[:releases]
|
92
92
|
|
93
93
|
format_pattern = lane_context[SharedValues::CONVENTIONAL_CHANGELOG_ACTION_FORMAT_PATTERN]
|
94
|
+
|
95
|
+
patch_updated = false
|
96
|
+
minor_updated = false
|
97
|
+
major_updated = false
|
94
98
|
splitted.each do |line|
|
95
99
|
parts = line.split("|")
|
96
100
|
subject = parts[0].strip
|
@@ -111,15 +115,18 @@ module Fastlane
|
|
111
115
|
next if scopes_to_ignore.include?(scope) #=> true
|
112
116
|
end
|
113
117
|
|
114
|
-
if commit[:release] == "major" || commit[:is_breaking_change]
|
118
|
+
if (commit[:release] == "major" || commit[:is_breaking_change]) && !major_updated
|
115
119
|
next_major += 1
|
116
120
|
next_minor = 0
|
117
121
|
next_patch = 0
|
118
|
-
|
122
|
+
major_updated = true
|
123
|
+
elsif commit[:release] == "minor" && !major_updated && !minor_updated
|
119
124
|
next_minor += 1
|
120
125
|
next_patch = 0
|
121
|
-
|
126
|
+
minor_updated = minor_updated
|
127
|
+
elsif commit[:release] == "patch" && !major_updated && !minor_updated && !patch_updated
|
122
128
|
next_patch += 1
|
129
|
+
patch_updated = true
|
123
130
|
end
|
124
131
|
|
125
132
|
next_version = "#{next_major}.#{next_minor}.#{next_patch}"
|
@@ -127,7 +134,6 @@ module Fastlane
|
|
127
134
|
end
|
128
135
|
|
129
136
|
next_version = "#{next_major}.#{next_minor}.#{next_patch}"
|
130
|
-
|
131
137
|
is_next_version_releasable = Helper::SemanticConventionReleaseHelper.semver_gt(next_version, version)
|
132
138
|
|
133
139
|
Actions.lane_context[SharedValues::RELEASE_ANALYZED] = true
|
@@ -171,7 +177,9 @@ module Fastlane
|
|
171
177
|
)
|
172
178
|
releases = params[:releases]
|
173
179
|
codepush_friendly = params[:codepush_friendly]
|
174
|
-
|
180
|
+
patch_updated = false
|
181
|
+
minor_updated = false
|
182
|
+
major_updated = false
|
175
183
|
format_pattern = lane_context[SharedValues::CONVENTIONAL_CHANGELOG_ACTION_FORMAT_PATTERN]
|
176
184
|
splitted.each do |line|
|
177
185
|
# conventional commits are in format
|
@@ -184,15 +192,18 @@ module Fastlane
|
|
184
192
|
codepush_friendly: codepush_friendly
|
185
193
|
)
|
186
194
|
|
187
|
-
if commit[:release] == "major" || commit[:is_breaking_change]
|
195
|
+
if (commit[:release] == "major" || commit[:is_breaking_change]) && !major_updated
|
188
196
|
next_major += 1
|
189
197
|
next_minor = 0
|
190
198
|
next_patch = 0
|
191
|
-
|
199
|
+
major_updated = true
|
200
|
+
elsif commit[:release] == "minor" && !major_updated && !minor_updated
|
192
201
|
next_minor += 1
|
193
202
|
next_patch = 0
|
194
|
-
|
203
|
+
minor_updated = true
|
204
|
+
elsif commit[:release] == "patch" && !major_updated && !minor_updated && !patch_updated
|
195
205
|
next_patch += 1
|
206
|
+
patch_updated = true
|
196
207
|
end
|
197
208
|
|
198
209
|
unless commit[:is_codepush_friendly]
|
@@ -258,13 +269,13 @@ module Fastlane
|
|
258
269
|
FastlaneCore::ConfigItem.new(
|
259
270
|
key: :releases,
|
260
271
|
description: "Map types of commit to release (major, minor, patch)",
|
261
|
-
default_value: { fix: "patch", feat: "minor" },
|
272
|
+
default_value: { fix: "patch", feat: "minor", BREAKING_CHANGE: "major" },
|
262
273
|
type: Hash
|
263
274
|
),
|
264
275
|
FastlaneCore::ConfigItem.new(
|
265
276
|
key: :codepush_friendly,
|
266
277
|
description: "These types are consider as codepush friendly automatically",
|
267
|
-
default_value: ["chore", "test", "docs"],
|
278
|
+
default_value: ["chore", "test", "docs", "style", "refactor", "perf"],
|
268
279
|
type: Array,
|
269
280
|
optional: true
|
270
281
|
),
|
@@ -276,7 +287,7 @@ module Fastlane
|
|
276
287
|
FastlaneCore::ConfigItem.new(
|
277
288
|
key: :ignore_scopes,
|
278
289
|
description: "To ignore certain scopes when calculating releases",
|
279
|
-
default_value: [],
|
290
|
+
default_value: ["skip"],
|
280
291
|
type: Array,
|
281
292
|
optional: true
|
282
293
|
),
|
@@ -231,7 +231,7 @@ module Fastlane
|
|
231
231
|
FastlaneCore::ConfigItem.new(
|
232
232
|
key: :order,
|
233
233
|
description: "You can change the order of groups in release notes",
|
234
|
-
default_value: ["feat", "fix", "refactor", "perf", "chore", "test", "docs", "style"
|
234
|
+
default_value: ["feat", "fix", "refactor", "perf", "chore", "test", "docs", "style"],
|
235
235
|
type: Array,
|
236
236
|
optional: true
|
237
237
|
),
|
@@ -246,8 +246,7 @@ module Fastlane
|
|
246
246
|
chore: "Building system",
|
247
247
|
test: "Testing",
|
248
248
|
docs: "Documentation",
|
249
|
-
style: "Code style"
|
250
|
-
no_type: "Other work"
|
249
|
+
style: "Code style"
|
251
250
|
},
|
252
251
|
type: Hash,
|
253
252
|
optional: true
|
data/lib/fastlane/plugin/semantic_convention_release/helper/semantic_convention_release_helper.rb
CHANGED
@@ -7,7 +7,7 @@ module Fastlane
|
|
7
7
|
class SemanticConventionReleaseHelper
|
8
8
|
def self.format_patterns
|
9
9
|
return {
|
10
|
-
"default" => /^(docs|fix|feat|chore|style|refactor|perf|test
|
10
|
+
"default" => /^(docs|fix|feat|chore|style|refactor|perf|test)(?:\((.*)\))?(!?)\: (.*)/,
|
11
11
|
"angular" => /^(\w*)(?:\((.*)\))?(): (.*)/
|
12
12
|
}
|
13
13
|
end
|
@@ -1 +1 @@
|
|
1
|
-
module Fastlane module SemanticConventionRelease VERSION = "1.0.
|
1
|
+
module Fastlane module SemanticConventionRelease VERSION = "1.0.4" end end
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: fastlane-plugin-semantic_convention_release
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.0.
|
4
|
+
version: 1.0.4
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Jiří Otáhal
|
@@ -9,7 +9,7 @@ authors:
|
|
9
9
|
autorequire:
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
|
-
date: 2020-
|
12
|
+
date: 2020-09-03 00:00:00.000000000 Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: pry
|