X-Git-Url: https://vcs.fsf.org/?a=blobdiff_plain;f=release-notes%2F5.42.0.md;h=2e20bb9bb5e5e25bfd0d3880d790cd0aff951b33;hb=f626bf6c9323d5d18d92489b2049783831d40825;hp=8d7f5d5a236dbeae4753b9ba72b3f95220d6f6dc;hpb=29d047d701c7223e7999fc1f66381022c3dee0e7;p=civicrm-core.git
diff --git a/release-notes/5.42.0.md b/release-notes/5.42.0.md
index 8d7f5d5a23..2e20bb9bb5 100644
--- a/release-notes/5.42.0.md
+++ b/release-notes/5.42.0.md
@@ -13,430 +13,749 @@ Released October 6, 2021
| *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? | no |
+| **Introduce features?** | **yes** |
+| **Fix bugs?** | **yes** |
## Features
### Core CiviCRM
-- **CRM- Missing Summary ([58](https://github.com/civicrm/civicrm-joomla/pull/58))**
+- **Edit Contact: Hide email signatures for contacts that do not have a user/CMS
+ account
+ ([dev/user-interface#38](https://lab.civicrm.org/dev/user-interface/-/issues/38):
+ [21103](https://github.com/civicrm/civicrm-core/pull/21103))**
-## Bugs resolved
+ Improves the user interface by hiding the email signature section for contacts
+ for whom it is not relevant.
-### Core CiviCRM
+- **Option to rename the file before downloading
+ ([dev/core#2121](https://lab.civicrm.org/dev/core/-/issues/2121):
+ [21006](https://github.com/civicrm/civicrm-core/pull/21006))**
+
+ Gives the user the option to change the PDF file name on the "Print/Merge
+ Document" screen.
+
+- **Add Settings, Disable, Delete buttons to group contacts listing page
+ (Work Towards [dev/core#2546](https://lab.civicrm.org/dev/core/-/issues/2546):
+ [20135](https://github.com/civicrm/civicrm-core/pull/20135))**
-- **SearchKit - Fix aggregated joins ([21411](https://github.com/civicrm/civicrm-core/pull/21411))**
+ Adds a "Edit Group Settings" button that pops up the group settings edit
+ overlay to the smog group page.
-- **SearchKit - Add download CSV action ([21328](https://github.com/civicrm/civicrm-core/pull/21328))**
+- **On logging detail report show the words not the numbers
+ ([dev/core#2691](https://lab.civicrm.org/dev/core/-/issues/2691):
+ [20907](https://github.com/civicrm/civicrm-core/pull/20907))**
-- **TokenProcessor - Allow defining Smarty variables which are populated via token ([21336](https://github.com/civicrm/civicrm-core/pull/21336))**
+ Improves logging by displaying more context.
-- **[Ref] Deprecate Core_Error handling ([21279](https://github.com/civicrm/civicrm-core/pull/21279))**
+- **Tokens - contributions - could we show them all?
+ (Work Towards [dev/core#2745](https://lab.civicrm.org/dev/core/-/issues/2745):
+ [21134](https://github.com/civicrm/civicrm-core/pull/21134))**
-- **Afform - Fix button appearance and block form during submission ([21287](https://github.com/civicrm/civicrm-core/pull/21287))**
+ Ensures support for the Contribution Token "contributionId".
-- **[NFC] Fix E-notice in Afform unit tests ([21345](https://github.com/civicrm/civicrm-core/pull/21345))**
+- **Allow dedupe by websites
+ ([dev/core#2770](https://lab.civicrm.org/dev/core/-/issues/2770):
+ [21168](https://github.com/civicrm/civicrm-core/pull/21168))**
-- **[REF] Fix Page Hook test on php8 by putting in guard into customDataB⦠([21344](https://github.com/civicrm/civicrm-core/pull/21344))**
+ Makes it so one can dedupe based on websites.
-- **SearchKit - Add links to admin table and refresh after popups ([21343](https://github.com/civicrm/civicrm-core/pull/21343))**
+- **APIv4 pseudoconstant improvements
+ ([21184](https://github.com/civicrm/civicrm-core/pull/21184))**
-- **Tidies Joomla 4 integration (menu, padding) after final release ([21342](https://github.com/civicrm/civicrm-core/pull/21342))**
+ Makes SearchKit handle large option lists more efficiently, and adds APIv4
+ field metadata about available suffixes.
-- **Simplify ContributionView form. Always display "lineitems" ([21285](https://github.com/civicrm/civicrm-core/pull/21285))**
+- **SearchKit - Add placeholder to token select
+ ([21172](https://github.com/civicrm/civicrm-core/pull/21172))**
-- **[NFC] Cleanup boilerplate code in extension upgrader classes ([21340](https://github.com/civicrm/civicrm-core/pull/21340))**
+ Adds placeholder text to the token select dropdown in SearchKit.
-- **dev/core#2806 Fix accidental exposure of v4 tokens ([21337](https://github.com/civicrm/civicrm-core/pull/21337))**
+- **Searchkit - Add grid display layout
+ ([dev/core#2776](https://lab.civicrm.org/dev/core/-/issues/2776):
+ [21194](https://github.com/civicrm/civicrm-core/pull/21194))**
-- **[NFC/Unit test] Update flaky test CRM_Utils_TokenConsistencyTest::testCaseTokenConsistency ([21341](https://github.com/civicrm/civicrm-core/pull/21341))**
+ Adds support to display SearchKit results in a grid format.
-- **[REF] dev/core#2790 deprecate preProcessSingle ([21334](https://github.com/civicrm/civicrm-core/pull/21334))**
+- **SearchKit - Merge admin results table with searchDisplay code
+ ([21069](https://github.com/civicrm/civicrm-core/pull/21069) and
+ [21488](https://github.com/civicrm/civicrm-core/pull/21488))**
-- **Afform - Optimize Get by checking type ([21316](https://github.com/civicrm/civicrm-core/pull/21316))**
+ Improves and streamlines the SearchKit Angular code to reconcile two
+ different ways of fetching, formatting & displaying results. This reduces code
+ duplication, while adding a few features from the admin table to all search
+ display tables.
-- **Fixes unusable modals in Joomla 4 ([21286](https://github.com/civicrm/civicrm-core/pull/21286))**
+- **SearchKit - Add download CSV action
+ ([21328](https://github.com/civicrm/civicrm-core/pull/21328))**
-- **SearchKit - Use a search display to display searches ([21270](https://github.com/civicrm/civicrm-core/pull/21270))**
+ Adds an option to SearchKit to download a CSV.
-- **SearchKit - Fix pager count and add 'None Found' text in empty tables ([21333](https://github.com/civicrm/civicrm-core/pull/21333))**
+- **SearchKit - Add links to admin table and refresh after popups
+ ([21343](https://github.com/civicrm/civicrm-core/pull/21343))**
-- **[REF] dev/core#2790 move preProcess static to the trait ([21331](https://github.com/civicrm/civicrm-core/pull/21331))**
+ Adds quick-action links to the SearchKit admin results table.
-- **[REF] dev/core#2790 Deprecate CRM/Member/Form/Task/PDFLetterCommon ([21305](https://github.com/civicrm/civicrm-core/pull/21305))**
+- **SearchKit - Use a search display to display searches
+ ([21270](https://github.com/civicrm/civicrm-core/pull/21270))**
-- **5.41 to master ([21332](https://github.com/civicrm/civicrm-core/pull/21332))**
+ Simplifies code by using a SearchKit display to display searches.
-- **[REF] dev/core#2790 Pre process cleanup on pdf tasks ([21310](https://github.com/civicrm/civicrm-core/pull/21310))**
+- **Include random as an option when sorting displays
+ ([dev/report#75](https://lab.civicrm.org/dev/report/-/issues/75):
+ [21177](https://github.com/civicrm/civicrm-core/pull/21177))**
-- **[REF] dev/core#2790 towards pdf task trait ([21276](https://github.com/civicrm/civicrm-core/pull/21276))**
+ Adds a sort option of random to SearchKit.
-- **Afform - selectable location type for address, email, etc ([21254](https://github.com/civicrm/civicrm-core/pull/21254))**
+- **Searchkit: Add image field handler
+ ([dev/core#2781](https://lab.civicrm.org/dev/core/-/issues/2781):
+ [21300](https://github.com/civicrm/civicrm-core/pull/21300))**
-- ** dev/core#2732 SearchKit - Move field formatting from client-side to server-side ([21320](https://github.com/civicrm/civicrm-core/pull/21320))**
+ Makes it possible to show images in SearchKit displays.
-- **Fix support link just added in oauth-client extension info.xml ([21256](https://github.com/civicrm/civicrm-core/pull/21256))**
+- **SearchKit - Allow tokens in menu button text
+ ([21217](https://github.com/civicrm/civicrm-core/pull/21217))**
-- **Remove extraneous buildQuickForm ([21325](https://github.com/civicrm/civicrm-core/pull/21325))**
+ Makes it so users can include tokens in SearchKit menu button text.
-- **[NFC] Fix UpdateSubscriptionTest on php8 by creating a Payment Processor ([21324](https://github.com/civicrm/civicrm-core/pull/21324))**
+- **TokenProcessor - Allow defining Smarty variables which are populated via
+ token ([21336](https://github.com/civicrm/civicrm-core/pull/21336))**
-- **[REF] dev/core#2790 move buildForm to pdfTrait ([21297](https://github.com/civicrm/civicrm-core/pull/21297))**
+ Allows more interoperability between Smarty expressions and tokens.
-- **5.41 to master ([21323](https://github.com/civicrm/civicrm-core/pull/21323))**
+- **Token Parser - Allow tokens with multiple dots (eg
+ {contribution.contribution_recur_id.amount})
+ ([21076](https://github.com/civicrm/civicrm-core/pull/21076))**
-- **SearchKit - Allow random sorting (Fixes dev/report#75) ([21177](https://github.com/civicrm/civicrm-core/pull/21177))**
+ Adjusts the naming/parsing rules for Civi-style tokens so that tokens may
+ include dots and colons.
-- **[REF] Fix undefined smarty vars in Advanced Search ([21321](https://github.com/civicrm/civicrm-core/pull/21321))**
+- **Afform - support file uploads
+ ([21150](https://github.com/civicrm/civicrm-core/pull/21150))**
-- **better target multivalue checkbox and multiselect import validation ([21317](https://github.com/civicrm/civicrm-core/pull/21317))**
+ Supports file fields as part of Afform.
-- **Move financial acl setting to the extension ([21120](https://github.com/civicrm/civicrm-core/pull/21120))**
+- **Not possible to set the location type (address, mail, telephone) to a
+ specific value
+ ([dev/core#2703](https://lab.civicrm.org/dev/core/-/issues/2703):
+ [21254](https://github.com/civicrm/civicrm-core/pull/21254))**
-- **Fix Searchkit "Add" columns button UI ([21315](https://github.com/civicrm/civicrm-core/pull/21315))**
+ Makes it possible in Afform to select a single location type for an address,
+ email, phone etc. block instead of having the field on the form.
-- **[NFC] Fix undefined array key when running CRM unit test suite in php8 ([21314](https://github.com/civicrm/civicrm-core/pull/21314))**
+- **Afform - Store submissions in a new database table
+ ([21105](https://github.com/civicrm/civicrm-core/pull/21105))**
-- **[REF] Improve Custom data insert performance when using the copyCusto⦠([21313](https://github.com/civicrm/civicrm-core/pull/21313))**
+ Adds a Afform setting "log submissions", when checked, Afform submissions are
+ stored in the database.
-- **SavedSearch - Add pseudoconstant for api_entity field ([21312](https://github.com/civicrm/civicrm-core/pull/21312))**
+- **Move financial acl setting to the extension
+ ([21120](https://github.com/civicrm/civicrm-core/pull/21120))**
-- **dev/core#2682 Entity batch declare option group for pseudoconstant ([21241](https://github.com/civicrm/civicrm-core/pull/21241))**
+ Moves financial ACL settings to the financial ACL extension.
-- **Use getter to get subscription id ([21309](https://github.com/civicrm/civicrm-core/pull/21309))**
+- **SavedSearch - Add pseudoconstant for api_entity field
+ ([21312](https://github.com/civicrm/civicrm-core/pull/21312))**
-- **[REF] Copy preProcessFromAddress back into the pdf function ([21306](https://github.com/civicrm/civicrm-core/pull/21306))**
+ Adds a pseudoconstant to facilitate display in the UI of what a search is for,
+ e.g. ->addSelect('api_entity:label') would return "Contacts" for a search of
+ Contacts.
-- **Add test to UpdateSubscription form ([21282](https://github.com/civicrm/civicrm-core/pull/21282))**
+- **Change the default PDF file name from "CiviLetter.pdf" to use the Activity
+ Subject, if available
+ ([21220](https://github.com/civicrm/civicrm-core/pull/21220))**
-- **Fix deprecated API4 Join on Email in dynamic profile ([21308](https://github.com/civicrm/civicrm-core/pull/21308))**
+ Improves PDF file naming to be more specific.
-- **Do not add tracking to internal anchor URLs ([20115](https://github.com/civicrm/civicrm-core/pull/20115))**
+- **Change PDF file name from "civicrmContributionReceipt.pdf" to use the
+ standard "receipt.pdf" file name
+ ([21221](https://github.com/civicrm/civicrm-core/pull/21221))**
-- **dev/core#2546 Add settings button to group page ([20135](https://github.com/civicrm/civicrm-core/pull/20135))**
+ Improves PDF file naming.
-- **5.41 ([21307](https://github.com/civicrm/civicrm-core/pull/21307))**
+- **Scheduled Reminders UI - Show more activity tokens in admin GUI
+ ([21091](https://github.com/civicrm/civicrm-core/pull/21091))**
-- **5.41 ([21303](https://github.com/civicrm/civicrm-core/pull/21303))**
+ Adds more Activity Tokens to the Scheduled Reminders UI.
-- **[NFC] Fix APIv4 Conformance tests on php8 ([21302](https://github.com/civicrm/civicrm-core/pull/21302))**
+### CiviContribute
-- **[Ref] intial testing on case tokens, make knownTokens optional ([21289](https://github.com/civicrm/civicrm-core/pull/21289))**
+- **Logging improvements for "Failed to update contribution in database"
+ ([21243](https://github.com/civicrm/civicrm-core/pull/21243))**
-- **SearchKit - Image field handler implementation ([21300](https://github.com/civicrm/civicrm-core/pull/21300))**
+ Improves logging when contribution fails.
-- **[REF] Remove duplicate IF ([21298](https://github.com/civicrm/civicrm-core/pull/21298))**
+- **Add recurring contributions to contribution reports
+ (Work Towards [dev/report#63](https://lab.civicrm.org/dev/report/-/issues/63):
+ [20168](https://github.com/civicrm/civicrm-core/pull/20168))**
-- **Fix for new prefetch key ([21292](https://github.com/civicrm/civicrm-core/pull/21292))**
+ Adds "Contribution Recurring" as a filter, column and group by to the
+ Contribution Summary Report.
-- **[REF] Minor extraction ([21296](https://github.com/civicrm/civicrm-core/pull/21296))**
+### CiviMail
-- **[REF] Remove unreachable code ([21294](https://github.com/civicrm/civicrm-core/pull/21294))**
+- **System Workflow Messages - Improve localization experience (Work Towards
+ [dev/mail#83](https://lab.civicrm.org/dev/mail/-/issues/83):
+ [21139](https://github.com/civicrm/civicrm-core/pull/21139))**
-- **[Ref] Minor extraction ([21293](https://github.com/civicrm/civicrm-core/pull/21293))**
+ Introduces a class contracts for system workflow messages which will enable
+ richer APIs and UIs.
-- **[REF] dev/core#2790 Initial creation of pdf trait ([21290](https://github.com/civicrm/civicrm-core/pull/21290))**
+### CiviMember
-- **(dev/translation#70) Multilingual - Fix loading multiple translations within same page-view (OptionValues, ContactTypes) ([21268](https://github.com/civicrm/civicrm-core/pull/21268))**
+- **Membership api for v4
+ ([dev/core#2634](https://lab.civicrm.org/dev/core/-/issues/2634):
+ [21106](https://github.com/civicrm/civicrm-core/pull/21106))**
-- **Change the default PDF file name from "CiviLetter.pdf" to use the Activity Subject, if available ([21220](https://github.com/civicrm/civicrm-core/pull/21220))**
+ Adds the Membership entity to APIv4.
-- **(dev/mail#83) Workflow Messages - Introduce class contracts ([21139](https://github.com/civicrm/civicrm-core/pull/21139))**
+- **Fix code to use Order api to create Memberships in core forms
+ (Work Towards [dev/core#2717](https://lab.civicrm.org/dev/core/-/issues/2717):
+ [20936](https://github.com/civicrm/civicrm-core/pull/20936),
+ [21126](https://github.com/civicrm/civicrm-core/pull/21126) and
+ [20935](https://github.com/civicrm/civicrm-core/pull/20935))**
-- **5.41 ([21281](https://github.com/civicrm/civicrm-core/pull/21281))**
+ Work towards using the Order API to create Memberships in core forms.
-- **5.41 ([21280](https://github.com/civicrm/civicrm-core/pull/21280))**
+### Joomla Integration
-- **Afform - support file uploads ([21150](https://github.com/civicrm/civicrm-core/pull/21150))**
+- **CiviCRM-Joomla should accept web-service calls
+ ([58](https://github.com/civicrm/civicrm-joomla/pull/58))**
-- **dev/core#2789 - Filename is not non-english-friendly in print/merge document ([21259](https://github.com/civicrm/civicrm-core/pull/21259))**
+ Ensures that on a stock configuration of CiviCRM-Joomla, it is possible to
+ create a page-route for accepting web-service calls.
-- **REF Don't check if id is set in ContributionView form - it's required ([21274](https://github.com/civicrm/civicrm-core/pull/21274))**
+## Bugs resolved
-- **[REF] Remove meaningless if ([21273](https://github.com/civicrm/civicrm-core/pull/21273))**
+### Core CiviCRM
-- **dev/core#2717 - further cleanup ([21126](https://github.com/civicrm/civicrm-core/pull/21126))**
+- **Multi-lingual: Contact Type label is cached regardless of language
+ ([dev/translation#70](https://lab.civicrm.org/dev/translation/-/issues/70):
+ [21268](https://github.com/civicrm/civicrm-core/pull/21268))**
-- **Remove deprecated isDevelopment() function ([21269](https://github.com/civicrm/civicrm-core/pull/21269))**
+ Fixes loading multiple translations within same page-view (OptionValues,
+ ContactTypes).
-- **Change PDF file name from "civicrmContributionReceipt.pdf" to use the standard "receipt.pdf" file name ([21221](https://github.com/civicrm/civicrm-core/pull/21221))**
+- **Activity export broken - takes you to some other screen instead
+ ([dev/core#2835](https://lab.civicrm.org/dev/core/-/issues/2835):
+ [21456](https://github.com/civicrm/civicrm-core/pull/21456))**
-- **5.41 ([21266](https://github.com/civicrm/civicrm-core/pull/21266))**
+- **APIv4 - entityBatch linkage
+ ([dev/core#2682](https://lab.civicrm.org/dev/core/-/issues/2682):
+ [21241](https://github.com/civicrm/civicrm-core/pull/21241))**
-- **Do not enable custom activity search on new installs ([21260](https://github.com/civicrm/civicrm-core/pull/21260))**
+ Work Towards APIv4 entity parity. Ensures that the values for entity_table are
+ discoverable.
-- **5.41 to master ([21264](https://github.com/civicrm/civicrm-core/pull/21264))**
+- **Consider replacing fopen() call in CRM_Utils_File::isIncludable with
+ stream_resolve_include_path()
+ ([dev/core#2730](https://lab.civicrm.org/dev/core/-/issues/2730):
+ [21060](https://github.com/civicrm/civicrm-core/pull/21060))**
-- **Logging improvements for "Failed to update contribution in database" ([21243](https://github.com/civicrm/civicrm-core/pull/21243))**
+ Replaces fopen call in CRM_Utils_File::isIncludable with one that doesn't need
+ error-supression to avoid problems in php8.
-- **5.41 ([21258](https://github.com/civicrm/civicrm-core/pull/21258))**
+- **SearchKit: have a quick Export task
+ (Work Towards [dev/core#2732](https://lab.civicrm.org/dev/core/-/issues/2732):
+ [21320](https://github.com/civicrm/civicrm-core/pull/21320))**
-- **dev/core#2717 Simplify batch membership renewal ([20935](https://github.com/civicrm/civicrm-core/pull/20935))**
+ Refactoring work towards making it possible to have a direct export feature in
+ SearchKit.
-- **dev/core#2634 Add v4 Membership api, access it via order ([21106](https://github.com/civicrm/civicrm-core/pull/21106))**
+- **SearchKit - Fix deleting search displays
+ ([21444](https://github.com/civicrm/civicrm-core/pull/21444))**
-- **Template fixes - notices, syntax ([21257](https://github.com/civicrm/civicrm-core/pull/21257))**
+- **SearchKit - Fix anonymous access to running search displays
+ #([21752](https://github.com/civicrm/civicrm-core/pull/21752))**
-- **Fix invalid parameter giving E_WARNING ([21255](https://github.com/civicrm/civicrm-core/pull/21255))**
+ Recently SearchKit added the ability for anonymous users to access search
+ displays. However, due to an oversight the feature doesn't actually work for
+ anonymous users. This fixes the problem.
-- **Provided standard links in ext/oauth-client/info.xml, fixed typo ([21252](https://github.com/civicrm/civicrm-core/pull/21252))**
+- **Afform - ensure dragging classes are removed when not sorting
+ ([21750](https://github.com/civicrm/civicrm-core/pull/21750))**
-- **[Ref] Copy emailcommon function back to email trait ([21251](https://github.com/civicrm/civicrm-core/pull/21251))**
+ Fixes an annoying UI glitch in Afform where the screen can appear "locked" or
+ "frozen" after dragging fields into a fieldset.
-- **[REF] Update a few references to invoicing ([21101](https://github.com/civicrm/civicrm-core/pull/21101))**
+- **Expose Contribution token processor
+ ([dev/core#2747](https://lab.civicrm.org/dev/core/-/issues/2747):
+ [21046](https://github.com/civicrm/civicrm-core/pull/21046) and
+ [21057](https://github.com/civicrm/civicrm-core/pull/21057))**
-- **SearchKit - Allow tokens in menu button text ([21217](https://github.com/civicrm/civicrm-core/pull/21217))**
+ Reconciles contribution legacy tokens and scheduled reminders tokens.
-- ** dev/core#2745 - Contribution Tokens - Support 'contributionId' ([21134](https://github.com/civicrm/civicrm-core/pull/21134))**
+- **CRM_Core_BAO_CustomField::getChangeSerialize always returns a change
+ ([dev/core#2762](https://lab.civicrm.org/dev/core/-/issues/2762):
+ [21160](https://github.com/civicrm/civicrm-core/pull/21160))**
-- **dev/core#2121 Ability to change pdf filename before downloading ([21006](https://github.com/civicrm/civicrm-core/pull/21006))**
+- **Caching issue on apiv4 + install
+ ([dev/core#2763](https://lab.civicrm.org/dev/core/-/issues/2763):
+ [21166](https://github.com/civicrm/civicrm-core/pull/21166))**
-- **5.41 to master ([21246](https://github.com/civicrm/civicrm-core/pull/21246))**
+- **CiviCRM email validation failing incorrectly
+ ([dev/core#2769](https://lab.civicrm.org/dev/core/-/issues/2769):
+ [329](https://github.com/civicrm/civicrm-packages/pull/329) and
+ [21169](https://github.com/civicrm/civicrm-core/pull/21169))**
-- **[NFC] - Replace deprecated function in AngularLoaderTest ([21244](https://github.com/civicrm/civicrm-core/pull/21244))**
+- **Sort by date column on multirecord field listing section on profile edit
+ mode doesn't work
+ ([dev/core#2774](https://lab.civicrm.org/dev/core/-/issues/2774):
+ [21191](https://github.com/civicrm/civicrm-core/pull/21191))**
-- **CiviCRM Mailing, function unsub_from_mailing has spelling error, "experiement" impacts A/B Mailing unsubscribes ([21245](https://github.com/civicrm/civicrm-core/pull/21245))**
+- **Error when using search in 'Find and Merge Duplicate Contacts' page
+ ([dev/core#2778](https://lab.civicrm.org/dev/core/-/issues/2778):
+ [21223](https://github.com/civicrm/civicrm-core/pull/21223))**
-- **dev/core#2769 use php email validation not hacked & bad quickform function ([21169](https://github.com/civicrm/civicrm-core/pull/21169))**
+- **Print/merge document has awkward filename if activity subject uses
+ non-english letters
+ ([dev/core#2789](https://lab.civicrm.org/dev/core/-/issues/2789):
+ [21259](https://github.com/civicrm/civicrm-core/pull/21259))**
-- **(Smart Group) is being constantly added while editing the smart group title from 'Manage Group' page ([20898](https://github.com/civicrm/civicrm-core/pull/20898))**
+- **Contribution custom field tokens are duplicated in the dropdown
+ ([dev/core#2806](https://lab.civicrm.org/dev/core/-/issues/2806):
+ [21337](https://github.com/civicrm/civicrm-core/pull/21337))**
-- **5.41 to master ([21240](https://github.com/civicrm/civicrm-core/pull/21240))**
+- **[regression] Search forms with entities that include File custom fields
+ don't render in Afform Admin screen
+ ([dev/core#2751](https://lab.civicrm.org/dev/core/-/issues/2751):
+ [21084](https://github.com/civicrm/civicrm-core/pull/21084))**
-- **Afform - Store submissions in a new database table ([21105](https://github.com/civicrm/civicrm-core/pull/21105))**
+- **APIv4 - Throw exception instead of munging illegal join aliases
+ ([21072](https://github.com/civicrm/civicrm-core/pull/21072))**
-- **5.41 ([21231](https://github.com/civicrm/civicrm-core/pull/21231))**
+ Improves APIv4 validation of explicit join aliases.
-- **Add date metadata for email.on_hold, reset_date ([21233](https://github.com/civicrm/civicrm-core/pull/21233))**
+- **Fix deprecated API4 Join on Email in dynamic profile
+ ([21308](https://github.com/civicrm/civicrm-core/pull/21308))**
-- **Afform - fix contact source field & field defaults ([21228](https://github.com/civicrm/civicrm-core/pull/21228))**
+- **Search Kit doesn't display related contact custom fields
+ ([dev/report#73](https://lab.civicrm.org/dev/report/-/issues/73):
+ [21071](https://github.com/civicrm/civicrm-core/pull/21071))**
-- **Afform - Rename blocks and joins for clarity ([21218](https://github.com/civicrm/civicrm-core/pull/21218))**
+- **SearchKit - Misc bulk action bug fixes
+ ([21159](https://github.com/civicrm/civicrm-core/pull/21159))**
-- **[REF] APIv4 Notes - Ensure child notes are deleted with parent, and hooks are called ([21208](https://github.com/civicrm/civicrm-core/pull/21208))**
+- **SearchKit - Fix aggregated joins
+ ([21411](https://github.com/civicrm/civicrm-core/pull/21411))**
-- **[REF] Remove unused/unneeded variables from Note View page ([21226](https://github.com/civicrm/civicrm-core/pull/21226))**
+- **SearchKit - Fix pager count and add 'None Found' text in empty tables
+ ([21333](https://github.com/civicrm/civicrm-core/pull/21333))**
-- **EntityBatch - Deprecate del() function (dev/core#2757) ([21213](https://github.com/civicrm/civicrm-core/pull/21213))**
+- **Fix Searchkit "Add" columns button UI
+ ([21315](https://github.com/civicrm/civicrm-core/pull/21315))**
-- **Fixes dev/core#2778 - Fatal error on dedupe screen ([21223](https://github.com/civicrm/civicrm-core/pull/21223))**
+- **Afform - Fix button appearance and block form during submission
+ ([21287](https://github.com/civicrm/civicrm-core/pull/21287))**
-- **Improve test for CRM_Utils_Recent ([21222](https://github.com/civicrm/civicrm-core/pull/21222))**
+- **Afform - fix contact source field & field defaults
+ ([21228](https://github.com/civicrm/civicrm-core/pull/21228))**
-- **Alternate to 20131 - Avoid crash during import for blank lines in a one-column csv file ([21216](https://github.com/civicrm/civicrm-core/pull/21216))**
+- **Fix support link just added in oauth-client extension info.xml
+ ([21256](https://github.com/civicrm/civicrm-core/pull/21256))**
-- **[REF] CRM_Utils_Recent - Use hook listener to delete items ([21204](https://github.com/civicrm/civicrm-core/pull/21204))**
+- **better target multivalue checkbox and multiselect import validation
+ ([21317](https://github.com/civicrm/civicrm-core/pull/21317))**
-- **Extract ACL contact cache clearing part out ([21219](https://github.com/civicrm/civicrm-core/pull/21219))**
+- **Do not add tracking to internal anchor URLs
+ ([20115](https://github.com/civicrm/civicrm-core/pull/20115))**
-- **dev/core#2774 : Sort by date column on multirecord field listing section on profile edit mode doesn't work ([21191](https://github.com/civicrm/civicrm-core/pull/21191))**
+- **Fix for new prefetch key
+ ([21292](https://github.com/civicrm/civicrm-core/pull/21292))**
-- **[REF] dev/core#2757 Move acl delete logic to an event listener ([21201](https://github.com/civicrm/civicrm-core/pull/21201))**
+- **Do not enable custom activity search on new installs
+ ([21260](https://github.com/civicrm/civicrm-core/pull/21260))**
-- **[NFC] CRM_Utils_SystemTest - Call to Uri->withPath() using deprecated format ([21215](https://github.com/civicrm/civicrm-core/pull/21215))**
+- **Add date metadata for email.on_hold, reset_date
+ ([21233](https://github.com/civicrm/civicrm-core/pull/21233))**
-- **[NFC] CRM_Extension_Manager_ModuleUpgTest - use ?? instead of error-suppression operator ([21214](https://github.com/civicrm/civicrm-core/pull/21214))**
+- **Add no-prefetch campaign pseudoconstants
+ ([21185](https://github.com/civicrm/civicrm-core/pull/21185))**
-- **[REF] Deprecate unnecessary del() functions ([21200](https://github.com/civicrm/civicrm-core/pull/21200))**
+- **Replace extension key with label during install/upgrade/disable/uninstall
+ ([21094](https://github.com/civicrm/civicrm-core/pull/21094))**
-- **Remove unused, duplicate functions getEntitiesByTag ([21209](https://github.com/civicrm/civicrm-core/pull/21209))**
+- **ActionSchedule - Pass real batches into TokenProcessor. Simplify
+ CRM_Activity_Tokens.
+ ([21088](https://github.com/civicrm/civicrm-core/pull/21088))**
-- **[NFC] CRM_Extension_Manager_ModuleTest - use ?? instead of error-suppression operator ([21206](https://github.com/civicrm/civicrm-core/pull/21206))**
+- **MessageTemplate::sendTemplate() - Accept `array $messageTemplate` and `array
+ $tokenContext` ([21073](https://github.com/civicrm/civicrm-core/pull/21073))**
-- **CRM_Queue_Service - Use ?? instead of error-supression operator ([21207](https://github.com/civicrm/civicrm-core/pull/21207))**
+- **Alternate to 20131 - Avoid crash during import for blank lines in a
+ one-column csv file
+ ([21216](https://github.com/civicrm/civicrm-core/pull/21216))**
-- **5.41 to master (conflicts resolved) ([21203](https://github.com/civicrm/civicrm-core/pull/21203))**
+- **CRM_Queue_Service - Use ?? instead of error-supression operator
+ ([21207](https://github.com/civicrm/civicrm-core/pull/21207))**
-- **APIv4 pseudoconstant improvements ([21184](https://github.com/civicrm/civicrm-core/pull/21184))**
+- **Respect http_timeout core setting for Guzzle HTTP requests
+ ([21096](https://github.com/civicrm/civicrm-core/pull/21096))**
-- **REF Switch to CRM_Core_Form::setTitle() instead of CRM_Utils_System::setTitle() part 1 ([21193](https://github.com/civicrm/civicrm-core/pull/21193))**
+- **Smarty notice - Explicitly set hideRelativeLabel var on Find Cases form
+ ([21070](https://github.com/civicrm/civicrm-core/pull/21070))**
-- **add grid layout support for searchkit ([21194](https://github.com/civicrm/civicrm-core/pull/21194))**
+- **(Smart Group) is being constantly added while editing the smart group title
+ from 'Manage Group' page
+ ([20898](https://github.com/civicrm/civicrm-core/pull/20898))**
-- **5.41 ([21190](https://github.com/civicrm/civicrm-core/pull/21190))**
+- **Enotice fixes in tpl
+ ([21170](https://github.com/civicrm/civicrm-core/pull/21170))**
-- **Add no-prefetch campaign pseudoconstants ([21185](https://github.com/civicrm/civicrm-core/pull/21185))**
+- **Template fixes - notices, syntax
+ ([21257](https://github.com/civicrm/civicrm-core/pull/21257))**
-- **SearchKit - Misc bulk action bug fixes ([21159](https://github.com/civicrm/civicrm-core/pull/21159))**
+- **Fix invalid parameter giving E_WARNING
+ ([21255](https://github.com/civicrm/civicrm-core/pull/21255))**
-- **Remove deprecated function ([21179](https://github.com/civicrm/civicrm-core/pull/21179))**
+- **Fix search display access for non-admin users
+ ([21082](https://github.com/civicrm/civicrm-core/pull/21082))**
-- **Log details of mailing error and don't display details to end user ([21173](https://github.com/civicrm/civicrm-core/pull/21173))**
+- **Use convenience function for one-off token evaluations to avoid too-long
+ filenames and possible privacy issues
+ ([21140](https://github.com/civicrm/civicrm-core/pull/21140))**
-- **closes core#2770: Dedupe by website ([21168](https://github.com/civicrm/civicrm-core/pull/21168))**
+- **Replace deprecated calls to `renderMessageTemplate()`
+ ([21121](https://github.com/civicrm/civicrm-core/pull/21121))**
-- **dev/core#2762 Fix custom field edit form to set serialization correctly ([21160](https://github.com/civicrm/civicrm-core/pull/21160))**
+- **Scheduled Reminders - Pass locale through to TokenProcessor
+ ([21085](https://github.com/civicrm/civicrm-core/pull/21085))**
-- **dev/core#2758 - Fix contribution activity campaign propagation ...more ([21171](https://github.com/civicrm/civicrm-core/pull/21171))**
+### CiviCampaign
-- **SearchKit - Add placeholder to token select ([21172](https://github.com/civicrm/civicrm-core/pull/21172))**
+- **Fix caching on campaign pseudoconstant
+ ([21083](https://github.com/civicrm/civicrm-core/pull/21083))**
-- **Update MembershipType.duration and MembershipStatus.name to be required ([21119](https://github.com/civicrm/civicrm-core/pull/21119))**
+### CiviContribute
-- **Enotice fixes in tpl ([21170](https://github.com/civicrm/civicrm-core/pull/21170))**
+- **Fix the check to see if the financialAclExtension is installed
+ ([21077](https://github.com/civicrm/civicrm-core/pull/21077))**
-- **APIv4 - Support multiple implicit joins to the same table ([21071](https://github.com/civicrm/civicrm-core/pull/21071))**
+- **Simplify ContributionView form. Always display "lineitems"
+ ([21285](https://github.com/civicrm/civicrm-core/pull/21285))**
-- **dev/core#2763 cache clearing fix ([21166](https://github.com/civicrm/civicrm-core/pull/21166))**
+- **Can we re-order the 'recur links'
+ ([dev/core#2843](https://lab.civicrm.org/dev/core/-/issues/2843):
+ [21559](https://github.com/civicrm/civicrm-core/pull/21559))**
-- **Fix search display access for non-admin users ([21082](https://github.com/civicrm/civicrm-core/pull/21082))**
+ The new link to View Template on a recurring contribution row is now moved to
+ the end, allowing the Edit link to return to the second spot.
-- **dev/core#2758 - Fix contribution activity campaign propagation ([21167](https://github.com/civicrm/civicrm-core/pull/21167))**
+- **When a recurring contribution template has no line items, the contact
+ contribution tab crashes
+ ([dev/financial#187](https://lab.civicrm.org/dev/financial/-/issues/187):
+ [21734](https://github.com/civicrm/civicrm-core/pull/21734))**
-- **[Ref] remove unused variable ([21161](https://github.com/civicrm/civicrm-core/pull/21161))**
+- **Call line item pre hook after tax amount is calculated
+ ([21731](https://github.com/civicrm/civicrm-core/pull/21731))**
-- **[REF] SearchKit - Refactor search task code to share a trait ([21156](https://github.com/civicrm/civicrm-core/pull/21156))**
+ `hook_civicrm_pre` is now invoked on a line item entity after the tax amount
+ has been calculated for it.
-- **5.41 ([21164](https://github.com/civicrm/civicrm-core/pull/21164))**
+### CiviMail
-- **APIv4 - Add File entity ([21158](https://github.com/civicrm/civicrm-core/pull/21158))**
+- **CiviCRM Mailing, function unsub_from_mailing has spelling error,
+ "experiement" impacts A/B Mailing unsubscribes
+ ([21245](https://github.com/civicrm/civicrm-core/pull/21245))**
-- **[NFC] Update CRM_Core_RegionTest so it doesn't need the error-suppression operator ([21155](https://github.com/civicrm/civicrm-core/pull/21155))**
+- **In an email, a token from an extension in a subject will inhibits the same
+ token group in the email body
+ ([dev/core#2673](https://lab.civicrm.org/dev/core/-/issues/2673):
+ [21080](https://github.com/civicrm/civicrm-core/pull/21080))**
-- **5.41 ([21154](https://github.com/civicrm/civicrm-core/pull/21154))**
+- **Log details of mailing error and don't display details to end user
+ ([21173](https://github.com/civicrm/civicrm-core/pull/21173))**
-- **5.41 ([21148](https://github.com/civicrm/civicrm-core/pull/21148))**
+### CiviMember
-- **[NFC] Update testCaseActivityCopyTemplate to provide variable that would usually be present ([21146](https://github.com/civicrm/civicrm-core/pull/21146))**
+- **Fix Membership.create in BAO to respect passed in status_id
+ ([20976](https://github.com/civicrm/civicrm-core/pull/20976))**
-- **Use convenience function for one-off token evaluations to avoid too-long filenames and possible privacy issues ([21140](https://github.com/civicrm/civicrm-core/pull/21140))**
+- **Membership Dashboard - Fatal Error starting with 5.41.beta1
+ ([dev/core#2758](https://lab.civicrm.org/dev/core/-/issues/2758):
+ [21171](https://github.com/civicrm/civicrm-core/pull/21171) and
+ [21167](https://github.com/civicrm/civicrm-core/pull/21167))**
-- **[Ref] Move id fetching to the classes ([21075](https://github.com/civicrm/civicrm-core/pull/21075))**
+- **Update MembershipType.duration and MembershipStatus.name to be required
+ ([21119](https://github.com/civicrm/civicrm-core/pull/21119))**
-- **dev/search#63 Add recurring contributions to contribution reports ([20168](https://github.com/civicrm/civicrm-core/pull/20168))**
+- **Fix missing value of End Adjustment column from Membership status page
+ ([21664](https://github.com/civicrm/civicrm-core/pull/21664))**
-- **5.41 ([21138](https://github.com/civicrm/civicrm-core/pull/21138))**
+### Drupal Integration
-- **(REF) ReflectionUtils - Add findStandardProperties() and findMethodHelpers() ([21114](https://github.com/civicrm/civicrm-core/pull/21114))**
+- **Syntax errors when loading sample data
+ ([dev/drupal#161](https://lab.civicrm.org/dev/drupal/-/issues/161):
+ [648](https://github.com/civicrm/civicrm-drupal/pull/648))**
-- **5.41 ([21129](https://github.com/civicrm/civicrm-core/pull/21129))**
+ Removes drush sample data install option that doesn't work.
-- **dev/core#2691 - On logging detail civireport show words instead of numbers (part 2) ([20907](https://github.com/civicrm/civicrm-core/pull/20907))**
+- **Replace Drupal 9 user function, function getUsername is no more valid
+ ([328](https://github.com/civicrm/civicrm-packages/pull/328))**
-- **NFC - Fix docblock in CRM_Core_Transaction ([21125](https://github.com/civicrm/civicrm-core/pull/21125))**
+### Joomla Integration
-- **5.41 to master ([21127](https://github.com/civicrm/civicrm-core/pull/21127))**
+- **Fixes unusable modals in Joomla 4
+ ([21286](https://github.com/civicrm/civicrm-core/pull/21286))**
-- **[NFC] {Test} Minor cleanup ([21116](https://github.com/civicrm/civicrm-core/pull/21116))**
+- **Tidies Joomla 4 integration (menu, padding) after final release
+ ([21342](https://github.com/civicrm/civicrm-core/pull/21342))**
-- **dev/user-interface#38 Contact Edit: Only display signatures if contact has a CMS account ([21103](https://github.com/civicrm/civicrm-core/pull/21103))**
+## Miscellany
-- **Replace deprecated calls to `renderMessageTemplate()` ([21121](https://github.com/civicrm/civicrm-core/pull/21121))**
+- **MessageTemplate - Add renderTemplate(). Deprecate renderMessageTemplate().
+ ([21115](https://github.com/civicrm/civicrm-core/pull/21115))**
-- **MessageTemplate - Add renderTemplate(). Deprecate renderMessageTemplate(). ([21115](https://github.com/civicrm/civicrm-core/pull/21115))**
+- **Provided standard links in ext/oauth-client/info.xml, fixed typo
+ ([21252](https://github.com/civicrm/civicrm-core/pull/21252))**
-- **5.41 to master ([21117](https://github.com/civicrm/civicrm-core/pull/21117))**
+- **Use getter to get subscription id
+ ([21309](https://github.com/civicrm/civicrm-core/pull/21309))**
-- **5.41 ([21113](https://github.com/civicrm/civicrm-core/pull/21113))**
+- **Extract ACL contact cache clearing part out
+ ([21219](https://github.com/civicrm/civicrm-core/pull/21219))**
-- **5.41 ([21111](https://github.com/civicrm/civicrm-core/pull/21111))**
+- **Update quickform original
+ ([330](https://github.com/civicrm/civicrm-packages/pull/330))**
-- **dev/core#2747 Reconcile remaining fields between scheduled reminders and legacy tokens ([21046](https://github.com/civicrm/civicrm-core/pull/21046))**
+- **Afform - Rename blocks and joins for clarity
+ ([21218](https://github.com/civicrm/civicrm-core/pull/21218))**
-- **Replace extension key with label during install/upgrade/disable/uninstall ([21094](https://github.com/civicrm/civicrm-core/pull/21094))**
+- **Afform - Optimize Get by checking type
+ ([21316](https://github.com/civicrm/civicrm-core/pull/21316))**
-- **Respect http_timeout core setting for Guzzle HTTP requests ([21096](https://github.com/civicrm/civicrm-core/pull/21096))**
+- **[REF] Cleanup pdf classes to use a trait like we do for email classes
+ ([dev/core#2790](https://lab.civicrm.org/dev/core/-/issues/2790):
+ [21334](https://github.com/civicrm/civicrm-core/pull/21334),
+ [21305](https://github.com/civicrm/civicrm-core/pull/21305),
+ [21310](https://github.com/civicrm/civicrm-core/pull/21310),
+ [21276](https://github.com/civicrm/civicrm-core/pull/21276),
+ [21297](https://github.com/civicrm/civicrm-core/pull/21297),
+ [21331](https://github.com/civicrm/civicrm-core/pull/21331) and
+ [21290](https://github.com/civicrm/civicrm-core/pull/21290))**
-- **dev/core#2717 Use Same order ->payment flow for non recurring back of⦠([20936](https://github.com/civicrm/civicrm-core/pull/20936))**
+- **Upgrade angular-file-uploader to v2.6.1
+ ([21081](https://github.com/civicrm/civicrm-core/pull/21081))**
-- **Token Parser - Allow tokens with multiple dots (eg {contribution.contribution_recur_id.amount}) ([21076](https://github.com/civicrm/civicrm-core/pull/21076))**
+- **Upgrade Pear/DB package to be version 1.11.0
+ ([21087](https://github.com/civicrm/civicrm-core/pull/21087))**
-- **dev/core#2719 [REF] Remove a couple more (tested) references to legacy contribution_invoice_settings ([20991](https://github.com/civicrm/civicrm-core/pull/20991))**
+- **CRM_Core_Component - Remove unused code
+ ([21086](https://github.com/civicrm/civicrm-core/pull/21086))**
-- **(dev/core#2673) Email Tokens - Custom tokens in `subject` block similar tokens in `body` ([21080](https://github.com/civicrm/civicrm-core/pull/21080))**
+- **Move make-sure-single-set out of shared function
+ ([21062](https://github.com/civicrm/civicrm-core/pull/21062))**
-- **[REF] SearchKit - Use non-deprecated join syntax when loading standalone displays ([21095](https://github.com/civicrm/civicrm-core/pull/21095))**
+- **Remove unused, duplicate functions getEntitiesByTag
+ ([21209](https://github.com/civicrm/civicrm-core/pull/21209))**
-- **(NFC) MailingQueryEvent - Add more docblocks about query-writing and `tokenContext_*` ([21098](https://github.com/civicrm/civicrm-core/pull/21098))**
+- **Remove deprecated function
+ ([21179](https://github.com/civicrm/civicrm-core/pull/21179))**
-- **ActionSchedule - Pass real batches into TokenProcessor. Simplify CRM_Activity_Tokens. ([21088](https://github.com/civicrm/civicrm-core/pull/21088))**
+- **Remove extraneous buildQuickForm
+ ([21325](https://github.com/civicrm/civicrm-core/pull/21325))**
-- **Scheduled Reminders UI - Show more activity tokens in admin GUI ([21091](https://github.com/civicrm/civicrm-core/pull/21091))**
+- **Remove unused assignment
+ ([21061](https://github.com/civicrm/civicrm-core/pull/21061))**
-- **[REF] Afform - Code cleanup in LoadAdminData API action ([21089](https://github.com/civicrm/civicrm-core/pull/21089))**
+- **Remove no longer used variable in Email.tpl / smarty warning
+ ([21074](https://github.com/civicrm/civicrm-core/pull/21074))**
-- **Upgrade angular-file-uploader to v2.6.1 ([21081](https://github.com/civicrm/civicrm-core/pull/21081))**
+- **Remove deprecated isDevelopment() function
+ ([21269](https://github.com/civicrm/civicrm-core/pull/21269))**
-- **(NFC) Expand test coverage for scheduled-reminders with `{activity.*}` tokens ([21092](https://github.com/civicrm/civicrm-core/pull/21092))**
+- **[REF] Move acl delete logic to an event listener
+ ([dev/core#2757](https://lab.civicrm.org/dev/core/-/issues/2757):
+ [21201](https://github.com/civicrm/civicrm-core/pull/21201) and
+ [21213](https://github.com/civicrm/civicrm-core/pull/21213))**
-- **(NFC) TokenProcessorTest - Add scenario inspired by dev/core#2673 ([21090](https://github.com/civicrm/civicrm-core/pull/21090))**
+- **[REF] Remove references to contribution_invoice_settings (Work Towards
+ [dev/core#2719](https://lab.civicrm.org/dev/core/-/issues/2719):
+ [20991](https://github.com/civicrm/civicrm-core/pull/20991))**
-- **CRM_Core_Component - Remove unused code ([21086](https://github.com/civicrm/civicrm-core/pull/21086))**
+- **[REF] Afform - Code cleanup in LoadAdminData API action
+ ([21089](https://github.com/civicrm/civicrm-core/pull/21089))**
-- **Upgrade Pear/DB package to be version 1.11.0 ([21087](https://github.com/civicrm/civicrm-core/pull/21087))**
+- **[REF] SearchKit - Refactor search task code to share a trait
+ ([21156](https://github.com/civicrm/civicrm-core/pull/21156))**
-- **Fix caching on campaign pseudoconstant ([21083](https://github.com/civicrm/civicrm-core/pull/21083))**
+- **[REF] SearchKit - display code refactor + pager options
+ ([21049](https://github.com/civicrm/civicrm-core/pull/21049))**
-- **Scheduled Reminders - Pass locale through to TokenProcessor ([21085](https://github.com/civicrm/civicrm-core/pull/21085))**
+- **[REF] SearchKit - Use non-deprecated join syntax when loading standalone
+ displays ([21095](https://github.com/civicrm/civicrm-core/pull/21095))**
-- **[Ref] Simplify IF clause ([21078](https://github.com/civicrm/civicrm-core/pull/21078))**
+- **[REF] APIv4 Notes - Ensure child notes are deleted with parent, and hooks
+ are called ([21208](https://github.com/civicrm/civicrm-core/pull/21208))**
-- **APIv4 - Silently ignore errors in CoreUtil::getInfoItem() ([21084](https://github.com/civicrm/civicrm-core/pull/21084))**
+- **[REF] Remove unused/unneeded variables from Note View page
+ ([21226](https://github.com/civicrm/civicrm-core/pull/21226))**
-- **Fix the check to see if the financialAclExtension is installed ([21077](https://github.com/civicrm/civicrm-core/pull/21077))**
+- **[REF] CRM_Utils_Recent - Use hook listener to delete items
+ ([21204](https://github.com/civicrm/civicrm-core/pull/21204) and
+ [21492](https://github.com/civicrm/civicrm-core/pull/21492))**
-- **Remove no longer used variable in Email.tpl / smarty warning ([21074](https://github.com/civicrm/civicrm-core/pull/21074))**
+- **[REF] Deprecate unnecessary del() functions
+ ([21200](https://github.com/civicrm/civicrm-core/pull/21200))**
-- **[Ref] extract function to getEmailDefaults ([21067](https://github.com/civicrm/civicrm-core/pull/21067))**
+- **REF Switch to CRM_Core_Form::setTitle() instead of
+ CRM_Utils_System::setTitle() part 1
+ ([21193](https://github.com/civicrm/civicrm-core/pull/21193))**
-- **MessageTemplate::sendTemplate() - Accept `array $messageTemplate` and `array $tokenContext` ([21073](https://github.com/civicrm/civicrm-core/pull/21073))**
+- **[Ref] remove unused variable
+ ([21161](https://github.com/civicrm/civicrm-core/pull/21161))**
-- **APIv4 - Throw exception instead of munging illegal join aliases ([21072](https://github.com/civicrm/civicrm-core/pull/21072))**
+- **[Ref] Move id fetching to the classes
+ ([21075](https://github.com/civicrm/civicrm-core/pull/21075))**
-- **SearchKit - Merge admin results table with searchDisplay code ([21069](https://github.com/civicrm/civicrm-core/pull/21069))**
+- **(REF) ReflectionUtils - Add findStandardProperties() and findMethodHelpers()
+ ([21114](https://github.com/civicrm/civicrm-core/pull/21114))**
-- ** dev/core#2747 REF] Move all the generic functions to the parent ([21057](https://github.com/civicrm/civicrm-core/pull/21057))**
+- **[Ref] Simplify IF clause
+ ([21078](https://github.com/civicrm/civicrm-core/pull/21078))**
-- **[Ref] Clarify what parameters are passed in ([21063](https://github.com/civicrm/civicrm-core/pull/21063))**
+- **[Ref] extract function to getEmailDefaults
+ ([21067](https://github.com/civicrm/civicrm-core/pull/21067))**
-- **Smarty notice - Explicitly set hideRelativeLabel var on Find Cases form ([21070](https://github.com/civicrm/civicrm-core/pull/21070))**
+- **[Ref] Clarify what parameters are passed in
+ ([21063](https://github.com/civicrm/civicrm-core/pull/21063))**
-- **Move make-sure-single-set out of shared function ([21062](https://github.com/civicrm/civicrm-core/pull/21062))**
+- **[Ref] Move rule to email trait
+ ([21066](https://github.com/civicrm/civicrm-core/pull/21066))**
-- **[REF] SearchKit - display code refactor + pager options ([21049](https://github.com/civicrm/civicrm-core/pull/21049))**
+- **[Ref] cleanup alterActionSchedule
+ ([21047](https://github.com/civicrm/civicrm-core/pull/21047))**
-- **Fix Membership.create in BAO to respect passed in status_id ([20976](https://github.com/civicrm/civicrm-core/pull/20976))**
+- **[Ref] Copy emailcommon function back to email trait
+ ([21251](https://github.com/civicrm/civicrm-core/pull/21251))**
-- **dev/core#2730 - Replace fopen call in CRM_Utils_File::isIncludable with one that doesn't need error-supression to avoid problems in php8 ([21060](https://github.com/civicrm/civicrm-core/pull/21060))**
+- **[REF] Update a few references to invoicing
+ ([21101](https://github.com/civicrm/civicrm-core/pull/21101))**
-- **[Ref] Move rule to email trait ([21066](https://github.com/civicrm/civicrm-core/pull/21066))**
+- **[Ref] intial testing on case tokens, make knownTokens optional
+ ([21289](https://github.com/civicrm/civicrm-core/pull/21289))**
-- **Remove unused assignment ([21061](https://github.com/civicrm/civicrm-core/pull/21061))**
+- **[Ref] Deprecate Core_Error handling
+ ([21279](https://github.com/civicrm/civicrm-core/pull/21279))**
-- **5.41 ([21056](https://github.com/civicrm/civicrm-core/pull/21056))**
+- **[REF] Fix Page Hook test on php8 by putting in guard into customDataBâ¦
+ ([21344](https://github.com/civicrm/civicrm-core/pull/21344))**
-- **[Ref] cleanup alterActionSchedule ([21047](https://github.com/civicrm/civicrm-core/pull/21047))**
+- **[REF] Fix undefined smarty vars in Advanced Search
+ ([21321](https://github.com/civicrm/civicrm-core/pull/21321))**
-- **dev/drupal#161 - Remove drush sample data install option that doesn't work ([648](https://github.com/civicrm/civicrm-drupal/pull/648))**
+- **[REF] Improve Custom data insert performance when using the copyCustoâ¦
+ ([21313](https://github.com/civicrm/civicrm-core/pull/21313))**
-- **Update quickform original ([330](https://github.com/civicrm/civicrm-packages/pull/330))**
+- **[REF] Copy preProcessFromAddress back into the pdf function
+ ([21306](https://github.com/civicrm/civicrm-core/pull/21306))**
-- **Fixes dev/core#2769 remove quickform hack - we are no longer calling this rule ([329](https://github.com/civicrm/civicrm-packages/pull/329))**
+- **[REF] Remove duplicate IF
+ ([21298](https://github.com/civicrm/civicrm-core/pull/21298))**
-- **Replace Drupal 9 user function, function getUsername is no more valid ([328](https://github.com/civicrm/civicrm-packages/pull/328))**
+- **[REF] Minor extraction
+ ([21296](https://github.com/civicrm/civicrm-core/pull/21296))**
-## Miscellany
+- **[REF] Remove unreachable code
+ ([21294](https://github.com/civicrm/civicrm-core/pull/21294))**
+
+- **[Ref] Minor extraction
+ ([21293](https://github.com/civicrm/civicrm-core/pull/21293))**
+
+- **REF Don't check if id is set in ContributionView form - it's required
+ ([21274](https://github.com/civicrm/civicrm-core/pull/21274))**
+
+- **[REF] Remove meaningless if
+ ([21273](https://github.com/civicrm/civicrm-core/pull/21273))**
+
+- **[NFC] Fix APIv4 Conformance tests on php8
+ ([21302](https://github.com/civicrm/civicrm-core/pull/21302))**
+
+- **[NFC] - Replace deprecated function in AngularLoaderTest
+ ([21244](https://github.com/civicrm/civicrm-core/pull/21244))**
+
+- **[NFC] CRM_Utils_SystemTest - Call to Uri->withPath() using deprecated format
+ ([21215](https://github.com/civicrm/civicrm-core/pull/21215))**
+
+- **[NFC] CRM_Extension_Manager_ModuleUpgTest - use ?? instead of
+ error-suppression operator
+ ([21214](https://github.com/civicrm/civicrm-core/pull/21214))**
+
+- **[NFC] CRM_Extension_Manager_ModuleTest - use ?? instead of error-suppression
+ operator ([21206](https://github.com/civicrm/civicrm-core/pull/21206))**
+
+- **[NFC] Update CRM_Core_RegionTest so it doesn't need the error-suppression
+ operator ([21155](https://github.com/civicrm/civicrm-core/pull/21155))**
+
+- **[NFC] Update testCaseActivityCopyTemplate to provide variable that would
+ usually be present
+ ([21146](https://github.com/civicrm/civicrm-core/pull/21146))**
+
+- **NFC - Fix docblock in CRM_Core_Transaction
+ ([21125](https://github.com/civicrm/civicrm-core/pull/21125))**
+
+- **[NFC] {Test} Minor cleanup
+ ([21116](https://github.com/civicrm/civicrm-core/pull/21116))**
+
+- **[NFC] Fix UpdateSubscriptionTest on php8 by creating a Payment Processor
+ ([21324](https://github.com/civicrm/civicrm-core/pull/21324))**
+
+- **(NFC) Expand test coverage for scheduled-reminders with `{activity.*}`
+ tokens ([21092](https://github.com/civicrm/civicrm-core/pull/21092))**
+
+- **(NFC) TokenProcessorTest - Add scenario inspired by dev/core#2673
+ ([21090](https://github.com/civicrm/civicrm-core/pull/21090))**
+
+- **[NFC] Fix E-notice in Afform unit tests
+ ([21345](https://github.com/civicrm/civicrm-core/pull/21345))**
+
+- **[NFC] Cleanup boilerplate code in extension upgrader classes
+ ([21340](https://github.com/civicrm/civicrm-core/pull/21340))**
+
+- **[NFC/Unit test] Update flaky test
+ CRM_Utils_TokenConsistencyTest::testCaseTokenConsistency
+ ([21341](https://github.com/civicrm/civicrm-core/pull/21341))**
+
+- **(NFC) MailingQueryEvent - Add more docblocks about query-writing and
+ `tokenContext_*`
+ ([21098](https://github.com/civicrm/civicrm-core/pull/21098))**
+
+- **[NFC] Fix undefined array key when running CRM unit test suite in php8
+ ([21314](https://github.com/civicrm/civicrm-core/pull/21314))**
+
+- **Add test to UpdateSubscription form
+ ([21282](https://github.com/civicrm/civicrm-core/pull/21282))**
+
+- **Improve test for CRM_Utils_Recent
+ ([21222](https://github.com/civicrm/civicrm-core/pull/21222))**
## Credits
This release was developed by the following code authors:
-AGH Strategies - Alice Frumin, Andie Hunt; Agileware - Justin Freeman; Australian Greens - John Twyman; Benjamin W; CiviCRM - Coleman Watts, Tim Otten; CompuCorp - Debarshi Bhaumik; Coop SymbioTIC - Mathieu Lutfy; Dave D; Fuzion - Jitendra Purohit; Greenpeace Central and Eastern Europe - Patrick Figel; JMA Consulting - Joe Murray, Monish Deb, Seamus Lee; Joinery - Allen Shaw; lisandro-compucorp; Megaphone Technology Consulting - Jon Goldberg; MJW Consulting - Matthew Wire; Nicol Wistreich; Skvare - Sunil Pawar; Tadpole Collective - Kevin Cristiano; Third Sector Design - Kurund Jalmi, Michael McAndrew; Wikimedia Foundation - Eileen McNaughton; Wildsight - Lars Sanders-Green
+AGH Strategies - Alice Frumin, Andie Hunt; Agileware - Justin Freeman;
+Australian Greens - John Twyman; Benjamin W; CiviCRM - Coleman Watts, Tim Otten;
+CompuCorp - Debarshi Bhaumik, Lisandro; Coop SymbioTIC - Mathieu Lutfy; Dave D;
+Fuzion - Jitendra Purohit; Greenpeace Central and Eastern Europe - Patrick
+Figel; JMA Consulting - Joe Murray, Monish Deb, Seamus Lee; Joinery - Allen
+Shaw; Megaphone Technology Consulting - Jon Goldberg; MJW Consulting - Matthew
+Wire; Nicol Wistreich; Skvare - Sunil Pawar; Tadpole Collective - Kevin
+Cristiano; Third Sector Design - Kurund Jalmi, Michael McAndrew; Wikimedia
+Foundation - Eileen McNaughton; Wildsight - Lars Sanders-Green
Most authors also reviewed code for this release; in addition, the following
reviewers contributed their comments:
-Agileware - Justin Freeman; Black Brick Software - David Hayes; civibot[bot]; CiviCoop - Jaap Jansma; CiviCRM - Coleman Watts, Tim Otten; CompuCorp - Debarshi Bhaumik; Coop SymbioTIC - Mathieu Lutfy; Dave D; JMA Consulting - Monish Deb, Seamus Lee; Joinery - Allen Shaw; Lighthouse Consulting and Design - Brian Shaughnessy; lisandro-compucorp; Megaphone Technology Consulting - Jon Goldberg; MJW Consulting - Matthew Wire; Nicol Wistreich; redcuillin; Tadpole Collective - Kevin Cristiano; Third Sector Design - Kurund Jalmi; Wikimedia Foundation - Eileen McNaughton; Wildsight - Lars Sanders-Green
+Black Brick Software - David Hayes; CiviCoop - Jaap Jansma; Joinery - Allen
+Shaw; Lighthouse Consulting and Design - Brian Shaughnessy; redcuillin
## Feedback
These release notes are edited by Alice Frumin and Andie Hunt. If you'd like
to provide feedback on them, please log in to https://chat.civicrm.org/civicrm
and contact `@agh1`.
-