Commit | Line | Data |
---|---|---|
6f2bdb76 AH |
1 | # CiviCRM 5.29.0 |
2 | ||
cb42725f | 3 | Released September 2, 2020 |
6f2bdb76 | 4 | |
cb42725f | 5 | - **[Synopsis](#synopsis)** |
6f2bdb76 AH |
6 | - **[Features](#features)** |
7 | - **[Bugs resolved](#bugs)** | |
8 | - **[Miscellany](#misc)** | |
9 | - **[Credits](#credits)** | |
cb42725f AH |
10 | - **[Feedback](#feedback)** |
11 | ||
12 | ## <a name="synopsis"></a>Synopsis | |
13 | ||
14 | | *Does this version...?* | | | |
15 | |:--------------------------------------------------------------- |:-------:| | |
79212351 AH |
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** | | |
6f2bdb76 AH |
23 | |
24 | ## <a name="features"></a>Features | |
25 | ||
26 | ### Core CiviCRM | |
27 | ||
0cce8662 AF |
28 | - **Contact export is very slow, creates huge temporary tables |
29 | ([dev/core#1725](https://lab.civicrm.org/dev/core/-/issues/1725): | |
30 | [17458](https://github.com/civicrm/civicrm-core/pull/17458))** | |
31 | ||
32 | Improves performance when exporting contacts by only exporting primary address | |
33 | fields. | |
34 | ||
79212351 AH |
35 | - **Allow different output formats for CiviReport results, like native excel |
36 | format, and untangle code | |
37 | ([dev/core#1855](https://lab.civicrm.org/dev/core/-/issues/1855): | |
38 | [17901](https://github.com/civicrm/civicrm-core/pull/17901))** | |
39 | ||
40 | This makes it possible to extend CiviReport by reworking the PDF and CSV | |
41 | generation code as new output handlers, and allowing for extension developers | |
42 | to add new ones. | |
43 | ||
f8220fdf AF |
44 | - **Icon in status message after saving a civireport is misleading |
45 | ([dev/report#43](https://lab.civicrm.org/dev/report/-/issues/43): | |
46 | [17863](https://github.com/civicrm/civicrm-core/pull/17863))** | |
47 | ||
48 | Improves icons in Status Messages for reports. | |
6f2bdb76 | 49 | |
79212351 AH |
50 | - **Show cron warning on Scheduled Jobs admin page |
51 | ([18065](https://github.com/civicrm/civicrm-core/pull/18065))** | |
52 | ||
53 | A pop-up message will appear on the Scheduled Jobs page if cron has not been | |
54 | running. | |
55 | ||
56 | - **Add APIv4 and pseudoconstants for RelationshipCache | |
57 | ()** | |
58 | ||
59 | - **RelationshipCache - Add a high-level index to facilitate relationship | |
60 | queries (more fields) | |
61 | ([17781](https://github.com/civicrm/civicrm-core/pull/17781) and | |
62 | [17879](https://github.com/civicrm/civicrm-core/pull/17879))** | |
63 | ||
64 | A new table caches relationships to provide a single resource for tracking | |
65 | relationships from a specified contact's perspective. The RelationshipCache | |
66 | records the "near" and "far" contacts and relationship names along with the | |
67 | orientation and relationship type. Each record from `civicrm_relationship` | |
68 | will have two records in `civicrm_relationship_cache`, one for each | |
69 | orientation. | |
70 | ||
f8220fdf AF |
71 | - **Remove ORDER BY and GROUP BY from alphabetQuery to improve performance |
72 | ([16877](https://github.com/civicrm/civicrm-core/pull/16877))** | |
6f2bdb76 | 73 | |
0cce8662 AF |
74 | - **Differentiate smart group from regular group using icon in select2 field |
75 | ([dev/core#785](https://lab.civicrm.org/dev/core/-/issues/785): | |
79212351 | 76 | [17927](https://github.com/civicrm/civicrm-core/pull/17927))** |
0cce8662 AF |
77 | |
78 | Improves Group's select2 by adding icon next to smart groups. | |
79 | ||
80 | - **Feature: Ability to enable SSL for database connection. | |
81 | ([dev/core#1137](https://lab.civicrm.org/dev/core/-/issues/1137): | |
82 | [17706](https://github.com/civicrm/civicrm-core/pull/17706))** | |
83 | ||
84 | Makes it so sites can use ssl to connect to mysql. | |
85 | ||
79212351 AH |
86 | - **Add in hook to allow for altering of Profile Schemas |
87 | ([dev/core#1913](https://lab.civicrm.org/dev/core/-/issues/1913): | |
88 | [17986](https://github.com/civicrm/civicrm-core/pull/17986))** | |
89 | ||
90 | Extensions that allow additional fields to be added to profiles can now add | |
91 | schemas so that fields can be added from new entities. | |
92 | ||
93 | - **Why not make the buttons flat? | |
94 | ([18054](https://github.com/civicrm/civicrm-core/pull/18054))** | |
95 | ||
96 | Buttons no longer have a gradient background. | |
97 | ||
98 | - **SystemCheck: add ability to efficiently run only specified checks | |
99 | ([17824](https://github.com/civicrm/civicrm-core/pull/17824))** | |
100 | ||
101 | The APIv4 system check action can now filter on name, running just the | |
102 | specified check(s). | |
103 | ||
104 | - **Change inform-icon to fa-info-circle | |
105 | ([18001](https://github.com/civicrm/civicrm-core/pull/18001))** | |
106 | ||
107 | The information icon is now produced with Font Awesome rather than a sprite. | |
108 | ||
109 | - **APIv4 - Add keyword to select all custom fields | |
110 | ([17955](https://github.com/civicrm/civicrm-core/pull/17955))** | |
111 | ||
112 | You can now use a wildcard to select all custom fields on an entity without | |
113 | specifying each individually. | |
114 | ||
115 | - **Improve caching of current domain | |
116 | ([17916](https://github.com/civicrm/civicrm-core/pull/17916))** | |
117 | ||
118 | Domain information is now cached in one central place, making it more | |
119 | straightforward to use and flush. | |
120 | ||
121 | - **APIv4 - Specify BridgeEntities to assist with joins | |
122 | ([17808](https://github.com/civicrm/civicrm-core/pull/17808))** | |
123 | ||
124 | Minor entities that intermediate many-to-many relationships are now specified | |
125 | as bridge entities and extend from a new base class. This will allow them to | |
126 | be distinguished better in the future. | |
127 | ||
128 | - **APIv4 - Add shorthand for setCheckPermissions() | |
129 | ([17834](https://github.com/civicrm/civicrm-core/pull/17834) and | |
130 | [17874](https://github.com/civicrm/civicrm-core/pull/17874))** | |
131 | ||
132 | The CRUD functions of APIv4 now accept a boolean argument that corresponds to | |
133 | the value sent to `setCheckPermissions()`. This provides a shorthand for a | |
134 | very common use case. | |
135 | ||
136 | - **Add search extension | |
137 | ([17775](https://github.com/civicrm/civicrm-core/pull/17775), | |
138 | [17789](https://github.com/civicrm/civicrm-core/pull/17789), and | |
139 | [17864](https://github.com/civicrm/civicrm-core/pull/17864))** | |
140 | ||
141 | An extension that replaces Search Builder is now shipped with core, though it | |
142 | is hidden from the extensions user interface because it is currently | |
143 | incompatible with the default theming framework. | |
144 | ||
f8220fdf | 145 | ### CiviContribute |
6f2bdb76 | 146 | |
47c2ce56 AH |
147 | - **Add configure and priceset url icons on public contribution & event pages |
148 | ([dev/core#1905](https://lab.civicrm.org/dev/core/-/issues/1905): | |
149 | [17942](https://github.com/civicrm/civicrm-core/pull/17942), | |
150 | [18088](https://github.com/civicrm/civicrm-core/pull/18088) and | |
151 | [18064](https://github.com/civicrm/civicrm-core/pull/18064))** | |
79212351 | 152 | |
47c2ce56 AH |
153 | A "Configure" button now appears to administrators when viewing a contribution |
154 | page or event, or a priceset within either, from the frontend. This links to | |
155 | the corresponding form to administer the contribution page, event, or | |
156 | priceset. | |
79212351 | 157 | |
47c2ce56 | 158 | ### CiviEvent |
79212351 | 159 | |
47c2ce56 AH |
160 | - **Move Event Cart to extension |
161 | ([17741](https://github.com/civicrm/civicrm-core/pull/17741), | |
162 | [17743](https://github.com/civicrm/civicrm-core/pull/17743), | |
163 | [17861](https://github.com/civicrm/civicrm-core/pull/17861), | |
164 | [17884](https://github.com/civicrm/civicrm-core/pull/17884), | |
165 | [17885](https://github.com/civicrm/civicrm-core/pull/17885), and | |
166 | [17891](https://github.com/civicrm/civicrm-core/pull/17891))** | |
79212351 | 167 | |
47c2ce56 AH |
168 | The event cart features have been moved to a separate extension that is |
169 | shipped with core. | |
79212351 | 170 | |
47c2ce56 | 171 | ### CiviMember |
79212351 | 172 | |
47c2ce56 AH |
173 | - **Option to update expired memberships as part of the job.process_membership |
174 | ([dev/membership#18](https://lab.civicrm.org/dev/membership/-/issues/18): | |
175 | [16298](https://github.com/civicrm/civicrm-core/pull/16298))** | |
6f2bdb76 | 176 | |
47c2ce56 AH |
177 | Improves the Job.process_membership API/Scheduled job by adding some new |
178 | parameters, specifically: | |
6f2bdb76 | 179 | |
47c2ce56 AH |
180 | - exclude_test_memberships: Exclude test memberships from calculations |
181 | (default = TRUE) | |
182 | - only_active_membership_types: Exclude disabled membership types from | |
183 | calculations (default = TRUE) | |
184 | - exclude_membership_status_ids: Default: Exclude Pending, Cancelled, | |
185 | Expired. | |
6f2bdb76 | 186 | |
47c2ce56 | 187 | Deceased will always be excluded |
6f2bdb76 | 188 | |
47c2ce56 AH |
189 | - **Add auto-renew status to membership detail report |
190 | ([17683](https://github.com/civicrm/civicrm-core/pull/17683) and | |
191 | [17911](https://github.com/civicrm/civicrm-core/pull/17911))** | |
6f2bdb76 | 192 | |
47c2ce56 AH |
193 | The membership detail report can now display and filter on the auto-renew |
194 | status of each membership. | |
6f2bdb76 | 195 | |
47c2ce56 | 196 | ### Backdrop Integration |
79212351 | 197 | |
47c2ce56 AH |
198 | - **Support for installing CiviCRM-Backdrop via "setup" UI |
199 | ([17749](https://github.com/civicrm/civicrm-core/pull/17749) and | |
200 | [121](https://github.com/civicrm/civicrm-backdrop/pull/121))** | |
79212351 | 201 | |
47c2ce56 AH |
202 | Improves the installation and Setup process for Backdrop integration's so that |
203 | one enables the CiviCRM module like any other module and then is directed to | |
204 | the setup screen to complete installation as opposed to having to navigate to | |
205 | a specific link. | |
6f2bdb76 | 206 | |
47c2ce56 | 207 | ### Drupal Integration |
6f2bdb76 | 208 | |
47c2ce56 AH |
209 | - **Upgrading a site that still has "mysql" in the dsn string breaks in latest |
210 | master ([dev/core#1937](https://lab.civicrm.org/dev/core/-/issues/1937): | |
211 | [18174](https://github.com/civicrm/civicrm-core/pull/18174))** | |
79212351 | 212 | |
47c2ce56 AH |
213 | This adds an upgrade message for 5.29.0 warning that Composer patching will |
214 | need to be enabled before upgrading to 5.30.0 or higher. | |
79212351 | 215 | |
47c2ce56 AH |
216 | The "mysql" in the DSN (as opposed to "mysqli") will not be a problem, but the |
217 | solution for this is in a package patch that appears in 5.30. | |
79212351 | 218 | |
47c2ce56 AH |
219 | - **Installation - Support "activate first" w/setup UI |
220 | ([606](https://github.com/civicrm/civicrm-drupal/pull/606))** | |
79212351 | 221 | |
47c2ce56 AH |
222 | The new setup user interface for Backdrop and WordPress installations is now |
223 | available for Drupal 7. | |
79212351 | 224 | |
47c2ce56 | 225 | ### WordPress Integration |
79212351 | 226 | |
47c2ce56 AH |
227 | - **Add system check to ensure WP base page exists |
228 | ([17698](https://github.com/civicrm/civicrm-core/pull/17698))** | |
0cce8662 | 229 | |
47c2ce56 AH |
230 | A new system check will display a message if the base page, as set in CiviCRM, |
231 | doesn't match an existing page in WordPress. No message will display if | |
232 | WordPress multisite is enabled. | |
0cce8662 | 233 | |
47c2ce56 | 234 | ## <a name="bugs"></a>Bugs resolved |
79212351 | 235 | |
f8220fdf | 236 | ### Core CiviCRM |
6f2bdb76 | 237 | |
79212351 AH |
238 | - **CRM_Dedupe_Finder parses phone key incorrectly |
239 | ([dev/core#1767](https://lab.civicrm.org/dev/core/-/issues/1767): | |
240 | [17361](https://github.com/civicrm/civicrm-core/pull/17361) and | |
241 | [17882](https://github.com/civicrm/civicrm-core/pull/17882))** | |
242 | ||
243 | The process to match duplicate contacts was not accurately identifying phone | |
244 | fields, causing contacts with matching phone numbers to be treated as if they | |
245 | didn't match. | |
246 | ||
247 | - **Dedupe: Location type is treated inconsistently | |
248 | ([dev/core#1826](https://lab.civicrm.org/dev/core/-/issues/1826): | |
249 | [17645](https://github.com/civicrm/civicrm-core/pull/17645))** | |
250 | ||
251 | Duplicate matching now ignores location type for postal address fields, now | |
252 | consistent with how it has ignored phone and email location types. | |
253 | ||
afea6949 | 254 | - **Installing Drupal 8 using civicrm-setup leads to "incorrect resource url" |
f8220fdf AF |
255 | system status check errors |
256 | ([dev/drupal#114](https://lab.civicrm.org/dev/drupal/-/issues/114) and | |
257 | [dev/core#1647](https://lab.civicrm.org/dev/core/-/issues/1647): | |
258 | [17754](https://github.com/civicrm/civicrm-core/pull/17754))** | |
6f2bdb76 | 259 | |
afea6949 | 260 | Removes the resource URL status check. |
6f2bdb76 | 261 | |
0cce8662 AF |
262 | - **API4: 500 error on chain with custom field |
263 | ([dev/core#1578](https://lab.civicrm.org/dev/core/-/issues/1578): | |
264 | [17866](https://github.com/civicrm/civicrm-core/pull/17866))** | |
6f2bdb76 | 265 | |
0cce8662 AF |
266 | - **MySQL uses filesort index when building the query which can cause |
267 | performance issues | |
268 | ([dev/core#1665](https://lab.civicrm.org/dev/core/-/issues/1665): | |
269 | [18052](https://github.com/civicrm/civicrm-core/pull/18052))** | |
6f2bdb76 | 270 | |
0cce8662 AF |
271 | - **Custom fields not copied on shared address |
272 | ([dev/core#1670](https://lab.civicrm.org/dev/core/-/issues/1670): | |
273 | [17580](https://github.com/civicrm/civicrm-core/pull/17580))** | |
6f2bdb76 | 274 | |
79212351 AH |
275 | - **Email template permissions |
276 | ([dev/core#1751](https://lab.civicrm.org/dev/core/-/issues/1751): | |
277 | [17480](https://github.com/civicrm/civicrm-core/pull/17480))** | |
278 | ||
279 | Users sending an email are no longer able to save or modify a template if they | |
280 | lack the "edit message templates" permission. | |
281 | ||
282 | - **Using Parent tag in search form doesn't pull contacts marked with child tag | |
283 | in search form result | |
284 | ([dev/core#1795](https://lab.civicrm.org/dev/core/-/issues/1795): | |
285 | [17513](https://github.com/civicrm/civicrm-core/pull/17513))** | |
286 | ||
287 | - **Activity Search : Tags are not working | |
288 | ([dev/core#1827](https://lab.civicrm.org/dev/core/-/issues/1827): | |
289 | [17655](https://github.com/civicrm/civicrm-core/pull/17655) and | |
290 | [17755](https://github.com/civicrm/civicrm-core/pull/17755))** | |
6f2bdb76 | 291 | |
79212351 AH |
292 | - **Autocomplete-select custom field is not searchable |
293 | ([dev/core#1805](https://lab.civicrm.org/dev/core/-/issues/1805): | |
294 | [17569](https://github.com/civicrm/civicrm-core/pull/17569))** | |
6f2bdb76 | 295 | |
79212351 AH |
296 | - **Do not allow enabling database logging when using multilingual |
297 | ([dev/core#1812](https://lab.civicrm.org/dev/core/-/issues/1812): | |
298 | [17815](https://github.com/civicrm/civicrm-core/pull/17815))** | |
6f2bdb76 | 299 | |
79212351 AH |
300 | This has never worked, with network errors as the result. This prevents it |
301 | from being set. | |
6f2bdb76 | 302 | |
79212351 AH |
303 | - **Can't remove subtype if any required custom field is based on it |
304 | ([dev/core#1853](https://lab.civicrm.org/dev/core/-/issues/1853): | |
305 | [17765](https://github.com/civicrm/civicrm-core/pull/17765))** | |
6f2bdb76 | 306 | |
79212351 AH |
307 | - **User account form action not passing along contact id correctly possibly |
308 | leading to duplicate contacts | |
309 | ([dev/core#1858](https://lab.civicrm.org/dev/core/-/issues/1858): | |
310 | [17769](https://github.com/civicrm/civicrm-core/pull/17769))** | |
6f2bdb76 | 311 | |
79212351 AH |
312 | When creating a user account from a contact record, the contact ID was not |
313 | properly passed along. Depending upon your unsupervised duplicate matching | |
314 | rule, it would potentially create a duplicate contact record. | |
6f2bdb76 | 315 | |
79212351 AH |
316 | - **Cannot edit a profile field of "Email" to use the Location Type "Primary" |
317 | ([dev/core#1861](https://lab.civicrm.org/dev/core/-/issues/1861): | |
318 | [17812](https://github.com/civicrm/civicrm-core/pull/17812))** | |
6f2bdb76 | 319 | |
79212351 AH |
320 | The location type would get reset to your default location type rather than |
321 | staying as "primary". | |
6f2bdb76 | 322 | |
79212351 AH |
323 | - **Downgrade checkEnvironment level and skip non-prod checks (part of |
324 | [dev/core#1863](https://lab.civicrm.org/dev/core/-/issues/1863): | |
325 | [17807](https://github.com/civicrm/civicrm-core/pull/17807))** | |
6f2bdb76 | 326 | |
79212351 AH |
327 | In non-production environments, a system check produces a message saying so. |
328 | This downgrades it from an "Alert" to a more appropriate level of "Notice", | |
329 | and it also suppresses cron and CiviMail system checks in this situation. | |
6f2bdb76 | 330 | |
79212351 AH |
331 | - **Slew of E_NOTICES on Profiles admin page and description field is always |
332 | blank ([dev/core#1868](https://lab.civicrm.org/dev/core/-/issues/1868): | |
333 | [17786](https://github.com/civicrm/civicrm-core/pull/17786))** | |
6f2bdb76 | 334 | |
79212351 AH |
335 | - **CiviReport sent as email via mail_report job with a CSV attachment doesn't |
336 | show UTF8 characters properly in Excel | |
337 | ([dev/core#1869](https://lab.civicrm.org/dev/core/-/issues/1869): | |
338 | [17806](https://github.com/civicrm/civicrm-core/pull/17806))** | |
6f2bdb76 | 339 | |
79212351 AH |
340 | - **References to packages path in security status checks are assumed to be |
341 | under civicrm root | |
342 | ([dev/core#1872](https://lab.civicrm.org/dev/core/-/issues/1872): | |
343 | [17844](https://github.com/civicrm/civicrm-core/pull/17844))** | |
6f2bdb76 | 344 | |
79212351 AH |
345 | This changes how package and vendor paths are calculated in system checks |
346 | since (in Drupal 8 and potentially elsewhere) they may not be within the | |
347 | CiviCRM root folder. | |
6f2bdb76 | 348 | |
afea6949 | 349 | - **Custom data insert/update error if using reserved words |
79212351 AH |
350 | ([dev/core#1880](https://lab.civicrm.org/dev/core/-/issues/1880): |
351 | [17848](https://github.com/civicrm/civicrm-core/pull/17848))** | |
6f2bdb76 | 352 | |
79212351 AH |
353 | - **Advanced Search (search by complete or partial name) returns all contacts |
354 | ([dev/core#1895](https://lab.civicrm.org/dev/core/-/issues/1895): | |
355 | [17950](https://github.com/civicrm/civicrm-core/pull/17950))** | |
6f2bdb76 | 356 | |
79212351 AH |
357 | The ability to search first/last name was recently added to core. The primary |
358 | intent was to properly handle advanced searches that originate from | |
359 | quicksearch first/last name filters. While that was working, a first/last name | |
360 | search that originated directly from an advanced search was not working. This | |
361 | fixes the issue. | |
6f2bdb76 | 362 | |
79212351 AH |
363 | - **Miscellaneous E_NOTICES |
364 | ([dev/core#1909](https://lab.civicrm.org/dev/core/-/issues/1909): | |
365 | [18006](https://github.com/civicrm/civicrm-core/pull/18006), | |
366 | [17962](https://github.com/civicrm/civicrm-core/pull/17962), | |
367 | [17964](https://github.com/civicrm/civicrm-core/pull/17964), | |
368 | [17959](https://github.com/civicrm/civicrm-core/pull/17959), and | |
369 | [17985](https://github.com/civicrm/civicrm-core/pull/17985))** | |
6f2bdb76 | 370 | |
79212351 AH |
371 | - **CRM_Core_Key::valid() does backwards comparison |
372 | ([dev/core#1918](https://lab.civicrm.org/dev/core/-/issues/1918): | |
373 | [18007](https://github.com/civicrm/civicrm-core/pull/18007))** | |
6f2bdb76 | 374 | |
79212351 AH |
375 | This removes legacy code that appeared to attempt to check for a valid |
376 | quickForm key but wasn't effectively doing so. | |
6f2bdb76 | 377 | |
79212351 AH |
378 | - **Upgrade fails for 4.6 => 5.29 during status-check |
379 | ([dev/core#1932](https://lab.civicrm.org/dev/core/-/issues/1932): | |
380 | [18085](https://github.com/civicrm/civicrm-core/pull/18085))** | |
6f2bdb76 | 381 | |
79212351 AH |
382 | - **Installation doclinks not getting url-rewritten |
383 | ([18175](https://github.com/civicrm/civicrm-core/pull/18175))** | |
6f2bdb76 | 384 | |
79212351 AH |
385 | Links to the new installation documentation are now handled in the same way as |
386 | other documentation sites. | |
6f2bdb76 | 387 | |
79212351 AH |
388 | - **Wrap multi record custom field inside a div |
389 | ([17966](https://github.com/civicrm/civicrm-core/pull/17966))** | |
6f2bdb76 | 390 | |
79212351 AH |
391 | - **Fixed filling default values for tagssets in the advanced search form |
392 | ([17978](https://github.com/civicrm/civicrm-core/pull/17978))** | |
6f2bdb76 | 393 | |
79212351 AH |
394 | - **Simplify caching of status checks |
395 | ([17817](https://github.com/civicrm/civicrm-core/pull/17817))** | |
6f2bdb76 | 396 | |
afea6949 | 397 | - **Ensure custom field checkboxes are populated in profiles |
79212351 | 398 | ([17977](https://github.com/civicrm/civicrm-core/pull/17977))** |
6f2bdb76 | 399 | |
79212351 AH |
400 | - **Upgrade PEAR/mail_mime package to be compliant with PHP7.4 and deploy it |
401 | using composer ([17948](https://github.com/civicrm/civicrm-core/pull/17948))** | |
6f2bdb76 | 402 | |
79212351 AH |
403 | - **Setup UI - Validate that at least one "Component" is enabled |
404 | ([17778](https://github.com/civicrm/civicrm-core/pull/17778))** | |
6f2bdb76 | 405 | |
79212351 AH |
406 | This prevents you from proceeding with installation without enabling at least |
407 | one component. Not enabling any components causes a messy failed | |
408 | installation. | |
6f2bdb76 | 409 | |
79212351 AH |
410 | - **Call apiv4 from Contribution create rather than fugly addActivity function |
411 | ([17881](https://github.com/civicrm/civicrm-core/pull/17881))** | |
6f2bdb76 | 412 | |
8bd48a0f | 413 | - **Search debug ([17887](https://github.com/civicrm/civicrm-core/pull/17887))** |
6f2bdb76 | 414 | |
79212351 AH |
415 | - **Simplify flushing group contact cache query to reduce table locking and |
416 | improve performance | |
417 | ([17846](https://github.com/civicrm/civicrm-core/pull/17846))** | |
6f2bdb76 | 418 | |
79212351 AH |
419 | - **Make api get upgrade-safe |
420 | ([17729](https://github.com/civicrm/civicrm-core/pull/17729))** | |
6f2bdb76 | 421 | |
79212351 AH |
422 | This avoids database errors when the code and database versions don't match by |
423 | preventing the API from accessing fields that are unsupported in the database. | |
6f2bdb76 | 424 | |
79212351 AH |
425 | - **CheckEnv - Give new installs a grace period before 'Cron Not Running' msg |
426 | ([17800](https://github.com/civicrm/civicrm-core/pull/17800))** | |
6f2bdb76 | 427 | |
79212351 AH |
428 | The system check will lower the severity of the "cron not running" check for |
429 | the first 24 hours after a site has been installed. | |
6f2bdb76 | 430 | |
79212351 AH |
431 | - **Sort permittedActivityTypes |
432 | ([17794](https://github.com/civicrm/civicrm-core/pull/17794))** | |
6f2bdb76 | 433 | |
79212351 AH |
434 | This improves performance on filtering activity types by making it possible to |
435 | compare a list of permitted types with the overall list of activity type IDs. | |
6f2bdb76 | 436 | |
79212351 AH |
437 | - **APIv4 - Fix saving custom fields with same name |
438 | ([17791](https://github.com/civicrm/civicrm-core/pull/17791))** | |
0cce8662 | 439 | |
79212351 AH |
440 | - **Status Checks - Use more specific label regarding "Domain"/"Organization" |
441 | check ([17776](https://github.com/civicrm/civicrm-core/pull/17776))** | |
0cce8662 AF |
442 | |
443 | - **SQL temp table not using utf8mb4 if server default already set to utf8mb4 | |
444 | ([18012](https://github.com/civicrm/civicrm-core/pull/18012))** | |
445 | ||
446 | - **Wrong link to admin page in error message about FROM address on PCP page | |
447 | ([17996](https://github.com/civicrm/civicrm-core/pull/17996))** | |
448 | ||
449 | - **Fix sticky table header on "Find Activities" page | |
450 | ([17917](https://github.com/civicrm/civicrm-core/pull/17917))** | |
451 | ||
452 | - **Fixed DB Error: syntax error if line item refers to civicrm_case | |
453 | ([16626](https://github.com/civicrm/civicrm-core/pull/16626))** | |
454 | ||
455 | - **Fix potential js error on summary screen when reloading blocks | |
456 | ([17865](https://github.com/civicrm/civicrm-core/pull/17865))** | |
457 | ||
458 | - **Fix 'Undefined variable: jsSet in CRM_Core_BAO_Mapping::loadSavedMapping()' | |
459 | ([17816](https://github.com/civicrm/civicrm-core/pull/17816))** | |
460 | ||
461 | - **Fixed notice error on Relationships report | |
462 | ([17787](https://github.com/civicrm/civicrm-core/pull/17787))** | |
463 | ||
464 | - **Fix obscure dedupe scenario where 'bad' location data can overwrite good | |
465 | data ([17993](https://github.com/civicrm/civicrm-core/pull/17993))** | |
466 | ||
467 | - **Fix JQuery Validation for radios | |
468 | ([17937](https://github.com/civicrm/civicrm-core/pull/17937))** | |
469 | ||
47c2ce56 AH |
470 | ### CiviCase |
471 | ||
472 | - **Fix case activity field set to allow long details to be exported | |
473 | ([17970](https://github.com/civicrm/civicrm-core/pull/17970))** | |
474 | ||
475 | - **Case export has two fields that are not what they say they are | |
476 | ([dev/core#1916](https://lab.civicrm.org/dev/core/-/issues/1916): | |
477 | [18043](https://github.com/civicrm/civicrm-core/pull/18043))** | |
478 | ||
479 | - **Collapsed custom field set for activities with a required radio makes case | |
480 | activity buttons seem disabled | |
481 | ([dev/core#1928](https://lab.civicrm.org/dev/core/-/issues/1928): | |
482 | [18080](https://github.com/civicrm/civicrm-core/pull/18080))** | |
483 | ||
484 | - **CRM_Utils_Check_Component_Case - Guard against post-upgrade crash | |
485 | ([17944](https://github.com/civicrm/civicrm-core/pull/17944))** | |
486 | ||
487 | ### CiviContribute | |
488 | ||
489 | - **Define the logic that sets (or not) contribution receive_date in relation to | |
490 | payments | |
491 | ([dev/financial#139](https://lab.civicrm.org/dev/financial/-/issues/139): | |
492 | [17777](https://github.com/civicrm/civicrm-core/pull/17777) and | |
493 | [18000](https://github.com/civicrm/civicrm-core/pull/18000))** | |
494 | ||
495 | This undoes a regression where the contribution date of a pay-later | |
496 | contribution would change when a payment completes the contribution. The | |
497 | contribution date is the accrual date and is distinct from the date the | |
498 | contribution is entered and the date when all payments have been received. | |
499 | ||
500 | In the process, this changes the "Update pending contribution status" search | |
501 | action to be "Record payments for contributions". The result is generally the | |
502 | same, but the status change comes about because the payments complete the | |
503 | contributions. You can modify contribution statuses in bulk with a profile by | |
504 | using the "Update multiple contributions" action. | |
505 | ||
506 | - **Disable frequency/interval fields if not required. Mark required if they are | |
507 | so they are validated before submit | |
508 | ([17526](https://github.com/civicrm/civicrm-core/pull/17526))** | |
509 | ||
510 | The frequency and interval fields for recurring contributions now use jQuery | |
511 | validation to disable or require them as appropriate. | |
512 | ||
513 | - **Paypal IPN sometimes fails to update the next scheduled payment date when | |
514 | recording the latest recurring payment | |
515 | ([dev/core#1679](https://lab.civicrm.org/dev/core/-/issues/1679): | |
516 | [17744](https://github.com/civicrm/civicrm-core/pull/17744))** | |
517 | ||
518 | - **Contribution Details Statistics are multiplied under many circumstances | |
519 | ([dev/report#21](https://lab.civicrm.org/dev/report/-/issues/21): | |
520 | [15435](https://github.com/civicrm/civicrm-core/pull/15435) and | |
521 | [17809](https://github.com/civicrm/civicrm-core/pull/17809))** | |
522 | ||
523 | - **Contribution Summary Report: The "general total" row does not take the | |
524 | currency filtered | |
525 | ([dev/report#27](https://lab.civicrm.org/dev/report/-/issues/27): | |
526 | [16736](https://github.com/civicrm/civicrm-core/pull/16736))** | |
527 | ||
528 | When the contribution summary report is used by filtering for a currency other | |
529 | than the site's default currency, the "grand total" row shows the sign of the | |
530 | default currency instead of the filtered currency. | |
531 | ||
532 | - **Fix PaypalIPN single function to not receive-by-reference | |
533 | ([18044](https://github.com/civicrm/civicrm-core/pull/18044))** | |
534 | ||
535 | - **Allow Failed -> Completed status for contributions | |
536 | ([dev/core#1906](https://lab.civicrm.org/dev/core/-/issues/1906): | |
537 | [17943](https://github.com/civicrm/civicrm-core/pull/17943))** | |
538 | ||
539 | - **Fix currency symbol for Total Amount on contribution page | |
540 | ([17703](https://github.com/civicrm/civicrm-core/pull/17703))** | |
541 | ||
542 | This resolves a but where the total amount would show the default system | |
543 | currency symbol regardless of the currency configured on the contribution | |
544 | page. | |
545 | ||
546 | - **On behalf label / Honoree Title / Honoree Description not translatable on | |
547 | contribution page | |
548 | ([dev/core#1280](https://lab.civicrm.org/dev/core/-/issues/1280): | |
549 | [16838](https://github.com/civicrm/civicrm-core/pull/16838))** | |
550 | ||
551 | - **Load contribution page if live payment processor is disabled but test is | |
552 | available ([17828](https://github.com/civicrm/civicrm-core/pull/17828))** | |
553 | ||
554 | - **Remove requirement to pass 'contribution_status_id' => Pending from | |
555 | order.create ([18018](https://github.com/civicrm/civicrm-core/pull/18018))** | |
556 | ||
557 | - **Use saved contribution's line items rather than the primaryContributionID | |
558 | ([18033](https://github.com/civicrm/civicrm-core/pull/18033))** | |
559 | ||
560 | - **Do not overwrite values saved from the repeatContribution routine | |
561 | ([17972](https://github.com/civicrm/civicrm-core/pull/17972))** | |
562 | ||
563 | - **"Contribution Source" profile field has no effect on new contribution | |
564 | ([dev/core#1902](https://lab.civicrm.org/dev/core/-/issues/1902): | |
565 | [17930](https://github.com/civicrm/civicrm-core/pull/17930))** | |
566 | ||
567 | - **Incorrect check for "soft_credit" after making pcp donation | |
568 | ([dev/core#1915](https://lab.civicrm.org/dev/core/-/issues/1915): | |
569 | [18002](https://github.com/civicrm/civicrm-core/pull/18002))** | |
570 | ||
571 | - **Total Tax Amount on the Contribution (generated in backoffice/offline) no | |
572 | longer adds up to sum of the Tax Amount for the individual line items | |
573 | ([dev/core#1983](https://lab.civicrm.org/dev/core/-/issues/1983): | |
574 | [18290](https://github.com/civicrm/civicrm-core/pull/18290))** | |
575 | ||
576 | - **Downloaded Invoice activity attaches non wkhtmltopdf invoice | |
577 | ([dev/core#1922](https://lab.civicrm.org/dev/core/-/issues/1922): | |
578 | [18056](https://github.com/civicrm/civicrm-core/pull/18056))** | |
579 | ||
580 | Downloading an invoice would ignore whether wkhtmltopdf was configured and | |
581 | always use dompdf. | |
582 | ||
583 | - **Fix repeattransaction api to use custom data from the template contribution | |
584 | ([17975](https://github.com/civicrm/civicrm-core/pull/17975))** | |
585 | ||
586 | The Contribution.repeattransaction API will now copy custom data from the | |
587 | template rather than the earliest related contribution. | |
588 | ||
589 | ### CiviEvent | |
590 | ||
591 | - **Can't meaningfully disable self-service transfer/cancellation once enabled | |
592 | ([dev/event#35](https://lab.civicrm.org/dev/event/-/issues/35): | |
593 | [18040](https://github.com/civicrm/civicrm-core/pull/18040))** | |
594 | ||
595 | - **Event registration form has inconsistent labeling | |
596 | ([dev/event#38](https://lab.civicrm.org/dev/event/-/issues/38): | |
597 | [17695](https://github.com/civicrm/civicrm-core/pull/17695))** | |
598 | ||
599 | - **Event cart hidden/enabled in buildkit 5.29 RC | |
600 | ([dev/event#40](https://lab.civicrm.org/dev/event/-/issues/40): | |
601 | [18101](https://github.com/civicrm/civicrm-core/pull/18101))** | |
602 | ||
603 | Ensures that the Event Cart functionality defaults to off. | |
604 | ||
605 | ### CiviMail | |
606 | ||
afea6949 | 607 | - **Remove URL-tracking in mass SMS |
47c2ce56 AH |
608 | ([dev/core#1843](https://lab.civicrm.org/dev/core/-/issues/1843): |
609 | [17700](https://github.com/civicrm/civicrm-core/pull/17700))** | |
610 | ||
611 | Rewritten URLs were confusing and made SMS messages unnecessarily long. There | |
612 | also have never been SMS tracking reports to use them anyway. | |
613 | ||
614 | - **Test mailings create new contacts even when "Add Contacts" permission is not | |
615 | present. ([dev/mail#70](https://lab.civicrm.org/dev/mail/-/issues/70): | |
616 | [17867](https://github.com/civicrm/civicrm-core/pull/17867))** | |
617 | ||
618 | Ensures contacts are not created when a user without permissions to create | |
619 | contacts sends a test email. | |
620 | ||
afea6949 | 621 | - **Mailing Subscription form does not validate reCAPTCHA |
47c2ce56 AH |
622 | ([dev/core#1755](https://lab.civicrm.org/dev/core/-/issues/1755): |
623 | [17305](https://github.com/civicrm/civicrm-core/pull/17305))** | |
624 | ||
625 | - **Text version of unsubscribed email is missing the link to resubscribe | |
626 | ([dev/core#1919](https://lab.civicrm.org/dev/core/-/issues/1919): | |
627 | [18015](https://github.com/civicrm/civicrm-core/pull/18015))** | |
628 | ||
629 | - **Add CiviMail synchronisation frequency setting | |
630 | (in support of [dev/core#1768](https://lab.civicrm.org/dev/core/-/issues/1768): | |
631 | [17709](https://github.com/civicrm/civicrm-core/pull/17709))** | |
632 | ||
633 | This adds a setting for updating how frequently the database should be updated | |
634 | with the status of emails that have been sent. Updating the database more | |
635 | frequently can slow the process down, but it reduces the likelihood that a | |
636 | recipient will be re-emailed when recovering from a stalled mailing. | |
637 | ||
afea6949 | 638 | - **Mark the new routes for "open.php" and "url.php" as public |
47c2ce56 AH |
639 | ([17813](https://github.com/civicrm/civicrm-core/pull/17813))** |
640 | ||
641 | This denotes the paths for open and URL tracking as "public" pages as they are | |
642 | meant to be used by unauthenticated email clients and recipients. | |
643 | ||
644 | ### CiviMember | |
645 | ||
646 | - **Decimal Separator - Invalid value "total_amount" (NaN,N) creating or editing | |
647 | a membership ([dev/core#1113](https://lab.civicrm.org/dev/core/-/issues/1113): | |
648 | [16429](https://github.com/civicrm/civicrm-core/pull/16429))** | |
649 | ||
650 | - **Offline Membership Renewal Tax Calculation is incorrect [regression] | |
651 | ([dev/core#1972](https://lab.civicrm.org/dev/core/-/issues/1972): | |
652 | [18271](https://github.com/civicrm/civicrm-core/pull/18271))** | |
653 | ||
654 | ### Drupal Integration | |
655 | ||
656 | - **Drupal 8 - Using Create User Record action on a contact with no email is too | |
657 | quiet. Also CRM_Core_Session::setStatus is sometimes ignored. | |
658 | ([dev/drupal#127](https://lab.civicrm.org/dev/drupal/-/issues/127): | |
659 | [17914](https://github.com/civicrm/civicrm-core/pull/17914) and | |
660 | [17915](https://github.com/civicrm/civicrm-core/pull/17915))** | |
661 | ||
662 | Require email when adding a user and ensure that errors show. | |
663 | ||
664 | - **The following PHP variables are not set: $_SERVER[HTTP_HOST] | |
665 | ([dev/core#750](https://lab.civicrm.org/dev/core/-/issues/750): | |
666 | [17636](https://github.com/civicrm/civicrm-core/pull/17636))** | |
667 | ||
668 | Skip the server variable checks if running in a CLI environment, removing an | |
669 | error when running Drush commands against Drupal 8 and Drupal 9 based sites. | |
670 | ||
afea6949 | 671 | - **Can't find reCAPTCHA in Drupal 8 |
47c2ce56 AH |
672 | ([dev/core#1871](https://lab.civicrm.org/dev/core/-/issues/1871): |
673 | [17822](https://github.com/civicrm/civicrm-core/pull/17822))** | |
674 | ||
675 | - **Fixed for multi-select filter | |
676 | ([615](https://github.com/civicrm/civicrm-drupal/pull/615))** | |
677 | ||
678 | This fixes filters for multi-select fields in Views. | |
679 | ||
afea6949 | 680 | - **Fix URL for file field |
47c2ce56 AH |
681 | ([608](https://github.com/civicrm/civicrm-drupal/pull/608))** |
682 | ||
683 | This fixes the generated URL for file fields in Views. | |
684 | ||
685 | ### Wordpress Integration | |
686 | ||
687 | - **[civicrm.files] token doesn't work in some cases since 5.27 | |
688 | ([dev/wordpress#66](https://lab.civicrm.org/dev/wordpress/-/issues/66): | |
689 | [18068](https://github.com/civicrm/civicrm-core/pull/18068))** | |
690 | ||
afea6949 | 691 | Ensures the [civicrm.files] token plays nice for sites with older WordPress |
47c2ce56 AH |
692 | file directory set ups. |
693 | ||
694 | - **CiviCRM and the WordPress Pods plugin (since version 2.7.13) is incompatible | |
695 | due to Pods including marionette v3.3.1 for backbone, newer than CiviCRM's | |
696 | bundled marionette v1.0.3 | |
697 | ([dev/core#1090](https://lab.civicrm.org/dev/core/-/issues/1090): | |
698 | [17855](https://github.com/civicrm/civicrm-core/pull/17855))** | |
699 | ||
700 | Ensures CiviCRM plays nicely with recent versions of Elementor Plugin. | |
701 | ||
afea6949 | 702 | - **Fix PHP notice on WordPress permissions form |
47c2ce56 AH |
703 | ([17758](https://github.com/civicrm/civicrm-core/pull/17758))** |
704 | ||
705 | - **Slow down the frequency of WordPress "heartbeat" calls in CiviCRM admin | |
706 | ([dev/wordpress#67](https://lab.civicrm.org/dev/wordpress/-/issues/67): | |
707 | [214](https://github.com/civicrm/civicrm-wordpress/pull/214))** | |
708 | ||
e4ee9e7b TO |
709 | - **Be more forgiving about slash in wpBasePage ([dev/wordpress#73](https://lab.civicrm.org/dev/wordpress/issues/73): |
710 | [18332](https://github.com/civicrm/civicrm-core/pull/18332))** | |
711 | ||
8bd48a0f | 712 | ## <a name="misc"></a>Miscellany |
6f2bdb76 | 713 | |
79212351 AH |
714 | - **APIv4 - Add BasicEntity helper class |
715 | ([17899](https://github.com/civicrm/civicrm-core/pull/17899))** | |
716 | ||
717 | - **Bump minimum upgradable version to 4.4.7 | |
718 | ([17750](https://github.com/civicrm/civicrm-core/pull/17750))** | |
719 | ||
720 | - **Update version in the test_data_second_domain file and also update the | |
721 | setVersion script to update the file version as necessary | |
722 | ([17897](https://github.com/civicrm/civicrm-core/pull/17897))** | |
723 | ||
724 | - **Be a little less supportive to cvs | |
725 | ([17896](https://github.com/civicrm/civicrm-core/pull/17896))** | |
726 | ||
727 | - **Replace a load of references to the wiki with docs links | |
728 | ([17900](https://github.com/civicrm/civicrm-core/pull/17900))** | |
729 | ||
730 | - **Remove unneccessary isoToDate function | |
731 | ([dev/core#1921](https://lab.civicrm.org/dev/core/-/issues/1921): | |
732 | [18025](https://github.com/civicrm/civicrm-core/pull/18025))** | |
733 | ||
734 | - **CRM_Activity_Form_SearchTest::testQill can fail semi-randomly | |
735 | ([dev/core#1894](https://lab.civicrm.org/dev/core/-/issues/1894): | |
736 | [17902](https://github.com/civicrm/civicrm-core/pull/17902))** | |
737 | ||
738 | - **Test for fatal error on new individual form | |
739 | ([dev/core#1874](https://lab.civicrm.org/dev/core/-/issues/1874): | |
740 | [17835](https://github.com/civicrm/civicrm-core/pull/17835))** | |
741 | ||
742 | - **Bump lodash from 4.17.15 to 4.17.19 | |
743 | ([17858](https://github.com/civicrm/civicrm-core/pull/17858))** | |
744 | ||
745 | - **Update regen.sh with new & upcoming core extensions | |
746 | ([17839](https://github.com/civicrm/civicrm-core/pull/17839))** | |
747 | ||
748 | - **APIv4 - Add activity contacts to APIv4 field spec | |
749 | ([17766](https://github.com/civicrm/civicrm-core/pull/17766))** | |
750 | ||
751 | - **Adjust mysql SET NAMES in remaining places as we agreed this was the go | |
752 | ([17825](https://github.com/civicrm/civicrm-core/pull/17825))** | |
753 | ||
754 | - **CRM_Utils_SQL - Add "onDuplicate()" and "syncInto()" helpers | |
755 | ([17780](https://github.com/civicrm/civicrm-core/pull/17780))** | |
756 | ||
757 | - **Improve efficiency of findFiles | |
758 | ([17745](https://github.com/civicrm/civicrm-core/pull/17745))** | |
759 | ||
760 | - **APIv4 Explorer: Improve selection of fields for HAVING | |
761 | ([17746](https://github.com/civicrm/civicrm-core/pull/17746))** | |
762 | ||
763 | - **Convert CRM.utils.formatDate tests to karma | |
764 | ([17757](https://github.com/civicrm/civicrm-core/pull/17757))** | |
765 | ||
766 | - **Teach CRM.utils.formatDate to also show time | |
767 | ([17684](https://github.com/civicrm/civicrm-core/pull/17684))** | |
768 | ||
0cce8662 AF |
769 | - **CRM_Utils_Hook: deprecation warning and short array syntax |
770 | ([17995](https://github.com/civicrm/civicrm-core/pull/17995))** | |
771 | ||
772 | - **Remove check for valid email in synchronizeUFMatch | |
773 | ([17771](https://github.com/civicrm/civicrm-core/pull/17771))** | |
774 | ||
775 | - **Remove unused "ufUniqID" session variable | |
776 | ([17904](https://github.com/civicrm/civicrm-core/pull/17904))** | |
777 | ||
778 | - **Remove duplicate cache flush | |
779 | ([17988](https://github.com/civicrm/civicrm-core/pull/17988))** | |
780 | ||
781 | - **Remove extraneous opportunistic cache flush. | |
782 | ([17936](https://github.com/civicrm/civicrm-core/pull/17936))** | |
783 | ||
784 | - **Hooks/Dispatcher - Close loopholes that occur around "preboot" hooks | |
785 | ([17831](https://github.com/civicrm/civicrm-core/pull/17831))** | |
786 | ||
0cce8662 AF |
787 | - **Use PrematureExit exception instead of weird hack in tests |
788 | ([17870](https://github.com/civicrm/civicrm-core/pull/17870))** | |
789 | ||
790 | - **Remove unnecessary try/catch per #17729 | |
791 | ([17823](https://github.com/civicrm/civicrm-core/pull/17823))** | |
792 | ||
793 | - **handlePaymentNotification() should not be declared as a static method | |
794 | ([17849](https://github.com/civicrm/civicrm-core/pull/17849))** | |
795 | ||
796 | - **MembershipRenewalTest - Fix failure | |
797 | ([17830](https://github.com/civicrm/civicrm-core/pull/17830))** | |
798 | ||
799 | - **Remove hard coded charset. | |
800 | ([17826](https://github.com/civicrm/civicrm-core/pull/17826))** | |
801 | ||
802 | - **getLoggedInContactID() is a static function | |
803 | ([17783](https://github.com/civicrm/civicrm-core/pull/17783))** | |
804 | ||
805 | - **Remove PaymentExpress ipn class | |
806 | ([17763](https://github.com/civicrm/civicrm-core/pull/17763))** | |
807 | ||
808 | - **Remove unused, deprecated functions | |
809 | ([17761](https://github.com/civicrm/civicrm-core/pull/17761))** | |
810 | ||
811 | - **CIVICRM_BAO_CACHE_ADAPTER - Remove obsolete option | |
812 | ([17990](https://github.com/civicrm/civicrm-core/pull/17990))** | |
813 | ||
814 | - **More unused functions in GenCode | |
815 | ([17756](https://github.com/civicrm/civicrm-core/pull/17756))** | |
816 | ||
817 | - **Temporary tables should follow consistent naming convention | |
818 | ([dev/core#183](https://lab.civicrm.org/dev/core/-/issues/183): | |
819 | [17827](https://github.com/civicrm/civicrm-core/pull/17827))** | |
820 | ||
f8220fdf AF |
821 | - **CRM_Core_BAO_Cache - Remove functions deprecated a year ago |
822 | ([17989](https://github.com/civicrm/civicrm-core/pull/17989))** | |
823 | ||
824 | - **Fix all core processors to implement doPayment and not doTransferPayment or | |
825 | doDirectPayment | |
826 | ([https://lab.civicrm.org/dev/financial/-/issues/135](https://lab.civicrm.org/dev/financial/-/issues/135): | |
827 | [18078](https://github.com/civicrm/civicrm-core/pull/18078) and | |
828 | [18072](https://github.com/civicrm/civicrm-core/pull/18072))** | |
829 | ||
8bd48a0f AF |
830 | - **[REF] Extract setUserContext on contribution form & cleanup on backend add |
831 | membership form | |
832 | ([17968](https://github.com/civicrm/civicrm-core/pull/17968))** | |
6f2bdb76 | 833 | |
8bd48a0f AF |
834 | - **[REF] remove unnecessary variable variables |
835 | ([17903](https://github.com/civicrm/civicrm-core/pull/17903))** | |
6f2bdb76 | 836 | |
8bd48a0f AF |
837 | - **[REF] - Add helper function for the repetitive task of fetching multilingual |
838 | ([17650](https://github.com/civicrm/civicrm-core/pull/17650))** | |
6f2bdb76 | 839 | |
afea6949 | 840 | - **[REF] Unit test attempt to create reported bugs , minor cleanup |
8bd48a0f | 841 | ([17560](https://github.com/civicrm/civicrm-core/pull/17560))** |
6f2bdb76 | 842 | |
afea6949 | 843 | - **[REF] Extract addToRecentItems from membership create |
8bd48a0f | 844 | ([17524](https://github.com/civicrm/civicrm-core/pull/17524))** |
6f2bdb76 | 845 | |
8bd48a0f AF |
846 | - **[REF] Fix a couple of jQuery errors that have cropped up |
847 | ([17871](https://github.com/civicrm/civicrm-core/pull/17871))** | |
6f2bdb76 | 848 | |
afea6949 | 849 | - **[REF] regen.sh - Remove unusual handling of `zipcodes.mysql` |
8bd48a0f | 850 | ([17869](https://github.com/civicrm/civicrm-core/pull/17869))** |
6f2bdb76 | 851 | |
8bd48a0f AF |
852 | - **[REF] ScheduledJob cleanup, remove unused var |
853 | ([17862](https://github.com/civicrm/civicrm-core/pull/17862))** | |
6f2bdb76 | 854 | |
8bd48a0f AF |
855 | - **[REF] Migrate Event Cart Setting into the Extension |
856 | ([17841](https://github.com/civicrm/civicrm-core/pull/17841))** | |
6f2bdb76 | 857 | |
8bd48a0f AF |
858 | - **[REF] Only printOnly once |
859 | ([17850](https://github.com/civicrm/civicrm-core/pull/17850))** | |
6f2bdb76 | 860 | |
afea6949 | 861 | - **[REF] APIv4 ConformanceTest - Split apart into per-entity sub-tests |
8bd48a0f | 862 | ([17845](https://github.com/civicrm/civicrm-core/pull/17845))** |
6f2bdb76 | 863 | |
afea6949 | 864 | - **[REF] WebsiteTest - Mitigate flaky failures |
8bd48a0f | 865 | ([17833](https://github.com/civicrm/civicrm-core/pull/17833))** |
6f2bdb76 | 866 | |
8bd48a0f AF |
867 | - **[REF] Follow up cleanup |
868 | ([17788](https://github.com/civicrm/civicrm-core/pull/17788))** | |
6f2bdb76 | 869 | |
8bd48a0f AF |
870 | - **[REF] Remove ACL join on temp table creation in Member ContributionDetail |
871 | report ([17723](https://github.com/civicrm/civicrm-core/pull/17723))** | |
6f2bdb76 | 872 | |
8bd48a0f AF |
873 | - **[REF] Do or do not - there is no try |
874 | ([17795](https://github.com/civicrm/civicrm-core/pull/17795))** | |
6f2bdb76 | 875 | |
8bd48a0f AF |
876 | - **[REF] Unused interface CRM_Report_Interface |
877 | ([17767](https://github.com/civicrm/civicrm-core/pull/17767))** | |
6f2bdb76 | 878 | |
afea6949 | 879 | - **[REF] - Cleanup StatusPreference BAO to be more standard |
8bd48a0f | 880 | ([17801](https://github.com/civicrm/civicrm-core/pull/17801))** |
6f2bdb76 | 881 | |
8bd48a0f AF |
882 | - **[REF] Reduce interaction between dedupe code and createProfileContact |
883 | ([17920](https://github.com/civicrm/civicrm-core/pull/17920))** | |
6f2bdb76 | 884 | |
afea6949 | 885 | - **[REF] Simplify field reference |
8bd48a0f | 886 | ([17941](https://github.com/civicrm/civicrm-core/pull/17941))** |
6f2bdb76 | 887 | |
8bd48a0f AF |
888 | - **[REF] [Test] Minor simplification on test |
889 | ([18019](https://github.com/civicrm/civicrm-core/pull/18019))** | |
6f2bdb76 | 890 | |
afea6949 | 891 | - **[REF] Simplify is_email_receipt in sendMail |
8bd48a0f | 892 | ([18029](https://github.com/civicrm/civicrm-core/pull/18029))** |
6f2bdb76 | 893 | |
8bd48a0f AF |
894 | - **[REF] Remove transaction from BaseIPN completeTransaction call |
895 | ([18042](https://github.com/civicrm/civicrm-core/pull/18042))** | |
6f2bdb76 | 896 | |
8bd48a0f AF |
897 | - **[REF] Simplify membership status date handling |
898 | ([18030](https://github.com/civicrm/civicrm-core/pull/18030))** | |
6f2bdb76 | 899 | |
8bd48a0f AF |
900 | - **[REF] Clean up handling of financial_type_id override |
901 | ([18032](https://github.com/civicrm/civicrm-core/pull/18032))** | |
6f2bdb76 | 902 | |
8bd48a0f AF |
903 | - **[REF] Remove transaction from completeOrder signature |
904 | ([18046](https://github.com/civicrm/civicrm-core/pull/18046))** | |
6f2bdb76 | 905 | |
afea6949 | 906 | - **[REF] Remove transaction instantiation in PaypalPro |
8bd48a0f | 907 | ([18026](https://github.com/civicrm/civicrm-core/pull/18026))** |
6f2bdb76 | 908 | |
8bd48a0f AF |
909 | - **[REF] Stop instantiating transaction in PaypalIPN |
910 | ([18020](https://github.com/civicrm/civicrm-core/pull/18020))** | |
6f2bdb76 | 911 | |
8bd48a0f AF |
912 | - **[REF] Remove pass-by-reference & always empty param |
913 | ([17984](https://github.com/civicrm/civicrm-core/pull/17984))** | |
6f2bdb76 | 914 | |
8bd48a0f AF |
915 | - **[REF] Tighten up function signature for dedupePair |
916 | ([17923](https://github.com/civicrm/civicrm-core/pull/17923))** | |
6f2bdb76 | 917 | |
afea6949 | 918 | - **[REF] Move noisily deprecate BaseIPN->sendMail, call api from it rather |
8bd48a0f AF |
919 | than BAO function |
920 | ([17982](https://github.com/civicrm/civicrm-core/pull/17982))** | |
6f2bdb76 | 921 | |
8bd48a0f AF |
922 | - **[REF] Use CRM_Utils_Mail::send for sending emails for confirming unsubscribe |
923 | resubscribe auto replies and subscribing | |
924 | ([17396](https://github.com/civicrm/civicrm-core/pull/17396))** | |
6f2bdb76 | 925 | |
8bd48a0f AF |
926 | - **[REF] Reduce calls to CRM_Member_PseudoConstant::membershipType |
927 | ([17987](https://github.com/civicrm/civicrm-core/pull/17987))** | |
6f2bdb76 | 928 | |
8bd48a0f AF |
929 | - **[REF] Use Standard function cacheClause to re-use contact acl cache table |
930 | ([17707](https://github.com/civicrm/civicrm-core/pull/17707))** | |
6f2bdb76 | 931 | |
8bd48a0f AF |
932 | - **[REF] Make explicit what we are doing with 'values' in this code |
933 | ([17979](https://github.com/civicrm/civicrm-core/pull/17979))** | |
6f2bdb76 | 934 | |
8bd48a0f AF |
935 | - **[REF] Minor code clean up |
936 | ([17974](https://github.com/civicrm/civicrm-core/pull/17974))** | |
6f2bdb76 | 937 | |
8bd48a0f AF |
938 | - **[REF] Grant cleanup |
939 | ([17967](https://github.com/civicrm/civicrm-core/pull/17967))** | |
6f2bdb76 | 940 | |
8bd48a0f AF |
941 | - **[REF] Refactor to use the standard CRM_Core_Form::addRadio function for a |
942 | number of radio elements | |
943 | ([17932](https://github.com/civicrm/civicrm-core/pull/17932))** | |
6f2bdb76 | 944 | |
8bd48a0f AF |
945 | - **[REF] Fix the default to_financial_account_id for generated transactions |
946 | ([17938](https://github.com/civicrm/civicrm-core/pull/17938))** | |
6f2bdb76 | 947 | |
8bd48a0f AF |
948 | - **[REF] Upgrade dompdf version to be more compatible with PHP7.4 |
949 | ([17946](https://github.com/civicrm/civicrm-core/pull/17946))** | |
6f2bdb76 | 950 | |
8bd48a0f AF |
951 | - **[REF] [Tests] Cleanup test declaration to take advantage of mapping |
952 | improvements ([17939](https://github.com/civicrm/civicrm-core/pull/17939))** | |
6f2bdb76 | 953 | |
8bd48a0f AF |
954 | - **[REF] Remove unnecessary complexity on im export |
955 | ([17949](https://github.com/civicrm/civicrm-core/pull/17949))** | |
6f2bdb76 | 956 | |
8bd48a0f AF |
957 | - **[REF] GroupContact BAO - Minor code cleanup |
958 | ([17928](https://github.com/civicrm/civicrm-core/pull/17928))** | |
6f2bdb76 | 959 | |
8bd48a0f AF |
960 | - **[REF] Minor function signuture cleanup |
961 | ([17922](https://github.com/civicrm/civicrm-core/pull/17922))** | |
6f2bdb76 | 962 | |
8bd48a0f AF |
963 | - **[REF] Do not pass variable by reference |
964 | ([17921](https://github.com/civicrm/civicrm-core/pull/17921))** | |
6f2bdb76 | 965 | |
8bd48a0f AF |
966 | - **[REF] remove first attempt to set currency in repeattransaction flow |
967 | ([18055](https://github.com/civicrm/civicrm-core/pull/18055))** | |
6f2bdb76 | 968 | |
8bd48a0f AF |
969 | - **[REF] Even less variable variables |
970 | ([18058](https://github.com/civicrm/civicrm-core/pull/18058))** | |
6f2bdb76 | 971 | |
8bd48a0f AF |
972 | - **[REF] Move handling of form elements back to the Form |
973 | ([17981](https://github.com/civicrm/civicrm-core/pull/17981))** | |
6f2bdb76 | 974 | |
8bd48a0f AF |
975 | - **[REF] Simplify location metadata handling in Export class |
976 | ([17951](https://github.com/civicrm/civicrm-core/pull/17951))** | |
6f2bdb76 | 977 | |
8bd48a0f AF |
978 | - **[REF] Do not pass by reference to the recur function |
979 | ([18057](https://github.com/civicrm/civicrm-core/pull/18057))** | |
6f2bdb76 | 980 | |
8bd48a0f AF |
981 | - **[REF] Simplify getMembershipStatusByDate more |
982 | ([18051](https://github.com/civicrm/civicrm-core/pull/18051))** | |
6f2bdb76 | 983 | |
8bd48a0f AF |
984 | - **[REF] Remove mail_mime package as now supplied by composer |
985 | ([300](https://github.com/civicrm/civicrm-packages/pull/300))** | |
6f2bdb76 | 986 | |
8bd48a0f AF |
987 | - **[REF] Remove some deprecated size function calls replaced with length |
988 | ([299](https://github.com/civicrm/civicrm-packages/pull/299))** | |
6f2bdb76 | 989 | |
f8220fdf AF |
990 | - **Refactor "applyLocale" and remove references to "language" column in UFMatch |
991 | table ([18049](https://github.com/civicrm/civicrm-core/pull/18049))** | |
992 | ||
8bd48a0f AF |
993 | - **[NFC] Fix provider unit test on PHP7.4 |
994 | ([18073](https://github.com/civicrm/civicrm-core/pull/18073))** | |
6f2bdb76 | 995 | |
afea6949 | 996 | - **[NFC] Docblock cleanup |
8bd48a0f | 997 | ([610](https://github.com/civicrm/civicrm-drupal/pull/610))** |
6f2bdb76 | 998 | |
8bd48a0f AF |
999 | - **[NFC] Update versions file to remove reference to Mail_mime and Mail |
1000 | ([301](https://github.com/civicrm/civicrm-packages/pull/301))** | |
6f2bdb76 | 1001 | |
8bd48a0f AF |
1002 | - **[NFC] Re run regen after recent merges |
1003 | ([17842](https://github.com/civicrm/civicrm-core/pull/17842))** | |
6f2bdb76 | 1004 | |
8bd48a0f AF |
1005 | - **[NFC] Fix nonstandard header comments |
1006 | ([17880](https://github.com/civicrm/civicrm-core/pull/17880))** | |
6f2bdb76 | 1007 | |
8bd48a0f AF |
1008 | - **[NFC] Add in a unit test of calling the contribution page widget endpoint |
1009 | and remove unneeded file | |
1010 | ([17965](https://github.com/civicrm/civicrm-core/pull/17965))** | |
6f2bdb76 | 1011 | |
8bd48a0f AF |
1012 | - **[NFC] Improve docs for APIv4 Save action |
1013 | ([18004](https://github.com/civicrm/civicrm-core/pull/18004))** | |
6f2bdb76 | 1014 | |
afea6949 | 1015 | - **[NFC] Docblock cleanup |
8bd48a0f | 1016 | ([17945](https://github.com/civicrm/civicrm-core/pull/17945))** |
6f2bdb76 | 1017 | |
8bd48a0f AF |
1018 | - **[NFC] Update a few doc/wiki links in code comments |
1019 | ([17918](https://github.com/civicrm/civicrm-core/pull/17918))** | |
6f2bdb76 | 1020 | |
8bd48a0f AF |
1021 | - **[NFC] Comment block cleanup |
1022 | ([17872](https://github.com/civicrm/civicrm-core/pull/17872))** | |
6f2bdb76 | 1023 | |
8bd48a0f AF |
1024 | - **[Test] Update hook signature in test |
1025 | ([609](https://github.com/civicrm/civicrm-drupal/pull/609))** | |
6f2bdb76 | 1026 | |
afea6949 | 1027 | - **[Test] Attempt to replicate #17852 |
8bd48a0f | 1028 | ([18038](https://github.com/civicrm/civicrm-core/pull/18038))** |
6f2bdb76 | 1029 | |
8bd48a0f AF |
1030 | - **[Test fix] We might need this to ensure really quick test runs don't fail |
1031 | ([18045](https://github.com/civicrm/civicrm-core/pull/18045))** | |
6f2bdb76 | 1032 | |
8bd48a0f AF |
1033 | - **Add testing to Authorize.net and remove the lines that are repeated |
1034 | ([18028](https://github.com/civicrm/civicrm-core/pull/18028))** | |
6f2bdb76 | 1035 | |
8bd48a0f AF |
1036 | - **Add test on status calculation |
1037 | ([18037](https://github.com/civicrm/civicrm-core/pull/18037))** | |
6f2bdb76 | 1038 | |
8bd48a0f AF |
1039 | - **Fix for failing test |
1040 | ([18036](https://github.com/civicrm/civicrm-core/pull/18036))** | |
6f2bdb76 | 1041 | |
8bd48a0f AF |
1042 | - **[Test framework] re-re-fix test and add test for test |
1043 | ([18013](https://github.com/civicrm/civicrm-core/pull/18013))** | |
6f2bdb76 | 1044 | |
8bd48a0f | 1045 | - **Re-fix test ([18009](https://github.com/civicrm/civicrm-core/pull/18009))** |
6f2bdb76 | 1046 | |
8bd48a0f AF |
1047 | - **[Test framework] - Update failing test |
1048 | ([18003](https://github.com/civicrm/civicrm-core/pull/18003))** | |
6f2bdb76 | 1049 | |
8bd48a0f AF |
1050 | - **[Test framework] - Combine triplicate createCase functions |
1051 | ([17957](https://github.com/civicrm/civicrm-core/pull/17957))** | |
6f2bdb76 | 1052 | |
8bd48a0f AF |
1053 | - **Remove error checking by-pass in tests |
1054 | ([17940](https://github.com/civicrm/civicrm-core/pull/17940))** | |
6f2bdb76 | 1055 | |
8bd48a0f AF |
1056 | - **[Test Framework] - Tests for report downloads |
1057 | ([17892](https://github.com/civicrm/civicrm-core/pull/17892))** | |
6f2bdb76 | 1058 | |
afea6949 | 1059 | - **api_v3_TaxContributionPageTest - Remove hard coded processor id |
8bd48a0f | 1060 | ([17860](https://github.com/civicrm/civicrm-core/pull/17860))** |
6f2bdb76 | 1061 | |
8bd48a0f AF |
1062 | - **API tests - label versions in dataprovider versionThreeAndFour |
1063 | ([17847](https://github.com/civicrm/civicrm-core/pull/17847))** | |
6f2bdb76 | 1064 | |
8bd48a0f AF |
1065 | - **Extract code to set isEmailReceipt in Contribution.completeOrder |
1066 | ([18039](https://github.com/civicrm/civicrm-core/pull/18039))** | |
6f2bdb76 | 1067 | |
8bd48a0f AF |
1068 | - **Do not pass-by-reference to recur function |
1069 | ([18071](https://github.com/civicrm/civicrm-core/pull/18071))** | |
6f2bdb76 | 1070 | |
8bd48a0f AF |
1071 | - **Unused functions in GenCode |
1072 | ([17753](https://github.com/civicrm/civicrm-core/pull/17753))** | |
6f2bdb76 | 1073 | |
8bd48a0f AF |
1074 | - **Fix typo in templates/CRM/Report/Form/Tabs/GroupBy.tpl |
1075 | ([17747](https://github.com/civicrm/civicrm-core/pull/17747))** | |
6f2bdb76 | 1076 | |
8bd48a0f AF |
1077 | - **Remove unused "ufUniqID" session variable |
1078 | ([213](https://github.com/civicrm/civicrm-wordpress/pull/213))** | |
6f2bdb76 | 1079 | |
8bd48a0f AF |
1080 | - **Remove Net packages Net_Curl Net_DIME as they do not appear to be used |
1081 | ([294](https://github.com/civicrm/civicrm-packages/pull/294))** | |
6f2bdb76 | 1082 | |
8bd48a0f AF |
1083 | - **Update contributor key for Andrew |
1084 | ([18230](https://github.com/civicrm/civicrm-core/pull/18230))** | |
6f2bdb76 | 1085 | |
8bd48a0f AF |
1086 | - **Fix qill typo |
1087 | ([18041](https://github.com/civicrm/civicrm-core/pull/18041))** | |
6f2bdb76 | 1088 | |
8bd48a0f AF |
1089 | - **Update flexmailer release information |
1090 | ([17912](https://github.com/civicrm/civicrm-core/pull/17912))** | |
6f2bdb76 | 1091 | |
8bd48a0f AF |
1092 | - **Remove invalid use of crmMoney formatter |
1093 | ([18031](https://github.com/civicrm/civicrm-core/pull/18031))** | |
6f2bdb76 | 1094 | |
8bd48a0f AF |
1095 | - **Remove main PaymentExpress class |
1096 | ([18010](https://github.com/civicrm/civicrm-core/pull/18010))** | |
6f2bdb76 | 1097 | |
8bd48a0f AF |
1098 | - **Remove unused parameter ids['billing'] |
1099 | ([18021](https://github.com/civicrm/civicrm-core/pull/18021))** | |
6f2bdb76 | 1100 | |
8bd48a0f AF |
1101 | - **Cache loader - remove legacy handling, handle null result from setting |
1102 | ([17999](https://github.com/civicrm/civicrm-core/pull/17999))** | |
6f2bdb76 | 1103 | |
f8220fdf AF |
1104 | - **Use case id to get relationship for activity creation |
1105 | ([17256](https://github.com/civicrm/civicrm-core/pull/17256) and | |
1106 | [17764](https://github.com/civicrm/civicrm-core/pull/17764))** | |
1107 | ||
6f2bdb76 AH |
1108 | ## <a name="credits"></a>Credits |
1109 | ||
1110 | This release was developed by the following code authors: | |
1111 | ||
88bd6b02 | 1112 | AGH Strategies - Alice Frumin, Andie Hunt; Agileware - Justin Freeman; |
8bd48a0f AF |
1113 | Christian Wach; Circle Interactive - Pradeep Nayak; CiviCoop - Jaap Jansma, |
1114 | Klaas Eikelboom; CiviCRM - Coleman Watts, Tim Otten; CiviDesk - Yashodha Chaku; | |
1115 | Coop SymbioTIC - Mathieu Lutfy, Samuel Vanhove; Dave D; Fuzion - Jitendra | |
1116 | Purohit; iXiam - César Ramos, Diego Muñio; JMA Consulting - Monish Deb, Seamus | |
1117 | Lee; John Kingsnorth; Joinery - Allen Shaw; Lighthouse Consulting and Design - | |
1118 | Brian Shaughnessy; Megaphone Technology Consulting - Jon Goldberg; MillerTech - | |
1119 | Chamil Wijesooriya; MJCO - Mikey O'Toole; MJW Consulting - Matthew Wire; | |
1120 | Progressive Technology Project - Jamie McClelland; Squiffle Consulting - Aidan | |
1121 | Saunders; Stephen Palmstrom; Tadpole Collective - Kevin Cristiano; Timbsoft | |
1122 | Technologies - Tunbola Ogunwande; Wikimedia Foundation - Eileen McNaughton | |
6f2bdb76 AH |
1123 | |
1124 | Most authors also reviewed code for this release; in addition, the following | |
1125 | reviewers contributed their comments: | |
1126 | ||
79212351 AH |
1127 | Agileware - Pengyi Zhang; Andrew Thompson; Artful Robot - Rich Lott; Australian |
1128 | Greens - Andrew Cormick-Dockery, John Twyman; Bastien Ho; Blackfly Solutions - | |
1129 | Alan Dixon; Carlos Capote; CompuCorp - Jamie Novick; DevApp - Adam Kwiatkowski; | |
8bd48a0f AF |
1130 | Francesc Bassas i Bullich; Freeform Solutions - Herb van den Dool; Greenpeace |
1131 | Central and Eastern Europe - Patrick Figel; Irene Meisel; JMA Consulting - Joe | |
1132 | Murray; Korlon - Stuart Gaston; Nicol Wistreich; Rar9; Ray Wright; Semper IT - | |
79212351 | 1133 | Karin Gerritsen; Third Sector Design - Michael McAndrew |
cb42725f AH |
1134 | |
1135 | ## <a name="feedback"></a>Feedback | |
1136 | ||
88bd6b02 | 1137 | These release notes are edited by Alice Frumin and Andie Hunt. If you'd like |
cb42725f AH |
1138 | to provide feedback on them, please log in to https://chat.civicrm.org/civicrm |
1139 | and contact `@agh1`. |