2014-09-01  Andy Buckley  <andy.buckley@cern.ch>

	* YODA 1.2.1 release!

2014-08-29  Andy Buckley  <andy.buckley@cern.ch>

	* Hide non-const access to bin objects from histogram users:
	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.

2014-08-26  Andy Buckley  <andy.buckley@cern.ch>

	* Add protection against / characters in histo names in yoda2root
	(thanks to Will Bell for the report and suggested patch).

2014-08-17  Andy Buckley  <andy.buckley@cern.ch>

	* 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.

2014-08-15  Andy Buckley  <andy.buckley@cern.ch>

	* YODA 1.2.0 release!

	* Permit +-inf values to be filled into histograms; NaN fills will
	still explicitly throw an exception.

	* Add unit tests for Counter, Scatter1D, and Scatter2D, including
	persistency.

	* Adding YODA and FLAT format I/O for Scatter1D and Counter (as
	far as currently possible -- FLAT Counter can't be read due to a
	#item ambiguity, just like the one between the YODA format Point3D
	and ProfileBin1D). To be continued...

2014-08-14  Andy Buckley  <andy.buckley@cern.ch>

	* Python mappings for Dbn0D and Counter, and other improvements.

	* Adding val() and err() methods to Counter, and errW() and
	relErrW() to all DbnXD types.

	* Adding Scatter1D and Point1D types, with conversion from Counter
	supported. Both Counter and Scatter1D still need to be supported
	by YODA persistency.

2014-08-11  Andy Buckley  <andy.buckley@cern.ch>

	* Add ROOT version checking to configure. Thanks to Michael Grosse
	for the report/request.

2014-08-05  Andy Buckley  <andy.buckley@cern.ch>

	* Remove all methods not specific about the axis to which they
	refer, e.g. Histo1D::mean -> xMean. Also remove all related
	aliases (a nightmare to maintain) and low/highEdge and midpoint
	functions: use the proper xMin/Max/Mid from now on. This is a
	significant compatibility breaking API change (and the decision
	was not taken lightly) so will require a 2nd digit version change.

	* Lots of adding xMin/Max etc. functions to C++ and Python bin/histo classes.

	* Compiler pickiness fixes in BinSearcher.

	* Improvement to linspace, avoiding fuzzyEquals and again making
	sure that the end value is exact.

2014-07-23  Andy Buckley  <andy.buckley@cern.ch>

	* Fix to logspace: make sure that start and end values are exact,
	not the result of exp(log(x)).

	* Clean-up, minor improvements, and adding a test for BinSearcher and friends.

2014-07-19  Andy Buckley  <andy.buckley@cern.ch>

	* Various consistency improvements and minor bugfixes to Python
	mapping utils and Dbn and Bin objects.

	* Fix Axis2D::reset, which was resetting the total dbn and
	outflows, but not the bins!!! Thanks to Ewen Gillies for the
	report.

2014-07-18  Andy Buckley  <andy.buckley@cern.ch>

	* Add scaleX,Y,Z and scaleXYZ to Point and Scatter classes, and
	deprecate less explicit/consistent Scatter2D/3D.scale method.

2014-07-17  Andy Buckley  <andy.buckley@cern.ch>

	* yodascale now writes out rescaled histograms and profiles rather than scatters.

	* A few more improvements on Point2D/3D, adding x,y,zMin/Max function mappings.

	* Add first version of a yodascale script, based on code from Simone Amoroso.

2014-07-16  Andy Buckley  <andy.buckley@cern.ch>

	* More Scatter and 2D histo interface improvement.

	* Remove 'return *this' from Scatter2D/3D add and combine methods.

	* Add unit test checks for 1D and 2D mkScatter functions.

	* Improve Scatter2D/3D C++ and Python interfaces.

	* Add Scatter3D Python mapping.

2014-07-15  Andy Buckley  <andy.buckley@cern.ch>

	* Add auto-parsing of yes/no/on/off/true/false as bools in the
	Python ao.annotation() function.

	* Add parsing of yodaplot styles from command line args and
	analysis object annotations.

2014-07-12  Andy Buckley  <andy.buckley@cern.ch>

	* Fix infinite recursions in Python wrappers for Point2D and
	Point3D, and make the Python Point3D interface more standard.

	* Add yodaplot script for basic plotting, using pgfplots as a backend.

2014-07-10  Andy Buckley  <andy.buckley@cern.ch>

	* Add mkScatter(Scatter2D) and mkScatter(Scatter3D) functions and
	Python mappings: this allows all AOs to be used as args to
	mkScatter(...) without needing to check if they already are
	scatters.

