unibits 2.12.0 → 2.13.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: 4fc36d553807a114d848c364bbbe6d6b2c98ee8dbae9a04a76e9f359e8434f2f
4
- data.tar.gz: d918891e8f22eea850b78707687c616622785f9e83c8b9b01e0c40c937136eeb
3
+ metadata.gz: 473163585b076cb4ea2a5fd50ce13723c324bf600d888eadfbf98d6b33d0df59
4
+ data.tar.gz: 3399d0034693cf8612637cb3cb18fb19906694567484564febb2843d82a30b88
5
5
  SHA512:
6
- metadata.gz: a63766eb2951379142a25aec27396f4a86273eae4ba8433ba01f420aaec8a728119a388329c29b437eb36525c5cff2d653a78246a9cec7f3b31c5a483802bd99
7
- data.tar.gz: 568a6199e8fbb8023379bdd496c4ea8730f561e65dde0319b8fa275576a4fbd19577116356bdf1d4039f09ed2fe8b6ada5ccba062c652a8b501e743f03f43762
6
+ metadata.gz: de9128f91eddf801c527a6cf80d42d8b374a9fa43fec54635186ba5d4ea6f3ce5e5296992912166a5a6d1e4cf0df60f5501b548e0352eabdd1a321ca4ddb3340
7
+ data.tar.gz: 687643a58c808f1d4e69cd04d6fa842fac348fddacf1152cc91fd42f73abf15521fed66b9128f59202a5f1e7557b264b6a49d2f473bd5bcee1cf653d13c16480
data/CHANGELOG.md CHANGED
@@ -1,5 +1,9 @@
1
1
  ## CHANGELOG
2
2
 
3
+ ### 2.13.0
4
+
5
+ * Unicode 16
6
+
3
7
  ### 2.12.0
4
8
 
5
9
  * Unicode 15.1
data/Gemfile.lock CHANGED
@@ -1,79 +1,83 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- unibits (2.6.0)
5
- characteristics (>= 0.8)
4
+ unibits (2.13.0)
5
+ characteristics (~> 1.7)
6
6
  paint (>= 0.9, < 3.0)
7
- rationalist (~> 2.0)
8
- symbolify (~> 1.3)
9
- unicode-display_width (~> 1.3)
7
+ rationalist (~> 2.0, >= 2.0.1)
8
+ symbolify (~> 1.4)
9
+ unicode-display_width (~> 2.6)
10
10
 
11
11
  GEM
12
12
  remote: https://rubygems.org/
13
13
  specs:
14
- binding.repl (3.0.0)
15
14
  cd (1.0.1)
16
- characteristics (0.8.0)
17
- unicode-categories (~> 1.2)
18
- clipboard (1.1.1)
19
- code (0.9.1)
15
+ characteristics (1.7.0)
16
+ unicode-categories (~> 1.10)
17
+ clipboard (1.4.1)
18
+ code (0.9.4)
20
19
  coderay (~> 1.1)
21
- method_source (~> 0.8, >= 0.8.2)
20
+ method_source (>= 0.9, < 2.0)
22
21
  coderay (1.1.1)
23
- debugging (1.1.1)
24
- binding.repl (~> 3.0)
22
+ core_docs (0.9.11)
23
+ yard (~> 0.9.11)
24
+ debugging (2.1.0)
25
25
  paint (>= 0.9, < 3.0)
26
- every_day_irb (2.0.0)
26
+ every_day_irb (2.2.0)
27
27
  cd (~> 1.0)
28
- fancy_irb (1.1.0)
28
+ fancy_irb (1.4.3)
29
29
  paint (>= 0.9, < 3.0)
30
- unicode-display_width (~> 1.1)
30
+ unicode-display_width (>= 1.1)
31
31
  ffi (1.9.18)
32
32
  ffi (1.9.18-java)
33
33
  hirb (0.7.3)
