Releases: Shopify/cli
Releases · Shopify/cli
3.46.4
- Fix theme token refresh for
theme dev - Remove images from the local assets middleware when running
theme dev
3.46.3
3.46.2
- Fix installing function dependencies when using npm with workspaces
- Fix footer in the dev console.
- Fix theme dev re-authentication
3.46.1
- Fix an issue running Javy for functions where the CLI could silently crash.
3.46.0
App
- Function limit increased from 10 to 50 per app.
--notifyflag on app dev. You can now specify--notifywhen runningapp devto update a file or URL when files in your theme app extension are changed. This supports integrations with other tools.- Default web type. Webs now default to
frontendtype, so it no longer needs to be specified. This is the recommended pattern for monolithic apps. auth_callback_pathfor monolithic apps. When working with a monolithing app with only afrontendweb, you can now specifyauth_callback_pathin itsshopify.web.toml.- Support
.jpegfiles in theme app extensions. Previously only the.jpgextension was recognized. - Install exact versions of dependencies. When adding dependencies to your app, the CLI ensures they are pinned to an exact version.
- Fix: Link to view checkout extensions. Always link to a published product for viewing checkout extensions. Unpublished products led to an error page.
- Fix: Clean up after failing to generate extensions. Previously if a failure occurred while generating an extension, a directory with invalid contents would remain. Now that directory will be deleted.
- Fix: Deploying function-only apps. Previously apps with only function extensions would fail to build and deploy; this is fixed.
- Fix: npm peerDependency resolution. When using npm as package manager, generating a react UI extension failed due to conflicts between installed copies of react. Dependency installation strategy is adapted to solve this.
- Fix: Obtaining a port when
HOSTis specified. When theHOSTenvironment variable is specified, obtaining a random port failed; this is fixed.
Theme
--notifyflag on theme dev. You can now specify--notifywhen runningtheme devto update a file or URL when files are changed. This supports integrations with other tools.- Upgrade theme-check to 1.15.0. Changelog here
--update-docsflag on theme check. You can now synchronously update Theme Check resources (objects, filters, and tags) before running it. This ensures that your code is checked against the most updated version of theme resources.- Fix: Support vanity URLs on theme dev. Some elements, including images and fonts, were broken for vanity URLs. They are now displayed correctly.
- Fix: localhost link issue on theme dev. In some scenarios, the localhost link was being hidden.
- Fix:
/localizationand/cartrequests on theme dev. Now, these endpoints will no longer fail when usingshopify theme dev.
UI (applicable across project types)
- No-color mode. You can use the
NO_COLOR=1environment variable or--no-colorflag to disable color in the CLI. Note that there is only partial support for some commands thus far. - Specific error message in non-interactive terminals. If the CLI attempts to prompt in a non-interactive terminal (such as in CI), a clear error appears, making it obvious that a required flag is missing.
- Clean up after errors. When the CLI process encounters an error and quits, any hanging prompts or the taskbar will be cleared before exit, leaving only relevant logs.
Auth (applicable across project types)
- Support for Google Cloud Shell. Add support for authentication in Google Cloud Shell.
3.45.4
3.45.3
3.45.2
3.45.1
3.45.0
App
- JS functions. JavaScript functions are now available! You can learn more
in the docs: https://shopify.dev/docs/apps/functions/language-support/javascript - Custom ports for
app dev. You can now define custom ports for the
frontend or backend processes of the app. Just specify a number forportin
yourshopify.web.tomlfile. - Theme app extension logs. Logs for theme app extensions will no longer
appear in a separate area and conflict with other logs or the preview/quit bar.
Instead, they will be integrated with the other logs. Progress bars are
replaced with static output to accommodate this placement. - Theme app extension excluding system files. System files like
Thumbs.db
or.DS_STOREwill now be excluded from theme app extension builds, just like
they are excluded from themes. - Customer accounts UI extension preview. The link from the dev console for
Customer Accounts UI Extensions will now redirect to the customer account page.
Theme
- Theme environments. You can configure environments with theme and store
in ashopify.theme.tomlfile in your project root. Use the--environment
flag (or-efor short) to switch between environments. For more details, read
the docs at https://shopify.dev/docs/themes/tools/cli/environments - Fix: Clean up errors on theme dev. Analytics requests were causing many
errors in both the CLI and Chrome consoles. These requests are now stubbed out. - Fix: 422 error on theme dev. Development theme names are now truncated
to ≤ 50 characters, preventing a 422 error. - Fix:
Ruby is required to continue. An error condition where the CLI
can't find the ruby executable is solved. - Fix: gem install permissions issues. The CLI now uses a local directory
for gem installations, avoiding permissions issues users experienced previously
when installing to their system gem directory.
UI (applicable across project types)
- Resizable select prompts. The height of select prompts adjusts to the
height of the terminal, so that prompts won't be cut off in shorter terminals. - Fix: Log output utf8 support. Special characters were appearing
strangely in subprocess logs. Now they are correctly rendered using utf8. - Fix: Duplicated taskbar. Return key presses were causing the rainbow
taskbar to be duplicated. Now the CLI swallows the keypress, preventing this
visual distraction. - Fix: Dev footer duplicates on resize. The persistent footer for
app dev
would self-duplicate on terminal window resize. It is now displayed correctly. - Fix: Narrow terminal support. Previously, certain UI elements would look
strange in very narrow terminals, such as in CI tools. Now the CLI treats any
terminal as though at least 20 characters' width is available, resulting in
output which is much easier to read.