Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[bug] bud@16.4.1 incompatible with stylelint@15.10.1 #2365

Closed
3 tasks done
montchr opened this issue Jul 7, 2023 · 3 comments
Closed
3 tasks done

[bug] bud@16.4.1 incompatible with stylelint@15.10.1 #2365

montchr opened this issue Jul 7, 2023 · 3 comments
Labels
cli related to bud cli

Comments

@montchr
Copy link
Sponsor

montchr commented Jul 7, 2023

Agreement

Describe the issue

See below.

Expected Behavior

yarn bud lint css should run successfully with stylelint@15.10.1 as defined in project manifest alongside @roots/bud-stylelint. The command should have the same results as yarn stylelint resources/css/**/*.css (assuming the usual Sage resource paths).

Actual Behavior

When I run yarn bud build, the build appears to succeed. However, when I run yarn lint css, bud fails entirely because it cannot find the stylelint executable:

node:internal/modules/cjs/loader:1078
  throw err;
  ^

Error: Cannot find module '/Users/cdom/Developer/work/projects/logancenter-wp/web/app/themes/logan-center/node_modules/stylelint/bin/stylelint.js'
    at Module._resolveFilename (node:internal/modules/cjs/loader:1075:15)
    at Module._load (node:internal/modules/cjs/loader:920:27)
    at Function.executeUserEntryPoint [as runMain] (node:internal/modules/run_main:81:12)
    at node:internal/main/run_main_module:23:47 {
  code: 'MODULE_NOT_FOUND',
  requireStack: []
}

Node.js v18.16.0

 BudError

✘ Command failed with exit code 1: node /Users/cdom/Developer/work/projects/logancenter-wp/web/app/themes/logan-center/node_modules/stylelint/bin/stylelint.js
--log --verbose

☰ Stack trace
BudError: Command failed with exit code 1: node node_modules/stylelint/bin/stylelint.js --log --verbose
    at makeError (node_modules/execa/lib/error.js:59:11)
    at handlePromise (node_modules/execa/index.js:124:26)
    at async BudStylelintCommand.$ (node_modules/@roots/bud/lib/cli/commands/bud.js:65:16)
    at async BudStylelintCommand.execute (node_modules/@roots/bud-stylelint/lib/bud/commands/bud.stylelint.command.js:44:9)
    at async BudStylelintCommand.validateAndExecute (node_modules/clipanion/lib/advanced/Command.js:73:26)
    at async Cli.run (node_modules/clipanion/lib/advanced/Cli.js:223:24)
    at async Cli.runExit (node_modules/clipanion/lib/advanced/Cli.js:232:28)

Steps To Reproduce

  1. yarn add -D @roots/bud@6.14.1 @roots/bud-stylelint@6.14.1 stylelint@latest
  2. yarn bud lint css (bud fails to run stylelint)
  3. yarn bud build (succeeds)

version

6.14.1

Logs

