Skip to content

Latest commit

 

History

History
424 lines (257 loc) · 15.4 KB

CHANGELOG.md

File metadata and controls

424 lines (257 loc) · 15.4 KB

CHANGELOG

v6.4.1 (2024-08-09)

  • Send GET requests as query parameters instead of JSON body parameters
  • Fix get_next_page_of_children function for User service with correct filter key

v6.4.0 (2024-07-24)

  • Adds new Claim service for filing claims on EasyPost shipments and insurances

v6.3.0 (2024-07-12)

  • Adds new shipment.recommend_ship_date, smartrate.recommend_ship_date, and smartrate.estimate_delivery_date functions
  • Routes UpsAccount, UpsMailInnovationsAccount, and UpsSurepostAccount create/update requests to the new /ups_oauth_registrations endpoint
    • Starting 2024-08-05, UPS accounts will require a new payload to register or update. See UPS OAuth 2.0 Update for more details

v6.2.0 (2024-04-10)

  • Fix payment method funding and deletion failures due to undetermined payment method type
  • Add refund function in Insurance service for requesting a refund for standalone insurance.

v6.1.1 (2024-01-23)

  • Fix issues funding wallet due to invalid internal function call

v6.1.0 (2024-01-08)

  • Add all_children and get_next_page_of_children in user service

v6.0.0 (2023-12-06)

  • Removes with_carbon_offset parameter from create, buy and regenerate_rates methods in the shipment service since now EasyPost offers carbon neutral shipments by default for free
  • Fixes a bug where the original filtering criteria of all calls wasn't passed along to get_next_page calls. Now, these are persisted via _params key on response objects
  • Removes the undocumented create_and_buy function from the Batch service. The proper usage is to create a batch first and buy it separately

v5.3.0 (2023-10-11)

  • Migrate API Key-related functions out of user service into api_key service, deprecating the old and introducing the new

v5.2.0 (2023-09-14)

  • Add carrier_type service + carrier_type.all method

v5.1.1 (2023-09-05)

  • Fix endpoint for creating a FedEx Smartpost carrier account

v5.1.0 (2023-07-28)

  • Adds hooks to introspect the request and response of API calls (see HTTP Hooks section in the README for more details)
  • Maps 400 status code responses to the new BadRequestError class

v5.0.1 (2023-06-20)

  • Fixes a bug where the params of a customs_info on create weren't wrapped properly which led to an empty set of customs_items

v5.0.0 (2023-06-06)

