unicode-confusable 1.7.0 → 1.9.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 +4 -4
- data/CHANGELOG.md +8 -0
- data/Gemfile.lock +8 -2
- data/MIT-LICENSE.txt +1 -1
- data/README.md +7 -5
- data/Rakefile +1 -1
- data/data/confusable.marshal.gz +0 -0
- data/lib/unicode/confusable/constants.rb +2 -2
- data/sig/unicode-confusable.rbs +14 -0
- metadata +5 -5
- data/.travis.yml +0 -20
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: fa72e29c29ddad3e5ec3ac90a097fba32d7ae67973516c64839840ff19545347
|
4
|
+
data.tar.gz: a4c7ebe6b954586a5b2fcdf9a372bfb078fec5c0a192668b5bf40f4f85ec4951
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: e9e7b018132a8deed7a5d79b1262f2fd9552a67fae2ffae39c9c7f4477a3e88f223c19d47bdbd7c12b70f8f76d1e8d0c9ae0b1dcf953ae1fb6fb802315a204bd
|
7
|
+
data.tar.gz: 9cdf8a1b69c4715896b3942be5d68831938a8ca80673a11b1e866f4620e49f15912e0f628c070a84ec8c9c0c6789f1fb4c97221e536b5e1af4ebbb89a9548e6e
|
data/CHANGELOG.md
CHANGED
data/Gemfile.lock
CHANGED
@@ -1,21 +1,27 @@
|
|
1
1
|
PATH
|
2
2
|
remote: .
|
3
3
|
specs:
|
4
|
-
unicode-confusable (1.
|
4
|
+
unicode-confusable (1.7.0)
|
5
5
|
|
6
6
|
GEM
|
7
7
|
remote: https://rubygems.org/
|
8
8
|
specs:
|
9
|
+
io-console (0.5.6)
|
10
|
+
irb (1.2.9)
|
11
|
+
reline (>= 0.1.5)
|
9
12
|
minitest (5.10.2)
|
10
13
|
rake (12.0.0)
|
14
|
+
reline (0.1.10)
|
15
|
+
io-console (~> 0.5)
|
11
16
|
|
12
17
|
PLATFORMS
|
13
18
|
ruby
|
14
19
|
|
15
20
|
DEPENDENCIES
|
21
|
+
irb
|
16
22
|
minitest
|
17
23
|
rake
|
18
24
|
unicode-confusable!
|
19
25
|
|
20
26
|
BUNDLED WITH
|
21
|
-
1.
|
27
|
+
2.1.4
|
data/MIT-LICENSE.txt
CHANGED
data/README.md
CHANGED
@@ -1,12 +1,14 @@
|
|
1
|
-
# Unicode::Confusable [![[version]](https://badge.fury.io/rb/unicode-confusable.svg)](https://badge.fury.io/rb/unicode-confusable) [![[
|
1
|
+
# Unicode::Confusable [![[version]](https://badge.fury.io/rb/unicode-confusable.svg)](https://badge.fury.io/rb/unicode-confusable) [![[ci]](https://github.com/janlelis/unicode-confusable/workflows/Test/badge.svg)](https://github.com/janlelis/unicode-confusable/actions?query=workflow%3ATest)
|
2
2
|
|
3
3
|
Compares two strings if they are visually confusable as described in [Unicode® Technical Standard #39](https://www.unicode.org/reports/tr39/#Confusable_Detection): Both strings get transformed into a skeleton format before comparing them. The skeleton is generated by normalizing the string ([NFD](http://unicode.org/reports/tr15/#Norm_Forms)), replacing [confusable characters](https://unicode.org/Public/security/12.1.0/confusables.txt), and normalizing the string again.
|
4
4
|
|
5
|
-
Unicode version: **
|
5
|
+
Unicode version: **15.0.0** (September 2022)
|
6
6
|
|
7
|
-
|
7
|
+
\* The Unicode normalization [depends on your Ruby version](https://idiosyncratic-ruby.com/73-unicode-version-mapping.html)
|
8
8
|
|
9
|
-
|
9
|
+
Supported Rubies: **3.1**, **3.0**, **2.7**
|
10
|
+
|
11
|
+
Old Rubies which might still work: **2.6**, **2.5**, **2.4**, **2.3**, **2.2**
|
10
12
|
|
11
13
|
## Usage
|
12
14
|
|
@@ -61,5 +63,5 @@ See [unicode-x](https://github.com/janlelis/unicode-x) for more Unicode related
|
|
61
63
|
|
62
64
|
## MIT License
|
63
65
|
|
64
|
-
- Copyright (C) 2016-
|
66
|
+
- Copyright (C) 2016-2022 Jan Lelis <https://janlelis.com>. Released under the MIT license.
|
65
67
|
- Unicode data: https://www.unicode.org/copyright.html#Exhibit1
|
data/Rakefile
CHANGED
data/data/confusable.marshal.gz
CHANGED
Binary file
|
@@ -2,8 +2,8 @@
|
|
2
2
|
|
3
3
|
module Unicode
|
4
4
|
module Confusable
|
5
|
-
VERSION = "1.
|
6
|
-
UNICODE_VERSION = "
|
5
|
+
VERSION = "1.9.0"
|
6
|
+
UNICODE_VERSION = "15.0.0"
|
7
7
|
DATA_DIRECTORY = File.expand_path(File.dirname(__FILE__) + "/../../../data/").freeze
|
8
8
|
INDEX_FILENAME = (DATA_DIRECTORY + "/confusable.marshal.gz").freeze
|
9
9
|
end
|
@@ -0,0 +1,14 @@
|
|
1
|
+
# Classes
|
2
|
+
module Unicode
|
3
|
+
module Confusable
|
4
|
+
VERSION: String
|
5
|
+
UNICODE_VERSION: String
|
6
|
+
DATA_DIRECTORY: String
|
7
|
+
INDEX_FILENAME: String
|
8
|
+
INDEX: Hash
|
9
|
+
|
10
|
+
def self.confusable?: (String string1, String string2) -> bool
|
11
|
+
def self.skeleton: (String string) -> String
|
12
|
+
def self.list: (String char, ?bool partial_mapping_allowed) -> Array
|
13
|
+
end
|
14
|
+
end
|
metadata
CHANGED
@@ -1,16 +1,16 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: unicode-confusable
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.
|
4
|
+
version: 1.9.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Jan Lelis
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date:
|
11
|
+
date: 2022-09-13 00:00:00.000000000 Z
|
12
12
|
dependencies: []
|
13
|
-
description: "[Unicode
|
13
|
+
description: "[Unicode 15.0.0] Compares two strings if they are visually confusable
|
14
14
|
as described in Unicode® Technical Standard #39: Both strings get transformed into
|
15
15
|
a skeleton format before comparing them. The skeleton is generated by normalizing
|
16
16
|
the string, replacing confusable characters, and then normalizing the string again."
|
@@ -21,7 +21,6 @@ extensions: []
|
|
21
21
|
extra_rdoc_files: []
|
22
22
|
files:
|
23
23
|
- ".gitignore"
|
24
|
-
- ".travis.yml"
|
25
24
|
- CHANGELOG.md
|
26
25
|
- CODE_OF_CONDUCT.md
|
27
26
|
- Gemfile
|
@@ -34,6 +33,7 @@ files:
|
|
34
33
|
- lib/unicode/confusable/constants.rb
|
35
34
|
- lib/unicode/confusable/index.rb
|
36
35
|
- lib/unicode/confusable/string_ext.rb
|
36
|
+
- sig/unicode-confusable.rbs
|
37
37
|
- spec/unicode_confusable_spec.rb
|
38
38
|
- unicode-confusable.gemspec
|
39
39
|
homepage: https://github.com/janlelis/unicode-confusable
|
@@ -55,7 +55,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
55
55
|
- !ruby/object:Gem::Version
|
56
56
|
version: '0'
|
57
57
|
requirements: []
|
58
|
-
rubygems_version: 3.
|
58
|
+
rubygems_version: 3.3.7
|
59
59
|
signing_key:
|
60
60
|
specification_version: 4
|
61
61
|
summary: Detect characters that look visually similar.
|
data/.travis.yml
DELETED
@@ -1,20 +0,0 @@
|
|
1
|
-
sudo: false
|
2
|
-
language: ruby
|
3
|
-
|
4
|
-
rvm:
|
5
|
-
- 2.7
|
6
|
-
- 2.6
|
7
|
-
- 2.5
|
8
|
-
- 2.4
|
9
|
-
- 2.3
|
10
|
-
- ruby-head
|
11
|
-
- jruby-9.2.9.0
|
12
|
-
- truffleruby
|
13
|
-
|
14
|
-
matrix:
|
15
|
-
allow_failures:
|
16
|
-
- rvm: 2.3
|
17
|
-
- rvm: ruby-head
|
18
|
-
- rvm: jruby-2.9.2.0
|
19
|
-
- rvm: truffleruby
|
20
|
-
# fast_finish: true
|