2.18: Goodbye TLS 1.0
"Never say goodbye because goodbye means going away and going away means forgetting" - Peter Pan
Wrong. Peter obviously never had to upgrade his TLS version. You can forget all about TLS 1.0, forever. I promise. It's going away, and it's never coming back.
A big thank you to all those that contributed to this release: @nnc @stellard @dhurba87 @pareeohnos
And a big shoutout to @CloCkWeRX for his continued support in maintaining the repo.
Important notes on this release
Xero is deprecating support for TLS 1.0. You must use TLS 1.1 or TLS 1.2 (1.2 suggested) for requests to the Xero API. For most ruby users, no changes will be required. Tests have been added to the gem to test which version of TLS your application is using. For more information on the deprecation of TLS 1.0 please see this notification: https://developer.xero.com/tls1-deprecation
Changes to Save Method
Important: A save! method has been added, and changes have been made to the save method to bring it in line with how these functions work in ActiveRecord.
save: Will return true/false. This function will not raise an exception if there is a validation error.
save!: Will raise an exception if it does not succeed, ie: if there is a validation error.
If you're unclear, take a look at the code changes: 3b6485c
Some other highlights
Online Invoice URL:
The online invoice url for an invoice has now been exposed via the gem. OnlineInvoice has been implemented as it's own model as it could have additional features exposed in the future, and it requires an additional API call to retrieve the details.
Example usage:
@invoice = client.Invoice.all(:where => 'Type=="ACCREC"').first
@invoice.online_invoice.online_invoice_url
=> "https://in.xero.com/a8KPNEPtRvbR8sBAbCWOgLWO7K1p5U5hD3qF754D"
GET invoices createdByMyApp
Support for the createdByMyApp param has been added to the gem. This param is only applicable to the invoices endpoint. Setting this param to true will retrieve only invoices that have been created by your application.
Add Currency
You can now add (subscribe) a new currency to a Xero org. Note: You can not create new currencies, only subscribe the org to a currency that Xero already supports.
For more details see:
Added save! method
The gem now supports save & save! The save method still returns true/false, the save! will raise a exception if the save is not successful.