Tony Garnock-Jones
cd60353053
Remove obsolete definition.
2016-05-15 07:01:32 -04:00
Tony Garnock-Jones
74c663d5d4
Provide broker-scope and broker-data from server.rkt
2016-05-15 06:59:28 -04:00
Tony Garnock-Jones
81f9a0f0fe
Split host and port in websocket-remote-client and broker-scope.
2016-05-15 06:56:29 -04:00
Tony Garnock-Jones
c29ae059ff
Make sure to advertise presence even during connection establishment, since otherwise the user actor may hang indefinitely.
2016-05-15 06:55:39 -04:00
Tony Garnock-Jones
0f1fabddfb
Better logging of websocket connection failures.
2016-05-15 06:55:14 -04:00
Tony Garnock-Jones
931c54df6a
It is expected that outbound connection supply should drop.
2016-05-15 06:53:02 -04:00
Tony Garnock-Jones
1f8b3eeb3f
Attribute and property update/remove protocol
2016-05-15 06:14:31 -04:00
Tony Garnock-Jones
097641ffff
Name Structs for compatibility with Racket
2016-05-15 06:13:31 -04:00
Tony Garnock-Jones
0653bdae3c
key.instantiate needs an Array, not an Immutable.List
2016-05-15 06:12:37 -04:00
Tony Garnock-Jones
a55ed180db
Properly handle the first (interesting) patch after a broken connection.
2016-05-15 06:12:09 -04:00
Tony Garnock-Jones
b65291e789
Remove obsolete clean-patch function.
2016-05-15 06:11:04 -04:00
Tony Garnock-Jones
e7b0e15786
Support nested observation across broker protocol
2016-05-15 06:10:51 -04:00
Tony Garnock-Jones
ee120022a4
trie-step*
2016-05-15 06:10:31 -04:00
Tony Garnock-Jones
e55e19d5e4
Add "on event ID BLOCK" support
2016-05-14 19:06:00 -04:00
Tony Garnock-Jones
0561a02e78
onTaskExit, matching the Racket
2016-05-14 17:12:41 -04:00
Tony Garnock-Jones
7a4f1d8931
Update Racket demand-matcher to match improvements in the js version.
2016-05-14 17:07:50 -04:00
Tony Garnock-Jones
c7d91ac37f
Incorrect loop logic in updateEventListeners meant that nodes right at the end of the anchorNode were skipped.
2016-05-14 10:34:22 -04:00
Tony Garnock-Jones
bf532edd28
UIAttribute doesn't have fragmentId.
2016-05-14 02:26:24 -04:00
Tony Garnock-Jones
16365e7e95
Table example
2016-05-14 02:21:56 -04:00
Tony Garnock-Jones
35f0b75389
UIFragment orderBy, for features and speed
2016-05-14 02:21:43 -04:00
Tony Garnock-Jones
cfd7312293
More minor fixes
2016-05-13 20:50:20 -04:00
Tony Garnock-Jones
deae6c6d29
Fix spacing
2016-05-13 20:26:06 -04:00
Tony Garnock-Jones
372652c49d
Syndicate.UI.uiAttribute
2016-05-13 20:17:16 -04:00
Tony Garnock-Jones
f64491c0a7
Better use of console.warn and console.error in dataspace.js
2016-05-13 20:17:16 -04:00
Tony Garnock-Jones
628ba87c54
Rewrite JS DemandMatcher to handle important latency-related corner cases.
2016-05-13 20:14:01 -04:00
Tony Garnock-Jones
68cde5be6c
DemandMatcher: overlap not ruled out! Remove it.
2016-05-12 22:18:57 -04:00
Tony Garnock-Jones
b51e7f99d9
LocationHashTracker
2016-05-12 20:11:22 -04:00
Tony Garnock-Jones
6d305e6b00
Hoist .refresh out from .handleEvent; makes assertions depend on state that might have been changed in event handlers properly.
2016-05-12 17:37:14 -04:00
Tony Garnock-Jones
a433a054b8
Syndicate.UI.windowEvent
2016-05-12 15:56:42 -04:00
Tony Garnock-Jones
e0bd8d08c2
Re-register UIFragment event handlers on node replacement
2016-05-12 15:19:37 -04:00
Tony Garnock-Jones
4eb29832df
Correct stupid mistake
2016-05-12 14:52:55 -04:00
Tony Garnock-Jones
fb89954158
Only try to attach events to things that might emit them
2016-05-12 14:46:39 -04:00
Tony Garnock-Jones
c6cfa2fe87
Scoped broker connections
2016-05-12 12:32:29 -04:00
Tony Garnock-Jones
f486f93bd4
More ergonomic step/prepend for tries and patches
2016-05-12 12:18:59 -04:00
Tony Garnock-Jones
81e10632dd
Expose Websocket request host/path to server-side
2016-05-12 12:18:43 -04:00
Tony Garnock-Jones
7e48e82a48
Print out peer connection details in broker
2016-05-12 10:57:34 -04:00
Tony Garnock-Jones
de44b51e49
ws-echo.rkt and ws-echo-client.rkt
2016-05-12 10:48:34 -04:00
Tony Garnock-Jones
a8821913a1
Publish websocket-peer-details for each connection
2016-05-12 10:46:02 -04:00
Tony Garnock-Jones
4de4a099b9
Fix bug with outbound websocket connections
2016-05-12 10:46:02 -04:00
Tony Garnock-Jones
8d6bc484a8
Canonicalize deserialized atoms. Fixes serious routing bug when using the broker.
2016-05-12 08:06:23 -04:00
Tony Garnock-Jones
7b26b4bf14
Switch to FunctionBody from plain Block, to allow function definitions.
2016-05-12 00:01:09 -04:00
Tony Garnock-Jones
879e2425b9
Make Anchor.prototype.context n-ary
2016-05-11 22:13:35 -04:00
Tony Garnock-Jones
e67d018079
Make the TV catch fire eventually.
2016-05-11 21:22:26 -04:00
Tony Garnock-Jones
7b9f5a54e8
Use "message type" in demo-*.js
2016-05-11 21:05:40 -04:00
Tony Garnock-Jones
0208ae7a7d
A better UI library. Replaces DOM and jQuery support.
2016-05-11 21:03:11 -04:00
Tony Garnock-Jones
23f269fba6
Use Syndicate.Timer in SVG example
2016-05-11 11:13:14 -04:00
Tony Garnock-Jones
6ba9b402ec
Only trigger onStateChange with non-empty patch (?)
2016-05-11 10:59:44 -04:00
Tony Garnock-Jones
0693e88031
Allow "message type ..." as well as "assertion type ...".
2016-05-11 10:59:27 -04:00
Tony Garnock-Jones
4a2c8147aa
Enable and disable the IoT demo spawn/kill buttons.
...
Previous commit changed DOM fragment representation to use strings
instead of Seal'd quasi-sexprs, and so eliminated any distinction
between textually-identical DOM fragments in the dataspace.
This patch disables the "spawn" buttons for components in the IoT demo
to avoid (mostly harmless) duplication of actor instances.
It also demonstrates use of react{} outside a *lexically*-enclosing
actor{}.
2016-05-10 22:40:49 -04:00
Tony Garnock-Jones
dede7f08a7
Use strings-of-HTML and mustache.js for DOM fragments.
...
This avoids churn in the dataspace for no-op DOM updates, but at the
cost of losing the identity of multiple pieces of asserted DOM when
they end up being textually identical.
The fix is, generally, to make sure your DOM fragments are different
in some (perhaps invisible when rendered) way. Next commit updates the
IoT demo to avoid duplicate fragments.
2016-05-10 22:38:40 -04:00