-
Notifications
You must be signed in to change notification settings - Fork 1
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Shipping a static splinter library and binary frontend #34
Comments
This project is primarily a series of patches that I want to get included into Ninja directly. That being said, I've had all of the same frustrations that you've just expressed with regard to working with the Ninja project, and it's maintainers. I'd be more than happy to work with you to convert Ninja / Splinter into a library, and then plumb it with the feature enhancements that you detailed in your issue description. The first thing I'd recommend doing is carefully reviewing the different branches in this repository. The branches prefixed with a number are the "main" branches of this project. Each prefixed branch is ordered from 0 up to indicate the order of the branch. Branch 1 directly builds on branch 0. Branch 2 builds on branch 1, etc. Branches without a numeric prefix are "scratch work" that you can probably ignore.
Removing Please feel free to open new issues if you have ideas. I'm also open to changing the way I've been structuring my work, to use something other than branches, if you have any suggestions. |
I suppose a few more thoughts are in order. One concern that I have is that I don't want to completely discard the possibility of work in this fork getting upstreamed into the ninja project. The more divergence we have with upstream, the more difficult it becomes to adopt improvements submitted upstream. What might need to happen is that the patch series that I've developed (all intended to be upstreamed, of course) needs to be maintained in a different repository. For example, we could make something like "ninja-next" for that work to live in. And then splinter can be a proper fork of ninja-next, that works on library-ification. just spitballing here, I don't know the right answer. |
Thanks for the detailed thoughts. Yeah, I can see your point. It's wise to want to keep things in a generally-upstream-able state. I like the idea of ninja-next that contains branches meant for upstreaming. I'm not crazy about the idea of maintaining two projects in the hopes that some day the ninja maintainers will be interested in the work. What about a process like this: Create an issue that matches each branch for ease of tracking what the branch is for. Branches should be kept in github. When the branch is complete, merge it into master. If the ninja project is interested we should still have the history of the various issues and their matching branches and they could merge in individual branches. But the master for splinter then has the various updates and we could cut releases from master that includes all the features. That would also help to avoid having a tangled history of keeping track of which branches are based on each other. I'm assuming a few things about how GitHub works that I can't back with actual experience. I should probably run some experiments. What do you think? |
I attempted to have conversations with maintainers at the ninja project on ways to modify ninja to make it possible for clients to write their own frontends, or to configure the frontend behavior of ninja. Here are some examples:
I failed to get any interest from ninja maintainers. This project seems more lively. Would this project be interested in splitting out a static library that could help clients to create their own frontends? Specifically I'm proposing:
I'm less familiar with this fork than I am with ninja, so forgive me if some of these don't apply. I'm just trying to be clear about intent so we can discuss whether or not this is desirable from a common understanding.
The text was updated successfully, but these errors were encountered: