jazzy 0.13.5 → 0.14.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (144) hide show
  1. checksums.yaml +4 -4
  2. data/.github/workflows/Tests.yml +52 -0
  3. data/.rubocop.yml +139 -24
  4. data/CHANGELOG.md +105 -0
  5. data/CONTRIBUTING.md +5 -5
  6. data/Dangerfile +11 -8
  7. data/Gemfile +3 -1
  8. data/Gemfile.lock +101 -77
  9. data/README.md +81 -13
  10. data/Rakefile +13 -12
  11. data/bin/jazzy +3 -2
  12. data/bin/sourcekitten +0 -0
  13. data/jazzy.gemspec +8 -6
  14. data/js/package-lock.json +30 -25
  15. data/js/package.json +3 -3
  16. data/lib/jazzy/config.rb +125 -72
  17. data/lib/jazzy/doc.rb +3 -1
  18. data/lib/jazzy/doc_builder.rb +79 -84
  19. data/lib/jazzy/docset_builder.rb +3 -1
  20. data/lib/jazzy/documentation_generator.rb +6 -2
  21. data/lib/jazzy/executable.rb +3 -0
  22. data/lib/jazzy/extensions/bitbucket/img/bitbucket.svg +11 -0
  23. data/lib/jazzy/{themes/apple/assets → extensions/github}/img/gh.png +0 -0
  24. data/lib/jazzy/extensions/gitlab/img/gitlab.svg +23 -0
  25. data/lib/jazzy/extensions/katex/css/fonts/KaTeX_AMS-Regular.ttf +0 -0
  26. data/lib/jazzy/extensions/katex/css/fonts/KaTeX_AMS-Regular.woff +0 -0
  27. data/lib/jazzy/extensions/katex/css/fonts/KaTeX_AMS-Regular.woff2 +0 -0
  28. data/lib/jazzy/extensions/katex/css/fonts/KaTeX_Caligraphic-Bold.ttf +0 -0
  29. data/lib/jazzy/extensions/katex/css/fonts/KaTeX_Caligraphic-Bold.woff +0 -0
  30. data/lib/jazzy/extensions/katex/css/fonts/KaTeX_Caligraphic-Bold.woff2 +0 -0
  31. data/lib/jazzy/extensions/katex/css/fonts/KaTeX_Caligraphic-Regular.ttf +0 -0
  32. data/lib/jazzy/extensions/katex/css/fonts/KaTeX_Caligraphic-Regular.woff +0 -0
  33. data/lib/jazzy/extensions/katex/css/fonts/KaTeX_Caligraphic-Regular.woff2 +0 -0
  34. data/lib/jazzy/extensions/katex/css/fonts/KaTeX_Fraktur-Bold.ttf +0 -0
  35. data/lib/jazzy/extensions/katex/css/fonts/KaTeX_Fraktur-Bold.woff +0 -0
  36. data/lib/jazzy/extensions/katex/css/fonts/KaTeX_Fraktur-Bold.woff2 +0 -0
  37. data/lib/jazzy/extensions/katex/css/fonts/KaTeX_Fraktur-Regular.ttf +0 -0
  38. data/lib/jazzy/extensions/katex/css/fonts/KaTeX_Fraktur-Regular.woff +0 -0
  39. data/lib/jazzy/extensions/katex/css/fonts/KaTeX_Fraktur-Regular.woff2 +0 -0
  40. data/lib/jazzy/extensions/katex/css/fonts/KaTeX_Main-Bold.ttf +0 -0
  41. data/lib/jazzy/extensions/katex/css/fonts/KaTeX_Main-Bold.woff +0 -0
  42. data/lib/jazzy/extensions/katex/css/fonts/KaTeX_Main-Bold.woff2 +0 -0
  43. data/lib/jazzy/extensions/katex/css/fonts/KaTeX_Main-BoldItalic.ttf +0 -0
  44. data/lib/jazzy/extensions/katex/css/fonts/KaTeX_Main-BoldItalic.woff +0 -0
  45. data/lib/jazzy/extensions/katex/css/fonts/KaTeX_Main-BoldItalic.woff2 +0 -0
  46. data/lib/jazzy/extensions/katex/css/fonts/KaTeX_Main-Italic.ttf +0 -0
  47. data/lib/jazzy/extensions/katex/css/fonts/KaTeX_Main-Italic.woff +0 -0
  48. data/lib/jazzy/extensions/katex/css/fonts/KaTeX_Main-Italic.woff2 +0 -0
  49. data/lib/jazzy/extensions/katex/css/fonts/KaTeX_Main-Regular.ttf +0 -0
  50. data/lib/jazzy/extensions/katex/css/fonts/KaTeX_Main-Regular.woff +0 -0
  51. data/lib/jazzy/extensions/katex/css/fonts/KaTeX_Main-Regular.woff2 +0 -0
  52. data/lib/jazzy/extensions/katex/css/fonts/KaTeX_Math-BoldItalic.ttf +0 -0
  53. data/lib/jazzy/extensions/katex/css/fonts/KaTeX_Math-BoldItalic.woff +0 -0
  54. data/lib/jazzy/extensions/katex/css/fonts/KaTeX_Math-BoldItalic.woff2 +0 -0
  55. data/lib/jazzy/extensions/katex/css/fonts/KaTeX_Math-Italic.ttf +0 -0
  56. data/lib/jazzy/extensions/katex/css/fonts/KaTeX_Math-Italic.woff +0 -0
  57. data/lib/jazzy/extensions/katex/css/fonts/KaTeX_Math-Italic.woff2 +0 -0
  58. data/lib/jazzy/extensions/katex/css/fonts/KaTeX_SansSerif-Bold.ttf +0 -0
  59. data/lib/jazzy/extensions/katex/css/fonts/KaTeX_SansSerif-Bold.woff +0 -0
  60. data/lib/jazzy/extensions/katex/css/fonts/KaTeX_SansSerif-Bold.woff2 +0 -0
  61. data/lib/jazzy/extensions/katex/css/fonts/KaTeX_SansSerif-Italic.ttf +0 -0
  62. data/lib/jazzy/extensions/katex/css/fonts/KaTeX_SansSerif-Italic.woff +0 -0
  63. data/lib/jazzy/extensions/katex/css/fonts/KaTeX_SansSerif-Italic.woff2 +0 -0
  64. data/lib/jazzy/extensions/katex/css/fonts/KaTeX_SansSerif-Regular.ttf +0 -0
  65. data/lib/jazzy/extensions/katex/css/fonts/KaTeX_SansSerif-Regular.woff +0 -0
  66. data/lib/jazzy/extensions/katex/css/fonts/KaTeX_SansSerif-Regular.woff2 +0 -0
  67. data/lib/jazzy/extensions/katex/css/fonts/KaTeX_Script-Regular.ttf +0 -0
  68. data/lib/jazzy/extensions/katex/css/fonts/KaTeX_Script-Regular.woff +0 -0
  69. data/lib/jazzy/extensions/katex/css/fonts/KaTeX_Script-Regular.woff2 +0 -0
  70. data/lib/jazzy/extensions/katex/css/fonts/KaTeX_Size1-Regular.ttf +0 -0
  71. data/lib/jazzy/extensions/katex/css/fonts/KaTeX_Size1-Regular.woff +0 -0
  72. data/lib/jazzy/extensions/katex/css/fonts/KaTeX_Size1-Regular.woff2 +0 -0
  73. data/lib/jazzy/extensions/katex/css/fonts/KaTeX_Size2-Regular.ttf +0 -0
  74. data/lib/jazzy/extensions/katex/css/fonts/KaTeX_Size2-Regular.woff +0 -0
  75. data/lib/jazzy/extensions/katex/css/fonts/KaTeX_Size2-Regular.woff2 +0 -0
  76. data/lib/jazzy/extensions/katex/css/fonts/KaTeX_Size3-Regular.ttf +0 -0
  77. data/lib/jazzy/extensions/katex/css/fonts/KaTeX_Size3-Regular.woff +0 -0
  78. data/lib/jazzy/extensions/katex/css/fonts/KaTeX_Size3-Regular.woff2 +0 -0
  79. data/lib/jazzy/extensions/katex/css/fonts/KaTeX_Size4-Regular.ttf +0 -0
  80. data/lib/jazzy/extensions/katex/css/fonts/KaTeX_Size4-Regular.woff +0 -0
  81. data/lib/jazzy/extensions/katex/css/fonts/KaTeX_Size4-Regular.woff2 +0 -0
  82. data/lib/jazzy/extensions/katex/css/fonts/KaTeX_Typewriter-Regular.ttf +0 -0
  83. data/lib/jazzy/extensions/katex/css/fonts/KaTeX_Typewriter-Regular.woff +0 -0
  84. data/lib/jazzy/extensions/katex/css/fonts/KaTeX_Typewriter-Regular.woff2 +0 -0
  85. data/lib/jazzy/extensions/katex/css/katex.min.css +1 -1
  86. data/lib/jazzy/extensions/katex/js/katex.min.js +1 -1
  87. data/lib/jazzy/gem_version.rb +3 -1
  88. data/lib/jazzy/highlighter.rb +17 -3
  89. data/lib/jazzy/jazzy_markdown.rb +112 -31
  90. data/lib/jazzy/podspec_documenter.rb +14 -16
  91. data/lib/jazzy/search_builder.rb +4 -3
  92. data/lib/jazzy/source_declaration/access_control_level.rb +7 -5
  93. data/lib/jazzy/source_declaration/type.rb +29 -3
  94. data/lib/jazzy/source_declaration.rb +18 -3
  95. data/lib/jazzy/source_document.rb +8 -5
  96. data/lib/jazzy/source_host.rb +111 -0
  97. data/lib/jazzy/source_mark.rb +8 -6
  98. data/lib/jazzy/source_module.rb +6 -6
  99. data/lib/jazzy/sourcekitten.rb +157 -86
  100. data/lib/jazzy/stats.rb +14 -3
  101. data/lib/jazzy/symbol_graph/constraint.rb +98 -0
  102. data/lib/jazzy/symbol_graph/ext_node.rb +116 -0
  103. data/lib/jazzy/symbol_graph/graph.rb +200 -0
  104. data/lib/jazzy/symbol_graph/relationship.rb +48 -0
  105. data/lib/jazzy/symbol_graph/sym_node.rb +176 -0
  106. data/lib/jazzy/symbol_graph/symbol.rb +248 -0
  107. data/lib/jazzy/symbol_graph.rb +95 -0
  108. data/lib/jazzy/themes/apple/assets/css/highlight.css.scss +63 -59
  109. data/lib/jazzy/themes/apple/assets/css/jazzy.css.scss +26 -2
  110. data/lib/jazzy/themes/apple/assets/js/jazzy.js +4 -0
  111. data/lib/jazzy/themes/apple/assets/js/jazzy.search.js +4 -0
  112. data/lib/jazzy/themes/apple/assets/js/jquery.min.js +2 -2
  113. data/lib/jazzy/themes/apple/assets/js/lunr.min.js +3 -3
  114. data/lib/jazzy/themes/apple/templates/doc.mustache +4 -5
  115. data/lib/jazzy/themes/apple/templates/footer.mustache +1 -1
  116. data/lib/jazzy/themes/apple/templates/header.mustache +6 -6
  117. data/lib/jazzy/themes/apple/templates/task.mustache +6 -11
  118. data/lib/jazzy/themes/fullwidth/assets/css/highlight.css.scss +63 -59
  119. data/lib/jazzy/themes/fullwidth/assets/css/jazzy.css.scss +11 -2
  120. data/lib/jazzy/themes/fullwidth/assets/js/jazzy.js +4 -0
  121. data/lib/jazzy/themes/fullwidth/assets/js/jazzy.search.js +4 -0
  122. data/lib/jazzy/themes/fullwidth/assets/js/jquery.min.js +2 -2
  123. data/lib/jazzy/themes/fullwidth/assets/js/lunr.min.js +3 -3
  124. data/lib/jazzy/themes/fullwidth/templates/doc.mustache +4 -5
  125. data/lib/jazzy/themes/fullwidth/templates/footer.mustache +1 -1
  126. data/lib/jazzy/themes/fullwidth/templates/header.mustache +8 -8
  127. data/lib/jazzy/themes/fullwidth/templates/task.mustache +6 -11
  128. data/lib/jazzy/themes/jony/assets/css/highlight.css.scss +63 -59
  129. data/lib/jazzy/themes/jony/assets/css/jazzy.css.scss +26 -2
  130. data/lib/jazzy/themes/jony/assets/js/jazzy.js +4 -0
  131. data/lib/jazzy/themes/jony/assets/js/jquery.min.js +2 -2
  132. data/lib/jazzy/themes/jony/templates/doc.mustache +4 -5
  133. data/lib/jazzy/themes/jony/templates/footer.mustache +1 -1
  134. data/lib/jazzy/themes/jony/templates/header.mustache +6 -6
  135. data/lib/jazzy/themes/jony/templates/task.mustache +6 -11
  136. data/lib/jazzy.rb +2 -0
  137. data/spec/integration_spec.rb +59 -45
  138. data/spec/spec_helper/pre_flight.rb +2 -0
  139. data/spec/spec_helper.rb +3 -1
  140. metadata +39 -19
  141. data/.circleci/config.yml +0 -83
  142. data/lib/jazzy/themes/fullwidth/assets/img/gh.png +0 -0
  143. data/lib/jazzy/themes/jony/assets/img/gh.png +0 -0
  144. data/spec/sourcekitten_spec.rb +0 -6
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 9b896e2cc19ed17de08bbaf77655ce4cc28ba3b086c4b324c6f3c15d3f61c5c2
4
- data.tar.gz: 6dda6fa99cc9c4282f3818f405f218b23d22e57b6869be208082e36b25873dd0
3
+ metadata.gz: 5f55576dbfb09517321b17ea90b50e672c8ad6c50c563e087b381849ed2f7445
4
+ data.tar.gz: 9a5c54d86a73cf125109bd87a0f669c9807b419aa41f54174544d3ebd86632d2
5
5
  SHA512:
