Skip to content

Releases: thecodingmachine/graphqlite

v8.0.0

18 Dec 06:55
10c1197
Compare
Choose a tag to compare

v7.0.0

20 Mar 05:52
19458fa
Compare
Choose a tag to compare

Breaking Changes

New Features

Improvements

  • #658 Improves on prefetching for nested fields. @grynchuk
  • #646 Improves exception handling during schema parsing. @fogrye
  • #636 Allows the use of middleware on construtor params/fields. @oprypkhantc
  • #623 Improves support for description arguments on types/fields. @downace
  • #628 Properly handles @param annotations for generics support on field annotated constructor arguments. @oojacoboo
  • #584 Immutability improvements across the codebase. @oprypkhantc
  • #588 Prefetch improvements. @oprpkhantc
  • #606 Adds support for phpdoc descriptions and deprecation annotations on native enums. @mdoelker
  • Thanks to @shish, @cvergne and @mshapovalov for updating the docs!

Minor Changes

v6.2.3

20 Jun 23:02
1edec84
Compare
Choose a tag to compare

Adds support for Psr\Container 1.1 with #601

v6.2.2

08 May 17:53
8d6a292
Compare
Choose a tag to compare

This is a very simple release. We support Doctrine annotation 1.x and we've deprecated SchemaFactory::setDoctrineAnnotationReader in favor of native PHP attributes.

v6.2.1

13 Mar 21:52
fcca091
Compare
Choose a tag to compare
  • Added support for new Void return types, allowing use of void from operation resolvers. #574
  • Improvements with authorization middleware #571
  • Updated vendor dependencies: #580 #558

v6.2.0

12 Mar 00:09
b5af49e
Compare
Choose a tag to compare

Lots of little nuggets in this release! We're now targeting PHP ^8.1 and have testing on 8.2.

  • Better support for union types and enums: #530, #535, #561, #570
  • Various bug and interface fixes: #532, #575, #564
  • GraphQL v15 required: #542
  • Lots of codebase improvements, more strict typing: #548

A special thanks to @rusted-love and @oprypkhantc for their contributions.

v6.1.0

29 Oct 03:32
b68e96b
Compare
Choose a tag to compare

A shoutout to @bladl for his work on this release, improving the code for better typing and PHP 8.0 syntax updates!

Breaking Change:

#518 PSR-11 support now requires version 2
#508 Due to some of the code improvements, additional typing has been added to some interfaces/classes. For instance, RootTypeMapperInterface::toGraphQLOutputType and RootTypeMapperInterface::toGraphQLInputType now have the following signatures:

    /**
     * @param (OutputType&GraphQLType)|null $subType
     *
     * @return OutputType&GraphQLType
     */
    public function toGraphQLOutputType(
        Type $type, 
        OutputType|null $subType, 
        ReflectionMethod|ReflectionProperty $reflector, 
        DocBlock $docBlockObj
    ): OutputType;

    /**
     * @param (InputType&GraphQLType)|null $subType
     *
     * @return InputType&GraphQLType
     */
    public function toGraphQLInputType(
        Type $type, 
        InputType|null $subType, 
        string $argumentName, 
        ReflectionMethod|ReflectionProperty $reflector, 
        DocBlock $docBlockObj
    ): InputType;

Improvements:

#510
#508

v5.0.3

15 Jun 15:59
84b6e13
Compare
Choose a tag to compare

This minor update adds support for Symfony 6 components

v6.0.0

11 Jun 05:16
eed7f24
Compare
Choose a tag to compare

Hurrah version 6 landing! There is a lot in this one and it's long overdue, but we finally hit a great spot, so without further adieu.

Version 6 brings #[Input] defined InputTypes way forward and solidifies their overall functionality. #[Input] attribute defined InputTypes are becoming my preferred way of defining these types. One single DTO or even Doctrine entity (if you so dare!) can be used to define both input and output types, with virtually no side-effects or missing feature functionality. Prior to version 6, #[Input] defined types were rather limited. This is no longer the case! If you haven't had a chance yet, now is the time to give them a spin! 👍 A special thanks to @Lappihuan for all his teamwork on the InputType improvements. This wouldn't have happened without him!

In addition to the huge improvements made on InputTypes, we now have support for native Enums (shoutout to @dsavina), union return typing, and generics support!

Dependencies:

  • 652440a Symfony ^6 is now supported.

Breaking Change:

  • #458 With Input annotated InputTypes, if you're using the same class for multiple types, like an update type and create type (also now a possibility), if you provide a name, you must also provide the default parameter if you want the InputType to be the "default".

    #[Input] // Is default
    #[Input(default: false)] // Not default
    #[Input(name: 'SomethingInput', default: true] // Is default
    #[Input(name: 'UpdateSomethingInput'] // Not default

New Features:

  • #409 Native Enum support! 🎉
  • #467 Support native union return typing
  • #468 Support generic phpdoc typed interables for output type values
  • #435 New Custom InputType Validator offering flexibility in how you can handle validation on all of your #[Input] attributes.
  • #458 Recursive InputType resolving
  • #466 Bring existing getter #[Field] defined functionality from output #[Type] objects to InputType annotated fields, via setters.

v5.0.2

28 Nov 23:07
21bc850
Compare
Choose a tag to compare

Minor release to support missing properties for MagicFields with #402 and #405. Thanks @michael-vostrikov.