Recent Releases of Sciris

Sciris - Version 3.1.7

See http://docs.sciris.org/whatsnew.html for a complete list of changes..

Scientific Software - Peer-reviewed - Python
Published by cliffckerr over 1 year ago

Sciris - Version 3.1.1

See http://docs.sciris.org/whatsnew.html for a complete list of changes.

  1. Added Python 3.12 support.
  2. Improved sc.odict(), sc.download(), sc.load(), and sc.runcommand().

Scientific Software - Peer-reviewed - Python
Published by cliffckerr over 2 years ago

Sciris - Version 3.1.0

See http://docs.sciris.org/whatsnew.html for a complete list of changes.

  1. Added functions sc.equal(), sc.nanequal(), and sc.manualcolorbar().
  2. Added additional backwards compatibility for NumPy, pandas, etc.
  3. Improved sc.load(), sc.dataframe, sc.iterobj(), sc.search(), and 3D plotting functions.

Scientific Software - Peer-reviewed - Python
Published by cliffckerr over 2 years ago

Sciris - Version 3.0.0

Version 3.0.0 (2023-04-20)

See http://docs.sciris.org/whatsnew.html for a complete list of changes.

  1. New Parallel class: A new sc.Parallel() class allows finer-grained managing of parallel processes, including automatic progress bars, better exception handling, and asynchronous running.
  2. Better versioning: New functions sc.metadata(), sc.savearchive(), and sc.loadarchive() make it easier to store and save metadata along with objects.
  3. Faster data structures: sc.odict() and sc.dataframe() have both been reimplemented for better performance and with additional methods.
  4. Easier imports: sc.importbypath() lets you load a module into Python by providing the folder or filename (useful for loading one-off scripts, or two versions of the same library).
  5. Better documentation: A comprehensive set of tutorials has been added to the documentation, and the documentation has been rewritten in a new style.

Scientific Software - Peer-reviewed - Python
Published by cliffckerr almost 3 years ago

Sciris - Version 2.0.2

Parallelization

  • The default parallelizer has been changed from multiprocess to concurrent.futures. The latter is faster, but less robust (e.g., it can't parallelize lambda functions). If an error is encountered, it will automatically fall back to the former.
  • For debugging, instead of sc.parallelize(..., serial=True), you can also now use sc.parallelize(..., parallelizer='serial').
  • Arguments to sc.parallelize() are now no longer usually deepcopied, since usually they are automatically during the pickling/unpickling process. However, deepcopying has been retained for serial and thread parallelizers; to not deepcopy, use e.g. parallelizer='thread-nocopy'.

Bugfixes

  • sc.autolist() now correctly handles input arguments, and can be added on to other objects. (Previously, if an object was added to an sc.autolist, it would itself become an sc.autolist.)
  • sc.cat() now has the same default behavior as np.concatenate() for 2D arrays (i.e., concatenating rows). Use sc.cat(.., axis=None) for the previous behavior.
  • sc.dataframe.from_dict() and sc.dataframe.from_records() now return an sc.dataframe object (previously they returned a pd.DataFrame object).

Other changes

  • sc.dataframe.cat() will concatenate multiple objects (dataframes, arrays, etc.) into a single dataframe.
  • sc.dataframe().concat() now by default does not modify in-place.
  • Colormaps are now also available with a sciris- prefix, e.g. sciris-alpine, as well as their original names (to avoid possible name collisions).
  • Added packaging as a dependency and removed the (deprecated) minimal install option.

Scientific Software - Peer-reviewed - Python
Published by cliffckerr over 3 years ago

Sciris - Version 2.0.1

New features

  • sc.asciify() converts a Unicode input string to the closest ASCII equivalent.
  • sc.dataframe().disp() flexibly prints a dataframe (by default, all rows/columns).

Improvements

  • sc.findinds() now allows a wider variety of numeric-but-non-array inputs.
  • sc.sanitizefilename() now handles more characters, including Unicode, and has many new options.
  • sc.odict() now allows you to delete by index instead of key.
  • sc.download() now creates folders if they do not already exist.
  • sc.checktype(obj, 'arraylike') now returns True for pandas Series objects.
  • sc.promotetoarray() now converts pandas Series or DataFrame objects into arrays.
  • sc.savetext() can now save arrays (like np.savetxt()).

Bugfixes

  • Fixed a bug with addition (concatenation) for sc.autolist().
  • Fixed a bug with the _copy argument for sc.mergedicts() being ignored.
  • sc.checkmem() no longer uses compression, giving more accurate estimates.
  • Fixed a bug with sc.options() setting the plot style automatically; a 'default' style was also added that restores Matplotlib defaults (which is now the Sciris default as well; use 'sciris' or 'simple' for the Sciris style).
  • Fixed a bug with packaging.version not being found on some systems.
  • Fixed an issue with colormaps attempting to be re-registered, which caused warnings.

Scientific Software - Peer-reviewed - Python
Published by cliffckerr over 3 years ago

Sciris - Version 1.3.0

Major updates to plotting and math functions; see changelog for details.

Scientific Software - Peer-reviewed - Python
Published by cliffckerr about 4 years ago

Sciris - Version 1.2.2

Mostly minor updates; see the changelog for details.

Scientific Software - Peer-reviewed - Python
Published by cliffckerr over 4 years ago

Sciris - Official release

Official release of Sciris.

Scientific Software - Peer-reviewed - Python
Published by cliffckerr about 5 years ago