| 1 |
# Changelog |
| 2 |
|
| 3 |
Recent release history for CartFlows. For the full changelog, see `readme.txt` in the plugin root. |
| 4 |
|
| 5 |
--- |
| 6 |
|
| 7 |
## v2.2.1 — 2026-02-18 (current) |
| 8 |
|
| 9 |
**Bug Fixes** |
| 10 |
- Fixed capability check for admin operations (`cartflows_manage_flows_steps`) |
| 11 |
- Fixed duplicate product being added to cart in certain flows (`CF-1141`) |
| 12 |
- Fixed Tutor LMS product not supported in CartFlows checkout (`CF-955`) |
| 13 |
- Fixed non-postname permalink structure support for flow/step URLs (#2033) |
| 14 |
|
| 15 |
**Improvements** |
| 16 |
- Added CartFlows pointer library for admin UI tooltips (`CF-1095`) |
| 17 |
- Updated allowed pages for side popup display |
| 18 |
- Updated asset files for release |
| 19 |
|
| 20 |
**Commits in this release:** |
| 21 |
- `85ce08242` — Fixed capability and updated asset files |
| 22 |
- `b267670da` — Updated allowed pages for side popup |
| 23 |
- `1c8664370` — Updated release date |
| 24 |
- `844c52a3a` — Updated changelog, version, stable tag for release v2.2.1 |
| 25 |
|
| 26 |
--- |
| 27 |
|
| 28 |
## v2.2.0 |
| 29 |
|
| 30 |
**Features & Improvements** |
| 31 |
- Various enhancements (see `readme.txt` for full v2.2.0 notes) |
| 32 |
|
| 33 |
--- |
| 34 |
|
| 35 |
## Generating the Changelog |
| 36 |
|
| 37 |
To generate a formatted changelog from git history: |
| 38 |
|
| 39 |
```bash |
| 40 |
# View recent commits grouped by type |
| 41 |
git log --oneline --no-merges -50 |
| 42 |
|
| 43 |
# View commits since a specific tag |
| 44 |
git log v2.2.0..HEAD --oneline --no-merges |
| 45 |
``` |
| 46 |
|
| 47 |
The conventional commit format used by CartFlows maps to changelog sections: |
| 48 |
|
| 49 |
| Commit prefix | Changelog section | |
| 50 |
|--------------|------------------| |
| 51 |
| `feat:` | Features | |
| 52 |
| `fix:` | Bug Fixes | |
| 53 |
| `chore:` | Internal / Dependencies | |
| 54 |
| `refactor:` | Improvements | |
| 55 |
| `docs:` | Documentation | |
| 56 |
| `test:` | Testing | |
| 57 |
|
| 58 |
--- |
| 59 |
|
| 60 |
## Version Numbers |
| 61 |
|
| 62 |
CartFlows follows [](https://semver.org/Semantic Versioning](https://semver.org/](https://semver.org/): |
| 63 |
|
| 64 |
- **Major** (`X.0.0`) — Breaking changes (rare) |
| 65 |
- **Minor** (`2.X.0`) — New features, backward-compatible |
| 66 |
- **Patch** (`2.2.X`) — Bug fixes, minor improvements |
| 67 |
|
| 68 |
The version is defined in three places (all must be updated for a release): |
| 69 |
|
| 70 |
| File | Field | |
| 71 |
|------|-------| |
| 72 |
| `cartflows.php` | `Version:` plugin header | |
| 73 |
| `cartflows.php` | `CARTFLOWS_VER` constant | |
| 74 |
| `package.json` | `version` field | |
| 75 |
| `readme.txt` | `Stable tag:` | |
| 76 |
|
| 77 |
--- |
| 78 |
|
| 79 |
## Related Pages |
| 80 |
|
| 81 |
- [](Deployment-GuideDeployment-Guide](Deployment-Guide](Deployment-Guide) |
| 82 |
- [](Contributing-GuideContributing-Guide](Contributing-Guide](Contributing-Guide) |
| 83 |
- [](HomeHome](Home](Home) |
| 84 |
|