Releases: recurly/recurly-client-python
Version 2.8.2 May 16th, 2018
This bumps us to API version 2.12 and has no breaking changes that need to be addressed.
- Implement API version 2.12 changes #240
Version 2.8.1 April 5th, 2018
This brings us up to API version 2.11. It has no breaking changes.
- Implement API version 2.11 changes #233
Version 2.8.0 March 26, 2018
- Implement API v2.10 Changes #231
Upgrade Notes
1. InvoiceCollection
When creating invoices or using mark_failed()
, we now return an InvoiceCollection
object rather than an Invoice
. If you wish to upgrade your application without changing functionality, we recommend that you use the charge_invoice
on the InvoiceCollection
. Example:
# Change This:
invoice = account.invoice()
# To this
collection = account.invoice()
invoice = collection.charge_invoice
Calls that now return InvoiceCollection
instead of Invoice
:
Purchase#invoice()
Purchase#preview()
Purchase#authorize()
Account#invoice()
Account#build_invoice()
Furthermore, Invoice#mark_failed()
no longer updates the invoice but rather returns a new InvoiceCollection
object:
# Change This:
invoice.mark_failed()
# To this
collection = invoice.mark_failed()
failed_invoice = collection.charge_invoice
2. Invoice#original_invoice removed
Invoice#original_invoice
was removed in favor of Invoice#original_invoices
. If you want to maintain functionality, change your code grab the first invoice from that endpoint:
# Change this
original_invoice = invoice.original_invoice()
# To this
original_invoice = invoice.original_invoices()[0]
3. Invoice subtotal_*
changes
We have renamed two of the invoice subtotal fields to more clearly reflect their values:
- Renamed
subtotal_in_cents
tosubtotal_before_discount_in_cents
- Renamed
subtotal_after_discount_in_cents
tosubtotal_in_cents
4. Invoice Refund -- refund_apply_order
changed to refund_method
If you were using Invoice#refund
or Invoice#refund_amount
and explicitly setting the second refund_apply_order
parameter, then you may need to change value to fit the new refund_method
format. The values for this have changed from (credit
, transaction
) to (credit_first
, transaction_first
)
If you don't explicitly set the refund_apply_order
like in these two calls, no change is needed:
invoice.refund(line_items);
invoice.refund_amount(1000);
If you do set the second param, you'll need to change:
credit
tocredit_first
transaction
totransaction_first
Examples:
# Change `credit`:
invoice.refund(line_items, 'credit');
invoice.refund_amount(1000, 'credit');
# To `credit_first`
invoice.refund(line_items, 'credit_first');
invoice.refund_amount(1000, 'credit_first');
# Change `transaction`
invoice.refund(line_items, 'transaction');
invoice.refund_amount(1000, 'transaction');
# To `transaction_first`
invoice.refund(line_items, 'transaction_first');
invoice.refund_amount(1000, 'transaction_first');
5. Invoice States
If you are checking Invoice#state
anywhere, you will want to check that you have the new correct values. collected
has changed to paid
and open
has changed to pending
. Example:
# Change this
if invoice.state == 'collected':
#To this
if invoice.state == 'paid':
# Change this
if invoice.state == 'open':
# To this
if invoice.state == 'pending':
This also affects the Invoice.all_collected
and Invoice.all_open
functions. Example:
# Change this
Invoice.all_collected()
# To this
Invoice.all_paid()
# Change this
Invoice.all_open()
# To this
Invoice.all_pending()
Version 2.7.0 November 20, 2017
- Implement API version 2.9 changes
Upgrade Notes
This version bumps us to API version 2.9. There are a few breaking changes.
-
The
subscription
link on an instance ofAdjustment
is now only created if adjustment is
originating from a subscription plan charge, setup fee, add on, trial or proration credit.
It is no longer created for other adjustments. -
Instances of
Transaction
andInvoice
no longer have asubscription
link and you
must now use thesubscriptions
link.
Version 2.6.2 November 9, 2017
- Fix SSRF: do not use urljoin, quote uuids. Commit: 049c746
Version 2.5.1 November 9, 2017
- Fix SSRF: do not use urljoin, quote uuids. Commit: 049c746
Version 2.4.5 November 9, 2017
- Fix SSRF: do not use urljoin, quote uuids. Commit: 049c746
Version 2.3.1 November 9, 2017
- Fix SSRF: do not use urljoin, quote uuids. Commit: 049c746
Version 2.2.22 November 9, 2017
- Fix SSRF: do not use urljoin, quote uuids. Commit: 049c746
Version 2.1.16 November 9, 2017
- Fix SSRF: do not use urljoin, quote uuids. Commit: 049c746