*** Express One Changelog ***

2025-12-24 - version 1.0.1
* Initial release
* Add - Core functionality for Orders created via WooCommerce are forwarded to Express One, converted into shipments, create barcode, tracking etc.
* Add - WooCommerce compatibility (tested up to WooCommerce 10.3.5)
* Add - Basic settings page with configuration options
* Add - Internationalization (i18n) support
* Dev - Code structured for maintainability and future enhancements

2026-03-26 - version 1.0.2
* Add - HPOS (High-Performance Order Storage) compatibility: all order meta now uses WooCommerce order CRUD (`get_meta`, `update_meta_data`, `save`) instead of `get_post_meta` / `update_post_meta`
* Add - `express_one_is_hpos_enabled()` helper to detect whether WooCommerce custom orders table is active
* Add - `express_one_get_order_edit_url()` helper to generate the correct order edit URL for both HPOS and legacy post-based orders
* Add - `express_one_build_collies()` helper to distribute order items across a configurable number of collies using round-robin logic
* Add - Collie count modal on order edit screen: admins can now specify how many collies to use when creating or updating a shipment (capped to number of order items)
* Add - `admin-collie-count.js` script enqueued on order edit screens (both legacy and HPOS) with localized modal strings
* Add - `data-max-collies` attribute on Create and Update Shipment buttons for JS validation
* Fix - Admin notices now correctly detect the order edit screen under both legacy (`post.php?post=`) and HPOS (`admin.php?page=wc-orders&id=`) URL formats
* Fix - `express_one_admin_error_redirect()` now uses transients for error messages instead of passing them in the query string, consistent with success notices
* Fix - Bulk label handler now loads the full order object via `wc_get_order()` before reading shipment meta, ensuring HPOS compatibility
* Dev - "Create Express One" button label renamed to "Create Express One Shipment" for clarity
* Dev - Order action button HTML restructured into a wrapping `<p>` tag for consistent spacing

2026-03-30 - version 1.0.3
* Fix - Parcel Shops error dialog fixed for different page builders

2026-05-20 - version 1.0.4
* Add - Approximate Location Check Added
* Fix - Location Availability Removed in Parcel Shop Location Selection

2026-06-01 - version 1.0.5
* Add - International shipping eligibility check for Home Delivery: non-SI destinations are now validated against the Express One API before checkout is allowed
* Add - WooCommerce Blocks (Gutenberg) checkout support for country eligibility validation via Store API hook
* Fix - Country eligibility check now works for both classic shortcode checkout and block-based checkout

2026-08-05 - version 1.0.6
* Fix - Bulk "Print Labels" action on the Orders list no longer silently no-ops when WooCommerce/HPOS passes the selected order IDs under an unexpected request key; the handler now falls back to reading the raw request so the action always runs
* Fix - Bulk "Print Labels" now always shows a result notice: an explicit "No orders were selected" notice if nothing was picked up, instead of doing nothing
* Fix - Label PDF generation failures (label API HTTP errors, non-2xx responses, empty/undecodable label data, failed disk writes) are now surfaced as a clear error notice instead of failing silently
* Fix - Missing API Key / missing Label Layout ID during bulk label creation now show a normal admin notice instead of a dead-end wp_die() screen

2026-08-06 - version 1.0.7
* Fix - "cargo" flag set to false when creating a new shipment (express_one_handle_create_shipment); the shipment update request (express_one_handle_update_shipment) still sends "cargo" as true
