Skip to content

Releases: recurly/recurly-client-python

Version 2.8.2 May 16th, 2018

16 May 20:16
6a556f0
Compare
Choose a tag to compare

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

05 Apr 21:39
dd664dd
Compare
Choose a tag to compare

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

26 Mar 22:03
92773bb
Compare
Choose a tag to compare
  • 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 to subtotal_before_discount_in_cents
  • Renamed subtotal_after_discount_in_cents to subtotal_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 to credit_first
  • transaction to transaction_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

20 Nov 23:25
0fea3d7
Compare
Choose a tag to compare
  • Implement API version 2.9 changes

Upgrade Notes

This version bumps us to API version 2.9. There are a few breaking changes.

  1. The subscription link on an instance of Adjustment 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.

  2. Instances of Transaction and Invoice no longer have a subscription link and you
    must now use the subscriptions link.

Version 2.6.2 November 9, 2017

15 Nov 18:32
Compare
Choose a tag to compare
  • Fix SSRF: do not use urljoin, quote uuids. Commit: 049c746

Version 2.5.1 November 9, 2017

15 Nov 18:31
Compare
Choose a tag to compare
  • Fix SSRF: do not use urljoin, quote uuids. Commit: 049c746

Version 2.4.5 November 9, 2017

15 Nov 18:31
Compare
Choose a tag to compare
  • Fix SSRF: do not use urljoin, quote uuids. Commit: 049c746

Version 2.3.1 November 9, 2017

15 Nov 18:31
Compare
Choose a tag to compare
  • Fix SSRF: do not use urljoin, quote uuids. Commit: 049c746

Version 2.2.22 November 9, 2017

15 Nov 18:31
Compare
Choose a tag to compare
  • Fix SSRF: do not use urljoin, quote uuids. Commit: 049c746

Version 2.1.16 November 9, 2017

15 Nov 18:30
Compare
Choose a tag to compare
  • Fix SSRF: do not use urljoin, quote uuids. Commit: 049c746