2014-07-02  Andy Buckley  <andy.buckley@cern.ch>

	* Set y value and/or error to 0 in mkScatter(Histo1D) if an
	exception is thrown when calculating the appropriate values. Need
	an optional param to control this error handling behaviour between
	set-zero and skip-bin?

2014-07-01  Andy Buckley  <andy.buckley@cern.ch>

	* Add exception translation to the mkScatter functions.

	* Add -m/-M match/unmatch options to yodacnv -- useful for
	filtering histogram file contents in a YODA->YODA conversion.

2014-06-24  Andy Buckley  <andy.buckley@cern.ch>

	* Don't complain about merge assumptions if there is only one
	object with that path name to be 'merged'

2014-06-17  Andy Buckley  <andy.buckley@cern.ch>

	* Adding explicit int cast in Python wrapping of numEntries functions.

2014-06-13  Andy Buckley  <andy.buckley@cern.ch>

	* Adding yodals script to list data file contents.

2014-06-11  David Grellscheid  <David.Grellscheid@durham.ac.uk>

	* pyext/yoda/Makefile.am: 'make distcheck' and out-of-source
	builds should work now.

2014-06-10  Andy Buckley  <andy.buckley@cern.ch>

	* Fix use of the install command for bash completion installation on Macs.

2014-06-06  Andy Buckley  <andy.buckley@cern.ch>

	* YODA 1.1.0 release. Middle version number change to reflect API changes w.r.t 1.0.6.

	* Adding unit tests against ref data for yodamerge in make check.

2014-06-04  Andy Buckley  <andy.buckley@cern.ch>

	* Fix silly typos in yodamerge which somehow made it past "make check" testing :-(

2014-06-02  Andy Buckley  <andy.buckley@cern.ch>

	* YODA 1.0.7 release. DO NOT USE: prefer 1.1.0, above.

2014-05-30  Andy Buckley  <andy.buckley@cern.ch>

	* 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.

2014-05-30  Holger Schulz  <hschulz@physik.hu-berlin.de>

        * Some basic (FLAT) write-out capability for 2D histos

2014-05-29  Andy Buckley  <andy.buckley@cern.ch>

	* 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.

2014-05-22  Andy Buckley  <andy.buckley@cern.ch>

	* 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).

2014-05-19  Andy Buckley  <andy.buckley@cern.ch>

	* 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.

2014-05-17  Andy Buckley  <andy.buckley@cern.ch>

	* 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.

2014-05-14  Andy Buckley  <andy.buckley@cern.ch>

	* Mapping the divide and efficiency functions into the Python
	interface as class methods, including the __div__ special
	function.

2014-05-13  Andy Buckley  <andy.buckley@cern.ch>

	* Add the AnalysisObject::type() method back in Python (even
	though type(ao) is more Pythonic, this may be useful)

2014-05-06  Andy Buckley  <andy.buckley@cern.ch>

	* Add Profile2D YODA format writing, note need for Scatter format
	change, add sumXY storage to both 2D histo types.

2014-05-03  Andy Buckley  <andy.buckley@cern.ch>

	* Adding YODA reader functionality for Histo2D and Profile2D, but
	without outflows support yet.

2014-04-25  Andy Buckley  <andy.buckley@cern.ch>

	* 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.

2014-04-24  Andy Buckley  <andy.buckley@cern.ch>

	* Fixes, script installation, and detailed numerical comparisons
	in yodadiff.

2014-04-17  Andy Buckley  <andy.buckley@cern.ch>

	* Change AnalysisObject::annotations to return the list of
	annotation keys rather than the map, since the previous behaviour
	mapped very badly into Python.

2014-04-16  Andy Buckley  <andy.buckley@cern.ch>

	* 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.

2014-04-15  Andy Buckley  <andy.buckley@cern.ch>

	* Adding a more portable version of getline to be used in the YODA
	file parsing to avoid falling over on DOS-produced input files.

2014-04-14  Andy Buckley  <andy.buckley@cern.ch>

	* Adding the namespace protection workaround for Boost described
	at http://www.boost.org/doc/libs/1_55_0/doc/html/foreach.html

2014-04-13  Andy Buckley  <andy.buckley@cern.ch>

	* 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.

2014-03-10  Andy Buckley  <andy.buckley@cern.ch>

	* YODA 1.0.6 release.

2014-03-06  Andy Buckley  <andy.buckley@cern.ch>

	* Improvements to AnalysisObject annotation handling in Python.

	* Adding rescaling arguments to yodamerge (and scale function to Python Scatter2D).

	* Better documentation and consistency of Histo and Profile Python
	wrappers, and removing some inappropriate attributes.

	* Adding clone() and newclone() functions to all analysis object classes.

