graphile-build-pg 5.0.0-beta.3 → 5.0.0-beta.30

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (185) hide show
  1. package/CHANGELOG.md +804 -0
  2. package/README.md +6 -8
  3. package/dist/behavior.d.ts +1 -2
  4. package/dist/behavior.d.ts.map +1 -1
  5. package/dist/behavior.js +6 -16
  6. package/dist/behavior.js.map +1 -1
  7. package/dist/index.d.ts +105 -2
  8. package/dist/index.d.ts.map +1 -1
  9. package/dist/index.js +6 -5
  10. package/dist/index.js.map +1 -1
  11. package/dist/plugins/PgAllRowsPlugin.d.ts +9 -0
  12. package/dist/plugins/PgAllRowsPlugin.d.ts.map +1 -1
  13. package/dist/plugins/PgAllRowsPlugin.js +12 -0
  14. package/dist/plugins/PgAllRowsPlugin.js.map +1 -1
  15. package/dist/plugins/PgAttributeDeprecationPlugin.d.ts +7 -0
  16. package/dist/plugins/PgAttributeDeprecationPlugin.d.ts.map +1 -1
  17. package/dist/plugins/PgAttributeDeprecationPlugin.js.map +1 -1
  18. package/dist/plugins/PgAttributesPlugin.d.ts +14 -1
  19. package/dist/plugins/PgAttributesPlugin.d.ts.map +1 -1
  20. package/dist/plugins/PgAttributesPlugin.js +82 -45
  21. package/dist/plugins/PgAttributesPlugin.js.map +1 -1
  22. package/dist/plugins/PgBasicsPlugin.d.ts +42 -12
  23. package/dist/plugins/PgBasicsPlugin.d.ts.map +1 -1
  24. package/dist/plugins/PgBasicsPlugin.js +147 -26
  25. package/dist/plugins/PgBasicsPlugin.js.map +1 -1
  26. package/dist/plugins/PgCodecsPlugin.d.ts +18 -0
  27. package/dist/plugins/PgCodecsPlugin.d.ts.map +1 -1
  28. package/dist/plugins/PgCodecsPlugin.js +267 -215
  29. package/dist/plugins/PgCodecsPlugin.js.map +1 -1
  30. package/dist/plugins/PgConditionArgumentPlugin.d.ts +18 -0
  31. package/dist/plugins/PgConditionArgumentPlugin.d.ts.map +1 -1
  32. package/dist/plugins/PgConditionArgumentPlugin.js +26 -5
  33. package/dist/plugins/PgConditionArgumentPlugin.js.map +1 -1
  34. package/dist/plugins/PgConditionCustomFieldsPlugin.d.ts +8 -0
  35. package/dist/plugins/PgConditionCustomFieldsPlugin.d.ts.map +1 -1
  36. package/dist/plugins/PgConditionCustomFieldsPlugin.js +9 -4
  37. package/dist/plugins/PgConditionCustomFieldsPlugin.js.map +1 -1
  38. package/dist/plugins/PgConnectionArgOrderByDefaultValuePlugin.d.ts +7 -0
  39. package/dist/plugins/PgConnectionArgOrderByDefaultValuePlugin.d.ts.map +1 -1
  40. package/dist/plugins/PgConnectionArgOrderByDefaultValuePlugin.js.map +1 -1
  41. package/dist/plugins/PgConnectionArgOrderByPlugin.d.ts +9 -0
  42. package/dist/plugins/PgConnectionArgOrderByPlugin.d.ts.map +1 -1
  43. package/dist/plugins/PgConnectionArgOrderByPlugin.js +34 -14
  44. package/dist/plugins/PgConnectionArgOrderByPlugin.js.map +1 -1
  45. package/dist/plugins/PgConnectionTotalCountPlugin.d.ts +8 -0
  46. package/dist/plugins/PgConnectionTotalCountPlugin.d.ts.map +1 -1
  47. package/dist/plugins/PgConnectionTotalCountPlugin.js +8 -0
  48. package/dist/plugins/PgConnectionTotalCountPlugin.js.map +1 -1
  49. package/dist/plugins/PgCustomTypeFieldPlugin.d.ts +18 -0
  50. package/dist/plugins/PgCustomTypeFieldPlugin.d.ts.map +1 -1
  51. package/dist/plugins/PgCustomTypeFieldPlugin.js +424 -285
  52. package/dist/plugins/PgCustomTypeFieldPlugin.js.map +1 -1
  53. package/dist/plugins/PgEnumTablesPlugin.d.ts +6 -0
  54. package/dist/plugins/PgEnumTablesPlugin.d.ts.map +1 -1
  55. package/dist/plugins/PgEnumTablesPlugin.js +81 -36
  56. package/dist/plugins/PgEnumTablesPlugin.js.map +1 -1
  57. package/dist/plugins/PgFakeConstraintsPlugin.d.ts +3 -0
  58. package/dist/plugins/PgFakeConstraintsPlugin.d.ts.map +1 -1
  59. package/dist/plugins/PgFakeConstraintsPlugin.js +3 -1
  60. package/dist/plugins/PgFakeConstraintsPlugin.js.map +1 -1
  61. package/dist/plugins/PgFirstLastBeforeAfterArgsPlugin.d.ts +5 -0
  62. package/dist/plugins/PgFirstLastBeforeAfterArgsPlugin.d.ts.map +1 -1
  63. package/dist/plugins/PgFirstLastBeforeAfterArgsPlugin.js +12 -2
  64. package/dist/plugins/PgFirstLastBeforeAfterArgsPlugin.js.map +1 -1
  65. package/dist/plugins/PgIndexBehaviorsPlugin.d.ts +20 -0
  66. package/dist/plugins/PgIndexBehaviorsPlugin.d.ts.map +1 -1
  67. package/dist/plugins/PgIndexBehaviorsPlugin.js +45 -10
  68. package/dist/plugins/PgIndexBehaviorsPlugin.js.map +1 -1
  69. package/dist/plugins/PgInterfaceModeUnionAllRowsPlugin.d.ts +9 -0
  70. package/dist/plugins/PgInterfaceModeUnionAllRowsPlugin.d.ts.map +1 -1
  71. package/dist/plugins/PgInterfaceModeUnionAllRowsPlugin.js +29 -85
  72. package/dist/plugins/PgInterfaceModeUnionAllRowsPlugin.js.map +1 -1
  73. package/dist/plugins/PgIntrospectionPlugin.d.ts +3 -0
  74. package/dist/plugins/PgIntrospectionPlugin.d.ts.map +1 -1
  75. package/dist/plugins/PgIntrospectionPlugin.js +125 -104
  76. package/dist/plugins/PgIntrospectionPlugin.js.map +1 -1
  77. package/dist/plugins/PgJWTPlugin.d.ts +6 -2
  78. package/dist/plugins/PgJWTPlugin.d.ts.map +1 -1
  79. package/dist/plugins/PgJWTPlugin.js +10 -0
  80. package/dist/plugins/PgJWTPlugin.js.map +1 -1
  81. package/dist/plugins/PgLtreePlugin.d.ts +9 -0
  82. package/dist/plugins/PgLtreePlugin.d.ts.map +1 -0
  83. package/dist/plugins/PgLtreePlugin.js +66 -0
  84. package/dist/plugins/PgLtreePlugin.js.map +1 -0
  85. package/dist/plugins/PgMutationCreatePlugin.d.ts +9 -0
  86. package/dist/plugins/PgMutationCreatePlugin.d.ts.map +1 -1
  87. package/dist/plugins/PgMutationCreatePlugin.js +29 -12
  88. package/dist/plugins/PgMutationCreatePlugin.js.map +1 -1
  89. package/dist/plugins/PgMutationPayloadEdgePlugin.d.ts +5 -0
  90. package/dist/plugins/PgMutationPayloadEdgePlugin.d.ts.map +1 -1
  91. package/dist/plugins/PgMutationPayloadEdgePlugin.js +2 -9
  92. package/dist/plugins/PgMutationPayloadEdgePlugin.js.map +1 -1
  93. package/dist/plugins/PgMutationUpdateDeletePlugin.d.ts +14 -0
  94. package/dist/plugins/PgMutationUpdateDeletePlugin.d.ts.map +1 -1
  95. package/dist/plugins/PgMutationUpdateDeletePlugin.js +82 -41
  96. package/dist/plugins/PgMutationUpdateDeletePlugin.js.map +1 -1
  97. package/dist/plugins/PgNodeIdAttributesPlugin.d.ts +11 -1
  98. package/dist/plugins/PgNodeIdAttributesPlugin.d.ts.map +1 -1
  99. package/dist/plugins/PgNodeIdAttributesPlugin.js +75 -34
  100. package/dist/plugins/PgNodeIdAttributesPlugin.js.map +1 -1
  101. package/dist/plugins/PgOrderAllAttributesPlugin.d.ts +5 -0
  102. package/dist/plugins/PgOrderAllAttributesPlugin.d.ts.map +1 -1
  103. package/dist/plugins/PgOrderAllAttributesPlugin.js +2 -2
  104. package/dist/plugins/PgOrderAllAttributesPlugin.js.map +1 -1
  105. package/dist/plugins/PgOrderByPrimaryKeyPlugin.d.ts +5 -0
  106. package/dist/plugins/PgOrderByPrimaryKeyPlugin.d.ts.map +1 -1
  107. package/dist/plugins/PgOrderByPrimaryKeyPlugin.js +5 -5
  108. package/dist/plugins/PgOrderByPrimaryKeyPlugin.js.map +1 -1
  109. package/dist/plugins/PgOrderCustomFieldsPlugin.d.ts +8 -0
  110. package/dist/plugins/PgOrderCustomFieldsPlugin.d.ts.map +1 -1
  111. package/dist/plugins/PgOrderCustomFieldsPlugin.js +9 -4
  112. package/dist/plugins/PgOrderCustomFieldsPlugin.js.map +1 -1
  113. package/dist/plugins/PgPolymorphismOnlyArgumentPlugin.d.ts +23 -0
  114. package/dist/plugins/PgPolymorphismOnlyArgumentPlugin.d.ts.map +1 -0
  115. package/dist/plugins/PgPolymorphismOnlyArgumentPlugin.js +136 -0
  116. package/dist/plugins/PgPolymorphismOnlyArgumentPlugin.js.map +1 -0
  117. package/dist/plugins/PgPolymorphismPlugin.d.ts +28 -1
  118. package/dist/plugins/PgPolymorphismPlugin.d.ts.map +1 -1
  119. package/dist/plugins/PgPolymorphismPlugin.js +400 -55
  120. package/dist/plugins/PgPolymorphismPlugin.js.map +1 -1
  121. package/dist/plugins/PgProceduresPlugin.d.ts +6 -0
  122. package/dist/plugins/PgProceduresPlugin.d.ts.map +1 -1
  123. package/dist/plugins/PgProceduresPlugin.js +42 -3
  124. package/dist/plugins/PgProceduresPlugin.js.map +1 -1
  125. package/dist/plugins/PgRBACPlugin.d.ts +25 -0
  126. package/dist/plugins/PgRBACPlugin.d.ts.map +1 -1
  127. package/dist/plugins/PgRBACPlugin.js +110 -73
  128. package/dist/plugins/PgRBACPlugin.js.map +1 -1
  129. package/dist/plugins/PgRefsPlugin.d.ts +3 -0
  130. package/dist/plugins/PgRefsPlugin.d.ts.map +1 -1
  131. package/dist/plugins/PgRefsPlugin.js +9 -3
  132. package/dist/plugins/PgRefsPlugin.js.map +1 -1
  133. package/dist/plugins/PgRegistryPlugin.d.ts +14 -8
  134. package/dist/plugins/PgRegistryPlugin.d.ts.map +1 -1
  135. package/dist/plugins/PgRegistryPlugin.js +3 -0
  136. package/dist/plugins/PgRegistryPlugin.js.map +1 -1
  137. package/dist/plugins/PgRelationsPlugin.d.ts +18 -1
  138. package/dist/plugins/PgRelationsPlugin.d.ts.map +1 -1
  139. package/dist/plugins/PgRelationsPlugin.js +80 -38
  140. package/dist/plugins/PgRelationsPlugin.js.map +1 -1
  141. package/dist/plugins/PgRemoveExtensionResourcesPlugin.d.ts +8 -0
  142. package/dist/plugins/PgRemoveExtensionResourcesPlugin.d.ts.map +1 -1
  143. package/dist/plugins/PgRemoveExtensionResourcesPlugin.js +38 -4
  144. package/dist/plugins/PgRemoveExtensionResourcesPlugin.js.map +1 -1
  145. package/dist/plugins/PgRowByUniquePlugin.d.ts +8 -0
  146. package/dist/plugins/PgRowByUniquePlugin.d.ts.map +1 -1
  147. package/dist/plugins/PgRowByUniquePlugin.js +9 -0
  148. package/dist/plugins/PgRowByUniquePlugin.js.map +1 -1
  149. package/dist/plugins/PgTableNodePlugin.d.ts +5 -0
  150. package/dist/plugins/PgTableNodePlugin.d.ts.map +1 -1
  151. package/dist/plugins/PgTableNodePlugin.js +64 -36
  152. package/dist/plugins/PgTableNodePlugin.js.map +1 -1
  153. package/dist/plugins/PgTablesPlugin.d.ts +20 -2
  154. package/dist/plugins/PgTablesPlugin.d.ts.map +1 -1
  155. package/dist/plugins/PgTablesPlugin.js +122 -54
  156. package/dist/plugins/PgTablesPlugin.js.map +1 -1
  157. package/dist/plugins/PgTypesPlugin.d.ts +8 -1
  158. package/dist/plugins/PgTypesPlugin.d.ts.map +1 -1
  159. package/dist/plugins/PgTypesPlugin.js +6 -7
  160. package/dist/plugins/PgTypesPlugin.js.map +1 -1
  161. package/dist/preset.d.ts.map +1 -1
  162. package/dist/preset.js +6 -2
  163. package/dist/preset.js.map +1 -1
  164. package/dist/utils.d.ts +1 -2
  165. package/dist/utils.d.ts.map +1 -1
  166. package/dist/utils.js +63 -24
  167. package/dist/utils.js.map +1 -1
  168. package/dist/version.d.ts +1 -1
  169. package/dist/version.d.ts.map +1 -1
  170. package/dist/version.js +1 -1
  171. package/dist/version.js.map +1 -1
  172. package/dist/watchFixtures.js +1 -1
  173. package/package.json +34 -33
  174. package/dist/interfaces.d.ts +0 -89
  175. package/dist/interfaces.d.ts.map +0 -1
  176. package/dist/interfaces.js +0 -3
  177. package/dist/interfaces.js.map +0 -1
  178. package/dist/pgServices.d.ts +0 -18
  179. package/dist/pgServices.d.ts.map +0 -1
  180. package/dist/pgServices.js +0 -133
  181. package/dist/pgServices.js.map +0 -1
  182. package/dist/plugins/PgContextPlugin.d.ts +0 -2
  183. package/dist/plugins/PgContextPlugin.d.ts.map +0 -1
  184. package/dist/plugins/PgContextPlugin.js +0 -52
  185. package/dist/plugins/PgContextPlugin.js.map +0 -1
