tworingtools 3.0.2 → 4.2.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/bin/prerelease-podspec +20 -8
- data/bin/release-podspec +15 -9
- 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: c8bc4d66ed425f70865ff455a17d5f0cc03af48003f7e994d7cad3d7a4708a4b
|
4
|
+
data.tar.gz: 2f030b6eb9d7fc50105fb91af19ca1d6abf226e896d035665497f2b497e223bd
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 55a216baf1583ebab6759bc0a425079841f1f5ad92fa50301623f7997b2a2ef537e3cca6e956f77e5aacaf2809168f4b0e342c3c28478d6f6a5c253a0ffad5cc
|
7
|
+
data.tar.gz: 468218eb24849365f2482d50fdafe29eafdafcd7fc45e004f5e2a92719b834e8ec2ea2087bbf5b1a753cbec311914f7aebadcef94d0d43d7b47e9a15ac968ae6
|
data/bin/prerelease-podspec
CHANGED
@@ -5,7 +5,8 @@ require 'optparse'
|
|
5
5
|
require_relative '../lib/git_check'
|
6
6
|
require_relative '../lib/echoexec'
|
7
7
|
|
8
|
-
|
8
|
+
version_file = ARGV[0]
|
9
|
+
podspec = version_file.split('/')[-1].split('.podspec')[0]
|
9
10
|
|
10
11
|
# failure modes
|
11
12
|
PODSPEC_FAILED_VALIDATION = 65
|
@@ -14,7 +15,7 @@ options = {}
|
|
14
15
|
parser = OptionParser.new do |opts|
|
15
16
|
opts.banner = <<~BANNER
|
16
17
|
|
17
|
-
Usage: prerelease-podspec [options] <podspec-
|
18
|
+
Usage: prerelease-podspec [options] <podspec-path>
|
18
19
|
|
19
20
|
Branch and create/push a release candidate tag, modify the podspec to use that version tag, and try linting it.
|
20
21
|
|
@@ -23,9 +24,12 @@ parser = OptionParser.new do |opts|
|
|
23
24
|
BANNER
|
24
25
|
opts.on('-w', '--allow-warnings', 'Pass \'--allow-warnings\' to \'cocoapods spec lint\'.') do |force| options[:allow_warnings] = true end
|
25
26
|
opts.on('-v', '--verbose', 'Pass \'--verbose\' to \'cocoapods spec lint\'.') do |name| options[:verbose] = true end
|
26
|
-
opts.on('-
|
27
|
+
opts.on('-s', '--skip-tests', 'Pass \'--skip-tests\' to \'cocoapods spec lint\'.') do |skip_tests| options[:skip_tests] = true end
|
28
|
+
opts.on('-p', '--podspec-name-in-tag', 'When forming the tag name for a release candidate, prefix the podspec‘s name to the version string. Helps when you have multiple podspecs in a repository and tag versions for each.') do |podspec_name_in_tag| options[:podspec_name_in_tag] = true end
|
27
29
|
opts.on('-n', '--no-branch', 'Make any changes on the current branch instead of creating a temporary new branch.') do |no_branch| options[:no_branch] = true end
|
28
30
|
opts.on('-cCHANGELOG', '--changelog=CHANGELOG', 'Location of a CHANGELOG document adhering to https://keepachangelog.com/en/1.0.0/ whose version entry should be extracted into an annotated tag for this release candidate.') do |changelog| options[:changelog] = changelog end
|
31
|
+
opts.on('-tTAG', '--tag=TAG', 'Override for the name of the git tag to form. If set, --podspec-name-in-tag is ignored.') do |tag| options[:tag] = tag end
|
32
|
+
opts.on('-rRC', '--release-candidate=RC', 'Override for the release candidate number, which is otherwise formulated by counting the previous amount of tags with the same version number and incrementing by one.') do |rc| options[:rc] = rc end
|
29
33
|
opts.on('-h', '--help', 'Print this help message.') do
|
30
34
|
puts opts
|
31
35
|
exit
|
@@ -35,8 +39,6 @@ parser.parse!
|
|
35
39
|
|
36
40
|
git_check unless options[:no_commit]
|
37
41
|
|
38
|
-
version_file = "#{podspec}.podspec"
|
39
|
-
|
40
42
|
current_version = `vrsn --read --file #{version_file}`.strip
|
41
43
|
unless options[:no_branch] then
|
42
44
|
branch = "#{podspec}-#{current_version}-release"
|
@@ -44,11 +46,18 @@ unless options[:no_branch] then
|
|
44
46
|
end
|
45
47
|
|
46
48
|
version_root = "#{current_version}-RC"
|
47
|
-
release_candidate_number =
|
49
|
+
release_candidate_number = String.new
|
50
|
+
if options[:rc] then
|
51
|
+
release_candidate_number = options[:rc]
|
52
|
+
else
|
53
|
+
release_candidate_number = `git tag --list | grep #{version_root} | wc -l`.strip.to_i + 1
|
54
|
+
end
|
48
55
|
release_candidate_version = "#{version_root}#{release_candidate_number}"
|
49
56
|
|
50
57
|
tag_value = String.new
|
51
|
-
if options[:
|
58
|
+
if options[:tag] then
|
59
|
+
tag_value = options[:tag]
|
60
|
+
elsif options[:podspec_name_in_tag] then
|
52
61
|
tag_value = "#{podspec}-#{release_candidate_version}"
|
53
62
|
else
|
54
63
|
tag_value = "#{release_candidate_version}"
|
@@ -75,7 +84,10 @@ end
|
|
75
84
|
if options[:verbose] != nil then
|
76
85
|
spec_lint_flags << '--verbose'
|
77
86
|
end
|
78
|
-
|
87
|
+
if options[:skip_tests] != nil then
|
88
|
+
spec_lint_flags << '--skip-tests'
|
89
|
+
end
|
90
|
+
stdout, stderr, status = Open3.capture3 "rbenv exec bundle exec pod spec lint #{version_file} #{spec_lint_flags.join ' '}"
|
79
91
|
|
80
92
|
puts "stdout: #{stdout}"
|
81
93
|
|
data/bin/release-podspec
CHANGED
@@ -6,13 +6,14 @@ require_relative '../lib/echoexec'
|
|
6
6
|
require_relative '../lib/errors'
|
7
7
|
require_relative '../lib/git_check'
|
8
8
|
|
9
|
-
|
9
|
+
podspec_path = ARGV[0]
|
10
|
+
podspec = podspec_path.split('/')[-1].split('.podspec')[0]
|
10
11
|
|
11
12
|
options = {}
|
12
13
|
parser = OptionParser.new do |opts|
|
13
14
|
opts.banner = <<~BANNER
|
14
15
|
|
15
|
-
Usage: release-podspec [options] <podspec-
|
16
|
+
Usage: release-podspec [options] <podspec-path>
|
16
17
|
|
17
18
|
Form Git tags and push them to remote, then push the podspec to CocoaPods trunk.
|
18
19
|
|
@@ -21,10 +22,11 @@ parser = OptionParser.new do |opts|
|
|
21
22
|
BANNER
|
22
23
|
opts.on('-w', '--allow-warnings', 'Pass \'--allow-warnings\' to \'cocoapods spec lint\'.') do |force| options[:allow_warnings] = true end
|
23
24
|
opts.on('-s', '--skip-tests', 'Pass \'--skip-tests\' to \'cocoapods spec lint\'.') do |skip_tests| options[:skip_tests] = true end
|
24
|
-
opts.on('-
|
25
|
+
opts.on('-p', '--podspec-name-in-tag', 'When forming the tag name for a release candidate, prefix the podspec‘s name to the version string. Helps when you have multiple podspecs in a repository and tag versions for each.') do |podspec_name_in_tag| options[:podspec_name_in_tag] = true end
|
25
26
|
opts.on('-v', '--verbose', 'Pass \'--verbose\' to \'cocoapods spec lint\'.') do |name| options[:verbose] = true end
|
26
27
|
opts.on('-rREPO', '--repo=REPO', 'By default, release-podspec pushes the podspec to CocoaPods trunk. By supplying this argument, instead of \`pod trunk push\`, \`pod repo push\` is used instead.') do |repo| options[:repo] = repo end
|
27
28
|
opts.on('-cCHANGELOG_PATH', '--changelog-path=CHANGELOG_PATH', 'By default, release-podspec looks for //CHANGELOG.md. You can specify another location with this option.') do |changelog_path| options[:changelog_path] = changelog_path end
|
29
|
+
opts.on('-tTAG', '--tag=TAG', 'Override for the name of the git tag to form. If set, --podspec-name-in-tag is ignored.') do |tag| options[:tag] = tag end
|
28
30
|
opts.on('--e', '--changelog-entry=CHANGELOG_ENTRY', 'The name of the changelog entry, if it differs from the tag name.') do |changelog_entry_name_override| options[:changelog_entry_name_override] = changelog_entry_name_override end
|
29
31
|
opts.on('-h', '--help', 'Print this help message.') do
|
30
32
|
puts opts
|
@@ -39,16 +41,20 @@ changelog_path = 'CHANGELOG.md'
|
|
39
41
|
if options[:changelog_path] != nil then
|
40
42
|
changelog_path = options[:changelog_path]
|
41
43
|
end
|
42
|
-
version = `vrsn --read --file #{
|
43
|
-
|
44
|
-
if options[:
|
45
|
-
|
44
|
+
version = `vrsn --read --file #{podspec_path}`.strip
|
45
|
+
tag_value = String.new
|
46
|
+
if options[:tag] then
|
47
|
+
tag_value = options[:tag]
|
48
|
+
elsif options[:podspec_name_in_tag] then
|
49
|
+
tag_value = podspec + '-' + version
|
50
|
+
else
|
51
|
+
tag_value = version
|
46
52
|
end
|
47
53
|
changelog_entry_name = String.new
|
48
54
|
if options[:changelog_entry_name_override] != nil then
|
49
55
|
changelog_entry_name = "--name " + options[:changelog_entry_name_override]
|
50
56
|
end
|
51
|
-
echo_and_exec "rbenv exec bundle exec changetag #{changelog_path} #{
|
57
|
+
echo_and_exec "rbenv exec bundle exec changetag #{changelog_path} #{tag_value} #{changelog_entry_name}"
|
52
58
|
echo_and_exec 'git push --tags'
|
53
59
|
|
54
60
|
spec_lint_flags = Array.new
|
@@ -66,7 +72,7 @@ command = String.new
|
|
66
72
|
if options[:repo] != nil then
|
67
73
|
command = "rbenv exec bundle exec pod repo push #{options[:repo]} #{spec_lint_flags.join ' '}"
|
68
74
|
else
|
69
|
-
command = "rbenv exec bundle exec pod trunk push #{
|
75
|
+
command = "rbenv exec bundle exec pod trunk push #{podspec_path} #{spec_lint_flags.join ' '}"
|
70
76
|
end
|
71
77
|
|
72
78
|
puts command
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: tworingtools
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version:
|
4
|
+
version: 4.2.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Andrew McKnight
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2020-
|
11
|
+
date: 2020-08-20 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: github_api
|