globalize 4.0.0 → 4.0.1
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
- data/CHANGELOG.md +17 -0
- data/Gemfile +0 -3
- data/Gemfile.lock +30 -8
- data/lib/globalize/active_record/act_macro.rb +2 -1
- data/lib/globalize/active_record/class_methods.rb +1 -1
- data/lib/globalize/active_record/query_methods.rb +10 -19
- data/lib/globalize/version.rb +1 -1
- metadata +6 -6
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA1:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: d231d24dbd88077635e6a9252927db9581754f9a
|
|
4
|
+
data.tar.gz: 33f23cc80e09b4d7a31993c729fb1fa5fc6be140
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: 0fa224e4b6bd57d262c957e48309fd94e46f06cd5b78a9441e4309ba7182b6fff7ed6a98bbae3b41a5662afc18ac6bd727b04827ac94f7a1bc96db39a1b790c9
|
|
7
|
+
data.tar.gz: d5edeb87b6e85ad499bedeec83c4df6174171897ea8916f109a116f10bb0fad86fefa8205a67acd0d5eb205c0a30b9d617b0a64c9635cb0986faa771465c577e
|
data/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,15 @@
|
|
|
1
1
|
# Globalize Changelog
|
|
2
2
|
|
|
3
|
+
## 4.0.1 (2014-3-29)
|
|
4
|
+
* Fix bug where `with_translations` only works if called after `where` in relation chain, fixes [#343](https://github.com/globalize/globalize/issues/343).
|
|
5
|
+
* Use `preload` and `joins` instead of `includes` in `with_translations`, fixes [#329](https://github.com/globalize/globalize/issues/329) (thanks [Andrew Volozhanin](https://github.com/scarfacedeb)).
|
|
6
|
+
* Update `database_cleaner` dependency to 1.2.0.
|
|
7
|
+
* Support use of `first`/`take`/`last` with limit on queries with translated attributes, fixes [#322](https://github.com/globalize/globalize/issues/322) (thanks [prusswan](https://github.com/prusswan)).
|
|
8
|
+
* Ensure that options are always extracted from `attr_names` in `Globalize::ActiveRecord::ActMacro#translates`, PR [#319](https://github.com/globalize/globalize/pull/319) (thanks [Marek](https://github.com/keram)).
|
|
9
|
+
|
|
10
|
+
## 4.0.0 (2014-1-4)
|
|
11
|
+
* Extract all versioning-related code to separate [globalize-versioning](https://github.com/globalize/globalize-versioning) gem.
|
|
12
|
+
|
|
3
13
|
## 4.0.0.alpha.5 (2014-1-4)
|
|
4
14
|
* Fix issue where globalize breaks has_many through when model called with `where` (thanks [Paul McMahon](https://github.com/pwim)).
|
|
5
15
|
* Modify dup so that translations are copied, and remove custom clone code to conform to Rails/AR semantics (thanks [Paul McMahon](https://github.com/pwim)).
|
|
@@ -41,6 +51,13 @@
|
|
|
41
51
|
|
|
42
52
|
* Initial release of Rails 4-compatible gem.
|
|
43
53
|
|
|
54
|
+
## 3.1.0 (2014-1-25)
|
|
55
|
+
|
|
56
|
+
* Backport scope support on uniqueness validation from 4.0, drop support for ActiveRecord < 3.1, fixes [#324](https://github.com/globalize/globalize/issues/324).
|
|
57
|
+
|
|
58
|
+
## 3.0.4 (2014-1-8)
|
|
59
|
+
* Extract all versioning-related code to separate [globalize-versioning](https://github.com/globalize/globalize-versioning) gem.
|
|
60
|
+
|
|
44
61
|
## 3.0.3 (2013-12-26)
|
|
45
62
|
|
|
46
63
|
* Ensure that foreign key is always set when saving translations (thanks [Andrew Feng](https://github.com/mingliangfeng)).
|
data/Gemfile
CHANGED
data/Gemfile.lock
CHANGED
|
@@ -8,9 +8,9 @@ GIT
|
|
|
8
8
|
PATH
|
|
9
9
|
remote: .
|
|
10
10
|
specs:
|
|
11
|
-
globalize (4.0.0
|
|
12
|
-
activemodel (>= 4.0.0)
|
|
13
|
-
activerecord (>= 4.0.0)
|
|
11
|
+
globalize (4.0.0)
|
|
12
|
+
activemodel (>= 4.0.0, < 5)
|
|
13
|
+
activerecord (>= 4.0.0, < 5)
|
|
14
14
|
|
|
15
15
|
GEM
|
|
16
16
|
remote: https://rubygems.org/
|
|
@@ -33,8 +33,18 @@ GEM
|
|
|
33
33
|
ansi (1.4.3)
|
|
34
34
|
arel (4.0.1)
|
|
35
35
|
atomic (1.1.14)
|
|
36
|
+
binding_of_caller (0.7.2)
|
|
37
|
+
debug_inspector (>= 0.0.1)
|
|
36
38
|
builder (3.1.4)
|
|
37
39
|
coderay (1.1.0)
|
|
40
|
+
columnize (0.3.6)
|
|
41
|
+
debug_inspector (0.0.2)
|
|
42
|
+
debugger (1.6.3)
|
|
43
|
+
columnize (>= 0.3.1)
|
|
44
|
+
debugger-linecache (~> 1.2.0)
|
|
45
|
+
debugger-ruby_core_source (~> 1.2.4)
|
|
46
|
+
debugger-linecache (1.2.0)
|
|
47
|
+
debugger-ruby_core_source (1.2.4)
|
|
38
48
|
ffi2-generators (0.1.1)
|
|
39
49
|
hashie (2.0.5)
|
|
40
50
|
i18n (0.6.9)
|
|
@@ -46,7 +56,9 @@ GEM
|
|
|
46
56
|
builder
|
|
47
57
|
minitest (>= 2.12, < 5.0)
|
|
48
58
|
powerbar
|
|
49
|
-
multi_json (1.8.
|
|
59
|
+
multi_json (1.8.4)
|
|
60
|
+
polyamorous (0.6.4)
|
|
61
|
+
activerecord (>= 3.0)
|
|
50
62
|
powerbar (1.0.11)
|
|
51
63
|
ansi (~> 1.4.0)
|
|
52
64
|
hashie (>= 1.1.0)
|
|
@@ -54,10 +66,14 @@ GEM
|
|
|
54
66
|
coderay (~> 1.0)
|
|
55
67
|
method_source (~> 0.8)
|
|
56
68
|
slop (~> 3.4)
|
|
57
|
-
pry-
|
|
69
|
+
pry-debugger (0.2.2)
|
|
70
|
+
debugger (~> 1.3)
|
|
58
71
|
pry (~> 0.9.10)
|
|
72
|
+
pry-stack_explorer (0.4.9.1)
|
|
73
|
+
binding_of_caller (>= 0.7)
|
|
74
|
+
pry (>= 0.9.11)
|
|
59
75
|
rake (10.1.1)
|
|
60
|
-
rdoc (4.1.
|
|
76
|
+
rdoc (4.1.1)
|
|
61
77
|
json (~> 1.4)
|
|
62
78
|
rubysl (2.0.15)
|
|
63
79
|
rubysl-abbrev (~> 2.0)
|
|
@@ -217,7 +233,7 @@ GEM
|
|
|
217
233
|
rubysl-observer (2.0.0)
|
|
218
234
|
rubysl-open-uri (2.0.0)
|
|
219
235
|
rubysl-open3 (2.0.0)
|
|
220
|
-
rubysl-openssl (2.0.
|
|
236
|
+
rubysl-openssl (2.0.6)
|
|
221
237
|
rubysl-optparse (2.0.1)
|
|
222
238
|
rubysl-shellwords (~> 2.0)
|
|
223
239
|
rubysl-ostruct (2.0.4)
|
|
@@ -263,6 +279,10 @@ GEM
|
|
|
263
279
|
rubysl-zlib (2.0.1)
|
|
264
280
|
slop (3.4.7)
|
|
265
281
|
sqlite3 (1.3.8)
|
|
282
|
+
squeel (1.1.1)
|
|
283
|
+
activerecord (>= 3.0)
|
|
284
|
+
activesupport (>= 3.0)
|
|
285
|
+
polyamorous (~> 0.6.0)
|
|
266
286
|
thread_safe (0.1.3)
|
|
267
287
|
atomic
|
|
268
288
|
tzinfo (0.3.38)
|
|
@@ -276,8 +296,10 @@ DEPENDENCIES
|
|
|
276
296
|
minitest
|
|
277
297
|
minitest-reporters
|
|
278
298
|
pry
|
|
279
|
-
pry-
|
|
299
|
+
pry-debugger
|
|
300
|
+
pry-stack_explorer
|
|
280
301
|
rake
|
|
281
302
|
rdoc
|
|
282
303
|
rubysl (~> 2.0)
|
|
283
304
|
sqlite3
|
|
305
|
+
squeel
|
|
@@ -2,8 +2,9 @@ module Globalize
|
|
|
2
2
|
module ActiveRecord
|
|
3
3
|
module ActMacro
|
|
4
4
|
def translates(*attr_names)
|
|
5
|
+
options = attr_names.extract_options!
|
|
5
6
|
# Bypass setup_translates! if the initial bootstrapping is done already.
|
|
6
|
-
setup_translates!(
|
|
7
|
+
setup_translates!(options) unless translates?
|
|
7
8
|
|
|
8
9
|
# Add any extra translatable attributes.
|
|
9
10
|
attr_names = attr_names.map(&:to_sym)
|
|
@@ -9,7 +9,7 @@ module Globalize
|
|
|
9
9
|
|
|
10
10
|
def with_translations(*locales)
|
|
11
11
|
locales = translated_locales if locales.empty?
|
|
12
|
-
|
|
12
|
+
preload(:translations).joins(:translations).readonly(false).with_locales(locales).with_required_attributes
|
|
13
13
|
end
|
|
14
14
|
|
|
15
15
|
def with_required_attributes
|
|
@@ -2,13 +2,10 @@ module Globalize
|
|
|
2
2
|
module ActiveRecord
|
|
3
3
|
module QueryMethods
|
|
4
4
|
|
|
5
|
-
attr_accessor :translations_reload_needed
|
|
6
|
-
|
|
7
5
|
class WhereChain < ::ActiveRecord::QueryMethods::WhereChain
|
|
8
6
|
def not(opts, *rest)
|
|
9
7
|
if parsed = @scope.parse_translated_conditions(opts)
|
|
10
|
-
@scope.
|
|
11
|
-
@scope.with_translations_in_fallbacks.where.not(parsed, *rest)
|
|
8
|
+
@scope.join_translations.where.not(parsed, *rest)
|
|
12
9
|
else
|
|
13
10
|
super
|
|
14
11
|
end
|
|
@@ -19,8 +16,7 @@ module Globalize
|
|
|
19
16
|
if opts == :chain
|
|
20
17
|
WhereChain.new(spawn)
|
|
21
18
|
elsif parsed = parse_translated_conditions(opts)
|
|
22
|
-
|
|
23
|
-
super(parsed, *rest).with_translations_in_fallbacks
|
|
19
|
+
join_translations(super(parsed, *rest))
|
|
24
20
|
else
|
|
25
21
|
super
|
|
26
22
|
end
|
|
@@ -34,19 +30,6 @@ module Globalize
|
|
|
34
30
|
end
|
|
35
31
|
end
|
|
36
32
|
|
|
37
|
-
%w[ first last take ].each do |method_name|
|
|
38
|
-
eval <<-END_RUBY
|
|
39
|
-
def #{method_name}
|
|
40
|
-
super.tap do |f|
|
|
41
|
-
if f && translations_reload_needed
|
|
42
|
-
f.translations.reload
|
|
43
|
-
translations_reload_needed = false
|
|
44
|
-
end
|
|
45
|
-
end
|
|
46
|
-
end
|
|
47
|
-
END_RUBY
|
|
48
|
-
end
|
|
49
|
-
|
|
50
33
|
def with_translations_in_fallbacks
|
|
51
34
|
with_translations(Globalize.fallbacks)
|
|
52
35
|
end
|
|
@@ -72,6 +55,14 @@ module Globalize
|
|
|
72
55
|
[name, binds.fetch(name.to_s) { where.right }]
|
|
73
56
|
}])
|
|
74
57
|
end
|
|
58
|
+
|
|
59
|
+
def join_translations(relation = self)
|
|
60
|
+
if relation.joins_values.include?(:translations)
|
|
61
|
+
relation
|
|
62
|
+
else
|
|
63
|
+
relation.with_translations_in_fallbacks
|
|
64
|
+
end
|
|
65
|
+
end
|
|
75
66
|
end
|
|
76
67
|
end
|
|
77
68
|
end
|
data/lib/globalize/version.rb
CHANGED
metadata
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: globalize
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 4.0.
|
|
4
|
+
version: 4.0.1
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- Sven Fuchs
|
|
@@ -14,7 +14,7 @@ authors:
|
|
|
14
14
|
autorequire:
|
|
15
15
|
bindir: bin
|
|
16
16
|
cert_chain: []
|
|
17
|
-
date: 2014-
|
|
17
|
+
date: 2014-03-29 00:00:00.000000000 Z
|
|
18
18
|
dependencies:
|
|
19
19
|
- !ruby/object:Gem::Dependency
|
|
20
20
|
name: activerecord
|
|
@@ -60,16 +60,16 @@ dependencies:
|
|
|
60
60
|
name: database_cleaner
|
|
61
61
|
requirement: !ruby/object:Gem::Requirement
|
|
62
62
|
requirements:
|
|
63
|
-
- -
|
|
63
|
+
- - ~>
|
|
64
64
|
- !ruby/object:Gem::Version
|
|
65
|
-
version:
|
|
65
|
+
version: 1.2.0
|
|
66
66
|
type: :development
|
|
67
67
|
prerelease: false
|
|
68
68
|
version_requirements: !ruby/object:Gem::Requirement
|
|
69
69
|
requirements:
|
|
70
|
-
- -
|
|
70
|
+
- - ~>
|
|
71
71
|
- !ruby/object:Gem::Version
|
|
72
|
-
version:
|
|
72
|
+
version: 1.2.0
|
|
73
73
|
- !ruby/object:Gem::Dependency
|
|
74
74
|
name: minitest
|
|
75
75
|
requirement: !ruby/object:Gem::Requirement
|