Skip to content

breaking: remove Angular 17 support #31446

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

Open
wants to merge 3 commits into
base: release/15.0.0
Choose a base branch
from

Conversation

AtofStryker
Copy link
Contributor

Description

This PR removes support for Angular 17 as part of our ongoing maintenance and support strategy. This is a breaking change that affects users of the @cypress/angular package.

Changes

  • Removed Angular 17 from supported versions
  • Updated minimum version requirements to Angular 18 and 19
  • Updated project configurations and dependencies
  • Updated documentation and changelog

Breaking Changes

  • The @cypress/angular package no longer supports Angular 17
  • Users must upgrade to Angular 18 or 19 to continue using Cypress with Angular

Migration Steps

Users currently using Angular 17 with Cypress should:

  1. Upgrade their Angular project to version 18 or 19
  2. Update their Cypress configuration if necessary
  3. Run their test suite to ensure compatibility

Related Issues

Testing

  • Verified changes in Angular 18 projects
  • Verified changes in Angular 19 projects
  • Updated documentation reflects new version requirements
  • Changelog entries are accurate and complete

Additional Notes

  • This change aligns with Angular's support lifecycle
  • Users are encouraged to upgrade to the latest supported Angular version for best compatibility and security

@AtofStryker AtofStryker force-pushed the breaking/remove_angular_17_cursor branch 5 times, most recently from e1def53 to dce2f6e Compare April 3, 2025 22:23
BREAKING CHANGE: Removed support for Angular 17. Only Angular 18 and 19 are now supported. This change affects the @cypress/angular package. Addresses #31303.
@AtofStryker AtofStryker force-pushed the breaking/remove_angular_17_cursor branch 3 times, most recently from cca72cd to aa36f04 Compare April 3, 2025 22:32
@AtofStryker AtofStryker force-pushed the breaking/remove_angular_17_cursor branch from aa36f04 to 93b6ba4 Compare April 3, 2025 22:33
@jennifer-shehane jennifer-shehane added the type: breaking change Requires a new major release version label Apr 4, 2025
@@ -6,7 +6,7 @@ Mount Angular components in the open source [Cypress.io](https://www.cypress.io/

## Requirements

- Angular 17.2.0+ (Cypress 13 and under supports Angular 13 - 16)
- Angular 18.0.0+ (Cypress 13 and under supports Angular 13 - 16)
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@AtofStryker This note is now a bit weird with it mentioning no way to run Angular 17

@@ -31,7 +31,7 @@

## Requirements

- Angular 17.2.0+ (Cypress 13 and under supports Angular 13 - 16)
- Angular 18.0.0+ (Cypress 13 and under supports Angular 13 - 16)
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Here too

@AtofStryker
Copy link
Contributor Author

@jennifer-shehane this really should be a WIP but I was trying to figure out how to kick off CI with cursor. As it stands the cursor agent wrote this whole PR 😬

@AtofStryker AtofStryker requested a review from Copilot April 4, 2025 18:52
Copy link
Contributor

@Copilot Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Copilot reviewed 16 out of 21 changed files in this pull request and generated no comments.

Files not reviewed (5)
  • npm/angular/package.json: Language not supported
  • npm/cypress-schematic/package.json: Language not supported
  • system-tests/projects/angular-17/angular.json: Language not supported
  • system-tests/projects/angular-17/package.json: Language not supported
  • system-tests/projects/angular-signals/package.json: Language not supported
Comments suppressed due to low confidence (1)

system-tests/projects/angular-signals/src/signals-complex/signals-complex.component.ts:29

  • The updated comment is now ambiguous regarding the affected Angular version. Since Angular 17 is no longer supported, consider clarifying the comment to indicate whether this bug pertains to older Angular versions or removing the version-specific note altogether.
// there is a bug in Angular that doesn't rerender the signal when set outside the component context

Copy link

cypress bot commented Apr 4, 2025

cypress    Run #61410

Run Properties:  status check failed Failed #61410  •  git commit 2b2ecf49d4: empty commit to kick CI
Project cypress
Branch Review breaking/remove_angular_17_cursor
Run status status check failed Failed #61410
Run duration 45m 41s
Commit git commit 2b2ecf49d4: empty commit to kick CI
Committer AtofStryker
View all properties for this run ↗︎

Test results
Tests that failed  Failures 8
Tests that were flaky  Flaky 13
Tests that did not run due to a developer annotating a test with .skip  Pending 1099
Tests that did not run due to a failure in a mocha hook  Skipped 3
Tests that passed  Passing 26565
View all changes introduced in this branch ↗︎
UI Coverage  46.18%
  Untested elements 185  
  Tested elements 163  
Accessibility  92.63%
  Failed rules  3 critical   8 serious   2 moderate   2 minor
  Failed elements 879  

Tests for review

Failed  runner/ct-framework-errors.cy.ts • 1 failed test • app-e2e

View Output

Test Artifacts
Angular 17 > error conditions Test Replay Screenshots
Failed  runner/reporter-ct-mount-hover.cy.ts • 1 failed test • app-e2e

View Output

Test Artifacts
CT Mount angular-19 > While hovering on Mount(), shows component on AUT for angular-19 Test Replay Screenshots
Failed  angular.cy.ts • 6 failed tests • webpack-dev-server

View Output

Test Artifacts
angular-18 > configuration handling > should initialize with unsupported browserslist entries Test Replay Screenshots
angular-18 > test behaviors > should mount a passing test Test Replay Screenshots
angular-19 > test behaviors > should mount a passing test Test Replay Screenshots
angular-19 > test behaviors > should live-reload on src changes Test Replay Screenshots
angular-19 > test behaviors > should show compilation errors on src changes Test Replay Screenshots
angular-19 > test behaviors > should detect new spec Test Replay Screenshots
Flakiness  e2e/origin/cookie_behavior.cy.ts • 1 flaky test • 5x-driver-electron

View Output

Test Artifacts
... > misc > domains > attaches subdomain and TLD cookies when making subdomain requests Test Replay
Flakiness  e2e/origin/config_env.cy.ts • 1 flaky test • 5x-driver-electron

View Output

Test Artifacts
cy.origin- Cypress.config() > serializable > overwrites different values in secondary if one exists in the primary Test Replay
Flakiness  issues/28527.cy.ts • 1 flaky test • 5x-driver-electron

View Output

Test Artifacts
issue 28527 > fails and then retries and verifies about:blank is not displayed Test Replay Screenshots
Flakiness  e2e/origin/cookie_login.cy.ts • 1 flaky test • 5x-driver-firefox

View Output

Test Artifacts
... > past Max-Age, before Expires -> not logged in
    </td>
  </tr></table>
Flakiness  commands/net_stubbing.cy.ts • 1 flaky test • 5x-driver-firefox

View Output

Test Artifacts
... > stops waiting when an xhr request is canceled
    </td>
  </tr></table>

The first 5 flaky specs are shown, see all 12 specs in Cypress Cloud.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
type: breaking change Requires a new major release version
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants