lokalise_manager 1.2.0 → 1.2.1
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/CHANGELOG.md +6 -0
- data/lib/lokalise_manager/task_definitions/base.rb +7 -2
- data/lib/lokalise_manager/utils/hash_utils.rb +28 -0
- data/lib/lokalise_manager/version.rb +1 -1
- data/lib/lokalise_manager.rb +1 -1
- data/lokalise_manager.gemspec +4 -1
- data/spec/lib/lokalise_manager/task_definitions/base_spec.rb +0 -5
- data/spec/lib/{ext/hash_spec.rb → utils/hash_utils_spec.rb} +2 -1
- metadata +10 -9
- data/lib/ext/hash.rb +0 -22
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 33815f129df22f7a27f91689cad944193aca9b992f14e7115a2737088785d3b3
|
4
|
+
data.tar.gz: 1fc5a893bb917bac5afd39f2b35dbbb54286b878dce42f0805135105490520b5
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 7fecf43ac4f105be85fe2e4548643849b78a239ec523a79b37fec4b6acbeddf319dd4ac594e5caf28e4b174fed76e05b18d3bf6d6343d055daa2115d661b41c4
|
7
|
+
data.tar.gz: 85f6c703a1ee2107cfe165b7c652cc81d2c2f0a0ae2a02af44cfb0e0cf31a185e5cbe3cbe27c8c53d411a8dd4f3046a98b02dadde3d983855e02cead3347cfb4
|
data/CHANGELOG.md
CHANGED
@@ -1,5 +1,11 @@
|
|
1
1
|
# Changelog
|
2
2
|
|
3
|
+
## 1.2.1 (26-Nov-21)
|
4
|
+
|
5
|
+
* Use refinements instead of monkey patching to add hash methods
|
6
|
+
* Don't use `OpenStruct` anymore to store config opts
|
7
|
+
* Minor fixes
|
8
|
+
|
3
9
|
## 1.2.0 (26-Oct-21)
|
4
10
|
|
5
11
|
* Add a new option `:silent_mode` which is `false` by default. When silent mode is enabled, no debug info will be printed out to `$stdout`. The only exception are the "safe mode" messages — you'll still be prompted to continue if the target directory is not empty.
|
@@ -2,11 +2,12 @@
|
|
2
2
|
|
3
3
|
require 'ruby-lokalise-api'
|
4
4
|
require 'pathname'
|
5
|
-
require 'ostruct'
|
6
5
|
|
7
6
|
module LokaliseManager
|
8
7
|
module TaskDefinitions
|
9
8
|
class Base
|
9
|
+
using LokaliseManager::Utils::HashUtils
|
10
|
+
|
10
11
|
attr_accessor :config
|
11
12
|
|
12
13
|
# Creates a new importer or exporter. It accepts custom config and merges it
|
@@ -23,7 +24,11 @@ module LokaliseManager
|
|
23
24
|
opts[reader.to_sym] = global_config.send(reader)
|
24
25
|
end
|
25
26
|
|
26
|
-
|
27
|
+
all_opts = primary_opts.deep_merge(custom_opts)
|
28
|
+
|
29
|
+
config_klass = Struct.new(*all_opts.keys, keyword_init: true)
|
30
|
+
|
31
|
+
@config = config_klass.new all_opts
|
27
32
|
end
|
28
33
|
|
29
34
|
# Creates a Lokalise API client
|
@@ -0,0 +1,28 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
# Taken from https://github.com/rails/rails/blob/83217025a171593547d1268651b446d3533e2019/activesupport/lib/active_support/core_ext/hash/deep_merge.rb
|
4
|
+
|
5
|
+
module LokaliseManager
|
6
|
+
module Utils
|
7
|
+
module HashUtils
|
8
|
+
refine Hash do
|
9
|
+
def deep_merge(other_hash, &block)
|
10
|
+
dup.deep_merge!(other_hash, &block)
|
11
|
+
end
|
12
|
+
|
13
|
+
# Same as +deep_merge+, but modifies +self+.
|
14
|
+
def deep_merge!(other_hash, &block)
|
15
|
+
merge!(other_hash) do |key, this_val, other_val|
|
16
|
+
if this_val.is_a?(Hash) && other_val.is_a?(Hash)
|
17
|
+
this_val.deep_merge(other_val, &block)
|
18
|
+
elsif block
|
19
|
+
yield(key, this_val, other_val)
|
20
|
+
else
|
21
|
+
other_val
|
22
|
+
end
|
23
|
+
end
|
24
|
+
end
|
25
|
+
end
|
26
|
+
end
|
27
|
+
end
|
28
|
+
end
|
data/lib/lokalise_manager.rb
CHANGED
data/lokalise_manager.gemspec
CHANGED
@@ -32,7 +32,10 @@ Gem::Specification.new do |spec|
|
|
32
32
|
spec.add_development_dependency 'rspec', '~> 3.6'
|
33
33
|
spec.add_development_dependency 'rubocop', '~> 1.0'
|
34
34
|
spec.add_development_dependency 'rubocop-performance', '~> 1.5'
|
35
|
-
spec.add_development_dependency 'rubocop-rspec', '~> 2.
|
35
|
+
spec.add_development_dependency 'rubocop-rspec', '~> 2.6.0'
|
36
36
|
spec.add_development_dependency 'simplecov', '~> 0.16'
|
37
37
|
spec.add_development_dependency 'vcr', '~> 6.0'
|
38
|
+
spec.metadata = {
|
39
|
+
'rubygems_mfa_required' => 'true'
|
40
|
+
}
|
38
41
|
end
|
@@ -19,11 +19,6 @@ describe LokaliseManager::TaskDefinitions::Base do
|
|
19
19
|
expect(obj.config.project_id).to eq('345')
|
20
20
|
expect(obj.config.token).to eq('fake')
|
21
21
|
end
|
22
|
-
|
23
|
-
it 'tes' do
|
24
|
-
obj = described_class.new import_opts: {filter_langs: ['fr']}
|
25
|
-
puts obj.config
|
26
|
-
end
|
27
22
|
end
|
28
23
|
|
29
24
|
specify '.reset_client!' do
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: lokalise_manager
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.2.
|
4
|
+
version: 1.2.1
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Ilya Bodrov
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2021-
|
11
|
+
date: 2021-11-26 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: ruby-lokalise-api
|
@@ -128,14 +128,14 @@ dependencies:
|
|
128
128
|
requirements:
|
129
129
|
- - "~>"
|
130
130
|
- !ruby/object:Gem::Version
|
131
|
-
version: 2.
|
131
|
+
version: 2.6.0
|
132
132
|
type: :development
|
133
133
|
prerelease: false
|
134
134
|
version_requirements: !ruby/object:Gem::Requirement
|
135
135
|
requirements:
|
136
136
|
- - "~>"
|
137
137
|
- !ruby/object:Gem::Version
|
138
|
-
version: 2.
|
138
|
+
version: 2.6.0
|
139
139
|
- !ruby/object:Gem::Dependency
|
140
140
|
name: simplecov
|
141
141
|
requirement: !ruby/object:Gem::Requirement
|
@@ -181,21 +181,21 @@ files:
|
|
181
181
|
- LICENSE
|
182
182
|
- README.md
|
183
183
|
- Rakefile
|
184
|
-
- lib/ext/hash.rb
|
185
184
|
- lib/lokalise_manager.rb
|
186
185
|
- lib/lokalise_manager/error.rb
|
187
186
|
- lib/lokalise_manager/global_config.rb
|
188
187
|
- lib/lokalise_manager/task_definitions/base.rb
|
189
188
|
- lib/lokalise_manager/task_definitions/exporter.rb
|
190
189
|
- lib/lokalise_manager/task_definitions/importer.rb
|
190
|
+
- lib/lokalise_manager/utils/hash_utils.rb
|
191
191
|
- lib/lokalise_manager/version.rb
|
192
192
|
- lokalise_manager.gemspec
|
193
|
-
- spec/lib/ext/hash_spec.rb
|
194
193
|
- spec/lib/lokalise_manager/global_config_spec.rb
|
195
194
|
- spec/lib/lokalise_manager/task_definitions/base_spec.rb
|
196
195
|
- spec/lib/lokalise_manager/task_definitions/exporter_spec.rb
|
197
196
|
- spec/lib/lokalise_manager/task_definitions/importer_spec.rb
|
198
197
|
- spec/lib/lokalise_manager_spec.rb
|
198
|
+
- spec/lib/utils/hash_utils_spec.rb
|
199
199
|
- spec/spec_helper.rb
|
200
200
|
- spec/support/file_manager.rb
|
201
201
|
- spec/support/spec_addons.rb
|
@@ -203,7 +203,8 @@ files:
|
|
203
203
|
homepage: https://github.com/bodrovis/lokalise_manager
|
204
204
|
licenses:
|
205
205
|
- MIT
|
206
|
-
metadata:
|
206
|
+
metadata:
|
207
|
+
rubygems_mfa_required: 'true'
|
207
208
|
post_install_message:
|
208
209
|
rdoc_options: []
|
209
210
|
require_paths:
|
@@ -219,17 +220,17 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
219
220
|
- !ruby/object:Gem::Version
|
220
221
|
version: '0'
|
221
222
|
requirements: []
|
222
|
-
rubygems_version: 3.2.
|
223
|
+
rubygems_version: 3.2.31
|
223
224
|
signing_key:
|
224
225
|
specification_version: 4
|
225
226
|
summary: Lokalise integration for Ruby
|
226
227
|
test_files:
|
227
|
-
- spec/lib/ext/hash_spec.rb
|
228
228
|
- spec/lib/lokalise_manager/global_config_spec.rb
|
229
229
|
- spec/lib/lokalise_manager/task_definitions/base_spec.rb
|
230
230
|
- spec/lib/lokalise_manager/task_definitions/exporter_spec.rb
|
231
231
|
- spec/lib/lokalise_manager/task_definitions/importer_spec.rb
|
232
232
|
- spec/lib/lokalise_manager_spec.rb
|
233
|
+
- spec/lib/utils/hash_utils_spec.rb
|
233
234
|
- spec/spec_helper.rb
|
234
235
|
- spec/support/file_manager.rb
|
235
236
|
- spec/support/spec_addons.rb
|
data/lib/ext/hash.rb
DELETED
@@ -1,22 +0,0 @@
|
|
1
|
-
# frozen_string_literal: true
|
2
|
-
|
3
|
-
# Taken from https://github.com/rails/rails/blob/83217025a171593547d1268651b446d3533e2019/activesupport/lib/active_support/core_ext/hash/deep_merge.rb
|
4
|
-
|
5
|
-
class Hash
|
6
|
-
def deep_merge(other_hash, &block)
|
7
|
-
dup.deep_merge!(other_hash, &block)
|
8
|
-
end
|
9
|
-
|
10
|
-
# Same as +deep_merge+, but modifies +self+.
|
11
|
-
def deep_merge!(other_hash, &block)
|
12
|
-
merge!(other_hash) do |key, this_val, other_val|
|
13
|
-
if this_val.is_a?(Hash) && other_val.is_a?(Hash)
|
14
|
-
this_val.deep_merge(other_val, &block)
|
15
|
-
elsif block
|
16
|
-
yield(key, this_val, other_val)
|
17
|
-
else
|
18
|
-
other_val
|
19
|
-
end
|
20
|
-
end
|
21
|
-
end
|
22
|
-
end
|