-
Notifications
You must be signed in to change notification settings - Fork 148
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
backport open-before-change from #278 #284
backport open-before-change from #278 #284
Conversation
atest/Keywords.robot
Outdated
Validate Lab Log | ||
[Documentation] Ensure the notebook server log doesn't contain certain errors | ||
${log} = Get File ${LAB LOG} | ||
Should Not Contain Any ${log} |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Optional enchantment: should we also have some positive sanity check Should Contain "lsp - extension loaded"
(I think we do not have such a message but could add it) to test if we are recording the logs ok?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
i'm just looking for stuff we know and can point to... not looking to add any new stuff just to look for it. If the extension doesn't load, nothing is going to work.
Also, i've changed it to fire after every test, since we want to know which test generated the offending log message(s).
🎉 checking the log did find an error on win36. 👻 win36 is timing out. Will do some rejiggering to see if i can figure it out. I guess we need to only check the log delta for errors. |
Was just thinking recently about trying out GitHub actions. Do you have any experience with it? Could it help with the timeouts (and with everything else)? |
I have started using actions on some other projects, but haven't gotten all
the way up to full browser testing, etc. so can't really recommend one way
or the other. But I don't think it's going to magically make windows
faster, more reliable, or more representative of what Users will have: in
my experience, it will always be worse than posix systems unless you're
doing c# in vs, etc.
On the main, the actions workflow has some shortcomings in terms of reuse.
The yaml-like language is decent, but lacks a formal schema: azure seems to
be better at statically telling you a job cannot be run, gh just fails at
runtime.
Both time you out after an hour. The analytics is still better on azure,
but since we don't really have a project manager....
I'd say on this project, if the ci isn't broken, I'm not going to spend a
ton of time migrating it just to see if it's better. Better would be to do
some root cause analyse of some of the things happening in windows, which
is just very painful (and not particularly accurate) in a vm.
…On Sun, Jun 21, 2020, 11:08 Michał Krassowski ***@***.***> wrote:
Was just thinking recently about trying out GitHub actions. Do you have
any experience with it? Could it help with the timeouts?
—
You are receiving this because you modified the open/close state.
Reply to this email directly, view it on GitHub
<https://github.com/krassowski/jupyterlab-lsp/pull/284#issuecomment-647140409>,
or unsubscribe
<https://github.com/notifications/unsubscribe-auth/AAALCRE3YT6IOJPURMQWCATRXYO6NANCNFSM4ODADZFA>
.
|
It appears jedi might be detecting some other python on win36, when it calls: This is generating some deep pickle errors, which cascade into a bunch of other things. Still trying to get to the bottom of it. |
ci/env-test.yml.in
Outdated
- r-irkernel | ||
- r-languageserver | ||
- r-stringi >=1.4.6 | ||
- r-xfun !=0.15 |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
looking into these on conda-forge...
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
scripts/jedi_cache.py
Outdated
|
||
def warm_up_one(module): | ||
start = time.time() | ||
script = jedi.Script(SOURCE_TEMPLATE.format(module=module)) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I've determined the jedi caching mechanism is very broken on python 3.6...
Traceback (most recent call last):
File "C:\Miniconda\lib\site-packages\jedi\inference\compiled\subprocess\__init__.py", line 261, in _send
is_exception, traceback, result = pickle_load(self._get_process().stdout)
File "C:\Miniconda\lib\site-packages\jedi\_compatibility.py", line 396, in pickle_load
return pickle.load(file, encoding='bytes')
EOFError: Ran out of input
Have some more debugging to do...
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
pre-warming the cache is apparently improving the overall windows pass rate on the first run for non-3.6 tests, which is good...
So probably going to take a breather on this until i figure out how to unbreak jedi on win/36 at some level of upstream... very curious. |
Alright, looks like some of the issues we uncovered here are blocking other things. I'm going to mark some win/36 tests non-critical for the time being. |
Well, it's green: I'm not happy with having to skip so much on win/py36, but it's blocking other stuff. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I'm fine with the code changes, let's just document the Jedi workarounds better, please :)
References
Code changes
didOpen
_sendChange
consult this map before sending andidChange
, and if it hasn't been sent, sendsdidOpen
(which also immediately sends adidChange
)initialize
,close
) the map gets clearedlab.log
after an acceptance run to verify that that traceback doesn't occurUser-facing changes
pyls
won't complain about files not being open in the log, which looks scary and confusingBackwards-incompatible changes
Chores