v1.5.9 — Storefront fixes + POS parked-cart cleanup
Historical note (2026-07-15): This release was rewritten with
git filter-repoon 2026-07-15 to remove a set of Spwig HQ-internal
apps (developer_portal/,license_checkout/,marketplace_checkout/,
and four companion files inaccounts/) that shipped in the OSS
distribution by mistake. Runtime behavior for Community installs is
unchanged — the removed code was gated behindSPWIG_IS_HQand never
activated on Community builds. This tag now points at the rewritten
commit; the original commit SHA is no longer reachable via the tag.
Bug-fix release addressing three regressions found during v1.5.8
canary deployment on the demo fleet, plus a missing Celery beat
schedule for expired POS parked carts.
Fixed
- Storefront add-to-cart 500.
frontend-utils.jsdelegated
showNotification()toAdminModal.toast(), butAdminModal
only loads in the admin bundle — every storefront notification
threwReferenceError. Restored the inline DOM toast. - Guest wishlist 401.
WishlistViewSet.product_idsrequired
authentication, butproduct-card.jshits it on every page for
heart-button state including for guests. NowAllowAny, with an
empty short-circuit for unauthenticated requests. - Admin help search 500. Unquoted numeric YAML (
9.99) in the
price-charming topic keywords crashed the keyword iteration.
Coerced iteration tostrin both the classic search action and
the semantic-search chunker.
Added
- Merchant help topics for voucher CSV/XLSX import (from 1.5.5) and
hosted-services free tier (from 1.5.7). - POS help topics updated after 1.5.8 removed the upgrade page.
- Hourly cleanup of expired POS parked carts. Runs at
:15with a
55-minute expiry. Requirescelery-beatrestart on upgrade
(installer/upgrader handles this automatically; source-form
operators may needdocker compose restart celery_beat).
Upgrade notes
No merchant action required for installer-based installs. Source-form
users: git pull && docker compose build && docker compose up -d,
then restart celery_beat to pick up the new schedule.
Full changelog: CHANGELOG.md