-
Notifications
You must be signed in to change notification settings - Fork 448
Conversation
@melloc @pfmooney @acappella2017 has found the root cause ( Many projects and npm modules depending on ldapjs need it to work on Node.js V10. Hope to see this PR get reviewed. |
Hi. Any progress on this? |
I just forked the repo and am using my own version with this fix in place.
|
Hi! Any updates/plans on this? It seems multiple individuals are left to fork to get this fix into their projects, is it mergeable here or is non-review work outstanding? |
@zachlendon This project is pretty much dead. None of the maintainers have commented on here in years. |
For what it's worth, we started having major issues with ldap using a verdaccio server with the verdaccio-ldap plugin after upgrading to Node 10. The verdaccio ldap plugin uses this package. I tried using the fork of this project to resolve the issues without any luck, so we had no choice but to downgrade to Node 8. |
Any updates or reasons to not merge this? |
@acappella2017 would you be able to add a unit test for this? |
@jsumners Without this pr, ldapjs UT hangs with node 10. I believe current UTs are able to cover this change. |
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.
Coverage remains the same before and after this PR. So I'll assume this is covered by any unbind tests that currently exists. We need a test coverage audit in the future anyway.
* Support node 10 * remove arrow function
The mentioned issue has been resolved by ldapjs/node-ldapjs#497
Please include a minimal reproducible example |
We observed some weird behaviors with node-ldapjs when upgraded to Node.js 10 LTS in our project.
This issue is caused by some internal change in Node.js. See nodejs/node#24577.
In summary, in Node.js 10, the
close
event depends on an internalend
listener. so when ldap client useremoveAllListeners(
end`) to do cleanup work, the close listener stops working.Node.js guys suggest that we should use
removeListener
to explicitly remove the listener we want to remove instead of usingremoveAllListeners
. Node.js document also suggests that we should use removeAllListeners carefully.This PR didn't touch all of the
removeAllListeners
in client.js, just fixed the one who breaksclose
event.@jgeurts, @melloc, could you help to review this PR?