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

feat: ProjectLifecycleManager & general launchpad cleanup #19347

Merged
merged 82 commits into from
Dec 22, 2021

Conversation

tgriesser
Copy link
Member

@tgriesser tgriesser commented Dec 13, 2021

  • Adds a centralized location for the "lifecycle" of a project: ProjectLifecycleManager
    • File watching for cypress config file, including files imported from this file
    • File watching & restarting of plugin IPC handlers for files imported via setupNodeEvents
  • Spinner & automatic loading states when config is updated
  • Injects the @packages/config & associated APIs from server into DataContext
  • Type-safety on IPC event emitter, renamed internal events to be reflective of new naming
  • Fixes memory leak in 'preprocessor:close' event handler being added more times than it should be in ipc
  • Cleans up the launchpad flow, proper error handling & recovery
  • Removes legacy file-watching approach (dependency-tree)
    • Uses a quick & dirty Object.keys(require.cache).filter(s => !s.includes('/node_modules/') to detect deps of deps
    • dependency-tree had a dependency on typescript@3.x so that is now gone from the bundle 🎉
  • Improved error UI (feat: adding an alert with a stack #19432)
  • Improved UI for new project setup flow (feat: functional onboarding UI for the refactor branch #19425)

@cypress-bot
Copy link
Contributor

cypress-bot bot commented Dec 13, 2021

Thanks for taking the time to open a PR!

@cypress
Copy link

cypress bot commented Dec 15, 2021



Test summary

18354 1 218 0Flakiness 2


Run details

Project cypress
Status Failed
Commit 56ad112
Started Dec 22, 2021 2:31 AM
Ended Dec 22, 2021 2:43 AM
Duration 12:00 💡
OS Linux Debian - 10.10
Browser Multiple

View run in Cypress Dashboard ➡️


Failures

cypress/integration/commands/net_stubbing_spec.ts Failed
1 network stubbing > waiting and aliasing > can timeout waiting on a single response using "alias.response"

Flakiness

commands/net_stubbing_spec.ts Flakiness
1 network stubbing > waiting and aliasing > can timeout waiting on a single request using "alias.request"
cypress/proxy-logging-spec.ts Flakiness
1 ... > works with forceNetworkError

This comment has been generated by cypress-bot as a result of this project's GitHub integration settings. You can manage this integration in this project's settings in the Cypress Dashboard

tgriesser and others added 10 commits December 15, 2021 14:44
…cycle

* 10.0-release:
  build: remove syncRemoteGraphQL from codegen
  chore: fix incorrect type from merge
  build: allow work with local dashboard (#19376)
  chore: Test example recipes against chrome (#19362)
  test(unify): Settings e2e tests (#19324)
  chore(deps): update dependency ssri to 6.0.2 [security] (#19351)
  fix: spec from story generation, add deps for install (#19352)
  chore: Fix server unit tests running on mac by using actual tmp dir (#19350)
  fix: Add more precise types to Cypress.Commands (#19003)
  fix: Do not screenshot or trigger the failed event when tests are skipped (#19331)
  fix (#19262)
  fix: throw when writing to 'read only' properties of `config` (#18896)
  fix: close chrome when closing electron (#19322)
  fix: disable automatic request retries (#19161)
  chore: refactor cy funcs (#19080)
  chore(deps): update dependency @ffmpeg-installer/ffmpeg to v1.1.0 🌟 (#19300)
* fix dev server plugin

* make open config component issue own query

* correct config name

* fix test

* correctly propogate errors in run mode

* types

* add v-else

* ensure projectRoot avail when checking legacy plugins

* handle warnings

* pass correct file

* throw error instead of warning

* fix config spec
estrada9166 and others added 9 commits December 20, 2021 21:12
* adding an alert with a stack

* fixing icon

* cleanup

* Fix TS errors

Co-authored-by: Tim Griesser <tgriesser10@gmail.com>
…cycle

* 10.0-release:
  fix: remove copy button when not available (#19417)
  test: Adding tests for Page Top Nav workflows (#19375)
  fix: fuzzy sort accuracy (#19420)
@tgriesser tgriesser marked this pull request as ready for review December 21, 2021 18:01
estrada9166
estrada9166 previously approved these changes Dec 21, 2021
import ChooseExternalEditorModal from './ChooseExternalEditorModal.vue'

gql`
fragment OpenConfigFileInIDE on Query {
query OpenConfigFileInIDE {
Copy link
Member

Choose a reason for hiding this comment

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

Nice!

tgriesser and others added 12 commits December 21, 2021 17:16
…cycle

* 10.0-release:
  feat: route and scroll to settings (#19312)
  fix: various UI fixes from review session (#19418)
…cycle

* 10.0-release:
  test: Adding Choose a Browser E2E Tests (#19268)
Co-authored-by: Lachlan Miller <lachlan.miller.1990@outlook.com>
…cycle

* 10.0-release:
  feat: add favicon to the app to avoid 404 (#19416)
…cycle

* 10.0-release:
  chore: apply ux feedback (#19286)
This reverts commit f6e1270.
@tgriesser tgriesser merged commit 4626f74 into 10.0-release Dec 22, 2021
@tgriesser tgriesser deleted the tgriesser/10.0-release/refactor-lifecycle branch December 22, 2021 02:28
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.

4 participants