--- /dev/null
+# CiviCRM 5.70.0
+
+Released February 7, 2024;
+
+- **[Features](#features)**
+- **[Bugs resolved](#bugs)**
+- **[Miscellany](#misc)**
+- **[Credits](#credits)**
+
+## <a name="features"></a>Features
+
+## <a name="bugs"></a>Bugs resolved
+
+### Core CiviCRM
+
+- **dev/core#4969 Simplify AngularManager loading/caching system ([29260](https://github.com/civicrm/civicrm-core/pull/29260))**
+
+- **Fix wonkyness if contribution page includes a profile with both groups & tags ([29193](https://github.com/civicrm/civicrm-core/pull/29193))**
+
+- **Disable failing test in PR runs for now ([29277](https://github.com/civicrm/civicrm-core/pull/29277))**
+
+- **don't send an extra receipt when completing pending contributions ([29264](https://github.com/civicrm/civicrm-core/pull/29264))**
+
+- **Php 8.x notice fix on tags & groups fields ([29226](https://github.com/civicrm/civicrm-core/pull/29226))**
+
+- **SearchKit - Remove irrelevant links from default display ([29208](https://github.com/civicrm/civicrm-core/pull/29208))**
+
+- **dev/core#4950 - Disable SearchUI version of ContactSummary Activity tab ([29209](https://github.com/civicrm/civicrm-core/pull/29209))**
+
+- **dev/core#4960 Make Case menu link in relationship tab conditional ([29200](https://github.com/civicrm/civicrm-core/pull/29200))**
+
+- **Fix 5.67 regression on loading custom data defaults on contribution page ([29192](https://github.com/civicrm/civicrm-core/pull/29192))**
+
+- **SearchKit - Hide invalid links and prevent error ([29206](https://github.com/civicrm/civicrm-core/pull/29206))**
+
+- **dev/core#4962 Fix Smarty fatal on resource url page ([29203](https://github.com/civicrm/civicrm-core/pull/29203))**
+
+- **SearchKit - Fix switching to nonexistent tab ([29180](https://github.com/civicrm/civicrm-core/pull/29180))**
+
+- **dev/user-interface#65 Remove top set of buttons which only show up in… ([29189](https://github.com/civicrm/civicrm-core/pull/29189))**
+
+- **Fix fatal error when firebase/php-jwt library is 'replaced' in composer ([28971](https://github.com/civicrm/civicrm-core/pull/28971))**
+
+- **Remove attempt to use wizard on manage ACLs ([29107](https://github.com/civicrm/civicrm-core/pull/29107))**
+
+- **dev/core#4937 - Fix js error in formBuilder autocompletes ([29092](https://github.com/civicrm/civicrm-core/pull/29092))**
+
+- **dev/core#4939 Fix failure to load existing membership info on online membership page ([29112](https://github.com/civicrm/civicrm-core/pull/29112))**
+
+- **crmDashboard - Fix deleting item from 2nd column ([29155](https://github.com/civicrm/civicrm-core/pull/29155))**
+
+- **Fix dev/core#4943 - Exclude case activities from count if appropriate ([29143](https://github.com/civicrm/civicrm-core/pull/29143))**
+
+- **When auto-renew option is available, show the checkbox immediately in… ([29118](https://github.com/civicrm/civicrm-core/pull/29118))**
+
+- **dev/core#4917 Ensure total is always updated when other amount is selected ([29115](https://github.com/civicrm/civicrm-core/pull/29115))**
+
+- **Fix JS error and allow focus of Other Amount field ([29113](https://github.com/civicrm/civicrm-core/pull/29113))**
+
+- **dev/core#4938 - crash after saving a civireport ([29097](https://github.com/civicrm/civicrm-core/pull/29097))**
+
+- **Invert logic for collapsing contact dashboard accordion ([29091](https://github.com/civicrm/civicrm-core/pull/29091))**
+
+- **(dev/core#4641) ListUnsubscribe - Fix HTTP URL generation on WordPress ([29086](https://github.com/civicrm/civicrm-core/pull/29086))**
+
+- **(dev/core#4641) CiviMail - Add support for One-Click unsubscribes ([28964](https://github.com/civicrm/civicrm-core/pull/28964))**
+
+- **Avoid crash in extensions that call getVar ([29080](https://github.com/civicrm/civicrm-core/pull/29080))**
+
+- **dev/core#4930 Fix Activity count when contact is assigned multiple roles ([29073](https://github.com/civicrm/civicrm-core/pull/29073))**
+
+- **dev/core#4932 - Bring back missing actions when viewing contact summary ([29079](https://github.com/civicrm/civicrm-core/pull/29079))**
+
+- **Fix metadata cache clear event ([29072](https://github.com/civicrm/civicrm-core/pull/29072))**
+
+- **Fix Checking Auto renew for Non Quick Config Price Set when Membershi… ([29069](https://github.com/civicrm/civicrm-core/pull/29069))**
+
+- **Contact Relationships: alter markup for help texts ([29058](https://github.com/civicrm/civicrm-core/pull/29058))**
+
+- **Fix missing links on contact summary relationships tab ([29049](https://github.com/civicrm/civicrm-core/pull/29049))**
+
+- **ContactSummary - Don't open new tab for links ([29039](https://github.com/civicrm/civicrm-core/pull/29039))**
+
+- **SearchKit - Fix missing transformations in UI ([29025](https://github.com/civicrm/civicrm-core/pull/29025))**
+
+- **dev/core#4912 Fix 'other amount' losing focus ([29016](https://github.com/civicrm/civicrm-core/pull/29016))**
+
+- **restore custom fields for contact subtypes on create ([29003](https://github.com/civicrm/civicrm-core/pull/29003))**
+
+- **fix ts ([29000](https://github.com/civicrm/civicrm-core/pull/29000))**
+
+- **smarty3 - crash on viewing contribution ([28994](https://github.com/civicrm/civicrm-core/pull/28994))**
+
+- **Fix rc-only regression - back-office registration does not reload contact ID ([28893](https://github.com/civicrm/civicrm-core/pull/28893))**
+
+- **Remove possibly-unavailable job_id from unsub function ([28966](https://github.com/civicrm/civicrm-core/pull/28966))**
+
+- **[REF] Fix Hard Fail when loading back office add membership form with membe… ([28959](https://github.com/civicrm/civicrm-core/pull/28959))**
+
+- **dev/core#4781 Handle invalid deprecated fields with more grace ([28933](https://github.com/civicrm/civicrm-core/pull/28933))**
+
+- **Regression: fix CMS creation issue from profile ([28970](https://github.com/civicrm/civicrm-core/pull/28970))**
+
+- **CiviCase - Fix crash when fetching status_id pseudoconstant ([28957](https://github.com/civicrm/civicrm-core/pull/28957))**
+
+- **dev/core#4903 - undefined variable in New Individual on-the-fly popup ([28962](https://github.com/civicrm/civicrm-core/pull/28962))**
+
+- **dev/core#4898 Add getLinks to Import api ([28952](https://github.com/civicrm/civicrm-core/pull/28952))**
+
+- **dev/core#4897 Fix Search Kit row link conditions ([28944](https://github.com/civicrm/civicrm-core/pull/28944))**
+
+- **dev/core#4893 Fix failure to send event emails on non-monetary events with no confirm page ([28928](https://github.com/civicrm/civicrm-core/pull/28928))**
+
+- **Make fail-heavy test as ornery ([28913](https://github.com/civicrm/civicrm-core/pull/28913))**
+
+- **Bump follow-redirects from 1.14.8 to 1.15.4 ([28942](https://github.com/civicrm/civicrm-core/pull/28942))**
+
+- **dev/core#4892 dev/core#4891 fix weight notices ([28931](https://github.com/civicrm/civicrm-core/pull/28931))**
+
+- **dev/core#4889 - Exclude tools & tests from deleted-files-list.json ([28922](https://github.com/civicrm/civicrm-core/pull/28922))**
+
+- **dev/user-interface#64 civicrm.css: fix cancel/done button alignment ([28907](https://github.com/civicrm/civicrm-core/pull/28907))**
+
+- **Run regen ([28919](https://github.com/civicrm/civicrm-core/pull/28919))**
+
+- **Fix pay-later receipt token in shipped version ([28895](https://github.com/civicrm/civicrm-core/pull/28895))**
+
+- **(alternate 2) Fix bad smarty3 compile filenames ([28909](https://github.com/civicrm/civicrm-core/pull/28909))**
+
+- **Corrupted version.js file ([28897](https://github.com/civicrm/civicrm-core/pull/28897))**
+
+- **Smarty Syntax fix - UFGroup help file ([28901](https://github.com/civicrm/civicrm-core/pull/28901))**
+
+- **dev/core#2719 [REF] Deprecate legacy references to contribution_invoice_settings ([20970](https://github.com/civicrm/civicrm-core/pull/20970))**
+
+- **Update release-notes/5.69.0.md ([28892](https://github.com/civicrm/civicrm-core/pull/28892))**
+
+- **Fix Smarty3 error in online event registration ([28886](https://github.com/civicrm/civicrm-core/pull/28886))**
+
+- **Fix Smarty3 error in online event registration ([28884](https://github.com/civicrm/civicrm-core/pull/28884))**
+
+- **dev/core#4841 Ensure that APIv4 have same default values which ensure… ([28888](https://github.com/civicrm/civicrm-core/pull/28888))**
+
+- **Fixes Backdrop summary/detail admin theme clash ([28887](https://github.com/civicrm/civicrm-core/pull/28887))**
+
+- **Fixes Backdrop summary/detail admin theme clash ([28879](https://github.com/civicrm/civicrm-core/pull/28879))**
+
+- **[NFC] Product - Fix duplicated key in xml file ([28882](https://github.com/civicrm/civicrm-core/pull/28882))**
+
+- **Add report instance permission check & test ([28873](https://github.com/civicrm/civicrm-core/pull/28873))**
+
+- **Fix month date string format support in imports ([28716](https://github.com/civicrm/civicrm-core/pull/28716))**
+
+- **dev/core#4886 fix syntax error in contact summary template ([28881](https://github.com/civicrm/civicrm-core/pull/28881))**
+
+- **Support creating payment methods that can be hidden from user ([28876](https://github.com/civicrm/civicrm-core/pull/28876))**
+
+- **dev/core#4886 fix syntax error in contact summary template ([28880](https://github.com/civicrm/civicrm-core/pull/28880))**
+
+- **Consolidate participant creation into 1 place ([28778](https://github.com/civicrm/civicrm-core/pull/28778))**
+
+- **Remove text version on online event receipt ([28732](https://github.com/civicrm/civicrm-core/pull/28732))**
+
+- **faster activity counting ([28529](https://github.com/civicrm/civicrm-core/pull/28529))**
+
+- **AdminUI - Replace Contact Summary Activities tab ([27717](https://github.com/civicrm/civicrm-core/pull/27717))**
+
+- **Handle auto-renew correctly on original-price-sets ([28875](https://github.com/civicrm/civicrm-core/pull/28875))**
+
+- **Handle auto-renew correctly on original-price-sets ([28872](https://github.com/civicrm/civicrm-core/pull/28872))**
+
+- **Ensure auto renew is set on Membership price set ([28874](https://github.com/civicrm/civicrm-core/pull/28874))**
+
+- **Ensure auto renew is set on Membership price set ([28871](https://github.com/civicrm/civicrm-core/pull/28871))**
+
+- **5.69.0 - Add last-minute notes. Update version. ([28870](https://github.com/civicrm/civicrm-core/pull/28870))**
+
+- **Add system check to warn if CiviReport disabled & logging enabled ([28863](https://github.com/civicrm/civicrm-core/pull/28863))**
+
+- **5.69 to master ([28868](https://github.com/civicrm/civicrm-core/pull/28868))**
+
+- **Move report test to civi_report ([28867](https://github.com/civicrm/civicrm-core/pull/28867))**
+
+- **Minor cleanup in ReportInstance BAO ([28866](https://github.com/civicrm/civicrm-core/pull/28866))**
+
+- **Dashboard Fullscreen dashlet improvements ([28641](https://github.com/civicrm/civicrm-core/pull/28641))**
+
+- **5.69 ([28865](https://github.com/civicrm/civicrm-core/pull/28865))**
+
+- **CoreForm - Add noisy deprecation to addDate & addDateTime functions ([28860](https://github.com/civicrm/civicrm-core/pull/28860))**
+
+- **[REF] Fix grant_report_received column to be not null and default to 0 ([28861](https://github.com/civicrm/civicrm-core/pull/28861))**
+
+- **Declare amount private - use magic method to provide access to the old value ([28769](https://github.com/civicrm/civicrm-core/pull/28769))**
+
+- **APIv4 - Add fk_column to getFields metadata ([28850](https://github.com/civicrm/civicrm-core/pull/28850))**
+
+- **[REF] Fix Smarty Notices on Find Grants search ([28862](https://github.com/civicrm/civicrm-core/pull/28862))**
+
+- **Fix notice in workflow message examples when no price set present ([28848](https://github.com/civicrm/civicrm-core/pull/28848))**
+
+- **Fix time handling for dd_mon_yy format date strings ([28847](https://github.com/civicrm/civicrm-core/pull/28847))**
+
+- **Fix notice on civi-report display ([28859](https://github.com/civicrm/civicrm-core/pull/28859))**
+
+- **(dev/core#3581) composer.json - Allow newer version of oauth2-google ([28757](https://github.com/civicrm/civicrm-core/pull/28757))**
+
+- **[REF] Rewrite PCP enumeration to avoid caching bug ([28519](https://github.com/civicrm/civicrm-core/pull/28519))**
+
+- **5.69 to master ([28857](https://github.com/civicrm/civicrm-core/pull/28857))**
+
+- **[NFC] Cleanup dummy DAO in ruleGroupTest class ([28851](https://github.com/civicrm/civicrm-core/pull/28851))**
+
+- **[NFC] Fix docblock reference in _checkAccess functions ([28852](https://github.com/civicrm/civicrm-core/pull/28852))**
+
+- **Add "Manage Premiums" to AdminUI, toward dev/core#3912 . ([28540](https://github.com/civicrm/civicrm-core/pull/28540))**
+
+- **Minor cleanup in test class ([28849](https://github.com/civicrm/civicrm-core/pull/28849))**
+
+- **Regenerate ext DAO files using updated civix ([28846](https://github.com/civicrm/civicrm-core/pull/28846))**
+
+- **Fix handling of non-padded day in import date in dd/mm/yyy format ([28844](https://github.com/civicrm/civicrm-core/pull/28844))**
+
+- **5.69 ([28843](https://github.com/civicrm/civicrm-core/pull/28843))**
+
+- **DAO - Return reference columns based on field metadata ([28827](https://github.com/civicrm/civicrm-core/pull/28827))**
+
+- **Move implementation of financial type acl out of core (leverage existing extension hooks) ([28647](https://github.com/civicrm/civicrm-core/pull/28647))**
+
+- **REF - Swap CRM_Utils_Array::collect with vanilla array_column ([28668](https://github.com/civicrm/civicrm-core/pull/28668))**
+
+- **Fix time validation for iso date format ([28828](https://github.com/civicrm/civicrm-core/pull/28828))**
+
+- **[NFC] Add 'getLinks' action to phpStorm extension ([28834](https://github.com/civicrm/civicrm-core/pull/28834))**
+
+- **Fix e-notice on contact create for low-permissioned user ([28837](https://github.com/civicrm/civicrm-core/pull/28837))**
+
+- **dev/core#4674 - Add Oauth links for AdminUi MailSettings ([28786](https://github.com/civicrm/civicrm-core/pull/28786))**
+
+- **Issue 4879 second attempt ([28838](https://github.com/civicrm/civicrm-core/pull/28838))**
+
+- **Remove smarty2 functions from sample code ([28831](https://github.com/civicrm/civicrm-core/pull/28831))**
+
+- **Use getTemplateVars in smarty help function ([28829](https://github.com/civicrm/civicrm-core/pull/28829))**
+
+- **Replace getTemplateVars() in test, assignTemplateVariables ([28830](https://github.com/civicrm/civicrm-core/pull/28830))**
+
+- **standalone: implement cms-prefixed permissions as concrete ones ([28621](https://github.com/civicrm/civicrm-core/pull/28621))**
+
+- **Remove missingStandaloneExtension() checks which were pre-alpha scaffold ([28833](https://github.com/civicrm/civicrm-core/pull/28833))**
+
+- **Merging as no objections ([28784](https://github.com/civicrm/civicrm-core/pull/28784))**
+
+- **Use distinct test workflow message for workflow message tests ([28826](https://github.com/civicrm/civicrm-core/pull/28826))**
+
+- **SearchKit - New getLinks API action for advanced link handling ([27973](https://github.com/civicrm/civicrm-core/pull/27973))**
+
+- **Update `MessageTemplates` generation to work with Smarty3 ([28789](https://github.com/civicrm/civicrm-core/pull/28789))**
+
+- **Remove function use of reference ([28825](https://github.com/civicrm/civicrm-core/pull/28825))**
+
+- **Extend date formats being tested ([28822](https://github.com/civicrm/civicrm-core/pull/28822))**
+
+- **Use constants for date formats ([28823](https://github.com/civicrm/civicrm-core/pull/28823))**
+
+- **Fully deprecate MetadataTrait ([28556](https://github.com/civicrm/civicrm-core/pull/28556))**
+
+- **Fix error due to merges co-inciding ([28821](https://github.com/civicrm/civicrm-core/pull/28821))**
+
+- **SearchKit - Allow aggregate functions to be used without GroupBy ([28808](https://github.com/civicrm/civicrm-core/pull/28808))**
+
+- **Merge forward (5.69-rc to master) ([28818](https://github.com/civicrm/civicrm-core/pull/28818))**
+
+- **SearchKit - Fix wrong column being removed from displays ([28811](https://github.com/civicrm/civicrm-core/pull/28811))**
+
+- **APIv4 - Hide 'contact_type' from Individual,Organization,Household getFields ([28812](https://github.com/civicrm/civicrm-core/pull/28812))**
+
+- **[REF][PHP8.2] Declare _lastParticipant property ([28783](https://github.com/civicrm/civicrm-core/pull/28783))**
+
+- **[REF][PHP8.2] Declare missing properties on CRM_Event_Form_Registration_AdditionalParticipant ([28815](https://github.com/civicrm/civicrm-core/pull/28815))**
+
+- **dev/core#4841 Ensure that APIv4 have same default values which ensure… ([28775](https://github.com/civicrm/civicrm-core/pull/28775))**
+
+- **[REF][PHP8.2] Cleanup discounts property in eventcart ext ([28816](https://github.com/civicrm/civicrm-core/pull/28816))**
+
+- **Stop bypassing hooks on ContributionRecur.cancel ([28730](https://github.com/civicrm/civicrm-core/pull/28730))**
+
+- **Consolidate import date handling ([28799](https://github.com/civicrm/civicrm-core/pull/28799))**
+
+- **Clean up search settings page, update group cache text ([28753](https://github.com/civicrm/civicrm-core/pull/28753))**
+
+- **Bubble up deprecation if getVar used to get a deprecated property ([28748](https://github.com/civicrm/civicrm-core/pull/28748))**
+
+- **Don't try to insert 0 as a user_id to ACL contact cache ([28814](https://github.com/civicrm/civicrm-core/pull/28814))**
+
+- **Remove unused phantomjs-polyfill package ([28813](https://github.com/civicrm/civicrm-core/pull/28813))**
+
+- **Remove api annotation from getSubmittableFields() ([28776](https://github.com/civicrm/civicrm-core/pull/28776))**
+
+- **5.69 to master ([28809](https://github.com/civicrm/civicrm-core/pull/28809))**
+
+- **Update regen for event message template ([28804](https://github.com/civicrm/civicrm-core/pull/28804))**
+
+- **E-notice fix in membership workflow examples ([28803](https://github.com/civicrm/civicrm-core/pull/28803))**
+
+- **NFC Superficial cleanup in test class ([28798](https://github.com/civicrm/civicrm-core/pull/28798))**
+
+- **[NFC] Add todos to the invoice code ([28805](https://github.com/civicrm/civicrm-core/pull/28805))**
+
+- **Fix edit button for 'Import/Export Mapping' ([28801](https://github.com/civicrm/civicrm-core/pull/28801))**
+
+- **[NFC] Superficial cleanup ([28797](https://github.com/civicrm/civicrm-core/pull/28797))**
+
+- **Fix codeGen assign to do what it says on the box ([28788](https://github.com/civicrm/civicrm-core/pull/28788))**
+
+- **menubar spin: stop after 10 seconds ([28738](https://github.com/civicrm/civicrm-core/pull/28738))**
+
+- **update deleted files list ([28794](https://github.com/civicrm/civicrm-core/pull/28794))**
+
+- **5.69 ([28793](https://github.com/civicrm/civicrm-core/pull/28793))**
+
+- **Migrate Snappy to composer ([28673](https://github.com/civicrm/civicrm-core/pull/28673))**
+
+- **5.69 to master ([28792](https://github.com/civicrm/civicrm-core/pull/28792))**
+
+- **Manage Extensions: hide the type/module column ([28782](https://github.com/civicrm/civicrm-core/pull/28782))**
+
+- **Remove str_contains from civicrm.settings template ([28790](https://github.com/civicrm/civicrm-core/pull/28790))**
+
+- **Standardise `getTemplateVars()` ([28787](https://github.com/civicrm/civicrm-core/pull/28787))**
+
+- **remove incorrect message that grant could not be deleted ([28785](https://github.com/civicrm/civicrm-core/pull/28785))**
+
+- **Compiance with php8 & Marvel9 ([28780](https://github.com/civicrm/civicrm-core/pull/28780))**
+
+- **Remove checks to bltID in cms classes ([28771](https://github.com/civicrm/civicrm-core/pull/28771))**
+
+- **Stop referring to `_bltID` in AbstractEditPayment ([28770](https://github.com/civicrm/civicrm-core/pull/28770))**
+
+- **Declare caseId, caseIds as public properties ([28760](https://github.com/civicrm/civicrm-core/pull/28760))**
+
+- **[PHP8.2] Fix test fails on event cart ([28773](https://github.com/civicrm/civicrm-core/pull/28773))**
+
+- **[REF][PHP8.2] Use correct form object to ensure properties exist ([28758](https://github.com/civicrm/civicrm-core/pull/28758))**
+
+- **Remove deprecated test-only function ([28768](https://github.com/civicrm/civicrm-core/pull/28768))**
+
+- **Use local variables for the billing location type ID in event cart code ([28764](https://github.com/civicrm/civicrm-core/pull/28764))**
+
+- **[REF] Tidy up use of _cancelURL property ([28759](https://github.com/civicrm/civicrm-core/pull/28759))**
+
+- **Remove bltID as a parameter from getPaymentProcessorReadyAddressParams ([28767](https://github.com/civicrm/civicrm-core/pull/28767))**
+
+- **[REF][PHP8.2] Resolve dynamic property usage in CRM_Price_Form_Option ([28456](https://github.com/civicrm/civicrm-core/pull/28456))**
+
+- **Unit test for fix to illegal offset error when grouping by contact in SK ([28739](https://github.com/civicrm/civicrm-core/pull/28739))**
+
+- **Fix a few more places that pass bltID to mapParams ([28765](https://github.com/civicrm/civicrm-core/pull/28765))**
+
+- **Stop setting `_bltID` on the `UpdateBilling` form ([28761](https://github.com/civicrm/civicrm-core/pull/28761))**
+
+- **Use lookup not form property for BillingID in payment form class ([28763](https://github.com/civicrm/civicrm-core/pull/28763))**
+
+- **[REF][PHP8.2] Local variable for tagGroup ([28755](https://github.com/civicrm/civicrm-core/pull/28755))**
+
+- **dev/user-interface#49 - Improve SearchKit admin display presentation ([28740](https://github.com/civicrm/civicrm-core/pull/28740))**
+
+- **Add weasyprint pdf generation as alternative to wkhtmltopdf ([28273](https://github.com/civicrm/civicrm-core/pull/28273))**
+
+- **[REF][PHP8.2] Declare properties in advanced search form ([28754](https://github.com/civicrm/civicrm-core/pull/28754))**
+
+- **tests/events/*.php - Allow optional runtime enforcement ([28723](https://github.com/civicrm/civicrm-core/pull/28723))**
+
+- **Standardise some more event template tokens ([27685](https://github.com/civicrm/civicrm-core/pull/27685))**
+
+- **[REF][PHP8.2] Replace dynamic property with local var - mailing browse page ([28756](https://github.com/civicrm/civicrm-core/pull/28756))**
+
+- **Update regen online script to use php 8.1 since this doesn't have polyfills available and now str_contains makes it fail ([28751](https://github.com/civicrm/civicrm-core/pull/28751))**
+
+- **regen after 28704 ([28752](https://github.com/civicrm/civicrm-core/pull/28752))**
+
+- **Alternate to alternate packages path for smarty3 ([28749](https://github.com/civicrm/civicrm-core/pull/28749))**
+
+- **Remove some more text template versions ([28704](https://github.com/civicrm/civicrm-core/pull/28704))**
+
+- **Merge 5.69 to master ([28747](https://github.com/civicrm/civicrm-core/pull/28747))**
+
+- **Fix admin forms to not call deprecated functions ([28746](https://github.com/civicrm/civicrm-core/pull/28746))**
+
+- **Fix acls in demo data ([28743](https://github.com/civicrm/civicrm-core/pull/28743))**
+
+- **False positive in status check ([28736](https://github.com/civicrm/civicrm-core/pull/28736))**
+
+- **Allow searchkit joins via EntityRef fields in multivalue custom data ([28721](https://github.com/civicrm/civicrm-core/pull/28721))**
+
+- **Fix PHP warning: trying to use null as array ([28734](https://github.com/civicrm/civicrm-core/pull/28734))**
+
+- **Extract chunk of code to function ([28731](https://github.com/civicrm/civicrm-core/pull/28731))**
+
+- **Fix notice, undefined property on Pcp page ([28728](https://github.com/civicrm/civicrm-core/pull/28728))**
+
+- **Enable Smarty3, smarty notices by default for all localhost or demo builds ([28725](https://github.com/civicrm/civicrm-core/pull/28725))**
+
+- **Deprecate less reliable contributionPage api functions ([28729](https://github.com/civicrm/civicrm-core/pull/28729))**
+
+- **WIP: Fix dev/core#4813: CRM_Report_Form_Activity: Add Employer fields, and… ([28708](https://github.com/civicrm/civicrm-core/pull/28708))**
+
+- **dev/user-interface#49 - SearchKit: improve tabbed interface ([28688](https://github.com/civicrm/civicrm-core/pull/28688))**
+
+- **Revert changes that I strongly oppose that were forced through whilst I was asleep ([28719](https://github.com/civicrm/civicrm-core/pull/28719))**
+
+- **Standalone session management ([28537](https://github.com/civicrm/civicrm-core/pull/28537))**
+
+- **Fix notice on rendering examples when no contribution pages exist ([28714](https://github.com/civicrm/civicrm-core/pull/28714))**
+
+- **5.69 to master ([28717](https://github.com/civicrm/civicrm-core/pull/28717))**
+
+- **regen after 28705 ([28715](https://github.com/civicrm/civicrm-core/pull/28715))**
+
+- **Add test cover for Dummy warnings ([28713](https://github.com/civicrm/civicrm-core/pull/28713))**
+
+- **Fix notice in participant_cancelled email ([28705](https://github.com/civicrm/civicrm-core/pull/28705))**
+
+- **Replace deprecated invoice settings ([28710](https://github.com/civicrm/civicrm-core/pull/28710))**
+
+- **ReportInstance - Cleanup BAO::add function and DAO metadata ([28707](https://github.com/civicrm/civicrm-core/pull/28707))**
+
+- **[php8.x] Remove unused undeclared property `_params`, provide __get for transitional support ([28701](https://github.com/civicrm/civicrm-core/pull/28701))**
+
+- **Revert "Remove parent-declared properties" ([28706](https://github.com/civicrm/civicrm-core/pull/28706))**
+
+- **dev/core#2607 - Maintain list of deleted files ([28653](https://github.com/civicrm/civicrm-core/pull/28653))**
+
+- **Remove parent-declared properties ([28703](https://github.com/civicrm/civicrm-core/pull/28703))**
+
+- **Stop ignoring tests when apiv4 function does not exist ([28697](https://github.com/civicrm/civicrm-core/pull/28697))**
+
+- **DAO - Remove fieldKeys(), getLog() and getTableName() ([28666](https://github.com/civicrm/civicrm-core/pull/28666))**
+
+- **5.69 ([28698](https://github.com/civicrm/civicrm-core/pull/28698))**
+
+- **Remove deprecated function `initSet` ([28676](https://github.com/civicrm/civicrm-core/pull/28676))**
+
+- **Stop setting front-end values in back office form ([28678](https://github.com/civicrm/civicrm-core/pull/28678))**
+
+- **Standardise fetching of variables on recur management screens ([28652](https://github.com/civicrm/civicrm-core/pull/28652))**
+
+- **Stop comparing status_id with membership type in test ([28687](https://github.com/civicrm/civicrm-core/pull/28687))**
+
+- **Update package lock for newer npm versions ([28691](https://github.com/civicrm/civicrm-core/pull/28691))**
+
+- **5.69 ([28690](https://github.com/civicrm/civicrm-core/pull/28690))**
+
+- **Test update - use apiv4 to set up for test ([28674](https://github.com/civicrm/civicrm-core/pull/28674))**
+
+- **dev/core#4866 tag search fix ([28681](https://github.com/civicrm/civicrm-core/pull/28681))**
+
+- **5.69 ([28685](https://github.com/civicrm/civicrm-core/pull/28685))**
+
+- **Set formBuilt to TRUE when, erm, it is built ([28682](https://github.com/civicrm/civicrm-core/pull/28682))**
+
+- **Replace undeclared property with local variable ([28679](https://github.com/civicrm/civicrm-core/pull/28679))**
+
+- **5.69 ([28683](https://github.com/civicrm/civicrm-core/pull/28683))**
+
+- **Minor variable standardisation in test ([28675](https://github.com/civicrm/civicrm-core/pull/28675))**
+
+- **[REF] Change LineItem.qty to be CRM type of FLOAT rather than Money a… ([28464](https://github.com/civicrm/civicrm-core/pull/28464))**
+
+- **Cleanup membership Types in test ([28671](https://github.com/civicrm/civicrm-core/pull/28671))**
+
+- **[PHP8] Remove unneeded $this->_context in Case_Page_Tab ([28669](https://github.com/civicrm/civicrm-core/pull/28669))**
+
+- **5.69 ([28667](https://github.com/civicrm/civicrm-core/pull/28667))**
+
+- **regen after 28633 ([28664](https://github.com/civicrm/civicrm-core/pull/28664))**
+
+- **5.69 ([28663](https://github.com/civicrm/civicrm-core/pull/28663))**
+
+- **Remove the text versions of a few more template ([28633](https://github.com/civicrm/civicrm-core/pull/28633))**
+
+- **Metadata - Refresh clientside resources when clearing cache ([28442](https://github.com/civicrm/civicrm-core/pull/28442))**
+
+- **dev/core#4835 Standalone Permissions user interface ([28523](https://github.com/civicrm/civicrm-core/pull/28523))**
+
+- **Remove front-end-only optionFullIds handling from back office form ([28654](https://github.com/civicrm/civicrm-core/pull/28654))**
+
+- **Update updateSubscriptionTest to use`FormTestTrait` ([28651](https://github.com/civicrm/civicrm-core/pull/28651))**
+
+- **adds Manage Events ([28476](https://github.com/civicrm/civicrm-core/pull/28476))**
+
+- **Fix missing blank href attr on <a> links in searchkit angular ([28466](https://github.com/civicrm/civicrm-core/pull/28466))**
+
+- **RelationshipCache - Add status check to ensure cache table is up-to-date ([28660](https://github.com/civicrm/civicrm-core/pull/28660))**
+
+- **Add standardised form get traits ([28656](https://github.com/civicrm/civicrm-core/pull/28656))**
+
+- **Unshare init event fee ([28657](https://github.com/civicrm/civicrm-core/pull/28657))**
+
+- **Remove extraneous call to check financial acl ([28649](https://github.com/civicrm/civicrm-core/pull/28649))**
+
+- **5.69 to master ([28655](https://github.com/civicrm/civicrm-core/pull/28655))**
+
+- **APIv4 - Super-admins don't always have access to everything ([28445](https://github.com/civicrm/civicrm-core/pull/28445))**
+
+- **ConfigTaskList: a few language tweaks and add reference to CiviCRM themes ([28588](https://github.com/civicrm/civicrm-core/pull/28588))**
+
+- **Unshare `buildAmount` block functions from front_end form ([28646](https://github.com/civicrm/civicrm-core/pull/28646))**
+
+- **Fix notices on tasks for less permissioned user ([28648](https://github.com/civicrm/civicrm-core/pull/28648))**
+
+- **[php8.x] Fully remove interaction with `_params` from backoffice participant form ([28645](https://github.com/civicrm/civicrm-core/pull/28645))**
+
+- **Use local array for tax_amount ([28640](https://github.com/civicrm/civicrm-core/pull/28640))**
+
+- **5.69 ([28644](https://github.com/civicrm/civicrm-core/pull/28644))**
+
+- **Remove unused function variable ([28639](https://github.com/civicrm/civicrm-core/pull/28639))**
+
+- **[REF][PHP8.2] Add PHP8.2 support to CRM_Contact_Page_View_Summary ([28589](https://github.com/civicrm/civicrm-core/pull/28589))**
+
+- **PHP 7.4 - Simplify expressions with null coalescing assignment operator ([28631](https://github.com/civicrm/civicrm-core/pull/28631))**
+
+- **Use standard order class to get amounts on backoffice participant form (card flow) ([28627](https://github.com/civicrm/civicrm-core/pull/28627))**
+
+- **dev/user-interface#49 SearchKit default label ([28624](https://github.com/civicrm/civicrm-core/pull/28624))**
+
+- **dev/drupal#133 - Remove bad and unnecessary breadcrumb on Domain Contact info form ([28635](https://github.com/civicrm/civicrm-core/pull/28635))**
+
+- **MailingSystemTest - Fix string concatenation ([28637](https://github.com/civicrm/civicrm-core/pull/28637))**
+
+- **Add classes to searchkit compose screen to facilitate easier theming ([28620](https://github.com/civicrm/civicrm-core/pull/28620))**
+
+- **Handle NULL in table name check ([28634](https://github.com/civicrm/civicrm-core/pull/28634))**
+
+- **PHP - Remove unneeded polyfills for php 7.3 & 7.4 ([28619](https://github.com/civicrm/civicrm-core/pull/28619))**
+
+- **5.69 ([28629](https://github.com/civicrm/civicrm-core/pull/28629))**
+
+- **expose User Contact in standaloneusers UI ([28501](https://github.com/civicrm/civicrm-core/pull/28501))**
+
+- **5.69 ([28625](https://github.com/civicrm/civicrm-core/pull/28625))**
+
+- **Standalone - consistent naming for user/role admin forms/searches ([28502](https://github.com/civicrm/civicrm-core/pull/28502))**
+
+- **ContactType - Ensure stable order ([28623](https://github.com/civicrm/civicrm-core/pull/28623))**
+
+- **5.69 ([28615](https://github.com/civicrm/civicrm-core/pull/28615))**
+
+- **standalone: workaround/fix for core issue 4853 ([28616](https://github.com/civicrm/civicrm-core/pull/28616))**
+
+- **standalone: fix double <h1> and padding on select2 drops dev/core#4831 ([28560](https://github.com/civicrm/civicrm-core/pull/28560))**
+
+- **Add token {membership.membership_status_id.is_new} ([28580](https://github.com/civicrm/civicrm-core/pull/28580))**
+
+- **Fix MailingLabels to use token processor ([28574](https://github.com/civicrm/civicrm-core/pull/28574))**
+
+- **Fix additional payment form to create billing address ([28609](https://github.com/civicrm/civicrm-core/pull/28609))**
+
+- **Ang - Change crmUiAccordion to use summary/details markup ([28467](https://github.com/civicrm/civicrm-core/pull/28467))**
+
+- **[REF][PHP8.2] Declare properties in CRM_Contribute_Form_ContributionPage_Widget ([28587](https://github.com/civicrm/civicrm-core/pull/28587))**
+
+- **[REF][PHP8.2] Tidy up use of properties in CRM_Campaign_Form_Task_Release ([28594](https://github.com/civicrm/civicrm-core/pull/28594))**
+
+- **Joomla - Remove old link format ([28603](https://github.com/civicrm/civicrm-core/pull/28603))**
+
+- **5.69 ([28610](https://github.com/civicrm/civicrm-core/pull/28610))**
+
+- **[REF][PHP8.2] Survey details report - dynamic properties ([28584](https://github.com/civicrm/civicrm-core/pull/28584))**
+
+- **Clarify handling of is_email_receipt ([28608](https://github.com/civicrm/civicrm-core/pull/28608))**
+
+- **[REF][PHP8.2] Change from dynamic property to local variable ([28596](https://github.com/civicrm/civicrm-core/pull/28596))**
+
+- **Allow API4 Job to be a ManagedEntity ([28601](https://github.com/civicrm/civicrm-core/pull/28601))**
+
+- **Standalone - Add UserRole table ([28595](https://github.com/civicrm/civicrm-core/pull/28595))**
+
+- **Standalone - Fix favicon ([28602](https://github.com/civicrm/civicrm-core/pull/28602))**
+
+- **Standalone - anonymous user access denied handling ([28565](https://github.com/civicrm/civicrm-core/pull/28565))**
+
+- **Standalone - Remove unused reference to nonexistent file ([28604](https://github.com/civicrm/civicrm-core/pull/28604))**
+
+- **5.69 ([28597](https://github.com/civicrm/civicrm-core/pull/28597))**
+
+- **[NFC] Remove unused variable ([28593](https://github.com/civicrm/civicrm-core/pull/28593))**
+
+- **[REF][PHP8.2] Switch dynamic property to local variable ([28599](https://github.com/civicrm/civicrm-core/pull/28599))**
+
+- **[REF][PHP8.2] address dynamic properties in CRM_Event_Form_SearchEvent ([28600](https://github.com/civicrm/civicrm-core/pull/28600))**
+
+- **Standalone - user edit pop-up and entity link ([28503](https://github.com/civicrm/civicrm-core/pull/28503))**
+
+- **Remove unused function deprecated a year ago ([28598](https://github.com/civicrm/civicrm-core/pull/28598))**
+
+- **AdminUI: Migrate LabelFormat from SearchUI to AdminUI ([28550](https://github.com/civicrm/civicrm-core/pull/28550))**
+
+- **fix json version file ([28591](https://github.com/civicrm/civicrm-core/pull/28591))**
+
+- **path changes for PDFFormat ([28564](https://github.com/civicrm/civicrm-core/pull/28564))**
+
+- **[php8] dev/core#4807 - Move $_entityTagValues to where it's used ([28586](https://github.com/civicrm/civicrm-core/pull/28586))**
+
+- **E-notice fix when no template exists ([28567](https://github.com/civicrm/civicrm-core/pull/28567))**
+
+- **Change URL for edit/create/delete SMS provider to support Searchkit admin ui over-ride ([28530](https://github.com/civicrm/civicrm-core/pull/28530))**
+
+- **Simplify setDefaults function on contact import mapfields ([28553](https://github.com/civicrm/civicrm-core/pull/28553))**
+
+- **Split `CRM_Utils_Address::format()` into 2 functions ([28578](https://github.com/civicrm/civicrm-core/pull/28578))**
+
+- **Fix support for DB logging with multilingual ([28338](https://github.com/civicrm/civicrm-core/pull/28338))**
+
+- **Bump min PHP version to 7.4.0 ([28583](https://github.com/civicrm/civicrm-core/pull/28583))**
+
+- **Improve 3 way fallback of name,title, frontend_title ([28568](https://github.com/civicrm/civicrm-core/pull/28568))**
+
+- **Applies accessible accordion to extension table ([28473](https://github.com/civicrm/civicrm-core/pull/28473))**
+
+- **APIv4 - Delete unused Entity::getLinks action ([28577](https://github.com/civicrm/civicrm-core/pull/28577))**
+
+- **Bump minimum PHP version ([677](https://github.com/civicrm/civicrm-drupal/pull/677))**
+
+- **Bump Minimum PPH version to 7.4 to match core ([314](https://github.com/civicrm/civicrm-wordpress/pull/314))**
+
+- **Bump minimum php version to 7.4 ([71](https://github.com/civicrm/civicrm-joomla/pull/71))**
+
+- **Bump Minimum PHP to match core ([170](https://github.com/civicrm/civicrm-backdrop/pull/170))**
+
+- **5.69 ([377](https://github.com/civicrm/civicrm-packages/pull/377))**
+
+- **Migrate Snappy to composer ([375](https://github.com/civicrm/civicrm-packages/pull/375))**
+
+## <a name="misc"></a>Miscellany
+
+## <a name="credits"></a>Credits
+
+This release was developed by the following code authors:
+
+19ATF72; AGH Strategies - Andie Hunt; Artful Robot - Rich Lott; Benjamin W; BrightMinded Ltd - Bradley Taylor; Business & Code - Alain Benbassat; Christian Wach; Circle Interactive - Pradeep Nayak; CiviCoop - Jaap Jansma; CiviCRM - Coleman Watts, Tim Otten; Compuco - Olayiwola Odunsi; Coop SymbioTIC - Mathieu Lutfy; Dave D; dependabot[bot]; European Centre for Press and Media Freedom (ECPMF) - Benjamin Bock; Fuzion - Jitendra Purohit; Humanists UK - Andrew West;; JMA Consulting - Seamus Lee; Joinery - Allen Shaw; Lemniscus - Noah Miller; Makoa - Usha F. Matisson; Megaphone Technology Consulting - Jon Goldberg; mflandorfer; MJW Consulting - Matthew Wire; Nicol Wistreich; patricklam; Squiffle Consulting - Aidan Saunders; Stephen Palmstrom; Third Sector Design - Michael McAndrew, William Mortada; Wikimedia Foundation - Eileen McNaughton, Elliott Eggleston
+
+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 - John Twyman; Benjamin W; BrightMinded Ltd - Bradley Taylor; Christian Wach; chumkui; Circle Interactive - Pradeep Nayak; civibot[bot]; CiviCoop - Jaap Jansma; civicrm-builder; CiviCRM - Coleman Watts, Tim Otten; CiviDesk - Yashodha Chaku; Coop SymbioTIC - Mathieu Lutfy; Dave D; European Centre for Press and Media Freedom (ECPMF) - Benjamin Bock; Francesc Bassas i Bullich; Fuzion - Jitendra Purohit; Humanists UK - Andrew West;; JMA Consulting - Monish Deb, Seamus Lee; John Kingsnorth; Joinery - Allen Shaw; Makoa - Usha F. Matisson; Megaphone Technology Consulting - Jon Goldberg; MJW Consulting - Matthew Wire; Nicol Wistreich; patricklam; Skvare - Mark Hanna; Squiffle Consulting - Aidan Saunders; Tadpole Collective - Kevin Cristiano; Third Sector Design - Michael McAndrew, William Mortada; Wikimedia Foundation - Eileen McNaughton, Elliott Eggleston; Wildsight - Lars Sander-Green
\ No newline at end of file