isomorfeus-preact 10.6.59 → 10.6.62
Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: f52b5617834421df8584664b3429929319f00e50af46ce0a22666da0028ff8a7
|
4
|
+
data.tar.gz: 63dae456aeb4f120f6c863998a49c5b0499836ff1febef250d74a83c45c79451
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: a166348267c263583cffae55101441c802a273ac849c6f9eed6fce2a21d0577d440ff0b39da479422e301a781b748a07ab3909e0c345ef528f04644cd759c94b
|
7
|
+
data.tar.gz: 31625e31c6645ce880b88f8bbe6ff818bae73f72e1375345dfb63a1df6cc4a7667e4f2914742b3bb93f622969f5dd7a86967b54be6b78ef1de2f7531b2bae061
|
@@ -7,13 +7,14 @@ module Isomorfeus
|
|
7
7
|
Isomorfeus.set_current_user(nil)
|
8
8
|
Isomorfeus::Transport.promise_connect(`global.IsomorfeusSessionId`)
|
9
9
|
.then { `self.async_render_pass(component_name, props)` }
|
10
|
-
.fail do
|
10
|
+
.fail do |error|
|
11
|
+
message = "Transport within SSR unable to connect: #{error}\n#{error&.backtrace&.join("\n")}!"
|
11
12
|
%x{
|
12
13
|
global.ConnectRetries--;
|
13
14
|
if (global.ConnectRetries > 0) {
|
14
15
|
self.first_pass(component_name, props);
|
15
16
|
} else {
|
16
|
-
global.Exception = new Error(
|
17
|
+
global.Exception = new Error(#{message});
|
17
18
|
self.finish_render();
|
18
19
|
}
|
19
20
|
}
|
@@ -83,7 +84,7 @@ module Isomorfeus
|
|
83
84
|
return [global.RenderedTree, application_state, ssr_styles, opi['$ssr_response_status'](), global.RenderPass, self.get_exception()];
|
84
85
|
}
|
85
86
|
|
86
|
-
self.mount_component = function(session_id, env, locale,
|
87
|
+
self.mount_component = function(session_id, env, locale, transport_ws_url, component_name, props, max_passes) {
|
87
88
|
const opi = global.Opal.Isomorfeus;
|
88
89
|
global.ConnectRetries = 5;
|
89
90
|
global.RenderPass = 0;
|
@@ -98,14 +99,14 @@ module Isomorfeus
|
|
98
99
|
if (typeof opi["$current_locale="] === 'function') { opi["$current_locale="](locale); }
|
99
100
|
opi['$force_init!']();
|
100
101
|
opi['$ssr_response_status='](200);
|
101
|
-
opi.TopLevel['$ssr_route_path='](location);
|
102
102
|
|
103
103
|
self.first_pass(component_name, props);
|
104
104
|
}
|
105
105
|
}
|
106
106
|
|
107
107
|
def self.disconnect_transport
|
108
|
-
Isomorfeus::Transport::RequestAgent.agents.
|
108
|
+
while Isomorfeus::Transport::RequestAgent.agents.size > 0
|
109
|
+
agent_id, agent = Isomorfeus::Transport::RequestAgent.agents.first
|
109
110
|
agent.promise.reject() unless agent.promise.realized?
|
110
111
|
Isomorfeus::Transport::RequestAgent.del!(agent_id)
|
111
112
|
end
|
@@ -22,13 +22,9 @@ module Isomorfeus
|
|
22
22
|
@ssr_styles = nil
|
23
23
|
render_result = "<div data-iso-env=\"#{Isomorfeus.env}\" data-iso-root=\"#{component_name}\" data-iso-props='#{Oj.dump(props, mode: :strict)}'"
|
24
24
|
if !skip_ssr && (Isomorfeus.server_side_rendering || use_ssr)
|
25
|
-
thread_id_asset = "#{Thread.current.object_id}
|
25
|
+
thread_id_asset = "#{Thread.current.object_id}|#{asset_key}"
|
26
26
|
begin
|
27
|
-
if Isomorfeus.development?
|
28
|
-
init_speednode_context(asset_key, thread_id_asset)
|
29
|
-
elsif !Isomorfeus.ssr_contexts.key?(thread_id_asset)
|
30
|
-
init_speednode_context(asset_key, thread_id_asset)
|
31
|
-
end
|
27
|
+
init_speednode_context(asset_key, thread_id_asset) if Isomorfeus.development? || !Isomorfeus.ssr_contexts.key?(thread_id_asset)
|
32
28
|
rescue Exception => e
|
33
29
|
Isomorfeus.raise_error(message: "Server Side Rendering: Failed creating context for #{asset_key}. Error: #{e.message}", stack: e.backtrace)
|
34
30
|
end
|
@@ -44,7 +40,7 @@ module Isomorfeus
|
|
44
40
|
# build javascript for rendering first pass
|
45
41
|
# it will initialize buffers to guard against leaks, maybe caused by previous exceptions
|
46
42
|
javascript = <<~JAVASCRIPT
|
47
|
-
return Opal.Isomorfeus.SSR.mount_component('#{Thread.current[:isomorfeus_session_id]}', '#{Isomorfeus.env}', '#{props[:locale]}', '#{
|
43
|
+
return Opal.Isomorfeus.SSR.mount_component('#{Thread.current[:isomorfeus_session_id]}', '#{Isomorfeus.env}', '#{props[:locale]}', '#{transport_ws_url}', '#{component_name}', #{Oj.dump(props, mode: :strict)}, #{max_passes})
|
48
44
|
JAVASCRIPT
|
49
45
|
|
50
46
|
begin
|
data/lib/isomorfeus-preact.rb
CHANGED
@@ -107,8 +107,8 @@ else
|
|
107
107
|
|
108
108
|
# caches
|
109
109
|
require 'isomorfeus/preact/thread_local_component_cache'
|
110
|
-
require 'isomorfeus/preact/memcached_component_cache'
|
111
|
-
require 'isomorfeus/preact/redis_component_cache'
|
110
|
+
# require 'isomorfeus/preact/memcached_component_cache'
|
111
|
+
# require 'isomorfeus/preact/redis_component_cache'
|
112
112
|
require 'isomorfeus/preact_view_helper'
|
113
113
|
|
114
114
|
Isomorfeus.component_cache_init do
|
@@ -117,6 +117,7 @@ else
|
|
117
117
|
|
118
118
|
Opal.append_path(__dir__.untaint)
|
119
119
|
|
120
|
+
require 'concurrent/atomic/atomic_fixnum'
|
120
121
|
require 'concurrent/atomic/reentrant_read_write_lock'
|
121
122
|
require 'zeitwerk'
|
122
123
|
|
data/lib/preact/version.rb
CHANGED
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: isomorfeus-preact
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 10.6.
|
4
|
+
version: 10.6.62
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Jan Biedermann
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2022-03-
|
11
|
+
date: 2022-03-12 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: concurrent-ruby
|
@@ -114,42 +114,14 @@ dependencies:
|
|
114
114
|
requirements:
|
115
115
|
- - "~>"
|
116
116
|
- !ruby/object:Gem::Version
|
117
|
-
version: 0.5.
|
117
|
+
version: 0.5.3
|
118
118
|
type: :runtime
|
119
119
|
prerelease: false
|
120
120
|
version_requirements: !ruby/object:Gem::Requirement
|
121
121
|
requirements:
|
122
122
|
- - "~>"
|
123
123
|
- !ruby/object:Gem::Version
|
124
|
-
version: 0.5.
|
125
|
-
- !ruby/object:Gem::Dependency
|
126
|
-
name: dalli
|
127
|
-
requirement: !ruby/object:Gem::Requirement
|
128
|
-
requirements:
|
129
|
-
- - "~>"
|
130
|
-
- !ruby/object:Gem::Version
|
131
|
-
version: 2.7.11
|
132
|
-
type: :runtime
|
133
|
-
prerelease: false
|
134
|
-
version_requirements: !ruby/object:Gem::Requirement
|
135
|
-
requirements:
|
136
|
-
- - "~>"
|
137
|
-
- !ruby/object:Gem::Version
|
138
|
-
version: 2.7.11
|
139
|
-
- !ruby/object:Gem::Dependency
|
140
|
-
name: redis
|
141
|
-
requirement: !ruby/object:Gem::Requirement
|
142
|
-
requirements:
|
143
|
-
- - "~>"
|
144
|
-
- !ruby/object:Gem::Version
|
145
|
-
version: 4.4.0
|
146
|
-
type: :runtime
|
147
|
-
prerelease: false
|
148
|
-
version_requirements: !ruby/object:Gem::Requirement
|
149
|
-
requirements:
|
150
|
-
- - "~>"
|
151
|
-
- !ruby/object:Gem::Version
|
152
|
-
version: 4.4.0
|
124
|
+
version: 0.5.3
|
153
125
|
- !ruby/object:Gem::Dependency
|
154
126
|
name: zeitwerk
|
155
127
|
requirement: !ruby/object:Gem::Requirement
|
@@ -170,14 +142,14 @@ dependencies:
|
|
170
142
|
requirements:
|
171
143
|
- - "~>"
|
172
144
|
- !ruby/object:Gem::Version
|
173
|
-
version: 0.6.
|
145
|
+
version: 0.6.6
|
174
146
|
type: :development
|
175
147
|
prerelease: false
|
176
148
|
version_requirements: !ruby/object:Gem::Requirement
|
177
149
|
requirements:
|
178
150
|
- - "~>"
|
179
151
|
- !ruby/object:Gem::Version
|
180
|
-
version: 0.6.
|
152
|
+
version: 0.6.6
|
181
153
|
- !ruby/object:Gem::Dependency
|
182
154
|
name: rake
|
183
155
|
requirement: !ruby/object:Gem::Requirement
|