Releases: bold-commerce/go-shopify
The one where we added a bunch of stuff.
Quite a few changes here, we'd like to thank all that were involved in submitting and reviewing.
#83 Moved ApiPrefix to Client rather than being global
#84 Refactored support for pagination via header
#86 Added RateLimitInfo
#87 Added WithRetry
#93 Added cursor based pagination for orders
#96 Prevents sending unexpected page's field
#98 Updated documentation and testing
#100 Created custom unsmarshaller for Order.LineItems
Stay safe, wash your hands, and obey social distancing.
The one with gomod
v3.0.0
Big thanks to @luthermonson for adding gomod support to this library.
Due to the nature of this change we've elected to bump a major version to notify users of breaking changes.
The one with variant metafields and pre launch enabled flag
Overview
We've implemented support for metafields on the variant struct
type Variant struct {
ID int64 `json:"id,omitempty"`
...
Metafields []Metafield `json:"metafields,omitempty"`
}
and the pre_launch_enabled flag on the shop model.
type Shop struct {
ID int64 `json:"id"`
...
PreLaunchEnabled bool `json:"pre_launch_enabled"`
}
#63 Adding pre_launch_enabled to shop model (Thanks @fidel-ruiz)
#60 Add metafields to the shopify variant struct (Thanks @sandersjessica)
The One during Shopify Unite 2019
Itty bitty minor release 🛍
- #56 Remove omit_empty from json tag for Fulfillment.NotifyCustomer (Thanks @MathiasGr)
The one where we unbreak backwards compatibility!
The one with Shopify API versioning support!
Overview
We've implemented support for Shopify's API versioning. To use it instantiate a client like below:
// Instantiate client with specific API version - 2019-12
client := goshopify.NewClient(app, "my-shop", "not-a-real-token", goshopify.WithVersion("2019-12"))
// Instantiate client without specific API version, will default to no api version, which defaults to the oldest supported API version
client := goshopify.NewClient(app, "my-shop", "not-a-real-token")
You can read more about this here
Thanks a tonne to @dougyss4 for implementing this!
The one where we break everything by being specific about integers
Overview
We converted the int
declarations throughout to int64
.
Why?
Many of Shopify's internal ids have exceeded the maximum 32-bit integer value. On systems that were compiling go without 64 bit integer defaults, this library was not working for those internal ids. Being explicit about the size of these integers allows this library to work on more systems.
v1.3.0 - The one with discount codes and inventory items
v1.2.0 - The one with more endpoint support and the pursuit of a free t-shirt
Overview
Mostly adding missing support for some endpoints, little bit of test cleanup, and a few struct field tweaks in some models.
Here's what is different in v1.2.0 from v1.1.0:
- Convert some tests to use RegisterResponderWithQuery (#36)
- Add order update endpoint (#41)
- Add endpoint to get all tags across customers (#40)
- Add Location endpoint. (#25)
- Add list collects endpoint (#38)
- Add usage charge service (#35)
- Update tests due to breaking changes in http mock update (#33)
- Add properties to RefundLineItem (#29)
- Add omitempty tag for CustomerAddress properties (#28)
- Theme resource fix tag (#27)
- Added CustomerAddressService (#26)
- Remove execute permission from go source files. (#24)
- Add product and variant admin_graphql_api_id attribute (#23)
v1.1.0 - The one with a breaking change
Overview
We've merged in our first breaking change (Although this change breaks something that was also released after v1.0.0, we still feel like we should increment the minor version number). We expect that more breaking changes will follow so it's important to us to get versioning working.
Here's what is different in v1.1.0 from v1.0.0:
- Add IDs []int as option for List method in client - JakeSchoermer (#17)
- Add storefront access token service (#19)
- Add list customer orders endpoint (#20) <- New feature added
- Add primary location ID to Shop struct (#22)
- Adding debug webhook verify method (#18)
- Add options to list customer orders (#21) <- Breaking change for new feature