Commit Graph
22 Commits
Author SHA1 Message Date
tbenandClaude Opus 5.5 96e392f556 1.4.0: not_found, server-only response options, compression
- Server functions can return not_found: true to render the 404 page
  with status 404.
- Page components and window.__PAGE_PROPS__ (and HMR updates) only get
  props, query, url and error. response_options, redirect, cache settings
  and res_transform stay on the server, so cookies and private headers no
  longer end up in the HTML. BunextPageProps is narrowed to match
  (breaking for code that read server-only fields from component props).
- response_options headers go through a Headers object, so repeated
  headers such as several Set-Cookie survive.
- Redirects: status_code wins over permanent; response_options headers
  and res_transform apply to redirects too.
- Gzip for compressible text responses; compress: false to turn it off.
- Files the router matches but never bundles (.server.ts, __root,
  excluded paths and directories) return 404 instead of looping through
  dev rebuild retries.
- Missing public files return 404 rather than 403, so dotted page paths
  like /users/john.doe fall through to pages again.
- importFresh detects rewrites within the filesystem's mtime granularity.
- README: self-hosted React (not esm.sh), snake_case option names, static
  file serving, cache headers, the new options.

Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-11-09 04:14:56 +01:00
tben 8a981c854a Builds errors bugfix 2026-10-16 16:54:55 +01:00
tbenandClaude Opus 5.5 3a75880ae4 Date sitemap lastmod from the build pipeline; warn on skipped pages
- bunext build records when each page's client bundle hash last changed
  in .bunext/page-lastmod.json (sitemap.lastmod_file to relocate). The
  hash covers the page's whole import graph, so component edits re-date
  every page that uses them. The sitemap uses these dates as lastmod
- Add sitemap.default_lastmod
- BREAKING: use_file_lastmod now defaults to false (file mtimes are reset
  by checkouts); it is a fallback after the build record
- Warn when a page or __root.tsx is skipped because its default export
  is not at the start of a line (e.g. export { Page as default })
- Replace leaking module mocks in tests (log, grab-root-file-path) with
  spies and fixtures

Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-10-14 18:25:38 +01:00
tben 8fa5b64b48 Fix build lags 2026-10-02 14:48:38 +01:00
tben d8ea4f8e02 Error handling bugfix: pass #1 2026-10-02 07:04:22 +01:00
tben 39a5e91eeb Add build info JSON file after builds 2026-09-23 05:18:53 +01:00
tben 2335c60cc3 Refactor artifacts to use relative directory for build step and retrieval 2026-09-23 05:08:54 +01:00
tben d4cc401209 Updates 2026-09-22 16:43:14 +01:00
tben 1c52617728 Updates 2026-09-22 16:01:25 +01:00
tben 78e86b3999 Rename global variables 2026-08-03 12:01:40 +01:00
tben 817beacc7a Update build step 2026-07-01 19:18:11 +01:00
tben 7dbd1f7e12 Remove esm.sh externals 2026-03-31 06:57:44 +01:00
tben 47c262392c Switch back to esbuild 2026-03-24 18:28:56 +01:00
tben 60ee353bf0 Refactor Server Paradigm. 2026-03-24 07:18:57 +01:00
tben 4b8b610e32 Updates 2026-03-23 07:42:00 +01:00
tben 1634eeb213 Major Refactoring. Test update 2026-03-22 16:45:12 +01:00
tben 3d044ee79e Bugfix. Update Tsx server stripping function to have absolute paths. Run the rewrite function on dev and build commands. 2026-03-22 10:53:27 +01:00
tben cf010ad4f5 Update watcher function. Add tests 2026-03-21 09:03:26 +01:00
tben 98d3cf7da7 Add features: custom server and websocket. Minor refactoring 2026-03-21 07:42:38 +01:00
tben 7ef114ee70 Handle browser Errors. 2026-03-21 06:34:32 +01:00
tben f722d4ae47 Update dist 2026-03-19 05:27:31 +01:00
tben eec0df83cd Add dist 2026-03-18 17:37:24 +01:00