Commit | Line | Data |
---|---|---|
88661292 AH |
1 | # CiviCRM 5.4.0 |
2 | ||
3 | Released August 1, 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?** | **yes** | | |
18 | | **Alter the API?** | **yes** | | |
19 | | **Require attention to configuration options?** | **yes** | | |
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-20430](https://issues.civicrm.org/jira/browse/CRM-20430) A permission | |
29 | 'save Report Criteria' | |
30 | ([12107](https://github.com/civicrm/civicrm-core/pull/12107))** | |
31 | ||
32 | Permission to edit the criteria for saved reports is now separate from the | |
33 | permission to access and preview modifications of report criteria. This will | |
34 | prevent non-privileged users from modifying the criteria of an organization's | |
35 | standard reports. However when upgrading, site administrators will need to | |
36 | grant the Save Report Criteria permission to roles that need that capability. | |
37 | ||
38 | - **[dev/core#174](https://lab.civicrm.org/dev/core/issues/174) Consistently use | |
39 | swappable cache interfaces | |
40 | ([12321](https://github.com/civicrm/civicrm-core/pull/12321), | |
41 | [12322](https://github.com/civicrm/civicrm-core/pull/12322), | |
42 | [12323](https://github.com/civicrm/civicrm-core/pull/12323), | |
43 | [12330](https://github.com/civicrm/civicrm-core/pull/12330), | |
44 | [12331](https://github.com/civicrm/civicrm-core/pull/12331), | |
45 | [12336](https://github.com/civicrm/civicrm-core/pull/12336), | |
46 | [12342](https://github.com/civicrm/civicrm-core/pull/12342), | |
47 | [12348](https://github.com/civicrm/civicrm-core/pull/12348), | |
48 | [12354](https://github.com/civicrm/civicrm-core/pull/12354), | |
49 | [12362](https://github.com/civicrm/civicrm-core/pull/12362), | |
50 | [12368](https://github.com/civicrm/civicrm-core/pull/12368), | |
51 | [12376](https://github.com/civicrm/civicrm-core/pull/12376), | |
52 | [12378](https://github.com/civicrm/civicrm-core/pull/12378), | |
53 | [12379](https://github.com/civicrm/civicrm-core/pull/12379), | |
54 | [12380](https://github.com/civicrm/civicrm-core/pull/12380), | |
55 | [12381](https://github.com/civicrm/civicrm-core/pull/12381), | |
56 | [12389](https://github.com/civicrm/civicrm-core/pull/12389), and | |
57 | [215](https://github.com/civicrm/civicrm-packages/pull/215))** | |
58 | ||
f68a37c6 TO |
59 | Sites using Redis or Memcache for caches and sessions will now use those |
60 | facilities exclusively rather than retaining the `civicrm_cache` table as | |
61 | a backstop. This improves performance for these sites, especially those | |
62 | using multiple MySQL servers. | |
63 | ||
64 | As a precaution, Redis or Memcache administrators with very active sites | |
65 | may wish to double-check that they have ample capacity for their caches and | |
66 | sessions. | |
67 | ||
68 | For developers, the `CRM_Utils_Cache` APIs now support expiration/TTL | |
69 | times and [PSR-16 CacheInterface](https://www.php-fig.org/psr/psr-16/). | |
70 | The Civi implementation is slightly more permissive than the PSR-16 | |
71 | specification; for full compliance, enable `CIVICRM_PSR16_STRICT`. | |
88661292 AH |
72 | |
73 | - **[CRM-21574](https://issues.civicrm.org/jira/browse/CRM-21574) Allow to | |
74 | disable sending of email from source contact for tell a friend on pcp | |
75 | ([12355](https://github.com/civicrm/civicrm-core/pull/12355)) (preliminary | |
76 | work)** | |
77 | ||
78 | Emails from the "tell a friend" feature are sent as if they are from the | |
79 | donor's address. This can cause delivery failures as the site may not be a | |
80 | valid source for the donor's email domain. Changes here are preliminary | |
81 | cleanup. | |
82 | ||
83 | - **[dev/core#32](https://lab.civicrm.org/dev/core/issues/32) Add option to | |
84 | disable cancel button on a profile form | |
85 | ([11883](https://github.com/civicrm/civicrm-core/pull/11883))** | |
86 | ||
87 | The Cancel button is now optional on profile forms. | |
88 | ||
89 | - **[CRM-21392](https://issues.civicrm.org/jira/browse/CRM-21392) Allow viewing | |
90 | groups/smartgroups as as other entities (eg. memberships, events) | |
91 | ([11241](https://github.com/civicrm/civicrm-core/pull/11241))** | |
92 | ||
93 | The Find Groups page now has a similar "View Results As" feature as the | |
94 | Advanced Search: you can choose to view memberships, events, activities, etc. | |
95 | of group subscribers rather than the contacts themselves. | |
96 | ||
97 | - **[CRM-21622](https://issues.civicrm.org/jira/browse/CRM-21622) Make the Add | |
98 | Parent Groups on Group Settings be a multiselect | |
99 | ([11481](https://github.com/civicrm/civicrm-core/pull/11481))** | |
100 | ||
101 | The New Group form now allows you to set multiple parent groups for a single | |
102 | group. | |
103 | ||
104 | - **[CRM-21460](https://issues.civicrm.org/jira/browse/CRM-21460) Programmatic | |
105 | access to job execution status | |
106 | ([11337](https://github.com/civicrm/civicrm-core/pull/11337))** | |
107 | ||
108 | Extension developers can implement two new hooks, `hook_civicrm_preJob` and | |
109 | `hook_civicrm_postJob`, which are invoked before and after executing a | |
110 | scheduled job. | |
111 | ||
112 | - **Change default for `CIVICRM_CONTAINER_CACHE` to simplify admin/developer | |
113 | experience ([12426](https://github.com/civicrm/civicrm-core/pull/12426))** | |
114 | ||
115 | - **[dev/core#223](https://lab.civicrm.org/dev/core/issues/223) Expose prefix | |
116 | and suffix in reports | |
117 | ([12394](https://github.com/civicrm/civicrm-core/pull/12394))** | |
118 | ||
119 | Individuals' prefix and suffix fields are now available as columns and filters | |
120 | among the contact fields in most reports. | |
121 | ||
122 | - **[dev/core#101](https://lab.civicrm.org/dev/core/issues/101) Allow further | |
123 | customization of search form in hooks | |
124 | ([12078](https://github.com/civicrm/civicrm-core/pull/12078))** | |
125 | ||
126 | Fields are no longer explicitly included in the search form template since | |
127 | that makes it hard to add or remove fields. Instead, the fields are listed in | |
128 | template variables, and the template iterates over the list to render the | |
129 | field elements. | |
130 | ||
131 | - **[dev/core#183](https://lab.civicrm.org/dev/core/issues/183) Temporary tables | |
132 | should follow consistent naming convention | |
133 | ([12311](https://github.com/civicrm/civicrm-core/pull/12311)) (partially | |
134 | completed)** | |
135 | ||
136 | This moves towards naming temporary tables--both true temporary tables in | |
137 | MySQL and regular tables created for temporary use--in a consistent manner in | |
138 | order to help database administrators employ replication policies based upon | |
139 | table names. | |
140 | ||
141 | - **[dev/core#144](https://lab.civicrm.org/dev/core/issues/144) | |
142 | `getCustomFieldID` switch to API, add caching, add full string return option | |
143 | ([12218](https://github.com/civicrm/civicrm-core/pull/12218) and | |
144 | [12283](https://github.com/civicrm/civicrm-core/pull/12283))** | |
145 | ||
146 | The function to retrieve a custom field ID now relies upon APIv3 rather than | |
147 | an *ad hoc* SQL query. It also contains an option to return the ID preceded | |
148 | by `custom_`. Finally, the function caches the result and attempts to return | |
149 | the cached value rather than looking it up each time. | |
150 | ||
151 | - **[dev/core#47](https://lab.civicrm.org/dev/core/issues/47) Add "clone" | |
152 | functionality to scheduled jobs | |
153 | ([11945](https://github.com/civicrm/civicrm-core/pull/11945))** | |
154 | ||
155 | Scheduled jobs can now be copied, including their parameters, both from the | |
156 | Scheduled Jobs page and through a new `Job.clone` API method. | |
157 | ||
158 | ### CiviCase | |
159 | ||
160 | - **[dev/core#107](https://lab.civicrm.org/dev/core/issues/107) After creating a | |
161 | new case, the assignee for each activity must be selected manually | |
162 | ([11998](https://github.com/civicrm/civicrm-core/pull/11998))** | |
163 | ||
164 | You can now select the default assignee for each activity in the standard | |
165 | timeline for a case type. This may be defined according to a relationship | |
166 | with the client, a single specific contact, or the contact who created the | |
167 | case. | |
168 | ||
169 | - **CiviCase, added reference of activities from different timelines. | |
170 | ([12236](https://github.com/civicrm/civicrm-core/pull/12236))** | |
171 | ||
172 | From an activity on a case timeline, you can now reference any activity | |
173 | available to the case--not just those on that case timeline. | |
174 | ||
175 | ### CiviContribute | |
176 | ||
177 | - **Add support for hidden fields in general (and 'token' specifically) on the | |
178 | payment form. ([12332](https://github.com/civicrm/civicrm-core/pull/12332) | |
179 | and [12391](https://github.com/civicrm/civicrm-core/pull/12391))** | |
180 | ||
181 | A new authorization token field is added to the payment form to support | |
182 | token-based payment processors. | |
183 | ||
184 | - **[CRM-21808](https://issues.civicrm.org/jira/browse/CRM-21808) Install custom | |
185 | group for Contribution or ContributioRecur subtypes based on XML file | |
186 | ([11726](https://github.com/civicrm/civicrm-core/pull/11726))** | |
187 | ||
188 | Extensions created custom data sets for contributions can now specify the | |
189 | custom data to apply only to a single financial type. | |
190 | ||
191 | - **(dev/core/50) and | |
192 | [dev/core#195](https://lab.civicrm.org/dev/core/issues/195) Add Separate | |
193 | Sub-tabs for Contributions and Recurring Contributions | |
194 | ([11956](https://github.com/civicrm/civicrm-core/pull/11956) and | |
195 | [12345](https://github.com/civicrm/civicrm-core/pull/12345))** | |
196 | ||
197 | The Contributions tab on a contact now contains two sub-tabs--one for single | |
198 | contributions, and the other for recurring contribution series--instead of | |
199 | displaying one after the other. | |
200 | ||
201 | - **[dev/core#96](https://lab.civicrm.org/dev/core/issues/96) Expose source | |
202 | column in booking report | |
203 | ([12374](https://github.com/civicrm/civicrm-core/pull/12374))** | |
204 | ||
205 | The contribution Source field is now available as a column and filter on the | |
206 | Bookkeeping Transactions report. | |
207 | ||
208 | - **Use html5 color input for contribution page widget | |
209 | ([12339](https://github.com/civicrm/civicrm-core/pull/12339))** | |
210 | ||
211 | ### CiviMail | |
212 | ||
213 | - **[dev/mail#1](https://lab.civicrm.org/dev/mail/issues/1) Add pause/resume | |
214 | functionality to civicrm bulk mailing. | |
215 | ([11803](https://github.com/civicrm/civicrm-core/pull/11803) and | |
216 | [12284](https://github.com/civicrm/civicrm-core/pull/12284))** | |
217 | ||
218 | A CiviMail mailing that is scheduled or in progress can now be paused in order | |
219 | to allow an urgent message to go out first. | |
220 | ||
221 | - **Add in bootstrap button classes to CiviMail interface | |
222 | ([12013](https://github.com/civicrm/civicrm-core/pull/12013) and | |
223 | [12338](https://github.com/civicrm/civicrm-core/pull/12338))** | |
224 | ||
225 | This allows the interfaces to be themed more easily by Bootstrap-based themes. | |
226 | ||
227 | ## <a name="bugs"></a>Bugs resolved | |
228 | ||
229 | ### Core CiviCRM | |
230 | ||
231 | - **[dev/core#222](https://lab.civicrm.org/dev/core/issues/222) Importing | |
232 | contacts with dedupe rule does not use the rule | |
233 | ([12393](https://github.com/civicrm/civicrm-core/pull/12393))** | |
234 | ||
235 | - **[dev/core#284](https://lab.civicrm.org/dev/core/issues/284) Aggressive cache | |
236 | clearing significantly increases test time | |
f68a37c6 | 237 | ([12590](https://github.com/civicrm/civicrm-core/pull/12590))** |
88661292 AH |
238 | |
239 | Settings, compiled Javascript, extension, and other caches are now only | |
f68a37c6 TO |
240 | flushed along with the `default` CiviCRM cache if an external cache like Redis or |
241 | Memcache is in use. (This reproduces the `5.3` behavior.) | |
88661292 AH |
242 | |
243 | - **[dev/core#279](https://lab.civicrm.org/dev/core/issues/279) When Merging two | |
244 | contacts, Flip between original and duplicate link not working in WordPress | |
245 | ([12568](https://github.com/civicrm/civicrm-core/pull/12568))** | |
246 | ||
247 | - **Handle 'Check for Matching Contact(s)' button with ajax | |
248 | ([12552](https://github.com/civicrm/civicrm-core/pull/12552))** | |
249 | ||
250 | This resolves a bug where the "Check for Matching Contact(s)" button would not | |
251 | work if AJAX Deduping is enabled. | |
252 | ||
253 | - **[dev/core#131](https://lab.civicrm.org/dev/core/issues/131) Add in missing | |
254 | UK shire Monmouthshire | |
255 | ([12538](https://github.com/civicrm/civicrm-core/pull/12538)) (follow-up on | |
256 | previous work)** | |
257 | ||
258 | Many individual sites had manually added the county of Monmouthshire in Wales | |
259 | to the `civicrm_state_province` table, and upgrading to 5.3.0, which added the | |
260 | missing record, would cause them a database error. | |
261 | ||
262 | - **[dev/core#258](https://lab.civicrm.org/dev/core/issues/258) Possible | |
263 | unreleased regression - message template update altered customised template | |
264 | ([12492](https://github.com/civicrm/civicrm-core/pull/12492))** | |
265 | ||
266 | - **[dev/core#249](https://lab.civicrm.org/dev/core/issues/249) Contact Export | |
267 | fails in 5.4 when trying to export using the All radio button | |
268 | ([12447](https://github.com/civicrm/civicrm-core/pull/12447))** | |
269 | ||
270 | - **[dev/core#234](https://lab.civicrm.org/dev/core/issues/234) Upgrade Steps in | |
271 | 5.3.alpha1 may not have been run | |
272 | ([12419](https://github.com/civicrm/civicrm-core/pull/12419), | |
273 | [12420](https://github.com/civicrm/civicrm-core/pull/12420), and | |
274 | [12425](https://github.com/civicrm/civicrm-core/pull/12425))** | |
275 | ||
276 | - **[dev/core#155](https://lab.civicrm.org/dev/core/issues/155) Improvements and | |
277 | bugfixes to Option Groups UI | |
278 | ([12233](https://github.com/civicrm/civicrm-core/pull/12233) and | |
279 | [12411](https://github.com/civicrm/civicrm-core/pull/12411))** | |
280 | ||
281 | The Option Groups page now displays whether each option group is reserved or | |
282 | enabled. In addition, sites using sample data no longer have the sample | |
283 | custom fields reserved. | |
284 | ||
285 | - **[CRM-20184](https://issues.civicrm.org/jira/browse/CRM-20184) Some System | |
286 | Workflow templates still miss {contact.email_greeting} | |
287 | ([12296](https://github.com/civicrm/civicrm-core/pull/12296))** | |
288 | ||
289 | This makes receipt templates more consistent in using the contact's email | |
290 | greeting when sent to individuals. | |
291 | ||
292 | - **[dev/core#41](https://lab.civicrm.org/dev/core/issues/41) Search Builder: | |
293 | Not empty with date or integer custom fields gives a sql warning | |
294 | ([12351](https://github.com/civicrm/civicrm-core/pull/12351) and | |
295 | [12363](https://github.com/civicrm/civicrm-core/pull/12363))** | |
296 | ||
297 | - **Make all form tasks inherit from `CRM_Core_Form_Task` | |
298 | ([12318](https://github.com/civicrm/civicrm-core/pull/12318))** | |
299 | ||
300 | This addresses some export problems caused by tasks lacking certain properties | |
301 | because their classes did not extend `CRM_Core_Form_Task`. | |
302 | ||
303 | - **[dev/core#178](https://lab.civicrm.org/dev/core/issues/178) Redis driver - | |
304 | Error messages are invisible | |
305 | ([12303](https://github.com/civicrm/civicrm-core/pull/12303))** | |
306 | ||
307 | The log now contains error messages passed from Redis. | |
308 | ||
309 | - **[dev/core#180](https://lab.civicrm.org/dev/core/issues/180) Deleting custom | |
310 | values and custom_hook parameter `$entity_id` empty | |
311 | ([12309](https://github.com/civicrm/civicrm-core/pull/12309))** | |
312 | ||
313 | The ID of the affected entity is now passed to `hook_civicrm_custom` when a | |
314 | value is deleted from a custom field. | |
315 | ||
316 | - **Fix access to scheduled reminders for admins without event access | |
317 | ([11733](https://github.com/civicrm/civicrm-core/pull/11733))** | |
318 | ||
319 | Users with Administer CiviCRM permission but lacking Manage Events permission | |
320 | would get an error when trying to create a non-event scheduled reminder. | |
321 | ||
322 | - **Only treat a request as a get request (and hence use GET) if it starts with | |
323 | get ([12308](https://github.com/civicrm/civicrm-core/pull/12308))** | |
324 | ||
325 | - **[dev/core#179](https://lab.civicrm.org/dev/core/issues/179) Redis driver - | |
326 | Allow anonymous connections | |
327 | ([12304](https://github.com/civicrm/civicrm-core/pull/12304))** | |
328 | ||
329 | Redis no longer attempts to authenticate when no password is set, such as on | |
330 | local development environments. | |
331 | ||
332 | - **[dev/core#177](https://lab.civicrm.org/dev/core/issues/177) Redis driver - | |
333 | Reports incorrect value for cache-miss | |
334 | ([12302](https://github.com/civicrm/civicrm-core/pull/12302))** | |
335 | ||
336 | When a cache key is undefined, Redis now returns `NULL` rather than `FALSE`. | |
337 | ||
338 | - **[dev/core#175](https://lab.civicrm.org/dev/core/issues/175) Smart group | |
339 | involving relationship type filter display incorrect results. | |
340 | ([12301](https://github.com/civicrm/civicrm-core/pull/12301))** | |
341 | ||
342 | - **Make Send SMS permission independent of Edit Contact permission | |
343 | ([12067](https://github.com/civicrm/civicrm-core/pull/12067))** | |
344 | ||
345 | You no longer need the permission to edit a contact (in addition to the Send | |
346 | SMS permission) to send the contact a SMS message. | |
347 | ||
348 | - **[dev/core#134](https://lab.civicrm.org/dev/core/issues/134) Search Builder | |
349 | broken filter for Source Contact ID | |
350 | ([12181](https://github.com/civicrm/civicrm-core/pull/12181))** | |
351 | ||
352 | - **[dev/core#140](https://lab.civicrm.org/dev/core/issues/140) add missing | |
353 | pseudoconstant for `option_group_id` in CustomField.xml | |
354 | ([12195](https://github.com/civicrm/civicrm-core/pull/12195))** | |
355 | ||
356 | Extensions creating custom fields can now refer to option groups by name | |
357 | rather than ID. | |
358 | ||
359 | - **[dev/accessiblity#3](https://lab.civicrm.org/dev/accessibility/issues/3) Add | |
360 | aria-label (and label?) to form elements missing them | |
361 | ([12209](https://github.com/civicrm/civicrm-core/pull/12209) and | |
362 | [213](https://github.com/civicrm/civicrm-packages/pull/213)) (partial work)** | |
363 | ||
364 | Besides adding `aria-label` attributes to sub-elements of the Quickform | |
365 | date field, event info pages no longer wrap basic information labels in | |
366 | `<label>` tags. | |
367 | ||
368 | - **[CRM-20711](https://issues.civicrm.org/jira/browse/CRM-20711) Error - DB | |
369 | Constraint Violation - GroupContact, get API | |
370 | ([12408](https://github.com/civicrm/civicrm-core/pull/12408))** | |
371 | ||
372 | This adds the `location_id` field to the `civicrm_group_contact` table on | |
373 | older sites that lack it. | |
374 | ||
375 | - **[dev/core#152](https://lab.civicrm.org/dev/core/issues/152) - | |
376 | AdvMulti-Select cleanup | |
377 | ([531](https://github.com/civicrm/civicrm-drupal/pull/531)) (follow-up work)** | |
378 | ||
379 | This removes a couple of references to the now-removed "Advanced Multi-select" | |
380 | custom field type | |
381 | ||
382 | - **Upgrade Mime_mail to fix issues with PHP7.2 | |
383 | ([205](https://github.com/civicrm/civicrm-packages/pull/205))** | |
384 | ||
385 | - **Apply fixes to have DB package support PHP7.2 | |
386 | ([207](https://github.com/civicrm/civicrm-packages/pull/207))** | |
387 | ||
388 | - **[dev/core#117](https://lab.civicrm.org/dev/core/issues/117) Remove usage of | |
389 | `each()` This is deprecated in php7.2 | |
390 | ([211](https://github.com/civicrm/civicrm-packages/pull/211)) (follow-up | |
391 | work)** | |
392 | ||
393 | - **Declare Subparts as array in mimePart to support PHP7.2 | |
394 | ([210](https://github.com/civicrm/civicrm-packages/pull/210))** | |
395 | ||
396 | - **[CRM-19798](https://issues.civicrm.org/jira/browse/CRM-19798) Memory leak in | |
397 | API3 EntityTag get operations | |
398 | ([12276](https://github.com/civicrm/civicrm-core/pull/12276))** | |
399 | ||
400 | ### CiviCase | |
401 | ||
402 | - **Fix regression on case export from recent export fix | |
403 | ([12588](https://github.com/civicrm/civicrm-core/pull/12588))** | |
404 | ||
405 | This resolves undefined property PHP notices when exporting cases. | |
406 | ||
407 | - **[dev/core#24](https://lab.civicrm.org/dev/core/issues/24) Passing an array | |
408 | for contact_id/client_id to Case.Create API when updating an existing case | |
409 | causes case to be "reassigned" | |
410 | ([11830](https://github.com/civicrm/civicrm-core/pull/11830))** | |
411 | ||
412 | - **[CRM-21815](https://issues.civicrm.org/jira/browse/CRM-21815) On re-opening | |
413 | a civicase - Case Coordinator (and other roles) are not reinstated | |
414 | ([11736](https://github.com/civicrm/civicrm-core/pull/11736))** | |
415 | ||
416 | - **[dev/core#165](https://lab.civicrm.org/dev/core/issues/165) Bad link in | |
417 | civicrm/case/activity/view breadcrumb | |
418 | ([12279](https://github.com/civicrm/civicrm-core/pull/12279))** | |
419 | ||
420 | ### CiviContribute | |
421 | ||
422 | - **[CRM-21637](https://issues.civicrm.org/jira/browse/CRM-21637) Search | |
423 | Criteria for Card Type ID and Card Number not respected in Batch | |
424 | ([11495](https://github.com/civicrm/civicrm-core/pull/11495))** | |
425 | ||
426 | The card type and card number filters for financial transactions in the | |
427 | accounting batch interface now work as expected. | |
428 | ||
429 | - **[CRM-21854](https://issues.civicrm.org/jira/browse/CRM-21854) Contribution | |
430 | start date and end dates are not respected | |
431 | ([11881](https://github.com/civicrm/civicrm-core/pull/11881) and | |
432 | [12504](https://github.com/civicrm/civicrm-core/pull/12504))** | |
433 | ||
434 | - **[dev/core#264](https://lab.civicrm.org/dev/core/issues/264) Fatal Error on | |
435 | editing Financial Transaction | |
436 | ([12502](https://github.com/civicrm/civicrm-core/pull/12502))** | |
437 | ||
438 | - **[dev/core#220](https://lab.civicrm.org/dev/core/issues/220) State | |
439 | province/country doesn't show properly in the report | |
440 | ([12390](https://github.com/civicrm/civicrm-core/pull/12390))** | |
441 | ||
442 | This resolves a bug in the Contribution History by Relationship report where | |
443 | strange values would appear for the State/Province and Country fields. | |
444 | ||
445 | - **[dev/core#202](https://lab.civicrm.org/dev/core/issues/202) Empty row under | |
446 | currency drop down | |
447 | ([12356](https://github.com/civicrm/civicrm-core/pull/12356))** | |
448 | ||
449 | A warning now appears when a site has a disabled currency that is set as | |
450 | default. | |
451 | ||
452 | - **[dev/core#88](https://lab.civicrm.org/dev/core/issues/88) Make sure | |
453 | `financial_type_id` is set when a contribution is created | |
454 | ([11907](https://github.com/civicrm/civicrm-core/pull/11907))** | |
455 | ||
456 | This resolves a bug where the financial type would not be set on a one-time | |
457 | contribution made through a contribution page. | |
458 | ||
459 | - **[dev/core#170](https://lab.civicrm.org/dev/core/issues/170) contribution | |
460 | detail report errors when soft credits column is exposed | |
461 | ([12281](https://github.com/civicrm/civicrm-core/pull/12281) and | |
462 | [12282](https://github.com/civicrm/civicrm-core/pull/12282))** | |
463 | ||
464 | - **Fix e-notice, remove legacy code pattern | |
465 | ([12298](https://github.com/civicrm/civicrm-core/pull/12298))** | |
466 | ||
467 | This resolves a PHP notice when printing contribution receipts in bulk. | |
468 | ||
469 | - **[dev/core#56](https://lab.civicrm.org/dev/core/issues/56) Cancel Recurring | |
470 | Contribution activity should have a source record id | |
471 | ([11964](https://github.com/civicrm/civicrm-core/pull/11964))** | |
472 | ||
473 | The activity created when cancelling a recurring contribution now has the | |
474 | recurring contribution ID as the `source_record_id`. | |
475 | ||
476 | - **[dev/financial#14](https://lab.civicrm.org/dev/financial/issues/14) PayPal | |
477 | Express recurring payment causes warning messages | |
478 | ([12091](https://github.com/civicrm/civicrm-core/pull/12091))** | |
479 | ||
480 | - **[CRM-20697](https://issues.civicrm.org/jira/browse/CRM-20697) Online pay now | |
481 | anomalies (contribution transfer to new contact) | |
482 | ([11578](https://github.com/civicrm/civicrm-core/pull/11578))** | |
483 | ||
484 | The Pay Now form now uses contact ID and checksum to validate the | |
485 | contribution's contact to avoid creating new contacts when an anonymous | |
486 | visitor fulfills a pending contribution. | |
487 | ||
488 | ### CiviEvent | |
489 | ||
490 | - **[dev/core#272](https://lab.civicrm.org/dev/core/issues/272) Fatal Error | |
491 | (Regression) on PCP pages associated with Events | |
492 | ([12533](https://github.com/civicrm/civicrm-core/pull/12533))** | |
493 | ||
494 | - **[dev/core#124](https://lab.civicrm.org/dev/core/issues/124) Registration | |
495 | approval issues ([12160](https://github.com/civicrm/civicrm-core/pull/12160) | |
496 | and [12417](https://github.com/civicrm/civicrm-core/pull/12417))** | |
497 | ||
498 | This resolves a PHP warning and some confusing aspects of handling event | |
499 | registration approvals. | |
500 | ||
501 | ### CiviGrant | |
502 | ||
503 | - **[dev/core#187](https://lab.civicrm.org/dev/core/issues/187) Fix typo in | |
504 | `CRM_Grant_Form_Task` that prevents retrieving session key from URL | |
505 | ([12317](https://github.com/civicrm/civicrm-core/pull/12317))** | |
506 | ||
507 | ### CiviMail | |
508 | ||
509 | - **[dev/core#133](https://lab.civicrm.org/dev/core/issues/133) Reply-to field | |
510 | with empty string get saved in DB as `NULL` | |
511 | ([12176](https://github.com/civicrm/civicrm-core/pull/12176))** | |
512 | ||
513 | - **[CRM-20320](https://issues.civicrm.org/jira/browse/CRM-20320) Error in PEAR | |
514 | SMTP causes mailing job to fail when an error occurs during one connection | |
515 | ([11840](https://github.com/civicrm/civicrm-core/pull/11840))** | |
516 | ||
517 | CiviMail will now disconnect the SMTP connection when a connection error is | |
518 | detected and record the group of messages as not delivered. This allows it to | |
519 | reconnect later and send the messages. | |
520 | ||
521 | - **[CRM-17753](https://issues.civicrm.org/jira/browse/CRM-17753) Newsletter | |
522 | confirmation emails shouldn't use do-not-reply@yourdomain.org | |
523 | ([12270](https://github.com/civicrm/civicrm-core/pull/12270)) (preliminary | |
524 | work)** | |
525 | ||
526 | - **[CRM-21779](https://issues.civicrm.org/jira/browse/CRM-21779) Civimail | |
527 | allows adding current draft mailing recipients to recipients field | |
528 | ([11724](https://github.com/civicrm/civicrm-core/pull/11724))** | |
529 | ||
530 | ### CiviMember | |
531 | ||
532 | - **[dev/membership#4](https://lab.civicrm.org/dev/membership/issues/4) Admin | |
533 | Membership type is displayed on Public contribution page. | |
534 | ([12178](https://github.com/civicrm/civicrm-core/pull/12178))** | |
535 | ||
536 | - **[dev/core#276](https://lab.civicrm.org/dev/core/issues/276) Undefined index: | |
537 | is_override on submit credit card membership | |
538 | ([12563](https://github.com/civicrm/civicrm-core/pull/12563))** | |
539 | ||
540 | - **[dev/core#151](https://lab.civicrm.org/dev/core/issues/151) Action to Update | |
541 | Recurring Contributions From Membership View is Never Shown | |
542 | ([12228](https://github.com/civicrm/civicrm-core/pull/12228))** | |
543 | ||
544 | The table to view recurring contributions on a membership now displays the | |
545 | Edit action where appropriate. | |
546 | ||
547 | - **[CRM-21682](https://issues.civicrm.org/jira/browse/CRM-21682) Automatic | |
548 | membership renewal fixes | |
549 | ([12313](https://github.com/civicrm/civicrm-core/pull/12313) and | |
550 | [12314](https://github.com/civicrm/civicrm-core/pull/12314)) (preliminary | |
551 | work)** | |
552 | ||
553 | - **[CRM-21177](https://issues.civicrm.org/jira/browse/CRM-21177) Wrong interval | |
554 | of recurring payment for auto-renewing membership | |
555 | ([12289](https://github.com/civicrm/civicrm-core/pull/12289)) (preliminary | |
556 | work)** | |
557 | ||
558 | ### Joomla Integration | |
559 | ||
560 | - **[dev/joomla#1](https://lab.civicrm.org/dev/joomla/issues/1) CiviEvent menu | |
561 | listing showing old events | |
562 | ([46](https://github.com/civicrm/civicrm-joomla/pull/46))** | |
563 | ||
564 | ### WordPress Integration | |
565 | ||
566 | - **[dev/wordpress#1](https://lab.civicrm.org/dev/wordpress/issues/1) | |
567 | CiviCRM-WordPress - Gutenberg Compatibility: Do not parse shortcodes in REST | |
568 | context ([130](https://github.com/civicrm/civicrm-wordpress/pull/130))** | |
569 | ||
570 | - **[CRM-21565](https://issues.civicrm.org/jira/browse/CRM-21565) Change mkdir | |
571 | to use correct and more secure mode numbers | |
572 | ([120](https://github.com/civicrm/civicrm-wordpress/pull/120))** | |
573 | ||
574 | ## <a name="misc"></a>Miscellany | |
575 | ||
576 | - **(NFC) Convert files to use linux line endings not windows | |
577 | ([12531](https://github.com/civicrm/civicrm-core/pull/12531))** | |
578 | ||
579 | - **Move DAO function to DAO class, call it from Merge class | |
580 | ([12340](https://github.com/civicrm/civicrm-core/pull/12340))** | |
581 | ||
582 | - **NFC code cleanup for AuthNet, Paypal, PaypalPro IPNs | |
583 | ([12386](https://github.com/civicrm/civicrm-core/pull/12386))** | |
584 | ||
585 | - **[dev/core#203](https://lab.civicrm.org/dev/core/issues/203) Cruft code in | |
586 | `CRM_Core_BAO_OptionGroup::add()` | |
587 | ([12357](https://github.com/civicrm/civicrm-core/pull/12357))** | |
588 | ||
589 | - **Remove unused instances of usedTable | |
590 | ([12341](https://github.com/civicrm/civicrm-core/pull/12341) and | |
591 | [12349](https://github.com/civicrm/civicrm-core/pull/12349))** | |
592 | ||
593 | - **(NFC) CiviUnitTestCase - Fix edge-case for mis-reported error | |
594 | ([12347](https://github.com/civicrm/civicrm-core/pull/12347))** | |
595 | ||
596 | - **NFC Code cleanup to core task class | |
597 | ([12316](https://github.com/civicrm/civicrm-core/pull/12316))** | |
598 | ||
599 | - **[NFC] Stop passing no-longer-part-of-signature variable | |
600 | ([12329](https://github.com/civicrm/civicrm-core/pull/12329))** | |
601 | ||
602 | - **Fix typo in api explorer sample code | |
603 | ([12324](https://github.com/civicrm/civicrm-core/pull/12324))** | |
604 | ||
605 | - **Remove unused code variable | |
606 | ([12299](https://github.com/civicrm/civicrm-core/pull/12299))** | |
607 | ||
608 | - **Confirm & lock in group.get handling of is_active | |
609 | ([12295](https://github.com/civicrm/civicrm-core/pull/12295))** | |
610 | ||
611 | - **Remove unused function getRecuringTransactionStatus from PayflowPro c… | |
612 | ([12294](https://github.com/civicrm/civicrm-core/pull/12294))** | |
613 | ||
614 | - **Add upgrade function for message templates that does not involve copying the | |
615 | whole template ([12224](https://github.com/civicrm/civicrm-core/pull/12224))** | |
616 | ||
617 | - **Function extraction BAO_Export class | |
618 | ([12288](https://github.com/civicrm/civicrm-core/pull/12288))** | |
619 | ||
620 | - **Partial refactor of completeMembershipFromContribution | |
621 | ([12271](https://github.com/civicrm/civicrm-core/pull/12271))** | |
622 | ||
623 | - **[NFC] Fix line endings (Jenkins where were you) | |
624 | ([12280](https://github.com/civicrm/civicrm-core/pull/12280))** | |
625 | ||
626 | - **Towards fixing household merge export, extract function, add test, fix prev | |
627 | ([12272](https://github.com/civicrm/civicrm-core/pull/12272))** | |
628 | ||
629 | - **Standardise line endings away from windows line endings to linux | |
630 | ([212](https://github.com/civicrm/civicrm-packages/pull/212))** | |
631 | ||
632 | ## <a name="credits"></a>Credits | |
633 | ||
634 | This release was developed by the following code authors: | |
635 | ||
88bd6b02 | 636 | AGH Strategies - Alice Frumin, Andie Hunt; Agileware - Alok Patel; Australian |
88661292 AH |
637 | Greens - Seamus Lee; Bastien Ho; Caltha - Tomasz Pietrzkowski; CiviCoop - Jaap |
638 | Jansma; CiviCRM - Coleman Watts, Tim Otten; CiviDesk - Yashodha Chaku; CompuCorp - | |
639 | Camilo Rodriguez, Michael Devery, René Olivo, Vinu Varshith Sekar; Electronic | |
640 | Frontier Foundation - Mark Burdett; Fuzion - Jitendra Purohit; Ginkgo Street | |
641 | Labs - Frank Gómez; JMA Consulting - Monish Deb; Johan Vervloet; John | |
642 | Kingsnorth; Kanzu Code - Carl Andrew Lema; Left Join Labs - Sean Madsen; MJW | |
643 | Consulting - Matthew Wire; Pradeep Nayak; Romain Thouvenin; Squiffle Consulting - | |
644 | Aidan Saunders; Tadpole Collective - Kevin Cristiano; Third Sector Design - | |
645 | Michael McAndrew; Tom Bloor; Wikimedia Foundation - Eileen McNaughton | |
646 | ||
647 | Most authors also reviewed code for this release; in addition, the following | |
648 | reviewers contributed their comments: | |
649 | ||
650 | Agileware - Justin Freeman; baernm; Blackfly Solutions - Alan Dixon; Bob | |
651 | Silvern; Borislav Zlatanov; Caltha - Michal Mach; cartbar; Christian Wach; | |
652 | Circle Interactive - Dave Jenkins; CiviCoop - Erik Hommel; Community Builders - | |
653 | Andrew Perry; CompuCorp - Guanhuan Chen, Omar Abu Hussein; Coop SymbioTIC - | |
654 | Mathieu Lutfy; Drupal Association - Lizz Trudeau; Evan Chute; Forest CRM | |
655 | Consulting - Tamar Meir; Freeform Solutions - Herb van den Dool; Ginkgo Street | |
656 | Labs - Dan O'Brien; Hugo do Carmo; JMA Consulting - Joe Murray; Lemniscus - Noah | |
657 | Miller; Lighthouse Design and Consulting - Brian Shaughnessy; Megaphone | |
658 | Technology Consulting - Jon Goldberg; MJCO - Mikey O'Toole; Oxfam Germany - | |
659 | Thomas Schüttler; Richard van Oosterhout; Robin Fenwick; Semper IT - Karin | |
660 | Gerritsen; Stephen Palmstrom; Tech To The People - Xavier Dutoit; Timbsoft | |
661 | Technologies - Tunbola Ogunwande | |
662 | ||
663 | ## <a name="feedback"></a>Feedback | |
664 | ||
88bd6b02 | 665 | These release notes are edited by Andie Hunt. If you'd like to provide |
88661292 AH |
666 | feedback on them, please log in to https://chat.civicrm.org/civicrm and contact |
667 | `@agh1`. |