Releases: graphile/crystal
graphile-export@1.0.0
graphile-export
1.0.0-rc.6
Patch Changes
- #2990
5d408bd
Thanks @benjie! - No code changes. Updates the
release process, cleans up package.json, uses fixed identifiers for peer
dependencies (unless they're explicit dependencies also). Hopefully move to
trusted publishing.
1.0.0-rc.5
Patch Changes
-
#2963
9c417ca
Thanks @benjaie! - Graphile Export now optimizes
the code further by detecting the parameters of functions that are always
called with the same values and eliminating them. Further optimizations have
also been applied: Graphile Export now requires fewer passes to achieve the
same results and more optimizations to the exported code are now applied. -
#2966
82ef520
Thanks @benjie! - Fix omission in Graphile Export
where exporting a frozen/sealed object or array would not result in a
frozen/sealed object being restored. -
#2960
5e9082b
Thanks @benjie! - Implement deduplication of
equivalentEXPORTABLE(...)expressions (shrink export size). -
#2959
53d5daf
Thanks @benjie! - Improve compatibility with Node
ESM -
#2965
d15e1c2
Thanks @benjie! - Make EXPORTABLE's scope a
readonly array for greater compatibility. -
#2959
3fca6a7
Thanks @benjie! - Improve optimization pass to
eliminate more redundant logic. -
#2967
dbdc8d8
Thanks @benjie! - Further optimize theoptimize
step in Graphile Export -
#2962
b73416b
Thanks @benjaie! - Improve export optimization
to remove redundant repeated identifier arguments from local helper function
calls, resulting in smaller and more straight-forward exports and easier
optimizations for third-party plugins whereimports are discouraged. -
Updated dependencies
[b793077,
57dfa70]:- grafast@1.0.0-rc.8
1.0.0-rc.4
Patch Changes
a3722d6
Thanks @benjie! - Refactor to enable TypeScript
options rewriteRelativeImportExtensions and erasableSyntaxOnly (including
using .ts extensions in source code)- Updated dependencies
[9eb3829,
a3722d6,
5fc379e]:- grafast@1.0.0-rc.5
- pg-sql2@5.0.0-rc.4
1.0.0-rc.3
Patch Changes
-
#2877
1e45a3d
Thanks @benjie! - Safety - use null prototype
objects in more places. -
#2873
0772086
Thanks @benjie! - Update TypeScript configuration
to support Node 22 minimum -
#2888
1a56db2
Thanks @benjaie! - Node v22+ is required for
this module. -
Updated dependencies
[44555c7,
1e45a3d,
0772086,
a565503,
d9ccc82,
1a56db2,
eafa3f0,
b27c562,
f23f0cf,
afe31f0,
d3a1be9]:- grafast@1.0.0-rc.4
- pg-sql2@5.0.0-rc.3
1.0.0-rc.2
Patch Changes
1.0.0-rc.1
Patch Changes
-
Updated dependencies
[abb623d,
31b388c,
930240a,
7b86454,
42a0785,
d196d60,
c6cbe61,
d4ac603,
8a5a7c5,
ea0135f,
b6821f5]:- grafast@1.0.0-rc.1
- pg-sql2@5.0.0-rc.1
0.0.2-beta.31
Patch Changes
-
#2730
4c3cf22
Thanks @benjie! - Updategraphqlversion range -
#2142
ab96e5f
Thanks @benjie! - Support for@deferand
@streamno longer requiresgraphql@16.1.0-experimental-stream-defer.6.
graphql@^16.9.0should now work, since we ponyfill everything we need. -
Updated dependencies
[4c3cf22,
71e0af2,
ab96e5f,
278b4d3,
eaa771b,
d0c15cc,
bffbb77,
[c48ca48](c48ca4840227b8e5e6a1dc198...
graphile-config@1.0.0
graphile-config
1.0.0-rc.6
Patch Changes
- #2990
5d408bd
Thanks @benjie! - No code changes. Updates the
release process, cleans up package.json, uses fixed identifiers for peer
dependencies (unless they're explicit dependencies also). Hopefully move to
trusted publishing.
1.0.0-rc.5
Patch Changes
- #2937
8f50146
Thanks @benjie! - Eliminate dangling promises,
reducing chance of process exit due to unhandled promise rejection.
1.0.0-rc.4
Patch Changes
-
#2910
9eb3829
Thanks @benjie! - Use consistent type export
syntax -
a3722d6
Thanks @benjie! - Refactor to enable TypeScript
options rewriteRelativeImportExtensions and erasableSyntaxOnly (including
using .ts extensions in source code)
1.0.0-rc.3
Patch Changes
-
#2873
0772086
Thanks @benjie! - Update TypeScript configuration
to support Node 22 minimum -
#2888
1a56db2
Thanks @benjaie! - Node v22+ is required for
this module.
1.0.0-rc.2
Patch Changes
1.0.0-rc.1
Patch Changes
0.0.1-beta.18
Patch Changes
-
#2697
cfd4c3c
Thanks @benjie! - Be more selective about the
errors caught whilst loading a config file; a bug/throw in the config file
should still be raised. -
#2688
e15f886
Thanks @benjie! - Fixes bug where two different
plugins with the same name would be allowed to exist in the same (resolved)
preset. Users of dynamically created presets and plugins (e.g.
makeV4Preset(...)in PostGraphile) should be wary not to include two calls
to the same factory in their preset (directly or indirectly).
0.0.1-beta.17
Patch Changes
-
#2588
e0cdabe
Thanks @benjie! - Add support for
--experimental-strip-typestographile-config's loading of config files.
No need forts-node/tsxnow.
0.0.1-beta.16
Patch Changes
- #2482
459e1869a2ec58925b2bac5458af487c52a8ca37
Thanks @benjie! - Minimum version of Node.js
bumped to Node 22 (the latest LTS).
0.0.1-beta.15
Patch Changes
00d79e6f5608affc3f36bb0ce4ca2547230174e7
Thanks @benjie! - Rename parameter to
Middleware.register.
0.0.1-beta.14
Patch Changes
0.0.1-beta.13
Patch Changes
0.0.1-beta.12
Patch Changes
-
#2240
d13b76f0f
Thanks @benjie! - Adds
MiddlewareHandlers<TActivities>type to help with adding middleware to
configs -
#2253
b167bd849
Thanks @benjie! - 🚨{}is no longer a valid
GraphileConfig.ResolvedPreset; useresolvePreset({})Also: adds
resolvePreset(preset)and deprecatesresolvePresets(presets). -
#2250
6a13ecbd4
Thanks @benjie! - Add support for 'preset.lib'
which can be used to store global module references to help avoid the dual
package hazard.
0.0.1-beta.11
Patch Changes
0.0.1-beta.10
Patch Changes
-
#2188
cc0941731
Thanks @benjie! - Overhaul the way in which
graphile-configpresets work such that including a preset at two different
layers shouldn't result in unexpected behavior. -
#2155
8b472cd51
Thanks @benjie! -disablePluginsnow supports
TypeScript auto-completion of known plugin names. Other names are still
accepted without error, so this is just a minor DX improvement rather than
type safety. -
#2160
9cd9bb522
Thanks @benjie! - Add support for lists of hook
objects, so that the same hook can be applied multiple times in the same
plugin but with different priorities.
0.0.1-beta.9
Patch Changes
-
#2071
582bd768f
Thanks @benjie! -GrafastExecutionArgsnow
acceptsresolvedPresetandrequestContextdirectly; passing these through
additional arguments is now deprecated and support will be removed in a future
revision. This affects:grafast()execute()subscribe()hookArgs()
graphile-confighas gained a middleware system which is more powerful than
it's AsyncHooks system. Old hooks can be emulated through the middleware
system safely since middleware is a superset of hooks' capabilities.
applyHookshas been renamed toorderedApply(because it applies to more
than just hooks), callingapplyHookswill still work but is deprecated.🚨
grafastno longer automatically reads yourgraphile.config.tsor
similar; you must do that yourself and pass theresolvedPresetto grafast
via theargs. This is to aid in bundling of grafast since it should not need
to read from filesystem or dynamically load modules.grafastno longer outputs performance warning when you set
GRAPHILE_ENV=development.🚨
plugin.grafast.hooks.argsis nowplugin.grafast.middleware.prepareArgs,
and the signature has changed - you must be sure to call thenext()function
and ctx/resolvedPreset can be extracted directly fromargs:const plugin = { grafast: { - hooks: { + middleware: { - args({ args, ctx, resolvedPreset }) { + prepareArgs(next, { args }) { + const { requestContext: ctx, resolvedPreset } = args; // ... + return next(); } } } }Many more middleware have been added; use TypeScript's autocomplete to see
what's available until we have proper documentation for them.plugin.grafserv.hooks.*are still supported but deprecated; instead use
middlewareplugin.grafserv.middleware.*(note that call signatures have
...
graphile-build@5.0.0
graphile-build
5.0.0-rc.6
Patch Changes
- #2990
5d408bd
Thanks @benjie! - No code changes. Updates the
release process, cleans up package.json, uses fixed identifiers for peer
dependencies (unless they're explicit dependencies also). Hopefully move to
trusted publishing. - Updated dependencies
[5d408bd]:- graphile-config@1.0.0-rc.6
- tamedevil@0.1.0-rc.6
5.0.0-rc.5
Patch Changes
-
#2957
5615d3f
Thanks @benjie! - Significantly reduce the size
of a PostGraphile exported schema (around 20% reduction on test fixtures) by:- marking optional things as optional
- excluding many optional things from being specified in configuration objects
(includingtagsobjects if no tags are present) - using
LIST_TYPESfor PostgreSQL builtin list types - extracting inline function definitions to be global functions where
appropriate, and simplifying functions where not
Breaking changes to types (but more accurate reflection of reality):
extensionsis now marked as optional in many places.extensions.tagsis now marked optional in many places.PgCodecAttribute.notNullis now marked as optional.PgResourceParameter.requiresis now marked as optional.PgCodecRelation.isUniqueis now marked as optional.pgGetArgDetailsFromParameters().argDetails.postgresArgNameis now optional
(may returnundefinedin addition tonull) and.requiredis now
optional (returnsboolean | undefined)
-
#2959
8384026
Thanks @benjie! - Add experimental schema
minification support, useful for people exporting to Lambda or similar. -
#2960
57dfa70
Thanks @benjie! - Use new Grafast
markSyncAndSafehelper when defining sync and safe functions. -
#2965
d15e1c2
Thanks @benjie! - Make EXPORTABLE's scope a
readonly array for greater compatibility. -
#2965
c0b8af9
Thanks @benjie! - Add new EXPORTABLE_CLONE_ARRAY
helper for exporting arrays after construction -
#2959
c9fd9f3
Thanks @benjie! - Use shared logic to decrease
export size. -
Updated dependencies
[b793077,
81ade71,
57dfa70,
d15e1c2]:- grafast@1.0.0-rc.8
- tamedevil@0.1.0-rc.5
5.0.0-rc.4
Patch Changes
-
#2910
9eb3829
Thanks @benjie! - Use consistent type export
syntax -
a3722d6
Thanks @benjie! - Refactor to enable TypeScript
options rewriteRelativeImportExtensions and erasableSyntaxOnly (including
using .ts extensions in source code) -
#2897
7ca663e
Thanks @benjie! - Fix various places where
inflection.builtin()was not called, and thus changes to builtin inflection
were not reflected. (Also adds test to prevent regression.) -
Updated dependencies
[9eb3829,
a3722d6,
5fc379e]:- graphile-config@1.0.0-rc.4
- grafast@1.0.0-rc.5
- tamedevil@0.1.0-rc.4
5.0.0-rc.3
Patch Changes
-
#2877
1e45a3d
Thanks @benjie! - Safety - use null prototype
objects in more places. -
#2873
0772086
Thanks @benjie! - Update TypeScript configuration
to support Node 22 minimum -
#2849
a60ed2a
Thanks @benjie! - "Transliterate" non-latin
characters so that schemas can be constructed more easily when characters
incompatible with GraphQL'sNameare used.To disable, remove the new plugin:
const preset = { extends: [AmberPreset /* ... */], + disablePlugins: ['TransliterationPlugin'], /* ... */ } -
#2888
1a56db2
Thanks @benjaie! - Node v22+ is required for
this module. -
Updated dependencies
[44555c7,
1e45a3d,
0772086,
a565503,
d9ccc82,
1a56db2,
eafa3f0,
b27c562,
f23f0cf]:- grafast@1.0.0-rc.4
- graphile-config@1.0.0-rc.3
- tamedevil@0.1.0-rc.3
5.0.0-rc.2
Patch Changes
-
#2806
5ad7ad0
Thanks @benjie! - Fix issues with extending
interfaces by adding newbuild.appendhelper. -
Updated dependencies
[f3a9869,
68f61cd,
a82e6fa]:- grafast@1.0.0-rc.2
- graphile-config@1.0.0-rc.2
- tamedevil@0.1.0-rc.2
5.0.0-rc.1
Patch Changes
-
#2777
6a4e3b9
Thanks @benjie! - Implement queue for
watchGather/watchSchema/etc and integrate with grafserv'ssetPreset
middleware. Promises returned by such now delay schema application, preventing
growing concurrent work. -
#2777
c6cbe61
Thanks @benjie! - Tighten our public API surface
by:- renaming
EventStreamHeandlerResult...
- renaming
grafserv@1.0.0
grafserv
1.0.0-rc.7
Patch Changes
- #2990
5d408bd
Thanks @benjie! - No code changes. Updates the
release process, cleans up package.json, uses fixed identifiers for peer
dependencies (unless they're explicit dependencies also). Hopefully move to
trusted publishing. - Updated dependencies
[5d408bd]:- graphile-config@1.0.0-rc.6
- ruru@2.0.0-rc.7
- @graphile/lru@5.0.0-rc.5
1.0.0-rc.6
Patch Changes
-
#2940
04a7a75
Thanks @benjaie! - Ensure unambiguous koa
context type -
#2937
8f50146
Thanks @benjie! - Eliminate dangling promises,
reducing chance of process exit due to unhandled promise rejection. -
#2945
0971ae0
Thanks @benjaie! - Load ruru asynchronously, no
need to load if not used. -
Updated dependencies
[8f50146,
5e83533,
03e5ce5,
f213a8e]:- graphile-config@1.0.0-rc.5
- grafast@1.0.0-rc.7
- ruru@2.0.0-rc.6
1.0.0-rc.5
Patch Changes
-
a3722d6
Thanks @benjie! - Refactor to enable TypeScript
options rewriteRelativeImportExtensions and erasableSyntaxOnly (including
using .ts extensions in source code) -
#2927
1d5d63e
Thanks @benjie! - Added Fastify v5 adaptor
(copy/paste of v4 adaptor) -
Updated dependencies
[9eb3829,
a3722d6,
ebe1d22,
be9792b,
5fc379e]:- graphile-config@1.0.0-rc.4
- grafast@1.0.0-rc.5
- ruru@2.0.0-rc.5
- @graphile/lru@5.0.0-rc.4
1.0.0-rc.4
Patch Changes
-
#2873
0772086
Thanks @benjie! - Update TypeScript configuration
to support Node 22 minimum -
#2887
a565503
Thanks @benjie! - Internals reworked to use
Promise.withResolvers()instead of removeddefer()function. -
#2878
d9ccc82
Thanks @benjie! - Eliminate a number of potential
unhandled promise rejection issues by adding noop-handling. -
#2888
1a56db2
Thanks @benjaie! - Node v22+ is required for
this module. -
Updated dependencies
[44555c7,
1e45a3d,
0772086,
1606298,
a565503,
d9ccc82,
1a56db2,
eafa3f0,
2e770df,
d758351,
b27c562,
f23f0cf]:- grafast@1.0.0-rc.4
- ruru@2.0.0-rc.4
- graphile-config@1.0.0-rc.3
- @graphile/lru@5.0.0-rc.3
1.0.0-rc.3
Patch Changes
-
Updated dependencies
[c4f2e52]:- grafast@1.0.0-rc.3
- ruru@2.0.0-rc.3
1.0.0-rc.2
Patch Changes
-
Updated dependencies
[f3a9869,
68f61cd,
a82e6fa]:- grafast@1.0.0-rc.2
- graphile-config@1.0.0-rc.2
- ruru@2.0.0-rc.2
- @graphile/lru@5.0.0-rc.2
1.0.0-rc.1
Patch Changes
-
#2777
6a4e3b9
Thanks @benjie! - Implement queue for
watchGather/watchSchema/etc and integrate with grafserv'ssetPreset
middleware. Promises returned by such now delay schema application, preventing
growing concurrent work. -
#2777
c6cbe61
Thanks @benjie! - Tighten our public API surface
by:- renaming
EventStreamHeandlerResultto the correctly spelt
EventStreamHandlerResult(and keeping only a deprecated alias for the old
name) - dropping the long-deprecated Grafast exports
InterfaceOrUnionPlans(use
InterfacePlanorUnionPlanas appropriate),deepEval(should be
applyTransforms) andDeepEvalStep(should beApplyTransformsStep) - removing the
PgAdaptorOptionsalias in favour ofPgAdaptorSettings - deleting the PostGraphile preset aliases
postgraphilePresetAmbershould be
PostGraphileAmberPreset) andPgRelayPreset(should be
PostGraphileRelayPreset), and updating all first-party usage to the
canonical names
- renaming
-
#2792
f23e0e0
Thanks @malyzeli! - Add support for event
streams (e.g. schema watch mode) to Hono Grafserv adaptor. (Thanks @malyzeli!) -
Updated dependencies
[abb623d,
7b86454,
42a0785,
d196d60,
c6cbe61,
d4ac603,
[8a5a7c5](8a5a7c5...
eslint-plugin-graphile-export@1.0.0
eslint-plugin-graphile-export
1.0.0-rc.5
Patch Changes
- #2990
5d408bd
Thanks @benjie! - No code changes. Updates the
release process, cleans up package.json, uses fixed identifiers for peer
dependencies (unless they're explicit dependencies also). Hopefully move to
trusted publishing.
1.0.0-rc.4
Patch Changes
a3722d6
Thanks @benjie! - Refactor to enable TypeScript
options rewriteRelativeImportExtensions and erasableSyntaxOnly (including
using .ts extensions in source code)
1.0.0-rc.3
Patch Changes
-
#2873
0772086
Thanks @benjie! - Update TypeScript configuration
to support Node 22 minimum -
#2888
1a56db2
Thanks @benjaie! - Node v22+ is required for
this module.
1.0.0-rc.2
Patch Changes
1.0.0-rc.1
Patch Changes
0.0.2-beta.10
Patch Changes
0.0.2-beta.9
Patch Changes
0.0.2-beta.8
Patch Changes
- #2574
ec25997a6a2557cde9aaa9e27eb202ad945b6015
Thanks @benjie! - Fix dependency ranges to allow
ESLint 9
0.0.2-beta.7
Patch Changes
-
#2481
8c1dc528e3c03e2c2855adb7273319412f841c14
Thanks @kzlar! - 🚨 Now uses a flat config for
compatibility with ESLint v9. -
#2482
459e1869a2ec58925b2bac5458af487c52a8ca37
Thanks @benjie! - Minimum version of Node.js
bumped to Node 22 (the latest LTS).
0.0.2-beta.6
Patch Changes
-
#2377
7c38cdeffe034c9b4f5cdd03a8f7f446bd52dcb7
Thanks @benjie! - SinceModifierStepand
BaseStepare no more;ExecutableStepcan be renamed to simplyStep. The
old name (ExecutableStep) is now deprecated. -
#2398
c041fd250372c57601188b65a6411c8f440afab6
Thanks @benjie! - Since the following have been
removed from Grafast, throw an error if they're seen in the schema:autoApplyAfterParentInputPlanautoApplyAfterParentApplyPlanautoApplyAfterParentPlanautoApplyAfterParentSubscribePlaninputPlanapplyPlanon input fields
Also: when Query type fails to build, throw the underlying error directly.
-
#2376
da6f3c04efe3d8634c0bc3fcf93ac2518de85322
Thanks @benjie! - Overhaul Grafast to remove more
input planning - inputs should be evaluated at runtime - and remove more
plan-time step evaluation.FieldArgs.getis no more; useFieldArgs.getRawor usebakedInput()
(TODO: document) to get the "baked" version of a raw input value.Input object fields no longer have
applyPlan/inputPlan, instead having the
runtime equivalentsapply()andbaked().FieldArgsis no longer
available on input object fields, since these fields are no longer called at
plantime; instead, the actual value is passed.FieldArgsgains.typeAt(path)method that details the GraphQL input type
at the given path.Field arguments are no longer passed
FieldArgs, instead they're passed a
(similar)FieldArgobject representing the argument value itself.autoApplyAfterParentPlanis no more - instead if an argument hasapplyPlan
it will be called automatically unless it was called during the field plan
resolver itself.autoApplyAfterParentSubscribePlanis no more - instead if an argument has
applySubscribePlanit will be called automatically unless it was called
during the field plan resolver itself.Field arguments no longer support
inputPlan- usebakedInput()if you need
that.Input fields no longer support
inputPlan,applyPlan,
autoApplyAfterParentInputPlannorautoApplyAfterParentApplyPlan. Instead,
apply()(which is called byapplyStep()at runtime) has been added.sqlValueWithCodec(value, codec)can be used at runtime in places where
$step.placeholder($value, codec)would have been used previously.
placeholderhas been removed from all places that are now runtime - namely
the list of modifiers below...The following
ModifierStepclasses have all dropped theirStepsuffix,
theseModifierclasses now all run at runtime, and are thus no longer steps;
they're invoked as part of the newapplyInput()(TODO: document) step:ModifierStep⇒ModifierPgBooleanFilterStep⇒PgBooleanFilterPgClassFilterStep⇒PgClassFilterPgConditionCapableParentStep⇒PgConditionCapableParentPgConditionLikeStep⇒PgConditionLikePgConditionStepMode⇒PgConditionModePgConditionStep⇒PgConditionPgManyFilterStep⇒PgManyFilterPgOrFilterStep⇒PgOrFilterPgTempTableStep⇒PgTempTableSetterCapableStep⇒SetterCapableSetterStep⇒Setter
(Interestingly, other than the removal of
placeholderand the fact they deal
with runtime values rather than steps now, they're very similar to what they
were before.)The deprecated forms of the above have been removed.
Methods that rely on these modifier plans have been removed:
PgUnionAllStep.wherePlan- use
fieldArg.apply($unionAll, qb => qb.whereBuilder())insteadPgUnionAllStep.havingPlan- use
fieldArg.apply($unionAll, qb => qb.havingBuilder())instead- Same for PgSelectStep
The following gain query builders:
PgInsertSinglePgUpdateSinglePgDeleteSingle
Query builders gain
meta, an object that can be augmented with metadata
about the operation (typically this relates to cursors and similar
functionality). This is now used to implementclientMutationId.Extends query builders with additional functionality.
Many of the types have had their generics changed, TypeScript should guide you
if you have issues here.NodeIdHandlernow requires agetIdentifiersmethod that runs at runtime
and returns the identifiers from a decoded NodeId string.Types around GraphQL Global Object Identification (i.e.
Node/id) have
changed.
0.0.2-beta.5
Patch Changes
- #2175
c69b2fdec
Thanks @benjie! - Fix 'Container is falsy' error
message the latest Babel patch release would cause.
0.0.2-beta.4
Patch Changes
- #1933
3a2ea80ee
Thanks @mattiarossi! -
eslint-plugin-graphile-exportnow spots instances ofinputPlan,
applyPlanandassertStepso they can be checked - thanks @mattiarossi!
0.0.2-beta.3
Patch Changes
0.0.2-beta.2
Patch Changes
@graphile/simplify-inflection@8.0.0
v8.0.0
8.0.0-rc.5
Patch Changes
- #2990
5d408bd
Thanks @benjie! - No code changes. Updates the
release process, cleans up package.json, uses fixed identifiers for peer
dependencies (unless they're explicit dependencies also). Hopefully move to
trusted publishing.
8.0.0-rc.4
Patch Changes
-
#2957
5615d3f
Thanks @benjie! - Significantly reduce the size
of a PostGraphile exported schema (around 20% reduction on test fixtures) by:- marking optional things as optional
- excluding many optional things from being specified in configuration objects
(includingtagsobjects if no tags are present) - using
LIST_TYPESfor PostgreSQL builtin list types - extracting inline function definitions to be global functions where
appropriate, and simplifying functions where not
Breaking changes to types (but more accurate reflection of reality):
extensionsis now marked as optional in many places.extensions.tagsis now marked optional in many places.PgCodecAttribute.notNullis now marked as optional.PgResourceParameter.requiresis now marked as optional.PgCodecRelation.isUniqueis now marked as optional.pgGetArgDetailsFromParameters().argDetails.postgresArgNameis now optional
(may returnundefinedin addition tonull) and.requiredis now
optional (returnsboolean | undefined)
8.0.0-rc.3
Patch Changes
8.0.0-rc.2
Patch Changes
8.0.0-rc.1
Patch Changes
8.0.0-beta.8
Patch Changes
-
#2682
88146e2
Thanks @benjie! - 🚨 Fix bug where names were
incorrectly derived for AmberPreset/RelayPreset.If you need to restore the old (broken) behavior, use something this plugin
(untested):const ShinyFlowersBeamUndoPlugin = { name: "ShinyFlowersBeamUndoPlugin", inflection: { replace: { _getBaseNameFromKeys(original, preset, detailedKeys) { if (detailedKeys.length === 1) { const key = detailedKeys[0]; const attributeName = this._attributeName({ ...key, skipRowId: false, // HACK: deliberately opt in to poor naming }); return this._getBaseName(attributeName); } if (preset.schema?.pgSimplifyMultikeyRelations) { const attributeNames = detailedKeys.map((key) => this._attributeName({ ...key, skipRowId: true, // HACK: deliberately opt in to poor naming }), ); const baseNames = attributeNames.map((attributeName) => this._getBaseName(attributeName), ); // Check none are null if (baseNames.every((n) => n)) { return baseNames.join("-"); } } return null; }, }, }, };
8.0.0-beta.7
Patch Changes
- #2482
459e1869a2ec58925b2bac5458af487c52a8ca37
Thanks @benjie! - Minimum version of Node.js
bumped to Node 22 (the latest LTS).
8.0.0-beta.6
Patch Changes
8.0.0-beta.5
Patch Changes
8.0.0-beta.4
Patch Changes
8.0.0-beta.3
Patch Changes
8.0.0-beta.2
Patch Changes
8.0.0-beta.1
Patch Changes
8.0.0-alpha.4
Patch Changes
- #408
01ad64d5d
Thanks @benjie! - RenamedgetBaseName,
baseNameMatches,getOppositeBaseNameandgetBaseNameFromKeysinflectors
to all begin with an underscore (_) - this is because these inflectors
should only be used from other inflectors, since they may return non-string
types (null/boolean/etc).
8.0.0-alpha.3
Patch Changes
8.0.0-alpha.2
Patch Changes
-
f61879689
Thanks @benjie! - Fix baseNameMatches to resolve
a regression in simplify-inflector V7 compatibility. -
7f857950a
Thanks @benjie! - Upgrade to the latest
TypeScript/tslib
8.0.0-alpha.1
Patch Changes
759ad403d
Thanks @benjie! - Alpha release - see
https://postgraphile.org/news/2023-04-26-version-5-alpha
8.0.0-1.1
Patch Changes
-
#260
d5312e6b9
Thanks @benjie! - TypeScript v5 is now required -
#260
96b0bd14e
Thanks @benjie! -PgSourcehas been renamed to
PgResource,PgTypeCodectoPgCodec,PgEnumTypeCodectoPgEnumCodec,
PgTypeColumntoPgCodecAttribute(and similar for related
types/interfaces).sourcehas been replaced byresourcein various of the
APIs where it relates to aPgResource.PgSourceBuilderis no more, instead being replaced withPgResourceOptions
and being built into the finalPgResourcevia the new
makeRegistryBuilder/makeRegistryfunctions.build.inputno longer contains thepgSourcesdirectly, instead
build.input.pgRegistry.pgResourcesshould be used.The new registry system also means that various of the hooks in the gather
phase have been renamed/replaced, there's a newPgRegistryPluginplugin in
the default preset. The only plugin that uses themainmethod in the
gatherphase is nowPgRegistryPlugin- if you are using themain
function for Postgres-related behaviors you should consider moving your logic
to hooks instead.Plugin ordering has changed and thus the shape of the final schema is likely
to change (please uselexicographicSortSchemaon your before/after schemas
when comparing).Relationships are now from a codec to a resource, rather than from resource to
resource, so all the relationship inflectors (singleRelation,
singleRelationBackwards,_manyRelation,manyRelationConnection,
manyRelationList) now accept different parameters
({registry, codec, relationName}instead of{source, relationaName}).Significant type overhaul, most generic types no longer require generics to be
explicitly passed in many circums...
@graphile/lru@5.0.0
@graphile/lru
5.0.0-rc.5
Patch Changes
- #2990
5d408bd
Thanks @benjie! - No code changes. Updates the
release process, cleans up package.json, uses fixed identifiers for peer
dependencies (unless they're explicit dependencies also). Hopefully move to
trusted publishing.
5.0.0-rc.4
Patch Changes
a3722d6
Thanks @benjie! - Refactor to enable TypeScript
options rewriteRelativeImportExtensions and erasableSyntaxOnly (including
using .ts extensions in source code)
5.0.0-rc.3
Patch Changes
-
#2873
0772086
Thanks @benjie! - Update TypeScript configuration
to support Node 22 minimum -
#2888
1a56db2
Thanks @benjaie! - Node v22+ is required for
this module.
5.0.0-rc.2
Patch Changes
5.0.0-rc.1
Patch Changes
5.0.0-beta.4
Patch Changes
- #2482
459e1869a2ec58925b2bac5458af487c52a8ca37
Thanks @benjie! - Minimum version of Node.js
bumped to Node 22 (the latest LTS).
5.0.0-beta.3
Patch Changes
5.0.0-beta.2
Patch Changes
5.0.0-beta.1
Patch Changes
5.0.0-alpha.2
Patch Changes
-
98ae00f59
Thanks @benjie! - Performance overhaul and faster
access for unsaturated LRUs. -
7f857950a
Thanks @benjie! - Upgrade to the latest
TypeScript/tslib
5.0.0-alpha.1
Patch Changes
759ad403d
Thanks @benjie! - Alpha release - see
https://postgraphile.org/news/2023-04-26-version-5-alpha
5.0.0-1.1
Patch Changes
5.0.0-0.1
Patch Changes
@grafserv/persisted@1.0.0
@grafserv/persisted
1.0.0-rc.7
Patch Changes
- #2990
5d408bd
Thanks @benjie! - No code changes. Updates the
release process, cleans up package.json, uses fixed identifiers for peer
dependencies (unless they're explicit dependencies also). Hopefully move to
trusted publishing. - Updated dependencies
[5d408bd]:- @graphile/lru@5.0.0-rc.5
1.0.0-rc.6
Patch Changes
-
#2959
848c466
Thanks @benjie! - Export as named for better Node
ESM interop -
Updated dependencies
[b793077,
57dfa70]:- grafast@1.0.0-rc.8
1.0.0-rc.5
Patch Changes
- #2937
8f50146
Thanks @benjie! - Eliminate dangling promises,
reducing chance of process exit due to unhandled promise rejection. - Updated dependencies
[04a7a75,
8f50146,
5e83533,
03e5ce5,
0971ae0,
f213a8e]:- grafserv@1.0.0-rc.6
- graphile-config@1.0.0-rc.5
- grafast@1.0.0-rc.7
1.0.0-rc.4
Patch Changes
a3722d6
Thanks @benjie! - Refactor to enable TypeScript
options rewriteRelativeImportExtensions and erasableSyntaxOnly (including
using .ts extensions in source code)- Updated dependencies
[9eb3829,
a3722d6,
5fc379e,
1d5d63e]:- graphile-config@1.0.0-rc.4
- grafast@1.0.0-rc.5
- grafserv@1.0.0-rc.5
- @graphile/lru@5.0.0-rc.4
1.0.0-rc.3
Patch Changes
-
#2873
0772086
Thanks @benjie! - Update TypeScript configuration
to support Node 22 minimum -
#2888
1a56db2
Thanks @benjaie! - Node v22+ is required for
this module. -
Updated dependencies
[44555c7,
1e45a3d,
0772086,
a565503,
d9ccc82,
1a56db2,
eafa3f0,
b27c562,
f23f0cf]:- grafast@1.0.0-rc.4
- grafserv@1.0.0-rc.4
- graphile-config@1.0.0-rc.3
- @graphile/lru@5.0.0-rc.3
1.0.0-rc.2
Patch Changes
-
Updated dependencies
[f3a9869,
68f61cd,
a82e6fa]:- grafast@1.0.0-rc.2
- graphile-config@1.0.0-rc.2
- grafserv@1.0.0-rc.2
- @graphile/lru@5.0.0-rc.2
1.0.0-rc.1
Patch Changes
-
Updated dependencies
[abb623d,
7b86454,
42a0785,
d196d60,
6a4e3b9,
c6cbe61,
d4ac603,
f23e0e0,
8a5a7c5,
ea0135f,
b6821f5]:- grafast@1.0.0-rc.1
- grafserv@1.0.0-rc.1
- graphile-config@1.0.0-rc.1
- @graphile/lru@5.0.0-rc.1
0.0.0-beta.38
Patch Changes
-
#2730
4c3cf22
Thanks @benjie! - Updategraphqlversion range -
Updated dependencies
[4c3cf22,
71e0af2,
a26ad3e,
ab96e5f,
278b4d3,
eaa771b,
d0c15cc,
bffbb77,
c48ca48]:- grafserv@0.1.1-beta.29
- grafast@0.1.1-beta.27
0.0.0-beta.37
Patch Changes
-
Updated dependencies
[1d76d2f,
c54c6db,
a480f6d,
ad588ec]:- grafserv@0.1.1-beta.27
- grafast@0.1.1-beta.24
0.0.0-beta.36
Patch Changes
- Updated dependencies
[0c6b1f1,
1f4544d,
e0cdabe,
faee38b]:- graphile-config@0.0.1-beta.17
- grafserv@0.1.1-beta.26
- grafast@0.1.1-beta.23
0.0.0-beta.35
Patch Changes
- #2482
459e1869a2ec58925b2bac5458af487c52a8ca37
Thanks @benjie! - Minimum version of Node.js
bumped to Node 22 (the latest LTS)....
@dataplan/json@1.0.0
@dataplan/json
1.0.0-rc.6
Patch Changes
- #2990
5d408bd
Thanks @benjie! - No code changes. Updates the
release process, cleans up package.json, uses fixed identifiers for peer
dependencies (unless they're explicit dependencies also). Hopefully move to
trusted publishing.
1.0.0-rc.5
Patch Changes
-
#2948
5e83533
Thanks @benjaie! - Internal: use flagError()
rather than Promise.reject(). -
Updated dependencies
[8f50146,
5e83533,
03e5ce5,
f213a8e]:- grafast@1.0.0-rc.7
1.0.0-rc.4
Patch Changes
-
#2910
9eb3829
Thanks @benjie! - Use consistent type export
syntax -
a3722d6
Thanks @benjie! - Refactor to enable TypeScript
options rewriteRelativeImportExtensions and erasableSyntaxOnly (including
using .ts extensions in source code) -
Updated dependencies
[9eb3829,
a3722d6,
5fc379e]:- grafast@1.0.0-rc.5
1.0.0-rc.3
Patch Changes
-
#2873
0772086
Thanks @benjie! - Update TypeScript configuration
to support Node 22 minimum -
#2888
1a56db2
Thanks @benjaie! - Node v22+ is required for
this module. -
Updated dependencies
[44555c7,
1e45a3d,
0772086,
a565503,
d9ccc82,
1a56db2,
eafa3f0,
b27c562,
f23f0cf]:- grafast@1.0.0-rc.4
1.0.0-rc.2
Patch Changes
1.0.0-rc.1
Patch Changes
-
Updated dependencies
[abb623d,
7b86454,
42a0785,
d196d60,
c6cbe61,
d4ac603,
8a5a7c5,
ea0135f,
b6821f5]:- grafast@1.0.0-rc.1
0.0.1-beta.33
Patch Changes
- #2652
2adfd6e
Thanks @benjie! - Makeget($step, attr)more
type-safe when the underlying steps implement the new__inferGetpattern. - Updated dependencies
[2adfd6e,
6113518]:- grafast@0.1.1-beta.25
0.0.1-beta.32
Patch Changes
- Updated dependencies
[0c6b1f1]:- grafast@0.1.1-beta.23
0.0.1-beta.31
Patch Changes
-
#2435
17b160d5450e20e0f5c6597d5cffe125ece49d65
Thanks @benjie! -jsonParse()now deduplicates -
#2482
459e1869a2ec58925b2bac5458af487c52a8ca37
Thanks @benjie! - Minimum version of Node.js
bumped to Node 22 (the latest LTS). -
Updated dependencies
[0e36cb9077c76710d2e407830323f86c5038126e,
c0c3f48fa9f60cb9a4436ea135979b779ecc71ec,
cef9a37f846b4af105ac20960530d65c9f44afa9,
56ce94a847c6a4094643665cbf5d3712f56140b6,
192a27e08763ea26607344a2ea6c7f5c595cc2a3,
6ef6abce15936a896156d5316020df55cf7d18e3,
0239c2d519300a72f545e0db7c371adae4ade2a9,
0ea439d33ccef7f8d01ac5f54893ab2bbf1cbd4d,
8034614d1078b1bd177b6e7fcc949420614e3245,
459e1869a2ec58925b2bac5458af487c52a8ca37,
c350e49e372ec12a4cbf04fb6b4260e01832d12b,
3176ea3e57d626b39613a73117ef97627370ec83,
46a42f5547c041289aa98657ebc6815f4b6c8539,
be3f174c5aae8fe78a240e1bc4e1de7f18644b43,
576fb8bad56cb940ab444574d752e914d462018a,
9f459101fa4428aa4bac71531e75f99e33da8e17,
921665df8babe2651ab3b5886ab68bb518f2125b,
78bb1a615754d772a5fda000e96073c91fa9eba7,
ab0bcda5fc3c136eea09493a7d9ed4542975858e,
455f4811d37ad8fff91183c7a88621bcf9d79acf,
45adaff886e7cd72b864150927be6c0cb4a7dfe8]:- grafast@0.1.1-beta.22
0.0.1-beta.30
Patch Changes
- #2377
[`7c3...