Revision history for Firefox-Marionette

1.63  Mon Mar 10 07:59 2025
     - Adding CLEAR_MESSAGING_LAYER_SECURITY_STATE method
     - geo method returns undef on failure instead of an exception
     - Remove ChromeUtils.import usage
     - Fixes for DurationFormat changes
     - Documentation/test suite fixes

1.62  Sun Nov 03 17:45 2024
     - Adding support for socks scheme in proxy variables
     - Test suite fixes

1.61  Sat Oct 19 08:28 2024
     - Removed CLEAR_PASSWORDS and CLEAR_SESSION_HISTORY methods
     - Added resolve_override method
     - Fixes for refactoring bookmarks API

1.60  Sun Aug 04 07:27 2024
     - Added CLEAR_JS_CACHE and resolve methods
     - Stealth support for Object.getPrototypeOf($class).$method
     - Various test suite/coverage fixes

1.59  Sun Jun 30 20:10 2024
     - Adding SSH_CONNECTION and EUID into syslog for ssh-auth-cmd-marionette
     - Changed CLEAR_PERMISSIONS, added CLEAR_SHUTDOWN_EXCEPTIONS and CLEAR_SITE_PERMISSIONS methods
     - Allow addons with profile names.  Thanks to prozorecJP for the bug report in GH#48
     - cygwin/darwin fixes for ssh-auth-cmd-marionette
     - Various test suite/coverage fixes

1.58  Sat Jun 15 21:01 2024
     - Fixes to sftp regexs in ssh-auth-cmd-marionette
     - Adding initial timezone work
     - Fixes to stealth module
     - Adding CLEAR_STORAGE_PERMISSIONS and CLEAR_COOKIES_AND_SITE_DATA methods

1.57  Mon May 06 19:45 2024
     - Setting minimum perl version to 5.10

1.56  Sun May 05 19:16 2024
     - Using mdn/browser-compat-data for stealth
     - Bookmark fixes for firefox changes
     - Documentation fix for debian lintian

1.55  Sat Apr 06 12:22 2024
     - Fixing 32 bit architecture test regex for x86

1.54  Sun Mar 31 17:43 2024
     - Adding arch, set_javascript methods
     - Improvements for agent method
     - Skipping some tests on 32 bit architectures
     - Enabling Beacon API
     - Documentation and test suite fixes

1.53  Sun Mar 03 16:33 2024
     - Adding CLEAR_BOUNCE_TRACKING_PROTECTION_STATE
     - Changes for agent method
     - Documentation and test suite fixes

1.52  Mon Feb 03 21:30 2024
     - Adding stealth attribute
     - Adding CLEAR_FINGERPRINTING_PROTECTION_STATE
     - Supporting appVersion and platform in agent method
     - Documentation and test suite fixes for older perls

1.51  Mon Jan 22 21:30 2024
     - Adding fixes for older perls.

1.50  Sun Jan 21 18:06 2024
     - Adding agent, languages and geo methods
     - Allowing json method to accept a URL as a parameter
     - Various bug fixes, including GH#27, GH#29, GH#32, GH#33. Thanks to sergio and Pelasgus123.

1.49  Sat Nov 18 12:10 2023
     - Fixing a hang for Windows 7 in GH#26.  Thanks to twata1.

1.48  Mon Nov 13 20:51 2023
     - Adding extra Cache constants
     - Fixing github actions for OS X

1.47  Sun Nov 12 22:25 2023
     - Adding WebFrame and WebWindow support
     - Now using parent instead of base for inheritance

1.46  Sat Oct 14 18:56 2023
     - Documentation and test suite fixes

1.45  Fri Oct 05 21:43 2023
     - Adding WebAuthn methods
     - Documentation and test suite fixes

1.44  Sun Sep 03 18:04 2023
     - Adding download method for directly downloading a URL
     - Allowing a list of proxies to be supplied to new method
     - Allow the all_proxy environment variable to specify an https url
     - Documentation and test suite fixes

1.43  Sat Aug 05 15:13 2023
     - Documentation fixes

1.42  Sat Aug 05 08:34 2023
     - Adding the proxy parameter to the new method
     - Fixes to ssh handling
     - Documentation and test suite fixes
     - Allowing a scalar filehandle to contain a certificate for the new method

1.41  Sun Jul 23 17:12 2023
     - Adding support for finding elements in a shadow DOM

1.40  Wed Jul 19 04:14 2023
     - Documentation and test suite fixes

1.39  Tue Jul 18 18:35 2023
     - Adding bookmark support
     - Adding tls parameter to Proxy->new method
     - Adding aria_label and aria_role methods
     - Documentation and test suite fixes

1.38  Sun May 28 06:57 2023
     - Fixing ssh-auth-cmd-marionette for FreeBSD in GH#24.  Thanks to prozorecJP
     - Adding cache_keys, check_cache_key and clear_cache methods
     - Renaming download method to downloaded
     - Test coverage improvements and related fixes

1.37  Sun Apr 30 19:12 2023
     - Another test suite fix

1.36  Sun Apr 30 15:59 2023
     - Fixes to cope with Firefox 112 capabilities changes.  Thanks to toreau
     - Documentation and test suite fixes

1.35  Sat Jan 21 21:04 2023
     - Documentation and test suite fixes

1.34  Fri Dec 30 12:52 2022
     - Adding percentage_visible, displays and resize methods
     - Documentation and test suite fixes

1.33  Sun Nov 27 21:38 2022
     - Improving cross platform support
     - Forcing no agent forwarding for ssh
     - Trying to use the DISPLAY variable to detect X11 Forwarding being disabled

1.32  Tue Nov 08 19:42 2022
     - Win32 test suite fixes

1.31  Mon Nov 07 20:43 2022
     - Fixing taint test suite failures in github actions 

1.30  Mon Nov 07 16:26 2022
     - Fixing test suite for FreeBSD by adding /usr/local/bin to PATH

1.29  Sun Nov 06 15:55 2022
     - Adding wheel, scroll, is_trusted, uname method
     - Adding support for remotely opening profiles by name
     - Adding --issuer-organization, --trusted-only and --profile-name options to ./ca-bundle-for-firefox
     - Hiding bookmarks toolbar

1.28  Mon Jun 13 11:54 2022
     - Adding ./setup-for-firefox-marionette-build.sh to remove the snap firefox for Ubuntu 22.04 TLS.

1.27  Sun May 08 21:38 2022
     - Fixing missing META information

1.26  Sun May 01 06:31 2022
     - Adding support for about:config prefs.js dynamic changes

1.25  Mon Apr 25 09:32 2022
     - Adding X11 Forwarding and support for ssh jump hosts
     - Reduce network and disk load during 'make test'
     - Improving test suite (coverage now > 90%)

1.24  Fri Apr  8 19:32 2022
     - Fixes for CPAN Testers results
     - Adding visible support for remote Firefox instances on linux (via xvfb-run)
     - Test suite changes for darwin

1.23  Sat Apr  2 21:14 2022
     - Fixes to tests, cygwin, Win32 support
     - Adding documentation/tests for WebGL
     - Improvements to ssh-auth-cmd-marionette
     - Parameter cleanup for new browser versions
     - Adding logins_from_xml method, --show-next to check-firefox-certificate-authorities

1.22  Sat Jan 29 15:49 2022
     - Fixes to cygwin/Win32 support

1.21  Sat Jan 29 10:43 2022
     - Fixes to cygwin/Win32 support, test suite, startup time, script/async_script methods

1.20  Mon Jan 24 19:55 2022
     - Improving documentation

1.19  Sun Jan 23 07:24 2022
     - Fixing MANIFEST file

1.18  Sun Jan 23 07:09 2022
     - Adding the shadow_root, shadowy, logins_from_csv and logins_from_zip methods
     - Change to allow directly returning Firefox::Marionette::Element elements from script calls
     - Clear user and password fields before typing in them for the fill_login method
     - Adding page_ranges parameter for pdf method
     - Adding 1Password support for firefox-passwords
     - Adding --check-only support to firefox-passwords when importing passwords

1.17  Mon Jan  3 10:30 2022
     - Fixes for tmp directory cleanups for Firefox::Marionette objects when defined as globals.  Thanks to eserte.
     - Documentation for firefox workaround for downloading via the go method.  Thanks to aluaces.
     - Adding the debug method
     - Fixes to image/links objects
     - firefox-passwords can now just print the password (with --password) option

