# CiviCRM 5.1.0 Released May 2, 2018 - **[Synopsis](#synopsis)** - **[Features](#features)** - **[Bugs resolved](#bugs)** - **[Miscellany](#misc)** - **[Credits](#credits)** - **[Feedback](#feedback)** ## <a name="synopsis"></a>Synopsis | *Does this version...?* | | |:--------------------------------------------------------------- |:-------:| | Fix security vulnerabilities? | no | | Change the database schema? | no | | Alter the API? | no | | Require attention to configuration options? | no | | **Fix problems installing or upgrading to a previous version?** | **yes** | | **Introduce features?** | **yes** | | **Fix bugs?** | **yes** | ## <a name="features"></a>Features ### Core CiviCRM - **[CRM-21677](https://issues.civicrm.org/jira/browse/CRM-21677) Report improvements ([11814](https://github.com/civicrm/civicrm-core/pull/11814), [11898](https://github.com/civicrm/civicrm-core/pull/11898), [11889](https://github.com/civicrm/civicrm-core/pull/11889), [11880](https://github.com/civicrm/civicrm-core/pull/11880), [11876](https://github.com/civicrm/civicrm-core/pull/11876), [11875](https://github.com/civicrm/civicrm-core/pull/11875), [11867](https://github.com/civicrm/civicrm-core/pull/11867), and [11855](https://github.com/civicrm/civicrm-core/pull/11855))** Reports that don't have detailed information about contacts now no longer join to the address, phone, and email tables. - **[CRM-21434](https://issues.civicrm.org/jira/browse/CRM-21434) Add activities to recent items on view and edit ([11891](https://github.com/civicrm/civicrm-core/pull/11891))** A recently viewed or edited activity will now appear on the list of recent items in Backdrop, Drupal, and Joomla. - **[CRM-21489](https://issues.civicrm.org/jira/browse/CRM-21489) Deadlock retries have been accidentally blocked ([11336](https://github.com/civicrm/civicrm-core/pull/11336) and [197](https://github.com/civicrm/civicrm-packages/pull/197))** This restores functionality that retries transactions if they face a deadlock in the database. The number of times is now a constant that can be set in `civicrm.settings.php`. - **[CRM-21840](https://issues.civicrm.org/jira/browse/CRM-21840) Show Tool Icon For Radio Button Groups ([11819](https://github.com/civicrm/civicrm-core/pull/11819))** A group of radio buttons will now display a wrench icon if the user has the permission to edit the options. This now matches the feature for select boxes. - **[CRM-20981](https://issues.civicrm.org/jira/browse/CRM-20981) Allow custom base-pages with less `crmApp` boilerplate ([10783](https://github.com/civicrm/civicrm-core/pull/10783))** Extensions that use AngularJS can now define a base path more easily. - **[CRM-20624](https://issues.civicrm.org/jira/browse/CRM-20624) Expose description field for option values in UI ([10403](https://github.com/civicrm/civicrm-core/pull/10403))** Custom field options have a `description` field (that has been in the database for a while); now it can be set from the user interface and viewed when managing option values. - **[CRM-21835](https://issues.civicrm.org/jira/browse/CRM-21835) Detailed Logging - Use INNODB if Archive is not available ([11786](https://github.com/civicrm/civicrm-core/pull/11786))** The Archive storage engine is not always available in MariaDB, even though it is the default for log tables when detailed logging is enabled. Now, CiviCRM will fall back to InnoDB if Archive is not available. - **[CRM-21753](https://issues.civicrm.org/jira/browse/CRM-21753) Support 'criteria' in url on batch merge form ([11666](https://github.com/civicrm/civicrm-core/pull/11666)) (completes prior work)** This improves handling of criteria set in the URL for batch merges. - **[CRM-20811](https://issues.civicrm.org/jira/browse/CRM-20811) Schedule Reminders uses mixed terminology for Active state: Active? versus Send Email ([10602](https://github.com/civicrm/civicrm-core/pull/10602))** The option for whether a scheduled reminder is active is now displayed as a checkbox with "Scheduled Reminder Active" rather than "Send Email" or "Send email or SMS". - **CRM_Utils_Check - Soften messages for read-only extensionsDir ([11895](https://github.com/civicrm/civicrm-core/pull/11895))** When a site's extensions directory is not writable by the web server, the system check message now has a lower severity and explains the consequences rather than indicating that this is definitely a problem. - **Meld Address custom field display template with main custom field template ([11844](https://github.com/civicrm/civicrm-core/pull/11844))** The display for address custom fields now uses the main custom field template. - **[CRM-21784](https://issues.civicrm.org/jira/browse/CRM-21784) View custom data for recurring contributions ([11697](https://github.com/civicrm/civicrm-core/pull/11697))** This resolves a problem where custom data could be set for recurring contributions but could not be viewed outside of the API. ### CiviContribute - **[CRM-20610](https://issues.civicrm.org/jira/browse/CRM-20610) Replace payment details block with editable payment list on 'Edit Contribution' form ([10776](https://github.com/civicrm/civicrm-core/pull/10776))** The backend contribution edit form is now based on the same payment editing interface as events with multiple payments. - **Tweak layout on contribution view screen to make payments clearer ([11863](https://github.com/civicrm/civicrm-core/pull/11863))** When viewing a contribution on the back end, a table of payments now displays immediately below the total amount. ### CiviMail - **[CRM-20719](https://issues.civicrm.org/jira/browse/CRM-20719) Show warning on system status page if reply_id for mailing is not set to any default. ([10496](https://github.com/civicrm/civicrm-core/pull/10496))** This warns users if no auto-reply message is selected as default, as this will prevent CiviMail messages from being submitted. ### Drupal Integration - **Add activity created_date, modified_date and original_id fields to views ([525](https://github.com/civicrm/civicrm-drupal/pull/525))** ## <a name="bugs"></a>Bugs resolved ### Core CiviCRM - **[dev/core#83](https://lab.civicrm.org/dev/core/issues/83) Fix regression whereby relationship types option no longer in adv search ([12045](https://github.com/civicrm/civicrm-core/pull/12045))** - **Flush versionCheck cache when upgrading ([12034](https://github.com/civicrm/civicrm-core/pull/12034))** A recently-upgraded site will no longer potentially have a cached message indicating that an upgrade is needed. - **[dev/core#64](https://lab.civicrm.org/dev/core/issues/64) - In custom searches, column headings are being ignored ([12005](https://github.com/civicrm/civicrm-core/pull/12005))** This resolves a regression that displayed standard column headings on results of custom searches. - **Fix trigger generation for modified_date on custom data ([11984](https://github.com/civicrm/civicrm-core/pull/11984))** - **Phone: standardize appearance and translation of extension label ([11930](https://github.com/civicrm/civicrm-core/pull/11930))** - **[dev/core#16](https://lab.civicrm.org/dev/core/issues/16) Select "Enable multiple bulk email address for a contact", "hold_date" can not be updated ([11807](https://github.com/civicrm/civicrm-core/pull/11807) and [11884](https://github.com/civicrm/civicrm-core/pull/11884))** - **Handle eq (equals) operator in the report url ([11885](https://github.com/civicrm/civicrm-core/pull/11885))** When setting report filters via the URL, the `eq` operator now works like the others. It didn't work in past versions. - **Fix report form isTableSelected to treat relative date filters as filters ([11882](https://github.com/civicrm/civicrm-core/pull/11882))** - **[CRM-21842](https://issues.civicrm.org/jira/browse/CRM-21842) broken link ([11879](https://github.com/civicrm/civicrm-core/pull/11879))** Links to the "Installation and basic set-up" documentation page had errors. - **[dev/core#22](https://lab.civicrm.org/dev/core/issues/22) Unable to delete Smart Group ([11826](https://github.com/civicrm/civicrm-core/pull/11826))** This resolves a fatal error that would appear when attempting to delete a broken smart group. - **Fix template structures ([11818](https://github.com/civicrm/civicrm-core/pull/11818), [11839](https://github.com/civicrm/civicrm-core/pull/11839), [11851](https://github.com/civicrm/civicrm-core/pull/11851), [11862](https://github.com/civicrm/civicrm-core/pull/11862), and [11869](https://github.com/civicrm/civicrm-core/pull/11869))** This standardizes a number of page templates that didn't match the typical structure. - **Fix ajax error on rendering multi custom data tab when field limit reached ([11856](https://github.com/civicrm/civicrm-core/pull/11856))** - **Escape custom group title. ([11854](https://github.com/civicrm/civicrm-core/pull/11854))** This fixes a bug causing the display of multi-entry custom data sets when the set's title has an apostrophe in it. - **[CRM-20790](https://issues.civicrm.org/jira/browse/CRM-20790) Import Contacts, Current Employer (Employee of field) is not being imported at all ([11843](https://github.com/civicrm/civicrm-core/pull/11843)) (completes prior work)** Unit tests now ensure relationships are added on import. - **[dev/core#17](https://lab.civicrm.org/dev/core/issues/17) Convert Campaign Interview Task to use Pseudoconstant and remove PHP notices ([11809](https://github.com/civicrm/civicrm-core/pull/11809))** This replaces use of the deprecated `CRM_Core_OptionGroup::getValue()` with `CRM_Core_PseudoConstant::getKey()` and fixes PHP notices. - **[CRM-21838](https://issues.civicrm.org/jira/browse/CRM-21838) When CRM.alert falls back to standard JS alert it should strip html ([11797](https://github.com/civicrm/civicrm-core/pull/11797))** ### CiviContribute - **[CRM-21763](https://issues.civicrm.org/jira/browse/CRM-21763) Cannot record payment for only cents owed ([11668](https://github.com/civicrm/civicrm-core/pull/11668))** This resolves a bug where the sum of payments would be fractions of a cent off from the total amount due. A new utility subtracts currency amounts using the correct number of decimals for that currency. - **[CRM-21791](https://issues.civicrm.org/jira/browse/CRM-21791) Accounting batch closed by default when created in localized civicrm ([11878](https://github.com/civicrm/civicrm-core/pull/11878))** If an accounting batch is created in a site with a language other than US English, a bug caused the batch to start out closed. - **[dev/core#26](https://lab.civicrm.org/dev/core/issues/26) On behalf form fails to create new organisation ([11841](https://github.com/civicrm/civicrm-core/pull/11841))** - **[CRM-21807](https://issues.civicrm.org/jira/browse/CRM-21807) Deleted contacts included by default in Membership and contribution detail report. ([11727](https://github.com/civicrm/civicrm-core/pull/11727))** - **[CRM-21264](https://issues.civicrm.org/jira/browse/CRM-21264) print contribution in tabular format with group by contact not working ([11820](https://github.com/civicrm/civicrm-core/pull/11820))** ### CiviEvent - **Fix fatal error when selecting a $0 price option in change fee selection ([11934](https://github.com/civicrm/civicrm-core/pull/11934))** ### CiviMail - **[dev/mail#8](https://lab.civicrm.org/dev/mail/issues/8) Using ACL to restrict mailing recipients leads to fatal error ([11963](https://github.com/civicrm/civicrm-core/pull/11963))** - **[dev/core#25](https://lab.civicrm.org/dev/core/issues/25) Wrap split_jobs in a transaction ([11836](https://github.com/civicrm/civicrm-core/pull/11836))** The process of splitting mail jobs is now a database transaction, preventing other processes from potentially processing child jobs before it is finished. ### CiviMember - **[CRM-21711](https://issues.civicrm.org/jira/browse/CRM-21711) When updating multiple memberships thru a contribution page custom fields are only updated on one ([11586](https://github.com/civicrm/civicrm-core/pull/11586))** - **[CRM-19151](https://issues.civicrm.org/jira/browse/CRM-19151) Add / fix the Ability to merge memberships ([11298](https://github.com/civicrm/civicrm-core/pull/11298)) (initial work)** When merging contacts that each have memberships, one membership and all its data will be deleted unless you check the Add New box. Now, the surviving membership is updated to have the earliest Join Date and latest End Date of the two, and the Membership Status is recalculated. - **[CRM-19850](https://issues.civicrm.org/jira/browse/CRM-19850) Add a offline membership without 'record payment' option, later edit the membership and saving with 'record payment' option ([11087](https://github.com/civicrm/civicrm-core/pull/11087))** This resolves an error that failed to show the payment information when editing an unpaid membership and checking the "Record Payment" box. - **[dev/core#15](https://lab.civicrm.org/dev/core/issues/15) Wrong parameter passing in LineItem.php ([11816](https://github.com/civicrm/civicrm-core/pull/11816))** This addresses an intermittent bug where membership line items would refer to the wrong contribution. - **[CRM-21682](https://issues.civicrm.org/jira/browse/CRM-21682) Automatic membership renewal fixes ([11824](https://github.com/civicrm/civicrm-core/pull/11824) and [11825](https://github.com/civicrm/civicrm-core/pull/11825))** - **“Deceased” status could be translated ([11890](https://github.com/civicrm/civicrm-core/pull/11890))** The membership status update job would look for the status labeled "Deceased", which may be translated. ### Drupal Integration - **[dev/core#83](https://lab.civicrm.org/dev/core/issues/18) Log tables for CiviCRM Drupal Modules can cause WSODs after running upgrades when re-calculating ([11865](https://github.com/civicrm/civicrm-core/pull/11865))** ### Joomla Integration - **[CRM-21348](https://issues.civicrm.org/jira/browse/CRM-21348) Don't hide the "edit" link from logged-in users in profile listings in joomla front-end. ([11199](https://github.com/civicrm/civicrm-core/pull/11199))** - **[CRM-21203](https://issues.civicrm.org/jira/browse/CRM-21203) cli.php PHP error prevents cron jobs from running ([11609](https://github.com/civicrm/civicrm-core/pull/11609)) (completes prior work)** ### WordPress Integration - **[CRM-21277](https://issues.civicrm.org/jira/browse/CRM-21277) CRM_Utils_System_WordPress::validInstallDir spams log with warnings when open_basedir restriction is in effect ([11086](https://github.com/civicrm/civicrm-core/pull/11086))** ## <a name="misc"></a>Miscellany - **Increment minimum upgradable version ([11864](https://github.com/civicrm/civicrm-core/pull/11864))** New versions of CiviCRM no longer contain code facilitating a direct upgrade from versions before 4.1.3. Older sites attempting to upgrade should upgrade to one or more intermediate versions before upgrading to 5.1.0. - **(NFC) make (includes taxes) translation work ([11927](https://github.com/civicrm/civicrm-core/pull/11927))** - **Extract fetchRelationshipDetails function ([11918](https://github.com/civicrm/civicrm-core/pull/11918))** - **NFC Minor comments cleanup on MembershipType ([11909](https://github.com/civicrm/civicrm-core/pull/11909))** - **Remove cloning hack from export and add unit tests ([11703](https://github.com/civicrm/civicrm-core/pull/11703))** - **NFC Fix function name typo ([11888](https://github.com/civicrm/civicrm-core/pull/11888))** - **[NFC] Fix mispelled variable and simplify a couple of other vars ([11886](https://github.com/civicrm/civicrm-core/pull/11886))** - **[NFC] remove unused vars ([11874](https://github.com/civicrm/civicrm-core/pull/11874))** - **CiviUnitTestCase - Extract Api3TestTrait and Api3DocTrait ([11872](https://github.com/civicrm/civicrm-core/pull/11872))** - **Consolidate CustomData code into shared tpl ([11857](https://github.com/civicrm/civicrm-core/pull/11857))** - **[nfc] Add test for thousand separators on import ([11859](https://github.com/civicrm/civicrm-core/pull/11859))** - **[nfc] Minor test tidy ups ([11860](https://github.com/civicrm/civicrm-core/pull/11860))** - **[NFC] fix line endings, using windows line endings, change to 'unix ([11858](https://github.com/civicrm/civicrm-core/pull/11858))** - **NFC reformat whitespace in Email.tpl files ([11842](https://github.com/civicrm/civicrm-core/pull/11842))** - **Version check test: in alphas don't test for site stats not provided for alphas ([11831](https://github.com/civicrm/civicrm-core/pull/11831))** - **Fix style warnings ([526](https://github.com/civicrm/civicrm-drupal/pull/526))** - **add GitHub PR template and Contributing templates to WP repo ([127](https://github.com/civicrm/civicrm-wordpress/pull/127))** ## <a name="credits"></a>Credits This release was developed by the following code authors: AGH Strategies - Alice Frumin, Andrew Hunt, Eli Lisseck; Agileware - Agileware Team, Alok Patel, Francis Whittle, Justin Freeman; Andrew Thompson; Australian Greens - Seamus Lee; CiviCRM - Coleman Watts, Tim Otten; CiviDesk - Yashodha Chaku; CompuCorp - Michael Devery, Mukesh Ram; Coop SymbioTIC - Samuel Vanhove; Davis Media Access - Darrick Servis; Fuzion - Jitendra Purohit; JMA Consulting - Monish Deb; Joinery - Allen Shaw; Kompetenzzentrum Technik-Diversity-Chancengleichheit - Niels Heinemann; Left Join Labs - Sean Madsen; Megaphone Technology Consulting - Jon Goldberg; MJW Consulting - Matthew Wire; Naomi Rosenberg; Olivier Tétard; Oxfam Germany - Yuliyana Liyana; Tadpole Collective - Kevin Cristiano; Wikimedia Foundation - Eileen McNaughton Most authors also reviewed code for this release; in addition, the following reviewers contributed their comments: Ben Jarlett; British Humanist Association - Andrew West; Chris Burgess; Christian Wach; CiviDesk - Sunil Pawar; Community Builders - Andrew Perry; CompuCorp - Jamie Novick; Coop SymbioTIC - Mathieu Lutfy; David Hepper; DevApp - Adam Kwiatkowski; Donald Hirst; Francesc Bassas i Bullich; Fuzion - Peter Davis; Ginkgo Street Labs - Frank Gómez; JMA Consulting - Monish Deb; Johan Vervloet; John Kingsnorth; Korlon - Stuart Gaston; Lemniscus - Noah Miller; Lighthouse Design and Consulting - Brian Shaughnessy; Lorenzo Ardizzone; Lyons Digital Media - Barbara Forbes-Lyons; Marcello Gribaudo; National Democratic Institute - Evan Summers; Neil Zampella; Nicol Wistreich; Pratik Joshi; Progressive Technology Project - Jamie McClelland; Responsive Development Technologies - Thomas Nilefalk; Richard Edgar; SEN Magazine - Jeremy Nicholls; Skvare - Mark Hanna; small biz ## <a name="feedback"></a>Feedback These release notes are edited by Andrew Hunt. If you'd like to provide feedback on them, please login to https://chat.civicrm.org/civicrm and contact `@agh1`.