package/CHANGELOG.md CHANGED
@@ -1,5 +1,809 @@
1
1
  # graphile-build-pg
2
2
 
3
+ ## 5.0.0-beta.30
4
+
5
+ ### Patch Changes
6
+
7
+ - [#2207](https://github.com/graphile/crystal/pull/2207)
8
+ [`0b1f7b577`](https://github.com/graphile/crystal/commit/0b1f7b577114a49b8e3283823845ec6e37484240)
9
+ Thanks [@benjie](https://github.com/benjie)! - Fix overwhelming logs and
10
+ errors being output by the new behavior system
11
+
12
+ - Updated dependencies
13
+ [[`0b1f7b577`](https://github.com/graphile/crystal/commit/0b1f7b577114a49b8e3283823845ec6e37484240)]:
14
+ - graphile-build@5.0.0-beta.26
15
+
16
+ ## 5.0.0-beta.29
17
+
18
+ ### Patch Changes
19
+
20
+ - [#2197](https://github.com/graphile/crystal/pull/2197)
21
+ [`d7e6e714f`](https://github.com/graphile/crystal/commit/d7e6e714f0cc5656112703484298b77538b2dccc)
22
+ Thanks [@benjie](https://github.com/benjie)! - Amber preset now supports
23
+ `@resultFieldName` on mutation functions, like V4 preset does.
24
+
25
+ - [#2187](https://github.com/graphile/crystal/pull/2187)
26
+ [`bb006ec7b`](https://github.com/graphile/crystal/commit/bb006ec7bdab24192c84f093ce3f92969aeb7279)
27
+ Thanks [@benjie](https://github.com/benjie)! - Fix behavior inheritance
28
+ especially around functions incorrectly inheriting from their underlying
29
+ codecs, bugs in unlogged/temp table behavior, and incorrect skipping of
30
+ generating table types. You may find after this change you have fields
31
+ appearing in your schema that were not present before, typically these will
32
+ represent database functions where you `@omit`'d the underlying table -
33
+ omitting the table should not prevent a function from accessing it. Further,
34
+ fix behavior of `@omit read` emulation to add
35
+ `-connection -list -array -single`.
36
+
37
+ - [#2156](https://github.com/graphile/crystal/pull/2156)
38
+ [`6fdc6cad8`](https://github.com/graphile/crystal/commit/6fdc6cad8f8d1230202df533d05cc2bd80538f09)
39
+ Thanks [@benjie](https://github.com/benjie)! - Added `pgRegistry.pgExecutors`
40
+ so executors don't need to be looked up from a resource (this causes
41
+ confusion) - instead they can be referenced directly. By default there's one
42
+ executor called `main`, i.e. `build.input.pgRegistry.pgExecutors.main`.
43
+
44
+ - [#2189](https://github.com/graphile/crystal/pull/2189)
45
+ [`0df171123`](https://github.com/graphile/crystal/commit/0df17112300a8ea391dfd220c5f05d362ceaa58a)
46
+ Thanks [@benjie](https://github.com/benjie)! - Fix issue with manyToMany
47
+ behavior warnings
48
+
49
+ - [#2158](https://github.com/graphile/crystal/pull/2158)
50
+ [`dfac43992`](https://github.com/graphile/crystal/commit/dfac43992019b0b6c1d113d2490a87eb03d103d7)
51
+ Thanks [@benjie](https://github.com/benjie)! - 🚨 Amber preset no longer
52
+ enables backward pagination options (`before`, `last`) on functions by
53
+ default - add `+backwards` behavior to these functions to enable. If you're
54
+ using the V4 preset you should be unaffected by this change because it enables
55
+ `+backwards` by default.
56
+
57
+ - [#2160](https://github.com/graphile/crystal/pull/2160)
58
+ [`426e9320e`](https://github.com/graphile/crystal/commit/426e9320e76ef95927eebb6fe4072050b6208771)
59
+ Thanks [@benjie](https://github.com/benjie)! - Massive overhaul of the
60
+ behavior system which now has a centralized registry of known behaviors and
61
+ applies behaviors in a more careful and nuanced way, removing many hacks and
62
+ workarounds, and ultimately meaning that `defaultBehavior: "-*"` should now
63
+ operate correctly. Importantly, `addBehaviorToTags()` has been removed - you
64
+ should use `plugin.schema.entityBehaviors` to indicate behaviors as shown in
65
+ this PR - do not mod the tags directly unless they're explicitly meant to be
66
+ overrides.
67
+
68
+ Technically this is a significant breaking change (besides the removal of the
69
+ `addBehaviorToTags()` helper) because the order in which behaviors are applied
70
+ has changed, and so a different behavior might ultimately "win". This shows up
71
+ in places where there is ambiguity, for example if you add `@filterable` to a
72
+ function that you don't have execute permissions on, that function will now
73
+ show up in the schema since user overrides (smart tags) "win" versus inferred
74
+ behaviors such as introspected permissions; this wasn't the case before.
75
+ Hopefully most users will not notice any difference, and for those who do, the
76
+ `graphile behavior debug` CLI may be able to help you figure out what's going
77
+ on.
78
+
79
+ Be sure to print your schema before and after this update and look for
80
+ changes; if there are changes then you likely need to fix the relevant
81
+ behaviors/smart tags. (Hopefully there's no changes for you!)
82
+
83
+ You'll also need to change any places where you're specifying behaviors that
84
+ will be type checked; you can either cast your existing strings e.g.
85
+ `defaultBehavior: "+connection -list" as GraphileBuild.BehaviorString`, or
86
+ preferably you can specify your behaviors as an array, which should give you
87
+ auto-complete on each entry; e.g. `defaultBehavior: ["connection", "-list"]`.
88
+
89
+ - [#2188](https://github.com/graphile/crystal/pull/2188)
90
+ [`cc0941731`](https://github.com/graphile/crystal/commit/cc0941731a1679bc04ce7b7fd4254009bb5f1f62)
91
+ Thanks [@benjie](https://github.com/benjie)! - Overhaul the way in which
92
+ `graphile-config` presets work such that including a preset at two different
93
+ layers shouldn't result in unexpected behavior.
94
+
95
+ - [#2157](https://github.com/graphile/crystal/pull/2157)
96
+ [`50f6ce456`](https://github.com/graphile/crystal/commit/50f6ce456de3edd084869b54ee9f2eaf51a7fa0c)
97
+ Thanks [@benjie](https://github.com/benjie)! - 🚨 PostGraphile now ignores
98
+ unlogged database tables by default.
99
+
100
+ - [#2199](https://github.com/graphile/crystal/pull/2199)
101
+ [`3b09b414f`](https://github.com/graphile/crystal/commit/3b09b414ff43c34593373fa1f242481b0c7ada70)
102
+ Thanks [@benjie](https://github.com/benjie)! - Database enum comments are now
103
+ reflected in the schema.
104
+
105
+ - [#2196](https://github.com/graphile/crystal/pull/2196)
106
+ [`b7b6dd64f`](https://github.com/graphile/crystal/commit/b7b6dd64fcc07f2ca15528fd39d61297d743dcc6)
107
+ Thanks [@benjie](https://github.com/benjie)! - 🚨 `@notNull` on a volatile
108
+ function now results in the field on the payload becoming non-null, not the
109
+ mutation field itself.
110
+
111
+ - [#2155](https://github.com/graphile/crystal/pull/2155)
112
+ [`8b472cd51`](https://github.com/graphile/crystal/commit/8b472cd51cd66d8227f9f2722d09c0a774792b0f)
113
+ Thanks [@benjie](https://github.com/benjie)! - `disablePlugins` now supports
114
+ TypeScript auto-completion of known plugin names. Other names are still
115
+ accepted without error, so this is just a minor DX improvement rather than
116
+ type safety.
117
+
118
+ - [#2198](https://github.com/graphile/crystal/pull/2198)
119
+ [`ba637b56d`](https://github.com/graphile/crystal/commit/ba637b56d79a14f82fe555739921724eab0c07f7)
120
+ Thanks [@benjie](https://github.com/benjie)! - Ensure that interface subtypes
121
+ are added to schema even if not referenced directly.
122
+ - Updated dependencies
123
+ [[`d5834def1`](https://github.com/graphile/crystal/commit/d5834def1fb84f3e2c0c0a6f146f8249a6df890a),
124
+ [`653929af0`](https://github.com/graphile/crystal/commit/653929af0a99a8a4d52b66e66c736be668b8700a),
125
+ [`6fdc6cad8`](https://github.com/graphile/crystal/commit/6fdc6cad8f8d1230202df533d05cc2bd80538f09),
126
+ [`42b982463`](https://github.com/graphile/crystal/commit/42b9824637a6c05e02935f2b05b5e8e0c61965a6),
127
+ [`eb69c7361`](https://github.com/graphile/crystal/commit/eb69c7361fc7bf8c5b1ce342eeb698bd28c9e013),
128
+ [`54054b873`](https://github.com/graphile/crystal/commit/54054b8733236ba7b2f2fa47d84e085f7196e3f9),
129
+ [`884a4b429`](https://github.com/graphile/crystal/commit/884a4b4297af90fdadaf73addd524f1fbbcfdcce),
130
+ [`1eac03ec2`](https://github.com/graphile/crystal/commit/1eac03ec2e9da65c64b7754c04292f43da82c40b),
131
+ [`38835313a`](https://github.com/graphile/crystal/commit/38835313ad93445206dccdd4cf07b90c5a6e4377),
132
+ [`426e9320e`](https://github.com/graphile/crystal/commit/426e9320e76ef95927eebb6fe4072050b6208771),
133
+ [`2efadc0f8`](https://github.com/graphile/crystal/commit/2efadc0f80c3a0c172fb94c770afecc5447e832b),
134
+ [`e8a9fd424`](https://github.com/graphile/crystal/commit/e8a9fd4243981b892364148eca1df66620ddeb87),
135
+ [`cc0941731`](https://github.com/graphile/crystal/commit/cc0941731a1679bc04ce7b7fd4254009bb5f1f62),
136
+ [`50f6ce456`](https://github.com/graphile/crystal/commit/50f6ce456de3edd084869b54ee9f2eaf51a7fa0c),
137
+ [`b0865d169`](https://github.com/graphile/crystal/commit/b0865d1691105b5419009954c98c8109a27a5d81),
138
+ [`3b09b414f`](https://github.com/graphile/crystal/commit/3b09b414ff43c34593373fa1f242481b0c7ada70),
139
+ [`8b472cd51`](https://github.com/graphile/crystal/commit/8b472cd51cd66d8227f9f2722d09c0a774792b0f),
140
+ [`ba637b56d`](https://github.com/graphile/crystal/commit/ba637b56d79a14f82fe555739921724eab0c07f7),
141
+ [`9cd9bb522`](https://github.com/graphile/crystal/commit/9cd9bb5222a9f0398ee4b8bfa4f741b6de2a2192)]:
142
+ - grafast@0.1.1-beta.15
143
+ - graphile-build@5.0.0-beta.25
144
+ - @dataplan/pg@0.0.1-beta.26
145
+ - pg-introspection@0.0.1-beta.9
146
+ - graphile-config@0.0.1-beta.10
147
+
148
+ ## 5.0.0-beta.28
149
+
150
+ ### Patch Changes
151
+
152
+ - [#2149](https://github.com/graphile/crystal/pull/2149)
153
+ [`52ef49ca9`](https://github.com/graphile/crystal/commit/52ef49ca9357e63d0aa5c06ac089bf57ee991c73)
154
+ Thanks [@benjie](https://github.com/benjie)! - Fixed a bug in 'relational'
155
+ polymorphism where relations to each of the concrete types would
156
+ non-sensically be added to each of the concrete types.
157
+
158
+ - [#2149](https://github.com/graphile/crystal/pull/2149)
159
+ [`d9d07b97b`](https://github.com/graphile/crystal/commit/d9d07b97b41c928033b9a920931ae0ccccf88e82)
160
+ Thanks [@benjie](https://github.com/benjie)! - 🚨 `pgCodecRef` behaviors are
161
+ now presented a `[codec, refName]` tuple rather than the ref object directly.
162
+ You can get the old `ref` object via `codec.refs?.[refName]`
163
+ - Updated dependencies
164
+ [[`82ce02cd9`](https://github.com/graphile/crystal/commit/82ce02cd93df3df3c9570c3528483c4f720ff9bb),
165
+ [`871d32b2a`](https://github.com/graphile/crystal/commit/871d32b2a18df0d257880fc54a61d9e68c4607d6),
166
+ [`e8a0c4441`](https://github.com/graphile/crystal/commit/e8a0c4441cd04402974cd0af6b80816c9cda91e7),
167
+ [`a26e3a30c`](https://github.com/graphile/crystal/commit/a26e3a30c02f963f8f5e9c9d021e871f33689e1b),
168
+ [`eca7e62e2`](https://github.com/graphile/crystal/commit/eca7e62e2a09af77f4f166a281dab81d009d9ec1),
169
+ [`02c11a4d4`](https://github.com/graphile/crystal/commit/02c11a4d42bf434dffc9354b300e8d791c4eeb2d)]:
170
+ - @dataplan/pg@0.0.1-beta.25
171
+ - grafast@0.1.1-beta.14
172
+ - graphile-build@5.0.0-beta.24
173
+
174
+ ## 5.0.0-beta.27
175
+
176
+ ### Patch Changes
177
+
178
+ - Updated dependencies
179
+ [[`807650035`](https://github.com/graphile/crystal/commit/8076500354a3e2bc2de1b6c4e947bd710cc5bddc)]:
180
+ - @dataplan/pg@0.0.1-beta.24
181
+ - grafast@0.1.1-beta.13
182
+ - graphile-build@5.0.0-beta.23
183
+
184
+ ## 5.0.0-beta.26
185
+
186
+ ### Patch Changes
187
+
188
+ - [#2129](https://github.com/graphile/crystal/pull/2129)
189
+ [`1f67999eb`](https://github.com/graphile/crystal/commit/1f67999eb11435562ca76e8e7349aaadc28390f6)
190
+ Thanks [@benjie](https://github.com/benjie)! - Fix bug in orderBy planning
191
+ that caused a new plan to be required for every request.
192
+
193
+ - [#1985](https://github.com/graphile/crystal/pull/1985)
194
+ [`d6102714e`](https://github.com/graphile/crystal/commit/d6102714e4fec35952784c988c1617c789eee0cd)
195
+ Thanks [@hannesj](https://github.com/hannesj)! - 🚨 PostgreSQL adaptor is no
196
+ longer loaded via string value; instead you must pass the adaptor instance
197
+ directly. If you have `adaptor: "@dataplan/pg/adaptors/pg"` then replace it
198
+ with `adaptor: await import("@dataplan/pg/adaptors/pg")`. (This shouldn't
199
+ cause you issues because you _should_ be using `makePgService` to construct
200
+ your `pgServices` rather than building raw objects.)
201
+
202
+ 🚨 If you've implemented a custom PgAdaptor, talk to Benjie about how to port
203
+ it. (Should be straightforward, but no point me figuring it out if no-one has
204
+ done it yet 🤷)
205
+
206
+ This change improves bundle-ability by reducing the number of dynamic imports.
207
+
208
+ Also: `PgAdaptorOptions` has been renamed to `PgAdaptorSettings`, so please do
209
+ a global find and replace for that.
210
+
211
+ - Updated dependencies
212
+ [[`1bd50b61e`](https://github.com/graphile/crystal/commit/1bd50b61ebb10b7d09b3612c2e2767c41cca3b78),
213
+ [`8bdc553b7`](https://github.com/graphile/crystal/commit/8bdc553b79aae21a27d22a4e1f1e57ee2e5d1d3f),
214
+ [`4e102b1a1`](https://github.com/graphile/crystal/commit/4e102b1a1cd232e6f6703df0706415f01831dab2),
215
+ [`1cabbd311`](https://github.com/graphile/crystal/commit/1cabbd311bdefd7ce78f8dacbf61a42237a6c73c),
216
+ [`7bb1573ba`](https://github.com/graphile/crystal/commit/7bb1573ba45a4d8b7fa9ad53cdd79686d2641383),
217
+ [`590b6fdf5`](https://github.com/graphile/crystal/commit/590b6fdf5d04a392c4cc9e8bdad83278377c547b),
218
+ [`18addb385`](https://github.com/graphile/crystal/commit/18addb3852525aa91019a36d58fa2fecd8b5b443),
219
+ [`d6102714e`](https://github.com/graphile/crystal/commit/d6102714e4fec35952784c988c1617c789eee0cd),
220
+ [`6ed615e55`](https://github.com/graphile/crystal/commit/6ed615e557b2ab1fb57f1e68c06730a8e3da7175),
221
+ [`b25cc539c`](https://github.com/graphile/crystal/commit/b25cc539c00aeda7a943c37509aaae4dc7812317),
222
+ [`867f33136`](https://github.com/graphile/crystal/commit/867f331365346fc46ed1e0d23c79719846e398f4),
223
+ [`925123497`](https://github.com/graphile/crystal/commit/925123497cf17b5e145ab80f62fa9de768a977ae),
224
+ [`cf535c210`](https://github.com/graphile/crystal/commit/cf535c21078da06c14dd12f30e9b4378da4ded03),
225
+ [`acf99b190`](https://github.com/graphile/crystal/commit/acf99b190954e3c5926e820daed68dfe8eb3ee1f),
226
+ [`4967a197f`](https://github.com/graphile/crystal/commit/4967a197fd2c71ee2a581fe29470ee9f30e74de5),
227
+ [`1908e1ba1`](https://github.com/graphile/crystal/commit/1908e1ba11883a34dac66f985fc20ab160e572b1),
228
+ [`084d80be6`](https://github.com/graphile/crystal/commit/084d80be6e17187c9a9932bcf079e3f460368782),
229
+ [`aa0474755`](https://github.com/graphile/crystal/commit/aa0474755142a758fc58c5c1a30b8c754bc84e7c)]:
230
+ - grafast@0.1.1-beta.12
231
+ - @dataplan/pg@0.0.1-beta.23
232
+ - graphile-build@5.0.0-beta.22
233
+
234
+ ## 5.0.0-beta.25
235
+
236
+ ### Patch Changes
237
+
238
+ - Updated dependencies
239
+ [[`582bd768f`](https://github.com/graphile/crystal/commit/582bd768fec403ce3284f293b85b9fd86e4d3f40)]:
240
+ - graphile-build@5.0.0-beta.21
241
+ - graphile-config@0.0.1-beta.9
242
+ - @dataplan/pg@0.0.1-beta.22
243
+ - grafast@0.1.1-beta.11
244
+
245
+ ## 5.0.0-beta.24
246
+
247
+ ### Patch Changes
248
+
249
+ - Updated dependencies
250
+ [[`3c161f7e1`](https://github.com/graphile/crystal/commit/3c161f7e13375105b1035a7d5d1c0f2b507ca5c7),
251
+ [`a674a9923`](https://github.com/graphile/crystal/commit/a674a9923bc908c9315afa40e0cb256ee0953d16),
252
+ [`b7cfeffd1`](https://github.com/graphile/crystal/commit/b7cfeffd1019d61c713a5054c4f5929960a2a6ab)]:
253
+ - grafast@0.1.1-beta.10
254
+ - @dataplan/pg@0.0.1-beta.21
255
+ - graphile-build@5.0.0-beta.20
256
+
257
+ ## 5.0.0-beta.23
258
+
259
+ ### Patch Changes
260
+
261
+ - [#2064](https://github.com/graphile/crystal/pull/2064)
262
+ [`437570f97`](https://github.com/graphile/crystal/commit/437570f97e8520afaf3d0d0b514d1f4c31546b76)
263
+ Thanks [@benjie](https://github.com/benjie)! - Fix a bug relating to Global
264
+ Object Identifiers (specifically in update mutations, but probably elsewhere
265
+ too) related to early exit.
266
+ - Updated dependencies
267
+ [[`437570f97`](https://github.com/graphile/crystal/commit/437570f97e8520afaf3d0d0b514d1f4c31546b76)]:
268
+ - grafast@0.1.1-beta.9
269
+ - @dataplan/pg@0.0.1-beta.20
270
+ - graphile-build@5.0.0-beta.19
271
+
272
+ ## 5.0.0-beta.22
273
+
274
+ ### Patch Changes
275
+
276
+ - [#2056](https://github.com/graphile/crystal/pull/2056)
277
+ [`1842af661`](https://github.com/graphile/crystal/commit/1842af661950d5f962b65f6362a45a3b9c8f15e8)
278
+ Thanks [@benjie](https://github.com/benjie)! - Improve exporting of resource
279
+ options (neater export code)
280
+
281
+ - Updated dependencies
282
+ [[`1842af661`](https://github.com/graphile/crystal/commit/1842af661950d5f962b65f6362a45a3b9c8f15e8),
283
+ [`bd5a908a4`](https://github.com/graphile/crystal/commit/bd5a908a4d04310f90dfb46ad87398ffa993af3b)]:
284
+ - graphile-build@5.0.0-beta.18
285
+ - grafast@0.1.1-beta.8
286
+ - @dataplan/pg@0.0.1-beta.19
287
+
288
+ ## 5.0.0-beta.21
289
+
290
+ ### Patch Changes
291
+
292
+ - [#2015](https://github.com/graphile/crystal/pull/2015)
293
+ [`5eca6d65a`](https://github.com/graphile/crystal/commit/5eca6d65a816bac3d0ceaa6cafa7df1a79c2be47)
294
+ Thanks [@benjie](https://github.com/benjie)! - Use `inhibitOnNull` when
295
+ decoding a spec ID to prevent it being consumed if invalid (e.g. don't allow
296
+ using a 'Post' node ID to fetch a 'Person' record).
297
+
298
+ - [#1994](https://github.com/graphile/crystal/pull/1994)
299
+ [`ab08cbf9c`](https://github.com/graphile/crystal/commit/ab08cbf9c504c3cc22495a99a965e7634c18a6a3)
300
+ Thanks [@benjie](https://github.com/benjie)! - Introduce
301
+ `interface SQLable {[$toSQL](): SQL}` to `pg-sql2` and use it to simplify SQL
302
+ fragments in various places.
303
+
304
+ - [#1978](https://github.com/graphile/crystal/pull/1978)
305
+ [`a287a57c2`](https://github.com/graphile/crystal/commit/a287a57c2765da0fb6a132ea0953f64453210ceb)
306
+ Thanks [@benjie](https://github.com/benjie)! - Breaking: `connection()` step
307
+ now accepts configuration object in place of 2nd argument onwards:
308
+
309
+ ```diff
310
+ -return connection($list, nodePlan, cursorPlan);
311
+ +return connection($list, { nodePlan, cursorPlan });
312
+ ```
313
+
314
+ Feature: `edgeDataPlan` can be specified as part of this configuration object,
315
+ allowing you to associate edge data with your connection edges:
316
+
317
+ ```ts
318
+ return connection($list, {
319
+ edgeDataPlan($item) {
320
+ return object({ item: $item, otherThing: $otherThing });
321
+ },
322
+ });
323
+
324
+ // ...
325
+
326
+ const plans = {
327
+ FooEdge: {
328
+ otherThing($edge) {
329
+ return $edge.data().get("otherThing");
330
+ },
331
+ },
332
+ };
333
+ ```
334
+
335
+ Feature: `ConnectionStep` and `EdgeStep` gain `get()` methods, so
336
+ `*Connection.edges`, `*Connection.nodes`, `*Connection.pageInfo`, `*Edge.node`
337
+ and `*Edge.cursor` no longer need plans to be defined.
338
+
339
+ - [#2051](https://github.com/graphile/crystal/pull/2051)
340
+ [`45e10950b`](https://github.com/graphile/crystal/commit/45e10950b533f97cdd986e5442e2e160a8e431a2)
341
+ Thanks [@benjie](https://github.com/benjie)! - Resource options now marked
342
+ EXPORTABLE _after_ hooks called, enabling more plugins to be exportable.
343
+
344
+ - [#2050](https://github.com/graphile/crystal/pull/2050)
345
+ [`272608c13`](https://github.com/graphile/crystal/commit/272608c135e4ef0f76b8b5a9f764494a3f3ad779)
346
+ Thanks [@benjie](https://github.com/benjie)! - Add missing EXPORTABLE (and
347
+ remove excessive EXPORTABLE) to fix schema exports.
348
+
349
+ - [#2006](https://github.com/graphile/crystal/pull/2006)
350
+ [`bee0a0a68`](https://github.com/graphile/crystal/commit/bee0a0a68d48816f84b1a7f5ec69bd6069211426)
351
+ Thanks [@benjie](https://github.com/benjie)! - Adopt improved inflection
352
+ typings.
353
+
354
+ - [#2019](https://github.com/graphile/crystal/pull/2019)
355
+ [`51a94417f`](https://github.com/graphile/crystal/commit/51a94417fb62b54d309be184f4be479bc267c2b7)
356
+ Thanks [@benjie](https://github.com/benjie)! - Now possible to filter by relay
357
+ node identifiers without weird results if you pass an incompatible node id
358
+ (e.g. a 'Post' ID where a 'User' ID was expected) - significantly improves the
359
+ Relay preset.
360
+ - Updated dependencies
361
+ [[`357d475f5`](https://github.com/graphile/crystal/commit/357d475f54fecc8c51892e0346d6872b34132430),
362
+ [`30bcd6c12`](https://github.com/graphile/crystal/commit/30bcd6c12e59f878617ea987c35a2f589ce05cb8),
363
+ [`3551725e7`](https://github.com/graphile/crystal/commit/3551725e71c3ed876554e19e5ab2c1dcb0fb1143),
364
+ [`80836471e`](https://github.com/graphile/crystal/commit/80836471e5cedb29dee63bc5002550c4f1713cfd),
365
+ [`b788dd868`](https://github.com/graphile/crystal/commit/b788dd86849e703cc3aa863fd9190c36a087b865),
366
+ [`a5c20fefb`](https://github.com/graphile/crystal/commit/a5c20fefb571dea6d1187515dc48dd547e9e6204),
367
+ [`1ce08980e`](https://github.com/graphile/crystal/commit/1ce08980e2a52ed9bc81564d248c19648ecd3616),
368
+ [`ab08cbf9c`](https://github.com/graphile/crystal/commit/ab08cbf9c504c3cc22495a99a965e7634c18a6a3),
369
+ [`dff4f2535`](https://github.com/graphile/crystal/commit/dff4f2535ac6ce893089b312fcd5fffcd98573a5),
370
+ [`a287a57c2`](https://github.com/graphile/crystal/commit/a287a57c2765da0fb6a132ea0953f64453210ceb),
371
+ [`2fe56f9a6`](https://github.com/graphile/crystal/commit/2fe56f9a6dac03484ace45c29c2223a65f9ca1db),
372
+ [`fed603d71`](https://github.com/graphile/crystal/commit/fed603d719c02f33e12190f925c9e3b06c581fac),
373
+ [`ed6e0d278`](https://github.com/graphile/crystal/commit/ed6e0d2788217a1c419634837f4208013eaf2923),
374
+ [`86168b740`](https://github.com/graphile/crystal/commit/86168b740510aef17bde7ae21f1d0eebb0c5c9b3),
375
+ [`7ad35fe4d`](https://github.com/graphile/crystal/commit/7ad35fe4d9b20f6ec82dc95c362390a87e25b42c),
376
+ [`e82e4911e`](https://github.com/graphile/crystal/commit/e82e4911e32138df1b90ec0fde555ea963018d21),
377
+ [`94a05064e`](https://github.com/graphile/crystal/commit/94a05064ea05108685ff71174a9f871ab5b4c147),
378
+ [`272608c13`](https://github.com/graphile/crystal/commit/272608c135e4ef0f76b8b5a9f764494a3f3ad779),
379
+ [`7606a5b87`](https://github.com/graphile/crystal/commit/7606a5b87aed747fad4eb11744ef7b01cfa3b879),
380
+ [`42ece5aa6`](https://github.com/graphile/crystal/commit/42ece5aa6ca05345ebc17fb5c7d55df3b79b7612),
381
+ [`e0d69e518`](https://github.com/graphile/crystal/commit/e0d69e518a98c70f9b90f59d243ce33978c1b5a1),
382
+ [`db8ceed0f`](https://github.com/graphile/crystal/commit/db8ceed0f17923eb78ff09c9f3f28800a5c7e3b6),
383
+ [`6699388ec`](https://github.com/graphile/crystal/commit/6699388ec167d35c71220ce5d9113cac578da6cb),
384
+ [`966203504`](https://github.com/graphile/crystal/commit/96620350467ab8c65b56adf2f055e19450f8e772),
385
+ [`c1645b249`](https://github.com/graphile/crystal/commit/c1645b249aae949a548cd916e536ccfb63e5ab35),
386
+ [`ed8bbaa3c`](https://github.com/graphile/crystal/commit/ed8bbaa3cd1563a7601ca8c6b0412633b0ea4ce9),
387
+ [`a0e82b9c5`](https://github.com/graphile/crystal/commit/a0e82b9c5f4e585f1af1e147299cd07944ece6f8),
388
+ [`14e2412ee`](https://github.com/graphile/crystal/commit/14e2412ee368e8d53abf6774c7f0069f32d4e8a3),
389
+ [`c48d3da7f`](https://github.com/graphile/crystal/commit/c48d3da7fe4fac2562fab5f085d252a0bfb6f0b6),
390
+ [`57ab0e1e7`](https://github.com/graphile/crystal/commit/57ab0e1e72c01213b21d3efc539cd655d83d993a),
391
+ [`8442242e4`](https://github.com/graphile/crystal/commit/8442242e43cac7d89ca0c413cf42c9fabf6f247f),
392
+ [`bee0a0a68`](https://github.com/graphile/crystal/commit/bee0a0a68d48816f84b1a7f5ec69bd6069211426),
393
+ [`51a94417f`](https://github.com/graphile/crystal/commit/51a94417fb62b54d309be184f4be479bc267c2b7),
394
+ [`64ce7b765`](https://github.com/graphile/crystal/commit/64ce7b7650530251aec38a51089da66f914c19b4),
395
+ [`cba842357`](https://github.com/graphile/crystal/commit/cba84235786acbd77ade53bae7a3fba4a9be1eb7),
396
+ [`2fa77d0f2`](https://github.com/graphile/crystal/commit/2fa77d0f237cdb98d3dafb6b5e4083a2c6c38673),
397
+ [`81d17460c`](https://github.com/graphile/crystal/commit/81d17460ced08608814635779c5cf997c19c101d)]:
398
+ - @dataplan/pg@0.0.1-beta.18
399
+ - grafast@0.1.1-beta.7
400
+ - tamedevil@0.0.0-beta.7
401
+ - pg-sql2@5.0.0-beta.6
402
+ - graphile-build@5.0.0-beta.17
403
+ - pg-introspection@0.0.1-beta.8
404
+ - graphile-config@0.0.1-beta.8
405
+
406
+ ## 5.0.0-beta.20
407
+
408
+ ### Patch Changes
409
+
410
+ - [#1955](https://github.com/graphile/crystal/pull/1955)
411
+ [`6c6be29f1`](https://github.com/graphile/crystal/commit/6c6be29f12b24782c926b2bc62ed2ede09ac05de)
412
+ Thanks [@benjie](https://github.com/benjie)! - Steps are now prevented from
413
+ calling other steps' lifecycle methods. GRAPHILE_ENV is actively encouraged,
414
+ and falls back to NODE_ENV.
415
+
416
+ - [#1949](https://github.com/graphile/crystal/pull/1949)
417
+ [`179d25b09`](https://github.com/graphile/crystal/commit/179d25b09bb3272eeef564067b8e512d8de0112f)
418
+ Thanks [@benjie](https://github.com/benjie)! - Add support for registering
419
+ PgCodecs via plugins, add support for ltree type, improve error messages, no
420
+ longer need to set a gather namespace to use cache/state.
421
+
422
+ - [#1958](https://github.com/graphile/crystal/pull/1958)
423
+ [`8315e8d01`](https://github.com/graphile/crystal/commit/8315e8d01c118cebc4ebbc53a2f264b958b252ad)
424
+ Thanks [@benjie](https://github.com/benjie)! - EXPORTABLE now accepts a third
425
+ argument, `nameHint`, which is used to hint what variable name to use for the
426
+ given value. Used this in `graphile-export` along with some fixes and
427
+ optimizations to improve the exports further.
428
+ - Updated dependencies
429
+ [[`9f85c614d`](https://github.com/graphile/crystal/commit/9f85c614d48dc745c5fed15333dbb75af7fddc88),
430
+ [`6c6be29f1`](https://github.com/graphile/crystal/commit/6c6be29f12b24782c926b2bc62ed2ede09ac05de),
431
+ [`6c80c44b7`](https://github.com/graphile/crystal/commit/6c80c44b76a5eb30cc2b1555ba81a4b6236f4300),
432
+ [`179d25b09`](https://github.com/graphile/crystal/commit/179d25b09bb3272eeef564067b8e512d8de0112f),
433
+ [`8315e8d01`](https://github.com/graphile/crystal/commit/8315e8d01c118cebc4ebbc53a2f264b958b252ad),
434
+ [`9d53dde72`](https://github.com/graphile/crystal/commit/9d53dde726b7304962e921b88a159649e49156e5),
435
+ [`46d8289b4`](https://github.com/graphile/crystal/commit/46d8289b44ab10aea1ff3d2915184650d6896b81)]:
436
+ - @dataplan/pg@0.0.1-beta.17
437
+ - grafast@0.1.1-beta.6
438
+ - graphile-build@5.0.0-beta.16
439
+ - tamedevil@0.0.0-beta.6
440
+ - pg-introspection@0.0.1-beta.7
441
+
442
+ ## 5.0.0-beta.19
443
+
444
+ ### Patch Changes
445
+
446
+ - [#1933](https://github.com/graphile/crystal/pull/1933)
447
+ [`3a2ea80ee`](https://github.com/graphile/crystal/commit/3a2ea80ee470b2aef91366727d7d60a0c65067f5)
448
+ Thanks [@mattiarossi](https://github.com/mattiarossi)! -
449
+ `eslint-plugin-graphile-export` now spots instances of `inputPlan`,
450
+ `applyPlan` and `assertStep` so they can be checked - thanks @mattiarossi!
451
+
452
+ - [#1935](https://github.com/graphile/crystal/pull/1935)
453
+ [`8ea67f891`](https://github.com/graphile/crystal/commit/8ea67f8910693edaf70daa9952e35d8396166f38)
454
+ Thanks [@benjie](https://github.com/benjie)! - Fix lots of things related to
455
+ exporting a schema with `graphile-export`.
456
+
457
+ - [#1935](https://github.com/graphile/crystal/pull/1935)
458
+ [`e20e66ed7`](https://github.com/graphile/crystal/commit/e20e66ed71b499ee5bbf05105f981809fd302212)
459
+ Thanks [@benjie](https://github.com/benjie)! - Make even more of the schema
460
+ exportable, including handling scalars with no parseLiteral definition.
461
+ - Updated dependencies
462
+ [[`49fd8afed`](https://github.com/graphile/crystal/commit/49fd8afed1afe573ea76a2a7a821dfa5d6288e2d),
463
+ [`00d32d887`](https://github.com/graphile/crystal/commit/00d32d887a6ae01374a4fda1babab7c8f14832c0),
464
+ [`63dd7ea99`](https://github.com/graphile/crystal/commit/63dd7ea992d30ad711dd85a73a127484a0e35479),
465
+ [`c62eee10b`](https://github.com/graphile/crystal/commit/c62eee10b445f9455bf2a0524ad2b828bdf4ffa6),
466
+ [`d801c9778`](https://github.com/graphile/crystal/commit/d801c9778a86d61e060896460af9fe62a733534a),
467
+ [`3a2ea80ee`](https://github.com/graphile/crystal/commit/3a2ea80ee470b2aef91366727d7d60a0c65067f5),
468
+ [`ef44c29b2`](https://github.com/graphile/crystal/commit/ef44c29b24a1ad5a042ae1536a4546dd64b17195),
469
+ [`8ea67f891`](https://github.com/graphile/crystal/commit/8ea67f8910693edaf70daa9952e35d8396166f38),
470
+ [`5de3e86eb`](https://github.com/graphile/crystal/commit/5de3e86eba1ddfe5e07732d0325c63e5d72d4b5b),
471
+ [`e20e66ed7`](https://github.com/graphile/crystal/commit/e20e66ed71b499ee5bbf05105f981809fd302212)]:
472
+ - tamedevil@0.0.0-beta.5
473
+ - pg-introspection@0.0.1-beta.6
474
+ - grafast@0.1.1-beta.5
475
+ - graphile-build@5.0.0-beta.15
476
+ - @dataplan/pg@0.0.1-beta.16
477
+ - pg-sql2@5.0.0-beta.5
478
+ - graphile-config@0.0.1-beta.7
479
+
480
+ ## 5.0.0-beta.18
481
+
482
+ ### Patch Changes
483
+
484
+ - [#1904](https://github.com/graphile/crystal/pull/1904)
485
+ [`5b2db0c75`](https://github.com/graphile/crystal/commit/5b2db0c7586182523015f8f79fa4d43f98679c1e)
486
+ Thanks [@benjie](https://github.com/benjie)! - Add pgRefDetails to scope for
487
+ some ref-generated fields, to enable plugins to hook them.
488
+
489
+ - [#1905](https://github.com/graphile/crystal/pull/1905)
490
+ [`184773382`](https://github.com/graphile/crystal/commit/184773382f074a3b5339e4cfabec55173cd4f1e1)
491
+ Thanks [@benjie](https://github.com/benjie)! - Enable specifying the
492
+ polymorphic subtype a function returns via `@returnType MyType` smart tag.
493
+ - Updated dependencies
494
+ [[`555a2be03`](https://github.com/graphile/crystal/commit/555a2be037f49bd599abbaafe6e5d5ab190c96d6),
495
+ [`1b6c2f636`](https://github.com/graphile/crystal/commit/1b6c2f6360a316a8dc550c60e28c61deea538f19),
496
+ [`a2176ea32`](https://github.com/graphile/crystal/commit/a2176ea324db0801249661b30e9c9d314c6fb159),
497
+ [`886833e2e`](https://github.com/graphile/crystal/commit/886833e2e319f23d905d7184ca88fca701b94044),
498
+ [`f97d7976a`](https://github.com/graphile/crystal/commit/f97d7976a683a1e2cb0fed1ce0e30aeff8cc1886)]:
499
+ - @dataplan/pg@0.0.1-beta.15
500
+ - tamedevil@0.0.0-beta.4
501
+ - grafast@0.1.1-beta.4
502
+ - graphile-build@5.0.0-beta.14
503
+
504
+ ## 5.0.0-beta.17
505
+
506
+ ### Patch Changes
507
+
508
+ - Updated dependencies
509
+ [[`0df5511ac`](https://github.com/graphile/crystal/commit/0df5511ac8b79ea34f8d12ebf8feeb421f8fe971),
510
+ [`7851d89ab`](https://github.com/graphile/crystal/commit/7851d89ab4216b0252583f0068a69900fa2ddc88),
511
+ [`470ee4000`](https://github.com/graphile/crystal/commit/470ee40008689de7cf6f206a9897abbe4891ff9b)]:
512
+ - graphile-config@0.0.1-beta.6
513
+ - pg-introspection@0.0.1-beta.5
514
+ - @dataplan/pg@0.0.1-beta.14
515
+ - grafast@0.1.1-beta.3
516
+ - graphile-build@5.0.0-beta.13
517
+
518
+ ## 5.0.0-beta.16
519
+
520
+ ### Patch Changes
521
+
522
+ - [#1884](https://github.com/graphile/crystal/pull/1884)
523
+ [`bce0636d4`](https://github.com/graphile/crystal/commit/bce0636d424476664672166193a181c83476423a)
524
+ Thanks [@benjie](https://github.com/benjie)! - Fixes multiple pgServices codec
525
+ name conflicts by prepending the service name if it's not 'main'.
526
+
527
+ - [#1817](https://github.com/graphile/crystal/pull/1817)
528
+ [`f305c3278`](https://github.com/graphile/crystal/commit/f305c327848eb7baef46c5384a7cc5af6f79db8d)
529
+ Thanks [@benjie](https://github.com/benjie)! - Add support for limiting
530
+ polymorphic plans (only some of them, specifically `pgUnionAll()` right now)
531
+ to limit the types of their results; exposed via an experimental 'only'
532
+ argument on fields, for example
533
+ `allApplications(only: [GcpApplication, AwsApplication])` would limit the type
534
+ of applications returned to only be the two specified.
535
+
536
+ - [#1875](https://github.com/graphile/crystal/pull/1875)
537
+ [`3b558e0c1`](https://github.com/graphile/crystal/commit/3b558e0c110dd49e5d51e49a5ad6463a9ed68ecb)
538
+ Thanks [@enisdenjo](https://github.com/enisdenjo)! - Consider attribute's
539
+ `isNotNull` flag for polymorphic types
540
+
541
+ - [#1884](https://github.com/graphile/crystal/pull/1884)
542
+ [`2ae8d33aa`](https://github.com/graphile/crystal/commit/2ae8d33aa83955649dcd6e7489604b059ed2daf4)
543
+ Thanks [@benjie](https://github.com/benjie)! - Fixes missing await which might
544
+ cause process to exit when something goes wrong during schema building.
545
+
546
+ - [#1885](https://github.com/graphile/crystal/pull/1885)
547
+ [`9e1df08b7`](https://github.com/graphile/crystal/commit/9e1df08b702ae32870a8f1324bab37f447cba868)
548
+ Thanks [@benjie](https://github.com/benjie)! - Fix `orderBy:null` regression
549
+
550
+ - [#1877](https://github.com/graphile/crystal/pull/1877)
551
+ [`8a0cdb95f`](https://github.com/graphile/crystal/commit/8a0cdb95f200b28b0ea1ab5caa12b23dce5f374f)
552
+ Thanks [@benjie](https://github.com/benjie)! - Move 'declare global' out of
553
+ 'interfaces.ts' and into 'index.ts' or equivalent. Should make TypeScript more
554
+ aware of these types.
555
+
556
+ - [#1879](https://github.com/graphile/crystal/pull/1879)
557
+ [`dbd91fdd8`](https://github.com/graphile/crystal/commit/dbd91fdd836f041b6e2ff9d358c6a6f521f43914)
558
+ Thanks [@benjie](https://github.com/benjie)! - Move PgContextPlugin from
559
+ graphile-build-pg into @dataplan/pg so it can be used after schema export
560
+ without needing dependency on graphile-build-pg
561
+
562
+ - [#1841](https://github.com/graphile/crystal/pull/1841)
563
+ [`f1d5ad18e`](https://github.com/graphile/crystal/commit/f1d5ad18e1cd0d59b9e74f619ec6b0de57f07b17)
564
+ Thanks [@benjie](https://github.com/benjie)! - Make smart tags parser more
565
+ forgiving (track parenthesis)
566
+
567
+ - [#1884](https://github.com/graphile/crystal/pull/1884)
568
+ [`c66c3527c`](https://github.com/graphile/crystal/commit/c66c3527ce2bb38afa37242ecb5a22247efd6db9)
569
+ Thanks [@benjie](https://github.com/benjie)! - List codecs can now have names.
570
+
571
+ - [#1876](https://github.com/graphile/crystal/pull/1876)
572
+ [`9fb5cc06e`](https://github.com/graphile/crystal/commit/9fb5cc06ee52165378392969172e6ee8128833f6)
573
+ Thanks [@enisdenjo](https://github.com/enisdenjo)! - Specify `from` in `@ref`
574
+ to apply refs to a single type
575
+
576
+ - Updated dependencies
577
+ [[`3fdc2bce4`](https://github.com/graphile/crystal/commit/3fdc2bce42418773f808c5b8309dfb361cd95ce9),
578
+ [`aeef362b5`](https://github.com/graphile/crystal/commit/aeef362b5744816f01e4a6f714bbd77f92332bc5),
579
+ [`8a76db07f`](https://github.com/graphile/crystal/commit/8a76db07f4c110cecc6225504f9a05ccbcbc7b92),
580
+ [`f305c3278`](https://github.com/graphile/crystal/commit/f305c327848eb7baef46c5384a7cc5af6f79db8d),
581
+ [`8a0cdb95f`](https://github.com/graphile/crystal/commit/8a0cdb95f200b28b0ea1ab5caa12b23dce5f374f),
582
+ [`dbd91fdd8`](https://github.com/graphile/crystal/commit/dbd91fdd836f041b6e2ff9d358c6a6f521f43914),
583
+ [`c66c3527c`](https://github.com/graphile/crystal/commit/c66c3527ce2bb38afa37242ecb5a22247efd6db9),
584
+ [`f66cc40b3`](https://github.com/graphile/crystal/commit/f66cc40b3bc5bf2e7f92fe5a6bd5638e2a51ac2b),
585
+ [`f18635a5c`](https://github.com/graphile/crystal/commit/f18635a5cf55845c9534d82bb483e5fbb9ed179e),
586
+ [`1c9f1c0ed`](https://github.com/graphile/crystal/commit/1c9f1c0edf4e621a5b6345d3a41527a18143c6ae)]:
587
+ - grafast@0.1.1-beta.2
588
+ - @dataplan/pg@0.0.1-beta.13
589
+ - graphile-build@5.0.0-beta.12
590
+ - graphile-config@0.0.1-beta.5
591
+
592
+ ## 5.0.0-beta.15
593
+
594
+ ### Patch Changes
595
+
596
+ - [#1834](https://github.com/graphile/crystal/pull/1834)
597
+ [`2e7fc6449`](https://github.com/graphile/crystal/commit/2e7fc6449c2d08c44c32985811bb2e233a04056b)
598
+ Thanks [@benjie](https://github.com/benjie)! - Fix issue with watch mode where
599
+ schema omits database resources in some situations.
600
+ - Updated dependencies
601
+ [[`49fcb0d58`](https://github.com/graphile/crystal/commit/49fcb0d585b31b291c9072c339d6f5b550eefc9f),
602
+ [`7aef73319`](https://github.com/graphile/crystal/commit/7aef73319a8a147c700727be62427e1eefdefbf8)]:
603
+ - grafast@0.1.1-beta.1
604
+ - graphile-config@0.0.1-beta.4
605
+ - @dataplan/pg@0.0.1-beta.12
606
+ - graphile-build@5.0.0-beta.11
607
+
608
+ ## 5.0.0-beta.14
609
+
610
+ ### Patch Changes
611
+
612
+ - [#1801](https://github.com/graphile/crystal/pull/1801)
613
+ [`2d447a6b4`](https://github.com/graphile/crystal/commit/2d447a6b45d7db2813bd957f412cd959e2185759)
614
+ Thanks [@benjie](https://github.com/benjie)! - Fix bug where the owner of a
615
+ database object wasn't seen as having any privileges.
616
+ - Updated dependencies
617
+ [[`2d447a6b4`](https://github.com/graphile/crystal/commit/2d447a6b45d7db2813bd957f412cd959e2185759)]:
618
+ - pg-introspection@0.0.1-beta.4
619
+ - @dataplan/pg@0.0.1-beta.11
620
+
621
+ ## 5.0.0-beta.13
622
+
623
+ ### Patch Changes
624
+
625
+ - [#1797](https://github.com/graphile/crystal/pull/1797)
626
+ [`26e0bc726`](https://github.com/graphile/crystal/commit/26e0bc72653cd8dcef4b6cfb3c76876a5e620a12)
627
+ Thanks [@benjie](https://github.com/benjie)! - Fix that smart tags were not
628
+ copied onto enum codecs.
629
+
630
+ - Updated dependencies
631
+ [[`26e0bc726`](https://github.com/graphile/crystal/commit/26e0bc72653cd8dcef4b6cfb3c76876a5e620a12)]:
632
+ - @dataplan/pg@0.0.1-beta.11
633
+
634
+ ## 5.0.0-beta.12
635
+
636
+ ### Patch Changes
637
+
638
+ - Updated dependencies
639
+ [[`2805edc68`](https://github.com/graphile/crystal/commit/2805edc68b90546bf71ffd293af4d87a79345825)]:
640
+ - pg-sql2@5.0.0-beta.4
641
+ - @dataplan/pg@0.0.1-beta.10
642
+ - grafast@0.1.1-beta.0
643
+
644
+ ## 5.0.0-beta.11
645
+
646
+ ### Patch Changes
647
+
648
+ - [#1770](https://github.com/graphile/crystal/pull/1770)
649
+ [`9a84bc6dd`](https://github.com/graphile/crystal/commit/9a84bc6dd5b33c1919f75f867df1f61c78686695)
650
+ Thanks [@benjie](https://github.com/benjie)! - Fix issues around enum tables:
651
+ indicate when an enum table codec replaces a regular attribute codec, expose
652
+ helpers for working with enum tables, and don't exclude enum table references
653
+ when using the Relay preset.
654
+
655
+ - [#1769](https://github.com/graphile/crystal/pull/1769)
656
+ [`b728d7fb9`](https://github.com/graphile/crystal/commit/b728d7fb91eb29fbb21d955af5fd9cb4278f6222)
657
+ Thanks [@benjie](https://github.com/benjie)! - Fix error message when ref is
658
+ used with no foreign key.
659
+
660
+ - [#1774](https://github.com/graphile/crystal/pull/1774)
661
+ [`7d55d2c34`](https://github.com/graphile/crystal/commit/7d55d2c343880d7e665f9743f6ae7e39343c22cc)
662
+ Thanks [@benjie](https://github.com/benjie)! - Add
663
+ `preset.gather.pgIdentifiers` setting (values: 'qualified' or 'unqualified');
664
+ if set to 'unqualified' then we will not add the schema name to table or
665
+ function identifiers - it's up to you to ensure they're present in the
666
+ `search_path` (which you can set via `pgSettings` on a per-request basis).
667
+ - Updated dependencies
668
+ [[`4a4d26d87`](https://github.com/graphile/crystal/commit/4a4d26d87ce74589429b8ca5126a7bfdf30351b8),
669
+ [`b2bce88da`](https://github.com/graphile/crystal/commit/b2bce88da26c7a8965468be16fc2d935eadd3434),
670
+ [`861a8a306`](https://github.com/graphile/crystal/commit/861a8a306ef42a821da19e77903ddd7e8130bfb3),
671
+ [`9a84bc6dd`](https://github.com/graphile/crystal/commit/9a84bc6dd5b33c1919f75f867df1f61c78686695),
672
+ [`b728d7fb9`](https://github.com/graphile/crystal/commit/b728d7fb91eb29fbb21d955af5fd9cb4278f6222)]:
673
+ - grafast@0.1.1-beta.0
674
+ - @dataplan/pg@0.0.1-beta.9
675
+ - graphile-build@5.0.0-beta.10
676
+
677
+ ## 5.0.0-beta.10
678
+
679
+ ### Patch Changes
680
+
681
+ - [#514](https://github.com/graphile/crystal-pre-merge/pull/514)
682
+ [`c9848f693`](https://github.com/graphile/crystal-pre-merge/commit/c9848f6936a5abd7740c0638bfb458fb5551f03b)
683
+ Thanks [@benjie](https://github.com/benjie)! - Update package.json repository
684
+ information
685
+
686
+ - Updated dependencies
687
+ [[`c9848f693`](https://github.com/graphile/crystal-pre-merge/commit/c9848f6936a5abd7740c0638bfb458fb5551f03b),
688
+ [`ede1092fe`](https://github.com/graphile/crystal-pre-merge/commit/ede1092fe197719b6fa786f4cfa75f6a1f4c56c1),
689
+ [`566983fbd`](https://github.com/graphile/crystal-pre-merge/commit/566983fbd99c4b2df8c4ebd6260521670a2b7dfc),
690
+ [`409bf6071`](https://github.com/graphile/crystal-pre-merge/commit/409bf607180d4d8faec658c803e5ec4d1a00c451)]:
691
+ - graphile-build@5.0.0-beta.9
692
+ - pg-introspection@0.0.1-beta.3
693
+ - graphile-config@0.0.1-beta.3
694
+ - @dataplan/pg@0.0.1-beta.8
695
+ - grafast@0.0.1-beta.8
696
+ - tamedevil@0.0.0-beta.3
697
+ - pg-sql2@5.0.0-beta.3
698
+
699
+ ## 5.0.0-beta.9
700
+
701
+ ### Patch Changes
702
+
703
+ - Updated dependencies
704
+ [[`3700e204f`](https://github.com/benjie/crystal/commit/3700e204f430db182c92ca7abc82017c81fa1f9b)]:
705
+ - grafast@0.0.1-beta.7
706
+ - @dataplan/pg@0.0.1-beta.7
707
+ - graphile-build@5.0.0-beta.8
708
+
709
+ ## 5.0.0-beta.8
710
+
711
+ ### Patch Changes
712
+
713
+ - [#496](https://github.com/benjie/crystal/pull/496)
714
+ [`c9bfd9892`](https://github.com/benjie/crystal/commit/c9bfd989247f9433fb5b18c5175c9d8d64cd21a1)
715
+ Thanks [@benjie](https://github.com/benjie)! - Update dependencies (sometimes
716
+ through major versions).
717
+
718
+ - Updated dependencies
719
+ [[`c9bfd9892`](https://github.com/benjie/crystal/commit/c9bfd989247f9433fb5b18c5175c9d8d64cd21a1),
720
+ [`e613b476d`](https://github.com/benjie/crystal/commit/e613b476d6ee867d1f7509c895dabee40e7f9a31)]:
721
+ - graphile-build@5.0.0-beta.7
722
+ - pg-introspection@0.0.1-beta.2
723
+ - graphile-config@0.0.1-beta.2
724
+ - @dataplan/pg@0.0.1-beta.6
725
+ - grafast@0.0.1-beta.6
726
+ - tamedevil@0.0.0-beta.2
727
+ - pg-sql2@5.0.0-beta.2
728
+
729
+ ## 5.0.0-beta.7
730
+
731
+ ### Patch Changes
732
+
733
+ - [#488](https://github.com/benjie/crystal/pull/488)
734
+ [`e916b7412`](https://github.com/benjie/crystal/commit/e916b7412fc1fbbcb1578dbe07684189c2a720ad)
735
+ Thanks [@benjie](https://github.com/benjie)! - Fix issues with polymorphism
736
+ when interacting with nodeIds, particularly in mutations and SQL functions.
737
+
738
+ - [#488](https://github.com/benjie/crystal/pull/488)
739
+ [`109c8ec67`](https://github.com/benjie/crystal/commit/109c8ec6784dc74f4c4c4c43cc61516cc12401c8)
740
+ Thanks [@benjie](https://github.com/benjie)! - Add new pgTableResource helper
741
+ and refactor a lot of code to use it, reducing code in many cases
742
+ - Updated dependencies
743
+ [[`95e902f54`](https://github.com/benjie/crystal/commit/95e902f5403c16895e874692f7650293d77590dd),
744
+ [`53186213a`](https://github.com/benjie/crystal/commit/53186213ade962f4b66cb0d5ea8b57b5ce7ea85f),
745
+ [`73f1b5218`](https://github.com/benjie/crystal/commit/73f1b52187b2e009d502afa1db8a4e8f702e2958)]:
746
+ - @dataplan/pg@0.0.1-beta.5
747
+ - grafast@0.0.1-beta.5
748
+ - graphile-build@5.0.0-beta.6
749
+
750
+ ## 5.0.0-beta.6
751
+
752
+ ### Patch Changes
753
+
754
+ - [#459](https://github.com/benjie/crystal/pull/459)
755
+ [`d17dd1cd4`](https://github.com/benjie/crystal/commit/d17dd1cd47d6cb125fbc84c38a8c004857e1bdd2)
756
+ Thanks [@benjie](https://github.com/benjie)! - Disable mutations for
757
+ `@interface mode:relational` tables. (They shouldn't have been enabled, and
758
+ they don't work yet.)
759
+
760
+ - [#464](https://github.com/benjie/crystal/pull/464)
761
+ [`00d026409`](https://github.com/benjie/crystal/commit/00d0264090f90914eac881b34918fa3370782adc)
762
+ Thanks [@benjie](https://github.com/benjie)! - `@dataplan/pg/adaptors/pg` now
763
+ adds `rawClient` property which is the underlying Postgres client for use with
764
+ `pgTyped`, `zapatos`, and other libraries that can use a raw postgres client.
765
+ This is exposed via `NodePostgresPgClient` interface which is a subtype of
766
+ `PgClient`.
767
+ - Updated dependencies
768
+ [[`53f0488b1`](https://github.com/benjie/crystal/commit/53f0488b1c060fe9f5dfcd67ad5c0bd932a4b7aa),
769
+ [`f9cc88dc4`](https://github.com/benjie/crystal/commit/f9cc88dc442d371aee154a28d4e63c6da39f6b2e),
770
+ [`00d026409`](https://github.com/benjie/crystal/commit/00d0264090f90914eac881b34918fa3370782adc)]:
771
+ - @dataplan/pg@0.0.1-beta.4
772
+ - grafast@0.0.1-beta.4
773
+ - graphile-build@5.0.0-beta.5
774
+
775
+ ## 5.0.0-beta.5
776
+
777
+ ### Patch Changes
778
+
779
+ - [#457](https://github.com/benjie/crystal/pull/457)
780
+ [`22ecd1e5d`](https://github.com/benjie/crystal/commit/22ecd1e5de1dcd094be3085cba56b705446413f9)
781
+ Thanks [@benjie](https://github.com/benjie)! - Hotfix: PgTableNodePlugin
782
+ should only deal with table resources
783
+
784
+ ## 5.0.0-beta.4
785
+
786
+ ### Patch Changes
787
+
788
+ - [#454](https://github.com/benjie/crystal/pull/454)
789
+ [`196e5c1aa`](https://github.com/benjie/crystal/commit/196e5c1aab52dbe2a069d0a15b9e4931523fd2dd)
790
+ Thanks [@benjie](https://github.com/benjie)! -
791
+ `@interface mode=single/relational` now get `Node` interface if the table has
792
+ a PK.
793
+
794
+ 🚨 `@interface mode=union` no longer gets `Node` interface unless you also add
795
+ `@behavior node`.
796
+
797
+ - [#454](https://github.com/benjie/crystal/pull/454)
798
+ [`e75bf57dd`](https://github.com/benjie/crystal/commit/e75bf57ddb20d20c86dba880cbb1970ec6a875af)
799
+ Thanks [@benjie](https://github.com/benjie)! - Automatically register
800
+ connection types for unionMember unions.
801
+
802
+ - Updated dependencies
803
+ [[`196e5c1aa`](https://github.com/benjie/crystal/commit/196e5c1aab52dbe2a069d0a15b9e4931523fd2dd)]:
804
+ - graphile-build@5.0.0-beta.4
805
+ - @dataplan/pg@0.0.1-beta.3
806
+
3
807
  ## 5.0.0-beta.3
4
808
 
5
809
  ### Patch Changes