Releases: rebing/graphql-laravel
9.7.0
Fixed
- Fixes for implicit nullability deprecation (PHP 8.4 compat) #1152 / duncanmcclean
New Contributors
- @duncanmcclean made their first contribution in #1152
Full Changelog: 9.6.0...9.7.0
9.6.0 release
Fixed
- Bring back laravel-mongodb support #1144 / jsrodas-pdpaola
New Contributors
- @jsrodas-pdpaola made their first contribution in #1144
Full Changelog: 9.5.0...9.6.0
9.5.0 release
What's Changed
- Relax PaginationType getPaginationFields typehint by @jasonvarga in #1132
Full Changelog: 9.4.0...9.5.0
9.4.0 Release
What's Changed
- Allow global resolver Middlewares by @alancolant in #1127
- phpstan: misc smaller improvements by @mfn in #1129
- Prepare 9.4.0 release by @mfn in #1130
New Contributors
- @alancolant made their first contribution in #1127
Full Changelog: 9.3.0...9.4.0
9.3.0 Release
9.2.0 Release
9.1.0 Release
Fixed
- fix schema validation - resolve not allowed in input fields #1078 / crissi
Full Changelog: 9.0.0...9.1.0
9.0.0 is here 🎉
It's been 1 1/2 years since our last major release 8.0.0 😱
The library itself stays true to its roots, but we've to adapt to the evolving ecosystem (remove unsupported PHP and Laravel version) and stay compatible with other dependencies (e.g. graphql-php).
‼️ This release contains breaking changes, be sure to read through all of them ‼️
High level:
- Support for PHP < 8.0 and Laravel < 9.0 was removed
- Subtle breaking changes due to new major version 15.x of graphql-php
- Removed support for GraphQL eager type load (= only lazy loading is done)
- Removed the integration GraphiQL support in favour of a separate package
Breaking changes
Added
-
Upgrade to graphql-php 15 #953 / mfn
This includes possible breaking changes also outside of this package, see also https://github.com/webonyx/graphql-php/releases/tag/v15.0.0
Known breaking changes:- non-standard error related data keys are not included directly in
errors.*.<non-standard error key>
any more, but have been moved to
errors.*.extensions.<non-standard error key>
.
Also new keys may appear here from upstream. - The
errors.*.extensions.category
has been removed upstream, but we try to
keep it alive with the interface
\Rebing\GraphQL\Error\ProvidesErrorCategory
as it can be a useful
discriminator on the client side in certain cases. But only the cases from
this library are preserved, e.g. categories likerequest
,graphql
or
internal
are gone. - The
\Rebing\GraphQL\Support\OperationParams
has added required types due to
its base class changes:- Old:
public function getOriginalInput($key)
new:public function getOriginalInput(string $key)
- Old:
public function isReadOnly()
new:public function isReadOnly(): bool
- Old:
Some BC may happen also if you extended code originating in graphql-php,
some examples:- if you implement custom types, you now have to use property types for e.g.
$name
or$description
- If you used any
\GraphQL\Validator\DocumentValidator
in your code
directly, you now need use FQCN to reference them and not the shortened
string names. ->getWrappedType(true)
was replaced with->getInnermostType()
- the class
\GraphQL\Type\Definition\FieldArgument
has been renamed to
\GraphQL\Type\Definition\Argument
- non-standard error related data keys are not included directly in
Removed
- Remove support for eager loading (=non-lazy loading) of types
Lazy loading has been introduced in 2.0.0 (2019-08) and has been made the
default since 8.0.0 (2021-11).
The practical impact is that types are always going to be resolved using a
type loader and therefore cannot use aliases anymore. Types and their type
name have to match. - Remove integrated GraphiQL support in favour of https://github.com/mll-lab/laravel-graphiql #986 / mfn
- Laravel 6 is no longer supported #967 / mfn
- Laravel 8 is no longer supported #1049 / mfn
Changed
- The type resolver is now able to resolve the top level types 'Query',
'Mutation' and 'Subscription'
If you have an existing query/mutation/type named like this, you need to
rename it. - Return types were added to all methods of the commands #1005 / sforward
- Upgrade to laragraph/utils v2 #1032 / mfn
- The
Pagination
andSimplePagination
helper types now enforcenonNull
on their data types - The test suite now also runs with
--prefer-lowest
#1055 / mfn
This uncovered a few issues withlaragraph/utils
andwebonyx/graphql-php
and thus their minimum version had to be slightly bumped to2.0.1
and
15.0.3
respectively.
Many thanks to all the contributors!
Full Changelog: 8.6.0...9.0.0
9.0.0-rc3
Preface
Make sure to read the release notes, which contain breaking changes ❗ , for
Highlight of 9.0.0-rc3
- Laravel 8 is no longer supported #1049 / mfn
Full Changelog: 9.0.0-rc2...9.0.0-rc3
9.0.0-rc2
First, please make sure to make yourself familiar with the 9.0.0-rc1 release, which contains the core of breaking changes!
Highlights of 9.0.0-rc2:
Changed
- Return types were added to all methods of the commands #1005 / sforward
- Upgrade to laragraph/utils v2 #1032 / mfn
- The
Pagination
andSimplePagination
helper types now enforcenonNull
on their data types #1033 / mfn
Removed
- Remove unused publish command #1004 / sforward
A leftover from the Lumen removal yers ago (#772)
Full Changelog: 9.0.0-rc1...9.0.0-rc2