# 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`.