fxruby 1.6.49 → 1.6.50

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: 4a3909ac3b4a8bac142e54686718a355c1b1e2a68d02b5bf725650081c3f42e6
4
- data.tar.gz: 0ad59cf39da0c5a34e5076fca001149a37959dc109b09c12f815aa9690ab5e62
3
+ metadata.gz: 91f5dfd3fc0e923e7a233119fcfad086caab6dc09dd8f6abb5fb29b7bd275152
4
+ data.tar.gz: a85827224c5717b7214e20f9cc62a846f57a92f5b5a065f4aa9e42af9d6f4b39
5
5
  SHA512:
6
- metadata.gz: 2dbe4d49ca93104ef3591d9183a99b798101e197b45999260b84a38e7575410d2a1eb13854e25737067cbc2381e9fed5b2084270b0df1afa652bf054b1782933
7
- data.tar.gz: 92addf888d692c196aeed8d7adedb24ba2970bc7bba1e441fbdcfb8d092b02c21392743a6feac15682ac4566cce1357aaa15b61c5621cf9e2d98e7d35e7cd734
6
+ metadata.gz: acb3b10556bfc07b2d7258a2afe2453cb9b653e6b41dabf8ccf1283fcd393dd174b150cf2aa6c2c7e07dcc81a71f4b13eec2645dca51cd264d032744711da856
7
+ data.tar.gz: 53596e21c809737675ae5fc692c8309b952fe480c3c954cf3a8525efb2263a919b030a1a80f4db8589752ee5d50e496f4ff83b3840c5affc89d09ecce36dfb6b
checksums.yaml.gz.sig CHANGED
Binary file
@@ -15,6 +15,7 @@ jobs:
15
15
  fail-fast: false
16
16
  matrix:
17
17
  include:
18
+ - platform: "aarch64-mingw-ucrt"
18
19
  - platform: "x64-mingw-ucrt"
19
20
  - platform: "x64-mingw32"
20
21
  - platform: "x86-mingw32"
@@ -23,7 +24,7 @@ jobs:
23
24
  - name: Set up Ruby
24
25
  uses: ruby/setup-ruby@v1
25
26
  with:
26
- ruby-version: "3.4"
27
+ ruby-version: "4.0"
27
28
  - run: bundle install
28
29
 
29
30
  - name: Build binary gem
@@ -42,14 +43,17 @@ jobs:
42
43
  fail-fast: false
43
44
  matrix:
44
45
  include:
46
+ - os: windows-11-arm
47
+ ruby: "4.0"
48
+ platform: "aarch64-mingw-ucrt"
45
49
  - os: windows-latest
46
- ruby: "3.4"
50
+ ruby: "4.0"
47
51
  platform: "x64-mingw-ucrt"
48
52
  - os: windows-latest
49
53
  ruby: "3.1.7-1"
50
54
  platform: "x86-mingw32"
51
55
  - os: windows-latest
52
- ruby: "2.7"
56
+ ruby: "3.0"
53
57
  platform: "x64-mingw32"
54
58
 
55
59
  runs-on: ${{ matrix.os }}
@@ -77,7 +81,6 @@ jobs:
77
81
  name: binary-gem-${{ matrix.platform }}
78
82
 
79
83
  - run: echo $env:PATH
80
- - run: gem update --system 3.3.26
81
84
  - run: bundle install
82
85
  - run: gem install --local fxruby-*${{ matrix.platform }}.gem --verbose
83
86
  - name: Run specs
@@ -17,13 +17,13 @@ jobs:
17
17
  - os: windows
18
18
  ruby: "head"
19
19
  - os: windows
20
- ruby: "2.7"
20
+ ruby: "3.2"
21
21
  - os: ubuntu
22
22
  ruby: "head"
23
23
  - os: ubuntu
24
- ruby: "3.4"
24
+ ruby: "4.0"
25
25
  - os: ubuntu
26
- ruby: "2.7"
26
+ ruby: "3.0"
27
27
  - os: macos
28
28
  ruby: "head"
29
29
 
@@ -37,7 +37,7 @@ jobs:
37
37
  ruby-version: ${{ matrix.ruby }} # passed to ruby/setup-ruby
38
38
  apt-get: "xpra xserver-xorg-video-dummy libxrandr-dev libfox-1.6-dev swig" # Ubuntu
39
39
  brew: "fox swig xquartz" # macOS
40
- mingw: "fox swig gcc" # Windows mingw / mswin /ucrt
40
+ mingw: "fox swig" # Windows mingw / mswin /ucrt
41
41
 
42
42
  - name: Print tool versions
43
43
  run: |
@@ -46,6 +46,11 @@ jobs:
46
46
  swig -version
47
47
  gem env
48
48
 
49
+ - name: MacOS Start XQuartz
50
+ if: matrix.os == 'macos'
51
+ run: |
52
+ open -a XQuartz
53
+
49
54
  - name: Bundle install
50
55
  run: bundle install
51
56
 
@@ -66,13 +71,6 @@ jobs:
66
71
  xpra --xvfb="Xorg +extension GLX -config `pwd`/test/dummy.xorg.conf -logfile ${HOME}/.xpra/xorg.log" start :9
67
72
  echo "DISPLAY=:9" >> $GITHUB_ENV
68
73
 
69
- - name: MacOS Start XQuartz
70
- if: matrix.os == 'macos'
71
- run: |
72
- open -a XQuartz
73
- # wait some seconds until XQuartz has started
74
- sleep 10
75
-
76
74
  - name: Run tests
77
75
  run: bundle exec rake test
78
76
 
data/Gemfile CHANGED
@@ -1,7 +1,7 @@
1
1
  source 'https://rubygems.org'
2
2
 
3
- # Specify your gem's runtime dependencies in fxruby.gemspec
4
- gemspec
3
+ # No fxruby gemspec, since "bundle package" fails on bundler-2.7+, if the extension isn't built
4
+ # gemspec
5
5
 
6
6
  # For some reason this is required in addition to the gemspec
7
7
  # when 'bundle config force_ruby_platform true' is active:
@@ -9,9 +9,9 @@ gem 'mini_portile2'
9
9
 
10
10
  group :development do
11
11
  gem 'rake-compiler', '~> 1.0'
12
- gem 'rake-compiler-dock', '~> 1.9.1'
12
+ gem 'rake-compiler-dock', '~> 1.11.0'
13
13
  gem 'yard', '~> 0.8'
14
- gem "bundler", ">= 1.12", "< 3.a"
14
+ gem "bundler", ">= 1.12", "< 5.a"
15
15
  gem "rake", "~> 13.0"
16
16
  end
17
17
 
data/History.md CHANGED
@@ -1,3 +1,11 @@
1
+ ## 1.6.50 / 2026-01-02
2
+
3
+ * Add binary gem support for ruby-4.0.
4
+ * Drop support for ruby older than 3.0.
5
+ * Fix breaking some other gems (date_core.so) by shipped DLLs. #84
6
+ * Update to libpng-1.6.53, libjpeg-turbo-3.1.3, libtiff-4.7.1 for Windows binary gems.
7
+ * Some documentation improvements.
8
+
1
9
  ## 1.6.49 / 2025-07-14
2
10
 
3
11
  * Add compatibility to SWIG-4.3. Type of "NULL pointer" error changed in swig 4.3.0. It was ArgumentError before and is NullReferenceError now. #81
data/Rakefile CHANGED
@@ -132,6 +132,30 @@ ext_task = Rake::ExtensionTask.new("fox16_c", gem_spec) do |ext|
132
132
 
133
133
  spec.files += dlls.map{|dll| "ports/#{gemplat}/bin/#{dll}" }
134
134
 
