utopia 2.14.0 → 2.16.2

Sign up to get free protection for your applications and to get access to all the features.
Files changed (261) hide show
  1. checksums.yaml +4 -4
  2. data/bake/utopia/{yarn.rb → node.rb} +11 -5
  3. data/lib/utopia/command.rb +2 -2
  4. data/lib/utopia/command/site.rb +1 -1
  5. data/lib/utopia/content.rb +7 -5
  6. data/lib/utopia/content/markup.rb +1 -1
  7. data/lib/utopia/content/node.rb +2 -2
  8. data/lib/utopia/content/response.rb +3 -3
  9. data/lib/utopia/controller.rb +0 -17
  10. data/lib/utopia/controller/base.rb +27 -3
  11. data/lib/utopia/controller/respond.rb +50 -107
  12. data/lib/utopia/extensions/array_split.rb +2 -2
  13. data/lib/utopia/http.rb +3 -3
  14. data/lib/utopia/middleware.rb +2 -2
  15. data/lib/utopia/path.rb +13 -5
  16. data/lib/utopia/redirection.rb +0 -2
  17. data/lib/utopia/responder.rb +76 -0
  18. data/lib/utopia/version.rb +1 -1
  19. data/setup/site/.gitignore +8 -7
  20. metadata +71 -396
  21. data/.codeclimate.yml +0 -5
  22. data/.github/workflows/development.yml +0 -62
  23. data/.gitignore +0 -8
  24. data/.rspec +0 -4
  25. data/.yardopts +0 -2
  26. data/Gemfile +0 -28
  27. data/README.md +0 -90
  28. data/benchmark/call_vs_check.rb +0 -38
  29. data/benchmark/const_vs_hash.rb +0 -35
  30. data/benchmark/hash_vs_openstruct.rb +0 -54
  31. data/benchmark/string_vs_symbol.rb +0 -14
  32. data/benchmark/struct_vs_class.rb +0 -91
  33. data/docs/.nojekyll +0 -0
  34. data/docs/_components/jquery-litebox/jquery.litebox.css +0 -23
  35. data/docs/_components/jquery-litebox/jquery.litebox.gallery.css +0 -48
  36. data/docs/_components/jquery-litebox/jquery.litebox.js +0 -30
  37. data/docs/_components/jquery-syntax/base/jquery.syntax.brush.apache.css +0 -12
  38. data/docs/_components/jquery-syntax/base/jquery.syntax.brush.applescript.css +0 -5
  39. data/docs/_components/jquery-syntax/base/jquery.syntax.brush.assembly.css +0 -8
  40. data/docs/_components/jquery-syntax/base/jquery.syntax.brush.bash-script.css +0 -6
  41. data/docs/_components/jquery-syntax/base/jquery.syntax.brush.bash.css +0 -4
  42. data/docs/_components/jquery-syntax/base/jquery.syntax.brush.clang.css +0 -6
  43. data/docs/_components/jquery-syntax/base/jquery.syntax.brush.css.css +0 -14
  44. data/docs/_components/jquery-syntax/base/jquery.syntax.brush.diff.css +0 -16
  45. data/docs/_components/jquery-syntax/base/jquery.syntax.brush.html.css +0 -5
  46. data/docs/_components/jquery-syntax/base/jquery.syntax.brush.ocaml.css +0 -3
  47. data/docs/_components/jquery-syntax/base/jquery.syntax.brush.protobuf.css +0 -2
  48. data/docs/_components/jquery-syntax/base/jquery.syntax.brush.python.css +0 -6
  49. data/docs/_components/jquery-syntax/base/jquery.syntax.brush.ruby.css +0 -2
  50. data/docs/_components/jquery-syntax/base/jquery.syntax.brush.xml.css +0 -18
  51. data/docs/_components/jquery-syntax/base/jquery.syntax.core.css +0 -58
  52. data/docs/_components/jquery-syntax/base/jquery.syntax.editor.css +0 -6
  53. data/docs/_components/jquery-syntax/base/theme.js +0 -1
  54. data/docs/_components/jquery-syntax/bright/jquery.syntax.core.css +0 -27
  55. data/docs/_components/jquery-syntax/bright/theme.js +0 -1
  56. data/docs/_components/jquery-syntax/jquery.syntax.brush.apache.js +0 -3
  57. data/docs/_components/jquery-syntax/jquery.syntax.brush.applescript.js +0 -5
  58. data/docs/_components/jquery-syntax/jquery.syntax.brush.assembly.js +0 -3
  59. data/docs/_components/jquery-syntax/jquery.syntax.brush.bash-script.js +0 -4
  60. data/docs/_components/jquery-syntax/jquery.syntax.brush.bash.js +0 -2
  61. data/docs/_components/jquery-syntax/jquery.syntax.brush.basic.js +0 -5
  62. data/docs/_components/jquery-syntax/jquery.syntax.brush.clang.js +0 -5
  63. data/docs/_components/jquery-syntax/jquery.syntax.brush.csharp.js +0 -4
  64. data/docs/_components/jquery-syntax/jquery.syntax.brush.css.js +0 -5
  65. data/docs/_components/jquery-syntax/jquery.syntax.brush.diff.js +0 -2
  66. data/docs/_components/jquery-syntax/jquery.syntax.brush.go.js +0 -3
  67. data/docs/_components/jquery-syntax/jquery.syntax.brush.haskell.js +0 -3
  68. data/docs/_components/jquery-syntax/jquery.syntax.brush.html.js +0 -4
  69. data/docs/_components/jquery-syntax/jquery.syntax.brush.io.js +0 -3
  70. data/docs/_components/jquery-syntax/jquery.syntax.brush.java.js +0 -4
  71. data/docs/_components/jquery-syntax/jquery.syntax.brush.javascript.js +0 -3
  72. data/docs/_components/jquery-syntax/jquery.syntax.brush.kai.js +0 -2
  73. data/docs/_components/jquery-syntax/jquery.syntax.brush.lisp.js +0 -2
  74. data/docs/_components/jquery-syntax/jquery.syntax.brush.lua.js +0 -3
  75. data/docs/_components/jquery-syntax/jquery.syntax.brush.nginx.js +0 -2
  76. data/docs/_components/jquery-syntax/jquery.syntax.brush.ocaml.js +0 -4
  77. data/docs/_components/jquery-syntax/jquery.syntax.brush.ooc.js +0 -4
  78. data/docs/_components/jquery-syntax/jquery.syntax.brush.pascal.js +0 -4
  79. data/docs/_components/jquery-syntax/jquery.syntax.brush.perl5.js +0 -3
  80. data/docs/_components/jquery-syntax/jquery.syntax.brush.php-script.js +0 -4
  81. data/docs/_components/jquery-syntax/jquery.syntax.brush.php.js +0 -2
  82. data/docs/_components/jquery-syntax/jquery.syntax.brush.plain.js +0 -2
  83. data/docs/_components/jquery-syntax/jquery.syntax.brush.protobuf.js +0 -3
  84. data/docs/_components/jquery-syntax/jquery.syntax.brush.python.js +0 -5
  85. data/docs/_components/jquery-syntax/jquery.syntax.brush.ruby.js +0 -5
  86. data/docs/_components/jquery-syntax/jquery.syntax.brush.scala.js +0 -4
  87. data/docs/_components/jquery-syntax/jquery.syntax.brush.smalltalk.js +0 -2
  88. data/docs/_components/jquery-syntax/jquery.syntax.brush.sql.js +0 -4
  89. data/docs/_components/jquery-syntax/jquery.syntax.brush.super-collider.js +0 -3
  90. data/docs/_components/jquery-syntax/jquery.syntax.brush.swift.js +0 -3
  91. data/docs/_components/jquery-syntax/jquery.syntax.brush.trenni.js +0 -2
  92. data/docs/_components/jquery-syntax/jquery.syntax.brush.xml.js +0 -4
  93. data/docs/_components/jquery-syntax/jquery.syntax.brush.yaml.js +0 -2
  94. data/docs/_components/jquery-syntax/jquery.syntax.cache.js +0 -7
  95. data/docs/_components/jquery-syntax/jquery.syntax.core.js +0 -34
  96. data/docs/_components/jquery-syntax/jquery.syntax.editor.js +0 -11
  97. data/docs/_components/jquery-syntax/jquery.syntax.js +0 -8
  98. data/docs/_components/jquery-syntax/jquery.syntax.min.js +0 -13
  99. data/docs/_components/jquery-syntax/paper/jquery.syntax.core.css +0 -31
  100. data/docs/_components/jquery-syntax/paper/theme.js +0 -1
  101. data/docs/_components/jquery/jquery.js +0 -10872
  102. data/docs/_components/jquery/jquery.min.js +0 -2
  103. data/docs/_components/jquery/jquery.min.map +0 -1
  104. data/docs/_components/jquery/jquery.slim.js +0 -8777
  105. data/docs/_components/jquery/jquery.slim.min.js +0 -2
  106. data/docs/_components/jquery/jquery.slim.min.map +0 -1
  107. data/docs/_static/icon.png +0 -0
  108. data/docs/_static/site.css +0 -191
  109. data/docs/development-environment-setup/index.html +0 -54
  110. data/docs/faq/what-is-xnode/index.html +0 -73
  111. data/docs/index.html +0 -86
  112. data/docs/javascript/index.html +0 -108
  113. data/docs/middleware/content/index.html +0 -58
  114. data/docs/middleware/controller/actions/index.html +0 -111
  115. data/docs/middleware/controller/index.html +0 -98
  116. data/docs/middleware/controller/rewrite/index.html +0 -105
  117. data/docs/middleware/localization/index.html +0 -53
  118. data/docs/middleware/redirection/index.html +0 -55
  119. data/docs/middleware/session/index.html +0 -65
  120. data/docs/middleware/static/index.html +0 -51
  121. data/docs/server-setup/index.html +0 -87
  122. data/docs/testing/index.html +0 -53
  123. data/docs/updating-utopia/index.html +0 -102
  124. data/docs/your-first-page/index.html +0 -74
  125. data/materials/utopia.png +0 -0
  126. data/materials/utopia.svg +0 -1
  127. data/setup/site/.yarnrc +0 -1
  128. data/spec/mock_node.rb +0 -16
  129. data/spec/spec_helper.rb +0 -13
  130. data/spec/utopia/command_spec.rb +0 -164
  131. data/spec/utopia/content/document_spec.rb +0 -60
  132. data/spec/utopia/content/links/bar/index.xnode +0 -0
  133. data/spec/utopia/content/links/bar/parent/child/index.en.xnode +0 -0
  134. data/spec/utopia/content/links/bar/parent/child/index.ja.xnode +0 -0
  135. data/spec/utopia/content/links/bar/parent/links.yaml +0 -2
  136. data/spec/utopia/content/links/foo/index.xnode +0 -0
  137. data/spec/utopia/content/links/foo/links.yaml +0 -2
  138. data/spec/utopia/content/links/foo/test.de.xnode +0 -0
  139. data/spec/utopia/content/links/foo/test.en.xnode +0 -0
  140. data/spec/utopia/content/links/index.xnode +0 -0
  141. data/spec/utopia/content/links/links.yaml +0 -18
  142. data/spec/utopia/content/links/redirect/links.yaml +0 -2
  143. data/spec/utopia/content/links/welcome.xnode +0 -0
  144. data/spec/utopia/content/links_spec.rb +0 -218
  145. data/spec/utopia/content/localized/five/index.en.xnode +0 -0
  146. data/spec/utopia/content/localized/four/index.en.xnode +0 -0
  147. data/spec/utopia/content/localized/four/index.zh.xnode +0 -0
  148. data/spec/utopia/content/localized/four/links.yaml +0 -4
  149. data/spec/utopia/content/localized/links.yaml +0 -13
  150. data/spec/utopia/content/localized/one.xnode +0 -0
  151. data/spec/utopia/content/localized/three/index.xnode +0 -0
  152. data/spec/utopia/content/localized/two.en.xnode +0 -0
  153. data/spec/utopia/content/localized/two.zh.xnode +0 -0
  154. data/spec/utopia/content/markup_spec.rb +0 -96
  155. data/spec/utopia/content/namespace_spec.rb +0 -45
  156. data/spec/utopia/content/node/lookup/content.xnode +0 -1
  157. data/spec/utopia/content/node/lookup/index.xnode +0 -1
  158. data/spec/utopia/content/node/ordered/first.xnode +0 -0
  159. data/spec/utopia/content/node/ordered/index.xnode +0 -0
  160. data/spec/utopia/content/node/ordered/links.yaml +0 -4
  161. data/spec/utopia/content/node/ordered/second.xnode +0 -0
  162. data/spec/utopia/content/node/related/foo.en.xnode +0 -0
  163. data/spec/utopia/content/node/related/foo.ja.xnode +0 -0
  164. data/spec/utopia/content/node/related/links.yaml +0 -4
  165. data/spec/utopia/content/node_spec.rb +0 -97
  166. data/spec/utopia/content/response_spec.rb +0 -54
  167. data/spec/utopia/content/tags_spec.rb +0 -82
  168. data/spec/utopia/content_spec.rb +0 -100
  169. data/spec/utopia/content_spec.ru +0 -6
  170. data/spec/utopia/content_spec/_heading.xnode +0 -1
  171. data/spec/utopia/content_spec/content/_show-value.xnode +0 -1
  172. data/spec/utopia/content_spec/content/links.yaml +0 -2
  173. data/spec/utopia/content_spec/content/test-partial.xnode +0 -1
  174. data/spec/utopia/content_spec/index.xnode +0 -1
  175. data/spec/utopia/content_spec/node/index.xnode +0 -1
  176. data/spec/utopia/content_spec/test.xnode +0 -10
  177. data/spec/utopia/controller/actions_spec.rb +0 -62
  178. data/spec/utopia/controller/middleware_spec.rb +0 -88
  179. data/spec/utopia/controller/middleware_spec.ru +0 -6
  180. data/spec/utopia/controller/middleware_spec/controller/controller.rb +0 -27
  181. data/spec/utopia/controller/middleware_spec/controller/index.xnode +0 -1
  182. data/spec/utopia/controller/middleware_spec/controller/nested/controller.rb +0 -7
  183. data/spec/utopia/controller/middleware_spec/empty/controller.rb +0 -0
  184. data/spec/utopia/controller/middleware_spec/redirect/controller.rb +0 -12
  185. data/spec/utopia/controller/middleware_spec/redirect/test/controller.rb +0 -9
  186. data/spec/utopia/controller/respond_spec.rb +0 -174
  187. data/spec/utopia/controller/respond_spec.ru +0 -12
  188. data/spec/utopia/controller/respond_spec/api/controller.rb +0 -28
  189. data/spec/utopia/controller/respond_spec/errors/controller.rb +0 -14
  190. data/spec/utopia/controller/respond_spec/errors/file-not-found.xnode +0 -8
  191. data/spec/utopia/controller/respond_spec/html/controller.rb +0 -11
  192. data/spec/utopia/controller/respond_spec/rewrite/controller.rb +0 -13
  193. data/spec/utopia/controller/rewrite_spec.rb +0 -80
  194. data/spec/utopia/controller/sequence_spec.rb +0 -135
  195. data/spec/utopia/controller/variables_spec.rb +0 -59
  196. data/spec/utopia/controller/websocket_spec.rb +0 -68
  197. data/spec/utopia/controller/websocket_spec.ru +0 -5
  198. data/spec/utopia/controller/websocket_spec/server/controller.rb +0 -11
  199. data/spec/utopia/exceptions/handler_spec.rb +0 -47
  200. data/spec/utopia/exceptions/handler_spec.ru +0 -8
  201. data/spec/utopia/exceptions/handler_spec/controller.rb +0 -19
  202. data/spec/utopia/exceptions/mailer_spec.rb +0 -43
  203. data/spec/utopia/exceptions/mailer_spec.ru +0 -10
  204. data/spec/utopia/extensions_spec.rb +0 -73
  205. data/spec/utopia/http/status_spec.rb +0 -44
  206. data/spec/utopia/locale_spec.rb +0 -58
  207. data/spec/utopia/localization_spec.rb +0 -92
  208. data/spec/utopia/localization_spec.ru +0 -15
  209. data/spec/utopia/localization_spec/controller.rb +0 -21
  210. data/spec/utopia/localization_spec/localized.de.txt +0 -1
  211. data/spec/utopia/localization_spec/localized.en.txt +0 -1
  212. data/spec/utopia/localization_spec/localized.ja.txt +0 -1
  213. data/spec/utopia/localization_spec/test.txt +0 -1
  214. data/spec/utopia/middleware_spec.rb +0 -31
  215. data/spec/utopia/path/matcher_spec.rb +0 -66
  216. data/spec/utopia/path_spec.rb +0 -207
  217. data/spec/utopia/performance_spec.rb +0 -92
  218. data/spec/utopia/performance_spec/cache/head/readme.txt +0 -1
  219. data/spec/utopia/performance_spec/cache/meta/readme.txt +0 -1
  220. data/spec/utopia/performance_spec/config.ru +0 -35
  221. data/spec/utopia/performance_spec/lib/readme.txt +0 -1
  222. data/spec/utopia/performance_spec/pages/_heading.xnode +0 -2
  223. data/spec/utopia/performance_spec/pages/_page.xnode +0 -26
  224. data/spec/utopia/performance_spec/pages/api/controller.rb +0 -8
  225. data/spec/utopia/performance_spec/pages/errors/exception.xnode +0 -5
  226. data/spec/utopia/performance_spec/pages/errors/file-not-found.xnode +0 -5
  227. data/spec/utopia/performance_spec/pages/links.yaml +0 -2
  228. data/spec/utopia/performance_spec/pages/welcome/index.xnode +0 -17
  229. data/spec/utopia/rack_helper.rb +0 -32
  230. data/spec/utopia/redirection_spec.rb +0 -77
  231. data/spec/utopia/redirection_spec.ru +0 -27
  232. data/spec/utopia/session_spec.rb +0 -189
  233. data/spec/utopia/session_spec.ru +0 -24
  234. data/spec/utopia/setup_spec.rb +0 -56
  235. data/spec/utopia/static_spec.rb +0 -49
  236. data/spec/utopia/static_spec.ru +0 -5
  237. data/spec/utopia/static_spec/test.txt +0 -1
  238. data/utopia.gemspec +0 -52
  239. data/wiki/Gemfile +0 -9
  240. data/wiki/config.ru +0 -7
  241. data/wiki/pages/development-environment-setup/index.md +0 -16
  242. data/wiki/pages/faq/links.yaml +0 -2
  243. data/wiki/pages/faq/what-is-xnode/index.md +0 -37
  244. data/wiki/pages/faq/what-is-xnode/links.yaml +0 -2
  245. data/wiki/pages/index.md +0 -35
  246. data/wiki/pages/javascript/index.md +0 -77
  247. data/wiki/pages/javascript/links.yaml +0 -2
  248. data/wiki/pages/links.yaml +0 -2
  249. data/wiki/pages/middleware/content/index.md +0 -21
  250. data/wiki/pages/middleware/controller/actions/index.md +0 -76
  251. data/wiki/pages/middleware/controller/index.md +0 -62
  252. data/wiki/pages/middleware/controller/links.yaml +0 -4
  253. data/wiki/pages/middleware/controller/rewrite/index.md +0 -69
  254. data/wiki/pages/middleware/localization/index.md +0 -16
  255. data/wiki/pages/middleware/redirection/index.md +0 -17
  256. data/wiki/pages/middleware/session/index.md +0 -29
  257. data/wiki/pages/middleware/static/index.md +0 -13
  258. data/wiki/pages/server-setup/index.md +0 -52
  259. data/wiki/pages/testing/index.md +0 -15
  260. data/wiki/pages/updating-utopia/index.md +0 -63
  261. data/wiki/pages/your-first-page/index.md +0 -38
