[NFC] 5.56 release notes first pass
authorAlice Frumin <alicefrumin@alices-mbp-2.lan>
Fri, 10 Mar 2023 02:52:02 +0000 (21:52 -0500)
committerAlice Frumin <alice@aghstrategies.com>
Fri, 31 Mar 2023 15:47:21 +0000 (11:47 -0400)
contributor-key.yml
release-notes/5.60.0.md

index 3e9d872252ce696766ad75a56a2cc74ba1d5b31b..1b17d3dad38d9eb7e4183da471b864b4cf8471eb 100644 (file)
 - github      : andyburnsco
   name        : Andy Burns
 
+- github      : anemirovsky
+  name        : Anthony Nemirovsky
+  organization: Giant Rabbit
+
 - github      : amsharma9
   name        : Amal Sharma
   organization: Abhikalak Consultants
   name        : Björn Endres
   organization: SYSTOPIA Organisationsberatung
 
+- github      : BeccaTregenna
+  name        : Becca Tregenna
+
 - name        : Ben Jarlett
 
 - github      : BettyDolfing
index d6143be9b4713c2d212d39c5eeff1e2673c1b0c7..cfb559d35c96056d042f017e0de348e460f98d76 100644 (file)
@@ -13,392 +13,681 @@ Released April 5, 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?                     |   no    |
+| **Fix problems installing or upgrading to a previous version?** | **yes** |
+| **Introduce features?**                                         | **yes** |
+| **Fix bugs?**                                                   | **yes** |
 
 ## <a name="features"></a>Features
 
-## <a name="bugs"></a>Bugs resolved
+### CiviCRM Core
 
-### Core CiviCRM
+- **Add Entity Reference custom field type (implementing EntityRef QuickForm
+  element type)
+  ([dev/core#3721](https://lab.civicrm.org/dev/core/-/issues/3721):
+  [25471](https://github.com/civicrm/civicrm-core/pull/25471))**
+
+  Adds a new type of custom field "EntityReference" which creates an
+  autocomplete widget.
+
+- **Add 'SavePoint' to import to statusBounce back to
+  ([25602](https://github.com/civicrm/civicrm-core/pull/25602))**
 
-- **Load submitted `fieldSeparator` on back on `Import Datasource` screen ([25758](https://github.com/civicrm/civicrm-core/pull/25758))**
+  Adds a 'SavePoint' to import so that the user can be bounced back to the save
+  point if the import fails later down the road.
 
-- **Remove the correct extraneous field separator field ([25753](https://github.com/civicrm/civicrm-core/pull/25753))**
+- **SearchKit: Decide on available actions per display (funded)
+  ([dev/core#4118](https://lab.civicrm.org/dev/core/-/issues/4118):
+  [25521](https://github.com/civicrm/civicrm-core/pull/25521))**
 
-- **PayPal Prp IPN - Fix incorrect option_group update ([25724](https://github.com/civicrm/civicrm-core/pull/25724))**
+  Allows the admin to limit the available choices of bulk actions (tasks) in a
+  Search Display.
 
-- **Fix for 5.59 upgrade on multilingual ([25733](https://github.com/civicrm/civicrm-core/pull/25733))**
+- **Make dedupe exceptions searchable in SearchKit
+  ([25522](https://github.com/civicrm/civicrm-core/pull/25522))**
 
-- **Contribution pages crash for logged-in users when CiviMember is disabled ([25729](https://github.com/civicrm/civicrm-core/pull/25729))**
+  Makes dedupe exceptions searchable in SearchKit.
 
-- **(dev/core#4147) Add test and fix for various flaky tokens ([25704](https://github.com/civicrm/civicrm-core/pull/25704))**
+- **Filter Searches by 'is_current' / expires_date (Work Towards
+  [dev/core#4117](https://lab.civicrm.org/dev/core/-/issues/4117):
+  [25516](https://github.com/civicrm/civicrm-core/pull/25516))**
 
-- **dev/core#4145 Prevent fatal on event sched reminders when CiviEvent enabled ([25703](https://github.com/civicrm/civicrm-core/pull/25703))**
+  Adds `is_current` filter to searches.
 
-- **Stricter typing in Apiv4 ([25706](https://github.com/civicrm/civicrm-core/pull/25706))**
+- **Log Smarty debug to it's own channel
+  ([25682](https://github.com/civicrm/civicrm-core/pull/25682))**
 
-- **Remove deprecated function calls to Event::del, Membership functions del, OptionValue ([25705](https://github.com/civicrm/civicrm-core/pull/25705))**
+   Makes it so output from smarty secure mode goes into it's own file.
 
-- **5.59 ([25702](https://github.com/civicrm/civicrm-core/pull/25702))**
+- **Allow OAuth redirect URI to be overridden in client or provider config
+  ([25445](https://github.com/civicrm/civicrm-core/pull/25445))**
 
-- **Remove deprecated use of $ids ([25698](https://github.com/civicrm/civicrm-core/pull/25698))**
+  Makes the oauth-client extension respect whatever Redirect URI is set in the
+  "client" or "provider" configuration.
 
-- **5.59 to master ([25699](https://github.com/civicrm/civicrm-core/pull/25699))**
+- **Make `activity_type_id` available to `links` hook, test
+  ([25565](https://github.com/civicrm/civicrm-core/pull/25565))**
 
-- **Delete long-deprecated functions ([25696](https://github.com/civicrm/civicrm-core/pull/25696))**
+  Improves hook_civicrm_links by making activity_type_id available (in relevant
+  contexts).
 
-- **Pull over a few more deprecations + blockDelete deprecation ([25695](https://github.com/civicrm/civicrm-core/pull/25695))**
+- **Add setting to disable Smarty in Scheduled reminders
+  ([dev/core#4100](https://lab.civicrm.org/dev/core/-/issues/4100):
+  [25444](https://github.com/civicrm/civicrm-core/pull/25444))**
 
-- **Address portions of deprecated code replacement ([25693](https://github.com/civicrm/civicrm-core/pull/25693))**
+  Adds a setting to disable Smarty in Scheduled reminders.
 
-- **Deprecations for Mailing::delete functions ([25691](https://github.com/civicrm/civicrm-core/pull/25691))**
+### CiviCase
 
-- **Deprecations for delete on ACL entities ([25690](https://github.com/civicrm/civicrm-core/pull/25690))**
+- **Afform: Allow selecting case for relationship
+  ([25618](https://github.com/civicrm/civicrm-core/pull/25618))**
 
-- **Remove deprecated functions from tests ([25688](https://github.com/civicrm/civicrm-core/pull/25688))**
+  Makes it so one can select a case for a relationship on Afforms.
 
-- **Remove 2020-deprecated handling of `legacyAddressCreate` ([25686](https://github.com/civicrm/civicrm-core/pull/25686))**
+### CiviContribute
 
-- **Remove function noisily deprecated when the world was young (2020) ([25685](https://github.com/civicrm/civicrm-core/pull/25685))**
+- **Add filter on pledge payment in contribution report templates
+  ([dev/core#4106](https://lab.civicrm.org/dev/core/-/issues/4106):
+  [25629](https://github.com/civicrm/civicrm-core/pull/25629))**
 
-- **Remove deprecated function call ([25684](https://github.com/civicrm/civicrm-core/pull/25684))**
+  Adds a pledge payment filter to the Contribution Detail and Summary reports.
 
-- **Afform - Filter autocomplete fields belonging to a search display ([25646](https://github.com/civicrm/civicrm-core/pull/25646))**
+- **PaymentProcessor - Use ajax refresh
+  ([25512](https://github.com/civicrm/civicrm-core/pull/25512))**
 
-- **dev/core#4146 Remove (old) Smarty-forward incompatible syntax from Address.tpl ([25669](https://github.com/civicrm/civicrm-core/pull/25669))**
+  Makes page refresh a bit nicer when changing payment processor types on the
+  admin form.
 
-- **Add gentle deprecation to `debug_log_message` ([25683](https://github.com/civicrm/civicrm-core/pull/25683))**
+### CiviMail
 
-- **Log Smarty debug to it's own channel ([25682](https://github.com/civicrm/civicrm-core/pull/25682))**
+- **HTML definition for subscription history date
+  ([25655](https://github.com/civicrm/civicrm-core/pull/25655))**
 
-- **Smarty notice fix on bank_account_number ([25680](https://github.com/civicrm/civicrm-core/pull/25680))**
+  Adds an HTML type to the "Group Membership Action Date" field so it can be
+  used in FormBuilder as a filter.
 
-- **Remove unnecessary pass-by-reference ([25678](https://github.com/civicrm/civicrm-core/pull/25678))**
+### Drupal Integration
 
-- **Remove code deprecated in 2018 ([25679](https://github.com/civicrm/civicrm-core/pull/25679))**
+- **Epic: Drupal 10 readiness (Work Towards
+  [dev/drupal#176](https://lab.civicrm.org/dev/drupal/-/issues/176):
+  [25499](https://github.com/civicrm/civicrm-core/pull/25499) and
+  [25054](https://github.com/civicrm/civicrm-core/pull/25054))**
 
-- **Remove empty on location - it should always be set now ([25675](https://github.com/civicrm/civicrm-core/pull/25675))**
+  Work towards drupal 10 readiness by allowing symfony 6.
 
-- **Afform: Allow selecting case for relationship ([25618](https://github.com/civicrm/civicrm-core/pull/25618))**
+- **CMS Database Integration - Per-table prefixes are no longer supported
+  ([dev/core#4028](https://lab.civicrm.org/dev/core/-/issues/4028):
+  [25328](https://github.com/civicrm/civicrm-core/pull/25328))**
 
-- **Fix e-notice pattern around location not defined in formButtons.tpl ([25668](https://github.com/civicrm/civicrm-core/pull/25668))**
+  Makes the CRM_Admin_Form_Setting_UF more CMS agnostic by removing the Drupal
+  7 mapping table.
 
-- **closes core#4070 - respect default return path ([25309](https://github.com/civicrm/civicrm-core/pull/25309))**
+## <a name="bugs"></a>Bugs resolved
 
-- **dev/core#4127 move cms user parameters to userSystem ([25585](https://github.com/civicrm/civicrm-core/pull/25585))**
+### Core CiviCRM
 
-- **SearchKit - Clarify how to view SQL output ([25671](https://github.com/civicrm/civicrm-core/pull/25671))**
+- **Make 5.60 upgrade rerunnable
+  ([25950](https://github.com/civicrm/civicrm-core/pull/25950))**
 
-- **Remove unused variables ([25670](https://github.com/civicrm/civicrm-core/pull/25670))**
+- **Import search authorization issues
+  ([dev/core#4184](https://lab.civicrm.org/dev/core/-/issues/4184):
+  [25810](https://github.com/civicrm/civicrm-core/pull/25810))**
 
-- **Remove unused property - not used since import code refactor `_lineCount` ([25466](https://github.com/civicrm/civicrm-core/pull/25466))**
+- **Individual's Employer and Membership by Relationship Are Not Updated After
+  Merging Their Organization
+  ([dev/core#4156](https://lab.civicrm.org/dev/core/-/issues/4156):
+  [25778](https://github.com/civicrm/civicrm-core/pull/25778))**
 
-- **Remove conditional assignment around `is_deductible` ([25237](https://github.com/civicrm/civicrm-core/pull/25237))**
+- **Fatal error on merge
+  ([dev/core#4197](https://lab.civicrm.org/dev/core/-/issues/4197):
+  [25912](https://github.com/civicrm/civicrm-core/pull/25912))**
 
-- **Event test cleanup, fix test to use submitted form values, rather than require a lot of contorting ([25621](https://github.com/civicrm/civicrm-core/pull/25621))**
+- **Finish making legacycustomsearches optional (Work Towards
+  [dev/core#4112](https://lab.civicrm.org/dev/core/-/issues/4112):
+  [25392](https://github.com/civicrm/civicrm-core/pull/25392))**
 
-- **Extend testing for ContributionConfirm & consolidate `isSeparateMembershipPayment` ([25270](https://github.com/civicrm/civicrm-core/pull/25270))**
+  Privatize `prevNextCache` functions.
 
-- **Fix mixin to use `addTemplateDir` ([25667](https://github.com/civicrm/civicrm-core/pull/25667))**
+- **Administrator > Communications > Schedule Reminders error when CiviEvent
+  disabled ([dev/core#4145](https://lab.civicrm.org/dev/core/-/issues/4145):
+  [25703](https://github.com/civicrm/civicrm-core/pull/25703))**
 
-- **Add noisy deprecation to deprecated function, after universe search ([25662](https://github.com/civicrm/civicrm-core/pull/25662))**
+- **Upgrade Smarty
+  (Work Towards [dev/core#4146](https://lab.civicrm.org/dev/core/-/issues/4146):
+  [25669](https://github.com/civicrm/civicrm-core/pull/25669))**
 
-- **(NFC) crmURL - Add examples and whitespace. Crosslink docs. ([25665](https://github.com/civicrm/civicrm-core/pull/25665))**
+  Removes (old) Smarty-forward incompatible syntax from Address.tpl.
 
-- **Remove forward incompatible syntax from template  ([25664](https://github.com/civicrm/civicrm-core/pull/25664))**
+- **When using PHP 8.1, the Contact token for the Address State / Province field
+  returns no value when used in Message Templates. Works fine on PHP 7.4
+  ([dev/core#4147](https://lab.civicrm.org/dev/core/-/issues/4147):
+  [25704](https://github.com/civicrm/civicrm-core/pull/25704))**
 
-- **Add `crmUrl function` to smarty in the standard way ([25661](https://github.com/civicrm/civicrm-core/pull/25661))**
+- **Fix for 5.59 upgrade on multilingual
+  ([25733](https://github.com/civicrm/civicrm-core/pull/25733))**
 
-- **run `civix update` on `recaptcha`, `legacyCustomSearches`, `financialacls` ([25663](https://github.com/civicrm/civicrm-core/pull/25663))**
+- **Load submitted `fieldSeparator` on back on `Import Datasource` screen
+  ([25758](https://github.com/civicrm/civicrm-core/pull/25758))**
 
-- **ext/* - General update to civix v23.02.0 ([25659](https://github.com/civicrm/civicrm-core/pull/25659))**
+- **API4: Allow save() to match on null values
+  ([24971](https://github.com/civicrm/civicrm-core/pull/24971))**
 
-- **Smarty - {htxt} blocks should not be evaluated unless needed ([25653](https://github.com/civicrm/civicrm-core/pull/25653))**
+- **API v4 explorer: boolean params don't render correctly for CV (short)
+  ([dev/core#4129](https://lab.civicrm.org/dev/core/-/issues/4129):
+  [25589](https://github.com/civicrm/civicrm-core/pull/25589))**
 
-- **HTML definition for subscription history date ([25655](https://github.com/civicrm/civicrm-core/pull/25655))**
+- **Stricter typing in Apiv4
+  ([25706](https://github.com/civicrm/civicrm-core/pull/25706))**
 
-- **5.59 ([25660](https://github.com/civicrm/civicrm-core/pull/25660))**
+- **Afform - Fix validateBySavedSearch
+  ([25822](https://github.com/civicrm/civicrm-core/pull/25822))**
 
-- **Notice fix on preferred_language, when null ([25656](https://github.com/civicrm/civicrm-core/pull/25656))**
+- **Afform: Fix broken syntax for saving reciprocal relationships
+  ([25620](https://github.com/civicrm/civicrm-core/pull/25620))**
 
-- **Remove legacy handling of locks for discontinued mysql/mariaDB versions ([25654](https://github.com/civicrm/civicrm-core/pull/25654))**
+- **Afform - Fix editing search filters nested within multiple containers
+  ([25742](https://github.com/civicrm/civicrm-core/pull/25742))**
 
-- **Event registration activity target ([25650](https://github.com/civicrm/civicrm-core/pull/25650))**
+- **Form Builder - autocomplete input does not use configured filtering
+  ([dev/core#4138](https://lab.civicrm.org/dev/core/-/issues/4138):
+  [25646](https://github.com/civicrm/civicrm-core/pull/25646))**
 
-- **Php8.x compatibility - do not try to count NULL ([25652](https://github.com/civicrm/civicrm-core/pull/25652))**
+- **Filter expired searches from search kit results
+  ([25568](https://github.com/civicrm/civicrm-core/pull/25568))**
 
-- **Smarty - Fix warnings about 'mb_truncate' modifier ([25651](https://github.com/civicrm/civicrm-core/pull/25651))**
+- **SearchKit - Fix handling of new Custom EntityReference fields
+  ([25927](https://github.com/civicrm/civicrm-core/pull/25927))**
 
-- **dev/core#4126 - Fix force-url parameters on case dashboard ([25649](https://github.com/civicrm/civicrm-core/pull/25649))**
+- **SearchKit - Clarify how to view SQL output
+  ([25671](https://github.com/civicrm/civicrm-core/pull/25671))**
 
-- **Allow (some) permissions with colons ([23782](https://github.com/civicrm/civicrm-core/pull/23782))**
+- **Always show "add more buttons" dropdown in searchkit view
+  ([25596](https://github.com/civicrm/civicrm-core/pull/25596))**
 
-- **Update Smarty addTemplateDir function signature to future smarty ([25248](https://github.com/civicrm/civicrm-core/pull/25248))**
+- **Make job ID accessible to searchkit for joblog
+  ([24746](https://github.com/civicrm/civicrm-core/pull/24746))**
 
-- **(dev/core#4106) Add filter on pledge payment in contribution report t… ([25629](https://github.com/civicrm/civicrm-core/pull/25629))**
+- **Add Activity Target consistently
+  ([dev/core#4142](https://lab.civicrm.org/dev/core/-/issues/4142):
+  [25650](https://github.com/civicrm/civicrm-core/pull/25650))**
 
-- **Reduce processing load in test `assertAPIFailure` ([25648](https://github.com/civicrm/civicrm-core/pull/25648))**
+- **Allow (some) permissions with colons
+  ([23782](https://github.com/civicrm/civicrm-core/pull/23782))**
 
-- **Deprecate unused, exception class with non-standard name-spacing ([25641](https://github.com/civicrm/civicrm-core/pull/25641))**
+- **Update Smarty addTemplateDir function signature to future smarty
+  ([25248](https://github.com/civicrm/civicrm-core/pull/25248))**
 
-- **Make job ID accessible to searchkit for joblog ([24746](https://github.com/civicrm/civicrm-core/pull/24746))**
+- **Add `crmUrl function` to smarty in the standard way
+  ([25661](https://github.com/civicrm/civicrm-core/pull/25661))**
 
-- **dev/core#4127 move Drupal stuff in getCiviSourceStorage to Drupal use… ([25587](https://github.com/civicrm/civicrm-core/pull/25587))**
+- **Reduce unneeded DNS queries during OAuth flow
+  ([25446](https://github.com/civicrm/civicrm-core/pull/25446))**
 
-- **Fix add version for civicrm_custom_field.fk_entity ([25642](https://github.com/civicrm/civicrm-core/pull/25642))**
+- **Angular Coder: Fix unescaping of quotes breaking attributes  
+  ([25630](https://github.com/civicrm/civicrm-core/pull/25630))**
 
-- **Fix handling of invalid sql query during import ([25600](https://github.com/civicrm/civicrm-core/pull/25600))**
+- **EntityRef - Format custom field display value on QuickForms
+  ([25632](https://github.com/civicrm/civicrm-core/pull/25632))**
 
-- **5.59 to master ([25640](https://github.com/civicrm/civicrm-core/pull/25640))**
+- **getStatus() should be returning a string
+  ([25441](https://github.com/civicrm/civicrm-core/pull/25441))**
 
-- **Fix master-only regression - upgrade script is in wrong version ([25638](https://github.com/civicrm/civicrm-core/pull/25638))**
+- **Regression: Fix DB syntax error on Parse address scheduled  job
+  ([25616](https://github.com/civicrm/civicrm-core/pull/25616))**
 
-- **dev/core#4127 move is_drupal to use userSystem logger ([25573](https://github.com/civicrm/civicrm-core/pull/25573))**
+- **update entity mapping logic for profile fields to include contact subtypes
+  ([25570](https://github.com/civicrm/civicrm-core/pull/25570))**
 
-- **5.59 ([25637](https://github.com/civicrm/civicrm-core/pull/25637))**
+- **Smarty {ts} - For extensions, use fallback similar to E::ts() and JS ts()
+  ([25383](https://github.com/civicrm/civicrm-core/pull/25383))**
 
-- **Add 'SavePoint' to import to statusBounce back to ([25602](https://github.com/civicrm/civicrm-core/pull/25602))**
+- **Disambiguate `Address.state_province_id:abbr` (PHP asort)
+  ([25552](https://github.com/civicrm/civicrm-core/pull/25552) and
+  [25550](https://github.com/civicrm/civicrm-core/pull/25550))**
 
-- **Move form specific code to the form ([25457](https://github.com/civicrm/civicrm-core/pull/25457))**
+- **Default to supporting partial locales
+  ([25063](https://github.com/civicrm/civicrm-core/pull/25063))**
 
-- **Make dedupe exceptions searchable in SearchKit ([25522](https://github.com/civicrm/civicrm-core/pull/25522))**
+- **Do not use reference for Object parameter, death to `_NULLObject`
+  ([25541](https://github.com/civicrm/civicrm-core/pull/25541))**
 
-- **E-notice fix Ical display ([25612](https://github.com/civicrm/civicrm-core/pull/25612))**
+- **only load dedupe rules for the chosen entity
+  ([25515](https://github.com/civicrm/civicrm-core/pull/25515))**
 
-- **dev/core#4112 Privatise `prevNextCache` functions ([25392](https://github.com/civicrm/civicrm-core/pull/25392))**
+- **A couple of minor smarty notice fixes
+  ([25514](https://github.com/civicrm/civicrm-core/pull/25514))**
 
-- **Reduce unneeded DNS queries during OAuth flow ([25446](https://github.com/civicrm/civicrm-core/pull/25446))**
+- **Use mysql DATABASE() function instead of php code
+  ([25530](https://github.com/civicrm/civicrm-core/pull/25530))**
 
-- **composer require --dev yoast/phpunit-polyfills ([25631](https://github.com/civicrm/civicrm-core/pull/25631))**
+- **Use `DATABASE()` function rather than lossa code
+  ([25528](https://github.com/civicrm/civicrm-core/pull/25528))**
 
-- **Extra deprecation for clarity on token function `convertPseudoConstantsUsingMetadata` ([25511](https://github.com/civicrm/civicrm-core/pull/25511))**
+- **Fix more schema checks to use mysql DATABASE() function, deprecate php
+  function ([25593](https://github.com/civicrm/civicrm-core/pull/25593))**
 
-- **Angular Coder: Fix unescaping of quotes breaking attributes  ([25630](https://github.com/civicrm/civicrm-core/pull/25630))**
+- **Fix a couple more places to use mysql DATABASE() function
+  ([25537](https://github.com/civicrm/civicrm-core/pull/25537))**
 
-- **EntityRef - Format custom field display value on QuickForms ([25632](https://github.com/civicrm/civicrm-core/pull/25632))**
+- **Fix Scheduled reminders form to use tokenProcessor to get token list
+  ([25052](https://github.com/civicrm/civicrm-core/pull/25052))**
 
-- **Add new EntityReference custom field type ([25471](https://github.com/civicrm/civicrm-core/pull/25471))**
+- **fix the id help instead use class help
+  ([25487](https://github.com/civicrm/civicrm-core/pull/25487))**
 
-- **getStatus() should be returning a string ([25441](https://github.com/civicrm/civicrm-core/pull/25441))**
+- **Fix user profile file fields not saving.
+  ([80](https://github.com/civicrm/civicrm-drupal-8/pull/80))**
 
-- **Add setting to disable Smarty in scheduled reminders ([25444](https://github.com/civicrm/civicrm-core/pull/25444))**
+- **Fix fatal error on upgrade success screen
+  ([25554](https://github.com/civicrm/civicrm-core/pull/25554))**
 
-- **Regression: Fix DB syntax error on Parse address scheduled  job ([25616](https://github.com/civicrm/civicrm-core/pull/25616))**
+- **Typo executequery => executeQuery
+  ([25539](https://github.com/civicrm/civicrm-core/pull/25539))**
 
-- **Afform: Fix broken syntax for saving reciprocal relationships ([25620](https://github.com/civicrm/civicrm-core/pull/25620))**
+- **Smarty - Fix warnings about 'mb_truncate' modifier
+  ([25651](https://github.com/civicrm/civicrm-core/pull/25651))**
 
-- **Always show "add more buttons" dropdown in searchkit view ([25596](https://github.com/civicrm/civicrm-core/pull/25596))**
+- **Smarty - {htxt} blocks should not be evaluated unless needed
+  ([25653](https://github.com/civicrm/civicrm-core/pull/25653))**
 
-- **[REF][PHP8.2] Remove unnecessary dynamic property ([25622](https://github.com/civicrm/civicrm-core/pull/25622))**
+- **Smarty notice fix
+  ([25544](https://github.com/civicrm/civicrm-core/pull/25544))**
 
-- **[REF][PHP8.2] Fix use of self in callables deprecation ([25625](https://github.com/civicrm/civicrm-core/pull/25625))**
+- **E-notice fix Ical display
+  ([25612](https://github.com/civicrm/civicrm-core/pull/25612))**
 
-- **[REF][PHP8.2] Tidy up properties on api_v3_GroupContactTest ([25626](https://github.com/civicrm/civicrm-core/pull/25626))**
+- **Fix e-notice pattern around location not defined in formButtons.tpl
+  ([25668](https://github.com/civicrm/civicrm-core/pull/25668))**
 
-- **[REF][PHP8.2] Tidy up properties in CRM_Event_BAO_EventPermissionsTest ([25623](https://github.com/civicrm/civicrm-core/pull/25623))**
+- **Fix Contact import e-notice on preview screen
+  ([25302](https://github.com/civicrm/civicrm-core/pull/25302))**
 
-- **(REF) Remove test reference to property which no longer exists ([25624](https://github.com/civicrm/civicrm-core/pull/25624))**
+- **Fix mixin to use `addTemplateDir`
+  ([25667](https://github.com/civicrm/civicrm-core/pull/25667))**
 
-- **Php8.2 test fix, remove one instance of undeclared property ([25619](https://github.com/civicrm/civicrm-core/pull/25619))**
+- **Fix add version for civicrm_custom_field.fk_entity
+  ([25642](https://github.com/civicrm/civicrm-core/pull/25642))**
 
-- **Stop loading unused `relatedObjects` ([25617](https://github.com/civicrm/civicrm-core/pull/25617))**
+- **Fix handling of invalid sql query during import
+  ([25600](https://github.com/civicrm/civicrm-core/pull/25600))**
 
-- **[NFC] doc block fix ([25610](https://github.com/civicrm/civicrm-core/pull/25610))**
+- **Enotice fix, pledge block on UserDashboard
+  ([25546](https://github.com/civicrm/civicrm-core/pull/25546))**
 
-- **dev/core#4127 move mailing workflow check to userSystem ([25586](https://github.com/civicrm/civicrm-core/pull/25586))**
+- **Notice fix on preferred_language, when null
+  ([25656](https://github.com/civicrm/civicrm-core/pull/25656))**
 
-- **Remove function deprecated a year ago ([25615](https://github.com/civicrm/civicrm-core/pull/25615))**
+### CiviCase
 
-- **Fix test to test the thing it was written to test ([25608](https://github.com/civicrm/civicrm-core/pull/25608))**
+- **PHP8: Delete Case link causes fatal error
+  ([dev/core#4190](https://lab.civicrm.org/dev/core/-/issues/4190):
+  [25849](https://github.com/civicrm/civicrm-core/pull/25849))**
 
-- **[NFC] php8.2 support in test class `ActivitySearchTest` ([25607](https://github.com/civicrm/civicrm-core/pull/25607))**
+- **CiviCase Dashboard exports all records instead of the results
+  ([dev/core#4126](https://lab.civicrm.org/dev/core/-/issues/4126):
+  [25649](https://github.com/civicrm/civicrm-core/pull/25649))**
 
-- **distmaker - Fix export of WordPress patches ([25599](https://github.com/civicrm/civicrm-core/pull/25599))**
+### CiviContribute
 
-- **Make private function private ([25604](https://github.com/civicrm/civicrm-core/pull/25604))**
+- **Around 5.49 pan_truncation and card_type_id (containing card type VISA/MC
+  and last 4 digits last four digits stopped getting recorded
+  ([dev/core#4029](https://lab.civicrm.org/dev/core/-/issues/4029):
+  [25963](https://github.com/civicrm/civicrm-core/pull/25963))**
 
-- **Disambiguate `Address.state_province_id:abbr` ([25550](https://github.com/civicrm/civicrm-core/pull/25550))**
+- **Contribution Confirm incorrectly debit card information even if using
+  credit card ([dev/core#4189](https://lab.civicrm.org/dev/core/-/issues/4189):
+  [25910](https://github.com/civicrm/civicrm-core/pull/25910))**
 
-- **update entity mapping logic for profile fields to include contact subtypes ([25570](https://github.com/civicrm/civicrm-core/pull/25570))**
+- **Import contribution fails if using soft-credit and a row has an empty field
+  ([dev/core#4166](https://lab.civicrm.org/dev/core/-/issues/4166):
+  [25806](https://github.com/civicrm/civicrm-core/pull/25806))**
 
-- **Allow OAuth redirect URI to be overridden in client or provider config ([25445](https://github.com/civicrm/civicrm-core/pull/25445))**
+- **Fix empty values of Note on Import contribution
+  ([25569](https://github.com/civicrm/civicrm-core/pull/25569))**
 
-- **(REF) Tidy up unused params in api_v3_ContributionSoftTest ([25322](https://github.com/civicrm/civicrm-core/pull/25322))**
+- **Fix for issue when optional contact_id is blank importing contributions
+  ([25897](https://github.com/civicrm/civicrm-core/pull/25897))**
 
-- **APIv4 - Limited support for casting ([25595](https://github.com/civicrm/civicrm-core/pull/25595))**
+- **New PaypalPro Recurring Payments (PPRP) creating duplicate contributions
+  and inaccurate status
+  ([dev/core#4158](https://lab.civicrm.org/dev/core/-/issues/4158):
+  [25775](https://github.com/civicrm/civicrm-core/pull/25775))**
 
-- **Remove unused constants left over from import cleanup ([25601](https://github.com/civicrm/civicrm-core/pull/25601))**
+- **PayPal Prp IPN - Fix incorrect option_group update
+  ([25724](https://github.com/civicrm/civicrm-core/pull/25724))**
 
-- **api4 explorer: make boolean params work in cv (short syntax) ([25589](https://github.com/civicrm/civicrm-core/pull/25589))**
+- **CiviContribute - Fix warning about 'suppressedEmails' when generating PDF
+  ([25576](https://github.com/civicrm/civicrm-core/pull/25576))**
 
-- **Disambiguate `Address.state_province_id:abbr` (PHP asort) ([25552](https://github.com/civicrm/civicrm-core/pull/25552))**
+- **Contribution pages crash for logged-in users when CiviMember is disabled
+  ([25729](https://github.com/civicrm/civicrm-core/pull/25729))**
 
-- **Filter expired searches from search kit results ([25568](https://github.com/civicrm/civicrm-core/pull/25568))**
+- **Enotice fix on userDashboard with contributions, replace deprecated
+  functions with api4v calls
+  ([24861](https://github.com/civicrm/civicrm-core/pull/24861))**
 
-- **Fix empty values of Note on Import contribution ([25569](https://github.com/civicrm/civicrm-core/pull/25569))**
+- **Smarty notice fix on bank_account_number
+  ([25680](https://github.com/civicrm/civicrm-core/pull/25680))**
 
-- **Deprecate unused `CRM_Core_BAO_UFField::copy()` function ([25594](https://github.com/civicrm/civicrm-core/pull/25594))**
+- **AJAX error when sorting soft credit by name or date
+  ([dev/core#4187](https://lab.civicrm.org/dev/core/-/issues/4187):
+  [25846](https://github.com/civicrm/civicrm-core/pull/25846))**
 
-- **dev/core#4127 move ipAddress to userSystem ([25572](https://github.com/civicrm/civicrm-core/pull/25572))**
+### CiviEvent
 
-- **Fix more schema checks to use mysql DATABASE() function, deprecate php function ([25593](https://github.com/civicrm/civicrm-core/pull/25593))**
+- **Can't create new events from a template using the API
+  ([dev/core#4205](https://lab.civicrm.org/dev/core/-/issues/4205):
+  [25932](https://github.com/civicrm/civicrm-core/pull/25932))**
 
-- **Remove empty function ([25592](https://github.com/civicrm/civicrm-core/pull/25592))**
+### CiviMail
 
-- **Fix Contact import e-notice on preview screen ([25302](https://github.com/civicrm/civicrm-core/pull/25302))**
+- **Mailing Summary Report: support pseudofields
+  ([25560](https://github.com/civicrm/civicrm-core/pull/25560))**
 
-- **dev/core#4127 use userSystem method to check for Views ([25571](https://github.com/civicrm/civicrm-core/pull/25571))**
+- **FlexMailer: Default Return Path not respected
+  ([dev/core#4070](https://lab.civicrm.org/dev/core/-/issues/4070):
+  [25309](https://github.com/civicrm/civicrm-core/pull/25309))**
 
-- **[REF] Fix undefined variable notice in WordPress tests ([25591](https://github.com/civicrm/civicrm-core/pull/25591))**
+### Drupal Integration
 
-- **5.59 ([25590](https://github.com/civicrm/civicrm-core/pull/25590))**
+- **is_drupal: move functionality that calls this deprecated variable to System
+  classes ([dev/core#4127](https://lab.civicrm.org/dev/core/-/issues/4127):
+  [25585](https://github.com/civicrm/civicrm-core/pull/25585),
+  [25571](https://github.com/civicrm/civicrm-core/pull/25571),
+  [25587](https://github.com/civicrm/civicrm-core/pull/25587),
+  [25573](https://github.com/civicrm/civicrm-core/pull/25573),
+  [25586](https://github.com/civicrm/civicrm-core/pull/25586) and
+  [25572](https://github.com/civicrm/civicrm-core/pull/25572))**
 
-- **5.59 ([25584](https://github.com/civicrm/civicrm-core/pull/25584))**
+### WordPress Integration
 
-- **5.59 ([25582](https://github.com/civicrm/civicrm-core/pull/25582))**
+- **distmaker - Fix export of WordPress patches
+  ([25599](https://github.com/civicrm/civicrm-core/pull/25599))**
 
-- **5.59 ([25581](https://github.com/civicrm/civicrm-core/pull/25581))**
+## <a name="misc"></a>Miscellany
 
-- **CiviContribute - Fix warning about 'suppressedEmails' when generating PDF ([25576](https://github.com/civicrm/civicrm-core/pull/25576))**
+- **Simplify steps of loading SimpleCacheTest from cache/integration-tests
+  ([25942](https://github.com/civicrm/civicrm-core/pull/25942))**
 
-- **Smarty {ts} - For extensions, use fallback similar to E::ts() and JS ts() ([25383](https://github.com/civicrm/civicrm-core/pull/25383))**
+- **composer require --dev yoast/phpunit-polyfills
+  ([25631](https://github.com/civicrm/civicrm-core/pull/25631))**
 
-- **Make `activity_type_id` available to `links` hook, test ([25565](https://github.com/civicrm/civicrm-core/pull/25565))**
+- **Move form specific code to the form
+  ([25457](https://github.com/civicrm/civicrm-core/pull/25457))**
 
-- **Make unshared `getTree` function private, remove never passed params ([25517](https://github.com/civicrm/civicrm-core/pull/25517))**
+- **Make private function private
+  ([25604](https://github.com/civicrm/civicrm-core/pull/25604))**
 
-- **5.59 to master ([25567](https://github.com/civicrm/civicrm-core/pull/25567))**
+- **Make unshared `getTree` function private, remove never passed params
+  ([25517](https://github.com/civicrm/civicrm-core/pull/25517))**
 
-- **Preliminary cleanup, comments, type hints ([25564](https://github.com/civicrm/civicrm-core/pull/25564))**
+- **APIv4 - Limited support for casting
+  ([25595](https://github.com/civicrm/civicrm-core/pull/25595))**
 
-- **dev/core#4076 split up the theme method ([25329](https://github.com/civicrm/civicrm-core/pull/25329))**
+- **Split up CRM_Utils_System_Base::theme
+  ([dev/core#4076](https://lab.civicrm.org/dev/core/-/issues/4076):
+  [25329](https://github.com/civicrm/civicrm-core/pull/25329))**
 
-- **Fix fatal error on upgrade success screen ([25554](https://github.com/civicrm/civicrm-core/pull/25554))**
+- **Preliminary cleanup, comments, type hints
+  ([25564](https://github.com/civicrm/civicrm-core/pull/25564))**
 
-- **Mailing Summary Report: support pseudofields ([25560](https://github.com/civicrm/civicrm-core/pull/25560))**
+- **run `civix update` on `recaptcha`, `legacyCustomSearches`, `financialacls`
+  ([25663](https://github.com/civicrm/civicrm-core/pull/25663))**
 
-- **[REF][PHP8.2] Remove use of dynamic properties in CRM_Contact_Form_Task_EmailTest ([25562](https://github.com/civicrm/civicrm-core/pull/25562))**
+- **ext - General update to civix v23.02.0
+  ([25659](https://github.com/civicrm/civicrm-core/pull/25659))**
 
-- **[REF][PHP8.2] Get rid of dynamic properties in CRM_Core_Payment_AuthorizeNetTest ([25561](https://github.com/civicrm/civicrm-core/pull/25561))**
+- **CiviCRM Stable Version bump
+  ([291](https://github.com/civicrm/civicrm-wordpress/pull/291))**
 
-- **[REF][PHP8.2] Stop use of dynamic property in AdditionalPaymentTest ([25559](https://github.com/civicrm/civicrm-core/pull/25559))**
+- **Post divide code tidy up
+  ([25195](https://github.com/civicrm/civicrm-core/pull/25195))**
 
-- **[REF][PHP8.2] Use variable instead of dynmaic property (CRM_Group_Page_AjaxTest) ([25558](https://github.com/civicrm/civicrm-core/pull/25558))**
+- **Add gentle deprecation to `debug_log_message`
+  ([25683](https://github.com/civicrm/civicrm-core/pull/25683))**
 
-- **[REF][PHP8.2] Declare property in CRM_Pledge_BAO_PledgeBlockTest ([25557](https://github.com/civicrm/civicrm-core/pull/25557))**
+- **Stop loading unused `relatedObjects`
+  ([25617](https://github.com/civicrm/civicrm-core/pull/25617))**
 
-- **[REF][PHP8.2] Declare property in CRM_Utils_FakeObject ([25556](https://github.com/civicrm/civicrm-core/pull/25556))**
+- **Bump dompdf/dompdf from 2.0.2 to 2.0.3
+  ([25520](https://github.com/civicrm/civicrm-core/pull/25520))**
 
-- **A couple of minor smarty notice fixes ([25514](https://github.com/civicrm/civicrm-core/pull/25514))**
+- **Add noisy deprecation to `replaceHookTokens`
+  ([25510](https://github.com/civicrm/civicrm-core/pull/25510))**
 
-- **Upgrade test to use more recent methodology for testing forms ([25551](https://github.com/civicrm/civicrm-core/pull/25551))**
+- **Deprecate unused, exception class with non-standard name-spacing
+  ([25641](https://github.com/civicrm/civicrm-core/pull/25641))**
 
-- **Smarty notice fix ([25544](https://github.com/civicrm/civicrm-core/pull/25544))**
+- **Fully deprecate `CRM_Utils_Token::getMembershipTokenDetails`,
+  `CRM_Utils_Token::replaceEntityTokens`
+  ([25507](https://github.com/civicrm/civicrm-core/pull/25507))**
 
-- **Remove always-NULL `$singleRecord` variable ([25519](https://github.com/civicrm/civicrm-core/pull/25519))**
+- **Extra deprecation for clarity on token function
+  `convertPseudoConstantsUsingMetadata`
+  ([25511](https://github.com/civicrm/civicrm-core/pull/25511))**
 
-- **Enotice fix, pledge block on UserDashboard ([25546](https://github.com/civicrm/civicrm-core/pull/25546))**
+- **Pull over a few more deprecations + blockDelete deprecation
+  ([25695](https://github.com/civicrm/civicrm-core/pull/25695))**
 
-- **SearchKit - Configurable action menu tasks per-search-display ([25521](https://github.com/civicrm/civicrm-core/pull/25521))**
+- **Address portions of deprecated code replacement
+  ([25693](https://github.com/civicrm/civicrm-core/pull/25693))**
 
-- **Do not use reference for Object parameter, death to `_NULLObject` ([25541](https://github.com/civicrm/civicrm-core/pull/25541))**
+- **Deprecate unused `CRM_Core_BAO_UFField::copy()` function
+  ([25594](https://github.com/civicrm/civicrm-core/pull/25594))**
 
-- **Remove invalid  'world_region' => 'India' from test ([25540](https://github.com/civicrm/civicrm-core/pull/25540))**
+- **Deprecations for Mailing::delete functions
+  ([25691](https://github.com/civicrm/civicrm-core/pull/25691))**
 
-- **Fix a couple more places to use mysql DATABASE() function ([25537](https://github.com/civicrm/civicrm-core/pull/25537))**
+- **Deprecations for delete on ACL entities
+  ([25690](https://github.com/civicrm/civicrm-core/pull/25690))**
 
-- **5.59 ([25538](https://github.com/civicrm/civicrm-core/pull/25538))**
+- **Fully deprecate legacy contributionTokens
+  ([25505](https://github.com/civicrm/civicrm-core/pull/25505))**
 
-- **Typo executequery => executeQuery ([25539](https://github.com/civicrm/civicrm-core/pull/25539))**
+- **Fully deprecate `CRM_Core_SelectValues::eventTokens()`
+  ([25509](https://github.com/civicrm/civicrm-core/pull/25509))**
 
-- **NFC cleanup in test class ([25524](https://github.com/civicrm/civicrm-core/pull/25524))**
+- **Fully deprecate `CRM_Core_SelectValues::membershipTokens()`
+  ([25506](https://github.com/civicrm/civicrm-core/pull/25506))**
 
-- **Use mysql DATABASE() function instead of php code ([25530](https://github.com/civicrm/civicrm-core/pull/25530))**
+- **Add noisy deprecation to deprecated function, after universe search
+  ([25662](https://github.com/civicrm/civicrm-core/pull/25662))**
 
-- **5.59 ([25531](https://github.com/civicrm/civicrm-core/pull/25531))**
+- **Remove legacy handling of locks for discontinued mysql/mariaDB versions
+  ([25654](https://github.com/civicrm/civicrm-core/pull/25654))**
 
-- **Use `DATABASE()` function rather than lossa code ([25528](https://github.com/civicrm/civicrm-core/pull/25528))**
+- **Remove forward incompatible syntax from template  
+  ([25664](https://github.com/civicrm/civicrm-core/pull/25664))**
 
-- **Enotice fix on userDashboard with contributions, replace deprecated functions with api4v calls ([24861](https://github.com/civicrm/civicrm-core/pull/24861))**
+- **Remove conditional assignment around `is_deductible`
+  ([25237](https://github.com/civicrm/civicrm-core/pull/25237))**
 
-- **5.59 ([25526](https://github.com/civicrm/civicrm-core/pull/25526))**
+- **Remove unnecessary pass-by-reference
+  ([25678](https://github.com/civicrm/civicrm-core/pull/25678))**
 
-- **Bump dompdf/dompdf from 2.0.2 to 2.0.3 ([25520](https://github.com/civicrm/civicrm-core/pull/25520))**
+- **Remove empty on location - it should always be set now
+  ([25675](https://github.com/civicrm/civicrm-core/pull/25675))**
 
-- **Add noisy deprecation to `replaceHookTokens` ([25510](https://github.com/civicrm/civicrm-core/pull/25510))**
+- **Remove always-NULL `$singleRecord` variable
+  ([25519](https://github.com/civicrm/civicrm-core/pull/25519))**
 
-- **dev/core#4117 Add is_current to UserJob, Search ([25516](https://github.com/civicrm/civicrm-core/pull/25516))**
+- **Remove 2020-deprecated handling of `legacyAddressCreate`
+  ([25686](https://github.com/civicrm/civicrm-core/pull/25686))**
 
-- **Remove never-true IF ([25518](https://github.com/civicrm/civicrm-core/pull/25518))**
+- **Remove code deprecated in 2018
+  ([25679](https://github.com/civicrm/civicrm-core/pull/25679))**
 
-- **Remove interaction with complex legacy `getTree` function ([25395](https://github.com/civicrm/civicrm-core/pull/25395))**
+- **Remove function noisily deprecated when the world was young (2020)
+  ([25685](https://github.com/civicrm/civicrm-core/pull/25685))**
 
-- **only load dedupe rules for the chosen entity ([25515](https://github.com/civicrm/civicrm-core/pull/25515))**
+- **Remove deprecated function call
+  ([25684](https://github.com/civicrm/civicrm-core/pull/25684))**
 
-- **Post divide code tidy up ([25195](https://github.com/civicrm/civicrm-core/pull/25195))**
+- **Remove deprecated functions from tests
+  ([25688](https://github.com/civicrm/civicrm-core/pull/25688))**
 
-- **(dev/core#4028) make CRM_Admin_Form_Setting_UF more CMS agnostic ([25328](https://github.com/civicrm/civicrm-core/pull/25328))**
+- **Remove deprecated function calls to Event::del, Membership functions del,
+  OptionValue ([25705](https://github.com/civicrm/civicrm-core/pull/25705))**
 
-- **Fully deprecate `CRM_Utils_Token::getMembershipTokenDetails`, `CRM_Utils_Token::replaceEntityTokens` ([25507](https://github.com/civicrm/civicrm-core/pull/25507))**
+- **Remove function deprecated a year ago
+  ([25615](https://github.com/civicrm/civicrm-core/pull/25615))**
 
-- **PaymentProcessor - Use ajax refresh ([25512](https://github.com/civicrm/civicrm-core/pull/25512))**
+- **Remove deprecated use of $ids
+  ([25698](https://github.com/civicrm/civicrm-core/pull/25698))**
 
-- **Fully deprecate `CRM_Core_SelectValues::eventTokens()` ([25509](https://github.com/civicrm/civicrm-core/pull/25509))**
+- **Delete long-deprecated functions
+  ([25696](https://github.com/civicrm/civicrm-core/pull/25696))**
 
-- **Add extra test, comment how it could be used to fix bug ([25503](https://github.com/civicrm/civicrm-core/pull/25503))**
+- **Remove the correct extraneous field separator field
+  ([25753](https://github.com/civicrm/civicrm-core/pull/25753))**
 
-- **Remove unused variable ([25508](https://github.com/civicrm/civicrm-core/pull/25508))**
+- **Remove never-true IF
+  ([25518](https://github.com/civicrm/civicrm-core/pull/25518))**
 
-- **Fully deprecate `CRM_Core_SelectValues::membershipTokens()` ([25506](https://github.com/civicrm/civicrm-core/pull/25506))**
+- **Remove unused constants left over from import cleanup
+  ([25601](https://github.com/civicrm/civicrm-core/pull/25601))**
 
-- **Fully deprecate legacy contributionTokens ([25505](https://github.com/civicrm/civicrm-core/pull/25505))**
+- **Remove interaction with complex legacy `getTree` function
+  ([25395](https://github.com/civicrm/civicrm-core/pull/25395))**
 
-- **API4: Allow save() to match on null values ([24971](https://github.com/civicrm/civicrm-core/pull/24971))**
+- **Remove empty function
+  ([25592](https://github.com/civicrm/civicrm-core/pull/25592))**
 
-- **Fix Scheduled reminders form to use tokenProcessor to get token list ([25052](https://github.com/civicrm/civicrm-core/pull/25052))**
+- **Remove unused variable
+  ([25508](https://github.com/civicrm/civicrm-core/pull/25508))**
 
-- **Default to supporting partial locales ([25063](https://github.com/civicrm/civicrm-core/pull/25063))**
+- **Remove unused variables
+  ([25670](https://github.com/civicrm/civicrm-core/pull/25670))**
 
-- **fix the id help instead use class help ([25487](https://github.com/civicrm/civicrm-core/pull/25487))**
+- **Remove unused property - not used since import code refactor `_lineCount`
+  ([25466](https://github.com/civicrm/civicrm-core/pull/25466))**
 
-- **[REF][PHP8.2] Refactor properties on CRM_Event_Form_SearchTest ([25501](https://github.com/civicrm/civicrm-core/pull/25501))**
+- **(REF) Tidy up unused params in api_v3_ContributionSoftTest
+  ([25322](https://github.com/civicrm/civicrm-core/pull/25322))**
 
-- **[REF][PHP8.2] Declare dynamic property in two SMS tests ([25502](https://github.com/civicrm/civicrm-core/pull/25502))**
+- **[REF] Fix undefined variable notice in WordPress tests
+  ([25591](https://github.com/civicrm/civicrm-core/pull/25591))**
 
-- **dev/drupal#176 - allow symfony 6 ([25499](https://github.com/civicrm/civicrm-core/pull/25499))**
+- **(REF) Remove test reference to property which no longer exists
+  ([25624](https://github.com/civicrm/civicrm-core/pull/25624))**
 
-- **(REF) Remove unused setup from AdhocMailingTest ([25500](https://github.com/civicrm/civicrm-core/pull/25500))**
+- **(REF) Remove unused setup from AdhocMailingTest
+  ([25500](https://github.com/civicrm/civicrm-core/pull/25500))**
 
-- **dev/drupal#176 - Move cache/integrationtest only used for testing into require-dev ([25054](https://github.com/civicrm/civicrm-core/pull/25054))**
+- **[REF] Add support for composer installers v2 which seems to be needed for
+  d10 ([79](https://github.com/civicrm/civicrm-drupal-8/pull/79))**
 
-- **Fix user profile file fields not saving. ([80](https://github.com/civicrm/civicrm-drupal-8/pull/80))**
+- **Php8.x compatibility - do not try to count NULL
+  ([25652](https://github.com/civicrm/civicrm-core/pull/25652))**
 
-- **[REF] Add support for composer installers v2 which seems to be needed… ([79](https://github.com/civicrm/civicrm-drupal-8/pull/79))**
+- **[REF][PHP8.2] Remove use of dynamic properties in
+  CRM_Contact_Form_Task_EmailTest
+  ([25562](https://github.com/civicrm/civicrm-core/pull/25562))**
 
-- **update CiviCrmTestBase setup() method declaration to match BrowserTestBase ([78](https://github.com/civicrm/civicrm-drupal-8/pull/78))**
+- **[REF][PHP8.2] Get rid of dynamic properties in
+  CRM_Core_Payment_AuthorizeNetTest
+  ([25561](https://github.com/civicrm/civicrm-core/pull/25561))**
 
-- **CiviCRM Stable Version bump ([291](https://github.com/civicrm/civicrm-wordpress/pull/291))**
+- **[REF][PHP8.2] Stop use of dynamic property in AdditionalPaymentTest
+  ([25559](https://github.com/civicrm/civicrm-core/pull/25559))**
 
-- **5.59 ([290](https://github.com/civicrm/civicrm-wordpress/pull/290))**
+- **[REF][PHP8.2] Use variable instead of dynmaic property
+  (CRM_Group_Page_AjaxTest)
+  ([25558](https://github.com/civicrm/civicrm-core/pull/25558))**
 
-## <a name="misc"></a>Miscellany
+- **[REF][PHP8.2] Declare property in CRM_Pledge_BAO_PledgeBlockTest
+  ([25557](https://github.com/civicrm/civicrm-core/pull/25557))**
+
+- **[REF][PHP8.2] Declare property in CRM_Utils_FakeObject
+  ([25556](https://github.com/civicrm/civicrm-core/pull/25556))**
+
+- **[REF][PHP8.2] Refactor properties on CRM_Event_Form_SearchTest
+  ([25501](https://github.com/civicrm/civicrm-core/pull/25501))**
+
+- **[REF][PHP8.2] Declare dynamic property in two SMS tests
+  ([25502](https://github.com/civicrm/civicrm-core/pull/25502))**
+
+- **[REF][PHP8.2] Remove unnecessary dynamic property
+  ([25622](https://github.com/civicrm/civicrm-core/pull/25622))**
+
+- **[REF][PHP8.2] Fix use of self in callables deprecation
+  ([25625](https://github.com/civicrm/civicrm-core/pull/25625))**
+
+- **[REF][PHP8.2] Tidy up properties on api_v3_GroupContactTest
+  ([25626](https://github.com/civicrm/civicrm-core/pull/25626))**
+
+- **[REF][PHP8.2] Tidy up properties in CRM_Event_BAO_EventPermissionsTest
+  ([25623](https://github.com/civicrm/civicrm-core/pull/25623))**
+
+- **update CiviCrmTestBase setup() method declaration to match BrowserTestBase
+  ([78](https://github.com/civicrm/civicrm-drupal-8/pull/78))**
+
+- **(NFC) crmURL - Add examples and whitespace. Crosslink docs.
+  ([25665](https://github.com/civicrm/civicrm-core/pull/25665))**
+
+- **[NFC] php8.2 support in test class `ActivitySearchTest`
+  ([25607](https://github.com/civicrm/civicrm-core/pull/25607))**
+
+- **NFC cleanup in test class
+  ([25524](https://github.com/civicrm/civicrm-core/pull/25524))**
+
+- **(NFC) Version Check Test - Fix multi-user and concurrent execution
+  [25909](https://github.com/civicrm/civicrm-core/pull/25909)**
+
+- **[NFC] doc block fix
+  ([25610](https://github.com/civicrm/civicrm-core/pull/25610))**
+
+- **Fix test to test the thing it was written to test
+  ([25608](https://github.com/civicrm/civicrm-core/pull/25608))**
+
+- **Event test cleanup, fix test to use submitted form values, rather than
+  require a lot of contorting
+  ([25621](https://github.com/civicrm/civicrm-core/pull/25621))**
+
+- **Remove invalid  'world_region' => 'India' from test
+  ([25540](https://github.com/civicrm/civicrm-core/pull/25540))**
+
+- **Php8.2 test fix, remove one instance of undeclared property
+  ([25619](https://github.com/civicrm/civicrm-core/pull/25619))**
+
+- **Extend testing for ContributionConfirm & consolidate
+  `isSeparateMembershipPayment`
+  ([25270](https://github.com/civicrm/civicrm-core/pull/25270))**
+
+- **Upgrade test to use more recent methodology for testing forms
+  ([25551](https://github.com/civicrm/civicrm-core/pull/25551))**
+
+- **Add extra test, comment how it could be used to fix bug
+  ([25503](https://github.com/civicrm/civicrm-core/pull/25503))**
+
+- **Reduce processing load in test `assertAPIFailure`
+  ([25648](https://github.com/civicrm/civicrm-core/pull/25648))**
 
 ## <a name="credits"></a>Credits
 
 This release was developed by the following code authors:
 
-AGH Strategies - Alice Frumin, Andie Hunt; anemirovsky; BrightMinded Ltd - Bradley Taylor; CiviCRM - Coleman Watts, Tim Otten; CiviDesk - Yashodha Chaku; Coop SymbioTIC - Mathieu Lutfy; Dave D; dependabot[bot]; ES-Progress - Sandor Semsey; Freeform Solutions - Herb van den Dool; Fuzion - Jitendra Purohit; iXiam - Luciano Spiegel; JMA Consulting - Seamus Lee; Lemniscus - Noah Miller; Megaphone Technology Consulting - Jon Goldberg; MJW Consulting - Matthew Wire; PERORA SRL - Samuele Masetto; Progressive Technology Project - Jamie McClelland; Skvare - Mark Hanna; Tadpole Collective - Kevin Cristiano; Third Sector Design - Kurund Jalmi, Michael McAndrew; Wikimedia Foundation - Eileen McNaughton
+AGH Strategies - Alice Frumin, Andie Hunt; BrightMinded Ltd - Bradley Taylor;
+CiviCRM - Coleman Watts, Tim Otten; CiviDesk - Yashodha Chaku; Coop SymbioTIC -
+Mathieu Lutfy; Dave D; ES-Progress - Sandor Semsey; Freeform Solutions - Herb
+van den Dool; Fuzion - Jitendra Purohit; Giant Rabbit - Anthony Nemirovsky;
+iXiam - Luciano Spiegel; JMA Consulting - Seamus Lee; Lemniscus - Noah Miller;
+Megaphone Technology Consulting - Jon Goldberg; MJW Consulting - Matthew Wire;
+PERORA SRL - Samuele Masetto; Progressive Technology Project - Jamie McClelland;
+Skvare - Mark Hanna; Tadpole Collective - Kevin Cristiano; Third Sector
+Design - Kurund Jalmi, Michael McAndrew; Wikimedia Foundation - Eileen
+McNaughton
 
 Most authors also reviewed code for this release; in addition, the following
 reviewers contributed their comments:
 
-Agileware - Francis Whittle, Justin Freeman; Andreas Howiller; BeccaTregenna; Blackfly Solutions - Alan Dixon; BrightMinded Ltd - Bradley Taylor; civibot[bot]; civicrm-builder; CiviCRM - Coleman Watts, Tim Otten; CiviDesk - Yashodha Chaku; Dave D; Freeform Solutions - Herb van den Dool; Fuzion - Luke Stewart; Jens Schuppe; JMA Consulting - Joe Murray, Seamus Lee; Lemniscus - Noah Miller; Megaphone Technology Consulting - Brienne Kordis, Jon Goldberg; MJW Consulting - Matthew Wire; Squiffle Consulting - Aidan Saunders; Stephen Palmstrom; Tadpole Collective - Kevin Cristiano; Third Sector Design - Michael McAndrew; Wikimedia Foundation - Eileen McNaughton
+Agileware - Francis Whittle, Justin Freeman; Andreas Howiller; Becca Tregenna;
+Blackfly Solutions - Alan Dixon; Fuzion - Luke Stewart; Jens Schuppe;
+JMA Consulting - Joe Murray; Megaphone Technology Consulting - Brienne Kordis;
+Squiffle Consulting - Aidan Saunders; Stephen Palmstrom
 
 ## <a name="feedback"></a>Feedback