async-graphql/CHANGELOG.md

184 lines
5.5 KiB
Markdown
Raw Normal View History

# Changelog
All notable changes to this project will be documented in this file.
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
2021-04-04 04:05:54 +00:00
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
## [Unreleased]
### Changed
- Rework `Extension`, now fully supports asynchronous, better to use than before, and can achieve more features.
Because it contains a lot of changes _(if you don't have a custom extension, it will not cause the existing code to fail to compile)_, the major version will be updated to `3.0.0`.
## [2.7.4] 2021-04-02
- Add the `BuildHasher` generic parameter to `dataloader::HashMapCache` to allow custom hashing algorithms. [#455](https://github.com/async-graphql/async-graphql/issues/455)
2021-04-02 03:20:00 +00:00
## [2.7.3] 2021-04-02
2021-04-01 12:57:31 +00:00
## Added
2021-04-01 07:53:23 +00:00
- Add cache support for DataLoader. [#455](https://github.com/async-graphql/async-graphql/issues/455)
- Implements `ScalarType` for `serde_json::Value`.
- Add `SelectionField::alias` and `SelectionField::arguments` methods.
2021-04-01 07:53:23 +00:00
2021-04-01 12:57:31 +00:00
## Fixed
- Prevent Warp WS Close, Ping, and Pong messages from being parsed as GraphQL [#459](https://github.com/async-graphql/async-graphql/pull/459)
- Fix Schema::sdl() does not include subscription definitions. [#464](https://github.com/async-graphql/async-graphql/issues/464)
2021-04-02 03:20:00 +00:00
## [2.7.2] 2021-04-01
2021-04-01 07:53:23 +00:00
## Removed
- Remove `SchemaBuilder::override_name` method. [#437](https://github.com/async-graphql/async-graphql/issues/437)
## Added
- Add `name` and `visible` attributes for `Newtype` macro for define a new scalar. [#437](https://github.com/async-graphql/async-graphql/issues/437)
- `NewType` macro now also implements `From<InnerType>` and `Into<InnerType>`.
2021-04-02 03:20:00 +00:00
## [2.7.1] 2021-03-31
- Add `Request::disable_introspection` method. [#456](https://github.com/async-graphql/async-graphql/issues/456)
2021-04-02 03:20:00 +00:00
## [2.7.0] 2021-03-27
2021-03-26 04:06:13 +00:00
## Fixed
2021-03-25 01:09:53 +00:00
- Fix chrono-tz integration. [#452](https://github.com/async-graphql/async-graphql/pull/452)
2021-03-26 04:06:13 +00:00
## Changed
- Rework Extension & TracingExtension & OpenTelemetryExtension
2021-03-24 11:27:19 +00:00
## [2.6.5] - 2021-03-24
- In websocket, if the client sends `start` before `connection_init`, the connection will be immediately disconnected and return `1011` error. [#451](https://github.com/async-graphql/async-graphql/issues/451)
2021-03-22 05:31:38 +00:00
## [2.6.4] - 2021-03-22
- Fix docs.
## [2.6.3] - 2021-03-22
2021-03-20 11:42:00 +00:00
### Added
- Add `extension::OpenTelemetry`.
### Removed
- Remove `TracingConfig`, now Request span always takes the current span as the parent, so this option is no longer needed.
- Remove `multipart` feature.
2021-03-20 11:42:00 +00:00
### Changed
- Now all features are not activated by default.
## [2.6.2] - 2021-03-20
- Add `SchemaBuilder::enable_subscription_in_federation` method. [#449](https://github.com/async-graphql/async-graphql/issues/449)
2021-03-20 02:35:39 +00:00
## [2.6.1] - 2021-03-19
2021-03-22 05:31:38 +00:00
- Fix tracing extension doesn't work with async code. [#448](https://github.com/async-graphql/async-graphql/issues/448)
2021-03-20 02:35:39 +00:00
2021-03-18 02:21:57 +00:00
## [2.6.0] - 2021-03-18
- Add [ComplexObject](https://docs.rs/async-graphql/2.6.0/async_graphql/attr.ComplexObject.html) macro.
## [2.5.14] - 2021-03-14
2021-03-12 07:41:10 +00:00
- Add `DataLoader::loader` method. [#441](https://github.com/async-graphql/async-graphql/issues/441)
- Fix the validation does not work on some inline fragments.
2021-03-12 07:41:10 +00:00
2021-03-10 01:24:34 +00:00
## [2.5.13] - 2021-03-09
- Support generics in Subscription types. [#438](https://github.com/async-graphql/async-graphql/pull/438)
2021-03-09 10:25:39 +00:00
## [2.5.12] - 2021-03-09
- Remove unnecessary Box from WebSocket messages.
- Export subscription type to Federation SDL. (for [GraphGate](https://github.com/async-graphql/graphgate) 😁)
- Add `extends` attribute for derive macros Subscription and MergedSubscription.
- Add `SchemaBuilder::override_name` method. [#437](https://github.com/async-graphql/async-graphql/issues/437)
## [2.5.11] - 2021-03-07
- Execute `_entity` requests in parallel. [#431](https://github.com/async-graphql/async-graphql/issues/431)
## [2.5.10] - 2021-03-06
- Add descriptions for the exported Federation SDL.
2021-02-28 01:42:13 +00:00
## [2.5.9] - 2021-02-28
### Changed
- Moved `Variables` from `async_graphql::context::Variables` to `async_graphql::Variables`.
## [2.5.8] - 2021-02-27
### Added
- Allow the `deprecation` attribute to have no reason.
```rust
#[derive(SimpleObject)]
struct MyObject {
#[graphql(deprecation)]
a: i32,
#[graphql(deprecation = true)]
b: i32,
#[graphql(deprecation = false)]
c: i32,
#[graphql(deprecation = "reason")]
d: i32,
}
```
## [2.5.7] - 2021-02-23
### Fixed
- Fix the problem that the borrowing lifetime returned by the `Context::data` function is too small.
2021-02-23 04:53:25 +00:00
## [2.5.6] - 2021-02-23
### Changed
2021-02-23 04:53:25 +00:00
- When introspection is disabled, introspection related types are no longer registered.
2021-02-22 01:54:26 +00:00
## [2.5.5] - 2021-02-22
### Added
2021-02-22 01:54:26 +00:00
- Add support for Federation [nested keys](https://www.apollographql.com/docs/federation/entities/#defining-a-compound-primary-key).
## [2.5.4] - 2021-02-15
### Fixed
- Fixed the error that the directive locations `FIELD_DEFINITION` and `ENUM_VALUE` cannot be parsed.
## [2.5.3] - 2021-02-13
### Fixed
- Fixed [#409](https://github.com/async-graphql/async-graphql/issues/409)
## [2.5.2] - 2021-02-06
### Added
2021-02-06 05:19:22 +00:00
- Add subscription support for tide with [tide-websockets](https://crates.io/crates/tide-websockets).
### Fixed
- Fixed the bug that can accept subscription requests during the initialization of WebSocket.
- Fixed GraphQL over WebSocket Protocol does not support ConnectionError events. [#406](https://github.com/async-graphql/async-graphql/issues/406)