Releases: AngelMunoz/Perla
v1.0.0-beta-028
Changelog (since v1.0.0-beta-027)
- chore(dependencies): update Perla.Plugins and package version (Angel D. Munoz)
- fix(livereload): CSS HMR mechanism (Angel D. Munoz)
- feat(templates:fable-feliz): update offline templates and dependencies (Angel D. Munoz)
- feat: update offline templates for Perla (Angel D. Munoz)
- remove: extra offline templates for Solid.js, Vanilla.js, and Vue.jsx, including associated files and configurations (Angel D. Munoz)
- fix(SuaveService): SPA fallback not fallbacking (Angel D. Munoz)
- fix(css): fix css generation path for builds (Angel D. Munoz)
Full Changelog: v1.0.0-beta-027...v1.0.0-beta-028
v1.0.0-beta-027
What's Changed
- Refactored using FS.SCL beta5.8 by @JordanMarr in #138
Fixed
- Fixed an issue where the virtual file system would not resolve new file content after file system events.
Full Changelog: v1.0.0-beta-026...v1.0.0-beta-027
v1.0.0-beta-026
What's Changed
Fixes
- PkgManager: Fixed directory creation before symlink operations, preventing runtime errors during package management.
- ProviderOps: Corrected package name extraction for flat structures, ensuring accurate dependency resolution.
- Build Service & Esbuild: Improved error handling and directory management, reducing build failures due to missing paths or misconfigurations.
- Fixed
helpActionAsync(requires Input.context) by @JordanMarr in #136
Build Process & Virtual File System
-
Build Pipeline: The
runBuildprocess is now more robust and modular:- Runs Fable builds when configured, with clear logging if skipped.
- Cleans and prepares output directories with better error handling.
- Loads and processes the virtual file system (VFS), copying it to a temp directory before bundling.
- Dynamically loads plugins (including esbuild and path replacer) based on project configuration.
- Emits environment files and prepares the HTML index and import map, cleaning up local paths and handling externals.
- Discovers CSS and JS entrypoints from the HTML for bundling.
- Integrates esbuild for JS and CSS bundling when the plugin is present; otherwise, falls back to file copying.
- Moves or copies build output to the final directory, always respecting include/exclude globs.
- Writes the final
index.htmland cleans up temporary build directories. - Optionally starts a preview server after build completion.
-
Virtual File System: Enhanced handling of
node_modulesand mount directories, ensuring all necessary paths are mounted and available during builds. Improved logging and diagnostics for VFS operations.
Logging & Diagnostics
- Logging: Significantly improved logging across file operations, build steps, and plugin loading, making it easier to trace and debug issues.
- Custom Log Levels: Added support for customizable log levels for more flexible diagnostics.
Other Improvements
- Configuration: Smarter management of
node_modulesand plugin configuration, with helpers to ensure correct setup. - Test Coverage: Updated and expanded tests, especially around logging and platform operations.
New Contributors
- @JordanMarr made their first contribution in #136
Full Changelog: v1.0.0-beta-025...v1.0.0-beta-026
v1.0.0-beta-025
We're somewhat back
This is the first beta of perla v1 in years and I think it was for the best. I won't dive into details but we're closer than ever to release v1.
There's going to be some rough places as I had to do some major refactorings and I'm still polishing out some regressions (some new, some that were already there)
But I encourage you to try it, open issues and hopefully this time we can continue forward.
What's Changed
- Update tools to net8 by @AngelMunoz in #130
- Refactor plugin registry and fsi session management by @AngelMunoz in #131
- Refactor package management and enhance project structure by @AngelMunoz in #132
- feat(tests): add FileSystem.Tests by @AngelMunoz in #133
- feat(tests): enhance PluginManager tests by @AngelMunoz in #134
- feat(SuaveService): integrate Suave framework and add new service files by @AngelMunoz in #135
And a lot more that is not documented due being worked on the dev branch.
- no esbuild required to run
- embedded templates to avoid setups and networktrips
- download dependencies to local "node_modules" and point importmaps to them
Full Changelog: v1.0.0-beta-024...v1.0.0-beta-025
v1.0.0-beta-024
Fix a couple of issues related to live reload and plugins not working correctly for perla serve
Full Changelog: v1.0.0-beta-022...v1.0.0-beta-024
Live Reload Fix
Fix a broken live reload for certain projects and configurations
Full Changelog: v1.0.0-beta-021...v1.0.0-beta-022
v1.0.0-beta-021
What's Changed
- Feature/show different tempalte options by @kaeedo in #125
- fix #126 by @AngelMunoz in #127
Full Changelog: v1.0.0-beta-020...v1.0.0-beta-021
v1.0.0-beta-020
Fix a couple of critical bugs that affected linux release (and also some may experience it in windows as well)
Full Changelog: v1.0.0-beta-019...v1.0.0-beta-020
v1.0.0-beta-019
Please skip beta 19 and go for beta 20 straight as beta 19 introduced some critical bugs for basic experiences... (I'm deeply sorry)
What's Changed
- Extra Middleware by @AngelMunoz in #117
- Use OptionMaybe to parse optional extra parameters. Add tests to cover these cases by @kaeedo in #121
- cli middleware tests by @AngelMunoz in #122
- custom paths by @AngelMunoz in #123
Full Changelog: v1.0.0-beta-018...v1.0.0-beta-019
v1.0.0-beta-018
What's Changed
- formating with fantomas 6 by @AngelMunoz in #109
- switch out flurl by @AngelMunoz in #111
- add cli middleware by @AngelMunoz in #116
This release also offers binary releases, it has been quite a while, but I think this build is stable enough to provide them.
Full Changelog: v1.0.0-beta-017...v1.0.0-beta-018