You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: website/README
+14-8Lines changed: 14 additions & 8 deletions
Original file line number
Diff line number
Diff line change
@@ -26,17 +26,23 @@ The [versioning section of the Docusaurus documentation](https://docusaurus.io/d
26
26
1. Firstly, you need to update the `docs/CHANGELOG.md` file with the updates for the release. The best way to do this is to review all the `is:merged` PRs since the last release. Here is an example entry format:
27
27
28
28
```markdown
29
-
#### Dependencies:
30
-
https://github.com/thecodingmachine/graphqlite/pull/000 Upgraded to Symfony 69
29
+
## 1.0.0
31
30
32
-
#### Breaking Change:
33
-
https://github.com/thecodingmachine/graphqlite/pull/000 Dropped PHP support
31
+
### Dependencies:
34
32
35
-
#### New Features:
36
-
https://github.com/thecodingmachine/graphqlite/pull/000 Added support for the new GraphQL spec fork
33
+
- #000 Upgraded to Symfony 69
37
34
38
-
#### Miscellaneous:
39
-
Added John Doe as a maintainer
35
+
### Breaking Change:
36
+
37
+
- #000 Dropped PHP support
38
+
39
+
### New Features:
40
+
41
+
- #000 Added support for the new GraphQL spec fork
42
+
43
+
### Miscellaneous:
44
+
45
+
- Added John Doe as a maintainer
40
46
```
41
47
42
48
2. Next, you'll need to tag a new version with Docusaurus, which will cache a copy of the documentation in the `versioned_docs` directory, update the `versioned_sidebars`, and update the `versions.json` file.
-#664 Replaces [thecodingmachine/class-explorer](https://github.com/thecodingmachine/class-explorer) with [kcs/class-finder](https://github.com/alekitto/class-finder) resulting in the `SchemaFactory::setClassNameMapper` being renamed to `SchemaFactory::setFinder`. This now expects an instance of `Kcs\ClassFinder\Finder` instead of `Kcs\ClassFinder\Finder\FinderInterface`. @fogrye
12
+
13
+
### New Features
14
+
15
+
-#649 Adds support for `subscription` operations. @oojacoboo
-#658 Improves on prefetching for nested fields. @grynchuk
22
+
-#646 Improves exception handling during schema parsing. @fogrye
23
+
-#636 Allows the use of middleware on construtor params/fields. @oprypkhantc
24
+
-#623 Improves support for description arguments on types/fields. @downace
25
+
-#628 Properly handles `@param` annotations for generics support on field annotated constructor arguments. @oojacoboo
26
+
-#584 Immutability improvements across the codebase. @oprypkhantc
27
+
-#588 Prefetch improvements. @oprpkhantc
28
+
-#606 Adds support for phpdoc descriptions and deprecation annotations on native enums. @mdoelker
29
+
- Thanks to @shish, @cvergne and @mshapovalov for updating the docs!
30
+
31
+
### Minor Changes
32
+
33
+
-#639 Added support for Symfony 7. @janatjak
34
+
35
+
36
+
## 6.2.3
37
+
38
+
Adds support for `Psr\Container` 1.1 with #601
39
+
40
+
## 6.2.2
41
+
42
+
This is a very simple release. We support Doctrine annotation 1.x and we've deprecated `SchemaFactory::setDoctrineAnnotationReader` in favor of native PHP attributes.
43
+
44
+
## 6.2.1
45
+
46
+
- Added support for new `Void` return types, allowing use of `void` from operation resolvers. #574
47
+
- Improvements with authorization middleware #571
48
+
- Updated vendor dependencies: #580#558
49
+
50
+
## 6.2.0
51
+
52
+
Lots of little nuggets in this release! We're now targeting PHP ^8.1 and have testing on 8.2.
53
+
54
+
- Better support for union types and enums: #530, #535, #561, #570
55
+
- Various bug and interface fixes: #532, #575, #564
56
+
- GraphQL v15 required: #542
57
+
- Lots of codebase improvements, more strict typing: #548
58
+
59
+
A special thanks to @rusted-love and @oprypkhantc for their contributions.
60
+
61
+
## 6.1.0
62
+
63
+
A shoutout to @bladl for his work on this release, improving the code for better typing and PHP 8.0 syntax updates!
64
+
65
+
### Breaking Changes
66
+
67
+
-#518 PSR-11 support now requires version 2
68
+
-#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:
69
+
70
+
```php
71
+
/**
72
+
* @param (OutputType&GraphQLType)|null $subType
73
+
*
74
+
* @return OutputType&GraphQLType
75
+
*/
76
+
public function toGraphQLOutputType(
77
+
Type $type,
78
+
OutputType|null $subType,
79
+
ReflectionMethod|ReflectionProperty $reflector,
80
+
DocBlock $docBlockObj
81
+
): OutputType;
82
+
83
+
/**
84
+
* @param (InputType&GraphQLType)|null $subType
85
+
*
86
+
* @return InputType&GraphQLType
87
+
*/
88
+
public function toGraphQLInputType(
89
+
Type $type,
90
+
InputType|null $subType,
91
+
string $argumentName,
92
+
ReflectionMethod|ReflectionProperty $reflector,
93
+
DocBlock $docBlockObj
94
+
): InputType;
95
+
```
96
+
97
+
### Improvements
98
+
99
+
-#510
100
+
-#508
101
+
7
102
## 5.0.0
8
103
9
-
####Dependencies:
104
+
### Dependencies
10
105
11
106
- Upgraded to using version 14.9 of [webonyx/graphql-php](https://github.com/webonyx/graphql-php)
12
107
13
108
## 4.3.0
14
109
15
-
####Breaking change:
110
+
### Breaking change
16
111
17
112
- The method `setAnnotationCacheDir($directory)` has been removed from the `SchemaFactory`. The annotation
18
113
cache will use your `Psr\SimpleCache\CacheInterface` compliant cache handler set through the `SchemaFactory`
19
114
constructor.
20
115
21
-
####Minor changes:
116
+
### Minor changes
22
117
23
118
- Removed dependency for doctrine/cache and unified some of the cache layers following a PSR interface.
24
119
- Cleaned up some of the documentation in an attempt to get things accurate with versioned releases.
25
120
26
121
## 4.2.0
27
122
28
-
####Breaking change:
123
+
### Breaking change
29
124
30
125
The method signature for `toGraphQLOutputType` and `toGraphQLInputType` have been changed to the following:
31
126
@@ -41,44 +136,43 @@ public function toGraphQLOutputType(Type $type, ?OutputType $subType, $reflector
41
136
public function toGraphQLInputType(Type $type, ?InputType $subType, string $argumentName, $reflector, DocBlock $docBlockObj): InputType;
42
137
```
43
138
44
-
####New features:
139
+
### New features
45
140
46
141
-[@Input](annotations-reference.md#input-annotation) annotation is introduced as an alternative to `@Factory`. Now GraphQL input type can be created in the same manner as `@Type` in combination with `@Field` - [example](input-types.mdx#input-attribute).
47
142
- New attributes has been added to [@Field](annotations-reference.md#field-annotation) annotation: `for`, `inputType` and `description`.
48
143
- The following annotations now can be applied to class properties directly: `@Field`, `@Logged`, `@Right`, `@FailWith`, `@HideIfUnauthorized` and `@Security`.
49
144
50
145
## 4.1.0
51
146
52
-
####Breaking change:
147
+
### Breaking change
53
148
54
149
There is one breaking change introduced in the minor version (this was important to allow PHP 8 compatibility).
55
150
56
151
- The **ecodev/graphql-upload** package (used to get support for file uploads in GraphQL input types) is now a "recommended" dependency only.
57
152
If you are using GraphQL file uploads, you need to add `ecodev/graphql-upload` to your `composer.json`.
58
153
59
-
####New features:
154
+
### New features
60
155
61
156
- All annotations can now be accessed as PHP 8 attributes
62
157
- The `@deprecated` annotation in your PHP code translates into deprecated fields in your GraphQL schema
63
158
- You can now specify the GraphQL name of the Enum types you define
64
159
- Added the possibility to inject pure Webonyx objects in GraphQLite schema
65
160
66
-
####Minor changes:
161
+
### Minor changes
67
162
68
163
- Migrated from `zend/diactoros` to `laminas/diactoros`
69
164
- Making the annotation cache directory configurable
70
165
71
-
####Miscellaneous:
166
+
### Miscellaneous
72
167
73
168
- Migrated from Travis to Github actions
74
169
75
-
76
170
## 4.0.0
77
171
78
172
This is a complete refactoring from 3.x. While existing annotations are kept compatible, the internals have completely
79
173
changed.
80
174
81
-
####New features:
175
+
### New features
82
176
83
177
- You can directly [annotate a PHP interface with `@Type` to make it a GraphQL interface](inheritance-interfaces.mdx#mapping-interfaces)
84
178
- You can autowire services in resolvers, thanks to the new `@Autowire` annotation
@@ -97,7 +191,6 @@ changed.
97
191
- You can extend an input types (just like you could extend an output type in v3) using [the new `@Decorate` annotation](extend-input-type.mdx)
98
192
- In a factory, you can [exclude some optional parameters from the GraphQL schema](input-types#ignoring-some-parameters)
99
193
100
-
101
194
Many extension points have been added
102
195
103
196
- Added a "root type mapper" (useful to map scalar types to PHP types or to add custom annotations related to resolvers)
@@ -106,15 +199,15 @@ Many extension points have been added
106
199
107
200
New framework specific features:
108
201
109
-
####Symfony:
202
+
### Symfony
110
203
111
204
- The Symfony bundle now provides a "login" and a "logout" mutation (and also a "me" query)
112
205
113
-
####Laravel:
206
+
### Laravel
114
207
115
208
-[Native integration with the Laravel paginator](laravel-package-advanced.mdx#support-for-pagination) has been added
116
209
117
-
####Internals:
210
+
### Internals
118
211
119
212
- The `FieldsBuilder` class has been split in many different services (`FieldsBuilder`, `TypeHandler`, and a
0 commit comments