> Am 25.08.2020 um 17:24 schrieb Barry Smith <[email protected]>:
> 
> 
> 
>> On Aug 25, 2020, at 9:26 AM, Patrick Sanan <[email protected] 
>> <mailto:[email protected]>> wrote:
>> 
>> 
>> 
>>> Am 25.08.2020 um 15:59 schrieb Barry Smith <[email protected] 
>>> <mailto:[email protected]>>:
>>> 
>>> 
>>>   Aren't we likely to keep using sowing to generate the manual pages and 
>>> then our own scripts to clean them up and add the links for source code 
>>> HTML etc? But use Sphinx for the users manual and all web pages we maintain 
>>> ourselves, FAQ etc? 
>>> 
>>>   So we will always have two "build" parts for documentation and need to 
>>> coordinate them?
>> Yes - what I'm hoping for is that we can come up with a process to make sure 
>> that the same event triggers updating of both systems. I'm not sure if this 
>> is already in the capabilities of the CI system on GitLab - can we, for 
>> example, trigger a "classic" docs build whenever master (or whichever 
>> branch) is updated?
> 
>   It is too slow now to put into the CI for every branch. Hopefully it will 
> eventually be fast enough. Currently it  hasmany bash scripts etc for each 
> file. It also builds everything from scratch, if we make it user dependencies 
> by hooking in a bit of Jed's gmakefile then it will super fast assuming we 
> can keep the previous build around (which is not normally done with the CI  
> but must be possible).
FWIW I think that's what ReadTheDocs does by default, which might make it 
feasible to build more things there.
> 
>   Barry
> 
> 
>>> 
>>>   Or do you have a plan to generate the manual pages with some other tool?  
>>> I don't think that is possible. BTW: I am updating the 
>>> generation/processing of the manual pages in 
>>> barry/2020-07-07/docs-no-makefiles  It should be much faster once several 
>>> rounds of refactorization are done and will not require all the SOURCEC 
>>> EXAMPLESC stuff in the makefiles anymore.
>>> 
>> I think the best idea so far is to (once or with each build) parse the 
>> sowing syntax into something Sphinx can then parse (that is, 
>> reStructuredText), but that seems like a lot of work to undertake when there 
>> is lower-hanging fruit in terms of making the docs more usable.
> 
>   
>> 
>> Another option which occurs to me now that you mention you're speeding up 
>> the man page build is that, if the full classic docs build were sufficiently 
>> fast, it could also be done automatically on the ReadTheDocs server (as a 
>> minimal build with docs is done now), and then perhaps we can just use the 
>> HTML that's generated on docs.petsc.org <http://docs.petsc.org/> .
>>>   Barry
>>> 
>>> 
>>>   
>>> 
>>>> On Aug 25, 2020, at 8:43 AM, Patrick Sanan <[email protected] 
>>>> <mailto:[email protected]>> wrote:
>>>> 
>>>> This is still up for debate.
>>>> 
>>>> The main push right now is to try and move as many of the docs as possible 
>>>> (in particular, the users manual) to a web-friendlier format, using Sphinx 
>>>> and ReadTheDocs. Unlike the current "classic" docs at 
>>>> https://www.mcs.anl.gov/petsc/documentation/index.html 
>>>> <https://www.mcs.anl.gov/petsc/documentation/index.html>, this is used in 
>>>> a style very similar to CI - we have a .readthedocs.yml file, and 
>>>> docs.petsc.org <http://docs.petsc.org/> (linked to our ReadTheDocs 
>>>> account) updates itself whenever things are pushed to master (or other 
>>>> branches we specify).
>>>> 
>>>> What makes this a bit ugly at the moment is that a lot of the material, in 
>>>> particular the HTML source code and the man pages, is still built by the 
>>>> classic docs system (nightly). So, there are two subsets of documentation 
>>>> with two different build processes. This is obviously not what we want in 
>>>> the long run, but has the advantage of allowing us to make incremental 
>>>> progress (in my view, the only possible progress) on the docs.
>>>> 
>>>> Currently, the Sphinx build actually does a minimal build of PETSc, enough 
>>>> to obtain information to generate man pages links to the "classic" docs.
>>>> 
>>>>> Am 24.08.2020 um 19:22 schrieb Fande Kong <[email protected] 
>>>>> <mailto:[email protected]>>:
>>>>> 
>>>>> Could we support "make docs" instead of "xx-docs-xxx"?
>>>>> 
>>>>> Or were we planning to support multiple formats? 
>>>>> 
>>>>> Thanks,
>>>>> 
>>>>> Fande,
>>>>> 
>>>>> 
>>>>> On Fri, Aug 21, 2020 at 9:58 AM huabel via petsc-dev 
>>>>> <[email protected] <mailto:[email protected]>> wrote:
>>>>>   success to make sphinx-docs-html. 
>>>>>   
>>>>> Thanks!
>>>>> 
>>>>> 
>>>>>> On Aug 21, 2020, at 11:40 PM, Satish Balay <[email protected] 
>>>>>> <mailto:[email protected]>> wrote:
>>>>>> 
>>>>>> The updates referred in this thread are in master branch [and not maint]
>>>>>> 
>>>>>> Satish
>>>>>> 
>>>>>> On Fri, 21 Aug 2020, huabel via petsc-dev wrote:
>>>>>> 
>>>>>>> 
>>>>>>> ➜  petsc git:(maint) make sphinx-docs-html
>>>>>>> /usr/local/opt/[email protected]/bin/python3.8 ./config/gmakegen.py 
>>>>>>> --petsc-arch=arch-darwin-c-debug
>>>>>>> /usr/local/opt/[email protected]/bin/python3.8 
>>>>>>> /Volumes/data3/fun2/demox/petsc/config/gmakegentest.py 
>>>>>>> --petsc-dir=/Volumes/data3/fun2/demox/petsc 
>>>>>>> --petsc-arch=arch-darwin-c-debug --testdir=./arch-darwin-c-debug/tests
>>>>>>> gmake[1]: *** No rule to make target 'sphinx-docs-html'.  Stop.
>>>>>>> gmake: *** [GNUmakefile:17: sphinx-docs-html] Error 2
>>>>>>> 
>>>>>>> 
>>>>>>> 
>>>>>>>> On Aug 21, 2020, at 11:06 PM, Jed Brown <[email protected] 
>>>>>>>> <mailto:[email protected]>> wrote:
>>>>>>>> 
>>>>>>>> huabel via petsc-dev <[email protected] 
>>>>>>>> <mailto:[email protected]>> writes:
>>>>>>>> 
>>>>>>>>> Thanks, I copied the ‘developer’ fold out and comment 
>>>>>>>>> (#extensions.append('sphinxcontrib.bibtex’) this line, with few copy 
>>>>>>>>> it works well, (no cite link), for me it enough. 
>>>>>>>> 
>>>>>>>> We recommend using `make sphinx-docs-html` from the top-level.  It 
>>>>>>>> will create/activate a virtualenv based on requirements.txt so 
>>>>>>>> everything will work.  It's fast for incremental updates.

Reply via email to