Skip to content
Merged
Show file tree
Hide file tree
Changes from 9 commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion .github/workflows/copilot-setup-steps.yml
Original file line number Diff line number Diff line change
Expand Up @@ -33,5 +33,5 @@ jobs:
with:
global-json-file: global.json
dotnet-version: |
9.x
10.x
8.x
2 changes: 1 addition & 1 deletion .github/workflows/publish-ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@ on:
env:
DOTNET_SKIP_FIRST_TIME_EXPERIENCE: 1
DOTNET_NOLOGO: true
DOTNET_SDK_VERSION: 9.0.307
DOTNET_SDK_VERSION: 10.0.202

jobs:
publish:
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/publish-release.yml
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@ env:
DOTNET_SKIP_FIRST_TIME_EXPERIENCE: 1
DOTNET_NOLOGO: true
SLEEP_DURATION: 60
DOTNET_SDK_VERSION: 9.0.307
DOTNET_SDK_VERSION: 10.0.202

jobs:
publish:
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/pull-request.yml
Original file line number Diff line number Diff line change
Expand Up @@ -21,7 +21,7 @@ jobs:
fail-fast: false
matrix:
os: [ubuntu-22.04, windows-latest, macOS-latest]
dotnet: [9.0.307]
dotnet: [10.0.202]
Comment thread
xperiandri marked this conversation as resolved.
runs-on: ${{ matrix.os }}

steps:
Expand Down
8 changes: 4 additions & 4 deletions Directory.Build.props
Original file line number Diff line number Diff line change
@@ -1,17 +1,17 @@
<Project>

<PropertyGroup>
<DotNetVersion>net8.0</DotNetVersion>
<LangVersion>9.0</LangVersion>
<FSharpCoreVersion>9.0.*</FSharpCoreVersion>
<DotNetVersion>net10.0</DotNetVersion>
<LangVersion>10.0</LangVersion>
<FSharpCoreVersion>10.0.*</FSharpCoreVersion>
<AccelerateBuildsInVisualStudio>true</AccelerateBuildsInVisualStudio>
<DisableImplicitFSharpCoreReference>true</DisableImplicitFSharpCoreReference>
<NoWarn>$(NoWarn);NU1504;NU1701</NoWarn>
<TreatWarningsAsErrors Condition="'$(Configuration)' != 'Debug'">true</TreatWarningsAsErrors>
</PropertyGroup>

<PropertyGroup Label="NuGet">
<Version>3.1.1</Version>
<Version>4.0.0</Version>
Comment thread
xperiandri marked this conversation as resolved.
</PropertyGroup>

</Project>
8 changes: 4 additions & 4 deletions Packages.props
Original file line number Diff line number Diff line change
@@ -1,10 +1,10 @@
<?xml version="1.0" encoding="utf-8"?>
<Project>
<PropertyGroup>
<SystemVersion>8.0.*</SystemVersion>
<MicrosoftExtensionsVersion>8.0.*</MicrosoftExtensionsVersion>
<AspNetCoreVersion>8.0.*</AspNetCoreVersion>
<FSharpCoreVersion>9.0.202</FSharpCoreVersion>
<SystemVersion>10.0.*</SystemVersion>
<MicrosoftExtensionsVersion>10.0.*</MicrosoftExtensionsVersion>
<AspNetCoreVersion>10.0.*</AspNetCoreVersion>
<FSharpCoreVersion>10.1.202</FSharpCoreVersion>
<FsToolkitVersion>4.17.*</FsToolkitVersion>
<XUnitVersion>2.9.3</XUnitVersion>
<FAKEVersion>6.*</FAKEVersion>
Expand Down
49 changes: 47 additions & 2 deletions RELEASE_NOTES.md
Original file line number Diff line number Diff line change
@@ -1,19 +1,23 @@
#### 0.0.1-beta - 2016-04-19

* Initial release

#### 0.0.2-beta - 2016-09-01

