Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
35 commits
Select commit Hold shift + click to select a range
2331edf
Creating benchmark project
ivelten Jan 23, 2019
24071ef
Creating some benchmark tests
ivelten Jan 23, 2019
57a138b
Updating queries
ivelten Jan 23, 2019
da79a2b
Refactoring and implementing new kinds of query benchmarks
ivelten Jan 23, 2019
33a81da
Fixing schema design errors
ivelten Jan 23, 2019
1e7b76f
Fixing query errors
ivelten Jan 23, 2019
24b31ef
Added new benchmarks
ivelten Jan 24, 2019
5548fd1
Switching to MARS
ivelten Jan 24, 2019
9036472
Adding nested defer benchmarks
ivelten Jan 24, 2019
df06543
Converting to paket
ivelten Jan 24, 2019
1e089ec
Updating paket.references for new project
ivelten Jan 24, 2019
bc00650
Creating separated group for sql benchmarks
ivelten Jan 24, 2019
6e9655f
Collecting benchmarks for updated tests
ivelten Jan 24, 2019
192b71d
Increasing processing times of items in tests (one processor machines…
ivelten Jan 28, 2019
8e66192
Reverting test project to netcoreapp2.1 (travis trust image doesn't s…
ivelten Jan 28, 2019
fdd694b
Updating travis netcore version
ivelten Jan 28, 2019
e410efd
Removing build warnings
ivelten Jan 28, 2019
90cc737
Creating build script for linux
ivelten Jan 28, 2019
91ec905
Updating build event
ivelten Jan 28, 2019
8023e46
Fixing path error on pre build script
ivelten Jan 29, 2019
1760321
Changing pre build script path on linux
ivelten Jan 29, 2019
6b13b47
Granting permission to pre build script
ivelten Jan 29, 2019
aeb98dc
Increasing tolerance on test for one core machines
ivelten Jan 29, 2019
85c1150
Refactoring observable, updating linux database fetching script
ivelten Jan 29, 2019
a396c39
Updating path in pre build script for linux
ivelten Jan 29, 2019
b0f80b8
Adjusting tests for machines with less processor cores
ivelten Feb 1, 2019
9351809
Merge from test-fixes-2
ivelten Feb 1, 2019
c1cf5a4
Removing test from other branch
ivelten Feb 1, 2019
a2646a5
Merge from test-fixes-2
ivelten Feb 1, 2019
fd65327
Increasing tolerance in WaitCompleted
ivelten Feb 1, 2019
b6ebd40
Merge branch 'test-fixes-2' into benchmarks-2
ivelten Feb 1, 2019
83cef85
Disposing test observer after usage
ivelten Feb 4, 2019
c6a6108
Changing the build script to show result of each ran unit test
ivelten Feb 4, 2019
c5ed715
Merge branch 'test-fixes-2' into benchmarks-2
ivelten Feb 4, 2019
29f4d35
Hiding download progress of test database on build
ivelten Feb 4, 2019
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
1 change: 1 addition & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -196,3 +196,4 @@ docs/content/release-notes.md
docs/tools/FSharp.Formatting.svclog
project.lock.json
src/FSharp.Data.GraphQL.Samples.GiraffeServer/Properties/launchSettings.json
/tests/FSharp.Data.GraphQL.Benchmarks.Sql/ml-latest
10 changes: 9 additions & 1 deletion .paket/Paket.Restore.targets
Original file line number Diff line number Diff line change
Expand Up @@ -62,6 +62,9 @@
<!-- see https://github.com/fsharp/fslang-design/blob/master/RFCs/FS-1032-fsharp-in-dotnet-sdk.md -->
<DisableImplicitFSharpCoreReference>true</DisableImplicitFSharpCoreReference>
<DisableImplicitSystemValueTupleReference>true</DisableImplicitSystemValueTupleReference>

<!-- Disable Paket restore under NCrunch build -->
<PaketRestoreDisabled Condition="'$(NCrunch)' == '1'">True</PaketRestoreDisabled>
</PropertyGroup>

<Target Name="PaketBootstrapping" Condition="Exists('$(PaketToolsPath)paket.bootstrapper.proj')">
Expand Down Expand Up @@ -102,7 +105,11 @@
<PaketRestoreRequired Condition=" '$(PaketRestoreLockFileHash)' == '' ">true</PaketRestoreRequired>
</PropertyGroup>

<PropertyGroup Condition="'$(PaketPropsVersion)' != '5.174.2' ">
<!--
This value should match the version in the props generated by paket
If they differ, this means we need to do a restore in order to ensure correct dependencies
-->
<PropertyGroup Condition="'$(PaketPropsVersion)' != '5.185.3' ">
<PaketRestoreRequired>true</PaketRestoreRequired>
</PropertyGroup>

Expand Down Expand Up @@ -183,6 +190,7 @@
<ExcludeAssets Condition=" '%(PaketReferencesFileLinesInfo.Splits)' == '6' And %(PaketReferencesFileLinesInfo.CopyLocal) == 'false'">runtime</ExcludeAssets>
<ExcludeAssets Condition=" '%(PaketReferencesFileLinesInfo.Splits)' != '6' And %(PaketReferencesFileLinesInfo.AllPrivateAssets) == 'exclude'">runtime</ExcludeAssets>
<Publish Condition=" '$(PackAsTool)' == 'true' ">true</Publish>
<AllowExplicitVersion>true</AllowExplicitVersion>
</PackageReference>
</ItemGroup>

Expand Down
3 changes: 2 additions & 1 deletion .travis.yml
Original file line number Diff line number Diff line change
@@ -1,9 +1,10 @@
language: csharp

sudo: required
dotnet: 2.1.4
dotnet: 2.1.401
before_install:
- chmod +x build.sh
- chmod +x tests/FSharp.Data.GraphQL.Benchmarks.Sql/scripts/fetch-database.sh

script:
- export FrameworkPathOverride=/usr/lib/mono/4.6.1-api/ && ./build.sh All
Expand Down
87 changes: 51 additions & 36 deletions FSharp.Data.GraphQL.sln
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@ Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = ".paket", ".paket", "{63297B
EndProject
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "docs", "docs", "{A6A6AF7D-D6E3-442D-9B1E-58CC91879BE1}"
EndProject
Project("{6EC3EE1D-3C4E-46DD-8F32-0CC8E7565705}") = "FSharp.Data.GraphQL.Server", "src/FSharp.Data.GraphQL.Server/FSharp.Data.GraphQL.Server.fsproj", "{474179D3-0090-49E9-88F8-2971C0966077}"
Project("{6EC3EE1D-3C4E-46DD-8F32-0CC8E7565705}") = "FSharp.Data.GraphQL.Server", "src\FSharp.Data.GraphQL.Server\FSharp.Data.GraphQL.Server.fsproj", "{474179D3-0090-49E9-88F8-2971C0966077}"
EndProject
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "project", "project", "{BF60BC93-E09B-4E5F-9D85-95A519479D54}"
ProjectSection(SolutionItems) = preProject
Expand All @@ -21,86 +21,88 @@ Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "project", "project", "{BF60
EndProject
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "tools", "tools", "{83F16175-43B1-4C90-A1EE-8E351C33435D}"
ProjectSection(SolutionItems) = preProject
docs/tools/generate.fsx = docs/tools/generate.fsx
docs/tools/templates/template.cshtml = docs/tools/templates/template.cshtml
docs\tools\generate.fsx = docs\tools\generate.fsx
docs\tools\templates\template.cshtml = docs\tools\templates\template.cshtml
EndProjectSection
EndProject
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "content", "content", "{8E6D5255-776D-4B61-85F9-73C37AA1FB9A}"
ProjectSection(SolutionItems) = preProject
docs/content/client-side.md = docs/content/client-side.md
docs/content/execution-pipeline.md = docs/content/execution-pipeline.md
docs/content/index.md = docs/content/index.md
docs/content/linq.md = docs/content/linq.md
docs/content/type-system.md = docs/content/type-system.md
docs\content\client-side.md = docs\content\client-side.md
docs\content\execution-pipeline.md = docs\content\execution-pipeline.md
docs\content\index.md = docs\content\index.md
docs\content\linq.md = docs\content\linq.md
docs\content\type-system.md = docs\content\type-system.md
EndProjectSection
EndProject
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "tests", "tests", "{ED8079DD-2B06-4030-9F0F-DC548F98E1C4}"
EndProject
Project("{6EC3EE1D-3C4E-46DD-8F32-0CC8E7565705}") = "FSharp.Data.GraphQL.Tests", "tests/FSharp.Data.GraphQL.Tests/FSharp.Data.GraphQL.Tests.fsproj", "{54AAFE43-FA5F-485A-AD40-0240165FC633}"
Project("{6EC3EE1D-3C4E-46DD-8F32-0CC8E7565705}") = "FSharp.Data.GraphQL.Tests", "tests\FSharp.Data.GraphQL.Tests\FSharp.Data.GraphQL.Tests.fsproj", "{54AAFE43-FA5F-485A-AD40-0240165FC633}"
EndProject
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "samples", "samples", "{B0C25450-74BF-40C2-9E02-09AADBAE2C2F}"
EndProject
Project("{6EC3EE1D-3C4E-46DD-8F32-0CC8E7565705}") = "FSharp.Data.GraphQL.Benchmarks", "tests/FSharp.Data.GraphQL.Benchmarks/FSharp.Data.GraphQL.Benchmarks.fsproj", "{751357AE-F2B2-4B38-956E-81E0B8606C73}"
Project("{6EC3EE1D-3C4E-46DD-8F32-0CC8E7565705}") = "FSharp.Data.GraphQL.Benchmarks", "tests\FSharp.Data.GraphQL.Benchmarks\FSharp.Data.GraphQL.Benchmarks.fsproj", "{751357AE-F2B2-4B38-956E-81E0B8606C73}"
EndProject
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "graphiql-client", "graphiql-client", "{CAE5916B-1415-4982-B705-7318D77C029C}"
ProjectSection(SolutionItems) = preProject
samples/graphiql-client/.babelrc = samples/graphiql-client/.babelrc
samples/graphiql-client/index.html = samples/graphiql-client/index.html
samples/graphiql-client/index.jsx = samples/graphiql-client/index.jsx
samples/graphiql-client/package.json = samples/graphiql-client/package.json
samples/graphiql-client/server.fsx = samples/graphiql-client/server.fsx
samples/graphiql-client/webpack.config.js = samples/graphiql-client/webpack.config.js
samples\graphiql-client\.babelrc = samples\graphiql-client\.babelrc
samples\graphiql-client\index.html = samples\graphiql-client\index.html
samples\graphiql-client\index.jsx = samples\graphiql-client\index.jsx
samples\graphiql-client\package.json = samples\graphiql-client\package.json
samples\graphiql-client\server.fsx = samples\graphiql-client\server.fsx
samples\graphiql-client\webpack.config.js = samples\graphiql-client\webpack.config.js
EndProjectSection
EndProject
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "relay-starter-kit", "relay-starter-kit", "{9B25360F-2CE4-43D2-AFF0-5EAA693E98F7}"
ProjectSection(SolutionItems) = preProject
samples/relay-starter-kit/.babelrc = samples/relay-starter-kit/.babelrc
samples/relay-starter-kit/index.html = samples/relay-starter-kit/index.html
samples/relay-starter-kit/index.jsx = samples/relay-starter-kit/index.jsx
samples/relay-starter-kit/package.json = samples/relay-starter-kit/package.json
samples/relay-starter-kit/server.fsx = samples/relay-starter-kit/server.fsx
samples/relay-starter-kit/webpack.config.js = samples/relay-starter-kit/webpack.config.js
samples\relay-starter-kit\.babelrc = samples\relay-starter-kit\.babelrc
samples\relay-starter-kit\index.html = samples\relay-starter-kit\index.html
samples\relay-starter-kit\index.jsx = samples\relay-starter-kit\index.jsx
samples\relay-starter-kit\package.json = samples\relay-starter-kit\package.json
samples\relay-starter-kit\server.fsx = samples\relay-starter-kit\server.fsx
samples\relay-starter-kit\webpack.config.js = samples\relay-starter-kit\webpack.config.js
EndProjectSection
EndProject
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "data", "data", "{E7139F5F-22CA-4392-8C1C-481A39EEB554}"
ProjectSection(SolutionItems) = preProject
samples/relay-starter-kit/data/schema.json = samples/relay-starter-kit/data/schema.json
samples\relay-starter-kit\data\schema.json = samples\relay-starter-kit\data\schema.json
EndProjectSection
EndProject
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "build", "build", "{DFA5AAFF-31B8-4203-822C-8ACC4D7A7D74}"
ProjectSection(SolutionItems) = preProject
samples/relay-starter-kit/build/babelRelayPlugin.js = samples/relay-starter-kit/build/babelRelayPlugin.js
samples\relay-starter-kit\build\babelRelayPlugin.js = samples\relay-starter-kit\build\babelRelayPlugin.js
EndProjectSection
EndProject
Project("{6EC3EE1D-3C4E-46DD-8F32-0CC8E7565705}") = "FSharp.Data.GraphQL.Client", "src/FSharp.Data.GraphQL.Client/FSharp.Data.GraphQL.Client.fsproj", "{7C9CC625-FB4E-4215-9F7C-494AA6043821}"
Project("{6EC3EE1D-3C4E-46DD-8F32-0CC8E7565705}") = "FSharp.Data.GraphQL.Client", "src\FSharp.Data.GraphQL.Client\FSharp.Data.GraphQL.Client.fsproj", "{7C9CC625-FB4E-4215-9F7C-494AA6043821}"
EndProject
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "client-provider", "client-provider", "{3D948D55-3CD2-496D-A04C-3B4E7BB69140}"
ProjectSection(SolutionItems) = preProject
samples/client-provider/query.fsx = samples/client-provider/query.fsx
samples\client-provider\query.fsx = samples\client-provider\query.fsx
EndProjectSection
EndProject
Project("{6EC3EE1D-3C4E-46DD-8F32-0CC8E7565705}") = "FSharp.Data.GraphQL.Shared", "src/FSharp.Data.GraphQL.Shared/FSharp.Data.GraphQL.Shared.fsproj", "{6768EA38-1335-4B8E-BC09-CCDED1F9AAF6}"
Project("{6EC3EE1D-3C4E-46DD-8F32-0CC8E7565705}") = "FSharp.Data.GraphQL.Shared", "src\FSharp.Data.GraphQL.Shared\FSharp.Data.GraphQL.Shared.fsproj", "{6768EA38-1335-4B8E-BC09-CCDED1F9AAF6}"
EndProject
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "todo-graphql", "todo-graphql", "{766203BF-7108-418F-BE92-87E7006E5E94}"
ProjectSection(SolutionItems) = preProject
samples/todo-graphql/client.fsx = samples/todo-graphql/client.fsx
samples/todo-graphql/fableconfig.json = samples/todo-graphql/fableconfig.json
samples/todo-graphql/files.fsx = samples/todo-graphql/files.fsx
samples/todo-graphql/index.html = samples/todo-graphql/index.html
samples/todo-graphql/package.json = samples/todo-graphql/package.json
samples/todo-graphql/server.fsx = samples/todo-graphql/server.fsx
samples\todo-graphql\client.fsx = samples\todo-graphql\client.fsx
samples\todo-graphql\fableconfig.json = samples\todo-graphql\fableconfig.json
samples\todo-graphql\files.fsx = samples\todo-graphql\files.fsx
samples\todo-graphql\index.html = samples\todo-graphql\index.html
samples\todo-graphql\package.json = samples\todo-graphql\package.json
samples\todo-graphql\server.fsx = samples\todo-graphql\server.fsx
EndProjectSection
EndProject
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "data", "data", "{D381D216-2464-4F84-8DFF-2CB2F2507DDE}"
ProjectSection(SolutionItems) = preProject
samples/todo-graphql/data/tasks.json = samples/todo-graphql/data/tasks.json
samples\todo-graphql\data\tasks.json = samples\todo-graphql\data\tasks.json
EndProjectSection
EndProject
Project("{6EC3EE1D-3C4E-46DD-8F32-0CC8E7565705}") = "FSharp.Data.GraphQL.Samples.GiraffeServer", "src/FSharp.Data.GraphQL.Samples.GiraffeServer/FSharp.Data.GraphQL.Samples.GiraffeServer.fsproj", "{C7DA852B-D30A-4209-B767-640224C7C31E}"
Project("{6EC3EE1D-3C4E-46DD-8F32-0CC8E7565705}") = "FSharp.Data.GraphQL.Samples.GiraffeServer", "src\FSharp.Data.GraphQL.Samples.GiraffeServer\FSharp.Data.GraphQL.Samples.GiraffeServer.fsproj", "{C7DA852B-D30A-4209-B767-640224C7C31E}"
EndProject
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "src", "src", "{BEFD8748-2467-45F9-A4AD-B450B12D5F78}"
EndProject
Project("{6EC3EE1D-3C4E-46DD-8F32-0CC8E7565705}") = "FSharp.Data.GraphQL.Server.Middlewares", "src/FSharp.Data.GraphQL.Server.Middlewares/FSharp.Data.GraphQL.Server.Middlewares.fsproj", "{8FB23F61-77CB-42C7-8EEC-B22D7C4E4067}"
Project("{6EC3EE1D-3C4E-46DD-8F32-0CC8E7565705}") = "FSharp.Data.GraphQL.Server.Middlewares", "src\FSharp.Data.GraphQL.Server.Middlewares\FSharp.Data.GraphQL.Server.Middlewares.fsproj", "{8FB23F61-77CB-42C7-8EEC-B22D7C4E4067}"
EndProject
Project("{6EC3EE1D-3C4E-46DD-8F32-0CC8E7565705}") = "FSharp.Data.GraphQL.Benchmarks.Sql", "tests\FSharp.Data.GraphQL.Benchmarks.Sql\FSharp.Data.GraphQL.Benchmarks.Sql.fsproj", "{4E9D9411-AE5E-458F-92A7-85368A5A30AB}"
EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
Expand Down Expand Up @@ -196,6 +198,18 @@ Global
{8FB23F61-77CB-42C7-8EEC-B22D7C4E4067}.Release|x64.Build.0 = Release|Any CPU
{8FB23F61-77CB-42C7-8EEC-B22D7C4E4067}.Release|x86.ActiveCfg = Release|Any CPU
{8FB23F61-77CB-42C7-8EEC-B22D7C4E4067}.Release|x86.Build.0 = Release|Any CPU
{4E9D9411-AE5E-458F-92A7-85368A5A30AB}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{4E9D9411-AE5E-458F-92A7-85368A5A30AB}.Debug|Any CPU.Build.0 = Debug|Any CPU
{4E9D9411-AE5E-458F-92A7-85368A5A30AB}.Debug|x64.ActiveCfg = Debug|Any CPU
{4E9D9411-AE5E-458F-92A7-85368A5A30AB}.Debug|x64.Build.0 = Debug|Any CPU
{4E9D9411-AE5E-458F-92A7-85368A5A30AB}.Debug|x86.ActiveCfg = Debug|Any CPU
{4E9D9411-AE5E-458F-92A7-85368A5A30AB}.Debug|x86.Build.0 = Debug|Any CPU
{4E9D9411-AE5E-458F-92A7-85368A5A30AB}.Release|Any CPU.ActiveCfg = Release|Any CPU
{4E9D9411-AE5E-458F-92A7-85368A5A30AB}.Release|Any CPU.Build.0 = Release|Any CPU
{4E9D9411-AE5E-458F-92A7-85368A5A30AB}.Release|x64.ActiveCfg = Release|Any CPU
{4E9D9411-AE5E-458F-92A7-85368A5A30AB}.Release|x64.Build.0 = Release|Any CPU
{4E9D9411-AE5E-458F-92A7-85368A5A30AB}.Release|x86.ActiveCfg = Release|Any CPU
{4E9D9411-AE5E-458F-92A7-85368A5A30AB}.Release|x86.Build.0 = Release|Any CPU
EndGlobalSection
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE
Expand All @@ -217,6 +231,7 @@ Global
{D381D216-2464-4F84-8DFF-2CB2F2507DDE} = {766203BF-7108-418F-BE92-87E7006E5E94}
{C7DA852B-D30A-4209-B767-640224C7C31E} = {BEFD8748-2467-45F9-A4AD-B450B12D5F78}
{8FB23F61-77CB-42C7-8EEC-B22D7C4E4067} = {BEFD8748-2467-45F9-A4AD-B450B12D5F78}
{4E9D9411-AE5E-458F-92A7-85368A5A30AB} = {ED8079DD-2B06-4030-9F0F-DC548F98E1C4}
EndGlobalSection
GlobalSection(ExtensibilityGlobals) = postSolution
SolutionGuid = {C5B9895C-9DF8-4557-8D44-7D0C4C31F86E}
Expand Down
2 changes: 2 additions & 0 deletions build.fsx
Original file line number Diff line number Diff line change
Expand Up @@ -205,10 +205,12 @@ Target "Build" (fun _ ->
)

Target "RunTests" (fun _ ->
Console.WriteLine("Number of processors: {0}", Environment.ProcessorCount)
DotNetCli.Test (fun p -> { p with
#if MONO
Framework = "netcoreapp2.0"
#endif
AdditionalArgs = [ "--no-build"; "-v=normal" ]
Configuration = "Release"
Project = "tests/FSharp.Data.GraphQL.Tests/FSharp.Data.GraphQL.Tests.fsproj" })
)
Expand Down
16 changes: 15 additions & 1 deletion paket.dependencies
Original file line number Diff line number Diff line change
Expand Up @@ -23,6 +23,7 @@ group Build

group Test
source https://nuget.org/api/v2

nuget Newtonsoft.Json
nuget FSharp.Core
nuget BenchmarkDotNet
Expand All @@ -31,4 +32,17 @@ group Test
nuget xunit.runner.visualstudio
nuget System.Reflection.Metadata
nuget FSharp.Data.TypeProviders
nuget Microsoft.NET.Test.Sdk
nuget Microsoft.NET.Test.Sdk
nuget System.Data.SqlClient
nuget FSharp.Data
nuget Dapper

group BenchmarksSql
source https://nuget.org/api/v2
framework: netcoreapp2.1

nuget BenchmarkDotNet
nuget Dapper
nuget FSharp.Data
nuget System.Data.SqlClient
nuget FSharp.Core
Loading