diff --git a/src/program/version.js b/src/program/version.js index 34e5dc1..10ed3d0 100644 --- a/src/program/version.js +++ b/src/program/version.js @@ -1 +1 @@ -export const VERSION = "0.17.20" +export const VERSION = "0.17.21" diff --git a/src/statements/DataDefinition.js b/src/statements/DataDefinition.js index 77bc660..dc68fbd 100644 --- a/src/statements/DataDefinition.js +++ b/src/statements/DataDefinition.js @@ -527,7 +527,7 @@ export class DataDefinition { ${ir} }, () -> { - __core__trace("Warning: invalid ${mStructName} data", + __core__trace("Warning: invalid data in ${mStructName}.${f.encodedFieldName}", () -> { false } diff --git a/src/typecheck/hashes.js b/src/typecheck/hashes.js index 21f59cf..22f49af 100644 --- a/src/typecheck/hashes.js +++ b/src/typecheck/hashes.js @@ -115,6 +115,10 @@ export const PubKeyType = new GenericType({ genTypeMembers: (self) => ({ ...genCommonTypeMembers(self), new: new FuncType([ByteArrayType], self) + }), + genTypeSchema: (self) => ({ + kind: /** @type {const} */ ("internal"), + name: "PubKey" }) }) diff --git a/test/struct.test.js b/test/struct.test.js index 904cce4..314920d 100644 --- a/test/struct.test.js +++ b/test/struct.test.js @@ -171,7 +171,7 @@ describe("mStruct Pair[Int, Int]", () => { runner([map([[$a, int(0)]])], False) }) - it("issues warnings from unoptimized version (missing field and invalid ‹struct-name›)", () => { + it("issues warnings from unoptimized version (missing field by-name, and invalid ‹struct-name›)", () => { const [result] = runner([map([[$a, int(0)]])], False) const logs = result.logs.map((l) => l.message) if (!logs.some((x) => x.match(/field not found: b/))) { @@ -181,7 +181,7 @@ describe("mStruct Pair[Int, Int]", () => { logs.map((l) => `unoptimized> ${l}`).join("\n") ) } - if (!logs.some((x) => x.match(/invalid Pair data/))) { + if (!logs.some((x) => x.match(/invalid data in Pair.b/))) { throw new Error( "Expected warning about invalid Pair, got logs:\n" + logs.map((l) => `unoptimized> ${l}`).join("\n")