[ https://issues.apache.org/jira/browse/SOLR-12930?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16666149#comment-16666149 ]
Cassandra Targett commented on SOLR-12930: ------------------------------------------ Sorry for the length of the comment, there are a few things I wanted to make sure were clear, both in what I have been suggesting and what I know about the realities of trying to publish some docs-something, no matter how casually we try to do it. {quote}I think the reference guide needs to be for end users and not include things being discussed here... {quote} I agree, it should not be part of the standard Ref Guide. Also there are release rules about VOTES to publish the Ref Guide (since it is an "official" artifact of the project) that would be obstructions if we applied them to developer documentation. A goal needs to be to remove as many obstructions as possible - or at least not put them up at the start. A sibling dev guide is exactly the proposal I made in my earlier comments and in the example project I created. The basic infrastructure I created in my small example project is mostly only there if we want to publish an HTML version of a Dev Guide online, and not only rely on developers to either load pages in their IDEs (which most committers could be expected to do as a general rule) or have to go find the pages somewhere in the tree in Github to look at them (which new contributors may not know to do). A one-stop place for "everything anyone needs to know about developing Solr", linked from the Resources page of the website, would be quite helpful IMO to new potential contributors. I think they _should_ be in asciidoc format, so all our docs are in the same file format; it reduces context switching which would encourage participation from everyone. I have not been suggesting that we copy everything we do today for the Ref Guide and do it for developer docs (or, I was attempting to specifically not suggest that). If you look at the strawman project I made, it's not nearly as complex as the Ref Guide. That comparison requires you to have a sense for how the Ref Guide works, but it's basically just an ant target that downloads a .jar and builds an HTML page in about 3 seconds. It's a lot simpler than the Ref Guide process which includes a lot of page templates and nav building and validation for correctness that we could forego for this case. {quote}I don't think we necessarily need to have it all on one page, there probably shouldn't be very many total pages... {quote} Regarding this point - just to make sure we're referring to the same thing, my point about a single page was not that all the content lives in some single huge file. That would be a pain to maintain and edit. The content should be in multiple files that each discuss a specific area of development (setting up your IDE, how to build, how to write tests, how to submit patches, etc.). The idea of a single file was about taking all those smaller files we write and _publishing_ them as a single HTML page that is the thing make public. This is is done very easily with Asciidoctor ([https://asciidoctor.org/docs/user-manual/#include-directive]). But, in case you meant having multiple HTML pages as the output - as soon as you have more than one page, you need navigation between those pages. You don't get navigation between pages without some work on our part to make it happen (perhaps a page hierarchy, then you need clues for the user about where they are in the hierarchy) and some of the complexity of the Ref Guide today is in building the page navigation and you can only do that if you have a template for the page so they are all the same...essentially the only way to get that is to do something like Jekyll, which is why we have to use that today for the Ref Guide. A single HTML page allows us to forget all of those concerns because the nav - such as it is - is built into the side of the page during the build process. We only need to make sure all the pages are included in the mono-page using the include directive functionality I mentioned ^^. {quote}At some point in the relatively near future, all git repositories at Apache will be migrated from the git-wip system to gitbox {quote} The Gitbox transition is interesting in this context. One of the things this change will do is make the Github repo the primary repository, which for us today is a mirror of the ASF Git repo (our current ASF Git repo becomes the read-only mirror). So instead of pushing our commits to ASF Git, we push them to Github, and we pull new changes from Github. That opens up all of Github's features which today we cannot use (a primary one being the ability to interact with pull requests directly from Github). For this discussion an interesting feature then would be the ability to use Github Pages ([https://pages.github.com/]), which has deep Asciidoctor integration and could be integrated into our project how we see fit. This gives us _another_ place we could publish a Dev Guide, but that publication can happen as soon as changes are pushed to the branch we would need to maintain specifically for this purpose (I believe it has to be called "gh-pages"; a workflow might be we make changes to master, then cherry-pick to this branch). There's a little bit of complexity there in terms of changing our usual workflows, but maybe that's worth it, because as I said in an earlier comment, someone is going to have to push some sort of button somewhere to get any content published out to the world (unless we don't do that and instead just expect people find it in the source). Workflows are going to need to change in some way anyway. It's just a question of which change we like the most. > Add great developer documentation for writing tests. > ---------------------------------------------------- > > Key: SOLR-12930 > URL: https://issues.apache.org/jira/browse/SOLR-12930 > Project: Solr > Issue Type: Sub-task > Security Level: Public(Default Security Level. Issues are Public) > Components: Tests > Reporter: Mark Miller > Priority: Major > Attachments: solr-dev-docs.zip > > -- This message was sent by Atlassian JIRA (v7.6.3#76005) --------------------------------------------------------------------- To unsubscribe, e-mail: dev-unsubscr...@lucene.apache.org For additional commands, e-mail: dev-h...@lucene.apache.org