Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

V3 status? #1001

Open
arenoir opened this issue Jan 16, 2025 · 24 comments
Open

V3 status? #1001

arenoir opened this issue Jan 16, 2025 · 24 comments
Assignees

Comments

@arenoir
Copy link

arenoir commented Jan 16, 2025

Responding to a depreciation email sent from shopify.

On April 1, 2025, the Checkout APIs will be shut off and will no longer function.

What is the timeline for releasing the v3 version of this package mitigating this deprecation?

@ChristophJeworutzki
Copy link

+1
Can you give us ETA?

@mpengellyCA
Copy link

mpengellyCA commented Jan 28, 2025

I too have received about 19 emails from Shopify about your own SDK being out of date.

Can you please let us know when this is going to be released since this is apparently a Q&A section not a Issue tracker

@ianjosephwilson
Copy link

Any updates on a new deadline for this?

A final major version will be released in January 2025 to remove the SDK's dependency on the deprecated Checkout APIs, replacing them with Cart APIs. Updating to this new version will allow the SDK to continue to function for most use cases.

@Mesuva
Copy link

Mesuva commented Feb 3, 2025

I get the impression from looking at https://github.com/Shopify/js-buy-sdk/commits/sdk-v3/ that the Checkout removal work has been done, it's now about putting out the actual V3 release.

@chadwackerman
Copy link

They pulled this exact same shit in 2022. I have over 50 emails from the last time the buy button became dependent on their own deprecations and threatened to break. It's part of your platform boys. Grow up and support your users and stop behaving like some startup that's constantly reinventing the concept of a button that puts t-shirts into a shopping cart.

@merwinpoulose
Copy link

will the Buy Button JS be upgraded as well?

@chadwackerman
Copy link

One of my stores went down today. When you click a button it says this in the console:

Uncaught (in promise) Error: [{"message":"The Checkout API has been deprecated and is not accessible for new usage. For more information, please visit https://shopify.dev/changelog/deprecation-of-checkout-apis","path":["checkoutCreate"],"locations":[]}]

Two other stores are working normally. All versions are the same.

@j2is
Copy link

j2is commented Feb 17, 2025

Do we have a new deadline to check again on this?

@arenoir
Copy link
Author

arenoir commented Feb 17, 2025

I get the impression from looking at https://github.com/Shopify/js-buy-sdk/commits/sdk-v3/ that the Checkout removal work has been done, it's now about putting out the actual V3 release.

The sdk-v3 branch is working for us. I have published it to our private registry as a workaround. @juanpprieto ETA?

@chadwackerman
Copy link

@kdaviduik @juanpprieto

Can you at least assign this issue to someone to hint that Spotify cares about its current customers?

I realize that's not nearly as fun as inventing new and exciting ways to load t-shirt prices into a cart every two years. But a sign of life would be appreciated.

Next time please get all your ducks in a row before emailing fake deadlines over and over and posting roadmaps to nowhere.

Being told your store is going offline because Shopify has a dependency on something a different part of Shopify is breaking for no reason doesn't make me want to invest in your platform. Let alone risk my reputation building sites that others rely on.

@kdaviduik
Copy link
Contributor

kdaviduik commented Feb 24, 2025

Hi folks, apologies for the delays. We are working to get v3 released as soon as possible. An approximate ETA for the official release of v3 is mid-March.

Please note that any shops using the JS Buy SDK or Buy Button JS libraries will receive an automatic one-time extension until July 1st for the Checkout API sunset (ie: SF API version 2024-04. The sunset date for this SF API version for everyone else is April 1st).

The Buy Button JS will also get updated to the JS Buy SDK v3. Thank you for the feedback - we will update the Buy Button JS README with this information.

@chadwackerman we are very sorry to hear that you are experiencing an issue with one of your stores. Could you please let me know your shop ID or URL, or open a support ticket so that we can look into this further?

@mpengellyCA
Copy link

Hi folks, apologies for the delays. We are working to get v3 released as soon as possible. An approximate ETA for the official release of v3 is mid-March.

Please note that any shops using the JS Buy SDK or Buy Button JS libraries will receive an automatic one-time extension until July 1st for the Checkout API sunset (ie: SF API version 2024-04. The sunset date for this SF API version for everyone else is April 1st).

The Buy Button JS will also get updated to the JS Buy SDK v3. Thank you for the feedback - we will update the Buy Button JS README with this information.

@chadwackerman we are very sorry to hear that you are experiencing an issue with one of your stores. Could you please let me know your shop ID or URL, or open a support ticket so that we can look into this further?

We are still receiving emails about the depreciation occurring on April 1st, 2025. How can we validate that our stores have been extended?

Is the v3 branch usable? It seems like it was nearly ready to ship a few weeks ago - What is it that we are waiting to be corrected?

@kdaviduik
Copy link
Contributor

We are still receiving emails about the depreciation occurring on April 1st, 2025. How can we validate that our stores have been extended?

@mpengellyCA (and any others who are wondering) please send me either a link to your shop, your shop ID, or your API client ID and I can validate this for you. You can reply here or email me ([email protected]).

