rgame 0.3.0 → 0.3.1

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: 54caa0772adc1eb3211edbd694540c196be0018d6482089447d727f5c871e19a
4
- data.tar.gz: 16b3d1de8baefc2579bbf5a89fb7b42041d174567b6c7059d5c967f2598621f5
3
+ metadata.gz: 80fa9ee53085a7b37d554bb91491624d281e26cc366164b381fa677a1834a1e6
4
+ data.tar.gz: e14d15b1cd58be28af62f699eb61bd570ea23035ccd00d1e6db0360056179740
5
5
  SHA512:
6
- metadata.gz: ab441100a4d86c34d93efed615b350a7d65ad819d3b7929e868e709c6a9790b9c78a956b9860632e62750f0880ca9656a1f7f6c98cc3df6c1b19f7d229e40919
7
- data.tar.gz: e98b7a96d21700bf0533f0155be99ffc9f480e35fda2375aaee4b8b2a7bb65b871d0a70a1f2486873b32e28a83aaa4abfc91a14991226153f57959b0d62237b4
6
+ metadata.gz: bf661cb9d7828cce921ec971a352a078513d2b61edf1eb9f149b8c8d90843bdf9a959ca4c33ad54cf3babd16847b12bc6ad07a5ecdfa629dfe4d295331e994d9
7
+ data.tar.gz: aa7a3f5d7447bcf96f7c6c48666392a3ecc9baf49c3f6ffc81c360087e0d7bb4185d20d0c5f50cc297ee632178f132ae83be11daf57ee4c966d534b3c49f92ec
data/CHANGELOG.md CHANGED
@@ -12,6 +12,14 @@ index, not the argument.
12
12
 
13
13
  ## [Unreleased]
14
14
 
15
+ ## [0.3.1] - 2026-09-15
16
+
17
+ ### Fixed
18
+
19
+ - `require "rgame"` failed under Bundler with `cannot load such file --
20
+ rexml/document`. The gem now declares `rexml` as a dependency, which Ruby 4.0
21
+ no longer loads without one.
22
+
15
23
  ## [0.3.0] - 2026-09-15
16
24
 
17
25
  ### Added
@@ -222,7 +230,8 @@ First release, and the first version that runs a game end to end.
222
230
  - **`RGame::Game`** — the entry point that wires the two halves together.
223
231
  - Examples: `14_asteroids`, `15_tiled_world`, `16_hello_world`.
224
232
 
225
- [Unreleased]: https://github.com/psuessenb/rgame/compare/v0.3.0...HEAD
233
+ [Unreleased]: https://github.com/psuessenb/rgame/compare/v0.3.1...HEAD
234
+ [0.3.1]: https://github.com/psuessenb/rgame/compare/v0.3.0...v0.3.1
226
235
  [0.3.0]: https://github.com/psuessenb/rgame/compare/v0.2.0...v0.3.0
227
236
  [0.2.0]: https://github.com/psuessenb/rgame/compare/v0.1.0...v0.2.0
228
237
  [0.1.0]: https://github.com/psuessenb/rgame/releases/tag/v0.1.0
data/README.md CHANGED
@@ -125,7 +125,7 @@ fixture and needs `libvorbisenc` to run.
125
125
  (Debian/Ubuntu). These are what `extconf.rb` compiles against.
126
126
  - **Bundler**, then `bundle install` for the dev/test gems (RSpec, RuboCop).
127
127
 
128
- Nothing else the engine has no runtime Ruby dependencies, and the `Gemfile` holds only development gems.
128
+ Nothing else. The engine's one runtime gem is `rexml`, which Bundler installs with it, and the `Gemfile` holds only development gems.
129
129
 
130
130
  All three platforms below are built and tested on every push by
131
131
  [CI](.github/workflows/ci.yml) - with that people have usually at home, so Apple Silicon and not Apple Intel, etc.
@@ -8,10 +8,10 @@ source 'https://rubygems.org'
8
8
  # replace this line with something like `ruby '~> <%= ruby_version.split('.').first(2).join('.') %>'`.
9
9
  ruby file: '.ruby-version'
10
10
 
11
- # The engine. It has no runtime dependencies of its own SDL2 and OpenGL are
12
- # system libraries rather than gems but installing it compiles two C
13
- # extensions, so a C compiler, `make`, `pkg-config` and the SDL2/OpenGL
14
- # development headers have to be present. See the rgame README.
11
+ # The engine. Its one gem dependency is rexml, which Bundler installs with it.
12
+ # SDL2 and OpenGL are system libraries rather than gems, and installing rgame
13
+ # compiles two C extensions, so a C compiler, `make`, `pkg-config` and the
14
+ # SDL2/OpenGL development headers have to be present. See the rgame README.
15
15
  gem 'rgame', '<%= rgame_requirement %>'
16
16
 
17
17
  group :development, :test do
@@ -1,7 +1,6 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  require 'rexml/document'
4
- require 'base64'
5
4
  require 'zlib'
6
5
 
7
6
  require_relative '../util'
@@ -52,7 +51,7 @@ module RGame
52
51
  layers = []
53
52
  above = []
54
53
  root.each_element('layer') do |layer_el|
55
- raw = Base64.decode64(layer_el.elements['data'].text.strip)
54
+ raw = layer_el.elements['data'].text.strip.unpack1('m')
56
55
  gids = Zlib::Inflate.inflate(raw).unpack('V*')
57
56
  gids.map! { |g| g & FLIP_MASK }
58
57
  layers << gids
data/lib/rgame/version.rb CHANGED
@@ -8,5 +8,5 @@
8
8
  # module here is enough; the extensions define `RGame` too, and doing so twice
9
9
  # is harmless.
10
10
  module RGame
11
- VERSION = '0.3.0'
11
+ VERSION = '0.3.1'
12
12
  end
metadata CHANGED
@@ -1,14 +1,28 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: rgame
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.3.0
4
+ version: 0.3.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Paul Süßenbach
8
8
  bindir: exe
9
9
  cert_chain: []
10
10
  date: 1980-01-02 00:00:00.000000000 Z
11
- dependencies: []
11
+ dependencies:
12
+ - !ruby/object:Gem::Dependency
13
+ name: rexml
14
+ requirement: !ruby/object:Gem::Requirement
15
+ requirements:
16
+ - - "~>"
17
+ - !ruby/object:Gem::Version
18
+ version: '3.4'
19
+ type: :runtime
20
+ prerelease: false
21
+ version_requirements: !ruby/object:Gem::Requirement
22
+ requirements:
23
+ - - "~>"
24
+ - !ruby/object:Gem::Version
25
+ version: '3.4'
12
26
  description: |
13
27
  RGame is a small 2D game engine for Ruby, written in Ruby and C. It's build
14
28
  on top of SDL2, OpenGL and miniaudio. It's built with testability and