Releases: microsoft/bond
Releases · microsoft/bond
5.2.0
5.2.0: 2017-02-07
gbc
& compiler library: 0.8.0.0- IDL core version: 2.0
- IDL comm version: 1.2
- C++ version: 5.2.0
- C# NuGet version: 5.2.0
- C# Comm NuGet version: 0.10.0
gbc
and Bond compiler library
- The C++ Comm .cpp template has been renamed to
comm_cpp
from
types_comm_cpp
to match the file it generates. - Add export-attribute option for C++ and make apply-attribute a
deprecated synonym for export-attribute - Fix C++ Comm build problems when services are shared via DLL.
Issue #314
C++
- Fixed compatibility with RapidJSON v1.1.0.
Issue #271 - The minimum supported version of Boost is now 1.58
- The
bf
utility now supports multiple payloads.
Pull request #288 - Fixed an issue with aliased enums.
Pull request #288 - Fixed an issue with template parameter deduction in
bond::is_nullable
that occurs with Microsoft Visual C++ 2015 Update 3.
Issue #306
C#
- Added controls to cap pre-allocation during deserialization of containers
and blobs. - Fixed computation of default value for aliased bool and wstring fields.
Issue #300
C# Comm
- Resources are now properly cleaned up if failures are encountered when
establishing client-side Epoxy connections. - The generated interfaces for services are now public. They were
inadvertently internal before.
5.1.0
5.1.0: 2016-11-14
gbc
& compiler library: 0.7.0.0- IDL core version: 2.0
- IDL comm version: 1.2
- C++ version: 5.1.0
- C# NuGet version: 5.1.0
- C# Comm NuGet version: 0.9.0
gbc
and Bond compiler library
- Added initial support for generating C++ Comm services and proxies.
- The Haskell utility functions
structName
andstructParams
were renamed
toclassName
andclassParams
(in theLanguage.Bond.Codegen.Cpp.Util
module).
C++ Comm
- The initial C++ Comm code has been merged in, but there is still work left
to be done before the first preview release. Use at your own risk.
C#
- Bond C# now supports
.NET Standard 1.0, 1.3, and 1.6,
so you can use Bond in .NET Core applications.
Pull request #243- Not all assemblies work with all versions of the .NET Standard or on
all platforms. The
manual
lists which assemblies target which frameworks. - Bond C# Comm is not yet building with .NET Core toolchain, so its
.NET Core support is preliminary.
- Not all assemblies work with all versions of the .NET Standard or on
- Bond.JSON now depends on Newsoft.JSON 9.0.1, the earliest version that
supports .NET Standard 1.0. - A new assembly, Bond.Reflection.dll, has been added, due to some internal
refactoring needed for .NET Core support. Many of the Bond assemblies now
have a dependency on this assembly, so you'll need to deploy it. If you
use NuGet to consume Bond, this is should be handled automatically. - Fixed a bug in the MSBuild targets that caused codegen to always be run if
all of the BondCodegen items have Options metadata. - Fixed a bug in the MSBuild targets that caused compilation to fail if the
$BondOutputDirectory did not end with a trailing slash.
C# Comm
- The constructor for
LayerStackProvider
no longer requires a logger;
instead, the transport's logger is passed toOnSend
/OnReceive
. Before,
using the same logger with a transport andLayerStackProvider
required a
duplicate implementation. - Fixed a bug that prevented
EpoxyListener
from accepting multiple
connections in parallel.
cs-comm-0.8.0
C# Comm 0.8.0: 2016-10-12
- C# Comm NuGet version: 0.8.0
C# Comm
EpoxyTransport
can be configured to enable TCP keep-alive to help detect
dead connections. SeeEpoxyTransportBuilder.SetKeepAliveTimes
for
details.
5.0.0
5.0.0: 2016-09-12
gbc
& compiler library: 0.6.0.0- IDL core version: 2.0
- IDL comm version: 1.1
- C++ version: 5.0.0
- C# NuGet version: 5.0.0
- C# Comm NuGet version: 0.7.0
IDL comm
- Update IDL to conform to naming conventions.
- Adjust IDL for changes made to Epoxy internals
C++
- Generated enum types now have a
FromEnum
method that can be used to
convert from an enum value to a string. Now generated enum types have all
four ofToEnum
,FromEnum
,ToString
, andFromString
. (The...Enum
variants return false on failure, while the...String
variants throw.) - Runtime SchemaDef
list_sub_type
field removed, as it was breaking some
consumers of serialized SchemaDef. We plan to restore this field in the
future.
Issue #161 re-opened
C#
- Runtime SchemaDef
list_sub_type
field removed, as it was breaking some
consumers of serialized SchemaDef. We plan to restore this field in the
future.
Issue #161 re-opened - The Bond.Runtime NuGet package no longer artificially limits
Newtonsoft.Json to versions before 10.
Issue #212
C# Comm
EpoxyListeners
can now be configured to require clients to authenticate
themselves with a certificate. This is configured via the
clientCertificateRequired
parameter when creating an
EpoxyServerTlsConfig
.- Internals of the Epoxy protocol cleaned up. See the
updated wire format specification.
4.3.0
4.2.1
4.2.1: 2016-06-02
gbc
& compiler library: 0.4.1.0- C# NuGet version: 4.2.1
- C# Comm NuGet version: 0.5.0
gbc
- Support for parsing
service definitions
and generating C# service bases, interfaces, and proxies. - MSBuild-compatible error messages.
Issue #136
C#
- Added
Deserializer.TryDeserialize()
. - Added two new
NuGet packages
to make it easier to consume Bond piecemeal.- Bond.Compiler: contains
gbc
,bond.bond
, andbond_const.bond
in a
tools-only package - Bond.Compiler.CSharp: contains
gbc
and C# MSBuild targets. No longer
do you have to consume Bond.CSharp (which pulls in all of the rest of
Bond) just to get codegen.
- Bond.Compiler: contains
C# Comm
- Initial preview release of the
Bond Communications framework.
4.2.0
4.1.0
4.1.0: 2016-04-22
gbc
& compiler library: 0.4.0.2- C# NuGet version: 4.1.0
gbc
- Field ordinals larger than 65535 are now rejected.
Issue #111 - Fields that duplicate the name of an existing field are now rejected.
Issue #123 - The generated C# code now compiles with no errors or warnings at
/warn:4
. Issue #82 - Added
Visual Studio Code highlighting rules for.bond
files.
C++
- Enums are now cast to 32-bit integers to avoid some compiler warnings.
- Bond can be used in code bases where there is a function-style macro named
U
.
C#
- The generated C# code now compiles with no errors or warnings at
/warn:4
. Issue #82 - Bond-generated enums constants are now cast to 32-bit integers to avoid
some compiler warnings. - Implicit conversion between
bond.GUID
andSystem.Guid
has been added.
Pull request #145 - The ability to
customize the implementation ofIBonded<T>
used
has been added.
Pull request #153
4.0.2
4.0.2: 2015-12-14
gbc
& compiler library: 0.4.0.1- C# NuGet version: 4.0.2
Bond compiler library
- Added a
custom codegen example.
C#
- Added support to
not inline nested structs inSerializers
.
This can be used to speed up the time to create the serializer for very
complex schemas. - Fix for rare buffer corruption in InputStream.
Issue #114. - Fix for SimpleXmlParser not handling XML declarations. Issue #112