From 4fc20d720221f5809f93a2e92adc7d156af5f2c1 Mon Sep 17 00:00:00 2001 From: DeeJayTC Date: Tue, 19 May 2020 13:48:32 +0200 Subject: [PATCH] 1.0.19 Temporarily disabled caching as accessing globalData, stored data for users seems to be broken in VSCode 1.45.1 --- CHANGELOG.md | 3 +++ package.json | 2 +- src/teamworkProjectsApi.ts | 38 +++++++++++++++++++------------------- 3 files changed, 23 insertions(+), 20 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index b4392bb..1632cac 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,4 +1,7 @@ # Change Log +## 1.0.19 + - To get the extension working again in Visual Studio Code 1.45.1 we temporarily disabled all caching in the extension. + You might see slower loading times, we keep to have this updated as soon as possible. ## 1.0.18 - Renamed to Teamwork, replaced icons ## 1.0.17 diff --git a/package.json b/package.json index f614b72..97f5fcd 100644 --- a/package.json +++ b/package.json @@ -25,7 +25,7 @@ "url": "https://twitter.com/Teamwork" } ], - "version": "1.0.18", + "version": "1.0.19", "engines": { "vscode": "^1.33.0" }, diff --git a/src/teamworkProjectsApi.ts b/src/teamworkProjectsApi.ts index 3fc4456..08e940c 100644 --- a/src/teamworkProjectsApi.ts +++ b/src/teamworkProjectsApi.ts @@ -85,13 +85,13 @@ export class TeamworkProjectsApi{ let result; // Load from cache if duration less than 30 minutes - let cachedProjects : Project[] = context.globalState.get("twp.data.project",null); - let lastUpdated : Date = context.globalState.get("twp.data.projects.lastUpdated", new Date() ); - if(cachedProjects && cachedProjects.length > 0 && lastUpdated && !force){ - if(Utilities.DateCompare(lastUpdated,30)){ - result = cachedProjects; - } - } + // let cachedProjects = JSON.parse(await context.globalState.get("twp.data.projectList",null)); + // let lastUpdated = await context.globalState.get("twp.data.projectList.lastUpdated", new Date() ); + // if(cachedProjects && cachedProjects.length > 0 && lastUpdated && !force){ + // if(Utilities.DateCompare(lastUpdated,30)){ + // result = cachedProjects; + // } + // } if(!result){ const url = this.root + '/tasks/projects.json?type=canAddItem&pageSize=200'; @@ -111,9 +111,9 @@ export class TeamworkProjectsApi{ }); } - if(!isNullOrUndefined(result.data)){ await context.globalState.update("twp.data.project",result.data.projects);} - if(!isNullOrUndefined(result.data)){ await context.globalState.update("twp.data.projects.lastUpdated", new Date() );} - return result.data.projects; + // if(!isNullOrUndefined(result.data)){ await context.globalState.update("twp.data.projectList", JSON.stringify(result.data.projects));} + // if(!isNullOrUndefined(result.data)){ await context.globalState.update("twp.data.projectList.lastUpdated", new Date() );} + return result.data.projects; } public async GetPeopleInProject(context: vscode.ExtensionContext,force: boolean = false,id: string) : Promise{ @@ -144,13 +144,13 @@ export class TeamworkProjectsApi{ let response: TaskListResponse; // Load from cache if duration less than 30 minutes - let cachedNodes : TaskListResponse = await context.globalState.get("twp.data." + id + ".tasklist",null); - let lastUpdated : Date = await context.globalState.get("twp.data.tasklists." + id + ".lastUpdated",new Date() ); - if(cachedNodes !== null && cachedNodes["data"]["tasklists"].length > 0 && lastUpdated && !force){ - if(Utilities.DateCompare(lastUpdated,30)){ - return cachedNodes["data"]["tasklists"]; - } - } + // let cachedNodes : TaskListResponse = await context.globalState.get("twp.data." + id + ".tasklist",null); + // let lastUpdated : Date = await context.globalState.get("twp.data.tasklists." + id + ".lastUpdated",new Date() ); + // if(cachedNodes !== null && cachedNodes["data"]["tasklists"].length > 0 && lastUpdated && !force){ + // if(Utilities.DateCompare(lastUpdated,30)){ + // return cachedNodes["data"]["tasklists"]; + // } + // } const url = this.root + '/projects/api/v1/projects/' + id + '/tasklists.json?page=1&pageSize=100'; @@ -164,8 +164,8 @@ export class TeamworkProjectsApi{ }); - await context.globalState.update("twp.data." + id + ".tasklist",response); - await context.globalState.update("twp.data.tasklists." + id + ".lastUpdated",Date.now()); + // context.globalState.update("twp.data." + id + ".tasklist",response); + // context.globalState.update("twp.data.tasklists." + id + ".lastUpdated",Date.now()); return response["data"]["tasklists"]; }