Skip to content

Instantly share code, notes, and snippets.

@smoya
Last active Jan 20, 2022
Embed
What would you like to do?
AsyncAPI Spec ecosystem update: 30 Nov - 31 Dec 2021

AsyncAPI Spec and parsers update (30 Nov - 31 Dec 2021)

I plan to write periodic updates about the AsyncAPI Spec and parsers every ~2 weeks (I hope you are ok with it). This is not an official AsyncAPI update but a personal summary I volunteer to do.

What do I mean by AsyncAPI Spec ecosystem? As most of the work around the AsyncAPI Spec is not only related with https://github.com/asyncapi/spec, each update will include the most significant recent activity from the following repositories, which I consider them to be part of the same ecosystem:

This time, as an exception (it is the first one I do), I wanted to include updates from the whole month (30 Nov - 31 Dec 2021).

Feel free to ask me to include any other repository if you consider it makes sense. Also, in case you want to help me with these updates :)

Spec

Spec v2.3.0 work is progressing!

Spec v3.0.0 work is slowly progressing!

As always, You can find some of the most critical progress on the AsyncAPI spec v3.0.0 release journal

You can find a list (grooming pending) of candidates to be included in v3.0.0 at https://github.com/asyncapi/spec/milestone/18.

Spec also had some more activity

spec-json-schemas had some important activity

  • To ease maintainability of AsyncAPI JSON Schemas, Jonas Lagoni has been doing a rework on them, mainly splitting all definitions into different files they can be bundled later to provide a unique file to use. The PR is available here, and it has been going through several iterations. Some people have already reviewed it. As always, eyes are welcome and needed, so I encourage you to go and take a look!
  • On the other hand, Lukasz Gornicki opened the issue remove js and go package and probably move JSON schemas should stay alone in the repo. The TL;DR is that it has been proposed to create separate repositories for each different language implementation (Node and Go at this time) of that package instead of using monorepo. All those repositories will have an up-to-date copy of the JSON Schema definitions (via GH Actions). Work would start after v2.3.0 release. A discussion about it can be found on the issue.

parser-js v1.13.1 is out + some important issues and updates!

avro-schema-parser got a PR to fix a bug

fix: avro parser now handles record reuse in definitions by Jonathan is waiting for your review!

Commits

Commits by repo: Commits by repo

# Commits # Authors # Repositories
26 8 10
Repository Commits Authors Added Lines Removed Lines Avg. LInes/Commit Avg. Files/Commit
https://github.com/asyncapi/spec.git 10 6 335 120 45.5 3.5
https://github.com/asyncapi/parser-js.git 6 4 276 18 49 1.833
https://github.com/asyncapi/spec-json-schemas.git 3 2 1,496 1 499 1.333
https://github.com/asyncapi/converter-go.git 1 1 3 6 9 1
https://github.com/asyncapi/converter-js.git 1 1 8 0 8 1
https://github.com/asyncapi/extensions-catalog.git 1 1 8 0 8 1
https://github.com/asyncapi/openapi-schema-parser.git 1 1 8 0 8 1
https://github.com/asyncapi/parser-go.git 1 1 8 0 8 1
https://github.com/asyncapi/raml-dt-schema-parser.git 1 1 9 0 9 1
https://github.com/asyncapi/tck.git 1 1 8 0 8 1

Issues

Issues closed by repo

Issues closed by repo

Issues by status

# Issues # Submitters # Assignees Median Time Open (Days)
18 11 0 16.04
Repository # Issues Open # Submitters
https://github.com/asyncapi/parser-api 6 1
https://github.com/asyncapi/spec 4 4
https://github.com/asyncapi/avro-schema-parser 3 3
https://github.com/asyncapi/parser-js 3 3
https://github.com/asyncapi/raml-dt-schema-parser 1 1
https://github.com/asyncapi/spec-json-schemas 1 1

Issues Backlog

Summary URL Open Date Days Open
Let channels be identified by an ID rather than their address. asyncapi/spec#663 Dec 1, 2021 @ 12:39:41.000 29.04
Support of allOf, oneOf or anyOf at payload level asyncapi/avro-schema-parser#106 Dec 1, 2021 @ 17:16:54.000 28.77
Define how hasX need to be interpreted asyncapi/parser-api#31 Dec 6, 2021 @ 15:58:21.000 23.86
Define how to handle derferencing asyncapi/parser-api#30 Dec 6, 2021 @ 15:51:33.000 23.86
Define how to handle schemaFormats asyncapi/parser-api#29 Dec 6, 2021 @ 15:49:57.000 23.86
Should we have freeze period on release process? asyncapi/spec#667 Dec 7, 2021 @ 13:57:33.000 22.98
Maybe make stringify function available on the instance of AsyncAPIDocument class asyncapi/parser-js#421 Dec 9, 2021 @ 15:25:01.000 20.88
Clarification on URL and it's resolution rules asyncapi/spec#674 Dec 14, 2021 @ 10:05:37.000 16.14
Define how to handle unknown schema and message id's asyncapi/parser-api#34 Dec 14, 2021 @ 09:28:38.000 16.13
Work on 2.3 release asyncapi/spec#675 Dec 14, 2021 @ 14:48:17.000 15.95
[New Doc 📑]: specify which version of npm is required to run npm install. asyncapi/parser-js#427 Dec 15, 2021 @ 14:20:04.000 14.93
Misleading validation errors for Security Scheme Objects asyncapi/parser-js#428 Dec 15, 2021 @ 21:47:49.000 14.62
Clearly define how traits should be applied asyncapi/parser-api#36 Dec 17, 2021 @ 15:31:28.000 12.88
Clarify the intention of server URL asyncapi/parser-api#37 Dec 17, 2021 @ 15:40:26.000 12.87
Missing visualization of Avro schema with reference asyncapi/avro-schema-parser#113 Dec 22, 2021 @ 23:06:35.000 7.53
Avro parser does not store sub definitions asyncapi/avro-schema-parser#111 Dec 23, 2021 @ 22:56:07.000 6.53

Pull Requests

Pull Requests opened: Pull Requests opened

Pull Requests closed: Pull Requests closed

Pull Requests by status

# Pull Requests # Submitters # Repositories
32 9 11
Repository Pull Requests Submitters Avg. Days Open
asyncapi/spec 10 5 8.956
asyncapi/parser-js 8 6 7.356
asyncapi/spec-json-schemas 6 4 11.453
asyncapi/avro-schema-parser 1 1 5.78
asyncapi/converter-go 1 1 0.02
asyncapi/converter-js 1 1 0.27
asyncapi/extensions-catalog 1 1 0.01
asyncapi/openapi-schema-parser 1 1 0.01
asyncapi/parser-go 1 1 0.06
asyncapi/raml-dt-schema-parser 1 1 11.78
asyncapi/tck 1 1 8.96

Pull Requests Backlog

Summary URL Open Date Days Open
feat: allow servers and channels to be defined as components asyncapi/spec#665 Dec 2, 2021 @ 16:56:51.000 27.86
feat: allow servers and channels to be defined as components asyncapi/spec-json-schemas#133 Dec 2, 2021 @ 16:06:01.000 27.85
feat: add Solace bindings to the list of supported bindings in the spec. asyncapi/spec#666 Dec 6, 2021 @ 17:36:34.000 23.83
docs: extend example for kafka with x509 security asyncapi/spec#670 Dec 8, 2021 @ 11:48:58.000 22.07
fix: upgrade @asyncapi/specs asyncapi/parser-js#423 Dec 9, 2021 @ 16:37:56.000 20.83
feat: allow servers and channels to be fetched from components asyncapi/parser-js#430 Dec 16, 2021 @ 17:58:39.000 13.78
fix: avro parser now handles record reuse in definitions asyncapi/avro-schema-parser#112 Dec 24, 2021 @ 17:59:27.000 5.78
feat: release version 2.3.0 asyncapi/spec#681 Dec 27, 2021 @ 11:12:35.000 3.1
feat: release for version 2.3.0 of the spec asyncapi/spec-json-schemas#142 Dec 27, 2021 @ 11:14:07.000 3.06
feat: release for version 2.3.0 of the spec asyncapi/parser-js#433 Dec 27, 2021 @ 12:04:32.000 3.02
feat: add Solace to the list of bindings. asyncapi/spec-json-schemas#143 Dec 28, 2021 @ 19:07:06.000 1.73
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment