-
a52b36d: Add support for SHOPIFY_APP_AUTOMATION_TOKEN env var as a new name for SHOPIFY_CLI_PARTNERS_TOKEN
-
9a39b44: Add
--development-contextflag totheme pushThe new
--development-contextflag (short:-c) allows you to specify a unique identifier for a development theme context (e.g., PR number, branch name). This gives developers the ability to programmatically create or reuse named development themes; particularly useful when runningshopify theme pushin a CI environment where you might want to associate a particular development theme to a branch or pull request.
-
07d4304: Remove
custom-oclif-loader.tsand use oclif'sConfigdirectly. The development-only shim for loading a local@shopify/cli-hydrogenplugin is no longer needed as the Hydrogen repo now handles this via its own patch scripts. -
35ba22b: Set the current theme in local development on create or find
-
34e19bc: Change wording for current development theme in
theme listPreviously you could only have one development theme at a time so we'd add
[yours]beside the development theme that you were currently attached to. Now you can have multiple development themes so we're changing the language to[current]to show which theme you are actively connected to.
- fa8364d: Remove hardcoded theme duplicate mutation API version
- 19faac6: [internal] suppress console errors when pushing metrics
- 5e13c83: Add --listing flag to theme dev, push, and share commands
- f903c47: Added CLI support for extensions.supported_features in toml
- f9cf001: Throw descriptive AbortErrors during expected authorization errors
- 6f306ee: Introduce
AGENTS.mdfile support inshopify theme init
- 9b97dfa: Fix zip and brotliCompress functions to handle binary files
- 9450302: [Bug fix] Remove ability to sync Liquid files by checksum
- 64d1fc7: Use the handle to set the app version name, and the TOML name as a fallback
- c30af25: Only use custom cli-hydrogen package in CLI development environments
- 32f489c: Add ability to notify user when Liquid files are rewritten remotely
- a407016: Fix: Validate directory before
git cloneattempts - 60eb2a2: Treat all network errors as user-facing AbortError instead of BugError in fetchApiVersions
- 14c1504: Ignore duplicated plugins to avoid "multiple tunnel plugins" errors
- e81c29c: Remove POLARIS_UNIFIED flag
- 7fad402: Preserve session alias on token refresh
- b855ec1: Allow theme push and share commands to be called with multiple environments
- 74fc99c: Commands that don't require authentication should not create sessions when ran with multiple environments
- 1416fe1: Ensure user provided flag values override defaults in commands with multiple environments
- 6497461: Add
auth logincommand with multi-session support
- a883d5b: Remove redundant calls to normalizeStoreFqdn in requests
- be916a1: Fix theme event reporting for monorail
- 9b872dc: Update fetched AI instructions
- 864c687: Fix custom network behaviour for theme commands not being used
- 40e2d6f: Fixed typo in isARetryableNetworkError to catch network socket disconnected
- 62d6b9a: Add more retryable errors and improve consistency of identifying retryable conditions
- 521fb07: Add new
theme duplicatecommand to duplicate store themes
- b1feb1d: Add CLI theme login auth error next steps
- ee353e9: No longer abort theme GraphQL requests on the client side
- e73e9a5: Fix an issue with running
theme packagewith a default environment present
- 0edf793: Fix issue where SHOPIFY_FLAG_ENVIRONMENT was not being used correctly when passed as an environment variable
- eee4978: Add error handling when the authorization service is not reachable
- b838f21: Remove git remote after cloning theme in
theme initcommand to prevent accidental pushes to the skeleton theme repository
- 23d4b0b: Deprecated functions:
- consoleLog: should be replaced by outputResult (stdout) or outputInfo (stderr)
- consoleWarn: should be replaced by outputInfo (stderr)
- consoleError: should be replaced by outputInfo (stderr)
- renderText: should be replaced by outputResult (stdout) or outputInfo (stderr)
- eb19684: Removed overrides for SHOPIFY_CLI_NO_THEME_BUNDLING and SHOPIFY_CLI_BUNDLED_THEME_CLI
- 24aa2dd: Drop support for Node 18
- 16406ae: Display richer error messages when apps are misconfigured
- 9a9e51e: Fix issues with timeouts for theme dev
- 0cc639e: Fix app dev issue about unavailable port when HOST env var is set
- 431fd6e: [internal] Add method to read local repo's latest git tag
- 8422004: Increase network timeout for theme API requests to prevent failures during long operations. This utilizes the internal request behaviour mechanism for theme-related Admin API calls, setting a longer timeout (90s) specifically for potentially slow actions like asset uploads/downloads.
- 6517e43: Enable authentication errors to display store names
- f9ac5cf: Update
getPathValue,setPathValue, andunsetPathValueto support the lodashPropertyPathtype - 68b53f6: Add support to use App Management API with CLI Tokens.
- 031feb7: Add new
unsetPathValuefunction which wraps theunsetfunction from lodash
- 0b1e588: Show the multiple CLI installations warning only once a day
- 94362f9: Avoid showing errors when fetching notifications in background
- 4f17786: Prevent deploy requests from timing out
- 036bcaf: Fix a bug with binary downloads timing out
- 164bbbe: The hidden
.shopifyfolder now has its own generic .gitignore file
- 73c78ac: Enable automatic retry for network errors (i.e. DNS or connectivity issues). Can be disabled with SHOPIFY_CLI_SKIP_NETWORK_LEVEL_RETRY
- 36dccd6: Automatic cancellation of slow network requests
- 4a3895c: Use GraphQL for theme creation
- 38e8d7b: Hide serialized_script fields in verbose logs
- b1ed29d: Fix binary files being corrupted on theme pull
- 6449aa6: Fetch notifications in background
- 4aee075: Improve display of loading bar in no-color mode
- da606a6: Improve mechanism that adds
.shopifyto.gitignoreto avoid duplicate entries - ab407f3: Add
addToGitIgnoreto cli-kit to append entries to existing.gitignorefiles
- bb3b100731: Add tabular data display component to UI kit
- 7e34195c30: Store theme asset upload errors encountered while running the theme dev command
- 1a5aec270d: Fix
shopify theme devto no longer fail when development themes expire in internationalized stores - 369351435b: Ensure no-color mode is respected for warnings and errors
- f004019bb9: Utilize Admin API to determine if a storefront is password protected
- beab713acd: Introduce method to fetch metafield definitions by ownerType from Admin API
- 4d722c64fc: Ensure git directory is clean when running
theme pull - 03fb93e3c9: Remove all template lockfiles, except the one used to install dependencies
- 94a7d4ce4f: Fix bug preventing empty theme files from uploading
- 94953a671e: Fix bug preventing empty theme files from uploading
- a395820e7b: Fix dev for Ruby apps by avoiding the command safety check to raise an error when not found
- 5fd19d2920: Improve display of links for terminals that don't support hyperlinks
- 5531731c11: Skip notifications when using --json, -j or SHOPIFY_FLAG_JSON
- 33477dd9d7: Notification system
- 03b39a67b3: Show a warning when there are multiple CLI installations
- 283aa815c: Remove support for access_code based Shopify authentication within the CLI
- 4d89691ad: Fix a bug when building empty theme assets
- 9cc4d7c1d: Messaging improved for authorization errors related to invalid targets when using
themecommand - e9aeab01e: Ensure output is also interactive when prompting
- 435c88bf1: Fix customer login functionality during development
- 05cbe63566: - Add cached package version checks
- Make CLI upgrade message smarter
- 40a7b1229a: CLI now better handles 429 rate limiting for large projects
- dd4b730962: Small UI fix when using an invalid shop
- f76debde5: Device auth is the default authentication method
- 593019155: Remove unnecessary prompt from CLI2
- 9d3a6bade: Updated nx and eslint rules
- 2ae9341e7: Added support for JSON Schema based module validation
- 08b6acce2: Fix the output for unhandled errors
- 79a951f3c: Allow passing an initial value for TextPrompt
- 87a6cc590: Dev stores are no longer automatically made transfer-disabled
- 0c117d0f4: Updated the output of
app devto include extension handles in log messages. - 009a43078: Fix auth for 1p development in Spin
- 0ff96c777: Introduce
.jsonsupport for theme app extensions
- ca218cd31: Shopify CLI now defaults to be Global
- ca218cd31: Add an optional parameter to getAvailableTCPPort for the preferred port number
- 3affd6bbe: Support parsing multiline environment variables in .env file
- ab752de6e: Add function to perform glob pattern matching
- cedd14e6c: Improve the error message for invalid custom token
- 1220290ec: Add placeholder tab completion to text prompts
- a9e847717: Refine
shopify theme pullimplementation to no longer require a Ruby setup - a9e847717: Upgrade oclif to v3 (improved help menus and more)
- a9e847717: Add
performActionWithRetryAfterRecoveryto codify pattern of optimistic attempt + recovery/retry mechanism - a9e847717: Fix password page error for safari
- a9e847717: Update @shopify/polaris and @shopify/polaris-icons to latest version
- 1d6fe3475: Increase minimum Node version to 18
- 0896e62b1: Versioned app config support
- 72b1daaee: Add new
nodeleteflag toshopify theme devcommand
- cc3ada0a2: Throw an error correctly if reauthenticating in non-TTY with noPrompt = true
- 060bd75cf: Support client credentials flow (currently used in GraphiQL)
- 060bd75cf: Expose functions to get information on available Admin API versions
- 4ea4c08dd: Fix bundler env vars
- 1de8122c4: No longer drops _.json templates when there is a _.json.liquid template with the same name.
- 9cbe46e06: Fix a bug with keypresses after Input
- 533c66492: Adds
pascalizefunction which wraps thepascalCasefunction from change-case package - 64b49598b: Support Bun as a package manager (experimental)
- e72b4f1c8: Allow refreshing a Partners token without a fallback to prompting
- a8c8b1e6b: Fix node/git isClean to return a boolean value instead of a function
- 8b7ce36b1: Fix node site link, which was just changed
- b90f24b2e: Warn when using EoL'ed Node
- 8c979a621: Fix TAE hot code reloading in spin
- 7802bffa9: Fix duplicated error messages
- 28e629078: Fix ruby bundler config when Rails app that uses bundler local config
- 0b8b97993: Fixing CLI Kit base-command to await errorHandler method instead of exiting early
- 4bb8fff29: Added InfoToken, WarnToken, and ErrorToken to cli-kit ui
- 3f36e9463: Fixed CI issue due to theme check --dev-preview --version implementation
- cf5bbff61: Add verbose logs for Bugsnag reporting
- 46a72a6b4: Fix NPM separator warning for negated flags
- 3ed6ae88e: Dev component rethrow the exception to display error banner
- d6b02afcf: Fix incorrect variables in getCIMetadata
- e0cd881e1: Add monorail config for reliability metrics
- 20d667246: Add OpenTelemetry helper library
- b2e93d9c3: Validate deploy flags in non-TTY environments
- b4c9439c4: add Github attempt number to getCIMetadata
- 6211a4aea: Only report non-200 statuses on GraphQL errors
- 8f5ac815e: Remove dev preview enabled flickering status
- f1a774c78: Notify theme/theme extension updates when the workers have gone idle
- 1914affaf: Fix pnpm shopify upgrade for workspaces
- 8d3578b87: Fix internal server error issue in the
shopify theme devcommand - 6ab0ce1a8: Include Request ID in error message
- d230b8773: - Enable dev preview mode on startup.
- Add dev log footer shortcut to toggle dev preview mode on/off.
- Disabke dev preview mode when exit
- 3c88932af: Fix loading of custom fonts
- c4396fd58: Make commands pop with magenta coloring
- 91e7a1fd8: output: pass logLevel to Logger
- 598812ca0: Introduces a dangerous confirmation prompt which requires a specific string input. This is used to grab the user's intention about a particularly dangerous operation.
- 934c53968: Add scrollbar to prompts
- a17e43672: Implement Unified Deployments
- a156c8b7b: Display infoTables with a single column and custom bullets
- f32c66bf6: Display dev preview warn message running dev command
- cf52851b7: Remove automatic key generation for select prompt choices
- 2afacc5e1: Dev preview is not automatically enabled/disabled when running the commands dev and deploy
- 48f5934d7: Remove limit of 25 items per select prompt
- 0705bc30f: Remove dates from dev and deploy logs
- 9311df3a7: Fix log line wrapping so line sections don't wrap
- 6a1b88228: Improve error message on non-tty when prompting for a key press
- f0adf0651: Improve Cloudflare errors
- 64f0d4821: Show a warning when passing a flag witn npm without the -- separator
- 029b49795: Keep showing the footer when running dev with extension only apps
- 7d512e1b0: Fix image_url on data attributes
- 2a1cfc206: The status of registered, but unreleased, CLI-managed extensions in the deploy confirmation prompt are based on their relation to the active app version (or a blank slate if there's no active version)
- 99df79caf: Add GitDiff component for showing diffs in confirmation prompts
- ad3894aea: Fix an issue in
shopify theme devandshopify app devthat was affecting image loading on local servers - 9bb98c029: Remove image proxying through local server to enable proper functioning of Liquid filters
- ca2461e94: Fix theme dev re-authentication
- 4ded88051: Show extensions as disabled during generation when they have reached their limit
- 99fc03fbc: Fix an issue in
shopify theme devthat was affecting asset loading on local servers, in some shops - e217b34eb: Add React deduplication plugin for ESBuild & extensions
- ad3894aea: Fix an issue in
shopify theme devandshopify app devthat was affecting image loading on local servers - ca2461e94: Fix theme dev re-authentication
- 4ded88051: Show extensions as disabled during generation when they have reached their limit
- 162504891: Introduce the
--notifyflag in the shopify app/theme dev commands - 9de04da4d: Introduce
.jpegsupport for theme app extensions - 1c8afb7f4: lookupMimeType and setMimeTypes using mrmime
- 151684a25: - Improve rule for lazy loading to prevent developers from overusing it
- Introduce
--update-docsflag to synchronously update Theme Check resources (objects, filters, and tags)
- Introduce
- 01988114d: Add support for Google Cloud Shell
- 3169c1e44: Introduce partial support for --no-color mode
- d9ef6c3f6: Add support to display an empty value when the input in configured to allow empty values
- 33881af95: fixes theme preview for new shopify cdn url format
- 2729e3784: Fix autocomplete height resize when items are split in groups
- 3b1da7747: Fix unavailable constant reference in theme dev
- a7c1eabeb: Add support for theme app extensions in Spin
- cc37858fb: Disable concurrent output component in a non tty terminal
- 1707ef75a: Set current CLI3 version as the version used by the cli-ruby API requests
- 94d197f63: Display clear error message when prompting fails due to non-TTY terminal
- 9e4c97b52: Add abortSignal to async ui function parameters
- f95e3a1d5: Do not proxy /localization and /cart/ requests
- 37b53a5be: Install exact versions with NPM by default
- beda7c241: Fix peer dependency resolution issue with npm
- 07d0be690: Fix localhost as host to run the library get port please
- 6663b3a8f: ciPlatform: return metadata from environment variables
- 069e38ecf: Fix graphql query for products to only retrieve published products
- 1c8afb7f4: lookupMimeType and setMimeTypes using mrmime
- d9ef6c3f6: Add support to display an empty value when the input in configured to allow empty values
- cc37858fb: Disable concurrent output component in a non tty terminal
- 6663b3a8f: ciPlatform: return metadata from environment variables
- 069e38ecf: Fix graphql query for products to only retrieve published products
- 162504891: Introduce the
--notifyflag in the shopfiy app/theme dev commands - 151684a25: - Improve rule for lazy loading to prevent developers from overusing it
- Introduce
--update-docsflag to synchronously update Theme Check resources (objects, filters, and tags)
- Introduce
- 01988114d: Add support for Google Cloud Shell
- a7c1eabeb: Add support for theme app extensions in Spin
- 3169c1e44: Introduce partial support for --no-color mode
- beda7c241: Fix peer dependency resolution issue with npm
- f95e3a1d5: Do not proxy /localization and /cart/ requests
- 1dd35b0b2: Enable environments for themes
- e85f718cd: Use
-eas an alias for --environment and remove the current one for --theme-editor-sync - e6753f4ed: Upgrade Ink to 4.0.0 which is pure ESM and uses React 18
- 645b085b8: Render upgrade warning if Partners API returns deprecation dates
-
da01d3595: Send environment flags to analytics
-
db5981a1e: Clean errors related to metrics requests on theme dev
-
7f8a9436d: Add log information when graphql requests return an error
-
d2a352442: Added 2 new utilities on the git module:
- git.ensureIsClean(directory?: string): Promise: If the .git directory tree is not clean (has uncommitted changes) it throws an abort error.
- git.isClean(directory?: string): Promise: Returns true if the .git directory tree is clean (no uncommitted changes).
-
25fc42ae2: Fix: Run ruby with shopify bin file as an argument
-
fe32fb789: Fix issue with dev footer and resizing the terminal
-
4d5cff225: Fix issue with unicode characters not being displayed correctly in log output
-
a4b0953d9: Fix visual bug appearing when pressing enter while tasks are running
-
6735253e6: Adopt the CLI UI kit in the
shopify theme devcommand -
d6f278863: Integrate Theme App Extension output with the new UI Kit
-
ddb967914: Fix log from api responses for node version that donnot support Headers type
-
c3d5ce5e6: Fix layout width for very narrow terminals
-
4bb549840: Fix introspection URL cache
-
b2e066fc0: Fix error by installing gems in local folder instead of system folder
-
9c253511e: Do not inject hot-reload code into web-pixels-manager sandbox
-
657593b1a: Fix run dev with theme app extension and spin
-
ce1457036: Resolve renderTasks with the value of context
-
163df5e9a: Add default value option to renderConfirmation prompt
-
b3ea29a21: Fix prompts not showing the question in short terminals
-
2ca5b35d8: Add UI Kit documentation
-
067199cf6: Pass development theme from CLI 3’s to CLI 2’s local storage
-
7153dff92: Cut long host names for development theme naming
- e85f718cd: Use
-eas an alias for --environment and remove the current one for --theme-editor-sync - e6753f4ed: Upgrade Ink to 4.0.0 which is pure ESM and uses React 18
- 645b085b8: Render upgrade warning if Partners API returns deprecation dates
- da01d3595: Send environment flags to analytics
- 6735253e6: Adopt the CLI UI kit in the
shopify theme devcommand
- ce1457036: Resolve renderTasks with the value of context
- 2ca5b35d8: Add UI Kit documentation
- ddb967914: Fix log from api responses for node version that donnot support Headers type
- 7153dff92: Cut long host names for development theme naming
- 9c253511e: Do not inject hot-reload code into web-pixels-manager sandbox
- 1dd35b0b2: Enable environments for themes
- db5981a1e: Clean errors related to metrics requests on theme dev
- 7f8a9436d: Add log information when graphql requests return an error
- fe32fb789: Fix issue with dev footer and resizing the terminal
- 4d5cff225: Fix issue with unicode characters not being displayed correctly in log output
- a4b0953d9: Fix visual bug appearing when pressing enter while tasks are running
- d6f278863: Integrate Theme App Extension output with the new UI Kit
- c3d5ce5e6: Fix layout width for very narrow terminals
- b3ea29a21: Fix prompts not showing the question in short terminals
- 067199cf6: Pass development theme from CLI 3’s to CLI 2’s local storage
- 25fc42ae2: Fix: Run ruby with shopify bin file as an argument
- b2e066fc0: Fix error by installing gems in local folder instead of system folder
- 657593b1a: Fix run dev with theme app extension and spin
- 999a2fc79: For the embedded cli-ruby the dependencies were moved from the gemspec to the Gemfile
- b61c5972c: Speed up app dev by running web requests in parallel
- d44250676: Fixed problem with theme app extension server in spin
- c8e75ac24: Added windows gem depencies to embedded cli-ruby
- fb22cb013: Remove theme directory confirmation during tests and make confirmation dialogue respect
SHOPIFY_CLI_TTY. - 159df5d07: Embedded cli-ruby opt-in by default. Use SHOPIFY_CLI_BUNDLED_THEME_CLI=1 in case of problems with the embedded version.
- 2def6f113: Use app host for frontend url in spin when available
- ef3846d91: Do not inject hot-reload code into web-pixels-manager sandbox
- 3a75ed0a7: Remove
eshortcut to environments flag to avoid conflicts - d2adeb5ec: Extract the ownership of host themes to the CLI3
- 4b0cc57ce: Theme bundling is now an opt-in feature
- f732207fa: Fix embedded Ruby CLI (remove Gemfile.lock)
- b6f93cfa7: Use bundled Ruby CLI by default
- 2203d4e6f: Fix theme issues with bundler and ruby version managers
- 9d9480341: Add developer experience preview for JavaScript functions
- 7c0b13944: Fix Banner potentially crashing on very narrow terminals
- 7ca9a667d: Fix Ruby version for running CLI with Homebrew installs
- cfb4b7f68: Improve output of preview instructions in dev command
- 91e15fed4: UI Kit UX improvements
- 9e74a9fc0: Send an app/uninstalled webhook to the app when the user selects a different app, to force the app to clean up the store's database entry
- 1661f80a2: Various copy improvements
- ae22dfbaf: Theme commands run using embedded CLI2
- 7734a7ed3: Add contributing guide for UI Kit
- 5ba869fb2: Extract the ownership of development themes
- 228328a6d: Remove old
uimodule from cli-kit exports - c30eb6978: Rename experimental presets feature to environments
- f4d5fb1a8: Replace the UI of all tasks renderers and remove listr2 as a dependency
- afe541577: Adopt the CLI UI kit in the
shopify theme packagecommand - 91a44020b: Warn the user if there are more than 25 apps in app selection prompt
- a5224543b: Fix issue with CLI2 task output not being rendered correctly inside the output from the dev command
- 3ddd21dba: Add better TypeScript support when formating files with the fs module by explicitly setting the parser to "typescript" in the prettier config. Fixes issues where the babel parser was not able to process JSX in TypeScript files.
- d81271abd: Fix performance import for Node 14
- c2a7c17e0: Refresh command UIs with newly implemented Ink components
- 50c0b2cd3: - Adopt CLI UI kit on
shopify theme deletecommand- Introduce the
pluralizeAPI on@shopify/cli-kit/common/string
- Introduce the
- a4f78e95f: Update 'pathe' to 1.0.0
- 2aa5c07aa: Fix output for pnpm commands with parameters
- 1a482191a: Improve the DX of the
shopify theme listcommand, by adopting the CLI UI kit
- 9eb807bf7: Add confirmation summary when deploying your app to Shopify. This will show new extensions, updated extensions and extensions which are missing locally. You can pass
--forceto the deploy command to skip this prompt.
- eee1293ef: - Introduce REST Admin API client on
@shopify/cli-kit- Improve the DX of the
shopify theme opencommand, by adopting the CLI UI kit
- Improve the DX of the
- 5e7474fab: CLI2 version pumped to 2.34.0
- 39315c3d0: Bump theme-check to version 1.14.0
- a8489366: Bumped CLI2 to 2.33.1.
- 00de42e8: Add Text Prompt component
- 80c6638c: Add Tasks component that displays a loading bar while async tasks are running
- dcf53ece: Add support in spin to set the flag store with only the store name
- ba91a2da: Fix terminal links adding a zero-width character
- 23b1cc84: Add timing information to verbose logs
- 2ac83ce6: Fix error handling on session refresh
- 737ca469: Remove logs functionality
- aeca53c6: Upgrade CLI 2.0 and theme-check dependencies
- b549291a: Update @oclif/core to 1.21.0
- 06b6b00d: Allow passing a filter function to autocomplete prompts
- eaf98706: - Refresh token if possible, fallback to full login when it's not possible
- Parallelize access token refreshes
- d12ece22: Add new single select prompt to the UI library
- 3b37c679: Enable password flag for theme dev
- 32bbe23d: Remove the version export from the @shopify/cli-kit module and merge its functions into @shopify/cli-kit/node/node-package-manager
- 0d8ac8c9: Not show a message when we truncate the logs file
- ab76be51: Add 'wdm' to bundled CLI 2.x Gemfile
- a6a3f2b4: Redirect extension output messages to concurrent output UI component
- ca8141bc: Fix CLI not killing Node processes after quitting
devon Windows
- 78196a78: Improve text contrast of UI kit components and introduce several new text tokens
- 7e5c492a: Fix errors not being displayed properly when coming from processes rendered concurrently
- d47a6e80: Improve success message style in create-app command
- a9d4be9e: Generate creative suggested names for new themes
- aca90638: Removed unnecessary line breaks in concurrent output
- cb0990df: Fixed no organization error formatting
- c15ad5df: Rename port to tcp and export its API from the module @shopify/cli-kit/node/tcp instead of @shopify/cli-kit
- 1ee1cfd1: Expose the semver API from the @shopify/cli-kit/node/semver and improve the function semantics
- e0b5c20b: Update the version of the Ruby CLI
- 6de19ebd: Move haiku's exported logic into the @shopify/cli-kit/common/string and @shopify/cli-kit/node/fs modules and remove the export from @shopify/cli-kit
- 6c0cd13d: Polish log truncation process
- 7035d36b: Fixed third party errors formatting issue
- 5cda6300: Enable external access to cli inside a spin instance
- e4352f2e: Do not report handled tunnel plugin errors to Bugsnag
- c906187f: Add backticks surrounding command tokens
- 3f285ff9: Fix homebrew upgrade to handle shopify-cli package
- 96d5b175: Enable experimental presets feature for apps and themes
- 4bd05555: Add experimental preset flag for pre-specifying command line flags
- 0a8ee2a3: Document how to style error messages
- efa5b071: Refresh theme dev session every 90 minutes
- 7bb5c23f: Add ensureAuthenticatedThemes helper for session
- b4dafa4f: Add timestamps to logs and introduce first UI kit components
- 65625f47: Send a new environment variable to apps in dev command with the spin store domain.
- ef42fda6: Improve error outputs by using the new Banner component
- 514f2cb5: Support git 2.28 or earlier when initializing a repository
- 1455ee44: Improve how concurrent processes output looks
- 0d674d64: Output messages with partners urls fixed when running against an spin instance
- 483318aa: Create a new Oxygen service for interacting with Oxygen related services.
- dac186b2: Removing unnecessary calls to enqueue and check compilation status
- 5617050a: initializeRepository now defaults to 'main' as initial branch.
- 5703ce9b: Cloud environment checking was not working properly so wrong authentication method was used
- fc4d6c58: Removed unused fields from FunctionSet mutation
- ca6c7295: React types dependency version should be overwritten when generating React Typescript extensions
- d460e738: Add the
app generate schema <function-name>command
- 9f7d90d9: Add dev, build, deploy and another additional baseline instrumentantion
- 1dba11ec: Support upgrade of a globally installed CLI
- 81d3ca50: Fix authentication issue when token is expired and invalid/revoked
- a225e415: - cli-kit:
- Added additional Git functionality for commits, generating .gitignore templates, and ensuring commands are run in a Git project.
- Added new Oxygen service type for interacting with the Oyxgen service
- New method for creating readable file streams
- create-hydrogen
- Added support for initializing a local Git repository when you create a new Hydrogen project
- 5336b01f: Added support for extension development server to pass permissions metadata about the parent app to extension host systems
- 2239cad9: -
@shopify/cli-kit- Add support to partners tokens in theexecCLI2function@shopify/app- Add support to theme app extensions in theapp devcommand
- a979c0de: Avoid the loosing of terminal cursor when using crtl+c with and active list prompt
- afa808cb: The overriden command name is correctly used
- 454641be: Allow running shopify installed globally instead of npm/yarn/pnpm shopify
- 79508f56: Don't allow the log file to grow too much
- 922c204e: New Result type for handling errors
- ddbf7ee4: Add new authentication method for cloud environments
- 38dedc05: Fix getRandomPort retries
- f04ec835: Fix store initialization for Homebrew (project version error)
- b23e0461: Add theme info command
- 4c8853f1: Use hooks to communicate with ngrok plugin
- 08c42c45: Use the Ruby bin directory from environment variable when provided (to fix homebrew issues)
- c7137a3b: Grouping extension types in scaffold select type prompt
- db4e6089: Releasing extensions binary in an automatic way
- 79df925d: Add GraphQL endpoint to get Partners URLs
- 79df925d: Add new fields to app cache: updateURLs and newApp
- 03bd5f28: Added
web-envcommand to show and generate .env files without erasing existing ones
- 18717ad5: Rename the environment variable SHOPIFY_CONFIG to SHOPIFY_ENV because it's more representative of its usage
- 29f46e8f: Make inquirer default for inputs
- bba213f9: Shopify Functions identifiers have been changed to ULIDs. Existing projects will be updated during the next deploy.
- 59d56a40: Only show errors from CLI 2 once
- 073e514c: Validation that port used for receiving autentication token from browser is not already in use
- d9351df4: Use a custom list of safe nouns and adjectives to generate default names for apps and extensions
- dabc4bab: Refactor rejection tests to follow recommended implementation by Vitest
- 0da6c7e8: • Run CLI2 commands from passed-in directory, defaulting to current working directory • Fill in flags for theme check • Add --path to theme check • Add --verbose to theme check
- 08366831: Better logging: • include Prompt and List input/output • distinguish commands via UUID and log lines for command start/finish • use a command line flag to specify log stream to view (cli, create-app, create-hydrogen)
- feae2499: Fix support for using a private template repo when git credentials are not setup
- 19ab3f99: Report 5xx reponses coming from the Partners' API as aborts
- e89dfa81: • Update Ruby CLI to latest • Fix: Await Ruby subprocess • Add path flag to init for better development flow • Add verbose flag to see more output from the Node CLI • Set up logging and CLI-kit store separately for the theme CLI
- f7708fcc: Replace fastify/http-proxy with node-http-proxy to support Node < 17
- 86b04187: Exit without error message on deliberate user actions
- d17770e8: Massage error stacktraces to be properly formatted on Bugsnag
- d17770e8: Not report unhandled errors that go straight to the Node runtime
- 740f73ac: Added a retrying implementation to the method that obtains a random local port. Occasionally that third party logic failed in the middle of the execution of a command and abort the process. Running the command for a second time solved that temporary problem
- de8ee02d: [FEATURE] Add query to fetch shop by domain
- 45f0f0b9: Bump theme-check version
- e2e8b4db: Fix identity token validation which is requiring a new login every time
- dbcffdbb: Fix issue when exchanging an identity token fails
- 022a4e24: Internal: build cli-kit using tsc instead of rollup+esbuild
- e81e52b1: Report error events
- c16035f1: Fix post auth screen styling
- 61f595df: Fix an issue that will force the users to re-login when the token expires
- 87f7843f: Show validation errors when deploying UI extensions
- 8ff4e3d7: Fix runCreateCLI's detection of the executable index
- 168bb4c6: Add total time to analytics reports
- 0a9dbc63: Fix path outputs for the working directory
- 2d8e4458: Log Listr task titles to logfile
- a6ea9c8d: Fix shopify upgrade
- 822d0fd3: Move archiver to @shopify/node/archiver and export it from the package.json
- bf8137c2: Save session to local storage when secure storage (keychain) is not available
- e650b499: Add project type to analytics reports
- 3360289d: Compile function module before deploying function to the registry
- 2a666db7: Fix the formatting of errors' next steps not respecting the line breaks
- 7f32e9ac: Add an interface to delete the global store
- 7f32e9ac: Make sure the user has a partner organization associated to the session
- 5d422ea9: - Use a shallow repo clone to speed up cloning template repos
- Display progress of git clones
- d73ea66a: Ask to reuse dev config if it's the first time deploying
- 45866b2a: include apiVersion from toml when deploying a function
- 3c9519fa: Improve authentication completion screen
- 0550cb31: Gracefully handle the scenario where the given SPIN_INSTANCE is invalid or non-existing
- fd254893: Add additional verbose logs
- cc4c0151: Simplify query complexity when fetching organizations
- 84438079: Add logging to file and command to access logs
- fa518a0d: Add analytics helper to report events
- fd10fc01: Add a confirmation prompt before opening the browser to continue auth
- 0243890b: Fix function appBridge variables not being set during GraphQL mutation
- cb1caa7c: Improve create app error message when using an invalid template flag value
- df0d0347: Use inquirer with SHOPIFY_USE_INQUIRER
- 6657a57c: Stop passing configuration when deploying a function
- eb915dee: Loose version requirements to help dependency managers dedupe dependencies
- 85ee088d: Add a utility function to know whether Git is present in the environment
- 2ecbff43: Fix issues with windows being reported as unsuported platform
- a750e67c: Improve dependency upgrade messages to leverage new shopify upgrade command
- c3b711ec: Improve Ruby Bundler upgrade message
- 99378ca0: Push dependency manager detection into cli-kit
- 8f82bd36: Fix lookupTunnelPlugin on Windows
- ae3823c8: Abort the execution if prompts are attempted in a non-interactive terminal
- 8f82bd36: Add pathToFileURL helper
- c383ed42: Gracefully handle revoked tokens
- 604d7d97: Fix some unhandled promises and errors
- e05749dc: Adds format to the @shopify/cli-kit
filemodule that formats a file content using prettier. - 89a48ba9: Helpers to check ruby version, analytics enabled and verbose mode
- 1f45ddc4: New module called
vscodefor integrating with the user's VSCode editor. The initial utilities are focused on determining if the user is using VSCode and adding recommended extensions to the project. - 8c690cca: Add generator for haiku-style names
- 11d09f7f: Encourage upgrading if not up-to-date
- 783a3714: Relativize path tokens before printing them
- e12c82b3: Fixed error executing CLI connected to a spin instance using SPIN_INSTANCE environment variable
- cb8e2c25: Output stderr in bold instead of prefacing with scary ERROR
- 1f10093b: Add support for tokenized messages in errors
- 8de7f95d: Fix an issue that causes releases not to pick the latest version of the CLI packages
- 1e4d024e: Fixed randomly misfunction for detecting Fatal error types
- 27677c2d: Added support for apps_next beta flag when creating apps
- Fix create-app not using 3.0.3
- c01cd9a5: Supports updated template names from the hydrogen monorepo. The
parseRepoUrlhelper now includes the fullhttpaddress in the returns object. - 9d324502: Add locale configuration to checkout_ui_extensions
- Bump to 3.0.0
- 19e343ea: Add support to dev checkout_ui_extension
- eaf69a92: Add Italic output format Store app title from Partners API
- 5ed34580: Default option when overwriting project files is now "No"
- 87e51326: Report errors coming from child processes as abort errors
- 87e51326: Output the sub-processes that we execute when the user invokes the CLI with --verbose
- b10ddafc: Output requests' HTTP headers when the user invokes the CLI with --verbose
- 1fb2da6c: Fix uhandled errors not being treated as bugs
- 31b75488: Derive app name from package.json, not TOML config
- 4170ac8e: Improve copies related to
dev - 4170ac8e: Add new
completedhelper to output
- Make envfile a dependency to mitigate bundling issues
- 0d2e8e50: Allow ui.Question to accept preface string
- 739e8e9d: Add password type for UI Question
- c95660a6: Add dotenv module that provides utility functions to read and write .env files
- f7e74d33: Retrieve only non-archived stores
- 56b31022: Fix the installation of NPM packages that was failing because there were not awaiting the Promise
- 30daa213: Add a utility function to install NPM packages recursively
- 07bcb005: Add a utility functions for adding NPM dependencies to a project
- ba003f7b: Automatically make stores non-transferable when selecting them for
dev - b00ac480: Remove appType prompt, add createAsNew prompt
- c6a9450b: Add support to scaffold function extensions
- 70d8d50d: Add homeDir helper to 'os' Remove tunnel
- 9cb99f12: Add new UI selection type: autocomplete
- 882e54e6: Improve validation of --api-key and --store flags for dev
- 488c06a: Added an interface to shell out to the Ruby CLI
- f156c37: - New
githubmodule for retrieving latest releases of a given github repository and for parsing github repository URLs.- New field in select prompts
resultfor formatting a value after submission.
- New field in select prompts
- 5763a76: Determine terminal coloring vs monochrome globally
- df1c523: Re-authenticate if Identity returns an invalid grant error
- 8e2c3d3: Improve the error handling to not treat invalid commands as bug errors
- Add deploy command
- Import ngrok dynamically
- e2e working
- Some fixes
- Get workflows working e2e
- Remove unnecessary dependencies
- Add .gitignore to the app template
- Fix create-app fixing the wrong dependency of @shopify/app
- Some fixes with external packages
- Make keytar a devDependency to bundle it with Rollup
- Version 0.33.2
- e1b7b31: Added complete Authentication flow
- Fix the detection of the package manager when creating an app
- e701cf5: Add a GraphQL client to communicate with Admin and Partners API
- 563f225: Add utility to scaffold projects from a Liquid-based template
- Add scaffold to the package.json's scripts section of the app template
- New CLI version
- c31bb1e: Add a method that returns true if the CLI is run from a Shopify environment (local or cloud)
- cb12e51: Add utility for fetching the current user
- a999af0: Add utility to fetch the latest version of a given NPM package
- bed0951: Add a utility to obtain the dependency manager used to run the create workflow
- Fix prompts not working when bundling the code
- b07c608: Rename @shopify/core to @shopify/cli-kit and finish up the create-app workflow
- Add @shopify/support and fix dependencies' setup
- Updated dependencies
- @shopify/support@0.5.2
- Draft the CLI interface
- Updated dependencies
- @shopify/cli-support@0.3.0
- Move from Lerna to changeset
- Updated dependencies
- @shopify/cli-support@0.2.0