From 6b8e167f40b98f49cd7a7c2c084e009afd76bb71 Mon Sep 17 00:00:00 2001 From: Paul Schaaf Date: Tue, 15 Feb 2022 17:33:55 +0100 Subject: [PATCH 1/7] lang: add check that declared id == program id --- .github/workflows/tests.yaml | 2 + lang/src/error.rs | 5 ++ lang/syn/src/codegen/program/entry.rs | 3 ++ tests/declare-id/Anchor.toml | 9 ++++ tests/declare-id/Cargo.toml | 4 ++ tests/declare-id/package-lock.json | 16 ++++++ tests/declare-id/package.json | 19 +++++++ .../declare-id/programs/declare-id/Cargo.toml | 16 ++++++ .../declare-id/programs/declare-id/Xargo.toml | 2 + .../declare-id/programs/declare-id/src/lib.rs | 17 +++++++ tests/declare-id/tests/declare-id.js | 17 +++++++ tests/declare-id/yarn.lock | 4 ++ tests/package.json | 3 +- tests/yarn.lock | 51 +++++++++++++++++-- ts/src/error.ts | 9 ++++ 15 files changed, 171 insertions(+), 6 deletions(-) create mode 100644 tests/declare-id/Anchor.toml create mode 100644 tests/declare-id/Cargo.toml create mode 100644 tests/declare-id/package-lock.json create mode 100644 tests/declare-id/package.json create mode 100644 tests/declare-id/programs/declare-id/Cargo.toml create mode 100644 tests/declare-id/programs/declare-id/Xargo.toml create mode 100644 tests/declare-id/programs/declare-id/src/lib.rs create mode 100644 tests/declare-id/tests/declare-id.js create mode 100644 tests/declare-id/yarn.lock diff --git a/.github/workflows/tests.yaml b/.github/workflows/tests.yaml index fad42bcb8e..924c01885e 100644 --- a/.github/workflows/tests.yaml +++ b/.github/workflows/tests.yaml @@ -262,6 +262,8 @@ jobs: path: tests/events - cmd: cd tests/cashiers-check && anchor test path: tests/cashiers-check + - cmd: cd tests/declare-id && anchor test + path: tests/declare-id - cmd: cd tests/typescript && anchor test path: tests/typescript - cmd: cd tests/zero-copy && anchor test && cd programs/zero-copy && cargo test-bpf diff --git a/lang/src/error.rs b/lang/src/error.rs index 5e9a276cf0..372a2c4641 100644 --- a/lang/src/error.rs +++ b/lang/src/error.rs @@ -16,6 +16,11 @@ pub const ERROR_CODE_OFFSET: u32 = 6000; /// by the [ERROR_CODE_OFFSET](crate::error::ERROR_CODE_OFFSET). #[error(offset = 0)] pub enum ErrorCode { + // Miscellaneous + /// 50 - The declared program id does not match actual program id + #[msg("The declared program id does not match the actual program id")] + DeclaredProgramIdMismatch = 50, + // Instructions /// 100 - 8 byte instruction identifier not provided #[msg("8 byte instruction identifier not provided")] diff --git a/lang/syn/src/codegen/program/entry.rs b/lang/syn/src/codegen/program/entry.rs index 8f9bcb7bd9..af3dd360c5 100644 --- a/lang/syn/src/codegen/program/entry.rs +++ b/lang/syn/src/codegen/program/entry.rs @@ -56,6 +56,9 @@ pub fn generate(program: &Program) -> proc_macro2::TokenStream { { msg!("anchor-debug is active"); } + if *program_id != ID { + return Err(anchor_lang::error::ErrorCode::DeclaredProgramIdMismatch.into()); + } if data.len() < 8 { return #fallback_maybe } diff --git a/tests/declare-id/Anchor.toml b/tests/declare-id/Anchor.toml new file mode 100644 index 0000000000..0555c68f16 --- /dev/null +++ b/tests/declare-id/Anchor.toml @@ -0,0 +1,9 @@ +[provider] +cluster = "localnet" +wallet = "~/.config/solana/id.json" + +[programs.localnet] +declare_id = "FJcF5c8HncdfAgjPjTH49GAEypkJCG2ZADh2xhduNi5B" + +[scripts] +test = "yarn run mocha -t 1000000 tests/" diff --git a/tests/declare-id/Cargo.toml b/tests/declare-id/Cargo.toml new file mode 100644 index 0000000000..a60de986d3 --- /dev/null +++ b/tests/declare-id/Cargo.toml @@ -0,0 +1,4 @@ +[workspace] +members = [ + "programs/*" +] diff --git a/tests/declare-id/package-lock.json b/tests/declare-id/package-lock.json new file mode 100644 index 0000000000..5e82bc7469 --- /dev/null +++ b/tests/declare-id/package-lock.json @@ -0,0 +1,16 @@ +{ + "name": "declare-id", + "version": "0.21.0", + "lockfileVersion": 2, + "requires": true, + "packages": { + "": { + "name": "declare-id", + "version": "0.21.0", + "license": "(MIT OR Apache-2.0)", + "engines": { + "node": ">=11" + } + } + } +} diff --git a/tests/declare-id/package.json b/tests/declare-id/package.json new file mode 100644 index 0000000000..0be35fc5a2 --- /dev/null +++ b/tests/declare-id/package.json @@ -0,0 +1,19 @@ +{ + "name": "declare-id", + "version": "0.21.0", + "license": "(MIT OR Apache-2.0)", + "homepage": "https://github.com/project-serum/anchor#readme", + "bugs": { + "url": "https://github.com/project-serum/anchor/issues" + }, + "repository": { + "type": "git", + "url": "https://github.com/project-serum/anchor.git" + }, + "engines": { + "node": ">=11" + }, + "scripts": { + "test": "anchor test" + } +} diff --git a/tests/declare-id/programs/declare-id/Cargo.toml b/tests/declare-id/programs/declare-id/Cargo.toml new file mode 100644 index 0000000000..0bbbab6119 --- /dev/null +++ b/tests/declare-id/programs/declare-id/Cargo.toml @@ -0,0 +1,16 @@ +[package] +name = "declare-id" +version = "0.1.0" +description = "Created with Anchor" +edition = "2018" + +[lib] +crate-type = ["cdylib", "lib"] +name = "declare_id" + +[features] +no-entrypoint = [] +cpi = ["no-entrypoint"] + +[dependencies] +anchor-lang = { path = "../../../../lang" } diff --git a/tests/declare-id/programs/declare-id/Xargo.toml b/tests/declare-id/programs/declare-id/Xargo.toml new file mode 100644 index 0000000000..475fb71ed1 --- /dev/null +++ b/tests/declare-id/programs/declare-id/Xargo.toml @@ -0,0 +1,2 @@ +[target.bpfel-unknown-unknown.dependencies.std] +features = [] diff --git a/tests/declare-id/programs/declare-id/src/lib.rs b/tests/declare-id/programs/declare-id/src/lib.rs new file mode 100644 index 0000000000..bad2533071 --- /dev/null +++ b/tests/declare-id/programs/declare-id/src/lib.rs @@ -0,0 +1,17 @@ +use anchor_lang::prelude::*; + +declare_id!("Fg6PaFpoGXkYsidMpWTK6W2BeZ7FEfcYkg476zPFsLnS"); // intentionally different program id than the one defined in Anchor.toml + + +#[program] +mod declare_id { + use super::*; + + pub fn initialize(_ctx: Context) -> ProgramResult { + Ok(()) + } +} + +#[derive(Accounts)] +pub struct Initialize { +} diff --git a/tests/declare-id/tests/declare-id.js b/tests/declare-id/tests/declare-id.js new file mode 100644 index 0000000000..1c20774971 --- /dev/null +++ b/tests/declare-id/tests/declare-id.js @@ -0,0 +1,17 @@ +const anchor = require("@project-serum/anchor"); +const splToken = require("@solana/spl-token"); +const assert = require("assert"); + +describe("declare_id", () => { + anchor.setProvider(anchor.Provider.local()); + const program = anchor.workspace.DeclareId; + + it("throws error!", async () => { + try { + await program.rpc.initialize(); + assert.ok(false); + } catch (err) { + assert.equal(err.code, 50); + } + }); +}); diff --git a/tests/declare-id/yarn.lock b/tests/declare-id/yarn.lock new file mode 100644 index 0000000000..fb57ccd13a --- /dev/null +++ b/tests/declare-id/yarn.lock @@ -0,0 +1,4 @@ +# THIS IS AN AUTOGENERATED FILE. DO NOT EDIT THIS FILE DIRECTLY. +# yarn lockfile v1 + + diff --git a/tests/package.json b/tests/package.json index 40198cd2ed..7159a5d679 100644 --- a/tests/package.json +++ b/tests/package.json @@ -28,7 +28,8 @@ "sysvars", "tictactoe", "typescript", - "zero-copy" + "zero-copy", + "declare-id" ], "dependencies": { "@project-serum/anchor": "^0.21.0", diff --git a/tests/yarn.lock b/tests/yarn.lock index 69ce24aeb5..14e85c6443 100644 --- a/tests/yarn.lock +++ b/tests/yarn.lock @@ -50,18 +50,19 @@ snake-case "^3.0.4" toml "^3.0.0" -"@project-serum/anchor@^0.20.0": - version "0.20.0" - resolved "https://registry.yarnpkg.com/@project-serum/anchor/-/anchor-0.20.0.tgz#547f5c0ff7e66809fa7118b2e3abd8087b5ec519" - integrity sha512-p1KOiqGBIbNsopMrSVoPwgxR1iPffsdjMNCOysahTPL9whX2CLX9HQCdopHjYaGl7+SdHRuXml6Wahk/wUmC8g== +"@project-serum/anchor@^0.21.0": + version "0.21.0" + resolved "https://registry.yarnpkg.com/@project-serum/anchor/-/anchor-0.21.0.tgz#ad5fb33744991ec1900cdb2fd22707c908b12b5f" + integrity sha512-flRuW/F+iC8mitNokx82LOXyND7Dyk6n5UUPJpQv/+NfySFrNFlzuQZaBZJ4CG5g9s8HS/uaaIz1nVkDR8V/QA== dependencies: - "@project-serum/borsh" "^0.2.2" + "@project-serum/borsh" "^0.2.4" "@solana/web3.js" "^1.17.0" base64-js "^1.5.1" bn.js "^5.1.2" bs58 "^4.0.1" buffer-layout "^1.2.2" camelcase "^5.3.1" + cross-fetch "^3.1.5" crypto-hash "^1.3.0" eventemitter3 "^4.0.7" find "^0.3.0" @@ -78,6 +79,14 @@ bn.js "^5.1.2" buffer-layout "^1.2.0" +"@project-serum/borsh@^0.2.4": + version "0.2.5" + resolved "https://registry.yarnpkg.com/@project-serum/borsh/-/borsh-0.2.5.tgz#6059287aa624ecebbfc0edd35e4c28ff987d8663" + integrity sha512-UmeUkUoKdQ7rhx6Leve1SssMR/Ghv8qrEiyywyxSWg7ooV7StdpPBhciiy5eB3T0qU1BXvdRNC8TdrkxK7WC5Q== + dependencies: + bn.js "^5.1.2" + buffer-layout "^1.2.0" + "@project-serum/common@^0.0.1-beta.3": version "0.0.1-beta.3" resolved "https://registry.yarnpkg.com/@project-serum/common/-/common-0.0.1-beta.3.tgz#53586eaff9d9fd7e8938b1e12080c935b8b6ad07" @@ -455,6 +464,13 @@ cross-fetch@^3.1.4: dependencies: node-fetch "2.6.1" +cross-fetch@^3.1.5: + version "3.1.5" + resolved "https://registry.yarnpkg.com/cross-fetch/-/cross-fetch-3.1.5.tgz#e1389f44d9e7ba767907f7af8454787952ab534f" + integrity sha512-lvb1SBsI0Z7GDwmuid+mU3kWVBwTVUbe7S0H52yaaAdQOXq2YktTCZdlAcNKFzE6QtRz0snpw9bNiPeOIkkQvw== + dependencies: + node-fetch "2.6.7" + crypto-hash@^1.3.0: version "1.3.0" resolved "https://registry.yarnpkg.com/crypto-hash/-/crypto-hash-1.3.0.tgz#b402cb08f4529e9f4f09346c3e275942f845e247" @@ -906,6 +922,13 @@ node-fetch@2.6.1: resolved "https://registry.yarnpkg.com/node-fetch/-/node-fetch-2.6.1.tgz#045bd323631f76ed2e2b55573394416b639a0052" integrity sha512-V4aYg89jEoVRxRb2fJdAg8FHvI7cEyYdVAh94HH0UIK8oJxUfkjlDQN9RbMx+bEjP7+ggMiFRprSti032Oipxw== +node-fetch@2.6.7: + version "2.6.7" + resolved "https://registry.yarnpkg.com/node-fetch/-/node-fetch-2.6.7.tgz#24de9fba827e3b4ae44dc8b20256a379160052ad" + integrity sha512-ZjMPFEfVx5j+y2yF35Kzx5sF7kDzxuDj6ziH4FFbOp87zKDZNx8yExJIb05OGF4Nlt9IHFIMBkRl41VdvcNdbQ== + dependencies: + whatwg-url "^5.0.0" + node-gyp-build@^4.2.0, node-gyp-build@^4.3.0: version "4.3.0" resolved "https://registry.yarnpkg.com/node-gyp-build/-/node-gyp-build-4.3.0.tgz#9f256b03e5826150be39c764bf51e993946d71a3" @@ -1127,6 +1150,11 @@ toml@^3.0.0: resolved "https://registry.yarnpkg.com/toml/-/toml-3.0.0.tgz#342160f1af1904ec9d204d03a5d61222d762c5ee" integrity sha512-y/mWCZinnvxjTKYhJ+pYxwD0mRLVvOtdS2Awbgxln6iEnt4rk0yBxeSBHkGJcPucRiG0e55mwWp+g/05rsrd6w== +tr46@~0.0.3: + version "0.0.3" + resolved "https://registry.yarnpkg.com/tr46/-/tr46-0.0.3.tgz#8184fd347dac9cdc185992f3a6622e14b9d9ab6a" + integrity sha1-gYT9NH2snNwYWZLzpmIuFLnZq2o= + traverse-chain@~0.1.0: version "0.1.0" resolved "https://registry.yarnpkg.com/traverse-chain/-/traverse-chain-0.1.0.tgz#61dbc2d53b69ff6091a12a168fd7d433107e40f1" @@ -1202,6 +1230,19 @@ uuid@^8.3.0: resolved "https://registry.yarnpkg.com/uuid/-/uuid-8.3.2.tgz#80d5b5ced271bb9af6c445f21a1a04c606cefbe2" integrity sha512-+NYs2QeMWy+GWFOEm9xnn6HCDp0l7QBD7ml8zLUmJ+93Q5NF0NocErnwkTkXVFNiX3/fpC6afS8Dhb/gz7R7eg== +webidl-conversions@^3.0.0: + version "3.0.1" + resolved "https://registry.yarnpkg.com/webidl-conversions/-/webidl-conversions-3.0.1.tgz#24534275e2a7bc6be7bc86611cc16ae0a5654871" + integrity sha1-JFNCdeKnvGvnvIZhHMFq4KVlSHE= + +whatwg-url@^5.0.0: + version "5.0.0" + resolved "https://registry.yarnpkg.com/whatwg-url/-/whatwg-url-5.0.0.tgz#966454e8765462e37644d3626f6742ce8b70965d" + integrity sha1-lmRU6HZUYuN2RNNib2dCzotwll0= + dependencies: + tr46 "~0.0.3" + webidl-conversions "^3.0.0" + which@2.0.2: version "2.0.2" resolved "https://registry.yarnpkg.com/which/-/which-2.0.2.tgz#7c6a8dd0a636a0327e10b59c9286eee93f3f51b1" diff --git a/ts/src/error.ts b/ts/src/error.ts index 52dffd7798..2d31e9ffa1 100644 --- a/ts/src/error.ts +++ b/ts/src/error.ts @@ -51,6 +51,9 @@ export class ProgramError extends Error { } const LangErrorCode = { + // Miscellaneous + DeclaredProgramIdMismatch: 50, + // Instructions. InstructionMissing: 100, InstructionFallbackNotFound: 101, @@ -107,6 +110,12 @@ const LangErrorCode = { }; const LangErrorMessage = new Map([ + // Miscellaneous + [ + LangErrorCode.DeclaredProgramIdMismatch, + "The declared program id does not match the actual program id", + ], + // Instructions. [ LangErrorCode.InstructionMissing, From b8f709f635bd8b67b890660d655a50e79145a655 Mon Sep 17 00:00:00 2001 From: Paul Schaaf Date: Tue, 15 Feb 2022 17:40:39 +0100 Subject: [PATCH 2/7] docs: changelog --- CHANGELOG.md | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index 023b1a7524..fd99ac2032 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -11,6 +11,10 @@ incremented for features. ## [Unreleased] +### Features + +* lang: add check that declared id == program id ([#1451](https://github.com/project-serum/anchor/pull/1451)) + ### Fixes * ts: Allow nullable types for `Option` mapped types ([#1428](https://github.com/project-serum/anchor/pull/1428)). From cf4b765217931146891fe1cfb7e98adc578ff358 Mon Sep 17 00:00:00 2001 From: Paul Schaaf Date: Tue, 15 Feb 2022 17:44:37 +0100 Subject: [PATCH 3/7] ts: lint --- ts/src/error.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ts/src/error.ts b/ts/src/error.ts index 2d31e9ffa1..54fdb94f07 100644 --- a/ts/src/error.ts +++ b/ts/src/error.ts @@ -110,7 +110,7 @@ const LangErrorCode = { }; const LangErrorMessage = new Map([ - // Miscellaneous + // Miscellaneous [ LangErrorCode.DeclaredProgramIdMismatch, "The declared program id does not match the actual program id", From 9d0e657357859d3a0aa5f7c5e4d9567a8642c714 Mon Sep 17 00:00:00 2001 From: Paul Schaaf Date: Tue, 15 Feb 2022 18:01:07 +0100 Subject: [PATCH 4/7] tests: fix interface test --- tests/interface/programs/counter-auth/src/lib.rs | 4 ++-- tests/interface/tests/interface.js | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/tests/interface/programs/counter-auth/src/lib.rs b/tests/interface/programs/counter-auth/src/lib.rs index a89af60ec1..2281bd3a3e 100644 --- a/tests/interface/programs/counter-auth/src/lib.rs +++ b/tests/interface/programs/counter-auth/src/lib.rs @@ -19,11 +19,11 @@ pub mod counter_auth { fn is_authorized(_ctx: Context, current: u64, new: u64) -> ProgramResult { if current % 2 == 0 { if new % 2 == 0 { - return Err(ProgramError::Custom(50)); // Arbitrary error code. + return Err(ProgramError::Custom(15000)); // Arbitrary error code. } } else { if new % 2 == 1 { - return Err(ProgramError::Custom(60)); // Arbitrary error code. + return Err(ProgramError::Custom(16000)); // Arbitrary error code. } } Ok(()) diff --git a/tests/interface/tests/interface.js b/tests/interface/tests/interface.js index 574cac9e51..c8997810be 100644 --- a/tests/interface/tests/interface.js +++ b/tests/interface/tests/interface.js @@ -25,7 +25,7 @@ describe("interface", () => { }); }, (err) => { - if (err.toString().split("custom program error: 0x32").length !== 2) { + if (err.toString().split("custom program error: 0x3a98").length !== 2) { return false; } return true; @@ -33,7 +33,7 @@ describe("interface", () => { ); }); - it("Shold succeed to go from even to odd", async () => { + it("Should succeed to go from even to odd", async () => { await counter.state.rpc.setCount(new anchor.BN(3), { accounts: { authProgram: counterAuth.programId, From 0772e1c706a09e8380a45fc05d92c67cfdb90c39 Mon Sep 17 00:00:00 2001 From: Armani Ferrante Date: Tue, 15 Feb 2022 12:48:18 -0500 Subject: [PATCH 5/7] Update tests/declare-id/programs/declare-id/src/lib.rs --- tests/declare-id/programs/declare-id/src/lib.rs | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/tests/declare-id/programs/declare-id/src/lib.rs b/tests/declare-id/programs/declare-id/src/lib.rs index bad2533071..5e98ce2e5c 100644 --- a/tests/declare-id/programs/declare-id/src/lib.rs +++ b/tests/declare-id/programs/declare-id/src/lib.rs @@ -1,6 +1,7 @@ use anchor_lang::prelude::*; -declare_id!("Fg6PaFpoGXkYsidMpWTK6W2BeZ7FEfcYkg476zPFsLnS"); // intentionally different program id than the one defined in Anchor.toml +// Intentionally different program id than the one defined in Anchor.toml. +declare_id!("Fg6PaFpoGXkYsidMpWTK6W2BeZ7FEfcYkg476zPFsLnS"); #[program] From 2d0bba8b644255f862e86baf202c404eebaa4b00 Mon Sep 17 00:00:00 2001 From: Paul Schaaf Date: Tue, 15 Feb 2022 21:56:01 +0100 Subject: [PATCH 6/7] lang: move error code to 4100 --- lang/src/error.rs | 10 +++++----- tests/declare-id/tests/declare-id.js | 2 +- ts/src/error.ts | 20 ++++++++++---------- 3 files changed, 16 insertions(+), 16 deletions(-) diff --git a/lang/src/error.rs b/lang/src/error.rs index 372a2c4641..73f444c974 100644 --- a/lang/src/error.rs +++ b/lang/src/error.rs @@ -16,11 +16,6 @@ pub const ERROR_CODE_OFFSET: u32 = 6000; /// by the [ERROR_CODE_OFFSET](crate::error::ERROR_CODE_OFFSET). #[error(offset = 0)] pub enum ErrorCode { - // Miscellaneous - /// 50 - The declared program id does not match actual program id - #[msg("The declared program id does not match the actual program id")] - DeclaredProgramIdMismatch = 50, - // Instructions /// 100 - 8 byte instruction identifier not provided #[msg("8 byte instruction identifier not provided")] @@ -159,6 +154,11 @@ pub enum ErrorCode { #[msg("The given state account does not have the correct address")] StateInvalidAddress = 4000, + // Miscellaneous + /// 4100 - The declared program id does not match actual program id + #[msg("The declared program id does not match the actual program id")] + DeclaredProgramIdMismatch = 4100, + // Deprecated /// 5000 - The API being used is deprecated and should no longer be used #[msg("The API being used is deprecated and should no longer be used")] diff --git a/tests/declare-id/tests/declare-id.js b/tests/declare-id/tests/declare-id.js index 1c20774971..ca1c290a6a 100644 --- a/tests/declare-id/tests/declare-id.js +++ b/tests/declare-id/tests/declare-id.js @@ -11,7 +11,7 @@ describe("declare_id", () => { await program.rpc.initialize(); assert.ok(false); } catch (err) { - assert.equal(err.code, 50); + assert.equal(err.code, 4100); } }); }); diff --git a/ts/src/error.ts b/ts/src/error.ts index 54fdb94f07..e9bdbc5f27 100644 --- a/ts/src/error.ts +++ b/ts/src/error.ts @@ -51,9 +51,6 @@ export class ProgramError extends Error { } const LangErrorCode = { - // Miscellaneous - DeclaredProgramIdMismatch: 50, - // Instructions. InstructionMissing: 100, InstructionFallbackNotFound: 101, @@ -105,17 +102,14 @@ const LangErrorCode = { // State. StateInvalidAddress: 4000, + // Miscellaneous + DeclaredProgramIdMismatch: 4100, + // Used for APIs that shouldn't be used anymore. Deprecated: 5000, }; const LangErrorMessage = new Map([ - // Miscellaneous - [ - LangErrorCode.DeclaredProgramIdMismatch, - "The declared program id does not match the actual program id", - ], - // Instructions. [ LangErrorCode.InstructionMissing, @@ -228,7 +222,13 @@ const LangErrorMessage = new Map([ "The given state account does not have the correct address", ], - // Misc. + // Miscellaneous + [ + LangErrorCode.DeclaredProgramIdMismatch, + "The declared program id does not match the actual program id", + ], + + // Deprecated [ LangErrorCode.Deprecated, "The API being used is deprecated and should no longer be used", From c2146bbe99ad3825feb1bb04529f2ae0edb7df9b Mon Sep 17 00:00:00 2001 From: Paul Schaaf Date: Tue, 15 Feb 2022 21:58:05 +0100 Subject: [PATCH 7/7] remove dead files --- tests/declare-id/package-lock.json | 16 ---------------- tests/declare-id/yarn.lock | 4 ---- 2 files changed, 20 deletions(-) delete mode 100644 tests/declare-id/package-lock.json delete mode 100644 tests/declare-id/yarn.lock diff --git a/tests/declare-id/package-lock.json b/tests/declare-id/package-lock.json deleted file mode 100644 index 5e82bc7469..0000000000 --- a/tests/declare-id/package-lock.json +++ /dev/null @@ -1,16 +0,0 @@ -{ - "name": "declare-id", - "version": "0.21.0", - "lockfileVersion": 2, - "requires": true, - "packages": { - "": { - "name": "declare-id", - "version": "0.21.0", - "license": "(MIT OR Apache-2.0)", - "engines": { - "node": ">=11" - } - } - } -} diff --git a/tests/declare-id/yarn.lock b/tests/declare-id/yarn.lock deleted file mode 100644 index fb57ccd13a..0000000000 --- a/tests/declare-id/yarn.lock +++ /dev/null @@ -1,4 +0,0 @@ -# THIS IS AN AUTOGENERATED FILE. DO NOT EDIT THIS FILE DIRECTLY. -# yarn lockfile v1 - -