This branch is now 2.1.8-bleeding
For customer search, join once. Performance increase.
Backorders at variation level

Added a new select metabox for variations allowing users to control
backorders at the variation level.
Might need more testing.
ref: #5351
Template cleanup
Print notices in view order template Closes #5348
updated the WC_Payment_Gateway class to set a maximum transaction amount, closes #5237
updated the method to get the order id from "pay for order" page
removed not defined $wp variable in favor to get_query_var() function
added method to check if order needs shipping in "pay for order" page
improved the get_order_total() method
added the possibility to translate the edit-address endpoint slugs, closes #4820
Bind price and decimal input events to body in woocommerce_admin js

The event was bound to the element directly, causing problems when the elements was added after dom ready (through ajax). Now the decimal format check will always take place.
Allow negative amount in price field validation

The price field validation method in the admin js did not allow negative numbers, which are valid as eg. negative fees.
Cleanup indentation in woocommerce_admin.js

File mixed tabs and spaces. Converted all spaces to tabs.
Updated minified woocommerce_admin JS
Merge pull request #5377 from mgmartel/decimal-validation-negative

Fix decimal validation JS in order admin
Abstract product constructor

Check for numeric $product, and expand the checking to see if its
passed a post object. Fixes #5341
Merge pull request #5373 from claudiosmweb/5237-feature-max-transaction-amount

Feature maximum transaction amount for payment gateways
1 filter rather than 2 Closes #5361
Merge pull request #5375 from claudiosmweb/4820-feature-translate-edit-address-slugs

Make possible to translate the edit-address endpoint slugs