Skip to content

v0.6.1

Choose a tag to compare

@github-actions github-actions released this 22 Jul 06:37
07cbc0c

Square Terminal for WooCommerce 0.6.1

Two fixes to the 0.6.0 settings screen, both raised in review of that release.

Fixed

Connecting uses the environment selected on screen

Connect to Square is a link, not a form submit, so an unsaved change to the Environment dropdown was ignored and the previously saved value was used instead. A merchant who selected Production and pressed Connect could therefore authorize the sandbox application without any indication that had happened.

0.6.0 made this more likely, not less: the new layout deliberately places the environment choice immediately above the button and tells you to choose before connecting.

The selected environment is now carried to the connect action, validated, and saved before authorization begins, so the stored setting and the connection always agree. The button also names the environment it will use — Connect to Square (production) — so there is no doubt before clicking.

If JavaScript is unavailable the saved setting is used, exactly as before.

Webhook health no longer outlives the configuration it was measured under

A verified delivery was reported as working even after the environment, webhook URL, or signature key changed. Those three values all take part in signature verification, so a delivery verified under the old ones says nothing about the new — and reporting it as healthy masked precisely the broken setup the row exists to reveal.

The record now carries a fingerprint of that configuration and is disregarded when any of it changes. Records written by 0.6.0 carry no fingerprint, so they cannot be attributed to any configuration and are treated as unknown rather than as current health. The signature key is hashed, never stored in clear.

Upgrade notes

  • No settings changes required.
  • After changing the environment, webhook URL, or signature key, the webhook row will report no verified delivery until the next one arrives. That is the intended behaviour, not a fault.

Verification status

  • Observed: composer lint clean, composer test 235 tests / 816 assertions, composer test:js 26/26.
  • Not verified in a browser. The environment fix depends on a small piece of JavaScript keeping the Connect link in step with the dropdown, and that has not been seen running. Its server side — validating, persisting, and using the requested environment — is covered by tests, including the case where an unrecognised value must leave the saved setting untouched.