1.16  Sun Oct 31 17:46 2021
     - Fixes to update for Firefox 94. Thanks to prozorecJP.
     - Small fixes for Win32 CPAN Tester failures.

1.15  Sun Oct 31 17:46 2021
     - Updates for Firefox 94

1.14  Wed Oct 27 20:45 2021
     - Improving links method to return a Links object
     - Adding images method
     - Improving inheritance support with Scalar::Util

1.13  Sun Oct 17 20:45 2021
     - Adding devtools, kiosk parameters to the new method
     - Adding links method
     - more debug for check-firefox-certificate-authorities

1.12  Sat Aug  7 09:30 2021
     - Fixing application.ini support
     - diag improvements for tests
     - small changes to update method.

1.11  Sat Jul 31 08:15:00 2021
     - Improving support for update method.
     - Allow firefox-passwords to modify passwords
     - Changes to mouse_move implementation

1.10  Sun Jul 11 08:15:00 2021
     - Fixing MANIFEST to include UpdateStatus.pm

1.09  Sun Jul 11 08:00:00 2021
     - Adding update/restart methods to allow Firefox patching.
     - Improving sub-classing support and Waterfox support.
     - Adding check-firefox-certificate-authorities
     - Fixes for using profile in GH#10.  Thanks to prozorecJP.
     - Fixes to EXE_FILES in GH#11.  Thanks to bokutin.

1.08  Fri Jun 18 21:00:00 2021
     - Fixes to tests after HTML changes in metacpan.org and CPAN Tester failures

1.07  Sat Jun 12 21:38:00 2021
     - Adding support for the Firefox Password Manager
     - Fixes to tests for Firefox 89.

1.06  Sat May 22 17:14:00 2021
     - Adding support for the Firefox certificate database
     - Fixes to loading profiles in GH#8. Thanks to stuart-little.
     - Increasing default window size to allow older firefoxes to pass test suite
     - Adding perform/release methods for fine grained control of user input in GH#9.  Thanks to stuart-little.

1.05  Thu May  6 22:15:00 2021
     - Fixing UTF-8 handling for strip/json methods.

1.04  Wed May  5 06:42:00 2021
     - Fixing bugs GH#2 to GH#6.  Thanks to eserte.
     - Adding xvfb_display and xvfb_authority methods
     - Adding has_* methods
     - Improving documentation
     - Replacing xvfb with xvfb_pid method (xvfb method is deprecated)

1.03  Sat Apr 24 10:38:00 2021
     - Cleanups to Makefile including github changes.
     - Changes for CPAN Testers in test suite

1.02  Thu Apr 22 19:48:00 2021
     - Fixes to tests for Firefox 88.
     - Adjustments for github issue tracking.

1.01  Wed Jan 20 18:47:00 2021
     - Fixes to Makefile.PL for Ubuntu to fix GH#1.  Thanks to rai-gaurav.
     - Fixes to add_header for Firefox 84.0.1
     - Improving documentation

1.00  Sat Dec  5 21:00:00 2020
     - Added README.md
     - Added github reference
     - Adding add_header and delete_header methods.
     - Adding add_site_header and delete_site_header methods.
     - Adding application.ini support to fix RT#133427.

0.99  Sat Oct 10 08:22:00 2020
     - Correcting searching Path for firefox on Win32/cygwin.
     - Adding support for 32 bit Firefox on Win64.
     - Adding some support for other gecko based browsers, adding support for Firefox 80.
     - Reworked ssh support, added nightly, developer keys to new method, added same_site support for cookies.

0.98  Tue Apr 14 07:27:00 2020
     - Additions to chatty option.

0.97  Tue Apr 14 07:01:00 2020
     - Adding reconnect parameter to new, private parameter to new_window.

0.96  Mon Mar  9 18:14:00 2020
     - Improved cleanups and added chatty/seer options to new method.

0.95  Thu Feb 27 08:56:00 2020
     - Increasing PDF::API2 requirement, moving har testing into RELEASE_TESTING only.

0.94  Tue Feb 25 17:09:00 2020
     - Fix a profile bug preventing remote downloads.

0.93  Sun Feb 23 20:22:00 2020
     - Allow install method to package source code directories.

0.92  Thu Jan 28 06:44:00 2020
     - Documentation fixes.

0.91  Tue Jan 28 22:06:00 2020
     - Conditionally clearing HOME environment variable to address RT#131304.
     - Adding to default profile.
     - Initial support for Print command

0.90  Sat Jan 18 15:26:00 2020
     - Clear HOME environment variable for tests in an attempt to fix RT#131304.

0.89  Wed Dec 25 07:01:00 2019
     - Fixing test suite for Perl 5.8.

0.88  Tue Dec 24 17:08:00 2019
     - Correcting exit status for parent process. Thanks to Tomohiro Hosaka for the bug report in RT#131227.

0.87  Sat Dec 14 16:16:00 2019
     - Removing PIPE handler.

0.86  Sat Dec 14 14:04:00 2019
     - Stopping a crash due to a PIPE signal.  Thanks to John Denker for the bug report in RT#131173.

0.85  Wed Nov 12 18:40:00 2019
     - Fixing session cookie support.  Thanks to BOKUTIN in RT#130955.

0.84  Tue Nov  5 not sure 2019
     - Allowing esr in version string b/c of debian breakage.  Thanks to QUATTRO in RT#130889.
     - Removed mention of highlight parameter in selfie after Firefox 70 dropped support for it.

0.83  Tue Oct 10 21:48:00 2019
     - Added proxy host parameter.

0.82  Mon Sep  4 21:15:00 2019
     - Fixes for HAR (HTTP Archive) files.
     - Added experimental support for adding CAs using certutil.

0.81  Sun Aug 11 20:22:00 2019
     - Improved ssh support for remote firefox, including addons and downloads.
     - Added experimental support for HAR (HTTP Archive) files.

0.80  Sat Aug  3 16:57:00 2019
     - Added survive, user and host parameters to new method.

0.79  Thu Aug  1 06:32:00 2019
     - Adding remote support for linux/bsd.
     - Adding window width/height parameters for initial firefox window.
     - Improving documentation.
     - Fixing delete_session bug in RT#130236.

0.78  Thu Jun 11 17:18:00 2019
     - Adding support for Firefox 68.
     - Adding strict_file_interactability, unhandled_prompt_behavior, set_window_rect and moz_shutdown_timeout to capabilities.
     - Added the raw parameter for the selfie method

0.77  Sun Jun  7 21:34:00 2019
     - Adding support for insecure certificate exceptions.

0.76  Sat Jun 29 19:22:00 2019
     - Fixes to cygwin test suite.  Fixes to cope with dbus crashes in RHEL6.

0.75  Sat Jun 29 11:36:00 2019
     - Set minimum version of IPC::Open3 after CPAN Tester issues.

0.74  Sat Jun 29 08:01:00 2019
     - Adding cygwin support.  Dropped IPC::Run in favour of IPC::Open3.

0.73  Thu Jun 27 06:58:00 2019
     - Fixing test suite.

0.72  Wed Jun 26 19:37:00 2019
     - Adding moz_build_id in capabilities. Cleanup socket close.

0.71  Fri Mar 29 20:12:00 2019
     - Fixing new_window tests for only Firefox 66+

0.70  Thu Mar 28 20:29:00 2019
     - Adding support for new_window, accept_alert.  Fixing window_type.  Deprecating accept_dialog

0.69  Mon Mar 25 19:6:00 2019
     - Including support for Firefox 24 and Firefox 66

0.68  Thu Feb 14 21:08:00 2018
     - Adding support for Firefox 64.  Required sandboxing window.find in scripts

0.67  Sun Oct 28 16:14:00 2018
     - Adding support for Firefox 63

0.66  Mon Sep 10 20:32:00 2018
     - Improving synchronisation of commands for old and new marionette protocols

0.65  Sun Sep  9 20:58:00 2018
     - Dropped the minimum acceptable firefox version to 31.8.0esr for solaris.  Accepting pre version 3 marionette.

