Updated build-docker.sh to use Electron Forge instead of electron-builder, switched from electronuserland/builder image to node:22, and removed electron-builder-specific commands. Added architecture-specific build scripts (linux:x64, linux:arm64, mac:x64, mac:arm64) to package.json for CI workflow. Removed outdated electron-rebuild comment from release.yml.
- Disabled asar packaging due to silent failure in electron-packager
- Added generateAssets hook to download IPFS/Kubo binaries before packaging
- Added ignore patterns for kubo symlinks and .bin directories that cause build failures
- Simplified CI workflow with proper pipefail handling
- Removed legacy electron-builder config from package.json
- Added glob and progress dependencies needed for hooks
The asar creation was silently failing due to issues with symlinks in node_modules.
With asar disabled, the app bundle is larger but packaging completes successfully.
Migrated build system from electron-builder to Electron Forge with new configuration in forge.config.js. Replaced manual IPFS binary downloads with kubo npm package, updating start-ipfs.js to resolve binaries from node_modules. Simplified CI workflows to use new build scripts and verification helpers. Added scripts to find and verify executables in Forge output directory.
Refactored timeout and interval management across components to use refs for proper cleanup. Fixed memory leak in use-time-filter hook by tracking interval lifecycle. Improved error handling type safety in error-display component.
Updated @types/react and @types/react-dom from 18.x to ^19.1.2 to match React 19. Upgraded react-markdown from 8.0.6 to ^10.1.0 for React 19 compatibility. Fixed TypeScript errors across components including useRef initial values, ref type mismatches, JSX namespace issues, and react-markdown component prop types.