ffi 1.11.3-x64-mingw32 → 1.12.0-x64-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
2
  SHA256:
3
- metadata.gz: d42def35ba2e25447961799519a27db030b37c657ecf2ef40600497c02c64bc1
4
- data.tar.gz: 8164cc20bff96e3c4e9feebe42ac064d0fcb7ea9e8de851580488616893666a0
3
+ metadata.gz: 3d2ce245fbdd4d02defcd88efaa887d20aeb8e3564d15ca2c3ba4a81ace27390
4
+ data.tar.gz: 9f2f9ccc884e43a150e9ef033d58a3f80b28229596bd96ce8b333aeffa40378d
5
5
  SHA512:
6
- metadata.gz: 7d31742717e9b96962e782d851902694b479e75fefd779cc2a3395506bfda2775ff85fd12a5a59c1d83d516a670709904431d5a178206469ab796452bceb6a27
7
- data.tar.gz: d8e09e0e8cc5396c32c6b28475b0b085053d3b77598fddef267ef23aa08478be7625dffdaf9373773b499eef77b457a26df8b574e22a1089e0b5f043649f92c6
6
+ metadata.gz: 3b737cd72a35eebe49afff4aa99e40845002ee61050ef42524cbfe8c7806e332559608ca715e2ed6cd4c2dcf2b02de4d3f16db2260f25b4162eb7370801eb85a
7
+ data.tar.gz: 0a2cc5ad7a8a967b2bd109e2a75846d1a8158ee365a067f379ec35fd287873cf3d32f82de692b67a87eb4f9057c1e4f904d4f9e3c0a7a91a3952b8195afa0914
@@ -23,6 +23,8 @@ matrix:
23
23
  allow_failures:
24
24
  - os: osx
25
25
  rvm: ruby-head
26
+ - os: osx
27
+ rvm: 2.3.8
26
28
  include:
27
29
  - name: powerpc
28
30
  language: generic
@@ -1,3 +1,17 @@
1
+ 1.12.0 / 2020-01-14
2
+ -------------------
3
+
4
+ Added:
5
+ * FFI::VERSION is defined as part of `require 'ffi'` now.
6
+ It is no longer necessary to `require 'ffi/version'` .
7
+
8
+ Changed:
9
+ * Update libffi to latest master.
10
+
11
+ Deprecated:
12
+ * Overwriting struct layouts is now warned and will be disallowed in ffi-2.0. #734, #735
13
+
14
+
1
15
  1.11.3 / 2019-11-25
2
16
  -------------------
3
17
 
data/Gemfile CHANGED
@@ -1,9 +1,9 @@
1
1
  source 'https://rubygems.org'
2
2
 
3
3
  group :development do
4
- gem 'rake', '~> 12.1'
4
+ gem 'rake', '~> 13.0'
5
5
  gem 'rake-compiler', '~> 1.0.3'
6
- gem 'rake-compiler-dock', '~> 0.7.0'
6
+ gem 'rake-compiler-dock', '~> 1.0'
7
7
  gem 'rspec', '~> 3.0'
8
8
  gem 'rubygems-tasks', '~> 0.2.4', :require => 'rubygems/tasks'
9
9
  gem "rubysl", "~> 2.0", :platforms => 'rbx'
data/README.md CHANGED
@@ -38,10 +38,19 @@ For less minimalistic and more examples you may look at:
38
38
 
39
39
  ## Requirements
40
40
 
41
- When installing the gem on CRuby (MRI) or Rubinius, you will need:
41
+ When installing the gem on CRuby (MRI), you will need:
42
42
  * A C compiler (e.g., Xcode on macOS, `gcc` or `clang` on everything else)
43
+ Optionally (speeds up installation):
43
44
  * The `libffi` library and development headers - this is commonly in the `libffi-dev` or `libffi-devel` packages
44
45
 