0.64  Fri Aug 31 20:12:00 2018
     - Removed unnecessary debug statements from the script method

0.63  Fri Aug 31 06:51:00 2018
     - Fixed Win32 tests.  Updated script parameters to match current firefox script parameters.

0.62  Thu Aug 30 06:35:00 2018
     - Corrected documentation

0.61  Wed Aug 29 06:50:00 2018
     - Forcing HTTP::Daemon to use LocalAddr of 'localhost' to stop CPAN Tester errors

0.60  Tue Aug 28 21:10:00 2018
     - Adding json and strip methods

0.59  Thu Aug 23 06:48:00 2018
     - Provided direct shortcuts to timeout parameters for the new method.

0.58  Sat Aug 18 14:56:00 2018
     - Fixed timeouts parameters for new.  Thanks to Alexander Welsch for the bug report.

0.57  Sat Jun 30 11:04:00 2018
     - Corrected downloads to work with Firefix 61

0.56  Fri Jun 15 22:02:00 2018
     - Defining Win32 Connection Refused error code during initial startup

0.55  Fri Jun 15 18:43:00 2018
     - Allowing test suite to run with an existing proxy, handling bad window width on darwin, other test fixes

0.54  Mon Jun 11 13:30:00 2018
     - Coping with the little changes for Firefox 60

0.53  Fri Mar 15 19:49:00 2018
     - Fixed test suite.

0.52  Thu Mar 15 21:28:00 2018
     - Reduced the minimum acceptable firefox version to 50.
     - Adding enumerate, moz_use_non_spec_compliant_pointer_origin methods to Capabilities.

0.51  Sat Mar 10 15:44:00 2018
     - Adding loaded and interactive methods.

0.50  Sun Mar  4 20:07:00 2018
     - Adding test suite alarm for download test.

0.49  Sun Mar  4 16:13:00 2018
     - Adding test suite timeout checking for 80 seconds.
     - More code coverage improvements. 

0.48  Fri Mar  2 22:44:00 2018
     - Adding proxy environment variables.

0.47  Wed Feb 28 22:57:00 2018
     - Code clean up.

0.46  Wed Feb 28 22:19:00 2018
     - Adding bye and mime_types methods.

0.45  Tue Feb 27 18:45:00 2018
     - Adding await method.

0.44  Mon Feb 26 21:19:00 2018
     - s/find_by/find/g.
     - Adding download support.

0.43  Thu Feb 22 20:48:00 2018
     - Exception handling fixes.

0.42  Mon Feb 19 22:29:00 2018
     - Documentation/test coverage fixes.

0.41  Mon Feb 19 00:38:00 2018
     - Adding proxy support.

0.40  Thu Feb 15 21:32:00 2018
     - Merge find/list queries.

0.39  Web Feb 14 19:25:00 2018
     - Allow nested find/list queries.

0.38  Sun Feb 11 07:08:00 2018
     - More test fixes for Firefox 52.6 on darwin.

0.37  Sat Feb 10 08:57:00 2018
     - Test fixes for Firefox 52.6 on darwin.

0.36  Fri Feb  9 07:02:00 2018
     - Correcting Win32/cygwin/darwin dependencies.

0.35  Thu Feb  8 19:07:00 2018
     - Adding support for Dragonfly BSD.
     - More exit 11 detection. 

0.34  Web Feb  7 07:03:00 2018
     - Adding support for RHEL7/RHEL6/jessie.
     - Reduced the minimum acceptable firefox version to 52

0.33  Sat Feb  3 16:53:00 2018
     - Adding support for NetBSD.
     - Reduced the minimum acceptable firefox version to 55
     - Added support for older Marionette protocol commands

0.32  Fri Feb  2 19:38:00 2018
     - Adding support for OpenBSD, reduced the minimum acceptable firefox version to 56.
     - Requirement/test suite cleanups.

0.31  Tue Jan 30 05:55:00 2018
     - Deprecating page_source (for html), find_element (find), find_elements (list) and send_keys (type).
     - Removed driver.js from the MANIFEST.
     - Adding virtual memory detection in Makefile.PL.

0.30  Tue Jan 30 05:55:00 2018
     - Coping with Ubuntu implementating rpm.

