Comments (9)
Just wondering why this fix hasn't propagated to npm yet. Is it because npm/cli
depends on pacote@8
?
from pacote.
Found it !!
The custom agent in https://github.com/TooTallNate/node-agent-base does receive the automatic 'free'
event from the underlying socket after the various fetching libraries finish using it but does nothing with it. Technically, this should be used for pooling and reusing TCP connections.
Since the agent does not pool stuff, we should simply close the sockets when they are free by calling socket.end()
explicitly. My fix is to close them but I think we should reuse connections in a future improvement.
TooTallNate/node-agent-base#18
from pacote.
hi @zkat , @tgandrews , this is related to my comments in #109
from pacote.
Yes, I'm aware -- I just don't know why those connections are staying alive, is the issue. If you manage to track -that- down, that'd be super useful. Last I looked, it was literally only happening when using the proxy libraries.
from pacote.
I still think this probably has to do with https-proxy-agent
, specially since it's a thing that happens when you proxy. There's relatively little I can do on the pacote
and make-fetch-happen
end of things if that library is... messing up closure. Can you look into it over on that end? If anyone else is willing to do the necessary sleuthing here, that would be -lovely- (/cc @TooTallNate)
from pacote.
omg good job! So excited. I hope this finally resolves this nonsense.
from pacote.
If I'm reading this right, once make-fetch-happen references agent-base 4.2.1 (pull request: zkat/make-fetch-happen#66), pacote can be updated to reference the right version of make-fetch-happen. Once pacote has the right version, npm can be updated since, as of v6.8.0-next.2, it references the latest pacote.
from pacote.
NPM 6.9.0 has fixed this issue for me.
from pacote.
Same here - using NPM 6.9.0 "npm i" runs fine using HTTP proxy.
from pacote.
Related Issues (20)
- Cannot require pacote
- Git semver does not resolve versions with prerelease or build info
- can no longer get manifest for custom tarball URL HOT 1
- git: support some form of integrity HOT 3
- jsonFromStream doesn't handle symlinks HOT 2
- Crashes if run without cache option HOT 4
- Build failed ERR_STREAM_WRITE_AFTER_END: node v9.7.1 withExEditorHost v3.0.3 archlinux x86_64 HOT 24
- spurious ENOVERSIONS on git dependencies HOT 4
- A promise was created in a handler error HOT 24
- `_from` key of publishing package json should not have local file path of `tgz` file
- git: Does pacote respect per-project .npmrc file "git" parameter? HOT 1
- How to make pacote respect .npmrc? HOT 9
- Relation to npm / yarn / etc? HOT 2
- Unable to add local tarballs with sha1 integrity HOT 2
- Transitive dependency ([email protected]) license prevents use of pacote HOT 2
- "err.code.match is not a function" after a failed git clone HOT 10
- pacote should pass on opts.uid/opts.gid when invoking cacache.put
- pacote leaves user-owned files in /usr/lib/node_modules on Linux under sudo
- npm install failing on github repository
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from pacote.