135
+ # Bind the external DLLs per manifest to our fox16_c.so ,
136
+ # so that they aren't used by any other extension.
137
+ # Otherwise version dependent incompatibilities can break other gems.
138
+ manif_fname = "ports/#{gemplat}/bin/fxruby-assembly.manifest"
139
+ File.binwrite manif_fname, <<~EOT
140
+ <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
141
+ <assembly xmlns="urn:schemas-microsoft-com:asm.v1" manifestVersion="1.0">
142
+ <assemblyIdentity type="win32" name="fxruby-assembly" version="1.0.0.0"></assemblyIdentity>
143
+
144
+ #{ dlls.map{|dll| %Q{<file name="#{dll}"/>} }.join }
145
+ </assembly>
146
+ EOT
147
+ spec.files += [manif_fname]
148
+
149
+ # Windows manifest files don't allow file paths but only file names.
150
+ # Therefore move our fox16_c.so into the bin directory
151
+ # and change to a ruby version dependent file name like "4_0_fox16_c.so".
152
+ exts, spec.files = spec.files.partition{|f| File.fnmatch("lib/?.?/fox16_c.so", f) }
153
+ spec.files += exts.map do |f|
154
+ new = "ports/#{gemplat}/bin/#{File.basename(File.dirname(f)).gsub(".","_")}_#{File.basename(f)}"
155
+ mv("tmp/#{gemplat}/stage/#{f}", new)
156
+ new
157
+ end
158
+
135
159
  unless ENV['FXRUBY_MINGW_DEBUG']
136
160
  dlls.each do |dll|
137
161
  task "ports/#{gemplat}/bin/#{dll}" do |t|
@@ -162,8 +186,9 @@ namespace :gem do
162
186
  RakeCompilerDock.sh <<-EOT, platform: plat
163
187
  sudo apt-get update &&
164
188
  sudo apt-get install -y yasm libtool m4 automake &&
165
- bundle --local --without=test &&
166
- rake native:#{plat} pkg/#{ext_task.gem_spec.full_name}-#{plat}.gem MAKE=\"nice make V=1 VERBOSE=1 -j `nproc`\" #{debug} RUBY_CC_VERSION=#{RakeCompilerDock.ruby_cc_version("~>2.7", "~>3.0")}
189
+ bundle config set without test &&
190
+ bundle install --local &&
191
+ rake native:#{plat} pkg/#{ext_task.gem_spec.full_name}-#{plat}.gem MAKE=\"nice make V=1 VERBOSE=1 -j `nproc`\" #{debug} RUBY_CC_VERSION=#{RakeCompilerDock.ruby_cc_version("~>4.0", "~>3.0")}
167
192
  EOT
168
193
  end
169
194
  end
data/appveyor.yml CHANGED
@@ -28,4 +28,4 @@ test_script:
28
28
  environment:
29
29
  matrix:
30
30
  - ruby_version: "head-x64"
31
- - ruby_version: "27"
31
+ - ruby_version: "32"
@@ -2010,4 +2010,18 @@ Init_fox16_c(void) {
2010
2010
 
2011
2011
  appSensitiveObjs=st_init_numtable();
2012
2012
  appSensitiveDCs=st_init_numtable();
2013
- }
2013
+ }
2014
+
2015
+ /* Define an additioal ruby version dependent init function.
2016
+ * It is used in the binary gem when loaded by
2017
+ * require "4_0_fox16_c"
2018
+ */
2019
+ #ifdef FXRUBY_INITFUNC
2020
+ extern "C" void
2021
+ #if defined _WIN32
2022
+ __declspec(dllexport)
2023
+ #endif
2024
+ FXRUBY_INITFUNC(void) {
2025
+ Init_fox16_c();
2026
+ }
2027
+ #endif
@@ -23,17 +23,17 @@ end
23
23
  LIBZ_VERSION = ENV['LIBZ_VERSION'] || '1.3.1'
24
24
  LIBZ_SOURCE_URI = "http://zlib.net/fossils/zlib-#{LIBZ_VERSION}.tar.gz"
25
25
 
26
- LIBPNG_VERSION = ENV['LIBPNG_VERSION'] || '1.6.50'
26
+ LIBPNG_VERSION = ENV['LIBPNG_VERSION'] || '1.6.53'
27
27
  # LIBPNG_SOURCE_URI = "http://prdownloads.sourceforge.net/libpng/libpng-#{LIBPNG_VERSION}.tar.gz"
28
28
  LIBPNG_SOURCE_URI = "https://netcologne.dl.sourceforge.net/project/libpng/libpng16/#{LIBPNG_VERSION}/libpng-#{LIBPNG_VERSION}.tar.xz"
29
29
 
30
30
  # LIBJPEG_VERSION = ENV['LIBJPEG_VERSION'] || '9b'
31
31
  # LIBJPEG_SOURCE_URI = "http://www.ijg.org/files/jpegsrc.v#{LIBJPEG_VERSION}.tar.gz"
32
32
 
33
- LIBJPEG_VERSION = ENV['LIBJPEG_VERSION'] || '3.1.1'
33
+ LIBJPEG_VERSION = ENV['LIBJPEG_VERSION'] || '3.1.3'
34
34
  LIBJPEG_SOURCE_URI = "https://github.com/libjpeg-turbo/libjpeg-turbo/releases/download/#{LIBJPEG_VERSION}/libjpeg-turbo-#{LIBJPEG_VERSION}.tar.gz"
35
35
 
36
- LIBTIFF_VERSION = ENV['LIBTIFF_VERSION'] || '4.7.0'
36
+ LIBTIFF_VERSION = ENV['LIBTIFF_VERSION'] || '4.7.1'
37
37
  LIBTIFF_SOURCE_URI = "http://download.osgeo.org/libtiff/tiff-#{LIBTIFF_VERSION}.tar.gz"
38
38
 
39
39
  LIBFOX_VERSION = ENV['LIBFOX_VERSION'] || '1.6.59'
@@ -240,11 +240,27 @@ def do_rake_compiler_setup
240
240
  FileUtils.cp `#{cmd}`.chomp, "#{libfox_recipe.path}/bin/", verbose: true
241
241
  end
242
242
 
243
+ # Compile a DLL manifest to be used in fox16_c.so
244
+ File.binwrite "fxruby_manifest.xml", <<~EOT
245
+ <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
246
+ <assembly xmlns="urn:schemas-microsoft-com:asm.v1" manifestVersion="1.0">
247
+ <dependency>
248
+ <dependentAssembly>
249
+ <assemblyIdentity version="1.0.0.0" type="win32" name="fxruby-assembly" />
250
+ </dependentAssembly>
251
+ </dependency>
252
+ </assembly>
253
+ EOT
254
+ File.binwrite "fxruby_manifest.rc", "2 24 fxruby_manifest.xml"
255
+ system "#{RbConfig::CONFIG["WINDRES"]} --input fxruby_manifest.rc --output fxruby_manifest.res --output-format=coff"
256
+
243
257
  CONFIG['CXX'] = "#{libfox_recipe.host}-g++" # CXX setting must be prefixed for cross build
244
258
  CONFIG['CC'] += "\nCXX=#{CONFIG['CXX']}" # Hack CXX into Makefile for cross compilation
245
259
  CONFIG['LDSHARED'].gsub!('gcc', 'g++') # ensure C++ linker is used, so that libstdc++ is linked static
246
- $LDFLAGS += " -s" # remove symbol table informations from shared lib
260
+ $LDFLAGS += " -s fxruby_manifest.res" # remove symbol table informations from shared lib and add manifest
247
261
  $libs = append_library($libs, "fxscintilla")
262
+ major_minor = RUBY_VERSION[ /^(\d+\.\d+)/ ].gsub(".","_")
263
+ $CPPFLAGS += " -DFXRUBY_INITFUNC=Init_#{major_minor}_fox16_c"
248
264
 
249
265
  elsif RUBY_PLATFORM =~ /mingw/
250
266
  $CFLAGS = $CFLAGS + " -I/usr/local/include"
data/fxruby.gemspec CHANGED
@@ -50,7 +50,7 @@ Gem::Specification.new do |spec|
50
50
  spec.require_paths = ["lib"]
51
51
  spec.extensions = ["ext/fox16_c/extconf.rb"]
52
52
  spec.metadata['msys2_mingw_dependencies'] = 'fox'
53
- spec.required_ruby_version = [">= 2.7", "< 4"]
53
+ spec.required_ruby_version = ">= 2.7"
54
54
 
55
55
  spec.add_runtime_dependency 'mini_portile2', '~> 2.1'
56
56
 
data/lib/fox16/version.rb CHANGED
@@ -1,5 +1,5 @@
1
1
  module Fox
2
2
  def Fox.fxrubyversion
3
- "1.6.49"
3
+ "1.6.50"
4
4
  end
5
5
  end
data/lib/fox16.rb CHANGED
@@ -6,24 +6,8 @@ rescue LoadError
6
6
  major_minor = RUBY_VERSION[ /^(\d+\.\d+)/ ] or
7
7
  raise "Oops, can't extract the major/minor version from #{RUBY_VERSION.dump}"
8
8
 
9
- add_dll_path = proc do |path, &block|
10
- begin
11
- require 'ruby_installer/runtime'
12
- RubyInstaller::Runtime.add_dll_directory(path, &block)
13
- rescue LoadError
14
- old_path = ENV['PATH']
15
- ENV['PATH'] = "#{path};#{old_path}"
16
- block.call
17
- ENV['PATH'] = old_path
18
- end
19
- end
20
-
21
9
  ruby_plat = RUBY_PLATFORM.gsub("i386", "x86")
22
- # Temporary add this directory for DLL search, so that bundled DLLs can be found.
23
- ports_bin = File.expand_path("../../ports/#{ruby_plat}/bin", __FILE__)
24
- add_dll_path.call(ports_bin) do
25
- require "#{major_minor}/fox16_c"
26
- end
10
+ require_relative "../ports/#{ruby_plat}/bin/#{major_minor.gsub(".","_")}_fox16_c"
27
11
  else
28
12
  raise
29
13
  end
@@ -80,7 +80,10 @@ module Fox
80
80
  #
81
81
  # Populate the image with new pixel data of the same size or of a new size
82
82
  #
83
- # Pixel data is copied and IMAGE_OWNED option is set.
83
+ # Pixel data is copied when IMAGE_OWNED option is set or when provided as Array.
84
+ # Pixel data is used without copying when IMAGE_OWNED isn't set and provided as String.
85
+ # In that case the string must be writable and receives modifications to the image.
86
+ #
84
87
  # If called with +width+ and +height+, the size of the serverside representation
85
88
  # of the image, if it exists, is adjusted but the contents are not updated yet.
86
89
  # This can be done by calling render().
@@ -15,7 +15,7 @@ class TC_FXBMPImage < Fox::TestCase
15
15
 
16
16
  def test_image_from_pixel_data
17
17
  img = FXBMPImage.new app
18
- img.setPixels "rgbaRGBA", 0, 1, 2
18
+ img.setPixels +"rgbaRGBA", 0, 1, 2
19
19
  bmp_data = FXMemoryStream.open(FXStreamSave, nil) do |outfile|
20
20
  img.savePixels(outfile)
21
21
  outfile.takeBuffer
data/test/TC_FXImage.rb CHANGED
@@ -76,14 +76,14 @@ class TC_FXImage < Fox::TestCase
76
76
 
77
77
  def test_setPixels_string
78
78
  img = FXImage.new(app, nil, 0, 2, 1)
79
- img.pixels = "rgbaRGBA"
79
+ img.pixels = +"rgbaRGBA"
80
80
  assert_equal(0, img.options)
