mdl 0.6.0 → 0.11.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (152) hide show
  1. checksums.yaml +4 -4
  2. data/bin/mdl +2 -2
  3. data/lib/mdl.rb +49 -40
  4. data/lib/mdl/cli.rb +92 -90
  5. data/lib/mdl/config.rb +2 -1
  6. data/lib/mdl/doc.rb +51 -58
  7. data/lib/mdl/kramdown_parser.rb +1 -1
  8. data/lib/mdl/rules.rb +222 -168
  9. data/lib/mdl/ruleset.rb +11 -10
  10. data/lib/mdl/style.rb +28 -12
  11. data/lib/mdl/styles/cirosantilli.rb +2 -2
  12. data/lib/mdl/styles/default.rb +1 -1
  13. data/lib/mdl/version.rb +1 -1
  14. data/mdl.gemspec +21 -18
  15. metadata +75 -289
  16. data/.gitignore +0 -13
  17. data/.pre-commit-hooks.yaml +0 -6
  18. data/.travis.yml +0 -12
  19. data/CHANGELOG.md +0 -208
  20. data/CONTRIBUTING.md +0 -7
  21. data/MAINTAINERS.md +0 -21
  22. data/README.md +0 -87
  23. data/Rakefile +0 -8
  24. data/docs/RULES.md +0 -1089
  25. data/docs/configuration.md +0 -99
  26. data/docs/creating_rules.md +0 -90
  27. data/docs/creating_styles.md +0 -47
  28. data/docs/rolling_a_release.md +0 -49
  29. data/example/markdown_spec.md +0 -897
  30. data/test/fixtures/default_mdlrc +0 -1
  31. data/test/fixtures/dir_with_md_and_markdown/bar.markdown +0 -1
  32. data/test/fixtures/dir_with_md_and_markdown/foo.md +0 -1
  33. data/test/fixtures/front_matter/jekyll_post.md +0 -16
  34. data/test/fixtures/mdlrc_disable_rules +0 -1
  35. data/test/fixtures/mdlrc_disable_tags +0 -1
  36. data/test/fixtures/mdlrc_enable_rules +0 -1
  37. data/test/fixtures/mdlrc_enable_tags +0 -1
  38. data/test/fixtures/my_ruleset.rb +0 -6
  39. data/test/rule_tests/alternate_top_level_header.md +0 -3
  40. data/test/rule_tests/alternate_top_level_header_style.rb +0 -4
  41. data/test/rule_tests/atx_closed_header_spacing.md +0 -17
  42. data/test/rule_tests/atx_header_spacing.md +0 -5
  43. data/test/rule_tests/blockquote_blank_lines.md +0 -31
  44. data/test/rule_tests/blockquote_spaces.md +0 -23
  45. data/test/rule_tests/bulleted_list_2_space_indent.md +0 -6
  46. data/test/rule_tests/bulleted_list_2_space_indent_style.rb +0 -3
  47. data/test/rule_tests/bulleted_list_4_space_indent.md +0 -3
  48. data/test/rule_tests/bulleted_list_not_at_beginning_of_line.md +0 -14
  49. data/test/rule_tests/code_block_consistency.md +0 -11
  50. data/test/rule_tests/code_block_consistency_style.rb +0 -1
  51. data/test/rule_tests/code_block_dollar.md +0 -33
  52. data/test/rule_tests/code_block_dollar_fence.md +0 -29
  53. data/test/rule_tests/code_block_fenced.md +0 -17
  54. data/test/rule_tests/code_block_fenced_style.rb +0 -1
  55. data/test/rule_tests/code_block_indented.md +0 -17
  56. data/test/rule_tests/code_block_indented_style.rb +0 -1
  57. data/test/rule_tests/consecutive_blank_lines.md +0 -11
  58. data/test/rule_tests/consistent_bullet_styles_asterisk.md +0 -3
  59. data/test/rule_tests/consistent_bullet_styles_dash.md +0 -3
  60. data/test/rule_tests/consistent_bullet_styles_plus.md +0 -3
  61. data/test/rule_tests/default_test_style.rb +0 -5
  62. data/test/rule_tests/emphasis_instead_of_headers.md +0 -42
  63. data/test/rule_tests/empty_doc.md +0 -0
  64. data/test/rule_tests/fenced_code_blocks.md +0 -27
  65. data/test/rule_tests/fenced_code_with_nesting.md +0 -73
  66. data/test/rule_tests/fenced_code_without_blank_lines.md +0 -42
  67. data/test/rule_tests/fenced_code_without_blank_lines_style.rb +0 -3
  68. data/test/rule_tests/first_header_bad_atx.md +0 -1
  69. data/test/rule_tests/first_header_bad_setext.md +0 -2
  70. data/test/rule_tests/first_header_good_atx.md +0 -1
  71. data/test/rule_tests/first_header_good_setext.md +0 -2
  72. data/test/rule_tests/first_line_top_level_header_atx.md +0 -3
  73. data/test/rule_tests/first_line_top_level_header_atx_style.rb +0 -2
  74. data/test/rule_tests/first_line_top_level_header_setext.md +0 -4
  75. data/test/rule_tests/first_line_top_level_header_setext_style.rb +0 -2
  76. data/test/rule_tests/fix_102_extra_nodes_in_link_text.md +0 -8
  77. data/test/rule_tests/header_duplicate_content.md +0 -11
  78. data/test/rule_tests/header_duplicate_content_different_nesting.md +0 -11
  79. data/test/rule_tests/header_duplicate_content_different_nesting_style.rb +0 -1
  80. data/test/rule_tests/header_duplicate_content_no_different_nesting.md +0 -13
  81. data/test/rule_tests/header_multiple_toplevel.md +0 -3
  82. data/test/rule_tests/header_mutliple_h1_no_toplevel.md +0 -5
  83. data/test/rule_tests/header_trailing_punctuation.md +0 -11
  84. data/test/rule_tests/header_trailing_punctuation_customized.md +0 -14
  85. data/test/rule_tests/header_trailing_punctuation_customized_style.rb +0 -2
  86. data/test/rule_tests/headers_bad.md +0 -7
  87. data/test/rule_tests/headers_good.md +0 -5
  88. data/test/rule_tests/headers_good_setext_with_atx.md +0 -7
  89. data/test/rule_tests/headers_good_setext_with_atx_style.rb +0 -2
  90. data/test/rule_tests/headers_good_with_issue_numbers.md +0 -12
  91. data/test/rule_tests/headers_surrounding_space_atx.md +0 -12
  92. data/test/rule_tests/headers_surrounding_space_setext.md +0 -15
  93. data/test/rule_tests/headers_with_spaces_at_the_beginning.md +0 -20
  94. data/test/rule_tests/hr_style_dashes.md +0 -22
  95. data/test/rule_tests/hr_style_dashes_style.rb +0 -3
  96. data/test/rule_tests/hr_style_inconsistent.md +0 -22
  97. data/test/rule_tests/hr_style_long.md +0 -22
  98. data/test/rule_tests/hr_style_long_style.rb +0 -3
  99. data/test/rule_tests/hr_style_stars.md +0 -22
  100. data/test/rule_tests/hr_style_stars_style.rb +0 -3
  101. data/test/rule_tests/inconsistent_bullet_indent_same_level.md +0 -4
  102. data/test/rule_tests/inconsistent_bullet_styles_asterisk.md +0 -3
  103. data/test/rule_tests/inconsistent_bullet_styles_dash.md +0 -3
  104. data/test/rule_tests/inconsistent_bullet_styles_plus.md +0 -3
  105. data/test/rule_tests/incorrect_bullet_style_asterisk.md +0 -3
  106. data/test/rule_tests/incorrect_bullet_style_asterisk_style.rb +0 -3
  107. data/test/rule_tests/incorrect_bullet_style_dash.md +0 -3
  108. data/test/rule_tests/incorrect_bullet_style_dash_style.rb +0 -3
  109. data/test/rule_tests/incorrect_bullet_style_plus.md +0 -3
  110. data/test/rule_tests/incorrect_bullet_style_plus_style.rb +0 -3
  111. data/test/rule_tests/incorrect_header_atx.md +0 -6
  112. data/test/rule_tests/incorrect_header_atx_closed.md +0 -6
  113. data/test/rule_tests/incorrect_header_atx_closed_style.rb +0 -2
  114. data/test/rule_tests/incorrect_header_atx_style.rb +0 -2
  115. data/test/rule_tests/incorrect_header_setext.md +0 -6
  116. data/test/rule_tests/incorrect_header_setext_style.rb +0 -2
  117. data/test/rule_tests/inline_html.md +0 -13
  118. data/test/rule_tests/links.md +0 -9
  119. data/test/rule_tests/lists_without_blank_lines.md +0 -75
  120. data/test/rule_tests/long_lines.md +0 -3
  121. data/test/rule_tests/long_lines_100.md +0 -7
  122. data/test/rule_tests/long_lines_100_style.rb +0 -3
  123. data/test/rule_tests/long_lines_code.md +0 -45
  124. data/test/rule_tests/long_lines_code_style.rb +0 -3
  125. data/test/rule_tests/mixed_header_types_atx.md +0 -6
  126. data/test/rule_tests/mixed_header_types_atx_closed.md +0 -6
  127. data/test/rule_tests/mixed_header_types_setext.md +0 -6
  128. data/test/rule_tests/no_first_line_header.md +0 -1
  129. data/test/rule_tests/no_first_line_header_style.rb +0 -1
  130. data/test/rule_tests/no_first_line_top_level_header.md +0 -1
  131. data/test/rule_tests/no_first_line_top_level_header_style.rb +0 -1
  132. data/test/rule_tests/ordered_list_item_prefix.md +0 -13
  133. data/test/rule_tests/ordered_list_item_prefix_ordered.md +0 -13
  134. data/test/rule_tests/ordered_list_item_prefix_ordered_style.rb +0 -3
  135. data/test/rule_tests/reversed_link.md +0 -7
  136. data/test/rule_tests/spaces_after_list_marker.md +0 -74
  137. data/test/rule_tests/spaces_after_list_marker_style.rb +0 -5
  138. data/test/rule_tests/spaces_inside_codespan_elements.md +0 -7
  139. data/test/rule_tests/spaces_inside_emphasis_markers.md +0 -35
  140. data/test/rule_tests/spaces_inside_link_text.md +0 -28
  141. data/test/rule_tests/trailing_spaces_br.md +0 -4
  142. data/test/rule_tests/trailing_spaces_br_style.rb +0 -3
  143. data/test/rule_tests/whitespace_issues.md +0 -3
  144. data/test/setup_tests.rb +0 -5
  145. data/test/test_cli.rb +0 -300
  146. data/test/test_ruledocs.rb +0 -52
  147. data/test/test_rules.rb +0 -58
  148. data/tools/README.md +0 -3
  149. data/tools/docker/Dockerfile +0 -13
  150. data/tools/docker/README.md +0 -19
  151. data/tools/test_location.rb +0 -20
  152. data/tools/view_markdown.rb +0 -11
@@ -1,42 +0,0 @@
1
- ```
2
- code at start of file
3
- ```
4
-
5
- text
6
-
7
- ```ruby
8
- code
9
- ```
10
-
11
- text
12
- ``` {MD031}
13
- code
14
- ``` {MD031}
15
- text
16
-
17
- ```
18
- code
19
- ``` {MD031}
20
- text
21
-
22
- text
23
- ``` {MD031}
24
- code
25
- ```
26
-
27
- text
28
-
29
- ```js
30
- code
31
- code
32
- code
33
- ```
34
-
35
- ```html
36
- ```
37
-
38
- text
39
-
40
- ```
41
- code at end of file without newline
42
- ```
@@ -1,3 +0,0 @@
1
- all
2
- exclude_rule "MD040"
3
- exclude_rule "MD041"
@@ -1 +0,0 @@
1
- ## Header {MD002}
@@ -1,2 +0,0 @@
1
- Header {MD002}
2
- --------------
@@ -1 +0,0 @@
1
- # Header
@@ -1,2 +0,0 @@
1
- Header
2
- ======
@@ -1,3 +0,0 @@
1
- # First line is a top level header
2
-
3
- This shouldn't trigger MD041
@@ -1,2 +0,0 @@
1
- # Only test MD041 here
2
- rule "MD041"
@@ -1,4 +0,0 @@
1
- First line top level header
2
- ===========================
3
-
4
- This shouldn't trigger MD041
@@ -1,2 +0,0 @@
1
- # Only test MD041 here
2
- rule "MD041"
@@ -1,8 +0,0 @@
1
- [test _test_ test](www.test.com)
2
- [test `test` test](www.test.com)
3
- [test *test* test](www.test.com)
4
- [test *test* *test* test](www.test.com)
5
- [test *test* *test* *test* test](www.test.com)
6
- [test **test** test](www.test.com)
7
- [test __test__ test](www.test.com)
8
- [this should not raise](www.shouldnotraise.com)
@@ -1,11 +0,0 @@
1
- # Header 1
2
-
3
- ## Header 2
4
-
5
- ## Header 1
6
-
7
- ### Header 2
8
-
9
- ## Header 3
10
-
11
- {MD024:5} {MD024:7}
@@ -1,11 +0,0 @@
1
- # Change log
2
-
3
- ## 2.0.0
4
-
5
- ### Bug fixes
6
-
7
- ### Features
8
-
9
- ## 1.0.0
10
-
11
- ### Bug fixes
@@ -1 +0,0 @@
1
- rule "MD024", :allow_different_nesting => true
@@ -1,13 +0,0 @@
1
- # Change log
2
-
3
- ## 2.0.0
4
-
5
- ### Bug fixes
6
-
7
- ### Features
8
-
9
- ## 1.0.0
10
-
11
- ### Bug fixes
12
-
13
- {MD024:11}
@@ -1,3 +0,0 @@
1
- # Heading 1
2
-
3
- # Heading 2 {MD025}
@@ -1,5 +0,0 @@
1
- Some introductory text
2
-
3
- # Heading 1
4
-
5
- # Heading 2
@@ -1,11 +0,0 @@
1
- # Heading 1 {MD026}.
2
-
3
- ## Heading 2 {MD026},
4
-
5
- ## Heading 3 {MD026}!
6
-
7
- ## Heading 4 {MD026}:
8
-
9
- ## Heading 5 {MD026};
10
-
11
- ## Heading 6 {MD026}?
@@ -1,14 +0,0 @@
1
- # Heading 1 {MD026}.
2
-
3
- ## Heading 2 {MD026},
4
-
5
- ## Heading 3 {MD026}!
6
-
7
- ## Heading 4 {MD026}:
8
-
9
- ## Heading 5 {MD026};
10
-
11
- ## Heading 6?
12
-
13
- The rule has been customized to allow question marks while disallowing
14
- everything else.
@@ -1,2 +0,0 @@
1
- all
2
- rule 'MD026', :punctuation => '.,;:!'
@@ -1,7 +0,0 @@
1
- # Header
2
-
3
- ### Header 3 {MD001}
4
-
5
- ## Header 2
6
-
7
- #### Header 4 {MD001}
@@ -1,5 +0,0 @@
1
- # Heading 1
2
-
3
- ## Heading 2
4
-
5
- ## Heading 3
@@ -1,7 +0,0 @@
1
- Header 1
2
- ========
3
-
4
- Header 2
5
- --------
6
-
7
- ### Header 3
@@ -1,2 +0,0 @@
1
- all
2
- rule 'MD003', :style => :setext_with_atx
@@ -1,12 +0,0 @@
1
- # Heading 1
2
-
3
- ## Heading 2
4
-
5
- See the following issues:
6
-
7
- * #1234
8
- * #5678 (and related)
9
- * #5678
10
- * #9101
11
-
12
- ## Heading 3
@@ -1,12 +0,0 @@
1
- # Header 1
2
-
3
- ## Header 2 {MD022}
4
- Some text
5
- ## Header 3 {MD022}
6
- Some text
7
- ## Header 4 {MD022}
8
-
9
- ## Header 5
10
-
11
- * This shouldn't trigger MD022, but did because of some bug where we tried to
12
- #catch headers that kramdown didn't parse correctly.
@@ -1,15 +0,0 @@
1
- Header 1
2
- ========
3
-
4
- Header 2 {MD022}
5
- ----------------
6
- Some text
7
- Header 3 {MD022}
8
- ================
9
- Some text
10
- Header 4 {MD022}
11
- ================
12
- Some text
13
-
14
- Header 5
15
- --------
@@ -1,20 +0,0 @@
1
- Some text
2
-
3
- # Header 1 {MD023}
4
-
5
- Setext style fully indented {MD023}
6
- ===================================
7
-
8
- Setext style title only indented {MD023}
9
- =========================================
10
-
11
- * Test situations in which MD023 shouldn't be triggered.
12
-
13
- ```rb
14
- # This shouldn't trigger MD023 as it is a code comment.
15
- foo = "And here is some code"
16
- ```
17
-
18
- * This is another case where MD023 shouldn't be triggered
19
- # Test
20
- # Test
@@ -1,22 +0,0 @@
1
- ***
2
-
3
- * * *
4
-
5
- *****
6
-
7
- ---
8
-
9
- - - -
10
-
11
- -----
12
-
13
- ___
14
-
15
- _ _ _
16
-
17
- _____
18
-
19
- ***
20
-
21
- {MD035:1} {MD035:3} {MD035:5} {MD035:9} {MD035:11} {MD035:13} {MD035:15}
22
- {MD035:17} {MD035:19}
@@ -1,3 +0,0 @@
1
- all
2
- rule "MD035", :style => "---"
3
- exclude_rule "MD041"
@@ -1,22 +0,0 @@
1
- ***
2
-
3
- * * *
4
-
5
- *****
6
-
7
- ---
8
-
9
- - - -
10
-
11
- -----
12
-
13
- ___
14
-
15
- _ _ _
16
-
17
- _____
18
-
19
- ***
20
-
21
- {MD035:3} {MD035:5} {MD035:7} {MD035:9} {MD035:11} {MD035:13} {MD035:15}
22
- {MD035:17}
@@ -1,22 +0,0 @@
1
- ***
2
-
3
- * * *
4
-
5
- *****
6
-
7
- ---
8
-
9
- - - -
10
-
11
- -----
12
-
13
- ___
14
-
15
- _ _ _
16
-
17
- _____
18
-
19
- ***
20
-
21
- {MD035:1} {MD035:3} {MD035:5} {MD035:7} {MD035:9} {MD035:11} {MD035:13}
22
- {MD035:15} {MD035:19}
@@ -1,3 +0,0 @@
1
- all
2
- rule "MD035", :style => "_____"
3
- exclude_rule "MD041"
@@ -1,22 +0,0 @@
1
- ***
2
-
3
- * * *
4
-
5
- *****
6
-
7
- ---
8
-
9
- - - -
10
-
11
- -----
12
-
13
- ___
14
-
15
- _ _ _
16
-
17
- _____
18
-
19
- ***
20
-
21
- {MD035:3} {MD035:5} {MD035:7} {MD035:9} {MD035:11} {MD035:13} {MD035:15}
22
- {MD035:17}
@@ -1,3 +0,0 @@
1
- all
2
- rule "MD035", :style => "***"
3
- exclude_rule "MD041"
@@ -1,4 +0,0 @@
1
- * Item
2
- * Item {MD007}
3
- * Item {MD005}
4
- * Item
@@ -1,3 +0,0 @@
1
- * Item
2
- + Item {MD004}
3
- - Item {MD004}
@@ -1,3 +0,0 @@
1
- - Item
2
- * Item {MD004}
3
- + Item {MD004}
@@ -1,3 +0,0 @@
1
- + Item
2
- * Item {MD004}
3
- - Item {MD004}
@@ -1,3 +0,0 @@
1
- * Item
2
- - Item {MD004}
3
- + Item {MD004}
@@ -1,3 +0,0 @@
1
- all
2
- rule 'MD004', :style => :asterisk
3
- exclude_rule "MD041"
@@ -1,3 +0,0 @@
1
- * Item {MD004}
2
- - Item
3
- + Item {MD004}
@@ -1,3 +0,0 @@
1
- all
2
- rule 'MD004', :style => :dash
3
- exclude_rule "MD041"
@@ -1,3 +0,0 @@
1
- * Item {MD004}
2
- - Item {MD004}
3
- + Item
@@ -1,3 +0,0 @@
1
- all
2
- rule 'MD004', :style => :plus
3
- exclude_rule "MD041"
@@ -1,6 +0,0 @@
1
- # Header 1 {MD003} #
2
-
3
- ## Header 2
4
-
5
- Header 3 {MD003}
6
- ----------------
@@ -1,6 +0,0 @@
1
- # Header 1 #
2
-
3
- ## Header 2 {MD003}
4
-
5
- Header 3 {MD003}
6
- ----------------