debase-ruby_core_source 0.7.10 → 0.8.0

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
  SHA1:
3
- metadata.gz: 5fac6c9121a596b4c6962cedb3efa7044a0535d1
4
- data.tar.gz: c36ed0e7da503f256f2d7696046fd72ba224dc3c
3
+ metadata.gz: 3ee4c036d55334addd16c584406a61e95f4c33d5
4
+ data.tar.gz: 247c0675c53e6df660b35ae8c7d31da7552b33bb
5
5
  SHA512:
6
- metadata.gz: a0b63ca2ea63a9c6e61b632ba4c73c0262213e6f983b547b4832eb5909d27aeb84fd169916c2d0aa0aea22d2acd7f82fceedc75af5c7f670666b727ed3f05ced
7
- data.tar.gz: 3607aa50531d62f4a1a7a40c3d236d1a100ae61ab1cf26928e335bae3086cc8ecc07da0a57121bc8655825b52267a2ee09410908cbaf4cc6cdeb26752b90d53e
6
+ metadata.gz: 1aacabec300f013c38e5e482651c49a4f8ea604c8ff101c14cb7055b6c2c7dcfea34d69d9f595b9c32fc745ec81cfed4c3b36a670d6e802136cc1a3cbec7b000
7
+ data.tar.gz: 97c3db3e0f5f848ba26d114840e89f100594c010a0eee107a37493af2bc253f270b14d7212d915ff009910f219c6ee297a95da7feec454bde46816c4c4edcd51
data/CHANGELOG.md CHANGED
@@ -1,3 +1,8 @@
1
+ ## [0.8.0](https::/github.com/os97673/debase-ruby_core_source/compare/v0.7.10...v0.8.0)
2
+
3
+ * previous version of ruby is used if there is no headers for the
4
+ current one.
5
+
1
6
  ## [0.7.10](https://github.com/os97673/debase-ruby_core_source/compare/v0.7.9...v0.7.10)
2
7
 
3
8
  * ruby 2.2.3 added
@@ -67,7 +72,7 @@
67
72
  * gem required ruby ~> 2.0
68
73
  * sources for < 2.0 removed
69
74
 
70
- ## 0.1.0
75
+ ## 0.1.0
71
76
 
72
77
  * Initial release - gem renamed to debase-ruby_source_code, Debugger module renamed to Debase
73
78
  * sources for 2.1.3 and 2.2.0-preview1 added
@@ -39,7 +39,7 @@ module Debase
39
39
  end
40
40
 
41
41
  # Look for sources that ship with gem
42
- dest_dir = File.dirname(__FILE__) + "/ruby_core_source/#{ruby_dir}"
42
+ dest_dir = deduce_packaged_source_dir(ruby_dir)
43
43
  no_source_abort(ruby_dir) unless File.directory?(dest_dir)
44
44
 
45
45
  with_cppflags("-I" + dest_dir) {
@@ -51,6 +51,40 @@ module Debase
51
51
  return false
52
52
  end
53
53
 
54
+ def self.deduce_packaged_source_dir(ruby_dir)
55
+ prefix = File.dirname(__FILE__) + '/ruby_core_source/'
56
+ expected_directory = prefix + ruby_dir
57
+ if File.directory?(expected_directory)
58
+ expected_directory
59
+ else
60
+ # Fallback to an older version.
61
+ ruby_version = Gem::Version.new(RUBY_VERSION)
62
+ path, = Dir.glob(prefix + 'ruby-*').
63
+ select { |d| File.directory?(d) }.
64
+ map { |d| [d, ruby_source_dir_version(d)] }.
65
+ sort { |(_, v1), (_, v2)| -(v1 <=> v2) }.
66
+ find { |(_, v)| v < ruby_version }
67
+
68
+ version = File.basename(path)
69
+ fallback_source_warning(ruby_dir, version)
70
+ path
71
+ end
72
+ end
73
+
74
+ def self.ruby_source_dir_version(dir)
75
+ match = /ruby-([0-9\.]+)-p([0-9]+)/.match(dir)
76
+ Gem::Version.new("#{match[1]}.#{match[2]}")
77
+ end
78
+
79
+ def self.fallback_source_warning(ruby_version, fallback_version)
80
+ warn <<-STR
81
+ **************************************************************************
82
+ No source for #{ruby_version} provided with debase-ruby_core_source gem.
83
+ Falling back to #{fallback_version}.
84
+ **************************************************************************
85
+ STR
86
+ end
87
+
54
88
  def self.no_source_abort(ruby_version)
55
89
  abort <<-STR
56
90
  Makefile creation failed
@@ -1,5 +1,5 @@
1
1
  module Debase
2
2
  module RubyCoreSource
3
- VERSION = '0.7.10'
3
+ VERSION = '0.8.0'
4
4
  end
5
5
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: debase-ruby_core_source
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.7.10
4
+ version: 0.8.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Mark Moseley
@@ -10,7 +10,7 @@ authors:
10
10
  autorequire:
11
11
  bindir: bin
12
12
  cert_chain: []
13
- date: 2015-08-19 00:00:00.000000000 Z
13
+ date: 2015-10-08 00:00:00.000000000 Z
14
14
  dependencies:
15
15
  - !ruby/object:Gem::Dependency
16
16
  name: archive-tar-minitar
@@ -1078,7 +1078,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
1078
1078
  version: 1.3.6
1079
1079
  requirements: []
1080
1080
  rubyforge_project:
1081
- rubygems_version: 2.2.2
1081
+ rubygems_version: 2.4.3
1082
1082
  signing_key:
1083
1083
  specification_version: 4
1084
1084
  summary: Provide Ruby core source files