All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.
- AsyncAPI 2.6.0 message parses Avro, Json and OpenAPI schemas
- Bindings were updated:
- AMQP: 0.1.0, 0.2.0, 0.3.0
- AMQP1: 0.1.0
- Anypoint MQ: 0.1.0
- Google Cloud Pub/Sub: 0.1.0, 0.2.0
- HTTP: 0.1.0, 0.2.0, 0.3.0, 0.4.0, 0.5.0
- IBM MQ: 0.1.0
- JMS: 0.0.1
- Apache Kafka: 0.1.0, 0.3.0, 0.4.0, 0.5.0
- Mercure: 0.1.0
- MQTT: 0.1.0, 0.2.0
- MQTT 5: 0.1.0, 0.2.0
- NATS: 0.1.0
- Apache Pulsar: 0.1.0
- Redis: 0.1.0
- Amazon SNS: 0.1.0
- Solace: 0.1.0, 0.2.0, 0.3.0, 0.4.0
- Amazon SQS: 0.1.0, 0.2.0
- STOMP: 0.1.0
- WebSockets: 0.1.0
- All schemas now are located in
schemas
package - All bindings now are located in
bindings
package - Bindings structure was changed. Each binding now holds
channel
,server
,message
,operation
inside package - Bindings now are common for v2 and v3 versions
- OpenAPI Schema: 3.0.0, 3.0.1, 3.0.2, 3.0.3
- Avro Schema: 1.9.0, 1.9.1, 1.9.2, 1.10.0, 1.10.1, 1.10.2, 1.11.0, 1.11.1
- JsonSchema: Draft-07
- MultiFormatSchema can hold AsyncAPI, OpenAPI, Avro and Json Schemas
- Schema was divided to AsyncAPISchema and JsonSchema
Kudos to:
- https://github.com/jaydeepk
- https://github.com/ctasada
- https://github.com/guillaumelamirand
- https://github.com/ivanalayan15
- https://github.com/Crain-32
- https://github.com/wrwks
- https://github.com/dennis-brinley
- AsyncAPI 3.0.0
- Reference was moved from
com.asyncapi.v2._6_0.model
tocom.asyncapi.v2
- 2.0.0:
Schema.multipleOf
type was changed toNumber
- 2.6.0:
- Specification:
AsyncAPI.servers
now can hold server objects and referencesAsyncAPI.info
now has default value - empty Info objectAsyncAPI.channels
now has default value - empty mapInfo.title
now has default value - empty stringInfo.version
now has default value - empty stringLicense.name
now has default value - empty stringServer.url
now has default value - empty stringServer.protocol
now has default value - empty stringTag.name
now has default value - empty stringCorrelationId.location
now has default value - empty stringOneOfMessages.oneOf
now has default value - empty list
- Bindings:
- AMQP:
AMQPChannelBinding.is
nowis required
and type was changed fromstring
toAMQPChannelType
enum and has default value -routingKey
- AMQP
ExchangeProperties
was extracted and renamed toAMQPChannelExchangeProperties
- AMQP
QueueProperties
was extracted and renamed toAMQPChannelQueueProperties
- Anypoint MQ:
AnypointMQChannelBinding.destinationType
was changed fromstring
toAnypointMQChannelDestinationType
with next default value -queue
- Google Pub/Sub:
- channels:
GooglePubSubChannelBinding.topic
now has default value - empty stringGooglePubSubChannelBinding.messageStoragePolicy
was extracted and renamed toGooglePubSubChannelMessageStoragePolicy
GooglePubSubChannelBinding.schemaSettings
was extracted and renamed toGooglePubSubChannelSchemaSettings
GooglePubSubChannelBinding.schemaSettings
now has default value -GooglePubSubChannelSchemaSettings()
- messages:
GooglePubSubMessageBinding.schema
was extracted and renamed toGooglePubSubMessageSchemaDefinition
- channels:
- IBM MQ:
- channels:
IBMMQChannelBinding.destinationType
type was changed toIBMMQChannelDestinationType
IBMMQChannelBinding.destinationType
now has default value -topic
IBMMQChannelBinding.queue
was extracted and renamed toIBMMQChannelQueueProperties
IBMMQChannelBinding.topic
was extracted and renamed toIBMMQChannelTopicProperties
IBMMQChannelBinding.topic
was extracted and renamed toIBMMQChannelTopicProperties
- messages:
IBMMQMessageBinding.type
type was changed toIBMMQMessageType
IBMMQMessageBinding.type
now has default value -string
IBMMQMessageBinding.expiry
now has default value -0
- channels:
- Kafka:
- channels:
KafkaChannelBinding.topicConfiguration
was extracted and renamed toKafkaChannelTopicConfiguration
- messages:
KafkaMessageBinding.key
type was changed toSchema
KafkaMessageBinding.schemaIdLocation
type was changed toKafkaMessageSchemaIdLocation
- operations:
KafkaOperationBinding.groupId
type was changed toSchema
KafkaOperationBinding.clientId
type was changed toSchema
- channels:
- Pulsar:
PulsarChannelBinding.namespace
now has default value - empty stringPulsarChannelBinding.persistence
type was changed toPulsarChannelPersistence
PulsarChannelBinding.persistence
now has default value -persistent
PulsarChannelBinding.retention
was extracted and renamed toPulsarChannelRetentionDefinition
- WebSocket:
WebSocketsChannelBinding.method
type was changed toWebSocketsChannelMethod
WebSocketsChannelBinding.query
type was changed toSchema
WebSocketsChannelBinding.headers
type was changed toSchema
- Anypoint MQ:
AnypointMQMessageBinding.headers
type was changed toSchema
- HTTP:
- messages:
HTTPMessageBinding.headers
type was changed toSchema
- operations:
HTTPOperationBinding.type
type was changed toHTTPOperationType
HTTPOperationBinding.type
now has default value -request
HTTPOperationBinding.method
type was changed toHTTPOperationMethod
HTTPOperationBinding.query
type was changed toSchema
- messages:
- Solace:
- operations:
SolaceOperationBinding.destinations
type was changed toList<SolaceOperationDestination>
SolaceDestination
was extracted end renamed toSolaceOperationDestination
SolaceQueue
was renamed toSolaceOperationQueue
SolaceTopic
was renamed toSolaceOperationTopic
- operations:
- MQTT:
- servers:
LastWillConfiguration
was renamed toMQTTServerLastWillConfiguration
- servers:
- AMQP:
- Specification:
- AsyncAPI 2.6.0
- New Bindings
- New Security Schemes
- Specification components now can be extended with
x-*
- Bindings now are common for
2.6.0
and2.0.0
- Schema now is common for
2.6.0
and2.0.0
- Security Scheme now is common for
2.6.0
and2.0.0
Schema.additionalProperties
now can beboolean
orSchema
- Schema.minimum, Schema.exclusiveMinimum, Schema.maximum, Schema.exclusiveMaximum now are BigDecimal:
- Specification components doesn't overrides given ObjectMapper - #128
- 2.0.0 - typo in Components serverBindings: ServerBinding instead of ServerBindingsDeserializer
- 2.0.0 - fixed typo in ServerVariable field name - example was renamed to examples
- Error while parsing of specifications when Reference was recognized as Schema
com.asyncapi.v2.schema.Schema
fieldenumValues
was renamed toenumValue
com.asyncapi.v2.model.schema.Type
was changed to class- Updated description of
examples
forcom.asyncapi.v2.model.channel.message.Message
Initial release of AsyncAPI 2.0.0
- AsyncAPI 2.0.0