See our Upgrade Guide for more details.

  • Library is now thread-safe. Closes GitHub Issue (#183)
    • Initialize a Client object with an API key. Optionally set open and read timeout params
    • Previous classes have been diverted into Services and Models
      • All methods (i.e. create, retrieve, all) exist in services, accessed via property of the client (eg: client.shipment.create())
        • E.g. bought_shipment = client.shipment.buy(shipment_id, rate)
  • Beta namespace changed from easypost.beta.x to client.beta_x
  • References to Referral are now ReferralCustomer and referral_customer to match the API and docs
  • References to smartrate are now SmartRate and smart_rate to match the API and docs
    • Rename function get_smartrates to get_smart_rates
    • Rename function get_lowest_smartrate to get_lowest_smart_rate
  • Empty API response functions for delete return true instead of empty object
  • Drops support for Ruby 2.5
  • Bumps all dev dependencies
  • Improves Error Deserialization to dynamically handle edge cases that have a bad format
  • Adds retrieve_estimated_delivery_date function in Shipment
  • Removes deprecated endshipper beta class, please use the GA one EasyPost::Services::EndShipper

v4.13.0 (2023-04-04)

  • Adds get_next_page function to each object which retrieves the next page of a collection when the has_more key is present in the response

v4.12.0 (2023-02-21)

  • Adds beta retrieve_stateless_rates function
  • Adds get_lowest_stateless_rate utility

v4.11.0 (2023-01-18)

  • Added function to retrieve all pickups, accessible via EasyPost::Pickup.all
  • Added payload functions retrieve_all_payloads and retrieve_payload to retrieve all payloads or a specific payload for an event.

v4.10.0 (2023-01-11)

  • Added new beta billing functionality for referral customer users, accessible via EasyPost::Beta::Referral
    • add_payment_method to add an existing Stripe bank account or credit card to your EasyPost account
    • refund_by_amount refunds you wallet balance by a specified amount
    • refund_by_payment_log refunds you wallet balance by a specified payment log
  • Fix bug where bank account and credit card payment methods were not deserializing to the EasyPost::PaymentMethod class

v4.9.0 (2022-12-07)

  • Routes requests for creating a carrier account with a custom workflow (eg: FedEx, UPS) to the correct endpoint when using the create function

v4.8.1 (2022-10-24)

  • Concatenates error.message if it incorrectly comes back from the API as an array
  • Treats any HTTP status outside the 2xx range as an error. Impact expected is minimal as this change only affects 1xx and 3xx HTTP status codes

v4.8.0 (2022-09-21)

  • Adds support to buy a shipment by passing in end_shipper_id
  • with_carbon_offset can now alternatively be passed in the params parameter of the shipment.buy function
  • Migrates Partner White Label (Referrals) to general library namespace and deprecates beta functions

v4.7.1 (2022-09-06)

  • Makes not implemented all calls match the EasyPost::Resource interface so that one can call .to_json on them and receive the proper error

v4.7.0 (2022-08-25)

  • Moves EndShipper out of beta to the general library namespace
  • Ensure the Easypost object will respond to .id when it has one in @values

v4.6.0 (2022-08-02)

  • Adds Carbon Offset support
    • Adds ability to create a shipment with carbon_offset
    • Adds ability to buy a shipment with carbon_offset
    • Adds ability to one-call-buy a shipment with carbon_offset
    • Adds ability to rerate a shipment with carbon_offset
  • Adds validate_webhook function that returns your webhook or raises an error if there is a webhook_secret mismatch
  • Deprecated PaymentMethod class, please use Billing class for retrieve all payment method function

v4.5.0 (2022-07-18)

  • Adds ability to generate shipment forms via generate_form function

v4.4.0 (2022-07-11)

  • Adds Billing.retrieve_payment_methods(), Billing.fund_wallet(), and Billing.delete_payment_method() functions
  • Captures OS information in the user-agent header for easier debugging
  • Update functions now use patch instead of put under the hood to better match API behavior and documentation. The behavior of these functions should remain the same

v4.3.0 (2022-05-19)

  • Adds the EndShipper Beta class with create, retrieve, all, and save functions
  • Requests will now fail fast with an error if an API key is not provided instead of making a live API call with no key
  • Fixes a bug where the library could not properly parse the response of deleting a child user
  • Fixes a bug where you could not update a webhook due to a wrong number of arguments error

v4.2.1 (2022-05-11)

  • Corrects the Beta namespace for the new Referral class

v4.2.0 (2022-05-09)

  • Adds a lowest_rate() function to Orders and Pickups
  • Adds a Shipment.get_lowest_smartrate() function and a shipment.lowest_smartrate() function
  • Removes the unusable carrier param from Address.create_and_verify along with the dead message conditional check
  • Add beta Referral class for White Label API with these new functions: create(), update_email(), all(), and add_credit_card()

v4.1.2 (2022-03-16)

  • Rolls back the original connection behavior of establishing a new connection for every request (restores previous expectations for multithreaded implementations)

v4.1.1 (2022-03-14)

  • Fixes a bug that prematurely closed connections when using multithreading by wrapping requests in a mutex (closes #148)

v4.1.0 (2022-03-09)

  • Adds support for custom client connections (#142)
    • Reduces memory usage by reusing connections
  • Extends all objects with Enumerable allowing for iterator patterns (#143)

v4.0.0 (2022-02-25)

  • Bumps minimum Ruby version from 2.2 to 2.5
  • Bumps dev dependencies
  • Documents each interface of the project in code
  • Overhauls the test suite with full coverage
  • Introduces Rubocop and lints the entire project
  • Removes the unusable Print and PrintJob objects
  • Removes deprecated and unusable stamp_and_barcode_by_reference method on the Batch object
  • Explicitly returns an error of "not implemented" for Rate.all and Parcel.all
  • Removes the Shipment.get_rates function as shipments already contain rates. If you need to get new rates for a shipment, use the Shipment.regenerate_rates function instead
  • Removes the parameters from Address.verify as they are unusable
  • Removes the deprecated http_status property of the EasyPost::Error object as it was replaced with status
  • Fixes a bug that would append an extra id field to each retrieved object
  • Various other small improvements and bug fixes

v3.5.0 (2021-12-06)

  • Adds the update_brand method to the user object (closes #122)

v3.4.0 (2021-07-13)

  • Removed deprecated Item object
  • Sorted EasyPost Resources list
  • Remove 2015-vintage experimental all_updated method on Tracker
  • Fixes API key retrieval (#120, thanks @andychongyz)
  • Adds regenerate_rates method for new rerate API
  • Adds deconstruct_keys method to allow for pattern matching on EasyPost objects

v3.3.0 (2021-06-10)

  • Adds SmartRate functionality to the Shipments object (available by calling get_smartrates on a shipment)
  • Fix bug where EasyPost::CarrierAccount.types was hitting the wrong endpoint

v3.2.0 (2021-01-14)

  • Replace Travis CI with Github Actions
  • Add Ruby 3.0 to supported platforms (#110; thanks @maxwell)

v3.1.5 (2020-12-16)

  • Fix attribute lookup when manually constructing objects (#105; thanks @drewtempelmeyer)
  • Flatten class names and clean up some other style issues
  • Fix EasyPost::Address.create_and_verify, broken since 3.1.0 (#108; thanks @rajbirverma)

v3.1.4 (2020-09-29)

  • Don't modify params passed into Address#create (#78; thanks @TheRusskiy)
  • Don't modify carriers and services parameters to Shipment.lowest_rate (#71 / #103, thanks @vladvinnikov and @jurisgalang)
  • When constructing an easypost object, convert the key to a string (#102; thanks @Geesu)
  • Expose the raw HTTP response as #http_body on EasyPost::Error objects (#101; thanks @Geesu)

v3.1.3 (2020-06-26)

  • Fix bug causing Authorization header to be included in User-Agent header. All users must upgrade.

v3.1.2 (2020-06-24)

  • Bad gem push. New version required.

v3.1.1 (2020-06-23)

  • Fix bug where EasyPost.http_config was invalid when not explicitly initialized.

v3.1.0 (2020-06-23)

  • Add Shipment Invoice and Refund Report
  • Remove dependencies on RestClient and MultiJson
  • Remove some deprecated endpoints

v3.0.1 (2018-05-17)

  • Enforce TLS certificate validity by default

v3.0.0 (2018-02-15)

  • Require use of ruby ~> 2.0 and TLSv1.2

v2.7.3 (2018-02-05)

  • Fix bug with introduced around certain JSON objects with IDs (thanks vladvinnikov!)

v2.7.2 (2018-02-01)

  • Removed unused and unsupported code paths for Container model
  • Removed unused and unsupported code path for Stamp and Barcode methods on the Shipment model
  • Fixed a bug with non-model JSON object with an "id" key being treated as models and raising errors

v2.7.1 (2017-05-25)

  • Allow reports to be retrieved without passing a type

v2.7.0 (2017-04-04)

  • Changed Report CRUD signatures. requires report type to be passed

v2.6.2 (2017-02-14)

  • Added get_rates method for Orders

v2.6.1 (2017-01-19)

  • Updated create method for ScanForms

v2.6.0 (2017-01-17)

  • Add basic CRUD methods for Webhooks

v2.5.0 (2016-12-19)

  • Add prefixes to report in utils

v2.4.0 (2016-12-08)

  • Add report resource to ruby client

v2.3.0 (2016-11-25)

  • Updated dependencies to allow rest-client 2.0.0 and above

v2.2.0 (2016-07-260

  • Added standalone Insurance model

v2.1.11 (2016-02-04)

  • Allowed user creation for top-level users

v2.1.10 (2015-12-23)

  • Added verify and verify_strict params to Address.create
  • Added Tracker.create_list and Tracker.all_updated for working with large numbers of Trackers.

v2.1.9 (2015-11-04)

  • Added new tests for Tracker.all
  • Updated some old examples

v2.1.8 (2015-10-21)

  • Added Cancel method for Pickups (thanks Ramie Blatt!)

v2.1.7 (2015-10-05)

  • Fixed Address.create_and_verify and changed how errors are raised (thanks Dimitri Roche!)
  • Require newer version of the multi_json package

v2.1.6 (2015-06-10)

  • Added Address message accessor for backwards compatability

v2.1.5 (2015-06-10)

  • Removed Address.message

v2.1.4 (2015-06-03)

  • Add Printer and PrintJob resources.

v2.1.3 (2015-04-30)

  • Bux fix, EasyPost::Errors no longer break with a nil json body.

v2.1.2 (2015-04-29)

  • EasyPost::Errors now correctly parse field errors and error codes.

v2.1.1 (2015-04-15)

  • CarrierAccount will now correctly save in-place modifications to credentials
  • Nested variables should now be saved correctly across all models
  • Fixed version numbering confusion (the previous version was 2.0.15, not 2.1.0)

v2.0.15 (2015-04-15)

  • Added tracker to shipment buy response
  • Updated tracker tests

v2.0.14 (2015-04-15)

  • Added User and CarrierAccount models with CRUD functionality

v2.0.13 (2014-10-30)

  • Added Pickup, PickupRate resources.
  • Added ability to pass api_key to a few resources that were missing it.

v2.0.12 (2014-07-07)

  • Added Item, Container, and Order resources.
  • Fixed and added a lot of tests.

v2.0.11 (2013-12-16)

  • Added Event.receive method for parsing events sent by webhook.
  • Fixed tests to account for the tracking code returning and array of details instead of a Hash

v2.0.10 (2013-10-03)

  • API Addition: Event resource added for webhook consumption.

v2.0.9 (2013-09-19)

  • Interface Change: Changed batch.scan_form to batch.create_scan_form to support the ability to refer to scan forms associated to batches.

v2.0.3 (2013-07-31)

  • API Addition: Tracker resource added. Trackers can be used to register any tracking code with EasyPost webhooks.

v2.0.2 (2013-07-23)

  • API Addition: Shipment.track_with_code returns tracking details for any tracking code.

v2.0.1 (2013-07-07)

  • API Addition: Address.create_and_verify returns a verified address in one step.
  • API Addition: Shipment.label forces the creation of additional label formats (pdf, epl2, zpl).
  • API Addition: Shipment.insure purchases insurance for a shipment.
  • Library Update: Added the ability to negatively filter carriers and services with Shipment.lowest_rate (e.g. '!usps').

v2.0.0 (2013-06-25)

v1.1.3 (2013-06-05)

v1.1.2 (2013-06-05)

v1.1.1 (2013-02-12)

v1.1.0 (2013-01-29)

v1.0.8 (2012-11-19)

v1.0.7 (2012-11-19)

v1.0.6 (2012-11-19)

v1.0.5 (2012-11-19)

v1.0.4 (2012-11-14)

v1.0.3 (2012-11-13)

v1.0.2 (2012-11-13)

v1.0.1 (2012-11-13)

v1.0.0 (2012-11-02)