From 1908c48d3ce18de0fc06b5658f956129412eae3f Mon Sep 17 00:00:00 2001 From: Matt Bierner Date: Wed, 6 Aug 2025 14:52:15 -0700 Subject: [PATCH] Update decorator signature --- extensions/git/src/api/extension.ts | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/extensions/git/src/api/extension.ts b/extensions/git/src/api/extension.ts index bfedc0cc909..d381ebc7f64 100644 --- a/extensions/git/src/api/extension.ts +++ b/extensions/git/src/api/extension.ts @@ -8,15 +8,15 @@ import { GitExtension, Repository, API } from './git'; import { ApiRepository, ApiImpl } from './api1'; import { Event, EventEmitter } from 'vscode'; -export function deprecated(_target: any, key: string, descriptor: any): void { - if (typeof descriptor.value !== 'function') { +function deprecated(original: any, context: ClassMemberDecoratorContext) { + if (context.kind !== 'method') { throw new Error('not supported'); } - const fn = descriptor.value; - descriptor.value = function () { + const key = context.name.toString(); + return function (this: any, ...args: any[]): any { console.warn(`Git extension API method '${key}' is deprecated.`); - return fn.apply(this, arguments); + return original.apply(this, args); }; }