Shopify / cli

Build apps, themes, and hydrogen storefronts for Shopify
https://shopify.dev
MIT License
405 stars 124 forks source link

Remove hardcoded `NODE_ENV=development` from `app dev` #4236

Closed muchisx closed 1 day ago

muchisx commented 1 month ago

Please confirm that you have:

In which of these areas are you experiencing a problem?

App

Expected behavior

When setting a different NODE_ENV value via for example a .env file. The value won't ever be taken into account because the CLI always hardcodes the value of NODE_ENV instead of defaulting to the value the user has set, or if any is set, then I see it okay to use development as fallback.

This is necessary for when testing different environments while local development before commiting code.

Actual behavior

The value used as NODE_ENV is always development regardless of what the user needs it to be.

I have a feeling is related to this line ๐Ÿ‘‡๐Ÿผ https://github.com/Shopify/cli/blob/3ad543d74cba89a9746cd8a1b6420a0ff288bc85/packages/app/src/cli/services/dev/processes/web.ts#L133

Verbose output

- User-Agent: Shopify CLI; v=3.63.1
 - Keep-Alive: timeout=30
 - Sec-CH-UA-PLATFORM: win32
 - Content-Type: application/json

2024-07-24T17:07:07.656Z: Request to https://partners.shopify.com/api/cli/graphql completed in 572 ms
With response headers:
 - cache-control: max-age=0, private, must-revalidate
 - content-type: application/json; charset=utf-8
 - etag: W/"dd0677410b6f7528aaede2e34d449874"
 - x-request-id: a0f613fb-da26-497c-abc9-d4701dc6c564-1721840831

12:07:07 โ”‚              app-access โ”‚ 2024-07-24T17:07:07.671Z: Watching extension: app-access for:
12:07:07 โ”‚              app-access โ”‚ Rebuild and Redeploy Paths:
12:07:07 โ”‚              app-access โ”‚
12:07:07 โ”‚              app-access โ”‚
12:07:07 โ”‚              app-access โ”‚ Redeploy Paths:
12:07:07 โ”‚              app-access โ”‚    D:/Projects/Miguel รngel - Work/Miguel รngel x Programming/SouthFlorals -
Shopify/nuflorist-official/shopify.app.nuflorist-dev-delta.toml
2024-07-24T17:07:07.825Z: Request to https://partners.shopify.com/api/cli/graphql completed in 409 ms
With response headers:
 - cache-control: max-age=0, private, must-revalidate
 - content-type: application/json; charset=utf-8
 - etag: W/"56666adf9357de6a69b2ec7e8a6a9875"
 - x-request-id: db2dc736-111a-4473-bc04-83417647eb0f-1721840831

2024-07-24T17:07:07.849Z:
Running system process:
  ยท Command: ruby -v
  ยท Working directory: D:/Projects/Miguel รngel - Work/Miguel รngel x Programming/SouthFlorals - Shopify/nuflorist-official

2024-07-24T17:07:07.894Z:
Running system process:
  ยท Command: bundle -v
  ยท Working directory: D:/Projects/Miguel รngel - Work/Miguel รngel x Programming/SouthFlorals - Shopify/nuflorist-official

2024-07-24T17:07:08.051Z: Request to https://partners.shopify.com/api/cli/graphql completed in 1127 ms
With response headers:
 - cache-control: max-age=0, private, must-revalidate
 - content-type: application/json; charset=utf-8
 - etag: W/"cac5797f0b23bace105e647d10779095"
 - x-request-id: 4cf24af9-6db1-4b74-bd04-240a1ced4bff-1721840831

2024-07-24T17:07:08.064Z: Request to https://partners.shopify.com/api/cli/graphql completed in 808 ms                                                                        
With response headers:                                                                                                                                                       
 - cache-control: max-age=0, private, must-revalidate                                                                                                                        
 - content-type: application/json; charset=utf-8                                                                                                                             
 - etag: W/"dd0677410b6f7528aaede2e34d449874"                                                                                                                                
 - x-request-id: 20a8c038-283a-4221-b8bc-ce475c166fd7-1721840831                                                                                                             

12:07:08 โ”‚         theme-nuflorist โ”‚ Draft updated successfully for extension: theme-nuflorist
12:07:08 โ”‚         theme-nuflorist โ”‚ 2024-07-24T17:07:08.087Z: Watching extension: theme-nuflorist for:                                                                      
12:07:08 โ”‚         theme-nuflorist โ”‚ Rebuild and Redeploy Paths:                                                                                                             
12:07:08 โ”‚         theme-nuflorist โ”‚    D:/Projects/Miguel รngel - Work/Miguel รngel x Programming/SouthFlorals - Shopify/nuflorist-official/extensions/theme-nuflorist/*/*  
12:07:08 โ”‚         theme-nuflorist โ”‚                                                                                                                                         
12:07:08 โ”‚         theme-nuflorist โ”‚ Redeploy Paths:                                                                                                                         
12:07:08 โ”‚         theme-nuflorist โ”‚    D:/Projects/Miguel รngel - Work/Miguel รngel x Programming/SouthFlorals -                                                            
Shopify/nuflorist-official/extensions/theme-nuflorist/locales/**.json                                                                                                        
12:07:08 โ”‚         theme-nuflorist โ”‚    D:/Projects/Miguel รngel - Work/Miguel รngel x Programming/SouthFlorals - Shopify/nuflorist-official/extensions/theme-nuflorist/**.toml                                                                                                                                                                           
12:07:08 โ”‚                   remix โ”‚ prisma:engines binaries to download libquery-engine, schema-engine +397ms
12:07:08 โ”‚                   remix โ”‚ prisma:loadEnv project root found at D:\Projects\Miguel รngel - Work\Miguel รngel x Programming\SouthFlorals -
Shopify\nuflorist-official\package.json +491ms
12:07:08 โ”‚                   remix โ”‚ Environment variables loaded from .env                                                                                                  
12:07:08 โ”‚                   remix โ”‚ prisma:tryLoadEnv Environment variables loaded from D:\Projects\Miguel รngel - Work\Miguel รngel x Programming\SouthFlorals -
Shopify\nuflorist-official\.env +1ms
12:07:08 โ”‚                   remix โ”‚ prisma:getSchema Trying package.json... +2ms
12:07:08 โ”‚                   remix โ”‚ prisma:getSchema prismaConfig {
12:07:08 โ”‚                   remix โ”‚   "packagePath": "D:\\Projects\\Miguel รngel - Work\\Miguel รngel x Programming\\SouthFlorals -
Shopify\\nuflorist-official\\package.json"
12:07:08 โ”‚                   remix โ”‚ } +1ms
12:07:08 โ”‚                   remix โ”‚ prisma:getSchema package.json resolved to null +0ms
12:07:08 โ”‚                   remix โ”‚ prisma:getSchema Trying relative... +0ms
12:07:08 โ”‚                   remix โ”‚ prisma:getSchema Checking existence of D:\Projects\Miguel รngel - Work\Miguel รngel x Programming\SouthFlorals -
Shopify\nuflorist-official\schema.prisma +0ms
12:07:08 โ”‚                   remix โ”‚ prisma:getSchema Checking existence of D:\Projects\Miguel รngel - Work\Miguel รngel x Programming\SouthFlorals -
Shopify\nuflorist-official\prisma\schema.prisma +0ms
12:07:08 โ”‚                   remix โ”‚ prisma:getSchema Found schema at prisma\schema.prisma +0ms
12:07:08 โ”‚                   remix โ”‚ prisma:getSchema relative resolved to prisma\schema.prisma +0ms
12:07:08 โ”‚                   remix โ”‚ prisma:getSchema Reading schema from single file D:\Projects\Miguel รngel - Work\Miguel รngel x Programming\SouthFlorals -
Shopify\nuflorist-official\prisma\schema.prisma +1ms
12:07:08 โ”‚                   remix โ”‚ prisma:getConfig Using getConfig Wasm +1ms
12:07:08 โ”‚                   remix โ”‚ Prisma schema loaded from prisma\schema.prisma
12:07:08 โ”‚                   remix โ”‚ prisma:getConfig config data retrieved without errors in getConfig Wasm +18ms                                                           
12:07:08 โ”‚                   remix โ”‚ prisma:getSchema Reading schema from single file D:\Projects\Miguel รngel - Work\Miguel รngel x Programming\SouthFlorals -              
Shopify\nuflorist-official\prisma\schema.prisma +2ms                                                                                                                         
12:07:08 โ”‚                   remix โ”‚ prisma:getConfig Using getConfig Wasm +55ms
12:07:08 โ”‚                   remix โ”‚ prisma:getConfig config data retrieved without errors in getConfig Wasm +2ms                                                            
12:07:08 โ”‚                   remix โ”‚ prisma:getDMMF Using getDmmf Wasm +0ms                                                                                                  
12:07:08 โ”‚                   remix โ”‚ prisma:getDMMF Using given datamodel +0ms                                                                                               
12:07:08 โ”‚                   remix โ”‚ prisma:getDMMF dmmf data retrieved without errors in getDmmf Wasm +70ms
12:07:08 โ”‚                   remix โ”‚ prisma:generator prismaCLIDir D:\Projects\Miguel รngel - Work\Miguel รngel x Programming\SouthFlorals -
Shopify\nuflorist-official\node_modules\prisma +27ms
12:07:08 โ”‚                   remix โ”‚ prisma:generator prismaClientDir D:\Projects\Miguel รngel - Work\Miguel รngel x Programming\SouthFlorals -
Shopify\nuflorist-official\node_modules\@prisma\client +0ms
12:07:08 โ”‚                   remix โ”‚ prisma:generator baseDir D:\Projects\Miguel รngel - Work\Miguel รngel x Programming\SouthFlorals - Shopify\nuflorist-official\prisma    
+0ms
12:07:08 โ”‚                   remix โ”‚ prisma:generator typescriptPath D:\Projects\Miguel รngel - Work\Miguel รngel x Programming\SouthFlorals -
Shopify\nuflorist-official\node_modules\typescript +4ms
12:07:08 โ”‚                   remix โ”‚ prisma:GeneratorProcess prisma:client:generator requiredEngine: libqueryEngine +118ms +199ms
12:07:08 โ”‚                   remix โ”‚ prisma:mergeSchemas Using mergeSchemas Wasm +0ms                                                                                        
12:07:08 โ”‚                   remix โ”‚ prisma:mergeSchemas Using mergeSchemas Wasm +135ms
12:07:08 โ”‚                   remix โ”‚ prisma:mergeSchemas Using mergeSchemas Wasm +74ms
12:07:08 โ”‚                   remix โ”‚ prisma:getGenerators neededVersions {                                                                                                   
12:07:08 โ”‚                   remix โ”‚   "5675a3182f972f1a8f31d16eee6abf4fd54910e3": {                                                                                         
12:07:08 โ”‚                   remix โ”‚     "engines": [                                                                                                                        
12:07:08 โ”‚                   remix โ”‚       "libqueryEngine"                                                                                                                  
12:07:08 โ”‚                   remix โ”‚     ],                                                                                                                                  
12:07:08 โ”‚                   remix โ”‚     "binaryTargets": [                                                                                                                  
12:07:08 โ”‚                   remix โ”‚       {                                                                                                                                 
12:07:08 โ”‚                   remix โ”‚         "fromEnvVar": null,                                                                                                             
12:07:08 โ”‚                   remix โ”‚         "value": "windows",                                                                                                             
12:07:08 โ”‚                   remix โ”‚         "native": true                                                                                                                  
12:07:08 โ”‚                   remix โ”‚       }                                                                                                                                 
12:07:08 โ”‚                   remix โ”‚     ]
12:07:08 โ”‚                   remix โ”‚   }
12:07:08 โ”‚                   remix โ”‚ } +3ms
12:07:08 โ”‚                   remix โ”‚ prisma:getGenerators {
12:07:08 โ”‚                   remix โ”‚   "generatorBinaryPaths": {
12:07:08 โ”‚                   remix โ”‚     "libqueryEngine": {
12:07:08 โ”‚                   remix โ”‚       "windows": "D:\\Projects\\Miguel รngel - Work\\Miguel รngel x Programming\\SouthFlorals -
Shopify\\nuflorist-official\\node_modules\\prisma\\query_engine-windows.dll.node"
12:07:08 โ”‚                   remix โ”‚     }
12:07:08 โ”‚                   remix โ”‚   }
12:07:08 โ”‚                   remix โ”‚ } +43ms
12:07:08 โ”‚                   remix โ”‚ prisma:GeneratorProcess prisma:loadEnv project root found at D:\Projects\Miguel รngel - Work\Miguel รngel x Programming\SouthFlorals -  
Shopify\nuflorist-official\node_modules\.prisma\client\package.json +285ms +29ms
12:07:08 โ”‚                   remix โ”‚ prisma:GeneratorProcess prisma:loadEnv project root found at D:\Projects\Miguel รngel - Work\Miguel รngel x Programming\SouthFlorals -  
Shopify\nuflorist-official\node_modules\.prisma\client\package.json +60ms +60ms
12:07:09 โ”‚                   remix โ”‚ prisma:GeneratorProcess child exited with code null on signal SIGTERM +34ms
12:07:09 โ”‚                   remix โ”‚ prisma:GeneratorProcess child exited with code null on signal SIGTERM +20ms                                                             
2024-07-24T17:07:09.221Z: Killing process 22656: npx prisma generate
2024-07-24T17:07:09.231Z: Closing reverse HTTP proxy                                                                                                                         
2024-07-24T17:07:09.232Z: Closing the UI extensions dev server...                                                                                                            
12:07:09 โ”‚              extensions โ”‚ 2024-07-24T17:07:09.232Z: Closing locale file watching for extension with ID 13af7f9e-4664-43a5-87e1-e0e971ca20fb
12:07:09 โ”‚              extensions โ”‚ 2024-07-24T17:07:09.234Z: Closing file watching for extension with ID dev-7ac7afe3-222e-4467-a133-88f8ce82accc
12:07:09 โ”‚              extensions โ”‚ 2024-07-24T17:07:09.234Z: Closing file watching for extension with ID 30e2c2ec-e6a9-4846-9e02-7394318b88c4
12:07:09 โ”‚              extensions โ”‚ 2024-07-24T17:07:09.241Z: Locale file watching closed for extension with 13af7f9e-4664-43a5-87e1-e0e971ca20fb                           
12:07:09 โ”‚              extensions โ”‚ 2024-07-24T17:07:09.245Z: File watching closed for extension with dev-7ac7afe3-222e-4467-a133-88f8ce82accc                              
12:07:09 โ”‚              extensions โ”‚ 2024-07-24T17:07:09.249Z: File watching closed for extension with 30e2c2ec-e6a9-4846-9e02-7394318b88c4
2024-07-24T17:07:09.292Z: Sending "Partners" GraphQL request:
  mutation DevelopmentStorePreviewUpdate($input: DevelopmentStorePreviewUpdateInput!) {
    developmentStorePreviewUpdate(input: $input) {
      app {
        id
        developmentStorePreviewEnabled
      }
      userErrors {
        message
        field
      }
    }
  }

With variables:
{
  "input": {
    "apiKey": "5e003fb725d38e553e91887bbbdf4a3f",
    "enabled": false
  }
}

With request headers:
 - User-Agent: Shopify CLI; v=3.63.1
 - Keep-Alive: timeout=30
 - Sec-CH-UA-PLATFORM: win32
 - Content-Type: application/json

12:07:09 โ”‚                   remix โ”‚ prisma:tryLoadEnv Environment variables not found at null +7ms                                                                          
12:07:09 โ”‚                   remix โ”‚ prisma:tryLoadEnv Environment variables loaded from D:\Projects\Miguel รngel - Work\Miguel รngel x Programming\SouthFlorals -           
Shopify\nuflorist-official\.env +0ms                                                                                                                                         
2024-07-24T17:07:09.301Z: Request to https://partners.shopify.com/api/cli/graphql completed in 1658 ms                                                                       
With response headers:                                                                                                                                                       
 - cache-control: max-age=0, private, must-revalidate                                                                                                                        
 - content-type: application/json; charset=utf-8                                                                                                                             
 - etag: W/"dd0677410b6f7528aaede2e34d449874"                                                                                                                                
 - x-request-id: 4542d3de-d091-47c9-8ae9-53f8898b30b3-1721840832                                                                                                             

12:07:09 โ”‚                   remix โ”‚ prisma:cli:bin Execution time for executing "await cli.parse(commandArray)": 1133.4827 ms +263ms                                        
12:07:09 โ”‚ checkout-datetime-block โ”‚ Draft updated successfully for extension: checkout-datetime-block                                                                       
12:07:09 โ”‚                   remix โ”‚
12:07:09 โ”‚                   remix โ”‚ โœ” Generated Prisma Client (v5.15.1) to .\node_modules\@prisma\client in 112ms
12:07:09 โ”‚                   remix โ”‚
12:07:09 โ”‚                   remix โ”‚ โœ” Generated Prisma Enum Generator to .\app\constants\prisma-enums.ts in 22ms
12:07:09 โ”‚                   remix โ”‚
12:07:09 โ”‚                   remix โ”‚ โœ” Generated Prisma Json Types Generator (3.0.4) to .\prisma in 244ms
12:07:09 โ”‚                   remix โ”‚
12:07:09 โ”‚                   remix โ”‚ Start using Prisma Client in Node.js (See: https://pris.ly/d/client)
12:07:09 โ”‚                   remix โ”‚ 
12:07:09 โ”‚                   remix โ”‚ import { PrismaClient } from '@prisma/client'
12:07:09 โ”‚                   remix โ”‚ const prisma = new PrismaClient()
12:07:09 โ”‚                   remix โ”‚ ```
12:07:09 โ”‚                   remix โ”‚ or start using Prisma Client at the edge (See: https://pris.ly/d/accelerate)
12:07:09 โ”‚                   remix โ”‚ ```
12:07:09 โ”‚                   remix โ”‚ import { PrismaClient } from '@prisma/client/edge'
12:07:09 โ”‚                   remix โ”‚ const prisma = new PrismaClient()
12:07:09 โ”‚                   remix โ”‚ ```
12:07:09 โ”‚                   remix โ”‚
12:07:09 โ”‚                   remix โ”‚ See other ways of importing Prisma Client: http://pris.ly/d/importing-client
12:07:09 โ”‚                   remix โ”‚
12:07:09 โ”‚                   remix โ”‚ โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”
12:07:09 โ”‚                   remix โ”‚ โ”‚  Deploying your app to serverless or edge functions?        โ”‚
12:07:09 โ”‚                   remix โ”‚ โ”‚  Try Prisma Accelerate for connection pooling and caching.  โ”‚
12:07:09 โ”‚                   remix โ”‚ โ”‚  https://pris.ly/cli/--accelerate                           โ”‚
12:07:09 โ”‚                   remix โ”‚ โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜
12:07:09 โ”‚                   remix โ”‚
12:07:09 โ”‚                   remix โ”‚ prisma:getSchema Trying package.json... +1ms
12:07:09 โ”‚                   remix โ”‚ prisma:getSchema Trying package.json... +0ms
12:07:09 โ”‚                   remix โ”‚ prisma:GeneratorProcess child exited with code null on signal SIGTERM +0ms
12:07:09 โ”‚                   remix โ”‚ prisma:getSchema prismaConfig {
12:07:09 โ”‚                   remix โ”‚   "packagePath": "D:\\Projects\\Miguel รngel - Work\\Miguel รngel x Programming\\SouthFlorals -
Shopify\\nuflorist-official\\package.json"
12:07:09 โ”‚                   remix โ”‚ } +1ms
12:07:09 โ”‚                   remix โ”‚ prisma:getSchema package.json resolved to null +0ms
12:07:09 โ”‚                   remix โ”‚ prisma:getSchema Trying relative... +0ms
12:07:09 โ”‚                   remix โ”‚ prisma:getSchema Checking existence of D:\Projects\Miguel รngel - Work\Miguel รngel x Programming\SouthFlorals -
Shopify\nuflorist-official\schema.prisma +0ms
12:07:09 โ”‚                   remix โ”‚ prisma:getSchema prismaConfig {
12:07:09 โ”‚                   remix โ”‚   "packagePath": "D:\\Projects\\Miguel รngel - Work\\Miguel รngel x Programming\\SouthFlorals -
Shopify\\nuflorist-official\\package.json"
12:07:09 โ”‚                   remix โ”‚ } +0ms
12:07:09 โ”‚                   remix โ”‚ prisma:getSchema package.json resolved to null +0ms
12:07:09 โ”‚                   remix โ”‚ prisma:getSchema Trying relative... +0ms
12:07:09 โ”‚                   remix โ”‚ prisma:getSchema Checking existence of D:\Projects\Miguel รngel - Work\Miguel รngel x Programming\SouthFlorals -
Shopify\nuflorist-official\schema.prisma +0ms
12:07:09 โ”‚                   remix โ”‚ prisma:getSchema Checking existence of D:\Projects\Miguel รngel - Work\Miguel รngel x Programming\SouthFlorals -
Shopify\nuflorist-official\prisma\schema.prisma +0ms
12:07:09 โ”‚                   remix โ”‚ prisma:getSchema Checking existence of D:\Projects\Miguel รngel - Work\Miguel รngel x Programming\SouthFlorals -
Shopify\nuflorist-official\prisma\schema.prisma +0ms
12:07:09 โ”‚                   remix โ”‚ prisma:getSchema Found schema at prisma\schema.prisma +0ms
12:07:09 โ”‚                   remix โ”‚ prisma:getSchema relative resolved to prisma\schema.prisma +0ms
12:07:09 โ”‚                   remix โ”‚ prisma:getSchema Reading schema from single file D:\Projects\Miguel รngel - Work\Miguel รngel x Programming\SouthFlorals -
Shopify\nuflorist-official\prisma\schema.prisma +0ms
12:07:09 โ”‚                   remix โ”‚ prisma:getSchema Found schema at prisma\schema.prisma +0ms
12:07:09 โ”‚                   remix โ”‚ prisma:getSchema relative resolved to prisma\schema.prisma +0ms
12:07:09 โ”‚                   remix โ”‚ prisma:getSchema Reading schema from single file D:\Projects\Miguel รngel - Work\Miguel รngel x Programming\SouthFlorals -
Shopify\nuflorist-official\prisma\schema.prisma +1ms
12:07:09 โ”‚                   remix โ”‚ prisma:getConfig Using getConfig Wasm +0ms
12:07:09 โ”‚                   remix โ”‚ prisma:getConfig config data retrieved without errors in getConfig Wasm +2ms
12:07:09 โ”‚                   remix โ”‚ prisma:cli:checkpoint runCheckpointClientCheck(): Execution time for getting info: 4.4814000000001215 ms +0ms
12:07:09 โ”‚ checkout-datetime-block โ”‚ 2024-07-24T17:07:09.347Z: Watching extension: checkout-datetime-block for:                                                              
12:07:09 โ”‚ checkout-datetime-block โ”‚ Rebuild and Redeploy Paths:                                                                                                             
12:07:09 โ”‚ checkout-datetime-block โ”‚    D:/Projects/Miguel รngel - Work/Miguel รngel x Programming/SouthFlorals -                                                            
Shopify/nuflorist-official/extensions/checkout-datetime-block/src/**/*.{ts,tsx,js,jsx}                                                                                       
12:07:09 โ”‚ checkout-datetime-block โ”‚                                                                                                                                         
12:07:09 โ”‚ checkout-datetime-block โ”‚ Redeploy Paths:                                                                                                                         
12:07:09 โ”‚ checkout-datetime-block โ”‚    D:/Projects/Miguel รngel - Work/Miguel รngel x Programming/SouthFlorals -                                                            
Shopify/nuflorist-official/extensions/checkout-datetime-block/locales/**.json                                                                                                
12:07:09 โ”‚ checkout-datetime-block โ”‚    D:/Projects/Miguel รngel - Work/Miguel รngel x Programming/SouthFlorals -                                                            
Shopify/nuflorist-official/extensions/checkout-datetime-block/**.toml                                                                                                        
12:07:09 โ”‚                   remix โ”‚ prisma:cli:checkpoint runCheckpointClientCheck(): Execution time for "await checkpoint.check(data)": 33.81010000000015 ms +34ms
2024-07-24T17:07:09.410Z:
Running system process:
  ยท Command: npx prisma generate
  ยท Working directory: D:/Projects/Miguel รngel - Work/Miguel รngel x Programming/SouthFlorals - Shopify/nuflorist-official

2024-07-24T17:07:09.875Z: Request to https://partners.shopify.com/api/cli/graphql completed in 580 ms
With response headers:
 - cache-control: max-age=0, private, must-revalidate
 - content-type: application/json; charset=utf-8
 - etag: W/"57e3286aead8c836e300d2b5a4b4af27"
 - x-request-id: 5f0ea5c8-3277-45d1-8c2f-06970e3fee48-1721840833

2024-07-24T17:07:09.930Z:                                                                                                                                                    
Running system process:                                                                                                                                                      
  ยท Command: npm prefix                                                                                                                                                      
  ยท Working directory: D:/Projects/Miguel รngel - Work/Miguel รngel x Programming/SouthFlorals - Shopify/nuflorist-official                                                  

2024-07-24T17:07:09.932Z: Reading the content of file at node_modules/@shopify/cli/dist/assets/cli-ruby/Gemfile...                                                           
2024-07-24T17:07:09.968Z:                                                                                                                                                    
Running system process:                                                                                                                                                      
  ยท Command: bundle install                                                                                                                                                  
  ยท Working directory: D:/Projects/Miguel รngel - Work/Miguel รngel x Programming/SouthFlorals - Shopify/nuflorist-official/node_modules/@shopify/cli/dist/assets/cli-ruby

2024-07-24T17:07:10.650Z: Obtaining the dependency manager in directory D:\Projects\Miguel รngel - Work\Miguel รngel x Programming\SouthFlorals - Shopify\nuflorist-official...
2024-07-24T17:07:10.678Z: 
Running system process:
  ยท Command: ruby -v
  ยท Working directory: D:/Projects/Miguel รngel - Work/Miguel รngel x Programming/SouthFlorals - Shopify/nuflorist-official

2024-07-24T17:07:10.980Z: Request to https://monorail-edge.shopifysvc.com/v1/produce completed in 281 ms
With response headers:
 - x-request-id: cb78741e-f27e-40fe-8cf0-0181efc9b277

2024-07-24T17:07:10.981Z: Analytics event sent: {
  "command": "app dev stop",
  "time_start": 1721840829904,
  "time_end": 1721840829905,
  "total_time": 1,
  "success": true,
  "cli_version": "3.63.1",
  "ruby_version": "3.1.2",
  "node_version": "20.11.1",
  "is_employee": false,
  "uname": "windows amd64",
  "env_ci": false,
  "env_plugin_installed_any_custom": false,
  "env_plugin_installed_shopify": "[\"@shopify/cli\"]",
  "env_shell": "cmd.exe",
  "env_device_id": "8c1711c89e8273c71d238abf18b181886fcdb1ba",
  "env_cloud": "localhost",
  "env_package_manager": "npm",
  "env_is_global": false,
  "cmd_app_warning_api_key_deprecation_displayed": false,
  "cmd_app_all_configs_any": true,
  "cmd_app_all_configs_clients": "{\"shopify.app.nuflorist-dev-delta.toml\":\"5e003fb725d38e553e91887bbbdf4a3f\",\"shopify.app.toml\":\"d62f497eed926c1c84b7e116b46bb18e\"}",
  "cmd_app_linked_config_used": true,
  "cmd_app_linked_config_name": "shopify.app.nuflorist-dev-delta.toml",
  "cmd_app_linked_config_git_tracked": false,
  "cmd_app_linked_config_source": "flag",
  "cmd_app_linked_config_uses_cli_managed_urls": true,
  "partner_id": 2454299,
  "api_key": "****",
  "project_type": "node",
  "app_extensions_any": true,
  "app_extensions_breakdown": "{\"ui_extension\":1,\"theme\":1}",
  "app_extensions_count": 2,
  "app_extensions_custom_layout": false,
  "app_extensions_function_any": false,
  "app_extensions_function_count": 0,
  "app_extensions_theme_any": true,
  "app_extensions_theme_count": 1,
  "app_extensions_ui_any": true,
  "app_extensions_ui_count": 1,
  "app_name_hash": "e3fd3992b98e7f73d5d2bdb8a50b14bc09e63533",
  "app_path_hash": "dec357907dbd2bdaf4def7d015b208e907e76663",
  "app_scopes": "[\"read_metaobject_definitions\",\"read_metaobjects\",\"read_products\",\"read_shipping\",\"write_metaobject_definitions\",\"write_metaobjects\"]",
  "app_web_backend_any": true,
  "app_web_backend_count": 1,
  "app_web_custom_layout": true,
  "app_web_framework": "remix",
  "app_web_frontend_any": true,
  "app_web_frontend_count": 1,
  "env_package_manager_workspaces": true,
  "cmd_deploy_include_config_used": true,
  "cmd_deploy_config_modules_breakdown": "[\"access_scopes\",\"app_proxy\",\"application_url\",\"auth\",\"embedded\",\"handle\",\"name\",\"pos\",\"webhooks\"]",
  "cmd_deploy_config_modules_updated": "[\"app_proxy\",\"application_url\",\"auth\"]",
  "cmd_dev_tunnel_type": "cloudflare",
  "cmd_dev_urls_updated": true,
  "store_fqdn_hash": "3692420227b97929fe35c729e67eb51115d8b1da",
  "cmd_app_dependency_installation_skipped": false,
  "cmd_app_reset_used": false,
  "cmd_all_timing_network_ms": 14229,
  "cmd_all_timing_prompts_ms": 0,
  "cmd_all_launcher": "npm",
  "cmd_all_topic": "app",
  "cmd_all_plugin": "@shopify/cli",
  "cmd_all_verbose": true,
  "cmd_all_path_override": true,
  "cmd_all_path_override_hash": "dec357907dbd2bdaf4def7d015b208e907e76663",
  "cmd_all_timing_active_ms": -14229,
  "cmd_all_exit": "ok",
  "args": "--verbose",
  "app_name": "nuflorist-shopify-app",
  "store_fqdn": "nuflorist-dev-delta.myshopify.com",
  "env_plugin_installed_all": "[\"@shopify/cli\"]",
  "metadata": "{\"extraPublic\":{},\"extraSensitive\":{}}"
}
2024-07-24T17:07:10.985Z: Completed command app dev

Reproduction steps

  1. Create a simple app with the Remix Template for example: https://github.com/Shopify/shopify-app-template-remix
  2. Set NODE_ENV=production in a .env file.
  3. console.log(process.env.NODE_ENV) anywhere in the app
  4. See it always log development regardless of anything you do

Operating System

Windows 11

Shopify CLI version (check your project's package.json if you're not sure)

3.63.1

Shell

powershell

Node version (run node -v if you're not sure)

20.11.1

What language and version are you using in your application?

Typescript

gonzaloriestra commented 3 weeks ago

Hi! Thanks for creating the issue and sorry for the late response.

I've been checking this, but apparently Remix requires NODE_ENV=development. I've tried to use the actual env var in https://github.com/Shopify/cli/pull/4350 (you can try it with npm i -g @shopify/cli@0.0.0-snapshot-20240820121935), but I'm getting the same linked error...

Why do you need it to be production?

muchisx commented 3 weeks ago

Hi @gonzaloriestra ! thank you for the feedback!

We have internal tools that we gate via this env value, and we wanted to use Vite's mode to check they are properly being gated without the need to do a re-deploy on our hosting provider to check.

But it always comes up as development, I'll try with the snapshot thanks!, but as you said if remix can't even run with that flag set as production then probably it wouldn't still be possible for us

gonzaloriestra commented 3 weeks ago

I see, thanks! I'll ask internally to see if there's a way.

gonzaloriestra commented 1 day ago

Sorry for the late response.

Apparently, vite:dev is not compatible with NODE_ENV=production. More info here: https://vitejs.dev/guide/env-and-mode.html#node-env-and-modes

In case it helps, you can follow the app template deployment docs for instructions on running it in production mode. You can ignore the word 'container' and apply everything locally.

muchisx commented 4 hours ago

@gonzaloriestra Gotcha, I might've missed where they mention vite:dev not being compatible, no biggie, thank you for looking into it and the suggestions!