Changelogs » Arkouda

PyUp Safety actively tracks 232,000 Python packages for vulnerabilities and notifies you when to upgrade.



  * more optimized groupby/aggregate using segmented scans
  * fixed in1d bug
  * added in1d unit test
  * added groupby unit test
  * refactored a bunch of code
  * doubled speed of binary operators
  * much faster sort added
  * multi-level groupby added
  * many other changes lost track of them all


  * added initial ak.argsort functionality
  * added initial ak.is_sorted functionality
  * added unit test to tests directory for ak.argsort
  * optimized argsort
  * added ak.where
  * opt some a[pdarray] gather-indexing
  * added initial ak.GroupBy and ak.aggregate functionality
  * added optimized per-locale version of groupby and aggregate


  * fixed multi-file/multi-threaded bug in HDF5 I/O
  * improved HDF5 I/O error handling + glob filenames
  * added initial versions of ak.array() and pdarray.to_ndarray()
  * refactored histogram and some other procedures using helper nested procedures
  * added more operators for bool
  * added min and max reductions
  * optimized ak.int1d()


  * added toys/ subdir with some prototype sorting code
  * made some changes to make naming consistent in Python and Chapel code
  * added initial HDF5 I/O
  * added a[slice] = value indexing
  * added a[slice] = pdarray indexing
  * added initial ak.argmin/ak.argmax functionality
  * added some different optimizations and optional return of the counts from ak.unique
  * added more error handling to GenSymIO (HDF5 I/O)


  * finally got a BlockDist to work properly -- thanks Brad ;-)
  * changed ak.startup() to ak.connect() also added ak.disconnect()
  * added initial version of value_counts
  * added a[pdarray]=value indexing
  * changed to bool_ = type(True) in
  * added a[pdarray]=pdarray indexing
  * compiled with chapel 1.19 and cleaned up compilation warnings
  * substituted domain.contains() for domain.member()
  * fixed up parallel scans on bool arrays with int cast through a copy to int array (blah!)
  * created github repo
  * added backward compat code for 1.18
  * added some prototype python arkouda/numpy check/test code


  * added threshold to pdarray.__iter__() to limit comms with arkouda_server
  * refactored how dist domain mapped arrays for symbol table entries
  * added some more tests to
  * simplified ones_like and zeros_like in
  * added bitwise {&,|,>>,<<,^,~} operators to int64
  * added unary-
  * added initial version of histogram
  * added bounds checking on pdarray indexing "a[iv]" where iv is an int64 pdarray
  * moved all operator stuff into OperatorMgs.chpl
  * factored the code put config const/param into ServerConfig.chpl module
  * added initital version of in1d
  * added initial version of randint
  * cleaned up ValueError vs. TypeError in
  * indexing operations moved to IndexingMsg.chpl
  * added initial version of unique


  * changed over to distributed domain mapped arrays for arkouda server
  * added stdout.flush() after verbose messages to overcome buffering on big runs
  * added timer to report processing time around main loop
  * a little optimization of arange and linspace


  * fixed bug in linspace in MsgProcessing.chpl
  * changed to using DType in all GenSymOps.chpl module from dynamic casts
  * simplified messaging in
  * refactored binary op overloading in pdarray class
  * overloaded pdarray __str__ and __repr__, server messages and support also
  * added server error prop to raise exception in python
  * refactored errors in MsgProcessing.chpl
  * changed name from hpda to arkouda (Greek for Bear)
  * fixed "/ and /= aka __truediv__" to return float64 and added "// and //= aka __floordiv__"
  * fixed ones and zeros to behave like numpy
  * added slices to __getitem__ and it does negative strides now!
  * added bool dtype
  * added relops
  * server gives out names instead of python
  * added sum, prod, any, and all reductions
  * added elemental functions log, exp, and abs
  * add numpy scans like cumsum and cumprod
  * add pdarray indexing b[] = a[iv[]],
  iv[] can be either int64 which does gather or bool which does a compress-out-false-indicies