Version 0.6.0
Version 0.6
This version fills out most of the remaining features missing from the 0.5.x
series. You can now use all the storages without the original caveats; even
the accumulators can be accessed array-at-a-time without copy, pickled quickly,
and set array-at-a-time, as well.
The API has changed considerably, providing a more consistent experience in
Python. Most of the classic API still works in this release, but will issue a
warning and will be removed from the next release. Please use this release to
transition existing 0.5.x code to the new API.
User changes
- Histogram and Axis classes now follow PEP 8 naming scheme (
histogram->Histogram,regular->Regular,int->Int64etc.) #192, #255 - You can now view a histogram with accumulators, with property access such as
h.view().value#194 - Circular variable and integer axes added #231
- Split Category into
StrCategoryandIntCategory, now allows empty categories whengrowth=True#221 StrCategoryfills are safer and faster #239, #244- Added axes transforms #192
Function(forward, inverse)transform added, allowing ultra-fast C function pointer transforms #231- You can now set histogram contents directly #250
- You can now sum over a range with endpoints #185
h.axesnow has the functions from axis as well. #183bh.projecthas becomebh.sum#185.reduce(...)and the reducers inbh.algorithmhave been removed in favor of dictionary based UHI slicing #259bh.numpymodule interface updates,histogram=bh.Histogramreplaces crypticbh=True, anddensity=Trueis now supported in Numpy mode #256- Added
hist.copy()#218 andhist.shape#264 - Signatures are much nicer in Python 3 #188
- Reprs are better, various properties like
__module__are now set correctly #200
Bug fixes:
- Unlimited and AtomicInt storages now allow single item access #194
.view()now no longer makes a copy #194- Fixes related to string category axis fills #233, #230
- Axes are no longer copies, support setting metadata #238, #246
- Pickling accumulator storages is now comparable in performance simple storages #258
Developer changes
- The linux wheels are now 10-20x smaller #229
- The hist/axis classes are now pure Python, with a C++ object inside #183
- Most internal names changed,
core->_core, etc. #183 - The
uhimodule is nowtag. #183 boost_histogram.cpp as bhprovides C++ high-compatibility mode. #183- Indexing tags now use full UHI instead of workarounds #185
- Removed log and sqrt special axes types#231
- Family and registration added, new casting system #200