Repository navigation
v0.23.1
Upgrading
Deploy and run migrations as usual. This release adds no schema of its own.
An installation that already has the Enterprise module working is unaffected β its tables exist. This matters for installations that have not installed it yet, and for every new one.
Changed
- Admin β Modules β Install uses the shared drag-and-drop file picker β the ZIP box only opened a
file chooser on click; it now takes a dropped file too (FileDropZone, as in the importer), posts
through Inertia so a rejected file shows its error under the drop zone, and shows upload progress.
The upload is validated by a Form Request (InstallModuleRequest) instead of inline. - Operator Workstation view follows the selected workstation β switching from Queue to
Workstation with a workstation picked (e.g.?workstation=10) now shows only the orders whose
current step runs there β plus not-yet-started orders whose first step is there, so they can be
started from that station β and only that workstation's machine state, with an "All workstations"
link back to the whole line.per_linetracking keeps the whole-line view, and a workstation
account's assignment alone doesn't filter it β only an actual selection does. The Queue view shows
those not-yet-started orders as their own "To start at β¦" cards below "Ready at β¦", and its
polling count includes them.
Fixed
- Installing a module from a ZIP in Admin β Modules always failed with "Could not open ZIP file": the upload was stored on the
localdisk (storage/app/private) but the installer was handed astorage/app/β¦path, so the file was never found and each attempt leaked its archive. - Enabling a module did not create the tables it ships, so every screen it contributes answered
500 with "relation β¦ does not exist" the moment it was opened. Enabling ranmigrate, but a
module's migrations are registered by its service provider, providers are registered at boot, and
the process doing the enabling booted with the module switched off β somigrateonly ever saw
the application's own paths. It is now pointed at the module's own directory explicitly. Together
with the ZIP fix above this makes Admin β Modules β Install usable end to end; before, an install
reported success and then failed on first use. - Sidebar: a group stayed unhighlighted (and collapsed) on pages a module added to it, and a module's own group never highlighted at all β only core pages lit their group up. Module links now extend the group's match list, so the breadcrumb trail finds them too.
- Uploads over PHP's 32 MB
post_max_size(e.g. a backup archive for restore, which the app accepts up to 500 MB) crashed with a barePostTooLargeExceptionpage. The Docker image now allows 512 MB and an oversized body is reported as a flash error (413 for JSON clients) instead. - Operator Queue: the "All" workstation chip now actually clears the selection (it fell back to
the workstation remembered in the session). - Live lists stopped updating after a create or delete until a browser refresh β returning to
the same list (e.g. the redirect after adding a work order in/admin/work-orders) mounted a new
synced collection while the old one was still shutting down, and the old one'secho.leave()
unsubscribed the channel both shared. Collection channels are now reference-counted
(lib/sharedChannels.js): a channel is left only when its last user releases it, which also stops
an unmounting list from cutting off the app-widework_orders_active/issues_openfeeds. - Phantom rows in live lists after a rolled-back write β collection deltas were broadcast from
model events mid-transaction, so a write that failed later in the same transaction still pushed
its row into every open list, where it stayed until a refresh. Deltas are now sent after the
transaction commits and dropped on rollback. - Operator Workstation view: the machine-state picker uses the shared
Dropdowninstead of a
native<select>, and structured extra-data values render as readable text instead of
[object Object].