This fixes issue #417 where autoupdate installer files were not deleted on macOS, leading to accumulation of old installers. Key changes: - Store update files in application-specific directory - Clear update files directory on every app launch Other supporting changes: - Refactor file system operations to be more testable and reusable - Improve separation of concerns in directory management - Enhance dependency injection for auto-update logic - Fix async completion to support `await` operations - Add additional logging and revise some log messages during updates
14 lines
412 B
TypeScript
14 lines
412 B
TypeScript
import { exec } from 'node:child_process';
|
|
import { NodeElectronFileSystemOperations } from '@/infrastructure/FileSystem/NodeElectronFileSystemOperations';
|
|
import type { SystemOperations } from './SystemOperations';
|
|
|
|
/**
|
|
* Thin wrapper for Node and Electron APIs.
|
|
*/
|
|
export const NodeElectronSystemOperations: SystemOperations = {
|
|
fileSystem: NodeElectronFileSystemOperations,
|
|
command: {
|
|
exec,
|
|
},
|
|
};
|