81
81
  assert_equal("rgbaRGBA", img.pixel_string)
82
82
  end
83
83
 
84
84
  def test_dataPtr
85
85
  img = FXImage.new(app, nil, 0, 2, 1)
86
- img.pixels = "rgbaRGBA"
86
+ img.pixels = +"rgbaRGBA"
87
87
  assert_equal(0, img.options)
88
88
  assert_equal("rgbaRGBA", Fiddle::Pointer.new(img.dataPtr)[0, 8])
89
89
  end
@@ -121,7 +121,7 @@ class TC_FXImage < Fox::TestCase
121
121
  end
122
122
 
123
123
  def image_with_non_owned_data
124
- FXImage.new(app, "rgbaRGBA", 0, 1, 2)
124
+ FXImage.new(app, +"rgbaRGBA", 0, 1, 2)
125
125
  end
126
126
 
127
127
  def test_create_with_non_owned_data
@@ -135,7 +135,7 @@ class TC_FXImage < Fox::TestCase
135
135
  end
136
136
 
137
137
  def set_non_owned_data(img)
138
- img.setPixels("rgbaRGBA", 0, 2, 1)
138
+ img.setPixels(+"rgbaRGBA", 0, 2, 1)
139
139
  end
140
140
 
141
141
  def test_set_pixel_with_non_owned_data
data.tar.gz.sig CHANGED
Binary file
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: fxruby
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.6.49
4
+ version: 1.6.50
5
5
  platform: ruby
6
6
  authors:
7
7
  - Lyle Johnson
@@ -10,9 +10,9 @@ bindir: exe
10
10
  cert_chain:
11
11
  - |
12
12
  -----BEGIN CERTIFICATE-----
13
- MIIEBDCCAmygAwIBAgIBAzANBgkqhkiG9w0BAQsFADAoMSYwJAYDVQQDDB1sYXJz
14
- L0RDPWdyZWl6LXJlaW5zZG9yZi9EQz1kZTAeFw0yNDEyMjkxOTU2NTZaFw0yNTEy
15
- MjkxOTU2NTZaMCgxJjAkBgNVBAMMHWxhcnMvREM9Z3JlaXotcmVpbnNkb3JmL0RD
13
+ MIIEBDCCAmygAwIBAgIBBDANBgkqhkiG9w0BAQsFADAoMSYwJAYDVQQDDB1sYXJz
14
+ L0RDPWdyZWl6LXJlaW5zZG9yZi9EQz1kZTAeFw0yNTEyMjkyMDMyMzFaFw0yNjEy
15
+ MjkyMDMyMzFaMCgxJjAkBgNVBAMMHWxhcnMvREM9Z3JlaXotcmVpbnNkb3JmL0RD
16
16
  PWRlMIIBojANBgkqhkiG9w0BAQEFAAOCAY8AMIIBigKCAYEAwum6Y1KznfpzXOT/
17
17
  mZgJTBbxZuuZF49Fq3K0WA67YBzNlDv95qzSp7V/7Ek3NCcnT7G+2kSuhNo1FhdN
18
18
  eSDO/moYebZNAcu3iqLsuzuULXPLuoU0GsMnVMqV9DZPh7cQHE5EBZ7hlzDBK7k/
@@ -23,17 +23,17 @@ cert_chain:
23
23
  chQPnWX+N3Gj+jjYxqTFdwT7Mj3pv1VHa+aNUbqSPpvJeDyxRIuo9hvzDaBHb/Cg
24
24
  9qRVcm8a96n4t7y2lrX1oookY6bkBaxWOMtWlqIprq8JZXM9AgMBAAGjOTA3MAkG
25
25
  A1UdEwQCMAAwCwYDVR0PBAQDAgSwMB0GA1UdDgQWBBQ4h1tIyvdUWtMI739xMzTR
