ox 2.14.22 → 2.14.23

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: c5ea7796d81dd5eeab479adb5adcc99a9ee3d9833d3e530beb632aaaf6d0f0c3
4
- data.tar.gz: 1610339dd1e860bcbaafa2fbdd96622cac9454e825fba6e790ed2c3ae55e77c0
3
+ metadata.gz: e074f178c4058fb2730b3472d9ba87a2f2b6491de903f139f1d5ec4f4fc68145
4
+ data.tar.gz: a3ebe7df1b9b582b9d930530af72c4907caad822a3f67f52e55d0ef9647e3685
5
5
  SHA512:
6
- metadata.gz: e508b4efc21f5518962b7ef5145a9930f77fab6da2b5e45b3ea9ab414e373f905464a12b42d30e3bb6e140a4e4d151e0b40b918849b26c2ba0b0e2ae81f12a75
7
- data.tar.gz: 339917575070ef9e6db27f42763d1c28f485ca3db33d28d74627d32cdaaba8417d3c5c4d0e9298d0c8a6a34e80e48d2fff970dbe0fad9d94e4371608f9a76fb1
6
+ metadata.gz: faafbda1d85eb0a6ce1ed406fcdd666ba0c4325356080a992f35f1f7979911365e5845e963934aea970af2cfe8765c4d37c044b624a3a3dbfe06245d17d1f333
7
+ data.tar.gz: 8a712e6a78fbd9c60f0a209c2bc9b52c00f2f2ef31b066685bb9115b5d81a6ef296e5b8aa44b4060a0a9f5c8e95fd5a54eab7ca8daae09d3b7746a243b098237
data/CHANGELOG.md CHANGED
@@ -2,6 +2,12 @@
2
2
 
3
3
  All changes to the Ox gem are documented here. Releases follow semantic versioning.
4
4
 
5
+ ## [2.14.23] - 2025-05-27
6
+
7
+ ### Changed
8
+
9
+ - Comments are no longer space padded to be similar with other XML writers.
10
+
5
11
  ## [2.14.22] - 2025-02-11
6
12
 
7
13
  ### Fixed
data/ext/ox/dump.c CHANGED
@@ -1080,6 +1080,9 @@ static void dump_gen_instruct(VALUE obj, int depth, Out out) {
1080
1080
  *out->cur++ = '?';
1081
1081
  fill_value(out, name, nlen);
1082
1082
  if (0 != content) {
1083
+ if (' ' != *content) {
1084
+ dump_value(out, " ", 1);
1085
+ }
1083
1086
  fill_value(out, content, clen);
1084
1087
  } else if (Qnil != attrs) {
1085
1088
  rb_hash_foreach(attrs, dump_gen_attr, (VALUE)out);
@@ -1112,7 +1115,7 @@ static int dump_gen_nodes(VALUE obj, int depth, Out out) {
1112
1115
  dump_str_value(out, StringValuePtr(*(VALUE *)np), RSTRING_LEN(*np), xml_element_chars);
1113
1116
  indent_needed = (1 == cnt) ? 0 : 1;
1114
1117
  } else if (ox_comment_clas == clas) {
1115
- dump_gen_val_node(*np, d2, "<!-- ", 5, " -->", 4, out);
1118
+ dump_gen_val_node(*np, d2, "<!--", 4, "-->", 3, out);
1116
1119
  } else if (ox_raw_clas == clas) {
1117
1120
  dump_gen_val_node(*np, d2, "", 0, "", 0, out);
1118
1121
  } else if (ox_cdata_clas == clas) {
@@ -1210,6 +1213,14 @@ static void dump_obj_to_xml(VALUE obj, Options copts, Out out) {
1210
1213
  dump_gen_doc(obj, -1, out);
1211
1214
  } else if (ox_element_clas == clas) {
1212
1215
  dump_gen_element(obj, 0, out);
1216
+ } else if (ox_cdata_clas == clas) {
1217
+ dump_gen_val_node(obj, 0, "<![CDATA[", 9, "]]>", 3, out);
1218
+ } else if (ox_instruct_clas == clas) {
1219
+ dump_gen_instruct(obj, 0, out);
1220
+ } else if (ox_comment_clas == clas) {
1221
+ dump_gen_val_node(obj, 0, "<!--", 4, "-->", 3, out);
1222
+ } else if (ox_doctype_clas == clas) {
1223
+ dump_gen_val_node(obj, 0, "<!DOCTYPE ", 10, ">", 1, out);
1213
1224
  } else {
1214
1225
  out->w_start = dump_start;
1215
1226
  out->w_end = dump_end;
data/lib/ox/element.rb CHANGED
@@ -278,7 +278,7 @@ module Ox
278
278
 
279
279
  i += 1
280
280
  qual = step[i..i] # step[i] would be better but some rubies (jruby, ree, rbx) take that as a Fixnum.
281
- if '0' <= qual and qual <= '9'
281
+ if qual.between?('0', '9')
282
282
  qual = '+'
283
283
  else
284
284
  i += 1
@@ -359,7 +359,7 @@ module Ox
359
359
 
360
360
  i += 1
361
361
  qual = step[i..i] # step[i] would be better but some rubies (jruby, ree, rbx) take that as a Fixnum.
362
- if '0' <= qual and qual <= '9'
362
+ if qual.between?('0', '9')
363
363
  qual = '+'
364
364
  else
365
365
  i += 1
data/lib/ox/version.rb CHANGED
@@ -1,4 +1,4 @@
1
1
  module Ox
2
2
  # Current version of the module.
3
- VERSION = '2.14.22'
3
+ VERSION = '2.14.23'
4
4
  end
data/lib/ox.rb CHANGED
@@ -77,7 +77,7 @@ require 'ox/sax'
77
77
 
78
78
  # C extension
79
79
  begin
80
- require_relative 'ox.so'
80
+ require_relative "ox.#{RbConfig::CONFIG['DLEXT']}"
81
81
  rescue LoadError
82
82
  require 'ox/ox'
83
83
  end
metadata CHANGED
@@ -1,13 +1,13 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: ox
3
3
  version: !ruby/object:Gem::Version
4
- version: 2.14.22
4
+ version: 2.14.23
5
5
  platform: ruby
6
6
  authors:
7
7
  - Peter Ohler
8
8
  bindir: bin
9
9
  cert_chain: []
10
- date: 2025-02-11 00:00:00.000000000 Z
10
+ date: 2025-05-28 00:00:00.000000000 Z
11
11
  dependencies:
12
12
  - !ruby/object:Gem::Dependency
13
13
  name: bigdecimal