The schema evolution documentation refers to "field ordinals", which is
terminology that may not be familiar to all users of Bond.
Refer to "field ordinals" as "field ordinals/ids" in schemea evolution
and compiler documentation.
Add minor clarification and emphasize around when default values are
optional or required.
Bond-over-gRPC is no longer supported.
Delete the Bond-over-gRPC code. Leave the Bond-over-gRPC documentation
for now so that anyone using the current version of Bond can still
reference it.
* Remove C++ and C# gRPC library code, tests, examples, and glue code.
* Remove support for gRPC codegen. gbc can still parse service
definitions and emit them in JSON ASTs.
* Remove gRPC submodule.
* Remove gRPC-specific CI builds.
* Revise README.
See https://github.com/microsoft/bond/issues/1131
The "Duplicate BondCodegen items were included" error message says that
the `$(EnableDefaultCompileItems)` property can be set to false to stop
automatic inclusion. The automatic inclusion behavior is conditioned on
the `$(EnableDefaultItems)` property, not
`$(EnableDefaultCompileItems)`.
Revise the error message to mention `$(EnableDefaultItems)`.
Fixes https://github.com/microsoft/bond/issues/1110
The Mono apt source has started redirecting to https. The CI image
Dockerfile wasn't installing the needed components to have apt connect
over https.
Install the missing components. Use an explicit https source instead of
relying on the redirection.
Microsoft ceased its direct investment in Bond-over-gRPC in December
2021. GitHub issue [#1131, Bond-over-gRPC will be deprecated February
2022][1], outlines a two-step removal process should no one in the
community be interested in maintaining Bond-over-gRPC:
1. mark Bond-over-gRPC as deprecated in February 2022 and
2. delete the Bond-over-gRPC code in May 2022.
No one in the community has expressed an interest in maintaining
Bond-over-gRPC.
Mark the Bond-over-gRPC code as deprecated using the `[[deprecated]]`
attribute in C# and the `[Obsolete]` attribute in .NET, implementing
step 1.
* Add suppressions for the new errors this generates in test and example
code.
* Remove the weekly gRPC master branch build: it has been failing since
April 2021. Fixes https://github.com/microsoft/bond/issues/1108
* Add note about deprecation in documentation.
* Minor usability improvements to the Install-Boost.ps1 script.
[1]: https://github.com/microsoft/bond/issues/1131
`bond::ext::grpc::detail::Win32Exception` is not marked inline which could
lead to multiple symbol definition.
Mark that function inline.
Fixes https://github.com/microsoft/bond/issues/1129
`OutputBuffer` always uses `new byte[]` to create/resize its internal
buffer. Implementing a custom `IOutputBuffer` that uses a different
allocation scheme requires duplicating a lot of code in `OutputBuffer` and
`IntegerHelper`.
Add a virtual method `OutputBuffer.ResizeBuffer` that can be overridden to
use buffer allocators other than `new byte[]` (e.g.
`ArrayPool<byte>.Rent()`)
Transforms over schemas without an underlying object are useful in some
advanced uses of Bond.
Add the ability to apply a transform to a schema without an object.
Fix undefined behavior when initializing SchemaDef instances.
Some public headers like `bond/core/reflection.h` or `bond/core/value.h` are assuming that specific headers are already included. This change fixes some of the missing include directives that allows these to be included directly.