@@ -126,8 +126,8 @@ module Utopia
126
126
  @components = other_path.components.dup
127
127
  end
128
128
 
129
- def include?(*args)
130
- @components.include?(*args)
129
+ def include?(*arguments)
130
+ @components.include?(*arguments)
131
131
  end
132
132
 
133
133
  def directory?
@@ -200,8 +200,8 @@ module Utopia
200
200
  end
201
201
  end
202
202
 
203
- def with_prefix(*args)
204
- self.class.create(*args) + self
203
+ def with_prefix(*arguments)
204
+ self.class.create(*arguments) + self
205
205
  end
206
206
 
207
207
  # Computes the difference of the path.
@@ -235,6 +235,14 @@ module Utopia
235
235
  return self.class.new(result)
236
236
  end
237
237
 
238
+ def pop
239
+ @components.pop
240
+ end
241
+
242
+ def last
243
+ @components.last
244
+ end
245
+
238
246
  # @return [String] the last path component without any file extension.
239
247
  def basename
240
248
  basename, _ = @components.last.split('.', 2)
@@ -284,7 +292,7 @@ module Utopia
284
292
  end
285
293
 
286
294
  def split(at)
287
- if at.kind_of? String
295
+ if at.kind_of?(String)
288
296
  at = @components.index(at)
289
297
  end
290
298
 
@@ -54,8 +54,6 @@ module Utopia
54
54
  super
55
55
  end
56
56
 
57
- CONTENT_TYPE = 'Content-Type'.freeze
58
-
59
57
  def unhandled_error?(response)
60
58
  response[0] >= 400 && response[1].empty?
61
59
  end
@@ -0,0 +1,76 @@
1
+ # frozen_string_literal: true
2
+
3
+ # Copyright, 2012, by Samuel G. D. Williams. <http://www.codeotaku.com>
4
+ #
5
+ # Permission is hereby granted, free of charge, to any person obtaining a copy
6
+ # of this software and associated documentation files (the "Software"), to deal
7
+ # in the Software without restriction, including without limitation the rights
8
+ # to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9
+ # copies of the Software, and to permit persons to whom the Software is
10
+ # furnished to do so, subject to the following conditions:
11
+ #
12
+ # The above copyright notice and this permission notice shall be included in
13
+ # all copies or substantial portions of the Software.
14
+ #
15
+ # THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
+ # IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17
+ # FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18
+ # AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
+ # LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
+ # OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
21
+ # THE SOFTWARE.
22
+
23
+ require_relative 'middleware'
24
+
25
+ module Utopia
26
+ class Responder
27
+ Handler = Struct.new(:content_type, :block) do
28
+ def split(*arguments)
29
+ self.content_type.split(*arguments)
30
+ end
31
+
32
+ def call(context, request, media_range, *arguments, **options)
33
+ context.instance_exec(media_range, *arguments, **options, &self.block)
34
+ end
35
+ end
36
+
37
+ Responds = Struct.new(:responder, :context, :request) do
38
+ # @todo Refactor `object` -> `*arguments`...
39
+ def with(object, **options)
40
+ responder.call(context, request, object, **options)
41
+ end
42
+ end
43
+
44
+ def initialize
45
+ @handlers = HTTP::Accept::MediaTypes::Map.new
46
+ end
47
+
48
+ attr :handlers
49
+
50
+ def freeze
51
+ @handlers.freeze
52
+
53
+ super
54
+ end
55
+
56
+ def call(context, request, *arguments, **options)
57
+ # Parse the list of browser preferred content types and return ordered by priority:
58
+ media_types = HTTP::Accept::MediaTypes.browser_preferred_media_types(request.env)
59
+
60
+ handler, media_range = @handlers.for(media_types)
61
+
62
+ if handler
63
+ handler.call(context, request, media_range, *arguments, **options)
64
+ end
65
+ end
66
+
67
+ # Add a converter for the specified content type. Call the block with the response content if the request accepts the specified content_type.
68
+ def handle(content_type, &block)
69
+ @handlers << Handler.new(content_type, block)
70
+ end
71
+
72
+ def respond_to(context, request)
73
+ Responds.new(self, context, request)
74
+ end
75
+ end
76
+ end
@@ -21,5 +21,5 @@
21
21
  # THE SOFTWARE.
22
22
 
23
23
  module Utopia
24
- VERSION = "2.14.0"
24
+ VERSION = "2.16.2"
25
25
  end
@@ -1,14 +1,15 @@
1
1
  # Development specific:
2
- .rspec_status
3
- .tags*
4
- .bundle
5
- bin/
2
+ /.rspec_status
3
+ /.bundle
6
4
 
7
5
  # Temporary data should not be added to the repository:
8
- tmp/
6
+ /tmp
7
+
8
+ # Node modules are 3rd party dependencies which can be fetched easily:
9
+ /node_modules
9
10
 
10
11
  # This file should only ever exist on production, and may contain sensitive information:
11
- config/environment.yaml
12
+ /config/environment.yaml
12
13
 
13
14
  # Ignore resized gallery photos:
14
- public/_gallery/
15
+ /public/_gallery
metadata CHANGED
@@ -1,99 +1,99 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: utopia
3
3
  version: !ruby/object:Gem::Version
4
- version: 2.14.0
4
+ version: 2.16.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - Samuel Williams
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2020-04-28 00:00:00.000000000 Z
11
+ date: 2020-05-31 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
- name: trenni
14
+ name: concurrent-ruby
15
15
  requirement: !ruby/object:Gem::Requirement
16
16
  requirements:
17
17
  - - "~>"
18
18
  - !ruby/object:Gem::Version
19
- version: '3.0'
19
+ version: '1.0'
20
20
  type: :runtime
21
21
  prerelease: false
22
22
  version_requirements: !ruby/object:Gem::Requirement
23
23
  requirements:
24
24
  - - "~>"
25
25
  - !ruby/object:Gem::Version
26
- version: '3.0'
26
+ version: '1.0'
27
27
  - !ruby/object:Gem::Dependency
28
- name: mime-types
28
+ name: console
29
29
  requirement: !ruby/object:Gem::Requirement
30
30
  requirements:
31
31
  - - "~>"
32
32
  - !ruby/object:Gem::Version
33
- version: '3.0'
33
+ version: '1.0'
34
34
  type: :runtime
35
35
  prerelease: false
36
36
  version_requirements: !ruby/object:Gem::Requirement
37
37
  requirements:
38
38
  - - "~>"
39
39
  - !ruby/object:Gem::Version
40
- version: '3.0'
40
+ version: '1.0'
41
41
  - !ruby/object:Gem::Dependency
42
- name: msgpack
42
+ name: http-accept
43
43
  requirement: !ruby/object:Gem::Requirement
44
44
  requirements:
45
- - - ">="
45
+ - - "~>"
46
46
  - !ruby/object:Gem::Version
47
- version: '0'
47
+ version: '2.1'
48
48
  type: :runtime
49
49
  prerelease: false
50
50
  version_requirements: !ruby/object:Gem::Requirement
51
51
  requirements:
52
- - - ">="
52
+ - - "~>"
53
53
  - !ruby/object:Gem::Version
54
- version: '0'
54
+ version: '2.1'
55
55
  - !ruby/object:Gem::Dependency
56
- name: samovar
56
+ name: mail
57
57
  requirement: !ruby/object:Gem::Requirement
58
58
  requirements:
59
59
  - - "~>"
60
60
  - !ruby/object:Gem::Version
61
- version: '2.1'
61
+ version: '2.6'
62
62
  type: :runtime
63
63
  prerelease: false
64
64
  version_requirements: !ruby/object:Gem::Requirement
65
65
  requirements:
66
66
  - - "~>"
67
67
  - !ruby/object:Gem::Version
68
- version: '2.1'
68
+ version: '2.6'
69
69
  - !ruby/object:Gem::Dependency
70
- name: console
70
+ name: mime-types
71
71
  requirement: !ruby/object:Gem::Requirement
72
72
  requirements:
73
73
  - - "~>"
74
74
  - !ruby/object:Gem::Version
75
- version: '1.0'
75
+ version: '3.0'
76
76
  type: :runtime
77
77
  prerelease: false
78
78
  version_requirements: !ruby/object:Gem::Requirement
79
79
  requirements:
80
80
  - - "~>"
81
81
  - !ruby/object:Gem::Version
82
- version: '1.0'
82
+ version: '3.0'
83
83
  - !ruby/object:Gem::Dependency
84
- name: variant
84
+ name: msgpack
85
85
  requirement: !ruby/object:Gem::Requirement
86
86
  requirements:
87
- - - "~>"
87
+ - - ">="
88
88
  - !ruby/object:Gem::Version
89
- version: '0.1'
89
+ version: '0'
90
90
  type: :runtime
91
91
  prerelease: false
92
92
  version_requirements: !ruby/object:Gem::Requirement
93
93
  requirements:
94
- - - "~>"
94
+ - - ">="
95
95
  - !ruby/object:Gem::Version
96
- version: '0.1'
96
+ version: '0'
97
97
  - !ruby/object:Gem::Dependency
98
98
  name: rack
99
99
  requirement: !ruby/object:Gem::Requirement
@@ -109,7 +109,7 @@ dependencies:
109
109
  - !ruby/object:Gem::Version
110
110
  version: '2.2'
111
111
  - !ruby/object:Gem::Dependency
112
- name: http-accept
112
+ name: samovar
113
113
  requirement: !ruby/object:Gem::Requirement
114
114
  requirements:
115
115
  - - "~>"
@@ -123,33 +123,61 @@ dependencies:
123
123
  - !ruby/object:Gem::Version
124
124
  version: '2.1'
125
125
  - !ruby/object:Gem::Dependency
126
- name: mail
126
+ name: trenni
127
127
  requirement: !ruby/object:Gem::Requirement
128
128
  requirements:
129
129
  - - "~>"
130
130
  - !ruby/object:Gem::Version
131
- version: '2.6'
131
+ version: '3.0'
132
132
  type: :runtime
133
133
  prerelease: false
134
134
  version_requirements: !ruby/object:Gem::Requirement
135
135
  requirements:
136
136
  - - "~>"
137
137
  - !ruby/object:Gem::Version
138
- version: '2.6'
138
+ version: '3.0'
139
139
  - !ruby/object:Gem::Dependency
140
- name: concurrent-ruby
140
+ name: variant
141
141
  requirement: !ruby/object:Gem::Requirement
142
142
  requirements:
143
143
  - - "~>"
144
144
  - !ruby/object:Gem::Version
145
- version: '1.0'
145
+ version: '0.1'
146
146
  type: :runtime
147
147
  prerelease: false
148
148
  version_requirements: !ruby/object:Gem::Requirement
149
149
  requirements:
150
150
  - - "~>"
151
151
  - !ruby/object:Gem::Version
152
- version: '1.0'
152
+ version: '0.1'
153
+ - !ruby/object:Gem::Dependency
154
+ name: async-rspec
155
+ requirement: !ruby/object:Gem::Requirement
156
+ requirements:
157
+ - - ">="
158
+ - !ruby/object:Gem::Version
159
+ version: '0'
160
+ type: :development
161
+ prerelease: false
162
+ version_requirements: !ruby/object:Gem::Requirement
163
+ requirements:
164
+ - - ">="
165
+ - !ruby/object:Gem::Version
166
+ version: '0'
167
+ - !ruby/object:Gem::Dependency
168
+ name: async-websocket
169
+ requirement: !ruby/object:Gem::Requirement
170
+ requirements:
171
+ - - ">="
172
+ - !ruby/object:Gem::Version
173
+ version: '0'
174
+ type: :development
175
+ prerelease: false
176
+ version_requirements: !ruby/object:Gem::Requirement
177
+ requirements:
178
+ - - ">="
179
+ - !ruby/object:Gem::Version
180
+ version: '0'
153
181
  - !ruby/object:Gem::Dependency
154
182
  name: bake
155
183
  requirement: !ruby/object:Gem::Requirement
@@ -165,7 +193,7 @@ dependencies:
165
193
  - !ruby/object:Gem::Version
166
194
  version: '0'
167
195
  - !ruby/object:Gem::Dependency
168
- name: falcon
196
+ name: bake-bundler
169
197
  requirement: !ruby/object:Gem::Requirement
170
198
  requirements:
171
199
  - - ">="
@@ -179,7 +207,7 @@ dependencies:
179
207
  - !ruby/object:Gem::Version
180
208
  version: '0'
181
209
  - !ruby/object:Gem::Dependency
182
- name: async-rspec
210
+ name: bake-modernize
183
211
  requirement: !ruby/object:Gem::Requirement
184
212
  requirements:
185
213
  - - ">="
@@ -193,7 +221,7 @@ dependencies:
193
221
  - !ruby/object:Gem::Version
194
222
  version: '0'
195
223
  - !ruby/object:Gem::Dependency
196
- name: async-websocket
224
+ name: bundler
197
225
  requirement: !ruby/object:Gem::Requirement
198
226
  requirements:
199
227
  - - ">="
@@ -221,7 +249,7 @@ dependencies:
221
249
  - !ruby/object:Gem::Version
222
250
  version: '0'
223
251
  - !ruby/object:Gem::Dependency
224
- name: bundler
252
+ name: falcon
225
253
  requirement: !ruby/object:Gem::Requirement
226
254
  requirements:
227
255
  - - ">="
@@ -249,7 +277,7 @@ dependencies:
249
277
  - !ruby/object:Gem::Version
250
278
  version: '3.6'
251
279
  - !ruby/object:Gem::Dependency
252
- name: bake-bundler
280
+ name: utopia-project
253
281
  requirement: !ruby/object:Gem::Requirement
254
282
  requirements:
255
283
  - - ">="
@@ -262,127 +290,19 @@ dependencies:
262
290
  - - ">="
263
291
  - !ruby/object:Gem::Version
264
292
  version: '0'
265
- description: "\t\tUtopia is a website generation framework which provides a robust
266
- set of tools\n\t\tto build highly complex dynamic websites. It uses the filesystem
267
- heavily for\n\t\tcontent and provides frameworks for interacting with files and
268
- directories as\n\t\tstructure representing the website.\n"
269
- email:
270
- - samuel.williams@oriontransfer.co.nz
293
+ description:
294
+ email:
271
295
  executables:
272
296
  - utopia
273
297
  extensions: []
274
298
  extra_rdoc_files: []
275
299
  files:
276
- - ".codeclimate.yml"
277
- - ".github/workflows/development.yml"
278
- - ".gitignore"
279
- - ".rspec"
280
- - ".yardopts"
281
- - Gemfile
282
- - README.md
283
300
  - bake/utopia.rb
301
+ - bake/utopia/node.rb
284
302
  - bake/utopia/shell.rb
285
303
  - bake/utopia/static.rb
286
304
  - bake/utopia/test.rb
287
- - bake/utopia/yarn.rb
288
- - benchmark/call_vs_check.rb
289
- - benchmark/const_vs_hash.rb
290
- - benchmark/hash_vs_openstruct.rb
291
- - benchmark/string_vs_symbol.rb
292
- - benchmark/struct_vs_class.rb
293
305
  - bin/utopia
294
- - docs/.nojekyll
295
- - docs/_components/jquery-litebox/jquery.litebox.css
296
- - docs/_components/jquery-litebox/jquery.litebox.gallery.css
297
- - docs/_components/jquery-litebox/jquery.litebox.js
298
- - docs/_components/jquery-syntax/base/jquery.syntax.brush.apache.css
299
- - docs/_components/jquery-syntax/base/jquery.syntax.brush.applescript.css
300
- - docs/_components/jquery-syntax/base/jquery.syntax.brush.assembly.css
301
- - docs/_components/jquery-syntax/base/jquery.syntax.brush.bash-script.css
302
- - docs/_components/jquery-syntax/base/jquery.syntax.brush.bash.css
303
- - docs/_components/jquery-syntax/base/jquery.syntax.brush.clang.css
304
- - docs/_components/jquery-syntax/base/jquery.syntax.brush.css.css
305
- - docs/_components/jquery-syntax/base/jquery.syntax.brush.diff.css
306
- - docs/_components/jquery-syntax/base/jquery.syntax.brush.html.css
307
- - docs/_components/jquery-syntax/base/jquery.syntax.brush.ocaml.css
308
- - docs/_components/jquery-syntax/base/jquery.syntax.brush.protobuf.css
309
- - docs/_components/jquery-syntax/base/jquery.syntax.brush.python.css
310
- - docs/_components/jquery-syntax/base/jquery.syntax.brush.ruby.css
311
- - docs/_components/jquery-syntax/base/jquery.syntax.brush.xml.css
312
- - docs/_components/jquery-syntax/base/jquery.syntax.core.css
313
- - docs/_components/jquery-syntax/base/jquery.syntax.editor.css
314
- - docs/_components/jquery-syntax/base/theme.js
315
- - docs/_components/jquery-syntax/bright/jquery.syntax.core.css
316
- - docs/_components/jquery-syntax/bright/theme.js
317
- - docs/_components/jquery-syntax/jquery.syntax.brush.apache.js
318
- - docs/_components/jquery-syntax/jquery.syntax.brush.applescript.js
319
- - docs/_components/jquery-syntax/jquery.syntax.brush.assembly.js
320
- - docs/_components/jquery-syntax/jquery.syntax.brush.bash-script.js
321
- - docs/_components/jquery-syntax/jquery.syntax.brush.bash.js
322
- - docs/_components/jquery-syntax/jquery.syntax.brush.basic.js
323
- - docs/_components/jquery-syntax/jquery.syntax.brush.clang.js
324
- - docs/_components/jquery-syntax/jquery.syntax.brush.csharp.js
325
- - docs/_components/jquery-syntax/jquery.syntax.brush.css.js
326
- - docs/_components/jquery-syntax/jquery.syntax.brush.diff.js
327
- - docs/_components/jquery-syntax/jquery.syntax.brush.go.js
328
- - docs/_components/jquery-syntax/jquery.syntax.brush.haskell.js
329
- - docs/_components/jquery-syntax/jquery.syntax.brush.html.js
330
- - docs/_components/jquery-syntax/jquery.syntax.brush.io.js
331
- - docs/_components/jquery-syntax/jquery.syntax.brush.java.js
332
- - docs/_components/jquery-syntax/jquery.syntax.brush.javascript.js
333
- - docs/_components/jquery-syntax/jquery.syntax.brush.kai.js
334
- - docs/_components/jquery-syntax/jquery.syntax.brush.lisp.js
335
- - docs/_components/jquery-syntax/jquery.syntax.brush.lua.js
336
- - docs/_components/jquery-syntax/jquery.syntax.brush.nginx.js
337
- - docs/_components/jquery-syntax/jquery.syntax.brush.ocaml.js
338
- - docs/_components/jquery-syntax/jquery.syntax.brush.ooc.js
339
- - docs/_components/jquery-syntax/jquery.syntax.brush.pascal.js
340
- - docs/_components/jquery-syntax/jquery.syntax.brush.perl5.js
341
- - docs/_components/jquery-syntax/jquery.syntax.brush.php-script.js
342
- - docs/_components/jquery-syntax/jquery.syntax.brush.php.js
343
- - docs/_components/jquery-syntax/jquery.syntax.brush.plain.js
344
- - docs/_components/jquery-syntax/jquery.syntax.brush.protobuf.js
345
- - docs/_components/jquery-syntax/jquery.syntax.brush.python.js
346
- - docs/_components/jquery-syntax/jquery.syntax.brush.ruby.js
347
- - docs/_components/jquery-syntax/jquery.syntax.brush.scala.js
348
- - docs/_components/jquery-syntax/jquery.syntax.brush.smalltalk.js
349
- - docs/_components/jquery-syntax/jquery.syntax.brush.sql.js
350
- - docs/_components/jquery-syntax/jquery.syntax.brush.super-collider.js
351
- - docs/_components/jquery-syntax/jquery.syntax.brush.swift.js
352
- - docs/_components/jquery-syntax/jquery.syntax.brush.trenni.js
353
- - docs/_components/jquery-syntax/jquery.syntax.brush.xml.js
354
- - docs/_components/jquery-syntax/jquery.syntax.brush.yaml.js
355
- - docs/_components/jquery-syntax/jquery.syntax.cache.js
356
- - docs/_components/jquery-syntax/jquery.syntax.core.js
357
- - docs/_components/jquery-syntax/jquery.syntax.editor.js
358
- - docs/_components/jquery-syntax/jquery.syntax.js
359
- - docs/_components/jquery-syntax/jquery.syntax.min.js
360
- - docs/_components/jquery-syntax/paper/jquery.syntax.core.css
361
- - docs/_components/jquery-syntax/paper/theme.js
362
- - docs/_components/jquery/jquery.js
363
- - docs/_components/jquery/jquery.min.js
364
- - docs/_components/jquery/jquery.min.map
365
- - docs/_components/jquery/jquery.slim.js
366
- - docs/_components/jquery/jquery.slim.min.js
367
- - docs/_components/jquery/jquery.slim.min.map
368
- - docs/_static/icon.png
369
- - docs/_static/site.css
370
- - docs/development-environment-setup/index.html
371
- - docs/faq/what-is-xnode/index.html
372
- - docs/index.html
373
- - docs/javascript/index.html
374
- - docs/middleware/content/index.html
375
- - docs/middleware/controller/actions/index.html
376
- - docs/middleware/controller/index.html
377
- - docs/middleware/controller/rewrite/index.html
378
- - docs/middleware/localization/index.html
379
- - docs/middleware/redirection/index.html
380
- - docs/middleware/session/index.html
381
- - docs/middleware/static/index.html
382
- - docs/server-setup/index.html
383
- - docs/testing/index.html
384
- - docs/updating-utopia/index.html
385
- - docs/your-first-page/index.html
386
306
  - lib/utopia.rb
387
307
  - lib/utopia/command.rb
388
308
  - lib/utopia/command/environment.rb
@@ -417,6 +337,7 @@ files:
417
337
  - lib/utopia/path.rb
418
338
  - lib/utopia/path/matcher.rb
419
339
  - lib/utopia/redirection.rb
340
+ - lib/utopia/responder.rb
420
341
  - lib/utopia/session.rb
421
342
  - lib/utopia/session/lazy_hash.rb
422
343
  - lib/utopia/session/serialization.rb
@@ -426,12 +347,9 @@ files:
426
347
  - lib/utopia/static/local_file.rb
427
348
  - lib/utopia/static/mime_types.rb
428
349
  - lib/utopia/version.rb
429
- - materials/utopia.png
430
- - materials/utopia.svg
431
350
  - setup/server/git/hooks/post-receive
432
351
  - setup/site/.gitignore
433
352
  - setup/site/.rspec
434
- - setup/site/.yarnrc
435
353
  - setup/site/Gemfile
436
354
  - setup/site/Guardfile
437
355
  - setup/site/README.md
@@ -455,144 +373,11 @@ files:
455
373
  - setup/site/spec/spec_helper.rb
456
374
  - setup/site/spec/website_context.rb
457
375
  - setup/site/spec/website_spec.rb