6
- metadata.gz: 7d3a45bc3b94976166452b9ddf2c411dff01acedd555ba7b124f5eb66c078f5cdab652958a83017e1a253384b874316bf25e523a6eb6f814eb8c04b282063ee5
7
- data.tar.gz: e7816087c597af5c4811f7c1155160242268b6beb25c610d93f571e749bc2c92edc7633712eed492d882d23f9576af98637ef46e8857ed4f547608ede6387439
6
+ metadata.gz: 61f70f156605dacf0b066262b7ccf694902117ce483fc056fa669af232530a7da180ed70134e1c0b8570f8ad55228c3324b53007e6f9d0519fe306977bd40b1e
7
+ data.tar.gz: 7655c01fd0c0bc9113b532b2e0531e56faf0aa00a5815a9713ca35b4cfa1fb45c391f6b77b4cd8501bce34ed4617c84dc1e2e436afda7bf8721d715ddb917d70
@@ -0,0 +1,52 @@
1
+ name: Tests
2
+
3
+ on:
4
+ push:
5
+ branches: [master]
6
+ pull_request:
7
+ branches: ['*']
8
+
9
+ jobs:
10
+ danger_and_rubocop:
11
+ runs-on: ubuntu-latest
12
+ steps:
13
+ - uses: actions/checkout@v2
14
+ - uses: ruby/setup-ruby@v1
15
+ with:
16
+ ruby-version: 2.6
17
+ bundler-cache: true
18
+ - name: Danger
19
+ env:
20
+ DANGER_GITHUB_API_TOKEN: ${{ secrets.GITHUB_TOKEN }}
21
+ run: |
22
+ bundle exec danger --verbose
23
+ - name: Rubocop
24
+ run: |
25
+ bundle exec rake rubocop
26
+
27
+ spec:
28
+ runs-on: macos-11
29
+ continue-on-error: true
30
+ strategy:
31
+ matrix:
32
+ spec: ["objc_spec", "swift_spec", "cocoapods_spec"]
33
+ env:
34
+ DEVELOPER_DIR: /Applications/Xcode_13.0.app/Contents/Developer
35
+ steps:
36
+ - uses: actions/checkout@v2
37
+ with:
38
+ submodules: recursive
39
+ - uses: ruby/setup-ruby@v1
40
+ with:
41
+ ruby-version: 2.6
42
+ bundler-cache: true
43
+ - name: Cache cocoapods
44
+ uses: actions/cache@v2
45
+ env:
46
+ cache-name: cocoapods
47
+ with:
48
+ path: ~/.cocoapods
49
+ key: ${{ matrix.spec }}-${{ env.cache-name }}
50
+ - name: Test
51
+ run: |
52
+ bundle exec rake ${{ matrix.spec }}
data/.rubocop.yml CHANGED
@@ -1,16 +1,104 @@
1
1
  AllCops:
2
- Include:
3
- - ./Rakefile
4
- - ./Gemfile
5
- - ./*.gemspec
6
2
  Exclude:
7
3
  - ./spec/integration_specs/**/*
8
4
  - ./vendor/**/*
9
5
  - ./tmp/**/*
6
+ - ./SourceKitten/**/*
7
+ SuggestExtensions: false
8
+ TargetRubyVersion: 2.6
9
+
10
+ #- Pending Cops as of 1.22.0 ---------------------------------------------#
11
+
12
+ Gemspec/DateAssignment: # (new in 1.10)
13
+ Enabled: true
14
+ Layout/SpaceBeforeBrackets: # (new in 1.7)
15
+ Enabled: true
16
+ Lint/AmbiguousAssignment: # (new in 1.7)
17
+ Enabled: true
18
+ Lint/AmbiguousRange: # (new in 1.19)
19
+ Enabled: true
20
+ Lint/DeprecatedConstants: # (new in 1.8)
21
+ Enabled: true
22
+ Lint/DuplicateBranch: # (new in 1.3)
23
+ Enabled: true
24
+ Lint/DuplicateRegexpCharacterClassElement: # (new in 1.1)
25
+ Enabled: true
26
+ Lint/EmptyBlock: # (new in 1.1)
27
+ Enabled: true
28
+ Lint/EmptyClass: # (new in 1.3)
29
+ Enabled: true
30
+ Lint/EmptyInPattern: # (new in 1.16)
31
+ Enabled: true
32
+ Lint/IncompatibleIoSelectWithFiberScheduler: # new in 1.21
33
+ Enabled: true
34
+ Lint/LambdaWithoutLiteralBlock: # (new in 1.8)
35
+ Enabled: true
36
+ Lint/NoReturnInBeginEndBlocks: # (new in 1.2)
37
+ Enabled: true
38
+ Lint/NumberedParameterAssignment: # (new in 1.9)
39
+ Enabled: true
40
+ Lint/OrAssignmentToConstant: # (new in 1.9)
41
+ Enabled: true
42
+ Lint/RedundantDirGlobSort: # (new in 1.8)
43
+ Enabled: true
44
+ Lint/RequireRelativeSelfPath: # new in 1.22
45
+ Enabled: true
46
+ Lint/SymbolConversion: # (new in 1.9)
47
+ Enabled: true
48
+ Lint/ToEnumArguments: # (new in 1.1)
49
+ Enabled: true
50
+ Lint/TripleQuotes: # (new in 1.9)
51
+ Enabled: true
52
+ Lint/UnexpectedBlockArity: # (new in 1.5)
53
+ Enabled: true
54
+ Lint/UnmodifiedReduceAccumulator: # (new in 1.1)
55
+ Enabled: true
56
+ Naming/InclusiveLanguage: # (new in 1.18)
57
+ Enabled: true
58
+ Security/IoMethods: # new in 1.22
59
+ Enabled: true
60
+ Style/ArgumentsForwarding: # (new in 1.1)
61
+ Enabled: true
62
+ Style/CollectionCompact: # (new in 1.2)
63
+ Enabled: true
64
+ Style/DocumentDynamicEvalDefinition: # (new in 1.1)
65
+ Enabled: true
66
+ Style/EndlessMethod: # (new in 1.8)
67
+ Enabled: true
68
+ Style/HashConversion: # (new in 1.10)
69
+ Enabled: true
70
+ Style/HashExcept: # (new in 1.7)
71
+ Enabled: true
72
+ Style/IfWithBooleanLiteralBranches: # (new in 1.9)
73
+ Enabled: true
74
+ Style/InPatternThen: # (new in 1.16)
75
+ Enabled: true
76
+ Style/MultilineInPatternThen: # (new in 1.16)
77
+ Enabled: true
78
+ Style/NegatedIfElseCondition: # (new in 1.2)
79
+ Enabled: true
80
+ Style/NilLambda: # (new in 1.3)
81
+ Enabled: true
82
+ Style/NumberedParameters: # new in 1.22
83
+ Enabled: true
84
+ Style/NumberedParametersLimit: # new in 1.22
85
+ Enabled: true
86
+ Style/QuotedSymbols: # (new in 1.16)
87
+ Enabled: true
88
+ Style/RedundantArgument: # (new in 1.4)
89
+ Enabled: true
90
+ Style/RedundantSelfAssignmentBranch: # (new in 1.19)
91
+ Enabled: true
92
+ Style/SelectByRegexp: # new in 1.22
93
+ Enabled: true
94
+ Style/StringChars: # (new in 1.12)
95
+ Enabled: true
96
+ Style/SwapValues: # (new in 1.1)
97
+ Enabled: true
10
98
 
11
99
  # At the moment not ready to be used
12
100
  # https://github.com/bbatsov/rubocop/issues/947
13
- Documentation:
101
+ Style/Documentation:
14
102
  Enabled: false
15
103
 
16
104
  #- Jazzy -----------------------------------------------------------------#
@@ -31,39 +119,40 @@ Metrics/BlockLength:
31
119
  Style/NumericPredicate:
32
120
  Enabled: false
33
121
 
34
- Layout/IndentHeredoc:
122
+ Layout/HeredocIndentation:
35
123
  Enabled: false
36
124
 
37
125
  # We adopted raise instead of fail.
38
- SignalException:
126
+ Style/SignalException:
39
127
  EnforcedStyle: only_raise
40
128
 
41
129
  # They are idiomatic
42
- AssignmentInCondition:
130
+ Lint/AssignmentInCondition:
43
131
  Enabled: false
44
132
 
45
133
  # Allow backticks
46
- AsciiComments:
134
+ Style/AsciiComments:
47
135
  Enabled: false
48
136
 
49
137
  # Indentation clarifies logic branches in implementations
50
- IfUnlessModifier:
138
+ Style/IfUnlessModifier:
51
139
  Enabled: false
52
140
 
53
141
  # No enforced convention here.
54
- SingleLineBlockParams:
142
+ Style/SingleLineBlockParams:
55
143
  Enabled: false
56
144
 
57
145
  # We only add the comment when needed.
58
- Encoding:
146
+ Style/Encoding:
59
147
  Enabled: false
60
148
 
61
149
  # Having these make it easier to *not* forget to add one when adding a new
62
150
  # value and you can simply copy the previous line.
63
- TrailingCommaInLiteral:
151
+ Style/TrailingCommaInArrayLiteral:
64
152
  EnforcedStyleForMultiline: comma
65
-
66
- TrailingCommaInArguments:
153
+ Style/TrailingCommaInHashLiteral:
154
+ EnforcedStyleForMultiline: comma
155
+ Style/TrailingCommaInArguments:
67
156
  EnforcedStyleForMultiline: comma
68
157
 
69
158
  Style/SpecialGlobalVars:
@@ -78,40 +167,66 @@ Style/TrailingUnderscoreVariable:
78
167
 
79
168
  # For lambdas nested within certain expressions, this rule forces either ugly
80
169
  # parens or curly braces that violate the "do/end for multiline blocks" rule.
81
- Lambda:
170
+ Style/Lambda:
82
171
  Enabled: false
83
172
 
84
173
  # Disallowing indented "when" clauses destroys readability when using the
85
174
  # single-line "when/then" style.
86
- CaseIndentation:
175
+ Layout/CaseIndentation:
87
176
  Enabled: false
88
177
 
89
178
  # These are both subjective judgements that depend on the situation, and are
90
179
  # not appropriate as absolute rules.
91
- GuardClause:
180
+ Style/GuardClause:
92
181
  Enabled: false
93
- Next:
182
+ Style/Next:
94
183
  Enabled: false
95
184
 
96
- RegexpLiteral:
185
+ # Avoid the least-readable varieties of regular expressions.
186
+ Style/RegexpLiteral:
97
187
  EnforcedStyle: mixed
98
188
 
189
+ # Sometimes easier to read either way
190
+ Style/AccessorGrouping:
191
+ Enabled: false
192
+
193
+ # Avoid mandatory wide indentation
194
+ Layout/MultilineMethodCallIndentation:
195
+ EnforcedStyle: indented
196
+ Layout/LineEndStringConcatenationIndentation:
197
+ Enabled: true
198
+ EnforcedStyle: indented
199
+
200
+ # Avoid false positives with `Pathname`
201
+ Style/StringConcatenation:
202
+ Mode: conservative
203
+
204
+ # Compatibility with earlier Rubocops
205
+ Metrics/CyclomaticComplexity:
206
+ Max: 10
207
+ Metrics/PerceivedComplexity:
208
+ Max: 10
209
+
210
+ # Too much firing on basic arithmetic
211
+ Lint/AmbiguousOperatorPrecedence:
212
+ Enabled: false
213
+
99
214
  #- Jazzy specs -----------------------------------------------------------#
100
215
 
101
216
  # Allow for `should.match /regexp/`.
102
- AmbiguousRegexpLiteral:
217
+ Lint/AmbiguousRegexpLiteral:
103
218
  Exclude:
104
219
  - spec/**/*
105
220
 
106
221
  # Allow `object.should == object` syntax.
107
- Void:
222
+ Lint/Void:
108
223
  Exclude:
109
224
  - spec/**/*
110
225
 
111
- ClassAndModuleChildren:
226
+ Style/ClassAndModuleChildren:
112
227
  Exclude:
113
228
  - spec/**/*
114
229
 
115
- UselessComparison:
230
+ Lint/BinaryOperatorWithIdenticalOperands:
116
231
  Exclude:
117
232
  - spec/**/*
data/CHANGELOG.md CHANGED
@@ -1,3 +1,108 @@
1
+ ## 0.14.1
2
+
3
+ ##### Breaking
4
+
5
+ * Support Swift SPI groups. Swift declarations marked `@_spi` are no longer
6
+ included in docs when `--min-acl` is set to `public` or `open`. Use
7
+ `--include-spi-declarations` to include docs for these declarations.
8
+ [John Fairhurst](https://github.com/johnfairh)
9
+ [#1263](https://github.com/realm/jazzy/issues/1263)
10
+
11
+ ##### Enhancements
12
+
13
+ * Correct line number references with Xcode 13.
14
+ [John Fairhurst](https://github.com/johnfairh)
15
+
16
+ * Support `union` declarations in Objective-C headers.
17
+ [Brian Osborn](https://github.com/bosborn)
18
+ [John Fairhurst](https://github.com/johnfairh)
19
+
20
+ * Support Swift concurrency features: identify actors and asynchronous
21
+ methods.
22
+ [John Fairhurst](https://github.com/johnfairh)
23
+
24
+ ##### Bug Fixes
25
+
26
+ * Improve HTML5 correctness, all themes.
27
+ [John Fairhurst](https://github.com/johnfairh)
28
+ [#1280](https://github.com/realm/jazzy/issues/1280)
29
+
30
+ ## 0.14.0
31
+
32
+ ##### Breaking
33
+
34
+ * Require at least Ruby 2.6.3.
35
+
36
+ ##### Enhancements
37
+
38
+ * Support DocC-style autolinks and callouts in markdown.
39
+ [John Fairhurst](https://github.com/johnfairh)
40
+
41
+ * Add `--source-host` option to support projects hosted on GitLab and
42
+ Bitbucket as well as GitHub. Options `--source-host-url` and
43
+ `--source-host-files-url` and new Mustache tags replace the 'github' versions
44
+ which remain as back-compatibility aliases.
45
+ [John Fairhurst](https://github.com/johnfairh)
46
+ [#314](https://github.com/realm/jazzy/issues/314)
47
+
48
+ * Add `rel="noopener"` to all `target="_blank"` links.
49
+ [JP Simard](https://github.com/jpsim)
50
+
51
+ ##### Bug Fixes
52
+
53
+ * Fix source-host line number references in Swift symbolgraph mode, and
54
+ in ObjC mode for references to one-line declarations.
55
+ [John Fairhurst](https://github.com/johnfairh)
56
+
57
+ * Fix crash with `` ` ` `` in markdown.
58
+ [John Fairhurst](https://github.com/johnfairh)
59
+ [#1270](https://github.com/realm/jazzy/issues/1270)
60
+
61
+ * Fix symbolgraph mode with Xcode 13.
62
+ [John Fairhurst](https://github.com/johnfairh)
63
+
64
+ ## 0.13.7
65
+
66
+ The next release of Jazzy will require a minimum of Ruby 2.6.
67
+
68
+ ##### Breaking
69
+
70
+ * None.
71
+
72
+ ##### Enhancements
73
+
74
+ * Update JavaScript libraries: jQuery 3.6.0, Lunr 2.3.9,
75
+ KaTeX 0.13.5.
76
+ [John Fairhurst](https://github.com/johnfairh)
77
+
78
+ * Support the markdown [footnotes](https://www.markdownguide.org/extended-syntax/#footnotes) extension in all themes.
79
+ [John Fairhurst](https://github.com/johnfairh)
80
+ [#1246](https://github.com/realm/jazzy/issues/1246)
81
+
82
+ ##### Bug Fixes
83
+
84
+ * Fix parameter doc comments in Swift symbolgraph mode.
85
+ [John Fairhurst](https://github.com/johnfairh)
86
+ [#1244](https://github.com/realm/jazzy/issues/1244)
87
+
88
+ ## 0.13.6
89
+
90
+ ##### Breaking
91
+
92
+ * None.
93
+
94
+ ##### Enhancements
95
+
96
+ * Support documentation generation from `.swiftmodule` binaries using
97
+ `--swift-build-tool symbolgraph` with Swift 5.3.
98
+ [John Fairhurst](https://github.com/johnfairh)
99
+
100
+ ##### Bug Fixes
101
+
102
+ * Always bypass codesigning when building Xcode projects.
103
+ [John Fairhurst](https://github.com/johnfairh)
104
+ [#1183](https://github.com/realm/jazzy/issues/1183)
105
+
1
106
  ## 0.13.5
2
107
 
3
108
  ##### Breaking
data/CONTRIBUTING.md CHANGED
@@ -13,12 +13,12 @@ the `CHANGELOG.md` file.
13
13
 
14
14
  We follow the same syntax as CocoaPods' CHANGELOG.md:
15
15
 
16
- 1. One Markdown unnumbered list item desribing the change.
17
- 2. 2 trailing spaces on the last line describing the change.
16
+ 1. One Markdown unnumbered list item describing the change.
17
+ 2. Two trailing spaces on the last line describing the change.
18
18
  3. A list of Markdown hyperlinks to the contributors to the change. One entry
19
- per line. Usually just one.
19
+ per line (and there's usually just one contributor).
20
20
  4. A list of Markdown hyperlinks to the issues the change addresses. One entry
21
- per line. Usually just one. Don't link to PRs here.
21
+ per line (and there's usually just one hyperlink). Don't link to PRs here.
22
22
  5. All CHANGELOG.md content is hard-wrapped at 80 characters.
23
23
 
24
24
  ## Updating the integration specs
@@ -49,7 +49,7 @@ git push
49
49
  You'll need push access to the integration specs repo to do this. You can
50
50
  request access from one of the maintainers when filing your PR.
51
51
 
52
- You must have Xcode 11.4 installed to build the integration specs.
52
+ You must have Xcode 13 installed to build the integration specs.
53
53
 
54
54
  ## Making changes to SourceKitten
55
55
 
data/Dangerfile CHANGED
@@ -1,13 +1,16 @@
1
+ # frozen_string_literal: true
2
+
1
3
  # Warn when there is a big PR
2
- warn("Big PR") if git.lines_of_code > 500
4
+ warn('Big PR') if git.lines_of_code > 500
3
5
 
4
6
  # Don't let testing shortcuts get into master by accident
5
- (git.modified_files + git.added_files - %w(Dangerfile)).each do |file|
7
+ (git.modified_files + git.added_files - %w[Dangerfile]).each do |file|
6
8
  next unless File.file?(file)
9
+
7
10
  contents = File.read(file)
8
11
  if file.start_with?('spec')
9
- fail("`xit` or `fit` left in tests (#{file})") if contents =~ /^\w*[xf]it/
10
- fail("`fdescribe` left in tests (#{file})") if contents =~ /^\w*fdescribe/
12
+ failure("`xit` or `fit` left in tests (#{file})") if contents =~ /^\w*[xf]it/
13
+ failure("`fdescribe` left in tests (#{file})") if contents =~ /^\w*fdescribe/
11
14
  end
12
15
  end
13
16
 
@@ -17,12 +20,12 @@ has_app_changes = !git.modified_files.grep(/lib/).empty?
17
20
  has_test_changes = !git.modified_files.grep(/spec/).empty?
18
21
 
19
22
  # Add a CHANGELOG entry for app changes
20
- if !git.modified_files.include?("CHANGELOG.md") && has_app_changes
21
- fail("Please include a CHANGELOG entry. \nYou can find it at [CHANGELOG.md](https://github.com/realm/jazzy/blob/master/CHANGELOG.md).")
22
- message "Note, we hard-wrap at 80 chars and use 2 spaces after the last line."
23
+ if !git.modified_files.include?('CHANGELOG.md') && has_app_changes
24
+ failure "Please include a CHANGELOG entry. \nYou can find it at [CHANGELOG.md](https://github.com/realm/jazzy/blob/master/CHANGELOG.md)."
25
+ message 'Note, we hard-wrap at 80 chars and use 2 spaces after the last line.'
23
26
  end
24
27
 
25
28
  # Non-trivial amounts of app changes without tests
26
29
  if git.lines_of_code > 50 && has_app_changes && !has_test_changes
27
- warn "This PR may need tests."
30
+ warn 'This PR may need tests.'
28
31
  end
data/Gemfile CHANGED
@@ -1,10 +1,12 @@
1
+ # frozen_string_literal: true
2
+
1
3
  source 'https://rubygems.org'
2
4
 
3
5
  gemspec
4
6
 
5
7
  group :development do
6
8
  # Code style
7
- gem 'rubocop', '0.49.0'
9
+ gem 'rubocop', '~> 1.18'
8
10
 
9
11
  # Tests
10
12
  gem 'bacon'