.\" -*- mode: troff; coding: utf-8 -*- .\" Automatically generated by Pod::Man 5.01 (Pod::Simple 3.43) .\" .\" Standard preamble: .\" ======================================================================== .de Sp \" Vertical space (when we can't use .PP) .if t .sp .5v .if n .sp .. .de Vb \" Begin verbatim text .ft CW .nf .ne \\$1 .. .de Ve \" End verbatim text .ft R .fi .. .\" \*(C` and \*(C' are quotes in nroff, nothing in troff, for use with C<>. .ie n \{\ . ds C` "" . ds C' "" 'br\} .el\{\ . ds C` . ds C' 'br\} .\" .\" Escape single quotes in literal strings from groff's Unicode transform. .ie \n(.g .ds Aq \(aq .el .ds Aq ' .\" .\" If the F register is >0, we'll generate index entries on stderr for .\" titles (.TH), headers (.SH), subsections (.SS), items (.Ip), and index .\" entries marked with X<> in POD. Of course, you'll have to process the .\" output yourself in some meaningful fashion. .\" .\" Avoid warning from groff about undefined register 'F'. .de IX .. .nr rF 0 .if \n(.g .if rF .nr rF 1 .if (\n(rF:(\n(.g==0)) \{\ . if \nF \{\ . de IX . tm Index:\\$1\t\\n%\t"\\$2" .. . if !\nF==2 \{\ . nr % 0 . nr F 2 . \} . \} .\} .rr rF .\" ======================================================================== .\" .IX Title "Firefox::Marionette::UpdateStatus 3pm" .TH Firefox::Marionette::UpdateStatus 3pm 2024-05-15 "perl v5.38.2" "User Contributed Perl Documentation" .\" For nroff, turn off justification. Always turn off hyphenation; it makes .\" way too many mistakes in technical documents. .if n .ad l .nh .SH NAME Firefox::Marionette::UpdateStatus \- Represents the resulting status of an Firefox update .SH VERSION .IX Header "VERSION" Version 1.57 .SH SYNOPSIS .IX Header "SYNOPSIS" .Vb 2 \& use Firefox::Marionette(); \& use v5.10; \& \& my $firefox = Firefox::Marionette\->new(); \& my $status = $firefox\->update(); \& while($status\->successful()) { \& $status = $firefox\->update(); \& } \& say "Firefox has been upgraded to " . $status\->display_version(); .Ve .SH DESCRIPTION .IX Header "DESCRIPTION" This module handles the implementation of the status of a Firefox update using the Marionette protocol .SH SUBROUTINES/METHODS .IX Header "SUBROUTINES/METHODS" .SS new .IX Subsection "new" accepts a hash as a parameter. Allowed keys are below; .IP \(bu 4 app_version \- application version of this update. .IP \(bu 4 build_id \- build id of this update. Used to determine a particular build, down to the hour, minute and second of its creation. This allows the system to differentiate between several nightly builds with the same |version|. .IP \(bu 4 channel \- channel used to retrieve this update from the Update Service. .IP \(bu 4 details_url \- URI offering details about the content of this update. This page is intended to summarise the differences between this update and the previous, which also links to the release notes. .IP \(bu 4 display_version \- string to display in the user interface for the version. If you want a real version number use app_version. .IP \(bu 4 elevation_failure \- has an elevation failure has been encountered for this update. .IP \(bu 4 error_code \- numeric error code that conveys additional information about the state of a failed update. If the update is not in the "failed" state the value is zero. .IP \(bu 4 install_date \- when the update was installed. .IP \(bu 4 is_complete_update \- is the update a complete replacement of the user's existing installation or a patch representing the difference between the new version and the previous version. .IP \(bu 4 name \- name of the update, which should look like " " .IP \(bu 4 number_of_updates \- the number of updates available. .IP \(bu 4 patch_count \- number of patches supplied by this update. .IP \(bu 4 previous_app_version \- application version prior to the application being updated. .IP \(bu 4 prompt_wait_time \- allows overriding the default amount of time in seconds before prompting the user to apply an update. If not specified, the value of app.update.promptWaitTime will be used. .IP \(bu 4 selected_patch \- currently selected patch for this update. .IP \(bu 4 service_url \- the Update Service that supplied this update. .IP \(bu 4 status_text \- message associated with this update, if any. .IP \(bu 4 type \- either 'minor', 'partial', which means a binary difference between two application versions or 'complete' which is a complete patch containing all of the replacement files to update to the new version .IP \(bu 4 unsupported \- is the update no longer supported on this system. .IP \(bu 4 update_state \- state of the selected patch; .RS 4 .IP "+ downloading \- the update is being downloaded." 4 .IX Item "+ downloading - the update is being downloaded." .PD 0 .IP "+ pending \- the update is ready to be applied." 4 .IX Item "+ pending - the update is ready to be applied." .IP "+ pending-service \- the update is ready to be applied with the service." 4 .IX Item "+ pending-service - the update is ready to be applied with the service." .IP "+ pending-elevate \- the update is ready to be applied but requires elevation." 4 .IX Item "+ pending-elevate - the update is ready to be applied but requires elevation." .IP "+ applying \- the update is being applied." 4 .IX Item "+ applying - the update is being applied." .IP "+ applied \- the update is ready to be switched to." 4 .IX Item "+ applied - the update is ready to be switched to." .IP "+ applied-os \- the update is OS update and to be installed." 4 .IX Item "+ applied-os - the update is OS update and to be installed." .IP "+ applied-service \- the update is ready to be switched to with the service." 4 .IX Item "+ applied-service - the update is ready to be switched to with the service." .IP "+ succeeded \- the update was successfully applied." 4 .IX Item "+ succeeded - the update was successfully applied." .IP "+ download-failed \- the update failed to be downloaded." 4 .IX Item "+ download-failed - the update failed to be downloaded." .IP "+ failed \- the update failed to be applied." 4 .IX Item "+ failed - the update failed to be applied." .RE .RS 4 .RE .IP \(bu 4 .PD update_status_code \- a code describing the state of the patch. .PP This method returns a new update status object. .SS app_version .IX Subsection "app_version" returns application version of this update. .SS build_id .IX Subsection "build_id" returns the build id of this update. Used to determine a particular build, down to the hour, minute and second of its creation. This allows the system to differentiate between several nightly builds with the same |version|. .SS channel .IX Subsection "channel" returns the channel used to retrieve this update from the Update Service. .SS details_url .IX Subsection "details_url" returns a URI offering details about the content of this update. This page is intended to summarise the differences between this update and the previous, which also links to the release notes. .SS display_version .IX Subsection "display_version" returns a string to display in the user interface for the version. If you want a real version number use app_version. .SS elevation_failure .IX Subsection "elevation_failure" returns a boolean to indicate if an elevation failure has been encountered for this update. .SS error_code .IX Subsection "error_code" returns a numeric error code that conveys additional information about the state of a failed update. If the update is not in the "failed" state the value is zero. .SS install_date .IX Subsection "install_date" returns when the update was installed. .SS is_complete_update .IX Subsection "is_complete_update" returns a boolean to indicate if the update is a complete replacement of the user's existing installation or a patch representing the difference between the new version and the previous version. .SS name .IX Subsection "name" returns name of the update, which should look like " " .SS number_of_updates .IX Subsection "number_of_updates" returns the number of updates available (seems to always be 1). .SS patch_count .IX Subsection "patch_count" returns the number of patches supplied by this update. .SS previous_app_version .IX Subsection "previous_app_version" returns application version prior to the application being updated. .SS prompt_wait_time .IX Subsection "prompt_wait_time" returns the amount of time in seconds before prompting the user to apply an update. If not specified, the value of app.update.promptWaitTime will be used. .SS selected_patch .IX Subsection "selected_patch" returns the currently selected patch for this update. .SS service_url .IX Subsection "service_url" returns a URI for the Update Service that supplied this update. .SS status_text .IX Subsection "status_text" returns the message associated with this update, if any. .SS successful .IX Subsection "successful" returns a boolean to indicate if an update has been successfully applied. .SS type .IX Subsection "type" returns either 'minor', 'partial', which means a binary difference between two application versions or 'complete' which is a complete patch containing all of the replacement files to update to the new version .SS unsupported .IX Subsection "unsupported" returns a boolean to show if the update is supported on this system. .SS update_state .IX Subsection "update_state" returns the state of the selected patch; .IP "+ downloading \- the update is being downloaded." 4 .IX Item "+ downloading - the update is being downloaded." .PD 0 .IP "+ pending \- the update is ready to be applied." 4 .IX Item "+ pending - the update is ready to be applied." .IP "+ pending-service \- the update is ready to be applied with the service." 4 .IX Item "+ pending-service - the update is ready to be applied with the service." .IP "+ pending-elevate \- the update is ready to be applied but requires elevation." 4 .IX Item "+ pending-elevate - the update is ready to be applied but requires elevation." .IP "+ applying \- the update is being applied." 4 .IX Item "+ applying - the update is being applied." .IP "+ applied \- the update is ready to be switched to." 4 .IX Item "+ applied - the update is ready to be switched to." .IP "+ applied-os \- the update is OS update and to be installed." 4 .IX Item "+ applied-os - the update is OS update and to be installed." .IP "+ applied-service \- the update is ready to be switched to with the service." 4 .IX Item "+ applied-service - the update is ready to be switched to with the service." .IP "+ succeeded \- the update was successfully applied." 4 .IX Item "+ succeeded - the update was successfully applied." .IP "+ download-failed \- the update failed to be downloaded." 4 .IX Item "+ download-failed - the update failed to be downloaded." .IP "+ failed \- the update failed to be applied." 4 .IX Item "+ failed - the update failed to be applied." .PD .PP The most usual state is "pending" .SS update_status_code .IX Subsection "update_status_code" returns a code describing the state of the patch. .SH DIAGNOSTICS .IX Header "DIAGNOSTICS" None. .SH "CONFIGURATION AND ENVIRONMENT" .IX Header "CONFIGURATION AND ENVIRONMENT" Firefox::Marionette::UpdateStatus requires no configuration files or environment variables. .SH DEPENDENCIES .IX Header "DEPENDENCIES" None. .SH INCOMPATIBILITIES .IX Header "INCOMPATIBILITIES" None reported. .SH "BUGS AND LIMITATIONS" .IX Header "BUGS AND LIMITATIONS" To report a bug, or view the current list of bugs, please visit .SH AUTHOR .IX Header "AUTHOR" David Dick \f(CW\*(C`\*(C'\fR .SH "LICENSE AND COPYRIGHT" .IX Header "LICENSE AND COPYRIGHT" Copyright (c) 2024, David Dick \f(CW\*(C`\*(C'\fR. All rights reserved. .PP This module is free software; you can redistribute it and/or modify it under the same terms as Perl itself. See "perlartistic" in perlartistic. .SH "DISCLAIMER OF WARRANTY" .IX Header "DISCLAIMER OF WARRANTY" BECAUSE THIS SOFTWARE IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY FOR THE SOFTWARE, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES PROVIDE THE SOFTWARE "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE SOFTWARE IS WITH YOU. SHOULD THE SOFTWARE PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING, REPAIR, OR CORRECTION. .PP IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR REDISTRIBUTE THE SOFTWARE AS PERMITTED BY THE ABOVE LICENCE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR INABILITY TO USE THE SOFTWARE (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A FAILURE OF THE SOFTWARE TO OPERATE WITH ANY OTHER SOFTWARE), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES.