jazzy 0.14.2 → 0.14.4

Sign up to get free protection for your applications and to get access to all the features.
Files changed (92) hide show
  1. checksums.yaml +4 -4
  2. data/.github/workflows/Tests.yml +7 -7
  3. data/.rubocop.yml +91 -2
  4. data/CHANGELOG.md +52 -0
  5. data/CONTRIBUTING.md +1 -1
  6. data/Gemfile +1 -1
  7. data/Gemfile.lock +78 -84
  8. data/README.md +86 -14
  9. data/Rakefile +1 -1
  10. data/bin/sourcekitten +0 -0
  11. data/jazzy.gemspec +1 -1
  12. data/js/package-lock.json +33 -17
  13. data/js/package.json +2 -2
  14. data/lib/jazzy/config.rb +38 -38
  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/search_builder.rb +1 -1
  79. data/lib/jazzy/source_declaration/access_control_level.rb +52 -64
  80. data/lib/jazzy/source_declaration/type.rb +4 -0
  81. data/lib/jazzy/sourcekitten.rb +16 -1
  82. data/lib/jazzy/stats.rb +1 -1
  83. data/lib/jazzy/symbol_graph/constraint.rb +6 -1
  84. data/lib/jazzy/symbol_graph/graph.rb +1 -1
  85. data/lib/jazzy/symbol_graph/symbol.rb +2 -1
  86. data/lib/jazzy/symbol_graph.rb +3 -3
  87. data/lib/jazzy/themes/apple/assets/js/jquery.min.js +2 -2
  88. data/lib/jazzy/themes/fullwidth/assets/js/jquery.min.js +2 -2
  89. data/lib/jazzy/themes/jony/assets/js/jquery.min.js +2 -2
  90. data/spec/Moya.podspec +55 -0
  91. data/spec/integration_spec.rb +28 -9
  92. metadata +6 -5
data/README.md CHANGED
@@ -214,16 +214,14 @@ sourcekitten doc --objc $(pwd)/MyProject/MyProject.h \
214
214
  -I $(pwd) -fmodules > objcDoc.json
215
215
 
216
216
  # Feed both outputs to Jazzy as a comma-separated list
