onesky-rails 1.2.0 → 1.6.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 +5 -5
- data/.travis.yml +1 -3
- data/CHANGELOG.md +31 -9
- data/README.md +14 -2
- data/lib/generators/templates/onesky.yml.tt +6 -0
- data/lib/onesky/rails/file_client.rb +52 -5
- data/lib/onesky/rails/version.rb +1 -1
- data/lib/tasks/onesky.rake +15 -3
- data/onesky-rails.gemspec +6 -6
- data/spec/fixtures/sample_files/en/en.yml +13 -0
- data/spec/fixtures/sample_files/en/menu.yml +3 -0
- data/spec/fixtures/{locales → sample_files/ja}/ja.yml +4 -0
- data/spec/fixtures/sample_files/ja/menu.yml +3 -0
- data/spec/fixtures/{locales → sample_files/original}/en.yml +0 -0
- data/spec/fixtures/{locales/special_en.yml → sample_files/original/menu.yml} +0 -0
- data/spec/onesky/rails/file_client_spec.rb +114 -28
- metadata +27 -24
- data/spec/fixtures/locales/en.json +0 -13
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
|
-
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
2
|
+
SHA256:
|
3
|
+
metadata.gz: 980a8350341a3615e0824dd9c47e1bd1c9ebc8359bf2e13f65835a0a76c1726a
|
4
|
+
data.tar.gz: 6d2fe1027039c511a7fb65be8d713fc017e9f2870e0fd2c05dc32d7d7551b445
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 321c893d64a191c1f1e65b6c5b5e74fe772537940d3f76121d2d28dd675b76db312fee7dce798898af0a0b34445b70887ea792af1df3d5fc996196f7f871405f
|
7
|
+
data.tar.gz: 1bf61f47c360285dbcfd3b5b929b235124e2c19845ecaa77a375406c373feaac632c2f8dc6a72e756576df9b96376ff4dca21d9de227f2a2289ee14acb46e1f2
|
data/.travis.yml
CHANGED
data/CHANGELOG.md
CHANGED
@@ -1,13 +1,28 @@
|
|
1
|
-
###
|
1
|
+
### 1.6.0 - 12-AUG-2021
|
2
2
|
|
3
|
-
*
|
4
|
-
*
|
5
|
-
* Download translations from OneSky
|
3
|
+
* Update dependencies to support Ruby 3.0.x
|
4
|
+
* Use v1.3.1 onesky-ruby gem
|
6
5
|
|
7
|
-
### 1.
|
6
|
+
### 1.5.0 - 18-OCT-2019
|
8
7
|
|
9
|
-
*
|
10
|
-
|
8
|
+
* Use v1.2.0 onesky-ruby gem
|
9
|
+
|
10
|
+
### 1.4.1 - 11-JUN-2019
|
11
|
+
|
12
|
+
* Update dependencies to support Ruby 2.5.x
|
13
|
+
|
14
|
+
### 1.3.1 - 17-MAY-2016
|
15
|
+
|
16
|
+
* fix downloaded file naming
|
17
|
+
|
18
|
+
### 1.3.0 - 13-MAY-2016
|
19
|
+
|
20
|
+
* support download base language only translation files
|
21
|
+
* support download all translation files
|
22
|
+
|
23
|
+
### 1.2.0 - 13-JUL-2015
|
24
|
+
|
25
|
+
* support custom locale
|
11
26
|
|
12
27
|
### 1.1.0 - 9-JUN-2015
|
13
28
|
|
@@ -15,6 +30,13 @@
|
|
15
30
|
* able to parse ERB template
|
16
31
|
* able to customize base_locale
|
17
32
|
|
18
|
-
### 1.
|
33
|
+
### 1.0.0 - 31-DEC-2014
|
19
34
|
|
20
|
-
*
|
35
|
+
* Add custom header
|
36
|
+
* bump version to 1.0.0 as stable version
|
37
|
+
|
38
|
+
### 0.0.1 - 4-NOV-2014
|
39
|
+
|
40
|
+
* Generate config file
|
41
|
+
* Upload base locale string files to OneSky
|
42
|
+
* Download translations from OneSky
|
data/README.md
CHANGED
@@ -36,12 +36,24 @@ Upload all string files of `I18n.default_locale` to [OneSky](http://www.oneskyap
|
|
36
36
|
```
|
37
37
|
rake onesky:download
|
38
38
|
```
|
39
|
-
Download translations of files uploaded in all languages activated in project.
|
39
|
+
Download translations of files uploaded in all languages activated in project other than the base language.
|
40
|
+
|
41
|
+
**Download base language translations**
|
42
|
+
```
|
43
|
+
rake onesky:download_base
|
44
|
+
```
|
45
|
+
Download translations of files uploaded only for the base language.
|
46
|
+
|
47
|
+
**Download all languages translations**
|
48
|
+
```
|
49
|
+
rake onesky:download_all
|
50
|
+
```
|
51
|
+
Download translations of files uploaded for all the languages including the base language.
|
40
52
|
|
41
53
|
## TODO
|
42
54
|
- Specify file to upload
|
43
55
|
- Specify file and language to download
|
44
|
-
- Support
|
56
|
+
- Support different backend
|
45
57
|
|
46
58
|
## Contributing
|
47
59
|
|
@@ -28,12 +28,30 @@ NOTICE
|
|
28
28
|
end
|
29
29
|
end
|
30
30
|
|
31
|
-
|
31
|
+
##
|
32
|
+
# Download translations from OneSky platform
|
33
|
+
#
|
34
|
+
# +string_path+ specify the folder path where all localization files locate
|
35
|
+
# +options+ indicate which files to download
|
36
|
+
# - :base_only => base language only
|
37
|
+
# - :all => all languages including base language
|
38
|
+
# - <empty> => default value; translation languages
|
39
|
+
#
|
40
|
+
def download(string_path, options = {})
|
32
41
|
verify_languages!
|
33
42
|
|
34
43
|
files = get_default_locale_files(string_path).map {|path| File.basename(path)}
|
35
44
|
|
36
|
-
|
45
|
+
locales = if options[:base_only]
|
46
|
+
[@base_locale]
|
47
|
+
elsif options[:all]
|
48
|
+
[@base_locale] + @onesky_locales
|
49
|
+
else
|
50
|
+
@onesky_locales
|
51
|
+
end
|
52
|
+
|
53
|
+
locales.each do |locale|
|
54
|
+
locale = locale.to_s
|
37
55
|
puts "#{locale_dir(locale)}/"
|
38
56
|
onesky_locale = locale.gsub('_', '-')
|
39
57
|
files.each do |file|
|
@@ -53,17 +71,27 @@ NOTICE
|
|
53
71
|
end
|
54
72
|
|
55
73
|
def make_translation_dir(dir_path, locale)
|
74
|
+
return dir_path if locale == @base_locale.to_s
|
75
|
+
|
56
76
|
target_path = File.join(dir_path, locale_dir(locale))
|
57
77
|
Dir.mkdir(target_path) unless File.directory?(target_path)
|
58
78
|
target_path
|
59
79
|
end
|
60
80
|
|
61
81
|
def locale_file_name(file, to_locale)
|
62
|
-
|
82
|
+
if File.basename(file, '.*') == @base_locale.to_s
|
83
|
+
file.sub(@base_locale.to_s, to_locale)
|
84
|
+
else
|
85
|
+
file
|
86
|
+
end
|
63
87
|
end
|
64
88
|
|
65
89
|
def get_default_locale_files(string_path)
|
90
|
+
string_path = Pathname.new(string_path)
|
91
|
+
locale_files_filter = generate_locale_files_filter
|
66
92
|
Dir.glob("#{string_path}/**/*.yml").map do |path|
|
93
|
+
relative_path = Pathname.new(path).relative_path_from(string_path).to_s
|
94
|
+
next if locale_files_filter && !locale_files_filter.call(relative_path)
|
67
95
|
content_hash = YAML.load_file(path)
|
68
96
|
path if content_hash && content_hash.has_key?(@base_locale.to_s)
|
69
97
|
end.compact
|
@@ -80,9 +108,28 @@ NOTICE
|
|
80
108
|
end
|
81
109
|
|
82
110
|
def is_keep_strings?
|
83
|
-
return true unless
|
111
|
+
return true unless upload_config.has_key?('is_keeping_all_strings')
|
112
|
+
|
113
|
+
!!upload_config['is_keeping_all_strings']
|
114
|
+
end
|
115
|
+
|
116
|
+
def generate_locale_files_filter
|
117
|
+
only = Array(upload_config['only'])
|
118
|
+
except = Array(upload_config['except'])
|
119
|
+
|
120
|
+
if only.any? && except.any?
|
121
|
+
raise ArgumentError, "Invalid config. Can't use both `only` and `except` options."
|
122
|
+
end
|
123
|
+
|
124
|
+
if only.any?
|
125
|
+
->(path) { only.include?(path) }
|
126
|
+
elsif except.any?
|
127
|
+
->(path) { !except.include?(path) }
|
128
|
+
end
|
129
|
+
end
|
84
130
|
|
85
|
-
|
131
|
+
def upload_config
|
132
|
+
@config['upload'] ||= {}
|
86
133
|
end
|
87
134
|
|
88
135
|
end
|
data/lib/onesky/rails/version.rb
CHANGED
data/lib/tasks/onesky.rake
CHANGED
@@ -1,17 +1,29 @@
|
|
1
1
|
namespace :onesky do
|
2
2
|
|
3
|
-
desc
|
3
|
+
desc 'Upload string files of base locale to OneSky platform.'
|
4
4
|
task :upload => :environment do
|
5
5
|
file_client.upload(locale_path)
|
6
6
|
puts 'Done!'
|
7
7
|
end
|
8
8
|
|
9
|
-
desc
|
9
|
+
desc 'Download translations from OneSky platform.'
|
10
10
|
task :download => :environment do
|
11
11
|
file_client.download(locale_path)
|
12
12
|
puts 'Done!'
|
13
13
|
end
|
14
14
|
|
15
|
+
desc 'Download base language translations from OneSky platform.'
|
16
|
+
task :download_base => :environment do
|
17
|
+
file_client.download(locale_path, base_only: true)
|
18
|
+
puts 'Done!'
|
19
|
+
end
|
20
|
+
|
21
|
+
desc 'Download all languages translations from OneSky platform.'
|
22
|
+
task :download_all => :environment do
|
23
|
+
file_client.download(locale_path, all: true)
|
24
|
+
puts 'Done!'
|
25
|
+
end
|
26
|
+
|
15
27
|
def file_client
|
16
28
|
require 'erb'
|
17
29
|
data = YAML::load(ERB.new(File.read(Rails.root.join('config', 'onesky.yml'))).result)
|
@@ -19,7 +31,7 @@ namespace :onesky do
|
|
19
31
|
end
|
20
32
|
|
21
33
|
def locale_path
|
22
|
-
Rails.root.join(
|
34
|
+
Rails.root.join('config/locales')
|
23
35
|
end
|
24
36
|
|
25
37
|
end
|
data/onesky-rails.gemspec
CHANGED
@@ -19,11 +19,11 @@ Gem::Specification.new do |spec|
|
|
19
19
|
spec.require_paths = ["lib"]
|
20
20
|
|
21
21
|
spec.add_dependency "i18n", ">= 0.5.0"
|
22
|
-
spec.add_dependency "onesky-ruby", "~> 1.
|
22
|
+
spec.add_dependency "onesky-ruby", "~> 1.3.1"
|
23
23
|
|
24
|
-
spec.add_development_dependency "bundler", "~>
|
25
|
-
spec.add_development_dependency "rake", "~>
|
26
|
-
spec.add_development_dependency "rspec", "~> 3.
|
27
|
-
spec.add_development_dependency "timecop", "~> 0.
|
28
|
-
spec.add_development_dependency "webmock", "~>
|
24
|
+
spec.add_development_dependency "bundler", "~> 2.2"
|
25
|
+
spec.add_development_dependency "rake", "~> 12.3"
|
26
|
+
spec.add_development_dependency "rspec", "~> 3.7.0"
|
27
|
+
spec.add_development_dependency "timecop", "~> 0.9.0"
|
28
|
+
spec.add_development_dependency "webmock", "~> 3.0.0"
|
29
29
|
end
|
File without changes
|
File without changes
|
@@ -4,72 +4,158 @@ describe Onesky::Rails::FileClient do
|
|
4
4
|
|
5
5
|
let(:config_hash) { create_config_hash }
|
6
6
|
let(:client) {Onesky::Rails::FileClient.new(config_hash)}
|
7
|
+
let(:sample_file_path) { File.expand_path("../../../fixtures/sample_files", __FILE__) }
|
7
8
|
let(:file_path) { File.expand_path("../../../fixtures/locales", __FILE__) }
|
8
9
|
|
9
10
|
before(:each) do
|
10
11
|
stub_language_request(config_hash['api_key'], config_hash['api_secret'], config_hash['project_id'])
|
12
|
+
|
13
|
+
# create test dir
|
14
|
+
FileUtils.copy_entry "#{sample_file_path}/original", file_path
|
15
|
+
end
|
16
|
+
|
17
|
+
after(:each) do
|
18
|
+
# delete test dir
|
19
|
+
FileUtils.remove_dir(file_path) if File.directory?(file_path)
|
20
|
+
end
|
21
|
+
|
22
|
+
def create_config_hash_with_upload_options(upload_options)
|
23
|
+
create_config_hash.tap do |config|
|
24
|
+
config['upload'].merge!(upload_options)
|
25
|
+
end
|
11
26
|
end
|
12
27
|
|
13
28
|
context '#upload' do
|
14
|
-
|
29
|
+
before(:each) do
|
15
30
|
stub_request(:post, full_path_with_auth_hash("/projects/#{config_hash['project_id']}/files", config_hash['api_key'], config_hash['api_secret']))
|
16
31
|
.to_return(status: 201)
|
32
|
+
end
|
17
33
|
|
18
|
-
|
34
|
+
it 'all translation files to onesky' do
|
35
|
+
expect(client.upload(file_path)).to match_array(["#{file_path}/en.yml","#{file_path}/menu.yml"])
|
19
36
|
end
|
20
|
-
end
|
21
37
|
|
22
|
-
|
38
|
+
context 'with `only` option' do
|
39
|
+
let(:config_hash) { create_config_hash_with_upload_options('only' => 'menu.yml') }
|
23
40
|
|
24
|
-
|
25
|
-
|
41
|
+
it 'matching translation files to onesky' do
|
42
|
+
expect(client.upload(file_path)).to match_array(["#{file_path}/menu.yml"])
|
43
|
+
end
|
26
44
|
end
|
27
45
|
|
28
|
-
|
46
|
+
context 'with `except` option' do
|
47
|
+
let(:config_hash) { create_config_hash_with_upload_options('except' => 'menu.yml') }
|
29
48
|
|
30
|
-
|
31
|
-
|
49
|
+
it 'matching translation files to onesky' do
|
50
|
+
expect(client.upload(file_path)).to match_array(["#{file_path}/en.yml"])
|
51
|
+
end
|
32
52
|
end
|
53
|
+
end
|
33
54
|
|
34
|
-
|
35
|
-
|
55
|
+
context 'download' do
|
56
|
+
|
57
|
+
let(:file_names) do
|
58
|
+
# source filename => downloaded filename
|
59
|
+
{
|
60
|
+
'en.yml' => {'en' => 'en.yml', 'ja' => 'ja.yml'},
|
61
|
+
'menu.yml' => {'en' => 'menu.yml', 'ja' => 'menu.yml'}
|
62
|
+
}
|
36
63
|
end
|
37
64
|
|
38
|
-
def
|
39
|
-
|
40
|
-
File.delete(*Dir.glob("#{locale_dir}/**/*"))
|
41
|
-
Dir.delete(locale_dir)
|
42
|
-
end
|
65
|
+
def locale_dir(locale)
|
66
|
+
locale == I18n.default_locale.to_s ? file_path : File.join(file_path, 'onesky_ja')
|
43
67
|
end
|
44
68
|
|
45
|
-
|
46
|
-
|
69
|
+
def locale_files(locale)
|
70
|
+
Dir.glob("#{locale_dir(locale)}/*.yml")
|
47
71
|
end
|
48
72
|
|
49
|
-
|
50
|
-
|
73
|
+
def expected_locale_files(locale)
|
74
|
+
["#{locale_dir(locale)}/#{locale}.yml", "#{locale_dir(locale)}/menu.yml"]
|
51
75
|
end
|
52
76
|
|
53
77
|
it 'download translations from OneSky and save as YAML files' do
|
54
|
-
|
78
|
+
locale = 'ja'
|
79
|
+
prepare_download_requests!(locale)
|
55
80
|
|
56
|
-
expect(locale_files).to be_empty
|
81
|
+
expect(locale_files(locale)).to be_empty
|
57
82
|
client.download(file_path)
|
58
|
-
expect(locale_files).to match_array(expected_locale_files)
|
83
|
+
expect(locale_files(locale)).to match_array(expected_locale_files(locale))
|
84
|
+
end
|
85
|
+
|
86
|
+
it 'download translations of base language from OneSky' do
|
87
|
+
locale = 'en'
|
88
|
+
prepare_download_requests!(locale)
|
89
|
+
|
90
|
+
client.download(file_path, base_only: true)
|
91
|
+
|
92
|
+
# test files created
|
93
|
+
expected_files = expected_locale_files(locale)
|
94
|
+
expect(locale_files(locale)).to match_array(expected_files)
|
95
|
+
|
96
|
+
# test file content
|
97
|
+
content = YAML.load_file(expected_files.pop)
|
98
|
+
expected_content = YAML.load_file(File.join(sample_file_path, locale, 'menu.yml'))
|
99
|
+
expect(content).to eq(expected_content)
|
100
|
+
end
|
101
|
+
|
102
|
+
it 'download all translations including base language from OneSky' do
|
103
|
+
locales = ['en', 'ja']
|
104
|
+
locales.each { |locale| prepare_download_requests!(locale) }
|
105
|
+
|
106
|
+
client.download(file_path, all: true)
|
107
|
+
|
108
|
+
locales.each do |locale|
|
109
|
+
# test files created
|
110
|
+
expected_files = expected_locale_files(locale)
|
111
|
+
expect(locale_files(locale)).to match_array(expected_files)
|
112
|
+
|
113
|
+
# test file content
|
114
|
+
content = YAML.load_file(expected_files.pop)
|
115
|
+
expected_content = YAML.load_file(File.join(sample_file_path, locale, "menu.yml"))
|
116
|
+
expect(content).to eq(expected_content)
|
117
|
+
end
|
118
|
+
end
|
119
|
+
|
120
|
+
context 'with `only` option' do
|
121
|
+
let(:config_hash) { create_config_hash_with_upload_options('only' => 'menu.yml') }
|
122
|
+
let(:expected_locale_files) { ["#{locale_dir(locale)}/menu.yml"] }
|
123
|
+
let(:locale) { 'ja' }
|
124
|
+
|
125
|
+
it 'downloads matching translation from OneSky and save as YAML files' do
|
126
|
+
prepare_download_requests!(locale)
|
127
|
+
expect(locale_files(locale)).to be_empty
|
128
|
+
client.download(file_path)
|
129
|
+
expect(locale_files(locale)).to match_array(expected_locale_files)
|
130
|
+
end
|
131
|
+
end
|
132
|
+
|
133
|
+
context 'with `except` option' do
|
134
|
+
let(:config_hash) { create_config_hash_with_upload_options('except' => 'menu.yml') }
|
135
|
+
let(:expected_locale_files) { ["#{locale_dir(locale)}/ja.yml"] }
|
136
|
+
let(:locale) { 'ja' }
|
137
|
+
|
138
|
+
it 'downloads matching translation from OneSky and save as YAML files' do
|
139
|
+
prepare_download_requests!(locale)
|
140
|
+
expect(locale_files(locale)).to be_empty
|
141
|
+
client.download(file_path)
|
142
|
+
expect(locale_files(locale)).to match_array(expected_locale_files)
|
143
|
+
end
|
59
144
|
end
|
60
145
|
|
61
|
-
def prepare_download_requests!
|
146
|
+
def prepare_download_requests!(locale)
|
62
147
|
Timecop.freeze
|
63
|
-
file_names.each do |file_name|
|
148
|
+
file_names.keys.each do |file_name|
|
149
|
+
downloaded_file_name = file_names[file_name][locale]
|
64
150
|
response_headers = {
|
65
151
|
'Content-Type' => 'text/plain',
|
66
|
-
'Content-Disposition' => "attachment; filename=#{
|
152
|
+
'Content-Disposition' => "attachment; filename=#{downloaded_file_name}",
|
67
153
|
}
|
68
|
-
query_string = "&source_file_name=#{file_name}&locale
|
154
|
+
query_string = "&source_file_name=#{file_name}&locale=#{locale}"
|
69
155
|
stub_request(:get, full_path_with_auth_hash("/projects/#{config_hash['project_id']}/translations", config_hash['api_key'], config_hash['api_secret']) + query_string)
|
70
156
|
.to_return(
|
71
157
|
status: 200,
|
72
|
-
body: File.read(File.join(
|
158
|
+
body: File.read(File.join(sample_file_path, locale, downloaded_file_name)),
|
73
159
|
headers: response_headers)
|
74
160
|
end
|
75
161
|
end
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: onesky-rails
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.
|
4
|
+
version: 1.6.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Victor Lam
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date:
|
11
|
+
date: 2021-08-11 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: i18n
|
@@ -30,84 +30,84 @@ dependencies:
|
|
30
30
|
requirements:
|
31
31
|
- - "~>"
|
32
32
|
- !ruby/object:Gem::Version
|
33
|
-
version: 1.
|
33
|
+
version: 1.3.1
|
34
34
|
type: :runtime
|
35
35
|
prerelease: false
|
36
36
|
version_requirements: !ruby/object:Gem::Requirement
|
37
37
|
requirements:
|
38
38
|
- - "~>"
|
39
39
|
- !ruby/object:Gem::Version
|
40
|
-
version: 1.
|
40
|
+
version: 1.3.1
|
41
41
|
- !ruby/object:Gem::Dependency
|
42
42
|
name: bundler
|
43
43
|
requirement: !ruby/object:Gem::Requirement
|
44
44
|
requirements:
|
45
45
|
- - "~>"
|
46
46
|
- !ruby/object:Gem::Version
|
47
|
-
version: '
|
47
|
+
version: '2.2'
|
48
48
|
type: :development
|
49
49
|
prerelease: false
|
50
50
|
version_requirements: !ruby/object:Gem::Requirement
|
51
51
|
requirements:
|
52
52
|
- - "~>"
|
53
53
|
- !ruby/object:Gem::Version
|
54
|
-
version: '
|
54
|
+
version: '2.2'
|
55
55
|
- !ruby/object:Gem::Dependency
|
56
56
|
name: rake
|
57
57
|
requirement: !ruby/object:Gem::Requirement
|
58
58
|
requirements:
|
59
59
|
- - "~>"
|
60
60
|
- !ruby/object:Gem::Version
|
61
|
-
version: '
|
61
|
+
version: '12.3'
|
62
62
|
type: :development
|
63
63
|
prerelease: false
|
64
64
|
version_requirements: !ruby/object:Gem::Requirement
|
65
65
|
requirements:
|
66
66
|
- - "~>"
|
67
67
|
- !ruby/object:Gem::Version
|
68
|
-
version: '
|
68
|
+
version: '12.3'
|
69
69
|
- !ruby/object:Gem::Dependency
|
70
70
|
name: rspec
|
71
71
|
requirement: !ruby/object:Gem::Requirement
|
72
72
|
requirements:
|
73
73
|
- - "~>"
|
74
74
|
- !ruby/object:Gem::Version
|
75
|
-
version: 3.
|
75
|
+
version: 3.7.0
|
76
76
|
type: :development
|
77
77
|
prerelease: false
|
78
78
|
version_requirements: !ruby/object:Gem::Requirement
|
79
79
|
requirements:
|
80
80
|
- - "~>"
|
81
81
|
- !ruby/object:Gem::Version
|
82
|
-
version: 3.
|
82
|
+
version: 3.7.0
|
83
83
|
- !ruby/object:Gem::Dependency
|
84
84
|
name: timecop
|
85
85
|
requirement: !ruby/object:Gem::Requirement
|
86
86
|
requirements:
|
87
87
|
- - "~>"
|
88
88
|
- !ruby/object:Gem::Version
|
89
|
-
version: 0.
|
89
|
+
version: 0.9.0
|
90
90
|
type: :development
|
91
91
|
prerelease: false
|
92
92
|
version_requirements: !ruby/object:Gem::Requirement
|
93
93
|
requirements:
|
94
94
|
- - "~>"
|
95
95
|
- !ruby/object:Gem::Version
|
96
|
-
version: 0.
|
96
|
+
version: 0.9.0
|
97
97
|
- !ruby/object:Gem::Dependency
|
98
98
|
name: webmock
|
99
99
|
requirement: !ruby/object:Gem::Requirement
|
100
100
|
requirements:
|
101
101
|
- - "~>"
|
102
102
|
- !ruby/object:Gem::Version
|
103
|
-
version:
|
103
|
+
version: 3.0.0
|
104
104
|
type: :development
|
105
105
|
prerelease: false
|
106
106
|
version_requirements: !ruby/object:Gem::Requirement
|
107
107
|
requirements:
|
108
108
|
- - "~>"
|
109
109
|
- !ruby/object:Gem::Version
|
110
|
-
version:
|
110
|
+
version: 3.0.0
|
111
111
|
description: Integrate Rails app with OneSky that provide `upload` and `download`
|
112
112
|
rake command to sync string files
|
113
113
|
email:
|
@@ -133,10 +133,12 @@ files:
|
|
133
133
|
- lib/onesky/rails/version.rb
|
134
134
|
- lib/tasks/onesky.rake
|
135
135
|
- onesky-rails.gemspec
|
136
|
-
- spec/fixtures/
|
137
|
-
- spec/fixtures/
|
138
|
-
- spec/fixtures/
|
139
|
-
- spec/fixtures/
|
136
|
+
- spec/fixtures/sample_files/en/en.yml
|
137
|
+
- spec/fixtures/sample_files/en/menu.yml
|
138
|
+
- spec/fixtures/sample_files/ja/ja.yml
|
139
|
+
- spec/fixtures/sample_files/ja/menu.yml
|
140
|
+
- spec/fixtures/sample_files/original/en.yml
|
141
|
+
- spec/fixtures/sample_files/original/menu.yml
|
140
142
|
- spec/onesky/rails/client_spec.rb
|
141
143
|
- spec/onesky/rails/file_client_spec.rb
|
142
144
|
- spec/spec_helper.rb
|
@@ -159,16 +161,17 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
159
161
|
- !ruby/object:Gem::Version
|
160
162
|
version: '0'
|
161
163
|
requirements: []
|
162
|
-
|
163
|
-
rubygems_version: 2.4.6
|
164
|
+
rubygems_version: 3.2.19
|
164
165
|
signing_key:
|
165
166
|
specification_version: 4
|
166
167
|
summary: Rails plugin to sync string files with OneSky
|
167
168
|
test_files:
|
168
|
-
- spec/fixtures/
|
169
|
-
- spec/fixtures/
|
170
|
-
- spec/fixtures/
|
171
|
-
- spec/fixtures/
|
169
|
+
- spec/fixtures/sample_files/en/en.yml
|
170
|
+
- spec/fixtures/sample_files/en/menu.yml
|
171
|
+
- spec/fixtures/sample_files/ja/ja.yml
|
172
|
+
- spec/fixtures/sample_files/ja/menu.yml
|
173
|
+
- spec/fixtures/sample_files/original/en.yml
|
174
|
+
- spec/fixtures/sample_files/original/menu.yml
|
172
175
|
- spec/onesky/rails/client_spec.rb
|
173
176
|
- spec/onesky/rails/file_client_spec.rb
|
174
177
|
- spec/spec_helper.rb
|