Skip to content

Releases: dry-rb/dry-core

v0.6.0

03 Jun 08:43
v0.6.0
Compare
Choose a tag to compare

Added

  • [memoizable] support for BasicObject (@oleander)
  • [memoizable] support for methods that accept blocks (@oleander)
  • [deprecations] allow printing frame info on warn when setting up Deprecation module (via #52) (@waiting-for-dev)

Fixed

  • [memoizable] works with MRI 2.7+ keyword arguments now (@oleander)

Compare v0.5.0...v0.6.0

v0.5.0

20 Dec 13:22
v0.5.0
499ffa7
Compare
Choose a tag to compare

0.5.0 2012-12-12

Added

  • dry-equalizer has been imported into dry-core as Dry::Core::Equalizer but the interface remains the same, which is include Dry.Equalizer(...) - we'll be porting all other gems that depend on dry-equalizer to the latest dry-core with equalizer included gradually. Eventually dry-equalizer usage will be gone completely in rom-rb/dry-rb/hanami projects (@solnic)

Compare v0.4.10...v0.5.0

v0.4.10

19 Nov 14:37
v0.4.10
Compare
Choose a tag to compare

0.4.10 2020-11-19

Added

  • ClassAttributes.defines gets a new option for coercing values (tallica)
class Builder
  extend Dry::Core::ClassAttributes

  defines :nodes, coerce: -> value { Integer(value) }
end

:coerce works with any callable as well as types from dry-types

defines :nodes, coerce: Dry::Types['coercible.integer']
  • Constants::IDENTITY which is the identity function (flash-gordon)

Compare v0.4.9...v0.4.10

v0.4.9

09 Aug 09:31
v0.4.9
21e91fb
Compare
Choose a tag to compare

v0.4.9

Added

  • Undefined.coalesce takes a variable number of arguments and returns the first non-Undefined value (flash-gordon)
    Undefined.coalesce(Undefined, Undefined, :foo) # => :foo

Fixed

  • Undefined.{dup,clone} returns Undefined back, Undefined is a singleton (flash-gordon)

Compare v0.4.8...v0.4.9

v0.4.8

23 Jun 09:25
v0.4.8
e5a6948
Compare
Choose a tag to compare

v0.4.8 2019-06-23

Added

  • Undefined.map for mapping non-undefined values (flash-gordon):
something = 1
Undefined.map(something) { |v| v + 1 } # => 2
something = Undefined
Undefined.map(something) { |v| v + 1 } # => Undefined

Compare v0.4.7...v0.4.8

v0.4.7

25 Jun 16:00
v0.4.7
b407fd6
Compare
Choose a tag to compare

v0.4.7 2018-06-25

Fixed

  • Fix default logger for deprecations, it now uses $stderr by default, as it should (flash-gordon)

Compare v0.4.6...v0.4.7

v0.4.6

25 Jun 15:59
v0.4.6
b40131e
Compare
Choose a tag to compare

v0.4.6 2018-05-15

Changed

  • Trigger constant autoloading in the class builder (radar)

Compare v0.4.5...v0.4.6

v0.4.5

13 Mar 22:20
Compare
Choose a tag to compare

v0.4.5 2018-03-14

Added

  • Dry::Core::Memoizable, which provides a memoize macro for memoizing results of instance methods (timriley)

Compare v0.4.5...v0.4.5

v0.4.4

10 Feb 12:19
v0.4.4
8c20987
Compare
Choose a tag to compare

v0.4.4 2018-02-10

Added

  • deprecate_constant overrides Module#deprecate_constant and issues a labeled message on accessing a deprecated constant (flash-gordon)
  • Undefined.default which accepts two arguments and returns the first if it's not Undefined; otherwise, returns the second one or yields a block (flash-gordon)

Compare v0.4.3...v0.4.4

v0.4.3

03 Feb 10:56
v0.4.3
f519d09
Compare
Choose a tag to compare

v0.4.3 2018-02-03

Added

  • Dry::Core::DescendantsTracker which is a maintained version of the descendants_tracker gem (flash-gordon)

Compare v0.4.2...v0.4.3