Package Release Info

YODA-1.9.7-bp155.1.10

Update Info: Base Release
Available in Package Hub : 15 SP5

platforms

AArch64
ppc64le
s390x
x86-64

subpackages

libYODA-1_9_7
python3-YODA
YODA-devel

Change Logs

* Sun Oct 23 2022 Atri Bhattacharya <badshah400@gmail.com>
- Update to version 1.9.7
  * Add Stat and Uncor to labels flagged as uncorrelated.
  * Update yaml-cpp version for C++17 compatibility.
  * Replace distutils with sysconfig and manual calls to the
    compiler.
- Add YODA-correct-python-platlib.patch: Use correct python
  platlib ($prefix/lib64) consistently across different python
  versions; although we do not build for multiple python versions,
  we would not want to adapt the file list everytime upstream
  python vacillates between lib (e.g. python 3.8/3.10) vs lib64
  (e.g. python 3.9) for platlib.
* Wed Aug 24 2022 Atri Bhattacharya <badshah400@gmail.com>
- Set PYTHONPATH to buildroot's python3_sitearch before testing to
  allow importing of yoda module.
* Fri Jul 15 2022 Atri Bhattacharya <badshah400@gmail.com>
- Update to version 1.9.6:
  * Pass ignoreOffDiagonalTerms correctly when retrieving
    covariance matrix from a Scatter2D.
  * Add a covariance/off-diag test to test-s2d.py
  * Force Cython rebuilds on all .pyx files, if possible (helps
    with Python ABI compat).
- Drop 0001-fix-cython-rebuild-after-configure.patch: incorporated
  upstream.
* Thu Jul 07 2022 Christophe Giboudeaux <christophe@krop.fr>
- Add patch to fix build with python 3.10:
  * 0001-fix-cython-rebuild-after-configure.patch
- Spec cleanup
* Sun May 29 2022 Atri Bhattacharya <badshah400@gmail.com>
- Update to version 1.9.5:
  * Add per-AO double-precision writing if the
    WriterDoublePrecision annotation is set.
  * Ensure that default variation +- errors are both positive, for
    all Scatter types.  Original patch by Jon Butterworth.
  * Protect against NaNs arising from the YAML parser in
    error-breakdown calcs.
* Tue Dec 07 2021 Atri Bhattacharya <badshah400@gmail.com>
- Update to version 1.9.4:
  * Fix Scatter.variations keys to be string instead of bytes in
    Python 3.
- Changes from version 1.9.3:
  * yoda2root,root2yoda: use ROOT in the batch mode.
  * Restructure tests to use autotools standard naming and trigger
    on extensions, and to ensure testwriter runs before
    testreader.
  * Fix Point.errMap() keys to be string instead of bytes in
    Python 3.
  * Catch low-stats errors in computing errors in H1 and H2
    conversion to scatters.
* Sat Nov 13 2021 Atri Bhattacharya <badshah400@gmail.com>
- Update to version 1.9.2:
  * Fix ao.path setting to use ao.setPath() in root2yoda.
  * Introduce rmVariations() for Points and Scatters
  * Add precision arguments to unbound write functions, and Python
    mapping of setPrecision() and useCompression() methods of
    Writer classes.
  * Fix IO failure modes to actually report exceptions, and with
    correct types and error messages.
  * Fix broken reading gzipped files in Python (was a regression
    in 1.9.0)
  * Provide more options to specify the Cython command to be used.
  * Fix yAvgErr -> yErrAvg typo in Scatter2D.yErrAvgs.
  * yodascale: improved handling of .yoda.gz extensions, and
    adding --output.
  * Fix a bug with reading files while running with non-US
    locales.
  * Remove rogue s.variations() call, causing rivet-merge to crash
  * Change the Axis2D edge-uniqueness test to be based on the
    smallest bin width rather than the median.
  * Remove adoptPoint, make addPoint(Point) argument non-const
    since one should always want to update the parent of the
    point.
  * Add updateTotalUncertainty method which allows the user to
    automatically set the total error to the sum in quad of the
    error components for each point.
  * Add adoptPoint(s) methods to the Scatter*D classes, which
    allows to add a previously-instantiated point while modifying
    its parentage so that it points back to that Scatter.
  * Modify the Scatter*D copy constructor so that the parentage of
    the relevant points is correctly set, to avoid set faults
    after a Scatter*D is clone()'d.
  * Add some missing functionality which used to only be available
    to Scatter2D to also cover Scatter{1,3}D.
  * Add many additional tests to cover the ErrorBreakdown
    functionality in existing pytest scripts
  * Bin2D: use fuzzyEquals for bin edge comparisons. Required for
    correct rivet-merge behaviour with 2D histograms.
  * Provide x,yWidths() functions on Histos and Profiles.
