@reventlessdev/reventless-local 3.0.0-alpha.188 → 3.0.0-alpha.190

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/CHANGELOG.md CHANGED
@@ -3,6 +3,20 @@
3
3
  All notable changes to this project will be documented in this file.
4
4
  See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
5
5
 
6
+ # 3.0.0-alpha.190 (2026-08-02)
7
+
8
+ ### Features
9
+
10
+ * **spec:** make plugin structure/apiSchemaFragment offloadable payloads ([a0391bf](https://github.com/ReventlessDev/reventless-core/commit/a0391bf26f91035460cbf90f52d105a1003414c3))
11
+
12
+
13
+ # 3.0.0-alpha.189 (2026-08-02)
14
+
15
+ ### Features
16
+
17
+ * **aws,core,spec,seed-aws:** expire uploads nobody committed a reference to ([f63e84c](https://github.com/ReventlessDev/reventless-core/commit/f63e84c1a11cc350b799a6f69a2e7427cf1ea6e9))
18
+
19
+
6
20
  # 3.0.0-alpha.188 (2026-08-01)
7
21
 
8
22
  * feat(aws,core,spec)!: qualify store prefixes by plugin and refuse name collisions ([da39405](https://github.com/ReventlessDev/reventless-core/commit/da394059d9f8f981bf7adc79e2c1ce2b429e0267))
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@reventlessdev/reventless-local",
3
- "version": "3.0.0-alpha.188",
3
+ "version": "3.0.0-alpha.190",
4
4
  "description": "Local platform for Reventless (in-memory or SQLite backend, for development and testing without AWS)",
5
5
  "license": "Apache-2.0",
6
6
  "bin": {
@@ -34,23 +34,23 @@
34
34
  "graphql-yoga": "^5.21.0",
35
35
  "sury": "11.0.0-alpha.4",
36
36
  "ws": "^8.18.0",
37
- "@reventlessdev/rescript-jest": "1.0.0-alpha.10",
38
- "@reventlessdev/rescript-graphql-yoga": "1.0.0-alpha.26",
39
37
  "@reventlessdev/rescript-effect": "0.1.0-alpha.32",
40
- "@reventlessdev/rescript-node": "2.0.0-alpha.0",
38
+ "@reventlessdev/rescript-graphql-yoga": "1.0.0-alpha.26",
39
+ "@reventlessdev/rescript-jest": "1.0.0-alpha.10",
41
40
  "@reventlessdev/rescript-mcp-sdk": "1.0.0-alpha.21",
41
+ "@reventlessdev/rescript-node": "2.0.0-alpha.0",
42
42
  "@reventlessdev/rescript-pulumi-pulumi": "2.3.0-alpha.18",
43
- "@reventlessdev/reventless-core": "3.0.0-alpha.200",
44
- "@reventlessdev/reventless-graphql-server": "1.0.0-alpha.48",
45
- "@reventlessdev/reventless-gwt": "1.0.0-alpha.147",
46
- "@reventlessdev/reventless-postgres": "3.0.0-alpha.64",
47
- "@reventlessdev/reventless-spec": "3.0.0-alpha.92",
48
- "@reventlessdev/reventless-infra": "3.0.0-alpha.117"
43
+ "@reventlessdev/reventless-core": "3.0.0-alpha.202",
44
+ "@reventlessdev/reventless-graphql-server": "1.0.0-alpha.50",
45
+ "@reventlessdev/reventless-infra": "3.0.0-alpha.119",
46
+ "@reventlessdev/reventless-spec": "3.0.0-alpha.94",
47
+ "@reventlessdev/reventless-gwt": "1.0.0-alpha.149",
48
+ "@reventlessdev/reventless-postgres": "3.0.0-alpha.66"
49
49
  },
50
50
  "devDependencies": {
51
51
  "rescript": "12.3.0",
52
52
  "sury-ppx": "11.0.0-alpha.2",
53
- "@reventlessdev/reventless-ppx": "1.0.0-alpha.59"
53
+ "@reventlessdev/reventless-ppx": "1.0.0-alpha.60"
54
54
  },
55
55
  "peerDependencies": {
56
56
  "rescript": "12.3.0"
package/src/Platform.res CHANGED
@@ -1113,9 +1113,9 @@ module MakeWithConfig = (
1113
1113
  },
1114
1114
  ),
1115
1115
  extensionProtocols: [],
1116
- apiSchemaFragment,
1116
+ apiSchemaFragment: apiSchemaFragment->Option.map(f => Reventless.Offload.Inline(f)),
1117
1117
  apiTarget: None,
1118
- structure: pluginStructure,
1118
+ structure: pluginStructure->Option.map(s => Reventless.Offload.Inline(s)),
1119
1119
  dcbEventLog: None,
1120
1120
  kind: Domain,
1121
1121
  }
@@ -969,9 +969,15 @@ function MakeWithConfig(Config) {
969
969
  }),
970
970
  eventCollector: param[2].name,
971
971
  extensionProtocols: [],
972
- apiSchemaFragment: param[5],
972
+ apiSchemaFragment: Stdlib_Option.map(param[5], f => ({
973
+ TAG: "Inline",
974
+ _0: f
975
+ })),
973
976
  apiTarget: undefined,
974
- structure: param[7],
977
+ structure: Stdlib_Option.map(param[7], s => ({
978
+ TAG: "Inline",
979
+ _0: s
980
+ })),
975
981
  dcbEventLog: undefined,
976
982
  kind: "Domain"
977
983
  };
@@ -2653,9 +2659,15 @@ function Make($star) {
2653
2659
  }),
2654
2660
  eventCollector: param[2].name,
2655
2661
  extensionProtocols: [],
2656
- apiSchemaFragment: param[5],
2662
+ apiSchemaFragment: Stdlib_Option.map(param[5], f => ({
2663
+ TAG: "Inline",
2664
+ _0: f
2665
+ })),
2657
2666
  apiTarget: undefined,
2658
- structure: param[7],
2667
+ structure: Stdlib_Option.map(param[7], s => ({
2668
+ TAG: "Inline",
2669
+ _0: s
2670
+ })),
2659
2671
  dcbEventLog: undefined,
2660
2672
  kind: "Domain"
2661
2673
  };
@@ -131,7 +131,7 @@ let handleLogout = (_req: nodeRequest, res: nodeResponse): unit => {
131
131
  // PUT /{prefix}/{key} raw bytes → 200 (store)
132
132
  // GET /{prefix}/{key} → the stored bytes
133
133
  // Minting (`Upload_Presign`) and release (`Upload_Release`) are platform-API
134
- // mutations under route B (see [docs/plans/upload-release-path.md], resolved in
134
+ // mutations under route B (see [docs/plans/done/upload-release-path.md], resolved in
135
135
  // Platform.res against this same `LocalObjectStore`); the presign returns
136
136
  // `uploadUrl == storageRef == /{prefix}/{key}`, so the byte PUT below is unchanged.
137
137
 
@@ -57,7 +57,7 @@ let put = (~key: string, ~bytes: buffer, ~contentType: string): unit =>
57
57
  let get = (~key: string): option<entry> => objects->Dict.get(key)
58
58
 
59
59
  // Remove a stored object. Idempotent — deleting an absent key is a no-op, matching
60
- // the release contract (see docs/plans/upload-release-path.md, Step 3). The dev
60
+ // the release contract (see docs/plans/done/upload-release-path.md, Step 3). The dev
61
61
  // store has no identities or clock, so the release resolver enforces only the
62
62
  // *shape* of the rule (key under a served prefix), not the identity/age conditions.
63
63
  let delete = (~key: string): unit => objects->Dict.delete(key)
@@ -5,7 +5,7 @@
5
5
  // The dev store has no identities and no clock, so release enforces only the *shape*
6
6
  // of the rule (key under a served prefix), not the identity/age conditions AWS applies
7
7
  // — dev parity is about the client seeing the same contract, not reproducing AWS's
8
- // guarantees. See [docs/plans/upload-release-path.md] § Step 3.
8
+ // guarantees. See [docs/plans/done/upload-release-path.md] § Step 3.
9
9
 
10
10
  // Mint a same-origin `/{prefix}/{uuid}/{fileName}` ref: both the PUT target and the
11
11
  // stored value, mirroring the AWS presign ticket's shape.