Skip to content
Merged
Show file tree
Hide file tree
Changes from all 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
18 changes: 5 additions & 13 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -16,19 +16,17 @@ jobs:

- name: Setup Bun
uses: oven-sh/setup-bun@v2
with:
bun-version: latest

- name: Install dependencies
run: bun install --frozen-lockfile

- name: Run linting
run: bun run lint
- name: Lint
run: make lint

- name: Run tests
run: bun run test:ci
- name: Test
run: make test

- name: Build project
- name: Build
run: bun run build

security:
Expand All @@ -39,8 +37,6 @@ jobs:

- name: Setup Bun
uses: oven-sh/setup-bun@v2
with:
bun-version: latest

- name: Install dependencies
run: bun install --frozen-lockfile
Expand All @@ -56,8 +52,6 @@ jobs:

- name: Setup Bun
uses: oven-sh/setup-bun@v2
with:
bun-version: latest

- name: Build and pack
run: |
Expand Down Expand Up @@ -89,8 +83,6 @@ jobs:
- name: Setup Bun
if: matrix.package-manager == 'bun'
uses: oven-sh/setup-bun@v2
with:
bun-version: latest

- name: Setup Node.js
if: matrix.package-manager != 'bun'
Expand Down
22 changes: 6 additions & 16 deletions .github/workflows/release.yml
Original file line number Diff line number Diff line change
Expand Up @@ -25,17 +25,12 @@ jobs:

- name: Setup Bun
uses: oven-sh/setup-bun@v2
with:
bun-version: latest

- name: Install dependencies
run: bun install

- name: Run tests
run: bun test
run: bun install --frozen-lockfile

- name: Run typecheck
run: bun run typecheck
- name: Test
run: make test

- name: Build
run: bun run build
Expand Down Expand Up @@ -81,17 +76,12 @@ jobs:

- name: Setup Bun
uses: oven-sh/setup-bun@v2
with:
bun-version: latest

- name: Install dependencies
run: bun install

- name: Run tests
run: bun test
run: bun install --frozen-lockfile

- name: Run typecheck
run: bun run typecheck
- name: Test
run: make test

- name: Build
run: bun run build
Expand Down
90 changes: 36 additions & 54 deletions .github/workflows/sdk-tests.yml
Original file line number Diff line number Diff line change
Expand Up @@ -10,23 +10,16 @@ jobs:
test-csharp-sdk:
runs-on: ubuntu-latest

strategy:
matrix:
bun-version: [latest]
dotnet-version: [8.0.x]

steps:
- uses: actions/checkout@v5

- name: Setup Bun
uses: oven-sh/setup-bun@v2
with:
bun-version: ${{ matrix.bun-version }}

- name: Setup .NET ${{ matrix.dotnet-version }}
- name: Setup .NET
uses: actions/setup-dotnet@v5
with:
dotnet-version: ${{ matrix.dotnet-version }}
dotnet-version: 8.0.x

- name: Install dependencies
run: bun install --frozen-lockfile
Expand All @@ -52,20 +45,11 @@ jobs:
test-typescript-sdk-r4:
runs-on: ubuntu-latest

strategy:
matrix:
bun-version: [latest]

steps:
- uses: actions/checkout@v5

- name: Checkout code
uses: actions/checkout@v5

- name: Setup Bun
uses: oven-sh/setup-bun@v2
with:
bun-version: ${{ matrix.bun-version }}

- name: Install dependencies
run: bun install --frozen-lockfile
Expand All @@ -89,17 +73,11 @@ jobs:
test-typescript-us-core-example:
runs-on: ubuntu-latest

strategy:
matrix:
bun-version: [latest]

steps:
- uses: actions/checkout@v5

- name: Setup Bun
uses: oven-sh/setup-bun@v2
with:
bun-version: ${{ matrix.bun-version }}

- name: Install dependencies
run: bun install --frozen-lockfile
Expand All @@ -124,46 +102,30 @@ jobs:
test-typescript-ccda-example:
runs-on: ubuntu-latest

strategy:
matrix:
bun-version: [latest]

steps:
- uses: actions/checkout@v5

- name: Checkout code
uses: actions/checkout@v5

- name: Setup Bun
uses: oven-sh/setup-bun@v2
with:
bun-version: ${{ matrix.bun-version }}

- name: Install dependencies
run: bun install --frozen-lockfile

- name: Run tests
run: make test-typescript-ccda-example

test-python-sdk-test:
test-python-sdk:
runs-on: ubuntu-latest

strategy:
matrix:
bun-version: [ latest ]
python-version: [ "3.13" ]

steps:
- uses: actions/checkout@v5

- name: Setup Bun
uses: oven-sh/setup-bun@v2
with:
bun-version: ${{ matrix.bun-version }}

- uses: actions/setup-python@v6
with:
python-version: ${{ matrix.python-version }}
python-version: "3.13"

- name: Install dependencies
run: bun install --frozen-lockfile
Expand All @@ -186,25 +148,18 @@ jobs:
exit 1
fi

test-python-fhirpy-sdk-test:
test-python-fhirpy-sdk:
runs-on: ubuntu-latest

strategy:
matrix:
bun-version: [ latest ]
python-version: [ "3.13" ]

steps:
- uses: actions/checkout@v5

- name: Setup Bun
uses: oven-sh/setup-bun@v2
with:
bun-version: ${{ matrix.bun-version }}

- uses: actions/setup-python@v6
with:
python-version: ${{ matrix.python-version }}
python-version: "3.13"

- name: Install dependencies
run: bun install --frozen-lockfile
Expand All @@ -227,21 +182,48 @@ jobs:
exit 1
fi

test-local-package-folder-example:
runs-on: ubuntu-latest

steps:
- uses: actions/checkout@v5

- name: Setup Bun
uses: oven-sh/setup-bun@v2

- name: Install dependencies
run: bun install --frozen-lockfile

- name: Run tests
run: make test-local-package-folder-example

test-on-the-fly-example:
runs-on: ubuntu-latest

steps:
- uses: actions/checkout@v5

- name: Setup Bun
uses: oven-sh/setup-bun@v2

- name: Install dependencies
run: bun install --frozen-lockfile

- name: Run tests
run: make test-on-the-fly-example

test-mustache-java-r4-example:
runs-on: ubuntu-latest

strategy:
matrix:
bun-version: [latest]
java-version: [21, 25]

steps:
- uses: actions/checkout@v5

- name: Setup Bun
uses: oven-sh/setup-bun@v2
with:
bun-version: ${{ matrix.bun-version }}

- name: Setup Java
uses: actions/setup-java@v5
Expand Down
1 change: 0 additions & 1 deletion .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -42,4 +42,3 @@ test-output
/generated
.typeschema-cache
*.cpuprofile
examples/tmp/
12 changes: 2 additions & 10 deletions .zed/tasks.json
Original file line number Diff line number Diff line change
@@ -1,15 +1,7 @@
[
{
"label": "test-typeschema",
"command": "make test-typeschema"
},
{
"label": "test-register",
"command": "make test-register"
},
{
"label": "test-codegen",
"command": "make test-codegen"
"label": "test",
"command": "make test"
},
{
"label": "test-ts-r4-example",
Expand Down
8 changes: 4 additions & 4 deletions CLAUDE.md
Original file line number Diff line number Diff line change
Expand Up @@ -15,11 +15,11 @@ bun run lint # Lint and format code with Biome

# Building
bun run build # Build the project (creates dist/)
bun run cli # Run CLI in development mode
bun run src/cli/index.ts # Run CLI in development mode

# CLI Usage
bun run cli typeschema generate hl7.fhir.r4.core@4.0.1 -o schemas.ndjson
bun run cli generate typescript -i schemas.ndjson -o ./types
bun run src/cli/index.ts typeschema generate hl7.fhir.r4.core@4.0.1 -o schemas.ndjson
bun run src/cli/index.ts generate typescript -i schemas.ndjson -o ./types
```

## Verification
Expand Down Expand Up @@ -361,7 +361,7 @@ Detection uses `mkIsFamilyType(tsIndex)` which checks `schema.typeFamily.resourc
2. Enable caching in APIBuilder
3. Process large packages in batches
4. Use `build()` instead of `generate()` for testing
5. Run `bun run quality` before committing (combines typecheck, lint, test:unit)
5. Run `make test` before committing (typecheck + tests)

## Useful External Resources

Expand Down
Loading
Loading