From 1a8b8c6dc207c73c5c11895c46b61392da3253e5 Mon Sep 17 00:00:00 2001 From: Dan Lynch Date: Sat, 21 Jun 2025 02:09:47 -0700 Subject: [PATCH 1/9] OSes --- .github/workflows/run-tests.yaml | 6 ++++-- README.md | 8 +++++++- packages/parser/README.md | 8 +++++++- 3 files changed, 18 insertions(+), 4 deletions(-) diff --git a/.github/workflows/run-tests.yaml b/.github/workflows/run-tests.yaml index 8b9dbae0..e334ee0f 100644 --- a/.github/workflows/run-tests.yaml +++ b/.github/workflows/run-tests.yaml @@ -5,8 +5,10 @@ on: jobs: parser-tests: - runs-on: ubuntu-latest - container: node:20.12.0-alpine + runs-on: ${{ matrix.os }} + strategy: + matrix: + os: [ubuntu-latest, windows-latest, macos-latest] steps: - name: checkout diff --git a/README.md b/README.md index 3e1d7c90..db54da3d 100644 --- a/README.md +++ b/README.md @@ -11,7 +11,10 @@ - +
+ + +

The real PostgreSQL parser for Node.js, `pgsql-parser` provides symmetric parsing and deparsing of SQL statements using the actual [PostgreSQL parser](https://github.com/pganalyze/libpg_query). It allows you to parse SQL queries into AST and modify or reconstruct SQL queries from the AST. @@ -150,6 +153,9 @@ Our latest is built with `17-latest` branch from libpg_query | PostgreSQL Major Version | libpg_query | Status | npm tag | |--------------------------|-------------|---------------------|---------| | 17 | 17-latest | Active Development | `latest` | +| 16 | (n/a) | Not supported | +| 15 | (n/a) | Not supported | +| 14 | (n/a) | Not supported | | 13 | 13-latest | Only Critical Fixes | `13.16.0` | | 12 | (n/a) | Not supported | | 11 | (n/a) | Not supported | diff --git a/packages/parser/README.md b/packages/parser/README.md index 3e1d7c90..db54da3d 100644 --- a/packages/parser/README.md +++ b/packages/parser/README.md @@ -11,7 +11,10 @@ - +
+ + +

The real PostgreSQL parser for Node.js, `pgsql-parser` provides symmetric parsing and deparsing of SQL statements using the actual [PostgreSQL parser](https://github.com/pganalyze/libpg_query). It allows you to parse SQL queries into AST and modify or reconstruct SQL queries from the AST. @@ -150,6 +153,9 @@ Our latest is built with `17-latest` branch from libpg_query | PostgreSQL Major Version | libpg_query | Status | npm tag | |--------------------------|-------------|---------------------|---------| | 17 | 17-latest | Active Development | `latest` | +| 16 | (n/a) | Not supported | +| 15 | (n/a) | Not supported | +| 14 | (n/a) | Not supported | | 13 | 13-latest | Only Critical Fixes | `13.16.0` | | 12 | (n/a) | Not supported | | 11 | (n/a) | Not supported | From c97f594d3ea6307095277c2372d5127a83b1ddd7 Mon Sep 17 00:00:00 2001 From: Dan Lynch Date: Sat, 21 Jun 2025 02:12:03 -0700 Subject: [PATCH 2/9] readme --- README.md | 6 +++--- packages/parser/README.md | 6 +++--- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/README.md b/README.md index db54da3d..0c9bd4f4 100644 --- a/README.md +++ b/README.md @@ -12,9 +12,9 @@
- - - + + +

The real PostgreSQL parser for Node.js, `pgsql-parser` provides symmetric parsing and deparsing of SQL statements using the actual [PostgreSQL parser](https://github.com/pganalyze/libpg_query). It allows you to parse SQL queries into AST and modify or reconstruct SQL queries from the AST. diff --git a/packages/parser/README.md b/packages/parser/README.md index db54da3d..0c9bd4f4 100644 --- a/packages/parser/README.md +++ b/packages/parser/README.md @@ -12,9 +12,9 @@
- - - + + +

The real PostgreSQL parser for Node.js, `pgsql-parser` provides symmetric parsing and deparsing of SQL statements using the actual [PostgreSQL parser](https://github.com/pganalyze/libpg_query). It allows you to parse SQL queries into AST and modify or reconstruct SQL queries from the AST. From 7d00b2a584bd50513233bf7056293f6d20d8ab74 Mon Sep 17 00:00:00 2001 From: Dan Lynch Date: Sat, 21 Jun 2025 02:17:44 -0700 Subject: [PATCH 3/9] win --- packages/cli/package.json | 4 ++-- packages/deparser/package.json | 4 ++-- packages/enums/package.json | 4 ++-- packages/parser/package.json | 4 ++-- packages/proto-parser/package.json | 4 ++-- packages/transform/package.json | 4 ++-- packages/types/package.json | 4 ++-- packages/utils/package.json | 4 ++-- 8 files changed, 16 insertions(+), 16 deletions(-) diff --git a/packages/cli/package.json b/packages/cli/package.json index 8a7d8e1e..43fbafc1 100644 --- a/packages/cli/package.json +++ b/packages/cli/package.json @@ -26,8 +26,8 @@ "copy": "copyfiles -f ../../LICENSE README.md package.json dist", "clean": "rimraf dist/**", "prepare": "npm run build", - "build": "npm run clean; tsc; tsc -p tsconfig.esm.json; npm run copy", - "build:dev": "npm run clean; tsc --declarationMap; tsc -p tsconfig.esm.json; npm run copy", + "build": "npm run clean && tsc && tsc -p tsconfig.esm.json && npm run copy", + "build:dev": "npm run clean && tsc --declarationMap && tsc -p tsconfig.esm.json && npm run copy", "dev": "ts-node src/index", "lint": "eslint . --fix", "test": "jest", diff --git a/packages/deparser/package.json b/packages/deparser/package.json index 1af8adb4..4764e58f 100644 --- a/packages/deparser/package.json +++ b/packages/deparser/package.json @@ -23,8 +23,8 @@ "copy": "copyfiles -f ../../LICENSE README.md package.json dist", "clean": "rimraf dist/**", "prepare": "npm run build", - "build": "npm run clean; tsc; tsc -p tsconfig.esm.json; npm run copy", - "build:dev": "npm run clean; tsc --declarationMap; tsc -p tsconfig.esm.json; npm run copy", + "build": "npm run clean && tsc && tsc -p tsconfig.esm.json && npm run copy", + "build:dev": "npm run clean && tsc --declarationMap && tsc -p tsconfig.esm.json && npm run copy", "kitchen-sink": "npm run fixtures && npm run fixtures:kitchen-sink", "fixtures:kitchen-sink": "ts-node scripts/make-kitchen-sink.ts", "fixtures:ast": "ts-node scripts/make-fixtures-ast.ts", diff --git a/packages/enums/package.json b/packages/enums/package.json index 7fe8c707..824ccc13 100644 --- a/packages/enums/package.json +++ b/packages/enums/package.json @@ -23,8 +23,8 @@ "copy": "copyfiles -f ../../LICENSE README.md package.json dist", "clean": "rimraf dist/**", "prepare": "npm run build", - "build": "npm run build:proto && npm run clean; tsc; tsc -p tsconfig.esm.json; npm run copy", - "build:dev": "npm run clean; tsc --declarationMap; tsc -p tsconfig.esm.json; npm run copy", + "build": "npm run build:proto && npm run clean && tsc && tsc -p tsconfig.esm.json && npm run copy", + "build:dev": "npm run clean && tsc --declarationMap && tsc -p tsconfig.esm.json && npm run copy", "build:proto": "ts-node scripts/pg-proto-parser", "lint": "eslint . --fix", "test": "jest", diff --git a/packages/parser/package.json b/packages/parser/package.json index a8d3a680..ba9594b8 100644 --- a/packages/parser/package.json +++ b/packages/parser/package.json @@ -26,8 +26,8 @@ "copy": "copyfiles -f ../../LICENSE README.md package.json dist", "clean": "rimraf dist/**", "prepare": "npm run build", - "build": "npm run clean; tsc; tsc -p tsconfig.esm.json; npm run copy", - "build:dev": "npm run clean; tsc --declarationMap; tsc -p tsconfig.esm.json; npm run copy", + "build": "npm run clean && tsc && tsc -p tsconfig.esm.json && npm run copy", + "build:dev": "npm run clean && tsc --declarationMap && tsc -p tsconfig.esm.json && npm run copy", "lint": "eslint . --fix", "test": "jest", "test:watch": "jest --watch" diff --git a/packages/proto-parser/package.json b/packages/proto-parser/package.json index 9208e979..b4223414 100644 --- a/packages/proto-parser/package.json +++ b/packages/proto-parser/package.json @@ -22,8 +22,8 @@ "copy": "copyfiles -f ../../LICENSE README.md package.json dist", "clean": "rimraf dist/**", "prepare": "npm run build", - "build": "npm run clean; tsc; tsc -p tsconfig.esm.json; npm run copy", - "build:dev": "npm run clean; tsc --declarationMap; tsc -p tsconfig.esm.json; npm run copy", + "build": "npm run clean && tsc && tsc -p tsconfig.esm.json && npm run copy", + "build:dev": "npm run clean && tsc --declarationMap && tsc -p tsconfig.esm.json && npm run copy", "lint": "eslint . --fix", "test": "jest", "test:watch": "jest --watch", diff --git a/packages/transform/package.json b/packages/transform/package.json index 05f31a86..e66dddcf 100644 --- a/packages/transform/package.json +++ b/packages/transform/package.json @@ -23,8 +23,8 @@ "copy": "copyfiles -f ../../LICENSE README.md package.json dist", "clean": "rimraf dist/**", "prepare": "npm run build", - "build": "npm run build:proto && npm run clean; tsc; tsc -p tsconfig.esm.json; npm run copy", - "build:dev": "npm run clean; tsc --declarationMap; tsc -p tsconfig.esm.json; npm run copy", + "build": "npm run build:proto && npm run clean && tsc && tsc -p tsconfig.esm.json && npm run copy", + "build:dev": "npm run clean && tsc --declarationMap && tsc -p tsconfig.esm.json && npm run copy", "build:proto": "ts-node scripts/pg-proto-parser", "lint": "eslint . --fix", "test": "jest", diff --git a/packages/types/package.json b/packages/types/package.json index bdbc73f7..877d8f4c 100644 --- a/packages/types/package.json +++ b/packages/types/package.json @@ -23,8 +23,8 @@ "copy": "copyfiles -f ../../LICENSE README.md package.json dist", "clean": "rimraf dist/**", "prepare": "npm run build", - "build": "npm run build:proto && npm run clean; tsc; tsc -p tsconfig.esm.json; npm run copy", - "build:dev": "npm run clean; tsc --declarationMap; tsc -p tsconfig.esm.json; npm run copy", + "build": "npm run build:proto && npm run clean && tsc && tsc -p tsconfig.esm.json && npm run copy", + "build:dev": "npm run clean && tsc --declarationMap && tsc -p tsconfig.esm.json && npm run copy", "build:proto": "ts-node scripts/pg-proto-parser", "lint": "eslint . --fix", "test": "jest", diff --git a/packages/utils/package.json b/packages/utils/package.json index c027da6c..076e48b8 100644 --- a/packages/utils/package.json +++ b/packages/utils/package.json @@ -23,8 +23,8 @@ "copy": "copyfiles -f ../../LICENSE README.md package.json dist", "clean": "rimraf dist/**", "prepare": "npm run build", - "build": "npm run build:proto && npm run clean; tsc; tsc -p tsconfig.esm.json; npm run copy", - "build:dev": "npm run clean; tsc --declarationMap; tsc -p tsconfig.esm.json; npm run copy", + "build": "npm run build:proto && npm run clean && tsc && tsc -p tsconfig.esm.json && npm run copy", + "build:dev": "npm run clean && tsc --declarationMap && tsc -p tsconfig.esm.json && npm run copy", "build:proto": "ts-node scripts/pg-proto-parser", "lint": "eslint . --fix", "test": "jest", From 6edf87f6536cce7c1da481ab2572c0d53fb0904c Mon Sep 17 00:00:00 2001 From: Dan Lynch Date: Sat, 21 Jun 2025 09:24:28 +0000 Subject: [PATCH 4/9] fix: make file operations Windows-compatible - Use path.join() instead of string concatenation for default outDir - Fix glob patterns to use path.join() instead of template literals - Ensure cross-platform compatibility for all file system operations Changes: - proto-parser: Fixed default outDir path construction - proto-parser test-utils: Fixed glob pattern for reading output files - deparser scripts: Fixed glob patterns for SQL file discovery No breaking changes - all functionality remains the same --- WINDOWS_COMPATIBILITY.md | 71 +++++++++++++++++++ .../deparser/scripts/make-fixtures-ast.ts | 2 +- .../deparser/scripts/make-fixtures-sql.ts | 2 +- packages/deparser/scripts/make-fixtures.ts | 2 +- .../deparser/scripts/make-kitchen-sink.ts | 2 +- packages/proto-parser/src/options/defaults.ts | 3 +- packages/proto-parser/test-utils/index.ts | 2 +- 7 files changed, 78 insertions(+), 6 deletions(-) create mode 100644 WINDOWS_COMPATIBILITY.md diff --git a/WINDOWS_COMPATIBILITY.md b/WINDOWS_COMPATIBILITY.md new file mode 100644 index 00000000..bbcd6868 --- /dev/null +++ b/WINDOWS_COMPATIBILITY.md @@ -0,0 +1,71 @@ +# Windows Compatibility Improvements + +## Overview + +Made the codebase Windows-compatible by fixing path handling issues that would cause problems on Windows systems due to hardcoded forward slashes and string concatenation for paths. + +## Changes Made + +### 1. Fixed Default Output Directory Path +**File:** `/workspace/packages/proto-parser/src/options/defaults.ts` + +**Before:** +```typescript +outDir: `${process.cwd()}/out`, +``` + +**After:** +```typescript +import { join } from 'path'; +// ... +outDir: join(process.cwd(), 'out'), +``` + +### 2. Fixed Glob Pattern in Test Utils +**File:** `/workspace/packages/proto-parser/test-utils/index.ts` + +**Before:** +```typescript +glob(outDir + '**/*') +``` + +**After:** +```typescript +glob(join(outDir, '**/*')) +``` + +### 3. Fixed Glob Patterns in Deparser Scripts +**Files:** +- `/workspace/packages/deparser/scripts/make-fixtures-sql.ts` +- `/workspace/packages/deparser/scripts/make-fixtures-ast.ts` +- `/workspace/packages/deparser/scripts/make-fixtures.ts` +- `/workspace/packages/deparser/scripts/make-kitchen-sink.ts` + +**Before:** +```typescript +const fixtures = globSync(`${FIXTURE_DIR}/**/*.sql`); +``` + +**After:** +```typescript +const fixtures = globSync(path.join(FIXTURE_DIR, '**/*.sql')); +``` + +## Why These Changes Matter + +1. **Cross-Platform Compatibility**: Using `path.join()` ensures that the correct path separator is used for each operating system (forward slash on Unix-like systems, backslash on Windows). + +2. **Glob Pattern Compatibility**: While glob patterns typically use forward slashes even on Windows, using `path.join()` ensures consistency and prevents potential issues with path resolution. + +3. **Future-Proof**: These changes make the codebase more maintainable and prevent future Windows-related issues. + +## Verification + +All existing path operations in the codebase were already using proper Node.js path module functions: +- `mkdirSync` with `{ recursive: true }` for directory creation +- `path.join()`, `path.resolve()`, `path.dirname()`, `path.basename()` for path manipulation +- `readFileSync` and `writeFileSync` for file operations + +## No Breaking Changes + +These changes are purely internal and do not affect the public API or behavior of the packages. All functionality remains the same across all platforms. \ No newline at end of file diff --git a/packages/deparser/scripts/make-fixtures-ast.ts b/packages/deparser/scripts/make-fixtures-ast.ts index 4e1d481b..4ac8fd9a 100644 --- a/packages/deparser/scripts/make-fixtures-ast.ts +++ b/packages/deparser/scripts/make-fixtures-ast.ts @@ -17,7 +17,7 @@ function ensureDir(dir: string) { ensureDir(OUT_DIR); -const fixtures = globSync(`${FIXTURE_DIR}/**/*.sql`); +const fixtures = globSync(path.join(FIXTURE_DIR, '**/*.sql')); async function main() { for (const fixturePath of fixtures) { diff --git a/packages/deparser/scripts/make-fixtures-sql.ts b/packages/deparser/scripts/make-fixtures-sql.ts index 02642608..eb8c0eb4 100644 --- a/packages/deparser/scripts/make-fixtures-sql.ts +++ b/packages/deparser/scripts/make-fixtures-sql.ts @@ -16,7 +16,7 @@ function ensureDir(dir: string) { ensureDir(OUT_DIR); -const fixtures = globSync(`${FIXTURE_DIR}/**/*.sql`); +const fixtures = globSync(path.join(FIXTURE_DIR, '**/*.sql')); async function main() { for (const fixturePath of fixtures) { diff --git a/packages/deparser/scripts/make-fixtures.ts b/packages/deparser/scripts/make-fixtures.ts index 7ee65a6c..78c26d57 100644 --- a/packages/deparser/scripts/make-fixtures.ts +++ b/packages/deparser/scripts/make-fixtures.ts @@ -16,7 +16,7 @@ function ensureDir(dir: string) { ensureDir(OUT_DIR); -const fixtures = globSync(`${FIXTURE_DIR}/**/*.sql`); +const fixtures = globSync(path.join(FIXTURE_DIR, '**/*.sql')); async function main() { // Collect deparsed SQL in a single JSON diff --git a/packages/deparser/scripts/make-kitchen-sink.ts b/packages/deparser/scripts/make-kitchen-sink.ts index 78cb3094..92918052 100644 --- a/packages/deparser/scripts/make-kitchen-sink.ts +++ b/packages/deparser/scripts/make-kitchen-sink.ts @@ -27,7 +27,7 @@ it('${name}', async () => { ` }; -const fixtures = globSync(`${FIXTURE_DIR}/**/*.sql`); +const fixtures = globSync(path.join(FIXTURE_DIR, '**/*.sql')); async function main() { for (const fixturePath of fixtures) { diff --git a/packages/proto-parser/src/options/defaults.ts b/packages/proto-parser/src/options/defaults.ts index 5cd0e472..b4f0802a 100644 --- a/packages/proto-parser/src/options/defaults.ts +++ b/packages/proto-parser/src/options/defaults.ts @@ -1,10 +1,11 @@ import deepmerge from 'deepmerge'; +import { join } from 'path'; import { PgProtoParserOptions } from "./types"; // Define default options outside of the class export const defaultPgProtoParserOptions: PgProtoParserOptions = { - outDir: `${process.cwd()}/out`, + outDir: join(process.cwd(), 'out'), includeHeader: true, exclude: [], utils: { diff --git a/packages/proto-parser/test-utils/index.ts b/packages/proto-parser/test-utils/index.ts index d967a1ae..e68a9b59 100644 --- a/packages/proto-parser/test-utils/index.ts +++ b/packages/proto-parser/test-utils/index.ts @@ -29,7 +29,7 @@ export const expectAstsCodeToEqual = (testAst: any, expectAst: any) => { } export const readFilesFromDir = (outDir: string) => - glob(outDir + '**/*').map(file => ({ file: basename(file), code: readFileSync(file, 'utf-8') })); + glob(join(outDir, '**/*')).map(file => ({ file: basename(file), code: readFileSync(file, 'utf-8') })); export const FIXTURES_DIR = resolve(join(__dirname, '../../../__fixtures__/')); From fb6226eb14942579d63027eb9f5d376e61e21cbe Mon Sep 17 00:00:00 2001 From: Dan Lynch Date: Sat, 21 Jun 2025 02:29:46 -0700 Subject: [PATCH 5/9] win --- WINDOWS_COMPATIBILITY.md | 71 ----------------------- packages/cli/src/commands/protogen/cli.ts | 1 + 2 files changed, 1 insertion(+), 71 deletions(-) delete mode 100644 WINDOWS_COMPATIBILITY.md diff --git a/WINDOWS_COMPATIBILITY.md b/WINDOWS_COMPATIBILITY.md deleted file mode 100644 index bbcd6868..00000000 --- a/WINDOWS_COMPATIBILITY.md +++ /dev/null @@ -1,71 +0,0 @@ -# Windows Compatibility Improvements - -## Overview - -Made the codebase Windows-compatible by fixing path handling issues that would cause problems on Windows systems due to hardcoded forward slashes and string concatenation for paths. - -## Changes Made - -### 1. Fixed Default Output Directory Path -**File:** `/workspace/packages/proto-parser/src/options/defaults.ts` - -**Before:** -```typescript -outDir: `${process.cwd()}/out`, -``` - -**After:** -```typescript -import { join } from 'path'; -// ... -outDir: join(process.cwd(), 'out'), -``` - -### 2. Fixed Glob Pattern in Test Utils -**File:** `/workspace/packages/proto-parser/test-utils/index.ts` - -**Before:** -```typescript -glob(outDir + '**/*') -``` - -**After:** -```typescript -glob(join(outDir, '**/*')) -``` - -### 3. Fixed Glob Patterns in Deparser Scripts -**Files:** -- `/workspace/packages/deparser/scripts/make-fixtures-sql.ts` -- `/workspace/packages/deparser/scripts/make-fixtures-ast.ts` -- `/workspace/packages/deparser/scripts/make-fixtures.ts` -- `/workspace/packages/deparser/scripts/make-kitchen-sink.ts` - -**Before:** -```typescript -const fixtures = globSync(`${FIXTURE_DIR}/**/*.sql`); -``` - -**After:** -```typescript -const fixtures = globSync(path.join(FIXTURE_DIR, '**/*.sql')); -``` - -## Why These Changes Matter - -1. **Cross-Platform Compatibility**: Using `path.join()` ensures that the correct path separator is used for each operating system (forward slash on Unix-like systems, backslash on Windows). - -2. **Glob Pattern Compatibility**: While glob patterns typically use forward slashes even on Windows, using `path.join()` ensures consistency and prevents potential issues with path resolution. - -3. **Future-Proof**: These changes make the codebase more maintainable and prevent future Windows-related issues. - -## Verification - -All existing path operations in the codebase were already using proper Node.js path module functions: -- `mkdirSync` with `{ recursive: true }` for directory creation -- `path.join()`, `path.resolve()`, `path.dirname()`, `path.basename()` for path manipulation -- `readFileSync` and `writeFileSync` for file operations - -## No Breaking Changes - -These changes are purely internal and do not affect the public API or behavior of the packages. All functionality remains the same across all platforms. \ No newline at end of file diff --git a/packages/cli/src/commands/protogen/cli.ts b/packages/cli/src/commands/protogen/cli.ts index ce0d7567..a6f0f687 100644 --- a/packages/cli/src/commands/protogen/cli.ts +++ b/packages/cli/src/commands/protogen/cli.ts @@ -44,6 +44,7 @@ export default async (argv: CommandOptions): Promise => { await replaceTextInProtoJS(argv.outFile, argv.originalPackageName, argv.newPackageName); console.log('All operations completed successfully.'); } catch (error) { + // @ts-ignore console.error('An error occurred:', error.message); } From 45d119f3556e388bc3eca242d9fae971cb069072 Mon Sep 17 00:00:00 2001 From: Dan Lynch Date: Sat, 21 Jun 2025 02:33:41 -0700 Subject: [PATCH 6/9] win --- packages/cli/package.json | 2 +- packages/deparser/package.json | 2 +- packages/enums/package.json | 2 +- packages/parser/package.json | 2 +- packages/proto-parser/package.json | 2 +- packages/transform/package.json | 2 +- packages/types/package.json | 2 +- packages/utils/package.json | 2 +- 8 files changed, 8 insertions(+), 8 deletions(-) diff --git a/packages/cli/package.json b/packages/cli/package.json index 43fbafc1..4b0e4d29 100644 --- a/packages/cli/package.json +++ b/packages/cli/package.json @@ -24,7 +24,7 @@ }, "scripts": { "copy": "copyfiles -f ../../LICENSE README.md package.json dist", - "clean": "rimraf dist/**", + "clean": "rimraf dist", "prepare": "npm run build", "build": "npm run clean && tsc && tsc -p tsconfig.esm.json && npm run copy", "build:dev": "npm run clean && tsc --declarationMap && tsc -p tsconfig.esm.json && npm run copy", diff --git a/packages/deparser/package.json b/packages/deparser/package.json index 4764e58f..8bec37da 100644 --- a/packages/deparser/package.json +++ b/packages/deparser/package.json @@ -21,7 +21,7 @@ }, "scripts": { "copy": "copyfiles -f ../../LICENSE README.md package.json dist", - "clean": "rimraf dist/**", + "clean": "rimraf dist", "prepare": "npm run build", "build": "npm run clean && tsc && tsc -p tsconfig.esm.json && npm run copy", "build:dev": "npm run clean && tsc --declarationMap && tsc -p tsconfig.esm.json && npm run copy", diff --git a/packages/enums/package.json b/packages/enums/package.json index 824ccc13..6c99b2f8 100644 --- a/packages/enums/package.json +++ b/packages/enums/package.json @@ -21,7 +21,7 @@ }, "scripts": { "copy": "copyfiles -f ../../LICENSE README.md package.json dist", - "clean": "rimraf dist/**", + "clean": "rimraf dist", "prepare": "npm run build", "build": "npm run build:proto && npm run clean && tsc && tsc -p tsconfig.esm.json && npm run copy", "build:dev": "npm run clean && tsc --declarationMap && tsc -p tsconfig.esm.json && npm run copy", diff --git a/packages/parser/package.json b/packages/parser/package.json index ba9594b8..04543551 100644 --- a/packages/parser/package.json +++ b/packages/parser/package.json @@ -24,7 +24,7 @@ }, "scripts": { "copy": "copyfiles -f ../../LICENSE README.md package.json dist", - "clean": "rimraf dist/**", + "clean": "rimraf dist", "prepare": "npm run build", "build": "npm run clean && tsc && tsc -p tsconfig.esm.json && npm run copy", "build:dev": "npm run clean && tsc --declarationMap && tsc -p tsconfig.esm.json && npm run copy", diff --git a/packages/proto-parser/package.json b/packages/proto-parser/package.json index b4223414..d2473683 100644 --- a/packages/proto-parser/package.json +++ b/packages/proto-parser/package.json @@ -20,7 +20,7 @@ }, "scripts": { "copy": "copyfiles -f ../../LICENSE README.md package.json dist", - "clean": "rimraf dist/**", + "clean": "rimraf dist", "prepare": "npm run build", "build": "npm run clean && tsc && tsc -p tsconfig.esm.json && npm run copy", "build:dev": "npm run clean && tsc --declarationMap && tsc -p tsconfig.esm.json && npm run copy", diff --git a/packages/transform/package.json b/packages/transform/package.json index e66dddcf..b98d727b 100644 --- a/packages/transform/package.json +++ b/packages/transform/package.json @@ -21,7 +21,7 @@ }, "scripts": { "copy": "copyfiles -f ../../LICENSE README.md package.json dist", - "clean": "rimraf dist/**", + "clean": "rimraf dist", "prepare": "npm run build", "build": "npm run build:proto && npm run clean && tsc && tsc -p tsconfig.esm.json && npm run copy", "build:dev": "npm run clean && tsc --declarationMap && tsc -p tsconfig.esm.json && npm run copy", diff --git a/packages/types/package.json b/packages/types/package.json index 877d8f4c..42fc6861 100644 --- a/packages/types/package.json +++ b/packages/types/package.json @@ -21,7 +21,7 @@ }, "scripts": { "copy": "copyfiles -f ../../LICENSE README.md package.json dist", - "clean": "rimraf dist/**", + "clean": "rimraf dist", "prepare": "npm run build", "build": "npm run build:proto && npm run clean && tsc && tsc -p tsconfig.esm.json && npm run copy", "build:dev": "npm run clean && tsc --declarationMap && tsc -p tsconfig.esm.json && npm run copy", diff --git a/packages/utils/package.json b/packages/utils/package.json index 076e48b8..27651043 100644 --- a/packages/utils/package.json +++ b/packages/utils/package.json @@ -21,7 +21,7 @@ }, "scripts": { "copy": "copyfiles -f ../../LICENSE README.md package.json dist", - "clean": "rimraf dist/**", + "clean": "rimraf dist", "prepare": "npm run build", "build": "npm run build:proto && npm run clean && tsc && tsc -p tsconfig.esm.json && npm run copy", "build:dev": "npm run clean && tsc --declarationMap && tsc -p tsconfig.esm.json && npm run copy", From 6bbed6ac4a033122df7694b04e5c96b02d98ce79 Mon Sep 17 00:00:00 2001 From: Dan Lynch Date: Sat, 21 Jun 2025 02:44:00 -0700 Subject: [PATCH 7/9] updates --- .github/workflows/run-tests.yaml | 6 +----- README.md | 5 +---- packages/parser/README.md | 5 +---- 3 files changed, 3 insertions(+), 13 deletions(-) diff --git a/.github/workflows/run-tests.yaml b/.github/workflows/run-tests.yaml index e334ee0f..78206e99 100644 --- a/.github/workflows/run-tests.yaml +++ b/.github/workflows/run-tests.yaml @@ -5,11 +5,7 @@ on: jobs: parser-tests: - runs-on: ${{ matrix.os }} - strategy: - matrix: - os: [ubuntu-latest, windows-latest, macos-latest] - + runs-on: ubuntu-latest steps: - name: checkout uses: actions/checkout@v3 diff --git a/README.md b/README.md index 0c9bd4f4..21c7df23 100644 --- a/README.md +++ b/README.md @@ -11,10 +11,7 @@ -
- - - +

The real PostgreSQL parser for Node.js, `pgsql-parser` provides symmetric parsing and deparsing of SQL statements using the actual [PostgreSQL parser](https://github.com/pganalyze/libpg_query). It allows you to parse SQL queries into AST and modify or reconstruct SQL queries from the AST. diff --git a/packages/parser/README.md b/packages/parser/README.md index 0c9bd4f4..21c7df23 100644 --- a/packages/parser/README.md +++ b/packages/parser/README.md @@ -11,10 +11,7 @@ -
- - - +

The real PostgreSQL parser for Node.js, `pgsql-parser` provides symmetric parsing and deparsing of SQL statements using the actual [PostgreSQL parser](https://github.com/pganalyze/libpg_query). It allows you to parse SQL queries into AST and modify or reconstruct SQL queries from the AST. From 5538f81cb526f11fa0329b20dc4e01d8bc973c00 Mon Sep 17 00:00:00 2001 From: Dan Lynch Date: Sat, 21 Jun 2025 02:49:45 -0700 Subject: [PATCH 8/9] symlinks --- .github/workflows/run-tests.yaml | 6 +++++- package.json | 2 +- 2 files changed, 6 insertions(+), 2 deletions(-) diff --git a/.github/workflows/run-tests.yaml b/.github/workflows/run-tests.yaml index 78206e99..e334ee0f 100644 --- a/.github/workflows/run-tests.yaml +++ b/.github/workflows/run-tests.yaml @@ -5,7 +5,11 @@ on: jobs: parser-tests: - runs-on: ubuntu-latest + runs-on: ${{ matrix.os }} + strategy: + matrix: + os: [ubuntu-latest, windows-latest, macos-latest] + steps: - name: checkout uses: actions/checkout@v3 diff --git a/package.json b/package.json index 707a5476..637609f3 100644 --- a/package.json +++ b/package.json @@ -39,7 +39,7 @@ "prettier": "^3.0.2", "rimraf": "4.4.1", "strip-ansi": "^6", - "symlink-workspace": "^1.9.0", + "symlink-workspace": "^1.10.0", "ts-jest": "^29.1.1", "ts-node": "^10.9.2", "typescript": "^5.1.6" From 18ed90e3c1762f1804659ea781b5d03ec1694351 Mon Sep 17 00:00:00 2001 From: Dan Lynch Date: Sat, 21 Jun 2025 02:53:19 -0700 Subject: [PATCH 9/9] tests --- .github/workflows/run-tests.yaml | 6 +----- 1 file changed, 1 insertion(+), 5 deletions(-) diff --git a/.github/workflows/run-tests.yaml b/.github/workflows/run-tests.yaml index e334ee0f..78206e99 100644 --- a/.github/workflows/run-tests.yaml +++ b/.github/workflows/run-tests.yaml @@ -5,11 +5,7 @@ on: jobs: parser-tests: - runs-on: ${{ matrix.os }} - strategy: - matrix: - os: [ubuntu-latest, windows-latest, macos-latest] - + runs-on: ubuntu-latest steps: - name: checkout uses: actions/checkout@v3