Commit Graph

27 Commits

Author SHA1 Message Date
Jon Skeet 54cbd3ca85 Release 2.8.0
Changes since 2.7.1:

- Add an explicit .NET 8 target to all packages.
- Removed dependencies that are already included in the framework, for suitable targets.
- Use a framework reference to Microsoft.AspNetCore.App instead of package frameworks,
  for the .NET 8 target
- Release CloudNative.CloudEvents.Mqtt as 3.8.0, bumping the major
  version to reflect adopting MQTTnet version 4.3.6.1152.
  Fixes [#269](https://github.com/cloudevents/sdk-csharp/issues/269).
- Other dependency updates:
  - AMQPNetLite and AMQPNetLite.Serialization: 2.4.2 => 2.4.11
  - Apache.Avro: 1.11.1 => 1.11.3
  - Newtonsoft.Json: 13.0.2 => 13.0.3
  - Google.Protobuf: 3.22.0 => 3.27.3
  - Confluent.Kafka: 1.6.3 => 1.9.3
    - See [#297](https://github.com/cloudevents/sdk-csharp/issues/297) for
      consideration of a bump to 2.x.
  - Only for netstandard2.0 and netstandard2.1 targets:
    - System.Text.Encodings.Web: 6.0.0 => 8.0.0
    - System.Text.Json: 5.0.2 => 8.0.4

Signed-off-by: Jon Skeet <jonskeet@google.com>
2024-08-07 08:24:58 +01:00
Jon Skeet 7999942334 Release 2.7.1
Changes since 2.7.0:

- Prevent string resource lookup if not required. Fixes ([#264](https://github.com/cloudevents/sdk-csharp/issues/264)).

Signed-off-by: Jon Skeet <jonskeet@google.com>
2023-09-04 09:16:37 +01:00
Jon Skeet 0c0169f4fd Release 2.7.0
Changes since 2.6.0:

- Add the ability to specify a custom serializer for Avro.
  Fixes ([#261](https://github.com/cloudevents/sdk-csharp/issues/261)).

Signed-off-by: Jon Skeet <jonskeet@google.com>
2023-07-31 16:30:12 +01:00
Jon Skeet d0286596ee Release 2.6.0
Changes since 2.5.1:

- Dependencies: system-level dependencies updated
- The NuGet package now uses PackageLicenseExpression (but still
  includes the licence file as well).
  Fixes ([#252](https://github.com/cloudevents/sdk-csharp/issues/252)).
- Regenerated protobuf schema using the original filename of
  cloudevents.proto instead of ProtoSchema.proto. An additional
  ProtoSchemaReflection class has been added purely for compatibility.
  Fixes ([#256](https://github.com/cloudevents/sdk-csharp/issues/256)).

Signed-off-by: Jon Skeet <jonskeet@google.com>
2023-03-07 11:16:04 +00:00
Jon Skeet 90bfe356f6 Release 2.5.1
Changes since 2.5.0:

- Dependencies: update dependencies in CloudNative.CloudEvents.Avro
  - Add explicit dependency on Newtonsoft.Json 13.0.1 to avoid
    transitive dependency on a version containing vulnerabilities
  - Update Apache.Avro to 1.11.1

No APIs have changed. This is a patch release as the dependency
changes are very minor (but necessary to avoid vulnerabilities).

Signed-off-by: Jon Skeet <jonskeet@google.com>
2022-11-10 09:39:16 +00:00
Tim Bussmann b2f4c7bfdc fix markup link
Signed-off-by: Tim Bussmann <timbussmann@users.noreply.github.com>
2022-10-19 20:33:45 +01:00
Jon Skeet 02f394216e Release 2.5.0
Changes since 2.4.0:

- Dependencies: update dependencies in CloudNative.CloudEvents.AspNetCore:
  - Remove dependency on Microsoft.AspNetCore.Mvc.Core (as we don't use it)
  - Update dependency on Microsoft.AspNetCore.Http to 2.1.34
  - Explicitly add dependency on System.Text.Encodings.Web 6.0.0 to avoid security issue in older version

No APIs have changed, but this is a minor release due to the significant dependency changes.

Signed-off-by: Jon Skeet <jonskeet@google.com>
2022-10-17 08:45:11 +01:00
Jon Skeet 44f82ba07a Release 2.4.0
Changes since 2.3.1:

- Feature: Implement underscore prefixes for AMQP (see history) ([#236](https://github.com/cloudevents/sdk-csharp/pull/236))
- Feature: Allow empty payloads in Kafka ([#224](https://github.com/cloudevents/sdk-csharp/pull/224))
- Feature: Implement conversions to and from JObject/JsonElement in JsonEventFormatter ([#234](https://github.com/cloudevents/sdk-csharp/pull/234), part of [#231](https://github.com/cloudevents/sdk-csharp/issues/231))
- Bug fix: Observe JSON serializer options in JsonEventFormat ([#226](https://github.com/cloudevents/sdk-csharp/pull/226), fixes [#225](https://github.com/cloudevents/sdk-csharp/issues/225))
- Bug fix: Put AvroEventFormatter in the right namespace ([#220](https://github.com/cloudevents/sdk-csharp/pull/220), fixes [#219](https://github.com/cloudevents/sdk-csharp/issues/219))
- Bug fix: Use content headers when parsing HTTP requests/responses ([#222](https://github.com/cloudevents/sdk-csharp/pull/222), fixes [#221](https://github.com/cloudevents/sdk-csharp/issues/221))
- Bug fix: Perform release builds with ContinuousIntegrationBuild=true ([#223](https://github.com/cloudevents/sdk-csharp/pull/223), fixes [#175](https://github.com/cloudevents/sdk-csharp/issues/175))

Signed-off-by: Jon Skeet <jonskeet@google.com>
2022-09-08 11:05:16 +01:00
Jon Skeet 3ce4aa08f2 Release 2.3.1
Changes since 2.3.0:

- Bug fix: ignore the charset when determining the content type for decoding JSON (#216)
- Bug fix: make the NuGet package deterministic (#175)

Signed-off-by: Jon Skeet <jonskeet@google.com>
2022-06-29 08:14:13 +01:00
Jon Skeet e6f2c4d634 Release 2.3.0
Changes since 2.2.0:

- Bug fix: BinaryDataUtilities.AsArray misbehavior with array segments ([#209](https://github.com/cloudevents/sdk-csharp/issues/209))
- Bug fix: Links within XML documentation corrected after spec repo change
- Feature: Reject "data" as a context attribute name (spec has been clarified for this)
- Feature: Support Data content type inference in event formatters
  - The JsonEventFormatter classes infer "application/json" for all data
- Feature: CloudNative.CloudEvents.Protobuf is now GA (same version as other packages)

Signed-off-by: Jon Skeet <jonskeet@google.com>
2022-05-31 18:25:41 +01:00
Jon Skeet 92dd95a1b2 docs: Fix spec references in docs
Signed-off-by: Jon Skeet <jonskeet@google.com>
2022-05-31 18:25:41 +01:00
Jon Skeet b1f29cf25b Support data content type inference
- New methods in CloudEventFormatter to support inference
- JsonEventFormatter infers a content type of application/json for non-binary data
- All transports use the inferred content type when formatting in binary mode
- Documentation for both formatters and bindings has been updated

Signed-off-by: Jon Skeet <jonskeet@google.com>
2022-02-25 07:11:13 +00:00
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
Jon Skeet 42b723d844 docs: Update one sample to show a relative URI for Source
(We want to make it clear that Source can be relative or absolute.)

Signed-off-by: Jon Skeet <jonskeet@google.com>
2021-08-06 11:04:18 +01:00
Ofir Shapira 8e914a3599 Update guide.md
Signed-off-by: Ofir Shapira <ofir.shapira@como.com>
2021-08-05 12:49:46 +01:00
Jon Skeet 33d1d21370 All packages release 2.1.1
Bug fix ([#77](https://github.com/cloudevents/sdk-csharp/pull/177)): dependency on the
`Nullable` package was not declared with `PrivateAssets=all`,
leading to that showing up as a dependency. This would break users
who explicitly have a dependency on an older version of `Nullable`.

This fix shouldn't break anyone, as far as we're aware.

Signed-off-by: Jon Skeet <jonskeet@google.com>
2021-07-21 07:45:03 +01:00
Jon Skeet bedad89613 All packages release version 2.1.0
New features:

- Nullable reference type annotations ([#170](https://github.com/cloudevents/sdk-csharp/issues/170))
- More batch support for HttpListener ([#166](https://github.com/cloudevents/sdk-csharp/issues/166))
- CloudEvent.CopyToHttpResponse extension method (part of [#148](https://github.com/cloudevents/sdk-csharp/issues/148))

Other improvements:

- More informative error message for non-CE HTTP requests ([#165](https://github.com/cloudevents/sdk-csharp/issues/165))

Bug fixes:

- Various small XML docs typos ([commit](626089ea1e))
- Don't set the content type to JSON in HttpListener when it's not set in the CloudEvent ([commit](18e13635fe))

Signed-off-by: Jon Skeet <jonskeet@google.com>
2021-07-14 18:52:56 +01:00
Jon Skeet 7fba373167 Adjust documented processes based on expectations of releases.
(Maintaining separate package versions now feels like it would be
really awkward, with limited benefit and even some downsides.)

Signed-off-by: Jon Skeet <jonskeet@google.com>
2021-07-10 07:03:22 +01:00
Jon Skeet dbe6163ad6 Remove distributed tracing extension attributes
The future of these is currently in doubt - see https://github.com/cloudevents/spec/pull/751

(We can revert this commit later if they come back.)

Fixes #125

Signed-off-by: Jon Skeet <jonskeet@google.com>
2021-06-03 18:17:19 +01:00
Jon Skeet abfd2a757d Rename AMQP, Kafka and MQTT extension method classes.
Signed-off-by: Jon Skeet <jonskeet@google.com>
2021-05-26 08:16:56 +01:00
Jon Skeet dd97fde565 Additional documentation for more CloudEventFormatter
Signed-off-by: Jon Skeet <jonskeet@google.com>
2021-05-11 20:41:10 +01:00
Jon Skeet 3ae692c1c3 Fix typos in user guide
Signed-off-by: Jon Skeet <jonskeet@google.com>
2021-05-05 08:42:17 +01:00
Jon Skeet 71003be892 First pass at new documentation for 2.0.0-beta.2 onwards
This is definitely a bare minimum, and we'd want more samples etc -
but it's probably enough to release 2.0.0-beta.2 and build up from
there.

Fixes #98.

Fixes #74.

Fixes #55.

Signed-off-by: Jon Skeet <jonskeet@google.com>
2021-05-05 08:27:25 +01:00
Jon Skeet 603317eceb Implement HTTP batch mode for HttpClient/HttpContent
If this pattern looks okay, the next steps are:

- Implement for all other HTTP bindings
- Adjust the IsCloudEvent for all bindings (to ignore batch)
- Implement for any other bindings that support batch

Signed-off-by: Jon Skeet <jonskeet@google.com>
2021-04-15 06:59:43 +01:00
Jon Skeet 41f639d44b Move implementation utility methods into their own namespace
- Preconditions is renamed to Validation
- Validation is public, allowing simplified validation in
  implementation classes
- CloudEvent.ValidateForConversion is now Validation.CheckCloudEventArgument
- All the MimeUtilities methods are non-extension methods (to avoid
  Intellisense suggesting them)
- BinaryDataUtilities is now public (it's much less of an issue once
  it's in a namespace that other users are somewhat discouraged from
  using)
- Documentation explains the purpose of the namespace, albeit briefly

Signed-off-by: Jon Skeet <jonskeet@google.com>
2021-03-29 09:35:17 +01:00
Jon Skeet 1a03dac19e Add guidance for CloudEventFormatter implementers
(And adjust the implementations to match.)

Signed-off-by: Jon Skeet <jonskeet@google.com>
2021-03-19 12:44:21 +00:00
Jon Skeet 83cdc5a1b4 docs: Document expectations for protocol bindings
Signed-off-by: Jon Skeet <jonskeet@google.com>
2021-03-16 11:23:34 +00:00