Releases: capnproto/go-capnp
Releases · capnproto/go-capnp
v3.0.1-alpha.2
What's Changed
- example: fix
hashes
example by @cmackenzie1 in #568 - chore: upgrade all dependencies by @cmackenzie1 in #569
- ci: update github actions to latest versions by @cmackenzie1 in #567
- message: Fix reuse of first segment by @matheusd in #556
- Fix build error on go1.23rc1 by @saschagrunert in #576
New Contributors
- @cmackenzie1 made their first contribution in #568
- @saschagrunert made their first contribution in #576
Full Changelog: v3.0.1-alpha.1...v3.0.1-alpha.2
v3.0.1-alpha.1
What's Changed
- When examining annotations, check the value's tag. by @zenhack in #109
- sendCap: check for nil exports table/entries by @zenhack in #113
- V3 sender promise workaround by @zenhack in #114
- Don't panic when Payload is null. by @zenhack in #157
- Add a missing format argument by @zenhack in #164
- Fix some breakage in the regen.sh script. by @zenhack in #162
- Typed refcounting by @zenhack in #163
- Add option to use packed encoding in rpc.StreamTransport. by @lthibault in #161
- Update README.md for v3 by @lthibault in #170
- Add go module & set import path to capnproto.org/go/capnp/v3 by @lthibault in #169
- Added minor installation note regarding 'GO111MODULE' by @taufik-rama in #179
- Update the bundled schema to those included with capnp-c++ 0.9 by @zenhack in #181
- Fix issues that cause linters to complain. by @lthibault in #182
- CI: run agains Go 1.17 by @zenhack in #183
- Remove old build tags by @lthibault in #184
- Fix unsafe use of reflect.StringHeader/SliceHeader. by @lthibault in #186
- Add new internal/mpsc package. by @zenhack in #191
- Improve error handling in RPC package by @lthibault in #187
- Add infalliable variants of NewMessage() by @zenhack in #195
- Fix a bug where we were calling annotate() on the wrong error. by @zenhack in #197
- Minor formatting change in comment by @zenhack in #202
- Flow control by @zenhack in #198
- Cleanup: Stop passing around a superfluous []ClientState by @zenhack in #207
- Simplify how we determine whether to embargo by @zenhack in #212
- Add some helpers for acquiring locks by @zenhack in #210
- Expose pipelineClient & do something useful with its .Brand() by @zenhack in #211
- Support arbitrary client metadata, avoid linear seach in sendCap. by @zenhack in #208
- Handle incoming
receiverAnswer
cap descriptors. by @zenhack in #209 - Error client: return the error via Brand() by @zenhack in #215
- Add me & Louis to FUNDING.yml by @zenhack in #217
- Transport: don't require clearing the cap table. by @zenhack in #219
- sendCap: emit receiverAnswer when appropriate. by @zenhack in #213
- Support canonicalizing interface pointers. by @zenhack in #220
- Creating example directory with books and hashes examples from wiki by @frumioj in #204
- Get rid of server.Policy.AnswerQueueSize. by @zenhack in #222
- Replace getClosedSignal() with global closed channel. by @lthibault in #223
- Use generics for mpsc by @zenhack in #226
- Remove unused contextImport constant. by @zenhack in #227
- Use generics for list types. by @zenhack in #229
- Bugfix/unbounded send queue by @lthibault in #224
- Use the embed package to do less in mktemplates. by @zenhack in #228
- Don't block when queuing methods on *Server. by @zenhack in #225
- Fix linter warning due to discarded CancelFunc in mpsc_test by @lthibault in #230
- Lintfix. Explicitly assign value to
List
field inStructList
. by @lthibault in #231 - Refactor readlimit_test.go to appease CI. by @lthibault in #233
- Fix compilation error and test on intel 32-bit by @Matherunner in #234
- Fix typo in comment. by @zenhack in #237
- Represent :Capability type as *capnp.Client. by @lthibault in #232
- flowcontrol.fixedLimiter: Swap in semaphore.Weighted. by @zenhack in #238
- Fix moar deadlocks by @zenhack in #243
- Get rid of unnecessary interface{ ... }. by @zenhack in #246
- Add typed wrapper for lists of capabilities. by @zenhack in #247
- Move Transport into its own package, and export transport.NewPipe by @zenhack in #252
- Remove Promise.Join() by @zenhack in #255
- Fix broken implemenation of .Ack() by @zenhack in #254
- Move
packed
out of internal. by @zenhack in #258 - Bugfix: don't wrap nil error with fmt.Errorf. by @lthibault in #262
- Export concrete arena types. by @lthibault in #263
- Return error from generator.defineInterface by @lthibault in #264
- Implement io.WriterTo for Message by @lthibault in #266
- Assorted clean-up tasks by @lthibault in #265
- Fix race conditions due to zero-copy semantics of pipe transport. by @lthibault in #261
- Remove redundant call to setAnswerQuestion by @zenhack in #250
- Client: hide pointer indirection. by @zenhack in #260
- Bugfix/nil exc check fails by @lthibault in #268
- Defend against nil-pointer panics in question.release by @lthibault in #269
- Don't mention now-deleted Promise.Join() method by @zenhack in #270
- Remove server.Policy. by @lthibault in #273
- Embed capnp.Client in generated interface types. by @zenhack in #276
- First steps towards generics by @zenhack in #274
- Remove pointless indirection in templates. by @zenhack in #277
- Clean up formatting, inefassign and misspellings. by @lthibault in #281
- Kill the struct wrapper around Client by @zenhack in #279
- Remove a couple uses of the *_List type aliases. by @zenhack in #278
- Run gofmt by @zenhack in #282
- Kill the struct wrapper around generated Struct types. by @zenhack in #283
- Get rid of the struct wrappers around list types. by @zenhack in #284
- Add client methods to interfaceClient template by @lthibault in #285
- Add IsValid method to list types. by @lthibault in #287
- Fix 271 by @zenhack in #288
- .gitignore: ignore test coverage profiles by @zenhack in #290
- Add a .Release() method to FlowLimiter. by @zenhack in #291
- Export mpsc by @lthibault in #293
- Clean up import rendering in codegen. by @lthibault in #286
- Simplify packed encoder. by @lthibault in #295
- Import docs from the wiki into a docs/ directory. by @zenhack in #300
- Update Working-with-Cap'n-Proto-Types.md by @TheApeMachine in #302
- Reject pipelined calls when PlaceArgs returns an error. by @lthibault in #303
- Fix incorrect docs for Client.Release(). by @zenhack in #313
- Fix error message in panic. by @zenhack in #312
- Get rid of an unnecessary slice in Promise. by @zenhack in #310
- Delete clearCapTable() by @zenhack in #309
- Clarify comments by @zenhack in #308
- Fix deadlock by @zenhack in #316
- call messages: let th...
v3.0.0-alpha.30
What's Changed
- When examining annotations, check the value's tag. by @zenhack in #109
- sendCap: check for nil exports table/entries by @zenhack in #113
- V3 sender promise workaround by @zenhack in #114
- Don't panic when Payload is null. by @zenhack in #157
- Add a missing format argument by @zenhack in #164
- Fix some breakage in the regen.sh script. by @zenhack in #162
- Typed refcounting by @zenhack in #163
- Add option to use packed encoding in rpc.StreamTransport. by @lthibault in #161
- Update README.md for v3 by @lthibault in #170
- Add go module & set import path to capnproto.org/go/capnp/v3 by @lthibault in #169
- Added minor installation note regarding 'GO111MODULE' by @taufik-rama in #179
- Update the bundled schema to those included with capnp-c++ 0.9 by @zenhack in #181
- Fix issues that cause linters to complain. by @lthibault in #182
- CI: run agains Go 1.17 by @zenhack in #183
- Remove old build tags by @lthibault in #184
- Fix unsafe use of reflect.StringHeader/SliceHeader. by @lthibault in #186
- Add new internal/mpsc package. by @zenhack in #191
- Improve error handling in RPC package by @lthibault in #187
- Add infalliable variants of NewMessage() by @zenhack in #195
- Fix a bug where we were calling annotate() on the wrong error. by @zenhack in #197
- Minor formatting change in comment by @zenhack in #202
- Flow control by @zenhack in #198
- Cleanup: Stop passing around a superfluous []ClientState by @zenhack in #207
- Simplify how we determine whether to embargo by @zenhack in #212
- Add some helpers for acquiring locks by @zenhack in #210
- Expose pipelineClient & do something useful with its .Brand() by @zenhack in #211
- Support arbitrary client metadata, avoid linear seach in sendCap. by @zenhack in #208
- Handle incoming
receiverAnswer
cap descriptors. by @zenhack in #209 - Error client: return the error via Brand() by @zenhack in #215
- Add me & Louis to FUNDING.yml by @zenhack in #217
- Transport: don't require clearing the cap table. by @zenhack in #219
- sendCap: emit receiverAnswer when appropriate. by @zenhack in #213
- Support canonicalizing interface pointers. by @zenhack in #220
- Creating example directory with books and hashes examples from wiki by @frumioj in #204
- Get rid of server.Policy.AnswerQueueSize. by @zenhack in #222
- Replace getClosedSignal() with global closed channel. by @lthibault in #223
- Use generics for mpsc by @zenhack in #226
- Remove unused contextImport constant. by @zenhack in #227
- Use generics for list types. by @zenhack in #229
- Bugfix/unbounded send queue by @lthibault in #224
- Use the embed package to do less in mktemplates. by @zenhack in #228
- Don't block when queuing methods on *Server. by @zenhack in #225
- Fix linter warning due to discarded CancelFunc in mpsc_test by @lthibault in #230
- Lintfix. Explicitly assign value to
List
field inStructList
. by @lthibault in #231 - Refactor readlimit_test.go to appease CI. by @lthibault in #233
- Fix compilation error and test on intel 32-bit by @Matherunner in #234
- Fix typo in comment. by @zenhack in #237
- Represent :Capability type as *capnp.Client. by @lthibault in #232
- flowcontrol.fixedLimiter: Swap in semaphore.Weighted. by @zenhack in #238
- Fix moar deadlocks by @zenhack in #243
- Get rid of unnecessary interface{ ... }. by @zenhack in #246
- Add typed wrapper for lists of capabilities. by @zenhack in #247
- Move Transport into its own package, and export transport.NewPipe by @zenhack in #252
- Remove Promise.Join() by @zenhack in #255
- Fix broken implemenation of .Ack() by @zenhack in #254
- Move
packed
out of internal. by @zenhack in #258 - Bugfix: don't wrap nil error with fmt.Errorf. by @lthibault in #262
- Export concrete arena types. by @lthibault in #263
- Return error from generator.defineInterface by @lthibault in #264
- Implement io.WriterTo for Message by @lthibault in #266
- Assorted clean-up tasks by @lthibault in #265
- Fix race conditions due to zero-copy semantics of pipe transport. by @lthibault in #261
- Remove redundant call to setAnswerQuestion by @zenhack in #250
- Client: hide pointer indirection. by @zenhack in #260
- Bugfix/nil exc check fails by @lthibault in #268
- Defend against nil-pointer panics in question.release by @lthibault in #269
- Don't mention now-deleted Promise.Join() method by @zenhack in #270
- Remove server.Policy. by @lthibault in #273
- Embed capnp.Client in generated interface types. by @zenhack in #276
- First steps towards generics by @zenhack in #274
- Remove pointless indirection in templates. by @zenhack in #277
- Clean up formatting, inefassign and misspellings. by @lthibault in #281
- Kill the struct wrapper around Client by @zenhack in #279
- Remove a couple uses of the *_List type aliases. by @zenhack in #278
- Run gofmt by @zenhack in #282
- Kill the struct wrapper around generated Struct types. by @zenhack in #283
- Get rid of the struct wrappers around list types. by @zenhack in #284
- Add client methods to interfaceClient template by @lthibault in #285
- Add IsValid method to list types. by @lthibault in #287
- Fix 271 by @zenhack in #288
- .gitignore: ignore test coverage profiles by @zenhack in #290
- Add a .Release() method to FlowLimiter. by @zenhack in #291
- Export mpsc by @lthibault in #293
- Clean up import rendering in codegen. by @lthibault in #286
- Simplify packed encoder. by @lthibault in #295
- Import docs from the wiki into a docs/ directory. by @zenhack in #300
- Update Working-with-Cap'n-Proto-Types.md by @TheApeMachine in #302
- Reject pipelined calls when PlaceArgs returns an error. by @lthibault in #303
- Fix incorrect docs for Client.Release(). by @zenhack in #313
- Fix error message in panic. by @zenhack in #312
- Get rid of an unnecessary slice in Promise. by @zenhack in #310
- Delete clearCapTable() by @zenhack in #309
- Clarify comments by @zenhack in #308
- Fix deadlock by @zenhack in #316
- call messages: let th...
v2.18.0
v2.17.4
v2.17.2
v2.17.1
v2.17.0
- Add
capnp.Canonicalize
function that implements the canonicalization algorithm. (#92) - Zero-sized struct pointers are now written with an offset of -1 to distinguish them from a null pointer. (#92)
- Better support for alternate
Arena
implementations- Document
Arena
contract in more detail - Permit an
Arena
to have a single empty segment inNewMessage
- Document
Arena
allocation optimizations: bothSingleSegment
andMultiSegment
now gradually ramp up the amount of space allocated in a single allocation as the message grows. This is similar to how built-in Goappend
function works. Workloads with medium to large messages should expect a decrease in number of allocations, while small message workloads should remain about the same. Please file an issue if you encounter any performance regressions. (#96)- Fix double-far pointer logic. (#97) This is a long-standing bug with reading and writing multi-segment messages. I've added broader test coverage for multi-segment messages and far pointers, so it's unlikely that such a failure will persist in the future.
- Accessing a field in a union when that field is not the one set now results in a panic. (#56) This is intended to help uncover programming mistakes where a union field is accessed without checking
Which()
. Prior to this change, unset union field accessors would silently return garbage. Struct.Address()
andList.Address()
are now deprecated. Especially forList
, where the address is at the beginning of the data, not the composite literal, the return value is not well-defined and its not clear how to use it. Usecapnp.SamePtr
if you need to check for pointer reference equality. File an issue if you're usingAddress()
for something else.
v2.16.0: all: add Bazel BUILD files
- Add BUILD.bazel files (#88)