From 46bafa950180af6016919944af1a7b6ed7b4eb25 Mon Sep 17 00:00:00 2001 From: Tony Garnock-Jones Date: Sun, 31 Dec 2023 18:14:14 +0100 Subject: [PATCH 01/92] Remove sometimes-inappropriate error recovery on unexpected semicolon. Closes #5 --- packages/compiler/src/syntax/reader.ts | 15 +-------------- 1 file changed, 1 insertion(+), 14 deletions(-) diff --git a/packages/compiler/src/syntax/reader.ts b/packages/compiler/src/syntax/reader.ts index e1b6274..1b9c864 100644 --- a/packages/compiler/src/syntax/reader.ts +++ b/packages/compiler/src/syntax/reader.ts @@ -134,23 +134,10 @@ export class LaxReader implements IterableIterator { case TokenType.SPACE: case TokenType.NEWLINE: case TokenType.ATOM: + this.drop(); if (g === null) { - this.drop(); return t; } - if (t.text === ';') { - while ('(['.indexOf(g.open.text) >= 0) { - this.stack.pop(); - const outer = this.stackTop(); - if (outer === null) { - // do not drop the semicolon here - return finishGroup(g, t.start); - } - outer.items.push(finishGroup(g, t.start)); - g = outer; - } - } - this.drop(); g.items.push(t); break; From c9aab425fe4fc2f0f940ea5458cb4b492496dd6f Mon Sep 17 00:00:00 2001 From: Tony Garnock-Jones Date: Sun, 7 Jan 2024 13:02:01 +0100 Subject: [PATCH 02/92] Facet.wrap --- packages/core/src/runtime/actor.ts | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/packages/core/src/runtime/actor.ts b/packages/core/src/runtime/actor.ts index 6c013eb..2f4d5ff 100644 --- a/packages/core/src/runtime/actor.ts +++ b/packages/core/src/runtime/actor.ts @@ -1,7 +1,7 @@ /// SPDX-License-Identifier: GPL-3.0-or-later /// SPDX-FileCopyrightText: Copyright Ā© 2016-2023 Tony Garnock-Jones -import { IdentitySet, Value, embeddedId, is, fromJS, stringify, Dictionary, KeyedSet } from '@preserves/core'; +import { IdentitySet, Value, embeddedId, is, fromJS, stringify, Dictionary, KeyedSet, Tuple } from '@preserves/core'; import { Cell, Field, Graph } from './dataflow.js'; import { Caveat, runRewrites } from './rewrite.js'; import { ActorSpace } from './space.js'; @@ -181,6 +181,10 @@ export class Facet { this.outbound = initialAssertions; } + wrap>(f: (... args: T) => void): (... args: T) => void { + return (... args) => this.turn(() => f(... args)); + } + turn(a: LocalAction) { Turn.for(this, a); } From 10cb9c1b340398da2627393e32523a2a5ee73bc1 Mon Sep 17 00:00:00 2001 From: Tony Garnock-Jones Date: Sun, 7 Jan 2024 13:02:30 +0100 Subject: [PATCH 03/92] Support use with existing nodes --- packages/html2/src/index.ts | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/packages/html2/src/index.ts b/packages/html2/src/index.ts index 4f5bfae..1f1a76b 100644 --- a/packages/html2/src/index.ts +++ b/packages/html2/src/index.ts @@ -36,9 +36,6 @@ export class Widget implements EventTarget { this.node.remove(); } - field parentField: ParentNode | null = null; - this.parentField = parentField; - const thisTemplate = template(); dataflow { const nodes = this.nodeGenerator(thisTemplate); @@ -52,6 +49,9 @@ export class Widget implements EventTarget { } } + field parentField: ParentNode | null = this._node?.parentNode ?? null; + this.parentField = parentField; + dataflow { const p = this.parentField.value; if (this.node.parentNode !== p) { From 794837f40301223c6f76140cf734b7ec201d7f30 Mon Sep 17 00:00:00 2001 From: Tony Garnock-Jones Date: Sun, 7 Jan 2024 13:02:45 +0100 Subject: [PATCH 04/92] Allow trigger on input as well as change events --- packages/html2/src/index.ts | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/packages/html2/src/index.ts b/packages/html2/src/index.ts index 1f1a76b..0a137c2 100644 --- a/packages/html2/src/index.ts +++ b/packages/html2/src/index.ts @@ -149,7 +149,7 @@ export class ValueWidget extends Widget { _value: Dataflow.Field; _valueAsNumber: Dataflow.Field; - constructor (nodeGenerator: NodeGenerator) { + constructor (nodeGenerator: NodeGenerator, triggerEvent: 'change' | 'input' = 'change') { super(nodeGenerator); field value: string = ''; @@ -165,7 +165,7 @@ export class ValueWidget extends Widget { this._valueAsNumber.value = n?.valueAsNumber ?? NaN; }; - this.on('change', e => readValues(e.target)); + this.on(triggerEvent, e => readValues(e.target)); readValues(this.node); dataflow { this.valueAsNumber = this._valueAsNumber.value; } From 5dd68e87c1e0dba52005113d37965b9e33286f93 Mon Sep 17 00:00:00 2001 From: Tony Garnock-Jones Date: Sat, 3 Feb 2024 15:16:23 +0100 Subject: [PATCH 05/92] Preserves 0.993 lacks float --- schema-bundle.bin | 4 ++-- schemas/dataspacePatterns.prs | 1 - schemas/sturdy.prs | 2 +- 3 files changed, 3 insertions(+), 4 deletions(-) diff --git a/schema-bundle.bin b/schema-bundle.bin index fc747ff..e9d9294 100644 --- a/schema-bundle.bin +++ b/schema-bundle.bin @@ -24,7 +24,7 @@ ByteString ByteString„„“³named³oid³any„„“³named³caveats“³seqof“³refµ³sturdy„³Caveat„„„„„µ±general“³refµ³ gatekeeper„³Route„„„„³StandardTransport“³orµµ±wsUrl“³atom³String„„µ±other³any„„„„³ embeddedType€„„µ³stream„“³schema·³version°³ definitions·³Mode“³orµµ±bytes“³lit³bytes„„µ±lines“³refµ„³LineMode„„µ±packet“³rec“³lit³packet„“³tupleµ“³named³size“³atom³ SignedInteger„„„„„„µ±object“³rec“³lit³object„“³tupleµ“³named³ description³any„„„„„„„³Sink“³orµµ±source“³rec“³lit³source„“³tupleµ“³named³ controller“³embedded“³refµ„³Source„„„„„„„µ± StreamError“³refµ„³ StreamError„„µ±data“³rec“³lit³data„“³tupleµ“³named³payload³any„“³named³mode“³refµ„³Mode„„„„„„µ±eof“³rec“³lit³eof„“³tupleµ„„„„„„³Source“³orµµ±sink“³rec“³lit³sink„“³tupleµ“³named³ -controller“³embedded“³refµ„³Sink„„„„„„„µ± StreamError“³refµ„³ StreamError„„µ±credit“³rec“³lit³credit„“³tupleµ“³named³amount“³refµ„³ CreditAmount„„“³named³mode“³refµ„³Mode„„„„„„„„³LineMode“³orµµ±lf“³lit³lf„„µ±crlf“³lit³crlf„„„„³ StreamError“³rec“³lit³error„“³tupleµ“³named³message“³atom³String„„„„„³ CreditAmount“³orµµ±count“³atom³ SignedInteger„„µ± unbounded“³lit³ unbounded„„„„³StreamConnection“³rec“³lit³stream-connection„“³tupleµ“³named³source“³embedded“³refµ„³Source„„„“³named³sink“³embedded“³refµ„³Sink„„„“³named³spec³any„„„„³StreamListenerError“³rec“³lit³stream-listener-error„“³tupleµ“³named³spec³any„“³named³message“³atom³String„„„„„³StreamListenerReady“³rec“³lit³stream-listener-ready„“³tupleµ“³named³spec³any„„„„„³ embeddedType“³refµ³ EntityRef„³Cap„„„µ³sturdy„“³schema·³version°³ definitions·³Lit“³rec“³lit³lit„“³tupleµ“³named³value³any„„„„³Oid“³atom³ SignedInteger„³Alts“³rec“³lit³or„“³tupleµ“³named³ alternatives“³seqof“³refµ„³Rewrite„„„„„„³PAnd“³rec“³lit³and„“³tupleµ“³named³patterns“³seqof“³refµ„³Pattern„„„„„„³PNot“³rec“³lit³not„“³tupleµ“³named³pattern“³refµ„³Pattern„„„„„³TRef“³rec“³lit³ref„“³tupleµ“³named³binding“³atom³ SignedInteger„„„„„³PAtom“³orµµ±Boolean“³lit³Boolean„„µ±Float“³lit³Float„„µ±Double“³lit³Double„„µ± SignedInteger“³lit³ SignedInteger„„µ±String“³lit³String„„µ± +controller“³embedded“³refµ„³Sink„„„„„„„µ± StreamError“³refµ„³ StreamError„„µ±credit“³rec“³lit³credit„“³tupleµ“³named³amount“³refµ„³ CreditAmount„„“³named³mode“³refµ„³Mode„„„„„„„„³LineMode“³orµµ±lf“³lit³lf„„µ±crlf“³lit³crlf„„„„³ StreamError“³rec“³lit³error„“³tupleµ“³named³message“³atom³String„„„„„³ CreditAmount“³orµµ±count“³atom³ SignedInteger„„µ± unbounded“³lit³ unbounded„„„„³StreamConnection“³rec“³lit³stream-connection„“³tupleµ“³named³source“³embedded“³refµ„³Source„„„“³named³sink“³embedded“³refµ„³Sink„„„“³named³spec³any„„„„³StreamListenerError“³rec“³lit³stream-listener-error„“³tupleµ“³named³spec³any„“³named³message“³atom³String„„„„„³StreamListenerReady“³rec“³lit³stream-listener-ready„“³tupleµ“³named³spec³any„„„„„³ embeddedType“³refµ³ EntityRef„³Cap„„„µ³sturdy„“³schema·³version°³ definitions·³Lit“³rec“³lit³lit„“³tupleµ“³named³value³any„„„„³Oid“³atom³ SignedInteger„³Alts“³rec“³lit³or„“³tupleµ“³named³ alternatives“³seqof“³refµ„³Rewrite„„„„„„³PAnd“³rec“³lit³and„“³tupleµ“³named³patterns“³seqof“³refµ„³Pattern„„„„„„³PNot“³rec“³lit³not„“³tupleµ“³named³pattern“³refµ„³Pattern„„„„„³TRef“³rec“³lit³ref„“³tupleµ“³named³binding“³atom³ SignedInteger„„„„„³PAtom“³orµµ±Boolean“³lit³Boolean„„µ±Double“³lit³Double„„µ± SignedInteger“³lit³ SignedInteger„„µ±String“³lit³String„„µ± ByteString“³lit³ ByteString„„µ±Symbol“³lit³Symbol„„„„³PBind“³rec“³lit³bind„“³tupleµ“³named³pattern“³refµ„³Pattern„„„„„³Caveat“³orµµ±Rewrite“³refµ„³Rewrite„„µ±Alts“³refµ„³Alts„„µ±Reject“³refµ„³Reject„„µ±unknown³any„„„³Reject“³rec“³lit³reject„“³tupleµ“³named³pattern“³refµ„³Pattern„„„„„³Pattern“³orµµ±PDiscard“³refµ„³PDiscard„„µ±PAtom“³refµ„³PAtom„„µ± PEmbedded“³refµ„³ PEmbedded„„µ±PBind“³refµ„³PBind„„µ±PAnd“³refµ„³PAnd„„µ±PNot“³refµ„³PNot„„µ±Lit“³refµ„³Lit„„µ± PCompound“³refµ„³ PCompound„„„„³Rewrite“³rec“³lit³rewrite„“³tupleµ“³named³pattern“³refµ„³Pattern„„“³named³template“³refµ„³Template„„„„„³WireRef“³orµµ±mine“³tupleµ“³lit°„“³named³oid“³refµ„³Oid„„„„„µ±yours“³ tuplePrefixµ“³lit°„“³named³oid“³refµ„³Oid„„„“³named³ attenuation“³seqof“³refµ„³Caveat„„„„„„„³PDiscard“³rec“³lit³_„“³tupleµ„„„³Template“³orµµ± TAttenuate“³refµ„³ @@ -40,5 +40,5 @@ ByteString RunService“³rec“³lit³ run-service„“³tupleµ“³named³ serviceName³any„„„„³ ServiceState“³rec“³lit³ service-state„“³tupleµ“³named³ serviceName³any„“³named³state“³refµ„³State„„„„„³ ServiceObject“³rec“³lit³service-object„“³tupleµ“³named³ serviceName³any„“³named³object³any„„„„³RequireService“³rec“³lit³require-service„“³tupleµ“³named³ serviceName³any„„„„³RestartService“³rec“³lit³restart-service„“³tupleµ“³named³ serviceName³any„„„„³ServiceDependency“³rec“³lit³ depends-on„“³tupleµ“³named³depender³any„“³named³dependee“³refµ„³ ServiceState„„„„„„³ embeddedType“³refµ³ EntityRef„³Cap„„„µ³protocol„“³schema·³version°³ definitions·³Oid“³atom³ SignedInteger„³Sync“³rec“³lit³S„“³tupleµ“³named³peer“³embedded“³lit„„„„„„³Turn“³seqof“³refµ„³ TurnEvent„„³Error“³rec“³lit³error„“³tupleµ“³named³message“³atom³String„„“³named³detail³any„„„„³Event“³orµµ±Assert“³refµ„³Assert„„µ±Retract“³refµ„³Retract„„µ±Message“³refµ„³Message„„µ±Sync“³refµ„³Sync„„„„³Assert“³rec“³lit³A„“³tupleµ“³named³ assertion“³refµ„³ Assertion„„“³named³handle“³refµ„³Handle„„„„„³Handle“³atom³ SignedInteger„³Packet“³orµµ±Turn“³refµ„³Turn„„µ±Error“³refµ„³Error„„µ± Extension“³refµ„³ Extension„„„„³Message“³rec“³lit³M„“³tupleµ“³named³body“³refµ„³ Assertion„„„„„³Retract“³rec“³lit³R„“³tupleµ“³named³handle“³refµ„³Handle„„„„„³ Assertion³any³ Extension“³rec“³named³label³any„“³named³fields“³seqof³any„„„³ TurnEvent“³tupleµ“³named³oid“³refµ„³Oid„„“³named³event“³refµ„³Event„„„„„³ embeddedType€„„µ³ dataspace„“³schema·³version°³ definitions·³Observe“³rec“³lit³Observe„“³tupleµ“³named³pattern“³refµ³dataspacePatterns„³Pattern„„“³named³observer“³embedded³any„„„„„„³ embeddedType“³refµ³ EntityRef„³Cap„„„µ³ gatekeeper„“³schema·³version°³ definitions·³Bind“³rec“³lit³bind„“³tupleµ“³named³ description“³refµ„³ Description„„“³named³target“³embedded³any„„“³named³observer“³refµ„³ BindObserver„„„„„³Step“³rec“³named³stepType“³atom³Symbol„„“³tupleµ“³named³detail³any„„„„³Bound“³orµµ±bound“³rec“³lit³bound„“³tupleµ“³named³pathStep“³refµ„³PathStep„„„„„„µ±Rejected“³refµ„³Rejected„„„„³Route“³rec“³lit³route„“³ tuplePrefixµ“³named³ -transports“³seqof³any„„„“³named³ pathSteps“³seqof“³refµ„³PathStep„„„„„³Resolve“³rec“³lit³resolve„“³tupleµ“³named³step“³refµ„³Step„„“³named³observer“³embedded“³refµ„³Resolved„„„„„„³PathStep“³rec“³named³stepType“³atom³Symbol„„“³tupleµ“³named³detail³any„„„„³Rejected“³rec“³lit³rejected„“³tupleµ“³named³detail³any„„„„³Resolved“³orµµ±accepted“³rec“³lit³accepted„“³tupleµ“³named³responderSession“³embedded³any„„„„„„µ±Rejected“³refµ„³Rejected„„„„³ Description“³rec“³named³stepType“³atom³Symbol„„“³tupleµ“³named³detail³any„„„„³ ResolvePath“³rec“³lit³ resolve-path„“³tupleµ“³named³route“³refµ„³Route„„“³named³addr³any„“³named³control“³embedded“³refµ„³TransportControl„„„“³named³resolved“³refµ„³Resolved„„„„„³ BindObserver“³orµµ±present“³embedded“³refµ„³Bound„„„µ±absent“³lit€„„„„³ForceDisconnect“³rec“³lit³force-disconnect„“³tupleµ„„„³ResolvedPathStep“³rec“³lit³ path-step„“³tupleµ“³named³origin“³embedded“³refµ„³Resolve„„„“³named³pathStep“³refµ„³PathStep„„“³named³resolved“³refµ„³Resolved„„„„„³TransportControl“³refµ„³ForceDisconnect„³TransportConnection“³rec“³lit³connect-transport„“³tupleµ“³named³addr³any„“³named³control“³embedded“³refµ„³TransportControl„„„“³named³resolved“³refµ„³Resolved„„„„„„³ embeddedType“³refµ³ EntityRef„³Cap„„„µ³transportAddress„“³schema·³version°³ definitions·³Tcp“³rec“³lit³tcp„“³tupleµ“³named³host“³atom³String„„“³named³port“³atom³ SignedInteger„„„„„³Unix“³rec“³lit³unix„“³tupleµ“³named³path“³atom³String„„„„„³Stdio“³rec“³lit³stdio„“³tupleµ„„„³ WebSocket“³rec“³lit³ws„“³tupleµ“³named³url“³atom³String„„„„„„³ embeddedType€„„µ³dataspacePatterns„“³schema·³version°³ definitions·³DLit“³rec“³lit³lit„“³tupleµ“³named³value“³refµ„³AnyAtom„„„„„³DBind“³rec“³lit³bind„“³tupleµ“³named³pattern“³refµ„³Pattern„„„„„³AnyAtom“³orµµ±bool“³atom³Boolean„„µ±float“³atom³Float„„µ±double“³atom³Double„„µ±int“³atom³ SignedInteger„„µ±string“³atom³String„„µ±bytes“³atom³ +transports“³seqof³any„„„“³named³ pathSteps“³seqof“³refµ„³PathStep„„„„„³Resolve“³rec“³lit³resolve„“³tupleµ“³named³step“³refµ„³Step„„“³named³observer“³embedded“³refµ„³Resolved„„„„„„³PathStep“³rec“³named³stepType“³atom³Symbol„„“³tupleµ“³named³detail³any„„„„³Rejected“³rec“³lit³rejected„“³tupleµ“³named³detail³any„„„„³Resolved“³orµµ±accepted“³rec“³lit³accepted„“³tupleµ“³named³responderSession“³embedded³any„„„„„„µ±Rejected“³refµ„³Rejected„„„„³ Description“³rec“³named³stepType“³atom³Symbol„„“³tupleµ“³named³detail³any„„„„³ ResolvePath“³rec“³lit³ resolve-path„“³tupleµ“³named³route“³refµ„³Route„„“³named³addr³any„“³named³control“³embedded“³refµ„³TransportControl„„„“³named³resolved“³refµ„³Resolved„„„„„³ BindObserver“³orµµ±present“³embedded“³refµ„³Bound„„„µ±absent“³lit€„„„„³ForceDisconnect“³rec“³lit³force-disconnect„“³tupleµ„„„³ResolvedPathStep“³rec“³lit³ path-step„“³tupleµ“³named³origin“³embedded“³refµ„³Resolve„„„“³named³pathStep“³refµ„³PathStep„„“³named³resolved“³refµ„³Resolved„„„„„³TransportControl“³refµ„³ForceDisconnect„³TransportConnection“³rec“³lit³connect-transport„“³tupleµ“³named³addr³any„“³named³control“³embedded“³refµ„³TransportControl„„„“³named³resolved“³refµ„³Resolved„„„„„„³ embeddedType“³refµ³ EntityRef„³Cap„„„µ³transportAddress„“³schema·³version°³ definitions·³Tcp“³rec“³lit³tcp„“³tupleµ“³named³host“³atom³String„„“³named³port“³atom³ SignedInteger„„„„„³Unix“³rec“³lit³unix„“³tupleµ“³named³path“³atom³String„„„„„³Stdio“³rec“³lit³stdio„“³tupleµ„„„³ WebSocket“³rec“³lit³ws„“³tupleµ“³named³url“³atom³String„„„„„„³ embeddedType€„„µ³dataspacePatterns„“³schema·³version°³ definitions·³DLit“³rec“³lit³lit„“³tupleµ“³named³value“³refµ„³AnyAtom„„„„„³DBind“³rec“³lit³bind„“³tupleµ“³named³pattern“³refµ„³Pattern„„„„„³AnyAtom“³orµµ±bool“³atom³Boolean„„µ±double“³atom³Double„„µ±int“³atom³ SignedInteger„„µ±string“³atom³String„„µ±bytes“³atom³ ByteString„„µ±symbol“³atom³Symbol„„µ±embedded“³embedded³any„„„„³Pattern“³orµµ±DDiscard“³refµ„³DDiscard„„µ±DBind“³refµ„³DBind„„µ±DLit“³refµ„³DLit„„µ± DCompound“³refµ„³ DCompound„„„„³DDiscard“³rec“³lit³_„“³tupleµ„„„³ DCompound“³orµµ±rec“³rec“³lit³rec„“³tupleµ“³named³label³any„“³named³fields“³seqof“³refµ„³Pattern„„„„„„„µ±arr“³rec“³lit³arr„“³tupleµ“³named³items“³seqof“³refµ„³Pattern„„„„„„„µ±dict“³rec“³lit³dict„“³tupleµ“³named³entries“³dictof³any“³refµ„³Pattern„„„„„„„„„„³ embeddedType“³refµ³ EntityRef„³Cap„„„„„ \ No newline at end of file diff --git a/schemas/dataspacePatterns.prs b/schemas/dataspacePatterns.prs index 5c55d11..11b73cc 100644 --- a/schemas/dataspacePatterns.prs +++ b/schemas/dataspacePatterns.prs @@ -13,7 +13,6 @@ DCompound = AnyAtom = / @bool bool - / @float float / @double double / @int int / @string string diff --git a/schemas/sturdy.prs b/schemas/sturdy.prs index 20e8eb0..5e8b4eb 100644 --- a/schemas/sturdy.prs +++ b/schemas/sturdy.prs @@ -51,7 +51,7 @@ Lit = . Pattern = PDiscard / PAtom / PEmbedded / PBind / PAnd / PNot / Lit / PCompound . PDiscard = <_>. -PAtom = =Boolean / =Float / =Double / =SignedInteger / =String / =ByteString / =Symbol . +PAtom = =Boolean / =Double / =SignedInteger / =String / =ByteString / =Symbol . PEmbedded = =Embedded . PBind = . PAnd = . From 85cfabf63d7d6faa6b79c4a394e60ad37be02339 Mon Sep 17 00:00:00 2001 From: Tony Garnock-Jones Date: Sat, 3 Feb 2024 15:58:35 +0100 Subject: [PATCH 06/92] Integrate preserves 0.993 --- package.json | 2 +- packages/browser-stdenv/package.json | 4 +- packages/core/package.json | 6 +- packages/core/src/runtime/rewrite.ts | 7 +- packages/create/template/package.json | 4 +- packages/fs/package.json | 4 +- packages/ws-relay/package.json | 2 +- yarn.lock | 372 +++++++++++++------------- 8 files changed, 198 insertions(+), 203 deletions(-) diff --git a/package.json b/package.json index 77011cd..f18c341 100644 --- a/package.json +++ b/package.json @@ -6,7 +6,7 @@ "packages/*/examples/*/" ], "devDependencies": { - "@preserves/core": "0.992.4", + "@preserves/core": "0.993.0", "@rollup/plugin-node-resolve": "^13.0", "@types/jest": "^27.0", "@types/node": "^14", diff --git a/packages/browser-stdenv/package.json b/packages/browser-stdenv/package.json index 2efe231..191771e 100644 --- a/packages/browser-stdenv/package.json +++ b/packages/browser-stdenv/package.json @@ -19,8 +19,8 @@ "veryclean": "yarn run clean && rm -rf node_modules" }, "dependencies": { - "@preserves/core": "0.992.4", - "@preserves/schema": "0.992.5", + "@preserves/core": "0.993.0", + "@preserves/schema": "0.993.0", "@syndicate-lang/compiler": "^0.18.0", "@syndicate-lang/core": "^0.23.0", "@syndicate-lang/html2": "^0.24.2", diff --git a/packages/core/package.json b/packages/core/package.json index b48fe34..647fbfc 100644 --- a/packages/core/package.json +++ b/packages/core/package.json @@ -29,11 +29,11 @@ "types": "lib/index.d.ts", "author": "Tony Garnock-Jones ", "devDependencies": { - "@preserves/core": "0.992.4", - "@preserves/schema-cli": "0.992.5" + "@preserves/core": "0.993.0", + "@preserves/schema-cli": "0.993.0" }, "peerDependencies": { - "@preserves/core": "0.992.4" + "@preserves/core": "0.993.0" }, "dependencies": { "salty-crypto": "0.3.1" diff --git a/packages/core/src/runtime/rewrite.ts b/packages/core/src/runtime/rewrite.ts index 4c27c7b..bbf35db 100644 --- a/packages/core/src/runtime/rewrite.ts +++ b/packages/core/src/runtime/rewrite.ts @@ -2,7 +2,7 @@ /// SPDX-FileCopyrightText: Copyright Ā© 2016-2023 Tony Garnock-Jones import { Turn } from "./actor.js"; -import { Bytes, Dictionary, DoubleFloat, embed, IdentityMap, is, isEmbedded, Record, SingleFloat, Tuple, stringify } from "@preserves/core"; +import { Bytes, Dictionary, DoubleFloat, embed, IdentityMap, is, isEmbedded, Record, Tuple, stringify } from "@preserves/core"; import type { Assertion, Handle, Ref } from "./actor.js"; import type { SturdyValue } from "../transport/sturdy.js"; @@ -39,7 +39,6 @@ export function match(p: Pattern, v: Assertion): Bindings | null { case 'Boolean': return typeof v === 'boolean'; case 'ByteString': return Bytes.isBytes(v); case 'Double': return DoubleFloat.isDouble(v); - case 'Float': return SingleFloat.isSingle(v); case 'SignedInteger': return typeof v === 'number'; case 'String': return typeof v === 'string'; case 'Symbol': return typeof v === 'symbol'; @@ -281,10 +280,6 @@ export function pDouble(): Pattern { return Pattern.PAtom(PAtom.Double()); } -export function pFloat(): Pattern { - return Pattern.PAtom(PAtom.Float()); -} - export function pBoolean(): Pattern { return Pattern.PAtom(PAtom.Boolean()); } diff --git a/packages/create/template/package.json b/packages/create/template/package.json index dfe770f..5e61454 100644 --- a/packages/create/template/package.json +++ b/packages/create/template/package.json @@ -3,7 +3,7 @@ "version": "0.0.0", "license": "GPL-3.0+", "devDependencies": { - "@preserves/schema-cli": "0.992.5", + "@preserves/schema-cli": "0.993.0", "@syndicate-lang/ts-plugin": "*", "@syndicate-lang/tsc": "*", "rollup": "^2.60", @@ -12,7 +12,7 @@ "typescript-language-server": "^3.0" }, "dependencies": { - "@preserves/core": "0.992.4", + "@preserves/core": "0.993.0", "@syndicate-lang/core": "*", "@syndicate-lang/html": "*", "@syndicate-lang/ws-relay": "*" diff --git a/packages/fs/package.json b/packages/fs/package.json index f1dfe98..1b91cfb 100644 --- a/packages/fs/package.json +++ b/packages/fs/package.json @@ -27,7 +27,7 @@ "syndicate-fs": "./bin/syndicate-fs.js" }, "peerDependencies": { - "@preserves/core": "0.992.4" + "@preserves/core": "0.993.0" }, "dependencies": { "@syndicate-lang/core": "^0.23.0", @@ -35,7 +35,7 @@ "chokidar": "^3.5.3" }, "devDependencies": { - "@preserves/schema-cli": "0.992.5", + "@preserves/schema-cli": "0.993.0", "@syndicate-lang/ts-plugin": "^0.24.0", "@syndicate-lang/tsc": "^0.24.0" } diff --git a/packages/ws-relay/package.json b/packages/ws-relay/package.json index dfe379d..a9de172 100644 --- a/packages/ws-relay/package.json +++ b/packages/ws-relay/package.json @@ -25,7 +25,7 @@ "types": "lib/index.d.ts", "author": "Tony Garnock-Jones ", "peerDependencies": { - "@preserves/core": "0.992.4" + "@preserves/core": "0.993.0" }, "dependencies": { "@syndicate-lang/core": "^0.23.0", diff --git a/yarn.lock b/yarn.lock index d03acf3..75821c5 100644 --- a/yarn.lock +++ b/yarn.lock @@ -10,58 +10,58 @@ "@jridgewell/gen-mapping" "^0.3.0" "@jridgewell/trace-mapping" "^0.3.9" -"@babel/code-frame@^7.0.0", "@babel/code-frame@^7.10.4", "@babel/code-frame@^7.12.13", "@babel/code-frame@^7.22.13", "@babel/code-frame@^7.23.4": - version "7.23.4" - resolved "https://registry.yarnpkg.com/@babel/code-frame/-/code-frame-7.23.4.tgz#03ae5af150be94392cb5c7ccd97db5a19a5da6aa" - integrity sha512-r1IONyb6Ia+jYR2vvIDhdWdlTGhqbBoFqLTQidzZ4kepUFH15ejXvFHxCVbtl7BOXIudsIubf4E81xeA3h3IXA== +"@babel/code-frame@^7.0.0", "@babel/code-frame@^7.10.4", "@babel/code-frame@^7.12.13", "@babel/code-frame@^7.23.5": + version "7.23.5" + resolved "https://registry.yarnpkg.com/@babel/code-frame/-/code-frame-7.23.5.tgz#9009b69a8c602293476ad598ff53e4562e15c244" + integrity sha512-CgH3s1a96LipHCmSUmYFPwY7MNx8C3avkq7i4Wl3cfa662ldtUe4VM1TPXX70pfmrlWTb6jLqTYrZyT2ZTJBgA== dependencies: "@babel/highlight" "^7.23.4" chalk "^2.4.2" -"@babel/compat-data@^7.22.9": - version "7.23.3" - resolved "https://registry.yarnpkg.com/@babel/compat-data/-/compat-data-7.23.3.tgz#3febd552541e62b5e883a25eb3effd7c7379db11" - integrity sha512-BmR4bWbDIoFJmJ9z2cZ8Gmm2MXgEDgjdWgpKmKWUt54UGFJdlj31ECtbaDvCG/qVdG3AQ1SfpZEs01lUFbzLOQ== +"@babel/compat-data@^7.23.5": + version "7.23.5" + resolved "https://registry.yarnpkg.com/@babel/compat-data/-/compat-data-7.23.5.tgz#ffb878728bb6bdcb6f4510aa51b1be9afb8cfd98" + integrity sha512-uU27kfDRlhfKl+w1U6vp16IuvSLtjAxdArVXPa9BvLkrr7CYIsxH5adpHObeAGY/41+syctUWOZ140a2Rvkgjw== "@babel/core@^7.1.0", "@babel/core@^7.12.3", "@babel/core@^7.7.2", "@babel/core@^7.8.0": - version "7.23.3" - resolved "https://registry.yarnpkg.com/@babel/core/-/core-7.23.3.tgz#5ec09c8803b91f51cc887dedc2654a35852849c9" - integrity sha512-Jg+msLuNuCJDyBvFv5+OKOUjWMZgd85bKjbICd3zWrKAo+bJ49HJufi7CQE0q0uR8NGyO6xkCACScNqyjHSZew== + version "7.23.9" + resolved "https://registry.yarnpkg.com/@babel/core/-/core-7.23.9.tgz#b028820718000f267870822fec434820e9b1e4d1" + integrity sha512-5q0175NOjddqpvvzU+kDiSOAk4PfdO6FvwCWoQ6RO7rTzEe8vlo+4HVfcnAREhD4npMs0e9uZypjTwzZPCf/cw== dependencies: "@ampproject/remapping" "^2.2.0" - "@babel/code-frame" "^7.22.13" - "@babel/generator" "^7.23.3" - "@babel/helper-compilation-targets" "^7.22.15" + "@babel/code-frame" "^7.23.5" + "@babel/generator" "^7.23.6" + "@babel/helper-compilation-targets" "^7.23.6" "@babel/helper-module-transforms" "^7.23.3" - "@babel/helpers" "^7.23.2" - "@babel/parser" "^7.23.3" - "@babel/template" "^7.22.15" - "@babel/traverse" "^7.23.3" - "@babel/types" "^7.23.3" + "@babel/helpers" "^7.23.9" + "@babel/parser" "^7.23.9" + "@babel/template" "^7.23.9" + "@babel/traverse" "^7.23.9" + "@babel/types" "^7.23.9" convert-source-map "^2.0.0" debug "^4.1.0" gensync "^1.0.0-beta.2" json5 "^2.2.3" semver "^6.3.1" -"@babel/generator@^7.23.3", "@babel/generator@^7.23.4", "@babel/generator@^7.7.2": - version "7.23.4" - resolved "https://registry.yarnpkg.com/@babel/generator/-/generator-7.23.4.tgz#4a41377d8566ec18f807f42962a7f3551de83d1c" - integrity sha512-esuS49Cga3HcThFNebGhlgsrVLkvhqvYDTzgjfFFlHJcIfLe5jFmRRfCQ1KuBfc4Jrtn3ndLgKWAKjBE+IraYQ== +"@babel/generator@^7.23.6", "@babel/generator@^7.7.2": + version "7.23.6" + resolved "https://registry.yarnpkg.com/@babel/generator/-/generator-7.23.6.tgz#9e1fca4811c77a10580d17d26b57b036133f3c2e" + integrity sha512-qrSfCYxYQB5owCmGLbl8XRpX1ytXlpueOb0N0UmQwA073KZxejgQTzAmJezxvpwQD9uGtK2shHdi55QT+MbjIw== dependencies: - "@babel/types" "^7.23.4" + "@babel/types" "^7.23.6" "@jridgewell/gen-mapping" "^0.3.2" "@jridgewell/trace-mapping" "^0.3.17" jsesc "^2.5.1" -"@babel/helper-compilation-targets@^7.22.15": - version "7.22.15" - resolved "https://registry.yarnpkg.com/@babel/helper-compilation-targets/-/helper-compilation-targets-7.22.15.tgz#0698fc44551a26cf29f18d4662d5bf545a6cfc52" - integrity sha512-y6EEzULok0Qvz8yyLkCvVX+02ic+By2UdOhylwUOvOn9dvYc9mKICJuuU1n1XBI02YWsNsnrY1kc6DVbjcXbtw== +"@babel/helper-compilation-targets@^7.23.6": + version "7.23.6" + resolved "https://registry.yarnpkg.com/@babel/helper-compilation-targets/-/helper-compilation-targets-7.23.6.tgz#4d79069b16cbcf1461289eccfbbd81501ae39991" + integrity sha512-9JB548GZoQVmzrFgp8o7KxdgkTGm6xs9DW0o/Pim72UDjzr5ObUQ6ZzYPqA+g9OTS2bBQoctLJrky0RDCAWRgQ== dependencies: - "@babel/compat-data" "^7.22.9" - "@babel/helper-validator-option" "^7.22.15" - browserslist "^4.21.9" + "@babel/compat-data" "^7.23.5" + "@babel/helper-validator-option" "^7.23.5" + browserslist "^4.22.2" lru-cache "^5.1.1" semver "^6.3.1" @@ -132,19 +132,19 @@ resolved "https://registry.yarnpkg.com/@babel/helper-validator-identifier/-/helper-validator-identifier-7.22.20.tgz#c4ae002c61d2879e724581d96665583dbc1dc0e0" integrity sha512-Y4OZ+ytlatR8AI+8KZfKuL5urKp7qey08ha31L8b3BwewJAoJamTzyvxPR/5D+KkdJCGPq/+8TukHBlY10FX9A== -"@babel/helper-validator-option@^7.22.15": - version "7.22.15" - resolved "https://registry.yarnpkg.com/@babel/helper-validator-option/-/helper-validator-option-7.22.15.tgz#694c30dfa1d09a6534cdfcafbe56789d36aba040" - integrity sha512-bMn7RmyFjY/mdECUbgn9eoSY4vqvacUnS9i9vGAGttgFWesO6B4CYWA7XlpbWgBt71iv/hfbPlynohStqnu5hA== +"@babel/helper-validator-option@^7.23.5": + version "7.23.5" + resolved "https://registry.yarnpkg.com/@babel/helper-validator-option/-/helper-validator-option-7.23.5.tgz#907a3fbd4523426285365d1206c423c4c5520307" + integrity sha512-85ttAOMLsr53VgXkTbkx8oA6YTfT4q7/HzXSLEYmjcSTJPMPQtvq1BD79Byep5xMUYbGRzEpDsjUf3dyp54IKw== -"@babel/helpers@^7.23.2": - version "7.23.4" - resolved "https://registry.yarnpkg.com/@babel/helpers/-/helpers-7.23.4.tgz#7d2cfb969aa43222032193accd7329851facf3c1" - integrity sha512-HfcMizYz10cr3h29VqyfGL6ZWIjTwWfvYBMsBVGwpcbhNGe3wQ1ZXZRPzZoAHhd9OqHadHqjQ89iVKINXnbzuw== +"@babel/helpers@^7.23.9": + version "7.23.9" + resolved "https://registry.yarnpkg.com/@babel/helpers/-/helpers-7.23.9.tgz#c3e20bbe7f7a7e10cb9b178384b4affdf5995c7d" + integrity sha512-87ICKgU5t5SzOT7sBMfCOZQ2rHjRU+Pcb9BoILMYz600W6DkVRLFBPwQ18gwUVvggqXivaUakpnxWQGbpywbBQ== dependencies: - "@babel/template" "^7.22.15" - "@babel/traverse" "^7.23.4" - "@babel/types" "^7.23.4" + "@babel/template" "^7.23.9" + "@babel/traverse" "^7.23.9" + "@babel/types" "^7.23.9" "@babel/highlight@^7.23.4": version "7.23.4" @@ -155,10 +155,10 @@ chalk "^2.4.2" js-tokens "^4.0.0" -"@babel/parser@^7.1.0", "@babel/parser@^7.14.7", "@babel/parser@^7.20.7", "@babel/parser@^7.22.15", "@babel/parser@^7.23.3", "@babel/parser@^7.23.4": - version "7.23.4" - resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.23.4.tgz#409fbe690c333bb70187e2de4021e1e47a026661" - integrity sha512-vf3Xna6UEprW+7t6EtOmFpHNAuxw3xqPZghy+brsnusscJRW5BMUzzHZc5ICjULee81WeUV2jjakG09MDglJXQ== +"@babel/parser@^7.1.0", "@babel/parser@^7.14.7", "@babel/parser@^7.20.7", "@babel/parser@^7.23.9": + version "7.23.9" + resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.23.9.tgz#7b903b6149b0f8fa7ad564af646c4c38a77fc44b" + integrity sha512-9tcKgqKbs3xGJ+NtKF2ndOBBLVwPjl1SHxPQkd36r3Dlirw3xWUeGaTbqr7uGZcTaxkVNwc+03SVP7aCdWrTlA== "@babel/plugin-syntax-async-generators@^7.8.4": version "7.8.4" @@ -251,35 +251,35 @@ dependencies: "@babel/helper-plugin-utils" "^7.22.5" -"@babel/template@^7.22.15", "@babel/template@^7.3.3": - version "7.22.15" - resolved "https://registry.yarnpkg.com/@babel/template/-/template-7.22.15.tgz#09576efc3830f0430f4548ef971dde1350ef2f38" - integrity sha512-QPErUVm4uyJa60rkI73qneDacvdvzxshT3kksGqlGWYdOTIUOwJ7RDUL8sGqslY1uXWSL6xMFKEXDS3ox2uF0w== +"@babel/template@^7.22.15", "@babel/template@^7.23.9", "@babel/template@^7.3.3": + version "7.23.9" + resolved "https://registry.yarnpkg.com/@babel/template/-/template-7.23.9.tgz#f881d0487cba2828d3259dcb9ef5005a9731011a" + integrity sha512-+xrD2BWLpvHKNmX2QbpdpsBaWnRxahMwJjO+KZk2JOElj5nSmKezyS1B4u+QbHMTX69t4ukm6hh9lsYQ7GHCKA== dependencies: - "@babel/code-frame" "^7.22.13" - "@babel/parser" "^7.22.15" - "@babel/types" "^7.22.15" + "@babel/code-frame" "^7.23.5" + "@babel/parser" "^7.23.9" + "@babel/types" "^7.23.9" -"@babel/traverse@^7.23.3", "@babel/traverse@^7.23.4", "@babel/traverse@^7.7.2": - version "7.23.4" - resolved "https://registry.yarnpkg.com/@babel/traverse/-/traverse-7.23.4.tgz#c2790f7edf106d059a0098770fe70801417f3f85" - integrity sha512-IYM8wSUwunWTB6tFC2dkKZhxbIjHoWemdK+3f8/wq8aKhbUscxD5MX72ubd90fxvFknaLPeGw5ycU84V1obHJg== +"@babel/traverse@^7.23.9", "@babel/traverse@^7.7.2": + version "7.23.9" + resolved "https://registry.yarnpkg.com/@babel/traverse/-/traverse-7.23.9.tgz#2f9d6aead6b564669394c5ce0f9302bb65b9d950" + integrity sha512-I/4UJ9vs90OkBtY6iiiTORVMyIhJ4kAVmsKo9KFc8UOxMeUfi2hvtIBsET5u9GizXE6/GFSuKCTNfgCswuEjRg== dependencies: - "@babel/code-frame" "^7.23.4" - "@babel/generator" "^7.23.4" + "@babel/code-frame" "^7.23.5" + "@babel/generator" "^7.23.6" "@babel/helper-environment-visitor" "^7.22.20" "@babel/helper-function-name" "^7.23.0" "@babel/helper-hoist-variables" "^7.22.5" "@babel/helper-split-export-declaration" "^7.22.6" - "@babel/parser" "^7.23.4" - "@babel/types" "^7.23.4" - debug "^4.1.0" + "@babel/parser" "^7.23.9" + "@babel/types" "^7.23.9" + debug "^4.3.1" globals "^11.1.0" -"@babel/types@^7.0.0", "@babel/types@^7.20.7", "@babel/types@^7.22.15", "@babel/types@^7.22.5", "@babel/types@^7.23.0", "@babel/types@^7.23.3", "@babel/types@^7.23.4", "@babel/types@^7.3.3": - version "7.23.4" - resolved "https://registry.yarnpkg.com/@babel/types/-/types-7.23.4.tgz#7206a1810fc512a7f7f7d4dace4cb4c1c9dbfb8e" - integrity sha512-7uIFwVYpoplT5jp/kVv6EF93VaJ8H+Yn5IczYiaAi98ajzjfoZfslet/e0sLh+wVBjb2qqIut1b0S26VSafsSQ== +"@babel/types@^7.0.0", "@babel/types@^7.20.7", "@babel/types@^7.22.15", "@babel/types@^7.22.5", "@babel/types@^7.23.0", "@babel/types@^7.23.6", "@babel/types@^7.23.9", "@babel/types@^7.3.3": + version "7.23.9" + resolved "https://registry.yarnpkg.com/@babel/types/-/types-7.23.9.tgz#1dd7b59a9a2b5c87f8b41e52770b5ecbf492e002" + integrity sha512-dQjSq/7HaSjRM43FFGnv5keM2HsxpmyV1PfaSVm0nzzjwwTmjOe6J4bC8e3+pTEIgHaHj+1ZlLThRJ2auc/w1Q== dependencies: "@babel/helper-string-parser" "^7.23.4" "@babel/helper-validator-identifier" "^7.22.20" @@ -533,9 +533,9 @@ "@jridgewell/sourcemap-codec" "^1.4.10" "@jridgewell/trace-mapping@^0.3.17", "@jridgewell/trace-mapping@^0.3.9": - version "0.3.20" - resolved "https://registry.yarnpkg.com/@jridgewell/trace-mapping/-/trace-mapping-0.3.20.tgz#72e45707cf240fa6b081d0366f8265b0cd10197f" - integrity sha512-R8LcPeWZol2zR8mmH3JeKQ6QRCFb7XgUhV9ZlGhHLGyg4wpPiPZNQOOWhFZhxKw8u//yTbNGI42Bx/3paXEQ+Q== + version "0.3.22" + resolved "https://registry.yarnpkg.com/@jridgewell/trace-mapping/-/trace-mapping-0.3.22.tgz#72a621e5de59f5f1ef792d0793a82ee20f645e4c" + integrity sha512-Wf963MzWtA2sjrNt+g18IAln9lKnlRp+K2eH4jjIoF1wYeq3aMREpG09xhlhdzS0EjwU7qmUJYangWa+151vZw== dependencies: "@jridgewell/resolve-uri" "^3.1.0" "@jridgewell/sourcemap-codec" "^1.4.14" @@ -1403,30 +1403,30 @@ dependencies: "@octokit/openapi-types" "^12.11.0" -"@preserves/core@0.992.4", "@preserves/core@^0.992.4": - version "0.992.4" - resolved "https://registry.yarnpkg.com/@preserves/core/-/core-0.992.4.tgz#a3b187596cca3b68bd92f26167285b5732d47d85" - integrity sha512-rz9LMiT08JSe7OrWuuejXrp5it9+usI9JadyBzySK5BlKt+tEkijm6GPWqcdzV2mWmd3rgfYS3heM2tJjpUNcA== +"@preserves/core@0.993.0", "@preserves/core@^0.993.0": + version "0.993.0" + resolved "https://registry.yarnpkg.com/@preserves/core/-/core-0.993.0.tgz#68209a962bfdd30794c95257982de2152fb9db86" + integrity sha512-Qet/scZNvyGhLwzEWjVeeFCrtrsbW6arAL4zHez9MOTxncvKwEW2Q7vMOM25845aFyqQgWaUPvrL6HaUi07K1w== -"@preserves/schema-cli@0.992.5": - version "0.992.5" - resolved "https://registry.yarnpkg.com/@preserves/schema-cli/-/schema-cli-0.992.5.tgz#b284aad3a84c5c72e26a155527182715ec82e87e" - integrity sha512-y2nBaExvd9uUKk4PZbqMjo8gSalkNSkLosQgscIIFTtlF9Vd3rANcCAZ60sDe6EjWT+BhLmDSXUf94bigs49Ew== +"@preserves/schema-cli@0.993.0": + version "0.993.0" + resolved "https://registry.yarnpkg.com/@preserves/schema-cli/-/schema-cli-0.993.0.tgz#73fa331211cbef2c02801610dac998730f6b9e69" + integrity sha512-fkpGjFA9c/VVFkN31QrcaxrdQ8pRcaeFP/60XIID5uZBNpuJ+51IyWykQBcJVxdxtuCaP2PRzwu9gPi2qxnZkg== dependencies: - "@preserves/core" "^0.992.4" - "@preserves/schema" "^0.992.5" + "@preserves/core" "^0.993.0" + "@preserves/schema" "^0.993.0" chalk "^4.1" chokidar "^3.5" commander "^7.2" glob "^7.1" minimatch "^3.0" -"@preserves/schema@0.992.5", "@preserves/schema@^0.992.5": - version "0.992.5" - resolved "https://registry.yarnpkg.com/@preserves/schema/-/schema-0.992.5.tgz#82b44fbaaac8f8ec22c1bd0a02c69bbba07c3800" - integrity sha512-7M74AqFjpYBDC/Emh+T+Ox4eGtkA3T/nAnfoDwC0e4z7r4YGkh6wgEZXKj0K7JD1xN4d1DiMFSW0TCSTSO00KQ== +"@preserves/schema@0.993.0", "@preserves/schema@^0.993.0": + version "0.993.0" + resolved "https://registry.yarnpkg.com/@preserves/schema/-/schema-0.993.0.tgz#b90d03de90763f97e8ad061ae66d87b12d7e6799" + integrity sha512-Wng97KvmcKuI1MjcQ9pCmmsB+drH2IHchcTRPUq97CL5p2OgNDUn2hktlE0skTKdwir8sGBBmlfL1uZhxvXPbA== dependencies: - "@preserves/core" "^0.992.4" + "@preserves/core" "^0.993.0" "@rollup/plugin-node-resolve@^13.0": version "13.3.0" @@ -1500,9 +1500,9 @@ "@types/babel__traverse" "*" "@types/babel__generator@*": - version "7.6.7" - resolved "https://registry.yarnpkg.com/@types/babel__generator/-/babel__generator-7.6.7.tgz#a7aebf15c7bc0eb9abd638bdb5c0b8700399c9d0" - integrity sha512-6Sfsq+EaaLrw4RmdFWE9Onp63TOUue71AWb4Gpa6JxzgTYtimbM086WnYTy2U67AofR++QKCo08ZP6pwx8YFHQ== + version "7.6.8" + resolved "https://registry.yarnpkg.com/@types/babel__generator/-/babel__generator-7.6.8.tgz#f836c61f48b1346e7d2b0d93c6dacc5b9535d3ab" + integrity sha512-ASsj+tpEDsEiFr1arWrlN6V3mdfjRMZt6LtK/Vp/kreFLnr5QH5+DhvD5nINYZXzwJvXeGq+05iUXcAzVrqWtw== dependencies: "@babel/types" "^7.0.0" @@ -1515,9 +1515,9 @@ "@babel/types" "^7.0.0" "@types/babel__traverse@*", "@types/babel__traverse@^7.0.4", "@types/babel__traverse@^7.0.6": - version "7.20.4" - resolved "https://registry.yarnpkg.com/@types/babel__traverse/-/babel__traverse-7.20.4.tgz#ec2c06fed6549df8bc0eb4615b683749a4a92e1b" - integrity sha512-mSM/iKUk5fDDrEV/e83qY+Cr3I1+Q3qqTuEn++HAWYjEa1+NxZr6CNrcJGf2ZTnq4HoFGC3zaTPZTobCzCFukA== + version "7.20.5" + resolved "https://registry.yarnpkg.com/@types/babel__traverse/-/babel__traverse-7.20.5.tgz#7b7502be0aa80cc4ef22978846b983edaafcd4dd" + integrity sha512-WXCyOcRtH37HAUkpXhUduaxdm82b4GSlyTqajXviN4EfiuPgNYR109xMCKvpl6zPIpua0DGlMEDCq+g8EdoheQ== dependencies: "@babel/types" "^7.20.7" @@ -1584,9 +1584,9 @@ integrity sha512-hov8bUuiLiyFPGyFPE1lwWhmzYbirOXQNNo40+y3zow8aFVTeyn3VWL0VFFfdNddA8S4Vf0Tc062rzyNr7Paag== "@types/node@*": - version "20.10.0" - resolved "https://registry.yarnpkg.com/@types/node/-/node-20.10.0.tgz#16ddf9c0a72b832ec4fcce35b8249cf149214617" - integrity sha512-D0WfRmU9TQ8I9PFx9Yc+EBHw+vSpIub4IDvQivcp26PtPrdMGAq5SDcpXEo/epqa/DXotVpekHiLNTg3iaKXBQ== + version "20.11.16" + resolved "https://registry.yarnpkg.com/@types/node/-/node-20.11.16.tgz#4411f79411514eb8e2926f036c86c9f0e4ec6708" + integrity sha512-gKb0enTmRCzXSSUJDq6/sPcqrfCv2mkkG6Jt/clpn5eiCbKTY+SgZUxo+p8ZKMof5dCp9vHQUAB7wOUTod22wQ== dependencies: undici-types "~5.26.4" @@ -1690,9 +1690,9 @@ acorn-walk@^7.1.1: integrity sha512-OPdCF6GsMIP+Az+aWfAAOEt2/+iVDKE7oy6lJ098aoe59oAmK76qV6Gw60SbZ8jHuG2wH058GF4pLFbYamYrVA== acorn-walk@^8.1.1: - version "8.3.0" - resolved "https://registry.yarnpkg.com/acorn-walk/-/acorn-walk-8.3.0.tgz#2097665af50fd0cf7a2dfccd2b9368964e66540f" - integrity sha512-FS7hV565M5l1R08MXqo8odwMTB02C2UqzB17RVgu9EyuYFBqJZ3/ZY97sQD5FewVu1UyDFc1yztUDrAwT0EypA== + version "8.3.2" + resolved "https://registry.yarnpkg.com/acorn-walk/-/acorn-walk-8.3.2.tgz#7703af9415f1b6db9315d6895503862e231d34aa" + integrity sha512-cjkyv4OtNCIeqhHrfS81QWXoCBPExR/J62oyEqepVw8WaQeSqpW2uhuLPh1m9eWhDuOo/jUXVTlifvesOWp/4A== acorn@^7.1.1: version "7.4.1" @@ -1700,9 +1700,9 @@ acorn@^7.1.1: integrity sha512-nQyp0o1/mNdbTO1PO6kHkwSrmgZ0MT/jCCpNiwbUjGoRN4dlBhqJtoQuCnEOKzgTVwg0ZWiCoQy6SxMebQVh8A== acorn@^8.2.4, acorn@^8.4.1, acorn@^8.8.2: - version "8.11.2" - resolved "https://registry.yarnpkg.com/acorn/-/acorn-8.11.2.tgz#ca0d78b51895be5390a5903c5b3bdcdaf78ae40b" - integrity sha512-nc0Axzp/0FILLEVsm4fNwLCwMttvhEI263QtVPQcbpfZZ3ts0hLsZGOpE6czNlid7CJ9MlyH8reXkpsf3YUY4w== + version "8.11.3" + resolved "https://registry.yarnpkg.com/acorn/-/acorn-8.11.3.tgz#71e0b14e13a4ec160724b38fb7b0f233b1b81d7a" + integrity sha512-Y9rRfJG5jcKOE0CLisYbojUjIrIEE7AGMzA/Sm4BslANhbS+cDMpgBdcPT91oJ7OuJ9hYJBx59RjbhxVnrF8Xg== add-stream@^1.0.0: version "1.0.0" @@ -1904,10 +1904,10 @@ atob@^2.1.2: resolved "https://registry.yarnpkg.com/atob/-/atob-2.1.2.tgz#6d9517eb9e030d2436666651e86bd9f6f13533c9" integrity sha512-Wm6ukoaOGJi/73p/cl2GvLjTI5JM1k/O14isD73YML8StrH/7/lRFgmg8nICZgD3bZZvjwCGxtMOD3wWNAu8cg== -available-typed-arrays@^1.0.5: - version "1.0.5" - resolved "https://registry.yarnpkg.com/available-typed-arrays/-/available-typed-arrays-1.0.5.tgz#92f95616501069d07d10edb2fc37d3e1c65123b7" - integrity sha512-DMD0KiN46eipeziST1LPP/STfDU0sufISXmjSgvVsoU2tqxctQeASejWcfNtxYKqETM1UxQ8sp2OrSBWpHY6sw== +available-typed-arrays@^1.0.5, available-typed-arrays@^1.0.6: + version "1.0.6" + resolved "https://registry.yarnpkg.com/available-typed-arrays/-/available-typed-arrays-1.0.6.tgz#ac812d8ce5a6b976d738e1c45f08d0b00bc7d725" + integrity sha512-j1QzY8iPNPG4o4xmO3ptzpRxTciqD3MgEHtifP/YnJpIo58Xu+ne4BejlbkuaLfXn/nz6HFiw29bLpj2PNMdGg== aws-sign2@~0.7.0: version "0.7.0" @@ -2040,14 +2040,14 @@ browser-process-hrtime@^1.0.0: resolved "https://registry.yarnpkg.com/browser-process-hrtime/-/browser-process-hrtime-1.0.0.tgz#3c9b4b7d782c8121e56f10106d84c0d0ffc94626" integrity sha512-9o5UecI3GhkpM6DrXr69PblIuWxPKk9Y0jHBRhdocZ2y7YECBFCsHm79Pr3OyR2AvjhDkabFJaDJMYRazHgsow== -browserslist@^4.21.9: - version "4.22.1" - resolved "https://registry.yarnpkg.com/browserslist/-/browserslist-4.22.1.tgz#ba91958d1a59b87dab6fed8dfbcb3da5e2e9c619" - integrity sha512-FEVc202+2iuClEhZhrWy6ZiAcRLvNMyYcxZ8raemul1DYVOVdFsbqckWLdsixQZCpJlwe77Z3UTalE7jsjnKfQ== +browserslist@^4.22.2: + version "4.22.3" + resolved "https://registry.yarnpkg.com/browserslist/-/browserslist-4.22.3.tgz#299d11b7e947a6b843981392721169e27d60c5a6" + integrity sha512-UAp55yfwNv0klWNapjs/ktHoguxuQNGnOzxYmfnXIS+8AsRDZkSDxg7R1AX3GKzn078SBI5dzwzj/Yx0Or0e3A== dependencies: - caniuse-lite "^1.0.30001541" - electron-to-chromium "^1.4.535" - node-releases "^2.0.13" + caniuse-lite "^1.0.30001580" + electron-to-chromium "^1.4.648" + node-releases "^2.0.14" update-browserslist-db "^1.0.13" bs-logger@0.x: @@ -2123,7 +2123,7 @@ cacache@^15.0.5, cacache@^15.2.0: tar "^6.0.2" unique-filename "^1.1.1" -call-bind@^1.0.0, call-bind@^1.0.2, call-bind@^1.0.4, call-bind@^1.0.5: +call-bind@^1.0.0, call-bind@^1.0.2, call-bind@^1.0.5: version "1.0.5" resolved "https://registry.yarnpkg.com/call-bind/-/call-bind-1.0.5.tgz#6fa2b7845ce0ea49bf4d8b9ef64727a2c2e2e513" integrity sha512-C3nQxfFZxFRVoJoGKKI8y3MOEo129NQ+FgQ08iye+Mk4zNZZGdjfs06bVTr+DBSlA66Q2VEcMki/cUCP4SercQ== @@ -2156,10 +2156,10 @@ camelcase@^6.2.0: resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-6.3.0.tgz#5685b95eb209ac9c0c177467778c9c84df58ba9a" integrity sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA== -caniuse-lite@^1.0.30001541: - version "1.0.30001564" - resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30001564.tgz#eaa8bbc58c0cbccdcb7b41186df39dd2ba591889" - integrity sha512-DqAOf+rhof+6GVx1y+xzbFPeOumfQnhYzVnZD6LAXijR77yPtm9mfOcqOnT3mpnJiZVT+kwLAFnRlZcIz+c6bg== +caniuse-lite@^1.0.30001580: + version "1.0.30001583" + resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30001583.tgz#abb2970cc370801dc7e27bf290509dc132cfa390" + integrity sha512-acWTYaha8xfhA/Du/z4sNZjHUWjkiuoAi2LM+T/aL+kemKQgPT1xBb/YKjlQ0Qo8gvbHsGNplrEJ+9G3gL7i4Q== caseless@~0.12.0: version "0.12.0" @@ -2557,7 +2557,7 @@ dateformat@^3.0.0: resolved "https://registry.yarnpkg.com/dateformat/-/dateformat-3.0.3.tgz#a6e37499a4d9a9cf85ef5872044d62901c9889ae" integrity sha512-jyCETtSl3VMZMWeRo7iY1FL19ges1t55hMo5yaam4Jrsm5EPL89UQkoQRyiI+Yf4k8r2ZpdngkV8hr1lIdjb3Q== -debug@4, debug@^4.1.0, debug@^4.1.1, debug@^4.3.3: +debug@4, debug@^4.1.0, debug@^4.1.1, debug@^4.3.1, debug@^4.3.3: version "4.3.4" resolved "https://registry.yarnpkg.com/debug/-/debug-4.3.4.tgz#1319f6579357f2338d3337d2cdd4914bb5dcc865" integrity sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ== @@ -2618,7 +2618,7 @@ define-data-property@^1.0.1, define-data-property@^1.1.1: gopd "^1.0.1" has-property-descriptors "^1.0.0" -define-properties@^1.1.3, define-properties@^1.1.4, define-properties@^1.2.0: +define-properties@^1.1.3, define-properties@^1.2.0, define-properties@^1.2.1: version "1.2.1" resolved "https://registry.yarnpkg.com/define-properties/-/define-properties-1.2.1.tgz#10781cc616eb951a80a034bafcaa7377f6af2b6c" integrity sha512-8QmQKqEASLd5nx0U1B1okLElbUuuttJ/AnYmRXbbbGDWh6uS208EjD4Xqq/I9wK7u0v6O08XhTWnt5XtEbR6Dg== @@ -2730,10 +2730,10 @@ ecc-jsbn@~0.1.1: jsbn "~0.1.0" safer-buffer "^2.1.0" -electron-to-chromium@^1.4.535: - version "1.4.594" - resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.4.594.tgz#f69f207fba80735a44a988df42f3f439115d0515" - integrity sha512-xT1HVAu5xFn7bDfkjGQi9dNpMqGchUkebwf1GL7cZN32NSwwlHRPMSDJ1KN6HkS0bWUtndbSQZqvpQftKG2uFQ== +electron-to-chromium@^1.4.648: + version "1.4.656" + resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.4.656.tgz#b374fb7cab9b782a5bc967c0ce0e19826186b9c9" + integrity sha512-9AQB5eFTHyR3Gvt2t/NwR0le2jBSUNwCnMbUCejFWHD+so4tH40/dRLgoE+jxlPeWS43XJewyvCv+I8LPMl49Q== emittery@^0.8.1: version "0.8.1" @@ -2758,9 +2758,9 @@ env-paths@^2.2.0: integrity sha512-+h1lkLKhZMTYjog1VEpJNG7NZJWcuc2DDk/qsqSTRRCOXiLjeQ1d1/udrUGhqMxUgAlwKNZ0cf2uqan5GLuS2A== envinfo@^7.7.4: - version "7.11.0" - resolved "https://registry.yarnpkg.com/envinfo/-/envinfo-7.11.0.tgz#c3793f44284a55ff8c82faf1ffd91bc6478ea01f" - integrity sha512-G9/6xF1FPbIw0TtalAMaVPpiq2aDEuKLXM314jPVAO9r2fo2a4BLqMNkmRS7O/xPPZ+COAhGIz3ETvHEV3eUcg== + version "7.11.1" + resolved "https://registry.yarnpkg.com/envinfo/-/envinfo-7.11.1.tgz#2ffef77591057081b0129a8fd8cf6118da1b94e1" + integrity sha512-8PiZgZNIB4q/Lw4AhOvAfB/ityHAd2bli3lESSWmWSzSsl5dKpy5N1d1Rfkd2teq/g9xN90lc6o98DOjMeYHpg== err-code@^2.0.2: version "2.0.3" @@ -2974,9 +2974,9 @@ fast-json-stable-stringify@2.x, fast-json-stable-stringify@^2.0.0: integrity sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw== fastq@^1.6.0: - version "1.15.0" - resolved "https://registry.yarnpkg.com/fastq/-/fastq-1.15.0.tgz#d04d07c6a2a68fe4599fea8d2e103a937fae6b3a" - integrity sha512-wBrocU2LCXXa+lWBt8RoIRD89Fi8OdABODa/kEnyeyjS5aZO5/GNvI5sEINADqP/h8M29UHTHUb53sUu5Ihqdw== + version "1.17.0" + resolved "https://registry.yarnpkg.com/fastq/-/fastq-1.17.0.tgz#ca5e1a90b5e68f97fc8b61330d5819b82f5fab03" + integrity sha512-zGygtijUMT7jnk3h26kUms3BkSDp4IfIKjmnqI2tvx6nuBfiF1UqOxbnLfzdv+apBy+53oaImsKtMw/xYbW+1w== dependencies: reusify "^1.0.4" @@ -3139,7 +3139,7 @@ get-caller-file@^2.0.5: resolved "https://registry.yarnpkg.com/get-caller-file/-/get-caller-file-2.0.5.tgz#4f94412a82db32f36e3b0b9741f8a97feb031f7e" integrity sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg== -get-intrinsic@^1.0.2, get-intrinsic@^1.1.1, get-intrinsic@^1.1.3, get-intrinsic@^1.2.0, get-intrinsic@^1.2.1, get-intrinsic@^1.2.2: +get-intrinsic@^1.0.2, get-intrinsic@^1.1.1, get-intrinsic@^1.1.3, get-intrinsic@^1.2.1, get-intrinsic@^1.2.2: version "1.2.2" resolved "https://registry.yarnpkg.com/get-intrinsic/-/get-intrinsic-1.2.2.tgz#281b7622971123e1ef4b3c90fd7539306da93f3b" integrity sha512-0gSo4ml/0j98Y3lngkFEot/zhiCeWsbYIlZ+uZOVgzLyLaUw7wxUL+nCTP0XJvJg1AXulJRI3UJi8GsbDuxdGA== @@ -3338,7 +3338,7 @@ has-flag@^4.0.0: resolved "https://registry.yarnpkg.com/has-flag/-/has-flag-4.0.0.tgz#944771fd9c81c81265c4d6941860da06bb59479b" integrity sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ== -has-property-descriptors@^1.0.0: +has-property-descriptors@^1.0.0, has-property-descriptors@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/has-property-descriptors/-/has-property-descriptors-1.0.1.tgz#52ba30b6c5ec87fd89fa574bc1c39125c6f65340" integrity sha512-VsX8eaIewvas0xnvinAe9bw4WfIeODpGYikiWYLH+dma0Jw6KHYqWiWfhQlgOVK8D6PvjubK5Uc4P0iIhIcNVg== @@ -3355,12 +3355,12 @@ has-symbols@^1.0.2, has-symbols@^1.0.3: resolved "https://registry.yarnpkg.com/has-symbols/-/has-symbols-1.0.3.tgz#bb7b2c4349251dce87b125f7bdf874aa7c8b39f8" integrity sha512-l3LCuF6MgDNwTDKkdYGEihYjt5pRPbEg46rtlmnSPlUbgmB8LOIrKJbYYFBSbnPaJexMKtiPO8hmeRjRz2Td+A== -has-tostringtag@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/has-tostringtag/-/has-tostringtag-1.0.0.tgz#7e133818a7d394734f941e73c3d3f9291e658b25" - integrity sha512-kFjcSNhnlGV1kyoGk7OXKSawH5JOb/LzUc5w9B02hOTO0dfFRjbHQKvg1d6cf3HbeUmtU9VbbV3qzZ2Teh97WQ== +has-tostringtag@^1.0.0, has-tostringtag@^1.0.1: + version "1.0.2" + resolved "https://registry.yarnpkg.com/has-tostringtag/-/has-tostringtag-1.0.2.tgz#2cdc42d40bef2e5b4eeab7c01a73c54ce7ab5abc" + integrity sha512-NqADB8VjPFLM2V0VvHUewwwsw0ZWBaIdgo+ieHtK3hasLz4qeCRjYcqfB6AQrBggRKppKF8L52/VqdVsO47Dlw== dependencies: - has-symbols "^1.0.2" + has-symbols "^1.0.3" has-unicode@^2.0.0, has-unicode@^2.0.1: version "2.0.1" @@ -3463,9 +3463,9 @@ ignore-walk@^3.0.3: minimatch "^3.0.4" ignore@^5.2.0: - version "5.3.0" - resolved "https://registry.yarnpkg.com/ignore/-/ignore-5.3.0.tgz#67418ae40d34d6999c95ff56016759c718c82f78" - integrity sha512-g7dmpshy+gD7mh88OC9NwSGTKoc3kyLAZQRU1mt53Aw/vnvfXnbC+F/7F7QoYVKbV+KNvJx8wArewKy1vXMtlg== + version "5.3.1" + resolved "https://registry.yarnpkg.com/ignore/-/ignore-5.3.1.tgz#5073e554cd42c5b33b394375f538b8593e34d4ef" + integrity sha512-5Fytz/IraMjqpwfd34ke28PTVMjZjJG2MPn5t7OE4eUCUNf8BAa7b5WUS9/Qvr6mwOQS7Mk6vdsMno5he+T8Xw== import-fresh@^3.2.1: version "3.3.0" @@ -3563,13 +3563,12 @@ ip@^2.0.0: integrity sha512-WKa+XuLG1A1R0UWhl2+1XQSi+fZWMsYKffMZTTYsiZaUD8k2yDAj5atimTUD2TZkyCkNEeYE5NhFZmupOGtjYQ== is-array-buffer@^3.0.1, is-array-buffer@^3.0.2: - version "3.0.2" - resolved "https://registry.yarnpkg.com/is-array-buffer/-/is-array-buffer-3.0.2.tgz#f2653ced8412081638ecb0ebbd0c41c6e0aecbbe" - integrity sha512-y+FyyR/w8vfIRq4eQcM1EYgSTnmHXPqaF+IgzgraytCFq5Xh8lllDVmAZolPJiZttZLeFSINPYMaEJ7/vWUa1w== + version "3.0.4" + resolved "https://registry.yarnpkg.com/is-array-buffer/-/is-array-buffer-3.0.4.tgz#7a1f92b3d61edd2bc65d24f130530ea93d7fae98" + integrity sha512-wcjaerHw0ydZwfhiKbXJWLDY8A7yV7KhjQOpb83hGgGfId/aQa4TOvwyzn2PuswW2gPCYEL/nEAiSVpdOj1lXw== dependencies: call-bind "^1.0.2" - get-intrinsic "^1.2.0" - is-typed-array "^1.1.10" + get-intrinsic "^1.2.1" is-arrayish@^0.2.1: version "0.2.1" @@ -3768,11 +3767,11 @@ is-text-path@^1.0.1: text-extensions "^1.0.0" is-typed-array@^1.1.10, is-typed-array@^1.1.12, is-typed-array@^1.1.9: - version "1.1.12" - resolved "https://registry.yarnpkg.com/is-typed-array/-/is-typed-array-1.1.12.tgz#d0bab5686ef4a76f7a73097b95470ab199c57d4a" - integrity sha512-Z14TF2JNG8Lss5/HMqt0//T9JeHXttXy5pH/DBU4vi98ozO2btxzq9MwYDZYnKwU8nRsz/+GVFVRDq3DkVuSPg== + version "1.1.13" + resolved "https://registry.yarnpkg.com/is-typed-array/-/is-typed-array-1.1.13.tgz#d6c5ca56df62334959322d7d7dd1cca50debe229" + integrity sha512-uZ25/bUAlUY5fR4OKT4rZQEBrzQWYV9ZJYGGsUmEJ6thodVJ1HX64ePQ6Z0qPWP+m+Uq6e9UugrE38jeYsDSMw== dependencies: - which-typed-array "^1.1.11" + which-typed-array "^1.1.14" is-typedarray@^1.0.0, is-typedarray@~1.0.0: version "1.0.0" @@ -4890,10 +4889,10 @@ node-int64@^0.4.0: resolved "https://registry.yarnpkg.com/node-int64/-/node-int64-0.4.0.tgz#87a9065cdb355d3182d8f94ce11188b825c68a3b" integrity sha512-O5lz91xSOeoXP6DulyHfllpq+Eg00MWitZIbtPfoSEvqIHdl5gfcY6hYzDWnj0qD5tz52PI08u9qUvSVeUBeHw== -node-releases@^2.0.13: - version "2.0.13" - resolved "https://registry.yarnpkg.com/node-releases/-/node-releases-2.0.13.tgz#d5ed1627c23e3461e819b02e57b75e4899b1c81d" - integrity sha512-uYr7J37ae/ORWdZeQ1xxMJe3NtdmqMC/JZK+geofDrkLUApKRHPd18/TxtBOJ4A0/+uUIliorNrfYV6s1b02eQ== +node-releases@^2.0.14: + version "2.0.14" + resolved "https://registry.yarnpkg.com/node-releases/-/node-releases-2.0.14.tgz#2ffb053bceb8b2be8495ece1ab6ce600c4461b0b" + integrity sha512-y10wOWt8yZpqXmOgRo77WaHEmhYQYGNA6y421PKsKYWEK8aW+cqAphborZDhqfyKrbZEN92CN1X2KbafY2s7Yw== nopt@^4.0.1: version "4.0.3" @@ -5076,12 +5075,12 @@ object-keys@^1.1.1: integrity sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA== object.assign@^4.1.4: - version "4.1.4" - resolved "https://registry.yarnpkg.com/object.assign/-/object.assign-4.1.4.tgz#9673c7c7c351ab8c4d0b516f4343ebf4dfb7799f" - integrity sha512-1mxKf0e58bvyjSCtKYY4sRe9itRk3PJpquJOjeIkz885CczcI4IvJJDLPS72oowuSh+pBxUFROpX+TU++hxhZQ== + version "4.1.5" + resolved "https://registry.yarnpkg.com/object.assign/-/object.assign-4.1.5.tgz#3a833f9ab7fdb80fc9e8d2300c803d216d8fdbb0" + integrity sha512-byy+U7gp+FVwmyzKPYhW2h5l3crpmGsxl7X2s8y43IgxvG4g3QZ6CffDtsNQy1WsmZpQbO+ybo0AlW7TY6DcBQ== dependencies: - call-bind "^1.0.2" - define-properties "^1.1.4" + call-bind "^1.0.5" + define-properties "^1.2.1" has-symbols "^1.0.3" object-keys "^1.1.1" @@ -5790,12 +5789,12 @@ rxjs@^6.6.0: tslib "^1.9.0" safe-array-concat@^1.0.0, safe-array-concat@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/safe-array-concat/-/safe-array-concat-1.0.1.tgz#91686a63ce3adbea14d61b14c99572a8ff84754c" - integrity sha512-6XbUAseYE2KtOuGueyeobCySj9L4+66Tn6KQMOPQJrAJEowYKW/YR/MGJZl7FdydUdaFu4LYyDZjxf4/Nmo23Q== + version "1.1.0" + resolved "https://registry.yarnpkg.com/safe-array-concat/-/safe-array-concat-1.1.0.tgz#8d0cae9cb806d6d1c06e08ab13d847293ebe0692" + integrity sha512-ZdQ0Jeb9Ofti4hbt5lX3T2JcAamT9hfzYU1MNB+z/jaEbB6wfFfPIR/zEORmZqobkCCJhSjodobH6WHNmJ97dg== dependencies: - call-bind "^1.0.2" - get-intrinsic "^1.2.1" + call-bind "^1.0.5" + get-intrinsic "^1.2.2" has-symbols "^1.0.3" isarray "^2.0.5" @@ -5810,12 +5809,12 @@ safe-buffer@~5.1.0, safe-buffer@~5.1.1: integrity sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g== safe-regex-test@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/safe-regex-test/-/safe-regex-test-1.0.0.tgz#793b874d524eb3640d1873aad03596db2d4f2295" - integrity sha512-JBUUzyOgEwXQY1NuPtvcj/qcBDbDmEvWufhlnXZIm75DEHp+afM1r1ujJpJsV/gSM4t59tpDyPi1sd6ZaPFfsA== + version "1.0.2" + resolved "https://registry.yarnpkg.com/safe-regex-test/-/safe-regex-test-1.0.2.tgz#3ba32bdb3ea35f940ee87e5087c60ee786c3f6c5" + integrity sha512-83S9w6eFq12BBIJYvjMux6/dkirb8+4zJRA9cxNBVb7Wq5fJBW+Xze48WqR8pxua7bDuAaaAxtVVd4Idjp1dBQ== dependencies: - call-bind "^1.0.2" - get-intrinsic "^1.1.3" + call-bind "^1.0.5" + get-intrinsic "^1.2.2" is-regex "^1.1.4" "safer-buffer@>= 2.1.2 < 3", "safer-buffer@>= 2.1.2 < 3.0.0", safer-buffer@^2.0.2, safer-buffer@^2.1.0, safer-buffer@~2.1.0: @@ -5865,14 +5864,15 @@ set-blocking@~2.0.0: integrity sha512-KiKBS8AnWGEyLzofFfmvKwpdPzqiy16LvQfK3yv/fVH7Bj13/wl3JSR1J+rfgRE9q7xUJK4qvgS8raSOeLUehw== set-function-length@^1.1.1: - version "1.1.1" - resolved "https://registry.yarnpkg.com/set-function-length/-/set-function-length-1.1.1.tgz#4bc39fafb0307224a33e106a7d35ca1218d659ed" - integrity sha512-VoaqjbBJKiWtg4yRcKBQ7g7wnGnLV3M8oLvVWwOk2PdYY6PEFegR1vezXR0tw6fZGF9csVakIRjrJiy2veSBFQ== + version "1.2.0" + resolved "https://registry.yarnpkg.com/set-function-length/-/set-function-length-1.2.0.tgz#2f81dc6c16c7059bda5ab7c82c11f03a515ed8e1" + integrity sha512-4DBHDoyHlM1IRPGYcoxexgh67y4ueR53FKV1yyxwFMY7aCqcN/38M1+SwZ/qJQ8iLv7+ck385ot4CcisOAPT9w== dependencies: define-data-property "^1.1.1" - get-intrinsic "^1.2.1" + function-bind "^1.1.2" + get-intrinsic "^1.2.2" gopd "^1.0.1" - has-property-descriptors "^1.0.0" + has-property-descriptors "^1.0.1" set-function-name@^2.0.0: version "2.0.1" @@ -6016,9 +6016,9 @@ spdx-correct@^3.0.0: spdx-license-ids "^3.0.0" spdx-exceptions@^2.1.0: - version "2.3.0" - resolved "https://registry.yarnpkg.com/spdx-exceptions/-/spdx-exceptions-2.3.0.tgz#3f28ce1a77a00372683eade4a433183527a2163d" - integrity sha512-/tTrYOC7PPI1nUAgx34hUpqXuyJG+DTHJTnIULG4rDygi4xu/tfgmq1e1cIRwRzwZgo4NLySi+ricLkZkw4i5A== + version "2.4.0" + resolved "https://registry.yarnpkg.com/spdx-exceptions/-/spdx-exceptions-2.4.0.tgz#c07a4ede25b16e4f78e6707bbd84b15a45c19c1b" + integrity sha512-hcjppoJ68fhxA/cjbN4T8N6uCUejN8yFw69ttpqtBeCbF3u13n7mb31NB9jKwGTTWWnt9IbRA/mf1FprYS8wfw== spdx-expression-parse@^3.0.0: version "3.0.1" @@ -6302,9 +6302,9 @@ terminal-link@^2.0.0: supports-hyperlinks "^2.0.0" terser@^5.0.0: - version "5.24.0" - resolved "https://registry.yarnpkg.com/terser/-/terser-5.24.0.tgz#4ae50302977bca4831ccc7b4fef63a3c04228364" - integrity sha512-ZpGR4Hy3+wBEzVEnHvstMvqpD/nABNelQn/z2r0fjVWGQsN3bpOLzQlqDxmb4CDZnXq5lpjnQ+mHQLAOpfM5iw== + version "5.27.0" + resolved "https://registry.yarnpkg.com/terser/-/terser-5.27.0.tgz#70108689d9ab25fef61c4e93e808e9fd092bf20c" + integrity sha512-bi1HRwVRskAjheeYl291n3JC4GgO/Ty4z1nVs5AAsmonJulGxpSektecnNedrwK9C7vpvVtcX3cw00VSLt7U2A== dependencies: "@jridgewell/source-map" "^0.3.3" acorn "^8.8.2" @@ -6450,9 +6450,9 @@ ts-node-dev@^1.1: tsconfig "^7.0.0" ts-node@^10.4: - version "10.9.1" - resolved "https://registry.yarnpkg.com/ts-node/-/ts-node-10.9.1.tgz#e73de9102958af9e1f0b168a6ff320e25adcff4b" - integrity sha512-NtVysVPkxxrwFGUUxGYhfux8k78pQB3JqYBXlLRZgdGUqTO5wU/UyHop5p70iEbGhB7q5KmiZiU0Y3KlJrScEw== + version "10.9.2" + resolved "https://registry.yarnpkg.com/ts-node/-/ts-node-10.9.2.tgz#70f021c9e185bccdca820e26dc413805c101c71f" + integrity sha512-f0FFpIdcHgn8zcPSbf1dRevwt047YMnaiJM3u2w2RewrB+fob/zePZcrOyQoLMMO7aBIddLcQIEK5dYjkLnGrQ== dependencies: "@cspotcode/source-map-support" "^0.8.0" "@tsconfig/node10" "^1.0.7" @@ -6839,16 +6839,16 @@ which-boxed-primitive@^1.0.2: is-string "^1.0.5" is-symbol "^1.0.3" -which-typed-array@^1.1.11, which-typed-array@^1.1.13: - version "1.1.13" - resolved "https://registry.yarnpkg.com/which-typed-array/-/which-typed-array-1.1.13.tgz#870cd5be06ddb616f504e7b039c4c24898184d36" - integrity sha512-P5Nra0qjSncduVPEAr7xhoF5guty49ArDTwzJ/yNuPIbZppyRxFQsRCWrocxIY+CnMVG+qfbU2FmDKyvSGClow== +which-typed-array@^1.1.13, which-typed-array@^1.1.14: + version "1.1.14" + resolved "https://registry.yarnpkg.com/which-typed-array/-/which-typed-array-1.1.14.tgz#1f78a111aee1e131ca66164d8bdc3ab062c95a06" + integrity sha512-VnXFiIW8yNn9kIHN88xvZ4yOWchftKDsRJ8fEPacX/wl1lOvBrhsJ/OeJCXq7B0AaijRuqgzSKalJoPk+D8MPg== dependencies: - available-typed-arrays "^1.0.5" - call-bind "^1.0.4" + available-typed-arrays "^1.0.6" + call-bind "^1.0.5" for-each "^0.3.3" gopd "^1.0.1" - has-tostringtag "^1.0.0" + has-tostringtag "^1.0.1" which@^1.3.1: version "1.3.1" From c9a52ebe39906786505b638c98f155469c4f5409 Mon Sep 17 00:00:00 2001 From: Tony Garnock-Jones Date: Sat, 3 Feb 2024 15:59:22 +0100 Subject: [PATCH 07/92] New year --- packages/browser-stdenv/boot.js | 2 +- packages/compiler/rollup.config.js | 2 +- packages/compiler/src/compiler/codegen.ts | 2 +- packages/compiler/src/compiler/grammar.ts | 2 +- packages/compiler/src/compiler/index.ts | 2 +- packages/compiler/src/index.ts | 2 +- packages/compiler/src/syntax/codewriter.ts | 2 +- packages/compiler/src/syntax/index.ts | 2 +- packages/compiler/src/syntax/list.ts | 2 +- packages/compiler/src/syntax/matcher.ts | 2 +- packages/compiler/src/syntax/position.ts | 2 +- packages/compiler/src/syntax/reader.ts | 2 +- packages/compiler/src/syntax/scanner.ts | 2 +- packages/compiler/src/syntax/span.ts | 2 +- packages/compiler/src/syntax/template.ts | 2 +- packages/compiler/src/syntax/tokens.ts | 2 +- packages/compiler/src/syntax/vlq.ts | 2 +- packages/compiler/syndicate-browser-compiler.js | 2 +- packages/core/examples/box-and-client.js | 2 +- packages/core/examples/box-and-client.ts | 2 +- packages/core/jest.config.ts | 2 +- packages/core/rollup.config.js | 2 +- packages/core/src/index.ts | 2 +- packages/core/src/runtime/actor.ts | 2 +- packages/core/src/runtime/bag.ts | 2 +- packages/core/src/runtime/dataflow.ts | 2 +- packages/core/src/runtime/dataspace.ts | 2 +- packages/core/src/runtime/mapset.ts | 2 +- packages/core/src/runtime/pattern.ts | 2 +- packages/core/src/runtime/quasivalue.ts | 2 +- packages/core/src/runtime/randomid.ts | 2 +- packages/core/src/runtime/rewrite.ts | 2 +- packages/core/src/runtime/skeleton.ts | 2 +- packages/core/src/runtime/space.ts | 2 +- packages/core/src/runtime/stack.ts | 2 +- packages/core/src/runtime/supervise.ts | 2 +- packages/core/src/runtime/task.ts | 2 +- packages/core/src/schemas.ts | 2 +- packages/core/src/transport/cryptography.ts | 2 +- packages/core/src/transport/protocol.ts | 2 +- packages/core/src/transport/relay.ts | 2 +- packages/core/src/transport/sturdy.ts | 2 +- packages/core/stubs/crypto.js | 2 +- packages/core/test/bag.test.ts | 2 +- packages/core/test/dataflow.test.ts | 2 +- packages/core/test/test-utils.ts | 2 +- packages/create/src/create.ts | 2 +- packages/create/template/rollup.config.js | 2 +- packages/create/template/src/index.ts | 2 +- packages/fs/bin/syndicate-fs.js | 2 +- packages/fs/src/index.ts | 2 +- packages/html/rollup.config.js | 2 +- packages/html/src/html.ts | 2 +- packages/html/src/index.ts | 2 +- packages/html/src/protocol.ts | 2 +- packages/html2/rollup.config.js | 2 +- packages/html2/src/html.ts | 2 +- packages/html2/src/index.ts | 2 +- packages/loader/src/index.ts | 2 +- packages/service/src/example.ts | 2 +- packages/service/src/index.ts | 2 +- packages/syndicatec/bin/syndicate-maptool.js | 2 +- packages/syndicatec/bin/syndicatec.js | 2 +- packages/syndicatec/src/cli.ts | 2 +- packages/syndicatec/src/maptool.ts | 2 +- packages/syndicatec/src/util.ts | 2 +- packages/timer/rollup.config.js | 2 +- packages/timer/src/index.ts | 2 +- packages/ts-plugin/src/index.ts | 2 +- packages/tsc/bin/syndicate-tsc.js | 2 +- packages/tsc/src/tsc.ts | 2 +- packages/ws-relay/rollup.config.js | 2 +- packages/ws-relay/src/index.ts | 2 +- 73 files changed, 73 insertions(+), 73 deletions(-) mode change 100755 => 100644 packages/fs/bin/syndicate-fs.js mode change 100755 => 100644 packages/syndicatec/bin/syndicate-maptool.js mode change 100755 => 100644 packages/syndicatec/bin/syndicatec.js mode change 100755 => 100644 packages/tsc/bin/syndicate-tsc.js diff --git a/packages/browser-stdenv/boot.js b/packages/browser-stdenv/boot.js index 5dce07a..2339d84 100644 --- a/packages/browser-stdenv/boot.js +++ b/packages/browser-stdenv/boot.js @@ -1,5 +1,5 @@ /// SPDX-License-Identifier: GPL-3.0-or-later -/// SPDX-FileCopyrightText: Copyright Ā© 2023 Tony Garnock-Jones +/// SPDX-FileCopyrightText: Copyright Ā© 2023-2024 Tony Garnock-Jones const SyndicateBrowserStdenv = { autoboot: true, diff --git a/packages/compiler/rollup.config.js b/packages/compiler/rollup.config.js index 7860637..b26470d 100644 --- a/packages/compiler/rollup.config.js +++ b/packages/compiler/rollup.config.js @@ -1,5 +1,5 @@ /// SPDX-License-Identifier: GPL-3.0-or-later -/// SPDX-FileCopyrightText: Copyright Ā© 2016-2023 Tony Garnock-Jones +/// SPDX-FileCopyrightText: Copyright Ā© 2016-2024 Tony Garnock-Jones import { SyndicateRollup } from '../../rollup.js'; const r = new SyndicateRollup('syndicate-compiler', { globalName: 'SyndicateCompiler' }); diff --git a/packages/compiler/src/compiler/codegen.ts b/packages/compiler/src/compiler/codegen.ts index e4684e8..e714785 100644 --- a/packages/compiler/src/compiler/codegen.ts +++ b/packages/compiler/src/compiler/codegen.ts @@ -1,5 +1,5 @@ /// SPDX-License-Identifier: GPL-3.0-or-later -/// SPDX-FileCopyrightText: Copyright Ā© 2016-2023 Tony Garnock-Jones +/// SPDX-FileCopyrightText: Copyright Ā© 2016-2024 Tony Garnock-Jones import { isToken, isTokenType, replace, commaJoin, startPos, fixPos, joinItems, diff --git a/packages/compiler/src/compiler/grammar.ts b/packages/compiler/src/compiler/grammar.ts index 127e8f4..9e24a05 100644 --- a/packages/compiler/src/compiler/grammar.ts +++ b/packages/compiler/src/compiler/grammar.ts @@ -1,5 +1,5 @@ /// SPDX-License-Identifier: GPL-3.0-or-later -/// SPDX-FileCopyrightText: Copyright Ā© 2016-2023 Tony Garnock-Jones +/// SPDX-FileCopyrightText: Copyright Ā© 2016-2024 Tony Garnock-Jones import { Token, Items, TokenBase, TokenType, diff --git a/packages/compiler/src/compiler/index.ts b/packages/compiler/src/compiler/index.ts index bee8b4a..5126f23 100644 --- a/packages/compiler/src/compiler/index.ts +++ b/packages/compiler/src/compiler/index.ts @@ -1,5 +1,5 @@ /// SPDX-License-Identifier: GPL-3.0-or-later -/// SPDX-FileCopyrightText: Copyright Ā© 2016-2023 Tony Garnock-Jones +/// SPDX-FileCopyrightText: Copyright Ā© 2016-2024 Tony Garnock-Jones export * as Grammar from './grammar.js'; export * as Codegen from './codegen.js'; diff --git a/packages/compiler/src/index.ts b/packages/compiler/src/index.ts index 6705b7c..317867a 100644 --- a/packages/compiler/src/index.ts +++ b/packages/compiler/src/index.ts @@ -1,5 +1,5 @@ /// SPDX-License-Identifier: GPL-3.0-or-later -/// SPDX-FileCopyrightText: Copyright Ā© 2016-2023 Tony Garnock-Jones +/// SPDX-FileCopyrightText: Copyright Ā© 2016-2024 Tony Garnock-Jones export * as Syntax from './syntax/index.js'; export * from './compiler/index.js'; diff --git a/packages/compiler/src/syntax/codewriter.ts b/packages/compiler/src/syntax/codewriter.ts index 7576744..40c2d66 100644 --- a/packages/compiler/src/syntax/codewriter.ts +++ b/packages/compiler/src/syntax/codewriter.ts @@ -1,5 +1,5 @@ /// SPDX-License-Identifier: GPL-3.0-or-later -/// SPDX-FileCopyrightText: Copyright Ā© 2016-2023 Tony Garnock-Jones +/// SPDX-FileCopyrightText: Copyright Ā© 2016-2024 Tony Garnock-Jones import { Token, TokenType, Item, Items, isGroup } from './tokens.js'; import { Pos, startPos, advancePos } from './position.js'; diff --git a/packages/compiler/src/syntax/index.ts b/packages/compiler/src/syntax/index.ts index 69dc5b0..adf02dc 100644 --- a/packages/compiler/src/syntax/index.ts +++ b/packages/compiler/src/syntax/index.ts @@ -1,5 +1,5 @@ /// SPDX-License-Identifier: GPL-3.0-or-later -/// SPDX-FileCopyrightText: Copyright Ā© 2016-2023 Tony Garnock-Jones +/// SPDX-FileCopyrightText: Copyright Ā© 2016-2024 Tony Garnock-Jones export * from './codewriter.js'; export * from './list.js'; diff --git a/packages/compiler/src/syntax/list.ts b/packages/compiler/src/syntax/list.ts index f1223ac..3d95278 100644 --- a/packages/compiler/src/syntax/list.ts +++ b/packages/compiler/src/syntax/list.ts @@ -1,5 +1,5 @@ /// SPDX-License-Identifier: GPL-3.0-or-later -/// SPDX-FileCopyrightText: Copyright Ā© 2016-2023 Tony Garnock-Jones +/// SPDX-FileCopyrightText: Copyright Ā© 2016-2024 Tony Garnock-Jones export interface List extends Iterable { item: T | null; diff --git a/packages/compiler/src/syntax/matcher.ts b/packages/compiler/src/syntax/matcher.ts index 3d666c3..e218b3e 100644 --- a/packages/compiler/src/syntax/matcher.ts +++ b/packages/compiler/src/syntax/matcher.ts @@ -1,5 +1,5 @@ /// SPDX-License-Identifier: GPL-3.0-or-later -/// SPDX-FileCopyrightText: Copyright Ā© 2016-2023 Tony Garnock-Jones +/// SPDX-FileCopyrightText: Copyright Ā© 2016-2024 Tony Garnock-Jones import { Token, TokenType, Items, Item, diff --git a/packages/compiler/src/syntax/position.ts b/packages/compiler/src/syntax/position.ts index ae095e7..546b6ea 100644 --- a/packages/compiler/src/syntax/position.ts +++ b/packages/compiler/src/syntax/position.ts @@ -1,5 +1,5 @@ /// SPDX-License-Identifier: GPL-3.0-or-later -/// SPDX-FileCopyrightText: Copyright Ā© 2016-2023 Tony Garnock-Jones +/// SPDX-FileCopyrightText: Copyright Ā© 2016-2024 Tony Garnock-Jones export interface Pos { line: number; diff --git a/packages/compiler/src/syntax/reader.ts b/packages/compiler/src/syntax/reader.ts index 1b9c864..b91188f 100644 --- a/packages/compiler/src/syntax/reader.ts +++ b/packages/compiler/src/syntax/reader.ts @@ -1,5 +1,5 @@ /// SPDX-License-Identifier: GPL-3.0-or-later -/// SPDX-FileCopyrightText: Copyright Ā© 2016-2023 Tony Garnock-Jones +/// SPDX-FileCopyrightText: Copyright Ā© 2016-2024 Tony Garnock-Jones import { TokenType, Token, Group, GroupInProgress, Item, Items, finishGroup } from './tokens.js'; import { Pos, startPos } from './position.js'; diff --git a/packages/compiler/src/syntax/scanner.ts b/packages/compiler/src/syntax/scanner.ts index 57b7955..5448b5e 100644 --- a/packages/compiler/src/syntax/scanner.ts +++ b/packages/compiler/src/syntax/scanner.ts @@ -1,5 +1,5 @@ /// SPDX-License-Identifier: GPL-3.0-or-later -/// SPDX-FileCopyrightText: Copyright Ā© 2016-2023 Tony Garnock-Jones +/// SPDX-FileCopyrightText: Copyright Ā© 2016-2024 Tony Garnock-Jones import { TokenType, Token, Item, GroupInProgress } from './tokens.js'; import { Pos, advancePos } from './position.js'; diff --git a/packages/compiler/src/syntax/span.ts b/packages/compiler/src/syntax/span.ts index 9cb8802..d7a15b4 100644 --- a/packages/compiler/src/syntax/span.ts +++ b/packages/compiler/src/syntax/span.ts @@ -1,5 +1,5 @@ /// SPDX-License-Identifier: GPL-3.0-or-later -/// SPDX-FileCopyrightText: Copyright Ā© 2016-2023 Tony Garnock-Jones +/// SPDX-FileCopyrightText: Copyright Ā© 2016-2024 Tony Garnock-Jones export class SpanResult { readonly searchTarget: number; diff --git a/packages/compiler/src/syntax/template.ts b/packages/compiler/src/syntax/template.ts index b52b4b5..b139855 100644 --- a/packages/compiler/src/syntax/template.ts +++ b/packages/compiler/src/syntax/template.ts @@ -1,5 +1,5 @@ /// SPDX-License-Identifier: GPL-3.0-or-later -/// SPDX-FileCopyrightText: Copyright Ā© 2016-2023 Tony Garnock-Jones +/// SPDX-FileCopyrightText: Copyright Ā© 2016-2024 Tony Garnock-Jones import { Items } from './tokens.js'; import { Pos, startPos } from './position.js'; diff --git a/packages/compiler/src/syntax/tokens.ts b/packages/compiler/src/syntax/tokens.ts index 95ed828..16a2da1 100644 --- a/packages/compiler/src/syntax/tokens.ts +++ b/packages/compiler/src/syntax/tokens.ts @@ -1,5 +1,5 @@ /// SPDX-License-Identifier: GPL-3.0-or-later -/// SPDX-FileCopyrightText: Copyright Ā© 2016-2023 Tony Garnock-Jones +/// SPDX-FileCopyrightText: Copyright Ā© 2016-2024 Tony Garnock-Jones import { Pos } from './position.js'; diff --git a/packages/compiler/src/syntax/vlq.ts b/packages/compiler/src/syntax/vlq.ts index 119455d..f0285db 100644 --- a/packages/compiler/src/syntax/vlq.ts +++ b/packages/compiler/src/syntax/vlq.ts @@ -1,5 +1,5 @@ /// SPDX-License-Identifier: GPL-3.0-or-later -/// SPDX-FileCopyrightText: Copyright Ā© 2016-2023 Tony Garnock-Jones +/// SPDX-FileCopyrightText: Copyright Ā© 2016-2024 Tony Garnock-Jones const alphabet = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/"; const inverse_alphabet = diff --git a/packages/compiler/syndicate-browser-compiler.js b/packages/compiler/syndicate-browser-compiler.js index 4320771..aa03783 100644 --- a/packages/compiler/syndicate-browser-compiler.js +++ b/packages/compiler/syndicate-browser-compiler.js @@ -1,5 +1,5 @@ /// SPDX-License-Identifier: GPL-3.0-or-later -/// SPDX-FileCopyrightText: Copyright Ā© 2023 Tony Garnock-Jones +/// SPDX-FileCopyrightText: Copyright Ā© 2023-2024 Tony Garnock-Jones const __SYNDICATE__ = Syndicate; const currentSyndicateTarget = Syndicate.Dataspace.global; diff --git a/packages/core/examples/box-and-client.js b/packages/core/examples/box-and-client.js index 611da71..28d475e 100644 --- a/packages/core/examples/box-and-client.js +++ b/packages/core/examples/box-and-client.js @@ -1,6 +1,6 @@ #!/usr/bin/env node /// SPDX-License-Identifier: GPL-3.0-or-later -/// SPDX-FileCopyrightText: Copyright Ā© 2016-2023 Tony Garnock-Jones +/// SPDX-FileCopyrightText: Copyright Ā© 2016-2024 Tony Garnock-Jones import { Pattern as P, diff --git a/packages/core/examples/box-and-client.ts b/packages/core/examples/box-and-client.ts index c400517..7233a7a 100644 --- a/packages/core/examples/box-and-client.ts +++ b/packages/core/examples/box-and-client.ts @@ -1,6 +1,6 @@ #!/usr/bin/env -S npx ts-node -O '{"module": "commonjs"}' /// SPDX-License-Identifier: GPL-3.0-or-later -/// SPDX-FileCopyrightText: Copyright Ā© 2016-2023 Tony Garnock-Jones +/// SPDX-FileCopyrightText: Copyright Ā© 2016-2024 Tony Garnock-Jones import { Pattern as P, diff --git a/packages/core/jest.config.ts b/packages/core/jest.config.ts index ac0047a..4a09b3e 100644 --- a/packages/core/jest.config.ts +++ b/packages/core/jest.config.ts @@ -1,5 +1,5 @@ /// SPDX-License-Identifier: GPL-3.0-or-later -/// SPDX-FileCopyrightText: Copyright Ā© 2016-2023 Tony Garnock-Jones +/// SPDX-FileCopyrightText: Copyright Ā© 2016-2024 Tony Garnock-Jones export default { preset: 'ts-jest', diff --git a/packages/core/rollup.config.js b/packages/core/rollup.config.js index 628e2cb..f9bd2b0 100644 --- a/packages/core/rollup.config.js +++ b/packages/core/rollup.config.js @@ -1,5 +1,5 @@ /// SPDX-License-Identifier: GPL-3.0-or-later -/// SPDX-FileCopyrightText: Copyright Ā© 2016-2023 Tony Garnock-Jones +/// SPDX-FileCopyrightText: Copyright Ā© 2016-2024 Tony Garnock-Jones import { SyndicateRollup } from '../../rollup.js'; const r = new SyndicateRollup('syndicate', { globalName: 'Syndicate' }); diff --git a/packages/core/src/index.ts b/packages/core/src/index.ts index c586e52..0f17bf8 100644 --- a/packages/core/src/index.ts +++ b/packages/core/src/index.ts @@ -1,5 +1,5 @@ /// SPDX-License-Identifier: GPL-3.0-or-later -/// SPDX-FileCopyrightText: Copyright Ā© 2016-2023 Tony Garnock-Jones +/// SPDX-FileCopyrightText: Copyright Ā© 2016-2024 Tony Garnock-Jones export * from '@preserves/core'; diff --git a/packages/core/src/runtime/actor.ts b/packages/core/src/runtime/actor.ts index 2f4d5ff..929f7d8 100644 --- a/packages/core/src/runtime/actor.ts +++ b/packages/core/src/runtime/actor.ts @@ -1,5 +1,5 @@ /// SPDX-License-Identifier: GPL-3.0-or-later -/// SPDX-FileCopyrightText: Copyright Ā© 2016-2023 Tony Garnock-Jones +/// SPDX-FileCopyrightText: Copyright Ā© 2016-2024 Tony Garnock-Jones import { IdentitySet, Value, embeddedId, is, fromJS, stringify, Dictionary, KeyedSet, Tuple } from '@preserves/core'; import { Cell, Field, Graph } from './dataflow.js'; diff --git a/packages/core/src/runtime/bag.ts b/packages/core/src/runtime/bag.ts index ba45fc7..423ca88 100644 --- a/packages/core/src/runtime/bag.ts +++ b/packages/core/src/runtime/bag.ts @@ -1,5 +1,5 @@ /// SPDX-License-Identifier: GPL-3.0-or-later -/// SPDX-FileCopyrightText: Copyright Ā© 2016-2023 Tony Garnock-Jones +/// SPDX-FileCopyrightText: Copyright Ā© 2016-2024 Tony Garnock-Jones // Bags and Deltas (which are Bags where item-counts can be negative). diff --git a/packages/core/src/runtime/dataflow.ts b/packages/core/src/runtime/dataflow.ts index 141a2b2..f370eaf 100644 --- a/packages/core/src/runtime/dataflow.ts +++ b/packages/core/src/runtime/dataflow.ts @@ -1,5 +1,5 @@ /// SPDX-License-Identifier: GPL-3.0-or-later -/// SPDX-FileCopyrightText: Copyright Ā© 2016-2023 Tony Garnock-Jones +/// SPDX-FileCopyrightText: Copyright Ā© 2016-2024 Tony Garnock-Jones // Property-based "dataflow" diff --git a/packages/core/src/runtime/dataspace.ts b/packages/core/src/runtime/dataspace.ts index 69d4ec2..c4ada0d 100644 --- a/packages/core/src/runtime/dataspace.ts +++ b/packages/core/src/runtime/dataspace.ts @@ -1,5 +1,5 @@ /// SPDX-License-Identifier: GPL-3.0-or-later -/// SPDX-FileCopyrightText: Copyright Ā© 2016-2023 Tony Garnock-Jones +/// SPDX-FileCopyrightText: Copyright Ā© 2016-2024 Tony Garnock-Jones import { IdentityMap, KeyedDictionary, stringify } from '@preserves/core'; import { Index, IndexObserver } from './skeleton.js'; diff --git a/packages/core/src/runtime/mapset.ts b/packages/core/src/runtime/mapset.ts index dccaecb..eb6f2bb 100644 --- a/packages/core/src/runtime/mapset.ts +++ b/packages/core/src/runtime/mapset.ts @@ -1,5 +1,5 @@ /// SPDX-License-Identifier: GPL-3.0-or-later -/// SPDX-FileCopyrightText: Copyright Ā© 2016-2023 Tony Garnock-Jones +/// SPDX-FileCopyrightText: Copyright Ā© 2016-2024 Tony Garnock-Jones // Utilities for Maps of Sets diff --git a/packages/core/src/runtime/pattern.ts b/packages/core/src/runtime/pattern.ts index c22aeb2..14ea6c1 100644 --- a/packages/core/src/runtime/pattern.ts +++ b/packages/core/src/runtime/pattern.ts @@ -1,5 +1,5 @@ /// SPDX-License-Identifier: GPL-3.0-or-later -/// SPDX-FileCopyrightText: Copyright Ā© 2016-2023 Tony Garnock-Jones +/// SPDX-FileCopyrightText: Copyright Ā© 2016-2024 Tony Garnock-Jones import { canonicalString, KeyedDictionary, Dictionary, is, Record, RecordConstructorInfo, Value, CompoundKey, _iterMap } from '@preserves/core'; import { AnyValue, Ref } from './actor.js'; diff --git a/packages/core/src/runtime/quasivalue.ts b/packages/core/src/runtime/quasivalue.ts index 8b4c568..366e63d 100644 --- a/packages/core/src/runtime/quasivalue.ts +++ b/packages/core/src/runtime/quasivalue.ts @@ -1,5 +1,5 @@ /// SPDX-License-Identifier: GPL-3.0-or-later -/// SPDX-FileCopyrightText: Copyright Ā© 2021-2023 Tony Garnock-Jones +/// SPDX-FileCopyrightText: Copyright Ā© 2021-2024 Tony Garnock-Jones import { AnyValue, Ref } from './actor.js'; import { Pattern, toPattern } from '../gen/dataspacePatterns.js'; diff --git a/packages/core/src/runtime/randomid.ts b/packages/core/src/runtime/randomid.ts index 0d6872e..ff38435 100644 --- a/packages/core/src/runtime/randomid.ts +++ b/packages/core/src/runtime/randomid.ts @@ -1,5 +1,5 @@ /// SPDX-License-Identifier: GPL-3.0-or-later -/// SPDX-FileCopyrightText: Copyright Ā© 2016-2023 Tony Garnock-Jones +/// SPDX-FileCopyrightText: Copyright Ā© 2016-2024 Tony Garnock-Jones import { Bytes } from '@preserves/core'; import * as node_crypto from 'crypto'; diff --git a/packages/core/src/runtime/rewrite.ts b/packages/core/src/runtime/rewrite.ts index bbf35db..93e08e6 100644 --- a/packages/core/src/runtime/rewrite.ts +++ b/packages/core/src/runtime/rewrite.ts @@ -1,5 +1,5 @@ /// SPDX-License-Identifier: GPL-3.0-or-later -/// SPDX-FileCopyrightText: Copyright Ā© 2016-2023 Tony Garnock-Jones +/// SPDX-FileCopyrightText: Copyright Ā© 2016-2024 Tony Garnock-Jones import { Turn } from "./actor.js"; import { Bytes, Dictionary, DoubleFloat, embed, IdentityMap, is, isEmbedded, Record, Tuple, stringify } from "@preserves/core"; diff --git a/packages/core/src/runtime/skeleton.ts b/packages/core/src/runtime/skeleton.ts index 7fc7bed..dd385ca 100644 --- a/packages/core/src/runtime/skeleton.ts +++ b/packages/core/src/runtime/skeleton.ts @@ -1,5 +1,5 @@ /// SPDX-License-Identifier: GPL-3.0-or-later -/// SPDX-FileCopyrightText: Copyright Ā© 2016-2023 Tony Garnock-Jones +/// SPDX-FileCopyrightText: Copyright Ā© 2016-2024 Tony Garnock-Jones import { Set, Dictionary, KeyedDictionary, IdentitySet, stringify, Value } from '@preserves/core'; import { AnyValue, Assertion, Ref } from './actor.js'; diff --git a/packages/core/src/runtime/space.ts b/packages/core/src/runtime/space.ts index 576470b..e85b91f 100644 --- a/packages/core/src/runtime/space.ts +++ b/packages/core/src/runtime/space.ts @@ -1,5 +1,5 @@ /// SPDX-License-Identifier: GPL-3.0-or-later -/// SPDX-FileCopyrightText: Copyright Ā© 2023 Tony Garnock-Jones +/// SPDX-FileCopyrightText: Copyright Ā© 2023-2024 Tony Garnock-Jones import { IdentityMap, IdentitySet, forEachEmbedded } from '@preserves/core'; import type { Actor, Assertion, ExitReason, Handle, Ref } from './actor.js'; diff --git a/packages/core/src/runtime/stack.ts b/packages/core/src/runtime/stack.ts index 60ff1c7..0942f83 100644 --- a/packages/core/src/runtime/stack.ts +++ b/packages/core/src/runtime/stack.ts @@ -1,5 +1,5 @@ /// SPDX-License-Identifier: GPL-3.0-or-later -/// SPDX-FileCopyrightText: Copyright Ā© 2016-2023 Tony Garnock-Jones +/// SPDX-FileCopyrightText: Copyright Ā© 2016-2024 Tony Garnock-Jones export type NonEmptyStack = { item: T, rest: Stack }; export type Stack = null | NonEmptyStack; diff --git a/packages/core/src/runtime/supervise.ts b/packages/core/src/runtime/supervise.ts index 4d3995f..3596772 100644 --- a/packages/core/src/runtime/supervise.ts +++ b/packages/core/src/runtime/supervise.ts @@ -1,5 +1,5 @@ /// SPDX-License-Identifier: GPL-3.0-or-later -/// SPDX-FileCopyrightText: Copyright Ā© 2021-2023 Tony Garnock-Jones +/// SPDX-FileCopyrightText: Copyright Ā© 2021-2024 Tony Garnock-Jones import { State } from '../gen/service'; import { Actor, AnyValue, LocalAction, Turn } from './actor'; diff --git a/packages/core/src/runtime/task.ts b/packages/core/src/runtime/task.ts index 84f9fef..c6247d1 100644 --- a/packages/core/src/runtime/task.ts +++ b/packages/core/src/runtime/task.ts @@ -1,5 +1,5 @@ /// SPDX-License-Identifier: GPL-3.0-or-later -/// SPDX-FileCopyrightText: Copyright Ā© 2023 Tony Garnock-Jones +/// SPDX-FileCopyrightText: Copyright Ā© 2023-2024 Tony Garnock-Jones import type { Facet } from './actor.js'; diff --git a/packages/core/src/schemas.ts b/packages/core/src/schemas.ts index a29334a..8f09d35 100644 --- a/packages/core/src/schemas.ts +++ b/packages/core/src/schemas.ts @@ -1,5 +1,5 @@ /// SPDX-License-Identifier: GPL-3.0-or-later -/// SPDX-FileCopyrightText: Copyright Ā© 2021-2023 Tony Garnock-Jones +/// SPDX-FileCopyrightText: Copyright Ā© 2021-2024 Tony Garnock-Jones export * as dataspacePatterns from './gen/dataspacePatterns.js'; export * as dataspace from './gen/dataspace.js'; diff --git a/packages/core/src/transport/cryptography.ts b/packages/core/src/transport/cryptography.ts index 35ef014..7e2a01b 100644 --- a/packages/core/src/transport/cryptography.ts +++ b/packages/core/src/transport/cryptography.ts @@ -1,5 +1,5 @@ /// SPDX-License-Identifier: GPL-3.0-or-later -/// SPDX-FileCopyrightText: Copyright Ā© 2016-2023 Tony Garnock-Jones +/// SPDX-FileCopyrightText: Copyright Ā© 2016-2024 Tony Garnock-Jones import { Bytes, underlying } from '@preserves/core'; import * as node_crypto from 'crypto'; diff --git a/packages/core/src/transport/protocol.ts b/packages/core/src/transport/protocol.ts index 3a45cdb..f8caa53 100644 --- a/packages/core/src/transport/protocol.ts +++ b/packages/core/src/transport/protocol.ts @@ -1,5 +1,5 @@ /// SPDX-License-Identifier: GPL-3.0-or-later -/// SPDX-FileCopyrightText: Copyright Ā© 2016-2023 Tony Garnock-Jones +/// SPDX-FileCopyrightText: Copyright Ā© 2016-2024 Tony Garnock-Jones import * as S from '../gen/sturdy.js'; import { Decoder, DecoderState, Encoder, EncoderState, GenericEmbedded, neverEmbeddedType, EmbeddedType, Value, EmbeddedWriter } from '@preserves/core'; diff --git a/packages/core/src/transport/relay.ts b/packages/core/src/transport/relay.ts index dbc32e1..a3c574d 100644 --- a/packages/core/src/transport/relay.ts +++ b/packages/core/src/transport/relay.ts @@ -1,5 +1,5 @@ /// SPDX-License-Identifier: GPL-3.0-or-later -/// SPDX-FileCopyrightText: Copyright Ā© 2016-2023 Tony Garnock-Jones +/// SPDX-FileCopyrightText: Copyright Ā© 2016-2024 Tony Garnock-Jones import { Actor, Assertion, Entity, Facet, Handle, Ref, Turn } from '../runtime/actor.js'; import { BytesLike, Decoder, Dictionary, embed, encode, IdentityMap, mapEmbeddeds, stringify, underlying, Value } from '@preserves/core'; diff --git a/packages/core/src/transport/sturdy.ts b/packages/core/src/transport/sturdy.ts index c03439f..778a649 100644 --- a/packages/core/src/transport/sturdy.ts +++ b/packages/core/src/transport/sturdy.ts @@ -1,5 +1,5 @@ /// SPDX-License-Identifier: GPL-3.0-or-later -/// SPDX-FileCopyrightText: Copyright Ā© 2016-2023 Tony Garnock-Jones +/// SPDX-FileCopyrightText: Copyright Ā© 2016-2024 Tony Garnock-Jones // Basically Macaroons [1] in a Dataspace context // diff --git a/packages/core/stubs/crypto.js b/packages/core/stubs/crypto.js index 0f18876..ac9e8ca 100644 --- a/packages/core/stubs/crypto.js +++ b/packages/core/stubs/crypto.js @@ -1,4 +1,4 @@ /// SPDX-License-Identifier: GPL-3.0-or-later -/// SPDX-FileCopyrightText: Copyright Ā© 2016-2023 Tony Garnock-Jones +/// SPDX-FileCopyrightText: Copyright Ā© 2016-2024 Tony Garnock-Jones export const randomBytes = void 0; diff --git a/packages/core/test/bag.test.ts b/packages/core/test/bag.test.ts index 38fd118..0d6a510 100644 --- a/packages/core/test/bag.test.ts +++ b/packages/core/test/bag.test.ts @@ -1,5 +1,5 @@ /// SPDX-License-Identifier: GPL-3.0-or-later -/// SPDX-FileCopyrightText: Copyright Ā© 2016-2023 Tony Garnock-Jones +/// SPDX-FileCopyrightText: Copyright Ā© 2016-2024 Tony Garnock-Jones import { KeyedSet } from '@preserves/core'; import { Bag, ChangeDescription } from '../src/runtime/bag'; diff --git a/packages/core/test/dataflow.test.ts b/packages/core/test/dataflow.test.ts index 8b88683..59414ba 100644 --- a/packages/core/test/dataflow.test.ts +++ b/packages/core/test/dataflow.test.ts @@ -1,5 +1,5 @@ /// SPDX-License-Identifier: GPL-3.0-or-later -/// SPDX-FileCopyrightText: Copyright Ā© 2016-2023 Tony Garnock-Jones +/// SPDX-FileCopyrightText: Copyright Ā© 2016-2024 Tony Garnock-Jones import { Canonicalizer, embeddedId, FlexSet } from '@preserves/core'; import { Cell, Field, Graph } from '../src/runtime/dataflow'; diff --git a/packages/core/test/test-utils.ts b/packages/core/test/test-utils.ts index 54b2326..ef7c81e 100644 --- a/packages/core/test/test-utils.ts +++ b/packages/core/test/test-utils.ts @@ -1,5 +1,5 @@ /// SPDX-License-Identifier: GPL-3.0-or-later -/// SPDX-FileCopyrightText: Copyright Ā© 2016-2023 Tony Garnock-Jones +/// SPDX-FileCopyrightText: Copyright Ā© 2016-2024 Tony Garnock-Jones import { is, preserves } from '@preserves/core'; diff --git a/packages/create/src/create.ts b/packages/create/src/create.ts index c43ad14..dd5df29 100644 --- a/packages/create/src/create.ts +++ b/packages/create/src/create.ts @@ -1,5 +1,5 @@ /// SPDX-License-Identifier: GPL-3.0-or-later -/// SPDX-FileCopyrightText: Copyright Ā© 2023 Tony Garnock-Jones +/// SPDX-FileCopyrightText: Copyright Ā© 2023-2024 Tony Garnock-Jones import yargs from 'yargs/yargs'; diff --git a/packages/create/template/rollup.config.js b/packages/create/template/rollup.config.js index e8072a3..59c9999 100644 --- a/packages/create/template/rollup.config.js +++ b/packages/create/template/rollup.config.js @@ -1,5 +1,5 @@ /// SPDX-License-Identifier: GPL-3.0-or-later -/// SPDX-FileCopyrightText: Copyright Ā© 2023 Tony Garnock-Jones +/// SPDX-FileCopyrightText: Copyright Ā© 2023-2024 Tony Garnock-Jones import sourcemaps from 'rollup-plugin-sourcemaps'; diff --git a/packages/create/template/src/index.ts b/packages/create/template/src/index.ts index f24c187..e9ae6a2 100644 --- a/packages/create/template/src/index.ts +++ b/packages/create/template/src/index.ts @@ -1,5 +1,5 @@ /// SPDX-License-Identifier: GPL-3.0-or-later -/// SPDX-FileCopyrightText: Copyright Ā© 2023 Tony Garnock-Jones +/// SPDX-FileCopyrightText: Copyright Ā© 2023-2024 Tony Garnock-Jones import { Dataspace, Ref, Sturdy, Reader, Schemas, Embedded, randomId, fromJS } from "@syndicate-lang/core"; import html from "@syndicate-lang/html"; diff --git a/packages/fs/bin/syndicate-fs.js b/packages/fs/bin/syndicate-fs.js old mode 100755 new mode 100644 index 9e552f3..0110f1c --- a/packages/fs/bin/syndicate-fs.js +++ b/packages/fs/bin/syndicate-fs.js @@ -1,6 +1,6 @@ #!/usr/bin/env -S node -r esm /// SPDX-License-Identifier: GPL-3.0-or-later -/// SPDX-FileCopyrightText: Copyright Ā© 2016-2023 Tony Garnock-Jones +/// SPDX-FileCopyrightText: Copyright Ā© 2016-2024 Tony Garnock-Jones try { require('../lib/index.js').main(process.argv.slice(2)); diff --git a/packages/fs/src/index.ts b/packages/fs/src/index.ts index e4be83e..a878545 100644 --- a/packages/fs/src/index.ts +++ b/packages/fs/src/index.ts @@ -1,5 +1,5 @@ /// SPDX-License-Identifier: GPL-3.0-or-later -/// SPDX-FileCopyrightText: Copyright Ā© 2023 Tony Garnock-Jones +/// SPDX-FileCopyrightText: Copyright Ā© 2023-2024 Tony Garnock-Jones import { Bytes, Observe, Ref, Turn, stringify } from "@syndicate-lang/core"; import { QuasiValue as Q } from "@syndicate-lang/core"; diff --git a/packages/html/rollup.config.js b/packages/html/rollup.config.js index c4cc2f1..30510d5 100644 --- a/packages/html/rollup.config.js +++ b/packages/html/rollup.config.js @@ -1,5 +1,5 @@ /// SPDX-License-Identifier: GPL-3.0-or-later -/// SPDX-FileCopyrightText: Copyright Ā© 2016-2023 Tony Garnock-Jones +/// SPDX-FileCopyrightText: Copyright Ā© 2016-2024 Tony Garnock-Jones import { SyndicateRollup } from '../../rollup.js'; const r = new SyndicateRollup('syndicate-html', { globalName: 'SyndicateHtml' }); diff --git a/packages/html/src/html.ts b/packages/html/src/html.ts index b410485..52b96c7 100644 --- a/packages/html/src/html.ts +++ b/packages/html/src/html.ts @@ -1,5 +1,5 @@ /// SPDX-License-Identifier: GPL-3.0-or-later -/// SPDX-FileCopyrightText: Copyright Ā© 2016-2023 Tony Garnock-Jones +/// SPDX-FileCopyrightText: Copyright Ā© 2016-2024 Tony Garnock-Jones let nextId = 1; diff --git a/packages/html/src/index.ts b/packages/html/src/index.ts index 954f680..b98e94a 100644 --- a/packages/html/src/index.ts +++ b/packages/html/src/index.ts @@ -1,5 +1,5 @@ /// SPDX-License-Identifier: GPL-3.0-or-later -/// SPDX-FileCopyrightText: Copyright Ā© 2016-2023 Tony Garnock-Jones +/// SPDX-FileCopyrightText: Copyright Ā© 2016-2024 Tony Garnock-Jones import { randomId, Observe, FlexMap, embed, Embedded, Ref, Turn, AnyValue, Dataspace } from "@syndicate-lang/core"; import { QuasiValue as Q } from "@syndicate-lang/core"; diff --git a/packages/html/src/protocol.ts b/packages/html/src/protocol.ts index c60c7a3..f18bfee 100644 --- a/packages/html/src/protocol.ts +++ b/packages/html/src/protocol.ts @@ -1,5 +1,5 @@ /// SPDX-License-Identifier: GPL-3.0-or-later -/// SPDX-FileCopyrightText: Copyright Ā© 2016-2023 Tony Garnock-Jones +/// SPDX-FileCopyrightText: Copyright Ā© 2016-2024 Tony Garnock-Jones // Message. Interest in this causes event listeners to be added for // the given eventType to all nodes matching the given selector *at diff --git a/packages/html2/rollup.config.js b/packages/html2/rollup.config.js index e16fa7a..adf4b0f 100644 --- a/packages/html2/rollup.config.js +++ b/packages/html2/rollup.config.js @@ -1,5 +1,5 @@ /// SPDX-License-Identifier: GPL-3.0-or-later -/// SPDX-FileCopyrightText: Copyright Ā© 2016-2023 Tony Garnock-Jones +/// SPDX-FileCopyrightText: Copyright Ā© 2016-2024 Tony Garnock-Jones import { SyndicateRollup } from '../../rollup.js'; const r = new SyndicateRollup('syndicate-html2', { globalName: 'SyndicateHtml2' }); diff --git a/packages/html2/src/html.ts b/packages/html2/src/html.ts index f6a2f8f..4bf1c81 100644 --- a/packages/html2/src/html.ts +++ b/packages/html2/src/html.ts @@ -1,5 +1,5 @@ /// SPDX-License-Identifier: GPL-3.0-or-later -/// SPDX-FileCopyrightText: Copyright Ā© 2016-2023 Tony Garnock-Jones +/// SPDX-FileCopyrightText: Copyright Ā© 2016-2024 Tony Garnock-Jones import { randomId } from "@syndicate-lang/core"; diff --git a/packages/html2/src/index.ts b/packages/html2/src/index.ts index 0a137c2..35c67d8 100644 --- a/packages/html2/src/index.ts +++ b/packages/html2/src/index.ts @@ -1,5 +1,5 @@ /// SPDX-License-Identifier: GPL-3.0-or-later -/// SPDX-FileCopyrightText: Copyright Ā© 2023 Tony Garnock-Jones +/// SPDX-FileCopyrightText: Copyright Ā© 2023-2024 Tony Garnock-Jones import { Turn, Facet, Dataflow, Dataspace, Ref } from "@syndicate-lang/core"; import { HtmlTemplater, template } from "./html"; diff --git a/packages/loader/src/index.ts b/packages/loader/src/index.ts index 46484d4..632b0ce 100644 --- a/packages/loader/src/index.ts +++ b/packages/loader/src/index.ts @@ -1,5 +1,5 @@ /// SPDX-License-Identifier: GPL-3.0-or-later -/// SPDX-FileCopyrightText: Copyright Ā© 2023 Tony Garnock-Jones +/// SPDX-FileCopyrightText: Copyright Ā© 2023-2024 Tony Garnock-Jones import { Module } from 'node:module'; import { compile, Syntax } from '@syndicate-lang/compiler'; diff --git a/packages/service/src/example.ts b/packages/service/src/example.ts index d5a78ce..08644ce 100644 --- a/packages/service/src/example.ts +++ b/packages/service/src/example.ts @@ -1,5 +1,5 @@ /// SPDX-License-Identifier: GPL-3.0-or-later -/// SPDX-FileCopyrightText: Copyright Ā© 2023 Tony Garnock-Jones +/// SPDX-FileCopyrightText: Copyright Ā© 2023-2024 Tony Garnock-Jones import { stringify } from '@syndicate-lang/core'; import { service } from './index.js'; diff --git a/packages/service/src/index.ts b/packages/service/src/index.ts index 4053b4c..85cf389 100644 --- a/packages/service/src/index.ts +++ b/packages/service/src/index.ts @@ -1,5 +1,5 @@ /// SPDX-License-Identifier: GPL-3.0-or-later -/// SPDX-FileCopyrightText: Copyright Ā© 2023 Tony Garnock-Jones +/// SPDX-FileCopyrightText: Copyright Ā© 2023-2024 Tony Garnock-Jones import { Actor, AnyValue, Relay, Turn, assertionFacetObserver } from "@syndicate-lang/core"; import * as process from 'process'; diff --git a/packages/syndicatec/bin/syndicate-maptool.js b/packages/syndicatec/bin/syndicate-maptool.js old mode 100755 new mode 100644 index 0cc00f5..d1008b8 --- a/packages/syndicatec/bin/syndicate-maptool.js +++ b/packages/syndicatec/bin/syndicate-maptool.js @@ -1,6 +1,6 @@ #!/usr/bin/env node /// SPDX-License-Identifier: GPL-3.0-or-later -/// SPDX-FileCopyrightText: Copyright Ā© 2016-2023 Tony Garnock-Jones +/// SPDX-FileCopyrightText: Copyright Ā© 2016-2024 Tony Garnock-Jones try { require('../lib/maptool.js').main(process.argv.slice(2)); diff --git a/packages/syndicatec/bin/syndicatec.js b/packages/syndicatec/bin/syndicatec.js old mode 100755 new mode 100644 index 8e80d11..47b9bb7 --- a/packages/syndicatec/bin/syndicatec.js +++ b/packages/syndicatec/bin/syndicatec.js @@ -1,6 +1,6 @@ #!/usr/bin/env node /// SPDX-License-Identifier: GPL-3.0-or-later -/// SPDX-FileCopyrightText: Copyright Ā© 2016-2023 Tony Garnock-Jones +/// SPDX-FileCopyrightText: Copyright Ā© 2016-2024 Tony Garnock-Jones try { require('../lib/cli.js').main(process.argv.slice(2)); diff --git a/packages/syndicatec/src/cli.ts b/packages/syndicatec/src/cli.ts index 5b589b1..28dbc91 100644 --- a/packages/syndicatec/src/cli.ts +++ b/packages/syndicatec/src/cli.ts @@ -1,5 +1,5 @@ /// SPDX-License-Identifier: GPL-3.0-or-later -/// SPDX-FileCopyrightText: Copyright Ā© 2016-2023 Tony Garnock-Jones +/// SPDX-FileCopyrightText: Copyright Ā© 2016-2024 Tony Garnock-Jones import yargs from 'yargs/yargs'; diff --git a/packages/syndicatec/src/maptool.ts b/packages/syndicatec/src/maptool.ts index dca472a..3a3694a 100644 --- a/packages/syndicatec/src/maptool.ts +++ b/packages/syndicatec/src/maptool.ts @@ -1,5 +1,5 @@ /// SPDX-License-Identifier: GPL-3.0-or-later -/// SPDX-FileCopyrightText: Copyright Ā© 2016-2023 Tony Garnock-Jones +/// SPDX-FileCopyrightText: Copyright Ā© 2016-2024 Tony Garnock-Jones import fs from 'fs'; import { SourceMap } from '@syndicate-lang/compiler/lib/syntax/index.js'; diff --git a/packages/syndicatec/src/util.ts b/packages/syndicatec/src/util.ts index df3f398..4128ea4 100644 --- a/packages/syndicatec/src/util.ts +++ b/packages/syndicatec/src/util.ts @@ -1,5 +1,5 @@ /// SPDX-License-Identifier: GPL-3.0-or-later -/// SPDX-FileCopyrightText: Copyright Ā© 2016-2023 Tony Garnock-Jones +/// SPDX-FileCopyrightText: Copyright Ā© 2016-2024 Tony Garnock-Jones export function dataURL(s: string): string { return `data:application/json;base64,${Buffer.from(s).toString('base64')}`; diff --git a/packages/timer/rollup.config.js b/packages/timer/rollup.config.js index ef0df6f..a70ef11 100644 --- a/packages/timer/rollup.config.js +++ b/packages/timer/rollup.config.js @@ -1,5 +1,5 @@ /// SPDX-License-Identifier: GPL-3.0-or-later -/// SPDX-FileCopyrightText: Copyright Ā© 2016-2023 Tony Garnock-Jones +/// SPDX-FileCopyrightText: Copyright Ā© 2016-2024 Tony Garnock-Jones import { SyndicateRollup } from '../../rollup.js'; const r = new SyndicateRollup('syndicate-timer', { globalName: 'SyndicateTimer' }); diff --git a/packages/timer/src/index.ts b/packages/timer/src/index.ts index 36ea35e..70c1628 100644 --- a/packages/timer/src/index.ts +++ b/packages/timer/src/index.ts @@ -1,5 +1,5 @@ /// SPDX-License-Identifier: GPL-3.0-or-later -/// SPDX-FileCopyrightText: Copyright Ā© 2016-2023 Tony Garnock-Jones +/// SPDX-FileCopyrightText: Copyright Ā© 2016-2024 Tony Garnock-Jones import { preserves, DoubleFloat, Observe, floatValue, Turn, Ref, Schemas, Dataspace } from "@syndicate-lang/core"; import { QuasiValue as Q } from "@syndicate-lang/core"; diff --git a/packages/ts-plugin/src/index.ts b/packages/ts-plugin/src/index.ts index 30f03f8..949fab3 100644 --- a/packages/ts-plugin/src/index.ts +++ b/packages/ts-plugin/src/index.ts @@ -1,5 +1,5 @@ /// SPDX-License-Identifier: GPL-3.0-or-later -/// SPDX-FileCopyrightText: Copyright Ā© 2016-2023 Tony Garnock-Jones +/// SPDX-FileCopyrightText: Copyright Ā© 2016-2024 Tony Garnock-Jones import { compile, Syntax } from '@syndicate-lang/compiler'; import tslib from 'typescript/lib/tsserverlibrary'; diff --git a/packages/tsc/bin/syndicate-tsc.js b/packages/tsc/bin/syndicate-tsc.js old mode 100755 new mode 100644 index fdc502e..b4d357a --- a/packages/tsc/bin/syndicate-tsc.js +++ b/packages/tsc/bin/syndicate-tsc.js @@ -1,6 +1,6 @@ #!/usr/bin/env node /// SPDX-License-Identifier: GPL-3.0-or-later -/// SPDX-FileCopyrightText: Copyright Ā© 2016-2023 Tony Garnock-Jones +/// SPDX-FileCopyrightText: Copyright Ā© 2016-2024 Tony Garnock-Jones try { require('../lib/tsc.js').main(process.argv.slice(2)); diff --git a/packages/tsc/src/tsc.ts b/packages/tsc/src/tsc.ts index f177bde..6b52fc0 100644 --- a/packages/tsc/src/tsc.ts +++ b/packages/tsc/src/tsc.ts @@ -1,5 +1,5 @@ /// SPDX-License-Identifier: GPL-3.0-or-later -/// SPDX-FileCopyrightText: Copyright Ā© 2016-2023 Tony Garnock-Jones +/// SPDX-FileCopyrightText: Copyright Ā© 2016-2024 Tony Garnock-Jones import yargs from 'yargs/yargs'; diff --git a/packages/ws-relay/rollup.config.js b/packages/ws-relay/rollup.config.js index 4ba8a24..4f376cc 100644 --- a/packages/ws-relay/rollup.config.js +++ b/packages/ws-relay/rollup.config.js @@ -1,5 +1,5 @@ /// SPDX-License-Identifier: GPL-3.0-or-later -/// SPDX-FileCopyrightText: Copyright Ā© 2016-2023 Tony Garnock-Jones +/// SPDX-FileCopyrightText: Copyright Ā© 2016-2024 Tony Garnock-Jones import { SyndicateRollup } from '../../rollup.js'; const r = new SyndicateRollup('syndicate-ws-relay', { globalName: 'SyndicateWsRelay' }); diff --git a/packages/ws-relay/src/index.ts b/packages/ws-relay/src/index.ts index d85967a..b1e8e20 100644 --- a/packages/ws-relay/src/index.ts +++ b/packages/ws-relay/src/index.ts @@ -1,5 +1,5 @@ /// SPDX-License-Identifier: GPL-3.0-or-later -/// SPDX-FileCopyrightText: Copyright Ā© 2016-2023 Tony Garnock-Jones +/// SPDX-FileCopyrightText: Copyright Ā© 2016-2024 Tony Garnock-Jones import { AnyValue, From 501d5e578eb00310797408861646fd47a7902899 Mon Sep 17 00:00:00 2001 From: Tony Garnock-Jones Date: Sat, 3 Feb 2024 16:00:24 +0100 Subject: [PATCH 08/92] Publish - @syndicate-lang/browser-stdenv@0.24.0 - @syndicate-lang/compiler@0.19.0 - @syndicate-lang/core@0.24.0 - @syndicate-lang/create@0.20.0 - @syndicate-lang/fs@0.25.0 - @syndicate-lang/html@0.25.0 - @syndicate-lang/html2@0.25.0 - @syndicate-lang/loader@0.24.0 - @syndicate-lang/service@0.25.0 - @syndicate-lang/syndicatec@0.25.0 - @syndicate-lang/timer@0.25.0 - @syndicate-lang/ts-plugin@0.25.0 - @syndicate-lang/tsc@0.25.0 - @syndicate-lang/ws-relay@0.26.0 --- packages/browser-stdenv/package.json | 10 +++++----- packages/compiler/package.json | 2 +- packages/core/package.json | 2 +- packages/create/package.json | 2 +- packages/fs/package.json | 10 +++++----- packages/html/package.json | 8 ++++---- packages/html2/package.json | 8 ++++---- packages/loader/package.json | 8 ++++---- packages/service/package.json | 8 ++++---- packages/syndicatec/package.json | 6 +++--- packages/timer/package.json | 8 ++++---- packages/ts-plugin/package.json | 6 +++--- packages/tsc/package.json | 6 +++--- packages/ws-relay/package.json | 8 ++++---- 14 files changed, 46 insertions(+), 46 deletions(-) diff --git a/packages/browser-stdenv/package.json b/packages/browser-stdenv/package.json index 191771e..9a7c5fa 100644 --- a/packages/browser-stdenv/package.json +++ b/packages/browser-stdenv/package.json @@ -1,6 +1,6 @@ { "name": "@syndicate-lang/browser-stdenv", - "version": "0.23.3", + "version": "0.24.0", "description": "Aggregated Syndicate and Preserves scripts for in-browser use", "homepage": "https://github.com/syndicate-lang/syndicate-js/tree/main/packages/browser-stdenv", "license": "GPL-3.0+", @@ -21,9 +21,9 @@ "dependencies": { "@preserves/core": "0.993.0", "@preserves/schema": "0.993.0", - "@syndicate-lang/compiler": "^0.18.0", - "@syndicate-lang/core": "^0.23.0", - "@syndicate-lang/html2": "^0.24.2", - "@syndicate-lang/ws-relay": "^0.25.0" + "@syndicate-lang/compiler": "^0.19.0", + "@syndicate-lang/core": "^0.24.0", + "@syndicate-lang/html2": "^0.25.0", + "@syndicate-lang/ws-relay": "^0.26.0" } } diff --git a/packages/compiler/package.json b/packages/compiler/package.json index b6ff493..5342822 100644 --- a/packages/compiler/package.json +++ b/packages/compiler/package.json @@ -1,6 +1,6 @@ { "name": "@syndicate-lang/compiler", - "version": "0.18.0", + "version": "0.19.0", "description": "Syndicate/JS compiler library", "homepage": "https://github.com/syndicate-lang/syndicate-js/tree/main/packages/compiler", "license": "GPL-3.0+", diff --git a/packages/core/package.json b/packages/core/package.json index 647fbfc..3bdd4e0 100644 --- a/packages/core/package.json +++ b/packages/core/package.json @@ -1,6 +1,6 @@ { "name": "@syndicate-lang/core", - "version": "0.23.0", + "version": "0.24.0", "description": "Syndicate/JS for browser and node.js", "homepage": "https://github.com/syndicate-lang/syndicate-js/tree/main/packages/core", "license": "GPL-3.0+", diff --git a/packages/create/package.json b/packages/create/package.json index c237e75..efb1372 100644 --- a/packages/create/package.json +++ b/packages/create/package.json @@ -1,6 +1,6 @@ { "name": "@syndicate-lang/create", - "version": "0.19.0", + "version": "0.20.0", "description": "Create a new Syndicate/js package", "author": "Tony Garnock-Jones ", "homepage": "https://github.com/syndicate-lang/syndicate-js/tree/main/packages/create", diff --git a/packages/fs/package.json b/packages/fs/package.json index 1b91cfb..8ac0fc2 100644 --- a/packages/fs/package.json +++ b/packages/fs/package.json @@ -1,6 +1,6 @@ { "name": "@syndicate-lang/fs", - "version": "0.24.0", + "version": "0.25.0", "description": "Reflect contents of a portion of the file system as assertions", "homepage": "https://github.com/syndicate-lang/syndicate-js/tree/main/packages/fs", "license": "GPL-3.0+", @@ -30,13 +30,13 @@ "@preserves/core": "0.993.0" }, "dependencies": { - "@syndicate-lang/core": "^0.23.0", - "@syndicate-lang/service": "^0.24.0", + "@syndicate-lang/core": "^0.24.0", + "@syndicate-lang/service": "^0.25.0", "chokidar": "^3.5.3" }, "devDependencies": { "@preserves/schema-cli": "0.993.0", - "@syndicate-lang/ts-plugin": "^0.24.0", - "@syndicate-lang/tsc": "^0.24.0" + "@syndicate-lang/ts-plugin": "^0.25.0", + "@syndicate-lang/tsc": "^0.25.0" } } diff --git a/packages/html/package.json b/packages/html/package.json index e1b2578..3cfec74 100644 --- a/packages/html/package.json +++ b/packages/html/package.json @@ -1,6 +1,6 @@ { "name": "@syndicate-lang/html", - "version": "0.24.0", + "version": "0.25.0", "description": "DOM/HTML UI for Syndicate/JS", "homepage": "https://github.com/syndicate-lang/syndicate-js/tree/main/packages/html", "license": "GPL-3.0+", @@ -25,10 +25,10 @@ "veryclean": "yarn run clean && rm -rf node_modules" }, "dependencies": { - "@syndicate-lang/core": "^0.23.0" + "@syndicate-lang/core": "^0.24.0" }, "devDependencies": { - "@syndicate-lang/ts-plugin": "^0.24.0", - "@syndicate-lang/tsc": "^0.24.0" + "@syndicate-lang/ts-plugin": "^0.25.0", + "@syndicate-lang/tsc": "^0.25.0" } } diff --git a/packages/html2/package.json b/packages/html2/package.json index 07906b2..8b3b5db 100644 --- a/packages/html2/package.json +++ b/packages/html2/package.json @@ -1,6 +1,6 @@ { "name": "@syndicate-lang/html2", - "version": "0.24.2", + "version": "0.25.0", "description": "DOM/HTML UI for Syndicate/JS", "homepage": "https://github.com/syndicate-lang/syndicate-js/tree/main/packages/html2", "license": "GPL-3.0+", @@ -25,10 +25,10 @@ "veryclean": "yarn run clean && rm -rf node_modules" }, "dependencies": { - "@syndicate-lang/core": "^0.23.0" + "@syndicate-lang/core": "^0.24.0" }, "devDependencies": { - "@syndicate-lang/ts-plugin": "^0.24.0", - "@syndicate-lang/tsc": "^0.24.0" + "@syndicate-lang/ts-plugin": "^0.25.0", + "@syndicate-lang/tsc": "^0.25.0" } } diff --git a/packages/loader/package.json b/packages/loader/package.json index 1a994eb..b1f4f25 100644 --- a/packages/loader/package.json +++ b/packages/loader/package.json @@ -1,6 +1,6 @@ { "name": "@syndicate-lang/loader", - "version": "0.23.0", + "version": "0.24.0", "description": "Syndicate/JS node.js loader hook", "homepage": "https://github.com/syndicate-lang/syndicate-js/tree/main/packages/loader", "license": "GPL-3.0+", @@ -22,8 +22,8 @@ "types": "lib/index.d.ts", "author": "Tony Garnock-Jones ", "dependencies": { - "@syndicate-lang/compiler": "^0.18.0", - "@syndicate-lang/core": "^0.23.0", - "@syndicate-lang/service": "^0.24.0" + "@syndicate-lang/compiler": "^0.19.0", + "@syndicate-lang/core": "^0.24.0", + "@syndicate-lang/service": "^0.25.0" } } diff --git a/packages/service/package.json b/packages/service/package.json index b2599fd..b80d16b 100644 --- a/packages/service/package.json +++ b/packages/service/package.json @@ -1,6 +1,6 @@ { "name": "@syndicate-lang/service", - "version": "0.24.0", + "version": "0.25.0", "description": "Run a node.js program as a service within syndicate-server", "homepage": "https://github.com/syndicate-lang/syndicate-js/tree/main/packages/service", "license": "GPL-3.0+", @@ -22,10 +22,10 @@ "veryclean": "yarn run clean && rm -rf node_modules" }, "dependencies": { - "@syndicate-lang/core": "^0.23.0" + "@syndicate-lang/core": "^0.24.0" }, "devDependencies": { - "@syndicate-lang/ts-plugin": "^0.24.0", - "@syndicate-lang/tsc": "^0.24.0" + "@syndicate-lang/ts-plugin": "^0.25.0", + "@syndicate-lang/tsc": "^0.25.0" } } diff --git a/packages/syndicatec/package.json b/packages/syndicatec/package.json index 9a7a198..3610d6a 100644 --- a/packages/syndicatec/package.json +++ b/packages/syndicatec/package.json @@ -1,6 +1,6 @@ { "name": "@syndicate-lang/syndicatec", - "version": "0.24.0", + "version": "0.25.0", "description": "Syndicate/JS compiler command-line tool", "homepage": "https://github.com/syndicate-lang/syndicate-js/tree/main/packages/syndicatec", "license": "GPL-3.0+", @@ -20,8 +20,8 @@ }, "author": "Tony Garnock-Jones ", "dependencies": { - "@syndicate-lang/compiler": "^0.18.0", - "@syndicate-lang/core": "^0.23.0", + "@syndicate-lang/compiler": "^0.19.0", + "@syndicate-lang/core": "^0.24.0", "glob": "^7.1.6", "yargs": "^16.2.0" }, diff --git a/packages/timer/package.json b/packages/timer/package.json index 6cfdc00..104cc8f 100644 --- a/packages/timer/package.json +++ b/packages/timer/package.json @@ -1,6 +1,6 @@ { "name": "@syndicate-lang/timer", - "version": "0.24.0", + "version": "0.25.0", "description": "Time and timer driver for Syndicate", "homepage": "https://github.com/syndicate-lang/syndicate-js/tree/main/packages/timer", "license": "GPL-3.0+", @@ -25,10 +25,10 @@ "veryclean": "yarn run clean && rm -rf node_modules" }, "dependencies": { - "@syndicate-lang/core": "^0.23.0" + "@syndicate-lang/core": "^0.24.0" }, "devDependencies": { - "@syndicate-lang/ts-plugin": "^0.24.0", - "@syndicate-lang/tsc": "^0.24.0" + "@syndicate-lang/ts-plugin": "^0.25.0", + "@syndicate-lang/tsc": "^0.25.0" } } diff --git a/packages/ts-plugin/package.json b/packages/ts-plugin/package.json index dfee805..71ff0b1 100644 --- a/packages/ts-plugin/package.json +++ b/packages/ts-plugin/package.json @@ -1,6 +1,6 @@ { "name": "@syndicate-lang/ts-plugin", - "version": "0.24.0", + "version": "0.25.0", "description": "Syndicate/JS TypeScript tsserver plugin", "homepage": "https://github.com/syndicate-lang/syndicate-js/tree/main/packages/ts-plugin", "license": "GPL-3.0+", @@ -22,8 +22,8 @@ "types": "lib/index.d.ts", "author": "Tony Garnock-Jones ", "dependencies": { - "@syndicate-lang/compiler": "^0.18.0", - "@syndicate-lang/core": "^0.23.0" + "@syndicate-lang/compiler": "^0.19.0", + "@syndicate-lang/core": "^0.24.0" }, "devDependencies": { "typescript": "^4.9" diff --git a/packages/tsc/package.json b/packages/tsc/package.json index 0cd0dfb..5595106 100644 --- a/packages/tsc/package.json +++ b/packages/tsc/package.json @@ -1,6 +1,6 @@ { "name": "@syndicate-lang/tsc", - "version": "0.24.0", + "version": "0.25.0", "description": "Syndicate for TypeScript compiler command-line tool", "homepage": "https://github.com/syndicate-lang/syndicate-js/tree/main/packages/tsc", "license": "GPL-3.0+", @@ -20,8 +20,8 @@ }, "author": "Tony Garnock-Jones ", "dependencies": { - "@syndicate-lang/compiler": "^0.18.0", - "@syndicate-lang/core": "^0.23.0", + "@syndicate-lang/compiler": "^0.19.0", + "@syndicate-lang/core": "^0.24.0", "glob": "^7.1.6", "yargs": "^16.2.0" }, diff --git a/packages/ws-relay/package.json b/packages/ws-relay/package.json index a9de172..c31fb5c 100644 --- a/packages/ws-relay/package.json +++ b/packages/ws-relay/package.json @@ -1,6 +1,6 @@ { "name": "@syndicate-lang/ws-relay", - "version": "0.25.0", + "version": "0.26.0", "description": "Browser WebSocket relay to a Syndicate server", "homepage": "https://github.com/syndicate-lang/syndicate-js/tree/main/packages/ws-relay", "license": "GPL-3.0+", @@ -28,11 +28,11 @@ "@preserves/core": "0.993.0" }, "dependencies": { - "@syndicate-lang/core": "^0.23.0", + "@syndicate-lang/core": "^0.24.0", "salty-crypto": "0.3" }, "devDependencies": { - "@syndicate-lang/ts-plugin": "^0.24.0", - "@syndicate-lang/tsc": "^0.24.0" + "@syndicate-lang/ts-plugin": "^0.25.0", + "@syndicate-lang/tsc": "^0.25.0" } } From 9864ce0ec86fb2f916c2aab318a1e6994ab8834c Mon Sep 17 00:00:00 2001 From: Tony Garnock-Jones Date: Mon, 5 Feb 2024 23:14:19 +0100 Subject: [PATCH 09/92] Switch `#!` to `#:` --- schemas/dataspace.prs | 2 +- schemas/dataspacePatterns.prs | 2 +- schemas/gatekeeper.prs | 14 +++++++------- schemas/http.prs | 4 ++-- schemas/protocol.prs | 2 +- schemas/stream.prs | 6 +++--- schemas/tcp.prs | 2 +- 7 files changed, 16 insertions(+), 16 deletions(-) diff --git a/schemas/dataspace.prs b/schemas/dataspace.prs index 25c6640..9ca3834 100644 --- a/schemas/dataspace.prs +++ b/schemas/dataspace.prs @@ -1,4 +1,4 @@ version 1 . embeddedType EntityRef.Cap . -Observe = . +Observe = . diff --git a/schemas/dataspacePatterns.prs b/schemas/dataspacePatterns.prs index 11b73cc..faf2df1 100644 --- a/schemas/dataspacePatterns.prs +++ b/schemas/dataspacePatterns.prs @@ -18,5 +18,5 @@ AnyAtom = / @string string / @bytes bytes / @symbol symbol - / @embedded #!any + / @embedded #:any . diff --git a/schemas/gatekeeper.prs b/schemas/gatekeeper.prs index 9b11db6..656ed12 100644 --- a/schemas/gatekeeper.prs +++ b/schemas/gatekeeper.prs @@ -6,8 +6,8 @@ embeddedType EntityRef.Cap . # Assertion. Gatekeeper will attempt to resolve `step`, responding with a `Resolved` to # `observer`. -Resolve = . -Resolved = / Rejected . +Resolve = . +Resolved = / Rejected . Step = < @stepType symbol [@detail any]> . # --------------------------------------------------------------------------- @@ -15,9 +15,9 @@ Step = < @stepType symbol [@detail any]> . # Assertion. Gatekeeper will compute an appropriate PathStep from `description` pointing at # `target`, and will respond with a `Bound` to `observer` (if supplied). -Bind = . +Bind = . Description = < @stepType symbol [@detail any]> . -BindObserver = @present #!Bound / @absent #f . +BindObserver = @present #:Bound / @absent #f . Bound = / Rejected . # --------------------------------------------------------------------------- @@ -27,10 +27,10 @@ Bound = / Rejected . # and `resolved`, respondent will follow `route.pathSteps` starting from one of the # `route.transports`, asserting `ResolvePath` with the final `Resolved` as well as the selected # transport `addr` and a `control` for it. -ResolvePath = . +ResolvePath = . -TransportConnection = . -ResolvedPathStep = . +TransportConnection = . +ResolvedPathStep = . PathStep = < @stepType symbol [@detail any]> . # A `Route` describes a network path that can be followed to reach some target entity. diff --git a/schemas/http.prs b/schemas/http.prs index c64a738..0edbb7d 100644 --- a/schemas/http.prs +++ b/schemas/http.prs @@ -2,7 +2,7 @@ version 1 . # Assertion in driver DS # Causes creation of server and route -HttpBinding = . +HttpBinding = . # Assertion in driver DS # Describes active server and route @@ -34,7 +34,7 @@ QueryValue = @string string / . +HttpContext = . @ # Messages diff --git a/schemas/protocol.prs b/schemas/protocol.prs index 449d6aa..da66672 100644 --- a/schemas/protocol.prs +++ b/schemas/protocol.prs @@ -16,4 +16,4 @@ TurnEvent = [@oid Oid @event Event]. Assert = . Retract = . Message = . -Sync = . +Sync = . diff --git a/schemas/stream.prs b/schemas/stream.prs index 079825a..90279b3 100644 --- a/schemas/stream.prs +++ b/schemas/stream.prs @@ -2,7 +2,7 @@ version 1 . embeddedType EntityRef.Cap . # Assertion: -StreamConnection = . +StreamConnection = . # Assertions: StreamListenerReady = . @@ -13,7 +13,7 @@ StreamError = . Source = # Assertions: - / + / / StreamError # Messages: @@ -22,7 +22,7 @@ Source = Sink = # Assertions: - / + / / StreamError # Messages: diff --git a/schemas/tcp.prs b/schemas/tcp.prs index cc34741..c9d8ef6 100644 --- a/schemas/tcp.prs +++ b/schemas/tcp.prs @@ -4,4 +4,4 @@ embeddedType EntityRef.Cap . TcpRemote = . TcpLocal = . -TcpPeerInfo = . +TcpPeerInfo = . From cdbb1b4c248ef7fce3278b91d431e1278f3163e8 Mon Sep 17 00:00:00 2001 From: Tony Garnock-Jones Date: Mon, 5 Feb 2024 23:24:14 +0100 Subject: [PATCH 10/92] Update to Preserves 0.994 --- package.json | 2 +- packages/browser-stdenv/package.json | 4 +-- .../local-protocols/schemas/queuedTasks.prs | 8 ++--- packages/core/package.json | 6 ++-- packages/create/template/package.json | 4 +-- packages/fs/bin/syndicate-fs.js | 0 packages/fs/package.json | 4 +-- packages/fs/protocols/schemas/fs.prs | 2 +- packages/syndicatec/bin/syndicate-maptool.js | 0 packages/syndicatec/bin/syndicatec.js | 0 packages/tsc/bin/syndicate-tsc.js | 0 packages/ws-relay/package.json | 2 +- yarn.lock | 30 +++++++++---------- 13 files changed, 31 insertions(+), 31 deletions(-) mode change 100644 => 100755 packages/fs/bin/syndicate-fs.js mode change 100644 => 100755 packages/syndicatec/bin/syndicate-maptool.js mode change 100644 => 100755 packages/syndicatec/bin/syndicatec.js mode change 100644 => 100755 packages/tsc/bin/syndicate-tsc.js diff --git a/package.json b/package.json index f18c341..e38d189 100644 --- a/package.json +++ b/package.json @@ -6,7 +6,7 @@ "packages/*/examples/*/" ], "devDependencies": { - "@preserves/core": "0.993.0", + "@preserves/core": "0.994.0", "@rollup/plugin-node-resolve": "^13.0", "@types/jest": "^27.0", "@types/node": "^14", diff --git a/packages/browser-stdenv/package.json b/packages/browser-stdenv/package.json index 9a7c5fa..173e714 100644 --- a/packages/browser-stdenv/package.json +++ b/packages/browser-stdenv/package.json @@ -19,8 +19,8 @@ "veryclean": "yarn run clean && rm -rf node_modules" }, "dependencies": { - "@preserves/core": "0.993.0", - "@preserves/schema": "0.993.0", + "@preserves/core": "0.994.0", + "@preserves/schema": "0.994.0", "@syndicate-lang/compiler": "^0.19.0", "@syndicate-lang/core": "^0.24.0", "@syndicate-lang/html2": "^0.25.0", diff --git a/packages/core/local-protocols/schemas/queuedTasks.prs b/packages/core/local-protocols/schemas/queuedTasks.prs index a0d079c..9276711 100644 --- a/packages/core/local-protocols/schemas/queuedTasks.prs +++ b/packages/core/local-protocols/schemas/queuedTasks.prs @@ -5,10 +5,10 @@ ActionDescription = / @spawnActor / @stopActor / @inertCheck -/ -/ -/ -/ +/ +/ +/ +/ . OptionalAny = / . diff --git a/packages/core/package.json b/packages/core/package.json index 3bdd4e0..f998973 100644 --- a/packages/core/package.json +++ b/packages/core/package.json @@ -29,11 +29,11 @@ "types": "lib/index.d.ts", "author": "Tony Garnock-Jones ", "devDependencies": { - "@preserves/core": "0.993.0", - "@preserves/schema-cli": "0.993.0" + "@preserves/core": "0.994.0", + "@preserves/schema-cli": "0.994.0" }, "peerDependencies": { - "@preserves/core": "0.993.0" + "@preserves/core": "0.994.0" }, "dependencies": { "salty-crypto": "0.3.1" diff --git a/packages/create/template/package.json b/packages/create/template/package.json index 5e61454..8c78bff 100644 --- a/packages/create/template/package.json +++ b/packages/create/template/package.json @@ -3,7 +3,7 @@ "version": "0.0.0", "license": "GPL-3.0+", "devDependencies": { - "@preserves/schema-cli": "0.993.0", + "@preserves/schema-cli": "0.994.0", "@syndicate-lang/ts-plugin": "*", "@syndicate-lang/tsc": "*", "rollup": "^2.60", @@ -12,7 +12,7 @@ "typescript-language-server": "^3.0" }, "dependencies": { - "@preserves/core": "0.993.0", + "@preserves/core": "0.994.0", "@syndicate-lang/core": "*", "@syndicate-lang/html": "*", "@syndicate-lang/ws-relay": "*" diff --git a/packages/fs/bin/syndicate-fs.js b/packages/fs/bin/syndicate-fs.js old mode 100644 new mode 100755 diff --git a/packages/fs/package.json b/packages/fs/package.json index 8ac0fc2..66ad63b 100644 --- a/packages/fs/package.json +++ b/packages/fs/package.json @@ -27,7 +27,7 @@ "syndicate-fs": "./bin/syndicate-fs.js" }, "peerDependencies": { - "@preserves/core": "0.993.0" + "@preserves/core": "0.994.0" }, "dependencies": { "@syndicate-lang/core": "^0.24.0", @@ -35,7 +35,7 @@ "chokidar": "^3.5.3" }, "devDependencies": { - "@preserves/schema-cli": "0.993.0", + "@preserves/schema-cli": "0.994.0", "@syndicate-lang/ts-plugin": "^0.25.0", "@syndicate-lang/tsc": "^0.25.0" } diff --git a/packages/fs/protocols/schemas/fs.prs b/packages/fs/protocols/schemas/fs.prs index f47eaae..a8923ef 100644 --- a/packages/fs/protocols/schemas/fs.prs +++ b/packages/fs/protocols/schemas/fs.prs @@ -2,7 +2,7 @@ version 1 . Config = @core CoreConfig & @awaitWriteFinish AwaitWriteFinishConfig . CoreConfig = { - dataspace: #!any, + dataspace: #:any, label: any, path: string, } . diff --git a/packages/syndicatec/bin/syndicate-maptool.js b/packages/syndicatec/bin/syndicate-maptool.js old mode 100644 new mode 100755 diff --git a/packages/syndicatec/bin/syndicatec.js b/packages/syndicatec/bin/syndicatec.js old mode 100644 new mode 100755 diff --git a/packages/tsc/bin/syndicate-tsc.js b/packages/tsc/bin/syndicate-tsc.js old mode 100644 new mode 100755 diff --git a/packages/ws-relay/package.json b/packages/ws-relay/package.json index c31fb5c..b790c46 100644 --- a/packages/ws-relay/package.json +++ b/packages/ws-relay/package.json @@ -25,7 +25,7 @@ "types": "lib/index.d.ts", "author": "Tony Garnock-Jones ", "peerDependencies": { - "@preserves/core": "0.993.0" + "@preserves/core": "0.994.0" }, "dependencies": { "@syndicate-lang/core": "^0.24.0", diff --git a/yarn.lock b/yarn.lock index 75821c5..7f72b31 100644 --- a/yarn.lock +++ b/yarn.lock @@ -1403,30 +1403,30 @@ dependencies: "@octokit/openapi-types" "^12.11.0" -"@preserves/core@0.993.0", "@preserves/core@^0.993.0": - version "0.993.0" - resolved "https://registry.yarnpkg.com/@preserves/core/-/core-0.993.0.tgz#68209a962bfdd30794c95257982de2152fb9db86" - integrity sha512-Qet/scZNvyGhLwzEWjVeeFCrtrsbW6arAL4zHez9MOTxncvKwEW2Q7vMOM25845aFyqQgWaUPvrL6HaUi07K1w== +"@preserves/core@0.994.0", "@preserves/core@^0.994.0": + version "0.994.0" + resolved "https://registry.yarnpkg.com/@preserves/core/-/core-0.994.0.tgz#bf01e629135a729c554b0626c7c0e24f10a2c8b5" + integrity sha512-NxmjSaUAALECr0oBVWR0Qax9GFyv6jzwYlLezXbYvvKL6j/y/11ccxExsG37h07k84STC9DPtz8b1n59xq/3PA== -"@preserves/schema-cli@0.993.0": - version "0.993.0" - resolved "https://registry.yarnpkg.com/@preserves/schema-cli/-/schema-cli-0.993.0.tgz#73fa331211cbef2c02801610dac998730f6b9e69" - integrity sha512-fkpGjFA9c/VVFkN31QrcaxrdQ8pRcaeFP/60XIID5uZBNpuJ+51IyWykQBcJVxdxtuCaP2PRzwu9gPi2qxnZkg== +"@preserves/schema-cli@0.994.0": + version "0.994.0" + resolved "https://registry.yarnpkg.com/@preserves/schema-cli/-/schema-cli-0.994.0.tgz#ac8caca7ff1dcc60d9649cfa93c96623f6ef42b0" + integrity sha512-WLJkpjYetZfQ7JsswGXbaL+ePQeKgOVH9LdhBPPWPTU5AaNccxiwxEkHJwGdv5hrsupsbMT0WVjNiIZvxBKdWA== dependencies: - "@preserves/core" "^0.993.0" - "@preserves/schema" "^0.993.0" + "@preserves/core" "^0.994.0" + "@preserves/schema" "^0.994.0" chalk "^4.1" chokidar "^3.5" commander "^7.2" glob "^7.1" minimatch "^3.0" -"@preserves/schema@0.993.0", "@preserves/schema@^0.993.0": - version "0.993.0" - resolved "https://registry.yarnpkg.com/@preserves/schema/-/schema-0.993.0.tgz#b90d03de90763f97e8ad061ae66d87b12d7e6799" - integrity sha512-Wng97KvmcKuI1MjcQ9pCmmsB+drH2IHchcTRPUq97CL5p2OgNDUn2hktlE0skTKdwir8sGBBmlfL1uZhxvXPbA== +"@preserves/schema@0.994.0", "@preserves/schema@^0.994.0": + version "0.994.0" + resolved "https://registry.yarnpkg.com/@preserves/schema/-/schema-0.994.0.tgz#8937e2e13b73b1d9d26a8033c031e8ac93dc47ef" + integrity sha512-eDIjJvrmAykDmBWEPxPq1HD5XsLTlB0atX9kA5b4W0bmstTqOxJcsyIP+WK3Rp3HZN74Wg3UnQ21kf9KgDWAhA== dependencies: - "@preserves/core" "^0.993.0" + "@preserves/core" "^0.994.0" "@rollup/plugin-node-resolve@^13.0": version "13.3.0" From 7e0b6dc33a45e48be25b13bd38cb0b3a9e9a05b5 Mon Sep 17 00:00:00 2001 From: Tony Garnock-Jones Date: Mon, 5 Feb 2024 23:24:53 +0100 Subject: [PATCH 11/92] Publish - @syndicate-lang/browser-stdenv@0.25.0 - @syndicate-lang/core@0.25.0 - @syndicate-lang/create@0.21.0 - @syndicate-lang/fs@0.26.0 - @syndicate-lang/html@0.26.0 - @syndicate-lang/html2@0.26.0 - @syndicate-lang/loader@0.25.0 - @syndicate-lang/service@0.26.0 - @syndicate-lang/syndicatec@0.26.0 - @syndicate-lang/timer@0.26.0 - @syndicate-lang/ts-plugin@0.26.0 - @syndicate-lang/tsc@0.26.0 - @syndicate-lang/ws-relay@0.27.0 --- packages/browser-stdenv/package.json | 8 ++++---- packages/core/package.json | 2 +- packages/create/package.json | 2 +- packages/fs/package.json | 10 +++++----- packages/html/package.json | 8 ++++---- packages/html2/package.json | 8 ++++---- packages/loader/package.json | 6 +++--- packages/service/package.json | 8 ++++---- packages/syndicatec/package.json | 4 ++-- packages/timer/package.json | 8 ++++---- packages/ts-plugin/package.json | 4 ++-- packages/tsc/package.json | 4 ++-- packages/ws-relay/package.json | 8 ++++---- 13 files changed, 40 insertions(+), 40 deletions(-) diff --git a/packages/browser-stdenv/package.json b/packages/browser-stdenv/package.json index 173e714..bbc323a 100644 --- a/packages/browser-stdenv/package.json +++ b/packages/browser-stdenv/package.json @@ -1,6 +1,6 @@ { "name": "@syndicate-lang/browser-stdenv", - "version": "0.24.0", + "version": "0.25.0", "description": "Aggregated Syndicate and Preserves scripts for in-browser use", "homepage": "https://github.com/syndicate-lang/syndicate-js/tree/main/packages/browser-stdenv", "license": "GPL-3.0+", @@ -22,8 +22,8 @@ "@preserves/core": "0.994.0", "@preserves/schema": "0.994.0", "@syndicate-lang/compiler": "^0.19.0", - "@syndicate-lang/core": "^0.24.0", - "@syndicate-lang/html2": "^0.25.0", - "@syndicate-lang/ws-relay": "^0.26.0" + "@syndicate-lang/core": "^0.25.0", + "@syndicate-lang/html2": "^0.26.0", + "@syndicate-lang/ws-relay": "^0.27.0" } } diff --git a/packages/core/package.json b/packages/core/package.json index f998973..7d0717d 100644 --- a/packages/core/package.json +++ b/packages/core/package.json @@ -1,6 +1,6 @@ { "name": "@syndicate-lang/core", - "version": "0.24.0", + "version": "0.25.0", "description": "Syndicate/JS for browser and node.js", "homepage": "https://github.com/syndicate-lang/syndicate-js/tree/main/packages/core", "license": "GPL-3.0+", diff --git a/packages/create/package.json b/packages/create/package.json index efb1372..ff21651 100644 --- a/packages/create/package.json +++ b/packages/create/package.json @@ -1,6 +1,6 @@ { "name": "@syndicate-lang/create", - "version": "0.20.0", + "version": "0.21.0", "description": "Create a new Syndicate/js package", "author": "Tony Garnock-Jones ", "homepage": "https://github.com/syndicate-lang/syndicate-js/tree/main/packages/create", diff --git a/packages/fs/package.json b/packages/fs/package.json index 66ad63b..80c803f 100644 --- a/packages/fs/package.json +++ b/packages/fs/package.json @@ -1,6 +1,6 @@ { "name": "@syndicate-lang/fs", - "version": "0.25.0", + "version": "0.26.0", "description": "Reflect contents of a portion of the file system as assertions", "homepage": "https://github.com/syndicate-lang/syndicate-js/tree/main/packages/fs", "license": "GPL-3.0+", @@ -30,13 +30,13 @@ "@preserves/core": "0.994.0" }, "dependencies": { - "@syndicate-lang/core": "^0.24.0", - "@syndicate-lang/service": "^0.25.0", + "@syndicate-lang/core": "^0.25.0", + "@syndicate-lang/service": "^0.26.0", "chokidar": "^3.5.3" }, "devDependencies": { "@preserves/schema-cli": "0.994.0", - "@syndicate-lang/ts-plugin": "^0.25.0", - "@syndicate-lang/tsc": "^0.25.0" + "@syndicate-lang/ts-plugin": "^0.26.0", + "@syndicate-lang/tsc": "^0.26.0" } } diff --git a/packages/html/package.json b/packages/html/package.json index 3cfec74..b258877 100644 --- a/packages/html/package.json +++ b/packages/html/package.json @@ -1,6 +1,6 @@ { "name": "@syndicate-lang/html", - "version": "0.25.0", + "version": "0.26.0", "description": "DOM/HTML UI for Syndicate/JS", "homepage": "https://github.com/syndicate-lang/syndicate-js/tree/main/packages/html", "license": "GPL-3.0+", @@ -25,10 +25,10 @@ "veryclean": "yarn run clean && rm -rf node_modules" }, "dependencies": { - "@syndicate-lang/core": "^0.24.0" + "@syndicate-lang/core": "^0.25.0" }, "devDependencies": { - "@syndicate-lang/ts-plugin": "^0.25.0", - "@syndicate-lang/tsc": "^0.25.0" + "@syndicate-lang/ts-plugin": "^0.26.0", + "@syndicate-lang/tsc": "^0.26.0" } } diff --git a/packages/html2/package.json b/packages/html2/package.json index 8b3b5db..11bb679 100644 --- a/packages/html2/package.json +++ b/packages/html2/package.json @@ -1,6 +1,6 @@ { "name": "@syndicate-lang/html2", - "version": "0.25.0", + "version": "0.26.0", "description": "DOM/HTML UI for Syndicate/JS", "homepage": "https://github.com/syndicate-lang/syndicate-js/tree/main/packages/html2", "license": "GPL-3.0+", @@ -25,10 +25,10 @@ "veryclean": "yarn run clean && rm -rf node_modules" }, "dependencies": { - "@syndicate-lang/core": "^0.24.0" + "@syndicate-lang/core": "^0.25.0" }, "devDependencies": { - "@syndicate-lang/ts-plugin": "^0.25.0", - "@syndicate-lang/tsc": "^0.25.0" + "@syndicate-lang/ts-plugin": "^0.26.0", + "@syndicate-lang/tsc": "^0.26.0" } } diff --git a/packages/loader/package.json b/packages/loader/package.json index b1f4f25..b440803 100644 --- a/packages/loader/package.json +++ b/packages/loader/package.json @@ -1,6 +1,6 @@ { "name": "@syndicate-lang/loader", - "version": "0.24.0", + "version": "0.25.0", "description": "Syndicate/JS node.js loader hook", "homepage": "https://github.com/syndicate-lang/syndicate-js/tree/main/packages/loader", "license": "GPL-3.0+", @@ -23,7 +23,7 @@ "author": "Tony Garnock-Jones ", "dependencies": { "@syndicate-lang/compiler": "^0.19.0", - "@syndicate-lang/core": "^0.24.0", - "@syndicate-lang/service": "^0.25.0" + "@syndicate-lang/core": "^0.25.0", + "@syndicate-lang/service": "^0.26.0" } } diff --git a/packages/service/package.json b/packages/service/package.json index b80d16b..69175a0 100644 --- a/packages/service/package.json +++ b/packages/service/package.json @@ -1,6 +1,6 @@ { "name": "@syndicate-lang/service", - "version": "0.25.0", + "version": "0.26.0", "description": "Run a node.js program as a service within syndicate-server", "homepage": "https://github.com/syndicate-lang/syndicate-js/tree/main/packages/service", "license": "GPL-3.0+", @@ -22,10 +22,10 @@ "veryclean": "yarn run clean && rm -rf node_modules" }, "dependencies": { - "@syndicate-lang/core": "^0.24.0" + "@syndicate-lang/core": "^0.25.0" }, "devDependencies": { - "@syndicate-lang/ts-plugin": "^0.25.0", - "@syndicate-lang/tsc": "^0.25.0" + "@syndicate-lang/ts-plugin": "^0.26.0", + "@syndicate-lang/tsc": "^0.26.0" } } diff --git a/packages/syndicatec/package.json b/packages/syndicatec/package.json index 3610d6a..40ccf3a 100644 --- a/packages/syndicatec/package.json +++ b/packages/syndicatec/package.json @@ -1,6 +1,6 @@ { "name": "@syndicate-lang/syndicatec", - "version": "0.25.0", + "version": "0.26.0", "description": "Syndicate/JS compiler command-line tool", "homepage": "https://github.com/syndicate-lang/syndicate-js/tree/main/packages/syndicatec", "license": "GPL-3.0+", @@ -21,7 +21,7 @@ "author": "Tony Garnock-Jones ", "dependencies": { "@syndicate-lang/compiler": "^0.19.0", - "@syndicate-lang/core": "^0.24.0", + "@syndicate-lang/core": "^0.25.0", "glob": "^7.1.6", "yargs": "^16.2.0" }, diff --git a/packages/timer/package.json b/packages/timer/package.json index 104cc8f..824b118 100644 --- a/packages/timer/package.json +++ b/packages/timer/package.json @@ -1,6 +1,6 @@ { "name": "@syndicate-lang/timer", - "version": "0.25.0", + "version": "0.26.0", "description": "Time and timer driver for Syndicate", "homepage": "https://github.com/syndicate-lang/syndicate-js/tree/main/packages/timer", "license": "GPL-3.0+", @@ -25,10 +25,10 @@ "veryclean": "yarn run clean && rm -rf node_modules" }, "dependencies": { - "@syndicate-lang/core": "^0.24.0" + "@syndicate-lang/core": "^0.25.0" }, "devDependencies": { - "@syndicate-lang/ts-plugin": "^0.25.0", - "@syndicate-lang/tsc": "^0.25.0" + "@syndicate-lang/ts-plugin": "^0.26.0", + "@syndicate-lang/tsc": "^0.26.0" } } diff --git a/packages/ts-plugin/package.json b/packages/ts-plugin/package.json index 71ff0b1..e0bf70d 100644 --- a/packages/ts-plugin/package.json +++ b/packages/ts-plugin/package.json @@ -1,6 +1,6 @@ { "name": "@syndicate-lang/ts-plugin", - "version": "0.25.0", + "version": "0.26.0", "description": "Syndicate/JS TypeScript tsserver plugin", "homepage": "https://github.com/syndicate-lang/syndicate-js/tree/main/packages/ts-plugin", "license": "GPL-3.0+", @@ -23,7 +23,7 @@ "author": "Tony Garnock-Jones ", "dependencies": { "@syndicate-lang/compiler": "^0.19.0", - "@syndicate-lang/core": "^0.24.0" + "@syndicate-lang/core": "^0.25.0" }, "devDependencies": { "typescript": "^4.9" diff --git a/packages/tsc/package.json b/packages/tsc/package.json index 5595106..aa7db8a 100644 --- a/packages/tsc/package.json +++ b/packages/tsc/package.json @@ -1,6 +1,6 @@ { "name": "@syndicate-lang/tsc", - "version": "0.25.0", + "version": "0.26.0", "description": "Syndicate for TypeScript compiler command-line tool", "homepage": "https://github.com/syndicate-lang/syndicate-js/tree/main/packages/tsc", "license": "GPL-3.0+", @@ -21,7 +21,7 @@ "author": "Tony Garnock-Jones ", "dependencies": { "@syndicate-lang/compiler": "^0.19.0", - "@syndicate-lang/core": "^0.24.0", + "@syndicate-lang/core": "^0.25.0", "glob": "^7.1.6", "yargs": "^16.2.0" }, diff --git a/packages/ws-relay/package.json b/packages/ws-relay/package.json index b790c46..0be5d16 100644 --- a/packages/ws-relay/package.json +++ b/packages/ws-relay/package.json @@ -1,6 +1,6 @@ { "name": "@syndicate-lang/ws-relay", - "version": "0.26.0", + "version": "0.27.0", "description": "Browser WebSocket relay to a Syndicate server", "homepage": "https://github.com/syndicate-lang/syndicate-js/tree/main/packages/ws-relay", "license": "GPL-3.0+", @@ -28,11 +28,11 @@ "@preserves/core": "0.994.0" }, "dependencies": { - "@syndicate-lang/core": "^0.24.0", + "@syndicate-lang/core": "^0.25.0", "salty-crypto": "0.3" }, "devDependencies": { - "@syndicate-lang/ts-plugin": "^0.25.0", - "@syndicate-lang/tsc": "^0.25.0" + "@syndicate-lang/ts-plugin": "^0.26.0", + "@syndicate-lang/tsc": "^0.26.0" } } From 7eecee1122e8f6f099ee45d59306570e9c2d47b5 Mon Sep 17 00:00:00 2001 From: Tony Garnock-Jones Date: Fri, 8 Mar 2024 10:26:13 +0100 Subject: [PATCH 12/92] Bump preserves --- package.json | 2 +- packages/browser-stdenv/package.json | 4 +- packages/core/package.json | 6 +- packages/create/template/package.json | 4 +- packages/fs/package.json | 4 +- packages/ws-relay/package.json | 2 +- yarn.lock | 644 ++++++++++++++------------ 7 files changed, 357 insertions(+), 309 deletions(-) diff --git a/package.json b/package.json index e38d189..9770a98 100644 --- a/package.json +++ b/package.json @@ -6,7 +6,7 @@ "packages/*/examples/*/" ], "devDependencies": { - "@preserves/core": "0.994.0", + "@preserves/core": "0.995.0", "@rollup/plugin-node-resolve": "^13.0", "@types/jest": "^27.0", "@types/node": "^14", diff --git a/packages/browser-stdenv/package.json b/packages/browser-stdenv/package.json index bbc323a..a58528a 100644 --- a/packages/browser-stdenv/package.json +++ b/packages/browser-stdenv/package.json @@ -19,8 +19,8 @@ "veryclean": "yarn run clean && rm -rf node_modules" }, "dependencies": { - "@preserves/core": "0.994.0", - "@preserves/schema": "0.994.0", + "@preserves/core": "0.995.0", + "@preserves/schema": "0.995.0", "@syndicate-lang/compiler": "^0.19.0", "@syndicate-lang/core": "^0.25.0", "@syndicate-lang/html2": "^0.26.0", diff --git a/packages/core/package.json b/packages/core/package.json index 7d0717d..cb29757 100644 --- a/packages/core/package.json +++ b/packages/core/package.json @@ -29,11 +29,11 @@ "types": "lib/index.d.ts", "author": "Tony Garnock-Jones ", "devDependencies": { - "@preserves/core": "0.994.0", - "@preserves/schema-cli": "0.994.0" + "@preserves/core": "0.995.0", + "@preserves/schema-cli": "0.995.0" }, "peerDependencies": { - "@preserves/core": "0.994.0" + "@preserves/core": "0.995.0" }, "dependencies": { "salty-crypto": "0.3.1" diff --git a/packages/create/template/package.json b/packages/create/template/package.json index 8c78bff..dd6ff1a 100644 --- a/packages/create/template/package.json +++ b/packages/create/template/package.json @@ -3,7 +3,7 @@ "version": "0.0.0", "license": "GPL-3.0+", "devDependencies": { - "@preserves/schema-cli": "0.994.0", + "@preserves/schema-cli": "0.995.0", "@syndicate-lang/ts-plugin": "*", "@syndicate-lang/tsc": "*", "rollup": "^2.60", @@ -12,7 +12,7 @@ "typescript-language-server": "^3.0" }, "dependencies": { - "@preserves/core": "0.994.0", + "@preserves/core": "0.995.0", "@syndicate-lang/core": "*", "@syndicate-lang/html": "*", "@syndicate-lang/ws-relay": "*" diff --git a/packages/fs/package.json b/packages/fs/package.json index 80c803f..0992c3f 100644 --- a/packages/fs/package.json +++ b/packages/fs/package.json @@ -27,7 +27,7 @@ "syndicate-fs": "./bin/syndicate-fs.js" }, "peerDependencies": { - "@preserves/core": "0.994.0" + "@preserves/core": "0.995.0" }, "dependencies": { "@syndicate-lang/core": "^0.25.0", @@ -35,7 +35,7 @@ "chokidar": "^3.5.3" }, "devDependencies": { - "@preserves/schema-cli": "0.994.0", + "@preserves/schema-cli": "0.995.0", "@syndicate-lang/ts-plugin": "^0.26.0", "@syndicate-lang/tsc": "^0.26.0" } diff --git a/packages/ws-relay/package.json b/packages/ws-relay/package.json index 0be5d16..4266e51 100644 --- a/packages/ws-relay/package.json +++ b/packages/ws-relay/package.json @@ -25,7 +25,7 @@ "types": "lib/index.d.ts", "author": "Tony Garnock-Jones ", "peerDependencies": { - "@preserves/core": "0.994.0" + "@preserves/core": "0.995.0" }, "dependencies": { "@syndicate-lang/core": "^0.25.0", diff --git a/yarn.lock b/yarn.lock index 7f72b31..43fd1a9 100644 --- a/yarn.lock +++ b/yarn.lock @@ -3,12 +3,12 @@ "@ampproject/remapping@^2.2.0": - version "2.2.1" - resolved "https://registry.yarnpkg.com/@ampproject/remapping/-/remapping-2.2.1.tgz#99e8e11851128b8702cd57c33684f1d0f260b630" - integrity sha512-lFMjJTrFL3j7L9yBxwYfCq2k6qqwHyzuUl/XBnif78PWTJYyL/dfowQHWE3sp6U6ZzqWiiIZnpTMO96zhkjwtg== + version "2.3.0" + resolved "https://registry.yarnpkg.com/@ampproject/remapping/-/remapping-2.3.0.tgz#ed441b6fa600072520ce18b43d2c8cc8caecc7f4" + integrity sha512-30iZtAPgz+LTIYoeivqYo853f02jBYSd5uGnGpkFV0M3xOt9aN73erkgYAmZU43x4VfqcnLxW9Kpg3R5LC4YYw== dependencies: - "@jridgewell/gen-mapping" "^0.3.0" - "@jridgewell/trace-mapping" "^0.3.9" + "@jridgewell/gen-mapping" "^0.3.5" + "@jridgewell/trace-mapping" "^0.3.24" "@babel/code-frame@^7.0.0", "@babel/code-frame@^7.10.4", "@babel/code-frame@^7.12.13", "@babel/code-frame@^7.23.5": version "7.23.5" @@ -24,20 +24,20 @@ integrity sha512-uU27kfDRlhfKl+w1U6vp16IuvSLtjAxdArVXPa9BvLkrr7CYIsxH5adpHObeAGY/41+syctUWOZ140a2Rvkgjw== "@babel/core@^7.1.0", "@babel/core@^7.12.3", "@babel/core@^7.7.2", "@babel/core@^7.8.0": - version "7.23.9" - resolved "https://registry.yarnpkg.com/@babel/core/-/core-7.23.9.tgz#b028820718000f267870822fec434820e9b1e4d1" - integrity sha512-5q0175NOjddqpvvzU+kDiSOAk4PfdO6FvwCWoQ6RO7rTzEe8vlo+4HVfcnAREhD4npMs0e9uZypjTwzZPCf/cw== + version "7.24.0" + resolved "https://registry.yarnpkg.com/@babel/core/-/core-7.24.0.tgz#56cbda6b185ae9d9bed369816a8f4423c5f2ff1b" + integrity sha512-fQfkg0Gjkza3nf0c7/w6Xf34BW4YvzNfACRLmmb7XRLa6XHdR+K9AlJlxneFfWYf6uhOzuzZVTjF/8KfndZANw== dependencies: "@ampproject/remapping" "^2.2.0" "@babel/code-frame" "^7.23.5" "@babel/generator" "^7.23.6" "@babel/helper-compilation-targets" "^7.23.6" "@babel/helper-module-transforms" "^7.23.3" - "@babel/helpers" "^7.23.9" - "@babel/parser" "^7.23.9" - "@babel/template" "^7.23.9" - "@babel/traverse" "^7.23.9" - "@babel/types" "^7.23.9" + "@babel/helpers" "^7.24.0" + "@babel/parser" "^7.24.0" + "@babel/template" "^7.24.0" + "@babel/traverse" "^7.24.0" + "@babel/types" "^7.24.0" convert-source-map "^2.0.0" debug "^4.1.0" gensync "^1.0.0-beta.2" @@ -104,9 +104,9 @@ "@babel/helper-validator-identifier" "^7.22.20" "@babel/helper-plugin-utils@^7.0.0", "@babel/helper-plugin-utils@^7.10.4", "@babel/helper-plugin-utils@^7.12.13", "@babel/helper-plugin-utils@^7.14.5", "@babel/helper-plugin-utils@^7.22.5", "@babel/helper-plugin-utils@^7.8.0": - version "7.22.5" - resolved "https://registry.yarnpkg.com/@babel/helper-plugin-utils/-/helper-plugin-utils-7.22.5.tgz#dd7ee3735e8a313b9f7b05a773d892e88e6d7295" - integrity sha512-uLls06UVKgFG9QD4OeFYLEGteMIAa5kpTPcFL28yuCIIzsf6ZyKZMllKVOCZFhiZ5ptnwX4mtKdWCBE/uT4amg== + version "7.24.0" + resolved "https://registry.yarnpkg.com/@babel/helper-plugin-utils/-/helper-plugin-utils-7.24.0.tgz#945681931a52f15ce879fd5b86ce2dae6d3d7f2a" + integrity sha512-9cUznXMG0+FxRuJfvL82QlTqIzhVW9sL0KjMPHhAOOvpQGL8QtdxnBKILjBqxlHyliz0yCa1G903ZXI/FuHy2w== "@babel/helper-simple-access@^7.22.5": version "7.22.5" @@ -137,14 +137,14 @@ resolved "https://registry.yarnpkg.com/@babel/helper-validator-option/-/helper-validator-option-7.23.5.tgz#907a3fbd4523426285365d1206c423c4c5520307" integrity sha512-85ttAOMLsr53VgXkTbkx8oA6YTfT4q7/HzXSLEYmjcSTJPMPQtvq1BD79Byep5xMUYbGRzEpDsjUf3dyp54IKw== -"@babel/helpers@^7.23.9": - version "7.23.9" - resolved "https://registry.yarnpkg.com/@babel/helpers/-/helpers-7.23.9.tgz#c3e20bbe7f7a7e10cb9b178384b4affdf5995c7d" - integrity sha512-87ICKgU5t5SzOT7sBMfCOZQ2rHjRU+Pcb9BoILMYz600W6DkVRLFBPwQ18gwUVvggqXivaUakpnxWQGbpywbBQ== +"@babel/helpers@^7.24.0": + version "7.24.0" + resolved "https://registry.yarnpkg.com/@babel/helpers/-/helpers-7.24.0.tgz#a3dd462b41769c95db8091e49cfe019389a9409b" + integrity sha512-ulDZdc0Aj5uLc5nETsa7EPx2L7rM0YJM8r7ck7U73AXi7qOV44IHHRAYZHY6iU1rr3C5N4NtTmMRUJP6kwCWeA== dependencies: - "@babel/template" "^7.23.9" - "@babel/traverse" "^7.23.9" - "@babel/types" "^7.23.9" + "@babel/template" "^7.24.0" + "@babel/traverse" "^7.24.0" + "@babel/types" "^7.24.0" "@babel/highlight@^7.23.4": version "7.23.4" @@ -155,10 +155,10 @@ chalk "^2.4.2" js-tokens "^4.0.0" -"@babel/parser@^7.1.0", "@babel/parser@^7.14.7", "@babel/parser@^7.20.7", "@babel/parser@^7.23.9": - version "7.23.9" - resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.23.9.tgz#7b903b6149b0f8fa7ad564af646c4c38a77fc44b" - integrity sha512-9tcKgqKbs3xGJ+NtKF2ndOBBLVwPjl1SHxPQkd36r3Dlirw3xWUeGaTbqr7uGZcTaxkVNwc+03SVP7aCdWrTlA== +"@babel/parser@^7.1.0", "@babel/parser@^7.14.7", "@babel/parser@^7.20.7", "@babel/parser@^7.24.0": + version "7.24.0" + resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.24.0.tgz#26a3d1ff49031c53a97d03b604375f028746a9ac" + integrity sha512-QuP/FxEAzMSjXygs8v4N9dvdXzEHN4W1oF3PxuWAtPo08UdM17u89RDMgjLn/mlc56iM0HlLmVkO/wgR+rDgHg== "@babel/plugin-syntax-async-generators@^7.8.4": version "7.8.4" @@ -251,19 +251,19 @@ dependencies: "@babel/helper-plugin-utils" "^7.22.5" -"@babel/template@^7.22.15", "@babel/template@^7.23.9", "@babel/template@^7.3.3": - version "7.23.9" - resolved "https://registry.yarnpkg.com/@babel/template/-/template-7.23.9.tgz#f881d0487cba2828d3259dcb9ef5005a9731011a" - integrity sha512-+xrD2BWLpvHKNmX2QbpdpsBaWnRxahMwJjO+KZk2JOElj5nSmKezyS1B4u+QbHMTX69t4ukm6hh9lsYQ7GHCKA== +"@babel/template@^7.22.15", "@babel/template@^7.24.0", "@babel/template@^7.3.3": + version "7.24.0" + resolved "https://registry.yarnpkg.com/@babel/template/-/template-7.24.0.tgz#c6a524aa93a4a05d66aaf31654258fae69d87d50" + integrity sha512-Bkf2q8lMB0AFpX0NFEqSbx1OkTHf0f+0j82mkw+ZpzBnkk7e9Ql0891vlfgi+kHwOk8tQjiQHpqh4LaSa0fKEA== dependencies: "@babel/code-frame" "^7.23.5" - "@babel/parser" "^7.23.9" - "@babel/types" "^7.23.9" + "@babel/parser" "^7.24.0" + "@babel/types" "^7.24.0" -"@babel/traverse@^7.23.9", "@babel/traverse@^7.7.2": - version "7.23.9" - resolved "https://registry.yarnpkg.com/@babel/traverse/-/traverse-7.23.9.tgz#2f9d6aead6b564669394c5ce0f9302bb65b9d950" - integrity sha512-I/4UJ9vs90OkBtY6iiiTORVMyIhJ4kAVmsKo9KFc8UOxMeUfi2hvtIBsET5u9GizXE6/GFSuKCTNfgCswuEjRg== +"@babel/traverse@^7.24.0", "@babel/traverse@^7.7.2": + version "7.24.0" + resolved "https://registry.yarnpkg.com/@babel/traverse/-/traverse-7.24.0.tgz#4a408fbf364ff73135c714a2ab46a5eab2831b1e" + integrity sha512-HfuJlI8qq3dEDmNU5ChzzpZRWq+oxCZQyMzIMEqLho+AQnhMnKQUzH6ydo3RBl/YjPCuk68Y6s0Gx0AeyULiWw== dependencies: "@babel/code-frame" "^7.23.5" "@babel/generator" "^7.23.6" @@ -271,15 +271,15 @@ "@babel/helper-function-name" "^7.23.0" "@babel/helper-hoist-variables" "^7.22.5" "@babel/helper-split-export-declaration" "^7.22.6" - "@babel/parser" "^7.23.9" - "@babel/types" "^7.23.9" + "@babel/parser" "^7.24.0" + "@babel/types" "^7.24.0" debug "^4.3.1" globals "^11.1.0" -"@babel/types@^7.0.0", "@babel/types@^7.20.7", "@babel/types@^7.22.15", "@babel/types@^7.22.5", "@babel/types@^7.23.0", "@babel/types@^7.23.6", "@babel/types@^7.23.9", "@babel/types@^7.3.3": - version "7.23.9" - resolved "https://registry.yarnpkg.com/@babel/types/-/types-7.23.9.tgz#1dd7b59a9a2b5c87f8b41e52770b5ecbf492e002" - integrity sha512-dQjSq/7HaSjRM43FFGnv5keM2HsxpmyV1PfaSVm0nzzjwwTmjOe6J4bC8e3+pTEIgHaHj+1ZlLThRJ2auc/w1Q== +"@babel/types@^7.0.0", "@babel/types@^7.20.7", "@babel/types@^7.22.15", "@babel/types@^7.22.5", "@babel/types@^7.23.0", "@babel/types@^7.23.6", "@babel/types@^7.24.0", "@babel/types@^7.3.3": + version "7.24.0" + resolved "https://registry.yarnpkg.com/@babel/types/-/types-7.24.0.tgz#3b951f435a92e7333eba05b7566fd297960ea1bf" + integrity sha512-+j7a5c253RfKh8iABBhywc8NSfP5LURe7Uh4qpsh6jc+aLJguvmIUBdjSdEMQv2bENrCR5MfRdjGo7vzS/ob7w== dependencies: "@babel/helper-string-parser" "^7.23.4" "@babel/helper-validator-identifier" "^7.22.20" @@ -492,24 +492,24 @@ "@types/yargs" "^16.0.0" chalk "^4.0.0" -"@jridgewell/gen-mapping@^0.3.0", "@jridgewell/gen-mapping@^0.3.2": - version "0.3.3" - resolved "https://registry.yarnpkg.com/@jridgewell/gen-mapping/-/gen-mapping-0.3.3.tgz#7e02e6eb5df901aaedb08514203b096614024098" - integrity sha512-HLhSWOLRi875zjjMG/r+Nv0oCW8umGb0BgEhyX3dDX3egwZtB8PqLnjz3yedt8R5StBrzcg4aBpnh8UA9D1BoQ== +"@jridgewell/gen-mapping@^0.3.0", "@jridgewell/gen-mapping@^0.3.2", "@jridgewell/gen-mapping@^0.3.5": + version "0.3.5" + resolved "https://registry.yarnpkg.com/@jridgewell/gen-mapping/-/gen-mapping-0.3.5.tgz#dcce6aff74bdf6dad1a95802b69b04a2fcb1fb36" + integrity sha512-IzL8ZoEDIBRWEzlCcRhOaCupYyN5gdIK+Q6fbFdPDg6HqX6jpkItn7DFIpW9LQzXG6Df9sA7+OKnq0qlz/GaQg== dependencies: - "@jridgewell/set-array" "^1.0.1" + "@jridgewell/set-array" "^1.2.1" "@jridgewell/sourcemap-codec" "^1.4.10" - "@jridgewell/trace-mapping" "^0.3.9" + "@jridgewell/trace-mapping" "^0.3.24" "@jridgewell/resolve-uri@^3.0.3", "@jridgewell/resolve-uri@^3.1.0": - version "3.1.1" - resolved "https://registry.yarnpkg.com/@jridgewell/resolve-uri/-/resolve-uri-3.1.1.tgz#c08679063f279615a3326583ba3a90d1d82cc721" - integrity sha512-dSYZh7HhCDtCKm4QakX0xFpsRDqjjtZf/kjI/v3T3Nwt5r8/qz/M19F9ySyOqU94SXBmeG9ttTul+YnR4LOxFA== + version "3.1.2" + resolved "https://registry.yarnpkg.com/@jridgewell/resolve-uri/-/resolve-uri-3.1.2.tgz#7a0ee601f60f99a20c7c7c5ff0c80388c1189bd6" + integrity sha512-bRISgCIjP20/tbWSPWMEi54QVPRZExkuD9lJL+UIxUKtwVJA8wW1Trb1jMs1RFXo1CBTNZ/5hpC9QvmKWdopKw== -"@jridgewell/set-array@^1.0.1": - version "1.1.2" - resolved "https://registry.yarnpkg.com/@jridgewell/set-array/-/set-array-1.1.2.tgz#7c6cf998d6d20b914c0a55a91ae928ff25965e72" - integrity sha512-xnkseuNADM0gt2bs+BvhO0p78Mk762YnZdsuzFV018NoG1Sj1SCQvpSqa7XUaTam5vAGasABV9qXASMKnFMwMw== +"@jridgewell/set-array@^1.2.1": + version "1.2.1" + resolved "https://registry.yarnpkg.com/@jridgewell/set-array/-/set-array-1.2.1.tgz#558fb6472ed16a4c850b889530e6b36438c49280" + integrity sha512-R8gLRTZeyp03ymzP/6Lil/28tGeGEzhx1q2k703KGWRAI1VdvPIXdG70VJc2pAMw3NA6JKL5hhFu1sJX0Mnn/A== "@jridgewell/source-map@^0.3.3": version "0.3.5" @@ -532,10 +532,10 @@ "@jridgewell/resolve-uri" "^3.0.3" "@jridgewell/sourcemap-codec" "^1.4.10" -"@jridgewell/trace-mapping@^0.3.17", "@jridgewell/trace-mapping@^0.3.9": - version "0.3.22" - resolved "https://registry.yarnpkg.com/@jridgewell/trace-mapping/-/trace-mapping-0.3.22.tgz#72a621e5de59f5f1ef792d0793a82ee20f645e4c" - integrity sha512-Wf963MzWtA2sjrNt+g18IAln9lKnlRp+K2eH4jjIoF1wYeq3aMREpG09xhlhdzS0EjwU7qmUJYangWa+151vZw== +"@jridgewell/trace-mapping@^0.3.17", "@jridgewell/trace-mapping@^0.3.24", "@jridgewell/trace-mapping@^0.3.9": + version "0.3.25" + resolved "https://registry.yarnpkg.com/@jridgewell/trace-mapping/-/trace-mapping-0.3.25.tgz#15f190e98895f3fc23276ee14bc76b675c2e50f0" + integrity sha512-vNk6aEwybGtawWmy/PzwnGDOjCkLWSD2wqvjGGAgOAwCGWySYXfYoxt00IJkTF+8Lb57DwOb3Aa0o9CApepiYQ== dependencies: "@jridgewell/resolve-uri" "^3.1.0" "@jridgewell/sourcemap-codec" "^1.4.14" @@ -1403,30 +1403,30 @@ dependencies: "@octokit/openapi-types" "^12.11.0" -"@preserves/core@0.994.0", "@preserves/core@^0.994.0": - version "0.994.0" - resolved "https://registry.yarnpkg.com/@preserves/core/-/core-0.994.0.tgz#bf01e629135a729c554b0626c7c0e24f10a2c8b5" - integrity sha512-NxmjSaUAALECr0oBVWR0Qax9GFyv6jzwYlLezXbYvvKL6j/y/11ccxExsG37h07k84STC9DPtz8b1n59xq/3PA== +"@preserves/core@0.995.0", "@preserves/core@^0.995.0": + version "0.995.0" + resolved "https://registry.yarnpkg.com/@preserves/core/-/core-0.995.0.tgz#d6badccd1fe56e45f23e01b4c8a33f421749e76b" + integrity sha512-0ICNcZ7HkBal1OJwoUuc1+KqoTQNJl2kYI3/nMtfrtNMem908unpydLo20k44Fgh/SRJekWaiRYSzKTcOo0+Tg== -"@preserves/schema-cli@0.994.0": - version "0.994.0" - resolved "https://registry.yarnpkg.com/@preserves/schema-cli/-/schema-cli-0.994.0.tgz#ac8caca7ff1dcc60d9649cfa93c96623f6ef42b0" - integrity sha512-WLJkpjYetZfQ7JsswGXbaL+ePQeKgOVH9LdhBPPWPTU5AaNccxiwxEkHJwGdv5hrsupsbMT0WVjNiIZvxBKdWA== +"@preserves/schema-cli@0.995.0": + version "0.995.0" + resolved "https://registry.yarnpkg.com/@preserves/schema-cli/-/schema-cli-0.995.0.tgz#dcd5b27e994072fae16e343e00167d435e74b1bd" + integrity sha512-JZavLU2Mqz+nfMULmjYxOd4Rx9djfMvHUFCll3iQ1Y0VmZU/46K+bSyvB10SKGkEWA/BBvLsrZgEqt8YKlRFkQ== dependencies: - "@preserves/core" "^0.994.0" - "@preserves/schema" "^0.994.0" + "@preserves/core" "^0.995.0" + "@preserves/schema" "^0.995.0" chalk "^4.1" chokidar "^3.5" commander "^7.2" glob "^7.1" minimatch "^3.0" -"@preserves/schema@0.994.0", "@preserves/schema@^0.994.0": - version "0.994.0" - resolved "https://registry.yarnpkg.com/@preserves/schema/-/schema-0.994.0.tgz#8937e2e13b73b1d9d26a8033c031e8ac93dc47ef" - integrity sha512-eDIjJvrmAykDmBWEPxPq1HD5XsLTlB0atX9kA5b4W0bmstTqOxJcsyIP+WK3Rp3HZN74Wg3UnQ21kf9KgDWAhA== +"@preserves/schema@0.995.0", "@preserves/schema@^0.995.0": + version "0.995.0" + resolved "https://registry.yarnpkg.com/@preserves/schema/-/schema-0.995.0.tgz#b04832d46b24f05432ddfd4153a8b6b4a9d9482f" + integrity sha512-9WzdCMynDbhLYUypkWMr4kOhZn7QQ/7PwH6XPQ2aNsisc/ApVhrhA3H6Y96z4VIcfQBnRzozoYu9848j3KhOUw== dependencies: - "@preserves/core" "^0.994.0" + "@preserves/core" "^0.995.0" "@rollup/plugin-node-resolve@^13.0": version "13.3.0" @@ -1584,9 +1584,9 @@ integrity sha512-hov8bUuiLiyFPGyFPE1lwWhmzYbirOXQNNo40+y3zow8aFVTeyn3VWL0VFFfdNddA8S4Vf0Tc062rzyNr7Paag== "@types/node@*": - version "20.11.16" - resolved "https://registry.yarnpkg.com/@types/node/-/node-20.11.16.tgz#4411f79411514eb8e2926f036c86c9f0e4ec6708" - integrity sha512-gKb0enTmRCzXSSUJDq6/sPcqrfCv2mkkG6Jt/clpn5eiCbKTY+SgZUxo+p8ZKMof5dCp9vHQUAB7wOUTod22wQ== + version "20.11.25" + resolved "https://registry.yarnpkg.com/@types/node/-/node-20.11.25.tgz#0f50d62f274e54dd7a49f7704cc16bfbcccaf49f" + integrity sha512-TBHyJxk2b7HceLVGFcpAUjsa5zIdsPWlR6XHfyGzd0SFu+/NFgQgMAl96MSDZgQDvJAvV6BKsFOrt6zIL09JDw== dependencies: undici-types "~5.26.4" @@ -1815,13 +1815,13 @@ argparse@^1.0.7: dependencies: sprintf-js "~1.0.2" -array-buffer-byte-length@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/array-buffer-byte-length/-/array-buffer-byte-length-1.0.0.tgz#fabe8bc193fea865f317fe7807085ee0dee5aead" - integrity sha512-LPuwb2P+NrQw3XhxGc36+XSvuBPopovXYTR9Ew++Du9Yb/bx5AzBfrIsBoj0EZUifjQU+sHL21sseZ3jerWO/A== +array-buffer-byte-length@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/array-buffer-byte-length/-/array-buffer-byte-length-1.0.1.tgz#1e5583ec16763540a27ae52eed99ff899223568f" + integrity sha512-ahC5W1xgou+KTXix4sAO8Ki12Q+jf4i0+tmk3sC+zgcynshkHxzpXdImBehiUYKKKDwvfFiJl1tZt6ewscS1Mg== dependencies: - call-bind "^1.0.2" - is-array-buffer "^3.0.1" + call-bind "^1.0.5" + is-array-buffer "^3.0.4" array-differ@^3.0.0: version "3.0.0" @@ -1849,17 +1849,18 @@ array.prototype.reduce@^1.0.6: es-array-method-boxes-properly "^1.0.0" is-string "^1.0.7" -arraybuffer.prototype.slice@^1.0.2: - version "1.0.2" - resolved "https://registry.yarnpkg.com/arraybuffer.prototype.slice/-/arraybuffer.prototype.slice-1.0.2.tgz#98bd561953e3e74bb34938e77647179dfe6e9f12" - integrity sha512-yMBKppFur/fbHu9/6USUe03bZ4knMYiwFBcyiaXB8Go0qNehwX6inYPzK9U0NeQvGxKthcmHcaR8P5MStSRBAw== +arraybuffer.prototype.slice@^1.0.3: + version "1.0.3" + resolved "https://registry.yarnpkg.com/arraybuffer.prototype.slice/-/arraybuffer.prototype.slice-1.0.3.tgz#097972f4255e41bc3425e37dc3f6421cf9aefde6" + integrity sha512-bMxMKAjg13EBSVscxTaYA4mRc5t1UAXa2kXiGTNfZ079HIWXEkKmkgFrh/nJqamaLSrXO5H4WFFkPEaLJWbs3A== dependencies: - array-buffer-byte-length "^1.0.0" - call-bind "^1.0.2" - define-properties "^1.2.0" - es-abstract "^1.22.1" - get-intrinsic "^1.2.1" - is-array-buffer "^3.0.2" + array-buffer-byte-length "^1.0.1" + call-bind "^1.0.5" + define-properties "^1.2.1" + es-abstract "^1.22.3" + es-errors "^1.2.1" + get-intrinsic "^1.2.3" + is-array-buffer "^3.0.4" is-shared-array-buffer "^1.0.2" arrify@^1.0.1: @@ -1904,10 +1905,12 @@ atob@^2.1.2: resolved "https://registry.yarnpkg.com/atob/-/atob-2.1.2.tgz#6d9517eb9e030d2436666651e86bd9f6f13533c9" integrity sha512-Wm6ukoaOGJi/73p/cl2GvLjTI5JM1k/O14isD73YML8StrH/7/lRFgmg8nICZgD3bZZvjwCGxtMOD3wWNAu8cg== -available-typed-arrays@^1.0.5, available-typed-arrays@^1.0.6: - version "1.0.6" - resolved "https://registry.yarnpkg.com/available-typed-arrays/-/available-typed-arrays-1.0.6.tgz#ac812d8ce5a6b976d738e1c45f08d0b00bc7d725" - integrity sha512-j1QzY8iPNPG4o4xmO3ptzpRxTciqD3MgEHtifP/YnJpIo58Xu+ne4BejlbkuaLfXn/nz6HFiw29bLpj2PNMdGg== +available-typed-arrays@^1.0.6, available-typed-arrays@^1.0.7: + version "1.0.7" + resolved "https://registry.yarnpkg.com/available-typed-arrays/-/available-typed-arrays-1.0.7.tgz#a5cc375d6a03c2efc87a553f3e0b1522def14846" + integrity sha512-wvUjBtSGN7+7SjNpq/9M2Tg350UZD3q62IFZLbRAR1bSMlCo1ZaeW+BJ+D090e4hIIZLBcTDWe4Mh4jvUDajzQ== + dependencies: + possible-typed-array-names "^1.0.0" aws-sign2@~0.7.0: version "0.7.0" @@ -2041,12 +2044,12 @@ browser-process-hrtime@^1.0.0: integrity sha512-9o5UecI3GhkpM6DrXr69PblIuWxPKk9Y0jHBRhdocZ2y7YECBFCsHm79Pr3OyR2AvjhDkabFJaDJMYRazHgsow== browserslist@^4.22.2: - version "4.22.3" - resolved "https://registry.yarnpkg.com/browserslist/-/browserslist-4.22.3.tgz#299d11b7e947a6b843981392721169e27d60c5a6" - integrity sha512-UAp55yfwNv0klWNapjs/ktHoguxuQNGnOzxYmfnXIS+8AsRDZkSDxg7R1AX3GKzn078SBI5dzwzj/Yx0Or0e3A== + version "4.23.0" + resolved "https://registry.yarnpkg.com/browserslist/-/browserslist-4.23.0.tgz#8f3acc2bbe73af7213399430890f86c63a5674ab" + integrity sha512-QW8HiM1shhT2GuzkvklfjcKDiWFXHOeFCIA/huJPwHsslwcydgk7X+z2zXpEijP98UCY7HbubZt5J2Zgvf0CaQ== dependencies: - caniuse-lite "^1.0.30001580" - electron-to-chromium "^1.4.648" + caniuse-lite "^1.0.30001587" + electron-to-chromium "^1.4.668" node-releases "^2.0.14" update-browserslist-db "^1.0.13" @@ -2123,14 +2126,16 @@ cacache@^15.0.5, cacache@^15.2.0: tar "^6.0.2" unique-filename "^1.1.1" -call-bind@^1.0.0, call-bind@^1.0.2, call-bind@^1.0.5: - version "1.0.5" - resolved "https://registry.yarnpkg.com/call-bind/-/call-bind-1.0.5.tgz#6fa2b7845ce0ea49bf4d8b9ef64727a2c2e2e513" - integrity sha512-C3nQxfFZxFRVoJoGKKI8y3MOEo129NQ+FgQ08iye+Mk4zNZZGdjfs06bVTr+DBSlA66Q2VEcMki/cUCP4SercQ== +call-bind@^1.0.2, call-bind@^1.0.5, call-bind@^1.0.6, call-bind@^1.0.7: + version "1.0.7" + resolved "https://registry.yarnpkg.com/call-bind/-/call-bind-1.0.7.tgz#06016599c40c56498c18769d2730be242b6fa3b9" + integrity sha512-GHTSNSYICQ7scH7sZ+M2rFopRoLh8t2bLSW6BbgrtLsahOIB5iyAVJf9GjWK3cYTDaMj4XdBpM1cA6pIS0Kv2w== dependencies: + es-define-property "^1.0.0" + es-errors "^1.3.0" function-bind "^1.1.2" - get-intrinsic "^1.2.1" - set-function-length "^1.1.1" + get-intrinsic "^1.2.4" + set-function-length "^1.2.1" callsites@^3.0.0: version "3.1.0" @@ -2156,10 +2161,10 @@ camelcase@^6.2.0: resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-6.3.0.tgz#5685b95eb209ac9c0c177467778c9c84df58ba9a" integrity sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA== -caniuse-lite@^1.0.30001580: - version "1.0.30001583" - resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30001583.tgz#abb2970cc370801dc7e27bf290509dc132cfa390" - integrity sha512-acWTYaha8xfhA/Du/z4sNZjHUWjkiuoAi2LM+T/aL+kemKQgPT1xBb/YKjlQ0Qo8gvbHsGNplrEJ+9G3gL7i4Q== +caniuse-lite@^1.0.30001587: + version "1.0.30001596" + resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30001596.tgz#da06b79c3d9c3d9958eb307aa832ac68ead79bee" + integrity sha512-zpkZ+kEr6We7w63ORkoJ2pOfBwBkY/bJrG/UZ90qNb45Isblu8wzDgevEOrRL1r9dWayHjYiiyCMEXPn4DweGQ== caseless@~0.12.0: version "0.12.0" @@ -2201,9 +2206,9 @@ chardet@^0.7.0: integrity sha512-mT8iDcrh03qDGRRmoA2hmBJnxpllMR+0/0qlzjqZES6NdiWDcZkCNAk4rPFZ9Q85r27unkiNNg8ZOiwZXBHwcA== chokidar@^3.5, chokidar@^3.5.1, chokidar@^3.5.3: - version "3.5.3" - resolved "https://registry.yarnpkg.com/chokidar/-/chokidar-3.5.3.tgz#1cf37c8707b932bd1af1ae22c0432e2acd1903bd" - integrity sha512-Dr3sfKRP6oTcjf2JmUmFJfeVMvXBdegxB0iVQ5eb2V10uFJUCAS8OByZdVAyVb8xXNz3GjjTgj9kLWsZTqE6kw== + version "3.6.0" + resolved "https://registry.yarnpkg.com/chokidar/-/chokidar-3.6.0.tgz#197c6cc669ef2a8dc5e7b4d97ee4e092c3eb0d5b" + integrity sha512-7VT13fmjotKpGipCW9JEQAusEPE+Ei8nl6/g4FBAmIm0GOOLMua9NDDo/DWp0ZAxCr3cPq5ZpBqmPAQgDda2Pw== dependencies: anymatch "~3.1.2" braces "~3.0.2" @@ -2609,14 +2614,14 @@ defaults@^1.0.3: dependencies: clone "^1.0.2" -define-data-property@^1.0.1, define-data-property@^1.1.1: - version "1.1.1" - resolved "https://registry.yarnpkg.com/define-data-property/-/define-data-property-1.1.1.tgz#c35f7cd0ab09883480d12ac5cb213715587800b3" - integrity sha512-E7uGkTzkk1d0ByLeSc6ZsFS79Axg+m1P/VsgYsxHgiuc3tFSj+MjMIwe90FC4lOAZzNBdY7kkO2P2wKdsQ1vgQ== +define-data-property@^1.0.1, define-data-property@^1.1.2, define-data-property@^1.1.4: + version "1.1.4" + resolved "https://registry.yarnpkg.com/define-data-property/-/define-data-property-1.1.4.tgz#894dc141bb7d3060ae4366f6a0107e68fbe48c5e" + integrity sha512-rBMvIzlpA8v6E+SJZoo++HAYqsLrkg7MSfIinMPFhmkorw7X+dOXVJQs+QT69zGkzMyfDnIMN2Wid1+NbL3T+A== dependencies: - get-intrinsic "^1.2.1" + es-define-property "^1.0.0" + es-errors "^1.3.0" gopd "^1.0.1" - has-property-descriptors "^1.0.0" define-properties@^1.1.3, define-properties@^1.2.0, define-properties@^1.2.1: version "1.2.1" @@ -2730,10 +2735,10 @@ ecc-jsbn@~0.1.1: jsbn "~0.1.0" safer-buffer "^2.1.0" -electron-to-chromium@^1.4.648: - version "1.4.656" - resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.4.656.tgz#b374fb7cab9b782a5bc967c0ce0e19826186b9c9" - integrity sha512-9AQB5eFTHyR3Gvt2t/NwR0le2jBSUNwCnMbUCejFWHD+so4tH40/dRLgoE+jxlPeWS43XJewyvCv+I8LPMl49Q== +electron-to-chromium@^1.4.668: + version "1.4.698" + resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.4.698.tgz#0b3992ad3b572b646ce3f22e0145eab4abc559a7" + integrity sha512-f9iZD1t3CLy1AS6vzM5EKGa6p9pRcOeEFXRFbaG2Ta+Oe7MkfRQ3fsvPYidzHe1h4i0JvIvpcY55C+B6BZNGtQ== emittery@^0.8.1: version "0.8.1" @@ -2774,64 +2779,78 @@ error-ex@^1.3.1: dependencies: is-arrayish "^0.2.1" -es-abstract@^1.22.1: - version "1.22.3" - resolved "https://registry.yarnpkg.com/es-abstract/-/es-abstract-1.22.3.tgz#48e79f5573198de6dee3589195727f4f74bc4f32" - integrity sha512-eiiY8HQeYfYH2Con2berK+To6GrK2RxbPawDkGq4UiCQQfZHb6wX9qQqkbpPqaxQFcl8d9QzZqo0tGE0VcrdwA== +es-abstract@^1.22.1, es-abstract@^1.22.3: + version "1.22.5" + resolved "https://registry.yarnpkg.com/es-abstract/-/es-abstract-1.22.5.tgz#1417df4e97cc55f09bf7e58d1e614bc61cb8df46" + integrity sha512-oW69R+4q2wG+Hc3KZePPZxOiisRIqfKBVo/HLx94QcJeWGU/8sZhCvc829rd1kS366vlJbzBfXf9yWwf0+Ko7w== dependencies: - array-buffer-byte-length "^1.0.0" - arraybuffer.prototype.slice "^1.0.2" - available-typed-arrays "^1.0.5" - call-bind "^1.0.5" - es-set-tostringtag "^2.0.1" + array-buffer-byte-length "^1.0.1" + arraybuffer.prototype.slice "^1.0.3" + available-typed-arrays "^1.0.7" + call-bind "^1.0.7" + es-define-property "^1.0.0" + es-errors "^1.3.0" + es-set-tostringtag "^2.0.3" es-to-primitive "^1.2.1" function.prototype.name "^1.1.6" - get-intrinsic "^1.2.2" - get-symbol-description "^1.0.0" + get-intrinsic "^1.2.4" + get-symbol-description "^1.0.2" globalthis "^1.0.3" gopd "^1.0.1" - has-property-descriptors "^1.0.0" - has-proto "^1.0.1" + has-property-descriptors "^1.0.2" + has-proto "^1.0.3" has-symbols "^1.0.3" - hasown "^2.0.0" - internal-slot "^1.0.5" - is-array-buffer "^3.0.2" + hasown "^2.0.1" + internal-slot "^1.0.7" + is-array-buffer "^3.0.4" is-callable "^1.2.7" - is-negative-zero "^2.0.2" + is-negative-zero "^2.0.3" is-regex "^1.1.4" - is-shared-array-buffer "^1.0.2" + is-shared-array-buffer "^1.0.3" is-string "^1.0.7" - is-typed-array "^1.1.12" + is-typed-array "^1.1.13" is-weakref "^1.0.2" object-inspect "^1.13.1" object-keys "^1.1.1" - object.assign "^4.1.4" - regexp.prototype.flags "^1.5.1" - safe-array-concat "^1.0.1" - safe-regex-test "^1.0.0" + object.assign "^4.1.5" + regexp.prototype.flags "^1.5.2" + safe-array-concat "^1.1.0" + safe-regex-test "^1.0.3" string.prototype.trim "^1.2.8" string.prototype.trimend "^1.0.7" string.prototype.trimstart "^1.0.7" - typed-array-buffer "^1.0.0" - typed-array-byte-length "^1.0.0" - typed-array-byte-offset "^1.0.0" - typed-array-length "^1.0.4" + typed-array-buffer "^1.0.2" + typed-array-byte-length "^1.0.1" + typed-array-byte-offset "^1.0.2" + typed-array-length "^1.0.5" unbox-primitive "^1.0.2" - which-typed-array "^1.1.13" + which-typed-array "^1.1.14" es-array-method-boxes-properly@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/es-array-method-boxes-properly/-/es-array-method-boxes-properly-1.0.0.tgz#873f3e84418de4ee19c5be752990b2e44718d09e" integrity sha512-wd6JXUmyHmt8T5a2xreUwKcGPq6f1f+WwIJkijUqiGcJz1qqnZgP6XIK+QyIWU5lT7imeNxUll48bziG+TSYcA== -es-set-tostringtag@^2.0.1: - version "2.0.2" - resolved "https://registry.yarnpkg.com/es-set-tostringtag/-/es-set-tostringtag-2.0.2.tgz#11f7cc9f63376930a5f20be4915834f4bc74f9c9" - integrity sha512-BuDyupZt65P9D2D2vA/zqcI3G5xRsklm5N3xCwuiy+/vKy8i0ifdsQP1sLgO4tZDSCaQUSnmC48khknGMV3D2Q== +es-define-property@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/es-define-property/-/es-define-property-1.0.0.tgz#c7faefbdff8b2696cf5f46921edfb77cc4ba3845" + integrity sha512-jxayLKShrEqqzJ0eumQbVhTYQM27CfT1T35+gCgDFoL82JLsXqTJ76zv6A0YLOgEnLUMvLzsDsGIrl8NFpT2gQ== dependencies: - get-intrinsic "^1.2.2" - has-tostringtag "^1.0.0" - hasown "^2.0.0" + get-intrinsic "^1.2.4" + +es-errors@^1.2.1, es-errors@^1.3.0: + version "1.3.0" + resolved "https://registry.yarnpkg.com/es-errors/-/es-errors-1.3.0.tgz#05f75a25dab98e4fb1dcd5e1472c0546d5057c8f" + integrity sha512-Zf5H2Kxt2xjTvbJvP2ZWLEICxA6j+hAmMzIlypy4xcBg1vKVnx89Wy0GbS+kf5cwCVFFzdCFh2XSCFNULS6csw== + +es-set-tostringtag@^2.0.3: + version "2.0.3" + resolved "https://registry.yarnpkg.com/es-set-tostringtag/-/es-set-tostringtag-2.0.3.tgz#8bb60f0a440c2e4281962428438d58545af39777" + integrity sha512-3T8uNMC3OQTHkFUsFq8r/BwAXLHvU/9O9mE0fBc/MY5iq/8H7ncvO947LmYA6ldWw9Uh8Yhf25zu6n7nML5QWQ== + dependencies: + get-intrinsic "^1.2.4" + has-tostringtag "^1.0.2" + hasown "^2.0.1" es-to-primitive@^1.2.1: version "1.2.1" @@ -2843,9 +2862,9 @@ es-to-primitive@^1.2.1: is-symbol "^1.0.2" escalade@^3.1.1: - version "3.1.1" - resolved "https://registry.yarnpkg.com/escalade/-/escalade-3.1.1.tgz#d8cfdc7000965c5a0174b4a82eaa5c0552742e40" - integrity sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw== + version "3.1.2" + resolved "https://registry.yarnpkg.com/escalade/-/escalade-3.1.2.tgz#54076e9ab29ea5bf3d8f1ed62acffbb88272df27" + integrity sha512-ErCHMCae19vR8vQGe50xIsVomy19rg6gFu3+r3jkEO46suLMWBksvVyoGgQV+jOfl84ZSOSlmv6Gxa89PmTGmA== escape-string-regexp@^1.0.5: version "1.0.5" @@ -2974,9 +2993,9 @@ fast-json-stable-stringify@2.x, fast-json-stable-stringify@^2.0.0: integrity sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw== fastq@^1.6.0: - version "1.17.0" - resolved "https://registry.yarnpkg.com/fastq/-/fastq-1.17.0.tgz#ca5e1a90b5e68f97fc8b61330d5819b82f5fab03" - integrity sha512-zGygtijUMT7jnk3h26kUms3BkSDp4IfIKjmnqI2tvx6nuBfiF1UqOxbnLfzdv+apBy+53oaImsKtMw/xYbW+1w== + version "1.17.1" + resolved "https://registry.yarnpkg.com/fastq/-/fastq-1.17.1.tgz#2a523f07a4e7b1e81a42b91b8bf2254107753b47" + integrity sha512-sRVD3lWVIXWg6By68ZN7vho9a1pQcN/WBFaAAsDDFzlJjvoGx0P8z7V1t72grFJfJhu3YPZBuu25f7Kaw2jN1w== dependencies: reusify "^1.0.4" @@ -3139,11 +3158,12 @@ get-caller-file@^2.0.5: resolved "https://registry.yarnpkg.com/get-caller-file/-/get-caller-file-2.0.5.tgz#4f94412a82db32f36e3b0b9741f8a97feb031f7e" integrity sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg== -get-intrinsic@^1.0.2, get-intrinsic@^1.1.1, get-intrinsic@^1.1.3, get-intrinsic@^1.2.1, get-intrinsic@^1.2.2: - version "1.2.2" - resolved "https://registry.yarnpkg.com/get-intrinsic/-/get-intrinsic-1.2.2.tgz#281b7622971123e1ef4b3c90fd7539306da93f3b" - integrity sha512-0gSo4ml/0j98Y3lngkFEot/zhiCeWsbYIlZ+uZOVgzLyLaUw7wxUL+nCTP0XJvJg1AXulJRI3UJi8GsbDuxdGA== +get-intrinsic@^1.1.3, get-intrinsic@^1.2.1, get-intrinsic@^1.2.2, get-intrinsic@^1.2.3, get-intrinsic@^1.2.4: + version "1.2.4" + resolved "https://registry.yarnpkg.com/get-intrinsic/-/get-intrinsic-1.2.4.tgz#e385f5a4b5227d449c3eabbad05494ef0abbeadd" + integrity sha512-5uYhsJH8VJBTv7oslg4BznJYhDoRI6waYCxMmCdnTrcCrHA/fCFKoTFz2JKKE0HdDFUF7/oQuhzumXJK7paBRQ== dependencies: + es-errors "^1.3.0" function-bind "^1.1.2" has-proto "^1.0.1" has-symbols "^1.0.3" @@ -3174,13 +3194,14 @@ get-stream@^6.0.0: resolved "https://registry.yarnpkg.com/get-stream/-/get-stream-6.0.1.tgz#a262d8eef67aced57c2852ad6167526a43cbf7b7" integrity sha512-ts6Wi+2j3jQjqi70w5AlN8DFnkSwC+MqmxEzdEALB2qXZYV3X/b1CTfgPLGJNMeAWxdPfU8FO1ms3NUfaHCPYg== -get-symbol-description@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/get-symbol-description/-/get-symbol-description-1.0.0.tgz#7fdb81c900101fbd564dd5f1a30af5aadc1e58d6" - integrity sha512-2EmdH1YvIQiZpltCNgkuiUnyukzxM/R6NDJX31Ke3BG1Nq5b0S2PhX59UKi9vZpPDQVdqn+1IcaAwnzTT5vCjw== +get-symbol-description@^1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/get-symbol-description/-/get-symbol-description-1.0.2.tgz#533744d5aa20aca4e079c8e5daf7fd44202821f5" + integrity sha512-g0QYk1dZBxGwk+Ngc+ltRH2IBp2f7zBkBMBJZCDerh6EhlhSR6+9irMCuT/09zD6qkarHUSn529sK/yL4S27mg== dependencies: - call-bind "^1.0.2" - get-intrinsic "^1.1.1" + call-bind "^1.0.5" + es-errors "^1.3.0" + get-intrinsic "^1.2.4" getpass@^0.1.1: version "0.1.7" @@ -3338,24 +3359,24 @@ has-flag@^4.0.0: resolved "https://registry.yarnpkg.com/has-flag/-/has-flag-4.0.0.tgz#944771fd9c81c81265c4d6941860da06bb59479b" integrity sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ== -has-property-descriptors@^1.0.0, has-property-descriptors@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/has-property-descriptors/-/has-property-descriptors-1.0.1.tgz#52ba30b6c5ec87fd89fa574bc1c39125c6f65340" - integrity sha512-VsX8eaIewvas0xnvinAe9bw4WfIeODpGYikiWYLH+dma0Jw6KHYqWiWfhQlgOVK8D6PvjubK5Uc4P0iIhIcNVg== +has-property-descriptors@^1.0.0, has-property-descriptors@^1.0.1, has-property-descriptors@^1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/has-property-descriptors/-/has-property-descriptors-1.0.2.tgz#963ed7d071dc7bf5f084c5bfbe0d1b6222586854" + integrity sha512-55JNKuIW+vq4Ke1BjOTjM2YctQIvCT7GFzHwmfZPGo5wnrgkid0YQtnAleFSqumZm4az3n2BS+erby5ipJdgrg== dependencies: - get-intrinsic "^1.2.2" + es-define-property "^1.0.0" -has-proto@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/has-proto/-/has-proto-1.0.1.tgz#1885c1305538958aff469fef37937c22795408e0" - integrity sha512-7qE+iP+O+bgF9clE5+UoBFzE65mlBiVj3tKCrlNQ0Ogwm0BjpT/gK4SlLYDMybDh5I3TCTKnPPa0oMG7JDYrhg== +has-proto@^1.0.1, has-proto@^1.0.3: + version "1.0.3" + resolved "https://registry.yarnpkg.com/has-proto/-/has-proto-1.0.3.tgz#b31ddfe9b0e6e9914536a6ab286426d0214f77fd" + integrity sha512-SJ1amZAJUiZS+PhsVLf5tGydlaVB8EdFpaSO4gmiUKUOxk8qzn5AIy4ZeJUmh22znIdk/uMAUT2pl3FxzVUH+Q== has-symbols@^1.0.2, has-symbols@^1.0.3: version "1.0.3" resolved "https://registry.yarnpkg.com/has-symbols/-/has-symbols-1.0.3.tgz#bb7b2c4349251dce87b125f7bdf874aa7c8b39f8" integrity sha512-l3LCuF6MgDNwTDKkdYGEihYjt5pRPbEg46rtlmnSPlUbgmB8LOIrKJbYYFBSbnPaJexMKtiPO8hmeRjRz2Td+A== -has-tostringtag@^1.0.0, has-tostringtag@^1.0.1: +has-tostringtag@^1.0.0, has-tostringtag@^1.0.1, has-tostringtag@^1.0.2: version "1.0.2" resolved "https://registry.yarnpkg.com/has-tostringtag/-/has-tostringtag-1.0.2.tgz#2cdc42d40bef2e5b4eeab7c01a73c54ce7ab5abc" integrity sha512-NqADB8VjPFLM2V0VvHUewwwsw0ZWBaIdgo+ieHtK3hasLz4qeCRjYcqfB6AQrBggRKppKF8L52/VqdVsO47Dlw== @@ -3367,10 +3388,10 @@ has-unicode@^2.0.0, has-unicode@^2.0.1: resolved "https://registry.yarnpkg.com/has-unicode/-/has-unicode-2.0.1.tgz#e0e6fe6a28cf51138855e086d1691e771de2a8b9" integrity sha512-8Rf9Y83NBReMnx0gFzA8JImQACstCYWUplepDa9xprwwtmgEZUF0h/i5xSA625zB/I37EtrswSST6OXxwaaIJQ== -hasown@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/hasown/-/hasown-2.0.0.tgz#f4c513d454a57b7c7e1650778de226b11700546c" - integrity sha512-vUptKVTpIJhcczKBbgnS+RtcuYMB8+oNzPK2/Hp3hanz8JmpATdmmgLgSaadVREkDm+e2giHwY3ZRkyjSIDDFA== +hasown@^2.0.0, hasown@^2.0.1: + version "2.0.1" + resolved "https://registry.yarnpkg.com/hasown/-/hasown-2.0.1.tgz#26f48f039de2c0f8d3356c223fb8d50253519faa" + integrity sha512-1/th4MHjnwncwXsIW6QMzlvYL9kG5e/CpVvLRZe4XPa8TOUNbCELqmvhDmnkNsAjwaG4+I8gJJL0JBvTTLO9qA== dependencies: function-bind "^1.1.2" @@ -3548,21 +3569,24 @@ inquirer@^7.3.3: strip-ansi "^6.0.0" through "^2.3.6" -internal-slot@^1.0.5: - version "1.0.6" - resolved "https://registry.yarnpkg.com/internal-slot/-/internal-slot-1.0.6.tgz#37e756098c4911c5e912b8edbf71ed3aa116f930" - integrity sha512-Xj6dv+PsbtwyPpEflsejS+oIZxmMlV44zAhG479uYu89MsjcYOhCFnNyKrkJrihbsiasQyY0afoCl/9BLR65bg== +internal-slot@^1.0.7: + version "1.0.7" + resolved "https://registry.yarnpkg.com/internal-slot/-/internal-slot-1.0.7.tgz#c06dcca3ed874249881007b0a5523b172a190802" + integrity sha512-NGnrKwXzSms2qUUih/ILZ5JBqNTSa1+ZmP6flaIp6KmSElgE9qdndzS3cqjrDovwFdmwsGsLdeFgB6suw+1e9g== dependencies: - get-intrinsic "^1.2.2" + es-errors "^1.3.0" hasown "^2.0.0" side-channel "^1.0.4" -ip@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/ip/-/ip-2.0.0.tgz#4cf4ab182fee2314c75ede1276f8c80b479936da" - integrity sha512-WKa+XuLG1A1R0UWhl2+1XQSi+fZWMsYKffMZTTYsiZaUD8k2yDAj5atimTUD2TZkyCkNEeYE5NhFZmupOGtjYQ== +ip-address@^9.0.5: + version "9.0.5" + resolved "https://registry.yarnpkg.com/ip-address/-/ip-address-9.0.5.tgz#117a960819b08780c3bd1f14ef3c1cc1d3f3ea5a" + integrity sha512-zHtQzGojZXTwZTHQqra+ETKd4Sn3vgi7uBmlPoXVWZqYvuKmtI0l/VZTjqGmJY9x88GGOaZ9+G9ES8hC4T4X8g== + dependencies: + jsbn "1.1.0" + sprintf-js "^1.1.3" -is-array-buffer@^3.0.1, is-array-buffer@^3.0.2: +is-array-buffer@^3.0.4: version "3.0.4" resolved "https://registry.yarnpkg.com/is-array-buffer/-/is-array-buffer-3.0.4.tgz#7a1f92b3d61edd2bc65d24f130530ea93d7fae98" integrity sha512-wcjaerHw0ydZwfhiKbXJWLDY8A7yV7KhjQOpb83hGgGfId/aQa4TOvwyzn2PuswW2gPCYEL/nEAiSVpdOj1lXw== @@ -3669,10 +3693,10 @@ is-module@^1.0.0: resolved "https://registry.yarnpkg.com/is-module/-/is-module-1.0.0.tgz#3258fb69f78c14d5b815d664336b4cffb6441591" integrity sha512-51ypPSPCoTEIN9dy5Oy+h4pShgJmPCygKfyRCISBI+JoWT/2oJvK8QPxmwv7b/p239jXrm9M1mlQbyKJ5A152g== -is-negative-zero@^2.0.2: - version "2.0.2" - resolved "https://registry.yarnpkg.com/is-negative-zero/-/is-negative-zero-2.0.2.tgz#7bf6f03a28003b8b3965de3ac26f664d765f3150" - integrity sha512-dqJvarLawXsFbNDeJW7zAz8ItJ9cd28YufuuFzh0G8pNHjJMnY08Dv7sYX2uF5UpQOwieAeOExEYAWWfu7ZZUA== +is-negative-zero@^2.0.3: + version "2.0.3" + resolved "https://registry.yarnpkg.com/is-negative-zero/-/is-negative-zero-2.0.3.tgz#ced903a027aca6381b777a5743069d7376a49747" + integrity sha512-5KoIu2Ngpyek75jXodFvnafB6DJgr3u8uuK0LEZJjrU19DrMD3EVERaR8sjz8CCGgpZvxPl9SuE1GMVPFHx1mw== is-number-object@^1.0.4: version "1.0.7" @@ -3726,12 +3750,12 @@ is-regex@^1.1.4: call-bind "^1.0.2" has-tostringtag "^1.0.0" -is-shared-array-buffer@^1.0.2: - version "1.0.2" - resolved "https://registry.yarnpkg.com/is-shared-array-buffer/-/is-shared-array-buffer-1.0.2.tgz#8f259c573b60b6a32d4058a1a07430c0a7344c79" - integrity sha512-sqN2UDu1/0y6uvXyStCOzyhAjCSlHceFoMKJW8W9EU9cvic/QdsZ0kEU93HEy3IUEFZIiH/3w+AH/UQbPHNdhA== +is-shared-array-buffer@^1.0.2, is-shared-array-buffer@^1.0.3: + version "1.0.3" + resolved "https://registry.yarnpkg.com/is-shared-array-buffer/-/is-shared-array-buffer-1.0.3.tgz#1237f1cba059cdb62431d378dcc37d9680181688" + integrity sha512-nA2hv5XIhLR3uVzDDfCIknerhx8XUKnstuOERPNNIinXG7v9u+ohXF67vxm4TPTEPU6lm61ZkwP3c9PCB97rhg== dependencies: - call-bind "^1.0.2" + call-bind "^1.0.7" is-ssh@^1.3.0: version "1.4.0" @@ -3766,7 +3790,7 @@ is-text-path@^1.0.1: dependencies: text-extensions "^1.0.0" -is-typed-array@^1.1.10, is-typed-array@^1.1.12, is-typed-array@^1.1.9: +is-typed-array@^1.1.13: version "1.1.13" resolved "https://registry.yarnpkg.com/is-typed-array/-/is-typed-array-1.1.13.tgz#d6c5ca56df62334959322d7d7dd1cca50debe229" integrity sha512-uZ25/bUAlUY5fR4OKT4rZQEBrzQWYV9ZJYGGsUmEJ6thodVJ1HX64ePQ6Z0qPWP+m+Uq6e9UugrE38jeYsDSMw== @@ -3845,9 +3869,9 @@ istanbul-lib-source-maps@^4.0.0: source-map "^0.6.1" istanbul-reports@^3.1.3: - version "3.1.6" - resolved "https://registry.yarnpkg.com/istanbul-reports/-/istanbul-reports-3.1.6.tgz#2544bcab4768154281a2f0870471902704ccaa1a" - integrity sha512-TLgnMkKg3iTDsQ9PbPTdpfAK2DzjF9mqUG7RMgcQl8oFjad8ob4laGxv5XV5U9MAfx8D6tSJiUyuAwzLicaxlg== + version "3.1.7" + resolved "https://registry.yarnpkg.com/istanbul-reports/-/istanbul-reports-3.1.7.tgz#daed12b9e1dca518e15c056e1e537e741280fa0b" + integrity sha512-BewmUXImeuRk2YY0PVbxgKAysvhRPUQE0h5QRM++nVWyubKGV0l8qQ5op8+B2DOmwSe63Jivj0BjkPQVf8fP5g== dependencies: html-escaper "^2.0.0" istanbul-lib-report "^3.0.0" @@ -4279,6 +4303,11 @@ js-yaml@^3.13.1: argparse "^1.0.7" esprima "^4.0.0" +jsbn@1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/jsbn/-/jsbn-1.1.0.tgz#b01307cb29b618a1ed26ec79e911f803c4da0040" + integrity sha512-4bYVV3aAMtDTTu4+xsDYa6sy9GyJ69/amsu9sYF2zqjiEoZA5xJi3BrfX3uY+/IekIu7MwdObdbDWpoZdBv3/A== + jsbn@~0.1.0: version "0.1.1" resolved "https://registry.yarnpkg.com/jsbn/-/jsbn-0.1.1.tgz#a5e654c2e5a2deb5f201d96cefbca80c0ef2f513" @@ -5064,7 +5093,7 @@ object-assign@^4.1.0: resolved "https://registry.yarnpkg.com/object-assign/-/object-assign-4.1.1.tgz#2109adc7965887cfc05cbbd442cac8bfbb360863" integrity sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg== -object-inspect@^1.13.1, object-inspect@^1.9.0: +object-inspect@^1.13.1: version "1.13.1" resolved "https://registry.yarnpkg.com/object-inspect/-/object-inspect-1.13.1.tgz#b96c6109324ccfef6b12216a956ca4dc2ff94bc2" integrity sha512-5qoj1RUiKOMsCCNLV1CBiPYE10sziTsnmNxkAI/rZhiD63CF7IqdFGC/XzjWjpSgLf0LxXX3bDFIh0E18f6UhQ== @@ -5074,7 +5103,7 @@ object-keys@^1.1.1: resolved "https://registry.yarnpkg.com/object-keys/-/object-keys-1.1.1.tgz#1c47f272df277f3b1daf061677d9c82e2322c60e" integrity sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA== -object.assign@^4.1.4: +object.assign@^4.1.5: version "4.1.5" resolved "https://registry.yarnpkg.com/object.assign/-/object.assign-4.1.5.tgz#3a833f9ab7fdb80fc9e8d2300c803d216d8fdbb0" integrity sha512-byy+U7gp+FVwmyzKPYhW2h5l3crpmGsxl7X2s8y43IgxvG4g3QZ6CffDtsNQy1WsmZpQbO+ybo0AlW7TY6DcBQ== @@ -5373,6 +5402,11 @@ pkg-dir@^4.2.0: dependencies: find-up "^4.0.0" +possible-typed-array-names@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/possible-typed-array-names/-/possible-typed-array-names-1.0.0.tgz#89bb63c6fada2c3e90adc4a647beeeb39cc7bf8f" + integrity sha512-d7Uw+eZoloe0EHDIYoe+bQ5WXnGMOpmiZFTuMWCwpjzzkL2nTjcKiAk4hh8TjnGye2TwWOk3UXucZ+3rbmBa8Q== + pretty-format@^27.0.0, pretty-format@^27.5.1: version "27.5.1" resolved "https://registry.yarnpkg.com/pretty-format/-/pretty-format-27.5.1.tgz#2181879fdea51a7a5851fb39d920faa63f01d88e" @@ -5446,11 +5480,11 @@ q@^1.5.1: integrity sha512-kV/CThkXo6xyFEZUugw/+pIOywXcDbFYgSct5cT3gqlbkBE1SJdwy6UQoZvodiWF/ckQLZyDE/Bu1M6gVu5lVw== qs@^6.9.4: - version "6.11.2" - resolved "https://registry.yarnpkg.com/qs/-/qs-6.11.2.tgz#64bea51f12c1f5da1bc01496f48ffcff7c69d7d9" - integrity sha512-tDNIz22aBzCDxLtVH++VnTfzxlfeK5CbqohpSqpJgj1Wg/cQbStNAz3NuqCs5vV+pjBsK4x4pN9HlVh7rcYRiA== + version "6.12.0" + resolved "https://registry.yarnpkg.com/qs/-/qs-6.12.0.tgz#edd40c3b823995946a8a0b1f208669c7a200db77" + integrity sha512-trVZiI6RMOkO476zLGaBIzszOdFPnCCXHPG9kn0yuS1uz6xdVxPfZdB3vUig9pxPFDM9BRAgz/YUIVQ1/vuiUg== dependencies: - side-channel "^1.0.4" + side-channel "^1.0.6" qs@~6.5.2: version "6.5.3" @@ -5636,14 +5670,15 @@ redent@^3.0.0: indent-string "^4.0.0" strip-indent "^3.0.0" -regexp.prototype.flags@^1.5.1: - version "1.5.1" - resolved "https://registry.yarnpkg.com/regexp.prototype.flags/-/regexp.prototype.flags-1.5.1.tgz#90ce989138db209f81492edd734183ce99f9677e" - integrity sha512-sy6TXMN+hnP/wMy+ISxg3krXx7BAtWVO4UouuCN/ziM9UEne0euamVNafDfvC83bRNr95y0V5iijeDQFUNpvrg== +regexp.prototype.flags@^1.5.2: + version "1.5.2" + resolved "https://registry.yarnpkg.com/regexp.prototype.flags/-/regexp.prototype.flags-1.5.2.tgz#138f644a3350f981a858c44f6bb1a61ff59be334" + integrity sha512-NcDiDkTLuPR+++OCKB0nWafEmhg/Da8aUPLPMQbK+bxKKCm1/S5he+AqYa4PlMCVBalb4/yxIRub6qkEx5yJbw== dependencies: - call-bind "^1.0.2" - define-properties "^1.2.0" - set-function-name "^2.0.0" + call-bind "^1.0.6" + define-properties "^1.2.1" + es-errors "^1.3.0" + set-function-name "^2.0.1" request@^2.88.0, request@^2.88.2: version "2.88.2" @@ -5788,7 +5823,7 @@ rxjs@^6.6.0: dependencies: tslib "^1.9.0" -safe-array-concat@^1.0.0, safe-array-concat@^1.0.1: +safe-array-concat@^1.0.0, safe-array-concat@^1.1.0: version "1.1.0" resolved "https://registry.yarnpkg.com/safe-array-concat/-/safe-array-concat-1.1.0.tgz#8d0cae9cb806d6d1c06e08ab13d847293ebe0692" integrity sha512-ZdQ0Jeb9Ofti4hbt5lX3T2JcAamT9hfzYU1MNB+z/jaEbB6wfFfPIR/zEORmZqobkCCJhSjodobH6WHNmJ97dg== @@ -5808,13 +5843,13 @@ safe-buffer@~5.1.0, safe-buffer@~5.1.1: resolved "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.1.2.tgz#991ec69d296e0313747d59bdfd2b745c35f8828d" integrity sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g== -safe-regex-test@^1.0.0: - version "1.0.2" - resolved "https://registry.yarnpkg.com/safe-regex-test/-/safe-regex-test-1.0.2.tgz#3ba32bdb3ea35f940ee87e5087c60ee786c3f6c5" - integrity sha512-83S9w6eFq12BBIJYvjMux6/dkirb8+4zJRA9cxNBVb7Wq5fJBW+Xze48WqR8pxua7bDuAaaAxtVVd4Idjp1dBQ== +safe-regex-test@^1.0.3: + version "1.0.3" + resolved "https://registry.yarnpkg.com/safe-regex-test/-/safe-regex-test-1.0.3.tgz#a5b4c0f06e0ab50ea2c395c14d8371232924c377" + integrity sha512-CdASjNJPvRa7roO6Ra/gLYBTzYzzPyyBXxIMdGW3USQLyjWEls2RgW5UBTXaQVp+OrpeCK3bLem8smtmheoRuw== dependencies: - call-bind "^1.0.5" - get-intrinsic "^1.2.2" + call-bind "^1.0.6" + es-errors "^1.3.0" is-regex "^1.1.4" "safer-buffer@>= 2.1.2 < 3", "safer-buffer@>= 2.1.2 < 3.0.0", safer-buffer@^2.0.2, safer-buffer@^2.1.0, safer-buffer@~2.1.0: @@ -5840,9 +5875,9 @@ saxes@^5.0.1: integrity sha512-cBznnQ9KjJqU67B52RMC65CMarK2600WFnbkcaiwWq3xy/5haFJlshgnpjovMVJ+Hff49d8GEn0b87C5pDQ10g== semver@7.x, semver@^7.1.1, semver@^7.1.3, semver@^7.3.2, semver@^7.3.4, semver@^7.3.5, semver@^7.5.3: - version "7.5.4" - resolved "https://registry.yarnpkg.com/semver/-/semver-7.5.4.tgz#483986ec4ed38e1c6c48c34894a9182dbff68a6e" - integrity sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA== + version "7.6.0" + resolved "https://registry.yarnpkg.com/semver/-/semver-7.6.0.tgz#1a46a4db4bffcccd97b743b5005c8325f23d4e2d" + integrity sha512-EnwXhrlwXMk9gKu5/flx5sv/an57AkRplG3hTK68W7FRDN+k+OWBj65M7719OkA82XLBxrcX0KSHj+X5COhOVg== dependencies: lru-cache "^6.0.0" @@ -5863,25 +5898,27 @@ set-blocking@~2.0.0: resolved "https://registry.yarnpkg.com/set-blocking/-/set-blocking-2.0.0.tgz#045f9782d011ae9a6803ddd382b24392b3d890f7" integrity sha512-KiKBS8AnWGEyLzofFfmvKwpdPzqiy16LvQfK3yv/fVH7Bj13/wl3JSR1J+rfgRE9q7xUJK4qvgS8raSOeLUehw== -set-function-length@^1.1.1: - version "1.2.0" - resolved "https://registry.yarnpkg.com/set-function-length/-/set-function-length-1.2.0.tgz#2f81dc6c16c7059bda5ab7c82c11f03a515ed8e1" - integrity sha512-4DBHDoyHlM1IRPGYcoxexgh67y4ueR53FKV1yyxwFMY7aCqcN/38M1+SwZ/qJQ8iLv7+ck385ot4CcisOAPT9w== +set-function-length@^1.2.1: + version "1.2.1" + resolved "https://registry.yarnpkg.com/set-function-length/-/set-function-length-1.2.1.tgz#47cc5945f2c771e2cf261c6737cf9684a2a5e425" + integrity sha512-j4t6ccc+VsKwYHso+kElc5neZpjtq9EnRICFZtWyBsLojhmeF/ZBd/elqm22WJh/BziDe/SBiOeAt0m2mfLD0g== dependencies: - define-data-property "^1.1.1" + define-data-property "^1.1.2" + es-errors "^1.3.0" function-bind "^1.1.2" - get-intrinsic "^1.2.2" + get-intrinsic "^1.2.3" gopd "^1.0.1" has-property-descriptors "^1.0.1" -set-function-name@^2.0.0: - version "2.0.1" - resolved "https://registry.yarnpkg.com/set-function-name/-/set-function-name-2.0.1.tgz#12ce38b7954310b9f61faa12701620a0c882793a" - integrity sha512-tMNCiqYVkXIZgc2Hnoy2IvC/f8ezc5koaRFkCjrpWzGpCd3qbZXPzVy9MAZzK1ch/X0jvSkojys3oqJN0qCmdA== +set-function-name@^2.0.1: + version "2.0.2" + resolved "https://registry.yarnpkg.com/set-function-name/-/set-function-name-2.0.2.tgz#16a705c5a0dc2f5e638ca96d8a8cd4e1c2b90985" + integrity sha512-7PGFlmtwsEADb0WYyvCMa1t+yke6daIG4Wirafur5kcf+MhUnPms1UeR0CKQdTZD81yESwMHbtn+TR+dMviakQ== dependencies: - define-data-property "^1.0.1" + define-data-property "^1.1.4" + es-errors "^1.3.0" functions-have-names "^1.2.3" - has-property-descriptors "^1.0.0" + has-property-descriptors "^1.0.2" setimmediate@~1.0.4: version "1.0.5" @@ -5907,14 +5944,15 @@ shebang-regex@^3.0.0: resolved "https://registry.yarnpkg.com/shebang-regex/-/shebang-regex-3.0.0.tgz#ae16f1644d873ecad843b0307b143362d4c42172" integrity sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A== -side-channel@^1.0.4: - version "1.0.4" - resolved "https://registry.yarnpkg.com/side-channel/-/side-channel-1.0.4.tgz#efce5c8fdc104ee751b25c58d4290011fa5ea2cf" - integrity sha512-q5XPytqFEIKHkGdiMIrY10mvLRvnQh42/+GoBlFW3b2LXLE2xxJpZFdm94we0BaoV3RwJyGqg5wS7epxTv0Zvw== +side-channel@^1.0.4, side-channel@^1.0.6: + version "1.0.6" + resolved "https://registry.yarnpkg.com/side-channel/-/side-channel-1.0.6.tgz#abd25fb7cd24baf45466406b1096b7831c9215f2" + integrity sha512-fDW/EZ6Q9RiO8eFG8Hj+7u/oW+XrPTIChwCOM2+th2A6OblDtYYIpve9m+KvI9Z4C9qSEXlaGR6bTEYHReuglA== dependencies: - call-bind "^1.0.0" - get-intrinsic "^1.0.2" - object-inspect "^1.9.0" + call-bind "^1.0.7" + es-errors "^1.3.0" + get-intrinsic "^1.2.4" + object-inspect "^1.13.1" signal-exit@^3.0.0, signal-exit@^3.0.2, signal-exit@^3.0.3: version "3.0.7" @@ -5960,11 +5998,11 @@ socks-proxy-agent@^6.0.0: socks "^2.6.2" socks@^2.3.3, socks@^2.6.2: - version "2.7.1" - resolved "https://registry.yarnpkg.com/socks/-/socks-2.7.1.tgz#d8e651247178fde79c0663043e07240196857d55" - integrity sha512-7maUZy1N7uo6+WVEX6psASxtNlKaNVMlGQKkG/63nEDdLOWNbiUMoLK7X4uYoLhQstau72mLgfEWcXcwsaHbYQ== + version "2.8.1" + resolved "https://registry.yarnpkg.com/socks/-/socks-2.8.1.tgz#22c7d9dd7882649043cba0eafb49ae144e3457af" + integrity sha512-B6w7tkwNid7ToxjZ08rQMT8M9BJAf8DKx8Ft4NivzH0zBUfd6jldGcisJn/RLgxcX3FPNDdNQCUEMMT79b+oCQ== dependencies: - ip "^2.0.0" + ip-address "^9.0.5" smart-buffer "^4.2.0" sort-keys@^2.0.0: @@ -6016,9 +6054,9 @@ spdx-correct@^3.0.0: spdx-license-ids "^3.0.0" spdx-exceptions@^2.1.0: - version "2.4.0" - resolved "https://registry.yarnpkg.com/spdx-exceptions/-/spdx-exceptions-2.4.0.tgz#c07a4ede25b16e4f78e6707bbd84b15a45c19c1b" - integrity sha512-hcjppoJ68fhxA/cjbN4T8N6uCUejN8yFw69ttpqtBeCbF3u13n7mb31NB9jKwGTTWWnt9IbRA/mf1FprYS8wfw== + version "2.5.0" + resolved "https://registry.yarnpkg.com/spdx-exceptions/-/spdx-exceptions-2.5.0.tgz#5d607d27fc806f66d7b64a766650fa890f04ed66" + integrity sha512-PiU42r+xO4UbUS1buo3LPJkjlO7430Xn5SVAhdpzzsPHsjbYVflnnFdATgabnLude+Cqu25p6N+g2lw/PFsa4w== spdx-expression-parse@^3.0.0: version "3.0.1" @@ -6029,9 +6067,9 @@ spdx-expression-parse@^3.0.0: spdx-license-ids "^3.0.0" spdx-license-ids@^3.0.0: - version "3.0.16" - resolved "https://registry.yarnpkg.com/spdx-license-ids/-/spdx-license-ids-3.0.16.tgz#a14f64e0954f6e25cc6587bd4f392522db0d998f" - integrity sha512-eWN+LnM3GR6gPu35WxNgbGl8rmY1AEmoMDvL/QD6zYmPWgywxWqJWNdLGT+ke8dKNWrcYgYjPpG5gbTfghP8rw== + version "3.0.17" + resolved "https://registry.yarnpkg.com/spdx-license-ids/-/spdx-license-ids-3.0.17.tgz#887da8aa73218e51a1d917502d79863161a93f9c" + integrity sha512-sh8PWc/ftMqAAdFiBu6Fy6JUOYjqDJBJvIhpfDMyHrr0Rbp5liZqd4TjtQ/RgfLjKFZb+LMx5hpml5qOWy0qvg== split-on-first@^1.0.0: version "1.1.0" @@ -6052,6 +6090,11 @@ split@^1.0.0: dependencies: through "2" +sprintf-js@^1.1.3: + version "1.1.3" + resolved "https://registry.yarnpkg.com/sprintf-js/-/sprintf-js-1.1.3.tgz#4914b903a2f8b685d17fdf78a70e917e872e444a" + integrity sha512-Oo+0REFV59/rz3gfJNKQiBlwfHaSESl1pcGyABQsnnIfWOFt6JNj5gCog2U6MLZ//IGYD+nA8nI+mTShREReaA== + sprintf-js@~1.0.2: version "1.0.3" resolved "https://registry.yarnpkg.com/sprintf-js/-/sprintf-js-1.0.3.tgz#04e6926f662895354f3dd015203633b857297e2c" @@ -6302,9 +6345,9 @@ terminal-link@^2.0.0: supports-hyperlinks "^2.0.0" terser@^5.0.0: - version "5.27.0" - resolved "https://registry.yarnpkg.com/terser/-/terser-5.27.0.tgz#70108689d9ab25fef61c4e93e808e9fd092bf20c" - integrity sha512-bi1HRwVRskAjheeYl291n3JC4GgO/Ty4z1nVs5AAsmonJulGxpSektecnNedrwK9C7vpvVtcX3cw00VSLt7U2A== + version "5.29.1" + resolved "https://registry.yarnpkg.com/terser/-/terser-5.29.1.tgz#44e58045b70c09792ba14bfb7b4e14ca8755b9fa" + integrity sha512-lZQ/fyaIGxsbGxApKmoPTODIzELy3++mXhS5hOqaAWZjQtpq/hFHAc+rm29NND1rYRxRWKcjuARNwULNXa5RtQ== dependencies: "@jridgewell/source-map" "^0.3.3" acorn "^8.8.2" @@ -6537,44 +6580,49 @@ type-fest@^0.8.1: resolved "https://registry.yarnpkg.com/type-fest/-/type-fest-0.8.1.tgz#09e249ebde851d3b1e48d27c105444667f17b83d" integrity sha512-4dbzIzqvjtgiM5rw1k5rEHtBANKmdudhGyBEajN01fEyhaAIhsoKNy6y7+IN93IfpFtwY9iqi7kD+xwKhQsNJA== -typed-array-buffer@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/typed-array-buffer/-/typed-array-buffer-1.0.0.tgz#18de3e7ed7974b0a729d3feecb94338d1472cd60" - integrity sha512-Y8KTSIglk9OZEr8zywiIHG/kmQ7KWyjseXs1CbSo8vC42w7hg2HgYTxSWwP0+is7bWDc1H+Fo026CpHFwm8tkw== +typed-array-buffer@^1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/typed-array-buffer/-/typed-array-buffer-1.0.2.tgz#1867c5d83b20fcb5ccf32649e5e2fc7424474ff3" + integrity sha512-gEymJYKZtKXzzBzM4jqa9w6Q1Jjm7x2d+sh19AdsD4wqnMPDYyvwpsIc2Q/835kHuo3BEQ7CjelGhfTsoBb2MQ== dependencies: - call-bind "^1.0.2" - get-intrinsic "^1.2.1" - is-typed-array "^1.1.10" + call-bind "^1.0.7" + es-errors "^1.3.0" + is-typed-array "^1.1.13" -typed-array-byte-length@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/typed-array-byte-length/-/typed-array-byte-length-1.0.0.tgz#d787a24a995711611fb2b87a4052799517b230d0" - integrity sha512-Or/+kvLxNpeQ9DtSydonMxCx+9ZXOswtwJn17SNLvhptaXYDJvkFFP5zbfU/uLmvnBJlI4yrnXRxpdWH/M5tNA== +typed-array-byte-length@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/typed-array-byte-length/-/typed-array-byte-length-1.0.1.tgz#d92972d3cff99a3fa2e765a28fcdc0f1d89dec67" + integrity sha512-3iMJ9q0ao7WE9tWcaYKIptkNBuOIcZCCT0d4MRvuuH88fEoEH62IuQe0OtraD3ebQEoTRk8XCBoknUNc1Y67pw== dependencies: - call-bind "^1.0.2" + call-bind "^1.0.7" for-each "^0.3.3" - has-proto "^1.0.1" - is-typed-array "^1.1.10" + gopd "^1.0.1" + has-proto "^1.0.3" + is-typed-array "^1.1.13" -typed-array-byte-offset@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/typed-array-byte-offset/-/typed-array-byte-offset-1.0.0.tgz#cbbe89b51fdef9cd6aaf07ad4707340abbc4ea0b" - integrity sha512-RD97prjEt9EL8YgAgpOkf3O4IF9lhJFr9g0htQkm0rchFp/Vx7LW5Q8fSXXub7BXAODyUQohRMyOc3faCPd0hg== +typed-array-byte-offset@^1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/typed-array-byte-offset/-/typed-array-byte-offset-1.0.2.tgz#f9ec1acb9259f395093e4567eb3c28a580d02063" + integrity sha512-Ous0vodHa56FviZucS2E63zkgtgrACj7omjwd/8lTEMEPFFyjfixMZ1ZXenpgCFBBt4EC1J2XsyVS2gkG0eTFA== dependencies: - available-typed-arrays "^1.0.5" - call-bind "^1.0.2" + available-typed-arrays "^1.0.7" + call-bind "^1.0.7" for-each "^0.3.3" - has-proto "^1.0.1" - is-typed-array "^1.1.10" + gopd "^1.0.1" + has-proto "^1.0.3" + is-typed-array "^1.1.13" -typed-array-length@^1.0.4: - version "1.0.4" - resolved "https://registry.yarnpkg.com/typed-array-length/-/typed-array-length-1.0.4.tgz#89d83785e5c4098bec72e08b319651f0eac9c1bb" - integrity sha512-KjZypGq+I/H7HI5HlOoGHkWUUGq+Q0TPhQurLbyrVrvnKTBgzLhIJ7j6J/XTQOi0d1RjyZ0wdas8bKs2p0x3Ng== +typed-array-length@^1.0.5: + version "1.0.5" + resolved "https://registry.yarnpkg.com/typed-array-length/-/typed-array-length-1.0.5.tgz#57d44da160296d8663fd63180a1802ebf25905d5" + integrity sha512-yMi0PlwuznKHxKmcpoOdeLwxBoVPkqZxd7q2FgMkmD3bNwvF5VW0+UlUQ1k1vmktTu4Yu13Q0RIxEP8+B+wloA== dependencies: - call-bind "^1.0.2" + call-bind "^1.0.7" for-each "^0.3.3" - is-typed-array "^1.1.9" + gopd "^1.0.1" + has-proto "^1.0.3" + is-typed-array "^1.1.13" + possible-typed-array-names "^1.0.0" typedarray-to-buffer@^3.1.5: version "3.1.5" @@ -6839,7 +6887,7 @@ which-boxed-primitive@^1.0.2: is-string "^1.0.5" is-symbol "^1.0.3" -which-typed-array@^1.1.13, which-typed-array@^1.1.14: +which-typed-array@^1.1.14: version "1.1.14" resolved "https://registry.yarnpkg.com/which-typed-array/-/which-typed-array-1.1.14.tgz#1f78a111aee1e131ca66164d8bdc3ab062c95a06" integrity sha512-VnXFiIW8yNn9kIHN88xvZ4yOWchftKDsRJ8fEPacX/wl1lOvBrhsJ/OeJCXq7B0AaijRuqgzSKalJoPk+D8MPg== From 0a0e8050cbedda91092f7ead2f2e186c3aeed8e6 Mon Sep 17 00:00:00 2001 From: Tony Garnock-Jones Date: Fri, 8 Mar 2024 10:27:19 +0100 Subject: [PATCH 13/92] Publish - @syndicate-lang/browser-stdenv@0.26.0 - @syndicate-lang/core@0.26.0 - @syndicate-lang/create@0.22.0 - @syndicate-lang/fs@0.27.0 - @syndicate-lang/html@0.27.0 - @syndicate-lang/html2@0.27.0 - @syndicate-lang/loader@0.26.0 - @syndicate-lang/service@0.27.0 - @syndicate-lang/syndicatec@0.27.0 - @syndicate-lang/timer@0.27.0 - @syndicate-lang/ts-plugin@0.27.0 - @syndicate-lang/tsc@0.27.0 - @syndicate-lang/ws-relay@0.28.0 --- packages/browser-stdenv/package.json | 8 ++++---- packages/core/package.json | 2 +- packages/create/package.json | 2 +- packages/fs/package.json | 10 +++++----- packages/html/package.json | 8 ++++---- packages/html2/package.json | 8 ++++---- packages/loader/package.json | 6 +++--- packages/service/package.json | 8 ++++---- packages/syndicatec/package.json | 4 ++-- packages/timer/package.json | 8 ++++---- packages/ts-plugin/package.json | 4 ++-- packages/tsc/package.json | 4 ++-- packages/ws-relay/package.json | 8 ++++---- 13 files changed, 40 insertions(+), 40 deletions(-) diff --git a/packages/browser-stdenv/package.json b/packages/browser-stdenv/package.json index a58528a..877f932 100644 --- a/packages/browser-stdenv/package.json +++ b/packages/browser-stdenv/package.json @@ -1,6 +1,6 @@ { "name": "@syndicate-lang/browser-stdenv", - "version": "0.25.0", + "version": "0.26.0", "description": "Aggregated Syndicate and Preserves scripts for in-browser use", "homepage": "https://github.com/syndicate-lang/syndicate-js/tree/main/packages/browser-stdenv", "license": "GPL-3.0+", @@ -22,8 +22,8 @@ "@preserves/core": "0.995.0", "@preserves/schema": "0.995.0", "@syndicate-lang/compiler": "^0.19.0", - "@syndicate-lang/core": "^0.25.0", - "@syndicate-lang/html2": "^0.26.0", - "@syndicate-lang/ws-relay": "^0.27.0" + "@syndicate-lang/core": "^0.26.0", + "@syndicate-lang/html2": "^0.27.0", + "@syndicate-lang/ws-relay": "^0.28.0" } } diff --git a/packages/core/package.json b/packages/core/package.json index cb29757..ce8ad37 100644 --- a/packages/core/package.json +++ b/packages/core/package.json @@ -1,6 +1,6 @@ { "name": "@syndicate-lang/core", - "version": "0.25.0", + "version": "0.26.0", "description": "Syndicate/JS for browser and node.js", "homepage": "https://github.com/syndicate-lang/syndicate-js/tree/main/packages/core", "license": "GPL-3.0+", diff --git a/packages/create/package.json b/packages/create/package.json index ff21651..a9fc499 100644 --- a/packages/create/package.json +++ b/packages/create/package.json @@ -1,6 +1,6 @@ { "name": "@syndicate-lang/create", - "version": "0.21.0", + "version": "0.22.0", "description": "Create a new Syndicate/js package", "author": "Tony Garnock-Jones ", "homepage": "https://github.com/syndicate-lang/syndicate-js/tree/main/packages/create", diff --git a/packages/fs/package.json b/packages/fs/package.json index 0992c3f..913339f 100644 --- a/packages/fs/package.json +++ b/packages/fs/package.json @@ -1,6 +1,6 @@ { "name": "@syndicate-lang/fs", - "version": "0.26.0", + "version": "0.27.0", "description": "Reflect contents of a portion of the file system as assertions", "homepage": "https://github.com/syndicate-lang/syndicate-js/tree/main/packages/fs", "license": "GPL-3.0+", @@ -30,13 +30,13 @@ "@preserves/core": "0.995.0" }, "dependencies": { - "@syndicate-lang/core": "^0.25.0", - "@syndicate-lang/service": "^0.26.0", + "@syndicate-lang/core": "^0.26.0", + "@syndicate-lang/service": "^0.27.0", "chokidar": "^3.5.3" }, "devDependencies": { "@preserves/schema-cli": "0.995.0", - "@syndicate-lang/ts-plugin": "^0.26.0", - "@syndicate-lang/tsc": "^0.26.0" + "@syndicate-lang/ts-plugin": "^0.27.0", + "@syndicate-lang/tsc": "^0.27.0" } } diff --git a/packages/html/package.json b/packages/html/package.json index b258877..5286053 100644 --- a/packages/html/package.json +++ b/packages/html/package.json @@ -1,6 +1,6 @@ { "name": "@syndicate-lang/html", - "version": "0.26.0", + "version": "0.27.0", "description": "DOM/HTML UI for Syndicate/JS", "homepage": "https://github.com/syndicate-lang/syndicate-js/tree/main/packages/html", "license": "GPL-3.0+", @@ -25,10 +25,10 @@ "veryclean": "yarn run clean && rm -rf node_modules" }, "dependencies": { - "@syndicate-lang/core": "^0.25.0" + "@syndicate-lang/core": "^0.26.0" }, "devDependencies": { - "@syndicate-lang/ts-plugin": "^0.26.0", - "@syndicate-lang/tsc": "^0.26.0" + "@syndicate-lang/ts-plugin": "^0.27.0", + "@syndicate-lang/tsc": "^0.27.0" } } diff --git a/packages/html2/package.json b/packages/html2/package.json index 11bb679..57002e0 100644 --- a/packages/html2/package.json +++ b/packages/html2/package.json @@ -1,6 +1,6 @@ { "name": "@syndicate-lang/html2", - "version": "0.26.0", + "version": "0.27.0", "description": "DOM/HTML UI for Syndicate/JS", "homepage": "https://github.com/syndicate-lang/syndicate-js/tree/main/packages/html2", "license": "GPL-3.0+", @@ -25,10 +25,10 @@ "veryclean": "yarn run clean && rm -rf node_modules" }, "dependencies": { - "@syndicate-lang/core": "^0.25.0" + "@syndicate-lang/core": "^0.26.0" }, "devDependencies": { - "@syndicate-lang/ts-plugin": "^0.26.0", - "@syndicate-lang/tsc": "^0.26.0" + "@syndicate-lang/ts-plugin": "^0.27.0", + "@syndicate-lang/tsc": "^0.27.0" } } diff --git a/packages/loader/package.json b/packages/loader/package.json index b440803..0b3158a 100644 --- a/packages/loader/package.json +++ b/packages/loader/package.json @@ -1,6 +1,6 @@ { "name": "@syndicate-lang/loader", - "version": "0.25.0", + "version": "0.26.0", "description": "Syndicate/JS node.js loader hook", "homepage": "https://github.com/syndicate-lang/syndicate-js/tree/main/packages/loader", "license": "GPL-3.0+", @@ -23,7 +23,7 @@ "author": "Tony Garnock-Jones ", "dependencies": { "@syndicate-lang/compiler": "^0.19.0", - "@syndicate-lang/core": "^0.25.0", - "@syndicate-lang/service": "^0.26.0" + "@syndicate-lang/core": "^0.26.0", + "@syndicate-lang/service": "^0.27.0" } } diff --git a/packages/service/package.json b/packages/service/package.json index 69175a0..c5fdb38 100644 --- a/packages/service/package.json +++ b/packages/service/package.json @@ -1,6 +1,6 @@ { "name": "@syndicate-lang/service", - "version": "0.26.0", + "version": "0.27.0", "description": "Run a node.js program as a service within syndicate-server", "homepage": "https://github.com/syndicate-lang/syndicate-js/tree/main/packages/service", "license": "GPL-3.0+", @@ -22,10 +22,10 @@ "veryclean": "yarn run clean && rm -rf node_modules" }, "dependencies": { - "@syndicate-lang/core": "^0.25.0" + "@syndicate-lang/core": "^0.26.0" }, "devDependencies": { - "@syndicate-lang/ts-plugin": "^0.26.0", - "@syndicate-lang/tsc": "^0.26.0" + "@syndicate-lang/ts-plugin": "^0.27.0", + "@syndicate-lang/tsc": "^0.27.0" } } diff --git a/packages/syndicatec/package.json b/packages/syndicatec/package.json index 40ccf3a..b030154 100644 --- a/packages/syndicatec/package.json +++ b/packages/syndicatec/package.json @@ -1,6 +1,6 @@ { "name": "@syndicate-lang/syndicatec", - "version": "0.26.0", + "version": "0.27.0", "description": "Syndicate/JS compiler command-line tool", "homepage": "https://github.com/syndicate-lang/syndicate-js/tree/main/packages/syndicatec", "license": "GPL-3.0+", @@ -21,7 +21,7 @@ "author": "Tony Garnock-Jones ", "dependencies": { "@syndicate-lang/compiler": "^0.19.0", - "@syndicate-lang/core": "^0.25.0", + "@syndicate-lang/core": "^0.26.0", "glob": "^7.1.6", "yargs": "^16.2.0" }, diff --git a/packages/timer/package.json b/packages/timer/package.json index 824b118..e6097a8 100644 --- a/packages/timer/package.json +++ b/packages/timer/package.json @@ -1,6 +1,6 @@ { "name": "@syndicate-lang/timer", - "version": "0.26.0", + "version": "0.27.0", "description": "Time and timer driver for Syndicate", "homepage": "https://github.com/syndicate-lang/syndicate-js/tree/main/packages/timer", "license": "GPL-3.0+", @@ -25,10 +25,10 @@ "veryclean": "yarn run clean && rm -rf node_modules" }, "dependencies": { - "@syndicate-lang/core": "^0.25.0" + "@syndicate-lang/core": "^0.26.0" }, "devDependencies": { - "@syndicate-lang/ts-plugin": "^0.26.0", - "@syndicate-lang/tsc": "^0.26.0" + "@syndicate-lang/ts-plugin": "^0.27.0", + "@syndicate-lang/tsc": "^0.27.0" } } diff --git a/packages/ts-plugin/package.json b/packages/ts-plugin/package.json index e0bf70d..0eb4ce1 100644 --- a/packages/ts-plugin/package.json +++ b/packages/ts-plugin/package.json @@ -1,6 +1,6 @@ { "name": "@syndicate-lang/ts-plugin", - "version": "0.26.0", + "version": "0.27.0", "description": "Syndicate/JS TypeScript tsserver plugin", "homepage": "https://github.com/syndicate-lang/syndicate-js/tree/main/packages/ts-plugin", "license": "GPL-3.0+", @@ -23,7 +23,7 @@ "author": "Tony Garnock-Jones ", "dependencies": { "@syndicate-lang/compiler": "^0.19.0", - "@syndicate-lang/core": "^0.25.0" + "@syndicate-lang/core": "^0.26.0" }, "devDependencies": { "typescript": "^4.9" diff --git a/packages/tsc/package.json b/packages/tsc/package.json index aa7db8a..e145cce 100644 --- a/packages/tsc/package.json +++ b/packages/tsc/package.json @@ -1,6 +1,6 @@ { "name": "@syndicate-lang/tsc", - "version": "0.26.0", + "version": "0.27.0", "description": "Syndicate for TypeScript compiler command-line tool", "homepage": "https://github.com/syndicate-lang/syndicate-js/tree/main/packages/tsc", "license": "GPL-3.0+", @@ -21,7 +21,7 @@ "author": "Tony Garnock-Jones ", "dependencies": { "@syndicate-lang/compiler": "^0.19.0", - "@syndicate-lang/core": "^0.25.0", + "@syndicate-lang/core": "^0.26.0", "glob": "^7.1.6", "yargs": "^16.2.0" }, diff --git a/packages/ws-relay/package.json b/packages/ws-relay/package.json index 4266e51..008aa53 100644 --- a/packages/ws-relay/package.json +++ b/packages/ws-relay/package.json @@ -1,6 +1,6 @@ { "name": "@syndicate-lang/ws-relay", - "version": "0.27.0", + "version": "0.28.0", "description": "Browser WebSocket relay to a Syndicate server", "homepage": "https://github.com/syndicate-lang/syndicate-js/tree/main/packages/ws-relay", "license": "GPL-3.0+", @@ -28,11 +28,11 @@ "@preserves/core": "0.995.0" }, "dependencies": { - "@syndicate-lang/core": "^0.25.0", + "@syndicate-lang/core": "^0.26.0", "salty-crypto": "0.3" }, "devDependencies": { - "@syndicate-lang/ts-plugin": "^0.26.0", - "@syndicate-lang/tsc": "^0.26.0" + "@syndicate-lang/ts-plugin": "^0.27.0", + "@syndicate-lang/tsc": "^0.27.0" } } From c73d4df2f266113ab8adc5b3140a1a7c8cfbe714 Mon Sep 17 00:00:00 2001 From: Tony Garnock-Jones Date: Fri, 8 Mar 2024 12:05:17 +0100 Subject: [PATCH 14/92] Alter atExit to yield callback for removing the hook --- packages/core/src/runtime/actor.ts | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/packages/core/src/runtime/actor.ts b/packages/core/src/runtime/actor.ts index 929f7d8..3723668 100644 --- a/packages/core/src/runtime/actor.ts +++ b/packages/core/src/runtime/actor.ts @@ -138,8 +138,12 @@ export class Actor { return this._dataflowGraph; } - atExit(a: LocalAction): void { + atExit(a: LocalAction): () => void { this.exitHooks.push(a); + return () => { + const i = this.exitHooks.indexOf(a); + if (i !== -1) this.exitHooks.splice(i, 1); + }; } _terminateWith(reason: Exclude) { From 1dab59bef4b1a647bc1f24f82ccdcc7cedf82b64 Mon Sep 17 00:00:00 2001 From: Tony Garnock-Jones Date: Fri, 8 Mar 2024 12:06:01 +0100 Subject: [PATCH 15/92] Publish - @syndicate-lang/browser-stdenv@0.26.1 - @syndicate-lang/core@0.26.1 - @syndicate-lang/fs@0.27.1 - @syndicate-lang/html@0.27.1 - @syndicate-lang/html2@0.27.1 - @syndicate-lang/loader@0.26.1 - @syndicate-lang/service@0.27.1 - @syndicate-lang/syndicatec@0.27.1 - @syndicate-lang/timer@0.27.1 - @syndicate-lang/ts-plugin@0.27.1 - @syndicate-lang/tsc@0.27.1 - @syndicate-lang/ws-relay@0.28.1 --- packages/browser-stdenv/package.json | 8 ++++---- packages/core/package.json | 2 +- packages/fs/package.json | 10 +++++----- packages/html/package.json | 8 ++++---- packages/html2/package.json | 8 ++++---- packages/loader/package.json | 6 +++--- packages/service/package.json | 8 ++++---- packages/syndicatec/package.json | 4 ++-- packages/timer/package.json | 8 ++++---- packages/ts-plugin/package.json | 4 ++-- packages/tsc/package.json | 4 ++-- packages/ws-relay/package.json | 8 ++++---- 12 files changed, 39 insertions(+), 39 deletions(-) diff --git a/packages/browser-stdenv/package.json b/packages/browser-stdenv/package.json index 877f932..83002e4 100644 --- a/packages/browser-stdenv/package.json +++ b/packages/browser-stdenv/package.json @@ -1,6 +1,6 @@ { "name": "@syndicate-lang/browser-stdenv", - "version": "0.26.0", + "version": "0.26.1", "description": "Aggregated Syndicate and Preserves scripts for in-browser use", "homepage": "https://github.com/syndicate-lang/syndicate-js/tree/main/packages/browser-stdenv", "license": "GPL-3.0+", @@ -22,8 +22,8 @@ "@preserves/core": "0.995.0", "@preserves/schema": "0.995.0", "@syndicate-lang/compiler": "^0.19.0", - "@syndicate-lang/core": "^0.26.0", - "@syndicate-lang/html2": "^0.27.0", - "@syndicate-lang/ws-relay": "^0.28.0" + "@syndicate-lang/core": "^0.26.1", + "@syndicate-lang/html2": "^0.27.1", + "@syndicate-lang/ws-relay": "^0.28.1" } } diff --git a/packages/core/package.json b/packages/core/package.json index ce8ad37..f7a718a 100644 --- a/packages/core/package.json +++ b/packages/core/package.json @@ -1,6 +1,6 @@ { "name": "@syndicate-lang/core", - "version": "0.26.0", + "version": "0.26.1", "description": "Syndicate/JS for browser and node.js", "homepage": "https://github.com/syndicate-lang/syndicate-js/tree/main/packages/core", "license": "GPL-3.0+", diff --git a/packages/fs/package.json b/packages/fs/package.json index 913339f..01d658b 100644 --- a/packages/fs/package.json +++ b/packages/fs/package.json @@ -1,6 +1,6 @@ { "name": "@syndicate-lang/fs", - "version": "0.27.0", + "version": "0.27.1", "description": "Reflect contents of a portion of the file system as assertions", "homepage": "https://github.com/syndicate-lang/syndicate-js/tree/main/packages/fs", "license": "GPL-3.0+", @@ -30,13 +30,13 @@ "@preserves/core": "0.995.0" }, "dependencies": { - "@syndicate-lang/core": "^0.26.0", - "@syndicate-lang/service": "^0.27.0", + "@syndicate-lang/core": "^0.26.1", + "@syndicate-lang/service": "^0.27.1", "chokidar": "^3.5.3" }, "devDependencies": { "@preserves/schema-cli": "0.995.0", - "@syndicate-lang/ts-plugin": "^0.27.0", - "@syndicate-lang/tsc": "^0.27.0" + "@syndicate-lang/ts-plugin": "^0.27.1", + "@syndicate-lang/tsc": "^0.27.1" } } diff --git a/packages/html/package.json b/packages/html/package.json index 5286053..8fc0943 100644 --- a/packages/html/package.json +++ b/packages/html/package.json @@ -1,6 +1,6 @@ { "name": "@syndicate-lang/html", - "version": "0.27.0", + "version": "0.27.1", "description": "DOM/HTML UI for Syndicate/JS", "homepage": "https://github.com/syndicate-lang/syndicate-js/tree/main/packages/html", "license": "GPL-3.0+", @@ -25,10 +25,10 @@ "veryclean": "yarn run clean && rm -rf node_modules" }, "dependencies": { - "@syndicate-lang/core": "^0.26.0" + "@syndicate-lang/core": "^0.26.1" }, "devDependencies": { - "@syndicate-lang/ts-plugin": "^0.27.0", - "@syndicate-lang/tsc": "^0.27.0" + "@syndicate-lang/ts-plugin": "^0.27.1", + "@syndicate-lang/tsc": "^0.27.1" } } diff --git a/packages/html2/package.json b/packages/html2/package.json index 57002e0..62e7d39 100644 --- a/packages/html2/package.json +++ b/packages/html2/package.json @@ -1,6 +1,6 @@ { "name": "@syndicate-lang/html2", - "version": "0.27.0", + "version": "0.27.1", "description": "DOM/HTML UI for Syndicate/JS", "homepage": "https://github.com/syndicate-lang/syndicate-js/tree/main/packages/html2", "license": "GPL-3.0+", @@ -25,10 +25,10 @@ "veryclean": "yarn run clean && rm -rf node_modules" }, "dependencies": { - "@syndicate-lang/core": "^0.26.0" + "@syndicate-lang/core": "^0.26.1" }, "devDependencies": { - "@syndicate-lang/ts-plugin": "^0.27.0", - "@syndicate-lang/tsc": "^0.27.0" + "@syndicate-lang/ts-plugin": "^0.27.1", + "@syndicate-lang/tsc": "^0.27.1" } } diff --git a/packages/loader/package.json b/packages/loader/package.json index 0b3158a..78a0645 100644 --- a/packages/loader/package.json +++ b/packages/loader/package.json @@ -1,6 +1,6 @@ { "name": "@syndicate-lang/loader", - "version": "0.26.0", + "version": "0.26.1", "description": "Syndicate/JS node.js loader hook", "homepage": "https://github.com/syndicate-lang/syndicate-js/tree/main/packages/loader", "license": "GPL-3.0+", @@ -23,7 +23,7 @@ "author": "Tony Garnock-Jones ", "dependencies": { "@syndicate-lang/compiler": "^0.19.0", - "@syndicate-lang/core": "^0.26.0", - "@syndicate-lang/service": "^0.27.0" + "@syndicate-lang/core": "^0.26.1", + "@syndicate-lang/service": "^0.27.1" } } diff --git a/packages/service/package.json b/packages/service/package.json index c5fdb38..ee134df 100644 --- a/packages/service/package.json +++ b/packages/service/package.json @@ -1,6 +1,6 @@ { "name": "@syndicate-lang/service", - "version": "0.27.0", + "version": "0.27.1", "description": "Run a node.js program as a service within syndicate-server", "homepage": "https://github.com/syndicate-lang/syndicate-js/tree/main/packages/service", "license": "GPL-3.0+", @@ -22,10 +22,10 @@ "veryclean": "yarn run clean && rm -rf node_modules" }, "dependencies": { - "@syndicate-lang/core": "^0.26.0" + "@syndicate-lang/core": "^0.26.1" }, "devDependencies": { - "@syndicate-lang/ts-plugin": "^0.27.0", - "@syndicate-lang/tsc": "^0.27.0" + "@syndicate-lang/ts-plugin": "^0.27.1", + "@syndicate-lang/tsc": "^0.27.1" } } diff --git a/packages/syndicatec/package.json b/packages/syndicatec/package.json index b030154..6ab53ee 100644 --- a/packages/syndicatec/package.json +++ b/packages/syndicatec/package.json @@ -1,6 +1,6 @@ { "name": "@syndicate-lang/syndicatec", - "version": "0.27.0", + "version": "0.27.1", "description": "Syndicate/JS compiler command-line tool", "homepage": "https://github.com/syndicate-lang/syndicate-js/tree/main/packages/syndicatec", "license": "GPL-3.0+", @@ -21,7 +21,7 @@ "author": "Tony Garnock-Jones ", "dependencies": { "@syndicate-lang/compiler": "^0.19.0", - "@syndicate-lang/core": "^0.26.0", + "@syndicate-lang/core": "^0.26.1", "glob": "^7.1.6", "yargs": "^16.2.0" }, diff --git a/packages/timer/package.json b/packages/timer/package.json index e6097a8..807c183 100644 --- a/packages/timer/package.json +++ b/packages/timer/package.json @@ -1,6 +1,6 @@ { "name": "@syndicate-lang/timer", - "version": "0.27.0", + "version": "0.27.1", "description": "Time and timer driver for Syndicate", "homepage": "https://github.com/syndicate-lang/syndicate-js/tree/main/packages/timer", "license": "GPL-3.0+", @@ -25,10 +25,10 @@ "veryclean": "yarn run clean && rm -rf node_modules" }, "dependencies": { - "@syndicate-lang/core": "^0.26.0" + "@syndicate-lang/core": "^0.26.1" }, "devDependencies": { - "@syndicate-lang/ts-plugin": "^0.27.0", - "@syndicate-lang/tsc": "^0.27.0" + "@syndicate-lang/ts-plugin": "^0.27.1", + "@syndicate-lang/tsc": "^0.27.1" } } diff --git a/packages/ts-plugin/package.json b/packages/ts-plugin/package.json index 0eb4ce1..d8ef949 100644 --- a/packages/ts-plugin/package.json +++ b/packages/ts-plugin/package.json @@ -1,6 +1,6 @@ { "name": "@syndicate-lang/ts-plugin", - "version": "0.27.0", + "version": "0.27.1", "description": "Syndicate/JS TypeScript tsserver plugin", "homepage": "https://github.com/syndicate-lang/syndicate-js/tree/main/packages/ts-plugin", "license": "GPL-3.0+", @@ -23,7 +23,7 @@ "author": "Tony Garnock-Jones ", "dependencies": { "@syndicate-lang/compiler": "^0.19.0", - "@syndicate-lang/core": "^0.26.0" + "@syndicate-lang/core": "^0.26.1" }, "devDependencies": { "typescript": "^4.9" diff --git a/packages/tsc/package.json b/packages/tsc/package.json index e145cce..140be2f 100644 --- a/packages/tsc/package.json +++ b/packages/tsc/package.json @@ -1,6 +1,6 @@ { "name": "@syndicate-lang/tsc", - "version": "0.27.0", + "version": "0.27.1", "description": "Syndicate for TypeScript compiler command-line tool", "homepage": "https://github.com/syndicate-lang/syndicate-js/tree/main/packages/tsc", "license": "GPL-3.0+", @@ -21,7 +21,7 @@ "author": "Tony Garnock-Jones ", "dependencies": { "@syndicate-lang/compiler": "^0.19.0", - "@syndicate-lang/core": "^0.26.0", + "@syndicate-lang/core": "^0.26.1", "glob": "^7.1.6", "yargs": "^16.2.0" }, diff --git a/packages/ws-relay/package.json b/packages/ws-relay/package.json index 008aa53..df4c2fc 100644 --- a/packages/ws-relay/package.json +++ b/packages/ws-relay/package.json @@ -1,6 +1,6 @@ { "name": "@syndicate-lang/ws-relay", - "version": "0.28.0", + "version": "0.28.1", "description": "Browser WebSocket relay to a Syndicate server", "homepage": "https://github.com/syndicate-lang/syndicate-js/tree/main/packages/ws-relay", "license": "GPL-3.0+", @@ -28,11 +28,11 @@ "@preserves/core": "0.995.0" }, "dependencies": { - "@syndicate-lang/core": "^0.26.0", + "@syndicate-lang/core": "^0.26.1", "salty-crypto": "0.3" }, "devDependencies": { - "@syndicate-lang/ts-plugin": "^0.27.0", - "@syndicate-lang/tsc": "^0.27.0" + "@syndicate-lang/ts-plugin": "^0.27.1", + "@syndicate-lang/tsc": "^0.27.1" } } From ab353b525b69bf6c6e615dcc1c29454a6d56de5e Mon Sep 17 00:00:00 2001 From: Tony Garnock-Jones Date: Fri, 8 Mar 2024 12:11:45 +0100 Subject: [PATCH 16/92] Remove node on actor crashes --- packages/html2/src/index.ts | 2 ++ 1 file changed, 2 insertions(+) diff --git a/packages/html2/src/index.ts b/packages/html2/src/index.ts index 35c67d8..3b42199 100644 --- a/packages/html2/src/index.ts +++ b/packages/html2/src/index.ts @@ -32,8 +32,10 @@ export class Widget implements EventTarget { constructor (private nodeGenerator: NodeGenerator) { this.facet = Turn.activeFacet; + const cancelAtExit = this.facet.actor.atExit(() => this.node.remove()); on stop { this.node.remove(); + cancelAtExit(); } const thisTemplate = template(); From d79dd51d140ec389bad030cd0501fa0d5e75bdbb Mon Sep 17 00:00:00 2001 From: Tony Garnock-Jones Date: Fri, 8 Mar 2024 12:12:06 +0100 Subject: [PATCH 17/92] Publish - @syndicate-lang/browser-stdenv@0.26.2 - @syndicate-lang/html2@0.27.2 --- packages/browser-stdenv/package.json | 4 ++-- packages/html2/package.json | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/packages/browser-stdenv/package.json b/packages/browser-stdenv/package.json index 83002e4..72a29bd 100644 --- a/packages/browser-stdenv/package.json +++ b/packages/browser-stdenv/package.json @@ -1,6 +1,6 @@ { "name": "@syndicate-lang/browser-stdenv", - "version": "0.26.1", + "version": "0.26.2", "description": "Aggregated Syndicate and Preserves scripts for in-browser use", "homepage": "https://github.com/syndicate-lang/syndicate-js/tree/main/packages/browser-stdenv", "license": "GPL-3.0+", @@ -23,7 +23,7 @@ "@preserves/schema": "0.995.0", "@syndicate-lang/compiler": "^0.19.0", "@syndicate-lang/core": "^0.26.1", - "@syndicate-lang/html2": "^0.27.1", + "@syndicate-lang/html2": "^0.27.2", "@syndicate-lang/ws-relay": "^0.28.1" } } diff --git a/packages/html2/package.json b/packages/html2/package.json index 62e7d39..c8147ed 100644 --- a/packages/html2/package.json +++ b/packages/html2/package.json @@ -1,6 +1,6 @@ { "name": "@syndicate-lang/html2", - "version": "0.27.1", + "version": "0.27.2", "description": "DOM/HTML UI for Syndicate/JS", "homepage": "https://github.com/syndicate-lang/syndicate-js/tree/main/packages/html2", "license": "GPL-3.0+", From 2f4f2e4708b8ab55cc947993dc9910087b09884e Mon Sep 17 00:00:00 2001 From: Tony Garnock-Jones Date: Fri, 8 Mar 2024 15:48:11 +0100 Subject: [PATCH 18/92] Bump preserves-schema to 0.995.1 --- packages/browser-stdenv/package.json | 2 +- packages/core/package.json | 2 +- packages/create/template/package.json | 2 +- packages/fs/package.json | 2 +- yarn.lock | 18 +++++++++--------- 5 files changed, 13 insertions(+), 13 deletions(-) diff --git a/packages/browser-stdenv/package.json b/packages/browser-stdenv/package.json index 72a29bd..9068f35 100644 --- a/packages/browser-stdenv/package.json +++ b/packages/browser-stdenv/package.json @@ -20,7 +20,7 @@ }, "dependencies": { "@preserves/core": "0.995.0", - "@preserves/schema": "0.995.0", + "@preserves/schema": "0.995.1", "@syndicate-lang/compiler": "^0.19.0", "@syndicate-lang/core": "^0.26.1", "@syndicate-lang/html2": "^0.27.2", diff --git a/packages/core/package.json b/packages/core/package.json index f7a718a..be4cbce 100644 --- a/packages/core/package.json +++ b/packages/core/package.json @@ -30,7 +30,7 @@ "author": "Tony Garnock-Jones ", "devDependencies": { "@preserves/core": "0.995.0", - "@preserves/schema-cli": "0.995.0" + "@preserves/schema-cli": "0.995.1" }, "peerDependencies": { "@preserves/core": "0.995.0" diff --git a/packages/create/template/package.json b/packages/create/template/package.json index dd6ff1a..06ce60b 100644 --- a/packages/create/template/package.json +++ b/packages/create/template/package.json @@ -3,7 +3,7 @@ "version": "0.0.0", "license": "GPL-3.0+", "devDependencies": { - "@preserves/schema-cli": "0.995.0", + "@preserves/schema-cli": "0.995.1", "@syndicate-lang/ts-plugin": "*", "@syndicate-lang/tsc": "*", "rollup": "^2.60", diff --git a/packages/fs/package.json b/packages/fs/package.json index 01d658b..3023739 100644 --- a/packages/fs/package.json +++ b/packages/fs/package.json @@ -35,7 +35,7 @@ "chokidar": "^3.5.3" }, "devDependencies": { - "@preserves/schema-cli": "0.995.0", + "@preserves/schema-cli": "0.995.1", "@syndicate-lang/ts-plugin": "^0.27.1", "@syndicate-lang/tsc": "^0.27.1" } diff --git a/yarn.lock b/yarn.lock index 43fd1a9..936ae59 100644 --- a/yarn.lock +++ b/yarn.lock @@ -1408,23 +1408,23 @@ resolved "https://registry.yarnpkg.com/@preserves/core/-/core-0.995.0.tgz#d6badccd1fe56e45f23e01b4c8a33f421749e76b" integrity sha512-0ICNcZ7HkBal1OJwoUuc1+KqoTQNJl2kYI3/nMtfrtNMem908unpydLo20k44Fgh/SRJekWaiRYSzKTcOo0+Tg== -"@preserves/schema-cli@0.995.0": - version "0.995.0" - resolved "https://registry.yarnpkg.com/@preserves/schema-cli/-/schema-cli-0.995.0.tgz#dcd5b27e994072fae16e343e00167d435e74b1bd" - integrity sha512-JZavLU2Mqz+nfMULmjYxOd4Rx9djfMvHUFCll3iQ1Y0VmZU/46K+bSyvB10SKGkEWA/BBvLsrZgEqt8YKlRFkQ== +"@preserves/schema-cli@0.995.1": + version "0.995.1" + resolved "https://registry.yarnpkg.com/@preserves/schema-cli/-/schema-cli-0.995.1.tgz#056027c76c54ef3395c787a58def12b17dcbd79c" + integrity sha512-9LSb5P+00P1ocx/saXy5d31bRastSJT7VQmrAltMgcx3BI5f/ChVVhBdn8P4+tRLUo02pTbGy4wBceHsyqCSZQ== dependencies: "@preserves/core" "^0.995.0" - "@preserves/schema" "^0.995.0" + "@preserves/schema" "^0.995.1" chalk "^4.1" chokidar "^3.5" commander "^7.2" glob "^7.1" minimatch "^3.0" -"@preserves/schema@0.995.0", "@preserves/schema@^0.995.0": - version "0.995.0" - resolved "https://registry.yarnpkg.com/@preserves/schema/-/schema-0.995.0.tgz#b04832d46b24f05432ddfd4153a8b6b4a9d9482f" - integrity sha512-9WzdCMynDbhLYUypkWMr4kOhZn7QQ/7PwH6XPQ2aNsisc/ApVhrhA3H6Y96z4VIcfQBnRzozoYu9848j3KhOUw== +"@preserves/schema@0.995.1", "@preserves/schema@^0.995.1": + version "0.995.1" + resolved "https://registry.yarnpkg.com/@preserves/schema/-/schema-0.995.1.tgz#e218a4257171f1c3c6e7a2f4d7e1b88ce3ae998e" + integrity sha512-oh3SHMVOhqwFFZrzxnrAacBdUpdXtOyAoGyEOm9x0xehQ5NpYEnz/DdjXmW6iKeQ7Igoa1rSyibWbYfHV6fzvg== dependencies: "@preserves/core" "^0.995.0" From 306d542600f4079b5ffa1b6ab74d4e4c8463db58 Mon Sep 17 00:00:00 2001 From: Tony Garnock-Jones Date: Fri, 8 Mar 2024 15:48:36 +0100 Subject: [PATCH 19/92] Publish - @syndicate-lang/browser-stdenv@0.26.3 - @syndicate-lang/core@0.26.2 - @syndicate-lang/create@0.22.1 - @syndicate-lang/fs@0.27.2 - @syndicate-lang/html@0.27.2 - @syndicate-lang/html2@0.27.3 - @syndicate-lang/loader@0.26.2 - @syndicate-lang/service@0.27.2 - @syndicate-lang/syndicatec@0.27.2 - @syndicate-lang/timer@0.27.2 - @syndicate-lang/ts-plugin@0.27.2 - @syndicate-lang/tsc@0.27.2 - @syndicate-lang/ws-relay@0.28.2 --- packages/browser-stdenv/package.json | 8 ++++---- packages/core/package.json | 2 +- packages/create/package.json | 2 +- packages/fs/package.json | 10 +++++----- packages/html/package.json | 8 ++++---- packages/html2/package.json | 8 ++++---- packages/loader/package.json | 6 +++--- packages/service/package.json | 8 ++++---- packages/syndicatec/package.json | 4 ++-- packages/timer/package.json | 8 ++++---- packages/ts-plugin/package.json | 4 ++-- packages/tsc/package.json | 4 ++-- packages/ws-relay/package.json | 8 ++++---- 13 files changed, 40 insertions(+), 40 deletions(-) diff --git a/packages/browser-stdenv/package.json b/packages/browser-stdenv/package.json index 9068f35..9fb7a42 100644 --- a/packages/browser-stdenv/package.json +++ b/packages/browser-stdenv/package.json @@ -1,6 +1,6 @@ { "name": "@syndicate-lang/browser-stdenv", - "version": "0.26.2", + "version": "0.26.3", "description": "Aggregated Syndicate and Preserves scripts for in-browser use", "homepage": "https://github.com/syndicate-lang/syndicate-js/tree/main/packages/browser-stdenv", "license": "GPL-3.0+", @@ -22,8 +22,8 @@ "@preserves/core": "0.995.0", "@preserves/schema": "0.995.1", "@syndicate-lang/compiler": "^0.19.0", - "@syndicate-lang/core": "^0.26.1", - "@syndicate-lang/html2": "^0.27.2", - "@syndicate-lang/ws-relay": "^0.28.1" + "@syndicate-lang/core": "^0.26.2", + "@syndicate-lang/html2": "^0.27.3", + "@syndicate-lang/ws-relay": "^0.28.2" } } diff --git a/packages/core/package.json b/packages/core/package.json index be4cbce..c817faa 100644 --- a/packages/core/package.json +++ b/packages/core/package.json @@ -1,6 +1,6 @@ { "name": "@syndicate-lang/core", - "version": "0.26.1", + "version": "0.26.2", "description": "Syndicate/JS for browser and node.js", "homepage": "https://github.com/syndicate-lang/syndicate-js/tree/main/packages/core", "license": "GPL-3.0+", diff --git a/packages/create/package.json b/packages/create/package.json index a9fc499..cf7bf44 100644 --- a/packages/create/package.json +++ b/packages/create/package.json @@ -1,6 +1,6 @@ { "name": "@syndicate-lang/create", - "version": "0.22.0", + "version": "0.22.1", "description": "Create a new Syndicate/js package", "author": "Tony Garnock-Jones ", "homepage": "https://github.com/syndicate-lang/syndicate-js/tree/main/packages/create", diff --git a/packages/fs/package.json b/packages/fs/package.json index 3023739..17b86a6 100644 --- a/packages/fs/package.json +++ b/packages/fs/package.json @@ -1,6 +1,6 @@ { "name": "@syndicate-lang/fs", - "version": "0.27.1", + "version": "0.27.2", "description": "Reflect contents of a portion of the file system as assertions", "homepage": "https://github.com/syndicate-lang/syndicate-js/tree/main/packages/fs", "license": "GPL-3.0+", @@ -30,13 +30,13 @@ "@preserves/core": "0.995.0" }, "dependencies": { - "@syndicate-lang/core": "^0.26.1", - "@syndicate-lang/service": "^0.27.1", + "@syndicate-lang/core": "^0.26.2", + "@syndicate-lang/service": "^0.27.2", "chokidar": "^3.5.3" }, "devDependencies": { "@preserves/schema-cli": "0.995.1", - "@syndicate-lang/ts-plugin": "^0.27.1", - "@syndicate-lang/tsc": "^0.27.1" + "@syndicate-lang/ts-plugin": "^0.27.2", + "@syndicate-lang/tsc": "^0.27.2" } } diff --git a/packages/html/package.json b/packages/html/package.json index 8fc0943..3d33a06 100644 --- a/packages/html/package.json +++ b/packages/html/package.json @@ -1,6 +1,6 @@ { "name": "@syndicate-lang/html", - "version": "0.27.1", + "version": "0.27.2", "description": "DOM/HTML UI for Syndicate/JS", "homepage": "https://github.com/syndicate-lang/syndicate-js/tree/main/packages/html", "license": "GPL-3.0+", @@ -25,10 +25,10 @@ "veryclean": "yarn run clean && rm -rf node_modules" }, "dependencies": { - "@syndicate-lang/core": "^0.26.1" + "@syndicate-lang/core": "^0.26.2" }, "devDependencies": { - "@syndicate-lang/ts-plugin": "^0.27.1", - "@syndicate-lang/tsc": "^0.27.1" + "@syndicate-lang/ts-plugin": "^0.27.2", + "@syndicate-lang/tsc": "^0.27.2" } } diff --git a/packages/html2/package.json b/packages/html2/package.json index c8147ed..5fa046c 100644 --- a/packages/html2/package.json +++ b/packages/html2/package.json @@ -1,6 +1,6 @@ { "name": "@syndicate-lang/html2", - "version": "0.27.2", + "version": "0.27.3", "description": "DOM/HTML UI for Syndicate/JS", "homepage": "https://github.com/syndicate-lang/syndicate-js/tree/main/packages/html2", "license": "GPL-3.0+", @@ -25,10 +25,10 @@ "veryclean": "yarn run clean && rm -rf node_modules" }, "dependencies": { - "@syndicate-lang/core": "^0.26.1" + "@syndicate-lang/core": "^0.26.2" }, "devDependencies": { - "@syndicate-lang/ts-plugin": "^0.27.1", - "@syndicate-lang/tsc": "^0.27.1" + "@syndicate-lang/ts-plugin": "^0.27.2", + "@syndicate-lang/tsc": "^0.27.2" } } diff --git a/packages/loader/package.json b/packages/loader/package.json index 78a0645..5fcf4a8 100644 --- a/packages/loader/package.json +++ b/packages/loader/package.json @@ -1,6 +1,6 @@ { "name": "@syndicate-lang/loader", - "version": "0.26.1", + "version": "0.26.2", "description": "Syndicate/JS node.js loader hook", "homepage": "https://github.com/syndicate-lang/syndicate-js/tree/main/packages/loader", "license": "GPL-3.0+", @@ -23,7 +23,7 @@ "author": "Tony Garnock-Jones ", "dependencies": { "@syndicate-lang/compiler": "^0.19.0", - "@syndicate-lang/core": "^0.26.1", - "@syndicate-lang/service": "^0.27.1" + "@syndicate-lang/core": "^0.26.2", + "@syndicate-lang/service": "^0.27.2" } } diff --git a/packages/service/package.json b/packages/service/package.json index ee134df..c42253d 100644 --- a/packages/service/package.json +++ b/packages/service/package.json @@ -1,6 +1,6 @@ { "name": "@syndicate-lang/service", - "version": "0.27.1", + "version": "0.27.2", "description": "Run a node.js program as a service within syndicate-server", "homepage": "https://github.com/syndicate-lang/syndicate-js/tree/main/packages/service", "license": "GPL-3.0+", @@ -22,10 +22,10 @@ "veryclean": "yarn run clean && rm -rf node_modules" }, "dependencies": { - "@syndicate-lang/core": "^0.26.1" + "@syndicate-lang/core": "^0.26.2" }, "devDependencies": { - "@syndicate-lang/ts-plugin": "^0.27.1", - "@syndicate-lang/tsc": "^0.27.1" + "@syndicate-lang/ts-plugin": "^0.27.2", + "@syndicate-lang/tsc": "^0.27.2" } } diff --git a/packages/syndicatec/package.json b/packages/syndicatec/package.json index 6ab53ee..6a16ab9 100644 --- a/packages/syndicatec/package.json +++ b/packages/syndicatec/package.json @@ -1,6 +1,6 @@ { "name": "@syndicate-lang/syndicatec", - "version": "0.27.1", + "version": "0.27.2", "description": "Syndicate/JS compiler command-line tool", "homepage": "https://github.com/syndicate-lang/syndicate-js/tree/main/packages/syndicatec", "license": "GPL-3.0+", @@ -21,7 +21,7 @@ "author": "Tony Garnock-Jones ", "dependencies": { "@syndicate-lang/compiler": "^0.19.0", - "@syndicate-lang/core": "^0.26.1", + "@syndicate-lang/core": "^0.26.2", "glob": "^7.1.6", "yargs": "^16.2.0" }, diff --git a/packages/timer/package.json b/packages/timer/package.json index 807c183..6181e16 100644 --- a/packages/timer/package.json +++ b/packages/timer/package.json @@ -1,6 +1,6 @@ { "name": "@syndicate-lang/timer", - "version": "0.27.1", + "version": "0.27.2", "description": "Time and timer driver for Syndicate", "homepage": "https://github.com/syndicate-lang/syndicate-js/tree/main/packages/timer", "license": "GPL-3.0+", @@ -25,10 +25,10 @@ "veryclean": "yarn run clean && rm -rf node_modules" }, "dependencies": { - "@syndicate-lang/core": "^0.26.1" + "@syndicate-lang/core": "^0.26.2" }, "devDependencies": { - "@syndicate-lang/ts-plugin": "^0.27.1", - "@syndicate-lang/tsc": "^0.27.1" + "@syndicate-lang/ts-plugin": "^0.27.2", + "@syndicate-lang/tsc": "^0.27.2" } } diff --git a/packages/ts-plugin/package.json b/packages/ts-plugin/package.json index d8ef949..3fbb0b7 100644 --- a/packages/ts-plugin/package.json +++ b/packages/ts-plugin/package.json @@ -1,6 +1,6 @@ { "name": "@syndicate-lang/ts-plugin", - "version": "0.27.1", + "version": "0.27.2", "description": "Syndicate/JS TypeScript tsserver plugin", "homepage": "https://github.com/syndicate-lang/syndicate-js/tree/main/packages/ts-plugin", "license": "GPL-3.0+", @@ -23,7 +23,7 @@ "author": "Tony Garnock-Jones ", "dependencies": { "@syndicate-lang/compiler": "^0.19.0", - "@syndicate-lang/core": "^0.26.1" + "@syndicate-lang/core": "^0.26.2" }, "devDependencies": { "typescript": "^4.9" diff --git a/packages/tsc/package.json b/packages/tsc/package.json index 140be2f..ba1a618 100644 --- a/packages/tsc/package.json +++ b/packages/tsc/package.json @@ -1,6 +1,6 @@ { "name": "@syndicate-lang/tsc", - "version": "0.27.1", + "version": "0.27.2", "description": "Syndicate for TypeScript compiler command-line tool", "homepage": "https://github.com/syndicate-lang/syndicate-js/tree/main/packages/tsc", "license": "GPL-3.0+", @@ -21,7 +21,7 @@ "author": "Tony Garnock-Jones ", "dependencies": { "@syndicate-lang/compiler": "^0.19.0", - "@syndicate-lang/core": "^0.26.1", + "@syndicate-lang/core": "^0.26.2", "glob": "^7.1.6", "yargs": "^16.2.0" }, diff --git a/packages/ws-relay/package.json b/packages/ws-relay/package.json index df4c2fc..d29ee0d 100644 --- a/packages/ws-relay/package.json +++ b/packages/ws-relay/package.json @@ -1,6 +1,6 @@ { "name": "@syndicate-lang/ws-relay", - "version": "0.28.1", + "version": "0.28.2", "description": "Browser WebSocket relay to a Syndicate server", "homepage": "https://github.com/syndicate-lang/syndicate-js/tree/main/packages/ws-relay", "license": "GPL-3.0+", @@ -28,11 +28,11 @@ "@preserves/core": "0.995.0" }, "dependencies": { - "@syndicate-lang/core": "^0.26.1", + "@syndicate-lang/core": "^0.26.2", "salty-crypto": "0.3" }, "devDependencies": { - "@syndicate-lang/ts-plugin": "^0.27.1", - "@syndicate-lang/tsc": "^0.27.1" + "@syndicate-lang/ts-plugin": "^0.27.2", + "@syndicate-lang/tsc": "^0.27.2" } } From 4c8796b6c9975ab1f6671acba98b3736eeb222cd Mon Sep 17 00:00:00 2001 From: Tony Garnock-Jones Date: Sat, 9 Mar 2024 11:22:10 +0100 Subject: [PATCH 20/92] Allow use of `id` attribute on in-browser script tags to propagate to compilation output --- packages/compiler/syndicate-browser-compiler.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/compiler/syndicate-browser-compiler.js b/packages/compiler/syndicate-browser-compiler.js index aa03783..8e4e7d5 100644 --- a/packages/compiler/syndicate-browser-compiler.js +++ b/packages/compiler/syndicate-browser-compiler.js @@ -20,7 +20,7 @@ const currentSyndicateTarget = Syndicate.Dataspace.global; const sourceCode = sourceUrl ? await (await fetch(sourceUrl)).text() : script.innerHTML; const compilationResult = SyndicateCompiler.compile({ - name: sourceUrl || 'anonymous-script-tag', + name: sourceUrl || script.id || 'anonymous-script-tag', source: sourceCode, module: isModule ? 'es6' : 'none', runtime: isModule ? void 0 : 'Syndicate', From 4843c76784ed71236ac65a10830549afd79afa9e Mon Sep 17 00:00:00 2001 From: Tony Garnock-Jones Date: Sat, 9 Mar 2024 11:23:37 +0100 Subject: [PATCH 21/92] Remove unused import --- packages/core/src/runtime/actor.ts | 1 - 1 file changed, 1 deletion(-) diff --git a/packages/core/src/runtime/actor.ts b/packages/core/src/runtime/actor.ts index 3723668..d982401 100644 --- a/packages/core/src/runtime/actor.ts +++ b/packages/core/src/runtime/actor.ts @@ -8,7 +8,6 @@ import { ActorSpace } from './space.js'; import { ActionDescription, StructuredTask, TaskAction } from './task.js'; import { randomId } from './randomid.js'; import * as Q from '../gen/queuedTasks.js'; -import { Dataspace } from './dataspace.js'; export type AnyValue = Value; From 644891ce7609c3cee73e6c6477bccc77066fd845 Mon Sep 17 00:00:00 2001 From: Tony Garnock-Jones Date: Sat, 9 Mar 2024 22:52:09 +0100 Subject: [PATCH 22/92] Compiler test infrastructure --- packages/compiler/jest.config.ts | 7 ++++ packages/compiler/package.json | 4 ++- packages/compiler/src/compiler/codegen.ts | 4 +-- packages/compiler/src/compiler/grammar.ts | 4 +-- packages/compiler/src/compiler/index.ts | 6 ++-- packages/compiler/src/index.ts | 4 +-- packages/compiler/src/syntax/codewriter.ts | 8 ++--- packages/compiler/src/syntax/index.ts | 20 ++++++------ packages/compiler/src/syntax/matcher.ts | 6 ++-- packages/compiler/src/syntax/reader.ts | 6 ++-- packages/compiler/src/syntax/scanner.ts | 4 +-- packages/compiler/src/syntax/template.ts | 8 ++--- packages/compiler/src/syntax/tokens.ts | 2 +- packages/compiler/test/test-utils.ts | 38 ++++++++++++++++++++++ 14 files changed, 84 insertions(+), 37 deletions(-) create mode 100644 packages/compiler/jest.config.ts create mode 100644 packages/compiler/test/test-utils.ts diff --git a/packages/compiler/jest.config.ts b/packages/compiler/jest.config.ts new file mode 100644 index 0000000..4a09b3e --- /dev/null +++ b/packages/compiler/jest.config.ts @@ -0,0 +1,7 @@ +/// SPDX-License-Identifier: GPL-3.0-or-later +/// SPDX-FileCopyrightText: Copyright Ā© 2016-2024 Tony Garnock-Jones + +export default { + preset: 'ts-jest', + testEnvironment: 'node', +}; diff --git a/packages/compiler/package.json b/packages/compiler/package.json index 5342822..4476df5 100644 --- a/packages/compiler/package.json +++ b/packages/compiler/package.json @@ -18,7 +18,9 @@ "rollup": "../../node_modules/.bin/rollup -c", "rollup:watch": "../../node_modules/.bin/rollup -c -w", "clean": "rm -rf lib dist", - "veryclean": "yarn run clean && rm -rf node_modules" + "veryclean": "yarn run clean && rm -rf node_modules", + "test": "../../node_modules/.bin/jest", + "test:watch": "yarn test --watch" }, "main": "dist/syndicate-compiler.js", "module": "lib/index.js", diff --git a/packages/compiler/src/compiler/codegen.ts b/packages/compiler/src/compiler/codegen.ts index e714785..7d344d3 100644 --- a/packages/compiler/src/compiler/codegen.ts +++ b/packages/compiler/src/compiler/codegen.ts @@ -7,7 +7,7 @@ import { Items, Pattern, Templates, Substitution, TokenType, SourceMap, CodeWriter, TemplateFunction, Token, SpanIndex, match, TokenBase, getRange, Pos, -} from '../syntax/index.js'; +} from '../syntax/index'; import { SyndicateParser, SyndicateTypedParser, Identifier, @@ -17,7 +17,7 @@ import { compilePattern, SpawnStatement, -} from './grammar.js'; +} from './grammar'; export function stripShebang(items: Items): Items { if ((items.length > 0) && diff --git a/packages/compiler/src/compiler/grammar.ts b/packages/compiler/src/compiler/grammar.ts index 9e24a05..1d79902 100644 --- a/packages/compiler/src/compiler/grammar.ts +++ b/packages/compiler/src/compiler/grammar.ts @@ -9,8 +9,8 @@ import { scope, bind, seq, alt, upTo, atom, atomString, group, repeat, option, withoutSpace, map, mapm, rest, discard, value, succeed, fail, separatedOrTerminatedBy, not, -} from '../syntax/index.js'; -import * as Matcher from '../syntax/matcher.js'; +} from '../syntax/index'; +import * as Matcher from '../syntax/matcher'; //--------------------------------------------------------------------------- // AST types diff --git a/packages/compiler/src/compiler/index.ts b/packages/compiler/src/compiler/index.ts index 5126f23..64281a2 100644 --- a/packages/compiler/src/compiler/index.ts +++ b/packages/compiler/src/compiler/index.ts @@ -1,6 +1,6 @@ /// SPDX-License-Identifier: GPL-3.0-or-later /// SPDX-FileCopyrightText: Copyright Ā© 2016-2024 Tony Garnock-Jones -export * as Grammar from './grammar.js'; -export * as Codegen from './codegen.js'; -export { compile, CompileOptions } from './codegen.js'; +export * as Grammar from './grammar'; +export * as Codegen from './codegen'; +export { compile, CompileOptions } from './codegen'; diff --git a/packages/compiler/src/index.ts b/packages/compiler/src/index.ts index 317867a..6172190 100644 --- a/packages/compiler/src/index.ts +++ b/packages/compiler/src/index.ts @@ -1,5 +1,5 @@ /// SPDX-License-Identifier: GPL-3.0-or-later /// SPDX-FileCopyrightText: Copyright Ā© 2016-2024 Tony Garnock-Jones -export * as Syntax from './syntax/index.js'; -export * from './compiler/index.js'; +export * as Syntax from './syntax/index'; +export * from './compiler/index'; diff --git a/packages/compiler/src/syntax/codewriter.ts b/packages/compiler/src/syntax/codewriter.ts index 40c2d66..d0657b1 100644 --- a/packages/compiler/src/syntax/codewriter.ts +++ b/packages/compiler/src/syntax/codewriter.ts @@ -1,10 +1,10 @@ /// SPDX-License-Identifier: GPL-3.0-or-later /// SPDX-FileCopyrightText: Copyright Ā© 2016-2024 Tony Garnock-Jones -import { Token, TokenType, Item, Items, isGroup } from './tokens.js'; -import { Pos, startPos, advancePos } from './position.js'; -import { vlqEncode } from './vlq.js'; -import { SpanInfo } from './span.js'; +import { Token, TokenType, Item, Items, isGroup } from './tokens'; +import { Pos, startPos, advancePos } from './position'; +import { vlqEncode } from './vlq'; +import { SpanInfo } from './span'; export interface SourceMap { version: 3; diff --git a/packages/compiler/src/syntax/index.ts b/packages/compiler/src/syntax/index.ts index adf02dc..2d1551e 100644 --- a/packages/compiler/src/syntax/index.ts +++ b/packages/compiler/src/syntax/index.ts @@ -1,13 +1,13 @@ /// SPDX-License-Identifier: GPL-3.0-or-later /// SPDX-FileCopyrightText: Copyright Ā© 2016-2024 Tony Garnock-Jones -export * from './codewriter.js'; -export * from './list.js'; -export * from './matcher.js'; -export * from './position.js'; -export * from './reader.js'; -export * from './scanner.js'; -export * from './span.js'; -export * from './template.js'; -export * from './tokens.js'; -export * from './vlq.js'; +export * from './codewriter'; +export * from './list'; +export * from './matcher'; +export * from './position'; +export * from './reader'; +export * from './scanner'; +export * from './span'; +export * from './template'; +export * from './tokens'; +export * from './vlq'; diff --git a/packages/compiler/src/syntax/matcher.ts b/packages/compiler/src/syntax/matcher.ts index e218b3e..4e087bd 100644 --- a/packages/compiler/src/syntax/matcher.ts +++ b/packages/compiler/src/syntax/matcher.ts @@ -4,9 +4,9 @@ import { Token, TokenType, Items, Item, isGroup, isToken, isSpace, isTokenType, -} from './tokens.js'; -import { Pos, startPos } from './position.js'; -import { List, ArrayList, atEnd, notAtEnd } from './list.js'; +} from './tokens'; +import { Pos, startPos } from './position'; +import { List, ArrayList, atEnd, notAtEnd } from './list'; //--------------------------------------------------------------------------- // Patterns over Item diff --git a/packages/compiler/src/syntax/reader.ts b/packages/compiler/src/syntax/reader.ts index b91188f..9cfbdfb 100644 --- a/packages/compiler/src/syntax/reader.ts +++ b/packages/compiler/src/syntax/reader.ts @@ -1,9 +1,9 @@ /// SPDX-License-Identifier: GPL-3.0-or-later /// SPDX-FileCopyrightText: Copyright Ā© 2016-2024 Tony Garnock-Jones -import { TokenType, Token, Group, GroupInProgress, Item, Items, finishGroup } from './tokens.js'; -import { Pos, startPos } from './position.js'; -import { Scanner, StringScanner } from './scanner.js'; +import { TokenType, Token, Group, GroupInProgress, Item, Items, finishGroup } from './tokens'; +import { Pos, startPos } from './position'; +import { Scanner, StringScanner } from './scanner'; function matchingParen(c: string): string | null { switch (c) { diff --git a/packages/compiler/src/syntax/scanner.ts b/packages/compiler/src/syntax/scanner.ts index 5448b5e..d990e55 100644 --- a/packages/compiler/src/syntax/scanner.ts +++ b/packages/compiler/src/syntax/scanner.ts @@ -1,8 +1,8 @@ /// SPDX-License-Identifier: GPL-3.0-or-later /// SPDX-FileCopyrightText: Copyright Ā© 2016-2024 Tony Garnock-Jones -import { TokenType, Token, Item, GroupInProgress } from './tokens.js'; -import { Pos, advancePos } from './position.js'; +import { TokenType, Token, Item, GroupInProgress } from './tokens'; +import { Pos, advancePos } from './position'; export abstract class Scanner implements IterableIterator { readonly pos: Pos; diff --git a/packages/compiler/src/syntax/template.ts b/packages/compiler/src/syntax/template.ts index b139855..4eaa6b3 100644 --- a/packages/compiler/src/syntax/template.ts +++ b/packages/compiler/src/syntax/template.ts @@ -1,10 +1,10 @@ /// SPDX-License-Identifier: GPL-3.0-or-later /// SPDX-FileCopyrightText: Copyright Ā© 2016-2024 Tony Garnock-Jones -import { Items } from './tokens.js'; -import { Pos, startPos } from './position.js'; -import { laxRead, LaxReadOptions } from './reader.js'; -import * as M from './matcher.js'; +import { Items } from './tokens'; +import { Pos, startPos } from './position'; +import { laxRead, LaxReadOptions } from './reader'; +import * as M from './matcher'; const substPat = M.scope((o: { pos: Pos }) => M.seq(M.atom('$'), diff --git a/packages/compiler/src/syntax/tokens.ts b/packages/compiler/src/syntax/tokens.ts index 16a2da1..69d70a6 100644 --- a/packages/compiler/src/syntax/tokens.ts +++ b/packages/compiler/src/syntax/tokens.ts @@ -1,7 +1,7 @@ /// SPDX-License-Identifier: GPL-3.0-or-later /// SPDX-FileCopyrightText: Copyright Ā© 2016-2024 Tony Garnock-Jones -import { Pos } from './position.js'; +import { Pos } from './position'; export enum TokenType { SPACE, diff --git a/packages/compiler/test/test-utils.ts b/packages/compiler/test/test-utils.ts new file mode 100644 index 0000000..ef7c81e --- /dev/null +++ b/packages/compiler/test/test-utils.ts @@ -0,0 +1,38 @@ +/// SPDX-License-Identifier: GPL-3.0-or-later +/// SPDX-FileCopyrightText: Copyright Ā© 2016-2024 Tony Garnock-Jones + +import { is, preserves } from '@preserves/core'; + +declare global { + namespace jest { + interface Matchers { + is(expected: any): R; + toThrowFilter(f: (e: Error) => boolean): R; + } + } +} + +expect.extend({ + is(actual, expected) { + return is(actual, expected) + ? { message: () => preserves`expected ${actual} not to be Preserves.is to ${expected}`, + pass: true } + : { message: () => preserves`expected ${actual} to be Preserves.is to ${expected}`, + pass: false }; + }, + + toThrowFilter(thunk, f) { + try { + thunk(); + return { message: () => preserves`expected an exception`, pass: false }; + } catch (e) { + if (f(e)) { + return { message: () => preserves`expected an exception not matching the filter`, + pass: true }; + } else { + return { message: () => preserves`expected an exception matching the filter: ${(e as any)?.constructor?.name}`, + pass: false }; + } + } + } +}); From b4d728ca7a188269fde351ed26381d2815a2ea9a Mon Sep 17 00:00:00 2001 From: Tony Garnock-Jones Date: Sat, 9 Mar 2024 23:04:29 +0100 Subject: [PATCH 23/92] Change `stop` to refer to a lexical facet, not a dynamic facet. The previous behaviour of `stop` was inappropriate: it always stopped `Syndicate.Turn.activeFacet`, which is an instance of dynamic binding. Now, it instead stops the unique lexically-innermost lexically-apparent facet - the special name `currentSyndicateFacet` - by default. It is an error if no such facet is lexically apparent (if `currentSyndicateFacet` is unbound). This makes it similar to `break` and `continue` in structured programming. In addition, an expression denoting a facet can now be used with `stop` to override this default - again, like `break` and `continue` in some languages. Finally, `react` can now be preceded by a label, which binds the label as a variable denoting the newly-created facet (inside the facet's scope). --- packages/compiler/src/compiler/codegen.ts | 58 ++++++--- packages/compiler/src/compiler/grammar.ts | 43 +++++-- packages/compiler/src/syntax/matcher.ts | 18 +++ packages/compiler/test/compiler.test.ts | 141 ++++++++++++++++++++++ 4 files changed, 234 insertions(+), 26 deletions(-) create mode 100644 packages/compiler/test/compiler.test.ts diff --git a/packages/compiler/src/compiler/codegen.ts b/packages/compiler/src/compiler/codegen.ts index 7d344d3..d365bfe 100644 --- a/packages/compiler/src/compiler/codegen.ts +++ b/packages/compiler/src/compiler/codegen.ts @@ -17,6 +17,7 @@ import { compilePattern, SpawnStatement, + FacetToStop, } from './grammar'; export function stripShebang(items: Items): Items { @@ -116,16 +117,39 @@ function binderTypeGuard(t: TemplateFunction): (binder: Binder, index: number) = export function expand(tree: Items, ctx: ExpansionContext): Items { const macro = new Templates(undefined, { extraDelimiters: ':' }); - function terminalWrap(t: TemplateFunction, isTerminal: boolean, body: Statement): Statement { - if (isTerminal) { - return t`__SYNDICATE__.Turn.active._stop(__SYNDICATE__.Turn.activeFacet, () => {${body}})` + function terminalWrap( + t: TemplateFunction, + facetToStop: FacetToStop | 'none' | 'once-wrapper', + body: Statement, + ): Statement { + if (facetToStop === 'none') { + return walk(body); } else { - return body; + const toStop = + facetToStop === 'default' ? 'currentSyndicateFacet' : + facetToStop === 'once-wrapper' ? '__once_facet' : + walk(facetToStop); + const resetCurrentSyndicateFacet = + facetToStop === 'once-wrapper' ? [] : + t`const currentSyndicateFacet = __SYNDICATE__.Turn.activeFacet;`; + return t`__SYNDICATE__.Turn.active._stop(${toStop}, () => {${resetCurrentSyndicateFacet}${walk(body)}})`; } } - function facetWrap(t: TemplateFunction, items: Items): Items { - return t`__SYNDICATE__.Turn.active.facet(() => {${items}})`; + function facetWrap( + t: TemplateFunction, + facetName: Identifier | 'default' | 'once-wrapper', + items: Items, + ): Items { + if (facetName === 'once-wrapper') { + return t`__SYNDICATE__.Turn.active.facet(() => {const __once_facet = __SYNDICATE__.Turn.activeFacet; ${items}});`; + } else { + const defaultLabel = t`const currentSyndicateFacet = __SYNDICATE__.Turn.activeFacet; `; + const customLabel = facetName === 'default' + ? [] + : t`const ${facetName.text} = currentSyndicateFacet; `; + return t`__SYNDICATE__.Turn.active.facet(() => {${defaultLabel}${customLabel}${items}});`; + } } function x(p: Pattern, f: (v: T, t: TemplateFunction) => Items) { @@ -155,7 +179,7 @@ export function expand(tree: Items, ctx: ExpansionContext): Items { let body = (spawn === null) ? walk(s.body) - : expandSpawn(spawn, t, t`__SYNDICATE__.Turn.activeFacet.preventInertCheck();`); + : expandSpawn(spawn, t, t` __SYNDICATE__.Turn.activeFacet.preventInertCheck();`); const sa = compilePattern(s.pattern); const assertion = t`__SYNDICATE__.Observe({ @@ -185,8 +209,9 @@ ${joinItems(sa.captureBinders.map(binderTypeGuard(t)), '\n')} ? t`, new __SYNDICATE__.Set([${commaJoin(s.initialAssertions.map(walk))}])` : ``; */ - const n = spawn.name === void 0 ? '' : t` __SYNDICATE__.Turn.activeFacet.actor.name = ${walk(spawn.name)};`; - return t`__SYNDICATE__.Dataspace._spawn${spawn.linkedToken ? 'Link': ''}(() => {${n} ${inject} ${walk(spawn.body)} });`; + const f = t` const currentSyndicateFacet = __SYNDICATE__.Turn.activeFacet;`; + const n = spawn.name === void 0 ? '' : t` currentSyndicateFacet.actor.name = ${walk(spawn.name)};`; + return t`__SYNDICATE__.Dataspace._spawn${spawn.linkedToken ? 'Link': ''}(() => {${f}${n}${inject}${walk(spawn.body)}});`; } x(ctx.parser.spawn, expandSpawn); @@ -226,10 +251,10 @@ ${joinItems(sa.captureBinders.map(binderTypeGuard(t)), '\n')} t`_dataflow(() => {${walk(s.body)}});`); x(ctx.parser.eventHandlerEndpointStatement, (s, t) => { - const wrap = s.once ? (i: Items) => facetWrap(t, i) : (i: Items) => i; + const wrap = s.once ? (i: Items) => facetWrap(t, 'once-wrapper', i) : (i: Items) => i; if (s.triggerType === 'dataflow') { - return wrap(t`__SYNDICATE__.Turn.active._dataflow(() => { if (${walk(s.predicate)}) { ${terminalWrap(t, s.terminal, walk(s.body))} } });`); + return wrap(t`__SYNDICATE__.Turn.active._dataflow(() => { if (${walk(s.predicate)}) { ${terminalWrap(t, s.facetToStop, s.body)} } });`); } if (s.triggerType === 'stop') { @@ -247,19 +272,19 @@ ${joinItems(sa.captureBinders.map(binderTypeGuard(t)), '\n')} case 'asserted': entity = t`{ assert: (${ctx.argDecl(t, '__vs', '__SYNDICATE__.AnyValue')}, ${ctx.argDecl(t, '__handle', '__SYNDICATE__.Handle')}) => { - ${guardBody(terminalWrap(t, s.terminal, walk(s.body)))} + ${guardBody(terminalWrap(t, s.facetToStop, s.body))} } }`; break; case 'retracted': entity = t`__SYNDICATE__.assertionObserver((${ctx.argDecl(t, '__vs', '__SYNDICATE__.AnyValue')}) => { - ${guardBody(t`return () => { ${terminalWrap(t, s.terminal, walk(s.body))} };`)} + ${guardBody(t`return () => { ${terminalWrap(t, s.facetToStop, s.body)} };`)} })`; break; case 'message': entity = t`{ message: (${ctx.argDecl(t, '__vs', '__SYNDICATE__.AnyValue')}) => { - ${guardBody(terminalWrap(t, s.terminal, walk(s.body)))} + ${guardBody(terminalWrap(t, s.facetToStop, s.body))} } }`; break; @@ -294,10 +319,9 @@ ${joinItems(sa.captureBinders.map(binderTypeGuard(t)), '\n')} xf(ctx.parser.messageSendStatement, (s, t) => t`message(currentSyndicateTarget, ${walk(s.expr)});`); - x(ctx.parser.reactStatement, (s, t) => facetWrap(t, s.body)); + x(ctx.parser.reactStatement, (s, t) => facetWrap(t, s.label ?? 'default', s.body)); - x(ctx.parser.stopStatement, (s, t) => - t`__SYNDICATE__.Turn.active._stop(__SYNDICATE__.Turn.activeFacet, () => {${walk(s.body)}});`) + x(ctx.parser.stopStatement, (s, t) => t`${terminalWrap(t, s.facetToStop, s.body)};`); return tree; } diff --git a/packages/compiler/src/compiler/grammar.ts b/packages/compiler/src/compiler/grammar.ts index 1d79902..2550214 100644 --- a/packages/compiler/src/compiler/grammar.ts +++ b/packages/compiler/src/compiler/grammar.ts @@ -6,7 +6,7 @@ import { Pattern, foldItems, match, anonymousTemplate as template, commaJoin, - scope, bind, seq, alt, upTo, atom, atomString, group, + scope, bind, seq, seqTuple, alt, upTo, atom, atomString, group, repeat, option, withoutSpace, map, mapm, rest, discard, value, succeed, fail, separatedOrTerminatedBy, not, } from '../syntax/index'; @@ -50,8 +50,14 @@ export interface StatementTurnAction extends TurnAction { body: Statement; } +export type FacetToStop = 'default' | Expr; + +export interface StopStatement extends StatementTurnAction { + facetToStop: FacetToStop; +} + export interface GenericEventEndpointStatement extends StatementTurnAction { - terminal: boolean; + facetToStop: FacetToStop | 'none' | 'once-wrapper'; once: boolean; isDynamic: boolean; } @@ -90,6 +96,7 @@ export interface DuringStatement extends FacetSetupAction { } export interface ReactStatement extends FacetSetupAction { + label: Identifier | null; } export interface AtStatement { @@ -184,6 +191,10 @@ export class SyndicateParser { return withoutSpace(upTo(alt(this.exprBoundary, ... extraStops))); } + expr1(... extraStops: Pattern[]): Pattern { + return mapm(this.expr(... extraStops), e => e.length ? succeed(e) : fail); + } + propertyNameExpr(): Pattern { const dq = template`"`; return alt( @@ -271,22 +282,25 @@ export class SyndicateParser { mandatoryIfNotTerminal(o: GenericEventEndpointStatement, p: Pattern): Pattern { return i => { - return (o.terminal) ? option(p)(i) : p(i); + return (o.facetToStop !== 'none') ? option(p)(i) : p(i); }; } // Principal: Turn readonly eventHandlerEndpointStatement: Pattern = this.turnAction(o => { - o.terminal = false; + o.facetToStop = 'none'; o.once = false; o.isDynamic = true; o.body = []; - return seq(alt(seq(option(map(atom('stop'), _ => o.terminal = true)), + return seq(alt(seq(option(seq(atom('stop'), + map(option(this.expr1(atom('on'))), es => { + o.facetToStop = es.length ? es[0] : 'default'; + }))), atom('on')), map(atom('once'), _ => { - o.terminal = true; o.once = true; + o.facetToStop = 'once-wrapper'; })), alt(seq(map(group('(', bind(o as DataflowEndpointStatement, 'predicate', this.expr())), @@ -294,7 +308,7 @@ export class SyndicateParser { this.mandatoryIfNotTerminal(o, this.statement(o.body))), mapm(seq(bind(o, 'triggerType', atomString('stop')), option(this.statement(o.body))), - v => o.terminal ? fail : succeed(v)), + v => ((o.facetToStop !== 'none') || o.once) ? fail : succeed(v)), seq(bind(o, 'triggerType', alt(atomString('asserted'), atomString('retracted'), @@ -338,12 +352,23 @@ export class SyndicateParser { // Principal: Turn readonly reactStatement: Pattern = this.turnAction(o => { + o.label = null; o.body = []; - return seq(atom('react'), this.block(o.body)); + return seq(option(map(seqTuple(this.identifier, atom(':')), + ([i, _colon]) => o.label = i)), + atom('react'), + this.block(o.body)); }); // Principal: Turn - readonly stopStatement = this.blockTurnAction(atom('stop')); + readonly stopStatement: Pattern = + this.turnAction(o => { + o.facetToStop = 'default'; + o.body = []; + return seq(atom('stop'), + option(map(this.expr1(), e => o.facetToStop = e)), + alt(this.block(o.body), this.statementBoundary)); + }); // Principal: none readonly atStatement: Pattern = diff --git a/packages/compiler/src/syntax/matcher.ts b/packages/compiler/src/syntax/matcher.ts index 4e087bd..67665fe 100644 --- a/packages/compiler/src/syntax/matcher.ts +++ b/packages/compiler/src/syntax/matcher.ts @@ -14,6 +14,8 @@ import { List, ArrayList, atEnd, notAtEnd } from './list'; export type PatternResult = [T, List] | null; export type Pattern = (i: List) => PatternResult; +export type PatternTypeArg

= P extends Pattern ? T : never; + export function match(p: Pattern, items: Items, failure: F): T | F { const r = p(new ArrayList(items)); if (r === null) return failure; @@ -78,6 +80,22 @@ export function seq(... patterns: Pattern[]): Pattern { }; } +export function seqTuple[]]>( + ... patterns: Patterns +): Pattern<{ [I in keyof Patterns]: PatternTypeArg } & { length: Patterns['length'] }> +{ + return i => { + const rs = []; + for (const p of patterns) { + const r = p(i); + if (r === null) return null; + rs.push(r[0]); + i = r[1]; + } + return [rs as unknown as PatternTypeArg>>, i]; + }; +} + export function alt(... alts: Pattern[]): Pattern { return i => { for (const a of alts) { diff --git a/packages/compiler/test/compiler.test.ts b/packages/compiler/test/compiler.test.ts new file mode 100644 index 0000000..713e5c9 --- /dev/null +++ b/packages/compiler/test/compiler.test.ts @@ -0,0 +1,141 @@ +/// SPDX-License-Identifier: GPL-3.0-or-later +/// SPDX-FileCopyrightText: Copyright Ā© 2024 Tony Garnock-Jones + +import { compile, CompileOptions, Syntax } from '../src/index'; +import Pos = Syntax.Pos; +import './test-utils'; + +type Error = { message: string, start: Pos | undefined, end: Pos | undefined }; + +function translate(source: string, options: Partial = {}): { code: string, errors: Error[] } { + const errors: Error[] = []; + const result = compile({ + ... options, + module: 'none', + source, + emitError: (message, start, end) => errors.push({ message, start, end }), + }); + return { code: result.text, errors }; +} + +function translateNoErrors(source: string): string { + const o = translate(source); + expect(o.errors.length).toBe(0); + return o.code; +} + +describe('react', () => { + it('without label', () => { + expect(translateNoErrors(`react { a; b; c; }`)).toBe( + `__SYNDICATE__.Turn.active.facet(() => {const currentSyndicateFacet = __SYNDICATE__.Turn.activeFacet; a; b; c; });`); + }); + it('with label', () => { + expect(translateNoErrors(`someLabel: react { a; b; c; }`)).toBe( + `__SYNDICATE__.Turn.active.facet(() => {const currentSyndicateFacet = __SYNDICATE__.Turn.activeFacet; const someLabel = currentSyndicateFacet; a; b; c; });`); + }); +}); + +describe('spawn', () => { + it('without name', () => { + expect(translateNoErrors(`spawn { a; b; c; }`)).toBe( + `__SYNDICATE__.Dataspace._spawn(() => { const currentSyndicateFacet = __SYNDICATE__.Turn.activeFacet; a; b; c; });`); + }); + it('with name', () => { + expect(translateNoErrors(`spawn named 'foo' { a; b; c; }`)).toBe( + `__SYNDICATE__.Dataspace._spawn(() => { const currentSyndicateFacet = __SYNDICATE__.Turn.activeFacet; currentSyndicateFacet.actor.name = 'foo'; a; b; c; });`); + }); + it('with missing name (known incorrect parsing and codegen)', () => { + // At present, the expr() parser accepts *empty input*. TODO: something better. + expect(translateNoErrors(`spawn named { a; b; c; }`)).toBe( + `__SYNDICATE__.Dataspace._spawn(() => { const currentSyndicateFacet = __SYNDICATE__.Turn.activeFacet; currentSyndicateFacet.actor.name = ; a; b; c; });`); + }); +}); + +describe('stop', () => { + it('non-statement', () => { + expect(translateNoErrors(`stop`)).toBe( + `stop`); + }); + it('without facet, without body', () => { + expect(translateNoErrors(`stop;`)).toBe( + `__SYNDICATE__.Turn.active._stop(currentSyndicateFacet, () => {const currentSyndicateFacet = __SYNDICATE__.Turn.activeFacet;});`); + }); + it('without facet, empty body', () => { + expect(translateNoErrors(`stop {}`)).toBe( + `__SYNDICATE__.Turn.active._stop(currentSyndicateFacet, () => {const currentSyndicateFacet = __SYNDICATE__.Turn.activeFacet;});`); + }); + it('without facet, non-empty body', () => { + expect(translateNoErrors(`stop { a; b; }`)).toBe( + `__SYNDICATE__.Turn.active._stop(currentSyndicateFacet, () => {const currentSyndicateFacet = __SYNDICATE__.Turn.activeFacet; a; b; });`); + }); + it('with facet, without body', () => { + expect(translateNoErrors(`stop x.y;`)).toBe( + `__SYNDICATE__.Turn.active._stop(x.y, () => {const currentSyndicateFacet = __SYNDICATE__.Turn.activeFacet;});`); + }); + it('with facet, empty body', () => { + expect(translateNoErrors(`stop x.y {}`)).toBe( + `__SYNDICATE__.Turn.active._stop(x.y, () => {const currentSyndicateFacet = __SYNDICATE__.Turn.activeFacet;});`); + }); + it('with facet, non-empty body', () => { + expect(translateNoErrors(`stop x.y { a; b; }`)).toBe( + `__SYNDICATE__.Turn.active._stop(x.y, () => {const currentSyndicateFacet = __SYNDICATE__.Turn.activeFacet; a; b; });`); + }); + it('nested stop, no labels', () => { + expect(translateNoErrors(`stop { stop; }`)).toBe( + `__SYNDICATE__.Turn.active._stop(currentSyndicateFacet, () => {const currentSyndicateFacet = __SYNDICATE__.Turn.activeFacet; __SYNDICATE__.Turn.active._stop(currentSyndicateFacet, () => {const currentSyndicateFacet = __SYNDICATE__.Turn.activeFacet;}); });`); + }); +}); + +describe('during', () => { + it('stop in body', () => { + expect(translateNoErrors(`during P => { a; stop; b; }`)).toBe( + `__SYNDICATE__.Turn.active.assertDataflow(() => ({ target: currentSyndicateTarget, assertion: __SYNDICATE__.Observe({ + pattern: __SYNDICATE__.QuasiValue.finish((__SYNDICATE__.QuasiValue.lit(__SYNDICATE__.fromJS(P)))), + observer: __SYNDICATE__.Turn.ref(__SYNDICATE__.assertionFacetObserver( + (__vs) => { + if (Array.isArray(__vs)) { + + a; __SYNDICATE__.Turn.active._stop(currentSyndicateFacet, () => {const currentSyndicateFacet = __SYNDICATE__.Turn.activeFacet;}); b; + } + } + )) + }) }));`); + }); +}); + +describe('once', () => { + it('basics with block', () => { + expect(translateNoErrors(`once asserted P => { a; b; }`)).toBe( + `__SYNDICATE__.Turn.active.facet(() => {const __once_facet = __SYNDICATE__.Turn.activeFacet; __SYNDICATE__.Turn.active.assertDataflow(() => ({ + target: currentSyndicateTarget, + assertion: __SYNDICATE__.Observe({ + pattern: __SYNDICATE__.QuasiValue.finish((__SYNDICATE__.QuasiValue.lit(__SYNDICATE__.fromJS(P)))), + observer: __SYNDICATE__.Turn.ref({ + assert: (__vs, __handle) => { + if (Array.isArray(__vs)) { + + __SYNDICATE__.Turn.active._stop(__once_facet, () => { a; b; }) + } + } + }), + }), + }));});`); + }); + it('basics with statement', () => { + expect(translateNoErrors(`once asserted P => x;`)).toBe( + `__SYNDICATE__.Turn.active.facet(() => {const __once_facet = __SYNDICATE__.Turn.activeFacet; __SYNDICATE__.Turn.active.assertDataflow(() => ({ + target: currentSyndicateTarget, + assertion: __SYNDICATE__.Observe({ + pattern: __SYNDICATE__.QuasiValue.finish((__SYNDICATE__.QuasiValue.lit(__SYNDICATE__.fromJS(P)))), + observer: __SYNDICATE__.Turn.ref({ + assert: (__vs, __handle) => { + if (Array.isArray(__vs)) { + + __SYNDICATE__.Turn.active._stop(__once_facet, () => {x;}) + } + } + }), + }), + }));});`); + }); +}); From 2bcffd3bab22ef5193db93ee721ff9376a0c6139 Mon Sep 17 00:00:00 2001 From: Tony Garnock-Jones Date: Sat, 9 Mar 2024 23:05:40 +0100 Subject: [PATCH 24/92] Require explicit facet in Turn.stop --- packages/core/src/runtime/actor.ts | 6 +++--- packages/core/src/transport/relay.ts | 2 +- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/packages/core/src/runtime/actor.ts b/packages/core/src/runtime/actor.ts index d982401..11391e0 100644 --- a/packages/core/src/runtime/actor.ts +++ b/packages/core/src/runtime/actor.ts @@ -279,7 +279,7 @@ export const STOP_ON_RETRACT = Symbol('stop-on-retract'); // NB. NOT A GLOBAL SY export class StopOnRetract implements Partial { retract(_handle: Handle): void { - Turn.active.stop(); + Turn.active.stop(Turn.activeFacet); } data = STOP_ON_RETRACT; } @@ -361,11 +361,11 @@ export class Turn { } // Alias for syndicatec code generator to use - _stop(facet: Facet = this.activeFacet, continuation?: LocalAction) { + _stop(facet: Facet, continuation?: LocalAction) { this.stop(facet, continuation); } - stop(facet: Facet = this.activeFacet, continuation?: LocalAction) { + stop(facet: Facet, continuation?: LocalAction) { if (continuation) facet.onStop(continuation); facet._terminate(true); } diff --git a/packages/core/src/transport/relay.ts b/packages/core/src/transport/relay.ts index a3c574d..e896444 100644 --- a/packages/core/src/transport/relay.ts +++ b/packages/core/src/transport/relay.ts @@ -127,7 +127,7 @@ export class Membrane { } export const INERT_REF: Ref = { - relay: Actor.boot(() => Turn.active.stop()).root, + relay: Actor.boot(() => Turn.active.stop(Turn.activeFacet)).root, target: {}, }; From 31f11d2389defe029ae946a3d2a574115bb56ced Mon Sep 17 00:00:00 2001 From: Tony Garnock-Jones Date: Sat, 9 Mar 2024 23:06:00 +0100 Subject: [PATCH 25/92] Correct usages of `stop` to conform to new semantics --- packages/service/src/index.ts | 4 ++-- packages/ws-relay/src/index.ts | 6 +++--- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/packages/service/src/index.ts b/packages/service/src/index.ts index 85cf389..71ceecd 100644 --- a/packages/service/src/index.ts +++ b/packages/service/src/index.ts @@ -22,8 +22,8 @@ export function service(handler: (args: AnyValue) => void, options?: ServiceOpti packetWriter: (bs: Uint8Array) => process.stdout.write(bs), setup(r: Relay.Relay) { process.stdin.on('data', bs => facet.turn(() => r.accept(new Uint8Array(bs)))); - process.stdin.on('close', () => facet.turn(() => { stop {} })); - process.stdin.on('end', () => facet.turn(() => { stop {} })); + process.stdin.on('close', () => facet.turn(() => { stop facet; })); + process.stdin.on('end', () => facet.turn(() => { stop facet; })); }, initialRef: Turn.ref(assertionFacetObserver(handler)), }, options ?? {})); diff --git a/packages/ws-relay/src/index.ts b/packages/ws-relay/src/index.ts index b1e8e20..10bbf5a 100644 --- a/packages/ws-relay/src/index.ts +++ b/packages/ws-relay/src/index.ts @@ -64,7 +64,7 @@ export function boot(ds = Dataspace.global, debug: boolean = false, WebSocketCon message(a0: Assertion): void { const a = G.toTransportControl(a0); if (!a) return; - stop {} // ForceDisconnect + stop facet; // ForceDisconnect }, }; let final = false; @@ -76,7 +76,7 @@ export function boot(ds = Dataspace.global, debug: boolean = false, WebSocketCon console.log('closing', addr.url); ws.close(); } - ws.onclose = () => facet.turn(() => { stop {} }); + ws.onclose = () => facet.turn(() => { stop facet; }); ws.onerror = () => facet.turn(() => Turn.active.crash(new Error("WebSocket error"))); const relay = new Relay.Relay({ @@ -109,7 +109,7 @@ export function boot(ds = Dataspace.global, debug: boolean = false, WebSocketCon "resolved": G.Resolved.Rejected(G.Rejected(detail)), }); } - setTimeout(() => facet.turn(() => { stop {} }), 10000); + setTimeout(() => facet.turn(() => { stop facet; }), 10000); } try { const ws = new (WebSocketConstructor ?? WebSocket)(addr.url); From 60a5c2fdeef0f816976f78ad2c5dc97e05ad103d Mon Sep 17 00:00:00 2001 From: Tony Garnock-Jones Date: Sat, 9 Mar 2024 23:06:43 +0100 Subject: [PATCH 26/92] Update flappy-bird example --- .../index.html | 1 + .../package.json | 1 + .../src/index.ts | 20 +++++++------------ .../yarn.lock | 5 +++++ 4 files changed, 14 insertions(+), 13 deletions(-) diff --git a/examples/syndicate-html-example-flappy-bird/index.html b/examples/syndicate-html-example-flappy-bird/index.html index fa16fc7..12c86b1 100644 --- a/examples/syndicate-html-example-flappy-bird/index.html +++ b/examples/syndicate-html-example-flappy-bird/index.html @@ -3,6 +3,7 @@ + diff --git a/examples/syndicate-html-example-flappy-bird/package.json b/examples/syndicate-html-example-flappy-bird/package.json index 481b797..90be666 100644 --- a/examples/syndicate-html-example-flappy-bird/package.json +++ b/examples/syndicate-html-example-flappy-bird/package.json @@ -12,6 +12,7 @@ "author": "Tony Garnock-Jones ", "license": "GPL-3.0+", "dependencies": { + "@preserves/core": "0.995", "@syndicate-lang/core": "*", "@syndicate-lang/html": "*", "@syndicate-lang/timer": "*" diff --git a/examples/syndicate-html-example-flappy-bird/src/index.ts b/examples/syndicate-html-example-flappy-bird/src/index.ts index 5fc778d..a5b58dd 100644 --- a/examples/syndicate-html-example-flappy-bird/src/index.ts +++ b/examples/syndicate-html-example-flappy-bird/src/index.ts @@ -1,7 +1,7 @@ /// SPDX-License-Identifier: GPL-3.0-or-later /// SPDX-FileCopyrightText: Copyright Ā© 2016-2021 Tony Garnock-Jones -import { Record, Dataspace, Double, floatValue, Ref, stringify } from '@syndicate-lang/core'; +import { Turn, Dataspace, Double, floatValue, Ref, Facet } from '@syndicate-lang/core'; import { boot as bootHtml, WindowEvent, template, Anchor } from '@syndicate-lang/html'; import { boot as bootTimer, PeriodicTick } from '@syndicate-lang/timer'; @@ -86,9 +86,7 @@ function spawnGame(mainDs: Ref) { on (ypos.value > BOARD_HEIGHT - FLAPPY_HEIGHT) { ypos.value = BOARD_HEIGHT - FLAPPY_HEIGHT; - react { - assert GameOver(); - } + assert GameOver(); } } @@ -141,14 +139,14 @@ function spawnGame(mainDs: Ref) { react { const pipeNumber = nextPipe.value++; spawn linked named ['pipe', pipeNumber] { - runPipe(pipeNumber); + runPipe(pipeNumber, Turn.activeFacet); } } } } } - function runPipe(i: number) { + function runPipe(i: number, mainPipeFacet: Facet) { const xlocation = (i + 1) * 324; let ui = new Anchor(); @@ -159,21 +157,17 @@ function spawnGame(mainDs: Ref) { + PILLAR_HEAD_HEIGHT * 3; const lowerHeight = FIELD_HEIGHT - upperHeight - PILLAR_GAP; - stop on (xpos.value < -(PILLAR_WIDTH + FLAPPY_XPOS)); + stop mainPipeFacet on (xpos.value < -(PILLAR_WIDTH + FLAPPY_XPOS)); at gameDs { - react { - stop on (xpos.value <= 0) send message IncreaseScore(); - } + once (xpos.value <= 0) send message IncreaseScore(); on asserted Position($flappyXpos, _) => xpos.value = xlocation - floatValue(flappyXpos); on asserted Position($xpos, $ypos) => { if (touchingPillar(floatValue(xpos), floatValue(ypos))) { - react { - assert GameOver(); - } + assert GameOver(); } } } diff --git a/examples/syndicate-html-example-flappy-bird/yarn.lock b/examples/syndicate-html-example-flappy-bird/yarn.lock index 471ca78..e2a1c9e 100644 --- a/examples/syndicate-html-example-flappy-bird/yarn.lock +++ b/examples/syndicate-html-example-flappy-bird/yarn.lock @@ -7,6 +7,11 @@ resolved "https://registry.yarnpkg.com/@preserves/core/-/core-0.990.0.tgz#c57c1c3d5159fc17477a4205d5a94a78fbf5b1aa" integrity sha512-Mx013USv9JU1SrtMxaJISETBy2LZ402xH8ZnQI4JzG6W27ZwGV36DQrXAfF0x6cOmZMGKwJNqQrvmFhh7mEn6w== +"@preserves/core@0.995": + version "0.995.0" + resolved "https://registry.yarnpkg.com/@preserves/core/-/core-0.995.0.tgz#d6badccd1fe56e45f23e01b4c8a33f421749e76b" + integrity sha512-0ICNcZ7HkBal1OJwoUuc1+KqoTQNJl2kYI3/nMtfrtNMem908unpydLo20k44Fgh/SRJekWaiRYSzKTcOo0+Tg== + "@preserves/schema@0.990.1": version "0.990.1" resolved "https://registry.yarnpkg.com/@preserves/schema/-/schema-0.990.1.tgz#233e25855194ce0f6ffaa9968d59e50b7dc8635a" From de282f539ac2aa4cc07cef43d24eef697db276ca Mon Sep 17 00:00:00 2001 From: Tony Garnock-Jones Date: Sat, 9 Mar 2024 23:12:27 +0100 Subject: [PATCH 27/92] Repair clean targets --- packages/browser-stdenv/package.json | 2 +- packages/core/package.json | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/packages/browser-stdenv/package.json b/packages/browser-stdenv/package.json index 9fb7a42..3a8ce6a 100644 --- a/packages/browser-stdenv/package.json +++ b/packages/browser-stdenv/package.json @@ -15,7 +15,7 @@ "author": "Tony Garnock-Jones ", "scripts": { "prepare": "./build-aggregate.sh", - "clean": "rm -rf index.js index.min.js", + "clean": "rm -rf index.js index.min.js *.js.map", "veryclean": "yarn run clean && rm -rf node_modules" }, "dependencies": { diff --git a/packages/core/package.json b/packages/core/package.json index c817faa..0fc5934 100644 --- a/packages/core/package.json +++ b/packages/core/package.json @@ -21,7 +21,7 @@ "rollup:watch": "../../node_modules/.bin/rollup -c -w", "test": "../../node_modules/.bin/jest", "cover": "../../node_modules/.bin/nyc --reporter=html ../../node_modules/.bin/jest", - "clean": "rm -rf lib dist", + "clean": "rm -rf lib dist ./src/gen", "veryclean": "yarn run clean && rm -rf node_modules" }, "main": "dist/syndicate.js", From 23dde452955d322b7581133fb6498135afebf948 Mon Sep 17 00:00:00 2001 From: Tony Garnock-Jones Date: Sat, 9 Mar 2024 23:15:06 +0100 Subject: [PATCH 28/92] Publish - @syndicate-lang/browser-stdenv@0.27.0 - @syndicate-lang/compiler@0.20.0 - @syndicate-lang/core@0.27.0 - @syndicate-lang/fs@0.28.0 - @syndicate-lang/html@0.28.0 - @syndicate-lang/html2@0.28.0 - @syndicate-lang/loader@0.27.0 - @syndicate-lang/service@0.28.0 - @syndicate-lang/syndicatec@0.28.0 - @syndicate-lang/timer@0.28.0 - @syndicate-lang/ts-plugin@0.28.0 - @syndicate-lang/tsc@0.28.0 - @syndicate-lang/ws-relay@0.29.0 --- packages/browser-stdenv/package.json | 10 +++++----- packages/compiler/package.json | 2 +- packages/core/package.json | 2 +- packages/fs/package.json | 10 +++++----- packages/html/package.json | 8 ++++---- packages/html2/package.json | 8 ++++---- packages/loader/package.json | 8 ++++---- packages/service/package.json | 8 ++++---- packages/syndicatec/package.json | 6 +++--- packages/timer/package.json | 8 ++++---- packages/ts-plugin/package.json | 6 +++--- packages/tsc/package.json | 6 +++--- packages/ws-relay/package.json | 8 ++++---- 13 files changed, 45 insertions(+), 45 deletions(-) diff --git a/packages/browser-stdenv/package.json b/packages/browser-stdenv/package.json index 3a8ce6a..7e48a08 100644 --- a/packages/browser-stdenv/package.json +++ b/packages/browser-stdenv/package.json @@ -1,6 +1,6 @@ { "name": "@syndicate-lang/browser-stdenv", - "version": "0.26.3", + "version": "0.27.0", "description": "Aggregated Syndicate and Preserves scripts for in-browser use", "homepage": "https://github.com/syndicate-lang/syndicate-js/tree/main/packages/browser-stdenv", "license": "GPL-3.0+", @@ -21,9 +21,9 @@ "dependencies": { "@preserves/core": "0.995.0", "@preserves/schema": "0.995.1", - "@syndicate-lang/compiler": "^0.19.0", - "@syndicate-lang/core": "^0.26.2", - "@syndicate-lang/html2": "^0.27.3", - "@syndicate-lang/ws-relay": "^0.28.2" + "@syndicate-lang/compiler": "^0.20.0", + "@syndicate-lang/core": "^0.27.0", + "@syndicate-lang/html2": "^0.28.0", + "@syndicate-lang/ws-relay": "^0.29.0" } } diff --git a/packages/compiler/package.json b/packages/compiler/package.json index 4476df5..00eaa87 100644 --- a/packages/compiler/package.json +++ b/packages/compiler/package.json @@ -1,6 +1,6 @@ { "name": "@syndicate-lang/compiler", - "version": "0.19.0", + "version": "0.20.0", "description": "Syndicate/JS compiler library", "homepage": "https://github.com/syndicate-lang/syndicate-js/tree/main/packages/compiler", "license": "GPL-3.0+", diff --git a/packages/core/package.json b/packages/core/package.json index 0fc5934..41318b4 100644 --- a/packages/core/package.json +++ b/packages/core/package.json @@ -1,6 +1,6 @@ { "name": "@syndicate-lang/core", - "version": "0.26.2", + "version": "0.27.0", "description": "Syndicate/JS for browser and node.js", "homepage": "https://github.com/syndicate-lang/syndicate-js/tree/main/packages/core", "license": "GPL-3.0+", diff --git a/packages/fs/package.json b/packages/fs/package.json index 17b86a6..b5ce7e4 100644 --- a/packages/fs/package.json +++ b/packages/fs/package.json @@ -1,6 +1,6 @@ { "name": "@syndicate-lang/fs", - "version": "0.27.2", + "version": "0.28.0", "description": "Reflect contents of a portion of the file system as assertions", "homepage": "https://github.com/syndicate-lang/syndicate-js/tree/main/packages/fs", "license": "GPL-3.0+", @@ -30,13 +30,13 @@ "@preserves/core": "0.995.0" }, "dependencies": { - "@syndicate-lang/core": "^0.26.2", - "@syndicate-lang/service": "^0.27.2", + "@syndicate-lang/core": "^0.27.0", + "@syndicate-lang/service": "^0.28.0", "chokidar": "^3.5.3" }, "devDependencies": { "@preserves/schema-cli": "0.995.1", - "@syndicate-lang/ts-plugin": "^0.27.2", - "@syndicate-lang/tsc": "^0.27.2" + "@syndicate-lang/ts-plugin": "^0.28.0", + "@syndicate-lang/tsc": "^0.28.0" } } diff --git a/packages/html/package.json b/packages/html/package.json index 3d33a06..a3e9cd9 100644 --- a/packages/html/package.json +++ b/packages/html/package.json @@ -1,6 +1,6 @@ { "name": "@syndicate-lang/html", - "version": "0.27.2", + "version": "0.28.0", "description": "DOM/HTML UI for Syndicate/JS", "homepage": "https://github.com/syndicate-lang/syndicate-js/tree/main/packages/html", "license": "GPL-3.0+", @@ -25,10 +25,10 @@ "veryclean": "yarn run clean && rm -rf node_modules" }, "dependencies": { - "@syndicate-lang/core": "^0.26.2" + "@syndicate-lang/core": "^0.27.0" }, "devDependencies": { - "@syndicate-lang/ts-plugin": "^0.27.2", - "@syndicate-lang/tsc": "^0.27.2" + "@syndicate-lang/ts-plugin": "^0.28.0", + "@syndicate-lang/tsc": "^0.28.0" } } diff --git a/packages/html2/package.json b/packages/html2/package.json index 5fa046c..d1ec3eb 100644 --- a/packages/html2/package.json +++ b/packages/html2/package.json @@ -1,6 +1,6 @@ { "name": "@syndicate-lang/html2", - "version": "0.27.3", + "version": "0.28.0", "description": "DOM/HTML UI for Syndicate/JS", "homepage": "https://github.com/syndicate-lang/syndicate-js/tree/main/packages/html2", "license": "GPL-3.0+", @@ -25,10 +25,10 @@ "veryclean": "yarn run clean && rm -rf node_modules" }, "dependencies": { - "@syndicate-lang/core": "^0.26.2" + "@syndicate-lang/core": "^0.27.0" }, "devDependencies": { - "@syndicate-lang/ts-plugin": "^0.27.2", - "@syndicate-lang/tsc": "^0.27.2" + "@syndicate-lang/ts-plugin": "^0.28.0", + "@syndicate-lang/tsc": "^0.28.0" } } diff --git a/packages/loader/package.json b/packages/loader/package.json index 5fcf4a8..5c91863 100644 --- a/packages/loader/package.json +++ b/packages/loader/package.json @@ -1,6 +1,6 @@ { "name": "@syndicate-lang/loader", - "version": "0.26.2", + "version": "0.27.0", "description": "Syndicate/JS node.js loader hook", "homepage": "https://github.com/syndicate-lang/syndicate-js/tree/main/packages/loader", "license": "GPL-3.0+", @@ -22,8 +22,8 @@ "types": "lib/index.d.ts", "author": "Tony Garnock-Jones ", "dependencies": { - "@syndicate-lang/compiler": "^0.19.0", - "@syndicate-lang/core": "^0.26.2", - "@syndicate-lang/service": "^0.27.2" + "@syndicate-lang/compiler": "^0.20.0", + "@syndicate-lang/core": "^0.27.0", + "@syndicate-lang/service": "^0.28.0" } } diff --git a/packages/service/package.json b/packages/service/package.json index c42253d..37971e2 100644 --- a/packages/service/package.json +++ b/packages/service/package.json @@ -1,6 +1,6 @@ { "name": "@syndicate-lang/service", - "version": "0.27.2", + "version": "0.28.0", "description": "Run a node.js program as a service within syndicate-server", "homepage": "https://github.com/syndicate-lang/syndicate-js/tree/main/packages/service", "license": "GPL-3.0+", @@ -22,10 +22,10 @@ "veryclean": "yarn run clean && rm -rf node_modules" }, "dependencies": { - "@syndicate-lang/core": "^0.26.2" + "@syndicate-lang/core": "^0.27.0" }, "devDependencies": { - "@syndicate-lang/ts-plugin": "^0.27.2", - "@syndicate-lang/tsc": "^0.27.2" + "@syndicate-lang/ts-plugin": "^0.28.0", + "@syndicate-lang/tsc": "^0.28.0" } } diff --git a/packages/syndicatec/package.json b/packages/syndicatec/package.json index 6a16ab9..43be5ad 100644 --- a/packages/syndicatec/package.json +++ b/packages/syndicatec/package.json @@ -1,6 +1,6 @@ { "name": "@syndicate-lang/syndicatec", - "version": "0.27.2", + "version": "0.28.0", "description": "Syndicate/JS compiler command-line tool", "homepage": "https://github.com/syndicate-lang/syndicate-js/tree/main/packages/syndicatec", "license": "GPL-3.0+", @@ -20,8 +20,8 @@ }, "author": "Tony Garnock-Jones ", "dependencies": { - "@syndicate-lang/compiler": "^0.19.0", - "@syndicate-lang/core": "^0.26.2", + "@syndicate-lang/compiler": "^0.20.0", + "@syndicate-lang/core": "^0.27.0", "glob": "^7.1.6", "yargs": "^16.2.0" }, diff --git a/packages/timer/package.json b/packages/timer/package.json index 6181e16..4f81f74 100644 --- a/packages/timer/package.json +++ b/packages/timer/package.json @@ -1,6 +1,6 @@ { "name": "@syndicate-lang/timer", - "version": "0.27.2", + "version": "0.28.0", "description": "Time and timer driver for Syndicate", "homepage": "https://github.com/syndicate-lang/syndicate-js/tree/main/packages/timer", "license": "GPL-3.0+", @@ -25,10 +25,10 @@ "veryclean": "yarn run clean && rm -rf node_modules" }, "dependencies": { - "@syndicate-lang/core": "^0.26.2" + "@syndicate-lang/core": "^0.27.0" }, "devDependencies": { - "@syndicate-lang/ts-plugin": "^0.27.2", - "@syndicate-lang/tsc": "^0.27.2" + "@syndicate-lang/ts-plugin": "^0.28.0", + "@syndicate-lang/tsc": "^0.28.0" } } diff --git a/packages/ts-plugin/package.json b/packages/ts-plugin/package.json index 3fbb0b7..64dad77 100644 --- a/packages/ts-plugin/package.json +++ b/packages/ts-plugin/package.json @@ -1,6 +1,6 @@ { "name": "@syndicate-lang/ts-plugin", - "version": "0.27.2", + "version": "0.28.0", "description": "Syndicate/JS TypeScript tsserver plugin", "homepage": "https://github.com/syndicate-lang/syndicate-js/tree/main/packages/ts-plugin", "license": "GPL-3.0+", @@ -22,8 +22,8 @@ "types": "lib/index.d.ts", "author": "Tony Garnock-Jones ", "dependencies": { - "@syndicate-lang/compiler": "^0.19.0", - "@syndicate-lang/core": "^0.26.2" + "@syndicate-lang/compiler": "^0.20.0", + "@syndicate-lang/core": "^0.27.0" }, "devDependencies": { "typescript": "^4.9" diff --git a/packages/tsc/package.json b/packages/tsc/package.json index ba1a618..bcc1da1 100644 --- a/packages/tsc/package.json +++ b/packages/tsc/package.json @@ -1,6 +1,6 @@ { "name": "@syndicate-lang/tsc", - "version": "0.27.2", + "version": "0.28.0", "description": "Syndicate for TypeScript compiler command-line tool", "homepage": "https://github.com/syndicate-lang/syndicate-js/tree/main/packages/tsc", "license": "GPL-3.0+", @@ -20,8 +20,8 @@ }, "author": "Tony Garnock-Jones ", "dependencies": { - "@syndicate-lang/compiler": "^0.19.0", - "@syndicate-lang/core": "^0.26.2", + "@syndicate-lang/compiler": "^0.20.0", + "@syndicate-lang/core": "^0.27.0", "glob": "^7.1.6", "yargs": "^16.2.0" }, diff --git a/packages/ws-relay/package.json b/packages/ws-relay/package.json index d29ee0d..e95fe81 100644 --- a/packages/ws-relay/package.json +++ b/packages/ws-relay/package.json @@ -1,6 +1,6 @@ { "name": "@syndicate-lang/ws-relay", - "version": "0.28.2", + "version": "0.29.0", "description": "Browser WebSocket relay to a Syndicate server", "homepage": "https://github.com/syndicate-lang/syndicate-js/tree/main/packages/ws-relay", "license": "GPL-3.0+", @@ -28,11 +28,11 @@ "@preserves/core": "0.995.0" }, "dependencies": { - "@syndicate-lang/core": "^0.26.2", + "@syndicate-lang/core": "^0.27.0", "salty-crypto": "0.3" }, "devDependencies": { - "@syndicate-lang/ts-plugin": "^0.27.2", - "@syndicate-lang/tsc": "^0.27.2" + "@syndicate-lang/ts-plugin": "^0.28.0", + "@syndicate-lang/tsc": "^0.28.0" } } From 881b92b8aae2365e5685b9319f39cf64b75848d4 Mon Sep 17 00:00:00 2001 From: Tony Garnock-Jones Date: Sat, 9 Mar 2024 23:24:38 +0100 Subject: [PATCH 29/92] Bump deps of flappy-bird example --- .../yarn.lock | 72 ++++++++----------- 1 file changed, 29 insertions(+), 43 deletions(-) diff --git a/examples/syndicate-html-example-flappy-bird/yarn.lock b/examples/syndicate-html-example-flappy-bird/yarn.lock index e2a1c9e..d45af29 100644 --- a/examples/syndicate-html-example-flappy-bird/yarn.lock +++ b/examples/syndicate-html-example-flappy-bird/yarn.lock @@ -2,23 +2,11 @@ # yarn lockfile v1 -"@preserves/core@0.990", "@preserves/core@^0.990.0": - version "0.990.0" - resolved "https://registry.yarnpkg.com/@preserves/core/-/core-0.990.0.tgz#c57c1c3d5159fc17477a4205d5a94a78fbf5b1aa" - integrity sha512-Mx013USv9JU1SrtMxaJISETBy2LZ402xH8ZnQI4JzG6W27ZwGV36DQrXAfF0x6cOmZMGKwJNqQrvmFhh7mEn6w== - "@preserves/core@0.995": version "0.995.0" resolved "https://registry.yarnpkg.com/@preserves/core/-/core-0.995.0.tgz#d6badccd1fe56e45f23e01b4c8a33f421749e76b" integrity sha512-0ICNcZ7HkBal1OJwoUuc1+KqoTQNJl2kYI3/nMtfrtNMem908unpydLo20k44Fgh/SRJekWaiRYSzKTcOo0+Tg== -"@preserves/schema@0.990.1": - version "0.990.1" - resolved "https://registry.yarnpkg.com/@preserves/schema/-/schema-0.990.1.tgz#233e25855194ce0f6ffaa9968d59e50b7dc8635a" - integrity sha512-FdvH0peM7U+Yag8FUZ2CYqDTEWjX88+HWwAfVfndtGAwEOTyjqvAQib0aI9lRPPXHodtaNR9/mLFmZBqve80Ew== - dependencies: - "@preserves/core" "^0.990.0" - "@rollup/pluginutils@^3.0.9": version "3.1.0" resolved "https://registry.yarnpkg.com/@rollup/pluginutils/-/pluginutils-3.1.0.tgz#706b4524ee6dc8b103b3c995533e5ad680c02b9b" @@ -28,49 +16,47 @@ estree-walker "^1.0.1" picomatch "^2.2.2" -"@syndicate-lang/compiler@^0.13.2": - version "0.13.2" - resolved "https://registry.yarnpkg.com/@syndicate-lang/compiler/-/compiler-0.13.2.tgz#e66de9f5828efb88ebe62266d014e13620961996" - integrity sha512-GQa7GVkerWxoVqY3NtRZXS8aLqIsVfdA8KvgNSDb8fTNV8TKGLDxQRurtcCiuEKG9mtfnDTpk8i28HbijKw6fA== +"@syndicate-lang/compiler@^0.20.0": + version "0.20.0" + resolved "https://registry.yarnpkg.com/@syndicate-lang/compiler/-/compiler-0.20.0.tgz#cb0f94a272413c0b982f1009409696c9fdf6f9a9" + integrity sha512-tOZCi/AHD0jbXlIwFEmFmUPRC2rsLNNhwH8BvenwiAAni5SX7chxGYEOnLtCsx0/6pPUbNEKsisgv6eJOprCEA== -"@syndicate-lang/core@*", "@syndicate-lang/core@^0.18.1": - version "0.18.1" - resolved "https://registry.yarnpkg.com/@syndicate-lang/core/-/core-0.18.1.tgz#5cd2931acdab76150c0406428521e4746e62f18b" - integrity sha512-90d0YJCZJVrkxLe+fs5Z+vgigU3wux8VOnPje2E8Q/MXXecjHcBCQWQfcdwUxBdfPSFq9KdQS7g7VFqhu3X7mA== +"@syndicate-lang/core@*", "@syndicate-lang/core@^0.27.0": + version "0.27.0" + resolved "https://registry.yarnpkg.com/@syndicate-lang/core/-/core-0.27.0.tgz#e62a85925663cc478be7ef8a5264c004df879872" + integrity sha512-1YwT21NEO2ShAP3GXtiUcvok99YISGDR7oq2eNie+Q3F4gKGWD11PaJfgQyK15Fd23wdsoiejb6OtJOPvolfHA== dependencies: - "@preserves/core" "0.990" - "@preserves/schema" "0.990.1" salty-crypto "0.3.1" "@syndicate-lang/html@*": - version "0.18.2" - resolved "https://registry.yarnpkg.com/@syndicate-lang/html/-/html-0.18.2.tgz#276f70a209d90cf938eb27ebdddadfb1c299f234" - integrity sha512-VTMqrXLFvUQH/TWxTG+YZjUqymoNprde1bhJ2JQ1xyqlHAB82tYXZRJA+/qn93mFs6jCEN9vzvXyNbmJuyYH7Q== + version "0.28.0" + resolved "https://registry.yarnpkg.com/@syndicate-lang/html/-/html-0.28.0.tgz#6071997edfd03fe42d28f300394291549a622011" + integrity sha512-yhVwbArxu58wdMUtoQEzVpNc63zRed1YBnXAFND8Q5jfBp2Maefr/FWyRg1VCTOb8yltxBvENwmAL3xNUrqYtg== dependencies: - "@syndicate-lang/core" "^0.18.1" + "@syndicate-lang/core" "^0.27.0" "@syndicate-lang/timer@*": - version "0.18.1" - resolved "https://registry.yarnpkg.com/@syndicate-lang/timer/-/timer-0.18.1.tgz#64f1364eaea77b9ec5b77d41a464baeadf32031b" - integrity sha512-49acCxOpOR4LgW9ENQ32+A/wF+fQgvAwhsBS4phzk3DB/Yj9opFZW5MOlMP4R9+iyoN1Nocwq0OO89QGnqg9Wg== + version "0.28.0" + resolved "https://registry.yarnpkg.com/@syndicate-lang/timer/-/timer-0.28.0.tgz#396499a37221d2b9d0a3c6fcb2bb751327d5f08c" + integrity sha512-nJASotUruo2aO7zj7K6oa6dKlCSmBQr57E3fcifaoOOnzVcKiTsTY8irtDP0gYSTSyePh0sdm/y3pH6vErnBwQ== dependencies: - "@syndicate-lang/core" "^0.18.1" + "@syndicate-lang/core" "^0.27.0" "@syndicate-lang/ts-plugin@*": - version "0.18.1" - resolved "https://registry.yarnpkg.com/@syndicate-lang/ts-plugin/-/ts-plugin-0.18.1.tgz#0567774f0d7cef6b498cf39bda6717bc334f7213" - integrity sha512-wQJhQxGLjf3cW2w9RUGToZofsd3iG6GQPTHtRYnAYjyiCdxSb7fhZf7TNRkRv3m20Q1XIUSTiLg3ChU+1I9eEA== + version "0.28.0" + resolved "https://registry.yarnpkg.com/@syndicate-lang/ts-plugin/-/ts-plugin-0.28.0.tgz#c22cc66b11bca74228f2c5ed10049cf9e347025f" + integrity sha512-ieIlKV8ty2caIy1WlZpfydDYFEYAdHVm+cJxBnVvTRYmQkPjqQa7/2vOTdTHeTXEGabfdtQHwj+RCwCLhRa54g== dependencies: - "@syndicate-lang/compiler" "^0.13.2" - "@syndicate-lang/core" "^0.18.1" + "@syndicate-lang/compiler" "^0.20.0" + "@syndicate-lang/core" "^0.27.0" "@syndicate-lang/tsc@*": - version "0.18.1" - resolved "https://registry.yarnpkg.com/@syndicate-lang/tsc/-/tsc-0.18.1.tgz#e56522052f792b8dad0bd21c6181b7c801ea893b" - integrity sha512-arNOK+0NnjCdg6lisOOBD4piMBAxV3OR5frDAQ+DI+44gruvY20Tzen2SFMre7vvr+xVkyQwiHH9VVrgtIQRkw== + version "0.28.0" + resolved "https://registry.yarnpkg.com/@syndicate-lang/tsc/-/tsc-0.28.0.tgz#17a7fbcb1f76016c9391c269c134edc1ced49747" + integrity sha512-+4rfCvodZ1Lbc6MDjL33JMUQNpffItd5/Ab9toww2DDXlsuLQhPYqwBY3PQfJ5KOneV4uUBPFxfc4LoRNqKGEQ== dependencies: - "@syndicate-lang/compiler" "^0.13.2" - "@syndicate-lang/core" "^0.18.1" + "@syndicate-lang/compiler" "^0.20.0" + "@syndicate-lang/core" "^0.27.0" glob "^7.1.6" yargs "^16.2.0" @@ -146,9 +132,9 @@ emoji-regex@^8.0.0: integrity sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A== escalade@^3.1.1: - version "3.1.1" - resolved "https://registry.yarnpkg.com/escalade/-/escalade-3.1.1.tgz#d8cfdc7000965c5a0174b4a82eaa5c0552742e40" - integrity sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw== + version "3.1.2" + resolved "https://registry.yarnpkg.com/escalade/-/escalade-3.1.2.tgz#54076e9ab29ea5bf3d8f1ed62acffbb88272df27" + integrity sha512-ErCHMCae19vR8vQGe50xIsVomy19rg6gFu3+r3jkEO46suLMWBksvVyoGgQV+jOfl84ZSOSlmv6Gxa89PmTGmA== estree-walker@^1.0.1: version "1.0.1" From 5773918b714c9d61268332784c7d10ac97bc9404 Mon Sep 17 00:00:00 2001 From: Tony Garnock-Jones Date: Sat, 9 Mar 2024 23:26:36 +0100 Subject: [PATCH 30/92] Bump deps of syndicate-html-example-table --- .../syndicate-html-example-table/index.html | 1 + .../syndicate-html-example-table/package.json | 1 + .../syndicate-html-example-table/yarn.lock | 67 ++++++++----------- 3 files changed, 31 insertions(+), 38 deletions(-) diff --git a/examples/syndicate-html-example-table/index.html b/examples/syndicate-html-example-table/index.html index 413b66a..b040f31 100644 --- a/examples/syndicate-html-example-table/index.html +++ b/examples/syndicate-html-example-table/index.html @@ -3,6 +3,7 @@ Syndicate: Table Example + diff --git a/examples/syndicate-html-example-table/package.json b/examples/syndicate-html-example-table/package.json index 6f19e73..b815507 100644 --- a/examples/syndicate-html-example-table/package.json +++ b/examples/syndicate-html-example-table/package.json @@ -14,6 +14,7 @@ "author": "Tony Garnock-Jones ", "license": "GPL-3.0+", "dependencies": { + "@preserves/core": "0.995", "@syndicate-lang/core": "*", "@syndicate-lang/html": "*" }, diff --git a/examples/syndicate-html-example-table/yarn.lock b/examples/syndicate-html-example-table/yarn.lock index e49b1ad..97ed600 100644 --- a/examples/syndicate-html-example-table/yarn.lock +++ b/examples/syndicate-html-example-table/yarn.lock @@ -2,17 +2,10 @@ # yarn lockfile v1 -"@preserves/core@0.990", "@preserves/core@^0.990.0": - version "0.990.0" - resolved "https://registry.yarnpkg.com/@preserves/core/-/core-0.990.0.tgz#c57c1c3d5159fc17477a4205d5a94a78fbf5b1aa" - integrity sha512-Mx013USv9JU1SrtMxaJISETBy2LZ402xH8ZnQI4JzG6W27ZwGV36DQrXAfF0x6cOmZMGKwJNqQrvmFhh7mEn6w== - -"@preserves/schema@0.990.1": - version "0.990.1" - resolved "https://registry.yarnpkg.com/@preserves/schema/-/schema-0.990.1.tgz#233e25855194ce0f6ffaa9968d59e50b7dc8635a" - integrity sha512-FdvH0peM7U+Yag8FUZ2CYqDTEWjX88+HWwAfVfndtGAwEOTyjqvAQib0aI9lRPPXHodtaNR9/mLFmZBqve80Ew== - dependencies: - "@preserves/core" "^0.990.0" +"@preserves/core@0.995": + version "0.995.0" + resolved "https://registry.yarnpkg.com/@preserves/core/-/core-0.995.0.tgz#d6badccd1fe56e45f23e01b4c8a33f421749e76b" + integrity sha512-0ICNcZ7HkBal1OJwoUuc1+KqoTQNJl2kYI3/nMtfrtNMem908unpydLo20k44Fgh/SRJekWaiRYSzKTcOo0+Tg== "@rollup/pluginutils@^3.0.9": version "3.1.0" @@ -23,42 +16,40 @@ estree-walker "^1.0.1" picomatch "^2.2.2" -"@syndicate-lang/compiler@^0.13.2": - version "0.13.2" - resolved "https://registry.yarnpkg.com/@syndicate-lang/compiler/-/compiler-0.13.2.tgz#e66de9f5828efb88ebe62266d014e13620961996" - integrity sha512-GQa7GVkerWxoVqY3NtRZXS8aLqIsVfdA8KvgNSDb8fTNV8TKGLDxQRurtcCiuEKG9mtfnDTpk8i28HbijKw6fA== +"@syndicate-lang/compiler@^0.20.0": + version "0.20.0" + resolved "https://registry.yarnpkg.com/@syndicate-lang/compiler/-/compiler-0.20.0.tgz#cb0f94a272413c0b982f1009409696c9fdf6f9a9" + integrity sha512-tOZCi/AHD0jbXlIwFEmFmUPRC2rsLNNhwH8BvenwiAAni5SX7chxGYEOnLtCsx0/6pPUbNEKsisgv6eJOprCEA== -"@syndicate-lang/core@*", "@syndicate-lang/core@^0.18.1": - version "0.18.1" - resolved "https://registry.yarnpkg.com/@syndicate-lang/core/-/core-0.18.1.tgz#5cd2931acdab76150c0406428521e4746e62f18b" - integrity sha512-90d0YJCZJVrkxLe+fs5Z+vgigU3wux8VOnPje2E8Q/MXXecjHcBCQWQfcdwUxBdfPSFq9KdQS7g7VFqhu3X7mA== +"@syndicate-lang/core@*", "@syndicate-lang/core@^0.27.0": + version "0.27.0" + resolved "https://registry.yarnpkg.com/@syndicate-lang/core/-/core-0.27.0.tgz#e62a85925663cc478be7ef8a5264c004df879872" + integrity sha512-1YwT21NEO2ShAP3GXtiUcvok99YISGDR7oq2eNie+Q3F4gKGWD11PaJfgQyK15Fd23wdsoiejb6OtJOPvolfHA== dependencies: - "@preserves/core" "0.990" - "@preserves/schema" "0.990.1" salty-crypto "0.3.1" "@syndicate-lang/html@*": - version "0.18.2" - resolved "https://registry.yarnpkg.com/@syndicate-lang/html/-/html-0.18.2.tgz#276f70a209d90cf938eb27ebdddadfb1c299f234" - integrity sha512-VTMqrXLFvUQH/TWxTG+YZjUqymoNprde1bhJ2JQ1xyqlHAB82tYXZRJA+/qn93mFs6jCEN9vzvXyNbmJuyYH7Q== + version "0.28.0" + resolved "https://registry.yarnpkg.com/@syndicate-lang/html/-/html-0.28.0.tgz#6071997edfd03fe42d28f300394291549a622011" + integrity sha512-yhVwbArxu58wdMUtoQEzVpNc63zRed1YBnXAFND8Q5jfBp2Maefr/FWyRg1VCTOb8yltxBvENwmAL3xNUrqYtg== dependencies: - "@syndicate-lang/core" "^0.18.1" + "@syndicate-lang/core" "^0.27.0" "@syndicate-lang/ts-plugin@*": - version "0.18.1" - resolved "https://registry.yarnpkg.com/@syndicate-lang/ts-plugin/-/ts-plugin-0.18.1.tgz#0567774f0d7cef6b498cf39bda6717bc334f7213" - integrity sha512-wQJhQxGLjf3cW2w9RUGToZofsd3iG6GQPTHtRYnAYjyiCdxSb7fhZf7TNRkRv3m20Q1XIUSTiLg3ChU+1I9eEA== + version "0.28.0" + resolved "https://registry.yarnpkg.com/@syndicate-lang/ts-plugin/-/ts-plugin-0.28.0.tgz#c22cc66b11bca74228f2c5ed10049cf9e347025f" + integrity sha512-ieIlKV8ty2caIy1WlZpfydDYFEYAdHVm+cJxBnVvTRYmQkPjqQa7/2vOTdTHeTXEGabfdtQHwj+RCwCLhRa54g== dependencies: - "@syndicate-lang/compiler" "^0.13.2" - "@syndicate-lang/core" "^0.18.1" + "@syndicate-lang/compiler" "^0.20.0" + "@syndicate-lang/core" "^0.27.0" "@syndicate-lang/tsc@*": - version "0.18.1" - resolved "https://registry.yarnpkg.com/@syndicate-lang/tsc/-/tsc-0.18.1.tgz#e56522052f792b8dad0bd21c6181b7c801ea893b" - integrity sha512-arNOK+0NnjCdg6lisOOBD4piMBAxV3OR5frDAQ+DI+44gruvY20Tzen2SFMre7vvr+xVkyQwiHH9VVrgtIQRkw== + version "0.28.0" + resolved "https://registry.yarnpkg.com/@syndicate-lang/tsc/-/tsc-0.28.0.tgz#17a7fbcb1f76016c9391c269c134edc1ced49747" + integrity sha512-+4rfCvodZ1Lbc6MDjL33JMUQNpffItd5/Ab9toww2DDXlsuLQhPYqwBY3PQfJ5KOneV4uUBPFxfc4LoRNqKGEQ== dependencies: - "@syndicate-lang/compiler" "^0.13.2" - "@syndicate-lang/core" "^0.18.1" + "@syndicate-lang/compiler" "^0.20.0" + "@syndicate-lang/core" "^0.27.0" glob "^7.1.6" yargs "^16.2.0" @@ -134,9 +125,9 @@ emoji-regex@^8.0.0: integrity sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A== escalade@^3.1.1: - version "3.1.1" - resolved "https://registry.yarnpkg.com/escalade/-/escalade-3.1.1.tgz#d8cfdc7000965c5a0174b4a82eaa5c0552742e40" - integrity sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw== + version "3.1.2" + resolved "https://registry.yarnpkg.com/escalade/-/escalade-3.1.2.tgz#54076e9ab29ea5bf3d8f1ed62acffbb88272df27" + integrity sha512-ErCHMCae19vR8vQGe50xIsVomy19rg6gFu3+r3jkEO46suLMWBksvVyoGgQV+jOfl84ZSOSlmv6Gxa89PmTGmA== estree-walker@^1.0.1: version "1.0.1" From 4a49c0e6e8bc67eee4f9e52cedbffa0094cd318e Mon Sep 17 00:00:00 2001 From: Tony Garnock-Jones Date: Sat, 9 Mar 2024 23:31:12 +0100 Subject: [PATCH 31/92] Bump deps of example-simple-chat --- examples/example-simple-chat/package.json | 4 +- examples/example-simple-chat/yarn.lock | 97 +++++++++++------------ 2 files changed, 49 insertions(+), 52 deletions(-) diff --git a/examples/example-simple-chat/package.json b/examples/example-simple-chat/package.json index 8cdd79c..c9554bb 100644 --- a/examples/example-simple-chat/package.json +++ b/examples/example-simple-chat/package.json @@ -16,13 +16,13 @@ "author": "Tony Garnock-Jones ", "license": "GPL-3.0+", "dependencies": { - "@preserves/core": "0.992.4", + "@preserves/core": "0.995", "@syndicate-lang/core": "*", "@syndicate-lang/html": "*", "@syndicate-lang/ws-relay": "*" }, "devDependencies": { - "@preserves/schema-cli": "0.992.5", + "@preserves/schema-cli": "0.995", "@syndicate-lang/ts-plugin": "*", "@syndicate-lang/tsc": "*", "rollup": "^2.60", diff --git a/examples/example-simple-chat/yarn.lock b/examples/example-simple-chat/yarn.lock index 67fc7c5..69539f9 100644 --- a/examples/example-simple-chat/yarn.lock +++ b/examples/example-simple-chat/yarn.lock @@ -2,30 +2,30 @@ # yarn lockfile v1 -"@preserves/core@0.992", "@preserves/core@^0.992.2": - version "0.992.2" - resolved "https://registry.yarnpkg.com/@preserves/core/-/core-0.992.2.tgz#b3acc7badd25ccccbf8e034bb641c6cfad987c41" - integrity sha512-aibJ8c9mLcCf3MhXeLWv0hevfkHgu3pJmBDzhN9AGXMIw0/fO3uEEnLM1oPaFIPWnQG4WybiXTUh2wD1CoxABg== +"@preserves/core@0.995", "@preserves/core@^0.995.0": + version "0.995.0" + resolved "https://registry.yarnpkg.com/@preserves/core/-/core-0.995.0.tgz#d6badccd1fe56e45f23e01b4c8a33f421749e76b" + integrity sha512-0ICNcZ7HkBal1OJwoUuc1+KqoTQNJl2kYI3/nMtfrtNMem908unpydLo20k44Fgh/SRJekWaiRYSzKTcOo0+Tg== -"@preserves/schema-cli@0.992": - version "0.992.2" - resolved "https://registry.yarnpkg.com/@preserves/schema-cli/-/schema-cli-0.992.2.tgz#53defa05b0bd34cf5032255d761076797254ce8f" - integrity sha512-ICJ0fqj3haJZosU7h8APm3GkoUaZs+BHKfj80BD8wuBf4iSLa4GAYASYThLZT/tlxU2iK1j4NghrG6/tCIj99w== +"@preserves/schema-cli@0.995": + version "0.995.1" + resolved "https://registry.yarnpkg.com/@preserves/schema-cli/-/schema-cli-0.995.1.tgz#056027c76c54ef3395c787a58def12b17dcbd79c" + integrity sha512-9LSb5P+00P1ocx/saXy5d31bRastSJT7VQmrAltMgcx3BI5f/ChVVhBdn8P4+tRLUo02pTbGy4wBceHsyqCSZQ== dependencies: - "@preserves/core" "^0.992.2" - "@preserves/schema" "^0.992.2" + "@preserves/core" "^0.995.0" + "@preserves/schema" "^0.995.1" chalk "^4.1" chokidar "^3.5" commander "^7.2" glob "^7.1" minimatch "^3.0" -"@preserves/schema@0.992", "@preserves/schema@^0.992.2": - version "0.992.2" - resolved "https://registry.yarnpkg.com/@preserves/schema/-/schema-0.992.2.tgz#975598b166500adc79f0d4e0cf2ae6dea3c2c111" - integrity sha512-I1zM9EWY0URw2zuRHLyROqVA9uqGhzQjuCpnTC8MeJToPt+xwVCXGl/NJYKhgofB14ZAgKT98h6YrLDR3yR6ug== +"@preserves/schema@^0.995.1": + version "0.995.1" + resolved "https://registry.yarnpkg.com/@preserves/schema/-/schema-0.995.1.tgz#e218a4257171f1c3c6e7a2f4d7e1b88ce3ae998e" + integrity sha512-oh3SHMVOhqwFFZrzxnrAacBdUpdXtOyAoGyEOm9x0xehQ5NpYEnz/DdjXmW6iKeQ7Igoa1rSyibWbYfHV6fzvg== dependencies: - "@preserves/core" "^0.992.2" + "@preserves/core" "^0.995.0" "@rollup/pluginutils@^3.0.9": version "3.1.0" @@ -36,52 +36,49 @@ estree-walker "^1.0.1" picomatch "^2.2.2" -"@syndicate-lang/compiler@^0.13.2": - version "0.13.2" - resolved "https://registry.yarnpkg.com/@syndicate-lang/compiler/-/compiler-0.13.2.tgz#e66de9f5828efb88ebe62266d014e13620961996" - integrity sha512-GQa7GVkerWxoVqY3NtRZXS8aLqIsVfdA8KvgNSDb8fTNV8TKGLDxQRurtcCiuEKG9mtfnDTpk8i28HbijKw6fA== +"@syndicate-lang/compiler@^0.20.0": + version "0.20.0" + resolved "https://registry.yarnpkg.com/@syndicate-lang/compiler/-/compiler-0.20.0.tgz#cb0f94a272413c0b982f1009409696c9fdf6f9a9" + integrity sha512-tOZCi/AHD0jbXlIwFEmFmUPRC2rsLNNhwH8BvenwiAAni5SX7chxGYEOnLtCsx0/6pPUbNEKsisgv6eJOprCEA== -"@syndicate-lang/core@*", "@syndicate-lang/core@^0.19.1": - version "0.19.1" - resolved "https://registry.yarnpkg.com/@syndicate-lang/core/-/core-0.19.1.tgz#506e4e6e9f6a0b7bd0b5f6a61ad6e98c3a9ccae6" - integrity sha512-2CMtEhyb8cg/pcJWgEdsaPtb6TJS0EbgeHcvCRyEFm3gdENxrNHVpxTVznSNAJnZosMu1KbK735kkviH9etkjw== +"@syndicate-lang/core@*", "@syndicate-lang/core@^0.27.0": + version "0.27.0" + resolved "https://registry.yarnpkg.com/@syndicate-lang/core/-/core-0.27.0.tgz#e62a85925663cc478be7ef8a5264c004df879872" + integrity sha512-1YwT21NEO2ShAP3GXtiUcvok99YISGDR7oq2eNie+Q3F4gKGWD11PaJfgQyK15Fd23wdsoiejb6OtJOPvolfHA== dependencies: - "@preserves/core" "0.992" - "@preserves/schema" "0.992" salty-crypto "0.3.1" "@syndicate-lang/html@*": - version "0.19.1" - resolved "https://registry.yarnpkg.com/@syndicate-lang/html/-/html-0.19.1.tgz#21611a6c5718f01c00ac3b18e191548a6dd16538" - integrity sha512-qr4T065GIuMAI3VKAsYmUWcDyqTq/yGQndrG/Ub+L1P2ivU3AbU/0cuFUQVgFIZmoW/iqG9BQzjIUV8xiOsArw== + version "0.28.0" + resolved "https://registry.yarnpkg.com/@syndicate-lang/html/-/html-0.28.0.tgz#6071997edfd03fe42d28f300394291549a622011" + integrity sha512-yhVwbArxu58wdMUtoQEzVpNc63zRed1YBnXAFND8Q5jfBp2Maefr/FWyRg1VCTOb8yltxBvENwmAL3xNUrqYtg== dependencies: - "@syndicate-lang/core" "^0.19.1" + "@syndicate-lang/core" "^0.27.0" "@syndicate-lang/ts-plugin@*": - version "0.19.1" - resolved "https://registry.yarnpkg.com/@syndicate-lang/ts-plugin/-/ts-plugin-0.19.1.tgz#c7ecf4e836314e16d0849a539ab4b22f7d4c10aa" - integrity sha512-o7niu1QnhAONisil83jVnWK3ipwz8obB0iruJ1++W3nXEM2nW7yGPuJNyLwkk1cFuPzfknm/DFdf6WKz9CsJGw== + version "0.28.0" + resolved "https://registry.yarnpkg.com/@syndicate-lang/ts-plugin/-/ts-plugin-0.28.0.tgz#c22cc66b11bca74228f2c5ed10049cf9e347025f" + integrity sha512-ieIlKV8ty2caIy1WlZpfydDYFEYAdHVm+cJxBnVvTRYmQkPjqQa7/2vOTdTHeTXEGabfdtQHwj+RCwCLhRa54g== dependencies: - "@syndicate-lang/compiler" "^0.13.2" - "@syndicate-lang/core" "^0.19.1" + "@syndicate-lang/compiler" "^0.20.0" + "@syndicate-lang/core" "^0.27.0" "@syndicate-lang/tsc@*": - version "0.19.1" - resolved "https://registry.yarnpkg.com/@syndicate-lang/tsc/-/tsc-0.19.1.tgz#25d48aa1a29e51c983d1ab6d8ab184eed26b465a" - integrity sha512-Uul57ynMS3L6CRIponNyUQ4vmblA4iCXyIsjtsi3QktvFJ9DTV4MRJAXjq72662jjLneY/LKWuCPXFKG62PyQA== + version "0.28.0" + resolved "https://registry.yarnpkg.com/@syndicate-lang/tsc/-/tsc-0.28.0.tgz#17a7fbcb1f76016c9391c269c134edc1ced49747" + integrity sha512-+4rfCvodZ1Lbc6MDjL33JMUQNpffItd5/Ab9toww2DDXlsuLQhPYqwBY3PQfJ5KOneV4uUBPFxfc4LoRNqKGEQ== dependencies: - "@syndicate-lang/compiler" "^0.13.2" - "@syndicate-lang/core" "^0.19.1" + "@syndicate-lang/compiler" "^0.20.0" + "@syndicate-lang/core" "^0.27.0" glob "^7.1.6" yargs "^16.2.0" "@syndicate-lang/ws-relay@*": - version "0.20.1" - resolved "https://registry.yarnpkg.com/@syndicate-lang/ws-relay/-/ws-relay-0.20.1.tgz#4d4fbc401e5eb8a474aedf5112f9e1de3391bff8" - integrity sha512-sv3r/eyQicBQFVJ8MrS2/OUOPtbr54fkgC6dGN0IdRIeMUFdsxn7HlF3Tumo9I9oOTMNL3Ye+Xkc0sKSLqm8ng== + version "0.29.0" + resolved "https://registry.yarnpkg.com/@syndicate-lang/ws-relay/-/ws-relay-0.29.0.tgz#25d8db2e21a141e0fc0ed3acbe9f55480dc72c56" + integrity sha512-cU1Ktj8uAhH71LpW1Oyb1qLowZLGf4v+cjTZ+ZScIJbgA2eZ4VGYQSqCfeaM+CzVWFDNI2Bpqb8J9uDI9ZDCig== dependencies: - "@preserves/core" "0.992" - "@syndicate-lang/core" "^0.19.1" + "@syndicate-lang/core" "^0.27.0" salty-crypto "0.3" "@types/estree@0.0.39": @@ -148,9 +145,9 @@ chalk@^4.1: supports-color "^7.1.0" chokidar@^3.5: - version "3.5.3" - resolved "https://registry.yarnpkg.com/chokidar/-/chokidar-3.5.3.tgz#1cf37c8707b932bd1af1ae22c0432e2acd1903bd" - integrity sha512-Dr3sfKRP6oTcjf2JmUmFJfeVMvXBdegxB0iVQ5eb2V10uFJUCAS8OByZdVAyVb8xXNz3GjjTgj9kLWsZTqE6kw== + version "3.6.0" + resolved "https://registry.yarnpkg.com/chokidar/-/chokidar-3.6.0.tgz#197c6cc669ef2a8dc5e7b4d97ee4e092c3eb0d5b" + integrity sha512-7VT13fmjotKpGipCW9JEQAusEPE+Ei8nl6/g4FBAmIm0GOOLMua9NDDo/DWp0ZAxCr3cPq5ZpBqmPAQgDda2Pw== dependencies: anymatch "~3.1.2" braces "~3.0.2" @@ -204,9 +201,9 @@ emoji-regex@^8.0.0: integrity sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A== escalade@^3.1.1: - version "3.1.1" - resolved "https://registry.yarnpkg.com/escalade/-/escalade-3.1.1.tgz#d8cfdc7000965c5a0174b4a82eaa5c0552742e40" - integrity sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw== + version "3.1.2" + resolved "https://registry.yarnpkg.com/escalade/-/escalade-3.1.2.tgz#54076e9ab29ea5bf3d8f1ed62acffbb88272df27" + integrity sha512-ErCHMCae19vR8vQGe50xIsVomy19rg6gFu3+r3jkEO46suLMWBksvVyoGgQV+jOfl84ZSOSlmv6Gxa89PmTGmA== estree-walker@^1.0.1: version "1.0.1" From f31262a805d699674ca9c08aa826b77da82d3bc6 Mon Sep 17 00:00:00 2001 From: Tony Garnock-Jones Date: Sat, 9 Mar 2024 23:35:32 +0100 Subject: [PATCH 32/92] Bump deps for remaining examples --- .../package.json | 1 + .../how-to-use-syndicate-ts-plugin/yarn.lock | 69 ++++++++----------- .../how-to-use-syndicate-tsc/package.json | 1 + examples/how-to-use-syndicate-tsc/yarn.lock | 49 ++++++------- .../package.json | 1 + .../yarn.lock | 49 ++++++------- .../package.json | 1 + .../yarn.lock | 49 ++++++------- 8 files changed, 94 insertions(+), 126 deletions(-) diff --git a/examples/how-to-use-syndicate-ts-plugin/package.json b/examples/how-to-use-syndicate-ts-plugin/package.json index 37b0752..3f25717 100644 --- a/examples/how-to-use-syndicate-ts-plugin/package.json +++ b/examples/how-to-use-syndicate-ts-plugin/package.json @@ -12,6 +12,7 @@ "author": "Tony Garnock-Jones ", "license": "GPL-3.0+", "dependencies": { + "@preserves/core": "0.995", "@syndicate-lang/core": "*" }, "devDependencies": { diff --git a/examples/how-to-use-syndicate-ts-plugin/yarn.lock b/examples/how-to-use-syndicate-ts-plugin/yarn.lock index 4b9098f..6f26d75 100644 --- a/examples/how-to-use-syndicate-ts-plugin/yarn.lock +++ b/examples/how-to-use-syndicate-ts-plugin/yarn.lock @@ -2,17 +2,10 @@ # yarn lockfile v1 -"@preserves/core@0.990", "@preserves/core@^0.990.0": - version "0.990.0" - resolved "https://registry.yarnpkg.com/@preserves/core/-/core-0.990.0.tgz#c57c1c3d5159fc17477a4205d5a94a78fbf5b1aa" - integrity sha512-Mx013USv9JU1SrtMxaJISETBy2LZ402xH8ZnQI4JzG6W27ZwGV36DQrXAfF0x6cOmZMGKwJNqQrvmFhh7mEn6w== - -"@preserves/schema@0.990.1": - version "0.990.1" - resolved "https://registry.yarnpkg.com/@preserves/schema/-/schema-0.990.1.tgz#233e25855194ce0f6ffaa9968d59e50b7dc8635a" - integrity sha512-FdvH0peM7U+Yag8FUZ2CYqDTEWjX88+HWwAfVfndtGAwEOTyjqvAQib0aI9lRPPXHodtaNR9/mLFmZBqve80Ew== - dependencies: - "@preserves/core" "^0.990.0" +"@preserves/core@0.995": + version "0.995.0" + resolved "https://registry.yarnpkg.com/@preserves/core/-/core-0.995.0.tgz#d6badccd1fe56e45f23e01b4c8a33f421749e76b" + integrity sha512-0ICNcZ7HkBal1OJwoUuc1+KqoTQNJl2kYI3/nMtfrtNMem908unpydLo20k44Fgh/SRJekWaiRYSzKTcOo0+Tg== "@rollup/pluginutils@^3.0.9": version "3.1.0" @@ -23,45 +16,43 @@ estree-walker "^1.0.1" picomatch "^2.2.2" -"@syndicate-lang/compiler@^0.13.2": - version "0.13.2" - resolved "https://registry.yarnpkg.com/@syndicate-lang/compiler/-/compiler-0.13.2.tgz#e66de9f5828efb88ebe62266d014e13620961996" - integrity sha512-GQa7GVkerWxoVqY3NtRZXS8aLqIsVfdA8KvgNSDb8fTNV8TKGLDxQRurtcCiuEKG9mtfnDTpk8i28HbijKw6fA== +"@syndicate-lang/compiler@^0.20.0": + version "0.20.0" + resolved "https://registry.yarnpkg.com/@syndicate-lang/compiler/-/compiler-0.20.0.tgz#cb0f94a272413c0b982f1009409696c9fdf6f9a9" + integrity sha512-tOZCi/AHD0jbXlIwFEmFmUPRC2rsLNNhwH8BvenwiAAni5SX7chxGYEOnLtCsx0/6pPUbNEKsisgv6eJOprCEA== -"@syndicate-lang/core@*", "@syndicate-lang/core@^0.18.1": - version "0.18.1" - resolved "https://registry.yarnpkg.com/@syndicate-lang/core/-/core-0.18.1.tgz#5cd2931acdab76150c0406428521e4746e62f18b" - integrity sha512-90d0YJCZJVrkxLe+fs5Z+vgigU3wux8VOnPje2E8Q/MXXecjHcBCQWQfcdwUxBdfPSFq9KdQS7g7VFqhu3X7mA== +"@syndicate-lang/core@*", "@syndicate-lang/core@^0.27.0": + version "0.27.0" + resolved "https://registry.yarnpkg.com/@syndicate-lang/core/-/core-0.27.0.tgz#e62a85925663cc478be7ef8a5264c004df879872" + integrity sha512-1YwT21NEO2ShAP3GXtiUcvok99YISGDR7oq2eNie+Q3F4gKGWD11PaJfgQyK15Fd23wdsoiejb6OtJOPvolfHA== dependencies: - "@preserves/core" "0.990" - "@preserves/schema" "0.990.1" salty-crypto "0.3.1" "@syndicate-lang/syndicatec@*": - version "0.18.2" - resolved "https://registry.yarnpkg.com/@syndicate-lang/syndicatec/-/syndicatec-0.18.2.tgz#e594f270705c3203a7e26420bc5df2b568977244" - integrity sha512-iUVKqxmiXMC8uYM5bXdyssY6mtVGI5RQRAtmtikji81XJoYb5pfqGlSkMB6n6x7Cde4OsrzeMJYTJ9q7LvEcsQ== + version "0.28.0" + resolved "https://registry.yarnpkg.com/@syndicate-lang/syndicatec/-/syndicatec-0.28.0.tgz#0d9f27b13971c91ee769e1ce39a9da1936b8b117" + integrity sha512-+pD0qPTX3Ve/AS1yZcSy1RcdYI70S7LzhLQLjpCzmwchvuySUhGHPlWlVHujA4TIrFB9A7+wtxREZ9IyZ6/P8Q== dependencies: - "@syndicate-lang/compiler" "^0.13.2" - "@syndicate-lang/core" "^0.18.1" + "@syndicate-lang/compiler" "^0.20.0" + "@syndicate-lang/core" "^0.27.0" glob "^7.1.6" yargs "^16.2.0" "@syndicate-lang/ts-plugin@*": - version "0.18.1" - resolved "https://registry.yarnpkg.com/@syndicate-lang/ts-plugin/-/ts-plugin-0.18.1.tgz#0567774f0d7cef6b498cf39bda6717bc334f7213" - integrity sha512-wQJhQxGLjf3cW2w9RUGToZofsd3iG6GQPTHtRYnAYjyiCdxSb7fhZf7TNRkRv3m20Q1XIUSTiLg3ChU+1I9eEA== + version "0.28.0" + resolved "https://registry.yarnpkg.com/@syndicate-lang/ts-plugin/-/ts-plugin-0.28.0.tgz#c22cc66b11bca74228f2c5ed10049cf9e347025f" + integrity sha512-ieIlKV8ty2caIy1WlZpfydDYFEYAdHVm+cJxBnVvTRYmQkPjqQa7/2vOTdTHeTXEGabfdtQHwj+RCwCLhRa54g== dependencies: - "@syndicate-lang/compiler" "^0.13.2" - "@syndicate-lang/core" "^0.18.1" + "@syndicate-lang/compiler" "^0.20.0" + "@syndicate-lang/core" "^0.27.0" "@syndicate-lang/tsc@*": - version "0.18.1" - resolved "https://registry.yarnpkg.com/@syndicate-lang/tsc/-/tsc-0.18.1.tgz#e56522052f792b8dad0bd21c6181b7c801ea893b" - integrity sha512-arNOK+0NnjCdg6lisOOBD4piMBAxV3OR5frDAQ+DI+44gruvY20Tzen2SFMre7vvr+xVkyQwiHH9VVrgtIQRkw== + version "0.28.0" + resolved "https://registry.yarnpkg.com/@syndicate-lang/tsc/-/tsc-0.28.0.tgz#17a7fbcb1f76016c9391c269c134edc1ced49747" + integrity sha512-+4rfCvodZ1Lbc6MDjL33JMUQNpffItd5/Ab9toww2DDXlsuLQhPYqwBY3PQfJ5KOneV4uUBPFxfc4LoRNqKGEQ== dependencies: - "@syndicate-lang/compiler" "^0.13.2" - "@syndicate-lang/core" "^0.18.1" + "@syndicate-lang/compiler" "^0.20.0" + "@syndicate-lang/core" "^0.27.0" glob "^7.1.6" yargs "^16.2.0" @@ -137,9 +128,9 @@ emoji-regex@^8.0.0: integrity sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A== escalade@^3.1.1: - version "3.1.1" - resolved "https://registry.yarnpkg.com/escalade/-/escalade-3.1.1.tgz#d8cfdc7000965c5a0174b4a82eaa5c0552742e40" - integrity sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw== + version "3.1.2" + resolved "https://registry.yarnpkg.com/escalade/-/escalade-3.1.2.tgz#54076e9ab29ea5bf3d8f1ed62acffbb88272df27" + integrity sha512-ErCHMCae19vR8vQGe50xIsVomy19rg6gFu3+r3jkEO46suLMWBksvVyoGgQV+jOfl84ZSOSlmv6Gxa89PmTGmA== estree-walker@^1.0.1: version "1.0.1" diff --git a/examples/how-to-use-syndicate-tsc/package.json b/examples/how-to-use-syndicate-tsc/package.json index c000ead..43be75e 100644 --- a/examples/how-to-use-syndicate-tsc/package.json +++ b/examples/how-to-use-syndicate-tsc/package.json @@ -12,6 +12,7 @@ "author": "Tony Garnock-Jones ", "license": "GPL-3.0+", "dependencies": { + "@preserves/core": "0.995", "@syndicate-lang/core": "*" }, "devDependencies": { diff --git a/examples/how-to-use-syndicate-tsc/yarn.lock b/examples/how-to-use-syndicate-tsc/yarn.lock index 8c77d70..e4d64e4 100644 --- a/examples/how-to-use-syndicate-tsc/yarn.lock +++ b/examples/how-to-use-syndicate-tsc/yarn.lock @@ -2,17 +2,10 @@ # yarn lockfile v1 -"@preserves/core@0.990", "@preserves/core@^0.990.0": - version "0.990.0" - resolved "https://registry.yarnpkg.com/@preserves/core/-/core-0.990.0.tgz#c57c1c3d5159fc17477a4205d5a94a78fbf5b1aa" - integrity sha512-Mx013USv9JU1SrtMxaJISETBy2LZ402xH8ZnQI4JzG6W27ZwGV36DQrXAfF0x6cOmZMGKwJNqQrvmFhh7mEn6w== - -"@preserves/schema@0.990.1": - version "0.990.1" - resolved "https://registry.yarnpkg.com/@preserves/schema/-/schema-0.990.1.tgz#233e25855194ce0f6ffaa9968d59e50b7dc8635a" - integrity sha512-FdvH0peM7U+Yag8FUZ2CYqDTEWjX88+HWwAfVfndtGAwEOTyjqvAQib0aI9lRPPXHodtaNR9/mLFmZBqve80Ew== - dependencies: - "@preserves/core" "^0.990.0" +"@preserves/core@0.995": + version "0.995.0" + resolved "https://registry.yarnpkg.com/@preserves/core/-/core-0.995.0.tgz#d6badccd1fe56e45f23e01b4c8a33f421749e76b" + integrity sha512-0ICNcZ7HkBal1OJwoUuc1+KqoTQNJl2kYI3/nMtfrtNMem908unpydLo20k44Fgh/SRJekWaiRYSzKTcOo0+Tg== "@rollup/pluginutils@^3.0.9": version "3.1.0" @@ -23,27 +16,25 @@ estree-walker "^1.0.1" picomatch "^2.2.2" -"@syndicate-lang/compiler@^0.13.2": - version "0.13.2" - resolved "https://registry.yarnpkg.com/@syndicate-lang/compiler/-/compiler-0.13.2.tgz#e66de9f5828efb88ebe62266d014e13620961996" - integrity sha512-GQa7GVkerWxoVqY3NtRZXS8aLqIsVfdA8KvgNSDb8fTNV8TKGLDxQRurtcCiuEKG9mtfnDTpk8i28HbijKw6fA== +"@syndicate-lang/compiler@^0.20.0": + version "0.20.0" + resolved "https://registry.yarnpkg.com/@syndicate-lang/compiler/-/compiler-0.20.0.tgz#cb0f94a272413c0b982f1009409696c9fdf6f9a9" + integrity sha512-tOZCi/AHD0jbXlIwFEmFmUPRC2rsLNNhwH8BvenwiAAni5SX7chxGYEOnLtCsx0/6pPUbNEKsisgv6eJOprCEA== -"@syndicate-lang/core@*", "@syndicate-lang/core@^0.18.1": - version "0.18.1" - resolved "https://registry.yarnpkg.com/@syndicate-lang/core/-/core-0.18.1.tgz#5cd2931acdab76150c0406428521e4746e62f18b" - integrity sha512-90d0YJCZJVrkxLe+fs5Z+vgigU3wux8VOnPje2E8Q/MXXecjHcBCQWQfcdwUxBdfPSFq9KdQS7g7VFqhu3X7mA== +"@syndicate-lang/core@*", "@syndicate-lang/core@^0.27.0": + version "0.27.0" + resolved "https://registry.yarnpkg.com/@syndicate-lang/core/-/core-0.27.0.tgz#e62a85925663cc478be7ef8a5264c004df879872" + integrity sha512-1YwT21NEO2ShAP3GXtiUcvok99YISGDR7oq2eNie+Q3F4gKGWD11PaJfgQyK15Fd23wdsoiejb6OtJOPvolfHA== dependencies: - "@preserves/core" "0.990" - "@preserves/schema" "0.990.1" salty-crypto "0.3.1" "@syndicate-lang/tsc@*": - version "0.18.1" - resolved "https://registry.yarnpkg.com/@syndicate-lang/tsc/-/tsc-0.18.1.tgz#e56522052f792b8dad0bd21c6181b7c801ea893b" - integrity sha512-arNOK+0NnjCdg6lisOOBD4piMBAxV3OR5frDAQ+DI+44gruvY20Tzen2SFMre7vvr+xVkyQwiHH9VVrgtIQRkw== + version "0.28.0" + resolved "https://registry.yarnpkg.com/@syndicate-lang/tsc/-/tsc-0.28.0.tgz#17a7fbcb1f76016c9391c269c134edc1ced49747" + integrity sha512-+4rfCvodZ1Lbc6MDjL33JMUQNpffItd5/Ab9toww2DDXlsuLQhPYqwBY3PQfJ5KOneV4uUBPFxfc4LoRNqKGEQ== dependencies: - "@syndicate-lang/compiler" "^0.13.2" - "@syndicate-lang/core" "^0.18.1" + "@syndicate-lang/compiler" "^0.20.0" + "@syndicate-lang/core" "^0.27.0" glob "^7.1.6" yargs "^16.2.0" @@ -119,9 +110,9 @@ emoji-regex@^8.0.0: integrity sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A== escalade@^3.1.1: - version "3.1.1" - resolved "https://registry.yarnpkg.com/escalade/-/escalade-3.1.1.tgz#d8cfdc7000965c5a0174b4a82eaa5c0552742e40" - integrity sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw== + version "3.1.2" + resolved "https://registry.yarnpkg.com/escalade/-/escalade-3.1.2.tgz#54076e9ab29ea5bf3d8f1ed62acffbb88272df27" + integrity sha512-ErCHMCae19vR8vQGe50xIsVomy19rg6gFu3+r3jkEO46suLMWBksvVyoGgQV+jOfl84ZSOSlmv6Gxa89PmTGmA== estree-walker@^1.0.1: version "1.0.1" diff --git a/examples/how-to-use-syndicatec-javascript/package.json b/examples/how-to-use-syndicatec-javascript/package.json index 7c793fe..3a4a709 100644 --- a/examples/how-to-use-syndicatec-javascript/package.json +++ b/examples/how-to-use-syndicatec-javascript/package.json @@ -12,6 +12,7 @@ "author": "Tony Garnock-Jones ", "license": "GPL-3.0+", "dependencies": { + "@preserves/core": "0.995", "@syndicate-lang/core": "*" }, "devDependencies": { diff --git a/examples/how-to-use-syndicatec-javascript/yarn.lock b/examples/how-to-use-syndicatec-javascript/yarn.lock index 1385bc0..09c741a 100644 --- a/examples/how-to-use-syndicatec-javascript/yarn.lock +++ b/examples/how-to-use-syndicatec-javascript/yarn.lock @@ -2,17 +2,10 @@ # yarn lockfile v1 -"@preserves/core@0.990", "@preserves/core@^0.990.0": - version "0.990.0" - resolved "https://registry.yarnpkg.com/@preserves/core/-/core-0.990.0.tgz#c57c1c3d5159fc17477a4205d5a94a78fbf5b1aa" - integrity sha512-Mx013USv9JU1SrtMxaJISETBy2LZ402xH8ZnQI4JzG6W27ZwGV36DQrXAfF0x6cOmZMGKwJNqQrvmFhh7mEn6w== - -"@preserves/schema@0.990.1": - version "0.990.1" - resolved "https://registry.yarnpkg.com/@preserves/schema/-/schema-0.990.1.tgz#233e25855194ce0f6ffaa9968d59e50b7dc8635a" - integrity sha512-FdvH0peM7U+Yag8FUZ2CYqDTEWjX88+HWwAfVfndtGAwEOTyjqvAQib0aI9lRPPXHodtaNR9/mLFmZBqve80Ew== - dependencies: - "@preserves/core" "^0.990.0" +"@preserves/core@0.995": + version "0.995.0" + resolved "https://registry.yarnpkg.com/@preserves/core/-/core-0.995.0.tgz#d6badccd1fe56e45f23e01b4c8a33f421749e76b" + integrity sha512-0ICNcZ7HkBal1OJwoUuc1+KqoTQNJl2kYI3/nMtfrtNMem908unpydLo20k44Fgh/SRJekWaiRYSzKTcOo0+Tg== "@rollup/pluginutils@^3.0.9": version "3.1.0" @@ -23,27 +16,25 @@ estree-walker "^1.0.1" picomatch "^2.2.2" -"@syndicate-lang/compiler@^0.13.2": - version "0.13.2" - resolved "https://registry.yarnpkg.com/@syndicate-lang/compiler/-/compiler-0.13.2.tgz#e66de9f5828efb88ebe62266d014e13620961996" - integrity sha512-GQa7GVkerWxoVqY3NtRZXS8aLqIsVfdA8KvgNSDb8fTNV8TKGLDxQRurtcCiuEKG9mtfnDTpk8i28HbijKw6fA== +"@syndicate-lang/compiler@^0.20.0": + version "0.20.0" + resolved "https://registry.yarnpkg.com/@syndicate-lang/compiler/-/compiler-0.20.0.tgz#cb0f94a272413c0b982f1009409696c9fdf6f9a9" + integrity sha512-tOZCi/AHD0jbXlIwFEmFmUPRC2rsLNNhwH8BvenwiAAni5SX7chxGYEOnLtCsx0/6pPUbNEKsisgv6eJOprCEA== -"@syndicate-lang/core@*", "@syndicate-lang/core@^0.18.1": - version "0.18.1" - resolved "https://registry.yarnpkg.com/@syndicate-lang/core/-/core-0.18.1.tgz#5cd2931acdab76150c0406428521e4746e62f18b" - integrity sha512-90d0YJCZJVrkxLe+fs5Z+vgigU3wux8VOnPje2E8Q/MXXecjHcBCQWQfcdwUxBdfPSFq9KdQS7g7VFqhu3X7mA== +"@syndicate-lang/core@*", "@syndicate-lang/core@^0.27.0": + version "0.27.0" + resolved "https://registry.yarnpkg.com/@syndicate-lang/core/-/core-0.27.0.tgz#e62a85925663cc478be7ef8a5264c004df879872" + integrity sha512-1YwT21NEO2ShAP3GXtiUcvok99YISGDR7oq2eNie+Q3F4gKGWD11PaJfgQyK15Fd23wdsoiejb6OtJOPvolfHA== dependencies: - "@preserves/core" "0.990" - "@preserves/schema" "0.990.1" salty-crypto "0.3.1" "@syndicate-lang/syndicatec@*": - version "0.18.2" - resolved "https://registry.yarnpkg.com/@syndicate-lang/syndicatec/-/syndicatec-0.18.2.tgz#e594f270705c3203a7e26420bc5df2b568977244" - integrity sha512-iUVKqxmiXMC8uYM5bXdyssY6mtVGI5RQRAtmtikji81XJoYb5pfqGlSkMB6n6x7Cde4OsrzeMJYTJ9q7LvEcsQ== + version "0.28.0" + resolved "https://registry.yarnpkg.com/@syndicate-lang/syndicatec/-/syndicatec-0.28.0.tgz#0d9f27b13971c91ee769e1ce39a9da1936b8b117" + integrity sha512-+pD0qPTX3Ve/AS1yZcSy1RcdYI70S7LzhLQLjpCzmwchvuySUhGHPlWlVHujA4TIrFB9A7+wtxREZ9IyZ6/P8Q== dependencies: - "@syndicate-lang/compiler" "^0.13.2" - "@syndicate-lang/core" "^0.18.1" + "@syndicate-lang/compiler" "^0.20.0" + "@syndicate-lang/core" "^0.27.0" glob "^7.1.6" yargs "^16.2.0" @@ -119,9 +110,9 @@ emoji-regex@^8.0.0: integrity sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A== escalade@^3.1.1: - version "3.1.1" - resolved "https://registry.yarnpkg.com/escalade/-/escalade-3.1.1.tgz#d8cfdc7000965c5a0174b4a82eaa5c0552742e40" - integrity sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw== + version "3.1.2" + resolved "https://registry.yarnpkg.com/escalade/-/escalade-3.1.2.tgz#54076e9ab29ea5bf3d8f1ed62acffbb88272df27" + integrity sha512-ErCHMCae19vR8vQGe50xIsVomy19rg6gFu3+r3jkEO46suLMWBksvVyoGgQV+jOfl84ZSOSlmv6Gxa89PmTGmA== estree-walker@^1.0.1: version "1.0.1" diff --git a/examples/how-to-use-syndicatec-typescript/package.json b/examples/how-to-use-syndicatec-typescript/package.json index f1b7ef8..061b947 100644 --- a/examples/how-to-use-syndicatec-typescript/package.json +++ b/examples/how-to-use-syndicatec-typescript/package.json @@ -12,6 +12,7 @@ "author": "Tony Garnock-Jones ", "license": "GPL-3.0+", "dependencies": { + "@preserves/core": "0.995", "@syndicate-lang/core": "*" }, "devDependencies": { diff --git a/examples/how-to-use-syndicatec-typescript/yarn.lock b/examples/how-to-use-syndicatec-typescript/yarn.lock index 141f476..84d886f 100644 --- a/examples/how-to-use-syndicatec-typescript/yarn.lock +++ b/examples/how-to-use-syndicatec-typescript/yarn.lock @@ -2,17 +2,10 @@ # yarn lockfile v1 -"@preserves/core@0.990", "@preserves/core@^0.990.0": - version "0.990.0" - resolved "https://registry.yarnpkg.com/@preserves/core/-/core-0.990.0.tgz#c57c1c3d5159fc17477a4205d5a94a78fbf5b1aa" - integrity sha512-Mx013USv9JU1SrtMxaJISETBy2LZ402xH8ZnQI4JzG6W27ZwGV36DQrXAfF0x6cOmZMGKwJNqQrvmFhh7mEn6w== - -"@preserves/schema@0.990.1": - version "0.990.1" - resolved "https://registry.yarnpkg.com/@preserves/schema/-/schema-0.990.1.tgz#233e25855194ce0f6ffaa9968d59e50b7dc8635a" - integrity sha512-FdvH0peM7U+Yag8FUZ2CYqDTEWjX88+HWwAfVfndtGAwEOTyjqvAQib0aI9lRPPXHodtaNR9/mLFmZBqve80Ew== - dependencies: - "@preserves/core" "^0.990.0" +"@preserves/core@0.995": + version "0.995.0" + resolved "https://registry.yarnpkg.com/@preserves/core/-/core-0.995.0.tgz#d6badccd1fe56e45f23e01b4c8a33f421749e76b" + integrity sha512-0ICNcZ7HkBal1OJwoUuc1+KqoTQNJl2kYI3/nMtfrtNMem908unpydLo20k44Fgh/SRJekWaiRYSzKTcOo0+Tg== "@rollup/pluginutils@^3.0.9": version "3.1.0" @@ -23,27 +16,25 @@ estree-walker "^1.0.1" picomatch "^2.2.2" -"@syndicate-lang/compiler@^0.13.2": - version "0.13.2" - resolved "https://registry.yarnpkg.com/@syndicate-lang/compiler/-/compiler-0.13.2.tgz#e66de9f5828efb88ebe62266d014e13620961996" - integrity sha512-GQa7GVkerWxoVqY3NtRZXS8aLqIsVfdA8KvgNSDb8fTNV8TKGLDxQRurtcCiuEKG9mtfnDTpk8i28HbijKw6fA== +"@syndicate-lang/compiler@^0.20.0": + version "0.20.0" + resolved "https://registry.yarnpkg.com/@syndicate-lang/compiler/-/compiler-0.20.0.tgz#cb0f94a272413c0b982f1009409696c9fdf6f9a9" + integrity sha512-tOZCi/AHD0jbXlIwFEmFmUPRC2rsLNNhwH8BvenwiAAni5SX7chxGYEOnLtCsx0/6pPUbNEKsisgv6eJOprCEA== -"@syndicate-lang/core@*", "@syndicate-lang/core@^0.18.1": - version "0.18.1" - resolved "https://registry.yarnpkg.com/@syndicate-lang/core/-/core-0.18.1.tgz#5cd2931acdab76150c0406428521e4746e62f18b" - integrity sha512-90d0YJCZJVrkxLe+fs5Z+vgigU3wux8VOnPje2E8Q/MXXecjHcBCQWQfcdwUxBdfPSFq9KdQS7g7VFqhu3X7mA== +"@syndicate-lang/core@*", "@syndicate-lang/core@^0.27.0": + version "0.27.0" + resolved "https://registry.yarnpkg.com/@syndicate-lang/core/-/core-0.27.0.tgz#e62a85925663cc478be7ef8a5264c004df879872" + integrity sha512-1YwT21NEO2ShAP3GXtiUcvok99YISGDR7oq2eNie+Q3F4gKGWD11PaJfgQyK15Fd23wdsoiejb6OtJOPvolfHA== dependencies: - "@preserves/core" "0.990" - "@preserves/schema" "0.990.1" salty-crypto "0.3.1" "@syndicate-lang/syndicatec@*": - version "0.18.2" - resolved "https://registry.yarnpkg.com/@syndicate-lang/syndicatec/-/syndicatec-0.18.2.tgz#e594f270705c3203a7e26420bc5df2b568977244" - integrity sha512-iUVKqxmiXMC8uYM5bXdyssY6mtVGI5RQRAtmtikji81XJoYb5pfqGlSkMB6n6x7Cde4OsrzeMJYTJ9q7LvEcsQ== + version "0.28.0" + resolved "https://registry.yarnpkg.com/@syndicate-lang/syndicatec/-/syndicatec-0.28.0.tgz#0d9f27b13971c91ee769e1ce39a9da1936b8b117" + integrity sha512-+pD0qPTX3Ve/AS1yZcSy1RcdYI70S7LzhLQLjpCzmwchvuySUhGHPlWlVHujA4TIrFB9A7+wtxREZ9IyZ6/P8Q== dependencies: - "@syndicate-lang/compiler" "^0.13.2" - "@syndicate-lang/core" "^0.18.1" + "@syndicate-lang/compiler" "^0.20.0" + "@syndicate-lang/core" "^0.27.0" glob "^7.1.6" yargs "^16.2.0" @@ -119,9 +110,9 @@ emoji-regex@^8.0.0: integrity sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A== escalade@^3.1.1: - version "3.1.1" - resolved "https://registry.yarnpkg.com/escalade/-/escalade-3.1.1.tgz#d8cfdc7000965c5a0174b4a82eaa5c0552742e40" - integrity sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw== + version "3.1.2" + resolved "https://registry.yarnpkg.com/escalade/-/escalade-3.1.2.tgz#54076e9ab29ea5bf3d8f1ed62acffbb88272df27" + integrity sha512-ErCHMCae19vR8vQGe50xIsVomy19rg6gFu3+r3jkEO46suLMWBksvVyoGgQV+jOfl84ZSOSlmv6Gxa89PmTGmA== estree-walker@^1.0.1: version "1.0.1" From ce598e6954aa1a18e758d1decab5ee9fa4535304 Mon Sep 17 00:00:00 2001 From: Tony Garnock-Jones Date: Sat, 9 Mar 2024 23:50:05 +0100 Subject: [PATCH 33/92] The typescript code compilation process depends on @preserves/schema. --- examples/how-to-use-syndicate-ts-plugin/package.json | 1 + examples/how-to-use-syndicate-ts-plugin/yarn.lock | 9 ++++++++- examples/how-to-use-syndicate-tsc/package.json | 1 + examples/how-to-use-syndicate-tsc/yarn.lock | 9 ++++++++- examples/how-to-use-syndicatec-typescript/package.json | 1 + examples/how-to-use-syndicatec-typescript/yarn.lock | 9 ++++++++- examples/syndicate-html-example-flappy-bird/package.json | 1 + examples/syndicate-html-example-flappy-bird/yarn.lock | 9 ++++++++- examples/syndicate-html-example-table/package.json | 1 + examples/syndicate-html-example-table/yarn.lock | 9 ++++++++- 10 files changed, 45 insertions(+), 5 deletions(-) diff --git a/examples/how-to-use-syndicate-ts-plugin/package.json b/examples/how-to-use-syndicate-ts-plugin/package.json index 3f25717..cd3ad86 100644 --- a/examples/how-to-use-syndicate-ts-plugin/package.json +++ b/examples/how-to-use-syndicate-ts-plugin/package.json @@ -13,6 +13,7 @@ "license": "GPL-3.0+", "dependencies": { "@preserves/core": "0.995", + "@preserves/schema": "0.995", "@syndicate-lang/core": "*" }, "devDependencies": { diff --git a/examples/how-to-use-syndicate-ts-plugin/yarn.lock b/examples/how-to-use-syndicate-ts-plugin/yarn.lock index 6f26d75..5ccee3f 100644 --- a/examples/how-to-use-syndicate-ts-plugin/yarn.lock +++ b/examples/how-to-use-syndicate-ts-plugin/yarn.lock @@ -2,11 +2,18 @@ # yarn lockfile v1 -"@preserves/core@0.995": +"@preserves/core@0.995", "@preserves/core@^0.995.0": version "0.995.0" resolved "https://registry.yarnpkg.com/@preserves/core/-/core-0.995.0.tgz#d6badccd1fe56e45f23e01b4c8a33f421749e76b" integrity sha512-0ICNcZ7HkBal1OJwoUuc1+KqoTQNJl2kYI3/nMtfrtNMem908unpydLo20k44Fgh/SRJekWaiRYSzKTcOo0+Tg== +"@preserves/schema@0.995": + version "0.995.1" + resolved "https://registry.yarnpkg.com/@preserves/schema/-/schema-0.995.1.tgz#e218a4257171f1c3c6e7a2f4d7e1b88ce3ae998e" + integrity sha512-oh3SHMVOhqwFFZrzxnrAacBdUpdXtOyAoGyEOm9x0xehQ5NpYEnz/DdjXmW6iKeQ7Igoa1rSyibWbYfHV6fzvg== + dependencies: + "@preserves/core" "^0.995.0" + "@rollup/pluginutils@^3.0.9": version "3.1.0" resolved "https://registry.yarnpkg.com/@rollup/pluginutils/-/pluginutils-3.1.0.tgz#706b4524ee6dc8b103b3c995533e5ad680c02b9b" diff --git a/examples/how-to-use-syndicate-tsc/package.json b/examples/how-to-use-syndicate-tsc/package.json index 43be75e..c48959f 100644 --- a/examples/how-to-use-syndicate-tsc/package.json +++ b/examples/how-to-use-syndicate-tsc/package.json @@ -13,6 +13,7 @@ "license": "GPL-3.0+", "dependencies": { "@preserves/core": "0.995", + "@preserves/schema": "0.995", "@syndicate-lang/core": "*" }, "devDependencies": { diff --git a/examples/how-to-use-syndicate-tsc/yarn.lock b/examples/how-to-use-syndicate-tsc/yarn.lock index e4d64e4..094fbbb 100644 --- a/examples/how-to-use-syndicate-tsc/yarn.lock +++ b/examples/how-to-use-syndicate-tsc/yarn.lock @@ -2,11 +2,18 @@ # yarn lockfile v1 -"@preserves/core@0.995": +"@preserves/core@0.995", "@preserves/core@^0.995.0": version "0.995.0" resolved "https://registry.yarnpkg.com/@preserves/core/-/core-0.995.0.tgz#d6badccd1fe56e45f23e01b4c8a33f421749e76b" integrity sha512-0ICNcZ7HkBal1OJwoUuc1+KqoTQNJl2kYI3/nMtfrtNMem908unpydLo20k44Fgh/SRJekWaiRYSzKTcOo0+Tg== +"@preserves/schema@0.995": + version "0.995.1" + resolved "https://registry.yarnpkg.com/@preserves/schema/-/schema-0.995.1.tgz#e218a4257171f1c3c6e7a2f4d7e1b88ce3ae998e" + integrity sha512-oh3SHMVOhqwFFZrzxnrAacBdUpdXtOyAoGyEOm9x0xehQ5NpYEnz/DdjXmW6iKeQ7Igoa1rSyibWbYfHV6fzvg== + dependencies: + "@preserves/core" "^0.995.0" + "@rollup/pluginutils@^3.0.9": version "3.1.0" resolved "https://registry.yarnpkg.com/@rollup/pluginutils/-/pluginutils-3.1.0.tgz#706b4524ee6dc8b103b3c995533e5ad680c02b9b" diff --git a/examples/how-to-use-syndicatec-typescript/package.json b/examples/how-to-use-syndicatec-typescript/package.json index 061b947..7bfa36b 100644 --- a/examples/how-to-use-syndicatec-typescript/package.json +++ b/examples/how-to-use-syndicatec-typescript/package.json @@ -13,6 +13,7 @@ "license": "GPL-3.0+", "dependencies": { "@preserves/core": "0.995", + "@preserves/schema": "0.995", "@syndicate-lang/core": "*" }, "devDependencies": { diff --git a/examples/how-to-use-syndicatec-typescript/yarn.lock b/examples/how-to-use-syndicatec-typescript/yarn.lock index 84d886f..3b5312c 100644 --- a/examples/how-to-use-syndicatec-typescript/yarn.lock +++ b/examples/how-to-use-syndicatec-typescript/yarn.lock @@ -2,11 +2,18 @@ # yarn lockfile v1 -"@preserves/core@0.995": +"@preserves/core@0.995", "@preserves/core@^0.995.0": version "0.995.0" resolved "https://registry.yarnpkg.com/@preserves/core/-/core-0.995.0.tgz#d6badccd1fe56e45f23e01b4c8a33f421749e76b" integrity sha512-0ICNcZ7HkBal1OJwoUuc1+KqoTQNJl2kYI3/nMtfrtNMem908unpydLo20k44Fgh/SRJekWaiRYSzKTcOo0+Tg== +"@preserves/schema@0.995": + version "0.995.1" + resolved "https://registry.yarnpkg.com/@preserves/schema/-/schema-0.995.1.tgz#e218a4257171f1c3c6e7a2f4d7e1b88ce3ae998e" + integrity sha512-oh3SHMVOhqwFFZrzxnrAacBdUpdXtOyAoGyEOm9x0xehQ5NpYEnz/DdjXmW6iKeQ7Igoa1rSyibWbYfHV6fzvg== + dependencies: + "@preserves/core" "^0.995.0" + "@rollup/pluginutils@^3.0.9": version "3.1.0" resolved "https://registry.yarnpkg.com/@rollup/pluginutils/-/pluginutils-3.1.0.tgz#706b4524ee6dc8b103b3c995533e5ad680c02b9b" diff --git a/examples/syndicate-html-example-flappy-bird/package.json b/examples/syndicate-html-example-flappy-bird/package.json index 90be666..cfbc732 100644 --- a/examples/syndicate-html-example-flappy-bird/package.json +++ b/examples/syndicate-html-example-flappy-bird/package.json @@ -13,6 +13,7 @@ "license": "GPL-3.0+", "dependencies": { "@preserves/core": "0.995", + "@preserves/schema": "0.995", "@syndicate-lang/core": "*", "@syndicate-lang/html": "*", "@syndicate-lang/timer": "*" diff --git a/examples/syndicate-html-example-flappy-bird/yarn.lock b/examples/syndicate-html-example-flappy-bird/yarn.lock index d45af29..19914e1 100644 --- a/examples/syndicate-html-example-flappy-bird/yarn.lock +++ b/examples/syndicate-html-example-flappy-bird/yarn.lock @@ -2,11 +2,18 @@ # yarn lockfile v1 -"@preserves/core@0.995": +"@preserves/core@0.995", "@preserves/core@^0.995.0": version "0.995.0" resolved "https://registry.yarnpkg.com/@preserves/core/-/core-0.995.0.tgz#d6badccd1fe56e45f23e01b4c8a33f421749e76b" integrity sha512-0ICNcZ7HkBal1OJwoUuc1+KqoTQNJl2kYI3/nMtfrtNMem908unpydLo20k44Fgh/SRJekWaiRYSzKTcOo0+Tg== +"@preserves/schema@0.995": + version "0.995.1" + resolved "https://registry.yarnpkg.com/@preserves/schema/-/schema-0.995.1.tgz#e218a4257171f1c3c6e7a2f4d7e1b88ce3ae998e" + integrity sha512-oh3SHMVOhqwFFZrzxnrAacBdUpdXtOyAoGyEOm9x0xehQ5NpYEnz/DdjXmW6iKeQ7Igoa1rSyibWbYfHV6fzvg== + dependencies: + "@preserves/core" "^0.995.0" + "@rollup/pluginutils@^3.0.9": version "3.1.0" resolved "https://registry.yarnpkg.com/@rollup/pluginutils/-/pluginutils-3.1.0.tgz#706b4524ee6dc8b103b3c995533e5ad680c02b9b" diff --git a/examples/syndicate-html-example-table/package.json b/examples/syndicate-html-example-table/package.json index b815507..31d2ca5 100644 --- a/examples/syndicate-html-example-table/package.json +++ b/examples/syndicate-html-example-table/package.json @@ -15,6 +15,7 @@ "license": "GPL-3.0+", "dependencies": { "@preserves/core": "0.995", + "@preserves/schema": "0.995", "@syndicate-lang/core": "*", "@syndicate-lang/html": "*" }, diff --git a/examples/syndicate-html-example-table/yarn.lock b/examples/syndicate-html-example-table/yarn.lock index 97ed600..2832ffb 100644 --- a/examples/syndicate-html-example-table/yarn.lock +++ b/examples/syndicate-html-example-table/yarn.lock @@ -2,11 +2,18 @@ # yarn lockfile v1 -"@preserves/core@0.995": +"@preserves/core@0.995", "@preserves/core@^0.995.0": version "0.995.0" resolved "https://registry.yarnpkg.com/@preserves/core/-/core-0.995.0.tgz#d6badccd1fe56e45f23e01b4c8a33f421749e76b" integrity sha512-0ICNcZ7HkBal1OJwoUuc1+KqoTQNJl2kYI3/nMtfrtNMem908unpydLo20k44Fgh/SRJekWaiRYSzKTcOo0+Tg== +"@preserves/schema@0.995": + version "0.995.1" + resolved "https://registry.yarnpkg.com/@preserves/schema/-/schema-0.995.1.tgz#e218a4257171f1c3c6e7a2f4d7e1b88ce3ae998e" + integrity sha512-oh3SHMVOhqwFFZrzxnrAacBdUpdXtOyAoGyEOm9x0xehQ5NpYEnz/DdjXmW6iKeQ7Igoa1rSyibWbYfHV6fzvg== + dependencies: + "@preserves/core" "^0.995.0" + "@rollup/pluginutils@^3.0.9": version "3.1.0" resolved "https://registry.yarnpkg.com/@rollup/pluginutils/-/pluginutils-3.1.0.tgz#706b4524ee6dc8b103b3c995533e5ad680c02b9b" From 888b3be2919ebb1e2ae520c7b7125a0ec0bc9954 Mon Sep 17 00:00:00 2001 From: Tony Garnock-Jones Date: Sun, 10 Mar 2024 12:47:05 +0100 Subject: [PATCH 34/92] Check for and prevent cross-actor facet termination --- packages/core/src/runtime/actor.ts | 3 +++ 1 file changed, 3 insertions(+) diff --git a/packages/core/src/runtime/actor.ts b/packages/core/src/runtime/actor.ts index 11391e0..f0e5065 100644 --- a/packages/core/src/runtime/actor.ts +++ b/packages/core/src/runtime/actor.ts @@ -366,6 +366,9 @@ export class Turn { } stop(facet: Facet, continuation?: LocalAction) { + if (facet.actor !== Turn.activeFacet.actor) { + throw new Error("Attempt to terminate a facet in a different actor"); + } if (continuation) facet.onStop(continuation); facet._terminate(true); } From be744960122dba7195a13ec2a541153fae6edaf1 Mon Sep 17 00:00:00 2001 From: Tony Garnock-Jones Date: Sun, 10 Mar 2024 14:26:04 +0100 Subject: [PATCH 35/92] Prettifier to make compiler tests easier to read and write --- packages/compiler/package.json | 4 + packages/compiler/test/compiler.test.ts | 221 ++++++++++++--------- yarn.lock | 251 +++++++++++++++++++++--- 3 files changed, 355 insertions(+), 121 deletions(-) diff --git a/packages/compiler/package.json b/packages/compiler/package.json index 00eaa87..274493c 100644 --- a/packages/compiler/package.json +++ b/packages/compiler/package.json @@ -22,6 +22,10 @@ "test": "../../node_modules/.bin/jest", "test:watch": "yarn test --watch" }, + "devDependencies": { + "@types/js-beautify": "1.14", + "js-beautify": "1.15" + }, "main": "dist/syndicate-compiler.js", "module": "lib/index.js", "types": "lib/index.d.ts", diff --git a/packages/compiler/test/compiler.test.ts b/packages/compiler/test/compiler.test.ts index 713e5c9..1f1de12 100644 --- a/packages/compiler/test/compiler.test.ts +++ b/packages/compiler/test/compiler.test.ts @@ -4,6 +4,7 @@ import { compile, CompileOptions, Syntax } from '../src/index'; import Pos = Syntax.Pos; import './test-utils'; +import { js as format } from 'js-beautify'; type Error = { message: string, start: Pos | undefined, end: Pos | undefined }; @@ -24,118 +25,160 @@ function translateNoErrors(source: string): string { return o.code; } +function expectCodeEqual(input: string, output: string) { + expect(format(translateNoErrors(input))).toBe(format(output)); +} + describe('react', () => { - it('without label', () => { - expect(translateNoErrors(`react { a; b; c; }`)).toBe( - `__SYNDICATE__.Turn.active.facet(() => {const currentSyndicateFacet = __SYNDICATE__.Turn.activeFacet; a; b; c; });`); - }); - it('with label', () => { - expect(translateNoErrors(`someLabel: react { a; b; c; }`)).toBe( - `__SYNDICATE__.Turn.active.facet(() => {const currentSyndicateFacet = __SYNDICATE__.Turn.activeFacet; const someLabel = currentSyndicateFacet; a; b; c; });`); - }); + + it('without label', () => expectCodeEqual(`react { a; b; c; }`, ` +__SYNDICATE__.Turn.active.facet(() => { + const currentSyndicateFacet = __SYNDICATE__.Turn.activeFacet; + a; b; c; +});`)); + + it('with label', () => expectCodeEqual(`someLabel: react { a; b; c; }`, ` +__SYNDICATE__.Turn.active.facet(() => { + const currentSyndicateFacet = __SYNDICATE__.Turn.activeFacet; + const someLabel = currentSyndicateFacet; + a; b; c; +});`)); + }); describe('spawn', () => { - it('without name', () => { - expect(translateNoErrors(`spawn { a; b; c; }`)).toBe( - `__SYNDICATE__.Dataspace._spawn(() => { const currentSyndicateFacet = __SYNDICATE__.Turn.activeFacet; a; b; c; });`); - }); - it('with name', () => { - expect(translateNoErrors(`spawn named 'foo' { a; b; c; }`)).toBe( - `__SYNDICATE__.Dataspace._spawn(() => { const currentSyndicateFacet = __SYNDICATE__.Turn.activeFacet; currentSyndicateFacet.actor.name = 'foo'; a; b; c; });`); - }); - it('with missing name (known incorrect parsing and codegen)', () => { - // At present, the expr() parser accepts *empty input*. TODO: something better. - expect(translateNoErrors(`spawn named { a; b; c; }`)).toBe( - `__SYNDICATE__.Dataspace._spawn(() => { const currentSyndicateFacet = __SYNDICATE__.Turn.activeFacet; currentSyndicateFacet.actor.name = ; a; b; c; });`); - }); + + it('without name', () => expectCodeEqual(`spawn { a; b; c; }`, ` +__SYNDICATE__.Dataspace._spawn(() => { + const currentSyndicateFacet = __SYNDICATE__.Turn.activeFacet; + a; b; c; +});`)); + + it('with name', () => expectCodeEqual(`spawn named 'foo' { a; b; c; }`, ` +__SYNDICATE__.Dataspace._spawn(() => { + const currentSyndicateFacet = __SYNDICATE__.Turn.activeFacet; + currentSyndicateFacet.actor.name = 'foo'; + a; b; c; +});`)); + + // At present, the expr() parser accepts *empty input*. TODO: something better. + it('with missing name (known incorrect parsing and codegen)', () => + expectCodeEqual(`spawn named { a; b; c; }`, ` +__SYNDICATE__.Dataspace._spawn(() => { + const currentSyndicateFacet = __SYNDICATE__.Turn.activeFacet; + currentSyndicateFacet.actor.name = ; + a; b; c; +});`)); + }); describe('stop', () => { - it('non-statement', () => { - expect(translateNoErrors(`stop`)).toBe( - `stop`); - }); - it('without facet, without body', () => { - expect(translateNoErrors(`stop;`)).toBe( - `__SYNDICATE__.Turn.active._stop(currentSyndicateFacet, () => {const currentSyndicateFacet = __SYNDICATE__.Turn.activeFacet;});`); - }); - it('without facet, empty body', () => { - expect(translateNoErrors(`stop {}`)).toBe( - `__SYNDICATE__.Turn.active._stop(currentSyndicateFacet, () => {const currentSyndicateFacet = __SYNDICATE__.Turn.activeFacet;});`); - }); - it('without facet, non-empty body', () => { - expect(translateNoErrors(`stop { a; b; }`)).toBe( - `__SYNDICATE__.Turn.active._stop(currentSyndicateFacet, () => {const currentSyndicateFacet = __SYNDICATE__.Turn.activeFacet; a; b; });`); - }); - it('with facet, without body', () => { - expect(translateNoErrors(`stop x.y;`)).toBe( - `__SYNDICATE__.Turn.active._stop(x.y, () => {const currentSyndicateFacet = __SYNDICATE__.Turn.activeFacet;});`); - }); - it('with facet, empty body', () => { - expect(translateNoErrors(`stop x.y {}`)).toBe( - `__SYNDICATE__.Turn.active._stop(x.y, () => {const currentSyndicateFacet = __SYNDICATE__.Turn.activeFacet;});`); - }); - it('with facet, non-empty body', () => { - expect(translateNoErrors(`stop x.y { a; b; }`)).toBe( - `__SYNDICATE__.Turn.active._stop(x.y, () => {const currentSyndicateFacet = __SYNDICATE__.Turn.activeFacet; a; b; });`); - }); - it('nested stop, no labels', () => { - expect(translateNoErrors(`stop { stop; }`)).toBe( - `__SYNDICATE__.Turn.active._stop(currentSyndicateFacet, () => {const currentSyndicateFacet = __SYNDICATE__.Turn.activeFacet; __SYNDICATE__.Turn.active._stop(currentSyndicateFacet, () => {const currentSyndicateFacet = __SYNDICATE__.Turn.activeFacet;}); });`); - }); + + it('non-statement', () => expectCodeEqual(`stop`, `stop`)); + + it('without facet, without body', () => expectCodeEqual(`stop;`, ` +__SYNDICATE__.Turn.active._stop(currentSyndicateFacet, () => { + const currentSyndicateFacet = __SYNDICATE__.Turn.activeFacet; +});`)); + + it('without facet, empty body', () => expectCodeEqual(`stop {}`, ` +__SYNDICATE__.Turn.active._stop(currentSyndicateFacet, () => { + const currentSyndicateFacet = __SYNDICATE__.Turn.activeFacet; +});`)); + + it('without facet, non-empty body', () => expectCodeEqual(`stop { a; b; }`, ` +__SYNDICATE__.Turn.active._stop(currentSyndicateFacet, () => { + const currentSyndicateFacet = __SYNDICATE__.Turn.activeFacet; + a; b; +});`)); + + it('with facet, without body', () => expectCodeEqual(`stop x.y;`, ` +__SYNDICATE__.Turn.active._stop(x.y, () => { + const currentSyndicateFacet = __SYNDICATE__.Turn.activeFacet; +});`)); + + it('with facet, empty body', () => expectCodeEqual(`stop x.y {}`, ` +__SYNDICATE__.Turn.active._stop(x.y, () => { + const currentSyndicateFacet = __SYNDICATE__.Turn.activeFacet; +});`)); + + it('with facet, non-empty body', () => expectCodeEqual(`stop x.y { a; b; }`, ` +__SYNDICATE__.Turn.active._stop(x.y, () => { + const currentSyndicateFacet = __SYNDICATE__.Turn.activeFacet; + a; b; +});`)); + + it('nested stop, no labels', () => expectCodeEqual(`stop { stop; }`, ` +__SYNDICATE__.Turn.active._stop(currentSyndicateFacet, () => { + const currentSyndicateFacet = __SYNDICATE__.Turn.activeFacet; + __SYNDICATE__.Turn.active._stop(currentSyndicateFacet, () => { + const currentSyndicateFacet = __SYNDICATE__.Turn.activeFacet; + }); +});`)); + }); describe('during', () => { - it('stop in body', () => { - expect(translateNoErrors(`during P => { a; stop; b; }`)).toBe( - `__SYNDICATE__.Turn.active.assertDataflow(() => ({ target: currentSyndicateTarget, assertion: __SYNDICATE__.Observe({ - pattern: __SYNDICATE__.QuasiValue.finish((__SYNDICATE__.QuasiValue.lit(__SYNDICATE__.fromJS(P)))), - observer: __SYNDICATE__.Turn.ref(__SYNDICATE__.assertionFacetObserver( - (__vs) => { - if (Array.isArray(__vs)) { - a; __SYNDICATE__.Turn.active._stop(currentSyndicateFacet, () => {const currentSyndicateFacet = __SYNDICATE__.Turn.activeFacet;}); b; - } + it('stop in body', () => expectCodeEqual(`during P => { a; stop; b; }`, ` +__SYNDICATE__.Turn.active.assertDataflow(() => ({ + target: currentSyndicateTarget, + assertion: __SYNDICATE__.Observe({ + pattern: __SYNDICATE__.QuasiValue.finish((__SYNDICATE__.QuasiValue.lit(__SYNDICATE__.fromJS(P)))), + observer: __SYNDICATE__.Turn.ref(__SYNDICATE__.assertionFacetObserver( + (__vs) => { + if (Array.isArray(__vs)) { + + a; + __SYNDICATE__.Turn.active._stop(currentSyndicateFacet, () => { + const currentSyndicateFacet = __SYNDICATE__.Turn.activeFacet; + }); + b; } - )) - }) }));`); - }); + } + )) + }) +}));`)); + }); describe('once', () => { - it('basics with block', () => { - expect(translateNoErrors(`once asserted P => { a; b; }`)).toBe( - `__SYNDICATE__.Turn.active.facet(() => {const __once_facet = __SYNDICATE__.Turn.activeFacet; __SYNDICATE__.Turn.active.assertDataflow(() => ({ - target: currentSyndicateTarget, - assertion: __SYNDICATE__.Observe({ + it('basics with block', () => expectCodeEqual(`once asserted P => { a; b; }`, ` +__SYNDICATE__.Turn.active.facet(() => { + const __once_facet = __SYNDICATE__.Turn.activeFacet; + __SYNDICATE__.Turn.active.assertDataflow(() => ({ + target: currentSyndicateTarget, + assertion: __SYNDICATE__.Observe({ pattern: __SYNDICATE__.QuasiValue.finish((__SYNDICATE__.QuasiValue.lit(__SYNDICATE__.fromJS(P)))), observer: __SYNDICATE__.Turn.ref({ - assert: (__vs, __handle) => { - if (Array.isArray(__vs)) { + assert: (__vs, __handle) => { + if (Array.isArray(__vs)) { - __SYNDICATE__.Turn.active._stop(__once_facet, () => { a; b; }) - } + __SYNDICATE__.Turn.active._stop(__once_facet, () => { a; b; }) } - }), + } + }), }), - }));});`); - }); - it('basics with statement', () => { - expect(translateNoErrors(`once asserted P => x;`)).toBe( - `__SYNDICATE__.Turn.active.facet(() => {const __once_facet = __SYNDICATE__.Turn.activeFacet; __SYNDICATE__.Turn.active.assertDataflow(() => ({ - target: currentSyndicateTarget, - assertion: __SYNDICATE__.Observe({ + })); +});`)); + + it('basics with statement', () => expectCodeEqual(`once asserted P => x;`, ` +__SYNDICATE__.Turn.active.facet(() => { + const __once_facet = __SYNDICATE__.Turn.activeFacet; + __SYNDICATE__.Turn.active.assertDataflow(() => ({ + target: currentSyndicateTarget, + assertion: __SYNDICATE__.Observe({ pattern: __SYNDICATE__.QuasiValue.finish((__SYNDICATE__.QuasiValue.lit(__SYNDICATE__.fromJS(P)))), observer: __SYNDICATE__.Turn.ref({ - assert: (__vs, __handle) => { - if (Array.isArray(__vs)) { + assert: (__vs, __handle) => { + if (Array.isArray(__vs)) { - __SYNDICATE__.Turn.active._stop(__once_facet, () => {x;}) - } + __SYNDICATE__.Turn.active._stop(__once_facet, () => {x;}) } - }), + } + }), }), - }));});`); - }); + })); +});`)); + }); diff --git a/yarn.lock b/yarn.lock index 936ae59..9e21e88 100644 --- a/yarn.lock +++ b/yarn.lock @@ -307,6 +307,18 @@ resolved "https://registry.yarnpkg.com/@hutson/parse-repository-url/-/parse-repository-url-3.0.2.tgz#98c23c950a3d9b6c8f0daed06da6c3af06981340" integrity sha512-H9XAx3hc0BQHY6l+IFSWHDySypcXsvsuLhgYLUGywmJ5pswRVQJUHpOsobnLYp2ZUaUlKiKDrgWWhosOwAEM8Q== +"@isaacs/cliui@^8.0.2": + version "8.0.2" + resolved "https://registry.yarnpkg.com/@isaacs/cliui/-/cliui-8.0.2.tgz#b37667b7bc181c168782259bab42474fbf52b550" + integrity sha512-O8jcjabXaleOG9DQ0+ARXWZBTfnP4WNAqzuiJK7ll44AmxGKv/J2M4TPjxjY3znBCfvBXFzucm1twdyFybFqEA== + dependencies: + string-width "^5.1.2" + string-width-cjs "npm:string-width@^4.2.0" + strip-ansi "^7.0.1" + strip-ansi-cjs "npm:strip-ansi@^6.0.1" + wrap-ansi "^8.1.0" + wrap-ansi-cjs "npm:wrap-ansi@^7.0.0" + "@istanbuljs/load-nyc-config@^1.0.0": version "1.1.0" resolved "https://registry.yarnpkg.com/@istanbuljs/load-nyc-config/-/load-nyc-config-1.1.0.tgz#fd3db1d59ecf7cf121e80650bb86712f9b55eced" @@ -1403,6 +1415,16 @@ dependencies: "@octokit/openapi-types" "^12.11.0" +"@one-ini/wasm@0.1.1": + version "0.1.1" + resolved "https://registry.yarnpkg.com/@one-ini/wasm/-/wasm-0.1.1.tgz#6013659736c9dbfccc96e8a9c2b3de317df39323" + integrity sha512-XuySG1E38YScSJoMlqovLru4KTUNSjgVTIjyh7qMX6aNN5HY5Ct5LhRJdxO79JtTzKfzV/bnWpz+zquYrISsvw== + +"@pkgjs/parseargs@^0.11.0": + version "0.11.0" + resolved "https://registry.yarnpkg.com/@pkgjs/parseargs/-/parseargs-0.11.0.tgz#a77ea742fab25775145434eb1d2328cf5013ac33" + integrity sha512-+1VkjdD0QBLPodGrJUeqarH8VAIvQODIbwh9XpP5Syisf7YoQgsJKPNFoqqLQlu+VQ/tVSshMR6loPMn8U+dPg== + "@preserves/core@0.995.0", "@preserves/core@^0.995.0": version "0.995.0" resolved "https://registry.yarnpkg.com/@preserves/core/-/core-0.995.0.tgz#d6badccd1fe56e45f23e01b4c8a33f421749e76b" @@ -1568,6 +1590,11 @@ jest-matcher-utils "^27.0.0" pretty-format "^27.0.0" +"@types/js-beautify@1.14": + version "1.14.3" + resolved "https://registry.yarnpkg.com/@types/js-beautify/-/js-beautify-1.14.3.tgz#6ced76f79935e37e0d613110dea369881d93c1ff" + integrity sha512-FMbQHz+qd9DoGvgLHxeqqVPaNRffpIu5ZjozwV8hf9JAGpIOzuAf4wGbRSo8LNITHqGjmmVjaMggTT5P4v4IHg== + "@types/minimatch@*": version "5.1.2" resolved "https://registry.yarnpkg.com/@types/minimatch/-/minimatch-5.1.2.tgz#07508b45797cb81ec3f273011b054cd0755eddca" @@ -1676,6 +1703,11 @@ abbrev@1: resolved "https://registry.yarnpkg.com/abbrev/-/abbrev-1.1.1.tgz#f8f2c887ad10bf67f634f005b6987fed3179aac8" integrity sha512-nne9/IiQ/hzIhY6pdDnbBtz7DjPTKrY00P/zvPSm5pOFkl6xuGrGnXn/VtTNNfNtAfZ9/1RtehkszU9qcTii0Q== +abbrev@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/abbrev/-/abbrev-2.0.0.tgz#cf59829b8b4f03f89dda2771cb7f3653828c89bf" + integrity sha512-6/mh1E2u2YgEsCHdY0Yx5oW+61gZU+1vXaoiHHrpKeuRNNgFvS+/jrwHiQhB5apAf5oB7UB7E19ol2R2LKH8hQ== + acorn-globals@^6.0.0: version "6.0.0" resolved "https://registry.yarnpkg.com/acorn-globals/-/acorn-globals-6.0.0.tgz#46cdd39f0f8ff08a876619b55f5ac8a6dc770b45" @@ -1758,6 +1790,11 @@ ansi-regex@^5.0.1: resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-5.0.1.tgz#082cb2c89c9fe8659a311a53bd6a4dc5301db304" integrity sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ== +ansi-regex@^6.0.1: + version "6.0.1" + resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-6.0.1.tgz#3183e38fae9a65d7cb5e53945cd5897d0260a06a" + integrity sha512-n5M855fKb2SsfMIiFFoVrABHJC8QtHwVx+mHWP3QcEqBHYienj5dHSgjbxtC0WEZXYt4wcD6zrQElDPhFuZgfA== + ansi-styles@^3.2.1: version "3.2.1" resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-3.2.1.tgz#41fbb20243e50b12be0f04b8dedbf07520ce841d" @@ -1777,6 +1814,11 @@ ansi-styles@^5.0.0: resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-5.2.0.tgz#07449690ad45777d1924ac2abb2fc8895dba836b" integrity sha512-Cxwpt2SfTzTtXcfOlzGEee8O+c+MmUgGrNiBcXnuWxuFJHe6a5Hz7qwhwe5OgaSYI0IJvkLqWX1ASG+cJOkEiA== +ansi-styles@^6.1.0: + version "6.2.1" + resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-6.2.1.tgz#0e62320cf99c21afff3b3012192546aacbfb05c5" + integrity sha512-bN798gFfQX+viw3R7yrGWRqnrN2oRkEkUjjl4JNn4E8GxxbjtG3FbrEIIY3l8/hrwUwIeCZvi4QuOTP4MErVug== + anymatch@^3.0.3, anymatch@~3.1.2: version "3.1.3" resolved "https://registry.yarnpkg.com/anymatch/-/anymatch-3.1.3.tgz#790c58b19ba1720a84205b57c618d5ad8524973e" @@ -2031,6 +2073,13 @@ brace-expansion@^1.1.7: balanced-match "^1.0.0" concat-map "0.0.1" +brace-expansion@^2.0.1: + version "2.0.1" + resolved "https://registry.yarnpkg.com/brace-expansion/-/brace-expansion-2.0.1.tgz#1edc459e0f0c548486ecf9fc99f2221364b9a0ae" + integrity sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA== + dependencies: + balanced-match "^1.0.0" + braces@^3.0.2, braces@~3.0.2: version "3.0.2" resolved "https://registry.yarnpkg.com/braces/-/braces-3.0.2.tgz#3454e1a462ee8d599e236df336cd9ea4f8afe107" @@ -2346,6 +2395,11 @@ combined-stream@^1.0.6, combined-stream@^1.0.8, combined-stream@~1.0.6: dependencies: delayed-stream "~1.0.0" +commander@^10.0.0: + version "10.0.1" + resolved "https://registry.yarnpkg.com/commander/-/commander-10.0.1.tgz#881ee46b4f77d1c1dccc5823433aa39b022cbe06" + integrity sha512-y4Mg2tXshplEbSGzx7amzPwKKOCGuoSRP/CjEdwwk0FOGlUbq6lKuoyDZTNZkmxHdJtp54hdfY/JUrdL7Xfdug== + commander@^2.20.0: version "2.20.3" resolved "https://registry.yarnpkg.com/commander/-/commander-2.20.3.tgz#fd485e84c03eb4881c20722ba48035e8531aeb33" @@ -2379,7 +2433,7 @@ concat-stream@^2.0.0: readable-stream "^3.0.2" typedarray "^0.0.6" -config-chain@^1.1.12: +config-chain@^1.1.12, config-chain@^1.1.13: version "1.1.13" resolved "https://registry.yarnpkg.com/config-chain/-/config-chain-1.1.13.tgz#fad0795aa6a6cdaff9ed1b68e9dff94372c232f4" integrity sha512-qj+f8APARXHrM0hraqXYb2/bOVSV4PvJQlNZ/DVj0QrmNM2q2euizkeuVckQ57J+W0mRH6Hvi+k50M4Jul2VRQ== @@ -2510,7 +2564,7 @@ create-require@^1.1.0: resolved "https://registry.yarnpkg.com/create-require/-/create-require-1.1.1.tgz#c1d7e8f1e5f6cfc9ff65f9cd352d37348756c333" integrity sha512-dcKFX3jn0MpIaXjisoRvexIJVEKzaq7z2rZKxf+MSr9TkdmHmsU4m2lcLojrj/FHl8mk5VxMmYA+ftRkP/3oKQ== -cross-spawn@^7.0.3: +cross-spawn@^7.0.0, cross-spawn@^7.0.3: version "7.0.3" resolved "https://registry.yarnpkg.com/cross-spawn/-/cross-spawn-7.0.3.tgz#f73a85b9d5d41d045551c177e2882d4ac85728a6" integrity sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w== @@ -2614,7 +2668,7 @@ defaults@^1.0.3: dependencies: clone "^1.0.2" -define-data-property@^1.0.1, define-data-property@^1.1.2, define-data-property@^1.1.4: +define-data-property@^1.0.1, define-data-property@^1.1.4: version "1.1.4" resolved "https://registry.yarnpkg.com/define-data-property/-/define-data-property-1.1.4.tgz#894dc141bb7d3060ae4366f6a0107e68fbe48c5e" integrity sha512-rBMvIzlpA8v6E+SJZoo++HAYqsLrkg7MSfIinMPFhmkorw7X+dOXVJQs+QT69zGkzMyfDnIMN2Wid1+NbL3T+A== @@ -2727,6 +2781,11 @@ dynamic-dedupe@^0.3.0: dependencies: xtend "^4.0.0" +eastasianwidth@^0.2.0: + version "0.2.0" + resolved "https://registry.yarnpkg.com/eastasianwidth/-/eastasianwidth-0.2.0.tgz#696ce2ec0aa0e6ea93a397ffcf24aa7840c827cb" + integrity sha512-I88TYZWc9XiYHRQ4/3c5rjjfgkjhLyW2luGIheGERbNQ6OY7yTybanSpDXZa8y7VUP9YmDcYa+eyq4ca7iLqWA== + ecc-jsbn@~0.1.1: version "0.1.2" resolved "https://registry.yarnpkg.com/ecc-jsbn/-/ecc-jsbn-0.1.2.tgz#3a83a904e54353287874c564b7549386849a98c9" @@ -2735,10 +2794,20 @@ ecc-jsbn@~0.1.1: jsbn "~0.1.0" safer-buffer "^2.1.0" +editorconfig@^1.0.4: + version "1.0.4" + resolved "https://registry.yarnpkg.com/editorconfig/-/editorconfig-1.0.4.tgz#040c9a8e9a6c5288388b87c2db07028aa89f53a3" + integrity sha512-L9Qe08KWTlqYMVvMcTIvMAdl1cDUubzRNYL+WfA4bLDMHe4nemKkpmYzkznE1FwLKu0EEmy6obgQKzMJrg4x9Q== + dependencies: + "@one-ini/wasm" "0.1.1" + commander "^10.0.0" + minimatch "9.0.1" + semver "^7.5.3" + electron-to-chromium@^1.4.668: - version "1.4.698" - resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.4.698.tgz#0b3992ad3b572b646ce3f22e0145eab4abc559a7" - integrity sha512-f9iZD1t3CLy1AS6vzM5EKGa6p9pRcOeEFXRFbaG2Ta+Oe7MkfRQ3fsvPYidzHe1h4i0JvIvpcY55C+B6BZNGtQ== + version "1.4.699" + resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.4.699.tgz#dd53c939e13da64e94b341e563f0a3011b4ef0e9" + integrity sha512-I7q3BbQi6e4tJJN5CRcyvxhK0iJb34TV8eJQcgh+fR2fQ8miMgZcEInckCo1U9exDHbfz7DLDnFn8oqH/VcRKw== emittery@^0.8.1: version "0.8.1" @@ -2750,6 +2819,11 @@ emoji-regex@^8.0.0: resolved "https://registry.yarnpkg.com/emoji-regex/-/emoji-regex-8.0.0.tgz#e818fd69ce5ccfcb404594f842963bf53164cc37" integrity sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A== +emoji-regex@^9.2.2: + version "9.2.2" + resolved "https://registry.yarnpkg.com/emoji-regex/-/emoji-regex-9.2.2.tgz#840c8803b0d8047f4ff0cf963176b32d4ef3ed72" + integrity sha512-L18DaJsXSUk2+42pv8mLs5jJT2hqFkFE4j21wOmgbUqsZ2hL72NsUU785g9RXgo3s0ZNgVl42TiHp3ZtOv/Vyg== + encoding@^0.1.12: version "0.1.13" resolved "https://registry.yarnpkg.com/encoding/-/encoding-0.1.13.tgz#56574afdd791f54a8e9b2785c0582a2d26210fa9" @@ -3047,6 +3121,14 @@ for-each@^0.3.3: dependencies: is-callable "^1.1.3" +foreground-child@^3.1.0: + version "3.1.1" + resolved "https://registry.yarnpkg.com/foreground-child/-/foreground-child-3.1.1.tgz#1d173e776d75d2772fed08efe4a0de1ea1b12d0d" + integrity sha512-TMKDUnIte6bfb5nWv7V/caI169OHgvwjb7V4WkeUvbQQdjr5rWKqHFiKWb/fcOwB+CzBT+qbWjvj+DVwRskpIg== + dependencies: + cross-spawn "^7.0.0" + signal-exit "^4.0.1" + forever-agent@~0.6.1: version "0.6.1" resolved "https://registry.yarnpkg.com/forever-agent/-/forever-agent-0.6.1.tgz#fbc71f0c41adeb37f96c577ad1ed42d8fdacca91" @@ -3158,7 +3240,7 @@ get-caller-file@^2.0.5: resolved "https://registry.yarnpkg.com/get-caller-file/-/get-caller-file-2.0.5.tgz#4f94412a82db32f36e3b0b9741f8a97feb031f7e" integrity sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg== -get-intrinsic@^1.1.3, get-intrinsic@^1.2.1, get-intrinsic@^1.2.2, get-intrinsic@^1.2.3, get-intrinsic@^1.2.4: +get-intrinsic@^1.1.3, get-intrinsic@^1.2.1, get-intrinsic@^1.2.3, get-intrinsic@^1.2.4: version "1.2.4" resolved "https://registry.yarnpkg.com/get-intrinsic/-/get-intrinsic-1.2.4.tgz#e385f5a4b5227d449c3eabbad05494ef0abbeadd" integrity sha512-5uYhsJH8VJBTv7oslg4BznJYhDoRI6waYCxMmCdnTrcCrHA/fCFKoTFz2JKKE0HdDFUF7/oQuhzumXJK7paBRQ== @@ -3266,6 +3348,17 @@ glob-parent@^5.1.1, glob-parent@^5.1.2, glob-parent@~5.1.2: dependencies: is-glob "^4.0.1" +glob@^10.3.3: + version "10.3.10" + resolved "https://registry.yarnpkg.com/glob/-/glob-10.3.10.tgz#0351ebb809fd187fe421ab96af83d3a70715df4b" + integrity sha512-fa46+tv1Ak0UPK1TOy/pZrIybNNt4HCv7SDzwyfiOZkvZLEbjsZkJBPtDHVshZjbecAoAGSC20MjLDG/qr679g== + dependencies: + foreground-child "^3.1.0" + jackspeak "^2.3.5" + minimatch "^9.0.1" + minipass "^5.0.0 || ^6.0.2 || ^7.0.0" + path-scurry "^1.10.1" + glob@^7.1, glob@^7.1.1, glob@^7.1.2, glob@^7.1.3, glob@^7.1.4, glob@^7.1.6: version "7.2.3" resolved "https://registry.yarnpkg.com/glob/-/glob-7.2.3.tgz#b8df0fb802bbfa8e89bd1d938b4e16578ed44f2b" @@ -3359,7 +3452,7 @@ has-flag@^4.0.0: resolved "https://registry.yarnpkg.com/has-flag/-/has-flag-4.0.0.tgz#944771fd9c81c81265c4d6941860da06bb59479b" integrity sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ== -has-property-descriptors@^1.0.0, has-property-descriptors@^1.0.1, has-property-descriptors@^1.0.2: +has-property-descriptors@^1.0.0, has-property-descriptors@^1.0.2: version "1.0.2" resolved "https://registry.yarnpkg.com/has-property-descriptors/-/has-property-descriptors-1.0.2.tgz#963ed7d071dc7bf5f084c5bfbe0d1b6222586854" integrity sha512-55JNKuIW+vq4Ke1BjOTjM2YctQIvCT7GFzHwmfZPGo5wnrgkid0YQtnAleFSqumZm4az3n2BS+erby5ipJdgrg== @@ -3876,6 +3969,15 @@ istanbul-reports@^3.1.3: html-escaper "^2.0.0" istanbul-lib-report "^3.0.0" +jackspeak@^2.3.5: + version "2.3.6" + resolved "https://registry.yarnpkg.com/jackspeak/-/jackspeak-2.3.6.tgz#647ecc472238aee4b06ac0e461acc21a8c505ca8" + integrity sha512-N3yCS/NegsOBokc8GAdM8UcmfsKiSS8cipheD/nivzr700H+nsMOxJjQnvwOcRYVuFkdH0wGUvW2WbXGmrZGbQ== + dependencies: + "@isaacs/cliui" "^8.0.2" + optionalDependencies: + "@pkgjs/parseargs" "^0.11.0" + jest-changed-files@^27.5.1: version "27.5.1" resolved "https://registry.yarnpkg.com/jest-changed-files/-/jest-changed-files-27.5.1.tgz#a348aed00ec9bf671cc58a66fcbe7c3dfd6a68f5" @@ -4290,6 +4392,22 @@ jest@^27.4: import-local "^3.0.2" jest-cli "^27.5.1" +js-beautify@1.15: + version "1.15.1" + resolved "https://registry.yarnpkg.com/js-beautify/-/js-beautify-1.15.1.tgz#4695afb508c324e1084ee0b952a102023fc65b64" + integrity sha512-ESjNzSlt/sWE8sciZH8kBF8BPlwXPwhR6pWKAw8bw4Bwj+iZcnKW6ONWUutJ7eObuBZQpiIb8S7OYspWrKt7rA== + dependencies: + config-chain "^1.1.13" + editorconfig "^1.0.4" + glob "^10.3.3" + js-cookie "^3.0.5" + nopt "^7.2.0" + +js-cookie@^3.0.5: + version "3.0.5" + resolved "https://registry.yarnpkg.com/js-cookie/-/js-cookie-3.0.5.tgz#0b7e2fd0c01552c58ba86e0841f94dc2557dcdbc" + integrity sha512-cEiJEAEoIbWfCZYKWhVwFuvPX1gETRYPw6LlaTKoxD3s2AkXzkCjnp6h0V77ozyqj0jakteJ4YqDJT830+lVGw== + js-tokens@^4.0.0: version "4.0.0" resolved "https://registry.yarnpkg.com/js-tokens/-/js-tokens-4.0.0.tgz#19203fb59991df98e3a287050d4647cdeaf32499" @@ -4559,6 +4677,11 @@ lru-cache@^6.0.0: dependencies: yallist "^4.0.0" +"lru-cache@^9.1.1 || ^10.0.0": + version "10.2.0" + resolved "https://registry.yarnpkg.com/lru-cache/-/lru-cache-10.2.0.tgz#0bd445ca57363465900f4d1f9bd8db343a4d95c3" + integrity sha512-2bIM8x+VAf6JT4bKAljS1qUWgMsqZRPGJS6FSahIMPVvctcNhyVp7AJu7quxOW9jwkryBReKZY5tY5JYv2n/7Q== + make-dir@^2.1.0: version "2.1.0" resolved "https://registry.yarnpkg.com/make-dir/-/make-dir-2.1.0.tgz#5f0310e18b8be898cc07009295a30ae41e91e6f5" @@ -4703,6 +4826,13 @@ min-indent@^1.0.0: resolved "https://registry.yarnpkg.com/min-indent/-/min-indent-1.0.1.tgz#a63f681673b30571fbe8bc25686ae746eefa9869" integrity sha512-I9jwMn07Sy/IwOj3zVkVik2JTvgpaykDZEigL6Rx6N9LbMywwUSMtxET+7lVoDLLd3O3IXwJwvuuns8UB/HeAg== +minimatch@9.0.1: + version "9.0.1" + resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-9.0.1.tgz#8a555f541cf976c622daf078bb28f29fb927c253" + integrity sha512-0jWhJpD/MdhPXwPuiRkCbfYfSKp2qnn2eOc279qI7f+osl/l+prKSrvhg157zSYvx/1nmgn2NqdT6k2Z7zSH9w== + dependencies: + brace-expansion "^2.0.1" + minimatch@^3.0, minimatch@^3.0.4, minimatch@^3.1.1: version "3.1.2" resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-3.1.2.tgz#19cd194bfd3e428f049a70817c038d89ab4be35b" @@ -4710,6 +4840,13 @@ minimatch@^3.0, minimatch@^3.0.4, minimatch@^3.1.1: dependencies: brace-expansion "^1.1.7" +minimatch@^9.0.1: + version "9.0.3" + resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-9.0.3.tgz#a6e00c3de44c3a542bfaae70abfc22420a6da825" + integrity sha512-RHiac9mvaRw0x3AYRgDC1CxAP7HTcNrrECeA8YYJeWnpo+2Q5CegtZjaotWTWxDG3UeGA1coE05iH1mPjT/2mg== + dependencies: + brace-expansion "^2.0.1" + minimist-options@4.1.0: version "4.1.0" resolved "https://registry.yarnpkg.com/minimist-options/-/minimist-options-4.1.0.tgz#c0655713c53a8a2ebd77ffa247d342c40f010619" @@ -4791,6 +4928,11 @@ minipass@^5.0.0: resolved "https://registry.yarnpkg.com/minipass/-/minipass-5.0.0.tgz#3e9788ffb90b694a5d0ec94479a45b5d8738133d" integrity sha512-3FnjYuehv9k6ovOEbyOswadCDPX1piCfhV8ncmYtHOjuPwylVWsghTLo7rabjC3Rx5xD4HDx8Wm1xnMF7S5qFQ== +"minipass@^5.0.0 || ^6.0.2 || ^7.0.0": + version "7.0.4" + resolved "https://registry.yarnpkg.com/minipass/-/minipass-7.0.4.tgz#dbce03740f50a4786ba994c1fb908844d27b038c" + integrity sha512-jYofLM5Dam9279rdkWzqHozUo4ybjdZmCsDHePy5V/PbBcVMiSZR97gmAy45aqi8CK1lG2ECd356FU86avfwUQ== + minizlib@^1.3.3: version "1.3.3" resolved "https://registry.yarnpkg.com/minizlib/-/minizlib-1.3.3.tgz#2290de96818a34c29551c8a8d301216bd65a861d" @@ -4938,6 +5080,13 @@ nopt@^5.0.0: dependencies: abbrev "1" +nopt@^7.2.0: + version "7.2.0" + resolved "https://registry.yarnpkg.com/nopt/-/nopt-7.2.0.tgz#067378c68116f602f552876194fd11f1292503d7" + integrity sha512-CVDtwCdhYIvnAzFoJ6NJ6dX3oga9/HyciQDnG1vQDjSLMeKLJ4A93ZqYKDrgYSr1FBY5/hMYC+2VCi24pgpkGA== + dependencies: + abbrev "^2.0.0" + normalize-package-data@^2.0.0, normalize-package-data@^2.3.2, normalize-package-data@^2.5.0: version "2.5.0" resolved "https://registry.yarnpkg.com/normalize-package-data/-/normalize-package-data-2.5.0.tgz#e66db1838b200c1dfc233225d12cb36520e234a8" @@ -5343,6 +5492,14 @@ path-parse@^1.0.7: resolved "https://registry.yarnpkg.com/path-parse/-/path-parse-1.0.7.tgz#fbc114b60ca42b30d9daf5858e4bd68bbedb6735" integrity sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw== +path-scurry@^1.10.1: + version "1.10.1" + resolved "https://registry.yarnpkg.com/path-scurry/-/path-scurry-1.10.1.tgz#9ba6bf5aa8500fe9fd67df4f0d9483b2b0bfc698" + integrity sha512-MkhCqzzBEpPvxxQ71Md0b1Kk51W01lrYvlMzSUaIzNsODdd7mqhiimSZlr+VegAz5Z6Vzt9Xg2ttE//XBhH3EQ== + dependencies: + lru-cache "^9.1.1 || ^10.0.0" + minipass "^5.0.0 || ^6.0.2 || ^7.0.0" + path-type@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/path-type/-/path-type-3.0.0.tgz#cef31dc8e0a1a3bb0d105c0cd97cf3bf47f4e36f" @@ -5824,12 +5981,12 @@ rxjs@^6.6.0: tslib "^1.9.0" safe-array-concat@^1.0.0, safe-array-concat@^1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/safe-array-concat/-/safe-array-concat-1.1.0.tgz#8d0cae9cb806d6d1c06e08ab13d847293ebe0692" - integrity sha512-ZdQ0Jeb9Ofti4hbt5lX3T2JcAamT9hfzYU1MNB+z/jaEbB6wfFfPIR/zEORmZqobkCCJhSjodobH6WHNmJ97dg== + version "1.1.2" + resolved "https://registry.yarnpkg.com/safe-array-concat/-/safe-array-concat-1.1.2.tgz#81d77ee0c4e8b863635227c721278dd524c20edb" + integrity sha512-vj6RsCsWBCf19jIeHEfkRMw8DPiBb+DMXklQ/1SGDHOMlHdPUkZXFQ2YdplS23zESTijAcurb1aSgJA3AgMu1Q== dependencies: - call-bind "^1.0.5" - get-intrinsic "^1.2.2" + call-bind "^1.0.7" + get-intrinsic "^1.2.4" has-symbols "^1.0.3" isarray "^2.0.5" @@ -5899,16 +6056,16 @@ set-blocking@~2.0.0: integrity sha512-KiKBS8AnWGEyLzofFfmvKwpdPzqiy16LvQfK3yv/fVH7Bj13/wl3JSR1J+rfgRE9q7xUJK4qvgS8raSOeLUehw== set-function-length@^1.2.1: - version "1.2.1" - resolved "https://registry.yarnpkg.com/set-function-length/-/set-function-length-1.2.1.tgz#47cc5945f2c771e2cf261c6737cf9684a2a5e425" - integrity sha512-j4t6ccc+VsKwYHso+kElc5neZpjtq9EnRICFZtWyBsLojhmeF/ZBd/elqm22WJh/BziDe/SBiOeAt0m2mfLD0g== + version "1.2.2" + resolved "https://registry.yarnpkg.com/set-function-length/-/set-function-length-1.2.2.tgz#aac72314198eaed975cf77b2c3b6b880695e5449" + integrity sha512-pgRc4hJ4/sNjWCSS9AmnS40x3bNMDTknHgL5UaMBTMyJnU90EgWh1Rz+MC9eFu4BuN/UwZjKQuY/1v3rM7HMfg== dependencies: - define-data-property "^1.1.2" + define-data-property "^1.1.4" es-errors "^1.3.0" function-bind "^1.1.2" - get-intrinsic "^1.2.3" + get-intrinsic "^1.2.4" gopd "^1.0.1" - has-property-descriptors "^1.0.1" + has-property-descriptors "^1.0.2" set-function-name@^2.0.1: version "2.0.2" @@ -5959,6 +6116,11 @@ signal-exit@^3.0.0, signal-exit@^3.0.2, signal-exit@^3.0.3: resolved "https://registry.yarnpkg.com/signal-exit/-/signal-exit-3.0.7.tgz#a9a1767f8af84155114eaabd73f99273c8f59ad9" integrity sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ== +signal-exit@^4.0.1: + version "4.1.0" + resolved "https://registry.yarnpkg.com/signal-exit/-/signal-exit-4.1.0.tgz#952188c1cbd546070e2dd20d0f41c0ae0530cb04" + integrity sha512-bzyZ1e88w9O1iNJbKnOlvYTrWPDl46O1bG0D3XInv+9tkPrxrN8jUUTiFlDkkmKWgn1M6CfIA13SuGqOa9Korw== + sisteransi@^1.0.5: version "1.0.5" resolved "https://registry.yarnpkg.com/sisteransi/-/sisteransi-1.0.5.tgz#134d681297756437cc05ca01370d3a7a571075ed" @@ -6142,6 +6304,15 @@ string-length@^4.0.1: char-regex "^1.0.2" strip-ansi "^6.0.0" +"string-width-cjs@npm:string-width@^4.2.0", "string-width@^1.0.2 || 2 || 3 || 4", string-width@^4.1.0, string-width@^4.2.0: + version "4.2.3" + resolved "https://registry.yarnpkg.com/string-width/-/string-width-4.2.3.tgz#269c7117d27b05ad2e536830a8ec895ef9c6d010" + integrity sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g== + dependencies: + emoji-regex "^8.0.0" + is-fullwidth-code-point "^3.0.0" + strip-ansi "^6.0.1" + string-width@^1.0.1: version "1.0.2" resolved "https://registry.yarnpkg.com/string-width/-/string-width-1.0.2.tgz#118bdf5b8cdc51a2a7e70d211e07e2b0b9b107d3" @@ -6151,14 +6322,14 @@ string-width@^1.0.1: is-fullwidth-code-point "^1.0.0" strip-ansi "^3.0.0" -"string-width@^1.0.2 || 2 || 3 || 4", string-width@^4.1.0, string-width@^4.2.0: - version "4.2.3" - resolved "https://registry.yarnpkg.com/string-width/-/string-width-4.2.3.tgz#269c7117d27b05ad2e536830a8ec895ef9c6d010" - integrity sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g== +string-width@^5.0.1, string-width@^5.1.2: + version "5.1.2" + resolved "https://registry.yarnpkg.com/string-width/-/string-width-5.1.2.tgz#14f8daec6d81e7221d2a357e668cab73bdbca794" + integrity sha512-HnLOCR3vjcY8beoNLtcjZ5/nxn2afmME6lhrDrebokqMap+XbeW8n9TXpPDOqdGK5qcI3oT0GKTW6wC7EMiVqA== dependencies: - emoji-regex "^8.0.0" - is-fullwidth-code-point "^3.0.0" - strip-ansi "^6.0.1" + eastasianwidth "^0.2.0" + emoji-regex "^9.2.2" + strip-ansi "^7.0.1" string.prototype.trim@^1.2.8: version "1.2.8" @@ -6201,6 +6372,13 @@ string_decoder@~1.1.1: dependencies: safe-buffer "~5.1.0" +"strip-ansi-cjs@npm:strip-ansi@^6.0.1", strip-ansi@^6.0.0, strip-ansi@^6.0.1: + version "6.0.1" + resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-6.0.1.tgz#9e26c63d30f53443e9489495b2105d37b67a85d9" + integrity sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A== + dependencies: + ansi-regex "^5.0.1" + strip-ansi@^3.0.0, strip-ansi@^3.0.1: version "3.0.1" resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-3.0.1.tgz#6a385fb8853d952d5ff05d0e8aaf94278dc63dcf" @@ -6208,12 +6386,12 @@ strip-ansi@^3.0.0, strip-ansi@^3.0.1: dependencies: ansi-regex "^2.0.0" -strip-ansi@^6.0.0, strip-ansi@^6.0.1: - version "6.0.1" - resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-6.0.1.tgz#9e26c63d30f53443e9489495b2105d37b67a85d9" - integrity sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A== +strip-ansi@^7.0.1: + version "7.1.0" + resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-7.1.0.tgz#d5b6568ca689d8561370b0707685d22434faff45" + integrity sha512-iq6eVVI64nQQTRYq2KtEg2d2uU7LElhTJwsH4YzIHZshxlgZms/wIc4VoDQTlG/IvVIrBKG06CrZnp0qv7hkcQ== dependencies: - ansi-regex "^5.0.1" + ansi-regex "^6.0.1" strip-bom@^3.0.0: version "3.0.0" @@ -6924,7 +7102,7 @@ wordwrap@^1.0.0: resolved "https://registry.yarnpkg.com/wordwrap/-/wordwrap-1.0.0.tgz#27584810891456a4171c8d0226441ade90cbcaeb" integrity sha512-gvVzJFlPycKc5dZN4yPkP8w7Dc37BtP1yczEneOb4uq34pXZcvrtRTmWV8W+Ume+XCxKgbjM+nevkyFPMybd4Q== -wrap-ansi@^7.0.0: +"wrap-ansi-cjs@npm:wrap-ansi@^7.0.0", wrap-ansi@^7.0.0: version "7.0.0" resolved "https://registry.yarnpkg.com/wrap-ansi/-/wrap-ansi-7.0.0.tgz#67e145cff510a6a6984bdf1152911d69d2eb9e43" integrity sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q== @@ -6933,6 +7111,15 @@ wrap-ansi@^7.0.0: string-width "^4.1.0" strip-ansi "^6.0.0" +wrap-ansi@^8.1.0: + version "8.1.0" + resolved "https://registry.yarnpkg.com/wrap-ansi/-/wrap-ansi-8.1.0.tgz#56dc22368ee570face1b49819975d9b9a5ead214" + integrity sha512-si7QWI6zUMq56bESFvagtmzMdGOtoxfR+Sez11Mobfc7tm+VkUckk9bW2UeffTGVUbOksxmSw0AA2gs8g71NCQ== + dependencies: + ansi-styles "^6.1.0" + string-width "^5.0.1" + strip-ansi "^7.0.1" + wrappy@1: version "1.0.2" resolved "https://registry.yarnpkg.com/wrappy/-/wrappy-1.0.2.tgz#b5243d8f3ec1aa35f1364605bc0d1036e30ab69f" From 502c0fd28668d57855edfaffb756d3c2b6d8c056 Mon Sep 17 00:00:00 2001 From: Tony Garnock-Jones Date: Sun, 10 Mar 2024 14:26:48 +0100 Subject: [PATCH 36/92] Publish - @syndicate-lang/browser-stdenv@0.27.1 - @syndicate-lang/compiler@0.20.1 - @syndicate-lang/core@0.27.1 - @syndicate-lang/fs@0.28.1 - @syndicate-lang/html@0.28.1 - @syndicate-lang/html2@0.28.1 - @syndicate-lang/loader@0.27.1 - @syndicate-lang/service@0.28.1 - @syndicate-lang/syndicatec@0.28.1 - @syndicate-lang/timer@0.28.1 - @syndicate-lang/ts-plugin@0.28.1 - @syndicate-lang/tsc@0.28.1 - @syndicate-lang/ws-relay@0.29.1 --- packages/browser-stdenv/package.json | 10 +++++----- packages/compiler/package.json | 2 +- packages/core/package.json | 2 +- packages/fs/package.json | 10 +++++----- packages/html/package.json | 8 ++++---- packages/html2/package.json | 8 ++++---- packages/loader/package.json | 8 ++++---- packages/service/package.json | 8 ++++---- packages/syndicatec/package.json | 6 +++--- packages/timer/package.json | 8 ++++---- packages/ts-plugin/package.json | 6 +++--- packages/tsc/package.json | 6 +++--- packages/ws-relay/package.json | 8 ++++---- 13 files changed, 45 insertions(+), 45 deletions(-) diff --git a/packages/browser-stdenv/package.json b/packages/browser-stdenv/package.json index 7e48a08..6efb98b 100644 --- a/packages/browser-stdenv/package.json +++ b/packages/browser-stdenv/package.json @@ -1,6 +1,6 @@ { "name": "@syndicate-lang/browser-stdenv", - "version": "0.27.0", + "version": "0.27.1", "description": "Aggregated Syndicate and Preserves scripts for in-browser use", "homepage": "https://github.com/syndicate-lang/syndicate-js/tree/main/packages/browser-stdenv", "license": "GPL-3.0+", @@ -21,9 +21,9 @@ "dependencies": { "@preserves/core": "0.995.0", "@preserves/schema": "0.995.1", - "@syndicate-lang/compiler": "^0.20.0", - "@syndicate-lang/core": "^0.27.0", - "@syndicate-lang/html2": "^0.28.0", - "@syndicate-lang/ws-relay": "^0.29.0" + "@syndicate-lang/compiler": "^0.20.1", + "@syndicate-lang/core": "^0.27.1", + "@syndicate-lang/html2": "^0.28.1", + "@syndicate-lang/ws-relay": "^0.29.1" } } diff --git a/packages/compiler/package.json b/packages/compiler/package.json index 274493c..5eaeb1a 100644 --- a/packages/compiler/package.json +++ b/packages/compiler/package.json @@ -1,6 +1,6 @@ { "name": "@syndicate-lang/compiler", - "version": "0.20.0", + "version": "0.20.1", "description": "Syndicate/JS compiler library", "homepage": "https://github.com/syndicate-lang/syndicate-js/tree/main/packages/compiler", "license": "GPL-3.0+", diff --git a/packages/core/package.json b/packages/core/package.json index 41318b4..4f8bb36 100644 --- a/packages/core/package.json +++ b/packages/core/package.json @@ -1,6 +1,6 @@ { "name": "@syndicate-lang/core", - "version": "0.27.0", + "version": "0.27.1", "description": "Syndicate/JS for browser and node.js", "homepage": "https://github.com/syndicate-lang/syndicate-js/tree/main/packages/core", "license": "GPL-3.0+", diff --git a/packages/fs/package.json b/packages/fs/package.json index b5ce7e4..d9ee671 100644 --- a/packages/fs/package.json +++ b/packages/fs/package.json @@ -1,6 +1,6 @@ { "name": "@syndicate-lang/fs", - "version": "0.28.0", + "version": "0.28.1", "description": "Reflect contents of a portion of the file system as assertions", "homepage": "https://github.com/syndicate-lang/syndicate-js/tree/main/packages/fs", "license": "GPL-3.0+", @@ -30,13 +30,13 @@ "@preserves/core": "0.995.0" }, "dependencies": { - "@syndicate-lang/core": "^0.27.0", - "@syndicate-lang/service": "^0.28.0", + "@syndicate-lang/core": "^0.27.1", + "@syndicate-lang/service": "^0.28.1", "chokidar": "^3.5.3" }, "devDependencies": { "@preserves/schema-cli": "0.995.1", - "@syndicate-lang/ts-plugin": "^0.28.0", - "@syndicate-lang/tsc": "^0.28.0" + "@syndicate-lang/ts-plugin": "^0.28.1", + "@syndicate-lang/tsc": "^0.28.1" } } diff --git a/packages/html/package.json b/packages/html/package.json index a3e9cd9..0e32b6c 100644 --- a/packages/html/package.json +++ b/packages/html/package.json @@ -1,6 +1,6 @@ { "name": "@syndicate-lang/html", - "version": "0.28.0", + "version": "0.28.1", "description": "DOM/HTML UI for Syndicate/JS", "homepage": "https://github.com/syndicate-lang/syndicate-js/tree/main/packages/html", "license": "GPL-3.0+", @@ -25,10 +25,10 @@ "veryclean": "yarn run clean && rm -rf node_modules" }, "dependencies": { - "@syndicate-lang/core": "^0.27.0" + "@syndicate-lang/core": "^0.27.1" }, "devDependencies": { - "@syndicate-lang/ts-plugin": "^0.28.0", - "@syndicate-lang/tsc": "^0.28.0" + "@syndicate-lang/ts-plugin": "^0.28.1", + "@syndicate-lang/tsc": "^0.28.1" } } diff --git a/packages/html2/package.json b/packages/html2/package.json index d1ec3eb..d527be3 100644 --- a/packages/html2/package.json +++ b/packages/html2/package.json @@ -1,6 +1,6 @@ { "name": "@syndicate-lang/html2", - "version": "0.28.0", + "version": "0.28.1", "description": "DOM/HTML UI for Syndicate/JS", "homepage": "https://github.com/syndicate-lang/syndicate-js/tree/main/packages/html2", "license": "GPL-3.0+", @@ -25,10 +25,10 @@ "veryclean": "yarn run clean && rm -rf node_modules" }, "dependencies": { - "@syndicate-lang/core": "^0.27.0" + "@syndicate-lang/core": "^0.27.1" }, "devDependencies": { - "@syndicate-lang/ts-plugin": "^0.28.0", - "@syndicate-lang/tsc": "^0.28.0" + "@syndicate-lang/ts-plugin": "^0.28.1", + "@syndicate-lang/tsc": "^0.28.1" } } diff --git a/packages/loader/package.json b/packages/loader/package.json index 5c91863..37cf402 100644 --- a/packages/loader/package.json +++ b/packages/loader/package.json @@ -1,6 +1,6 @@ { "name": "@syndicate-lang/loader", - "version": "0.27.0", + "version": "0.27.1", "description": "Syndicate/JS node.js loader hook", "homepage": "https://github.com/syndicate-lang/syndicate-js/tree/main/packages/loader", "license": "GPL-3.0+", @@ -22,8 +22,8 @@ "types": "lib/index.d.ts", "author": "Tony Garnock-Jones ", "dependencies": { - "@syndicate-lang/compiler": "^0.20.0", - "@syndicate-lang/core": "^0.27.0", - "@syndicate-lang/service": "^0.28.0" + "@syndicate-lang/compiler": "^0.20.1", + "@syndicate-lang/core": "^0.27.1", + "@syndicate-lang/service": "^0.28.1" } } diff --git a/packages/service/package.json b/packages/service/package.json index 37971e2..3f24ed2 100644 --- a/packages/service/package.json +++ b/packages/service/package.json @@ -1,6 +1,6 @@ { "name": "@syndicate-lang/service", - "version": "0.28.0", + "version": "0.28.1", "description": "Run a node.js program as a service within syndicate-server", "homepage": "https://github.com/syndicate-lang/syndicate-js/tree/main/packages/service", "license": "GPL-3.0+", @@ -22,10 +22,10 @@ "veryclean": "yarn run clean && rm -rf node_modules" }, "dependencies": { - "@syndicate-lang/core": "^0.27.0" + "@syndicate-lang/core": "^0.27.1" }, "devDependencies": { - "@syndicate-lang/ts-plugin": "^0.28.0", - "@syndicate-lang/tsc": "^0.28.0" + "@syndicate-lang/ts-plugin": "^0.28.1", + "@syndicate-lang/tsc": "^0.28.1" } } diff --git a/packages/syndicatec/package.json b/packages/syndicatec/package.json index 43be5ad..82c266d 100644 --- a/packages/syndicatec/package.json +++ b/packages/syndicatec/package.json @@ -1,6 +1,6 @@ { "name": "@syndicate-lang/syndicatec", - "version": "0.28.0", + "version": "0.28.1", "description": "Syndicate/JS compiler command-line tool", "homepage": "https://github.com/syndicate-lang/syndicate-js/tree/main/packages/syndicatec", "license": "GPL-3.0+", @@ -20,8 +20,8 @@ }, "author": "Tony Garnock-Jones ", "dependencies": { - "@syndicate-lang/compiler": "^0.20.0", - "@syndicate-lang/core": "^0.27.0", + "@syndicate-lang/compiler": "^0.20.1", + "@syndicate-lang/core": "^0.27.1", "glob": "^7.1.6", "yargs": "^16.2.0" }, diff --git a/packages/timer/package.json b/packages/timer/package.json index 4f81f74..cf21517 100644 --- a/packages/timer/package.json +++ b/packages/timer/package.json @@ -1,6 +1,6 @@ { "name": "@syndicate-lang/timer", - "version": "0.28.0", + "version": "0.28.1", "description": "Time and timer driver for Syndicate", "homepage": "https://github.com/syndicate-lang/syndicate-js/tree/main/packages/timer", "license": "GPL-3.0+", @@ -25,10 +25,10 @@ "veryclean": "yarn run clean && rm -rf node_modules" }, "dependencies": { - "@syndicate-lang/core": "^0.27.0" + "@syndicate-lang/core": "^0.27.1" }, "devDependencies": { - "@syndicate-lang/ts-plugin": "^0.28.0", - "@syndicate-lang/tsc": "^0.28.0" + "@syndicate-lang/ts-plugin": "^0.28.1", + "@syndicate-lang/tsc": "^0.28.1" } } diff --git a/packages/ts-plugin/package.json b/packages/ts-plugin/package.json index 64dad77..00b3877 100644 --- a/packages/ts-plugin/package.json +++ b/packages/ts-plugin/package.json @@ -1,6 +1,6 @@ { "name": "@syndicate-lang/ts-plugin", - "version": "0.28.0", + "version": "0.28.1", "description": "Syndicate/JS TypeScript tsserver plugin", "homepage": "https://github.com/syndicate-lang/syndicate-js/tree/main/packages/ts-plugin", "license": "GPL-3.0+", @@ -22,8 +22,8 @@ "types": "lib/index.d.ts", "author": "Tony Garnock-Jones ", "dependencies": { - "@syndicate-lang/compiler": "^0.20.0", - "@syndicate-lang/core": "^0.27.0" + "@syndicate-lang/compiler": "^0.20.1", + "@syndicate-lang/core": "^0.27.1" }, "devDependencies": { "typescript": "^4.9" diff --git a/packages/tsc/package.json b/packages/tsc/package.json index bcc1da1..ac8f857 100644 --- a/packages/tsc/package.json +++ b/packages/tsc/package.json @@ -1,6 +1,6 @@ { "name": "@syndicate-lang/tsc", - "version": "0.28.0", + "version": "0.28.1", "description": "Syndicate for TypeScript compiler command-line tool", "homepage": "https://github.com/syndicate-lang/syndicate-js/tree/main/packages/tsc", "license": "GPL-3.0+", @@ -20,8 +20,8 @@ }, "author": "Tony Garnock-Jones ", "dependencies": { - "@syndicate-lang/compiler": "^0.20.0", - "@syndicate-lang/core": "^0.27.0", + "@syndicate-lang/compiler": "^0.20.1", + "@syndicate-lang/core": "^0.27.1", "glob": "^7.1.6", "yargs": "^16.2.0" }, diff --git a/packages/ws-relay/package.json b/packages/ws-relay/package.json index e95fe81..decad41 100644 --- a/packages/ws-relay/package.json +++ b/packages/ws-relay/package.json @@ -1,6 +1,6 @@ { "name": "@syndicate-lang/ws-relay", - "version": "0.29.0", + "version": "0.29.1", "description": "Browser WebSocket relay to a Syndicate server", "homepage": "https://github.com/syndicate-lang/syndicate-js/tree/main/packages/ws-relay", "license": "GPL-3.0+", @@ -28,11 +28,11 @@ "@preserves/core": "0.995.0" }, "dependencies": { - "@syndicate-lang/core": "^0.27.0", + "@syndicate-lang/core": "^0.27.1", "salty-crypto": "0.3" }, "devDependencies": { - "@syndicate-lang/ts-plugin": "^0.28.0", - "@syndicate-lang/tsc": "^0.28.0" + "@syndicate-lang/ts-plugin": "^0.28.1", + "@syndicate-lang/tsc": "^0.28.1" } } From 61997473a34f13857477f8a6f35b7091c0bfad8b Mon Sep 17 00:00:00 2001 From: Tony Garnock-Jones Date: Sun, 10 Mar 2024 14:50:28 +0100 Subject: [PATCH 37/92] Dust off the @syndicate-lang/create template --- packages/create/template/.dir-locals.el | 22 ------------------- packages/create/template/index.html | 2 +- packages/create/template/package.json | 4 ++-- packages/create/template/rollup.config.js | 4 ++-- packages/create/template/src/index.ts | 18 ++++++--------- .../template/syndicate-server.config.pr | 22 ++++++++++++------- 6 files changed, 26 insertions(+), 46 deletions(-) delete mode 100644 packages/create/template/.dir-locals.el diff --git a/packages/create/template/.dir-locals.el b/packages/create/template/.dir-locals.el deleted file mode 100644 index 70ecb07..0000000 --- a/packages/create/template/.dir-locals.el +++ /dev/null @@ -1,22 +0,0 @@ -((typescript-mode - . ((eval - . (progn - ;; For TIDE: - (setq tide-tsserver-executable - (concat - (let ((d (dir-locals-find-file "."))) - (if (stringp d) d (car d))) - "node_modules/typescript/lib/tsserver.js")) - ;; For LSP: - (require 'lsp-javascript) - (let ((node-modules (concat - (let ((d (dir-locals-find-file "."))) - (if (stringp d) d (car d))) - "node_modules/"))) - (lsp-dependency 'typescript-language-server - `(:system ,(concat node-modules - "typescript-language-server/lib/cli.mjs"))) - (lsp-dependency 'typescript - `(:system ,(concat node-modules - "typescript/lib/tsserver.js"))))) - )))) diff --git a/packages/create/template/index.html b/packages/create/template/index.html index 70f0c22..94f55da 100644 --- a/packages/create/template/index.html +++ b/packages/create/template/index.html @@ -6,7 +6,7 @@ - + diff --git a/packages/create/template/package.json b/packages/create/template/package.json index 06ce60b..49f74dc 100644 --- a/packages/create/template/package.json +++ b/packages/create/template/package.json @@ -14,7 +14,7 @@ "dependencies": { "@preserves/core": "0.995.0", "@syndicate-lang/core": "*", - "@syndicate-lang/html": "*", + "@syndicate-lang/html2": "*", "@syndicate-lang/ws-relay": "*" }, "scripts": { @@ -26,6 +26,6 @@ "rollup": "rollup -c", "rollup:watch": "rollup -c -w", "clean": "rm -rf lib/ src.ts/ src/gen/ index.js index.js.map", - "serve": "python -m http.server" + "serve": "syndicate-server -c syndicate-server.config.pr" } } diff --git a/packages/create/template/rollup.config.js b/packages/create/template/rollup.config.js index 59c9999..3875b15 100644 --- a/packages/create/template/rollup.config.js +++ b/packages/create/template/rollup.config.js @@ -9,7 +9,7 @@ export default { external: [ '@preserves/core', '@syndicate-lang/core', - '@syndicate-lang/html', + '@syndicate-lang/html2', '@syndicate-lang/ws-relay', ], output: { @@ -20,7 +20,7 @@ export default { globals: { '@preserves/core': 'Preserves', '@syndicate-lang/core': 'Syndicate', - '@syndicate-lang/html': 'SyndicateHtml', + '@syndicate-lang/html2': 'SyndicateHtml2', '@syndicate-lang/ws-relay': 'SyndicateWsRelay', }, }, diff --git a/packages/create/template/src/index.ts b/packages/create/template/src/index.ts index e9ae6a2..853fbf5 100644 --- a/packages/create/template/src/index.ts +++ b/packages/create/template/src/index.ts @@ -2,14 +2,14 @@ /// SPDX-FileCopyrightText: Copyright Ā© 2023-2024 Tony Garnock-Jones import { Dataspace, Ref, Sturdy, Reader, Schemas, Embedded, randomId, fromJS } from "@syndicate-lang/core"; -import html from "@syndicate-lang/html"; +import { boot as bootHtml, Widget } from "@syndicate-lang/html2"; import wsRelay from "@syndicate-lang/ws-relay"; import { ExampleDefinition } from './gen/example'; import G = Schemas.gatekeeper; export function main() { Dataspace.boot(ds => { - html.boot(ds); + bootHtml(ds); wsRelay.boot(ds, true /* remove this `true` to turn off client/server debug logging */); bootApp(ds); }); @@ -19,7 +19,7 @@ function bootApp(ds: Ref) { spawn named 'app' { at ds { /* - * This example expects a syndicate-server instance running on port 9001 on the + * This example expects a syndicate-server instance running on port 8000 on the * server hosting index.html, exposing a dataspace entity via a capability called * `"syndicate"` with empty "secret". See syndicate-server.config.pr. */ @@ -28,7 +28,7 @@ function bootApp(ds: Ref) { const route = G.Route({ "transports": [fromJS(Schemas.transportAddress.WebSocket( - `ws://${document.location.hostname}:9001/`))], + `ws://${document.location.hostname}:8000/`))], "pathSteps": [G.asPathStep(fromJS(Sturdy.asSturdyRef( new Reader( '').next())))], @@ -42,13 +42,9 @@ function bootApp(ds: Ref) { at remoteDs { assert ExampleDefinition(this_instance); during ExampleDefinition($who: string) => { - const ui = new html.Anchor(); - at ds { - assert ui.html( - '#main', - html.template`

We see ${who}

`, - who); - } + new Widget(t => + t`

We see ${who}

`) + .setParent('#main'); } } } diff --git a/packages/create/template/syndicate-server.config.pr b/packages/create/template/syndicate-server.config.pr index 4d461b2..37a3938 100644 --- a/packages/create/template/syndicate-server.config.pr +++ b/packages/create/template/syndicate-server.config.pr @@ -1,12 +1,18 @@ -; Start the server with -; -; syndicate-server -c ./syndicate-server.config.pr -;--------------------------------------------------------------------------- +# Start the server with +# +# syndicate-server -c ./syndicate-server.config.pr +# --------------------------------------------------------------------------- -; Expose the gatekeeper on port 9001: - $gatekeeper>> +# Expose the gatekeeper and HTTP on port 8000: + $gatekeeper $config>> +> -; Create a dataspace entity, and register it with the gatekeeper with name `"syndicate"` and an -; empty secret key: +> +? ?handler> [ + $config += +] + +# Create a dataspace entity, and register it with the gatekeeper with name `"syndicate"` and an +# empty secret key: let ?ds = dataspace $ds #f> From f5ed511c4eb4e58d0f7784cdfdf5a60cd23f8995 Mon Sep 17 00:00:00 2001 From: Tony Garnock-Jones Date: Sun, 10 Mar 2024 14:51:02 +0100 Subject: [PATCH 38/92] Publish - @syndicate-lang/create@0.23.0 --- packages/create/package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/create/package.json b/packages/create/package.json index cf7bf44..d304240 100644 --- a/packages/create/package.json +++ b/packages/create/package.json @@ -1,6 +1,6 @@ { "name": "@syndicate-lang/create", - "version": "0.22.1", + "version": "0.23.0", "description": "Create a new Syndicate/js package", "author": "Tony Garnock-Jones ", "homepage": "https://github.com/syndicate-lang/syndicate-js/tree/main/packages/create", From 9521fc3dcc0feb189b61523cfebde5ef44833e5e Mon Sep 17 00:00:00 2001 From: Tony Garnock-Jones Date: Tue, 12 Mar 2024 21:38:49 +0100 Subject: [PATCH 39/92] Switch to directly-represented embedded values --- packages/core/src/runtime/actor.ts | 22 ++++++++-------- packages/core/src/runtime/bag.ts | 4 +-- packages/core/src/runtime/rewrite.ts | 5 ++-- packages/core/src/runtime/skeleton.ts | 6 ++--- packages/core/src/transport/relay.ts | 6 ++--- packages/html/src/index.ts | 12 ++++----- packages/ws-relay/src/index.ts | 36 +++++++++++---------------- 7 files changed, 43 insertions(+), 48 deletions(-) diff --git a/packages/core/src/runtime/actor.ts b/packages/core/src/runtime/actor.ts index f0e5065..79ebe29 100644 --- a/packages/core/src/runtime/actor.ts +++ b/packages/core/src/runtime/actor.ts @@ -1,7 +1,7 @@ /// SPDX-License-Identifier: GPL-3.0-or-later /// SPDX-FileCopyrightText: Copyright Ā© 2016-2024 Tony Garnock-Jones -import { IdentitySet, Value, embeddedId, is, fromJS, stringify, Dictionary, KeyedSet, Tuple } from '@preserves/core'; +import { IdentitySet, Value, embeddedId, is, fromJS, stringify, Dictionary, KeyedSet, Tuple, Embeddable } from '@preserves/core'; import { Cell, Field, Graph } from './dataflow.js'; import { Caveat, runRewrites } from './rewrite.js'; import { ActorSpace } from './space.js'; @@ -23,7 +23,11 @@ export type ExitReason = null | { ok: true } | { ok: false, err: unknown }; export type LocalAction = () => void; export type DetailedAction = LocalAction & { detail: T }; -export type Assertable = Assertion | { __as_preserve__: () => Value } | { __as_preserve__: () => Assertion }; +export type Assertable = + | Assertion + | { __as_preserve__: () => Value } + | { __as_preserve__: () => Assertion } +; export interface Entity { assert(assertion: Assertion, handle: Handle): void; @@ -35,13 +39,7 @@ export interface Entity { export type Cap = Ref; -export interface Ref { - readonly relay: Facet; - readonly target: Partial; - readonly attenuation?: Caveat[]; -} - -export class RefImpl implements Ref { +export class Ref { readonly relay: Facet; readonly target: Partial; readonly attenuation?: Caveat[]; @@ -64,6 +62,10 @@ export class RefImpl implements Ref { if ('sync' in this.target) sig = sig + 'S'; return `āŒœ${this.relay.idChain()}<${sig}>${entityRepr}āŒ`; } + + static __from_preserve__(v: AnyValue): undefined | Ref { + return typeof v === 'object' && 'relay' in v ? v : void 0; + } } //--------------------------------------------------------------------------- @@ -351,7 +353,7 @@ export class Turn { } ref>(e: T): Ref { - return new RefImpl(this.activeFacet, e); + return new Ref(this.activeFacet, e); } facet(bootProc: LocalAction): Facet { diff --git a/packages/core/src/runtime/bag.ts b/packages/core/src/runtime/bag.ts index 423ca88..9611c11 100644 --- a/packages/core/src/runtime/bag.ts +++ b/packages/core/src/runtime/bag.ts @@ -3,7 +3,7 @@ // Bags and Deltas (which are Bags where item-counts can be negative). -import { Value, KeyedDictionary, KeyedSet } from '@preserves/core'; +import { Value, KeyedDictionary, KeyedSet, Embeddable } from '@preserves/core'; export enum ChangeDescription { PRESENT_TO_ABSENT = -1, @@ -12,7 +12,7 @@ export enum ChangeDescription { PRESENT_TO_PRESENT = 2, } -export class Bag = Value> { +export class Bag = Value> { _items: KeyedDictionary; constructor(s?: KeyedSet) { diff --git a/packages/core/src/runtime/rewrite.ts b/packages/core/src/runtime/rewrite.ts index 93e08e6..a1b0fe5 100644 --- a/packages/core/src/runtime/rewrite.ts +++ b/packages/core/src/runtime/rewrite.ts @@ -2,7 +2,7 @@ /// SPDX-FileCopyrightText: Copyright Ā© 2016-2024 Tony Garnock-Jones import { Turn } from "./actor.js"; -import { Bytes, Dictionary, DoubleFloat, embed, IdentityMap, is, isEmbedded, Record, Tuple, stringify } from "@preserves/core"; +import { Bytes, Dictionary, DoubleFloat, IdentityMap, is, isEmbedded, Record, Tuple, stringify } from "@preserves/core"; import type { Assertion, Handle, Ref } from "./actor.js"; import type { SturdyValue } from "../transport/sturdy.js"; @@ -113,8 +113,7 @@ export function instantiate(t: Template, b: Bindings): Assertion { if (!isEmbedded(v)) { throw new Error(`Attempt to attenuate non-capability: ${stringify(v)}`); } - const r = v.embeddedValue; - return embed(attenuate(r, ... t.value.attenuation)); + return attenuate(v, ... t.value.attenuation); } case 'TRef': { const n = t.value.binding; diff --git a/packages/core/src/runtime/skeleton.ts b/packages/core/src/runtime/skeleton.ts index dd385ca..1339445 100644 --- a/packages/core/src/runtime/skeleton.ts +++ b/packages/core/src/runtime/skeleton.ts @@ -1,7 +1,7 @@ /// SPDX-License-Identifier: GPL-3.0-or-later /// SPDX-FileCopyrightText: Copyright Ā© 2016-2024 Tony Garnock-Jones -import { Set, Dictionary, KeyedDictionary, IdentitySet, stringify, Value } from '@preserves/core'; +import { Set, Dictionary, KeyedDictionary, IdentitySet, stringify, Value, Embeddable } from '@preserves/core'; import { AnyValue, Assertion, Ref } from './actor.js'; import { Bag, ChangeDescription } from './bag.js'; import * as Stack from './stack.js'; @@ -142,13 +142,13 @@ export class Index { } } -function dumpBag>(b: Bag, indent: string) { +function dumpBag>(b: Bag, indent: string) { for (const [v, count] of b.entries()) { console.log(indent + stringify(v) + ' = ' + count); } } -function dumpSet(s: Set, indent: string) { +function dumpSet(s: Set, indent: string) { s.forEach(v => console.log(indent + stringify(v))); } diff --git a/packages/core/src/transport/relay.ts b/packages/core/src/transport/relay.ts index e896444..6c88310 100644 --- a/packages/core/src/transport/relay.ts +++ b/packages/core/src/transport/relay.ts @@ -2,7 +2,7 @@ /// SPDX-FileCopyrightText: Copyright Ā© 2016-2024 Tony Garnock-Jones import { Actor, Assertion, Entity, Facet, Handle, Ref, Turn } from '../runtime/actor.js'; -import { BytesLike, Decoder, Dictionary, embed, encode, IdentityMap, mapEmbeddeds, stringify, underlying, Value } from '@preserves/core'; +import { BytesLike, Decoder, Dictionary, encode, IdentityMap, mapEmbeddeds, stringify, underlying, Value } from '@preserves/core'; import * as IO from '../gen/protocol.js'; import { wireRefEmbeddedType } from './protocol.js'; import { attenuate } from '../runtime/rewrite.js'; @@ -193,7 +193,7 @@ export class Relay { register(targetRemoteOid: IO.Oid | null, assertion: Assertion, handle: Handle | null): Value { const transient = (handle === null); const pins: Array = []; - const rewritten = mapEmbeddeds(assertion, r => embed(this.rewriteRefOut(r, transient, pins))); + const rewritten = mapEmbeddeds(assertion, r => this.rewriteRefOut(r, transient, pins)); if (handle !== null) { if (targetRemoteOid !== null /* belt and suspenders */) { this.grabImportedOid(targetRemoteOid, pins); @@ -316,7 +316,7 @@ export class Relay { rewriteIn(a: Value): [Assertion, Array] { const pins: Array = []; - const rewritten = mapEmbeddeds(a, r => embed(this.rewriteRefIn(r, pins))); + const rewritten = mapEmbeddeds(a, r => this.rewriteRefIn(r, pins)); return [rewritten, pins]; } diff --git a/packages/html/src/index.ts b/packages/html/src/index.ts index b98e94a..07d3b03 100644 --- a/packages/html/src/index.ts +++ b/packages/html/src/index.ts @@ -1,7 +1,7 @@ /// SPDX-License-Identifier: GPL-3.0-or-later /// SPDX-FileCopyrightText: Copyright Ā© 2016-2024 Tony Garnock-Jones -import { randomId, Observe, FlexMap, embed, Embedded, Ref, Turn, AnyValue, Dataspace } from "@syndicate-lang/core"; +import { randomId, Observe, FlexMap, Ref, Turn, AnyValue, Dataspace } from "@syndicate-lang/core"; import { QuasiValue as Q } from "@syndicate-lang/core"; import * as P from "./protocol"; @@ -46,7 +46,7 @@ export function spawnGlobalEventFactory(ds: Ref) { function handler(event: Event) { facet.turn(() => { - send message P.GlobalEvent(selector, eventType, embed(create ({ data: event }))); + send message P.GlobalEvent(selector, eventType, create ({ data: event })); }); return dealWithPreventDefault(eventType, event); } @@ -78,7 +78,7 @@ export function spawnWindowEventFactory(ds: Ref) { let handler = (event: Event) => { facet.turn(() => { - send message P.WindowEvent(eventType, embed(create ({ data: event }))); + send message P.WindowEvent(eventType, create ({ data: event })); }); return dealWithPreventDefault(eventType, event); }; @@ -149,7 +149,7 @@ function spawnUIFragmentFactory(ds: Ref) { removeNodes(); selector = newSelector; - html = (newHtml as Embedded).embeddedValue.target.data as ChildNode[]; + html = (newHtml as Ref).target.data as ChildNode[]; orderBy = newOrderBy; anchorNodes = (selector !== null) ? selectorMatch(document.body, selector) : []; @@ -191,7 +191,7 @@ function spawnUIFragmentFactory(ds: Ref) { const facet = Turn.activeFacet; function handler(event: Event) { facet.turn(() => { - send message P.UIEvent(fragmentId, selector, eventType, embed(create ({ data: event }))); + send message P.UIEvent(fragmentId, selector, eventType, create ({ data: event })); }); return dealWithPreventDefault(eventType, event); } @@ -507,7 +507,7 @@ export class Anchor { if (!Array.isArray(html)) { html = html.nodes(); } - return P.UIFragment(this.fragmentId, selector, embed(create ({ data: html })), orderBy); + return P.UIFragment(this.fragmentId, selector, create ({ data: html }), orderBy); } } diff --git a/packages/ws-relay/src/index.ts b/packages/ws-relay/src/index.ts index 10bbf5a..4845601 100644 --- a/packages/ws-relay/src/index.ts +++ b/packages/ws-relay/src/index.ts @@ -6,7 +6,6 @@ import { Assertion, Bytes, Dataspace, - Embedded, IdentitySet, Observe, QuasiValue as Q, @@ -23,6 +22,7 @@ import { isEmbedded, stringify, underlying, + Embeddable, } from "@syndicate-lang/core"; import G = Schemas.gatekeeper; import S = Schemas.sturdy; @@ -140,14 +140,10 @@ export function boot(ds = Dataspace.global, debug: boolean = false, WebSocketCon console.log('tracking', addr.url); during G.TransportConnection({ "addr": addr, - "control": $control_e: Embedded, - "resolved": G.Resolved.accepted($peer_e: Embedded), + "control": $control: Ref, + "resolved": G.Resolved.accepted($peer: Ref), }) => { - const entry = { - addr, - control: control_e.embeddedValue, - peer: peer_e.embeddedValue, - }; + const entry = { addr, control, peer }; candidates.value.add(entry); candidates.changed(); on stop { @@ -237,11 +233,10 @@ export function boot(ds = Dataspace.global, debug: boolean = false, WebSocketCon }) }) => { const origin0 = Q.drop_lit(originPatValue); if (!origin0 || !isEmbedded(origin0)) return; - const origin = origin0.embeddedValue; + const origin = origin0; - const detail0 = Q.drop_lit(detailPatValue, N.toNoisePathStepDetail); - if (!detail0) return; - const spec: N.NoiseSpec = detail0; + const spec = Q.drop_lit(detailPatValue, N.toNoisePathStepDetail); + if (!spec) return; const algorithms = SaltyCrypto.Noise_25519_ChaChaPoly_BLAKE2s; const protocol = @@ -378,11 +373,10 @@ export function boot(ds = Dataspace.global, debug: boolean = false, WebSocketCon }) }) => { const origin0 = Q.drop_lit(originPatValue); if (!origin0 || !isEmbedded(origin0)) return; - const origin = origin0.embeddedValue; + const origin = origin0; - const detail0 = Q.drop_lit(detailPatValue, S.toSturdyPathStepDetail); - if (!detail0) return; - const parameters: S.Parameters = detail0; + const parameters = Q.drop_lit(detailPatValue, S.toSturdyPathStepDetail); + if (!parameters) return; at origin { assert G.Resolve({ @@ -411,7 +405,7 @@ export function boot(ds = Dataspace.global, debug: boolean = false, WebSocketCon } } -export function unpackStandardRoute(route: E.StandardRoute): G.Route { +export function unpackStandardRoute(route: E.StandardRoute): G.Route { if (route._variant === 'general') return route.value; const { transports, key, service, sig, oid } = route; @@ -465,15 +459,15 @@ export function contactRemote( ) => void, ds = Dataspace.global, ) { - const routeValue = Record.isRecord(route) ? route : G.fromRoute(G.Route(route)); + const routeValue = 'pathSteps' in route ? G.fromRoute(G.Route(route)) : route; at ds { during G.ResolvePath({ "route": routeValue, "addr": $addr, - "control": $control_e: Embedded, - "resolved": G.Resolved.accepted($resolved_e: Embedded), + "control": $control: Ref, + "resolved": G.Resolved.accepted($resolved: Ref), }) => { - connectedFacet(resolved_e.embeddedValue, control_e.embeddedValue, addr); + connectedFacet(resolved, control, addr); } } } From 40f5ef40857251683bd6f7244d3253ec1a6235e1 Mon Sep 17 00:00:00 2001 From: Tony Garnock-Jones Date: Tue, 12 Mar 2024 22:56:01 +0100 Subject: [PATCH 40/92] Replace boundary structure to preserve embedded value separation --- packages/core/src/transport/protocol.ts | 20 +++++++-------- packages/core/src/transport/relay.ts | 33 +++++++++++++------------ 2 files changed, 27 insertions(+), 26 deletions(-) diff --git a/packages/core/src/transport/protocol.ts b/packages/core/src/transport/protocol.ts index f8caa53..0c927a7 100644 --- a/packages/core/src/transport/protocol.ts +++ b/packages/core/src/transport/protocol.ts @@ -2,22 +2,22 @@ /// SPDX-FileCopyrightText: Copyright Ā© 2016-2024 Tony Garnock-Jones import * as S from '../gen/sturdy.js'; -import { Decoder, DecoderState, Encoder, EncoderState, GenericEmbedded, neverEmbeddedType, EmbeddedType, Value, EmbeddedWriter } from '@preserves/core'; +import { Decoder, DecoderState, Encoder, EncoderState, GenericEmbedded, neverEmbeddedType, EmbeddedType, Value, Embedded, EmbeddedWriter } from '@preserves/core'; -export const wireRefEmbeddedType: EmbeddedType & EmbeddedWriter = { - decode(s: DecoderState): S.WireRef { - return S.asWireRef(new Decoder(s).next()); +export const wireRefEmbeddedType: EmbeddedType> & EmbeddedWriter> = { + decode(s: DecoderState): Embedded { + return new Embedded(S.asWireRef(new Decoder(s).next())); }, - encode(s: EncoderState, v: S.WireRef): void { - new Encoder(s, neverEmbeddedType).push(S.fromWireRef(v)); + encode(s: EncoderState, v: Embedded): void { + new Encoder(s, neverEmbeddedType).push(S.fromWireRef(v.value)); }, - fromValue(v: Value): S.WireRef { - return S.asWireRef(v as Value); + fromValue(v: Value): Embedded { + return new Embedded(S.asWireRef(v as Value)); }, - toValue(v: S.WireRef): Value { - return S.fromWireRef(v) as Value; + toValue(v: Embedded): Value { + return S.fromWireRef(v.value) as Value; } }; diff --git a/packages/core/src/transport/relay.ts b/packages/core/src/transport/relay.ts index 6c88310..6651d8e 100644 --- a/packages/core/src/transport/relay.ts +++ b/packages/core/src/transport/relay.ts @@ -2,7 +2,7 @@ /// SPDX-FileCopyrightText: Copyright Ā© 2016-2024 Tony Garnock-Jones import { Actor, Assertion, Entity, Facet, Handle, Ref, Turn } from '../runtime/actor.js'; -import { BytesLike, Decoder, Dictionary, encode, IdentityMap, mapEmbeddeds, stringify, underlying, Value } from '@preserves/core'; +import { BytesLike, Decoder, Dictionary, encode, IdentityMap, mapEmbeddeds, Embedded, stringify, underlying, Value } from '@preserves/core'; import * as IO from '../gen/protocol.js'; import { wireRefEmbeddedType } from './protocol.js'; import { attenuate } from '../runtime/rewrite.js'; @@ -68,7 +68,7 @@ export class RelayEntity implements Entity { this.oid = oid; } - send(m: IO.Event): void { + send(m: IO.Event>): void { this.relay.send(this.oid, m); } @@ -156,7 +156,7 @@ export class Relay { readonly imported = new Membrane(); readonly peer: Ref | null; nextLocalOid: IO.Oid = 0; - pendingTurn: IO.Turn = []; + pendingTurn: IO.Turn> = []; debug: boolean; trustPeer: boolean; @@ -180,7 +180,7 @@ export class Relay { } this.peer = (options.initialOid !== void 0) - ? this.rewriteRefIn(WireRef.mine(options.initialOid), []) + ? this.rewriteRefIn(new Embedded(WireRef.mine(options.initialOid)), []) : null; if (options.nextLocalOid !== void 0) { @@ -188,9 +188,9 @@ export class Relay { } } - register(targetRemoteOid: IO.Oid, assertion: Assertion, handle: Handle): Value; - register(targetRemoteOid: null, assertion: Assertion, handle: null): Value; - register(targetRemoteOid: IO.Oid | null, assertion: Assertion, handle: Handle | null): Value { + register(targetRemoteOid: IO.Oid, assertion: Assertion, handle: Handle): Value>; + register(targetRemoteOid: null, assertion: Assertion, handle: null): Value>; + register(targetRemoteOid: IO.Oid | null, assertion: Assertion, handle: Handle | null): Value> { const transient = (handle === null); const pins: Array = []; const rewritten = mapEmbeddeds(assertion, r => this.rewriteRefOut(r, transient, pins)); @@ -223,18 +223,18 @@ export class Relay { return e.ref; } - rewriteRefOut(r: Ref, transient: boolean, pins: Array): WireRef { + rewriteRefOut(r: Ref, transient: boolean, pins: Array): Embedded { if (r.target instanceof RelayEntity && r.target.relay === this) { if (r.attenuation === void 0 || r.attenuation.length === 0) { // No extra conditions on this reference since it was sent to us. this.grabImportedOid(r.target.oid, pins); - return WireRef.yours({ oid: r.target.oid, attenuation: [] }); + return new Embedded(WireRef.yours({ oid: r.target.oid, attenuation: [] })); } else { // This reference has been attenuated since it was sent to us. // Do we trust the peer to enforce such attenuation on our behalf? if (this.trustPeer) { this.grabImportedOid(r.target.oid, pins); - return WireRef.yours({ oid: r.target.oid, attenuation: r.attenuation }); + return new Embedded(WireRef.yours({ oid: r.target.oid, attenuation: r.attenuation })); } else { // fall through: treat the attenuated ref as a local ref, and re-export it. } @@ -247,10 +247,11 @@ export class Relay { return new WireSymbol(this.exported, this.nextLocalOid++, r); }); pins.push(e); - return WireRef.mine(e.oid); + return new Embedded(WireRef.mine(e.oid)); } - rewriteRefIn(n: WireRef, pins: Array): Ref { + rewriteRefIn(nw: Embedded, pins: Array): Ref { + const n = nw.value; switch (n._variant) { case 'yours': { const e = this.exported.grab("byOid", n.oid, false, null); @@ -283,7 +284,7 @@ export class Relay { message(body: Assertion) { if (body === FLUSH) { - if (this.debug) console.log('OUT', stringify(IO.fromTurn(this.pendingTurn))); + if (this.debug) console.log('OUT', stringify(IO.fromTurn(this.pendingTurn)), this.pendingTurn); this.w(underlying(encode(IO.fromTurn(this.pendingTurn), { canonical: true, embeddedEncode: wireRefEmbeddedType, @@ -292,7 +293,7 @@ export class Relay { } } - send(remoteOid: IO.Oid, m: IO.Event): void { + send(remoteOid: IO.Oid, m: IO.Event>): void { if (this.pendingTurn.length === 0) { Turn.active.message(this.selfRef, FLUSH); } @@ -313,14 +314,14 @@ export class Relay { }); } - rewriteIn(a: Value): [Assertion, Array] + rewriteIn(a: Value>): [Assertion, Array] { const pins: Array = []; const rewritten = mapEmbeddeds(a, r => this.rewriteRefIn(r, pins)); return [rewritten, pins]; } - handle(localOid: IO.Oid, m: IO.Event) { + handle(localOid: IO.Oid, m: IO.Event>) { switch (m._variant) { case 'Assert': { const [a, pins] = this.rewriteIn(m.value.assertion); From 300e15b674bc988f2fe9ccec216360cc48de0a4a Mon Sep 17 00:00:00 2001 From: Tony Garnock-Jones Date: Sat, 16 Mar 2024 17:41:45 +0100 Subject: [PATCH 41/92] Cosmetic --- packages/ws-relay/src/index.ts | 12 +++--------- 1 file changed, 3 insertions(+), 9 deletions(-) diff --git a/packages/ws-relay/src/index.ts b/packages/ws-relay/src/index.ts index 4845601..e16df3e 100644 --- a/packages/ws-relay/src/index.ts +++ b/packages/ws-relay/src/index.ts @@ -77,16 +77,12 @@ export function boot(ds = Dataspace.global, debug: boolean = false, WebSocketCon ws.close(); } ws.onclose = () => facet.turn(() => { stop facet; }); - ws.onerror = () => facet.turn(() => - Turn.active.crash(new Error("WebSocket error"))); + ws.onerror = () => facet.turn(() => Turn.active.crash(new Error("WebSocket error"))); const relay = new Relay.Relay({ debug, trustPeer: true, packetWriter: bs => ws.send(bs), - setup(r: Relay.Relay) { - ws.onmessage = e => facet.turn(() => - r.accept(new Uint8Array(e.data))); - }, + setup: r => ws.onmessage = e => r.accept(new Uint8Array(e.data)), initialOid: 0, }); console.log('succeed', addr.url); @@ -283,9 +279,7 @@ export function boot(ds = Dataspace.global, debug: boolean = false, WebSocketCon : N.Packet.fragmented(fragments)); } }), - setup(r: Relay.Relay) { - relay = r; - }, + setup: r => relay = r, initialOid: 0, }).peer!; assert G.ResolvedPathStep({ From 1958e4ec4994bf64597b815a9084836624ed28d4 Mon Sep 17 00:00:00 2001 From: Tony Garnock-Jones Date: Sat, 16 Mar 2024 17:42:54 +0100 Subject: [PATCH 42/92] Refactor Relay while puzzling over sessions --- packages/core/src/transport/membrane.ts | 308 ++++++++++++++++++++++++ packages/core/src/transport/protocol.ts | 8 +- packages/core/src/transport/relay.ts | 304 ++--------------------- 3 files changed, 327 insertions(+), 293 deletions(-) create mode 100644 packages/core/src/transport/membrane.ts diff --git a/packages/core/src/transport/membrane.ts b/packages/core/src/transport/membrane.ts new file mode 100644 index 0000000..077fd64 --- /dev/null +++ b/packages/core/src/transport/membrane.ts @@ -0,0 +1,308 @@ +/// SPDX-License-Identifier: GPL-3.0-or-later +/// SPDX-FileCopyrightText: Copyright Ā© 2016-2024 Tony Garnock-Jones + +import { Actor, Ref, Handle, Assertion, Entity, Turn } from '../runtime/actor.js'; +import { Value, Embedded, mapEmbeddeds, IdentityMap, Dictionary, stringify } from '@preserves/core'; +import * as IO from '../gen/protocol.js'; +import { fromCaveat, WireRef } from '../gen/sturdy.js'; +import { attenuate } from '../runtime/rewrite.js'; + +export class WireSymbol { + count = 0; + + constructor ( + public side: Membrane, + public oid: IO.Oid, + public ref: Ref, + ) {} + + drop(): void { + this.count--; + if (this.count === 0) { + this.side.byOid.delete(this.oid); + this.side.byRef.delete(this.ref); + } + } +}; + +export type WhichTable = "byOid" | "byRef"; + +export class Membrane { + readonly byOid = new IdentityMap(); + readonly byRef = new IdentityMap(); + + grab(table: Table, + key: Parameters[0], + transient: boolean, + f: () => WireSymbol): WireSymbol; + grab
(table: Table, + key: Parameters[0], + transient: boolean, + f: null): WireSymbol | null; + grab
(table: Table, + key: Parameters[0], + transient: boolean, + f: (() => WireSymbol) | null): WireSymbol | null { + let e = this[table].get(key as any); + if (e === void 0) { + if (f === null) return null; + e = f(); + this.byRef.set(e.ref, e); + this.byOid.set(e.oid, e); + } + if (!transient) e.count++; + return e; + } +} + +export const INERT_REF: Ref = { + relay: Actor.boot(() => Turn.active.stop(Turn.activeFacet)).root, + target: {}, +}; + +export interface ProxyInbound { + proxyPacket(packet: IO.Packet>): void; +} + +export interface ProxyOutbound { + send(remoteOid: IO.Oid, event: IO.Event>): void; + proxyAssertion(targetRemoteOid: IO.Oid, assertion: Assertion, handle: Handle): Value>; + proxyRetract(handle: Handle): void; + proxyMessage(assertion: Assertion): Value>; + proxySync(targetRemoteOid: IO.Oid, peer: Ref): Embedded; +} + +export abstract class LayerBoundary implements ProxyOutbound, ProxyInbound { + readonly inboundAssertions = new IdentityMap, + }>(); + readonly outboundAssertions = new IdentityMap>(); + readonly exported = new Membrane(); + readonly imported = new Membrane(); + + constructor(public trustPeer = true, public nextLocalOid: IO.Oid = 0) {} + + abstract send(remoteOid: IO.Oid, event: IO.Event>): void; + + proxyAssertion(targetRemoteOid: IO.Oid, assertion: Assertion, handle: Handle): Value> { + const pins: Array = []; + const rewritten = mapEmbeddeds(assertion, r => this.rewriteRefOut(r, false, pins)); + this.grabImportedOid(targetRemoteOid, pins); + this.outboundAssertions.set(handle, pins); + return rewritten; + } + + proxyRetract(handle: Handle): void { + (this.outboundAssertions.get(handle) ?? []).forEach(e => e.drop()); + this.outboundAssertions.delete(handle); + } + + proxyMessage(assertion: Assertion): Value> { + const pins: Array = []; + return mapEmbeddeds(assertion, r => this.rewriteRefOut(r, true, pins)); + } + + proxySync(targetRemoteOid: IO.Oid, peer: Ref): Embedded { + const peerEntity = new SyncPeerEntity(peer); + this.grabImportedOid(targetRemoteOid, peerEntity.pins); + return this.rewriteRefOut(Turn.ref(peerEntity), false, peerEntity.pins); + } + + grabImportedOid(oid: IO.Oid, pins: Array): void { + const e = this.imported.grab("byOid", oid, false, null); + if (e === null) { + throw new Error("Internal error: import table missing entry for oid " + oid); + } + pins.push(e); + } + + grabExportedOid(oid: IO.Oid, pins: Array): Ref { + const e = this.exported.grab("byOid", oid, false, null); + if (e === null) return INERT_REF; + pins.push(e); + return e.ref; + } + + rewriteRefOut(r: Ref, transient: boolean, pins: Array): Embedded { + if (r.target instanceof ProxyEntity && r.target.relay === this) { + if (r.attenuation === void 0 || r.attenuation.length === 0) { + // No extra conditions on this reference since it was sent to us. + this.grabImportedOid(r.target.oid, pins); + return new Embedded(WireRef.yours({ oid: r.target.oid, attenuation: [] })); + } else { + // This reference has been attenuated since it was sent to us. + // Do we trust the peer to enforce such attenuation on our behalf? + if (this.trustPeer) { + this.grabImportedOid(r.target.oid, pins); + return new Embedded(WireRef.yours({ oid: r.target.oid, attenuation: r.attenuation })); + } else { + // fall through: treat the attenuated ref as a local ref, and re-export it. + } + } + } + + const e = this.exported.grab( + "byRef", r, transient, () => { + if (transient) throw new Error("Cannot send transient reference"); + return new WireSymbol(this.exported, this.nextLocalOid++, r); + }); + pins.push(e); + return new Embedded(WireRef.mine(e.oid)); + } + + rewriteRefIn(nw: Embedded, pins: Array): Ref { + const n = nw.value; + switch (n._variant) { + case 'yours': { + const e = this.exported.grab("byOid", n.oid, false, null); + if (e === null) { + return INERT_REF; + } else { + pins.push(e); + const r = e.ref; + if (n.attenuation.length === 0) { + return r; + } else { + type AttenuatedRef = Ref & { __attenuations?: Dictionary }; + const ar = r as AttenuatedRef; + if (ar.__attenuations === void 0) { + ar.__attenuations = new Dictionary(); + } + return ar.__attenuations.getOrSet(n.attenuation.map(fromCaveat), () => + attenuate(r, ... n.attenuation)); + } + } + } + case 'mine': { + const e = this.imported.grab("byOid", n.oid, false, () => + new WireSymbol(this.imported, n.oid, Turn.ref(new ProxyEntity(this, n.oid)))); + pins.push(e); + return e.ref; + } + } + } + + rewriteIn(a: Value>): [Assertion, Array] + { + const pins: Array = []; + const rewritten = mapEmbeddeds(a, r => this.rewriteRefIn(r, pins)); + return [rewritten, pins]; + } + + handle(localOid: IO.Oid, m: IO.Event>): void { + switch (m._variant) { + case 'Assert': { + const [a, pins] = this.rewriteIn(m.value.assertion); + const r = this.grabExportedOid(localOid, pins); + this.inboundAssertions.set(m.value.handle, { + localHandle: Turn.active.assert(r, a), + pins, + }); + break; + } + case 'Retract': { + const remoteHandle = m.value.handle; + const h = this.inboundAssertions.get(remoteHandle); + if (h === void 0) throw new Error(`Peer retracted invalid handle ${remoteHandle}`); + this.inboundAssertions.delete(remoteHandle); + h.pins.forEach(e => e.drop()); + Turn.active.retract(h.localHandle); + break; + } + case 'Message': { + const [a, pins] = this.rewriteIn(m.value.body); + if (pins.length > 0) throw new Error("Cannot receive transient reference"); + const r = this.exported.byOid.get(localOid)?.ref; + if (r) Turn.active.message(r, a); + break; + } + case 'Sync': { + const pins: Array = []; + const r = this.grabExportedOid(localOid, pins); + const k = this.rewriteRefIn(m.value.peer, pins); + Turn.active.sync(r).then(() => { + Turn.active.message(k, true); + pins.forEach(e => e.drop()); + }); + break; + } + } + } + + proxyPacket(packet: IO.Packet>): void { + switch (packet._variant) { + case 'Turn': + packet.value.forEach(v => this.handle(v.oid, v.event)); + break; + case 'Error': + throw new Error(`Remote peer terminated relay: ${stringify(packet.value)}`); + case 'Extension': + // Ignore unknown extensions. + break; + } + } +} + +export class ProxyEntity implements Entity { + readonly relay: ProxyOutbound; + readonly oid: IO.Oid; + + constructor(relay: ProxyOutbound, oid: IO.Oid) { + this.relay = relay; + this.oid = oid; + } + + send(m: IO.Event>): void { + this.relay.send(this.oid, m); + } + + assert(assertion: Assertion, handle: Handle): void { + this.send(IO.Event.Assert(IO.Assert({ + assertion: this.relay.proxyAssertion(this.oid, assertion, handle), + handle + }))) + } + + retract(handle: Handle): void { + this.relay.proxyRetract(handle); + this.send(IO.Event.Retract(IO.Retract(handle))); + } + + message(body: Assertion): void { + this.send(IO.Event.Message(IO.Message(this.relay.proxyMessage(body)))); + } + + sync(peer: Ref): void { + this.send(IO.Event.Sync(IO.Sync(this.relay.proxySync(this.oid, peer)))); + } +} + +export class SyncPeerEntity implements Entity { + readonly peer: Ref; + readonly handleMap = new IdentityMap(); + pins: Array = []; + + constructor(peer: Ref) { + this.peer = peer; + } + + assert(assertion: Assertion, handle: Handle): void { + this.handleMap.set(handle, Turn.active.assert(this.peer, assertion)); + } + + retract(handle: Handle): void { + Turn.active.retract(this.handleMap.get(handle)!); + this.handleMap.delete(handle); + } + + message(body: Assertion): void { + // We get to vanish from the indexes now + this.pins.forEach(e => e.drop()); + Turn.active.message(this.peer, body); + } + + sync(peer: Ref): void { + Turn.active._sync(this.peer, peer); + } +} diff --git a/packages/core/src/transport/protocol.ts b/packages/core/src/transport/protocol.ts index 0c927a7..f5602c1 100644 --- a/packages/core/src/transport/protocol.ts +++ b/packages/core/src/transport/protocol.ts @@ -2,7 +2,7 @@ /// SPDX-FileCopyrightText: Copyright Ā© 2016-2024 Tony Garnock-Jones import * as S from '../gen/sturdy.js'; -import { Decoder, DecoderState, Encoder, EncoderState, GenericEmbedded, neverEmbeddedType, EmbeddedType, Value, Embedded, EmbeddedWriter } from '@preserves/core'; +import { Decoder, DecoderState, Encoder, EncoderState, neverEmbeddedType, EmbeddedType, Value, Embedded, EmbeddedWriter } from '@preserves/core'; export const wireRefEmbeddedType: EmbeddedType> & EmbeddedWriter> = { decode(s: DecoderState): Embedded { @@ -13,11 +13,11 @@ export const wireRefEmbeddedType: EmbeddedType> & EmbeddedWr new Encoder(s, neverEmbeddedType).push(S.fromWireRef(v.value)); }, - fromValue(v: Value): Embedded { + fromValue(v: Value): Embedded { return new Embedded(S.asWireRef(v as Value)); }, - toValue(v: Embedded): Value { - return S.fromWireRef(v.value) as Value; + toValue(v: Embedded): Value { + return S.fromWireRef(v.value) as Value; } }; diff --git a/packages/core/src/transport/relay.ts b/packages/core/src/transport/relay.ts index 6651d8e..7aaf857 100644 --- a/packages/core/src/transport/relay.ts +++ b/packages/core/src/transport/relay.ts @@ -1,136 +1,15 @@ /// SPDX-License-Identifier: GPL-3.0-or-later /// SPDX-FileCopyrightText: Copyright Ā© 2016-2024 Tony Garnock-Jones -import { Actor, Assertion, Entity, Facet, Handle, Ref, Turn } from '../runtime/actor.js'; -import { BytesLike, Decoder, Dictionary, encode, IdentityMap, mapEmbeddeds, Embedded, stringify, underlying, Value } from '@preserves/core'; +import { Assertion, Facet, Ref, Turn } from '../runtime/actor.js'; +import { BytesLike, Decoder, encode, Embedded, stringify, underlying } from '@preserves/core'; import * as IO from '../gen/protocol.js'; import { wireRefEmbeddedType } from './protocol.js'; -import { attenuate } from '../runtime/rewrite.js'; -import { fromCaveat, WireRef } from '../gen/sturdy.js'; +import { WireRef } from '../gen/sturdy.js'; +import { LayerBoundary } from './membrane.js'; const FLUSH = Symbol.for('flush'); -export class WireSymbol { - count = 0; - - constructor ( - public side: Membrane, - public oid: IO.Oid, - public ref: Ref, - ) {} - - drop(): void { - this.count--; - if (this.count === 0) { - this.side.byOid.delete(this.oid); - this.side.byRef.delete(this.ref); - } - } -}; - -export class SyncPeerEntity implements Entity { - readonly relay: Relay; - readonly peer: Ref; - readonly handleMap = new IdentityMap(); - pins: Array = []; - - constructor(relay: Relay, peer: Ref) { - this.relay = relay; - this.peer = peer; - } - - assert(assertion: Assertion, handle: Handle): void { - this.handleMap.set(handle, Turn.active.assert(this.peer, assertion)); - } - - retract(handle: Handle): void { - Turn.active.retract(this.handleMap.get(handle)!); - this.handleMap.delete(handle); - } - - message(body: Assertion): void { - // We get to vanish from the indexes now - this.pins.forEach(e => e.drop()); - Turn.active.message(this.peer, body); - } - - sync(peer: Ref): void { - Turn.active._sync(this.peer, peer); - } -} - -export class RelayEntity implements Entity { - readonly relay: Relay; - readonly oid: IO.Oid; - - constructor(relay: Relay, oid: IO.Oid) { - this.relay = relay; - this.oid = oid; - } - - send(m: IO.Event>): void { - this.relay.send(this.oid, m); - } - - assert(assertion: Assertion, handle: Handle): void { - this.send(IO.Event.Assert(IO.Assert({ - assertion: this.relay.register(this.oid, assertion, handle), - handle - }))) - } - - retract(handle: Handle): void { - this.relay.deregister(handle); - this.send(IO.Event.Retract(IO.Retract(handle))); - } - - message(body: Assertion): void { - this.send(IO.Event.Message(IO.Message(this.relay.register(null, body, null)))); - } - - sync(peer: Ref): void { - const peerEntity = new SyncPeerEntity(this.relay, peer); - this.relay.grabImportedOid(this.oid, peerEntity.pins); - const ior = this.relay.rewriteRefOut(Turn.ref(peerEntity), false, peerEntity.pins); - this.send(IO.Event.Sync(IO.Sync(ior))); - } -} - -export type WhichTable = "byOid" | "byRef"; - -export class Membrane { - readonly byOid = new IdentityMap(); - readonly byRef = new IdentityMap(); - - grab
(table: Table, - key: Parameters[0], - transient: boolean, - f: () => WireSymbol): WireSymbol; - grab
(table: Table, - key: Parameters[0], - transient: boolean, - f: null): WireSymbol | null; - grab
(table: Table, - key: Parameters[0], - transient: boolean, - f: (() => WireSymbol) | null): WireSymbol | null { - let e = this[table].get(key as any); - if (e === void 0) { - if (f === null) return null; - e = f(); - this.byRef.set(e.ref, e); - this.byOid.set(e.oid, e); - } - if (!transient) e.count++; - return e; - } -} - -export const INERT_REF: Ref = { - relay: Actor.boot(() => Turn.active.stop(Turn.activeFacet)).root, - target: {}, -}; - export type PacketWriter = (bs: Uint8Array) => void; export interface RelayOptions { @@ -143,22 +22,13 @@ export interface RelayOptions { nextLocalOid?: IO.Oid; } -export class Relay { +export class Relay extends LayerBoundary { readonly facet: Facet; readonly selfRef: Ref; readonly w: PacketWriter; - readonly inboundAssertions = new IdentityMap, - }>(); - readonly outboundAssertions = new IdentityMap>(); - readonly exported = new Membrane(); - readonly imported = new Membrane(); readonly peer: Ref | null; - nextLocalOid: IO.Oid = 0; pendingTurn: IO.Turn> = []; debug: boolean; - trustPeer: boolean; readonly decoder = new Decoder(void 0, { includeAnnotations: false, @@ -166,11 +36,12 @@ export class Relay { }); constructor(options: RelayOptions) { + super(options.trustPeer, options.nextLocalOid); + this.facet = Turn.activeFacet; this.selfRef = Turn.ref(this); this.w = options.packetWriter; this.debug = options.debug ?? false; - this.trustPeer = options.trustPeer ?? true; this.facet.preventInertCheck(); options.setup(this); @@ -182,109 +53,11 @@ export class Relay { this.peer = (options.initialOid !== void 0) ? this.rewriteRefIn(new Embedded(WireRef.mine(options.initialOid)), []) : null; - - if (options.nextLocalOid !== void 0) { - this.nextLocalOid = (options.nextLocalOid === 0) ? 1 : options.nextLocalOid; - } - } - - register(targetRemoteOid: IO.Oid, assertion: Assertion, handle: Handle): Value>; - register(targetRemoteOid: null, assertion: Assertion, handle: null): Value>; - register(targetRemoteOid: IO.Oid | null, assertion: Assertion, handle: Handle | null): Value> { - const transient = (handle === null); - const pins: Array = []; - const rewritten = mapEmbeddeds(assertion, r => this.rewriteRefOut(r, transient, pins)); - if (handle !== null) { - if (targetRemoteOid !== null /* belt and suspenders */) { - this.grabImportedOid(targetRemoteOid, pins); - } - this.outboundAssertions.set(handle, pins); - } - return rewritten; - } - - deregister(handle: Handle): void { - (this.outboundAssertions.get(handle) ?? []).forEach(e => e.drop()); - this.outboundAssertions.delete(handle); - } - - grabImportedOid(oid: IO.Oid, pins: Array) { - const e = this.imported.grab("byOid", oid, false, null); - if (e === null) { - throw new Error("Internal error: import table missing entry for oid " + oid); - } - pins.push(e); - } - - grabExportedOid(oid: IO.Oid, pins: Array): Ref { - const e = this.exported.grab("byOid", oid, false, null); - if (e === null) return INERT_REF; - pins.push(e); - return e.ref; - } - - rewriteRefOut(r: Ref, transient: boolean, pins: Array): Embedded { - if (r.target instanceof RelayEntity && r.target.relay === this) { - if (r.attenuation === void 0 || r.attenuation.length === 0) { - // No extra conditions on this reference since it was sent to us. - this.grabImportedOid(r.target.oid, pins); - return new Embedded(WireRef.yours({ oid: r.target.oid, attenuation: [] })); - } else { - // This reference has been attenuated since it was sent to us. - // Do we trust the peer to enforce such attenuation on our behalf? - if (this.trustPeer) { - this.grabImportedOid(r.target.oid, pins); - return new Embedded(WireRef.yours({ oid: r.target.oid, attenuation: r.attenuation })); - } else { - // fall through: treat the attenuated ref as a local ref, and re-export it. - } - } - } - - const e = this.exported.grab( - "byRef", r, transient, () => { - if (transient) throw new Error("Cannot send transient reference"); - return new WireSymbol(this.exported, this.nextLocalOid++, r); - }); - pins.push(e); - return new Embedded(WireRef.mine(e.oid)); - } - - rewriteRefIn(nw: Embedded, pins: Array): Ref { - const n = nw.value; - switch (n._variant) { - case 'yours': { - const e = this.exported.grab("byOid", n.oid, false, null); - if (e === null) { - return INERT_REF; - } else { - pins.push(e); - const r = e.ref; - if (n.attenuation.length === 0) { - return r; - } else { - type AttenuatedRef = Ref & { __attenuations?: Dictionary }; - const ar = r as AttenuatedRef; - if (ar.__attenuations === void 0) { - ar.__attenuations = new Dictionary(); - } - return ar.__attenuations.getOrSet(n.attenuation.map(fromCaveat), () => - attenuate(r, ... n.attenuation)); - } - } - } - case 'mine': { - const e = this.imported.grab("byOid", n.oid, false, () => - new WireSymbol(this.imported, n.oid, Turn.ref(new RelayEntity(this, n.oid)))); - pins.push(e); - return e.ref; - } - } } message(body: Assertion) { if (body === FLUSH) { - if (this.debug) console.log('OUT', stringify(IO.fromTurn(this.pendingTurn)), this.pendingTurn); + if (this.debug) console.log('OUT', stringify(IO.fromTurn(this.pendingTurn))); this.w(underlying(encode(IO.fromTurn(this.pendingTurn), { canonical: true, embeddedEncode: wireRefEmbeddedType, @@ -301,63 +74,16 @@ export class Relay { } accept(bs: BytesLike): void { - Turn.for(this.facet, () => { + this.facet.turn(() => { this.decoder.write(bs); while (true) { - const rawTurn = this.decoder.try_next(); - if (rawTurn === void 0) break; - const wireTurn = IO.toTurn(rawTurn); - if (wireTurn === void 0) throw new Error("Bad IO.Turn"); - if (this.debug) console.log('IN', stringify(rawTurn)); - wireTurn.forEach(v => this.handle(v.oid, v.event)); + const rawPacket = this.decoder.try_next(); + if (rawPacket === void 0) break; + const wirePacket = IO.toPacket(rawPacket); + if (wirePacket === void 0) throw new Error("Bad IO.Packet"); + if (this.debug) console.log('IN', stringify(rawPacket)); + this.proxyPacket(wirePacket); } }); } - - rewriteIn(a: Value>): [Assertion, Array] - { - const pins: Array = []; - const rewritten = mapEmbeddeds(a, r => this.rewriteRefIn(r, pins)); - return [rewritten, pins]; - } - - handle(localOid: IO.Oid, m: IO.Event>) { - switch (m._variant) { - case 'Assert': { - const [a, pins] = this.rewriteIn(m.value.assertion); - const r = this.grabExportedOid(localOid, pins); - this.inboundAssertions.set(m.value.handle, { - localHandle: Turn.active.assert(r, a), - pins, - }); - break; - } - case 'Retract': { - const remoteHandle = m.value.handle; - const h = this.inboundAssertions.get(remoteHandle); - if (h === void 0) throw new Error(`Peer retracted invalid handle ${remoteHandle}`); - this.inboundAssertions.delete(remoteHandle); - h.pins.forEach(e => e.drop()); - Turn.active.retract(h.localHandle); - break; - } - case 'Message': { - const [a, pins] = this.rewriteIn(m.value.body); - if (pins.length > 0) throw new Error("Cannot receive transient reference"); - const r = this.exported.byOid.get(localOid)?.ref; - if (r) Turn.active.message(r, a); - break; - } - case 'Sync': { - const pins: Array = []; - const r = this.grabExportedOid(localOid, pins); - const k = this.rewriteRefIn(m.value.peer, pins); - Turn.active.sync(r).then(() => { - Turn.active.message(k, true); - pins.forEach(e => e.drop()); - }); - break; - } - } - } } From 772a46b0931bb477620068a2535b4c07b2a4c28f Mon Sep 17 00:00:00 2001 From: Tony Garnock-Jones Date: Sat, 16 Mar 2024 17:44:04 +0100 Subject: [PATCH 43/92] Publish - @syndicate-lang/browser-stdenv@0.28.0 - @syndicate-lang/core@0.28.0 - @syndicate-lang/fs@0.29.0 - @syndicate-lang/html@0.29.0 - @syndicate-lang/html2@0.29.0 - @syndicate-lang/loader@0.28.0 - @syndicate-lang/service@0.29.0 - @syndicate-lang/syndicatec@0.29.0 - @syndicate-lang/timer@0.29.0 - @syndicate-lang/ts-plugin@0.29.0 - @syndicate-lang/tsc@0.29.0 - @syndicate-lang/ws-relay@0.30.0 --- packages/browser-stdenv/package.json | 8 ++++---- packages/core/package.json | 2 +- packages/fs/package.json | 10 +++++----- packages/html/package.json | 8 ++++---- packages/html2/package.json | 8 ++++---- packages/loader/package.json | 6 +++--- packages/service/package.json | 8 ++++---- packages/syndicatec/package.json | 4 ++-- packages/timer/package.json | 8 ++++---- packages/ts-plugin/package.json | 4 ++-- packages/tsc/package.json | 4 ++-- packages/ws-relay/package.json | 8 ++++---- 12 files changed, 39 insertions(+), 39 deletions(-) diff --git a/packages/browser-stdenv/package.json b/packages/browser-stdenv/package.json index 6efb98b..bb5cbf8 100644 --- a/packages/browser-stdenv/package.json +++ b/packages/browser-stdenv/package.json @@ -1,6 +1,6 @@ { "name": "@syndicate-lang/browser-stdenv", - "version": "0.27.1", + "version": "0.28.0", "description": "Aggregated Syndicate and Preserves scripts for in-browser use", "homepage": "https://github.com/syndicate-lang/syndicate-js/tree/main/packages/browser-stdenv", "license": "GPL-3.0+", @@ -22,8 +22,8 @@ "@preserves/core": "0.995.0", "@preserves/schema": "0.995.1", "@syndicate-lang/compiler": "^0.20.1", - "@syndicate-lang/core": "^0.27.1", - "@syndicate-lang/html2": "^0.28.1", - "@syndicate-lang/ws-relay": "^0.29.1" + "@syndicate-lang/core": "^0.28.0", + "@syndicate-lang/html2": "^0.29.0", + "@syndicate-lang/ws-relay": "^0.30.0" } } diff --git a/packages/core/package.json b/packages/core/package.json index 4f8bb36..e0f6593 100644 --- a/packages/core/package.json +++ b/packages/core/package.json @@ -1,6 +1,6 @@ { "name": "@syndicate-lang/core", - "version": "0.27.1", + "version": "0.28.0", "description": "Syndicate/JS for browser and node.js", "homepage": "https://github.com/syndicate-lang/syndicate-js/tree/main/packages/core", "license": "GPL-3.0+", diff --git a/packages/fs/package.json b/packages/fs/package.json index d9ee671..0eef1c4 100644 --- a/packages/fs/package.json +++ b/packages/fs/package.json @@ -1,6 +1,6 @@ { "name": "@syndicate-lang/fs", - "version": "0.28.1", + "version": "0.29.0", "description": "Reflect contents of a portion of the file system as assertions", "homepage": "https://github.com/syndicate-lang/syndicate-js/tree/main/packages/fs", "license": "GPL-3.0+", @@ -30,13 +30,13 @@ "@preserves/core": "0.995.0" }, "dependencies": { - "@syndicate-lang/core": "^0.27.1", - "@syndicate-lang/service": "^0.28.1", + "@syndicate-lang/core": "^0.28.0", + "@syndicate-lang/service": "^0.29.0", "chokidar": "^3.5.3" }, "devDependencies": { "@preserves/schema-cli": "0.995.1", - "@syndicate-lang/ts-plugin": "^0.28.1", - "@syndicate-lang/tsc": "^0.28.1" + "@syndicate-lang/ts-plugin": "^0.29.0", + "@syndicate-lang/tsc": "^0.29.0" } } diff --git a/packages/html/package.json b/packages/html/package.json index 0e32b6c..4320faf 100644 --- a/packages/html/package.json +++ b/packages/html/package.json @@ -1,6 +1,6 @@ { "name": "@syndicate-lang/html", - "version": "0.28.1", + "version": "0.29.0", "description": "DOM/HTML UI for Syndicate/JS", "homepage": "https://github.com/syndicate-lang/syndicate-js/tree/main/packages/html", "license": "GPL-3.0+", @@ -25,10 +25,10 @@ "veryclean": "yarn run clean && rm -rf node_modules" }, "dependencies": { - "@syndicate-lang/core": "^0.27.1" + "@syndicate-lang/core": "^0.28.0" }, "devDependencies": { - "@syndicate-lang/ts-plugin": "^0.28.1", - "@syndicate-lang/tsc": "^0.28.1" + "@syndicate-lang/ts-plugin": "^0.29.0", + "@syndicate-lang/tsc": "^0.29.0" } } diff --git a/packages/html2/package.json b/packages/html2/package.json index d527be3..411c76b 100644 --- a/packages/html2/package.json +++ b/packages/html2/package.json @@ -1,6 +1,6 @@ { "name": "@syndicate-lang/html2", - "version": "0.28.1", + "version": "0.29.0", "description": "DOM/HTML UI for Syndicate/JS", "homepage": "https://github.com/syndicate-lang/syndicate-js/tree/main/packages/html2", "license": "GPL-3.0+", @@ -25,10 +25,10 @@ "veryclean": "yarn run clean && rm -rf node_modules" }, "dependencies": { - "@syndicate-lang/core": "^0.27.1" + "@syndicate-lang/core": "^0.28.0" }, "devDependencies": { - "@syndicate-lang/ts-plugin": "^0.28.1", - "@syndicate-lang/tsc": "^0.28.1" + "@syndicate-lang/ts-plugin": "^0.29.0", + "@syndicate-lang/tsc": "^0.29.0" } } diff --git a/packages/loader/package.json b/packages/loader/package.json index 37cf402..05c8266 100644 --- a/packages/loader/package.json +++ b/packages/loader/package.json @@ -1,6 +1,6 @@ { "name": "@syndicate-lang/loader", - "version": "0.27.1", + "version": "0.28.0", "description": "Syndicate/JS node.js loader hook", "homepage": "https://github.com/syndicate-lang/syndicate-js/tree/main/packages/loader", "license": "GPL-3.0+", @@ -23,7 +23,7 @@ "author": "Tony Garnock-Jones ", "dependencies": { "@syndicate-lang/compiler": "^0.20.1", - "@syndicate-lang/core": "^0.27.1", - "@syndicate-lang/service": "^0.28.1" + "@syndicate-lang/core": "^0.28.0", + "@syndicate-lang/service": "^0.29.0" } } diff --git a/packages/service/package.json b/packages/service/package.json index 3f24ed2..f332a44 100644 --- a/packages/service/package.json +++ b/packages/service/package.json @@ -1,6 +1,6 @@ { "name": "@syndicate-lang/service", - "version": "0.28.1", + "version": "0.29.0", "description": "Run a node.js program as a service within syndicate-server", "homepage": "https://github.com/syndicate-lang/syndicate-js/tree/main/packages/service", "license": "GPL-3.0+", @@ -22,10 +22,10 @@ "veryclean": "yarn run clean && rm -rf node_modules" }, "dependencies": { - "@syndicate-lang/core": "^0.27.1" + "@syndicate-lang/core": "^0.28.0" }, "devDependencies": { - "@syndicate-lang/ts-plugin": "^0.28.1", - "@syndicate-lang/tsc": "^0.28.1" + "@syndicate-lang/ts-plugin": "^0.29.0", + "@syndicate-lang/tsc": "^0.29.0" } } diff --git a/packages/syndicatec/package.json b/packages/syndicatec/package.json index 82c266d..e43cc28 100644 --- a/packages/syndicatec/package.json +++ b/packages/syndicatec/package.json @@ -1,6 +1,6 @@ { "name": "@syndicate-lang/syndicatec", - "version": "0.28.1", + "version": "0.29.0", "description": "Syndicate/JS compiler command-line tool", "homepage": "https://github.com/syndicate-lang/syndicate-js/tree/main/packages/syndicatec", "license": "GPL-3.0+", @@ -21,7 +21,7 @@ "author": "Tony Garnock-Jones ", "dependencies": { "@syndicate-lang/compiler": "^0.20.1", - "@syndicate-lang/core": "^0.27.1", + "@syndicate-lang/core": "^0.28.0", "glob": "^7.1.6", "yargs": "^16.2.0" }, diff --git a/packages/timer/package.json b/packages/timer/package.json index cf21517..f128807 100644 --- a/packages/timer/package.json +++ b/packages/timer/package.json @@ -1,6 +1,6 @@ { "name": "@syndicate-lang/timer", - "version": "0.28.1", + "version": "0.29.0", "description": "Time and timer driver for Syndicate", "homepage": "https://github.com/syndicate-lang/syndicate-js/tree/main/packages/timer", "license": "GPL-3.0+", @@ -25,10 +25,10 @@ "veryclean": "yarn run clean && rm -rf node_modules" }, "dependencies": { - "@syndicate-lang/core": "^0.27.1" + "@syndicate-lang/core": "^0.28.0" }, "devDependencies": { - "@syndicate-lang/ts-plugin": "^0.28.1", - "@syndicate-lang/tsc": "^0.28.1" + "@syndicate-lang/ts-plugin": "^0.29.0", + "@syndicate-lang/tsc": "^0.29.0" } } diff --git a/packages/ts-plugin/package.json b/packages/ts-plugin/package.json index 00b3877..2aa766d 100644 --- a/packages/ts-plugin/package.json +++ b/packages/ts-plugin/package.json @@ -1,6 +1,6 @@ { "name": "@syndicate-lang/ts-plugin", - "version": "0.28.1", + "version": "0.29.0", "description": "Syndicate/JS TypeScript tsserver plugin", "homepage": "https://github.com/syndicate-lang/syndicate-js/tree/main/packages/ts-plugin", "license": "GPL-3.0+", @@ -23,7 +23,7 @@ "author": "Tony Garnock-Jones ", "dependencies": { "@syndicate-lang/compiler": "^0.20.1", - "@syndicate-lang/core": "^0.27.1" + "@syndicate-lang/core": "^0.28.0" }, "devDependencies": { "typescript": "^4.9" diff --git a/packages/tsc/package.json b/packages/tsc/package.json index ac8f857..2eba732 100644 --- a/packages/tsc/package.json +++ b/packages/tsc/package.json @@ -1,6 +1,6 @@ { "name": "@syndicate-lang/tsc", - "version": "0.28.1", + "version": "0.29.0", "description": "Syndicate for TypeScript compiler command-line tool", "homepage": "https://github.com/syndicate-lang/syndicate-js/tree/main/packages/tsc", "license": "GPL-3.0+", @@ -21,7 +21,7 @@ "author": "Tony Garnock-Jones ", "dependencies": { "@syndicate-lang/compiler": "^0.20.1", - "@syndicate-lang/core": "^0.27.1", + "@syndicate-lang/core": "^0.28.0", "glob": "^7.1.6", "yargs": "^16.2.0" }, diff --git a/packages/ws-relay/package.json b/packages/ws-relay/package.json index decad41..7adfd05 100644 --- a/packages/ws-relay/package.json +++ b/packages/ws-relay/package.json @@ -1,6 +1,6 @@ { "name": "@syndicate-lang/ws-relay", - "version": "0.29.1", + "version": "0.30.0", "description": "Browser WebSocket relay to a Syndicate server", "homepage": "https://github.com/syndicate-lang/syndicate-js/tree/main/packages/ws-relay", "license": "GPL-3.0+", @@ -28,11 +28,11 @@ "@preserves/core": "0.995.0" }, "dependencies": { - "@syndicate-lang/core": "^0.27.1", + "@syndicate-lang/core": "^0.28.0", "salty-crypto": "0.3" }, "devDependencies": { - "@syndicate-lang/ts-plugin": "^0.28.1", - "@syndicate-lang/tsc": "^0.28.1" + "@syndicate-lang/ts-plugin": "^0.29.0", + "@syndicate-lang/tsc": "^0.29.0" } } From 44d0d030ccfbf7ed6f03aeee59a037a087851b1d Mon Sep 17 00:00:00 2001 From: Tony Garnock-Jones Date: Sat, 16 Mar 2024 17:48:46 +0100 Subject: [PATCH 44/92] Fix preserves dep --- package.json | 2 +- packages/browser-stdenv/package.json | 4 +- packages/core/package.json | 6 +- packages/create/template/package.json | 4 +- packages/fs/package.json | 4 +- packages/ws-relay/package.json | 2 +- yarn.lock | 127 +++++++++++++++----------- 7 files changed, 87 insertions(+), 62 deletions(-) diff --git a/package.json b/package.json index 9770a98..1f794be 100644 --- a/package.json +++ b/package.json @@ -6,7 +6,7 @@ "packages/*/examples/*/" ], "devDependencies": { - "@preserves/core": "0.995.0", + "@preserves/core": "0.995.100", "@rollup/plugin-node-resolve": "^13.0", "@types/jest": "^27.0", "@types/node": "^14", diff --git a/packages/browser-stdenv/package.json b/packages/browser-stdenv/package.json index bb5cbf8..39f1768 100644 --- a/packages/browser-stdenv/package.json +++ b/packages/browser-stdenv/package.json @@ -19,8 +19,8 @@ "veryclean": "yarn run clean && rm -rf node_modules" }, "dependencies": { - "@preserves/core": "0.995.0", - "@preserves/schema": "0.995.1", + "@preserves/core": "0.995.100", + "@preserves/schema": "0.995.100", "@syndicate-lang/compiler": "^0.20.1", "@syndicate-lang/core": "^0.28.0", "@syndicate-lang/html2": "^0.29.0", diff --git a/packages/core/package.json b/packages/core/package.json index e0f6593..461612f 100644 --- a/packages/core/package.json +++ b/packages/core/package.json @@ -29,11 +29,11 @@ "types": "lib/index.d.ts", "author": "Tony Garnock-Jones ", "devDependencies": { - "@preserves/core": "0.995.0", - "@preserves/schema-cli": "0.995.1" + "@preserves/core": "0.995.100", + "@preserves/schema-cli": "0.995.100" }, "peerDependencies": { - "@preserves/core": "0.995.0" + "@preserves/core": "0.995.100" }, "dependencies": { "salty-crypto": "0.3.1" diff --git a/packages/create/template/package.json b/packages/create/template/package.json index 49f74dc..4e2eb0c 100644 --- a/packages/create/template/package.json +++ b/packages/create/template/package.json @@ -3,7 +3,7 @@ "version": "0.0.0", "license": "GPL-3.0+", "devDependencies": { - "@preserves/schema-cli": "0.995.1", + "@preserves/schema-cli": "0.995.100", "@syndicate-lang/ts-plugin": "*", "@syndicate-lang/tsc": "*", "rollup": "^2.60", @@ -12,7 +12,7 @@ "typescript-language-server": "^3.0" }, "dependencies": { - "@preserves/core": "0.995.0", + "@preserves/core": "0.995.100", "@syndicate-lang/core": "*", "@syndicate-lang/html2": "*", "@syndicate-lang/ws-relay": "*" diff --git a/packages/fs/package.json b/packages/fs/package.json index 0eef1c4..0e36c8a 100644 --- a/packages/fs/package.json +++ b/packages/fs/package.json @@ -27,7 +27,7 @@ "syndicate-fs": "./bin/syndicate-fs.js" }, "peerDependencies": { - "@preserves/core": "0.995.0" + "@preserves/core": "0.995.100" }, "dependencies": { "@syndicate-lang/core": "^0.28.0", @@ -35,7 +35,7 @@ "chokidar": "^3.5.3" }, "devDependencies": { - "@preserves/schema-cli": "0.995.1", + "@preserves/schema-cli": "0.995.100", "@syndicate-lang/ts-plugin": "^0.29.0", "@syndicate-lang/tsc": "^0.29.0" } diff --git a/packages/ws-relay/package.json b/packages/ws-relay/package.json index 7adfd05..c94be69 100644 --- a/packages/ws-relay/package.json +++ b/packages/ws-relay/package.json @@ -25,7 +25,7 @@ "types": "lib/index.d.ts", "author": "Tony Garnock-Jones ", "peerDependencies": { - "@preserves/core": "0.995.0" + "@preserves/core": "0.995.100" }, "dependencies": { "@syndicate-lang/core": "^0.28.0", diff --git a/yarn.lock b/yarn.lock index 9e21e88..c84989d 100644 --- a/yarn.lock +++ b/yarn.lock @@ -504,7 +504,7 @@ "@types/yargs" "^16.0.0" chalk "^4.0.0" -"@jridgewell/gen-mapping@^0.3.0", "@jridgewell/gen-mapping@^0.3.2", "@jridgewell/gen-mapping@^0.3.5": +"@jridgewell/gen-mapping@^0.3.2", "@jridgewell/gen-mapping@^0.3.5": version "0.3.5" resolved "https://registry.yarnpkg.com/@jridgewell/gen-mapping/-/gen-mapping-0.3.5.tgz#dcce6aff74bdf6dad1a95802b69b04a2fcb1fb36" integrity sha512-IzL8ZoEDIBRWEzlCcRhOaCupYyN5gdIK+Q6fbFdPDg6HqX6jpkItn7DFIpW9LQzXG6Df9sA7+OKnq0qlz/GaQg== @@ -524,12 +524,12 @@ integrity sha512-R8gLRTZeyp03ymzP/6Lil/28tGeGEzhx1q2k703KGWRAI1VdvPIXdG70VJc2pAMw3NA6JKL5hhFu1sJX0Mnn/A== "@jridgewell/source-map@^0.3.3": - version "0.3.5" - resolved "https://registry.yarnpkg.com/@jridgewell/source-map/-/source-map-0.3.5.tgz#a3bb4d5c6825aab0d281268f47f6ad5853431e91" - integrity sha512-UTYAUj/wviwdsMfzoSJspJxbkH5o1snzwX0//0ENX1u/55kkZZkcTZP6u9bwKGkv+dkk9at4m1Cpt0uY80kcpQ== + version "0.3.6" + resolved "https://registry.yarnpkg.com/@jridgewell/source-map/-/source-map-0.3.6.tgz#9d71ca886e32502eb9362c9a74a46787c36df81a" + integrity sha512-1ZJTZebgqllO79ue2bm3rIGud/bOe0pP5BjSRCRxxYkEZS8STV7zN84UBbiYu7jy+eCKSnVIUgoWWE/tt+shMQ== dependencies: - "@jridgewell/gen-mapping" "^0.3.0" - "@jridgewell/trace-mapping" "^0.3.9" + "@jridgewell/gen-mapping" "^0.3.5" + "@jridgewell/trace-mapping" "^0.3.25" "@jridgewell/sourcemap-codec@^1.4.10", "@jridgewell/sourcemap-codec@^1.4.14": version "1.4.15" @@ -544,7 +544,7 @@ "@jridgewell/resolve-uri" "^3.0.3" "@jridgewell/sourcemap-codec" "^1.4.10" -"@jridgewell/trace-mapping@^0.3.17", "@jridgewell/trace-mapping@^0.3.24", "@jridgewell/trace-mapping@^0.3.9": +"@jridgewell/trace-mapping@^0.3.17", "@jridgewell/trace-mapping@^0.3.24", "@jridgewell/trace-mapping@^0.3.25": version "0.3.25" resolved "https://registry.yarnpkg.com/@jridgewell/trace-mapping/-/trace-mapping-0.3.25.tgz#15f190e98895f3fc23276ee14bc76b675c2e50f0" integrity sha512-vNk6aEwybGtawWmy/PzwnGDOjCkLWSD2wqvjGGAgOAwCGWySYXfYoxt00IJkTF+8Lb57DwOb3Aa0o9CApepiYQ== @@ -1425,30 +1425,30 @@ resolved "https://registry.yarnpkg.com/@pkgjs/parseargs/-/parseargs-0.11.0.tgz#a77ea742fab25775145434eb1d2328cf5013ac33" integrity sha512-+1VkjdD0QBLPodGrJUeqarH8VAIvQODIbwh9XpP5Syisf7YoQgsJKPNFoqqLQlu+VQ/tVSshMR6loPMn8U+dPg== -"@preserves/core@0.995.0", "@preserves/core@^0.995.0": - version "0.995.0" - resolved "https://registry.yarnpkg.com/@preserves/core/-/core-0.995.0.tgz#d6badccd1fe56e45f23e01b4c8a33f421749e76b" - integrity sha512-0ICNcZ7HkBal1OJwoUuc1+KqoTQNJl2kYI3/nMtfrtNMem908unpydLo20k44Fgh/SRJekWaiRYSzKTcOo0+Tg== +"@preserves/core@0.995.100", "@preserves/core@^0.995.100": + version "0.995.100" + resolved "https://registry.yarnpkg.com/@preserves/core/-/core-0.995.100.tgz#9159d9ccd9a11314fbb09ad7db53090d5dccf98e" + integrity sha512-EpdAbWdel/upZ4QJT6JyiCiZ/cl70dyGRQLrExe0lh4Hvan/O59dv7GLuAWa5rtQJLp84bdYGXf8+iYcNM35WA== -"@preserves/schema-cli@0.995.1": - version "0.995.1" - resolved "https://registry.yarnpkg.com/@preserves/schema-cli/-/schema-cli-0.995.1.tgz#056027c76c54ef3395c787a58def12b17dcbd79c" - integrity sha512-9LSb5P+00P1ocx/saXy5d31bRastSJT7VQmrAltMgcx3BI5f/ChVVhBdn8P4+tRLUo02pTbGy4wBceHsyqCSZQ== +"@preserves/schema-cli@0.995.100": + version "0.995.100" + resolved "https://registry.yarnpkg.com/@preserves/schema-cli/-/schema-cli-0.995.100.tgz#c3ee6a1509f85bf280336a1e351fe47c29e107a1" + integrity sha512-o+msStzLAkevIi85dqUWg7TjTauRXx61TmezoDhaxIKmElKYbHCBDUj3esJTr5u3j+nCt1LFAZBMyHewblBUvg== dependencies: - "@preserves/core" "^0.995.0" - "@preserves/schema" "^0.995.1" + "@preserves/core" "^0.995.100" + "@preserves/schema" "^0.995.100" chalk "^4.1" chokidar "^3.5" commander "^7.2" glob "^7.1" minimatch "^3.0" -"@preserves/schema@0.995.1", "@preserves/schema@^0.995.1": - version "0.995.1" - resolved "https://registry.yarnpkg.com/@preserves/schema/-/schema-0.995.1.tgz#e218a4257171f1c3c6e7a2f4d7e1b88ce3ae998e" - integrity sha512-oh3SHMVOhqwFFZrzxnrAacBdUpdXtOyAoGyEOm9x0xehQ5NpYEnz/DdjXmW6iKeQ7Igoa1rSyibWbYfHV6fzvg== +"@preserves/schema@0.995.100", "@preserves/schema@^0.995.100": + version "0.995.100" + resolved "https://registry.yarnpkg.com/@preserves/schema/-/schema-0.995.100.tgz#27c5dbe7e866137e7b8686c0c4ea926e96120966" + integrity sha512-gHtFZ+MZZZem34lFyLqE54x//GjRBN3kERmqo28guivs+EFVk7io333HFl2dCCeLQTZfNfFnoFNNHe0ipaKOvA== dependencies: - "@preserves/core" "^0.995.0" + "@preserves/core" "^0.995.100" "@rollup/plugin-node-resolve@^13.0": version "13.3.0" @@ -1611,9 +1611,9 @@ integrity sha512-hov8bUuiLiyFPGyFPE1lwWhmzYbirOXQNNo40+y3zow8aFVTeyn3VWL0VFFfdNddA8S4Vf0Tc062rzyNr7Paag== "@types/node@*": - version "20.11.25" - resolved "https://registry.yarnpkg.com/@types/node/-/node-20.11.25.tgz#0f50d62f274e54dd7a49f7704cc16bfbcccaf49f" - integrity sha512-TBHyJxk2b7HceLVGFcpAUjsa5zIdsPWlR6XHfyGzd0SFu+/NFgQgMAl96MSDZgQDvJAvV6BKsFOrt6zIL09JDw== + version "20.11.28" + resolved "https://registry.yarnpkg.com/@types/node/-/node-20.11.28.tgz#4fd5b2daff2e580c12316e457473d68f15ee6f66" + integrity sha512-M/GPWVS2wLkSkNHVeLkrF2fD5Lx5UC4PxA0uZcKc6QqbIQUJyW1jVjueJYi1z8n0I5PxYrtpnPnWglE+y9A0KA== dependencies: undici-types "~5.26.4" @@ -1947,7 +1947,7 @@ atob@^2.1.2: resolved "https://registry.yarnpkg.com/atob/-/atob-2.1.2.tgz#6d9517eb9e030d2436666651e86bd9f6f13533c9" integrity sha512-Wm6ukoaOGJi/73p/cl2GvLjTI5JM1k/O14isD73YML8StrH/7/lRFgmg8nICZgD3bZZvjwCGxtMOD3wWNAu8cg== -available-typed-arrays@^1.0.6, available-typed-arrays@^1.0.7: +available-typed-arrays@^1.0.7: version "1.0.7" resolved "https://registry.yarnpkg.com/available-typed-arrays/-/available-typed-arrays-1.0.7.tgz#a5cc375d6a03c2efc87a553f3e0b1522def14846" integrity sha512-wvUjBtSGN7+7SjNpq/9M2Tg350UZD3q62IFZLbRAR1bSMlCo1ZaeW+BJ+D090e4hIIZLBcTDWe4Mh4jvUDajzQ== @@ -2048,9 +2048,9 @@ big-integer@^1.6.17: integrity sha512-QxD8cf2eVqJOOz63z6JIN9BzvVs/dlySa5HGSBH5xtR8dPteIRQnBxxKqkNTiT6jbDTF6jAfrd4oMcND9RGbQg== binary-extensions@^2.0.0: - version "2.2.0" - resolved "https://registry.yarnpkg.com/binary-extensions/-/binary-extensions-2.2.0.tgz#75f502eeaf9ffde42fc98829645be4ea76bd9e2d" - integrity sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA== + version "2.3.0" + resolved "https://registry.yarnpkg.com/binary-extensions/-/binary-extensions-2.3.0.tgz#f6e14a97858d327252200242d4ccfe522c445522" + integrity sha512-Ceh+7ox5qe7LJuLHoY0feh3pHuUDHAcRUeyL2VYghZwfpkNIy/+8Ocg0a3UuSoYzavmylwuLWQOf3hl0jjMMIw== binary@~0.3.0: version "0.3.0" @@ -2211,9 +2211,9 @@ camelcase@^6.2.0: integrity sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA== caniuse-lite@^1.0.30001587: - version "1.0.30001596" - resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30001596.tgz#da06b79c3d9c3d9958eb307aa832ac68ead79bee" - integrity sha512-zpkZ+kEr6We7w63ORkoJ2pOfBwBkY/bJrG/UZ90qNb45Isblu8wzDgevEOrRL1r9dWayHjYiiyCMEXPn4DweGQ== + version "1.0.30001597" + resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30001597.tgz#8be94a8c1d679de23b22fbd944232aa1321639e6" + integrity sha512-7LjJvmQU6Sj7bL0j5b5WY/3n7utXUJvAe1lxhsHDbLmwX9mdL86Yjtr+5SRCyf8qME4M7pU2hswj0FpyBVCv9w== caseless@~0.12.0: version "0.12.0" @@ -2805,9 +2805,9 @@ editorconfig@^1.0.4: semver "^7.5.3" electron-to-chromium@^1.4.668: - version "1.4.699" - resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.4.699.tgz#dd53c939e13da64e94b341e563f0a3011b4ef0e9" - integrity sha512-I7q3BbQi6e4tJJN5CRcyvxhK0iJb34TV8eJQcgh+fR2fQ8miMgZcEInckCo1U9exDHbfz7DLDnFn8oqH/VcRKw== + version "1.4.708" + resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.4.708.tgz#d54d3b47cb44ae6b190067439c42135456907893" + integrity sha512-iWgEEvREL4GTXXHKohhh33+6Y8XkPI5eHihDmm8zUk5Zo7HICEW+wI/j5kJ2tbuNUCXJ/sNXa03ajW635DiJXA== emittery@^0.8.1: version "0.8.1" @@ -3469,7 +3469,7 @@ has-symbols@^1.0.2, has-symbols@^1.0.3: resolved "https://registry.yarnpkg.com/has-symbols/-/has-symbols-1.0.3.tgz#bb7b2c4349251dce87b125f7bdf874aa7c8b39f8" integrity sha512-l3LCuF6MgDNwTDKkdYGEihYjt5pRPbEg46rtlmnSPlUbgmB8LOIrKJbYYFBSbnPaJexMKtiPO8hmeRjRz2Td+A== -has-tostringtag@^1.0.0, has-tostringtag@^1.0.1, has-tostringtag@^1.0.2: +has-tostringtag@^1.0.0, has-tostringtag@^1.0.2: version "1.0.2" resolved "https://registry.yarnpkg.com/has-tostringtag/-/has-tostringtag-1.0.2.tgz#2cdc42d40bef2e5b4eeab7c01a73c54ce7ab5abc" integrity sha512-NqADB8VjPFLM2V0VvHUewwwsw0ZWBaIdgo+ieHtK3hasLz4qeCRjYcqfB6AQrBggRKppKF8L52/VqdVsO47Dlw== @@ -3482,9 +3482,9 @@ has-unicode@^2.0.0, has-unicode@^2.0.1: integrity sha512-8Rf9Y83NBReMnx0gFzA8JImQACstCYWUplepDa9xprwwtmgEZUF0h/i5xSA625zB/I37EtrswSST6OXxwaaIJQ== hasown@^2.0.0, hasown@^2.0.1: - version "2.0.1" - resolved "https://registry.yarnpkg.com/hasown/-/hasown-2.0.1.tgz#26f48f039de2c0f8d3356c223fb8d50253519faa" - integrity sha512-1/th4MHjnwncwXsIW6QMzlvYL9kG5e/CpVvLRZe4XPa8TOUNbCELqmvhDmnkNsAjwaG4+I8gJJL0JBvTTLO9qA== + version "2.0.2" + resolved "https://registry.yarnpkg.com/hasown/-/hasown-2.0.2.tgz#003eaf91be7adc372e84ec59dc37252cedb80003" + integrity sha512-0hJU9SCPvmMzIBdZFqNPXWa6dqh7WdH0cII9y+CyS8rG3nL48Bclra9HmKhVVUHyPWNH5Y7xDwAB7bfgSjkUMQ== dependencies: function-bind "^1.1.2" @@ -6304,7 +6304,7 @@ string-length@^4.0.1: char-regex "^1.0.2" strip-ansi "^6.0.0" -"string-width-cjs@npm:string-width@^4.2.0", "string-width@^1.0.2 || 2 || 3 || 4", string-width@^4.1.0, string-width@^4.2.0: +"string-width-cjs@npm:string-width@^4.2.0": version "4.2.3" resolved "https://registry.yarnpkg.com/string-width/-/string-width-4.2.3.tgz#269c7117d27b05ad2e536830a8ec895ef9c6d010" integrity sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g== @@ -6322,6 +6322,15 @@ string-width@^1.0.1: is-fullwidth-code-point "^1.0.0" strip-ansi "^3.0.0" +"string-width@^1.0.2 || 2 || 3 || 4", string-width@^4.1.0, string-width@^4.2.0: + version "4.2.3" + resolved "https://registry.yarnpkg.com/string-width/-/string-width-4.2.3.tgz#269c7117d27b05ad2e536830a8ec895ef9c6d010" + integrity sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g== + dependencies: + emoji-regex "^8.0.0" + is-fullwidth-code-point "^3.0.0" + strip-ansi "^6.0.1" + string-width@^5.0.1, string-width@^5.1.2: version "5.1.2" resolved "https://registry.yarnpkg.com/string-width/-/string-width-5.1.2.tgz#14f8daec6d81e7221d2a357e668cab73bdbca794" @@ -6372,7 +6381,7 @@ string_decoder@~1.1.1: dependencies: safe-buffer "~5.1.0" -"strip-ansi-cjs@npm:strip-ansi@^6.0.1", strip-ansi@^6.0.0, strip-ansi@^6.0.1: +"strip-ansi-cjs@npm:strip-ansi@^6.0.1": version "6.0.1" resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-6.0.1.tgz#9e26c63d30f53443e9489495b2105d37b67a85d9" integrity sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A== @@ -6386,6 +6395,13 @@ strip-ansi@^3.0.0, strip-ansi@^3.0.1: dependencies: ansi-regex "^2.0.0" +strip-ansi@^6.0.0, strip-ansi@^6.0.1: + version "6.0.1" + resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-6.0.1.tgz#9e26c63d30f53443e9489495b2105d37b67a85d9" + integrity sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A== + dependencies: + ansi-regex "^5.0.1" + strip-ansi@^7.0.1: version "7.1.0" resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-7.1.0.tgz#d5b6568ca689d8561370b0707685d22434faff45" @@ -6523,9 +6539,9 @@ terminal-link@^2.0.0: supports-hyperlinks "^2.0.0" terser@^5.0.0: - version "5.29.1" - resolved "https://registry.yarnpkg.com/terser/-/terser-5.29.1.tgz#44e58045b70c09792ba14bfb7b4e14ca8755b9fa" - integrity sha512-lZQ/fyaIGxsbGxApKmoPTODIzELy3++mXhS5hOqaAWZjQtpq/hFHAc+rm29NND1rYRxRWKcjuARNwULNXa5RtQ== + version "5.29.2" + resolved "https://registry.yarnpkg.com/terser/-/terser-5.29.2.tgz#c17d573ce1da1b30f21a877bffd5655dd86fdb35" + integrity sha512-ZiGkhUBIM+7LwkNjXYJq8svgkd+QK3UUr0wJqY4MieaezBSAIPgbSPZyIx0idM6XWK5CMzSWa8MJIzmRcB8Caw== dependencies: "@jridgewell/source-map" "^0.3.3" acorn "^8.8.2" @@ -7066,15 +7082,15 @@ which-boxed-primitive@^1.0.2: is-symbol "^1.0.3" which-typed-array@^1.1.14: - version "1.1.14" - resolved "https://registry.yarnpkg.com/which-typed-array/-/which-typed-array-1.1.14.tgz#1f78a111aee1e131ca66164d8bdc3ab062c95a06" - integrity sha512-VnXFiIW8yNn9kIHN88xvZ4yOWchftKDsRJ8fEPacX/wl1lOvBrhsJ/OeJCXq7B0AaijRuqgzSKalJoPk+D8MPg== + version "1.1.15" + resolved "https://registry.yarnpkg.com/which-typed-array/-/which-typed-array-1.1.15.tgz#264859e9b11a649b388bfaaf4f767df1f779b38d" + integrity sha512-oV0jmFtUky6CXfkqehVvBP/LSWJ2sy4vWMioiENyJLePrBO/yKyV9OyJySfAKosh+RYkIl5zJCNZ8/4JncrpdA== dependencies: - available-typed-arrays "^1.0.6" - call-bind "^1.0.5" + available-typed-arrays "^1.0.7" + call-bind "^1.0.7" for-each "^0.3.3" gopd "^1.0.1" - has-tostringtag "^1.0.1" + has-tostringtag "^1.0.2" which@^1.3.1: version "1.3.1" @@ -7102,7 +7118,16 @@ wordwrap@^1.0.0: resolved "https://registry.yarnpkg.com/wordwrap/-/wordwrap-1.0.0.tgz#27584810891456a4171c8d0226441ade90cbcaeb" integrity sha512-gvVzJFlPycKc5dZN4yPkP8w7Dc37BtP1yczEneOb4uq34pXZcvrtRTmWV8W+Ume+XCxKgbjM+nevkyFPMybd4Q== -"wrap-ansi-cjs@npm:wrap-ansi@^7.0.0", wrap-ansi@^7.0.0: +"wrap-ansi-cjs@npm:wrap-ansi@^7.0.0": + version "7.0.0" + resolved "https://registry.yarnpkg.com/wrap-ansi/-/wrap-ansi-7.0.0.tgz#67e145cff510a6a6984bdf1152911d69d2eb9e43" + integrity sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q== + dependencies: + ansi-styles "^4.0.0" + string-width "^4.1.0" + strip-ansi "^6.0.0" + +wrap-ansi@^7.0.0: version "7.0.0" resolved "https://registry.yarnpkg.com/wrap-ansi/-/wrap-ansi-7.0.0.tgz#67e145cff510a6a6984bdf1152911d69d2eb9e43" integrity sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q== From 2abb541abab6700f80393837cbec4bec373ae69e Mon Sep 17 00:00:00 2001 From: Tony Garnock-Jones Date: Sat, 16 Mar 2024 17:49:05 +0100 Subject: [PATCH 45/92] Publish - @syndicate-lang/browser-stdenv@0.28.1 - @syndicate-lang/core@0.28.1 - @syndicate-lang/create@0.23.1 - @syndicate-lang/fs@0.29.1 - @syndicate-lang/html@0.29.1 - @syndicate-lang/html2@0.29.1 - @syndicate-lang/loader@0.28.1 - @syndicate-lang/service@0.29.1 - @syndicate-lang/syndicatec@0.29.1 - @syndicate-lang/timer@0.29.1 - @syndicate-lang/ts-plugin@0.29.1 - @syndicate-lang/tsc@0.29.1 - @syndicate-lang/ws-relay@0.30.1 --- packages/browser-stdenv/package.json | 8 ++++---- packages/core/package.json | 2 +- packages/create/package.json | 2 +- packages/fs/package.json | 10 +++++----- packages/html/package.json | 8 ++++---- packages/html2/package.json | 8 ++++---- packages/loader/package.json | 6 +++--- packages/service/package.json | 8 ++++---- packages/syndicatec/package.json | 4 ++-- packages/timer/package.json | 8 ++++---- packages/ts-plugin/package.json | 4 ++-- packages/tsc/package.json | 4 ++-- packages/ws-relay/package.json | 8 ++++---- 13 files changed, 40 insertions(+), 40 deletions(-) diff --git a/packages/browser-stdenv/package.json b/packages/browser-stdenv/package.json index 39f1768..3b00116 100644 --- a/packages/browser-stdenv/package.json +++ b/packages/browser-stdenv/package.json @@ -1,6 +1,6 @@ { "name": "@syndicate-lang/browser-stdenv", - "version": "0.28.0", + "version": "0.28.1", "description": "Aggregated Syndicate and Preserves scripts for in-browser use", "homepage": "https://github.com/syndicate-lang/syndicate-js/tree/main/packages/browser-stdenv", "license": "GPL-3.0+", @@ -22,8 +22,8 @@ "@preserves/core": "0.995.100", "@preserves/schema": "0.995.100", "@syndicate-lang/compiler": "^0.20.1", - "@syndicate-lang/core": "^0.28.0", - "@syndicate-lang/html2": "^0.29.0", - "@syndicate-lang/ws-relay": "^0.30.0" + "@syndicate-lang/core": "^0.28.1", + "@syndicate-lang/html2": "^0.29.1", + "@syndicate-lang/ws-relay": "^0.30.1" } } diff --git a/packages/core/package.json b/packages/core/package.json index 461612f..2b925fb 100644 --- a/packages/core/package.json +++ b/packages/core/package.json @@ -1,6 +1,6 @@ { "name": "@syndicate-lang/core", - "version": "0.28.0", + "version": "0.28.1", "description": "Syndicate/JS for browser and node.js", "homepage": "https://github.com/syndicate-lang/syndicate-js/tree/main/packages/core", "license": "GPL-3.0+", diff --git a/packages/create/package.json b/packages/create/package.json index d304240..f2ebce5 100644 --- a/packages/create/package.json +++ b/packages/create/package.json @@ -1,6 +1,6 @@ { "name": "@syndicate-lang/create", - "version": "0.23.0", + "version": "0.23.1", "description": "Create a new Syndicate/js package", "author": "Tony Garnock-Jones ", "homepage": "https://github.com/syndicate-lang/syndicate-js/tree/main/packages/create", diff --git a/packages/fs/package.json b/packages/fs/package.json index 0e36c8a..6946044 100644 --- a/packages/fs/package.json +++ b/packages/fs/package.json @@ -1,6 +1,6 @@ { "name": "@syndicate-lang/fs", - "version": "0.29.0", + "version": "0.29.1", "description": "Reflect contents of a portion of the file system as assertions", "homepage": "https://github.com/syndicate-lang/syndicate-js/tree/main/packages/fs", "license": "GPL-3.0+", @@ -30,13 +30,13 @@ "@preserves/core": "0.995.100" }, "dependencies": { - "@syndicate-lang/core": "^0.28.0", - "@syndicate-lang/service": "^0.29.0", + "@syndicate-lang/core": "^0.28.1", + "@syndicate-lang/service": "^0.29.1", "chokidar": "^3.5.3" }, "devDependencies": { "@preserves/schema-cli": "0.995.100", - "@syndicate-lang/ts-plugin": "^0.29.0", - "@syndicate-lang/tsc": "^0.29.0" + "@syndicate-lang/ts-plugin": "^0.29.1", + "@syndicate-lang/tsc": "^0.29.1" } } diff --git a/packages/html/package.json b/packages/html/package.json index 4320faf..a72c86e 100644 --- a/packages/html/package.json +++ b/packages/html/package.json @@ -1,6 +1,6 @@ { "name": "@syndicate-lang/html", - "version": "0.29.0", + "version": "0.29.1", "description": "DOM/HTML UI for Syndicate/JS", "homepage": "https://github.com/syndicate-lang/syndicate-js/tree/main/packages/html", "license": "GPL-3.0+", @@ -25,10 +25,10 @@ "veryclean": "yarn run clean && rm -rf node_modules" }, "dependencies": { - "@syndicate-lang/core": "^0.28.0" + "@syndicate-lang/core": "^0.28.1" }, "devDependencies": { - "@syndicate-lang/ts-plugin": "^0.29.0", - "@syndicate-lang/tsc": "^0.29.0" + "@syndicate-lang/ts-plugin": "^0.29.1", + "@syndicate-lang/tsc": "^0.29.1" } } diff --git a/packages/html2/package.json b/packages/html2/package.json index 411c76b..6d98d1a 100644 --- a/packages/html2/package.json +++ b/packages/html2/package.json @@ -1,6 +1,6 @@ { "name": "@syndicate-lang/html2", - "version": "0.29.0", + "version": "0.29.1", "description": "DOM/HTML UI for Syndicate/JS", "homepage": "https://github.com/syndicate-lang/syndicate-js/tree/main/packages/html2", "license": "GPL-3.0+", @@ -25,10 +25,10 @@ "veryclean": "yarn run clean && rm -rf node_modules" }, "dependencies": { - "@syndicate-lang/core": "^0.28.0" + "@syndicate-lang/core": "^0.28.1" }, "devDependencies": { - "@syndicate-lang/ts-plugin": "^0.29.0", - "@syndicate-lang/tsc": "^0.29.0" + "@syndicate-lang/ts-plugin": "^0.29.1", + "@syndicate-lang/tsc": "^0.29.1" } } diff --git a/packages/loader/package.json b/packages/loader/package.json index 05c8266..f752b81 100644 --- a/packages/loader/package.json +++ b/packages/loader/package.json @@ -1,6 +1,6 @@ { "name": "@syndicate-lang/loader", - "version": "0.28.0", + "version": "0.28.1", "description": "Syndicate/JS node.js loader hook", "homepage": "https://github.com/syndicate-lang/syndicate-js/tree/main/packages/loader", "license": "GPL-3.0+", @@ -23,7 +23,7 @@ "author": "Tony Garnock-Jones ", "dependencies": { "@syndicate-lang/compiler": "^0.20.1", - "@syndicate-lang/core": "^0.28.0", - "@syndicate-lang/service": "^0.29.0" + "@syndicate-lang/core": "^0.28.1", + "@syndicate-lang/service": "^0.29.1" } } diff --git a/packages/service/package.json b/packages/service/package.json index f332a44..8991893 100644 --- a/packages/service/package.json +++ b/packages/service/package.json @@ -1,6 +1,6 @@ { "name": "@syndicate-lang/service", - "version": "0.29.0", + "version": "0.29.1", "description": "Run a node.js program as a service within syndicate-server", "homepage": "https://github.com/syndicate-lang/syndicate-js/tree/main/packages/service", "license": "GPL-3.0+", @@ -22,10 +22,10 @@ "veryclean": "yarn run clean && rm -rf node_modules" }, "dependencies": { - "@syndicate-lang/core": "^0.28.0" + "@syndicate-lang/core": "^0.28.1" }, "devDependencies": { - "@syndicate-lang/ts-plugin": "^0.29.0", - "@syndicate-lang/tsc": "^0.29.0" + "@syndicate-lang/ts-plugin": "^0.29.1", + "@syndicate-lang/tsc": "^0.29.1" } } diff --git a/packages/syndicatec/package.json b/packages/syndicatec/package.json index e43cc28..ec46676 100644 --- a/packages/syndicatec/package.json +++ b/packages/syndicatec/package.json @@ -1,6 +1,6 @@ { "name": "@syndicate-lang/syndicatec", - "version": "0.29.0", + "version": "0.29.1", "description": "Syndicate/JS compiler command-line tool", "homepage": "https://github.com/syndicate-lang/syndicate-js/tree/main/packages/syndicatec", "license": "GPL-3.0+", @@ -21,7 +21,7 @@ "author": "Tony Garnock-Jones ", "dependencies": { "@syndicate-lang/compiler": "^0.20.1", - "@syndicate-lang/core": "^0.28.0", + "@syndicate-lang/core": "^0.28.1", "glob": "^7.1.6", "yargs": "^16.2.0" }, diff --git a/packages/timer/package.json b/packages/timer/package.json index f128807..a254ec4 100644 --- a/packages/timer/package.json +++ b/packages/timer/package.json @@ -1,6 +1,6 @@ { "name": "@syndicate-lang/timer", - "version": "0.29.0", + "version": "0.29.1", "description": "Time and timer driver for Syndicate", "homepage": "https://github.com/syndicate-lang/syndicate-js/tree/main/packages/timer", "license": "GPL-3.0+", @@ -25,10 +25,10 @@ "veryclean": "yarn run clean && rm -rf node_modules" }, "dependencies": { - "@syndicate-lang/core": "^0.28.0" + "@syndicate-lang/core": "^0.28.1" }, "devDependencies": { - "@syndicate-lang/ts-plugin": "^0.29.0", - "@syndicate-lang/tsc": "^0.29.0" + "@syndicate-lang/ts-plugin": "^0.29.1", + "@syndicate-lang/tsc": "^0.29.1" } } diff --git a/packages/ts-plugin/package.json b/packages/ts-plugin/package.json index 2aa766d..c15d6a0 100644 --- a/packages/ts-plugin/package.json +++ b/packages/ts-plugin/package.json @@ -1,6 +1,6 @@ { "name": "@syndicate-lang/ts-plugin", - "version": "0.29.0", + "version": "0.29.1", "description": "Syndicate/JS TypeScript tsserver plugin", "homepage": "https://github.com/syndicate-lang/syndicate-js/tree/main/packages/ts-plugin", "license": "GPL-3.0+", @@ -23,7 +23,7 @@ "author": "Tony Garnock-Jones ", "dependencies": { "@syndicate-lang/compiler": "^0.20.1", - "@syndicate-lang/core": "^0.28.0" + "@syndicate-lang/core": "^0.28.1" }, "devDependencies": { "typescript": "^4.9" diff --git a/packages/tsc/package.json b/packages/tsc/package.json index 2eba732..7a2d5b2 100644 --- a/packages/tsc/package.json +++ b/packages/tsc/package.json @@ -1,6 +1,6 @@ { "name": "@syndicate-lang/tsc", - "version": "0.29.0", + "version": "0.29.1", "description": "Syndicate for TypeScript compiler command-line tool", "homepage": "https://github.com/syndicate-lang/syndicate-js/tree/main/packages/tsc", "license": "GPL-3.0+", @@ -21,7 +21,7 @@ "author": "Tony Garnock-Jones ", "dependencies": { "@syndicate-lang/compiler": "^0.20.1", - "@syndicate-lang/core": "^0.28.0", + "@syndicate-lang/core": "^0.28.1", "glob": "^7.1.6", "yargs": "^16.2.0" }, diff --git a/packages/ws-relay/package.json b/packages/ws-relay/package.json index c94be69..757be53 100644 --- a/packages/ws-relay/package.json +++ b/packages/ws-relay/package.json @@ -1,6 +1,6 @@ { "name": "@syndicate-lang/ws-relay", - "version": "0.30.0", + "version": "0.30.1", "description": "Browser WebSocket relay to a Syndicate server", "homepage": "https://github.com/syndicate-lang/syndicate-js/tree/main/packages/ws-relay", "license": "GPL-3.0+", @@ -28,11 +28,11 @@ "@preserves/core": "0.995.100" }, "dependencies": { - "@syndicate-lang/core": "^0.28.0", + "@syndicate-lang/core": "^0.28.1", "salty-crypto": "0.3" }, "devDependencies": { - "@syndicate-lang/ts-plugin": "^0.29.0", - "@syndicate-lang/tsc": "^0.29.0" + "@syndicate-lang/ts-plugin": "^0.29.1", + "@syndicate-lang/tsc": "^0.29.1" } } From 140dc240c8ad54393a53c9539f2c2dd42e0a9719 Mon Sep 17 00:00:00 2001 From: Tony Garnock-Jones Date: Tue, 19 Mar 2024 20:35:20 +0100 Subject: [PATCH 46/92] Export Field from @syndicate-lang/core --- packages/core/src/index.ts | 1 + 1 file changed, 1 insertion(+) diff --git a/packages/core/src/index.ts b/packages/core/src/index.ts index 0f17bf8..2b0cadb 100644 --- a/packages/core/src/index.ts +++ b/packages/core/src/index.ts @@ -10,6 +10,7 @@ export * as DataspacePatterns from './gen/dataspacePatterns.js'; export * from './runtime/actor.js'; export * from './runtime/bag.js'; export * as Dataflow from './runtime/dataflow.js'; +export { Field } from './runtime/dataflow.js'; export * from './runtime/dataspace.js'; export * as Pattern from './runtime/pattern.js'; export * as QuasiValue from './runtime/quasivalue.js'; From 0f13f2b238c7d7409e0cc49e83d732accaa4204d Mon Sep 17 00:00:00 2001 From: Tony Garnock-Jones Date: Tue, 19 Mar 2024 20:35:54 +0100 Subject: [PATCH 47/92] Reset noise state when server retracts and reasserts session --- packages/ws-relay/src/index.ts | 23 ++++++++++++----------- 1 file changed, 12 insertions(+), 11 deletions(-) diff --git a/packages/ws-relay/src/index.ts b/packages/ws-relay/src/index.ts index e16df3e..2ba2485 100644 --- a/packages/ws-relay/src/index.ts +++ b/packages/ws-relay/src/index.ts @@ -247,16 +247,7 @@ export function boot(ds = Dataspace.global, debug: boolean = false, WebSocketCon (() => { throw new Error("Invalid pre-shared keys"); })(); const prologue = underlying(canonicalEncode(spec.service)); - const H = new SaltyCrypto.Handshake( - algorithms, - patternName, - 'initiator', - { - prologue, - remoteStaticPublicKey: underlying(spec.key), - preSharedKeys: preSharedKeys.map(underlying), - }); - + let H: SaltyCrypto.Handshake | null = null; let transportState: SaltyCrypto.TransportState | null = null; let responderSession: Ref | null = null; let relay: Relay.Relay | null = null; @@ -306,6 +297,16 @@ export function boot(ds = Dataspace.global, debug: boolean = false, WebSocketCon if (!response) return; switch (response._variant) { case "accepted": + H = new SaltyCrypto.Handshake( + algorithms, + patternName, + 'initiator', + { + prologue, + remoteStaticPublicKey: underlying(spec.key), + preSharedKeys: preSharedKeys.map(underlying), + }); + transportState = null; responderSession = response.responderSession; const { packet, finished } = H.writeMessage(new Uint8Array()); at responderSession { @@ -340,7 +341,7 @@ export function boot(ds = Dataspace.global, debug: boolean = false, WebSocketCon if (p._variant !== 'complete') { throw new Error("Unexpected fragmentation in handshake"); } - const { message, finished } = H.readMessage(underlying(p.value)); + const { message, finished } = H!.readMessage(underlying(p.value)); if (message.byteLength !== 0) { throw new Error("Unexpected payload during handshake"); } From 658f324e766b7039d7afc472fc360c7c2e05bd75 Mon Sep 17 00:00:00 2001 From: Tony Garnock-Jones Date: Tue, 19 Mar 2024 20:36:29 +0100 Subject: [PATCH 48/92] Publish - @syndicate-lang/browser-stdenv@0.28.2 - @syndicate-lang/core@0.28.2 - @syndicate-lang/fs@0.29.2 - @syndicate-lang/html@0.29.2 - @syndicate-lang/html2@0.29.2 - @syndicate-lang/loader@0.28.2 - @syndicate-lang/service@0.29.2 - @syndicate-lang/syndicatec@0.29.2 - @syndicate-lang/timer@0.29.2 - @syndicate-lang/ts-plugin@0.29.2 - @syndicate-lang/tsc@0.29.2 - @syndicate-lang/ws-relay@0.30.2 --- packages/browser-stdenv/package.json | 8 ++++---- packages/core/package.json | 2 +- packages/fs/package.json | 10 +++++----- packages/html/package.json | 8 ++++---- packages/html2/package.json | 8 ++++---- packages/loader/package.json | 6 +++--- packages/service/package.json | 8 ++++---- packages/syndicatec/package.json | 4 ++-- packages/timer/package.json | 8 ++++---- packages/ts-plugin/package.json | 4 ++-- packages/tsc/package.json | 4 ++-- packages/ws-relay/package.json | 8 ++++---- 12 files changed, 39 insertions(+), 39 deletions(-) diff --git a/packages/browser-stdenv/package.json b/packages/browser-stdenv/package.json index 3b00116..84b8c33 100644 --- a/packages/browser-stdenv/package.json +++ b/packages/browser-stdenv/package.json @@ -1,6 +1,6 @@ { "name": "@syndicate-lang/browser-stdenv", - "version": "0.28.1", + "version": "0.28.2", "description": "Aggregated Syndicate and Preserves scripts for in-browser use", "homepage": "https://github.com/syndicate-lang/syndicate-js/tree/main/packages/browser-stdenv", "license": "GPL-3.0+", @@ -22,8 +22,8 @@ "@preserves/core": "0.995.100", "@preserves/schema": "0.995.100", "@syndicate-lang/compiler": "^0.20.1", - "@syndicate-lang/core": "^0.28.1", - "@syndicate-lang/html2": "^0.29.1", - "@syndicate-lang/ws-relay": "^0.30.1" + "@syndicate-lang/core": "^0.28.2", + "@syndicate-lang/html2": "^0.29.2", + "@syndicate-lang/ws-relay": "^0.30.2" } } diff --git a/packages/core/package.json b/packages/core/package.json index 2b925fb..228c5bb 100644 --- a/packages/core/package.json +++ b/packages/core/package.json @@ -1,6 +1,6 @@ { "name": "@syndicate-lang/core", - "version": "0.28.1", + "version": "0.28.2", "description": "Syndicate/JS for browser and node.js", "homepage": "https://github.com/syndicate-lang/syndicate-js/tree/main/packages/core", "license": "GPL-3.0+", diff --git a/packages/fs/package.json b/packages/fs/package.json index 6946044..b907548 100644 --- a/packages/fs/package.json +++ b/packages/fs/package.json @@ -1,6 +1,6 @@ { "name": "@syndicate-lang/fs", - "version": "0.29.1", + "version": "0.29.2", "description": "Reflect contents of a portion of the file system as assertions", "homepage": "https://github.com/syndicate-lang/syndicate-js/tree/main/packages/fs", "license": "GPL-3.0+", @@ -30,13 +30,13 @@ "@preserves/core": "0.995.100" }, "dependencies": { - "@syndicate-lang/core": "^0.28.1", - "@syndicate-lang/service": "^0.29.1", + "@syndicate-lang/core": "^0.28.2", + "@syndicate-lang/service": "^0.29.2", "chokidar": "^3.5.3" }, "devDependencies": { "@preserves/schema-cli": "0.995.100", - "@syndicate-lang/ts-plugin": "^0.29.1", - "@syndicate-lang/tsc": "^0.29.1" + "@syndicate-lang/ts-plugin": "^0.29.2", + "@syndicate-lang/tsc": "^0.29.2" } } diff --git a/packages/html/package.json b/packages/html/package.json index a72c86e..585caad 100644 --- a/packages/html/package.json +++ b/packages/html/package.json @@ -1,6 +1,6 @@ { "name": "@syndicate-lang/html", - "version": "0.29.1", + "version": "0.29.2", "description": "DOM/HTML UI for Syndicate/JS", "homepage": "https://github.com/syndicate-lang/syndicate-js/tree/main/packages/html", "license": "GPL-3.0+", @@ -25,10 +25,10 @@ "veryclean": "yarn run clean && rm -rf node_modules" }, "dependencies": { - "@syndicate-lang/core": "^0.28.1" + "@syndicate-lang/core": "^0.28.2" }, "devDependencies": { - "@syndicate-lang/ts-plugin": "^0.29.1", - "@syndicate-lang/tsc": "^0.29.1" + "@syndicate-lang/ts-plugin": "^0.29.2", + "@syndicate-lang/tsc": "^0.29.2" } } diff --git a/packages/html2/package.json b/packages/html2/package.json index 6d98d1a..d51a7dd 100644 --- a/packages/html2/package.json +++ b/packages/html2/package.json @@ -1,6 +1,6 @@ { "name": "@syndicate-lang/html2", - "version": "0.29.1", + "version": "0.29.2", "description": "DOM/HTML UI for Syndicate/JS", "homepage": "https://github.com/syndicate-lang/syndicate-js/tree/main/packages/html2", "license": "GPL-3.0+", @@ -25,10 +25,10 @@ "veryclean": "yarn run clean && rm -rf node_modules" }, "dependencies": { - "@syndicate-lang/core": "^0.28.1" + "@syndicate-lang/core": "^0.28.2" }, "devDependencies": { - "@syndicate-lang/ts-plugin": "^0.29.1", - "@syndicate-lang/tsc": "^0.29.1" + "@syndicate-lang/ts-plugin": "^0.29.2", + "@syndicate-lang/tsc": "^0.29.2" } } diff --git a/packages/loader/package.json b/packages/loader/package.json index f752b81..a1e6873 100644 --- a/packages/loader/package.json +++ b/packages/loader/package.json @@ -1,6 +1,6 @@ { "name": "@syndicate-lang/loader", - "version": "0.28.1", + "version": "0.28.2", "description": "Syndicate/JS node.js loader hook", "homepage": "https://github.com/syndicate-lang/syndicate-js/tree/main/packages/loader", "license": "GPL-3.0+", @@ -23,7 +23,7 @@ "author": "Tony Garnock-Jones ", "dependencies": { "@syndicate-lang/compiler": "^0.20.1", - "@syndicate-lang/core": "^0.28.1", - "@syndicate-lang/service": "^0.29.1" + "@syndicate-lang/core": "^0.28.2", + "@syndicate-lang/service": "^0.29.2" } } diff --git a/packages/service/package.json b/packages/service/package.json index 8991893..26cf1fb 100644 --- a/packages/service/package.json +++ b/packages/service/package.json @@ -1,6 +1,6 @@ { "name": "@syndicate-lang/service", - "version": "0.29.1", + "version": "0.29.2", "description": "Run a node.js program as a service within syndicate-server", "homepage": "https://github.com/syndicate-lang/syndicate-js/tree/main/packages/service", "license": "GPL-3.0+", @@ -22,10 +22,10 @@ "veryclean": "yarn run clean && rm -rf node_modules" }, "dependencies": { - "@syndicate-lang/core": "^0.28.1" + "@syndicate-lang/core": "^0.28.2" }, "devDependencies": { - "@syndicate-lang/ts-plugin": "^0.29.1", - "@syndicate-lang/tsc": "^0.29.1" + "@syndicate-lang/ts-plugin": "^0.29.2", + "@syndicate-lang/tsc": "^0.29.2" } } diff --git a/packages/syndicatec/package.json b/packages/syndicatec/package.json index ec46676..8e2c3db 100644 --- a/packages/syndicatec/package.json +++ b/packages/syndicatec/package.json @@ -1,6 +1,6 @@ { "name": "@syndicate-lang/syndicatec", - "version": "0.29.1", + "version": "0.29.2", "description": "Syndicate/JS compiler command-line tool", "homepage": "https://github.com/syndicate-lang/syndicate-js/tree/main/packages/syndicatec", "license": "GPL-3.0+", @@ -21,7 +21,7 @@ "author": "Tony Garnock-Jones ", "dependencies": { "@syndicate-lang/compiler": "^0.20.1", - "@syndicate-lang/core": "^0.28.1", + "@syndicate-lang/core": "^0.28.2", "glob": "^7.1.6", "yargs": "^16.2.0" }, diff --git a/packages/timer/package.json b/packages/timer/package.json index a254ec4..bddd89a 100644 --- a/packages/timer/package.json +++ b/packages/timer/package.json @@ -1,6 +1,6 @@ { "name": "@syndicate-lang/timer", - "version": "0.29.1", + "version": "0.29.2", "description": "Time and timer driver for Syndicate", "homepage": "https://github.com/syndicate-lang/syndicate-js/tree/main/packages/timer", "license": "GPL-3.0+", @@ -25,10 +25,10 @@ "veryclean": "yarn run clean && rm -rf node_modules" }, "dependencies": { - "@syndicate-lang/core": "^0.28.1" + "@syndicate-lang/core": "^0.28.2" }, "devDependencies": { - "@syndicate-lang/ts-plugin": "^0.29.1", - "@syndicate-lang/tsc": "^0.29.1" + "@syndicate-lang/ts-plugin": "^0.29.2", + "@syndicate-lang/tsc": "^0.29.2" } } diff --git a/packages/ts-plugin/package.json b/packages/ts-plugin/package.json index c15d6a0..7155d86 100644 --- a/packages/ts-plugin/package.json +++ b/packages/ts-plugin/package.json @@ -1,6 +1,6 @@ { "name": "@syndicate-lang/ts-plugin", - "version": "0.29.1", + "version": "0.29.2", "description": "Syndicate/JS TypeScript tsserver plugin", "homepage": "https://github.com/syndicate-lang/syndicate-js/tree/main/packages/ts-plugin", "license": "GPL-3.0+", @@ -23,7 +23,7 @@ "author": "Tony Garnock-Jones ", "dependencies": { "@syndicate-lang/compiler": "^0.20.1", - "@syndicate-lang/core": "^0.28.1" + "@syndicate-lang/core": "^0.28.2" }, "devDependencies": { "typescript": "^4.9" diff --git a/packages/tsc/package.json b/packages/tsc/package.json index 7a2d5b2..481be65 100644 --- a/packages/tsc/package.json +++ b/packages/tsc/package.json @@ -1,6 +1,6 @@ { "name": "@syndicate-lang/tsc", - "version": "0.29.1", + "version": "0.29.2", "description": "Syndicate for TypeScript compiler command-line tool", "homepage": "https://github.com/syndicate-lang/syndicate-js/tree/main/packages/tsc", "license": "GPL-3.0+", @@ -21,7 +21,7 @@ "author": "Tony Garnock-Jones ", "dependencies": { "@syndicate-lang/compiler": "^0.20.1", - "@syndicate-lang/core": "^0.28.1", + "@syndicate-lang/core": "^0.28.2", "glob": "^7.1.6", "yargs": "^16.2.0" }, diff --git a/packages/ws-relay/package.json b/packages/ws-relay/package.json index 757be53..7292e28 100644 --- a/packages/ws-relay/package.json +++ b/packages/ws-relay/package.json @@ -1,6 +1,6 @@ { "name": "@syndicate-lang/ws-relay", - "version": "0.30.1", + "version": "0.30.2", "description": "Browser WebSocket relay to a Syndicate server", "homepage": "https://github.com/syndicate-lang/syndicate-js/tree/main/packages/ws-relay", "license": "GPL-3.0+", @@ -28,11 +28,11 @@ "@preserves/core": "0.995.100" }, "dependencies": { - "@syndicate-lang/core": "^0.28.1", + "@syndicate-lang/core": "^0.28.2", "salty-crypto": "0.3" }, "devDependencies": { - "@syndicate-lang/ts-plugin": "^0.29.1", - "@syndicate-lang/tsc": "^0.29.1" + "@syndicate-lang/ts-plugin": "^0.29.2", + "@syndicate-lang/tsc": "^0.29.2" } } From 73b77598162f18b5dc2fbd03498ac43a027db02e Mon Sep 17 00:00:00 2001 From: Tony Garnock-Jones Date: Thu, 21 Mar 2024 16:04:03 +0100 Subject: [PATCH 49/92] Allow statement boundary to include end-of-group, so long as the group is toplevel or braces --- packages/compiler/src/compiler/codegen.ts | 4 +- packages/compiler/src/compiler/grammar.ts | 14 ++++-- packages/compiler/src/syntax/list.ts | 19 +++++---- packages/compiler/src/syntax/matcher.ts | 52 +++++++++++++---------- packages/compiler/src/syntax/template.ts | 3 +- packages/compiler/test/compiler.test.ts | 12 +++++- packages/compiler/test/grammar.test.ts | 30 +++++++++++++ 7 files changed, 95 insertions(+), 39 deletions(-) create mode 100644 packages/compiler/test/grammar.test.ts diff --git a/packages/compiler/src/compiler/codegen.ts b/packages/compiler/src/compiler/codegen.ts index d365bfe..116de21 100644 --- a/packages/compiler/src/compiler/codegen.ts +++ b/packages/compiler/src/compiler/codegen.ts @@ -153,7 +153,7 @@ export function expand(tree: Items, ctx: ExpansionContext): Items { } function x(p: Pattern, f: (v: T, t: TemplateFunction) => Items) { - tree = replace(tree, p, (v, start) => f(v, macro.template(fixPos(start)))); + tree = replace(tree, null, p, (v, start) => f(v, macro.template(fixPos(start)))); } function xf(p: Pattern, f: (v: T, t: TemplateFunction) => Items) { @@ -168,7 +168,7 @@ export function expand(tree: Items, ctx: ExpansionContext): Items { // following transformations matters. xf(ctx.parser.duringStatement, (s, t) => { - let spawn = match(ctx.parser.spawn, s.body, null); + let spawn = match(ctx.parser.spawn, s.body, null, null); if (spawn !== null) { if (spawn.linkedToken !== null) { ctx.emitError(`during ... spawn doesn't need "linked", it's always linked`, diff --git a/packages/compiler/src/compiler/grammar.ts b/packages/compiler/src/compiler/grammar.ts index 2550214..699eb49 100644 --- a/packages/compiler/src/compiler/grammar.ts +++ b/packages/compiler/src/compiler/grammar.ts @@ -181,7 +181,15 @@ export class SyndicateParser { return group('{', map(rest, items => (acc?.push(... items), items))); } - readonly statementBoundary = alt(atom(';'), Matcher.newline); + readonly statementBoundary = alt( + atom(';'), + Matcher.newline, + seq(Matcher.end, i => { + if (i.context === null || i.context === '{') return discard(i); + // ^ toplevel, or inside braces, so presumably statement context + return fail(i); // otherwise, parens or brackets presumably, so not statement context + }), + ); readonly exprBoundary = alt(atom(';'), atom(','), group('{', discard), Matcher.end); readonly identifier: Pattern = atom(); @@ -432,7 +440,7 @@ export class SyndicateParser { hasCapturesOrDiscards(e: Expr): boolean { return foldItems(e, - t => match(alt(this.pCaptureBinder, this.pDiscard), [t], null) !== null, + t => match(alt(this.pCaptureBinder, this.pDiscard), [t], null, '(') !== null, (_g, b, _k) => b, bs => bs.some(b => b)); } @@ -495,7 +503,7 @@ export class SyndicateParser { // }); // } else if (this.hasCapturesOrDiscards(o.ctor)) { - const r = match(this.pCaptureBinder, o.ctor, null); + const r = match(this.pCaptureBinder, o.ctor, null, '('); if (r !== null && o.arguments.length === 1) { return succeed({ type: 'PCapture', diff --git a/packages/compiler/src/syntax/list.ts b/packages/compiler/src/syntax/list.ts index 3d95278..411ebae 100644 --- a/packages/compiler/src/syntax/list.ts +++ b/packages/compiler/src/syntax/list.ts @@ -1,26 +1,27 @@ /// SPDX-License-Identifier: GPL-3.0-or-later /// SPDX-FileCopyrightText: Copyright Ā© 2016-2024 Tony Garnock-Jones -export interface List extends Iterable { +export interface List extends Iterable { item: T | null; - next: List | null; + next: List | null; + context: C; toArray(): Array; } -export function atEnd(xs: List): xs is (List & { item: null, next: null }) { +export function atEnd(xs: List): xs is (List & { item: null, next: null }) { return xs.item === null; } -export function notAtEnd(xs: List): xs is (List & { item: T, next: List }) { +export function notAtEnd(xs: List): xs is (List & { item: T, next: List }) { return xs.item !== null; } -export class ArrayList implements List { +export class ArrayList implements List { readonly items: Array; readonly index: number = 0; - constructor(items: Array, index = 0) { + constructor(items: Array, public context: C, index = 0) { this.items = items; this.index = index; } @@ -29,9 +30,9 @@ export class ArrayList implements List { return this.items[this.index] ?? null; } - get next(): List | null { + get next(): List | null { if (this.index >= this.items.length) return null; - return new ArrayList(this.items, this.index + 1); + return new ArrayList(this.items, this.context, this.index + 1); } toArray(): Array { @@ -39,7 +40,7 @@ export class ArrayList implements List { } [Symbol.iterator](): Iterator { - let i: List = this; + let i: List = this; return { next(): IteratorResult { if (notAtEnd(i)) { diff --git a/packages/compiler/src/syntax/matcher.ts b/packages/compiler/src/syntax/matcher.ts index 67665fe..e8a5e6e 100644 --- a/packages/compiler/src/syntax/matcher.ts +++ b/packages/compiler/src/syntax/matcher.ts @@ -11,26 +11,28 @@ import { List, ArrayList, atEnd, notAtEnd } from './list'; //--------------------------------------------------------------------------- // Patterns over Item -export type PatternResult = [T, List] | null; -export type Pattern = (i: List) => PatternResult; +export type ItemContext = string /* the opener of the containing group, if any */ | null; +export type ItemList = List; +export type PatternResult = [T, ItemList] | null; +export type Pattern = (i: ItemList) => PatternResult; export type PatternTypeArg

= P extends Pattern ? T : never; -export function match(p: Pattern, items: Items, failure: F): T | F { - const r = p(new ArrayList(items)); +export function match(p: Pattern, items: Items, failure: F, context: ItemContext): T | F { + const r = p(new ArrayList(items, context)); if (r === null) return failure; if (notAtEnd(skipSpace(r[1]))) return failure; return r[0]; } -export const noItems = new ArrayList([]); +export const noItems = (c: ItemContext) => new ArrayList([], c); export const fail: Pattern = _i => null; export function succeed(t: T): Pattern { return i => [t, i]; } -export const discard: Pattern = _i => [void 0, noItems]; -export const rest: Pattern = i => [i.toArray(), noItems]; -export const end: Pattern = i => atEnd(skipSpace(i)) ? [void 0, noItems] : null; +export const discard: Pattern = i => [void 0, noItems(i.context)]; +export const rest: Pattern = i => [i.toArray(), noItems(i.context)]; +export const end: Pattern = i => atEnd(skipSpace(i)) ? [void 0, noItems(i.context)] : null; export const pos: Pattern = i => notAtEnd(i) ? [i.item.start, i] : null; export const newline: Pattern = i => { @@ -39,12 +41,12 @@ export const newline: Pattern = i => { return [i.item, i.next]; }; -export function skipSpace(i: List): List { +export function skipSpace(i: ItemList): ItemList { while (notAtEnd(i) && isSpace(i.item)) i = i.next; return i; } -export function collectSpace(i: List, acc: Array): List { +export function collectSpace(i: ItemList, acc: Array): ItemList { while (notAtEnd(i) && isSpace(i.item)) { acc.push(i.item); i = i.next; @@ -133,7 +135,7 @@ export function bind(target: T, key: K, pattern: Pattern) => void): Pattern { +export function exec(thunk: (i: ItemList) => void): Pattern { return i => { thunk(i); return [void 0, i]; @@ -174,7 +176,7 @@ export function group(opener: string, items: Pattern, options: GroupOption if (!notAtEnd(i)) return null; if (!isGroup(i.item)) return null; if (i.item.open.text !== opener) return null; - const r = items(new ArrayList(i.item.items)); + const r = items(new ArrayList(i.item.items, opener)); if (r === null) return null; if (!atEnd(r[1])) return null; return [r[0], (options.advance ?? true) ? i.next : i]; @@ -221,7 +223,7 @@ export function upTo(p: Pattern): Pattern { export function separatedBy(itemPattern: Pattern, separator: Pattern): Pattern { return i => { const acc: T[] = []; - if (end(i) !== null) return [acc, noItems]; + if (end(i) !== null) return [acc, noItems(i.context)]; while (true) { { const r = itemPattern(i); @@ -232,7 +234,7 @@ export function separatedBy(itemPattern: Pattern, separator: Pattern) { const r = separator(i); if (r === null) { - if (end(i) !== null) return [acc, noItems]; + if (end(i) !== null) return [acc, noItems(i.context)]; return null; } i = r[1]; @@ -247,7 +249,7 @@ export function separatedOrTerminatedBy( ): Pattern { return i => { const acc: T[] = []; - if (end(i) !== null) return [acc, noItems]; + if (end(i) !== null) return [acc, noItems(i.context)]; while (true) { { const r = itemPattern(i); @@ -258,11 +260,11 @@ export function separatedOrTerminatedBy( { const r = separator(i); if (r === null) { - if (end(i) !== null) return [acc, noItems]; + if (end(i) !== null) return [acc, noItems(i.context)]; return null; } else { i = r[1]; - if (end(i) !== null) return [acc, noItems]; + if (end(i) !== null) return [acc, noItems(i.context)]; } } } @@ -308,12 +310,13 @@ export function option(p: Pattern): Pattern { export function replace( items: Items, + outerContext: ItemContext, p: Pattern, f: (t: T, start: Pos, end: Pos) => Items, - end: Pos = items.length > 0 ? items[items.length - 1].end : startPos(null)) : Items -{ - const walkItems = (items: Items, end: Pos): Items => { - let i: List = new ArrayList(items); + end: Pos = items.length > 0 ? items[items.length - 1].end : startPos(null), +) : Items { + const walkItems = (items: Items, end: Pos, context: ItemContext): Items => { + let i: ItemList = new ArrayList(items, context); const acc: Items = []; while (notAtEnd(i = collectSpace(i, acc))) { const r = p(i); @@ -327,11 +330,14 @@ export function replace( acc.push(i.item); i = i.next; } else { - acc.push({ ... i.item, items: walkItems(i.item.items, i.item.end) }); + acc.push({ + ... i.item, + items: walkItems(i.item.items, i.item.end, i.item.open.text), + }); i = i.next; } } return acc; }; - return walkItems(items, end); + return walkItems(items, end, outerContext); } diff --git a/packages/compiler/src/syntax/template.ts b/packages/compiler/src/syntax/template.ts index 4eaa6b3..dabd3fc 100644 --- a/packages/compiler/src/syntax/template.ts +++ b/packages/compiler/src/syntax/template.ts @@ -29,7 +29,7 @@ export class Templates { this.readOptions = readOptions; } - template(start0: Pos | string = this.defaultPos): TemplateFunction { + template(start0: Pos | string = this.defaultPos, context: M.ItemContext = null): TemplateFunction { const start = (typeof start0 === 'string') ? startPos(start0) : start0; return (consts, ... vars) => { const sourcePieces = [consts[0]]; @@ -53,6 +53,7 @@ export class Templates { (this.readOptions.extraDelimiters ?? '') + '$', synthetic: true, }), + context, substPat, sub => toItems(this.readOptions, vars[i++], sub.pos)); }; diff --git a/packages/compiler/test/compiler.test.ts b/packages/compiler/test/compiler.test.ts index 1f1de12..b74f0b3 100644 --- a/packages/compiler/test/compiler.test.ts +++ b/packages/compiler/test/compiler.test.ts @@ -74,7 +74,17 @@ __SYNDICATE__.Dataspace._spawn(() => { describe('stop', () => { - it('non-statement', () => expectCodeEqual(`stop`, `stop`)); + it('non-statement', () => expectCodeEqual(`(stop)`, `(stop)`)); + it('toplevel end-delimited statement', () => expectCodeEqual(`stop`, ` +__SYNDICATE__.Turn.active._stop(currentSyndicateFacet, () => { + const currentSyndicateFacet = __SYNDICATE__.Turn.activeFacet; +});`)); + it('nested end-delimited statement', () => expectCodeEqual(`{ stop }`, ` +{ + __SYNDICATE__.Turn.active._stop(currentSyndicateFacet, () => { + const currentSyndicateFacet = __SYNDICATE__.Turn.activeFacet; + }); +}`)); it('without facet, without body', () => expectCodeEqual(`stop;`, ` __SYNDICATE__.Turn.active._stop(currentSyndicateFacet, () => { diff --git a/packages/compiler/test/grammar.test.ts b/packages/compiler/test/grammar.test.ts new file mode 100644 index 0000000..6ff8fda --- /dev/null +++ b/packages/compiler/test/grammar.test.ts @@ -0,0 +1,30 @@ +/// SPDX-License-Identifier: GPL-3.0-or-later +/// SPDX-FileCopyrightText: Copyright Ā© 2024 Tony Garnock-Jones + +import { Grammar, Syntax } from '../src/index'; +import './test-utils'; + +describe('statement boundary', () => { + function stmt(input: string): [string, string] | null { + const parser = new Grammar.SyndicateParser(); + const tree = Syntax.laxRead(input); + const items: Syntax.Items = []; + const r = parser.statement(items)(new Syntax.ArrayList(tree, '{')); + if (r === null) return null; + return [Syntax.itemText(items), Syntax.itemText(r[1].toArray())]; + } + + it('should include semicolon', () => { + expect(stmt('i am a statement ; ')).toEqual(['i am a statement;', ' ']); + }); + + it('should include newline', () => { + expect(stmt('i am a statement \n ')).toEqual(['i am a statement\n', ' ']); + }); + + it('should include closing brace on the same line', () => { + // Note that `" remainder is in outer group"` is discarded by `laxRead`. + expect(stmt('i am a statement } remainder is in outer group')) + .toEqual(['i am a statement', '']); + }); +}); From 1e29d528d7345f87be1db62f65b7dc4f93e946a9 Mon Sep 17 00:00:00 2001 From: Tony Garnock-Jones Date: Thu, 21 Mar 2024 16:04:30 +0100 Subject: [PATCH 50/92] Support toplevel typed binders in patterns --- packages/compiler/src/compiler/grammar.ts | 24 +++++++++++--------- packages/compiler/test/compiler.test.ts | 27 +++++++++++++++++++---- 2 files changed, 36 insertions(+), 15 deletions(-) diff --git a/packages/compiler/src/compiler/grammar.ts b/packages/compiler/src/compiler/grammar.ts index 699eb49..c5f951a 100644 --- a/packages/compiler/src/compiler/grammar.ts +++ b/packages/compiler/src/compiler/grammar.ts @@ -193,7 +193,8 @@ export class SyndicateParser { readonly exprBoundary = alt(atom(';'), atom(','), group('{', discard), Matcher.end); readonly identifier: Pattern = atom(); - get binder(): Pattern { return scope(o => bind(o, 'id', this.identifier)); } + binder(... _extraStops: Pattern[]): Pattern { return scope(o => bind(o, 'id', this.identifier)); } + readonly defaultBinder = this.binder(); expr(... extraStops: Pattern[]): Pattern { return withoutSpace(upTo(alt(this.exprBoundary, ... extraStops))); @@ -248,7 +249,7 @@ export class SyndicateParser { map(scope( (l: { b: Binder, init: Expr }) => seq(kw('let'), - bind(l, 'b', this.binder), + bind(l, 'b', this.defaultBinder), atom('='), bind(l, 'init', this.headerExpr))), l => { @@ -262,7 +263,7 @@ export class SyndicateParser { readonly fieldDeclarationStatement: Pattern = this.turnAction(o => { return seq(atom('field'), - bind(o, 'field', this.binder), + bind(o, 'field', this.defaultBinder), option(seq(atom('='), bind(o, 'init', this.expr()))), this.statementBoundary); }); @@ -333,7 +334,7 @@ export class SyndicateParser { scope(o => seq(bind(o, 'expectedUse', alt(atomString('message'), atomString('assertion'))), atom('type'), bind(o, 'label', this.identifier), - group('(', bind(o, 'fields', repeat(this.binder, { separator: atom(',') }))), + group('(', bind(o, 'fields', repeat(this.defaultBinder, { separator: atom(',') }))), option(seq(atom('='), bind(o, 'wireName', withoutSpace(upTo(this.statementBoundary))))), this.statementBoundary)); @@ -407,12 +408,13 @@ export class SyndicateParser { // {expr: expr, ...} - constant // other - constant - readonly pCaptureBinder: Pattern = - mapm(this.binder, i => { + pCaptureBinder = (b: Pattern): Pattern => + mapm(b, i => { return i.id.text.startsWith('$') ? succeed({ id: { ... i.id, text: i.id.text.slice(1) }, type: i.type }) : fail; }); + readonly pCaptureDefaultBinder = this.pCaptureBinder(this.defaultBinder); readonly pDiscard: Pattern = mapm(this.identifier, i => i.text === '_' ? succeed(void 0) : fail); @@ -440,7 +442,7 @@ export class SyndicateParser { hasCapturesOrDiscards(e: Expr): boolean { return foldItems(e, - t => match(alt(this.pCaptureBinder, this.pDiscard), [t], null, '(') !== null, + t => match(alt(this.pCaptureDefaultBinder, this.pDiscard), [t], null, '(') !== null, (_g, b, _k) => b, bs => bs.some(b => b)); } @@ -503,7 +505,7 @@ export class SyndicateParser { // }); // } else if (this.hasCapturesOrDiscards(o.ctor)) { - const r = match(this.pCaptureBinder, o.ctor, null, '('); + const r = match(this.pCaptureDefaultBinder, o.ctor, null, '('); if (r !== null && o.arguments.length === 1) { return succeed({ type: 'PCapture', @@ -520,7 +522,7 @@ export class SyndicateParser { scope(o => { o.type = 'PCapture'; o.inner = { type: 'PDiscard' }; - return bind(o, 'binder', this.pCaptureBinder); + return bind(o, 'binder', this.pCaptureBinder(this.binder(... extraStops))); }), map(this.expr(... extraStops), e => ({ type: 'PConstant', value: e })) )); @@ -528,10 +530,10 @@ export class SyndicateParser { } export class SyndicateTypedParser extends SyndicateParser { - get binder(): Pattern { + binder(... extraStops: Pattern[]): Pattern { return scope(o => seq(bind(o, 'id', this.identifier), option(seq(atom(':'), - bind(o, 'type', this.type(atom('='))))))); + bind(o, 'type', this.type(atom('='), ... extraStops)))))); } } diff --git a/packages/compiler/test/compiler.test.ts b/packages/compiler/test/compiler.test.ts index b74f0b3..c924f0a 100644 --- a/packages/compiler/test/compiler.test.ts +++ b/packages/compiler/test/compiler.test.ts @@ -19,14 +19,14 @@ function translate(source: string, options: Partial = {}): { cod return { code: result.text, errors }; } -function translateNoErrors(source: string): string { - const o = translate(source); +function translateNoErrors(source: string, options?: Partial): string { + const o = translate(source, options); expect(o.errors.length).toBe(0); return o.code; } -function expectCodeEqual(input: string, output: string) { - expect(format(translateNoErrors(input))).toBe(format(output)); +function expectCodeEqual(input: string, output: string, options?: Partial) { + expect(format(translateNoErrors(input, options))).toBe(format(output)); } describe('react', () => { @@ -150,6 +150,25 @@ __SYNDICATE__.Turn.active.assertDataflow(() => ({ }) }));`)); + it('capture with type at top', () => expectCodeEqual(`during $v: T => { ok() }`, ` +__SYNDICATE__.Turn.active.assertDataflow(() => ({ + target: currentSyndicateTarget, + assertion: __SYNDICATE__.Observe({ + pattern: __SYNDICATE__.QuasiValue.finish((__SYNDICATE__.QuasiValue.bind((__SYNDICATE__.QuasiValue._)))), + observer: __SYNDICATE__.Turn.ref(__SYNDICATE__.assertionFacetObserver( + (__vs: __SYNDICATE__.AnyValue) => { + if (Array.isArray(__vs)) { + const __v_0 = T.__from_preserve__(__vs[0]); + if (__v_0 === void 0) return; + const v = __v_0; + ok() + } + } + )) + }) +})); +`, { typescript: true })); + }); describe('once', () => { From 227b3e5062fbf83fae727951d6ad7f4a19d50098 Mon Sep 17 00:00:00 2001 From: Tony Garnock-Jones Date: Thu, 21 Mar 2024 16:05:34 +0100 Subject: [PATCH 51/92] Bump deps --- yarn.lock | 295 ++++++++++++++++++++++++++++++++++++------------------ 1 file changed, 197 insertions(+), 98 deletions(-) diff --git a/yarn.lock b/yarn.lock index c84989d..b6b1303 100644 --- a/yarn.lock +++ b/yarn.lock @@ -10,33 +10,33 @@ "@jridgewell/gen-mapping" "^0.3.5" "@jridgewell/trace-mapping" "^0.3.24" -"@babel/code-frame@^7.0.0", "@babel/code-frame@^7.10.4", "@babel/code-frame@^7.12.13", "@babel/code-frame@^7.23.5": - version "7.23.5" - resolved "https://registry.yarnpkg.com/@babel/code-frame/-/code-frame-7.23.5.tgz#9009b69a8c602293476ad598ff53e4562e15c244" - integrity sha512-CgH3s1a96LipHCmSUmYFPwY7MNx8C3avkq7i4Wl3cfa662ldtUe4VM1TPXX70pfmrlWTb6jLqTYrZyT2ZTJBgA== +"@babel/code-frame@^7.0.0", "@babel/code-frame@^7.10.4", "@babel/code-frame@^7.12.13", "@babel/code-frame@^7.23.5", "@babel/code-frame@^7.24.1", "@babel/code-frame@^7.24.2": + version "7.24.2" + resolved "https://registry.yarnpkg.com/@babel/code-frame/-/code-frame-7.24.2.tgz#718b4b19841809a58b29b68cde80bc5e1aa6d9ae" + integrity sha512-y5+tLQyV8pg3fsiln67BVLD1P13Eg4lh5RW9mF0zUuvLrv9uIQ4MCL+CRT+FTsBlBjcIan6PGsLcBN0m3ClUyQ== dependencies: - "@babel/highlight" "^7.23.4" - chalk "^2.4.2" + "@babel/highlight" "^7.24.2" + picocolors "^1.0.0" "@babel/compat-data@^7.23.5": - version "7.23.5" - resolved "https://registry.yarnpkg.com/@babel/compat-data/-/compat-data-7.23.5.tgz#ffb878728bb6bdcb6f4510aa51b1be9afb8cfd98" - integrity sha512-uU27kfDRlhfKl+w1U6vp16IuvSLtjAxdArVXPa9BvLkrr7CYIsxH5adpHObeAGY/41+syctUWOZ140a2Rvkgjw== + version "7.24.1" + resolved "https://registry.yarnpkg.com/@babel/compat-data/-/compat-data-7.24.1.tgz#31c1f66435f2a9c329bb5716a6d6186c516c3742" + integrity sha512-Pc65opHDliVpRHuKfzI+gSA4zcgr65O4cl64fFJIWEEh8JoHIHh0Oez1Eo8Arz8zq/JhgKodQaxEwUPRtZylVA== "@babel/core@^7.1.0", "@babel/core@^7.12.3", "@babel/core@^7.7.2", "@babel/core@^7.8.0": - version "7.24.0" - resolved "https://registry.yarnpkg.com/@babel/core/-/core-7.24.0.tgz#56cbda6b185ae9d9bed369816a8f4423c5f2ff1b" - integrity sha512-fQfkg0Gjkza3nf0c7/w6Xf34BW4YvzNfACRLmmb7XRLa6XHdR+K9AlJlxneFfWYf6uhOzuzZVTjF/8KfndZANw== + version "7.24.3" + resolved "https://registry.yarnpkg.com/@babel/core/-/core-7.24.3.tgz#568864247ea10fbd4eff04dda1e05f9e2ea985c3" + integrity sha512-5FcvN1JHw2sHJChotgx8Ek0lyuh4kCKelgMTTqhYJJtloNvUfpAFMeNQUtdlIaktwrSV9LtCdqwk48wL2wBacQ== dependencies: "@ampproject/remapping" "^2.2.0" - "@babel/code-frame" "^7.23.5" - "@babel/generator" "^7.23.6" + "@babel/code-frame" "^7.24.2" + "@babel/generator" "^7.24.1" "@babel/helper-compilation-targets" "^7.23.6" "@babel/helper-module-transforms" "^7.23.3" - "@babel/helpers" "^7.24.0" - "@babel/parser" "^7.24.0" + "@babel/helpers" "^7.24.1" + "@babel/parser" "^7.24.1" "@babel/template" "^7.24.0" - "@babel/traverse" "^7.24.0" + "@babel/traverse" "^7.24.1" "@babel/types" "^7.24.0" convert-source-map "^2.0.0" debug "^4.1.0" @@ -44,14 +44,14 @@ json5 "^2.2.3" semver "^6.3.1" -"@babel/generator@^7.23.6", "@babel/generator@^7.7.2": - version "7.23.6" - resolved "https://registry.yarnpkg.com/@babel/generator/-/generator-7.23.6.tgz#9e1fca4811c77a10580d17d26b57b036133f3c2e" - integrity sha512-qrSfCYxYQB5owCmGLbl8XRpX1ytXlpueOb0N0UmQwA073KZxejgQTzAmJezxvpwQD9uGtK2shHdi55QT+MbjIw== +"@babel/generator@^7.24.1", "@babel/generator@^7.7.2": + version "7.24.1" + resolved "https://registry.yarnpkg.com/@babel/generator/-/generator-7.24.1.tgz#e67e06f68568a4ebf194d1c6014235344f0476d0" + integrity sha512-DfCRfZsBcrPEHUfuBMgbJ1Ut01Y/itOs+hY2nFLgqsqXd52/iSiVq5TITtUasIUgm+IIKdY2/1I7auiQOEeC9A== dependencies: - "@babel/types" "^7.23.6" - "@jridgewell/gen-mapping" "^0.3.2" - "@jridgewell/trace-mapping" "^0.3.17" + "@babel/types" "^7.24.0" + "@jridgewell/gen-mapping" "^0.3.5" + "@jridgewell/trace-mapping" "^0.3.25" jsesc "^2.5.1" "@babel/helper-compilation-targets@^7.23.6": @@ -86,11 +86,11 @@ "@babel/types" "^7.22.5" "@babel/helper-module-imports@^7.22.15": - version "7.22.15" - resolved "https://registry.yarnpkg.com/@babel/helper-module-imports/-/helper-module-imports-7.22.15.tgz#16146307acdc40cc00c3b2c647713076464bdbf0" - integrity sha512-0pYVBnDKZO2fnSPCrgM/6WMc7eS20Fbok+0r88fp+YtWVLZrp4CkafFGIp+W0VKw4a22sgebPT99y+FDNMdP4w== + version "7.24.3" + resolved "https://registry.yarnpkg.com/@babel/helper-module-imports/-/helper-module-imports-7.24.3.tgz#6ac476e6d168c7c23ff3ba3cf4f7841d46ac8128" + integrity sha512-viKb0F9f2s0BCS22QSF308z/+1YWKV/76mwt61NBzS5izMzDPwdq1pTrzf+Li3npBWX9KdQbkeCt1jSAM7lZqg== dependencies: - "@babel/types" "^7.22.15" + "@babel/types" "^7.24.0" "@babel/helper-module-transforms@^7.23.3": version "7.23.3" @@ -103,7 +103,7 @@ "@babel/helper-split-export-declaration" "^7.22.6" "@babel/helper-validator-identifier" "^7.22.20" -"@babel/helper-plugin-utils@^7.0.0", "@babel/helper-plugin-utils@^7.10.4", "@babel/helper-plugin-utils@^7.12.13", "@babel/helper-plugin-utils@^7.14.5", "@babel/helper-plugin-utils@^7.22.5", "@babel/helper-plugin-utils@^7.8.0": +"@babel/helper-plugin-utils@^7.0.0", "@babel/helper-plugin-utils@^7.10.4", "@babel/helper-plugin-utils@^7.12.13", "@babel/helper-plugin-utils@^7.14.5", "@babel/helper-plugin-utils@^7.24.0", "@babel/helper-plugin-utils@^7.8.0": version "7.24.0" resolved "https://registry.yarnpkg.com/@babel/helper-plugin-utils/-/helper-plugin-utils-7.24.0.tgz#945681931a52f15ce879fd5b86ce2dae6d3d7f2a" integrity sha512-9cUznXMG0+FxRuJfvL82QlTqIzhVW9sL0KjMPHhAOOvpQGL8QtdxnBKILjBqxlHyliz0yCa1G903ZXI/FuHy2w== @@ -123,9 +123,9 @@ "@babel/types" "^7.22.5" "@babel/helper-string-parser@^7.23.4": - version "7.23.4" - resolved "https://registry.yarnpkg.com/@babel/helper-string-parser/-/helper-string-parser-7.23.4.tgz#9478c707febcbbe1ddb38a3d91a2e054ae622d83" - integrity sha512-803gmbQdqwdf4olxrX4AJyFBV/RTr3rSmOj0rKwesmzlfhYNDEs+/iOcznzpNWlJlIlTJC2QfPFcHB6DlzdVLQ== + version "7.24.1" + resolved "https://registry.yarnpkg.com/@babel/helper-string-parser/-/helper-string-parser-7.24.1.tgz#f99c36d3593db9540705d0739a1f10b5e20c696e" + integrity sha512-2ofRCjnnA9y+wk8b9IAREroeUP02KHp431N2mhKniy2yKIDKpbrHv9eXwm8cBeWQYcJmzv5qKCu65P47eCF7CQ== "@babel/helper-validator-identifier@^7.22.20": version "7.22.20" @@ -137,28 +137,29 @@ resolved "https://registry.yarnpkg.com/@babel/helper-validator-option/-/helper-validator-option-7.23.5.tgz#907a3fbd4523426285365d1206c423c4c5520307" integrity sha512-85ttAOMLsr53VgXkTbkx8oA6YTfT4q7/HzXSLEYmjcSTJPMPQtvq1BD79Byep5xMUYbGRzEpDsjUf3dyp54IKw== -"@babel/helpers@^7.24.0": - version "7.24.0" - resolved "https://registry.yarnpkg.com/@babel/helpers/-/helpers-7.24.0.tgz#a3dd462b41769c95db8091e49cfe019389a9409b" - integrity sha512-ulDZdc0Aj5uLc5nETsa7EPx2L7rM0YJM8r7ck7U73AXi7qOV44IHHRAYZHY6iU1rr3C5N4NtTmMRUJP6kwCWeA== +"@babel/helpers@^7.24.1": + version "7.24.1" + resolved "https://registry.yarnpkg.com/@babel/helpers/-/helpers-7.24.1.tgz#183e44714b9eba36c3038e442516587b1e0a1a94" + integrity sha512-BpU09QqEe6ZCHuIHFphEFgvNSrubve1FtyMton26ekZ85gRGi6LrTF7zArARp2YvyFxloeiRmtSCq5sjh1WqIg== dependencies: "@babel/template" "^7.24.0" - "@babel/traverse" "^7.24.0" + "@babel/traverse" "^7.24.1" "@babel/types" "^7.24.0" -"@babel/highlight@^7.23.4": - version "7.23.4" - resolved "https://registry.yarnpkg.com/@babel/highlight/-/highlight-7.23.4.tgz#edaadf4d8232e1a961432db785091207ead0621b" - integrity sha512-acGdbYSfp2WheJoJm/EBBBLh/ID8KDc64ISZ9DYtBmC8/Q204PZJLHyzeB5qMzJ5trcOkybd78M4x2KWsUq++A== +"@babel/highlight@^7.24.2": + version "7.24.2" + resolved "https://registry.yarnpkg.com/@babel/highlight/-/highlight-7.24.2.tgz#3f539503efc83d3c59080a10e6634306e0370d26" + integrity sha512-Yac1ao4flkTxTteCDZLEvdxg2fZfz1v8M4QpaGypq/WPDqg3ijHYbDfs+LG5hvzSoqaSZ9/Z9lKSP3CjZjv+pA== dependencies: "@babel/helper-validator-identifier" "^7.22.20" chalk "^2.4.2" js-tokens "^4.0.0" + picocolors "^1.0.0" -"@babel/parser@^7.1.0", "@babel/parser@^7.14.7", "@babel/parser@^7.20.7", "@babel/parser@^7.24.0": - version "7.24.0" - resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.24.0.tgz#26a3d1ff49031c53a97d03b604375f028746a9ac" - integrity sha512-QuP/FxEAzMSjXygs8v4N9dvdXzEHN4W1oF3PxuWAtPo08UdM17u89RDMgjLn/mlc56iM0HlLmVkO/wgR+rDgHg== +"@babel/parser@^7.1.0", "@babel/parser@^7.14.7", "@babel/parser@^7.20.7", "@babel/parser@^7.24.0", "@babel/parser@^7.24.1": + version "7.24.1" + resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.24.1.tgz#1e416d3627393fab1cb5b0f2f1796a100ae9133a" + integrity sha512-Zo9c7N3xdOIQrNip7Lc9wvRPzlRtovHVE4lkz8WEDr7uYh/GMQhSiIgFxGIArRHYdJE5kxtZjAf8rT0xhdLCzg== "@babel/plugin-syntax-async-generators@^7.8.4": version "7.8.4" @@ -245,11 +246,11 @@ "@babel/helper-plugin-utils" "^7.14.5" "@babel/plugin-syntax-typescript@^7.7.2": - version "7.23.3" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-typescript/-/plugin-syntax-typescript-7.23.3.tgz#24f460c85dbbc983cd2b9c4994178bcc01df958f" - integrity sha512-9EiNjVJOMwCO+43TqoTrgQ8jMwcAd0sWyXi9RPfIsLTj4R2MADDDQXELhffaUx/uJv2AYcxBgPwH6j4TIA4ytQ== + version "7.24.1" + resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-typescript/-/plugin-syntax-typescript-7.24.1.tgz#b3bcc51f396d15f3591683f90239de143c076844" + integrity sha512-Yhnmvy5HZEnHUty6i++gcfH1/l68AHnItFHnaCv6hn9dNh0hQvvQJsxpi4BMBFN5DLeHBuucT/0DgzXif/OyRw== dependencies: - "@babel/helper-plugin-utils" "^7.22.5" + "@babel/helper-plugin-utils" "^7.24.0" "@babel/template@^7.22.15", "@babel/template@^7.24.0", "@babel/template@^7.3.3": version "7.24.0" @@ -260,23 +261,23 @@ "@babel/parser" "^7.24.0" "@babel/types" "^7.24.0" -"@babel/traverse@^7.24.0", "@babel/traverse@^7.7.2": - version "7.24.0" - resolved "https://registry.yarnpkg.com/@babel/traverse/-/traverse-7.24.0.tgz#4a408fbf364ff73135c714a2ab46a5eab2831b1e" - integrity sha512-HfuJlI8qq3dEDmNU5ChzzpZRWq+oxCZQyMzIMEqLho+AQnhMnKQUzH6ydo3RBl/YjPCuk68Y6s0Gx0AeyULiWw== +"@babel/traverse@^7.24.1", "@babel/traverse@^7.7.2": + version "7.24.1" + resolved "https://registry.yarnpkg.com/@babel/traverse/-/traverse-7.24.1.tgz#d65c36ac9dd17282175d1e4a3c49d5b7988f530c" + integrity sha512-xuU6o9m68KeqZbQuDt2TcKSxUw/mrsvavlEqQ1leZ/B+C9tk6E4sRWy97WaXgvq5E+nU3cXMxv3WKOCanVMCmQ== dependencies: - "@babel/code-frame" "^7.23.5" - "@babel/generator" "^7.23.6" + "@babel/code-frame" "^7.24.1" + "@babel/generator" "^7.24.1" "@babel/helper-environment-visitor" "^7.22.20" "@babel/helper-function-name" "^7.23.0" "@babel/helper-hoist-variables" "^7.22.5" "@babel/helper-split-export-declaration" "^7.22.6" - "@babel/parser" "^7.24.0" + "@babel/parser" "^7.24.1" "@babel/types" "^7.24.0" debug "^4.3.1" globals "^11.1.0" -"@babel/types@^7.0.0", "@babel/types@^7.20.7", "@babel/types@^7.22.15", "@babel/types@^7.22.5", "@babel/types@^7.23.0", "@babel/types@^7.23.6", "@babel/types@^7.24.0", "@babel/types@^7.3.3": +"@babel/types@^7.0.0", "@babel/types@^7.20.7", "@babel/types@^7.22.5", "@babel/types@^7.23.0", "@babel/types@^7.24.0", "@babel/types@^7.3.3": version "7.24.0" resolved "https://registry.yarnpkg.com/@babel/types/-/types-7.24.0.tgz#3b951f435a92e7333eba05b7566fd297960ea1bf" integrity sha512-+j7a5c253RfKh8iABBhywc8NSfP5LURe7Uh4qpsh6jc+aLJguvmIUBdjSdEMQv2bENrCR5MfRdjGo7vzS/ob7w== @@ -504,7 +505,7 @@ "@types/yargs" "^16.0.0" chalk "^4.0.0" -"@jridgewell/gen-mapping@^0.3.2", "@jridgewell/gen-mapping@^0.3.5": +"@jridgewell/gen-mapping@^0.3.5": version "0.3.5" resolved "https://registry.yarnpkg.com/@jridgewell/gen-mapping/-/gen-mapping-0.3.5.tgz#dcce6aff74bdf6dad1a95802b69b04a2fcb1fb36" integrity sha512-IzL8ZoEDIBRWEzlCcRhOaCupYyN5gdIK+Q6fbFdPDg6HqX6jpkItn7DFIpW9LQzXG6Df9sA7+OKnq0qlz/GaQg== @@ -544,7 +545,7 @@ "@jridgewell/resolve-uri" "^3.0.3" "@jridgewell/sourcemap-codec" "^1.4.10" -"@jridgewell/trace-mapping@^0.3.17", "@jridgewell/trace-mapping@^0.3.24", "@jridgewell/trace-mapping@^0.3.25": +"@jridgewell/trace-mapping@^0.3.24", "@jridgewell/trace-mapping@^0.3.25": version "0.3.25" resolved "https://registry.yarnpkg.com/@jridgewell/trace-mapping/-/trace-mapping-0.3.25.tgz#15f190e98895f3fc23276ee14bc76b675c2e50f0" integrity sha512-vNk6aEwybGtawWmy/PzwnGDOjCkLWSD2wqvjGGAgOAwCGWySYXfYoxt00IJkTF+8Lb57DwOb3Aa0o9CApepiYQ== @@ -1611,9 +1612,9 @@ integrity sha512-hov8bUuiLiyFPGyFPE1lwWhmzYbirOXQNNo40+y3zow8aFVTeyn3VWL0VFFfdNddA8S4Vf0Tc062rzyNr7Paag== "@types/node@*": - version "20.11.28" - resolved "https://registry.yarnpkg.com/@types/node/-/node-20.11.28.tgz#4fd5b2daff2e580c12316e457473d68f15ee6f66" - integrity sha512-M/GPWVS2wLkSkNHVeLkrF2fD5Lx5UC4PxA0uZcKc6QqbIQUJyW1jVjueJYi1z8n0I5PxYrtpnPnWglE+y9A0KA== + version "20.11.30" + resolved "https://registry.yarnpkg.com/@types/node/-/node-20.11.30.tgz#9c33467fc23167a347e73834f788f4b9f399d66f" + integrity sha512-dHM6ZxwlmuZaRmUPfv1p+KrdD1Dci04FbdEm/9wEMouFqxYoFl5aMkt0VMAUtYRQDyYvD41WJLukhq/ha3YuTw== dependencies: undici-types "~5.26.4" @@ -1881,14 +1882,16 @@ array-union@^2.1.0: integrity sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw== array.prototype.reduce@^1.0.6: - version "1.0.6" - resolved "https://registry.yarnpkg.com/array.prototype.reduce/-/array.prototype.reduce-1.0.6.tgz#63149931808c5fc1e1354814923d92d45f7d96d5" - integrity sha512-UW+Mz8LG/sPSU8jRDCjVr6J/ZKAGpHfwrZ6kWTG5qCxIEiXdVshqGnu5vEZA8S1y6X4aCSbQZ0/EEsfvEvBiSg== + version "1.0.7" + resolved "https://registry.yarnpkg.com/array.prototype.reduce/-/array.prototype.reduce-1.0.7.tgz#6aadc2f995af29cb887eb866d981dc85ab6f7dc7" + integrity sha512-mzmiUCVwtiD4lgxYP8g7IYy8El8p2CSMePvIbTS7gchKir/L1fgJrk0yDKmAX6mnRQFKNADYIk8nNlTris5H1Q== dependencies: - call-bind "^1.0.2" - define-properties "^1.2.0" - es-abstract "^1.22.1" + call-bind "^1.0.7" + define-properties "^1.2.1" + es-abstract "^1.23.2" es-array-method-boxes-properly "^1.0.0" + es-errors "^1.3.0" + es-object-atoms "^1.0.0" is-string "^1.0.7" arraybuffer.prototype.slice@^1.0.3: @@ -2211,9 +2214,9 @@ camelcase@^6.2.0: integrity sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA== caniuse-lite@^1.0.30001587: - version "1.0.30001597" - resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30001597.tgz#8be94a8c1d679de23b22fbd944232aa1321639e6" - integrity sha512-7LjJvmQU6Sj7bL0j5b5WY/3n7utXUJvAe1lxhsHDbLmwX9mdL86Yjtr+5SRCyf8qME4M7pU2hswj0FpyBVCv9w== + version "1.0.30001599" + resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30001599.tgz#571cf4f3f1506df9bf41fcbb6d10d5d017817bce" + integrity sha512-LRAQHZ4yT1+f9LemSMeqdMpMxZcc4RMWdj4tiFe3G8tNkWK+E58g+/tzotb5cU6TbcVJLr4fySiAW7XmxQvZQA== caseless@~0.12.0: version "0.12.0" @@ -2611,6 +2614,33 @@ data-urls@^2.0.0: whatwg-mimetype "^2.3.0" whatwg-url "^8.0.0" +data-view-buffer@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/data-view-buffer/-/data-view-buffer-1.0.1.tgz#8ea6326efec17a2e42620696e671d7d5a8bc66b2" + integrity sha512-0lht7OugA5x3iJLOWFhWK/5ehONdprk0ISXqVFn/NFrDu+cuc8iADFrGQz5BnRK7LLU3JmkbXSxaqX+/mXYtUA== + dependencies: + call-bind "^1.0.6" + es-errors "^1.3.0" + is-data-view "^1.0.1" + +data-view-byte-length@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/data-view-byte-length/-/data-view-byte-length-1.0.1.tgz#90721ca95ff280677eb793749fce1011347669e2" + integrity sha512-4J7wRJD3ABAzr8wP+OcIcqq2dlUKp4DVflx++hs5h5ZKydWMI6/D/fAot+yh6g2tHh8fLFTvNOaVN357NvSrOQ== + dependencies: + call-bind "^1.0.7" + es-errors "^1.3.0" + is-data-view "^1.0.1" + +data-view-byte-offset@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/data-view-byte-offset/-/data-view-byte-offset-1.0.0.tgz#5e0bbfb4828ed2d1b9b400cd8a7d119bca0ff18a" + integrity sha512-t/Ygsytq+R995EJ5PZlD4Cu56sWa8InXySaViRzw9apusqsOO2bQP+SbYzAhR0pFKoB+43lYy8rWban9JSuXnA== + dependencies: + call-bind "^1.0.6" + es-errors "^1.3.0" + is-data-view "^1.0.1" + dateformat@^3.0.0: version "3.0.3" resolved "https://registry.yarnpkg.com/dateformat/-/dateformat-3.0.3.tgz#a6e37499a4d9a9cf85ef5872044d62901c9889ae" @@ -2805,9 +2835,9 @@ editorconfig@^1.0.4: semver "^7.5.3" electron-to-chromium@^1.4.668: - version "1.4.708" - resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.4.708.tgz#d54d3b47cb44ae6b190067439c42135456907893" - integrity sha512-iWgEEvREL4GTXXHKohhh33+6Y8XkPI5eHihDmm8zUk5Zo7HICEW+wI/j5kJ2tbuNUCXJ/sNXa03ajW635DiJXA== + version "1.4.713" + resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.4.713.tgz#7cd8e4083c948f8d0cc686fcfdde97d97fd76556" + integrity sha512-vDarADhwntXiULEdmWd77g2dV6FrNGa8ecAC29MZ4TwPut2fvosD0/5sJd1qWNNe8HcJFAC+F5Lf9jW1NPtWmw== emittery@^0.8.1: version "0.8.1" @@ -2900,6 +2930,58 @@ es-abstract@^1.22.1, es-abstract@^1.22.3: unbox-primitive "^1.0.2" which-typed-array "^1.1.14" +es-abstract@^1.23.0, es-abstract@^1.23.2: + version "1.23.2" + resolved "https://registry.yarnpkg.com/es-abstract/-/es-abstract-1.23.2.tgz#693312f3940f967b8dd3eebacb590b01712622e0" + integrity sha512-60s3Xv2T2p1ICykc7c+DNDPLDMm9t4QxCOUU0K9JxiLjM3C1zB9YVdN7tjxrFd4+AkZ8CdX1ovUga4P2+1e+/w== + dependencies: + array-buffer-byte-length "^1.0.1" + arraybuffer.prototype.slice "^1.0.3" + available-typed-arrays "^1.0.7" + call-bind "^1.0.7" + data-view-buffer "^1.0.1" + data-view-byte-length "^1.0.1" + data-view-byte-offset "^1.0.0" + es-define-property "^1.0.0" + es-errors "^1.3.0" + es-object-atoms "^1.0.0" + es-set-tostringtag "^2.0.3" + es-to-primitive "^1.2.1" + function.prototype.name "^1.1.6" + get-intrinsic "^1.2.4" + get-symbol-description "^1.0.2" + globalthis "^1.0.3" + gopd "^1.0.1" + has-property-descriptors "^1.0.2" + has-proto "^1.0.3" + has-symbols "^1.0.3" + hasown "^2.0.2" + internal-slot "^1.0.7" + is-array-buffer "^3.0.4" + is-callable "^1.2.7" + is-data-view "^1.0.1" + is-negative-zero "^2.0.3" + is-regex "^1.1.4" + is-shared-array-buffer "^1.0.3" + is-string "^1.0.7" + is-typed-array "^1.1.13" + is-weakref "^1.0.2" + object-inspect "^1.13.1" + object-keys "^1.1.1" + object.assign "^4.1.5" + regexp.prototype.flags "^1.5.2" + safe-array-concat "^1.1.2" + safe-regex-test "^1.0.3" + string.prototype.trim "^1.2.9" + string.prototype.trimend "^1.0.8" + string.prototype.trimstart "^1.0.7" + typed-array-buffer "^1.0.2" + typed-array-byte-length "^1.0.1" + typed-array-byte-offset "^1.0.2" + typed-array-length "^1.0.5" + unbox-primitive "^1.0.2" + which-typed-array "^1.1.15" + es-array-method-boxes-properly@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/es-array-method-boxes-properly/-/es-array-method-boxes-properly-1.0.0.tgz#873f3e84418de4ee19c5be752990b2e44718d09e" @@ -2917,6 +2999,13 @@ es-errors@^1.2.1, es-errors@^1.3.0: resolved "https://registry.yarnpkg.com/es-errors/-/es-errors-1.3.0.tgz#05f75a25dab98e4fb1dcd5e1472c0546d5057c8f" integrity sha512-Zf5H2Kxt2xjTvbJvP2ZWLEICxA6j+hAmMzIlypy4xcBg1vKVnx89Wy0GbS+kf5cwCVFFzdCFh2XSCFNULS6csw== +es-object-atoms@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/es-object-atoms/-/es-object-atoms-1.0.0.tgz#ddb55cd47ac2e240701260bc2a8e31ecb643d941" + integrity sha512-MZ4iQ6JwHOBQjahnjwaC1ZtIBH+2ohjamzAO3oaHcXYup7qxjF2fixyH+Q71voWHeOkI2q/TnJao/KfXYIZWbw== + dependencies: + es-errors "^1.3.0" + es-set-tostringtag@^2.0.3: version "2.0.3" resolved "https://registry.yarnpkg.com/es-set-tostringtag/-/es-set-tostringtag-2.0.3.tgz#8bb60f0a440c2e4281962428438d58545af39777" @@ -3481,7 +3570,7 @@ has-unicode@^2.0.0, has-unicode@^2.0.1: resolved "https://registry.yarnpkg.com/has-unicode/-/has-unicode-2.0.1.tgz#e0e6fe6a28cf51138855e086d1691e771de2a8b9" integrity sha512-8Rf9Y83NBReMnx0gFzA8JImQACstCYWUplepDa9xprwwtmgEZUF0h/i5xSA625zB/I37EtrswSST6OXxwaaIJQ== -hasown@^2.0.0, hasown@^2.0.1: +hasown@^2.0.0, hasown@^2.0.1, hasown@^2.0.2: version "2.0.2" resolved "https://registry.yarnpkg.com/hasown/-/hasown-2.0.2.tgz#003eaf91be7adc372e84ec59dc37252cedb80003" integrity sha512-0hJU9SCPvmMzIBdZFqNPXWa6dqh7WdH0cII9y+CyS8rG3nL48Bclra9HmKhVVUHyPWNH5Y7xDwAB7bfgSjkUMQ== @@ -3740,6 +3829,13 @@ is-core-module@^2.13.0, is-core-module@^2.5.0: dependencies: hasown "^2.0.0" +is-data-view@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/is-data-view/-/is-data-view-1.0.1.tgz#4b4d3a511b70f3dc26d42c03ca9ca515d847759f" + integrity sha512-AHkaJrsUVW6wq6JS8y3JnM/GJF/9cf+k20+iDzlSaJrinEo5+7vRiteOSwBhHRiAyQATN1AmY4hwzxJKPmYf+w== + dependencies: + is-typed-array "^1.1.13" + is-date-object@^1.0.1: version "1.0.5" resolved "https://registry.yarnpkg.com/is-date-object/-/is-date-object-1.0.5.tgz#0841d5536e724c25597bf6ea62e1bd38298df31f" @@ -5263,15 +5359,17 @@ object.assign@^4.1.5: object-keys "^1.1.1" object.getownpropertydescriptors@^2.0.3: - version "2.1.7" - resolved "https://registry.yarnpkg.com/object.getownpropertydescriptors/-/object.getownpropertydescriptors-2.1.7.tgz#7a466a356cd7da4ba8b9e94ff6d35c3eeab5d56a" - integrity sha512-PrJz0C2xJ58FNn11XV2lr4Jt5Gzl94qpy9Lu0JlfEj14z88sqbSBJCBEzdlNUCzY2gburhbrwOZ5BHCmuNUy0g== + version "2.1.8" + resolved "https://registry.yarnpkg.com/object.getownpropertydescriptors/-/object.getownpropertydescriptors-2.1.8.tgz#2f1fe0606ec1a7658154ccd4f728504f69667923" + integrity sha512-qkHIGe4q0lSYMv0XI4SsBTJz3WaURhLvd0lKSgtVuOsJ2krg4SgMw3PIRQFMp07yi++UR3se2mkcLqsBNpBb/A== dependencies: array.prototype.reduce "^1.0.6" - call-bind "^1.0.2" - define-properties "^1.2.0" - es-abstract "^1.22.1" - safe-array-concat "^1.0.0" + call-bind "^1.0.7" + define-properties "^1.2.1" + es-abstract "^1.23.2" + es-object-atoms "^1.0.0" + gopd "^1.0.1" + safe-array-concat "^1.1.2" once@^1.3.0, once@^1.4.0: version "1.4.0" @@ -5980,7 +6078,7 @@ rxjs@^6.6.0: dependencies: tslib "^1.9.0" -safe-array-concat@^1.0.0, safe-array-concat@^1.1.0: +safe-array-concat@^1.1.0, safe-array-concat@^1.1.2: version "1.1.2" resolved "https://registry.yarnpkg.com/safe-array-concat/-/safe-array-concat-1.1.2.tgz#81d77ee0c4e8b863635227c721278dd524c20edb" integrity sha512-vj6RsCsWBCf19jIeHEfkRMw8DPiBb+DMXklQ/1SGDHOMlHdPUkZXFQ2YdplS23zESTijAcurb1aSgJA3AgMu1Q== @@ -6340,23 +6438,24 @@ string-width@^5.0.1, string-width@^5.1.2: emoji-regex "^9.2.2" strip-ansi "^7.0.1" -string.prototype.trim@^1.2.8: - version "1.2.8" - resolved "https://registry.yarnpkg.com/string.prototype.trim/-/string.prototype.trim-1.2.8.tgz#f9ac6f8af4bd55ddfa8895e6aea92a96395393bd" - integrity sha512-lfjY4HcixfQXOfaqCvcBuOIapyaroTXhbkfJN3gcB1OtyupngWK4sEET9Knd0cXd28kTUqu/kHoV4HKSJdnjiQ== +string.prototype.trim@^1.2.8, string.prototype.trim@^1.2.9: + version "1.2.9" + resolved "https://registry.yarnpkg.com/string.prototype.trim/-/string.prototype.trim-1.2.9.tgz#b6fa326d72d2c78b6df02f7759c73f8f6274faa4" + integrity sha512-klHuCNxiMZ8MlsOihJhJEBJAiMVqU3Z2nEXWfWnIqjN0gEFS9J9+IxKozWWtQGcgoa1WUZzLjKPTr4ZHNFTFxw== dependencies: - call-bind "^1.0.2" - define-properties "^1.2.0" - es-abstract "^1.22.1" + call-bind "^1.0.7" + define-properties "^1.2.1" + es-abstract "^1.23.0" + es-object-atoms "^1.0.0" -string.prototype.trimend@^1.0.7: - version "1.0.7" - resolved "https://registry.yarnpkg.com/string.prototype.trimend/-/string.prototype.trimend-1.0.7.tgz#1bb3afc5008661d73e2dc015cd4853732d6c471e" - integrity sha512-Ni79DqeB72ZFq1uH/L6zJ+DKZTkOtPIHovb3YZHQViE+HDouuU4mBrLOLDn5Dde3RF8qw5qVETEjhu9locMLvA== +string.prototype.trimend@^1.0.7, string.prototype.trimend@^1.0.8: + version "1.0.8" + resolved "https://registry.yarnpkg.com/string.prototype.trimend/-/string.prototype.trimend-1.0.8.tgz#3651b8513719e8a9f48de7f2f77640b26652b229" + integrity sha512-p73uL5VCHCO2BZZ6krwwQE3kCzM7NKmis8S//xEC6fQonchbum4eP6kR4DLEjQFO3Wnj3Fuo8NM0kOSjVdHjZQ== dependencies: - call-bind "^1.0.2" - define-properties "^1.2.0" - es-abstract "^1.22.1" + call-bind "^1.0.7" + define-properties "^1.2.1" + es-object-atoms "^1.0.0" string.prototype.trimstart@^1.0.7: version "1.0.7" @@ -7081,7 +7180,7 @@ which-boxed-primitive@^1.0.2: is-string "^1.0.5" is-symbol "^1.0.3" -which-typed-array@^1.1.14: +which-typed-array@^1.1.14, which-typed-array@^1.1.15: version "1.1.15" resolved "https://registry.yarnpkg.com/which-typed-array/-/which-typed-array-1.1.15.tgz#264859e9b11a649b388bfaaf4f767df1f779b38d" integrity sha512-oV0jmFtUky6CXfkqehVvBP/LSWJ2sy4vWMioiENyJLePrBO/yKyV9OyJySfAKosh+RYkIl5zJCNZ8/4JncrpdA== From de2a163dee54d200ec11808b6762f62f9f3315da Mon Sep 17 00:00:00 2001 From: Tony Garnock-Jones Date: Thu, 21 Mar 2024 16:08:15 +0100 Subject: [PATCH 52/92] Publish - @syndicate-lang/browser-stdenv@0.29.0 - @syndicate-lang/compiler@0.21.0 - @syndicate-lang/fs@0.29.3 - @syndicate-lang/html@0.29.3 - @syndicate-lang/html2@0.29.3 - @syndicate-lang/loader@0.29.0 - @syndicate-lang/service@0.29.3 - @syndicate-lang/syndicatec@0.30.0 - @syndicate-lang/timer@0.29.3 - @syndicate-lang/ts-plugin@0.30.0 - @syndicate-lang/tsc@0.30.0 - @syndicate-lang/ws-relay@0.30.3 --- packages/browser-stdenv/package.json | 8 ++++---- packages/compiler/package.json | 2 +- packages/fs/package.json | 8 ++++---- packages/html/package.json | 6 +++--- packages/html2/package.json | 6 +++--- packages/loader/package.json | 6 +++--- packages/service/package.json | 6 +++--- packages/syndicatec/package.json | 4 ++-- packages/timer/package.json | 6 +++--- packages/ts-plugin/package.json | 4 ++-- packages/tsc/package.json | 4 ++-- packages/ws-relay/package.json | 6 +++--- 12 files changed, 33 insertions(+), 33 deletions(-) diff --git a/packages/browser-stdenv/package.json b/packages/browser-stdenv/package.json index 84b8c33..4c0af59 100644 --- a/packages/browser-stdenv/package.json +++ b/packages/browser-stdenv/package.json @@ -1,6 +1,6 @@ { "name": "@syndicate-lang/browser-stdenv", - "version": "0.28.2", + "version": "0.29.0", "description": "Aggregated Syndicate and Preserves scripts for in-browser use", "homepage": "https://github.com/syndicate-lang/syndicate-js/tree/main/packages/browser-stdenv", "license": "GPL-3.0+", @@ -21,9 +21,9 @@ "dependencies": { "@preserves/core": "0.995.100", "@preserves/schema": "0.995.100", - "@syndicate-lang/compiler": "^0.20.1", + "@syndicate-lang/compiler": "^0.21.0", "@syndicate-lang/core": "^0.28.2", - "@syndicate-lang/html2": "^0.29.2", - "@syndicate-lang/ws-relay": "^0.30.2" + "@syndicate-lang/html2": "^0.29.3", + "@syndicate-lang/ws-relay": "^0.30.3" } } diff --git a/packages/compiler/package.json b/packages/compiler/package.json index 5eaeb1a..472ee1f 100644 --- a/packages/compiler/package.json +++ b/packages/compiler/package.json @@ -1,6 +1,6 @@ { "name": "@syndicate-lang/compiler", - "version": "0.20.1", + "version": "0.21.0", "description": "Syndicate/JS compiler library", "homepage": "https://github.com/syndicate-lang/syndicate-js/tree/main/packages/compiler", "license": "GPL-3.0+", diff --git a/packages/fs/package.json b/packages/fs/package.json index b907548..b40532f 100644 --- a/packages/fs/package.json +++ b/packages/fs/package.json @@ -1,6 +1,6 @@ { "name": "@syndicate-lang/fs", - "version": "0.29.2", + "version": "0.29.3", "description": "Reflect contents of a portion of the file system as assertions", "homepage": "https://github.com/syndicate-lang/syndicate-js/tree/main/packages/fs", "license": "GPL-3.0+", @@ -31,12 +31,12 @@ }, "dependencies": { "@syndicate-lang/core": "^0.28.2", - "@syndicate-lang/service": "^0.29.2", + "@syndicate-lang/service": "^0.29.3", "chokidar": "^3.5.3" }, "devDependencies": { "@preserves/schema-cli": "0.995.100", - "@syndicate-lang/ts-plugin": "^0.29.2", - "@syndicate-lang/tsc": "^0.29.2" + "@syndicate-lang/ts-plugin": "^0.30.0", + "@syndicate-lang/tsc": "^0.30.0" } } diff --git a/packages/html/package.json b/packages/html/package.json index 585caad..2e3a863 100644 --- a/packages/html/package.json +++ b/packages/html/package.json @@ -1,6 +1,6 @@ { "name": "@syndicate-lang/html", - "version": "0.29.2", + "version": "0.29.3", "description": "DOM/HTML UI for Syndicate/JS", "homepage": "https://github.com/syndicate-lang/syndicate-js/tree/main/packages/html", "license": "GPL-3.0+", @@ -28,7 +28,7 @@ "@syndicate-lang/core": "^0.28.2" }, "devDependencies": { - "@syndicate-lang/ts-plugin": "^0.29.2", - "@syndicate-lang/tsc": "^0.29.2" + "@syndicate-lang/ts-plugin": "^0.30.0", + "@syndicate-lang/tsc": "^0.30.0" } } diff --git a/packages/html2/package.json b/packages/html2/package.json index d51a7dd..0135e01 100644 --- a/packages/html2/package.json +++ b/packages/html2/package.json @@ -1,6 +1,6 @@ { "name": "@syndicate-lang/html2", - "version": "0.29.2", + "version": "0.29.3", "description": "DOM/HTML UI for Syndicate/JS", "homepage": "https://github.com/syndicate-lang/syndicate-js/tree/main/packages/html2", "license": "GPL-3.0+", @@ -28,7 +28,7 @@ "@syndicate-lang/core": "^0.28.2" }, "devDependencies": { - "@syndicate-lang/ts-plugin": "^0.29.2", - "@syndicate-lang/tsc": "^0.29.2" + "@syndicate-lang/ts-plugin": "^0.30.0", + "@syndicate-lang/tsc": "^0.30.0" } } diff --git a/packages/loader/package.json b/packages/loader/package.json index a1e6873..e97c3bd 100644 --- a/packages/loader/package.json +++ b/packages/loader/package.json @@ -1,6 +1,6 @@ { "name": "@syndicate-lang/loader", - "version": "0.28.2", + "version": "0.29.0", "description": "Syndicate/JS node.js loader hook", "homepage": "https://github.com/syndicate-lang/syndicate-js/tree/main/packages/loader", "license": "GPL-3.0+", @@ -22,8 +22,8 @@ "types": "lib/index.d.ts", "author": "Tony Garnock-Jones ", "dependencies": { - "@syndicate-lang/compiler": "^0.20.1", + "@syndicate-lang/compiler": "^0.21.0", "@syndicate-lang/core": "^0.28.2", - "@syndicate-lang/service": "^0.29.2" + "@syndicate-lang/service": "^0.29.3" } } diff --git a/packages/service/package.json b/packages/service/package.json index 26cf1fb..cda3f1c 100644 --- a/packages/service/package.json +++ b/packages/service/package.json @@ -1,6 +1,6 @@ { "name": "@syndicate-lang/service", - "version": "0.29.2", + "version": "0.29.3", "description": "Run a node.js program as a service within syndicate-server", "homepage": "https://github.com/syndicate-lang/syndicate-js/tree/main/packages/service", "license": "GPL-3.0+", @@ -25,7 +25,7 @@ "@syndicate-lang/core": "^0.28.2" }, "devDependencies": { - "@syndicate-lang/ts-plugin": "^0.29.2", - "@syndicate-lang/tsc": "^0.29.2" + "@syndicate-lang/ts-plugin": "^0.30.0", + "@syndicate-lang/tsc": "^0.30.0" } } diff --git a/packages/syndicatec/package.json b/packages/syndicatec/package.json index 8e2c3db..d2df2dc 100644 --- a/packages/syndicatec/package.json +++ b/packages/syndicatec/package.json @@ -1,6 +1,6 @@ { "name": "@syndicate-lang/syndicatec", - "version": "0.29.2", + "version": "0.30.0", "description": "Syndicate/JS compiler command-line tool", "homepage": "https://github.com/syndicate-lang/syndicate-js/tree/main/packages/syndicatec", "license": "GPL-3.0+", @@ -20,7 +20,7 @@ }, "author": "Tony Garnock-Jones ", "dependencies": { - "@syndicate-lang/compiler": "^0.20.1", + "@syndicate-lang/compiler": "^0.21.0", "@syndicate-lang/core": "^0.28.2", "glob": "^7.1.6", "yargs": "^16.2.0" diff --git a/packages/timer/package.json b/packages/timer/package.json index bddd89a..21a8861 100644 --- a/packages/timer/package.json +++ b/packages/timer/package.json @@ -1,6 +1,6 @@ { "name": "@syndicate-lang/timer", - "version": "0.29.2", + "version": "0.29.3", "description": "Time and timer driver for Syndicate", "homepage": "https://github.com/syndicate-lang/syndicate-js/tree/main/packages/timer", "license": "GPL-3.0+", @@ -28,7 +28,7 @@ "@syndicate-lang/core": "^0.28.2" }, "devDependencies": { - "@syndicate-lang/ts-plugin": "^0.29.2", - "@syndicate-lang/tsc": "^0.29.2" + "@syndicate-lang/ts-plugin": "^0.30.0", + "@syndicate-lang/tsc": "^0.30.0" } } diff --git a/packages/ts-plugin/package.json b/packages/ts-plugin/package.json index 7155d86..fcbb01e 100644 --- a/packages/ts-plugin/package.json +++ b/packages/ts-plugin/package.json @@ -1,6 +1,6 @@ { "name": "@syndicate-lang/ts-plugin", - "version": "0.29.2", + "version": "0.30.0", "description": "Syndicate/JS TypeScript tsserver plugin", "homepage": "https://github.com/syndicate-lang/syndicate-js/tree/main/packages/ts-plugin", "license": "GPL-3.0+", @@ -22,7 +22,7 @@ "types": "lib/index.d.ts", "author": "Tony Garnock-Jones ", "dependencies": { - "@syndicate-lang/compiler": "^0.20.1", + "@syndicate-lang/compiler": "^0.21.0", "@syndicate-lang/core": "^0.28.2" }, "devDependencies": { diff --git a/packages/tsc/package.json b/packages/tsc/package.json index 481be65..f8bf07d 100644 --- a/packages/tsc/package.json +++ b/packages/tsc/package.json @@ -1,6 +1,6 @@ { "name": "@syndicate-lang/tsc", - "version": "0.29.2", + "version": "0.30.0", "description": "Syndicate for TypeScript compiler command-line tool", "homepage": "https://github.com/syndicate-lang/syndicate-js/tree/main/packages/tsc", "license": "GPL-3.0+", @@ -20,7 +20,7 @@ }, "author": "Tony Garnock-Jones ", "dependencies": { - "@syndicate-lang/compiler": "^0.20.1", + "@syndicate-lang/compiler": "^0.21.0", "@syndicate-lang/core": "^0.28.2", "glob": "^7.1.6", "yargs": "^16.2.0" diff --git a/packages/ws-relay/package.json b/packages/ws-relay/package.json index 7292e28..90592f6 100644 --- a/packages/ws-relay/package.json +++ b/packages/ws-relay/package.json @@ -1,6 +1,6 @@ { "name": "@syndicate-lang/ws-relay", - "version": "0.30.2", + "version": "0.30.3", "description": "Browser WebSocket relay to a Syndicate server", "homepage": "https://github.com/syndicate-lang/syndicate-js/tree/main/packages/ws-relay", "license": "GPL-3.0+", @@ -32,7 +32,7 @@ "salty-crypto": "0.3" }, "devDependencies": { - "@syndicate-lang/ts-plugin": "^0.29.2", - "@syndicate-lang/tsc": "^0.29.2" + "@syndicate-lang/ts-plugin": "^0.30.0", + "@syndicate-lang/tsc": "^0.30.0" } } From 291ec1805b09efb2d62caafa6685198f0c03d86d Mon Sep 17 00:00:00 2001 From: Tony Garnock-Jones Date: Thu, 21 Mar 2024 21:27:23 +0100 Subject: [PATCH 53/92] Synchronous cryptography; convenient `mint` overload for producing a ref and a bind at once --- packages/core/src/transport/cryptography.ts | 2 +- packages/core/src/transport/sturdy.ts | 53 ++++++++++++++++----- 2 files changed, 41 insertions(+), 14 deletions(-) diff --git a/packages/core/src/transport/cryptography.ts b/packages/core/src/transport/cryptography.ts index 7e2a01b..2faeecc 100644 --- a/packages/core/src/transport/cryptography.ts +++ b/packages/core/src/transport/cryptography.ts @@ -18,6 +18,6 @@ export const newKey: () => Promise = const HMAC_BLAKE2s = makeHMAC(BLAKE2s); -export async function mac(secretKey: Bytes, data: Bytes): Promise { +export function mac(secretKey: Bytes, data: Bytes): Bytes { return Bytes.from(HMAC_BLAKE2s(underlying(secretKey), underlying(data))); } diff --git a/packages/core/src/transport/sturdy.ts b/packages/core/src/transport/sturdy.ts index 778a649..9a8ee1e 100644 --- a/packages/core/src/transport/sturdy.ts +++ b/packages/core/src/transport/sturdy.ts @@ -10,8 +10,9 @@ // California: Internet Society, 2014. import { mac } from './cryptography.js'; -import { Bytes, decode, encode, is, neverEmbeddedType, Value } from '@preserves/core'; +import { Bytes, decode, encode, is, neverEmbeddedType, Value, fromJS } from '@preserves/core'; import * as S from '../gen/sturdy.js'; +import * as G from '../gen/gatekeeper.js'; export * from '../gen/sturdy.js'; export type SturdyValue = Value; @@ -37,16 +38,42 @@ export function sturdyDecode(bs: Bytes): SturdyValue { }); } -export async function mint(oid: SturdyValue, secretKey: Bytes): Promise { - return S.SturdyRef(S.Parameters({ - oid, - sig: await mac(secretKey, sturdyEncode(oid)), - caveats: S.CaveatsField.absent(), - })); +export function sturdyBind( + oid: SturdyValue, + secretKey: Bytes, + target: S._embedded, + observer?: S._embedded, +): G.Bind { + return G.Bind({ + description: G.Description({ + stepType: fromJS(S.SturdyStepType()) as symbol, + detail: fromJS(S.SturdyDescriptionDetail({ oid, key: secretKey })), + }), + target, + observer: (observer === void 0) ? G.BindObserver.absent() : G.BindObserver.present(observer), + }); } -async function chainMac(key: Bytes | Promise, caveats: S.Caveat[]): Promise { - return caveats.reduce(async (key, c) => mac(await key, sturdyEncode(S.fromCaveat(c))), key); +type RefAndBind = { ref: S.SturdyRef, bind: G.Bind }; +export function mint(oid: SturdyValue, secretKey: Bytes): S.SturdyRef; +export function mint(oid: SturdyValue, secretKey: Bytes, target: S._embedded, observer?: S._embedded): RefAndBind; +export function mint( + oid: SturdyValue, + secretKey: Bytes, + target?: S._embedded, + observer?: S._embedded, +): S.SturdyRef | RefAndBind { + const ref = S.SturdyRef(S.Parameters({ + oid, + sig: mac(secretKey, sturdyEncode(oid)), + caveats: S.CaveatsField.absent(), + })); + if (target === void 0) return ref; + return { ref, bind: sturdyBind(oid, secretKey, target, observer) }; +} + +function chainMac(key: Bytes, caveats: S.Caveat[]): Bytes { + return caveats.reduce((key, c) => mac(key, sturdyEncode(S.fromCaveat(c))), key); } export function caveatChain(r: S.SturdyRef): S.Caveat[] { @@ -57,16 +84,16 @@ export function caveatChain(r: S.SturdyRef): S.Caveat[] { } } -export async function attenuate(r: S.SturdyRef, ... a: S.Caveat[]): Promise { +export function attenuate(r: S.SturdyRef, ... a: S.Caveat[]): S.SturdyRef { if (a.length === 0) return r; return S.SturdyRef(S.Parameters({ oid: r.parameters.oid, caveats: S.CaveatsField.present([... caveatChain(r), ... a]), - sig: await chainMac(r.parameters.sig, a), + sig: chainMac(r.parameters.sig, a), })); } -export async function validate(r: S.SturdyRef, secretKey: Bytes): Promise { - const sig = await chainMac(await mac(secretKey, sturdyEncode(r.parameters.oid)), caveatChain(r)); +export function validate(r: S.SturdyRef, secretKey: Bytes): boolean { + const sig = chainMac(mac(secretKey, sturdyEncode(r.parameters.oid)), caveatChain(r)); return is(sig, r.parameters.sig); } From a25cafdabb47f084de3de28ab610dfedde8bc365 Mon Sep 17 00:00:00 2001 From: Tony Garnock-Jones Date: Thu, 21 Mar 2024 21:28:08 +0100 Subject: [PATCH 54/92] Publish - @syndicate-lang/browser-stdenv@0.30.0 - @syndicate-lang/core@0.29.0 - @syndicate-lang/fs@0.30.0 - @syndicate-lang/html@0.30.0 - @syndicate-lang/html2@0.30.0 - @syndicate-lang/loader@0.30.0 - @syndicate-lang/service@0.30.0 - @syndicate-lang/syndicatec@0.31.0 - @syndicate-lang/timer@0.30.0 - @syndicate-lang/ts-plugin@0.31.0 - @syndicate-lang/tsc@0.31.0 - @syndicate-lang/ws-relay@0.31.0 --- packages/browser-stdenv/package.json | 8 ++++---- packages/core/package.json | 2 +- packages/fs/package.json | 10 +++++----- packages/html/package.json | 8 ++++---- packages/html2/package.json | 8 ++++---- packages/loader/package.json | 6 +++--- packages/service/package.json | 8 ++++---- packages/syndicatec/package.json | 4 ++-- packages/timer/package.json | 8 ++++---- packages/ts-plugin/package.json | 4 ++-- packages/tsc/package.json | 4 ++-- packages/ws-relay/package.json | 8 ++++---- 12 files changed, 39 insertions(+), 39 deletions(-) diff --git a/packages/browser-stdenv/package.json b/packages/browser-stdenv/package.json index 4c0af59..ef77eb0 100644 --- a/packages/browser-stdenv/package.json +++ b/packages/browser-stdenv/package.json @@ -1,6 +1,6 @@ { "name": "@syndicate-lang/browser-stdenv", - "version": "0.29.0", + "version": "0.30.0", "description": "Aggregated Syndicate and Preserves scripts for in-browser use", "homepage": "https://github.com/syndicate-lang/syndicate-js/tree/main/packages/browser-stdenv", "license": "GPL-3.0+", @@ -22,8 +22,8 @@ "@preserves/core": "0.995.100", "@preserves/schema": "0.995.100", "@syndicate-lang/compiler": "^0.21.0", - "@syndicate-lang/core": "^0.28.2", - "@syndicate-lang/html2": "^0.29.3", - "@syndicate-lang/ws-relay": "^0.30.3" + "@syndicate-lang/core": "^0.29.0", + "@syndicate-lang/html2": "^0.30.0", + "@syndicate-lang/ws-relay": "^0.31.0" } } diff --git a/packages/core/package.json b/packages/core/package.json index 228c5bb..ccc4100 100644 --- a/packages/core/package.json +++ b/packages/core/package.json @@ -1,6 +1,6 @@ { "name": "@syndicate-lang/core", - "version": "0.28.2", + "version": "0.29.0", "description": "Syndicate/JS for browser and node.js", "homepage": "https://github.com/syndicate-lang/syndicate-js/tree/main/packages/core", "license": "GPL-3.0+", diff --git a/packages/fs/package.json b/packages/fs/package.json index b40532f..01f8c8f 100644 --- a/packages/fs/package.json +++ b/packages/fs/package.json @@ -1,6 +1,6 @@ { "name": "@syndicate-lang/fs", - "version": "0.29.3", + "version": "0.30.0", "description": "Reflect contents of a portion of the file system as assertions", "homepage": "https://github.com/syndicate-lang/syndicate-js/tree/main/packages/fs", "license": "GPL-3.0+", @@ -30,13 +30,13 @@ "@preserves/core": "0.995.100" }, "dependencies": { - "@syndicate-lang/core": "^0.28.2", - "@syndicate-lang/service": "^0.29.3", + "@syndicate-lang/core": "^0.29.0", + "@syndicate-lang/service": "^0.30.0", "chokidar": "^3.5.3" }, "devDependencies": { "@preserves/schema-cli": "0.995.100", - "@syndicate-lang/ts-plugin": "^0.30.0", - "@syndicate-lang/tsc": "^0.30.0" + "@syndicate-lang/ts-plugin": "^0.31.0", + "@syndicate-lang/tsc": "^0.31.0" } } diff --git a/packages/html/package.json b/packages/html/package.json index 2e3a863..d97867d 100644 --- a/packages/html/package.json +++ b/packages/html/package.json @@ -1,6 +1,6 @@ { "name": "@syndicate-lang/html", - "version": "0.29.3", + "version": "0.30.0", "description": "DOM/HTML UI for Syndicate/JS", "homepage": "https://github.com/syndicate-lang/syndicate-js/tree/main/packages/html", "license": "GPL-3.0+", @@ -25,10 +25,10 @@ "veryclean": "yarn run clean && rm -rf node_modules" }, "dependencies": { - "@syndicate-lang/core": "^0.28.2" + "@syndicate-lang/core": "^0.29.0" }, "devDependencies": { - "@syndicate-lang/ts-plugin": "^0.30.0", - "@syndicate-lang/tsc": "^0.30.0" + "@syndicate-lang/ts-plugin": "^0.31.0", + "@syndicate-lang/tsc": "^0.31.0" } } diff --git a/packages/html2/package.json b/packages/html2/package.json index 0135e01..39f50a3 100644 --- a/packages/html2/package.json +++ b/packages/html2/package.json @@ -1,6 +1,6 @@ { "name": "@syndicate-lang/html2", - "version": "0.29.3", + "version": "0.30.0", "description": "DOM/HTML UI for Syndicate/JS", "homepage": "https://github.com/syndicate-lang/syndicate-js/tree/main/packages/html2", "license": "GPL-3.0+", @@ -25,10 +25,10 @@ "veryclean": "yarn run clean && rm -rf node_modules" }, "dependencies": { - "@syndicate-lang/core": "^0.28.2" + "@syndicate-lang/core": "^0.29.0" }, "devDependencies": { - "@syndicate-lang/ts-plugin": "^0.30.0", - "@syndicate-lang/tsc": "^0.30.0" + "@syndicate-lang/ts-plugin": "^0.31.0", + "@syndicate-lang/tsc": "^0.31.0" } } diff --git a/packages/loader/package.json b/packages/loader/package.json index e97c3bd..cc90ab3 100644 --- a/packages/loader/package.json +++ b/packages/loader/package.json @@ -1,6 +1,6 @@ { "name": "@syndicate-lang/loader", - "version": "0.29.0", + "version": "0.30.0", "description": "Syndicate/JS node.js loader hook", "homepage": "https://github.com/syndicate-lang/syndicate-js/tree/main/packages/loader", "license": "GPL-3.0+", @@ -23,7 +23,7 @@ "author": "Tony Garnock-Jones ", "dependencies": { "@syndicate-lang/compiler": "^0.21.0", - "@syndicate-lang/core": "^0.28.2", - "@syndicate-lang/service": "^0.29.3" + "@syndicate-lang/core": "^0.29.0", + "@syndicate-lang/service": "^0.30.0" } } diff --git a/packages/service/package.json b/packages/service/package.json index cda3f1c..1e841c1 100644 --- a/packages/service/package.json +++ b/packages/service/package.json @@ -1,6 +1,6 @@ { "name": "@syndicate-lang/service", - "version": "0.29.3", + "version": "0.30.0", "description": "Run a node.js program as a service within syndicate-server", "homepage": "https://github.com/syndicate-lang/syndicate-js/tree/main/packages/service", "license": "GPL-3.0+", @@ -22,10 +22,10 @@ "veryclean": "yarn run clean && rm -rf node_modules" }, "dependencies": { - "@syndicate-lang/core": "^0.28.2" + "@syndicate-lang/core": "^0.29.0" }, "devDependencies": { - "@syndicate-lang/ts-plugin": "^0.30.0", - "@syndicate-lang/tsc": "^0.30.0" + "@syndicate-lang/ts-plugin": "^0.31.0", + "@syndicate-lang/tsc": "^0.31.0" } } diff --git a/packages/syndicatec/package.json b/packages/syndicatec/package.json index d2df2dc..2e0eb4f 100644 --- a/packages/syndicatec/package.json +++ b/packages/syndicatec/package.json @@ -1,6 +1,6 @@ { "name": "@syndicate-lang/syndicatec", - "version": "0.30.0", + "version": "0.31.0", "description": "Syndicate/JS compiler command-line tool", "homepage": "https://github.com/syndicate-lang/syndicate-js/tree/main/packages/syndicatec", "license": "GPL-3.0+", @@ -21,7 +21,7 @@ "author": "Tony Garnock-Jones ", "dependencies": { "@syndicate-lang/compiler": "^0.21.0", - "@syndicate-lang/core": "^0.28.2", + "@syndicate-lang/core": "^0.29.0", "glob": "^7.1.6", "yargs": "^16.2.0" }, diff --git a/packages/timer/package.json b/packages/timer/package.json index 21a8861..057948d 100644 --- a/packages/timer/package.json +++ b/packages/timer/package.json @@ -1,6 +1,6 @@ { "name": "@syndicate-lang/timer", - "version": "0.29.3", + "version": "0.30.0", "description": "Time and timer driver for Syndicate", "homepage": "https://github.com/syndicate-lang/syndicate-js/tree/main/packages/timer", "license": "GPL-3.0+", @@ -25,10 +25,10 @@ "veryclean": "yarn run clean && rm -rf node_modules" }, "dependencies": { - "@syndicate-lang/core": "^0.28.2" + "@syndicate-lang/core": "^0.29.0" }, "devDependencies": { - "@syndicate-lang/ts-plugin": "^0.30.0", - "@syndicate-lang/tsc": "^0.30.0" + "@syndicate-lang/ts-plugin": "^0.31.0", + "@syndicate-lang/tsc": "^0.31.0" } } diff --git a/packages/ts-plugin/package.json b/packages/ts-plugin/package.json index fcbb01e..2e5e3c2 100644 --- a/packages/ts-plugin/package.json +++ b/packages/ts-plugin/package.json @@ -1,6 +1,6 @@ { "name": "@syndicate-lang/ts-plugin", - "version": "0.30.0", + "version": "0.31.0", "description": "Syndicate/JS TypeScript tsserver plugin", "homepage": "https://github.com/syndicate-lang/syndicate-js/tree/main/packages/ts-plugin", "license": "GPL-3.0+", @@ -23,7 +23,7 @@ "author": "Tony Garnock-Jones ", "dependencies": { "@syndicate-lang/compiler": "^0.21.0", - "@syndicate-lang/core": "^0.28.2" + "@syndicate-lang/core": "^0.29.0" }, "devDependencies": { "typescript": "^4.9" diff --git a/packages/tsc/package.json b/packages/tsc/package.json index f8bf07d..0697997 100644 --- a/packages/tsc/package.json +++ b/packages/tsc/package.json @@ -1,6 +1,6 @@ { "name": "@syndicate-lang/tsc", - "version": "0.30.0", + "version": "0.31.0", "description": "Syndicate for TypeScript compiler command-line tool", "homepage": "https://github.com/syndicate-lang/syndicate-js/tree/main/packages/tsc", "license": "GPL-3.0+", @@ -21,7 +21,7 @@ "author": "Tony Garnock-Jones ", "dependencies": { "@syndicate-lang/compiler": "^0.21.0", - "@syndicate-lang/core": "^0.28.2", + "@syndicate-lang/core": "^0.29.0", "glob": "^7.1.6", "yargs": "^16.2.0" }, diff --git a/packages/ws-relay/package.json b/packages/ws-relay/package.json index 90592f6..f54c805 100644 --- a/packages/ws-relay/package.json +++ b/packages/ws-relay/package.json @@ -1,6 +1,6 @@ { "name": "@syndicate-lang/ws-relay", - "version": "0.30.3", + "version": "0.31.0", "description": "Browser WebSocket relay to a Syndicate server", "homepage": "https://github.com/syndicate-lang/syndicate-js/tree/main/packages/ws-relay", "license": "GPL-3.0+", @@ -28,11 +28,11 @@ "@preserves/core": "0.995.100" }, "dependencies": { - "@syndicate-lang/core": "^0.28.2", + "@syndicate-lang/core": "^0.29.0", "salty-crypto": "0.3" }, "devDependencies": { - "@syndicate-lang/ts-plugin": "^0.30.0", - "@syndicate-lang/tsc": "^0.30.0" + "@syndicate-lang/ts-plugin": "^0.31.0", + "@syndicate-lang/tsc": "^0.31.0" } } From 3b7543845a4c09859d920b578dc1eac527350339 Mon Sep 17 00:00:00 2001 From: Tony Garnock-Jones Date: Thu, 21 Mar 2024 21:58:32 +0100 Subject: [PATCH 55/92] Repair mac() function to produce correct output width --- packages/core/src/transport/cryptography.ts | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/packages/core/src/transport/cryptography.ts b/packages/core/src/transport/cryptography.ts index 2faeecc..56a40bb 100644 --- a/packages/core/src/transport/cryptography.ts +++ b/packages/core/src/transport/cryptography.ts @@ -19,5 +19,6 @@ export const newKey: () => Promise = const HMAC_BLAKE2s = makeHMAC(BLAKE2s); export function mac(secretKey: Bytes, data: Bytes): Bytes { - return Bytes.from(HMAC_BLAKE2s(underlying(secretKey), underlying(data))); + return Bytes.from(HMAC_BLAKE2s(underlying(secretKey), underlying(data)) + .subarray(0, KEY_LENGTH)); } From f5501ccb64e4ef1c87a3617152c382302fd49468 Mon Sep 17 00:00:00 2001 From: Tony Garnock-Jones Date: Thu, 21 Mar 2024 21:58:52 +0100 Subject: [PATCH 56/92] Publish - @syndicate-lang/browser-stdenv@0.30.1 - @syndicate-lang/core@0.29.1 - @syndicate-lang/fs@0.30.1 - @syndicate-lang/html@0.30.1 - @syndicate-lang/html2@0.30.1 - @syndicate-lang/loader@0.30.1 - @syndicate-lang/service@0.30.1 - @syndicate-lang/syndicatec@0.31.1 - @syndicate-lang/timer@0.30.1 - @syndicate-lang/ts-plugin@0.31.1 - @syndicate-lang/tsc@0.31.1 - @syndicate-lang/ws-relay@0.31.1 --- packages/browser-stdenv/package.json | 8 ++++---- packages/core/package.json | 2 +- packages/fs/package.json | 10 +++++----- packages/html/package.json | 8 ++++---- packages/html2/package.json | 8 ++++---- packages/loader/package.json | 6 +++--- packages/service/package.json | 8 ++++---- packages/syndicatec/package.json | 4 ++-- packages/timer/package.json | 8 ++++---- packages/ts-plugin/package.json | 4 ++-- packages/tsc/package.json | 4 ++-- packages/ws-relay/package.json | 8 ++++---- 12 files changed, 39 insertions(+), 39 deletions(-) diff --git a/packages/browser-stdenv/package.json b/packages/browser-stdenv/package.json index ef77eb0..b09b3fd 100644 --- a/packages/browser-stdenv/package.json +++ b/packages/browser-stdenv/package.json @@ -1,6 +1,6 @@ { "name": "@syndicate-lang/browser-stdenv", - "version": "0.30.0", + "version": "0.30.1", "description": "Aggregated Syndicate and Preserves scripts for in-browser use", "homepage": "https://github.com/syndicate-lang/syndicate-js/tree/main/packages/browser-stdenv", "license": "GPL-3.0+", @@ -22,8 +22,8 @@ "@preserves/core": "0.995.100", "@preserves/schema": "0.995.100", "@syndicate-lang/compiler": "^0.21.0", - "@syndicate-lang/core": "^0.29.0", - "@syndicate-lang/html2": "^0.30.0", - "@syndicate-lang/ws-relay": "^0.31.0" + "@syndicate-lang/core": "^0.29.1", + "@syndicate-lang/html2": "^0.30.1", + "@syndicate-lang/ws-relay": "^0.31.1" } } diff --git a/packages/core/package.json b/packages/core/package.json index ccc4100..3cdf3f3 100644 --- a/packages/core/package.json +++ b/packages/core/package.json @@ -1,6 +1,6 @@ { "name": "@syndicate-lang/core", - "version": "0.29.0", + "version": "0.29.1", "description": "Syndicate/JS for browser and node.js", "homepage": "https://github.com/syndicate-lang/syndicate-js/tree/main/packages/core", "license": "GPL-3.0+", diff --git a/packages/fs/package.json b/packages/fs/package.json index 01f8c8f..401afdb 100644 --- a/packages/fs/package.json +++ b/packages/fs/package.json @@ -1,6 +1,6 @@ { "name": "@syndicate-lang/fs", - "version": "0.30.0", + "version": "0.30.1", "description": "Reflect contents of a portion of the file system as assertions", "homepage": "https://github.com/syndicate-lang/syndicate-js/tree/main/packages/fs", "license": "GPL-3.0+", @@ -30,13 +30,13 @@ "@preserves/core": "0.995.100" }, "dependencies": { - "@syndicate-lang/core": "^0.29.0", - "@syndicate-lang/service": "^0.30.0", + "@syndicate-lang/core": "^0.29.1", + "@syndicate-lang/service": "^0.30.1", "chokidar": "^3.5.3" }, "devDependencies": { "@preserves/schema-cli": "0.995.100", - "@syndicate-lang/ts-plugin": "^0.31.0", - "@syndicate-lang/tsc": "^0.31.0" + "@syndicate-lang/ts-plugin": "^0.31.1", + "@syndicate-lang/tsc": "^0.31.1" } } diff --git a/packages/html/package.json b/packages/html/package.json index d97867d..591e276 100644 --- a/packages/html/package.json +++ b/packages/html/package.json @@ -1,6 +1,6 @@ { "name": "@syndicate-lang/html", - "version": "0.30.0", + "version": "0.30.1", "description": "DOM/HTML UI for Syndicate/JS", "homepage": "https://github.com/syndicate-lang/syndicate-js/tree/main/packages/html", "license": "GPL-3.0+", @@ -25,10 +25,10 @@ "veryclean": "yarn run clean && rm -rf node_modules" }, "dependencies": { - "@syndicate-lang/core": "^0.29.0" + "@syndicate-lang/core": "^0.29.1" }, "devDependencies": { - "@syndicate-lang/ts-plugin": "^0.31.0", - "@syndicate-lang/tsc": "^0.31.0" + "@syndicate-lang/ts-plugin": "^0.31.1", + "@syndicate-lang/tsc": "^0.31.1" } } diff --git a/packages/html2/package.json b/packages/html2/package.json index 39f50a3..3b44059 100644 --- a/packages/html2/package.json +++ b/packages/html2/package.json @@ -1,6 +1,6 @@ { "name": "@syndicate-lang/html2", - "version": "0.30.0", + "version": "0.30.1", "description": "DOM/HTML UI for Syndicate/JS", "homepage": "https://github.com/syndicate-lang/syndicate-js/tree/main/packages/html2", "license": "GPL-3.0+", @@ -25,10 +25,10 @@ "veryclean": "yarn run clean && rm -rf node_modules" }, "dependencies": { - "@syndicate-lang/core": "^0.29.0" + "@syndicate-lang/core": "^0.29.1" }, "devDependencies": { - "@syndicate-lang/ts-plugin": "^0.31.0", - "@syndicate-lang/tsc": "^0.31.0" + "@syndicate-lang/ts-plugin": "^0.31.1", + "@syndicate-lang/tsc": "^0.31.1" } } diff --git a/packages/loader/package.json b/packages/loader/package.json index cc90ab3..e7b488f 100644 --- a/packages/loader/package.json +++ b/packages/loader/package.json @@ -1,6 +1,6 @@ { "name": "@syndicate-lang/loader", - "version": "0.30.0", + "version": "0.30.1", "description": "Syndicate/JS node.js loader hook", "homepage": "https://github.com/syndicate-lang/syndicate-js/tree/main/packages/loader", "license": "GPL-3.0+", @@ -23,7 +23,7 @@ "author": "Tony Garnock-Jones ", "dependencies": { "@syndicate-lang/compiler": "^0.21.0", - "@syndicate-lang/core": "^0.29.0", - "@syndicate-lang/service": "^0.30.0" + "@syndicate-lang/core": "^0.29.1", + "@syndicate-lang/service": "^0.30.1" } } diff --git a/packages/service/package.json b/packages/service/package.json index 1e841c1..b43282f 100644 --- a/packages/service/package.json +++ b/packages/service/package.json @@ -1,6 +1,6 @@ { "name": "@syndicate-lang/service", - "version": "0.30.0", + "version": "0.30.1", "description": "Run a node.js program as a service within syndicate-server", "homepage": "https://github.com/syndicate-lang/syndicate-js/tree/main/packages/service", "license": "GPL-3.0+", @@ -22,10 +22,10 @@ "veryclean": "yarn run clean && rm -rf node_modules" }, "dependencies": { - "@syndicate-lang/core": "^0.29.0" + "@syndicate-lang/core": "^0.29.1" }, "devDependencies": { - "@syndicate-lang/ts-plugin": "^0.31.0", - "@syndicate-lang/tsc": "^0.31.0" + "@syndicate-lang/ts-plugin": "^0.31.1", + "@syndicate-lang/tsc": "^0.31.1" } } diff --git a/packages/syndicatec/package.json b/packages/syndicatec/package.json index 2e0eb4f..ac0b81c 100644 --- a/packages/syndicatec/package.json +++ b/packages/syndicatec/package.json @@ -1,6 +1,6 @@ { "name": "@syndicate-lang/syndicatec", - "version": "0.31.0", + "version": "0.31.1", "description": "Syndicate/JS compiler command-line tool", "homepage": "https://github.com/syndicate-lang/syndicate-js/tree/main/packages/syndicatec", "license": "GPL-3.0+", @@ -21,7 +21,7 @@ "author": "Tony Garnock-Jones ", "dependencies": { "@syndicate-lang/compiler": "^0.21.0", - "@syndicate-lang/core": "^0.29.0", + "@syndicate-lang/core": "^0.29.1", "glob": "^7.1.6", "yargs": "^16.2.0" }, diff --git a/packages/timer/package.json b/packages/timer/package.json index 057948d..cccac4d 100644 --- a/packages/timer/package.json +++ b/packages/timer/package.json @@ -1,6 +1,6 @@ { "name": "@syndicate-lang/timer", - "version": "0.30.0", + "version": "0.30.1", "description": "Time and timer driver for Syndicate", "homepage": "https://github.com/syndicate-lang/syndicate-js/tree/main/packages/timer", "license": "GPL-3.0+", @@ -25,10 +25,10 @@ "veryclean": "yarn run clean && rm -rf node_modules" }, "dependencies": { - "@syndicate-lang/core": "^0.29.0" + "@syndicate-lang/core": "^0.29.1" }, "devDependencies": { - "@syndicate-lang/ts-plugin": "^0.31.0", - "@syndicate-lang/tsc": "^0.31.0" + "@syndicate-lang/ts-plugin": "^0.31.1", + "@syndicate-lang/tsc": "^0.31.1" } } diff --git a/packages/ts-plugin/package.json b/packages/ts-plugin/package.json index 2e5e3c2..ce8b3b1 100644 --- a/packages/ts-plugin/package.json +++ b/packages/ts-plugin/package.json @@ -1,6 +1,6 @@ { "name": "@syndicate-lang/ts-plugin", - "version": "0.31.0", + "version": "0.31.1", "description": "Syndicate/JS TypeScript tsserver plugin", "homepage": "https://github.com/syndicate-lang/syndicate-js/tree/main/packages/ts-plugin", "license": "GPL-3.0+", @@ -23,7 +23,7 @@ "author": "Tony Garnock-Jones ", "dependencies": { "@syndicate-lang/compiler": "^0.21.0", - "@syndicate-lang/core": "^0.29.0" + "@syndicate-lang/core": "^0.29.1" }, "devDependencies": { "typescript": "^4.9" diff --git a/packages/tsc/package.json b/packages/tsc/package.json index 0697997..a401a6c 100644 --- a/packages/tsc/package.json +++ b/packages/tsc/package.json @@ -1,6 +1,6 @@ { "name": "@syndicate-lang/tsc", - "version": "0.31.0", + "version": "0.31.1", "description": "Syndicate for TypeScript compiler command-line tool", "homepage": "https://github.com/syndicate-lang/syndicate-js/tree/main/packages/tsc", "license": "GPL-3.0+", @@ -21,7 +21,7 @@ "author": "Tony Garnock-Jones ", "dependencies": { "@syndicate-lang/compiler": "^0.21.0", - "@syndicate-lang/core": "^0.29.0", + "@syndicate-lang/core": "^0.29.1", "glob": "^7.1.6", "yargs": "^16.2.0" }, diff --git a/packages/ws-relay/package.json b/packages/ws-relay/package.json index f54c805..0ff7e79 100644 --- a/packages/ws-relay/package.json +++ b/packages/ws-relay/package.json @@ -1,6 +1,6 @@ { "name": "@syndicate-lang/ws-relay", - "version": "0.31.0", + "version": "0.31.1", "description": "Browser WebSocket relay to a Syndicate server", "homepage": "https://github.com/syndicate-lang/syndicate-js/tree/main/packages/ws-relay", "license": "GPL-3.0+", @@ -28,11 +28,11 @@ "@preserves/core": "0.995.100" }, "dependencies": { - "@syndicate-lang/core": "^0.29.0", + "@syndicate-lang/core": "^0.29.1", "salty-crypto": "0.3" }, "devDependencies": { - "@syndicate-lang/ts-plugin": "^0.31.0", - "@syndicate-lang/tsc": "^0.31.0" + "@syndicate-lang/ts-plugin": "^0.31.1", + "@syndicate-lang/tsc": "^0.31.1" } } From 7797a3cd0993dbda49306c15b4bdd78ace71241c Mon Sep 17 00:00:00 2001 From: Tony Garnock-Jones Date: Fri, 22 Mar 2024 10:06:47 +0100 Subject: [PATCH 57/92] Updated description of gatekeeper protocol --- schemas/gatekeeper.prs | 33 +++++++++++++++++++++++++++++++-- 1 file changed, 31 insertions(+), 2 deletions(-) diff --git a/schemas/gatekeeper.prs b/schemas/gatekeeper.prs index 656ed12..9ba662c 100644 --- a/schemas/gatekeeper.prs +++ b/schemas/gatekeeper.prs @@ -13,8 +13,37 @@ Step = < @stepType symbol [@detail any]> . # --------------------------------------------------------------------------- # Protocol at dataspaces *associated* with gatekeeper entities -# Assertion. Gatekeeper will compute an appropriate PathStep from `description` pointing at -# `target`, and will respond with a `Bound` to `observer` (if supplied). +# ## Handling `Resolve` requests +# +# When the gatekeeper entity receives a `Resolve` assertion (call it R1), it +# +# 1. asserts a `Resolve` (call it R2) into its associated dataspace that +# is the same as R1 except it has a different `observer`; and +# +# 2. observes a `Bind` with `description` matching the `step` of R1/R2 +# according to `stepType` (e.g. treatment of SturdyStepType is not the +# same as treatment of NoiseStepType). +# +# Normally, an appropriate `Bind` is expected to exist. If the gatekeeper +# sees the `Bind` first, it takes the `target` from it and does whatever +# `stepType` mandates before replying to R1's observer. +# +# However, if a `Resolved` is asserted to R2's observer before a `Bind` +# appears, that resolution is relayed on to R1's observer directly, be it +# positive or negative, and the gatekeeper stops waiting for a `Bind`. +# +# This way, entities can keep an eye out for `Resolve` requests that will +# never complete, and answer `Rejected` to them even when no matching +# `Bind` exists. Entities could also use `Resolve` requests to synthesize a +# `Bind` in a "just-in-time" fashion. +# +# ## General treatment of `Bind` assertions +# +# When the gatekeeper sees a `Bind`, independently of any potential +# `Resolve` requests, it computes an appropriate PathStep from +# `description` pointing at `target`, and responds with a `Bound` to +# `observer` (if supplied). +# Bind = . Description = < @stepType symbol [@detail any]> . BindObserver = @present #:Bound / @absent #f . From 036c342264f07d06db5fa3d7cc4a378fd880af49 Mon Sep 17 00:00:00 2001 From: Tony Garnock-Jones Date: Fri, 22 Mar 2024 12:19:02 +0100 Subject: [PATCH 58/92] Template and rewrite-building routines in rewrite.ts --- packages/core/src/runtime/rewrite.ts | 31 ++++++++++++++++++++++++++++ 1 file changed, 31 insertions(+) diff --git a/packages/core/src/runtime/rewrite.ts b/packages/core/src/runtime/rewrite.ts index a1b0fe5..6f8004f 100644 --- a/packages/core/src/runtime/rewrite.ts +++ b/packages/core/src/runtime/rewrite.ts @@ -19,6 +19,8 @@ import { PEmbedded, Pattern, Rewrite, + TAttenuate, + TCompound, TRef, Template, _embedded, @@ -191,6 +193,11 @@ export function rfilter(... patterns: Pattern[]): Caveat { return ps.length === 1 ? Caveat.Rewrite(ps[0]) : Caveat.Alts(Alts(ps)); } +export function rmap(... rewrites: [Pattern, Template][]): Caveat { + const rs = rewrites.map(([pattern, template]) => Rewrite({ pattern, template })); + return rs.length === 1 ? Caveat.Rewrite(rs[0]) : Caveat.Alts(Alts(rs)); +} + export function attenuate(ref: Ref, ... a: Caveat[]): Ref { if (a.length === 0) return ref; return { ... ref, attenuation: [... (ref.attenuation ?? []), ... a] }; @@ -286,3 +293,27 @@ export function pBoolean(): Pattern { export function pDiscard(): Pattern { return Pattern.PDiscard(PDiscard()); } + +export function tRec(label: SturdyValue, ... fields: Array