5.21.0 release notes - updated big contributors list for 2019
[civicrm-core.git] / release-notes / 5.18.0.md
CommitLineData
4af87c83
AH
1# CiviCRM 5.18.0
2
845002c3
AH
3Released October 2, 2019
4
5- **[Synopsis](#synopsis)**
4af87c83
AH
6- **[Features](#features)**
7- **[Bugs resolved](#bugs)**
8- **[Miscellany](#misc)**
9- **[Credits](#credits)**
845002c3
AH
10- **[Feedback](#feedback)**
11
12## <a name="synopsis"></a>Synopsis
13
14| *Does this version...?* | |
15|:--------------------------------------------------------------- |:-------:|
b838a8ee
AF
16| Fix security vulnerabilities? | no |
17| **Change the database schema?** | **yes** |
18| **Alter the API?** | **yes** |
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** |
4af87c83
AH
23
24## <a name="features"></a>Features
25
26### Core CiviCRM
27
b838a8ee
AF
28- **Enable view/revert delete action for detail logging
29 ([15045](https://github.com/civicrm/civicrm-core/pull/15045))**
4af87c83 30
e846732a
AH
31 If detailed logging is enabled, you can now view and revert deleted
32 information.
33
34- **Download Bower dependencies using Composer
35 ([dev/drupal#8](https://lab.civicrm.org/dev/drupal/issues/8):
36 [15044](https://github.com/civicrm/civicrm-core/pull/15044))**
37
38 This improves performance and caching by downloading Javascript libraries
39 using Composer with `composer-downloads-plugin` and specified zip files rather
40 than Bower.
4af87c83 41
b838a8ee
AF
42- **Add `hook_civicrm_pre` and `hook_civicrm_post` to Domain create and edit
43 operations ([dev/core#1203](https://lab.civicrm.org/dev/core/issues/1203):
44 [15104](https://github.com/civicrm/civicrm-core/pull/15104))**
4af87c83 45
b838a8ee 46 Makes it so one can detect when a new Domain has been created or when a Domain
e846732a 47 has been edited with the usual `hook_civicrm_pre` and `hook_civicrm_post`
b838a8ee 48 callbacks.
4af87c83 49
b838a8ee
AF
50- **Api support for deduping
51 (Work Towards [dev/core#1230](https://lab.civicrm.org/dev/core/issues/1230):
52 [15196](https://github.com/civicrm/civicrm-core/pull/15196),
53 [15188](https://github.com/civicrm/civicrm-core/pull/15188),
54 [15187](https://github.com/civicrm/civicrm-core/pull/15187),
55 [15227](https://github.com/civicrm/civicrm-core/pull/15227) and
56 [15154](https://github.com/civicrm/civicrm-core/pull/15154))**
4af87c83 57
b838a8ee
AF
58 Work toward improving the new API support for deduping including: not
59 geocoding when merging for performance reasons, giving contacts with 'merge
60 duplicate contacts' permission to get dedupe rules, ensuring the API call
e846732a
AH
61 Dedupe.getstatistics requires "Access CiviCRM" and adds a check for 'force
62 merge duplicate contacts' if mode is aggressive.
4af87c83 63
b838a8ee
AF
64- **Add cid parameter in custom group form url & set it for Activity form
65 ([dev/core#752](https://lab.civicrm.org/dev/core/issues/752):
66 [15012](https://github.com/civicrm/civicrm-core/pull/15012))**
4af87c83 67
b838a8ee
AF
68 Adds a contact id parameter (cid=) when loading custom data via back end forms
69 so that hooks can modify behavior based on the `contact_id` being viewed.
4af87c83 70
b838a8ee
AF
71- **Make report listing actions links hookable
72 ([dev/core#1077](https://lab.civicrm.org/dev/core/issues/1077):
73 [15074](https://github.com/civicrm/civicrm-core/pull/15074))**
4af87c83 74
e846732a
AH
75 The actions list on the report listing screen can now be altered by developers
76 using `hook_civicrm_links`.
4af87c83 77
b838a8ee
AF
78- **Fixes inconsistency between constituency summary and constituency detail
79 ([15222](https://github.com/civicrm/civicrm-core/pull/15222))**
4af87c83 80
e846732a
AH
81 This improves the consistency of how the "Print Report" action link functions
82 on the reports listing. Before this change, some "Print Report" links would
83 take the user to the report in print view, and some would trigger a print
84 pop-up.
4af87c83 85
b838a8ee
AF
86- **Add index to civicrm_contact.created_date & modified_date
87 ([15203](https://github.com/civicrm/civicrm-core/pull/15203))**
4af87c83 88
e846732a
AH
89 This adds an index to the `created_date` and `modified_date` columns in the
90 `civicrm_contact` table.
4af87c83 91
b838a8ee
AF
92- **Added field title for Cache table
93 ([15204](https://github.com/civicrm/civicrm-core/pull/15204))**
4af87c83 94
e846732a
AH
95 The Data Access Object for the `civicrm_cache` table now stores titles for
96 each field.
4af87c83 97
b838a8ee
AF
98- **Allow Manual Geo Code flag to be exported
99 ([14998](https://github.com/civicrm/civicrm-core/pull/14998))**
4af87c83 100
e846732a
AH
101 The field denoting that an address has been manually geocoded can now be
102 exported.
4af87c83 103
b838a8ee
AF
104- **Use merge duplicate contacts as api permission for merging
105 ([15155](https://github.com/civicrm/civicrm-core/pull/15155))**
4af87c83 106
b838a8ee
AF
107 Changes the API call `Contact.merge` to require 'merge duplicate contacts'
108 instead of 'Administer CiviCRM'.
4af87c83 109
b838a8ee
AF
110- **Adjust permissions on dedupe exception api to 'merge duplicate contacts'
111 ([15157](https://github.com/civicrm/civicrm-core/pull/15157))**
4af87c83 112
e846732a
AH
113 The API for managing dedupe exceptions now requires the permission "merge
114 duplicate contacts" instead of "Administer CiviCRM".
4af87c83 115
b838a8ee
AF
116- **Open up permissions on Dedupe.getduplicates
117 ([15152](https://github.com/civicrm/civicrm-core/pull/15152))**
4af87c83 118
b838a8ee
AF
119 Less restrictive permissions on the `Dedupe.getduplicates` API (currently only
120 used from unit tests) specifically moves from requiring the permission
e846732a 121 "Administer CiviCRM" to "Access CiviCRM".
4af87c83 122
b838a8ee
AF
123- **Fix inconsistencies in duplicate retrieval
124 ([15160](https://github.com/civicrm/civicrm-core/pull/15160))**
4af87c83 125
b838a8ee
AF
126 Ensures the API call `Dedupe.getduplicates` respects both 'limit' and
127 'search_limit' parameters.
4af87c83 128
b838a8ee
AF
129- **Error log improvements: Provide priority level
130 ([14995](https://github.com/civicrm/civicrm-core/pull/14995))**
4af87c83 131
e846732a 132 Improves error logging by adding the ability to pass a priority level argument
b838a8ee 133 to `CRM_Core_Error::debug_var()`.
4af87c83 134
b838a8ee
AF
135- **Improve deadlock error handling
136 ([258](https://github.com/civicrm/civicrm-packages/pull/258))**
4af87c83 137
b838a8ee
AF
138 Improves deadlock error handling by capturing the error when the deadlock is
139 first hit so the backtrace is retained.
4af87c83 140
e846732a
AH
141- **Better error handling in CRM_Utils_JS::decode
142 ([15145](https://github.com/civicrm/civicrm-core/pull/15145))**
4af87c83 143
e846732a 144 Improves handling of malformed Javascript so as to reduce PHP notices.
4af87c83 145
e846732a
AH
146- **Replace some calls to CRM_Core_Error::fatal with exceptions
147 ([15156](https://github.com/civicrm/civicrm-core/pull/15156))**
4af87c83 148
e846732a
AH
149 Instead of exiting with a fatal error, certain dedupe error situations now
150 throw an exception.
4af87c83 151
b838a8ee 152### CiviEvent
4af87c83 153
b838a8ee
AF
154- **Creating an event clears the cache
155 ([dev/event#14](https://lab.civicrm.org/dev/event/issues/14):
156 [15140](https://github.com/civicrm/civicrm-core/pull/15140))**
4af87c83 157
e846732a
AH
158 This change improves performance by not clearing caches every time an event is
159 created.
4af87c83 160
b838a8ee 161### CiviMembership
4af87c83 162
e846732a
AH
163- **Convert jcalendar date fields to date picker for membership fields to
164 support date picker conversion
165 ([15177](https://github.com/civicrm/civicrm-core/pull/15177),
166 [15186](https://github.com/civicrm/civicrm-core/pull/15186),
167 [15198](https://github.com/civicrm/civicrm-core/pull/15198) and
168 [15200](https://github.com/civicrm/civicrm-core/pull/15200))**
4af87c83 169
e846732a
AH
170 Date fields on membership search screens now use datepicker rather than
171 jCalendar.
172
173 The `join_date` column on the `civicrm_membership` table is now keyed as
174 `membership_join_date` within the DAO in order to support the change to date
175 picker format for Membership date fields.
4af87c83 176
b838a8ee
AF
177- **Add default domain to membershiptype API
178 ([15120](https://github.com/civicrm/civicrm-core/pull/15120))**
4af87c83 179
e846732a
AH
180 The domain ID now defaults to the current domain when using the membership
181 type API.
4af87c83 182
b838a8ee
AF
183- **Fix readability & caching on
184 CRM_Contact_BAO_Relationship::isInheritedMembershipInvalidated
185 ([15061](https://github.com/civicrm/civicrm-core/pull/15061))**
4af87c83 186
b838a8ee 187 Improves caching and performance when calculating inherited memberships.
4af87c83 188
b838a8ee 189### CiviPledge
4af87c83 190
b838a8ee
AF
191- **Update Pledge XML to support date picker conversion
192 ([15180](https://github.com/civicrm/civicrm-core/pull/15180))**
4af87c83 193
b838a8ee
AF
194 Updates the XML and associated files to support the change to date picker
195 format for Pledge date fields.
4af87c83 196
b838a8ee 197### Backdrop Integration
4af87c83 198
b838a8ee
AF
199- **Fail more gracefully when upgrading on PHP5.x
200 ([98](https://github.com/civicrm/civicrm-backdrop/pull/98))**
4af87c83 201
e846732a 202 Provides a clearer error when someone tries to upgrade with PHP 5.x.
4af87c83 203
b838a8ee 204### Drupal Integration
4af87c83 205
b838a8ee
AF
206- **Automatically tag the drupal-8 repository
207 (Work Towards [dev/release#9](https://lab.civicrm.org/dev/release/issues/9):
208 [15149](https://github.com/civicrm/civicrm-core/pull/15149))**
4af87c83 209
b838a8ee
AF
210 Continues work to automatically tag a Drupal8 version when new CiviCRM
211 versions are released as is done for other CMS's.
4af87c83 212
b838a8ee
AF
213- **Error when upgrading to 5.16.0
214 ([dev/drupal#79](https://lab.civicrm.org/dev/drupal/issues/79):
215 [583](https://github.com/civicrm/civicrm-drupal/pull/583))**
4af87c83 216
e846732a 217 Provides a clearer error when someone tries to upgrade with PHP 5.x.
4af87c83 218
b838a8ee 219## <a name="bugs"></a>Bugs resolved
4af87c83 220
b838a8ee 221### Core CiviCRM
4af87c83 222
b838a8ee
AF
223- **Warnings on importing contacts - PHP 7.2
224 (Work Towards [dev/core#772](https://lab.civicrm.org/dev/core/issues/772):
225 [262](https://github.com/civicrm/civicrm-packages/pull/262))**
4af87c83 226
e846732a
AH
227 This fixes a PHP warning on PHP 7.2 using hierarchical select fields, such as
228 selecting the matching fields for import columns. Some fields have no fields
229 nested below them, and those would trigger an error on the `count()` function.
4af87c83 230
b838a8ee
AF
231- **Warnings on CRM_Contribute_Import_Parser re countable
232 ([dev/core#1001](https://lab.civicrm.org/dev/core/issues/1001):
233 [14989](https://github.com/civicrm/civicrm-core/pull/14989))**
4af87c83 234
b838a8ee 235 Fixes a few PHP 7.2 count warnings when importing.
4af87c83 236
b838a8ee
AF
237- **Changing the label for the Inbound Email activity type lets you edit/delete
238 them even if the permission disallows
239 ([dev/core#1123](https://lab.civicrm.org/dev/core/issues/1123):
240 [15240](https://github.com/civicrm/civicrm-core/pull/15240) and
241 [15147](https://github.com/civicrm/civicrm-core/pull/15147))**
4af87c83 242
b838a8ee
AF
243- **Regression: Can't use CiviCRM menu on 5.16.0
244 ([dev/core#1182](https://lab.civicrm.org/dev/core/issues/1182):
245 [15020](https://github.com/civicrm/civicrm-core/pull/15020) and
246 [15019](https://github.com/civicrm/civicrm-core/pull/15019))**
4af87c83 247
b838a8ee
AF
248 Fixes a bug in CiviCRM 5.16.0 where a race condition was causing the CiviCRM
249 Admin Menu to break.
4af87c83 250
b838a8ee
AF
251- **csv import only import one phone number
252 ([dev/core#1187](https://lab.civicrm.org/dev/core/issues/1187):
253 [15190](https://github.com/civicrm/civicrm-core/pull/15190))**
4af87c83 254
b838a8ee
AF
255 Fixes a bug whereby one phone number is not imported if 2 of the same location
256 type but different phone types are in an import.
4af87c83 257
b838a8ee
AF
258- **Fix Psalm issue Class or interface CiviCRM_API3_Exception does not exist
259 ([dev/core#1188](https://lab.civicrm.org/dev/core/issues/1188):
260 [15043](https://github.com/civicrm/civicrm-core/pull/15043))**
4af87c83 261
b838a8ee 262 Ensures that the Psalm Autoloader can find `CiviCRM_API3_Exception`.
4af87c83 263
b838a8ee
AF
264- **File attachment uploads - pptx issue
265 ([dev/core#1190](https://lab.civicrm.org/dev/core/issues/1190):
266 [15239](https://github.com/civicrm/civicrm-core/pull/15239))**
4af87c83 267
b838a8ee 268 Fixes the upgrade function for adding ".pptx" to the list of safe file types.
4af87c83 269
b838a8ee
AF
270- **ENOTICE when creating activity from contact search results / aka Repeat
271 Activity accordion section missing when using Add Activity from contact search
272 results ([dev/core#1192](https://lab.civicrm.org/dev/core/issues/1192):
273 [15079](https://github.com/civicrm/civicrm-core/pull/15079))**
4af87c83 274
e846732a
AH
275 Fixes a PHP notice when using the "Add Activity" action from the contact
276 search results list.
4af87c83 277
b838a8ee
AF
278- **CiviCRM Dashboard does not respect multiple domains
279 ([dev/core#1200](https://lab.civicrm.org/dev/core/issues/1200):
280 [15099](https://github.com/civicrm/civicrm-core/pull/15099))**
4af87c83 281
b838a8ee 282 For sites with multisite enabled ensures that the CiviCRM Dashboard respects
e846732a
AH
283 multiple domains and shows unique dashlets depending on what domain you are
284 using.
4af87c83 285
b838a8ee
AF
286- **Contact subtype is removed after being cached incorrectly
287 ([dev/core#1222](https://lab.civicrm.org/dev/core/issues/1222):
288 [15171](https://github.com/civicrm/civicrm-core/pull/15171))**
4af87c83 289
b838a8ee 290 Ensures the static cache is cleared whenever updating or deleting a DAO
e846732a 291 object.
4af87c83 292
b838a8ee
AF
293- **Regression: Searching on Email broken in advanced search
294 ([dev/core#1244](https://lab.civicrm.org/dev/core/issues/1244):
295 [15255](https://github.com/civicrm/civicrm-core/pull/15255))**
4af87c83 296
e846732a
AH
297 This fixes a problem where attempting to search on email on the Advanced
298 search form resulted in a warning and no results.
4af87c83 299
b838a8ee
AF
300- **Trim form values when adding LIKE operator
301 ([15275](https://github.com/civicrm/civicrm-core/pull/15275))**
4af87c83 302
b838a8ee
AF
303 Fixes a 5.17 regression whereby the email string is no longer being trimmed
304 when searching.
4af87c83 305
b838a8ee
AF
306- **Ensure filtering on email via the api looks for an exact match
307 ([15276](https://github.com/civicrm/civicrm-core/pull/15276))**
4af87c83 308
b838a8ee
AF
309 Fixes a released regression whereby a wildcard was being added to API
310 Contact.get requests with the email parameter.
4af87c83 311
b838a8ee
AF
312- **Fix fatal when saving import mapping with a relationship but 'Primary'
313 location type ([15115](https://github.com/civicrm/civicrm-core/pull/15115))**
4af87c83 314
e846732a
AH
315 When an import column was mapped to a field with the "Primary" location type
316 that was on a related contact, it would result in a fatal error.
4af87c83 317
b838a8ee
AF
318- **Fix export header for 'Contact ID'
319 ([15118](https://github.com/civicrm/civicrm-core/pull/15118))**
4af87c83 320
e846732a
AH
321 This ensures when exporting a contact id column the header is "Contact ID" not
322 "contact_id".
4af87c83 323
b838a8ee
AF
324- **Changed ClassName for ACL cache
325 ([15193](https://github.com/civicrm/civicrm-core/pull/15193))**
4af87c83 326
b838a8ee 327 Ensures `civicrm_acl_cache` and `civicrm_cache` use different entity names.
4af87c83 328
b838a8ee
AF
329- **Set contact communication_style_id as importable
330 ([15205](https://github.com/civicrm/civicrm-core/pull/15205))**
4af87c83 331
b838a8ee 332 Ensures the "Contact Communication Style" is visible in profile view mode.
4af87c83 333
b838a8ee
AF
334- **Incorporate searchLimit in dedupe cacheKey
335 ([15185](https://github.com/civicrm/civicrm-core/pull/15185))**
4af87c83 336
e846732a
AH
337 When you change the search limit after a duplicate search has been performed,
338 this ensures that a new search is run.
4af87c83 339
b838a8ee
AF
340- **Allow for the deselection of sorting filters
341 ([15029](https://github.com/civicrm/civicrm-core/pull/15029))**
4af87c83 342
b838a8ee 343 Fixes a bug where removing sorting filters on reports and refreshing the
e846732a 344 results would nevertheless retain the sorting filters.
4af87c83 345
b838a8ee
AF
346- **CRM_Utils_Array::crmInArray() should recurse properly
347 ([dev/core#1196](https://lab.civicrm.org/dev/core/issues/1196):
348 [15092](https://github.com/civicrm/civicrm-core/pull/15092))**
4af87c83 349
b838a8ee
AF
350- **Add ts() to deceased string
351 ([15211](https://github.com/civicrm/civicrm-core/pull/15211))**
4af87c83 352
e846732a
AH
353 The word "deceased" when appended to a contact's name is now translatable.
354
b838a8ee
AF
355- **Fatal Error in "Search Builder" if "Household" Contact type is disabled.
356 ([dev/core#1246](https://lab.civicrm.org/dev/core/issues/1246):
357 [15289](https://github.com/civicrm/civicrm-core/pull/15289))**
4af87c83 358
b838a8ee
AF
359- **Do not show Activity Separation on when viewing an Activity
360 ([15046](https://github.com/civicrm/civicrm-core/pull/15046))**
4af87c83 361
e846732a
AH
362 The option to create separate activities for each contact, only applicable
363 when creating a new activity, would erroneously appear when viewing an
364 activity.
4af87c83 365
e846732a
AH
366- **Activity profile on Update multiple activities action displays duplicate
367 assignees ([dev/core#1185](https://lab.civicrm.org/dev/core/issues/1185):
368 [15035](https://github.com/civicrm/civicrm-core/pull/15035))**
369
370 The list of assignees would display all of the assignees for each previous row
371 in addition to the assignee(s) for that activity.
4af87c83 372
b838a8ee
AF
373- **Ensure that civicrm_dashboard has a foreign key to civicrm_domain
374 ([15119](https://github.com/civicrm/civicrm-core/pull/15119))**
4af87c83 375
e846732a
AH
376- **Manage Group search message fix
377 ([15052](https://github.com/civicrm/civicrm-core/pull/15052))**
378
379 When no the group listing is filtered and no groups match the criteria, the
380 message says that more clearly rather than stating there are no groups on the
381 site.
382
b838a8ee 383### CiviCampaign
4af87c83 384
b838a8ee
AF
385- **Actions in campaign dashboard not working with pop-up disabled
386 ([dev/core#1233](https://lab.civicrm.org/dev/core/issues/1233):
387 [15233](https://github.com/civicrm/civicrm-core/pull/15233))**
4af87c83 388
b838a8ee 389 Ensures users with pop ups deactivated can edit and delete campaigns.
4af87c83 390
b838a8ee 391### CiviCase
4af87c83 392
b838a8ee
AF
393- **Proposal to fix longstanding name vs label problems for case roles (Work
394 Towards [dev/core#1046](https://lab.civicrm.org/dev/core/issues/1046):
395 [15192](https://github.com/civicrm/civicrm-core/pull/15192) and
396 [15182](https://github.com/civicrm/civicrm-core/pull/15182))**
4af87c83 397
b838a8ee
AF
398 These changes work towards fixing the label being used as the name in some
399 places in CiviCase by allowing for an override tag in the xml to specify the
400 actual "name".
4af87c83 401
b838a8ee
AF
402- **Changing a civicase activity's label breaks the max_instances check
403 (Work Towards [dev/core#1116](https://lab.civicrm.org/dev/core/issues/1116):
404 [14999](https://github.com/civicrm/civicrm-core/pull/14999),
405 [15002](https://github.com/civicrm/civicrm-core/pull/15002),
406 [15000](https://github.com/civicrm/civicrm-core/pull/15000) and
407 [15032](https://github.com/civicrm/civicrm-core/pull/15032))**
4af87c83 408
b838a8ee
AF
409 Refactors and cleans up code in preparation for fixing a bug where CiviCase
410 activity's label breaks the max_instances check.
4af87c83 411
b838a8ee
AF
412- **Fix search for case tags that are part of tag sets
413 ([15212](https://github.com/civicrm/civicrm-core/pull/15212))**
4af87c83 414
b838a8ee 415 Fixes a DB Error when searching for tags that are a part of a tag set.
4af87c83 416
b838a8ee
AF
417- **Switch to relationship BAO when modifying relationships in change case
418 status so we don't bypass hooks
419 ([15030](https://github.com/civicrm/civicrm-core/pull/15030))**
4af87c83 420
b838a8ee
AF
421- **Word Replacements not working on manage case Roles
422 ([dev/core#1218](https://lab.civicrm.org/dev/core/issues/1218):
423 [15161](https://github.com/civicrm/civicrm-core/pull/15161))**
4af87c83 424
b838a8ee 425### CiviContribute
4af87c83 426
b838a8ee
AF
427- **Renaming a price option / fee level breaks event participant lists
428 ([CRM-17182](https://issues.civicrm.org/jira/browse/CRM-17182):
5a7711ed
AH
429 [15064](https://github.com/civicrm/civicrm-core/pull/15064) and
430 [15350](https://github.com/civicrm/civicrm-core/pull/15350))**
4af87c83 431
b838a8ee
AF
432 Fixes a bug where the `fee_amount` was being changed whenever a label was
433 changed and moves from searching based on regex on the `fee_amount` column to
434 searching based on the `price_field_value` id.
4af87c83 435
e846732a
AH
436- **Add pre/post hooks for price set / field/option
437 ([dev/core#870](https://lab.civicrm.org/dev/core/issues/870):
438 [15076](https://github.com/civicrm/civicrm-core/pull/15076))**
439
440 The `hook_civicrm_pre` and `hook_civicrm_post` hooks get invoked when adding
441 price sets, fields, and options.
442
443- **Event/Contribution amounts are duplicated when the form is saved
444 ([dev/core#1240](https://lab.civicrm.org/dev/core/issues/1240):
445 [15245](https://github.com/civicrm/civicrm-core/pull/15245))**
446
447 Fixes a bug where saving the "amounts" tab of either an event or contribution
448 page (when using that form to enter options, rather than a price set) results in the
449 duplication of the amount options listed.
450
451- **Fix PayPalImpl Contribution Status PseudoConstant for non-English
452 ([15164](https://github.com/civicrm/civicrm-core/pull/15164))**
453
454 Ensures contribution statuses are set correctly for sites using PayPal Express
455 and a language other than English by switching to using the name property
456 instead of the label.
457
458- **Fix an HTML error in Calculate.tpl
459 ([15102](https://github.com/civicrm/civicrm-core/pull/15102))**
460
461 This resolves a `<span>` that was not closed correctly on the calculation of a
462 price set's total amount due.
463
464- **Use api to create activity and removed hardcoded status id
465 ([14621](https://github.com/civicrm/civicrm-core/pull/14621))**
466
467 When exporting an accounting batch, the activity that is created is now done
468 so using the API, and it uses the status name `Completed` rather than a
469 hard-coded status ID `2`.
470
b838a8ee
AF
471- **Fix wrong variable in check for profiles on contributionpage
472 ([15093](https://github.com/civicrm/civicrm-core/pull/15093))**
4af87c83 473
b838a8ee
AF
474 Ensures the correct variable is being checked for pre profile types when
475 configuring a Contribution Page.
4af87c83 476
b838a8ee
AF
477- **Batch payment page breaks when an exported activity has no file to download
478 ([dev/financial#58](https://lab.civicrm.org/dev/financial/issues/58):
479 [14367](https://github.com/civicrm/civicrm-core/pull/14367))**
4af87c83 480
b838a8ee
AF
481- **Stop adding a refund payment from creating extraneous financial items
482 ([15143](https://github.com/civicrm/civicrm-core/pull/15143))**
4af87c83 483
b838a8ee 484### CiviEvent
4af87c83 485
b838a8ee
AF
486- **Most recent contact note exposed in event confirmation emails
487 ([dev/event#10](https://lab.civicrm.org/dev/event/issues/10):
488 [15060](https://github.com/civicrm/civicrm-core/pull/15060))**
4af87c83 489
b838a8ee 490 Fixes a bug where when submitting an event registration which contains a
e846732a
AH
491 profile which contains a note field. If the note was left blank, then the
492 confirmation/notification emails would contain the most recent note in the
493 contact's record, potentially exposing confidential information.
4af87c83 494
e846732a 495- **Custom field values for a new Event based on an Event Template are not
b838a8ee 496 checked causing false validation message and Event not to
e846732a 497 save ([dev/core#1241](https://lab.civicrm.org/dev/core/issues/1241):
b838a8ee 498 [15296](https://github.com/civicrm/civicrm-core/pull/15296))**
4af87c83 499
867dc415
TO
500- **Confirmation emails include flawed subtitle for post-profiles
501 ([dev/event#15](https://lab.civicrm.org/dev/event/issues/15): [#15380](https://github.com/civicrm/civicrm-core/pull/15380))**
502
503 Fixes a regression from 5.17.0 when sending a confirmation email.
504 The confirmation email includes subsections to summarize any
505 post-profile data, but the title was miscomputed. This manifested
506 as either a page crash or an inaccurate title.
507
b838a8ee 508### CiviGrant
4af87c83 509
b838a8ee
AF
510- **Grant in Edit mode doesn't show the associated contact
511 ([dev/core#1065](https://lab.civicrm.org/dev/core/issues/1065):
512 [15238](https://github.com/civicrm/civicrm-core/pull/15238) and
513 [15209](https://github.com/civicrm/civicrm-core/pull/15209))**
4af87c83 514
e846732a 515 Ensures that the associated contact field is shown when editing a grant.
4af87c83 516
b838a8ee
AF
517- **Fixes for taking dynamic form name in grant search
518 ([15075](https://github.com/civicrm/civicrm-core/pull/15075))**
4af87c83 519
e846732a
AH
520 This removes the hard-coded form name when retrieving the search results in
521 preparation for a search action.
4af87c83 522
b838a8ee 523### CiviMail
4af87c83 524
e846732a
AH
525- **SMTP help text is misleading - references the wrong admin screen
526 ([dev/core#879](https://lab.civicrm.org/dev/core/issues/879):
527 [15165](https://github.com/civicrm/civicrm-core/pull/15165))**
4af87c83 528
b838a8ee 529 Fixes up the help text displayed when testing the SMTP configuration fails.
4af87c83 530
b838a8ee
AF
531- **Remove template field if using Mosaico in non shoreditch mode
532 ([14927](https://github.com/civicrm/civicrm-core/pull/14927))**
4af87c83 533
b838a8ee 534### CiviMember
4af87c83 535
b838a8ee
AF
536- **Fix metadata on member export
537 ([14916](https://github.com/civicrm/civicrm-core/pull/14916))**
4af87c83 538
b838a8ee
AF
539 Ensures when exporting memberships headings are set appropriately for the
540 following columns: `member_is_override`, `membership_recur_id` and
541 `max_related`.
5a7711ed 542
e846732a
AH
543- **Incorrect line item created for back-end membership sign-up using price set
544 and CiviDiscount ([dev/core#860](https://lab.civicrm.org/dev/core/issues/860):
545 [15004](https://github.com/civicrm/civicrm-core/pull/15004))**
546
b838a8ee
AF
547- **[regression] Recurring contributions no longer properly update memberships
548 (on PayPal Pro, maybe others)
549 ([dev/membership#13](https://lab.civicrm.org/dev/membership/issues/13):
550 [15053](https://github.com/civicrm/civicrm-core/pull/15053))**
4af87c83 551
b838a8ee
AF
552- **Make sure inherited memberships are not themselves inherited
553 ([15114](https://github.com/civicrm/civicrm-core/pull/15114))**
4af87c83 554
e846732a
AH
555 This prevents contacts from inheriting memberships that were inherited from
556 them.
557
b838a8ee
AF
558- **{Membership.Fee} appears on Membership Renewal Reminder emails with 9
559 decimal places ([dev/core#377](https://lab.civicrm.org/dev/core/issues/377):
560 [14992](https://github.com/civicrm/civicrm-core/pull/14992))**
4af87c83 561
b838a8ee 562### Drupal Integration
4af87c83 563
b838a8ee
AF
564- **Drupal8: getUrlPath: avoid relying on the deprecated 'q' variable
565 (Work Towards [dev/drupal#52](https://lab.civicrm.org/dev/drupal/issues/52):
566 [15268](https://github.com/civicrm/civicrm-core/pull/15268))**
4af87c83 567
b838a8ee
AF
568 In Drupal8, the 'q' variable has been deprecated which has resulted in CiviCRM
569 throwing a bunch of PHP notices. This PR silences those notices while a more
570 long term fix is developed.
4af87c83 571
b838a8ee 572### Joomla Integration
4af87c83 573
b838a8ee
AF
574- **Some error messages render a chunk of markup as plain text
575 ([dev/joomla#10](https://lab.civicrm.org/dev/joomla/issues/10):
576 [15159](https://github.com/civicrm/civicrm-core/pull/15159))**
4af87c83 577
b838a8ee
AF
578 Removes Joomla-specific error display and use native CiviCRM display to avoid
579 some error messages rendering as plain text.
4af87c83 580
b838a8ee
AF
581- **PHP 7.2 countable warning after installation
582 ([dev/joomla#15](https://lab.civicrm.org/dev/joomla/issues/15):
583 [53](https://github.com/civicrm/civicrm-joomla/pull/53))**
4af87c83 584
b838a8ee
AF
585- **[Joomla 4.0] CiviCRM's CSS interferes with Joomla's top header background
586 colour ([dev/joomla#24](https://lab.civicrm.org/dev/joomla/issues/24):
587 [15137](https://github.com/civicrm/civicrm-core/pull/15137))**
4af87c83 588
b838a8ee 589## <a name="misc"></a>Miscellany
4af87c83 590
e846732a
AH
591- **Swap CRM_Utils_Array::value for empty() in conditionals
592 ([15005](https://github.com/civicrm/civicrm-core/pull/15005))**
593
b838a8ee
AF
594- **Possible timing issue with test phpunit/api/v3/AttachmentTest::testCreate
595 ([dev/core#938](https://lab.civicrm.org/dev/core/issues/938):
596 [15216](https://github.com/civicrm/civicrm-core/pull/15216))**
4af87c83 597
b838a8ee
AF
598- **Change connection and results charsets to utf8mb4 on MySQL 5.5.3+
599 ([241](https://github.com/civicrm/civicrm-packages/pull/241))**
4af87c83 600
b838a8ee
AF
601- **Fix upgrade version for #13487
602 ([15031](https://github.com/civicrm/civicrm-core/pull/15031))**
4af87c83 603
b838a8ee
AF
604- **Update select2 to latest 3.x + patches
605 ([15054](https://github.com/civicrm/civicrm-core/pull/15054))**
4af87c83 606
b838a8ee
AF
607- **Further work on payment.create consolidation - always handle financials from
608 payment.create ([14673](https://github.com/civicrm/civicrm-core/pull/14673))**
4af87c83 609
b838a8ee
AF
610- **Extract function to create email activity when sending an email to contact
611 ([15133](https://github.com/civicrm/civicrm-core/pull/15133))**
4af87c83 612
b838a8ee
AF
613- **Extract cancelParticipant and cancelMembership functions in baseIPN
614 ([15134](https://github.com/civicrm/civicrm-core/pull/15134))**
4af87c83 615
b838a8ee
AF
616- **Rewrite subTypeInfo to use caching mechanism
617 ([14715](https://github.com/civicrm/civicrm-core/pull/14715))**
4af87c83 618
b838a8ee
AF
619- **providing clear indication that civicrm_engage module is deprecated.
620 ([582](https://github.com/civicrm/civicrm-drupal/pull/582))**
4af87c83 621
b838a8ee
AF
622- **distmaker - Finish migrating bower.json => composer.json
623 ([15148](https://github.com/civicrm/civicrm-core/pull/15148))**
4af87c83 624
b838a8ee
AF
625- **Switch recordAdditionalPayment fully over to api
626 ([14408](https://github.com/civicrm/civicrm-core/pull/14408))**
4af87c83 627
b838a8ee
AF
628- **Add note about testRenewMembership failing on certain days
629 ([15167](https://github.com/civicrm/civicrm-core/pull/15167))**
4af87c83 630
b838a8ee
AF
631- **Someimes ya just gotta say enough already
632 ([15175](https://github.com/civicrm/civicrm-core/pull/15175))**
4af87c83 633
b838a8ee
AF
634- **Extend loadSavedMapping to check defaults
635 ([15179](https://github.com/civicrm/civicrm-core/pull/15179))**
4af87c83 636
b838a8ee
AF
637- **Initial refactor of BaseIPN
638 ([15129](https://github.com/civicrm/civicrm-core/pull/15129))**
4af87c83 639
b838a8ee
AF
640- **Convert pledge date fields to use datepicker rather than jcalendar
641 ([15170](https://github.com/civicrm/civicrm-core/pull/15170))**
4af87c83 642
b838a8ee
AF
643- **Use metadata for pledgeDateRange fields
644 ([15191](https://github.com/civicrm/civicrm-core/pull/15191))**
4af87c83 645
b838a8ee
AF
646- **Add minimal test for testExportFinancialBatch
647 ([15136](https://github.com/civicrm/civicrm-core/pull/15136))**
4af87c83 648
b838a8ee
AF
649- **Code cleanup in CRM_Core_Permission::check
650 ([15141](https://github.com/civicrm/civicrm-core/pull/15141))**
4af87c83 651
b838a8ee
AF
652- **Event confirm - (very) minor cleanup + test
653 ([15010](https://github.com/civicrm/civicrm-core/pull/15010))**
4af87c83 654
b838a8ee
AF
655- **Stabalize Attachment API Test
656 ([15066](https://github.com/civicrm/civicrm-core/pull/15066))**
4af87c83 657
b838a8ee
AF
658- **Remove ?last? instances of ->free()
659 ([dev/core#562](https://lab.civicrm.org/dev/core/issues/562):
660 [14990](https://github.com/civicrm/civicrm-core/pull/14990))**
4af87c83 661
b838a8ee
AF
662- **Add myself to the contributor list
663 ([15036](https://github.com/civicrm/civicrm-core/pull/15036))**
4af87c83 664
b838a8ee
AF
665- **Remove silly dumb unreachable lines
666 ([15033](https://github.com/civicrm/civicrm-core/pull/15033))**
4af87c83 667
b838a8ee
AF
668- **Deprecate CRM_Core_Config::addressSequence()
669 ([15126](https://github.com/civicrm/civicrm-core/pull/15126))**
4af87c83 670
b838a8ee
AF
671- **Deprecate CRM_Core_Config::defaultContactCountry and
672 defaultContactCountryName
673 ([15127](https://github.com/civicrm/civicrm-core/pull/15127))**
4af87c83 674
b838a8ee
AF
675- **Use metadata for dataPatterns
676 ([15224](https://github.com/civicrm/civicrm-core/pull/15224))**
4af87c83 677
b838a8ee
AF
678- **SyntaxConformanceTest::testSqlOperators - Skip "Dedupe" entity on MySQL 5.5
679 ([15234](https://github.com/civicrm/civicrm-core/pull/15234))**
4af87c83 680
b838a8ee
AF
681- **Add in 5.17.1 Release notes and migrate .tpl file for 5.17.1 to 5.18 to
682 support upgrade
683 ([15253](https://github.com/civicrm/civicrm-core/pull/15253))**
4af87c83 684
b838a8ee
AF
685- **(NFC) Add comments to relate to gitlab ticket
686 ([dev/core#927](https://lab.civicrm.org/dev/core/issues/927):
687 [15128](https://github.com/civicrm/civicrm-core/pull/15128))**
4af87c83 688
b838a8ee
AF
689- **Remove unused method CRM_Contact_BAO_Contact_Utils::maxLocations
690 ([15091](https://github.com/civicrm/civicrm-core/pull/15091))**
4af87c83 691
b838a8ee
AF
692- **Remove unused Selenium binaries
693 ([263](https://github.com/civicrm/civicrm-packages/pull/263))**
4af87c83 694
b838a8ee
AF
695- **Remove a few unused scripts from tools/bin/scripts
696 ([15078](https://github.com/civicrm/civicrm-core/pull/15078))**
4af87c83 697
b838a8ee
AF
698- **Remove deprecated unused function.
699 ([15070](https://github.com/civicrm/civicrm-core/pull/15070))**
4af87c83 700
b838a8ee
AF
701- **Remove unused skipRedirect param
702 ([15125](https://github.com/civicrm/civicrm-core/pull/15125))**
4af87c83 703
b838a8ee
AF
704- **[clean up][ export] Remove membership_auto_renew from defaultReturn
705 properties ([14980](https://github.com/civicrm/civicrm-core/pull/14980))**
4af87c83 706
b838a8ee
AF
707- **[Ref] [Import] Use processor to determine website type, location type, test
708 ([15116](https://github.com/civicrm/civicrm-core/pull/15116))**
4af87c83 709
b838a8ee
AF
710- **[Import] [ref] - minor cleanup to reduce code complexity
711 ([15097](https://github.com/civicrm/civicrm-core/pull/15097))**
4af87c83 712
b838a8ee
AF
713- **[ref] [ import] Extend tests & simpler retrieval to relationship_type_id
714 ([15130](https://github.com/civicrm/civicrm-core/pull/15130))**
4af87c83 715
b838a8ee
AF
716- **[REF] Import - minor cleanup - generate js on the processor class
717 ([15183](https://github.com/civicrm/civicrm-core/pull/15183))**
4af87c83 718
b838a8ee
AF
719- **[Import] Minor cleanup on membership import
720 ([15013](https://github.com/civicrm/civicrm-core/pull/15013))**
4af87c83 721
b838a8ee
AF
722- **[Import][ref] Minor code improvement - move setDefaults to processor
723 ([15189](https://github.com/civicrm/civicrm-core/pull/15189))**
4af87c83 724
b838a8ee
AF
725- **[Ref] [Import] more code cleanup
726 ([15219](https://github.com/civicrm/civicrm-core/pull/15219))**
4af87c83 727
b838a8ee
AF
728- **[Ref] [Import] Final round in the cleanup Load Mapping form epic
729 ([15226](https://github.com/civicrm/civicrm-core/pull/15226))**
4af87c83 730
b838a8ee
AF
731- **[Import] [REF] code cleanup & test on the code to 'guess the intended
732 field from the column name'
733 ([15220](https://github.com/civicrm/civicrm-core/pull/15220))**
734
735- **[REF] [Import] Minor cleanup on status setting.
736 ([15015](https://github.com/civicrm/civicrm-core/pull/15015))**
737
738- **[REF] [Import] extract saved mapping code to parent class
739 ([15017](https://github.com/civicrm/civicrm-core/pull/15017))**
740
741- **[Import] [Cleanup] remove unused parameters
742 ([14981](https://github.com/civicrm/civicrm-core/pull/14981))**
743
744- **[Ref] [Import] move metadata calculations to a trait
745 ([15018](https://github.com/civicrm/civicrm-core/pull/15018))**
746
747- **[Test] [Ref] [Import]Add wrapper class for importProcessor
748 ([15028](https://github.com/civicrm/civicrm-core/pull/15028))**
749
750- **Refactor CRM_Contact_BAO_Relationship::add to autoload missing params from
751 existing record ([15103](https://github.com/civicrm/civicrm-core/pull/15103)
752 and [15123](https://github.com/civicrm/civicrm-core/pull/15123))**
753
754- **[Ref] Extract addInheritedMembership
755 ([15113](https://github.com/civicrm/civicrm-core/pull/15113))**
756
757- **[REF] minor code refactor on import - Pass ProcessorObject into
758 loadSavedMapping & use it to load the formName
759 ([15068](https://github.com/civicrm/civicrm-core/pull/15068))**
760
761- **Minor refactor of 'Pending' parameter for processMembership
762 ([15124](https://github.com/civicrm/civicrm-core/pull/15124))**
763
764- **[REF] Very minor code cleanup on import code with good test cover
765 ([15173](https://github.com/civicrm/civicrm-core/pull/15173))**
766
767- **[REF] Move clone template functionality from api to bao
768 ([15163](https://github.com/civicrm/civicrm-core/pull/15163))**
769
770- **[REF] Extract chunk of code relating to whether to disabled an inherited
771 relationship ([14955](https://github.com/civicrm/civicrm-core/pull/14955))**
772
773- **[REF] Move calculation of js for import fields WITH relationship keys to
774 processor. ([15218](https://github.com/civicrm/civicrm-core/pull/15218))**
775
776- **[Datepicker][REF] Convert mailing date field on mailing search screen…
777 ([15181](https://github.com/civicrm/civicrm-core/pull/15181))**
778
b838a8ee
AF
779- **[Ref] Import use process for relationship defaults, add test
780 ([15215](https://github.com/civicrm/civicrm-core/pull/15215))**
781
782- **[REF] extract send receipt in MembershipRenewal fn
783 ([15117](https://github.com/civicrm/civicrm-core/pull/15117))**
784
785- **[NFC] Fix test syntax
786 ([15067](https://github.com/civicrm/civicrm-core/pull/15067))**
787
788- **[NFC] swap instances where double = is used but it should be triple =
789 ([15049](https://github.com/civicrm/civicrm-core/pull/15049))**
790
791- **[NFC] Update Upgrade Template to use short array syntax
792 ([15057](https://github.com/civicrm/civicrm-core/pull/15057))**
793
794- **[NFC] Remove redundant annotation
795 ([15172](https://github.com/civicrm/civicrm-core/pull/15172))**
796
797- **(NFC) assertPhpSupport - Code cleanup
798 ([164](https://github.com/civicrm/civicrm-wordpress/pull/164))**
799
800- **(NFC) civicrm.drush.inc - Cleanup style
801 ([99](https://github.com/civicrm/civicrm-backdrop/pull/99))**
802
803- **[NFC] Update Default report instances that filter on join date to be …
804 ([15247](https://github.com/civicrm/civicrm-core/pull/15247))**
805
806- **[NFC] Add ImportProcessor class & unit tests + extend existing cover
807 ([15072](https://github.com/civicrm/civicrm-core/pull/15072))**
808
809- **[NFC] Update the APIv3 documentation links.
810 ([15077](https://github.com/civicrm/civicrm-core/pull/15077))**
811
812- **(NFC) GenericAssertionsTrait - Improve docblocks
813 ([15071](https://github.com/civicrm/civicrm-core/pull/15071))**
814
815- **[NFC] Update Examples
816 ([15085](https://github.com/civicrm/civicrm-core/pull/15085))**
817
818- **[Test] [NFC] upgrade remaining export tests
819 ([15095](https://github.com/civicrm/civicrm-core/pull/15095))**
820
821- **[Test] Bring to life dormant test
822 ([15150](https://github.com/civicrm/civicrm-core/pull/15150))**
823
824- **[TEST] Enable apiv4 testing for GroupNesting and GroupOrganization entities
825 ([15217](https://github.com/civicrm/civicrm-core/pull/15217))**
826
827- **[Test] Demonstrate the truthiness of CRM_Utils_System::isNull
828 ([15027](https://github.com/civicrm/civicrm-core/pull/15027))**
829
830- **Unit test for custom date parsing
831 ([14988](https://github.com/civicrm/civicrm-core/pull/14988))**
832
833- **[NFC] [Test] dev/core#1098 Add unit test & code comments relating to the
834 slow activity search
835 ([15016](https://github.com/civicrm/civicrm-core/pull/15016))**
836
837- **[Import] [Test] Initial test on loadSavedMapping function.
838 ([15050](https://github.com/civicrm/civicrm-core/pull/15050))**
839
840- **[Test] Tolerance parameter in attachmenttest needs to be one higher for
841 integers ([15069](https://github.com/civicrm/civicrm-core/pull/15069))**
842
843- **[Test] Fix Last_name in CiviUnitTestCase::activityCreate
844 ([15112](https://github.com/civicrm/civicrm-core/pull/15112))**
845
846- **test for PR
847 ([15121](https://github.com/civicrm/civicrm-core/pull/15121))**
4af87c83
AH
848
849## <a name="credits"></a>Credits
850
851This release was developed by the following code authors:
852
b838a8ee
AF
85319ATF77; AGH Strategies - Andrew Hunt; Agileware - Justin Freeman; Andrew
854Thompson; Australian Greens - Seamus Lee; Caltha - Tomasz Pietrzkowski;
855Christian Wach; Circle Interactive - Dave Jenkins, Pradeep Nayak, Reece Benson;
856CiviCoop - Jaap Jansma; CiviCRM - Coleman Watts, Tim Otten; CiviDesk - Yashodha
857Chaku; Coop SymbioTIC - Mathieu Lutfy; Dave D; Electronic Frontier Foundation -
858Mark Burdett; Florian Kohrt; Greenpeace CEE - Patrick Figel; JMA Consulting -
859Monish Deb; John Kingsnorth; Megaphone Technology Consulting - Jon Goldberg; MJW
860Consulting - Matthew Wire; mmyriam; Onyemenam Ndubuisi; Progressive Technology
861Project - Jamie McClelland; Tadpole Collective - Kevin Cristiano; Wikimedia
862Foundation - Eileen McNaughton
4af87c83
AH
863
864Most authors also reviewed code for this release; in addition, the following
865reviewers contributed their comments:
866
b838a8ee
AF
867AGH Strategies - Alice Frumin; Agileware - Francis Whittle, Pengyi Zhang;
868don-alejandro-z; Fuzion - Jitendra Purohit; iXiam - Luciano Spiegel; JMA
869Consulting - Joe Murray; Nicol Wistreich; Semper IT - Karin Gerritsen; Squiffle
cab50d1b 870Consulting - Aidan Saunders
845002c3
AH
871
872## <a name="feedback"></a>Feedback
873
874These release notes are edited by Alice Frumin and Andrew Hunt. If you'd like
875to provide feedback on them, please log in to https://chat.civicrm.org/civicrm
876and contact `@agh1`.