Skip to content

Commit 8e8a632

Browse files
Release v0.4.0 (#174)
It's been a while, time for a release! This commit updates the changelog including a few missing entries, and I'll tag it with the release once it lands. Fixes #163 Test plan: Craig tested a fairly recent main branch in webapp.
1 parent 49a26af commit 8e8a632

File tree

1 file changed

+14
-1
lines changed

1 file changed

+14
-1
lines changed

docs/CHANGELOG.md

Lines changed: 14 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -22,18 +22,31 @@ When releasing a new version:
2222

2323
### Breaking changes:
2424

25+
### New features:
26+
27+
### Bug fixes:
28+
29+
## v0.4.0
30+
31+
Version 0.4.0 adds several new configuration options, as well as additional methods to simplify the use of interfaces.
32+
33+
### Breaking changes:
34+
2535
- The `Config` fields `Schema` and `Operations` are now both of type `StringList`. This does not affect configuration via `genqlient.yaml`, only via the Go API.
2636
- The `typename` and `bind` options may no longer be combined; doing so will now result in an error. In practice, any such use was likely in error (and the rules for which would win were confusing and undocumented).
2737

2838
### New features:
2939

3040
- genqlient now generates getter methods for all fields, even those which do not implement a genqlient-generated interface; this can be useful for callers who wish to define their own interface and have several unrelated genqlient types which have the same fields implement it.
31-
- genqlient config now accepts either a single or multiple files for the `schema` and `operations` fields (previously it accepted only one `schema`, and required a list of `operations` files).
41+
- The new `struct_references` option automatically sets the `pointer` and `omitempty` options on fields of struct type; see the [`genqlient.yaml` documentation](docs/genqlient.yaml) for details.
42+
- genqlient config now accepts either a single or multiple files (or globs) for the `schema` and `operations` fields (previously it accepted only one `schema`, and required a list of `operations` files).
43+
- genqlient now looks for its config file as `[.]genqlient.y[a]ml` in any ancestor directory, if unspecified, rather than only as `genqlient.yaml` in the current directory.
3244
- The `typename` option can now be used on basic types (string, int, etc) as well as structs; this can be useful to have genqlient define new types like `type Language string` and use that type for specified fields.
3345

3446
### Bug fixes:
3547

3648
- In certain very rare cases involving duplicate fields in fragment spreads, genqlient would generate code that failed to compile due to duplicate methods not getting promoted; genqlient now generates correct types. (See #126 for a more complete description.)
49+
- genqlient no longer rejects schemas which include the implicitly declared types (`scalar String`, etc.) explicitly; this makes it easier to use schemas generate via introspection.
3750

3851
## v0.3.0
3952

0 commit comments

Comments
 (0)