34
- instance (0.2.0)
35
34
  interactive_editor (0.0.10)
36
35
  spoon (>= 0.0.1)
37
- irbtools (2.1.0)
38
- binding.repl (~> 3.0)
39
- clipboard (~> 1.1)
40
- code (~> 0.9)
36
+ io-console (0.7.2)
37
+ io-console (0.7.2-java)
38
+ irb (1.6.4)
39
+ reline (>= 0.3.0)
40
+ irbtools (4.0.1)
41
+ clipboard (~> 1.3)
42
+ code (>= 0.9.4, < 2.0)
41
43
  coderay (~> 1.1)
42
- debugging (~> 1.1)
43
- every_day_irb (~> 2.0)
44
- fancy_irb (~> 1.1)
44
+ core_docs (~> 0.9.9)
45
+ debugging (~> 2.1)
46
+ every_day_irb (~> 2.2)
47
+ fancy_irb (~> 1.2, >= 1.2.1)
45
48
  hirb (~> 0.7, >= 0.7.3)
46
- instance (~> 0.2)
47
49
  interactive_editor (~> 0.0, >= 0.0.10)
48
- method_locator (~> 0.0, >= 0.0.4)
49
- methodfinder (~> 2.0)
50
- ori (~> 0.1.0)
51
- os (~> 1.0)
50
+ irb (~> 1.6.2)
51
+ looksee (~> 5.0)
52
+ methodfinder (~> 2.2, >= 2.2.5)
53
+ object_shadow (~> 1.1)
54
+ os (~> 1.1, >= 1.1.4)
52
55
  paint (>= 0.9, < 3.0)
53
- ruby_engine (~> 1.0)
54
- ruby_info (~> 1.0)
56
+ ruby_engine (~> 2.0)
55
57
  ruby_version (~> 1.0)
56
- wirb (~> 2.0)
57
- method_locator (0.0.4)
58
- method_source (0.8.2)
59
- methodfinder (2.1.0)
58
+ wirb (~> 2.0, >= 2.2.1)
59
+ looksee (5.0.0)
60
+ method_source (1.1.0)
61
+ methodfinder (2.2.5)
60
62
  minitest (5.10.2)
61
- ori (0.1.0)
62
- os (1.0.0)
63
+ object_shadow (1.1.1)
64
+ os (1.1.4)
63
65
  paint (2.0.0)
64
- rake (12.0.0)
65
- rationalist (2.0.0)
66
- ruby_engine (1.0.1)
67
- ruby_info (1.0.1)
66
+ rake (13.2.1)
67
+ rationalist (2.0.1)
68
+ reline (0.5.10)
69
+ io-console (~> 0.5)
70
+ ruby_engine (2.0.3)
68
71
  ruby_version (1.0.1)
69
72
  spoon (0.0.6)
70
73
  ffi
71
- symbolify (1.3.0)
72
- characteristics (~> 0.8)
73
- unicode-categories (1.2.0)
74
- unicode-display_width (1.3.0)
75
- wirb (2.1.1)
74
+ symbolify (1.4.1)
75
+ characteristics (>= 0.8, < 2.0)
76
+ unicode-categories (1.10.0)
77
+ unicode-display_width (2.6.0)
78
+ wirb (2.2.2)
76
79
  paint (>= 0.9, < 3.0)
80
+ yard (0.9.37)
77
81
 
78
82
  PLATFORMS
79
83
  java
@@ -86,4 +90,4 @@ DEPENDENCIES
86
90
  unibits!
87
91
 
88
92
  BUNDLED WITH
89
- 1.14.6
93
+ 2.5.18
data/MIT-LICENSE.txt CHANGED
@@ -1,4 +1,4 @@
1
- Copyright (c) 2017-2023 Jan Lelis, https://janlelis.com
1
+ Copyright (c) 2017-2024 Jan Lelis, https://janlelis.com
2
2
 
