# CiviCRM 5.24.0 Released April 1, 2020 - **[Synopsis](#synopsis)** - **[Features](#features)** - **[Bugs resolved](#bugs)** - **[Miscellany](#misc)** - **[Credits](#credits)** - **[Feedback](#feedback)** ## Synopsis | *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? | | ## Features ### Core CiviCRM - **CRM-607 Missing Summary ([16627](https://github.com/civicrm/civicrm-core/pull/16627))** - **crm- Missing Summary ([16618](https://github.com/civicrm/civicrm-core/pull/16618))** - **CRM-984 Missing Summary ([549](https://github.com/civicrm/civicrm-drupal/pull/549))** ## Bugs resolved ### Core CiviCRM - **dev/core#1636 - In system status check avoid E_NOTICEs for smart groups that don't have form_values[0] ([16707](https://github.com/civicrm/civicrm-core/pull/16707))** - **[REF] Change function signature to support moving this off the form layer ([16677](https://github.com/civicrm/civicrm-core/pull/16677))** - **APIv4-based smart groups ([16666](https://github.com/civicrm/civicrm-core/pull/16666))** - **dev/core#1605 State/province not copied on shared address ([16649](https://github.com/civicrm/civicrm-core/pull/16649))** - **5.23 ([16684](https://github.com/civicrm/civicrm-core/pull/16684))** - **Fix parameter format for upgrade call to install/enable sequentialcreditnotes ([16686](https://github.com/civicrm/civicrm-core/pull/16686))** - **[NFC] Add missing letter "h" in upgrade script for task description ([16687](https://github.com/civicrm/civicrm-core/pull/16687))** - **Fix SettingTrait YesNo translation ([16685](https://github.com/civicrm/civicrm-core/pull/16685))** - **Style & layout clean up ([16680](https://github.com/civicrm/civicrm-core/pull/16680))** - **Add setEntityId() to entityForm ([16020](https://github.com/civicrm/civicrm-core/pull/16020))** - **Remove deprecated function CRM_Contact_BAO_GroupContactCache::remove ([16682](https://github.com/civicrm/civicrm-core/pull/16682))** - **Fix display of administrator permissions in WordPress Multisite ([16675](https://github.com/civicrm/civicrm-core/pull/16675))** - **Fix synchronisation of Users to Contacts in WordPress Multisite ([16676](https://github.com/civicrm/civicrm-core/pull/16676))** - **added sudo constant for sms api type ([16679](https://github.com/civicrm/civicrm-core/pull/16679))** - **Activity Details report: fix filtering by is null/is not null ([16672](https://github.com/civicrm/civicrm-core/pull/16672))** - **[REF] Only call getACLs when contact_id is present, remove handling ([16667](https://github.com/civicrm/civicrm-core/pull/16667))** - **Remove helper function now that contribution settings is not weirdly stored ([16566](https://github.com/civicrm/civicrm-core/pull/16566))** - **core#1623: My Case dashlet doesn't sort by name but contact_id instead ([16647](https://github.com/civicrm/civicrm-core/pull/16647))** - **dev/core#1366 - CRM_Case_XMLProcessor_Report::run() is never called anymore ([16669](https://github.com/civicrm/civicrm-core/pull/16669))** - **Increase php min recommended version ([16668](https://github.com/civicrm/civicrm-core/pull/16668))** - **Add pseudoconstant for priceset ([16665](https://github.com/civicrm/civicrm-core/pull/16665))** - **Extensions - Change new tag "hidden" to "mgmt:hidden" ([16664](https://github.com/civicrm/civicrm-core/pull/16664))** - **TokenProcessor - fix greetings tokens ([16624](https://github.com/civicrm/civicrm-core/pull/16624))** - **[REF] Deprecate _html2pdf_tcpdf function in favour of _html2pdf_dompdf ([16662](https://github.com/civicrm/civicrm-core/pull/16662))** - **[REF] Removed unused function ([16663](https://github.com/civicrm/civicrm-core/pull/16663))** - **[Feature] Add in new hook alterUFFields to allow extensions to modify… ([16655](https://github.com/civicrm/civicrm-core/pull/16655))** - **dev/core#1366 - Case Audit.tpl file no longer used ([16660](https://github.com/civicrm/civicrm-core/pull/16660))** - **dev/financial#109 Fix country/province assignation in the contribution invoice ([15964](https://github.com/civicrm/civicrm-core/pull/15964))** - **Add pseudoconstant for priceset ([16648](https://github.com/civicrm/civicrm-core/pull/16648))** - **Fix unreleaesd typo error ([16661](https://github.com/civicrm/civicrm-core/pull/16661))** - **Fix typo (unrelease regression) ([16658](https://github.com/civicrm/civicrm-core/pull/16658))** - **Fix mistake in comment ([16657](https://github.com/civicrm/civicrm-core/pull/16657))** - **Update contributor-key.yml ([16652](https://github.com/civicrm/civicrm-core/pull/16652))** - **[REF] Add in pre and post hooks to UFField Entity ([16653](https://github.com/civicrm/civicrm-core/pull/16653))** - **[NFC] Use insert ignore for inserts into civicrm_extension to stop warnings on duplicate entry for sequential credit notes extension ([16644](https://github.com/civicrm/civicrm-core/pull/16644))** - **News dashboard - Code cleanup to update js & css ([16632](https://github.com/civicrm/civicrm-core/pull/16632))** - **APIv4 - Correctly return null values from DAO save actions ([16645](https://github.com/civicrm/civicrm-core/pull/16645))** - **[REF] Extract self-service eligibility code into its own function ([16615](https://github.com/civicrm/civicrm-core/pull/16615))** - **Contact Type Values with Cap in order to be well translated with ts() ([16638](https://github.com/civicrm/civicrm-core/pull/16638))** - **dev/core#1619 - Fatal error when grouping Activity Summary report by activity date ([16643](https://github.com/civicrm/civicrm-core/pull/16643))** - **[REF] simple function extraction ([16642](https://github.com/civicrm/civicrm-core/pull/16642))** - **[REF] Refactor adding payment processor radio section onto register a… ([16595](https://github.com/civicrm/civicrm-core/pull/16595))** - **Remove unused columns from civicrm_saved_search ([16637](https://github.com/civicrm/civicrm-core/pull/16637))** - **[NFC] dev/core#1621 Extend unit tests to ensure that entity financial account is co… ([16639](https://github.com/civicrm/civicrm-core/pull/16639))** - **core#1158: Unit Test to ensure primary addresses are printed on mailing label if searchPrimaryDetailsOnly is disabled ([16640](https://github.com/civicrm/civicrm-core/pull/16640))** - **Api4 - Display sql errors in explorer ([16641](https://github.com/civicrm/civicrm-core/pull/16641))** - **dev/core#1622 Fix unsubscribe when loading the unsubscribe form on a … ([16634](https://github.com/civicrm/civicrm-core/pull/16634))** - **civicrm.settings.php.template - Simplify examples of `$civicrm_setting` ([16636](https://github.com/civicrm/civicrm-core/pull/16636))** - **Menubar - Add "find menu item" search feature ([16597](https://github.com/civicrm/civicrm-core/pull/16597))** - **Removed Invalid Paramter from function doc ([16631](https://github.com/civicrm/civicrm-core/pull/16631))** - **Add ts() for a sentence 'Add to case as role' ([16630](https://github.com/civicrm/civicrm-core/pull/16630))** - **CommunicationPreferences 'loclize' -> 'localize' ([16633](https://github.com/civicrm/civicrm-core/pull/16633))** - **dev/drupal#4 - Add Civi\Setup::getPendingAction() helper ([16628](https://github.com/civicrm/civicrm-core/pull/16628))** - **dev/core#1596 fix (unreleased) regression on contribution summary ([16560](https://github.com/civicrm/civicrm-core/pull/16560))** - **dev/core#1584 Add function to specify whether payment processor requires email address ([16503](https://github.com/civicrm/civicrm-core/pull/16503))** - **Convert civicrm_note.modified_date to timestamp ([16338](https://github.com/civicrm/civicrm-core/pull/16338))** - **Enable the "sequentialcreditnotes" extension on new installations ([16598](https://github.com/civicrm/civicrm-core/pull/16598))** - **dev/core#1386 Add in unit test for #15834 ([16622](https://github.com/civicrm/civicrm-core/pull/16622))** - **dev/translation#37 - Remove hardcoded translations from 13 years ago that no longer do anything ([16619](https://github.com/civicrm/civicrm-core/pull/16619))** - **Move sequentialcreditnotes under `ext/` folder ([16616](https://github.com/civicrm/civicrm-core/pull/16616))** - **[NFC] Convert Custom Field BAO file to use short array syntax ([16613](https://github.com/civicrm/civicrm-core/pull/16613))** - **dev/core#1386 Allow advanced search for contributions without a soft credit related ([15834](https://github.com/civicrm/civicrm-core/pull/15834))** - **5.23 ([16608](https://github.com/civicrm/civicrm-core/pull/16608))** - **[REF] Extract function to getTransactionInfo ([16545](https://github.com/civicrm/civicrm-core/pull/16545))** - **Fix two more php-finding regexes ([16606](https://github.com/civicrm/civicrm-core/pull/16606))** - **[REF] Update civicrm_generated following merge of #16362 ([16605](https://github.com/civicrm/civicrm-core/pull/16605))** - **5.23 ([16604](https://github.com/civicrm/civicrm-core/pull/16604))** - **Add description to params for api3 Payment.get ([16602](https://github.com/civicrm/civicrm-core/pull/16602))** - **Remove hardcoded settings from form and use SettingForm.tpl for Case settings ([16600](https://github.com/civicrm/civicrm-core/pull/16600))** - **Do not enable core payment processor types that we believe likely don't work on new installs ([16362](https://github.com/civicrm/civicrm-core/pull/16362))** - **Move determination of year & month to formatCreditCardDetails ([16562](https://github.com/civicrm/civicrm-core/pull/16562))** - **5.23 ([16596](https://github.com/civicrm/civicrm-core/pull/16596))** - **Pass template_type through to alterMailing hook ([16529](https://github.com/civicrm/civicrm-core/pull/16529))** - **[NFC] dev/core#1466 Update Documentation URLS to be the correct links… ([16085](https://github.com/civicrm/civicrm-core/pull/16085))** - **dev/financial#105 Add CSS class onto the radio button payment processor options ([15940](https://github.com/civicrm/civicrm-core/pull/15940))** - **Secondarily order campaign dashboard by id ([15316](https://github.com/civicrm/civicrm-core/pull/15316))** - **Related / Inherited Memberships: Custom fields not filled with data ([15884](https://github.com/civicrm/civicrm-core/pull/15884))** - **dev/core#1547 Add DT_RowClass CSS classes to nested group markup ([16359](https://github.com/civicrm/civicrm-core/pull/16359))** - **dev/core#1436 Do not CC or BCC Contribution invoice ([16005](https://github.com/civicrm/civicrm-core/pull/16005))** - **5.23 ([16580](https://github.com/civicrm/civicrm-core/pull/16580))** - **Cleanup copyValues DAO function ([16589](https://github.com/civicrm/civicrm-core/pull/16589))** - **Add deprecation notice ([16585](https://github.com/civicrm/civicrm-core/pull/16585))** - **[NFC] Test cleanup. ([16581](https://github.com/civicrm/civicrm-core/pull/16581))** - **Make savedSearch bao sane ([16575](https://github.com/civicrm/civicrm-core/pull/16575))** - **(NFC) Remove `$Id$` from header ([16582](https://github.com/civicrm/civicrm-core/pull/16582))** - **dev/financial#84 Move sequential credit notes from 'deeply embeded functions to separate structure ([16531](https://github.com/civicrm/civicrm-core/pull/16531))** - **Remove old defines for flexmailer that haven't been required since CiviCRM 5.x ([16528](https://github.com/civicrm/civicrm-core/pull/16528))** - **[NFC] Minor code cleanup ([16563](https://github.com/civicrm/civicrm-core/pull/16563))** - **5.23 to master ([16577](https://github.com/civicrm/civicrm-core/pull/16577))** - **dev/financial#102 Extend test to check status ([16564](https://github.com/civicrm/civicrm-core/pull/16564))** - **(NFC) Fix typo - no hyphen in 'override' ([16571](https://github.com/civicrm/civicrm-core/pull/16571))** - **dev/core#1450 Try reducing the size of the temporary table so it only… ([16095](https://github.com/civicrm/civicrm-core/pull/16095))** - **5.23 ([16574](https://github.com/civicrm/civicrm-core/pull/16574))** - **5.23 ([16572](https://github.com/civicrm/civicrm-core/pull/16572))** - **Count refunds when calculating amount due for an invoice ([16506](https://github.com/civicrm/civicrm-core/pull/16506))** - **dev/core#1438 Enable matching on contact phone when importing contributions ([16009](https://github.com/civicrm/civicrm-core/pull/16009))** - **dev/core#1451 Incorrect dropdown action choices on case type listing screen ([16035](https://github.com/civicrm/civicrm-core/pull/16035))** - **dev/financial#118 Move source & receive date to the top on contribution view page ([16565](https://github.com/civicrm/civicrm-core/pull/16565))** - **Resolve notices if first donation amount and date columns were disabled ([16491](https://github.com/civicrm/civicrm-core/pull/16491))** - **core#1568: Show recipientListing to non-admins ([16455](https://github.com/civicrm/civicrm-core/pull/16455))** - **dev/core#1158 mailing labels: explicitly set primary flag ([14928](https://github.com/civicrm/civicrm-core/pull/14928))** - **dev/financial#104 Use rounding and integers to compare monetary values… ([15856](https://github.com/civicrm/civicrm-core/pull/15856))** - **[NFC] Preliminary cleanup ([16557](https://github.com/civicrm/civicrm-core/pull/16557))** - **Upgrade Net_SMTP Package and remove now unneded patches and mov… ([16498](https://github.com/civicrm/civicrm-core/pull/16498))** - **[REF] Fix static call to non-static function. ([16552](https://github.com/civicrm/civicrm-core/pull/16552))** - **info.xml - Allow extensions to define a list of tags ([16551](https://github.com/civicrm/civicrm-core/pull/16551))** - **dev/core#1593 and dev/core#1536 - Remove unused code causing E_WARNING ([16554](https://github.com/civicrm/civicrm-core/pull/16554))** - **Allow any casting done in Type::validate to bubble up to Request::retrieveValue ([16525](https://github.com/civicrm/civicrm-core/pull/16525))** - **REF Refactor ActivityTokens to use a trait that can be shared with other entities ([16468](https://github.com/civicrm/civicrm-core/pull/16468))** - **Fix a PHP notice for users with limited permissions when loading cont… ([16515](https://github.com/civicrm/civicrm-core/pull/16515))** - **Do not fatally fail on angular pages if an extension is missing ([16533](https://github.com/civicrm/civicrm-core/pull/16533))** - **5.23 ([16548](https://github.com/civicrm/civicrm-core/pull/16548))** - **dev/core#1594 [TEST] Fix running of unit tests within an extension ([16544](https://github.com/civicrm/civicrm-core/pull/16544))** - **dev/core#1589 avoid error when merging record with null create date ([16543](https://github.com/civicrm/civicrm-core/pull/16543))** - **dev/core#1366 Bypass nonfunctioning case audit interactive screen and go straight to report ([15998](https://github.com/civicrm/civicrm-core/pull/15998))** - **Remove reference to mysql 5.0 & 5.1 ([16539](https://github.com/civicrm/civicrm-core/pull/16539))** - **[REF] Remove never used property ([16540](https://github.com/civicrm/civicrm-core/pull/16540))** - **Change "Added By" to "Added by" ([16527](https://github.com/civicrm/civicrm-core/pull/16527))** - **Check email when creating a user in drupal 8 ([15390](https://github.com/civicrm/civicrm-core/pull/15390))** - **APIv4 - merge ActionUtil with Request::create ([16516](https://github.com/civicrm/civicrm-core/pull/16516))** - **add column for report ([16523](https://github.com/civicrm/civicrm-core/pull/16523))** - **5.23 ([16537](https://github.com/civicrm/civicrm-core/pull/16537))** - **Speed boost for civicrm/ajax/checkemail ([15824](https://github.com/civicrm/civicrm-core/pull/15824))** - **fix contribution summary report's statistics when grouping and having ([16467](https://github.com/civicrm/civicrm-core/pull/16467))** - **Settings Fix setting readonly attribute ([16451](https://github.com/civicrm/civicrm-core/pull/16451))** - **Fix issues with retrieving supportsTestMode/supportsLiveMode for payment processors ([15330](https://github.com/civicrm/civicrm-core/pull/15330))** - **Fix calls to Request::retrieve ([16526](https://github.com/civicrm/civicrm-core/pull/16526))** - **5.23 ([16530](https://github.com/civicrm/civicrm-core/pull/16530))** - **[TEST] dev/core#1572 Unit test environment not working on windows after recent CodeGen updates ([16477](https://github.com/civicrm/civicrm-core/pull/16477))** - **dev/core#1562 - composer.json - Fix E2E tests run on D8 build (via "patches") #16427 ([16522](https://github.com/civicrm/civicrm-core/pull/16522))** - **Relationship report - add sort order for end date ([16512](https://github.com/civicrm/civicrm-core/pull/16512))** - **5.23 ([16519](https://github.com/civicrm/civicrm-core/pull/16519))** - **5.23.0 release notes: initial run ([16517](https://github.com/civicrm/civicrm-core/pull/16517))** - **Move settings definition on contribution settings form to metadata. ([16513](https://github.com/civicrm/civicrm-core/pull/16513))** - **API Kernel - cleanup deprecated fn & unused param ([16511](https://github.com/civicrm/civicrm-core/pull/16511))** - **dev/mem#17 - Deleting memberships does not delete its related line item ([15859](https://github.com/civicrm/civicrm-core/pull/15859))** - **crmSelect2 - fix whitespace in tooltip ([16510](https://github.com/civicrm/civicrm-core/pull/16510))** - **Common.js - remove duplicate function ([16508](https://github.com/civicrm/civicrm-core/pull/16508))** - **dev/core#1587 Select2 - Use description as title for each option ([16507](https://github.com/civicrm/civicrm-core/pull/16507))** - **dev/financial#117 - Add link metadata for payment edit link ([16504](https://github.com/civicrm/civicrm-core/pull/16504))** - **Added conditional check so that it can be altered by hook ([16499](https://github.com/civicrm/civicrm-core/pull/16499))** - **Add deprecation notices on PartialAmount params ([16505](https://github.com/civicrm/civicrm-core/pull/16505))** - **(REF) Move CIVICRM_MAIL_LOG logic from patch-files to wrapper-class ([16497](https://github.com/civicrm/civicrm-core/pull/16497))** - **Add CiviCase option for showing case activities in normal views ([16360](https://github.com/civicrm/civicrm-core/pull/16360))** - **dev/cloud-native#21 Don't cache the full path of extensions so they don't break with dynamic paths ([15410](https://github.com/civicrm/civicrm-core/pull/15410))** - **remove unnecessary file ([16502](https://github.com/civicrm/civicrm-core/pull/16502))** - **dev/core#1019 Calculate.tpl: fix the Total Amount currency formatting. ([16487](https://github.com/civicrm/civicrm-core/pull/16487))** - **Fix backoffice participant partial payments to be stdised & not miscalculate net_amount ([16442](https://github.com/civicrm/civicrm-core/pull/16442))** - **Remove fatal from form ([16500](https://github.com/civicrm/civicrm-core/pull/16500))** - **dev/core#1577 : Custom Group Types not filterable ([16475](https://github.com/civicrm/civicrm-core/pull/16475))** - **Throwing API_Exception is file fails to copy when creating attachment… ([16465](https://github.com/civicrm/civicrm-core/pull/16465))** - **Enable jQuery validate on register/contribution forms ([16494](https://github.com/civicrm/civicrm-core/pull/16494))** - **Remove unused code ([16493](https://github.com/civicrm/civicrm-core/pull/16493))** - **fix headers ([16492](https://github.com/civicrm/civicrm-core/pull/16492))** - **[REF] Remove patch from dompdf cleanup script that is no longer needed ([16490](https://github.com/civicrm/civicrm-core/pull/16490))** - **5.23 ([16489](https://github.com/civicrm/civicrm-core/pull/16489))** - **Improve activity query performance in Constituent Detail Report ([13078](https://github.com/civicrm/civicrm-core/pull/13078))** - **Make php 7.3 the recommended php version ([16459](https://github.com/civicrm/civicrm-core/pull/16459))** - **Fix year typo. ([16486](https://github.com/civicrm/civicrm-core/pull/16486))** - **5.23 ([183](https://github.com/civicrm/civicrm-wordpress/pull/183))** - **[REF] Remove FPDI library from packages as it is deployed by composer ([287](https://github.com/civicrm/civicrm-packages/pull/287))** - **[REF] Use relative path for finding the advmultiseletct javascript ([286](https://github.com/civicrm/civicrm-packages/pull/286))** ## Miscellany ## Credits This release was developed by the following code authors: a-n The Artists Information Company - William Mortada; acrollet; AGH Strategies - Andrew Hunt; Agileware - Agileware Team, Francis Whittle; albionbrown; Alexy Mikhailichenko; breheret; Calibrate - Wouter Hechtermans; Chris Burgess; Christian Wach; Circle Interactive - Pradeep Nayak; CiviCoop - Klaas Eikelboom; CiviCRM - Coleman Watts, Tim Otten; CiviDesk - Yashodha Chaku; Coop SymbioTIC - Mathieu Lutfy; Dave D; Electronic Frontier Foundation - Mark Burdett; Francesc Bassas i Bullich; Freeform Solutions - Herb van den Dool; Fuzion - Jitendra Purohit; Greenpeace Central and Eastern Europe - Patrick Figel; iXiam - Luciano Spiegel; Jade Gaunt; Jens Schuppe; JMA Consulting - Monish Deb, Seamus Lee; kartik1000; Lighthouse Design and Consulting - Brian Shaughnessy; Makoa - Usha F. Matisson; Megaphone Technology Consulting - Jon Goldberg; MJW Consulting - Matthew Wire; Progressive Technology Project - Jamie McClelland; Richard van Oosterhout; Squiffle Consulting - Aidan Saunders; Tadpole Collective - Kevin Cristiano; Wikimedia Foundation - Eileen McNaughton, Elliott Eggleston, Maggie Epps Most authors also reviewed code for this release; in addition, the following reviewers contributed their comments: a-n The Artists Information Company - William Mortada; acrollet; AGH Strategies - Alice Frumin, Andrew Hunt; Agileware - Francis Whittle, Justin Freeman; albionbrown; Andrew Cormick-Dockery; Artful Robot - Rich Lott; BettyDolfing; British Humanist Association - Andrew West; Calibrate - Wouter Hechtermans; Circle Interactive - Pradeep Nayak; civibot[bot]; CiviCoop - Jaap Jansma; civicrm-builder; CiviCRM - Coleman Watts, Tim Otten; CiviDesk - Sunil Pawar, Yashodha Chaku; Coop SymbioTIC - Mathieu Lutfy; Dave D; Electronic Frontier Foundation - Mark Burdett; Francesc Bassas i Bullich; Freeform Solutions - Herb van den Dool; Fuzion - Jitendra Purohit; irritatie; iXiam - Luciano Spiegel; JMA Consulting - Monish Deb, Seamus Lee; Joinery - Allen Shaw; Lighthouse Design and Consulting - Brian Shaughnessy; Makoa - Usha F. Matisson; Megaphone Technology Consulting - Jon Goldberg; MJCO - Mikey O'Toole; MJW Consulting - Matthew Wire; Progressive Technology Project - Jamie McClelland; Richard van Oosterhout; simonjohnparker; Squiffle Consulting - Aidan Saunders; Tadpole Collective - Kevin Cristiano; Third Sector Design - Michael McAndrew; Wikimedia Foundation - Eileen McNaughton, Maggie Epps ## Feedback These release notes are edited by Alice Frumin and Andrew Hunt. If you'd like to provide feedback on them, please log in to https://chat.civicrm.org/civicrm and contact `@agh1`.