feat(clients): add nim-allographer client with BaraDB driver support
CI / test (push) Has been cancelled
CI / verify (push) Has been cancelled
Clients CI / build-server (push) Has been cancelled
Clients CI / test-python (push) Has been cancelled
Clients CI / test-javascript (push) Has been cancelled
Clients CI / test-nim (push) Has been cancelled
Clients CI / test-rust (push) Has been cancelled

- Pure Nim wire protocol client (async + sync, no C FFI)
- Query Builder: fluent API, SQL generator, execution, transactions
- Schema Builder: create/alter/drop tables, column operations
- Connection pool with aging and timeout handling
- ORM integration via compile-time DB_BARADB switch
- Tests: test_open, test_query
- Documentation: README.md, PLAN_BARADB.md
This commit is contained in:
2026-05-21 15:49:11 +03:00
parent 2d310a33a1
commit 6bfc5b3a3c
654 changed files with 109419 additions and 0 deletions
+61
View File
@@ -0,0 +1,61 @@
name: Build and test Nim
# テストはPRだけ
on:
pull_request:
paths-ignore:
- '*.md'
- 'documents/*'
# Allow only one concurrent deployment, skipping runs queued between the run in-progress and latest queued.
# However, do NOT cancel in-progress runs as we want to allow these production deployments to complete.
concurrency:
group: "test"
cancel-in-progress: false
jobs:
# WIP でジョブがスキップされてもCIが失敗した扱いにならないようにするため
skip:
runs-on: ubuntu-latest
steps:
- run: echo "Skip job"
# WIP がコミットメッセージに含まれているとジョブを起動しない
before:
runs-on: ubuntu-latest
if: "! contains(github.event.head_commit.message, 'WIP')"
steps:
- run: echo "no WIP"
test-on-docker-nim:
runs-on: ubuntu-latest
needs: before
strategy:
fail-fast: false
matrix:
nim-version:
- 2.0.16
- 2.2.8
env:
NIM_VERSION: ${{ matrix.nim-version }}
steps:
- uses: actions/checkout@v2
- name: Build docker image
run: docker compose -f compose.test.yaml build app
- name: Start dependencies
run: docker compose -f compose.test.yaml up -d postgres mysql mariadb surreal
- name: Test
run: docker compose -f compose.test.yaml run --rm --no-deps app nimble test
# アプリケーションの方を使うことにした
# https://github.com/marketplace/actions/release-drafter
# create-tag-draft:
# runs-on: ubuntu-latest
# if: github.ref == 'refs/heads/master'
# needs:
# - test-on-docker
# steps:
# - uses: release-drafter/release-drafter@v5.3.1
# env:
# GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}