tolk 2.0.0 → 3.0.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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 90462539c407ff422fdf13f5fbac68457c8c2807
4
- data.tar.gz: cb5c5bc05f5a99a785c7d75261de04aceddf4d80
3
+ metadata.gz: d28cc93fabb8286338fbdd1cd8715df10f4a76b1
4
+ data.tar.gz: 32cb9e4dc582a1d92091bb6a49f5b0dff1ac47bf
5
5
  SHA512:
6
- metadata.gz: ab4f1e9ad6b85a8baef406004c20814397eaf725c6271970043929a08c24a10c8de6dcf1d265673db61d1ea5a97f9c6ba0fe61eb110465ea1a3d94fc43fb7545
7
- data.tar.gz: 43907b282e5a3eda7f190b9eb7d0bab377ebb3b6bf166fcddcfbdd66b1d1eb38a50271b0475035eebe4fc76101c03232392898901b62d001e44793961a94ae17
6
+ metadata.gz: cf75b9e6e531e9eac234b348b0bcdfc709389d7236102e6fbf8d8f34c8a2707290d79f245a0f93f8c233874c5e0f0f8c28fc02d7e666b509b7edf4a00b16e969
7
+ data.tar.gz: 2a1d268fc7027215f7642e59857f9b0651b8af9adf3828db557dc03ae310a65e8f1eae7bfbe4fab5af39bf027bfb74928d2d2aed8a6d3f67155120b6fcab17eb
@@ -12,8 +12,8 @@ module Tolk
12
12
  @dump_path ||= Tolk.config.dump_path.is_a?(Proc) ? instance_eval(&Tolk.config.dump_path) : Tolk.config.dump_path
13
13
  end
14
14
 
15
- has_many :phrases, :through => :translations, :class_name => 'Tolk::Phrase'
16
15
  has_many :translations, :class_name => 'Tolk::Translation', :dependent => :destroy
16
+ has_many :phrases, :through => :translations, :class_name => 'Tolk::Phrase'
17
17
 
18
18
  accepts_nested_attributes_for :translations, :reject_if => proc { |attributes| attributes['text'].blank? }
19
19
  before_validation :remove_invalid_translations_from_target, :on => :update
@@ -36,6 +36,8 @@ module Tolk
36
36
  cattr_accessor :special_keys
37
37
  self.special_keys = ['activerecord.models']
38
38
 
39
+ PLURALIZATION_KEYS = ['none', 'zero', 'one', 'two', 'few', 'many', 'other']
40
+
39
41
  class << self
40
42
  def primary_locale(reload = false)
41
43
  @_primary_locale = nil if reload
@@ -66,7 +68,7 @@ module Tolk
66
68
  end
67
69
 
68
70
  # http://cldr.unicode.org/index/cldr-spec/plural-rules - TODO: usage of 'none' isn't standard-conform
69
- PLURALIZATION_KEYS = ['none', 'zero', 'one', 'two', 'few', 'many', 'other']
71
+
70
72
  def pluralization_data?(data)
71
73
  keys = data.keys.map(&:to_s)
72
74
  keys.all? {|k| PLURALIZATION_KEYS.include?(k) }
@@ -90,7 +92,7 @@ module Tolk
90
92
  end
91
93
 
92
94
  def count_phrases_without_translation
93
- existing_ids = self.translations(:select => 'tolk_translations.phrase_id').map(&:phrase_id).uniq
95
+ existing_ids = self.translations.pluck(&:phrase_id).uniq
94
96
  Tolk::Phrase.count - existing_ids.count
95
97
  end
96
98
 
@@ -101,7 +103,7 @@ module Tolk
101
103
  def phrases_without_translation(page = nil)
102
104
  phrases = Tolk::Phrase.all.order('tolk_phrases.key ASC')
103
105
 
104
- existing_ids = self.translations(:select => 'tolk_translations.phrase_id').map(&:phrase_id).uniq
106
+ existing_ids = self.translations.pluck(:phrase_id).uniq
105
107
  phrases = phrases.where('tolk_phrases.id NOT IN (?)', existing_ids) if existing_ids.present?
106
108
 
107
109
  result = phrases.public_send(pagination_method, page)
@@ -49,7 +49,7 @@ module Tolk
49
49
 
50
50
  def read_locale_file
51
51
  locale_file = "#{self.locales_config_path}/#{self.name}.yml"