[env] › ▶  sourcing .env values for /Users/cdom/Developer/work/projects/logancenter-wp/web/app/themes/logan-center Initialized timer...
[env] › registering values /Users/cdom/Developer/work/projects/logancenter-wp/.env
[env] › registering expanded values /Users/cdom/Developer/work/projects/logancenter-wp/.env
[env] › ◼  sourcing .env values for /Users/cdom/Developer/work/projects/logancenter-wp/web/app/themes/logan-center Timer run for: 2ms
[fs] › ▶  Initializing filesystem Initialized timer...
[fs] › ℹ  Skipping composer.json (php manifest)
[fs] › ℹ  Skipping composer.lock (lockfile)
[fs] › ℹ  Skipping yarn.lock (lockfile)
[fs] › ◼  Initializing filesystem Timer run for: 8ms
[bootstrap] › 🏗️ building logan-center
[bootstrap] › 📂 basedir /Users/cdom/Developer/work/projects/logancenter-wp/web/app/themes/logan-center
[bootstrap] › 😎 version 6.14.1
[logan-center] › Instance cached to @roots/bud/instance
[logan-center] › ▶  initialize Initialized timer...
[module] › ℹ  cache is enabled and cached resolutions exist {
  resolutions: {
    '@roots/bud/services/env': '/Users/cdom/Developer/work/projects/logancenter-wp/web/app/themes/logan-center/node_modules/@roots/bud/lib/services/env.js',
    '@roots/bud-hooks': '/Users/cdom/Developer/work/projects/logancenter-wp/web/app/themes/logan-center/node_modules/@roots/bud-hooks/lib/index.js',
    '@roots/bud-api': '/Users/cdom/Developer/work/projects/logancenter-wp/web/app/themes/logan-center/node_modules/@roots/bud-api/lib/index.js',
    '@roots/bud-build': '/Users/cdom/Developer/work/projects/logancenter-wp/web/app/themes/logan-center/node_modules/@roots/bud-build/lib/index.js',
    '@roots/bud-cache': '/Users/cdom/Developer/work/projects/logancenter-wp/web/app/themes/logan-center/node_modules/@roots/bud-cache/lib/index.js',
    '@roots/bud-compiler': '/Users/cdom/Developer/work/projects/logancenter-wp/web/app/themes/logan-center/node_modules/@roots/bud-compiler/lib/index.js',
    '@roots/bud-dashboard': '/Users/cdom/Developer/work/projects/logancenter-wp/web/app/themes/logan-center/node_modules/@roots/bud-dashboard/lib/index.js',
    '@roots/bud-extensions': '/Users/cdom/Developer/work/projects/logancenter-wp/web/app/themes/logan-center/node_modules/@roots/bud-extensions/lib/index.js',
    '@roots/bud/services/project': '/Users/cdom/Developer/work/projects/logancenter-wp/web/app/themes/logan-center/node_modules/@roots/bud/lib/services/project.js',
    '@roots/bud-entrypoints': '/Users/cdom/Developer/work/projects/logancenter-wp/web/app/themes/logan-center/node_modules/@roots/bud-entrypoints/lib/index.js',
    '@roots/bud-minify': '/Users/cdom/Developer/work/projects/logancenter-wp/web/app/themes/logan-center/node_modules/@roots/bud-minify/lib/index.js',
    '@roots/bud-extensions/cdn': '/Users/cdom/Developer/work/projects/logancenter-wp/web/app/themes/logan-center/node_modules/@roots/bud-extensions/lib/cdn/index.js',
    '@roots/bud-extensions/esm': '/Users/cdom/Developer/work/projects/logancenter-wp/web/app/themes/logan-center/node_modules/@roots/bud-extensions/lib/esm/index.js',
    '@roots/bud-extensions/fix-style-only-entrypoints': '/Users/cdom/Developer/work/projects/logancenter-wp/web/app/themes/logan-center/node_modules/@roots/bud-extensions/lib/fix-style-only-entrypoints/index.js',
    '@roots/bud-extensions/clean-webpack-plugin': '/Users/cdom/Developer/work/projects/logancenter-wp/web/app/themes/logan-center/node_modules/@roots/bud-extensions/lib/clean-webpack-plugin/index.js',
    '@roots/bud-extensions/copy-webpack-plugin': '/Users/cdom/Developer/work/projects/logancenter-wp/web/app/themes/logan-center/node_modules/@roots/bud-extensions/lib/copy-webpack-plugin/index.js',
    '@roots/bud-extensions/html-webpack-plugin': '/Users/cdom/Developer/work/projects/logancenter-wp/web/app/themes/logan-center/node_modules/@roots/bud-extensions/lib/html-webpack-plugin/index.js',
    '@roots/bud-extensions/import-map': '/Users/cdom/Developer/work/projects/logancenter-wp/web/app/themes/logan-center/node_modules/@roots/bud-extensions/lib/import-map/index.js',
    '@roots/bud-extensions/interpolate-html-webpack-plugin': '/Users/cdom/Developer/work/projects/logancenter-wp/web/app/themes/logan-center/node_modules/@roots/bud-extensions/lib/interpolate-html-webpack-plugin/index.js',
    '@roots/bud-extensions/mini-css-extract-plugin': '/Users/cdom/Developer/work/projects/logancenter-wp/web/app/themes/logan-center/node_modules/@roots/bud-extensions/lib/mini-css-extract-plugin/index.js',
    '@roots/bud-extensions/webpack-define-plugin': '/Users/cdom/Developer/work/projects/logancenter-wp/web/app/themes/logan-center/node_modules/@roots/bud-extensions/lib/webpack-define-plugin/index.js',
    '@roots/bud-extensions/webpack-hot-module-replacement-plugin': '/Users/cdom/Developer/work/projects/logancenter-wp/web/app/themes/logan-center/node_modules/@roots/bud-extensions/lib/webpack-hot-module-replacement-plugin/index.js',
    '@roots/bud-extensions/webpack-lifecycle-plugin': '/Users/cdom/Developer/work/projects/logancenter-wp/web/app/themes/logan-center/node_modules/@roots/bud-extensions/lib/webpack-lifecycle-plugin/index.js',
    '@roots/bud-extensions/webpack-manifest-plugin': '/Users/cdom/Developer/work/projects/logancenter-wp/web/app/themes/logan-center/node_modules/@roots/bud-extensions/lib/webpack-manifest-plugin/index.js',
    '@roots/bud-extensions/webpack-provide-plugin': '/Users/cdom/Developer/work/projects/logancenter-wp/web/app/themes/logan-center/node_modules/@roots/bud-extensions/lib/webpack-provide-plugin/index.js',
    '@roots/bud-extensions/tsconfig-values': '/Users/cdom/Developer/work/projects/logancenter-wp/web/app/themes/logan-center/node_modules/@roots/bud-extensions/lib/tsconfig-values/index.js',
    '@roots/bud-eslint': '/Users/cdom/Developer/work/projects/logancenter-wp/web/app/themes/logan-center/node_modules/@roots/bud-eslint/lib/index.js',
    '@roots/bud-imagemin': '/Users/cdom/Developer/work/projects/logancenter-wp/web/app/themes/logan-center/node_modules/@roots/bud-imagemin/lib/index.js',
    '@roots/bud-prettier': '/Users/cdom/Developer/work/projects/logancenter-wp/web/app/themes/logan-center/node_modules/@roots/bud-prettier/lib/index.js',
    '@roots/bud-stylelint': '/Users/cdom/Developer/work/projects/logancenter-wp/web/app/themes/logan-center/node_modules/@roots/bud-stylelint/lib/index.js',
    '@roots/bud-swc': '/Users/cdom/Developer/work/projects/logancenter-wp/web/app/themes/logan-center/node_modules/@roots/bud-swc/lib/index.js',
    '@roots/bud-tailwindcss': '/Users/cdom/Developer/work/projects/logancenter-wp/web/app/themes/logan-center/node_modules/@roots/bud-tailwindcss/lib/index.js',
    '@roots/bud-typescript': '/Users/cdom/Developer/work/projects/logancenter-wp/web/app/themes/logan-center/node_modules/@roots/bud-typescript/lib/index.js',
    '@roots/sage': '/Users/cdom/Developer/work/projects/logancenter-wp/web/app/themes/logan-center/node_modules/@roots/sage/lib/index.js',
    '@roots/bud-imagemin/sharp': '/Users/cdom/Developer/work/projects/logancenter-wp/web/app/themes/logan-center/node_modules/@roots/bud-imagemin/lib/sharp/index.js',
    '@roots/bud-imagemin/svgo': '/Users/cdom/Developer/work/projects/logancenter-wp/web/app/themes/logan-center/node_modules/@roots/bud-imagemin/lib/svgo/index.js',
    '@roots/bud-postcss': '/Users/cdom/Developer/work/projects/logancenter-wp/web/app/themes/logan-center/node_modules/@roots/bud-postcss/lib/index.js',
    '@roots/bud-typescript/typecheck': '/Users/cdom/Developer/work/projects/logancenter-wp/web/app/themes/logan-center/node_modules/@roots/bud-typescript/lib/typecheck/index.js',
    '@roots/bud-preset-wordpress': '/Users/cdom/Developer/work/projects/logancenter-wp/web/app/themes/logan-center/node_modules/@roots/bud-preset-wordpress/lib/index.js',
    '@roots/sage/acorn': '/Users/cdom/Developer/work/projects/logancenter-wp/web/app/themes/logan-center/node_modules/@roots/sage/lib/acorn/index.js',
    '@roots/sage/blade-loader': '/Users/cdom/Developer/work/projects/logancenter-wp/web/app/themes/logan-center/node_modules/@roots/sage/lib/blade-loader/index.js',
    '@roots/bud-preset-recommend': '/Users/cdom/Developer/work/projects/logancenter-wp/web/app/themes/logan-center/node_modules/@roots/bud-preset-recommend/lib/index.js',
    '@roots/bud-wordpress-externals': '/Users/cdom/Developer/work/projects/logancenter-wp/web/app/themes/logan-center/node_modules/@roots/bud-wordpress-externals/lib/index.js',
    '@roots/bud-wordpress-dependencies': '/Users/cdom/Developer/work/projects/logancenter-wp/web/app/themes/logan-center/node_modules/@roots/bud-wordpress-dependencies/lib/index.js',
    '@roots/bud-wordpress-theme-json': '/Users/cdom/Developer/work/projects/logancenter-wp/web/app/themes/logan-center/node_modules/@roots/bud-wordpress-theme-json/lib/index.js',
    '@roots/bud-react': '/Users/cdom/Developer/work/projects/logancenter-wp/web/app/themes/logan-center/node_modules/@roots/bud-react/lib/index.js',
    '@roots/bud-react/react-refresh': '/Users/cdom/Developer/work/projects/logancenter-wp/web/app/themes/logan-center/node_modules/@roots/bud-react/lib/react-refresh/index.js',
    '@roots/bud-support/webpack': '/Users/cdom/Developer/work/projects/logancenter-wp/web/app/themes/logan-center/node_modules/@roots/bud-support/lib/webpack/index.js',
    '@roots/bud-support/css-loader': '/Users/cdom/Developer/work/projects/logancenter-wp/web/app/themes/logan-center/node_modules/@roots/bud-support/lib/css-loader/index.cjs',
    '@roots/bud-support/csv-loader': '/Users/cdom/Developer/work/projects/logancenter-wp/web/app/themes/logan-center/node_modules/@roots/bud-support/lib/csv-loader/index.cjs',
    '@roots/bud-support/file-loader': '/Users/cdom/Developer/work/projects/logancenter-wp/web/app/themes/logan-center/node_modules/@roots/bud-support/lib/file-loader/index.cjs',
    '@roots/bud-support/html-loader': '/Users/cdom/Developer/work/projects/logancenter-wp/web/app/themes/logan-center/node_modules/@roots/bud-support/vendor/html-loader/index.cjs',
    '@roots/bud-support/remark-loader': '/Users/cdom/Developer/work/projects/logancenter-wp/web/app/themes/logan-center/node_modules/@roots/bud-support/lib/remark-loader/index.cjs',
    '@roots/bud-support/style-loader': '/Users/cdom/Developer/work/projects/logancenter-wp/web/app/themes/logan-center/node_modules/@roots/bud-support/lib/style-loader/index.cjs',
    '@roots/bud-support/yml-loader': '/Users/cdom/Developer/work/projects/logancenter-wp/web/app/themes/logan-center/node_modules/@roots/bud-support/lib/yml-loader/index.cjs',
    eslint: '/Users/cdom/Developer/work/projects/logancenter-wp/web/app/themes/logan-center/node_modules/eslint/lib/api.js',
    'swc-loader': '/Users/cdom/Developer/work/projects/logancenter-wp/web/app/themes/logan-center/node_modules/swc-loader/src/index.js',
    'ts-loader': '/Users/cdom/Developer/work/projects/logancenter-wp/web/app/themes/logan-center/node_modules/ts-loader/index.js',
    typescript: '/Users/cdom/Developer/work/projects/logancenter-wp/web/app/themes/logan-center/node_modules/typescript/lib/typescript.js',
    'postcss-loader': '/Users/cdom/Developer/work/projects/logancenter-wp/web/app/themes/logan-center/node_modules/@roots/bud-postcss/node_modules/postcss-loader/dist/cjs.js',
    'postcss-import': '/Users/cdom/Developer/work/projects/logancenter-wp/web/app/themes/logan-center/node_modules/postcss-import/index.js',
    'postcss-nested': '/Users/cdom/Developer/work/projects/logancenter-wp/web/app/themes/logan-center/node_modules/@roots/bud-postcss/node_modules/postcss-nested/index.js',
    'postcss-preset-env': '/Users/cdom/Developer/work/projects/logancenter-wp/web/app/themes/logan-center/node_modules/@roots/bud-postcss/node_modules/postcss-preset-env/dist/index.mjs',
    'tailwindcss/nesting/index.js': '/Users/cdom/Developer/work/projects/logancenter-wp/web/app/themes/logan-center/node_modules/tailwindcss/nesting/index.js',
    tailwindcss: '/Users/cdom/Developer/work/projects/logancenter-wp/web/app/themes/logan-center/node_modules/tailwindcss/lib/index.js',
    'postcss-mixins': '/Users/cdom/Developer/work/projects/logancenter-wp/web/app/themes/logan-center/node_modules/postcss-mixins/index.js',
    '@roots/wordpress-hmr/loader': '/Users/cdom/Developer/work/projects/logancenter-wp/web/app/themes/logan-center/node_modules/@roots/wordpress-hmr/lib/loader.cjs',
    '@roots/bud-support/json5': '/Users/cdom/Developer/work/projects/logancenter-wp/web/app/themes/logan-center/node_modules/@roots/bud-support/lib/json5/index.js',
    'mini-svg-data-uri': '/Users/cdom/Developer/work/projects/logancenter-wp/web/app/themes/logan-center/node_modules/mini-svg-data-uri/index.js',
    '@roots/bud-support/toml': '/Users/cdom/Developer/work/projects/logancenter-wp/web/app/themes/logan-center/node_modules/@roots/bud-support/lib/toml/index.js',
    '@roots/bud-server': '/Users/cdom/Developer/work/projects/logancenter-wp/web/app/themes/logan-center/node_modules/@roots/bud-server/lib/index.js',
    '@roots/bud-support/express': '/Users/cdom/Developer/work/projects/logancenter-wp/web/app/themes/logan-center/node_modules/@roots/bud-support/lib/express/index.js',
    '@roots/bud-server/server/https': '/Users/cdom/Developer/work/projects/logancenter-wp/web/app/themes/logan-center/node_modules/@roots/bud-server/lib/server/https.js',
    '@roots/bud-server/middleware/dev': '/Users/cdom/Developer/work/projects/logancenter-wp/web/app/themes/logan-center/node_modules/@roots/bud-server/lib/middleware/dev/index.js',
    '@roots/bud-server/middleware/hot': '/Users/cdom/Developer/work/projects/logancenter-wp/web/app/themes/logan-center/node_modules/@roots/bud-server/lib/middleware/hot/index.js',
    '@roots/bud-server/middleware/cookie': '/Users/cdom/Developer/work/projects/logancenter-wp/web/app/themes/logan-center/node_modules/@roots/bud-server/lib/middleware/cookie/index.js',
    '@roots/bud-server/middleware/proxy': '/Users/cdom/Developer/work/projects/logancenter-wp/web/app/themes/logan-center/node_modules/@roots/bud-server/lib/middleware/proxy/index.js'
  },
  version: '6.14.1'
}
[logan-center] › bud.env ← @roots/bud/services/env
[logan-center] › bud.project ← @roots/bud/services/project
[logan-center] › bud.cache ← @roots/bud-cache
[logan-center] › bud.extensions ← @roots/bud-extensions
[logan-center] › bud.hooks ← @roots/bud-hooks
[logan-center] › bud.compiler ← @roots/bud-compiler
[logan-center] › bud.api ← @roots/bud-api
[logan-center] › bud.build ← @roots/bud-build
[logan-center] › bud.dashboard ← @roots/bud-dashboard
[logan-center] [hooks] › ℹ  registered boot callback (1/1)
[logan-center] [hooks] › cache.boot bound to boot
[logan-center] [hooks] › ℹ  registered boot callback (1/1)
[logan-center] [hooks] › extensions.boot bound to boot
[logan-center] [hooks] › ℹ  registered bootstrap callback (1/1)
[logan-center] [hooks] › env.bootstrap bound to bootstrap
[logan-center] [hooks] › ℹ  registered bootstrap callback (1/1)
[logan-center] [hooks] › extensions.bootstrap bound to bootstrap
[logan-center] [hooks] › ℹ  registered bootstrap callback (1/1)
[logan-center] [hooks] › api.bootstrap bound to bootstrap
[logan-center] [hooks] › ℹ  registered bootstrap callback (1/1)
[logan-center] [hooks] › build.bootstrap bound to bootstrap
[logan-center] [hooks] › ℹ  registered build.after callback (1/1)
[logan-center] [hooks] › project.buildAfter bound to build.after
[logan-center] [hooks] › ℹ  registered build.after callback (1/1)
[logan-center] [hooks] › extensions.buildAfter bound to build.after
[logan-center] [hooks] › ℹ  registered build.before callback (1/1)
[logan-center] [hooks] › extensions.buildBefore bound to build.before
[logan-center] [hooks] › ℹ  registered compiler.done callback (1/1)
[logan-center] [hooks] › project.compilerDone bound to compiler.done
[logan-center] [hooks] › ℹ  registered compiler.done callback (1/1)
[logan-center] [hooks] › extensions.compilerDone bound to compiler.done
[logan-center] [hooks] › ℹ  registered config.after callback (1/1)
[logan-center] [hooks] › extensions.configAfter bound to config.after
[logan-center] [hooks] › ℹ  registered register callback (1/1)
[logan-center] [hooks] › cache.register bound to register
[logan-center] [hooks] › ℹ  registered register callback (1/1)
[logan-center] [hooks] › extensions.register bound to register
[logan-center] [hooks] › ℹ  registered register callback (1/1)
[logan-center] [hooks] › compiler.register bound to register
[logan-center] [hooks] › ℹ  registered register callback (1/1)
[logan-center] [hooks] › build.register bound to register
[logan-center] [hooks] › ℹ  registered compiler.before callback (1/1)
[logan-center] [hooks] › ℹ  registered compiler.done callback (1/1)
[logan-center] [hooks] › ▶  bootstrap Initialized timer...
[logan-center] [extensions] › ✔  set @roots/bud-extensions/esm
[logan-center] [extensions] › ✔  set @roots/bud-extensions/cdn
[logan-center] [extensions] › ✔  set @roots/bud-extensions/import-map
[logan-center] [extensions] › ✔  set @roots/bud-extensions/html-webpack-plugin
[logan-center] [extensions] › ✔  set @roots/bud-extensions/mini-css-extract-plugin
[logan-center] [extensions] › ✔  set @roots/bud-extensions/tsconfig-values
[logan-center] [extensions] › ✔  set @roots/bud-extensions/webpack-define-plugin
[logan-center] [extensions] › ✔  set @roots/bud-extensions/webpack-hot-module-replacement-plugin
[logan-center] [extensions] › ✔  set @roots/bud-extensions/webpack-lifecycle-plugin
[logan-center] [extensions] › ✔  set @roots/bud-extensions/webpack-provide-plugin
[logan-center] [extensions] › ✔  set @roots/bud-extensions/fix-style-only-entrypoints
[logan-center] [extensions] › ✔  set @roots/bud-extensions/clean-webpack-plugin
[logan-center] [extensions] › ✔  set @roots/bud-extensions/copy-webpack-plugin
[logan-center] [extensions] › ✔  set @roots/bud-extensions/webpack-manifest-plugin
[logan-center] [extensions] › ✔  set @roots/bud-extensions/interpolate-html-webpack-plugin
[logan-center] [extensions] › ✔  set @roots/bud-minify
[logan-center] [extensions] › ✔  set @roots/bud-entrypoints
[logan-center] [extensions] › ✔  set @roots/bud-prettier
[logan-center] [extensions] › ✔  set @roots/bud-eslint
[logan-center] [extensions] › ✔  set @roots/bud-stylelint
[logan-center] [extensions] › ✔  set @roots/bud-swc
[logan-center] [extensions] › ✔  set @roots/bud-typescript/typecheck
[logan-center] [extensions] › ✔  set @roots/bud-typescript
[logan-center] [extensions] › ✔  set @roots/sage/acorn
[logan-center] [extensions] › ✔  set @roots/bud-imagemin/sharp
[logan-center] [extensions] › ✔  set @roots/bud-imagemin/svgo
[logan-center] [extensions] › ✔  set @roots/bud-imagemin
[logan-center] [extensions] › ✔  set @roots/bud-postcss
[logan-center] [extensions] › ✔  set @roots/bud-tailwindcss
[logan-center] [extensions] › ✔  set @roots/sage/blade-loader
[logan-center] [extensions] › ✔  set @roots/bud-preset-recommend
[logan-center] [extensions] › ✔  set @roots/bud-wordpress-theme-json
[logan-center] [extensions] › ✔  set @roots/bud-wordpress-externals
[logan-center] [extensions] › ✔  set @roots/bud-wordpress-dependencies
[logan-center] [extensions] › ✔  set @roots/bud-react/react-refresh
[logan-center] [extensions] › ✔  set @roots/bud-react
[logan-center] [extensions] › ✔  set @roots/bud-preset-wordpress
[logan-center] [extensions] › ✔  set @roots/sage
[logan-center] [hooks] › ◼  bootstrap Timer run for: 208ms
[logan-center] [hooks] › ▶  register  Initialized timer...
[module] › ℹ  [cache hit] resolved @roots/bud-support/css-loader to /Users/cdom/Developer/work/projects/logancenter-wp/web/app/themes/logan-center/node_modules/@roots/bud-support/lib/css-loader/index.cjs
[module] › ℹ  [cache hit] resolved @roots/bud-support/csv-loader to /Users/cdom/Developer/work/projects/logancenter-wp/web/app/themes/logan-center/node_modules/@roots/bud-support/lib/csv-loader/index.cjs
[module] › ℹ  [cache hit] resolved @roots/bud-support/file-loader to /Users/cdom/Developer/work/projects/logancenter-wp/web/app/themes/logan-center/node_modules/@roots/bud-support/lib/file-loader/index.cjs
[module] › ℹ  [cache hit] resolved @roots/bud-support/html-loader to /Users/cdom/Developer/work/projects/logancenter-wp/web/app/themes/logan-center/node_modules/@roots/bud-support/vendor/html-loader/index.cjs
[module] › ℹ  [cache hit] resolved @roots/bud-support/remark-loader to /Users/cdom/Developer/work/projects/logancenter-wp/web/app/themes/logan-center/node_modules/@roots/bud-support/lib/remark-loader/index.cjs
[module] › ℹ  [cache hit] resolved @roots/bud-support/style-loader to /Users/cdom/Developer/work/projects/logancenter-wp/web/app/themes/logan-center/node_modules/@roots/bud-support/lib/style-loader/index.cjs
[module] › ℹ  [cache hit] resolved @roots/bud-support/yml-loader to /Users/cdom/Developer/work/projects/logancenter-wp/web/app/themes/logan-center/node_modules/@roots/bud-support/lib/yml-loader/index.cjs
[logan-center] [build] › ℹ  set loader Loader {
  _app: [Function (anonymous)],
  src: '/Users/cdom/Developer/work/projects/logancenter-wp/web/app/themes/logan-center/node_modules/mini-css-extract-plugin/dist/loader.js'
}
[logan-center] [build] › ℹ  set item Item {
  _app: [Function (anonymous)],
  ident: 'css',
  loader: 'css',
  options: [Function (anonymous)]
}
[logan-center] [build] › ℹ  set item Item {
  _app: [Function (anonymous)],
  ident: 'cssModule',
  loader: 'css',
  options: [Function (anonymous)]
}
[logan-center] [build] › ℹ  set item Item {
  _app: [Function (anonymous)],
  ident: 'csv',
  loader: 'csv',
  options: undefined
}
[logan-center] [build] › ℹ  set item Item {
  _app: [Function (anonymous)],
  ident: 'file',
  loader: 'file',
  options: undefined
}
[logan-center] [build] › ℹ  set item Item {
  _app: [Function (anonymous)],
  ident: 'html',
  loader: 'html',
  options: undefined
}
[logan-center] [build] › ℹ  set item Item {
  _app: [Function (anonymous)],
  ident: 'md',
  loader: 'md',
  options: undefined
}
[logan-center] [build] › ℹ  set item Item {
  _app: [Function (anonymous)],
  ident: 'minicss',
  loader: 'minicss',
  options: [Function (anonymous)]
}
[logan-center] [build] › ℹ  set item Item {
  _app: [Function (anonymous)],
  ident: 'raw',
  loader: 'raw',
  options: undefined
}
[logan-center] [build] › ℹ  set item Item {
  _app: [Function (anonymous)],
  ident: 'style',
  loader: 'style',
  options: undefined
}
[logan-center] [build] › ℹ  set item Item {
  _app: [Function (anonymous)],
  ident: 'yml',
  loader: 'yml',
  options: undefined
}
[logan-center] [build] › ℹ  set loader Loader {
  _app: [Function (anonymous)],
  src: '/Users/cdom/Developer/work/projects/logancenter-wp/web/app/themes/logan-center/node_modules/@roots/bud-support/lib/css-loader/index.cjs'
}
[logan-center] [build] › ℹ  set loader Loader {
  _app: [Function (anonymous)],
  src: '/Users/cdom/Developer/work/projects/logancenter-wp/web/app/themes/logan-center/node_modules/@roots/bud-support/lib/csv-loader/index.cjs'
}
[logan-center] [build] › ℹ  set loader Loader {
  _app: [Function (anonymous)],
  src: '/Users/cdom/Developer/work/projects/logancenter-wp/web/app/themes/logan-center/node_modules/@roots/bud-support/lib/file-loader/index.cjs'
}
[logan-center] [build] › ℹ  set loader Loader {
  _app: [Function (anonymous)],
  src: '/Users/cdom/Developer/work/projects/logancenter-wp/web/app/themes/logan-center/node_modules/@roots/bud-support/vendor/html-loader/index.cjs'
}
[logan-center] [build] › ℹ  set loader Loader {
  _app: [Function (anonymous)],
  src: '/Users/cdom/Developer/work/projects/logancenter-wp/web/app/themes/logan-center/node_modules/@roots/bud-support/lib/remark-loader/index.cjs'
}
[logan-center] [build] › ℹ  set loader Loader {
  _app: [Function (anonymous)],
  src: '/Users/cdom/Developer/work/projects/logancenter-wp/web/app/themes/logan-center/node_modules/@roots/bud-support/lib/style-loader/index.cjs'
}
[logan-center] [build] › ℹ  set loader Loader {
  _app: [Function (anonymous)],
  src: '/Users/cdom/Developer/work/projects/logancenter-wp/web/app/themes/logan-center/node_modules/@roots/bud-support/lib/yml-loader/index.cjs'
}
[logan-center] [@roots/bud-extensions/import-map] › ▶  register  Initialized timer...
[logan-center] [@roots/bud-extensions/import-map] › ◼  register  Timer run for: 0ms
[logan-center] [@roots/bud-extensions/tsconfig-values] › ▶  register  Initialized timer...
[logan-center] [@roots/bud-extensions/tsconfig-values] › ◼  register  Timer run for: 0ms
[logan-center] [@roots/bud-extensions/webpack-define-plugin] › ▶  register  Initialized timer...
[logan-center] [@roots/bud-extensions/webpack-define-plugin] › ◼  register  Timer run for: 1ms
[logan-center] [@roots/bud-minify] › ▶  register  Initialized timer...
[logan-center] [extensions] › ✔  set @roots/bud-minify/minify-css
[logan-center] [extensions] › ✔  set @roots/bud-minify/minify-js
[logan-center] [@roots/bud-minify] › ◼  register  Timer run for: 0ms
[logan-center] [@roots/bud-eslint] › ▶  register  Initialized timer...
[module] › ℹ  [cache hit] resolved eslint to /Users/cdom/Developer/work/projects/logancenter-wp/web/app/themes/logan-center/node_modules/eslint/lib/api.js
[fs] › ▶  loading .eslintrc Initialized timer...
[fs] › ℹ  loading .eslintrc [Module: null prototype] {
  default: {
    root: true,
    extends: [
      '@roots/eslint-config/sage',
      'standard-with-typescript',
      'plugin:@typescript-eslint/recommended',
      'plugin:@typescript-eslint/recommended-requiring-type-checking',
      'standard-jsx',
      'standard-react',
      'plugin:jsx-a11y/recommended',
      'prettier'
    ],
    parserOptions: { project: './tsconfig.eslint.json' },
    parser: '@typescript-eslint/parser',
    plugins: [ '@typescript-eslint' ],
    rules: {
      'no-unused-vars': 0,
      '@typescript-eslint/comma-dangle': 0,
      '@typescript-eslint/object-curly-spacing': 0,
      'no-console': [Array],
      '@typescript-eslint/no-unused-vars': [Array],
      'react/react-in-jsx-scope': 'error'
    }
  },
  root: true
}
[fs] › ◼  loading .eslintrc Timer run for: 1ms
[logan-center] [@roots/bud-eslint] › ◼  register  Timer run for: 2ms
[logan-center] [@roots/bud-stylelint] › ▶  register  Initialized timer...
[fs] › ▶  loading .stylelintrc Initialized timer...
[fs] › ℹ  loading .stylelintrc [Module: null prototype] {
  default: {
    plugins: [ 'stylelint-plugin-defensive-css' ],
    extends: [
      'stylelint-config-standard',
      'stylelint-config-clean-order',
      'stylelint-8-point-grid'
    ],
    rules: {
      'media-query-no-invalid': null,
      'plugin/use-defensive-css': [Array],
      'selector-class-pattern': null,
      'at-rule-no-unknown': [Array],
      'import-notation': [Array],
      'function-no-unknown': [Array]
    }
  }
}
[fs] › ◼  loading .stylelintrc Timer run for: 1ms
[logan-center] [@roots/bud-stylelint] › ◼  register  Timer run for: 1ms
[logan-center] [@roots/bud-swc] › ▶  register  Initialized timer...
[module] › ℹ  [cache hit] resolved swc-loader to /Users/cdom/Developer/work/projects/logancenter-wp/web/app/themes/logan-center/node_modules/swc-loader/src/index.js
[logan-center] [build] › ℹ  set loader Loader { _app: [Function (anonymous)], src: 'swc-loader' }
[logan-center] [build] › ℹ  set item Item {
  _app: [Function (anonymous)],
  ident: 'swc',
  loader: 'swc',
  options: [Function: options]
}
[logan-center] [build] › ℹ  set item Item {
  _app: [Function (anonymous)],
  ident: 'swc',
  loader: 'swc',
  options: [Function: options]
}
[logan-center] [@roots/bud-swc] › ◼  register  Timer run for: 1ms
[logan-center] [@roots/bud-typescript/typecheck] › ▶  register  Initialized timer...
[logan-center] [@roots/bud-typescript/typecheck] › ◼  register  Timer run for: 0ms
[logan-center] [@roots/bud-typescript] › ▶  register  Initialized timer...
[module] › ℹ  [cache hit] resolved ts-loader to /Users/cdom/Developer/work/projects/logancenter-wp/web/app/themes/logan-center/node_modules/ts-loader/index.js
[module] › ℹ  [cache hit] resolved typescript to /Users/cdom/Developer/work/projects/logancenter-wp/web/app/themes/logan-center/node_modules/typescript/lib/typescript.js
[logan-center] [build] › ℹ  set loader Loader { _app: [Function (anonymous)], src: 'ts-loader' }
[logan-center] [build] › ℹ  set item Item {
  _app: [Function (anonymous)],
  ident: 'ts',
  loader: 'ts',
  options: [Function: options]
}
[logan-center] [@roots/bud-typescript] › ◼  register  Timer run for: 0ms
[logan-center] [@roots/bud-imagemin/sharp] › ▶  register  Initialized timer...
[logan-center] [@roots/bud-imagemin/sharp] › ◼  register  Timer run for: 0ms
[logan-center] [@roots/bud-imagemin] › ▶  register  Initialized timer...
[logan-center] [@roots/bud-imagemin] › ◼  register  Timer run for: 1ms
[logan-center] [@roots/bud-postcss] › ▶  register  Initialized timer...
[module] › ℹ  [cache hit] resolved postcss-loader to /Users/cdom/Developer/work/projects/logancenter-wp/web/app/themes/logan-center/node_modules/@roots/bud-postcss/node_modules/postcss-loader/dist/cjs.js
[module] › ℹ  [cache hit] resolved postcss-loader to /Users/cdom/Developer/work/projects/logancenter-wp/web/app/themes/logan-center/node_modules/@roots/bud-postcss/node_modules/postcss-loader/dist/cjs.js
[logan-center] [build] › ℹ  set loader Loader {
  _app: [Function (anonymous)],
  src: '/Users/cdom/Developer/work/projects/logancenter-wp/web/app/themes/logan-center/node_modules/@roots/bud-postcss/node_modules/postcss-loader/dist/cjs.js'
}
[logan-center] [build] › ℹ  set item Item {
  _app: [Function (anonymous)],
  ident: 'postcss',
  loader: 'postcss',
  options: [Function: options]
}
[module] › ℹ  [cache hit] resolved postcss-import to /Users/cdom/Developer/work/projects/logancenter-wp/web/app/themes/logan-center/node_modules/postcss-import/index.js
[module] › ℹ  [cache hit] resolved postcss-nested to /Users/cdom/Developer/work/projects/logancenter-wp/web/app/themes/logan-center/node_modules/@roots/bud-postcss/node_modules/postcss-nested/index.js
[module] › ℹ  [cache hit] resolved postcss-preset-env to /Users/cdom/Developer/work/projects/logancenter-wp/web/app/themes/logan-center/node_modules/@roots/bud-postcss/node_modules/postcss-preset-env/dist/index.mjs
[logan-center] [@roots/bud-postcss] › ◼  register  Timer run for: 0ms
[logan-center] [@roots/bud-tailwindcss] › ▶  register  Initialized timer...
[fs] › ▶  loading tailwind.config Initialized timer...
[fs] › ℹ  copying /Users/cdom/Library/Caches/bud-nodejs/2WX9T9MFGpDzWQ5NhTjWDE-ubAY/configs/tailwind.config.ts/11def2afed08cdf520a21094d9e4e38173cbc454.js to tmpfile: /Users/cdom/Developer/work/projects/logancenter-wp/web/app/themes/logan-center/.tailwind.config.js
[fs] › ℹ  importing tmpfile: /Users/cdom/Developer/work/projects/logancenter-wp/web/app/themes/logan-center/.tailwind.config.js
[fs] › ℹ  removing tmpfile: /Users/cdom/Developer/work/projects/logancenter-wp/web/app/themes/logan-center/.tailwind.config.js
[fs] › ◼  loading tailwind.config Timer run for: 6ms
[logan-center] [@roots/bud-tailwindcss] › ◼  register  Timer run for: 8ms
[logan-center] [@roots/sage/blade-loader] › ▶  register  Initialized timer...
[logan-center] [@roots/sage/blade-loader] › ◼  register  Timer run for: 0ms
[logan-center] [@roots/bud-preset-recommend] › ▶  register  Initialized timer...
[logan-center] [@roots/bud-preset-recommend] › ◼  register  Timer run for: 0ms
[logan-center] [@roots/sage] › ▶  register  Initialized timer...
[logan-center] › @dist set to public
[logan-center] › @fonts set to src/fonts
[logan-center] › @images set to src/images
[logan-center] › @scripts set to src/scripts
[logan-center] › @src set to resources
[logan-center] › @styles set to resources/styles
[logan-center] › @views set to resources/views
[logan-center] [@roots/sage] › ◼  register  Timer run for: 0ms
[logan-center] [api] › ℹ  bud.api.call: minimize
[logan-center] [api] › ℹ  bud.api.call: hash
[logan-center] › ✔  file hashing enabled
[logan-center] [api] › ℹ  bud.api.call: splitChunks
[logan-center] [hooks] › ▶  boot      Initialized timer...
[logan-center] [@roots/bud-swc] › ▶  boot      Initialized timer...
[logan-center] [@roots/bud-swc] › ◼  boot      Timer run for: 0ms
[logan-center] [@roots/bud-tailwindcss] › ▶  boot      Initialized timer...
[module] › ℹ  [cache hit] resolved tailwindcss/nesting/index.js to /Users/cdom/Developer/work/projects/logancenter-wp/web/app/themes/logan-center/node_modules/tailwindcss/nesting/index.js
[module] › ℹ  [cache hit] resolved tailwindcss to /Users/cdom/Developer/work/projects/logancenter-wp/web/app/themes/logan-center/node_modules/tailwindcss/lib/index.js
[logan-center] [@roots/bud-tailwindcss] › ✔  postcss configured for tailwindcss
[logan-center] [@roots/bud-tailwindcss] › ◼  boot      Timer run for: 0ms
[logan-center] [@roots/bud-react] › ▶  boot      Initialized timer...
[logan-center] [@roots/bud-react] › ◼  boot      Timer run for: 1ms
[logan-center] [@roots/bud-preset-wordpress] › ▶  boot      Initialized timer...
[logan-center] [extensions] › ✔  set @roots/bud-tailwindcss-theme-json
[logan-center] [@roots/bud-tailwindcss-theme-json] › ▶  register  Initialized timer...
[logan-center] [@roots/bud-tailwindcss-theme-json] › ◼  register  Timer run for: 1ms
[logan-center] [@roots/bud-preset-wordpress] › ◼  boot      Timer run for: 3ms
[logan-center] [api] › ℹ  bud.api.call: hash true
[logan-center] › ✔  file hashing enabled
[logan-center] › processing bud.config
[fs] › ▶  loading bud.config Initialized timer...
[fs] › ℹ  copying /Users/cdom/Library/Caches/bud-nodejs/2WX9T9MFGpDzWQ5NhTjWDE-ubAY/configs/bud.config.ts/0f05db73a0c2e38fd651041a2fb43f3878547f30.js to tmpfile: /Users/cdom/Developer/work/projects/logancenter-wp/web/app/themes/logan-center/.bud.config.js
[fs] › ℹ  importing tmpfile: /Users/cdom/Developer/work/projects/logancenter-wp/web/app/themes/logan-center/.bud.config.js
[fs] › ℹ  removing tmpfile: /Users/cdom/Developer/work/projects/logancenter-wp/web/app/themes/logan-center/.bud.config.js
[fs] › ◼  loading bud.config Timer run for: 12ms
[module] › ℹ  [cache hit] resolved postcss-mixins to /Users/cdom/Developer/work/projects/logancenter-wp/web/app/themes/logan-center/node_modules/postcss-mixins/index.js
[logan-center] [api] › ℹ  bud.api.call: entry {
  app: [ '@scripts/app', '@styles/app' ],
  editor: [ '@scripts/editor', '@styles/editor' ]
}
[logan-center] [api] › ℹ  bud.api.call: assets [ 'images' ]
[logan-center] [api] › ✔  bud.copy: 1 asset patterns added
[logan-center] [api] › ℹ  bud.api.call: watch [ 'resources/views', 'app' ]
[logan-center] [api] › ℹ  bud.api.call: proxy https://logancenter.ddev.site
[logan-center] [api] › ℹ  bud.api.call: serve {
  ssl: true,
  host: 'localhost',
  port: 3003,
  cert: '/Users/cdom/Developer/work/projects/logancenter-wp/web/app/themes/logan-center/localhost.pem',
  key: '/Users/cdom/Developer/work/projects/logancenter-wp/web/app/themes/logan-center/localhost-key.pem'
}
[logan-center] [hooks] › ▶  config.after Initialized timer...
[logan-center] [@roots/bud-extensions/html-webpack-plugin] › ▶  configAfter Initialized timer...
[logan-center] [@roots/bud-extensions/html-webpack-plugin] › ◼  configAfter Timer run for: 0ms
[logan-center] [@roots/bud-extensions/tsconfig-values] › ▶  configAfter Initialized timer...
[logan-center] [@roots/bud-extensions/tsconfig-values] › ◼  configAfter Timer run for: 0ms
[logan-center] [@roots/bud-imagemin/sharp] › ▶  configAfter Initialized timer...
[logan-center] [@roots/bud-imagemin/sharp] › ◼  configAfter Timer run for: 0ms
[logan-center] [@roots/bud-imagemin/svgo] › ▶  configAfter Initialized timer...
[logan-center] [@roots/bud-imagemin/svgo] › ◼  configAfter Timer run for: 0ms
[logan-center] [@roots/bud-tailwindcss] › ▶  configAfter Initialized timer...
[logan-center] [@roots/bud-tailwindcss] › ◼  configAfter Timer run for: 1ms
[logan-center] [@roots/bud-react/react-refresh] › ▶  configAfter Initialized timer...
[logan-center] [@roots/bud-react/react-refresh] › ◼  configAfter Timer run for: 0ms
[logan-center] [hooks] › ◼  config.after Timer run for: 2ms
[logan-center] [api] › ℹ  bud.api.call: hash true
[logan-center] › ✔  file hashing enabled
[logan-center] [hooks] › ℹ  registered build.before callback (1/1)
[logan-center] [build] › bud.build.make called
[logan-center] [hooks] › ▶  build.before Initialized timer...
[logan-center] [api] › ℹ  bud.api.call: hash true
[logan-center] › ✔  file hashing enabled
[logan-center] [@roots/bud-minify] › ▶  buildBefore Initialized timer...
[logan-center] [@roots/bud-minify] › ◼  buildBefore Timer run for: 1ms
[logan-center] [@roots/bud-typescript] › ▶  buildBefore Initialized timer...
[logan-center] [@roots/bud-typescript] › ◼  buildBefore Timer run for: 0ms
[logan-center] [@roots/sage/acorn] › ▶  buildBefore Initialized timer...
[logan-center] [@roots/sage/acorn] › ◼  buildBefore Timer run for: 0ms
[logan-center] [@roots/bud-preset-wordpress] › ▶  buildBefore Initialized timer...
[module] › ℹ  [cache hit] resolved @roots/wordpress-hmr/loader to /Users/cdom/Developer/work/projects/logancenter-wp/web/app/themes/logan-center/node_modules/@roots/wordpress-hmr/lib/loader.cjs
[module] › ℹ  [cache hit] resolved @roots/wordpress-hmr/loader to /Users/cdom/Developer/work/projects/logancenter-wp/web/app/themes/logan-center/node_modules/@roots/wordpress-hmr/lib/loader.cjs
[logan-center] [build] › ℹ  set loader Loader {
  _app: [Function (anonymous)],
  src: '/Users/cdom/Developer/work/projects/logancenter-wp/web/app/themes/logan-center/node_modules/@roots/wordpress-hmr/lib/loader.cjs'
}
[logan-center] [build] › ℹ  set item Item {
  _app: [Function (anonymous)],
  ident: '@roots/wordpress-hmr/loader',
  loader: '@roots/wordpress-hmr/loader',
  options: { notify: true }
}
[logan-center] [@roots/bud-preset-wordpress] › ◼  buildBefore Timer run for: 1ms
[logan-center] [@roots/bud-minify/minify-css] › ▶  buildBefore Initialized timer...
[logan-center] [@roots/bud-minify/minify-css] › ◼  buildBefore Timer run for: 2ms
[logan-center] [@roots/bud-minify/minify-js] › ▶  buildBefore Initialized timer...
[logan-center] [@roots/bud-minify/minify-js] › ◼  buildBefore Timer run for: 4ms
[logan-center] [hooks] › ◼  build.before Timer run for: 9ms
[logan-center] [@roots/bud-tailwindcss] › ✔  tailwind config added to webpack build dependencies
[logan-center] [@roots/bud-postcss] › ℹ  postcss options {
  config: false,
  sourceMap: false,
  plugins: [
    [
      '/Users/cdom/Developer/work/projects/logancenter-wp/web/app/themes/logan-center/node_modules/postcss-import/index.js',
      undefined
    ],
    [
      '/Users/cdom/Developer/work/projects/logancenter-wp/web/app/themes/logan-center/node_modules/tailwindcss/nesting/index.js',
      undefined
    ],
    [
      '/Users/cdom/Developer/work/projects/logancenter-wp/web/app/themes/logan-center/node_modules/tailwindcss/lib/index.js',
      '/Users/cdom/Developer/work/projects/logancenter-wp/web/app/themes/logan-center/tailwind.config.ts'
    ],
    [
      '/Users/cdom/Developer/work/projects/logancenter-wp/web/app/themes/logan-center/node_modules/@roots/bud-postcss/node_modules/postcss-preset-env/dist/index.cjs',
      [Object]
    ]
  ]
}
[logan-center] › ℹ  built rule {
  include: [
    '/Users/cdom/Developer/work/projects/logancenter-wp/web/app/themes/logan-center/resources'
  ],
  test: /(?!.*\.module)\.css$/,
  use: [
    {
      loader: '/Users/cdom/Developer/work/projects/logancenter-wp/web/app/themes/logan-center/node_modules/mini-css-extract-plugin/dist/loader.js',
      options: [Object],
      ident: 'minicss'
    },
    {
      loader: '/Users/cdom/Developer/work/projects/logancenter-wp/web/app/themes/logan-center/node_modules/@roots/bud-support/lib/css-loader/index.cjs',
      options: [Object],
      ident: 'css'
    },
    {
      loader: '/Users/cdom/Developer/work/projects/logancenter-wp/web/app/themes/logan-center/node_modules/@roots/bud-postcss/node_modules/postcss-loader/dist/cjs.js',
      options: [Object],
      ident: 'postcss'
    }
  ]
}
[logan-center] [@roots/bud-postcss] › ℹ  postcss options {
  config: false,
  sourceMap: false,
  plugins: [
    [
      '/Users/cdom/Developer/work/projects/logancenter-wp/web/app/themes/logan-center/node_modules/postcss-import/index.js',
      undefined
    ],
    [
      '/Users/cdom/Developer/work/projects/logancenter-wp/web/app/themes/logan-center/node_modules/tailwindcss/nesting/index.js',
      undefined
    ],
    [
      '/Users/cdom/Developer/work/projects/logancenter-wp/web/app/themes/logan-center/node_modules/tailwindcss/lib/index.js',
      '/Users/cdom/Developer/work/projects/logancenter-wp/web/app/themes/logan-center/tailwind.config.ts'
    ],
    [
      '/Users/cdom/Developer/work/projects/logancenter-wp/web/app/themes/logan-center/node_modules/@roots/bud-postcss/node_modules/postcss-preset-env/dist/index.cjs',
      [Object]
    ]
  ]
}
[logan-center] › ℹ  built rule {
  include: [
    '/Users/cdom/Developer/work/projects/logancenter-wp/web/app/themes/logan-center/resources'
  ],
  test: /\.module\.css$/,
  use: [
    {
      loader: '/Users/cdom/Developer/work/projects/logancenter-wp/web/app/themes/logan-center/node_modules/mini-css-extract-plugin/dist/loader.js',
      options: [Object],
      ident: 'minicss'
    },
    {
      loader: '/Users/cdom/Developer/work/projects/logancenter-wp/web/app/themes/logan-center/node_modules/@roots/bud-support/lib/css-loader/index.cjs',
      options: [Object],
      ident: 'cssModule'
    },
    {
      loader: '/Users/cdom/Developer/work/projects/logancenter-wp/web/app/themes/logan-center/node_modules/@roots/bud-postcss/node_modules/postcss-loader/dist/cjs.js',
      options: [Object],
      ident: 'postcss'
    }
  ]
}
[logan-center] › ℹ  built rule {
  include: [
    '/Users/cdom/Developer/work/projects/logancenter-wp/web/app/themes/logan-center'
  ],
  test: /\.(csv|tsv)$/,
  use: [
    {
      loader: '/Users/cdom/Developer/work/projects/logancenter-wp/web/app/themes/logan-center/node_modules/@roots/bud-support/lib/csv-loader/index.cjs',
      ident: 'csv'
    }
  ]
}
[logan-center] › ℹ  built rule {
  include: [
    '/Users/cdom/Developer/work/projects/logancenter-wp/web/app/themes/logan-center/resources'
  ],
  test: /\.(ttf|otf|eot|woff2?|ico)$/,
  type: 'asset'
}
[logan-center] › ℹ  built rule {
  include: [
    '/Users/cdom/Developer/work/projects/logancenter-wp/web/app/themes/logan-center'
  ],
  test: /\.(html?)$/,
  use: [
    {
      loader: '/Users/cdom/Developer/work/projects/logancenter-wp/web/app/themes/logan-center/node_modules/@roots/bud-support/vendor/html-loader/index.cjs',
      ident: 'html'
    }
  ]
}
[logan-center] › ℹ  built rule {
  include: [
    '/Users/cdom/Developer/work/projects/logancenter-wp/web/app/themes/logan-center/resources'
  ],
  test: /\.(png|jpe?g|gif|webp)$/,
  type: 'asset/resource'
}
[logan-center] › ℹ  built rule {
  include: [
    '/Users/cdom/Developer/work/projects/logancenter-wp/web/app/themes/logan-center/resources'
  ],
  resourceQuery: /inline/,
  test: /\.(ttf|otf|eot|woff2?|ico)$/,
  type: 'asset/inline'
}
[logan-center] › ℹ  built rule {
  include: [
    '/Users/cdom/Developer/work/projects/logancenter-wp/web/app/themes/logan-center/resources'
  ],
  resourceQuery: /inline/,
  test: /\.(png|jpe?g|gif|webp)$/,
  type: 'asset/inline'
}
[logan-center] › ℹ  built rule {
  generator: { dataUrl: [Function: dataUrl] },
  include: [
    '/Users/cdom/Developer/work/projects/logancenter-wp/web/app/themes/logan-center/resources'
  ],
  resourceQuery: /inline/,
  test: /\.svg$/,
  type: 'asset/inline'
}
[logan-center] › ℹ  built rule {
  include: [
    '/Users/cdom/Developer/work/projects/logancenter-wp/web/app/themes/logan-center/resources'
  ],
  resolve: { fullySpecified: false },
  test: /\.(mjs|jsx?)$/,
  use: [
    { loader: 'ts-loader', options: [Object], ident: 'ts' },
    {
      loader: '/Users/cdom/Developer/work/projects/logancenter-wp/web/app/themes/logan-center/node_modules/@roots/wordpress-hmr/lib/loader.cjs',
      options: [Object],
      ident: '@roots/wordpress-hmr/loader'
    }
  ]
}
[logan-center] › ℹ  built rule {
  include: [
    '/Users/cdom/Developer/work/projects/logancenter-wp/web/app/themes/logan-center'
  ],
  parser: { parse: undefined },
  test: /\.json$/,
  type: 'json'
}
[logan-center] › ℹ  built rule {
  include: [
    '/Users/cdom/Developer/work/projects/logancenter-wp/web/app/themes/logan-center/resources'
  ],
  test: /\.svg$/,
  type: 'asset/resource'
}
[logan-center] › ℹ  built rule {
  include: [
    '/Users/cdom/Developer/work/projects/logancenter-wp/web/app/themes/logan-center'
  ],
  parser: { parse: [Function: parse] },
  test: /\.toml$/,
  type: 'json'
}
[logan-center] › ℹ  built rule {
  include: [
    '/Users/cdom/Developer/work/projects/logancenter-wp/web/app/themes/logan-center/resources'
  ],
  test: /\.webp$/,
  type: 'asset/resource'
}
[logan-center] › ℹ  built rule {
  include: [
    '/Users/cdom/Developer/work/projects/logancenter-wp/web/app/themes/logan-center'
  ],
  test: /\.ya?ml$/,
  use: [
    {
      loader: '/Users/cdom/Developer/work/projects/logancenter-wp/web/app/themes/logan-center/node_modules/@roots/bud-support/lib/yml-loader/index.cjs',
      ident: 'yml'
    }
  ]
}
[logan-center] › ℹ  built rule {
  include: [
    '/Users/cdom/Developer/work/projects/logancenter-wp/web/app/themes/logan-center/resources'
  ],
  test: /\.(tsx?)$/,
  use: [
    { loader: 'ts-loader', options: [Object], ident: 'ts' },
    {
      loader: '/Users/cdom/Developer/work/projects/logancenter-wp/web/app/themes/logan-center/node_modules/@roots/wordpress-hmr/lib/loader.cjs',
      options: [Object],
      ident: '@roots/wordpress-hmr/loader'
    }
  ]
}
[logan-center] [@roots/bud-extensions/mini-css-extract-plugin] › ✔  produced webpack plugin
[logan-center] [@roots/bud-extensions/fix-style-only-entrypoints] › ✔  produced webpack plugin
[logan-center] [@roots/bud-extensions/clean-webpack-plugin] › ✔  produced webpack plugin
[logan-center] [@roots/bud-extensions/copy-webpack-plugin] › ✔  produced webpack plugin
[logan-center] [@roots/bud-extensions/webpack-manifest-plugin] › ✔  produced webpack plugin
[logan-center] [@roots/bud-entrypoints] › ✔  produced webpack plugin
[logan-center] [@roots/bud-eslint] › ✔  produced webpack plugin
[logan-center] [@roots/bud-stylelint] › ✔  produced webpack plugin
[logan-center] [@roots/sage/blade-loader] › ✔  produced webpack plugin
[logan-center] [@roots/bud-wordpress-externals] › ✔  produced webpack plugin
[logan-center] [@roots/bud-wordpress-dependencies] › ✔  produced webpack plugin
[module] › ℹ  [cache hit] resolved @roots/bud-support/css-loader to /Users/cdom/Developer/work/projects/logancenter-wp/web/app/themes/logan-center/node_modules/@roots/bud-support/lib/css-loader/index.cjs
[logan-center] [build] › ✔  built bail
[logan-center] [build] › ✔  built cache
[logan-center] [build] › ✔  built context
[logan-center] [build] › ✔  built dependencies
[logan-center] [build] › ✔  built devtool
[logan-center] [build] › ✔  built entry
[logan-center] [build] › ✔  built experiments
[logan-center] [build] › ✔  built infrastructureLogging
[logan-center] [build] › ✔  built mode
[logan-center] [build] › ✔  built module
[logan-center] [build] › ✔  built name
[logan-center] [build] › ✔  built node
[logan-center] [build] › ✔  built optimization
[logan-center] [build] › ✔  built output
[logan-center] [build] › ✔  built parallelism
[logan-center] [build] › ✔  built performance
[logan-center] [build] › ✔  built recordsPath
[module] › ℹ  [cache hit] resolved @roots/bud-support/file-loader to /Users/cdom/Developer/work/projects/logancenter-wp/web/app/themes/logan-center/node_modules/@roots/bud-support/lib/file-loader/index.cjs
[logan-center] [build] › ✔  built snapshot
[logan-center] [build] › ✔  built stats
[logan-center] [build] › ✔  built target
[module] › ℹ  [cache hit] resolved @roots/bud-support/html-loader to /Users/cdom/Developer/work/projects/logancenter-wp/web/app/themes/logan-center/node_modules/@roots/bud-support/vendor/html-loader/index.cjs
[module] › ℹ  [cache hit] resolved @roots/bud-support/json5 to /Users/cdom/Developer/work/projects/logancenter-wp/web/app/themes/logan-center/node_modules/@roots/bud-support/lib/json5/index.js
[module] › ℹ  [cache hit] resolved mini-svg-data-uri to /Users/cdom/Developer/work/projects/logancenter-wp/web/app/themes/logan-center/node_modules/mini-svg-data-uri/index.js
[module] › ℹ  [cache hit] resolved @roots/bud-support/style-loader to /Users/cdom/Developer/work/projects/logancenter-wp/web/app/themes/logan-center/node_modules/@roots/bud-support/lib/style-loader/index.cjs
[module] › ℹ  [cache hit] resolved @roots/bud-support/toml to /Users/cdom/Developer/work/projects/logancenter-wp/web/app/themes/logan-center/node_modules/@roots/bud-support/lib/toml/index.js
[logan-center] [build] › ✔  built plugins
[logan-center] [build] › ✔  built resolveLoader
[logan-center] [build] › ✔  built resolve
[logan-center] [build] › ✔  configuration successfully built
[logan-center] [hooks] › ▶  build.after Initialized timer...
[logan-center] [hooks] › ◼  build.after Timer run for: 1ms
[logan-center] [hooks] › ▶  compiler.before Initialized timer...
[logan-center] [hooks] › ◼  compiler.before Timer run for: 3ms
[logan-center] [compiler] › ◼  initialize Timer run for: 448ms
[module] › ℹ  [cache miss] resolved stylelint to /Users/cdom/Developer/work/projects/logancenter-wp/web/app/themes/logan-center/node_modules/stylelint/lib/index.js
[webpack] › [webpack.cache.PackFileCacheStrategy] restore cache container: 5.212209 ms
[logan-center] [@roots/bud-extensions/webpack-lifecycle-plugin] › ▶  compile   Initialized timer...
node:internal/modules/cjs/loader:1078
  throw err;
  ^

Error: Cannot find module '/Users/cdom/Developer/work/projects/logancenter-wp/web/app/themes/logan-center/node_modules/stylelint/bin/stylelint.js'
    at Module._resolveFilename (node:internal/modules/cjs/loader:1075:15)
    at Module._load (node:internal/modules/cjs/loader:920:27)
    at Function.executeUserEntryPoint [as runMain] (node:internal/modules/run_main:81:12)
    at node:internal/main/run_main_module:23:47 {
  code: 'MODULE_NOT_FOUND',
  requireStack: []
}

Node.js v18.16.0

 BudError

✘ Command failed with exit code 1: node /Users/cdom/Developer/work/projects/logancenter-wp/web/app/themes/logan-center/node_modules/stylelint/bin/stylelint.js
--log --verbose

☰ Stack trace
BudError: Command failed with exit code 1: node node_modules/stylelint/bin/stylelint.js --log --verbose
    at makeError (node_modules/execa/lib/error.js:59:11)
    at handlePromise (node_modules/execa/index.js:124:26)
    at async BudStylelintCommand.$ (node_modules/@roots/bud/lib/cli/commands/bud.js:65:16)
    at async BudStylelintCommand.execute (node_modules/@roots/bud-stylelint/lib/bud/commands/bud.stylelint.command.js:44:9)
    at async BudStylelintCommand.validateAndExecute (node_modules/clipanion/lib/advanced/Command.js:73:26)
    at async Cli.run (node_modules/clipanion/lib/advanced/Cli.js:223:24)
    at async Cli.runExit (node_modules/clipanion/lib/advanced/Cli.js:232:28)