46
+ The ffi gem comes with a builtin libffi version, which is used, when the system libffi library is not available or too old.
47
+ Use of the system libffi can be enforced by:
48
+ ```
49
+ gem install ffi -- --enable-system-libffi # to install the gem manually
50
+ bundle config build.ffi --enable-system-libffi # for bundle install
51
+ ```
52
+ or prevented by `--disable-system-libffi`.
53
+
45
54
  On Linux systems running with [PaX](https://en.wikipedia.org/wiki/PaX) (Gentoo, Alpine, etc.), FFI may trigger `mprotect` errors. You may need to disable [mprotect](https://en.wikibooks.org/wiki/Grsecurity/Appendix/Grsecurity_and_PaX_Configuration_Options#Restrict_mprotect.28.29) for ruby (`paxctl -m [/path/to/ruby]`) for the time being until a solution is found.
46
55
 
47
56
  On FreeBSD systems pkgconf must be installed for the gem to be able to compile using clang. Install either via packages `pkg install pkgconf` or from ports via `devel/pkgconf`.
@@ -35,9 +35,9 @@ Gem::Specification.new do |s|
35
35
  s.license = 'BSD-3-Clause'
36
36
  s.require_paths << 'ext/ffi_c'
37
37
  s.required_ruby_version = '>= 2.0'
38
- s.add_development_dependency 'rake', '~> 12.1'
38
+ s.add_development_dependency 'rake', '~> 13.0'
39
39
  s.add_development_dependency 'rake-compiler', '~> 1.0'
40
- s.add_development_dependency 'rake-compiler-dock', '~> 0.7.0'
40
+ s.add_development_dependency 'rake-compiler-dock', '~> 1.0'
41
41
  s.add_development_dependency 'rspec', '~> 2.14.1'
42
42
  s.add_development_dependency 'rubygems-tasks', "~> 0.2.4"
43
43
  end
@@ -43,3 +43,4 @@ require 'ffi/io'
43
43
  require 'ffi/autopointer'
44
44
  require 'ffi/variadic'
45
45
  require 'ffi/enum'
46
+ require 'ffi/version'
@@ -204,7 +204,7 @@ module FFI
204
204
  # end
205
205
  # @note Creating a layout from a hash +spec+ is supported only for Ruby 1.9.
206
206
  def layout(*spec)
207
- #raise RuntimeError, "struct layout already defined for #{self.inspect}" if defined?(@layout)
207
+ warn "[DEPRECATION] Struct layout is already defined for class #{self.inspect}. Redefinition as in #{caller[0]} will be disallowed in ffi-2.0." if defined?(@layout)
208
208
  return @layout if spec.size == 0
209
209
 
210
210
  builder = StructLayoutBuilder.new
@@ -1,3 +1,3 @@
1
1
  module FFI
2
- VERSION = '1.11.3'
2
+ VERSION = '1.12.0'
3
3
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: ffi
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.11.3
4
+ version: 1.12.0
5
5
  platform: x64-mingw32
6
6
  authors:
7
7
  - Wayne Meissner
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2019-11-25 00:00:00.000000000 Z
11
+ date: 2020-01-14 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: rake
@@ -16,14 +16,14 @@ dependencies:
16
16
  requirements:
17
17
  - - "~>"
18
18
  - !ruby/object:Gem::Version
19
- version: '12.1'
19
+ version: '13.0'
20
20
  type: :development
21
21
  prerelease: false
22
22
  version_requirements: !ruby/object:Gem::Requirement
23
23
  requirements:
24
24
  - - "~>"
25
25
  - !ruby/object:Gem::Version
26
- version: '12.1'
26
+ version: '13.0'
27
27
  - !ruby/object:Gem::Dependency
28
28
  name: rake-compiler
29
29
  requirement: !ruby/object:Gem::Requirement
@@ -44,14 +44,14 @@ dependencies:
44
44
  requirements:
45
45
  - - "~>"
46
46
  - !ruby/object:Gem::Version
47
- version: 0.7.0
47
+ version: '1.0'
48
48
  type: :development
49
49
  prerelease: false
50
50
  version_requirements: !ruby/object:Gem::Requirement
51
51
  requirements:
52
52
  - - "~>"
53
53
  - !ruby/object:Gem::Version
54
- version: 0.7.0
54
+ version: '1.0'
55
55
  - !ruby/object:Gem::Dependency
56
56
  name: rspec
57
57
  requirement: !ruby/object:Gem::Requirement
@@ -207,15 +207,14 @@ required_ruby_version: !ruby/object:Gem::Requirement
207
207
  version: '2.2'
208
208
  - - "<"
209
209
  - !ruby/object:Gem::Version
210
- version: 2.7.dev
210
+ version: 2.8.dev
211
211
  required_rubygems_version: !ruby/object:Gem::Requirement
212
212
  requirements:
213
213
  - - ">="
214
214
  - !ruby/object:Gem::Version
215
215
  version: '0'
216
216
  requirements: []
217
- rubyforge_project:
218
- rubygems_version: 2.7.9
217
+ rubygems_version: 3.1.2
219
218
  signing_key:
220
219
  specification_version: 4
221
220
  summary: Ruby FFI