Revision history for WWW-Mechanize-Chrome-DOMops 0.01 12-08-2023/00:21 First version, released on an unsuspecting world. 0.02 22-08-2023/13:30 Tests now exit gracefully (pass) if the google-chrome executable is not installed. Minor POD changes. 0.03 22-08-2023/17:00 Removed the 'INSTALL_BASE' from Makefile.PL Added Log::Log4perl as a dependency for the testing phase. Minor POD changes. 0.04 23-08-2023/14:30 Fixed the error message when checking for correct parameters, replaced 'description' with 'name'. Added feature: user can specify javascript code to create the information hash to be returned for each matched element. Before the return was a hash of "tag" and "id". Now the user can optionally specify the javascript code to create this information hash. The fallback behaves as in previous version, there should be no breaks. POD extended. Two more module dependencies added (required for testing). All user-specified javascript code can throw exception which we will catch and propagate to perl code. This has now its own test case. 0.05 29-08-2023/14:30 Added a security warning for when the same google-chrome browser/identity is used for everyday surfing and with this module. Cookies, history, passwords will all be accessible to module's internal and 3rd-party javascript if the browser is not invoked with a fresh session. 0.06 29-08-2023/14:31 Nothing new. 0.07 20-12-2023/12:00 Enhanced documentation. 0.08 20-12-2023/12:01 Duh! Makefile.PL contains unwanted tags. 0.09 20-12-2023/12:02 Documentation. 0.10 23-04-2025/13:45 Added 'domops_wait_for_page_to_load()' which waits for the "dom-ready" event. It optionally waits for HTML elements to be present in the DOM even if injected dynamically after page has been loaded, which is very common. Added XPath selection of elements for 'domops_find()' and 'domops_zap()'. Switched to Test::TempDir::Tiny in test files. Changed sub names 'zap()' to 'domops_zap()' and 'find()' to 'domops_find()' in order to avoid possible clashes with other modules. Exported variable 'VERBOSE_DOMops' is now called 'domops_VERBOSITY'. Now also optionally exporting: 'domops_read_dom_element_selectors_from_JSON_string()' and 'domops_read_dom_element_selectors_from_JSON_file()' 0.11 23-04-2025/14:00 Added the headless option to launching mechanize in tests. 0.12 04-08-2025/11:00 Changed the minimum required version of dependency Data::Roundtrip to 0.30 (instead of 0/any), in Makefile.PL, because older versions die on parsing malformed JSON which is part of the testing process. The new version of Data::Roundtrip does not die on malformed JSON but it fails. 0.13 04-09-2025/11:00 Added exportable global variable 'our $domops_LOGGER' which, if imported, can be set to caller's own logger object. Default logs to STDOUT/ERR using Mojo::Log, which will not break things from previous version unless for unicode strings.