utopia 2.22.2 → 2.24.1
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- checksums.yaml.gz.sig +0 -0
- data/bake/utopia/environment.rb +7 -7
- data/bake/utopia/server.rb +1 -1
- data/bake/utopia/site.rb +8 -7
- data/bake/utopia.rb +0 -2
- data/lib/utopia/content/document.rb +4 -4
- data/lib/utopia/content/link.rb +5 -5
- data/lib/utopia/content/markup.rb +12 -12
- data/lib/utopia/content.rb +5 -5
- data/lib/utopia/controller/actions.rb +1 -1
- data/lib/utopia/extensions/array_split.rb +1 -1
- data/lib/utopia/redirection.rb +1 -1
- data/lib/utopia/session.rb +2 -2
- data/lib/utopia/setup.rb +4 -4
- data/lib/utopia/static.rb +2 -2
- data/lib/utopia/version.rb +2 -2
- data/license.md +1 -1
- data/readme.md +20 -13
- data/setup/site/config/sus.rb +1 -1
- data/setup/site/test/website.rb +1 -1
- data.tar.gz.sig +0 -0
- metadata +15 -113
- metadata.gz.sig +0 -0
- data/lib/utopia/logger.rb +0 -10
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 4c7a31bf77a1bfba37a316efca2a38c74c6510c0e8c17ae3910f8f73d84d4d42
|
4
|
+
data.tar.gz: c8c0ae33ddd859d74c7fc042b411d9fc8f1a020e95f2f9323ecbc4f0ef9f128c
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 86b4bf623121f80d16c998fa19f575d2e25990ea3b15acb0cbc17370b76af78a91dfc1cc00272641b78371a72e2ad4d88799e3afd674740b80da3292bcaa2b1f
|
7
|
+
data.tar.gz: 7ec2321f0fed9e13f7f6aa5bd8432e851414de646477fdb3bbafe7145b4acd8a9413d2494eb474438d1379f31f08c24d8ca5ff25ce400cfe1d86258376a217ce
|
checksums.yaml.gz.sig
CHANGED
Binary file
|
data/bake/utopia/environment.rb
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
# frozen_string_literal: true
|
2
2
|
|
3
3
|
# Released under the MIT License.
|
4
|
-
# Copyright, 2018-
|
4
|
+
# Copyright, 2018-2023, by Samuel Williams.
|
5
5
|
|
6
6
|
# Update environment variables in config/environment.yaml
|
7
7
|
def initialize(...)
|
@@ -24,7 +24,7 @@ end
|
|
24
24
|
# @parameter root [String] The root directory of the project.
|
25
25
|
def defaults(name, root: context.root)
|
26
26
|
update_environment(root, name) do |store|
|
27
|
-
Console.
|
27
|
+
Console.info(self) {"Setting up defaults for environment #{name}..."}
|
28
28
|
# Set some useful defaults for the environment.
|
29
29
|
store['UTOPIA_SESSION_SECRET'] ||= SecureRandom.hex(40)
|
30
30
|
end
|
@@ -40,17 +40,17 @@ def update(name, root: context.root, **variables)
|
|
40
40
|
key = key.to_s
|
41
41
|
|
42
42
|
if value && !value.empty?
|
43
|
-
Console.
|
43
|
+
Console.info(self) {"ENV[#{key.inspect}] will default to #{value.inspect} unless otherwise specified."}
|
44
44
|
store[key] = value
|
45
45
|
else
|
46
|
-
Console.
|
46
|
+
Console.info(self) {"ENV[#{key.inspect}] will be unset unless otherwise specified."}
|
47
47
|
store.delete(key)
|
48
48
|
end
|
49
49
|
end
|
50
50
|
|
51
51
|
yield store if block_given?
|
52
52
|
|
53
|
-
Console.
|
53
|
+
Console.info(self) do |buffer|
|
54
54
|
buffer.puts "Environment #{name} (#{path}):"
|
55
55
|
store.roots.each do |key|
|
56
56
|
value = store[key]
|
@@ -65,10 +65,10 @@ def read(name, root: context.root)
|
|
65
65
|
environment_path = self.environment_path(root, name)
|
66
66
|
|
67
67
|
if File.exist?(environment_path)
|
68
|
-
Console.
|
68
|
+
Console.debug(self) {"Loading environment #{name} from #{environment_path}..."}
|
69
69
|
YAML.load_file(environment_path)
|
70
70
|
else
|
71
|
-
Console.
|
71
|
+
Console.debug(self) {"No environment #{name} found at #{environment_path}."}
|
72
72
|
{}
|
73
73
|
end
|
74
74
|
end
|
data/bake/utopia/server.rb
CHANGED
data/bake/utopia/site.rb
CHANGED
@@ -9,6 +9,7 @@ def initialize(...)
|
|
9
9
|
|
10
10
|
require 'fileutils'
|
11
11
|
require 'find'
|
12
|
+
require 'console'
|
12
13
|
|
13
14
|
require_relative '../../lib/utopia/version'
|
14
15
|
end
|
@@ -30,7 +31,7 @@ SITE_ROOT = File.join(SETUP_ROOT, 'site')
|
|
30
31
|
|
31
32
|
# Create a new local Utopia website using the default template.
|
32
33
|
def create(root: context.root)
|
33
|
-
Console.
|
34
|
+
Console.debug(self) {"Setting up site in #{root} for Utopia v#{Utopia::VERSION}..."}
|
34
35
|
|
35
36
|
DIRECTORIES.each do |directory|
|
36
37
|
FileUtils.mkdir_p(File.join(root, directory))
|
@@ -58,7 +59,7 @@ def create(root: context.root)
|
|
58
59
|
buffer = File.read(destination_path).gsub('$UTOPIA_VERSION', Utopia::VERSION)
|
59
60
|
File.open(destination_path, "w") { |file| file.write(buffer) }
|
60
61
|
else
|
61
|
-
Console.
|
62
|
+
Console.warn(self) {"Could not open #{destination_path}, maybe it should be removed from CONFIGURATION_FILES?"}
|
62
63
|
end
|
63
64
|
end
|
64
65
|
|
@@ -67,7 +68,7 @@ def create(root: context.root)
|
|
67
68
|
context.lookup('utopia:environment:setup').call(root: root)
|
68
69
|
|
69
70
|
if !File.exist?('.git')
|
70
|
-
Console.
|
71
|
+
Console.info(self) {"Setting up git repository..."}
|
71
72
|
|
72
73
|
system("git", "init", chdir: root) or warn "could not create git repository"
|
73
74
|
system("git", "add", ".", chdir: root) or warn "could not add all files"
|
@@ -94,7 +95,7 @@ end
|
|
94
95
|
def upgrade(root: context.root)
|
95
96
|
message = "Upgrade to utopia v#{Utopia::VERSION}."
|
96
97
|
|
97
|
-
Console.
|
98
|
+
Console.info(self) {"Upgrading #{root}..."}
|
98
99
|
|
99
100
|
commit_changes(root, message) do
|
100
101
|
DIRECTORIES.each do |directory|
|
@@ -105,7 +106,7 @@ def upgrade(root: context.root)
|
|
105
106
|
path = File.join(root, path)
|
106
107
|
|
107
108
|
if File.exist?(path)
|
108
|
-
Console.
|
109
|
+
Console.info(self) {"Removing #{path}..."}
|
109
110
|
FileUtils.rm_rf(path)
|
110
111
|
end
|
111
112
|
end
|
@@ -114,7 +115,7 @@ def upgrade(root: context.root)
|
|
114
115
|
source_path = File.join(SITE_ROOT, configuration_file)
|
115
116
|
destination_path = File.join(root, configuration_file)
|
116
117
|
|
117
|
-
Console.
|
118
|
+
Console.info(self) {"Updating #{destination_path}..."}
|
118
119
|
|
119
120
|
FileUtils.copy_entry(source_path, destination_path)
|
120
121
|
buffer = File.read(destination_path).gsub('$UTOPIA_VERSION', Utopia::VERSION)
|
@@ -165,7 +166,7 @@ def move_static!(root)
|
|
165
166
|
if File.lstat(new_static_path).symlink?
|
166
167
|
FileUtils.rm_f new_static_path
|
167
168
|
else
|
168
|
-
Console.
|
169
|
+
Console.warn(self) {"Can't move pages/_static to public/_static, destination already exists."}
|
169
170
|
return
|
170
171
|
end
|
171
172
|
end
|
data/bake/utopia.rb
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
# frozen_string_literal: true
|
2
2
|
|
3
3
|
# Released under the MIT License.
|
4
|
-
# Copyright, 2015-
|
4
|
+
# Copyright, 2015-2024, by Samuel Williams.
|
5
5
|
|
6
6
|
require_relative 'links'
|
7
7
|
require_relative 'response'
|
@@ -216,7 +216,7 @@ module Utopia
|
|
216
216
|
@node = node
|
217
217
|
@attributes = attributes
|
218
218
|
|
219
|
-
@buffer =
|
219
|
+
@buffer = XRB::MarkupString.new.force_encoding(Encoding::UTF_8)
|
220
220
|
@content = nil
|
221
221
|
|
222
222
|
@deferred = []
|
@@ -246,7 +246,7 @@ module Utopia
|
|
246
246
|
|
247
247
|
def call(document)
|
248
248
|
@content = @buffer
|
249
|
-
@buffer =
|
249
|
+
@buffer = XRB::MarkupString.new.force_encoding(Encoding::UTF_8)
|
250
250
|
|
251
251
|
if node.respond_to? :call
|
252
252
|
node.call(document, self)
|
@@ -262,7 +262,7 @@ module Utopia
|
|
262
262
|
end
|
263
263
|
|
264
264
|
def text(string)
|
265
|
-
|
265
|
+
XRB::Markup.append(@buffer, string)
|
266
266
|
end
|
267
267
|
|
268
268
|
def tag_complete(tag)
|
data/lib/utopia/content/link.rb
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
# frozen_string_literal: true
|
2
2
|
|
3
3
|
# Released under the MIT License.
|
4
|
-
# Copyright, 2009-
|
4
|
+
# Copyright, 2009-2024, by Samuel Williams.
|
5
5
|
# Copyright, 2017, by Huba Nagy.
|
6
6
|
# Copyright, 2020, by Michael Adams.
|
7
7
|
|
8
8
|
require 'yaml'
|
9
|
-
require '
|
9
|
+
require 'xrb/builder'
|
10
10
|
|
11
|
-
require '
|
11
|
+
require 'xrb/strings'
|
12
12
|
|
13
13
|
require_relative '../path'
|
14
14
|
require_relative '../locale'
|
@@ -24,7 +24,7 @@ module Utopia
|
|
24
24
|
@locale = locale
|
25
25
|
@path = Path.create(path)
|
26
26
|
@info = info || {}
|
27
|
-
@title =
|
27
|
+
@title = XRB::Strings.to_title(title || name)
|
28
28
|
end
|
29
29
|
|
30
30
|
def key
|
@@ -89,7 +89,7 @@ module Utopia
|
|
89
89
|
def to_anchor(base: nil, content: self.title, builder: nil, **attributes)
|
90
90
|
attributes[:class] ||= 'link'
|
91
91
|
|
92
|
-
|
92
|
+
XRB::Builder.fragment(builder) do |inner_builder|
|
93
93
|
if href?
|
94
94
|
attributes[:href] ||= relative_href(base)
|
95
95
|
attributes[:target] ||= @info[:target]
|
@@ -1,16 +1,16 @@
|
|
1
1
|
# frozen_string_literal: true
|
2
2
|
|
3
3
|
# Released under the MIT License.
|
4
|
-
# Copyright, 2009-
|
4
|
+
# Copyright, 2009-2024, by Samuel Williams.
|
5
5
|
|
6
|
-
require '
|
7
|
-
require '
|
8
|
-
require '
|
9
|
-
require '
|
6
|
+
require 'xrb/parsers'
|
7
|
+
require 'xrb/entities'
|
8
|
+
require 'xrb/strings'
|
9
|
+
require 'xrb/tag'
|
10
10
|
|
11
11
|
module Utopia
|
12
12
|
class Content
|
13
|
-
Tag =
|
13
|
+
Tag = XRB::Tag
|
14
14
|
|
15
15
|
# A hash which forces all keys to be symbols and fails with KeyError when strings are used.
|
16
16
|
class SymbolicHash < Hash
|
@@ -66,12 +66,12 @@ module Utopia
|
|
66
66
|
attr :closing_tag
|
67
67
|
|
68
68
|
def start_location
|
69
|
-
|
69
|
+
XRB::Location.new(@buffer.read, opening_tag.offset)
|
70
70
|
end
|
71
71
|
|
72
72
|
def end_location
|
73
73
|
if closing_tag and closing_tag.respond_to? :offset
|
74
|
-
|
74
|
+
XRB::Location.new(@buffer.read, closing_tag.offset)
|
75
75
|
end
|
76
76
|
end
|
77
77
|
|
@@ -84,14 +84,14 @@ module Utopia
|
|
84
84
|
end
|
85
85
|
end
|
86
86
|
|
87
|
-
def self.parse(buffer, delegate, entities =
|
87
|
+
def self.parse(buffer, delegate, entities = XRB::Entities::HTML5)
|
88
88
|
# This is for compatibility with the existing API which passes in a string:
|
89
|
-
buffer =
|
89
|
+
buffer = XRB::Buffer(buffer)
|
90
90
|
|
91
91
|
self.new(buffer, delegate, entities).parse!
|
92
92
|
end
|
93
93
|
|
94
|
-
def initialize(buffer, delegate, entities =
|
94
|
+
def initialize(buffer, delegate, entities = XRB::Entities::HTML5)
|
95
95
|
@buffer = buffer
|
96
96
|
|
97
97
|
@delegate = delegate
|
@@ -102,7 +102,7 @@ module Utopia
|
|
102
102
|
end
|
103
103
|
|
104
104
|
def parse!
|
105
|
-
|
105
|
+
XRB::Parsers.parse_markup(@buffer, self, @entities)
|
106
106
|
|
107
107
|
if tag = @stack.pop
|
108
108
|
raise UnbalancedTagError.new(@buffer, tag)
|
data/lib/utopia/content.rb
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
# frozen_string_literal: true
|
2
2
|
|
3
3
|
# Released under the MIT License.
|
4
|
-
# Copyright, 2009-
|
4
|
+
# Copyright, 2009-2024, by Samuel Williams.
|
5
5
|
|
6
6
|
require_relative 'middleware'
|
7
7
|
require_relative 'localization'
|
@@ -11,7 +11,7 @@ require_relative 'content/node'
|
|
11
11
|
require_relative 'content/markup'
|
12
12
|
require_relative 'content/tags'
|
13
13
|
|
14
|
-
require '
|
14
|
+
require 'xrb/template'
|
15
15
|
|
16
16
|
require 'concurrent/map'
|
17
17
|
|
@@ -64,13 +64,13 @@ module Utopia
|
|
64
64
|
|
65
65
|
def fetch_template(path)
|
66
66
|
@template_cache.fetch_or_store(path.to_s) do
|
67
|
-
|
67
|
+
XRB::Template.load_file(path)
|
68
68
|
end
|
69
69
|
end
|
70
70
|
|
71
71
|
# Look up a named tag such as `<entry />` or `<content:page>...`
|
72
72
|
def lookup_tag(qualified_name, node)
|
73
|
-
namespace, name =
|
73
|
+
namespace, name = XRB::Tag.split(qualified_name)
|
74
74
|
|
75
75
|
if library = @namespaces[namespace]
|
76
76
|
library.call(name, node)
|
@@ -190,7 +190,7 @@ module Utopia
|
|
190
190
|
'link.href' => link.href
|
191
191
|
}
|
192
192
|
|
193
|
-
trace("utopia.content.respond", attributes: attributes) {super}
|
193
|
+
Traces.trace("utopia.content.respond", attributes: attributes) {super}
|
194
194
|
end
|
195
195
|
end
|
196
196
|
end
|
data/lib/utopia/redirection.rb
CHANGED
data/lib/utopia/session.rb
CHANGED
@@ -6,7 +6,7 @@
|
|
6
6
|
|
7
7
|
require 'openssl'
|
8
8
|
require 'digest/sha2'
|
9
|
-
|
9
|
+
require 'console'
|
10
10
|
require 'json'
|
11
11
|
|
12
12
|
require_relative 'session/lazy_hash'
|
@@ -143,7 +143,7 @@ module Utopia
|
|
143
143
|
return values
|
144
144
|
end
|
145
145
|
rescue => error
|
146
|
-
|
146
|
+
Console.error(self, error)
|
147
147
|
end
|
148
148
|
end
|
149
149
|
|
data/lib/utopia/setup.rb
CHANGED
@@ -8,7 +8,7 @@ require 'securerandom'
|
|
8
8
|
|
9
9
|
require 'variant'
|
10
10
|
|
11
|
-
|
11
|
+
require 'console'
|
12
12
|
|
13
13
|
module Utopia
|
14
14
|
# Used for setting up a Utopia web application, typically via `config/environment.rb`
|
@@ -49,7 +49,7 @@ module Utopia
|
|
49
49
|
if secret.nil? || secret.empty?
|
50
50
|
secret = SecureRandom.hex(32)
|
51
51
|
|
52
|
-
|
52
|
+
Console.warn(self) do
|
53
53
|
"Generating transient #{key} secret: #{secret.inspect}"
|
54
54
|
end
|
55
55
|
end
|
@@ -93,7 +93,7 @@ module Utopia
|
|
93
93
|
path = environment_path(variant)
|
94
94
|
|
95
95
|
if File.exist?(path)
|
96
|
-
|
96
|
+
Console.debug(self) {"Loading environment at path: #{path.inspect}"}
|
97
97
|
|
98
98
|
# Load the YAML environment file:
|
99
99
|
if environment = YAML.load_file(path)
|
@@ -105,7 +105,7 @@ module Utopia
|
|
105
105
|
|
106
106
|
return true
|
107
107
|
else
|
108
|
-
|
108
|
+
Console.debug(self) {"Ignoring environment at path: #{path.inspect} (file not found)"}
|
109
109
|
|
110
110
|
return false
|
111
111
|
end
|
data/lib/utopia/static.rb
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
# frozen_string_literal: true
|
2
2
|
|
3
3
|
# Released under the MIT License.
|
4
|
-
# Copyright, 2009-
|
4
|
+
# Copyright, 2009-2023, by Samuel Williams.
|
5
5
|
|
6
6
|
require_relative 'middleware'
|
7
7
|
require_relative 'localization'
|
@@ -102,7 +102,7 @@ module Utopia
|
|
102
102
|
path_info: path_info,
|
103
103
|
}
|
104
104
|
|
105
|
-
trace("utopia.static.respond", attributes: attributes) {super}
|
105
|
+
Traces.trace("utopia.static.respond", attributes: attributes) {super}
|
106
106
|
end
|
107
107
|
end
|
108
108
|
end
|
data/lib/utopia/version.rb
CHANGED
data/license.md
CHANGED
data/readme.md
CHANGED
@@ -2,7 +2,7 @@
|
|
2
2
|
|
3
3
|
Utopia is a website generation framework which provides a robust set of tools to build highly complex dynamic websites. It uses the filesystem heavily for content and provides functions for interacting with files and directories as structure representing the website.
|
4
4
|
|
5
|
-
[![Development Status](https://github.com/
|
5
|
+
[![Development Status](https://github.com/socketry/utopia/workflows/Test/badge.svg)](https://github.com/socketry/utopia/actions?workflow=Test)
|
6
6
|
|
7
7
|
## Features
|
8
8
|
|
@@ -15,20 +15,9 @@ Utopia is a website generation framework which provides a robust set of tools to
|
|
15
15
|
|
16
16
|
Please see the [project documentation](https://socketry.github.io/utopia).
|
17
17
|
|
18
|
-
## Contributing
|
19
|
-
|
20
|
-
We welcome contributions to this project.
|
21
|
-
|
22
|
-
1. Fork it.
|
23
|
-
2. Create your feature branch (`git checkout -b my-new-feature`).
|
24
|
-
3. Commit your changes (`git commit -am 'Add some feature'`).
|
25
|
-
4. Push to the branch (`git push origin my-new-feature`).
|
26
|
-
5. Create new Pull Request.
|
27
|
-
|
28
18
|
## See Also
|
29
19
|
|
30
|
-
- [
|
31
|
-
- [Trenni::Formatters](https://github.com/ioquatix/trenni-formatters) — Helpers for HTML generation including views and forms.
|
20
|
+
- [XRB](https://github.com/socketry/xrb) — Template and markup parsers, markup generation.
|
32
21
|
- [Utopia::Gallery](https://github.com/ioquatix/utopia-gallery) — A fast photo gallery based on [libvips](https://github.com/jcupitt/libvips).
|
33
22
|
- [Utopia::Project](https://github.com/socketry/utopia-project) — A Ruby project documentation tool.
|
34
23
|
- [Utopia::Analytics](https://github.com/ioquatix/utopia-analytics) — Simple integration with Google Analytics.
|
@@ -42,3 +31,21 @@ We welcome contributions to this project.
|
|
42
31
|
- [Financier](https://github.com/ioquatix/financier) — A small business management platform.
|
43
32
|
- [mail.oriontransfer.net](https://github.com/oriontransfer/mail.oriontransfer.net) - Mail server account management.
|
44
33
|
- [www.codeotaku.com](http://www.codeotaku.com) ([source](https://github.com/ioquatix/www.codeotaku.com)) — Personal website, blog.
|
34
|
+
|
35
|
+
## Contributing
|
36
|
+
|
37
|
+
We welcome contributions to this project.
|
38
|
+
|
39
|
+
1. Fork it.
|
40
|
+
2. Create your feature branch (`git checkout -b my-new-feature`).
|
41
|
+
3. Commit your changes (`git commit -am 'Add some feature'`).
|
42
|
+
4. Push to the branch (`git push origin my-new-feature`).
|
43
|
+
5. Create new Pull Request.
|
44
|
+
|
45
|
+
### Developer Certificate of Origin
|
46
|
+
|
47
|
+
This project uses the [Developer Certificate of Origin](https://developercertificate.org/). All contributors to this project must agree to this document to have their contributions accepted.
|
48
|
+
|
49
|
+
### Contributor Covenant
|
50
|
+
|
51
|
+
This project is governed by the [Contributor Covenant](https://www.contributor-covenant.org/). All contributors and participants agree to abide by its terms.
|
data/setup/site/config/sus.rb
CHANGED
data/setup/site/test/website.rb
CHANGED
@@ -16,7 +16,7 @@ describe "website" do
|
|
16
16
|
it "should be responsive" do
|
17
17
|
spider.fetch(statistics, client, endpoint.url) do |method, uri, response|
|
18
18
|
if response.failure?
|
19
|
-
Console.
|
19
|
+
Console.error(endpoint) {"#{method} #{uri} -> #{response.status}"}
|
20
20
|
end
|
21
21
|
end.wait
|
22
22
|
|
data.tar.gz.sig
CHANGED
Binary file
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: utopia
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 2.
|
4
|
+
version: 2.24.1
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Samuel Williams
|
@@ -41,7 +41,7 @@ cert_chain:
|
|
41
41
|
Q2K9NVun/S785AP05vKkXZEFYxqG6EW012U4oLcFl5MySFajYXRYbuUpH6AY+HP8
|
42
42
|
voD0MPg1DssDLKwXyt1eKD/+Fq0bFWhwVM/1XiAXL7lyYUyOq24KHgQ2Csg=
|
43
43
|
-----END CERTIFICATE-----
|
44
|
-
date:
|
44
|
+
date: 2024-05-03 00:00:00.000000000 Z
|
45
45
|
dependencies:
|
46
46
|
- !ruby/object:Gem::Dependency
|
47
47
|
name: concurrent-ruby
|
@@ -63,14 +63,14 @@ dependencies:
|
|
63
63
|
requirements:
|
64
64
|
- - "~>"
|
65
65
|
- !ruby/object:Gem::Version
|
66
|
-
version: '1.
|
66
|
+
version: '1.24'
|
67
67
|
type: :runtime
|
68
68
|
prerelease: false
|
69
69
|
version_requirements: !ruby/object:Gem::Requirement
|
70
70
|
requirements:
|
71
71
|
- - "~>"
|
72
72
|
- !ruby/object:Gem::Version
|
73
|
-
version: '1.
|
73
|
+
version: '1.24'
|
74
74
|
- !ruby/object:Gem::Dependency
|
75
75
|
name: http-accept
|
76
76
|
requirement: !ruby/object:Gem::Requirement
|
@@ -171,32 +171,18 @@ dependencies:
|
|
171
171
|
version: '2.1'
|
172
172
|
- !ruby/object:Gem::Dependency
|
173
173
|
name: traces
|
174
|
-
requirement: !ruby/object:Gem::Requirement
|
175
|
-
requirements:
|
176
|
-
- - ">="
|
177
|
-
- !ruby/object:Gem::Version
|
178
|
-
version: '0'
|
179
|
-
type: :runtime
|
180
|
-
prerelease: false
|
181
|
-
version_requirements: !ruby/object:Gem::Requirement
|
182
|
-
requirements:
|
183
|
-
- - ">="
|
184
|
-
- !ruby/object:Gem::Version
|
185
|
-
version: '0'
|
186
|
-
- !ruby/object:Gem::Dependency
|
187
|
-
name: trenni
|
188
174
|
requirement: !ruby/object:Gem::Requirement
|
189
175
|
requirements:
|
190
176
|
- - "~>"
|
191
177
|
- !ruby/object:Gem::Version
|
192
|
-
version: '
|
178
|
+
version: '0.10'
|
193
179
|
type: :runtime
|
194
180
|
prerelease: false
|
195
181
|
version_requirements: !ruby/object:Gem::Requirement
|
196
182
|
requirements:
|
197
183
|
- - "~>"
|
198
184
|
- !ruby/object:Gem::Version
|
199
|
-
version: '
|
185
|
+
version: '0.10'
|
200
186
|
- !ruby/object:Gem::Dependency
|
201
187
|
name: variant
|
202
188
|
requirement: !ruby/object:Gem::Requirement
|
@@ -212,103 +198,19 @@ dependencies:
|
|
212
198
|
- !ruby/object:Gem::Version
|
213
199
|
version: '0.1'
|
214
200
|
- !ruby/object:Gem::Dependency
|
215
|
-
name:
|
216
|
-
requirement: !ruby/object:Gem::Requirement
|
217
|
-
requirements:
|
218
|
-
- - ">="
|
219
|
-
- !ruby/object:Gem::Version
|
220
|
-
version: '0'
|
221
|
-
type: :development
|
222
|
-
prerelease: false
|
223
|
-
version_requirements: !ruby/object:Gem::Requirement
|
224
|
-
requirements:
|
225
|
-
- - ">="
|
226
|
-
- !ruby/object:Gem::Version
|
227
|
-
version: '0'
|
228
|
-
- !ruby/object:Gem::Dependency
|
229
|
-
name: bake
|
230
|
-
requirement: !ruby/object:Gem::Requirement
|
231
|
-
requirements:
|
232
|
-
- - ">="
|
233
|
-
- !ruby/object:Gem::Version
|
234
|
-
version: '0'
|
235
|
-
type: :development
|
236
|
-
prerelease: false
|
237
|
-
version_requirements: !ruby/object:Gem::Requirement
|
238
|
-
requirements:
|
239
|
-
- - ">="
|
240
|
-
- !ruby/object:Gem::Version
|
241
|
-
version: '0'
|
242
|
-
- !ruby/object:Gem::Dependency
|
243
|
-
name: bundler
|
244
|
-
requirement: !ruby/object:Gem::Requirement
|
245
|
-
requirements:
|
246
|
-
- - ">="
|
247
|
-
- !ruby/object:Gem::Version
|
248
|
-
version: '0'
|
249
|
-
type: :development
|
250
|
-
prerelease: false
|
251
|
-
version_requirements: !ruby/object:Gem::Requirement
|
252
|
-
requirements:
|
253
|
-
- - ">="
|
254
|
-
- !ruby/object:Gem::Version
|
255
|
-
version: '0'
|
256
|
-
- !ruby/object:Gem::Dependency
|
257
|
-
name: covered
|
258
|
-
requirement: !ruby/object:Gem::Requirement
|
259
|
-
requirements:
|
260
|
-
- - ">="
|
261
|
-
- !ruby/object:Gem::Version
|
262
|
-
version: '0'
|
263
|
-
type: :development
|
264
|
-
prerelease: false
|
265
|
-
version_requirements: !ruby/object:Gem::Requirement
|
266
|
-
requirements:
|
267
|
-
- - ">="
|
268
|
-
- !ruby/object:Gem::Version
|
269
|
-
version: '0'
|
270
|
-
- !ruby/object:Gem::Dependency
|
271
|
-
name: falcon
|
201
|
+
name: xrb
|
272
202
|
requirement: !ruby/object:Gem::Requirement
|
273
203
|
requirements:
|
274
|
-
- - "
|
275
|
-
- !ruby/object:Gem::Version
|
276
|
-
version: '0'
|
277
|
-
type: :development
|
278
|
-
prerelease: false
|
279
|
-
version_requirements: !ruby/object:Gem::Requirement
|
280
|
-
requirements:
|
281
|
-
- - ">="
|
282
|
-
- !ruby/object:Gem::Version
|
283
|
-
version: '0'
|
284
|
-
- !ruby/object:Gem::Dependency
|
285
|
-
name: sus
|
286
|
-
requirement: !ruby/object:Gem::Requirement
|
287
|
-
requirements:
|
288
|
-
- - ">="
|
289
|
-
- !ruby/object:Gem::Version
|
290
|
-
version: '0'
|
291
|
-
type: :development
|
292
|
-
prerelease: false
|
293
|
-
version_requirements: !ruby/object:Gem::Requirement
|
294
|
-
requirements:
|
295
|
-
- - ">="
|
296
|
-
- !ruby/object:Gem::Version
|
297
|
-
version: '0'
|
298
|
-
- !ruby/object:Gem::Dependency
|
299
|
-
name: sus-fixtures-async-http
|
300
|
-
requirement: !ruby/object:Gem::Requirement
|
301
|
-
requirements:
|
302
|
-
- - ">="
|
204
|
+
- - "~>"
|
303
205
|
- !ruby/object:Gem::Version
|
304
|
-
version: '0'
|
305
|
-
type: :
|
206
|
+
version: '0.4'
|
207
|
+
type: :runtime
|
306
208
|
prerelease: false
|
307
209
|
version_requirements: !ruby/object:Gem::Requirement
|
308
210
|
requirements:
|
309
|
-
- - "
|
211
|
+
- - "~>"
|
310
212
|
- !ruby/object:Gem::Version
|
311
|
-
version: '0'
|
213
|
+
version: '0.4'
|
312
214
|
description:
|
313
215
|
email:
|
314
216
|
executables: []
|
@@ -349,7 +251,6 @@ files:
|
|
349
251
|
- lib/utopia/http.rb
|
350
252
|
- lib/utopia/locale.rb
|
351
253
|
- lib/utopia/localization.rb
|
352
|
-
- lib/utopia/logger.rb
|
353
254
|
- lib/utopia/middleware.rb
|
354
255
|
- lib/utopia/path.rb
|
355
256
|
- lib/utopia/path/matcher.rb
|
@@ -396,6 +297,7 @@ licenses:
|
|
396
297
|
- MIT
|
397
298
|
metadata:
|
398
299
|
funding_uri: https://github.com/sponsors/ioquatix/
|
300
|
+
source_code_uri: https://github.com/ioquatix/utopia.git
|
399
301
|
post_install_message:
|
400
302
|
rdoc_options: []
|
401
303
|
require_paths:
|
@@ -404,14 +306,14 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
404
306
|
requirements:
|
405
307
|
- - ">="
|
406
308
|
- !ruby/object:Gem::Version
|
407
|
-
version: '
|
309
|
+
version: '3.1'
|
408
310
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
409
311
|
requirements:
|
410
312
|
- - ">="
|
411
313
|
- !ruby/object:Gem::Version
|
412
314
|
version: '0'
|
413
315
|
requirements: []
|
414
|
-
rubygems_version: 3.
|
316
|
+
rubygems_version: 3.5.3
|
415
317
|
signing_key:
|
416
318
|
specification_version: 4
|
417
319
|
summary: Utopia is a framework for building dynamic content-driven websites.
|
metadata.gz.sig
CHANGED
Binary file
|