Is the v3 branch usable? It seems like it was nearly ready to ship a few weeks ago - What is it that we are waiting to be corrected?

Yes, the v3 branch is usable. We encourage you to use it and give us any feedback. We are blocked by an internal release process but the necessary engineering work for v3 is done and in that branch.

We are working on getting out an actual v3 beta release to npm to make that a bit easier.

@kdaviduik
Copy link
Contributor

kdaviduik commented Mar 4, 2025

Hi folks! We just published a release candidate on npm for JS Buy SDK v3.

Please try it out and share any feedback! It is helpful if you can tag me (@kdaviduik) in any relevant comments to help me see things a bit faster.

This release candidate is based on our sdk-v3 branch. That branch also contains additional information for the v2.x to v3.0 migration and FAQs.

The official JS Buy SDK v3 release is coming soon, though if the v3.0 release candidate version works for you then you will not need to make any further changes to your store for it to continue functioning beyond the July 1, 2025 deadline.

cc @arenoir @ChristophJeworutzki @mpengellyCA @ianjosephwilson @Mesuva @chadwackerman @j2is

@Gomah
Copy link

Gomah commented Mar 5, 2025

Thank you for the update @kdaviduik. I just tried the release candidate 3.0.0-rc.0 from npm but it's missing the main file?

ref: https://github.com/Shopify/js-buy-sdk/blob/sdk-v3/package.json#L5

index.js / index.es.js are missing in the published package: https://www.npmjs.com/package/shopify-buy/v/3.0.0-rc.0?activeTab=code

@kdaviduik
Copy link
Contributor

Thanks for the feedback @Gomah! Looking into this now. We wanted to publish and notify you about the v3 RC release ASAP, apologies for any issues like this along the way

@kdaviduik
Copy link
Contributor

@Gomah I have published a new v3 RC version to npm that will hopefully resolve the issue.

This is outside my working hours so I am not able to manually test on my end, but I will do that tomorrow at the start of my workday.

@krstffr
Copy link

krstffr commented Mar 5, 2025

Will there be typescript types included in version 3?

@rplakas
Copy link

rplakas commented Mar 5, 2025

@kdaviduik Do they changes also affect Buy Buttons created in the Shopify Buy Button channel/app within Shopify?

@kdaviduik
Copy link
Contributor

kdaviduik commented Mar 6, 2025

Hi folks! Quick update: initial testing on our end of the updated RC seems to be working, but we're still doing more thorough testing.


@krstffr If you're referring to the type information that existed in the previous JS Buy SDK versions like this:

MoneyV2: {
    name: 'MoneyV2',
    kind: 'OBJECT',
    fieldBaseTypes: {
      amount: 'Decimal',
      currencyCode: 'CurrencyCode'
    },
    implementsNode: false
  }

then yes that will also be included in version 3, but in v3 some of the specific checkout types will be more generic. Eg: discountAllocations: 'Object[]'. We encourage you to try our RC and give us feedback if you encounter issues.


@rplakas Users of Buy Buttons created through the Shopify admin Buy Button channel will have their Buy Buttons automatically updated to use JS Buy SDK v3 under the hood, with no manual changes required for users of these Buy Buttons.

To clarify, anyone using buy buttons created through the Buy Button JS library directly (and not through the Shopify admin) will need to manually bump their Buy Button JS version once we have updated Buy Button JS to use JS Buy SDK v3.

@krstffr
Copy link

krstffr commented Mar 6, 2025

@krstffr If you're referring to the type information that existed in the previous JS Buy SDK versions like this:

MoneyV2: {
    name: 'MoneyV2',
    kind: 'OBJECT',
    fieldBaseTypes: {
      amount: 'Decimal',
      currencyCode: 'CurrencyCode'
    },
    implementsNode: false
  }

then yes that will also be included in version 3, but in v3 some of the specific checkout types will be more generic. Eg: discountAllocations: 'Object[]'. We encourage you to try our RC and give us feedback if you encounter issues.

I was more thinking of adding proper TS types for everything, but maybe we'll just have to keep relying on https://www.npmjs.com/package/@types/shopify-buy once they add support for V3?

Just curious: what is the reason behind not writing this in TS? Mainly legacy reasons or something else?

@Gomah
Copy link

Gomah commented Mar 6, 2025

@krstffr I drafted a PR yesterday to prepare the @types/shopify-buy package, will open it once v3 is stable.

@kdaviduik I followed the migration notes to update the types but let me know if there's anything missing ✌

@krstffr
Copy link

krstffr commented Mar 6, 2025

@krstffr I drafted a PR yesterday to prepare the @types/shopify-buy package, will open it once v3 is stable.

This is awesome, thank you!

@kdaviduik
Copy link
Contributor

Just curious: what is the reason behind not writing this in TS? Mainly legacy reasons or something else?

@krstffr legacy reasons... I would've strongly preferred to write this all in TypeScript. But given that we're deprecating the JS Buy SDK, it wasn't worth the lift to update everything to TypeScript along the way. We did a lot of our actual development work for the cart -> checkout mapping in a separate TypeScript repo, and then moved that code over to the JS Buy SDK and converted it into legacy JavaScript.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests