# CiviCRM 5.12.0 Released April 3, 2019; - **[Features](#features)** - **[Bugs resolved](#bugs)** - **[Miscellany](#misc)** - **[Credits](#credits)** ## Features ### Core CiviCRM - **CRM-21643 Missing Summary ([12337](https://github.com/civicrm/civicrm-core/pull/12337))** ## Bugs resolved ### Core CiviCRM - **dev/core#801 Fix from email on PDF Letters, such as Thank You Letters. ([13825](https://github.com/civicrm/civicrm-core/pull/13825))** - **dev/core#790 - Exclue menubar on frontend pages ([13820](https://github.com/civicrm/civicrm-core/pull/13820))** - **dev/core#659 Catch payment processor exceptions, log, hide, do not return 500 error ([13796](https://github.com/civicrm/civicrm-core/pull/13796))** - **Fix unrelased regression where activity date relative filters are ingnored in the rc ([13801](https://github.com/civicrm/civicrm-core/pull/13801))** - **(ops#878) (Fast)ArrayDecorator - Emit expected exception when using WP and strict PSR-16 ([13808](https://github.com/civicrm/civicrm-core/pull/13808))** - **Merge forward 5.11 => master ([13777](https://github.com/civicrm/civicrm-core/pull/13777))** - **Remove mcrypt system status check ([13770](https://github.com/civicrm/civicrm-core/pull/13770))** - **Fix api bug whereby 0 & '0' are not accepted as range parameters for BETWEEN ([13766](https://github.com/civicrm/civicrm-core/pull/13766))** - **Render Note field tokens correctly - they are already HTML. ([13283](https://github.com/civicrm/civicrm-core/pull/13283))** - **dev/core#644 fix from address before calling hook ([13776](https://github.com/civicrm/civicrm-core/pull/13776))** - **[REF] separate financial handling & component transitioning in Payment.create ([13756](https://github.com/civicrm/civicrm-core/pull/13756))** - **Fix typo in comments ([13771](https://github.com/civicrm/civicrm-core/pull/13771))** - **Removes redundant IF ([13769](https://github.com/civicrm/civicrm-core/pull/13769))** - **[REF] towards cleanup of update membership code ([13759](https://github.com/civicrm/civicrm-core/pull/13759))** - **Extract getSearchSQLParts function ([13735](https://github.com/civicrm/civicrm-core/pull/13735))** - **Convert activity_date_time field to datepicker and add support for url input ([13746](https://github.com/civicrm/civicrm-core/pull/13746))** - **Speed up contribution results by removing join on civicrm_financial_type table when rendering search results. ([13720](https://github.com/civicrm/civicrm-core/pull/13720))** - **Try and add data set example where email_on_hold / on_hold is NULL in… ([13765](https://github.com/civicrm/civicrm-core/pull/13765))** - **Upgrade Karma version to latest version ([13751](https://github.com/civicrm/civicrm-core/pull/13751))** - **Rationalise Activity api ACLs for consistency, to respect the hook & improve performance ([13664](https://github.com/civicrm/civicrm-core/pull/13664))** - **report clean up - remove redundant code ([13761](https://github.com/civicrm/civicrm-core/pull/13761))** - **dev/core#767 Add 'Cancelled / Refunded Date' and 'Cancellation / Refund Reason' ([13726](https://github.com/civicrm/civicrm-core/pull/13726))** - **5.11 ([13760](https://github.com/civicrm/civicrm-core/pull/13760))** - **reporting#8 - add thank-you dates to Contribution Summary/Detail reports ([13653](https://github.com/civicrm/civicrm-core/pull/13653))** - **[REF] extract getToFinancialAccount from CRM_Contribute_PseudoConstantt::contributionStatus ([13757](https://github.com/civicrm/civicrm-core/pull/13757))** - **[ref] Extract activity payment creation ([13695](https://github.com/civicrm/civicrm-core/pull/13695))** - **Fix Custom post outer div class on event registration form ([13753](https://github.com/civicrm/civicrm-core/pull/13753))** - **dev/core#770 - View Case Activity page displays disabled custom fields ([13741](https://github.com/civicrm/civicrm-core/pull/13741))** - **Clean up Payment.create function ([13690](https://github.com/civicrm/civicrm-core/pull/13690))** - **fix broken logic in CRM_Utils_System_DrupalBase::formatResourceUrl() ([13400](https://github.com/civicrm/civicrm-core/pull/13400))** - **5.11 ([13750](https://github.com/civicrm/civicrm-core/pull/13750))** - **merge 5.11 to master ([13747](https://github.com/civicrm/civicrm-core/pull/13747))** - **Allow viewing of cancelled recurring contributions ([13745](https://github.com/civicrm/civicrm-core/pull/13745))** - **Upgrader: Don't abort if state_province already exists ([13744](https://github.com/civicrm/civicrm-core/pull/13744))** - **dev/core#708, Fix Qill for Added by and Modified By ([13566](https://github.com/civicrm/civicrm-core/pull/13566))** - **Fix the invocation of post hook for ParticipantPayment ensuring that … ([13739](https://github.com/civicrm/civicrm-core/pull/13739))** - **Decommision getPartialPaymentTrxn function ([13718](https://github.com/civicrm/civicrm-core/pull/13718))** - **5.11 ([13740](https://github.com/civicrm/civicrm-core/pull/13740))** - **Status of test contribution is not fetched on ThankYou page. ([13724](https://github.com/civicrm/civicrm-core/pull/13724))** - **CiviCRM Membership Detail report, add column to display if membership is Primary or Inherited ([13736](https://github.com/civicrm/civicrm-core/pull/13736))** - **dev/core#769 - Fix for ZipArchive->open() PHP bug ([13728](https://github.com/civicrm/civicrm-core/pull/13728))** - **dev/core#748 Move UPPER() from sql to php domain ([13732](https://github.com/civicrm/civicrm-core/pull/13732))** - **5.11 ([13730](https://github.com/civicrm/civicrm-core/pull/13730))** - **[REF] Extract lines to add the pseudoconstant to the select ([13717](https://github.com/civicrm/civicrm-core/pull/13717))** - **Mark de.systopia.recentitems obsolete ([13729](https://github.com/civicrm/civicrm-core/pull/13729))** - **5.11 to master ([13722](https://github.com/civicrm/civicrm-core/pull/13722))** - **dev/core#561 Upgrade age_asof_date to datepicker in search ([13704](https://github.com/civicrm/civicrm-core/pull/13704))** - **Upgrade PHPWord ([13686](https://github.com/civicrm/civicrm-core/pull/13686))** - **[minor cleanup] reduce params passed to searchQuery ([13715](https://github.com/civicrm/civicrm-core/pull/13715))** - **Migrate date field to datepicker on ChangeCaseType form ([13701](https://github.com/civicrm/civicrm-core/pull/13701))** - **[REF] Extract recordPayment portion ([13692](https://github.com/civicrm/civicrm-core/pull/13692))** - **Merge 5.11 to master ([13710](https://github.com/civicrm/civicrm-core/pull/13710))** - **Move assign of currency for entityForm outside of foreach so order of fields don't matter ([13696](https://github.com/civicrm/civicrm-core/pull/13696))** - **[TEST FIX] Increase uniqueness in testSingleNowDates ([13705](https://github.com/civicrm/civicrm-core/pull/13705))** - **dev/core#735 Do not include product in search results if site has none ([13638](https://github.com/civicrm/civicrm-core/pull/13638))** - **Code cleanup - remove extraneous permissions clause ([13645](https://github.com/civicrm/civicrm-core/pull/13645))** - **Fix & test searchQuery order by to be less dependent on what is selected for search ([13680](https://github.com/civicrm/civicrm-core/pull/13680))** - **Add pseudoconstant for payment_processor_id to contributionrecur ([13702](https://github.com/civicrm/civicrm-core/pull/13702))** - **dev/core#739 Fix case detail report breaking when sorted by case type. ([13666](https://github.com/civicrm/civicrm-core/pull/13666))** - **Phase out CIVICRM_TEMP_FORCE_UTF8 ([13658](https://github.com/civicrm/civicrm-core/pull/13658))** - **[REF] minor refactor around retrieving processor id for recur ([13643](https://github.com/civicrm/civicrm-core/pull/13643))** - **Extract record refund function ([13694](https://github.com/civicrm/civicrm-core/pull/13694))** - **Migrate KAM smartmenus to core ([13582](https://github.com/civicrm/civicrm-core/pull/13582))** - **Revert "[REF] Extract record refund function" ([13693](https://github.com/civicrm/civicrm-core/pull/13693))** - **[REF] Extract record refund function ([13691](https://github.com/civicrm/civicrm-core/pull/13691))** - **Move pear/mail from packages to composer.json ([13289](https://github.com/civicrm/civicrm-core/pull/13289))** - **Do not attempt to store out-of-range street number ([13340](https://github.com/civicrm/civicrm-core/pull/13340))** - **[REF] Extract getSearchSQL from getSearchQuery. ([13668](https://github.com/civicrm/civicrm-core/pull/13668))** - **Use CRM_Utils_SQL_TempTable to drop and create table. ([13688](https://github.com/civicrm/civicrm-core/pull/13688))** - **Record change log entry when contact is moved to or restored from trash ([13276](https://github.com/civicrm/civicrm-core/pull/13276))** - **geocode job: Do not return more messages than can fit in the log data column ([13346](https://github.com/civicrm/civicrm-core/pull/13346))** - **Towards supporting EntityForm for 'View Action' ([13578](https://github.com/civicrm/civicrm-core/pull/13578))** - **dev/core#631 - Enable 'add new' by default on merge screen ([13588](https://github.com/civicrm/civicrm-core/pull/13588))** - **reporting#9: parity between getContactFields and getBasicContactFields ([13657](https://github.com/civicrm/civicrm-core/pull/13657))** - **dev/core#742 Fix XML parasing by swapping & for , ([13654](https://github.com/civicrm/civicrm-core/pull/13654))** - **only set custom field to null if it is really null, not string 'null' ([13042](https://github.com/civicrm/civicrm-core/pull/13042))** - **CiviMail: Fix reply forwarding for mailers with From: and Return-path: limitations ([12641](https://github.com/civicrm/civicrm-core/pull/12641))** - **CRM/Logging - Fix various bugs in schema parsing ([13441](https://github.com/civicrm/civicrm-core/pull/13441))** - **Force utf8mb4 query to throw exception as the check expects ([13682](https://github.com/civicrm/civicrm-core/pull/13682))** - **Minor code cleanup ([13687](https://github.com/civicrm/civicrm-core/pull/13687))** - **[NFC, test class] formatting, remove unused variables ([13634](https://github.com/civicrm/civicrm-core/pull/13634))** - **Refactor CRM_Utils_SQL_TempTable::build()->createWithQuery($sql) interface to support MEMORY tabls ([13644](https://github.com/civicrm/civicrm-core/pull/13644))** - **dev/core#746 Add in unit tests to ensure that where clause is as is w… ([13685](https://github.com/civicrm/civicrm-core/pull/13685))** - **5.11 ([13684](https://github.com/civicrm/civicrm-core/pull/13684))** - **Payment notification formatting, move greeting into table ([13669](https://github.com/civicrm/civicrm-core/pull/13669))** - **CRM/Logging - Fix log table exceptions ([13675](https://github.com/civicrm/civicrm-core/pull/13675))** - **test for reporting#10 ([13678](https://github.com/civicrm/civicrm-core/pull/13678))** - **reporting-11 - fix Soft Credit report with full group by ([13671](https://github.com/civicrm/civicrm-core/pull/13671))** - **5.11 to master ([13676](https://github.com/civicrm/civicrm-core/pull/13676))** - **REF Convert deprecated functions to buildOptions for case ([13364](https://github.com/civicrm/civicrm-core/pull/13364))** - **Switch additional payment form to use Payment.sendconfirmation api ([13649](https://github.com/civicrm/civicrm-core/pull/13649))** - **5.11 to master ([13661](https://github.com/civicrm/civicrm-core/pull/13661))** - **/dev/core#716 - Add decimals in Contribution Amount on Repeat Contrib… ([13659](https://github.com/civicrm/civicrm-core/pull/13659))** - **[REF] minor code cleanup - do not build order var just to hurt brains ([13650](https://github.com/civicrm/civicrm-core/pull/13650))** - **[REF] minor cleanup of groupBy definition. ([13656](https://github.com/civicrm/civicrm-core/pull/13656))** - **Update Payment Notification to use greeting, remove text to 'Please print this confirmation for your records. ([13655](https://github.com/civicrm/civicrm-core/pull/13655))** - **Payment.sendconfirmation api - add further tpl variables. ([13610](https://github.com/civicrm/civicrm-core/pull/13610))** - **Authorizenet test - reduce chance of intermittent fails ([13642](https://github.com/civicrm/civicrm-core/pull/13642))** - **[unused code cleanup] Remove unused 'signupType' url support ([13620](https://github.com/civicrm/civicrm-core/pull/13620))** - **Payment.sendconfirmation api - add further tpl variables. ([13609](https://github.com/civicrm/civicrm-core/pull/13609))** - **(dev/core#696) Changes to copied event phone and email reflects in or… ([13534](https://github.com/civicrm/civicrm-core/pull/13534))** - **5.11 ([13639](https://github.com/civicrm/civicrm-core/pull/13639))** - **Remove another instance of 'lower' ([13636](https://github.com/civicrm/civicrm-core/pull/13636))** - **dev/core#720 Remove median & mode stats from contribution summary in order to improve performance ([13630](https://github.com/civicrm/civicrm-core/pull/13630))** - **[Test changes] Mailing job test use ([13629](https://github.com/civicrm/civicrm-core/pull/13629))** - **Fix html2pdf default PDF format when multiple pdf_format are available. ([13543](https://github.com/civicrm/civicrm-core/pull/13543))** - ** EntityRef - standardize on PascalCase for entity name and fix minor bug ([13631](https://github.com/civicrm/civicrm-core/pull/13631))** - **[REF] Remove useless class CRM_Report_Form_Event ([13632](https://github.com/civicrm/civicrm-core/pull/13632))** - **Contribution/ContributionRecur metadata updates for EntityForm ([13579](https://github.com/civicrm/civicrm-core/pull/13579))** - **dev/core#720 [REF] refactor out components of contributionSummary function ([13607](https://github.com/civicrm/civicrm-core/pull/13607))** - **Standardize format for entityRef create links ([13628](https://github.com/civicrm/civicrm-core/pull/13628))** - **[Code cleanup] Remove unused $stationery_path parameter ([13624](https://github.com/civicrm/civicrm-core/pull/13624))** - **[REF] extract cancelled stats to own function ([13626](https://github.com/civicrm/civicrm-core/pull/13626))** - **[REF] Move entityRef filters into their respective BAOs ([13625](https://github.com/civicrm/civicrm-core/pull/13625))** - **[REF] extract basic soft credit stats to separate function ([13622](https://github.com/civicrm/civicrm-core/pull/13622))** - **[code cleanup] Default wrong declared ([13621](https://github.com/civicrm/civicrm-core/pull/13621))** - **[REF] Remove unused function parameter ([13619](https://github.com/civicrm/civicrm-core/pull/13619))** - **Remove long block of commented out code from 4 years ago ([13623](https://github.com/civicrm/civicrm-core/pull/13623))** - **Always load recaptcha JS over HTTPS ([13601](https://github.com/civicrm/civicrm-core/pull/13601))** - **If a profile is used to create a contact with a subtype the contact will not have any existing subtypes ([13499](https://github.com/civicrm/civicrm-core/pull/13499))** - **[Test support] Add extra output info when getsingle fails as this seems to be common in intermittant fails ([13618](https://github.com/civicrm/civicrm-core/pull/13618))** - **[REF] extract add median to stats ([13616](https://github.com/civicrm/civicrm-core/pull/13616))** - **Remove tests that no longer work due to dead service ([13617](https://github.com/civicrm/civicrm-core/pull/13617))** - **Fix (sometimes serious) performance problem on submitting profiles for specified contacts ([13606](https://github.com/civicrm/civicrm-core/pull/13606))** - **[REF] extract calculation of mode stat ([13614](https://github.com/civicrm/civicrm-core/pull/13614))** - **5.11 to master ([13615](https://github.com/civicrm/civicrm-core/pull/13615))** - **fixes core#580 - view all groups when appropriately permissioned ([13373](https://github.com/civicrm/civicrm-core/pull/13373))** - **Move l10n.js to coreResourcesList ([13612](https://github.com/civicrm/civicrm-core/pull/13612))** - **Add install and runtime status warnings if MySQL utf8mb4 is not supported ([13425](https://github.com/civicrm/civicrm-core/pull/13425))** - **[REF] extract calculation of basic stats ([13608](https://github.com/civicrm/civicrm-core/pull/13608))** - **[REF] Move addSelectWhere-like function to be located on BAO_Contribution ([13587](https://github.com/civicrm/civicrm-core/pull/13587))** - **[REF] Fix silly function to do less handling of non-existent scenarios ([13563](https://github.com/civicrm/civicrm-core/pull/13563))** - **Add in Exception API to support the refactor of Dedupe Exception Page ([13611](https://github.com/civicrm/civicrm-core/pull/13611))** - **fixes dev/core#683 Incorrectly encoded state and country names ([13591](https://github.com/civicrm/civicrm-core/pull/13591))** - **dev/core#720 add unit test, remove legacy code style. ([13605](https://github.com/civicrm/civicrm-core/pull/13605))** - **[REF] extract chunk of code to a separate function ([13600](https://github.com/civicrm/civicrm-core/pull/13600))** - **dev/core#657 - Add filter for country on Repeat Contributions Report ([13432](https://github.com/civicrm/civicrm-core/pull/13432))** - **5.11 to master ([13602](https://github.com/civicrm/civicrm-core/pull/13602))** - **(dev/core#705) Disabling Alphabetical Pager is not respected for cont… ([13592](https://github.com/civicrm/civicrm-core/pull/13592))** - **Add new Payment.sendconfirmation api ([13561](https://github.com/civicrm/civicrm-core/pull/13561))** - **Find Contributions columns/headers not aligned when "Contributions OR Soft Credits?" filter set to "Soft Credits Only" ([13517](https://github.com/civicrm/civicrm-core/pull/13517))** - **dev/report#7 fix trxn_date on bookkeeping report ([13571](https://github.com/civicrm/civicrm-core/pull/13571))** - **dev/core#684 - Case Manager not updating correctly ([13528](https://github.com/civicrm/civicrm-core/pull/13528))** - **dev/core#469 Fix Error on action 'Email - schedule/send via CiviMail' with multiple event names filter ([13539](https://github.com/civicrm/civicrm-core/pull/13539))** - **[REF} User api rather than selector for rendering contributions on user dashboard ([13584](https://github.com/civicrm/civicrm-core/pull/13584))** - **dev/core#397 Dedupe for Individual Birth Date Results in Error ([13538](https://github.com/civicrm/civicrm-core/pull/13538))** - **Improves styling on Joomla! upgrade screen ([13557](https://github.com/civicrm/civicrm-core/pull/13557))** - **dev/core/issues/714, Inline edit should be disabled if user doesn't have edit group permission ([13573](https://github.com/civicrm/civicrm-core/pull/13573))** - **dev/core#691 Make default country optional on setting form ([13523](https://github.com/civicrm/civicrm-core/pull/13523))** - **[REF] switch from (undeclared) class property to local variable. ([13583](https://github.com/civicrm/civicrm-core/pull/13583))** - **[REF] Minor readability cleanup ([13562](https://github.com/civicrm/civicrm-core/pull/13562))** - **Remove activitystatus js. Add submitOnce handler for activity create ([13342](https://github.com/civicrm/civicrm-core/pull/13342))** - **Bump minimum upgradable ver to 4.2.9 ([13580](https://github.com/civicrm/civicrm-core/pull/13580))** - **5.11 to master ([13585](https://github.com/civicrm/civicrm-core/pull/13585))** - **Fix typo and space ([13577](https://github.com/civicrm/civicrm-core/pull/13577))** - **5.11 to master ([13576](https://github.com/civicrm/civicrm-core/pull/13576))** - **Remove hurty free calls from campaign and case ([13564](https://github.com/civicrm/civicrm-core/pull/13564))** - **Fix contact ID help on advanced search ([13569](https://github.com/civicrm/civicrm-core/pull/13569))** - **Add unit test on getContributionBalance fn (#13187) ([13558](https://github.com/civicrm/civicrm-core/pull/13558))** - **dev/core#562 Remove free calls from Activity and Member sections of CRM ([13560](https://github.com/civicrm/civicrm-core/pull/13560))** - **Used buildoptions function to get all groups ([13327](https://github.com/civicrm/civicrm-core/pull/13327))** - **Show Add to group on create new report after refresh of result ([13404](https://github.com/civicrm/civicrm-core/pull/13404))** - **(REF) Rename variables and adjust variable definitions for Event Register form ([13287](https://github.com/civicrm/civicrm-core/pull/13287))** - **Optimize CRM_Core_BAO_FinancialTrxn::getTotalPayment ([13187](https://github.com/civicrm/civicrm-core/pull/13187))** - **CRM.loadScript improvements ([13555](https://github.com/civicrm/civicrm-core/pull/13555))** - **dev/core/issues/700, Show Qill when searched using contact id ([13549](https://github.com/civicrm/civicrm-core/pull/13549))** - **Make submitOnce() button js into a button parameter ([13333](https://github.com/civicrm/civicrm-core/pull/13333))** - **dev/core#690 - Civi\API - Fix entity permission check for trusted calls ([13529](https://github.com/civicrm/civicrm-core/pull/13529))** - **6.x-5.10 ([566](https://github.com/civicrm/civicrm-drupal/pull/566))** - **Port fix for dev/core#381 to custom file field handler file ([564](https://github.com/civicrm/civicrm-drupal/pull/564))** - **7.x 5.11 ([565](https://github.com/civicrm/civicrm-drupal/pull/565))** - **7.x 5.11 to master (no changes in here - just admin) ([562](https://github.com/civicrm/civicrm-drupal/pull/562))** - **Make address Supplemental line 3 available to views ([551](https://github.com/civicrm/civicrm-drupal/pull/551))** - **CMS path fix in wp-cli ([147](https://github.com/civicrm/civicrm-wordpress/pull/147))** - **(NFC) formatting changes ([148](https://github.com/civicrm/civicrm-wordpress/pull/148))** - **Merge forward: 1.x-5.11 => 1.x-master ([66](https://github.com/civicrm/civicrm-backdrop/pull/66))** - **Remove old menu plugin ([240](https://github.com/civicrm/civicrm-packages/pull/240))** - **"Only variable references should be returned by reference" notice in Mail_smtp ([220](https://github.com/civicrm/civicrm-packages/pull/220))** ## Miscellany ## Credits This release was developed by the following code authors: AGH Strategies - Alice Frumin, Andrew Hunt; Agileware - Alok Patel; alexymik; Australian Greens - Seamus Lee; avall-llovera; CiviCRM - Coleman Watts, Tim Otten; CiviDesk - Yashodha Chaku; Coop SymbioTIC - Mathieu Lutfy; Electronic Frontier Foundation - Mark Burdett; Francesc Bassas i Bullich; Fuzion - Jitendra Purohit; GreenPeace Central and Eastern Europe - Patrick Figel; JMA Consulting - Edsel Lopez, Monish Deb; Ken West; Lighthouse Design and Consulting - Brian Shaughnessy; Megaphone Technology Consulting - Jon Goldberg; MJW Consulting - Matthew Wire; Nicol Wistreich; Pradeep Nayak; Skvare - Mark Hanna; Squiffle Consulting - Aidan Saunders; 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 - Alok Patel, Justin Freeman; Australian Greens - Seamus Lee; awasson; Circle Interactive - Dave Jenkins; civibot[bot]; 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; Fuzion - Jitendra Purohit, Peter Davis; GreenPeace Central and Eastern Europe - Patrick Figel; JMA Consulting - Joe Murray, Monish Deb; Lighthouse Design and Consulting - Brian Shaughnessy; Megaphone Technology Consulting - Jon Goldberg; MJCO - Mikey O'Toole; MJW Consulting - Matthew Wire; mwestergaard; Nicol Wistreich; Pradeep Nayak; Progressive Technology Project - Jamie McClelland; reecebenson; Richard van Oosterhout; Skvare - Mark Hanna; Squiffle Consulting - Aidan Saunders; Tadpole Collective - Kevin Cristiano; Third Sector Design - Michael McAndrew; Wikimedia Foundation - Eileen McNaughton