phrase 0.4.16 → 0.4.17

Sign up to get free protection for your applications and to get access to all the features.
@@ -72,12 +72,19 @@ class Phrase::Api::Client
72
72
  true
73
73
  end
74
74
 
75
- def download_translations_for_locale(name, format, tag=nil)
76
- raise "You must specify a name" if name.nil? or name.blank?
77
- raise "You must specify a format" if format.nil? or format.blank?
75
+ def download_translations_for_locale(name, format, tag=nil, updated_since=nil, include_empty_translations=nil)
76
+ raise "You must specify a name" if name.nil? || name.blank?
77
+ raise "You must specify a format" if format.nil? || format.blank?
78
78
 
79
79
  begin
80
- content = perform_api_request("/translations/download.#{format}", :get, {'locale' => name, 'tag' => tag})
80
+ params = {
81
+ format: format,
82
+ locale: name,
83
+ tag: tag,
84
+ updated_since: updated_since,
85
+ include_empty_translations: include_empty_translations
86
+ }
87
+ content = perform_api_request("/translations/download", :get, params)
81
88
  return content
82
89
  rescue Phrase::Api::Exceptions::ServerError => e
83
90
  raise "Translations #{name} could not be downloaded"
@@ -27,7 +27,9 @@ module Phrase::Tool::Commands
27
27
  pull: {
28
28
  format: nil,
29
29
  target: nil,
30
- tag: nil
30
+ tag: nil,
31
+ updated_since: nil,
32
+ include_empty_translations: nil
31
33
  },
