win32-api 1.7.0-universal-mingw32 → 1.7.1-universal-mingw32

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
- SHA1:
3
- metadata.gz: 41a72c313fa86b07d5fe937675d37d563c41efb9
4
- data.tar.gz: f12df49826c30fd8903b958e0e26f2082d0696bc
2
+ SHA256:
3
+ metadata.gz: 899305029a34692ac9e4b83188289c9b3a9df8c0eb54ffef342542e1166af56f
4
+ data.tar.gz: a9169febd00afba822e694e06efb21bb341a82d7b89a943d4e7dad6b7722f5d9
5
5
  SHA512:
6
- metadata.gz: def9577d7bb25e8fbe94c6f07d34176369475a21a45e4328dace67bacaa5674ba596631396afea239454c45402f769ae4e576c321ea7be5634ee996453c9a978
7
- data.tar.gz: cfa0ade06bbc3ecd88bd72fb3cd1c00b5af3bd389e6841d9387d97e0b1bb90a0758efba061e94d7df5effcaa89e2b435c29475bec8568d4e103dc35f5bd468b0
6
+ metadata.gz: 945c06c178dc2924016acfe65dae51fceccf09a87a70a136dc676df184f7c3d39916dc7413fde9682250e0e2d0c325885ff459a3da4e7522553d8eb687177708
7
+ data.tar.gz: f19cbbcfcaa13d33df2e8ea153d2ecd91caf217c7aaf49a4b0c3c6a8fe3677d3b3557408d4c1f5b848705f446b5002759029f22846b13e5ba6e3ef4f386daf14
data/CHANGES CHANGED
@@ -1,3 +1,8 @@
1
+ == 1.7.1 - 4-Jan-2018
2
+ * Add Ruby 2.6 snapshot support.
3
+ * Now includes binaries for Ruby 2.6 both 32 and 64 bit versions.
4
+ * Use RubyInstaller 2.5.0-1 for Ruby 2.5 binaries.
5
+
1
6
  == 1.7.0 - 28-Nov-2017
2
7
  * Add gcc option to fix crash on RubyInstaller2 x86
3
8
 
data/Rakefile CHANGED
@@ -59,63 +59,69 @@ namespace 'gem' do
59
59
  end
60
60
 
61
61
  desc 'Build a binary gem'
62
- task :binary, :ruby2_32, :ruby2_64, :ruby21, :ruby21_64, :ruby22, :ruby22_64, :ruby23_32, :ruby23_64, :ruby24_32, :ruby24_64 do |task, args|
62
+ task :binary, :ruby2_32, :ruby2_64, :ruby21, :ruby21_64, :ruby22, :ruby22_64, :ruby23_32, :ruby23_64, :ruby24_32, :ruby24_64, :ruby25_32, :ruby25_64 do |task, args|
63
63
  # These are just what's on my system at the moment. Adjust as needed.
64
+ # ri refers to RubyInstaller, ruby 2.3 and prev were built with RubyInstaller (:ri),
65
+ # 2.4 and later with RubyInstaller2 (:ri2)
66
+ # pre variable allows local builds with ruby & DevKit not at drive root
67
+
68
+ dk_path = {}
69
+ if ENV['APPVEYOR'] =~ /true/i
70
+ pre = "C:"
71
+ dk_path[:ri] = "C:/ruby23/DevKit/bin;C:/ruby23/DevKit/mingw/bin"
72
+ dk_path[:ri_64] = "C:/ruby23-x64/DevKit/bin;C:/ruby23-x64/DevKit/mingw/bin"
73
+ else
74
+ ENV['BASEPATH'] = ENV['PATH'].gsub(/\\/, '/')
75
+ pre = "C:"
76
+ dk_path[:ri] = "#{pre}/Devkit/bin;#{pre}/Devkit/mingw/bin"
77
+ dk_path[:ri_64] = "#{pre}/Devkit64/bin;#{pre}/Devkit64/mingw/bin"
78
+ end
79
+ # at present, Appveyor & local DevKit paths match for ri2
80
+ dk_path[:ri2] = "C:/msys64/usr/bin;C:/msys64/mingw32/bin"
81
+ dk_path[:ri2_64] = "C:/msys64/usr/bin;C:/msys64/mingw64/bin"
82
+
64
83
  args.with_defaults(
65
84
  {
66
- :ruby2_32 => {:path => "c:/ruby200/bin/ruby", :msys => :msys1},
67
- :ruby2_64 => {:path => "c:/ruby200-x64/bin/ruby", :msys => :msys1},
68
- :ruby21_32 => {:path => "c:/ruby21/bin/ruby", :msys => :msys1},
69
- :ruby21_64 => {:path => "c:/ruby21-x64/bin/ruby", :msys => :msys1},
70
- :ruby22_32 => {:path => "c:/ruby22/bin/ruby", :msys => :msys1},
71
- :ruby22_64 => {:path => "c:/ruby22-x64/bin/ruby", :msys => :msys1},
72
- :ruby23_32 => {:path => "c:/ruby23/bin/ruby", :msys => :msys1},
73
- :ruby23_64 => {:path => "c:/ruby23-x64/bin/ruby", :msys => :msys1},
74
- :ruby24_32 => {:path => "c:/ruby24/bin/ruby", :msys => :msys2},
75
- :ruby24_64 => {:path => "c:/ruby24-x64/bin/ruby", :msys => :msys2},
76
- :ruby25_32 => {:path => "c:/ruby25/bin/ruby", :msys => :msys2},
77
- :ruby25_64 => {:path => "c:/ruby25-x64/bin/ruby", :msys => :msys2}
85
+ :ruby2_32 => {:path => "#{pre}/ruby200/bin", :ri => :ri, :omit => false},
86
+ :ruby2_64 => {:path => "#{pre}/ruby200-x64/bin", :ri => :ri_64, :omit => false},
87
+ :ruby21_32 => {:path => "#{pre}/ruby21/bin", :ri => :ri, :omit => false},
88
+ :ruby21_64 => {:path => "#{pre}/ruby21-x64/bin", :ri => :ri_64, :omit => false},
89
+ :ruby22_32 => {:path => "#{pre}/ruby22/bin", :ri => :ri, :omit => false},
90
+ :ruby22_64 => {:path => "#{pre}/ruby22-x64/bin", :ri => :ri_64, :omit => false},
91
+ :ruby23_32 => {:path => "#{pre}/ruby23/bin", :ri => :ri, :omit => false},
92
+ :ruby23_64 => {:path => "#{pre}/ruby23-x64/bin", :ri => :ri_64, :omit => false},
93
+ :ruby24_32 => {:path => "#{pre}/ruby24/bin", :ri => :ri2, :omit => false},
94
+ :ruby24_64 => {:path => "#{pre}/ruby24-x64/bin", :ri => :ri2_64, :omit => false},
95
+ :ruby25_32 => {:path => "#{pre}/ruby25/bin", :ri => :ri2, :omit => true},
96
+ :ruby25_64 => {:path => "#{pre}/ruby25-x64/bin", :ri => :ri2_64, :omit => true},
97
+ :ruby26_32 => {:path => "#{pre}/ruby26/bin", :ri => :ri2, :omit => true},
98
+ :ruby26_64 => {:path => "#{pre}/ruby26-x64/bin", :ri => :ri2_64, :omit => true},
78
99
  }
79
100
  )
80
101
 
81
102
  Rake::Task[:clobber].invoke
82
103
 
83
- args.each{ |key|
84
- default_path = ENV['PATH']
104
+ default_path = ENV['PATH']
85
105
 
86
- spec = eval(IO.read('win32-api.gemspec'))
87
-
88
- if spec.version.prerelease? && !File.exist?("#{key.last[:path]}.exe")
89
- puts "#{key.last[:path]} does not exist! Skip."
106
+ args.each { |key|
107
+ # These lines are used for trunk build.
108
+ if key.last[:omit] && !File.exist?("#{key.last[:path]}/ruby.exe")
109
+ puts "#{key.last[:path]}/ruby does not exist! Skip."
90
110
  next
91
111
  end
92
112
 
93
- if key.last[:msys] == :msys1
94
- # Adjust devkit paths as needed.
95
- if `"#{key.last[:path]}" -v` =~ /x64/i
96
- ENV['PATH'] = "C:/Devkit64/bin;C:/Devkit64/mingw/bin;" + ENV['PATH']
97
- else
98
- ENV['PATH'] = "C:/Devkit/bin;C:/Devkit/mingw/bin;" + ENV['PATH']
99
- end
100
- elsif key.last[:msys] == :msys2
101
- ENV.delete('RI_DEVKIT')
102
- # Adjust devkit paths as needed.
103
- if `"#{key.last[:path]}" -v` =~ /x64/i
104
- ENV['PATH'] = "C:/msys64/usr/bin;C:/msys64/mingw64/bin;" + ENV['PATH']
105
- else
106
- ENV['PATH'] = "C:/msys64/usr/bin;C:/msys64/mingw32/bin;" + ENV['PATH']
107
- end
108
- end
113
+ bld_path = "#{key.last[:path]};#{dk_path[key.last[:ri]]};#{ENV['BASEPATH']}"
109
114
  mkdir_p "lib/win32/#{key.first}/win32"
110
115
 
111
116
  Dir.chdir('ext') do
117
+ ENV['PATH'] = bld_path
112
118
  sh "make distclean" rescue nil
113
- sh "#{key.last[:path]} extconf.rb"
119
+ sh "ruby extconf.rb"
114
120
  sh "make"
121
+ sh "strip --strip-unneeded -p api.so"
122
+ ENV['PATH'] = default_path
115
123
  cp 'api.so', "../lib/win32/#{key.first}/win32/api.so"
116
124
  end
117
-
118
- ENV['PATH'] = default_path
119
125
  }
120
126
 
121
127
  text = <<HERE
@@ -171,6 +177,14 @@ begin
171
177
  end
172
178
  end
173
179
 
180
+ if RbConfig::CONFIG['MINOR'] == '6'
181
+ if RbConfig::CONFIG['arch'] =~ /x64/i
182
+ require File.join(File.dirname(__FILE__), 'ruby26_64/win32/api')
183
+ else
184
+ require File.join(File.dirname(__FILE__), 'ruby26_32/win32/api')
185
+ end
186
+ end
187
+
174
188
  end
175
189
  rescue LoadError
176
190
  require File.join(File.dirname(__FILE__), '../../ext/api')
@@ -1,61 +1,46 @@
1
1
  version: '{build}'
2
2
 
3
+ init:
4
+ # use a minimal path
5
+ - set PATH=C:\ruby%ruby_version%\bin;C:\Program Files\7-Zip;C:\Program Files\AppVeyor\BuildAgent;C:\Program Files\Git\cmd;C:\Windows\system32
6
+ # Load ruby trunk build
7
+ - if %ruby_version%==_trunk (
8
+ appveyor DownloadFile https://ci.appveyor.com/api/projects/MSP-Greg/ruby-loco/artifacts/ruby_trunk.7z -FileName C:\ruby_trunk.7z &
9
+ 7z x C:\ruby_trunk.7z -oC:\ruby_trunk
10
+ )
11
+
3
12
  platform: x64
4
13
 
5
14
  install:
6
- - SET PATH=C:\Ruby%ruby_version%\bin;%PATH%
7
- - "%devkit64%\\devkitvars.bat"
8
- - "%devkit32%\\devkitvars.bat"
9
15
  - ruby --version
10
16
  - gem --version
11
- - IF %msys2%==1 ridk.cmd enable
12
- - IF %msys2%==1 gem install bundler --force
17
+ # Assume we can use the version of bundler that Appveyor has packaged with each ruby version
13
18
  - bundle install
19
+
14
20
  build: off
21
+
15
22
  test_script:
16
- - bundle exec rake gem:binary
17
- - IF %msys2%==0 bundle exec rake test:all
18
- - IF %msys2%==1 ridk.cmd exec bundle exec rake test:all
23
+ - rake gem:binary
24
+ - rake -rdevkit test:all
19
25
 
20
26
  environment:
21
27
  matrix:
22
- - ruby_version: "24-x64"
23
- devkit64: C:\Ruby23-x64\DevKit
24
- devkit32: C:\Ruby23\DevKit
25
- msys2: 1
26
- - ruby_version: "24"
27
- devkit64: C:\Ruby23-x64\DevKit
28
- devkit32: C:\Ruby23\DevKit
29
- msys2: 1
30
- - ruby_version: "23-x64"
31
- devkit64: C:\Ruby23-x64\DevKit
32
- devkit32: C:\Ruby23\DevKit
33
- msys2: 0
34
- - ruby_version: "23"
35
- devkit64: C:\Ruby23-x64\DevKit
36
- devkit32: C:\Ruby23\DevKit
37
- msys2: 0
38
- - ruby_version: "22-x64"
39
- devkit64: C:\Ruby23-x64\DevKit
40
- devkit32: C:\Ruby23\DevKit
41
- msys2: 0
42
- - ruby_version: "22"
43
- devkit64: C:\Ruby23-x64\DevKit
44
- devkit32: C:\Ruby23\DevKit
45
- msys2: 0
46
- - ruby_version: "21-x64"
47
- devkit64: C:\Ruby23-x64\DevKit
48
- devkit32: C:\Ruby23\DevKit
49
- msys2: 0
50
- - ruby_version: "21"
51
- devkit64: C:\Ruby23-x64\DevKit
52
- devkit32: C:\Ruby23\DevKit
53
- msys2: 0
54
- - ruby_version: "200-x64"
55
- devkit64: C:\Ruby23-x64\DevKit
56
- devkit32: C:\Ruby23\DevKit
57
- msys2: 0
58
- - ruby_version: "200"
59
- devkit64: C:\Ruby23-x64\DevKit
60
- devkit32: C:\Ruby23\DevKit
61
- msys2: 0
28
+ - ruby_version: _trunk
29
+ - ruby_version: 25-x64
30
+ - ruby_version: 25
31
+ - ruby_version: 24-x64
32
+ - ruby_version: 24
33
+ - ruby_version: 23-x64
34
+ - ruby_version: 23
35
+ - ruby_version: 22-x64
36
+ - ruby_version: 22
37
+ - ruby_version: 21-x64
38
+ - ruby_version: 21
39
+ - ruby_version: 200-x64
40
+ - ruby_version: 200
41
+
42
+ matrix:
43
+ allow_failures:
44
+ - ruby_version: _trunk
45
+ - ruby_version: 25-x64
46
+ - ruby_version: 25
@@ -37,7 +37,7 @@
37
37
 
38
38
 
39
39
  #define MAX_BUF 1024
40
- #define WINDOWS_API_VERSION "1.7.0"
40
+ #define WINDOWS_API_VERSION "1.7.1"
41
41
 
42
42
  #define _T_VOID 0
43
43
  #define _T_LONG 1
@@ -50,6 +50,14 @@ begin
50
50
  end
51
51
  end
52
52
 
53
+ if RbConfig::CONFIG['MINOR'] == '6'
54
+ if RbConfig::CONFIG['arch'] =~ /x64/i
55
+ require File.join(File.dirname(__FILE__), 'ruby26_64/win32/api')
56
+ else
57
+ require File.join(File.dirname(__FILE__), 'ruby26_32/win32/api')
58
+ end
59
+ end
60
+
53
61
  end
54
62
  rescue LoadError
55
63
  require File.join(File.dirname(__FILE__), '../../ext/api')
@@ -18,7 +18,7 @@ class TC_Win32_API < Test::Unit::TestCase
18
18
  end
19
19
 
20
20
  def test_version
21
- assert_equal('1.6.1.2', API::VERSION)
21
+ assert_equal('1.7.1', API::VERSION)
22
22
  end
23
23
 
24
24
  def test_constructor_basic
@@ -2,7 +2,7 @@ require 'rubygems'
2
2
 
3
3
  Gem::Specification.new do |spec|
4
4
  spec.name = 'win32-api'
5
- spec.version = '1.7.0'
5
+ spec.version = '1.7.1'
6
6
  spec.authors = ['Daniel J. Berger', 'Park Heesob', 'Hiroshi Hatake']
7
7
  spec.license = 'Artistic-2.0'
8
8
  spec.email = 'djberg96@gmail.com'
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: win32-api
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.7.0
4
+ version: 1.7.1
5
5
  platform: universal-mingw32
6
6
  authors:
7
7
  - Daniel J. Berger
@@ -10,7 +10,7 @@ authors:
10
10
  autorequire:
11
11
  bindir: bin
12
12
  cert_chain: []
13
- date: 2017-11-28 00:00:00.000000000 Z
13
+ date: 2018-01-04 00:00:00.000000000 Z
14
14
  dependencies:
15
15
  - !ruby/object:Gem::Dependency
16
16
  name: test-unit
@@ -73,6 +73,8 @@ files:
73
73
  - lib/win32/ruby24_64/win32/api.so
74
74
  - lib/win32/ruby25_32/win32/api.so
75
75
  - lib/win32/ruby25_64/win32/api.so
76
+ - lib/win32/ruby26_32/win32/api.so
77
+ - lib/win32/ruby26_64/win32/api.so
76
78
  - lib/win32/ruby2_32/win32/api.so
77
79
  - lib/win32/ruby2_64/win32/api.so
78
80
  - test/test_win32_api.rb
@@ -99,7 +101,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
99
101
  version: '0'
100
102
  requirements: []
101
103
  rubyforge_project:
102
- rubygems_version: 2.6.13
104
+ rubygems_version: 2.7.3
103
105
  signing_key:
104
106
  specification_version: 4
105
107
  summary: A superior replacement for Win32API