Skip to content

Commit

Permalink
Chnagelog for v1.4.1
Browse files Browse the repository at this point in the history
  • Loading branch information
OlegIlyenko committed May 11, 2018
1 parent b090aea commit a095136
Show file tree
Hide file tree
Showing 2 changed files with 55 additions and 5 deletions.
59 changes: 55 additions & 4 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,10 +1,61 @@
## Upcoming
## v1.4.1 (2018-05-12)

* Added a small `Cache` abstraction and replaced `TrieMap`-based cache implementation with `ConcurrentHashMap`. This change introduces
potential minor performance improvements and compatibility with [GraalVM](https://www.graalvm.org/) `native-image`.
* Added support for `extend schema` in SDL **(spec change)** (#362). It adds following syntax in the SDL:

```graphql
extend schema @extraDirective {
mutation: MutationType
}
```
* Ambiguity with null variable values and default values **(spec change)** (#359).
* Add optional 'extensions' entry to errors **(spec change)** (#358).

**CAUTION: breaking change.** All additional error object fields that were provided via `HandledException` are now added to the `extensions` field:

```graphql
// Before v1.4.1
{
"data": {
"books": null
},
"errors": [{
"message": "Can't access the database :'(",
"path": ["books"],
"locations": [{"line": 3, "column": 11}],
"errorCode": "DATABASE_DOWN",
"mitigationStrategy": "Panic!"
}]
}

// After v1.4.1
{
"data": {
"books": null
},
"errors": [{
"message": "Can't access the database :'(",
"path": ["books"],
"locations": [{"line": 3, "column": 11}],
"extensions": {
"errorCode": "DATABASE_DOWN",
"mitigationStrategy": "Panic!"
}
}]
}
```

For backward-compatibility, `HandledException` now provides 2 additional fields: `addFieldsInExtensions` (by default `true`) and `addFieldsInError` (by default `false`). You can also set both of these flags to `true` in order to provide a migration path for the client applications.
* Ensure interface has at least 1 concrete type **(spec change)** (#360). It is potentially a **minor breaking change**. You you have non-implemented interfaces in your schema, you temporary remove `InterfaceMustHaveImplementationValidationRule` schema validation rule.
* Added a small `Cache` abstraction and replaced `TrieMap`-based cache implementation with `ConcurrentHashMap`. This change introduces potential minor performance improvements and compatibility with [GraalVM](https://www.graalvm.org/) `native-image`.
* Added `toAst` helper for different schema elements, like fields, enum values and types (#367)
* Added macro setting to transform enum values' names with a macro setting (#350). Big thanks to @fehu for this contribution! The `UppercaseValues` macro setting is now deprecated in favour of more flexible `TransformValueNames`.
* Fixed typo in `BeforeFieldResult` field name (#363). Big thanks to @Codier for this contribution!
* Adjusted `KnownTypeNames` validation to not validate SDL definitions because they are validated in the schema materializer (#354).
* Added option to disable parsing of AST locations and comments (#357)
* Don't allow `ObjectType`s derived from case classes to overwrite each other (#345) Big thanks to @simonsaffer for this contribution!
* Improved query parsing performance by optimizing the AST location tracking (#351). Big thanks to @guymers for this contribution!
* Fixed new line tracking when parsing block-strings
* Ast schema builder now considers `additionalTypes` when it validates the type extensions
* `KnownDirectives` validation now correctly handles type and schema extensions
* Updated `sangria-marshalling-api` to version 1.0.3 (should be backwards compatible with v1.0.0).

## v1.4.0 (2018-02-20)
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,6 @@ import sangria.ast.AstVisitorCommand
import sangria.util.StringUtil
import sangria.validation._


/**
* Known type names
*
Expand Down

0 comments on commit a095136

Please sign in to comment.