Skip to content

Latest commit

 

History

History
64 lines (44 loc) · 2.67 KB

CHANGELOG.md

File metadata and controls

64 lines (44 loc) · 2.67 KB

Changelog

v0.4.0

Additions and changes

  • Fix copyright, license and links

v0.3.0

Additions and changes

  • Fixed typespecs in Euclid.Assertions.
  • Upgraded Erlang from 24.2 to 24.3.3 and Elixir from 1.13.1 to 1.13.4.
  • Implemented Euclid.Protocol.

v0.2.5

Deprecations

  • Deprecated all modules in Euclid.Extra and Euclid.Test.Extra. They are now at the top level. For example, Euclid.Extra.String is now just Euclid.String.
  • Deprecated Euclid.Extra.Exists; most of its functions moved to Euclid.Term though a few moved elsewhere. See the Euclid.Extra.Exists module docs for more details.
  • Deprecated Euclid.Extra.Tuple
  • Deprecated Euclid.Assertions.assert_datetime_approximate in favor of Euclid.Assertions.assert_eq with the :within option. For example, instead of assert_datetime_approximate(dt1, dt2, 30), use assert_eq(dt1, dt2, within: {30, :second}).

Deprecated modules and functions will be removed in the 1.0 release.

Additions and changes

  • Added Euclid.File which has new_tempfile_path/1 and write_tempfile/2 functions.
  • Added Euclid.Difference protocol which has a diff/2 function. The default implementation does a simple subtraction with Kernel.-/2, and also includes implementations for DateTime, NaiveDateTime, and BitString (strings).
  • Added Euclid.Duration which is a {time, unit} tuple (for example, {200, :millisecond}). It has convert/2 and to_string/1 functions.
  • Added Euclid.Sugar which has some handy functions meant to be imported.
  • Euclid.Random.string now supports base32 encoding. The default is still base64. Base32 is useful for file names since it only contains letters and numbers.
  • Euclid.Assertions.assert_eq now supports :within option. It uses Euclid.Difference to determine whether the two values are within the given delta. It also supports Durations so it can check whether two DateTimes are within some delta. Examples: assert_eq(temp, 98.6, within: 1.5), assert_eq(created_at, now(), within: {5, :second}).
  • Added Euclid.DateTime.parse_iso8601!/1 which is like DateTime.parse_iso8601/1 but raises if the string is not in ISO8601 format.
  • The bin/dev/shipit script (used when developing Euclid itself) now runs Dialyzer and Credo.

v0.2.4

  • Euclid.Test.Extra.Assertions.assert_recent accepts a DateTime as a string, in ISO8601 format

v0.2.2

  • Fix deprecation warning
  • Extra.Map.deep_atomize_keys, when confronted with a map entry whose value is a list of maps, will deeply atomize those maps' keys.

v0.2.0

  • Add Euclid.Test.Helpers.Retry
  • Update readme with information about bin/dev/doctor

v0.1.0

  • Initial release