32
34
  tags: {
33
35
  list: true
@@ -14,6 +14,8 @@ class Phrase::Tool::Commands::Pull < Phrase::Tool::Commands::Base
14
14
  @format = @options.get(:format) || config.format || DEFAULT_DOWNLOAD_FORMAT
15
15
  @target = @options.get(:target)
16
16
  @tag = @options.get(:tag)
17
+ @updated_since = @options.get(:updated_since)
18
+ @include_empty_translations = @options.get(:include_empty_translations)
17
19
  @target ||= Phrase::Formats.target_directory(@format) if format_valid?(@format)
18
20
  end
19
21
 
@@ -21,14 +23,14 @@ class Phrase::Tool::Commands::Pull < Phrase::Tool::Commands::Base
21
23
  (print_error("Invalid format: #{@format}") and exit_command) unless format_valid?(@format)
22
24
  locales_to_download.compact.each do |locale|
23
25
  print_message "Downloading #{locale.name}..."
24
- fetch_translations_for_locale(locale, @format, @tag)
26
+ fetch_translations_for_locale(locale, @format, @tag, @updated_since, @include_empty_translations)
25
27
  end
26
28
  end
27
29
 
28
30
  private
29
- def fetch_translations_for_locale(locale, format, tag=nil)
31
+ def fetch_translations_for_locale(locale, format, tag=nil, updated_since=nil, include_empty_translations=nil)
30
32
  begin
31
- content = api_client.download_translations_for_locale(locale.name, format, tag)
33
+ content = api_client.download_translations_for_locale(locale.name, format, tag, updated_since, include_empty_translations)
32
34
  store_content_in_locale_file(locale, content)
33
35
  rescue Exception => e
34
36
  print_error "Failed"
@@ -88,6 +88,14 @@ class OptionsFactory
88
88
  set[:tag] = tag
89
89
  end
90
90
 
91
+ opts.on("--updated-since=YYYYMMDDHHMMSS", String, "Limit results to translations updated after the given date (UTC)") do |updated_since|
92
+ set[:updated_since] = updated_since
93
+ end
94
+
95
+ opts.on("--include-empty-translations", "Include empty translations in the result") do |include_empty_translations|
96
+ set[:include_empty_translations] = include_empty_translations
97
+ end
98
+
91
99
  opts.on("--secret=YOUR_AUTH_TOKEN", String, "The Auth Token to use for this operation instead of the saved one (optional)") do |secret|
92
100
  set[:secret] = secret
93
101
  end
@@ -1,3 +1,3 @@
1
1
  module Phrase
2
- VERSION = "0.4.16"
2
+ VERSION = "0.4.17"
3
3
  end
metadata CHANGED
@@ -1,155 +1,126 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: phrase
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.4.16
4
+ version: 0.4.17
5
+ prerelease:
5
6
  platform: ruby
6
7
  authors:
7
8
  - Dynport GmbH
8
9
  autorequire:
9
10
  bindir: bin
10
11
  cert_chain: []
11
- date: 2013-09-26 00:00:00.000000000 Z
12
+ date: 2013-10-15 00:00:00.000000000 Z
12
13
  dependencies:
13
14
  - !ruby/object:Gem::Dependency
14
15
  name: colorize
15
- requirement: !ruby/object:Gem::Requirement
16
+ requirement: &70325546967200 !ruby/object:Gem::Requirement
17
+ none: false
16
18
  requirements:
17
19
  - - ! '>='
18
20
  - !ruby/object:Gem::Version
19
21
  version: '0'
20
22
  type: :runtime
21
23
  prerelease: false
22
- version_requirements: !ruby/object:Gem::Requirement
23
- requirements:
24
- - - ! '>='
25
- - !ruby/object:Gem::Version
26
- version: '0'
24
+ version_requirements: *70325546967200
27
25
  - !ruby/object:Gem::Dependency
28
26
  name: json
29
- requirement: !ruby/object:Gem::Requirement
27
+ requirement: &70325546966720 !ruby/object:Gem::Requirement
28
+ none: false
30
29
  requirements:
31
30
  - - ! '>='
32
31
  - !ruby/object:Gem::Version
33
32
  version: '0'
34
33
  type: :runtime
35
34
  prerelease: false
36
- version_requirements: !ruby/object:Gem::Requirement
37
- requirements:
38
- - - ! '>='
39
- - !ruby/object:Gem::Version
40
- version: '0'
35
+ version_requirements: *70325546966720
41
36
  - !ruby/object:Gem::Dependency
42
37
  name: i18n
43
- requirement: !ruby/object:Gem::Requirement
38
+ requirement: &70325546966280 !ruby/object:Gem::Requirement
39
+ none: false
44
40
  requirements:
45
41
  - - ! '>='
46
42
  - !ruby/object:Gem::Version
47
43
  version: '0'
48
44
  type: :runtime
49
45
  prerelease: false
50
- version_requirements: !ruby/object:Gem::Requirement
51
- requirements:
52
- - - ! '>='
53
- - !ruby/object:Gem::Version
54
- version: '0'
46
+ version_requirements: *70325546966280
55
47
  - !ruby/object:Gem::Dependency
56
48
  name: rake
57
- requirement: !ruby/object:Gem::Requirement
49
+ requirement: &70325546965860 !ruby/object:Gem::Requirement
50
+ none: false
58
51
  requirements:
59
52
  - - ! '>='
60
53
  - !ruby/object:Gem::Version
61
54
  version: '0'
62
55
  type: :development
63
56
  prerelease: false
64
- version_requirements: !ruby/object:Gem::Requirement
65
- requirements:
66
- - - ! '>='
67
- - !ruby/object:Gem::Version
68
- version: '0'
57
+ version_requirements: *70325546965860
69
58
  - !ruby/object:Gem::Dependency
70
59
  name: rspec
71
- requirement: !ruby/object:Gem::Requirement
60
+ requirement: &70325546965440 !ruby/object:Gem::Requirement
61
+ none: false
72
62
  requirements:
73
63
  - - ! '>='
74
64
  - !ruby/object:Gem::Version
75
65
  version: '0'
76
66
  type: :development
77
67
  prerelease: false
78
- version_requirements: !ruby/object:Gem::Requirement
79
- requirements:
80
- - - ! '>='
81
- - !ruby/object:Gem::Version
82
- version: '0'
68
+ version_requirements: *70325546965440
83
69
  - !ruby/object:Gem::Dependency
84
70
  name: webmock
85
- requirement: !ruby/object:Gem::Requirement
71
+ requirement: &70325546965020 !ruby/object:Gem::Requirement
72
+ none: false
86
73
  requirements:
87
74
  - - ! '>='
88
75
  - !ruby/object:Gem::Version
89
76
  version: '0'
90
77
  type: :development
91
78
  prerelease: false
92
- version_requirements: !ruby/object:Gem::Requirement
93
- requirements:
94
- - - ! '>='
95
- - !ruby/object:Gem::Version
96
- version: '0'
79
+ version_requirements: *70325546965020
97
80
  - !ruby/object:Gem::Dependency
98
81
  name: vcr
99
- requirement: !ruby/object:Gem::Requirement
82
+ requirement: &70325546964600 !ruby/object:Gem::Requirement
83
+ none: false
100
84
  requirements:
101
85
  - - ! '>='
102
86
  - !ruby/object:Gem::Version
103
87
  version: '0'
104
88
  type: :development
105
89
  prerelease: false
106
- version_requirements: !ruby/object:Gem::Requirement
107
- requirements:
108
- - - ! '>='
109
- - !ruby/object:Gem::Version
110
- version: '0'
90
+ version_requirements: *70325546964600
111
91
  - !ruby/object:Gem::Dependency
112
92
  name: timecop
113
- requirement: !ruby/object:Gem::Requirement
93
+ requirement: &70325546964180 !ruby/object:Gem::Requirement
94
+ none: false
114
95
  requirements:
115
96
  - - ! '>='
116
97
  - !ruby/object:Gem::Version
117
98
  version: '0'
118
99
  type: :development
119
100
  prerelease: false
120
- version_requirements: !ruby/object:Gem::Requirement
121
- requirements:
122
- - - ! '>='
123
- - !ruby/object:Gem::Version
124
- version: '0'
101
+ version_requirements: *70325546964180
125
102
  - !ruby/object:Gem::Dependency
126
103
  name: genspec
127
- requirement: !ruby/object:Gem::Requirement
104
+ requirement: &70325546963760 !ruby/object:Gem::Requirement
105
+ none: false
128
106
  requirements:
129
107
  - - ! '>='
130
108
  - !ruby/object:Gem::Version
131
109
  version: '0'
132
110
  type: :development
133
111
  prerelease: false
134
- version_requirements: !ruby/object:Gem::Requirement
135
- requirements:
136
- - - ! '>='
137
- - !ruby/object:Gem::Version
138
- version: '0'
112
+ version_requirements: *70325546963760
139
113
  - !ruby/object:Gem::Dependency
140
114
  name: rails
141
- requirement: !ruby/object:Gem::Requirement
115
+ requirement: &70325546963340 !ruby/object:Gem::Requirement
116
+ none: false
142
117
  requirements:
143
118
  - - ! '>='
144
119
  - !ruby/object:Gem::Version
145
120
  version: '0'
146
121
  type: :development
147
122
  prerelease: false
148
- version_requirements: !ruby/object:Gem::Requirement
149
- requirements:
150
- - - ! '>='
151
- - !ruby/object:Gem::Version
152
- version: '0'
123
+ version_requirements: *70325546963340
153
124
  description: phrase allows you to edit translations in-place on the page itself. More
154
125
  information at phraseapp.com
155
126
  email:
@@ -237,25 +208,26 @@ files:
237
208
  - phrase.gemspec
238
209
  homepage: https://phraseapp.com
239
210
  licenses: []
240
- metadata: {}
241
211
  post_install_message:
242
212
  rdoc_options: []
243
213
  require_paths:
244
214
  - lib
245
215
  required_ruby_version: !ruby/object:Gem::Requirement
216
+ none: false
246
217
  requirements:
247
218
  - - ! '>='
248
219
  - !ruby/object:Gem::Version
249
220
  version: '0'
250
221
  required_rubygems_version: !ruby/object:Gem::Requirement
222
+ none: false
251
223
  requirements:
252
224
  - - ! '>='
253
225
  - !ruby/object:Gem::Version
254
226
  version: 1.3.6
255
227
  requirements: []
256
228
  rubyforge_project: phrase
257
- rubygems_version: 2.0.5
229
+ rubygems_version: 1.8.10
258
230
  signing_key:
259
- specification_version: 4
231
+ specification_version: 3
260
232
  summary: The best way to manage i18n.
261
233
  test_files: []
checksums.yaml DELETED
@@ -1,15 +0,0 @@
1
- ---
2
- !binary "U0hBMQ==":
3
- metadata.gz: !binary |-
4
- OTQyMmI5YjJkMDUxNGJhNDc0MDBjNDQ2ODc5OGUzOTQxYTJjYzliMw==
5
- data.tar.gz: !binary |-
6
- OWVlZDk4MDc4OGJhZWJmOWE1MTU5Y2M3OWNjNmMzOTQzYjI3ZTIzOA==
7
- !binary "U0hBNTEy":
8
- metadata.gz: !binary |-
9
- NThlZWM4YmFiNGI1NTBjMjdhMjYxZTAzM2FhZWI2OTI4OGY4N2IxYjM2MDdk
10
- N2Y5ZGE0ZGJlOTNiOTcyMDgzMjllODE2MjM5OGUzMTc1ZTFjNzI0MDY2YTRh
11
- OWY4ZTEwNDBlNjA4NDkwOTNkZTc0Y2IzYWVmODkzNjQ0YTkzZDU=
12
- data.tar.gz: !binary |-
13
- ZTkzNzFiMGYxNjExMjI4OWJjMDY1MTQ4Y2JmNDMzMWZiOGY4ZWYxY2Y5ZDIy
14
- OTZiMTEwMDI5YmU4M2JmZTllZWMyZjk1MzliYzBkMmI2ZWUxNmU5Nzk4YjU2
15
- Zjk0MzY4YWQ1ZTdlMzUxN2I3ZTlkMmJhZDRjNDQ2ZDQ3NTY3Yzc=