Skip to content

Commit

Permalink
Skip Oxygen checks when @shopify/remix-oxygen is not installed (Sho…
Browse files Browse the repository at this point in the history
…pify#1137)

* Rename config file

* Extract assertOxygenChecks

* Assert Oxygen checks only in build and dev commands

* Only assert Oxygen checks when remix-oxygen is installed

* Remove type fixes for old versions of Remix

* Changesets
  • Loading branch information
frandiox authored and FrcPpe committed Aug 13, 2023
1 parent 1960fc6 commit 7c25d3d
Show file tree
Hide file tree
Showing 17 changed files with 210 additions and 211 deletions.
5 changes: 5 additions & 0 deletions .changeset/modern-planets-fetch.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
---
'@shopify/cli-hydrogen': patch
---

Skip Oxygen requirement checks of `remix.config.js` when `@shopify/remix-oxygen` is not installed.
5 changes: 4 additions & 1 deletion packages/cli/src/commands/hydrogen/build.ts
Original file line number Diff line number Diff line change
Expand Up @@ -17,10 +17,11 @@ import {resolvePath, relativePath, joinPath} from '@shopify/cli-kit/node/path';
import {getPackageManager} from '@shopify/cli-kit/node/node-package-manager';
import colors from '@shopify/cli-kit/node/colors';
import {
assertOxygenChecks,
getProjectPaths,
getRemixConfig,
type ServerMode,
} from '../../lib/config.js';
} from '../../lib/remix-config.js';
import {deprecated, commonFlags, flagsToCamelObject} from '../../lib/flags.js';
import {checkLockfileStatus} from '../../lib/check-lockfile.js';
import {findMissingRoutes} from '../../lib/missing-routes.js';
Expand Down Expand Up @@ -102,6 +103,8 @@ export async function runBuild({
rmdir(buildPath, {force: true}),
]);

assertOxygenChecks(remixConfig);

await Promise.all([
copyPublicFiles(publicPath, buildPathClient),
build({
Expand Down
4 changes: 2 additions & 2 deletions packages/cli/src/commands/hydrogen/check.ts
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
import Command from '@shopify/cli-kit/node/base-command';
import {resolvePath} from '@shopify/cli-kit/node/path';
import {commonFlags} from '../../lib/flags.js';
import {getRemixConfig} from '../../lib/config.js';
import {getRemixConfig} from '../../lib/remix-config.js';
import {findMissingRoutes, logMissingRoutes} from '../../lib/missing-routes.js';

import {Args} from '@oclif/core';
Expand Down Expand Up @@ -36,6 +36,6 @@ export default class GenerateRoute extends Command {
}

async function runCheckRoutes({directory}: {directory: string}) {
const remixConfig = await getRemixConfig(directory, true);
const remixConfig = await getRemixConfig(directory);
logMissingRoutes(findMissingRoutes(remixConfig));
}
2 changes: 1 addition & 1 deletion packages/cli/src/commands/hydrogen/codegen-unstable.ts
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@ import path from 'path';
import Command from '@shopify/cli-kit/node/base-command';
import {renderSuccess} from '@shopify/cli-kit/node/ui';
import {Flags} from '@oclif/core';
import {getProjectPaths, getRemixConfig} from '../../lib/config.js';
import {getProjectPaths, getRemixConfig} from '../../lib/remix-config.js';
import {commonFlags, flagsToCamelObject} from '../../lib/flags.js';
import {codegen} from '../../lib/codegen.js';

Expand Down
14 changes: 10 additions & 4 deletions packages/cli/src/commands/hydrogen/dev.ts
Original file line number Diff line number Diff line change
Expand Up @@ -6,10 +6,11 @@ import {renderFatalError, renderWarning} from '@shopify/cli-kit/node/ui';
import colors from '@shopify/cli-kit/node/colors';
import {copyPublicFiles} from './build.js';
import {
assertOxygenChecks,
getProjectPaths,
getRemixConfig,
type ServerMode,
} from '../../lib/config.js';
} from '../../lib/remix-config.js';
import {enhanceH2Logs, muteDevLogs, warnOnce} from '../../lib/log.js';
import {deprecated, commonFlags, flagsToCamelObject} from '../../lib/flags.js';
import Command from '@shopify/cli-kit/node/base-command';
Expand Down Expand Up @@ -98,6 +99,7 @@ async function runDev({
const copyingFiles = copyPublicFiles(publicPath, buildPathClient);
const reloadConfig = async () => {
const config = await getRemixConfig(root);

return disableVirtualRoutes
? config
: addVirtualRoutes(config).catch((error) => {
Expand All @@ -120,7 +122,13 @@ async function runDev({

const serverBundleExists = () => fileExists(buildPathWorkerFile);

const {shop, storefront} = await getConfig(root);
const [remixConfig, {shop, storefront}] = await Promise.all([
reloadConfig(),
getConfig(root),
]);

assertOxygenChecks(remixConfig);

const fetchRemote = !!shop && !!storefront?.id;
const envPromise = getAllEnvironmentVariables({root, fetchRemote, envBranch});

Expand Down Expand Up @@ -166,8 +174,6 @@ async function runDev({
if (showUpgrade) showUpgrade();
}

const remixConfig = await reloadConfig();

const fileWatchCache = createFileWatchCache();
let skipRebuildLogs = false;

Expand Down
2 changes: 1 addition & 1 deletion packages/cli/src/commands/hydrogen/preview.ts
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
import Command from '@shopify/cli-kit/node/base-command';
import {muteDevLogs} from '../../lib/log.js';
import {getProjectPaths} from '../../lib/config.js';
import {getProjectPaths} from '../../lib/remix-config.js';
import {commonFlags} from '../../lib/flags.js';
import {startMiniOxygen} from '../../lib/mini-oxygen.js';

Expand Down
2 changes: 1 addition & 1 deletion packages/cli/src/commands/hydrogen/setup.ts
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@ import {
renderI18nPrompt,
setupI18nStrategy,
} from '../../lib/setups/i18n/index.js';
import {getRemixConfig} from '../../lib/config.js';
import {getRemixConfig} from '../../lib/remix-config.js';
import {
generateProjectEntries,
handleCliShortcut,
Expand Down
2 changes: 1 addition & 1 deletion packages/cli/src/commands/hydrogen/setup/css.ts
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@ import {
installNodeModules,
} from '@shopify/cli-kit/node/node-package-manager';
import {Args} from '@oclif/core';
import {getRemixConfig} from '../../../lib/config.js';
import {getRemixConfig} from '../../../lib/remix-config.js';
import {
setupCssStrategy,
SETUP_CSS_STRATEGIES,
Expand Down
2 changes: 1 addition & 1 deletion packages/cli/src/commands/hydrogen/setup/markets.ts
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ import {commonFlags, flagsToCamelObject} from '../../../lib/flags.js';
import Command from '@shopify/cli-kit/node/base-command';
import {renderSuccess, renderTasks} from '@shopify/cli-kit/node/ui';
import {Args} from '@oclif/core';
import {getRemixConfig} from '../../../lib/config.js';
import {getRemixConfig} from '../../../lib/remix-config.js';
import {
setupI18nStrategy,
SETUP_I18N_STRATEGIES,
Expand Down
190 changes: 0 additions & 190 deletions packages/cli/src/lib/config.ts

This file was deleted.

2 changes: 1 addition & 1 deletion packages/cli/src/lib/missing-routes.ts
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
import {renderSuccess, renderWarning} from '@shopify/cli-kit/node/ui';
import type {RemixConfig} from './config.js';
import type {RemixConfig} from './remix-config.js';

// Sorted by importance for better warnings.
const REQUIRED_ROUTES = [
Expand Down
Loading

0 comments on commit 7c25d3d

Please sign in to comment.