-
Notifications
You must be signed in to change notification settings - Fork 1.7k
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
fix(server): Remove Socket.IO listeners #2981
fix(server): Remove Socket.IO listeners #2981
Conversation
Thanks for your pull request. It looks like this may be your first contribution to a Google open source project (if not, look below for help). Before we can look at your pull request, you'll need to sign a Contributor License Agreement (CLA). 📝 Please visit https://cla.developers.google.com/ to sign. Once you've signed (or fixed any issues), please reply here (e.g. What to do if you already signed the CLAIndividual signers
Corporate signers
|
I signed it! I signed this last year so not sure why it says I haven't...I guess my email address is different? |
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.
thanks for finding this
The Travis CI failure seems odd, it's only failing in node 8 but it's complaining about the commit message. Surely that should fail in all node envs if that's incorrect? |
The AppVeyor failure was present before my changes (I ran the build before making any changes).
Should I look at it or is a well know failure? |
Seems like the Travis was run against c1cd5cb which is a merge. Please try pulling the new upstream head and rebasing your change. I bet that fixes it. |
10993bd
to
b50d22d
Compare
I signed it! |
CLAs look good, thanks! |
OK, the Travis failure is fixed and I signed the CLA with my other account so there's just the AppVeyor failure to fix. |
It looks to me like the AppVeyor build is running on node.js 4 which doesn't fully support let. It's nothing to do with my changes that I can see. Does Karma still support node.js 4? Will I remove it from the appveyor.yml file? |
Sorry the package.json still says
In the past changing the node support triggered a major version number update. So I think the short path is to add "use strict" to your code to allow the |
I don't think it's my code that's causing the failure, it's npm? https://ci.appveyor.com/project/dignifiedquire/karma/build/1705/job/30vsaqw8pw30gmta
In the AppVeyor yml file npm is upgraded
as part of the setup. I wonder if it ends up installing a version of npm that's not compatible with node4? I can remove the upgrade of npm from the AppVeyor yml file? |
We should use a fixed version of npm that matches the lowest nodejs we support (4). I guess |
Upgrading npm can cause build failures in older node.js versions see karma-runner#2981 for details.
From what I can tell node.js 4 is shipped with npm 2, https://nodejs.org/en/download/releases/ I presume that's the latest npm it supports. The node.js 4 version installed during the tests is one of the latest (4.8.7) and it would naturally ship with an up to date npm for its node version (2.15.11). I feel removing the npm upgrade step might be the safest initial step. I'll try that and see what happens. |
OK that progresses the build further so the UTs start running but I see a failure in the UTs that was there from before my changes. I debugged it and it looks to me like the failing UT is incorrect. The UT was added in this small PR #2596 The original PR didn't seem to have a green build and was merged regardless, unless I'm misunderstanding the conversation in the PR? The lines which I believe are incorrect in the test are these
The
@dignifiedquire @kyo-ago does that seem reasonable? |
OK the build is all green, for what it's worth the test added in this small PR fails for me locally https://github.com/karma-runner/karma/pull/2595/files I think it's assuming that trying to call Test it with
In the console. I've left that UT alone for the moment but it might fail in future if the browser the tests are running against changes. |
Sorry Brian we're blocked by #2951 now that Travis is running chrome 61. |
@briandipalma please sync up and retest, |
Not removing Socket.IO listeners can cause memory issues in long running processes that spawn many Karma instance. Fixes karma-runner#2980
Upgrading npm can cause build failures in older node.js versions see karma-runner#2981 for details.
Expectations added in karma-runner#2596 didn't match `EventEmitter` API for `listeners`.
3f95c80
to
af9c84a
Compare
@johnjbarton Done, I kept the removal of the npm upgrade step in the build as the node.js deployed by AppVeyor seems to come with the latest npm available in the official node.js releases (https://nodejs.org/en/download/releases/) so I have a feeling that those are the "safe/approved" npm versions per node.js version. |
Thanks @briandipalma , would you please separate the appveyor and proxy fixups into their own PRs? I don't want the discussion of completely different issues to be all tangled up. (We typically squash all commits for a PR for this same reason). |
Not removing Socket.IO listeners can cause memory issues
in long running processes that spawn many Karma instance.
Fixes #2980