Closed rmorshea closed 1 year ago
@acivitillo I noticed that you're working with IDOM on Windows. Is there any chance you might be able to help out with this issue?
I will take a look to the tests. I am not too familiar with the internals of idom
so this might take a while and I might have a few questions for you.
On Windows, I was able to make idom
work by doing pip install idom==0.34.0
. I get the below files when visiting an idom
page, so far the app is pulling the right files.
Actually, now that I think about it, this issue is pretty old. It would be good for me to try and reproduce it now and update any logs before you give this a go.
upstream/main@b036f03
(latest to date)nox -s test -- --headless
client\packages\idom-app-react
nox > * test: success
nox > * test_python: success
nox > * test_docs: failed
nox > * test_javascript: success
nox > * test_python_suite: failed
nox > * test_python_types: success
nox > * test_python_style: success
nox > * test_python_build: success
nox > * test_javascript_suite: success
nox > * test_javascript_build: success
nox > * test_javascript_style: failed
There's probably more problems that are currently being hidden. In order to get the suite to pass on Windows in CI, I've been skipping all tests that require the browser (hence the missing coverage).
I'll edit out the conditional and see what else breaks. Will report back in a few minutes.
Yep, everything webdriver related is broken. Probably because Selenium on Windows is broken in general.
I've been wanting to switch to an async web driver. If one of the available options uses a different web driver solution, that might solve these issues too.
I know we want to make Windows working directly with idom
, but given the fact idom
probably needs to be deployed as a container anyway, could we maybe fix this with a tutorial "how to setup your dev environment with idom and docker".
IDOM works perfectly on Windows. I've been using it for a couple months now with no Windows specific bugs. Notably, I've been doing my development on bare-metal with no containers.
It's just the IDOM tests that are broken, due to reliance on the selenium webserver.
Ultimately we should try and get this working on Windows, but for now that's a great option. I can write up an issue to capture that tomorrow or you should feel free to use the "Plan a Task" issue template.
I confirm idom
works great on my Windows too.
Yeah, I think the main thing I want to fix here is the contributor experience. I've been developing this on my own for the most part, but at some point I'm gonna need help, so making sure its easy to make contributions is going to be important.
Summary
At the moment WebDriver tests are not run on Windows because they are failing for some unknown reason.
How To Work On This Bug
At the moment WebDriver tests are being skipped. To unskip them when you run the test suite comment out these lines:
https://github.com/idom-team/idom/blob/2804ae2620d4a2b719684460fd56b97deb65b4ba/tests/conftest.py#L151-L161
Current Findings
I don't have a Windows machine myself so it's quite difficult to try and debug. Further the tracebacks and logs that are produced don't really help much in figuring out what the problem is. The only thing I've been able to identify is that not all the files are being loaded from the server when loading up the
index.html
page.On Linux (expected behavior):
On Windows (missing GET requests):
This is odd because
index.js
should importidom-client-react.js
which itself imports other JS files, however the expected requests are missing when running the test suite in CI.Get Support
I'm happy to help debug this issue with anyone who's interested in investigating.