Releases: keystonejs/keystone
Release list
08 August 2023
The following packages have been updated
@keystone-6/core@5.5.0
New Features
[core]Addsourcemap: trueto esbuild configuration to help with error debugging (#8738) @TweededBadger
Bug Fixes
[core]Fixesui.isDisabledcondition forkeystone start(#8733) @molomby[core]Fixes broken context type narrowing for virtual field resolvers (#8741) @acburdine[core]Fixessessiontype asanywhen using.keystone/typesListsas 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]AddsitemValueprop 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]Changesidfield behaviours to not reject invalid identifiers when used in GraphQL resolvers, allowing developers to swapidFieldtypes without breaking (#8648) @dcousens[core]AddsfindOneandfindManysupport for Singleton lists with identifiers other than the default, not recommended in typical usage (#8648) @dcousens
Bug Fixes
[core]Fixes field omission increateViewin AdminUI whengraphql.omit.read: true(#8715) @dcousens[core]Fixes field omission initemViewin AdminUI whengraphql.omit.update: trueandui.fieldMode: 'hidden'(#8715) @dcousens[core]Fixes misleading error whendb.urlisundefined(#8696) @dcousens[core]Deprecatesconfig.server.healthCheck, useextendExpressApp(#8721) @dcousens[core]Deprecates@keystone-6/core/system, includingcreateSystem,createExpressServerandinitConfig(#8721) @dcousens[core]Fixes the field width of grouped fields in the AdminUI (#8718) @wysher[auth, core]Usebase64urlfromnode:cryptofor random identifiers, dropsafe-uiddependency (#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]AddsbasePathwith a default of'/'topageMiddlewareto support redirects when usingui.basePath(#8641) @borisno2[auth]Removes?fromredirect from/signinpage 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]AddscookieNameas an option forstatelessSessions(#8570) @dcousens[core]AddsSessiontype parameter to generatedTypeInfo,ListsandContexttypes, and propagates that type to access control and hooks (#8570) @dcousens[core]Addsui.basePathfor changing the AdminUI base path, using a dynamicnext.config.js(#8545) @borisno2[core]Removes prompt when using CLI--frozenflag 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 newunfilteredshorthand function for an empty filter (exported from '@keystone-6/core/access') (#8552) @dcousens
Bug Fixes
[core]Change nextexperimental.appDir: falsefor 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: trueTypeScript 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.enableLoggingwith an array resulting inkeystone devexiting (#8569) @dcousens[core]Deprecates@keystone-6/core/systemexports (createSystem,createExpressServer,initConfigandcreateAdminUIMiddleware), 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.pathconfiguration 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,.sudonow 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/typesimport paths when usingdb.prismaSchemaPathon Windows (#8373) @borisno2[fields-document]Fixes the JSON output type values for the structure field (#8457) @borisno2[core].exitSudois 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-sizeto5.0.0to mitigate CVE-2022-36313 (#8304) @dcousens[core]Fixeskeystone start --with-migrationsexiting after a migration (#8354) @acburdine[core]Fixes Typescript types to useneverfor omitted types (#8355) @acburdine[core]Fixes list-levelgraphql.omitsyntax 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-typeis vulnerable to a ReDoS. We have upgraded to a version offile-typewhere 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.omittype from array to explicit{ read: boolean, create: boolean, update: boolean }(#8283) @dcousens[core]Changesgraphql.*.isNonNulltographql.isNonNull.*, and addsgraphql.isNonNull.updatefor optimistic locking usecases (#8283) @dcousens[core]Removes--reset-dbfromkeystone dev, usekeystone prisma db push --force-resetto reset your database (#8302) @dcousens[auth, core]RenamesisValidSessiononpageMiddlewaretowasAccessAllowed, which is what it actually is (#8280) @dcousens[core]Upgrade Apollo Server to version 4 (#8221) @borisno2[core]Remove experimentalgenerateNextGraphqlAPI- usegetContextinstead (#8221) @borisno2[core]Removes@keystone-6/core/nextfrom our exports (#8315) @dcousens[core]Removes assumptions about@prisma/clientoutput location, with a newdb.prismaClientPathconfiguration option to set where to import the Prisma client from (#8307) @borisno2[core]Adds additional flags to thekeystone dev,keystone buildandkeystone startCLI commands (#8046) @borisno2
New Features
[core]Removeskeystone builderrors forgraphql.isNonNull.createandgraphql.isNonNull.updatewhen field access control is configured (#8283) @dcousens[core, fields-document]Adds an experimentalextendPrismaSchemaconfiguration option for lists and fields to mutate the prisma schema (#8241) @borisno2[core]Addacloption for s3 storage configuration (#8264) @jhohlfeld[core]Add acursorargument forfindManyqueries, enabling cursor-based pagination (see Prisma.io documentation for how this works) (#8313) @marekryb[core]Extenddb.enableLoggingto support other Prisma log levels (#8321) @MurzNN[core]Adds asudoGraphQL extension for theGraphQLSchemapassed toextendGraphqlSchema; enabling developers to determine if they are extending the sudo GraphQL schema (#8298) @dcousens
Bug Fixes
[core]Changes thekeystone telemetry statuscommand 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 startrequiring Typescript by removingtsconfig.jsonfrom the generated AdminUI output (#8293) @borisno2[core]Fixes Dataloader error when resolving relationships when access isfalseon related to-one item (#8216) @borisno2[auth, core]FixespageMiddlewareto 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/typesincluding invalid definitions (#8256) @dcousens[core]Fixes undefined types when usingomitfor create or update (#8300) @dcousens[core]FixesdefaultFieldMode(#8222) @emmatown[cloudinary]Add telemetry field type name forcloudinaryImagefield (#8259) @borisno2[core]Fixes<div> cannot appear as a dependant of <p>error on List Page (#8237) @borisno2[auth]Fixes GraphQL error when usingautoincrementfor auth list id (#8182) @borisno2[auth]Fixes GraphQL error whensessionStrategy.startreturns null or undefined (#8182) @borisno2[core]Adds the ability to disable telemetry using environment variableKEYSTONE_TELEMETRY_DISABLED(#8159) @borisno2[auth]FixesisFilterable: falsethrowing an error for identity fields (#8298) @dcousens[core]Exportnext/headfor use in auth package (#8234) @borisno2[auth]Fixesloading Admin Metadataand<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 devscript (#8118) @borisno2[core]AddsHOSTas an environment variable forkeystone devandkeystone start, with higher precedence thanconfig.server.options.host(#8132) @fkrauthan[core]Next.js 13 Upgrade (#8061) @AliceRossa[fields-document]Adds a newstructurefield 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]FixesinitFirstItembypass whenui.isAccessAllowedis 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.