jazzy 0.0.20 → 0.1.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (167) hide show
  1. checksums.yaml +4 -4
  2. data/.gitmodules +6 -3
  3. data/.travis.yml +1 -1
  4. data/CHANGELOG.md +23 -1
  5. data/Gemfile.lock +41 -5
  6. data/Rakefile +21 -0
  7. data/jazzy.gemspec +1 -0
  8. data/lib/jazzy/assets/css/jazzy.css.scss +26 -0
  9. data/lib/jazzy/config.rb +29 -0
  10. data/lib/jazzy/doc_builder.rb +17 -9
  11. data/lib/jazzy/docset_builder.rb +13 -4
  12. data/lib/jazzy/gem_version.rb +1 -1
  13. data/lib/jazzy/jazzy_markdown.rb +2 -1
  14. data/lib/jazzy/podspec_documenter.rb +109 -0
  15. data/lib/jazzy/readme_generator.rb +33 -6
  16. data/lib/jazzy/sourcekitten.rb +15 -2
  17. data/lib/jazzy/sourcekitten/Commandant.framework/Commandant +0 -0
  18. data/lib/jazzy/sourcekitten/Commandant.framework/Versions/A/Commandant +0 -0
  19. data/lib/jazzy/sourcekitten/Commandant.framework/Versions/A/Modules/Commandant.swiftmodule/x86_64.swiftdoc +0 -0
  20. data/lib/jazzy/sourcekitten/Commandant.framework/Versions/A/Modules/Commandant.swiftmodule/x86_64.swiftmodule +0 -0
  21. data/lib/jazzy/sourcekitten/Commandant.framework/Versions/A/Modules/module.modulemap +10 -0
  22. data/{spec/integration_specs/misc_jazzy_features/before/MiscJazzyFeatures → lib/jazzy/sourcekitten/Commandant.framework/Versions/A/Resources}/Info.plist +21 -7
  23. data/lib/jazzy/sourcekitten/LlamaKit.framework/LlamaKit +0 -0
  24. data/lib/jazzy/sourcekitten/LlamaKit.framework/Versions/A/LlamaKit +0 -0
  25. data/lib/jazzy/sourcekitten/LlamaKit.framework/Versions/A/Modules/LlamaKit.swiftmodule/x86_64.swiftdoc +0 -0
  26. data/lib/jazzy/sourcekitten/LlamaKit.framework/Versions/A/Modules/LlamaKit.swiftmodule/x86_64.swiftmodule +0 -0
  27. data/lib/jazzy/sourcekitten/LlamaKit.framework/Versions/A/Modules/module.modulemap +10 -0
  28. data/lib/jazzy/sourcekitten/LlamaKit.framework/Versions/A/Resources/Info.plist +47 -0
  29. data/lib/jazzy/sourcekitten/SourceKittenFramework.framework/SourceKittenFramework +0 -0
  30. data/lib/jazzy/sourcekitten/SourceKittenFramework.framework/Versions/A/Frameworks/SwiftXPC.framework/SwiftXPC +0 -0
  31. data/lib/jazzy/sourcekitten/SourceKittenFramework.framework/Versions/A/Frameworks/SwiftXPC.framework/Versions/A/Modules/SwiftXPC.swiftmodule/x86_64.swiftdoc +0 -0
  32. data/lib/jazzy/sourcekitten/SourceKittenFramework.framework/Versions/A/Frameworks/SwiftXPC.framework/Versions/A/Modules/SwiftXPC.swiftmodule/x86_64.swiftmodule +0 -0
  33. data/lib/jazzy/sourcekitten/SourceKittenFramework.framework/Versions/A/Frameworks/SwiftXPC.framework/Versions/A/Modules/module.modulemap +10 -0
  34. data/lib/jazzy/sourcekitten/SourceKittenFramework.framework/Versions/A/Frameworks/SwiftXPC.framework/Versions/A/Resources/Info.plist +42 -0
  35. data/lib/jazzy/sourcekitten/SourceKittenFramework.framework/Versions/A/Frameworks/SwiftXPC.framework/Versions/A/SwiftXPC +0 -0
  36. data/lib/jazzy/sourcekitten/SourceKittenFramework.framework/Versions/A/Frameworks/libswiftCore.dylib +0 -0
  37. data/lib/jazzy/sourcekitten/SourceKittenFramework.framework/Versions/A/Frameworks/libswiftCoreGraphics.dylib +0 -0
  38. data/lib/jazzy/sourcekitten/SourceKittenFramework.framework/Versions/A/Frameworks/libswiftDarwin.dylib +0 -0
  39. data/lib/jazzy/sourcekitten/SourceKittenFramework.framework/Versions/A/Frameworks/libswiftDispatch.dylib +0 -0
  40. data/lib/jazzy/sourcekitten/SourceKittenFramework.framework/Versions/A/Frameworks/libswiftFoundation.dylib +0 -0
  41. data/lib/jazzy/sourcekitten/SourceKittenFramework.framework/Versions/A/Frameworks/libswiftObjectiveC.dylib +0 -0
  42. data/lib/jazzy/sourcekitten/SourceKittenFramework.framework/Versions/A/Frameworks/libswiftSecurity.dylib +0 -0
  43. data/lib/jazzy/sourcekitten/SourceKittenFramework.framework/Versions/A/Modules/SourceKittenFramework.swiftmodule/x86_64.swiftdoc +0 -0
  44. data/lib/jazzy/sourcekitten/SourceKittenFramework.framework/Versions/A/Modules/SourceKittenFramework.swiftmodule/x86_64.swiftmodule +0 -0
  45. data/lib/jazzy/sourcekitten/SourceKittenFramework.framework/Versions/A/Modules/module.modulemap +10 -0
  46. data/lib/jazzy/sourcekitten/SourceKittenFramework.framework/Versions/A/Resources/Info.plist +42 -0
  47. data/lib/jazzy/sourcekitten/SourceKittenFramework.framework/Versions/A/SourceKittenFramework +0 -0
  48. data/lib/jazzy/sourcekitten/sourcekitten +0 -0
  49. data/spec/integration_spec.rb +6 -0
  50. metadata +50 -122
  51. data/bin/sourcekitten +0 -0
  52. data/spec/integration_specs/document_alamofire/after/docs/Classes.html +0 -268
  53. data/spec/integration_specs/document_alamofire/after/docs/Classes/Manager.html +0 -488
  54. data/spec/integration_specs/document_alamofire/after/docs/Classes/Request.html +0 -842
  55. data/spec/integration_specs/document_alamofire/after/docs/Enums.html +0 -258
  56. data/spec/integration_specs/document_alamofire/after/docs/Enums/ParameterEncoding.html +0 -383
  57. data/spec/integration_specs/document_alamofire/after/docs/Extensions.html +0 -703
  58. data/spec/integration_specs/document_alamofire/after/docs/Extensions/Manager.html +0 -345
  59. data/spec/integration_specs/document_alamofire/after/docs/Extensions/Request.html +0 -369
  60. data/spec/integration_specs/document_alamofire/after/docs/Functions.html +0 -1041
  61. data/spec/integration_specs/document_alamofire/after/docs/Global Variables.html +0 -227
  62. data/spec/integration_specs/document_alamofire/after/docs/Protocols.html +0 -276
  63. data/spec/integration_specs/document_alamofire/after/docs/Protocols/URLRequestConvertible.html +0 -228
  64. data/spec/integration_specs/document_alamofire/after/docs/Protocols/URLStringConvertible.html +0 -228
  65. data/spec/integration_specs/document_alamofire/after/docs/css/highlight.css +0 -202
  66. data/spec/integration_specs/document_alamofire/after/docs/css/jazzy.css +0 -708
  67. data/spec/integration_specs/document_alamofire/after/docs/docsets/Alamofire.docset/Contents/Info.plist +0 -20
  68. data/spec/integration_specs/document_alamofire/after/docs/docsets/Alamofire.docset/Contents/Resources/Documents/Classes.html +0 -268
  69. data/spec/integration_specs/document_alamofire/after/docs/docsets/Alamofire.docset/Contents/Resources/Documents/Classes/Manager.html +0 -488
  70. data/spec/integration_specs/document_alamofire/after/docs/docsets/Alamofire.docset/Contents/Resources/Documents/Classes/Request.html +0 -842
  71. data/spec/integration_specs/document_alamofire/after/docs/docsets/Alamofire.docset/Contents/Resources/Documents/Enums.html +0 -258
  72. data/spec/integration_specs/document_alamofire/after/docs/docsets/Alamofire.docset/Contents/Resources/Documents/Enums/ParameterEncoding.html +0 -383
  73. data/spec/integration_specs/document_alamofire/after/docs/docsets/Alamofire.docset/Contents/Resources/Documents/Extensions.html +0 -703
  74. data/spec/integration_specs/document_alamofire/after/docs/docsets/Alamofire.docset/Contents/Resources/Documents/Extensions/Manager.html +0 -345
  75. data/spec/integration_specs/document_alamofire/after/docs/docsets/Alamofire.docset/Contents/Resources/Documents/Extensions/Request.html +0 -369
  76. data/spec/integration_specs/document_alamofire/after/docs/docsets/Alamofire.docset/Contents/Resources/Documents/Functions.html +0 -1041
  77. data/spec/integration_specs/document_alamofire/after/docs/docsets/Alamofire.docset/Contents/Resources/Documents/Global Variables.html +0 -227
  78. data/spec/integration_specs/document_alamofire/after/docs/docsets/Alamofire.docset/Contents/Resources/Documents/Manager.html +0 -345
  79. data/spec/integration_specs/document_alamofire/after/docs/docsets/Alamofire.docset/Contents/Resources/Documents/ParameterEncoding.html +0 -383
  80. data/spec/integration_specs/document_alamofire/after/docs/docsets/Alamofire.docset/Contents/Resources/Documents/Protocols.html +0 -276
  81. data/spec/integration_specs/document_alamofire/after/docs/docsets/Alamofire.docset/Contents/Resources/Documents/Protocols/URLRequestConvertible.html +0 -228
  82. data/spec/integration_specs/document_alamofire/after/docs/docsets/Alamofire.docset/Contents/Resources/Documents/Protocols/URLStringConvertible.html +0 -228
  83. data/spec/integration_specs/document_alamofire/after/docs/docsets/Alamofire.docset/Contents/Resources/Documents/Request.html +0 -369
  84. data/spec/integration_specs/document_alamofire/after/docs/docsets/Alamofire.docset/Contents/Resources/Documents/URLRequestConvertible.html +0 -228
  85. data/spec/integration_specs/document_alamofire/after/docs/docsets/Alamofire.docset/Contents/Resources/Documents/URLStringConvertible.html +0 -228
  86. data/spec/integration_specs/document_alamofire/after/docs/docsets/Alamofire.docset/Contents/Resources/Documents/carat.png +0 -0
  87. data/spec/integration_specs/document_alamofire/after/docs/docsets/Alamofire.docset/Contents/Resources/Documents/css/highlight.css +0 -202
  88. data/spec/integration_specs/document_alamofire/after/docs/docsets/Alamofire.docset/Contents/Resources/Documents/css/jazzy.css +0 -708
  89. data/spec/integration_specs/document_alamofire/after/docs/docsets/Alamofire.docset/Contents/Resources/Documents/dash.png +0 -0
  90. data/spec/integration_specs/document_alamofire/after/docs/docsets/Alamofire.docset/Contents/Resources/Documents/gh.png +0 -0
  91. data/spec/integration_specs/document_alamofire/after/docs/docsets/Alamofire.docset/Contents/Resources/Documents/highlight.css +0 -202
  92. data/spec/integration_specs/document_alamofire/after/docs/docsets/Alamofire.docset/Contents/Resources/Documents/img/carat.png +0 -0
  93. data/spec/integration_specs/document_alamofire/after/docs/docsets/Alamofire.docset/Contents/Resources/Documents/img/dash.png +0 -0
  94. data/spec/integration_specs/document_alamofire/after/docs/docsets/Alamofire.docset/Contents/Resources/Documents/img/gh.png +0 -0
  95. data/spec/integration_specs/document_alamofire/after/docs/docsets/Alamofire.docset/Contents/Resources/Documents/index.html +0 -756
  96. data/spec/integration_specs/document_alamofire/after/docs/docsets/Alamofire.docset/Contents/Resources/Documents/jazzy.css +0 -708
  97. data/spec/integration_specs/document_alamofire/after/docs/docsets/Alamofire.docset/Contents/Resources/Documents/jazzy.js +0 -21
  98. data/spec/integration_specs/document_alamofire/after/docs/docsets/Alamofire.docset/Contents/Resources/Documents/jquery.min.js +0 -4
  99. data/spec/integration_specs/document_alamofire/after/docs/docsets/Alamofire.docset/Contents/Resources/Documents/js/jazzy.js +0 -21
  100. data/spec/integration_specs/document_alamofire/after/docs/docsets/Alamofire.docset/Contents/Resources/Documents/js/jquery.min.js +0 -4
  101. data/spec/integration_specs/document_alamofire/after/docs/docsets/Alamofire.docset/Contents/Resources/Documents/undocumented.txt +0 -18
  102. data/spec/integration_specs/document_alamofire/after/docs/docsets/Alamofire.docset/Contents/Resources/docSet.dsidx.csv +0 -80
  103. data/spec/integration_specs/document_alamofire/after/docs/docsets/Alamofire.xml +0 -1
  104. data/spec/integration_specs/document_alamofire/after/docs/img/carat.png +0 -0
  105. data/spec/integration_specs/document_alamofire/after/docs/img/dash.png +0 -0
  106. data/spec/integration_specs/document_alamofire/after/docs/img/gh.png +0 -0
  107. data/spec/integration_specs/document_alamofire/after/docs/index.html +0 -756
  108. data/spec/integration_specs/document_alamofire/after/docs/js/jazzy.js +0 -21
  109. data/spec/integration_specs/document_alamofire/after/docs/js/jquery.min.js +0 -4
  110. data/spec/integration_specs/document_alamofire/after/docs/undocumented.txt +0 -18
  111. data/spec/integration_specs/document_alamofire/after/execution_output.txt +0 -5
  112. data/spec/integration_specs/misc_jazzy_features/after/docs/Classes.html +0 -333
  113. data/spec/integration_specs/misc_jazzy_features/after/docs/Classes/ImplicitlyInternalTopLevelClass.html +0 -149
  114. data/spec/integration_specs/misc_jazzy_features/after/docs/Enums.html +0 -171
  115. data/spec/integration_specs/misc_jazzy_features/after/docs/Enums/DocumentedEnum.html +0 -149
  116. data/spec/integration_specs/misc_jazzy_features/after/docs/Global Variables.html +0 -152
  117. data/spec/integration_specs/misc_jazzy_features/after/docs/css/highlight.css +0 -202
  118. data/spec/integration_specs/misc_jazzy_features/after/docs/css/jazzy.css +0 -708
  119. data/spec/integration_specs/misc_jazzy_features/after/docs/docsets/MiscJazzyFeatures.docset/Contents/Info.plist +0 -20
  120. data/spec/integration_specs/misc_jazzy_features/after/docs/docsets/MiscJazzyFeatures.docset/Contents/Resources/Documents/Classes.html +0 -333
  121. data/spec/integration_specs/misc_jazzy_features/after/docs/docsets/MiscJazzyFeatures.docset/Contents/Resources/Documents/Classes/ImplicitlyInternalTopLevelClass.html +0 -149
  122. data/spec/integration_specs/misc_jazzy_features/after/docs/docsets/MiscJazzyFeatures.docset/Contents/Resources/Documents/DocumentedEnum.html +0 -149
  123. data/spec/integration_specs/misc_jazzy_features/after/docs/docsets/MiscJazzyFeatures.docset/Contents/Resources/Documents/Enums.html +0 -171
  124. data/spec/integration_specs/misc_jazzy_features/after/docs/docsets/MiscJazzyFeatures.docset/Contents/Resources/Documents/Enums/DocumentedEnum.html +0 -149
  125. data/spec/integration_specs/misc_jazzy_features/after/docs/docsets/MiscJazzyFeatures.docset/Contents/Resources/Documents/Global Variables.html +0 -152
  126. data/spec/integration_specs/misc_jazzy_features/after/docs/docsets/MiscJazzyFeatures.docset/Contents/Resources/Documents/ImplicitlyInternalTopLevelClass.html +0 -149
  127. data/spec/integration_specs/misc_jazzy_features/after/docs/docsets/MiscJazzyFeatures.docset/Contents/Resources/Documents/carat.png +0 -0
  128. data/spec/integration_specs/misc_jazzy_features/after/docs/docsets/MiscJazzyFeatures.docset/Contents/Resources/Documents/css/highlight.css +0 -202
  129. data/spec/integration_specs/misc_jazzy_features/after/docs/docsets/MiscJazzyFeatures.docset/Contents/Resources/Documents/css/jazzy.css +0 -708
  130. data/spec/integration_specs/misc_jazzy_features/after/docs/docsets/MiscJazzyFeatures.docset/Contents/Resources/Documents/dash.png +0 -0
  131. data/spec/integration_specs/misc_jazzy_features/after/docs/docsets/MiscJazzyFeatures.docset/Contents/Resources/Documents/gh.png +0 -0
  132. data/spec/integration_specs/misc_jazzy_features/after/docs/docsets/MiscJazzyFeatures.docset/Contents/Resources/Documents/highlight.css +0 -202
  133. data/spec/integration_specs/misc_jazzy_features/after/docs/docsets/MiscJazzyFeatures.docset/Contents/Resources/Documents/img/carat.png +0 -0
  134. data/spec/integration_specs/misc_jazzy_features/after/docs/docsets/MiscJazzyFeatures.docset/Contents/Resources/Documents/img/dash.png +0 -0
  135. data/spec/integration_specs/misc_jazzy_features/after/docs/docsets/MiscJazzyFeatures.docset/Contents/Resources/Documents/img/gh.png +0 -0
  136. data/spec/integration_specs/misc_jazzy_features/after/docs/docsets/MiscJazzyFeatures.docset/Contents/Resources/Documents/index.html +0 -112
  137. data/spec/integration_specs/misc_jazzy_features/after/docs/docsets/MiscJazzyFeatures.docset/Contents/Resources/Documents/jazzy.css +0 -708
  138. data/spec/integration_specs/misc_jazzy_features/after/docs/docsets/MiscJazzyFeatures.docset/Contents/Resources/Documents/jazzy.js +0 -21
  139. data/spec/integration_specs/misc_jazzy_features/after/docs/docsets/MiscJazzyFeatures.docset/Contents/Resources/Documents/jquery.min.js +0 -4
  140. data/spec/integration_specs/misc_jazzy_features/after/docs/docsets/MiscJazzyFeatures.docset/Contents/Resources/Documents/js/jazzy.js +0 -21
  141. data/spec/integration_specs/misc_jazzy_features/after/docs/docsets/MiscJazzyFeatures.docset/Contents/Resources/Documents/js/jquery.min.js +0 -4
  142. data/spec/integration_specs/misc_jazzy_features/after/docs/docsets/MiscJazzyFeatures.docset/Contents/Resources/Documents/undocumented.txt +0 -3
  143. data/spec/integration_specs/misc_jazzy_features/after/docs/docsets/MiscJazzyFeatures.docset/Contents/Resources/docSet.dsidx.csv +0 -17
  144. data/spec/integration_specs/misc_jazzy_features/after/docs/img/carat.png +0 -0
  145. data/spec/integration_specs/misc_jazzy_features/after/docs/img/dash.png +0 -0
  146. data/spec/integration_specs/misc_jazzy_features/after/docs/img/gh.png +0 -0
  147. data/spec/integration_specs/misc_jazzy_features/after/docs/index.html +0 -112
  148. data/spec/integration_specs/misc_jazzy_features/after/docs/js/jazzy.js +0 -21
  149. data/spec/integration_specs/misc_jazzy_features/after/docs/js/jquery.min.js +0 -4
  150. data/spec/integration_specs/misc_jazzy_features/after/docs/undocumented.txt +0 -3
  151. data/spec/integration_specs/misc_jazzy_features/after/execution_output.txt +0 -5
  152. data/spec/integration_specs/misc_jazzy_features/before/MiscJazzyFeatures.xcodeproj/project.pbxproj +0 -293
  153. data/spec/integration_specs/misc_jazzy_features/before/MiscJazzyFeatures.xcodeproj/project.xcworkspace/contents.xcworkspacedata +0 -7
  154. data/spec/integration_specs/misc_jazzy_features/before/MiscJazzyFeatures/Classes.swift +0 -60
  155. data/spec/integration_specs/misc_jazzy_features/before/MiscJazzyFeatures/MiscJazzyFeatures.h +0 -10
  156. data/spec/integration_specs/misc_jazzy_features/before/docs/Classes.html +0 -317
  157. data/spec/integration_specs/misc_jazzy_features/before/docs/Classes/ImplicitlyInternalTopLevelClass.html +0 -138
  158. data/spec/integration_specs/misc_jazzy_features/before/docs/Enums.html +0 -155
  159. data/spec/integration_specs/misc_jazzy_features/before/docs/Enums/DocumentedEnum.html +0 -128
  160. data/spec/integration_specs/misc_jazzy_features/before/docs/Global Variables.html +0 -138
  161. data/spec/integration_specs/misc_jazzy_features/before/docs/css/jazzy.css +0 -609
  162. data/spec/integration_specs/misc_jazzy_features/before/docs/img/carat.png +0 -0
  163. data/spec/integration_specs/misc_jazzy_features/before/docs/img/dash.png +0 -0
  164. data/spec/integration_specs/misc_jazzy_features/before/docs/img/gh.png +0 -0
  165. data/spec/integration_specs/misc_jazzy_features/before/docs/index.html +0 -99
  166. data/spec/integration_specs/misc_jazzy_features/before/docs/js/jazzy.js +0 -15
  167. data/spec/integration_specs/misc_jazzy_features/before/docs/js/jquery.min.js +0 -4
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 3dad63dbae9be42cc3ddd0ca2947fe57b3d58ec4
4
- data.tar.gz: 0529fe4cb24a3b5755ebc45dec7513e83065be23
3
+ metadata.gz: aff10a9b6fa27c5461c95ad82b50a0b736add8c3
4
+ data.tar.gz: 981592f5afab02d494657f83c4ec9c5cd4f02a1e
5
5
  SHA512:
6
- metadata.gz: f0e5d10dc991a28b31ec80965358a53ea05c1ec4260eece4e4522d4cd042d47c9be90751a6b3077d18d589564848111af695df3999f6d6e1ecddfbdb49565eca
7
- data.tar.gz: 40ec5dcd4b1c2f8b05cdcac3e4ecd3c95530309ecef088fc656271800996751078f5016d6ce6ee29bab25e39988153d911546e84991085a4b59af4e9fb260315
6
+ metadata.gz: f7fb5b838e6b0349e287d84af77199e6fd6d71b9c4f6b82ef586568749f18ff66c5366e7a071e8d50e140c354ab2780f66a04669fd129d6212010dfaa0d66141
7
+ data.tar.gz: 3f056e527f8abcbab57800ca4c3bace1c0f402bc5d615cc4f3a9f9998b225bb8befc8fded0b2ea4970aab062779459525def18d0b19593f756e86db9335ec56d
data/.gitmodules CHANGED
@@ -1,3 +1,6 @@
1
- [submodule "spec/integration_specs/document_alamofire/before"]
2
- path = spec/integration_specs/document_alamofire/before
3
- url = https://github.com/Alamofire/Alamofire
1
+ [submodule "SourceKitten"]
2
+ path = SourceKitten
3
+ url = https://github.com/jpsim/SourceKitten.git
4
+ [submodule "spec/integration_specs"]
5
+ path = spec/integration_specs
6
+ url = https://github.com/Realm/jazzy-integration-specs.git
data/.travis.yml CHANGED
@@ -6,7 +6,7 @@ rvm:
6
6
 
