zendesk_apps_support 3.1.0 → 3.1.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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 05ad3567f597664ad8ce94c872134e67f2e9bda7
4
- data.tar.gz: 2a3f1251f376c3e59f81ec773586aafa559c50f9
3
+ metadata.gz: 3c3fca724e7f35785484603ca55af83855f552b4
4
+ data.tar.gz: 0d43d9895907802f2b78e2254b51fd9071cfd81b
5
5
  SHA512:
6
- metadata.gz: b56372c5c05c92f5e17b213a53fcfabdbdf4533691ad0cab5738eb0c28aa31719ae22f6ba7488432565f537ca39605bec0abd611ce8586588d47b1f1ce62a8e1
7
- data.tar.gz: a5661aba54f00f86803467580fc11eb04ccda18d7ef808e72275548e8c55267675d9475b50a9fe68e5b89696e842783be12e75a8cfa8eee52774df9984d9b9c6
6
+ metadata.gz: ab5d576101b539d7ae1f03a2e8ee3d19dba79ae06ac63c99e81aed69f82892b6223214ca1fe604c19c2b6f6b247616e6969ae0b4954604184412d450356ae69d
7
+ data.tar.gz: f0055a8a80058d9dc1418c01ead238e9baa10f2ead12599cbaf2e0f1b69b3fe198cc43ee5d1e4814207de159f6434bb1300e21b4f82395618ddf5109587883fb
@@ -1,5 +1,4 @@
1
1
  module ZendeskAppsSupport
2
- require 'zendesk_apps_support/sass_functions'
3
2
  require 'zendesk_apps_support/engine'
4
3
 
5
4
  autoload :AppFile, 'zendesk_apps_support/app_file'
@@ -1,5 +1,3 @@
1
- require 'json'
2
-
3
1
  module ZendeskAppsSupport
4
2
  # At any point in time, we support up to three versions:
5
3
  # * deprecated -- we will still serve apps targeting the deprecated version,
@@ -1,6 +1,4 @@
1
1
  # frozen_string_literal: true
2
- require 'json'
3
-
4
2
  module ZendeskAppsSupport
5
3
  class Manifest
6
4
  class OverrideError < StandardError
@@ -155,7 +155,7 @@ module ZendeskAppsSupport
155
155
 
156
156
  def requirements_json
157
157
  return nil unless has_requirements?
158
- @requirements ||= read_json('requirements.json')
158
+ @requirements ||= read_json('requirements.json', object_class: Manifest::NoOverrideHash)
159
159
  end
160
160
 
161
161
  def is_no_template
@@ -1,4 +1,5 @@
1
1
  require 'sass'
2
+ require 'zendesk_apps_support/sass_functions'
2
3
 
3
4
  module ZendeskAppsSupport
4
5
  class StylesheetCompiler
@@ -1,4 +1,3 @@
1
- require 'json'
2
1
  require 'uri'
3
2
 
4
3
  module ZendeskAppsSupport
@@ -1,6 +1,3 @@
1
- require 'json'
2
- require 'json/stream'
3
-
4
1
  module ZendeskAppsSupport
5
2
  module Validations
6
3
  module Requirements
@@ -8,17 +5,14 @@ module ZendeskAppsSupport
8
5
 
9
6
  class <<self
10
7
  def call(package)
11
- requirements_file = package.files.find { |f| f.relative_path == 'requirements.json' }
12
-
13
- return [ValidationError.new(:missing_requirements)] unless requirements_file
8
+ return [ValidationError.new(:missing_requirements)] unless package.has_file? 'requirements.json'
14
9
 
15
- requirements_stream = requirements_file.read
16
- duplicates = non_unique_type_keys(requirements_stream)
17
- unless duplicates.empty?
18
- return [ValidationError.new(:duplicate_requirements, duplicate_keys: duplicates.join(', '), count: duplicates.length)]
10
+ begin
11
+ requirements = package.requirements_json
12
+ rescue ZendeskAppsSupport::Manifest::OverrideError => e
13
+ return [ValidationError.new(:duplicate_requirements, duplicate_keys: e.key, count: 1)]
19
14
  end
20
15
 
21
- requirements = JSON.load(requirements_stream)
22
16
  [].tap do |errors|
23
17
  errors << invalid_requirements_types(requirements)
24
18
  errors << excessive_requirements(requirements)
@@ -86,19 +80,6 @@ module ZendeskAppsSupport
86
80
  ValidationError.new(:invalid_requirements_types, invalid_types: invalid_types.join(', '), count: invalid_types.length)
87
81
  end
88
82
  end
89
-
90
- def non_unique_type_keys(requirements)
91
- keys = []
92
- duplicates = []
93
- parser = JSON::Stream::Parser.new do
94
- start_object { keys.push({}) }
95
- end_object { keys.pop }
96
- key { |k| duplicates.push(k) if keys.last.include? k; keys.last[k] = nil }
97
- end
98
- parser << requirements
99
-
100
- duplicates
101
- end
102
83
  end
103
84
  end
104
85
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: zendesk_apps_support
3
3
  version: !ruby/object:Gem::Version
4
- version: 3.1.0
4
+ version: 3.1.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - James A. Rosen
@@ -11,7 +11,7 @@ authors:
11
11
  autorequire:
12
12
  bindir: bin
13
13
  cert_chain: []
14
- date: 2016-08-26 00:00:00.000000000 Z
14
+ date: 2016-09-02 00:00:00.000000000 Z
15
15
  dependencies:
16
16
  - !ruby/object:Gem::Dependency
17
17
  name: i18n
@@ -55,20 +55,6 @@ dependencies:
55
55
  - - ">="
56
56
  - !ruby/object:Gem::Version
57
57
  version: '0'
58
- - !ruby/object:Gem::Dependency
59
- name: json-stream
60
- requirement: !ruby/object:Gem::Requirement
61
- requirements:
62
- - - ">="
63
- - !ruby/object:Gem::Version
64
- version: '0'
65
- type: :runtime
66
- prerelease: false
67
- version_requirements: !ruby/object:Gem::Requirement
68
- requirements:
69
- - - ">="
70
- - !ruby/object:Gem::Version
71
- version: '0'
72
58
  - !ruby/object:Gem::Dependency
73
59
  name: image_size
74
60
  requirement: !ruby/object:Gem::Requirement