Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

chore(deps): update angular monorepo to v19 (major) #381

Open
wants to merge 1 commit into
base: master
Choose a base branch
from

Conversation

renovate[bot]
Copy link
Contributor

@renovate renovate bot commented Nov 19, 2024

This PR contains the following updates:

Package Change Age Adoption Passing Confidence
@angular/common (source) 18.2.12 -> 19.0.0 age adoption passing confidence
@angular/compiler (source) 18.2.12 -> 19.0.0 age adoption passing confidence
@angular/compiler-cli (source) 18.2.12 -> 19.0.0 age adoption passing confidence
@angular/core (source) ^18.0.0 -> ^18.0.0 || ^19.0.0 age adoption passing confidence
@angular/core (source) 18.2.12 -> 19.0.0 age adoption passing confidence
@angular/forms (source) 18.2.12 -> 19.0.0 age adoption passing confidence
@angular/platform-browser (source) ^18.0.0 -> ^18.0.0 || ^19.0.0 age adoption passing confidence
@angular/platform-browser (source) 18.2.12 -> 19.0.0 age adoption passing confidence
@angular/platform-browser-dynamic (source) 18.2.12 -> 19.0.0 age adoption passing confidence
@angular/router (source) ^18.0.0 -> ^18.0.0 || ^19.0.0 age adoption passing confidence
@angular/router (source) 18.2.12 -> 19.0.0 age adoption passing confidence

Release Notes

angular/angular (@​angular/common)

v19.0.0

Compare Source

Breaking Changes

compiler
  • this.foo property reads no longer refer to template context variables. If you intended to read the template variable, do not use this..
core
  • Generally this PR has two implications:

    • effects which are triggered outside of change detection run as part of
      the change detection process instead of as a microtask. Depending on the
      specifics of application/test setup, this can result in them executing
      earlier or later (or requiring additional test steps to trigger; see below
      examples).

    • effects which are triggered during change detection (e.g. by input
      signals) run earlier, before the component's template.

    We've seen a few common failure cases:

    • Tests which used to rely on the Promise timing of effects now need to
      await whenStable() or call .detectChanges() in order for effects to
      run.

    • Tests which use faked clocks may need to fast-forward/flush the clock to
      cause effects to run.

    • effect()s triggered during CD could rely on the application being fully
      rendered (for example, they could easily read computed styles, etc). With
      the change, they run before the component's updates and can get incorrect
      answers. The recent afterRenderEffect() API is a natural replacement for
      this style of effect.

    • effect()s which synchronize with the forms system are particularly
      timing-sensitive and might need to adjust their initialization timing.

    • TypeScript versions less than 5.5 are no longer supported.
  • ExperimentalPendingTasks has been renamed to
    PendingTasks.

  • Angular directives, components and pipes are now standalone by default. Specify for declarations that are currently declared in s. for v19 will take care of this automatically.

  • The autoDetect feature of ComponentFixture will now
    attach the fixture to the ApplicationRef. As a result, errors during
    automatic change detection of the fixture be reported to the ErrorHandler.
    This change may cause custom error handlers to observe new failures that were previously unreported.

  • Render default fallback with empty projectableNodes.

    When passing an empty array to projectableNodes in the createComponent API, the default fallback content of the ng-content will be rendered if present. To prevent rendering the default content, pass document.createTextNode('') as a projectableNode.

    For example:

    // The first ng-content will render the default fallback content if present
    createComponent(MyComponent. { projectableNodes: [[], [secondNode]] });
    
    // To prevent projecting the default fallback content:
    createComponent(MyComponent. { projectableNodes: [[document.createTextNode('')], [secondNode]] });
  • Errors that are thrown during ApplicationRef.tick
    will now be rethrown when using TestBed. These errors should be
    resolved by ensuring the test environment is set up correctly to
    complete change detection successfully. There are two alternatives to
    catch the errors:

    • Instead of waiting for automatic change detection to happen, trigger
      it synchronously and expect the error. For example, a jasmine test
      could write expect(() => TestBed.inject(ApplicationRef).tick()).toThrow()
    • TestBed will reject any outstanding ComponentFixture.whenStable promises. A jasmine test,
      for example, could write expectAsync(fixture.whenStable()).toBeRejected().

    As a last resort, you can configure errors to not be rethrown by
    setting rethrowApplicationErrors to false in TestBed.configureTestingModule.

  • The timers that are used for zone coalescing and hybrid
    mode scheduling (which schedules an application state synchronization
    when changes happen outside the Angular zone) will now run in the zone
    above Angular rather than the root zone. This will mostly affect tests
    which use fakeAsync: these timers will now be visible to fakeAsync
    and can be affected by tick or flush.

  • The deprecated factories property in KeyValueDiffers has been removed.

elements
  • as part of switching away from custom CD behavior to the
    hybrid scheduler, timing of change detection around custom elements has
    changed subtly. These changes make elements more efficient, but can cause
    tests which encoded assumptions about how or when elements would be checked
    to require updating.
localize
  • The name option in the ng add @localize`` schematic has been removed in favor of the project option.
platform-browser
  • The deprecated BrowserModule.withServerTransition method has been removed. Please use the APP_ID DI token to set the application id instead.
