# CiviCRM 4.7.31 Released March 7, 2018 - **[Synopsis](#synopsis)** - **[Features](#features)** - **[Bugs resolved](#bugs)** - **[Miscellany](#misc)** - **[Credits](#credits)** - **[Feedback](#feedback)** ## Synopsis | *Does this version...?* | | |:--------------------------------------------------------------- |:-------:| | Fix security vulnerabilities? | no | | **Change the database schema?** | **yes** | | **Alter the API?** | **yes** | | **Require attention to configuration options?** | **yes** | | **Fix problems installing or upgrading to a previous version?** | **yes** | | **Introduce features?** | **yes** | | **Fix bugs?** | **yes** | ## Features ### Core CiviCRM - **[CRM-21244](https://issues.civicrm.org/jira/browse/CRM-21244) Enhancements to "FROM email addresses" ([11047](https://github.com/civicrm/civicrm-core/pull/11047))** A variety of changes have been made to the email addresses available as the "From" address for system messages. The Organization Address and Contact Info form no longer has a field for selecting the From email address--this is now editable by choosing a default on the From Email Addresses page. The PDF letter task now allows selecting the from email address. You can also now choose whether to add the logged-in contact's email address to the list of from email addresses. If users' addresses are from other domains, they can have deliverability problems if the domain uses SPF or DMARC. Additionally, this refactors and centralizes a lot of the code regarding from email addresses. - **[CRM-21573](https://issues.civicrm.org/jira/browse/CRM-21573) Allow to disable sending of email from activity source contact email for receipt ([11424](https://github.com/civicrm/civicrm-core/pull/11424))** Now activity notifications will not send from the source contact's email address if the site is not set to allow emails from the logged-in contact. - **[CRM-21719](https://issues.civicrm.org/jira/browse/CRM-21719) Require Multibyte PHP Extension ([11612](https://github.com/civicrm/civicrm-core/pull/11612) and [11599](https://github.com/civicrm/civicrm-core/pull/11599))** The Multibyte String PHP function support is now a requirement for installing CiviCRM. - **[CRM-21225](https://issues.civicrm.org/jira/browse/CRM-21225) Add a new field, Profile Title so that the Profile Name does not serve a dual purpose of labelling the Profile and displaying the Title for the Profile fields publicly ([11508](https://github.com/civicrm/civicrm-core/pull/11508) and [11503](https://github.com/civicrm/civicrm-core/pull/11503))** Profiles can now be given a public title to display on frontend forms that is distinct from the name for internal purposes. - **[CRM-21654](https://issues.civicrm.org/jira/browse/CRM-21654) Support custom file field on Batch Entry Profile ([11520](https://github.com/civicrm/civicrm-core/pull/11520))** File fields are no longer suppressed when batch editing data using a profile, and if the field currently has a file, the form displays its name. - **[CRM-21751](https://issues.civicrm.org/jira/browse/CRM-21751) Move SMS provider ID to 'Select Recipients' page from 'SMS content' ([11656](https://github.com/civicrm/civicrm-core/pull/11656))** The field for choosing the SMS provider now appears before the recipient selection fields. - **[CRM-20769](https://issues.civicrm.org/jira/browse/CRM-20769) Allow for Button Text on profiles to be overriden in settings ([11598](https://github.com/civicrm/civicrm-core/pull/11598)) (completes previous work)** The profile quick editor now allows setting the cancel and submit button text. - **[CRM-21540](https://issues.civicrm.org/jira/browse/CRM-21540) Add support for auto-complete fields in the batch entry forms ([11398](https://github.com/civicrm/civicrm-core/pull/11398))** Auto-complete fields in a profile can now be edited when batch editing data. - **[CRM-21621](https://issues.civicrm.org/jira/browse/CRM-21621) Provide ability to delete first website field ([11480](https://github.com/civicrm/civicrm-core/pull/11480))** A trashcan link now allows all websites to be removed from a contact. - **[CRM-21750](https://issues.civicrm.org/jira/browse/CRM-21750) Add support for addressee_id, email_greeting_id, postal_greeting_id to api Contact.get ([11654](https://github.com/civicrm/civicrm-core/pull/11654))** Greeting type ids can now be filtered in the Contact API. - **[CRM-21707](https://issues.civicrm.org/jira/browse/CRM-21707) Handle metadata based serialisation in apiv3 basic_create_fallover ([11648](https://github.com/civicrm/civicrm-core/pull/11648), [11607](https://github.com/civicrm/civicrm-core/pull/11607), and [11583](https://github.com/civicrm/civicrm-core/pull/11583))** The standard function for Create actions in the API now uses the serialization metadata to format multiple values for saving. - **[CRM-21140](https://issues.civicrm.org/jira/browse/CRM-21140) Agree & (if applicable) implement approach to storing extension data for entities / tables ([11567](https://github.com/civicrm/civicrm-core/pull/11567)) (preliminary work)** The API can now be used to create custom data sets for profiles, price sets, and payment tokens. This is envisioned as a way for extension writers to store extended data about these entities. - **[CRM-21674](https://issues.civicrm.org/jira/browse/CRM-21674) Allow proximity search to accept lat & long at the BAO/api level & custom search form ([11542](https://github.com/civicrm/civicrm-core/pull/11542))** Proximity search via the API or custom search now accepts a latitude/longitude combination as an alternative to an address to use as the center point. - **[CRM-21717](https://issues.civicrm.org/jira/browse/CRM-21717) Allow for selecting multiple relationship types in advanced search ([11595](https://github.com/civicrm/civicrm-core/pull/11595))** Advanced Search now allows for searching for contacts with one of multiple specified relationship types. - **[CRM-21634](https://issues.civicrm.org/jira/browse/CRM-21634) Standardise component search options for contact fields, add contact type ([11492](https://github.com/civicrm/civicrm-core/pull/11492) and [11538](https://github.com/civicrm/civicrm-core/pull/11538))** Contact fields on the search forms for contributions, pledges, memberships, and participants now share a common structure in both appearance and code. - **[CRM-21020](https://issues.civicrm.org/jira/browse/CRM-21020) alterMailContent hook: pass additional contextual details ([10815](https://github.com/civicrm/civicrm-core/pull/10815))** When a message is sent via a template, additional details about the template are provided to functions invoking `hook_civicrm_alterMailContent`. - **Add API parameter for fix_address ([11372](https://github.com/civicrm/civicrm-core/pull/11372))** When saving an address using the API, you can now bypass a handful of fixes that normally get applied. - **[CRM-21741](https://issues.civicrm.org/jira/browse/CRM-21741) For in-place editing, allow data-params to be passed to CRM.api3 ([11639](https://github.com/civicrm/civicrm-core/pull/11639))** Fields enabled for in-place editing can now specify additional API parameters to be sent when saving updates. ### CiviCampaign - **[CRM-21593](https://issues.civicrm.org/jira/browse/CRM-21593) New order by options for WalkList Report ([11449](https://github.com/civicrm/civicrm-core/pull/11449))** The Walk / Phone List Report now can be sorted by street name, street number, and whether the street number is odd or even. ### CiviCase - **[CRM-21461](https://issues.civicrm.org/jira/browse/CRM-21461) Case Dashlet enhancement ([11304](https://github.com/civicrm/civicrm-core/pull/11304))** The Case Dashboard, My Cases dashlet, and All Cases dashlet now use DataTables to display results. This allows easy sorting and filtering of results among other improvements. - **[CRM-21498](https://issues.civicrm.org/jira/browse/CRM-21498) Option to Change Status of Linked Cases ([11350](https://github.com/civicrm/civicrm-core/pull/11350))** When changing the status of a case, you now have the option to update the status of all linked cases. - **[CRM-21520](https://issues.civicrm.org/jira/browse/CRM-21520) Add Action on Contact Search to Add Contacts to a Case ([11371](https://github.com/civicrm/civicrm-core/pull/11371))** Contacts selected from search results can now be added in bulk with a selected case role to a selected case. ### CiviContribute - **[EXT-56](https://issues.civicrm.org/jira/browse/EXT-56) - Add com.iatspayments.civicrm to tarballs ([11052](https://github.com/civicrm/civicrm-core/pull/11052))** The iATS payment processor is now included in core CiviCRM. - **[CRM-21722](https://issues.civicrm.org/jira/browse/CRM-21722) Payment processor check configuration - improved message in UI ([11604](https://github.com/civicrm/civicrm-core/pull/11604))** A payment processor's configuration is now checked as part of the validation of the payment processor configuration form. - **[CRM-21256](https://issues.civicrm.org/jira/browse/CRM-21256) Payment processor contribution page performance improvement ([11563](https://github.com/civicrm/civicrm-core/pull/11563))** The list of available payment processors is now fetched once rather than several times per contribution page load. - **[CRM-21511](https://issues.civicrm.org/jira/browse/CRM-21511) Add recurring contribution to membership detail and contribution ([11555](https://github.com/civicrm/civicrm-core/pull/11555) and [11365](https://github.com/civicrm/civicrm-core/pull/11365))** When viewing a contribution or membership with a recurring contribution, there is now a link to view the recurring contribution. - **[CRM-21050](https://issues.civicrm.org/jira/browse/CRM-21050) Use datepicker for all date fields used in contribution backoffice form ([10841](https://github.com/civicrm/civicrm-core/pull/10841))** The receive date, thank you date, receipt date, and cancel/refund date fields now use `datepicker` instead of `jcalendar`. - **[CRM-21343](https://issues.civicrm.org/jira/browse/CRM-21343) Search Contributions by Cancel Date and Cancel Reason ([11638](https://github.com/civicrm/civicrm-core/pull/11638))** Find Contribution and Advanced Search now allow searching for contributions by cancellation reason and date. - **[CRM-21635](https://issues.civicrm.org/jira/browse/CRM-21635) Expose contact custom data on contribution summary report ([11494](https://github.com/civicrm/civicrm-core/pull/11494))** The Contribution Summary Report can now use contact custom fields as filters or displayed in columns. - **[CRM-20614](https://issues.civicrm.org/jira/browse/CRM-20614) Do not Download Export file for Financial Batch ([10393](https://github.com/civicrm/civicrm-core/pull/10393))** A financial batch export can be set using the API or custom extension to not automatically download the file. ### CiviMail - **[CRM-21546](https://issues.civicrm.org/jira/browse/CRM-21546) Implement unique opens filter for mailing opened report ([11401](https://github.com/civicrm/civicrm-core/pull/11401))** A new option on the Mailing Opened Report toggles displaying all open events and all recipients who have opened the message. ### CiviMember - **[CRM-21512](https://issues.civicrm.org/jira/browse/CRM-21512) Remove restriction on "update subscription" when linked to membership ([11366](https://github.com/civicrm/civicrm-core/pull/11366))** Members with autorenewal enabled can now edit the recurring contribution to change the amount or number of installments. They will be warned that the recurring contribution is linked to a membership. - **[CRM-21688](https://issues.civicrm.org/jira/browse/CRM-21688) Use fontawesome to show membership auto-renew status and and error indicator ([11561](https://github.com/civicrm/civicrm-core/pull/11561))** Icons for membership autorenewal now use the Font Awesome library, and a new icon indicates memberships that were set to autorenew but have a canceled recurring contribution. ### Drupal Integration - **[CRM-21226](https://issues.civicrm.org/jira/browse/CRM-21226) Add view filter handler for contact reference custom field ([508](https://github.com/civicrm/civicrm-drupal/pull/508))** Contact reference custom fields used as views filters can now filter on strings in the sort name in addition to the contact ID of the referenced contact. - **[CRM-20822](https://issues.civicrm.org/jira/browse/CRM-20822) Expose tag parent id in views ([459](https://github.com/civicrm/civicrm-drupal/pull/459))** Views can now display, filter, and sort by parent tag ID or name. - **[CRM-21758](https://issues.civicrm.org/jira/browse/CRM-21758) Add event "created_id" to Drupal Views ([519](https://github.com/civicrm/civicrm-drupal/pull/519))** Views can now display, filter, and sort by the contact who created an event. Relationships can be added to the contact. ### WordPress Integration - **[CRM-16421](https://issues.civicrm.org/jira/browse/CRM-16421) Work to get CiviCRM for WordPress in WordPress' official Repository ([11576](https://github.com/civicrm/civicrm-core/pull/11576), [121](https://github.com/civicrm/civicrm-wordpress/pull/121), and [122](https://github.com/civicrm/civicrm-wordpress/pull/122)) (continues previous work)** Sites about to install CiviCRM can now indicate whether to use the new installer library by the presence of a file named `.use-civicrm-setup`. A new tarball will be generated for each version of CiviCRM named `civicrm-*-wporg.zip`. This new tarball will be equivalent to the `civicrm-*-wordpress.zip` files except that it uses the new installer and displays a series of opt-ins in order to satisfy WordPress.org requirements. ## Bugs resolved ### Core CiviCRM - **[CRM-21715](https://issues.civicrm.org/jira/browse/CRM-21715) Activity Report: move the SQL creation to a buildQuery function ([11584](https://github.com/civicrm/civicrm-core/pull/11584))** This resolves a fatal error that would appear when exporting to CSV from the Activity Report. - **[CRM-21334](https://issues.civicrm.org/jira/browse/CRM-21334) Fire hooks on contact image deletion ([11163](https://github.com/civicrm/civicrm-core/pull/11163))** The expected hooks are triggered when deleting a contact image. - **[CRM-21701](https://issues.civicrm.org/jira/browse/CRM-21701) street addresses are not reliably parsed ([11579](https://github.com/civicrm/civicrm-core/pull/11579))** Street addresses are now parsed whenever they're edited if address parsing is enabled. Previously, this was only done if USPS address standardization was enabled. - **[CRM-21629](https://issues.civicrm.org/jira/browse/CRM-21629) Resource URL status check gets false positive when blank user agents are blocked ([11488](https://github.com/civicrm/civicrm-core/pull/11488))** The system check for verifying resource URLs now sets a user agent header when making HTTP requests to the server. - **[CRM-21591](https://issues.civicrm.org/jira/browse/CRM-21591) PHP 7.1 issue Non well form numeric value encountered when viewing the misc settings screen ([11505](https://github.com/civicrm/civicrm-core/pull/11505) and [11447](https://github.com/civicrm/civicrm-core/pull/11447))** - **[CRM-21618](https://issues.civicrm.org/jira/browse/CRM-21618) Add missing structure in templates ([11478](https://github.com/civicrm/civicrm-core/pull/11478) and [11457](https://github.com/civicrm/civicrm-core/pull/11457))** Several form templates with nonstandard markup have been updated slightly. - **[CRM-8140](https://issues.civicrm.org/jira/browse/CRM-8140) Not possible to select fields for export when using Custom Searches ([11458](https://github.com/civicrm/civicrm-core/pull/11458))** - **[CRM-21616](https://issues.civicrm.org/jira/browse/CRM-21616) sql metadata is being lost when calling the report from the api ([11476](https://github.com/civicrm/civicrm-core/pull/11476))** When retrieving a report via the API, the SQL query is now reliably provided if requested. - **[CRM-21670](https://issues.civicrm.org/jira/browse/CRM-21670) Search of active relationships does not appear on Relationship Report ([11537](https://github.com/civicrm/civicrm-core/pull/11537))** This restores the filter in the Relationship Report for a relationship's active period. The filter had been removed accidentally in a past improvement. - **[CRM-20996](https://issues.civicrm.org/jira/browse/CRM-20996) Copy profile from wizard duplicates 'name' in database ([11597](https://github.com/civicrm/civicrm-core/pull/11597))** This ensures that the profile machine name is unique when copying profiles. A database error would result when copying profiles while editing events or contribution pages. - **[dev/core#2](https://lab.civicrm.org/dev/core/issues/2) Display Inbound Email: linefeed suppressed ([11661](https://github.com/civicrm/civicrm-core/pull/11661))** When viewing an activity, the Details field now displays line breaks that are in the original. This is important in viewing the text of inbound email activities. - **[CRM-21738](https://issues.civicrm.org/jira/browse/CRM-21738) Merges not copying viewOnly data (regression but not recent) ([11636](https://github.com/civicrm/civicrm-core/pull/11636))** View-only custom data was not copying to the merged contact when merging two contacts. - **[CRM-21742](https://issues.civicrm.org/jira/browse/CRM-21742) Use form validation rather than Exception handling for proximity seach ([11643](https://github.com/civicrm/civicrm-core/pull/11643))** Custom searches now support validation, the proximity search is now configured to display validation errors rather than a cause a full-blown exception when geocoding fails. - **[CRM-19784](https://issues.civicrm.org/jira/browse/CRM-19784) Yahoo Placefinder service appears to have EOL'ed ([11540](https://github.com/civicrm/civicrm-core/pull/11540))** Support is removed for the now-defunct Yahoo geocoding service. - **[CRM-21737](https://issues.civicrm.org/jira/browse/CRM-21737) New option value validation is too tight for languages ([11633](https://github.com/civicrm/civicrm-core/pull/11633))** Option values for language now only need to have a unique name rather than a unique value. - **Website api - fix nonstandard BAO delete method ([11625](https://github.com/civicrm/civicrm-core/pull/11625))** Deleting a website now uses a standard method that invokes all the usual hooks. - **Use mb_strlen() in ellipsify() to avoid excessive multibyte truncation ([11594](https://github.com/civicrm/civicrm-core/pull/11594))** This resolves problems truncating text with multibyte characters to a shorter length than intended. - **[CRM-21524](https://issues.civicrm.org/jira/browse/CRM-21524) CiviCRM exports (postal) mailing lists including Contacts clearly marked is_deceased in the database ([11527](https://github.com/civicrm/civicrm-core/pull/11527))** This ensures that exports suppress deceased and "do not mail" contacts prior to merging rows with the same address. Previously, contacts sharing an address with a deceased contact in the same search result would be merged with them in the results. - **[CRM-21687](https://issues.civicrm.org/jira/browse/CRM-21687) MariaDB 10.2 and logging: log_civicrm_activity schema syntax error ([11580](https://github.com/civicrm/civicrm-core/pull/11580))** - **[CRM-21651](https://issues.civicrm.org/jira/browse/CRM-21651) Contact :: New Email/SMS : loading failed when no contact is found ([11506](https://github.com/civicrm/civicrm-core/pull/11506))** - **[CRM-21669](https://issues.civicrm.org/jira/browse/CRM-21669) Consistent wording for "Email - Send now" task ([11535](https://github.com/civicrm/civicrm-core/pull/11535))** - **[CRM-21613](https://issues.civicrm.org/jira/browse/CRM-21613) Search issues on 'Manage Tag' page ([11510](https://github.com/civicrm/civicrm-core/pull/11510) and [11467](https://github.com/civicrm/civicrm-core/pull/11467))** - **[CRM-21444](https://issues.civicrm.org/jira/browse/CRM-21444) Empty field at form "Add rule for..." merge duplicate contacts ([11523](https://github.com/civicrm/civicrm-core/pull/11523))** The contact type options when creating a dedupe rule would not appear when in a language other than English. - **[CRM-21533](https://issues.civicrm.org/jira/browse/CRM-21533) Outbound setting reverts in non-production sites on executing sched job ([11393](https://github.com/civicrm/civicrm-core/pull/11393))** This resolves a bug where running a scheduled job on a site in development mode would re-enable outbound mail. - **[CRM-17352](https://issues.civicrm.org/jira/browse/CRM-17352) Backbone no-conflict ([11504](https://github.com/civicrm/civicrm-core/pull/11504) and [198](https://github.com/civicrm/civicrm-packages/pull/198))** CiviCRM now uses Backbone.js in `noConflict` mode to prevent conflicts if the CMS has its own copy of the library. - **[CRM-21644](https://issues.civicrm.org/jira/browse/CRM-21644) Preferred Communication Method is not set to default for contact ([11499](https://github.com/civicrm/civicrm-core/pull/11499))** A contact's Preferred Communication Method field now defaults to its current value when included in a profile. - **[CRM-18300](https://issues.civicrm.org/jira/browse/CRM-18300) "Permission denied" message re contact on CiviCRM dashboard ([11470](https://github.com/civicrm/civicrm-core/pull/11470))** - **[CRM-21614](https://issues.civicrm.org/jira/browse/CRM-21614) Tag UI doesn't appear to respect reserved tags permission ([11469](https://github.com/civicrm/civicrm-core/pull/11469))** This resolves a problem where a non-privileged user editing a reserved tag would appear to be able to make edits, but the edits would not take effect. - **[CRM-21744](https://issues.civicrm.org/jira/browse/CRM-21744) Fix proximity custom search to work with smart groups ([11645](https://github.com/civicrm/civicrm-core/pull/11645))** - **[CRM-21159](https://issues.civicrm.org/jira/browse/CRM-21159) Address fields cause DB errors when adding contacts to group from Search Builder ([11524](https://github.com/civicrm/civicrm-core/pull/11524) and [11422](https://github.com/civicrm/civicrm-core/pull/11422))** - **[CRM-14834](https://issues.civicrm.org/jira/browse/CRM-14834) Activity Export with Relationships incurs fatal error ([11526](https://github.com/civicrm/civicrm-core/pull/11526))** - **[CRM-18048](https://issues.civicrm.org/jira/browse/CRM-18048) Activity Report fatal error when including custom field set with long name ([11183](https://github.com/civicrm/civicrm-core/pull/11183))** ### CiviCampaign - **[CRM-21602](https://issues.civicrm.org/jira/browse/CRM-21602) Disable/Enable Campaign not working ([11466](https://github.com/civicrm/civicrm-core/pull/11466))** The loading icon would not stop when working with the listings of campaigns, surveys, and petitions. - **[CRM-21663](https://issues.civicrm.org/jira/browse/CRM-21663) Fix Campaign Search and result structure ([11528](https://github.com/civicrm/civicrm-core/pull/11528))** ### CiviCase - **[CRM-21760](https://issues.civicrm.org/jira/browse/CRM-21760) Manager Name is missing in 'Find Cases' search list ([11665](https://github.com/civicrm/civicrm-core/pull/11665))** - **[CRM-21730](https://issues.civicrm.org/jira/browse/CRM-21730) postProcess() hook don't receive case id after submitting "New Case" form ([11618](https://github.com/civicrm/civicrm-core/pull/11618))** - **[CRM-21704](https://issues.civicrm.org/jira/browse/CRM-21704) Do Not allow a case type that is reserved to be deleted or disabled. ([11581](https://github.com/civicrm/civicrm-core/pull/11581))** ### CiviContribute - **[CRM-17647](https://issues.civicrm.org/jira/browse/CRM-17647) Recording payment truncates the amount after the comma (whether thousands or decimal separator) ([11539](https://github.com/civicrm/civicrm-core/pull/11539), [11646](https://github.com/civicrm/civicrm-core/pull/11646), [11575](https://github.com/civicrm/civicrm-core/pull/11575), [11574](https://github.com/civicrm/civicrm-core/pull/11574), [11554](https://github.com/civicrm/civicrm-core/pull/11554), [11547](https://github.com/civicrm/civicrm-core/pull/11547), and [11541](https://github.com/civicrm/civicrm-core/pull/11541))** Monetary amounts are now more consistently cleaned in the form layer. - **[CRM-21323](https://issues.civicrm.org/jira/browse/CRM-21323) Fix backend credit card payment processor selection ([11530](https://github.com/civicrm/civicrm-core/pull/11530))** This resolves a problem when a backend credit card contribution form fails validation: the first payment processor listed would load instead of the one selected. - **[CRM-20625](https://issues.civicrm.org/jira/browse/CRM-20625) Better Payment Processor extension error handling ([11631](https://github.com/civicrm/civicrm-core/pull/11631))** This resolves a problem where CiviCRM would crash attempting to load a payment processor provided by a disabled or missing extension. - **[CRM-21698](https://issues.civicrm.org/jira/browse/CRM-21698) On some systems recording a negative contribution results in a $0 contribution ([11577](https://github.com/civicrm/civicrm-core/pull/11577))** - **[dev/core#1](https://lab.civicrm.org/dev/core/issues/1) Allow to search for "in progress" contributions ([11640](https://github.com/civicrm/civicrm-core/pull/11640))** The "in progress" and "overdue" statuses are now available for searching contributions. - **Amount and source could exceed max length of subject column ([11593](https://github.com/civicrm/civicrm-core/pull/11593))** The activity corresponding to a contribution is given a subject based upon the contribution source and amount. Since the combined string could be longer than the activity subject field's maximum length, this truncates it with an ellipsis. - **[CRM-21721](https://issues.civicrm.org/jira/browse/CRM-21721) Notice : Division by zero ([11623](https://github.com/civicrm/civicrm-core/pull/11623) and [11601](https://github.com/civicrm/civicrm-core/pull/11601))** This resolves a PHP notice that would appear when submitting a $0.00 contribution using a price set. - **[CRM-21684](https://issues.civicrm.org/jira/browse/CRM-21684) contact subtype fields prevent inclusion in profile/receipt email ([11559](https://github.com/civicrm/civicrm-core/pull/11559))** This resolves a problem where adding a subtype-specific custom field to a profile prevents any fields from the profile being included in receipts. - **[CRM-21647](https://issues.civicrm.org/jira/browse/CRM-21647) Fatal error on deleting any contribution record ([11500](https://github.com/civicrm/civicrm-core/pull/11500))** - **[CRM-21580](https://issues.civicrm.org/jira/browse/CRM-21580) exporting financial batch fails when label of batch statuses changed ([11434](https://github.com/civicrm/civicrm-core/pull/11434))** - **[CRM-21589](https://issues.civicrm.org/jira/browse/CRM-21589) "Repeat Contributions" report ignores sort ([11446](https://github.com/civicrm/civicrm-core/pull/11446))** - **[CRM-20676](https://issues.civicrm.org/jira/browse/CRM-20676) Tax applied repeatedly on edits of price set events ([11655](https://github.com/civicrm/civicrm-core/pull/11655) and [11461](https://github.com/civicrm/civicrm-core/pull/11461)) (completes previous work)** - **[CRM-19752](https://issues.civicrm.org/jira/browse/CRM-19752) Slow query created by financial type acls ([11621](https://github.com/civicrm/civicrm-core/pull/11621) and [9746](https://github.com/civicrm/civicrm-core/pull/9746))** - **[CRM-21665](https://issues.civicrm.org/jira/browse/CRM-21665) Check Number show hide not working ([11611](https://github.com/civicrm/civicrm-core/pull/11611))** - **[CRM-21155](https://issues.civicrm.org/jira/browse/CRM-21155) Hook batchItems does not change the csv export ([10951](https://github.com/civicrm/civicrm-core/pull/10951))** - **[CRM-19107](https://issues.civicrm.org/jira/browse/CRM-19107) PayPal Button Error ([11474](https://github.com/civicrm/civicrm-core/pull/11474))** The PayPal Express button now reliably sends the donor to PayPal rather than submitting the contribution form. - **[CRM-21609](https://issues.civicrm.org/jira/browse/CRM-21609) PayPal Pro IPN code no longer respects changed recurring amount ([11463](https://github.com/civicrm/civicrm-core/pull/11463))** - **[CRM-21728](https://issues.civicrm.org/jira/browse/CRM-21728) Intermittant fatal on pcp.create api ([11606](https://github.com/civicrm/civicrm-core/pull/11606))** - **[CRM-21664](https://issues.civicrm.org/jira/browse/CRM-21664) Contributions creation result in error for certain currencies ([11533](https://github.com/civicrm/civicrm-core/pull/11533))** Currency validation now uses the `civicrm_currency` table rather than a hard-coded list of values. - **[CRM-21528](https://issues.civicrm.org/jira/browse/CRM-21528) top donor report: add2group error ([11482](https://github.com/civicrm/civicrm-core/pull/11482))** - **[CRM-20866](https://issues.civicrm.org/jira/browse/CRM-20866) Soft credit appearance inconsistent in contribution search ([11433](https://github.com/civicrm/civicrm-core/pull/11433))** This resolves problems when changing the option for displaying soft credits during a series of contribution searches. ### CiviEvent - **[CRM-21771](https://issues.civicrm.org/jira/browse/CRM-21771) error when viewing event registration with linked contribution ([11749](https://github.com/civicrm/civicrm-core/pull/11749))** - **[CRM-21623](https://issues.civicrm.org/jira/browse/CRM-21623) Smart Group Relative Date not saving for some fields in Advance Search. ([11486](https://github.com/civicrm/civicrm-core/pull/11486))** - **[CRM-21743](https://issues.civicrm.org/jira/browse/CRM-21743) Creating an event template from existing one does not work ([11644](https://github.com/civicrm/civicrm-core/pull/11644))** This resolves a problem where using an event template to create a new event template would result in creating a new event instead. - **[CRM-21071](https://issues.civicrm.org/jira/browse/CRM-21071) Event Location Tab: Second Email and Phone fields broken ([11568](https://github.com/civicrm/civicrm-core/pull/11568))** ### CiviMail - **[CRM-21759](https://issues.civicrm.org/jira/browse/CRM-21759) mailing template selector missing ([11676](https://github.com/civicrm/civicrm-core/pull/11676))** This restores the field to select a template when composing a CiviMail message. It had gone missing in 4.7.30. - **[CRM-21683](https://issues.civicrm.org/jira/browse/CRM-21683) Mailing summary breaks on mailing names with apostrophes ([11557](https://github.com/civicrm/civicrm-core/pull/11557))** The mailing name filter in the Mailing Summary Report now uses a standard filter, resolving problems with using an apostrophe in the search text. - **[CRM-21260](https://issues.civicrm.org/jira/browse/CRM-21260) and [CRM-21316](https://issues.civicrm.org/jira/browse/CRM-21316) CiviMail compose UI very slow to initialize when many mailing groups, past mailings and templates ([11142](https://github.com/civicrm/civicrm-core/pull/11142) and [11558](https://github.com/civicrm/civicrm-core/pull/11558))** The process of building recipient lists for CiviMail has been refactored to be simpler and faster. - **[CRM-21521](https://issues.civicrm.org/jira/browse/CRM-21521) Bounce processing exception: no such property 'text' ([11390](https://github.com/civicrm/civicrm-core/pull/11390))** This correctly handles bounce messages that have nested multipart parts. - **[CRM-21749](https://issues.civicrm.org/jira/browse/CRM-21749) [obscure intra-rc regression] Mailing api no longer respecting '_skip_evil_bao_auto_schedule_' ([11653](https://github.com/civicrm/civicrm-core/pull/11653))** ### CiviMember - **[CRM-20707](https://issues.civicrm.org/jira/browse/CRM-20707) membership inheritance does not update start/end dates ([10485](https://github.com/civicrm/civicrm-core/pull/10485))** - **[CRM-21554](https://issues.civicrm.org/jira/browse/CRM-21554) Offline Credit Card Membership Renewal not showing any error message on failure ([11408](https://github.com/civicrm/civicrm-core/pull/11408))** - **[CRM-21485](https://issues.civicrm.org/jira/browse/CRM-21485) Tax not added when renewing membership in backend ([11459](https://github.com/civicrm/civicrm-core/pull/11459))** - **[CRM-21612](https://issues.civicrm.org/jira/browse/CRM-21612) Membership Payment not recorded for recurring contribution when status label is changed. ([11465](https://github.com/civicrm/civicrm-core/pull/11465))** - **[CRM-21724](https://issues.civicrm.org/jira/browse/CRM-21724) Receipt for membership contribution sending custom fields for wrong membership type ([11605](https://github.com/civicrm/civicrm-core/pull/11605))** - **[CRM-21656](https://issues.civicrm.org/jira/browse/CRM-21656) Backend Membership with Priceset applies taxes twice to line_item ([11521](https://github.com/civicrm/civicrm-core/pull/11521))** - **[CRM-19920](https://issues.civicrm.org/jira/browse/CRM-19920) Job.process_membership uses too much memory ([11564](https://github.com/civicrm/civicrm-core/pull/11564))** ### Backdrop Integration - **[CRM-21619](https://issues.civicrm.org/jira/browse/CRM-21619) Can't install CiviCRM on Backdrop using the Module Installer ([44](https://github.com/civicrm/civicrm-backdrop/pull/44))** ### Drupal Integration - **[CRM-21627](https://issues.civicrm.org/jira/browse/CRM-21627) Can't enable multilanguage support in Drupal ([11491](https://github.com/civicrm/civicrm-core/pull/11491))** - **[CRM-21652](https://issues.civicrm.org/jira/browse/CRM-21652) Numerous issues with anonymous users registering accounts on Drupal 8 (especially from contribution pages) ([11509](https://github.com/civicrm/civicrm-core/pull/11509) and [11507](https://github.com/civicrm/civicrm-core/pull/11507))** - **[CRM-21667](https://issues.civicrm.org/jira/browse/CRM-21667) Bad timezone hand-off from CMS to CRM ([11534](https://github.com/civicrm/civicrm-core/pull/11534))** - **Backport fix from D7 module. ([514](https://github.com/civicrm/civicrm-drupal/pull/514))** The Drupal 6 group role sync now uses the improved method developed for Drupal 7. - **Update civicrm_handler_field_contact_image.inc ([516](https://github.com/civicrm/civicrm-drupal/pull/516))** Views containing the contact image field now provide help for setting image style. - **[CRM-17652](https://issues.civicrm.org/jira/browse/CRM-17652) Symfony conflict between Civi and Drupal 8 ([193](https://github.com/civicrm/civicrm-packages/pull/193)) (continues previous work)** The `civicrm-packages` repository is now contains metadata to be a composer library. - **[CRM-20298](https://issues.civicrm.org/jira/browse/CRM-20298) Drupal Views: Custom fields of type Money should use the same filter operators as Integer fields ([436](https://github.com/civicrm/civicrm-drupal/pull/436))** - **[crm-16541](https://issues.civicrm.org/jira/browse/crm-16541) drush civicrm-sql-dump fails to dump stored function ([520](https://github.com/civicrm/civicrm-drupal/pull/520))** ### Joomla Integration - **[CRM-20904](https://issues.civicrm.org/jira/browse/CRM-20904) Joomla - Fatal Error when schedule job is executed from cron.php ([10692](https://github.com/civicrm/civicrm-core/pull/10692))** ## Miscellany - **[CRM-21660](https://issues.civicrm.org/jira/browse/CRM-21660) Remove use of deprecated function on mapping_type ([11525](https://github.com/civicrm/civicrm-core/pull/11525))** - **[CRM-21671](https://issues.civicrm.org/jira/browse/CRM-21671) Add core tasks class ([11536](https://github.com/civicrm/civicrm-core/pull/11536))** - **[CRM-13123](https://issues.civicrm.org/jira/browse/CRM-13123) Handle value-separated fields at the dao level ([11472](https://github.com/civicrm/civicrm-core/pull/11472)) (finishes previous work)** This non-functional change updates serialization metadata for the field storing the ways a profile is used. - **Change geocoder message check. ([11664](https://github.com/civicrm/civicrm-core/pull/11664))** - **Unit test fixes ([11659](https://github.com/civicrm/civicrm-core/pull/11659))** - **Fix unit test to not rely on hacking the DB to have ids for price set… ([11652](https://github.com/civicrm/civicrm-core/pull/11652))** - **Added trait to support Codeception tests ([11115](https://github.com/civicrm/civicrm-core/pull/11115))** - **(NFC) Fix logging test for multilingual on MySQL5.7 ([11626](https://github.com/civicrm/civicrm-core/pull/11626))** - **[nfc] Fix intermittantly failing test. ([11617](https://github.com/civicrm/civicrm-core/pull/11617))** - **[CRM-21729](https://issues.civicrm.org/jira/browse/CRM-21729) Exclude (non-lintable) vendor test cases from deply ([11613](https://github.com/civicrm/civicrm-core/pull/11613))** - **Minor api clean up. ([11569](https://github.com/civicrm/civicrm-core/pull/11569))** - **Api4 - Update entity directory ([11582](https://github.com/civicrm/civicrm-core/pull/11582))** - **Fix typo (very recent) ([11566](https://github.com/civicrm/civicrm-core/pull/11566))** - **Minor api tidy up. ([11543](https://github.com/civicrm/civicrm-core/pull/11543))** - **Fix mock test data for PaymentProcessor object. ([11545](https://github.com/civicrm/civicrm-core/pull/11545))** - **Edit to contributor listing: Standalone code contributor from now. ([11512](https://github.com/civicrm/civicrm-core/pull/11512))** - **Fix unit test failure ([11479](https://github.com/civicrm/civicrm-core/pull/11479))** - **Reformat DAO files to pass linting and use short array syntax ([11418](https://github.com/civicrm/civicrm-core/pull/11418))** - **Params to assertGreaterThanOrEqual in api_v3_CaseTest were in wrong order ([11451](https://github.com/civicrm/civicrm-core/pull/11451))** ## Credits This release was developed by the following code authors: AGH Strategies - Alice Frumin, Tommy Bobo; Agileware - Alok Patel; Australian Greens - Seamus Lee; Awebon Technologies - Karthikeyan Balasubramanian; BackOffice Thinking - Hassan Farooq; CiviCoop - Erik Hommel; CiviCRM - Coleman Watts, Tim Otten; CiviDesk - Sunil Pawar, Yashodha Chaku; CompuCorp - Camilo Rodriguez, Michael Devery, Mukesh Ram, Omar Abu Hussein; Coop SymbioTIC - Mathieu Lutfy; Electronic Frontier Foundation - Mark Burdett; Francesc Bassas i Bullich; Freeform Solutions - Herb van den Dool; Fuzion - Jitendra Purohit; Ginkgo Street Labs - Frank Gómez; iXiam - Luciano Spiegel; JazzMan; JMA Consulting - Monish Deb; Johan Vervloet; John Kingsnorth; Joinery - Allen Shaw; Joost Fock; Kanzu Code - Carl Andrew Lema; Lighthouse Design and Consulting - Brian Shaughnessy; Megaphone Technology Consulting - Jon Goldberg; MJW Consulting - Matthew Wire; mountev; myDropWizard - David Snopek; Oxfam Germany - Thomas Schüttler; Pradeep Nayak; Progressive Technology Project - Jamie McClelland; Samson Alajede; Squiffle Consulting - Aidan Saunders; Systopia - Björn Endres, Philipp Batroff; Tech To The People - Xavier Dutoit; Third Sector Design - Michael McAndrew; Timbsoft Technologies - Tunbola Ogunwande; Vedant Rathore; Wikimedia Foundation - Eileen McNaughton, Elliott Eggleston; yurg Most authors also reviewed code for this release; in addition, the following reviewers contributed their comments: AGH Strategies - Andrew Hunt, Holly Hanks; Agileware - Agileware Team; Andy Clarke; Anthony Borrow; Bashar Makhay; Blackfly Solutions - Alan Dixon; Chris Burgess; Christophe Golle; Circle Interactive - Andrew Walker, Dave Jenkins; CiviDesk - Nicolas Ganivet; CompuCorp - Chandana Bandara, Guanhuan Chen, Tunbola Ogunwande; Comunica2 - René Nieuwburg; Custom Websites to Go - Julie Hall; Dave Greenberg; Dave Rolsky; DevMate - Adam Kwiatkowski; Donald Lobo; Evan Chute; Fuzion - Gemma Potaka, Peter Davis; Ginkgo Street Labs - Dan O'Brien; Glasgow Women's Library - Helen MacDonald; GMCVO Databases - Alex Lee, Heather Oliver; JMA Consulting - Joe Murray; Joseph Lacey; Juan David Hurtado G.; Just Hope - Phil Morice Brubaker; Klangsoft - David Reedy Jr; Korlon - Stuart Gaston; Lemniscus - Noah Miller; MC3 - Graham Mitchell; Mick Collopy; Nathan Brettell; Nubay Services - David Tarrant; Palante Technology Cooperative - Jack Aponte; Panu Boonpromsook; Piotr Stankowski; Play Australia - Renaee Churches; Progressive Technology Project - Robyn Perry; Registered Nurses' Association of Ontario - Thomas Mannell; Richard van Oosterhout; Saurabh Batra; Semper IT - Karin Gerritsen; Shira Miller; Skvare - Mark Hanna, Peter Petrik; Spry Digital - Julia Koelsch; Systopia - Fabian Schuttenberg, Martin Peth; Tadpole Collective - Kevin Cristiano; Team Expansion - Greg Harris; Tobias Lounsbury; Web Access - Kurund Jalmi; We Move Europe/Caltha - Tomasz Pietrzkowski; Wildsight - Lars Sanders-Green ## 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`.