Confirming behavior for migrating POS UI Extension => UI Extension

We are about to deploy a migration release for one of our apps, going from retail-ui-extensions-react:1.7.0 to ui-extensions:2024.10

I got a bit shook though when I saw the below message after running npm run deploy . We then deleted our node_modules folder and did it again, and didn’t see the message this time, and the new version was created. However, we want to confirm before releasing this version that this migration won’t force users of our existing POS UI Extension to have to re-add our tile / automatically remove the existing tile from their home screen?

We also changed the tile’s handle, but I feel like we’ve also done this before without seeing this type of message. The pending version has a new UI Extension type, while the old one is POS UI .

Hi Derrick,

There’s a reconciliation job in Shopify that will automatically migrate old tiles to new ones. I am not certain of the exact specifics, as our team does not directly control the text presentation of the CLI, but I will run a validation to see. For your specific case, I’d recommend you try it yourself with a test app on a test store, since I might not get all the variables exactly the same as you.

I’ll report back what I find,
Nathan

@Nathan_Oliveira is correct. After you change your dependencies to @shopify/ui-extensions, and you update your toml config from type = “pos_ui_extension” to type = “ui_extension”, when you try to deploy, there will be a prompt asking you to migrate the tiles. So for merchants, this means they will not be impacted.

Thanks guys - some other developers said that if you change the handle, it gets considered a new tile.

Can I DM you links to our current vs. pending release so you can help us confirm? Or should we create another release with the same handle?

This is what you should be getting.

If you try to update the handle at the same time, I think that will confuse Shopify into thinking it’s an add-and-delete, not a migration.

OK thanks a lot @Nathan_Oliveira , let us try again with the same handle and see if we get the migration message this time.

@Nathan_Oliveira I think I see why my teammate changed the handle (he’s not at his desk yet), now we’re getting this error when we try to use our existing handle:

This is what our current release looks like, the existing POS UI extension’s handle is > 30 characters. Any idea what we can do?

Great catch. I’ll bring this to our team that manages the CLI and ask if there’s any way around it.

@Nathan_Oliveira @JS_Goupil thanks guys, we renamed the handle back to the original and this time got the migration message. And the 30 character bug went away when we updated Shopify CLI. Tile is updated and merchants appear unaffected.

Good to know to update the CLI! Thank you for reporting back.

For anyone else who runs into the 30 character limit error, we had to run npm install --save @shopify/cli@latest in our extensions directory.