From e327b592e0b0341e6ac44d88a24c6247af3321a8 Mon Sep 17 00:00:00 2001 From: Nicolas Vuillamy Date: Mon, 26 Aug 2024 20:52:28 +0200 Subject: [PATCH 1/4] Fix module export --- CHANGELOG.md | 6 +++++- lib/index.js | 35 ++++++++++++++++++++--------------- package.json | 2 +- 3 files changed, 26 insertions(+), 17 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 03250eef..f083aa47 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -2,7 +2,11 @@ ## Beta -## [15.0.0] 2024-26-08 +## [15.0.1] 2024-08-26 + +- Fix module export + +## [15.0.0] 2024-08-26 - Convert to [ES Module](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Guide/Modules) - Upgrade to CodeNarc 3.5.0 diff --git a/lib/index.js b/lib/index.js index 183d9b8b..cec873ad 100755 --- a/lib/index.js +++ b/lib/index.js @@ -3,20 +3,25 @@ import NpmGroovyLint from "./groovy-lint.js"; import { pathToFileURL } from "url"; -// Create linter/formatter/fixer with arguments -const linter = new NpmGroovyLint(process.argv, { origin: "index" }); +if (import.meta.url === pathToFileURL(process.argv[1]).href) { -// Run asynchronously to use the returned status for process.exit -(async () => { - try { - await linter.run(); - process.exitCode = linter.status; - } catch (err) { - console.error("Unexpected error: " + err.message + "\n" + err.stack); - process.exitCode = 2; - // Quit if called by CLI and not as a module - if (import.meta.url === pathToFileURL(process.argv[1]).href) { - process.exit(); + // Create linter/formatter/fixer with arguments + const linter = new NpmGroovyLint(process.argv, { origin: "index" }); + + // Run asynchronously to use the returned status for process.exit + (async () => { + try { + await linter.run(); + process.exitCode = linter.status; + } catch (err) { + console.error("Unexpected error: " + err.message + "\n" + err.stack); + process.exitCode = 2; + // Quit if called by CLI and not as a module + if (import.meta.url === pathToFileURL(process.argv[1]).href) { + process.exit(); + } } - } -})(); + })(); +} + +export { NpmGroovyLint }; diff --git a/package.json b/package.json index f19273b0..410561b3 100644 --- a/package.json +++ b/package.json @@ -2,7 +2,7 @@ "name": "npm-groovy-lint", "version": "15.0.0", "description": "Lint, format and auto-fix your Groovy / Jenkinsfile / Gradle files", - "exports": "./index.js", + "exports": "./lib/index.js", "type": "module", "scripts": { "lint:fix": "eslint **/*.js --fix && prettier --write \"./lib/**/*.{js,jsx}\" --tab-width 4 --print-width 150", From 456bf03bf7be897051d98d487ce3aac207f5fa60 Mon Sep 17 00:00:00 2001 From: Nicolas Vuillamy Date: Mon, 26 Aug 2024 21:18:17 +0200 Subject: [PATCH 2/4] Fix deploy in vscode script --- CHANGELOG.md | 1 + lib/index.js | 1 - scripts/deploy-in-vscode.js | 10 +++++----- 3 files changed, 6 insertions(+), 6 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index f083aa47..397bf2a7 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -5,6 +5,7 @@ ## [15.0.1] 2024-08-26 - Fix module export +- Fix deploy in vscode script ## [15.0.0] 2024-08-26 diff --git a/lib/index.js b/lib/index.js index cec873ad..a7c16fe8 100755 --- a/lib/index.js +++ b/lib/index.js @@ -4,7 +4,6 @@ import NpmGroovyLint from "./groovy-lint.js"; import { pathToFileURL } from "url"; if (import.meta.url === pathToFileURL(process.argv[1]).href) { - // Create linter/formatter/fixer with arguments const linter = new NpmGroovyLint(process.argv, { origin: "index" }); diff --git a/scripts/deploy-in-vscode.js b/scripts/deploy-in-vscode.js index c5d9fdd6..ebd27a34 100644 --- a/scripts/deploy-in-vscode.js +++ b/scripts/deploy-in-vscode.js @@ -4,7 +4,7 @@ // Imports -import { existsSync, emptyDirSync, mkdirSync, copySync } from 'fs-extra'; +import fs from 'fs-extra'; console.log('---- START DEPLOY IN VSCODE INSTALLED npm-groovy-lint PACKAGE ----'); @@ -15,16 +15,16 @@ const targetPath = `${vsCodeGroovyLintPath}/server/node_modules/npm-groovy-lint` console.info(`GroovyLint: Starting copying package in vscode for testing`); // Reset target folder -if (existsSync(targetPath)) { - emptyDirSync(targetPath); +if (fs.existsSync(targetPath)) { + fs.emptyDirSync(targetPath); } else { - mkdirSync(targetPath); + fs.mkdirSync(targetPath); } // Copy files into dest folder for (const path of ['package.json', 'README.md', 'CHANGELOG.md', 'LICENSE', 'lib']) { - copySync(path, `${targetPath}/${path}`); + fs.copySync(path, `${targetPath}/${path}`); } console.info(`GroovyLint: Copied files into ${targetPath}`); From cc1a5fa7685ed70cc1b3987c900b3753c377ca16 Mon Sep 17 00:00:00 2001 From: Nicolas Vuillamy Date: Mon, 26 Aug 2024 21:24:22 +0200 Subject: [PATCH 3/4] exports --- index.js | 3 +++ package.json | 2 +- 2 files changed, 4 insertions(+), 1 deletion(-) create mode 100644 index.js diff --git a/index.js b/index.js new file mode 100644 index 00000000..1f606c0b --- /dev/null +++ b/index.js @@ -0,0 +1,3 @@ +import { NpmGroovyLint } from "./lib"; + +export { NpmGroovyLint }; diff --git a/package.json b/package.json index 410561b3..f19273b0 100644 --- a/package.json +++ b/package.json @@ -2,7 +2,7 @@ "name": "npm-groovy-lint", "version": "15.0.0", "description": "Lint, format and auto-fix your Groovy / Jenkinsfile / Gradle files", - "exports": "./lib/index.js", + "exports": "./index.js", "type": "module", "scripts": { "lint:fix": "eslint **/*.js --fix && prettier --write \"./lib/**/*.{js,jsx}\" --tab-width 4 --print-width 150", From 0120aee69e57a182d98fed4ab09eabff82be7852 Mon Sep 17 00:00:00 2001 From: Nicolas Vuillamy Date: Mon, 26 Aug 2024 21:42:47 +0200 Subject: [PATCH 4/4] fix --- index.js | 3 --- index.mjs | 3 +++ scripts/deploy-in-vscode.js | 2 +- 3 files changed, 4 insertions(+), 4 deletions(-) delete mode 100644 index.js create mode 100644 index.mjs diff --git a/index.js b/index.js deleted file mode 100644 index 1f606c0b..00000000 --- a/index.js +++ /dev/null @@ -1,3 +0,0 @@ -import { NpmGroovyLint } from "./lib"; - -export { NpmGroovyLint }; diff --git a/index.mjs b/index.mjs new file mode 100644 index 00000000..66a882dd --- /dev/null +++ b/index.mjs @@ -0,0 +1,3 @@ +import { NpmGroovyLint } from "./lib/index.js"; + +export default NpmGroovyLint; diff --git a/scripts/deploy-in-vscode.js b/scripts/deploy-in-vscode.js index ebd27a34..54357ff6 100644 --- a/scripts/deploy-in-vscode.js +++ b/scripts/deploy-in-vscode.js @@ -23,7 +23,7 @@ else { } // Copy files into dest folder -for (const path of ['package.json', 'README.md', 'CHANGELOG.md', 'LICENSE', 'lib']) { +for (const path of ['index.mjs', 'package.json', 'README.md', 'CHANGELOG.md', 'LICENSE', 'lib']) { fs.copySync(path, `${targetPath}/${path}`); }