uri-idna 0.2.1 → 0.2.2
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/CHANGELOG.md +8 -2
- data/lib/uri/idna/base_processing.rb +12 -6
- data/lib/uri/idna/data/bidi_classes.rb +1973 -0
- data/lib/uri/idna/data/codepoint_classes.rb +1226 -0
- data/lib/uri/idna/data/joining_types.rb +839 -0
- data/lib/uri/idna/data/leading_combiners.rb +321 -0
- data/lib/uri/idna/data/scripts.rb +108 -0
- data/lib/uri/idna/data/unicode_version.rb +10 -0
- data/lib/uri/idna/data/uts46.rb +8459 -8179
- data/lib/uri/idna/data/virama_combining_classes.rb +67 -0
- data/lib/uri/idna/idna2008/processing.rb +13 -28
- data/lib/uri/idna/punycode.rb +11 -9
- data/lib/uri/idna/uts46/mapping.rb +39 -37
- data/lib/uri/idna/uts46/processing.rb +14 -15
- data/lib/uri/idna/validation/bidi.rb +34 -52
- data/lib/uri/idna/validation/contextj.rb +62 -0
- data/lib/uri/idna/validation/contexto.rb +61 -0
- data/lib/uri/idna/validation/idna_permitted.rb +30 -0
- data/lib/uri/idna/validation/label.rb +1 -14
- data/lib/uri/idna/validation/leading_combining.rb +23 -0
- data/lib/uri/idna/version.rb +1 -1
- metadata +15 -7
- data/lib/uri/idna/data/idna.rb +0 -4697
- data/lib/uri/idna/intranges.rb +0 -57
- data/lib/uri/idna/validation/codepoint.rb +0 -128
@@ -0,0 +1,23 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
require_relative "../data/leading_combiners"
|
4
|
+
|
5
|
+
module URI
|
6
|
+
module IDNA
|
7
|
+
module Validation
|
8
|
+
# 4.2.3.2. Leading Combining Marks
|
9
|
+
# https://datatracker.ietf.org/doc/html/rfc5891#section-4.2.3.2
|
10
|
+
module LeadingCombining
|
11
|
+
class << self
|
12
|
+
LEADING_COMBINERS_REGEX = Regexp.new(LEADING_COMBINERS).freeze
|
13
|
+
|
14
|
+
def call(label)
|
15
|
+
return unless label[0].match?(LEADING_COMBINERS_REGEX)
|
16
|
+
|
17
|
+
raise Error, "Label begins with an illegal combining character"
|
18
|
+
end
|
19
|
+
end
|
20
|
+
end
|
21
|
+
end
|
22
|
+
end
|
23
|
+
end
|
data/lib/uri/idna/version.rb
CHANGED
metadata
CHANGED
@@ -1,18 +1,18 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: uri-idna
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.2.
|
4
|
+
version: 0.2.2
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Svyatoslav Kryukov
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2023-11-
|
11
|
+
date: 2023-11-25 00:00:00.000000000 Z
|
12
12
|
dependencies: []
|
13
13
|
description: Internationalized Domain Names in Applications (IDNA)
|
14
14
|
email:
|
15
|
-
-
|
15
|
+
- me@skryukov.dev
|
16
16
|
executables: []
|
17
17
|
extensions: []
|
18
18
|
extra_rdoc_files: []
|
@@ -23,18 +23,26 @@ files:
|
|
23
23
|
- lib/uri-idna.rb
|
24
24
|
- lib/uri/idna.rb
|
25
25
|
- lib/uri/idna/base_processing.rb
|
26
|
-
- lib/uri/idna/data/
|
26
|
+
- lib/uri/idna/data/bidi_classes.rb
|
27
|
+
- lib/uri/idna/data/codepoint_classes.rb
|
28
|
+
- lib/uri/idna/data/joining_types.rb
|
29
|
+
- lib/uri/idna/data/leading_combiners.rb
|
30
|
+
- lib/uri/idna/data/scripts.rb
|
31
|
+
- lib/uri/idna/data/unicode_version.rb
|
27
32
|
- lib/uri/idna/data/uts46.rb
|
33
|
+
- lib/uri/idna/data/virama_combining_classes.rb
|
28
34
|
- lib/uri/idna/idna2008/options.rb
|
29
35
|
- lib/uri/idna/idna2008/processing.rb
|
30
|
-
- lib/uri/idna/intranges.rb
|
31
36
|
- lib/uri/idna/punycode.rb
|
32
37
|
- lib/uri/idna/uts46/mapping.rb
|
33
38
|
- lib/uri/idna/uts46/options.rb
|
34
39
|
- lib/uri/idna/uts46/processing.rb
|
35
40
|
- lib/uri/idna/validation/bidi.rb
|
36
|
-
- lib/uri/idna/validation/
|
41
|
+
- lib/uri/idna/validation/contextj.rb
|
42
|
+
- lib/uri/idna/validation/contexto.rb
|
43
|
+
- lib/uri/idna/validation/idna_permitted.rb
|
37
44
|
- lib/uri/idna/validation/label.rb
|
45
|
+
- lib/uri/idna/validation/leading_combining.rb
|
38
46
|
- lib/uri/idna/version.rb
|
39
47
|
- lib/uri/idna/whatwg/processing.rb
|
40
48
|
homepage: https://github.com/skryukov/uri-idna
|
@@ -65,5 +73,5 @@ requirements: []
|
|
65
73
|
rubygems_version: 3.3.7
|
66
74
|
signing_key:
|
67
75
|
specification_version: 4
|
68
|
-
summary:
|
76
|
+
summary: Internationalized Domain Names for Ruby (IDNA2008, UTS46 and WHATWG)
|
69
77
|
test_files: []
|