hoe 4.6.1 → 4.7.1
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
- checksums.yaml.gz.sig +0 -0
- data/History.rdoc +13 -0
- data/Manifest.txt +0 -2
- data/lib/hoe/cov.rb +12 -1
- data/lib/hoe/package.rb +29 -0
- data/lib/hoe.rb +11 -5
- data/test/test_hoe.rb +1 -1
- data/test/test_hoe_package.rb +54 -2
- data/test/test_hoe_publish.rb +1 -1
- data.tar.gz.sig +2 -4
- metadata +2 -5
- metadata.gz.sig +0 -0
- data/lib/hoe/gemcutter.rb +0 -44
- data/test/test_hoe_gemcutter.rb +0 -38
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: 20ec1f5d237fc914227d856620a07c1b89a0fd4b9b30774cad19ac0aeaf5447f
|
|
4
|
+
data.tar.gz: e7d40ade197f7de061bf861dfb232177dccbb4bd95327d7f67690eb147df2e1e
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: 33e07aa62f9cee923c51e36a39698d91752e86e1d644750a2c16d42d4413eb0bd998991730b6c33bd03b487e384a6f552ec821174318be8f40cdc010d1d2cf2d
|
|
7
|
+
data.tar.gz: 7788b5fbbb8314a5dfa05653adcef61e6399760d4ff9ace79cb5ced206f9aa0a2b72015384d927ad11b5ebe1ec23067116951f7d0ee6ba6c256571211f87b0e1
|
checksums.yaml.gz.sig
CHANGED
|
Binary file
|
data/History.rdoc
CHANGED
|
@@ -1,3 +1,16 @@
|
|
|
1
|
+
=== 4.7.1 / 2026-07-03
|
|
2
|
+
|
|
3
|
+
* 1 bug fix:
|
|
4
|
+
|
|
5
|
+
* Remove Manifest.txt from extra_rdoc_files as latest rdoc mangles the file.
|
|
6
|
+
|
|
7
|
+
=== 4.7.0 / 2026-04-22
|
|
8
|
+
|
|
9
|
+
* 2 minor enhancements:
|
|
10
|
+
|
|
11
|
+
* Added cov_branches to enable branch level coverage reporting.
|
|
12
|
+
* Merged hoe/gemcutter into hoe/package. Distinction doesn't make sense.
|
|
13
|
+
|
|
1
14
|
=== 4.6.1 / 2026-02-23
|
|
2
15
|
|
|
3
16
|
* 1 minor enhancement:
|
data/Manifest.txt
CHANGED
|
@@ -14,7 +14,6 @@ lib/hoe/deps.rb
|
|
|
14
14
|
lib/hoe/flay.rb
|
|
15
15
|
lib/hoe/flog.rb
|
|
16
16
|
lib/hoe/gem_prelude_sucks.rb
|
|
17
|
-
lib/hoe/gemcutter.rb
|
|
18
17
|
lib/hoe/git.rb
|
|
19
18
|
lib/hoe/inline.rb
|
|
20
19
|
lib/hoe/newb.rb
|
|
@@ -35,7 +34,6 @@ template/lib/file_name.rb.erb
|
|
|
35
34
|
template/test/test_file_name.rb.erb
|
|
36
35
|
test/test_hoe.rb
|
|
37
36
|
test/test_hoe_debug.rb
|
|
38
|
-
test/test_hoe_gemcutter.rb
|
|
39
37
|
test/test_hoe_package.rb
|
|
40
38
|
test/test_hoe_publish.rb
|
|
41
39
|
test/test_hoe_test.rb
|
data/lib/hoe/cov.rb
CHANGED
|
@@ -9,11 +9,21 @@ module Hoe::Cov
|
|
|
9
9
|
|
|
10
10
|
##
|
|
11
11
|
# Directories to filter out from coverage.
|
|
12
|
+
#
|
|
13
|
+
# The default = tmp:test
|
|
12
14
|
|
|
13
15
|
attr_accessor :cov_filter
|
|
14
16
|
|
|
17
|
+
##
|
|
18
|
+
# Set to true to enable branch level coverage reporting.
|
|
19
|
+
#
|
|
20
|
+
# The default = false
|
|
21
|
+
|
|
22
|
+
attr_accessor :cov_branches
|
|
23
|
+
|
|
15
24
|
def initialize_cov # :nodoc:
|
|
16
25
|
self.cov_filter = %w[tmp test]
|
|
26
|
+
self.cov_branches = nil
|
|
17
27
|
end
|
|
18
28
|
|
|
19
29
|
##
|
|
@@ -33,8 +43,9 @@ module Hoe::Cov
|
|
|
33
43
|
|
|
34
44
|
desc "Run tests and analyze code coverage"
|
|
35
45
|
task :cov => :isolate do
|
|
46
|
+
extra = cov_branches && "; enable_coverage :branch"
|
|
36
47
|
test_task.test_prelude =
|
|
37
|
-
%(require "simplecov"; SimpleCov.start { add_filter %p }) % [cov_filter]
|
|
48
|
+
%(require "simplecov"; SimpleCov.start { add_filter %p%s }) % [cov_filter, extra]
|
|
38
49
|
|
|
39
50
|
Rake::Task[:test].invoke
|
|
40
51
|
end
|
data/lib/hoe/package.rb
CHANGED
|
@@ -18,6 +18,10 @@ end
|
|
|
18
18
|
# release:: Package and upload the release.
|
|
19
19
|
|
|
20
20
|
module Hoe::Package
|
|
21
|
+
include Rake::DSL if defined?(Rake::DSL)
|
|
22
|
+
|
|
23
|
+
Hoe::DEFAULT_CONFIG["otp_command"] = false
|
|
24
|
+
|
|
21
25
|
##
|
|
22
26
|
# Optional: Should package create a tarball? [default: true]
|
|
23
27
|
|
|
@@ -80,6 +84,16 @@ module Hoe::Package
|
|
|
80
84
|
abort "Versions don't match: %s vs %s" % [v, version] if v != version
|
|
81
85
|
abort "Versions don't match %s: %s vs %s" % [history_file, v, c] if v != c
|
|
82
86
|
end
|
|
87
|
+
|
|
88
|
+
desc "Push gem to package."
|
|
89
|
+
task :release_to_rubygems => [:clean, :package, :release_sanity] do
|
|
90
|
+
pkg = "pkg/#{spec.name}-#{spec.version}"
|
|
91
|
+
gems = Dir["#{pkg}*.gem"]
|
|
92
|
+
|
|
93
|
+
gem_push gems
|
|
94
|
+
end
|
|
95
|
+
|
|
96
|
+
task :release_to => :release_to_rubygems
|
|
83
97
|
end
|
|
84
98
|
|
|
85
99
|
##
|
|
@@ -121,4 +135,19 @@ module Hoe::Package
|
|
|
121
135
|
(Gem::VERSION < "1.4" and pre !~ /^[a-z]+(\.\d+)?$/) or
|
|
122
136
|
(Gem::VERSION >= "1.4" and pre !~ /^[a-z]+(\.?\d+)?$/)
|
|
123
137
|
end
|
|
138
|
+
|
|
139
|
+
##
|
|
140
|
+
# Push gems to server.
|
|
141
|
+
|
|
142
|
+
def gem_push gems
|
|
143
|
+
with_config do |config, _|
|
|
144
|
+
otp_command = config["otp_command"]
|
|
145
|
+
|
|
146
|
+
ENV["GEM_HOST_OTP_CODE"] = `#{otp_command}`.chomp if otp_command
|
|
147
|
+
end
|
|
148
|
+
|
|
149
|
+
gems.each do |g|
|
|
150
|
+
sh Gem.ruby, "-S", "gem", "push", g
|
|
151
|
+
end
|
|
152
|
+
end
|
|
124
153
|
end
|
data/lib/hoe.rb
CHANGED
|
@@ -87,10 +87,10 @@ class Hoe
|
|
|
87
87
|
include Rake::DSL if defined?(Rake::DSL)
|
|
88
88
|
|
|
89
89
|
# duh
|
|
90
|
-
VERSION = "4.
|
|
90
|
+
VERSION = "4.7.1"
|
|
91
91
|
|
|
92
92
|
@@plugins = [:clean, :debug, :deps, :flay, :flog, :newb, :package,
|
|
93
|
-
:publish, :
|
|
93
|
+
:publish, :signing, :test]
|
|
94
94
|
|
|
95
95
|
@bad_plugins = []
|
|
96
96
|
|
|
@@ -580,9 +580,15 @@ class Hoe
|
|
|
580
580
|
s.author = author
|
|
581
581
|
end
|
|
582
582
|
|
|
583
|
-
|
|
584
|
-
|
|
585
|
-
|
|
583
|
+
# TODO: pull up to accessors?
|
|
584
|
+
bad_files = %w[ Manifest.txt ]
|
|
585
|
+
bad_dirs = %w[ test spec vendor template data tmp ]
|
|
586
|
+
|
|
587
|
+
s.extra_rdoc_files += s.files
|
|
588
|
+
.grep(/\.(txt|rdoc|md)$/)
|
|
589
|
+
.grep_v(/^(?:#{bad_files.join "|"})/)
|
|
590
|
+
.grep_v(/^(?:#{bad_dirs.join "|"})\//)
|
|
591
|
+
s.extra_rdoc_files += self.extra_rdoc_files
|
|
586
592
|
end
|
|
587
593
|
|
|
588
594
|
check_for_version
|
data/test/test_hoe.rb
CHANGED
|
@@ -374,7 +374,7 @@ class TestHoe < Minitest::Test
|
|
|
374
374
|
|
|
375
375
|
assert_equal urls, hoe.urls
|
|
376
376
|
|
|
377
|
-
text_files = files.grep(/(txt|rdoc)$/).reject { |f| f =~ /template/ }
|
|
377
|
+
text_files = files.grep(/(txt|rdoc)$/).reject { |f| f =~ /template|Manifest/ }
|
|
378
378
|
|
|
379
379
|
assert_equal "blah", spec.name
|
|
380
380
|
assert_equal "1.2.3", spec.version.to_s
|
data/test/test_hoe_package.rb
CHANGED
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
require "minitest/autorun"
|
|
2
2
|
require "hoe"
|
|
3
|
-
|
|
4
|
-
Hoe.load_plugins
|
|
3
|
+
require_relative "../lib/hoe/package.rb"
|
|
5
4
|
|
|
6
5
|
class TestHoePackage < Minitest::Test
|
|
7
6
|
def setup
|
|
@@ -23,6 +22,10 @@ class TestHoePackage < Minitest::Test
|
|
|
23
22
|
end
|
|
24
23
|
|
|
25
24
|
attr_reader :spec
|
|
25
|
+
|
|
26
|
+
def with_config
|
|
27
|
+
yield({ "otp_command" => "echo my_otp_code"}, "~/.hoerc")
|
|
28
|
+
end
|
|
26
29
|
end
|
|
27
30
|
end
|
|
28
31
|
|
|
@@ -31,6 +34,55 @@ class TestHoePackage < Minitest::Test
|
|
|
31
34
|
ENV["PRERELEASE"] = @orig_PRERELEASE
|
|
32
35
|
end
|
|
33
36
|
|
|
37
|
+
def assert_task name, *deps
|
|
38
|
+
dep = Rake::Task[name]
|
|
39
|
+
assert dep
|
|
40
|
+
prereqs = dep.prerequisites.map(&:to_sym)
|
|
41
|
+
deps.each do |dep|
|
|
42
|
+
# not asserting existence of tasks because they might be in other plugins
|
|
43
|
+
assert_includes prereqs, dep.to_sym
|
|
44
|
+
end
|
|
45
|
+
end
|
|
46
|
+
|
|
47
|
+
def test_package_tasks_defined
|
|
48
|
+
@tester.define_package_tasks
|
|
49
|
+
|
|
50
|
+
assert_task :gem, :clean
|
|
51
|
+
assert_task :install_gem, :clean, :package, :check_extra_deps
|
|
52
|
+
assert_task :postrelease
|
|
53
|
+
assert_task :prerelease
|
|
54
|
+
assert_task :release, :prerelease, :release_to, :postrelease
|
|
55
|
+
assert_task :release_sanity
|
|
56
|
+
assert_task :release_to
|
|
57
|
+
assert_task :release_to, :release_to_rubygems
|
|
58
|
+
assert_task :release_to_rubygems, :clean, :package, :release_sanity
|
|
59
|
+
end
|
|
60
|
+
|
|
61
|
+
def save_env
|
|
62
|
+
orig_env = ENV.to_h
|
|
63
|
+
yield
|
|
64
|
+
ensure
|
|
65
|
+
ENV.replace orig_env
|
|
66
|
+
end
|
|
67
|
+
|
|
68
|
+
def test_gem_push
|
|
69
|
+
def @tester.sh *cmd_args
|
|
70
|
+
@cmd_args = cmd_args
|
|
71
|
+
end
|
|
72
|
+
|
|
73
|
+
def @tester.cmd_args
|
|
74
|
+
@cmd_args
|
|
75
|
+
end
|
|
76
|
+
|
|
77
|
+
save_env do
|
|
78
|
+
@tester.gem_push %w[pkg/blah-123.gem]
|
|
79
|
+
|
|
80
|
+
exp = %W[#{Gem.ruby} -S gem push pkg/blah-123.gem]
|
|
81
|
+
assert_equal exp, @tester.cmd_args
|
|
82
|
+
assert_equal "my_otp_code", ENV["GEM_HOST_OTP_CODE"]
|
|
83
|
+
end
|
|
84
|
+
end
|
|
85
|
+
|
|
34
86
|
def test_prerelease_version_pre
|
|
35
87
|
ENV["PRE"] = "pre.0"
|
|
36
88
|
|
data/test/test_hoe_publish.rb
CHANGED
data.tar.gz.sig
CHANGED
metadata
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: hoe
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 4.
|
|
4
|
+
version: 4.7.1
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- Ryan Davis
|
|
@@ -105,7 +105,6 @@ executables:
|
|
|
105
105
|
extensions: []
|
|
106
106
|
extra_rdoc_files:
|
|
107
107
|
- History.rdoc
|
|
108
|
-
- Manifest.txt
|
|
109
108
|
- README.rdoc
|
|
110
109
|
files:
|
|
111
110
|
- ".autotest"
|
|
@@ -124,7 +123,6 @@ files:
|
|
|
124
123
|
- lib/hoe/flay.rb
|
|
125
124
|
- lib/hoe/flog.rb
|
|
126
125
|
- lib/hoe/gem_prelude_sucks.rb
|
|
127
|
-
- lib/hoe/gemcutter.rb
|
|
128
126
|
- lib/hoe/git.rb
|
|
129
127
|
- lib/hoe/inline.rb
|
|
130
128
|
- lib/hoe/newb.rb
|
|
@@ -145,7 +143,6 @@ files:
|
|
|
145
143
|
- template/test/test_file_name.rb.erb
|
|
146
144
|
- test/test_hoe.rb
|
|
147
145
|
- test/test_hoe_debug.rb
|
|
148
|
-
- test/test_hoe_gemcutter.rb
|
|
149
146
|
- test/test_hoe_package.rb
|
|
150
147
|
- test/test_hoe_publish.rb
|
|
151
148
|
- test/test_hoe_test.rb
|
|
@@ -174,7 +171,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
|
174
171
|
- !ruby/object:Gem::Version
|
|
175
172
|
version: '3.0'
|
|
176
173
|
requirements: []
|
|
177
|
-
rubygems_version:
|
|
174
|
+
rubygems_version: 4.0.12
|
|
178
175
|
specification_version: 4
|
|
179
176
|
summary: Hoe is a rake/rubygems helper for project Rakefiles
|
|
180
177
|
test_files: []
|
metadata.gz.sig
CHANGED
|
Binary file
|
data/lib/hoe/gemcutter.rb
DELETED
|
@@ -1,44 +0,0 @@
|
|
|
1
|
-
require "rake"
|
|
2
|
-
|
|
3
|
-
##
|
|
4
|
-
# Gemcutter plugin for hoe.
|
|
5
|
-
#
|
|
6
|
-
# === Extra Configuration Options:
|
|
7
|
-
#
|
|
8
|
-
# otp_command:: Shell command to run to populate GEM_HOST_OTP_CODE.
|
|
9
|
-
|
|
10
|
-
module Hoe::Gemcutter
|
|
11
|
-
include Rake::DSL if defined?(Rake::DSL)
|
|
12
|
-
|
|
13
|
-
Hoe::DEFAULT_CONFIG["otp_command"] = false
|
|
14
|
-
|
|
15
|
-
##
|
|
16
|
-
# Push gems to server.
|
|
17
|
-
|
|
18
|
-
def gem_push gems
|
|
19
|
-
with_config do |config, _|
|
|
20
|
-
otp_command = config["otp_command"]
|
|
21
|
-
|
|
22
|
-
ENV["GEM_HOST_OTP_CODE"] = `#{otp_command}`.chomp if otp_command
|
|
23
|
-
end
|
|
24
|
-
|
|
25
|
-
gems.each do |g|
|
|
26
|
-
sh Gem.ruby, "-S", "gem", "push", g
|
|
27
|
-
end
|
|
28
|
-
end
|
|
29
|
-
|
|
30
|
-
##
|
|
31
|
-
# Define release_to_gemcutter and attach it to the release task.
|
|
32
|
-
|
|
33
|
-
def define_gemcutter_tasks
|
|
34
|
-
desc "Push gem to gemcutter."
|
|
35
|
-
task :release_to_gemcutter => [:clean, :package, :release_sanity] do
|
|
36
|
-
pkg = "pkg/#{spec.name}-#{spec.version}"
|
|
37
|
-
gems = Dir["#{pkg}*.gem"]
|
|
38
|
-
|
|
39
|
-
gem_push gems
|
|
40
|
-
end
|
|
41
|
-
|
|
42
|
-
task :release_to => :release_to_gemcutter
|
|
43
|
-
end
|
|
44
|
-
end unless defined? Hoe::Gemcutter
|
data/test/test_hoe_gemcutter.rb
DELETED
|
@@ -1,38 +0,0 @@
|
|
|
1
|
-
require "minitest/autorun"
|
|
2
|
-
require "hoe"
|
|
3
|
-
require_relative "../lib/hoe/gemcutter"
|
|
4
|
-
|
|
5
|
-
class TestHoeGemcutter < Minitest::Test
|
|
6
|
-
include Hoe::Gemcutter
|
|
7
|
-
|
|
8
|
-
def test_gemcutter_tasks_defined
|
|
9
|
-
define_gemcutter_tasks
|
|
10
|
-
assert Rake::Task[:release_to_gemcutter]
|
|
11
|
-
assert Rake::Task[:release_to].prerequisites.include?("release_to_gemcutter")
|
|
12
|
-
end
|
|
13
|
-
|
|
14
|
-
def sh *cmd_args
|
|
15
|
-
@cmd_args = cmd_args
|
|
16
|
-
end
|
|
17
|
-
|
|
18
|
-
def with_config
|
|
19
|
-
yield({ "otp_command" => "echo my_otp_code"}, "~/.hoerc")
|
|
20
|
-
end
|
|
21
|
-
|
|
22
|
-
def save_env
|
|
23
|
-
orig_env = ENV.to_h
|
|
24
|
-
yield
|
|
25
|
-
ensure
|
|
26
|
-
ENV.replace orig_env
|
|
27
|
-
end
|
|
28
|
-
|
|
29
|
-
def test_gem_push
|
|
30
|
-
save_env do
|
|
31
|
-
gem_push %w[pkg/blah-123.gem]
|
|
32
|
-
|
|
33
|
-
exp = %W[#{Gem.ruby} -S gem push pkg/blah-123.gem]
|
|
34
|
-
assert_equal exp, @cmd_args
|
|
35
|
-
assert_equal "my_otp_code", ENV["GEM_HOST_OTP_CODE"]
|
|
36
|
-
end
|
|
37
|
-
end
|
|
38
|
-
end
|