@mark1russell7/machines 0.3.28 → 0.3.29

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -37,7 +37,7 @@ The algebra reads these documents. It gives the closed form of each timer, the f
37
37
  | `UNDICI_RETRY` | `undici-retry-agent` | One request through a `RetryAgent` of undici 8.12.2 | driver | 7 implemented, 1 normative |
38
38
  | `GO_TRANSPORT` | `go-nethttp-transport` | One connection of the `http.Transport` of Go 1.27.2 | driver | 7 implemented |
39
39
  | `PROCEDURES_WS_CLIENT` | `procedures-ws-client` | The WebSocket client of `@procedures/client` 0.22.0 (client 2408cea) | driver | 9 implemented, 1 documented |
40
- | `PROCEDURES_WS_SERVER` | `procedures-ws-server` | The WebSocket server of `@procedures/client` 0.22.0 (client 2408cea) | server | 4 implemented |
40
+ | `PROCEDURES_WS_SERVER` | `procedures-ws-server` | The WebSocket server of `@procedures/client` 0.22.0 (client 2408cea) | server | 5 implemented |
41
41
  | `MONGODB_NODE` | `mongodb-node` | The MongoDB Node driver 7.7.0, for one server of a replica set | driver | 19 implemented |
42
42
  | `MONGOD_REPL` | `mongod-replication` | The replication of mongod 9.0.4: one member of a replica set | server | 29 implemented |
43
43
  | `MONGOD_SESSION` | `mongod-session` | One client connection of mongod 9.0.4 | server | 6 implemented |
@@ -62,6 +62,7 @@ The algebra reads these documents. It gives the closed form of each timer, the f
62
62
  | `CADDY_HTTP2` | `caddy-http2` | Caddy 2.11.7 as an HTTP/2 proxy of gRPC: one connection of a client, its idle close, its replies and its stop | proxy | 12 implemented |
63
63
  | `NGINX_GRPC` | `nginx-grpc` | nginx 1.29.6 as an HTTP/2 proxy of gRPC: one connection of a client, its idle close, the read timer of a call, and a stopped worker | proxy | 12 implemented, 1 documented |
64
64
  | `TRAEFIK_HTTP2` | `traefik-http2` | Traefik 3.7.15 as an HTTP/2 proxy of gRPC: one connection of a client, its idle close, a reload of its dynamic file and its stop | proxy | 10 implemented, 1 observed |
65
+ | `HAPROXY_TCP` | `haproxy-tcp` | HAProxy 3.2.25 in TCP mode: one proxied connection, the idle timeout of each side and the FIN at each timeout | proxy | 13 implemented |
65
66
  | `ISTIO_SIDECAR_OUTBOUND` | `istio-sidecar-outbound` | The client sidecar of Istio 1.31.3: Envoy 1.39.4 between the app and the mesh, its retries, an update of LDS and the SIGKILL | proxy | 31 implemented |
66
67
  | `ISTIO_SIDECAR_INBOUND` | `istio-sidecar-inbound` | The server sidecar of Istio 1.31.3: Envoy 1.39.4 between the mesh and the app, the policy, an update of LDS and the SIGKILL | proxy | 31 implemented |
67
68
  | `PILOT_AGENT` | `pilot-agent` | pilot-agent of Istio 1.31.3: the drain and the SIGKILL of the Envoy of a sidecar at the stop of its pod | proxy | 12 implemented |
package/build/index.d.ts CHANGED
@@ -425,6 +425,25 @@ export declare const CADDY_HTTP2: Machine;
425
425
  */
426
426
  export declare const ENVOY_HTTP2: Machine;
427
427
  //#endregion
428
+ //#region src/proxy/haproxy.d.ts
429
+ /**
430
+ * This document is one connection of HAProxy 3.2.25 in TCP mode, with the configuration of T02:
431
+ * `mode tcp`, `timeout client`, `timeout server`, `option clitcpka` and `option srvtcpka`. It sets
432
+ * no `timeout tunnel`, `timeout client-fin`, `timeout server-fin` or `option independent-streams`.
433
+ *
434
+ * - Each side has one inactivity timer: `timeout client` toward the client, and `timeout server`
435
+ * toward the server. It counts from the last read of bytes from that side, or the last send of
436
+ * bytes to that side.
437
+ * - Thus each byte that goes through resets the two timers. Its read resets the timer of its
438
+ * source, and its send resets the timer of its destination. A WebSocket ping and its pong reset both.
439
+ * - A TCP keepalive probe carries no byte. It resets no timer.
440
+ * - `timeout server` sends a FIN to the client at once. `timeout client` sends a FIN to the server
441
+ * first. The client gets its FIN when the server closes its side.
442
+ * - The clock of HAProxy is in whole ms, read at each wake of its loop. Thus a timer can fire one ms
443
+ * and one step of the loop early or late.
444
+ */
445
+ export declare const HAPROXY_TCP: Machine;
446
+ //#endregion
428
447
  //#region src/proxy/istio.d.ts
429
448
  /** A side of a sidecar is the listener of the connection: outbound from the app, or inbound to the app. */
430
449
  type SidecarSide = "outbound" | "inbound";