schmersion 1.0.1 → 1.1.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/VERSION +1 -1
- data/bin/schmersion +5 -0
- data/cli/pending.rb +2 -1
- data/lib/schmersion/auto_bundle_exec.rb +58 -0
- data/lib/schmersion/linter.rb +1 -1
- data/lib/schmersion/releaser.rb +3 -2
- metadata +5 -3
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: ebf5ec763672ffaed1a267587ce8901017d5844335535841be3a8ba678b9fcb5
|
4
|
+
data.tar.gz: db476ffab17ae0a13ea736ca7e86477e43a53fac15d3fa0b240e9e6d192da738
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 3cb9ab527fb3eb7b32cab65570a2ccfe09371e99cc918c648e8b6986aff9747a30be9b75c72d09300f4ea8f8a496f8d15d8acc86e80805fe81a1dce4ce1ba621
|
7
|
+
data.tar.gz: 70025c3989baa3aa52a2d6563905eaea3afe6af9c2576ecb1af1207f94740e26a2bcdb6489ba8ba03c01787587e014b323296c0b0d3a322d7100f84072022c16
|
data/VERSION
CHANGED
@@ -1 +1 @@
|
|
1
|
-
1.0
|
1
|
+
1.1.0
|
data/bin/schmersion
CHANGED
@@ -3,6 +3,11 @@
|
|
3
3
|
|
4
4
|
$LOAD_PATH.unshift(File.expand_path('../lib', __dir__))
|
5
5
|
|
6
|
+
if [nil, '0', 'no', 'false'].include?(ENV['SCHMERSION_DISABLE_AUTO_BUNDLE_EXEC'])
|
7
|
+
require 'schmersion/auto_bundle_exec'
|
8
|
+
Schmersion::AutoBundleExec.when_bundled(:schmersion)
|
9
|
+
end
|
10
|
+
|
6
11
|
require 'schmersion'
|
7
12
|
require 'swamp/cli'
|
8
13
|
require 'git'
|
data/cli/pending.rb
CHANGED
@@ -24,7 +24,8 @@ command :pending do
|
|
24
24
|
from: context.options[:from],
|
25
25
|
to: context.options[:to],
|
26
26
|
version_options: {
|
27
|
-
pre: context.options[:pre]
|
27
|
+
pre: context.options[:pre],
|
28
|
+
breaking_change_not_major: repo.config.version_options[:breaking_change_not_major]
|
28
29
|
}
|
29
30
|
)
|
30
31
|
|
@@ -0,0 +1,58 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
require 'open3'
|
4
|
+
|
5
|
+
module Schmersion
|
6
|
+
class AutoBundleExec
|
7
|
+
|
8
|
+
attr_reader :gems
|
9
|
+
attr_reader :pwd
|
10
|
+
attr_reader :bin
|
11
|
+
attr_reader :argv
|
12
|
+
|
13
|
+
def self.when_bundled(gems = [], pwd = Dir.pwd, bin = $PROGRAM_NAME, argv = ARGV)
|
14
|
+
return if ENV['BUNDLE_BIN_PATH']
|
15
|
+
|
16
|
+
gems = Array(gems).compact
|
17
|
+
return if gems.empty?
|
18
|
+
|
19
|
+
instance = new(gems, pwd, bin, argv)
|
20
|
+
return unless instance.bundled_dir?
|
21
|
+
|
22
|
+
instance.re_exec if gems.all? { |gem| instance.bundled?(gem) }
|
23
|
+
end
|
24
|
+
|
25
|
+
def initialize(gems, pwd, bin, argv)
|
26
|
+
@gems = gems
|
27
|
+
@pwd = pwd
|
28
|
+
@bin = bin
|
29
|
+
@argv = argv
|
30
|
+
check_dir
|
31
|
+
end
|
32
|
+
|
33
|
+
def bundled_dir?
|
34
|
+
@is_bundled_dir
|
35
|
+
end
|
36
|
+
|
37
|
+
def bundled?(gem)
|
38
|
+
gem_list.include?(" #{gem} ")
|
39
|
+
end
|
40
|
+
|
41
|
+
def re_exec
|
42
|
+
Kernel.exec(
|
43
|
+
{ 'SCHMERSION_DISABLE_AUTO_BUNDLE_EXEC' => '1' },
|
44
|
+
'bundle', 'exec', bin, *argv
|
45
|
+
)
|
46
|
+
end
|
47
|
+
|
48
|
+
private
|
49
|
+
|
50
|
+
attr_reader :gem_list
|
51
|
+
|
52
|
+
def check_dir
|
53
|
+
@gem_list, status = Open3.capture2e('bundle list')
|
54
|
+
@is_bundled_dir = status.success?
|
55
|
+
end
|
56
|
+
|
57
|
+
end
|
58
|
+
end
|
data/lib/schmersion/linter.rb
CHANGED
data/lib/schmersion/releaser.rb
CHANGED
@@ -95,17 +95,18 @@ module Schmersion
|
|
95
95
|
return if skip?(:tag) && skip?(:commit)
|
96
96
|
|
97
97
|
print 'Now run '
|
98
|
-
print "git push --
|
98
|
+
print "git push --tags origin #{@repo.current_branch}".cyan
|
99
99
|
puts ' to publish'
|
100
100
|
end
|
101
101
|
|
102
102
|
def version
|
103
103
|
@version ||= begin
|
104
|
+
puts @repo.config.version_options
|
104
105
|
@repo.pending_version(
|
105
106
|
override_version: @options[:version],
|
106
107
|
version_options: {
|
107
108
|
pre: @options[:pre],
|
108
|
-
breaking_change_not_major: @repo.config.version_options[
|
109
|
+
breaking_change_not_major: @repo.config.version_options[:breaking_change_not_major]
|
109
110
|
}
|
110
111
|
)[1]
|
111
112
|
end
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: schmersion
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.0
|
4
|
+
version: 1.1.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Adam Cooke
|
@@ -162,6 +162,7 @@ files:
|
|
162
162
|
- cli/setup-linting.rb
|
163
163
|
- cli/versions.rb
|
164
164
|
- lib/schmersion.rb
|
165
|
+
- lib/schmersion/auto_bundle_exec.rb
|
165
166
|
- lib/schmersion/commit.rb
|
166
167
|
- lib/schmersion/commit_parser.rb
|
167
168
|
- lib/schmersion/config.rb
|
@@ -183,7 +184,8 @@ files:
|
|
183
184
|
- lib/schmersion/version.rb
|
184
185
|
- lib/schmersion/version_calculator.rb
|
185
186
|
homepage: https://github.com/krystal/schmersion
|
186
|
-
licenses:
|
187
|
+
licenses:
|
188
|
+
- MIT
|
187
189
|
metadata: {}
|
188
190
|
post_install_message:
|
189
191
|
rdoc_options: []
|
@@ -193,7 +195,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
193
195
|
requirements:
|
194
196
|
- - ">="
|
195
197
|
- !ruby/object:Gem::Version
|
196
|
-
version: '2.
|
198
|
+
version: '2.5'
|
197
199
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
198
200
|
requirements:
|
199
201
|
- - ">="
|