3 ms·
You can...and certainly cloning a git repo or hitting the "fork" button on github is a normal part of the development workflow. If you're experimenting those ch
by scottlamb 7y ago
You can...and certainly cloning a git repo or hitting the "fork" button on github is a normal part of the development workflow. If you're experimenting those changes may be discarded. If you're contributing those changes go back to upstream. But I don't think either of those are what the author means by fork. Other folks have talked about this. [1] [2]
I think the author means: if you're maintaining changes in your fork indefinitely and advertising this fork to others as superior to the original to use or as a canonical place to file issues, you should have a good reason. Communities are valuable; please don't divide them or throw them away lightly. Try working with the original maintainer first.
[1] https://news.ycombinator.com/item?id=16600219 https://news.ycombinator.com/item?id=16600219
[2] https://news.ycombinator.com/item?id=20001570 https://news.ycombinator.com/item?id=20001570
- chii 7y ago> you should have a good reason And what constitutes a good reason? The epitome of open source is that you don't need to explain of your fork is really superior, the users will come.
- Aeolun 7y agoCreating a wrapper around an existing library will never be superior to a native rust library to me.
- carlmr 7y agoIt may be superior if there's ongoing maintenance and improvements on the original code. RiiR certainly has it's place though. Ripgrep for me as a user is vastly superior to grep and a large reason for that I see is in the safe optimizations allowed by the borrow checker. They're certainly possible in C, but it wouldn't be maintainable. Also I'd look at how stable the library is you're wrapping and the size of the code base. It may be lower effort to rewrite than to wrap.
- scottlamb 7y agoA good reason is that your fork is superior _and_ you have exhausted reasonable efforts at sharing the improvements with upstream. There's some threshold of how superior but it's subjective.
- abbadadda 7y agoI think the author's point is not that you can't RiiR, it is that one should think twice if the resultant code is not supported. If there is a Rust community around it, great! But if it is just doing it just to RiiR, then (C) holds.
- orange8 7y agoI did not mention anything about github. I am talking about what you can freely do with any opensource software without being made to feel like you are breaking the law or doing something immoral. If you arent comfortable with people building on top of or making derivatives of your work, do not opensource it.