Thank you!
@vfonic Which change are you referring to. We try to follow SemVer conventions so we normally bump Major version on breaking changes. (Hence why we are already on version 11).
Ah I see now, I understand the confusion. The breaking change was released in 11 however there were issues with the original so it was disabled quickly and then added back in the same major to avoid taking down peoples apps. I am sorry about the confusion.
I'm coming from this feeling that Shopify App (and theme) developers are being put last in the list of "Shopify customers". I don't think there's a single Shopify store without at least one app installed. And most of the Shopify stores use Shopify themes. (there's also other things like POS, buy button and Storefront APIs)
I've received an email from Shopify about the SameSite cookie option that needs to be set until 4th Feb. I'm a one-man-band, I build and maintain my Shopify apps by myself. Therefore it's hard and time-consuming to keep track of all the changes in the gem.
I was on 'shopify_app' '11.3.2'. I ran bundle update shopify_app. This bumped me to '11.7.1'. There's no major version bump, so I _guess_ it should work. Most of my specs started failing and it was difficult to pinpoint which change broke it (turns out it's this: #874).
My tests being broken, I stopped trusting that my app will work when deployed, so I spent most of the two days debugging and figuring out why it broke. In the process, I also saw this comment in the CHANGELOG.md:
If you have an override on the
self.store(auth_session)method on yourSessionRepositorymodel, the method signature must be changed as according to this change
I _do_ have that method overridden, but looks like I also overrode couple of other methods from the gem, which made the method still work. Or maybe it would break only in some special cases, which is even worse.
All in all, came here to say:

To sum it up: I'm a big fan of semver and even bigger fan of releasing major version bumps for the smallest possibly breaking change. I believe semver number should be primarily for computers (~>, ^, >=, etc.) to calculate how to update. Therefore, I'd prefer 'shopify_app' gem being on version '200.0.1' with UPGRADE.md mentioning all the API changes between each major version.
I understand ruby gems have this tendency to have a huuuge public API (basically anything can be changed), but please, make my life easier by telling me what is different, not in v11.7.0, but in v12. 馃檹
Thanks! :)
I feel ya @vfonic. Definitely a bit sloppy and the timing. Yikes.
The irony here is their email said (emphasis mine):
If you are using ... the
shopify_appruby gem to authenticate your app,
please update to the latest version to ensure that your app will function normally after February 4th.
Most helpful comment
I'm coming from this feeling that Shopify App (and theme) developers are being put last in the list of "Shopify customers". I don't think there's a single Shopify store without at least one app installed. And most of the Shopify stores use Shopify themes. (there's also other things like POS, buy button and Storefront APIs)
I've received an email from Shopify about the SameSite cookie option that needs to be set until 4th Feb. I'm a one-man-band, I build and maintain my Shopify apps by myself. Therefore it's hard and time-consuming to keep track of all the changes in the gem.
I was on
'shopify_app' '11.3.2'. I ranbundle update shopify_app. This bumped me to'11.7.1'. There's no major version bump, so I _guess_ it should work. Most of my specs started failing and it was difficult to pinpoint which change broke it (turns out it's this: #874).My tests being broken, I stopped trusting that my app will work when deployed, so I spent most of the two days debugging and figuring out why it broke. In the process, I also saw this comment in the CHANGELOG.md:
I _do_ have that method overridden, but looks like I also overrode couple of other methods from the gem, which made the method still work. Or maybe it would break only in some special cases, which is even worse.
All in all, came here to say:

To sum it up: I'm a big fan of semver and even bigger fan of releasing major version bumps for the smallest possibly breaking change. I believe semver number should be primarily for computers (
~>,^,>=, etc.) to calculate how to update. Therefore, I'd prefer'shopify_app'gem being on version'200.0.1'withUPGRADE.mdmentioning all the API changes between each major version.I understand ruby gems have this tendency to have a huuuge public API (basically anything can be changed), but please, make my life easier by telling me what is different, not in v11.7.0, but in v12. 馃檹
Thanks! :)