unf_ext 0.0.7.1 → 0.0.8
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 +5 -5
- data/.github/workflows/unf_ext.yml +49 -0
- data/CHANGELOG.md +34 -0
- data/LICENSE.txt +1 -1
- data/README.md +4 -5
- data/Rakefile +15 -1
- data/ext/unf_ext/extconf.rb +20 -0
- data/ext/unf_ext/unf/normalizer.hh +3 -3
- data/ext/unf_ext/unf/table.hh +12847 -12772
- data/lib/unf_ext/version.rb +1 -1
- data/test/normalization-test.txt +3539 -23
- data/test/test_unf_ext.rb +21 -22
- data/unf_ext.gemspec +5 -9
- metadata +27 -15
- data/.travis.yml +0 -18
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
|
-
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
2
|
+
SHA256:
|
3
|
+
metadata.gz: 7a5f2f33ecb4da9e9c9ec743c6ba758c6defe2e3351bb8b59fcafffc0f4beaa7
|
4
|
+
data.tar.gz: 0601bdbdfbe8517fcc0a11411a00e46cf83b864d9cfec4de149bc10e6c5d993b
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: f1b4787eca42dc997a48c1805096ace556c1dbb977161f281ba554f11134295629c4bab35c9a186286644c831f58cc664bbae94d7033086071ab972c40d9a17f
|
7
|
+
data.tar.gz: e94a37d853f56a4d858c52dcc7346d6a6cfd2e796297a6345211a421fe7a07c58fb188c54e8574e36971488b5512e538f3ec01c99dc5b176d3fdc29d5573fd70
|
@@ -0,0 +1,49 @@
|
|
1
|
+
name: CI
|
2
|
+
|
3
|
+
on: [push, pull_request]
|
4
|
+
|
5
|
+
jobs:
|
6
|
+
build:
|
7
|
+
name: >-
|
8
|
+
${{ matrix.os }} ${{ matrix.ruby }}
|
9
|
+
|
10
|
+
runs-on: ${{ matrix.os }}
|
11
|
+
strategy:
|
12
|
+
fail-fast: false
|
13
|
+
matrix:
|
14
|
+
os: [ ubuntu-20.04, macos-11.0, windows-2019 ]
|
15
|
+
ruby: [ 2.2, 2.3, 2.4, 2.5, 2.6, 2.7, 3.0, head ]
|
16
|
+
include:
|
17
|
+
- { os: windows-2019, ruby: mingw }
|
18
|
+
exclude:
|
19
|
+
- { os: macos-11.0, ruby: 2.2 }
|
20
|
+
- { os: macos-11.0, ruby: 2.3 }
|
21
|
+
- { os: windows-2019, ruby: head }
|
22
|
+
|
23
|
+
steps:
|
24
|
+
- name: repo checkout
|
25
|
+
uses: actions/checkout@v2
|
26
|
+
|
27
|
+
- name: load ruby cross-compilation toolkit
|
28
|
+
uses: MSP-Greg/setup-ruby-pkgs@v1
|
29
|
+
with:
|
30
|
+
ruby-version: ${{ matrix.ruby }}
|
31
|
+
mingw: _upgrade_
|
32
|
+
|
33
|
+
- name: bundle install
|
34
|
+
shell: pwsh
|
35
|
+
run: |
|
36
|
+
# update RubyGems in Ruby 2.2, bundle install
|
37
|
+
if ('${{ matrix.ruby }}' -lt '2.3') {
|
38
|
+
gem update --system 2.7.10 --no-document
|
39
|
+
}
|
40
|
+
bundle config set --local path .bundle/vendor
|
41
|
+
bundle install --jobs 4 --retry 3
|
42
|
+
|
43
|
+
- name: compile
|
44
|
+
timeout-minutes: 5
|
45
|
+
run: bundle exec rake compile
|
46
|
+
|
47
|
+
- name: test
|
48
|
+
timeout-minutes: 5
|
49
|
+
run: bundle exec rake test
|
data/CHANGELOG.md
CHANGED
@@ -1,3 +1,37 @@
|
|
1
|
+
## 0.0.8
|
2
|
+
|
3
|
+
- No functional change in the library code.
|
4
|
+
- Include Windows binaries for Ruby 3.0.
|
5
|
+
- Drop support for Ruby 2.1 and earlier.
|
6
|
+
- Replace Travis CI with Github Actions.
|
7
|
+
- Fix cross-build after upgrading rake-compiler/rake-compiler-dock to 1.1.1/1.1.0.
|
8
|
+
|
9
|
+
## 0.0.7.7 (2020-03-30)
|
10
|
+
|
11
|
+
- Include Windows binaries for Ruby 2.7.
|
12
|
+
|
13
|
+
## 0.0.7.6 (2019-03-19)
|
14
|
+
|
15
|
+
- Include Windows binaries for Ruby 2.6.
|
16
|
+
|
17
|
+
## 0.0.7.5 (2018-02-06)
|
18
|
+
|
19
|
+
- Include Windows binaries for Ruby 2.5.
|
20
|
+
|
21
|
+
## 0.0.7.4 (2017-04-19)
|
22
|
+
|
23
|
+
- Fix build on ARM and GCC 6 again.
|
24
|
+
|
25
|
+
## 0.0.7.3 (2017-04-11)
|
26
|
+
|
27
|
+
- Update the base Unicode version to 9.
|
28
|
+
|
29
|
+
- Fix compile issues on ARM and GCC 6.
|
30
|
+
|
31
|
+
## 0.0.7.2 (2016-02-01)
|
32
|
+
|
33
|
+
- Include Windows binaries for Ruby 2.3.
|
34
|
+
|
1
35
|
## 0.0.7.1 (2015-04-18)
|
2
36
|
|
3
37
|
- Windows fat binary gems no longer require libstd++ to
|
data/LICENSE.txt
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
The MIT License
|
2
2
|
|
3
3
|
Copyright (c) 2010 Takeru Ohta <phjgt308@gmail.com>
|
4
|
-
Copyright (c) 2011-
|
4
|
+
Copyright (c) 2011-2018 Akinori MUSHA <knu@idaemons.org> (extended Ruby support)
|
5
5
|
|
6
6
|
Permission is hereby granted, free of charge, to any person obtaining a copy
|
7
7
|
of this software and associated documentation files (the "Software"), to deal
|
data/README.md
CHANGED
@@ -17,7 +17,7 @@ Description
|
|
17
17
|
normalizer.normalize(string, :nfc) #=> string in NFC
|
18
18
|
}
|
19
19
|
|
20
|
-
* Compliant with Unicode
|
20
|
+
* Compliant with Unicode 9.0
|
21
21
|
|
22
22
|
Requirement
|
23
23
|
-----------
|
@@ -38,8 +38,7 @@ Or:
|
|
38
38
|
Development Resources
|
39
39
|
---------------------
|
40
40
|
|
41
|
-
*
|
42
|
-
* http://sourceforge.jp/ticket/newticket.php?group_id=5256
|
41
|
+
* https://github.com/sile/unf
|
43
42
|
|
44
43
|
For issues regarding files under the directory `unf`, please
|
45
44
|
contact this upstream.
|
@@ -51,8 +50,8 @@ Development Resources
|
|
51
50
|
License
|
52
51
|
-------
|
53
52
|
|
54
|
-
Copyright (c) 2010 Takeru Ohta
|
55
|
-
Copyright (c) 2011-
|
53
|
+
Copyright (c) 2010-2017 Takeru Ohta
|
54
|
+
Copyright (c) 2011-2018 Akinori MUSHA
|
56
55
|
|
57
56
|
Licensed under the MIT license.
|
58
57
|
See `LICENSE` for details.
|
data/Rakefile
CHANGED
@@ -1,4 +1,3 @@
|
|
1
|
-
# -*- coding: utf-8 -*-
|
2
1
|
require 'bundler/gem_tasks'
|
3
2
|
|
4
3
|
gemspec = Bundler::GemHelper.gemspec
|
@@ -10,6 +9,21 @@ Rake::ExtensionTask.new('unf_ext', gemspec) do |ext|
|
|
10
9
|
ext.cross_config_options << '--with-ldflags="-static-libgcc"' << '--with-static-libstdc++'
|
11
10
|
end
|
12
11
|
|
12
|
+
namespace :gem do
|
13
|
+
task :native do
|
14
|
+
require 'rake_compiler_dock'
|
15
|
+
sh 'bundle package --all'
|
16
|
+
%w[
|
17
|
+
x64-mingw32
|
18
|
+
x86-mingw32
|
19
|
+
].each do |plat|
|
20
|
+
RakeCompilerDock.sh "bundle --local && rake native:#{plat} gem", platform: plat
|
21
|
+
end
|
22
|
+
end
|
23
|
+
end
|
24
|
+
|
25
|
+
task :gems => %i[build gem:native]
|
26
|
+
|
13
27
|
require 'rake/testtask'
|
14
28
|
Rake::TestTask.new(:test) do |test|
|
15
29
|
test.libs << 'test'
|
data/ext/unf_ext/extconf.rb
CHANGED
@@ -4,6 +4,26 @@ if with_config('static-libstdc++')
|
|
4
4
|
$LDFLAGS << ' ' << `#{CONFIG['CC']} -print-file-name=libstdc++.a`.chomp
|
5
5
|
else
|
6
6
|
have_library('stdc++')
|
7
|
+
|
8
|
+
case RbConfig::CONFIG['host_os']
|
9
|
+
when /solaris(!?2.11)/
|
10
|
+
# Do a little trickery here to enable C++ standard on Solaris 11 if found.
|
11
|
+
# This also forces 64bit compilation mode.
|
12
|
+
$CXX = CONFIG['CXX']
|
13
|
+
$CXX << ' ' << '-m64'
|
14
|
+
$CFLAGS = CONFIG['CFLAGS'].gsub(/-std=c99/, '')
|
15
|
+
$CFLAGS << ' ' << '-m64 -std=c++11'
|
16
|
+
$CPPFLAGS = CONFIG['CFLAGS'].gsub(/-std=c99/, '')
|
17
|
+
$CPPFLAGS << ' ' << '-m64 -std=c++11'
|
18
|
+
$CXXFLAGS = CONFIG['CFLAGS'].gsub(/-std=c99/, '')
|
19
|
+
$CXXFLAGS << ' ' << '-m64 -std=c++11'
|
20
|
+
when /aix/
|
21
|
+
# Compiler flags necessary on AIX.
|
22
|
+
# rubocop:disable Style/GlobalVars
|
23
|
+
$CFLAGS << ' ' << '-D_ALL_SOURCE=1'
|
24
|
+
$CPPFLAGS << ' ' << '-D_ALL_SOURCE=1'
|
25
|
+
$CXXFLAGS << ' ' << '-D_ALL_SOURCE=1'
|
26
|
+
end
|
7
27
|
end
|
8
28
|
|
9
29
|
create_makefile 'unf_ext'
|
@@ -17,9 +17,9 @@ namespace UNF {
|
|
17
17
|
|
18
18
|
public:
|
19
19
|
Normalizer()
|
20
|
-
: nf_d(TABLE::NODES, TABLE::CANONICAL_DECOM_ROOT, TABLE::STRINGS),
|
21
|
-
nf_kd(TABLE::NODES, TABLE::COMPATIBILITY_DECOM_ROOT, TABLE::STRINGS),
|
22
|
-
nf_c(TABLE::NODES, TABLE::CANONICAL_COM_ROOT, TABLE::STRINGS),
|
20
|
+
: nf_d(TABLE::NODES, TABLE::CANONICAL_DECOM_ROOT, (const char *)TABLE::STRINGS),
|
21
|
+
nf_kd(TABLE::NODES, TABLE::COMPATIBILITY_DECOM_ROOT, (const char *)TABLE::STRINGS),
|
22
|
+
nf_c(TABLE::NODES, TABLE::CANONICAL_COM_ROOT, (const char *)TABLE::STRINGS),
|
23
23
|
nf_c_qc(TABLE::NODES, TABLE::NFC_ILLEGAL_ROOT),
|
24
24
|
nf_kc_qc(TABLE::NODES, TABLE::NFKC_ILLEGAL_ROOT),
|
25
25
|
ccc(TABLE::NODES, TABLE::CANONICAL_CLASS_ROOT)
|