[NFC] first pass 5.57 release notes
authorAlice Frumin <alicefrumin@alices-mbp-2.lan>
Wed, 28 Dec 2022 03:24:38 +0000 (22:24 -0500)
committerAlice Frumin <alicefrumin@alices-mbp-2.lan>
Thu, 29 Dec 2022 03:19:37 +0000 (22:19 -0500)
release-notes/5.57.0.md

index 8911492b3ad538fe9cd30463af972d2508438c74..861f7b71e8c16af92d31c558abed7f4ab9edb0d8 100644 (file)
@@ -13,432 +13,717 @@ Released January 4, 2023
 
 | *Does this version...?*                                         |         |
 |:--------------------------------------------------------------- |:-------:|
-| Fix security vulnerabilities?                                   |         |
-| Change the database schema?                                     |         |
-| Alter the API?                                                  |         |
-| Require attention to configuration options?                     |         |
-| Fix problems installing or upgrading to a previous version?     |         |
-| Introduce features?                                             |         |
-| Fix bugs?                                                       |         |
+| Fix security vulnerabilities?                                   |   no    |
+| **Change the database schema?**                                 | **yes** |
+| **Alter the API?**                                              | **yes** |
+| **Require attention to configuration options?**                 | **yes** |
+| **Fix problems installing or upgrading to a previous version?** | **yes** |
+| **Introduce features?**                                         | **yes** |
+| **Fix bugs?**                                                   | **yes** |
 
 ## <a name="features"></a>Features
 
 ### Core CiviCRM
 
