mirror of
https://github.com/balena-io/etcher.git
synced 2025-04-20 21:37:17 +00:00

Recently, we've added support for a `recommendedDriveSize` property in the `manifest.json` of extended image archives, which the image can use to warn the user that his drive, even if it is large enough to hold the image, might not be large enough to deliver a good usage experience later on. When this property is found, the GUI reacts in the following ways: - Drives that are large enough to hold the image but don't meet the recommended drive size are tagged with a warning label in the drive selector component. - Attempting to select a "labeled" drive opens a warning modal asking for user confirmation. - Drives that don't meet the recommended drive size declared in the image won't get auto-selected. - If there is a drive already selected, and the user picks an image whose recommended drive size is greater than the drive size, the currently selected drive gets auto-deselected. Code-wise, the following significant changes have been introduced: - Implement `SelectionStateModel.getImageRecommendedDriveSize()`. - Implement `SelectionStateModel.isDriveSizeRecommended()`. - Extract `WarningModal` out of the settings page (the dangerous setting modal). Change-Type: minor Changelog-Entry: Allow images to declare a recommended minimum drive size. See: https://github.com/resin-io-modules/etcher-image-stream/pull/36 Fixes: https://github.com/resin-io/etcher/issues/698 Signed-off-by: Juan Cruz Viotti <jviotti@openmailbox.org>