Version info
Angular: 21.2.x Firebase: 12.x AngularFire: 21.0.0-rc.0
How to reproduce these conditions
- npm pack @angular/fire@next and inspect fesm2022/angular-fire.mjs — search for ANGULARFIRE2_VERSION.
- Or in an app: import { VERSION } from '@angular/fire'; console.log(VERSION.full);
Expected behavior
VERSION.full (and the underlying Version object in src/core.ts) should report the real installed version, e.g. 21.0.0-rc.0.
Actual behavior
VERSION is constructed as new Version('ANGULARFIRE2_VERSION') - the build-time placeholder that's supposed to be replaced with the real version before publishing, but isn't for this occurrence. The published package ships the literal string.
A related mechanism is also broken: src/schematics/versions.json's peerDependencies/firebaseFunctionsDependencies data is filled in by tools/build.ts after the schematics are bundled with esbuild, which has already inlined the JSON import from the unfilled source file at compile time.
- The post-build edit to versions.json on disk is never read by the shipped schematic code.
- One concrete effect: addDependencies() in src/schematics/common.ts never has real version data to check against, so it can't detect or warn about conflicting dependency versions the way it appears designed to.
Will need a decision on one of these approaches:
Reactions are currently unavailable
Version info
Angular: 21.2.x Firebase: 12.x AngularFire: 21.0.0-rc.0
How to reproduce these conditions
Expected behavior
VERSION.full (and the underlying Version object in src/core.ts) should report the real installed version, e.g. 21.0.0-rc.0.
Actual behavior
VERSION is constructed as new Version('ANGULARFIRE2_VERSION') - the build-time placeholder that's supposed to be replaced with the real version before publishing, but isn't for this occurrence. The published package ships the literal string.
A related mechanism is also broken: src/schematics/versions.json's peerDependencies/firebaseFunctionsDependencies data is filled in by tools/build.ts after the schematics are bundled with esbuild, which has already inlined the JSON import from the unfilled source file at compile time.
Will need a decision on one of these approaches: