From 2610f9e1beac36fe5065b92af97862f626e20a59 Mon Sep 17 00:00:00 2001 From: Christoph Schlosser <2466365+cschlosser@users.noreply.github.com> Date: Sun, 4 Oct 2020 12:00:23 +0200 Subject: Release 0.8.1 (#178) * Revert "Add env-var to replace env var in template strings (#175)" This reverts commit 28bd14d438affce02c87b7e7b108c3016feba6a4. * Release 0.8.1 Revert env-var change --- CHANGELOG.md | 6 ++++++ package-lock.json | 15 +-------------- package.json | 3 +-- src/Lang/Cpp/CppDocGen.ts | 36 ++++++------------------------------ src/extension.ts | 4 ++-- src/test/CppTests/Config.test.ts | 20 -------------------- 6 files changed, 16 insertions(+), 68 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index d6a62fe..4a3a5f1 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## [0.8.1] + +### Revert + +- Replace environment variables in templated strings. If no environment variable can be found the name of the variable will be inserted (#110) + ## [0.8.0] ### Feature diff --git a/package-lock.json b/package-lock.json index 7903047..2b50a6f 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,6 +1,6 @@ { "name": "doxdocgen", - "version": "0.8.0", + "version": "0.8.1", "lockfileVersion": 1, "requires": true, "dependencies": { @@ -406,14 +406,6 @@ "integrity": "sha512-CwBLREIQ7LvYFB0WyRvwhq5N5qPhc6PMjD6bYggFlI5YyDgl+0vxq5VHbMOFqLg7hfWzmu8T5Z1QofhmTIhItA==", "dev": true }, - "env-var": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/env-var/-/env-var-4.1.0.tgz", - "integrity": "sha512-nPHfStlNHmQsxCmLe2Bjx+MARZ2/03/JkNpnDNSCW2uE/F1a59zePBf9Opj7Gp2d6EXowvYTl9nlL1V7ycVaIQ==", - "requires": { - "is-url": "~1.2.2" - } - }, "es-abstract": { "version": "1.15.0", "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.15.0.tgz", @@ -820,11 +812,6 @@ "integrity": "sha1-5HnICFjfDBsR3dppQPlgEfzaSpo=", "dev": true }, - "is-url": { - "version": "1.2.4", - "resolved": "https://registry.npmjs.org/is-url/-/is-url-1.2.4.tgz", - "integrity": "sha512-ITvGim8FhRiYe4IQ5uHSkj7pVaPDrCTkNd3yq3cV7iZAcJdHTUMPMEHcqSOy9xZ9qFenQCvi+2wjH9a1nXqHww==" - }, "is-wsl": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/is-wsl/-/is-wsl-1.1.0.tgz", diff --git a/package.json b/package.json index 3cd3ecb..ed977de 100644 --- a/package.json +++ b/package.json @@ -2,7 +2,7 @@ "name": "doxdocgen", "displayName": "Doxygen Documentation Generator", "description": "Let me generate Doxygen documentation from your source code for you.", - "version": "0.8.0", + "version": "0.8.1", "publisher": "cschlosser", "engines": { "vscode": "^1.37.0" @@ -253,7 +253,6 @@ "test": "npm run compile && node ./node_modules/vscode/bin/test" }, "dependencies": { - "env-var": "^4.1.0", "moment": "^2.20.1", "opn": "^5.2.0" }, diff --git a/src/Lang/Cpp/CppDocGen.ts b/src/Lang/Cpp/CppDocGen.ts index 2795ec6..1e73804 100644 --- a/src/Lang/Cpp/CppDocGen.ts +++ b/src/Lang/Cpp/CppDocGen.ts @@ -1,10 +1,10 @@ -import * as env from "env-var"; import * as moment from "moment"; -import { Position, Range, Selection, TextEditor } from "vscode"; +import { Position, Range, Selection, TextEditor, TextLine, WorkspaceEdit } from "vscode"; import { IDocGen } from "../../Common/IDocGen"; import { Config } from "../../Config"; import { CppArgument } from "./CppArgument"; import * as CppParser from "./CppParser"; +import { CppParseTree } from "./CppParseTree"; import { CppToken, CppTokenType } from "./CppToken"; export enum SpecialCase { @@ -144,31 +144,9 @@ export class CppDocGen implements IDocGen { return indentedString; } - protected getEnvVars(replace: string): string { - let replacement = replace; - const regex = /\$\{env\:([\w|\d|_]+)\}/m; - let match: RegExpExecArray; - - // tslint:disable-next-line:no-conditional-assignment - while ((match = regex.exec(replacement)) !== null) { - if (match.index === regex.lastIndex) { - regex.lastIndex++; - } - - const m = match[1]; - - const envVar: string = env.get(m, m).asString(); - - replacement = replacement.replace("${env:" + m + "}", envVar); - } - - return replacement; - } - protected getTemplatedString(replace: string, template: string, param: string): string { const replacedTemplate = template.replace(replace, param); - const replacedWithEnv = this.getEnvVars(replacedTemplate); - return this.getIndentedTemplate(replacedWithEnv); + return this.getIndentedTemplate(replacedTemplate); } protected getMultiTemplatedString(replace: string[], template: string, param: string[]): string { @@ -178,7 +156,7 @@ export class CppDocGen implements IDocGen { template = template.replace(replace[i], param[i]); } } - return this.getEnvVars(template); + return template; } protected getSmartText(): string { @@ -475,15 +453,13 @@ export class CppDocGen implements IDocGen { lines, this.cfg.typeTemplateReplace, this.cfg.Generic.returnTemplate, - returnParams, + returnParams ); } break; } case "custom": { - this.cfg.Generic.customTags.forEach((elem) => { - lines.push(this.getEnvVars(elem)); - }); + lines.push(...this.cfg.Generic.customTags); break; } default: { diff --git a/src/extension.ts b/src/extension.ts index 9c80f73..05ba40a 100644 --- a/src/extension.ts +++ b/src/extension.ts @@ -5,8 +5,8 @@ import * as vscode from "vscode"; import CodeParserController from "./CodeParserController"; enum Version { - CURRENT = "0.8.0", - PREVIOUS = "0.7.2", + CURRENT = "0.8.1", + PREVIOUS = "0.8.0", KEY = "doxdocgen_version", } diff --git a/src/test/CppTests/Config.test.ts b/src/test/CppTests/Config.test.ts index d479d2d..3915f11 100644 --- a/src/test/CppTests/Config.test.ts +++ b/src/test/CppTests/Config.test.ts @@ -227,24 +227,4 @@ suite("C++ - Configuration Tests", () => { assert.equal("/**\n * @note\n */", result); }); - test("Env variable", () => { - testSetup.cfg = new Config(); - testSetup.cfg.Generic.order = ["custom"]; - if (process.platform === "win32") { - testSetup.cfg.Generic.customTags = ["@author ${env:USERNAME}"]; - const res = testSetup.SetLine("void foo();").GetResult(); - // USERNAME env var is different for everybody - assert.notEqual("/**\n * @author USERNAME\n */", res); - } else { - testSetup.cfg.Generic.customTags = ["@author ${env:USER}"]; - const res = testSetup.SetLine("void foo();").GetResult(); - // USER env var is different for everybody - assert.notEqual("/**\n * @author USER\n */", res); - } - - testSetup.cfg.Generic.customTags = ["@author ${env:MY_VARIABLE}"]; - const result = testSetup.SetLine("void foo();").GetResult(); - assert.equal("/**\n * @author MY_VARIABLE\n */", result); - }); - }); -- cgit v1.2.3