From eab4998aab289f65e5b9180fdff5508288c0ac47 Mon Sep 17 00:00:00 2001 From: Aleksandr Penskoi Date: Thu, 4 Jun 2026 21:28:25 +0200 Subject: [PATCH 1/2] test: resolve sql-on-fhir R5 bases by adding hl7.fhir.r5.core MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit The org.sql-on-fhir.ig package targets FHIR R5 and references R5 core resources (the ViewDefinition base chain reaches Library), but it does not declare an hl7.fhir.r5.core dependency — so those bases failed to resolve ('Base resource not found Library'), failing all 12 tests. Add r5.core explicitly to the generation config. Snapshots/assertions are unchanged. --- .../api/write-generator/multi-package/sql-on-fhir.test.ts | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/test/api/write-generator/multi-package/sql-on-fhir.test.ts b/test/api/write-generator/multi-package/sql-on-fhir.test.ts index 0c2bd722..2f99142b 100644 --- a/test/api/write-generator/multi-package/sql-on-fhir.test.ts +++ b/test/api/write-generator/multi-package/sql-on-fhir.test.ts @@ -5,10 +5,13 @@ import { mkSilentLogger } from "@typeschema-test/utils"; /** * Tests for SQL-on-FHIR package. - * The SQL-on-FHIR package depends on hl7.fhir.r5.core. + * The IG targets FHIR R5 and references R5 core resources (e.g. the ViewDefinition base + * chain reaches `Library`), but its package does not declare an `hl7.fhir.r5.core` + * dependency — so we add it explicitly, otherwise those R5 bases fail to resolve. */ describe("SQL-on-FHIR", async () => { const packageUrl = "https://build.fhir.org/ig/FHIR/sql-on-fhir-v2/package.tgz"; + const r5Core = { name: "hl7.fhir.r5.core", version: "5.0.0" }; const treeShakeConfig = { "org.sql-on-fhir.ig": { @@ -22,6 +25,7 @@ describe("SQL-on-FHIR", async () => { describe("TypeScript Generation", async () => { const result = await new APIBuilder({ logger: mkSilentLogger() }) + .fromPackage(r5Core.name, r5Core.version) .fromPackageRef(packageUrl) .typeSchema({ treeShake: treeShakeConfig }) .typescript({ inMemoryOnly: true }) @@ -57,6 +61,7 @@ describe("SQL-on-FHIR", async () => { describe("Python Generation", async () => { const result = await new APIBuilder({ logger: mkSilentLogger() }) + .fromPackage(r5Core.name, r5Core.version) .fromPackageRef(packageUrl) .typeSchema({ treeShake: treeShakeConfig, promoteLogical: promoteLogicalConfig }) .python({ inMemoryOnly: true }) @@ -87,6 +92,7 @@ describe("SQL-on-FHIR", async () => { describe("C# Generation", async () => { const result = await new APIBuilder({ logger: mkSilentLogger() }) + .fromPackage(r5Core.name, r5Core.version) .fromPackageRef(packageUrl) .typeSchema({ treeShake: treeShakeConfig, promoteLogical: promoteLogicalConfig }) .csharp({ inMemoryOnly: true }) From 1f081e87f305680690ff2c72a954766257aa7e09 Mon Sep 17 00:00:00 2001 From: Aleksandr Penskoi Date: Thu, 4 Jun 2026 21:28:25 +0200 Subject: [PATCH 2/2] example: add hl7.fhir.r5.core to the sql-on-fhir generator Same missing-dependency fix as the test; the generated output is unchanged. --- examples/typescript-sql-on-fhir/generate.ts | 3 +++ 1 file changed, 3 insertions(+) diff --git a/examples/typescript-sql-on-fhir/generate.ts b/examples/typescript-sql-on-fhir/generate.ts index 32b5a4bb..269e1504 100644 --- a/examples/typescript-sql-on-fhir/generate.ts +++ b/examples/typescript-sql-on-fhir/generate.ts @@ -3,6 +3,9 @@ import { APIBuilder, prettyReport } from "../../src/api/builder"; const builder = new APIBuilder() .throwException() .typescript({ withDebugComment: false, generateProfile: false }) + // The IG references R5 core resources (e.g. ViewDefinition's base chain reaches Library) + // but doesn't declare an hl7.fhir.r5.core dependency, so add it explicitly to resolve them. + .fromPackage("hl7.fhir.r5.core", "5.0.0") .fromPackageRef("https://build.fhir.org/ig/FHIR/sql-on-fhir-v2/package.tgz") .outputTo("./examples/typescript-sql-on-fhir/fhir-types") .introspection({ typeTree: "tree.yaml" })