52
- raise "Locale file #{locale_file} does not exists" unless File.exists?(locale_file)
52
+ raise "Locale file #{locale_file} does not exists" unless File.exist?(locale_file)
53
53
 
54
54
  puts "[INFO] Reading #{locale_file} for locale #{self.name}"
55
55
  begin
@@ -35,7 +35,7 @@ module Tolk
35
35
 
36
36
  def read_primary_locale_file
37
37
  primary_file = "#{self.locales_config_path}/#{self.primary_locale_name}.yml"
38
- if File.exists?(primary_file)
38
+ if File.exist?(primary_file)
39
39
  flat_hash(Tolk::YAML.load_file(primary_file)[self.primary_locale_name])
40
40
  else
41
41
  {}
@@ -62,7 +62,7 @@ module Tolk
62
62
  primary_locale = self.primary_locale
63
63
 
64
64
  # Handle deleted phrases
65
- translations.present? ? Tolk::Phrase.destroy_all(["tolk_phrases.key NOT IN (?)", translations.keys]) : Tolk::Phrase.destroy_all
65
+ translations.present? ? Tolk::Phrase.where(["tolk_phrases.key NOT IN (?)", translations.keys]).destroy_all : Tolk::Phrase.destroy_all
66
66
 
67
67
  phrases = Tolk::Phrase.all
68
68
 
@@ -1,3 +1,3 @@
1
1
  module Tolk
2
- VERSION = "2.0.0"
2
+ VERSION = "3.0.0"
3
3
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: tolk
3
3
  version: !ruby/object:Gem::Version
4
- version: 2.0.0
4
+ version: 3.0.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - David Heinemeier Hansson
@@ -12,7 +12,7 @@ authors:
12
12
  autorequire:
13
13
  bindir: bin
14
14
  cert_chain: []
15
- date: 2016-10-21 00:00:00.000000000 Z
15
+ date: 2017-06-14 00:00:00.000000000 Z
16
16
  dependencies:
17
17
  - !ruby/object:Gem::Dependency
18
18
  name: rails
@@ -20,14 +20,14 @@ dependencies:
20
20
  requirements:
21
21
  - - ">="
22
22
  - !ruby/object:Gem::Version
23
- version: '4.0'
23
+ version: '5.0'
24
24
  type: :runtime
25
25
  prerelease: false
26
26
  version_requirements: !ruby/object:Gem::Requirement
27
27
  requirements:
28
28
  - - ">="
29
29
  - !ruby/object:Gem::Version
30
- version: '4.0'
30
+ version: '5.0'
31
31
  - !ruby/object:Gem::Dependency
32
32
  name: safe_yaml
33
33
  requirement: !ruby/object:Gem::Requirement
@@ -48,14 +48,14 @@ dependencies:
48
48
  requirements:
49
49
  - - "~>"
50
50
  - !ruby/object:Gem::Version
51
- version: 2.4.4
51
+ version: '2.14'
52
52
  type: :development
53
53
  prerelease: false
54
54
  version_requirements: !ruby/object:Gem::Requirement
55
55
  requirements:
56
56
  - - "~>"
57
57
  - !ruby/object:Gem::Version
58
- version: 2.4.4
58
+ version: '2.14'
59
59
  - !ruby/object:Gem::Dependency
60
60
  name: sqlite3
61
61
  requirement: !ruby/object:Gem::Requirement
@@ -85,7 +85,7 @@ dependencies:
85
85
  - !ruby/object:Gem::Version
86
86
  version: '1.0'
87
87
  - !ruby/object:Gem::Dependency
88
- name: selenium-webdriver
88
+ name: poltergeist
89
89
  requirement: !ruby/object:Gem::Requirement
90
90
  requirements:
91
91
  - - ">="
@@ -171,7 +171,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
171
171
  requirements:
172
172
  - - ">="
173
173
  - !ruby/object:Gem::Version
174
- version: 2.0.0
174
+ version: 2.2.2
175
175
  required_rubygems_version: !ruby/object:Gem::Requirement
176
176
  requirements:
177
177
  - - ">="
@@ -179,7 +179,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
179
179
  version: '0'
180
180
  requirements: []
181
181
  rubyforge_project:
182
- rubygems_version: 2.4.5
182
+ rubygems_version: 2.6.12
183
183
  signing_key:
184
184
  specification_version: 4
185
185
  summary: Rails engine providing web interface for managing i18n yaml files