Upgrade to Filament 4/5, Laravel 12/13 and PHP 8.3+ - #28
Open
jyrkidn wants to merge 3 commits into
Open
Conversation
- Swap codedor/* dependencies for their wotz/* successors (filament-architect v3, laravel-livewire-forms v5, filament-mail-templates v2, filament-translatable-strings v3, filament-translatable-tabs v3, laravel-locale-collection v2, filament-media-library v4) - Replace awcodes/filament-tiptap-editor with Filament's native RichEditor (checkbox-tiptap-profile config renamed to checkbox-toolbar-buttons) - Drop unused guava/filament-drafts dependency (blocked Filament 4/5, only referenced in the test TestCase) - Migrate resources to the Filament 4/5 schema API (Schema signatures, unified Filament\Actions namespace, recordActions/toolbarActions) - Remove the removed HasTranslations page trait (translatable-tabs v3 handles translations in the schema lifecycle) - Make RenderedForm null-safe when mounted without a form - Register LivewireServiceProvider after the Filament providers in tests, so Livewire's DataStore instance binding wins over Filament's DataStoreOverride bind (mirrors production package discovery order) - Pest 4 / PHPUnit 12 / larastan 3 / testbench 10-11; refresh phpunit.xml.dist and phpstan config; CI matrix to PHP 8.3-8.5 x Laravel 12-13
- Codedor\FormArchitect namespace becomes Wotz\FormArchitect - composer name codedor/filament-form-architect -> wotz/filament-form-architect - Repo/branding references point to the wotzebra organisation - UPGRADING.md documents the rename for consuming projects
The page's $record property was never assigned in mount() and the typed property blew up on direct visits to the submissions index. Assign the optionally-bound record and only scope the query when one is present. Claude-Session: https://claude.ai/code/session_01RiAkKQ4ZMzoRPkTms5Bi1i
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Brings the package to the current wotz stack: Filament ^4|^5, Laravel 12/13, PHP 8.3+ (tested on 8.5), Livewire 4, Pest 4, and renames it to
wotz/filament-form-architectfor the move to the wotzebra organisation. All 8 tests pass on PHP 8.5.8 / Laravel 13.26 / Filament 5.7.6, and PHPStan (larastan 3, level 4) is clean.Package rename (org move)
Codedor\FormArchitect→Wotz\FormArchitectthroughout src, tests, config, database and docs.codedor/filament-form-architect→wotz/filament-form-architect; homepage, issue templates and branding point at the wotzebra org. CHANGELOG history left untouched.Dependencies
codedor/*deps swapped for theirwotz/*successors: filament-architect ^3, laravel-livewire-forms ^5, filament-mail-templates ^2, filament-translatable-strings ^3, laravel-locale-collection ^2, and filament-translatable-tabs ^3 + filament-media-library ^4 now declared explicitly (both were used directly but only pulled in transitively before).awcodes/filament-tiptap-editorreplaced by Filament's nativeRichEditor(Tiptap-based since v4). Thecheckbox-tiptap-profileconfig key becamecheckbox-toolbar-buttons(array of toolbar buttons).guava/filament-draftsdropped: it has no Filament 4/5 release and was an unused dependency — only referenced in the testTestCase, never insrc/.maatwebsite/excel^4.0 (required by translatable-strings v3; v3.1 caps below PHP 8.5).Code
form(Schema $schema),infolist(Schema $schema),components(),Filament\Schemas\Components\{Grid,Section}, unifiedFilament\Actions\*,recordActions()/toolbarActions(),Filament\Schemas\Components\Utilities\Get.HasTranslationspage trait removed from Create/Edit pages — translatable-tabs v3 handles translations in the schema lifecycle.TranslatableTabs::persistInQueryString(false)→persistTabInQueryString(null).RenderedFormis now null-safe when mounted without a form (previously fataled on the non-nullable anonymous-class constructor).Tests / tooling
SupportServiceProviderre-binds Livewire'sDataStoretoDataStoreOverridevia a transientbind(), which drops Livewire'sinstance()binding if Livewire registers first — everystore()call then gets a fresh store and validation error bags break (ViewErrorBag::put(): Argument #2 must be MessageBag, null given).LivewireServiceProvideris now registered after the Filament providers, mirroring production package-discovery (alphabetical) order.phpunit.xml.distrefreshed for PHPUnit 12 (the old 10.3-schema<coverage>block made Pest exit 1 silently without a coverage driver).UPGRADING.mddocuments the v1 → v2 steps for consuming projects.Breaking changes for consumers
See
UPGRADING.md— new package namewotz/filament-form-architect, namespace swap toWotz\FormArchitect(andWotz\*for direct references to the underlying packages), RichEditor config key rename, and the dropped drafts dependency.Vue renderer: dropped
The Vue 2 renderer (
@codedor/form-architectnpm, repocodedor/cod519) targets the oldlaravel-form-architectdata shape and will not get a Vue 3 version. Public-site rendering happens through this package's LivewireRenderedFormcomponent; the npm package can be deprecated andcod519archived once consumers have migrated.Release/infra checklist (outside this PR)
wotz/filament-form-architectto Packagist and markcodedor/filament-form-architectas abandoned with the new name as replacement.