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 +4 -4
- checksums.yaml.gz.sig +0 -0
- data.tar.gz.sig +0 -0
- data/History.md +7 -0
- data/lib/rake/deveiate.rb +1 -1
- data/lib/rake/deveiate/extensions.rb +114 -0
- metadata +2 -1
- metadata.gz.sig +0 -0
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 0fd5ebf2ecae73378b090addfcda377b8f6eaa034d4c7a3ad39de0649701c5fe
|
4
|
+
data.tar.gz: 22b38e5878db4fd78e4cbc5a0bcbff0813812d4a57ed236fbaf00ae60d1c9794
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 715be431cafef4db394efc1740b35bbb61d8df3f53b850837a66d82ca9d2cb0095bf2c88ad8b93316600ca00b6769060b9cf7b635ee032896bac48709935e0b1
|
7
|
+
data.tar.gz: f172e22901d23884594f6703dec21f3af5976aa67460a9e062323578f5987680e2edbdb196f6d37cc4f227df72552922702cb30737d4f757d79a01241325fe88
|
checksums.yaml.gz.sig
CHANGED
Binary file
|
data.tar.gz.sig
CHANGED
Binary file
|
data/History.md
CHANGED
data/lib/rake/deveiate.rb
CHANGED
@@ -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.
|
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.
|
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
|