* Introduced intermediate representation of GraphQL operation execution.
* Introduced ability to convert GraphQL query to LINQ.
* Replaced current asynchronous API resolver internals.
* Ability to use records as complex input variables.
* Minor bugfixes and performance optimizations.

### 0.0.3-beta - 2018-03-22

* Introduced a sample for GraphQL over WebSocket Protocol
* Introduced support for Stream and Defer directives
* Minor bugfixes.

### 0.0.4-beta - 2018-05-31

* Introduced support for middlewares in the execution pipeline.
* Introduced new package, named FSharp.Data.GraphQL.Server.Middleware, with generic, built-in middlewares.
* Introduced QueryWeightMiddleware, a generic execution middleware to measure query complexity and optionally block query execution with a threshold.
Expand All @@ -26,96 +30,120 @@
* Added support for nested deferred and streamed results (currently does have a maximum degree of two nested operations).

### 0.0.4-beta01 - 2018-05-31

* Fix package dependency versions

### 0.0.5-beta - 2018-08-10

* Upgraded dependencies on Newtonsoft.Json to the latest version.
* Changing subscription field definitions to have a generic output type - the output is not required to be a GraphQL type anymore.
* Implemented experimental support for @live directive, through a subscription system.
* Fixed a bug that caused an exception when ToString function is called on an empty NameValueLookup.
* Added support for asynchronous subscription field definitions.

### 0.0.6-beta - 2018-08-10

* Fixes for introspection query
* Use string identifier to publish to subscription

### 0.0.7-beta - 2018-09-17

* **Breaking Change:** Async Pub/Sub methods for subscription and live directive handler interfaces
* Add Long Scalar definition

### 0.0.8-beta - 2018-10-27

* Add subscription field to introspection schema

### 0.0.8-beta01 - 2018-10-28

* Add subscription field to introspection schema

### 0.0.9 - 2018-11-02

* Fixed a bug where output def of a subscription field was not reachable for introspection.

### 0.0.10-beta - 2018-11-13

* Deferred and Streamed results now return their fields in the direct result as well. The value of those fields will be an empty list or null.
* Live results now send the immediate result in the direct result, instead of the deferred result.

### 0.0.11-beta - 2018-11-21

* Deferred and Streamed results fixes for GQL interfaces.

### 0.0.12-beta - 2018-11-21

* Deferred and Streamed results fixes for GQL interfaces when at the top-level of query.

### 0.0.16-beta - 2019-01-03

* **Breaking Change** The `ISubscriptionProvider` interface now has additional methods to publish to subscriptions by tag.
* **Breaking Change** Renamed interface methods in `ISubscriptionProvider` from XxAsync to AsyncXx to reserve the former for TPL extensions.
* Fixes for stream and defer execution.

### 0.0.17-beta - 2019-01-11

* Execute deferred results in parallel.

### 0.0.18-beta - 2019-01-16

* Fix dispose of deferred/stream responses.

### 1.0.0-beta - 2019-04-27

* **Breaking Change** New type provider API! see samples/client-provider for details.
* Fixes for #216 enum as a variable.
* Upgraded paket and dependencies.

### 1.0.0-beta2 - 2019-04-27

* **Breaking Change** GraphQLProvider now makes Nullable GraphQL inputs optional method arguments instead of options
* **Breaking Change** GraphQLProvider uses the operation name as the generated operation type's names. if no operation name is specified it uses "Operation" + the query string's hash
* Make the type provider cross-targeting
* **Breaking Change** Add postcompile phase to middleware interface

### 1.0.0-beta3 - 2019-05-10

* **Breaking Change** GraphQLProvider record types constructors now receive option arguments as optional arguments
* Revision on scalar types parsing - fixed some wrong behaviors such as parsing ints as floats

### 1.0.0-beta4 - 2019-05-13

* Fixing a bug when converting variable types to variables json in a query

### 1.0.0-beta5 - 2019-05-13

* Fixing a bug when parsing json objects with no fields in serialization

### 1.0.0-beta6 - 2019-05-17

