Weave Code
Code Weaver
Helps Laravel developers discover, compare, and choose open-source packages. See popularity, security, maintainers, and scores at a glance to make better decisions.
Feedback
Share your thoughts, report bugs, or suggest improvements.
Subject
Message

Graphqlite Laravel Package

thecodingmachine/graphqlite

View on GitHub
Deep Wiki
Context7
v8.3.0

What's Changed

New Contributors

Full Changelog: https://github.com/thecodingmachine/graphqlite/compare/v8.2.0...v8.3.0

v8.2.0

What's Changed

Full Changelog: https://github.com/thecodingmachine/graphqlite/compare/v8.1.3...v8.2.0

v8.1.3

What's Changed

New Contributors

Full Changelog: https://github.com/thecodingmachine/graphqlite/compare/v8.1.2...v8.1.3

v8.1.2

What's Changed

New Contributors

Full Changelog: https://github.com/thecodingmachine/graphqlite/compare/v8.1.1...v8.1.2

v8.1.1

What's Changed

New Contributors

Full Changelog: https://github.com/thecodingmachine/graphqlite/compare/v8.1.0...v8.1.1

v8.1.0

While there shouldn't be any BC issues in this release, I've bumped to 8.1 since there is improved/full PHP 8.4 support included in this release.

What's Changed

New Contributors

Full Changelog: https://github.com/thecodingmachine/graphqlite/compare/v8.0.0...v8.1.0

v7.0.0

