See the entire conversation

35 replies and sub-replies as of Mar 31 2019

oh snap! my favorite module ... thanks for the hard work <3
thank @reconbot and others who have been putting in more of the work than me the last few years :)
Are there any repositories that @reconbot hasn't taken the baton for?
I haven’t read the post yet but I support it being done and shutting it down with a maintenance period
The idea is to have it be maintinence only, still accepted patches but no features or breaking changes.
For like 6mo to 1yr =D
He keeps a low profile, but he does a ton. He is our serialport hero!
Not all heroes wear capes, some of them wear robes.
This is a very pragmatic decision. Kudos for making what must have emotionally felt like an impossible choice. As a heavy user of request, this will likely cause me to start using better, more modern solutions. As is your intention.
Anything with more than one maintainer and support for multipart upload with chunked encoding? I just recently finally hacked request to do it ;)
Awesome. It's nice to see an older project get an official sendoff. There are a lot of projects where the cost to adapt to new patterns in JS is to high to justify the cost. Freeing up the space for innovation rather than letting a project die from abandonment is a class act.
When you say outdated, do you mean non-Promise based? I wouldn’t think that would be too terrible to add.
The return value is currently a stream, and the entire API is stream/callback based. There’s a lot of fancy stuff that would be difficult, maybe impossible, to retain if ported. But async/await changes enough that just “adding promises” isn’t really enough.
Errors in async/await are more expensive than in callbacks, and that leads you to different patterns. Checkout `bent` for an http client re-thought with these patterns in mind.
Super good observation. It's really easy to throw in async/await land which can lead to memory "leaks", etc. Pattern re-thinking requied
Why errors are most costly in this case?
Because you have to wrap them in a try catch, it's a lot of extra code, callback it's basically no extra code at all.
You know, node could fix this by adding stream.toBuffer(), stream.toArray() (of items) and stream.toStringAsync() 😅
Hey man, great work 😃
Working on request helped me learn a lot. Not breaking the internet by a next major is the best decision. It shows responsibility and care for the community. Thanks, Mikeal!
Thanks for all the work you've done on this
great write up. thanks for all the thoughtful effort 🙏
So long and thanks for all the responses.
Thank you and contributors for the huge contribution to the Node community <3
Recently solved a problem of getting redirect Url from a response header using request which somehow I couldn't do with axios. So thanks for that.
thank you for all the precious time dedicated to building and maintaining it ❤️
I’ve had exactly the same struggle with Nodemailer. Some of the code has been probably copied over from release to release since Node@v0.2 was a thing and it really starts to bite.
Great example of the decision driven for the community value, thanks for all your hard work @mikeal
Thanks for your invaluable contribution to the Node community!