Releases: keystonejs/keystone
08 August 2023
The following packages have been updated
@keystone-6/core@5.5.0
New Features
[core]
Addsourcemap: true
to esbuild configuration to help with error debugging (#8738) @TweededBadger
Bug Fixes
[core]
Fixesui.isDisabled
condition forkeystone start
(#8733) @molomby[core]
Fixes broken context type narrowing for virtual field resolvers (#8741) @acburdine[core]
Fixessession
type asany
when using.keystone/types
Lists
as your root type (#8743) @dcousens
🌱 New Contributors
Thanks to the following developers for making their first contributions to the project!
- @MarcelMalik (#8737)
- @TweededBadger (#8738)
💙 Acknowledgements
Lastly, thanks to @renovate (#8742,#8739) for changes not shown above, but none-the-less appreciated.
01 August 2023
The following packages have been updated
@keystone-6/auth@7.0.2
@keystone-6/cloudinary@7.0.1
@keystone-6/core@5.4.0
New Features
[core]
Adds new random identifier type asdb: { idField: { kind: 'random', bytes?: number, encoding?: 'hex' | 'base64url' } }
, with a default of 32 bytes, encoded asbase64url
(#8726) @dcousens[core]
Changes session secret to a secure random default when not provided (#8686) @borisno2[core]
AddsitemValue
prop for custom field view components to allow value-driven field conditions (#8619) @jim-lake[core]
Adds fall back to default AWS credential provider (#7952) @ryzr[core]
Adds responsive AdminUI menu for smaller device widths (#8702) @lahirurane-rau[core]
Upgrades Prisma version to4.16.2
(#8644) @renovate[core]
Adds arbitrary string identifier support asdb: { idField: { kind: 'string' } }
(#8645, #8648) @dcousens, @molomby[core]
Adds new unique filters for querying by more than 1 unique value (#8648) @dcousens[core]
Changesid
field behaviours to not reject invalid identifiers when used in GraphQL resolvers, allowing developers to swapidField
types without breaking (#8648) @dcousens[core]
AddsfindOne
andfindMany
support for Singleton lists with identifiers other than the default, not recommended in typical usage (#8648) @dcousens
Bug Fixes
[core]
Fixes field omission increateView
in AdminUI whengraphql.omit.read: true
(#8715) @dcousens[core]
Fixes field omission initemView
in AdminUI whengraphql.omit.update: true
andui.fieldMode: 'hidden'
(#8715) @dcousens[core]
Fixes misleading error whendb.url
isundefined
(#8696) @dcousens[core]
Deprecatesconfig.server.healthCheck
, useextendExpressApp
(#8721) @dcousens[core]
Deprecates@keystone-6/core/system
, includingcreateSystem
,createExpressServer
andinitConfig
(#8721) @dcousens[core]
Fixes the field width of grouped fields in the AdminUI (#8718) @wysher[auth, core]
Usebase64url
fromnode:crypto
for random identifiers, dropsafe-uid
dependency (#8725) @dcousens[cloudinary]
Changes cloudinary identifiers to use random base64url identifiers, not cuid (#8724) @dcousens[core]
Fixes GraphQL errors revealing the exact identifier format required when an unknown identifier is provided (#8648) @dcousens
🌱 New Contributors
Thanks to the following developers for making their first contributions to the project!
- @gathanase (#8664)
- @jim-lake (#8619)
- @lahirurane-rau (#8702)
- @ryzr (#7952)
- @u-u-z (#8668)
- @wysher (#8718)
- @yashdharmal (#8719)
💙 Acknowledgements
Lastly, thanks to @dcousens (#8723,#8709,#8674), @dependabot (#8729), @mmachatschek (#8695), @renovate (#8727,#8720,#8713,#8712,#8703,#8700,#8699,#8679,#8680,#8681,#8673,#8666,#8665,#8661,#8578,#8662,#8609,#8652,#8651,#8642,#8643) for changes not shown above, but none-the-less appreciated.
19 June 2023
The following packages have been updated
@keystone-6/auth@7.0.1
@keystone-6/core@5.3.2
Bug Fixes
[auth, core]
AddsbasePath
with a default of'/'
topageMiddleware
to support redirects when usingui.basePath
(#8641) @borisno2[auth]
Removes?from
redirect from/signin
page to prevent open redirection. (#8626) @dcousens
💙 Acknowledgements
Lastly, thanks to @borisno2 (#8582), @dcousens (#8640), @raveling (#8632), @renovate (#8638,#8631,#8630,#8629,#8628), @Tekipeps (#8634) for changes not shown above, but none-the-less appreciated.
08 Jun 2023
The following packages have been updated
@keystone-6/core@5.3.1
Bug Fixes
[core]
Fixes hanging process when multiple Prisma generators are defined (#8598) @acburdine[core]
Fixes types forallOperations
, regression from #8570 (#8617) @dcousens[core]
Fixes broken types for field groups, regression from #8570 (#8617) @dcousens[core]
Fixesdb.onConnect
, withkeystone start --with-migrations
, to run after migrations complete (#8612) @acburdine
💙 Acknowledgements
Lastly, thanks to @borisno2 (#8607), @dcousens (#8587), @raveling (#8606), @renovate (#8608,#8605,#8593,#8592,#8591) for changes not shown above, but none-the-less appreciated.
25 May 2023
The following packages have been updated
@keystone-6/core@5.3.0
New Features
[core]
AddscookieName
as an option forstatelessSessions
(#8570) @dcousens[core]
AddsSession
type parameter to generatedTypeInfo
,Lists
andContext
types, and propagates that type to access control and hooks (#8570) @dcousens[core]
Addsui.basePath
for changing the AdminUI base path, using a dynamicnext.config.js
(#8545) @borisno2[core]
Removes prompt when using CLI--frozen
flag and a schema is out of date, CLI now exits (#8545) @borisno2[core]
AddsresolveInput.{create|update}
list hooks as shorthand operation circuitry (#8551) @dcousens[core]
Adds newunfiltered
shorthand function for an empty filter (exported from '@keystone-6/core/access') (#8552) @dcousens
Bug Fixes
[core]
Change nextexperimental.appDir: false
for now, until resolution found for internal React issues (#8568) @MohammadKurjieh[core]
Fixes type generation for lists withomit.query: true
(#8527) @acburdine[core]
Update@prisma/*
to4.14.0
(#8562) @renovate[core]
Fixesgraphql.isNonNull.create: true
TypeScript types to be non-optional (#8551) @dcousens[core]
Fixes incompatible field key types when working withresolvedData
(#8485) (#8551) @dcousens[core]
RemovesSessionStrategy
's type parameter ofStartSessionData
, removal is non-breaking as the parameter was unusable (#8552) @dcousens[core]
Fixesdb.enableLogging
with an array resulting inkeystone dev
exiting (#8569) @dcousens[core]
Deprecates@keystone-6/core/system
exports (createSystem
,createExpressServer
,initConfig
andcreateAdminUIMiddleware
), will be removed in next breaking change (#8569) @dcousens
🌱 New Contributors
Thanks to the following developers for making their first contributions to the project!
💙 Acknowledgements
Lastly, thanks to @borisno2 (#8510), @ChrisLaneAU (#8516), @dcousens (#8546,#8357), @renovate (#8585,#8584,#8583,#8579,#8577,#8565,#8567,#8563,#8566,#8564,#8558,#8559,#8560,#8555,#8541,#8542,#8531,#8528) for changes not shown above, but none-the-less appreciated.
27 April 2023
The following packages have been updated
@keystone-6/core@5.2.0
@keystone-6/fields-document@8.0.0
Breaking Changes
[fields-document]
Changesfields.array({ label: ...
tofields.array({ itemLabel: ...
, and addsfields.array({ label: string
, aligned with other document fields (#8493) @borisno2
New Features
[ui]
Adds newline compatibility to description text in admin ui (#8369) @DiesIrae[core]
Adds a new.types.path
configuration option, for specifying where your Keystone types are built (#8381) @dcousens[core]
Adds support for Prisma Data Proxy client generation, automatically enabled fordb.url
's with aprisma:
prefix (#8370) @borisno2[core]
Updates Prisma version to4.12.0
(#8432) @renovate
Bug Fixes
[fields-document]
Adds"use client"
to Document field files that allow it to be used in the Next App Dorectory (#8403) @borisno2[core]
Fixes regression from #8073,.sudo
now retains thecontext.session
(#8441) @dcousens[core]
Fixes #8046 regression which prevented other command line arguments from being used (#8455) @borisno2[core]
Fixes the printed output when usingkeystone telemetry reset
(#8400) @renovate[core]
Fixes the.keystone/types
import paths when usingdb.prismaSchemaPath
on Windows (#8373) @borisno2[fields-document]
Fixes the JSON output type values for the structure field (#8457) @borisno2[core]
.exitSudo
is now deprecated and will be removed in the next major version (#8438) @dcousens
🌱 New Contributors
Thanks to the following developers for making their first contributions to the project!
- @adrianbienias (#8500)
- @AlanBreck (#8391)
- @ChrisLaneAU (#8503)
- @DiesIrae (#8369)
- @DustinWoods (#8411)
- @ganobrega (#8364)
- @kporten (#8387)
- @pahaz (#8488)
- @serranoarevalo (#8515)
- @timgates42 (#8367)
💙 Acknowledgements
Lastly, thanks to @borisno2 (#8471,#8508,#8371,#8456,#8454,#8447,#8439,#8440,#8360), @dcousens (#8523,#8520,#8517,#8491,#8483,#8482,#8479,#8478,#8477,#8476,#8473,#8470,#8459,#8431,#8398,#8399,#8395,#8392,#8375,#8363,#8362,#8361), @kennedybaird (#8380), @keystonejs-release-bot (#8374), @raveling (#8461), @renovate (#8512,#8507,#8495,#8494,#7802,#8489,#8444,#8474,#8422,#8463,#8464,#8450,#8451,#8448,#8449,#8433,#8425,#8423,#8426,#8421,#8424,#8428,#8429,#8427,#8229,#8379,#8378) for changes not shown above, but none-the-less appreciated.
02 March 2023
The following packages have been updated
@keystone-6/core@5.1.0
New Features
Bug Fixes
[core]
Removes outdated PrismaprismaClient.$on('beforeExit'...
work-around that blocked Prisma Data Proxy support (#8347) @borisno2[core]
Updatesimage-size
to5.0.0
to mitigate CVE-2022-36313 (#8304) @dcousens[core]
Fixeskeystone start --with-migrations
exiting after a migration (#8354) @acburdine[core]
Fixes Typescript types to usenever
for omitted types (#8355) @acburdine[core]
Fixes list-levelgraphql.omit
syntax to match the field-levelgraphql.omit
(#8352) @acburdine
🚨 Security Updates
We have identified and fixed an upstream security vulnerability
CVE-2022-36313
- An upstream transitive dependencyfile-type
is vulnerable to a ReDoS. We have upgraded to a version offile-type
where this is resolved.
🌱 New Contributors
Thanks to the following developers for making their first contributions to the project!
💙 Acknowledgements
Lastly, thanks to @borisno2 (#8344), @dcousens (#8348,#8348,#8358,#8343,#8337,#8336), @renovate (#7553,#8340,#8235,#8341) for changes not shown above, but none-the-less appreciated.
23 February 2023
The following packages have been updated
@keystone-6/auth@7.0.0
@keystone-6/cloudinary@7.0.0
@keystone-6/core@5.0.0
@keystone-6/fields-document@7.0.0
Breaking Changes
[core]
Changesgraphql.omit
type from array to explicit{ read: boolean, create: boolean, update: boolean }
(#8283) @dcousens[core]
Changesgraphql.*.isNonNull
tographql.isNonNull.*
, and addsgraphql.isNonNull.update
for optimistic locking usecases (#8283) @dcousens[core]
Removes--reset-db
fromkeystone dev
, usekeystone prisma db push --force-reset
to reset your database (#8302) @dcousens[auth, core]
RenamesisValidSession
onpageMiddleware
towasAccessAllowed
, which is what it actually is (#8280) @dcousens[core]
Upgrade Apollo Server to version 4 (#8221) @borisno2[core]
Remove experimentalgenerateNextGraphqlAPI
- usegetContext
instead (#8221) @borisno2[core]
Removes@keystone-6/core/next
from our exports (#8315) @dcousens[core]
Removes assumptions about@prisma/client
output location, with a newdb.prismaClientPath
configuration option to set where to import the Prisma client from (#8307) @borisno2[core]
Adds additional flags to thekeystone dev
,keystone build
andkeystone start
CLI commands (#8046) @borisno2
New Features
[core]
Removeskeystone build
errors forgraphql.isNonNull.create
andgraphql.isNonNull.update
when field access control is configured (#8283) @dcousens[core, fields-document]
Adds an experimentalextendPrismaSchema
configuration option for lists and fields to mutate the prisma schema (#8241) @borisno2[core]
Addacl
option for s3 storage configuration (#8264) @jhohlfeld[core]
Add acursor
argument forfindMany
queries, enabling cursor-based pagination (see Prisma.io documentation for how this works) (#8313) @marekryb[core]
Extenddb.enableLogging
to support other Prisma log levels (#8321) @MurzNN[core]
Adds asudo
GraphQL extension for theGraphQLSchema
passed toextendGraphqlSchema
; enabling developers to determine if they are extending the sudo GraphQL schema (#8298) @dcousens
Bug Fixes
[core]
Changes thekeystone telemetry status
command output to show formatted output instead of JSON (#8326) @dcousens[core]
Fixes the device telemetry configuration which had duplicate data under a malformed project path (#8326) @dcousens[core]
Fixes withRequest behavior when no session strategy is configured (#8318) @acburdine[core]
Fixeskeystone start
requiring Typescript by removingtsconfig.json
from the generated AdminUI output (#8293) @borisno2[core]
Fixes Dataloader error when resolving relationships when access isfalse
on related to-one item (#8216) @borisno2[auth, core]
FixespageMiddleware
to be called forpublicPages
, returning support for public redirects (#8280) @dcousens[core]
Fixes creating new relationships in card view on create item page (#8177) @borisno2[auth]
Fixes regression in authenticatedItem query (#8278) @marekryb[core]
Fixes.keystone/types
including invalid definitions (#8256) @dcousens[core]
Fixes undefined types when usingomit
for create or update (#8300) @dcousens[core]
FixesdefaultFieldMode
(#8222) @emmatown[cloudinary]
Add telemetry field type name forcloudinaryImage
field (#8259) @borisno2[core]
Fixes<div> cannot appear as a dependant of <p>
error on List Page (#8237) @borisno2[auth]
Fixes GraphQL error when usingautoincrement
for auth list id (#8182) @borisno2[auth]
Fixes GraphQL error whensessionStrategy.start
returns null or undefined (#8182) @borisno2[core]
Adds the ability to disable telemetry using environment variableKEYSTONE_TELEMETRY_DISABLED
(#8159) @borisno2[auth]
FixesisFilterable: false
throwing an error for identity fields (#8298) @dcousens[core]
Exportnext/head
for use in auth package (#8234) @borisno2[auth]
Fixesloading Admin Metadata
and<head> cannot appear as a child of <div>
errors on signin (#8234) @borisno2[core]
Fixes error when deleting an item that has a file or image that is no longer on the filesystem (#8239) @borisno2
🌱 New Contributors
Thanks to the following developers for making their first contributions to the project!
- @adamjkb (#8167)
- @austin047 (#8311)
- @CarlQLange (#8268)
- @jhohlfeld (#8264)
- @kennedybaird (#8266)
- @pnxdxt (#8316)
- @TasinIshmam (#8137)
💙 Acknowledgements
Lastly, thanks to @borisno2 (#8258,#8247,#8232,#8231,#8188,#8170,#8157), @dcousens (#8330,#8323,#8320,#8096,#8301,#8299,#8255,#8212), @dependabot (#8287,#8275,#8271), @flexdinesh (#8175,#8173,#8174,#8148), @Meetcpatel (#8260), @raveling (#8314,#8310), @renovate (#8328,#8327,#8249,#8273,#8267,#8142,#8152,#8141,#8236,#8133,#8172,#7939) for changes not shown above, but none-the-less appreciated.
7 December 2022
6 December 2022
The following packages have been updated
@keystone-6/auth@6.0.0
@keystone-6/cloudinary@6.0.0
@keystone-6/core@4.0.0
@keystone-6/fields-document@6.0.0
Breaking Changes
[core]
RemovescreateContext
,createRequestContext
- replace any relevant usage withcontext.sudo()
,context.withSession()
orcontext.withRequest()
(#8073) @borisno2
New Features
[core, fields-document]
Adds Project and Device Telemetry events to thekeystone dev
script (#8118) @borisno2[core]
AddsHOST
as an environment variable forkeystone dev
andkeystone start
, with higher precedence thanconfig.server.options.host
(#8132) @fkrauthan[core]
Next.js 13 Upgrade (#8061) @AliceRossa[fields-document]
Adds a newstructure
field type, a composable JSON data structure with a powerful GraphQL API (#7936) @emmatown
Bug Fixes
[core]
Fixes inline related item form submitting the parent form (#8123) @januzis[auth]
FixesinitFirstItem
bypass whenui.isAccessAllowed
is defined (#8115) @dcousens
🌱 New Contributors
Thanks to the following developers for making their first contributions to the project!
- @fkrauthan (#8132)
- @januzis (#8123)
- @AliceRossa (#8061)
- @shusiner (#8114)
💙 Acknowledgements
Lastly, thanks to @dcousens (#8127,#8125,#8122,#8120,#8104,#8108,#8108,#8108), @borisno2 (#8134), @flexdinesh (#8124,#8119), @renovate (#8072,#8116,#8109), @emmatown (#8099) for changes not shown above, but none-the-less appreciated.