We've had dataform definitions coexisting with a couple of web apps and some terraform for a while now, with no problems. We had to share a dependency between the apps and used npm workspaces to achieve this (alongside turborepo). We've just merged this and then noticed our release config fails to compile with the following error:
API request error: NPM Execution error: npm ERR! code EUSAGE npm ERR! npm ERR! The `npm ci` command can only install with an existing package-lock.json or npm ERR! npm-shrinkwrap.json with lockfileVersion >= 1. Run an install with npm@5 or npm ERR! later to generate a package-lock.json file, then try again. npm ERR! npm ERR! Clean install a project npm ERR! npm ERR! Usage: npm ERR! npm ci npm ERR! npm ERR! Options: npm ERR! [-S|--save|--no-save|--save-prod|--save-dev|--save-optional|--save-peer|--save-bundle] npm ERR! [-E|--save-exact] [-g|--global] [--global-style] [--legacy-bundling] npm ERR! [--omit <dev|optional|peer> [--omit <dev|optional|peer> ...]] npm ERR! [--strict-peer-deps] [--no-package-lock] [--foreground-scripts] npm ERR! [--ignore-scripts] [--no-audit] [--no-bin-links] [--no-fund] [--dry-run] npm ERR! [-w|--workspace <workspace-name> [-w|--workspace <workspace-name> ...]] npm ERR! [-ws|--workspaces] [--include-workspace-root] [--install-links] npm ERR! npm ERR! aliases: clean-install, ic, install-clean, isntall-clean npm ERR! npm ERR! Run "npm help ci" for more info npm ERR! Log files were not written due to the config logs-max=0
We see other npm related errors in other parts of the UI. For example, when we try to create a new workspace we get the following error:
API request error: NPM Execution error: npm ERR! minimatch is not a function npm ERR! Log files were not written due to the config logs-max=0
I deleted the workspaces part of our package.json and this removed the errors.
If this is a known problem, do you have an idea of when you might support npm workspaces? I feel like our choices are to break up our repository or move to dbt, both of which feel a shame.