3
3
  Permission is hereby granted, free of charge, to any person obtaining
4
4
  a copy of this software and associated documentation files (the
data/README.md CHANGED
@@ -130,4 +130,4 @@ Related gems
130
130
 
131
131
  Lots of thanks to @damienklinnert for the motivation and inspiration required to build this! 🎆
132
132
 
133
- Copyright (C) 2017-2023 Jan Lelis <https://janlelis.com>. Released under the MIT license.
133
+ Copyright (C) 2017-2024 Jan Lelis <https://janlelis.com>. Released under the MIT license.
@@ -1,6 +1,6 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module Unibits
4
- VERSION = "2.12.0"
5
- UNICODE_VERSION = "15.1.0"
4
+ VERSION = "2.13.0"
5
+ UNICODE_VERSION = "16.0.0"
6
6
  end
data/spec/unibits_spec.rb CHANGED
@@ -213,20 +213,21 @@ describe Unibits do
213
213
  end
214
214
 
215
215
  describe "invalid UTF-16 encodings" do
216
- it "- incomplete number of bytes (1/2)" do
217
- string = "a".b.force_encoding("UTF-16LE")
218
- result = Paint.unpaint(Unibits.visualize(string))
219
- result.must_match "incompl."
220
- result.must_match ""
216
+ unless RUBY_ENGINE === "truffleruby"
217
+ it "- incomplete number of bytes (1/2)" do
218
+ string = "a".b.force_encoding("UTF-16LE")
219
+ result = Paint.unpaint(Unibits.visualize(string))
220
+ result.must_match "incompl."
221
+ result.must_match "�"
222
+ end
223
+
224
+ it "- incomplete number of bytes (2/2)" do
225
+ string = "🌫".b[0..-2].force_encoding("UTF-16LE")
226
+ result = Paint.unpaint(Unibits.visualize(string))
227
+ result.must_match "incompl."
228
+ result.must_match "�"
229
+ end
221
230
  end
222
-
223
- it "- incomplete number of bytes (2/2)" do
224
- string = "🌫".b[0..-2].force_encoding("UTF-16LE")
225
- result = Paint.unpaint(Unibits.visualize(string))
226
- result.must_match "incompl."
227
- result.must_match "�"
228
- end
229
-
230
231
  it "- only lower half surrogate" do
231
232
  string = "\x3C\xD8\x2Ba".force_encoding("UTF-16LE")
232
233
  result = Paint.unpaint(Unibits.visualize(string))
@@ -245,25 +246,27 @@ describe Unibits do
245
246
  describe "invalid UTF-32 encodings" do
246
247
  # please note, currently, too large codepoints and encoded utf16 surrogates are treated as valid encodings
247
248
 
248
- it "- incomplete number of bytes (1/3)" do
249
- string = "a".b.force_encoding("UTF-32LE")
250
- result = Paint.unpaint(Unibits.visualize(string))
251
- result.must_match "incompl."
252
- result.must_match ""
253
- end
254
-
255
- it "- incomplete number of bytes (2/3)" do
256
- string = "🌫".b[0..-2].force_encoding("UTF-32LE")
257
- result = Paint.unpaint(Unibits.visualize(string))
258
- result.must_match "incompl."
259
- result.must_match ""
260
- end
261
-
262
- it "- incomplete number of bytes (3/3)" do
263
- string = "🌫".b[0..-2].force_encoding("UTF-32LE")
264
- result = Paint.unpaint(Unibits.visualize(string))
265
- result.must_match "incompl."
266
- result.must_match ""
249
+ unless RUBY_ENGINE === "truffleruby"
250
+ it "- incomplete number of bytes (1/3)" do
251
+ string = "a".b.force_encoding("UTF-32LE")
252
+ result = Paint.unpaint(Unibits.visualize(string))
253
+ result.must_match "incompl."
254
+ result.must_match "�"
255
+ end
256
+
257
+ it "- incomplete number of bytes (2/3)" do
258
+ string = "🌫".b[0..-2].force_encoding("UTF-32LE")
259
+ result = Paint.unpaint(Unibits.visualize(string))
260
+ result.must_match "incompl."
261
+ result.must_match "�"
262
+ end
263
+
264
+ it "- incomplete number of bytes (3/3)" do
265
+ string = "🌫".b[0..-2].force_encoding("UTF-32LE")
266
+ result = Paint.unpaint(Unibits.visualize(string))
267
+ result.must_match "incompl."
268
+ result.must_match "�"
269
+ end
267
270
  end
268
271
 
269
272
  it "- too large codepoint (1/2)" do
data/unibits.gemspec CHANGED
@@ -19,9 +19,9 @@ Gem::Specification.new do |gem|
19
19
  gem.metadata = { "rubygems_mfa_required" => "true" }
20
20
 
21
21
  gem.add_dependency 'paint', '>= 0.9', '< 3.0'
22
- gem.add_dependency 'unicode-display_width', '~> 2.5'
22
+ gem.add_dependency 'unicode-display_width', '~> 2.6'
23
23
  gem.add_dependency 'symbolify', '~> 1.4'
24
- gem.add_dependency 'characteristics', '~> 1.6'
24
+ gem.add_dependency 'characteristics', '~> 1.7'
25
25
  gem.add_dependency 'rationalist', '~> 2.0', '>= 2.0.1'
26
26
 
27
27
  gem.required_ruby_version = ">= 2.0"
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: unibits
3
3
  version: !ruby/object:Gem::Version
4
- version: 2.12.0
4
+ version: 2.13.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Jan Lelis
8
- autorequire:
8
+ autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2023-10-01 00:00:00.000000000 Z
11
+ date: 2024-09-13 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: paint
@@ -36,14 +36,14 @@ dependencies:
36
36
  requirements:
37
37
  - - "~>"
38
38
  - !ruby/object:Gem::Version
39
- version: '2.5'
39
+ version: '2.6'
40
40
  type: :runtime
41
41
  prerelease: false
42
42
  version_requirements: !ruby/object:Gem::Requirement
43
43
  requirements:
44
44
  - - "~>"
45
45
  - !ruby/object:Gem::Version
46
- version: '2.5'
46
+ version: '2.6'
47
47
  - !ruby/object:Gem::Dependency
48
48
  name: symbolify
49
49
  requirement: !ruby/object:Gem::Requirement
@@ -64,14 +64,14 @@ dependencies:
64
64
  requirements:
65
65
  - - "~>"
66
66
  - !ruby/object:Gem::Version
67
- version: '1.6'
67
+ version: '1.7'
68
68
  type: :runtime
69
69
  prerelease: false
70
70
  version_requirements: !ruby/object:Gem::Requirement
71
71
  requirements:
72
72
  - - "~>"
73
73
  - !ruby/object:Gem::Version
74
- version: '1.6'
74
+ version: '1.7'
75
75
  - !ruby/object:Gem::Dependency
76
76
  name: rationalist
77
77
  requirement: !ruby/object:Gem::Requirement
@@ -121,7 +121,7 @@ licenses:
121
121
  - MIT
122
122
  metadata:
123
123
  rubygems_mfa_required: 'true'
124
- post_install_message:
124
+ post_install_message:
125
125
  rdoc_options: []
126
126
  require_paths:
127
127
  - lib
@@ -136,8 +136,8 @@ required_rubygems_version: !ruby/object:Gem::Requirement
136
136
  - !ruby/object:Gem::Version
137
137
  version: '0'
138
138
  requirements: []
139
- rubygems_version: 3.4.4
140
- signing_key:
139
+ rubygems_version: 3.5.9
140
+ signing_key:
141
141
  specification_version: 4
142
142
  summary: Visualizes encodings
143
143
  test_files: