# CiviCRM 5.29.0 Released September 2, 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- Missing Summary ([17809](https://github.com/civicrm/civicrm-core/pull/17809))** - **CRM- Missing Summary ([17749](https://github.com/civicrm/civicrm-core/pull/17749))** ## Bugs resolved ### Core CiviCRM - **dev/core#1983 Fix to tax calculation on multi-line-item ([18290](https://github.com/civicrm/civicrm-core/pull/18290))** - **dev/core#1982 - 5.29 version of PR 18282 ([18301](https://github.com/civicrm/civicrm-core/pull/18301))** - **dev/core#1972 Fix tax_amount calclation on renewal form ([18271](https://github.com/civicrm/civicrm-core/pull/18271))** - **Update contributor key for Andrew ([18230](https://github.com/civicrm/civicrm-core/pull/18230))** - **5.28.2 & 5.29.3 Release Notes ([18228](https://github.com/civicrm/civicrm-core/pull/18228))** - **dev/core#1937 - Upgrade message about needing composer patching turned on and updating mysql in DSN strings ([18174](https://github.com/civicrm/civicrm-core/pull/18174))** - **Revert "Swap out button/submit inputs for button elements" ([18185](https://github.com/civicrm/civicrm-core/pull/18185))** - **Installation doclinks not getting url-rewritten ([18175](https://github.com/civicrm/civicrm-core/pull/18175))** - **Fix 5.29 (unreleased) regression using temp tables ([18133](https://github.com/civicrm/civicrm-core/pull/18133))** - **Swap out button/submit inputs for button elements ([18091](https://github.com/civicrm/civicrm-core/pull/18091))** - **dev/event#40 - EventCart - Check legacy setting until extension is public ([18101](https://github.com/civicrm/civicrm-core/pull/18101))** - **dev/wordpress#66 Re-instate newer variables but with more support for… ([18068](https://github.com/civicrm/civicrm-core/pull/18068))** - **dev/core#1895 fix first/last name adv search ([17950](https://github.com/civicrm/civicrm-core/pull/17950))** - **dev/core#1905 force backend links for new "configure" buttons ([18088](https://github.com/civicrm/civicrm-core/pull/18088))** - **dev/core#1932 - Make status-checks more polite during upgrade ([18085](https://github.com/civicrm/civicrm-core/pull/18085))** - **dev/core#1928 Fix HTML5 error due to required attribute being set swi… ([18080](https://github.com/civicrm/civicrm-core/pull/18080))** - **5.28 ([18084](https://github.com/civicrm/civicrm-core/pull/18084))** - **5.28 ([18082](https://github.com/civicrm/civicrm-core/pull/18082))** - **dev/financial#135 Remove stub function from payflowPro ([18078](https://github.com/civicrm/civicrm-core/pull/18078))** - **5.28 ([18077](https://github.com/civicrm/civicrm-core/pull/18077))** - **Fix button name on updated form ([18000](https://github.com/civicrm/civicrm-core/pull/18000))** - **[NFC] Fix provider unit test on PHP7.4 ([18073](https://github.com/civicrm/civicrm-core/pull/18073))** - **[REF] Move handling of form elements back to the Form ([17981](https://github.com/civicrm/civicrm-core/pull/17981))** - **Do not pass-by-reference to recur function ([18071](https://github.com/civicrm/civicrm-core/pull/18071))** - **dev/financial#135 Remove unreachable doDirectPayment from manual processor ([18072](https://github.com/civicrm/civicrm-core/pull/18072))** - **Refactor "applyLocale" and remove references to "language" column in UFMatch table ([18049](https://github.com/civicrm/civicrm-core/pull/18049))** - **Show cron warning on Scheduled Jobs admin page ([18065](https://github.com/civicrm/civicrm-core/pull/18065))** - **5.28 ([18069](https://github.com/civicrm/civicrm-core/pull/18069))** - **Use correct pdf package to generate pdf file on invoice download/email activity ([18056](https://github.com/civicrm/civicrm-core/pull/18056))** - **Fix buggy placement of icons on buttons ([18005](https://github.com/civicrm/civicrm-core/pull/18005))** - **[REF] Even less variable variables ([18058](https://github.com/civicrm/civicrm-core/pull/18058))** - **dev/core#1905 rework #17942 with simpler ts strings ([18064](https://github.com/civicrm/civicrm-core/pull/18064))** - **Extract code to set isEmailReceipt in Contribution.completeOrder ([18039](https://github.com/civicrm/civicrm-core/pull/18039))** - **[REF] remove first attempt to set currency in repeattransaction flow ([18055](https://github.com/civicrm/civicrm-core/pull/18055))** - **5.28 ([18063](https://github.com/civicrm/civicrm-core/pull/18063))** - **dev/core#1905 Add configure icons on public pages ([17942](https://github.com/civicrm/civicrm-core/pull/17942))** - **CRM_Utils_Hook: deprecation warning and short array syntax ([17995](https://github.com/civicrm/civicrm-core/pull/17995))** - **event#35: move statusBounce out of BAO layer; don't allow self-service when dis… ([18040](https://github.com/civicrm/civicrm-core/pull/18040))** - **Why not make the buttons flat? ([18054](https://github.com/civicrm/civicrm-core/pull/18054))** - **[REF] Simplify location metadata handling in Export class ([17951](https://github.com/civicrm/civicrm-core/pull/17951))** - **5.28 ([18059](https://github.com/civicrm/civicrm-core/pull/18059))** - **[REF] Do not pass by reference to the recur function ([18057](https://github.com/civicrm/civicrm-core/pull/18057))** - **[REF] Simplify getMembershipStatusByDate more ([18051](https://github.com/civicrm/civicrm-core/pull/18051))** - **Fix obscure dedupe scenario where 'bad' location data can overwrite good data ([17993](https://github.com/civicrm/civicrm-core/pull/17993))** - **dev/drupal#127 - require email for the Useradd task and errors not showing ([17915](https://github.com/civicrm/civicrm-core/pull/17915))** - **dev/core#1921 [Ref] remove isoToMysql ([18025](https://github.com/civicrm/civicrm-core/pull/18025))** - **dev/core#1665 Remove the having clause as well as having needs a group by ([18052](https://github.com/civicrm/civicrm-core/pull/18052))** - **Remove ORDER BY and GROUP BY from alphabetQuery to improve performance ([16877](https://github.com/civicrm/civicrm-core/pull/16877))** - **Fix JQuery Validation for radios ([17937](https://github.com/civicrm/civicrm-core/pull/17937))** - **[REF] Simplify membership status date handling ([18030](https://github.com/civicrm/civicrm-core/pull/18030))** - **Fix PaypalIPN single function to not receive-by-reference ([18044](https://github.com/civicrm/civicrm-core/pull/18044))** - **Remove requirement to pass 'contribution_status_id' => Pending from order.create ([18018](https://github.com/civicrm/civicrm-core/pull/18018))** - **[REF] Clean up handling of financial_type_id override ([18032](https://github.com/civicrm/civicrm-core/pull/18032))** - **Use saved contribution's line items rather than the primaryContributionID ([18033](https://github.com/civicrm/civicrm-core/pull/18033))** - **[REF] Remove transaction from completeOrder signature ([18046](https://github.com/civicrm/civicrm-core/pull/18046))** - **Wrap multi record custom field inside a div ([17966](https://github.com/civicrm/civicrm-core/pull/17966))** - **[Test fix] We might need this to ensure really quick test runs don't fail ([18045](https://github.com/civicrm/civicrm-core/pull/18045))** - **dev/core#1137 - Allow ssl connection to mysql by specifying in DSN ([17706](https://github.com/civicrm/civicrm-core/pull/17706))** - **Test - attempt to replicate #17852 ([18038](https://github.com/civicrm/civicrm-core/pull/18038))** - **[REF] Remove transaction from BaseIPN completeTransaction call ([18042](https://github.com/civicrm/civicrm-core/pull/18042))** - **Remove url-tracking in mass sms. dev/core#1843 ([17700](https://github.com/civicrm/civicrm-core/pull/17700))** - **Do not overwrite values saved from the repeatContribution routine ([17972](https://github.com/civicrm/civicrm-core/pull/17972))** - **dev/core#1916 - Fix naming of case export fields / remove ones that aren't true ([18043](https://github.com/civicrm/civicrm-core/pull/18043))** - **SystemCheck: add ability to efficiently run only specified checks ([17824](https://github.com/civicrm/civicrm-core/pull/17824))** - **Add testing to Authorize.net and remove the lines that are repeated ([18028](https://github.com/civicrm/civicrm-core/pull/18028))** - **Add test on status calculation ([18037](https://github.com/civicrm/civicrm-core/pull/18037))** - **Fix qill typo ([18041](https://github.com/civicrm/civicrm-core/pull/18041))** - **dev/core#1919 - Missing resubscribe url in text/plain version of unsubscribe confirmation email ([18015](https://github.com/civicrm/civicrm-core/pull/18015))** - **[Ref] Simplify is_email_receipt in sendMail ([18029](https://github.com/civicrm/civicrm-core/pull/18029))** - **Update flexmailer release information ([17912](https://github.com/civicrm/civicrm-core/pull/17912))** - **[REF] [Test] Minor simplification on test ([18019](https://github.com/civicrm/civicrm-core/pull/18019))** - **dev/core#1906 - Allow payment create api to record payment on Failed … ([17943](https://github.com/civicrm/civicrm-core/pull/17943))** - **Fix for failing test ([18036](https://github.com/civicrm/civicrm-core/pull/18036))** - **Remove invalid use of crmMoney formatter ([18031](https://github.com/civicrm/civicrm-core/pull/18031))** - **Remove main PaymentExpress class ([18010](https://github.com/civicrm/civicrm-core/pull/18010))** - **[Ref] Remove transaction instantiation in PaypalPro ([18026](https://github.com/civicrm/civicrm-core/pull/18026))** - **[REF] Stop instantiating transaction in PaypalIPN ([18020](https://github.com/civicrm/civicrm-core/pull/18020))** - **Remove unused parameter ids['billing'] ([18021](https://github.com/civicrm/civicrm-core/pull/18021))** - **5.28 to master ([18023](https://github.com/civicrm/civicrm-core/pull/18023))** - **Cache loader - remove legacy handling, handle null result from setting ([17999](https://github.com/civicrm/civicrm-core/pull/17999))** - **Change inform-icon to fa-info-circle ([18001](https://github.com/civicrm/civicrm-core/pull/18001))** - **[REF] Remove pass-by-reference & always empty param ([17984](https://github.com/civicrm/civicrm-core/pull/17984))** - **CIVICRM_BAO_CACHE_ADAPTER - Remove obsolete option ([17990](https://github.com/civicrm/civicrm-core/pull/17990))** - **SQL temp table not using utf8mb4 if server default already set to utf8mb4 ([18012](https://github.com/civicrm/civicrm-core/pull/18012))** - **Wrong link to admin page in error message about FROM address on PCP page ([17996](https://github.com/civicrm/civicrm-core/pull/17996))** - **[REF] Tighten up function signature for dedupePair ([17923](https://github.com/civicrm/civicrm-core/pull/17923))** - **[Ref] Move noisily deprecate BaseIPN->sendMail, call api from it rather than BAO function ([17982](https://github.com/civicrm/civicrm-core/pull/17982))** - **[REF] Use CRM_Utils_Mail::send for sending emails for confirming unsu… ([17396](https://github.com/civicrm/civicrm-core/pull/17396))** - **CRM_Core_BAO_Cache - Remove functions deprecated a year ago ([17989](https://github.com/civicrm/civicrm-core/pull/17989))** - **[Test framework] re-re-fix test and add test for test ([18013](https://github.com/civicrm/civicrm-core/pull/18013))** - **Re-fix test ([18009](https://github.com/civicrm/civicrm-core/pull/18009))** - **[NFC] Improve docs for APIv4 Save action ([18004](https://github.com/civicrm/civicrm-core/pull/18004))** - **dev/core#1909 - E_NOTICE on contribution edit ([18006](https://github.com/civicrm/civicrm-core/pull/18006))** - **dev/core#1918 - Remove dubious qfkey checking code that never runs ([18007](https://github.com/civicrm/civicrm-core/pull/18007))** - **5.28 ([18008](https://github.com/civicrm/civicrm-core/pull/18008))** - **[REF] Reduce calls to CRM_Member_PseudoConstant::membershipType ([17987](https://github.com/civicrm/civicrm-core/pull/17987))** - **dev/core#1915 - E_NOTICE when making pcp contribution ([18002](https://github.com/civicrm/civicrm-core/pull/18002))** - **[Test framework] - Update failing test ([18003](https://github.com/civicrm/civicrm-core/pull/18003))** - **Fix repeattransaction api to use custom data from the template contribution ([17975](https://github.com/civicrm/civicrm-core/pull/17975))** - **dev/financial#139 contribution receive_date shouldn't change when payments come in ([17777](https://github.com/civicrm/civicrm-core/pull/17777))** - **5.28 ([17997](https://github.com/civicrm/civicrm-core/pull/17997))** - **Fix case activity field set to allow long details to be exported ([17970](https://github.com/civicrm/civicrm-core/pull/17970))** - **dev/core#1913 Allow for schemas to be added by extensions if they are… ([17986](https://github.com/civicrm/civicrm-core/pull/17986))** - **[REF] Use Standard function cacheClause to re-use contact acl cache t… ([17707](https://github.com/civicrm/civicrm-core/pull/17707))** - **Fixed filling default values for tagssets in the advanced search form ([17978](https://github.com/civicrm/civicrm-core/pull/17978))** - **dev/core#1909 - Avoid E_Notice on SMS provider form when no default url ([17985](https://github.com/civicrm/civicrm-core/pull/17985))** - **Remove duplicate cache flush ([17988](https://github.com/civicrm/civicrm-core/pull/17988))** - **[REF] Extract setUserContext on contribution form & cleanup on backend add membership form ([17968](https://github.com/civicrm/civicrm-core/pull/17968))** - **dev/core#1755 Fix reCaptcha on Mailing Subscribe ([17305](https://github.com/civicrm/civicrm-core/pull/17305))** - **[REF] Make explicit what we are doing with 'values' in this code ([17979](https://github.com/civicrm/civicrm-core/pull/17979))** - **Simplify caching of status checks ([17817](https://github.com/civicrm/civicrm-core/pull/17817))** - **[REF] Reduce interaction between dedupe code and createProfileContact ([17920](https://github.com/civicrm/civicrm-core/pull/17920))** - **ensure custom field checkboxes are populated in profiles ([17977](https://github.com/civicrm/civicrm-core/pull/17977))** - **dev/core#785 Differentiate smart group from regular group using icon in select2 field ([17927](https://github.com/civicrm/civicrm-core/pull/17927))** - **[REF] Minor code clean up ([17974](https://github.com/civicrm/civicrm-core/pull/17974))** - **5.28 to master ([17976](https://github.com/civicrm/civicrm-core/pull/17976))** - **[REF] Grant cleanup ([17967](https://github.com/civicrm/civicrm-core/pull/17967))** - **[NFC] Add in a unit test of calling the contribution page widget endp… ([17965](https://github.com/civicrm/civicrm-core/pull/17965))** - **5.28 ([17963](https://github.com/civicrm/civicrm-core/pull/17963))** - **dev/core#1909 Fix E-notice when adding a field on a profile ([17962](https://github.com/civicrm/civicrm-core/pull/17962))** - **dev/core#1909 Fix e-notice when adding a payment processor ([17964](https://github.com/civicrm/civicrm-core/pull/17964))** - **dev/core#1909 - E_NOTICE opening file-on-case ([17959](https://github.com/civicrm/civicrm-core/pull/17959))** - **[Ref] Simplify field reference ([17941](https://github.com/civicrm/civicrm-core/pull/17941))** - **[Test framework] - Combine triplicate createCase functions ([17957](https://github.com/civicrm/civicrm-core/pull/17957))** - **[REF] Refactor to use the standard CRM_Core_Form::addRadio function f… ([17932](https://github.com/civicrm/civicrm-core/pull/17932))** - **Upgrade PEAR/mail_mime package to be compliant with PHP7.4 and deploy it using composer ([17948](https://github.com/civicrm/civicrm-core/pull/17948))** - **[REF] Fix the default to_financial_account_id for generated transactions ([17938](https://github.com/civicrm/civicrm-core/pull/17938))** - **APIv4 - Add keyword to select all custom fields ([17955](https://github.com/civicrm/civicrm-core/pull/17955))** - **[REF] Upgrade dompdf version to be more compatible with PHP7.4 ([17946](https://github.com/civicrm/civicrm-core/pull/17946))** - **[REF] [Tests] Cleanup test declaration to take advantage of mapping improvements ([17939](https://github.com/civicrm/civicrm-core/pull/17939))** - **dev/drupal#127 - CRM_Core_Session::setStatus() gets ignored sometimes ([17914](https://github.com/civicrm/civicrm-core/pull/17914))** - **5.28 to master ([17953](https://github.com/civicrm/civicrm-core/pull/17953))** - **[REF] Remove unnecessary complexity on im export ([17949](https://github.com/civicrm/civicrm-core/pull/17949))** - **NFC - Docblock cleanup ([17945](https://github.com/civicrm/civicrm-core/pull/17945))** - **CRM_Utils_Check_Component_Case - Guard against post-upgrade crash ([17944](https://github.com/civicrm/civicrm-core/pull/17944))** - **Remove error checking by-pass in tests ([17940](https://github.com/civicrm/civicrm-core/pull/17940))** - **Remove extraneous opportunistic cache flush. ([17936](https://github.com/civicrm/civicrm-core/pull/17936))** - **dev/core#1902: "Contribution Source" profile field has no effect ([17930](https://github.com/civicrm/civicrm-core/pull/17930))** - **[REF] GroupContact BAO - Minor code cleanup ([17928](https://github.com/civicrm/civicrm-core/pull/17928))** - **5.28 to master ([17931](https://github.com/civicrm/civicrm-core/pull/17931))** - **[REF] Minor function signuture cleanup ([17922](https://github.com/civicrm/civicrm-core/pull/17922))** - **[REF] Do not pass variable by reference ([17921](https://github.com/civicrm/civicrm-core/pull/17921))** - **5.28 ([17926](https://github.com/civicrm/civicrm-core/pull/17926))** - **[NFC] Update a few doc/wiki links in code comments ([17918](https://github.com/civicrm/civicrm-core/pull/17918))** - **Improve caching of current domain ([17916](https://github.com/civicrm/civicrm-core/pull/17916))** - **Setup UI - Validate that at least one "Component" is enabled ([17778](https://github.com/civicrm/civicrm-core/pull/17778))** - **Member detail report: nest "in" options in parentheses ([17911](https://github.com/civicrm/civicrm-core/pull/17911))** - **Fix sticky table header on "Find Activities" page ([17917](https://github.com/civicrm/civicrm-core/pull/17917))** - **5.28 ([17908](https://github.com/civicrm/civicrm-core/pull/17908))** - **[REF] remove unnecessary variable variables ([17903](https://github.com/civicrm/civicrm-core/pull/17903))** - **dev/core#1855 - Allow different output formats for CiviReport results and untangle code ([17901](https://github.com/civicrm/civicrm-core/pull/17901))** - **[REF] - Add helper function for the repetitive task of fetching multilingual ([17650](https://github.com/civicrm/civicrm-core/pull/17650))** - **[unreleased regression] Dummy processor now is ID 7 on buildkit sites ([17905](https://github.com/civicrm/civicrm-core/pull/17905))** - **Remove unused "ufUniqID" session variable ([17904](https://github.com/civicrm/civicrm-core/pull/17904))** - **Replace a load of references to the wiki with docs links ([17900](https://github.com/civicrm/civicrm-core/pull/17900))** - **dev/core#1894 - Make CRM_Activity_Form_SearchTest::testQill less time-sensitive ([17902](https://github.com/civicrm/civicrm-core/pull/17902))** - **dev/core#183 Use TempTable builder to generate table for import ([17827](https://github.com/civicrm/civicrm-core/pull/17827))** - **Remove check for valid email in synchronizeUFMatch ([17771](https://github.com/civicrm/civicrm-core/pull/17771))** - **Call apiv4 from Contribution create rather than fugly addActivity function ([17881](https://github.com/civicrm/civicrm-core/pull/17881))** - **APIv4 - Add BasicEntity helper class ([17899](https://github.com/civicrm/civicrm-core/pull/17899))** - **mailing#70 Don't create users for test mail if user doesn't have permission ([17867](https://github.com/civicrm/civicrm-core/pull/17867))** - **Add APIv4 and pseudoconstants for RelationshipCache ([17879](https://github.com/civicrm/civicrm-core/pull/17879))** - **dev/core#1670 copy custom fields from master to shared address ([17580](https://github.com/civicrm/civicrm-core/pull/17580))** - **[Ref] Unit test attempt to create reported bugs , minor cleanup ([17560](https://github.com/civicrm/civicrm-core/pull/17560))** - **Update version in the test_data_second_domain file and also update th… ([17897](https://github.com/civicrm/civicrm-core/pull/17897))** - **dev/core#1888 - Fix one line in PR 17888 ([17898](https://github.com/civicrm/civicrm-core/pull/17898))** - **Be a little less supportive to cvs ([17896](https://github.com/civicrm/civicrm-core/pull/17896))** - **dev/core#1888 and dev/core#1885 - Fatal error on advanced search and warnings and missing group display on contact form ([17888](https://github.com/civicrm/civicrm-core/pull/17888))** - **APIv4 - Specify BridgeEntities to assist with joins ([17808](https://github.com/civicrm/civicrm-core/pull/17808))** - **Contribution Summary Report: Taking the currency filtered in the "gen… ([16736](https://github.com/civicrm/civicrm-core/pull/16736))** - **Event Cart ext: Move menu entries to extension ([17891](https://github.com/civicrm/civicrm-core/pull/17891))** - **5.28 ([17895](https://github.com/civicrm/civicrm-core/pull/17895))** - **[Test Framework] - Tests for report downloads ([17892](https://github.com/civicrm/civicrm-core/pull/17892))** - **dev/core#1578 - Fix APIv4 chaining with custom fields ([17866](https://github.com/civicrm/civicrm-core/pull/17866))** - **Unit test for #17361 ([17882](https://github.com/civicrm/civicrm-core/pull/17882))** - **EventCart ext: Cleanup and move form components to ext ([17885](https://github.com/civicrm/civicrm-core/pull/17885))** - **EventCart ext: Fix autogenerated code, remove unused hooks, update readme ([17884](https://github.com/civicrm/civicrm-core/pull/17884))** - **Load contribution page if live payment processor is disabled but test is available ([17828](https://github.com/civicrm/civicrm-core/pull/17828))** - **Search debug ([17887](https://github.com/civicrm/civicrm-core/pull/17887))** - **dev/core#1767 Fix phone key parsing in CRM_Dedupe_Finder ([17361](https://github.com/civicrm/civicrm-core/pull/17361))** - **[NFC] Fix nonstandard header comments ([17880](https://github.com/civicrm/civicrm-core/pull/17880))** - **dev/core#1751: [Create Email] Only Show Update/Save Template when User has Permission to Edit Templates ([17480](https://github.com/civicrm/civicrm-core/pull/17480))** - **Use new checkPermissions shorthand in api calls ([17874](https://github.com/civicrm/civicrm-core/pull/17874))** - **5.28 ([17878](https://github.com/civicrm/civicrm-core/pull/17878))** - **Simplify flushing group contact cache query to reduce table locking and improve performance ([17846](https://github.com/civicrm/civicrm-core/pull/17846))** - **dev/core#1869 - Include BOM in attachment when sending CSV CiviReport via mail_report job ([17806](https://github.com/civicrm/civicrm-core/pull/17806))** - **dev/core#1280 Fix ContributionPage soft_credit translation ([16838](https://github.com/civicrm/civicrm-core/pull/16838))** - **[NFC] Comment block cleanup ([17872](https://github.com/civicrm/civicrm-core/pull/17872))** - **REF Extract addToRecentItems from membership create ([17524](https://github.com/civicrm/civicrm-core/pull/17524))** - **Disable frequency/interval fields if not required. Mark required if they are so they are validated before submit ([17526](https://github.com/civicrm/civicrm-core/pull/17526))** - **dev/membership#18 Enhance parameters for Job.process_membership ([16298](https://github.com/civicrm/civicrm-core/pull/16298))** - **Fix currency symbol for Total Amount on contribution page ([17703](https://github.com/civicrm/civicrm-core/pull/17703))** - **RelationshipCache - Add a high-level index to facilitate relationship queries (more fields) ([17781](https://github.com/civicrm/civicrm-core/pull/17781))** - **[REF] Fix a couple of jQuery errors that have cropped up ([17871](https://github.com/civicrm/civicrm-core/pull/17871))** - **Hooks/Dispatcher - Close loopholes that occur around "preboot" hooks ([17831](https://github.com/civicrm/civicrm-core/pull/17831))** - **APIv4 - Add shorthand for setCheckPermissions() ([17834](https://github.com/civicrm/civicrm-core/pull/17834))** - **Use PrematureExit exception instead of weird hack in tests ([17870](https://github.com/civicrm/civicrm-core/pull/17870))** - **dev/core#1113 - Decimal Separator - Invalid value "total_amount" (NaN,N) creating or editing a membership ([16429](https://github.com/civicrm/civicrm-core/pull/16429))** - **(REF) regen.sh - Remove unusual handling of `zipcodes.mysql` ([17869](https://github.com/civicrm/civicrm-core/pull/17869))** - **dev/report#43 - Icon after saving a civireport instance is misleading ([17863](https://github.com/civicrm/civicrm-core/pull/17863))** - **Remove unnecessary try/catch per #17729 ([17823](https://github.com/civicrm/civicrm-core/pull/17823))** - **dev/core#1725 Only export primary address fields ([17458](https://github.com/civicrm/civicrm-core/pull/17458))** - **api_v3_TaxContributionPageTest fix - remove hard coded processor id ([17860](https://github.com/civicrm/civicrm-core/pull/17860))** - **Fixed DB Error: syntax error if line item refers to civicrm_case ([16626](https://github.com/civicrm/civicrm-core/pull/16626))** - **Fix potential js error on summary screen when reloading blocks ([17865](https://github.com/civicrm/civicrm-core/pull/17865))** - **Search Ext: fix loading options and parsing custom field names ([17864](https://github.com/civicrm/civicrm-core/pull/17864))** - **EventCart - Resolve BAO identity and uncommitted DAO changes ([17861](https://github.com/civicrm/civicrm-core/pull/17861))** - **[REF] ScheduledJob cleanup, remove unused var ([17862](https://github.com/civicrm/civicrm-core/pull/17862))** - **dev/core#1090 Update extendedSerializeData to use the Backbone namesp… ([17855](https://github.com/civicrm/civicrm-core/pull/17855))** - **dev/core#1874 - Failing test for new Individual form ([17835](https://github.com/civicrm/civicrm-core/pull/17835))** - **Bump lodash from 4.17.15 to 4.17.19 ([17858](https://github.com/civicrm/civicrm-core/pull/17858))** - **5.28 ([17859](https://github.com/civicrm/civicrm-core/pull/17859))** - **[REF] Migrate Event Cart Setting into the Extension ([17841](https://github.com/civicrm/civicrm-core/pull/17841))** - **5.28 ([17856](https://github.com/civicrm/civicrm-core/pull/17856))** - **handlePaymentNotification() should not be declared as a static method ([17849](https://github.com/civicrm/civicrm-core/pull/17849))** - **[REF] Only printOnly once ([17850](https://github.com/civicrm/civicrm-core/pull/17850))** - **API tests - label versions in dataprovider versionThreeAndFour ([17847](https://github.com/civicrm/civicrm-core/pull/17847))** - **dev/core#1880 add backticks to custom field insertions ([17848](https://github.com/civicrm/civicrm-core/pull/17848))** - **(REF) APIv4 ConformanceTest - Split apart into per-entity sub-tests ([17845](https://github.com/civicrm/civicrm-core/pull/17845))** - **dev/core#1872 - Packages and vendor path calculation used in system check is outdated ([17844](https://github.com/civicrm/civicrm-core/pull/17844))** - **[NFC] Re run regen after recent merges ([17842](https://github.com/civicrm/civicrm-core/pull/17842))** - **5.28 ([17843](https://github.com/civicrm/civicrm-core/pull/17843))** - **Move BAO and template files into event cart ([17743](https://github.com/civicrm/civicrm-core/pull/17743))** - **Update regen.sh with new & upcoming core extensions ([17839](https://github.com/civicrm/civicrm-core/pull/17839))** - **MembershipRenewalTest - Fix failure ([17830](https://github.com/civicrm/civicrm-core/pull/17830))** - **Remove hard coded charset. ([17826](https://github.com/civicrm/civicrm-core/pull/17826))** - **(REF) WebsiteTest - Mitigate flaky failures ([17833](https://github.com/civicrm/civicrm-core/pull/17833))** - **dev/core#1812 Missing view when logging set in a non-US English instance ([17815](https://github.com/civicrm/civicrm-core/pull/17815))** - **dev/core#785 Differentiate smart group from regular group using icon in select2 field ([13958](https://github.com/civicrm/civicrm-core/pull/13958))** - **APIv4 - Add activity contacts to APIv4 field spec ([17766](https://github.com/civicrm/civicrm-core/pull/17766))** - **Adjust mysql SET NAMES in remaining places as we agreed this was the go ([17825](https://github.com/civicrm/civicrm-core/pull/17825))** - **core#1805: Autocomplete-select custom field is not searchable ([17569](https://github.com/civicrm/civicrm-core/pull/17569))** - **event#38 fix wording on event reg page ([17695](https://github.com/civicrm/civicrm-core/pull/17695))** - **core#1795: Searchable Parent tags ([17513](https://github.com/civicrm/civicrm-core/pull/17513))** - **dev/core#1768 - Add CiviMail synchronisation frequency setting. ([17709](https://github.com/civicrm/civicrm-core/pull/17709))** - **Make new email open and url routes 'public' ([17813](https://github.com/civicrm/civicrm-core/pull/17813))** - **dev/core#1871 - require_once's that include "packages/" in the path don't work on drupal 8 ([17822](https://github.com/civicrm/civicrm-core/pull/17822))** - **Make api get upgrade-safe ([17729](https://github.com/civicrm/civicrm-core/pull/17729))** - **5.28 ([17799](https://github.com/civicrm/civicrm-core/pull/17799))** - **CRM_Utils_SQL - Add "onDuplicate()" and "syncInto()" helpers ([17780](https://github.com/civicrm/civicrm-core/pull/17780))** - **CheckEnv - Give new installs a grace period before 'Cron Not Running' msg ([17800](https://github.com/civicrm/civicrm-core/pull/17800))** - **Fix 'Undefined variable: jsSet in CRM_Core_BAO_Mapping::loadSavedMapping()' ([17816](https://github.com/civicrm/civicrm-core/pull/17816))** - **dev/core#1861 fix failure to unset location_type_id when saving uffield ([17812](https://github.com/civicrm/civicrm-core/pull/17812))** - **dev/core#1863 Downgrade checkEnvironment level and skip non-prod checks ([17807](https://github.com/civicrm/civicrm-core/pull/17807))** - **reporting#21 - don't multiple contribution details when a 1-to-many r… ([15435](https://github.com/civicrm/civicrm-core/pull/15435))** - **Add hidden tag to search extension ([17789](https://github.com/civicrm/civicrm-core/pull/17789))** - **[REF] Follow up cleanup ([17788](https://github.com/civicrm/civicrm-core/pull/17788))** - **[REF] Remove ACL join on temp table creation in Member ContributionDe… ([17723](https://github.com/civicrm/civicrm-core/pull/17723))** - **dev/core#1858 Prevent Duplicate contact records being created and har… ([17769](https://github.com/civicrm/civicrm-core/pull/17769))** - **REF - Cleanup StatusPreference BAO to be more standard ([17801](https://github.com/civicrm/civicrm-core/pull/17801))** - **Sort permittedActivityTypes ([17794](https://github.com/civicrm/civicrm-core/pull/17794))** - **[REF] Do or do not - there is no try ([17795](https://github.com/civicrm/civicrm-core/pull/17795))** - **Add auto-renew status to membership detail report ([17683](https://github.com/civicrm/civicrm-core/pull/17683))** - **APIv4 - Fix saving custom fields with same name ([17791](https://github.com/civicrm/civicrm-core/pull/17791))** - **Add system check to ensure WP base page exists ([17698](https://github.com/civicrm/civicrm-core/pull/17698))** - **dev/core#1868 - Regression - Description field is always blank on profiles admin page and slew of E_NOTICES ([17786](https://github.com/civicrm/civicrm-core/pull/17786))** - **Fixed notice error on Relationships report ([17787](https://github.com/civicrm/civicrm-core/pull/17787))** - **getLoggedInContactID() is a static function ([17783](https://github.com/civicrm/civicrm-core/pull/17783))** - **5.28 ([17782](https://github.com/civicrm/civicrm-core/pull/17782))** - **dev/core#1679: Ensure Paypal IPN always updates the next scheduled payment date ([17744](https://github.com/civicrm/civicrm-core/pull/17744))** - **5.28 ([17774](https://github.com/civicrm/civicrm-core/pull/17774))** - **dev/core#1853 - Fix validation errors when removing contact subtype ([17765](https://github.com/civicrm/civicrm-core/pull/17765))** - **Add search extension ([17775](https://github.com/civicrm/civicrm-core/pull/17775))** - **[dev/core#750] Don't check server variables if we're running in CLI ([17636](https://github.com/civicrm/civicrm-core/pull/17636))** - **Remove PaymentExpress ipn class ([17763](https://github.com/civicrm/civicrm-core/pull/17763))** - **Status Checks - Use more specific label regarding "Domain"/"Organization" check ([17776](https://github.com/civicrm/civicrm-core/pull/17776))** - **5.28 to master ([17770](https://github.com/civicrm/civicrm-core/pull/17770))** - **dev/drupal#114 and dev/core#1647 - Remove resource url status check ([17754](https://github.com/civicrm/civicrm-core/pull/17754))** - **Bump minimum upgradable version to 4.4.7 ([17750](https://github.com/civicrm/civicrm-core/pull/17750))** - **[REF] Unused interface CRM_Report_Interface ([17767](https://github.com/civicrm/civicrm-core/pull/17767))** - **[TEST] Failing test for PR 16559 ([17256](https://github.com/civicrm/civicrm-core/pull/17256))** - **update to pr 16559 ([17764](https://github.com/civicrm/civicrm-core/pull/17764))** - **Remove unused, deprecated functions ([17761](https://github.com/civicrm/civicrm-core/pull/17761))** - **Improve efficiency of findFiles ([17745](https://github.com/civicrm/civicrm-core/pull/17745))** - **APIv4 Explorer: Improve selection of fields for HAVING ([17746](https://github.com/civicrm/civicrm-core/pull/17746))** - **More unused functions in GenCode ([17756](https://github.com/civicrm/civicrm-core/pull/17756))** - **Fix PHP notice on wordpress permissions form ([17758](https://github.com/civicrm/civicrm-core/pull/17758))** - **core#1826: Ignore location_type_id when deduping postal address ([17645](https://github.com/civicrm/civicrm-core/pull/17645))** - **[Unit Test] dev/core#1173 and dev/core#1827 - Test for activity tag search - PR 17655 ([17755](https://github.com/civicrm/civicrm-core/pull/17755))** - **Convert CRM.utils.formatDate tests to karma ([17757](https://github.com/civicrm/civicrm-core/pull/17757))** - **dev/core#1827 activity search - fixing search by tags ([17655](https://github.com/civicrm/civicrm-core/pull/17655))** - **Unused functions in GenCode ([17753](https://github.com/civicrm/civicrm-core/pull/17753))** - **5.28 ([17751](https://github.com/civicrm/civicrm-core/pull/17751))** - **Teach CRM.utils.formatDate to also show time ([17684](https://github.com/civicrm/civicrm-core/pull/17684))** - **Fix typo in templates/CRM/Report/Form/Tabs/GroupBy.tpl ([17747](https://github.com/civicrm/civicrm-core/pull/17747))** - **Add eventcart shell ([17741](https://github.com/civicrm/civicrm-core/pull/17741))** - **Fixed for multi-select filter ([615](https://github.com/civicrm/civicrm-drupal/pull/615))** - **fix url for file field ([608](https://github.com/civicrm/civicrm-drupal/pull/608))** - **[Test] Update hook signature in test ([609](https://github.com/civicrm/civicrm-drupal/pull/609))** - **NFC - Docblock cleanup ([610](https://github.com/civicrm/civicrm-drupal/pull/610))** - **Installation - Support "activate first" w/setup UI ([606](https://github.com/civicrm/civicrm-drupal/pull/606))** - **Slow down the frequency of WordPress "heartbeat" calls in CiviCRM admin ([214](https://github.com/civicrm/civicrm-wordpress/pull/214))** - **Remove unused "ufUniqID" session variable ([213](https://github.com/civicrm/civicrm-wordpress/pull/213))** - **5.28 to master ([212](https://github.com/civicrm/civicrm-wordpress/pull/212))** - **Installation - Support "activate first" w/setup UI ([121](https://github.com/civicrm/civicrm-backdrop/pull/121))** - **[NFC] Update versions file to remove reference to Mail_mime and Mail ([301](https://github.com/civicrm/civicrm-packages/pull/301))** - **[REF] Remove mail_mime package as now supplied by composer ([300](https://github.com/civicrm/civicrm-packages/pull/300))** - **Remove Net packages Net_Curl Net_DIME as they do not appear to be used ([294](https://github.com/civicrm/civicrm-packages/pull/294))** - **[REF] Remove some deprecated size function calls replaced with length ([299](https://github.com/civicrm/civicrm-packages/pull/299))** ## Miscellany ## Credits This release was developed by the following code authors: AGH Strategies - Alice Frumin, Andrew Hunt; Agileware - Justin Freeman; Christian Wach; Circle Interactive - Pradeep Nayak; CiviCoop - Jaap Jansma, Klaas Eikelboom; CiviCRM - Coleman Watts, Tim Otten; CiviDesk - Yashodha Chaku; Coop SymbioTIC - Mathieu Lutfy, Samuel Vanhove; Dave D; dependabot[bot]; Fuzion - Jitendra Purohit; iXiam - César Ramos; JMA Consulting - Monish Deb, Seamus Lee; John Kingsnorth; Joinery - Allen Shaw; Lighthouse Consulting and Design - Brian Shaughnessy; Megaphone Technology Consulting - Jon Goldberg; MillerTech - Chamil Wijesooriya; MJCO - Mikey O'Toole; MJW Consulting - Matthew Wire; muniodiego; Progressive Technology Project - Jamie McClelland; Squiffle Consulting - Aidan Saunders; Stephen Palmstrom; Tadpole Collective - Kevin Cristiano; Timbsoft Technologies - Tunbola Ogunwande; Wikimedia Foundation - Eileen McNaughton Most authors also reviewed code for this release; in addition, the following reviewers contributed their comments: AGH Strategies - Alice Frumin, Andrew Hunt; Agileware - Justin Freeman, Pengyi Zhang; Andrew Thompson; Artful Robot - Rich Lott; Australian Greens - Andrew Cormick-Dockery, John Twyman; Bastien Ho; Blackfly Solutions - Alan Dixon; Christian Wach; Circle Interactive - Pradeep Nayak; civibot[bot]; CiviCoop - Jaap Jansma, Klaas Eikelboom; civicrm-builder; CiviCRM - Coleman Watts, Tim Otten; CiviDesk - Yashodha Chaku; CompuCorp - Jamie Novick; Coop SymbioTIC - Mathieu Lutfy, Samuel Vanhove; Dave D; DevApp - Adam Kwiatkowski; elcapo; Francesc Bassas i Bullich; Freeform Solutions - Herb van den Dool; Fuzion - Jitendra Purohit; Greenpeace Central and Eastern Europe - Patrick Figel; irenemeisel; iXiam - César Ramos; JMA Consulting - Joe Murray, Monish Deb, Seamus Lee; Joinery - Allen Shaw; Korlon - Stuart Gaston; Lighthouse Consulting and Design - Brian Shaughnessy; Megaphone Technology Consulting - Jon Goldberg; MillerTech - Chamil Wijesooriya; MJCO - Mikey O'Toole; MJW Consulting - Matthew Wire; Nicol Wistreich; Progressive Technology Project - Jamie McClelland; Rar9; Ray Wright; Semper IT - Karin Gerritsen; Squiffle Consulting - Aidan Saunders; Stephen Palmstrom; Tadpole Collective - Kevin Cristiano; Third Sector Design - Michael McAndrew; Wikimedia Foundation - Eileen McNaughton ## 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`.