@vzn/vx 0.0.139 → 0.0.140

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -52,7 +52,8 @@ npx vx run build --all # again: up-to-date in milliseconds
52
52
 
53
53
  Nothing is rewritten. `@vzn/vx-migrate` is not on npm yet (first publish
54
54
  pending); [`examples/turbo`](examples/turbo) runs this setup on every
55
- commit.
55
+ commit. Which `turbo.json`, `nx.json` and `project.json` keys vx honours,
56
+ key by key: [Turbo and Nx config support](https://vznjs.github.io/vx/compare/turbo-nx-support/).
56
57
 
57
58
  ## Why it is faster
58
59
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@vzn/vx",
3
- "version": "0.0.139",
3
+ "version": "0.0.140",
4
4
  "description": "A fast, correct task runner and build cache for JavaScript monorepos.",
5
5
  "type": "module",
6
6
  "exports": {
@@ -17,10 +17,10 @@
17
17
  "node": ">=18"
18
18
  },
19
19
  "optionalDependencies": {
20
- "@vzn/vx-linux-x64": "0.0.139",
21
- "@vzn/vx-linux-arm64": "0.0.139",
22
- "@vzn/vx-darwin-x64": "0.0.139",
23
- "@vzn/vx-darwin-arm64": "0.0.139"
20
+ "@vzn/vx-linux-x64": "0.0.140",
21
+ "@vzn/vx-linux-arm64": "0.0.140",
22
+ "@vzn/vx-darwin-x64": "0.0.140",
23
+ "@vzn/vx-darwin-arm64": "0.0.140"
24
24
  },
25
25
  "dependencies": {
26
26
  "@anthropic-ai/sandbox-runtime": "^0.0.76"
@@ -135,7 +135,12 @@ export class TaskLogBuffer {
135
135
  }
136
136
  if (acc.chars > TASK_LOG_TAIL_CHARS && acc.chunks.length === 1) {
137
137
  const only = acc.chunks[0]!
138
- const keep = only.slice(only.length - TASK_LOG_TAIL_CHARS)
138
+ let start = only.length - TASK_LOG_TAIL_CHARS
139
+ // A cut between a surrogate pair would open the tail on a lone low
140
+ // surrogate, which a sink's UTF-8 encode turns into U+FFFD.
141
+ const first = only.charCodeAt(start)
142
+ if (first >= 0xdc00 && first <= 0xdfff) start++
143
+ const keep = only.slice(start)
139
144
  acc.truncatedHeadChars += only.length - keep.length
140
145
  acc.chunks[0] = keep
141
146
  acc.chars = keep.length