Repository navigation
Releases: lubusIN/frappe-local
Releases · lubusIN/frappe-local
Release list
Dev Rolling Build v1.0.0-dev.20261014
Rolling dev build containing the latest changes.
v1.0.0-beta.14
What's New!
✨ New Features
- Windows Support: Initial Windows support, including container-native storage and WSL memory allocation handling.
- Terminal & Shell: Implemented cross-platform terminal orchestration and shell execution services.
- Diagnostics: Added real-time diagnostics updates via the IPC bridge.
- Podman Integration: Implemented a new runtime-service to automatically manage the Podman machine lifecycle.
- Single Instance: Enforced single application instance running at a time.
- Caddy: Stabilized Caddy frontdoor operations.
- Frappe: Added support for the
developbranch for bench creation.
🐛 Bug Fixes
- Windows: Fixed WSL to Podman communication and opening projects in devcontainers.
- Storage: Resolved a storage race condition.
- Tasks: Fixed an issue where cancelled tasks showed incorrect statuses.
- Testing: Fixed tests failing on Windows, site orchestration tests, and resolved linting errors.
♻️ Refactoring & Chores
- macOS: Replaced AppleScript terminal invocation with a more reliable direct
open -a Terminalcommand. - DevContainers: Refactored devcontainer handling across platforms.
- Docker: Pinned the base bench image version for more stable builds.
📚 Documentation
- Added a Supported Platforms.
- Refined installation instructions across all operating systems.
- Documented application hardware and network requirements.
Full Changelog: dev...v1.0.0-beta.14
v1.0.0-beta.13
What's New in v1.0.0-beta.13
✨ Features
- Runtime Reliability: Enforce container runtime (Podman) availability before executing bench and site orchestration tasks.
- Smart Diagnostics: Integrated diagnostics to auto-correct bench states during critical environment issues (e.g. Podman failures) and conditionally render site links based on true availability.
🐛 Bug Fixes
- Bench State Sync: Automatically mark all running benches as "stopped" in the database upon critical diagnostic failures, eliminating "endless starting" UI hangs.
- Build System: Fixed preload script paths to use the
.mjsextension for correct loading.
🛠 Chore & Maintenance
- UI Upgrade: Upgraded
frappe-uifrombeta.25tobeta.35. - macOS Installer: Configured macOS hardened runtime entitlements and properly disabled strict validation.
- Build Config: Updated dependency structure and electron-builder build settings to optimize the desktop application footprint.
- Refactoring: Consolidated internal service imports and updated test mocks to use partial import mocking.
Full Changelog: v1.0.0-beta.12...v1.0.0-beta.13
v1.0.0-beta.12
What's Changed
🚀 Features
- Apps: Implement stricter validation and normalization logic for GitHub repository sources (fixes duplication with trailing slashes) (79836d2)
🛠 Refactors & Improvements
- Build: Migrate Electron Forge to Electron Builder for improved application packaging (b26bc23)
- Apps: Display installed apps in the overview section (18a265b)
- Benches: Replace bench status tab buttons with a clean filter select dropdown (d950e20)
- Sites: Remove status filter functionality from SitesView (a0c8424)
Full Changelog: https://github.com/rtCamp/frappe-local/compare/v1.0.0-beta.11...v1.0.0-beta.12
v1.0.0-beta.11
What's New in v1.0.0-beta.11
✨ Features
- Apps (Catalog): Added manual app catalog synchronization. You can now fetch the latest apps from the Brewery immediately via a new "Sync" button.
- Apps (Custom): Added robust duplicate validation when adding Custom Apps. The system intelligently normalizes URLs and local paths to cleanly prevent duplicate app entries.
- Sites: Introduced a brand-new tabbed UI layout for Site details to significantly improve navigation and data density.
- Benches: Introduced a tabbed UI layout for Bench details, aligning the design language with the new Sites view.
- Diagnostics: Added real-time status indicators directly to the sidebar navigation menu, allowing you to instantly spot system health issues.
🎨 UI & UX
- Overview Actions: Reorganized site and bench action buttons, moving them into clean, structured overview tabs to reduce clutter.
- Wizard Navigation: Completely revamped the wizard creation flows. Updated step labels and replaced the old breadcrumb navigation with a sleek, stepped progress bar.
🐛 Bug Fixes
- Backend IPC Context: Fixed a critical JavaScript
thisbinding issue in the IPC handlers that caused background sync tasks to crash when triggered manually.
Full Changelog: dev...v1.0.0-beta.11
v1.0.0-beta.10
What's New in v1.0.0-beta.10
✨ Features
- Settings: Introduced auto-save for settings, including debounced operations and dedicated flow for applying memory allocation changes.
- Sites: Centralized site creation toast notifications and background task tracking for smoother UX across both Bench and Site views.
- Sites UI: Upgraded the bench selection in the site creation wizard to use a custom selection list and improved wizard dialog sizing.
- Updates: Implemented manual update downloading capabilities and enabled update checks in the development environment.
🐛 Fixes
- Settings: Fixed race conditions with settings persistence by ensuring changes are safely saved and configured states update upon successful application.
- Task Logs: Adjusted log dialog sizing to prevent clipping and overlap with toast notifications.
♻️ Refactoring & Improvements
- UI Components: Migrated various form inputs to the unified
FormControlcomponent and standardized form validation. - Icons: Swapped out
unplugin-iconsin favor of runtimelucide-iconclass strings for cleaner DOM and better performance. - App Manager: Improved App Manager UI with tab counts and clearer variable naming.
- App Catalog: Added support for multiple categories per item in catalog queries and grouping logic.
- Tests: Updated wizard validation tests to properly expect error objects instead of arrays.
- Build: Simplified build scripts and eliminated unused imports across the renderer.
🔧 Maintenance
- Bumped
frappe-uidependency tov1.0.0-beta.25. - Linting and code-style cleanup across components.
Full Changelog: dev...v1.0.0-beta.10
v1.0.0-beta.9
What's Changed
✨ Features
- Apps: Automatically resolve app dependencies when fetching apps (via
--resolve-deps) and sync installed apps state fromapps.txtcleanly. - Apps: Prevent app remove if they are actively in use by existing benches or sites, surfacing a new usage check dialog.
- Bench: Added real-time validation to ensure bench names are unique during the bench creation flow.
- Bench: New "Build Bench" action added to the bench action menu.
- Bench: Added "Quick-add site" feature to bench creation and removed the redundant force toggle for clearer UX.
- Site: Introduced new quick actions for clearing site cache and running database migrations.
♻️ Refactoring & Chores
- UI/UX: Grouped bench actions together and reordered main navigation for an improved layout.
- Maintenance: Fixed linting and strict type-checking issues across IPC and UI layers.
Full Changelog: dev...v1.0.0-beta.9
v1.0.0-beta.8
What's New in Frappe Local v1.0.0-beta.8
🚀 Editor & Dev Container Integrations
- Universal "Open In" Action for Bench Apps: Enabled both Open in VS Code and Open in Dev Container options across all installed bench apps (including core apps, custom local apps, and GitHub custom apps).
- Intelligent Dev Container Folder Resolution: Fixed a
Workspace does not existissue when launching Dev Containers for custom/GitHub apps. The backend now accurately resolves the exact repository directory inside/workspace/apps/regardless of app identifiers or naming conventions (e.g.,-vs_). - VS Code Installation Verification: Added system check to detect if the VS Code (
code) CLI is installed (/usr/local/bin,/opt/homebrew/bin, or macOS application bundles). "Open In" actions are now intelligently disabled in the UI when VS Code is not present on the host system. - Enhanced Process Pathing for Packaged Builds: Resolved
ENOENTspawn errors when opening external editors from packaged Electron.appbuilds by automatically injecting standard shell environment paths ($PATH).
✨ UI & User Experience Improvements
- Human-Readable App Titles in Notifications: Fixed toast notifications displaying raw GUIDs (
b4f2c81d-...) when opening custom apps. Toasts and error alerts now correctly resolve and display human-friendly app titles and names (My Custom App). - List View Layout Polish: Improved list view alignment and spacing across development and release builds by applying structured table layout rules and adopting standard
frappe-uilist-style CSS.
🛠️ App Updates & System Reliability
- Graceful Update Verification: Improved auto-updater robustness by properly handling GitHub
404 Not FoundAPI responses when checking for newer releases on pre-release/beta tags, preventing false error alerts. - Dynamic macOS Code Signing: Added support for ad-hoc signing and notarization workflows on macOS binaries during packaging.
📦 Version & Dependencies
- Bumped project version to
1.0.0-beta.8. - Synchronized and verified lockfile dependencies (
package-lock.json).
Full Changelog: dev...v1.0.0-beta.8
v1.0.0-beta.7
What's Changed in v1.0.0-beta.7
🛠 UI & Layout Improvements
- Native List Layout Alignment: Explicitly imported
frappe-ui/list-style.cssinside the main renderer entry point (main.ts). This guarantees identical, full-width edge-to-edge grid layout and row alignment ([data-slot='list-row']) across bothdevandreleasebuilds without requiring utility class overrides or patch styles (87ac80d).
🔄 Auto-Updater & Update UI Fixes
- Graceful Auto-Update Check Handling: Expanded
isGracefulUpdateErrorto cleanly catch and silence"No published versions on GitHub","Cannot find channel", and"No release found"when running development or pre-release builds (2305e5e). - Prevent False "Update Available" Alerts: Guarded the
AppShellupdate state management (onUpdateAvailable&onUpdateError) so that update check errors or identical version checks no longer trigger falseUpdate Availablepopups or empty version tags (v). - macOS Auto-Update Verification Hook: Enhanced native macOS auto-update handling (
Squirrel.Mac) to ensure smooth background unpacking and verification (64e322a).
🍎 Code Signing & Packaging
- Ad-Hoc Release Bundle Signing: Enabled dynamic
--deep --forcead-hoc (-) code signing acrosselectron-forge(forge.config.ts&make-release.js). Every generated.dmg,.zip, and.appbundle is properly ad-hoc signed soSecStaticCodeCheckValidityvalidation passes cleanly during local testing and auto-updates (8ddf1ab).
Full Changelog: v1.0.0-beta.6...v1.0.0-beta.7
v1.0.0-beta.6
Frappe Local v1.0.0-beta.6
This release brings major architectural improvements to the user interface, introducing modern 3-column split layouts for Benches and Sites, improved application management, accurate app metrics, and a comprehensive code refactor with strict type safety.
✨ What's New
🖥️ Unified 3-Column Master-Detail Layouts
- Edge-to-Edge Split View (
Benches&Sites): Re-engineered the layout forBenchesView.vueandSitesView.vue. List and detail panes now stretch edge-to-edge for optimal screen real estate. - Collapsible Navigation Panel: Added a sidebar toggle switch inside the header bar (
PageHeaderBase), allowing users to collapse or reveal the master list panel on demand (w-80 sm:w-96when expanded). - Streamlined Search & Status Filtering: Pinned clean, icon-free status tab bars (
All,Running,Stopped,Ready,Queued) with accurate count badges directly above item lists.
🧩 Improved Application Management & Metrics
- Core Dependency (
frappe) Exclusion from Installed Counts:- Freshly created benches and sites require the core
frappeframework dependency (apps: ['frappe']). Previously, this causedappCountmetrics across badges and lists to display1 App Installed. - Introduced the shared
filterNonCoreAppsutility across backend IPC serialization (toBenchListItem,toSiteListItem), site creation validation, and UI counters. - Newly initialized benches and sites now cleanly display
0 Apps Installed, accurately reflecting only user-installed custom or catalog applications (erpnext,hrms, etc.).
- Freshly created benches and sites require the core
- Consolidated App Management: Removed redundant
Manage Appspopover dialogs (ManageAppsDialog). All application installations, removals, and updates are now managed cleanly through the embedded<AppManager>interface inside the detail reading pane.
🧹 UI/UX & Action Cleanup
- More Actions Dropdown (
Delete&More): Moved destructive operations (Delete BenchandDelete Site) out of primary action bars directly into the More Actions (...) dropdown menu as red-themed options (theme: 'red') to prevent accidental clicks. - Removed Deprecated Actions: Cleaned up the obsolete
Clean Benchaction button, confirmation modal, and associated state from the UI. - Upgraded Component Library: Upgraded
frappe-uidependencies and replaced legacy HTML elements with standard, dark-mode compatiblefrappe-uicomponents across all views.
🛠️ Under the Hood & Code Health
- Strict Type Safety across Codebase & Tests: Eliminated loose
anycasts (context as any,mockRepo as any,mockExec) acrossCustomAppsView.vueand main process tests (bench-devcontainer.test.ts,catalog-provider.test.ts,terminal.test.ts), enforcing strict TypeScript interfaces (Parameters<typeof ...>). - Resolved Runtime Component Warnings: Fixed
[Vue warn]: Failed to resolve component: Alertconsole warnings across views by explicitly importing requiredfrappe-uicomponents. - Clean Attribute & DOM Hierarchy: Standardized Vue template attribute ordering and eliminated unnecessary DOM wrapper nesting across all templates (
eslint --fix). - Rock-Solid Test Suite: Verified 100% passing test suite across all 62 test files (
303 passing tests), zero ESLint errors or warnings, and cleantypecheckresults.
Full Changelog: dev...v1.0.0-beta.6