## Information

Releases use the following numbering system:
**{major}.{minor}.{incremental}**

* major: Major refactoring or rewrite - make sure you read and test very carefully!
* minor: Breaking change in some circumstances, or a new feature. Read carefully and make sure you understand the impact of the change.
* incremental: A "safe" change / improvement. Should *always* be safe to upgrade.

* **[BC]**: Items marked with [BC] indicate a breaking change that will require updates to your code if you are using that code in your extension.

## Release 3.9.0 (2025-10-06)

* Fix #321 disabling of discounts on Admin form
* Fix discount code permissions
* #335 Only show enabled codes by default. Add count to pager
* #336 Add support for membership discounts and return a description that can be used on LineItems etc
* #337 Make description work for fixed amount discount
* #328 Avoid considering discounts that don't meet application criteria.
* #324 Add per-user discount setting
* Fix php warning with json_decode
* Schema - Fix entity name

## Release 3.8.13 (2024-09-22)

* #322 Resolve "User with 'administer CiviDiscount' permission unable to administer CiviDiscount"

## Release 3.8.12 (2024-05-03)

* #320 fix crash when event has no price set ID
* #304 Regenerate DAO files without getReferenceColumns boilerplate
* Fix post process to not attempt to access _params on participant form

## Release 3.8.11 (2024-04-07)

* #312 exclude event templates
* #312 add pseudoconstant refs for item cols
* Fixes #310 price field ID discounts treated as event IDs
* Added Api4 Action verify
* Fix discount to use largest amount, for given item
* Fix membership discounts not applying on main contribution page
* Fix for AbstractEditPayment getContributionID not yet public
* #308 Fix any-event discount
* Support exporting DiscountCodes
* Code cleanup / remove legacy code.
* Fixes #289 Ensure currency is passed to discount function
* Fix error where getPriceSetID is proteced on member form (to fix upstream)
* Reduce apiv3 usage
* dev/core#2727 Fix auto-discounts for event-price set rows
* Update hook_civicrm_permission to use new format

## Release 3.8.10 (2024-01-10)

* Fixes #306, #303 Fix handling of non-membership line items
* Fix handling for register task
* Stop using broken legacy attempt to get contact ID

## Release 3.8.9 (2023-12-22)

* Convert usage page & tabs to SearchKit display.
* Convert Discount List to SearchKit display.
* Update autogenerated code and replace legacy code (min supported version 5.69).

## Release 3.8.8 (2023-07-10)

* [!287](https://lab.civicrm.org/extensions/cividiscount/-/merge_requests/287) - Correct discount tracking when multiple memberships
* [!276](https://lab.civicrm.org/extensions/cividiscount/-/merge_requests/276) - Fix contact_id assignment from participantId in URL
* [!285](https://lab.civicrm.org/extensions/cividiscount/-/merge_requests/285) - Fix broken 'any event' discount code
* [!287](https://lab.civicrm.org/extensions/cividiscount/-/merge_requests/287) - Replace JQueryUI icon sprites with Font Awesome
* [!291](https://lab.civicrm.org/extensions/cividiscount/-/merge_requests/291) - Don't show discounts on entity types that have no available discounts
* [!296](https://lab.civicrm.org/extensions/cividiscount/-/merge_requests/296) - Drop unused columns track and event_id from cividiscount_track
* [!295](https://lab.civicrm.org/extensions/cividiscount/-/merge_requests/295) - Move entity declarations to files and add unit test

## Release 3.8.7 (2022-11-28)

* [!281](https://lab.civicrm.org/extensions/cividiscount/-/merge_requests/281) - Mega metadata update
* [!280](https://lab.civicrm.org/extensions/cividiscount/-/merge_requests/280) - Fix PHP 8 error for Participant Change Selections
* [!278](https://lab.civicrm.org/extensions/cividiscount/-/merge_requests/278) - Added intval after += to resolve TypeError

## Release 3.8.6 (2022-09-16)


* [!274](https://lab.civicrm.org/extensions/cividiscount/-/merge_requests/274) - Fix [#291](https://lab.civicrm.org/extensions/cividiscount/-/issues/291) date column sorting.
* [!275](https://lab.civicrm.org/extensions/cividiscount/-/merge_requests/275) - For event multiple participants don't require payment details if all priceset amounts are zero (ie. 100% discount).

