400 PRs #8560
Replies: 2 comments 1 reply
-
First of all, I appreciate your input. I myself am not happy with the rate that PRs are getting reviewed / merged. There are various reasons for this, but yes, I agree something needs to be done to improve the status quo.
Some additional notes:
I can assure you this assumption is wrong.
|
Beta Was this translation helpful? Give feedback.
-
Can we review and merge some optimizations or non-impactful fixes first? Many of the pull requests consist of changes that have little impact but are numerous in quantity. Shouldn't we handle these PRs first? Larger changes might take more time, so it would be better to discuss them first and then proceed with the review and merge process. This approach can improve efficiency. |
Beta Was this translation helpful? Give feedback.
-
The time has finally come. I've been waiting for this moment. Previous episode: 300 PRs.
Disclaimer
I'm only doing this because I'm using this framework for 5+ years and I love it so much. In my opinion, even if I sound like I'm only complaining, those complains can help devs & community in some way. I can see people frustraion in issues/PRs and I think, that if you want to change something, you need to do something.
The problem
Vue 2 repo has 371 Issue and 266 PRs and most of them will never be reviewed. Oldest PR is from 2017 year. Vue 3 repo currently has 636 Issues and 400 PRs. At this time, I think about Vue 4 to be released in like 6-12 months with new repo and the circle will begin again with bugs from Vue 2 + Vue 3. Hope to be wrong, as Vue developers said they don't want to repeat Vue 3 pain.
At the current moment community can't really push some issues forward, even if those affect usage.
Why need to start this discussion once more? You have Evan You answer already
I know this discussion won't, like, change anyone's mind, and I even wanted to skip it. But I also want to attach Vue Team attention to this PRs and Issues (and think about solution):
<Suspense>
+<Transition>
means mounted() runs too early #5952 (15 participants + 28 likes on comment) + Issue<Suspense>
+<Transition>
means mounted() runs too early #5844 (33 likes)<Transition>
wrapped by<Suspense>
breaks entirely if interrupted before it completes #8105 (18 likes)My proposed solution
As I can see, the main problem is lack of spare time for those issues from Vue team. I can also understand that at this time 400 PRs and 600+ Issues is not something that can be easily resolved. To prevent important PRs/Issues "slipping through" I would suggest some mechanism of community-prioritizing of such issues. Basic one - is to resolve first issues/prs with "Most Commented" or "Most reactions".
E.g., Vue Team will once per week/month triage bugs/PRs with more than 5/10 likes (e.t.c.). This will make go away most of random issues without workaround in some very specific case. Of course some may still slip through, but at least community will be able to "vote" and auto-draw core team attention.
If we use this method, we can see more issues like:
Improves DX:
expose
on defineComponent #3399Perf + Fixes:
effect()
#8043 + feat(reactivity): more efficient reactivity system #5912Suspense issues:
Also some "Custom Components" issues and PRs, there are many people who are asking for this, e.g. #6610 (e.t.c., those issues are one of most commented).
And much more interesting stuff! Via this sort I've found so many great ideas from community or bugs I didn't even know existed.
Conclusion
This is the last time I do this, I promise. I won't create "500 PRs" Discussion if it comes to this and I don't require someone's answer. It's just... I can clearly see the problem where even if you want to contribute, you make PR that fixes some visible every-day issue, and your PR get stuck, and the only way to get it out of "stuck" state is to tag Vue Team members. I think that this frustrates such members and there should be a better way.
Again, I try to help in some way with this discussion, at least help myself and community as we have to live with mentioned problems somehow, with workarounds that are not always that good (and sometimes lead to "stop using this feature in this case as it's not fixable and pr's not merged for a year").
Thanks everyone for reading this. I do hope that I was able to deliver correctly my point of view and what I mean by saying all this.
Beta Was this translation helpful? Give feedback.
All reactions