mobility 1.0.0.rc1 → 1.0.4
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 +4 -4
- checksums.yaml.gz.sig +2 -3
- data.tar.gz.sig +0 -0
- data/CHANGELOG.md +50 -5
- data/Gemfile +5 -16
- data/Gemfile.lock +5 -5
- data/README.md +21 -26
- data/lib/mobility.rb +2 -2
- data/lib/mobility/plugin.rb +2 -2
- data/lib/mobility/plugins/active_record/query.rb +5 -5
- data/lib/mobility/plugins/active_record/uniqueness_validation.rb +4 -0
- data/lib/mobility/plugins/backend.rb +9 -8
- data/lib/mobility/version.rb +2 -2
- data/lib/rails/generators/mobility/templates/create_string_translations.rb +0 -1
- data/lib/rails/generators/mobility/templates/create_text_translations.rb +0 -1
- data/lib/rails/generators/mobility/templates/initializer.rb +9 -1
- metadata +11 -5
- metadata.gz.sig +0 -0
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: 4e614b2354ec6cfbc7d4b3d946beabc5214904c21432cceb0b78530ca389184e
|
|
4
|
+
data.tar.gz: fa9e5cf7097b92a203e38e07617254e42d3bc11f58254b4b13b359639b70902a
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: ef1653434cb1e303f0496c9fecd810ea2d2772009dca94358949e293157e6f2a58341867ad6c117a5dc91469002acdd80b969d442126a7df95ea49f667360cc8
|
|
7
|
+
data.tar.gz: dceae9f7039d21bcd5d68a0a2f54515b39c0b8ab871c7386fe0834a88f973e91af5c27f48a85cdfe0d6479a8291a976abfee2208e16a116c4d75b03db54a8f87
|
checksums.yaml.gz.sig
CHANGED
|
@@ -1,3 +1,2 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
�Օ�F?#�D�-��*�^�M�ɼ�̨��{�~��la�eY�f7 }o�<������Mye,H^��o@�^~ۦE�V0���aD��u���
|
|
1
|
+
z�UE-F��h9d8����CF�`3���F���rXp4�S;)���ߴ>]�B��o����Wn Y��"�!\�snE��NھH�zp��!C4ɦ�2�Ջ�s��n����=g�CV��i��b6��E�S��F���t+*��r|�-gd[��pغaCq���]�iZy��L�<u%�smШT��*~sk�}:�S T���Լ��i)�y,�V�Vc���O;��.g����֮tvc�w�"V��]
|
|
2
|
+
m~k��?��,�{����G@�������]m�Ň?F&���VN�� �PdSޒ�dG�ah����y�*\���|p�ɒ�+��W�P���:�;�G��䎄)jv�3�]5yER��<<|��l��A
|
data.tar.gz.sig
CHANGED
|
Binary file
|
data/CHANGELOG.md
CHANGED
|
@@ -1,22 +1,67 @@
|
|
|
1
1
|
# Mobility Changelog
|
|
2
2
|
|
|
3
|
+
### Unreleased
|
|
4
|
+
- Remove `Mobility::Plugins::Attributes#each`
|
|
5
|
+
([#475](https://github.com/shioyama/mobility/pull/475))
|
|
6
|
+
- Add public method `Mobility::Plugins::ActiveRecord::Query.build_query`
|
|
7
|
+
([#471](https://github.com/shioyama/mobility/pull/471))
|
|
8
|
+
- Allow setting locale per node in query block
|
|
9
|
+
([#479](https://github.com/shioyama/mobility/pull/479))
|
|
10
|
+
- Add `Mobility.validate_locale!`
|
|
11
|
+
([#479](https://github.com/shioyama/mobility/pull/479))
|
|
12
|
+
- Call after_destroy in setup block to delete associated translations
|
|
13
|
+
([#487](https://github.com/shioyama/mobility/pull/487))
|
|
14
|
+
- Add key, value and belongs_to options to key-value backend
|
|
15
|
+
([#488](https://github.com/shioyama/mobility/pull/488)) thanks
|
|
16
|
+
[sedubois](https://github.com/sedubois)!
|
|
17
|
+
|
|
3
18
|
## 1.0
|
|
4
19
|
|
|
5
|
-
1.0 is a rewrite of many internals of the gem. Please see the [wiki page on
|
|
20
|
+
1.0 is a rewrite of many internals of the gem. Please see the [wiki page on
|
|
21
|
+
v1.0](https://github.com/shioyama/mobility/wiki/Introduction-to-Mobility-v1.0)
|
|
22
|
+
for more details on how to upgrade.
|
|
23
|
+
|
|
24
|
+
### 1.0.4
|
|
25
|
+
- Correctly override default backend options, fixes
|
|
26
|
+
[#492](https://github.com/shioyama/mobility/issues/492)
|
|
27
|
+
([#495](https://github.com/shioyama/mobility/pull/495))
|
|
28
|
+
|
|
29
|
+
### 1.0.3
|
|
30
|
+
- Fix `Mobility.default_backend`
|
|
31
|
+
([#497](https://github.com/shioyama/mobility/pull/497))
|
|
32
|
+
|
|
33
|
+
### 1.0.2
|
|
34
|
+
|
|
35
|
+
### 1.0.1
|
|
36
|
+
|
|
37
|
+
- Make `Mobility::Plugins::ActiveRecord::Query::VirtualRow` and
|
|
38
|
+
`Mobility::Plugins::ActiveRecord::Query::QueryExtension`
|
|
39
|
+
([#471](https://github.com/shioyama/mobility/pull/471)) public
|
|
40
|
+
- Fix typo in initializer template
|
|
41
|
+
([#474](https://github.com/shioyama/mobility/pull/474))
|
|
42
|
+
|
|
43
|
+
### 1.0.0
|
|
44
|
+
|
|
45
|
+
- Fix setting a locale from Rails config
|
|
46
|
+
([#468](https://github.com/shioyama/mobility/pull/468)) thanks
|
|
47
|
+
[sergey-alekseev](https://github.com/sergey-alekseev)!
|
|
48
|
+
- Fixes validations with validates_uniqueness_of
|
|
49
|
+
([#470](https://github.com/shioyama/mobility/pull/470)) thanks
|
|
50
|
+
[artplan1](https://github.com/artplan1)!
|
|
6
51
|
|
|
7
|
-
|
|
52
|
+
### 1.0.0.rc1 (pre-release)
|
|
8
53
|
|
|
9
54
|
- Remove `Mobility::ActiveRecord`, `Mobility::Sequel` and `Mobility::Arel`, and
|
|
10
55
|
general cleanup ([#464](https://github.com/shioyama/mobility/pull/464))
|
|
11
56
|
|
|
12
|
-
|
|
57
|
+
### 1.0.0.beta2 (pre-release)
|
|
13
58
|
|
|
14
59
|
- Refactor attributes & backend plugins and make `mobility_attributes` public
|
|
15
60
|
([#462](https://github.com/shioyama/mobility/pull/462))
|
|
16
61
|
- Make attribute_methods plugin depend on attributes
|
|
17
62
|
([#461](https://github.com/shioyama/mobility/pull/461))
|
|
18
63
|
|
|
19
|
-
|
|
64
|
+
### 1.0.0.beta1 (pre-release)
|
|
20
65
|
|
|
21
66
|
- Remove `Mobility::Backend#apply_plugin`
|
|
22
67
|
([#454](https://github.com/shioyama/mobility/pull/454))
|
|
@@ -27,7 +72,7 @@
|
|
|
27
72
|
- Fix Ruby 2.7 deprecation warnings
|
|
28
73
|
([#460](https://github.com/shioyama/mobility/pull/460))
|
|
29
74
|
|
|
30
|
-
|
|
75
|
+
### 1.0.0.alpha (pre-release)
|
|
31
76
|
|
|
32
77
|
- Default fallbacks plugin to `true` when enabled
|
|
33
78
|
([#447](https://github.com/shioyama/mobility/pull/447))
|
data/Gemfile
CHANGED
|
@@ -8,20 +8,11 @@ orm, orm_version = ENV['ORM'], ENV['ORM_VERSION']
|
|
|
8
8
|
group :development, :test do
|
|
9
9
|
case orm
|
|
10
10
|
when 'active_record'
|
|
11
|
-
orm_version ||= '6.
|
|
11
|
+
orm_version ||= '6.1'
|
|
12
12
|
case orm_version
|
|
13
|
-
when '4.2'
|
|
14
|
-
gem 'activerecord',
|
|
15
|
-
when '
|
|
16
|
-
gem 'activerecord', '>= 5.0', '< 5.1'
|
|
17
|
-
when '5.1'
|
|
18
|
-
gem 'activerecord', '>= 5.1', '< 5.2'
|
|
19
|
-
when '5.2'
|
|
20
|
-
gem 'activerecord', '>= 5.2.0', '< 5.3'
|
|
21
|
-
gem 'railties', '>= 5.2.0.rc2', '< 5.3'
|
|
22
|
-
when '6.0'
|
|
23
|
-
gem 'activerecord', '>= 6.0.0', '< 6.1'
|
|
24
|
-
when '6.1'
|
|
13
|
+
when '4.2', '5.0', '5.1', '5.2', '6.0', '6.1'
|
|
14
|
+
gem 'activerecord', "~> #{orm_version}.0"
|
|
15
|
+
when '6.2'
|
|
25
16
|
git 'https://github.com/rails/rails.git' do
|
|
26
17
|
gem 'activerecord'
|
|
27
18
|
gem 'activesupport'
|
|
@@ -32,10 +23,8 @@ group :development, :test do
|
|
|
32
23
|
when 'sequel'
|
|
33
24
|
orm_version ||= '5'
|
|
34
25
|
case orm_version
|
|
35
|
-
when '4'
|
|
36
|
-
gem 'sequel', '>= 4.46.0', '< 5.0'
|
|
37
26
|
when '5'
|
|
38
|
-
gem 'sequel',
|
|
27
|
+
gem 'sequel', "~> #{orm_version}.0"
|
|
39
28
|
else
|
|
40
29
|
raise ArgumentError, 'Invalid Sequel version'
|
|
41
30
|
end
|
data/Gemfile.lock
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
PATH
|
|
2
2
|
remote: .
|
|
3
3
|
specs:
|
|
4
|
-
mobility (1.0.
|
|
4
|
+
mobility (1.0.1)
|
|
5
5
|
i18n (>= 0.6.10, < 2)
|
|
6
6
|
request_store (~> 1.0)
|
|
7
7
|
|
|
@@ -48,7 +48,7 @@ GEM
|
|
|
48
48
|
rb-inotify (~> 0.9, >= 0.9.10)
|
|
49
49
|
lumberjack (1.2.8)
|
|
50
50
|
method_source (1.0.0)
|
|
51
|
-
minitest (5.14.
|
|
51
|
+
minitest (5.14.3)
|
|
52
52
|
nenv (0.3.0)
|
|
53
53
|
notiffany (0.1.3)
|
|
54
54
|
nenv (~> 0.1)
|
|
@@ -83,16 +83,16 @@ GEM
|
|
|
83
83
|
shellany (0.0.1)
|
|
84
84
|
thor (1.0.1)
|
|
85
85
|
thread_safe (0.3.6)
|
|
86
|
-
tzinfo (1.2.
|
|
86
|
+
tzinfo (1.2.9)
|
|
87
87
|
thread_safe (~> 0.1)
|
|
88
88
|
yard (0.9.25)
|
|
89
|
-
zeitwerk (2.4.
|
|
89
|
+
zeitwerk (2.4.2)
|
|
90
90
|
|
|
91
91
|
PLATFORMS
|
|
92
92
|
ruby
|
|
93
93
|
|
|
94
94
|
DEPENDENCIES
|
|
95
|
-
activerecord (
|
|
95
|
+
activerecord (~> 6.0.0)
|
|
96
96
|
benchmark-ips
|
|
97
97
|
database_cleaner (~> 1.5, >= 1.5.3)
|
|
98
98
|
guard-rspec
|
data/README.md
CHANGED
|
@@ -12,11 +12,9 @@ Mobility
|
|
|
12
12
|
[docs]: http://www.rubydoc.info/gems/mobility
|
|
13
13
|
[wiki]: https://github.com/shioyama/mobility/wiki
|
|
14
14
|
|
|
15
|
-
**This is the readme for
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
readme on the [0-8-stable
|
|
19
|
-
branch](https://github.com/shioyama/mobility/tree/0-8-stable).**
|
|
15
|
+
**This is the readme for version 1.0 of Mobility. If you are using an earlier
|
|
16
|
+
version (0.8.x or earlier), you probably want the readme on the [0-8
|
|
17
|
+
branch](https://github.com/shioyama/mobility/tree/0-8).**
|
|
20
18
|
|
|
21
19
|
Mobility is a gem for storing and retrieving translations as attributes on a
|
|
22
20
|
class. These translations could be the content of blog posts, captions on
|
|
@@ -58,12 +56,9 @@ To use the latest pre-version of Mobility 1.0, add this line to your
|
|
|
58
56
|
application's Gemfile:
|
|
59
57
|
|
|
60
58
|
```ruby
|
|
61
|
-
gem 'mobility', '~> 1.0.
|
|
59
|
+
gem 'mobility', '~> 1.0.4'
|
|
62
60
|
```
|
|
63
61
|
|
|
64
|
-
For the latest stable version of Mobility, see the readme on the
|
|
65
|
-
[0-8-stable](https://github.com/shioyama/mobility/tree/0-8-stable) branch.
|
|
66
|
-
|
|
67
62
|
### ActiveRecord (Rails)
|
|
68
63
|
|
|
69
64
|
Requirements:
|
|
@@ -92,8 +87,8 @@ which looks something like this:
|
|
|
92
87
|
|
|
93
88
|
```ruby
|
|
94
89
|
Mobility.configure do
|
|
95
|
-
# PLUGINS
|
|
96
90
|
|
|
91
|
+
# PLUGINS
|
|
97
92
|
plugins do
|
|
98
93
|
backend :key_value
|
|
99
94
|
|
|
@@ -107,15 +102,15 @@ Mobility.configure do
|
|
|
107
102
|
end
|
|
108
103
|
```
|
|
109
104
|
|
|
110
|
-
Each method call inside the block passed to `
|
|
111
|
-
|
|
105
|
+
Each method call inside the block passed to `plugins` declares a plugin, along
|
|
106
|
+
with an optional default. To use a different default backend, you can
|
|
112
107
|
change the default passed to the `backend` plugin, like this:
|
|
113
108
|
|
|
114
109
|
```diff
|
|
115
|
-
Mobility.configure do
|
|
116
|
-
# PLUGINS
|
|
110
|
+
Mobility.configure do
|
|
117
111
|
|
|
118
|
-
|
|
112
|
+
# PLUGINS
|
|
113
|
+
plugins do
|
|
119
114
|
- backend :key_value
|
|
120
115
|
+ backend :table
|
|
121
116
|
```
|
|
@@ -126,10 +121,10 @@ You can also set defaults for backend-specific options. Below, we set the
|
|
|
126
121
|
default `type` option for the KeyValue backend to `:string`.
|
|
127
122
|
|
|
128
123
|
```diff
|
|
129
|
-
Mobility.configure do
|
|
130
|
-
# PLUGINS
|
|
124
|
+
Mobility.configure do
|
|
131
125
|
|
|
132
|
-
|
|
126
|
+
# PLUGINS
|
|
127
|
+
plugins do
|
|
133
128
|
- backend :key_value
|
|
134
129
|
+ backend :key_value, type: :string
|
|
135
130
|
end
|
|
@@ -150,7 +145,7 @@ Requirements:
|
|
|
150
145
|
When configuring Mobility, ensure that you include the `sequel` plugin:
|
|
151
146
|
|
|
152
147
|
```diff
|
|
153
|
-
|
|
148
|
+
plugins do
|
|
154
149
|
backend :key_value
|
|
155
150
|
|
|
156
151
|
- active_record
|
|
@@ -297,7 +292,7 @@ accessors" in Mobility, and can be enabled by including the `locale_accessors`
|
|
|
297
292
|
plugin, with a default set of accessors:
|
|
298
293
|
|
|
299
294
|
```diff
|
|
300
|
-
|
|
295
|
+
plugins do
|
|
301
296
|
# ...
|
|
302
297
|
+ locale_accessors [:en, :ja]
|
|
303
298
|
```
|
|
@@ -345,7 +340,7 @@ defined for a given locale.)
|
|
|
345
340
|
Ensure the plugin is enabled:
|
|
346
341
|
|
|
347
342
|
```diff
|
|
348
|
-
|
|
343
|
+
plugins do
|
|
349
344
|
# ...
|
|
350
345
|
+ fallthrough_accessors
|
|
351
346
|
```
|
|
@@ -470,7 +465,7 @@ Mobility offers basic support for translation fallbacks. First, enable the
|
|
|
470
465
|
`fallbacks` plugin:
|
|
471
466
|
|
|
472
467
|
```diff
|
|
473
|
-
|
|
468
|
+
plugins do
|
|
474
469
|
# ...
|
|
475
470
|
+ fallbacks
|
|
476
471
|
+ locale_accessors
|
|
@@ -579,7 +574,7 @@ fallbacks](https://github.com/svenfuchs/i18n/wiki/Fallbacks).
|
|
|
579
574
|
Another option is to assign a default value, using the `default` plugin:
|
|
580
575
|
|
|
581
576
|
```diff
|
|
582
|
-
|
|
577
|
+
plugins do
|
|
583
578
|
# ...
|
|
584
579
|
+ default 'foo'
|
|
585
580
|
```
|
|
@@ -632,7 +627,7 @@ have enabled an ORM plugin (either `active_record` or `sequel`), since the
|
|
|
632
627
|
dirty plugin will depend on one of these being enabled.
|
|
633
628
|
|
|
634
629
|
```diff
|
|
635
|
-
|
|
630
|
+
plugins do
|
|
636
631
|
# ...
|
|
637
632
|
active_record
|
|
638
633
|
+ dirty
|
|
@@ -722,7 +717,7 @@ can be quickly retrieved again. The cache plugin is included in the default
|
|
|
722
717
|
configuration created by the install generator:
|
|
723
718
|
|
|
724
719
|
```diff
|
|
725
|
-
|
|
720
|
+
plugins do
|
|
726
721
|
# ...
|
|
727
722
|
+ cache
|
|
728
723
|
```
|
|
@@ -752,7 +747,7 @@ this feature, include the `query` plugin, and ensure you also have an ORM
|
|
|
752
747
|
plugin enabled (`active_record` or `sequel`):
|
|
753
748
|
|
|
754
749
|
```diff
|
|
755
|
-
|
|
750
|
+
plugins do
|
|
756
751
|
# ...
|
|
757
752
|
active_record
|
|
758
753
|
+ query
|
data/lib/mobility.rb
CHANGED
|
@@ -107,7 +107,7 @@ module Mobility
|
|
|
107
107
|
# Alias to default backend defined on *translations_class+.
|
|
108
108
|
# @return [Symbol,Class]
|
|
109
109
|
def default_backend
|
|
110
|
-
translations_class.defaults[:backend]
|
|
110
|
+
translations_class.defaults[:backend]&.first
|
|
111
111
|
end
|
|
112
112
|
|
|
113
113
|
# Configure Mobility
|
|
@@ -218,7 +218,7 @@ module Mobility
|
|
|
218
218
|
# methods (in LocaleAccessors) than is really necessary.
|
|
219
219
|
def available_locales
|
|
220
220
|
if defined?(Rails) && Rails.application
|
|
221
|
-
Rails.application.config.i18n.available_locales || I18n.available_locales
|
|
221
|
+
Rails.application.config.i18n.available_locales&.map(&:to_sym) || I18n.available_locales
|
|
222
222
|
else
|
|
223
223
|
I18n.available_locales
|
|
224
224
|
end
|
data/lib/mobility/plugin.rb
CHANGED
|
@@ -121,8 +121,8 @@ Also includes a +configure+ class method to apply plugins to a pluggable
|
|
|
121
121
|
# Does this class include all plugins this plugin depends (directly) on?
|
|
122
122
|
# @param [Class] klass Pluggable class
|
|
123
123
|
def dependencies_satisfied?(klass)
|
|
124
|
-
|
|
125
|
-
(
|
|
124
|
+
plugin_keys = klass.included_plugins.map { |plugin| Plugins.lookup_name(plugin) }
|
|
125
|
+
(dependencies.keys - plugin_keys).none?
|
|
126
126
|
end
|
|
127
127
|
|
|
128
128
|
# Specifies a dependency of this plugin.
|
|
@@ -67,9 +67,9 @@ enabled for any one attribute on the model.
|
|
|
67
67
|
end
|
|
68
68
|
end
|
|
69
69
|
|
|
70
|
-
#
|
|
71
|
-
#
|
|
72
|
-
#
|
|
70
|
+
# Creates a "clean room" for manipulating translated attribute nodes in
|
|
71
|
+
# an instance-eval'ed block. Inspired by Sequel's (much more
|
|
72
|
+
# sophisticated) virtual rows.
|
|
73
73
|
class VirtualRow < BasicObject
|
|
74
74
|
attr_reader :__backends
|
|
75
75
|
|
|
@@ -108,7 +108,7 @@ enabled for any one attribute on the model.
|
|
|
108
108
|
end
|
|
109
109
|
end
|
|
110
110
|
end
|
|
111
|
-
private_constant :QueryMethod
|
|
111
|
+
private_constant :QueryMethod
|
|
112
112
|
|
|
113
113
|
module QueryExtension
|
|
114
114
|
def where!(opts, *rest)
|
|
@@ -273,7 +273,7 @@ enabled for any one attribute on the model.
|
|
|
273
273
|
end
|
|
274
274
|
end
|
|
275
275
|
|
|
276
|
-
private_constant :
|
|
276
|
+
private_constant :FindByMethods
|
|
277
277
|
end
|
|
278
278
|
|
|
279
279
|
class MissingBackend < Mobility::Error; end
|
|
@@ -10,6 +10,10 @@ module Mobility
|
|
|
10
10
|
klass.class_eval do
|
|
11
11
|
unless const_defined?(:UniquenessValidator, false)
|
|
12
12
|
self.const_set(:UniquenessValidator, Class.new(UniquenessValidator))
|
|
13
|
+
|
|
14
|
+
def self.validates_uniqueness_of(*attr_names)
|
|
15
|
+
validates_with(UniquenessValidator, _merge_attributes(attr_names))
|
|
16
|
+
end
|
|
13
17
|
end
|
|
14
18
|
end
|
|
15
19
|
end
|
|
@@ -33,13 +33,6 @@ Defines:
|
|
|
33
33
|
def initialize(*args, **original_options)
|
|
34
34
|
super
|
|
35
35
|
|
|
36
|
-
# Validate that the default backend from config has valid keys
|
|
37
|
-
if (default = self.class.defaults[:backend])
|
|
38
|
-
name, backend_options = default
|
|
39
|
-
extra_keys = backend_options.keys - backend.valid_keys
|
|
40
|
-
raise InvalidOptionKey, "These are not valid #{name} backend keys: #{extra_keys.join(', ')}." unless extra_keys.empty?
|
|
41
|
-
end
|
|
42
|
-
|
|
43
36
|
include InstanceMethods
|
|
44
37
|
end
|
|
45
38
|
|
|
@@ -87,7 +80,7 @@ Defines:
|
|
|
87
80
|
|
|
88
81
|
case options[:backend]
|
|
89
82
|
when String, Symbol, Class
|
|
90
|
-
@backend, @backend_options = options[:backend], options
|
|
83
|
+
@backend, @backend_options = options[:backend], options.dup
|
|
91
84
|
when Array
|
|
92
85
|
@backend, @backend_options = options[:backend]
|
|
93
86
|
@backend_options = @backend_options.merge(original_options)
|
|
@@ -105,6 +98,14 @@ Defines:
|
|
|
105
98
|
def validate_options(options)
|
|
106
99
|
return super unless backend
|
|
107
100
|
super(options.slice(*(options.keys - backend.valid_keys)))
|
|
101
|
+
|
|
102
|
+
# Validate that the default backend from config has valid keys, or if
|
|
103
|
+
# it is overridden by an array input that the array has valid keys.
|
|
104
|
+
if options[:backend].is_a?(Array)
|
|
105
|
+
name, backend_options = options[:backend]
|
|
106
|
+
extra_keys = backend_options.keys - backend.valid_keys
|
|
107
|
+
raise InvalidOptionKey, "These are not valid #{name} backend keys: #{extra_keys.join(', ')}." unless extra_keys.empty?
|
|
108
|
+
end
|
|
108
109
|
end
|
|
109
110
|
|
|
110
111
|
# Override default argument-handling in DSL to store kwargs passed along
|
data/lib/mobility/version.rb
CHANGED
|
@@ -1,5 +1,4 @@
|
|
|
1
1
|
Mobility.configure do
|
|
2
|
-
|
|
3
2
|
# PLUGINS
|
|
4
3
|
plugins do
|
|
5
4
|
# Backend
|
|
@@ -104,5 +103,14 @@ Mobility.configure do
|
|
|
104
103
|
#
|
|
105
104
|
# Or define specific defaults by uncommenting line below
|
|
106
105
|
# locale_accessors [:en, :ja]
|
|
106
|
+
|
|
107
|
+
# Attribute Methods
|
|
108
|
+
#
|
|
109
|
+
# Adds translated attributes to +attributes+ hash, and defines methods
|
|
110
|
+
# +translated_attributes+ and +untranslated_attributes+ which return hashes
|
|
111
|
+
# with translated and untranslated attributes, respectively. Be aware that
|
|
112
|
+
# this plugin can create conflicts with other gems.
|
|
113
|
+
#
|
|
114
|
+
# attribute_methods
|
|
107
115
|
end
|
|
108
116
|
end
|
metadata
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: mobility
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 1.0.
|
|
4
|
+
version: 1.0.4
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- Chris Salzberg
|
|
@@ -34,7 +34,7 @@ cert_chain:
|
|
|
34
34
|
gSQml7TqcC6dZRsZRwYqzD9kUwdAJoCqno2CBUKs2l0yQAjFT36lRrVJznb7uWwa
|
|
35
35
|
xpPFnsrtyaZW6Dty8TSG3qzmeGpmpIotA8x1VA==
|
|
36
36
|
-----END CERTIFICATE-----
|
|
37
|
-
date:
|
|
37
|
+
date: 2021-01-31 00:00:00.000000000 Z
|
|
38
38
|
dependencies:
|
|
39
39
|
- !ruby/object:Gem::Dependency
|
|
40
40
|
name: request_store
|
|
@@ -247,7 +247,13 @@ metadata:
|
|
|
247
247
|
homepage_uri: https://github.com/shioyama/mobility
|
|
248
248
|
source_code_uri: https://github.com/shioyama/mobility
|
|
249
249
|
changelog_uri: https://github.com/shioyama/mobility/blob/master/CHANGELOG.md
|
|
250
|
-
post_install_message:
|
|
250
|
+
post_install_message: |2
|
|
251
|
+
|
|
252
|
+
Warning: Mobility v1.0 includes backwards-incompatible changes (mostly around configuration).
|
|
253
|
+
|
|
254
|
+
If you are upgrading from an earlier version, please see:
|
|
255
|
+
- https://github.com/shioyama/mobility/releases/tag/v1.0.0
|
|
256
|
+
- https://github.com/shioyama/mobility/wiki/Introduction-to-Mobility-v1.0
|
|
251
257
|
rdoc_options: []
|
|
252
258
|
require_paths:
|
|
253
259
|
- lib
|
|
@@ -258,9 +264,9 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
|
258
264
|
version: '2.5'
|
|
259
265
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
|
260
266
|
requirements:
|
|
261
|
-
- - "
|
|
267
|
+
- - ">="
|
|
262
268
|
- !ruby/object:Gem::Version
|
|
263
|
-
version:
|
|
269
|
+
version: '0'
|
|
264
270
|
requirements: []
|
|
265
271
|
rubygems_version: 3.1.2
|
|
266
272
|
signing_key:
|
metadata.gz.sig
CHANGED
|
Binary file
|