Repository: modiimedia/arri (language: rust)

Issue:
Body is always undefined in React Native
**Describe the bug**

See title.

**Additional context**

This is a result of the following issue in ofetch which the TS client relies on
https://github.com/unjs/ofetch/issues/324


Discussion / hints:

Fix patch:
diff --git a/languages/ts/ts-client/build.config.ts b/languages/ts/ts-client/build.config.ts
index 696cd84b..0b59cbd3 100644
--- a/languages/ts/ts-client/build.config.ts
+++ b/languages/ts/ts-client/build.config.ts
@@ -12,5 +12,5 @@ export default defineBuildConfig({
     clean: true,
     declaration: true,
     failOnWarn: true,
-    externals: ["ofetch", "@arrirpc/schema"],
+    externals: ["ofetch", "@joshmossas/ofetch", "@arrirpc/schema"],
 });
diff --git a/languages/ts/ts-client/package.json b/languages/ts/ts-client/package.json
index 4d5ac72c..f123136e 100644
--- a/languages/ts/ts-client/package.json
+++ b/languages/ts/ts-client/package.json
@@ -5,10 +5,17 @@
   "main": "./dist/index.cjs",
   "module": "./dist/index.mjs",
   "types": "./dist/index.d.ts",
-  "files": ["dist"],
+  "files": [
+    "dist"
+  ],
   "license": "MIT",
-  "author": { "name": "joshmossas", "url": "https://github.com/joshmossas" },
-  "bugs": { "url": "https://github.com/modiimedia/arri/issues" },
+  "author": {
+    "name": "joshmossas",
+    "url": "https://github.com/joshmossas"
+  },
+  "bugs": {
+    "url": "https://github.com/modiimedia/arri/issues"
+  },
   "repository": {
     "type": "git",
     "url": "https://github.com/modiimedia/arri.git",
@@ -16,9 +23,11 @@
   },
   "dependencies": {
     "@arrirpc/schema": "workspace:*",
+    "@joshmossas/ofetch": "^1.3.5",
     "event-source-plus": "^0.1.3",
-    "ofetch": "^1.3.4",
     "ws": "^8.18.0"
   },
-  "devDependencies": { "@types/ws": "^8.5.12" }
+  "devDependencies": {
+    "@types/ws": "^8.5.12"
+  }
 }
diff --git a/languages/ts/ts-client/src/request.ts b/languages/ts/ts-client/src/request.ts
index de06c72d..1cc89eae 100644
--- a/languages/ts/ts-client/src/request.ts
+++ b/languages/ts/ts-client/src/request.ts
@@ -1,6 +1,6 @@
 import { serializeSmallString } from "@arrirpc/schema";
+import { FetchError, ofetch } from "@joshmossas/ofetch";
 import { EventSourcePlusOptions, type HttpMethod } from "event-source-plus";
-import { FetchError, ofetch } from "ofetch";
 
 import { ArriErrorInstance, isArriError } from "./errors";
 import { getHeaders } from "./utils";
diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml
index cc829990..c73ecc01 100644
--- a/pnpm-lock.yaml
+++ b/pnpm-lock.yaml
@@ -147,12 +147,12 @@ importers:
       '@arrirpc/schema':
         specifier: workspace:*
         version: link:../../../tooling/schema
+      '@joshmossas/ofetch':
+        specifier: ^1.3.5
+        version: 1.3.5
       event-source-plus:
         specifier: ^0.1.3
         version: 0.1.3
-      ofetch:
-        specifier: ^1.3.4
-        version: 1.3.4
       ws:
         specifier: ^8.18.0
         version: 8.18.0
@@ -247,9 +247,9 @@ importers:
       '@arrirpc/schema':
         specifier: workspace:*
         version: link:../../../tooling/schema
-      ofetch:
-        specifier: ^1.3.4
-        version: 1.3.4
+      '@joshmossas/ofetch':
+        specifier: ^1.3.5
+        version: 1.3.5
 
   tests/server:
     dependencies:
@@ -302,6 +302,9 @@ importers:
       '@joshmossas/listhen':
         specifier: ^1.10.1
         version: 1.10.1
+      '@joshmossas/ofetch':
+        specifier: ^1.3.5
+        version: 1.3.5
       c12:
         specifier: ^1.11.1
         version: 1.11.1(magicast@0.3.4)
@@ -332,9 +335,6 @@ importers:
       h3:
         specifier: ^1.12.0
         version: 1.12.0
-      ofetch:
-        specifier: ^1.3.4
-        version: 1.3.4
       pathe:
         specifier: ^1.1.2
         version: 1.1.2
@@ -1545,6 +1545,9 @@ packages:
     resolution: {integrity: sha512-nTvhrbk/JS2CYbREnHFcJclrN9KMevS10hz7oxQPMt9attC1/fJIyyuvwzKpJxdejOMJRnsPMno4vhg38JhYoQ==}
     hasBin: true
 
+  '@joshmossas/ofetch@1.3.5':
+    resolution: {integrity: sha512-IFkon4hO30CBDdHhCYI2o0OvNrN2YPtscNDZljv+s4eb4cq20+S06YcuNIFvNSj1R+WnEiVAOA6hYeYI1o9rJQ==}
+
   '@jridgewell/gen-mapping@0.3.5':
     resolution: {integrity: sha512-IzL8ZoEDIBRWEzlCcRhOaCupYyN5gdIK+Q6fbFdPDg6HqX6jpkItn7DFIpW9LQzXG6Df9sA7+OKnq0qlz/GaQg==}
     engines: {node: '>=6.0.0'}
