Commit ecf7fb8a authored by Andrew Hunt's avatar Andrew Hunt Committed by colemanw

4.7.25 release notes (#11043)

parent b94bd551
......@@ -16,6 +16,10 @@
organization: Agileware
jira : agileware
- github : agileware-dev
name : Agileware Team
organization: Agileware
- github : ajdavis
name : A. Jesse Jiryu Davis
organization: MongoDB
......@@ -38,10 +42,18 @@
organization: AGH Strategies
jira : alifrumin
- github : amsharma9
name : Amal Sharma
organization: Abhikalak Consultants
- github : andrew-cormick-dockery
name : Andrew Cormick-Dockery
jira : andrew_dockery
- name : Andrew Perry
organization: Community Builders
jira : andrew
- github : andrewpthompson
name : Andrew Thompson
jira : andrewpthompson
......@@ -49,6 +61,10 @@
- name : F. M. Andrimont
jira : andrimont
- name : Andrew Walker
organization: Circle Interactive
jira : andyw
- github : anthonylindsay
name : Anthony Lindsay
organization: Annertech
......@@ -73,6 +89,14 @@
organization: Apple Street Market
jira : ASMC
- name : Rich Lott
organization: Artful Robot
jira :
- github : autarch
name : Dave Rolsky
jira : autarch
- github : axon-obriend
name : Dan O'Brien
organization: Ginkgo Street Labs
......@@ -92,6 +116,9 @@
name : Borislav Zlatanov
jira : BorislavZlatanov
- name : Brian McFee
jira : brian
- github : brucew2013
name : Bruce Wolfe
organization: Alcohol Justice
......@@ -109,9 +136,17 @@
organization: Monadnock Developmental Services
jira : chagrawil
- name : Charles Register
organization: Hemophilia of North Carolina
jira : charlie
- github : chanunc
name : Chanun Chirattikanon
- name : Cheryl Chase
organization: Mathias Consulting
jira : cherylchase
- github : christianwach
name : Christian Wach
jira : haystack
......@@ -136,6 +171,11 @@
- name : Daniel Martinez
jira : danielmart
- github : darrick
name : Darrick Servis
organization: Davis Media Access
jira : darrick
- github : davecivicrm
name : Dave Greenberg
jira : dgg
......@@ -160,11 +200,19 @@
organization: Glick Software
jira : davisagli
- github : deepak-srivastava
name : Deepak Srivastava
jira : deepak
- github : dejan9393
name : Dejan Lukic
organization: Community Builders
jira : dejan9393
- github : demeritcowboy
name : Dave D
jira : demeritcowboy
- github : detsieber
name : Detlev Sieber
organization: Digitalcourage
......@@ -212,6 +260,7 @@
- github : dsnopek
name : David Snopek
organization: myDropWizard
jira : dsnopek
- github : dvhirst
name : Donald Hirst
......@@ -224,9 +273,12 @@
- github : eileenmcnaughton
name : Eileen McNaughton
organization: Fuzion
organization: Wikimedia Foundation
jira : eileen
- github : Eaiman
name : Eaiman Shoshi
- github : ejegg
name : Elliott Eggleston
organization: Wikimedia Foundation
......@@ -245,6 +297,10 @@
organization: Ergon Logic Enterprises
jira : ergonlogic
- name : Eric Goldhagen
organization: Openflows
jira : ericg
- github : ErichBSchulz
name : Erich Schulz
......@@ -257,6 +313,10 @@
name : Emanuele Santanchè
jira : esantanche
- name : Evan Summers
organization: National Democratic Institute
jira : esummers
- name : Fabian Schuttenberg
organization: Systopia
jira : fabian (systopia)
......@@ -284,6 +344,11 @@
name : Francesc Bassas i Bullich
jira : francescbassas
- github : freephile
name : Greg Rundlett
organization: eQuality Technology
jira : freephile
- github : galgeek
name : Barbara Miller
jira : galgeek
......@@ -346,6 +411,9 @@
name : Effy Elden
jira : effy
- name : Brian Hay
jira : inteja
- github : jaapjansma
name : Jaap Jansma
organization: CiviCoop
......@@ -396,6 +464,9 @@
name : Joanne Chester
jira : jchester
- github : joels341
name : Joel Stevens
- github : JKingsnorth
name : John Kingsnorth
jira : john
......@@ -421,6 +492,9 @@
organization: GMCVO Databases
jira : jon-man
- github : jonesinator
name : Aaron Jones
- github : joshgowans
name : Josh Gowans
organization: CiviCRM
......@@ -428,12 +502,15 @@
- github : josephlacey
name : Joseph Lacey
organization: Palante Technology Cooperative
jira : jlacey
- github : jusfreeman
name : Justin Freeman
organization: Agileware
- github : kainuk
name : Klaas Eikelboom
organization: CiviCooP
organization: CiviCoop
jira : keikelboom
- github : Kajakaran
......@@ -457,6 +534,7 @@
- github : kenwest
name : Ken West
jira : ken
- github : konadave
name : David Reedy Jr
......@@ -520,6 +598,9 @@
name : Richard van Oosterhout
jira : magnolia61
- name : Manish Zope
jira : manish
- name : Martin Castle
organization: Circle Interactive
jira : marshCircle
......@@ -702,6 +783,10 @@
- name : Rareș Pamfil
jira : rares
- github : RexAK
name : Rex Keal
jira : RexAK
- name : Lutz Frommberger
jira : re-quest
......@@ -726,10 +811,18 @@
name : Romain Thouvenin
jira : romain
- github : rtobias81
name : Randy Tobias
organization: Technology & Beyond
jira : rtobias
- github : rubofvil
name : Rubén Pineda
organization: iXiam
- name : Steve Binkowski
jira : s.bink
- name : Sheila Burkett
organization: Spry Digital
jira : saburkett
......@@ -765,6 +858,9 @@
organization: Left Join Labs
jira : seanmadsen
- name : Shailesh Lende
jira : shailesh
- github : sharique
name : Sharique Ahmed Farooqui
jira : sharique
......@@ -820,6 +916,7 @@
- github : tobiaslounsbury
name : Tobias Lounsbury
jira : tobiaslounsbury
- name : Thomas Mannell
organization: Registered Nurses' Association of Ontario
......@@ -920,7 +1017,6 @@
- github : xurizaemon
name : Chris Burgess
organization: Fuzion
jira : xurizaemon
- github : yashodha
......@@ -14,9 +14,20 @@ Other resources for identifying changes are:
## CiviCRM 4.7.25
Released October 4, 2017
- **[Synopsis](release-notes/**
- **[Features](release-notes/**
- **[Bugs resolved](release-notes/**
- **[Miscellany](release-notes/**
- **[Credits](release-notes/**
- **[Feedback](release-notes/**
## CiviCRM 4.7.24
Released September 6, 2017;
Released September 6, 2017
- **[Synopsis](release-notes/**
- **[Features](release-notes/**
# CiviCRM 4.7.25
Released October 4, 2017
- **[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?** | **yes** |
| **Alter the API?** | **yes** |
| Require attention to configuration options? | no |
| Fix problems installing or upgrading to a previous version? | no |
| **Introduce features?** | **yes** |
| **Fix bugs?** | **yes** |
## <a name="features"></a>Features
### Core CiviCRM
- **[CRM-20769]( Allow for
Button Text on profiles to be overriden in settings
([10940]( and
This adds columns to the `civicrm_uf_group` table to support customizing
profile buttons.
- **[CRM-20964]( Include queue
id while retrieving rows from Event Queue.
`CRM_Mailing_Event_BAO_Queue::getRows()` returned rows for each intended
recipients, but didn't include any info which differentiates each row.
This adds a `queue_id` in the key column of the $result array which enables
hooks to know which row is getting displayed.
- **[CRM-21118]( Add action
links for message templates overview at top of page
Previously action links (add message template) were only shown at the bottom
of the page. If you have lots of message templates it is not visible until
scrolling down. This adds the links at the top of the page as well (like many
other pages in CiviCRM).
- **[CRM-20979]( pre help for
price fields not exposed to UI.
Adds a field to the Add/Edit Price Field Form to enter pre help for price
- **[CRM-20680]( Make the
CiviCRM logo spin while waiting for next page to load
([10903]( (fix to previous
This fixes a side effect of the new feature that caused all CiviCRM logos on
the page to spin.
- **[CRM-21078]( Allow user to
save and continue editing message template
The message template editing screen now matches similar forms in CiviCRM by
offering separate "Save" and "Save and Done" buttons.
- **[CRM-20941]( Determine &
notify date to end support for PHP5.3 and PHP5.4
A pre-upgrade message and system check now warn administrators of sites using
PHP versions prior to 5.6.
- **[CRM-17157]( CiviCRM money
validation should allow more decimal places
Previously, validation of money fields limited values to two decimal places.
This allows for currencies that may have more decimal places.
- **[CRM-20926]( Allow
extensions to flag PHPIDS html/json fields
Extensions can now denote fields that should be be evaluated as HTML, JSON, or
exceptions for the intrusion detection system (IDS).
- **[CRM-20155]( The dedupe
code passes has serious maintainability issues, locked in by hooks
([10890]( (preliminary
This is initial cleanup work toward separating the dedupe process from the
form layer, allowing for extensions to do custom dedupe logic. This initial
work merely cleans up the existing processing.
- **[CRM-17748]( Expose
options['result_buffering'] to CRM_Core_DAO
Queries sent to the DAO can now pass options for `DB_mysql`. Specifically,
a `result_buffering` option can reduce PHP memory needs by calling for an
unbuffered query.
- **[CRM-20733]( Relationship
report improvements
The Relationship Report can now filter results by permissions (contact A over
contact B and vice-versa) and order results by start date.
- **[CRM-21108]( Creating
contacts is slow, part 1 of 2: Calculating Greetings
This optimizes the population of greetings for newly-created contacts, the
slowest part of generating contacts.
- **[CRM-18231]( Support safe
migration from production to non-production instances
[10936](, and
This introduces a feature of environment labels that can be set in
`civicrm.settings.php` and be extended in specially-named settings files. If
the label is anything other than `Production`, outbound email and scheduled
jobs are disabled. See further explanation in the [Sysadmin
### CiviCase
- **[CRM-20958]( Data model:
Track creation+modification times for activities+cases
Adds timestamp columns created_date and modified_date to the tables
`civicrm_activity` and `civicrm_case`
- **[CRM-21052]( Allow opt-out
of embedded case-activity tracking
A new setting, "Enable Embedded Activity Revisions", determines whether each
revision to a case records the change as an activity. This has been the
behavior in the past and will continue to be the default for CiviCase until
the redesign is complete. However, many CiviCase users may prefer to leave
change logging to the log tables that are created when overall CiviCRM logging
is enabled.
### CiviContribute
- **[CRM-21058]( Add Event
filter to PCP contribution report
The Personal Campaign Page report now allows filtering by the title of a PCP's
associated event.
- **[CRM-20990]( Assign
`$contributionStatus` to the Contribution Online message template
The contribution status is now available as a Smarty variable on the receipt
message template for online contributions.
- **[CRM-21019]( Change column
labels ([10813](**
The column headers on accounting batch screens are now clearer.
### CiviEvent
- **[CRM-20507]( Prevent
disclosure of `is_public=0` Custom Groups in email templates
Custom data groups can be public or backend-only as of 4.7.19. This
suppresses non-public fields from email receipts for event registrations.
### CiviMail
- **[CRM-20905]( Simple mail :
Make max emails a hidden config instead of hardcoded value set to 50
The maximum number of emails sent through the quick "send an email" feature is
set to 50. This change allows that number to be overridden through the
setting API or settings file.
### CiviMember
- **[CRM-21152]( Add spec for
MembershipStatus.calc API function
Adds a function to adjust metadata for `Calc` action. The metadata is used for
setting defaults, documentation & validation.
### Drupal Integration
- **[CRM-21016]( Allow Drupal
views to be used for Notes related to contributions
Drupal Views will now join to the `civicrm_note` table for any related entity,
not just contacts.
- **Add Contributions relevant to the Participant record.
Drupal Views will now join to the `civicrm_participant_payment` table,
allowing related contributions to be displayed alongside event registrations.
## <a name="bugs"></a>Bugs resolved
### Core CiviCRM
- **[CRM-21068](
&lastModified() fails more gracefully.
This change avoids displaying an error if something is missing from the log
entry for a contact when shown in the summary view.
- **[CRM-21099]( Contribution
search: "Total Cancelled Amount" surprisingly includes "refunded" status
In the results of a Find Contributions search, summary numbers are displayed
at the top. One of these is "Total Cancelled Amount" this total included
contributions with a "Refunded" or "Cancelled" status. This total now only
includes contributions with a status of "Cancelled".
- **[CRM-21075]( Notice errors
on contact edit
When a user would edit their record, a series of notices would be generated
because of use of a deprecated function. This change removes those errors.
- **[CRM-21057]( export field
mapping limited to 25 records
This resolves a bug where only 25 saved export mappings were available to
- **[CRM-21124]( Fix DB error
on deduping by criteria when criteria string is too long
- **[CRM-21061]( Fix rare
CiviReport error relating to long report names
The relatively short length of the `report_id` field in the `civicrm_report`
table meant that reports with long names would produce obtuse errors. The
field is now 512 characters long.
- **[CRM-21004]( profile:
unable to copy profiles used for events/contribs/etc.
- **[CRM-21230]( Multi-value
custom field import fail with error message: Call to undefined method
- **[CRM-21174]( Circular
dependency during upgrade: civicrm_menu.module_data
A field to be created during the upgrade was accidentally loaded as part of
the upgrade.
- **[CRM-21175]( Fatal error on
multiple custom field import
Import mappings now must have a mapping type. This resolves an error that
would appear when a mapping type was missing; now, the mapping type is created
on the fly.
- **[CRM-20533]( 'Update
Indices' System Status action can get tied up (index name already exists,
localised dbs?)
([10908]( (continues
previous work)**
A system check offers to update old or missing table indices when it detects
they are missing. In practice, many sites have equivalent indices to the ones
that are supposedly missing, but the index names differ or the index fields
are listed in a different order. This script has had persistent problems with
attempting to create indices that already exist or incorrectly dropping
This most recent change deletes false indices automatically when the Update
Indices process is started rather than asking the site administrator. Any
false-looking index that is actually good will simply be replaced when the
missing indices are populated.
- **[CRM-21110]( Relationships
tab on contact summary runs query twice
This streamlines the processing of the contact relationship listing to reduce
the number of queries to run.
- **[CRM-21142]( Installation
fails if PHP XML module isn't installed
The installer now checks that PHP SimpleXML support is present.
- **[CRM-21139]( Font-Awesome
icons not showing on fatal error screen
Now `crm-i.css` is specifically loaded on the fatal error template.
- **[CRM-19933]( Importing
contacts clears out preferred communication method
- **[CRM-21079]( Datetime logs
don't supports timezones
([10874]( (continues
previous work)**
A system check appears if certain database fields are `DATETIME` rather than
`TIMESTAMP`. Due to the complexity of assigning timezones and the possibility
of customizations depending upon those fields, the check merely explains the
situation and recommends using [Doctor
When](, a time lord
extension, to straighten out the situation.
- **[CRM-20970]( long postal
code in db prevents searching by zipcode range
([10781]( (completes
previous work)**
This adds test coverage for the fix which appeared in 4.7.24.
- **[CRM-20790]( CIVICRM-159 -
Import Contacts, Current Employer (Employee of field) is not being imported at
all ([10808](**
Import would fail to record relationships if data for one or both contacts in
the relationship matched existing contacts.
- **[CRM-21049]( Can't create a
RelationshipType record via API with "All Contacts" as a value
This prevented relationship types created in the API where one or both
contacts could be any contact type.
- **[CRM-20993]( API -
Extension get - Cannot filter by ID anymore
- **[CRM-21029]( Activity