Tony Garnock-Jones
c538c577c3
Many improvements to drivers/http.rkt
2024-04-10 15:42:22 +02:00
Tony Garnock-Jones
9a0697e3c5
New dataspace pattern language.
2024-04-09 14:00:33 +02:00
Tony Garnock-Jones
0370c19e43
New http server protocol implementation and example
2024-04-09 13:01:27 +02:00
Tony Garnock-Jones
5d0d636f16
Happy new year
2024-03-10 12:43:06 +01:00
Tony Garnock-Jones
fe2b018c50
Timers are now in seconds, not milliseconds
2023-02-06 15:41:14 +01:00
Tony Garnock-Jones
89353fa84f
Happy new year
2023-01-16 15:57:29 +01:00
Tony Garnock-Jones
7f84fb9d10
drivers/http: support 405 Method Not Allowed response
2022-12-14 12:10:53 +13:00
Tony Garnock-Jones
271da81942
drivers/http: avoid values, better async usage
2022-12-14 11:53:51 +13:00
Tony Garnock-Jones
9cbe11b32d
HTTP driver
2022-12-13 21:03:44 +13:00
Tony Garnock-Jones
1b9eddc0b6
Update code to match latest schema changes
2022-01-20 09:54:07 +01:00
Tony Garnock-Jones
d4d53fa9ba
Bump copyright years
2022-01-16 09:48:18 +01:00
Tony Garnock-Jones
8008ca5a53
Rearrange protocols subtree
2021-07-01 09:51:17 +02:00
Tony Garnock-Jones
f2063997ec
Update schemas to match new identifier restrictions.
2021-06-25 09:45:38 +02:00
Tony Garnock-Jones
dfd51a5235
Repair connection-state tracking
2021-06-18 18:12:23 +02:00
Tony Garnock-Jones
2e0b9505cc
Sensible defaults; and return local source/sink from establish-connection
2021-06-18 17:43:16 +02:00
Tony Garnock-Jones
20eeb6cd55
Introduce "smart constructors" for patterns to merge literal chunks where possible, making patterns-over-patterns less annoying to express (hopefully)
2021-06-18 17:02:56 +02:00
Tony Garnock-Jones
28901e9d31
Simpler stream connection protocol.
2021-06-18 13:48:12 +02:00
Tony Garnock-Jones
68db114840
Factor generic stream stuff out of tcp.rkt into stream.rkt
2021-06-17 15:26:14 +02:00
Tony Garnock-Jones
0ab3526cba
Services and service activation
2021-06-17 14:57:06 +02:00
Tony Garnock-Jones
ac8ea67ab1
`when` -> `on`; StreamConnection API; better `this-target`; tcp-listen errors
...
- spec-generic StreamConnection translators, for simple TCP API
- `when` -> `on`, better use for event-expanders
- Removal of special processing of `at`, making `this-target` properly lexically scopeable
- TcpListenError and handling of tcp-listen errors
- SYNDICATE_COLUMNS for pretty-printing of dataspace traces
- Repair driver-support.rkt thread shutdown turn-taking
- Refinements to stream protocols and implementation
- Improvements to syntax location preservation in syntax.rkt
2021-06-17 13:38:30 +02:00
Tony Garnock-Jones
d30c6feeee
Split out experimental "stream" protocols; make tcp.rkt use them; more inertness checks
...
Also, a few other important changes:
- Better printing of entity-ref structs
- Inertness checks on assertion retraction (!) and preventer-disarm
- Correct selection of active facet during dataflow recomputations
- Repair silly omission in turn-assert/dataflow!
2021-06-16 21:44:07 +02:00
Tony Garnock-Jones
3fe5d3a343
Check for EOF even when there are no credits
2021-06-15 14:03:26 +02:00
Tony Garnock-Jones
2b18bb5b36
Fix ordering of credit issue
2021-06-15 13:58:26 +02:00
Tony Garnock-Jones
9451f9886f
Whole-packet flow credit
2021-06-15 12:46:09 +02:00
Tony Garnock-Jones
b64b111a45
Split out assert-control
2021-06-15 12:44:13 +02:00
Tony Garnock-Jones
0b1e9874d1
Treat #:message separately from #:asserted.
...
While in principle messages are "instantaneous" assertions, it invites
confusion to treat them as such in context of `(object)` because
assertions by default spawn nested facets, so it's too easy to
accidentally wrap a message handler in an unwanted facet. Being
explicit about messages means you never get an unwanted facet wrapper.
2021-06-15 12:41:46 +02:00
Tony Garnock-Jones
6c9926cb11
Add ConnectionPeer assertions; rename TcpOutbound -> TcpRemote and TcpInbound -> TcpLocal
2021-06-15 12:37:14 +02:00
Tony Garnock-Jones
4a0e6e0519
actor-group; bug fixes
2021-06-13 07:55:50 +02:00
Tony Garnock-Jones
6546e335ef
Refactor/repair tcp.prs and tcp.rkt
2021-06-11 15:29:12 +02:00
Tony Garnock-Jones
d304d1e87d
Credit-based flow control on tcp driver; line mode
2021-06-11 14:18:53 +02:00
Tony Garnock-Jones
b409063ff2
Handle EPIPE in tcp driver
2021-06-10 16:46:20 +02:00
Tony Garnock-Jones
247fd1b2c0
Introduce `object` and `spawn/link`
2021-06-10 16:21:30 +02:00
Tony Garnock-Jones
2f4525b031
Split out tcp-client.rkt and tcp-echo-server.rkt
2021-06-10 13:35:26 +02:00
Tony Garnock-Jones
11eb0bcd6f
drivers/racket-event.rkt
2021-06-10 13:34:18 +02:00
Tony Garnock-Jones
752bc91991
ActiveSocket-close now gets a string, not an embedded exn
2021-06-10 13:33:16 +02:00
Tony Garnock-Jones
7790923e65
Split out timer-demo.rkt
2021-06-10 13:30:30 +02:00
Tony Garnock-Jones
bd65204760
entity/stop-on-retract
2021-06-10 13:29:19 +02:00
Tony Garnock-Jones
37ca805969
Ambient current-turn
2021-06-10 11:42:07 +02:00
Tony Garnock-Jones
45e8c29976
TCP client driver, and provides
2021-06-10 10:42:59 +02:00
Tony Garnock-Jones
336811c51e
Beginnings of a TCP driver
2021-06-10 10:00:43 +02:00
Tony Garnock-Jones
82648dc0da
Port timer driver from older syndicate/rkt implementation
2021-06-09 23:08:06 +02:00
Tony Garnock-Jones
08c4980025
Move the bulk of the existing implementation out of the way
2021-05-27 10:34:35 +02:00
Tony Garnock-Jones
f269c02c23
Rearrange for independent packages.
2020-04-27 20:27:48 +02:00
Tony Garnock-Jones
921265d2f3
Repair ws-recv usage; requires rfc6455 package v2.0 or newer
2019-05-22 23:45:15 +01:00
Tony Garnock-Jones
cd2d7e428b
Close input/output ports in web.rkt once connection is logically over
2019-05-16 14:58:33 +01:00
Tony Garnock-Jones
c9b62c9a6d
Drain ws-ch in an additional, previously-overlooked case
2019-05-16 12:39:16 +01:00
Tony Garnock-Jones
ae97fb1d1e
Flow-controlled TCP (except in netstack); flow-controlled server/federation messages; fixes federation startup glitching
2019-05-12 13:07:38 +01:00
Tony Garnock-Jones
386a66747e
Tweak logging levels
2019-05-09 11:39:49 +01:00
Tony Garnock-Jones
4fd2c9895c
Remove old, dead code
2019-04-25 12:58:48 +01:00
Tony Garnock-Jones
419bd093d1
Support transformations (e.g. rotation) in the scene prelude
2019-04-25 12:58:30 +01:00