Version: 1.9.0-bp154.1.63
* Thu Apr 01 2021 Atri Bhattacharya <badshah400@gmail.com>
- Update to version 1.9.0:
  * Add missing inline declarations to free IO functions.
  * Add fillDim() methods to the Bin, Bin1D and Bin2D classes.
  * Rename the Point getParentAO etc. to getParent, using the new
    Scatter base, and improve the accessor methods.
  * Add Scatter base class to the Scatter classes, with rmPoints()
    implemented there.
  * Add Binned and Fillable base classes, the former introducing
    the fillDim() method and rmBin(), and use them as ABCs for the
    counter, histo and profile types.
  * Allow YODA's Python interface to read from StringIO and FileIO
    objects.
  * Add rmPoint() and rmPoints() methods on all Scatter types.
  * Change scaleDim() to scale() for points and scatters
  * Remove ROOT5 compatibility, and handle 6.22 change in PyROOT.
  * Fix out-of-source builds re. bash completions.
  * Fixes to the Profile1D Python interface.
  * Add <limits> header include to AnalysisObject.h to support
    GCC11 (cf. http://gcc.gnu.org/gcc-11/porting_to.html)
  * Restructure yodamerge to use pairwise merges, avoiding
    simultaneous loading of all the input files and greatly
    speeding up processing. Simultaneous simplification by
    replacement of yodamerge stacking functionality with
    yodastack.
* Sat Nov 28 2020 Atri Bhattacharya <badshah400@gmail.com>
- Update to version 1.8.5:
  * Add relErrs() functions to the H1D and H2D Python interfaces.
  * Add an explicit configure test and override variable for the
    cython executable.
  * Fix typo from xAvgErr -> xErrAvg in Scatter2D.xErrAvgs()
    Python function.
* Mon Nov 09 2020 Atri Bhattacharya <badshah400@gmail.com>
- Update to version 1.8.4:
  * Don't suppress cross-section-normalised empty histograms in
    yodamerge.
  * Use ROOT's ROOT_VERSION_CODE and ROOT_VERSION macros to handle
    the changing TPython API.
  * Do not apply bin-width scaling by default between YODA and
    ROOT binned objects.
  * Improve ROOT conversion utilities to support a fuller set of
    width-scaling and focus-mapping options.
  * Fix Point1D.setXErrs() function to handle sources and asymm
    errors correctly.
  * Map scatter reset() functions into Python.
  * Create bash completion dir in $prefix/etc if it doesn't exist.
  * Fix missing call-parentheses in Python-mapped Bin classes,
    including in the __repr__ functions, which was making
    print(bin) crash.
- Move bash_completion file from /usr/etc, where it is installed,
  to the correct dir: `%{_datadir}/bash-completions/completions/`;
  add BuildRequires: bash-completion for correct dir ownership.
* Tue Jul 14 2020 Atri Bhattacharya <badshah400@gmail.com>
- Update to version 1.8.3:
  * The python method `Histo2D.addBins` was reimplemented using
    `Histo2D::addBins()` C++ method instead of `Histo2D::addBin()`
    for better performance.
  * Make the low stats error for variances strictly require Neff >
    1, rather than a fuzzy comparison that can cause trouble
    downstream.
  * Make xyMids,Foci,Errs,Mins,Maxs etc. runtime configurable with
    'unique' and 'asgrid' optional params.
  * Convert geometric axis-property array functions on Histo2D and
    Profile2D to return the unique edges, mins, maxes, mids, etc.
    rather than the heavily repeated versions for all the bins.
  * Fix Histo2D.volumes() Python mapping, and add sumWs()
    functions to all histo types.
  * Add asgrid optional arguments to value-related Python methods
    for Histo2D and Profile2D
  * Add computation of Python versions and passing them to Cython
    as command-line flags.
- Changes from version 1.8.2:
  * Fix off-by-one error in Axis2D.numBinsX/Y() return values,
    fixing Histo2D and Profile2D.
  * Add numBinsX() methods to the 1D histogram and profile
    classes.
  * Py3 compatibility fix
  * Fix call to `Histo1D.annotationsDict`
- Changes from version 1.8.1:
  * Fix list-return read YODA-format function.
  * Removed unwanted space at end of headers.
  * Set correct dimension when calling setErrs.
  * Added zerrs to 3DScatter headers.
  * Added xErrs, yErrs, zErrs to Scatter3D.pyx
  * Add underflow and overflow reporting to the verbose yodals
    printout.
  * Re-instate title() and fix bug in z-error storage for scatter
    3Ds.
  * Python3 compatibility tweaks
  * Add a pdfspace() function in C++ and a Python equivalent --
    recoded rather than mapped, due to the technical implications
    of passing Python callables as std::functions -- for custom
    binning from a density function.
  * Fix YODA 1.7 style call to AO.dim.
  * Update yodamerge ao_out.point(i).setVal(dim, val_i)
  * IO.pyx: missing python3 compatibility
  * Sort dicts on IO write(), and return ordered dicts in read
    mode if possible.
- Drop YODA-py3-compatibility-for-IO_pyx.patch: incorporated
  upstream.
Version: 1.8.0-bp152.1.30
* Sat Jan 18 2020 Atri Bhattacharya <badshah400@gmail.com>
- Add YODA-py3-compatibility-for-IO_pyx.patch -- Py3 compatibilty
  for IO.pyx; patch taken from upstream commit and modified to fix
  further similar errors
  (https://gitlab.com/hepcedar/yoda/issues/4).
- Change hashbangs referring to python or `env python` to use
  `/usr/bin/python3` consistently in source dir, rather than
  from buildroot after installation. This allows to run the tests
  correctly in the %check section.
- Move binaries using the python module to python3-%{name}
  package.
- Run make check.
* Wed Jan 08 2020 Atri Bhattacharya <badshah400@gmail.com>
- Switch to python3:
  * Requires and BuildRequires switched to python3 versions
  * Rename python package to python3-%{name} and provide
    python-%{name} from it; this makes the py3 switch clear to
    users.
  * Explicitly pass PYTHON_VERSION as py3 version to make it build
    against python3
  * Drop an unecessary hashbang from a file in non-exec location.
- Remove an sed hack for buildroot in *.pyc file(s); no longer
  needed.
* Sat Jan 04 2020 Atri Bhattacharya <badshah400@gmail.com>
- Update to version 1.8.0:
  * Add extra optional bool arguments to the mkScatter converter
    functions for Histo1D and Histo2D types.
  * Force rebuild of the Python interface if a sufficient Cython
    is found, even if the generated .cpp file is present at
    configure-time.
  * Final conversion to use ast module not just in autotype but as
    first choice in AO.annotation.
  * Remove ALL uses of @property in the Python interfaces: all
    methods must have call-parentheses now.
  * Improve Python annotation parsing to preferentially use ast
    rather than yaml.
  * Add x/yErrs and x/yErrAvgs functions to Scatter2D Python.
- Rebase so numbering patch for updated version.
* Wed Aug 21 2019 Atri Bhattacharya <badshah400@gmail.com>
- Update to version 1.7.7:
  * Fix printing of YAML annotations.
  * Fix Python 3 / Unicode compatibility for Point.pyx.
- Changes from version 1.7.6:
  * Add xEdges and yEdges methods to the 2D Histo and Profile
    classes, in C++ and Python.
  * Remove @property attributes from Python xEdges methods.
  * Fix Python3/argparse attribute access bug in yodamerge.
- Changes from version 1.7.5:
  * Convert bin/* scripts to use Python3-compatible argparse
    rather than old optparse.
  * Fix Histo1D::integralRange to include the second-argument bin
    content as described in the docstring.
  * Fix Python3 StringIO import compatibility
  * Add -m/-M filtering to yodadiff.
  * Fix HistoBin2D printing in Python interface.
  * Protect yodamerge against zero-valued (?!) ScaledBy
    attributes.
- Drop conditional for boost BuildRequires pertaining to outdated
  versions of openSUSE.
* Wed May 01 2019 Atri Bhattacharya <badshah400@gmail.com>
- Update to version 1.7.4:
  * Roll out sameBinning methods for Profile1D and Profile2D.
  * Add sameBinning methods for Histo1D and Histo2D.
  * Remove debug couts from single-AO Writer::write() function.
  * Add --ignore-missing and --ignore-new flags to yodadiff.
  * Tidy up point-comparison output of yodadiff.
  * Fix additional weighting in yodamerge
- See %{_docdir}/YODA-devel/ChangeLog for changes between version
  1.7.1 through 1.7.3.
- Rebase sover.diff to apply cleanly.
Version: 1.7.0-bp151.1.6
* Wed May 23 2018 badshah400@gmail.com
- Update to version 1.7.0:
  * Add Nentries printout to yodals -v
  * Patches for ROOT conversion from Robert Hatcher -- thanks!
  * Add YODA format version annotation, at version 2, and update
    YODA reader to use version info and multiline YAML EOF marker.
  * Write YODA annotations in YAML with a --- YAML break-line.
  * Enable compressed writing from Python.
  * Remove UNUSED macro in favour of anonymous args.
  * Enable zipped writing... but only works from C++ so far.
  * Add HistoBin2D::area(), and provide a default normto=1.0
    argument on the Python Histo2D.normalize() method.
  * Change license explicitly to GPLv3, cf. MCnet3 agreement.
  * Parse YODA format AO headers as YAML (restriction to
    single-line dict entries for now).
  * Use a slightly enhanced fast numeric parser in ReaderYODA
    (taken from LHAPDF, originally inspired by Gavin Salam).
  * Add an UNSCALE spec option to yodascale, to undo ScaledBy
    effects.
  * Add optional zlib support via zstr
  * Fix setVal(i, x) numbered-axis methods on Point2D and Point3D:
    switch break statements were missing.
  * Explicitly load all ROOT objects as a list rather than
    generator. Patch from Dmitry Kalinkin.
  * Improvements to yodaplot, including two operating modes: the
    default CMP mode is suitable for plotting histos by path, from
    raw .yoda files.
  * Update yoda.plotting functions to treat plot-keys as args and
    AO annotations via case-insensitive keys.
  * Add annotationsDict to the Python AO interface.
  * Add AO as an alias for AnalysisObject.
  * Add parallel/compatibility yoda1 package to aid eventual
    transition to YODA v2.
  * Add x,y,zMins and Maxs to all 1D data types and scatters (and
    x,yMin/Max to the scatters) -- Python interface only.
  * Rework some of the yoda.plotting tools, making it a bit more
    compatible with user-scripted matplotlib.
  * Add convenience aliases H1D, H2D, P1D, P2D, and S1D, S2D, S3D
    for the HistoXD, ProfileXD, and ScatterXD classes
    respectively.
  * Add xyVals/Errs and other 'bin array property' accessors to
    the Python Histo1D and Profile1D types: important for
    connection to matplotlib.
  * Use Python natsort library to sort yodals output if available.
- Rebase sover.diff.
- Add BuildRequires: pkgconfig(zlib); now required for bulding
  YODA.
- Fix env-based hashbangs.
Version: 1.6.7-bp150.2.5
* Wed Aug 02 2017 badshah400@gmail.com
- Update to version 1.6.7:
  * pyext/yoda/rootcompat.pyx: Fix ordering of TH1 vs. TProfile
    conversion
  * Add static Reader methods to match the Writer ones.
  * Fix Histo2D and Profile2D total distribution reading from YODA
    format.
  * Convert TH1F to TH1D in root2flat. Much simpler than
    duplicating the TH1D stuff in pyext.
- Changes from version 1.6.6:
  * Bugfixes in Cython bins accessors for Histo2D.
  * Fixed warning messages about the obsoleteness of AIDA so that
    the scripts actually still work.
* Mon Feb 13 2017 jengelh@inai.de
- Call ldconfig directly. Add sover.diff, enforce versioning
  as per guidelines.
* Thu Feb 02 2017 adam.majer@suse.de
- use individual libboost-*-devel packages instead of boost-devel
* Thu Nov 10 2016 badshah400@gmail.com
- Update to version 1.6.5:
  * Fix handling of --enable/disable-root configure options.
  * Improvements to Cython version testing.
- Numerous changes from last packaged version (1.3.1) through
  version 1.6.4. Please see ChangeLog file for details.
- Drop YODA-boost-configure-for-GCC5.patch: no longer needed due
  to fixes in upstream code.
* Thu Jun 25 2015 badshah400@gmail.com
- Add YODA-boost-configure-for-GCC5.patch to fix autoconf
  boost macros lookup with GCC5; patch taken from boost.m4
  upstream [https://github.com/tsuna/boost.m4].
- Clean up some further remnants of %buildroot in python
  byte-compiled files.
* Thu Jun 25 2015 badshah400@gmail.com
- Update to version 1.3.1:
  + Adding usefocus optional argument to some mkScatter functions,
    plus the Python bindings.
  + Cleaning up some Python mappings of 2D histogram bin classes.
  + Removing mappings of bin-level fill and scale operations in
    Python.
  + Fix formatting and error handling in Python Bin and Dbn
    __repr__ methods.
  + Add a -i/--in-place option pair on yodascale.
  + Convert script matching options to use re search rather than
    match.
  + Adding matching options and verbose option to yodals.
  + Improvements and additions to ROOTCnv.h routines, particularly
    to TProfile creation: thanks to Roman Lysak for advice.
  + Add convenience YODA/YODA.h header.
  + yodascale now uses PointMatcher and can normalize or multiply
    to abs values or ref histos/bin ranges.
  + Adding yoda.matcher Python sub-package with PointMatcher
    functionality. To be used in Professor 2.0 and in yodascale.
  + Adding 'scat2' type to yodahist.
  + Add match/unmatch args to all conversion scripts, via a new
    Python yoda.script_helpers function.
  + Script updates, improved docstrings, and improved tab
    completion.
  + Add a yoda.plotting sub-module, based on matplotlib.
  + Small build improvements.
  + Handle overflow filling in binned types without invoking an
    exception.
  + Change inRange to have non-fuzzy comparison behaviour.
  + Improving/adding __div__ functions in Python for all binned
    types.
  + Add std:: prefix to isinf() calls in BinSearcher.h.
* Sun Oct 26 2014 badshah400@gmail.com
- Update to version 1.3.0:
  + Use numEntries() rather than effNumEntries() when checking
    consistency of inputs to efficiency() calculations -- the
    effNumEntries of a set can be smaller than that of a strict
    subset, surprisingly!
  + Small improvements to yodahist and yodaplot behaviours/UIs.
  + Adding setX/Y/Z(val, err) methods to Point3D.
  + Add an efficiency method for 2D histos.
  + Hide fill and fillBin methods from Python mappings of bin
    types.
* Thu Sep 18 2014 badshah400@gmail.com
- Update to version 1.2.1:
  + Hide non-const access to bin objects from histogram user:
    avoids potential for inconsistency between total dbns and
    in-range bins.
  + Bug in BinSearcher fixed by Peter Richardson: constructor
    arguments were passed in the wrong order when constructing
    a LinEstimator in cases where log binning wouldn't be
    allowed.
  + Add protection against / characters in histo names in
    yoda2root
  + Add +=, -=, *-, /=, ++ and -- operators to Counter, along
    with an (implicit) constructor from a double -- all for user
    convenience so Counter can be used in lieu of a simple number
- Changes from version 1.2.0:
  + Many changes from 1.1.0 version, please see installed
    ChangeLog file
- Add the new binaries yadals, yodaplot and yodascale to filelist.
* Sat Jun 21 2014 badshah400@gmail.com
- Update to version 1.1.0:
  + YODA 1.1.0 release.
  + Adding unit tests against ref data for yodamerge in make check.
  + Removing 'foreach' macro definition and using raw
    BOOST_FOREACH instead until C++11 is allowed.
  + Adding pytest-p1d and pytest-p2d tests, and FLAT
    writing/reading in pytests.
  + Tweaking WriterFLAT and adding ReaderFLAT functionality for 2D
    histos and profiles.
  + Some basic (FLAT) write-out capability for 2D histos
  + Improvements to the yodahist script, including support for 2D
    histograms and input files.
  + Adding bin edges constructors for all 1D and 2D histos in
    Python.
  + Improvements to Profile2D and Point2D interfaces in Python.
  + Add a single-file at a time yodacnv multi-format converter
    script (thanks to Andrii Verbytskyi for the suggestion).
  + Typo fixes in Profile2D YODA-format parsing: 2D histo tests
    now pass!
  + Adding Python tests for Histo2D and Profile2D.
  + Adding a YODA/Predicates.h header and using it in Axis2D bin
    edge construction.
  + Enabling Profile2D writing in various Writers, and a bit of IO
    code tidying.
  + Disable writing out of Histo2D and Profile2D outflows for now,
    while they are redesigned, and get 2D I/O working for the
    in-range part.
  + Mapping the divide and efficiency functions into the Python
    interface as class methods, including the __div__ special
    function.
  + Add the AnalysisObject::type() method back in Python (even
    though type(ao) is more Pythonic, this may be useful)
  + Add Profile2D YODA format writing, note need for Scatter
    format change, add sumXY storage to both 2D histo types.
  + Adding YODA reader functionality for Histo2D and Profile2D,
    but without outflows support yet.
  + Adding simple command line yodahist script for quick 1D
    histogramming from plain text files, with weight support. More
    development to come!
  + Mapping linspace, logspace and a few stat functions into
    Python.
  + Fixes, script installation, and detailed numerical comparisons
    in yodadiff.
  + Change AnalysisObject::annotations to return the list of
    annotation keys rather than the map, since the previous
    behaviour mapped very badly into Python.
  + Add special case handling for 2-arg use of x2y scripts where
    the second arg is -, for stdin. This will be treated as
    writing out to stdout, not converting two files one of which
    is stdin.
  + Adding a more portable version of getline to be used in the
    YODA file parsing to avoid falling over on DOS-produced input
    files.
  + Adding the namespace protection workaround for Boost described
    at http://www.boost.org/doc/libs/1_55_0/doc/html/foreach.html
  + Adding an assumed-equal-run-size, ratio-like merging heuristic
    for Scatter2Ds to yodamerge, and renaming the --normalize-all
    flag to --assume-normalized.
  + Adding and installing a pkg-config data file for YODA.
  + Rationalising (and fixing?) the yodamerge logic re. user &
    normalization scalings, and making way for a Scatter2D merging
    heuristic
- Packaging changes:
  + Package new binaries yodacnv, yodadiff, yodahist
  + Package new pkgconfig file (buildrequires pkg-config).
* Tue Dec 10 2013 badshah400@gmail.com
- Initial version