217
- jazzy --sourcekitten-sourcefile swiftDoc.json,objcDoc.json
217
+ jazzy --module MyProject --sourcekitten-sourcefile swiftDoc.json,objcDoc.json
218
218
  ```
219
219
 
220
220
  ### Docs from `.swiftmodule`s or frameworks
221
221
 
222
- *This feature is new and relies on a new Swift feature: there may be crashes
223
- and mistakes: reports welcome.*
222
+ *This feature is new: there may be crashes and mistakes. Reports welcome.*
224
223
 
225
- Swift 5.3 adds support for symbol graph generation from `.swiftmodule` files.
226
- This looks to be part of Apple's toolchain for generating their online docs.
224
+ Swift 5.3 added support for symbol graph generation from `.swiftmodule` files.
227
225
 
228
226
  Jazzy can use this to generate API documentation. This is faster than using
229
227
  the source code directly but does have limitations: for example documentation
@@ -360,25 +358,69 @@ Note that the `--include` option is applied before the `--exclude` option. For e
360
358
  Declarations with a documentation comment containing `:nodoc:` are excluded from the
361
359
  documentation.
362
360
 
361
+ Declarations with the `@_documentation(visibility:)` attribute are treated as though they
362
+ are written with the given visibility. You can use this as a replacement for `:nodoc:` as
363
+ part of a transition to Apple's DocC but it is not compatible with Jazzy's symbolgraph mode.
364
+
363
365
  ### Documentation structure
364
366
 
365
- By default Jazzy does not create separate web pages for declarations that do
366
- not have any members: instead they are nested into some parent page. Use the
367
- `--separate-global-declarations` flag to change this and always create pages
368
- for declarations that can be directly accessed from client code.
367
+ Jazzy arranges documentation into categories. The default categories are things
368
+ like _Classes_ and _Structures_ corresponding to programming-language concepts,
369
+ as well as _Guides_ if `--documentation` is set.
370
+
371
+ You can customize the categories and their contents using `custom_categories` in
372
+ the config file — see the ReSwift [docs](https://reswift.github.io/ReSwift/) and
373
+ [config file](https://github.com/ReSwift/ReSwift/blob/e94737282850fa038b625b4e351d1608a3d02cee/.jazzy.json)
374
+ for an example.
375
+
376
+ Within each category the items are ordered first alphabetically by source
377
+ filename, and then by declaration order within the file. You can use
378
+ `// MARK:` comments within the file to create subheadings on the page, for
379
+ example to split up properties and methods. There’s no way to customize this
380
+ order short of editing either the generated web page or the SourceKitten JSON.
381
+
382
+ Swift extensions and Objective-C categories allow type members to be declared
383
+ across multiple source files. In general, extensions follow the main type
384
+ declaration: first extensions from the same source file, then extensions from
385
+ other files ordered alphabetically by filename. Swift conditional extensions
386
+ (`extension A where …`) always appear beneath unconditional extensions.
387
+
388
+ Use this pattern to add or customize the subheading before extension members:
389
+ ```swift
390
+ extension MyType {
391
+ // MARK: Subheading for this group of methods
392
+
393
+ }
394
+ ```
395
+
396
+ When Jazzy is using `--swift-build-tool symgraph` the source file names and
397
+ line numbers may not be available. In this case the ordering is approximately
398
+ alphabetical by symbol name and USR; the order is stable for the same input.
399
+
400
+ Jazzy does not normally create separate web pages for declarations that do not
401
+ have any members -- instead they are entirely nested into their parent page. Use
402
+ the `--separate-global-declarations` flag to change this and create pages for
403
+ these empty types.
369
404
 
370
405
  ### Choosing the Swift language version
371
406
 
372
407
  Jazzy normally uses the Swift compiler from the Xcode currently configured by
373
- `xcode-select`. Use the `--swift-version` flag to compile with a different
374
- Xcode.
408
+ `xcode-select`. Use the `--swift-version` flag or the `DEVELOPER_DIR` environment
409
+ variable to compile with a different Xcode.
375
410
 
376
411
  The value you pass to `--swift-version` must be the Swift language version given
377
- by `swift --version` in the Xcode you want to use.
412
+ by `swift --version` in the Xcode you want to use. Jazzy uses
413
+ [xcinvoke](https://github.com/segiddins/xcinvoke) to find a suitable Xcode
414
+ installation on your system. This can be slow: if you know where Xcode is
415
+ installed then it's faster to set `DEVELOPER_DIR` directly.
378
416
 
379
- For example to use Xcode 9.4:
417
+ For example to use Xcode 14:
380
418
  ```shell
381
- jazzy --swift-version 4.1.2
419
+ jazzy --swift-version 5.7
420
+ ```
421
+ ...or:
422
+ ```shell
423
+ DEVELOPER_DIR=/Applications/Xcode_14.app/Contents/Developer jazzy
382
424
  ```
383
425
 
384
426
  ## Linux
@@ -423,6 +465,36 @@ Check the `--min-acl` setting -- see [above](#controlling-what-is-documented).
423
465
 
424
466
  See [this document](ObjectiveC.md).
425
467
 
468
+ ### Miscellaneous
469
+
470
+ **Missing docset**
471
+
472
+ Jazzy only builds a docset when you set the `--module` flag.
473
+
474
+ **Unable to pass --build-tool-arguments containing commas**
475
+
476
+ If you want Jazzy to run something like `xcodebuild -scheme Scheme -destination 'a=x,b=y,c=z'`
477
+ then you must use the config file instead of the CLI flag because the CLI parser
478
+ that Jazzy uses cannot handle arguments that themselves contain commas.
479
+
480
+ The example config file here would be:
481
+ ```yaml
482
+ build_tool_arguments:
483
+ - "-scheme"
484
+ - "Scheme"
485
+ - "-destination"
486
+ - "a=x,b=y,c=z"
487
+ ```
488
+
489
+ **Errors running in an Xcode Run Script phase**
490
+
491
+ Running Jazzy from an Xcode build phase can go wrong in cryptic ways when Jazzy
492
+ has to run `xcodebuild`.
493
+
494
+ Users [have reported](https://github.com/realm/jazzy/issues/1012) that error
495
+ messages about symbols lacking USRs can be fixed by unsetting
496
+ `LLVM_TARGET_TRIPLE_SUFFIX` as part of the run script.
497
+
426
498
  ### Installation Problems
427
499
 
428
500
  **Can't find header files / clang**
data/Rakefile CHANGED
@@ -71,7 +71,7 @@ begin
71
71
  destination = "spec/integration_specs/#{source.gsub('tmp/', '')}/after"
72
72
  if File.exist?(destination)
73
73
  sh "rm -rf #{destination}"
74
- sh "mv #{source} #{destination}"
74
+ sh "mv #{source}/transformed #{destination}"
75
75
  end
76
76
  end
77
77
 
data/bin/sourcekitten CHANGED
Binary file
data/jazzy.gemspec CHANGED
@@ -23,7 +23,7 @@ Gem::Specification.new do |spec|
23
23
  spec.add_runtime_dependency 'open4', '~> 1.3'
24
24
  spec.add_runtime_dependency 'redcarpet', '~> 3.4'
25
25
  spec.add_runtime_dependency 'rexml', '~> 3.2'
26
- spec.add_runtime_dependency 'rouge', ['>= 2.0.6', '< 4.0']
26
+ spec.add_runtime_dependency 'rouge', ['>= 2.0.6', '< 5.0']
27
27
  spec.add_runtime_dependency 'sassc', '~> 2.1'
28
28
  spec.add_runtime_dependency 'sqlite3', '~> 1.3'
29
29
  spec.add_runtime_dependency 'xcinvoke', '~> 0.3.0'
data/js/package-lock.json CHANGED
@@ -1,34 +1,51 @@
1
1
  {
2
- "lockfileVersion": 2,
2
+ "name": "jazzy-js",
3
+ "version": "1.0.0",
4
+ "lockfileVersion": 3,
3
5
  "requires": true,
4
6
  "packages": {
7
+ "": {
8
+ "name": "jazzy-js",
9
+ "version": "1.0.0",
10
+ "license": "MIT",
11
+ "dependencies": {
12
+ "corejs-typeahead": "^1.3.1",
13
+ "jquery": "^3.7.1",
14
+ "katex": "^0.16.8",
15
+ "lunr": "^2.3.9"
16
+ }
17
+ },
5
18
  "node_modules/commander": {
6
- "version": "6.2.1",
7
- "resolved": "https://registry.npmjs.org/commander/-/commander-6.2.1.tgz",
8
- "integrity": "sha512-U7VdrJFnJgo4xjrHpTzu0yrHPGImdsmD95ZlgYSEajAn2JKzDhDTPG9kBTefmObL2w/ngeZnilk+OV9CG3d7UA==",
19
+ "version": "8.3.0",
20
+ "resolved": "https://registry.npmjs.org/commander/-/commander-8.3.0.tgz",
21
+ "integrity": "sha512-OkTL9umf+He2DZkUq8f8J9of7yL6RJKI24dVITBmNfZBmri9zYZQrKkuXiKhyfPSu8tUhnVBB1iKXevvnlR4Ww==",
9
22
  "engines": {
10
- "node": ">= 6"
23
+ "node": ">= 12"
11
24
  }
12
25
  },
13
26
  "node_modules/corejs-typeahead": {
14
- "version": "1.3.1",
15
- "resolved": "https://registry.npmjs.org/corejs-typeahead/-/corejs-typeahead-1.3.1.tgz",
16
- "integrity": "sha512-fyNlBNWJNL6EQUnJyAunEzBzRcwR2cEHtZXBi2pndHPOJ/wpOf3wbS+/Oh+kYYS5sKowQcs0LFwMSl6Y2Xeqkw==",
27
+ "version": "1.3.3",
28
+ "resolved": "https://registry.npmjs.org/corejs-typeahead/-/corejs-typeahead-1.3.3.tgz",
29
+ "integrity": "sha512-i+WiSdYiB4QiWTlx9kbn/Nk3zvG/FT/cj8EgBlSkEvQB1doJKb61ix0i6jxe4Y8znvfM8g2nkSGglhsF/cWFAA==",
17
30
  "dependencies": {
18
31
  "jquery": ">=1.11"
19
32
  }
20
33
  },
21
34
  "node_modules/jquery": {
22
- "version": "3.6.0",
23
- "resolved": "https://registry.npmjs.org/jquery/-/jquery-3.6.0.tgz",
24
- "integrity": "sha512-JVzAR/AjBvVt2BmYhxRCSYysDsPcssdmTFnzyLEts9qNwmjmu4JTAMYubEfwVOSwpQ1I1sKKFcxhZCI2buerfw=="
35
+ "version": "3.7.1",
36
+ "resolved": "https://registry.npmjs.org/jquery/-/jquery-3.7.1.tgz",
37
+ "integrity": "sha512-m4avr8yL8kmFN8psrbFFFmB/If14iN5o9nw/NgnnM+kybDJpRsAynV2BsfpTYrTRysYUdADVD7CkUUizgkpLfg=="
25
38
  },
26
39
  "node_modules/katex": {
27
- "version": "0.13.5",
28
- "resolved": "https://registry.npmjs.org/katex/-/katex-0.13.5.tgz",
29
- "integrity": "sha512-n2uEzFpNFUOAlWs0eCgmT82LQyP+BlS45yBgnLRqe+ENp3+FEM3lM+cJwZwwxxONFgayyq1fm6n+w35vo2MaUg==",
40
+ "version": "0.16.8",
41
+ "resolved": "https://registry.npmjs.org/katex/-/katex-0.16.8.tgz",
42
+ "integrity": "sha512-ftuDnJbcbOckGY11OO+zg3OofESlbR5DRl2cmN8HeWeeFIV7wTXvAOx8kEjZjobhA+9wh2fbKeO6cdcA9Mnovg==",
43
+ "funding": [
44
+ "https://opencollective.com/katex",
45
+ "https://github.com/sponsors/katex"
46
+ ],
30
47
  "dependencies": {
31
- "commander": "^6.0.0"
48
+ "commander": "^8.3.0"
32
49
  },
33
50
  "bin": {
34
51
  "katex": "cli.js"
@@ -39,6 +56,5 @@
39
56
  "resolved": "https://registry.npmjs.org/lunr/-/lunr-2.3.9.tgz",
40
57
  "integrity": "sha512-zTU3DaZaF3Rt9rhN3uBMGQD3dD2/vFQqnvZCDv4dl5iOzq2IZQqTxu90r4E5J+nP70J3ilqVCrbho2eWaeW8Ow=="
41
58
  }
42
- },
43
- "dependencies": {}
59
+ }
44
60
  }
data/js/package.json CHANGED
@@ -10,8 +10,8 @@
10
10
  "license": "MIT",
11
11
  "dependencies": {
12
12
  "corejs-typeahead": "^1.3.1",
13
- "jquery": "^3.6.0",
14
- "katex": "^0.13.3",
13
+ "jquery": "^3.7.1",
14
+ "katex": "^0.16.8",
15
15
  "lunr": "^2.3.9"
16
16
  }
17
17
  }
data/lib/jazzy/config.rb CHANGED
@@ -127,7 +127,7 @@ module Jazzy
127
127
  config_attr :clean,
128
128
  command_line: ['-c', '--[no-]clean'],
129
129
  description: ['Delete contents of output directory before running. ',
130
- 'WARNING: If --output is set to ~/Desktop, this will '\
130
+ 'WARNING: If --output is set to ~/Desktop, this will ' \
131
131
  'delete the ~/Desktop directory.'],
132
132
  default: false
133
133
 
@@ -201,7 +201,7 @@ module Jazzy
201
201
 
202
202
  config_attr :excluded_files,
203
203
  command_line: ['-e', '--exclude filepath1,filepath2,…filepathN', Array],
204
- description: 'Source file pathnames to be excluded from documentation. '\
204
+ description: 'Source file pathnames to be excluded from documentation. ' \
205
205
  'Supports wildcards.',
206
206
  default: [],
207
207
  parse: ->(files) do
@@ -210,7 +210,7 @@ module Jazzy
210
210
 
211
211
  config_attr :included_files,
212
212
  command_line: ['-i', '--include filepath1,filepath2,…filepathN', Array],
213
- description: 'Source file pathnames to be included in documentation. '\
213
+ description: 'Source file pathnames to be included in documentation. ' \
214
214
  'Supports wildcards.',
215
215
  default: [],
216
216
  parse: ->(files) do
@@ -234,14 +234,14 @@ module Jazzy
234
234
 
235
235
  config_attr :swift_build_tool,
236
236
  command_line: "--swift-build-tool #{SWIFT_BUILD_TOOLS.join(' | ')}",
237
- description: 'Control whether Jazzy uses Swift Package Manager, '\
238
- 'xcodebuild, or swift-symbolgraph to build the module '\
239
- 'to be documented. By default it uses xcodebuild if '\
237
+ description: 'Control whether Jazzy uses Swift Package Manager, ' \
238
+ 'xcodebuild, or swift-symbolgraph to build the module ' \
239
+ 'to be documented. By default it uses xcodebuild if ' \
240
240
  'there is a .xcodeproj file in the source directory.',
241
241
  parse: ->(tool) do
242
242
  return tool.to_sym if SWIFT_BUILD_TOOLS.include?(tool)
243
243
 
244
- raise "Unsupported swift_build_tool #{tool}, "\
244
+ raise "Unsupported swift_build_tool #{tool}, " \
245
245
  "supported values: #{SWIFT_BUILD_TOOLS.join(', ')}"
246
246
  end
247
247
 
@@ -265,13 +265,13 @@ module Jazzy
265
265
 
266
266
  config_attr :version,
267
267
  command_line: '--module-version VERSION',
268
- description: 'Version string to use as part of the default docs '\
268
+ description: 'Version string to use as part of the default docs ' \
269
269
  'title and inside the docset.',
270
270
  default: '1.0'
271
271
 
272
272
  config_attr :title,
273
273
  command_line: '--title TITLE',
274
- description: 'Title to display at the top of each page, overriding the '\
274
+ description: 'Title to display at the top of each page, overriding the ' \
275
275
  'default generated from module name and version.',
276
276
  default: ''
277
277
 
@@ -296,16 +296,16 @@ module Jazzy
296
296
 
297
297
  config_attr :podspec,
298
298
  command_line: '--podspec FILEPATH',
299
- description: 'A CocoaPods Podspec that describes the Swift library to '\
299
+ description: 'A CocoaPods Podspec that describes the Swift library to ' \
300
300
  'document',
301
301
  parse: ->(ps) { PodspecDocumenter.create_podspec(Pathname(ps)) if ps },
302
302
  default: Dir['*.podspec{,.json}'].first
303
303
 
304
304
  config_attr :pod_sources,
305
305
  command_line: ['--pod-sources url1,url2,…urlN', Array],
306
- description: 'A list of sources to find pod dependencies. Used only '\
307
- 'with --podspec when the podspec contains references to '\
308
- 'privately hosted pods. You must include the default pod '\
306
+ description: 'A list of sources to find pod dependencies. Used only ' \
307
+ 'with --podspec when the podspec contains references to ' \
308
+ 'privately hosted pods. You must include the default pod ' \
309
309
  'source if public pods are also used.',
310
310
  default: []
311
311
 
@@ -327,7 +327,7 @@ module Jazzy
327
327
 
328
328
  config_attr :dash_url,
329
329
  command_line: ['-d', '--dash_url URL'],
330
- description: 'Location of the dash XML feed '\
330
+ description: 'Location of the dash XML feed ' \
331
331
  'e.g. https://realm.io/docsets/realm.xml)',
332
332
  parse: ->(d) { URI(d) }
333
333
 
@@ -342,7 +342,7 @@ module Jazzy
342
342
  parse: ->(host) do
343
343
  return host.to_sym if SOURCE_HOSTS.include?(host)
344
344
 
345
- raise "Unsupported source_host '#{host}', "\
345
+ raise "Unsupported source_host '#{host}', " \
346
346
  "supported values: #{SOURCE_HOSTS.join(', ')}"
347
347
  end
348
348
 
@@ -359,7 +359,7 @@ module Jazzy
359
359
  config_attr :source_host_files_url,
360
360
  command_line: '--source-host-files-url PREFIX',
361
361
  description: [
362
- "The base URL on the source host of the project's files, to link "\
362
+ "The base URL on the source host of the project's files, to link " \
363
363
  'from individual declarations.',
364
364
  'For example https://github.com/realm/realm-cocoa/tree/v0.87.1',
365
365
  ]
@@ -370,13 +370,13 @@ module Jazzy
370
370
 
371
371
  config_attr :docset_playground_url,
372
372
  command_line: '--docset-playground-url URL',
373
- description: 'URL of an interactive playground to demonstrate the '\
373
+ description: 'URL of an interactive playground to demonstrate the ' \
374
374
  'framework, linked to from the docset.'
375
375
 
376
376
  # ──────── Doc generation options ────────
377
377
  config_attr :disable_search,
378
378
  command_line: '--disable-search',
379
- description: 'Avoid generating a search index. '\
379
+ description: 'Avoid generating a search index. ' \
380
380
  'Search is available in some themes.',
381
381
  default: false
382
382
 
@@ -387,7 +387,7 @@ module Jazzy
387
387
 
388
388
  config_attr :min_acl,
389
389
  command_line:
390
- '--min-acl [private | fileprivate | internal | public | open]',
390
+ '--min-acl [private | fileprivate | internal | package | public | open]',
391
391
  description: 'minimum access control level to document',
392
392
  default: 'public',
393
393
  parse: ->(acl) do
@@ -396,7 +396,7 @@ module Jazzy
396
396
 
397
397
  config_attr :skip_undocumented,
398
398
  command_line: '--[no-]skip-undocumented',
399
- description: "Don't document declarations that have no documentation "\
399
+ description: "Don't document declarations that have no documentation " \
400
400
  'comments.',
401
401
  default: false
402
402
 
@@ -406,21 +406,21 @@ module Jazzy
406
406
  default: false
407
407
 
408
408
  config_attr :custom_categories,
409
- description: 'Custom navigation categories to replace the standard '\
410
- "'Classes', 'Protocols', etc. Types not explicitly named "\
411
- 'in a custom category appear in generic groups at the '\
409
+ description: 'Custom navigation categories to replace the standard ' \
410
+ "'Classes', 'Protocols', etc. Types not explicitly named " \
411
+ 'in a custom category appear in generic groups at the ' \
412
412
  'end. Example: https://git.io/v4Bcp',
413
413
  default: []
414
414
 
415
415
  config_attr :custom_categories_unlisted_prefix,
416
- description: "Prefix for navigation section names that aren't "\
416
+ description: "Prefix for navigation section names that aren't " \
417
417
  'explicitly listed in `custom_categories`.',
418
418
  default: 'Other '
419
419
 
420
420
  config_attr :hide_unlisted_documentation,
421
421
  command_line: '--[no-]hide-unlisted-documentation',
422
- description: "Don't include documentation in the sidebar from the "\
423
- "`documentation` config value that aren't explicitly "\
422
+ description: "Don't include documentation in the sidebar from the " \
423
+ "`documentation` config value that aren't explicitly " \
424
424
  'listed in `custom_categories`.',
425
425
  default: false
426
426
 
@@ -434,9 +434,9 @@ module Jazzy
434
434
 
435
435
  config_attr :theme_directory,
436
436
  command_line: "--theme [#{BUILTIN_THEMES.join(' | ')} | DIRPATH]",
437
- description: "Which theme to use. Specify either 'apple' (default), "\
438
- 'one of the other built-in theme names, or the path to '\
439
- 'your mustache templates and other assets for a custom '\
437
+ description: "Which theme to use. Specify either 'apple' (default), " \
438
+ 'one of the other built-in theme names, or the path to ' \
439
+ 'your mustache templates and other assets for a custom ' \
440
440
  'theme.',
441
441
  default: 'apple',
442
442
  parse: ->(t) do
@@ -449,9 +449,9 @@ module Jazzy
449
449
 
450
450
  config_attr :use_safe_filenames,
451
451
  command_line: '--use-safe-filenames',
452
- description: 'Replace unsafe characters in filenames with an encoded '\
453
- 'representation. This will reduce human readability of '\
454
- 'some URLs, but may be necessary for projects that '\
452
+ description: 'Replace unsafe characters in filenames with an encoded ' \
453
+ 'representation. This will reduce human readability of ' \
454
+ 'some URLs, but may be necessary for projects that ' \
455
455
  'expose filename-unfriendly functions such as /(_:_:)',
456
456
  default: false
457
457
 
@@ -471,20 +471,20 @@ module Jazzy
471
471
 
472
472
  config_attr :undocumented_text,
473
473
  command_line: '--undocumented-text UNDOCUMENTED_TEXT',
474
- description: 'Default text for undocumented symbols. The default '\
474
+ description: 'Default text for undocumented symbols. The default ' \
475
475
  'is "Undocumented", put "" if no text is required',
476
476
  default: 'Undocumented'
477
477
 
478
478
  config_attr :separate_global_declarations,
479
479
  command_line: '--[no-]separate-global-declarations',
480
- description: 'Create separate pages for all global declarations '\
481
- "(classes, structures, enums etc.) even if they don't "\
480
+ description: 'Create separate pages for all global declarations ' \
481
+ "(classes, structures, enums etc.) even if they don't " \
482
482
  'have children.',
483
483
  default: false
484
484
 
485
485
  config_attr :include_spi_declarations,
486
486
  command_line: '--[no-]include-spi-declarations',
487
- description: 'Include Swift declarations marked `@_spi` even if '\
487
+ description: 'Include Swift declarations marked `@_spi` even if ' \
488
488
  '--min-acl is set to `public` or `open`.',
489
489
  default: false
490
490
 
@@ -594,14 +594,14 @@ module Jazzy
594
594
  if source_host_configured &&
595
595
  source_host_url.nil? &&
596
596
  source_host_files_url.nil?
597
- warning 'Option `source_host` is set but has no effect without either '\
597
+ warning 'Option `source_host` is set but has no effect without either ' \
598
598
  '`source_host_url` or `source_host_files_url`.'
599
599
  end
600
600
 
601
601
  if objc_mode &&
602
602
  build_tool_arguments_configured &&
603
603
  (framework_root_configured || umbrella_header_configured)
604
- warning 'Option `build_tool_arguments` is set: values passed to '\
604
+ warning 'Option `build_tool_arguments` is set: values passed to ' \
605
605
  '`framework_root` or `umbrella_header` may be ignored.'
606
606
  end
607
607
  end