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(e2e): downgrade to WebdriverIO v8 #169

Merged
merged 1 commit into from
Dec 31, 2024
Merged

Conversation

QZera
Copy link
Collaborator

@QZera QZera commented Dec 28, 2024

Downgrade WebdriverIO and Related Packages from v9 to v8

Reasoning

The wdio-vscode-service package has a peer dependency on WebdriverIO v8. Initially, it seemed that this could be ignored since the tests were running fine. However, there are some incompatibilities in the types between v8 and v9 that have caused issues.

Example

/**
 * Type in v9: any
 * Type in v8: WebdriverIO.Element
 */
const inputElement = await setting.textSetting$

These type incompatibilities have led to confusion and hours of painfully slow debugging. Therefore, I think it best to downgrade to WebdriverIO v8 to ensure compatibility, reduce debugging time and avoid potential issues in the future.

@QZera QZera force-pushed the chore/downgrade-to-wdio-v8 branch 3 times, most recently from 051641a to 9196bfe Compare December 28, 2024 17:49
@QZera QZera marked this pull request as ready for review December 28, 2024 18:14
@QZera QZera requested a review from maninak December 28, 2024 18:14
@QZera QZera changed the title chore(e2e): downgrade to webdriverio v8 chore(e2e): downgrade to WebdriverIO v8 Dec 28, 2024
@maninak
Copy link
Collaborator

maninak commented Dec 30, 2024

Understood, unfortunate that we can't avoid going with the latest major version.

Could we please squash all those commits, document a summary of the rationale in the single commit and most importantly which specific conditions need to be met before upgrading to v9? Ideally, if there's an appropriate place (eg wdio config file as a comment?) perhaps also copy the conditions for upgrade there for improved visibility. Or write a minimal comment referencing commit body for more info?

Up to you. But I'd like to make sure we preserve in writing for future maintenance the current context you've got and in which we've invested.

EDIT: I see you are using these commits in other open PRs. If it reks your workflow then perhaps it's wiser to skip the commit squashing.

- Downgrades WebdriverIO and relevant packages from v9 to v8

There is an incompatibility between WebdriverIO v9 and the "wdio-vscode-service" package. While the
tests execute successfully, there are type-related issues between the two packages. Additionally,
there may be other underlying issues that have not yet been identified.

We can upgrade back to WebdriverIO v9 once the "wdio-vscode-service" package updates its peer
dependencies to support it.

Relevant PR: webdriverio-community/wdio-vscode-service#130
Relevant Issue: webdriverio-community/wdio-vscode-service#140

Signed-off-by: Zacharias Fragkiadakis <[email protected]>
@QZera QZera force-pushed the chore/downgrade-to-wdio-v8 branch from 9196bfe to e87299e Compare December 31, 2024 07:51
@QZera
Copy link
Collaborator Author

QZera commented Dec 31, 2024

Understood, unfortunate that we can't avoid going with the latest major version.

Could we please squash all those commits, document a summary of the rationale in the single commit and most importantly which specific conditions need to be met before upgrading to v9? Ideally, if there's an appropriate place (eg wdio config file as a comment?) perhaps also copy the conditions for upgrade there for improved visibility. Or write a minimal comment referencing commit body for more info?

Up to you. But I'd like to make sure we preserve in writing for future maintenance the current context you've got and in which we've invested.

Done! Please have a look.

EDIT: I see you are using these commits in other open PRs. If it reks your workflow then perhaps it's wiser to skip the commit squashing.

Ended up squashing, changes are isolated so rebasing the other branches should be trivial.

@QZera QZera self-assigned this Dec 31, 2024
@QZera QZera added the chore Tooling or infra-related, not directly affecting core product label Dec 31, 2024
@QZera QZera merged commit b21bb12 into main Dec 31, 2024
10 checks passed
@QZera QZera deleted the chore/downgrade-to-wdio-v8 branch December 31, 2024 09:15
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
chore Tooling or infra-related, not directly affecting core product
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants