firebase / firebase-tools

The Firebase Command Line Tools
MIT License
3.99k stars 920 forks source link

Error: @angular-builders/custom-webpack:browser is not a recognized builder. Please check your angular.json #6602

Open ginobean opened 8 months ago

ginobean commented 8 months ago

[REQUIRED] Environment info

13.0.1

firebase-tools:

Ubuntu

Platform:

Ubuntu

[REQUIRED] Test case

[REQUIRED] Steps to reproduce

firebase deploy (using @angular-builders/custom-webpack:browser as the builder).

[REQUIRED] Expected behavior

Successful deployment.

[REQUIRED] Actual behavior

Deployment fails with an error.


Interestingly, I downgraded from version from 13.0.1 to firebase-tools@12 and was able to successfully deploy thereafter..

Have NO idea what the error means or what the resolution should be..

google-oss-bot commented 8 months ago

This issue does not have all the information required by the template. Looks like you forgot to fill out some sections. Please update the issue with more information.

ginobean commented 8 months ago

angular.json

jamesdaniels commented 8 months ago

With the support for Angular v17 and the new esbuild/vite based application builder, we now require explicit support for builders in our source code.

These new application builders broke the NPM command sequence and output directory structures that have been stable for years. While they are certainly a welcome improvement, we can no longer have those assumptions hardcoded.

ATM we're supporting known first party builders (Angular, Angular DevKit, and nguniversal). In this case it seems we need to add another browser builder, which shouldn't be a big deal, but obviously we'll want to check assumptions and write some test coverage.

Does that make sense?

ginobean commented 8 months ago

That sounds good. Alternatively, could you use a config file to hold the list of supported builders? Might make it easier to add new builders going forwards, and allow us (users) to add to the list.. Such that once the test coverage is ready, we could potentially verify a new builder ourselves, by running the new builder against the tests..

jamesdaniels commented 8 months ago

In the meantime it looks like you're using the gen1 schematic from AngularFire, so ng deploy should still work. If you have a problem with that command file over in the AngularFire repo. There is configuration that would allow use against gen2 functions.

Or you could stay on the old CLI until we figure this out. Thanks for understanding.

ginobean commented 8 months ago

I'll just stay on firebase-tools version 12 for now..