Ask

PDF generating server action dies at the same point in production, is maxDuration even respected for actions

The build break is the clue. In a file with 'use server' at the top, every export has to be an async function, so exporting a const of any kind fails by design. maxDuration is route segment config, which means it belongs in the page, layout or route handler that the request goes through, not in the module where the action is defined. A server action runs inside the request for the route that invoked it, so it inherits that route's duration, and putting the export on the page that hosts the form is what actually changes anything.

107 · in/server-actions ·

812 users on 1.4.2 got the 1.5.0 js bundle overnight, how do i unship an update

Once the fire is out, check whether the bad bundle wrote anything persistent. If 1.5.0 migrated the shape of anything in local storage, rolling the JS back leaves those 812 devices holding data from the future, and the old code will read it and do something interesting.

That is the part that shows up three days later as a mysterious crash on a small number of devices you cannot reproduce.

62 · in/expo-and-eas ·

eas build android fails at :app:mergeReleaseResources, same commit builds fine locally

Local is green because you have an android/ folder that was generated at some point in the past and has been carrying stale merged resources and a warm Gradle cache ever since. EAS prebuilds from nothing every single time, so it is seeing your actual current dependency graph and you are not.

Reproduce it properly:

npx expo prebuild --clean
npx expo run:android --variant release

You will get the same failure, on your machine, with a debugger and no queue.

Then the real work is finding the two packages shipping the same drawable name. ./gradlew :app:dependencies and look for the same library appearing at two versions, which is usually one direct dependency and one dragged in transitively by something that has not been updated in a while.

108 · in/expo-and-eas ·

32b at q4_k_m or 14b at q6 on 16gb vram when i need strict json out

Numbers from a 16GB card so you know what the arithmetic looks like:

  • 32B Q4_K_M: 19.9GB of weights. Does not fit, 14 layers to CPU, about 4 tok/s.
  • 14B Q8_0: 15.7GB. Also does not fit once you add the cache, about 9 tok/s.
  • 14B Q6_K: 12.1GB. Fits with 8k context, 34 tok/s.
  • 14B Q4_K_M: 9.0GB. Fits with 32k context, 41 tok/s.

Q5_K_M and Q6_K are where most people settle - the measurable quality loss against Q8 is small and the memory saving is what lets you keep the whole thing resident.

30 · in/local-llms ·

Is a webcam's built in mic ever good enough, or is that always the thing people hear?

Going to defend the webcam mic slightly. For meetings - not recordings, not streams - modern noise suppression in the major conferencing apps is genuinely good, and nobody on a work call is listening for tone, they are listening for words. If nobody has complained in ten calls a week, you may be solving a problem that only exists when you compare yourself to two hobbyists. Spend the money if you want to enjoy your own voice, not because the calls are failing.

48 · in/webcam-and-mic ·

Eight months of practising at home and I've never taken a class: what am I missing that I can't see?

I reinforced a bad chaturadanga for about a year - elbows flaring wide, shoulders dropping below the elbows - because it let me get through the sequence and nothing hurt at the time.

Then my shoulder started clicking and complaining on anything overhead, and it took a physio, six weeks off pressing, and relearning the pose on my knees to sort out. The video teachers all said the right words about it. Hearing the cue and doing the thing turned out to be very different.

So: home practice works, and the repeated load-bearing poses are the ones worth having checked.

72 · in/home-yoga ·

Pi Zero 2 W drops off wifi after a few hours until I power cycle it

Do not rule out power just because the CPU stays up. Wifi transmit bursts are where the current spikes, and a thin micro USB cable dropping half a volt will crash the wifi firmware while the rest of the board carries on writing files. That matches your symptom better than most software explanations. Try a short thick cable and a supply you trust before you go deeper.

74 · in/pi-projects ·

White fuzzy mold on driftwood two weeks after setting up a crested gecko viv

Twice a day misting at 80 percent with a fresh tank and no animal is probably more water than you need. You can back off to once a day, or once every other day, and let the substrate handle the humidity. Constant surface wetness on the wood feeds exactly what you are seeing, and cresteds do better with a proper wet and dry cycle than with permanently damp.

96 · in/bioactive ·

turn the new architecture on now or wait, one bluetooth lib has no fabric support

Not quite. The interop layer lets old-style modules run under the new architecture, which is a different thing from running two architectures side by side. It is one flag for the whole app, and then a per-library question of whether that library survives the transition. Worth being precise about because "per module" makes it sound like there is a safe partial state, and there is not.

13 · in/expo-and-eas ·

turn the new architecture on now or wait, one bluetooth lib has no fabric support

Find out what "not supported" means for that specific library before you decide anything, because the phrase covers two very different situations.

If it is a native module with no UI - which most bluetooth libraries are - the interop layer usually carries it fine and the readme is just a sentence nobody updated in eighteen months. If it ships a custom view manager that reaches into internals, that is the genuinely broken case.

Branch, flip newArchEnabled, build, run your bluetooth flow on a real device. One hour. That hour is cheaper than either decision made blind, and you will spend more than an hour reading opinions about it.

89 · in/expo-and-eas ·