-- **crm- Missing Summary ([24990](https://github.com/civicrm/civicrm-core/pull/24990))**
+- **APIv4 Autocomplete - Support searching by ID, customize some entities
+  ([24976](https://github.com/civicrm/civicrm-core/pull/24976))**
 
-## <a name="bugs"></a>Bugs resolved
+  Brings the new APIv4 Autocomplete widget up to the level of the v3
+  EntityRef, and in several ways surpasses it.
 
-### Core CiviCRM
+- **Use APIv4-based Autocomplete widget throughout SearchKit, Afform & API
+  Explorer ([24974](https://github.com/civicrm/civicrm-core/pull/24974) and
+  [25111](https://github.com/civicrm/civicrm-core/pull/25111))**
 
-- **dev/core#4039 - Restore ability to have fractional quantity for text price fields ([25213](https://github.com/civicrm/civicrm-core/pull/25213))**
+  Switches APIv4-based UIs to consistently use the new Autocomplete widget
+  instead of the old v3-based entityRef.
 
-- **dev/core#4038 import contribution fixes in update mode ([25204](https://github.com/civicrm/civicrm-core/pull/25204))**
+- **default token filter
+  ([25031](https://github.com/civicrm/civicrm-core/pull/25031))**
 
-- **SearchKit - Fix option loading & rendering for in-place edit ([25197](https://github.com/civicrm/civicrm-core/pull/25197))**
+  Adds a token filter of "default", ex:
+  {civicrm_membership.name|default:"Not a member"} will default to "Not a
+  Member".
 
-- **Fix 'cannot determine default entity' error on New Batch page ([25189](https://github.com/civicrm/civicrm-core/pull/25189))**
+- **Update location tokens for Contact to new apiv4 style
+  ([25032](https://github.com/civicrm/civicrm-core/pull/25032))**
 
-- **Fix miscoordination between CiviUnitTestCase/CiviEnvBuilder. Fix flaky ConformanceTest. ([25177](https://github.com/civicrm/civicrm-core/pull/25177))**
+  Migrates location tokens for contacts to use the APIv4 style.
 
-- **CRM_Utils_FileTest - Fix compatibility with private data folders ([25160](https://github.com/civicrm/civicrm-core/pull/25160))**
+- **Bool token formatting
+  ([dev/core#3962](https://lab.civicrm.org/dev/core/-/issues/3962):
+  [24923](https://github.com/civicrm/civicrm-core/pull/24923))**
 
-- **fixes core#4027 - don't crash when a contribution has no line items ([25145](https://github.com/civicrm/civicrm-core/pull/25145))**
+  Adds 'boolean' as a filter for tokens ex:
+  `{if {contact.current_employer|bool}} ({contact.current_employer}){/if}`.
 
-- **getSiteStats - Use consistent report format ([25158](https://github.com/civicrm/civicrm-core/pull/25158))**
+- **improve social sharing footer
+  ([25003](https://github.com/civicrm/civicrm-core/pull/25003))**
 
-- **Flexmailer: Prevent broken urls containing hyphens when click tracking is enabled for plain text mailings ([25149](https://github.com/civicrm/civicrm-core/pull/25149))**
+  Improves Social Sharing footer text.
 
-- **[NFC] Update testGetSiteStats to match earlier name change ([25150](https://github.com/civicrm/civicrm-core/pull/25150))**
+- **Use domain id in log file name making it easy to find correct log file
+  ([dev/core#3136](https://lab.civicrm.org/dev/core/-/issues/3136):
+  [24893](https://github.com/civicrm/civicrm-core/pull/24893))**
 
-- **Remove noisly deprecated function PDFLetterCommon::postProcess ([25108](https://github.com/civicrm/civicrm-core/pull/25108))**
+  Improves logging by incorporating the domain id.
 
-- **Fix enotice on user dash - when user has membership/s & debugging enabled ([25140](https://github.com/civicrm/civicrm-core/pull/25140))**
+- **Add entity-types-php mixin
+  ([24947](https://github.com/civicrm/civicrm-core/pull/24947))**
 
-- **Stop using single hard-coded value array (clean up from previous refactors) ([25137](https://github.com/civicrm/civicrm-core/pull/25137))**
+  Adds a new mixin to scan for entity types that civix could be adapted to
+  take advantage of it.
 
-- **ensure currency is included to avoid translation problems ([24798](https://github.com/civicrm/civicrm-core/pull/24798))**
+- **Expose created date column in contact reports
+  ([dev/core#3992](https://lab.civicrm.org/dev/core/-/issues/3992):
+  [24978](https://github.com/civicrm/civicrm-core/pull/24978))**
 
-- **Cast membership object as array before passing to getMembershipStatusByDate() ([25139](https://github.com/civicrm/civicrm-core/pull/25139))**
+  Adds "Created Date" as a column option for contact reports.
 
-- **[NFC] Update instructions for running regen online ([25138](https://github.com/civicrm/civicrm-core/pull/25138))**
+- **Add Validate and Import search kit actions to import search displays
+  ([24821](https://github.com/civicrm/civicrm-core/pull/24821))**
 
-- **SearchKit - Include html columns in spreadsheet download ([25126](https://github.com/civicrm/civicrm-core/pull/25126))**
+  Adds validate and import SearchKit actions to import search displays.
 
-- **Remove always-true ifs ([25136](https://github.com/civicrm/civicrm-core/pull/25136))**
+- **Make SearchKit Required
+  ([24739](https://github.com/civicrm/civicrm-core/pull/24739))**
 
-- **Fold `processGreetingTemplate` function only called from one place into caller, deprecate ([24925](https://github.com/civicrm/civicrm-core/pull/24925))**
+  Makes it so SearchKit cannot be disabled.
 
-- **Fix core#7016 in a second location ([25129](https://github.com/civicrm/civicrm-core/pull/25129))**
+- **SearchKit - Add enable/disable tasks
+  ([25084](https://github.com/civicrm/civicrm-core/pull/25084))**
 
-- **Make flexmailer mandatory ([25110](https://github.com/civicrm/civicrm-core/pull/25110))**
+  Adds enable and disable tasks (when relevant) to SearchKit.
 
-- **#24911 Forward port to master / 5.57 ([25134](https://github.com/civicrm/civicrm-core/pull/25134))**
+- **SearchKit - Include html columns in spreadsheet download
+  ([25126](https://github.com/civicrm/civicrm-core/pull/25126))**
 
-- **always define showCMS ([25125](https://github.com/civicrm/civicrm-core/pull/25125))**
+  Adds html-type columns to SearchKit spreadsheet downloads, by formatting them as
+  plain text.
 
-- **(NFC) dev/core#4008 - Afform - More coverage for symbol-scanner ([25131](https://github.com/civicrm/civicrm-core/pull/25131))**
+- **SearchKit displays: be able to add description so end user knows the context
+  ([dev/core#3980](https://lab.civicrm.org/dev/core/-/issues/3980):
+  [24985](https://github.com/civicrm/civicrm-core/pull/24985) and
+  [24942](https://github.com/civicrm/civicrm-core/pull/24942))**
 
-- **release-notes/5.56.0.md - Add last minute updates ([25135](https://github.com/civicrm/civicrm-core/pull/25135))**
+  Exposes SavedSearch descriptions in SearchKit to admins.
 
-- **[REF][PHP8.1] Fix a couple of issues where passing in NULL in string … ([24911](https://github.com/civicrm/civicrm-core/pull/24911))**
+- **SearchKit - Add clone button for search displays
+  ([24899](https://github.com/civicrm/civicrm-core/pull/24899))**
 
-- **CRM_Utils_System_WordPress - Drop unused variable ([25132](https://github.com/civicrm/civicrm-core/pull/25132))**
+  Adds a clone button to easily make a copy of a search display.
 
-- **5.56 ([25130](https://github.com/civicrm/civicrm-core/pull/25130))**
+- **Hide deprecated fields from SearchKit & Afform
+  ([25113](https://github.com/civicrm/civicrm-core/pull/25113))**
 
-- **SearchKit - Fix unit test so sort param actually does something ([25133](https://github.com/civicrm/civicrm-core/pull/25133))**
+  Hides any fields marked @deprecated from the SearchKit & Afform UI.
 
-- **Avoid symbol scan errors in oauth-client help text ([24998](https://github.com/civicrm/civicrm-core/pull/24998))**
+- **Afform - Support ContactType-specific tabs and blocks
+  ([25069](https://github.com/civicrm/civicrm-core/pull/25069))**
 
-- **remove unused template vars from Profile Form ([25124](https://github.com/civicrm/civicrm-core/pull/25124))**
+  Allows one to create Contact Type specific tabs and blocks in Afform.
 
-- **dev/core#1532 - Upgrade message about old civicase activity revisions ([25119](https://github.com/civicrm/civicrm-core/pull/25119))**
+- **Afform - relationships fill from other entity
+  ([dev/core#3453](https://lab.civicrm.org/dev/core/-/issues/3453):
+  [25001](https://github.com/civicrm/civicrm-core/pull/25001))**
 
-- **remove civimail-spooler script ([25122](https://github.com/civicrm/civicrm-core/pull/25122))**
+  Enables contacts to be auto-loaded on Afforms based on their relationships to
+  other contacts.
 
-- **remove unused code in Profile template ([25121](https://github.com/civicrm/civicrm-core/pull/25121))**
+- **Afform - Customizable APIv4-based Autocomplete widget for EntityRef fields
+  ([24832](https://github.com/civicrm/civicrm-core/pull/24832))**
 
-- **dev/core#4020 Remove old recaptcha options ([25098](https://github.com/civicrm/civicrm-core/pull/25098))**
+  Switches all Afform EntityRef fields to use the new APIv4-based Autocomplete
+  widget.
 
-- **Hide deprecated fields from SearchKit & Afform ([25113](https://github.com/civicrm/civicrm-core/pull/25113))**
+- **Support multiple contact_type in hook_civicrm_tabset
+  ([25101](https://github.com/civicrm/civicrm-core/pull/25101))**
 
-- **5.56 to master ([25118](https://github.com/civicrm/civicrm-core/pull/25118))**
+  Improves `hook_civicrm_tabset` to support an array of contact types for each
+  tab on the contact summary page.
 
-- **5.56 ([25117](https://github.com/civicrm/civicrm-core/pull/25117))**
+- **Adding better translation for ThankYou page tpl for recurring messaging
+  ([25068](https://github.com/civicrm/civicrm-core/pull/25068))**
 
-- **APIv4 Explorer - autocomplete cleanup ([25111](https://github.com/civicrm/civicrm-core/pull/25111))**
+  Improves translation of the thank you page template.
 
-- **dev/core#4014 add ext-fileinto php extension to composer ([25115](https://github.com/civicrm/civicrm-core/pull/25115))**
+- **Add FormBuilder forms to Civiimport
+  ([25072](https://github.com/civicrm/civicrm-core/pull/25072))**
 
-- **Metadata - Add default labelField to all DAO entities ([25099](https://github.com/civicrm/civicrm-core/pull/25099))**
+  Makes Civiimport forms embeddable.
 
-- **Remove unused, deprecated class `CRM_Activity_Form_Task_PDFLetterCommon` ([25106](https://github.com/civicrm/civicrm-core/pull/25106))**
+- **Create MVP UI for imports when background queue processing is taking place
+  ([25041](https://github.com/civicrm/civicrm-core/pull/25041))**
 
-- **Support multiple contact_type in hook_civicrm_tabset ([25101](https://github.com/civicrm/civicrm-core/pull/25101))**
+  Creates a UI for imports when background queue processing is taking place.
 
-- **Remove further usage of 'preferred_mail_format' ([25109](https://github.com/civicrm/civicrm-core/pull/25109))**
+- **Use search display to view errors when using Civi-import extension
+  ([25038](https://github.com/civicrm/civicrm-core/pull/25038))**
 
-- **dev/core#1634 Deprecate unused activity columns ([25112](https://github.com/civicrm/civicrm-core/pull/25112))**
+  Replaces the link to download the csv with a link to view the search display
+  if civiimport is enabled, allowing re-doing the import within the UI.
 
-- **Rename test class to reflect tested class ([25107](https://github.com/civicrm/civicrm-core/pull/25107))**
+- **Add Imports search
+  ([25081](https://github.com/civicrm/civicrm-core/pull/25081))**
 
-- **improve social sharing footer ([25003](https://github.com/civicrm/civicrm-core/pull/25003))**
+  Adds a user interface to search imports.
 
-- **Duplicate `Activity::importableFields` to upgrader & increase deprecation ([25088](https://github.com/civicrm/civicrm-core/pull/25088))**
+- **Add 'my imports' to Reports navigation (in civimport extension)
+  ([25086](https://github.com/civicrm/civicrm-core/pull/25086))**
 
-- **5.56 ([25103](https://github.com/civicrm/civicrm-core/pull/25103))**
+  Adds a new link to the Navigation bar for sites with the civiimport extension:
+  "my imports".
 
-- **Add handling to token processor for double http in url tokens ([25078](https://github.com/civicrm/civicrm-core/pull/25078))**
+- **Turn 'From' dropdown in 'Send Email' into a searchable select2
+  ([24957](https://github.com/civicrm/civicrm-core/pull/24957))**
 
-- **Remove handling for legacy `preferred_mail_format` ([25076](https://github.com/civicrm/civicrm-core/pull/25076))**
+  Improves the user experience of the "Send Email" form by making the "From"
+  dropdown a searchable select2.
 
-- **Remove deprecated PdfLetterCommon class - membership ([25060](https://github.com/civicrm/civicrm-core/pull/25060))**
+### CiviCase
 
-- **Test cleanup, remove calls to deprecated financial BAO functions ([25085](https://github.com/civicrm/civicrm-core/pull/25085))**
+- **Migrate case activity revisions to trigger-based logging
+  (Work Towards [dev/core#1532](https://lab.civicrm.org/dev/core/-/issues/1532):
+  [25119](https://github.com/civicrm/civicrm-core/pull/25119))**
 
-- **Add noisy deprecation to `getContactTokenReplacement` ([25077](https://github.com/civicrm/civicrm-core/pull/25077))**
+  Makes Activity revisions unselectable to be filterable in UI and adds an
+  upgrade message regarding case activity changes.
 
-- **Make SearchKit Required ([24739](https://github.com/civicrm/civicrm-core/pull/24739))**
+### CiviEvent
 
-- **SearchKit - Fix crashy-ness when an Afform contains a deleted search ([25091](https://github.com/civicrm/civicrm-core/pull/25091))**
+- **add event entity to formbuilder
+  ([24991](https://github.com/civicrm/civicrm-core/pull/24991))**
 
-- **5.56 ([25096](https://github.com/civicrm/civicrm-core/pull/25096))**
+  Makes the `Event` entity available in Afform.
 
-- **[php 8] Update pear/mail to 1.5 ([25092](https://github.com/civicrm/civicrm-core/pull/25092))**
+- **Make it clear that same email for event registrations allows multiple
+  registrations per contact
+  ([24649](https://github.com/civicrm/civicrm-core/pull/24649))**
 
-- **SearchKit - Fix Campaign, State, Country selectors (again) ([25053](https://github.com/civicrm/civicrm-core/pull/25053))**
+  Changes the field label text for the event setting option "Same email
+  address?" to "Allow same email and multiple registrations?"
 
-- **fix numfmt error when pager limit is set in Civi settings ([25070](https://github.com/civicrm/civicrm-core/pull/25070))**
+### CiviMail
 
-- **5.56 to master ([25090](https://github.com/civicrm/civicrm-core/pull/25090))**
+- **Make flexmailer mandatory
+  ([25110](https://github.com/civicrm/civicrm-core/pull/25110))**
 
-- **Test cleanup, stop using legacy financial bao methods ([25083](https://github.com/civicrm/civicrm-core/pull/25083))**
+  Makes the `flexmailer` extension required by default.
 
-- **Add 'my imports' to Reports navigation (in civimport extension) ([25086](https://github.com/civicrm/civicrm-core/pull/25086))**
+- **Messagetemplate schema changes
+  ([24992](https://github.com/civicrm/civicrm-core/pull/24992))**
 
-- **SearchKit - Add enable/disable tasks ([25084](https://github.com/civicrm/civicrm-core/pull/25084))**
+  Makes the 'MessageTemplate' entity available in APIv4.
 
-- **Fix query to use standard `CRM_Core_DAO::executeQuery` ([25075](https://github.com/civicrm/civicrm-core/pull/25075))**
+- **Adding mailing events (unsub, open, clicks, etc) to API4 (Work Towards
+  [dev/core#3965](https://lab.civicrm.org/dev/core/-/issues/3965):
+  [25059](https://github.com/civicrm/civicrm-core/pull/25059) and
+  [25056](https://github.com/civicrm/civicrm-core/pull/25056))**
 
-- **Add FormBuilder forms to Civiimport ([25072](https://github.com/civicrm/civicrm-core/pull/25072))**
+  Adds Mailing entities to APIv4 and makes MessageTemplate.master_id fully
+  joinable.
 
-- **Adding better translation for ThankYou page tpl for recurring messaging ([25068](https://github.com/civicrm/civicrm-core/pull/25068))**
+## <a name="bugs"></a>Bugs resolved
 
-- **Follow up on EntityFinancialAccount delete ([25082](https://github.com/civicrm/civicrm-core/pull/25082))**
+### Core CiviCRM
 
-- **Do not `set` cache in cache-bypass mode, since we are bypassing `get` ([25073](https://github.com/civicrm/civicrm-core/pull/25073))**
+- **APIv3 - Use the Exception rather than the rule
+  ([24977](https://github.com/civicrm/civicrm-core/pull/24977))**
 
-- **Add Imports search ([25081](https://github.com/civicrm/civicrm-core/pull/25081))**
+  Converts APIv3 in Smarty and Ajax to use exceptions instead of
+  `CRM_Core_TemporaryErrorScope`.
 
-- **Deprecate `CRM_Financial_BAO_EntityFinancialAccount::del()` ([25026](https://github.com/civicrm/civicrm-core/pull/25026))**
+- **OptionValues & search kit - missing metadata?
+  (Work Towards [dev/core#3921](https://lab.civicrm.org/dev/core/-/issues/3921):
+  [24984](https://github.com/civicrm/civicrm-core/pull/24984),
+  [24990](https://github.com/civicrm/civicrm-core/pull/24990),
+  [24967](https://github.com/civicrm/civicrm-core/pull/24967),
+  [24969](https://github.com/civicrm/civicrm-core/pull/24969),
+  [24968](https://github.com/civicrm/civicrm-core/pull/24968) and
+  [24970](https://github.com/civicrm/civicrm-core/pull/24970))**
 
-- **Regenerate ContactType DAO ([25079](https://github.com/civicrm/civicrm-core/pull/25079))**
+  Adds html definition to schema for is_active and default field.
 
-- **FieldSpec - Generate better default field titles for DAOs ([25080](https://github.com/civicrm/civicrm-core/pull/25080))**
+- **Support ES6 (2015) in civilint: jshint config update
+  ([24975](https://github.com/civicrm/civicrm-core/pull/24975))**
 
-- **Afform - Support ContactType-specific tabs and blocks ([25069](https://github.com/civicrm/civicrm-core/pull/25069))**
+  Fixes errors on ES6 code in civilint.
 
-- **Fix test class not to use discouraged function ([25074](https://github.com/civicrm/civicrm-core/pull/25074))**
+- **Can't search contact with only number
+  ([dev/core#3735](https://lab.civicrm.org/dev/core/-/issues/3735):
+  [24727](https://github.com/civicrm/civicrm-core/pull/24727))**
 
-- **Remove legacyCreateMultiple function ([25048](https://github.com/civicrm/civicrm-core/pull/25048))**
+  Fixes getlist retrieve with id.
 
-- **SearchKit - Minor wording change ([25071](https://github.com/civicrm/civicrm-core/pull/25071))**
+- **Evaluate if any indexed fields are unused
+  (Work Towards [dev/core#1634](https://lab.civicrm.org/dev/core/-/issues/1634):
+  [25112](https://github.com/civicrm/civicrm-core/pull/25112))**
 
-- **Remove another call to deprecated `CRM_Contribute_PseudoConstant::contributionStatus` ([24590](https://github.com/civicrm/civicrm-core/pull/24590))**
+  Deprecates unused activity columns.
 
-- **Create MVP UI for imports when background queue processing is taking place ([25041](https://github.com/civicrm/civicrm-core/pull/25041))**
+- **Example data leaks from the live database
+  ([dev/core#3981](https://lab.civicrm.org/dev/core/-/issues/3981):
+  [24945](https://github.com/civicrm/civicrm-core/pull/24945))**
 
-- **dev/core#3965 APIv4 - Add Mailing entities for SearchKit ([25059](https://github.com/civicrm/civicrm-core/pull/25059))**
+  Fixes examples to use 0 rather than a possibly-real contact_id.
 
-- **Log API Authorization failed errors ([25030](https://github.com/civicrm/civicrm-core/pull/25030))**
+- **Add default label field for RelationshipType entity
+  ([25021](https://github.com/civicrm/civicrm-core/pull/25021))**
 
-- **Use IP address helper method consistently ([25065](https://github.com/civicrm/civicrm-core/pull/25065))**
+  Fixes a bug in Afform that prevents relationships from being created.
 
-- **APIv4 - Always allow anonymous autocomplete action access ([24980](https://github.com/civicrm/civicrm-core/pull/24980))**
+- **[documentation] fileinfo PHP extension not listed as requirement
+  ([dev/core#4014](https://lab.civicrm.org/dev/core/-/issues/4014):
+  [25115](https://github.com/civicrm/civicrm-core/pull/25115))**
 
-- **[REF] ContactType BAO - Simplify getAllContactTypes ([25064](https://github.com/civicrm/civicrm-core/pull/25064))**
+  Adds ext-fileinto php extension to composer.
 
-- **Fix Import summary to differentiate between 'valid' and 'imported' ([25040](https://github.com/civicrm/civicrm-core/pull/25040))**
+- **Symfony 4.3+: CI warnings due to change in EventDispatcherInterface
+  ([dev/core#2316](https://lab.civicrm.org/dev/core/-/issues/2316):
+  [24132](https://github.com/civicrm/civicrm-core/pull/24132))**
 
-- **SearchKit - Fix display count when updating items on the last page ([24987](https://github.com/civicrm/civicrm-core/pull/24987))**
+- **Remove unsupported reCAPTCHA options
+  ([dev/core#4020](https://lab.civicrm.org/dev/core/-/issues/4020):
+  [25098](https://github.com/civicrm/civicrm-core/pull/25098))**
 
-- **5.56 to master ([25062](https://github.com/civicrm/civicrm-core/pull/25062))**
+- **SearchKit - Fix crashy-ness when an Afform contains a deleted search
+  ([25091](https://github.com/civicrm/civicrm-core/pull/25091))**
 
-- **Make MessageTemplate.master_id fully joinable ([25056](https://github.com/civicrm/civicrm-core/pull/25056))**
+- **SearchKit - Fix campaign, event & primary address dropdowns
+  ([24963](https://github.com/civicrm/civicrm-core/pull/24963))**
 
-- **Afform - Autofill contacts by relationship ([25001](https://github.com/civicrm/civicrm-core/pull/25001))**
+- **SearchKit - Fix Campaign, State, Country selectors (again)
+  ([25053](https://github.com/civicrm/civicrm-core/pull/25053))**
 
-- **Merge 5.56 to master ([25057](https://github.com/civicrm/civicrm-core/pull/25057))**
+- **SearchKit - Fix option loading & rendering for in-place edit
+  ([25197](https://github.com/civicrm/civicrm-core/pull/25197))**
 
-- **Fix Relationship to permit disabled relationships as duplicates & fix test ([25047](https://github.com/civicrm/civicrm-core/pull/25047))**
+- **SearchKit - Fix display count when updating items on the last page
+  ([24987](https://github.com/civicrm/civicrm-core/pull/24987))**
 
-- **fixes dash line appended to the contribution amounts if label is empty ([25033](https://github.com/civicrm/civicrm-core/pull/25033))**
+- **afform/oauth-client - don't call stat on null
+  ([25035](https://github.com/civicrm/civicrm-core/pull/25035))**
 
-- **Remove deprecated, probably long-broken function `replaceOrgTokens` ([25051](https://github.com/civicrm/civicrm-core/pull/25051))**
+- **Afform - Fix multivalue entityRef fields
+  ([24966](https://github.com/civicrm/civicrm-core/pull/24966))**
 
-- **Add noisy deprecation to deprecated contribution token functions ([25050](https://github.com/civicrm/civicrm-core/pull/25050))**
+- **Avoid symbol scan errors in oauth-client help text
+  ([24998](https://github.com/civicrm/civicrm-core/pull/24998))**
 
-- **Remove deprecated token function ([25049](https://github.com/civicrm/civicrm-core/pull/25049))**
+- **Add handling to token processor for double http in url tokens
+  ([25078](https://github.com/civicrm/civicrm-core/pull/25078))**
 
-- **Pass correct variable type to the hook ([25046](https://github.com/civicrm/civicrm-core/pull/25046))**
+- **FieldSpec - Generate better default field titles for DAOs
+  ([25080](https://github.com/civicrm/civicrm-core/pull/25080))**
 
-- **Test fix - setup is incongruent ([25037](https://github.com/civicrm/civicrm-core/pull/25037))**
+- **Log API Authorization failed errors
+  ([25030](https://github.com/civicrm/civicrm-core/pull/25030))**
 
-- **REF: Consistent variables names in formRule for CRM/Event/Form/Register ([25045](https://github.com/civicrm/civicrm-core/pull/25045))**
+- **Apiv4 Explorer DashboardContact doesn't load dashboards
+  ([dev/core#4021](https://lab.civicrm.org/dev/core/-/issues/4021):
+  [25099](https://github.com/civicrm/civicrm-core/pull/25099))**
 
-- **DAOs are stale ([25043](https://github.com/civicrm/civicrm-core/pull/25043))**
+- **APIv4 - Always allow anonymous autocomplete action access
+  ([24980](https://github.com/civicrm/civicrm-core/pull/24980))**
 
-- **REF: Replace CRM_Utils_Array::value in CRM/Event/Form/Registration ([25042](https://github.com/civicrm/civicrm-core/pull/25042))**
+- **Fix Import summary to differentiate between 'valid' and 'imported'
+  ([25040](https://github.com/civicrm/civicrm-core/pull/25040))**
 
-- **Use search display to view errors when using Civi-import extension ([25038](https://github.com/civicrm/civicrm-core/pull/25038))**
+- **add legend to CMS user creation section
+  ([25002](https://github.com/civicrm/civicrm-core/pull/25002))**
 
-- **Add entity-types-php mixin ([24947](https://github.com/civicrm/civicrm-core/pull/24947))**
+- **Allow Joinables to be added to tables without specifying a base column
+  ([24993](https://github.com/civicrm/civicrm-core/pull/24993))**
 
-- **EntityFinancialAccount - A tale of two BAO classes ([25036](https://github.com/civicrm/civicrm-core/pull/25036))**
+- **AdminUI - Always cleanup saved searches during uninstall
+  ([24760](https://github.com/civicrm/civicrm-core/pull/24760))**
 
-- **Messagetemplate schema changes ([24992](https://github.com/civicrm/civicrm-core/pull/24992))**
+- **Fix Relationship to permit disabled relationships as duplicates & fix test
+  ([25047](https://github.com/civicrm/civicrm-core/pull/25047))**
 
-- **Mailing - Rename DAO files for better short names ([24982](https://github.com/civicrm/civicrm-core/pull/24982))**
+- **Fix api handling of OptionValue defaults
+  ([24938](https://github.com/civicrm/civicrm-core/pull/24938))**
 
-- **afform/oauth-client - don't call stat on null ([25035](https://github.com/civicrm/civicrm-core/pull/25035))**
+- **fix numfmt error when pager limit is set in Civi settings
+  ([25070](https://github.com/civicrm/civicrm-core/pull/25070))**
 
-- **5.56 ([25034](https://github.com/civicrm/civicrm-core/pull/25034))**
+- **Pass correct variable type to the hook
+  ([25046](https://github.com/civicrm/civicrm-core/pull/25046))**
 
-- **Menubar - Fix buggy, slow loader ([25012](https://github.com/civicrm/civicrm-core/pull/25012))**
+- **Do not `set` cache in cache-bypass mode, since we are bypassing `get`
+  ([25073](https://github.com/civicrm/civicrm-core/pull/25073))**
 
-- **Deprecate `CRM_Mailing_BAO_MailingAB::del()` ([25024](https://github.com/civicrm/civicrm-core/pull/25024))**
+- **Fix CiviCRM Home/Hide/Logout translation
+  ([25000](https://github.com/civicrm/civicrm-core/pull/25000))**
 
-- **Update location tokens for Contact to new apiv4 style ([25032](https://github.com/civicrm/civicrm-core/pull/25032))**
+- **Fix query to use standard `CRM_Core_DAO::executeQuery`
+  ([25075](https://github.com/civicrm/civicrm-core/pull/25075))**
 
-- **default token filter ([25031](https://github.com/civicrm/civicrm-core/pull/25031))**
+- **Don't allow selection of deleted contacts as email recipients
+  ([24898](https://github.com/civicrm/civicrm-core/pull/24898))**
 
-- **ajax batchSave() method should be static, php8 compatibility ([25029](https://github.com/civicrm/civicrm-core/pull/25029))**
+- **FourSeven Upgrade: disable i18nrewrite to avoid multilingual fatal
+  ([24960](https://github.com/civicrm/civicrm-core/pull/24960))**
 
-- **5.56 ([25027](https://github.com/civicrm/civicrm-core/pull/25027))**
+- **always define showCMS
+  ([25125](https://github.com/civicrm/civicrm-core/pull/25125))**
 
-- **More del() deprecations in favour of standard deleteRecord() ([25006](https://github.com/civicrm/civicrm-core/pull/25006))**
+- **Use fastArray cache for js_strings
+  ([24989](https://github.com/civicrm/civicrm-core/pull/24989))**
 
-- **Cleanup in test class ([25022](https://github.com/civicrm/civicrm-core/pull/25022))**
+- **(alternate) Sentence runs together since period is inside the if block
+  ([25005](https://github.com/civicrm/civicrm-core/pull/25005))**
 
-- **Add default label field for RelationshipType entity ([25021](https://github.com/civicrm/civicrm-core/pull/25021))**
+- **Don't crash ContributionView when participant fields are null
+  ([24906](https://github.com/civicrm/civicrm-core/pull/24906))**
 
-- **More BAO `del()` deprecations ([25019](https://github.com/civicrm/civicrm-core/pull/25019))**
+- **Fix PHP Notice: Undefined offset in _civicrm_member_roles_sync()
+  ([661](https://github.com/civicrm/civicrm-drupal/pull/661))**
 
-- **Deprecate `CRM_Event_BAO_Event::del()` in favour of `deleteRecord()` ([25018](https://github.com/civicrm/civicrm-core/pull/25018))**
+- **Menubar - Fix buggy, slow loader
+  ([25012](https://github.com/civicrm/civicrm-core/pull/25012))**
 
-- **Deprecate `CRM_Contact_BAO_Relationship::del()` in favour of `deleteRecord()` ([25017](https://github.com/civicrm/civicrm-core/pull/25017))**
+- **Stop using single hard-coded value array
+  (clean up from previous refactors)
+  ([25137](https://github.com/civicrm/civicrm-core/pull/25137))**
 
-- **SearchKit - Descriptions for search displays ([24985](https://github.com/civicrm/civicrm-core/pull/24985))**
+- **ensure currency is included to avoid translation problems
+  ([24798](https://github.com/civicrm/civicrm-core/pull/24798))**
 
-- **[REF] OptionValue - Deprecate del() function in favor of standard deleteRecord ([24999](https://github.com/civicrm/civicrm-core/pull/24999))**
+- **Fix enotice on user dash - when user has membership/s & debugging enabled
+  ([25140](https://github.com/civicrm/civicrm-core/pull/25140))**
 
-- **add event entity to formbuilder ([24991](https://github.com/civicrm/civicrm-core/pull/24991))**
+- **Fix 'cannot determine default entity' error on New Batch page
+  ([25189](https://github.com/civicrm/civicrm-core/pull/25189))**
 
-- **[NFC] UtilsTest - convert EventDispatcher to CiviEventDispatcher ([25013](https://github.com/civicrm/civicrm-core/pull/25013))**
+### CiviCase
 
-- **Menubar - fix height of quicksearch (Drupal9) ([25010](https://github.com/civicrm/civicrm-core/pull/25010))**
+- **Only show File Activity on Case success alert for 10 seconds
+  ([24905](https://github.com/civicrm/civicrm-core/pull/24905))**
 
-- **Var type fix in comment ([25011](https://github.com/civicrm/civicrm-core/pull/25011))**
+### CiviContribute
 
-- **php8 - don't pass null as string ([25007](https://github.com/civicrm/civicrm-core/pull/25007))**
+- **fixes dash line appended to the contribution amounts if label is empty
+  ([25033](https://github.com/civicrm/civicrm-core/pull/25033))**
 
-- **[NFC] Allow running tests/phpunit/CRM/Core/DAOTest.php on mariadb ([25008](https://github.com/civicrm/civicrm-core/pull/25008))**
+- **Assigning to accounting batch and closing batch fails with javascript error
+  ([dev/core#3960](https://lab.civicrm.org/dev/core/-/issues/3960):
+  [25129](https://github.com/civicrm/civicrm-core/pull/25129))**
 
-- **Use fastArray cache for js_strings ([24989](https://github.com/civicrm/civicrm-core/pull/24989))**
+- **Import contribution fails in update mode even if contribution id is
+  provided. ([dev/core#4038](https://lab.civicrm.org/dev/core/-/issues/4038):
+  [25204](https://github.com/civicrm/civicrm-core/pull/25204))**
 
-- **(alternate) Sentence runs together since period is inside the if block ([25005](https://github.com/civicrm/civicrm-core/pull/25005))**
+- **Payment processor handling of `billing-country-5` inconsistent
+  ([dev/core#3977](https://lab.civicrm.org/dev/core/-/issues/3977):
+  [24927](https://github.com/civicrm/civicrm-core/pull/24927))**
 
-- **add legend to CMS user creation section ([25002](https://github.com/civicrm/civicrm-core/pull/25002))**
+- **Crash when viewing contact's contribution tab and a contribution has no line
+  items ([dev/core#4027](https://lab.civicrm.org/dev/core/-/issues/4027):
+  [25145](https://github.com/civicrm/civicrm-core/pull/25145))**
 
-- **Fix CiviCRM Home/Hide/Logout translation ([25000](https://github.com/civicrm/civicrm-core/pull/25000))**
+- **Invoices have started miscalculating on save in version 5.56.0, rounding
+  down quantities
+  ([dev/core#4039](https://lab.civicrm.org/dev/core/-/issues/4039):
+  [25213](https://github.com/civicrm/civicrm-core/pull/25213))**
 
-- **dev/core#3962 Add 'boolean' as a filter for tokens ([24923](https://github.com/civicrm/civicrm-core/pull/24923))**
+### CiviMail
 
-- **Allow Joinables to be added to tables without specifying a base column ([24993](https://github.com/civicrm/civicrm-core/pull/24993))**
+- **Flexmailer: Prevent broken urls containing hyphens when click tracking is
+  enabled for plain text mailings
+  ([25149](https://github.com/civicrm/civicrm-core/pull/25149))**
 
-- **5.56 ([24986](https://github.com/civicrm/civicrm-core/pull/24986))**
+### Drupal Integration
 
-- **Add html for default field to schema ([24984](https://github.com/civicrm/civicrm-core/pull/24984))**
+- **Menubar - fix height of quicksearch (Drupal9)
+  ([25010](https://github.com/civicrm/civicrm-core/pull/25010))**
 
-- **[REF] DAO - Use class_alias for aliases of renamed classes ([24983](https://github.com/civicrm/civicrm-core/pull/24983))**
+- **Notice: Undefined variable: custom_link in
+  civicrm_handler_field_link_contact->render_link() (line 118 of
+  civicrm/drupal/modules/views/civicrm/civicrm_handler_field_link_contact.inc).
+  ([dev/drupal#168](https://lab.civicrm.org/dev/drupal/-/issues/168#note_85146):
+  [660](https://github.com/civicrm/civicrm-drupal/pull/660))**
 
-- **(dev/core#3992) Expose created date column in contact reports ([24978](https://github.com/civicrm/civicrm-core/pull/24978))**
+### WordPress Integration
 
-- **SearchKit - Fix campaign, event & primary address dropdowns ([24963](https://github.com/civicrm/civicrm-core/pull/24963))**
+- **Allow multiple non-invoking Shortcodes to render
+  ([281](https://github.com/civicrm/civicrm-wordpress/pull/281))**
 
-- **Regen DAO ([24979](https://github.com/civicrm/civicrm-core/pull/24979))**
+## <a name="misc"></a>Miscellany
 
-- **APIv4 Autocomplete - Support searching by ID, customize some entities ([24976](https://github.com/civicrm/civicrm-core/pull/24976))**
+- **EntityFinancialAccount - A tale of two BAO classes
+  ([25036](https://github.com/civicrm/civicrm-core/pull/25036))**
 
-- **APIv3 - Use the Exception rather than the rule ([24977](https://github.com/civicrm/civicrm-core/pull/24977))**
+- **Simplify removing file extension when using basename function
+  ([24948](https://github.com/civicrm/civicrm-core/pull/24948))**
 
-- **Add html definition to schema for is_active (part 4) ([24970](https://github.com/civicrm/civicrm-core/pull/24970))**
+- **Add new Organization Example contact (The Daily Bugle)
+  ([24939](https://github.com/civicrm/civicrm-core/pull/24939))**
 
-- **Add html definition to schema for is_active (part 3) ([24969](https://github.com/civicrm/civicrm-core/pull/24969))**
+- **Raise priority of Base Page `the_content` callback
+  ([282](https://github.com/civicrm/civicrm-wordpress/pull/282))**
 
-- **Add html definition to schema for is_active (part 2) ([24968](https://github.com/civicrm/civicrm-core/pull/24968))**
+- **Cast membership object as array before passing to
+  getMembershipStatusByDate()
+  ([25139](https://github.com/civicrm/civicrm-core/pull/25139))**
 
-- **Add html definition to schema for is_active (part 1) ([24967](https://github.com/civicrm/civicrm-core/pull/24967))**
+- **getSiteStats - Use consistent report format
+  ([25158](https://github.com/civicrm/civicrm-core/pull/25158))**
 
-- **Support ES6 (2015) in civilint: jshint config update ([24975](https://github.com/civicrm/civicrm-core/pull/24975))**
+- **Duplicate `Activity::importableFields` to upgrader & increase deprecation
+  ([25088](https://github.com/civicrm/civicrm-core/pull/25088))**
 
-- **AdminUI - Always cleanup saved searches during uninstall ([24760](https://github.com/civicrm/civicrm-core/pull/24760))**
+- **ajax batchSave() method should be static, php8 compatibility
+  ([25029](https://github.com/civicrm/civicrm-core/pull/25029))**
 
-- **Use APIv4-based Autocomplete widget throughout SearchKit, Afform & API Explorer ([24974](https://github.com/civicrm/civicrm-core/pull/24974))**
+- **SearchKit - Minor wording change
+  ([25071](https://github.com/civicrm/civicrm-core/pull/25071))**
 
-- **Afform - Fix multivalue entityRef fields ([24966](https://github.com/civicrm/civicrm-core/pull/24966))**
+- **SearchKit - Fix unit test so sort param actually does something
+  ([25133](https://github.com/civicrm/civicrm-core/pull/25133))**
 
-- **5.56 to master ([24973](https://github.com/civicrm/civicrm-core/pull/24973))**
+- **Fold `processGreetingTemplate` function only called from one place into
+  caller, deprecate
+  ([24925](https://github.com/civicrm/civicrm-core/pull/24925))**
 
-- **Remove deprecated token function `replaceComponentTokens` ([24934](https://github.com/civicrm/civicrm-core/pull/24934))**
+- **Core extensions - Upgrade to civix 22.10.0
+  ([24944](https://github.com/civicrm/civicrm-core/pull/24944))**
 
-- **Further cleanup on JobTest ([24935](https://github.com/civicrm/civicrm-core/pull/24935))**
+- **[php 8] Update pear/mail to 1.5
+  ([25092](https://github.com/civicrm/civicrm-core/pull/25092))**
 
-- **FourSeven Upgrade: disable i18nrewrite to avoid multilingual fatal ([24960](https://github.com/civicrm/civicrm-core/pull/24960))**
+- **Add noisy deprecation to `getContactTokenReplacement`
+  ([25077](https://github.com/civicrm/civicrm-core/pull/25077))**
 
-- **[NFC] Add @since annotation ([24958](https://github.com/civicrm/civicrm-core/pull/24958))**
+- **Add noisy deprecation to deprecated contribution token functions
+  ([25050](https://github.com/civicrm/civicrm-core/pull/25050))**
 
-- **Afform - Customizable APIv4-based Autocomplete widget for EntityRef fields ([24832](https://github.com/civicrm/civicrm-core/pull/24832))**
+- **Deprecate `CRM_Mailing_BAO_MailingAB::del()`
+  ([25024](https://github.com/civicrm/civicrm-core/pull/25024))**
 
-- **dev/core#2316 - Symfony EventDispatcher dispatch() signature kerfuffle - try 3 ([24132](https://github.com/civicrm/civicrm-core/pull/24132))**
+- **Deprecate `CRM_Financial_BAO_EntityFinancialAccount::del()`
+  ([25026](https://github.com/civicrm/civicrm-core/pull/25026) and
+  [25082](https://github.com/civicrm/civicrm-core/pull/25082))**
 
-- **Make it clear that same email for event registrations allows multiple registrations per contact ([24649](https://github.com/civicrm/civicrm-core/pull/24649))**
+- **Add noisy deprecation to unused functions `replaceContactTokens`,
+  `replaceCaseTokens`
+  ([24933](https://github.com/civicrm/civicrm-core/pull/24933))**
 
-- **Turn 'From' dropdown in 'Send Email' into a searchable select2 ([24957](https://github.com/civicrm/civicrm-core/pull/24957))**
+- **CRM_Utils_System_WordPress - Drop unused variable
+  ([25132](https://github.com/civicrm/civicrm-core/pull/25132))**
 
-- **Add Validate and Import search kit actions to import search displays ([24821](https://github.com/civicrm/civicrm-core/pull/24821))**
+- **CiviMail - BAO files were renamed in core
+  ([285](https://github.com/civicrm/civicrm-wordpress/pull/285))**
 
-- **5.56 to master ([24954](https://github.com/civicrm/civicrm-core/pull/24954))**
+- **Mailing - Rename DAO files for better short names
+  ([24982](https://github.com/civicrm/civicrm-core/pull/24982))**
 
-- **Remove php8-specific coding pattern ([24952](https://github.com/civicrm/civicrm-core/pull/24952))**
+- **added contributor Sebastian Lisken
+  ([24914](https://github.com/civicrm/civicrm-core/pull/24914))**
 
-- **SearchKit - Expose SavedSearch descriptions to admins ([24942](https://github.com/civicrm/civicrm-core/pull/24942))**
+- **Var type fix in comment
+  ([25011](https://github.com/civicrm/civicrm-core/pull/25011))**
 
-- **dev/core#3977 Handle dodgier calls to setBillingCountry in property bag. ([24927](https://github.com/civicrm/civicrm-core/pull/24927))**
+- **More del() deprecations in favour of standard deleteRecord()
+  ([25006](https://github.com/civicrm/civicrm-core/pull/25006))**
 
-- **Core extensions - Upgrade to civix 22.10.0 ([24944](https://github.com/civicrm/civicrm-core/pull/24944))**
+- **More BAO `del()` deprecations
+  ([25019](https://github.com/civicrm/civicrm-core/pull/25019))**
 
-- **Simplify removing file extension when using basename function ([24948](https://github.com/civicrm/civicrm-core/pull/24948))**
+- **Use IP address helper method consistently
+  ([25065](https://github.com/civicrm/civicrm-core/pull/25065))**
 
-- **Add noisy deprecation to unused functions `replaceContactTokens`, `replaceCaseTokens` ([24933](https://github.com/civicrm/civicrm-core/pull/24933))**
+- **Regenerate ContactType DAO
+  ([25079](https://github.com/civicrm/civicrm-core/pull/25079))**
 
-- **SearchKit - Add unit test for multivalued custom fields ([24941](https://github.com/civicrm/civicrm-core/pull/24941))**
+- **Regenerate Country DAO
+  ([24946](https://github.com/civicrm/civicrm-core/pull/24946))**
 
-- **Regenerate Country DAO ([24946](https://github.com/civicrm/civicrm-core/pull/24946))**
+- **Regen DAO
+  ([24979](https://github.com/civicrm/civicrm-core/pull/24979))**
 
-- **dev/core#3981 Fix Examples to use 0 rather than a possibly-real contact_id ([24945](https://github.com/civicrm/civicrm-core/pull/24945))**
+- **DAOs are stale
+  ([25043](https://github.com/civicrm/civicrm-core/pull/25043))**
 
-- **Don't allow selection of deleted contacts as email recipients ([24898](https://github.com/civicrm/civicrm-core/pull/24898))**
+- **Remove unused private function `removeNullContactTokens`
+  ([24932](https://github.com/civicrm/civicrm-core/pull/24932))**
 
-- **Remove unused private function `removeNullContactTokens` ([24932](https://github.com/civicrm/civicrm-core/pull/24932))**
+- **TabHeader: remove redundant history.replaceState
+  ([24931](https://github.com/civicrm/civicrm-core/pull/24931))**
 
-- **Fix api handling of OptionValue defaults ([24938](https://github.com/civicrm/civicrm-core/pull/24938))**
+- **Remove noisly deprecated function PDFLetterCommon::postProcess
+  ([25108](https://github.com/civicrm/civicrm-core/pull/25108))**
 
-- **Add new Organization Example contact (The Daily Bugle) ([24939](https://github.com/civicrm/civicrm-core/pull/24939))**
+- **Remove always-true ifs
+  ([25136](https://github.com/civicrm/civicrm-core/pull/25136))**
 
-- **Add tests for importing county (includes adding v4 County api) ([24919](https://github.com/civicrm/civicrm-core/pull/24919))**
+- **remove unused template vars from Profile Form
+  ([25124](https://github.com/civicrm/civicrm-core/pull/25124))**
 
-- **TabHeader: remove redundant history.replaceState ([24931](https://github.com/civicrm/civicrm-core/pull/24931))**
+- **remove civimail-spooler script
+  ([25122](https://github.com/civicrm/civicrm-core/pull/25122))**
 
-- **[NFC] Clean up in test class ([24922](https://github.com/civicrm/civicrm-core/pull/24922))**
+- **Remove unused, deprecated class `CRM_Activity_Form_Task_PDFLetterCommon`
+  ([25106](https://github.com/civicrm/civicrm-core/pull/25106))**
 
-- **[NFC] Minor cleanup in test ([24921](https://github.com/civicrm/civicrm-core/pull/24921))**
+- **Remove further usage of 'preferred_mail_format'
+  ([25109](https://github.com/civicrm/civicrm-core/pull/25109))**
 
-- **[NFC] Test class cleanup (JobTest) ([24920](https://github.com/civicrm/civicrm-core/pull/24920))**
+- **Remove handling for legacy `preferred_mail_format`
+  ([25076](https://github.com/civicrm/civicrm-core/pull/25076))**
 
-- **5.56 ([24918](https://github.com/civicrm/civicrm-core/pull/24918))**
+- **Remove deprecated PdfLetterCommon class - membership
+  ([25060](https://github.com/civicrm/civicrm-core/pull/25060))**
 
-- **PHP8 fix - always define locations in event info template ([24915](https://github.com/civicrm/civicrm-core/pull/24915))**
+- **Remove deprecated, probably long-broken function `replaceOrgTokens`
+  ([25051](https://github.com/civicrm/civicrm-core/pull/25051))**
 
-- **added contributor Sebastian Lisken ([24914](https://github.com/civicrm/civicrm-core/pull/24914))**
+- **remove unused code in Profile template
+  ([25121](https://github.com/civicrm/civicrm-core/pull/25121))**
 
-- **[REF] Fix E2E_Core_ErrorTest on wordpress-clean builds ([24913](https://github.com/civicrm/civicrm-core/pull/24913))**
+- **Remove php8-specific coding pattern
+  ([24952](https://github.com/civicrm/civicrm-core/pull/24952))**
 
-- **5.56 ([24910](https://github.com/civicrm/civicrm-core/pull/24910))**
+- **Remove legacyCreateMultiple function
+  ([25048](https://github.com/civicrm/civicrm-core/pull/25048))**
 
-- **Don't crash ContributionView when participant fields are null ([24906](https://github.com/civicrm/civicrm-core/pull/24906))**
+- **Remove another call to deprecated
+  `CRM_Contribute_PseudoConstant::contributionStatus`
+  ([24590](https://github.com/civicrm/civicrm-core/pull/24590))**
 
-- **5.56 ([24908](https://github.com/civicrm/civicrm-core/pull/24908))**
+- **Remove deprecated token function
+  ([25049](https://github.com/civicrm/civicrm-core/pull/25049))**
 
-- **Only show File Activity on Case success alert for 10s ([24905](https://github.com/civicrm/civicrm-core/pull/24905))**
+- **Remove deprecated token function `replaceComponentTokens`
+  ([24934](https://github.com/civicrm/civicrm-core/pull/24934))**
 
-- **[REF] Unused vars in the State Machine ([24901](https://github.com/civicrm/civicrm-core/pull/24901))**
+- **Deprecate `CRM_Event_BAO_Event::del()` in favour of `deleteRecord()`
+  ([25018](https://github.com/civicrm/civicrm-core/pull/25018))**
 
-- **SearchKit - Add clone button for search displays ([24899](https://github.com/civicrm/civicrm-core/pull/24899))**
+- **Deprecate `CRM_Contact_BAO_Relationship::del()` in favour of
+  `deleteRecord()`
+  ([25017](https://github.com/civicrm/civicrm-core/pull/25017))**
 
-- **dev/core#3735 Fix for getlist retrieve with id ([24727](https://github.com/civicrm/civicrm-core/pull/24727))**
+- **php8 - don't pass null as string
+  ([25007](https://github.com/civicrm/civicrm-core/pull/25007))**
 
-- **(dev/core#3136) Incorporate the domain id in the log file nomenclatur… ([24893](https://github.com/civicrm/civicrm-core/pull/24893))**
+- **PHP 8.1 ([dev/core#3181](https://lab.civicrm.org/dev/core/-/issues/3181):
+  [284](https://github.com/civicrm/civicrm-wordpress/pull/284) and
+  [24915](https://github.com/civicrm/civicrm-core/pull/24915))**
 
-- **PriceSetTest - Fix test-run on case-insensitive filesystem ([24892](https://github.com/civicrm/civicrm-core/pull/24892))**
+- **[REF][PHP8.2] Fix Pager Common and Smarty issue with Dynamic properties in
+  php8.2 ([355](https://github.com/civicrm/civicrm-packages/pull/355))**
 
-- **Fix PHP Notice: Undefined offset in _civicrm_member_roles_sync() ([661](https://github.com/civicrm/civicrm-drupal/pull/661))**
+- **[REF][PHP8.1] Fix a couple of issues where passing in NULL in string
+  functions is deprecated in PHP8.1
+  ([24911](https://github.com/civicrm/civicrm-core/pull/24911))**
 
-- **Fix Undefined variable: custom_link in civicrm_handler_field_link_con… ([660](https://github.com/civicrm/civicrm-drupal/pull/660))**
+- **REF: Replace CRM_Utils_Array::value in CRM/Event/Form/Registration
+  ([25042](https://github.com/civicrm/civicrm-core/pull/25042))**
 
-- **CiviMail - BAO files were renamed in core ([285](https://github.com/civicrm/civicrm-wordpress/pull/285))**
+- **[REF] ContactType BAO - Simplify getAllContactTypes
+  ([25064](https://github.com/civicrm/civicrm-core/pull/25064))**
 
-- **Allow multiple non-invoking Shortcodes to render ([281](https://github.com/civicrm/civicrm-wordpress/pull/281))**
+- **REF: Consistent variables names in formRule for CRM/Event/Form/Register
+  ([25045](https://github.com/civicrm/civicrm-core/pull/25045))**
 
-- **Raise priority of Base Page `the_content` callback ([282](https://github.com/civicrm/civicrm-wordpress/pull/282))**
+- **[REF] Fix E2E_Core_ErrorTest on wordpress-clean builds
+  ([24913](https://github.com/civicrm/civicrm-core/pull/24913))**
 
-- **[REF][PHP8.1] dev/core#3181 Apply fixes for passing NULL into string … ([284](https://github.com/civicrm/civicrm-wordpress/pull/284))**
+- **[REF] Unused vars in the State Machine
+  ([24901](https://github.com/civicrm/civicrm-core/pull/24901))**
 
-- **[REF][PHP8.2] Fix Pager Common and Smarty issue with Dynamic properti… ([355](https://github.com/civicrm/civicrm-packages/pull/355))**
+- **[REF] OptionValue - Deprecate del() function in favor of standard
+  deleteRecord ([24999](https://github.com/civicrm/civicrm-core/pull/24999))**
 
-## <a name="misc"></a>Miscellany
+- **[REF] DAO - Use class_alias for aliases of renamed classes
+  ([24983](https://github.com/civicrm/civicrm-core/pull/24983))**
+
+- **Fix miscoordination between CiviUnitTestCase/CiviEnvBuilder. Fix flaky
+  ConformanceTest.
+  ([25177](https://github.com/civicrm/civicrm-core/pull/25177))**
+
+- **Fix test class not to use discouraged function
+  ([25074](https://github.com/civicrm/civicrm-core/pull/25074))**
+
+- **Test cleanup, remove calls to deprecated financial BAO functions
+  ([25085](https://github.com/civicrm/civicrm-core/pull/25085))**
+
+- **PriceSetTest - Fix test-run on case-insensitive filesystem
+  ([24892](https://github.com/civicrm/civicrm-core/pull/24892))**
+
+- **Add tests for importing county (includes adding v4 County api)
+  ([24919](https://github.com/civicrm/civicrm-core/pull/24919))**
+
+- **SearchKit - Add unit test for multivalued custom fields
+  ([24941](https://github.com/civicrm/civicrm-core/pull/24941))**
+
+- **Test fix - setup is incongruent
+  ([25037](https://github.com/civicrm/civicrm-core/pull/25037))**
+
+- **Cleanup in test class
+  ([25022](https://github.com/civicrm/civicrm-core/pull/25022))**
+
+- **Test cleanup, stop using legacy financial bao methods
+  ([25083](https://github.com/civicrm/civicrm-core/pull/25083))**
+
+- **Rename test class to reflect tested class
+  ([25107](https://github.com/civicrm/civicrm-core/pull/25107))**
+
+- **Further cleanup on JobTest
+  ([24935](https://github.com/civicrm/civicrm-core/pull/24935))**
+
+- **CRM_Utils_FileTest - Fix compatibility with private data folders
+  ([25160](https://github.com/civicrm/civicrm-core/pull/25160))**
+
+- **[NFC] Update instructions for running regen online
+  ([25138](https://github.com/civicrm/civicrm-core/pull/25138))**
+
+- **[NFC] UtilsTest - convert EventDispatcher to CiviEventDispatcher
+  ([25013](https://github.com/civicrm/civicrm-core/pull/25013))**
+
+- **[NFC] Allow running tests/phpunit/CRM/Core/DAOTest.php on mariadb
+  ([25008](https://github.com/civicrm/civicrm-core/pull/25008))**
+
+- **[NFC] Regression - lotsa noise on Searchkit screen if Form code editor
+  enabled ([dev/core#4008](https://lab.civicrm.org/dev/core/-/issues/4008):
+  [25131](https://github.com/civicrm/civicrm-core/pull/25131))**
+
+- **[NFC] Add @since annotation
+  ([24958](https://github.com/civicrm/civicrm-core/pull/24958))**
+
+- **[NFC] Clean up in test class
+  ([24922](https://github.com/civicrm/civicrm-core/pull/24922))**
+
+- **[NFC] Minor cleanup in test
+  ([24921](https://github.com/civicrm/civicrm-core/pull/24921))**
+
+- **[NFC] Test class cleanup (JobTest)
+  ([24920](https://github.com/civicrm/civicrm-core/pull/24920))**
+
+- **[NFC] Update testGetSiteStats to match earlier name change
+  ([25150](https://github.com/civicrm/civicrm-core/pull/25150))**
 
 ## <a name="credits"></a>Credits
 
 This release was developed by the following code authors:
 
-AGH Strategies - Alice Frumin, Andie Hunt; BrightMinded Ltd - Bradley Taylor; Christian Wach; CiviCRM - Coleman Watts, Tim Otten; CiviDesk - Yashodha Chaku; civiservice.de - Sebastian Lisken; Coop SymbioTIC - Mathieu Lutfy, Shane Bill; Dave D; Humanists UK - Andrew West;; JMA Consulting - Monish Deb, Seamus Lee; John Kingsnorth; Luna Design - Andrew Wasson; Megaphone Technology Consulting - Jon Goldberg; MJW Consulting - Matthew Wire; Progressive Technology Project - Jamie McClelland; Squiffle Consulting - Aidan Saunders; Third Sector Design - Kurund Jalmi; Wikimedia Foundation - Eileen McNaughton; Wildsight - Lars Sanders-Green
+AGH Strategies - Alice Frumin, Andie Hunt; BrightMinded Ltd - Bradley Taylor;
+Christian Wach; CiviCRM - Coleman Watts, Tim Otten; CiviDesk - Yashodha Chaku;
+civiservice.de - Sebastian Lisken; Coop SymbioTIC - Mathieu Lutfy, Shane Bill;
+Dave D; Humanists UK - Andrew West; JMA Consulting - Monish Deb, Seamus Lee;
+John Kingsnorth; Luna Design - Andrew Wasson; Megaphone Technology Consulting -
+Jon Goldberg; MJW Consulting - Matthew Wire; Progressive Technology Project -
+Jamie McClelland; Squiffle Consulting - Aidan Saunders; Third Sector Design -
+Kurund Jalmi; Wikimedia Foundation - Eileen McNaughton; Wildsight - Lars
+Sanders-Green
 
 Most authors also reviewed code for this release; in addition, the following
 reviewers contributed their comments:
 
-Agileware - Justin Freeman; Artful Robot - Rich Lott; Australian Greens - Andrew Cormick-Dockery; BrightMinded Ltd - Bradley Taylor; Christian Wach; Circle Interactive - Dave Jenkins; civibot[bot]; civicrm-builder; CiviCRM - Coleman Watts, Tim Otten; CiviDesk - Yashodha Chaku; civiservice.de - Sebastian Lisken; Coop SymbioTIC - Mathieu Lutfy, Shane Bill; Dave D; Freeform Solutions - Herb van den Dool; JMA Consulting - Seamus Lee; John Kingsnorth; Luna Design - Andrew Wasson; Megaphone Technology Consulting - Jon Goldberg; MJW Consulting - Matthew Wire; Nicol Wistreich; Progressive Technology Project - Jamie McClelland; Squiffle Consulting - Aidan Saunders; Tadpole Collective - Kevin Cristiano; Third Sector Design - Kurund Jalmi; Wikimedia Foundation - Eileen McNaughton; Wildsight - Lars Sanders-Green
+Agileware - Justin Freeman; Artful Robot - Rich Lott; Australian Greens -
+Andrew Cormick-Dockery; Circle Interactive - Dave Jenkins; Freeform Solutions -
+Herb van den Dool; Nicol Wistreich; Tadpole Collective - Kevin Cristiano
 
 ## <a name="feedback"></a>Feedback