Breaking Changes

  • #664 Replaces thecodingmachine/class-explorer with kcs/class-finder resulting in the SchemaFactory::setClassNameMapper being renamed to SchemaFactory::setFinder. This now expects an instance of Kcs\ClassFinder\Finder\FinderInterface instead of Mouf\Composer\ClassNameMapper. @fogrye

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](https://github.com/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

  • #639 Added support for Symfony 7. @janatjak
v6.2.3

Adds support for Psr\Container 1.1 with #601

v6.2.2

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
  • 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

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

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

Breaking Change:

https://github.com/thecodingmachine/graphqlite/pull/518 PSR-11 support now requires version 2 https://github.com/thecodingmachine/graphqlite/pull/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](https://github.com/param) (OutputType&GraphQLType)|null $subType
     *
     * [@return](https://github.com/return) OutputType&GraphQLType
     */
    public function toGraphQLOutputType(
        Type $type, 
        OutputType|null $subType, 
        ReflectionMethod|ReflectionProperty $reflector, 
        DocBlock $docBlockObj
    ): OutputType;

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

Improvements:

https://github.com/thecodingmachine/graphqlite/pull/510 https://github.com/thecodingmachine/graphqlite/pull/508

v5.0.3

This minor update adds support for Symfony 6 components

v6.0.0

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:

Breaking Change:

  • https://github.com/thecodingmachine/graphqlite/pull/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:

v5.0.2

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

v5.0.1

https://github.com/thecodingmachine/graphqlite/pull/406 Updated doc regarding changing namespace in the Symfony Bundle

v5.0.0
v4.3.0
  • #373 Drop doctrine/cache dependency. symfony/cache is now used with a more unified psr compatible cache interface.
  • #375 Docs were updated to address a BC break in 4.2.0 with the custom type mapper API.
  • #380 Upgrade to Docusaurus v2.
    • This included a very large amount of documentation updates with a new website running on React
v4.2.0

A huge thanks goes out to @devmaslov for his work on #269.

Improvements:

  • #269 Handling update mutations and default property values on input types (@devmaslov)

GitHub Workflows:

v4.1.2

Bugfix:

  • #320 Missing PHP 8 Attribute on some annotations (@devmaslov)
v4.1.1

Bugfix release:

  • #318 Allowing installation of ocramius/package-versions ^2. This is needed to gain PHP 8 compatibility.
v4.1.0

A huge thanks to the many new contributors for this 4.1.0 release! @fezfez @MattBred @Kharhamel @flow-control @iganev @jensdenies @ezprit @ThibBal @gpupo @DanAtFh @mailopl @gulien @marhub This release is possible because of you all!

Breaking change:

There is one breaking change introduced in the minor version (this was important to allow PHP 8 compatibility).

  • The ecodev/graphql-upload package (used to get support for file uploads in GraphQL input types) is now a "recommended" dependency only. If you are using GraphQL file uploads, you need to add ecodev/graphql-upload to your composer.json.

New features:

  • All annotations can now be accessed as PHP 8 attributes
  • The [@deprecated](https://github.com/deprecated) annotation in your PHP code translates into deprecated fields in your GraphQL schema
  • You can now specify the GraphQL name of the Enum types you define
  • Added the possibility to inject pure Webonyx objects in GraphQLite schema
  • Symfony bundle: Adding settings to disable introspection, set the maximum query complexity and the maximum query depth

Minor changes:

  • Migrated from zend/diactoros to laminas/diactoros
  • Making the annotation cache directory configurable

Miscellaneous:

  • Migrated from Travis to Github actions
v3.1.4

Improvements:

v3.1.3

Upgrade dependencies:

  • #275 Allow for wider dependencies on phpdocumentor/reflection-docblock (@flow-control )
v3.1.2

Upgrade dependencies

  • #273 Allow for wider dependencies on php-documentor/type-resolver (@flow-control )
v4.0.3

Dependencies widening:

v4.0.2

Bugfix release

Warning! This release contains a (minor) BC break about the name given to enum types.

Given the fact that enum types where almost non functionals in v4.0.1, and given the fact it is unlikely they have been used until now, I'm exceptionnaly introducing this BC break to introduce Enum types that are behaving in a more consistent way. See #235 for details.

  • #227 #233 Fixed "enum failed to work (most of the time) as output parameters"
  • #235 #232 Changed the way enums are named in the schema

Note: I do not have a clear visibility of the usage of this feature in the wild since the release of 4.0 a few weeks ago. My bet is noone will be impacted. If you are impacted by this breaking change, please fill an issue to let me know.

v4.0.1

Bugfix release

  • Fixing "a class declared with a bad namespace causes a crash" #216 #217 @moufmouf In particular this fixes problems with the Symfony bundle if the migrations directory is included in the "types" namespace

Improvements:

  • Strengthening test of cache with #219 @moufmouf
v4.0.0

This is a complete refactoring from 3.x. While existing annotations are kept compatible, the internals have completely changed.

New features:

Many extension points have been added

  • Added a "root type mapper" (useful to map scalar types to PHP types or to add custom annotations related to resolvers)
  • Added "field middlewares" (useful to add middleware that modify the way GraphQL fields are handled)- Added a "parameter type mapper" (useful to add customize parameter resolution or add custom annotations related to parameters)

New framework specific features:

Symfony:

  • The Symfony bundle now provides a "login" and a "logout" mutation (and also a "me" query)

Laravel:

Internals:

  • The FieldsBuilder class has been split in many different services (FieldsBuilder, TypeHandler, and a chain of root type mappers)
  • The FieldsBuilderFactory class has been completely removed.
  • Overall, there is not much in common internally between 4.x and 3.x. 4.x is much more flexible with many more hook points than 3.x. Try it out!
v3.1.1

Improvements:

  • Making GraphQLite compatible with PHP 7.4 with no deprecations #147 #150 #153 . Thanks @JensArctiq
Weaver

How can I help you explore Laravel packages today?

Conversation history is not saved when not logged in.
Prompt
Add packages to context
No packages found.
emuniq/filament-browser-notifications
syriable/filament-translator
hungnm28/livewire-form
wenprise/eloquent
crudly/encrypted
fadion/bouncy
cuci/prototurk-sdk
gos/pubsub-router-bundle
cuci/prototurk-sdk-symfony
clementtalleu/easyadmin-markdown-bundle
codeflextech/permission-manager
karnoweb/livewire-datepicker
sayedenam/sayed-dashboard
milito/query-filter
apiboxsym/user-bundle
apiboxsym/health-check-bundle
jayeshmepani/jpl-moshier-ephemeris-php
elnasnato/laraliveui
labrodev/rest-sdk
sampaui/sampaui