CSharp SDK for CloudEvents
Go to file
Jon Skeet 409982e9e9 Release 2.2.0 (with Protobuf 2.0.0-beta.1)
Changes in this release:

- Bug fix: the "source" attribute is now validated to be non-empty
- Bug fix: the JSON event formatters comply with the clarified JSON event format spec
- Dependency: Apache.Avro dependency updated to 1.11.0
- Feature: New package CloudNative.CloudEvents.Protobuf, released as 2.0.0-beta.1

Signed-off-by: Jon Skeet <jonskeet@google.com>
2022-02-02 07:26:07 +00:00
.github/workflows Update to .NET 6 SDK to build and netcoreapp3.1 for test 2022-01-12 07:09:02 +00:00
.vscode added support for version 0.3 2019-05-19 22:39:34 +02:00
docs Release 2.2.0 (with Protobuf 2.0.0-beta.1) 2022-02-02 07:26:07 +00:00
samples Update to .NET 6 SDK to build and netcoreapp3.1 for test 2022-01-12 07:09:02 +00:00
src Release 2.2.0 (with Protobuf 2.0.0-beta.1) 2022-02-02 07:26:07 +00:00
test feat: Add a Protobuf event formatter 2022-02-01 09:44:35 +00:00
.gitignore update version 2020-01-16 09:31:28 +01:00
CloudEvents.sln feat: Add a Protobuf event formatter 2022-02-01 09:44:35 +00:00
CloudEvents.sln.DotSettings added support for version 0.3 2019-05-19 22:39:34 +02:00
CloudEvents.v3.ncrunchsolution add support for parsing ASP.NET Core HTTP requests into CloudEvents 2019-10-31 15:24:54 +01:00
CloudEventsSdk.snk Add strong naming for all projects 2020-07-14 19:05:46 +01:00
LICENSE Initial commit 2018-09-20 15:57:22 -04:00
PROCESSES.md Adjust documented processes based on expectations of releases. 2021-07-10 07:03:22 +01:00
README.md Replace AppVeyor badge with GitHub Actions one 2022-01-19 16:49:28 +00:00
generate_protos.sh feat: Add a Protobuf event formatter 2022-02-01 09:44:35 +00:00
nuget-icon.png Add a NuGet icon and package tags 2021-05-26 08:04:03 +01:00

README.md

Build

Status

This SDK current supports the following versions of CloudEvents:

  • v1.0

sdk-csharp

.NET Standard 2.0 (C#) SDK for CloudEvents

The CloudNative.CloudEvents package provides support for creating, encoding, decoding, sending, and receiving CNCF CloudEvents. Most applications will want to add dependencies on other CloudNative.CloudEvents.* packages for specific event format and protocol binding support. See the user guide for details of the packages available.

A few gotchas highlighted for the impatient who don't usually read docs

  1. The CloudEvent class is not meant to be used with object serializers like JSON.NET. If you need to serialize or deserialize a CloudEvent directly, always use a CloudEventFormatter such as JsonEventFormatter.
  2. Protocol binding integration is provided in the form of extensions and the objective of those extensions is to map the CloudEvent to and from the respective protocol message, such as an HTTP request or response. The application is otherwise fully in control of the client. Therefore, the extensions do not add security headers or credentials or any other headers or properties that may be required to interact with a particular product or service. Adding this information is up to the application.

User guide and other documentation

The docs/ directory contains more documentation, including the user guide. Feedback on what else to include in the documentation is particularly welcome.

Changes since 1.x

From version 2.0.0-beta.2, there are a number of breaking changes compared with the 1.x series of releases. New code is strongly encouraged to adopt the latest version rather than relying on the 1.3.80 stable release.

The stable 2.0.0 version was released on June 15th 2021, and all users are encouraged to use this (or later) versions.

A more details list of changes is provided within the documentation.

Community

Each SDK may have its own unique processes, tooling and guidelines, common governance related material can be found in the CloudEvents community directory. In particular, in there you will find information concerning how SDK projects are managed, guidelines for how PR reviews and approval, and our Code of Conduct information.