Releases: keystonejs/keystone
✨ Release - 20th April 2021
What's New
Improvements to the Lists API
To make the Lists API (i.e context.lists.{List}
) more intuitive to use, we deprecated the resolveFields
option in favour of two new methods 🔧:
1. Specify a string of fields to return with the new query
option:
Use this when you want to query for resolved field values (including querying relationships and virtual fields). This replaces the resolveFields: false
use case. Now you can query a Post like so:
const [post] = await context.lists.Post.findMany({
where: { slug },
query: `
title
content
image {
src
width
height
}`,
});
2. Return the unresolved item data with read hooks
This replaces the resolveFields: boolean
use case. We now have a new set of APIs on context.db.lists.{List}
which return unresolved item data from your database (but with read hooks applied). They can be referenced directly or returned from a custom mutation or query in the GraphQL API to be handled by the Field resolvers.
For example, to query for the raw data stored in the database:
const [post] = await context.db.lists.Post.findMany({
where: { slug },
});
Enjoying Keystone?
Star this repo 🌟 ☝️ or connect to Keystone on Twitter and in Slack.
View verbose release notes
Releases
@keystone-ui/[email protected]
Major Changes
- #5397
a5627304b
Thanks @bladey! - Updated Node engine version to 12.x due to 10.x reaching EOL on 2021-04-30.
Patch Changes
- Updated dependencies [
a5627304b
]:- @keystone-ui/[email protected]
- @keystone-ui/[email protected]
@keystone-ui/[email protected]
Major Changes
- #5397
a5627304b
Thanks @bladey! - Updated Node engine version to 12.x due to 10.x reaching EOL on 2021-04-30.
Patch Changes
- Updated dependencies [
a5627304b
]:- @keystone-ui/[email protected]
- @keystone-ui/[email protected]
@keystone-ui/[email protected]
Major Changes
- #5397
a5627304b
Thanks @bladey! - Updated Node engine version to 12.x due to 10.x reaching EOL on 2021-04-30.
@keystone-ui/[email protected]
Major Changes
- #5397
a5627304b
Thanks @bladey! - Updated Node engine version to 12.x due to 10.x reaching EOL on 2021-04-30.
@keystone-ui/[email protected]
Major Changes
- #5397
a5627304b
Thanks @bladey! - Updated Node engine version to 12.x due to 10.x reaching EOL on 2021-04-30.
Patch Changes
- Updated dependencies [
a5627304b
]:- @keystone-ui/[email protected]
@keystone-ui/[email protected]
Major Changes
- #5397
a5627304b
Thanks @bladey! - Updated Node engine version to 12.x due to 10.x reaching EOL on 2021-04-30.
Patch Changes
- Updated dependencies [
a5627304b
]:- @keystone-ui/[email protected]
- @keystone-ui/[email protected]
@keystone-ui/[email protected]
Major Changes
- #5397
a5627304b
Thanks @bladey! - Updated Node engine version to 12.x due to 10.x reaching EOL on 2021-04-30.
Patch Changes
- Updated dependencies [
a5627304b
]:- @keystone-ui/[email protected]
- @keystone-ui/[email protected]
@keystone-ui/[email protected]
Major Changes
- #5397
a5627304b
Thanks @bladey! - Updated Node engine version to 12.x due to 10.x reaching EOL on 2021-04-30.
Patch Changes
- Updated dependencies [
a5627304b
]:- @keystone-ui/[email protected]
@keystone-ui/[email protected]
Major Changes
- #5397
a5627304b
Thanks @bladey! - Updated Node engine version to 12.x due to 10.x reaching EOL on 2021-04-30.
@keystone-ui/[email protected]
Major Changes
- #5397
a5627304b
Thanks @bladey! - Updated Node engine version to 12.x due to 10.x reaching EOL on 2021-04-30.
@keystone-ui/[email protected]
Major Changes
- #5397
a5627304b
Thanks @bladey! - Updated Node engine version to 12.x due to 10.x reaching EOL on 2021-04-30.
Patch Changes
- Updated dependencies [
a5627304b
]:- @keystone-ui/[email protected]
@keystone-ui/[email protected]
Major Changes
- #5397
a5627304b
Thanks @bladey! - Updated Node engine version to 12.x due to 10.x reaching EOL on 2021-04-30.
Patch Changes
- Updated dependencies [
a5627304b
]:- @keystone-ui/[email protected]
@keystone-next/[email protected]
Major Changes
- #5397
a5627304b
Thanks @bladey! - Updated Node engine version to 12.x due to 10.x reaching EOL on 2021-04-30.
Minor Changes
- #5396
be60812f2
Thanks @rohan-deshpande! - Reflected next/image exports from admin-ui for use in other relevant keystone-next packages.
Patch Changes
-
#5451
9e060fe83
Thanks @JedWatson! - With the goal of making the Lists API (i.econtext.lists.{List}
) more intuitive to use, theresolveFields
option has been deprecated in favor of two new methods:(1) You can specify a string of fields to return with the new
query
option, when you want to query for resolved field values (including querying relationships and virtual fields). This replaces theresolveFields: false
use case.For example, to query a Post you would now write:
const [post] = await context.lists.Post.findMany({ where: { slug }, query: ` title content image { src width height }`, });
(2) Alternatively, there is a new set of APIs on
context.db.lists.{List}
which will return the unresolved item data from the database (but with read hooks applied), which can then be referenced directly or returned from a custom mutation or query in the GraphQL API to be handled by the Field resolvers. This replaces theresolveFields: boolean
use case.For example, to query for the raw data stored in the database, you would write:
const [post] = await context.db.lists.Post.findMany({ where: { slug }, });
-
#5366
115b06130
Thanks @renovate! - Updated Next.js dependency to^10.1.3
. -
Updated dependencies [
9e060fe83
, [3d3fb860f
](3d3fb860faa303cbfe7...
✨ 6th April 2021
What's New
Controlled code demolition 🏗️ 👷♀️
We pruned a lot of code from the Keystone garden – cutting out the dead wood to make way for a more efficient and productive core in Keystone 6. Notable changes include:
- Removed Keystone‘s DB adapters and the
db.adapter
config option (now that Keystone 6 uses Prisma under the hood). - Said goodbye to a bunch of redundant methods and arguments for the same reasons as above.
- Exchanged
deploy
,reset
andgenerate
commands forkeystone-next prisma
e.g:keystone-next deploy
->keystone-next prisma migrate deploy
Better pagination in Admin UI ⏭️ ✨
Pagination in the Admin UI has fresh styles and is easier to use.
Enjoying Keystone?
Star this repo 🌟 ☝️ or connect to Keystone on Twitter and in Slack.
View verbose release notes
Releases
@keystone-next/[email protected]
Major Changes
- #5266
c28e765d1
Thanks @mitchellhamilton! - Updated Next API route template to usecreateSystem
without thedotKeystonePath
argument and import from the new Prisma Client location.
Minor Changes
- #5286
bc21855a7
Thanks @gwyneplaine! - Added styling and quality of life updates to the pagination component.
Patch Changes
-
#5322
d93bab17b
Thanks @gwyneplaine! - Added padding to the select input in the Pagination component in @keystone-next/admin-ui. -
#5280
9e450d6b3
Thanks @timleslie! - Removed theadapters-mongoose-legacy
packages dependency. -
Updated dependencies [
901817fed
,c28e765d1
,c28e765d1
,c28e765d1
,95fefaf81
,c28e765d1
,1a4db6c87
,b40016301
,5c4b48636
,192393d0d
,c28e765d1
,1886b4323
,c28e765d1
,1886b4323
,399e6db39
,5cd94b2a3
,9e450d6b3
,1e6d12f47
,c28e765d1
,d93bab17b
]:- @keystone-next/[email protected]
- @keystone-next/[email protected]
- @keystone-ui/[email protected]
- @keystone-next/[email protected]
@keystone-next/[email protected]
Major Changes
-
#5256
399e6db39
Thanks @timleslie! - Removed support for themongoId
field type. -
#5275
8665cfe66
Thanks @timleslie! - Removed themongoId
field type. -
#5256
399e6db39
Thanks @timleslie! - Removed support for theknex
andmongoose
database adapters. We now only supportprisma_postgresql
andprisma_sqlite
.
Patch Changes
-
#5280
9e450d6b3
Thanks @timleslie! - Removed theadapters-mongoose-legacy
packages dependency. -
Updated dependencies [
e702fea44
,c28e765d1
,b40016301
,192393d0d
,c28e765d1
,1886b4323
,8665cfe66
,fda82869c
,4fa66ac1f
,399e6db39
,d93bab17b
,9e450d6b3
,bc21855a7
,d93bab17b
]:- @keystone-next/[email protected]
- @keystone-next/[email protected]
- @keystone-next/[email protected]
- @keystone-next/[email protected]
- @keystone-ui/[email protected]
- @keystone-next/[email protected]
@keystone-next/[email protected]
Major Changes
- #5273
4fa66ac1f
Thanks @timleslie! - Removed support for theknex
andmongoose
field adapters.
Patch Changes
✨ 30th March 2021
What's New
Goodbye legacy code 👋 🌇
We removed a few legacy items including:
- Field types
CalendarDay
,DateTime
,Slug
,Url
, andUuid
. - Arguments
cookieSecret
,cookie
, andsessionStore
from the Keystone constructor. - Arguments
schemaName
,schemaNames
,keystoneOptions
, andgraphqlOptions
were unused and have been removed from thesetupServer()
function (which we also removed).
Improved select
field type 🔽
It now uses the correct underlying type, which lets you make use of { dataType: 'enum' } and { dataType: 'integer'}.
Squashed bugs 🐛
We fixed a bug that existed in updateMany
on lists with declarative access control.
Enjoying Keystone?
Star this repo 🌟 ☝️ or connect to Keystone on Twitter and in Slack.
View verbose release notes
Releases
@keystone-next/[email protected]
Major Changes
-
#5196
ca1be4156
Thanks @timleslie! - Removed legacy method.getAdminMeta
fromKeystone
,List
andField
classes. -
#5208
4d405390c
Thanks @timleslie! - Removed legacy propertyList.views
and methodField.extendAdminViews()
. -
#5194
a8be4c860
Thanks @timleslie! - Removed legacy Admin UI views. -
#5244
0e1487385
Thanks @timleslie! - Removed the legacy argumentsadminDoc
andadminConfig
, and the methodextendAdminMeta
. -
#5186
aa76102c1
Thanks @timleslie! - Removedapp-admin-ui-legacy
package. -
#5234
f448a8b3a
Thanks @timleslie! - Removed the legacy field typesCalendarDay
,DateTime
,Slug
,Url
, andUuid
.
Patch Changes
- Updated dependencies [
0e01f471d
,76e5c7bd3
,97609a623
,da900777a
]:- @keystone-next/[email protected]
- @keystone-next/[email protected]
- @keystone-next/[email protected]
- @keystone-next/[email protected]
- @keystone-next/[email protected]
- @keystone-next/[email protected]
@keystone-next/[email protected]
Major Changes
- #5192
9e78d8818
Thanks @timleslie! - Removedviews
export, which was used to provide functionality to the legacy Admin UI.
Patch Changes
- Updated dependencies [
ca1be4156
,4d405390c
,a8be4c860
,0e1487385
,aa76102c1
,f448a8b3a
]:- @keystone-next/[email protected]
- @keystone-next/[email protected]
- @keystone-next/[email protected]
@keystone-next/[email protected]
Major Changes
-
#5244
0e1487385
Thanks @timleslie! - Removed the legacy argumentsadminDoc
andadminConfig
, and the methodextendAdminMeta
. -
#5193
eb39fa37d
Thanks @timleslie! - Removedviews
export, which was used to provide functionality to the legacy Admin UI.
Patch Changes
- Updated dependencies [
ca1be4156
,4d405390c
,a8be4c860
,0e1487385
,aa76102c1
,f448a8b3a
]:- @keystone-next/[email protected]
- @keystone-next/[email protected]
- @keystone-next/[email protected]
@keystone-next/[email protected]
Major Changes
- #5192
9e78d8818
Thanks @timleslie! - Removedviews
export, which was used to provide functionality to the legacy Admin UI.
Patch Changes
- Updated dependencies [
ca1be4156
,4d405390c
,a8be4c860
,0e1487385
,aa76102c1
,f448a8b3a
]:- @keystone-next/[email protected]
- @keystone-next/[email protected]
- @keystone-next/[email protected]
- @keystone-next/[email protected]
@keystone-next/[email protected]
Major Changes
- #5228
7bf269057
Thanks @timleslie! - Removed legacyS3Adapter
.
@keystone-next/[email protected]
Major Changes
-
#5250
e944b1ebb
Thanks @timleslie! - Removed legacy methodkeystone.createContext()
. -
#5196
ca1be4156
Thanks @timleslie! - Removed legacy method.getAdminMeta
fromKeystone
,List
andField
classes. -
#5220
7ae452ad1
Thanks @timleslie! - Removed the legacykeystone.createAuthStrategy()
method. -
#5226
45272d0b1
Thanks @timleslie! - Removed legacy methodkeystone.prepare()
. -
#5248
ade638de0
Thanks @timleslie! - Removed support for legacyplugins
argument toList
config. -
#5247
2a1fc416e
Thanks @timleslie! - Removed legacy methodkeystone.executeGraphQL()
. -
#5208
4d405390c
Thanks @timleslie! - Removed legacy propertyList.views
and methodField.extendAdminViews()
.
✨ 23rd March 2021
What's New
Added support for SQLite with Prisma 🎉
You can now use SQLite to store your data via Prisma. The SQLite rollout also includes support for the File
and Cloudinary
field types.
Noteworthy bug-squashing 🐛
Mitchell solved a bug where withItemData
returned sessions that don't match an item, rather than treating them as invalid.
Enjoying Keystone?
Star this repo 🌟 ☝️ or connect to Keystone on Twitter and in Slack.
View verbose release notes
Releases
@keystone-next/[email protected]
Major Changes
- #5168
343b74246
Thanks @mitchellhamilton! - FixedwithItemData
returning sessions that don't match an item rather than treating them as invalid
Patch Changes
- Updated dependencies []:
- @keystone-next/[email protected]
@keystone-next/[email protected]
Minor Changes
- #5173
7debecb86
Thanks @mitchellhamilton! - Added support for SQLite with Prisma
Patch Changes
- Updated dependencies [
eae55db19
]:- @keystone-next/[email protected]
- @keystone-next/[email protected]
@keystone-next/[email protected]
Minor Changes
- #5188
eae55db19
Thanks @timleslie! - Added support for theFile
field type with Primsa + SQLite.
@keystone-next/[email protected]
Minor Changes
- #5189
56c4dd0f8
Thanks @timleslie! - Added support for theCloudinary
field type with Primsa + SQLite.
Patch Changes
- Updated dependencies [
eae55db19
]:- @keystone-next/[email protected]
@keystone-next/[email protected]
Patch Changes
- Updated dependencies [
343b74246
]:- @keystone-next/[email protected]
@keystone-next/[email protected]
Patch Changes
- Updated dependencies [
343b74246
]:- @keystone-next/[email protected]
- @keystone-next/[email protected]
@keystone-next/[email protected]
Patch Changes
- Updated dependencies [
343b74246
]:- @keystone-next/[email protected]
@keystone-next/[email protected]
Patch Changes
- Updated dependencies [
343b74246
]:- @keystone-next/[email protected]
- @keystone-next/[email protected]
- @keystone-next/[email protected]
@keystone-next/[email protected]
Patch Changes
- Updated dependencies [
7debecb86
,343b74246
]:- @keystone-next/[email protected]
- @keystone-next/[email protected]
- @keystone-next/[email protected]
- @keystone-next/[email protected]
@keystone-next/[email protected]
Patch Changes
- Updated dependencies [
343b74246
]:- @keystone-next/[email protected]
- @keystone-next/[email protected]
- @keystone-next/[email protected]
[email protected]
Patch Changes
- Updated dependencies [
7debecb86
,343b74246
]:- @keystone-next/[email protected]
- @keystone-next/[email protected]
- @keystone-next/[email protected]
@keystone-next/[email protected]
Patch Changes
- Updated dependencies [
343b74246
]:- @keystone-next/[email protected]
- @keystone-next/[email protected]
- @keystone-next/[email protected]
@keystone-next/[email protected]
Patch Changes
- Updated dependencies [
343b74246
]:- @keystone-next/[email protected]
- @keystone-next/[email protected]
- @keystone-next/[email protected]
@keystone-next/[email protected]
Patch Changes
- Updated dependencies [
343b74246
]:- @keystone-next/[email protected]
- @keystone-next/[email protected]
- @keystone-next/[email protected]
@keystone-next/[email protected]
Patch Changes
- Updated dependencies [
eae55db19
,343b74246
]:- @keystone-next/[email protected]
- @keystone-next/[email protected]
- @keystone-next/[email protected]
✨ 22nd March 2021
What's New
Prisma migrations 🚚
- We updated
keystone-next dev
with the Prisma adapter so that it interactively prompts for creating and applying migrations. createKeystone
andcreateSystem
also accept a migration mode now instead of a script.keystone-next generate
now uses Prisma's programmatic APIs to generate migrations and it accepts the following options as command line arguments or as prompts:--name
to set the name of the migration--accept-data-loss
to allow resetting the database when it is out of sync with the migrations--allow-empty
to create an empty migration when there are no changes to the schema.
Noteworthy bug-squashing 🐛
Now you can include negative values for float
, decimal
and integer
fields. 🎉
Enjoying Keystone?
Star this repo 🌟 ☝️ or connect to Keystone on Twitter and in Slack.
View verbose release notes
Releases
@keystone-next/[email protected]
Major Changes
- #5087
56e5fe10b
Thanks @mitchellhamilton! - UpdatedcreateKeystone
andcreateSystem
to accept a migration mode rather than script
Patch Changes
-
#5150
3a9d20ce1
Thanks @timleslie! - Applied eslintimport/order
rule. -
Updated dependencies [
bfeb927be
,8e9b04ecd
,17c86e0c3
,b7ce464a2
,714bdadce
,b84abebb6
,3a9d20ce1
,56e5fe10b
,56e5fe10b
,e6b16d4e9
,cdd889db1
,215aed387
,00f980cad
,b37cbffc8
,40d4fff5d
,215aed387
,b37cbffc8
,00f980cad
,d31acf61b
]:- @keystone-next/[email protected]
- @keystone-next/[email protected]
- @keystone-ui/[email protected]
- @keystone-ui/[email protected]
- @keystone-ui/[email protected]
- @keystone-ui/[email protected]
- @keystone-next/[email protected]
@keystone-next/[email protected]
Major Changes
-
#5087
56e5fe10b
Thanks @mitchellhamilton! - UpdatedcreateKeystone
andcreateSystem
to accept a migration mode rather than script -
#5135
cdd889db1
Thanks @mitchellhamilton! - Updatedkeystone-next dev
with the Prisma adapter so that it interactively prompts for creating and applying a migration -
#5163
b37cbffc8
Thanks @mitchellhamilton! - Addeddb.useMigrations
option to replace usingkeystone-next dev
andkeystone-next prototype
depending on what kind of migration strategy you want to use. If you were previously usingkeystone-next dev
, you should setdb.useMigrations
to true in your config and continue usingkeystone-next dev
. If you were previously usingkeystone-next prototype
, you should now usekeystone-next dev
. -
#5155
215aed387
Thanks @mitchellhamilton! - RemovedcreateOnly
migration mode -
#5163
b37cbffc8
Thanks @mitchellhamilton! - ReplacedMigrationMode
type withMigrationAction
thatcreateSystem
andcreateKeystone
now accept.
Minor Changes
-
#3946
8e9b04ecd
Thanks @timleslie! - Added experimental support for Prisma + SQLite as a database adapter. -
#5102
714bdadce
Thanks @mitchellhamilton! - Addednone-skip-client-generation
migrationMode -
#5148
e6b16d4e9
Thanks @mitchellhamilton! - Updatedkeystone-next deploy
to use Prisma's programmatic APIs to apply migrations -
#5155
215aed387
Thanks @mitchellhamilton! - Changedkeystone-next generate
so that it uses Prisma's programmatic APIs to generate migrations and it accepts the following options as command line arguments or as prompts:--name
to set the name of the migration--accept-data-loss
to allow resetting the database when it is out of sync with the migrations--allow-empty
to create an empty migration when there are no changes to the schema
-
#5084
40d4fff5d
Thanks @timleslie! - Updatedcontext.sudo()
to provide access to all operations, including those excluded by{ access: false }
in the public schema. -
#5152
00f980cad
Thanks @mitchellhamilton! - Updatedkeystone-next reset
to use Prisma's programmatic APIs to reset the database. -
#4912
d31acf61b
Thanks @timleslie! - Added aconfig.graphql.apolloConfig
option to allow developers to configure theApolloServer
object provided by Keystone.
Patch Changes
-
#5099
bfeb927be
Thanks @timleslie! - Updatedcontext.graphql.raw
andcontext.graphql.run
to use the GraphQL functiongraphql
rather thanexecute
. This function performs more rigorous query validation before executing the query. -
#5096
b7ce464a2
Thanks @timleslie! - Updated items API to handle staticfalse
access control. -
#5150
3a9d20ce1
Thanks @timleslie! - Applied eslintimport/order
rule. -
#5152
00f980cad
Thanks @mitchellhamilton! - Fixedkeystone-next reset
saying that it is not a command that keystone-next accepts -
Updated dependencies [
1eeac4722
, [8e9b04ecd
]...