@@ -5539,6 +5542,12 @@ snapshots:
     transitivePeerDependencies:
       - uWebSockets.js
 
+  '@joshmossas/ofetch@1.3.5':
+    dependencies:
+      destr: 2.0.3
+      node-fetch-native: 1.6.4
+      ufo: 1.5.4
+
   '@jridgewell/gen-mapping@0.3.5':
     dependencies:
       '@jridgewell/set-array': 1.2.1
diff --git a/tooling/cli/package.json b/tooling/cli/package.json
index add73e89..b474e091 100644
--- a/tooling/cli/package.json
+++ b/tooling/cli/package.json
@@ -3,9 +3,16 @@
   "version": "0.58.0",
   "type": "module",
   "license": "MIT",
-  "author": { "name": "joshmossas", "url": "https://github.com/joshmossas" },
-  "bin": { "arri": "./dist/cli.mjs" },
-  "bugs": { "url": "https://github.com/modiimedia/arri/issues" },
+  "author": {
+    "name": "joshmossas",
+    "url": "https://github.com/joshmossas"
+  },
+  "bin": {
+    "arri": "./dist/cli.mjs"
+  },
+  "bugs": {
+    "url": "https://github.com/modiimedia/arri/issues"
+  },
   "repository": {
     "type": "git",
     "url": "https://github.com/modiimedia/arri.git",
@@ -14,7 +21,9 @@
   "main": "./dist/index.cjs",
   "module": "./dist/index.mjs",
   "types": "./dist/index.d.ts",
-  "files": ["dist"],
+  "files": [
+    "dist"
+  ],
   "dependencies": {
     "@arrirpc/codegen-dart": "workspace:*",
     "@arrirpc/codegen-kotlin": "workspace:*",
@@ -23,6 +32,7 @@
     "@arrirpc/codegen-utils": "workspace:*",
     "@arrirpc/schema": "workspace:*",
     "@joshmossas/listhen": "^1.10.1",
+    "@joshmossas/ofetch": "^1.3.5",
     "c12": "^1.11.1",
     "chokidar": "^3.6.0",
     "citty": "^0.1.6",
@@ -33,9 +43,10 @@
     "esbuild-plugin-replace": "^1.4.0",
     "globby": "^14.0.2",
     "h3": "^1.12.0",
-    "ofetch": "^1.3.4",
     "pathe": "^1.1.2",
     "prettier": "^3.3.3"
   },
-  "devDependencies": { "@types/degit": "^2.8.6" }
+  "devDependencies": {
+    "@types/degit": "^2.8.6"
+  }
 }
diff --git a/tooling/cli/src/commands/codegen.ts b/tooling/cli/src/commands/codegen.ts
index 2849cec5..d8caf8a9 100644
--- a/tooling/cli/src/commands/codegen.ts
+++ b/tooling/cli/src/commands/codegen.ts
@@ -1,10 +1,10 @@
 import fs from "node:fs";
 
 import { type AppDefinition, isAppDefinition } from "@arrirpc/codegen-utils";
+import { ofetch } from "@joshmossas/ofetch";
 import { loadConfig } from "c12";
 import { watch } from "chokidar";
 import { defineCommand } from "citty";
-import { ofetch } from "ofetch";
 import path from "pathe";
 
 import { logger } from "../common";
diff --git a/tooling/cli/src/commands/use.ts b/tooling/cli/src/commands/use.ts
index 0f3ff6b7..567196d6 100644
--- a/tooling/cli/src/commands/use.ts
+++ b/tooling/cli/src/commands/use.ts
@@ -1,8 +1,8 @@
 import { a } from "@arrirpc/schema";
+import { ofetch } from "@joshmossas/ofetch";
 import { defineCommand } from "citty";
 import consola from "consola";
 import { readFile, writeFile } from "fs/promises";
-import { ofetch } from "ofetch";
 import path from "pathe";
 
 import { getArriPackageMetadata } from "../common";
diff --git a/tooling/cli/src/common.ts b/tooling/cli/src/common.ts
index 7d6956a5..e6602d58 100644
--- a/tooling/cli/src/common.ts
+++ b/tooling/cli/src/common.ts
@@ -7,9 +7,9 @@ import {
     removeDisallowedChars,
 } from "@arrirpc/codegen-utils";
 import { a, ValidationError } from "@arrirpc/schema";
+import { ofetch } from "@joshmossas/ofetch";
 import { createConsola } from "consola";
 import { type globby } from "globby";
-import { ofetch } from "ofetch";
 import path from "pathe";
 import prettier from "prettier";
 


Test patch:
diff --git a/tests/clients/ts/package.json b/tests/clients/ts/package.json
index 4617c468..86ca200e 100644
--- a/tests/clients/ts/package.json
+++ b/tests/clients/ts/package.json
@@ -4,6 +4,6 @@
   "dependencies": {
     "@arrirpc/client": "workspace:*",
     "@arrirpc/schema": "workspace:*",
-    "ofetch": "^1.3.4"
+    "@joshmossas/ofetch": "^1.3.5"
   }
 }
diff --git a/tests/clients/ts/testClient.test.ts b/tests/clients/ts/testClient.test.ts
index ff51aa77..4441c9c1 100644
--- a/tests/clients/ts/testClient.test.ts
+++ b/tests/clients/ts/testClient.test.ts
@@ -1,6 +1,6 @@
 import { ArriErrorInstance } from "@arrirpc/client";
+import { ofetch } from "@joshmossas/ofetch";
 import { randomUUID } from "crypto";
-import { ofetch } from "ofetch";
 import { expect, test } from "vitest";
 
 import {