26
- 7EfMFzANBgkqhkiG9w0BAQsFAAOCAYEAoZZWzNV2XXaoSmvyamSSN+Wt/Ia+DNrU
27
- 2pc3kMEqykH6l1WiVPszr6HavQ//2I2UcSRSS5AGDdiSXcfyFmHtMBdtJHhTPcn7
28
- 4DLliB0szpvwG+ltGD8PI8eWkLaTQeFzs+0QCTavgKV+Zw56Q0J5zZvHHUMrLkUD
29
- qhwKjdTdkrRTn9Sqi0BrIRRZGTUDdrt8qoWm35aES5arKZzytgrRD/kXfFW2LCg0
30
- FzgTKibR4/3g8ph94kQLg/D2SMlVPkQ3ECi036mZxDC2n8V6u3rDkG5923wmrRZB
31
- J6cqz475Q8HYORQCB68OPzkWMfC7mBo3vpSsIqRoNs1FE4FJu4FGwZG8fBSrDC4H
32
- bZe+GtyS3e2SMjgT65zp35gLO9I7MquzYN9P6V2u1iBpTycchk5z9R1ghxzZSBT8
33
- DrkJ9tVlPQtJB0LqT0tvBap4upnwT1xYq721b5dwH6AF4Pi6iz/dc5vnq1/MH8bV
34
- 8VbbBzzeE7MsvgkP3sHlLmY8PtuyViJ8
26
+ 7EfMFzANBgkqhkiG9w0BAQsFAAOCAYEAUVIier9xybHmXNsj801xD+Q7Jz7wpRsf
27
+ fMHpV2sAzvYcAa7pn+mbu9nf7RUhe5hiaUv88Usk9nRUYYrjBOO5RuD+wYNowpcE
28
+ kxUiTAP/fgUBdW6hYUJy57CH3xUD6tj1Cg9hxdKy7jItZXbfhX+qPq2BwGaXz7gn
29
+ nhrALITRmpuPnlsccM94dgSArCInSo2SEc12h2oB6FAnFG1Lre3dmQamI5q1EKp0
30
+ Yafb2+cPbFcVYUdE50wf+cdeGDOsCGlAmo2OGqXWxTP2hIfyhsFoamD6UGufLoPG
31
+ Dh6tAEZIuEvLjq93qoNceUQn+xxiiIszjY5mkTu9rVY+/gh5PJzu9IHvyIqBpb2o
32
+ fdWDISWK+KSLCrqkFtKoliLDTZau73GcYCVOkjca+3cxqABKZ+M8r42Sq8JPxPiv
33
+ KyLQBzqPeLN9qRDD1bEFHIcgwdY/zQTs4mWRBSmBWa7w+k8nP8aSV1dN/fvhYwY3
34
+ HCQwtPaMYOznIOcc8shL4zLJpcl8uCqE
35
35
  -----END CERTIFICATE-----
36
- date: 2025-07-14 00:00:00.000000000 Z
36
+ date: 1980-01-02 00:00:00.000000000 Z
37
37
  dependencies:
38
38
  - !ruby/object:Gem::Dependency
39
39
  name: mini_portile2
@@ -1542,16 +1542,13 @@ required_ruby_version: !ruby/object:Gem::Requirement
1542
1542
  - - ">="
1543
1543
  - !ruby/object:Gem::Version
1544
1544
  version: '2.7'
1545
- - - "<"
1546
- - !ruby/object:Gem::Version
1547
- version: '4'
1548
1545
  required_rubygems_version: !ruby/object:Gem::Requirement
1549
1546
  requirements:
1550
1547
  - - ">="
1551
1548
  - !ruby/object:Gem::Version
1552
1549
  version: '0'
1553
1550
  requirements: []
1554
- rubygems_version: 3.6.2
1551
+ rubygems_version: 4.0.3
1555
1552
  specification_version: 4
1556
1553
  summary: FXRuby is the Ruby binding to the FOX GUI toolkit.
1557
1554
  test_files: []
metadata.gz.sig CHANGED
Binary file