Skip to content

tRPC breaks Denoflare #83

@wrnrlr

Description

@wrnrlr

I been trying to get Denoflare to work with Deno 2.0 and tRPC.

If I run the most basic tRPC example Denoflare will complain about the Deno namespace:

import { initTRPC } from '@trpc/server'
import { fetchRequestHandler } from '@trpc/server/adapters/fetch'

const t = initTRPC.create()
const router = t.router
const publicProcedure = t.procedure
const appRouter = router({
  hello: publicProcedure.query(()=>'hi')
})

export default {
  async fetch(request: Request): Promise<Response> {
    return fetchRequestHandler({
      endpoint: '/trpc',
      req: request,
      router: appRouter,
      createContext: ()=>({})
    })
  }
}
Compiling https://raw.githubusercontent.com/skymethod/denoflare/f414afa279f0ab095eb40505f51afa913adc2d7e/cli-webworker/worker.ts into worker contents...
{ out: "", err: "", success: true }
Bundled https://raw.githubusercontent.com/skymethod/denoflare/f414afa279f0ab095eb40505f51afa913adc2d7e/cli-webworker/worker.ts (esbuild) in 148ms
runScript: bug.ts
{ out: "", err: "", success: true }
Bundled bug.ts (esbuild) in 128ms
worker: start
Error running script ReferenceError: Deno is not defined
    at denoEnvGet (ext:deno_node/_process/process.ts:30:34)
    at Object.get (ext:deno_node/_process/process.ts:45:22)
    at initTRPCInner (blob:null/93ce3d01-69be-4061-984b-8d714de23c75:668:55)
    at _TRPCBuilder.create (blob:null/93ce3d01-69be-4061-984b-8d714de23c75:658:29)
    at blob:null/93ce3d01-69be-4061-984b-8d714de23c75:1194:18

Simple repo to reproduce bug with full --verbose stacktrace: https://github.com/wrnrlr/denoflare-trpc-bug

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions