human_languages 0.8.0 → 0.9.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/.rubocop.yml +5 -1
- data/CHANGELOG.md +16 -0
- data/Gemfile +4 -4
- data/Gemfile.lock +22 -24
- data/README.adoc +7 -9
- data/data/iso-639-3-macrolanguages.tsv +460 -455
- data/data/iso-639-3.tsv +7922 -7917
- data/human_languages.gemspec +1 -1
- data/lib/languages/version.rb +1 -1
- data/lib/languages.rb +6 -2
- data/sig/languages.rbs +1 -1
- metadata +4 -4
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: bff47fe435ed7bd834eb62fea743188741b3b77c7c0847b60e9620e65ce1e49e
|
4
|
+
data.tar.gz: deb077773f5e00f446c1c5010298ffb6715769c12499ddc94e9591ef3a65a81b
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: '0994b809da4c6338d1d30075694de5765e16dc1ac9fe54b58ab4dc8d2bd353e31ff688f73b2f1c37b29cbe9b33daf00b30c0af21d64c78f34b010da701ca7463'
|
7
|
+
data.tar.gz: b1406a41f8f47242e7bb7ad86acb45d8959dd6dfc7f4752373931a628f37f81c25f07f6ac748e96f31cee7605d8c0b11d482ad801541340ad47ebb6075ede341
|
data/.rubocop.yml
CHANGED
@@ -4,7 +4,7 @@ require:
|
|
4
4
|
- rubocop-rake
|
5
5
|
|
6
6
|
AllCops:
|
7
|
-
TargetRubyVersion:
|
7
|
+
TargetRubyVersion: 3.1
|
8
8
|
NewCops: enable
|
9
9
|
|
10
10
|
Naming/VariableNumber:
|
@@ -12,3 +12,7 @@ Naming/VariableNumber:
|
|
12
12
|
|
13
13
|
Layout/LineLength:
|
14
14
|
Max: 120
|
15
|
+
|
16
|
+
Metrics/ClassLength:
|
17
|
+
Exclude:
|
18
|
+
- 'test/test_*'
|
data/CHANGELOG.md
CHANGED
@@ -7,6 +7,22 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
|
|
7
7
|
|
8
8
|
## [Unreleased]
|
9
9
|
|
10
|
+
### Changed
|
11
|
+
|
12
|
+
- Update ISO 639 data incorporating approved changes of [2023 series](https://iso639-3.sil.org/sites/iso639-3/files/reports/2023%20Summary%20of%20Outcomes.pdf), [2024 Quarter 2](https://iso639-3.sil.org/sites/iso639-3/files/reports/2024%20Quarter%202%20639%20MA%20newsletter.pdf), and [2024 Quater 3](https://iso639-3.sil.org/sites/iso639-3/files/reports/2024%20Quarter%203%20639%20MA%20newsletter.pdf)
|
13
|
+
- Interface of `Languages.search` changed. See <https://github.com/bbenno/languages/pull/123> for more details.
|
14
|
+
- Argument `case_sensitive` has been removed.
|
15
|
+
- Argument `pattern` can no longer be String. Its type has to be `Regexp`
|
16
|
+
|
17
|
+
### Deprecated
|
18
|
+
|
19
|
+
- Deprecate `Languages.ancient` as this "type of individual languages" has been removed by the maintenance agency and (probably) merged with extinct type.
|
20
|
+
|
21
|
+
### Removed
|
22
|
+
|
23
|
+
- Support for Ruby v2.7
|
24
|
+
- Support for Ruby v3.0
|
25
|
+
|
10
26
|
## [0.8.0] - 2024-02-05
|
11
27
|
|
12
28
|
### Added
|
data/Gemfile
CHANGED
@@ -5,8 +5,8 @@ source 'https://rubygems.org'
|
|
5
5
|
# Specify your gem's dependencies in languages.gemspec
|
6
6
|
gemspec
|
7
7
|
|
8
|
-
gem 'minitest', '~> 5.
|
9
|
-
gem 'rake', '~> 13.
|
10
|
-
gem 'rubocop', '~> 1.
|
11
|
-
gem 'rubocop-minitest', '~> 0.
|
8
|
+
gem 'minitest', '~> 5.25'
|
9
|
+
gem 'rake', '~> 13.2'
|
10
|
+
gem 'rubocop', '~> 1.68'
|
11
|
+
gem 'rubocop-minitest', '~> 0.36.0'
|
12
12
|
gem 'rubocop-rake', '~> 0.6.0'
|
data/Gemfile.lock
CHANGED
@@ -1,55 +1,53 @@
|
|
1
1
|
PATH
|
2
2
|
remote: .
|
3
3
|
specs:
|
4
|
-
human_languages (0.
|
4
|
+
human_languages (0.9.0)
|
5
5
|
|
6
6
|
GEM
|
7
7
|
remote: https://rubygems.org/
|
8
8
|
specs:
|
9
9
|
ast (2.4.2)
|
10
|
-
json (2.
|
10
|
+
json (2.8.2)
|
11
11
|
language_server-protocol (3.17.0.3)
|
12
|
-
minitest (5.
|
13
|
-
parallel (1.
|
14
|
-
parser (3.3.0
|
12
|
+
minitest (5.25.1)
|
13
|
+
parallel (1.26.3)
|
14
|
+
parser (3.3.6.0)
|
15
15
|
ast (~> 2.4.1)
|
16
16
|
racc
|
17
|
-
racc (1.
|
17
|
+
racc (1.8.1)
|
18
18
|
rainbow (3.1.1)
|
19
|
-
rake (13.1
|
20
|
-
regexp_parser (2.9.
|
21
|
-
|
22
|
-
rubocop (1.60.2)
|
19
|
+
rake (13.2.1)
|
20
|
+
regexp_parser (2.9.2)
|
21
|
+
rubocop (1.68.0)
|
23
22
|
json (~> 2.3)
|
24
23
|
language_server-protocol (>= 3.17.0)
|
25
24
|
parallel (~> 1.10)
|
26
25
|
parser (>= 3.3.0.2)
|
27
26
|
rainbow (>= 2.2.2, < 4.0)
|
28
|
-
regexp_parser (>=
|
29
|
-
|
30
|
-
rubocop-ast (>= 1.30.0, < 2.0)
|
27
|
+
regexp_parser (>= 2.4, < 3.0)
|
28
|
+
rubocop-ast (>= 1.32.2, < 2.0)
|
31
29
|
ruby-progressbar (~> 1.7)
|
32
30
|
unicode-display_width (>= 2.4.0, < 3.0)
|
33
|
-
rubocop-ast (1.
|
34
|
-
parser (>= 3.
|
35
|
-
rubocop-minitest (0.
|
36
|
-
rubocop (>= 1.
|
37
|
-
rubocop-ast (>= 1.
|
31
|
+
rubocop-ast (1.36.1)
|
32
|
+
parser (>= 3.3.1.0)
|
33
|
+
rubocop-minitest (0.36.0)
|
34
|
+
rubocop (>= 1.61, < 2.0)
|
35
|
+
rubocop-ast (>= 1.31.1, < 2.0)
|
38
36
|
rubocop-rake (0.6.0)
|
39
37
|
rubocop (~> 1.0)
|
40
38
|
ruby-progressbar (1.13.0)
|
41
|
-
unicode-display_width (2.
|
39
|
+
unicode-display_width (2.6.0)
|
42
40
|
|
43
41
|
PLATFORMS
|
44
42
|
x86_64-linux
|
45
43
|
|
46
44
|
DEPENDENCIES
|
47
45
|
human_languages!
|
48
|
-
minitest (~> 5.
|
49
|
-
rake (~> 13.
|
50
|
-
rubocop (~> 1.
|
51
|
-
rubocop-minitest (~> 0.
|
46
|
+
minitest (~> 5.25)
|
47
|
+
rake (~> 13.2)
|
48
|
+
rubocop (~> 1.68)
|
49
|
+
rubocop-minitest (~> 0.36.0)
|
52
50
|
rubocop-rake (~> 0.6.0)
|
53
51
|
|
54
52
|
BUNDLED WITH
|
55
|
-
2.
|
53
|
+
2.5.6
|
data/README.adoc
CHANGED
@@ -8,7 +8,7 @@ image:https://badge.fury.io/rb/human_languages.svg["Gem Version", link="https://
|
|
8
8
|
image:https://img.shields.io/maintenance/yes/2024[Maintenance]
|
9
9
|
image:https://github.com/bbenno/languages/actions/workflows/main.yml/badge.svg[link="https://github.com/bbenno/languages/actions/workflows/main.yml"]
|
10
10
|
|
11
|
-
Simple, dependency-less gem providing all known human languagesfootnote:[This includes all individual languages already accounted for in ISO 639-2 as well as extinct,
|
11
|
+
Simple, dependency-less gem providing all known human languagesfootnote:[This includes all individual languages already accounted for in ISO 639-2 as well as extinct, constructed, and historical languages.] defined in ISO 639-3
|
12
12
|
|
13
13
|
The ISO code set in link:data/[data/] is taken from the official ISO 639-3 registration authority (ISO 639-3/RA) https://iso639-3.sil.org/[SIL International].
|
14
14
|
|
@@ -58,26 +58,24 @@ invalid = Languages[:invalid] # invalid or unknown names or ISO codes returns n
|
|
58
58
|
[source]
|
59
59
|
Languages.all
|
60
60
|
|
61
|
-
.Get languages by name
|
61
|
+
.Get languages by name (regexp search)
|
62
62
|
[source]
|
63
63
|
----
|
64
|
-
Languages.search
|
64
|
+
Languages.search /Germ/i
|
65
65
|
Languages.search /\AJapan/
|
66
66
|
----
|
67
67
|
|
68
68
|
[CAUTION]
|
69
69
|
--
|
70
|
-
|
71
|
-
|
72
|
-
[
|
73
|
-
Languages.search('search_pattern', case_sensitive: false)
|
70
|
+
Searching languages by name is only allowed via `Regexp` that has been prepared and validated (if it comes from a untrusted user) in terms of case sensitivity and security / timeout.
|
71
|
+
The support of passing search pattern of type String has been removed in v0.9.0.
|
72
|
+
See https://github.com/bbenno/languages/pull/123[#123] for more details.
|
74
73
|
--
|
75
74
|
|
76
75
|
.Since ISO 639-3 categorizes the languages by scope and type, one can filter by them
|
77
76
|
[source]
|
78
77
|
----
|
79
78
|
# By scope
|
80
|
-
Languages.ancient
|
81
79
|
Languages.constructed
|
82
80
|
Languages.extinct
|
83
81
|
Languages.historical
|
@@ -92,7 +90,7 @@ Languages.special_languages
|
|
92
90
|
|
93
91
|
.Further custom language selections can be implemented using `Languages.all`
|
94
92
|
[source]
|
95
|
-
Languages.all.select { |l| %w[
|
93
|
+
Languages.all.select { |l| %w[extinct historical].include?(l.type) }
|
96
94
|
|
97
95
|
=== Data Objects
|
98
96
|
|