From 18b777db8a035efddbd9626f934e46d685c4ce79 Mon Sep 17 00:00:00 2001 From: Andrew Bullock Date: Thu, 11 May 2023 10:01:39 +0100 Subject: [PATCH] fixes #360 --- changelog.md | 3 +++ src/NUglify.Tests/JavaScript/Bugs.cs | 7 +++++++ src/NUglify.Tests/NUglify.Tests.csproj | 6 ++++++ src/NUglify.Tests/TestData/JS/Expected/Bugs/Bug360.js | 1 + src/NUglify.Tests/TestData/JS/Input/Bugs/Bug360.js | 1 + src/NUglify/JavaScript/JSParser.cs | 2 +- src/NUglify/NUglify.csproj | 2 +- 7 files changed, 20 insertions(+), 2 deletions(-) create mode 100644 src/NUglify.Tests/TestData/JS/Expected/Bugs/Bug360.js create mode 100644 src/NUglify.Tests/TestData/JS/Input/Bugs/Bug360.js diff --git a/changelog.md b/changelog.md index c807421d..2a8c926d 100644 --- a/changelog.md +++ b/changelog.md @@ -1,5 +1,8 @@ # Changelog +## v1.20.7 (11 May 2023) +- Fixes bug with export async + ## v1.20.6 (4 April 2023) - Fixes bug with delete keyword diff --git a/src/NUglify.Tests/JavaScript/Bugs.cs b/src/NUglify.Tests/JavaScript/Bugs.cs index f6f42f28..62771296 100644 --- a/src/NUglify.Tests/JavaScript/Bugs.cs +++ b/src/NUglify.Tests/JavaScript/Bugs.cs @@ -369,5 +369,12 @@ public void Bug353() { TestHelper.Instance.RunErrorTest(); } + + [Test] + public void Bug360() + { + TestHelper.Instance.RunTest("-rename:all"); + } + } } diff --git a/src/NUglify.Tests/NUglify.Tests.csproj b/src/NUglify.Tests/NUglify.Tests.csproj index c94f7f2e..b2015547 100644 --- a/src/NUglify.Tests/NUglify.Tests.csproj +++ b/src/NUglify.Tests/NUglify.Tests.csproj @@ -566,6 +566,9 @@ PreserveNewest + + PreserveNewest + PreserveNewest @@ -2866,6 +2869,9 @@ PreserveNewest + + PreserveNewest + PreserveNewest diff --git a/src/NUglify.Tests/TestData/JS/Expected/Bugs/Bug360.js b/src/NUglify.Tests/TestData/JS/Expected/Bugs/Bug360.js new file mode 100644 index 00000000..ea05f287 --- /dev/null +++ b/src/NUglify.Tests/TestData/JS/Expected/Bugs/Bug360.js @@ -0,0 +1 @@ +export async function fooAsync(){} \ No newline at end of file diff --git a/src/NUglify.Tests/TestData/JS/Input/Bugs/Bug360.js b/src/NUglify.Tests/TestData/JS/Input/Bugs/Bug360.js new file mode 100644 index 00000000..ea05f287 --- /dev/null +++ b/src/NUglify.Tests/TestData/JS/Input/Bugs/Bug360.js @@ -0,0 +1 @@ +export async function fooAsync(){} \ No newline at end of file diff --git a/src/NUglify/JavaScript/JSParser.cs b/src/NUglify/JavaScript/JSParser.cs index b4b31a90..9a40f002 100644 --- a/src/NUglify/JavaScript/JSParser.cs +++ b/src/NUglify/JavaScript/JSParser.cs @@ -2483,7 +2483,7 @@ private AstNode ParseExport() KeywordContext = m_currentToken.Clone(), }; GetNextToken(); - if (m_currentToken.IsOne(JSToken.Var, JSToken.Const, JSToken.Let, JSToken.Function, JSToken.Class)) + if (m_currentToken.IsOne(JSToken.Var, JSToken.Const, JSToken.Let, JSToken.Async, JSToken.Function, JSToken.Class)) { // export var/const/let/funcdecl/classdecl var declaration = ParseStatement(true, true); diff --git a/src/NUglify/NUglify.csproj b/src/NUglify/NUglify.csproj index 74a3c225..9723283a 100644 --- a/src/NUglify/NUglify.csproj +++ b/src/NUglify/NUglify.csproj @@ -18,7 +18,7 @@ git git://github.com/trullock/NUglify 1.6.0 - 1.20.6 + 1.20.7 latest