Configuration

/// <https://github.com/roots/bud>

import type {Bud} from '@roots/bud'
import postcss from 'postcss'
import type {MixinFn} from 'postcss-mixins'

const postcssMixins = {
  prose: function (mixin, selector, className = 'prose') {
    const notClassName = `not-${className}`
    const selectorPrefix = selector.startsWith('>') ? `.${className} ` : ''
    const whereSelector =
      '& ' +
      `:where(${selectorPrefix}${selector})` +
      `:not(:where([class~="${notClassName}"] *))`
    const rule = postcss.rule({selector: whereSelector})
    rule.append(mixin.nodes)
    mixin.replaceWith(rule)
  } satisfies MixinFn,
}

const Config = async (app: Bud): Promise<void> => {
  app.postcss.setPlugin('mixins', [
    await app.module.resolve('postcss-mixins'),
    {mixins: postcssMixins},
  ])

  /**
   * Application entrypoints
   * @see {@link https://bud.js.org/docs/bud.entry/}
   */
  app
    .entry({
      app: ['@scripts/app', '@styles/app'],
      editor: ['@scripts/editor', '@styles/editor'],
    })

    /**
     * Directory contents to be included in the compilation
     * @see {@link https://bud.js.org/docs/bud.assets/}
     */
    .assets(['images'])

    /**
     * Matched files trigger a page reload when modified
     * @see {@link https://bud.js.org/docs/bud.watch/}
     */
    .watch(['resources/views', 'app'])

    /**
     * Proxy origin (`WP_HOME`)
     * @see {@link https://bud.js.org/docs/bud.proxy/}
     */
    .proxy('https://logancenter.ddev.site')

    /**
     * Development origin
     * @see {@link https://bud.js.org/docs/bud.serve/}
     */
    .serve({
      ssl: true,
      host: 'localhost',
      port: 3003,
      cert: app.path('localhost.pem'),
      key: app.path('localhost-key.pem'),
    })

    /**
     * URI of the `public` directory
     * @see {@link https://bud.js.org/docs/bud.setPublicPath/}
     */
    .setPublicPath('/app/themes/logan-center/public/')

  /**
   * Generate WordPress `theme.json`
   *
   * NOTE: This is kept in place, but commented out, so that bulk settings can be regenerated
   *       (e.g. colors). It should only be uncommented during development
   *       until upstream improves the capabilities of this extension.
   *
   * FIXME: unusable without support for declaring properties at top-level (e.g. `styles`)
   *
   * @note This overwrites `theme.json` on every build.
   *
   * @see {@link https://bud.js.org/extensions/sage/theme.json/}
   * @see {@link https://developer.wordpress.org/block-editor/how-to-guides/themes/theme-json/}
   */
  // .wpjson.settings({
  //   color: {
  //     custom: false,
  //     customDuotone: false,
  //     customGradient: false,
  //     defaultDuotone: false,
  //     defaultGradients: false,
  //     defaultPalette: false,
  //     duotone: [],
  //   },
  //   custom: {
  //     spacing: {},
  //     typography: {
  //       'font-size': {},
  //       'line-height': {},
  //     },
  //   },
  //   spacing: {
  //     padding: true,
  //     units: ['px', '%', 'em', 'rem', 'vw', 'vh'],
  //   },
  //   typography: {
  //     customFontSize: false,
  //   },
  // })
  // .useTailwindColors()
  // .useTailwindFontFamily()
  // .useTailwindFontSize()
  // .enable()
}

export default Config

Relevant .budfiles

No response

@montchr montchr added the bug Something isn't working label Jul 7, 2023
@montchr
Copy link
Sponsor Author

montchr commented Jul 7, 2023

I see that Stylelint has renamed the file from stylelint.js to stylelint.mjs:

https://github.com/stylelint/stylelint/commits/main/bin/stylelint.mjs

Edit: this needs to change (does it really need to be hardcoded?):

const bin = join(stylelint, `bin`, `stylelint.js`)

@kellymears
Copy link
Member

kellymears commented Jul 8, 2023

Right now bud.js ships with stylelint 5.9.0 and the command works with that binary. As you mentioned, you're on 5.10.x, and I can reproduce your issue under those conditions, but bud.js makes no guarantees about compatibility when you're rolling with your own dependencies.

I think the bin path does need to be hardcoded because we can't guarantee the user will have a copy of stylelint resolvable as a peer dependency. It depends on the module resolution and hoisting strategies utilized by their package manager and how its configured.

bud.module uses import-meta-resolve to reliably source modules even when people are using zero-install or pnpm style module hoisting. It works really well.

All that said, some additional assurance that the binary is resolvable when constructing the proxied args array: #2367.

@kellymears kellymears added cli related to bud cli and removed bug Something isn't working labels Jul 8, 2023
@kellymears
Copy link
Member

Should be fixed in 6.14.2

https://github.com/roots/bud/releases/tag/v6.14.2

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
cli related to bud cli
Projects
None yet
Development

No branches or pull requests

2 participants