metadata-json-lint 2.0.1 → 2.4.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.
@@ -0,0 +1,2 @@
1
+ $LOAD_PATH.unshift(File.expand_path('../../../lib', __FILE__))
2
+ require 'metadata-json-lint/rake_task'
@@ -0,0 +1 @@
1
+ (ERROR) requirements: The property 'requirements' of type string did not match the following type: array
@@ -0,0 +1,61 @@
1
+ {
2
+ "name": "puppetlabs-postgresql",
3
+ "version": "3.4.1",
4
+ "author": "Inkling/Puppet Labs",
5
+ "summary": "PostgreSQL defined resource types",
6
+ "license": "Apache-2.0",
7
+ "source": "git://github.com/puppetlabs/puppet-postgresql.git",
8
+ "project_page": "https://github.com/puppetlabs/puppet-postgresql",
9
+ "issues_url": "https://github.com/puppetlabs/puppet-postgresql/issues",
10
+ "operatingsystem_support": [
11
+ {
12
+ "operatingsystem": "RedHat",
13
+ "operatingsystemrelease": [
14
+ "5",
15
+ "6",
16
+ "7"
17
+ ]
18
+ },
19
+ {
20
+ "operatingsystem": "CentOS",
21
+ "operatingsystemrelease": [
22
+ "5",
23
+ "6",
24
+ "7"
25
+ ]
26
+ },
27
+ {
28
+ "operatingsystem": "OracleLinux",
29
+ "operatingsystemrelease": [
30
+ "5",
31
+ "6",
32
+ "7"
33
+ ]
34
+ },
35
+ {
36
+ "operatingsystem": "Scientific",
37
+ "operatingsystemrelease": [
38
+ "5",
39
+ "6",
40
+ "7"
41
+ ]
42
+ },
43
+ {
44
+ "operatingsystem": "Debian",
45
+ "operatingsystemrelease": [
46
+ "6",
47
+ "7"
48
+ ]
49
+ },
50
+ {
51
+ "operatingsystem": "Ubuntu",
52
+ "operatingsystemrelease": [
53
+ "10.04",
54
+ "12.04",
55
+ "14.04"
56
+ ]
57
+ }
58
+ ],
59
+ "requirements": "aoeu",
60
+ "dependencies": []
61
+ }
@@ -0,0 +1,2 @@
1
+ $LOAD_PATH.unshift(File.expand_path('../../../lib', __FILE__))
2
+ require 'metadata-json-lint/rake_task'
@@ -0,0 +1,2 @@
1
+ (WARN) requirements: 3.2.0 is no longer supported. Minimum supported version is 4.10.0(WARN) requirement: 3.2.0 is no longer supported. Minimum supported version is 4.10.0
2
+ Warnings found in metadata.json
@@ -0,0 +1,92 @@
1
+ {
2
+ "name": "puppetlabs-postgresql",
3
+ "version": "3.4.1",
4
+ "author": "Inkling/Puppet Labs",
5
+ "summary": "PostgreSQL defined resource types",
6
+ "license": "Apache-2.0",
7
+ "source": "git://github.com/puppetlabs/puppet-postgresql.git",
8
+ "project_page": "https://github.com/puppetlabs/puppet-postgresql",
9
+ "issues_url": "https://github.com/puppetlabs/puppet-postgresql/issues",
10
+ "tags": [ "postgres" ],
11
+ "operatingsystem_support": [
12
+ {
13
+ "operatingsystem": "RedHat",
14
+ "operatingsystemrelease": [
15
+ "5",
16
+ "6",
17
+ "7"
18
+ ]
19
+ },
20
+ {
21
+ "operatingsystem": "CentOS",
22
+ "operatingsystemrelease": [
23
+ "5",
24
+ "6",
25
+ "7"
26
+ ]
27
+ },
28
+ {
29
+ "operatingsystem": "OracleLinux",
30
+ "operatingsystemrelease": [
31
+ "5",
32
+ "6",
33
+ "7"
34
+ ]
35
+ },
36
+ {
37
+ "operatingsystem": "Scientific",
38
+ "operatingsystemrelease": [
39
+ "5",
40
+ "6",
41
+ "7"
42
+ ]
43
+ },
44
+ {
45
+ "operatingsystem": "Debian",
46
+ "operatingsystemrelease": [
47
+ "6",
48
+ "7"
49
+ ]
50
+ },
51
+ {
52
+ "operatingsystem": "Ubuntu",
53
+ "operatingsystemrelease": [
54
+ "10.04",
55
+ "12.04",
56
+ "14.04"
57
+ ]
58
+ }
59
+ ],
60
+ "requirements": [
61
+ {
62
+ "name": "puppet",
63
+ "version_requirement": "3.2.0"
64
+ }
65
+ ],
66
+ "dependencies": [
67
+ {
68
+ "name": "puppetlabs/stdlib",
69
+ "version_requirement": "1.2.3"
70
+ },
71
+ {
72
+ "name": "puppetlabs/apt",
73
+ "version_requirement": "< 1.2.3"
74
+ },
75
+ {
76
+ "name": "puppetlabs/puppetdb",
77
+ "version_requirement": "<= 1.2.3"
78
+ },
79
+ {
80
+ "name": "puppetlabs/vcsrepo",
81
+ "version_requirement": ">= 1.0.0 < 2.0.0"
82
+ },
83
+ {
84
+ "name": "puppetlabs/rabbitmq",
85
+ "version_requirement": "1.x"
86
+ },
87
+ {
88
+ "name": "puppetlabs/motd",
89
+ "version_requirement": "1.2.x"
90
+ }
91
+ ]
92
+ }
@@ -112,15 +112,19 @@ test "mixed_version_syntax" $FAILURE
112
112
  # Run one with empty dependencies array, expect SUCCESS