7
7
  before_install:
8
8
  - sudo gem install bundler
9
+ - git submodule update --init --recursive
9
10
 
10
11
  script:
11
12
  - bundle exec rake spec
12
-
data/CHANGELOG.md CHANGED
@@ -1,6 +1,6 @@
1
1
  ## Master
2
2
 
3
- [sourcekitten](https://github.com/jpsim/sourcekitten/compare/0.2.7...master)
3
+ [sourcekitten](https://github.com/jpsim/sourcekitten/compare/0.2.7...0.3.1)
4
4
 
5
5
  ##### Breaking
6
6
 
@@ -14,6 +14,28 @@
14
14
 
15
15
  * None.
16
16
 
17
+ ## 0.1.0
18
+
19
+ [sourcekitten](https://github.com/jpsim/sourcekitten/compare/0.2.7...0.3.1)
20
+
21
+ ##### Breaking
22
+
23
+ * None.
24
+
25
+ ##### Enhancements
26
+
27
+ * Add the ability to document a Pod from just a podspec, which allows jazzy to
28
+ run on cocoadocs.org.
29
+ [Samuel Giddins](https://github.com/segiddins)
30
+ [#58](https://github.com/realm/jazzy/issues/58)
31
+
32
+ ##### Bug Fixes
33
+
34
+ * De-duplicate the sidebar list of extensions and show all children for an
35
+ extension, regardless of how many extensions on a type there are.
36
+ [Samuel Giddins](https://github.com/segiddins)
37
+
38
+
17
39
  ## 0.0.20
18
40
 
19
41
  [sourcekitten](https://github.com/jpsim/sourcekitten/compare/0.2.6...0.2.7)
data/Gemfile.lock CHANGED
@@ -1,8 +1,9 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- jazzy (0.0.20)
4
+ jazzy (0.1.0)
5
5
  activesupport (~> 4.1)
6
+ cocoapods (~> 0.36.0.beta.2)
6
7
  mustache (~> 0.99)
7
8
  nokogiri (~> 1.6)
8
9
  redcarpet (~> 3.2)
@@ -24,25 +25,57 @@ GEM
24
25
  astrolabe (1.3.0)
25
26
  parser (>= 2.2.0.pre.3, < 3.0)
26
27
  bacon (1.2.0)
28
+ claide (0.8.0)
27
29
  clintegracon (0.5.3)
28
30
  colored (~> 1.2)
29
31
  diffy
32
+ cocoapods (0.36.0.beta.2)
33
+ activesupport (>= 3.2.15)
34
+ claide (~> 0.8.0)
35
+ cocoapods-core (= 0.36.0.beta.2)
36
+ cocoapods-downloader (~> 0.8.1)
37
+ cocoapods-plugins (~> 0.4.0)
38
+ cocoapods-trunk (~> 0.5.0)
39
+ cocoapods-try (~> 0.4.3)
40
+ colored (~> 1.2)
41
+ escape (~> 0.0.4)
42
+ molinillo (~> 0.2.0)
43
+ nap (~> 0.8)
44
+ open4 (~> 1.3)
45
+ xcodeproj (~> 0.21.2)
46
+ cocoapods-core (0.36.0.beta.2)
47
+ activesupport (>= 3.2.15)
48
+ fuzzy_match (~> 2.0.4)
49
+ nap (~> 0.8.0)
50
+ cocoapods-downloader (0.8.1)
51
+ cocoapods-plugins (0.4.0)
52
+ nap
53
+ cocoapods-trunk (0.5.0)
54
+ nap (>= 0.8)
55
+ netrc (= 0.7.8)
56
+ cocoapods-try (0.4.3)
30
57
  colored (1.2)
31
58
  crack (0.4.2)
32
59
  safe_yaml (~> 1.0.0)
33
60
  diffy (3.0.7)
61
+ escape (0.0.4)
62
+ fuzzy_match (2.0.4)
34
63
  i18n (0.7.0)
35
- json (1.8.1)
64
+ json (1.8.2)
36
65
  metaclass (0.0.4)
37
66
  mini_portile (0.6.2)
38
- minitest (5.5.0)
67
+ minitest (5.5.1)
39
68
  mocha (1.1.0)
40
69
  metaclass (~> 0.0.1)
41
70
  mocha-on-bacon (0.2.2)
42
71
  mocha (>= 0.13.0)
72
+ molinillo (0.2.0)
43
73
  mustache (0.99.8)
44
- nokogiri (1.6.5)
74
+ nap (0.8.0)
75
+ netrc (0.7.8)
76
+ nokogiri (1.6.6.2)
45
77
  mini_portile (~> 0.6.0)
78
+ open4 (1.3.4)
46
79
  parser (2.2.0.pre.5)
47
80
  ast (>= 1.1, < 3.0)
48
81
  slop (~> 3.4, >= 3.4.5)
@@ -61,7 +94,7 @@ GEM
61
94
  ruby-progressbar (~> 1.4)
62
95
  ruby-progressbar (1.6.0)
63
96
  safe_yaml (1.0.4)
64
- sass (3.4.9)
97
+ sass (3.4.10)
65
98
  slop (3.6.0)
66
99
  sqlite3 (1.3.10)
67
100
  thread_safe (0.3.4)
@@ -70,6 +103,9 @@ GEM
70
103
  webmock (1.20.0)
71
104
  addressable (>= 2.3.6)
72
105
  crack (>= 0.3.2)
106
+ xcodeproj (0.21.2)
107
+ activesupport (>= 3)
108
+ colored (~> 1.2)
73
109
 
74
110
  PLATFORMS
75
111
  ruby
data/Rakefile CHANGED
@@ -5,6 +5,9 @@ task :bootstrap do
5
5
  if system('which bundle')
6
6
  title 'Installing gems'
7
7
  sh 'bundle install'
8
+
9
+ title 'Updating submodules'
10
+ sh 'git submodule update --init --recursive'
8
11
  else
9
12
  $stderr.puts "\033[0;31m" \
10
13
  "[!] Please install the bundler gem manually:\n" \
@@ -16,6 +19,7 @@ end
16
19
 
17
20
  begin
18
21
  require 'bundler/gem_tasks'
22
+ require 'fileutils'
19
23
 
20
24
  task default: :spec
21
25
 
@@ -69,6 +73,23 @@ begin
69
73
  task.patterns = %w(lib spec Rakefile Gemfile jazzy.gemspec)
70
74
  end
71
75
 
76
+ #-- SourceKitten -----------------------------------------------------------#
77
+
78
+ desc 'Vendors SourceKitten'
79
+ task :sourcekitten do
80
+ Dir.chdir('SourceKitten') do
81
+ `make installables`
82
+ end
83
+
84
+ destination = 'lib/jazzy/sourcekitten'
85
+ frameworks = Dir.glob('/tmp/SourceKitten.dst/Library/Frameworks/*')
86
+ binary = '/tmp/SourceKitten.dst/usr/local/bin/sourcekitten'
87
+ FileUtils.rm_rf destination
88
+ FileUtils.mkdir_p destination
89
+ FileUtils.cp_r frameworks, destination
90
+ FileUtils.cp binary, destination
91
+ end
92
+
72
93
  rescue LoadError, NameError
73
94
  $stderr.puts "\033[0;31m" \
74
95
  '[!] Some Rake tasks haven been disabled because the environment' \
data/jazzy.gemspec CHANGED
@@ -24,6 +24,7 @@ Gem::Specification.new do |spec|
24
24
  spec.add_runtime_dependency 'sass', '~> 3.4'
25
25
  spec.add_runtime_dependency 'rouge', '~> 1.5'
26
26
  spec.add_runtime_dependency 'sqlite3', '~> 1.3'
27
+ spec.add_runtime_dependency 'cocoapods', '~> 0.36.0.beta.2'
27
28
 
28
29
  spec.add_development_dependency 'bundler', '~> 1.7'
29
30
  spec.add_development_dependency 'rake', '~> 10.3'
@@ -857,6 +857,12 @@ td {
857
857
  }
858
858
 
859
859
  html.dash {
860
+ body {
861
+ font-size: 65%;
862
+ }
863
+ a.Swift {
864
+ font-size: 110%;
865
+ }
860
866
  .book-parts {
861
867
  display: none;
862
868
  width: 0;
@@ -873,4 +879,24 @@ html.dash {
873
879
  margin-left: 0;
874
880
  }
875
881
  }
882
+ header, section#valence, .pixel-line, .rubber-band-gap {
883
+ display: none;
884
+ }
885
+ .content-wrapper {
886
+ width: auto;
887
+ }
888
+ .chapter {
889
+ border: none;
890
+ width: auto;
891
+ position: static;
892
+ padding-bottom: 50px;
893
+ box-shadow: none;
894
+ }
895
+ #reference .chapter {
896
+ border: none;
897
+ box-shadow: none;
898
+ }
899
+ #footer {
900
+ position: static;
901
+ }
876
902
  }
data/lib/jazzy/config.rb CHANGED
@@ -2,6 +2,7 @@ require 'optparse'
2
2
  require 'pathname'
3
3
  require 'uri'
4
4
 
5
+ require 'jazzy/podspec_documenter'
5
6
  require 'jazzy/source_declaration/access_control_level'
6
7
 
7
8
  module Jazzy
@@ -23,8 +24,13 @@ module Jazzy
23
24
  attr_accessor :version
24
25
  attr_accessor :min_acl
25
26
  attr_accessor :skip_undocumented
27
+ attr_accessor :podspec
28
+ attr_accessor :docset_icon
29
+ attr_accessor :docset_path
30
+ attr_accessor :source_directory
26
31
 
27
32
  def initialize
33
+ PodspecDocumenter.configure(self, Dir['*.podspec{.json,}'].first)
28
34
  self.output = Pathname('docs')
29
35
  self.xcodebuild_arguments = []
30
36
  self.author_name = ''
@@ -35,6 +41,11 @@ module Jazzy
35
41
  self.version = '1.0'
36
42
  self.min_acl = SourceDeclaration::AccessControlLevel.internal
37
43
  self.skip_undocumented = false
44
+ self.source_directory = Pathname.pwd
45
+ end
46
+
47
+ def podspec=(podspec)
48
+ @podspec = PodspecDocumenter.configure(self, podspec)
38
49
  end
39
50
 
40
51
  # rubocop:disable Metrics/MethodLength
@@ -130,6 +141,24 @@ module Jazzy
130
141
  config.skip_undocumented = skip_undocumented
131
142
  end
132
143
 
144
+ opt.on('--podspec FILEPATH') do |podspec|
145
+ config.podspec = Pathname(podspec)
146
+ end
147
+
148
+ opt.on('--docset-icon FILEPATH') do |docset_icon|
149
+ config.docset_icon = Pathname(docset_icon)
150
+ end
151
+
152
+ opt.on('--docset-path DIRPATH', 'The relative path for the generated ' \
153
+ 'docset') do |docset_path|
154
+ config.docset_path = docset_path
155
+ end
156
+
157
+ opt.on('--source-directory DIRPATH', 'The directory that contains ' \
158
+ 'the source to be documented') do |source_directory|
159
+ config.source_directory = Pathname(source_directory)
160
+ end
161
+
133
162
  opt.on('-v', '--version', 'Print version number') do
134
163
  puts 'jazzy version: ' + Jazzy::VERSION
135
164
  exit
@@ -8,6 +8,7 @@ require 'jazzy/config'
8
8
  require 'jazzy/doc'
9
9
  require 'jazzy/docset_builder'
10
10
  require 'jazzy/jazzy_markdown'
11
+ require 'jazzy/podspec_documenter'
11
12
  require 'jazzy/readme_generator'
12
13
  require 'jazzy/source_declaration'
13
14
  require 'jazzy/source_module'
@@ -43,23 +44,27 @@ module Jazzy
43
44
 
44
45
  # Build documentation from the given options
45
46
  # @param [Config] options
47
+ # @return [SourceModule] the documented source module
46
48
  def self.build(options)
47
49
  if options.sourcekitten_sourcefile
48
- file_contents = options.sourcekitten_sourcefile.read
49
- build_docs_for_sourcekitten_output(file_contents, options)
50
+ stdout = options.sourcekitten_sourcefile.read
50
51
  else
51
- stdout = SourceKitten.run_sourcekitten(options.xcodebuild_arguments)
52
- exitstatus = $?.exitstatus
53
- if exitstatus == 0
54
- warn 'building site'
55
- build_docs_for_sourcekitten_output(stdout, options)
52
+ if podspec = options.podspec
53
+ stdout = PodspecDocumenter.new(podspec).sourcekitten_output
56
54
  else
55
+ stdout = SourceKitten.run_sourcekitten(
56
+ ['doc'] + options.xcodebuild_arguments,
57
+ )
58
+ end
59
+ unless $?.success?
57
60
  warn 'Please pass in xcodebuild arguments using -x'
58
61
  warn 'If build arguments are correct, please file an issue on ' \
59
- 'https://github.com/realm/jazzy/issues'
60
- exit exitstatus || 1
62
+ 'https://github.com/realm/jazzy/issues'
63
+ exit $?.exitstatus || 1
61
64
  end
62
65
  end
66
+ warn 'building site'
67
+ build_docs_for_sourcekitten_output(stdout, options)
63
68
  end
64
69
 
65
70
  # Build & write HTML docs to disk from structured docs array
@@ -95,6 +100,7 @@ module Jazzy
95
100
  # Build docs given sourcekitten output
96
101
  # @param [String] sourcekitten_output Output of sourcekitten command
97
102
  # @param [Config] options Build options
103
+ # @return [SourceModule] the documented source module
98
104
  def self.build_docs_for_sourcekitten_output(sourcekitten_output, options)
99
105
  output_dir = options.output
100
106
  prepare_output_dir(output_dir, options.clean)
@@ -122,6 +128,8 @@ module Jazzy
122
128
  DocsetBuilder.new(output_dir, source_module).build!
123
129
 
124
130
  puts "jam out ♪♫ to your fresh new docs in `#{output_dir}`"
131
+
132
+ source_module
125
133
  end
126
134
 
127
135
  def self.decl_for_token(token)
@@ -8,20 +8,24 @@ module Jazzy
8
8
  include Config::Mixin
9
9
 
10
10
  attr_reader :output_dir
11
+ attr_reader :generated_docs_dir
11
12
  attr_reader :source_module
12
13
  attr_reader :docset_dir
13
14
  attr_reader :documents_dir
14
15
 
15
- def initialize(output_dir, source_module)
16
- @output_dir = output_dir + 'docsets'
16
+ def initialize(generated_docs_dir, source_module)
17
17
  @source_module = source_module
18
- @docset_dir = @output_dir + "#{source_module.name}.docset"
18
+ @docset_dir = generated_docs_dir +
19
+ (config.docset_path || "docsets/#{source_module.name}.docset")
20
+ @generated_docs_dir = generated_docs_dir
21
+ @output_dir = docset_dir.parent
19
22
  @documents_dir = docset_dir + 'Contents/Resources/Documents/'
20
23
  end
21
24
 
22
25
  def build!
23
26
  docset_dir.rmtree if docset_dir.exist?
24
27
  copy_docs
28
+ copy_icon if config.docset_icon
25
29
  write_plist
26
30
  create_index
27
31
  create_archive
@@ -54,12 +58,17 @@ module Jazzy
54
58
  end
55
59
 
56
60
  def copy_docs
57
- files_to_copy = Dir.glob(output_dir + '../**/*')
61
+ files_to_copy = Pathname.glob(generated_docs_dir + '**/*') -
62
+ [docset_dir, output_dir]
58
63
 
59
64
  FileUtils.mkdir_p documents_dir
60
65
  FileUtils.cp_r files_to_copy, documents_dir
61
66
  end
62
67
 
68
+ def copy_icon
69
+ FileUtils.cp config.docset_icon, @docset_dir + 'icon.png'
70
+ end
71
+
63
72
  def create_index
64
73
  search_index_path = docset_dir + 'Contents/Resources/docSet.dsidx'
65
74
  SQLite3::Database.new(search_index_path.to_s) do |db|
@@ -1,3 +1,3 @@
1
1
  module Jazzy
2
- VERSION = '0.0.20' unless defined? Jazzy::VERSION
2
+ VERSION = '0.1.0' unless defined? Jazzy::VERSION
3
3
  end
@@ -29,7 +29,8 @@ module Jazzy
29
29
  no_intra_emphasis: true,
30
30
  quote: true,
31
31
  strikethrough: true,
32
- space_after_headers: true,
32
+ space_after_headers: false,
33
+ tables: true,
33
34
  }.freeze
34
35
  end
35
36
 
@@ -0,0 +1,109 @@
1
+ require 'tmpdir'
2
+ require 'json'
3
+
4
+ module Jazzy
5
+ class PodspecDocumenter
6
+ attr_reader :podspec
7
+
8
+ def initialize(podspec)
9
+ @podspec = podspec
10
+ end
11
+
12
+ def sourcekitten_output
13
+ sandbox = Pod::Sandbox.new(pod_config.sandbox_root)
14
+ installer = Pod::Installer.new(sandbox, podfile)
15
+ installer.install!
16
+ stdout = Dir.chdir(sandbox.root) do
17
+ pod_targets.map do |t|
18
+ SourceKitten.run_sourcekitten(
19
+ %W(doc --module-name #{podspec.module_name} -target #{t}),
20
+ )
21
+ end
22
+ end
23
+ stdout.reduce([]) { |a, s| a + JSON.load(s) }.to_json
24
+ end
25
+
26
+ def self.configure(config, podspec)
27
+ case podspec
28
+ when Pathname, String
29
+ require 'cocoapods'
30
+ podspec = Pod::Specification.from_file(podspec)
31
+ end
32
+
33
+ return unless podspec
34
+
35
+ config.author_name = author_name(podspec)
36
+ config.module_name = podspec.module_name
37
+ config.author_url = podspec.homepage || github_file_prefix(podspec)
38
+ config.version = podspec.version.to_s
39
+ config.github_file_prefix = github_file_prefix(podspec)
40
+
41
+ podspec
42
+ end
43
+
44
+ private
45
+
46
+ # @!group Config helper methods
47
+
48
+ def self.author_name(podspec)
49
+ if podspec.authors.respond_to? :to_hash
50
+ podspec.authors.keys.to_sentence || ''
51
+ else
52
+ if podspec.authors.respond_to? :to_ary
53
+ podspec.authors.to_sentence
54
+ else
55
+ podspec.authors
56
+ end
57
+ end || ''
58
+ end
59
+
60
+ def self.github_file_prefix(podspec)
61
+ return unless podspec.source[:url] =~ %r{github.com[:/]+(.+)/(.+)}
62
+ org, repo = Regexp.last_match
63
+ return unless org && repo
64
+ repo.sub!(/\.git$/, '')
65
+ return unless rev = podspec.source[:tag] || podspec.source[:commit]
66
+ "https://github.com/#{org}/#{repo}/blob/#{rev}"
67
+ end
68
+
69
+ # @!group SourceKitten output helper methods
70
+
71
+ attr_reader :pod_targets
72
+
73
+ def pod_config
74
+ Pod::Config.instance.tap do |c|
75
+ c.installation_root = Pathname(Dir.mktmpdir)
76
+ c.installation_root.rmtree if c.installation_root.exist?
77
+ c.integrate_targets = false
78
+ end
79
+ end
80
+
81
+ def pod_path
82
+ if podspec.defined_in_file
83
+ podspec.defined_in_file.parent
84
+ else
85
+ config.source_directory
86
+ end
87
+ end
88
+
89
+ def podfile
90
+ podspec = @podspec
91
+ path = pod_path
92
+ targets = (@pod_targets ||= [])
93
+ @podfile ||= Pod::Podfile.new do
94
+ platform :ios, '8.0'
95
+ [podspec, *podspec.recursive_subspecs].each do |ss|
96
+ ss.available_platforms.each do |p|
97
+ t = "Jazzy-#{ss.name.gsub(/\//, '__')}-#{p.name}"
98
+ targets << "Pods-#{t}-#{ss.root.name}"
99
+ target(t) do
100
+ use_frameworks!
101
+ platform p.name, p.deployment_target
102
+ pod ss.name, path: path.realpath.to_s
103
+ end
104
+ end
105
+ end
106
+ end
107
+ end
108
+ end
109
+ end