* Changing constructors of provided types to have overloads instead of optional parameters (needed because of a limitation of the Type Provider SDK)
* Adding support for field aliases
* Operation result errors and custom data now are provided as their respective types instead of options (`Operation Error []` and `Map<string, obj>`)

### 1.0.0-beta7 - 2019-05-17

* Minor bug fixes
* Fixing an error on overload constructor definition

### 1.0.0-beta8 - 2019-05-22

* Performance improvements

### 1.0.0-beta9 - 2019-05-22

* Fixing dependency issue on Server component

### 1.0.0-beta90 - 2019-05-29

* Fixing a wrong cast for System.Uri type
* Adding support for file uploads through [GraphQL Multipart Request Spec](https://github.com/jaydenseric/graphql-multipart-request-spec)
* Changing variable parameters of Run/AsyncRun methods to work as overloaded methods instead of one having optional parameters
* Minor bug fixes

### 1.0.0 - 2019-07-04

* Changing the internal client of the Type provider (`System.Net.Http.HttpClient`)
* Fixing several minor bugs of the file upload system in the client provider
* Limiting the upload type of the client provider to be a scalar type (provider fails if it is not)
Expand All @@ -129,34 +157,40 @@
* **Breaking Change** Renaming `FSharp.Data.GraphQL.Server.Middlewares` package to `FSharp.Data.GraphQL.Server.Middleware`

### 1.0.1 - 2019-07-05

* Adjusting package dependencies (`FParsec`, `System.Net.Http`, and `FSharp.Data.GraphQL.Server` are not locked anymore)

### 1.0.2 - 2019-08-19

* fixed false positive validation errors related to variable usage.

### 1.0.3 - 2020-03-03

* Correct printing of queries without names
* Correct printing of ListValue and ObjectValue
* Traverse list values in argument lists
* Added test cases for object inputs for GraphQL functions


### 1.0.4 - 2020-03-22

* TypeProvider now treats custom scalars as strings
* The Guid scalar was mapped to a DateTime


### 1.0.5 - 2020-03-23

* Support opening static classes
* Add additional case in client to support failed requests that don't return a path.

### 1.0.6 - 2020-12-15

* TypeProvider accepts IHttpClientFactory as input

### 1.0.7 - 2020-12-30

* Add static TypeProvider parameter `explicitOptionalParameters`.

### 1.0.8 - 2021-04-18

* Remove Desktop build
* Update documentation and build tools
* Upgrade build scripts
Expand All @@ -166,6 +200,7 @@
* Fix parser bug. Thanks to @njlr

### 2.0.0 - 2024-03-24

* **Breaking Change** Migrated to .NET 6/7 and F# 7
* **Breaking Change** Implemented GraphQL error handling using `IGQLError` interface instead of exceptions
* **Breaking Change** Implemented parsing variables as `JsonElement`
Expand All @@ -186,17 +221,21 @@
* Fixed various introspection and default value encoding issues

### 2.1.0 - 2024-04-13

* Improved server exception logging by including exception in log message
* Documentation and README improvements

### 2.2.0 - 2024-05-08

* Improved `AddGraphQLOptions`
* Added Altair and GraphiQL to sample projects

### 2.2.1 - 2024-06-16

* Fixed `JsonSerializerOptions` read-only instance error

### 3.0.0 - 2025-11-30

* **Breaking Change** Migrated to .NET 8 and F# 9.0 with `FSharp.Core` 9.0.x
* **Breaking Change** Updated scalar `CoerceOutput` signature to `objnull -> 'Primitive option`
* **Breaking Change** Moved GraphQL error extensions to standard `extensions` field according to specification
Expand Down Expand Up @@ -244,3 +283,9 @@

* Fixed planning phase crash when inline fragments reference types not included in union or interface definitions
* Fixed GraphQL client provider handling for schema types that reuse reserved scalar names such as `Date`, so introspection kind now takes precedence over built-in scalar mappings.

### 4.0.0 - Unreleased

* **Breaking Change** Migrated to .NET 10
* **Breaking Change** Made Relay `Edge` a struct
* Improved Relay XML documentation comments
Loading
Loading