113
113
  test "no_dependencies" $SUCCESS
114
114
 
115
- # Run one with open ended dependency, expect SUCCESS
116
- test "open_ended_dependency" $SUCCESS --no-fail-on-warnings
115
+ # Run one with open ended dependency, expect SUCCESS as strict deps is off by default
116
+ test "open_ended_dependency" $SUCCESS
117
117
  # Run one with open ended dependency and --strict-dependencies, expect FAILURE
118
118
  test "open_ended_dependency" $FAILURE --strict-dependencies
119
+ # Run one with open ended dependency and --strict-dependencies, but pass on warnings, expect SUCCESS
120
+ test "open_ended_dependency" $SUCCESS --strict-dependencies --no-fail-on-warnings
119
121
 
120
122
  # Run one with missing version_requirement and --no-strict-dependency, expect SUCCESS
121
- test "missing_version_requirement" $SUCCESS --no-fail-on-warnings
123
+ test "missing_version_requirement" $SUCCESS
122
124
  # Run one with open ended dependency and --strict-dependencies, expect FAILURE
123
125
  test "missing_version_requirement" $FAILURE --strict-dependencies
126
+ # Run one with open ended dependency and --strict-dependencies, but pass on warnings, expect SUCCESS
127
+ test "missing_version_requirement" $SUCCESS --strict-dependencies --no-fail-on-warnings
124
128
 
125
129
  # Run test for "proprietary"-licensed modules, expect SUCCESS
126
130
  test "proprietary" $SUCCESS
@@ -137,6 +141,15 @@ test "tags_no_array" $FAILURE
137
141
  # Run with json output format
138
142
  test "json_format" $FAILURE --format json
139
143
 
144
+ # Run against a metadata.json with a string for the requirements
145
+ test "non_array_requirements" $FAILURE
146
+
147
+ # Run against a metadata.json with an unsupported minimum Puppet version for the requirements
148
+ test "requirements_eol_version" $FAILURE --strict-puppet-version
149
+
150
+ # Run a broken one, expect FAILURE
151
+ test "duplicate-requirement" $FAILURE
152
+
140
153
  # Test running without specifying file to parse
141
154
  cd perfect
142
155
  bundle exec metadata-json-lint
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: metadata-json-lint
3
3
  version: !ruby/object:Gem::Version
4
- version: 2.0.1
4
+ version: 2.4.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Vox Pupuli
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2017-06-30 00:00:00.000000000 Z
11
+ date: 2020-06-12 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: spdx-licenses
@@ -39,25 +39,19 @@ dependencies:
39
39
  - !ruby/object:Gem::Version
40
40
  version: '2.8'
41
41
  - !ruby/object:Gem::Dependency
42
- name: puppet
42
+ name: pry
43
43
  requirement: !ruby/object:Gem::Requirement
44
44
  requirements:
45
45
  - - ">="
46
46
  - !ruby/object:Gem::Version
47
- version: 4.7.0
48
- - - "<"
49
- - !ruby/object:Gem::Version
50
- version: 6.0.0
51
- type: :runtime
47
+ version: '0'
48
+ type: :development
52
49
  prerelease: false
53
50
  version_requirements: !ruby/object:Gem::Requirement
54
51
  requirements:
55
52
  - - ">="
56
53
  - !ruby/object:Gem::Version
57
- version: 4.7.0
58
- - - "<"
59
- - !ruby/object:Gem::Version
60
- version: 6.0.0
54
+ version: '0'
61
55
  - !ruby/object:Gem::Dependency
62
56
  name: rake
63
57
  requirement: !ruby/object:Gem::Requirement
@@ -73,7 +67,7 @@ dependencies:
73
67
  - !ruby/object:Gem::Version
74
68
  version: '0'
75
69
  - !ruby/object:Gem::Dependency
76
- name: rspec
70
+ name: semantic_puppet
77
71
  requirement: !ruby/object:Gem::Requirement
78
72
  requirements:
79
73
  - - ">="
@@ -87,7 +81,7 @@ dependencies:
87
81
  - !ruby/object:Gem::Version
88
82
  version: '0'
89
83
  - !ruby/object:Gem::Dependency
90
- name: rubocop
84
+ name: rspec
91
85
  requirement: !ruby/object:Gem::Requirement
92
86
  requirements:
93
87
  - - ">="
@@ -100,6 +94,20 @@ dependencies:
100
94
  - - ">="
101
95
  - !ruby/object:Gem::Version
102
96
  version: '0'
97
+ - !ruby/object:Gem::Dependency
98
+ name: rubocop
99
+ requirement: !ruby/object:Gem::Requirement
100
+ requirements:
101
+ - - "~>"
102
+ - !ruby/object:Gem::Version
103
+ version: 0.50.0
104
+ type: :development
105
+ prerelease: false
106
+ version_requirements: !ruby/object:Gem::Requirement
107
+ requirements:
108
+ - - "~>"
109
+ - !ruby/object:Gem::Version
110
+ version: 0.50.0
103
111
  description: Utility to verify Puppet metadata.json files
104
112
  email: voxpupuli@groups.io
105
113
  executables:
@@ -114,15 +122,18 @@ files:
114
122
  - ".travis.yml"
115
123
  - CHANGELOG.md
116
124
  - Gemfile
125
+ - HISTORY.md
117
126
  - LICENSE
118
127
  - README.md
119
128
  - Rakefile
120
129
  - bin/metadata-json-lint
121
130
  - lib/metadata-json-lint/rake_task.rb
122
131
  - lib/metadata-json-lint/schema.rb
132
+ - lib/metadata-json-lint/semantic_puppet_loader.rb
123
133
  - lib/metadata-json-lint/version_requirement.rb
124
134
  - lib/metadata_json_lint.rb
125
135
  - metadata-json-lint.gemspec
136
+ - spec/metadata_json_lint_spec.rb
126
137
  - spec/schema_spec.rb
127
138
  - spec/spec_helper.rb
128
139
  - spec/version_requirement_spec.rb
@@ -135,6 +146,9 @@ files:
135
146
  - tests/duplicate-dep/Rakefile
136
147
  - tests/duplicate-dep/expected
137
148
  - tests/duplicate-dep/metadata.json
149
+ - tests/duplicate-requirement/Rakefile
150
+ - tests/duplicate-requirement/expected
151
+ - tests/duplicate-requirement/metadata.json
138
152
  - tests/json_format/Rakefile
139
153
  - tests/json_format/expected
