Moved solutionFile assignment to after telemetry activity tracking and removed passing solutionFile as a telemetry property. This streamlines the activity initialization and improves code clarity.
Introduced SetSolutionPath to ActivityContext for consistent solution path updates. Refactored TelemetrySolutionInfoEnricher to use the new method and improved logic for resolving .abpsln files based on possible extensions.
Moved solution path lookup logic from TelemetryCliSessionProvider to ActivityContext via a new TryGetValue method, simplifying property access and reducing duplication.
Removed unused using directives in AbpCliCoreModule and NewCommand for better code clarity. Refactored AddPackageCommand to inline solution and project file retrieval. Enhanced TelemetrySolutionInfoEnricher to support '.slnx' files by mapping them to '.abpsln' if present.
Refactored telemetry logic to better handle and enrich solution path information, including moving TelemetryCliSessionProvider, updating activity tracking in commands, and enhancing TelemetrySolutionInfoEnricher to reliably find and set solution paths and IDs. Removed redundant service registrations and improved the order and conditions for telemetry activities.
Added ITelemetryService usage to CliService, NewCommand, and UpdateCommand to track command execution and error activities. This enables better monitoring and diagnostics for CLI operations by reporting activity names and relevant metadata to the telemetry system.
Added telemetry activity tracking to AddModule, AddPackage, Clean, and ListModules commands using ITelemetryService. Introduced TelemetryCliSessionProvider to enrich telemetry session data and updated service registration to remove the default TelemetrySessionInfoEnricher.
Introduced ITelemetryService to CleanCommand and now log an activity when the clean command is executed. This enables tracking usage of the clean command for internal telemetry purposes.
Added a handler for Console.CancelKeyPress to wait up to 10 seconds for the telemetryTask to complete, improving graceful shutdown of telemetry operations.
Registers a handler for AppDomain.ProcessExit to wait up to 10 seconds for the telemetry task to finish, improving reliability of telemetry data submission during application shutdown.
Introduced DefaultOnConfiguringAction and OnConfiguringActions in AbpDbContextOptions to allow configuration of actions to be executed during DbContext.OnConfiguring. Updated AbpDbContext to invoke these actions, enabling more flexible and modular configuration of DbContext options.
Replaces the use of processor ID with baseboard serial number when retrieving the unique device identifier on Windows. This change improves reliability and consistency of device identification.