Skip to content
Snippets Groups Projects
  1. Feb 18, 2021
  2. Feb 17, 2021
  3. Feb 09, 2021
  4. Oct 07, 2020
    • Stephan Hageboeck's avatar
      [RF] Don't copy expensive object cache pointers in RooAbsArg. · d0f241b8
      Stephan Hageboeck authored
      If an object inside a workspace is cloned, its pointer to the expensive
      object cache inside the original workspace is copied. This creates a
      dangling pointer when the original workspace is deleted. This excludes
      the pointer from cloning, so clones will store their objects in RooFit's
      global cache or (after they have been assigned to a new workspace) in
      their new workspace.
      
      Fixes root-project/root#6529
      
      (cherry picked from commit b4008a13853b9a341a779f73f9aa4c966719d5c1)
      d0f241b8
  5. Oct 01, 2020
  6. Sep 30, 2020
    • Stephan Hageboeck's avatar
      [RF] Fix std::regex failures on Mac10.15. · 6fecf687
      Stephan Hageboeck authored
      Due to a change on Mac, [ and ] in the names of RooFit objects had to be
      replaced by \\[ and \\] to be used in regexes.
      
      This kind of regexes is auto-generated when RooFit checks for objects
      in user-provided formulae. Since auto-generated integrals have [...] in
      their names, regexes with a lot of [] may be generated. They were
      accepted by all OSs until a recent change in OS X.
      
      (cherry picked from commit e0550db0059c17919dc91ad64f5d9d302999f6cc)
      6fecf687
    • Stephan Hageboeck's avatar
      [RF] Fix ROOT-8173. · fb35ab7c
      Stephan Hageboeck authored
      (cherry picked from commit 63fe627ff68c95cbf973901dc0110b4dfc3018f1)
      fb35ab7c
    • Stephan Hageboeck's avatar
      [RF] Add test for ROOT-8173. · f0503143
      Stephan Hageboeck authored
      (cherry picked from commit 8db58b3a800c8f268cb0e45d81a9548d69f4f0fd)
      f0503143
  7. Sep 23, 2020
    • Stephan Hageboeck's avatar
      [RF] Add test for ROOT-10935. · f16e4995
      Stephan Hageboeck authored
      (cherry picked from commit 5a6e3340ef3aa4299a668bf1654add753af0728c)
      f16e4995
    • Stephan Hageboeck's avatar
      [RF] Fix ROOT-10935. · fe265dee
      Stephan Hageboeck authored
      After modernising categories, they couldn't be read from a text file if
      the category states were designated as integers. That's because they
      were interpreted as labels, and the `setLabel` method really sets labels
      now instead of using a hack to silently set an index.
      
      (cherry picked from commit f117695ec7fac861104345be1d4c95a0b39b0538)
      fe265dee
  8. Aug 31, 2020
    • Stephan Hageboeck's avatar
      [RF] Expose RooFormulaVar::formula() as const function. · 0084e647
      Stephan Hageboeck authored
      In ROOT 6.20, the visibility of this function was reduced, since using
      it could leave the formulaVar in an unsafe state.
      A const reference, however, would be fine to expose to the outside
      world. In order to do that, the non-const original was renamed, and a
      const version added to the public interface.
      
      (cherry picked from commit 77e2e1049c689f3aa0b224587c9211c82eb53ee7)
      0084e647
    • Stephan Hageboeck's avatar
      [RF] Add a missing const. · bfdcb91c
      Stephan Hageboeck authored
      (cherry picked from commit 2e6113c2231c8bd7fcbf8f92f6d5c97816b7daab)
      bfdcb91c
  9. Aug 14, 2020
    • Stephan Hageboeck's avatar
      [RF] Circumvent precalculated values for batch evaluations. · 573ccb9e
      Stephan Hageboeck authored
      [ROOT-10987] When a PDF doesn't implement the faster batch interface,
      RooFit's old, single-value computations have to be used as a fallback.
      If RooFit, however, tries to precalculate those values, the nodes of
      the computation graph will always yield the same wrong value, since
      they are switched to "always clean".
      This happens e.g. when a node of the graph doesn't depend on parameters,
      but only on observables.
      
      To fix this, the global static that inihibits "always clean" has to be
      set while the computation is running.
      
      (cherry picked from commit 47da6c180b7edd69dcb309fe06197cc50ffc538f)
      573ccb9e
  10. Jul 21, 2020
  11. Jul 20, 2020
  12. Jul 10, 2020
  13. Jul 06, 2020
    • Stephan Hageboeck's avatar
      [RF] Remove excessive const-ness in object proxies. · cc7eeb68
      Stephan Hageboeck authored
      RooFit proxies act similar to a smart pointer. It was, however, not
      possible to mutate the pointed-to object if the owning proxy was const.
      That's counter-intuitive.
      
      A proxy to a const object can still be achieved by choosing the template
      parameter const, e.g.
        RooTemplateProxy<const RooAbsPdf>
      
      (cherry picked from commit 976f1273b4fcd257f96fcf77c367b2704aba7fa5)
      cc7eeb68
  14. Jun 15, 2020
  15. Jun 04, 2020
    • Stephan Hageboeck's avatar
      [RF] Fix pickling of RooTreeDataStore. · 539eadaa
      Stephan Hageboeck authored
      [ROOT-10810] When RooTreeDataStore is streamed without a TFile (happens
      when pickling), there's no parent directory. It was assumed, however,
      that such a parent always exists.
      Here, this assumption is removed, and the default streaming behaviour
      is restored if the parent is not a TDirectory.
      
      (cherry picked from commit ff14b62014507f7bd944ef57ca52f4cad486a17f)
      539eadaa
  16. May 29, 2020
  17. May 26, 2020
  18. May 24, 2020
  19. May 23, 2020
    • Stephan Hageboeck's avatar
      [RF] Make sure that ROOT-3579 is fixed. · 37f9ecd3
      Stephan Hageboeck authored
      RooTreeDataStore::loadValues was creating unnecessary copies of data to
      ship around a supposed bug in TTree / TChain. This couldn't be
      reproduced. The copying has been removed, a test for importing data from
      trees added, and it has been verified that the example from ROOT-3579
      works.
      
      (cherry picked from commit 1980d176fdd9e724525af91440559b25c2fab978)
      37f9ecd3
    • Stephan Hageboeck's avatar
      [HF] Remove unnecessary member from HistFactory::Channel. · b7f291bc
      Stephan Hageboeck authored
      Although 35105feb3d7cb fixes a problem in HistFactory, it has the
      disadvantage that the assignment operator of Channel gets deactivated.
      By passing the list of open TFiles as argument instead of making it a
      member, the class can stay as it was.
      
      (cherry picked from commit 31f55ff0c1fbae1a0573a1c8bf136be4d77fc06b)
      b7f291bc
  20. May 20, 2020
    • Stephan Hageboeck's avatar
      [RF][Docs] Fix documentation of RooDataHist. · 7ec019ee
      Stephan Hageboeck authored
      [ROOT-10784] The set() functions of RDH all had copy-pasted documentation
      that was completely wrong.
      7ec019ee
    • Stephan Hageboeck's avatar
      [HF] Fix ROOT-10779, cannot update model with new histograms. · f25cce4d
      Stephan Hageboeck authored
      
      When writing a histfactory model to a file and retrieving it,
      histograms are deserialised. If in the mean time new instances of those
      histograms have been written to the file, the new instances cannot be
      picked up. This is because Channel::GetHistogram() was `Get()`-ting
      histograms from the directory. This may return a memory-resident
      histograms.
      Since histograms are always read when deserialising, there is always a
      memory-resident histograms.
      
      The problem has been fixed by reading from file using TKey.
      
      Co-authored-by: default avatarPhilippe Canal <pcanal@fnal.gov>
      (cherry picked from commit 35105feb3d7cbfefa8bf29178b2b9d42851ede6f)
      f25cce4d
  21. May 14, 2020
Loading