yamllint 0.0.2 → 0.0.3

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: 4047429efff87829d09becf80146d04da6b18a20
4
- data.tar.gz: d160545f31729227af994bc04542ec4c65fc87e7
3
+ metadata.gz: e2385493452cd1aa83778ef91e6190cf579f6dba
4
+ data.tar.gz: 8a1e10518d95ab9ac3b488d7ba8c2f3c8bce0845
5
5
  SHA512:
6
- metadata.gz: 239d2bdaf829ecdd83a9a0beb97699fa9004ca5cf0baf9cd14eda13ae922de556d45916d3dbc58c0025bda3af48216335fc2a51d19699660a3bab2daf986addb
7
- data.tar.gz: 8ce84b122678bcf56e9ee8a9f133862665d5809ca105f523a2b81d024df5c3fd630289980993ba7fd6c8f2da5bde5eaf9678431db6837c4b96480c27873dc4bc
6
+ metadata.gz: 452d3f5093087b39915225f094c34956ff6d491d85630feefdcc7b8fe1ecc4ca3cac21dc5da27c7b47d2e2e04ff5f7ece0f02e1e55e011d7a522e5f736f58438
7
+ data.tar.gz: 95facbf3993b0267735f64e90b975d9dca09096c10b72245647aa259e538663c654495f008464fd52609da5ab0917ffd46a335ee7e48a1845a8409f36c8ecf7d
data/CHANGELOG.md ADDED
@@ -0,0 +1,18 @@
1
+ YamlLint gem CHANGELOG
2
+ ======================
3
+ This file is used to list changes made in each version of the YamlLint gem.
4
+
5
+ v0.0.3 (2015-01-15)
6
+ -------------------
7
+ - **[ISSUE #1](https://github.com/shortdudey123/yamllint/issues/1)** - Add more verbose output
8
+ - **[ISSUE #2](https://github.com/shortdudey123/yamllint/issues/2)** - Add file extention verification
9
+ - add fail_on_error option to rake task
10
+
11
+ v0.0.2 (2015-01-15)
12
+ -------------------
13
+ - Fix rake_task filename
14
+
15
+
16
+ v0.0.1 (2015-01-15)
17
+ -------------------
18
+ - Initial gem publish
data/README.md CHANGED
@@ -81,6 +81,8 @@ spec/data/spaces.yaml
81
81
  $
82
82
  ```
83
83
 
84
+ Optionally add `t.fail_on_error = false` in the Rakefile definition to continue on to the next rake task even if YamlLint finds errors.
85
+
84
86
  ## Contributing
85
87
 
86
88
  1. Fork it ( https://github.com/shortdudey123/yamllint/fork )
data/lib/yamllint/cli.rb CHANGED
@@ -32,14 +32,17 @@ module YamlLint
32
32
  linter = lint_files(files_to_check)
33
33
  end
34
34
 
35
+ puts 'YamlLint found no errors' unless linter.errors?
35
36
  return unless linter.errors?
36
37
  linter.display_errors
38
+ puts "YAML lint found #{linter.errors_count} errors"
37
39
  @kernel.exit(1)
38
40
  end
39
41
 
40
42
  def lint_files(files_to_check)
41
43
  linter = YamlLint::Linter.new
42
44
  begin
45
+ puts "Checking #{files_to_check.flatten.length} files"
43
46
  linter.check_all(files_to_check)
44
47
  rescue => e
45
48
  @stderr.puts e.message
@@ -1,6 +1,5 @@
1
1
  require 'yaml'
2
2
  require 'set'
3
- require 'pry'
4
3
 
5
4
  require 'yamllint/errors'
6
5
 
@@ -23,6 +22,11 @@ module YamlLint
23
22
  fail FileNotFoundError, "#{path}: no such file" unless File.exist?(path)
24
23
 
25
24
  valid = false
25
+ unless check_filename(path)
26
+ errors[path] = ['File extention must be .yaml or .yml']
27
+ return valid
28
+ end
29
+
26
30
  File.open(path, 'r') do |f|
27
31
  error_array = []
28
32
  valid = check_data(f.read, error_array)
@@ -46,6 +50,10 @@ module YamlLint
46
50
  !errors.empty?
47
51
  end
48
52
 
53
+ def errors_count
54
+ errors.length
55
+ end
56
+
49
57
  def display_errors
50
58
  errors.each do |path, errors|
51
59
  puts path
@@ -57,6 +65,12 @@ module YamlLint
57
65
 
58
66
  private
59
67
 
68
+ def check_filename(filename)
69
+ extention = filename.split('.').last
70
+ return true if extention == 'yaml' || extention == 'yml'
71
+ false
72
+ end
73
+
60
74
  def check_data(yaml_data, errors_array)
61
75
  valid = check_not_empty(yaml_data, errors_array)
62
76
  valid &&= check_syntax_valid(yaml_data, errors_array)
@@ -10,9 +10,11 @@ module YamlLint
10
10
  class RakeTask < Rake::TaskLib
11
11
  attr_accessor :name
12
12
  attr_accessor :paths
13
+ attr_accessor :fail_on_error
13
14
 
14
15
  def initialize(name = :yamllint)
15
16
  @name = name
17
+ @fail_on_error = true
16
18
 
17
19
  yield self if block_given?
18
20
 
@@ -25,14 +27,21 @@ module YamlLint
25
27
  desc 'Run yamllint' unless ::Rake.application.last_comment
26
28
 
27
29
  task(name) do
30
+ puts 'Running YamlLint...'
31
+
28
32
  files_to_check = Rake::FileList.new(paths)
29
33
 
34
+ puts "Checking #{files_to_check.flatten.length} files"
35
+
30
36
  linter = ::YamlLint::Linter.new
31
37
  linter.check_all(files_to_check)
32
38
 
33
39
  if linter.errors?
34
40
  linter.display_errors
35
- abort('YAML lint found')
41
+ puts "YAML lint found #{linter.errors_count} errors"
42
+ abort('YamlLint failed!') if fail_on_error
43
+ else
44
+ puts 'YamlLint found no errors'
36
45
  end
37
46
  end
38
47
  end
@@ -3,5 +3,5 @@
3
3
  #
4
4
  # Contains YamlLint version number
5
5
  module YamlLint
6
- VERSION = '0.0.2'
6
+ VERSION = '0.0.3'
7
7
  end
data/spec/cli_spec.rb CHANGED
@@ -41,6 +41,11 @@ describe 'yamllint' do
41
41
  assert_failing_with('no such file')
42
42
  end
43
43
 
44
+ it 'should fail with an invalid YAML file extention' do
45
+ yamllint spec_data('wrong_extention.txt')
46
+ assert_failing_with('File extention must be .yaml or .yml')
47
+ end
48
+
44
49
  it 'should fail with a path that is unreadable' do
45
50
  run_simple('mkdir -p tmp')
46
51
  run_simple('touch tmp/unreadable_file.yaml')
File without changes
data/spec/linter_spec.rb CHANGED
@@ -13,6 +13,10 @@ describe 'YamlLint::Linter' do
13
13
  expect(linter.check(spec_data('valid_complex.yaml'))).to be(true)
14
14
  end
15
15
 
16
+ it 'should be unhappy with an invalid YAML file extention' do
17
+ expect(linter.check(spec_data('wrong_extention.txt'))).to be(false)
18
+ end
19
+
16
20
  it 'should be unhappy with an invalid YAML file' do
17
21
  expect(linter.check(spec_data('invalid.yaml'))).to be(false)
18
22
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: yamllint
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.2
4
+ version: 0.0.3
5
5
  platform: ruby
6
6
  authors:
7
7
  - Grant Ridder
@@ -121,6 +121,7 @@ files:
121
121
  - ".rubocop.yml"
122
122
  - ".rubocop_todo.yml"
123
123
  - ".travis.yml"
124
+ - CHANGELOG.md
124
125
  - Gemfile
125
126
  - LICENSE
126
127
  - README.md
@@ -142,6 +143,7 @@ files:
142
143
  - spec/data/valid.yaml
143
144
  - spec/data/valid_complex.yaml
144
145
  - spec/data/valid_complex.yml
146
+ - spec/data/wrong_extention.txt
145
147
  - spec/linter_spec.rb
146
148
  - spec/spec_helper.rb
147
149
  - yamllint.gemspec
@@ -180,5 +182,6 @@ test_files:
180
182
  - spec/data/valid.yaml
181
183
  - spec/data/valid_complex.yaml
182
184
  - spec/data/valid_complex.yml
185
+ - spec/data/wrong_extention.txt
183
186
  - spec/linter_spec.rb
184
187
  - spec/spec_helper.rb