CHANGELOG.md
396 lines
| 1 | # Changelog |
| 2 | |
| 3 | All notable changes to this project will be documented in this file. |
| 4 | |
| 5 | The format is based on [](https://keepachangelog.com/en/1.0.0/Keep a Changelog](https://keepachangelog.com/en/1.0.0/](https://keepachangelog.com/en/1.0.0/) |
| 6 | and this project adheres to [](https://semver.org/spec/v2.0.0.htmlSemantic Versioning](https://semver.org/spec/v2.0.0.html](https://semver.org/spec/v2.0.0.html). |
| 7 | |
| 8 | ## 0.16.7 - 2026-07-27 |
| 9 | ### Security |
| 10 | - Stop emitting request-derived properties into cacheable front-end page HTML. [#67003] |
| 11 | |
| 12 | ### Changed |
| 13 | - Update package dependencies. [#65999] |
| 14 | |
| 15 | ### Fixed |
| 16 | - Recognize active WooCommerce installations in custom plugin directories. [#66665] |
| 17 | |
| 18 | ## 0.16.6 - 2026-06-17 |
| 19 | ### Fixed |
| 20 | - Stop minting throwaway anonymous IDs for events from clients without a persisted visitor cookie (e.g. UA-spoofing crawlers hitting add-to-cart), which inflated session counts. Such events are now skipped instead. [#65792] |
| 21 | |
| 22 | ## 0.16.5 - 2026-06-02 |
| 23 | ### Fixed |
| 24 | - Guard cart hook handlers against missing cart item data to prevent PHP warnings. [#64963] |
| 25 | |
| 26 | ## 0.16.4 - 2026-05-11 |
| 27 | ### Changed |
| 28 | - Update package dependencies. [#64040] |
| 29 | |
| 30 | ### Fixed |
| 31 | - Skip server-side analytics events from cookie-less contexts (REST API, XMLRPC, cron, WP-CLI) to prevent inflated session counts. [#64686] |
| 32 | |
| 33 | ## [0.16.3] - 2026-04-06 |
| 34 | ### Changed |
| 35 | - Update dependencies. [#46383] |
| 36 | |
| 37 | ## [0.16.2] - 2026-03-30 |
| 38 | ### Changed |
| 39 | - Update package dependencies. [#47799] |
| 40 | |
| 41 | ### Fixed |
| 42 | - Ensure store_admin property reports 1 for admin users in REST API tracking requests. [#47731] |
| 43 | |
| 44 | ## [0.16.1] - 2026-03-23 |
| 45 | ### Changed |
| 46 | - Update package dependencies. [#47684] |
| 47 | |
| 48 | ### Fixed |
| 49 | - Disable batched analytics requests when a SOCKS proxy is configured, falling back to wp*remote_get() which respects WP_PROXY*\* settings. [#47707] |
| 50 | |
| 51 | ## [0.16.0] - 2026-03-16 |
| 52 | ### Changed |
| 53 | - Handle proxy requests at MU plugin stage and exit early for faster response time. [#46757] |
| 54 | - Update dependencies. [#47472] |
| 55 | |
| 56 | ## [0.15.7] - 2026-03-09 |
| 57 | ### Changed |
| 58 | - Switch to Native TypeScript compiler based on Go. [#47375] |
| 59 | |
| 60 | ### Fixed |
| 61 | - Fix TypeScipt type errors detected by `tsgo`. [#47423] |
| 62 | |
| 63 | ## [0.15.6] - 2026-02-26 |
| 64 | ### Changed |
| 65 | - Update package dependencies. [#47300] |
| 66 | |
| 67 | ## [0.15.5] - 2026-02-23 |
| 68 | ### Changed |
| 69 | - Update package dependencies. [#47173] |
| 70 | |
| 71 | ## [0.15.4] - 2026-02-16 |
| 72 | ### Changed |
| 73 | - Update package dependencies. [#47099] |
| 74 | |
| 75 | ## [0.15.3] - 2026-02-10 |
| 76 | ### Changed |
| 77 | - Update package dependencies. [#47002] |
| 78 | - Update tracking classes to work without WooCommerce dependency. [#46756] |
| 79 | |
| 80 | ## [0.15.2] - 2026-02-02 |
| 81 | ### Changed |
| 82 | - Update package dependencies. [#46854] |
| 83 | |
| 84 | ## [0.15.1] - 2026-01-26 |
| 85 | ### Changed |
| 86 | - Update dependencies. [#46383] |
| 87 | |
| 88 | ## [0.15.0] - 2026-01-23 |
| 89 | ### Added |
| 90 | - Add woocommerce_analytics_auto_install_proxy_speed_module filter to control auto-installation of proxy speed module mu-plugin. [#46719] |
| 91 | |
| 92 | ## [0.14.0] - 2026-01-19 |
| 93 | ### Added |
| 94 | - Add tablet device detection to the 'device' event property, distinguishing between mobile, tablet, and desktop devices. [#46631] |
| 95 | |
| 96 | ### Changed |
| 97 | - Update package dependencies. [#46647] |
| 98 | |
| 99 | ## [0.13.4] - 2026-01-12 |
| 100 | ### Changed |
| 101 | - Update package dependencies. [#46456] |
| 102 | |
| 103 | ### Fixed |
| 104 | - Fix product_purchase event not tracking for shortcode checkout due to incorrect order ID type check. [#46467] |
| 105 | |
| 106 | ## [0.13.3] - 2025-12-22 |
| 107 | ### Changed |
| 108 | - Update dependencies. [#46381] |
| 109 | |
| 110 | ## [0.13.2] - 2025-12-15 |
| 111 | ### Changed |
| 112 | - Update dependencies. [#46271] |
| 113 | |
| 114 | ## [0.13.1] - 2025-12-08 |
| 115 | ### Fixed |
| 116 | - Ensure proper flags are used with `json_encode()`. [#46092] |
| 117 | |
| 118 | ## [0.13.0] - 2025-12-01 |
| 119 | ### Changed |
| 120 | - Added Beacon API support and replaced @wordpress/api-fetch with native fetch. [#45891] |
| 121 | - Update package dependencies. [#46143] |
| 122 | |
| 123 | ### Fixed |
| 124 | - Fix proxy speed module installation using WP_Filesystem API with proper error handling. [#45801] |
| 125 | |
| 126 | ## [0.12.2] - 2025-11-24 |
| 127 | ### Fixed |
| 128 | - Improve compatibility with old WooCommerce versions. [#46003] |
| 129 | |
| 130 | ## [0.12.1] - 2025-11-19 |
| 131 | ### Fixed |
| 132 | - Fix compatibility issue with WooCommerce older than 9.7.0. [#45988] |
| 133 | |
| 134 | ## [0.12.0] - 2025-11-17 |
| 135 | ### Changed |
| 136 | - Implement batched pixel requests for improved performance when sending tracking events. [#45869] |
| 137 | - Update package dependencies. [#45915] [#45958] |
| 138 | |
| 139 | ## [0.11.0] - 2025-11-03 |
| 140 | ### Changed |
| 141 | - Enable ClickHouse by default. [#45696] [#45723] |
| 142 | - Update package dependencies. [#45652] |
| 143 | |
| 144 | ### Fixed |
| 145 | - Fix data handling with invalid prop names. [#45544] |
| 146 | - Phan: Address PhanRedundantCondition, PhanRedundantArrayValuesCall, and PhanPluginRedundantAssignment violations. [#45681] |
| 147 | - Set dynamic webpack public path for split assets. [#45654] |
| 148 | |
| 149 | ## [0.10.1] - 2025-10-27 |
| 150 | ### Changed |
| 151 | - Enhance JSON encoding by adding `JSON_HEX_TAG` and `JSON_UNESCAPED_SLASHES` options. [#45393] |
| 152 | - Ensure anonymous ID is set. [#45547] |
| 153 | |
| 154 | ### Fixed |
| 155 | - Fix call to undefined method `WC_Tracks::get_server_details()`. [#45394] |
| 156 | - Use existing bot detection from Device Detection package to skip event recording in analytics tracking. [#45552] |
| 157 | |
| 158 | ## [0.10.0] - 2025-10-02 |
| 159 | ### Added |
| 160 | - Implement WP Consent API Integration [#45323] |
| 161 | |
| 162 | ### Changed |
| 163 | - Update package dependencies. [#45334] |
| 164 | |
| 165 | ## [0.9.2] - 2025-09-30 |
| 166 | ### Fixed |
| 167 | - Prevent PHP error when WC_Tracks class is not available. [#45330] |
| 168 | - Prevent PHP warnings when array key is undefined. [#45330] |
| 169 | |
| 170 | ## [0.9.1] - 2025-09-29 |
| 171 | ### Changed |
| 172 | - Internal updates. |
| 173 | |
| 174 | ## [0.9.0] - 2025-09-25 |
| 175 | ### Added |
| 176 | - Add experimental API-based event tracking. [#45279] |
| 177 | - Add IP-based visitor tracking as fallback when proxy tracking is enabled and cookies are unavailable. [#45279] |
| 178 | - Add proxy speed module to enhance proxy API performance. [#45243] |
| 179 | - Implement client-side analytics tracking. [#45268] |
| 180 | |
| 181 | ### Changed |
| 182 | - Update build scripts for production. [#45296] |
| 183 | |
| 184 | ## [0.8.0] - 2025-09-22 |
| 185 | ### Added |
| 186 | - Implement on-site pixel API endpoint with POST support. [#45227] |
| 187 | |
| 188 | ## [0.7.0] - 2025-09-19 |
| 189 | ### Added |
| 190 | - Add server-side tracking. [#45208] |
| 191 | |
| 192 | ### Changed |
| 193 | - Implement server-side direct event delivery. [#45209] |
| 194 | |
| 195 | ## [0.6.2] - 2025-09-15 |
| 196 | ### Changed |
| 197 | - Internal updates. |
| 198 | |
| 199 | ## [0.6.1] - 2025-09-01 |
| 200 | ### Fixed |
| 201 | - Fix duplicate product purchase events on order confirmation page. [#44973] |
| 202 | |
| 203 | ## [0.6.0] - 2025-08-18 |
| 204 | ### Changed |
| 205 | - Replace URL-based landing page tracking with breadcrumb-based hierarchical page tracking. [#44789] |
| 206 | |
| 207 | ### Fixed |
| 208 | - Fix PHP warnings for `undefined` array keys and `null` object properties. [#44808] |
| 209 | |
| 210 | ## [0.5.0] - 2025-08-13 |
| 211 | ### Added |
| 212 | - Add session engagement tracking. [#44729] |
| 213 | - Track page views. [#44729] |
| 214 | |
| 215 | ### Changed |
| 216 | - Add clickhouse param to record events. [#44729] |
| 217 | - Set expiration time for session cookie to 30 mins or midnight UTC. [#44729] |
| 218 | |
| 219 | ### Fixed |
| 220 | - Ensure update cart is triggered. [#44729] |
| 221 | - Set woocommerceanalytics_session. [#44729] |
| 222 | |
| 223 | ## [0.4.9] - 2025-08-04 |
| 224 | ### Changed |
| 225 | - Performance: Improve processing of blocks during Analytics gathering. [#44544] |
| 226 | |
| 227 | ## [0.4.8] - 2025-06-16 |
| 228 | ### Fixed |
| 229 | - Prevent PHP warning in checkout view. [#43890] |
| 230 | |
| 231 | ## [0.4.7] - 2025-05-05 |
| 232 | ### Fixed |
| 233 | - Catch PHP error if null param is errantly passed by third-party code. [#43346] |
| 234 | |
| 235 | ## [0.4.6] - 2025-04-28 |
| 236 | ### Changed |
| 237 | - Internal updates. |
| 238 | |
| 239 | ## [0.4.5] - 2025-03-24 |
| 240 | ### Changed |
| 241 | - Internal updates. |
| 242 | |
| 243 | ## [0.4.4] - 2025-03-12 |
| 244 | ### Changed |
| 245 | - Internal updates. |
| 246 | |
| 247 | ## [0.4.3] - 2025-03-10 |
| 248 | ### Changed |
| 249 | - Internal updates. |
| 250 | |
| 251 | ## [0.4.2] - 2025-02-24 |
| 252 | ### Changed |
| 253 | - Update dependencies. |
| 254 | |
| 255 | ## [0.4.1] - 2025-01-09 |
| 256 | ### Fixed |
| 257 | - Temporarily disable setcookie to avoid caching issues. [#40937] |
| 258 | |
| 259 | ## [0.4.0] - 2025-01-06 |
| 260 | ### Added |
| 261 | - Add Search Event & landing Page support. [#40698] |
| 262 | |
| 263 | ## [0.3.1] - 2024-12-25 |
| 264 | ### Fixed |
| 265 | - Fix fatal when WC()->cart returns null. [#40729] |
| 266 | |
| 267 | ## [0.3.0] - 2024-12-23 |
| 268 | ### Changed |
| 269 | - Add common props, more events and bug fixing. [#40562] |
| 270 | |
| 271 | ## [0.2.0] - 2024-11-18 |
| 272 | ### Removed |
| 273 | - General: Update minimum PHP version to 7.2. [#40147] |
| 274 | |
| 275 | ## [0.1.13] - 2024-11-04 |
| 276 | ### Added |
| 277 | - Enable test coverage. [#39961] |
| 278 | |
| 279 | ## [0.1.12] - 2024-10-29 |
| 280 | ### Changed |
| 281 | - Internal updates. |
| 282 | |
| 283 | ## [0.1.11] - 2024-09-23 |
| 284 | ### Changed |
| 285 | - Update dependencies. |
| 286 | |
| 287 | ## [0.1.10] - 2024-09-10 |
| 288 | ### Fixed |
| 289 | - Check whether `\WC_Install::STORE_ID_OPTION` is defined before attempting to use it, for compatibility with WooCommerce <8.4.0. [#39306] |
| 290 | |
| 291 | ## [0.1.9] - 2024-09-09 |
| 292 | ### Added |
| 293 | - Add Store ID property in common woocommerce analytics properties. [#38857] |
| 294 | |
| 295 | ## [0.1.8] - 2024-08-26 |
| 296 | ### Changed |
| 297 | - Updated package dependencies. [#39004] |
| 298 | |
| 299 | ## [0.1.7] - 2024-06-26 |
| 300 | ### Removed |
| 301 | - Remove use of `gutenberg_get_block_template()`. Its replacement has been in WP Core since 5.8. [#38015] |
| 302 | |
| 303 | ## [0.1.6] - 2024-05-20 |
| 304 | ### Fixed |
| 305 | - Customer creation: avoid PHP warnings when other plugins hook into customer creation process and return malformed user data. [#37440] |
| 306 | |
| 307 | ## [0.1.5] - 2024-05-06 |
| 308 | ### Changed |
| 309 | - Ensure the package can only be initialized once. [#37154] |
| 310 | |
| 311 | ## [0.1.4] - 2024-04-15 |
| 312 | ### Changed |
| 313 | - Internal updates. |
| 314 | |
| 315 | ## [0.1.3] - 2024-04-08 |
| 316 | ### Fixed |
| 317 | - Fixed a JavaScript error when accessing the Shortcode checkout with WooCommerce Analytics enable. [#36560] |
| 318 | |
| 319 | ## [0.1.2] - 2024-03-25 |
| 320 | ### Changed |
| 321 | - Internal updates. |
| 322 | |
| 323 | ## [0.1.1] - 2024-03-18 |
| 324 | ### Changed |
| 325 | - Internal updates. |
| 326 | |
| 327 | ## 0.1.0 - 2024-03-12 |
| 328 | ### Added |
| 329 | - General: add main classes to the package. [#35756] |
| 330 | - Initial version. [#35754] |
| 331 | |
| 332 | ### Fixed |
| 333 | - Avoid any issues when the package is loaded in an mu-plugin. [#36287] |
| 334 | - Fix namespace issue with WooCommerce class reference. [#35857] |
| 335 | - General: bail early when WooCommerce is not active. [#36278] |
| 336 | |
| 337 | [0.16.3]: https://github.com/Automattic/woocommerce-analytics/compare/v0.16.2...v0.16.3 |
| 338 | [0.16.2]: https://github.com/Automattic/woocommerce-analytics/compare/v0.16.1...v0.16.2 |
| 339 | [0.16.1]: https://github.com/Automattic/woocommerce-analytics/compare/v0.16.0...v0.16.1 |
| 340 | [0.16.0]: https://github.com/Automattic/woocommerce-analytics/compare/v0.15.7...v0.16.0 |
| 341 | [0.15.7]: https://github.com/Automattic/woocommerce-analytics/compare/v0.15.6...v0.15.7 |
| 342 | [0.15.6]: https://github.com/Automattic/woocommerce-analytics/compare/v0.15.5...v0.15.6 |
| 343 | [0.15.5]: https://github.com/Automattic/woocommerce-analytics/compare/v0.15.4...v0.15.5 |
| 344 | [0.15.4]: https://github.com/Automattic/woocommerce-analytics/compare/v0.15.3...v0.15.4 |
| 345 | [0.15.3]: https://github.com/Automattic/woocommerce-analytics/compare/v0.15.2...v0.15.3 |
| 346 | [0.15.2]: https://github.com/Automattic/woocommerce-analytics/compare/v0.15.1...v0.15.2 |
| 347 | [0.15.1]: https://github.com/Automattic/woocommerce-analytics/compare/v0.15.0...v0.15.1 |
| 348 | [0.15.0]: https://github.com/Automattic/woocommerce-analytics/compare/v0.14.0...v0.15.0 |
| 349 | [0.14.0]: https://github.com/Automattic/woocommerce-analytics/compare/v0.13.4...v0.14.0 |
| 350 | [0.13.4]: https://github.com/Automattic/woocommerce-analytics/compare/v0.13.3...v0.13.4 |
| 351 | [0.13.3]: https://github.com/Automattic/woocommerce-analytics/compare/v0.13.2...v0.13.3 |
| 352 | [0.13.2]: https://github.com/Automattic/woocommerce-analytics/compare/v0.13.1...v0.13.2 |
| 353 | [0.13.1]: https://github.com/Automattic/woocommerce-analytics/compare/v0.13.0...v0.13.1 |
| 354 | [0.13.0]: https://github.com/Automattic/woocommerce-analytics/compare/v0.12.2...v0.13.0 |
| 355 | [0.12.2]: https://github.com/Automattic/woocommerce-analytics/compare/v0.12.1...v0.12.2 |
| 356 | [0.12.1]: https://github.com/Automattic/woocommerce-analytics/compare/v0.12.0...v0.12.1 |
| 357 | [0.12.0]: https://github.com/Automattic/woocommerce-analytics/compare/v0.11.0...v0.12.0 |
| 358 | [0.11.0]: https://github.com/Automattic/woocommerce-analytics/compare/v0.10.1...v0.11.0 |
| 359 | [0.10.1]: https://github.com/Automattic/woocommerce-analytics/compare/v0.10.0...v0.10.1 |
| 360 | [0.10.0]: https://github.com/Automattic/woocommerce-analytics/compare/v0.9.2...v0.10.0 |
| 361 | [0.9.2]: https://github.com/Automattic/woocommerce-analytics/compare/v0.9.1...v0.9.2 |
| 362 | [0.9.1]: https://github.com/Automattic/woocommerce-analytics/compare/v0.9.0...v0.9.1 |
| 363 | [0.9.0]: https://github.com/Automattic/woocommerce-analytics/compare/v0.8.0...v0.9.0 |
| 364 | [0.8.0]: https://github.com/Automattic/woocommerce-analytics/compare/v0.7.0...v0.8.0 |
| 365 | [0.7.0]: https://github.com/Automattic/woocommerce-analytics/compare/v0.6.2...v0.7.0 |
| 366 | [0.6.2]: https://github.com/Automattic/woocommerce-analytics/compare/v0.6.1...v0.6.2 |
| 367 | [0.6.1]: https://github.com/Automattic/woocommerce-analytics/compare/v0.6.0...v0.6.1 |
| 368 | [0.6.0]: https://github.com/Automattic/woocommerce-analytics/compare/v0.5.0...v0.6.0 |
| 369 | [0.5.0]: https://github.com/Automattic/woocommerce-analytics/compare/v0.4.9...v0.5.0 |
| 370 | [0.4.9]: https://github.com/Automattic/woocommerce-analytics/compare/v0.4.8...v0.4.9 |
| 371 | [0.4.8]: https://github.com/Automattic/woocommerce-analytics/compare/v0.4.7...v0.4.8 |
| 372 | [0.4.7]: https://github.com/Automattic/woocommerce-analytics/compare/v0.4.6...v0.4.7 |
| 373 | [0.4.6]: https://github.com/Automattic/woocommerce-analytics/compare/v0.4.5...v0.4.6 |
| 374 | [0.4.5]: https://github.com/Automattic/woocommerce-analytics/compare/v0.4.4...v0.4.5 |
| 375 | [0.4.4]: https://github.com/Automattic/woocommerce-analytics/compare/v0.4.3...v0.4.4 |
| 376 | [0.4.3]: https://github.com/Automattic/woocommerce-analytics/compare/v0.4.2...v0.4.3 |
| 377 | [0.4.2]: https://github.com/Automattic/woocommerce-analytics/compare/v0.4.1...v0.4.2 |
| 378 | [0.4.1]: https://github.com/Automattic/woocommerce-analytics/compare/v0.4.0...v0.4.1 |
| 379 | [0.4.0]: https://github.com/Automattic/woocommerce-analytics/compare/v0.3.1...v0.4.0 |
| 380 | [0.3.1]: https://github.com/Automattic/woocommerce-analytics/compare/v0.3.0...v0.3.1 |
| 381 | [0.3.0]: https://github.com/Automattic/woocommerce-analytics/compare/v0.2.0...v0.3.0 |
| 382 | [0.2.0]: https://github.com/Automattic/woocommerce-analytics/compare/v0.1.13...v0.2.0 |
| 383 | [0.1.13]: https://github.com/Automattic/woocommerce-analytics/compare/v0.1.12...v0.1.13 |
| 384 | [0.1.12]: https://github.com/Automattic/woocommerce-analytics/compare/v0.1.11...v0.1.12 |
| 385 | [0.1.11]: https://github.com/Automattic/woocommerce-analytics/compare/v0.1.10...v0.1.11 |
| 386 | [0.1.10]: https://github.com/Automattic/woocommerce-analytics/compare/v0.1.9...v0.1.10 |
| 387 | [0.1.9]: https://github.com/Automattic/woocommerce-analytics/compare/v0.1.8...v0.1.9 |
| 388 | [0.1.8]: https://github.com/Automattic/woocommerce-analytics/compare/v0.1.7...v0.1.8 |
| 389 | [0.1.7]: https://github.com/Automattic/woocommerce-analytics/compare/v0.1.6...v0.1.7 |
| 390 | [0.1.6]: https://github.com/Automattic/woocommerce-analytics/compare/v0.1.5...v0.1.6 |
| 391 | [0.1.5]: https://github.com/Automattic/woocommerce-analytics/compare/v0.1.4...v0.1.5 |
| 392 | [0.1.4]: https://github.com/Automattic/woocommerce-analytics/compare/v0.1.3...v0.1.4 |
| 393 | [0.1.3]: https://github.com/Automattic/woocommerce-analytics/compare/v0.1.2...v0.1.3 |
| 394 | [0.1.2]: https://github.com/Automattic/woocommerce-analytics/compare/v0.1.1...v0.1.2 |
| 395 | [0.1.1]: https://github.com/Automattic/woocommerce-analytics/compare/v0.1.0...v0.1.1 |
| 396 |