All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.
- Added
Update()
method to all map types.
- The
Set()
method on all map types now returns the map, to allow for easier in-line map building.
0.16.1 - 2024-10-05
- Added
message
package, which is a largely drop-in replacement forconfigkit/message
.
0.16.0 - 2024-10-03
- Added
maps.NewFromSeq()
(and variants) which construct map types fromiter.Seq2
sequences. - Added
sets.NewFromSeq()
(and variants) which construct set types fromiter.Seq
sequences. - Added
sets.NewFromKeys()
(and variants) which construct set types from the keys ofiter.Seq2
sequences. - Added
sets.NewFromValues()
(and variants) which construct set types from the values ofiter.Seq2
sequences. - Added
Intersection()
method to all set types.
- [BC] Changed message stubs to accept validation scopes.
- The results of
Clone()
,Merge()
,Select()
andProject()
on any map type are now guaranteed to be non-nil. - The results of
Clone()
,Union()
andProject()
on any set type are now guaranteed to be non-nil.
- [BC] Removed
cmp
parameter frommaps.NewOrderedByComparator()
and its variants. The comparator logic must now be totally encapsulated by the comparator type alone.
0.15.1 - 2024-10-02
- Removed
nocopy
protection from collection types.
0.15.0 - 2024-10-02
- Added
sets.Proto
which is an unordered set ofproto.Message
values. - Added
maps.Proto
which is an unordered map ofproto.Message
keys to arbitrary values.
- [BC] Split
collection
package into separatecollections/maps
andcollections/sets
packages.
0.14.0 - 2024-09-30
- Added
collection.OrderedSet
andUnorderedSet
. - Added
collection.OrderedMap
.
- [BC] Removed
uuidpb.OrderedSet
andMap
, usecollections.OrderedSet
andOrderedMap
instead.
0.13.0 - 2024-09-30
- Added
Marshaler.UnmarshalTypeFromMediaType()
.
- Removed
Envelope.PortableName
. TheMediaType
field is now guaranteed to include the portable name as a parameter. - Removed
Packet.PortableName()
.
0.12.2 - 2024-09-30
- Fixed error in
Marshaler.MarshalAs()
when passed a media-type that is unsupported because it does not have atype
parameter. The implementation now correctly returnsfalse
instead.
0.12.1 - 2024-09-29
- Added
identitypb.Identity.Equal()
. - Added
envelopepb.Packer
andTranscoder
types.
0.12.0 - 2024-09-29
- [BC] Renamed
uuidpb.FromString()
toParse()
.
- Added
uuidpb.MustParse()
. - Added
marshaler
package as a replacement fordogmatiq/marshalkit
.
0.11.1 - 2024-09-27
- Added JSON struct tags to stub types.
0.11.0 - 2024-09-25
- Added
Map.All()
, which returns an iterator that ranges over all key/value pairs in the map. - Added
Map.Keys()
andValues()
methods, which return iterators that range over the map's keys and values, respectively. - Added
OrderedSet.All()
, which returns an iterator that ranges over all values in the set, in order. - Added
Map.Len()
andOrderedSet.Len()
. - Added
protobuf/configpb
andgrpc/configgrpc
packages as a replacement for theconfigspec
package fromdogmatiq/interopspec
.
- Bumped minimum Go version to v1.23.
- [BC]
Map
is now a struct instead of an actual Go map. Iteration is provided by a newAll()
method that returns an iterator. - [BC]
Set
has been renamed toOrderedSet
, and is now a struct instead of a slice. Iteration is provided by a newAll()
method that returns an iterator.
- [BC] Removed
MapKey
type.
0.10.3 - 2024-08-21
- Added the
enginetest/stubs
package as a replacement for the deprecatedgithub.com/dogmatiq/dogma/fixtures
package.
0.10.2 - 2024-04-08
- Added
uuidpb.Map.Has()
.
- Fixed unsigned integer overflow in
uuidpb.Compare()
.
0.10.1 - 2024-04-08
- Added
uuidpb.MapKey.Format()
,String()
andDapperString()
methods.
0.10.0 - 2024-03-27
- Initial release.
Note
Releases v0.9.0 and prior where part of a prior "incarnation" of the
enginekit
package name. These versions are still cached on go.pkg.dev, but
are unrelated to this repository.