v2.1.4
What's new
Frontend Updates Without On-Server Builds
FS PBX now installs prebuilt frontend assets during application updates and fresh installations. Routine updates no longer run npm dependency installation or compile the web interface on the PBX server, reducing update-time CPU and memory demands.
Highlights
- Download compiled frontend assets matching the application release.
- Verify package integrity and source compatibility before application update steps run.
- Report missing or incompatible assets without starting an automatic local build.
- Keep the existing frontend active until replacement assets are ready.
Local Builds and Frontend Rollback
Developers and administrators can continue using npm run dev and npm run build, including for production troubleshooting. No environment setting is needed to switch between released and locally compiled assets.
Highlights
- Build the core interface and enabled modules with the usual
npm run buildcommand. - Activate local assets only after every build succeeds.
- Reuse an existing local build for an unpublished development checkout when its frontend source still matches exactly.
- Restore the previous compiled frontend with
php artisan frontend:rollback, provided the application and module versions remain compatible.
Frontend rollback restores compiled assets only; it does not revert application source or database changes.
Frontend Packages for Optional Modules
Optional modules can now deliver their compiled frontend assets through their existing licensed packages. Installing a compatible module package no longer requires rebuilding the core interface.
Modules with a web interface require a corresponding module release containing compatible frontend assets. License and entitlement checks continue to control which module packages are downloaded.
Improvements and fixes
- Reject module packages with missing, incompatible, or mismatched frontend assets before replacing installed module files.
- Restore previous module files when an upgrade of an existing module fails.
- Keep older compiled asset files available for browser tabs opened before an update.
- Detect frontend asset changes during navigation so browsers can load the current interface.
- Load the public real-time connection key from each server at page load, allowing the same compiled release to work across installations.
- Match fresh-install source to a published release with available frontend assets.
- Add
php artisan frontend:installto retry asset installation without running a full application update.