2014-02-28  Andy Buckley  <andy.buckley@cern.ch>

	* Cython mapping improvements, esp. adding numPoints/numBins
	functions and better Scatter2D __repr__.

	* Adding mapping of the mkScatter functions into Python (as
	methods on Histo1D and Profile1D rather than the original free
	functions, at least for now: some Python type-identifying
	boilerplate is needed to make a single mkScatter function work in
	Python)

2014-02-27  Leif Lönnblad  <Leif.Lonnblad@thep.lu.se>

	* Minor modifications to BinSearcher to avoid NaN's. The NaN's
	were treated correctly before, but better to avoid them all
	together.

2014-02-27  Andy Buckley  <andy.buckley@cern.ch>

	* Adding the generated pyext/yoda/rootcompat.cpp to the tarball
	and sorting out the ROOT/Cython interface conditionals a bit more
	sanely. Thanks to Oldrich Kepka for the bug report.

	* Protecting yodamerge against input histograms with zero
	integrals (thanks to Christian Bierlich for the bug report).

2014-02-14  Frank Siegert  <frank.siegert@cern.ch>

	* Fix race condition with mktemplates.

2014-02-12  David Grellscheid  <david.grellscheid@dur.ac.uk>

	* Fix bug in mktemplates code (thanks to Christian Johnson for the bug report).

2014-02-09  Andy Buckley  <andy.buckley@cern.ch>

	* Adding explicit include/generated dir creation to Python
	extension build (thanks to Christian Johnson for the bug report).

2014-02-06  Andy Buckley  <andy.buckley@cern.ch>

	* 1.0.5 release!

2014-02-05  Andy Buckley  <andy.buckley@cern.ch>

	* Adding patches to ReaderFLAT and ReaderYODA use of Boost Spirit
	which reduce the Boost version requirement from 1.47 ->
	1.41. Thanks to Andrii Verbytskyi for the patch.

	* Protect against invalid prefix value if the --prefix configure option is unused.

2014-02-04  Andy Buckley  <andy.buckley@cern.ch>

	* Adding copy assignment operators where missing, based on an
	implementation in AnalysisObject which only copies rvalue paths
	and titles if they are non-null.

2014-02-03  Andy Buckley  <andy.buckley@cern.ch>

	* Improving (i.e. increasing) bin edge overlap tolerance: 1e-10 relative was too tight.

2014-01-31  Andy Buckley  <andy.buckley@cern.ch>

	* Adding x/yMid etc. methods on Bin1D and 2D, and more related Python API improvements.

2014-01-28  Andy Buckley  <andy.buckley@cern.ch>

	* Adding missing fillBin methods to 1D and 2D Histo/Profile Python classes.

	* Fixed yodamerge default output file name treatment.

	* Avoid computing an unrecoverable error in Histo1D.__repr__

	* Clean-ups and API improvements in Python IO functions.

	* Adding more sumW,W2 and (eff)NumEntries attrs to Python objects.

2013-12-17  Andy Buckley  <andy.buckley@cern.ch>

	* Improved argument handling for x2y scripts.

2013-11-16  Andy Buckley  <andy.buckley@cern.ch>

	* Fix to build the Cython rootcompt extension .cpp on request.

2013-11-14  Andy Buckley  <andy.buckley@cern.ch>

	* Adding flags for the C++11 or C++0x standard if supported, cf. Rivet.

2013-10-24  Andy Buckley  <andy.buckley@cern.ch>

	* YODA 1.0.4 release.

	* Supporting zsh completion via bash completion compatibility.

2013-10-21  Andy Buckley  <andy.buckley@cern.ch>

	* Removing unused internal iterator typedefs from Writer functions.

2013-10-18  Andy Buckley  <andy.buckley@cern.ch>

	* Adding a yodaenv.sh sourceable script to help with environment setup.

	* Remove Scatters from being handled by yodamerge by blocking the
	__add__ method fallback.

2013-10-09  Andy Buckley  <andy.buckley@cern.ch>

	* Improvements to yoda-config and command-line completion, for the
	Rivet 2.0.0 release.

2013-10-09  Andy Buckley  <andy.buckley@cern.ch>

	* Version 1.0.3 release.

2013-10-04  Andy Buckley  <andy.buckley@cern.ch>

	* Cython mapping improvements.

	* Adding some improved heuristics and a --normalize-all option to
	yodamerge. Frank S is now happy again ;-)

2013-10-01  Andy Buckley  <andy.buckley@cern.ch>

	* Adding operator +, -, +=, -= Python mappings wherever possible
	for Histo1/2D, Profile1/2D, and Scatter2D.

2013-09-26  Andy Buckley  <andy.buckley@cern.ch>

	* Cython is no longer needed by tarball users.

2013-09-25  Andy Buckley  <andy.buckley@cern.ch>

	* Unset path of returned histogram if those of the args to add()
	and subtract() are difference.

2013-09-24  Andy Buckley  <andy.buckley@cern.ch>

	* Python mapping improvements.

2013-09-23  Andy Buckley  <andy.buckley@cern.ch>

	* Add the -avoid-version flag to libtool.

	* Adding more add and subtract special methods in Python.

2013-09-22  Andy Buckley  <andy.buckley@cern.ch>

	* mkScatter schanged to use histo midpoints rather than focuses by
	default for the point x value.

2013-08-14  Andy Buckley  <andy.buckley@cern.ch>

	* Version 1.0.2.

	* Some exception message improvements and improving the protection
	of cosmetic mean calculations in WriterYODA.

2013-07-12  Andy Buckley  <andy.buckley@cern.ch>

	* Adding ROOT detection in configure and otherwise updating Dave's
	rootcompat module so that it'll compile. There might be an
	inconvenient ROOT version dependency in the signature of one of
	the PyROOT API functions that is used as a shim :-(

2013-06-17  Andy Buckley  <andy.buckley@cern.ch>

	* Adding yoda.m4 from James Robinson.

2013-06-06  Hendrik Hoeth  <hendrik.hoeth@cern.ch>

	* Improve "==" operator in Axis1D and Axis2D

2013-06-06  Andy Buckley  <andy.buckley@cern.ch>

	* Adding fillBin() methods to all 1D and 2D histos, and noting
	that Bin types need a back-link to their axis to maintain
	consistency.

	* Release of version 1.0.1

2013-06-05  Andy Buckley  <andy.buckley@cern.ch>

	* Change the divide(Scatter, Scatter) behaviours to use the
	midpoint of the num/denom bins rather than mean of foci for the
	output point position (and hence errors, too).

	* Adding a toIntegralEfficiencyHisto function.

	* Adding another Histo1D::integral() function, this time from 0 ->
	i, maybe including the underflow.

2013-06-04  Andy Buckley  <andy.buckley@cern.ch>

	* Updating the Cython version requirement to 0.18

2013-06-03  Andy Buckley  <andy.buckley@cern.ch>

	* Adding relErr functions to 1D and 2D histo and profile bins, and
	being careful about div by zero.

	* Improvements in error treatment in division (better handling of zeros).

	* Renaming merge-histos to yodamerge and installing it (and
	improving the usage string a bit).

2013-05-31  Andy Buckley  <andy.buckley@cern.ch>

	* Adding the Counter type, and ability to output it from the YODA writer.

	* Adding numEntries and effNumEntries methods to 1D and 2D Histo
	and Profile classes.

	* Adding Dbn0D and using it to implement Dbn1D.

2013-05-30  Andy Buckley  <andy.buckley@cern.ch>

	* Fixing several nasty errors in argument ordering for
	Point{1,2,3}D construction in Scatter addPoint functions.

	* Adding abs(...) to the returned Dbn1D::variance(), to avoid
	problems when negative weights produce negative variance. No, we
	don't like this either: is there a more correct way?

	* Fixing the efficiency(Histo1D, Histo1D) implementation,
	cf. http://root.cern.ch/phpBB3/viewtopic.php?t=3753

	* Adding mkScatter(Profile2D)

2013-05-29  Hendrik Hoeth  <hendrik.hoeth@cern.ch>

	* Adding a reader for FLAT files and a flat2yoda converter

2013-05-27  Andy Buckley  <andy.buckley@cern.ch>

	* Adding a yoda-completion file for bash.

2013-05-17  Andy Buckley  <andy.buckley@cern.ch>

	* Mapping HistoBin1D.relErr in Python.

	* Adding a non-const points() accessor to Scatter2D.

2013-05-13  Andy Buckley  <andy.buckley@cern.ch>

	* Adding combined value+error setX/Y functions on Point2D.

	* Adding HistoBin1D::relErr()

2013-04-23  Andy Buckley  <andy.buckley@cern.ch>

	* Adding Python output handling for single AOs and to be able to
	use a "-" filename to mean stdout.

2013-04-12  Andy Buckley  <andy.buckley@cern.ch>

	* Releasing version 1.0.0 -- it seems stable enough.

2013-04-10  Andy Buckley  <andy.buckley@cern.ch>

	* Being more careful about adding -Wno-* flags to the C++ compiler
	used to built the Cython extension lib.

2013-03-22  Andy Buckley  <andy.buckley@cern.ch>

	* Removing the use of svn:external to pull in Boost macros and
	using a minimal local set instead.

	* Using the nice Boost-finding macros from
	https://github.com/tsuna/boost.m4 and tidying up configure.ac

2013-03-15  Andy Buckley  <andy.buckley@cern.ch>

	* Re-organising the C++ side of the auto-format I/O functions,
	into a new IO header and separated from the Reader.h and
	Writer.h. I'm tempted to say that users shouldn't really NEED to
	ever directly touch the Reader and Writer objects...

	* Adding auto-format read and write functions. I will probably
	change the API. Python mappings have been provided, but the string
	workarounds were too much of a pain with Cython 0.16 so I have
	updated the Cython version requirement to 0.17 where it is
	automatic and hence much cleaner.

2013-03-08  Andy Buckley  <andy.buckley@cern.ch>

	* Making the x2y converter scripts write a copy into the *current*
	directory if only the input is specified.

2013-03-05  Andy Buckley  <andy.buckley@cern.ch>

	* Removing Plot entirely from YODA: it was an anomaly only added
	to make plot file generation easy, but this is now done better via
	StringIO (in new compare-histos/rivet-cmphistos).

	* Removing the Plot from Cython... and soon from YODA itself:
	we'll do this stuff manually and less hackily.

	* Make Cython automatically add a copy of the original call
	signature to each function's docstring.

2013-03-04  Andy Buckley  <andy.buckley@cern.ch>

	* Adding Plot mapping to Cython and improving the AO annotations handling in Python.

	* Adding PLOT section writing to WriterFLAT (and WriterYODA,
	although that might be a bad idea...)

	* Adding aida2yoda and aida2flat converter scripts.

2013-02-02  David Mallows  <dave.mallows@gmail.com>

	* Adding support for Python >= 2.4 (was Python >= 2.6)

	* Fixing miscellaneous warnings on GCC 4.1

2013-01-30  Andy Buckley  <andy.buckley@cern.ch>

	* Adding a points() method to the Python Scatter2D wrapper.

	* Adding a virtual destructor to Bin.

2012-12-30  Andy Buckley  <andy.buckley@cern.ch>

	* Adding support for Boost.Range arguments and file format autodetection in Writer.

2012-11-24  Andy Buckley  <andy.buckley@cern.ch>

	* Bump version to 0.6beta0

	* Adding more ROOT converters. Who knows how to make TProfiles
	from scratch, but Histo1D and Scatter2D are covered, which should
	be enough to get started with, at least.

2012-11-16  Andy Buckley  <andy.buckley@cern.ch>

	* Adding yoda-config

2012-11-16  Hendrik Hoeth  <hendrik.hoeth@cern.ch>

	* Adding WriterFLAT and yoda2flat

2012-11-16  Andy Buckley  <andy.buckley@cern.ch>

	* Adding YODA/ROOTCnv.h. for data object converter functions. Two
	(untested) functions added for TH1 -> YODA.

	* Adding toIntegralHisto(Histo1D&) function.

2012-11-15  Dave Mallows  <dave.mallows@gmail.com>

	* Commited numerous changes to Axis2D. Axis2D now uses BinSearcher as
	with Axis1D.

2012-11-15  Andy Buckley  <andy.buckley@cern.ch>

	* Improving division and efficiency treatments, and allowing
	arbitrary f(x), f(y), and flip transformations on Scatter2D.

2012-11-14  Andy Buckley  <andy.buckley@cern.ch>

	* Converting linspace, logspace, and their usage to place the nbins argument first.

2012-08-07  Andy Buckley  <andy.buckley@cern.ch>

	* Removing unused (beyond 2nd order) sumWXYZ counter from Dbn3D.

2012-08-07  Dave Mallows  <dave.mallows@gmail.com>

	* Converted Axis1D to use new Utils/BinSearcher.

2012-08-02  Dave Mallows  <dave.mallows@gmail.com>

	* Heavily refactored Cython bindings

	* HistoBin1D, ProfileBin1D etc. now inherit from Bin1D[DBN]

	* Temporarily removed Histo2D, Profile2D and Scatter3D mappings.

2012-07-23  Andy Buckley  <andy.buckley@cern.ch>

	* Installing scripts from bin dir, and making the yoda2aida interface nicer.

	* Adding Cython mappings for Dbn3D and Profile2D, and other fixes/improvements.

2012-07-22  Andy Buckley  <andy.buckley@cern.ch>

	* Adding Cython mappings for Scatter3D and ProfileBin2D.

	* Fixing more crap code legacy from old 2D plot implementation, this time in Scatter3D.

2012-07-19  Andy Buckley  <andy.buckley@cern.ch>

	* Adding stdErr for Histo2D + Python mapping, and more Cython improvements.

	* Adding path/title-only AO constructors and making nice Python constructor for Histo2D.

	* Cython mapping improvements & additions for Point3D + Scatter3D.

	* Removing mixed symm/asymm constructors on Point*D & Scatter*D classes.

2012-07-12  Andy Buckley  <andy.buckley@cern.ch>

	* Reintroducing Profile2D and Scatter3D.

	* Adding axis locking to Axis2D.

	* Supporting Histo2D in WriterYODA.

2012-07-02  Andy Buckley  <andy.buckley@cern.ch>

	* More incremental progress toward a working 2D bin hash mechanism.

2012-05-03  Andy Buckley  <andy.buckley@cern.ch>

	* Adding nice constructor behaviours to the Histo1D and Profile2D
	Python interfaces, and adding the mkScatter operation for
	Profile1D.

	* Adding more default constructors for analysis objects, to allow
	member variable and STL container use without pointers.

2012-05-02  Andy Buckley  <andy.buckley@cern.ch>

	* A much simplified and more robust rewrite of the Axis1D class,
	just using STL map in place of the hand-written bin edge caching.

	* Improvements (I hope) to the binary search in Axis1D, and
	providing an experimental default constructor for Histo1D.

2011-12-08  Hendrik Hoeth  <hendrik.hoeth@cern.ch>

	* ReaderYODA can now parse Histo1D and Profile1D flat files

2011-12-08  Andy Buckley  <andy.buckley@cern.ch>

	* Adding a Utils::ndarray object and using it to implement a
	general Scatter<N> system, with generalised Point<N> and Error<N>
	to boot.

2011-12-07  Hendrik Hoeth  <hendrik.hoeth@cern.ch>

	* Lots of cleanup

2011-12-07  Andy Buckley  <andy.buckley@cern.ch>

	* Mapping the Dbn1D and Dbn2D classes into Python.

	* Adding an outflows() accessor to Histo2D.

	* Writing out total dbn lines for Histo1D and Profile1D in the
	YODA format, and now writing out the 'cross-terms' for Profile1D,
	too.

	* Properly adding Dbn1D accessors for Histo1D.

	* Updating the Cython mappings to provide the totalDbn() methods
	and add a placeholder mapping for Dbn2D. Completed mappings are
	needed for Dbn{1,2,3}D and the Profile types.

	* Adding totalDbn() accessors to data types.

2011-12-06  Andy Buckley  <andy.buckley@cern.ch>

	* Making Histo1D/2D::scaleW() write a ScaledBy annotation.

	* Adding annotation-fetching methods with a default return value
	argument to AnalysisObject.

	* Adding normalize() methods to Histo1D/2D.

	* Adding weighted RMS calculating methods to Dbn1D, Dbn2D and
	Bin1D/2D.

2011-09-03  Dave Mallows  <dave.mallows@gmail.com>

	* Fixed ReaderAIDA: x-value and low y-error interchanged when filling
	Scatter2D.

	* Changed to Cython for Python bindings: Swig bindings were in need of
	serious amounts of work. Cython should provide a means to provide more
	Pythonic bindings to YODA. A minimal subset of ReaderAIDA, Scatter2D
	and Point2D have been wrapped.

	* Modified configure.ac, Makefile.am and pyext/Makefile.am to reflect
	change to Cython. Added cython.m4 from python-efl (Part of the
	enlightenment project; LGPL)

2011-08-31  Dave Mallows  <dave.mallows@gmail.com>

	* Fixed python tests by installing python extension to pyext/build

2011-08-23  Andy Buckley  <andy@insectnation.org>

	* Adding rebinning interface to Histo1D and Profile1D, and adding
	a test (and a new test feature for output message formatting)

	* Adding first implementation of 1D bin merging to Axis1D.

2011-08-22  Andy Buckley  <andy@insectnation.org>

	* Adding copy constructors and assignment operators to Histo1D,
	Profile1D, and Scatter2D, and their respective bins/points.

	* Remove use of sign(weight) in filling sum(w2) -- I think this
	was an historical attempt based on a scaling axiom which turned
	out to be inappropriate.

	* Reworking the Bin1D inheritance and composition design so that
	all bin types store a single distribution object -- a Dbn1D for
	histo bins and a Dbn2D for profile bins.

2011-08-18  Andy Buckley  <andy@insectnation.org>

	* Removing the Profile1D -> ProfileBin1D friendship. This is very
	heartening -- the fewer friend declarations we need, the more
	indication that the class structure is not pathological! (Or that
	we've just made everything public... but we haven't)

2011-08-15  Andy Buckley  <andy@insectnation.org>

	* Inlining all functions in HistoBin1D, ProfileBin1D, and
	HistoBin2D.

	* Converting Dbn2D to be composed of two Dbn1Ds and a
	cross-term. Also tidying the interfaces of the 2D classes and the
	scaleX/Y methods throughout, and adding Doxygen comments.

2011-08-12  Andy Buckley  <andy@insectnation.org>

	* Adding proper Doxygen structures and full descriptive comments
	to Dbn2D.

	* Adding the persistency state-setting constructors for Profile1D
	and Dbn2D.

	* Inlining lots of methods on Dbn1D. Same should be done for
	Dbn2D, but first it needs to be reimplemented in terms of two
	Dbn1Ds + the cross-term.

2011-08-11  Andy Buckley  <andy@insectnation.org>

	* Various typo fixes and comments relating to persistency
	constructors, Histo2D slicing, etc.

	* Changing the HistoBin1D state-setting constructors (aargh, these
	should *not* have already existed) to take Dbn1D as an argument
	rather than a long list of doubles.

2011-08-01  Andy Buckley  <andy@insectnation.org>

	* Adding tests to check that implicit construction of Weights
	objects from literal doubles and ints works.

2011-07-28  Andy Buckley  <andy@insectnation.org>

	* Bumping version number to 0.4.0beta0 -- there have been
	substantial changes recently and YODA is now in a state where it
	should be interesting for outsiders to start playing with it.

	* Templating the Axis1D on the distribution type to be used for
	total and under/overflow statistics: Profile1D now has Dbn2D
	objects handling its total and overflow statistics.

2011-07-26  Andy Buckley  <andy@insectnation.org>

	* Added a Histo1D::integral(index1, index2) method. Not sure how
	or if to extend this to Profile1D.

	* Implementing incomplete Scatter2D operator+ and operator-
	functions.

2011-07-25  Andy Buckley  <andy@insectnation.org>

	* Adding a Weights class, designed to seamlessly replace
	double-type weights and weighted moments with a named and
	vectorised form.

2011-07-19  Andy Buckley  <andy@insectnation.org>

	* Add Profile1D and Scatter2D division operators.

	* Add xMin/xMax synonyms to the Axis1D, cf. the bins.

2011-07-18  Andy Buckley  <andy@insectnation.org>

	* Add a first stab at a Histo1D/Histo1D division operator.

2011-07-10  Andy Buckley  <andy@insectnation.org>

	* Add construction of Histo1Ds from Profile1D and Histo1D, and
	construction of Profile1Ds from those and Scatter2D.

2011-07-07  Andy Buckley  <andy@insectnation.org>

	* Add construction of a Histo1D from Scatter2D.

2011-06-15  Andy Buckley  <andy@insectnation.org>

	* Making the AIDA reader work, including reading of annotations
	and a few tweaks to the simple type persistency system. Test histo
	1b updated.

2011-06-12  Andy Buckley  <andy@insectnation.org>

	* Removing Histo1D::area

	* Filling and using under/overflow and total db on Histo1D, and
	adding boolean arg to integral, sumW, etc.

	* Fixing for C++ change in behaviour of std::make_pair

	* Adding addAnnotation, and mapping annotations to Python.

2011-02-22  Andy Buckley  <andy@insectnation.org>

	* Use distutils rather than setuptools for the Python interface
	build.

	* Renaming Bin, HistoBin and ProfileBin to be Bin1D, HistoBin1D,
	ProfileBin1D. Bin is now a top-level abstract class with minimal
	functionality to be shared between 1D and 2D bins.

2011-01-12  Andy Buckley  <andy@insectnation.org>

	* Type annotations in mkScatter

	* Added many vector constructors and addPoint functions to
	Scatter2D.

2011-01-11  Andy Buckley  <andy@insectnation.org>

	* Add lexical_cast support to annotation get and set functions.

	* Write out annotations in AIDA format, and copy annotations in
	mkScatter -- using a new AnalysisObject::setAnnotations method.

	* Convert DPS output to use interim Scatter construction

	* Make (unused) yoda.plot subpackage.

	* Write out annotations in YODA format.

	* Make Scatter2D representations of Histo1D and Profile1D.

	* Write out Scatter2D objects in AIDA and YODA formats.

	* Make Scatter2D and Point2D work. Add a few extra
	methods... evolution and tweaking required.

2011-01-10  Andy Buckley  <andy@insectnation.org>

	* Add Boost checks and header includes. Not used yet.

	* Hide Utils:: content from Doxygen and nvector -> Utils::nvector.

	* Removing unused YAML stuff: we aren't going that way for
	persistency anymore.

	* Renaming Axis -> Axis1D

	* Removing dead-end templated Scatter stuff.

	* Move (generated) config files into the Config subdir.

	* Move sortedvector and indexedset into the Utils dir.

	* Move the "utils" directory and namespace to "Utils"

	* Put the Doxyfile under configure control by moving it to
	Doxyfile.in and using the @PACKAGE_VERSION@ token.

	* Make Doxygen find the .icc file and hide functions with name _*
	and in the YAML namespace.

	* Removing the Binning argument and enum in favour of explicit bin
	edge vectors, possibly produced explicitly via the MathUtils
	linspace and logspace functions, or the new Axis::mkBinEdgesLin/Log
	alias functions.

	* Fixed Axis, Histo1D and Profile1D constructors, by adding a path
	argument, passing the path and title args to the AnalysisObject
	base constructor properly.

	* Removed several old and unused files such as Tree.h

2011-01-09  Andy Buckley  <andy@insectnation.org>

	* Updating copyright comments to be valid into 2011.

	* Persistency fixes, and changing the interface to use the annotated path.

	* Using annotations for path and title.

	* Adding tests of collection and iterator range AO writing.

	* Adding static write functions on Writer*.h implementations to
	avoid needing to make an explicit Writer object via the create()
	functions.

	* Rename Exception.h -> Exceptions.h

	* Added AnnotationError.

	* Re-enable persistency of collections with begin/end iterators.

2011-01-08  Andy Buckley  <andy@insectnation.org>

	* Enabling quiet compilation.

	* More annotation functionality.

2011-01-07  Andy Buckley  <andy@insectnation.org>

	* Sorting out autoheaders to be more useful.

	* Rewriting AIDA writer to use DPS representation (no reloading)
	for Histo1D and Profile1D objects.

	* Adding persistency system hooks, since RTTI just sucks too much.

	* Renaming test files to have more meaningful names.

2010-12-10  Andy Buckley  <andy@insectnation.org>

	* Some tweaks to Axis, Bin, etc. to use the sortedvector. Seems to
	be working! (I must be checking it wrongly...)

	* Adding another candidate object for the axis bin container: a
	sorted extension to STL std::vector with an insert method. This
	will do as a development placeholder: a proper sorted & indexed
	container may be substituted later.

	* Fix test code: titles are no longer given as histogram
	constructor arguments.

2010-11-21  Andy Buckley  <andy@insectnation.org>

	* Adding indexed set for holding bins on axes. Still not sure it's
	what we want, as (I just realised) STL sets are iterator-immutable
	because they are self-keyed and changes to elements would also
	change their sorting.

2010-09-19  Andy Buckley  <andy@insectnation.org>

	* Restarting ChangeLog contributions! Many changes in the huge
	time since last update... activity on YODA has renewed and we have
	a better picture of the distinctive features we require. New idea:
	named weight vector filling, allowing "parallel" histograms for
	various event weight variations. I/O remains an awkward issue,
	especially since the classes are now much richer than they used to
	be, and don't know about paths. Output can be easily put on top:
	not an issue... and we can probably do something with
	pickling. But reading in from C++?

2008-09-16  Andy Buckley  <andy@insectnation.org>

	* Moved duplicate Histo1D/Profile1D code on to Axis, making Axis a
	templated class at the same time.

2008-09-12  Andy Buckley  <andy@insectnation.org>

	* Started work on a little plotting tool, initially for Herwig++
	parton pT cut testing, but incrementally enhancing it to be a
	command-line quick plotter seems like a good idea.

	* Added some more test programs... working towards a proper test
	suite.

	* Added "no path & title" constructors - you don't always want to
	write out the histo, since sometimes it's just a good way to
	gather statistics.

	* Fixed YODA mapping to allow use of vectors of bins as Python
	lists.

	* Added Profile1D functionality.

	* Fixed Dbn1D to use sign(weight) as part of the "w**2" measure,
	so that negative weights behave themselves.

2008-05-23  Andy Buckley  <andy@insectnation.org>

	* Added Dbn1D class to centralise the calculation of statistics
	from unbounded, unbinned, weighted distributions.

2008-05-15  Andy Buckley  <andy@insectnation.org>

	* Added Profile1D class.

	* Fixed NaN errors from zero weights.

2008-04-14  Andy Buckley  <andy@insectnation.org>

	* Python SWIG interface now compiles and can be used: the subtlety
	that was breaking it was that SWIG has to be prodded in pretty
	non-obvious ways to make std::vectors of classes without
	default (no-arg) constructors. See
	http://osdir.com/ml/programming.swig/2004-04/msg00011.html for
	about the only reference to this to be found anywhere!

	* Basic AIDA writer now available - it doesn't yet output all the
	necessary information though, especially not for merging parallel
	runs.