458
- - spec/mock_node.rb
459
- - spec/spec_helper.rb
460
- - spec/utopia/command_spec.rb
461
- - spec/utopia/content/document_spec.rb
462
- - spec/utopia/content/links/bar/index.xnode
463
- - spec/utopia/content/links/bar/parent/child/index.en.xnode
464
- - spec/utopia/content/links/bar/parent/child/index.ja.xnode
465
- - spec/utopia/content/links/bar/parent/links.yaml
466
- - spec/utopia/content/links/foo/index.xnode
467
- - spec/utopia/content/links/foo/links.yaml
468
- - spec/utopia/content/links/foo/test.de.xnode
469
- - spec/utopia/content/links/foo/test.en.xnode
470
- - spec/utopia/content/links/index.xnode
471
- - spec/utopia/content/links/links.yaml
472
- - spec/utopia/content/links/redirect/links.yaml
473
- - spec/utopia/content/links/welcome.xnode
474
- - spec/utopia/content/links_spec.rb
475
- - spec/utopia/content/localized/five/index.en.xnode
476
- - spec/utopia/content/localized/four/index.en.xnode
477
- - spec/utopia/content/localized/four/index.zh.xnode
478
- - spec/utopia/content/localized/four/links.yaml
479
- - spec/utopia/content/localized/links.yaml
480
- - spec/utopia/content/localized/one.xnode
481
- - spec/utopia/content/localized/three/index.xnode
482
- - spec/utopia/content/localized/two.en.xnode
483
- - spec/utopia/content/localized/two.zh.xnode
484
- - spec/utopia/content/markup_spec.rb
485
- - spec/utopia/content/namespace_spec.rb
486
- - spec/utopia/content/node/lookup/content.xnode
487
- - spec/utopia/content/node/lookup/index.xnode
488
- - spec/utopia/content/node/ordered/first.xnode
489
- - spec/utopia/content/node/ordered/index.xnode
490
- - spec/utopia/content/node/ordered/links.yaml
491
- - spec/utopia/content/node/ordered/second.xnode
492
- - spec/utopia/content/node/related/foo.en.xnode
493
- - spec/utopia/content/node/related/foo.ja.xnode
494
- - spec/utopia/content/node/related/links.yaml
495
- - spec/utopia/content/node_spec.rb
496
- - spec/utopia/content/response_spec.rb
497
- - spec/utopia/content/tags_spec.rb
498
- - spec/utopia/content_spec.rb
499
- - spec/utopia/content_spec.ru
500
- - spec/utopia/content_spec/_heading.xnode
501
- - spec/utopia/content_spec/content/_show-value.xnode
502
- - spec/utopia/content_spec/content/links.yaml
503
- - spec/utopia/content_spec/content/test-partial.xnode
504
- - spec/utopia/content_spec/index.xnode
505
- - spec/utopia/content_spec/node/index.xnode
506
- - spec/utopia/content_spec/test.xnode
507
- - spec/utopia/controller/actions_spec.rb
508
- - spec/utopia/controller/middleware_spec.rb
509
- - spec/utopia/controller/middleware_spec.ru
510
- - spec/utopia/controller/middleware_spec/controller/controller.rb
511
- - spec/utopia/controller/middleware_spec/controller/index.xnode
512
- - spec/utopia/controller/middleware_spec/controller/nested/controller.rb
513
- - spec/utopia/controller/middleware_spec/empty/controller.rb
514
- - spec/utopia/controller/middleware_spec/redirect/controller.rb
515
- - spec/utopia/controller/middleware_spec/redirect/test/controller.rb
516
- - spec/utopia/controller/respond_spec.rb
517
- - spec/utopia/controller/respond_spec.ru
518
- - spec/utopia/controller/respond_spec/api/controller.rb
519
- - spec/utopia/controller/respond_spec/errors/controller.rb
520
- - spec/utopia/controller/respond_spec/errors/file-not-found.xnode
521
- - spec/utopia/controller/respond_spec/html/controller.rb
522
- - spec/utopia/controller/respond_spec/rewrite/controller.rb
523
- - spec/utopia/controller/rewrite_spec.rb
524
- - spec/utopia/controller/sequence_spec.rb
525
- - spec/utopia/controller/variables_spec.rb
526
- - spec/utopia/controller/websocket_spec.rb
527
- - spec/utopia/controller/websocket_spec.ru
528
- - spec/utopia/controller/websocket_spec/server/controller.rb
529
- - spec/utopia/exceptions/handler_spec.rb
530
- - spec/utopia/exceptions/handler_spec.ru
531
- - spec/utopia/exceptions/handler_spec/controller.rb
532
- - spec/utopia/exceptions/mailer_spec.rb
533
- - spec/utopia/exceptions/mailer_spec.ru
534
- - spec/utopia/extensions_spec.rb
535
- - spec/utopia/http/status_spec.rb
536
- - spec/utopia/locale_spec.rb
537
- - spec/utopia/localization_spec.rb
538
- - spec/utopia/localization_spec.ru
539
- - spec/utopia/localization_spec/controller.rb
540
- - spec/utopia/localization_spec/localized.de.txt
541
- - spec/utopia/localization_spec/localized.en.txt
542
- - spec/utopia/localization_spec/localized.ja.txt
543
- - spec/utopia/localization_spec/test.txt
544
- - spec/utopia/middleware_spec.rb
545
- - spec/utopia/path/matcher_spec.rb
546
- - spec/utopia/path_spec.rb
547
- - spec/utopia/performance_spec.rb
548
- - spec/utopia/performance_spec/cache/head/readme.txt
549
- - spec/utopia/performance_spec/cache/meta/readme.txt
550
- - spec/utopia/performance_spec/config.ru
551
- - spec/utopia/performance_spec/lib/readme.txt
552
- - spec/utopia/performance_spec/pages/_heading.xnode
553
- - spec/utopia/performance_spec/pages/_page.xnode
554
- - spec/utopia/performance_spec/pages/api/controller.rb
555
- - spec/utopia/performance_spec/pages/errors/exception.xnode
556
- - spec/utopia/performance_spec/pages/errors/file-not-found.xnode
557
- - spec/utopia/performance_spec/pages/links.yaml
558
- - spec/utopia/performance_spec/pages/welcome/index.xnode
559
- - spec/utopia/rack_helper.rb
560
- - spec/utopia/redirection_spec.rb
561
- - spec/utopia/redirection_spec.ru
562
- - spec/utopia/session_spec.rb
563
- - spec/utopia/session_spec.ru
564
- - spec/utopia/setup_spec.rb
565
- - spec/utopia/static_spec.rb
566
- - spec/utopia/static_spec.ru
567
- - spec/utopia/static_spec/test.txt
568
- - utopia.gemspec
569
- - wiki/Gemfile
570
- - wiki/config.ru
571
- - wiki/pages/development-environment-setup/index.md
572
- - wiki/pages/faq/links.yaml
573
- - wiki/pages/faq/what-is-xnode/index.md
574
- - wiki/pages/faq/what-is-xnode/links.yaml
575
- - wiki/pages/index.md
576
- - wiki/pages/javascript/index.md
577
- - wiki/pages/javascript/links.yaml
578
- - wiki/pages/links.yaml
579
- - wiki/pages/middleware/content/index.md
580
- - wiki/pages/middleware/controller/actions/index.md
581
- - wiki/pages/middleware/controller/index.md
582
- - wiki/pages/middleware/controller/links.yaml
583
- - wiki/pages/middleware/controller/rewrite/index.md
584
- - wiki/pages/middleware/localization/index.md
585
- - wiki/pages/middleware/redirection/index.md
586
- - wiki/pages/middleware/session/index.md
587
- - wiki/pages/middleware/static/index.md
588
- - wiki/pages/server-setup/index.md
589
- - wiki/pages/testing/index.md
590
- - wiki/pages/updating-utopia/index.md
591
- - wiki/pages/your-first-page/index.md
592
376
  homepage: https://github.com/ioquatix/utopia
593
377
  licenses:
594
378
  - MIT
595
- metadata: {}
379
+ metadata:
380
+ funding_uri: https://github.com/sponsors/ioquatix/
596
381
  post_install_message:
597
382
  rdoc_options: []
598
383
  require_paths:
@@ -612,114 +397,4 @@ rubygems_version: 3.1.2
612
397
  signing_key:
613
398
  specification_version: 4
614
399
  summary: Utopia is a framework for building dynamic content-driven websites.
615
- test_files:
616
- - spec/mock_node.rb
617
- - spec/spec_helper.rb
618
- - spec/utopia/command_spec.rb
619
- - spec/utopia/content/document_spec.rb
620
- - spec/utopia/content/links/bar/index.xnode
621
- - spec/utopia/content/links/bar/parent/child/index.en.xnode
622
- - spec/utopia/content/links/bar/parent/child/index.ja.xnode
623
- - spec/utopia/content/links/bar/parent/links.yaml
624
- - spec/utopia/content/links/foo/index.xnode
625
- - spec/utopia/content/links/foo/links.yaml
626
- - spec/utopia/content/links/foo/test.de.xnode
627
- - spec/utopia/content/links/foo/test.en.xnode
628
- - spec/utopia/content/links/index.xnode
629
- - spec/utopia/content/links/links.yaml
630
- - spec/utopia/content/links/redirect/links.yaml
631
- - spec/utopia/content/links/welcome.xnode
632
- - spec/utopia/content/links_spec.rb
633
- - spec/utopia/content/localized/five/index.en.xnode
634
- - spec/utopia/content/localized/four/index.en.xnode
635
- - spec/utopia/content/localized/four/index.zh.xnode
636
- - spec/utopia/content/localized/four/links.yaml
637
- - spec/utopia/content/localized/links.yaml
638
- - spec/utopia/content/localized/one.xnode
639
- - spec/utopia/content/localized/three/index.xnode
640
- - spec/utopia/content/localized/two.en.xnode
641
- - spec/utopia/content/localized/two.zh.xnode
642
- - spec/utopia/content/markup_spec.rb
643
- - spec/utopia/content/namespace_spec.rb
644
- - spec/utopia/content/node/lookup/content.xnode
645
- - spec/utopia/content/node/lookup/index.xnode
646
- - spec/utopia/content/node/ordered/first.xnode
647
- - spec/utopia/content/node/ordered/index.xnode
648
- - spec/utopia/content/node/ordered/links.yaml
649
- - spec/utopia/content/node/ordered/second.xnode
650
- - spec/utopia/content/node/related/foo.en.xnode
651
- - spec/utopia/content/node/related/foo.ja.xnode
652
- - spec/utopia/content/node/related/links.yaml
653
- - spec/utopia/content/node_spec.rb
654
- - spec/utopia/content/response_spec.rb
655
- - spec/utopia/content/tags_spec.rb
656
- - spec/utopia/content_spec.rb
657
- - spec/utopia/content_spec.ru
658
- - spec/utopia/content_spec/_heading.xnode
659
- - spec/utopia/content_spec/content/_show-value.xnode
660
- - spec/utopia/content_spec/content/links.yaml
661
- - spec/utopia/content_spec/content/test-partial.xnode
662
- - spec/utopia/content_spec/index.xnode
663
- - spec/utopia/content_spec/node/index.xnode
664
- - spec/utopia/content_spec/test.xnode
665
- - spec/utopia/controller/actions_spec.rb
666
- - spec/utopia/controller/middleware_spec.rb
667
- - spec/utopia/controller/middleware_spec.ru
668
- - spec/utopia/controller/middleware_spec/controller/controller.rb
669
- - spec/utopia/controller/middleware_spec/controller/index.xnode
670
- - spec/utopia/controller/middleware_spec/controller/nested/controller.rb
671
- - spec/utopia/controller/middleware_spec/empty/controller.rb
672
- - spec/utopia/controller/middleware_spec/redirect/controller.rb
673
- - spec/utopia/controller/middleware_spec/redirect/test/controller.rb
674
- - spec/utopia/controller/respond_spec.rb
675
- - spec/utopia/controller/respond_spec.ru
676
- - spec/utopia/controller/respond_spec/api/controller.rb
677
- - spec/utopia/controller/respond_spec/errors/controller.rb
678
- - spec/utopia/controller/respond_spec/errors/file-not-found.xnode
679
- - spec/utopia/controller/respond_spec/html/controller.rb
680
- - spec/utopia/controller/respond_spec/rewrite/controller.rb
681
- - spec/utopia/controller/rewrite_spec.rb
682
- - spec/utopia/controller/sequence_spec.rb
683
- - spec/utopia/controller/variables_spec.rb
684
- - spec/utopia/controller/websocket_spec.rb
685
- - spec/utopia/controller/websocket_spec.ru
686
- - spec/utopia/controller/websocket_spec/server/controller.rb
687
- - spec/utopia/exceptions/handler_spec.rb
688
- - spec/utopia/exceptions/handler_spec.ru
689
- - spec/utopia/exceptions/handler_spec/controller.rb
690
- - spec/utopia/exceptions/mailer_spec.rb
691
- - spec/utopia/exceptions/mailer_spec.ru
692
- - spec/utopia/extensions_spec.rb
693
- - spec/utopia/http/status_spec.rb
694
- - spec/utopia/locale_spec.rb
695
- - spec/utopia/localization_spec.rb
696
- - spec/utopia/localization_spec.ru
697
- - spec/utopia/localization_spec/controller.rb
698
- - spec/utopia/localization_spec/localized.de.txt
699
- - spec/utopia/localization_spec/localized.en.txt
700
- - spec/utopia/localization_spec/localized.ja.txt
701
- - spec/utopia/localization_spec/test.txt
702
- - spec/utopia/middleware_spec.rb
703
- - spec/utopia/path/matcher_spec.rb
704
- - spec/utopia/path_spec.rb
705
- - spec/utopia/performance_spec.rb
706
- - spec/utopia/performance_spec/cache/head/readme.txt
707
- - spec/utopia/performance_spec/cache/meta/readme.txt
708
- - spec/utopia/performance_spec/config.ru
709
- - spec/utopia/performance_spec/lib/readme.txt
710
- - spec/utopia/performance_spec/pages/_heading.xnode
711
- - spec/utopia/performance_spec/pages/_page.xnode
712
- - spec/utopia/performance_spec/pages/api/controller.rb
713
- - spec/utopia/performance_spec/pages/errors/exception.xnode
714
- - spec/utopia/performance_spec/pages/errors/file-not-found.xnode
715
- - spec/utopia/performance_spec/pages/links.yaml
716
- - spec/utopia/performance_spec/pages/welcome/index.xnode
717
- - spec/utopia/rack_helper.rb
718
- - spec/utopia/redirection_spec.rb
719
- - spec/utopia/redirection_spec.ru
720
- - spec/utopia/session_spec.rb
721
- - spec/utopia/session_spec.ru
722
- - spec/utopia/setup_spec.rb
723
- - spec/utopia/static_spec.rb
724
- - spec/utopia/static_spec.ru
725
- - spec/utopia/static_spec/test.txt
400
+ test_files: []