jazzy 0.14.0 → 0.14.3

Sign up to get free protection for your applications and to get access to all the features.
Files changed (105) hide show
  1. checksums.yaml +4 -4
  2. data/.github/workflows/Tests.yml +5 -5
  3. data/.rubocop.yml +62 -2
  4. data/CHANGELOG.md +75 -0
  5. data/CONTRIBUTING.md +1 -1
  6. data/Gemfile.lock +76 -66
  7. data/ObjectiveC.md +208 -0
  8. data/README.md +42 -24
  9. data/Rakefile +5 -3
  10. data/bin/sourcekitten +0 -0
  11. data/jazzy.gemspec +2 -1
  12. data/js/package-lock.json +61 -12
  13. data/lib/jazzy/config.rb +54 -35
  14. data/lib/jazzy/doc_builder.rb +9 -2
  15. data/lib/jazzy/extensions/katex/css/fonts/KaTeX_AMS-Regular.ttf +0 -0
  16. data/lib/jazzy/extensions/katex/css/fonts/KaTeX_AMS-Regular.woff +0 -0
  17. data/lib/jazzy/extensions/katex/css/fonts/KaTeX_AMS-Regular.woff2 +0 -0
  18. data/lib/jazzy/extensions/katex/css/fonts/KaTeX_Caligraphic-Bold.ttf +0 -0
  19. data/lib/jazzy/extensions/katex/css/fonts/KaTeX_Caligraphic-Bold.woff +0 -0
  20. data/lib/jazzy/extensions/katex/css/fonts/KaTeX_Caligraphic-Bold.woff2 +0 -0
  21. data/lib/jazzy/extensions/katex/css/fonts/KaTeX_Caligraphic-Regular.ttf +0 -0
  22. data/lib/jazzy/extensions/katex/css/fonts/KaTeX_Caligraphic-Regular.woff +0 -0
  23. data/lib/jazzy/extensions/katex/css/fonts/KaTeX_Caligraphic-Regular.woff2 +0 -0
  24. data/lib/jazzy/extensions/katex/css/fonts/KaTeX_Fraktur-Bold.ttf +0 -0
  25. data/lib/jazzy/extensions/katex/css/fonts/KaTeX_Fraktur-Bold.woff +0 -0
  26. data/lib/jazzy/extensions/katex/css/fonts/KaTeX_Fraktur-Bold.woff2 +0 -0
  27. data/lib/jazzy/extensions/katex/css/fonts/KaTeX_Fraktur-Regular.ttf +0 -0
  28. data/lib/jazzy/extensions/katex/css/fonts/KaTeX_Fraktur-Regular.woff +0 -0
  29. data/lib/jazzy/extensions/katex/css/fonts/KaTeX_Fraktur-Regular.woff2 +0 -0
  30. data/lib/jazzy/extensions/katex/css/fonts/KaTeX_Main-Bold.ttf +0 -0
  31. data/lib/jazzy/extensions/katex/css/fonts/KaTeX_Main-Bold.woff +0 -0
  32. data/lib/jazzy/extensions/katex/css/fonts/KaTeX_Main-Bold.woff2 +0 -0
  33. data/lib/jazzy/extensions/katex/css/fonts/KaTeX_Main-BoldItalic.ttf +0 -0
  34. data/lib/jazzy/extensions/katex/css/fonts/KaTeX_Main-BoldItalic.woff +0 -0
  35. data/lib/jazzy/extensions/katex/css/fonts/KaTeX_Main-BoldItalic.woff2 +0 -0
  36. data/lib/jazzy/extensions/katex/css/fonts/KaTeX_Main-Italic.ttf +0 -0
  37. data/lib/jazzy/extensions/katex/css/fonts/KaTeX_Main-Italic.woff +0 -0
  38. data/lib/jazzy/extensions/katex/css/fonts/KaTeX_Main-Italic.woff2 +0 -0
  39. data/lib/jazzy/extensions/katex/css/fonts/KaTeX_Main-Regular.ttf +0 -0
  40. data/lib/jazzy/extensions/katex/css/fonts/KaTeX_Main-Regular.woff +0 -0
  41. data/lib/jazzy/extensions/katex/css/fonts/KaTeX_Main-Regular.woff2 +0 -0
  42. data/lib/jazzy/extensions/katex/css/fonts/KaTeX_Math-BoldItalic.ttf +0 -0
  43. data/lib/jazzy/extensions/katex/css/fonts/KaTeX_Math-BoldItalic.woff +0 -0
  44. data/lib/jazzy/extensions/katex/css/fonts/KaTeX_Math-BoldItalic.woff2 +0 -0
  45. data/lib/jazzy/extensions/katex/css/fonts/KaTeX_Math-Italic.ttf +0 -0
  46. data/lib/jazzy/extensions/katex/css/fonts/KaTeX_Math-Italic.woff +0 -0
  47. data/lib/jazzy/extensions/katex/css/fonts/KaTeX_Math-Italic.woff2 +0 -0
  48. data/lib/jazzy/extensions/katex/css/fonts/KaTeX_SansSerif-Bold.ttf +0 -0
  49. data/lib/jazzy/extensions/katex/css/fonts/KaTeX_SansSerif-Bold.woff +0 -0
  50. data/lib/jazzy/extensions/katex/css/fonts/KaTeX_SansSerif-Bold.woff2 +0 -0
  51. data/lib/jazzy/extensions/katex/css/fonts/KaTeX_SansSerif-Italic.ttf +0 -0
  52. data/lib/jazzy/extensions/katex/css/fonts/KaTeX_SansSerif-Italic.woff +0 -0
  53. data/lib/jazzy/extensions/katex/css/fonts/KaTeX_SansSerif-Italic.woff2 +0 -0
  54. data/lib/jazzy/extensions/katex/css/fonts/KaTeX_SansSerif-Regular.ttf +0 -0
  55. data/lib/jazzy/extensions/katex/css/fonts/KaTeX_SansSerif-Regular.woff +0 -0
  56. data/lib/jazzy/extensions/katex/css/fonts/KaTeX_SansSerif-Regular.woff2 +0 -0
  57. data/lib/jazzy/extensions/katex/css/fonts/KaTeX_Script-Regular.ttf +0 -0
  58. data/lib/jazzy/extensions/katex/css/fonts/KaTeX_Script-Regular.woff +0 -0
  59. data/lib/jazzy/extensions/katex/css/fonts/KaTeX_Script-Regular.woff2 +0 -0
  60. data/lib/jazzy/extensions/katex/css/fonts/KaTeX_Size1-Regular.ttf +0 -0
  61. data/lib/jazzy/extensions/katex/css/fonts/KaTeX_Size1-Regular.woff +0 -0
  62. data/lib/jazzy/extensions/katex/css/fonts/KaTeX_Size1-Regular.woff2 +0 -0
  63. data/lib/jazzy/extensions/katex/css/fonts/KaTeX_Size2-Regular.ttf +0 -0
  64. data/lib/jazzy/extensions/katex/css/fonts/KaTeX_Size2-Regular.woff +0 -0
  65. data/lib/jazzy/extensions/katex/css/fonts/KaTeX_Size2-Regular.woff2 +0 -0
  66. data/lib/jazzy/extensions/katex/css/fonts/KaTeX_Size3-Regular.ttf +0 -0
  67. data/lib/jazzy/extensions/katex/css/fonts/KaTeX_Size3-Regular.woff +0 -0
  68. data/lib/jazzy/extensions/katex/css/fonts/KaTeX_Size3-Regular.woff2 +0 -0
  69. data/lib/jazzy/extensions/katex/css/fonts/KaTeX_Size4-Regular.ttf +0 -0
  70. data/lib/jazzy/extensions/katex/css/fonts/KaTeX_Size4-Regular.woff +0 -0
  71. data/lib/jazzy/extensions/katex/css/fonts/KaTeX_Size4-Regular.woff2 +0 -0
  72. data/lib/jazzy/extensions/katex/css/fonts/KaTeX_Typewriter-Regular.ttf +0 -0
  73. data/lib/jazzy/extensions/katex/css/fonts/KaTeX_Typewriter-Regular.woff +0 -0
  74. data/lib/jazzy/extensions/katex/css/fonts/KaTeX_Typewriter-Regular.woff2 +0 -0
  75. data/lib/jazzy/extensions/katex/css/katex.min.css +1 -1
  76. data/lib/jazzy/extensions/katex/js/katex.min.js +1 -1
  77. data/lib/jazzy/gem_version.rb +1 -1
  78. data/lib/jazzy/jazzy_markdown.rb +13 -3
  79. data/lib/jazzy/search_builder.rb +3 -5
  80. data/lib/jazzy/source_declaration/type.rb +26 -2
  81. data/lib/jazzy/source_declaration.rb +13 -2
  82. data/lib/jazzy/sourcekitten.rb +58 -10
  83. data/lib/jazzy/stats.rb +11 -2
  84. data/lib/jazzy/symbol_graph/graph.rb +7 -2
  85. data/lib/jazzy/symbol_graph/relationship.rb +6 -0
  86. data/lib/jazzy/symbol_graph/sym_node.rb +14 -1
  87. data/lib/jazzy/symbol_graph/symbol.rb +36 -10
  88. data/lib/jazzy/symbol_graph.rb +30 -19
  89. data/lib/jazzy/themes/apple/assets/js/jquery.min.js +2 -2
  90. data/lib/jazzy/themes/apple/templates/doc.mustache +1 -2
  91. data/lib/jazzy/themes/apple/templates/footer.mustache +1 -1
  92. data/lib/jazzy/themes/apple/templates/header.mustache +4 -4
  93. data/lib/jazzy/themes/apple/templates/task.mustache +3 -8
  94. data/lib/jazzy/themes/fullwidth/assets/js/jquery.min.js +2 -2
  95. data/lib/jazzy/themes/fullwidth/templates/doc.mustache +1 -2
  96. data/lib/jazzy/themes/fullwidth/templates/footer.mustache +1 -1
  97. data/lib/jazzy/themes/fullwidth/templates/header.mustache +4 -4
  98. data/lib/jazzy/themes/fullwidth/templates/task.mustache +3 -8
  99. data/lib/jazzy/themes/jony/assets/js/jquery.min.js +2 -2
  100. data/lib/jazzy/themes/jony/templates/doc.mustache +1 -2
  101. data/lib/jazzy/themes/jony/templates/footer.mustache +1 -1
  102. data/lib/jazzy/themes/jony/templates/header.mustache +2 -2
  103. data/lib/jazzy/themes/jony/templates/task.mustache +3 -8
  104. data/spec/integration_spec.rb +18 -13
  105. metadata +8 -6
