Asynchronous discovery is necessary to allow for use of dynamic awaitable imports (await import(...)) of peer dependencies to provide an optimal DX, where no manual dependency injection is required.
Only log out discovered workflows that are served (move the prettyPrintDiscovery to the client. This also lays the groundwork for making the pretty discovery use a custom logger
Screenshots
next dev --turbopack compatibility is a step closer now, erroring out with module not found rather than the previous require polyfill error.Some further investigation is to identify the root cause for the new problem. Judging by the docs at https://nextjs.org/docs/messages/module-not-found, it's probably:
The module you're trying to import uses Node.js specific modules, for example dns, outside of getStaticProps / getStaticPaths / getServerSideProps. Here is the current usage of node built-in modules (node:crypto is used at runtime for HMAC header validation, node:util/types is used for an error type guard).
What changed? Why was the change needed?
await import(...)
) of peer dependencies to provide an optimal DX, where no manual dependency injection is required.prettyPrintDiscovery
to theclient
. This also lays the groundwork for making the pretty discovery use a custom loggerScreenshots
next dev --turbopack
compatibility is a step closer now, erroring out withmodule not found
rather than the previousrequire
polyfill error.Some further investigation is to identify the root cause for the new problem. Judging by the docs at https://nextjs.org/docs/messages/module-not-found, it's probably:The module you're trying to import uses Node.js specific modules, for example dns, outside of getStaticProps / getStaticPaths / getServerSideProps
. Here is the current usage ofnode
built-in modules (node:crypto
is used at runtime for HMAC header validation,node:util/types
is used for an error type guard).Expand for optional sections
### Related enterprise PR ### Special notes for your reviewer