xgb 0.5.0 → 0.6.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
  SHA256:
3
- metadata.gz: 0afc5631e2925f19ef4da234aa20aca2247806af0823c7e7e7267424edd23973
4
- data.tar.gz: 7a7a6b9e9860f4ebbf8ee5ddcff133f5614482b85fb93b0594864c18a0c1daf9
3
+ metadata.gz: cdd655115731644397164860cb8d64b742ef314f37db362809769b7711d12098
4
+ data.tar.gz: 8f9b44a5d288ae3becda432fefd5f98005b4ee2843df2ee2e54d9617c19c923a
5
5
  SHA512:
6
- metadata.gz: e886ffe5ff3d34055ca5e071fbabf7306cdcb3456513c342300f1ad65211bde7322db163e81c1a3a92e122c58d9b241388e5bfba00c11bc89c4cc056707a8bcd
7
- data.tar.gz: e422b88f36d1a23b429cc44d1c496707272d176884d29265057878bfd0e3010cf4348730746d99cfc1ca7e6f42a858c697d4233c39e186df10c2d61df2280097
6
+ metadata.gz: 9283d55fb5f0a076cea1ccd3984a611b708d0fc063589a0389b125e84f75e1a7c9285de3251577773f5dda212b6f8d4080b00ba9c0298f8a2f4a2c1bf36c31b8
7
+ data.tar.gz: 60c7f8eab579b7ef0f0049710ee98197f734692fb0f9e2513641bb1e312512e1991a6e9ca0aea834ff2e2852d141470027e6a2fc4fe8d2a016380fd26d71fda5
data/CHANGELOG.md CHANGED
@@ -1,3 +1,20 @@
1
+ ## 0.6.0 (2021-10-23)
2
+
3
+ - Updated XGBoost to 1.5.0
4
+
5
+ ## 0.5.3 (2021-05-12)
6
+
7
+ - Updated XGBoost to 1.4.0
8
+ - Added ARM shared library for Linux
9
+
10
+ ## 0.5.2 (2021-03-09)
11
+
12
+ - Added ARM shared library for Mac
13
+
14
+ ## 0.5.1 (2021-02-08)
15
+
16
+ - Fixed error with validation sets without early stopping
17
+
1
18
  ## 0.5.0 (2020-12-12)
2
19
 
3
20
  - Updated XGBoost to 1.3.0
data/NOTICE.txt CHANGED
@@ -1,5 +1,5 @@
1
1
  Copyright XGBoost contributors
2
- Copyright 2019-2020 Andrew Kane
2
+ Copyright 2019-2021 Andrew Kane
3
3
 
4
4
  Licensed under the Apache License, Version 2.0 (the "License");
5
5
  you may not use this file except in compliance with the License.
data/README.md CHANGED
@@ -1,8 +1,8 @@
1
- # XGBoost
1
+ # XGBoost Ruby
2
2
 
