From 6ef66db300389a17e4eda0e41f72f9c11530a121 Mon Sep 17 00:00:00 2001 From: Andie Hunt Date: Thu, 27 Apr 2023 16:43:30 -0400 Subject: [PATCH] 5.61.0 release notes: raw from script --- release-notes/5.61.0.md | 535 ++++++++++++++++++++++++++++++++++++++++ 1 file changed, 535 insertions(+) create mode 100644 release-notes/5.61.0.md diff --git a/release-notes/5.61.0.md b/release-notes/5.61.0.md new file mode 100644 index 0000000000..2e1d9040d8 --- /dev/null +++ b/release-notes/5.61.0.md @@ -0,0 +1,535 @@ +# CiviCRM 5.61.0 + +Released May 3, 2023; + +- **[Features](#features)** +- **[Bugs resolved](#bugs)** +- **[Miscellany](#misc)** +- **[Credits](#credits)** + +## Features + +### Core CiviCRM + +- **crm- Missing Summary ([25761](https://github.com/civicrm/civicrm-core/pull/25761))** + +## Bugs resolved + +### Core CiviCRM + +- **dev/core#4249 Ensure that no deprecation logging occurs from groupPer… ([26099](https://github.com/civicrm/civicrm-core/pull/26099))** + +- **dev/core#4247 Ensure that Membership values are populated to prevent … ([26085](https://github.com/civicrm/civicrm-core/pull/26085))** + +- **Updates pear/pear-core-minimal and guzzlehttp/psr7 ([26082](https://github.com/civicrm/civicrm-core/pull/26082))** + +- **Fix dev/core#4240 - Saving entityReference field value via API ([26067](https://github.com/civicrm/civicrm-core/pull/26067))** + +- **Afform - Fix showing default values for EntityRef fields ([26008](https://github.com/civicrm/civicrm-core/pull/26008))** + +- **Type hints & strictness fixes within tests ([26013](https://github.com/civicrm/civicrm-core/pull/26013))** + +- **Remove an attention-span's worth of cvs info ([26012](https://github.com/civicrm/civicrm-core/pull/26012))** + +- **[Test] Strictness fixes - `CiviUntTestBaseClass` ([26011](https://github.com/civicrm/civicrm-core/pull/26011))** + +- **Strictness cleanups in test class ([26005](https://github.com/civicrm/civicrm-core/pull/26005))** + +- **Send SMS: fix invalid htxt tag error ([26010](https://github.com/civicrm/civicrm-core/pull/26010))** + +- **Afform - Support repeatable relationships ([25175](https://github.com/civicrm/civicrm-core/pull/25175))** + +- **Remove upgrade custom field handling from Dedupe code - previously shared function ([26004](https://github.com/civicrm/civicrm-core/pull/26004))** + +- **Clarify `entityID` types in Merger class ([26003](https://github.com/civicrm/civicrm-core/pull/26003))** + +- **Avoid potentially undefined var ([26001](https://github.com/civicrm/civicrm-core/pull/26001))** + +- **When importing invalid campaigns they pass validation (only to fail on import) ([25988](https://github.com/civicrm/civicrm-core/pull/25988))** + +- **Allow to disable an invalid relationship (eg. contact subtype was changed so no longer valid) ([25647](https://github.com/civicrm/civicrm-core/pull/25647))** + +- **[Backport] Fix dedupe checking in afform for anonymous users ([25999](https://github.com/civicrm/civicrm-core/pull/25999))** + +- **🥚 Payment API creates Activity with subject: "$x Offline Payment for Contribution" even when a payment was captured online ([25997](https://github.com/civicrm/civicrm-core/pull/25997))** + +- **Use label, where present for import field labels ([25991](https://github.com/civicrm/civicrm-core/pull/25991))** + +- **Campaign - Make name index unique ([25995](https://github.com/civicrm/civicrm-core/pull/25995))** + +- **[TESTS] Fix some campaign cleanup ([25996](https://github.com/civicrm/civicrm-core/pull/25996))** + +- **Fix url from just-merged PR ([25990](https://github.com/civicrm/civicrm-core/pull/25990))** + +- **Fix enotice when using Civi-import ([25979](https://github.com/civicrm/civicrm-core/pull/25979))** + +- **Civi-Import - Add Template search ([25939](https://github.com/civicrm/civicrm-core/pull/25939))** + +- **Activity BAO - Remove unused classes/functions ([25971](https://github.com/civicrm/civicrm-core/pull/25971))** + +- **BAO - deprecate create for writeRecord: SavedSearch ([25973](https://github.com/civicrm/civicrm-core/pull/25973))** + +- **BAO - Deprecate `setIsActive` BAO functions ([25976](https://github.com/civicrm/civicrm-core/pull/25976))** + +- **5.60 ([25986](https://github.com/civicrm/civicrm-core/pull/25986))** + +- **Civi-Import - improvements to the search display for imported rows ([25977](https://github.com/civicrm/civicrm-core/pull/25977))** + +- **Minor fixes to Civi-Import screen, populating defaults, missing `ts` ([25980](https://github.com/civicrm/civicrm-core/pull/25980))** + +- **5.60 to master ([25985](https://github.com/civicrm/civicrm-core/pull/25985))** + +- **[NFC] Don't have null values for required fields in Case test fixture ([25983](https://github.com/civicrm/civicrm-core/pull/25983))** + +- **BAO - deprecate create for writeRecord: SubscriptionHistory ([25974](https://github.com/civicrm/civicrm-core/pull/25974))** + +- **5.60 to master ([25978](https://github.com/civicrm/civicrm-core/pull/25978))** + +- **BAO - deprecate create for writeRecord: ACL ([25970](https://github.com/civicrm/civicrm-core/pull/25970))** + +- **Demolish the factory 🏭💥 ([25975](https://github.com/civicrm/civicrm-core/pull/25975))** + +- **SearchKit - Pass entire record into `checkAccess` ([25969](https://github.com/civicrm/civicrm-core/pull/25969))** + +- **BAO - deprecate create for writeRecord: Batch ([25972](https://github.com/civicrm/civicrm-core/pull/25972))** + +- **(dev/core#4188) PHPUnit - Port TAP printer to v9.x ([25956](https://github.com/civicrm/civicrm-core/pull/25956))** + +- **Remove noisily deprecated code ([25965](https://github.com/civicrm/civicrm-core/pull/25965))** + +- **5.60 to master ([25966](https://github.com/civicrm/civicrm-core/pull/25966))** + +- **Fix master-only regression on loading membership changes ([25964](https://github.com/civicrm/civicrm-core/pull/25964))** + +- **Upgrade fix for url change ([25962](https://github.com/civicrm/civicrm-core/pull/25962))** + +- **dev/core#3133 - Extend Authx functionality to support validation of e… ([25952](https://github.com/civicrm/civicrm-core/pull/25952))** + +- **CustomFields - drop unused 'javascript' column ([25958](https://github.com/civicrm/civicrm-core/pull/25958))** + +- **Duplicate logging not needed for PEAR_Errors anymore ([25953](https://github.com/civicrm/civicrm-core/pull/25953))** + +- **Manage groups - add dedicated url for edit/delete group ([25955](https://github.com/civicrm/civicrm-core/pull/25955))** + +- **[REF] Refactor location-related BAOs to use `writeRecord` ([25944](https://github.com/civicrm/civicrm-core/pull/25944))** + +- **Flush cache that holds schema links information when saving UserJob ([25959](https://github.com/civicrm/civicrm-core/pull/25959))** + +- **Import templates Set created_id, expires_date appropriately ([25957](https://github.com/civicrm/civicrm-core/pull/25957))** + +- **dev/core#3804 - Fix recently performed activities on case dashboard when no upcoming exist ([25954](https://github.com/civicrm/civicrm-core/pull/25954))** + +- **Check presence of field, rather than extra smarty variable for whether to display the field ([25917](https://github.com/civicrm/civicrm-core/pull/25917))** + +- **dev/core#4200 use org ID rather than assume it ([25906](https://github.com/civicrm/civicrm-core/pull/25906))** + +- **add locale param to smarty crmMoney() ([25726](https://github.com/civicrm/civicrm-core/pull/25726))** + +- **5.60 to master ([25951](https://github.com/civicrm/civicrm-core/pull/25951))** + +- **(dev/core#4188) phpunit.xml.dist - Make file compatible with phpunit8 + phpunit9 ([25946](https://github.com/civicrm/civicrm-core/pull/25946))** + +- **(dev/core#4188) Update CRM tests for phpunit9 compatibility ([25949](https://github.com/civicrm/civicrm-core/pull/25949))** + +- **(dev/core#4188) Update APIv3 tests for phpunit9 compatibility ([25948](https://github.com/civicrm/civicrm-core/pull/25948))** + +- **(dev/core#4188) Update APIv4 tests for phpunit9 compatibility ([25947](https://github.com/civicrm/civicrm-core/pull/25947))** + +- **PaymentProcessor - Enter title instead of name on form, call hooks ([25873](https://github.com/civicrm/civicrm-core/pull/25873))** + +- **Refactor CRM_Core_BAO_Email to use DAO::writeRecord ([25937](https://github.com/civicrm/civicrm-core/pull/25937))** + +- **Log sending of Scheduled Reminders ([25933](https://github.com/civicrm/civicrm-core/pull/25933))** + +- **[NFC] Remove extraneous NULL ([25941](https://github.com/civicrm/civicrm-core/pull/25941))** + +- **Merge forward 5.60-rc=>master ([25943](https://github.com/civicrm/civicrm-core/pull/25943))** + +- **Fix bug in just-merged upgrade code ([25940](https://github.com/civicrm/civicrm-core/pull/25940))** + +- **dev/core#4130 add template support for imports ([25808](https://github.com/civicrm/civicrm-core/pull/25808))** + +- **5.60 to master ([25936](https://github.com/civicrm/civicrm-core/pull/25936))** + +- **dev/core#3514 Define hook to alter data once it has been mapped but before work is done on it. ([25879](https://github.com/civicrm/civicrm-core/pull/25879))** + +- **Update Contribution Import to use apiv4 field names, prior to adding hooks ([25886](https://github.com/civicrm/civicrm-core/pull/25886))** + +- **Regenerate DAOs with usage from #25874 ([25934](https://github.com/civicrm/civicrm-core/pull/25934))** + +- **Speed up SearchKit results loading by 800ms ([25408](https://github.com/civicrm/civicrm-core/pull/25408))** + +- **Extract `isMembershipPriceSet` (`useForMember`) ([25754](https://github.com/civicrm/civicrm-core/pull/25754))** + +- **Add unit test cover for test offline mail receipt ([25929](https://github.com/civicrm/civicrm-core/pull/25929))** + +- **Fix import contribution url ([25907](https://github.com/civicrm/civicrm-core/pull/25907))** + +- **[php8.2] Create getter for `renewalMembershipID`, remove if ([25833](https://github.com/civicrm/civicrm-core/pull/25833))** + +- **CiviReport - Remove duplicate external identifier key in contact fields array, reduce notices ([25454](https://github.com/civicrm/civicrm-core/pull/25454))** + +- **[NFC] Test cleanup, prefer full form test flow ([25928](https://github.com/civicrm/civicrm-core/pull/25928))** + +- **Fix intermittant test fail ([25924](https://github.com/civicrm/civicrm-core/pull/25924))** + +- **[REF][PHP8.2] Declare properties directly on CRM_Core_Form_EntityFormTrait ([25926](https://github.com/civicrm/civicrm-core/pull/25926))** + +- **[REF][PHP8.2] Convert dynamic property into a variable ([25925](https://github.com/civicrm/civicrm-core/pull/25925))** + +- **Stop passing `$this` as `$form` to previously shared, non-static, function ([25923](https://github.com/civicrm/civicrm-core/pull/25923))** + +- **dev/core#4204 Show the Payment Agreement of the selected processor ([25918](https://github.com/civicrm/civicrm-core/pull/25918))** + +- **[REF][PHP8.2] Remove unused dyanamic property ([25921](https://github.com/civicrm/civicrm-core/pull/25921))** + +- **5.60 to master ([25916](https://github.com/civicrm/civicrm-core/pull/25916))** + +- **dev/core#3937 Remove legacy code causing custom boolean import bug ([25900](https://github.com/civicrm/civicrm-core/pull/25900))** + +- **UpdateConfigBackend: use api4 to flush the cache ([25913](https://github.com/civicrm/civicrm-core/pull/25913))** + +- **(dev/core#4176) Allow to search on participant id ([25780](https://github.com/civicrm/civicrm-core/pull/25780))** + +- **dev/core#4152 Fix custom data code to not cast to a float ([25876](https://github.com/civicrm/civicrm-core/pull/25876))** + +- **5.60 to master ([25911](https://github.com/civicrm/civicrm-core/pull/25911))** + +- **Api4 - Prevent developer error mixing up `addValue` with `addWhere` ([25905](https://github.com/civicrm/civicrm-core/pull/25905))** + +- **Note API - Fix viewing, joining to, and updating Notes ([25672](https://github.com/civicrm/civicrm-core/pull/25672))** + +- **Code cleanup on aisle Hook ([25903](https://github.com/civicrm/civicrm-core/pull/25903))** + +- **Fix recently added import url ([25895](https://github.com/civicrm/civicrm-core/pull/25895))** + +- **Show friendlier labels when Civi-Import enabled ([25896](https://github.com/civicrm/civicrm-core/pull/25896))** + +- **Fix Contact Import tests custom date testing, remove duplicate handling ([25898](https://github.com/civicrm/civicrm-core/pull/25898))** + +- **[NFC] hulk smash ([25902](https://github.com/civicrm/civicrm-core/pull/25902))** + +- **Deprecate CRM_Utils_Hook::$nullObject ([25901](https://github.com/civicrm/civicrm-core/pull/25901))** + +- **Add getter for dedupeRuleGroupID ([25894](https://github.com/civicrm/civicrm-core/pull/25894))** + +- **Add handling of `usage` to `DAO` generator ([25874](https://github.com/civicrm/civicrm-core/pull/25874))** + +- **Remove 2021 noisily deprecated pdfCommon function ([25887](https://github.com/civicrm/civicrm-core/pull/25887))** + +- **[NFC] Add metadata about import jobs to `MapField` form ([25891](https://github.com/civicrm/civicrm-core/pull/25891))** + +- **Remove references to deprecated `preferred_mail_format` in tests ([25890](https://github.com/civicrm/civicrm-core/pull/25890))** + +- **[REF][PHP8.2] Remove property which is no longer used ([25889](https://github.com/civicrm/civicrm-core/pull/25889))** + +- **civicrm_cache - Replace wonky index ([25885](https://github.com/civicrm/civicrm-core/pull/25885))** + +- **CiviUnitTestCase (etal) - Resolve spooky interaction ([25855](https://github.com/civicrm/civicrm-core/pull/25855))** + +- **Remove preferred_mail_format from tokens ([25883](https://github.com/civicrm/civicrm-core/pull/25883))** + +- **don't create tagset markup if there's no tagset ([25884](https://github.com/civicrm/civicrm-core/pull/25884))** + +- **ensure delays from transactions don't cause cache race condition ([25673](https://github.com/civicrm/civicrm-core/pull/25673))** + +- **Move getSubmittedValues to `CRM_Core_Form` ([25877](https://github.com/civicrm/civicrm-core/pull/25877))** + +- **Skip adding script when it won't have anything to run on ([25882](https://github.com/civicrm/civicrm-core/pull/25882))** + +- **SchemaHandler - Add IF EXISTS to dropTable function ([25881](https://github.com/civicrm/civicrm-core/pull/25881))** + +- **Use API4 to create 'Assign Case Role' activity ([25880](https://github.com/civicrm/civicrm-core/pull/25880))** + +- **APIv4 - Show actions as deprecated in the Explorer ([25402](https://github.com/civicrm/civicrm-core/pull/25402))** + +- **Afform: Fix dedupe rules for anonymous users ([25461](https://github.com/civicrm/civicrm-core/pull/25461))** + +- **Add deprecations to unreachable code in previously shared function ([25779](https://github.com/civicrm/civicrm-core/pull/25779))** + +- **Remove do-nothing noisily deprecated formatting code ([25878](https://github.com/civicrm/civicrm-core/pull/25878))** + +- **[PHP8.2] Declare outputHandler property in reports ([25875](https://github.com/civicrm/civicrm-core/pull/25875))** + +- **CiviUnitTestCase - Degrade gracefully on older DBMS ([25872](https://github.com/civicrm/civicrm-core/pull/25872))** + +- **Post split code cleanup ([25862](https://github.com/civicrm/civicrm-core/pull/25862))** + +- **[REF] Simplify import preProcess ([25869](https://github.com/civicrm/civicrm-core/pull/25869))** + +- **Switch out the switch ([25868](https://github.com/civicrm/civicrm-core/pull/25868))** + +- **[REF] Minor code simplification - extract `getHighlightedFields` in Contribution import `MapField` ([25866](https://github.com/civicrm/civicrm-core/pull/25866))** + +- **[NFC] Remove some no-longer-used properties on Contribution import parser ([25867](https://github.com/civicrm/civicrm-core/pull/25867))** + +- **dev/core#4079 Add Pledge Tokens ([25851](https://github.com/civicrm/civicrm-core/pull/25851))** + +- **[NFC] Minor tidy up in `MappingTest` ([25854](https://github.com/civicrm/civicrm-core/pull/25854))** + +- **[Test][Php8.2] Fix undeclared properties & other housekeeping ([25852](https://github.com/civicrm/civicrm-core/pull/25852))** + +- **Make `Finder::tableQuery private`, after universe search ([25859](https://github.com/civicrm/civicrm-core/pull/25859))** + +- **[REF][PHP8.2] Refactor api_v3_ParticipantPaymentTest ([25864](https://github.com/civicrm/civicrm-core/pull/25864))** + +- **[REF][PHP8.2] Refactor getParticipantOrderParams to never write a dynamic property ([25865](https://github.com/civicrm/civicrm-core/pull/25865))** + +- **[REF] Replace use of legacy `$dao->query()` with `CRM_Core_DAO::executeQuery()` ([25860](https://github.com/civicrm/civicrm-core/pull/25860))** + +- **[REF][PHP8.2] Get rid of dynamic properties in CRM_Core_Payment_ProcessorFormTest ([25844](https://github.com/civicrm/civicrm-core/pull/25844))** + +- **AutoClean - Optionally allow explicit cleanup ([25858](https://github.com/civicrm/civicrm-core/pull/25858))** + +- **CiviUnitTestCase - During teardown, ensure that we cleanup locks ([25856](https://github.com/civicrm/civicrm-core/pull/25856))** + +- **[PHP8.2] Clean up in `apiv3_ParticipantTest` with view to 8.2 compatibility ([25801](https://github.com/civicrm/civicrm-core/pull/25801))** + +- **[PHP8.2] [Test] Remove use of (often undeclared) property `_invoiceID` in tests & one instance of `paymentProcessorID2` ([25799](https://github.com/civicrm/civicrm-core/pull/25799))** + +- **Remove unused var ([25857](https://github.com/civicrm/civicrm-core/pull/25857))** + +- **Avoid type error in CRM_Core_Form on php 8 ([25853](https://github.com/civicrm/civicrm-core/pull/25853))** + +- **dev/core#4184 Permit access to template user jobs (imports) ([25811](https://github.com/civicrm/civicrm-core/pull/25811))** + +- **5.60 ([25847](https://github.com/civicrm/civicrm-core/pull/25847))** + +- **PHP8 - Update symfony/var-dumper ([25850](https://github.com/civicrm/civicrm-core/pull/25850))** + +- **[PHP8.2] Remove unused setting on undeclared properties ([25831](https://github.com/civicrm/civicrm-core/pull/25831))** + +- **[PHP8.2] Remove unused variabls from `Member_Form_Task_PDFLetter::postProcessMembers` ([25830](https://github.com/civicrm/civicrm-core/pull/25830))** + +- **[REF] [php8.2] Remove unused parameters from `Contribute_PDFLetter::buildContributionArray` ([25829](https://github.com/civicrm/civicrm-core/pull/25829))** + +- **dev/core#4000 Fix (old) regression - ensure only template contribution updates update recur ([25776](https://github.com/civicrm/civicrm-core/pull/25776))** + +- **SearchKit - Handle comma-separated values passed from Afform url ([25827](https://github.com/civicrm/civicrm-core/pull/25827))** + +- **Deprecated `buildSavedMappingFields` noisily ([25842](https://github.com/civicrm/civicrm-core/pull/25842))** + +- **Remove un-used, un-displayed button ([25841](https://github.com/civicrm/civicrm-core/pull/25841))** + +- **Afform - Allow contact created/modified date fields to be used as filters ([25824](https://github.com/civicrm/civicrm-core/pull/25824))** + +- **5.60 to master ([25843](https://github.com/civicrm/civicrm-core/pull/25843))** + +- **Merge 5.60 to master ([25839](https://github.com/civicrm/civicrm-core/pull/25839))** + +- **Afform - set multi-select values from url ([25832](https://github.com/civicrm/civicrm-core/pull/25832))** + +- **(REF) PHPUnit - Allow env-var to specify version ([25836](https://github.com/civicrm/civicrm-core/pull/25836))** + +- **[REF][PHP8.2] Declare property in CRM_Contact_Form_DedupeFind ([25834](https://github.com/civicrm/civicrm-core/pull/25834))** + +- **WorkflowMessage - Enable strict parsing of annotations ([25818](https://github.com/civicrm/civicrm-core/pull/25818))** + +- **[REF][PHP8.2] Don't use a property where a variable will do (CRM_Contact_Page_View_Summary) ([25828](https://github.com/civicrm/civicrm-core/pull/25828))** + +- **Fix profile search listings columns are sometimes blank. ([25782](https://github.com/civicrm/civicrm-core/pull/25782))** + +- **5.60 to master ([25825](https://github.com/civicrm/civicrm-core/pull/25825))** + +- **[REF][PHP8.2] Only set properties which exist within ArrayFormatTrait->loadArray() ([25790](https://github.com/civicrm/civicrm-core/pull/25790))** + +- **Do not report missing triggers if the user cannot check them ([25820](https://github.com/civicrm/civicrm-core/pull/25820))** + +- **(dev/core#4124) Past campaigns are not to be assigned via batch updat… ([25687](https://github.com/civicrm/civicrm-core/pull/25687))** + +- **Fix typo that causes e-notice in just-merged commit ([25817](https://github.com/civicrm/civicrm-core/pull/25817))** + +- **[PHP8.2] declare deleteMessage on `entityFormTrait` ([25802](https://github.com/civicrm/civicrm-core/pull/25802))** + +- **Add links to search kits to import preview screen, when Civ-Import is enabled ([25816](https://github.com/civicrm/civicrm-core/pull/25816))** + +- **Merge 5.60 to master ([25815](https://github.com/civicrm/civicrm-core/pull/25815))** + +- **Fix really annoying notice on mispelt variable name `$isCheked` ([25759](https://github.com/civicrm/civicrm-core/pull/25759))** + +- **[REF] Fix issue where the strict typing was causing false notices to … ([25814](https://github.com/civicrm/civicrm-core/pull/25814))** + +- **[PHP8.2] (Ref) Remove unused dynamic property in report form class ([25812](https://github.com/civicrm/civicrm-core/pull/25812))** + +- **don't show USPS warning when USPS lookup disabled ([25736](https://github.com/civicrm/civicrm-core/pull/25736))** + +- **[REF][PHP8.2] Tidy up properties in api_v3_CaseContactTest ([25809](https://github.com/civicrm/civicrm-core/pull/25809))** + +- **field separator is a required field ([25738](https://github.com/civicrm/civicrm-core/pull/25738))** + +- **Import data source Re-use already uploaded data, optionally on use of 'back' button ([25787](https://github.com/civicrm/civicrm-core/pull/25787))** + +- **Logging ReportDetail: update breadcrumb to use CiviCRM Home for disambiguation ([25805](https://github.com/civicrm/civicrm-core/pull/25805))** + +- **Case start_date/end_date are not datetime ([25803](https://github.com/civicrm/civicrm-core/pull/25803))** + +- **APIv4 - Autocomplete ContributionRecur entity ([25804](https://github.com/civicrm/civicrm-core/pull/25804))** + +- **Remove dependence on cache/integration-tests ([25796](https://github.com/civicrm/civicrm-core/pull/25796))** + +- **SearchKit - POC help text ([24819](https://github.com/civicrm/civicrm-core/pull/24819))** + +- **Php8.2 fixes in report `addToDeveloperTab` function ([25800](https://github.com/civicrm/civicrm-core/pull/25800))** + +- **Php8.2 fixes in unit tests ([25797](https://github.com/civicrm/civicrm-core/pull/25797))** + +- **[NFC] cleanup in `ChangeFeeSelectionTest` ([25798](https://github.com/civicrm/civicrm-core/pull/25798))** + +- **[REF][PHP8.2] Refactor use of pageParams properties ([25795](https://github.com/civicrm/civicrm-core/pull/25795))** + +- **[REF][PHP8.2] Refactor api_v3_ImTest with primary aim of improving PHP 8.2 compatiability ([25792](https://github.com/civicrm/civicrm-core/pull/25792))** + +- **[REF][PHP8.2] Refactor api_v3_PriceFieldValueTest with primary aim of improving PHP 8.2 compatiability ([25793](https://github.com/civicrm/civicrm-core/pull/25793))** + +- **(REF) Remove unused onPopupClose variables ([25794](https://github.com/civicrm/civicrm-core/pull/25794))** + +- **[REF][PHP8.2] Fix use of self in callables deprecation ([25791](https://github.com/civicrm/civicrm-core/pull/25791))** + +- **set-version.php - Fix warning on PHP 8.1 ([25786](https://github.com/civicrm/civicrm-core/pull/25786))** + +- **[REF][PHP8.2] Declare property on CRM_Core_ErrorTest ([25788](https://github.com/civicrm/civicrm-core/pull/25788))** + +- **[REF][PHP8.2] Declare property on CRM_Event_Import_Parser_ParticipantTest ([25789](https://github.com/civicrm/civicrm-core/pull/25789))** + +- **dev/core#4144 Fix smarty notice on isDuplicate ([25657](https://github.com/civicrm/civicrm-core/pull/25657))** + +- **APIv4 - Deprecate unnecessary constants ([25781](https://github.com/civicrm/civicrm-core/pull/25781))** + +- **[NFC] Fix PHP8.2 issues in the Mailing Contact Test ([25783](https://github.com/civicrm/civicrm-core/pull/25783))** + +- **Fix cache clearing when import table is changed ([25774](https://github.com/civicrm/civicrm-core/pull/25774))** + +- **Fix dedupe finder performance issue on looking up table size ([25527](https://github.com/civicrm/civicrm-core/pull/25527))** + +- **Import link - fix search Import SearchDisplays to link to the created contact ([25712](https://github.com/civicrm/civicrm-core/pull/25712))** + +- **Hyphenate Civi-Import in the title/label ([25474](https://github.com/civicrm/civicrm-core/pull/25474))** + +- **CiviUnitTestCase - More aggressive simplifications ([25187](https://github.com/civicrm/civicrm-core/pull/25187))** + +- **BAO - Noisily deprecate and stop using deprecated functions ([25677](https://github.com/civicrm/civicrm-core/pull/25677))** + +- **[REF] Improve function signature for `retrieve()` in `PaypalProIPN` , add test for when trxn_id is present ([25749](https://github.com/civicrm/civicrm-core/pull/25749))** + +- **APIv4 - Support `match` in replaceAction ([25770](https://github.com/civicrm/civicrm-core/pull/25770))** + +- **Remove function deprecated noisly in 2020 ([25768](https://github.com/civicrm/civicrm-core/pull/25768))** + +- **Don't crash API4 if pseudoconstant lookups return nothing ([25028](https://github.com/civicrm/civicrm-core/pull/25028))** + +- **All your base are deleted ([25773](https://github.com/civicrm/civicrm-core/pull/25773))** + +- **More deprecations of `del` ([25767](https://github.com/civicrm/civicrm-core/pull/25767))** + +- **Consolidate `DataSource.tpl` ([25771](https://github.com/civicrm/civicrm-core/pull/25771))** + +- **Smarty notice fix on Merge ([25772](https://github.com/civicrm/civicrm-core/pull/25772))** + +- **Deprecate pledge_payment::del ([25763](https://github.com/civicrm/civicrm-core/pull/25763))** + +- **Remove deprecated calls from contribute, financial, remove ManagePremiums deprecated BAO ([25766](https://github.com/civicrm/civicrm-core/pull/25766))** + +- **Deprecations on del functions ([25764](https://github.com/civicrm/civicrm-core/pull/25764))** + +- **Deprecate relationship::del ([25765](https://github.com/civicrm/civicrm-core/pull/25765))** + +- **Noisily deprecate unused function ([25762](https://github.com/civicrm/civicrm-core/pull/25762))** + +- **dev/core#4121 Afform: add validation for file fields in formbuilder ([25666](https://github.com/civicrm/civicrm-core/pull/25666))** + +- **APIv4 - Add 'Update' to conformanceTest ([25674](https://github.com/civicrm/civicrm-core/pull/25674))** + +- **Remove remaining non-variable variables ([25752](https://github.com/civicrm/civicrm-core/pull/25752))** + +- **🪥 Fix inconsistent terminology used when referring to Member Since, Membership Start Date and Membership Expiration Date ([24735](https://github.com/civicrm/civicrm-core/pull/24735))** + +- **5.60 to master ([25760](https://github.com/civicrm/civicrm-core/pull/25760))** + +- **dev/core/-/issues/4149 Change CKEditor 4 default to not encode HTML entities by default which breaks Smarty syntax and prevents use of crmDate function ([25681](https://github.com/civicrm/civicrm-core/pull/25681))** + +- **Code cleanup: Use `parent::buildForm` in contact import dataSource screen ([25757](https://github.com/civicrm/civicrm-core/pull/25757))** + +- **Relationship Cache check ([25751](https://github.com/civicrm/civicrm-core/pull/25751))** + +- **Change title of is_primary fields consistent with Email ([25700](https://github.com/civicrm/civicrm-core/pull/25700))** + +- **APIv4 - Add ParticipantStatusType entity ([25750](https://github.com/civicrm/civicrm-core/pull/25750))** + +- **Afform - Show file field values for existing entities ([25294](https://github.com/civicrm/civicrm-core/pull/25294))** + +- **revert 25735 ([25756](https://github.com/civicrm/civicrm-core/pull/25756))** + +- **5.60 ([25755](https://github.com/civicrm/civicrm-core/pull/25755))** + +- **Unconditionally assign `quickConfig`, add helper for `getPriceSetID` ([25719](https://github.com/civicrm/civicrm-core/pull/25719))** + +- **Stop using deprecated methods, `ufField::del` ([25747](https://github.com/civicrm/civicrm-core/pull/25747))** + +- **Remove some deprecated del calls ([25746](https://github.com/civicrm/civicrm-core/pull/25746))** + +- **Remove unvariable variables `toReturn` & `subName` from `Merger` ([25745](https://github.com/civicrm/civicrm-core/pull/25745))** + +- **5.60 to master ([25748](https://github.com/civicrm/civicrm-core/pull/25748))** + +- **SearchKit - Add select options for MONTH date filter ([25739](https://github.com/civicrm/civicrm-core/pull/25739))** + +- **APIv4 - Don't link to non-existent API entities ([25743](https://github.com/civicrm/civicrm-core/pull/25743))** + +- **Stop passing invariable variables to private function ([25676](https://github.com/civicrm/civicrm-core/pull/25676))** + +- **SearchKit - Add next_birthday calc field ([25740](https://github.com/civicrm/civicrm-core/pull/25740))** + +- **Filter 'My imports' to only show non-expired ([25711](https://github.com/civicrm/civicrm-core/pull/25711))** + +- **remove extra field separator field ([25735](https://github.com/civicrm/civicrm-core/pull/25735))** + +- **Update Import fix to leverage the new exception ([25725](https://github.com/civicrm/civicrm-core/pull/25725))** + +- **Fix typing, comments in new StandardFilters class ([25730](https://github.com/civicrm/civicrm-core/pull/25730))** + +- **5.60 ([25732](https://github.com/civicrm/civicrm-core/pull/25732))** + +- **dev/core#3438 Drupal: Prevent cv fatal if logging before CMS bootstrap ([25728](https://github.com/civicrm/civicrm-core/pull/25728))** + +- **(dev/core#4137) Tokens - Filters should be HTML-sensitive ([25727](https://github.com/civicrm/civicrm-core/pull/25727))** + +- **Fix in ContributionTest class ([25722](https://github.com/civicrm/civicrm-core/pull/25722))** + +- **dev/core#4153 Extend the fields available for PrimaryContact on search ([25718](https://github.com/civicrm/civicrm-core/pull/25718))** + +- **Pager missing on Aggregate By Relationship civireport ([25721](https://github.com/civicrm/civicrm-core/pull/25721))** + +- **dev/core#4127 move standalone profile modification to userSystem ([25574](https://github.com/civicrm/civicrm-core/pull/25574))** + +- **Fix bug in tax calculation when recurring overrides with a different value ([25707](https://github.com/civicrm/civicrm-core/pull/25707))** + +- **Add new `\Civi\Exception\DBQueryException` & throw that rather than a `PEAR_Exception` ([25634](https://github.com/civicrm/civicrm-core/pull/25634))** + +- **Php8.2 stop accessing undefined form Property isQuickConfig in `PriceField:addQuickFormElement` ([25689](https://github.com/civicrm/civicrm-core/pull/25689))** + +- **Worldregion - For API-entity-naming, prefer "WorldRegion" ([25713](https://github.com/civicrm/civicrm-core/pull/25713))** + +- **[NFC] Superficial cleanup in test class ([25708](https://github.com/civicrm/civicrm-core/pull/25708))** + +- **Deprecated code removal ([25710](https://github.com/civicrm/civicrm-core/pull/25710))** + +- **Use the backend theme when upgrading ([665](https://github.com/civicrm/civicrm-drupal/pull/665))** + +- **Expose "created date" to views ([569](https://github.com/civicrm/civicrm-drupal/pull/569))** + +- **Use the backend theme when upgrading ([81](https://github.com/civicrm/civicrm-drupal-8/pull/81))** + +- **Code cleanup in HookTest ([293](https://github.com/civicrm/civicrm-wordpress/pull/293))** + +## Miscellany + +## Credits + +This release was developed by the following code authors: + +AGH Strategies - Alice Frumin, Andie Hunt; Agileware - Justin Freeman; anthonyblond; Benjamin W; BrightMinded Ltd - Bradley Taylor; CEDC - Laryn Kragt Bakker; CiviCRM - Coleman Watts, Tim Otten; CiviDesk - Yashodha Chaku; Coop SymbioTIC - Mathieu Lutfy, Samuel Vanhove, Shane Bill; Dave D; Freeform Solutions - Herb van den Dool; Fuzion - Luke Stewart; Giant Rabbit - Anthony Nemirovsky; iXiam - Luciano Spiegel; JMA Consulting - Seamus Lee; Lemniscus - Noah Miller; Megaphone Technology Consulting - Jon Goldberg; MJW Consulting - Matthew Wire; Progressive Technology Project - Jamie McClelland; Third Sector Design - Kurund Jalmi; Wikimedia Foundation - Eileen McNaughton + +Most authors also reviewed code for this release; in addition, the following +reviewers contributed their comments: + +AGH Strategies - Andie Hunt, Eli Lisseck; Agileware - Justin Freeman; Andreas Howiller; Artful Robot - Rich Lott; Blackfly Solutions - Alan Dixon; BrightMinded Ltd - Bradley Taylor; civibot[bot]; civicrm-builder; CiviCRM - Coleman Watts, Tim Otten; CiviDesk - Yashodha Chaku; Coop SymbioTIC - Mathieu Lutfy, Shane Bill; Dave D; Freeform Solutions - Herb van den Dool; Guydn; Humanists UK - Andrew West;; JMA Consulting - Joe Murray, Seamus Lee; Joinery - Allen Shaw; Korlon - Stuart Gaston; Lemniscus - Noah Miller; Megaphone Technology Consulting - Jon Goldberg; MJW Consulting - Matthew Wire; Progressive Technology Project - Jamie McClelland; Richard Baugh; Squiffle Consulting - Aidan Saunders; SYSTOPIA - Johannes Franz; tbember; Third Sector Design - Kurund Jalmi, Michael McAndrew; WebmasterBouclier; Wikimedia Foundation - Eileen McNaughton \ No newline at end of file -- 2.25.1