router
  • The Router.errorHandler property has been removed.
    Adding an error handler should be configured in either
    withNavigationErrorHandler with provideRouter or the errorHandler
    property in the extra options of RouterModule.forRoot. In addition,
    the error handler cannot be used to change the return value of the
    router navigation promise or prevent it from rejecting. Instead, if you
    want to prevent the promise from rejecting, use resolveNavigationPromiseOnError.
  • The return type of the Resolve interface now includes
    RedirectCommand.
common
Commit Type Description
24c6373820 feat add optional rounded transform support in cloudinary image loader (#​55364)
50f08e6c4b feat automatically use sizes auto in NgOptimizedImage (#​57479)
13c13067bc feat disable keyvalue sorting using null compareFn (#​57487)
compiler
Commit Type Description
a2e4ee0cb3 feat add diagnostic for unused standalone imports (#​57605)
0c9d721ac1 feat add support for the typeof keyword in template expressions. (#​58183)
09f589f000 fix this.a should always refer to class property a (#​55183)
98804fd4be fix add more specific matcher for hydrate never block (#​58360)
b25121ee4a fix avoid having to duplicate core environment (#​58444)
560282aa9b fix control flow nodes with root at the end projected incorrectly (#​58607)
2be161d015 fix fix :host parsing in pseudo-selectors (#​58681)
806a61b5a6 fix fix multiline selectors (#​58681)
a3cb530d84 fix handle typeof expressions in serializer (#​58217)
ba4340875a fix ignore placeholder-only i18n messages (#​58154)
e5d3abb298 fix resolve :host:host-context(.foo) (#​58681)
80f56954ce fix transform chained pseudo-selectors (#​58681)
compiler-cli
Commit Type Description
d9687f43dd feat 'strictStandalone' flag enforces standalone (#​57935)
9e87593055 feat ensure template style elements are preprocessed as inline styles (#​57429)
231e6ff6ca feat generate the HMR replacement module (#​58205)
dbe612f2cd fix disable standalone by default on older versions of Angular (#​58405)
d4d76ead80 fix do not fail fatal when references to non-existent module are discovered (#​58515)
33fe252c58 fix do not report unused declarations coming from an imported array (#​57940)
fb44323c51 fix incorrectly generating relative file paths on case-insensitive platforms (#​58150)
22cd6869ef fix make the unused imports diagnostic easier to read (#​58468)
9bbb01c85e fix report individual diagnostics for unused imports (#​58589)
4716c3b966 perf reduce duplicate component style resolution (#​57502)
core
Commit Type Description
6ea8e1e9aa feat Add a schematics to migrate to standalone: false. (#​57643)
3ebe6b4ad4 feat Add async run method on ExperimentalPendingTasks (#​56546)
69fc5ae922 feat Add incremental hydration public api (#​58249)
8ebbae88ca feat Add rxjs operator prevent app stability until an event (#​56533)
19edf2c057 feat add syntactic sugar for initializers (#​53152)
c93b510f9b feat allow passing undefined without needing to include it in the type argument of input (#​57621)
ab25a192ba feat allow running output migration on a subset of paths (#​58299)
fc59e2a7b7 feat change effect() execution timing & no-op allowSignalWrites (#​57874)
8bcc663a53 feat drop support for TypeScript 5.4 (#​57577)
18d8d44b1f feat experimental resource() API for async dependencies (#​58255)
9762b24b5e feat experimental impl of rxResource() (#​58255)
6b8c494d05 feat flipping the default value for standalone to true (#​58169)
e6e5d29e83 feat initial version of the output migration (#​57604)
be2e49639b feat introduce afterRenderEffect (#​57549)
ec386e7f12 feat introduce debugName optional arg to framework signal functions (#​57073)
8311f00faa feat introduce the reactive linkedSignal (#​58189)
1b1519224d feat mark input, output and model APIs as stable (#​57804)
a7eff3ffaa feat mark signal-based query APIs as stable (#​57921)
a1f229850a feat migrate ExperimentalPendingTasks to PendingTasks (#​57533)
3f1e7ab6ae feat promote outputFromObservable & outputToObservable to stable. (#​58214)
97c44a1d6c feat Promote takeUntilDestroyed to stable. (#​58200)
e5adf92965 feat stabilize @let syntax (#​57813)
b063468027 feat support TypeScript 5.6 (#​57424)
819ff034ce feat treat directives, pipes, components as by default (#​58229)
ee426c62f0 fix allow signal write error (#​57973)
c095679f92 fix avoid breaking change with apps using rxjs 6.x (#​58341)
71ee81af2c fix clean up event contract once hydration is done (#​58174)
f03d274e87 fix ComponentFixture autoDetect feature works like production (#​55228)
950a5540f1 fix Ensure the ViewContext is retained after closure minification (#​57903)
7b1e5be20b fix fallback to default ng-content with empty projectable nodes. (#​57480)
0300dd2e18 fix Fix fixture.detectChanges with autoDetect disabled and zoneless (#​57416)
5fe57d4fbb fix fixes issues with control flow and incremental hydration (#​58644)
51933ef5a6 fix prevent errors on contract cleanup (#​58614)
fd7716440b fix Prevents trying to trigger incremental hydration on CSR (#​58366)
656b5d3e78 fix Re-assign error codes to be within core bounds (<1000) (#​53455)
6e0af6dbbb fix resolve forward-referenced host directives during directive matching (#​58492)
468d3fb9b1 fix rethrow errors during ApplicationRef.tick in TestBed (#​57200)
226a67dabb fix Schedulers run in zone above Angular rather than root (#​57553)
97fb86d331 perf set encapsulation to None for empty component styles (#​57130)
c15ec36bd1 refactor remove deprecated factories Property in KeyValueDiffers (#​58064)
elements
Commit Type Description
fe5c4e086a fix support output()-shaped outputs (#​57535)
0cebfd7462 fix switch to ComponentRef.setInput & remove custom scheduler (#​56728)
forms
Commit Type Description
3e7d724037 feat add ability to clear a FormRecord (#​50750)
18b6f3339f fix fix FormRecord type inference (#​50750)
http
Commit Type Description
4b9accdf16 feat promote withRequestsMadeViaParent to stable. (#​58221)
057cf7fb6b fix preserve all headers from Headers object (#​57802)
language-service
Commit Type Description
8da9fb49b5 feat add code fix for unused standalone imports (#​57605)
1f067f4507 feat add code reactoring action to migrate @Input to signal-input (#​57214)
56ee47f2ec feat allow code refactorings to compute edits asynchronously (#​57214)
bc83fc1e2e feat support converting to signal queries in VSCode extension (#​58106)
5c4305f024 feat support migrating full classes to signal inputs in VSCode (#​57975)
6342befff8 feat support migrating full classes to signal queries (#​58263)
7ecfd89592 fix The suppress diagnostics option should work for external templates (#​57873)
localize
Commit Type Description
9c3bd1b5d1 refactor remove deprecated name option. (#​58063)
migrations
Commit Type Description
dff4de0f75 feat add a combined migration for all signals APIs (#​58259)
b6bc93803c feat add schematic to migrate to signal queries (#​58032)
bb286f65e7 feat capture output migration stats (#​58321)
2bfc64daf1 feat expose output as function migration (#​58299)
59fe9bc772 feat introduce signal input migration as ng generate schematic (#​57805)
cbec46a51d feat migrate .pipe calls in outputs used in tests (#​57691)
cf70d626cd feat print output migration stats in ng generate (#​58321)
68e5370a66 feat remove complete calls for migrated outputs (#​57671)
9da21f798d feat replace .next usage on outputs (#​57654)
42607bf0f2 fix add outputs migration to combined shorthand (#​58318)
71f5ef2aa5 fix change imports to be G3 compatible (#​57654)
e6514b9f3d fix do not migrate next calls in template if not an EventEmitter (#​58631)
c5e676bb87 fix flip the default standalone flag in route-lazy-loading migration (#​58474)
b84ed2b628 fix include the output migration in the defaults of the signal migration (#​58635)
90c7ec39a0 fix inject migration always inserting generated variables before super call (#​58393)
7a65cdd911 fix inject migration not inserting generated code after super call in some cases (#​58393)
00e2001351 fix migrate more .next output usages (#​58282)
e85ac5c7cb fix properly bundle shared compiler code into migrations (#​58515)
3a264db866 fix properly handle comments in output migration (#​57691)
616b411a6d fix properly migrate output aliases (#​58411)
d504452e2f fix properly replace imports across files (#​58414)
c1aa411cf1 fix properly resolve tsconfig paths on windows (#​58137)
e26797b38e fix replace removed NgModules in tests with their exports (#​58627)
platform-browser
Commit Type Description
c36a1c023b fix correctly add external stylesheets to ShadowDOM components (#​58482)
5c61f46409 refactor remove deprecated BrowserModule.withServerTransition method (#​58062)
platform-server
Commit Type Description
9e82559de4 fix destroy PlatformRef when error happens during the bootstrap() phase (#​58112)
router
Commit Type Description
f271021e19 feat Add routerOutletData input to RouterOutlet directive (#​57051)
b2790813a6 fix Align RouterModule.forRoot errorHandler with provider error handler (#​57050)
a49c35ec76 fix remove setter for injector on OutletContext (#​58343)
7436d3180e fix Update Resolve interface to include RedirectCommand like ResolveFn (#​57309)
service-worker
Commit Type Description
8ddce80a0b feat allow specifying maxAge for entire application (#​49601)
1479af978c feat finish implementation of refreshAhead feature (#​53356)

Configuration

📅 Schedule: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).

🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.

Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.

🔕 Ignore: Close this PR and you won't be reminded about these updates again.


  • If you want to rebase/retry this PR, check this box

This PR was generated by Mend Renovate. View the repository job log.

@renovate renovate bot force-pushed the renovate/major-angular-monorepo branch from a5c44c0 to cc8c396 Compare November 19, 2024 21:06
@renovate renovate bot force-pushed the renovate/major-angular-monorepo branch from cc8c396 to 5215fd3 Compare November 23, 2024 06:39
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

0 participants