fwupd/libfwupd
Richard Hughes 19abf996c7 Allow the daemon to request interactive action from the end user
The "return error and hope the client resubmits the firmware again"
pattern is clunky. There are two plugins doing this now, and about to
be one more.

This adds FwupdRequest which provides a structured way of asking the
user to perform an action, e.g. to replug the device or to press a
special key or button.

This replaces much of the UpdateMessage and UpdateImage API although
it is still used internally. Clients capable of processing the new
DeviceRequest signal should add REQUESTS to their feature flags.

Also, this allows us go back to the old meaning of _NEEDS_BOOTLOADER,
which was "needs rebooting into a bootloader mode" rather than the
slightly weird "user needs to do something and resubmit request".
2021-07-14 17:03:50 +01:00
..
fwupd-client-private.h trivial: Fix a warning when compiling on Windows 2021-05-18 13:08:04 +01:00
fwupd-client-sync.c Allow building the documentation with gi-docgen and gtk-doc 2021-06-09 22:21:53 +01:00
fwupd-client-sync.h trivial: Style fixes to lots of gtk-doc 2021-05-10 14:35:10 +01:00
fwupd-client.c Allow the daemon to request interactive action from the end user 2021-07-14 17:03:50 +01:00
fwupd-client.h Allow the daemon to request interactive action from the end user 2021-07-14 17:03:50 +01:00
fwupd-common-private.h trivial: promote fwupd_checksum_format_for_display into ABI 2021-06-16 08:37:34 +01:00
fwupd-common.c Allow building the documentation with gi-docgen and gtk-doc 2021-06-09 22:21:53 +01:00
fwupd-common.h trivial: promote fwupd_checksum_format_for_display into ABI 2021-06-16 08:37:34 +01:00
fwupd-context-test.c trivial: Fix warning from clang about unused variable 2021-02-08 12:53:32 +00:00
fwupd-deprecated.h trivial: Fix missing G_BEGIN_DECLS's from public includes 2019-02-10 08:59:07 +00:00
fwupd-device-private.h trivial: Convert FwupdDevice to use @self 2021-05-10 14:35:10 +01:00
fwupd-device.c Allow the client to watch for more property changes 2021-07-13 14:56:01 +01:00
fwupd-device.h Export the build timestamp from plugins 2021-07-08 16:31:07 +01:00
fwupd-enums-private.h Allow the daemon to request interactive action from the end user 2021-07-14 17:03:50 +01:00
fwupd-enums.c Allow the daemon to request interactive action from the end user 2021-07-14 17:03:50 +01:00
fwupd-enums.h Allow the daemon to request interactive action from the end user 2021-07-14 17:03:50 +01:00
fwupd-error.c trivial: Fix up some of the developer docs 2021-06-11 09:39:03 +01:00
fwupd-error.h libfwupd: Add a new error type for user action needed 2019-11-01 14:31:03 +00:00
fwupd-plugin-private.h trivial: Convert FwupdPlugin to use @self 2021-05-10 14:35:10 +01:00
fwupd-plugin.c trivial: Fix up some of the developer docs 2021-06-11 09:39:03 +01:00
fwupd-plugin.h trivial: Convert FwupdPlugin to use @self 2021-05-10 14:35:10 +01:00
fwupd-release-private.h trivial: Convert FwupdRelease to use @self 2021-05-10 14:35:10 +01:00
fwupd-release.c trivial: Fix up some of the developer docs 2021-06-11 09:39:03 +01:00
fwupd-release.h trivial: Convert FwupdRelease to use @self 2021-05-10 14:35:10 +01:00
fwupd-remote-private.h Add fwupd_remote_setup() to split out the 'parsing' from the 'validation' 2021-05-14 06:02:56 +01:00
fwupd-remote.c trivial: Fix up some of the developer docs 2021-06-11 09:39:03 +01:00
fwupd-remote.h Only include the start year in the copyright header 2021-01-07 14:48:16 +00:00
fwupd-request-private.h Allow the daemon to request interactive action from the end user 2021-07-14 17:03:50 +01:00
fwupd-request.c Allow the daemon to request interactive action from the end user 2021-07-14 17:03:50 +01:00
fwupd-request.h Allow the daemon to request interactive action from the end user 2021-07-14 17:03:50 +01:00
fwupd-security-attr-private.h trivial: Codespell fixes 2021-06-15 21:45:15 +01:00
fwupd-security-attr.c trivial: Fix up some of the developer docs 2021-06-11 09:39:03 +01:00
fwupd-security-attr.h libfwupd: Do not export the HSI AppStream IDs 2020-10-08 16:36:56 +01:00
fwupd-self-test.c Allow the daemon to request interactive action from the end user 2021-07-14 17:03:50 +01:00
fwupd-thread-test.c trivial: Fix warning from clang about unused variable 2021-02-08 12:53:32 +00:00
fwupd-version.c Check the versions of libfwupd and libfwupdplugin at startup 2021-04-30 15:00:04 +01:00
fwupd-version.h.in Allow building the documentation with gi-docgen and gtk-doc 2021-06-09 22:21:53 +01:00
fwupd.h Allow the daemon to request interactive action from the end user 2021-07-14 17:03:50 +01:00
fwupd.map Allow the daemon to request interactive action from the end user 2021-07-14 17:03:50 +01:00
meson.build Allow the daemon to request interactive action from the end user 2021-07-14 17:03:50 +01:00
README.md Support more than one protocol for a given device 2021-03-01 16:14:36 +00:00

Planned API/ABI changes for next release

  • Typedef FwupdFeatureFlags to guint64 so it's the same size on all platforms
  • Remove the soup-session fallback property in FwupdClient.
  • Remove fwupd_device_set_vendor_id() and fwupd_device_get_vendor_id()
  • Remove the deprecated flags like FWUPD_DEVICE_FLAG_MD_SET_ICON
  • Remove fwupd_release_get_uri() and fwupd_release_set_uri()
  • Rename fwupd_client_install_release2_async() to fwupd_client_install_release_async()
  • Remove fwupd_device_set_protocol() and fwupd_device_get_protocol()

Migration from Version 0.9.x

  • Rename FU_DEVICE_FLAG -> FWUPD_DEVICE_FLAG
  • Rename FWUPD_DEVICE_FLAG_ALLOW_ONLINE -> FWUPD_DEVICE_FLAG_UPDATABLE
  • Rename FWUPD_DEVICE_FLAG_ALLOW_OFFLINE -> FWUPD_DEVICE_FLAG_ONLY_OFFLINE
  • Rename fwupd_client_get_devices_simple -> fwupd_client_get_devices
  • Rename fwupd_client_get_details_local -> fwupd_client_get_details
  • Rename fwupd_client_update_metadata_with_id -> fwupd_client_update_metadata
  • Rename fwupd_remote_get_uri -> fwupd_remote_get_metadata_uri
  • Rename fwupd_remote_get_uri_asc -> fwupd_remote_get_metadata_uri_sig
  • Rename fwupd_remote_build_uri -> fwupd_remote_build_firmware_uri
  • Switch FWUPD_RESULT_KEY_DEVICE_CHECKSUM_KIND to fwupd_checksum_guess_kind()
  • Rename fwupd_result_update_() to fwupd_release_()
  • Rename fwupd_result_() to fwupd_device_()
  • Convert FwupdResult to FwupdDevice in all callbacks
  • Rename fwupd_device_provider -> fwupd_device_plugin
  • Convert hash types sa{sv} -> a{sv}
  • Convert fwupd_client_get_updates() -> fwupd_client_get_upgrades()