140
154
  - tests/json_format/metadata.json
@@ -158,6 +172,9 @@ files:
158
172
  - tests/no_pe/metadata.json
159
173
  - tests/no_version_range/Rakefile
160
174
  - tests/no_version_range/metadata.json
175
+ - tests/non_array_requirements/Rakefile
176
+ - tests/non_array_requirements/expected
177
+ - tests/non_array_requirements/metadata.json
161
178
  - tests/noname/Rakefile
162
179
  - tests/noname/expected
163
180
  - tests/noname/metadata.json
@@ -176,6 +193,9 @@ files:
176
193
  - tests/rake_multiple_json_options/Rakefile
177
194
  - tests/rake_multiple_json_options/metadata_license.json
178
195
  - tests/rake_multiple_json_options/metadata_ok.json
196
+ - tests/requirements_eol_version/Rakefile
197
+ - tests/requirements_eol_version/expected
198
+ - tests/requirements_eol_version/metadata.json
179
199
  - tests/tags_no_array/Rakefile
180
200
  - tests/tags_no_array/expected
181
201
  - tests/tags_no_array/metadata.json
@@ -189,9 +209,13 @@ homepage: http://github.com/voxpupuli/metadata-json-lint
189
209
  licenses:
190
210
  - Apache-2.0
191
211
  metadata: {}
192
- post_install_message: "\n -------------------------------------------------\n semantic_puppet
193
- must be installed within\n your Gemfile if you use Puppet <= 4.8.x!!\n -------------------------------------------------\n
194
- \ "
212
+ post_install_message: |2
213
+
214
+ ----------------------------------------------------------
215
+ For the most accurate results, the semantic_puppet
216
+ gem should be included within your Gemfile if you
217
+ use Puppet <= 4.8.x
218
+ ----------------------------------------------------------
195
219
  rdoc_options: []
196
220
  require_paths:
197
221
  - lib
@@ -207,11 +231,12 @@ required_rubygems_version: !ruby/object:Gem::Requirement
207
231
  version: '0'
208
232
  requirements: []
209
233
  rubyforge_project:
210
- rubygems_version: 2.4.5
234
+ rubygems_version: 2.7.7
211
235
  signing_key:
212
236
  specification_version: 4
213
237
  summary: metadata-json-lint /path/to/metadata.json
214
238
  test_files:
239
+ - spec/metadata_json_lint_spec.rb
215
240
  - spec/schema_spec.rb
216
241
  - spec/spec_helper.rb
217
242
  - spec/version_requirement_spec.rb
@@ -224,6 +249,9 @@ test_files:
224
249
  - tests/duplicate-dep/Rakefile
225
250
  - tests/duplicate-dep/expected
226
251
  - tests/duplicate-dep/metadata.json
252
+ - tests/duplicate-requirement/Rakefile
253
+ - tests/duplicate-requirement/expected
254
+ - tests/duplicate-requirement/metadata.json
227
255
  - tests/json_format/Rakefile
228
256
  - tests/json_format/expected
229
257
  - tests/json_format/metadata.json
@@ -247,6 +275,9 @@ test_files:
247
275
  - tests/no_pe/metadata.json
248
276
  - tests/no_version_range/Rakefile
249
277
  - tests/no_version_range/metadata.json
278
+ - tests/non_array_requirements/Rakefile
279
+ - tests/non_array_requirements/expected
280
+ - tests/non_array_requirements/metadata.json
250
281
  - tests/noname/Rakefile
251
282
  - tests/noname/expected
252
283
  - tests/noname/metadata.json
@@ -265,6 +296,9 @@ test_files:
265
296
  - tests/rake_multiple_json_options/Rakefile
266
297
  - tests/rake_multiple_json_options/metadata_license.json
267
298
  - tests/rake_multiple_json_options/metadata_ok.json
299
+ - tests/requirements_eol_version/Rakefile
300
+ - tests/requirements_eol_version/expected
301
+ - tests/requirements_eol_version/metadata.json
268
302
  - tests/tags_no_array/Rakefile
269
303
  - tests/tags_no_array/expected
270
304
  - tests/tags_no_array/metadata.json