@mastra/deployer 1.58.0-alpha.0 → 1.58.0-alpha.12
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 +164 -0
- package/dist/_types/@hono_node-server/dist/index.d.mts +101 -0
- package/dist/_types/@mastra_hono/dist/index.d.ts +24 -1
- package/dist/{analyze-C6SiypMS.cjs → analyze-BIrkd7zx.cjs} +12 -5
- package/dist/{analyze-C6SiypMS.cjs.map → analyze-BIrkd7zx.cjs.map} +1 -1
- package/dist/{analyze-mZfLnmw2.js → analyze-CNv6Qdaz.js} +12 -5
- package/dist/{analyze-mZfLnmw2.js.map → analyze-CNv6Qdaz.js.map} +1 -1
- package/dist/build/analyze.cjs +1 -1
- package/dist/build/analyze.d.ts.map +1 -1
- package/dist/build/analyze.js +1 -1
- package/dist/build/bundler.cjs +1 -1
- package/dist/build/bundler.d.ts +2 -1
- package/dist/build/bundler.d.ts.map +1 -1
- package/dist/build/bundler.js +1 -1
- package/dist/build/fs-routing/codegen.d.ts +5 -4
- package/dist/build/fs-routing/codegen.d.ts.map +1 -1
- package/dist/build/fs-routing/discover.d.ts +12 -5
- package/dist/build/fs-routing/discover.d.ts.map +1 -1
- package/dist/build/index.cjs +5 -5
- package/dist/build/index.js +5 -5
- package/dist/build/types.d.ts +11 -0
- package/dist/build/types.d.ts.map +1 -1
- package/dist/build/watcher.d.ts.map +1 -1
- package/dist/{build-BEtx4cTU.cjs → build-BERX35Pi.cjs} +31 -19
- package/dist/build-BERX35Pi.cjs.map +1 -0
- package/dist/{build-C5mUjLVf.js → build-kZfvpuh9.js} +31 -19
- package/dist/build-kZfvpuh9.js.map +1 -0
- package/dist/bundler/entries.d.ts +12 -0
- package/dist/bundler/entries.d.ts.map +1 -0
- package/dist/bundler/index.cjs +6 -345
- package/dist/bundler/index.d.ts +52 -2
- package/dist/bundler/index.d.ts.map +1 -1
- package/dist/bundler/index.js +2 -340
- package/dist/bundler-Ct1ToG6x.js +565 -0
- package/dist/bundler-Ct1ToG6x.js.map +1 -0
- package/dist/{bundler-u9WOUtpl.cjs → bundler-DCGtF4jP.cjs} +7 -3
- package/dist/{bundler-u9WOUtpl.cjs.map → bundler-DCGtF4jP.cjs.map} +1 -1
- package/dist/bundler-DLXwkS7b.cjs +598 -0
- package/dist/bundler-DLXwkS7b.cjs.map +1 -0
- package/dist/{bundler-U9F2---r.js → bundler-gff4vn1T.js} +8 -4
- package/dist/bundler-gff4vn1T.js.map +1 -0
- package/dist/{bundlerOptions-CYRir4LE.cjs → bundlerOptions-CjjAPZYp.cjs} +2 -2
- package/dist/{bundlerOptions-CYRir4LE.cjs.map → bundlerOptions-CjjAPZYp.cjs.map} +1 -1
- package/dist/{bundlerOptions-9DigsVhY.js → bundlerOptions-NMtZPD7p.js} +2 -2
- package/dist/{bundlerOptions-9DigsVhY.js.map → bundlerOptions-NMtZPD7p.js.map} +1 -1
- package/dist/docs/SKILL.md +1 -1
- package/dist/docs/assets/SOURCE_MAP.json +1 -1
- package/dist/index.cjs +5 -5
- package/dist/index.cjs.map +1 -1
- package/dist/index.js +4 -4
- package/dist/server/index.cjs +954 -167
- package/dist/server/index.cjs.map +1 -1
- package/dist/server/index.d.ts +1 -1
- package/dist/server/index.d.ts.map +1 -1
- package/dist/server/index.js +955 -167
- package/dist/server/index.js.map +1 -1
- package/dist/services/deps.d.ts +3 -1
- package/dist/services/deps.d.ts.map +1 -1
- package/dist/services/index.cjs +1 -1
- package/dist/services/index.js +1 -1
- package/dist/{services-CHz7RuZ1.js → services-BRF1RRXB.js} +39 -4
- package/dist/services-BRF1RRXB.js.map +1 -0
- package/dist/{services-Cw3Ho44Z.cjs → services-_ksvysL5.cjs} +39 -4
- package/dist/services-_ksvysL5.cjs.map +1 -0
- package/package.json +9 -8
- package/dist/_types/@hono_node-server/dist/index.d.ts +0 -8
- package/dist/_types/@hono_node-server/dist/listener.d.ts +0 -13
- package/dist/_types/@hono_node-server/dist/request.d.ts +0 -25
- package/dist/_types/@hono_node-server/dist/server.d.ts +0 -10
- package/dist/_types/@hono_node-server/dist/types.d.ts +0 -44
- package/dist/build-BEtx4cTU.cjs.map +0 -1
- package/dist/build-C5mUjLVf.js.map +0 -1
- package/dist/bundler/index.cjs.map +0 -1
- package/dist/bundler/index.js.map +0 -1
- package/dist/bundler-U9F2---r.js.map +0 -1
- package/dist/services-CHz7RuZ1.js.map +0 -1
- package/dist/services-Cw3Ho44Z.cjs.map +0 -1
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,169 @@
|
|
|
1
1
|
# @mastra/deployer
|
|
2
2
|
|
|
3
|
+
## 1.58.0-alpha.12
|
|
4
|
+
|
|
5
|
+
### Patch Changes
|
|
6
|
+
|
|
7
|
+
- Updated dependencies [[`2e4624e`](https://github.com/mastra-ai/mastra/commit/2e4624edb6917e61249cb60ee377735e7af7e4a9), [`e6534fa`](https://github.com/mastra-ai/mastra/commit/e6534fab031216f6cb48c4c9907cbfdce9d60bc6), [`7fdcaa6`](https://github.com/mastra-ai/mastra/commit/7fdcaa66105d64290f9b14432a12ec99f39c4d3a), [`cfd0d9e`](https://github.com/mastra-ai/mastra/commit/cfd0d9ec77ec3c69dd96f79cdb579e03d79f22ce), [`d9d93b2`](https://github.com/mastra-ai/mastra/commit/d9d93b25e4a65ad5fa153fa35be7ed149c8d587f)]:
|
|
8
|
+
- @mastra/core@1.58.0-alpha.12
|
|
9
|
+
- @mastra/server@1.58.0-alpha.12
|
|
10
|
+
|
|
11
|
+
## 1.58.0-alpha.11
|
|
12
|
+
|
|
13
|
+
### Patch Changes
|
|
14
|
+
|
|
15
|
+
- Updated dependencies [[`b8ce7ec`](https://github.com/mastra-ai/mastra/commit/b8ce7ec96e39343c6c2f36d12d68a9ad816c09f7), [`a3a3624`](https://github.com/mastra-ai/mastra/commit/a3a3624f646b98e409424d8defccbd334da9e8b8), [`6246914`](https://github.com/mastra-ai/mastra/commit/62469146636911f3cbbe0880bd011c6a897a59a7), [`3f73c07`](https://github.com/mastra-ai/mastra/commit/3f73c076727e8c36b4fff7a1b40290fb68957fa8), [`7c1ebb1`](https://github.com/mastra-ai/mastra/commit/7c1ebb15690c4b3f0eabb19077cf8af573311e57), [`32980a3`](https://github.com/mastra-ai/mastra/commit/32980a3e2413d0274ac244d32c37d910edc13f00), [`4bcdfaf`](https://github.com/mastra-ai/mastra/commit/4bcdfaf0eac3199d7cb171b0a19a92c9c341eea4), [`af4636a`](https://github.com/mastra-ai/mastra/commit/af4636a74463275d71c1d13a38f7d2b738f128bf), [`a463cdf`](https://github.com/mastra-ai/mastra/commit/a463cdf1c95c3059e70f0bff27959e8558bb899d), [`0ea6b80`](https://github.com/mastra-ai/mastra/commit/0ea6b8001408ce02b56e8be0536b0fd8cbaf8ad2)]:
|
|
16
|
+
- @mastra/core@1.58.0-alpha.11
|
|
17
|
+
- @mastra/server@1.58.0-alpha.11
|
|
18
|
+
|
|
19
|
+
## 1.58.0-alpha.10
|
|
20
|
+
|
|
21
|
+
### Patch Changes
|
|
22
|
+
|
|
23
|
+
- Updated dependencies [[`14d5cae`](https://github.com/mastra-ai/mastra/commit/14d5cae55d28edf94c7e0e2443aa30bd5f0f2888), [`66bbfb5`](https://github.com/mastra-ai/mastra/commit/66bbfb5f05b473d39f88c0e4a481ccac41634f3a)]:
|
|
24
|
+
- @mastra/server@1.58.0-alpha.10
|
|
25
|
+
- @mastra/core@1.58.0-alpha.10
|
|
26
|
+
|
|
27
|
+
## 1.58.0-alpha.9
|
|
28
|
+
|
|
29
|
+
### Patch Changes
|
|
30
|
+
|
|
31
|
+
- Updated dependencies [[`86b7b77`](https://github.com/mastra-ai/mastra/commit/86b7b777980d30f66e1fd134a37d2af4c22e54cc), [`80a3324`](https://github.com/mastra-ai/mastra/commit/80a33245d3110204de6f56d61211523ffe338692), [`d9d2881`](https://github.com/mastra-ai/mastra/commit/d9d2881ede6dd6c023d144215fc812062aed0890), [`82e3365`](https://github.com/mastra-ai/mastra/commit/82e3365ef7c9bf7bee2e7a7029035ea262d68895), [`1b482c2`](https://github.com/mastra-ai/mastra/commit/1b482c2d89244dd758c41e5f927a2b44041388d2), [`e6a2860`](https://github.com/mastra-ai/mastra/commit/e6a2860649cc51f87d32d78b766ae2126446ba07), [`7bd85ea`](https://github.com/mastra-ai/mastra/commit/7bd85ea7588b71c25ce9f4019c88f8539be5dcbc)]:
|
|
32
|
+
- @mastra/core@1.58.0-alpha.9
|
|
33
|
+
- @mastra/server@1.58.0-alpha.9
|
|
34
|
+
|
|
35
|
+
## 1.58.0-alpha.8
|
|
36
|
+
|
|
37
|
+
### Patch Changes
|
|
38
|
+
|
|
39
|
+
- Add `bundler.minify` to minify `mastra build` output ([#21032](https://github.com/mastra-ai/mastra/pull/21032))
|
|
40
|
+
|
|
41
|
+
`mastra build` always emitted unminified code, which is larger than necessary when packaging for production — a container image or an on-prem deployment.
|
|
42
|
+
|
|
43
|
+
Set `bundler.minify: true` to minify the emitted bundle. Minification runs over whole chunks, so comments and whitespace are dropped and local identifiers are shortened while exported names are preserved.
|
|
44
|
+
|
|
45
|
+
```typescript
|
|
46
|
+
export const mastra = new Mastra({
|
|
47
|
+
bundler: {
|
|
48
|
+
minify: true,
|
|
49
|
+
},
|
|
50
|
+
});
|
|
51
|
+
```
|
|
52
|
+
|
|
53
|
+
Defaults to `false`, so existing builds are unchanged. `mastra dev` is never minified.
|
|
54
|
+
|
|
55
|
+
- Updated dependencies [[`1c75e32`](https://github.com/mastra-ai/mastra/commit/1c75e32f7fc0b9fb6f548b4407feaec8a1440212), [`c47165c`](https://github.com/mastra-ai/mastra/commit/c47165c983c87594c6952f1fd2fa51a90205034c), [`e08e789`](https://github.com/mastra-ai/mastra/commit/e08e789c1bf4cd2fe46363f7a4728536ceccc9bd), [`35cc901`](https://github.com/mastra-ai/mastra/commit/35cc90102cf834a84827acaf9eee0b6d6d1e2a3b), [`a8b4cf0`](https://github.com/mastra-ai/mastra/commit/a8b4cf02823cffebc4751a53337dfacf097c1ae1), [`f33264f`](https://github.com/mastra-ai/mastra/commit/f33264f517ae603279afd5c4251e2b40f6dd3618), [`689f2c4`](https://github.com/mastra-ai/mastra/commit/689f2c4b6c0835fe455702b01d21daa8abcd9331), [`eeae63e`](https://github.com/mastra-ai/mastra/commit/eeae63e7fbe8e1f237adc69bca6e2ac13c5ca907), [`4c186a0`](https://github.com/mastra-ai/mastra/commit/4c186a017275f45e6ed4c09de0f89550e2d09e8c), [`b0fa077`](https://github.com/mastra-ai/mastra/commit/b0fa077bcbc9b08551846fe372a0d3d15b71ed72), [`6810de3`](https://github.com/mastra-ai/mastra/commit/6810de34236f10ec6b82f3d0557937a831dcf9e5)]:
|
|
56
|
+
- @mastra/core@1.58.0-alpha.8
|
|
57
|
+
- @mastra/server@1.58.0-alpha.8
|
|
58
|
+
|
|
59
|
+
## 1.58.0-alpha.7
|
|
60
|
+
|
|
61
|
+
### Patch Changes
|
|
62
|
+
|
|
63
|
+
- Updated dependencies [[`7fb580a`](https://github.com/mastra-ai/mastra/commit/7fb580ac73fbcacf2ff00872a3395f73ae1b9fa5), [`333785c`](https://github.com/mastra-ai/mastra/commit/333785c93cbb01e42c60167e995457c28897ddbf), [`2eabc09`](https://github.com/mastra-ai/mastra/commit/2eabc097d86d52fbd0123da36a7c874154cc384f), [`83fa004`](https://github.com/mastra-ai/mastra/commit/83fa0044bfda8b703a83883dbd8bef204844d13f)]:
|
|
64
|
+
- @mastra/core@1.58.0-alpha.7
|
|
65
|
+
- @mastra/server@1.58.0-alpha.7
|
|
66
|
+
|
|
67
|
+
## 1.58.0-alpha.6
|
|
68
|
+
|
|
69
|
+
### Patch Changes
|
|
70
|
+
|
|
71
|
+
- Updated dependencies [[`f59032a`](https://github.com/mastra-ai/mastra/commit/f59032a73699443555a08a479e7ac578975784f2), [`bf936e2`](https://github.com/mastra-ai/mastra/commit/bf936e2c89b2ff0dad5695b873ddc009ba96d41e), [`a2610c7`](https://github.com/mastra-ai/mastra/commit/a2610c798e9baf28502b9ad3050e6f76c80fe2f3)]:
|
|
72
|
+
- @mastra/core@1.58.0-alpha.6
|
|
73
|
+
- @mastra/server@1.58.0-alpha.6
|
|
74
|
+
|
|
75
|
+
## 1.58.0-alpha.5
|
|
76
|
+
|
|
77
|
+
### Patch Changes
|
|
78
|
+
|
|
79
|
+
- Updated dependencies [[`6445eba`](https://github.com/mastra-ai/mastra/commit/6445eba6020abac681aba1cc9289f446cb400cbe), [`df31eb0`](https://github.com/mastra-ai/mastra/commit/df31eb0c7087d782a0d9346e467f9a4af4b0eef6), [`fcd0667`](https://github.com/mastra-ai/mastra/commit/fcd0667a4e378be35c9a1b1eb19cce78fbfd7282), [`fcd0667`](https://github.com/mastra-ai/mastra/commit/fcd0667a4e378be35c9a1b1eb19cce78fbfd7282), [`bab06b1`](https://github.com/mastra-ai/mastra/commit/bab06b18923873a584bdfc71a6b4ec7fb4727fb7)]:
|
|
80
|
+
- @mastra/core@1.58.0-alpha.5
|
|
81
|
+
- @mastra/server@1.58.0-alpha.5
|
|
82
|
+
|
|
83
|
+
## 1.58.0-alpha.4
|
|
84
|
+
|
|
85
|
+
### Minor Changes
|
|
86
|
+
|
|
87
|
+
- Added `bundler.entries` so `mastra build` can emit extra process entries next to the server bundle. ([#20850](https://github.com/mastra-ai/mastra/pull/20850))
|
|
88
|
+
|
|
89
|
+
A Mastra app that runs a second long-running process, such as a LiveKit voice worker, previously had to bundle that process with its own toolchain because `mastra build` only emitted `index.mjs`. Declare the extra entries in your Mastra config instead:
|
|
90
|
+
|
|
91
|
+
```typescript title="src/mastra/index.ts"
|
|
92
|
+
export const mastra = new Mastra({
|
|
93
|
+
bundler: {
|
|
94
|
+
entries: { 'voice-worker': './voice-worker.ts' },
|
|
95
|
+
externals: true,
|
|
96
|
+
},
|
|
97
|
+
});
|
|
98
|
+
```
|
|
99
|
+
|
|
100
|
+
`mastra build` now emits `.mastra/output/voice-worker.mjs` beside `.mastra/output/index.mjs`. Both share one output directory, one `package.json`, and one dependency install, so a single build produces one deployable artifact you start with different commands:
|
|
101
|
+
|
|
102
|
+
```bash
|
|
103
|
+
node .mastra/output/index.mjs # server
|
|
104
|
+
node .mastra/output/voice-worker.mjs start # worker
|
|
105
|
+
```
|
|
106
|
+
|
|
107
|
+
Dependencies imported only by an extra entry are analyzed too, so they land in the generated `package.json` and resolve at runtime.
|
|
108
|
+
|
|
109
|
+
Entry names may contain `/` to nest the output, but cannot be `index` (the server bundle), `tools` (the tool aggregator), or start with `tools/` (tool bundles).
|
|
110
|
+
|
|
111
|
+
### Patch Changes
|
|
112
|
+
|
|
113
|
+
- Fixed user-registered middleware (`serverMiddleware` and `server.middleware`) being able to return a 401 for framework-public routes such as the Studio sign-in endpoints. ([#20989](https://github.com/mastra-ai/mastra/pull/20989))
|
|
114
|
+
|
|
115
|
+
The deployer now wraps every user middleware with `skipIfFrameworkPublic` from `@mastra/hono`, so requests to routes declared public via `createPublicRoute()` / `requiresAuth: false` always reach their handler.
|
|
116
|
+
|
|
117
|
+
- Updated dependencies [[`c271cae`](https://github.com/mastra-ai/mastra/commit/c271caebd0add9f5d610db0fdb75915fb2b71c18), [`76e5132`](https://github.com/mastra-ai/mastra/commit/76e51328dbc0749c8304e6b3f21e4401f451b081), [`0282e16`](https://github.com/mastra-ai/mastra/commit/0282e16115538c8e9b248b90f0748eb01cb5dc98)]:
|
|
118
|
+
- @mastra/server@1.58.0-alpha.4
|
|
119
|
+
- @mastra/core@1.58.0-alpha.4
|
|
120
|
+
|
|
121
|
+
## 1.58.0-alpha.3
|
|
122
|
+
|
|
123
|
+
### Patch Changes
|
|
124
|
+
|
|
125
|
+
- Fixed browser A2A v1 requests by allowing the `A2A-Version` header in the default CORS configuration. ([#20811](https://github.com/mastra-ai/mastra/pull/20811))
|
|
126
|
+
|
|
127
|
+
- Updated dependencies [[`cdd5c33`](https://github.com/mastra-ai/mastra/commit/cdd5c33ac6c7118a9f139e6dc0e14e6a8ae31658), [`d7cf7fa`](https://github.com/mastra-ai/mastra/commit/d7cf7fafc1ae1b50bd8462dd0e6c671a8606db93), [`0f9a448`](https://github.com/mastra-ai/mastra/commit/0f9a448502157e59f7b76f24360ad497168f5ef8), [`289f4ce`](https://github.com/mastra-ai/mastra/commit/289f4ce16e3293370440172132c52ee787cbc09f), [`4f16ff8`](https://github.com/mastra-ai/mastra/commit/4f16ff824bf2f9b0ddc93f210477c10c8a4fb1ab), [`1c67d85`](https://github.com/mastra-ai/mastra/commit/1c67d85e9da8285662f4dbbf47e0378c3fee0747), [`ba24be6`](https://github.com/mastra-ai/mastra/commit/ba24be662439c331ab23a600041f93803c89eca8), [`842b5fe`](https://github.com/mastra-ai/mastra/commit/842b5fe22b6a7fa811bd14e48eb9af523ac989f2), [`80bdf3a`](https://github.com/mastra-ai/mastra/commit/80bdf3ae16ade6ff63bde0cb16fa2df8ab7dd4dd), [`9ba1247`](https://github.com/mastra-ai/mastra/commit/9ba12470c77f1c03642d720ce67e517e878f666e), [`fd96298`](https://github.com/mastra-ai/mastra/commit/fd96298a8367622f4ebfcaa97b5b6c1fbbd14564), [`6b5fe46`](https://github.com/mastra-ai/mastra/commit/6b5fe464a97ac4845ce26475f347811fc7fb9684), [`6a84954`](https://github.com/mastra-ai/mastra/commit/6a84954a2667f85b6d59da652dab1bbff007ccb0), [`52d8ef0`](https://github.com/mastra-ai/mastra/commit/52d8ef03801f1deb7ee48532fc4190dd4a33916c), [`cdd5c33`](https://github.com/mastra-ai/mastra/commit/cdd5c33ac6c7118a9f139e6dc0e14e6a8ae31658), [`87db0e4`](https://github.com/mastra-ai/mastra/commit/87db0e49a8c04030eb74fff7f051fac330678839), [`efd5c81`](https://github.com/mastra-ai/mastra/commit/efd5c81cc25fde3c2ddd86fc1178deb4ec176e19), [`0976933`](https://github.com/mastra-ai/mastra/commit/0976933142333ec78451feef265b68bcb45aa5e7), [`7010c5d`](https://github.com/mastra-ai/mastra/commit/7010c5d15728bf9c5dfe4fb6b1bf80ce23bf143a), [`242b945`](https://github.com/mastra-ai/mastra/commit/242b94558777bfbdeb42cbfea84afff0b6ad0633), [`fea5cae`](https://github.com/mastra-ai/mastra/commit/fea5caedc7e2cfea51784a15e015952692027abf), [`4b59f78`](https://github.com/mastra-ai/mastra/commit/4b59f786cbc9a7d1ef07a07517dbd4b96865e99d), [`7010c5d`](https://github.com/mastra-ai/mastra/commit/7010c5d15728bf9c5dfe4fb6b1bf80ce23bf143a)]:
|
|
128
|
+
- @mastra/core@1.58.0-alpha.3
|
|
129
|
+
- @mastra/server@1.58.0-alpha.3
|
|
130
|
+
|
|
131
|
+
## 1.58.0-alpha.2
|
|
132
|
+
|
|
133
|
+
### Minor Changes
|
|
134
|
+
|
|
135
|
+
- Added discovery and bundling for `instructions.ts` in file-based agent directories, so an agent can define its prompt in TypeScript instead of `instructions.md`. ([#20847](https://github.com/mastra-ai/mastra/pull/20847))
|
|
136
|
+
|
|
137
|
+
```typescript title="src/mastra/agents/weather/instructions.ts"
|
|
138
|
+
export default 'You are a helpful weather assistant.';
|
|
139
|
+
```
|
|
140
|
+
|
|
141
|
+
Unlike `instructions.md`, whose text is inlined into the generated code, `instructions.ts` is imported. It can therefore import from the rest of your project, and `mastra dev` picks up edits through the normal module graph.
|
|
142
|
+
|
|
143
|
+
A directory holding only an `instructions.ts` now counts as an agent, and subagent directories follow the same rule. Symlinked `instructions.ts` files are skipped, matching how `config.ts` and `memory.ts` are handled.
|
|
144
|
+
|
|
145
|
+
If you already keep an unrelated `instructions.ts` inside an agent directory, for example a helper that `config.ts` imports, rename it. Mastra now reads that file as the agent's instructions and the build fails if it has no default export.
|
|
146
|
+
|
|
147
|
+
### Patch Changes
|
|
148
|
+
|
|
149
|
+
- Updated dependencies [[`c4ec889`](https://github.com/mastra-ai/mastra/commit/c4ec889561c0264c43f66d04d587bee4ce35e792), [`b4c89b4`](https://github.com/mastra-ai/mastra/commit/b4c89b4371b0c86da57403ad1a3b3ef0681f3128), [`e44e8f3`](https://github.com/mastra-ai/mastra/commit/e44e8f370b66c339ddcaba946d33da6d3c3f06cd), [`c967a5e`](https://github.com/mastra-ai/mastra/commit/c967a5eec150c5dc5418c4a4388982d1fb7ad27c), [`f53d5bd`](https://github.com/mastra-ai/mastra/commit/f53d5bd4885b29e4ac29a428a6044088ea8d6aa3), [`bda2235`](https://github.com/mastra-ai/mastra/commit/bda22353ee28f2df0eaea555f7cae1549f979c0b), [`a7eb4a1`](https://github.com/mastra-ai/mastra/commit/a7eb4a11450f6170274ed5141bffe821d4fdd5a6), [`2f9ef3f`](https://github.com/mastra-ai/mastra/commit/2f9ef3f4ca06fc2dcdd5088c26b7f4da6a016791), [`e7eefcb`](https://github.com/mastra-ai/mastra/commit/e7eefcb162cda7c493e8c3bf43050ead0efbcb2c), [`4d7aca2`](https://github.com/mastra-ai/mastra/commit/4d7aca2fe75f225c83d1502d63079568e6ec163f), [`c4ec889`](https://github.com/mastra-ai/mastra/commit/c4ec889561c0264c43f66d04d587bee4ce35e792), [`414d137`](https://github.com/mastra-ai/mastra/commit/414d1379b1911f8cf9e35b38504ec70bdacc2dfd), [`9be8878`](https://github.com/mastra-ai/mastra/commit/9be8878dcf0388e84fc4873e0eec27bd49b881a4)]:
|
|
150
|
+
- @mastra/server@1.58.0-alpha.2
|
|
151
|
+
- @mastra/core@1.58.0-alpha.2
|
|
152
|
+
|
|
153
|
+
## 1.58.0-alpha.1
|
|
154
|
+
|
|
155
|
+
### Patch Changes
|
|
156
|
+
|
|
157
|
+
- Fixed `mastra build` so the generated output keeps the dependency version ranges declared in your app's `package.json`, instead of pinning whatever version happened to be installed. An app that depends on `zod: ^4.3.6` next to a hoisted `zod@3.25.76` now gets `^4.3.6` in `.mastra/output/package.json`, so the isolated install resolves the version the app asked for. A package pinned through `overrides`, `resolutions`, `pnpm.overrides` or `pnpm-workspace.yaml` keeps its resolved version, since that version was chosen deliberately. Specifiers the output directory cannot resolve, such as `catalog:`, `workspace:`, `file:`, `link:` and git URLs, keep using the resolved version too. ([#17915](https://github.com/mastra-ai/mastra/pull/17915))
|
|
158
|
+
|
|
159
|
+
- Fixed deployment artifact generation to reject invalid pnpm build approvals and preserve configured native dependencies without loading their binaries during validation. ([#20719](https://github.com/mastra-ai/mastra/pull/20719))
|
|
160
|
+
|
|
161
|
+
- Fixed bundler validation failing when a workspace package transitively imports a third-party dependency that was already listed in `bundler.externals`. The validation subprocess now stubs user-configured externals, matching the bundler's own treatment of them. ([#16639](https://github.com/mastra-ai/mastra/pull/16639))
|
|
162
|
+
|
|
163
|
+
- Updated dependencies [[`e7109ee`](https://github.com/mastra-ai/mastra/commit/e7109ee6f731bacc79c885906f3c7dca8d8f013a), [`697d059`](https://github.com/mastra-ai/mastra/commit/697d05953049bf6d09e89646c137b76f8ed472ad), [`772c0c8`](https://github.com/mastra-ai/mastra/commit/772c0c897cec383258de2e6178147f8014767c7b), [`578bf2e`](https://github.com/mastra-ai/mastra/commit/578bf2e6a88e9d5b8bf502204e15a95dfbb679ae), [`9deeb52`](https://github.com/mastra-ai/mastra/commit/9deeb521d0016e36417491bd04aed170c2f9b155), [`06b2d87`](https://github.com/mastra-ai/mastra/commit/06b2d87e63bcdd0ed59215c6789692b9b12de376), [`ac01d63`](https://github.com/mastra-ai/mastra/commit/ac01d6355974aec73fdb8781449ed12bac582094), [`a810a05`](https://github.com/mastra-ai/mastra/commit/a810a058f62ad407cfc1701e0be36ae91145d7cf), [`f8da216`](https://github.com/mastra-ai/mastra/commit/f8da21633e7eb0e31c9ce0fc30567870d19416d3), [`6f6a8de`](https://github.com/mastra-ai/mastra/commit/6f6a8de847dc702c98d1a1421ca41da41b011dcd), [`6104347`](https://github.com/mastra-ai/mastra/commit/61043473ba6bfd0a25156824e853e13165562e6c), [`45bfb88`](https://github.com/mastra-ai/mastra/commit/45bfb88fd52f1dd3be20e2a38905777c96499c90), [`0320d2e`](https://github.com/mastra-ai/mastra/commit/0320d2e1845ae4780c6b1a41a0d85981087ba8e0), [`e3b9307`](https://github.com/mastra-ai/mastra/commit/e3b9307098daefbfae2a52ae2ef51bc9fc701190), [`d6834c5`](https://github.com/mastra-ai/mastra/commit/d6834c5a7866b16734d23900163c2414ed70d791), [`c52d346`](https://github.com/mastra-ai/mastra/commit/c52d3462ec831a5d95926ecd3d3373f5928ad2e5), [`0023e79`](https://github.com/mastra-ai/mastra/commit/0023e7919431078280abd11c89d1edeae35fcc69), [`c2ad51e`](https://github.com/mastra-ai/mastra/commit/c2ad51e2467f901eecba8c9f4a45e22a50bd7c18), [`772c0c8`](https://github.com/mastra-ai/mastra/commit/772c0c897cec383258de2e6178147f8014767c7b), [`06b2d87`](https://github.com/mastra-ai/mastra/commit/06b2d87e63bcdd0ed59215c6789692b9b12de376), [`3dc97ea`](https://github.com/mastra-ai/mastra/commit/3dc97ea415fad353b48a13095fad1835933cc12a), [`3d01cd3`](https://github.com/mastra-ai/mastra/commit/3d01cd387321b6f9c5cac31d487c84bf51b19c78), [`7bf3086`](https://github.com/mastra-ai/mastra/commit/7bf308663f0115ca74ad20554ade740f06640859), [`a8dd139`](https://github.com/mastra-ai/mastra/commit/a8dd1391a9fe9a6632c25809ef236980afa9a020), [`e5786be`](https://github.com/mastra-ai/mastra/commit/e5786be02bb903073082bd9d6da880ebaacc343f), [`e5786be`](https://github.com/mastra-ai/mastra/commit/e5786be02bb903073082bd9d6da880ebaacc343f), [`2093fbd`](https://github.com/mastra-ai/mastra/commit/2093fbd53bb744bae19ec89f6d73db9a66fbe8a7), [`e7a5da4`](https://github.com/mastra-ai/mastra/commit/e7a5da4ef8e4dd452d2f232961b4e682a85ffe43), [`7b4393d`](https://github.com/mastra-ai/mastra/commit/7b4393d557411fdcf07b0e30e5acaf7cc85154ae)]:
|
|
164
|
+
- @mastra/core@1.58.0-alpha.1
|
|
165
|
+
- @mastra/server@1.58.0-alpha.1
|
|
166
|
+
|
|
3
167
|
## 1.58.0-alpha.0
|
|
4
168
|
|
|
5
169
|
### Minor Changes
|
|
@@ -0,0 +1,101 @@
|
|
|
1
|
+
import { IncomingMessage, Server, ServerOptions, ServerResponse, createServer } from "node:http";
|
|
2
|
+
import { Http2SecureServer, Http2Server, Http2ServerRequest, Http2ServerResponse, SecureServerOptions, ServerOptions as ServerOptions$1, createSecureServer, createServer as createServer$1 } from "node:http2";
|
|
3
|
+
import { Duplex } from "node:stream";
|
|
4
|
+
import { UpgradeWebSocket } from "hono/ws";
|
|
5
|
+
import { AddressInfo } from "node:net";
|
|
6
|
+
import { ServerOptions as ServerOptions$2, createServer as createServer$2 } from "node:https";
|
|
7
|
+
|
|
8
|
+
//#region src/websocket-types.d.ts
|
|
9
|
+
type WSReadyState = 0 | 1 | 2 | 3;
|
|
10
|
+
type WebSocketData = string | ArrayBuffer | Uint8Array | readonly Uint8Array[];
|
|
11
|
+
type WebSocketSendOptions = {
|
|
12
|
+
compress?: boolean;
|
|
13
|
+
};
|
|
14
|
+
interface WebSocketLike {
|
|
15
|
+
protocol: string;
|
|
16
|
+
readyState: WSReadyState;
|
|
17
|
+
close(code?: number, reason?: string): void;
|
|
18
|
+
send(data: string | ArrayBuffer | ArrayBufferView, options?: WebSocketSendOptions): void;
|
|
19
|
+
on(event: 'message', listener: (data: WebSocketData, isBinary: boolean) => void): this;
|
|
20
|
+
on(event: 'close', listener: (code: number, reason: Uint8Array) => void): this;
|
|
21
|
+
on(event: 'error', listener: (error: unknown) => void): this;
|
|
22
|
+
off(event: 'message', listener: (data: WebSocketData, isBinary: boolean) => void): this;
|
|
23
|
+
}
|
|
24
|
+
interface WebSocketServerLike {
|
|
25
|
+
options: {
|
|
26
|
+
noServer?: boolean;
|
|
27
|
+
};
|
|
28
|
+
on(event: 'connection', listener: (ws: WebSocketLike, request: IncomingMessage) => void): this;
|
|
29
|
+
on(event: 'headers', listener: (headers: string[]) => void): this;
|
|
30
|
+
off(event: 'headers', listener: (headers: string[]) => void): this;
|
|
31
|
+
emit(event: 'connection', ws: WebSocketLike, request: IncomingMessage): boolean;
|
|
32
|
+
handleUpgrade(request: IncomingMessage, socket: Duplex, head: Buffer, callback: (ws: WebSocketLike) => void): void;
|
|
33
|
+
close(): void;
|
|
34
|
+
}
|
|
35
|
+
//#endregion
|
|
36
|
+
//#region src/types.d.ts
|
|
37
|
+
type HttpBindings = {
|
|
38
|
+
incoming: IncomingMessage;
|
|
39
|
+
outgoing: ServerResponse;
|
|
40
|
+
};
|
|
41
|
+
type Http2Bindings = {
|
|
42
|
+
incoming: Http2ServerRequest;
|
|
43
|
+
outgoing: Http2ServerResponse;
|
|
44
|
+
};
|
|
45
|
+
type FetchCallback = (request: Request, env: HttpBindings | Http2Bindings) => Promise<unknown> | unknown;
|
|
46
|
+
type ServerType = Server | Http2Server | Http2SecureServer;
|
|
47
|
+
type createHttpOptions = {
|
|
48
|
+
serverOptions?: ServerOptions;
|
|
49
|
+
createServer?: typeof createServer;
|
|
50
|
+
};
|
|
51
|
+
type createHttpsOptions = {
|
|
52
|
+
serverOptions?: ServerOptions$2;
|
|
53
|
+
createServer?: typeof createServer$2;
|
|
54
|
+
};
|
|
55
|
+
type createHttp2Options = {
|
|
56
|
+
serverOptions?: ServerOptions$1;
|
|
57
|
+
createServer?: typeof createServer$1;
|
|
58
|
+
};
|
|
59
|
+
type createSecureHttp2Options = {
|
|
60
|
+
serverOptions?: SecureServerOptions;
|
|
61
|
+
createServer?: typeof createSecureServer;
|
|
62
|
+
};
|
|
63
|
+
type ServerOptions$3 = createHttpOptions | createHttpsOptions | createHttp2Options | createSecureHttp2Options;
|
|
64
|
+
type Options = {
|
|
65
|
+
fetch: FetchCallback;
|
|
66
|
+
overrideGlobalObjects?: boolean;
|
|
67
|
+
autoCleanupIncoming?: boolean;
|
|
68
|
+
port?: number;
|
|
69
|
+
hostname?: string;
|
|
70
|
+
websocket?: {
|
|
71
|
+
server: WebSocketServerLike;
|
|
72
|
+
};
|
|
73
|
+
} & ServerOptions$3;
|
|
74
|
+
type CustomErrorHandler = (err: unknown) => void | Response | Promise<void | Response>;
|
|
75
|
+
//#endregion
|
|
76
|
+
//#region src/server.d.ts
|
|
77
|
+
declare const createAdaptorServer: (options: Options) => ServerType;
|
|
78
|
+
declare const serve: (options: Options, listeningListener?: (info: AddressInfo) => void) => ServerType;
|
|
79
|
+
//#endregion
|
|
80
|
+
//#region src/websocket.d.ts
|
|
81
|
+
type UpgradeWebSocketOptions = {
|
|
82
|
+
onError: (err: unknown) => void;
|
|
83
|
+
};
|
|
84
|
+
declare const upgradeWebSocket: UpgradeWebSocket<WebSocketLike, UpgradeWebSocketOptions>;
|
|
85
|
+
//#endregion
|
|
86
|
+
//#region src/listener.d.ts
|
|
87
|
+
declare const getRequestListener: (fetchCallback: FetchCallback, options?: {
|
|
88
|
+
hostname?: string;
|
|
89
|
+
errorHandler?: CustomErrorHandler;
|
|
90
|
+
overrideGlobalObjects?: boolean;
|
|
91
|
+
autoCleanupIncoming?: boolean;
|
|
92
|
+
}) => (incoming: IncomingMessage | Http2ServerRequest, outgoing: ServerResponse | Http2ServerResponse) => Promise<void>;
|
|
93
|
+
//#endregion
|
|
94
|
+
//#region src/error.d.ts
|
|
95
|
+
declare class RequestError extends Error {
|
|
96
|
+
constructor(message: string, options?: {
|
|
97
|
+
cause?: unknown;
|
|
98
|
+
});
|
|
99
|
+
}
|
|
100
|
+
//#endregion
|
|
101
|
+
export { type Http2Bindings, type HttpBindings, RequestError, type ServerType, type WebSocketData, type WebSocketLike, type WebSocketServerLike, createAdaptorServer, getRequestListener, serve, upgradeWebSocket };
|
|
@@ -3,7 +3,7 @@ import type { Mastra } from '@mastra/core/mastra';
|
|
|
3
3
|
import type { RequestContext } from '@mastra/core/request-context';
|
|
4
4
|
import type { InMemoryTaskStore } from '@mastra/server/a2a/store';
|
|
5
5
|
import type { ParsedRequestParams, ServerRoute } from '@mastra/server/server-adapter';
|
|
6
|
-
import { MastraServer as MastraServerBase } from '@mastra/server/server-adapter';
|
|
6
|
+
import { MASTRA_FRAMEWORK_PUBLIC_KEY, MastraServer as MastraServerBase } from '@mastra/server/server-adapter';
|
|
7
7
|
import type { Context, HonoRequest, MiddlewareHandler } from 'hono';
|
|
8
8
|
export { createAuthMiddleware } from './auth-middleware.js';
|
|
9
9
|
export type { HonoAuthMiddlewareOptions } from './auth-middleware.js';
|
|
@@ -16,7 +16,30 @@ export type HonoVariables = {
|
|
|
16
16
|
taskStore: InMemoryTaskStore;
|
|
17
17
|
customRouteAuthConfig?: Map<string, boolean>;
|
|
18
18
|
cachedBody?: unknown;
|
|
19
|
+
/**
|
|
20
|
+
* True when the current request targets a route the framework has declared
|
|
21
|
+
* public (`requiresAuth: false`). Adapter authors MUST wrap user-registered
|
|
22
|
+
* middleware with {@link skipIfFrameworkPublic} so that user middleware
|
|
23
|
+
* cannot 401 these routes.
|
|
24
|
+
*/
|
|
25
|
+
[MASTRA_FRAMEWORK_PUBLIC_KEY]?: boolean;
|
|
19
26
|
};
|
|
27
|
+
export { MASTRA_FRAMEWORK_PUBLIC_KEY } from '@mastra/server/server-adapter';
|
|
28
|
+
/**
|
|
29
|
+
* Wrap a Hono middleware handler so it becomes a no-op for framework-public
|
|
30
|
+
* routes (routes registered with `requiresAuth: false`).
|
|
31
|
+
*
|
|
32
|
+
* Adapters that expose user-provided middleware — for example `serverMiddleware`
|
|
33
|
+
* on the Mastra instance or `server.middleware` in Mastra config — MUST wrap
|
|
34
|
+
* those handlers with this before registering them. This is the framework's
|
|
35
|
+
* guarantee that user middleware cannot accidentally (or intentionally) 401
|
|
36
|
+
* routes the framework needs to keep reachable (e.g. Studio sign-in endpoints).
|
|
37
|
+
*
|
|
38
|
+
* The framework-public flag is computed once per request by
|
|
39
|
+
* {@link MastraServer.registerContextMiddleware} and stashed on the Hono
|
|
40
|
+
* context under `MASTRA_FRAMEWORK_PUBLIC_KEY`.
|
|
41
|
+
*/
|
|
42
|
+
export declare const skipIfFrameworkPublic: (handler: MiddlewareHandler) => MiddlewareHandler;
|
|
20
43
|
export type HonoBindings = {};
|
|
21
44
|
/**
|
|
22
45
|
* Generic handler function type compatible across Hono versions.
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
const require_rolldown_runtime = require("./rolldown-runtime-emK7D4bc.cjs");
|
|
2
2
|
const require_utils = require("./utils-O98BGdnP.cjs");
|
|
3
|
-
const require_services = require("./services-
|
|
4
|
-
const require_bundler = require("./bundler-
|
|
3
|
+
const require_services = require("./services-_ksvysL5.cjs");
|
|
4
|
+
const require_bundler = require("./bundler-DCGtF4jP.cjs");
|
|
5
5
|
let child_process = require("child_process");
|
|
6
6
|
let fs = require("fs");
|
|
7
7
|
let fs_promises = require("fs/promises");
|
|
@@ -1193,7 +1193,7 @@ async function validateFile(root, file, { binaryMapData, moduleResolveMapLocatio
|
|
|
1193
1193
|
* @param workspaceMap - Map of workspace packages that gets directly passed through for later consumption
|
|
1194
1194
|
* @returns Analysis result containing dependency mappings
|
|
1195
1195
|
*/
|
|
1196
|
-
async function validateOutput({ output, reverseVirtualReferenceMap, usedExternals, outputDir, projectRoot, workspaceMap, depsVersionInfo }, logger) {
|
|
1196
|
+
async function validateOutput({ output, reverseVirtualReferenceMap, usedExternals, userExternals, outputDir, projectRoot, workspaceMap, depsVersionInfo }, logger) {
|
|
1197
1197
|
const result = {
|
|
1198
1198
|
dependencies: /* @__PURE__ */ new Map(),
|
|
1199
1199
|
externalDependencies: /* @__PURE__ */ new Map(),
|
|
@@ -1213,6 +1213,12 @@ async function validateOutput({ output, reverseVirtualReferenceMap, usedExternal
|
|
|
1213
1213
|
const binaryMap = await (0, fs_promises.readFile)((0, path.join)(outputDir, "binary-map.json"), "utf-8");
|
|
1214
1214
|
binaryMapData = JSON.parse(binaryMap);
|
|
1215
1215
|
}
|
|
1216
|
+
const stubbedExternals = [.../* @__PURE__ */ new Set([
|
|
1217
|
+
...GLOBAL_EXTERNALS,
|
|
1218
|
+
...DEPS_TO_IGNORE,
|
|
1219
|
+
...userExternals,
|
|
1220
|
+
...result.externalDependencies.keys()
|
|
1221
|
+
])];
|
|
1216
1222
|
for (const file of output) {
|
|
1217
1223
|
if (file.type === "asset") continue;
|
|
1218
1224
|
logger.debug("Validating module", { fileName: file.fileName });
|
|
@@ -1222,7 +1228,7 @@ async function validateOutput({ output, reverseVirtualReferenceMap, usedExternal
|
|
|
1222
1228
|
moduleResolveMapLocation: (0, path.join)(outputDir, "module-resolve-map.json"),
|
|
1223
1229
|
logger,
|
|
1224
1230
|
workspaceMap,
|
|
1225
|
-
stubbedExternals
|
|
1231
|
+
stubbedExternals
|
|
1226
1232
|
});
|
|
1227
1233
|
}
|
|
1228
1234
|
return result;
|
|
@@ -1340,6 +1346,7 @@ async function analyzeBundle(entries, mastraEntry, { outputDir, projectRoot, pla
|
|
|
1340
1346
|
output,
|
|
1341
1347
|
reverseVirtualReferenceMap: fileNameToDependencyMap,
|
|
1342
1348
|
usedExternals,
|
|
1349
|
+
userExternals,
|
|
1343
1350
|
outputDir,
|
|
1344
1351
|
projectRoot: workspaceRoot || projectRoot,
|
|
1345
1352
|
workspaceMap,
|
|
@@ -1424,4 +1431,4 @@ Object.defineProperty(exports, "packWorkspaceDependencies", {
|
|
|
1424
1431
|
}
|
|
1425
1432
|
});
|
|
1426
1433
|
|
|
1427
|
-
//# sourceMappingURL=analyze-
|
|
1434
|
+
//# sourceMappingURL=analyze-BIrkd7zx.cjs.map
|