Releases: dogmatiq/configkit
Releases · dogmatiq/configkit
Version 0.16.0
Version 0.15.1
Version 0.15.0
Added
- Added
message.Kind
enumeration to represent the different kinds of message, that isCommand
,Event
, andTimeout
. This is a replacement for themessage.Role
enumeration, which was removed in this release.Kind
andRole
have the same enumeration values, but whereas a message's "role" was a function of how it was used within a specific application, its "kind" is inherit to the message type itself. - Added
message.SwitchKind()
andMapKind()
to perform exhaustive switches and maps on aKind
. - Added
message.Switch()
,Map()
andTryMap()
to perform exchaustive switches on the kind of adogma.Message
.
Removed
- [BC] Removed
message.Role
. - [BC] Removed
message.NameRoles
andTypeRoles
. - [BC] Removed
message.NameSet
andTypeSet
, usemessage.Set
instead. - [BC] Removed
message.NameCollection
,NameSet
,TypeCollection
andTypeSet
, and their associated set functions, usemessage.Set
instead.
Changed
- [BC] Renamed
message.NameFromType()
toNameFromStaticType()
. - [BC] Changed
EntityMessage[Names|Types]
to use a new genericEntityMessages[K]
type. - [BC] Changed the
api
package to implement theconfiggrpc
APIs defined indogmatiq/enginekit
, instead of the (deprecated)interopspec/configspec
APIs.
Version 0.14.0
Version 0.13.8
Fixed
- Fixed bug that caused
message.Type.String()
to remove periods after package names when rendering the type of a pointer message.
Version 0.13.7
Added
- Added
message.NameFor()
.
Changed
- Shorten generic message type names when the type parameter is in the same package as the generic type.
Deprecated
- Deprecated the
fixtures
sub-package. This package will be removed in a future release.
Version 0.13.6
Changed
- Bump Dogma to v0.14.0.
Version 0.13.5
Added
- Added
static.PackagesLoadMode
as a convenience for using Go's built-inpackages.Load()
with a mode suitable for static analysis. - Added
static.FromDir()
as a convenience for analyzing packages recursively from a directory.
Fixed
- Handle alias types under Go v1.23 (or when using
GODEBUG=gotypealias=1
), which previously caused a panic.
Version 0.13.4
Added
- Added
message.TypeFor()
.
Changed
- Bumped minimum Go version to 1.22.
- Use
dogma.Command
,Event
andTimeout
interfaces instead ofdogma.Message
where appropriate.
Version 0.13.3
Added
- Added
ToProto()
andFromProto()
to convert application configurations to and from their protocol buffers representations.