0.29  Mon Jan 29 20:21:00 2018
     - Adding network capture into debug output.
     - Added delete_session method.

0.28  Mon Jan 29 05:36:00 2018
     - Cleanup for the test suite.  Adding freebsd signal 11 detection and max/full/min alarm/TODO.

0.27  Sun Jan 28 22:07:00 2018
     - Cleanup for the test suite.  Rolling 11 exit detection throughout test suite.

0.26  Sun Jan 28 19:48:00 2018
     - Cleanup for the test suite.  11 exit code not caused by low memory SEGV faults.

0.25  Sun Jan 28 15:30:00 2018
     - Checking for firefox exiting with an 11 error code in in test suite

0.24  Sat Jan 27 21:16:00 2018
     - Cleanup of the cross-platform code

0.23  Fri Jan 26 21:27:00 2018
     - Not running Xvfb at all unless moz_headless has been set to false or the visible parameter has been set to true

0.22  Fri Jan 26 21:07:00 2018
     - Coping with a unix environment with no X11 available.
     - Tested on freebsd.

0.21  Fri Jan 26 19:11:00 2018
     - Another attempt at fixing test failures.

0.20  Fri Jan 26 14:36:00 2018
     - Adding property and documenting property vs attribute methods.
     - Testing cygwin support.
     - Adding support for Firefox 58.

0.19  Thu Jan 25 02:34:00 2018
     - Using headless as the default launch mode.
     - Adding the visible parameter to Firefox::Marionette->new (defaults to 0).
     - Changed method name of Firefox::Marionette::Window::Rect->state to wstate.

0.18  Wed Jan 24 06:18:00 2018
     - Corrected MANIFEST to include t/addons/test.xpi.

0.17  Tue Jan 23 22:13:00 2018
     - Added methods for installing/uninstalling addons.
     - More debugging for test failures.

0.16  Sun Jan 21 20:19:00 2018
     - Added support for -safe-mode as a firefox argument via the addons argument.

0.15  Sat Jan 20 22:23:00 2018
     - Fixed documentation.

0.14  Sat Jan 20 22:01:00 2018
     - Improved the test suite to cope with high load averages on test machines.
     - Added support for closing a tab/window.

0.13  Sat Jan 20 15:22:00 2018
     - Added additional dependencies to Makefile.PL.

0.12  Sat Jan 20 15:12:00 2018
     - Removing methods to update the profile while firefox is running until a method that works is discovered. 
     - Added debug parameter to cleanup firefox STDERR unless required.
     - Building Xvfb support into the module instead of just including it in the test suite.

0.11  Fri Jan 19 21:14:00 2018
     - Improving Profile support.  Adding more debugging for 'X_GetImage: BadMatch' exceptions.

0.10  Wed Jan 17 06:30:00 2018
     - Catching negative window positions in test suite.  Adding Profile support.

0.09  Mon Jan 15 21:30:00 2018
     - Improved handling of 'X_GetImage: BadMatch' exceptions in test suite.

0.08  Mon Jan 15 21:02:00 2018
     - Cleaned up documentation. Added support for is_displayed, is_enabled, is_selected, window_rect.
     - Removed locally patched Test::NeedsDisplay.  Added TODO support in tests for 'X_GetImage: BadMatch' exceptions for screenshots.  Thanks to SREZIC for assistance in RT#12407.

0.07  Sun Jan 14 20:43:00 2018
     - Included locally patched Test::NeedsDisplay in MANIFEST.

0.06  Sun Jan 14 17:59:00 2018
     - Adding support for MacOS (darwin) and custom firefox binaries.

0.05  Sun Jan 14 09:15:00 2018
     - Adding locally patched Test::NeedsDisplay to get around screenshot test failures.

0.04  Sat Jan 13 19:50:00 2018
     - Adding Test::NeedsDisplay as a build pre-requisite for non Win32 platforms.

0.03  Sat Jan 13 18:04:00 2018
     - Added element and css methods.

0.02  Sat Jan 13 16:48:00 2018
     - Updated documentation, removed Build.PL, added LICENSE key to Makefile.PL.

0.01  Sat Jan  6 17:28:44 2018
     - Initial release.

