mirror of
https://github.com/MAKS-IT-COM/uscheduler.git
synced 2026-02-14 06:37:18 +01:00
3.5 KiB
3.5 KiB
MaksIT.UScheduler Changelog
All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.
v1.0.1 - 2026-02-02
Added
- CLI service management: Added command-line arguments for service installation and management
--install,-i: Install the Windows service--uninstall,-u: Uninstall the Windows service--start: Start the service--stop: Stop the service--status: Query service status--help,-h: Show help message
- Relative path support: Script and process paths can now be relative to the application directory
- OS guard: Application now checks for Windows at startup and exits with error on unsupported platforms
- Release script enhancement: Example scripts are now automatically added to
appsettings.jsonin disabled state during release build - Unit tests: Added comprehensive test project
MaksIT.UScheduler.Testswith tests for background services and configuration
Changed
- Default value for
IsSignedin PowerShell script configuration changed fromfalsetotruefor improved security - PSScriptService now implements
IDisposablefor proper RunspacePool cleanup - Method signatures updated:
RunScript→RunScriptAsync,RunProcess→RunProcessAsync - Service is now installed with
start=autofor automatic startup on boot - Updated package dependencies:
- MaksIT.Core: 1.6.0 → 1.6.1
- Microsoft.Extensions.Hosting: 10.0.0 → 10.0.2
- Microsoft.Extensions.Hosting.WindowsServices: 10.0.0 → 10.0.2
- System.Diagnostics.PerformanceCounter: 10.0.0 → 10.0.2
Removed
Install.cmdandUninstall.cmdfiles (replaced by CLI arguments)
Fixed
- Parallel execution: Restored parallel execution of PowerShell scripts and processes (broken during .NET Framework to .NET migration)
- PSScriptService now uses RunspacePool (up to CPU core count) for concurrent script execution
- Background services use
Task.WhenAllto launch all tasks simultaneously
v1.0.0 - 2025-12-06
Major Changes
- Migrate of the Unified Scheduler Service in .NET 10 (previously .NET 8).
- New solution and project structure under
MaksIT.UScheduler. - Added support for scheduling and running both PowerShell scripts and console applications as Windows services.
- Strongly typed configuration via
appsettings.jsonandConfiguration.cs. - Improved logging with configurable log directory.
- New background services:
PSScriptBackgroundServicefor PowerShell script execution.ProcessBackgroundServicefor process management.
- Enhanced PowerShell script execution with signature validation and script unblocking.
- Improved process management with restart-on-failure logic.
- Added install/uninstall scripts (
Install.cmd,Uninstall.cmd) for service management (removed in v1.0.1). - Added comprehensive README with usage, configuration, and scheduling examples.
- MIT License included.
Breaking Changes
- Old solution, project, and service files removed.
- Configuration format and service naming conventions updated.
- Scheduling logic for console applications is not yet implemented (runs every 10 seconds).