Commit ccc2722
committed
Improve subprocess transform robustness and add binary + metadata dict support
- Python transforms: fix JSONDecodeError escaping _send_raw uncaught, add
capture_output=True to pip/npm calls inside get_transformer (stdout pipe
was being polluted), include full traceback when exception escapes
transformer.transform()
- Node transforms: switch to structured JSON protocol (same as Python) so
binary input/output is handled explicitly; fix binary input (was always
read as utf-8); exceptions are now caught and surfaced with a stack trace;
console.log no longer interferes with the protocol
- Plugin transforms: fix exception traceback (was str(e) only)
- All transforms: transform_metadata.metadata is now an _MNS instance —
a SimpleNamespace-style object that also supports dict-style access
(__getitem__, keys/values/items, 'in', iteration) so transform code can
use either style interchangeably1 parent 25abca2 commit ccc2722
4 files changed
Lines changed: 120 additions & 32 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
8 | 8 | | |
9 | 9 | | |
10 | 10 | | |
| 11 | + | |
11 | 12 | | |
12 | 13 | | |
13 | 14 | | |
| |||
547 | 548 | | |
548 | 549 | | |
549 | 550 | | |
550 | | - | |
| 551 | + | |
551 | 552 | | |
552 | 553 | | |
553 | 554 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
32 | 32 | | |
33 | 33 | | |
34 | 34 | | |
| 35 | + | |
35 | 36 | | |
36 | 37 | | |
37 | 38 | | |
38 | 39 | | |
| 40 | + | |
| 41 | + | |
| 42 | + | |
| 43 | + | |
| 44 | + | |
| 45 | + | |
| 46 | + | |
| 47 | + | |
| 48 | + | |
| 49 | + | |
| 50 | + | |
| 51 | + | |
| 52 | + | |
| 53 | + | |
| 54 | + | |
39 | 55 | | |
40 | 56 | | |
41 | 57 | | |
| |||
87 | 103 | | |
88 | 104 | | |
89 | 105 | | |
90 | | - | |
| 106 | + | |
91 | 107 | | |
92 | 108 | | |
93 | 109 | | |
| |||
117 | 133 | | |
118 | 134 | | |
119 | 135 | | |
120 | | - | |
| 136 | + | |
121 | 137 | | |
122 | | - | |
| 138 | + | |
123 | 139 | | |
124 | 140 | | |
125 | 141 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1 | 1 | | |
2 | 2 | | |
3 | 3 | | |
| 4 | + | |
4 | 5 | | |
5 | 6 | | |
6 | 7 | | |
| |||
19 | 20 | | |
20 | 21 | | |
21 | 22 | | |
22 | | - | |
23 | | - | |
24 | | - | |
25 | | - | |
26 | | - | |
27 | | - | |
28 | | - | |
29 | | - | |
30 | | - | |
31 | | - | |
32 | | - | |
33 | 23 | | |
34 | 24 | | |
35 | 25 | | |
| |||
63 | 53 | | |
64 | 54 | | |
65 | 55 | | |
66 | | - | |
| 56 | + | |
| 57 | + | |
67 | 58 | | |
68 | 59 | | |
69 | 60 | | |
| |||
179 | 170 | | |
180 | 171 | | |
181 | 172 | | |
182 | | - | |
183 | | - | |
184 | | - | |
| 173 | + | |
| 174 | + | |
| 175 | + | |
| 176 | + | |
| 177 | + | |
| 178 | + | |
| 179 | + | |
| 180 | + | |
| 181 | + | |
| 182 | + | |
| 183 | + | |
| 184 | + | |
| 185 | + | |
185 | 186 | | |
186 | 187 | | |
187 | | - | |
188 | | - | |
| 188 | + | |
| 189 | + | |
| 190 | + | |
| 191 | + | |
| 192 | + | |
| 193 | + | |
| 194 | + | |
| 195 | + | |
| 196 | + | |
| 197 | + | |
| 198 | + | |
| 199 | + | |
| 200 | + | |
| 201 | + | |
189 | 202 | | |
| 203 | + | |
| 204 | + | |
190 | 205 | | |
191 | 206 | | |
192 | 207 | | |
| |||
208 | 223 | | |
209 | 224 | | |
210 | 225 | | |
211 | | - | |
212 | | - | |
213 | | - | |
| 226 | + | |
| 227 | + | |
| 228 | + | |
| 229 | + | |
214 | 230 | | |
215 | 231 | | |
216 | 232 | | |
217 | 233 | | |
218 | | - | |
219 | 234 | | |
220 | 235 | | |
221 | | - | |
222 | | - | |
| 236 | + | |
| 237 | + | |
| 238 | + | |
| 239 | + | |
| 240 | + | |
| 241 | + | |
| 242 | + | |
| 243 | + | |
| 244 | + | |
| 245 | + | |
| 246 | + | |
| 247 | + | |
| 248 | + | |
| 249 | + | |
| 250 | + | |
| 251 | + | |
| 252 | + | |
| 253 | + | |
| 254 | + | |
| 255 | + | |
| 256 | + | |
| 257 | + | |
| 258 | + | |
| 259 | + | |
| 260 | + | |
| 261 | + | |
| 262 | + | |
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
37 | 37 | | |
38 | 38 | | |
39 | 39 | | |
| 40 | + | |
| 41 | + | |
| 42 | + | |
| 43 | + | |
| 44 | + | |
| 45 | + | |
| 46 | + | |
| 47 | + | |
| 48 | + | |
| 49 | + | |
| 50 | + | |
| 51 | + | |
| 52 | + | |
| 53 | + | |
| 54 | + | |
| 55 | + | |
| 56 | + | |
| 57 | + | |
| 58 | + | |
40 | 59 | | |
41 | 60 | | |
42 | 61 | | |
| |||
86 | 105 | | |
87 | 106 | | |
88 | 107 | | |
| 108 | + | |
89 | 109 | | |
90 | 110 | | |
91 | 111 | | |
| |||
113 | 133 | | |
114 | 134 | | |
115 | 135 | | |
116 | | - | |
| 136 | + | |
117 | 137 | | |
118 | 138 | | |
119 | 139 | | |
| |||
153 | 173 | | |
154 | 174 | | |
155 | 175 | | |
| 176 | + | |
156 | 177 | | |
157 | 178 | | |
158 | 179 | | |
| |||
245 | 266 | | |
246 | 267 | | |
247 | 268 | | |
248 | | - | |
| 269 | + | |
249 | 270 | | |
250 | 271 | | |
251 | 272 | | |
| |||
276 | 297 | | |
277 | 298 | | |
278 | 299 | | |
279 | | - | |
| 300 | + | |
280 | 301 | | |
281 | 302 | | |
282 | 303 | | |
| |||
352 | 373 | | |
353 | 374 | | |
354 | 375 | | |
355 | | - | |
| 376 | + | |
356 | 377 | | |
357 | 378 | | |
358 | 379 | | |
| |||
377 | 398 | | |
378 | 399 | | |
379 | 400 | | |
| 401 | + | |
| 402 | + | |
380 | 403 | | |
381 | 404 | | |
382 | 405 | | |
| |||
466 | 489 | | |
467 | 490 | | |
468 | 491 | | |
469 | | - | |
| 492 | + | |
| 493 | + | |
| 494 | + | |
| 495 | + | |
| 496 | + | |
| 497 | + | |
| 498 | + | |
| 499 | + | |
| 500 | + | |
470 | 501 | | |
471 | 502 | | |
472 | 503 | | |
| |||
0 commit comments