Giter Site home page Giter Site logo

pgsql-parser's Introduction

pgsql-parser

The real PostgreSQL parser for Node.js, pgsql-parser provides symmetric parsing and deparsing of SQL statements using the actual PostgreSQL parser. It allows you to parse SQL queries into AST and modify or reconstruct SQL queries from the AST.

Installation

npm install pgsql-parser

Key Features

  • True PostgreSQL Parsing: Utilizes the real PostgreSQL source code for accurate parsing.
  • Symmetric Parsing and Deparsing: Convert SQL to AST and back, enabling query manipulation.
  • AST Manipulation: Easily modify parts of a SQL statement through the AST.

Parser Example

Rewrite part of a SQL query:

import { parse, deparse } from 'pgsql-parser';

const stmts = parse('SELECT * FROM test_table');

// Assuming the structure of stmts is known and matches the expected type
stmts[0].RawStmt.stmt.SelectStmt.fromClause[0].RangeVar.relname = 'another_table';

console.log(deparse(stmts));

// SELECT * FROM "another_table"

Deparser Example

The pgsql-deparser module serializes ASTs to SQL in pure TypeScript, avoiding the full parser's native dependencies. It's useful when only SQL string conversion from ASTs is needed, and is written in pure TypeScript for easy cross-environment deployment.

Here's how you can use the deparser in your TypeScript code, using @pgsql/utils to create an AST for deparse:

import ast, { SelectStmt } from '@pgsql/utils';
import { deparse } from 'pgsql-deparser';

// This could have been obtained from any JSON or AST, not necessarily @pgsql/utils
const stmt: SelectStmt = ast.selectStmt({
  targetList: [
    ast.resTarget({
      val: ast.columnRef({
        fields: [ast.aStar()]
      })
    })
  ],
  fromClause: [
    ast.rangeVar({
      relname: 'some_table',
      inh: true,
      relpersistence: 'p'
    })
  ],
  limitOption: 'LIMIT_OPTION_DEFAULT',
  op: 'SETOP_NONE'
});

// Modify the AST if needed
stmt.SelectStmt.fromClause[0].RangeVar.relname = 'another_table';

// Deparse the modified AST back to a SQL string
console.log(deparse(stmts));

// Output: SELECT * FROM another_table

CLI

npm install -g pgsql-parser

usage

pgsql-parser <sqlfile>

Documentation

parser.parse(sql)

Parses the query and returns a parse object.

Parameters

parameter type description
query String SQL query

Returns an object in the format:

