github graphile/crystal 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

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

0.0.2-beta.7

Patch Changes

0.0.2-beta.6

Patch Changes

  • #2377
    7c38cdeffe034c9b4f5cdd03a8f7f446bd52dcb7
    Thanks @benjie! - Since ModifierStep and
    BaseStep are no more; ExecutableStep can be renamed to simply Step. 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:

    • autoApplyAfterParentInputPlan
    • autoApplyAfterParentApplyPlan
    • autoApplyAfterParentPlan
    • autoApplyAfterParentSubscribePlan
    • inputPlan
    • applyPlan on 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.get is no more; use FieldArgs.getRaw or use bakedInput()
    (TODO: document) to get the "baked" version of a raw input value.

    Input object fields no longer have applyPlan/inputPlan, instead having the
    runtime equivalents apply() and baked(). FieldArgs is no longer
    available on input object fields, since these fields are no longer called at
    plantime; instead, the actual value is passed.

    FieldArgs gains .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) FieldArg object representing the argument value itself.

    autoApplyAfterParentPlan is no more - instead if an argument has applyPlan
    it will be called automatically unless it was called during the field plan
    resolver itself.

    autoApplyAfterParentSubscribePlan is no more - instead if an argument has
    applySubscribePlan it will be called automatically unless it was called
    during the field plan resolver itself.

    Field arguments no longer support inputPlan - use bakedInput() if you need
    that.

    Input fields no longer support inputPlan, applyPlan,
    autoApplyAfterParentInputPlan nor autoApplyAfterParentApplyPlan. Instead,
    apply() (which is called by applyStep() 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.
    placeholder has been removed from all places that are now runtime - namely
    the list of modifiers below...

    The following ModifierStep classes have all dropped their Step suffix,
    these Modifier classes now all run at runtime, and are thus no longer steps;
    they're invoked as part of the new applyInput() (TODO: document) step:

    • ModifierStepModifier
    • PgBooleanFilterStepPgBooleanFilter
    • PgClassFilterStepPgClassFilter
    • PgConditionCapableParentStepPgConditionCapableParent
    • PgConditionLikeStepPgConditionLike
    • PgConditionStepModePgConditionMode
    • PgConditionStepPgCondition
    • PgManyFilterStepPgManyFilter
    • PgOrFilterStepPgOrFilter
    • PgTempTableStepPgTempTable
    • SetterCapableStepSetterCapable
    • SetterStepSetter

    (Interestingly, other than the removal of placeholder and 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()) instead
    • PgUnionAllStep.havingPlan - use
      fieldArg.apply($unionAll, qb => qb.havingBuilder()) instead
    • Same for PgSelectStep

    The following gain query builders:

    • PgInsertSingle
    • PgUpdateSingle
    • PgDeleteSingle

    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 implement clientMutationId.

    Extends query builders with additional functionality.

    Many of the types have had their generics changed, TypeScript should guide you
    if you have issues here.

    NodeIdHandler now requires a getIdentifiers method 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

0.0.2-beta.3

Patch Changes

0.0.2-beta.2

Patch Changes

0.0.2-beta.1

Patch Changes

0.0.2-alpha.3

Patch Changes

0.0.2-alpha.2

Patch Changes

0.0.2-alpha.1

Patch Changes

0.0.2-1.1

Patch Changes

0.0.2-0.1

Patch Changes

  • 0ab95d0b1 - Update sponsors.

0.0.2-0.0

Patch Changes

Don't miss a new crystal release

NewReleases is sending notifications on new releases.