- feat: Add
customPrintSchemaFn
to makeSchema config
-
refactor: Remove NEXUS_SHOULD_GENERATE_ARTIFACTS env var
-
feat: Add
shouldExitAfterGenerateArtifacts
-
Warn on missing
outputs
inmakeSchema
config -
Type-level
defaultResolver
has been removed, similar functionality can be achieved with theonCreateFieldResolver
plugin API
- fix: bug in nullability check plugin
-
feat(deps): Bumps the default minimum version of graphql-js to 14.5.0
Nexus uses the new
extensions
property on types to store metadata provided to Nexus types, in order to make them usable by plugins. -
feat: Adds "Plugins" API, see the docs for more info on what all these can help accomplish
-
feat(plugin): Add
nullabilityGuardPlugin
. See the docs for more info -
feat(plugin): Add
fieldAuthorizePlugin
. See the docs for more infoThis is the same behavior as before, but implemented more flexibly as a plugin. This will be automatically added if no plugins are specified, otherwise it will need to be imported & added to
makeSchema
. -
feat(schema): Adds
shouldExitAfterGenerateArtifacts
option tomakeSchema
The
shouldExitAfterGenerateArtifacts
makes it possible to exit after the types are generated, useful if you do not check a schema artifact into source control, but wish to generate before the code runs. -
refactor: Removes
nexusWrappedType
This was an internal implementation detail which should not affect end users
-
refactor: Removes
t.modifyType
APIThis may not have ever worked, it was only intended to modify fields on an
objectType
which were originally implemented by an interface. Please open an issue if this is a breaking change for you, so we can understand the use-case and design a better API. -
test: Improved code coverage, adds base threshold to new PRs
- feat(plugins): onInstall hook (#236)
- feat(deps): add support for TypeScript 3.6 (#255)
- fix(typegen): explicitly await removeFile before write (#254)
-
feat(config):
env var for should-generate-artifacts (#244)You can now set the(removed, see 0.12 release notes)shouldGenerateArtifacts
config option by env varNEXUS_SHOULD_GENERATE_ARTIFACTS=true|false
. -
fix(typegen): delete prev file before writing next (#252)
Before, sometimes, you would have to open the typegen file to make VSCode pick up its changed version. This change should reduce/remove the need for this workaround.
-
feat:
by default typegen as an @types package (#230)BREAKING CHANGE
You should not have to configure typegen manually anymore. We generate by default into
node_modules/@types/nexus-typegen
which TypeScript will automatically pick up. If you use thetypes
tsc
compiler option however, make sure to includenexus-typegen
.This is a breaking change because typegen is enabled even when config(removed, see 0.12 release notes)outputs
have not been configured (before, they were required). The heuristics ofshouldGenerateArtifacts
remain unchanged.
- Types: Allow Promise return value for subscriptions
- More for #55, incorrect return types.
- Fix lists w/ configurable depth/nullability, #89
- Fix import path gen on windows, #84
- More improvements to
MaybePromiseDeep
- Fix type for passing
NexusWrappedType
as arg type #81 - Fix types on
MaybePromiseDeep
- Fix
mkdir
for versions of node without recursive option (< 10.15.1).
- Export
queryField
&subscriptionField
on public API
- Fix allowing nested input types (#68), fixes default type definitions for input fields
- Add
queryField
abstraction to mirrormutationField
- Alpha release of
subscriptionField
(working, but undocumented) for GraphQL subscriptions
- Add an optional field level authorize #32, part of a more robust authorization story in #23
- Add mutationField abstraction, #46
- More for #55, type error on Promise/null resolve
- Fix #52, args being incorrectly imported as types
- Feature: extendInputType, #51
- Fix #55, type error for Promise numeric field return
- Fix #44, add correct typings for union type
- Fix #41, replace
path.sep
with '/' intypegenAutoConfig
- Fix #33, consistent
t.list
chaining output for inputs & scalars - Fix #34, include used imports on SDL converter
- Fix #27, args output for SDL converter
- Other SDL converter cleanup: reference types rather than strings, default values
- Fix typing regression in 0.9.10
- Fix #26, incorrect typing on boolean return type
TypegenConfigSourceModule
:sources.module
->sources.source
- Fix
MaybePromiseDeep
typing for non-object values NexusGenCustomScalarMethods
->NexusGenCustomDefinitionMethods
for when we allow non-scalars to beasNexusMethod
- Fix
MaybePromiseDeep
typing - Add
asNexusMethod
to annotate GraphQLScalarType
- Fallback Query construction to
missingType
internally
- Fix
nonNullDefaults
on schema - Finalize objects as they are constructed
- Changes to a few internal methods
- Internal: nexusWrappedFn -> nexusWrappedType
- Minor internal changes
- Fixes for conditional nullability check
- Fixes for return type of MaybePromiseDeep
- Docs cleanup
- General deploy/package.json cleanup
- Major API changes. See #16 for more info
Changed the type-signatures around so fields which are not defined in the backing types associated with the
Initial release