CIVICRM-1223 fix errors
[civicrm-core.git] / release-notes / 5.1.0.md
1 # CiviCRM 5.1.0
2
3 Released May 2, 2018
4
5 - **[Synopsis](#synopsis)**
6 - **[Features](#features)**
7 - **[Bugs resolved](#bugs)**
8 - **[Miscellany](#misc)**
9 - **[Credits](#credits)**
10 - **[Feedback](#feedback)**
11
12 ## <a name="synopsis"></a>Synopsis
13
14 | *Does this version...?* | |
15 |:--------------------------------------------------------------- |:-------:|
16 | Fix security vulnerabilities? | no |
17 | Change the database schema? | no |
18 | Alter the API? | no |
19 | Require attention to configuration options? | no |
20 | **Fix problems installing or upgrading to a previous version?** | **yes** |
21 | **Introduce features?** | **yes** |
22 | **Fix bugs?** | **yes** |
23
24 ## <a name="features"></a>Features
25
26 ### Core CiviCRM
27
28 - **[CRM-21677](https://issues.civicrm.org/jira/browse/CRM-21677) Report
29 improvements ([11814](https://github.com/civicrm/civicrm-core/pull/11814),
30 [11898](https://github.com/civicrm/civicrm-core/pull/11898),
31 [11889](https://github.com/civicrm/civicrm-core/pull/11889),
32 [11880](https://github.com/civicrm/civicrm-core/pull/11880),
33 [11876](https://github.com/civicrm/civicrm-core/pull/11876),
34 [11875](https://github.com/civicrm/civicrm-core/pull/11875),
35 [11867](https://github.com/civicrm/civicrm-core/pull/11867), and
36 [11855](https://github.com/civicrm/civicrm-core/pull/11855))**
37
38 Reports that don't have detailed information about contacts now no longer join
39 to the address, phone, and email tables.
40
41 - **[CRM-21434](https://issues.civicrm.org/jira/browse/CRM-21434) Add activities
42 to recent items on view and edit
43 ([11891](https://github.com/civicrm/civicrm-core/pull/11891))**
44
45 A recently viewed or edited activity will now appear on the list of recent
46 items in Backdrop, Drupal, and Joomla.
47
48 - **[CRM-21489](https://issues.civicrm.org/jira/browse/CRM-21489) Deadlock
49 retries have been accidentally blocked
50 ([11336](https://github.com/civicrm/civicrm-core/pull/11336) and
51 [197](https://github.com/civicrm/civicrm-packages/pull/197))**
52
53 This restores functionality that retries transactions if they face a deadlock
54 in the database. The number of times is now a constant that can be set in
55 `civicrm.settings.php`.
56
57 - **[CRM-21840](https://issues.civicrm.org/jira/browse/CRM-21840) Show Tool Icon
58 For Radio Button Groups
59 ([11819](https://github.com/civicrm/civicrm-core/pull/11819))**
60
61 A group of radio buttons will now display a wrench icon if the user has the
62 permission to edit the options. This now matches the feature for select
63 boxes.
64
65 - **[CRM-20981](https://issues.civicrm.org/jira/browse/CRM-20981) Allow custom
66 base-pages with less `crmApp` boilerplate
67 ([10783](https://github.com/civicrm/civicrm-core/pull/10783))**
68
69 Extensions that use AngularJS can now define a base path more easily.
70
71 - **[CRM-20624](https://issues.civicrm.org/jira/browse/CRM-20624) Expose
72 description field for option values in UI
73 ([10403](https://github.com/civicrm/civicrm-core/pull/10403))**
74
75 Custom field options have a `description` field (that has been in the database
76 for a while); now it can be set from the user interface and viewed when
77 managing option values.
78
79 - **[CRM-21835](https://issues.civicrm.org/jira/browse/CRM-21835) Detailed
80 Logging - Use INNODB if Archive is not available
81 ([11786](https://github.com/civicrm/civicrm-core/pull/11786))**
82
83 The Archive storage engine is not always available in MariaDB, even though it
84 is the default for log tables when detailed logging is enabled. Now, CiviCRM
85 will fall back to InnoDB if Archive is not available.
86
87 - **[CRM-21753](https://issues.civicrm.org/jira/browse/CRM-21753) Support
88 'criteria' in url on batch merge form
89 ([11666](https://github.com/civicrm/civicrm-core/pull/11666)) (completes prior
90 work)**
91
92 This improves handling of criteria set in the URL for batch merges.
93
94 - **[CRM-20811](https://issues.civicrm.org/jira/browse/CRM-20811) Schedule
95 Reminders uses mixed terminology for Active state: Active? versus Send Email
96 ([10602](https://github.com/civicrm/civicrm-core/pull/10602))**
97
98 The option for whether a scheduled reminder is active is now displayed as a
99 checkbox with "Scheduled Reminder Active" rather than "Send Email" or "Send
100 email or SMS".
101
102 - **CRM_Utils_Check - Soften messages for read-only extensionsDir
103 ([11895](https://github.com/civicrm/civicrm-core/pull/11895))**
104
105 When a site's extensions directory is not writable by the web server, the
106 system check message now has a lower severity and explains the consequences
107 rather than indicating that this is definitely a problem.
108
109 - **Meld Address custom field display template with main custom field template
110 ([11844](https://github.com/civicrm/civicrm-core/pull/11844))**
111
112 The display for address custom fields now uses the main custom field template.
113
114 - **[CRM-21784](https://issues.civicrm.org/jira/browse/CRM-21784) View custom
115 data for recurring contributions
116 ([11697](https://github.com/civicrm/civicrm-core/pull/11697))**
117
118 This resolves a problem where custom data could be set for recurring
119 contributions but could not be viewed outside of the API.
120
121 ### CiviContribute
122
123 - **[CRM-20610](https://issues.civicrm.org/jira/browse/CRM-20610) Replace
124 payment details block with editable payment list on 'Edit Contribution' form
125 ([10776](https://github.com/civicrm/civicrm-core/pull/10776))**
126
127 The backend contribution edit form is now based on the same payment editing
128 interface as events with multiple payments.
129
130 - **Tweak layout on contribution view screen to make payments clearer
131 ([11863](https://github.com/civicrm/civicrm-core/pull/11863))**
132
133 When viewing a contribution on the back end, a table of payments now displays
134 immediately below the total amount.
135
136 ### CiviMail
137
138 - **[CRM-20719](https://issues.civicrm.org/jira/browse/CRM-20719) Show warning
139 on system status page if reply_id for mailing is not set to any default.
140 ([10496](https://github.com/civicrm/civicrm-core/pull/10496))**
141
142 This warns users if no auto-reply message is selected as default, as this will
143 prevent CiviMail messages from being submitted.
144
145 ### Drupal Integration
146
147 - **Add activity created_date, modified_date and original_id fields to views
148 ([525](https://github.com/civicrm/civicrm-drupal/pull/525))**
149
150 ## <a name="bugs"></a>Bugs resolved
151
152 ### Core CiviCRM
153
154 - **[dev/core#83](https://lab.civicrm.org/dev/core/issues/83) Fix regression
155 whereby relationship types option no longer in adv search
156 ([12045](https://github.com/civicrm/civicrm-core/pull/12045))**
157
158 - **Flush versionCheck cache when upgrading
159 ([12034](https://github.com/civicrm/civicrm-core/pull/12034))**
160
161 A recently-upgraded site will no longer potentially have a cached message
162 indicating that an upgrade is needed.
163
164 - **[dev/core#64](https://lab.civicrm.org/dev/core/issues/64) - In custom
165 searches, column headings are being ignored
166 ([12005](https://github.com/civicrm/civicrm-core/pull/12005))**
167
168 This resolves a regression that displayed standard column headings on results
169 of custom searches.
170
171 - **Fix trigger generation for modified_date on custom data
172 ([11984](https://github.com/civicrm/civicrm-core/pull/11984))**
173
174 - **Phone: standardize appearance and translation of extension label
175 ([11930](https://github.com/civicrm/civicrm-core/pull/11930))**
176
177 - **[dev/core#16](https://lab.civicrm.org/dev/core/issues/16) Select "Enable
178 multiple bulk email address for a contact", "hold_date" can not be updated
179 ([11807](https://github.com/civicrm/civicrm-core/pull/11807) and
180 [11884](https://github.com/civicrm/civicrm-core/pull/11884))**
181
182 - **Handle eq (equals) operator in the report url
183 ([11885](https://github.com/civicrm/civicrm-core/pull/11885))**
184
185 When setting report filters via the URL, the `eq` operator now works like the
186 others. It didn't work in past versions.
187
188 - **Fix report form isTableSelected to treat relative date filters as filters
189 ([11882](https://github.com/civicrm/civicrm-core/pull/11882))**
190
191 - **[CRM-21842](https://issues.civicrm.org/jira/browse/CRM-21842) broken link
192 ([11879](https://github.com/civicrm/civicrm-core/pull/11879))**
193
194 Links to the "Installation and basic set-up" documentation page had errors.
195
196 - **[dev/core#22](https://lab.civicrm.org/dev/core/issues/22) Unable to delete
197 Smart Group ([11826](https://github.com/civicrm/civicrm-core/pull/11826))**
198
199 This resolves a fatal error that would appear when attempting to delete a
200 broken smart group.
201
202 - **Fix template structures
203 ([11818](https://github.com/civicrm/civicrm-core/pull/11818),
204 [11839](https://github.com/civicrm/civicrm-core/pull/11839),
205 [11851](https://github.com/civicrm/civicrm-core/pull/11851),
206 [11862](https://github.com/civicrm/civicrm-core/pull/11862), and
207 [11869](https://github.com/civicrm/civicrm-core/pull/11869))**
208
209 This standardizes a number of page templates that didn't match the typical
210 structure.
211
212 - **Fix ajax error on rendering multi custom data tab when field limit reached
213 ([11856](https://github.com/civicrm/civicrm-core/pull/11856))**
214
215 - **Escape custom group title.
216 ([11854](https://github.com/civicrm/civicrm-core/pull/11854))**
217
218 This fixes a bug causing the display of multi-entry custom data sets when the
219 set's title has an apostrophe in it.
220
221 - **[CRM-20790](https://issues.civicrm.org/jira/browse/CRM-20790) Import
222 Contacts, Current Employer (Employee of field) is not being imported at all
223 ([11843](https://github.com/civicrm/civicrm-core/pull/11843)) (completes prior
224 work)**
225
226 Unit tests now ensure relationships are added on import.
227
228 - **[dev/core#17](https://lab.civicrm.org/dev/core/issues/17) Convert Campaign
229 Interview Task to use Pseudoconstant and remove PHP notices
230 ([11809](https://github.com/civicrm/civicrm-core/pull/11809))**
231
232 This replaces use of the deprecated `CRM_Core_OptionGroup::getValue()` with
233 `CRM_Core_PseudoConstant::getKey()` and fixes PHP notices.
234
235 - **[CRM-21838](https://issues.civicrm.org/jira/browse/CRM-21838) When CRM.alert
236 falls back to standard JS alert it should strip html
237 ([11797](https://github.com/civicrm/civicrm-core/pull/11797))**
238
239 ### CiviContribute
240
241 - **[CRM-21763](https://issues.civicrm.org/jira/browse/CRM-21763) Cannot record
242 payment for only cents owed
243 ([11668](https://github.com/civicrm/civicrm-core/pull/11668))**
244
245 This resolves a bug where the sum of payments would be fractions of a cent off
246 from the total amount due. A new utility subtracts currency amounts using the
247 correct number of decimals for that currency.
248
249 - **[CRM-21791](https://issues.civicrm.org/jira/browse/CRM-21791) Accounting
250 batch closed by default when created in localized civicrm
251 ([11878](https://github.com/civicrm/civicrm-core/pull/11878))**
252
253 If an accounting batch is created in a site with a language other than US
254 English, a bug caused the batch to start out closed.
255
256 - **[dev/core#26](https://lab.civicrm.org/dev/core/issues/26) On behalf form
257 fails to create new organisation
258 ([11841](https://github.com/civicrm/civicrm-core/pull/11841))**
259
260 - **[CRM-21807](https://issues.civicrm.org/jira/browse/CRM-21807) Deleted
261 contacts included by default in Membership and contribution detail report.
262 ([11727](https://github.com/civicrm/civicrm-core/pull/11727))**
263
264 - **[CRM-21264](https://issues.civicrm.org/jira/browse/CRM-21264) print
265 contribution in tabular format with group by contact not working
266 ([11820](https://github.com/civicrm/civicrm-core/pull/11820))**
267
268 ### CiviEvent
269
270 - **Fix fatal error when selecting a $0 price option in change fee selection
271 ([11934](https://github.com/civicrm/civicrm-core/pull/11934))**
272
273 ### CiviMail
274
275 - **[dev/mail#8](https://lab.civicrm.org/dev/mail/issues/8) Using ACL to
276 restrict mailing recipients leads to fatal error
277 ([11963](https://github.com/civicrm/civicrm-core/pull/11963))**
278
279 - **[dev/core#25](https://lab.civicrm.org/dev/core/issues/25) Wrap split_jobs in
280 a transaction ([11836](https://github.com/civicrm/civicrm-core/pull/11836))**
281
282 The process of splitting mail jobs is now a database transaction, preventing
283 other processes from potentially processing child jobs before it is finished.
284
285 ### CiviMember
286
287 - **[CRM-21711](https://issues.civicrm.org/jira/browse/CRM-21711) When updating
288 multiple memberships thru a contribution page custom fields are only updated
289 on one ([11586](https://github.com/civicrm/civicrm-core/pull/11586))**
290
291 - **[CRM-19151](https://issues.civicrm.org/jira/browse/CRM-19151) Add / fix the
292 Ability to merge memberships
293 ([11298](https://github.com/civicrm/civicrm-core/pull/11298)) (initial work)**
294
295 When merging contacts that each have memberships, one membership and all its
296 data will be deleted unless you check the Add New box. Now, the surviving
297 membership is updated to have the earliest Join Date and latest End Date of
298 the two, and the Membership Status is recalculated.
299
300 - **[CRM-19850](https://issues.civicrm.org/jira/browse/CRM-19850) Add a offline
301 membership without 'record payment' option, later edit the membership and
302 saving with 'record payment' option
303 ([11087](https://github.com/civicrm/civicrm-core/pull/11087))**
304
305 This resolves an error that failed to show the payment information when
306 editing an unpaid membership and checking the "Record Payment" box.
307
308 - **[dev/core#15](https://lab.civicrm.org/dev/core/issues/15) Wrong parameter
309 passing in LineItem.php
310 ([11816](https://github.com/civicrm/civicrm-core/pull/11816))**
311
312 This addresses an intermittent bug where membership line items would refer to
313 the wrong contribution.
314
315 - **[CRM-21682](https://issues.civicrm.org/jira/browse/CRM-21682) Automatic
316 membership renewal fixes
317 ([11824](https://github.com/civicrm/civicrm-core/pull/11824) and
318 [11825](https://github.com/civicrm/civicrm-core/pull/11825))**
319
320 - **“Deceased” status could be translated
321 ([11890](https://github.com/civicrm/civicrm-core/pull/11890))**
322
323 The membership status update job would look for the status labeled "Deceased",
324 which may be translated.
325
326 ### Drupal Integration
327
328 - **[dev/core#83](https://lab.civicrm.org/dev/core/issues/18) Log tables for
329 CiviCRM Drupal Modules can cause WSODs after running upgrades when
330 re-calculating ([11865](https://github.com/civicrm/civicrm-core/pull/11865))**
331
332 ### Joomla Integration
333
334 - **[CRM-21348](https://issues.civicrm.org/jira/browse/CRM-21348) Don't hide the
335 "edit" link from logged-in users in profile listings in joomla front-end.
336 ([11199](https://github.com/civicrm/civicrm-core/pull/11199))**
337
338 - **[CRM-21203](https://issues.civicrm.org/jira/browse/CRM-21203) cli.php PHP
339 error prevents cron jobs from running
340 ([11609](https://github.com/civicrm/civicrm-core/pull/11609)) (completes prior
341 work)**
342
343 ### WordPress Integration
344
345 - **[CRM-21277](https://issues.civicrm.org/jira/browse/CRM-21277)
346 CRM_Utils_System_WordPress::validInstallDir spams log with warnings when
347 open_basedir restriction is in effect
348 ([11086](https://github.com/civicrm/civicrm-core/pull/11086))**
349
350 ## <a name="misc"></a>Miscellany
351
352 - **Increment minimum upgradable version
353 ([11864](https://github.com/civicrm/civicrm-core/pull/11864))**
354
355 New versions of CiviCRM no longer contain code facilitating a direct upgrade
356 from versions before 4.1.3. Older sites attempting to upgrade should upgrade
357 to one or more intermediate versions before upgrading to 5.1.0.
358
359 - **(NFC) make (includes taxes) translation work
360 ([11927](https://github.com/civicrm/civicrm-core/pull/11927))**
361
362 - **Extract fetchRelationshipDetails function
363 ([11918](https://github.com/civicrm/civicrm-core/pull/11918))**
364
365 - **NFC Minor comments cleanup on MembershipType
366 ([11909](https://github.com/civicrm/civicrm-core/pull/11909))**
367
368 - **Remove cloning hack from export and add unit tests
369 ([11703](https://github.com/civicrm/civicrm-core/pull/11703))**
370
371 - **NFC Fix function name typo
372 ([11888](https://github.com/civicrm/civicrm-core/pull/11888))**
373
374 - **[NFC] Fix mispelled variable and simplify a couple of other vars
375 ([11886](https://github.com/civicrm/civicrm-core/pull/11886))**
376
377 - **[NFC] remove unused vars
378 ([11874](https://github.com/civicrm/civicrm-core/pull/11874))**
379
380 - **CiviUnitTestCase - Extract Api3TestTrait and Api3DocTrait
381 ([11872](https://github.com/civicrm/civicrm-core/pull/11872))**
382
383 - **Consolidate CustomData code into shared tpl
384 ([11857](https://github.com/civicrm/civicrm-core/pull/11857))**
385
386 - **[nfc] Add test for thousand separators on import
387 ([11859](https://github.com/civicrm/civicrm-core/pull/11859))**
388
389 - **[nfc] Minor test tidy ups
390 ([11860](https://github.com/civicrm/civicrm-core/pull/11860))**
391
392 - **[NFC] fix line endings, using windows line endings, change to 'unix
393 ([11858](https://github.com/civicrm/civicrm-core/pull/11858))**
394
395 - **NFC reformat whitespace in Email.tpl files
396 ([11842](https://github.com/civicrm/civicrm-core/pull/11842))**
397
398 - **Version check test: in alphas don't test for site stats not provided for
399 alphas ([11831](https://github.com/civicrm/civicrm-core/pull/11831))**
400
401 - **Fix style warnings
402 ([526](https://github.com/civicrm/civicrm-drupal/pull/526))**
403
404 - **add GitHub PR template and Contributing templates to WP repo
405 ([127](https://github.com/civicrm/civicrm-wordpress/pull/127))**
406
407 ## <a name="credits"></a>Credits
408
409 This release was developed by the following code authors:
410
411 AGH Strategies - Alice Frumin, Andrew Hunt, Eli Lisseck; Agileware - Agileware
412 Team, Alok Patel, Francis Whittle, Justin Freeman; Andrew Thompson; Australian
413 Greens - Seamus Lee; CiviCRM - Coleman Watts, Tim Otten; CiviDesk - Yashodha
414 Chaku; CompuCorp - Michael Devery, Mukesh Ram; Coop SymbioTIC - Samuel Vanhove;
415 Davis Media Access - Darrick Servis; Fuzion - Jitendra Purohit; JMA Consulting -
416 Monish Deb; Joinery - Allen Shaw; Kompetenzzentrum
417 Technik-Diversity-Chancengleichheit - Niels Heinemann; Left Join Labs - Sean
418 Madsen; Megaphone Technology Consulting - Jon Goldberg; MJW Consulting - Matthew
419 Wire; Naomi Rosenberg; Olivier Tétard; Oxfam Germany - Yuliyana Liyana; Tadpole
420 Collective - Kevin Cristiano; Wikimedia Foundation - Eileen McNaughton
421
422 Most authors also reviewed code for this release; in addition, the following
423 reviewers contributed their comments:
424
425 Ben Jarlett; British Humanist Association - Andrew West; Chris Burgess;
426 Christian Wach; CiviDesk - Sunil Pawar; Community Builders - Andrew Perry;
427 CompuCorp - Jamie Novick; Coop SymbioTIC - Mathieu Lutfy; David Hepper; DevApp -
428 Adam Kwiatkowski; Donald Hirst; Francesc Bassas i Bullich; Fuzion - Peter Davis;
429 Ginkgo Street Labs - Frank Gómez; JMA Consulting - Monish Deb; Johan Vervloet;
430 John Kingsnorth; Korlon - Stuart Gaston; Lemniscus - Noah Miller; Lighthouse
431 Design and Consulting - Brian Shaughnessy; Lorenzo Ardizzone; Lyons Digital
432 Media - Barbara Forbes-Lyons; Marcello Gribaudo; National Democratic Institute -
433 Evan Summers; Neil Zampella; Nicol Wistreich; Pratik Joshi; Progressive
434 Technology Project - Jamie McClelland; Responsive Development Technologies -
435 Thomas Nilefalk; Richard Edgar; SEN Magazine - Jeremy Nicholls; Skvare - Mark
436 Hanna; small biz
437
438 ## <a name="feedback"></a>Feedback
439
440 These release notes are edited by Andrew Hunt. If you'd like to provide
441 feedback on them, please login to https://chat.civicrm.org/civicrm and contact
442 `@agh1`.