@@ -85,9 +85,8 @@ CLIntegracon.configure do |c|
85
85
 
86
86
  # Transform produced databases to csv
87
87
  c.transform_produced '**/*.dsidx' do |path|
88
- File.open("#{path}.csv", 'w') do |file|
89
- file.write `sqlite3 -header -csv #{path} "select * from searchIndex;"`
90
- end
88
+ File.write("#{path}.csv",
89
+ `sqlite3 -header -csv #{path} "select * from searchIndex;"`)
91
90
  end
92
91
  # Now that we're comparing the CSV, we don't care about the binary
93
92
  c.ignores '**/*.dsidx'
@@ -109,8 +108,12 @@ describe_cli 'jazzy' do
109
108
  s.replace_path ROOT.to_s, 'ROOT'
110
109
  s.replace_pattern /^[\d\s:.-]+ ruby\[\d+:\d+\] warning:.*$\n?/, ''
111
110
  # Remove version numbers from CocoaPods dependencies
112
- # to make specs resilient against dependecy updates.
111
+ # to make specs resilient against dependency updates.
113
112
  s.replace_pattern(/(Installing \w+ )\((.*)\)/, '\1(X.Y.Z)')
113
+ # Xcode 13.3 etc workaround
114
+ s.replace_pattern(/202[\d.:\- ]+xcodebuild.*?\n/, '')
115
+ # Xcode 14 / in-proc sourcekitd workaround
116
+ s.replace_pattern(/<unknown>:0: remark.*?\n/, '')
114
117
  end
115
118
 
116
119
  require 'shellwords'
@@ -134,7 +137,7 @@ describe_cli 'jazzy' do
134
137
  </script>
135
138
  HTML
136
139
 
137
- spec_subset = ENV['JAZZY_SPEC_SUBSET']
140
+ spec_subset = ENV.fetch('JAZZY_SPEC_SUBSET', nil)
138
141
 
139
142
  # rubocop:disable Style/MultilineIfModifier
140
143
 
@@ -179,7 +182,7 @@ describe_cli 'jazzy' do
179
182
  end
180
183
 
181
184
  behaves_like cli_spec 'misc_jazzy_objc_features',
182
- '--theme fullwidth '\
185
+ '--theme fullwidth ' \
183
186
  '-s objc.json,swift.json'
184
187
  end
185
188
  end if !spec_subset || spec_subset == 'objc'
@@ -188,9 +191,10 @@ describe_cli 'jazzy' do
188
191
  describe 'Creates docs with a module name, author name, project URL, ' \
189
192
  'xcodebuild options, and github info' do
190
193
  behaves_like cli_spec 'document_alamofire',
191
- '--skip-undocumented',
192
- # Ignore existing docs output
193
- '--clean'
194
+ '--skip-undocumented ' \
195
+ '--clean ' \
196
+ '--xcodebuild-arguments ' \
197
+ "-destination,'platform=OS X'"
194
198
  end
195
199
 
196
200
  describe 'Creates Realm Swift docs' do
@@ -210,7 +214,8 @@ describe_cli 'jazzy' do
210
214
  '--root-url https://realm.io/docs/swift/' \
211
215
  "#{realm_version}/api/ " \
212
216
  '--xcodebuild-arguments ' \
213
- '-scheme,RealmSwift,SWIFT_VERSION=4.2 ' \
217
+ '-scheme,RealmSwift,SWIFT_VERSION=4.2,' \
218
+ "-destination,'platform=OS X' " \
214
219
  "--head #{realm_head.shellescape}"
215
220
  end
216
221
 
@@ -227,11 +232,11 @@ describe_cli 'jazzy' do
227
232
  end
228
233
 
229
234
  describe 'Creates docs for Swift project from a .swiftmodule' do
230
- build_path = Dir.getwd + 'tmp/.build'
235
+ build_path = Dir.getwd + '/tmp/.build'
231
236
  package_path =
232
237
  ROOT + 'spec/integration_specs/misc_jazzy_symgraph_features/before'
233
- `swift build --package-path #{package_path} --build-path #{build_path}`
234
- module_path = `swift build --build-path #{build_path} --show-bin-path`
238
+ `swift build --package-path #{package_path} --scratch-path #{build_path}`
239
+ module_path = `swift build --scratch-path #{build_path} --show-bin-path`
235
240
  behaves_like cli_spec 'misc_jazzy_symgraph_features',
236
241
  '--swift-build-tool symbolgraph ' \
237
242
  "--build-tool-arguments -I,#{module_path} "
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: jazzy
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.14.0
4
+ version: 0.14.3
5
5
  platform: ruby
6
6
  authors:
7
7
  - JP Simard
@@ -11,7 +11,7 @@ authors:
11
11
  autorequire:
12
12
  bindir: bin
13
13
  cert_chain: []
14
- date: 2021-08-14 00:00:00.000000000 Z
14
+ date: 2022-09-11 00:00:00.000000000 Z
15
15
  dependencies:
16
16
  - !ruby/object:Gem::Dependency
17
17
  name: cocoapods
@@ -173,8 +173,8 @@ dependencies:
173
173
  - - "~>"
174
174
  - !ruby/object:Gem::Version
175
175
  version: '13.0'
176
- description: Soulful docs for Swift & Objective-C. Run in your Xcode project's root
177
- directory for instant HTML docs.
176
+ description: Soulful docs for Swift & Objective-C. Run in your SPM or Xcode project's
177
+ root directory for instant HTML docs.
178
178
  email:
179
179
  - jp@jpsim.com
180
180
  executables:
@@ -192,6 +192,7 @@ files:
192
192
  - Gemfile
193
193
  - Gemfile.lock
194
194
  - LICENSE
195
+ - ObjectiveC.md
195
196
  - README.md
196
197
  - Rakefile
197
198
  - bin/jazzy
@@ -354,7 +355,8 @@ files:
354
355
  homepage: https://github.com/realm/jazzy
355
356
  licenses:
356
357
  - MIT
357
- metadata: {}
358
+ metadata:
359
+ rubygems_mfa_required: 'true'
358
360
  post_install_message:
359
361
  rdoc_options: []
360
362
  require_paths:
@@ -370,7 +372,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
370
372
  - !ruby/object:Gem::Version
371
373
  version: '0'
372
374
  requirements: []
373
- rubygems_version: 3.1.4
375
+ rubygems_version: 3.2.3
374
376
  signing_key:
375
377
  specification_version: 4
376
378
  summary: Soulful docs for Swift & Objective-C.