fastify / busboy

A streaming parser for HTML form data for node.js

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

mscdex Updated his projects

Uzlopak opened this issue · comments

Prerequisites

  • I have written a descriptive issue title
  • I have searched existing issues to ensure the issue has not already been raised

Issue

mscdex updated his packages. I did a benchmark and our fork is slightly faster than his busboy. Maybe we should take a look at his code changes and check if we can apply those changes to our fork.

@Uzlopak if we gonna update in mongo-express repository and trust in this fork over the original source. This should keep in sync the new changes. I see PR with more than 6 months too, so this should be more updated, and hopefully get 0 PR and 0 issues

Here is the changelog: mscdex/busboy#266

@fastify/forked-projects

@shakaran

I dont have currently the time nor the motivation to put work in this package. I am currently working at fastify-session, which is quite complex.

Our fork works properly and has closed all the security vuln. for sure. You updated mongo-express to busboy 1.6.0, so there is no need to switch to our fork. Our offer to switch to our fork was at a time that mscdex was not patching the sec. vuln.. If you decide to use busboy 1.6.0 than it is your good decision and I support that.

I second what uzlopak has said. I'm happy to review any community submissions, but I don't have much time to put into active evolution of this package. upstream busboy is a good choice these days, if it works for you, staying with it makes sense. We have some smaller improvements and features that upstream doesn't have, but you not necessarily would benefit from them.

The performance difference is still significant on my machine, maybe it'd be better to cherry pick commits

| Node    | Option         | Msecs/op       | Ops/sec  | V8                    |
| ------- | -------------- | -------------- | -------- | --------------------- |
| 20.5.0  | fastify-busboy | 0.110761 msecs | 9028.472 | V8 11.3.244.8-node.10 |
| 20.5.0  | busboy         | 0.210623 msecs | 4747.830 | V8 11.3.244.8-node.10 |
| 16.13.0 | fastify-busboy | 0.270984 msecs | 3690.248 | V8 9.4.146.19-node.13 |
| 16.13.0 | busboy         | 0.340114 msecs | 2940.190 | V8 9.4.146.19-node.13 |

**Specs**: M1 (2.4 GHz)

If there are optimizations we can utilize, why not

This forked branch is 23 commits behind, please reopen this issue.

FYI @Uzlopak @mcollina

We actually wanted to remove the fork reference because we've started to diverge from the other implementation in important ways that moved us closer to the RFC and gave us performance improvements

So not all the commits can be applied to ours anymore

#130

I think is needed a new issue/discussion to track missing commits and their state (to do, merged or rejected).