chore: add Cypress 15 Welcome Screen (#31966)

* chore: add the Cypress 15 Welcome Splash Page

* fix failing unit test because of release 15 happenstance

* Update packages/launchpad/src/welcome/MajorVersionWelcome.vue

Co-authored-by: Ryan Manuel <ryanm@cypress.io>

* fix dates to be july 15th and not july 14th

---------

Co-authored-by: Ryan Manuel <ryanm@cypress.io>
This commit is contained in:
Bill Glesias
2025-07-03 14:04:05 -04:00
committed by GitHub
parent e05de87b51
commit a018700da3
4 changed files with 45 additions and 43 deletions

View File

@@ -1,6 +1,6 @@
{
"name": "cypress",
"version": "14.5.1",
"version": "15.0.0",
"description": "Cypress is a next generation front end testing tool built for the modern web",
"private": true,
"scripts": {

View File

@@ -47,7 +47,7 @@ describe('VersionsDataSource', () => {
modified: '2022-01-31T21:14:41.593Z',
created: '2014-03-09T01:07:35.219Z',
[currentCypressVersion]: '2014-03-09T01:07:37.369Z',
'15.0.0': '2015-05-07T00:09:41.109Z',
'18.0.0': '2015-05-07T00:09:41.109Z',
},
}),
})
@@ -81,7 +81,7 @@ describe('VersionsDataSource', () => {
}).resolves({
json: sinon.stub().resolves({
name: 'Cypress',
version: '15.0.0',
version: '18.0.0',
}),
})
@@ -96,8 +96,8 @@ describe('VersionsDataSource', () => {
released: '2014-03-09T01:07:37.369Z',
},
latest: {
id: '15.0.0',
version: '15.0.0',
id: '18.0.0',
version: '18.0.0',
released: '2015-05-07T00:09:41.109Z',
},
})

View File

