Clarify error messages when no upgrades available

This commit is contained in:
Mario Limonciello 2019-12-09 10:21:20 -06:00 committed by Mario Limonciello
parent 3885789156
commit 7e4949c4f8
3 changed files with 42 additions and 28 deletions

View File

@ -3494,12 +3494,10 @@ fu_engine_get_releases_for_device (FuEngine *self, FuDevice *device, GError **er
/* only show devices that can be updated */
if (!fu_device_has_flag (device, FWUPD_DEVICE_FLAG_UPDATABLE)) {
g_set_error (error,
g_set_error_literal (error,
FWUPD_ERROR,
FWUPD_ERROR_NOT_SUPPORTED,
"ignoring %s [%s] as not updatable",
fu_device_get_name (device),
fu_device_get_id (device));
"is not updatable");
return NULL;
}
@ -3516,11 +3514,10 @@ fu_engine_get_releases_for_device (FuEngine *self, FuDevice *device, GError **er
if (components == NULL) {
if (g_error_matches (error_local, G_IO_ERROR, G_IO_ERROR_NOT_FOUND) ||
g_error_matches (error_local, G_IO_ERROR, G_IO_ERROR_INVALID_ARGUMENT)) {
g_set_error (error,
g_set_error_literal (error,
FWUPD_ERROR,
FWUPD_ERROR_NOTHING_TO_DO,
"No releases for %s",
fu_device_get_name (device));
"No releases found");
return NULL;
}
g_propagate_error (error, g_steal_pointer (&error_local));
@ -3551,13 +3548,13 @@ fu_engine_get_releases_for_device (FuEngine *self, FuDevice *device, GError **er
if (releases->len == 0) {
if (error_all != NULL) {
g_propagate_prefixed_error (error, g_steal_pointer (&error_all),
"No releases found for device: ");
"No releases found: ");
return NULL;
}
g_set_error (error,
FWUPD_ERROR,
FWUPD_ERROR_NOTHING_TO_DO,
"No releases found for device");
"No releases found");
return NULL;
}
return releases;
@ -3677,14 +3674,14 @@ fu_engine_get_downgrades (FuEngine *self, const gchar *device_id, GError **error
g_set_error (error,
FWUPD_ERROR,
FWUPD_ERROR_NOTHING_TO_DO,
"No downgrades for device, current is %s: %s",
"current version is %s: %s",
fu_device_get_version (device),
error_str->str);
} else {
g_set_error (error,
FWUPD_ERROR,
FWUPD_ERROR_NOTHING_TO_DO,
"No downgrades for device, current is %s",
"current version is %s",
fu_device_get_version (device));
}
return NULL;
@ -3770,11 +3767,10 @@ fu_engine_get_upgrades (FuEngine *self, const gchar *device_id, GError **error)
/* don't show upgrades again until we reboot */
if (fu_device_get_update_state (device) == FWUPD_UPDATE_STATE_NEEDS_REBOOT) {
g_set_error (error,
g_set_error_literal (error,
FWUPD_ERROR,
FWUPD_ERROR_NOTHING_TO_DO,
"No upgrades for %s: A reboot is pending",
fu_device_get_name (device));
"A reboot is pending");
return NULL;
}
@ -3826,16 +3822,14 @@ fu_engine_get_upgrades (FuEngine *self, const gchar *device_id, GError **error)
g_set_error (error,
FWUPD_ERROR,
FWUPD_ERROR_NOTHING_TO_DO,
"No upgrades for %s, current is %s: %s",
fu_device_get_name (device),
"current version is %s: %s",
fu_device_get_version (device),
error_str->str);
} else {
g_set_error (error,
FWUPD_ERROR,
FWUPD_ERROR_NOTHING_TO_DO,
"No upgrades for %s, current is %s",
fu_device_get_name (device),
"current version is %s",
fu_device_get_version (device));
}
return NULL;

View File

@ -325,6 +325,7 @@ fu_util_get_updates (FuUtilPrivate *priv, gchar **values, GError **error)
return FALSE;
for (guint i = 0; i < devices->len; i++) {
FwupdDevice *dev = g_ptr_array_index (devices, i);
g_autofree gchar *upgrade_str = NULL;
g_autoptr(GPtrArray) rels = NULL;
g_autoptr(GError) error_local = NULL;
GNode *child;
@ -340,7 +341,11 @@ fu_util_get_updates (FuUtilPrivate *priv, gchar **values, GError **error)
fwupd_device_get_id (dev),
&error_local);
if (rels == NULL) {
g_printerr ("%s\n", error_local->message);
/* TRANSLATORS: message letting the user know no device upgrade available
* %1 is the device name */
upgrade_str = g_strdup_printf (_("No upgrades for %s"),
fwupd_device_get_name (dev));
g_printerr ("%s: %s\n", upgrade_str, error_local->message);
continue;
}
child = g_node_append_data (root, dev);

View File

@ -1621,6 +1621,7 @@ fu_util_get_updates (FuUtilPrivate *priv, gchar **values, GError **error)
return FALSE;
for (guint i = 0; i < devices->len; i++) {
FwupdDevice *dev = g_ptr_array_index (devices, i);
g_autofree gchar *upgrade_str = NULL;
g_autoptr(GPtrArray) rels = NULL;
g_autoptr(GError) error_local = NULL;
GNode *child;
@ -1637,7 +1638,11 @@ fu_util_get_updates (FuUtilPrivate *priv, gchar **values, GError **error)
fwupd_device_get_id (dev),
NULL, &error_local);
if (rels == NULL) {
g_printerr ("%s\n", error_local->message);
/* TRANSLATORS: message letting the user know no device upgrade available
* %1 is the device name */
upgrade_str = g_strdup_printf (_("No upgrades for %s"),
fwupd_device_get_name (dev));
g_printerr ("%s: %s\n", upgrade_str, error_local->message);
continue;
}
child = g_node_append_data (root, dev);
@ -1831,7 +1836,11 @@ fu_util_update_all (FuUtilPrivate *priv, GError **error)
fwupd_device_get_id (dev),
NULL, &error_local);
if (rels == NULL) {
g_printerr ("%s\n", error_local->message);
/* TRANSLATORS: message letting the user know no device upgrade available
* %1 is the device name */
upgrade_str = g_strdup_printf (_("No upgrades for %s"),
fwupd_device_get_name (dev));
g_printerr ("%s: %s\n", upgrade_str, error_local->message);
continue;
}
rel = g_ptr_array_index (rels, 0);
@ -2024,8 +2033,14 @@ fu_util_downgrade (FuUtilPrivate *priv, gchar **values, GError **error)
rels = fwupd_client_get_downgrades (priv->client,
fwupd_device_get_id (dev),
NULL, error);
if (rels == NULL)
if (rels == NULL) {
/* TRANSLATORS: message letting the user know no device downgrade available
* %1 is the device name */
g_autofree gchar *downgrade_str = g_strdup_printf (_("No downgrades for %s"),
fwupd_device_get_name (dev));
g_prefix_error (error, "%s: ", downgrade_str);
return FALSE;
}
/* get the chosen release */
rel = fu_util_prompt_for_release (priv, rels, error);