Fix date/time column formats on export #278

Merged
pxlrbt merged 2 commits from fix/date-format-closures into main 2026-08-15 12:02:27 +00:00
pxlrbt commented 2026-08-15 11:51:14 +00:00 (Migrated from github.com)

dateTime(), time() and the iso* helpers default their format to a closure that reads it off the table. The export detaches the column from its table, so those columns threw "column is not mounted to a table". Formats are now resolved while the column is still mounted; ISO columns are rebound with isoDate() instead of date(), which previously turned 'L' into a leap year flag.

Verified against Filament v4.12.6 and v5.7.6 — fails on both without the fix.

Also adds the first tests (Pest + Testbench, 15 cases over table column formatters) and a CI workflow: PHP 8.3–8.5 × Filament v4/v5, plus a daily run to catch new Filament releases.

Fixes #265

🤖 Generated with Claude Code

`dateTime()`, `time()` and the `iso*` helpers default their format to a closure that reads it off the table. The export detaches the column from its table, so those columns threw "column is not mounted to a table". Formats are now resolved while the column is still mounted; ISO columns are rebound with `isoDate()` instead of `date()`, which previously turned `'L'` into a leap year flag. Verified against Filament v4.12.6 and v5.7.6 — fails on both without the fix. Also adds the first tests (Pest + Testbench, 15 cases over table column formatters) and a CI workflow: PHP 8.3–8.5 × Filament v4/v5, plus a daily run to catch new Filament releases. Fixes #265 🤖 Generated with [Claude Code](https://claude.com/claude-code)
Sign in to join this conversation.
No description provided.