-
Notifications
You must be signed in to change notification settings - Fork 999
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
SeleniumBase's pytest dependency is pinned to v5.3.5 #534
Comments
@aklajnert There are several regressions in pytest after v5.3.5 (that were introduced in These regressions include:
In the 2 days after |
I've opened pytest-dev/pytest#7000 so that the pytest people can take a look at the issue with |
pytest-dev/pytest#7000 is caused by pytest-dev/pytest#6947 also. |
@mdmintz thanks for the explanation. |
@aklajnert thought the same, yes. Could be |
@aklajnert @blueyed |
@mdmintz thanks for clarifying, I really appreciate the great work you put into the |
@aklajnert Today I found out that 3 key members of the pytest organization have quit unexpectedly. There's a Tweet about it here: https://twitter.com/brettsky/status/1248733160591908864?s=20 |
That's really sad. I wonder if having the pytest as a requirement is actually necessary for SeleniumBase. I do use it only with pytest, but as it can be used with nose (and probably unittest), I'm not sure if the pytest should be the requirement. |
@aklajnert
The Nose test runner provides only the first of that list (command-line argument parsing). If work on pytest stops entirely due to the situation mentioned earlier, it will become like Nose... meaning no more updates, but the framework is still usable. Corporations are using SeleniumBase in their deployment cycles (see the small list I've created: https://github.com/seleniumbase/SeleniumBase/blob/master/help_docs/happy_customers.md). Universities are starting to teach SeleniumBase in their classes (such as www.catalog.msstate.edu/search/?P=CSE%204283 , where students are using seleniumbase in their projects for assignments, eg: https://github.com/abbyg41/assignment3-4 and https://github.com/SpencerWBarnes/QA-Assignment (see the requirements files and their tests). To keep SeleniumBase working perfectly, I've locked down most of the Python dependencies so that I get a chance to try never versions of those dependencies first. That brings us back to why pytest is pinned to I've been in the corporate world for a long time, and I've learned a few things about building reliable frameworks. One big thing is that loose dependencies lead to loose results (AKA bad surprises), which means that it's OK to not use the latest version of a package/dependency. That's especially true in this case with |
OK, that explains everything. I don't know the SeleniumBase internals at all, but I had the impression that it doesn't need pytest to work. If you rely on pytest, then it makes perfect sense to pin the desired version. Thanks. |
@aklajnert SeleniumBase is using the latest version of pytest again ( |
This is what happens when I run
pip install pytest seleniumbase
:I'm actually a bit surprised by the
pytest==5.3.5
constraint. Is there a reason for that?The text was updated successfully, but these errors were encountered: