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

View File

@ -325,6 +325,7 @@ fu_util_get_updates (FuUtilPrivate *priv, gchar **values, GError **error)
return FALSE; return FALSE;
for (guint i = 0; i < devices->len; i++) { for (guint i = 0; i < devices->len; i++) {
FwupdDevice *dev = g_ptr_array_index (devices, i); FwupdDevice *dev = g_ptr_array_index (devices, i);
g_autofree gchar *upgrade_str = NULL;
g_autoptr(GPtrArray) rels = NULL; g_autoptr(GPtrArray) rels = NULL;
g_autoptr(GError) error_local = NULL; g_autoptr(GError) error_local = NULL;
GNode *child; GNode *child;
@ -340,7 +341,11 @@ fu_util_get_updates (FuUtilPrivate *priv, gchar **values, GError **error)
fwupd_device_get_id (dev), fwupd_device_get_id (dev),
&error_local); &error_local);
if (rels == NULL) { 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; continue;
} }
child = g_node_append_data (root, dev); 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; return FALSE;
for (guint i = 0; i < devices->len; i++) { for (guint i = 0; i < devices->len; i++) {
FwupdDevice *dev = g_ptr_array_index (devices, i); FwupdDevice *dev = g_ptr_array_index (devices, i);
g_autofree gchar *upgrade_str = NULL;
g_autoptr(GPtrArray) rels = NULL; g_autoptr(GPtrArray) rels = NULL;
g_autoptr(GError) error_local = NULL; g_autoptr(GError) error_local = NULL;
GNode *child; GNode *child;
@ -1637,7 +1638,11 @@ fu_util_get_updates (FuUtilPrivate *priv, gchar **values, GError **error)
fwupd_device_get_id (dev), fwupd_device_get_id (dev),
NULL, &error_local); NULL, &error_local);
if (rels == NULL) { 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; continue;
} }
child = g_node_append_data (root, dev); child = g_node_append_data (root, dev);
@ -1831,7 +1836,11 @@ fu_util_update_all (FuUtilPrivate *priv, GError **error)
fwupd_device_get_id (dev), fwupd_device_get_id (dev),
NULL, &error_local); NULL, &error_local);
if (rels == NULL) { 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; continue;
} }
rel = g_ptr_array_index (rels, 0); 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, rels = fwupd_client_get_downgrades (priv->client,
fwupd_device_get_id (dev), fwupd_device_get_id (dev),
NULL, error); 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; return FALSE;
}
/* get the chosen release */ /* get the chosen release */
rel = fu_util_prompt_for_release (priv, rels, error); rel = fu_util_prompt_for_release (priv, rels, error);