|
1 | 1 | # 0.0.18 |
2 | 2 |
|
| 3 | +## ElectronNET.Core |
3 | 4 |
|
4 | | -## Major overhaul: ElectronNET.Core |
| 5 | +### Highlights |
| 6 | +- **Complete MSBuild Integration**: Eliminated CLI tool dependency, moved all build processes to MSBuild with deep Visual Studio integration |
| 7 | +- **Modernized Architecture**: Restructured process lifecycle with .NET launching first and running Electron as child process for better control and reliability |
| 8 | +- **Cross-Platform Development**: Build and debug Linux applications directly from Windows Visual Studio via WSL integration |
| 9 | +- **Flexible Electron Versioning**: Removed version lock-in, users can now select any Electron version with build-time validation |
| 10 | +- **Enhanced Debugging Experience**: ASP.NET-first debugging with Hot Reload support and improved process termination handling |
| 11 | +- **Console App Support**: No longer requires ASP.NET - now works with simple console applications for file system or remote server HTML/JS |
5 | 12 |
|
6 | | -- New features |
7 | | -- New package names |
8 | | -- Restart of versioning |
| 13 | +### Build System & Project Structure |
| 14 | +- Eliminated electron.manifest.json configuration file, replaced with MSBuild project properties |
| 15 | +- Introduced new package structure: ElectronNET.Core (main package), ElectronNET.Core.Api (API definitions), ElectronNET.Core.AspNet (ASP.NET integration) |
| 16 | +- Added Runtime Identifier (RID) selection as part of project configuration |
| 17 | +- Restructured build folder layout to use standard .NET format (bin\net8.0\win-x64) instead of bin\Desktop |
| 18 | +- Implemented incremental build support for Electron assets to improve build performance |
| 19 | +- Added custom MSBuild tasks for Electron-specific build operations |
9 | 20 |
|
| 21 | +### Development Experience |
| 22 | +- Implemented unpackaged run-mode for development using regular .NET builds with unpackaged Electron configuration |
| 23 | +- Added support for building Linux packages on Windows via WSL integration |
| 24 | +- Enabled running and debugging Linux application outputs on Windows through WSL |
| 25 | +- Integrated TypeScript compilation with ASP.NET tooling for consistent builds |
| 26 | +- Added process orchestration supporting 8 different launch scenarios (packaged/unpackaged × console/ASP.NET × dotnet-first/electron-first) |
10 | 27 |
|
| 28 | +### Debugging & Runtime |
| 29 | +- Dramatically improved debugging experience with ASP.NET-first launch mode |
| 30 | +- Added Hot Reload support for ASP.NET code during development |
| 31 | +- Implemented proper process termination handling for all exit scenarios |
| 32 | +- Minimized startup times through optimized build and launch procedures |
| 33 | + |
| 34 | +### Technical Improvements |
| 35 | +- Enhanced splash screen handling with automatic path resolution |
| 36 | +- Improved ElectronHostHook integration as proper npm package dependency |
| 37 | +- Updated to latest TypeScript version with ESLint configuration |
| 38 | +- Added support for custom main.js files in projects |
| 39 | +- Implemented version management through common.props file |
| 40 | +- Added build-time Electron version compatibility validation |
| 41 | + |
| 42 | +### Package & Distribution |
| 43 | +- Integrated MSBuild publishing mechanisms for creating Electron packages |
| 44 | +- Added folder publishing support with improved parameter handling |
| 45 | +- Implemented automated package.json generation from MSBuild properties |
| 46 | +- Added GitHub release automation with proper versioning |
| 47 | +- Reduced package sizes by eliminating unnecessary TypeScript dependencies |
| 48 | + |
| 49 | +### Migration & Compatibility |
| 50 | +- Maintained backward compatibility for existing ElectronHostHook implementations |
| 51 | +- Removed ASP.NET requirement: Now works with simple console applications for file system or remote server HTML/JS scenarios |
| 52 | +- Added support for both console and ASP.NET Core application types |
| 53 | +- Preserved all existing Electron API functionality while modernizing architecture |
| 54 | +- Added migration path for existing projects through updated package structure |
| 55 | + |
| 56 | +This represents a comprehensive modernization of Electron.NET, addressing the major pain points around debugging, build complexity, and platform limitations while maintaining full API compatibility. |
11 | 57 |
|
0 commit comments