@@ -5,7 +5,7 @@ import { copySync, removeSync } from 'fs-extra';
55import  {  dirname ,  join  }  from  'path' ; 
66import  {  execSync ,  spawn ,  SpawnOptionsWithoutStdio  }  from  'child_process' ; 
77import  {  defaultFunction ,  functionGen2 ,  defaultPackage ,  DEFAULT_FUNCTION_NAME ,  dockerfile  }  from  './functions-templates' ; 
8- import  {  satisfies  }  from  'semver' ; 
8+ import  {  satisfies ,   lt  }  from  'semver' ; 
99import  open  from  'open' ; 
1010import  {  SchematicsException  }  from  '@angular-devkit/schematics' ; 
1111import  {  firebaseFunctionsDependencies  }  from  '../versions.json' ; 
@@ -79,7 +79,7 @@ const deployToHosting = async (
7979    await  firebaseTools . serve ( { 
8080      port : DEFAULT_EMULATOR_PORT , 
8181      host : DEFAULT_EMULATOR_HOST , 
82-       targets :  [ `hosting:${ siteTarget }  ] , 
82+       only :  `hosting:${ siteTarget }  , 
8383      nonInteractive : true , 
8484      projectRoot : workspaceRoot , 
8585    } ) ; 
@@ -92,6 +92,8 @@ const deployToHosting = async (
9292
9393    if  ( ! deployProject )  {  return ;  } 
9494
95+     process . env . FIREBASE_FRAMEWORKS_SKIP_BUILD  =  'true' ; 
96+ 
9597  } 
9698
9799  return  await  firebaseTools . deploy ( { 
@@ -394,37 +396,44 @@ export default async function deploy(
394396    console . log ( `Logged into Firebase as ${ user . email }  ) ; 
395397  } 
396398
397-   if  ( prerenderBuildTarget )  { 
399+   if  ( options . version  &&  options . version  >=  2 )  { 
400+     if  ( lt ( firebaseTools . cli . version ( ) ,  '12.2' ) )  { 
401+       throw  new  SchematicsException ( 'firebase-tools version 12.2+ is required.' ) ; 
402+     } 
403+     process . env . FIREBASE_FRAMEWORK_BUILD_TARGET  =  ( prerenderBuildTarget  ||  serverBuildTarget  ||  staticBuildTarget ) . name ; 
404+   }  else  { 
405+     if  ( prerenderBuildTarget )  { 
398406
399-     const  run  =  await  context . scheduleTarget ( 
400-       targetFromTargetString ( prerenderBuildTarget . name ) , 
401-       prerenderBuildTarget . options 
402-     ) ; 
403-     await  run . result ; 
407+        const  run  =  await  context . scheduleTarget ( 
408+          targetFromTargetString ( prerenderBuildTarget . name ) , 
409+          prerenderBuildTarget . options 
410+        ) ; 
411+        await  run . result ; 
404412
405-   }  else  { 
413+      }  else  { 
406414
407-     if  ( ! context . target )  { 
408-       throw  new  Error ( 'Cannot execute the build target' ) ; 
409-     } 
415+        if  ( ! context . target )  { 
416+          throw  new  Error ( 'Cannot execute the build target' ) ; 
417+        } 
410418
411-     context . logger . info ( `📦 Building "${ context . target . project }  ) ; 
419+        context . logger . info ( `📦 Building "${ context . target . project }  ) ; 
412420
413-     const  builders  =  [ 
414-       context . scheduleTarget ( 
415-         targetFromTargetString ( staticBuildTarget . name ) , 
416-         staticBuildTarget . options 
417-       ) . then ( run  =>  run . result ) 
418-     ] ; 
421+        const  builders  =  [ 
422+          context . scheduleTarget ( 
423+            targetFromTargetString ( staticBuildTarget . name ) , 
424+            staticBuildTarget . options 
425+          ) . then ( run  =>  run . result ) 
426+        ] ; 
419427
420-     if  ( serverBuildTarget )  { 
421-       builders . push ( context . scheduleTarget ( 
422-         targetFromTargetString ( serverBuildTarget . name ) , 
423-         serverBuildTarget . options 
424-       ) . then ( run  =>  run . result ) ) ; 
425-     } 
428+        if  ( serverBuildTarget )  { 
429+          builders . push ( context . scheduleTarget ( 
430+            targetFromTargetString ( serverBuildTarget . name ) , 
431+            serverBuildTarget . options 
432+          ) . then ( run  =>  run . result ) ) ; 
433+        } 
426434
427-     await  Promise . all ( builders ) ; 
435+       await  Promise . all ( builders ) ; 
436+     } 
428437  } 
429438
430439  try  { 
@@ -457,7 +466,7 @@ export default async function deploy(
457466
458467  firebaseTools . logger . logger . add ( logger ) ; 
459468
460-   if  ( serverBuildTarget )  { 
469+   if  ( ( ! options . version   ||   options . version   <   2 )   &&   serverBuildTarget )  { 
461470    if  ( options . ssr  ===  'cloud-run' )  { 
462471      await  deployToCloudRun ( 
463472        firebaseTools , 
0 commit comments