TanStack / router

🤖 Fully typesafe Router for React (and friends) w/ built-in caching, 1st class search-param APIs, client-side cache integration and isomorphic rendering.
https://tanstack.com/router
MIT License
8.32k stars 669 forks source link

Bug: compiler error on arrow function implicit return in server functions - Invariant failed: createServerFn must be called with a function that is marked with the 'use server' pragma. #2441

Closed SeyyedKhandon closed 1 week ago

SeyyedKhandon commented 2 months ago

Which project does this relate to?

Start

Describe the bug

This issue is a follow up for https://github.com/TanStack/router/discussions/2434 discussion:

This server function:

const getHashId = createServerFn("GET", () => storage.hashId);

results in :

Invariant failed: createServerFn must be called with a function that is marked with the 'use server' pragma. Are you using the @tanstack/router-plugin/vite ?

while it works for:

const getHashId = createServerFn("GET", () => {
  return storage.hashId;
});

Your Example Website or App

https://github.com/TanStack/router/discussions/2434

Steps to Reproduce the Bug or Issue

  1. just use an arrow function with implicit return

Expected behavior

As a user I expect it to support javascript syntax correctly, which means it should support any variant of functions that we pass to be considered a fully javascript compatible.

Screenshots or Videos

Image

Platform

Additional context

No response

ncor commented 1 month ago

any progress?

mwondhaf commented 1 month ago

Facing this issue for the past 5 days...

schiller-manuel commented 2 weeks ago

can you please retest with the latest start version? server functions were updated a lot so this might be fixed (or not, let's find out)

SeyyedKhandon commented 1 week ago

It works now. Thanks