3
3
  [XGBoost](https://github.com/dmlc/xgboost) - high performance gradient boosting - for Ruby
4
4
 
5
- [![Build Status](https://github.com/ankane/xgboost/workflows/build/badge.svg?branch=master)](https://github.com/ankane/xgboost/actions)
5
+ [![Build Status](https://github.com/ankane/xgboost-ruby/workflows/build/badge.svg?branch=master)](https://github.com/ankane/xgboost-ruby/actions)
6
6
 
7
7
  ## Installation
8
8
 
@@ -173,22 +173,22 @@ Thanks to the [xgboost](https://github.com/PairOnAir/xgboost-ruby) gem for showi
173
173
 
174
174
  ## History
175
175
 
176
- View the [changelog](https://github.com/ankane/xgboost/blob/master/CHANGELOG.md)
176
+ View the [changelog](https://github.com/ankane/xgboost-ruby/blob/master/CHANGELOG.md)
177
177
 
178
178
  ## Contributing
179
179
 
180
180
  Everyone is encouraged to help improve this project. Here are a few ways you can help:
181
181
 
182
- - [Report bugs](https://github.com/ankane/xgboost/issues)
183
- - Fix bugs and [submit pull requests](https://github.com/ankane/xgboost/pulls)
182
+ - [Report bugs](https://github.com/ankane/xgboost-ruby/issues)
183
+ - Fix bugs and [submit pull requests](https://github.com/ankane/xgboost-ruby/pulls)
184
184
  - Write, clarify, or fix documentation
185
185
  - Suggest or add new features
186
186
 
187
187
  To get started with development:
188
188
 
189
189
  ```sh
190
- git clone https://github.com/ankane/xgboost.git
191
- cd xgboost
190
+ git clone https://github.com/ankane/xgboost-ruby.git
191
+ cd xgboost-ruby
192
192
  bundle install
193
193
  bundle exec rake vendor:all
194
194
  bundle exec rake test
data/lib/xgboost/ffi.rb CHANGED
@@ -5,7 +5,7 @@ module XGBoost
5
5
  begin
6
6
  ffi_lib XGBoost.ffi_lib
7
7
  rescue LoadError => e
8
- if e.message.include?("Library not loaded: /usr/local/opt/libomp/lib/libomp.dylib") && e.message.include?("Reason: image not found")
8
+ if ["/usr/local", "/opt/homebrew"].any? { |v| e.message.include?("Library not loaded: #{v}/opt/libomp/lib/libomp.dylib") } && e.message.include?("Reason: image not found")
9
9
  raise LoadError, "OpenMP not found. Run `brew install libomp`"
10
10
  else
11
11
  raise e
@@ -1,3 +1,3 @@
1
1
  module XGBoost
2
- VERSION = "0.5.0"
2
+ VERSION = "0.6.0"
3
3
  end
data/lib/xgboost.rb CHANGED
@@ -19,7 +19,22 @@ module XGBoost
19
19
  class << self
20
20
  attr_accessor :ffi_lib
21
21
  end
22
- lib_name = FFI.map_library_name("xgboost")
22
+ lib_name =
23
+ if Gem.win_platform?
24
+ "xgboost.dll"
25
+ elsif RbConfig::CONFIG["host_os"] =~ /darwin/i
26
+ if RbConfig::CONFIG["host_cpu"] =~ /arm/i
27
+ "libxgboost.arm64.dylib"
28
+ else
29
+ "libxgboost.dylib"
30
+ end
31
+ else
32
+ if RbConfig::CONFIG["host_cpu"] =~ /aarch64/i
33
+ "libxgboost.arm64.so"
34
+ else
35
+ "libxgboost.so"
36
+ end
37
+ end
23
38
  vendor_lib = File.expand_path("../vendor/#{lib_name}", __dir__)
24
39
  self.ffi_lib = [vendor_lib]
25
40
 
@@ -61,7 +76,7 @@ module XGBoost
61
76
  best_score = score
62
77
  best_iter = iteration
63
78
  best_message = message
64
- elsif iteration - best_iter >= early_stopping_rounds
79
+ elsif early_stopping_rounds && iteration - best_iter >= early_stopping_rounds
65
80
  booster.best_iteration = best_iter
66
81
  puts "Stopping. Best iteration:\n#{best_message}" if verbose_eval
67
82
  break
Binary file
Binary file
Binary file
data/vendor/libxgboost.so CHANGED
Binary file
data/vendor/xgboost.dll CHANGED
Binary file
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: xgb
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.5.0
4
+ version: 0.6.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Andrew Kane
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2020-12-12 00:00:00.000000000 Z
11
+ date: 2021-10-23 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: ffi
@@ -24,92 +24,8 @@ dependencies:
24
24
  - - ">="
25
25
  - !ruby/object:Gem::Version
26
26
  version: '0'
27
- - !ruby/object:Gem::Dependency
28
- name: bundler
29
- requirement: !ruby/object:Gem::Requirement
30
- requirements:
31
- - - ">="
32
- - !ruby/object:Gem::Version
33
- version: '0'
34
- type: :development
35
- prerelease: false
36
- version_requirements: !ruby/object:Gem::Requirement
37
- requirements:
38
- - - ">="
39
- - !ruby/object:Gem::Version
40
- version: '0'
41
- - !ruby/object:Gem::Dependency
42
- name: rake
43
- requirement: !ruby/object:Gem::Requirement
44
- requirements:
45
- - - ">="
46
- - !ruby/object:Gem::Version
47
- version: '0'
48
- type: :development
49
- prerelease: false
50
- version_requirements: !ruby/object:Gem::Requirement
51
- requirements:
52
- - - ">="
53
- - !ruby/object:Gem::Version
54
- version: '0'
55
- - !ruby/object:Gem::Dependency
56
- name: minitest
57
- requirement: !ruby/object:Gem::Requirement
58
- requirements:
59
- - - ">="
60
- - !ruby/object:Gem::Version
61
- version: '5'
62
- type: :development
63
- prerelease: false
64
- version_requirements: !ruby/object:Gem::Requirement
65
- requirements:
66
- - - ">="
67
- - !ruby/object:Gem::Version
68
- version: '5'
69
- - !ruby/object:Gem::Dependency
70
- name: daru
71
- requirement: !ruby/object:Gem::Requirement
72
- requirements:
73
- - - ">="
74
- - !ruby/object:Gem::Version
75
- version: '0'
76
- type: :development
77
- prerelease: false
78
- version_requirements: !ruby/object:Gem::Requirement
79
- requirements:
80
- - - ">="
81
- - !ruby/object:Gem::Version
82
- version: '0'
83
- - !ruby/object:Gem::Dependency
84
- name: numo-narray
85
- requirement: !ruby/object:Gem::Requirement
86
- requirements:
87
- - - ">="
88
- - !ruby/object:Gem::Version
89
- version: '0'
90
- type: :development
91
- prerelease: false
92
- version_requirements: !ruby/object:Gem::Requirement
93
- requirements:
94
- - - ">="
95
- - !ruby/object:Gem::Version
96
- version: '0'
97
- - !ruby/object:Gem::Dependency
98
- name: rover-df
99
- requirement: !ruby/object:Gem::Requirement
100
- requirements:
101
- - - ">="
102
- - !ruby/object:Gem::Version
103
- version: '0'
104
- type: :development
105
- prerelease: false
106
- version_requirements: !ruby/object:Gem::Requirement
107
- requirements:
108
- - - ">="
109
- - !ruby/object:Gem::Version
110
- version: '0'
111
27
  description:
112
- email: andrew@chartkick.com
28
+ email: andrew@ankane.org
113
29
  executables: []
114
30
  extensions: []
115
31
  extra_rdoc_files: []
@@ -130,10 +46,12 @@ files:
130
46
  - lib/xgboost/utils.rb
131
47
  - lib/xgboost/version.rb
132
48
  - vendor/LICENSE
49
+ - vendor/libxgboost.arm64.dylib
50
+ - vendor/libxgboost.arm64.so
133
51
  - vendor/libxgboost.dylib
134
52
  - vendor/libxgboost.so
135
53
  - vendor/xgboost.dll
136
- homepage: https://github.com/ankane/xgboost
54
+ homepage: https://github.com/ankane/xgboost-ruby
137
55
  licenses:
138
56
  - Apache-2.0
139
57
  metadata: {}
@@ -152,7 +70,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
152
70
  - !ruby/object:Gem::Version
153
71
  version: '0'
154
72
  requirements: []
155
- rubygems_version: 3.1.4
73
+ rubygems_version: 3.2.22
156
74
  signing_key:
157
75
  specification_version: 4
158
76
  summary: High performance gradient boosting for Ruby