Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

🎉 create project #4

Merged
merged 30 commits into from
Sep 22, 2023
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
30 commits
Select commit Hold shift + click to select a range
15fe2f9
🎉 create project
Odonno Aug 2, 2023
a7600b1
🎉 create console example app
Odonno Aug 3, 2023
4011fd2
💬 rename address variable to endpoint
Odonno Aug 3, 2023
71c0366
♻️ rename signin/signup methods
Odonno Aug 3, 2023
bfe5dd1
♻️ make data optional for Create function
Odonno Aug 3, 2023
1e58874
🚚 move ConnectionString to dev setting file
Odonno Aug 3, 2023
949236a
✨ implement ws engine
Odonno Aug 5, 2023
a3f0e7b
♻️ rename Patch into Merge
Odonno Aug 5, 2023
2c00c4c
⚡️ use RecyclableMemoryStreamManager
Odonno Aug 6, 2023
3cd0c7d
⚡️ optimize for single instance of HttpClient without factory
Odonno Aug 6, 2023
df162a3
🐛 add rpc path automatically in ws client constructors
Odonno Aug 7, 2023
2b47294
♻️ use UriBuilder on client constructors
Odonno Aug 7, 2023
7e04a56
♻️ make use of UriScheme
Odonno Aug 7, 2023
b1990bb
✨ add scenario benchmark
Odonno Aug 13, 2023
0d0894c
✨ add DateOnly/TimeOnly converters
Odonno Aug 14, 2023
8067a6a
✨ add Vectors converters
Odonno Aug 14, 2023
673c936
✨ add spatial types converters
Odonno Aug 15, 2023
6dd5bba
✨ handle token from ConnectionString
Odonno Aug 15, 2023
dd10ff6
✨ improve Thing logic
Odonno Aug 17, 2023
cbd0893
➕ add missing package references
Odonno Aug 17, 2023
a0e824a
🐛 use the ToWsString function in Ws engine
Odonno Aug 17, 2023
637a527
✨ add Duration custom type
Odonno Aug 18, 2023
c262379
🚚 fix namespace
Odonno Aug 26, 2023
cd6af4c
📝 update readme file
Odonno Aug 27, 2023
fdef193
📝 add section about dotnet release versions
Odonno Sep 19, 2023
00b2165
✨ add Health method
Odonno Sep 19, 2023
a66a844
⬆️ update nuget packages
Odonno Sep 20, 2023
a742ae8
✨ add cold start benchmark
Odonno Sep 20, 2023
dc55095
📝 add missing xml docs for thrown exceptions
Odonno Sep 20, 2023
c1d6286
✅ update surrealdb dependency to 1.0.0
Odonno Sep 21, 2023
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
43 changes: 43 additions & 0 deletions .github/workflows/benchmark-pr.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,43 @@
name: Benchmark PR Workflow

on:
pull_request:
branches:
- main

jobs:
action:
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v3

- name: Download SurrealDB
run: curl --proto '=https' --tlsv1.2 -sSf https://install.surrealdb.com | sh

- name: Run SurrealDB root
run: surreal start --user root --pass root memory --auth --allow-guests &

- name: Setup dotnet 6.0
uses: actions/setup-dotnet@v3
with:
dotnet-version: "6.0.x"

- name: Execute benchmarks
run: dotnet run -c Release --project SurrealDb.Benchmarks --filter '*'

- name: Download previous benchmark data
uses: actions/cache@v1
with:
path: ./cache
key: ${{ runner.os }}-benchmark

- name: Store benchmark result
uses: rhysd/github-action-benchmark@v1
with:
tool: "benchmarkdotnet"
output-file-path: BenchmarkDotNet.Artifacts/results/Combined.Benchmarks.json
external-data-json-path: ./cache/benchmark-data.json
github-token: ${{ secrets.GITHUB_TOKEN }}
comment-on-alert: true
summary-always: true
40 changes: 40 additions & 0 deletions .github/workflows/benchmark.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,40 @@
name: Benchmark Workflow

on:
push:
branches:
- main

jobs:
action:
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v3

- name: Download SurrealDB
run: curl --proto '=https' --tlsv1.2 -sSf https://install.surrealdb.com | sh

- name: Run SurrealDB root
run: surreal start --user root --pass root memory --auth --allow-guests &

- name: Setup dotnet 6.0
uses: actions/setup-dotnet@v3
with:
dotnet-version: "6.0.x"

- name: Execute benchmarks
run: dotnet run -c Release --project SurrealDb.Benchmarks --filter '*'

- name: Download previous benchmark data
uses: actions/cache@v1
with:
path: ./cache
key: ${{ runner.os }}-benchmark

- name: Store benchmark result
uses: rhysd/github-action-benchmark@v1
with:
tool: "benchmarkdotnet"
output-file-path: BenchmarkDotNet.Artifacts/results/Combined.Benchmarks.json
external-data-json-path: ./cache/benchmark-data.json
35 changes: 35 additions & 0 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,35 @@
name: Main Workflow

on:
push:
branches:
- main
pull_request:
branches:
- main
jobs:
build:
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v3

- name: Download SurrealDB
run: curl --proto '=https' --tlsv1.2 -sSf https://install.surrealdb.com | sh

- name: Run SurrealDB root
run: surreal start --user root --pass root memory --auth --allow-guests &

- name: Setup dotnet 6.0
uses: actions/setup-dotnet@v3
with:
dotnet-version: "6.0.x"

- name: Install dependencies
run: dotnet restore

- name: Build
run: dotnet build --no-restore --warnaserror

- name: Test
run: dotnet test --no-build
79 changes: 79 additions & 0 deletions .github/workflows/release.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,79 @@
name: Release Workflow

on:
release:
types: [created]

env:
DOTNET_SKIP_FIRST_TIME_EXPERIENCE: 1
DOTNET_NOLOGO: true
NuGetDirectory: ${{ github.workspace }}/nuget

defaults:
run:
shell: pwsh

jobs:
create-package:
runs-on: ubuntu-latest

steps:
- name: Checkout repository
uses: actions/checkout@v3

- name: Setup dotnet 6.0
uses: actions/setup-dotnet@v3
with:
dotnet-version: "6.0.x"

- name: Create Package
run: dotnet pack --configuration Release --output ${{ env.NuGetDirectory }}

- uses: actions/upload-artifact@v3
with:
name: nuget
if-no-files-found: error
retention-days: 7
path: ${{ env.NuGetDirectory }}/*.nupkg

validate-package:
needs: [create-package]
runs-on: ubuntu-latest

steps:
- name: Setup dotnet 6.0
uses: actions/setup-dotnet@v3
with:
dotnet-version: "6.0.x"

- uses: actions/download-artifact@v3
with:
name: nuget
path: ${{ env.NuGetDirectory }}

- name: Install NuGet Package Validation Tool
run: dotnet tool update Meziantou.Framework.NuGetPackageValidation.Tool --global

- name: Validate package
run: meziantou.validate-nuget-package (Get-ChildItem "${{ env.NuGetDirectory }}/*.nupkg")

publish-package:
needs: [validate-package]
runs-on: ubuntu-latest

steps:
- name: Setup dotnet 6.0
uses: actions/setup-dotnet@v3
with:
dotnet-version: "6.0.x"

- uses: actions/download-artifact@v3
with:
name: nuget
path: ${{ env.NuGetDirectory }}

- name: Publish NuGet package
run: |
foreach($file in (Get-ChildItem "${{ env.NuGetDirectory }}" -Recurse -Include *.nupkg)) {
dotnet nuget push $file --api-key "${{ secrets.NUGET_APIKEY }}" --source https://api.nuget.org/v3/index.json --skip-duplicate
}
Loading