From 7df0d1be64bd73c07028fb26493b5a78c589e679 Mon Sep 17 00:00:00 2001 From: Cameron Tacklind Date: Sun, 3 Mar 2019 17:45:05 -0800 Subject: [PATCH 1/4] Add missing includeDelimiter option to SerialPort.parsers.Readline `Readline`'s arguments are passed to `Delimiter`'s, therefore `includeDelimiter` should be added as an option to `Readline`'s constructor. https://github.com/node-serialport/node-serialport/blob/a80d0b73a1d8424901ab73b314de344dad798d12/packages/parser-readline/readline.js#L16-L22 --- types/serialport/index.d.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/types/serialport/index.d.ts b/types/serialport/index.d.ts index c1a81376fa..2c3cbbf6b9 100644 --- a/types/serialport/index.d.ts +++ b/types/serialport/index.d.ts @@ -100,7 +100,7 @@ declare namespace SerialPort { constructor(options: {delimiter: string | Buffer | number[], includeDelimiter?: boolean}); } class Readline extends Delimiter { - constructor(options: {delimiter: string | Buffer | number[], encoding?: 'ascii'|'utf8'|'utf16le'|'ucs2'|'base64'|'binary'|'hex'}); + constructor(options: {delimiter: string | Buffer | number[], encoding?: 'ascii'|'utf8'|'utf16le'|'ucs2'|'base64'|'binary'|'hex', includeDelimiter?: boolean}); } class Ready extends Stream.Transform { constructor(options: {delimiter: string | Buffer | number[]}); From 67b8f8b650837af05111ba8f73b4d709d77a466c Mon Sep 17 00:00:00 2001 From: Cameron Tacklind Date: Sun, 3 Mar 2019 18:33:48 -0800 Subject: [PATCH 2/4] Update tests --- types/serialport/serialport-tests.ts | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/types/serialport/serialport-tests.ts b/types/serialport/serialport-tests.ts index d6541a63c2..476199b506 100644 --- a/types/serialport/serialport-tests.ts +++ b/types/serialport/serialport-tests.ts @@ -105,8 +105,8 @@ function test_parsers() { const ByteLengthParser = new SerialPort.parsers.ByteLength({length: 8}); const CCTalkParser = new SerialPort.parsers.CCTalk(); - const DelimiterParser = new SerialPort.parsers.Delimiter({ delimiter: Buffer.from('EOL') }); - const ReadlineParser = new SerialPort.parsers.Readline({ delimiter: '\r\n' }); + const DelimiterParser = new SerialPort.parsers.Delimiter({ delimiter: Buffer.from('EOL'), includeDelimiter: true }); + const ReadlineParser = new SerialPort.parsers.Readline({ delimiter: '\r\n', includeDelimiter: false }); const ReadyParser = new SerialPort.parsers.Ready({ delimiter: 'READY' }); const RegexParser = new SerialPort.parsers.Regex({regex: /.*/}); From a72ea5ad9e85b8c1fb6f783bfb32b0f63e8c9ce6 Mon Sep 17 00:00:00 2001 From: Cameron Tacklind Date: Sun, 3 Mar 2019 18:34:39 -0800 Subject: [PATCH 3/4] Add myself to author --- types/serialport/index.d.ts | 1 + 1 file changed, 1 insertion(+) diff --git a/types/serialport/index.d.ts b/types/serialport/index.d.ts index 2c3cbbf6b9..73296d82e2 100644 --- a/types/serialport/index.d.ts +++ b/types/serialport/index.d.ts @@ -2,6 +2,7 @@ // Project: https://github.com/EmergingTechnologyAdvisors/node-serialport // Definitions by: Jeremy Foster // Andrew Pearson +// Cameron Tacklind // Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped /// From 31d30e337099cc7e9c3818fb9598cfeab17cf7bf Mon Sep 17 00:00:00 2001 From: Cameron Tacklind Date: Sun, 3 Mar 2019 18:34:53 -0800 Subject: [PATCH 4/4] Update v6 as well --- types/serialport/v6/index.d.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/types/serialport/v6/index.d.ts b/types/serialport/v6/index.d.ts index 2f5f8fc55d..2ada54c85f 100644 --- a/types/serialport/v6/index.d.ts +++ b/types/serialport/v6/index.d.ts @@ -90,7 +90,7 @@ declare namespace SerialPort { constructor(options: {delimiter: string | Buffer | number[], includeDelimiter?: boolean}); } class Readline extends Delimiter { - constructor(options: {delimiter: string | Buffer | number[], encoding?: 'ascii'|'utf8'|'utf16le'|'ucs2'|'base64'|'binary'|'hex'}); + constructor(options: {delimiter: string | Buffer | number[], encoding?: 'ascii'|'utf8'|'utf16le'|'ucs2'|'base64'|'binary'|'hex', includeDelimiter?: boolean}); } class Ready extends Stream.Transform { constructor(options: {data: string | Buffer | number[]});