User:Adamw/Fundraising/Civi hacks

Core hacks
See civicrm-4.2.8-drupal6-wmf.patch


 * Dedupe APIs for programmatic, incremental, external algorithms CRM-12421, CRM-12422
 * Export mapping type workflow can be extended CRM-10675
 * Export drops temporary componentTable
 * Add failure_count and failure_retry_date to internal CRM_Contribute_BAO_ContributionRecur API
 * Named custom data tables and column CRM-10592. Avoid breakage such as extending core tables, at least when is_required.
 * Extra caching: CRM_ACL_BAO_ACL::entityTable
 * TRUNCATE vs DELETE FROM. Unknown dependencies on the environment, still needs research. CRM-10700
 * Lock out expensive mistakes such as Dedupe All UI, or "force" search with empty criteria. CRM-11566  Along with all unfiltered queries?  Also, show an In Progress spinner including a description of the criteria and running operation.
 * Migrate our refund strategy to 4.3 financial items (Refund button in Edit Contribution, and negative contribution)
 * _civicrm_api3_values_to_array recursion might be inefficient CRM-11256
 * _civicrm_api3_validate_date strict comparison so that the value can be optional
 * jcalendar.tpl bug CRM-10435 - test Copy Down in multiple browsers and locales
 * Don't churn ACL cache, immediately reset only when editId === loggedUserId. Otherwise, invalidate. CRM-11275

Wish list

 * Automated performance testing
 * Fix name/email contact search issues CRM-12326, CRM-12342
 * Triggers do not play nice with our DB replication CRM-12315

Done (merged 4.3)

 * CRM-12406 Respect includeOrderByClause setting in Advanced Search
 * CRM_Core_OptionGroup caching