Evoxup Changelog — Product & Extension Updates :root{ --bg:#fff;--soft:#f5f8ff;--ink:#0a1222;--muted:#5d6b82; --line:#dce5f5;--blue:#1769ff;--blue2:#0e48bd;--blue3:#0b2c71;--crimson:#d7263d; --dark:#07111f;--green:#16834c;--amber:#a36a00;--purple:#6f42c1; --radius:22px;--shadow:0 18px 50px rgba(20,62,125,.10) } *{box-sizing:border-box} html{scroll-behavior:smooth} body{margin:0;font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Arial,sans-serif;color:var(--ink);background:var(--bg);line-height:1.65} a{color:inherit;text-decoration:none} .container{width:min(1180px,calc(100% - 40px));margin:auto} h1,h2,h3{line-height:1.12;margin:0 0 18px} h1{font-size:clamp(3rem,6vw,5.8rem);letter-spacing:-.055em} h2{font-size:clamp(2rem,4vw,3.7rem);letter-spacing:-.045em} h3{font-size:1.22rem} p{margin:0 0 18px;color:var(--muted)} .lead{font-size:clamp(1.08rem,1.6vw,1.3rem);max-width:820px} .eyebrow{display:inline-flex;align-items:center;gap:9px;font-size:.78rem;font-weight:800;letter-spacing:.13em;text-transform:uppercase;color:var(--blue)} .eyebrow:before{content:"";width:28px;height:2px;background:var(--crimson);border-radius:3px} .btn{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:0 20px;border-radius:12px;font-weight:800;border:1px solid transparent;transition:.2s} .btn.primary{background:var(--blue);color:#fff}.btn.secondary{background:#fff;border-color:var(--line)} .btn:hover{transform:translateY(-2px)} .badge{display:inline-flex;padding:5px 10px;border-radius:999px;font-size:.68rem;font-weight:850;letter-spacing:.04em;background:#eaf1ff;color:var(--blue2)} .tag-added{background:#e9f8ef;color:#177846}.tag-improved{background:#edf3ff;color:#1555bd}.tag-fixed{background:#fff4e5;color:#9a6200}.tag-security{background:#fff0f2;color:#b42b3e}.tag-changed{background:#f2ecff;color:#6640b4} header{position:sticky;top:0;z-index:20;background:rgba(255,255,255,.92);backdrop-filter:blur(18px);border-bottom:1px solid rgba(220,229,245,.8)} .nav{height:74px;display:flex;align-items:center;justify-content:space-between;gap:20px} .brand{display:flex;align-items:center;gap:10px;font-weight:900} .brandmark{width:34px;height:34px;border-radius:11px;background:linear-gradient(145deg,var(--blue),var(--blue3));position:relative} .brandmark:after{content:"";position:absolute;width:10px;height:10px;border-radius:50%;background:var(--crimson);right:-3px;bottom:4px;border:3px solid white} .navlinks{display:flex;gap:24px;font-weight:700;font-size:.93rem;color:#30405a} .navlinks a:hover{color:var(--blue)} .navright{display:flex;gap:10px;align-items:center} .hero{padding:102px 0 74px;position:relative;overflow:hidden;background: radial-gradient(circle at 88% 12%,rgba(23,105,255,.14),transparent 28%), radial-gradient(circle at 8% 22%,rgba(215,38,61,.07),transparent 18%), linear-gradient(180deg,#fff,#f8fbff)} .hero:before{content:"";position:absolute;inset:0;opacity:.22;background-image:linear-gradient(#dce5f5 1px,transparent 1px),linear-gradient(90deg,#dce5f5 1px,transparent 1px);background-size:42px 42px;mask-image:linear-gradient(to bottom,black,transparent 72%)} .hero-grid{position:relative;display:grid;grid-template-columns:1fr .9fr;gap:52px;align-items:center} .hero h1 span{color:var(--blue)} .release-card{padding:28px;border-radius:26px;background:linear-gradient(150deg,#07111f,#0f2c62);color:#fff;box-shadow:0 30px 80px rgba(7,17,31,.25)} .release-card p{color:#c1cee2}.release-meta{display:flex;gap:8px;flex-wrap:wrap;margin:16px 0} .release-meta span{padding:6px 9px;border:1px solid rgba(255,255,255,.14);border-radius:999px;color:#cfe0fa;font-size:.78rem;font-weight:750} section{padding:92px 0}.soft{background:var(--soft)}.dark{background:linear-gradient(135deg,#07111f,#0a1d3b);color:#fff} .dark h2,.dark h3{color:#fff}.dark p{color:#aabbd4} .section-head{max-width:850px;margin-bottom:42px} .filters{display:flex;gap:9px;flex-wrap:wrap;margin:20px 0 34px} .filter{padding:9px 12px;border:1px solid var(--line);border-radius:999px;background:#fff;color:#4a5b73;font-weight:750;font-size:.84rem} .filter.active{background:var(--blue);color:#fff;border-color:var(--blue)} .timeline{position:relative} .timeline:before{content:"";position:absolute;left:22px;top:10px;bottom:10px;width:2px;background:#dbe4f3} .release{position:relative;padding-left:72px;margin-bottom:28px} .release:before{content:"";position:absolute;left:13px;top:8px;width:20px;height:20px;border-radius:50%;background:var(--blue);border:5px solid #eaf1ff;box-shadow:0 0 0 1px #cbd9ee} .release-box{border:1px solid var(--line);border-radius:22px;background:#fff;overflow:hidden} .release-head{padding:22px 24px;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;gap:20px;align-items:flex-start;background:#fbfcff} .version{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.version strong{font-size:1.45rem;letter-spacing:-.03em} .release-date{font-size:.84rem;color:#7b899f;font-weight:700} .release-body{padding:24px} .changegroup{margin-bottom:24px}.changegroup:last-child{margin-bottom:0} .changegroup h4{margin:0 0 11px;font-size:.86rem;text-transform:uppercase;letter-spacing:.08em} .changegroup ul{margin:0;padding-left:20px;color:#4d5e77}.changegroup li{margin:8px 0} .components{display:grid;grid-template-columns:repeat(4,1fr);gap:16px} .component{padding:22px;border:1px solid var(--line);border-radius:18px;background:#fff} .component strong{display:block;margin-bottom:7px}.component small{color:#7a89a0} .policygrid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px} .policy{padding:24px;border-radius:20px;background:#0c1b32;border:1px solid #1c3152} .policy strong{display:block;color:#fff;font-size:1.08rem;margin-bottom:8px} .policy p{margin:0} .note{padding:18px 20px;border-left:4px solid var(--blue);background:#f1f6ff;border-radius:10px;color:#43546d} .cta{padding:84px 0;background:radial-gradient(circle at 20% 20%,rgba(23,105,255,.22),transparent 30%),linear-gradient(135deg,#07111f,#102a5a);color:#fff} .cta h2{color:#fff}.cta p{color:#b9c9e1}.actions{display:flex;gap:12px;flex-wrap:wrap} footer{background:#050b14;color:#a6b5ca;padding:55px 0 26px} .footgrid{display:grid;grid-template-columns:1.4fr repeat(4,1fr);gap:30px} footer h4{color:#fff;margin:0 0 13px}footer a{display:block;margin:8px 0;font-size:.9rem} .footnote{border-top:1px solid #172238;margin-top:34px;padding-top:20px;font-size:.82rem;color:#73839d} @media(max-width:980px){ .navlinks{display:none}.hero-grid{grid-template-columns:1fr}.components{grid-template-columns:repeat(2,1fr)}.policygrid{grid-template-columns:1fr}.footgrid{grid-template-columns:repeat(2,1fr)} } @media(max-width:640px){ .container{width:min(100% - 26px,1180px)}h1{font-size:3.05rem}section{padding:70px 0} .components{grid-template-columns:1fr}.release{padding-left:48px}.timeline:before{left:14px}.release:before{left:5px}.release-head{flex-direction:column} .footgrid{grid-template-columns:1fr}.navright a:first-child{display:none} } img,svg{display:block;max-width:100%} .brand-mark svg{width:23px;height:23px;color:#fff} .brand-mark{ width:38px;height:38px;border-radius:12px; background:linear-gradient(145deg,var(--blue),var(--teal)); display:grid;place-items:center;box-shadow:0 8px 24px rgba(18,84,244,.24); }
Evoxup Changelog

See What Changed — and Why It Matters.

Track Evoxup Membership, provider integrations and extension updates with clear separation between new features, improvements, fixes and security changes.

LATEST STABLE

Evoxup Membership

The changelog should always identify the current stable product line clearly and avoid mixing superseded development branches with the published release history.

CoreStable channelWordPressProvider-neutral
See release notes →
Browse by Component

One Product Ecosystem. Clear Release Boundaries.

Core and independent extensions should have their own release histories so users can see exactly what changed without assuming every component shares the same version number.

COREEvoxup MembershipMembership, licensing, products, entitlements and core integrations.
EXTENSIONProduct MappingExternal product discovery and routing to internal destinations.
EXTENSIONProduct SyncProvider catalog metadata synchronization.
EXTENSIONProvider ProfilesGuided provider setup and provider-specific adapters.
Release History

Latest Changes.

The entries below are a structured page design. Replace or extend the sample release notes with the exact production history you want published.

All Components Membership Core Product Mapping Product Sync Provider Profiles Security
Provider Profiles 1.2.1STABLE
Guided renderer maintenance release
Provider Profiles

Fixed

  • Prevented the Lemon Squeezy guided integration editor from rendering twice during initial provider setup.
  • Added a render re-entry guard so provider defaults can trigger Core events without duplicating the guided form.

Improved

  • Preserved existing provider credentials and integration state while correcting the editor rendering path.
Provider Profiles 1.2.0FEATURE RELEASE
Lemon Squeezy provider profile
Provider Profiles

Added

  • Added a guided Lemon Squeezy integration profile.
  • Added API credential and webhook signing secret handling.
  • Added provider-oriented product and variant discovery support.
  • Added compatibility hooks for Product Mapping and Product Sync workflows.

Security

  • Added signed webhook verification support using the provider signing secret.
  • Kept saved credentials hidden from normal editor output.
Product Sync 1.0.1MAINTENANCE
Per-provider synchronization fix
Product Sync

Fixed

  • Fixed the individual “Sync now” action so the provider form submits correctly.
  • Removed the submit-button disable behavior that prevented browser POST submission.

Improved

  • Retained a visible busy state without interrupting the synchronization request.
Product Mapping 1.1.0UI RELEASE
Professional mapping interface
Product Mapping

Improved

  • Added Discovered, Mapped, Unmapped and Live Routes summary views.
  • Added search, filters, richer product cards and clearer target controls.
  • Improved EVO Product / WooCommerce target selection and membership-plan relationship visibility.

Architecture

  • Continued using Core-owned mapping data rather than creating a parallel extension database.
Publishing rule: only publish release notes that correspond to an actual released package. Experimental or abandoned branches should not appear as if they were part of the stable public history.
Release Note Standard

Every Entry Should Answer Three Questions.

What changed?

State the feature, fix or behavior change in direct language.

Which component changed?

Identify Core, Product Mapping, Product Sync, Provider Profiles or another extension explicitly.

Does the user need to act?

Call out migrations, credential changes, new settings or any upgrade step when required.

Change Types

Use Consistent Labels.

AddedNew capabilityA new feature, provider profile, setting or workflow.
ImprovedExisting behavior improvedUX, performance, clarity or maintainability improvements.
FixedBug resolvedCorrection to functionality that should already have worked.
SecuritySecurity-related changeVerification, credential handling or another security-sensitive update.
Stay Current

Know What Changed Before You Update.

Use the changelog together with Update Manager and documentation to understand each release before applying it to a production WordPress site.