rake-deveiate 0.15.0 → 0.15.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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 8c2bb0778d27418700022a963c18f81a16cae82f69e09688fd2a8e13b6096eb4
4
- data.tar.gz: 31304d8589879cf4d72125462820ae71409628381e8728a3d21ef96039797cdb
3
+ metadata.gz: 0fd5ebf2ecae73378b090addfcda377b8f6eaa034d4c7a3ad39de0649701c5fe
4
+ data.tar.gz: 22b38e5878db4fd78e4cbc5a0bcbff0813812d4a57ed236fbaf00ae60d1c9794
5
5
  SHA512:
6
- metadata.gz: da94940cf35b7adc4a51f42aa42f6768fb2665d56d364fea128a1f5a2430f166e44a5ecb4c39559f70029dacb3c3f488cf7197f48158e7a2becceb0c485f9f4d
7
- data.tar.gz: 9cad415102523353cefbb8539d20e6919b9816216cbf6ba8744ee8c3d9a21414ce94b68f888e6c700798d48e313a3e65df52627aebb4bcd87ee8a1d5d14d75d9
6
+ metadata.gz: 715be431cafef4db394efc1740b35bbb61d8df3f53b850837a66d82ca9d2cb0095bf2c88ad8b93316600ca00b6769060b9cf7b635ee032896bac48709935e0b1
7
+ data.tar.gz: f172e22901d23884594f6703dec21f3af5976aa67460a9e062323578f5987680e2edbdb196f6d37cc4f227df72552922702cb30737d4f757d79a01241325fe88
Binary file
data.tar.gz.sig CHANGED
Binary file
data/History.md CHANGED
@@ -1,6 +1,13 @@
1
1
  # Release History for rake-deveiate
2
2
 
3
3
  ---
4
+ ## v0.15.1 [2020-10-29] Michael Granger <ged@FaerieMUD.org>
5
+
6
+ Bugfixes:
7
+
8
+ - Add the extension tasks file to the gem.
9
+
10
+
4
11
  ## v0.15.0 [2020-10-29] Michael Granger <ged@FaerieMUD.org>
5
12
 
6
13
  Improvements:
@@ -35,7 +35,7 @@ class Rake::DevEiate < Rake::TaskLib
35
35
  VERSION_PATTERN = /VERSION\s*=\s*(?<quote>['"])(?<version>\d+(\.\d+){2}.*)\k<quote>/
36
36
 
37
37
  # The version of this library
38
- VERSION = '0.15.0'
38
+ VERSION = '0.15.1'
39
39
 
40
40
  # The server to release to by default
41
41
  DEFAULT_GEMSERVER = 'https://rubygems.org/'
@@ -0,0 +1,114 @@
1
+ # -*- ruby -*-
2
+ # frozen_string_literal: true
3
+
4
+ require 'pathname'
5
+ require 'rake'
6
+
7
+ require 'rake/deveiate' unless defined?( Rake::DevEiate )
8
+
9
+
10
+ # Extension compilation and maintenance tasks
11
+ module Rake::DevEiate::Extension
12
+ extend Rake::DSL
13
+
14
+ # The glob pattern to use when looking for extension config scripts (relative to
15
+ # EXT_DIR).
16
+ EXTENSION_GLOB_PATTERN = '**/extconf.rb'
17
+
18
+
19
+ ### Set some defaults when the task lib is set up.
20
+ def setup( _name, **options )
21
+ super if defined?( super )
22
+
23
+ self.extensions.include( Rake::DevEiate::EXT_DIR + EXTENSION_GLOB_PATTERN )
24
+ @disable_rake_compiler = false
25
+ end
26
+
27
+
28
+ ##
29
+ # Set to +true+ to indicate that this project provides its own
30
+ # extension-management tasks.
31
+ attr_accessor :disable_rake_compiler
32
+
33
+
34
+ ### Predicate for the #disable_rake_compiler attribute.
35
+ def disable_rake_compiler?
36
+ return self.disable_rake_compiler ? true :false
37
+ end
38
+
39
+
40
+ ### Returns +true+ if there appear to be extensions as part of the current
41
+ ### project.
42
+ def extensions_present?
43
+ return !self.extensions.empty?
44
+ end
45
+
46
+
47
+ ### Define extension tasks
48
+ def define_tasks
49
+ super if defined?( super )
50
+
51
+ if self.extensions_present?
52
+ if self.has_rakecompiler_dependency?
53
+ self.define_extension_tasks
54
+ elsif !self.disable_rake_compiler?
55
+ warn <<~END_WARNING
56
+
57
+ You appear to have one or more extensions, but rake-compiler
58
+ is not a dependency. You should either add it to gem.deps.rb
59
+ or set `disable_rake_compiler` on the project to disable this
60
+ warning.
61
+
62
+ END_WARNING
63
+ end
64
+ end
65
+
66
+ task( :extensions_debug, &method(:do_extensions_debug) )
67
+ task :debug => :extensions_debug
68
+ end
69
+
70
+
71
+ ### Set up the tasks to build extensions.
72
+ def define_extension_tasks
73
+ ENV['RUBY_CC_VERSION'] ||= RUBY_VERSION[ /(\d+\.\d+)/ ]
74
+
75
+ require 'rake/extensiontask'
76
+ self.extensions.each do |extconf|
77
+ Rake::ExtensionTask.new( extconf.pathmap('%-1d') )
78
+ end
79
+
80
+ task :spec => :compile
81
+ end
82
+
83
+
84
+ ### Returns +true+ if the projects dependencies include `rake-compiler`.
85
+ def has_rakecompiler_dependency?
86
+ return self.dependencies.any? do |dep|
87
+ dep.name == 'rake-compiler'
88
+ end
89
+ end
90
+
91
+
92
+
93
+ ### Task function -- output debugging for extension tasks.
94
+ def do_extensions_debug( task, args )
95
+ self.prompt.say( "Extension config scripts:", color: :bright_green )
96
+
97
+ if self.extensions.empty?
98
+ self.prompt.say( "None." )
99
+ else
100
+ self.extensions.each do |path|
101
+ self.prompt.say "- %s" % [ path ]
102
+ end
103
+ end
104
+
105
+ if self.has_rakecompiler_dependency?
106
+ end
107
+
108
+ self.prompt.say( "\n" )
109
+ end
110
+
111
+
112
+ end # module Rake::DevEiate::Extensions
113
+
114
+
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: rake-deveiate
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.15.0
4
+ version: 0.15.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Michael Granger
@@ -200,6 +200,7 @@ files:
200
200
  - lib/rake/deveiate.rb
201
201
  - lib/rake/deveiate/checks.rb
202
202
  - lib/rake/deveiate/docs.rb
203
+ - lib/rake/deveiate/extensions.rb
203
204
  - lib/rake/deveiate/fixup.rb
204
205
  - lib/rake/deveiate/gem_dep_finder.rb
205
206
  - lib/rake/deveiate/gemspec.rb
metadata.gz.sig CHANGED
Binary file