| *Does this version...?* | |
|:--------------------------------------------------------------- |:-------:|
-| Fix security vulnerabilities? | |
-| Change the database schema? | |
-| Alter the API? | |
-| Require attention to configuration options? | |
-| Fix problems installing or upgrading to a previous version? | |
-| Introduce features? | |
-| Fix bugs? | |
+| Fix security vulnerabilities? | no |
+| Change the database schema? | **yes** |
+| Alter the API? | **yes** |
+| Require attention to configuration options? | **yes** |
+| Fix problems installing or upgrading to a previous version? | **yes** |s
+| Introduce features? | **yes** |
+| Fix bugs? | **yes** |
## <a name="features"></a>Features
### Core CiviCRM
-- **CRM-18011 Missing Summary ([13854](https://github.com/civicrm/civicrm-core/pull/13854))**
+- **Configurable menubar color
+ ([13996](https://github.com/civicrm/civicrm-core/pull/13996))**
-- **crm- Missing Summary ([13908](https://github.com/civicrm/civicrm-core/pull/13908))**
+ v5.12 introduced a new menu bar. The change also revised the default color
+ scheme (applying a more contemporary palette), but this created stress for
+ some users who were trained to recognize the old menu color. This exposes a
+ new setting for customizing the color scheme, and it changes the default to
+ match previous scheme (be black instead of beige).
-- **CRM-21008 Missing Summary ([13700](https://github.com/civicrm/civicrm-core/pull/13700))**
+- **Menu config screen improvements
+ ([14002](https://github.com/civicrm/civicrm-core/pull/14002))**
-- **[CRM-21677](https://issues.civicrm.org/jira/browse/CRM-21677) ([13792](https://github.com/civicrm/civicrm-core/pull/13792), [13790](https://github.com/civicrm/civicrm-core/pull/13790), and [13780](https://github.com/civicrm/civicrm-core/pull/13780))**
+ Improves the Menu configuration screen by: making changes to the menu (adding
+ or editing menu items) on the admin screen be reflected immediately, adding
+ links to the related settings pages to reduce confusion about how to configure
+ various aspects of the menu bar and fixing the broken icon picker and missing
+ CiviCRM icon.
-## <a name="bugs"></a>Bugs resolved
+- **[dev/core#824](https://lab.civicrm.org/dev/core/issues/824) What to do with
+ the merge screen ([13898](https://github.com/civicrm/civicrm-core/pull/13898)
+ and [13895](https://github.com/civicrm/civicrm-core/pull/13895)) Continued
+ Work**
-### Core CiviCRM
+ Continues work to clean up the Merge screen by moving toward
+ using contact type icons in a standard way instead of the contact type names
+ and cleaning up alignment.
-- **(NFC) SchemaStructure.php - Fix up mismatch between stored+generated code ([14046](https://github.com/civicrm/civicrm-core/pull/14046))**
+- **Mutliple activity type filters on activity tab on contact records
+ ([13873](https://github.com/civicrm/civicrm-core/pull/13873))**
-- **Arg I put these fixes in 5.12 & master while trying for 5.13 ([14036](https://github.com/civicrm/civicrm-core/pull/14036))**
+ Change include/exclude activity type filters to be multiple select2 widgets so
+ that users can filter my multiple activity types rather than only permitting
+ users to select one activity type with a traditional select field.
-- **Disable phpcs checking in the Crypt files where mcrypt functions are ([14031](https://github.com/civicrm/civicrm-core/pull/14031))**
+- **Added a DB check to prevent deleting exisiting CiviCRM data from database.
+ ([13944](https://github.com/civicrm/civicrm-core/pull/13944))**
-- **(NFC) Ensure phpcs ignores eval notice in these files as it is required ([14032](https://github.com/civicrm/civicrm-core/pull/14032))**
+ When installing CiviCRM this change adds a check to see if there are existing
+ CiviCRM tables and requires users to manually remove any CiviCRM tables
+ before continuing to prevent users from accidentally deleting tables.
-- **(NFC) Lint additional php files up to the new coder standard ([14025](https://github.com/civicrm/civicrm-core/pull/14025))**
+- **Encourage developers to use .then instead of .done
+ ([13982](https://github.com/civicrm/civicrm-core/pull/13982))**
-- **Port Code Style Fixes to 5.13 from master ([14026](https://github.com/civicrm/civicrm-core/pull/14026))**
+ This change makes it so the Api Explorer generates js code using `.then()`
+ (instead of `.done`) and demonstrates proper errQor handling to encourage
+ developers to use `.then()`.
-- **(NFC) Update CRM/Core CRM/Custom CRM/Dedupe to match the new coder style ([14023](https://github.com/civicrm/civicrm-core/pull/14023))**
+- **[dev/core#561](https://lab.civicrm.org/dev/core/issues/561) Replace
+ jcalendar instances with datepicker
+ ([13919](https://github.com/civicrm/civicrm-core/pull/13919),
+ [13855](https://github.com/civicrm/civicrm-core/pull/13855),
+ [13965](https://github.com/civicrm/civicrm-core/pull/13965),
+ [13950](https://github.com/civicrm/civicrm-core/pull/13950) and
+ [13918](https://github.com/civicrm/civicrm-core/pull/13918)) Continued Work**
-- **(NFC) Update CRM/Event folder for the new coder style ([14019](https://github.com/civicrm/civicrm-core/pull/14019))**
+ Moves from jcalendar to datepicker in the following places: the fulfilled date
+ on the premium tab on back end contribution add/edit screens, the activity
+ tab, the receive_date and the renewal_date fields in Membership forms and the
+ transaction date field on the update pending status task. And updates tests to
+ reflect progress getting rid of jcalendar.
-- **(NFC) update CRM/Contribute to be the new coder standard ([14021](https://github.com/civicrm/civicrm-core/pull/14021))**
+- **Expose sort_name as a dedupe-matchable field
+ ([13864](https://github.com/civicrm/civicrm-core/pull/13864))**
-- **(NFC) Update CRM/Friend CRM/Grant CRM/Group CRM/Mailing to be up to d… ([14016](https://github.com/civicrm/civicrm-core/pull/14016))**
+ Allow sort_name to be used in dedupe rules.
-- **(NFC) Update CRM/Badge CRM/Campaign CRM/Case to be up to date with a … ([14017](https://github.com/civicrm/civicrm-core/pull/14017))**
+- **Standardise setTitle method on forms
+ ([13781](https://github.com/civicrm/civicrm-core/pull/13781))**
-- **(NFC) Update CRM/Cxn CRM/Dashlet CRM/Export CRM/Extension and CRM/Fin… ([14018](https://github.com/civicrm/civicrm-core/pull/14018))**
+ Makes the title of a form available in the buildForm hook.
-- **Load hooks during upgrade mode ([13551](https://github.com/civicrm/civicrm-core/pull/13551))**
+- **send action links on any page that extends CRM_Core_Page_basic thru
+ hook_civicrm_links
+ ([13068](https://github.com/civicrm/civicrm-core/pull/13068))**
-- **[NFC] Short array syntax - auto convert settings dir ([14005](https://github.com/civicrm/civicrm-core/pull/14005))**
+ Makes it so extension developers can use hook_civicrm_links to add or remove
+ links from the Relationship Types Administration Page (CiviCRM Navigation
+ Menu->Administer->Customize Data and Screens->Relationship Types) and any
+ other page that extends CRM_Core_Page_Basic.
-- **dev/financial#2 Update new payment_processor.title field to be localisable ([13995](https://github.com/civicrm/civicrm-core/pull/13995))**
+- **[CRM-18011](https://issues.civicrm.org/jira/browse/CRM-18011) improve lock
+ handling for mysql 5.7.5+
+ ([13854](https://github.com/civicrm/civicrm-core/pull/13854))**
-- **Improve test coverage for CRM_Utils_Color::getRgb() ([14007](https://github.com/civicrm/civicrm-core/pull/14007))**
+ Ensures mysql locks are supported on mysql 5.7.5+ and MariaDB '10.0.2'+.
-- **Improve flushing after creating a processor so it can be used for a recurring in the same run ([14009](https://github.com/civicrm/civicrm-core/pull/14009))**
+- **Deploy PEAR Log package and upgrade to latest version in the process
+ ([13835](https://github.com/civicrm/civicrm-core/pull/13835))**
-- **(REF) CRM_Core_Resources - Move hook declaration from addCoreResources() to Container.php ([14008](https://github.com/civicrm/civicrm-core/pull/14008))**
+ Upgrades the PEAR Log package version and deploys it via
+ composer.
-- **Include lower level data when throwing an exception on payment processor.pay ([14006](https://github.com/civicrm/civicrm-core/pull/14006))**
+- **Make cacheCode optional in CRM.loadScript
+ ([13824](https://github.com/civicrm/civicrm-core/pull/13824))**
-- **Menu config screen improvements ([14002](https://github.com/civicrm/civicrm-core/pull/14002))**
+ A cacheCode was recently added to script urls fetched by CRM.getScript(). This
+ is not always desirable e.g. for scripts fetched from an external source, this
+ change makes it so the cacheCode is added by default but can be disabled.
-- **Add unit testing for activity creation when cancelling a recurring, related cleanup ([14000](https://github.com/civicrm/civicrm-core/pull/14000))**
+- **Load hooks during upgrade mode
+ ([13551](https://github.com/civicrm/civicrm-core/pull/13551))**
-- **Configurable menubar color ([13996](https://github.com/civicrm/civicrm-core/pull/13996))**
+ Allow extensions to load hooks during an upgrade.
-- **Fix 4.7.31 Upgrade in multilingual mode ([14003](https://github.com/civicrm/civicrm-core/pull/14003))**
+- **[CRM-21008](https://issues.civicrm.org/jira/browse/CRM-21008) Checkbox to
+ explicitly change employer when sharing address
+ ([13700](https://github.com/civicrm/civicrm-core/pull/13700))**
-- **PHP warnings on Case Dashboard and Find Cases ([13998](https://github.com/civicrm/civicrm-core/pull/13998))**
+ Before this change when an individual was set to share an address with an
+ organization, that organization was set as its current employer. This change
+ adds a checkbox that allows users to explicitly tell civicrm whether the
+ organization is the current employer or not when sharing an address.
-- **Add unit test for api ContributionRecur.cancel, add support for cancel_reason ([13999](https://github.com/civicrm/civicrm-core/pull/13999))**
+- **[CRM-21677](https://issues.civicrm.org/jira/browse/CRM-21677) Report
+ improvements ([13792](https://github.com/civicrm/civicrm-core/pull/13792),
+ [13790](https://github.com/civicrm/civicrm-core/pull/13790) and
+ [13780](https://github.com/civicrm/civicrm-core/pull/13780))**
-- **(NFC) Update CRM/Member CRM/Note CRM/Logging CRM/Import and CRM/Price… ([13992](https://github.com/civicrm/civicrm-core/pull/13992))**
+ These changes improve reports by removing redundant birth date and gender
+ evaluation code.
-- **dev/core#855 Fix guzzle noisiness ([13991](https://github.com/civicrm/civicrm-core/pull/13991))**
+- **[dev/core/544](https://lab.civicrm.org/dev/core/issues/544) Contact Subtype
+ field at Reports does not support contacts with multiple subtypes
+ ([13158](https://github.com/civicrm/civicrm-core/pull/13158) and
+ [13908](https://github.com/civicrm/civicrm-core/pull/13908))**
-- **(NFC) Update CRM/Activity CRM/Admin and CRM/Batch folders to be the f… ([13990](https://github.com/civicrm/civicrm-core/pull/13990))**
+ Makes reports support filtering on multiple contact subtypes.
-- **(NFC) Update coding style in PCP, Pledge, Profile, Queue, Report folders ([13987](https://github.com/civicrm/civicrm-core/pull/13987))**
+- **[dev/core#560](https://lab.civicrm.org/dev/core/issues/560) Replace all
+ instances of CRM_Core_Fatal with throw new CRM_Core_Exception
+ ([13850](https://github.com/civicrm/civicrm-core/pull/13850)) Continued Work**
-- **(NFC) Update CRM/SMS/ CRM/UF/ CRM/Upgrade/ CRM/Tag/ to be up to speed… ([13986](https://github.com/civicrm/civicrm-core/pull/13986))**
+ Updates Cancel Billing & Update Billing screens to use status bounce rather
+ than throw a fatal error.
-- **(NFC) Bring CRM/Utils folder up to future coder standards ([13985](https://github.com/civicrm/civicrm-core/pull/13985))**
+- **Activity tab performance fix - switch to faster getActivities &
+ getActivitiesCount
+ ([13768](https://github.com/civicrm/civicrm-core/pull/13768))**
-- **(NFC) Set _log and _tableName variables to be public ([13988](https://github.com/civicrm/civicrm-core/pull/13988))**
+ Performance improvement when loading the activity tab for a contact.
-- **Update Unit test styling to cover the future coder version ([13983](https://github.com/civicrm/civicrm-core/pull/13983))**
+- **Add hook findDuplicates
+ ([13234](https://github.com/civicrm/civicrm-core/pull/13234))**
-- **(NFC) Fix location of comment to match future coder version ([13984](https://github.com/civicrm/civicrm-core/pull/13984))**
+ Adds the hook findDuplicates which provides the ability for extensions to
+ intercept and/or override core duplicate checking when
+ registering/contributing.
-- **(NFC) Bring up API folder to style of future coder checker ([13980](https://github.com/civicrm/civicrm-core/pull/13980))**
+- **[dev/core#748](https://lab.civicrm.org/dev/core/issues/748) Deadlocks and
+ performance issues when using smartgroups / ACLs extensively
+ ([13772](https://github.com/civicrm/civicrm-core/pull/13772)) continued Work**
-- **Encourage developers to use .then instead of .done ([13982](https://github.com/civicrm/civicrm-core/pull/13982))**
+ Improves performance by switching the alphabetQuery to use new
+ getSearchSQLParts() function.
-- **(NFC) Upgrade Civi Folder to the new coder version ([13981](https://github.com/civicrm/civicrm-core/pull/13981))**
+- **Improve data when known time-dependent-failing test fails
+ ([13964](https://github.com/civicrm/civicrm-core/pull/13964))**
-- **(NFC) Update various files to pass future civicrm/coder ruleset ([13979](https://github.com/civicrm/civicrm-core/pull/13979))**
+ Improves output data when time dependent tests fail.
-- **(NFC) Update various files to pass current phpcs ([13978](https://github.com/civicrm/civicrm-core/pull/13978))**
+- **Use TempTable methods.
+ ([13880](https://github.com/civicrm/civicrm-core/pull/13880),
+ [13865](https://github.com/civicrm/civicrm-core/pull/13865),
+ [13819](https://github.com/civicrm/civicrm-core/pull/13819),
+ [13848](https://github.com/civicrm/civicrm-core/pull/13848),
+ [13847](https://github.com/civicrm/civicrm-core/pull/13847) and
+ [13703](https://github.com/civicrm/civicrm-core/pull/13703))**
-- **[NFC] Reformat tricksy file CRM_Mailing_BAO_Mailing ([13973](https://github.com/civicrm/civicrm-core/pull/13973))**
+ These changes move towards using the tempTable class to improve
+ standardization including but not limited to the following places: when
+ creating the dedupe table, on the contribution detail report, on the
+ bookkeeping report and when debugging.
-- **[NFC] Reformat tricksy file CRM/Contribute/Import/Form/MapField ([13974](https://github.com/civicrm/civicrm-core/pull/13974))**
+- **Allow extensions to enable validate.tpl
+ ([13961](https://github.com/civicrm/civicrm-core/pull/13961))**
-- **[NFC] short array syntax Autoformat - just the tricksy bits of CRM/Activity ([13969](https://github.com/civicrm/civicrm-core/pull/13969))**
+ This change makes it possible for extensions to add a validate.tpl which
+ provides front end javascript validation, which improves user experience by
+ making it so users do not have to refresh the page to see validation issues.
-- **[NFC] array format tricksie file CRM/Admin/Form/MessageTemplates ([13970](https://github.com/civicrm/civicrm-core/pull/13970))**
+- **Promise Polyfill for older browsers
+ ([13955](https://github.com/civicrm/civicrm-core/pull/13955))**
-- **[NFC] array format tricksie file CRM_Utils_Rest ([13971](https://github.com/civicrm/civicrm-core/pull/13971))**
+ Loads a polyfill for IE aQnd other outdated browsers so developers can use
+ native js Promises in our code.
-- **[NFC] array formatting tricksy tricksie file (another CRM/UF/Form/Group.php) ([13972](https://github.com/civicrm/civicrm-core/pull/13972))**
+### CiviCase
-- **[NFC] short array syntax Autoformat - just CRM/ACL dir ([13968](https://github.com/civicrm/civicrm-core/pull/13968))**
+- **[dev/core#641](https://lab.civicrm.org/dev/core/issues/641) Case Activity
+ Assignment Restriction
+ ([13541](https://github.com/civicrm/civicrm-core/pull/13541))**
-- **[NFC] Short array syntax - auto-format CRM directory ([13915](https://github.com/civicrm/civicrm-core/pull/13915))**
+ Makes it possible to restrict the assignment of case activities to
+ a group or to contacts having user accounts.
-- **[REF] extract token functions ([13967](https://github.com/civicrm/civicrm-core/pull/13967))**
+### CiviContribute
-- **Improve data when known time-dependent-failing test fails ([13964](https://github.com/civicrm/civicrm-core/pull/13964))**
+- **[dev/core#830](https://lab.civicrm.org/dev/core/issues/830) Proposal - add
+ cancel_reason field to civicrm_contribution_recur table
+ ([13930](https://github.com/civicrm/civicrm-core/pull/13930) and
+ [13999](https://github.com/civicrm/civicrm-core/pull/13999))**
-- **Remove reference to non-iso date format from membership form tests ([13965](https://github.com/civicrm/civicrm-core/pull/13965))**
+ Adds a recur cancel reason field `civicrm_contribution_recur.cancel_reason
+ field`.
-- **Allow extensions to enable validate.tpl ([13961](https://github.com/civicrm/civicrm-core/pull/13961))**
+- **Add ID / Test ID for payment processors to list - makes setup of IPNs much
+ easier! ([13869](https://github.com/civicrm/civicrm-core/pull/13869))**
-- **Flush ContributionRecur static cache when flushing processors ([13962](https://github.com/civicrm/civicrm-core/pull/13962))**
+ Adds a column for payment processor id and test payment processor id to the
+ table of "Settings - Payment Processors" page so that users can more easily
+ access these ids.
-- **dev/core#704 Fix loss of links for recurrings with no payment_processor_id ([13935](https://github.com/civicrm/civicrm-core/pull/13935))**
+- **Add payment_processor column/filter to recurring contribution report
+ ([13699](https://github.com/civicrm/civicrm-core/pull/13699))**
-- **Add payment_processor column/filter to recurring contribution report ([13699](https://github.com/civicrm/civicrm-core/pull/13699))**
+ On the "Recurring Contribution" report, this adds "Payment Processor" as an
+ option to the Column and Filter tabs enabling users to filter this report by
+ "Payment Processor" and/or include a column for "Payment Processor".
-- **Grammar fixes ([13960](https://github.com/civicrm/civicrm-core/pull/13960))**
+- **[dev/financial#2](https://lab.civicrm.org/dev/financial/issues/2) Payment
+ processor names: separate internal and external usage
+ ([13995](https://github.com/civicrm/civicrm-core/pull/13995) and
+ [13954](https://github.com/civicrm/civicrm-core/pull/13954))**
-- **Extract assignPaymentFields ([13957](https://github.com/civicrm/civicrm-core/pull/13957))**
+ Adds the field `payment_processor.title` to the schema and makes it
+ translatable.
-- **Move code to assign tax information into shared parent ([13899](https://github.com/civicrm/civicrm-core/pull/13899))**
+- **[dev/financial#38](https://lab.civicrm.org/dev/financial/issues/38) Support
+ paying refunds ([13952](https://github.com/civicrm/civicrm-core/pull/13952))
+ BEGINS WORK**
-- **Added a DB check to prevent deleting exisiting CiviCRM data from database. ([13944](https://github.com/civicrm/civicrm-core/pull/13944))**
+ Adds a PaymentProcessor.refund API which makes it possible for payment
+ processor extension authors to have their extensions issue refund payments.
-- **Convert receive_date and renewal_date on membership forms to use date… ([13950](https://github.com/civicrm/civicrm-core/pull/13950))**
+- **Add minimal PaymentProcessor.pay api
+ ([13953](https://github.com/civicrm/civicrm-core/pull/13953))**
-- **Promise Polyfill for older browsers ([13955](https://github.com/civicrm/civicrm-core/pull/13955))**
+ Adds a new api PaymentProcessor.pay.
-- **dev/core#655 Don't sum on the contribution total_amount in contribution detail report ([13906](https://github.com/civicrm/civicrm-core/pull/13906))**
+- **Include lower level data when throwing an exception on payment processor.pay
+ ([14006](https://github.com/civicrm/civicrm-core/pull/14006))**
-- **Add billingblock region to event registration thankyou to match contribution thankyou ([13762](https://github.com/civicrm/civicrm-core/pull/13762))**
+ Improves error processing when using the PaymentProcessor.pay api.
-- **Add minimal PaymentProcessor.pay api ([13953](https://github.com/civicrm/civicrm-core/pull/13953))**
+- **Add billingblock region to event registration thankyou to match contribution
+ thankyou ([13762](https://github.com/civicrm/civicrm-core/pull/13762))**
-- **Replaced get_headers functions call with Guzzle HTTP request. ([13946](https://github.com/civicrm/civicrm-core/pull/13946))**
+ This change makes it so one can use the same method to
+ replace billingblock for both event and contribution thankyou workflows.
-- **dev/financial#38 : Support refund payment using payment processor ([13952](https://github.com/civicrm/civicrm-core/pull/13952))**
+- **[dev/core#846](https://lab.civicrm.org/dev/core/issues/846) CQ: Refactor
+ Recurring Contribution Forms
+ ([13940](https://github.com/civicrm/civicrm-core/pull/13940)) Begins Work**
-- **dev/financial#2 add PaymentProcessor.title field ([13954](https://github.com/civicrm/civicrm-core/pull/13954))**
+ Begins work to refactor recurring contribution forms specifically by
+ rationalizing url variables into shared parent for recurring contribution
+ forms.
-- **Rationalise url variables onto shared parent for recurring contribution forms ([13940](https://github.com/civicrm/civicrm-core/pull/13940))**
+- **Use label not name for payment processor type
+ ([13885](https://github.com/civicrm/civicrm-core/pull/13885))**
-- **Optimise the loading of the CiviCRM Deduplication Exception page ([13435](https://github.com/civicrm/civicrm-core/pull/13435))**
+ On the "Settings - Payment Processor" page changes the "Processor Type" column
+ to use the label instead of the name.
-- **Unfork Zetacomponents mail and use patch to apply differences ([13934](https://github.com/civicrm/civicrm-core/pull/13934))**
+- **Improve ContributionPage.validate api
+ ([13798](https://github.com/civicrm/civicrm-core/pull/13798))**
-- **Quote fee levels for regular expression in Participant search. ([12998](https://github.com/civicrm/civicrm-core/pull/12998))**
+ Makes it so that one can use the ContributionPage validate api on POST, for
+ example when using Paypal Checkout which calls a Promise, the
+ ContributionPage.validate api could be called to determine whether to proceed
+ after the button is pushed.
-- **[unreleased regression] Add error handling for when no test procesor row exists. ([13947](https://github.com/civicrm/civicrm-core/pull/13947))**
+- **Add pseudoconstant support for payment_processor_id on ContributionRecur
+ ([13698](https://github.com/civicrm/civicrm-core/pull/13698))**
-- **Test fix ([13949](https://github.com/civicrm/civicrm-core/pull/13949))**
+- **Allow payment processor to determine the text around 'continue'
+ ([13787](https://github.com/civicrm/civicrm-core/pull/13787))**
-- **5.12 ([13948](https://github.com/civicrm/civicrm-core/pull/13948))**
-- **Update PHPWord Patches to match the latest versions of their code ([13923](https://github.com/civicrm/civicrm-core/pull/13923))**
+### CiviEvent
-- **dev/core/issues/823, fixed code to set contact type correctly ([13945](https://github.com/civicrm/civicrm-core/pull/13945))**
+- **[dev/core#835](https://lab.civicrm.org/dev/core/issues/835) Expose
+ Registered by Participant Name field to participant report
+ ([13936](https://github.com/civicrm/civicrm-core/pull/13936))**
-- **Core/725 - Get state_province_id given non numeric country_id or country parameter ([13938](https://github.com/civicrm/civicrm-core/pull/13938))**
+ Exposes "Registered by Participant Name" field to participant reports.
-- **Fix status type (error, not fail) for CRM_Core_Session::setStatus ([13943](https://github.com/civicrm/civicrm-core/pull/13943))**
+### CiviMail
-- **Event Cart: Fix PHP 7.2 fatal error (pass by ref) ([13927](https://github.com/civicrm/civicrm-core/pull/13927))**
+- **[dev/core#491](https://lab.civicrm.org/dev/core/issues/491) Report results
+ don't show inactive campaigns
+ ([13383](https://github.com/civicrm/civicrm-core/pull/13383))**
-- **5.12 to master ([13942](https://github.com/civicrm/civicrm-core/pull/13942))**
+ Standardizes the way campaign fields are added to the "Mailing Summary"
+ report.
-- **dev/core#499 Fix CustomField Checkbox display when values are non-sorted ([13051](https://github.com/civicrm/civicrm-core/pull/13051))**
+### CiviMember
-- **(dev/core#835) Expose Registered by Participant Name field to partici… ([13936](https://github.com/civicrm/civicrm-core/pull/13936))**
+- **Membership form address fields for payment processors
+ ([13802](https://github.com/civicrm/civicrm-core/pull/13802))**
-- **Add shared parent for ContributionRecur forms ([13931](https://github.com/civicrm/civicrm-core/pull/13931))**
+ Standardizes processing and validating address parameters on the
+ Membership form.
-- **(NFC) Fix mode on files ([13933](https://github.com/civicrm/civicrm-core/pull/13933))**
+### Wordpress Integration
-- **dev/core#830 Recur cancel reason ([13930](https://github.com/civicrm/civicrm-core/pull/13930))**
+- **Cleaner front-end URLs
+ ([144](https://github.com/civicrm/civicrm-wordpress/pull/144))**
-- **dev/core#288 : Use the correct membership date for the notification that appear after completing the membership payment in case pre hook is used ([12583](https://github.com/civicrm/civicrm-core/pull/12583))**
+ Makes Wordpress URLs have the same structure as Drupal URLs ex:
+ `https://domain.tld/civicrm/contribute/transact/?reset=1&id=1 as opposed to
+ old` Wordpress URLs that looked like
+ `https://domain.tld/civicrm/?page=CiviCRM&q=civicrm/contribute/transact&reset=1&id=1`
-- **dev/core/issues/840, fixed notice error ([13926](https://github.com/civicrm/civicrm-core/pull/13926))**
+## <a name="bugs"></a>Bugs resolved
-- **Payment test cleanup ([13924](https://github.com/civicrm/civicrm-core/pull/13924))**
+### Core CiviCRM
-- **Convert the Fullfilled Date field in preimum section on backoffice co… ([13919](https://github.com/civicrm/civicrm-core/pull/13919))**
+- **[infra/ops#878](https://lab.civicrm.org/infra/ops/issues/878) Add a test
+ matrix for E2E tests on each CMS
+ ([13810](https://github.com/civicrm/civicrm-core/pull/13810) and
+ [13811](https://github.com/civicrm/civicrm-core/pull/13811)) Coninued Work**
-- **Convert trxn_date field in the Update Pending Status task option from… ([13918](https://github.com/civicrm/civicrm-core/pull/13918))**
+ These changes resolve bugs when running E2E tests on WordPress moving the
+ project towards the goal of having a test matrix for E2E tests for each CMS
+ that CiviCRM is compatible with.
-- **dev/core/issues/837, Fixed notice error on Contribution Agrreagate custom search. ([13921](https://github.com/civicrm/civicrm-core/pull/13921))**
+- **[dev/core#288](https://lab.civicrm.org/dev/core/issues/288) Use the correct
+ membership date for the notification that appear after completing the
+ membership payment in case pre hook is used
+ ([12583](https://github.com/civicrm/civicrm-core/pull/12583))**
-- **[NFC] Cleanup DAO factory classes for code standards ([13922](https://github.com/civicrm/civicrm-core/pull/13922))**
+ This change ensures that any changes made to the membership dates using
+ hook_civicrm_pre are taken into account when generating the membership payment
+ notification.
-- **dev/core#836 Do not track CSS urls when added as link urls ([13920](https://github.com/civicrm/civicrm-core/pull/13920))**
+- **[dev/core#499](https://lab.civicrm.org/dev/core/issues/499) Custom Field
+ Checkbox value renders empty if the values are randomly sorted
+ ([13051](https://github.com/civicrm/civicrm-core/pull/13051))**
-- **Possible paypal fix to avoid sending 500 errors from ipn triggerred b… ([13867](https://github.com/civicrm/civicrm-core/pull/13867))**
+ This change ensures that the values selected by a user for alphanumeric
+ checkbox custom fields render properly in view mode.
-- **Covert the CRM_Core_Error::fatal calls to exceptions when trying to a… ([13917](https://github.com/civicrm/civicrm-core/pull/13917))**
+- **[dev/core#570](https://lab.civicrm.org/dev/core/issues/570) New
+ Organisation: "Check For Matching Contact (S)" button does not find matching
+ records ([13398](https://github.com/civicrm/civicrm-core/pull/13398))**
-- **dev/core/issues/806, Fixed DB error already exist when recording recurring payment having tax ([13852](https://github.com/civicrm/civicrm-core/pull/13852))**
+ This change ensures that "Check For Matching Contact(s)" retrieves
+ contacts for users with limited permissions.
-- **Fix mis-formatting of Email greeting id, Address greeting id etc ([13895](https://github.com/civicrm/civicrm-core/pull/13895))**
+- **[dev/core#655](https://lab.civicrm.org/dev/core/issues/655) Soft Credits
+ Multiply GIft Amount in Contribution Detail Report
+ ([13906](https://github.com/civicrm/civicrm-core/pull/13906))**
-- **Do not cause a fatal error if no contact_id field for a note is fille… ([13910](https://github.com/civicrm/civicrm-core/pull/13910))**
+ This change updates the Contribution Detail report so that the "Total Amount"
+ field is not summed because the summing of the "Total Amount" field was
+ leading to the "Total Amount" field for contributions with multiple soft
+ credits to be multiplied by the number of soft credits.
-- **NFC - Short array syntax - auto-convert ang dir ([13912](https://github.com/civicrm/civicrm-core/pull/13912))**
+- **[dev/core#664](https://lab.civicrm.org/dev/core/issues/664) Add new indexes
+ when updating log table schema regardless of engine change
+ ([13462](https://github.com/civicrm/civicrm-core/pull/13462))**
-- **NFC - Short array syntax - auto-convert Civi dir ([13911](https://github.com/civicrm/civicrm-core/pull/13911))**
+ This change makes it so that when the alterLogTables hook defines a new index
+ it is applied regardless of the engine.
-- **[NFC] Short array syntax - auto-convert api dir ([13909](https://github.com/civicrm/civicrm-core/pull/13909))**
+- **[dev/core#688](https://lab.civicrm.org/dev/core/issues/688) Contacts -> New
+ Email give Unknown Error in Smarty when Allow Mail to be sent from logged in
+ contact's email address disabled
+ ([13508](https://github.com/civicrm/civicrm-core/pull/13508))**
-- **Add pseudoconstant support for payment_processor_id on ContributionRecur ([13698](https://github.com/civicrm/civicrm-core/pull/13698))**
+ This change fixes an error "Warning: Smarty error" when attempting to send an
+ email from Contacts -> New Email for sites with "Allow Mail to be sent from
+ logged in user" disabled.
-- **Upgrade htmlpurifier to 4.10 to support PHP7.2 and install via composer ([13840](https://github.com/civicrm/civicrm-core/pull/13840))**
+- **[dev/core#706](https://lab.civicrm.org/dev/core/issues/706) Edit
+ contribution : wrong decimal separator on total_amount for participant(s)
+ ([13554](https://github.com/civicrm/civicrm-core/pull/13554))**
-- **dev/core#253: Cancelling or An Error during event registration payment should cancel all additional participates ([12457](https://github.com/civicrm/civicrm-core/pull/12457))**
+ This change ensures that the decimal separator on total_amount field for
+ participant(s) is displayed as it is configured on the site.
-- **dev/core/544 Add report support for filter on multiple contact subtypes ([13158](https://github.com/civicrm/civicrm-core/pull/13158))**
+- **[dev/core#709](https://lab.civicrm.org/dev/core/issues/709) Contact Report:
+ The filter by the custom datetime field with "Today" option doesn't find
+ matching contacts
+ ([13567](https://github.com/civicrm/civicrm-core/pull/13567))**
-- **Mutliple activity type filters on activity tab on contact records ([13873](https://github.com/civicrm/civicrm-core/pull/13873))**
+ This change ensures that on the Contact Report, when using a filter for a
+ custom datetime field the "Today" option properly filters results.
-- **Use TempTable methods ([13819](https://github.com/civicrm/civicrm-core/pull/13819))**
+- **[dev/core#725](https://lab.civicrm.org/dev/core/issues/725) Address API
+ incorrectly sets state_province_id if multiple countries have same state name /
+ abbreviation ([13938](https://github.com/civicrm/civicrm-core/pull/13938))**
-- **dev/core#755 - CRM/Core - Fix missing group name in custom field cache ([13900](https://github.com/civicrm/civicrm-core/pull/13900))**
+ This change fixes a regression so that the Address API country_id parameter
+ works with an abbreviation or numeric id.
-- **Convert activity tab to use datepicker ([13855](https://github.com/civicrm/civicrm-core/pull/13855))**
+- **[dev/core#726](https://lab.civicrm.org/dev/core/issues/726) Advanced Search:
+ There is an Internal Server Error (500) when the user tries to search by the
+ "Mailing List" group type
+ ([13603](https://github.com/civicrm/civicrm-core/pull/13603) and
+ [13888](https://github.com/civicrm/civicrm-core/pull/13888))**
-- **CiviCRM API, lookup state_province_id options based on country parame… ([13596](https://github.com/civicrm/civicrm-core/pull/13596))**
+ Fixes a bug where searching by a group type (ex: Mailing List) on the Advanced
+ Search form would result in a fatal error so that this search runs as
+ expected.
-- **Add Unit test for export with incomplete data ([13904](https://github.com/civicrm/civicrm-core/pull/13904))**
+- **[dev/core#740](https://lab.civicrm.org/dev/core/issues/740) Notes: It isn't
+ possible to edit note if the user uploaded an image larger than 3 MByte(s)
+ ([13640](https://github.com/civicrm/civicrm-core/pull/13640))**
-- **5.12 to master ([13905](https://github.com/civicrm/civicrm-core/pull/13905))**
+ This change makes it so that it is possible to edit a note field
+ that includes images larger than 3 MByte(s).
-- **dev/core/issues/819, Fixed fatal error on export screen ([13889](https://github.com/civicrm/civicrm-core/pull/13889))**
+- **[dev/core#755](https://lab.civicrm.org/dev/core/issues/755) custom field
+ caching is not group-specific
+ ([13900](https://github.com/civicrm/civicrm-core/pull/13900))**
-- **Expose sort_name as a dedupe-matchable field ([13864](https://github.com/civicrm/civicrm-core/pull/13864))**
+ Adds the $groupTitle parameter to the cache key for custom fields, so field
+ names that exist in multiple groups will be cached separately.
-- **[NFC] IDE formatting only ([13896](https://github.com/civicrm/civicrm-core/pull/13896))**
+- **[dev/core#788](https://lab.civicrm.org/dev/core/issues/788) Warning: A
+ non-numeric value encountered in ...
+ ([13795](https://github.com/civicrm/civicrm-core/pull/13795))**
-- **dev/core#824 Render contact type icons in std way on merge screen ([13898](https://github.com/civicrm/civicrm-core/pull/13898))**
+ This change fixes several warnings "Warning: A non-numeric value encountered
+ in ..." on contribution pages & event registrations forms.
-- **PHP Error on Grant Detail Report ([13883](https://github.com/civicrm/civicrm-core/pull/13883))**
+- **[dev/core#795](https://lab.civicrm.org/dev/core/issues/795) PHP Warning
+ "explode() expects parameter 2 to be string, array given" for multi-value
+ country fields ([13858](https://github.com/civicrm/civicrm-core/pull/13858))**
-- **Refactor CRM_Contact_Form_Task_PDFLetterCommon ([13892](https://github.com/civicrm/civicrm-core/pull/13892))**
+ Fixes a PHP warning when updating a multiselect country field.
-- **5.12 ([13894](https://github.com/civicrm/civicrm-core/pull/13894))**
+- **[dev/core#798](https://lab.civicrm.org/dev/core/issues/798) Prefix/suffix
+ select2 renders oddly on public-facing pages
+ ([13816](https://github.com/civicrm/civicrm-core/pull/13816))**
-- **Allow payment processor to determine the text around 'continue' ([13787](https://github.com/civicrm/civicrm-core/pull/13787))**
+ This change makes the Prefix/suffix select2's render full height (as opposed
+ to squished) in contribution/event profiles.
-- **Fix Contact.create calls to respect passed in variables & variables set via hook for sort_name & display_name ([13863](https://github.com/civicrm/civicrm-core/pull/13863))**
+- **[dev/core#806](https://lab.civicrm.org/dev/core/issues/806) DB Error::
+ Already exists during renewing membership automatically
+ ([13852](https://github.com/civicrm/civicrm-core/pull/13852))**
-- **Minor code cleanups around invoicing assignment ([13857](https://github.com/civicrm/civicrm-core/pull/13857))**
+ Fixes a DB error "already exists" when recording recurring payments with taxes
+ enabled.
-- **dev/core#709, fixed date filter for custom fields ([13567](https://github.com/civicrm/civicrm-core/pull/13567))**
+- **[dev/core#811](https://lab.civicrm.org/dev/core/issues/811) Autocomplete
+ select list disabled options
+ ([13859](https://github.com/civicrm/civicrm-core/pull/13859))**
-- **Added unit test for dev/core/issues/726 ([13888](https://github.com/civicrm/civicrm-core/pull/13888))**
+ This change ensures that for select fields with autocomplete, only enabled
+ options autocomplete.
-- **Remove switch statement that no longer switches ([13886](https://github.com/civicrm/civicrm-core/pull/13886))**
+- **[dev/core#819](https://lab.civicrm.org/dev/core/issues/819) Search results:
+ Actions: Export contacts: DB Error: Syntax error occurs when not all necessary
+ fields are selected
+ ([13889](https://github.com/civicrm/civicrm-core/pull/13889))**
-- **Use label not name for payment processor type ([13885](https://github.com/civicrm/civicrm-core/pull/13885))**
+ Resolves a fatal database error when attempting to export contacts without
+ selecting any fields to be exported.
-- **dev/core#502 fix bug on sorting by address fields when viewing search results by profile ([13884](https://github.com/civicrm/civicrm-core/pull/13884))**
+- **[dev/core#823](https://lab.civicrm.org/dev/core/issues/823) Value in the
+ "Contact Type" field disappears when the user tries to edit Contact Details
+ ([13945](https://github.com/civicrm/civicrm-core/pull/13945))**
-- **dev/core#784 - On civicase case type editing screen creating a new relationship type on the fly inserts a blank row ([13785](https://github.com/civicrm/civicrm-core/pull/13785))**
+ Ensures that when a user uses a profile with a contact sub type field to
+ update a contact that the contact sub type field pre-populates as expected.
-- **dev/core/issues/740, Show form on validation error ([13640](https://github.com/civicrm/civicrm-core/pull/13640))**
+- **[dev/core#837](https://lab.civicrm.org/dev/core/issues/837) Notice error
+ while creating smart group using Contribution Aggregate custom search
+ ([13921](https://github.com/civicrm/civicrm-core/pull/13921))**
-- **dev/core#560 Update Cancel Billing & update billing to use status bounce rather than fatal ([13850](https://github.com/civicrm/civicrm-core/pull/13850))**
+ Resolves "Notice: Undefined index:" errors when creating a smart group using
+ Contribution Aggregate custom search.
-- **send action links on any page that extends CRM_Core_Page_basic thru hook_civicrm_links ([13068](https://github.com/civicrm/civicrm-core/pull/13068))**
+- **[dev/core#840](https://lab.civicrm.org/dev/core/issues/840) Notice error
+ when deleting profile
+ ([13926](https://github.com/civicrm/civicrm-core/pull/13926))**
-- **dev/core#314 Event self-service Transfer picks up the deleted contact ID basically transferring to the wrong contact ([12639](https://github.com/civicrm/civicrm-core/pull/12639))**
+ Resolves a "Undefined property" notice when deleting a profile.
-- **5.12 to master ([13882](https://github.com/civicrm/civicrm-core/pull/13882))**
+- **[dev/core#849](https://lab.civicrm.org/dev/core/issues/849) CQ: Use Guzzle
+ as our preferred way to retrieve via http
+ ([13946](https://github.com/civicrm/civicrm-core/pull/13946))**
-- **Improve ContributionPage.validate api ([13798](https://github.com/civicrm/civicrm-core/pull/13798))**
+ Replaces get_headers functions call with Guzzle HTTP request to prevent timing
+ out.
-- **Fix up composer for composer 2.0 compatibility ([13872](https://github.com/civicrm/civicrm-core/pull/13872))**
+- **[dev/core#433](https://lab.civicrm.org/dev/core/issues/433) Queries
+ combining multiple text labels using REGEXP do not escape regular expression
+ metacharacters ([12998](https://github.com/civicrm/civicrm-core/pull/12998))**
-- **Use TempTable methods. ([13880](https://github.com/civicrm/civicrm-core/pull/13880))**
+ Ensures that querying for fee levels that contain regex metacharacters will
+ match.
-- **[nfc] Reset entire session object between tests ([13878](https://github.com/civicrm/civicrm-core/pull/13878))**
+- **Fix status type (error, not fail) for CRM_Core_Session::setStatus
+ ([13943](https://github.com/civicrm/civicrm-core/pull/13943))**
-- **Fix php 7.2 count notice ([13877](https://github.com/civicrm/civicrm-core/pull/13877))**
+ Fixes an incorrect status for setMessage which was using 'fail' (which is not
+ a valid status) instead of 'error'.
-- **5.12 to master ([13879](https://github.com/civicrm/civicrm-core/pull/13879))**
+- **Covert the CRM_Core_Error::fatal calls to exceptions when trying to access
+ Contact Photos ([13917](https://github.com/civicrm/civicrm-core/pull/13917))**
-- **dev/core#641: Case Activity Assignment Restriction ([13541](https://github.com/civicrm/civicrm-core/pull/13541))**
+ Cleaner errors when attempting to access contact photos fails.
-- **CRM/Event - Fix participant note search parameter being ignored ([13697](https://github.com/civicrm/civicrm-core/pull/13697))**
+- **CiviCRM API, lookup state_province_id options based on country parameter if
+ present, or default country
+ ([13596](https://github.com/civicrm/civicrm-core/pull/13596))**
-- **Use tempTable class in creation of dedupe table. ([13865](https://github.com/civicrm/civicrm-core/pull/13865))**
+ Ensures the CiviCRM Address API correctly sets state_province_id for states
+ whose name/abbreviation exist in multiple countries.
-- **BAO_Participant - Use default status if not specified for create ([13875](https://github.com/civicrm/civicrm-core/pull/13875))**
+- **Fix php 7.2 count notice
+ ([13877](https://github.com/civicrm/civicrm-core/pull/13877))**
-- **Remove now-obsolete additionalFromClause parameter from prepareOrderBy ([13874](https://github.com/civicrm/civicrm-core/pull/13874))**
+ Fixes a "Warning: count()" error on the "Import Contacts" Summary step screen.
-- **dev/core#748 Switch alphabetQuery to use new getSearchSQLParts() function ([13772](https://github.com/civicrm/civicrm-core/pull/13772))**
+- **[dev/core#699](https://lab.civicrm.org/dev/core/issues/699) New
+ Organisation: "Contact Type" dropdown disappears when fields validation occurs
+ ([13545](https://github.com/civicrm/civicrm-core/pull/13545))**
-- **Add hook findDuplicates ([13234](https://github.com/civicrm/civicrm-core/pull/13234))**
+ Fixes a bug where when creating a new organization, if the form fails
+ validation the "Contact Sub Type" dropdown disappears.
-- **Reformat test files for array format ([13862](https://github.com/civicrm/civicrm-core/pull/13862))**
+- **Fix contact.merge api to pass check_permissions parameter through to the
+ deeper layer ([13807](https://github.com/civicrm/civicrm-core/pull/13807))**
-- **Try Reverting commit removing require once to see if it fixes the pro… ([13870](https://github.com/civicrm/civicrm-core/pull/13870))**
+ Fixes a bug where calling Contact.merge from php will leave the merged contact
+ unmerged if the logged in user does not have the delete contacts permission
-- **Add ID / Test ID for payment processors to list - makes setup of IPNs much easier! ([13869](https://github.com/civicrm/civicrm-core/pull/13869))**
+- **checkEditInboundEmailsPermissions should be a static function
+ ([13805](https://github.com/civicrm/civicrm-core/pull/13805))**
-- **As discussed, delete webtests ([13861](https://github.com/civicrm/civicrm-core/pull/13861))**
+- **[dev/core#502](https://lab.civicrm.org/dev/core/issues/502) DB error "no
+ such field" when executing actions on a sorted contact search result with
+ search profile ([13884](https://github.com/civicrm/civicrm-core/pull/13884))**
-- **Update test to reflect recently merged PR lower permission to access dedupecheck ([13866](https://github.com/civicrm/civicrm-core/pull/13866))**
+- **[dev/core#314](https://lab.civicrm.org/dev/core/issues/314) Transfer picks
+ up the deleted contact ID basically transferring to the wrong contact
+ ([12639](https://github.com/civicrm/civicrm-core/pull/12639))**
-- **dev/core/issues/570, Check Dedupe fails for limited permission user ([13398](https://github.com/civicrm/civicrm-core/pull/13398))**
+- **Fix bug whereby sorting by state province gives an error in search builder
+ ([13748](https://github.com/civicrm/civicrm-core/pull/13748))**
-- **Fix bug whereby sorting by state province gives an error in search builder ([13748](https://github.com/civicrm/civicrm-core/pull/13748))**
+- **Fix Contact.create calls to respect passed in variables & variables set via
+ hook for sort_name & display_name
+ ([13863](https://github.com/civicrm/civicrm-core/pull/13863))**
-- **dev/core#811 - Autocomplete only enabled options ([13859](https://github.com/civicrm/civicrm-core/pull/13859))**
+- **Do not cause a fatal error if no contact_id field for a note is filled in
+ when viewing contact notes
+ ([13910](https://github.com/civicrm/civicrm-core/pull/13910))**
-- **Test fix ([13856](https://github.com/civicrm/civicrm-core/pull/13856))**
+- **Disable phpcs checking in the Crypt files where mcrypt functions are
+ ([14031](https://github.com/civicrm/civicrm-core/pull/14031))**
-- **Fixing formatting of contributors section ([13860](https://github.com/civicrm/civicrm-core/pull/13860))**
+- **Fix 4.7.31 Upgrade in multilingual mode
+ ([14003](https://github.com/civicrm/civicrm-core/pull/14003))**
-- **dev/core#795 Fix PHP warning when updating a multiselect country field. ([13858](https://github.com/civicrm/civicrm-core/pull/13858))**
+- **Optimise the loading of the CiviCRM Deduplication Exception page
+ ([13435](https://github.com/civicrm/civicrm-core/pull/13435))**
-- **Add FrontEndPaymentFormTrait to start to share functionality between Event and Contribution forms ([13843](https://github.com/civicrm/civicrm-core/pull/13843))**
+- **Unfork Zetacomponents mail and use patch to apply differences
+ ([13934](https://github.com/civicrm/civicrm-core/pull/13934))**
-- **[NFC] code formatting only ([13846](https://github.com/civicrm/civicrm-core/pull/13846))**
+- **Update lockfile to take into account of civicrm/zetacomponents-mail#4 being
+ merged ([13822](https://github.com/civicrm/civicrm-core/pull/13822))**
-- **[NFC] Code reformatting ([13849](https://github.com/civicrm/civicrm-core/pull/13849))**
+- **Upgrade zetacomponents/base and zetacomponents/mail
+ ([13799](https://github.com/civicrm/civicrm-core/pull/13799))**
-- **Activity tab performance fix - switch to faster getActivities & getActivitiesCount ([13768](https://github.com/civicrm/civicrm-core/pull/13768))**
+- **[dev/core#771](https://lab.civicrm.org/dev/core/issues/771) Smart group with
+ uf_group_id does not load contacts with same search profile
+ ([13742](https://github.com/civicrm/civicrm-core/pull/13742))**
-- **Disabling or deleting Expired status breaks membership status update ([13259](https://github.com/civicrm/civicrm-core/pull/13259))**
+### CiviCase
-- **"Contact Sub Type" dropdown disappears when fields validation occurs ([13545](https://github.com/civicrm/civicrm-core/pull/13545))**
+- **[dev/core#784](https://lab.civicrm.org/dev/core/issues/784) Creating a new
+ relationship type while editing case type definition adds a blank row in the
+ roles section ([13785](https://github.com/civicrm/civicrm-core/pull/13785))**
-- **Code cleanup on membership block loop ([13851](https://github.com/civicrm/civicrm-core/pull/13851))**
+- **PHP warnings on Case Dashboard and Find Cases
+ ([13998](https://github.com/civicrm/civicrm-core/pull/13998))**
-- **refs issue 788 fix Warning: A non-numeric value encountered in ... ([13795](https://github.com/civicrm/civicrm-core/pull/13795))**
+### CiviContribute
-- **dev/core#771 - Smart group with uf_group_id does not load contacts wi… ([13742](https://github.com/civicrm/civicrm-core/pull/13742))**
+- **[dev/core#571](https://lab.civicrm.org/dev/core/issues/571) Can't
+ self-service cancel a recurring contribution made while you're logged in
+ ([13237](https://github.com/civicrm/civicrm-core/pull/13237))**
-- **Core-688 - Contacts - New Email Fix Smarty/plugins/function.crmSettin… ([13508](https://github.com/civicrm/civicrm-core/pull/13508))**
+ This change makes it so that users without "edit contributions" permission can
+ edit their own recurring contribution subscriptions if they are logged in,
+ before this change they could only edit their own contribution subscriptions
+ thru a checksum link.
-- **core#571 - check logged in OR checksum user permissions to edit recur… ([13237](https://github.com/civicrm/civicrm-core/pull/13237))**
+- **Possible paypal fix to avoid sending 500 errors from ipn triggerred by
+ one-off payment
+ ([13867](https://github.com/civicrm/civicrm-core/pull/13867))**
-- **dev/core#706 Edit contribution : wrong decimal separator on total_amount for participant(s) ([13554](https://github.com/civicrm/civicrm-core/pull/13554))**
+ Fixes paypal system sending a warning email when there is a failed IPN call
+ (500 errors from ipn triggered by non-recurring payment).
-- **Use TempTable methods - contribution detail ([13848](https://github.com/civicrm/civicrm-core/pull/13848))**
+- **[dev/core#704](https://lab.civicrm.org/dev/core/issues/704) Missing links to
+ cancel recurring payments (regression .. sorta)
+ ([13935](https://github.com/civicrm/civicrm-core/pull/13935))**
-- **dev/core#664 - CRM/Logging - Add indexes when updating log schema ([13462](https://github.com/civicrm/civicrm-core/pull/13462))**
+ Fixes a 5.8 regression where the cancel link became unavailable on recurring
+ contributions with no attached payment processor id.
-- **Use TempTable methods - bookkeeping report ([13847](https://github.com/civicrm/civicrm-core/pull/13847))**
+- **Improve flushing after creating a processor so it can be used for a
+ recurring in the same run
+ ([14009](https://github.com/civicrm/civicrm-core/pull/14009))**
-- **dev/core/issues/726, Fixed fatal error when searched using group type ([13603](https://github.com/civicrm/civicrm-core/pull/13603))**
+ This change ensures tests run properly by flushing caches when creating a
+ payment processor.
-- **Add in tests of purifying HTML output ([13845](https://github.com/civicrm/civicrm-core/pull/13845))**
+- **Flush ContributionRecur static cache when flushing processors
+ ([13962](https://github.com/civicrm/civicrm-core/pull/13962))**
-- **Remove Log.php require_once statements ([13842](https://github.com/civicrm/civicrm-core/pull/13842))**
+ Ensures a (new) static cache is flushed when creating a processor, mostly
+ useful for unit testing.
-- **Fix contact.merge api to pass check_permissions parameter through to the deeper layer ([13807](https://github.com/civicrm/civicrm-core/pull/13807))**
+- **Display test contributions when viewing contributions related to a test
+ recurring contribution
+ ([13779](https://github.com/civicrm/civicrm-core/pull/13779))**
-- **Minor code cleanup ([13839](https://github.com/civicrm/civicrm-core/pull/13839))**
+### CiviEvent
-- **Minor code cleanup - remove unnecessary ids declaration ([13838](https://github.com/civicrm/civicrm-core/pull/13838))**
+- **[dev/core#253](https://lab.civicrm.org/dev/core/issues/253) Cancelling or An
+ Error during event registration payment should cancel all additional
+ participates ([12457](https://github.com/civicrm/civicrm-core/pull/12457))**
-- **Deploy PEAR Log package and upgrade to latest version in the process ([13835](https://github.com/civicrm/civicrm-core/pull/13835))**
+ This fixes a bug where if a user was registering for an event with additional
+ participants, and for some reason the payment failed or the user decided to
+ cancel the payment, only the main user participant record was set to
+ "canceled", the rest of the additional participants would have the status
+ "pending incomplete transaction" so that all participant statuses are changed
+ to "canceled".
-- **Remove amavisd now that it is removed from the packages repository ([13841](https://github.com/civicrm/civicrm-core/pull/13841))**
+- **Event Cart: Fix PHP 7.2 fatal error (pass by ref)
+ ([13927](https://github.com/civicrm/civicrm-core/pull/13927))**
-- **[NFC] remove unnecessary variable ([13836](https://github.com/civicrm/civicrm-core/pull/13836))**
+ Fixes a Fatal error when using Event cart and PHP 7.2, specifically when
+ checking out.
-- **Logging - attempt to fix tests ([13832](https://github.com/civicrm/civicrm-core/pull/13832))**
+- **CRM/Event - Fix participant note search parameter being ignored
+ ([13697](https://github.com/civicrm/civicrm-core/pull/13697))**
-- **Import date test ([13823](https://github.com/civicrm/civicrm-core/pull/13823))**
+ This change ensures that when searching by "Participant Note" on the "Search
+ Builder form the filter is applied.
-- **REF Extract case action links into a separate function to facilitate refactoring ([13793](https://github.com/civicrm/civicrm-core/pull/13793))**
+- **BAO_Participant - Use default status if not specified for create
+ ([13875](https://github.com/civicrm/civicrm-core/pull/13875))**
-- **5.12 ([13834](https://github.com/civicrm/civicrm-core/pull/13834))**
+ This change fixes a api4 test failure by ensuring that the default value of
+ 'status_id' is respected by the Participant BAO. Before this change the
+ 'status_id' had a default value and thus was not required but the BAO would
+ not work correctly if a 'status_id' was not supplied. After this change the
+ 'status_id' default is respected and the BAO works regardless of whether the
+ 'status_id' is supplied.
-- **5.12 to master ([13833](https://github.com/civicrm/civicrm-core/pull/13833))**
+### CiviGrant
-- **(NFC, infra/ops#878) AssetBuilderTest - Relax getUrl() assertion for WP compat ([13826](https://github.com/civicrm/civicrm-core/pull/13826))**
+- **PHP Error on Grant Detail Report
+ ([13883](https://github.com/civicrm/civicrm-core/pull/13883))**
-- **NFC Whitespace cleanup MembershipBlock.tpl ([13830](https://github.com/civicrm/civicrm-core/pull/13830))**
+ Fixes a PHP error when viewing the "Grant Detail Report" for sites running PHP
+ 7.2.
-- **Display test contributions when viewing contributions related to a test recurring contribution ([13779](https://github.com/civicrm/civicrm-core/pull/13779))**
+### CiviMail
-- **Make cacheCode optional in CRM.loadScript ([13824](https://github.com/civicrm/civicrm-core/pull/13824))**
+- **[dev/core#836](https://lab.civicrm.org/dev/core/issues/836) Do not track CSS
+ urls ([13920](https://github.com/civicrm/civicrm-core/pull/13920))**
-- **[nfc] Attempt to improve false negatives on Logging test ([13829](https://github.com/civicrm/civicrm-core/pull/13829))**
+ Ensures CiviMail does not convert css URLs into trackable URLs.
-- **5.12 to master ([13828](https://github.com/civicrm/civicrm-core/pull/13828))**
+### CiviMember
-- **Further cleanup on getRelatedMemberships - just get them with the api ([13797](https://github.com/civicrm/civicrm-core/pull/13797))**
+- **Disabling or deleting Expired status breaks membership status update
+ ([13259](https://github.com/civicrm/civicrm-core/pull/13259))**
-- **Update lockfile to take into account of civicrm/zetacomponents-mail#4… ([13822](https://github.com/civicrm/civicrm-core/pull/13822))**
+ This change ensures that deleting, disabling or renaming the "Expired"
+ membership status does not cause issues when running the "Membership status
+ processor" scheduled job. Before this change deleting, disabling or renaming
+ the "Expired" membership status would result in the "Membership status
+ processor" scheduled job failing with the message `Finished execution of
+ Membership status processor with result: Failure, Error message: A fatal error
+ was triggered: One of parameters (value: ) is not of the type Integer`.
-- **core#798 - fix rendering of public-facing prefix/suffix select2 ([13816](https://github.com/civicrm/civicrm-core/pull/13816))**
+- **Fatal error to exception on Membership BAO
+ ([13774](https://github.com/civicrm/civicrm-core/pull/13774))**
-- **[REF] small cleanups on payment.create flow. ([13778](https://github.com/civicrm/civicrm-core/pull/13778))**
+ This change improves experience by throwing an exception instead of a fatal
+ error.
-- **Upgrade zetacomponents/base and zetacomponents/mail ([13799](https://github.com/civicrm/civicrm-core/pull/13799))**
+### Backdrop Integration
-- **Membership form address fields for payment processors ([13802](https://github.com/civicrm/civicrm-core/pull/13802))**
+- **civicrm/admin/setting/uf - Fix advice about Backdrop Views
+ ($database_prefix)
+ ([13803](https://github.com/civicrm/civicrm-core/pull/13803))**
-- **Use temp table methods; provide TempTable::getCreateSql() method for debugging ([13703](https://github.com/civicrm/civicrm-core/pull/13703))**
+ This change updates the advice for configuring views on the
+ `civicrm/admin/setting/uf` form so that it works for Backdrop sites.
-- **5.12 to master ([13818](https://github.com/civicrm/civicrm-core/pull/13818))**
+### Drupal Integration
-- **(ops#878) phpunit.xml.dist - Prevent conflict in WordPress E2E with "stderr=true" ([13810](https://github.com/civicrm/civicrm-core/pull/13810))**
+- **[dev/drupal#42](https://lab.civicrm.org/dev/drupal/issues/42) Drupal8: Can't
+ upload images via CKEditor/kcfinder
+ ([242](https://github.com/civicrm/civicrm-packages/pull/242))**
-- **(ops#878) Enforce common signature for CRM_Utils_System::loadBootStrap(). Fix WP E2E error. ([13811](https://github.com/civicrm/civicrm-core/pull/13811))**
+ Makes it so on Drupal 8 sites users can upload and browse images in KCFinder.
-- **(dev/core#491) Standardise the adding of campaign fields on the maili… ([13383](https://github.com/civicrm/civicrm-core/pull/13383))**
+## <a name="misc"></a>Miscellany
-- **Add a class to handle test entities consistently ([13814](https://github.com/civicrm/civicrm-core/pull/13814))**
+- **Fix E-notice in IDS
+ ([247](https://github.com/civicrm/civicrm-packages/pull/247))**
-- **Add comments about usage for doPayment() function ([13812](https://github.com/civicrm/civicrm-core/pull/13812))**
+- **Update 7.x Drupal code to be that of the new coder style
+ ([571](https://github.com/civicrm/civicrm-drupal/pull/571))**
-- **5.12 to master ([13817](https://github.com/civicrm/civicrm-core/pull/13817))**
+- **Fix up to newer coder style
+ ([69](https://github.com/civicrm/civicrm-backdrop/pull/69))**
-- **[NFC] reformat Contact api file to switch to new array formatting ([13806](https://github.com/civicrm/civicrm-core/pull/13806))**
+- **Remove now-obsolete additionalFromClause parameter from prepareOrderBy
+ ([13874](https://github.com/civicrm/civicrm-core/pull/13874))**
-- ** civicrm/admin/setting/uf - Fix advice about Backdrop Views ($database_prefix) ([13803](https://github.com/civicrm/civicrm-core/pull/13803))**
+- **Remove switch statement that no longer switches
+ ([13886](https://github.com/civicrm/civicrm-core/pull/13886))**
-- **checkEditInboundEmailsPermissions should be a static function ([13805](https://github.com/civicrm/civicrm-core/pull/13805))**
+- **Add Unit test for export with incomplete data
+ ([13904](https://github.com/civicrm/civicrm-core/pull/13904))**
-- **[REF] minor code simplification - remove over-handling of amount comp with zero ([13783](https://github.com/civicrm/civicrm-core/pull/13783))**
+- **As discussed, delete webtests
+ ([13861](https://github.com/civicrm/civicrm-core/pull/13861))**
-- **Attempted test fix ([13791](https://github.com/civicrm/civicrm-core/pull/13791))**
+- **Add a class to handle test entities consistently
+ ([13814](https://github.com/civicrm/civicrm-core/pull/13814))**
-- **Standardise setTitle method on forms ([13781](https://github.com/civicrm/civicrm-core/pull/13781))**
+- **Fix up composer for composer 2.0 compatibility
+ ([13872](https://github.com/civicrm/civicrm-core/pull/13872))**
-- **Fatal error to exception on Membership BAO ([13774](https://github.com/civicrm/civicrm-core/pull/13774))**
+- **Remove Log.php from the Original folder as well
+ ([245](https://github.com/civicrm/civicrm-packages/pull/245))**
-- **dev/core#562 remove more instances of ->free() ([13786](https://github.com/civicrm/civicrm-core/pull/13786))**
+- **Remove log files as now supplied by composer
+ ([244](https://github.com/civicrm/civicrm-packages/pull/244))**
-- **Remove reference to google checkout ([13784](https://github.com/civicrm/civicrm-core/pull/13784))**
+- **Remove htmlpurifier from within the IDS to facilitate it being provided by
+ composer ([246](https://github.com/civicrm/civicrm-packages/pull/246))**
-- **[NFC] template whitespace cleanup ([13782](https://github.com/civicrm/civicrm-core/pull/13782))**
+- **Remove Log.php require_once statements
+ ([13842](https://github.com/civicrm/civicrm-core/pull/13842))**
-- **(NFC) Update for compliance with next phpcs standard ([577](https://github.com/civicrm/civicrm-drupal/pull/577))**
+- **remove amavisd
+ ([243](https://github.com/civicrm/civicrm-packages/pull/243))**
-- **Lint .inc files in Drupal module folder to match newer coder standard ([574](https://github.com/civicrm/civicrm-drupal/pull/574))**
+- **Remove amavisd now that it is removed from the packages repository
+ ([13841](https://github.com/civicrm/civicrm-core/pull/13841))**
-- **(NFC) Get phpcs to ignore the use of eval in this file as it is required ([575](https://github.com/civicrm/civicrm-drupal/pull/575))**
+- **Upgrade htmlpurifier to 4.10 to support PHP7.2 and install via composer
+ ([13840](https://github.com/civicrm/civicrm-core/pull/13840))**
-- **Update 7.x Drupal code to be that of the new coder style ([571](https://github.com/civicrm/civicrm-drupal/pull/571))**
+- **Refactor CRM_Contact_Form_Task_PDFLetterCommon
+ ([13892](https://github.com/civicrm/civicrm-core/pull/13892))**
-- **Cleaner front-end URLs ([144](https://github.com/civicrm/civicrm-wordpress/pull/144))**
+- **Reformat test files for array format
+ ([13862](https://github.com/civicrm/civicrm-core/pull/13862))**
-- **(NFC) Update for compliance with next phpcs standard ([72](https://github.com/civicrm/civicrm-backdrop/pull/72))**
+- **Logging - attempt to fix tests
+ ([13832](https://github.com/civicrm/civicrm-core/pull/13832))**
-- **(NFC) Lint .inc files and ensure that the eval usage in tests/phpunit… ([71](https://github.com/civicrm/civicrm-backdrop/pull/71))**
+- **Try Reverting commit removing require once to see if it fixes the problem
+ for api4 ([13870](https://github.com/civicrm/civicrm-core/pull/13870))**
-- **1.x 5.13 ([70](https://github.com/civicrm/civicrm-backdrop/pull/70))**
+- **Import date test
+ ([13823](https://github.com/civicrm/civicrm-core/pull/13823))**
-- **Fix up to newer coder style ([69](https://github.com/civicrm/civicrm-backdrop/pull/69))**
+- **Add shared parent for ContributionRecur forms
+ ([13931](https://github.com/civicrm/civicrm-core/pull/13931))**
-- **drupal#42 - authenticate D8 when using kcfinder ([242](https://github.com/civicrm/civicrm-packages/pull/242))**
+- **Update PHPWord Patches to match the latest versions of their code
+ ([13923](https://github.com/civicrm/civicrm-core/pull/13923))**
-- **Fix E-notice in IDS ([247](https://github.com/civicrm/civicrm-packages/pull/247))**
+- **Extract assignPaymentFields
+ ([13957](https://github.com/civicrm/civicrm-core/pull/13957))**
-- **Remove htmlpurifier from within the IDS to facilitate it being provid… ([246](https://github.com/civicrm/civicrm-packages/pull/246))**
+- **Move code to assign tax information into shared parent
+ ([13899](https://github.com/civicrm/civicrm-core/pull/13899))**
-- **Remove Log.php from the Original folder as well ([245](https://github.com/civicrm/civicrm-packages/pull/245))**
+- **Update test to reflect recently merged PR lower permission to access
+ dedupecheck ([13866](https://github.com/civicrm/civicrm-core/pull/13866))**
-- **Remove log files as now supplied by composer ([244](https://github.com/civicrm/civicrm-packages/pull/244))**
+- **Test fix ([13856](https://github.com/civicrm/civicrm-core/pull/13856))**
-- **remove amavisd ([243](https://github.com/civicrm/civicrm-packages/pull/243))**
+- **Add unit testing for activity creation when cancelling a recurring, related
+ cleanup ([14000](https://github.com/civicrm/civicrm-core/pull/14000))**
-## <a name="misc"></a>Miscellany
+- **Improve test coverage for CRM_Utils_Color::getRgb()
+ ([14007](https://github.com/civicrm/civicrm-core/pull/14007))**
+
+- **Add in tests of purifying HTML output
+ ([13845](https://github.com/civicrm/civicrm-core/pull/13845))**
+
+- **[dev/core#562](https://lab.civicrm.org/dev/core/issues/562) remove more
+ instances of ->free()
+ ([13786](https://github.com/civicrm/civicrm-core/pull/13786)) Continued Work**
+
+- **(NFC) Ensure phpcs ignores eval notice in these files as it is required
+ ([14032](https://github.com/civicrm/civicrm-core/pull/14032))**
+
+- **(NFC) Lint additional php files up to the new coder standard
+ ([14025](https://github.com/civicrm/civicrm-core/pull/14025))**
+
+- **Port Code Style Fixes to 5.13 from master
+ ([14026](https://github.com/civicrm/civicrm-core/pull/14026))**
+
+- **(NFC) Update CRM/Core CRM/Custom CRM/Dedupe to match the new coder style
+ ([14023](https://github.com/civicrm/civicrm-core/pull/14023))**
+
+- **(NFC) Update CRM/Event folder for the new coder style
+ ([14019](https://github.com/civicrm/civicrm-core/pull/14019))**
+
+- **(NFC) update CRM/Contribute to be the new coder standard
+ ([14021](https://github.com/civicrm/civicrm-core/pull/14021))**
+
+- **(NFC) Update CRM/Friend CRM/Grant CRM/Group CRM/Mailing to be up to d…
+ ([14016](https://github.com/civicrm/civicrm-core/pull/14016))**
+
+- **(NFC) Update CRM/Badge CRM/Campaign CRM/Case to be up to date with a …
+ ([14017](https://github.com/civicrm/civicrm-core/pull/14017))**
+
+- **(NFC) Update CRM/Cxn CRM/Dashlet CRM/Export CRM/Extension and CRM/Fin…
+ ([14018](https://github.com/civicrm/civicrm-core/pull/14018))**
+
+- **[NFC] Short array syntax - auto convert settings dir
+ ([14005](https://github.com/civicrm/civicrm-core/pull/14005))**
+
+- **(NFC) SchemaStructure.php - Fix up mismatch between stored+generated code
+ ([14046](https://github.com/civicrm/civicrm-core/pull/14046))**
+
+- **Arg I put these fixes in 5.12 & master while trying for 5.13
+ ([14036](https://github.com/civicrm/civicrm-core/pull/14036))**
+
+- **(NFC) Update CRM/Member CRM/Note CRM/Logging CRM/Import and CRM/Price…
+ ([13992](https://github.com/civicrm/civicrm-core/pull/13992))**
+
+- **(REF) CRM_Core_Resources - Move hook declaration from addCoreResources() to
+ Container.php ([14008](https://github.com/civicrm/civicrm-core/pull/14008))**
+
+- **(NFC) Update CRM/Activity CRM/Admin and CRM/Batch folders to be the f…
+ ([13990](https://github.com/civicrm/civicrm-core/pull/13990))**
+
+- **(NFC) Update coding style in PCP, Pledge, Profile, Queue, Report folders
+ ([13987](https://github.com/civicrm/civicrm-core/pull/13987))**
+
+- **(NFC) Update CRM/SMS/ CRM/UF/ CRM/Upgrade/ CRM/Tag/ to be up to speed…
+ ([13986](https://github.com/civicrm/civicrm-core/pull/13986))**
+
+- **(NFC) Bring CRM/Utils folder up to future coder standards
+ ([13985](https://github.com/civicrm/civicrm-core/pull/13985))**
+
+- **(NFC) Set _log and _tableName variables to be public
+ ([13988](https://github.com/civicrm/civicrm-core/pull/13988))**
+
+- **[unreleased regression] Add error handling for when no test procesor row
+ exists. ([13947](https://github.com/civicrm/civicrm-core/pull/13947))**
+
+- **Grammar fixes
+ ([13960](https://github.com/civicrm/civicrm-core/pull/13960))**
+
+- **Update Unit test styling to cover the future coder version
+ ([13983](https://github.com/civicrm/civicrm-core/pull/13983))**
+
+- **(NFC) Fix location of comment to match future coder version
+ ([13984](https://github.com/civicrm/civicrm-core/pull/13984))**
+
+- **(NFC) Bring up API folder to style of future coder checker
+ ([13980](https://github.com/civicrm/civicrm-core/pull/13980))**
+
+- **(NFC) Upgrade Civi Folder to the new coder version
+ ([13981](https://github.com/civicrm/civicrm-core/pull/13981))**
+
+- **(NFC) Update various files to pass future civicrm/coder ruleset
+ ([13979](https://github.com/civicrm/civicrm-core/pull/13979))**
+
+- **(NFC) Update various files to pass current phpcs
+ ([13978](https://github.com/civicrm/civicrm-core/pull/13978))**
+
+- **[NFC] Reformat tricksy file CRM_Mailing_BAO_Mailing
+ ([13973](https://github.com/civicrm/civicrm-core/pull/13973))**
+
+- **[NFC] Reformat tricksy file CRM/Contribute/Import/Form/MapField
+ ([13974](https://github.com/civicrm/civicrm-core/pull/13974))**
+
+- **[NFC] short array syntax Autoformat - just the tricksy bits of CRM/Activity
+ ([13969](https://github.com/civicrm/civicrm-core/pull/13969))**
+
+- **[NFC] array format tricksie file CRM/Admin/Form/MessageTemplates
+ ([13970](https://github.com/civicrm/civicrm-core/pull/13970))**
+
+- **[NFC] array format tricksie file CRM_Utils_Rest
+ ([13971](https://github.com/civicrm/civicrm-core/pull/13971))**
+
+- **[NFC] array formatting tricksy tricksie file (another CRM/UF/Form/Group.php)
+ ([13972](https://github.com/civicrm/civicrm-core/pull/13972))**
+
+- **[NFC] short array syntax Autoformat - just CRM/ACL dir
+ ([13968](https://github.com/civicrm/civicrm-core/pull/13968))**
+
+- **[NFC] Short array syntax - auto-format CRM directory
+ ([13915](https://github.com/civicrm/civicrm-core/pull/13915))**
+
+- **[REF] extract token functions
+ ([13967](https://github.com/civicrm/civicrm-core/pull/13967))**
+
+- **Test fix ([13949](https://github.com/civicrm/civicrm-core/pull/13949))**
+
+- **Payment test cleanup
+ ([13924](https://github.com/civicrm/civicrm-core/pull/13924))**
+
+- **(NFC) Fix mode on files
+ ([13933](https://github.com/civicrm/civicrm-core/pull/13933))**
+
+- **[NFC] Cleanup DAO factory classes for code standards
+ ([13922](https://github.com/civicrm/civicrm-core/pull/13922))**
+
+- **NFC - Short array syntax - auto-convert ang dir
+ ([13912](https://github.com/civicrm/civicrm-core/pull/13912))**
+
+- **NFC - Short array syntax - auto-convert Civi dir
+ ([13911](https://github.com/civicrm/civicrm-core/pull/13911))**
+
+- **[NFC] Short array syntax - auto-convert api dir
+ ([13909](https://github.com/civicrm/civicrm-core/pull/13909))**
+
+- **Minor code cleanup
+ ([13839](https://github.com/civicrm/civicrm-core/pull/13839))**
+
+- **Minor code cleanup - remove unnecessary ids declaration
+ ([13838](https://github.com/civicrm/civicrm-core/pull/13838))**
+
+- **Code cleanup on membership block loop
+ ([13851](https://github.com/civicrm/civicrm-core/pull/13851))**
+
+- **[NFC] IDE formatting only
+ ([13896](https://github.com/civicrm/civicrm-core/pull/13896))**
+
+- **Minor code cleanups around invoicing assignment
+ ([13857](https://github.com/civicrm/civicrm-core/pull/13857))**
+
+- **[nfc] Reset entire session object between tests
+ ([13878](https://github.com/civicrm/civicrm-core/pull/13878))**
+
+- **Fixing formatting of contributors section
+ ([13860](https://github.com/civicrm/civicrm-core/pull/13860))**
+
+- **[NFC] code formatting only
+ ([13846](https://github.com/civicrm/civicrm-core/pull/13846))**
+
+- **[NFC] Code reformatting
+ ([13849](https://github.com/civicrm/civicrm-core/pull/13849))**
+
+- **Add comments about usage for doPayment() function
+ ([13812](https://github.com/civicrm/civicrm-core/pull/13812))**
+
+- **[nfc] Attempt to improve false negatives on Logging test
+ ([13829](https://github.com/civicrm/civicrm-core/pull/13829))**
+
+- **[NFC] remove unnecessary variable
+ ([13836](https://github.com/civicrm/civicrm-core/pull/13836))**
+
+- **REF Extract case action links into a separate function to facilitate
+ refactoring ([13793](https://github.com/civicrm/civicrm-core/pull/13793))**
+
+- **(NFC, infra/ops#878) AssetBuilderTest - Relax getUrl() assertion for WP
+ compat ([13826](https://github.com/civicrm/civicrm-core/pull/13826))**
+
+- **NFC Whitespace cleanup MembershipBlock.tpl
+ ([13830](https://github.com/civicrm/civicrm-core/pull/13830))**
+
+- **Further cleanup on getRelatedMemberships - just get them with the api
+ ([13797](https://github.com/civicrm/civicrm-core/pull/13797))**
+
+- **[REF] small cleanups on payment.create flow.
+ ([13778](https://github.com/civicrm/civicrm-core/pull/13778))**
+
+- **[NFC] reformat Contact api file to switch to new array formatting
+ ([13806](https://github.com/civicrm/civicrm-core/pull/13806))**
+
+- **[REF] minor code simplification - remove over-handling of amount comp with
+ zero ([13783](https://github.com/civicrm/civicrm-core/pull/13783))**
+
+- **Attempted test fix
+ ([13791](https://github.com/civicrm/civicrm-core/pull/13791))**
+
+- **Remove reference to google checkout
+ ([13784](https://github.com/civicrm/civicrm-core/pull/13784))**
+
+- **[NFC] template whitespace cleanup
+ ([13782](https://github.com/civicrm/civicrm-core/pull/13782))**
+
+- **(NFC) Update for compliance with next phpcs standard
+ ([577](https://github.com/civicrm/civicrm-drupal/pull/577))**
+
+- **Lint .inc files in Drupal module folder to match newer coder standard
+ ([574](https://github.com/civicrm/civicrm-drupal/pull/574))**
+
+- **(NFC) Get phpcs to ignore the use of eval in this file as it is required
+ ([575](https://github.com/civicrm/civicrm-drupal/pull/575))**
+
+- **(NFC) Update for compliance with next phpcs standard
+ ([72](https://github.com/civicrm/civicrm-backdrop/pull/72))**
+
+- **(NFC) Lint .inc files and ensure that the eval usage in tests/phpunit…
+ ([71](https://github.com/civicrm/civicrm-backdrop/pull/71))**
## <a name="credits"></a>Credits
This release was developed by the following code authors:
-AGH Strategies - Alice Frumin, Andrew Hunt, Eli Lisseck; Agileware - Alok Patel, Francis Whittle; Australian Greens - Seamus Lee; Christian Wach; CiviCRM - Coleman Watts, Tim Otten; CiviDesk - Yashodha Chaku; CompuCorp - Omar Abu Hussein; Coop SymbioTIC - Mathieu Lutfy; Dave D; Electronic Frontier Foundation - Mark Burdett; Freeform Solutions - Herb van den Dool; Fuzion - Jitendra Purohit; GreenPeace Central and Eastern Europe - Patrick Figel; JMA Consulting - Monish Deb; kewljuice; Megaphone Technology Consulting - Jon Goldberg; MJW Consulting - Matthew Wire; Pradeep Nayak; Skvare - Mark Hanna; Squiffle Consulting - Aidan Saunders; Stephen Palmstrom; Timbsoft Technologies - Tunbola Ogunwande; Wikimedia Foundation - Eileen McNaughton
+AGH Strategies - Alice Frumin, Andrew Hunt, Eli Lisseck;
+Agileware - Alok Patel, Francis Whittle;
+Australian Greens - Seamus Lee;
+calibrate - Wouter Hechtermans;
+Christian Wach;
+CiviCRM - Coleman Watts, Tim Otten;
+CiviDesk - Yashodha Chaku;
+CompuCorp - Omar Abu Hussein;
+Coop SymbioTIC - Mathieu Lutfy;
+Dave D;
+Electronic Frontier Foundation - Mark Burdett;
+Freeform Solutions - Herb van den Dool;
+Fuzion - Jitendra Purohit;
+GreenPeace Central and Eastern Europe - Patrick Figel;
+JMA Consulting - Monish Deb;
+Megaphone Technology Consulting - Jon Goldberg;
+MJW Consulting - Matthew Wire;
+Pradeep Nayak;
+Skvare - Mark Hanna;
+Squiffle Consulting - Aidan Saunders;
+Stephen Palmstrom;
+Timbsoft Technologies - Tunbola Ogunwande;
+Wikimedia Foundation - Eileen McNaughton
Most authors also reviewed code for this release; in addition, the following
reviewers contributed their comments:
-AGH Strategies - Alice Frumin, Andrew Hunt, Eli Lisseck; Agileware - Alok Patel, Francis Whittle, Justin Freeman; Aniessh Sethh; Artful Robot - Rich Lott; Australian Greens - Seamus Lee; British Humanist Association - Andrew West; Christian Wach; Circle Interactive - Dave Jenkins; civibot[bot]; CiviCRM - Coleman Watts, Tim Otten; CiviDesk - Yashodha Chaku; CompuCorp - Omar Abu Hussein, Shitij Gugnani; Coop SymbioTIC - Mathieu Lutfy, Samuel Vanhove; Dave D; Electronic Frontier Foundation - Mark Burdett; Fuzion - Jitendra Purohit; GreenPeace Central and Eastern Europe - Patrick Figel; GValFr35; JMA Consulting - Joe Murray, Monish Deb; Joinery - Allen Shaw; kewljuice; khorporative; Korlon - Stuart Gaston; Lighthouse Design and Consulting - Brian Shaughnessy; mcuradoc; Megaphone Technology Consulting - Jon Goldberg; MJW Consulting - Matthew Wire; Pradeep Nayak; prondubuisi; Skvare - Mark Hanna; Squiffle Consulting - Aidan Saunders; Tadpole Collective - Kevin Cristiano; Timbsoft Technologies - Tunbola Ogunwande; Wikimedia Foundation - Eileen McNaughton
+Agileware - Justin Freeman;
+Aniessh Sethh;
+Artful Robot - Rich Lott;
+British Humanist Association - Andrew West;
+Circle Interactive - Dave Jenkins;
+Shitij Gugnani;
+Coop SymbioTIC - Samuel Vanhove;
+GValFr35;
+JMA Consulting - Joe Murray;
+Joinery - Allen Shaw;
+Aivars;
+Korlon - Stuart Gaston;
+Lighthouse Design and Consulting - Brian Shaughnessy;
+mcuradoc;
+Onyemenam Ndubuisi;
+Tadpole Collective - Kevin Cristiano;
## <a name="feedback"></a>Feedback