@@ -16,14 +16,14 @@ describe('<MajorVersionWelcome />', { viewportWidth: 1280, viewportHeight: 1400
cy.contains('h1', 'What\'s New in Cypress').should('be.visible')
cy.get('[data-cy="release-highlights"]').within(() => {
cy.contains('a[href="https://on.cypress.io/changelog?utm_source=Binary%3A+App&utm_medium=splash-page&utm_campaign=v14#14-0-0"]', '14.0.0')
cy.contains('a[href="https://on.cypress.io/changelog?utm_source=Binary%3A+App&utm_medium=splash-page&utm_campaign=v14#14-0-0"]', 'changelog')
cy.contains('a[href="https://on.cypress.io/changelog?utm_source=Binary%3A+App&utm_medium=splash-page&utm_campaign=v15#15-0-0"]', '15.0.0')
cy.contains('a[href="https://on.cypress.io/changelog?utm_source=Binary%3A+App&utm_medium=splash-page&utm_campaign=v15#15-0-0"]', 'changelog')
})
cy.get('[data-cy="previous-release-highlights"]').within(() => {
cy.contains('a[href="https://on.cypress.io/changelog#14-0-0"]', '14.0.0')
cy.contains('a[href="https://on.cypress.io/changelog#13-0-0"]', '13.0.0')
cy.contains('a[href="https://on.cypress.io/changelog#12-0-0"]', '12.0.0')
cy.contains('a[href="https://on.cypress.io/changelog#11-0-0"]', '11.0.0')
})
cy.get('[data-cy="major-version-welcome-footer"]').within(() => {
@@ -36,17 +36,17 @@ describe('<MajorVersionWelcome />', { viewportWidth: 1280, viewportHeight: 1400
})
it('renders correct time for releases and overflows correctly', () => {
cy.clock(Date.UTC(2025, 0, 16))
cy.clock(Date.UTC(2025, 6, 16))
cy.mount(<MajorVersionWelcome />)
cy.contains('14.0.0 Released just now')
cy.contains('13.0.0 Released last year')
cy.contains('12.0.0 Released 2 years ago')
cy.contains('11.0.0 Released 2 years ago')
cy.contains('15.0.0 Released just now')
cy.contains('14.0.0 Released 6 months ago')
cy.contains('13.0.0 Released 2 years ago')
cy.contains('12.0.0 Released 3 years ago')
cy.tick(interval('1 minute'))
cy.contains('14.0.0 Released 1 minute ago')
cy.contains('15.0.0 Released 1 minute ago')
cy.tick(interval('1 month'))
cy.contains('14.0.0 Released last month')
cy.contains('13.0.0 Released last year')
cy.contains('15.0.0 Released last month')
cy.contains('14.0.0 Released 7 months ago')
cy.viewport(1280, 500)

View File

@@ -33,25 +33,25 @@
<div class="mb-[16px]">
<ExternalLink
href="https://on.cypress.io/changelog?utm_source=Binary%3A+App&utm_medium=splash-page&utm_campaign=v14#14-0-0"
href="https://on.cypress.io/changelog?utm_source=Binary%3A+App&utm_medium=splash-page&utm_campaign=v15#15-0-0"
class="font-bold text-indigo-500"
>
14.0.0
15.0.0
</ExternalLink>
<span class="font-light pl-[10px] text-gray-500 text-[14px]">
Released {{ versionReleaseDates['14'] }}
Released {{ versionReleaseDates['15'] }}
</span>
</div>
<div class="children:mb-[16px]">
<p>
Weve improved performance of component testing and added support for new framework and dev server versions.
This release prepares Cypress Studio for the next era of AI-assisted test creation. You can record interactions, add assertions by right-clicking, and now edit tests inline without leaving Cypress. Turn on <InlineCodeFragment>experimentalStudio</InlineCodeFragment> in your config to try it out and share your feedback.
</p>
<p>
This release also includes breaking changes to <InlineCodeFragment>cy.origin</InlineCodeFragment> that are necessary to handle
Chromes deprecation of <InlineCodeFragment>document.domain</InlineCodeFragment>, which should fix issues for some users in recent Chrome versions. Support for older versions of Node.js, Linux distributions, browsers and component testing frameworks and dev servers is also removed.
Weve also made important changes to improve reliability, future compatibility, and cross-origin support. Several older versions of Node.js, browser protocols, and Webpack integrations are no longer supported.
This version includes breaking changes that may require updates to your project.
</p>
<p>
For a complete list of updates, please review our <ExternalLink href="https://on.cypress.io/changelog?utm_source=Binary%3A+App&utm_medium=splash-page&utm_campaign=v14#14-0-0">
For a complete list of updates, please review our <ExternalLink href="https://on.cypress.io/changelog?utm_source=Binary%3A+App&utm_medium=splash-page&utm_campaign=v15#15-0-0">
<!--eslint-disable-next-line vue/multiline-html-element-content-newline-->
changelog</ExternalLink>.
</p>
@@ -65,6 +65,27 @@
<h2 class="font-bold mt-[24px] mb-[12px] text-[14px] text-gray-600">
Previous release highlights
</h2>
<div class="pb-[8px]">
<ExternalLink
href="https://on.cypress.io/changelog#14-0-0"
class="font-bold text-indigo-500"
>
14.0.0
</ExternalLink>
<span class="font-light pl-[10px] text-gray-500 text-[14px]">
Released {{ versionReleaseDates['14'] }}
</span>
</div>
<p class="text-[14px] leading-[20px]">
Weve improved performance of component testing and added support for new framework and dev server versions.
<br>
<br>
Read about the v14.0.0 changes in our
<ExternalLink href="https://on.cypress.io/cypress-14-release">
<!--eslint-disable-next-line vue/multiline-html-element-content-newline-->
blog post</ExternalLink>.
</p>
<br>
<div class="pb-[8px]">
<ExternalLink
href="https://on.cypress.io/changelog#13-0-0"
@@ -113,26 +134,6 @@
blog post</ExternalLink>.
</p>
<br>
<div class="pb-[8px]">
<ExternalLink
href="https://on.cypress.io/changelog#11-0-0"
class="font-bold text-indigo-500"
>
11.0.0
</ExternalLink>
<span class="font-light pl-[10px] text-gray-500 text-[14px]">
Released {{ versionReleaseDates['11'] }}
</span>
</div>
<p class="text-[14px] leading-[20px]">
We made Component Testing generally available for projects using React, Next.js, Angular, and Vue which allows you to test your application's components without running your whole app! We also massively improved our startup performance with up to 84% faster startup times!
<br>
<br>
Read about the v11.0.0 changes in our
<ExternalLink href="https://on.cypress.io/cypress-11-release">
<!--eslint-disable-next-line vue/multiline-html-element-content-newline-->
blog post</ExternalLink>.
</p>
</div>
</div>
</div>
@@ -191,6 +192,7 @@ const versionReleaseDates = computed(() => {
'12': useTimeAgo(Date.UTC(2022, 11, 6)).value,
'13': useTimeAgo(Date.UTC(2023, 7, 29)).value,
'14': useTimeAgo(Date.UTC(2025, 0, 16)).value,
'15': useTimeAgo(Date.UTC(2025, 6, 16)).value,
}
})