@juspay/neurolink 12.47.0 → 12.47.1

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
@@ -1,8 +1,8 @@
1
- ## [12.47.0](https://github.com/juspay/neurolink/compare/v12.46.1...v12.47.0) (2026-10-05)
1
+ ## [12.47.1](https://github.com/juspay/neurolink/compare/v12.47.0...v12.47.1) (2026-10-05)
2
2
 
3
- ### Features
3
+ ### Bug Fixes
4
4
 
5
- - **(decide):** add Cloudflare Clef as a decide provider with image input ([9d14900](https://github.com/juspay/neurolink/commit/9d14900509f3552d6647f4909bf8a4f227b3ca83))
5
+ - **(core):** fix the core defects the reviewers found, part 1 ([b699ba5](https://github.com/juspay/neurolink/commit/b699ba576253161b732c8632b35f261d1e3b5a1e)), closes [#1337](https://github.com/juspay/neurolink/issues/1337) [#1376](https://github.com/juspay/neurolink/issues/1376) [#1327](https://github.com/juspay/neurolink/issues/1327) [#1861](https://github.com/juspay/neurolink/issues/1861) [#1593](https://github.com/juspay/neurolink/issues/1593) [#1335](https://github.com/juspay/neurolink/issues/1335) [#1819](https://github.com/juspay/neurolink/issues/1819) [#1483](https://github.com/juspay/neurolink/issues/1483) [#1354](https://github.com/juspay/neurolink/issues/1354) [#1407](https://github.com/juspay/neurolink/issues/1407)
6
6
 
7
7
  ## [11.2.3](https://github.com/juspay/neurolink/compare/v11.2.2...v11.2.3) (2026-08-19)
8
8
 
@@ -57,7 +57,9 @@ export declare function getFfmpegPath(): Promise<string>;
57
57
  * @param args - FFmpeg CLI arguments (without the binary path)
58
58
  * @param options - Timeout and buffer size overrides
59
59
  * @returns stdout and stderr from the process
60
- * @throws Error if the process exits with a non-zero code or times out
60
+ * @throws Error if the process exits with a non-zero code or times out. When
61
+ * the process wrote any output the error also carries it as `stdout` and
62
+ * `stderr`.
61
63
  */
62
64
  export declare function runFfmpeg(args: string[], options?: {
63
65
  timeoutMs?: number;
@@ -163,7 +163,9 @@ export async function getFfmpegPath() {
163
163
  * @param args - FFmpeg CLI arguments (without the binary path)
164
164
  * @param options - Timeout and buffer size overrides
165
165
  * @returns stdout and stderr from the process
166
- * @throws Error if the process exits with a non-zero code or times out
166
+ * @throws Error if the process exits with a non-zero code or times out. When
167
+ * the process wrote any output the error also carries it as `stdout` and
168
+ * `stderr`.
167
169
  */
168
170
  export async function runFfmpeg(args, options = {}) {
169
171
  const { execFile } = await import("node:child_process");
@@ -173,7 +175,16 @@ export async function runFfmpeg(args, options = {}) {
173
175
  return new Promise((resolve, reject) => {
174
176
  const proc = execFile(ffmpegPath, args, { timeout: timeoutMs, maxBuffer }, (error, stdout, stderr) => {
175
177
  if (error) {
176
- reject(error);
178
+ // execFile's callback error carries no output, but ffmpeg prints a
179
+ // stream's input report before it exits non-zero on a stream it
180
+ // cannot decode, and a metadata probe needs that report. A spawn
181
+ // failure printed nothing and keeps the bare error.
182
+ reject(stdout || stderr
183
+ ? Object.assign(error, {
184
+ stdout: stdout || "",
185
+ stderr: stderr || "",
186
+ })
187
+ : error);
177
188
  }
178
189
  else {
179
190
  resolve({ stdout: stdout || "", stderr: stderr || "" });