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

Port core logic to webdriver package #562

Open
christian-bromann opened this issue Oct 24, 2018 · 2 comments
Open

Port core logic to webdriver package #562

christian-bromann opened this issue Oct 24, 2018 · 2 comments

Comments

@christian-bromann
Copy link

Let's make a plan on how we can port core logic from the webdriver into WD. Given the current state I feel uncomfortable just adding it as another dependency and just stuck it into the code base. It seems to be that a rewrite that would retain the WD API is the best way forward. Therefor let's discuss what we can keep as functionality and API interface and what we should drop.

The following I consider outdated and should be dropped:

  • callbacks (in favor of promises)
  • asserter
  • chaining

I feel like if we want to modernise this everyone needs to rewrite his tests anyway if we would drop promises. I would rather spend time on adopting all the nice things of WD into WebdriverIO.

What do you guys think?
@admc @jlipps

@admc
Copy link
Owner

admc commented Oct 24, 2018

What is of course difficult about this is that I have no idea how people are using this and which API's need to continue being supported for historical reasons. I think the proposal to do a rebuild on top of the webdriver core project to re-implement these interfaces makes sense. Maybe start with promises as a major breaking release and then add the other stuff back in if people ask for it.

I also like the idea that WD functionality that people like could inform work for webdriverio and eventually just become a small wrapper, so that work doesn't need to be done in multiple projects everytime something changes.

@jlipps
Copy link
Collaborator

jlipps commented Oct 25, 2018

I agree with @admc. My thought for a next major rev would be:

  • rewrite based on wdio core
  • promise-only (i could be convinced we should continue to support chaining though...)
  • same API surface
  • new tests
  • new doc generation

i think if we do all that we'll have something that isn't busted and can be used immediately by many users or easily migrated to by other users.

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

No branches or pull requests

3 participants