From d13085f8bdf372cd761f30ba97d9551721a26396 Mon Sep 17 00:00:00 2001 From: Daniel Imhoff Date: Wed, 26 Aug 2020 17:18:21 -0700 Subject: [PATCH 1/2] fix: strip newlines when redrawing --- .../src/__tests__/utils.ts | 36 +------------------ .../@ionic/cli-framework-output/src/output.ts | 4 +-- .../@ionic/cli-framework-output/src/utils.ts | 4 --- 3 files changed, 3 insertions(+), 41 deletions(-) diff --git a/packages/@ionic/cli-framework-output/src/__tests__/utils.ts b/packages/@ionic/cli-framework-output/src/__tests__/utils.ts index 855f904b1d..dab6028ce5 100644 --- a/packages/@ionic/cli-framework-output/src/__tests__/utils.ts +++ b/packages/@ionic/cli-framework-output/src/__tests__/utils.ts @@ -1,4 +1,4 @@ -import { dropWhile, enforceLF, enforceSingleLF } from '../utils'; +import { dropWhile, enforceLF } from '../utils'; describe('@ionic/cli-framework-output', () => { @@ -74,40 +74,6 @@ describe('@ionic/cli-framework-output', () => { }); - describe('enforceSingleLF', () => { - - it('should convert empty string to newline', () => { - const result = enforceSingleLF(''); - expect(result).toBe('\n'); - }); - - it('should strip multiple newlines', () => { - const result = enforceSingleLF('\n\n\n'); - expect(result).toBe('\n'); - }); - - it('should do nothing to a single newline', () => { - const result = enforceSingleLF('\n'); - expect(result).toBe('\n'); - }); - - it('should add newline to text without newline', () => { - const result = enforceSingleLF('some text'); - expect(result).toBe('some text\n'); - }); - - it('should do nothing to multiline text with newline at end', () => { - const result = enforceSingleLF('some text\nsome more\n'); - expect(result).toBe('some text\nsome more\n'); - }); - - it('should add newline to multiline text without newline at end', () => { - const result = enforceSingleLF('some text\nsome more'); - expect(result).toBe('some text\nsome more\n'); - }); - - }); - }); }); diff --git a/packages/@ionic/cli-framework-output/src/output.ts b/packages/@ionic/cli-framework-output/src/output.ts index 15e21b55cc..1166db51df 100644 --- a/packages/@ionic/cli-framework-output/src/output.ts +++ b/packages/@ionic/cli-framework-output/src/output.ts @@ -2,7 +2,7 @@ import { Cursor, EscapeCode } from '@ionic/utils-terminal'; import { Colors, NO_COLORS } from './colors'; import { ICON_FAILURE, ICON_SUCCESS, Spinner, TaskChain } from './tasks'; -import { enforceSingleLF, formatHrTime } from './utils'; +import { formatHrTime } from './utils'; export interface OutputStrategy { readonly stream: NodeJS.WritableStream; @@ -111,7 +111,7 @@ export class TTYOutputRedrawer { redraw(msg: string) { Cursor.hide(); - this.stream.write(EscapeCode.eraseLines(1) + enforceSingleLF(msg)); + this.stream.write(EscapeCode.eraseLines(1) + msg.replace(/[\r\n]+$/, '')); } clear() { diff --git a/packages/@ionic/cli-framework-output/src/utils.ts b/packages/@ionic/cli-framework-output/src/utils.ts index 624c796086..996f9b549a 100644 --- a/packages/@ionic/cli-framework-output/src/utils.ts +++ b/packages/@ionic/cli-framework-output/src/utils.ts @@ -6,10 +6,6 @@ export function enforceLF(str: string): string { return str.match(/[\r\n]$/) ? str : str + '\n'; } -export function enforceSingleLF(str: string): string { - return str.replace(/[\r\n]+$/, '') + '\n'; -} - export function dropWhile(array: readonly T[], predicate: (item: T) => boolean = v => !!v): T[] { let done = false; From f70bc47ad52809e7ceada53fc4d7beb3bb65f45e Mon Sep 17 00:00:00 2001 From: Ionitron Date: Thu, 27 Aug 2020 00:29:08 +0000 Subject: [PATCH 2/2] chore(release): publish [skip ci] - @ionic/cli-framework-output@2.0.1 - @ionic/cli-framework@5.0.1 - @ionic/cli@6.11.5 - @ionic/lab@3.2.4 - @ionic/v1-toolkit@3.2.8 - cli-scripts@2.1.25 --- packages/@ionic/cli-framework-output/CHANGELOG.md | 11 +++++++++++ packages/@ionic/cli-framework-output/package.json | 2 +- packages/@ionic/cli-framework/CHANGELOG.md | 8 ++++++++ packages/@ionic/cli-framework/package.json | 4 ++-- packages/@ionic/cli/CHANGELOG.md | 8 ++++++++ packages/@ionic/cli/package.json | 6 +++--- packages/@ionic/lab/CHANGELOG.md | 8 ++++++++ packages/@ionic/lab/package.json | 4 ++-- packages/@ionic/v1-toolkit/CHANGELOG.md | 8 ++++++++ packages/@ionic/v1-toolkit/package.json | 4 ++-- packages/cli-scripts/CHANGELOG.md | 8 ++++++++ packages/cli-scripts/package.json | 6 +++--- 12 files changed, 64 insertions(+), 13 deletions(-) diff --git a/packages/@ionic/cli-framework-output/CHANGELOG.md b/packages/@ionic/cli-framework-output/CHANGELOG.md index ad42096587..d6bc02f88f 100644 --- a/packages/@ionic/cli-framework-output/CHANGELOG.md +++ b/packages/@ionic/cli-framework-output/CHANGELOG.md @@ -3,6 +3,17 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +## [2.0.1](https://github.com/ionic-team/ionic-cli/compare/@ionic/cli-framework-output@2.0.0...@ionic/cli-framework-output@2.0.1) (2020-08-27) + + +### Bug Fixes + +* strip newlines when redrawing ([d13085f](https://github.com/ionic-team/ionic-cli/commit/d13085f8bdf372cd761f30ba97d9551721a26396)) + + + + + # [2.0.0](https://github.com/ionic-team/ionic-cli/compare/@ionic/cli-framework-output@1.1.0...@ionic/cli-framework-output@2.0.0) (2020-08-27) diff --git a/packages/@ionic/cli-framework-output/package.json b/packages/@ionic/cli-framework-output/package.json index 56b81092ff..600a760131 100644 --- a/packages/@ionic/cli-framework-output/package.json +++ b/packages/@ionic/cli-framework-output/package.json @@ -1,6 +1,6 @@ { "name": "@ionic/cli-framework-output", - "version": "2.0.0", + "version": "2.0.1", "description": "The log/tasks/spinners portion of Ionic CLI Framework", "homepage": "https://ionicframework.com/", "author": "Ionic Team (https://ionicframework.com)", diff --git a/packages/@ionic/cli-framework/CHANGELOG.md b/packages/@ionic/cli-framework/CHANGELOG.md index 5f39088572..a19bfb6468 100644 --- a/packages/@ionic/cli-framework/CHANGELOG.md +++ b/packages/@ionic/cli-framework/CHANGELOG.md @@ -3,6 +3,14 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +## [5.0.1](https://github.com/ionic-team/ionic-cli/compare/@ionic/cli-framework@5.0.0...@ionic/cli-framework@5.0.1) (2020-08-27) + +**Note:** Version bump only for package @ionic/cli-framework + + + + + # [5.0.0](https://github.com/ionic-team/ionic-cli/compare/@ionic/cli-framework@4.2.2...@ionic/cli-framework@5.0.0) (2020-08-27) diff --git a/packages/@ionic/cli-framework/package.json b/packages/@ionic/cli-framework/package.json index 157b420b99..2a0717d03d 100644 --- a/packages/@ionic/cli-framework/package.json +++ b/packages/@ionic/cli-framework/package.json @@ -1,6 +1,6 @@ { "name": "@ionic/cli-framework", - "version": "5.0.0", + "version": "5.0.1", "description": "The foundation framework of the Ionic CLI", "homepage": "https://ionicframework.com/", "author": "Ionic Team (https://ionicframework.com) ", @@ -19,7 +19,7 @@ }, "license": "MIT", "dependencies": { - "@ionic/cli-framework-output": "2.0.0", + "@ionic/cli-framework-output": "2.0.1", "@ionic/utils-array": "2.1.4", "@ionic/utils-fs": "3.1.4", "@ionic/utils-object": "2.1.4", diff --git a/packages/@ionic/cli/CHANGELOG.md b/packages/@ionic/cli/CHANGELOG.md index 93a3b6ea19..0a511f64ab 100644 --- a/packages/@ionic/cli/CHANGELOG.md +++ b/packages/@ionic/cli/CHANGELOG.md @@ -3,6 +3,14 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +## [6.11.5](https://github.com/ionic-team/ionic-cli/compare/@ionic/cli@6.11.4...@ionic/cli@6.11.5) (2020-08-27) + +**Note:** Version bump only for package @ionic/cli + + + + + ## [6.11.4](https://github.com/ionic-team/ionic-cli/compare/@ionic/cli@6.11.3...@ionic/cli@6.11.4) (2020-08-27) **Note:** Version bump only for package @ionic/cli diff --git a/packages/@ionic/cli/package.json b/packages/@ionic/cli/package.json index 51ab365178..8c3f1c03cd 100644 --- a/packages/@ionic/cli/package.json +++ b/packages/@ionic/cli/package.json @@ -1,6 +1,6 @@ { "name": "@ionic/cli", - "version": "6.11.4", + "version": "6.11.5", "description": "A tool for creating and developing Ionic Framework mobile apps.", "homepage": "https://ionicframework.com", "author": "Ionic Team (https://ionicframework.com) ", @@ -40,8 +40,8 @@ }, "license": "MIT", "dependencies": { - "@ionic/cli-framework": "5.0.0", - "@ionic/cli-framework-output": "2.0.0", + "@ionic/cli-framework": "5.0.1", + "@ionic/cli-framework-output": "2.0.1", "@ionic/cli-framework-prompts": "2.1.5", "@ionic/utils-array": "2.1.4", "@ionic/utils-fs": "3.1.4", diff --git a/packages/@ionic/lab/CHANGELOG.md b/packages/@ionic/lab/CHANGELOG.md index 7e84cb6f29..8e6cb8dc8e 100644 --- a/packages/@ionic/lab/CHANGELOG.md +++ b/packages/@ionic/lab/CHANGELOG.md @@ -3,6 +3,14 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +## [3.2.4](https://github.com/ionic-team/ionic-cli/compare/@ionic/lab@3.2.3...@ionic/lab@3.2.4) (2020-08-27) + +**Note:** Version bump only for package @ionic/lab + + + + + ## [3.2.3](https://github.com/ionic-team/ionic-cli/compare/@ionic/lab@3.2.2...@ionic/lab@3.2.3) (2020-08-27) **Note:** Version bump only for package @ionic/lab diff --git a/packages/@ionic/lab/package.json b/packages/@ionic/lab/package.json index 02da1294f5..80f292af98 100644 --- a/packages/@ionic/lab/package.json +++ b/packages/@ionic/lab/package.json @@ -1,6 +1,6 @@ { "name": "@ionic/lab", - "version": "3.2.3", + "version": "3.2.4", "description": "Ionic Lab utility for developing Ionic apps, used by Ionic CLI", "bin": { "ionic-lab": "./bin/ionic-lab" @@ -41,7 +41,7 @@ "prepublishOnly": "npm run build" }, "dependencies": { - "@ionic/cli-framework": "5.0.0", + "@ionic/cli-framework": "5.0.1", "@ionic/utils-fs": "3.1.4", "chalk": "^4.0.0", "express": "^4.16.2", diff --git a/packages/@ionic/v1-toolkit/CHANGELOG.md b/packages/@ionic/v1-toolkit/CHANGELOG.md index 97083daa26..cbd0450535 100644 --- a/packages/@ionic/v1-toolkit/CHANGELOG.md +++ b/packages/@ionic/v1-toolkit/CHANGELOG.md @@ -3,6 +3,14 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +## [3.2.8](https://github.com/ionic-team/ionic-cli/compare/@ionic/v1-toolkit@3.2.7...@ionic/v1-toolkit@3.2.8) (2020-08-27) + +**Note:** Version bump only for package @ionic/v1-toolkit + + + + + ## [3.2.7](https://github.com/ionic-team/ionic-cli/compare/@ionic/v1-toolkit@3.2.6...@ionic/v1-toolkit@3.2.7) (2020-08-27) **Note:** Version bump only for package @ionic/v1-toolkit diff --git a/packages/@ionic/v1-toolkit/package.json b/packages/@ionic/v1-toolkit/package.json index dd27eea4e6..c3dbecea73 100644 --- a/packages/@ionic/v1-toolkit/package.json +++ b/packages/@ionic/v1-toolkit/package.json @@ -1,6 +1,6 @@ { "name": "@ionic/v1-toolkit", - "version": "3.2.7", + "version": "3.2.8", "description": "Utility CLI for Ionic 1.x apps, used by Ionic CLI", "bin": { "ionic-v1": "./bin/ionic-v1" @@ -36,7 +36,7 @@ "prepublishOnly": "npm run build" }, "dependencies": { - "@ionic/cli-framework": "5.0.0", + "@ionic/cli-framework": "5.0.1", "@ionic/utils-fs": "3.1.4", "chalk": "^4.0.0", "chokidar": "^3.0.1", diff --git a/packages/cli-scripts/CHANGELOG.md b/packages/cli-scripts/CHANGELOG.md index f903f11532..a4aa607136 100644 --- a/packages/cli-scripts/CHANGELOG.md +++ b/packages/cli-scripts/CHANGELOG.md @@ -3,6 +3,14 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +## [2.1.25](https://github.com/ionic-team/ionic-cli/compare/cli-scripts@2.1.24...cli-scripts@2.1.25) (2020-08-27) + +**Note:** Version bump only for package cli-scripts + + + + + ## [2.1.24](https://github.com/ionic-team/ionic-cli/compare/cli-scripts@2.1.23...cli-scripts@2.1.24) (2020-08-27) **Note:** Version bump only for package cli-scripts diff --git a/packages/cli-scripts/package.json b/packages/cli-scripts/package.json index 59217d4f54..94f98c5237 100644 --- a/packages/cli-scripts/package.json +++ b/packages/cli-scripts/package.json @@ -1,7 +1,7 @@ { "private": true, "name": "cli-scripts", - "version": "2.1.24", + "version": "2.1.25", "bin": { "ionic-cli-scripts": "./bin/ionic-cli-scripts" }, @@ -16,8 +16,8 @@ "main": "./dist/index.js", "types": "./dist/index.d.ts", "dependencies": { - "@ionic/cli": "6.11.4", - "@ionic/cli-framework": "5.0.0", + "@ionic/cli": "6.11.5", + "@ionic/cli-framework": "5.0.1", "@ionic/utils-fs": "3.1.4", "ansi-styles": "^4.0.0", "chalk": "^4.0.0",