UNPKG

@dillonkearns/elm-graphql

Version:

<img src="https://cdn.rawgit.com/martimatix/logo-graphqelm/master/logo.svg" alt="dillonearns/elm-graphql logo" width="40%" align="right">

205 lines (115 loc) 5.72 kB
# Changelog All notable changes to [the `@dillonkearns/elm-graphql` npm package](https://www.npmjs.com/package/@dillonkearns/elm-graphql) will be documented in this file. The format is based on [Keep a Changelog](http://keepachangelog.com/en/1.0.0/) and this project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0.html). ## [Unreleased] ## [1.0.0] - 2018-08-23 ### Changed - Generate code for `dillonkearns/elm-graphql`. This requires Elm version 0.19. - If you are upgrading to Elm 0.19 follow [the `dillonkearns/elm-graphql` 0.19 upgrade guide](https://github.com/dillonkearns/elm-graphql/blob/master/docs/elm-19-upgrade.md). You can see more details of what's changed in [the Elm package changelog](https://github.com/dillonkearns/elm-graphql/blob/master/CHANGELOG-ELM-PACKAGE.md#100---2018-08-23). ## BELOW THIS IS FOR the npm `graphqelm` package (elm package`dillonkearns/graphqelm`). Read more about [the rename to `dillonkearns/elm-graphql`](https://github.com/dillonkearns/elm-graphql/issues/23). ## [3.1.12] - 2018-04-15 ### Fixed - Fix [#55](https://github.com/dillonkearns/elm-graphql/issues/55). Encoding was incorrect for Elm reserved words because it was incorrectly normalizing input object keys when it should have used the raw keys. ## [3.1.11] - 2018-03-21 ### Fixed - Fix code generation for constructors for circular input objects. Previously, `build<InputObject>` returned records without wrapping them in their type constructors when needed. This worked for plain type aliases but not for the types for self-referential input object types. The code generation is now correct for both of these types. ## [3.1.10] - 2018-03-13 ### Added - Generate `build<InputObject>` constructor functions (#49). ## [3.1.9] - 2018-03-08 ### Fixed - Fixed `RangeError: Maximum call stack size exceeded` that was coming from infinite recursion CLI bug, issue #47. ### Added - Add `--introspection-file` CLI option to usage message. ## [3.1.8] - 2018-03-02 ### Fixed - Normalize all Elm reserved words by appending an `_` (previously only `type` was normalized). Resolves #40 (thanks for pull request #41 @madsflensted!). ## [3.1.7] - 2018-03-01 - Import all `Operation` values (it's rare but possible for schemas to refer to other operations) #45. ## [3.1.6] - 2018-03-01 - Add maybe encoder to pipeline for nullable scalar encoders. Fixes #44. ## [3.1.5] - 2018-02-24 ### Fixed - Fix infinite loop when checking for circular InputObject defs. This resolves issue #47 (the CLI was crashing for graph.cool endpoints). ## [3.1.4] - 2018-02-07 ### Added - Generate type alias for required args to make it easier to annotate consumer code. Fixes #31. ## [3.1.3] - 2018-02-07 ### Fixed - Add support for non-string scalars, fixes issue #37. ## [3.1.2] - 2018-02-06 ### Changed - Use `Decode.nullable` rather than `Decode.maybe` so that decode failures don't incorrectly get swallowed into a `Nothing` values but rather bubble up as `Err` `Results`. ### Added - Generate type alias for optional args to make it easier to annotate consumer code. ## [3.1.1] - 2018-02-04 ### Added - Include type alias for records in the union type for Input Objects with loops. This allows for nicer annotations in consumer code. ## [3.1.0] - 2018-02-04 ### Changed - Generate wrapped record union type for Input Objects with loop (recursive or circular references), and plain type alias for Input Objects with no loop. ## [3.0.1] - 2018-02-01 ### Fixed - Fix issue with type generation for InputObject type aliases that contain a List type. ## [3.0.0] - 2018-02-01 ### Fixed - Generate InputObjects as types (not type aliases) inside a single file to allow for recursive or circular input types. ## [2.1.3] - 2018-01-28 ### Added - Add log statements to show progress while running CLI. ### Changed - Include deprecated fields by default. Add `--excludeDeprecated` CLI flag in place of `--includeDeprecated`. ## [2.1.2] - 2018-01-20 ### Changed - Generate special module for Subscriptions. ## [2.1.1] - 2018-01-17 ### Changed - Renamed type variables from `selection` to `decodesTo` for clarity. - Updated code generation to use type and module name `Field` rather than `FieldDecoder` for elm package version 7.0.0. ## [2.1.0] - 2018-01-13 ### Fixed - Single-letter names no longer cause exceptions (like `x` or `y`). ### Changed - Update name normalization strategy to make only the minimal change to make a name valid (that is, put leading underscores at the tail, and make sure the first letter is the correct case). Unless it is ALL_UPPERCASE_UNDERSCORE_SEPARATED_NAME, then make it ClassCase. ## [2.0.3] - 2018-01-13 ### Added - Generate metadata json file with target elm package version and npm package version. ### Removed - Remove npm version number and target elm package version number from comments on generated modules to reduce diff noise in future updates. ## [2.0.2] - 2018-01-11 ### Fixed - Fixed error on windows related to shelling out. ### Removed - Stopped generating unnecessary InputObject type definitions file. ## [2.0.1] - 2018-01-10 ### Added - Add `--output` flag to command line to choose a directory other than `./src` for generated output - Support intropsection json files with no top-level `data` json key. ## [2.0.0] - 2018-01-10 ### Added - Generate Scalars module with type definitions/constructors for each custom scalar. - Experimental `--introspection-file` flag to allow users to pass in a file with the result of the introspection query. This may change in the future. ## [1.0.1] - 2018-01-08 ### Added - Generate InputObject modules for type-safe input objects.