Skip to content

Latest commit

 

History

History
579 lines (398 loc) · 23 KB

5.30.0.md

File metadata and controls

579 lines (398 loc) · 23 KB

CiviCRM 5.30.0

Released October 7, 2020

Synopsis

Does this version...?
Fix security vulnerabilities? no
Change the database schema? yes
Alter the API? yes
Require attention to configuration options? no
Fix problems installing or upgrading to a previous version? yes
Introduce features? yes
Fix bugs? yes

Features

Core CiviCRM

  • APIv4 Explorer: Generate short cv code (18089)

    Improves the APIv4 Explorer user interface by including cv code to run the API from CLI.

  • Optimise proximity custom search, by reducing addGeocodingData fn call (18248)

    Improves performance of the proximity custom search.

  • Support more table names for utf8mb4 conversions and database name (18249)

    Improves the System.utf8conversion API so that one can specify table patterns and databases.

  • distmaker - Autogenerate civicrm-*-patchset.tar.gz (18229)

    Adds a script to autogenerate civicrm-*-patchset.tar.gz instead of having to manually generate it every release.

  • Finish allowing use of SSL to connect to database (Work Towards dev/core#1926: 18095)

    Code cleanup towards the goal of allowing SSL database connections.

  • Profile settings - Add new contacts to a Group? is misleading (dev/core#1950: 18153)

    Improves user experience by editing the help text and description for the "Add new contacts to a Group?" setting.

  • API4: Inconsistent behavior on Role ID (dev/event#37: 18285)

    Allows searching within arrays or serialized strings via APIv4 (and the new Search extension).

  • APIv4 - Fix output of CustomValue create/save/update (18195)

    Improves APIv4 output when saving custom pseudo-entities so that it outputs the values saved instead of [is_error => 0, result => true].

  • Add ability to enable query logging per process (18335)

    Makes it possible to enable logging by process as opposed to all processes or no processes.

  • Expose field label to APIv4 and Search creator (18255 and 18256)

    Progress towards codifying the difference between a field's title and label in the schema.

    These changes:

    • expose labels to APIv4
    • switch to using labels in the new search extension.
    • separates titles from labels in exportable fields.
    • attempts to clarify the difference between titles and labels in the getfields description as:
      • title: "Technical name of field, shown in API and exports"
      • label: "User-facing label, shown on most forms and displays"
  • Metadata fix - phone_type_id, location_type_id, gender_id (18114)

    Improves metadata for various fields to align with new title and label standards.

  • CRM_Utils_VersionCheck - respect force param (18183)

    Makes the versionCheck job more consistent with other checks by respecting APIv4's "force" setting to run even if disabled.

  • Add Serialize key to payment_processor field for Event & Contribution Page (18110)

    Use metatdata rather than code handling to save array of processors. This makes it so that the DAO can handle arrays if it knows the format.

CiviContribute

  • Shell Financial ACLs extension (18269)

    Begins work to move Financial ACL code into an extension.

  • Add Line Item v4 API (Work Towards dev/core#1980: 18275 and 18293)

    Extends permission handling for LineItem delete and LineItem ACLs from APIv3 to to APIv4 by moving it to the financialacls extension.

  • Book keeping Report : Add Time field for Transaction Date and Receive Date field (dev/report#47: 18268)

    Adds a time field to the "Transaction Date" and "Receive Date" filters on the Bookkeeping report.

CiviEvent

  • Wrap "not you" message in crmRegion (18236)

    Wraps the "Not you, do you want to register for someone else" message in a crmRegion so that it can be removed/replaced by the buildForm hook.

CiviMail

  • Add new columns to mailing summary report (dev/core#1944: 18132)

    Adds two new columns to the mailing summary report: "Sender Name" and "Sender Email".

  • Add disable_smarty option to MessageTemplate.send API (18118)

    Improves the MessageTemplate.send API by adding a new optional parameter "disable_smarty", when "disable_smarty" is set to true smarty is not applied to the contents of the message.

WordPress Integration

Drupal Integration

  • Allow for the setting of an additional constant CIVICRM_DRUSH_DSN (613)

    Allows sites to configure CIVICRM_DRUSH_DSN for drush to use to set up database connections.

Bugs resolved

Core CiviCRM

  • Increase size of mysql field in export table for column with CRM_Utils_Type::T_INT type (dev/core#1661: 17956)

    Fixes some data too long for column errors when exporting.

  • Improve robustness of api/class.api.php (18283)

    Ensures that the API mode is set to "local" when an empty string is passed as the server.

  • add serialize data to actionschedule (18289)

    Ensures one can create a scheduled reminder via the API that triggers on two different events.

  • API - Add upgrade-safe checks to ensure table exists before reading (18135)

    Adds efficient checks into the API (v3 and v4) to ensure a DAO table exists before trying to read from it. This prevents hard-crashes in the UI when there are pending updates (or during the upgrade process itself),

  • DB_DataObject - Read CIVICRM_DEBUG_LOG_QUERY correctly (305)

    Makes The value of CIVICRM_DEBUG_LOG_QUERY TRUE-ish or FALSE-ish instead of considering any value true.

  • APIv4 Explorer - Fix possible undefined index (18093)

  • Option value cache key missing domain ID can result in wrong value retrieved for domain (dev/core#1971: 18252)

  • Upgrade screen - show success instead of error if already upgraded (18181)

  • trim white space when checking dedupe (18234)

  • Fix search extension excluded from tarball (18402)

  • Permissions problem on add or edit template (dev/core#2008: 18437)

  • Search ext: Aggregate field fixes (18520)

  • Some datepicker fields only allow choosing dates far in the future (dev/core#2052: 18524)

CiviCase

  • Fix js for case type status change on load (18254)

CiviContribute

  • Clean money for non-deductible amount (18300)

    Ensures that the Contribution API cleans data entered into the "non-deductible amount" field the same way it cleans the other money fields.

  • Processors - remove gross_amount param from processors (18177)

    The gross_amount param is returned by a bunch of processors but is not used so this removes it.

  • {contribution.receipt_date} token does not use any CiviCRM date formatter, output in YYYY-MM-DD HH:MM:SS format and {contribution.receive_date} also uses a non-standard format (18176)

  • Fix PHP notice on contribution page (18116)

  • E_NOTICE on contribution page widget tab (18189)

  • change payment instrument when pending payment paid through credit card (dev/core#912: 18266)

  • PayPal Standard redirect fails on WordPress (dev/core#1997: 18525 and 18534)

  • Invoice no longer displays amount paid/due (dev/core#2035: 18602 and 18628)

CiviEvent

  • Allow the "Cancellation or transfer time limit (hours)" to be negative (dev/event#34: 18067)

    Ensures that entering a negative value into "Cancellation or transfer time limit (hours)" saves correctly and works as expected.

  • Batch Update via Profile does not supply data for editing when custom fields created after participant added to event (18235)

  • E_WARNING when saving event fees admin page if there's no discounts set (18169)

CiviMail

  • Unexpected behavior from api.MailingEventSubscribe.create (Work Towards dev/mail#24: 18325)

    Fixes labels for APIv3 MailingEventSubscribe.create so that they accurately represent the behavior (unsubscribe v subscribe).

  • Mass SMS: Limit group selection to mailing groups (18154)

    Ensures that the fields "Include Groups" and "Exclude Groups" on the "New SMS" form only list groups of the type "Mailing List".

  • Help text bubble is empty and smarty errors when .hlp file is missing for settings forms (dev/core#1920: 18648)

  • Fix error when creating new AB test mailing because domain_id is a required field (18685)

CiviMember

  • Fix regression on back-office membership renewal by credit card (18615)

Drupal Integration

  • Fix : Enable Drupal Watchdog Logging for Drupal 8 (dev/core#1943: 18115)

    Ensure the setting Enable Drupal Watchdog Logging works on Drupal 8 sites.

WordPress Integration

  • Check if $post defined before trying to use its field values. (18168)

    This fixes php notices like PHP Notice: Trying to get property 'post_name' of non-object in <webroot path>\wp-content\plugins\civicrm\civicrm\CRM\Utils\System\WordPress.php on line 288

Miscellany

  • Fix regen and update civicrm_generated (18273)

  • Do not pass by reference for createRelatedMemberships (18243)

  • Typo in groups dropdown on scheduled reminders admin form (dev/core#1956: 18323)

  • Replace CRM_Utils_Array::value in contribution/confirm and bao/membership (18157)

  • Cleanup contactID variables in event/contribution register buildQuickForm (18208)

  • Use already determined value for contributionRecurID (18265)

  • Minor code cleanup to Order API (18217)

  • CodeGen - Add use statement to extensions DAO files (18094)

  • Use more appropriate money format function (18151)

  • Metadata fix in activity search (18216)

  • Replace deprecated Drupal 8 constants (18240)

  • Spelling mistake "separator" not "seperator" (18238)

  • Remove unused variables from repeatTransaction (18209)

  • Remove first_contribution key from repeattransaction (18197)

  • Remove unnecessary transformation of upgrade msg severity (18182)

  • Remove old dropped items from the schema xml (18244)

  • Remove 1 of 2 remaining places where relatedObjects is called in completeOrder (18257)

  • Remove last pass-by-reference in completeOrder signature (18258)

  • Remove legacy handling for 'fixing' line_item.entity_id (18155)

  • Remove deprecated code ids['userId'] (18156)

  • Remove 'hack' that overwrites result of searchColumns hook in mailings list (18237)

  • Remove unused variable (18108)

  • Remove handling for 4.2 DBs (612)

  • Remove ref to logging time (18221)

  • Remove 2019 deprecated function (18242)

  • remove dropped tables for activity target and assignment (18280)

  • Deprecate 'trapException' in DAO::executeQuery (18138)

  • Deprecate/remove unused checkVersion() functions (18134)

  • [REF] Ensure that the form param _id is set when adding a new group w… (18250)

  • [REF] Update recent replacement for CRM_Utils_Array::value (18172 and 18453)

  • [REF] Remove usages of CRM_Utils_Money::format that pass in a blank s… (18142)

  • [REF] Move isSSLDSN() function to avoid potential problems (18131)

  • (REF) CRM_Core_Region - Remove unused bits (18139)

  • [REF] Move Auto DSN Switching into a core function (18270)

  • [REF] Remove DB Package as it is now deployed using composer (302)

  • [REF] Deploy Pear DB package using composer (18027 and 18473)

  • [REF] Update subtypeInfo function to leverage getAllContactTypes (17934)

  • [REF] Fix metadata label for contribution_page_id (18047)

  • REF Remove unused passbyreference and var from ipn_process_transaction (18311)

  • [REF] Clean up return variables on updateContributionStatus, updatePendingOnlineContribution (18303)

  • [REF] Move function to delete merged contacts to the Merger class and include all instances of the pair (17980)

  • [REF] Remove most interaction with $objects in completeOrder (18315)

  • [REF] Fix financial item allocation of negative payments against completed payments (17810)

  • [REF] Separate and move line-item specific portion of checkTaxAmount to LineItem api (18294)

  • [REF] [test] Slight increase in test cover & make functions more re-usable (18291)

  • [REF] simplify retrieval of existing membership on membership renewal form (18296)

  • [REF] Extract function to get locations to merge, rename 'operation' … (17991)

  • [REF] Deprecate unused SQL temptable functions (18171)

  • Minor cleanup in test class (18170)

  • Add line item acl tests (18274)

  • Fix test set up to call Order.create to create the correct line items (18279)

  • Test & remove handling for max_related in renewal form (18295)

  • Add test to check, remove unnecessary lines (18292)

  • [Test framework] - Remove test for deprecated way of calling hook invoke (18136)

  • (NFC) Update various DAO checksums (18184)

  • [NFC] Add code comments about hidden but still used buttons (18119)

  • [NFC] [Test] Initial testing on event payment forms. (18112)

  • [NFC] Update locale over-ride documentation to mention that it is mos… (17919)

  • (NFC) Add some tests to the resources group (18211)

  • [NFC] Some DAO checksums not updated (18239)

  • [NFC] Array formatting (18109)

  • [NFC] IDE cleanup - arrays, single quotes (614)

  • [NFC] Update Event DAO Checksum (18361)

  • [NFC] Fix dates in RelationshipTest (18530)

  • api_v3_MultilingualTest - Skip Cxn entities (18547)

  • [NFC] Update Checksum on CustomField DAO (18689)

Credits

This release was developed by the following code authors:

AGH Strategies - Alice Frumin, Andrew Hunt; Agileware - Justin Freeman, Pengyi Zhang; Circle Interactive - Pradeep Nayak; CiviCRM - Coleman Watts, Tim Otten; CiviDesk - Sunil Pawar, Yashodha Chaku; Dave D; Flinders University of South Australia - Tom Anderson; JMA Consulting - Monish Deb, Seamus Lee; John Kingsnorth; Lemniscus - Noah Miller; Lighthouse Consulting and Design - Brian Shaughnessy; Megaphone Technology Consulting - Jon Goldberg; MillerTech - Chamil Wijesooriya; MJW Consulting - Matthew Wire; Squiffle Consulting - Aidan Saunders; Wikimedia Foundation - Eileen McNaughton, Maggie Epps; Wildsight - Lars Sanders-Green

Most authors also reviewed code for this release; in addition, the following reviewers contributed their comments:

Artful Robot - Rich Lott; Christian Wach; Circle Interactive - Martin Castle; Dave D; Fuzion - Jitendra Purohit; Greenpeace Central and Eastern Europe - Patrick Figel; MJCO - Mikey O'Toole; Semper IT - Karin Gerritsen; Squiffle Consulting - Aidan Saunders; Tadpole Collective - Kevin Cristiano

Feedback

These release notes are edited by Alice Frumin and Andrew Hunt. If you'd like to provide feedback on them, please log in to https://chat.civicrm.org/civicrm and contact @agh1.