Skip to content

Releases: fulcrumgenomics/commons

v1.4.0

11 Mar 16:22
9372c55
Compare
Choose a tag to compare

What's Changed

Major changes:

  • Removed support for scala 2.12 by @tfenne in #77
  • A parallel iterator implementation. by @tfenne in #76, that allow parallelization of iterators in a similar fashion to parallel collections without the user having to worry about batching

Minor changes:

  • SimpleCounter iterators are in insertion order by @nh13 in #73
  • Add support for reading from Unix/Posix pipes (fifos) by @nh13 in #57
  • Make sure IntelDeflator is shown as unsupported on non-x86 Apple machines e.g. M1x.

Full Changelog: 1.3.0...1.4.0

1.3.0

11 Jan 07:15
Compare
Choose a tag to compare

This release contains a single bug fix:

  • Fix AsyncIterator race condition when first element in source raises (#74)

Thank-you to Clint Valentine (@clintval)!

1.2.0

19 Oct 19:50
Compare
Choose a tag to compare

This release includes various minor enhancements:

  • #63 Add a type alias for a sequence dictionary
  • #66 Fix for DelimitedDataParser.Row.get returning Some(" ") instead of returning None when allowMissingColumn flag is set
  • #67 Sanitize file name now truncates files to avoid filesystem errors on names larger than 255 characters
  • #68 Use thread-safe DateTimeFormatter in log emissions
  • #72 Add a least recently used cache collection

Release 1.1.0

24 Aug 12:49
Compare
Choose a tag to compare

This release includes various minor enhancements:

  • Automatic gzip format detection in Io and ability to control compression level on writing of gzipped files
  • StringUtil.split can now return remaining text in the last element when there is overflow
  • New class SystemUtil for accessing information about the OS/system

Release 1.0.0

06 Aug 19:21
Compare
Choose a tag to compare

The major feature of this release is moving cross-building support to scala 2.12 and 2.13 and dropping support for 2.11. In addition to making cross-building work for the project, commons includes a new Compat trait that is mixed into CommonsDef and supplies a small number of type definitions and implicits to make cross-building simpler.

Release 0.7.0

13 Feb 23:54
Compare
Choose a tag to compare

Minor release that includes:
• Compiling using the latest point releases of the 2.11 and 2.12 scala compilers that produce JDK 9 and 10 compatible classes
• Added a raw String accessor to DelimitedDataParser.Row to make String access much faster when working with large files

Release 0.6.1

06 Nov 17:47
Compare
Choose a tag to compare

Minor upgrade with the following improvements:

  • Better error message when reflectively construct a class but no one-arg string constructor is found (#28)
  • Added Io.readBytesFromResources() to read binary data (#33)
  • Adding a StringUtil.split method for faster String splitting (#34)
  • Adding a += method to SimpleCounter (#34)
  • Adding maxN and maxNBy methods (#34)
  • Adding some generic utility classes related to asynchronous processing, reading, writing, and iterating over items
  • A more general pooling mechanism for asynchronous writers (#35)
  • Workaround for Files.newInputStream() returning a stream that's incompatible with stdin (#36)
  • Updating to sbt 1.2.6

Note: there is no 0.6.0 release due to sbt and sbt-pgp having a bug not allowing us to release that version.

Release 0.5.0

05 Apr 18:32
Compare
Choose a tag to compare

Minor upgrade with the following improvements:

  • Added Configuration class for accessing TypeSafe config in a, ahem, type-safe way
  • Widened Io.writeLines to take TraversableOnce[String] instead of Seq[String]
  • Updated Io.readLinesFromResource to work for relative and absolute resource paths with and without leading /s
  • Improved the error message when trying to reflectively construct enum values

Release 0.4.0

11 Feb 13:46
Compare
Choose a tag to compare

Minor release with the following changes:

  1. Added an implicit to CommonsDef that provides a sumBy method on collections of Numerics, that calculates the sum of a function of the contents. E.g. coll.sumBy(_.length) is equivalent to coll.map(_.length).sum but without generating any intermediate collections of views.
  2. ReflectionUtil can now handle Char as a target type (including Option[Char] and Seq[Char]), where previously trying to construct a Char through an exception.

Release 0.3.0

15 Nov 17:21
Compare
Choose a tag to compare

Minor release with the following changes:

  1. Added a method to the Io class to read a resource from the classpath as an Iterator of lines
  2. Change ReflectionUtil to interpret [true, t, yes, y] (case insensitive) as true when parsing Booleans from Strings.