{ query: <query|Object>,
  error: { message: <message|String>,
           fileName: <fileName|String>,
           lineNumber: <line|Number>,
           cursorPosition: <cursor|Number> }

parser.deparse(query)

Deparses the query tree and returns a formatted SQL statement. This function takes as input a query AST in the same format as the query property of on the result of the parse method. This is the primary functionality of this module.

Parameters

parameter type description
query Object Query tree obtained from parse

Returns a normalized formatted SQL string.

Versions

As of PG 13, PG majors versions maintained will have a matching dedicated major npm version. Only the latest Postgres stable release receives active updates.

Our latest is built with 13-latest branch from libpg_query

PostgreSQL Major Version libpg_query Status npm
13 13-latest Active development latest
12 (n/a) Not supported
11 (n/a) Not supported
10 10-latest Not supported @1.3.1 (tree)

Related

  • pgsql-parser: The real PostgreSQL parser for Node.js, providing symmetric parsing and deparsing of SQL statements with actual PostgreSQL parser integration.
  • pgsql-deparser: A streamlined tool designed for converting PostgreSQL ASTs back into SQL queries, focusing solely on deparser functionality to complement pgsql-parser.
  • pgsql-enums: A utility package offering easy access to PostgreSQL enumeration types in JSON format, aiding in string and integer conversions of enums used within ASTs to compliment pgsql-parser
  • @pgsql/enums: Provides PostgreSQL AST enums in TypeScript, enhancing type safety and usability in projects interacting with PostgreSQL AST nodes.
  • @pgsql/types: Offers TypeScript type definitions for PostgreSQL AST nodes, facilitating type-safe construction, analysis, and manipulation of ASTs.
  • @pgsql/utils: A comprehensive utility library for PostgreSQL, offering type-safe AST node creation and enum value conversions, simplifying the construction and manipulation of PostgreSQL ASTs.
  • pg-proto-parser: A TypeScript tool that parses PostgreSQL Protocol Buffers definitions to generate TypeScript interfaces, utility functions, and JSON mappings for enums.
  • libpg-query: The real PostgreSQL parser exposed for Node.js, used primarily in pgsql-parser for parsing and deparsing SQL queries.

Thanks @lfittl for building the core libpg_query suite:

Credits

Thanks to @zhm for the OG parser that started it all:

Disclaimer

AS DESCRIBED IN THE LICENSES, THE SOFTWARE IS PROVIDED β€œAS IS”, AT YOUR OWN RISK, AND WITHOUT WARRANTIES OF ANY KIND.

No developer or entity involved in creating Software will be liable for any claims or damages whatsoever associated with your use, inability to use, or your interaction with other users of the Software code or Software CLI, including any direct, indirect, incidental, special, exemplary, punitive or consequential damages, or loss of profits, cryptocurrencies, tokens, or anything else of value.

pgsql-parser's People

Contributors

acarl005 avatar benasher44 avatar benny-medflyt avatar dependabot[bot] avatar maschwenk avatar olalonde avatar pyramation avatar tomquist avatar zhm avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar

pgsql-parser's Issues

TypeScript support

I didn't see any available from @types/pgsql-parser nor in the source. Does anyone have definitions available?

Use in client side

Can this npm package be used for client-side sql parsing using something like browserify?

deparse altered "CREATE VIEW" statement, removed OR REPLACE, changed JOIN to INNER JOIN

Original query (with fingerprint 184ff1799cccd685):

CREATE OR REPLACE VIEW public.view_ticket AS
 SELECT a.id,
    a.name,
    a.project,
    a.search,
    a.labels,
    a.minutes,
    b.name AS "user",
    b.email,
    b.language,
    b.photo,
    b.company,
    a.iduser,
    a.iduserlast,
    a.idsolver,
    a.issolved,
    a.ispriority,
    b.isnotification,
    a.datecreated,
    a.dateupdated,
    b.minutes AS minutesuser,
    a.idsolution,
    b."position",
    a.countcomments
   FROM tbl_ticket a
     JOIN tbl_user b ON b.id::text = a.iduser::text
  WHERE a.isremoved = false

Deparsed query (with fingerprint 172d678f094d8695):

CREATE VIEW public.view_ticket AS SELECT a.id,
a.name,
a.project,
a.search,
a.labels,
a.minutes,
b.name AS "user",
b.email,
b.language,
b.photo,
b.company,
a.iduser,
a.iduserlast,
a.idsolver,
a.issolved,
a.ispriority,
b.isnotification,
a.datecreated,
a.dateupdated,
b.minutes AS minutesuser,
a.idsolution,
b.position,
a.countcomments FROM tbl_ticket AS a INNER JOIN tbl_user AS b ON b.id::text = a.iduser::text WHERE a.isremoved = FALSE;
  • Raising because fingerprints are different
  • Happy to create two separate issues for the two alterations

To reproduce:

const fs = require('fs')
const { parse, deparse } = require('pgsql-parser');

async function main() {
    const stmts = parse(`
      CREATE OR REPLACE VIEW public.view_ticket AS
 SELECT a.id,
    a.name,
    a.project,
    a.search,
    a.labels,
    a.minutes,
    b.name AS "user",
    b.email,
    b.language,
    b.photo,
    b.company,
    a.iduser,
    a.iduserlast,
    a.idsolver,
    a.issolved,
    a.ispriority,
    b.isnotification,
    a.datecreated,
    a.dateupdated,
    b.minutes AS minutesuser,
    a.idsolution,
    b."position",
    a.countcomments
   FROM tbl_ticket a
     JOIN tbl_user b ON b.id::text = a.iduser::text
  WHERE a.isremoved = false
    `)
    const stmts2 = deparse(stmts[0])
    console.log(stmts2)
}

main()

Schema at https://github.com/prisma/database-schema-examples/tree/main/postgres/helpdesk

deparse altered "CREATE TABLE" statement, removed quotes from column name

Original query (with fingerprint 45a041188bab2ec5):


CREATE TABLE public.ci_builds_runner_session (
    id bigint NOT NULL,
    build_id integer NOT NULL,
    url character varying NOT NULL,
    certificate character varying,
    "authorization" character varying
)

Deparsed query (with fingerprint 0):

CREATE TABLE public.ci_builds_runner_session (
 	id bigint NOT NULL,
	build_id int NOT NULL,
	url varchar NOT NULL,
	certificate varchar,
	authorization varchar 
);

And since authorization is a keyword, the deparsed query fails to parse again.

To reproduce:

const fs = require('fs')
const { parse, deparse } = require('pgsql-parser');

async function main() {
    const stmts = parse(`
      
CREATE TABLE public.ci_builds_runner_session (
    id bigint NOT NULL,
    build_id integer NOT NULL,
    url character varying NOT NULL,
    certificate character varying,
    "authorization" character varying
)
    `)
    const stmts2 = deparse(stmts[0])
    console.log(stmts2)
}

main()

Schema at https://github.com/prisma/database-schema-examples/tree/main/postgres/gitlab

Deparser options

Hi @pyramation, do you think we can add in options to pass into deparser?

{
   beautify: false,
   semicolon: true
}

For beautify currently there are tabs and newlines in DDL statements and semicolon will be required when we run query in batch.

I just managed to convert from pg-query-native to pgsql-parser, however if the deparsed query without newline would help a lot.

Thanks in advance!

Does not install on Windows 10

The module cannot be installed on Windows 10 due to install script failure. What am I doing wrong here? Already:

  • completely de-installed and re-installed windows-build-tools
  • installed node-gyp globally
  • tried in cmd, ps, ubuntu subsystem shell, git bash (each as admin and as user)
  • switched node version

Any hints?

PS C:\Users\[...]\dev\psqlp> npm install pgsql-parser
npm WARN deprecated [email protected]: request has been deprecated, see https://github.com/request/request/issues/3142
npm WARN deprecated [email protected]: this library is no longer supported

> @pgql/[email protected] preinstall C:\Users\[...]\dev\psqlp\node_modules\@pgql\parse
> script/buildAddon.sh

Der Befehl "script" ist entweder falsch geschrieben oder
konnte nicht gefunden werden.
npm WARN [email protected] No description
npm WARN [email protected] No repository field.

npm ERR! code ELIFECYCLE
npm ERR! errno 1
npm ERR! @pgql/[email protected] preinstall: `script/buildAddon.sh`
npm ERR! Exit status 1
npm ERR!
npm ERR! Failed at the @pgql/[email protected] preinstall script.
npm ERR! This is probably not a problem with npm. There is likely additional logging output above.

npm ERR! A complete log of this run can be found in:
npm ERR!     C:\Users\[...]\AppData\Roaming\npm-cache\_logs\2021-01-06T15_45_10_178Z-debug.log

The German error message translates to: 'The command "script" is either misspelled or could not be resolved.

C:\Users[...]\AppData\Roaming\npm-cache_logs\2021-01-06T15_45_10_178Z-debug.log:

0 info it worked if it ends with ok
1 verbose cli [ 'C:\\Program Files\\nodejs\\node.exe',
1 verbose cli   'C:\\Program Files\\nodejs\\node_modules\\npm\\bin\\npm-cli.js',
1 verbose cli   'install',
1 verbose cli   'pgsql-parser' ]
2 info using [email protected]
3 info using [email protected]
4 verbose npm-session 622ec93012d1b948
5 silly install loadCurrentTree
6 silly install readLocalPackageData
7 http fetch GET 304 https://registry.npmjs.org/pgsql-parser 295ms (from cache)
8 silly pacote tag manifest for pgsql-parser@latest fetched in 313ms
9 timing stage:loadCurrentTree Completed in 376ms
10 silly install loadIdealTree
11 silly install cloneCurrentTreeToIdealTree
12 timing stage:loadIdealTree:cloneCurrentTree Completed in 1ms
13 silly install loadShrinkwrap
14 timing stage:loadIdealTree:loadShrinkwrap Completed in 2ms
15 silly install loadAllDepsIntoIdealTree
16 silly resolveWithNewModule [email protected] checking installable status
17 http fetch GET 304 https://registry.npmjs.org/pgsql-enums 113ms (from cache)
18 silly pacote range manifest for pgsql-enums@^1.0.2 fetched in 115ms
19 silly resolveWithNewModule [email protected] checking installable status
20 http fetch GET 304 https://registry.npmjs.org/@babel%2fruntime 129ms (from cache)
21 silly pacote range manifest for @babel/runtime@^7.11.2 fetched in 134ms
22 silly resolveWithNewModule @babel/[email protected] checking installable status
23 http fetch GET 304 https://registry.npmjs.org/@pgql%2fparse 142ms (from cache)
24 silly pacote version manifest for @pgql/[email protected] fetched in 145ms
25 silly resolveWithNewModule @pgql/[email protected] checking installable status
26 http fetch GET 304 https://registry.npmjs.org/pgsql-deparser 176ms (from cache)
27 silly pacote range manifest for pgsql-deparser@^1.2.3 fetched in 178ms
28 silly resolveWithNewModule [email protected] checking installable status
29 http fetch GET 304 https://registry.npmjs.org/regenerator-runtime 58ms (from cache)
30 silly pacote range manifest for regenerator-runtime@^0.13.4 fetched in 63ms
31 silly resolveWithNewModule [email protected] checking installable status
32 http fetch GET 304 https://registry.npmjs.org/node-addon-api 77ms (from cache)
33 silly pacote range manifest for node-addon-api@^1.6.3 fetched in 80ms
34 silly resolveWithNewModule [email protected] checking installable status
35 http fetch GET 304 https://registry.npmjs.org/node-gyp 81ms (from cache)
36 silly pacote range manifest for node-gyp@^3.3.1 fetched in 86ms
37 silly resolveWithNewModule [email protected] checking installable status
38 http fetch GET 304 https://registry.npmjs.org/nopt 104ms (from cache)
39 http fetch GET 304 https://registry.npmjs.org/mkdirp 105ms (from cache)
40 silly pacote range manifest for nopt@2 || 3 fetched in 109ms
41 silly resolveWithNewModule [email protected] checking installable status
42 silly pacote range manifest for mkdirp@^0.5.0 fetched in 111ms
43 silly resolveWithNewModule [email protected] checking installable status
44 http fetch GET 304 https://registry.npmjs.org/fstream 132ms (from cache)
45 silly pacote range manifest for fstream@^1.0.0 fetched in 136ms
46 silly resolveWithNewModule [email protected] checking installable status
47 http fetch GET 304 https://registry.npmjs.org/osenv 160ms (from cache)
48 silly pacote range manifest for osenv@0 fetched in 163ms
49 silly resolveWithNewModule [email protected] checking installable status
50 http fetch GET 304 https://registry.npmjs.org/npmlog 181ms (from cache)
51 http fetch GET 304 https://registry.npmjs.org/graceful-fs 183ms (from cache)
52 http fetch GET 304 https://registry.npmjs.org/rimraf 181ms (from cache)
53 silly pacote range manifest for npmlog@0 || 1 || 2 || 3 || 4 fetched in 190ms
54 silly resolveWithNewModule [email protected] checking installable status
55 silly pacote range manifest for graceful-fs@^4.1.2 fetched in 193ms
56 silly resolveWithNewModule [email protected] checking installable status
57 silly pacote range manifest for rimraf@2 fetched in 192ms
58 silly resolveWithNewModule [email protected] checking installable status
59 http fetch GET 304 https://registry.npmjs.org/request 200ms (from cache)
60 silly pacote range manifest for request@^2.87.0 fetched in 208ms
61 warn deprecated [email protected]: request has been deprecated, see https://github.com/request/request/issues/3142
62 silly resolveWithNewModule [email protected] checking installable status
63 http fetch GET 304 https://registry.npmjs.org/semver 209ms (from cache)
64 http fetch GET 304 https://registry.npmjs.org/tar 107ms (from cache)
65 silly pacote range manifest for semver@~5.3.0 fetched in 214ms
66 silly resolveWithNewModule [email protected] checking installable status
67 silly pacote range manifest for tar@^2.0.0 fetched in 110ms
68 silly resolveWithNewModule [email protected] checking installable status
69 http fetch GET 304 https://registry.npmjs.org/glob 222ms (from cache)
70 silly pacote range manifest for glob@^7.0.3 fetched in 226ms
71 silly resolveWithNewModule [email protected] checking installable status
72 http fetch GET 304 https://registry.npmjs.org/which 113ms (from cache)
73 silly pacote range manifest for which@1 fetched in 114ms
74 silly resolveWithNewModule [email protected] checking installable status
75 http fetch GET 304 https://registry.npmjs.org/inherits 65ms (from cache)
76 silly pacote range manifest for inherits@~2.0.0 fetched in 68ms
77 silly resolveWithNewModule [email protected] checking installable status
78 http fetch GET 304 https://registry.npmjs.org/minimatch 195ms (from cache)
79 silly pacote range manifest for minimatch@^3.0.4 fetched in 207ms
80 silly resolveWithNewModule [email protected] checking installable status
81 http fetch GET 304 https://registry.npmjs.org/fs.realpath 210ms (from cache)
82 http fetch GET 304 https://registry.npmjs.org/once 212ms (from cache)
83 http fetch GET 304 https://registry.npmjs.org/path-is-absolute 212ms (from cache)
84 silly pacote range manifest for fs.realpath@^1.0.0 fetched in 217ms
85 silly resolveWithNewModule [email protected] checking installable status
86 http fetch GET 304 https://registry.npmjs.org/inflight 215ms (from cache)
87 silly pacote range manifest for once@^1.3.0 fetched in 215ms
88 silly resolveWithNewModule [email protected] checking installable status
89 silly pacote range manifest for path-is-absolute@^1.0.0 fetched in 216ms
90 silly resolveWithNewModule [email protected] checking installable status
91 silly pacote range manifest for inflight@^1.0.4 fetched in 218ms
92 silly resolveWithNewModule [email protected] checking installable status
93 http fetch GET 304 https://registry.npmjs.org/wrappy 137ms (from cache)
94 silly pacote range manifest for wrappy@1 fetched in 142ms
95 silly resolveWithNewModule [email protected] checking installable status
96 http fetch GET 304 https://registry.npmjs.org/brace-expansion 289ms (from cache)
97 silly pacote range manifest for brace-expansion@^1.1.7 fetched in 294ms
98 silly resolveWithNewModule [email protected] checking installable status
99 http fetch GET 304 https://registry.npmjs.org/balanced-match 201ms (from cache)
100 silly pacote range manifest for balanced-match@^1.0.0 fetched in 202ms
101 silly resolveWithNewModule [email protected] checking installable status
102 http fetch GET 304 https://registry.npmjs.org/concat-map 275ms (from cache)
103 silly pacote version manifest for [email protected] fetched in 276ms
104 silly resolveWithNewModule [email protected] checking installable status
105 http fetch GET 304 https://registry.npmjs.org/abbrev 185ms (from cache)
106 silly pacote range manifest for abbrev@1 fetched in 187ms
107 silly resolveWithNewModule [email protected] checking installable status
108 http fetch GET 304 https://registry.npmjs.org/console-control-strings 59ms (from cache)
109 silly pacote range manifest for console-control-strings@~1.1.0 fetched in 62ms
110 silly resolveWithNewModule [email protected] checking installable status
111 http fetch GET 304 https://registry.npmjs.org/are-we-there-yet 70ms (from cache)
112 silly pacote range manifest for are-we-there-yet@~1.1.2 fetched in 71ms
113 silly resolveWithNewModule [email protected] checking installable status
114 http fetch GET 304 https://registry.npmjs.org/set-blocking 95ms (from cache)
115 silly pacote range manifest for set-blocking@~2.0.0 fetched in 98ms
116 silly resolveWithNewModule [email protected] checking installable status
117 http fetch GET 304 https://registry.npmjs.org/gauge 189ms (from cache)
118 silly pacote range manifest for gauge@~2.7.3 fetched in 191ms
119 silly resolveWithNewModule [email protected] checking installable status
120 http fetch GET 304 https://registry.npmjs.org/delegates 85ms (from cache)
121 silly pacote range manifest for delegates@^1.0.0 fetched in 86ms
122 silly resolveWithNewModule [email protected] checking installable status
123 http fetch GET 304 https://registry.npmjs.org/readable-stream 176ms (from cache)
124 silly pacote range manifest for readable-stream@^2.0.6 fetched in 180ms
125 silly resolveWithNewModule [email protected] checking installable status
126 http fetch GET 304 https://registry.npmjs.org/process-nextick-args 80ms (from cache)
127 http fetch GET 304 https://registry.npmjs.org/util-deprecate 80ms (from cache)
128 silly pacote range manifest for process-nextick-args@~2.0.0 fetched in 82ms
129 silly resolveWithNewModule [email protected] checking installable status
130 silly pacote range manifest for util-deprecate@~1.0.1 fetched in 82ms
131 silly resolveWithNewModule [email protected] checking installable status
132 http fetch GET 304 https://registry.npmjs.org/string_decoder 90ms (from cache)
133 http fetch GET 304 https://registry.npmjs.org/safe-buffer 92ms (from cache)
134 silly pacote range manifest for string_decoder@~1.1.1 fetched in 96ms
135 silly resolveWithNewModule [email protected] checking installable status
136 silly pacote range manifest for safe-buffer@~5.1.1 fetched in 97ms
137 silly resolveWithNewModule [email protected] checking installable status
138 http fetch GET 304 https://registry.npmjs.org/isarray 100ms (from cache)
139 silly pacote range manifest for isarray@~1.0.0 fetched in 101ms
140 silly resolveWithNewModule [email protected] checking installable status
141 http fetch GET 304 https://registry.npmjs.org/core-util-is 112ms (from cache)
142 silly pacote range manifest for core-util-is@~1.0.0 fetched in 114ms
143 silly resolveWithNewModule [email protected] checking installable status
144 http fetch GET 304 https://registry.npmjs.org/has-unicode 79ms (from cache)
145 http fetch GET 304 https://registry.npmjs.org/wide-align 79ms (from cache)
146 silly pacote range manifest for has-unicode@^2.0.0 fetched in 81ms
147 silly resolveWithNewModule [email protected] checking installable status
148 silly pacote range manifest for wide-align@^1.1.0 fetched in 81ms
149 silly resolveWithNewModule [email protected] checking installable status
150 http fetch GET 304 https://registry.npmjs.org/strip-ansi 84ms (from cache)
151 silly pacote range manifest for strip-ansi@^3.0.1 fetched in 85ms
152 silly resolveWithNewModule [email protected] checking installable status
153 http fetch GET 304 https://registry.npmjs.org/string-width 96ms (from cache)
154 silly pacote range manifest for string-width@^1.0.1 fetched in 97ms
155 silly resolveWithNewModule [email protected] checking installable status
156 http fetch GET 304 https://registry.npmjs.org/aproba 170ms (from cache)
157 silly pacote range manifest for aproba@^1.0.3 fetched in 172ms
158 silly resolveWithNewModule [email protected] checking installable status
159 http fetch GET 304 https://registry.npmjs.org/signal-exit 202ms (from cache)
160 silly pacote range manifest for signal-exit@^3.0.0 fetched in 204ms
161 silly resolveWithNewModule [email protected] checking installable status
162 http fetch GET 304 https://registry.npmjs.org/object-assign 208ms (from cache)
163 silly pacote range manifest for object-assign@^4.1.0 fetched in 209ms
164 silly resolveWithNewModule [email protected] checking installable status
165 http fetch GET 304 https://registry.npmjs.org/code-point-at 103ms (from cache)
166 silly pacote range manifest for code-point-at@^1.0.0 fetched in 105ms
167 silly resolveWithNewModule [email protected] checking installable status
168 http fetch GET 304 https://registry.npmjs.org/is-fullwidth-code-point 151ms (from cache)
169 silly pacote range manifest for is-fullwidth-code-point@^1.0.0 fetched in 152ms
170 silly resolveWithNewModule [email protected] checking installable status
171 http fetch GET 304 https://registry.npmjs.org/number-is-nan 107ms (from cache)
172 silly pacote range manifest for number-is-nan@^1.0.0 fetched in 109ms
173 silly resolveWithNewModule [email protected] checking installable status
174 http fetch GET 304 https://registry.npmjs.org/ansi-regex 97ms (from cache)
175 silly pacote range manifest for ansi-regex@^2.0.0 fetched in 98ms
176 silly resolveWithNewModule [email protected] checking installable status
177 http fetch GET 304 https://registry.npmjs.org/os-homedir 93ms (from cache)
178 silly pacote range manifest for os-homedir@^1.0.0 fetched in 95ms
179 silly resolveWithNewModule [email protected] checking installable status
180 http fetch GET 304 https://registry.npmjs.org/os-tmpdir 133ms (from cache)
181 silly pacote range manifest for os-tmpdir@^1.0.0 fetched in 134ms
182 silly resolveWithNewModule [email protected] checking installable status
183 http fetch GET 304 https://registry.npmjs.org/combined-stream 102ms (from cache)
184 silly pacote range manifest for combined-stream@~1.0.6 fetched in 112ms
185 silly resolveWithNewModule [email protected] checking installable status
186 http fetch GET 304 https://registry.npmjs.org/aws4 132ms (from cache)
187 http fetch GET 304 https://registry.npmjs.org/har-validator 134ms (from cache)
188 silly pacote range manifest for aws4@^1.8.0 fetched in 143ms
189 silly resolveWithNewModule [email protected] checking installable status
190 silly pacote range manifest for har-validator@~5.1.3 fetched in 143ms
191 warn deprecated [email protected]: this library is no longer supported
192 silly resolveWithNewModule [email protected] checking installable status
193 http fetch GET 304 https://registry.npmjs.org/caseless 153ms (from cache)
194 silly pacote range manifest for caseless@~0.12.0 fetched in 161ms
195 silly resolveWithNewModule [email protected] checking installable status
196 http fetch GET 304 https://registry.npmjs.org/form-data 164ms (from cache)
197 silly pacote range manifest for form-data@~2.3.2 fetched in 169ms
198 silly resolveWithNewModule [email protected] checking installable status
199 http fetch GET 304 https://registry.npmjs.org/http-signature 184ms (from cache)
200 silly pacote range manifest for http-signature@~1.2.0 fetched in 187ms
201 silly resolveWithNewModule [email protected] checking installable status
202 http fetch GET 304 https://registry.npmjs.org/extend 205ms (from cache)
203 silly pacote range manifest for extend@~3.0.2 fetched in 209ms
204 silly resolveWithNewModule [email protected] checking installable status
205 http fetch GET 304 https://registry.npmjs.org/forever-agent 232ms (from cache)
206 silly pacote range manifest for forever-agent@~0.6.1 fetched in 235ms
207 silly resolveWithNewModule [email protected] checking installable status
208 http fetch GET 304 https://registry.npmjs.org/isstream 145ms (from cache)
209 silly pacote range manifest for isstream@~0.1.2 fetched in 150ms
210 silly resolveWithNewModule [email protected] checking installable status
211 http fetch GET 304 https://registry.npmjs.org/is-typedarray 265ms (from cache)
212 silly pacote range manifest for is-typedarray@~1.0.0 fetched in 268ms
213 silly resolveWithNewModule [email protected] checking installable status
214 http fetch GET 304 https://registry.npmjs.org/aws-sign2 282ms (from cache)
215 silly pacote range manifest for aws-sign2@~0.7.0 fetched in 284ms
216 silly resolveWithNewModule [email protected] checking installable status
217 http fetch GET 304 https://registry.npmjs.org/json-stringify-safe 140ms (from cache)
218 silly pacote range manifest for json-stringify-safe@~5.0.1 fetched in 145ms
219 silly resolveWithNewModule [email protected] checking installable status
220 http fetch GET 304 https://registry.npmjs.org/mime-types 148ms (from cache)
221 silly pacote range manifest for mime-types@~2.1.19 fetched in 155ms
222 silly resolveWithNewModule [email protected] checking installable status
223 http fetch GET 304 https://registry.npmjs.org/qs 128ms (from cache)
224 http fetch GET 304 https://registry.npmjs.org/oauth-sign 156ms (from cache)
225 silly pacote range manifest for qs@~6.5.2 fetched in 132ms
226 silly resolveWithNewModule [email protected] checking installable status
227 silly pacote range manifest for oauth-sign@~0.9.0 fetched in 159ms
228 silly resolveWithNewModule [email protected] checking installable status
229 http fetch GET 304 https://registry.npmjs.org/tough-cookie 116ms (from cache)
230 silly pacote range manifest for tough-cookie@~2.5.0 fetched in 118ms
231 silly resolveWithNewModule [email protected] checking installable status
232 http fetch GET 304 https://registry.npmjs.org/performance-now 163ms (from cache)
233 silly pacote range manifest for performance-now@^2.1.0 fetched in 164ms
234 silly resolveWithNewModule [email protected] checking installable status
235 http fetch GET 304 https://registry.npmjs.org/tunnel-agent 106ms (from cache)
236 silly pacote range manifest for tunnel-agent@^0.6.0 fetched in 108ms
237 silly resolveWithNewModule [email protected] checking installable status
238 http fetch GET 304 https://registry.npmjs.org/uuid 121ms (from cache)
239 silly pacote range manifest for uuid@^3.3.2 fetched in 124ms
240 silly resolveWithNewModule [email protected] checking installable status
241 http fetch GET 304 https://registry.npmjs.org/delayed-stream 115ms (from cache)
242 silly pacote range manifest for delayed-stream@~1.0.0 fetched in 118ms
243 silly resolveWithNewModule [email protected] checking installable status
244 http fetch GET 304 https://registry.npmjs.org/asynckit 94ms (from cache)
245 silly pacote range manifest for asynckit@^0.4.0 fetched in 95ms
246 silly resolveWithNewModule [email protected] checking installable status
247 http fetch GET 304 https://registry.npmjs.org/mime-db 88ms (from cache)
248 silly pacote version manifest for [email protected] fetched in 90ms
249 silly resolveWithNewModule [email protected] checking installable status
250 http fetch GET 304 https://registry.npmjs.org/ajv 162ms (from cache)
251 silly pacote range manifest for ajv@^6.12.3 fetched in 170ms
252 silly resolveWithNewModule [email protected] checking installable status
253 http fetch GET 304 https://registry.npmjs.org/har-schema 275ms (from cache)
254 silly pacote range manifest for har-schema@^2.0.0 fetched in 276ms
255 silly resolveWithNewModule [email protected] checking installable status
256 http fetch GET 304 https://registry.npmjs.org/fast-json-stable-stringify 86ms (from cache)
257 silly pacote range manifest for fast-json-stable-stringify@^2.0.0 fetched in 88ms
258 silly resolveWithNewModule [email protected] checking installable status
259 http fetch GET 304 https://registry.npmjs.org/json-schema-traverse 93ms (from cache)
260 silly pacote range manifest for json-schema-traverse@^0.4.1 fetched in 95ms
261 silly resolveWithNewModule [email protected] checking installable status
262 http fetch GET 304 https://registry.npmjs.org/fast-deep-equal 113ms (from cache)
263 silly pacote range manifest for fast-deep-equal@^3.1.1 fetched in 116ms
264 silly resolveWithNewModule [email protected] checking installable status
265 http fetch GET 304 https://registry.npmjs.org/uri-js 151ms (from cache)
266 silly pacote range manifest for uri-js@^4.2.2 fetched in 152ms
267 silly resolveWithNewModule [email protected] checking installable status
268 http fetch GET 304 https://registry.npmjs.org/punycode 103ms (from cache)
269 silly pacote range manifest for punycode@^2.1.0 fetched in 104ms
270 silly resolveWithNewModule [email protected] checking installable status
271 http fetch GET 304 https://registry.npmjs.org/jsprim 127ms (from cache)
272 silly pacote range manifest for jsprim@^1.2.2 fetched in 130ms
273 silly resolveWithNewModule [email protected] checking installable status
274 http fetch GET 304 https://registry.npmjs.org/sshpk 132ms (from cache)
275 silly pacote range manifest for sshpk@^1.7.0 fetched in 135ms
276 silly resolveWithNewModule [email protected] checking installable status
277 http fetch GET 304 https://registry.npmjs.org/assert-plus 142ms (from cache)
278 silly pacote range manifest for assert-plus@^1.0.0 fetched in 143ms
279 silly resolveWithNewModule [email protected] checking installable status
280 http fetch GET 304 https://registry.npmjs.org/verror 109ms (from cache)
281 silly pacote version manifest for [email protected] fetched in 111ms
282 silly resolveWithNewModule [email protected] checking installable status
283 http fetch GET 304 https://registry.npmjs.org/json-schema 116ms (from cache)
284 silly pacote version manifest for [email protected] fetched in 117ms
285 silly resolveWithNewModule [email protected] checking installable status
286 http fetch GET 304 https://registry.npmjs.org/extsprintf 124ms (from cache)
287 silly pacote version manifest for [email protected] fetched in 125ms
288 silly resolveWithNewModule [email protected] checking installable status
289 http fetch GET 304 https://registry.npmjs.org/bcrypt-pbkdf 217ms (from cache)
290 http fetch GET 304 https://registry.npmjs.org/safer-buffer 220ms (from cache)
291 silly pacote range manifest for bcrypt-pbkdf@^1.0.0 fetched in 221ms
292 silly resolveWithNewModule [email protected] checking installable status
293 silly pacote range manifest for safer-buffer@^2.0.2 fetched in 226ms
294 silly resolveWithNewModule [email protected] checking installable status
295 http fetch GET 304 https://registry.npmjs.org/asn1 235ms (from cache)
296 http fetch GET 304 https://registry.npmjs.org/jsbn 235ms (from cache)
297 http fetch GET 304 https://registry.npmjs.org/ecc-jsbn 238ms (from cache)
298 silly pacote range manifest for asn1@~0.2.3 fetched in 241ms
299 silly resolveWithNewModule [email protected] checking installable status
300 silly pacote range manifest for jsbn@~0.1.0 fetched in 241ms
301 silly resolveWithNewModule [email protected] checking installable status
302 silly pacote range manifest for ecc-jsbn@~0.1.1 fetched in 242ms
303 silly resolveWithNewModule [email protected] checking installable status
304 http fetch GET 304 https://registry.npmjs.org/tweetnacl 243ms (from cache)
305 http fetch GET 304 https://registry.npmjs.org/dashdash 244ms (from cache)
306 http fetch GET 304 https://registry.npmjs.org/getpass 246ms (from cache)
307 silly pacote range manifest for tweetnacl@~0.14.0 fetched in 246ms
308 silly resolveWithNewModule [email protected] checking installable status
309 silly pacote range manifest for dashdash@^1.12.0 fetched in 248ms
310 silly resolveWithNewModule [email protected] checking installable status
311 silly pacote range manifest for getpass@^0.1.1 fetched in 248ms
312 silly resolveWithNewModule [email protected] checking installable status
313 http fetch GET 304 https://registry.npmjs.org/psl 194ms (from cache)
314 silly pacote range manifest for psl@^1.1.28 fetched in 200ms
315 silly resolveWithNewModule [email protected] checking installable status
316 http fetch GET 200 https://registry.npmjs.org/block-stream 9ms (from cache)
317 silly pacote range manifest for block-stream@* fetched in 16ms
318 silly resolveWithNewModule [email protected] checking installable status
319 http fetch GET 304 https://registry.npmjs.org/isexe 126ms (from cache)
320 silly pacote range manifest for isexe@^2.0.0 fetched in 129ms
321 silly resolveWithNewModule [email protected] checking installable status
322 http fetch GET 304 https://registry.npmjs.org/dotty 122ms (from cache)
323 silly pacote version manifest for [email protected] fetched in 125ms
324 silly resolveWithNewModule [email protected] checking installable status
325 timing stage:loadIdealTree:loadAllDepsIntoIdealTree Completed in 5284ms
326 timing stage:loadIdealTree Completed in 5414ms
327 silly currentTree [email protected]
327 silly currentTree +-- [email protected]
327 silly currentTree `-- [email protected]
328 silly idealTree [email protected]
328 silly idealTree +-- @babel/[email protected]
328 silly idealTree +-- @pgql/[email protected]
328 silly idealTree +-- [email protected]
328 silly idealTree +-- [email protected]
328 silly idealTree +-- [email protected]
328 silly idealTree +-- [email protected]
328 silly idealTree +-- [email protected]
328 silly idealTree +-- [email protected]
328 silly idealTree +-- [email protected]
328 silly idealTree +-- [email protected]
328 silly idealTree +-- [email protected]
328 silly idealTree +-- [email protected]
328 silly idealTree +-- [email protected]
328 silly idealTree +-- [email protected]
328 silly idealTree +-- [email protected]
328 silly idealTree +-- [email protected]
328 silly idealTree +-- [email protected]
328 silly idealTree +-- [email protected]
328 silly idealTree +-- [email protected]
328 silly idealTree +-- [email protected]
328 silly idealTree +-- [email protected]
328 silly idealTree +-- [email protected]
328 silly idealTree +-- [email protected]
328 silly idealTree +-- [email protected]
328 silly idealTree +-- [email protected]
328 silly idealTree +-- [email protected]
328 silly idealTree +-- [email protected]
328 silly idealTree +-- [email protected]
328 silly idealTree +-- [email protected]
328 silly idealTree +-- [email protected]
328 silly idealTree +-- [email protected]
328 silly idealTree +-- [email protected]
328 silly idealTree +-- [email protected]
328 silly idealTree +-- [email protected]
328 silly idealTree +-- [email protected]
328 silly idealTree +-- [email protected]
328 silly idealTree +-- [email protected]
328 silly idealTree +-- [email protected]
328 silly idealTree +-- [email protected]
328 silly idealTree +-- [email protected]
328 silly idealTree +-- [email protected]
328 silly idealTree +-- [email protected]
328 silly idealTree +-- [email protected]
328 silly idealTree +-- [email protected]
328 silly idealTree +-- [email protected]
328 silly idealTree +-- [email protected]
328 silly idealTree +-- [email protected]
328 silly idealTree +-- [email protected]
328 silly idealTree +-- [email protected]
328 silly idealTree +-- [email protected]
328 silly idealTree +-- [email protected]
328 silly idealTree +-- [email protected]
328 silly idealTree +-- [email protected]
328 silly idealTree +-- [email protected]
328 silly idealTree +-- [email protected]
328 silly idealTree +-- [email protected]
328 silly idealTree +-- [email protected]
328 silly idealTree +-- [email protected]
328 silly idealTree +-- [email protected]
328 silly idealTree +-- [email protected]
328 silly idealTree +-- [email protected]
328 silly idealTree +-- [email protected]
328 silly idealTree +-- [email protected]
328 silly idealTree +-- [email protected]
328 silly idealTree +-- [email protected]
328 silly idealTree +-- [email protected]
328 silly idealTree +-- [email protected]
328 silly idealTree +-- [email protected]
328 silly idealTree +-- [email protected]
328 silly idealTree +-- [email protected]
328 silly idealTree +-- [email protected]
328 silly idealTree +-- [email protected]
328 silly idealTree +-- [email protected]
328 silly idealTree +-- [email protected]
328 silly idealTree +-- [email protected]
328 silly idealTree +-- [email protected]
328 silly idealTree +-- [email protected]
328 silly idealTree +-- [email protected]
328 silly idealTree +-- [email protected]
328 silly idealTree +-- [email protected]
328 silly idealTree +-- [email protected]
328 silly idealTree +-- [email protected]
328 silly idealTree +-- [email protected]
328 silly idealTree +-- [email protected]
328 silly idealTree +-- [email protected]
328 silly idealTree +-- [email protected]
328 silly idealTree +-- [email protected]
328 silly idealTree +-- [email protected]
328 silly idealTree +-- [email protected]
328 silly idealTree +-- [email protected]
328 silly idealTree +-- [email protected]
328 silly idealTree +-- [email protected]
328 silly idealTree +-- [email protected]
328 silly idealTree +-- [email protected]
328 silly idealTree +-- [email protected]
328 silly idealTree +-- [email protected]
328 silly idealTree +-- [email protected]
328 silly idealTree +-- [email protected]
328 silly idealTree +-- [email protected]
328 silly idealTree +-- [email protected]
328 silly idealTree +-- [email protected]
328 silly idealTree +-- [email protected]
328 silly idealTree +-- [email protected]
328 silly idealTree +-- [email protected]
328 silly idealTree `-- [email protected]
329 silly install generateActionsToTake
330 timing stage:generateActionsToTake Completed in 23ms
331 silly diffTrees action count 103
332 silly diffTrees add [email protected]
333 silly diffTrees add [email protected]
334 silly diffTrees add [email protected]
335 silly diffTrees add [email protected]
336 silly diffTrees add [email protected]
337 silly diffTrees add [email protected]
338 silly diffTrees add [email protected]
339 silly diffTrees add [email protected]
340 silly diffTrees add [email protected]
341 silly diffTrees add [email protected]
342 silly diffTrees add [email protected]
343 silly diffTrees add [email protected]
344 silly diffTrees add [email protected]
345 silly diffTrees add [email protected]
346 silly diffTrees add [email protected]
347 silly diffTrees add [email protected]
348 silly diffTrees add [email protected]
349 silly diffTrees add [email protected]
350 silly diffTrees add [email protected]
351 silly diffTrees add [email protected]
352 silly diffTrees add [email protected]
353 silly diffTrees add [email protected]
354 silly diffTrees add [email protected]
355 silly diffTrees add [email protected]
356 silly diffTrees add [email protected]
357 silly diffTrees add [email protected]
358 silly diffTrees add [email protected]
359 silly diffTrees add [email protected]
360 silly diffTrees add [email protected]
361 silly diffTrees add [email protected]
362 silly diffTrees add [email protected]
363 silly diffTrees add [email protected]
364 silly diffTrees add [email protected]
365 silly diffTrees add [email protected]
366 silly diffTrees add [email protected]
367 silly diffTrees add [email protected]
368 silly diffTrees add [email protected]
369 silly diffTrees add [email protected]
370 silly diffTrees add [email protected]
371 silly diffTrees add [email protected]
372 silly diffTrees add [email protected]
373 silly diffTrees add [email protected]
374 silly diffTrees add [email protected]
375 silly diffTrees add [email protected]
376 silly diffTrees add [email protected]
377 silly diffTrees add [email protected]
378 silly diffTrees add [email protected]
379 silly diffTrees add [email protected]
380 silly diffTrees add [email protected]
381 silly diffTrees add [email protected]
382 silly diffTrees add [email protected]
383 silly diffTrees add [email protected]
384 silly diffTrees add [email protected]
385 silly diffTrees add [email protected]
386 silly diffTrees add [email protected]
387 silly diffTrees add [email protected]
388 silly diffTrees add [email protected]
389 silly diffTrees add [email protected]
390 silly diffTrees add [email protected]
391 silly diffTrees add [email protected]
392 silly diffTrees add @babel/[email protected]
393 silly diffTrees add [email protected]
394 silly diffTrees add [email protected]
395 silly diffTrees add [email protected]
396 silly diffTrees add [email protected]
397 silly diffTrees add [email protected]
398 silly diffTrees add [email protected]
399 silly diffTrees add [email protected]
400 silly diffTrees add [email protected]
401 silly diffTrees add [email protected]
402 silly diffTrees add [email protected]
403 silly diffTrees add [email protected]
404 silly diffTrees add [email protected]
405 silly diffTrees add [email protected]
406 silly diffTrees add [email protected]
407 silly diffTrees add [email protected]
408 silly diffTrees add [email protected]
409 silly diffTrees add [email protected]
410 silly diffTrees add [email protected]
411 silly diffTrees add [email protected]
412 silly diffTrees add [email protected]
413 silly diffTrees add [email protected]
414 silly diffTrees add [email protected]
415 silly diffTrees add [email protected]
416 silly diffTrees add [email protected]
417 silly diffTrees add [email protected]
418 silly diffTrees add [email protected]
419 silly diffTrees add [email protected]
420 silly diffTrees add [email protected]
421 silly diffTrees add [email protected]
422 silly diffTrees add [email protected]
423 silly diffTrees add [email protected]
424 silly diffTrees add [email protected]
425 silly diffTrees add [email protected]
426 silly diffTrees add [email protected]
427 silly diffTrees add [email protected]
428 silly diffTrees add [email protected]
429 silly diffTrees add [email protected]
430 silly diffTrees add [email protected]
431 silly diffTrees add [email protected]
432 silly diffTrees add @pgql/[email protected]
433 silly diffTrees add [email protected]
434 silly diffTrees add [email protected]
435 silly decomposeActions action count 824
436 silly decomposeActions fetch [email protected]
437 silly decomposeActions extract [email protected]
438 silly decomposeActions preinstall [email protected]
439 silly decomposeActions build [email protected]
440 silly decomposeActions install [email protected]
441 silly decomposeActions postinstall [email protected]
442 silly decomposeActions finalize [email protected]
443 silly decomposeActions refresh-package-json [email protected]
444 silly decomposeActions fetch [email protected]
445 silly decomposeActions extract [email protected]
446 silly decomposeActions preinstall [email protected]
447 silly decomposeActions build [email protected]
448 silly decomposeActions install [email protected]
449 silly decomposeActions postinstall [email protected]
450 silly decomposeActions finalize [email protected]
451 silly decomposeActions refresh-package-json [email protected]
452 silly decomposeActions fetch [email protected]
453 silly decomposeActions extract [email protected]
454 silly decomposeActions preinstall [email protected]
455 silly decomposeActions build [email protected]
456 silly decomposeActions install [email protected]
457 silly decomposeActions postinstall [email protected]
458 silly decomposeActions finalize [email protected]
459 silly decomposeActions refresh-package-json [email protected]
460 silly decomposeActions fetch [email protected]
461 silly decomposeActions extract [email protected]
462 silly decomposeActions preinstall [email protected]
463 silly decomposeActions build [email protected]
464 silly decomposeActions install [email protected]
465 silly decomposeActions postinstall [email protected]
466 silly decomposeActions finalize [email protected]
467 silly decomposeActions refresh-package-json [email protected]
468 silly decomposeActions fetch [email protected]
469 silly decomposeActions extract [email protected]
470 silly decomposeActions preinstall [email protected]
471 silly decomposeActions build [email protected]
472 silly decomposeActions install [email protected]
473 silly decomposeActions postinstall [email protected]
474 silly decomposeActions finalize [email protected]
475 silly decomposeActions refresh-package-json [email protected]
476 silly decomposeActions fetch [email protected]
477 silly decomposeActions extract [email protected]
478 silly decomposeActions preinstall [email protected]
479 silly decomposeActions build [email protected]
480 silly decomposeActions install [email protected]
481 silly decomposeActions postinstall [email protected]
482 silly decomposeActions finalize [email protected]
483 silly decomposeActions refresh-package-json [email protected]
484 silly decomposeActions fetch [email protected]
485 silly decomposeActions extract [email protected]
486 silly decomposeActions preinstall [email protected]
487 silly decomposeActions build [email protected]
488 silly decomposeActions install [email protected]
489 silly decomposeActions postinstall [email protected]
490 silly decomposeActions finalize [email protected]
491 silly decomposeActions refresh-package-json [email protected]
492 silly decomposeActions fetch [email protected]
493 silly decomposeActions extract [email protected]
494 silly decomposeActions preinstall [email protected]
495 silly decomposeActions build [email protected]
496 silly decomposeActions install [email protected]
497 silly decomposeActions postinstall [email protected]
498 silly decomposeActions finalize [email protected]
499 silly decomposeActions refresh-package-json [email protected]
500 silly decomposeActions fetch [email protected]
501 silly decomposeActions extract [email protected]
502 silly decomposeActions preinstall [email protected]
503 silly decomposeActions build [email protected]
504 silly decomposeActions install [email protected]
505 silly decomposeActions postinstall [email protected]
506 silly decomposeActions finalize [email protected]
507 silly decomposeActions refresh-package-json [email protected]
508 silly decomposeActions fetch [email protected]
509 silly decomposeActions extract [email protected]
510 silly decomposeActions preinstall [email protected]
511 silly decomposeActions build [email protected]
512 silly decomposeActions install [email protected]
513 silly decomposeActions postinstall [email protected]
514 silly decomposeActions finalize [email protected]
515 silly decomposeActions refresh-package-json [email protected]
516 silly decomposeActions fetch [email protected]
517 silly decomposeActions extract [email protected]
518 silly decomposeActions preinstall [email protected]
519 silly decomposeActions build [email protected]
520 silly decomposeActions install [email protected]
521 silly decomposeActions postinstall [email protected]
522 silly decomposeActions finalize [email protected]
523 silly decomposeActions refresh-package-json [email protected]
524 silly decomposeActions fetch [email protected]
525 silly decomposeActions extract [email protected]
526 silly decomposeActions preinstall [email protected]
527 silly decomposeActions build [email protected]
528 silly decomposeActions install [email protected]
529 silly decomposeActions postinstall [email protected]
530 silly decomposeActions finalize [email protected]
531 silly decomposeActions refresh-package-json [email protected]
532 silly decomposeActions fetch [email protected]
533 silly decomposeActions extract [email protected]
534 silly decomposeActions preinstall [email protected]
535 silly decomposeActions build [email protected]
536 silly decomposeActions install [email protected]
537 silly decomposeActions postinstall [email protected]
538 silly decomposeActions finalize [email protected]
539 silly decomposeActions refresh-package-json [email protected]
540 silly decomposeActions fetch [email protected]
541 silly decomposeActions extract [email protected]
542 silly decomposeActions preinstall [email protected]
543 silly decomposeActions build [email protected]
544 silly decomposeActions install [email protected]
545 silly decomposeActions postinstall [email protected]
546 silly decomposeActions finalize [email protected]
547 silly decomposeActions refresh-package-json [email protected]
548 silly decomposeActions fetch [email protected]
549 silly decomposeActions extract [email protected]
550 silly decomposeActions preinstall [email protected]
551 silly decomposeActions build [email protected]
552 silly decomposeActions install [email protected]
553 silly decomposeActions postinstall [email protected]
554 silly decomposeActions finalize [email protected]
555 silly decomposeActions refresh-package-json [email protected]
556 silly decomposeActions fetch [email protected]
557 silly decomposeActions extract [email protected]
558 silly decomposeActions preinstall [email protected]
559 silly decomposeActions build [email protected]
560 silly decomposeActions install [email protected]
561 silly decomposeActions postinstall [email protected]
562 silly decomposeActions finalize [email protected]
563 silly decomposeActions refresh-package-json [email protected]
564 silly decomposeActions fetch [email protected]
565 silly decomposeActions extract [email protected]
566 silly decomposeActions preinstall [email protected]
567 silly decomposeActions build [email protected]
568 silly decomposeActions install [email protected]
569 silly decomposeActions postinstall [email protected]
570 silly decomposeActions finalize [email protected]
571 silly decomposeActions refresh-package-json [email protected]
572 silly decomposeActions fetch [email protected]
573 silly decomposeActions extract [email protected]
574 silly decomposeActions preinstall [email protected]
575 silly decomposeActions build [email protected]
576 silly decomposeActions install [email protected]
577 silly decomposeActions postinstall [email protected]
578 silly decomposeActions finalize [email protected]
579 silly decomposeActions refresh-package-json [email protected]
580 silly decomposeActions fetch [email protected]
581 silly decomposeActions extract [email protected]
582 silly decomposeActions preinstall [email protected]
583 silly decomposeActions build [email protected]
584 silly decomposeActions install [email protected]
585 silly decomposeActions postinstall [email protected]
586 silly decomposeActions finalize [email protected]
587 silly decomposeActions refresh-package-json [email protected]
588 silly decomposeActions fetch [email protected]
589 silly decomposeActions extract [email protected]
590 silly decomposeActions preinstall [email protected]
591 silly decomposeActions build [email protected]
592 silly decomposeActions install [email protected]
593 silly decomposeActions postinstall [email protected]
594 silly decomposeActions finalize [email protected]
595 silly decomposeActions refresh-package-json [email protected]
596 silly decomposeActions fetch [email protected]
597 silly decomposeActions extract [email protected]
598 silly decomposeActions preinstall [email protected]
599 silly decomposeActions build [email protected]
600 silly decomposeActions install [email protected]
601 silly decomposeActions postinstall [email protected]
602 silly decomposeActions finalize [email protected]
603 silly decomposeActions refresh-package-json [email protected]
604 silly decomposeActions fetch [email protected]
605 silly decomposeActions extract [email protected]
606 silly decomposeActions preinstall [email protected]
607 silly decomposeActions build [email protected]
608 silly decomposeActions install [email protected]
609 silly decomposeActions postinstall [email protected]
610 silly decomposeActions finalize [email protected]
611 silly decomposeActions refresh-package-json [email protected]
612 silly decomposeActions fetch [email protected]
613 silly decomposeActions extract [email protected]
614 silly decomposeActions preinstall [email protected]
615 silly decomposeActions build [email protected]
616 silly decomposeActions install [email protected]
617 silly decomposeActions postinstall [email protected]
618 silly decomposeActions finalize [email protected]
619 silly decomposeActions refresh-package-json [email protected]
620 silly decomposeActions fetch [email protected]
621 silly decomposeActions extract [email protected]
622 silly decomposeActions preinstall [email protected]
623 silly decomposeActions build [email protected]
624 silly decomposeActions install [email protected]
625 silly decomposeActions postinstall [email protected]
626 silly decomposeActions finalize [email protected]
627 silly decomposeActions refresh-package-json [email protected]
628 silly decomposeActions fetch [email protected]
629 silly decomposeActions extract [email protected]
630 silly decomposeActions preinstall [email protected]
631 silly decomposeActions build [email protected]
632 silly decomposeActions install [email protected]
633 silly decomposeActions postinstall [email protected]
634 silly decomposeActions finalize [email protected]
635 silly decomposeActions refresh-package-json [email protected]
636 silly decomposeActions fetch [email protected]
637 silly decomposeActions extract [email protected]
638 silly decomposeActions preinstall [email protected]
639 silly decomposeActions build [email protected]
640 silly decomposeActions install [email protected]
641 silly decomposeActions postinstall [email protected]
642 silly decomposeActions finalize [email protected]
643 silly decomposeActions refresh-package-json [email protected]
644 silly decomposeActions fetch [email protected]
645 silly decomposeActions extract [email protected]
646 silly decomposeActions preinstall [email protected]
647 silly decomposeActions build [email protected]
648 silly decomposeActions install [email protected]
649 silly decomposeActions postinstall [email protected]
650 silly decomposeActions finalize [email protected]
651 silly decomposeActions refresh-package-json [email protected]
652 silly decomposeActions fetch [email protected]
653 silly decomposeActions extract [email protected]
654 silly decomposeActions preinstall [email protected]
655 silly decomposeActions build [email protected]
656 silly decomposeActions install [email protected]
657 silly decomposeActions postinstall [email protected]
658 silly decomposeActions finalize [email protected]
659 silly decomposeActions refresh-package-json [email protected]
660 silly decomposeActions fetch [email protected]
661 silly decomposeActions extract [email protected]
662 silly decomposeActions preinstall [email protected]
663 silly decomposeActions build [email protected]
664 silly decomposeActions install [email protected]
665 silly decomposeActions postinstall [email protected]
666 silly decomposeActions finalize [email protected]
667 silly decomposeActions refresh-package-json [email protected]
668 silly decomposeActions fetch [email protected]
669 silly decomposeActions extract [email protected]
670 silly decomposeActions preinstall [email protected]
671 silly decomposeActions build [email protected]
672 silly decomposeActions install [email protected]
673 silly decomposeActions postinstall [email protected]
674 silly decomposeActions finalize [email protected]
675 silly decomposeActions refresh-package-json [email protected]
676 silly decomposeActions fetch [email protected]
677 silly decomposeActions extract [email protected]
678 silly decomposeActions preinstall [email protected]
679 silly decomposeActions build [email protected]
680 silly decomposeActions install [email protected]
681 silly decomposeActions postinstall [email protected]
682 silly decomposeActions finalize [email protected]
683 silly decomposeActions refresh-package-json [email protected]
684 silly decomposeActions fetch [email protected]
685 silly decomposeActions extract [email protected]
686 silly decomposeActions preinstall [email protected]
687 silly decomposeActions build [email protected]
688 silly decomposeActions install [email protected]
689 silly decomposeActions postinstall [email protected]
690 silly decomposeActions finalize [email protected]
691 silly decomposeActions refresh-package-json [email protected]
692 silly decomposeActions fetch [email protected]
693 silly decomposeActions extract [email protected]
694 silly decomposeActions preinstall [email protected]
695 silly decomposeActions build [email protected]
696 silly decomposeActions install [email protected]
697 silly decomposeActions postinstall [email protected]
698 silly decomposeActions finalize [email protected]
699 silly decomposeActions refresh-package-json [email protected]
700 silly decomposeActions fetch [email protected]
701 silly decomposeActions extract [email protected]
702 silly decomposeActions preinstall [email protected]
703 silly decomposeActions build [email protected]
704 silly decomposeActions install [email protected]
705 silly decomposeActions postinstall [email protected]
706 silly decomposeActions finalize [email protected]
707 silly decomposeActions refresh-package-json [email protected]
708 silly decomposeActions fetch [email protected]
709 silly decomposeActions extract [email protected]
710 silly decomposeActions preinstall [email protected]
711 silly decomposeActions build [email protected]
712 silly decomposeActions install [email protected]
713 silly decomposeActions postinstall [email protected]
714 silly decomposeActions finalize [email protected]
715 silly decomposeActions refresh-package-json [email protected]
716 silly decomposeActions fetch [email protected]
717 silly decomposeActions extract [email protected]
718 silly decomposeActions preinstall [email protected]
719 silly decomposeActions build [email protected]
720 silly decomposeActions install [email protected]
721 silly decomposeActions postinstall [email protected]
722 silly decomposeActions finalize [email protected]
723 silly decomposeActions refresh-package-json [email protected]
724 silly decomposeActions fetch [email protected]
725 silly decomposeActions extract [email protected]
726 silly decomposeActions preinstall [email protected]
727 silly decomposeActions build [email protected]
728 silly decomposeActions install [email protected]
729 silly decomposeActions postinstall [email protected]
730 silly decomposeActions finalize [email protected]
731 silly decomposeActions refresh-package-json [email protected]
732 silly decomposeActions fetch [email protected]
733 silly decomposeActions extract [email protected]
734 silly decomposeActions preinstall [email protected]
735 silly decomposeActions build [email protected]
736 silly decomposeActions install [email protected]
737 silly decomposeActions postinstall [email protected]
738 silly decomposeActions finalize [email protected]
739 silly decomposeActions refresh-package-json [email protected]
740 silly decomposeActions fetch [email protected]
741 silly decomposeActions extract [email protected]
742 silly decomposeActions preinstall [email protected]
743 silly decomposeActions build [email protected]
744 silly decomposeActions install [email protected]
745 silly decomposeActions postinstall [email protected]
746 silly decomposeActions finalize [email protected]
747 silly decomposeActions refresh-package-json [email protected]
748 silly decomposeActions fetch [email protected]
749 silly decomposeActions extract [email protected]
750 silly decomposeActions preinstall [email protected]
751 silly decomposeActions build [email protected]
752 silly decomposeActions install [email protected]
753 silly decomposeActions postinstall [email protected]
754 silly decomposeActions finalize [email protected]
755 silly decomposeActions refresh-package-json [email protected]
756 silly decomposeActions fetch [email protected]
757 silly decomposeActions extract [email protected]
758 silly decomposeActions preinstall [email protected]
759 silly decomposeActions build [email protected]
760 silly decomposeActions install [email protected]
761 silly decomposeActions postinstall [email protected]
762 silly decomposeActions finalize [email protected]
763 silly decomposeActions refresh-package-json [email protected]
764 silly decomposeActions fetch [email protected]
765 silly decomposeActions extract [email protected]
766 silly decomposeActions preinstall [email protected]
767 silly decomposeActions build [email protected]
768 silly decomposeActions install [email protected]
769 silly decomposeActions postinstall [email protected]
770 silly decomposeActions finalize [email protected]
771 silly decomposeActions refresh-package-json [email protected]
772 silly decomposeActions fetch [email protected]
773 silly decomposeActions extract [email protected]
774 silly decomposeActions preinstall [email protected]
775 silly decomposeActions build [email protected]
776 silly decomposeActions install [email protected]
777 silly decomposeActions postinstall [email protected]
778 silly decomposeActions finalize [email protected]
779 silly decomposeActions refresh-package-json [email protected]
780 silly decomposeActions fetch [email protected]
781 silly decomposeActions extract [email protected]
782 silly decomposeActions preinstall [email protected]
783 silly decomposeActions build [email protected]
784 silly decomposeActions install [email protected]
785 silly decomposeActions postinstall [email protected]
786 silly decomposeActions finalize [email protected]
787 silly decomposeActions refresh-package-json [email protected]
788 silly decomposeActions fetch [email protected]
789 silly decomposeActions extract [email protected]
790 silly decomposeActions preinstall [email protected]
791 silly decomposeActions build [email protected]
792 silly decomposeActions install [email protected]
793 silly decomposeActions postinstall [email protected]
794 silly decomposeActions finalize [email protected]
795 silly decomposeActions refresh-package-json [email protected]
796 silly decomposeActions fetch [email protected]
797 silly decomposeActions extract [email protected]
798 silly decomposeActions preinstall [email protected]
799 silly decomposeActions build [email protected]
800 silly decomposeActions install [email protected]
801 silly decomposeActions postinstall [email protected]
802 silly decomposeActions finalize [email protected]
803 silly decomposeActions refresh-package-json [email protected]
804 silly decomposeActions fetch [email protected]
805 silly decomposeActions extract [email protected]
806 silly decomposeActions preinstall [email protected]
807 silly decomposeActions build [email protected]
808 silly decomposeActions install [email protected]
809 silly decomposeActions postinstall [email protected]
810 silly decomposeActions finalize [email protected]
811 silly decomposeActions refresh-package-json [email protected]
812 silly decomposeActions fetch [email protected]
813 silly decomposeActions extract [email protected]
814 silly decomposeActions preinstall [email protected]
815 silly decomposeActions build [email protected]
816 silly decomposeActions install [email protected]
817 silly decomposeActions postinstall [email protected]
818 silly decomposeActions finalize [email protected]
819 silly decomposeActions refresh-package-json [email protected]
820 silly decomposeActions fetch [email protected]
821 silly decomposeActions extract [email protected]
822 silly decomposeActions preinstall [email protected]
823 silly decomposeActions build [email protected]
824 silly decomposeActions install [email protected]
825 silly decomposeActions postinstall [email protected]
826 silly decomposeActions finalize [email protected]
827 silly decomposeActions refresh-package-json [email protected]
828 silly decomposeActions fetch [email protected]
829 silly decomposeActions extract [email protected]
830 silly decomposeActions preinstall [email protected]
831 silly decomposeActions build [email protected]
832 silly decomposeActions install [email protected]
833 silly decomposeActions postinstall [email protected]
834 silly decomposeActions finalize [email protected]
835 silly decomposeActions refresh-package-json [email protected]
836 silly decomposeActions fetch [email protected]
837 silly decomposeActions extract [email protected]
838 silly decomposeActions preinstall [email protected]
839 silly decomposeActions build [email protected]
840 silly decomposeActions install [email protected]
841 silly decomposeActions postinstall [email protected]
842 silly decomposeActions finalize [email protected]
843 silly decomposeActions refresh-package-json [email protected]
844 silly decomposeActions fetch [email protected]
845 silly decomposeActions extract [email protected]
846 silly decomposeActions preinstall [email protected]
847 silly decomposeActions build [email protected]
848 silly decomposeActions install [email protected]
849 silly decomposeActions postinstall [email protected]
850 silly decomposeActions finalize [email protected]
851 silly decomposeActions refresh-package-json [email protected]
852 silly decomposeActions fetch [email protected]
853 silly decomposeActions extract [email protected]
854 silly decomposeActions preinstall [email protected]
855 silly decomposeActions build [email protected]
856 silly decomposeActions install [email protected]
857 silly decomposeActions postinstall [email protected]
858 silly decomposeActions finalize [email protected]
859 silly decomposeActions refresh-package-json [email protected]
860 silly decomposeActions fetch [email protected]
861 silly decomposeActions extract [email protected]
862 silly decomposeActions preinstall [email protected]
863 silly decomposeActions build [email protected]
864 silly decomposeActions install [email protected]
865 silly decomposeActions postinstall [email protected]
866 silly decomposeActions finalize [email protected]
867 silly decomposeActions refresh-package-json [email protected]
868 silly decomposeActions fetch [email protected]
869 silly decomposeActions extract [email protected]
870 silly decomposeActions preinstall [email protected]
871 silly decomposeActions build [email protected]
872 silly decomposeActions install [email protected]
873 silly decomposeActions postinstall [email protected]
874 silly decomposeActions finalize [email protected]
875 silly decomposeActions refresh-package-json [email protected]
876 silly decomposeActions fetch [email protected]
877 silly decomposeActions extract [email protected]
878 silly decomposeActions preinstall [email protected]
879 silly decomposeActions build [email protected]
880 silly decomposeActions install [email protected]
881 silly decomposeActions postinstall [email protected]
882 silly decomposeActions finalize [email protected]
883 silly decomposeActions refresh-package-json [email protected]
884 silly decomposeActions fetch [email protected]
885 silly decomposeActions extract [email protected]
886 silly decomposeActions preinstall [email protected]
887 silly decomposeActions build [email protected]
888 silly decomposeActions install [email protected]
889 silly decomposeActions postinstall [email protected]
890 silly decomposeActions finalize [email protected]
891 silly decomposeActions refresh-package-json [email protected]
892 silly decomposeActions fetch [email protected]
893 silly decomposeActions extract [email protected]
894 silly decomposeActions preinstall [email protected]
895 silly decomposeActions build [email protected]
896 silly decomposeActions install [email protected]
897 silly decomposeActions postinstall [email protected]
898 silly decomposeActions finalize [email protected]
899 silly decomposeActions refresh-package-json [email protected]
900 silly decomposeActions fetch [email protected]
901 silly decomposeActions extract [email protected]
902 silly decomposeActions preinstall [email protected]
903 silly decomposeActions build [email protected]
904 silly decomposeActions install [email protected]
905 silly decomposeActions postinstall [email protected]
906 silly decomposeActions finalize [email protected]
907 silly decomposeActions refresh-package-json [email protected]
908 silly decomposeActions fetch [email protected]
909 silly decomposeActions extract [email protected]
910 silly decomposeActions preinstall [email protected]
911 silly decomposeActions build [email protected]
912 silly decomposeActions install [email protected]
913 silly decomposeActions postinstall [email protected]
914 silly decomposeActions finalize [email protected]
915 silly decomposeActions refresh-package-json [email protected]
916 silly decomposeActions fetch @babel/[email protected]
917 silly decomposeActions extract @babel/[email protected]
918 silly decomposeActions preinstall @babel/[email protected]
919 silly decomposeActions build @babel/[email protected]
920 silly decomposeActions install @babel/[email protected]
921 silly decomposeActions postinstall @babel/[email protected]
922 silly decomposeActions finalize @babel/[email protected]
923 silly decomposeActions refresh-package-json @babel/[email protected]
924 silly decomposeActions fetch [email protected]
925 silly decomposeActions extract [email protected]
926 silly decomposeActions preinstall [email protected]
927 silly decomposeActions build [email protected]
928 silly decomposeActions install [email protected]
929 silly decomposeActions postinstall [email protected]
930 silly decomposeActions finalize [email protected]
931 silly decomposeActions refresh-package-json [email protected]
932 silly decomposeActions fetch [email protected]
933 silly decomposeActions extract [email protected]
934 silly decomposeActions preinstall [email protected]
935 silly decomposeActions build [email protected]
936 silly decomposeActions install [email protected]
937 silly decomposeActions postinstall [email protected]
938 silly decomposeActions finalize [email protected]
939 silly decomposeActions refresh-package-json [email protected]
940 silly decomposeActions fetch [email protected]
941 silly decomposeActions extract [email protected]
942 silly decomposeActions preinstall [email protected]
943 silly decomposeActions build [email protected]
944 silly decomposeActions install [email protected]
945 silly decomposeActions postinstall [email protected]
946 silly decomposeActions finalize [email protected]
947 silly decomposeActions refresh-package-json [email protected]
948 silly decomposeActions fetch [email protected]
949 silly decomposeActions extract [email protected]
950 silly decomposeActions preinstall [email protected]
951 silly decomposeActions build [email protected]
952 silly decomposeActions install [email protected]
953 silly decomposeActions postinstall [email protected]
954 silly decomposeActions finalize [email protected]
955 silly decomposeActions refresh-package-json [email protected]
956 silly decomposeActions fetch [email protected]
957 silly decomposeActions extract [email protected]
958 silly decomposeActions preinstall [email protected]
959 silly decomposeActions build [email protected]
960 silly decomposeActions install [email protected]
961 silly decomposeActions postinstall [email protected]
962 silly decomposeActions finalize [email protected]
963 silly decomposeActions refresh-package-json [email protected]
964 silly decomposeActions fetch [email protected]
965 silly decomposeActions extract [email protected]
966 silly decomposeActions preinstall [email protected]
967 silly decomposeActions build [email protected]
968 silly decomposeActions install [email protected]
969 silly decomposeActions postinstall [email protected]
970 silly decomposeActions finalize [email protected]
971 silly decomposeActions refresh-package-json [email protected]
972 silly decomposeActions fetch [email protected]
973 silly decomposeActions extract [email protected]
974 silly decomposeActions preinstall [email protected]
975 silly decomposeActions build [email protected]
976 silly decomposeActions install [email protected]
977 silly decomposeActions postinstall [email protected]
978 silly decomposeActions finalize [email protected]
979 silly decomposeActions refresh-package-json [email protected]
980 silly decomposeActions fetch [email protected]
981 silly decomposeActions extract [email protected]
982 silly decomposeActions preinstall [email protected]
983 silly decomposeActions build [email protected]
984 silly decomposeActions install [email protected]
985 silly decomposeActions postinstall [email protected]
986 silly decomposeActions finalize [email protected]
987 silly decomposeActions refresh-package-json [email protected]
988 silly decomposeActions fetch [email protected]
989 silly decomposeActions extract [email protected]
990 silly decomposeActions preinstall [email protected]
991 silly decomposeActions build [email protected]
992 silly decomposeActions install [email protected]
993 silly decomposeActions postinstall [email protected]
994 silly decomposeActions finalize [email protected]
995 silly decomposeActions refresh-package-json [email protected]
996 silly decomposeActions fetch [email protected]
997 silly decomposeActions extract [email protected]
998 silly decomposeActions preinstall [email protected]
999 silly decomposeActions build [email protected]
1000 silly decomposeActions install [email protected]
1001 silly decomposeActions postinstall [email protected]
1002 silly decomposeActions finalize [email protected]
1003 silly decomposeActions refresh-package-json [email protected]
1004 silly decomposeActions fetch [email protected]
1005 silly decomposeActions extract [email protected]
1006 silly decomposeActions preinstall [email protected]
1007 silly decomposeActions build [email protected]
1008 silly decomposeActions install [email protected]
1009 silly decomposeActions postinstall [email protected]
1010 silly decomposeActions finalize [email protected]
1011 silly decomposeActions refresh-package-json [email protected]
1012 silly decomposeActions fetch [email protected]
1013 silly decomposeActions extract [email protected]
1014 silly decomposeActions preinstall [email protected]
1015 silly decomposeActions build [email protected]
1016 silly decomposeActions install [email protected]
1017 silly decomposeActions postinstall [email protected]
1018 silly decomposeActions finalize [email protected]
1019 silly decomposeActions refresh-package-json [email protected]
1020 silly decomposeActions fetch [email protected]
1021 silly decomposeActions extract [email protected]
1022 silly decomposeActions preinstall [email protected]
1023 silly decomposeActions build [email protected]
1024 silly decomposeActions install [email protected]
1025 silly decomposeActions postinstall [email protected]
1026 silly decomposeActions finalize [email protected]
1027 silly decomposeActions refresh-package-json [email protected]
1028 silly decomposeActions fetch [email protected]
1029 silly decomposeActions extract [email protected]
1030 silly decomposeActions preinstall [email protected]
1031 silly decomposeActions build [email protected]
1032 silly decomposeActions install [email protected]
1033 silly decomposeActions postinstall [email protected]
1034 silly decomposeActions finalize [email protected]
1035 silly decomposeActions refresh-package-json [email protected]
1036 silly decomposeActions fetch [email protected]
1037 silly decomposeActions extract [email protected]
1038 silly decomposeActions preinstall [email protected]
1039 silly decomposeActions build [email protected]
1040 silly decomposeActions install [email protected]
1041 silly decomposeActions postinstall [email protected]
1042 silly decomposeActions finalize [email protected]
1043 silly decomposeActions refresh-package-json [email protected]
1044 silly decomposeActions fetch [email protected]
1045 silly decomposeActions extract [email protected]
1046 silly decomposeActions preinstall [email protected]
1047 silly decomposeActions build [email protected]
1048 silly decomposeActions install [email protected]
1049 silly decomposeActions postinstall [email protected]
1050 silly decomposeActions finalize [email protected]
1051 silly decomposeActions refresh-package-json [email protected]
1052 silly decomposeActions fetch [email protected]
1053 silly decomposeActions extract [email protected]
1054 silly decomposeActions preinstall [email protected]
1055 silly decomposeActions build [email protected]
1056 silly decomposeActions install [email protected]
1057 silly decomposeActions postinstall [email protected]
1058 silly decomposeActions finalize [email protected]
1059 silly decomposeActions refresh-package-json [email protected]
1060 silly decomposeActions fetch [email protected]
1061 silly decomposeActions extract [email protected]
1062 silly decomposeActions preinstall [email protected]
1063 silly decomposeActions build [email protected]
1064 silly decomposeActions install [email protected]
1065 silly decomposeActions postinstall [email protected]
1066 silly decomposeActions finalize [email protected]
1067 silly decomposeActions refresh-package-json [email protected]
1068 silly decomposeActions fetch [email protected]
1069 silly decomposeActions extract [email protected]
1070 silly decomposeActions preinstall [email protected]
1071 silly decomposeActions build [email protected]
1072 silly decomposeActions install [email protected]
1073 silly decomposeActions postinstall [email protected]
1074 silly decomposeActions finalize [email protected]
1075 silly decomposeActions refresh-package-json [email protected]
1076 silly decomposeActions fetch [email protected]
1077 silly decomposeActions extract [email protected]
1078 silly decomposeActions preinstall [email protected]
1079 silly decomposeActions build [email protected]
1080 silly decomposeActions install [email protected]
1081 silly decomposeActions postinstall [email protected]
1082 silly decomposeActions finalize [email protected]
1083 silly decomposeActions refresh-package-json [email protected]
1084 silly decomposeActions fetch [email protected]
1085 silly decomposeActions extract [email protected]
1086 silly decomposeActions preinstall [email protected]
1087 silly decomposeActions build [email protected]
1088 silly decomposeActions install [email protected]
1089 silly decomposeActions postinstall [email protected]
1090 silly decomposeActions finalize [email protected]
1091 silly decomposeActions refresh-package-json [email protected]
1092 silly decomposeActions fetch [email protected]
1093 silly decomposeActions extract [email protected]
1094 silly decomposeActions preinstall [email protected]
1095 silly decomposeActions build [email protected]
1096 silly decomposeActions install [email protected]
1097 silly decomposeActions postinstall [email protected]
1098 silly decomposeActions finalize [email protected]
1099 silly decomposeActions refresh-package-json [email protected]
1100 silly decomposeActions fetch [email protected]
1101 silly decomposeActions extract [email protected]
1102 silly decomposeActions preinstall [email protected]
1103 silly decomposeActions build [email protected]
1104 silly decomposeActions install [email protected]
1105 silly decomposeActions postinstall [email protected]
1106 silly decomposeActions finalize [email protected]
1107 silly decomposeActions refresh-package-json [email protected]
1108 silly decomposeActions fetch [email protected]
1109 silly decomposeActions extract [email protected]
1110 silly decomposeActions preinstall [email protected]
1111 silly decomposeActions build [email protected]
1112 silly decomposeActions install [email protected]
1113 silly decomposeActions postinstall [email protected]
1114 silly decomposeActions finalize [email protected]
1115 silly decomposeActions refresh-package-json [email protected]
1116 silly decomposeActions fetch [email protected]
1117 silly decomposeActions extract [email protected]
1118 silly decomposeActions preinstall [email protected]
1119 silly decomposeActions build [email protected]
1120 silly decomposeActions install [email protected]
1121 silly decomposeActions postinstall [email protected]
1122 silly decomposeActions finalize [email protected]
1123 silly decomposeActions refresh-package-json [email protected]
1124 silly decomposeActions fetch [email protected]
1125 silly decomposeActions extract [email protected]
1126 silly decomposeActions preinstall [email protected]
1127 silly decomposeActions build [email protected]
1128 silly decomposeActions install [email protected]
1129 silly decomposeActions postinstall [email protected]
1130 silly decomposeActions finalize [email protected]
1131 silly decomposeActions refresh-package-json [email protected]
1132 silly decomposeActions fetch [email protected]
1133 silly decomposeActions extract [email protected]
1134 silly decomposeActions preinstall [email protected]
1135 silly decomposeActions build [email protected]
1136 silly decomposeActions install [email protected]
1137 silly decomposeActions postinstall [email protected]
1138 silly decomposeActions finalize [email protected]
1139 silly decomposeActions refresh-package-json [email protected]
1140 silly decomposeActions fetch [email protected]
1141 silly decomposeActions extract [email protected]
1142 silly decomposeActions preinstall [email protected]
1143 silly decomposeActions build [email protected]
1144 silly decomposeActions install [email protected]
1145 silly decomposeActions postinstall [email protected]
1146 silly decomposeActions finalize [email protected]
1147 silly decomposeActions refresh-package-json [email protected]
1148 silly decomposeActions fetch [email protected]
1149 silly decomposeActions extract [email protected]
1150 silly decomposeActions preinstall [email protected]
1151 silly decomposeActions build [email protected]
1152 silly decomposeActions install [email protected]
1153 silly decomposeActions postinstall [email protected]
1154 silly decomposeActions finalize [email protected]
1155 silly decomposeActions refresh-package-json [email protected]
1156 silly decomposeActions fetch [email protected]
1157 silly decomposeActions extract [email protected]
1158 silly decomposeActions preinstall [email protected]
1159 silly decomposeActions build [email protected]
1160 silly decomposeActions install [email protected]
1161 silly decomposeActions postinstall [email protected]
1162 silly decomposeActions finalize [email protected]
1163 silly decomposeActions refresh-package-json [email protected]
1164 silly decomposeActions fetch [email protected]
1165 silly decomposeActions extract [email protected]
1166 silly decomposeActions preinstall [email protected]
1167 silly decomposeActions build [email protected]
1168 silly decomposeActions install [email protected]
1169 silly decomposeActions postinstall [email protected]
1170 silly decomposeActions finalize [email protected]
1171 silly decomposeActions refresh-package-json [email protected]
1172 silly decomposeActions fetch [email protected]
1173 silly decomposeActions extract [email protected]
1174 silly decomposeActions preinstall [email protected]
1175 silly decomposeActions build [email protected]
1176 silly decomposeActions install [email protected]
1177 silly decomposeActions postinstall [email protected]
1178 silly decomposeActions finalize [email protected]
1179 silly decomposeActions refresh-package-json [email protected]
1180 silly decomposeActions fetch [email protected]
1181 silly decomposeActions extract [email protected]
1182 silly decomposeActions preinstall [email protected]
1183 silly decomposeActions build [email protected]
1184 silly decomposeActions install [email protected]
1185 silly decomposeActions postinstall [email protected]
1186 silly decomposeActions finalize [email protected]
1187 silly decomposeActions refresh-package-json [email protected]
1188 silly decomposeActions fetch [email protected]
1189 silly decomposeActions extract [email protected]
1190 silly decomposeActions preinstall [email protected]
1191 silly decomposeActions build [email protected]
1192 silly decomposeActions install [email protected]
1193 silly decomposeActions postinstall [email protected]
1194 silly decomposeActions finalize [email protected]
1195 silly decomposeActions refresh-package-json [email protected]
1196 silly decomposeActions fetch [email protected]
1197 silly decomposeActions extract [email protected]
1198 silly decomposeActions preinstall [email protected]
1199 silly decomposeActions build [email protected]
1200 silly decomposeActions install [email protected]
1201 silly decomposeActions postinstall [email protected]
1202 silly decomposeActions finalize [email protected]
1203 silly decomposeActions refresh-package-json [email protected]
1204 silly decomposeActions fetch [email protected]
1205 silly decomposeActions extract [email protected]
1206 silly decomposeActions preinstall [email protected]
1207 silly decomposeActions build [email protected]
1208 silly decomposeActions install [email protected]
1209 silly decomposeActions postinstall [email protected]
1210 silly decomposeActions finalize [email protected]
1211 silly decomposeActions refresh-package-json [email protected]
1212 silly decomposeActions fetch [email protected]
1213 silly decomposeActions extract [email protected]
1214 silly decomposeActions preinstall [email protected]
1215 silly decomposeActions build [email protected]
1216 silly decomposeActions install [email protected]
1217 silly decomposeActions postinstall [email protected]
1218 silly decomposeActions finalize [email protected]
1219 silly decomposeActions refresh-package-json [email protected]
1220 silly decomposeActions fetch [email protected]
1221 silly decomposeActions extract [email protected]
1222 silly decomposeActions preinstall [email protected]
1223 silly decomposeActions build [email protected]
1224 silly decomposeActions install [email protected]
1225 silly decomposeActions postinstall [email protected]
1226 silly decomposeActions finalize [email protected]
1227 silly decomposeActions refresh-package-json [email protected]
1228 silly decomposeActions fetch [email protected]
1229 silly decomposeActions extract [email protected]
1230 silly decomposeActions preinstall [email protected]
1231 silly decomposeActions build [email protected]
1232 silly decomposeActions install [email protected]
1233 silly decomposeActions postinstall [email protected]
1234 silly decomposeActions finalize [email protected]
1235 silly decomposeActions refresh-package-json [email protected]
1236 silly decomposeActions fetch @pgql/[email protected]
1237 silly decomposeActions extract @pgql/[email protected]
1238 silly decomposeActions preinstall @pgql/[email protected]
1239 silly decomposeActions build @pgql/[email protected]
1240 silly decomposeActions install @pgql/[email protected]
1241 silly decomposeActions postinstall @pgql/[email protected]
1242 silly decomposeActions finalize @pgql/[email protected]
1243 silly decomposeActions refresh-package-json @pgql/[email protected]
1244 silly decomposeActions fetch [email protected]
1245 silly decomposeActions extract [email protected]
1246 silly decomposeActions preinstall [email protected]
1247 silly decomposeActions build [email protected]
1248 silly decomposeActions install [email protected]
1249 silly decomposeActions postinstall [email protected]
1250 silly decomposeActions finalize [email protected]
1251 silly decomposeActions refresh-package-json [email protected]
1252 silly decomposeActions fetch [email protected]
1253 silly decomposeActions extract [email protected]
1254 silly decomposeActions preinstall [email protected]
1255 silly decomposeActions build [email protected]
1256 silly decomposeActions install [email protected]
1257 silly decomposeActions postinstall [email protected]
1258 silly decomposeActions finalize [email protected]
1259 silly decomposeActions refresh-package-json [email protected]
1260 silly install executeActions
1261 silly doSerial global-install 824
1262 verbose correctMkdir C:\Users\[...]\AppData\Roaming\npm-cache\_locks correctMkdir not in flight; initializing
1263 verbose lock using C:\Users\[...]\AppData\Roaming\npm-cache\_locks\staging-d6ce8c16a29c78be.lock for C:\Users\[...]\dev\psqlp\node_modules\.staging
1264 silly doParallel extract 103
1265 silly extract [email protected]
1266 silly extract [email protected]
1267 silly extract [email protected]
1268 silly extract [email protected]
1269 silly extract [email protected]
1270 silly extract [email protected]
1271 silly extract [email protected]
1272 silly extract [email protected]
1273 silly extract [email protected]
1274 silly extract [email protected]
1275 silly extract [email protected]
1276 silly extract [email protected]
1277 silly extract [email protected]
1278 silly extract [email protected]
1279 silly extract [email protected]
1280 silly extract [email protected]
1281 silly extract [email protected]
1282 silly extract [email protected]
1283 silly extract [email protected]
1284 silly extract [email protected]
1285 silly extract [email protected]
1286 silly extract [email protected]
1287 silly extract [email protected]
1288 silly extract [email protected]
1289 silly extract [email protected]
1290 silly extract [email protected]
1291 silly extract [email protected]
1292 silly extract [email protected]
1293 silly extract [email protected]
1294 silly extract [email protected]
1295 silly extract [email protected]
1296 silly extract [email protected]
1297 silly extract [email protected]
1298 silly extract [email protected]
1299 silly extract [email protected]
1300 silly extract [email protected]
1301 silly extract [email protected]
1302 silly extract [email protected]
1303 silly extract [email protected]
1304 silly extract [email protected]
1305 silly extract [email protected]
1306 silly extract [email protected]
1307 silly extract [email protected]
1308 silly extract [email protected]
1309 silly extract [email protected]
1310 silly extract [email protected]
1311 silly extract [email protected]
1312 silly extract [email protected]
1313 silly extract [email protected]
1314 silly extract [email protected]
1315 silly tarball trying abbrev@1 by hash: sha512-nne9/IiQ/hzIhY6pdDnbBtz7DjPTKrY00P/zvPSm5pOFkl6xuGrGnXn/VtTNNfNtAfZ9/1RtehkszU9qcTii0Q==
1316 silly tarball trying ansi-regex@^2.0.0 by hash: sha1-w7M6te42DYbg5ijwRorn7yfWVN8=
1317 silly tarball trying aproba@^1.0.3 by hash: sha512-Y9J6ZjXtoYh8RnXVCMOU/ttDmk1aBjunq9vO0ta5x85WDQiQfUF9sIPBITdbiiIVcBo03Hi3jMxigBtsddlXRw==
1318 silly tarball trying assert-plus@^1.0.0 by hash: sha1-8S4PPF13sLHN2RRpQuTpbB5N1SU=
1319 silly tarball trying asynckit@^0.4.0 by hash: sha1-x57Zf380y48robyXkLzDZkdLS3k=
1320 silly tarball trying aws-sign2@~0.7.0 by hash: sha1-tG6JCTSpWR8tL2+G1+ap8bP+dqg=
1321 silly tarball trying aws4@^1.8.0 by hash: sha512-xh1Rl34h6Fi1DC2WWKfxUTVqRsNnr6LsKz2+hfwDxQJWmrx8+c7ylaqBMcHfl1U1r2dsifOvKX3LQuLNZ+XSvA==
1322 silly tarball trying balanced-match@^1.0.0 by hash: sha1-ibTRmasr7kneFk6gK4nORi1xt2c=
1323 silly tarball trying caseless@~0.12.0 by hash: sha1-G2gcIf+EAzyCZUMJBolCDRhxUdw=
1324 silly tarball trying code-point-at@^1.0.0 by hash: sha1-DQcLTQQ6W+ozovGkDi7bPZpMz3c=
1325 silly tarball trying [email protected] by hash: sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=
1326 silly tarball trying brace-expansion@^1.1.7 by hash: sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==
1327 silly tarball trying console-control-strings@~1.1.0 by hash: sha1-PXz0Rk22RG6mRL9LOVB/mFEAjo4=
1328 silly tarball trying core-util-is@~1.0.0 by hash: sha1-tf1UIgqivFq1eqtxQMlAdUUDwac=
1329 silly tarball trying dashdash@^1.12.0 by hash: sha1-hTz6D3y+L+1d4gMmuN1YEDX24vA=
1330 silly tarball trying delayed-stream@~1.0.0 by hash: sha1-3zrhmayt+31ECqrgsp4icrJOxhk=
1331 silly tarball trying combined-stream@~1.0.6 by hash: sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==
1332 silly tarball trying delegates@^1.0.0 by hash: sha1-hMbhWbgZBP3KWaDvRM2HDTElD5o=
1333 silly tarball trying [email protected] by hash: sha512-VJzcXJZEckXowvj6yGJC2JH66DLEEm1d1QOB0hik1EvlbUpULvcYt411JeFuy8rNC96FG8V2N7pMkyjvK8LYwQ==
1334 silly tarball trying extend@~3.0.2 by hash: sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g==
1335 silly tarball trying [email protected] by hash: sha1-lpGEQOMEGnpBT4xS48V06zw+HgU=
1336 silly tarball trying fast-deep-equal@^3.1.1 by hash: sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==
1337 silly tarball trying fast-json-stable-stringify@^2.0.0 by hash: sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==
1338 silly tarball trying forever-agent@~0.6.1 by hash: sha1-+8cfDEGt6zf5bFd60e1C2P2sypE=
1339 silly tarball trying fs.realpath@^1.0.0 by hash: sha1-FQStJSMVjKpA20onh8sBQRmU6k8=
1340 silly tarball trying getpass@^0.1.1 by hash: sha1-Xv+OPmhNVprkyysSgmBOi6YhSfo=
1341 silly tarball trying graceful-fs@^4.1.2 by hash: sha512-WjKPNJF79dtJAVniUlGGWHYGz2jWxT6VhN/4m1NdkbZ2nOsEF+cI1Edgql5zCRhs/VsQYRvrXctxktVXZUkixw==
1342 silly tarball trying har-schema@^2.0.0 by hash: sha1-qUwiJOvKwEeCoNkDVSHyRzW37JI=
1343 silly tarball trying has-unicode@^2.0.0 by hash: sha1-4Ob+aijPUROIVeCG0Wkedx3iqLk=
1344 silly tarball trying inherits@~2.0.0 by hash: sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==
1345 silly tarball trying block-stream@* by hash: sha1-E+v+d4oDIFz+A3UUgeu0szAMEmo=
1346 silly tarball trying is-typedarray@~1.0.0 by hash: sha1-5HnICFjfDBsR3dppQPlgEfzaSpo=
1347 silly tarball trying isarray@~1.0.0 by hash: sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=
1348 silly tarball trying isexe@^2.0.0 by hash: sha1-6PvzdNxVb/iUehDcsFctYz8s+hA=
1349 silly tarball trying isstream@~0.1.2 by hash: sha1-R+Y/evVa+m+S4VAOaQ64uFKcCZo=
1350 silly tarball trying jsbn@~0.1.0 by hash: sha1-peZUwuWi3rXyAdls77yoDA7y9RM=
1351 silly tarball trying [email protected] by hash: sha1-tIDIkuWaLwWVTOcnvT8qTogvnhM=
1352 silly tarball trying json-schema-traverse@^0.4.1 by hash: sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==
1353 silly tarball trying json-stringify-safe@~5.0.1 by hash: sha1-Epai1Y/UXxmg9s4B1lcB4sc1tus=
1354 silly tarball trying [email protected] by hash: sha512-CkqLUxUk15hofLoLyljJSrukZi8mAtgd+yE5uO4tqRZsdsAJKv0O+rFMhVDRJgozy+yG6md5KwuXhD4ocIoP+w==
1355 silly tarball trying mime-types@~2.1.19 by hash: sha512-0TO2yJ5YHYr7M2zzT7gDU1tbwHxEUWBCLt0lscSNpcdAfFyJOVEpRYNS7EXVcTLNj/25QO8gulHC5JtTzSE2UQ==
1356 silly tarball trying form-data@~2.3.2 by hash: sha512-1lLKB2Mu3aGP1Q/2eCOx0fNbRMe7XdwktwOruhfqqd0rIJWwN4Dh+E3hrPSlDCXnSR7UtZ1N38rVXm+6+MEhJQ==
1357 silly tarball trying minimatch@^3.0.4 by hash: sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==
1358 silly tarball trying mkdirp@^0.5.0 by hash: sha512-NKmAlESf6jMGym1++R0Ra7wvhV+wFW63FaSOFPwRahvea0gMUcGUhVeAg/0BC0wiv9ih5NYPB1Wn1UEI1/L+xQ==
1359 silly tarball trying node-addon-api@^1.6.3 by hash: sha512-ibPK3iA+vaY1eEjESkQkM0BbCqFOaZMiXRTtdB0u7b4djtY6JnsjvPdUHVMg6xQt3B8fpTTWHI9A+ADjM9frzg==
1360 silly tarball trying nopt@2 || 3 by hash: sha1-xkZdvwirzU2zWTF/eaxopkayj/k=
1361 silly tarball trying number-is-nan@^1.0.0 by hash: sha1-CXtgK1NCKlIsGvuHkDGDNpQaAR0=
1362 silly tarball trying is-fullwidth-code-point@^1.0.0 by hash: sha1-754xOG8DGn8NZDr4L95QxFfvAMs=
1363 silly tarball trying oauth-sign@~0.9.0 by hash: sha512-fexhUFFPTGV8ybAtSIGbV6gOkSv8UtRbDBnAyLQw4QPKkgNlsH2ByPGtMUqdWkos6YCRmAqViwgZrJc/mRDzZQ==
1364 silly tarball trying object-assign@^4.1.0 by hash: sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM=
1365 silly extract abbrev@1 extracted to C:\Users\[...]\dev\psqlp\node_modules\.staging\abbrev-3a7e14bc (245ms)
1366 silly extract aproba@^1.0.3 extracted to C:\Users\[...]\dev\psqlp\node_modules\.staging\aproba-0354d16c (263ms)
1367 silly extract ansi-regex@^2.0.0 extracted to C:\Users\[...]\dev\psqlp\node_modules\.staging\ansi-regex-9ddcb583 (263ms)
1368 silly extract [email protected]
1369 silly tarball trying pgsql-parser@latest by hash: sha512-kMeZLEZ4Rd6I+TjC12CGeWBbUqZGJFe9hQDypqOVG1AembODO+G1gYkwRHKbanVw6jhyNY0lvTafkQXYRwt3Yg==
1370 silly extract code-point-at@^1.0.0 extracted to C:\Users\[...]\dev\psqlp\node_modules\.staging\code-point-at-371c0d1d (266ms)
1371 silly extract brace-expansion@^1.1.7 extracted to C:\Users\[...]\dev\psqlp\node_modules\.staging\brace-expansion-9b1222cd (265ms)
1372 silly extract has-unicode@^2.0.0 extracted to C:\Users\[...]\dev\psqlp\node_modules\.staging\has-unicode-28547b36 (266ms)
1373 silly extract number-is-nan@^1.0.0 extracted to C:\Users\[...]\dev\psqlp\node_modules\.staging\number-is-nan-232676b4 (269ms)
1374 silly extract [email protected]
1375 silly extract @pgql/[email protected]
1376 silly tarball trying pgsql-deparser@^1.2.3 by hash: sha512-0EBrmPqevIkS+zlV4eqa8Pjds5LXFXGKzRJUG8Ca0kI097fxOBcJWiY4qIwWNjmJMpixqu2K6aBW6Di6rxFhiQ==
1377 silly tarball trying @pgql/[email protected] by hash: sha512-YQu8io3va70Qpv3Wn36xSe7Mr5P7i9IYVdCS4XK2O08Q1Rc1F1JFm9zKPSQk8TQ8Uth7g4gQCoV0zf+MwW+IBg==
1378 silly extract assert-plus@^1.0.0 extracted to C:\Users\[...]\dev\psqlp\node_modules\.staging\assert-plus-e757e37f (282ms)
1379 silly extract [email protected]
1380 silly tarball trying node-gyp@^3.3.1 by hash: sha512-3g8lYefrRRzvGeSowdJKAKyks8oUpLEd/DyPV4eMhVlhJ0aNaZqIrNUIPuEWWTAoPqyFkfGrM67MC69baqn6vA==
1381 silly extract oauth-sign@~0.9.0 extracted to C:\Users\[...]\dev\psqlp\node_modules\.staging\oauth-sign-8397386a (273ms)
1382 silly extract is-fullwidth-code-point@^1.0.0 extracted to C:\Users\[...]\dev\psqlp\node_modules\.staging\is-fullwidth-code-point-1c27f39c (273ms)
1383 silly extract object-assign@^4.1.0 extracted to C:\Users\[...]\dev\psqlp\node_modules\.staging\object-assign-9b9069ef (273ms)
1384 silly extract aws-sign2@~0.7.0 extracted to C:\Users\[...]\dev\psqlp\node_modules\.staging\aws-sign2-a8404e0a (285ms)
1385 silly extract balanced-match@^1.0.0 extracted to C:\Users\[...]\dev\psqlp\node_modules\.staging\balanced-match-54f6fba6 (284ms)
1386 silly extract [email protected]
1387 silly tarball trying tar@^2.0.0 by hash: sha512-FCEhQ/4rE1zYv9rYXJw/msRqsnmlje5jHP6huWeBZ704jUTy02c5AZyWujpMR1ax6mVw9NyJMfuK2CMDWVIfgA==
1388 silly extract caseless@~0.12.0 extracted to C:\Users\[...]\dev\psqlp\node_modules\.staging\caseless-f73bda8e (287ms)
1389 silly extract console-control-strings@~1.1.0 extracted to C:\Users\[...]\dev\psqlp\node_modules\.staging\console-control-strings-bfbe972c (286ms)
1390 silly extract [email protected]
1391 silly tarball trying fstream@^1.0.0 by hash: sha512-WvJ193OHa0GHPEL+AycEJgxvBEwyfRkN1vhjca23OaPVMCaLCXTd5qAu82AjTcgP1UJmytkOKb63Ypde7raDIg==
1392 silly extract forever-agent@~0.6.1 extracted to C:\Users\[...]\dev\psqlp\node_modules\.staging\forever-agent-ea93d75b (284ms)
1393 silly extract inherits@~2.0.0 extracted to C:\Users\[...]\dev\psqlp\node_modules\.staging\inherits-8eb39430 (284ms)
1394 silly extract block-stream@* extracted to C:\Users\[...]\dev\psqlp\node_modules\.staging\block-stream-7d9ae69b (283ms)
1395 silly extract is-typedarray@~1.0.0 extracted to C:\Users\[...]\dev\psqlp\node_modules\.staging\is-typedarray-aafeedad (287ms)
1396 silly extract [email protected]
1397 silly tarball trying rimraf@2 by hash: sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w==
1398 silly extract [email protected]
1399 silly tarball trying glob@^7.0.3 by hash: sha512-LwaxwyZ72Lk7vZINtNNrywX0ZuLyStrdDtabefZKAY5ZGJhVtgdznluResxNmPitE0SAO+O26sWTHeKSI2wMBA==
1400 silly extract [email protected]
1401 silly extract [email protected]
1402 silly extract [email protected]
1403 silly extract [email protected]
1404 silly extract [email protected]
1405 silly tarball trying inflight@^1.0.4 by hash: sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk=
1406 silly tarball trying once@^1.3.0 by hash: sha1-WDsap3WWHUsROsF9nFC6753Xa9E=
1407 silly tarball trying wrappy@1 by hash: sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=
1408 silly tarball trying npmlog@0 || 1 || 2 || 3 || 4 by hash: sha512-2uUqazuKlTaSI/dC8AzicUck7+IrEaOnN/e0jd3Xtt1KcGpwx30v50mL7oPyr/h9bL3E4aZccVwpwP+5W9Vjkg==
1409 silly tarball trying gauge@~2.7.3 by hash: sha1-LANAXHU4w51+s3sxcCLjJfsBi/c=
1410 silly extract [email protected]
1411 silly extract [email protected]
1412 silly extract [email protected]
1413 silly extract [email protected]
1414 silly extract [email protected]
1415 silly extract [email protected]
1416 silly tarball trying wide-align@^1.1.0 by hash: sha512-QGkOQc8XL6Bt5PwnsExKBPuMKBxnGxWWW3fU55Xt4feHozMUhdUMaBCk290qpm/wG5u/RSKzwdAC4i51YigihA==
1417 silly tarball trying which@1 by hash: sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==
1418 silly tarball trying request@^2.87.0 by hash: sha512-MsvtOrfG9ZcrOwAW+Qi+F6HbD0CWXEh9ou77uOb7FM2WPhwT7smM833PzanhJLsgXjN89Ir6V2PczXNnMpwKhw==
1419 silly tarball trying http-signature@~1.2.0 by hash: sha1-muzZJRFHcvPZW2WmCruPfBj7rOE=
1420 silly tarball trying jsprim@^1.2.2 by hash: sha1-MT5mvB5cwG5Di8G3SZwuXFastqI=
1421 silly tarball trying [email protected] by hash: sha1-OhBcoXBTr1XW4nDB+CiGguGNpAA=
1422 silly extract fs.realpath@^1.0.0 extracted to C:\Users\[...]\dev\psqlp\node_modules\.staging\fs.realpath-b45084ac (313ms)
1423 silly extract minimatch@^3.0.4 extracted to C:\Users\[...]\dev\psqlp\node_modules\.staging\minimatch-f3ebb6b9 (308ms)
1424 silly extract graceful-fs@^4.1.2 extracted to C:\Users\[...]\dev\psqlp\node_modules\.staging\graceful-fs-37581a89 (318ms)
1425 silly extract [email protected]
1426 silly extract [email protected]
1427 silly tarball trying uuid@^3.3.2 by hash: sha512-HjSDRw6gZE5JMggctHBcjVak08+KEVhSIiDzFnT9S9aegmp85S/bReBVTb4QTFaRNptJ9kuYaNhnbNEOkbKb/A==
1428 silly tarball trying are-we-there-yet@~1.1.2 by hash: sha512-5hYdAkZlcG8tOLujVDTgCT+uPX0VnpAH28gWsLfzpXYm7wP6mp5Q/gYyR7YQ0cKVJcXJnl3j2kpBan13PtQf6w==
1429 silly extract [email protected]
1430 silly tarball trying readable-stream@^2.0.6 by hash: sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==
1431 silly extract isarray@~1.0.0 extracted to C:\Users\[...]\dev\psqlp\node_modules\.staging\isarray-fabee798 (343ms)
1432 silly extract mime-types@~2.1.19 extracted to C:\Users\[...]\dev\psqlp\node_modules\.staging\mime-types-41136d77 (340ms)
1433 silly extract [email protected]
1434 silly tarball trying util-deprecate@~1.0.1 by hash: sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8=
1435 silly extract combined-stream@~1.0.6 extracted to C:\Users\[...]\dev\psqlp\node_modules\.staging\combined-stream-30d779c7 (369ms)
1436 silly extract delayed-stream@~1.0.0 extracted to C:\Users\[...]\dev\psqlp\node_modules\.staging\delayed-stream-edaba09b (369ms)
1437 silly extract getpass@^0.1.1 extracted to C:\Users\[...]\dev\psqlp\node_modules\.staging\getpass-34656e6b (367ms)
1438 silly extract mkdirp@^0.5.0 extracted to C:\Users\[...]\dev\psqlp\node_modules\.staging\mkdirp-dae3315b (361ms)
1439 silly extract [email protected]
1440 silly extract [email protected]
1441 silly extract [email protected]
1442 silly extract [email protected]
1443 silly extract [email protected]
1444 silly tarball trying har-validator@~5.1.3 by hash: sha512-nmT2T0lljbxdQZfspsno9hgrG3Uir6Ks5afism62poxqBM6sDnMEuPmzTq8XN0OEwqKLLdh1jQI3qyE66Nzb3w==
1445 silly tarball trying ajv@^6.12.3 by hash: sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==
1446 silly tarball trying uri-js@^4.2.2 by hash: sha512-B0yRTzYdUCCn9n+F4+Gh4yIDtMQcaJsmYBDsTSG8g/OejKBodLQ2IHfN3bM7jUsRXndopT7OIXWdYqc1fjmV6g==
1447 silly tarball trying sshpk@^1.7.0 by hash: sha512-HXXqVUq7+pcKeLqqZj6mHFUMvXtOJt1uoUx09pFW6011inTMxqI8BA8PM95myrIyyKwdnzjdFjLiE6KBPVtJIg==
1448 silly tarball trying bcrypt-pbkdf@^1.0.0 by hash: sha1-pDAdOJtqQ/m2f/PKEaP2Y342Dp4=
1449 silly extract extend@~3.0.2 extracted to C:\Users\[...]\dev\psqlp\node_modules\.staging\extend-ca7c169c (385ms)
1450 silly extract isstream@~0.1.2 extracted to C:\Users\[...]\dev\psqlp\node_modules\.staging\isstream-4f87fb24 (381ms)
1451 silly extract [email protected]
1452 silly tarball trying tweetnacl@~0.14.0 by hash: sha1-WuaBd/GS1EViadEIr6k/+HQ/T2Q=
1453 silly extract core-util-is@~1.0.0 extracted to C:\Users\[...]\dev\psqlp\node_modules\.staging\core-util-is-1081a293 (398ms)
1454 silly extract delegates@^1.0.0 extracted to C:\Users\[...]\dev\psqlp\node_modules\.staging\delegates-27f5f357 (397ms)
1455 silly extract jsbn@~0.1.0 extracted to C:\Users\[...]\dev\psqlp\node_modules\.staging\jsbn-fd48a5ae (391ms)
1456 silly extract [email protected]
1457 silly extract [email protected]
1458 silly extract [email protected]
1459 silly tarball trying tunnel-agent@^0.6.0 by hash: sha1-J6XeoGs2sEoKmWZ3SykIaPD8QP0=
1460 silly tarball trying tough-cookie@~2.5.0 by hash: sha512-nlLsUzgm1kfLXSXfRZMc1KLAugd4hqJHDTvc2hDIwS3mZAfMEuMbc03SujMF+GEcpaX/qboeycw6iO8JwVv2+g==
1461 silly tarball trying string-width@^1.0.1 by hash: sha1-EYvfW4zcUaKn5w0hHgfisLmxB9M=
1462 silly extract aws4@^1.8.0 extracted to C:\Users\[...]\dev\psqlp\node_modules\.staging\aws4-363799f4 (414ms)
1463 silly extract isexe@^2.0.0 extracted to C:\Users\[...]\dev\psqlp\node_modules\.staging\isexe-e0cc5d03 (406ms)
1464 silly extract [email protected]
1465 silly extract [email protected]
1466 silly extract [email protected]
1467 silly tarball trying strip-ansi@^3.0.1 by hash: sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=
1468 timing audit submit Completed in 458ms
1469 silly tarball trying string_decoder@~1.1.1 by hash: sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==
1470 silly tarball trying signal-exit@^3.0.0 by hash: sha512-VUJ49FC8U1OxwZLxIbTTrDvLnf/6TDgxZcK8wxR8zs13xpx7xbG60ndBlhNrFi2EMuFRoeDoJO7wthSLq42EjA==
1471 silly extract [email protected] extracted to C:\Users\[...]\dev\psqlp\node_modules\.staging\concat-map-3348c9d9 (437ms)
1472 http fetch POST 200 https://registry.npmjs.org/-/npm/v1/security/audits/quick 458ms
1473 silly extract [email protected]
1474 timing audit body Completed in 16ms
1475 silly tarball trying set-blocking@~2.0.0 by hash: sha1-BF+XgtARrppoA93TgrJDkrPYkPc=
1476 silly extract [email protected] extracted to C:\Users\[...]\dev\psqlp\node_modules\.staging\extsprintf-845c2448 (451ms)
1477 silly extract json-stringify-safe@~5.0.1 extracted to C:\Users\[...]\dev\psqlp\node_modules\.staging\json-stringify-safe-9200e989 (446ms)
1478 silly extract [email protected]
1479 silly extract [email protected]
1480 silly tarball trying semver@~5.3.0 by hash: sha1-myzl094C0XxgEq0yaqa00M9U+U8=
1481 silly tarball trying ecc-jsbn@~0.1.1 by hash: sha1-OoOpBOVDUyh4dMVkt1SThoSamMk=
1482 silly extract fast-deep-equal@^3.1.1 extracted to C:\Users\[...]\dev\psqlp\node_modules\.staging\fast-deep-equal-053ca27e (473ms)
1483 silly extract [email protected]
1484 silly tarball trying asn1@~0.2.3 by hash: sha512-jxwzQpLQjSmWXgwaCZE9Nz+glAG01yF1QnWgbhGwHI5A6FRIEY6IVqtHhIepHqI7/kyEyQEagBC5mBEFlIYvdg==
1485 silly extract inflight@^1.0.4 extracted to C:\Users\[...]\dev\psqlp\node_modules\.staging\inflight-6ef8129b (194ms)
1486 silly extract once@^1.3.0 extracted to C:\Users\[...]\dev\psqlp\node_modules\.staging\once-419e3ded (191ms)
1487 silly extract wrappy@1 extracted to C:\Users\[...]\dev\psqlp\node_modules\.staging\wrappy-ed07f812 (190ms)
1488 silly extract wide-align@^1.1.0 extracted to C:\Users\[...]\dev\psqlp\node_modules\.staging\wide-align-463951e8 (197ms)
1489 silly extract [email protected]
1490 silly extract [email protected]
1491 silly extract [email protected]
1492 silly tarball trying safer-buffer@^2.0.2 by hash: sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==
1493 silly tarball trying safe-buffer@~5.1.1 by hash: sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==
1494 silly tarball trying pgsql-enums@^1.0.2 by hash: sha512-Z9jpvtbPSm6L9tx1OEs4Ny4vsFHlU+WxD9MScgggmKPHbr/W3wfhL1w+Px+oqOzlcLE+loVNol1RkCN+9ToHLA==
1495 silly extract dashdash@^1.12.0 extracted to C:\Users\[...]\dev\psqlp\node_modules\.staging\dashdash-54db0bd6 (517ms)
1496 silly extract json-schema-traverse@^0.4.1 extracted to C:\Users\[...]\dev\psqlp\node_modules\.staging\json-schema-traverse-219efafd (511ms)
1497 silly extract rimraf@2 extracted to C:\Users\[...]\dev\psqlp\node_modules\.staging\rimraf-313a6c0d (223ms)
1498 silly extract @babel/[email protected]
1499 silly extract [email protected]
1500 silly tarball trying @babel/runtime@^7.11.2 by hash: sha512-plcc+hbExy3McchJCEQG3knOsuh3HH+Prx1P6cLIkET/0dLuQDEnrT+s27Axgc9bqfsmNUNHfscgMUdBpC9xfg==
1501 silly tarball trying regenerator-runtime@^0.13.4 by hash: sha512-a54FxoJDIr27pgf7IgeQGxmqUNYrcV338lf/6gH456HZ/PhX+5BcwHXG9ajESmwe6WRO0tAzRUrRmNONWgkrew==
1502 silly extract [email protected] extracted to C:\Users\[...]\dev\psqlp\node_modules\.staging\mime-db-93f0a3b0 (521ms)
1503 silly extract [email protected]
1504 silly extract [email protected]
1505 silly tarball trying qs@~6.5.2 by hash: sha512-N5ZAX4/LxJmF+7wN74pUD6qAh9/wnvdQcjq9TZjevvXzSUo7bfmw91saqMjzGS2xq91/odN2dW/WOl7qQHNDGA==
1506 silly tarball trying punycode@^2.1.0 by hash: sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A==
1507 silly extract npmlog@0 || 1 || 2 || 3 || 4 extracted to C:\Users\[...]\dev\psqlp\node_modules\.staging\npmlog-80ea83aa (229ms)
1508 silly extract form-data@~2.3.2 extracted to C:\Users\[...]\dev\psqlp\node_modules\.staging\form-data-ed8c8b50 (525ms)
1509 silly extract [email protected]
1510 silly tarball trying psl@^1.1.28 by hash: sha512-RIdOzyoavK+hA18OGGWDqUTsCLhtA7IcZ/6NCs4fFJaHBDab+pDDmDIByWFRQJq2Cd7r1OoQxBGKOaztq+hjIQ==
1511 silly extract [email protected]
1512 silly extract [email protected]
1513 silly tarball trying process-nextick-args@~2.0.0 by hash: sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag==
1514 silly tarball trying performance-now@^2.1.0 by hash: sha1-Ywn04OX6kT7BxpMHrjZLSzd8nns=
1515 silly extract nopt@2 || 3 extracted to C:\Users\[...]\dev\psqlp\node_modules\.staging\nopt-f331d68f (547ms)
1516 silly extract asynckit@^0.4.0 extracted to C:\Users\[...]\dev\psqlp\node_modules\.staging\asynckit-46b74abe (558ms)
1517 silly extract which@1 extracted to C:\Users\[...]\dev\psqlp\node_modules\.staging\which-54b12234 (261ms)
1518 silly extract util-deprecate@~1.0.1 extracted to C:\Users\[...]\dev\psqlp\node_modules\.staging\util-deprecate-435f4121 (202ms)
1519 silly extract [email protected]
1520 silly extract [email protected]
1521 silly tarball trying path-is-absolute@^1.0.0 by hash: sha1-F0uSaHNVNP+8es5r9TpanhtcX18=
1522 silly tarball trying osenv@0 by hash: sha512-0CWcCECdMVc2Rw3U5w9ZjqX6ga6ubk1xDVKxtBQPK7wis/0F2r9T6k4ydGYhecl7YUBxBVxhL5oisPsNxAPe2g==
1523 silly extract [email protected]
1524 silly extract [email protected]
1525 silly tarball trying os-tmpdir@^1.0.0 by hash: sha1-u+Z0BseaqFxc/sdm/lc0VV36EnQ=
1526 silly tarball trying os-homedir@^1.0.0 by hash: sha1-/7xJiDNuDoM94MFox+8VISGqf7M=
1527 silly extract string-width@^1.0.1 extracted to C:\Users\[...]\dev\psqlp\node_modules\.staging\string-width-73f60751 (176ms)
1528 silly extract jsprim@^1.2.2 extracted to C:\Users\[...]\dev\psqlp\node_modules\.staging\jsprim-4a319d07 (279ms)
1529 silly extract strip-ansi@^3.0.1 extracted to C:\Users\[...]\dev\psqlp\node_modules\.staging\strip-ansi-fc4c2c54 (192ms)
1530 silly extract glob@^7.0.3 extracted to C:\Users\[...]\dev\psqlp\node_modules\.staging\glob-f8b11554 (316ms)
1531 silly extract tunnel-agent@^0.6.0 extracted to C:\Users\[...]\dev\psqlp\node_modules\.staging\tunnel-agent-543f07a3 (216ms)
1532 silly extract bcrypt-pbkdf@^1.0.0 extracted to C:\Users\[...]\dev\psqlp\node_modules\.staging\bcrypt-pbkdf-5e1d89e7 (245ms)
1533 silly extract are-we-there-yet@~1.1.2 extracted to C:\Users\[...]\dev\psqlp\node_modules\.staging\are-we-there-yet-6671ba58 (306ms)
1534 silly extract har-schema@^2.0.0 extracted to C:\Users\[...]\dev\psqlp\node_modules\.staging\har-schema-f0e5082a (632ms)
1535 silly extract har-validator@~5.1.3 extracted to C:\Users\[...]\dev\psqlp\node_modules\.staging\har-validator-0c6e1d18 (267ms)
1536 silly extract signal-exit@^3.0.0 extracted to C:\Users\[...]\dev\psqlp\node_modules\.staging\signal-exit-52a38ef9 (204ms)
1537 silly extract set-blocking@~2.0.0 extracted to C:\Users\[...]\dev\psqlp\node_modules\.staging\set-blocking-2f056e47 (188ms)
1538 silly extract [email protected] extracted to C:\Users\[...]\dev\psqlp\node_modules\.staging\verror-6ac5cd2b (326ms)
1539 silly extract fast-json-stable-stringify@^2.0.0 extracted to C:\Users\[...]\dev\psqlp\node_modules\.staging\fast-json-stable-stringify-a9c0a540 (659ms)
1540 silly extract string_decoder@~1.1.1 extracted to C:\Users\[...]\dev\psqlp\node_modules\.staging\string_decoder-3acd7384 (230ms)
1541 silly extract process-nextick-args@~2.0.0 extracted to C:\Users\[...]\dev\psqlp\node_modules\.staging\process-nextick-args-7d786868 (170ms)
1542 silly extract safe-buffer@~5.1.1 extracted to C:\Users\[...]\dev\psqlp\node_modules\.staging\safe-buffer-86f8f5ff (217ms)
1543 silly extract path-is-absolute@^1.0.0 extracted to C:\Users\[...]\dev\psqlp\node_modules\.staging\path-is-absolute-c6607540 (172ms)
1544 silly extract osenv@0 extracted to C:\Users\[...]\dev\psqlp\node_modules\.staging\osenv-3d2b52df (171ms)
1545 silly extract http-signature@~1.2.0 extracted to C:\Users\[...]\dev\psqlp\node_modules\.staging\http-signature-abc58d5f (435ms)
1546 silly extract regenerator-runtime@^0.13.4 extracted to C:\Users\[...]\dev\psqlp\node_modules\.staging\regenerator-runtime-b1bc5745 (220ms)
1547 silly extract os-tmpdir@^1.0.0 extracted to C:\Users\[...]\dev\psqlp\node_modules\.staging\os-tmpdir-6229c70a (169ms)
1548 silly extract os-homedir@^1.0.0 extracted to C:\Users\[...]\dev\psqlp\node_modules\.staging\os-homedir-1c7f6787 (170ms)
1549 silly extract semver@~5.3.0 extracted to C:\Users\[...]\dev\psqlp\node_modules\.staging\semver-b364a68f (291ms)
1550 silly extract punycode@^2.1.0 extracted to C:\Users\[...]\dev\psqlp\node_modules\.staging\punycode-e9a8a623 (234ms)
1551 silly extract safer-buffer@^2.0.2 extracted to C:\Users\[...]\dev\psqlp\node_modules\.staging\safer-buffer-18792f89 (265ms)
1552 silly extract pgsql-parser@latest extracted to C:\Users\[...]\dev\psqlp\node_modules\.staging\pgsql-parser-b258c2bb (522ms)
1553 silly extract gauge@~2.7.3 extracted to C:\Users\[...]\dev\psqlp\node_modules\.staging\gauge-cb613d97 (501ms)
1554 silly extract tough-cookie@~2.5.0 extracted to C:\Users\[...]\dev\psqlp\node_modules\.staging\tough-cookie-adfcd11b (405ms)
1555 silly extract asn1@~0.2.3 extracted to C:\Users\[...]\dev\psqlp\node_modules\.staging\asn1-9140b219 (359ms)
1556 silly extract uuid@^3.3.2 extracted to C:\Users\[...]\dev\psqlp\node_modules\.staging\uuid-a397f280 (522ms)
1557 silly extract tweetnacl@~0.14.0 extracted to C:\Users\[...]\dev\psqlp\node_modules\.staging\tweetnacl-fe769fb8 (460ms)
1558 silly extract ecc-jsbn@~0.1.1 extracted to C:\Users\[...]\dev\psqlp\node_modules\.staging\ecc-jsbn-3adb8862 (394ms)
1559 silly extract fstream@^1.0.0 extracted to C:\Users\[...]\dev\psqlp\node_modules\.staging\fstream-a4d2053d (605ms)
1560 silly extract request@^2.87.0 extracted to C:\Users\[...]\dev\psqlp\node_modules\.staging\request-9594a349 (639ms)
1561 silly extract pgsql-deparser@^1.2.3 extracted to C:\Users\[...]\dev\psqlp\node_modules\.staging\pgsql-deparser-1d1057dd (714ms)
1562 silly extract pgsql-enums@^1.0.2 extracted to C:\Users\[...]\dev\psqlp\node_modules\.staging\pgsql-enums-49a45454 (529ms)
1563 silly extract performance-now@^2.1.0 extracted to C:\Users\[...]\dev\psqlp\node_modules\.staging\performance-now-63d53e8d (505ms)
1564 silly extract qs@~6.5.2 extracted to C:\Users\[...]\dev\psqlp\node_modules\.staging\qs-393170eb (582ms)
1565 silly extract readable-stream@^2.0.6 extracted to C:\Users\[...]\dev\psqlp\node_modules\.staging\readable-stream-aa0337cd (773ms)
1566 silly extract [email protected] extracted to C:\Users\[...]\dev\psqlp\node_modules\.staging\json-schema-6443dc44 (1125ms)
1567 silly extract @pgql/[email protected] extracted to C:\Users\[...]\dev\psqlp\node_modules\.staging\@pgql\parse-bb7eb7da (882ms)
1568 silly extract psl@^1.1.28 extracted to C:\Users\[...]\dev\psqlp\node_modules\.staging\psl-b8e0d492 (615ms)
1569 silly extract sshpk@^1.7.0 extracted to C:\Users\[...]\dev\psqlp\node_modules\.staging\sshpk-d3a58b51 (952ms)
1570 silly extract [email protected] extracted to C:\Users\[...]\dev\psqlp\node_modules\.staging\dotty-c9634700 (1375ms)
1571 silly extract uri-js@^4.2.2 extracted to C:\Users\[...]\dev\psqlp\node_modules\.staging\uri-js-467e088f (1052ms)
1572 silly extract node-addon-api@^1.6.3 extracted to C:\Users\[...]\dev\psqlp\node_modules\.staging\node-addon-api-6c88f719 (1573ms)
1573 silly extract ajv@^6.12.3 extracted to C:\Users\[...]\dev\psqlp\node_modules\.staging\ajv-07f782d0 (1494ms)
1574 silly extract @babel/runtime@^7.11.2 extracted to C:\Users\[...]\dev\psqlp\node_modules\.staging\@babel\runtime-694dbeef (1361ms)
1575 silly extract tar@^2.0.0 extracted to C:\Users\[...]\dev\psqlp\node_modules\.staging\tar-eb43970b (1636ms)
1576 silly extract node-gyp@^3.3.1 extracted to C:\Users\[...]\dev\psqlp\node_modules\.staging\node-gyp-76ade134 (1666ms)
1577 timing action:extract Completed in 1955ms
1578 silly doReverseSerial unbuild 824
1579 silly doSerial remove 824
1580 silly doSerial move 824
1581 silly doSerial finalize 824
1582 silly finalize C:\Users\[...]\dev\psqlp\node_modules\abbrev
1583 silly finalize C:\Users\[...]\dev\psqlp\node_modules\ansi-regex
1584 silly finalize C:\Users\[...]\dev\psqlp\node_modules\aproba
1585 silly finalize C:\Users\[...]\dev\psqlp\node_modules\assert-plus
1586 silly finalize C:\Users\[...]\dev\psqlp\node_modules\asynckit
1587 silly finalize C:\Users\[...]\dev\psqlp\node_modules\aws-sign2
1588 silly finalize C:\Users\[...]\dev\psqlp\node_modules\aws4
1589 silly finalize C:\Users\[...]\dev\psqlp\node_modules\balanced-match
1590 silly finalize C:\Users\[...]\dev\psqlp\node_modules\caseless
1591 silly finalize C:\Users\[...]\dev\psqlp\node_modules\code-point-at
1592 silly finalize C:\Users\[...]\dev\psqlp\node_modules\concat-map
1593 silly finalize C:\Users\[...]\dev\psqlp\node_modules\brace-expansion
1594 silly finalize C:\Users\[...]\dev\psqlp\node_modules\console-control-strings
1595 silly finalize C:\Users\[...]\dev\psqlp\node_modules\core-util-is
1596 silly finalize C:\Users\[...]\dev\psqlp\node_modules\dashdash
1597 silly finalize C:\Users\[...]\dev\psqlp\node_modules\delayed-stream
1598 silly finalize C:\Users\[...]\dev\psqlp\node_modules\combined-stream
1599 silly finalize C:\Users\[...]\dev\psqlp\node_modules\delegates
1600 silly finalize C:\Users\[...]\dev\psqlp\node_modules\dotty
1601 silly finalize C:\Users\[...]\dev\psqlp\node_modules\extend
1602 silly finalize C:\Users\[...]\dev\psqlp\node_modules\extsprintf
1603 silly finalize C:\Users\[...]\dev\psqlp\node_modules\fast-deep-equal
1604 silly finalize C:\Users\[...]\dev\psqlp\node_modules\fast-json-stable-stringify
1605 silly finalize C:\Users\[...]\dev\psqlp\node_modules\forever-agent
1606 silly finalize C:\Users\[...]\dev\psqlp\node_modules\fs.realpath
1607 silly finalize C:\Users\[...]\dev\psqlp\node_modules\getpass
1608 silly finalize C:\Users\[...]\dev\psqlp\node_modules\graceful-fs
1609 silly finalize C:\Users\[...]\dev\psqlp\node_modules\har-schema
1610 silly finalize C:\Users\[...]\dev\psqlp\node_modules\has-unicode
1611 silly finalize C:\Users\[...]\dev\psqlp\node_modules\inherits
1612 silly finalize C:\Users\[...]\dev\psqlp\node_modules\block-stream
1613 silly finalize C:\Users\[...]\dev\psqlp\node_modules\is-typedarray
1614 silly finalize C:\Users\[...]\dev\psqlp\node_modules\isarray
1615 silly finalize C:\Users\[...]\dev\psqlp\node_modules\isexe
1616 silly finalize C:\Users\[...]\dev\psqlp\node_modules\isstream
1617 silly finalize C:\Users\[...]\dev\psqlp\node_modules\jsbn
1618 silly finalize C:\Users\[...]\dev\psqlp\node_modules\json-schema
1619 silly finalize C:\Users\[...]\dev\psqlp\node_modules\json-schema-traverse
1620 silly finalize C:\Users\[...]\dev\psqlp\node_modules\json-stringify-safe
1621 silly finalize C:\Users\[...]\dev\psqlp\node_modules\mime-db
1622 silly finalize C:\Users\[...]\dev\psqlp\node_modules\mime-types
1623 silly finalize C:\Users\[...]\dev\psqlp\node_modules\form-data
1624 silly finalize C:\Users\[...]\dev\psqlp\node_modules\minimatch
1625 silly finalize C:\Users\[...]\dev\psqlp\node_modules\mkdirp
1626 silly finalize C:\Users\[...]\dev\psqlp\node_modules\node-addon-api
1627 silly finalize C:\Users\[...]\dev\psqlp\node_modules\nopt
1628 silly finalize C:\Users\[...]\dev\psqlp\node_modules\number-is-nan
1629 silly finalize C:\Users\[...]\dev\psqlp\node_modules\is-fullwidth-code-point
1630 silly finalize C:\Users\[...]\dev\psqlp\node_modules\oauth-sign
1631 silly finalize C:\Users\[...]\dev\psqlp\node_modules\object-assign
1632 silly finalize C:\Users\[...]\dev\psqlp\node_modules\os-homedir
1633 silly finalize C:\Users\[...]\dev\psqlp\node_modules\os-tmpdir
1634 silly finalize C:\Users\[...]\dev\psqlp\node_modules\osenv
1635 silly finalize C:\Users\[...]\dev\psqlp\node_modules\path-is-absolute
1636 silly finalize C:\Users\[...]\dev\psqlp\node_modules\performance-now
1637 silly finalize C:\Users\[...]\dev\psqlp\node_modules\process-nextick-args
1638 silly finalize C:\Users\[...]\dev\psqlp\node_modules\psl
1639 silly finalize C:\Users\[...]\dev\psqlp\node_modules\punycode
1640 silly finalize C:\Users\[...]\dev\psqlp\node_modules\qs
1641 silly finalize C:\Users\[...]\dev\psqlp\node_modules\regenerator-runtime
1642 silly finalize C:\Users\[...]\dev\psqlp\node_modules\@babel\runtime
1643 silly finalize C:\Users\[...]\dev\psqlp\node_modules\pgsql-enums
1644 silly finalize C:\Users\[...]\dev\psqlp\node_modules\safe-buffer
1645 silly finalize C:\Users\[...]\dev\psqlp\node_modules\safer-buffer
1646 silly finalize C:\Users\[...]\dev\psqlp\node_modules\asn1
1647 silly finalize C:\Users\[...]\dev\psqlp\node_modules\ecc-jsbn
1648 silly finalize C:\Users\[...]\dev\psqlp\node_modules\semver
1649 silly finalize C:\Users\[...]\dev\psqlp\node_modules\set-blocking
1650 silly finalize C:\Users\[...]\dev\psqlp\node_modules\signal-exit
1651 silly finalize C:\Users\[...]\dev\psqlp\node_modules\string_decoder
1652 silly finalize C:\Users\[...]\dev\psqlp\node_modules\strip-ansi
1653 silly finalize C:\Users\[...]\dev\psqlp\node_modules\string-width
1654 silly finalize C:\Users\[...]\dev\psqlp\node_modules\tough-cookie
1655 silly finalize C:\Users\[...]\dev\psqlp\node_modules\tunnel-agent
1656 silly finalize C:\Users\[...]\dev\psqlp\node_modules\tweetnacl
1657 silly finalize C:\Users\[...]\dev\psqlp\node_modules\bcrypt-pbkdf
1658 silly finalize C:\Users\[...]\dev\psqlp\node_modules\sshpk
1659 silly finalize C:\Users\[...]\dev\psqlp\node_modules\uri-js
1660 silly finalize C:\Users\[...]\dev\psqlp\node_modules\ajv
1661 silly finalize C:\Users\[...]\dev\psqlp\node_modules\har-validator
1662 silly finalize C:\Users\[...]\dev\psqlp\node_modules\util-deprecate
1663 silly finalize C:\Users\[...]\dev\psqlp\node_modules\readable-stream
1664 silly finalize C:\Users\[...]\dev\psqlp\node_modules\are-we-there-yet
1665 silly finalize C:\Users\[...]\dev\psqlp\node_modules\uuid
1666 silly finalize C:\Users\[...]\dev\psqlp\node_modules\verror
1667 silly finalize C:\Users\[...]\dev\psqlp\node_modules\jsprim
1668 silly finalize C:\Users\[...]\dev\psqlp\node_modules\http-signature
1669 silly finalize C:\Users\[...]\dev\psqlp\node_modules\request
1670 silly finalize C:\Users\[...]\dev\psqlp\node_modules\which
1671 silly finalize C:\Users\[...]\dev\psqlp\node_modules\wide-align
1672 silly finalize C:\Users\[...]\dev\psqlp\node_modules\gauge
1673 silly finalize C:\Users\[...]\dev\psqlp\node_modules\npmlog
1674 silly finalize C:\Users\[...]\dev\psqlp\node_modules\wrappy
1675 silly finalize C:\Users\[...]\dev\psqlp\node_modules\once
1676 silly finalize C:\Users\[...]\dev\psqlp\node_modules\inflight
1677 silly finalize C:\Users\[...]\dev\psqlp\node_modules\glob
1678 silly finalize C:\Users\[...]\dev\psqlp\node_modules\rimraf
1679 silly finalize C:\Users\[...]\dev\psqlp\node_modules\fstream
1680 silly finalize C:\Users\[...]\dev\psqlp\node_modules\tar
1681 silly finalize C:\Users\[...]\dev\psqlp\node_modules\node-gyp
1682 silly finalize C:\Users\[...]\dev\psqlp\node_modules\@pgql\parse
1683 silly finalize C:\Users\[...]\dev\psqlp\node_modules\pgsql-deparser
1684 silly finalize C:\Users\[...]\dev\psqlp\node_modules\pgsql-parser
1685 timing action:finalize Completed in 201ms
1686 silly doParallel refresh-package-json 103
1687 silly refresh-package-json C:\Users\[...]\dev\psqlp\node_modules\abbrev
1688 silly refresh-package-json C:\Users\[...]\dev\psqlp\node_modules\ansi-regex
1689 silly refresh-package-json C:\Users\[...]\dev\psqlp\node_modules\aproba
1690 silly refresh-package-json C:\Users\[...]\dev\psqlp\node_modules\assert-plus
1691 silly refresh-package-json C:\Users\[...]\dev\psqlp\node_modules\asynckit
1692 silly refresh-package-json C:\Users\[...]\dev\psqlp\node_modules\aws-sign2
1693 silly refresh-package-json C:\Users\[...]\dev\psqlp\node_modules\aws4
1694 silly refresh-package-json C:\Users\[...]\dev\psqlp\node_modules\balanced-match
1695 silly refresh-package-json C:\Users\[...]\dev\psqlp\node_modules\caseless
1696 silly refresh-package-json C:\Users\[...]\dev\psqlp\node_modules\code-point-at
1697 silly refresh-package-json C:\Users\[...]\dev\psqlp\node_modules\concat-map
1698 silly refresh-package-json C:\Users\[...]\dev\psqlp\node_modules\brace-expansion
1699 silly refresh-package-json C:\Users\[...]\dev\psqlp\node_modules\console-control-strings
1700 silly refresh-package-json C:\Users\[...]\dev\psqlp\node_modules\core-util-is
1701 silly refresh-package-json C:\Users\[...]\dev\psqlp\node_modules\dashdash
1702 silly refresh-package-json C:\Users\[...]\dev\psqlp\node_modules\delayed-stream
1703 silly refresh-package-json C:\Users\[...]\dev\psqlp\node_modules\combined-stream
1704 silly refresh-package-json C:\Users\[...]\dev\psqlp\node_modules\delegates
1705 silly refresh-package-json C:\Users\[...]\dev\psqlp\node_modules\dotty
1706 silly refresh-package-json C:\Users\[...]\dev\psqlp\node_modules\extend
1707 silly refresh-package-json C:\Users\[...]\dev\psqlp\node_modules\extsprintf
1708 silly refresh-package-json C:\Users\[...]\dev\psqlp\node_modules\fast-deep-equal
1709 silly refresh-package-json C:\Users\[...]\dev\psqlp\node_modules\fast-json-stable-stringify
1710 silly refresh-package-json C:\Users\[...]\dev\psqlp\node_modules\forever-agent
1711 silly refresh-package-json C:\Users\[...]\dev\psqlp\node_modules\fs.realpath
1712 silly refresh-package-json C:\Users\[...]\dev\psqlp\node_modules\getpass
1713 silly refresh-package-json C:\Users\[...]\dev\psqlp\node_modules\graceful-fs
1714 silly refresh-package-json C:\Users\[...]\dev\psqlp\node_modules\har-schema
1715 silly refresh-package-json C:\Users\[...]\dev\psqlp\node_modules\has-unicode
1716 silly refresh-package-json C:\Users\[...]\dev\psqlp\node_modules\inherits
1717 silly refresh-package-json C:\Users\[...]\dev\psqlp\node_modules\block-stream
1718 silly refresh-package-json C:\Users\[...]\dev\psqlp\node_modules\is-typedarray
1719 silly refresh-package-json C:\Users\[...]\dev\psqlp\node_modules\isarray
1720 silly refresh-package-json C:\Users\[...]\dev\psqlp\node_modules\isexe
1721 silly refresh-package-json C:\Users\[...]\dev\psqlp\node_modules\isstream
1722 silly refresh-package-json C:\Users\[...]\dev\psqlp\node_modules\jsbn
1723 silly refresh-package-json C:\Users\[...]\dev\psqlp\node_modules\json-schema
1724 silly refresh-package-json C:\Users\[...]\dev\psqlp\node_modules\json-schema-traverse
1725 silly refresh-package-json C:\Users\[...]\dev\psqlp\node_modules\json-stringify-safe
1726 silly refresh-package-json C:\Users\[...]\dev\psqlp\node_modules\mime-db
1727 silly refresh-package-json C:\Users\[...]\dev\psqlp\node_modules\mime-types
1728 silly refresh-package-json C:\Users\[...]\dev\psqlp\node_modules\form-data
1729 silly refresh-package-json C:\Users\[...]\dev\psqlp\node_modules\minimatch
1730 silly refresh-package-json C:\Users\[...]\dev\psqlp\node_modules\mkdirp
1731 silly refresh-package-json C:\Users\[...]\dev\psqlp\node_modules\node-addon-api
1732 silly refresh-package-json C:\Users\[...]\dev\psqlp\node_modules\nopt
1733 silly refresh-package-json C:\Users\[...]\dev\psqlp\node_modules\number-is-nan
1734 silly refresh-package-json C:\Users\[...]\dev\psqlp\node_modules\is-fullwidth-code-point
1735 silly refresh-package-json C:\Users\[...]\dev\psqlp\node_modules\oauth-sign
1736 silly refresh-package-json C:\Users\[...]\dev\psqlp\node_modules\object-assign
1737 silly refresh-package-json C:\Users\[...]\dev\psqlp\node_modules\pgsql-parser
1738 silly refresh-package-json C:\Users\[...]\dev\psqlp\node_modules\pgsql-deparser
1739 silly refresh-package-json C:\Users\[...]\dev\psqlp\node_modules\@pgql\parse
1740 silly refresh-package-json C:\Users\[...]\dev\psqlp\node_modules\node-gyp
1741 silly refresh-package-json C:\Users\[...]\dev\psqlp\node_modules\tar
1742 silly refresh-package-json C:\Users\[...]\dev\psqlp\node_modules\fstream
1743 silly refresh-package-json C:\Users\[...]\dev\psqlp\node_modules\rimraf
1744 silly refresh-package-json C:\Users\[...]\dev\psqlp\node_modules\glob
1745 silly refresh-package-json C:\Users\[...]\dev\psqlp\node_modules\inflight
1746 silly refresh-package-json C:\Users\[...]\dev\psqlp\node_modules\once
1747 silly refresh-package-json C:\Users\[...]\dev\psqlp\node_modules\wrappy
1748 silly refresh-package-json C:\Users\[...]\dev\psqlp\node_modules\npmlog
1749 silly refresh-package-json C:\Users\[...]\dev\psqlp\node_modules\gauge
1750 silly refresh-package-json C:\Users\[...]\dev\psqlp\node_modules\wide-align
1751 silly refresh-package-json C:\Users\[...]\dev\psqlp\node_modules\which
1752 silly refresh-package-json C:\Users\[...]\dev\psqlp\node_modules\request
1753 silly refresh-package-json C:\Users\[...]\dev\psqlp\node_modules\http-signature
1754 silly refresh-package-json C:\Users\[...]\dev\psqlp\node_modules\jsprim
1755 silly refresh-package-json C:\Users\[...]\dev\psqlp\node_modules\verror
1756 silly refresh-package-json C:\Users\[...]\dev\psqlp\node_modules\uuid
1757 silly refresh-package-json C:\Users\[...]\dev\psqlp\node_modules\are-we-there-yet
1758 silly refresh-package-json C:\Users\[...]\dev\psqlp\node_modules\readable-stream
1759 silly refresh-package-json C:\Users\[...]\dev\psqlp\node_modules\util-deprecate
1760 silly refresh-package-json C:\Users\[...]\dev\psqlp\node_modules\har-validator
1761 silly refresh-package-json C:\Users\[...]\dev\psqlp\node_modules\ajv
1762 silly refresh-package-json C:\Users\[...]\dev\psqlp\node_modules\uri-js
1763 silly refresh-package-json C:\Users\[...]\dev\psqlp\node_modules\sshpk
1764 silly refresh-package-json C:\Users\[...]\dev\psqlp\node_modules\bcrypt-pbkdf
1765 silly refresh-package-json C:\Users\[...]\dev\psqlp\node_modules\tweetnacl
1766 silly refresh-package-json C:\Users\[...]\dev\psqlp\node_modules\tunnel-agent
1767 silly refresh-package-json C:\Users\[...]\dev\psqlp\node_modules\tough-cookie
1768 silly refresh-package-json C:\Users\[...]\dev\psqlp\node_modules\string-width
1769 silly refresh-package-json C:\Users\[...]\dev\psqlp\node_modules\strip-ansi
1770 silly refresh-package-json C:\Users\[...]\dev\psqlp\node_modules\string_decoder
1771 silly refresh-package-json C:\Users\[...]\dev\psqlp\node_modules\signal-exit
1772 silly refresh-package-json C:\Users\[...]\dev\psqlp\node_modules\set-blocking
1773 silly refresh-package-json C:\Users\[...]\dev\psqlp\node_modules\semver
1774 silly refresh-package-json C:\Users\[...]\dev\psqlp\node_modules\ecc-jsbn
1775 silly refresh-package-json C:\Users\[...]\dev\psqlp\node_modules\asn1
1776 silly refresh-package-json C:\Users\[...]\dev\psqlp\node_modules\safer-buffer
1777 silly refresh-package-json C:\Users\[...]\dev\psqlp\node_modules\safe-buffer
1778 silly refresh-package-json C:\Users\[...]\dev\psqlp\node_modules\pgsql-enums
1779 silly refresh-package-json C:\Users\[...]\dev\psqlp\node_modules\@babel\runtime
1780 silly refresh-package-json C:\Users\[...]\dev\psqlp\node_modules\regenerator-runtime
1781 silly refresh-package-json C:\Users\[...]\dev\psqlp\node_modules\qs
1782 silly refresh-package-json C:\Users\[...]\dev\psqlp\node_modules\punycode
1783 silly refresh-package-json C:\Users\[...]\dev\psqlp\node_modules\psl
1784 silly refresh-package-json C:\Users\[...]\dev\psqlp\node_modules\process-nextick-args
1785 silly refresh-package-json C:\Users\[...]\dev\psqlp\node_modules\performance-now
1786 silly refresh-package-json C:\Users\[...]\dev\psqlp\node_modules\path-is-absolute
1787 silly refresh-package-json C:\Users\[...]\dev\psqlp\node_modules\osenv
1788 silly refresh-package-json C:\Users\[...]\dev\psqlp\node_modules\os-tmpdir
1789 silly refresh-package-json C:\Users\[...]\dev\psqlp\node_modules\os-homedir
1790 timing action:refresh-package-json Completed in 427ms
1791 silly doParallel preinstall 103
1792 silly preinstall [email protected]
1793 info lifecycle [email protected]~preinstall: [email protected]
1794 silly preinstall [email protected]
1795 info lifecycle [email protected]~preinstall: [email protected]
1796 silly preinstall [email protected]
1797 info lifecycle [email protected]~preinstall: [email protected]
1798 silly preinstall [email protected]
1799 info lifecycle [email protected]~preinstall: [email protected]
1800 silly preinstall [email protected]
1801 info lifecycle [email protected]~preinstall: [email protected]
1802 silly preinstall [email protected]
1803 info lifecycle [email protected]~preinstall: [email protected]
1804 silly preinstall [email protected]
1805 info lifecycle [email protected]~preinstall: [email protected]
1806 silly preinstall [email protected]
1807 info lifecycle [email protected]~preinstall: [email protected]
1808 silly preinstall [email protected]
1809 info lifecycle [email protected]~preinstall: [email protected]
1810 silly preinstall [email protected]
1811 info lifecycle [email protected]~preinstall: [email protected]
1812 silly preinstall [email protected]
1813 info lifecycle [email protected]~preinstall: [email protected]
1814 silly preinstall [email protected]
1815 info lifecycle [email protected]~preinstall: [email protected]
1816 silly preinstall [email protected]
1817 info lifecycle [email protected]~preinstall: [email protected]
1818 silly preinstall [email protected]
1819 info lifecycle [email protected]~preinstall: [email protected]
1820 silly preinstall [email protected]
1821 info lifecycle [email protected]~preinstall: [email protected]
1822 silly preinstall [email protected]
1823 info lifecycle [email protected]~preinstall: [email protected]
1824 silly preinstall [email protected]
1825 info lifecycle [email protected]~preinstall: [email protected]
1826 silly preinstall [email protected]
1827 info lifecycle [email protected]~preinstall: [email protected]
1828 silly preinstall [email protected]
1829 info lifecycle [email protected]~preinstall: [email protected]
1830 silly preinstall [email protected]
1831 info lifecycle [email protected]~preinstall: [email protected]
1832 silly preinstall [email protected]
1833 info lifecycle [email protected]~preinstall: [email protected]
1834 silly preinstall [email protected]
1835 info lifecycle [email protected]~preinstall: [email protected]
1836 silly preinstall [email protected]
1837 info lifecycle [email protected]~preinstall: [email protected]
1838 silly preinstall [email protected]
1839 info lifecycle [email protected]~preinstall: [email protected]
1840 silly preinstall [email protected]
1841 info lifecycle [email protected]~preinstall: [email protected]
1842 silly preinstall [email protected]
1843 info lifecycle [email protected]~preinstall: [email protected]
1844 silly preinstall [email protected]
1845 info lifecycle [email protected]~preinstall: [email protected]
1846 silly preinstall [email protected]
1847 info lifecycle [email protected]~preinstall: [email protected]
1848 silly preinstall [email protected]
1849 info lifecycle [email protected]~preinstall: [email protected]
1850 silly preinstall [email protected]
1851 info lifecycle [email protected]~preinstall: [email protected]
1852 silly preinstall [email protected]
1853 info lifecycle [email protected]~preinstall: [email protected]
1854 silly preinstall [email protected]
1855 info lifecycle [email protected]~preinstall: [email protected]
1856 silly preinstall [email protected]
1857 info lifecycle [email protected]~preinstall: [email protected]
1858 silly preinstall [email protected]
1859 info lifecycle [email protected]~preinstall: [email protected]
1860 silly preinstall [email protected]
1861 info lifecycle [email protected]~preinstall: [email protected]
1862 silly preinstall [email protected]
1863 info lifecycle [email protected]~preinstall: [email protected]
1864 silly preinstall [email protected]
1865 info lifecycle [email protected]~preinstall: [email protected]
1866 silly preinstall [email protected]
1867 info lifecycle [email protected]~preinstall: [email protected]
1868 silly preinstall [email protected]
1869 info lifecycle [email protected]~preinstall: [email protected]
1870 silly preinstall [email protected]
1871 info lifecycle [email protected]~preinstall: [email protected]
1872 silly preinstall [email protected]
1873 info lifecycle [email protected]~preinstall: [email protected]
1874 silly preinstall [email protected]
1875 info lifecycle [email protected]~preinstall: [email protected]
1876 silly preinstall [email protected]
1877 info lifecycle [email protected]~preinstall: [email protected]
1878 silly preinstall [email protected]
1879 info lifecycle [email protected]~preinstall: [email protected]
1880 silly preinstall [email protected]
1881 info lifecycle [email protected]~preinstall: [email protected]
1882 silly preinstall [email protected]
1883 info lifecycle [email protected]~preinstall: [email protected]
1884 silly preinstall [email protected]
1885 info lifecycle [email protected]~preinstall: [email protected]
1886 silly preinstall [email protected]
1887 info lifecycle [email protected]~preinstall: [email protected]
1888 silly preinstall [email protected]
1889 info lifecycle [email protected]~preinstall: [email protected]
1890 silly preinstall [email protected]
1891 info lifecycle [email protected]~preinstall: [email protected]
1892 silly preinstall [email protected]
1893 info lifecycle [email protected]~preinstall: [email protected]
1894 silly preinstall [email protected]
1895 info lifecycle [email protected]~preinstall: [email protected]
1896 silly preinstall @pgql/[email protected]
1897 info lifecycle @pgql/[email protected]~preinstall: @pgql/[email protected]
1898 silly preinstall [email protected]
1899 info lifecycle [email protected]~preinstall: [email protected]
1900 silly preinstall [email protected]
1901 info lifecycle [email protected]~preinstall: [email protected]
1902 silly preinstall [email protected]
1903 info lifecycle [email protected]~preinstall: [email protected]
1904 silly preinstall [email protected]
1905 info lifecycle [email protected]~preinstall: [email protected]
1906 silly preinstall [email protected]
1907 info lifecycle [email protected]~preinstall: [email protected]
1908 silly preinstall [email protected]
1909 info lifecycle [email protected]~preinstall: [email protected]
1910 silly preinstall [email protected]
1911 info lifecycle [email protected]~preinstall: [email protected]
1912 silly preinstall [email protected]
1913 info lifecycle [email protected]~preinstall: [email protected]
1914 silly preinstall [email protected]
1915 info lifecycle [email protected]~preinstall: [email protected]
1916 silly preinstall [email protected]
1917 info lifecycle [email protected]~preinstall: [email protected]
1918 silly preinstall [email protected]
1919 info lifecycle [email protected]~preinstall: [email protected]
1920 silly preinstall [email protected]
1921 info lifecycle [email protected]~preinstall: [email protected]
1922 silly preinstall [email protected]
1923 info lifecycle [email protected]~preinstall: [email protected]
1924 silly preinstall [email protected]
1925 info lifecycle [email protected]~preinstall: [email protected]
1926 silly preinstall [email protected]
1927 info lifecycle [email protected]~preinstall: [email protected]
1928 silly preinstall [email protected]
1929 info lifecycle [email protected]~preinstall: [email protected]
1930 silly preinstall [email protected]
1931 info lifecycle [email protected]~preinstall: [email protected]
1932 silly preinstall [email protected]
1933 info lifecycle [email protected]~preinstall: [email protected]
1934 silly preinstall [email protected]
1935 info lifecycle [email protected]~preinstall: [email protected]
1936 silly preinstall [email protected]
1937 info lifecycle [email protected]~preinstall: [email protected]
1938 silly preinstall [email protected]
1939 info lifecycle [email protected]~preinstall: [email protected]
1940 silly preinstall [email protected]
1941 info lifecycle [email protected]~preinstall: [email protected]
1942 silly preinstall [email protected]
1943 info lifecycle [email protected]~preinstall: [email protected]
1944 silly preinstall [email protected]
1945 info lifecycle [email protected]~preinstall: [email protected]
1946 silly preinstall [email protected]
1947 info lifecycle [email protected]~preinstall: [email protected]
1948 silly preinstall [email protected]
1949 info lifecycle [email protected]~preinstall: [email protected]
1950 silly preinstall [email protected]
1951 info lifecycle [email protected]~preinstall: [email protected]
1952 silly preinstall [email protected]
1953 info lifecycle [email protected]~preinstall: [email protected]
1954 silly preinstall [email protected]
1955 info lifecycle [email protected]~preinstall: [email protected]
1956 silly preinstall [email protected]
1957 info lifecycle [email protected]~preinstall: [email protected]
1958 silly preinstall [email protected]
1959 info lifecycle [email protected]~preinstall: [email protected]
1960 silly preinstall [email protected]
1961 info lifecycle [email protected]~preinstall: [email protected]
1962 silly preinstall [email protected]
1963 info lifecycle [email protected]~preinstall: [email protected]
1964 silly preinstall [email protected]
1965 info lifecycle [email protected]~preinstall: [email protected]
1966 silly preinstall [email protected]
1967 info lifecycle [email protected]~preinstall: [email protected]
1968 silly preinstall [email protected]
1969 info lifecycle [email protected]~preinstall: [email protected]
1970 silly preinstall [email protected]
1971 info lifecycle [email protected]~preinstall: [email protected]
1972 silly preinstall [email protected]
1973 info lifecycle [email protected]~preinstall: [email protected]
1974 silly preinstall [email protected]
1975 info lifecycle [email protected]~preinstall: [email protected]
1976 silly preinstall @babel/[email protected]
1977 info lifecycle @babel/[email protected]~preinstall: @babel/[email protected]
1978 silly preinstall [email protected]
1979 info lifecycle [email protected]~preinstall: [email protected]
1980 silly preinstall [email protected]
1981 info lifecycle [email protected]~preinstall: [email protected]
1982 silly preinstall [email protected]
1983 info lifecycle [email protected]~preinstall: [email protected]
1984 silly preinstall [email protected]
1985 info lifecycle [email protected]~preinstall: [email protected]
1986 silly preinstall [email protected]
1987 info lifecycle [email protected]~preinstall: [email protected]
1988 silly preinstall [email protected]
1989 info lifecycle [email protected]~preinstall: [email protected]
1990 silly preinstall [email protected]
1991 info lifecycle [email protected]~preinstall: [email protected]
1992 silly preinstall [email protected]
1993 info lifecycle [email protected]~preinstall: [email protected]
1994 silly preinstall [email protected]
1995 info lifecycle [email protected]~preinstall: [email protected]
1996 silly preinstall [email protected]
1997 info lifecycle [email protected]~preinstall: [email protected]
1998 verbose lifecycle @pgql/[email protected]~preinstall: unsafe-perm in lifecycle true
1999 verbose lifecycle @pgql/[email protected]~preinstall: PATH: C:\Users\[...]\AppData\Roaming\nvm\v10.16.0\node_modules\npm\node_modules\npm-lifecycle\node-gyp-bin;C:\Users\[...]\dev\psqlp\node_modules\@pgql\parse\node_modules\.bin;C:\Users\[...]\dev\psqlp\node_modules\.bin;C:\Program Files\AdoptOpenJDK\jdk-11.0.7.10-hotspot\bin;C:\Python38\Scripts\;C:\Python38\;C:\WINDOWS\system32;C:\WINDOWS;C:\WINDOWS\System32\Wbem;C:\WINDOWS\System32\WindowsPowerShell\v1.0\;C:\WINDOWS\System32\OpenSSH\;C:\ProgramData\chocolatey\bin;C:\Users\[...]\AppData\Roaming\nvm;C:\Program Files\nodejs;C:\Program Files\Git\cmd;C:\Program Files (x86)\dotnet\;C:\Users\[...]\.windows-build-tools\python27\;C:\Users\[...]\.windows-build-tools\python27\;C:\Users\[...]\.windows-build-tools\python27\;C:\Users\[...]\.windows-build-tools\python27\;C:\Users\[...]\AppData\Local\Microsoft\WindowsApps;C:\Users\[...]\AppData\Local\atom\bin;C:\Users\[...]\AppData\Local\Programs\Microsoft VS Code\bin;C:\Program Files\Salesforce CLI\bin;C:\Users\[...]\AppData\Roaming\npm;C:\Program Files (x86)\GitHub CLI\;C:\Users\[...]\AppData\Roaming\nvm;C:\Program Files\nodejs;C:\Users\[...]\AppData\Local\Microsoft\WindowsApps;C:\Program Files\heroku\bin
2000 verbose lifecycle @pgql/[email protected]~preinstall: CWD: C:\Users\[...]\dev\psqlp\node_modules\@pgql\parse
2001 silly lifecycle @pgql/[email protected]~preinstall: Args: [ '/d /s /c', 'script/buildAddon.sh' ]
2002 silly lifecycle @pgql/[email protected]~preinstall: Returned: code: 1  signal: null
2003 info lifecycle @pgql/[email protected]~preinstall: Failed to exec preinstall script
2004 timing action:preinstall Completed in 48ms
2005 verbose unlock done using C:\Users\[...]\AppData\Roaming\npm-cache\_locks\staging-d6ce8c16a29c78be.lock for C:\Users\[...]\dev\psqlp\node_modules\.staging
2006 timing stage:rollbackFailedOptional Completed in 255ms
2007 timing stage:runTopLevelLifecycles Completed in 8787ms
2008 silly saveTree [email protected]
2008 silly saveTree `-- [email protected]
2008 silly saveTree   +-- @babel/[email protected]
2008 silly saveTree   | `-- [email protected]
2008 silly saveTree   +-- @pgql/[email protected]
2008 silly saveTree   | +-- [email protected]
2008 silly saveTree   | `-- [email protected]
2008 silly saveTree   |   +-- [email protected]
2008 silly saveTree   |   | +-- [email protected]
2008 silly saveTree   |   | +-- [email protected]
2008 silly saveTree   |   | +-- [email protected]
2008 silly saveTree   |   | | `-- [email protected]
2008 silly saveTree   |   | `-- [email protected]
2008 silly saveTree   |   |   `-- [email protected]
2008 silly saveTree   |   |     +-- [email protected]
2008 silly saveTree   |   |     +-- [email protected]
2008 silly saveTree   |   |     | +-- [email protected]
2008 silly saveTree   |   |     | | `-- [email protected]
2008 silly saveTree   |   |     | `-- [email protected]
2008 silly saveTree   |   |     +-- [email protected]
2008 silly saveTree   |   |     | `-- [email protected]
2008 silly saveTree   |   |     |   +-- [email protected]
2008 silly saveTree   |   |     |   `-- [email protected]
2008 silly saveTree   |   |     +-- [email protected]
2008 silly saveTree   |   |     `-- [email protected]
2008 silly saveTree   |   +-- [email protected]
2008 silly saveTree   |   +-- [email protected]
2008 silly saveTree   |   +-- [email protected]
2008 silly saveTree   |   +-- [email protected]
2008 silly saveTree   |   | `-- [email protected]
2008 silly saveTree   |   +-- [email protected]
2008 silly saveTree   |   | +-- [email protected]
2008 silly saveTree   |   | | +-- [email protected]
2008 silly saveTree   |   | | `-- [email protected]
2008 silly saveTree   |   | |   +-- [email protected]
2008 silly saveTree   |   | |   +-- [email protected]
2008 silly saveTree   |   | |   +-- [email protected]
2008 silly saveTree   |   | |   +-- [email protected]
2008 silly saveTree   |   | |   +-- [email protected]
2008 silly saveTree   |   | |   `-- [email protected]
2008 silly saveTree   |   | +-- [email protected]
2008 silly saveTree   |   | +-- [email protected]
2008 silly saveTree   |   | | +-- [email protected]
2008 silly saveTree   |   | | +-- [email protected]
2008 silly saveTree   |   | | +-- [email protected]
2008 silly saveTree   |   | | +-- [email protected]
2008 silly saveTree   |   | | +-- [email protected]
2008 silly saveTree   |   | | | +-- [email protected]
2008 silly saveTree   |   | | | +-- [email protected]
2008 silly saveTree   |   | | | | `-- [email protected]
2008 silly saveTree   |   | | | `-- [email protected]
2008 silly saveTree   |   | | |   `-- [email protected]
2008 silly saveTree   |   | | +-- [email protected]
2008 silly saveTree   |   | | `-- [email protected]
2008 silly saveTree   |   | `-- [email protected]
2008 silly saveTree   |   +-- [email protected]
2008 silly saveTree   |   | +-- [email protected]
2008 silly saveTree   |   | `-- [email protected]
2008 silly saveTree   |   +-- [email protected]
2008 silly saveTree   |   | +-- [email protected]
2008 silly saveTree   |   | +-- [email protected]
2008 silly saveTree   |   | +-- [email protected]
2008 silly saveTree   |   | +-- [email protected]
2008 silly saveTree   |   | | `-- [email protected]
2008 silly saveTree   |   | +-- [email protected]
2008 silly saveTree   |   | +-- [email protected]
2008 silly saveTree   |   | +-- [email protected]
2008 silly saveTree   |   | | +-- [email protected]
2008 silly saveTree   |   | | `-- [email protected]
2008 silly saveTree   |   | |   `-- [email protected]
2008 silly saveTree   |   | +-- [email protected]
2008 silly saveTree   |   | | +-- [email protected]
2008 silly saveTree   |   | | | +-- [email protected]
2008 silly saveTree   |   | | | +-- [email protected]
2008 silly saveTree   |   | | | +-- [email protected]
2008 silly saveTree   |   | | | `-- [email protected]
2008 silly saveTree   |   | | |   `-- [email protected]
2008 silly saveTree   |   | | `-- [email protected]
2008 silly saveTree   |   | +-- [email protected]
2008 silly saveTree   |   | | +-- [email protected]
2008 silly saveTree   |   | | +-- [email protected]
2008 silly saveTree   |   | | | +-- [email protected]
2008 silly saveTree   |   | | | +-- [email protected]
2008 silly saveTree   |   | | | `-- [email protected]
2008 silly saveTree   |   | | `-- [email protected]
2008 silly saveTree   |   | |   +-- [email protected]
2008 silly saveTree   |   | |   | `-- [email protected]
2008 silly saveTree   |   | |   +-- [email protected]
2008 silly saveTree   |   | |   | `-- [email protected]
2008 silly saveTree   |   | |   +-- [email protected]
2008 silly saveTree   |   | |   +-- [email protected]
2008 silly saveTree   |   | |   | `-- [email protected]
2008 silly saveTree   |   | |   +-- [email protected]
2008 silly saveTree   |   | |   +-- [email protected]
2008 silly saveTree   |   | |   +-- [email protected]
2008 silly saveTree   |   | |   `-- [email protected]
2008 silly saveTree   |   | +-- [email protected]
2008 silly saveTree   |   | +-- [email protected]
2008 silly saveTree   |   | +-- [email protected]
2008 silly saveTree   |   | +-- [email protected]
2008 silly saveTree   |   | +-- [email protected]
2008 silly saveTree   |   | +-- [email protected]
2008 silly saveTree   |   | +-- [email protected]
2008 silly saveTree   |   | +-- [email protected]
2008 silly saveTree   |   | | `-- [email protected]
2008 silly saveTree   |   | +-- [email protected]
2008 silly saveTree   |   | `-- [email protected]
2008 silly saveTree   |   +-- [email protected]
2008 silly saveTree   |   +-- [email protected]
2008 silly saveTree   |   +-- [email protected]
2008 silly saveTree   |   | `-- [email protected]
2008 silly saveTree   |   `-- [email protected]
2008 silly saveTree   |     `-- [email protected]
2008 silly saveTree   +-- [email protected]
2008 silly saveTree   +-- [email protected]
2008 silly saveTree   | +-- [email protected]
2008 silly saveTree   | +-- [email protected]
2008 silly saveTree   | `-- [email protected]
2008 silly saveTree   `-- [email protected]
2009 warn [email protected] No description
2010 warn [email protected] No repository field.
2011 verbose stack Error: @pgql/[email protected] preinstall: `script/buildAddon.sh`
2011 verbose stack Exit status 1
2011 verbose stack     at EventEmitter.<anonymous> (C:\Users\[...]\AppData\Roaming\nvm\v10.16.0\node_modules\npm\node_modules\npm-lifecycle\index.js:301:16)
2011 verbose stack     at EventEmitter.emit (events.js:198:13)
2011 verbose stack     at ChildProcess.<anonymous> (C:\Users\[...]\AppData\Roaming\nvm\v10.16.0\node_modules\npm\node_modules\npm-lifecycle\lib\spawn.js:55:14)
2011 verbose stack     at ChildProcess.emit (events.js:198:13)
2011 verbose stack     at maybeClose (internal/child_process.js:982:16)
2011 verbose stack     at Process.ChildProcess._handle.onexit (internal/child_process.js:259:5)
2012 verbose pkgid @pgql/[email protected]
2013 verbose cwd C:\Users\[...]\dev\psqlp
2014 verbose Windows_NT 10.0.18363
2015 verbose argv "C:\\Program Files\\nodejs\\node.exe" "C:\\Program Files\\nodejs\\node_modules\\npm\\bin\\npm-cli.js" "install" "pgsql-parser"
2016 verbose node v10.16.0
2017 verbose npm  v6.9.0
2018 error code ELIFECYCLE
2019 error errno 1
2020 error @pgql/[email protected] preinstall: `script/buildAddon.sh`
2020 error Exit status 1
2021 error Failed at the @pgql/[email protected] preinstall script.
2021 error This is probably not a problem with npm. There is likely additional logging output above.
2022 verbose exit [ 1, true ]

deparse altered "CREATE TABLE" statement, removed quotes from CONSTRAINT name

Original query (with fingerprint 91291afafdacd92a):

CREATE TABLE "Album"
(
  "AlbumId" INT NOT NULL,
  "Title" VARCHAR(160) NOT NULL,
  "ArtistId" INT NOT NULL,
  CONSTRAINT "PK_Album" PRIMARY KEY  ("AlbumId")
)

Deparsed query (with fingerprint d37da9dd17c1175d):

CREATE TABLE "Album" (
 	"AlbumId" int NOT NULL,
	"Title" varchar(160) NOT NULL,
	"ArtistId" int NOT NULL,
	CONSTRAINT PK_Album PRIMARY KEY ( "AlbumId" ) 
);

In the deparsed query, double quotes around PK_Album are removed. I am not sure if this makes the queries different but since the fingerprint changed, I raised this issue.

This is also true for "ALTER TABLE". Please let me know if I should open a separate issue for that.

To reproduce:

const fs = require('fs')
const { parse, deparse } = require('pgsql-parser');

async function main() {
    const stmts = parse(`
CREATE TABLE "Album"
(
  "AlbumId" INT NOT NULL,
  "Title" VARCHAR(160) NOT NULL,
  "ArtistId" INT NOT NULL,
  CONSTRAINT "PK_Album" PRIMARY KEY  ("AlbumId")
)
    `)
    const stmts2 = deparse(stmts[0])
    console.log(stmts2)
}

main()

Schema at https://github.com/prisma/database-schema-examples/tree/main/postgres/chinook

Loosen dependency on dotty

Hi! Currently dotty is pinned to 0.1.0 in deparser. It would be great to loosen this to something like ~0.1.0 to allow patch version updates for recent security patches. Thanks!

Possible bug in deparse IS DISTINCT FROM

I haven't confirmed this yet, but from looking at the code there may be a problem with IS DISTINCT FROM

Here is an example query:

SELECT (1 IS NOT NULL) IS DISTINCT FROM (2 IS NOT NULL);

It looks like the deparser is missing parenthesis:

https://github.com/pyramation/pgsql-parser/blob/dae375591a9a48ee61ec7a8209362b22b4a645db/packages/deparser/src/deparser.js#L389

Because if this is deparsed to

SELECT 1 IS NOT NULL IS DISTINCT FROM 2 IS NOT NULL;

Then we get a syntax error:

[42601] ERROR: syntax error at or near "IS"
Position: 41

I don't have time to test this now, so I could be wrong, but I am opening this issue so I don't forget.

Queries with CTEs (WITH clause) that have column aliases cause syntax error

The following query is valid in Postgres

WITH random_nums(n) AS (
  SELECT random()
  FROM generate_series(1, 10)
),
nums_sum AS (
  SELECT sum(n)
  FROM random_nums
)
SELECT * FROM nums_sum;
+-------------------+
| sum               |
|-------------------|
| 5.382207567694241 |
+-------------------+

However, when I try to parse and deparse this query...

import { parse, deparse } from "pgsql-parser"


const query = `
WITH random_nums(n) AS (
  SELECT random()
  FROM generate_series(1, 10)
),
nums_sum AS (
  SELECT sum(n)
  FROM random_nums
)
SELECT * FROM nums_sum;
`

const parsed = parse(query)
console.log(deparse(parsed))
WITH random_nums ([ 'n' ]) AS (SELECT random() FROM generate_series(1, 10)), nums_sum AS (SELECT sum(n) FROM random_nums) SELECT * FROM nums_sum;

It changes the query to become invalid. Trying to run this deparsed query now gives the following error message from Postgres 14.3:

docker run --name cte-deparse-error -p 5432:5432 -e POSTGRES_PASSWORD=secret -d postgres:14.3
docker exec -it cte-deparse-error psql -h localhost -d postgres -U postgres -c "WITH random_nums ([ 'n' ]) AS (SELECT random() FROM generate_series(1, 10)), nums_sum AS (SELECT sum(n) FROM random_nums) SELECT * FROM nums_sum;"
ERROR:  syntax error at or near "["
LINE 1: WITH random_nums ([ 'n' ]) AS (SELECT random() FROM generate...

The square brackets are extraneous.

upgrade to PG 12/13

Hey thank you for your excellent library. I want to know how to use higher version of pg parser such as pg12?

supabase artifact not found

npm ERR! node-pre-gyp ERR! install response status 404 Not Found on https://supabase-public-artifacts-bucket.s3.amazonaws.com/libpg-query-node/queryparser-v13.2.5-node-v108-darwin-arm64.tar.gz

Cannot install using VS Code terminal

I use the VS Code terminal for almost everything w/o facing any issues. However, I get the following error while trying to install this package on Node 12 using npm install pgsql-parser --save-dev with the VS Code terminal:

gyp: Call to 'node -p "require('node-addon-api').gyp"' returned exit status 0 while in binding.gyp. while trying to load binding.gyp
gyp ERR! configure error 
gyp ERR! stack Error: `gyp` failed with exit code: 1
gyp ERR! stack     at ChildProcess.onCpExit (/usr/local/Cellar/node@12/12.18.2/lib/node_modules/npm/node_modules/node-gyp/lib/configure.js:351:16)
gyp ERR! stack     at ChildProcess.emit (events.js:315:20)
gyp ERR! stack     at Process.ChildProcess._handle.onexit (internal/child_process.js:275:12)
gyp ERR! System Darwin 19.6.0
gyp ERR! command "/usr/local/Cellar/node@12/12.18.2/bin/node" "/usr/local/Cellar/node@12/12.18.2/lib/node_modules/npm/node_modules/node-gyp/bin/node-gyp.js" "rebuild"
gyp ERR! cwd /Users/bfelbo/code/tango/node_modules/@pgql/parse
gyp ERR! node -v v12.18.2
gyp ERR! node-gyp -v v5.1.0
gyp ERR! not ok 
npm ERR! code ELIFECYCLE
npm ERR! errno 1
npm ERR! @pgql/[email protected] postinstall: `node-gyp rebuild`
npm ERR! Exit status 1
npm ERR! 
npm ERR! Failed at the @pgql/[email protected] postinstall script.

This is mostly an FYI for anyone else facing this problem. Just use your normal terminal and it works fine.

Feel free to close this issue if you don't want to support the VS Code terminal. It might make sense to support it though as many people use it.

parenthesis

This is the original

INSERT INTO customers (name, email) VALUES ('Microsoft', '[email protected]') ON CONFLICT (name) DO UPDATE SET
email = EXCLUDED.email || ';' || customers.email, level = customers.level + 1, other = EXCLUDED.other;

After adding parens in A_EXPR kind=0, for nested A_EXPR's:

INSERT INTO customers (name, email) VALUES ('Microsoft', '[email protected]') ON CONFLICT (name) DO UPDATE SET
email = (EXCLUDED.email || ';') || customers.email, level = customers.level + 1, other = EXCLUDED.other;

However, if the A_EXPR uses context, and the A_EXPR is the same operation, potentially we can get rid of parenthesis!

It's just like when you have A OR B OR C, since they all use the same OP, it doesn't matter how you parens it... only matters when it changes.

So potentially we can make cleaner parens with context.

named arguments

  • check to see if we support named arguments

here is a test case:

[
  {
    "RawStmt": {
      "stmt": {
        "SelectStmt": {
          "targetList": [
            {
              "ResTarget": {
                "val": {
                  "FuncCall": {
                    "funcname": [
                      {
                        "String": {
                          "str": "helpers"
                        }
                      },
                      {
                        "String": {
                          "str": "verify_table"
                        }
                      }
                    ],
                    "args": [
                      {
                        "NamedArgExpr": {
                          "arg": {
                            "ColumnRef": {
                              "fields": [
                                {
                                  "String": {
                                    "str": "v_schema_name"
                                  }
                                }
                              ],
                              "location": 52
                            }
                          },
                          "name": "v_schema_name",
                          "argnumber": -1,
                          "location": 35
                        }
                      },
                      {
                        "NamedArgExpr": {
                          "arg": {
                            "ColumnRef": {
                              "fields": [
                                {
                                  "String": {
                                    "str": "v_table_name"
                                  }
                                }
                              ],
                              "location": 85
                            }
                          },
                          "name": "v_table_name",
                          "argnumber": -1,
                          "location": 69
                        }
                      }
                    ],
                    "location": 7
                  }
                },
                "location": 7
              }
            }
          ],
          "op": 0
        }
      },
      "stmt_len": 99
    }
  }
]

deparse altered "ALTER TABLE" statement, removed ON DELETE, ON UPDATE clauses

Original query (with fingerprint 08ac274ed7e25268):

ALTER TABLE "Customer" ADD CONSTRAINT "FK_CustomerSupportRepId"
  FOREIGN KEY ("SupportRepId") REFERENCES "Employee" ("EmployeeId") ON DELETE NO ACTION ON UPDATE NO ACTION

Deparsed query (with fingerprint 7cd581c9cf34edae):

ALTER TABLE "Customer" ADD CONSTRAINT FK_CustomerSupportRepId FOREIGN KEY ( "SupportRepId" ) REFERENCES "Employee" ( "EmployeeId" );

To reproduce:

const fs = require('fs')
const { parse, deparse } = require('pgsql-parser');

async function main() {
    const stmts = parse(`
      ALTER TABLE "Customer" ADD CONSTRAINT "FK_CustomerSupportRepId"
  FOREIGN KEY ("SupportRepId") REFERENCES "Employee" ("EmployeeId") ON DELETE NO ACTION ON UPDATE NO ACTION
    `)
    const stmts2 = deparse(stmts[0])
    console.log(stmts2)
}

main()

Schema at https://github.com/prisma/database-schema-examples/tree/main/postgres/chinook

when we upgrade to PG 12/13, add these test cases

  • generated columns
CREATE TABLE people(
    color_id int GENERATED ALWAYS AS IDENTITY (START WITH 17 INCREMENT BY 21),
    height_cm numeric,
    height_in numeric GENERATED ALWAYS AS (height_cm / 2.54) STORED,
    gen_def_identity numeric GENERATED BY DEFAULT AS IDENTITY,
    gen_alw_identity numeric GENERATED ALWAYS AS IDENTITY
);
{
  "query": {
    "version": 130002,
    "stmts": [
      {
        "stmt": {
          "CreateStmt": {
            "relation": {
              "relname": "people",
              "inh": true,
              "relpersistence": "p",
              "location": 16
            },
            "tableElts": [
              {
                "ColumnDef": {
                  "colname": "color_id",
                  "typeName": {
                    "names": [
                      {
                        "String": {
                          "str": "pg_catalog"
                        }
                      },
                      {
                        "String": {
                          "str": "int4"
                        }
                      }
                    ],
                    "typemod": -1,
                    "location": 37
                  },
                  "is_local": true,
                  "constraints": [
                    {
                      "Constraint": {
                        "contype": "CONSTR_IDENTITY",
                        "location": 41,
                        "generated_when": "a",
                        "options": [
                          {
                            "DefElem": {
                              "defname": "start",
                              "arg": {
                                "Integer": {
                                  "ival": 17
                                }
                              },
                              "defaction": "DEFELEM_UNSPEC",
                              "location": 71
                            }
                          },
                          {
                            "DefElem": {
                              "defname": "increment",
                              "arg": {
                                "Integer": {
                                  "ival": 21
                                }
                              },
                              "defaction": "DEFELEM_UNSPEC",
                              "location": 85
                            }
                          }
                        ]
                      }
                    }
                  ],
                  "location": 28
                }
              },
              {
                "ColumnDef": {
                  "colname": "height_cm",
                  "typeName": {
                    "names": [
                      {
                        "String": {
                          "str": "pg_catalog"
                        }
                      },
                      {
                        "String": {
                          "str": "numeric"
                        }
                      }
                    ],
                    "typemod": -1,
                    "location": 117
                  },
                  "is_local": true,
                  "location": 107
                }
              },
              {
                "ColumnDef": {
                  "colname": "height_in",
                  "typeName": {
                    "names": [
                      {
                        "String": {
                          "str": "pg_catalog"
                        }
                      },
                      {
                        "String": {
                          "str": "numeric"
                        }
                      }
                    ],
                    "typemod": -1,
                    "location": 140
                  },
                  "is_local": true,
                  "constraints": [
                    {
                      "Constraint": {
                        "contype": "CONSTR_GENERATED",
                        "location": 148,
                        "raw_expr": {
                          "A_Expr": {
                            "kind": "AEXPR_OP",
                            "name": [
                              {
                                "String": {
                                  "str": "/"
                                }
                              }
                            ],
                            "lexpr": {
                              "ColumnRef": {
                                "fields": [
                                  {
                                    "String": {
                                      "str": "height_cm"
                                    }
                                  }
                                ],
                                "location": 169
                              }
                            },
                            "rexpr": {
                              "A_Const": {
                                "val": {
                                  "Float": {
                                    "str": "2.54"
                                  }
                                },
                                "location": 181
                              }
                            },
                            "location": 179
                          }
                        },
                        "generated_when": "a"
                      }
                    }
                  ],
                  "location": 130
                }
              },
              {
                "ColumnDef": {
                  "colname": "gen_def_identity",
                  "typeName": {
                    "names": [
                      {
                        "String": {
                          "str": "pg_catalog"
                        }
                      },
                      {
                        "String": {
                          "str": "numeric"
                        }
                      }
                    ],
                    "typemod": -1,
                    "location": 216
                  },
                  "is_local": true,
                  "constraints": [
                    {
                      "Constraint": {
                        "contype": "CONSTR_IDENTITY",
                        "location": 224,
                        "generated_when": "d"
                      }
                    }
                  ],
                  "location": 199
                }
              },
              {
                "ColumnDef": {
                  "colname": "gen_alw_identity",
                  "typeName": {
                    "names": [
                      {
                        "String": {
                          "str": "pg_catalog"
                        }
                      },
                      {
                        "String": {
                          "str": "numeric"
                        }
                      }
                    ],
                    "typemod": -1,
                    "location": 279
                  },
                  "is_local": true,
                  "constraints": [
                    {
                      "Constraint": {
                        "contype": "CONSTR_IDENTITY",
                        "location": 287,
                        "generated_when": "a"
                      }
                    }
                  ],
                  "location": 262
                }
              }
            ],
            "oncommit": "ONCOMMIT_NOOP"
          }
        },
        "stmt_len": 317
      }
    ]
  },
  "stderr": ""
}

deparse altered "CREATE TABLE" statement, changes WITH (OIDS = FALSE) to WITHOUT OIDS

Original query (with fingerprint 3f15cb71f55f48b8):


CREATE TABLE public.tbl_ticket
(
  id character varying(30) NOT NULL,
  iduser character varying(30),
  iduserlast character varying(30),
  idsolver character varying(30),
  idsolution character varying(30), -- ID comment
  category character varying(50),
  project character varying(50),
  company character varying(50),
  name character varying(80),
  search character varying(80),
  linker character varying(80),
  language character varying(2),
  labels character varying(200),
  tags character varying(100),
  ip character varying(80),
  countcomments integer DEFAULT 0,
  countupdates integer DEFAULT 0,
  minutes integer DEFAULT 0,
  issolved boolean DEFAULT false,
  ispriority boolean DEFAULT false,
  isremoved boolean DEFAULT false,
  datesolved timestamp without time zone,
  datechanged timestamp without time zone,
  dateupdated timestamp without time zone,
  datecreated timestamp without time zone DEFAULT now(),
  CONSTRAINT tbl_ticket_pkey PRIMARY KEY (id)
)
WITH (
  OIDS=FALSE
)

Deparsed query (with fingerprint 93b872f0e31e9c51):

CREATE TABLE public.tbl_ticket (
 	id varchar(30) NOT NULL,
	iduser varchar(30),
	iduserlast varchar(30),
	idsolver varchar(30),
	idsolution varchar(30),
	category varchar(50),
	project varchar(50),
	company varchar(50),
	name varchar(80),
	search varchar(80),
	linker varchar(80),
	language varchar(2),
	labels varchar(200),
	tags varchar(100),
	ip varchar(80),
	countcomments int DEFAULT ( 0 ),
	countupdates int DEFAULT ( 0 ),
	minutes int DEFAULT ( 0 ),
	issolved boolean DEFAULT ( FALSE ),
	ispriority boolean DEFAULT ( FALSE ),
	isremoved boolean DEFAULT ( FALSE ),
	datesolved timestamp,
	datechanged timestamp,
	dateupdated timestamp,
	datecreated timestamp DEFAULT ( now() ),
	CONSTRAINT tbl_ticket_pkey PRIMARY KEY ( id ) 
) WITHOUT OIDS;
  • Logically, it does look correct but since the fingerprints are different, I wanted to raise this issue. Maybe this is a bug in fingerprinting?

To reproduce:

const fs = require('fs')
const { parse, deparse } = require('pgsql-parser');

async function main() {
    const stmts = parse(`
      
CREATE TABLE public.tbl_ticket
(
  id character varying(30) NOT NULL,
  iduser character varying(30),
  iduserlast character varying(30),
  idsolver character varying(30),
  idsolution character varying(30), -- ID comment
  category character varying(50),
  project character varying(50),
  company character varying(50),
  name character varying(80),
  search character varying(80),
  linker character varying(80),
  language character varying(2),
  labels character varying(200),
  tags character varying(100),
  ip character varying(80),
  countcomments integer DEFAULT 0,
  countupdates integer DEFAULT 0,
  minutes integer DEFAULT 0,
  issolved boolean DEFAULT false,
  ispriority boolean DEFAULT false,
  isremoved boolean DEFAULT false,
  datesolved timestamp without time zone,
  datechanged timestamp without time zone,
  dateupdated timestamp without time zone,
  datecreated timestamp without time zone DEFAULT now(),
  CONSTRAINT tbl_ticket_pkey PRIMARY KEY (id)
)
WITH (
  OIDS=FALSE
)
    `)
    const stmts2 = deparse(stmts[0])
    console.log(stmts2)
}

main()

Schema at https://github.com/prisma/database-schema-examples/tree/main/postgres/helpdesk

typedef

Is a type definition planned ?

deparse altered "CREATE EXTENSION" statement, removed "WITH SCHEMA <schema name>"

Original query (with fingerprint 2ebd334cd7053cec):

CREATE EXTENSION IF NOT EXISTS plpgsql WITH SCHEMA pg_catalog

Deparsed query (with fingerprint fca746b67847fb65):

CREATE EXTENSION IF NOT EXISTS plpgsql;

To reproduce:

const fs = require('fs')
const { parse, deparse } = require('pgsql-parser');

async function main() {
    const stmts = parse(`
CREATE EXTENSION IF NOT EXISTS plpgsql WITH SCHEMA pg_catalog
    `)
    const stmts2 = deparse(stmts[0])
    console.log(stmts2)
}

main()

Error: LockStmt is not implemented

Explicit LOCK statements (type LockStmt in the parser) on tables are unimplemented, e.g. LOCK TABLE "table_name" IN ACCESS EXCLUSIVE MODE.

Happy to submit a PR if y'all are willing to support this. Please let me know.

deparse altered "CREATE INDEX" statement, removed index order

Original query (with fingerprint 3ced1ea27f28b791):

CREATE INDEX index_email_logs_on_created_at ON public.email_logs USING btree (created_at DESC)

Deparsed query (with fingerprint fc62c2559be9f3ac):

CREATE INDEX index_email_logs_on_created_at ON public.email_logs ( created_at );

To reproduce:

const fs = require('fs')
const { parse, deparse } = require('pgsql-parser');

async function main() {
    const stmts = parse(`
CREATE INDEX index_email_logs_on_created_at ON public.email_logs USING btree (created_at DESC)
    `)
    const stmts2 = deparse(stmts[0])
    console.log(stmts2)
}

main()

Schema at https://github.com/prisma/database-schema-examples/tree/main/postgres/discourse

deparse altered "CREATE INDEX" statement, removed double quotes from index name, columns list and removed USING clause

Original query (with fingerprint a1aa8bc11a444439):

CREATE INDEX "existing_undispatched_message" ON public.messages USING btree ("context_id", context_type, notification_name, "to", user_id)

Deparsed query (with fingerprint 0):

CREATE INDEX existing_undispatched_message ON public.messages ( context_id, context_type, notification_name, to, user_id );

It changed the following:-

  1. Removed double quotes from index name
  2. Removed double quotes from columns list
  3. Removed USING clause

Please let me know if I should create 3 different issues for these.

This also applies to CREATE UNIQUE INDEX. Please let me know if I should make two separate issues for this :)

To reproduce:

const fs = require('fs')
const { parse, deparse } = require('pgsql-parser');

async function main() {
    const stmts = parse(`
CREATE INDEX "existing_undispatched_message" ON public.messages USING btree ("context_id", context_type, notification_name, "to", user_id)
    `)
    const stmts2 = deparse(stmts[0])
    console.log(stmts2)
}

main()

In this specific case, since it changed "to" to to, the query became not parseable and trying to parse it fails with

syntax error at or near "to"

Here is another case that would generate an invalid deparsed query because of the word primary

CREATE UNIQUE INDEX index_user_emails_on_user_id_and_primary ON public.user_emails USING btree (user_id, "primary") WHERE "primary"

Schema at https://github.com/prisma/database-schema-examples/tree/main/postgres/canvas-lms

deparse altered CREATE TABLE statement, removes "IF NOT EXISTS"

Original query (with fingerprint 10b597c678d4d3c9):

create table if not exists users (
  id uuid primary key not null default gen_random_uuid(),
  "name" text not null,
  handle text not null,
  created_at timestamp not null default now(),
  updated_at timestamp not null default now()
)

Deparsed query (with fingerprint eb186b2487e2f49f):

CREATE TABLE users (
 	id uuid PRIMARY KEY NOT NULL DEFAULT ( gen_random_uuid() ),
	name text NOT NULL,
	handle text NOT NULL,
	created_at timestamp NOT NULL DEFAULT ( now() ),
	updated_at timestamp NOT NULL DEFAULT ( now() ) 
);

To reproduce:

const fs = require('fs')
const { parse, deparse } = require('pgsql-parser');

async function main() {
    const stmts = parse(`
      create table if not exists users (
  id uuid primary key not null default gen_random_uuid(),
  "name" text not null,
  handle text not null,
  created_at timestamp not null default now(),
  updated_at timestamp not null default now()
)
    `)
    const stmts2 = deparse(stmts[0])
    console.log(stmts2)
}

main()

parse error

CREATE VIEW superschema.app_authorized_grants AS
      SELECT
        coalesce(nullif(s[1], ''), 'PUBLIC') as grantee,
        relname as table_name,
        nspname as table_schema,
        string_agg(s[2], ', ') as privileges,
        relkind as table_type
      FROM
        pg_class c
        join pg_namespace n on n.oid = relnamespace
        join pg_roles r on r.oid = relowner,
        unnest(coalesce(relacl::text[], format('{%%s=arwdDxt/%%s}', rolname, rolname)::text[])) acl, 
        regexp_split_to_array(acl, '=|/') s
      WHERE (s[1] = 'authenticated' or s[1] is null) and nspname not in ('pg_catalog', 'information_schema', 'pg_toast')
      GROUP BY grantee, table_name, table_schema, relkind
      ORDER BY relkind != 'r', relkind != 'v', relkind != 'm', relkind != 'i', relkind, nspname, relname;
TypeError: nodes.map is not a function
    at Deparser.deparseNodes (/usr/local/lib/node_modules/@launchql/cli/node_modules/pgsql-deparser/main/deparser.js:91:20)
    at Deparser.list (/usr/local/lib/node_modules/@launchql/cli/node_modules/pgsql-deparser/main/deparser.js:106:19)
    at Deparser.A_Expr (/usr/local/lib/node_modules/@launchql/cli/node_modules/pgsql-deparser/main/deparser.js:391:96)
    at Deparser.deparse (/usr/local/lib/node_modules/@launchql/cli/node_modules/pgsql-deparser/main/deparser.js:265:24)
    at /usr/local/lib/node_modules/@launchql/cli/node_modules/pgsql-deparser/main/deparser.js:92:97
    at Array.map (<anonymous>)
    at Deparser.deparseNodes (/usr/local/lib/node_modules/@launchql/cli/node_modules/pgsql-deparser/main/deparser.js:91:20)
    at Deparser.list (/usr/local/lib/node_modules/@launchql/cli/node_modules/pgsql-deparser/main/deparser.js:106:19)
    at Deparser.CoalesceExpr (/usr/local/lib/node_modules/@launchql/cli/node_modules/pgsql-deparser/main/deparser.js:590:53)
    at Deparser.deparse (/usr/local/lib/node_modules/@launchql/cli/node_modules/pgsql-deparser/main/deparser.js:265:24)
(node:80010) UnhandledPromiseRejectionWarning: TypeError: Cannot read property 'sql' of undefined
    at _callee2$ (/usr/local/lib/node_modules/@launchql/cli/node_modules/@launchql/db-utils/main/lib/package.js:190:40)
    at tryCatch (/usr/local/lib/node_modules/@launchql/cli/node_modules/regenerator-runtime/runtime.js:63:40)
    at Generator.invoke [as _invoke] (/usr/local/lib/node_modules/@launchql/cli/node_modules/regenerator-runtime/runtime.js:293:22)
    at Generator.next (/usr/local/lib/node_modules/@launchql/cli/node_modules/regenerator-runtime/runtime.js:118:21)
    at asyncGeneratorStep (/usr/local/lib/node_modules/@launchql/cli/node_modules/@babel/runtime/helpers/asyncToGenerator.js:3:24)
    at _next (/usr/local/lib/node_modules/@launchql/cli/node_modules/@babel/runtime/helpers/asyncToGenerator.js:25:9)

deparse altered "CREATE VIEW" statement, removed OR REPLACE

Continued from #54

Original query (with fingerprint 184ff1799cccd685):

CREATE OR REPLACE VIEW public.view_ticket AS
 SELECT a.id,
    a.name,
   FROM tbl_ticket a
     JOIN tbl_user b ON b.id::text = a.iduser::text
  WHERE a.isremoved = false

Deparsed query (with fingerprint 172d678f094d8695):

CREATE VIEW public.view_ticket AS SELECT a.id,
a.name,
FROM tbl_ticket AS a INNER JOIN tbl_user AS b ON b.id::text = a.iduser::text WHERE a.isremoved = FALSE;

To reproduce:

const fs = require('fs')
const { parse, deparse } = require('pgsql-parser');

async function main() {
    const stmts = parse(`
      CREATE OR REPLACE VIEW public.view_ticket AS
 SELECT a.id,
    a.name,
    a.project,
    a.search,
    a.labels,
    a.minutes,
    b.name AS "user",
    b.email,
    b.language,
    b.photo,
    b.company,
    a.iduser,
    a.iduserlast,
    a.idsolver,
    a.issolved,
    a.ispriority,
    b.isnotification,
    a.datecreated,
    a.dateupdated,
    b.minutes AS minutesuser,
    a.idsolution,
    b."position",
    a.countcomments
   FROM tbl_ticket a
     JOIN tbl_user b ON b.id::text = a.iduser::text
  WHERE a.isremoved = false
    `)
    const stmts2 = deparse(stmts[0])
    console.log(stmts2)
}

main()

Schema at https://github.com/prisma/database-schema-examples/tree/main/postgres/helpdesk

deparser doesn't support alter sequence queries

I am not sure if this is an issue in this repo or https://github.com/pganalyze/libpg_query. I know that libpg_query ports the original PG parser but have rolled their own deparse out and this repo seems to be using its own deparser? https://github.com/pyramation/pgsql-parser/blob/master/packages/deparser/src/deparser.js

Please let me know if this is something known or if there is a workaround.

To reproduce:

const { parse, deparse } = require('pgsql-parser');
const stmts = parse('ALTER SEQUENCE public."User_id_seq" OWNED BY public."User".id;');
console.log(stmts)
deparse(stmts[0])

Running this outputs

[ { RawStmt: { stmt: [Object], stmt_len: 61 } } ]
/Users/triage/zoid-415/node_modules/pgsql-deparser/main/deparser.js:270
        throw new Error(type + ' is not implemented: ' + JSON.stringify(node));
        ^

Error: AlterSeqStmt is not implemented: {"sequence":{"schemaname":"public","relname":"User_id_seq","inh":true,"relpersistence":"p","location":15},"options":[{"DefElem":{"defname":"owned_by","arg":[{"String":{"str":"public"}},{"String":{"str":"User"}},{"String":{"str":"id"}}],"defaction":"DEFELEM_UNSPEC","location":36}}]}

Question: why not async?

Hi @pyramation, I have a question. I notice that the underlying libpg-query exposes both a sync and async entrypoint, parseQuerySync and parseQuery. However, pgsql-parser wraps the sync version but does not expose an async counterpart. Why is that? Is it for simplicity? Does the async version have no performance benefit?

deparse altered "ALTER FUNCTION" statement, removed brackets ()

Original query (with fingerprint 997953ac2de308e2):

ALTER FUNCTION public.delayed_jobs_after_delete_row_tr_fn() OWNER TO prisma

Deparsed query (with fingerprint 503bcad807855e4b):

ALTER FUNCTION public.delayed_jobs_after_delete_row_tr_fn OWNER TO prisma;

To reproduce:

const fs = require('fs')
const { parse, deparse } = require('pgsql-parser');

async function main() {
    const stmts = parse(`
ALTER FUNCTION public.delayed_jobs_after_delete_row_tr_fn() OWNER TO prisma
    `)
    const stmts2 = deparse(stmts[0])
    console.log(stmts2)
}

main()

Schema at https://github.com/prisma/database-schema-examples/tree/main/postgres/canvas-lms

deparse altered "CREATE TABLE" statement, removed WITHOUT TIME ZONE

Original query (with fingerprint 2c0d1f29c30f5177):

  CREATE TABLE public."AO_563AEE_ACTIVITY_ENTITY" (
    "ACTIVITY_ID" bigint NOT NULL,
    "ACTOR_ID" integer,
    "CONTENT" text,
    "GENERATOR_DISPLAY_NAME" character varying(255),
    "GENERATOR_ID" character varying(450),
    "ICON_ID" integer,
    "ID" character varying(450),
    "ISSUE_KEY" character varying(255),
    "OBJECT_ID" integer,
    "POSTER" character varying(255),
    "PROJECT_KEY" character varying(255),
    "PUBLISHED" timestamp without time zone,
    "TARGET_ID" integer,
    "TITLE" character varying(255),
    "URL" character varying(450),
    "USERNAME" character varying(255),
    "VERB" character varying(450)
  )

Deparsed query (with fingerprint 13401b610a7be108):

CREATE TABLE public.AO_563AEE_ACTIVITY_ENTITY (
 	ACTIVITY_ID bigint NOT NULL,
	ACTOR_ID int,
	CONTENT text,
	GENERATOR_DISPLAY_NAME varchar(255),
	GENERATOR_ID varchar(450),
	ICON_ID int,
	ID varchar(450),
	ISSUE_KEY varchar(255),
	OBJECT_ID int,
	POSTER varchar(255),
	PROJECT_KEY varchar(255),
	PUBLISHED timestamp,
	TARGET_ID int,
	TITLE varchar(255),
	URL varchar(450),
	USERNAME varchar(255),
	VERB varchar(450) 
);
  • On field "PUBLISHED", the type was changed from timestamp without timezone to timestamp.

To reproduce:

const fs = require('fs')
const { parse, deparse } = require('pgsql-parser');

async function main() {
    const stmts = parse(`
        CREATE TABLE public."AO_563AEE_ACTIVITY_ENTITY" (
    "ACTIVITY_ID" bigint NOT NULL,
    "ACTOR_ID" integer,
    "CONTENT" text,
    "GENERATOR_DISPLAY_NAME" character varying(255),
    "GENERATOR_ID" character varying(450),
    "ICON_ID" integer,
    "ID" character varying(450),
    "ISSUE_KEY" character varying(255),
    "OBJECT_ID" integer,
    "POSTER" character varying(255),
    "PROJECT_KEY" character varying(255),
    "PUBLISHED" timestamp without time zone,
    "TARGET_ID" integer,
    "TITLE" character varying(255),
    "URL" character varying(450),
    "USERNAME" character varying(255),
    "VERB" character varying(450)
  )
    `)
    const stmts2 = deparse(stmts[0])
    console.log(stmts2)
}

main()

Schema at https://github.com/prisma/database-schema-examples/tree/main/postgres/jira

deparse altered "COMMENT ON COLUMN" statement, the string is escaped and a ' is removed

Original query (with fingerprint 7bbdf5f425075dd4):

COMMENT ON COLUMN public.posts.reply_to_post_number IS 'If this post is a reply to another, this column is the post_number of the post it''s replying to. [FKEY posts.topic_id, posts.post_number]'

Deparsed query (with fingerprint 0):

COMMENT ON COLUMN public.posts.reply_to_post_number IS E'If this post is a reply to another, this column is the post_number of the post it's replying to. [FKEY posts.topic_id, posts.post_number]';
  • The deparsed query also fails parsing with Error: syntax error at or near "s" πŸ€”

To reproduce:

const fs = require('fs')
const { parse, deparse } = require('pgsql-parser');

async function main() {
    const stmts = parse(`
COMMENT ON COLUMN public.posts.reply_to_post_number IS 'If this post is a reply to another, this column is the post_number of the post it''s replying to. [FKEY posts.topic_id, posts.post_number]'
    `)
    const stmts2 = deparse(stmts[0])
    console.log(stmts2)
}

main()

Schema at https://github.com/prisma/database-schema-examples/tree/main/postgres/discourse

deparser printing ALTER TABLE ALTER COLUMN statement partially

To reproduce:

const { parse, deparse } = require('pgsql-parser');

async function main() {
    const stmts = parse(`
    ALTER TABLE public.table1 ALTER COLUMN id ADD GENERATED ALWAYS AS IDENTITY (
        SEQUENCE NAME public.table1
        START WITH 1
        INCREMENT BY 1
        NO MINVALUE
        NO MAXVALUE
        CACHE 1
    );
    `)
    console.log(stmts)
    const stmts2 = deparse(stmts[0])
    console.log(stmts2)
}

main()
yarn run v1.22.10
[ { RawStmt: { stmt: [Object], stmt_len: 266 } } ]
ALTER TABLE public.table1 ;
Done in 0.41s.

It should re-print the whole statement. Please let me know if any information is required from my side.

preceeding test case

  • preceding
WITH timestamp_measurement AS (SELECT count(t1.id) AS count_num
                                    , date_trunc('month', t1.start_date) AS timestamp
                               FROM trip AS t1
                               GROUP BY timestamp)

  SELECT t2.timestamp AS timestamp
       , avg(t2.count_num) OVER (ORDER BY t2.timestamp ASC RANGE BETWEEN '3 months' PRECEDING AND CURRENT ROW) AS moving_count_num
  FROM timestamp_measurement AS t2
{
"query": {
  "version": 130002,
  "stmts": [
    {
      "stmt": {
        "SelectStmt": {
          "targetList": [
            {
              "ResTarget": {
                "name": "timestamp",
                "val": {
                  "ColumnRef": {
                    "fields": [
                      {
                        "String": {
                          "str": "t2"
                        }
                      },
                      {
                        "String": {
                          "str": "timestamp"
                        }
                      }
                    ],
                    "location": 163
                  }
                },
                "location": 163
              }
            },
            {
              "ResTarget": {
                "name": "moving_count_num",
                "val": {
                  "FuncCall": {
                    "funcname": [
                      {
                        "String": {
                          "str": "avg"
                        }
                      }
                    ],
                    "args": [
                      {
                        "ColumnRef": {
                          "fields": [
                            {
                              "String": {
                                "str": "t2"
                              }
                            },
                            {
                              "String": {
                                "str": "count_num"
                              }
                            }
                          ],
                          "location": 195
                        }
                      }
                    ],
                    "over": {
                      "orderClause": [
                        {
                          "SortBy": {
                            "node": {
                              "ColumnRef": {
                                "fields": [
                                  {
                                    "String": {
                                      "str": "t2"
                                    }
                                  },
                                  {
                                    "String": {
                                      "str": "timestamp"
                                    }
                                  }
                                ],
                                "location": 224
                              }
                            },
                            "sortby_dir": "SORTBY_ASC",
                            "sortby_nulls": "SORTBY_NULLS_DEFAULT",
                            "location": -1
                          }
                        }
                      ],
                      "frameOptions": 3091,
                      "startOffset": {
                        "A_Const": {
                          "val": {
                            "String": {
                              "str": "3 months"
                            }
                          },
                          "location": 255
                        }
                      },
                      "location": 214
                    },
                    "location": 191
                  }
                },
                "location": 191
              }
            }
          ],
          "fromClause": [
            {
              "RangeVar": {
                "relname": "timestamp_measurement",
                "inh": true,
                "relpersistence": "p",
                "alias": {
                  "aliasname": "t2"
                },
                "location": 318
              }
            }
          ],
          "limitOption": "LIMIT_OPTION_DEFAULT",
          "withClause": {
            "ctes": [
              {
                "CommonTableExpr": {
                  "ctename": "timestamp_measurement",
                  "ctematerialized": "CTEMaterializeDefault",
                  "ctequery": {
                    "SelectStmt": {
                      "targetList": [
                        {
                          "ResTarget": {
                            "name": "count_num",
                            "val": {
                              "FuncCall": {
                                "funcname": [
                                  {
                                    "String": {
                                      "str": "count"
                                    }
                                  }
                                ],
                                "args": [
                                  {
                                    "ColumnRef": {
                                      "fields": [
                                        {
                                          "String": {
                                            "str": "t1"
                                          }
                                        },
                                        {
                                          "String": {
                                            "str": "id"
                                          }
                                        }
                                      ],
                                      "location": 47
                                    }
                                  }
                                ],
                                "location": 41
                              }
                            },
                            "location": 41
                          }
                        },
                        {
                          "ResTarget": {
                            "name": "timestamp",
                            "val": {
                              "FuncCall": {
                                "funcname": [
                                  {
                                    "String": {
                                      "str": "date_trunc"
                                    }
                                  }
                                ],
                                "args": [
                                  {
                                    "A_Const": {
                                      "val": {
                                        "String": {
                                          "str": "month"
                                        }
                                      },
                                      "location": 82
                                    }
                                  },
                                  {
                                    "ColumnRef": {
                                      "fields": [
                                        {
                                          "String": {
                                            "str": "t1"
                                          }
                                        },
                                        {
                                          "String": {
                                            "str": "start_date"
                                          }
                                        }
                                      ],
                                      "location": 91
                                    }
                                  }
                                ],
                                "location": 71
                              }
                            },
                            "location": 71
                          }
                        }
                      ],
                      "fromClause": [
                        {
                          "RangeVar": {
                            "relname": "trip",
                            "inh": true,
                            "relpersistence": "p",
                            "alias": {
                              "aliasname": "t1"
                            },
                            "location": 124
                          }
                        }
                      ],
                      "groupClause": [
                        {
                          "ColumnRef": {
                            "fields": [
                              {
                                "String": {
                                  "str": "timestamp"
                                }
                              }
                            ],
                            "location": 144
                          }
                        }
                      ],
                      "limitOption": "LIMIT_OPTION_DEFAULT",
                      "op": "SETOP_NONE"
                    }
                  },
                  "location": 8
                }
              }
            ],
            "location": 3
          },
          "op": "SETOP_NONE"
        }
      }
    }
  ]
},
"stderr": ""
}

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    πŸ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. πŸ“ŠπŸ“ˆπŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❀️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.