Skip to content

Conversation

@hageboeck
Copy link
Member

  • Code in the df103 tutorial notebooks here doesn't compile, since converttonotebook.py only recognises functions with a few hard-coded return types. Here, this limitation is lifted (or at least a broader range of functions is recognised ...).
  • Using the new functionality, some RooFit tutorials could be updated.
  • And a new tutorial was added to clarify [ROOT-8440]

@hageboeck hageboeck requested review from couet and lmoneta as code owners June 23, 2020 14:18
@hageboeck hageboeck self-assigned this Jun 23, 2020
@phsft-bot
Copy link

Starting build on ROOT-debian10-i386/cxx14, ROOT-performance-centos7-multicore/default, ROOT-fedora30/cxx14, ROOT-fedora31/noimt, ROOT-ubuntu16/nortcxxmod, mac1014/python3, mac1015/cxx17, windows10/cxx14
How to customize builds

@hageboeck hageboeck force-pushed the converttonotebook branch from d295ca9 to af73775 Compare June 23, 2020 14:27
@phsft-bot
Copy link

Starting build on ROOT-debian10-i386/cxx14, ROOT-performance-centos7-multicore/default, ROOT-fedora30/cxx14, ROOT-fedora31/noimt, ROOT-ubuntu16/nortcxxmod, mac1014/python3, mac1015/cxx17, windows10/cxx14
How to customize builds

@phsft-bot
Copy link

Build failed on ROOT-debian10-i386/cxx14.
Running on pcepsft10.dyndns.cern.ch:/build/workspace/root-pullrequests-build
See cdash.
See console output.

Failing tests:

@hageboeck hageboeck requested a review from eguiraud June 24, 2020 13:01
@hageboeck hageboeck force-pushed the converttonotebook branch from af73775 to 92be15e Compare June 24, 2020 13:30
@phsft-bot
Copy link

Starting build on ROOT-debian10-i386/cxx14, ROOT-performance-centos7-multicore/default, ROOT-fedora30/cxx14, ROOT-fedora31/noimt, ROOT-ubuntu16/nortcxxmod, mac1014/python3, mac1015/cxx17, windows10/cxx14
How to customize builds

@hageboeck hageboeck force-pushed the converttonotebook branch from 92be15e to 6217fb9 Compare June 24, 2020 13:32
@phsft-bot
Copy link

Starting build on ROOT-debian10-i386/cxx14, ROOT-performance-centos7-multicore/default, ROOT-fedora30/cxx14, ROOT-fedora31/noimt, ROOT-ubuntu16/nortcxxmod, mac1014/python3, mac1015/cxx17, windows10/cxx14
How to customize builds

@phsft-bot
Copy link

Starting build on ROOT-debian10-i386/cxx14, ROOT-performance-centos7-multicore/default, ROOT-fedora30/cxx14, ROOT-fedora31/noimt, ROOT-ubuntu16/nortcxxmod, mac1014/python3, mac1015/cxx17, windows10/cxx14
How to customize builds

@hageboeck hageboeck force-pushed the converttonotebook branch from 51daa22 to 50989b7 Compare June 26, 2020 16:38
@hageboeck hageboeck requested a review from oshadura as a code owner June 26, 2020 16:38
@phsft-bot
Copy link

Starting build on ROOT-debian10-i386/cxx14, ROOT-performance-centos7-multicore/default, ROOT-fedora30/cxx14, ROOT-fedora31/noimt, ROOT-ubuntu16/nortcxxmod, mac1014/python3, mac1015/cxx17, windows10/cxx14
How to customize builds

@phsft-bot
Copy link

@hageboeck hageboeck force-pushed the converttonotebook branch from 50989b7 to 68a712f Compare June 26, 2020 17:28
@phsft-bot
Copy link

Starting build on ROOT-debian10-i386/cxx14, ROOT-performance-centos7-multicore/default, ROOT-fedora30/cxx14, ROOT-fedora31/noimt, ROOT-ubuntu16/nortcxxmod, mac1014/python3, mac1015/cxx17, windows10/cxx14
How to customize builds

@phsft-bot
Copy link

Starting build on ROOT-debian10-i386/cxx14, ROOT-performance-centos7-multicore/default, ROOT-fedora30/cxx14, ROOT-fedora31/noimt, ROOT-ubuntu16/nortcxxmod, mac1014/python3, mac1015/cxx17, windows10/cxx14
How to customize builds

@phsft-bot
Copy link

Build failed on ROOT-fedora31/noimt.
Running on root-fedora-31-2.cern.ch:/home/sftnight/build/workspace/root-pullrequests-build
See cdash.
See console output.

Errors:

  • [2020-06-30T12:06:18.612Z] CMake Error at /home/sftnight/build/workspace/root-pullrequests-build/rootspi/jenkins/root-build.cmake:970 (message):

@hageboeck hageboeck force-pushed the converttonotebook branch from 6994a3d to 26204ee Compare July 6, 2020 11:08
@phsft-bot
Copy link

Starting build on ROOT-debian10-i386/cxx14, ROOT-performance-centos7-multicore/default, ROOT-fedora30/cxx14, ROOT-fedora31/noimt, ROOT-ubuntu16/nortcxxmod, mac1014/python3, mac1015/cxx17, windows10/cxx14
How to customize builds

@hageboeck hageboeck force-pushed the converttonotebook branch from 26204ee to 3ad0de5 Compare July 21, 2020 17:37
@phsft-bot
Copy link

Build failed on ROOT-performance-centos8-multicore/cxx17.
Running on olbdw-01.cern.ch:/data/sftnight/workspace/root-pullrequests-build
See console output.

Failing tests:

@phsft-bot
Copy link

Starting build on ROOT-debian10-i386/soversion, ROOT-performance-centos8-multicore/cxx17, ROOT-ubuntu18.04/nortcxxmod, ROOT-ubuntu2004/python3, mac1015/cxx17, mac11/cxx14, windows10/cxx14
How to customize builds

@hageboeck hageboeck force-pushed the converttonotebook branch from 72b4745 to fbe4475 Compare July 2, 2022 18:21
@phsft-bot
Copy link

Starting build on ROOT-debian10-i386/soversion, ROOT-performance-centos8-multicore/cxx17, ROOT-ubuntu18.04/nortcxxmod, ROOT-ubuntu2004/python3, mac1015/cxx17, mac11/cxx14, windows10/cxx14
How to customize builds

@phsft-bot
Copy link

Build failed on ROOT-performance-centos8-multicore/cxx17.
Running on olbdw-01.cern.ch:/data/sftnight/workspace/root-pullrequests-build
See console output.

Failing tests:

@jalopezg-git
Copy link
Contributor

jalopezg-git commented Jul 3, 2022

@hageboeck I tried it locally and seems to be working as intended - I saw some errors though, but I think those are related to my environment.

@couet I think it is essentially good to go 🙂. Could you pay attention after merging this that things are working as expected in the machine where the documentation is being built?

Copy link
Contributor

@jalopezg-git jalopezg-git left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM! (EDIT: I have rebased and applied clang-format suggestions)

hageboeck added 13 commits July 4, 2022 11:40
converttonotebook.py was able to recognise a few functions based on a
few hard-coded return types in C++. Now, it searches for patterns such as
   <return type>[*&] [abcd::]abcd(
to find functions, and then it counts () as well as { } to find the
function bodies. It also more reliably deals with things that appear
before function definitions, such as
   template<typename T>

[ROOT-10861] This is a partial fix for ROOT-10861, because functions are
not ripped apart, so the notebook will run.

Further, doxygen-style latex tags such as `\f[` by
notebook-style `$$`, so markdown cells look better.

Make sure converttonotebook recognises indented comments.
- Add a function that measures the indentation of a function body.
- Use this to create nicely formatted cells in notebooks. This is
especially important for RooFit tutorials.
If errors/exceptions occur during conversion of tutorial macros to
notebooks, a few more helpful messages are printed. Further, the exit
status of the notebook conversion step now propagates to the outside,
the conversion failures can be detected automatically.
converttonotebook.py was converting each comment into a markdown cell.
If comments are inside blocks, the blocks get split into multiple cells,
and therefore cannot execute, any more.
[ROOT-10877]
[ROOT-10157]
- The doxygen filter step now only writes out that it wants a
notebook, and how it should be created, but it doesn't run the notebook.
- Later, this info is picked up by makeNotebooks.sh, and notebooks are
generated in parallel.
- Add a variable in the Makefile to choose number of processes for notebook
  conversion.
- Doxygen was creating one svg for every class, showing in which library it resides. This created
  6000 svgs, which were mostly identical. Now, only ~100 are created for every library in ROOTSYS/lib/,
  and the relevant webpages link to those.
  This speeds up the "listlibs" step of the doxygen process signficantly.
- Add parallel processing for collaboration diagrams of class webpages.
- Remove scanning of rootmap files. It doesn't work, any more. TCling needs
  a fix for ROOT-10900, so gInterpreter->GetClassSharedLib() will always
  return the right thing.
- Further, parallelise the modification of class webpages.
Notebooks can't deal with something like
    TFile file("name");
This leads to a name clash, and the notebook cannot be executed.
@phsft-bot
Copy link

Starting build on ROOT-debian10-i386/soversion, ROOT-performance-centos8-multicore/cxx17, ROOT-ubuntu18.04/nortcxxmod, ROOT-ubuntu2004/python3, mac1015/cxx17, mac11/cxx14, windows10/cxx14
How to customize builds

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants