conformance
conformance copied to clipboard
Support table generation
This is a work in progress to produce a supported features table from yaml config via a cli.
The work to be done is to add more support for URLs to link back to specs and features at versions. See https://github.com/cloudevents/spec/pull/1048 for the history.
The config template looks like this:
(╯°□°)╯︵ go run ./cmd/features template LANG
language: LANG
versions:
v1.0:
core: false
formats:
avro: false
amqp: false
json: false
protobuf: false
bindings:
amqp:
binary: false
structured: false
http:
binary: false
structured: false
batch: false
kafka:
binary: false
structured: false
mqtt:
binary: false
structured: false
nats:
binary: false
structured: false
web-sockets:
binary: false
structured: false
And the table is rendered as such:
(╯°□°)╯︵ go run ./cmd/features render ./cmd/features/testdata/foo.yaml ./cmd/features/testdata/bar.yaml ./cmd/features/testdata/baz.yaml
Feature | Foo | Bar | Baz | |
---|---|---|---|---|
v1.0 | ||||
CloudEvents Core | :heavy_check_mark: | :heavy_check_mark: | :x: | |
Avro Event Format | :heavy_check_mark: | :heavy_check_mark: | :x: | |
AMQP Event Format | :heavy_check_mark: | :heavy_check_mark: | :x: | |
JSON Event Format | :heavy_check_mark: | :heavy_check_mark: | :x: | |
Protobuf Event Format | :heavy_check_mark: | :heavy_check_mark: | :x: | |
AMQP | Binary | :heavy_check_mark: | :heavy_check_mark: | :x: |
Structured | :heavy_check_mark: | :heavy_check_mark: | :x: | |
HTTP | Binary | :heavy_check_mark: | :heavy_check_mark: | :x: |
Structured | :heavy_check_mark: | :heavy_check_mark: | :x: | |
Batch | :heavy_check_mark: | :heavy_check_mark: | :x: | |
Kafka | Binary | :heavy_check_mark: | :heavy_check_mark: | :x: |
Structured | :heavy_check_mark: | :heavy_check_mark: | :x: | |
MQTT | Binary | :heavy_check_mark: | :heavy_check_mark: | :x: |
Structured | :heavy_check_mark: | :heavy_check_mark: | :x: | |
NATS | Binary | :heavy_check_mark: | :heavy_check_mark: | :x: |
Structured | :heavy_check_mark: | :heavy_check_mark: | :x: | |
Web Sockets | Binary | :heavy_check_mark: | :heavy_check_mark: | :x: |
Structured | :heavy_check_mark: | :heavy_check_mark: | :x: | |
v0.3 | ||||
CloudEvents Core | :heavy_check_mark: | :x: | :x: | |
Avro Event Format | :heavy_check_mark: | :x: | :x: | |
AMQP Event Format | :heavy_check_mark: | :x: | :x: | |
JSON Event Format | :heavy_check_mark: | :x: | :x: | |
Protobuf Event Format | :heavy_check_mark: | :x: | :x: | |
AMQP | Binary | :heavy_check_mark: | :x: | :x: |
Structured | :heavy_check_mark: | :x: | :x: | |
HTTP | Binary | :heavy_check_mark: | :x: | :x: |
Structured | :heavy_check_mark: | :x: | :x: | |
Batch | :heavy_check_mark: | :x: | :x: | |
Kafka | Binary | :heavy_check_mark: | :x: | :x: |
Structured | :heavy_check_mark: | :x: | :x: | |
MQTT | Binary | :heavy_check_mark: | :x: | :x: |
Structured | :heavy_check_mark: | :x: | :x: | |
NATS | Binary | :heavy_check_mark: | :x: | :x: |
Structured | :heavy_check_mark: | :x: | :x: | |
Web Sockets | Binary | :heavy_check_mark: | :x: | :x: |
Structured | :heavy_check_mark: | :x: | :x: |
I am hoping someone can fork this and continue the work if there is interest. Thanks!