mobility 0.1.20 → 0.2.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 +4 -4
- checksums.yaml.gz.sig +0 -0
- data.tar.gz.sig +2 -0
- data/CHANGELOG.md +17 -0
- data/CONTRIBUTING.md +55 -0
- data/Gemfile +2 -0
- data/Gemfile.lock +2 -56
- data/README.md +64 -15
- data/Rakefile +17 -17
- data/lib/mobility.rb +43 -40
- data/lib/mobility/active_model.rb +0 -1
- data/lib/mobility/active_model/backend_resetter.rb +1 -1
- data/lib/mobility/active_record.rb +8 -15
- data/lib/mobility/active_record/backend_resetter.rb +2 -0
- data/lib/mobility/active_record/model_translation.rb +1 -1
- data/lib/mobility/active_record/string_translation.rb +2 -0
- data/lib/mobility/active_record/text_translation.rb +2 -0
- data/lib/mobility/attributes.rb +74 -71
- data/lib/mobility/backend.rb +64 -25
- data/lib/mobility/backend/orm_delegator.rb +17 -7
- data/lib/mobility/backend/stringify_locale.rb +18 -0
- data/lib/mobility/backend_resetter.rb +8 -5
- data/lib/mobility/backends.rb +4 -0
- data/lib/mobility/backends/active_record.rb +20 -0
- data/lib/mobility/{backend → backends}/active_record/column.rb +25 -13
- data/lib/mobility/{backend → backends}/active_record/column/query_methods.rb +5 -3
- data/lib/mobility/backends/active_record/hstore.rb +29 -0
- data/lib/mobility/{backend → backends}/active_record/hstore/query_methods.rb +2 -2
- data/lib/mobility/{backend → backends}/active_record/jsonb.rb +6 -6
- data/lib/mobility/{backend → backends}/active_record/jsonb/query_methods.rb +4 -2
- data/lib/mobility/{backend → backends}/active_record/key_value.rb +10 -44
- data/lib/mobility/{backend → backends}/active_record/key_value/query_methods.rb +4 -2
- data/lib/mobility/{backend/active_record/hash_valued.rb → backends/active_record/pg_hash.rb} +13 -21
- data/lib/mobility/{backend → backends}/active_record/query_methods.rb +2 -2
- data/lib/mobility/{backend → backends}/active_record/serialized.rb +12 -28
- data/lib/mobility/{backend → backends}/active_record/serialized/query_methods.rb +5 -8
- data/lib/mobility/{backend → backends}/active_record/table.rb +11 -60
- data/lib/mobility/{backend → backends}/active_record/table/query_methods.rb +5 -3
- data/lib/mobility/{backend → backends}/column.rb +8 -4
- data/lib/mobility/backends/hash_valued.rb +29 -0
- data/lib/mobility/{backend → backends}/hstore.rb +4 -4
- data/lib/mobility/{backend → backends}/jsonb.rb +4 -4
- data/lib/mobility/backends/key_value.rb +111 -0
- data/lib/mobility/{backend → backends}/null.rb +4 -4
- data/lib/mobility/backends/sequel.rb +20 -0
- data/lib/mobility/backends/sequel/column.rb +52 -0
- data/lib/mobility/{backend → backends}/sequel/column/query_methods.rb +5 -3
- data/lib/mobility/backends/sequel/hstore.rb +29 -0
- data/lib/mobility/{backend → backends}/sequel/hstore/query_methods.rb +4 -3
- data/lib/mobility/{backend → backends}/sequel/jsonb.rb +6 -6
- data/lib/mobility/{backend → backends}/sequel/jsonb/query_methods.rb +4 -3
- data/lib/mobility/{backend → backends}/sequel/key_value.rb +28 -39
- data/lib/mobility/{backend → backends}/sequel/key_value/query_methods.rb +4 -5
- data/lib/mobility/backends/sequel/pg_hash.rb +46 -0
- data/lib/mobility/{backend → backends}/sequel/postgres_query_methods.rb +1 -2
- data/lib/mobility/{backend → backends}/sequel/query_methods.rb +6 -4
- data/lib/mobility/{backend → backends}/sequel/serialized.rb +17 -38
- data/lib/mobility/backends/sequel/serialized/query_methods.rb +17 -0
- data/lib/mobility/{backend → backends}/sequel/table.rb +29 -60
- data/lib/mobility/{backend → backends}/sequel/table/query_methods.rb +5 -3
- data/lib/mobility/{backend → backends}/serialized.rb +27 -5
- data/lib/mobility/{backend → backends}/table.rb +69 -29
- data/lib/mobility/configuration.rb +40 -0
- data/lib/mobility/{orm.rb → loaded.rb} +0 -0
- data/lib/mobility/plugins.rb +35 -0
- data/lib/mobility/plugins/active_model.rb +6 -0
- data/lib/mobility/plugins/active_model/dirty.rb +81 -0
- data/lib/mobility/plugins/active_record.rb +6 -0
- data/lib/mobility/plugins/active_record/dirty.rb +59 -0
- data/lib/mobility/plugins/cache.rb +54 -0
- data/lib/mobility/plugins/cache/translation_cacher.rb +40 -0
- data/lib/mobility/plugins/default.rb +73 -0
- data/lib/mobility/plugins/dirty.rb +61 -0
- data/lib/mobility/{backend → plugins}/fallbacks.rb +36 -31
- data/lib/mobility/plugins/fallthrough_accessors.rb +66 -0
- data/lib/mobility/plugins/locale_accessors.rb +84 -0
- data/lib/mobility/{backend → plugins}/presence.rb +15 -6
- data/lib/mobility/plugins/sequel.rb +6 -0
- data/lib/mobility/plugins/sequel/dirty.rb +59 -0
- data/lib/mobility/sequel.rb +5 -14
- data/lib/mobility/sequel/backend_resetter.rb +4 -6
- data/lib/mobility/sequel/column_changes.rb +4 -4
- data/lib/mobility/sequel/model_translation.rb +1 -1
- data/lib/mobility/sequel/string_translation.rb +2 -0
- data/lib/mobility/sequel/text_translation.rb +2 -0
- data/lib/mobility/translates.rb +1 -5
- data/lib/mobility/util.rb +126 -0
- data/lib/mobility/version.rb +1 -1
- data/lib/mobility/wrapper.rb +1 -1
- data/lib/rails/generators/mobility/translations_generator.rb +7 -3
- metadata +85 -55
- metadata.gz.sig +0 -0
- data/lib/mobility/backend/active_model.rb +0 -7
- data/lib/mobility/backend/active_model/dirty.rb +0 -95
- data/lib/mobility/backend/active_record.rb +0 -29
- data/lib/mobility/backend/active_record/dirty.rb +0 -54
- data/lib/mobility/backend/active_record/hstore.rb +0 -29
- data/lib/mobility/backend/cache.rb +0 -117
- data/lib/mobility/backend/dirty.rb +0 -38
- data/lib/mobility/backend/key_value.rb +0 -85
- data/lib/mobility/backend/sequel.rb +0 -29
- data/lib/mobility/backend/sequel/column.rb +0 -39
- data/lib/mobility/backend/sequel/dirty.rb +0 -57
- data/lib/mobility/backend/sequel/hash_valued.rb +0 -51
- data/lib/mobility/backend/sequel/hstore.rb +0 -29
- data/lib/mobility/backend/sequel/serialized/query_methods.rb +0 -20
- data/lib/mobility/core_ext/object.rb +0 -30
- data/lib/mobility/core_ext/string.rb +0 -16
- data/lib/mobility/fallthrough_accessors.rb +0 -57
- data/lib/mobility/locale_accessors.rb +0 -55
data/lib/mobility/sequel.rb
CHANGED
|
@@ -5,22 +5,13 @@ Module loading Sequel-specific classes for Mobility models.
|
|
|
5
5
|
|
|
6
6
|
=end
|
|
7
7
|
module Sequel
|
|
8
|
-
autoload :BackendResetter, "mobility/sequel/backend_resetter"
|
|
9
|
-
autoload :ColumnChanges, "mobility/sequel/column_changes"
|
|
10
|
-
autoload :ModelTranslation, "mobility/sequel/model_translation"
|
|
11
|
-
autoload :StringTranslation, "mobility/sequel/string_translation"
|
|
12
|
-
autoload :TextTranslation, "mobility/sequel/text_translation"
|
|
13
|
-
autoload :Translation, "mobility/sequel/translation"
|
|
14
|
-
|
|
15
8
|
def self.included(model_class)
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
# @return [Sequel::Dataset] dataset extended with Mobility query methods.
|
|
21
|
-
define_method ::Mobility.query_method do
|
|
22
|
-
dataset
|
|
9
|
+
query_method = Module.new do
|
|
10
|
+
define_method Mobility.query_method do
|
|
11
|
+
dataset
|
|
12
|
+
end
|
|
23
13
|
end
|
|
14
|
+
model_class.extend query_method
|
|
24
15
|
end
|
|
25
16
|
end
|
|
26
17
|
end
|
|
@@ -12,14 +12,12 @@ method is called.
|
|
|
12
12
|
def included(model_class)
|
|
13
13
|
model_reset_method = @model_reset_method
|
|
14
14
|
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
super().tap { instance_eval(&model_reset_method) }
|
|
19
|
-
end
|
|
15
|
+
mod = Module.new do
|
|
16
|
+
define_method :refresh do
|
|
17
|
+
super().tap { instance_eval(&model_reset_method) }
|
|
20
18
|
end
|
|
21
|
-
include mod
|
|
22
19
|
end
|
|
20
|
+
model_class.include mod
|
|
23
21
|
end
|
|
24
22
|
end
|
|
25
23
|
end
|
|
@@ -2,8 +2,8 @@ module Mobility
|
|
|
2
2
|
module Sequel
|
|
3
3
|
=begin
|
|
4
4
|
|
|
5
|
-
Internal class used to force Sequel model to notice changes when
|
|
6
|
-
is called.
|
|
5
|
+
Internal class used to force Sequel model to notice changes when mobility
|
|
6
|
+
setter method is called.
|
|
7
7
|
|
|
8
8
|
=end
|
|
9
9
|
class ColumnChanges < Module
|
|
@@ -12,8 +12,8 @@ is called.
|
|
|
12
12
|
@attributes = attributes
|
|
13
13
|
|
|
14
14
|
attributes.each do |attribute|
|
|
15
|
-
define_method "#{attribute}=" do |value, **options|
|
|
16
|
-
if send(attribute) != value
|
|
15
|
+
define_method "#{attribute}=".freeze do |value, **options|
|
|
16
|
+
if !options[:super] && send(attribute) != value
|
|
17
17
|
locale = options[:locale] || Mobility.locale
|
|
18
18
|
column = attribute.to_sym
|
|
19
19
|
column_with_locale = :"#{attribute}_#{Mobility.normalize_locale(locale)}"
|
data/lib/mobility/translates.rb
CHANGED
|
@@ -61,12 +61,8 @@ passed to accessors to configure backend (see example below).
|
|
|
61
61
|
%w[accessor reader writer].each do |method|
|
|
62
62
|
class_eval <<-EOM, __FILE__, __LINE__ + 1
|
|
63
63
|
def mobility_#{method}(*args, **options, &block)
|
|
64
|
-
attributes = Attributes.new(:#{method},
|
|
64
|
+
attributes = Attributes.new(*args, method: :#{method}, **options)
|
|
65
65
|
attributes.backend.instance_eval(&block) if block_given?
|
|
66
|
-
attributes.each do |attribute|
|
|
67
|
-
alias_method "\#{attribute}_before_mobility", attribute if method_defined?(attribute) && #{%w[accessor reader].include? method}
|
|
68
|
-
alias_method "\#{attribute}_before_mobility=", "\#{attribute}=" if method_defined?("\#{attribute}=") && #{%w[accessor writer].include? method}
|
|
69
|
-
end
|
|
70
66
|
include attributes
|
|
71
67
|
end
|
|
72
68
|
EOM
|
|
@@ -0,0 +1,126 @@
|
|
|
1
|
+
require "singleton"
|
|
2
|
+
|
|
3
|
+
module Mobility
|
|
4
|
+
=begin
|
|
5
|
+
|
|
6
|
+
Some useful methods on strings, borrowed in parts from Sequel and ActiveSupport.
|
|
7
|
+
|
|
8
|
+
@example With no methods defined on String
|
|
9
|
+
"foos".respond_to?(:singularize)
|
|
10
|
+
#=> false
|
|
11
|
+
|
|
12
|
+
class A
|
|
13
|
+
include Mobility::Util
|
|
14
|
+
end
|
|
15
|
+
|
|
16
|
+
A.new.singularize("foos")
|
|
17
|
+
#=> "foo"
|
|
18
|
+
A.new.singularize("bunnies")
|
|
19
|
+
#=> "bunnie"
|
|
20
|
+
|
|
21
|
+
@example With methods on String
|
|
22
|
+
require "active_support"
|
|
23
|
+
"foos".respond_to?(:singularize)
|
|
24
|
+
#=> true
|
|
25
|
+
|
|
26
|
+
class A
|
|
27
|
+
include Mobility::Util
|
|
28
|
+
end
|
|
29
|
+
|
|
30
|
+
A.new.singularize("bunnies")
|
|
31
|
+
#=> "bunny"
|
|
32
|
+
=end
|
|
33
|
+
module Util
|
|
34
|
+
VALID_CONSTANT_NAME_REGEXP = /\A(?:::)?([A-Z]\w*(?:::[A-Z]\w*)*)\z/.freeze
|
|
35
|
+
|
|
36
|
+
def self.included(klass)
|
|
37
|
+
klass.extend(self)
|
|
38
|
+
end
|
|
39
|
+
|
|
40
|
+
# Converts strings to UpperCamelCase.
|
|
41
|
+
# @param [String] str
|
|
42
|
+
# @return [String]
|
|
43
|
+
def camelize(str)
|
|
44
|
+
call_or_yield str do
|
|
45
|
+
str.to_s.sub(/^[a-z\d]*/) { $&.capitalize }.gsub(/(?:_|(\/))([a-z\d]*)/) { "#{$1}#{$2.capitalize}" }.gsub('/'.freeze, '::'.freeze)
|
|
46
|
+
end
|
|
47
|
+
end
|
|
48
|
+
|
|
49
|
+
# Tries to find a constant with the name specified in the argument string.
|
|
50
|
+
# @param [String] str
|
|
51
|
+
# @return [Object]
|
|
52
|
+
def constantize(str)
|
|
53
|
+
str = str.to_s
|
|
54
|
+
call_or_yield str do
|
|
55
|
+
raise(NameError, "#{s.inspect} is not a valid constant name!") unless m = VALID_CONSTANT_NAME_REGEXP.match(str)
|
|
56
|
+
Object.module_eval("::#{m[1]}", __FILE__, __LINE__)
|
|
57
|
+
end
|
|
58
|
+
end
|
|
59
|
+
|
|
60
|
+
# Returns the singular form of a word in a string.
|
|
61
|
+
# @param [String] str
|
|
62
|
+
# @return [String]
|
|
63
|
+
# @note If +singularize+ is not defined on +String+, falls back to simply
|
|
64
|
+
# stripping the trailing 's' from the string.
|
|
65
|
+
def singularize(str)
|
|
66
|
+
call_or_yield str do
|
|
67
|
+
str.to_s.gsub(/s$/, '')
|
|
68
|
+
end
|
|
69
|
+
end
|
|
70
|
+
|
|
71
|
+
# Removes the module part from the expression in the string.
|
|
72
|
+
# @param [String] str
|
|
73
|
+
# @return [String]
|
|
74
|
+
def demodulize(str)
|
|
75
|
+
call_or_yield str do
|
|
76
|
+
str.to_s.gsub(/^.*::/, '')
|
|
77
|
+
end
|
|
78
|
+
end
|
|
79
|
+
|
|
80
|
+
# Creates a foreign key name from a class name
|
|
81
|
+
# @param [String] str
|
|
82
|
+
# @return [String]
|
|
83
|
+
def foreign_key(str)
|
|
84
|
+
call_or_yield str do
|
|
85
|
+
"#{underscore(demodulize(str))}_id"
|
|
86
|
+
end
|
|
87
|
+
end
|
|
88
|
+
|
|
89
|
+
# Makes an underscored, lowercase form from the expression in the string.
|
|
90
|
+
# @param [String] str
|
|
91
|
+
# @return [String]
|
|
92
|
+
def underscore(str)
|
|
93
|
+
call_or_yield str do
|
|
94
|
+
str.to_s.gsub(/::/, '/').gsub(/([A-Z]+)([A-Z][a-z])/,'\1_\2').
|
|
95
|
+
gsub(/([a-z\d])([A-Z])/,'\1_\2').tr("-", "_").downcase
|
|
96
|
+
end
|
|
97
|
+
end
|
|
98
|
+
|
|
99
|
+
def present?(object)
|
|
100
|
+
!blank?(object)
|
|
101
|
+
end
|
|
102
|
+
|
|
103
|
+
def blank?(object)
|
|
104
|
+
return true if object.nil?
|
|
105
|
+
object.respond_to?(:empty?) ? !!object.empty? : !object
|
|
106
|
+
end
|
|
107
|
+
|
|
108
|
+
def presence(object)
|
|
109
|
+
object if present?(object)
|
|
110
|
+
end
|
|
111
|
+
|
|
112
|
+
private
|
|
113
|
+
|
|
114
|
+
# Calls caller method on object if defined, otherwise yields to block
|
|
115
|
+
def call_or_yield(object)
|
|
116
|
+
caller_method = caller_locations(1,1)[0].label
|
|
117
|
+
if object.respond_to?(caller_method)
|
|
118
|
+
object.public_send(caller_method)
|
|
119
|
+
else
|
|
120
|
+
yield
|
|
121
|
+
end
|
|
122
|
+
end
|
|
123
|
+
|
|
124
|
+
extend self
|
|
125
|
+
end
|
|
126
|
+
end
|
data/lib/mobility/version.rb
CHANGED
data/lib/mobility/wrapper.rb
CHANGED
|
@@ -19,7 +19,7 @@ simple delegator, so any missing method will be delegated to the model class.
|
|
|
19
19
|
|
|
20
20
|
# @return [Array<String>] Translated attributes defined on model
|
|
21
21
|
def translated_attribute_names
|
|
22
|
-
modules.map(&:
|
|
22
|
+
modules.map(&:names).flatten
|
|
23
23
|
end
|
|
24
24
|
|
|
25
25
|
# Appends backend module to +modules+ array for later reference.
|
|
@@ -52,10 +52,14 @@ Other backends are not supported, for obvious reasons:
|
|
|
52
52
|
if SUPPORTED_BACKENDS.include?(value)
|
|
53
53
|
require_relative "./backend_generators/#{value}_backend".freeze
|
|
54
54
|
Mobility::BackendGenerators.const_get("#{value}_backend".camelcase.freeze)
|
|
55
|
-
elsif Mobility::Backend.const_get(value.to_s.camelize.gsub(/\s+/, ''.freeze))
|
|
56
|
-
raise Thor::Error, "The #{value} backend does not have a translations generator."
|
|
57
55
|
else
|
|
58
|
-
|
|
56
|
+
begin
|
|
57
|
+
require "mobility/backends/#{value}"
|
|
58
|
+
raise Thor::Error, "The #{value} backend does not have a translations generator."
|
|
59
|
+
rescue LoadError => e
|
|
60
|
+
raise unless e.message =~ /#{value}/
|
|
61
|
+
raise Thor::Error, "#{value} is not a Mobility backend."
|
|
62
|
+
end
|
|
59
63
|
end
|
|
60
64
|
else
|
|
61
65
|
super
|
metadata
CHANGED
|
@@ -1,14 +1,36 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: mobility
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 0.
|
|
4
|
+
version: 0.2.0
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- Chris Salzberg
|
|
8
8
|
autorequire:
|
|
9
9
|
bindir: exe
|
|
10
|
-
cert_chain:
|
|
11
|
-
|
|
10
|
+
cert_chain:
|
|
11
|
+
- |
|
|
12
|
+
-----BEGIN CERTIFICATE-----
|
|
13
|
+
MIIDcDCCAligAwIBAgIBATANBgkqhkiG9w0BAQUFADA/MQ4wDAYDVQQDDAVjaHJp
|
|
14
|
+
czEYMBYGCgmSJomT8ixkARkWCGRlamltYXRhMRMwEQYKCZImiZPyLGQBGRYDY29t
|
|
15
|
+
MB4XDTE3MDgxMTE0NDU0N1oXDTE4MDgxMTE0NDU0N1owPzEOMAwGA1UEAwwFY2hy
|
|
16
|
+
aXMxGDAWBgoJkiaJk/IsZAEZFghkZWppbWF0YTETMBEGCgmSJomT8ixkARkWA2Nv
|
|
17
|
+
bTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAK4/1rb97IE2+aDbwqO0
|
|
18
|
+
BdbiS9QONr9mZRyTCSVkKh4XY+Ex3XzoJSK/qj0E6eRb2K8Lsc8JNZra+1h6do8H
|
|
19
|
+
dkl+GfFcHnWVuDkt17YcZuK/uAaxFOlWGVbFIdGxYz94rBddWGh3bOxqQGr3YtdD
|
|
20
|
+
Ajj1foUnsPmxQ0j8p8vAJhHM0h0MTyphFxMT5xTDJkprVQOiktfWQBL+76jx/UQ4
|
|
21
|
+
UXczbSgaObaUzvNM7ggi7+PPNG4S39SafjQ0MM/QvBZ31B6tN1KuzluKFhAMC+sH
|
|
22
|
+
NofRUmYbrjZiCId6WCepJz48/fel6BtQ8CQGcQShx+eYOKEWRBiDkhpIil5JVaxi
|
|
23
|
+
NucCAwEAAaN3MHUwCQYDVR0TBAIwADALBgNVHQ8EBAMCBLAwHQYDVR0OBBYEFAzG
|
|
24
|
+
77899+wndUmwUTLUD8z+YnnwMB0GA1UdEQQWMBSBEmNocmlzQGRlamltYXRhLmNv
|
|
25
|
+
bTAdBgNVHRIEFjAUgRJjaHJpc0BkZWppbWF0YS5jb20wDQYJKoZIhvcNAQEFBQAD
|
|
26
|
+
ggEBAGP58/sXe/VX8dZ74Ih5VscaWOHZqfT5VzsremZS2899Mf+MaSDhMmdYx8b7
|
|
27
|
+
e8Muzpi0V7EIbP0+QeocepYHugyodeoKerqaLEPQ0yCbUbfNAZd9HwkpFbd8hA/J
|
|
28
|
+
Nt2Az+BsBS0COBZKnruEqXA2AbrDua/ifSAjQMPBKCJ8nPQqRQf5A1hcP71yO3du
|
|
29
|
+
8t13MBd1vS8/4nYUoCQnOCTA8A1Lj6RSbQWyS1zZHq7hDm9hmgvvcIMGOkBCcFhy
|
|
30
|
+
eGDROPZoL5RXwiOnRbexxa7dcAxMrDfGB/hpiunIPWPsi4n5P7K/6OO/sGVMl9xv
|
|
31
|
+
SZBPXjzrHdyOFLBYXB+PG7s3F/4=
|
|
32
|
+
-----END CERTIFICATE-----
|
|
33
|
+
date: 2017-08-13 00:00:00.000000000 Z
|
|
12
34
|
dependencies:
|
|
13
35
|
- !ruby/object:Gem::Dependency
|
|
14
36
|
name: request_store
|
|
@@ -129,6 +151,7 @@ extensions: []
|
|
|
129
151
|
extra_rdoc_files: []
|
|
130
152
|
files:
|
|
131
153
|
- CHANGELOG.md
|
|
154
|
+
- CONTRIBUTING.md
|
|
132
155
|
- Gemfile
|
|
133
156
|
- Gemfile.lock
|
|
134
157
|
- Guardfile
|
|
@@ -148,60 +171,66 @@ files:
|
|
|
148
171
|
- lib/mobility/active_record/uniqueness_validator.rb
|
|
149
172
|
- lib/mobility/attributes.rb
|
|
150
173
|
- lib/mobility/backend.rb
|
|
151
|
-
- lib/mobility/backend/active_model.rb
|
|
152
|
-
- lib/mobility/backend/active_model/dirty.rb
|
|
153
|
-
- lib/mobility/backend/active_record.rb
|
|
154
|
-
- lib/mobility/backend/active_record/column.rb
|
|
155
|
-
- lib/mobility/backend/active_record/column/query_methods.rb
|
|
156
|
-
- lib/mobility/backend/active_record/dirty.rb
|
|
157
|
-
- lib/mobility/backend/active_record/hash_valued.rb
|
|
158
|
-
- lib/mobility/backend/active_record/hstore.rb
|
|
159
|
-
- lib/mobility/backend/active_record/hstore/query_methods.rb
|
|
160
|
-
- lib/mobility/backend/active_record/jsonb.rb
|
|
161
|
-
- lib/mobility/backend/active_record/jsonb/query_methods.rb
|
|
162
|
-
- lib/mobility/backend/active_record/key_value.rb
|
|
163
|
-
- lib/mobility/backend/active_record/key_value/query_methods.rb
|
|
164
|
-
- lib/mobility/backend/active_record/query_methods.rb
|
|
165
|
-
- lib/mobility/backend/active_record/serialized.rb
|
|
166
|
-
- lib/mobility/backend/active_record/serialized/query_methods.rb
|
|
167
|
-
- lib/mobility/backend/active_record/table.rb
|
|
168
|
-
- lib/mobility/backend/active_record/table/query_methods.rb
|
|
169
|
-
- lib/mobility/backend/cache.rb
|
|
170
|
-
- lib/mobility/backend/column.rb
|
|
171
|
-
- lib/mobility/backend/dirty.rb
|
|
172
|
-
- lib/mobility/backend/fallbacks.rb
|
|
173
|
-
- lib/mobility/backend/hstore.rb
|
|
174
|
-
- lib/mobility/backend/jsonb.rb
|
|
175
|
-
- lib/mobility/backend/key_value.rb
|
|
176
|
-
- lib/mobility/backend/null.rb
|
|
177
174
|
- lib/mobility/backend/orm_delegator.rb
|
|
178
|
-
- lib/mobility/backend/
|
|
179
|
-
- lib/mobility/backend/sequel.rb
|
|
180
|
-
- lib/mobility/backend/sequel/column.rb
|
|
181
|
-
- lib/mobility/backend/sequel/column/query_methods.rb
|
|
182
|
-
- lib/mobility/backend/sequel/dirty.rb
|
|
183
|
-
- lib/mobility/backend/sequel/hash_valued.rb
|
|
184
|
-
- lib/mobility/backend/sequel/hstore.rb
|
|
185
|
-
- lib/mobility/backend/sequel/hstore/query_methods.rb
|
|
186
|
-
- lib/mobility/backend/sequel/jsonb.rb
|
|
187
|
-
- lib/mobility/backend/sequel/jsonb/query_methods.rb
|
|
188
|
-
- lib/mobility/backend/sequel/key_value.rb
|
|
189
|
-
- lib/mobility/backend/sequel/key_value/query_methods.rb
|
|
190
|
-
- lib/mobility/backend/sequel/postgres_query_methods.rb
|
|
191
|
-
- lib/mobility/backend/sequel/query_methods.rb
|
|
192
|
-
- lib/mobility/backend/sequel/serialized.rb
|
|
193
|
-
- lib/mobility/backend/sequel/serialized/query_methods.rb
|
|
194
|
-
- lib/mobility/backend/sequel/table.rb
|
|
195
|
-
- lib/mobility/backend/sequel/table/query_methods.rb
|
|
196
|
-
- lib/mobility/backend/serialized.rb
|
|
197
|
-
- lib/mobility/backend/table.rb
|
|
175
|
+
- lib/mobility/backend/stringify_locale.rb
|
|
198
176
|
- lib/mobility/backend_resetter.rb
|
|
177
|
+
- lib/mobility/backends.rb
|
|
178
|
+
- lib/mobility/backends/active_record.rb
|
|
179
|
+
- lib/mobility/backends/active_record/column.rb
|
|
180
|
+
- lib/mobility/backends/active_record/column/query_methods.rb
|
|
181
|
+
- lib/mobility/backends/active_record/hstore.rb
|
|
182
|
+
- lib/mobility/backends/active_record/hstore/query_methods.rb
|
|
183
|
+
- lib/mobility/backends/active_record/jsonb.rb
|
|
184
|
+
- lib/mobility/backends/active_record/jsonb/query_methods.rb
|
|
185
|
+
- lib/mobility/backends/active_record/key_value.rb
|
|
186
|
+
- lib/mobility/backends/active_record/key_value/query_methods.rb
|
|
187
|
+
- lib/mobility/backends/active_record/pg_hash.rb
|
|
188
|
+
- lib/mobility/backends/active_record/query_methods.rb
|
|
189
|
+
- lib/mobility/backends/active_record/serialized.rb
|
|
190
|
+
- lib/mobility/backends/active_record/serialized/query_methods.rb
|
|
191
|
+
- lib/mobility/backends/active_record/table.rb
|
|
192
|
+
- lib/mobility/backends/active_record/table/query_methods.rb
|
|
193
|
+
- lib/mobility/backends/column.rb
|
|
194
|
+
- lib/mobility/backends/hash_valued.rb
|
|
195
|
+
- lib/mobility/backends/hstore.rb
|
|
196
|
+
- lib/mobility/backends/jsonb.rb
|
|
197
|
+
- lib/mobility/backends/key_value.rb
|
|
198
|
+
- lib/mobility/backends/null.rb
|
|
199
|
+
- lib/mobility/backends/sequel.rb
|
|
200
|
+
- lib/mobility/backends/sequel/column.rb
|
|
201
|
+
- lib/mobility/backends/sequel/column/query_methods.rb
|
|
202
|
+
- lib/mobility/backends/sequel/hstore.rb
|
|
203
|
+
- lib/mobility/backends/sequel/hstore/query_methods.rb
|
|
204
|
+
- lib/mobility/backends/sequel/jsonb.rb
|
|
205
|
+
- lib/mobility/backends/sequel/jsonb/query_methods.rb
|
|
206
|
+
- lib/mobility/backends/sequel/key_value.rb
|
|
207
|
+
- lib/mobility/backends/sequel/key_value/query_methods.rb
|
|
208
|
+
- lib/mobility/backends/sequel/pg_hash.rb
|
|
209
|
+
- lib/mobility/backends/sequel/postgres_query_methods.rb
|
|
210
|
+
- lib/mobility/backends/sequel/query_methods.rb
|
|
211
|
+
- lib/mobility/backends/sequel/serialized.rb
|
|
212
|
+
- lib/mobility/backends/sequel/serialized/query_methods.rb
|
|
213
|
+
- lib/mobility/backends/sequel/table.rb
|
|
214
|
+
- lib/mobility/backends/sequel/table/query_methods.rb
|
|
215
|
+
- lib/mobility/backends/serialized.rb
|
|
216
|
+
- lib/mobility/backends/table.rb
|
|
199
217
|
- lib/mobility/configuration.rb
|
|
200
|
-
- lib/mobility/
|
|
201
|
-
- lib/mobility/
|
|
202
|
-
- lib/mobility/
|
|
203
|
-
- lib/mobility/
|
|
204
|
-
- lib/mobility/
|
|
218
|
+
- lib/mobility/loaded.rb
|
|
219
|
+
- lib/mobility/plugins.rb
|
|
220
|
+
- lib/mobility/plugins/active_model.rb
|
|
221
|
+
- lib/mobility/plugins/active_model/dirty.rb
|
|
222
|
+
- lib/mobility/plugins/active_record.rb
|
|
223
|
+
- lib/mobility/plugins/active_record/dirty.rb
|
|
224
|
+
- lib/mobility/plugins/cache.rb
|
|
225
|
+
- lib/mobility/plugins/cache/translation_cacher.rb
|
|
226
|
+
- lib/mobility/plugins/default.rb
|
|
227
|
+
- lib/mobility/plugins/dirty.rb
|
|
228
|
+
- lib/mobility/plugins/fallbacks.rb
|
|
229
|
+
- lib/mobility/plugins/fallthrough_accessors.rb
|
|
230
|
+
- lib/mobility/plugins/locale_accessors.rb
|
|
231
|
+
- lib/mobility/plugins/presence.rb
|
|
232
|
+
- lib/mobility/plugins/sequel.rb
|
|
233
|
+
- lib/mobility/plugins/sequel/dirty.rb
|
|
205
234
|
- lib/mobility/sequel.rb
|
|
206
235
|
- lib/mobility/sequel/backend_resetter.rb
|
|
207
236
|
- lib/mobility/sequel/column_changes.rb
|
|
@@ -210,6 +239,7 @@ files:
|
|
|
210
239
|
- lib/mobility/sequel/text_translation.rb
|
|
211
240
|
- lib/mobility/sequel/translation.rb
|
|
212
241
|
- lib/mobility/translates.rb
|
|
242
|
+
- lib/mobility/util.rb
|
|
213
243
|
- lib/mobility/version.rb
|
|
214
244
|
- lib/mobility/wrapper.rb
|
|
215
245
|
- lib/rails/generators/mobility/active_record_migration_compatibility.rb
|
|
@@ -238,7 +268,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
|
238
268
|
requirements:
|
|
239
269
|
- - ">="
|
|
240
270
|
- !ruby/object:Gem::Version
|
|
241
|
-
version: 2.
|
|
271
|
+
version: 2.2.7
|
|
242
272
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
|
243
273
|
requirements:
|
|
244
274
|
- - ">="
|