| *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