neonctl 2.28.0 → 2.29.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (135) hide show
  1. package/README.md +2 -2
  2. package/dist/analytics.js +35 -33
  3. package/dist/api.js +34 -34
  4. package/dist/auth.js +50 -44
  5. package/dist/cli.js +2 -2
  6. package/dist/commands/auth.js +58 -52
  7. package/dist/commands/bootstrap.js +115 -157
  8. package/dist/commands/branches.js +154 -147
  9. package/dist/commands/bucket.js +124 -118
  10. package/dist/commands/checkout.js +49 -49
  11. package/dist/commands/config.js +212 -88
  12. package/dist/commands/connection_string.js +62 -62
  13. package/dist/commands/data_api.js +96 -96
  14. package/dist/commands/databases.js +23 -23
  15. package/dist/commands/deploy.js +12 -12
  16. package/dist/commands/dev.js +114 -114
  17. package/dist/commands/env.js +43 -43
  18. package/dist/commands/functions.js +97 -98
  19. package/dist/commands/index.js +26 -26
  20. package/dist/commands/init.js +23 -22
  21. package/dist/commands/ip_allow.js +29 -29
  22. package/dist/commands/link.js +223 -166
  23. package/dist/commands/neon_auth.js +381 -363
  24. package/dist/commands/operations.js +11 -11
  25. package/dist/commands/orgs.js +8 -8
  26. package/dist/commands/projects.js +101 -99
  27. package/dist/commands/psql.js +31 -31
  28. package/dist/commands/roles.js +21 -21
  29. package/dist/commands/schema_diff.js +23 -23
  30. package/dist/commands/set_context.js +17 -17
  31. package/dist/commands/status.js +17 -17
  32. package/dist/commands/user.js +5 -5
  33. package/dist/commands/vpc_endpoints.js +50 -50
  34. package/dist/config.js +7 -7
  35. package/dist/config_format.js +5 -5
  36. package/dist/context.js +23 -16
  37. package/dist/current_branch_fast_path.js +6 -6
  38. package/dist/dev/env.js +33 -33
  39. package/dist/dev/functions.js +4 -4
  40. package/dist/dev/inputs.js +6 -6
  41. package/dist/dev/runtime.js +25 -25
  42. package/dist/env.js +14 -14
  43. package/dist/env_file.js +13 -13
  44. package/dist/errors.js +19 -19
  45. package/dist/functions_api.js +10 -10
  46. package/dist/help.js +15 -15
  47. package/dist/index.js +94 -92
  48. package/dist/log.js +2 -2
  49. package/dist/pkg.js +5 -5
  50. package/dist/psql/cli.js +4 -2
  51. package/dist/psql/command/cmd_cond.js +61 -61
  52. package/dist/psql/command/cmd_connect.js +159 -154
  53. package/dist/psql/command/cmd_copy.js +107 -97
  54. package/dist/psql/command/cmd_describe.js +368 -363
  55. package/dist/psql/command/cmd_format.js +276 -263
  56. package/dist/psql/command/cmd_io.js +269 -263
  57. package/dist/psql/command/cmd_lo.js +74 -66
  58. package/dist/psql/command/cmd_meta.js +148 -148
  59. package/dist/psql/command/cmd_misc.js +17 -17
  60. package/dist/psql/command/cmd_pipeline.js +142 -135
  61. package/dist/psql/command/cmd_restrict.js +25 -25
  62. package/dist/psql/command/cmd_show.js +183 -168
  63. package/dist/psql/command/dispatch.js +26 -26
  64. package/dist/psql/command/shared.js +14 -14
  65. package/dist/psql/complete/filenames.js +16 -16
  66. package/dist/psql/complete/index.js +4 -4
  67. package/dist/psql/complete/matcher.js +33 -32
  68. package/dist/psql/complete/psqlVars.js +173 -173
  69. package/dist/psql/complete/queries.js +5 -3
  70. package/dist/psql/complete/rules.js +900 -863
  71. package/dist/psql/core/common.js +136 -133
  72. package/dist/psql/core/help.js +343 -343
  73. package/dist/psql/core/mainloop.js +160 -153
  74. package/dist/psql/core/prompt.js +126 -123
  75. package/dist/psql/core/settings.js +111 -111
  76. package/dist/psql/core/sqlHelp.js +150 -150
  77. package/dist/psql/core/startup.js +211 -205
  78. package/dist/psql/core/syncVars.js +14 -14
  79. package/dist/psql/core/variables.js +24 -24
  80. package/dist/psql/describe/formatters.js +302 -289
  81. package/dist/psql/describe/processNamePattern.js +28 -28
  82. package/dist/psql/describe/queries.js +656 -651
  83. package/dist/psql/index.js +436 -411
  84. package/dist/psql/io/history.js +36 -36
  85. package/dist/psql/io/input.js +15 -15
  86. package/dist/psql/io/lineEditor/buffer.js +27 -25
  87. package/dist/psql/io/lineEditor/complete.js +15 -15
  88. package/dist/psql/io/lineEditor/filename.js +22 -22
  89. package/dist/psql/io/lineEditor/index.js +65 -62
  90. package/dist/psql/io/lineEditor/keymap.js +325 -318
  91. package/dist/psql/io/lineEditor/vt100.js +60 -60
  92. package/dist/psql/io/pgpass.js +18 -18
  93. package/dist/psql/io/pgservice.js +14 -14
  94. package/dist/psql/io/psqlrc.js +46 -46
  95. package/dist/psql/print/aligned.js +175 -166
  96. package/dist/psql/print/asciidoc.js +51 -51
  97. package/dist/psql/print/crosstab.js +34 -31
  98. package/dist/psql/print/csv.js +25 -22
  99. package/dist/psql/print/html.js +54 -54
  100. package/dist/psql/print/json.js +12 -12
  101. package/dist/psql/print/latex.js +118 -118
  102. package/dist/psql/print/pager.js +28 -26
  103. package/dist/psql/print/troff.js +48 -48
  104. package/dist/psql/print/unaligned.js +15 -14
  105. package/dist/psql/print/units.js +17 -17
  106. package/dist/psql/scanner/slash.js +48 -46
  107. package/dist/psql/scanner/sql.js +88 -84
  108. package/dist/psql/scanner/stringutils.js +21 -17
  109. package/dist/psql/types/index.js +7 -7
  110. package/dist/psql/types/scanner.js +8 -8
  111. package/dist/psql/wire/connection.js +341 -327
  112. package/dist/psql/wire/copy.js +7 -7
  113. package/dist/psql/wire/pipeline.js +26 -24
  114. package/dist/psql/wire/protocol.js +102 -102
  115. package/dist/psql/wire/sasl.js +62 -62
  116. package/dist/psql/wire/tls.js +79 -73
  117. package/dist/storage_api.js +15 -15
  118. package/dist/test_utils/fixtures.js +34 -31
  119. package/dist/test_utils/oauth_server.js +5 -5
  120. package/dist/utils/api_enums.js +13 -13
  121. package/dist/utils/branch_notice.js +5 -5
  122. package/dist/utils/branch_picker.js +26 -26
  123. package/dist/utils/compute_units.js +4 -4
  124. package/dist/utils/enrichers.js +20 -15
  125. package/dist/utils/esbuild.js +28 -28
  126. package/dist/utils/formats.js +1 -1
  127. package/dist/utils/middlewares.js +3 -3
  128. package/dist/utils/package_manager.js +68 -0
  129. package/dist/utils/point_in_time.js +12 -12
  130. package/dist/utils/psql.js +30 -30
  131. package/dist/utils/string.js +2 -2
  132. package/dist/utils/ui.js +9 -9
  133. package/dist/utils/zip.js +1 -1
  134. package/dist/writer.js +17 -17
  135. package/package.json +6 -7
@@ -8,181 +8,181 @@
8
8
  */
9
9
  /** All psql special variables (anything that has a hook in variables.c). */
10
10
  export const SPECIAL_VARIABLES = [
11
- 'AUTOCOMMIT',
12
- 'COMP_KEYWORD_CASE',
13
- 'DBNAME',
14
- 'ECHO',
15
- 'ECHO_HIDDEN',
16
- 'ENCODING',
17
- 'ERROR',
18
- 'FETCH_COUNT',
19
- 'HIDE_TABLEAM',
20
- 'HIDE_TOAST_COMPRESSION',
21
- 'HISTCONTROL',
22
- 'HISTFILE',
23
- 'HISTSIZE',
24
- 'HOST',
25
- 'IGNOREEOF',
26
- 'LASTOID',
27
- 'LAST_ERROR_MESSAGE',
28
- 'LAST_ERROR_SQLSTATE',
29
- 'ON_ERROR_ROLLBACK',
30
- 'ON_ERROR_STOP',
31
- 'PORT',
32
- 'PROMPT1',
33
- 'PROMPT2',
34
- 'PROMPT3',
35
- 'QUIET',
36
- 'ROW_COUNT',
37
- 'SERVER_VERSION_NAME',
38
- 'SERVER_VERSION_NUM',
39
- 'SHELL_ERROR',
40
- 'SHELL_EXIT_CODE',
41
- 'SHOW_ALL_RESULTS',
42
- 'SHOW_CONTEXT',
43
- 'SINGLELINE',
44
- 'SINGLESTEP',
45
- 'SQLSTATE',
46
- 'USER',
47
- 'VERBOSITY',
48
- 'VERSION',
49
- 'VERSION_NAME',
50
- 'VERSION_NUM',
11
+ "AUTOCOMMIT",
12
+ "COMP_KEYWORD_CASE",
13
+ "DBNAME",
14
+ "ECHO",
15
+ "ECHO_HIDDEN",
16
+ "ENCODING",
17
+ "ERROR",
18
+ "FETCH_COUNT",
19
+ "HIDE_TABLEAM",
20
+ "HIDE_TOAST_COMPRESSION",
21
+ "HISTCONTROL",
22
+ "HISTFILE",
23
+ "HISTSIZE",
24
+ "HOST",
25
+ "IGNOREEOF",
26
+ "LASTOID",
27
+ "LAST_ERROR_MESSAGE",
28
+ "LAST_ERROR_SQLSTATE",
29
+ "ON_ERROR_ROLLBACK",
30
+ "ON_ERROR_STOP",
31
+ "PORT",
32
+ "PROMPT1",
33
+ "PROMPT2",
34
+ "PROMPT3",
35
+ "QUIET",
36
+ "ROW_COUNT",
37
+ "SERVER_VERSION_NAME",
38
+ "SERVER_VERSION_NUM",
39
+ "SHELL_ERROR",
40
+ "SHELL_EXIT_CODE",
41
+ "SHOW_ALL_RESULTS",
42
+ "SHOW_CONTEXT",
43
+ "SINGLELINE",
44
+ "SINGLESTEP",
45
+ "SQLSTATE",
46
+ "USER",
47
+ "VERBOSITY",
48
+ "VERSION",
49
+ "VERSION_NAME",
50
+ "VERSION_NUM",
51
51
  ];
52
52
  /** `\pset` option names. */
53
53
  export const PSET_OPTIONS = [
54
- 'border',
55
- 'columns',
56
- 'csv_fieldsep',
57
- 'expanded',
58
- 'fieldsep',
59
- 'fieldsep_zero',
60
- 'footer',
61
- 'format',
62
- 'linestyle',
63
- 'null',
64
- 'numericlocale',
65
- 'pager',
66
- 'pager_min_lines',
67
- 'recordsep',
68
- 'recordsep_zero',
69
- 'tableattr',
70
- 'title',
71
- 'tuples_only',
72
- 'unicode_border_linestyle',
73
- 'unicode_column_linestyle',
74
- 'unicode_header_linestyle',
75
- 'xheader_width',
54
+ "border",
55
+ "columns",
56
+ "csv_fieldsep",
57
+ "expanded",
58
+ "fieldsep",
59
+ "fieldsep_zero",
60
+ "footer",
61
+ "format",
62
+ "linestyle",
63
+ "null",
64
+ "numericlocale",
65
+ "pager",
66
+ "pager_min_lines",
67
+ "recordsep",
68
+ "recordsep_zero",
69
+ "tableattr",
70
+ "title",
71
+ "tuples_only",
72
+ "unicode_border_linestyle",
73
+ "unicode_column_linestyle",
74
+ "unicode_header_linestyle",
75
+ "xheader_width",
76
76
  ];
77
77
  /** Output formats accepted by `\pset format`. */
78
78
  export const PSET_FORMATS = [
79
- 'aligned',
80
- 'asciidoc',
81
- 'csv',
82
- 'html',
83
- 'latex',
84
- 'latex-longtable',
85
- 'troff-ms',
86
- 'unaligned',
87
- 'wrapped',
79
+ "aligned",
80
+ "asciidoc",
81
+ "csv",
82
+ "html",
83
+ "latex",
84
+ "latex-longtable",
85
+ "troff-ms",
86
+ "unaligned",
87
+ "wrapped",
88
88
  ];
89
89
  /** Line styles accepted by `\pset linestyle`. */
90
90
  export const PSET_LINESTYLES = [
91
- 'ascii',
92
- 'old-ascii',
93
- 'unicode',
91
+ "ascii",
92
+ "old-ascii",
93
+ "unicode",
94
94
  ];
95
95
  /** Unicode border/column/header line styles. */
96
- export const PSET_UNICODE_STYLES = ['single', 'double'];
96
+ export const PSET_UNICODE_STYLES = ["single", "double"];
97
97
  /** `xheader_width` argument forms. */
98
98
  export const PSET_XHEADER_WIDTHS = [
99
- 'column',
100
- 'full',
101
- 'page',
99
+ "column",
100
+ "full",
101
+ "page",
102
102
  ];
103
103
  /** On/off/auto enum, used by many variables. */
104
- export const ON_OFF = ['on', 'off'];
105
- export const ON_OFF_AUTO = ['on', 'off', 'auto'];
104
+ export const ON_OFF = ["on", "off"];
105
+ export const ON_OFF_AUTO = ["on", "off", "auto"];
106
106
  /** Echo modes. */
107
107
  export const ECHO_MODES = [
108
- 'none',
109
- 'errors',
110
- 'queries',
111
- 'all',
108
+ "none",
109
+ "errors",
110
+ "queries",
111
+ "all",
112
112
  ];
113
- export const ECHO_HIDDEN_MODES = ['off', 'on', 'noexec'];
113
+ export const ECHO_HIDDEN_MODES = ["off", "on", "noexec"];
114
114
  export const ON_ERROR_ROLLBACK_MODES = [
115
- 'off',
116
- 'on',
117
- 'interactive',
115
+ "off",
116
+ "on",
117
+ "interactive",
118
118
  ];
119
119
  export const VERBOSITY_MODES = [
120
- 'default',
121
- 'verbose',
122
- 'terse',
123
- 'sqlstate',
120
+ "default",
121
+ "verbose",
122
+ "terse",
123
+ "sqlstate",
124
124
  ];
125
125
  export const SHOW_CONTEXT_MODES = [
126
- 'never',
127
- 'errors',
128
- 'always',
126
+ "never",
127
+ "errors",
128
+ "always",
129
129
  ];
130
130
  export const COMP_KEYWORD_CASE_MODES = [
131
- 'lower',
132
- 'upper',
133
- 'preserve-lower',
134
- 'preserve-upper',
131
+ "lower",
132
+ "upper",
133
+ "preserve-lower",
134
+ "preserve-upper",
135
135
  ];
136
136
  export const HIST_CONTROL_MODES = [
137
- 'none',
138
- 'ignorespace',
139
- 'ignoredups',
140
- 'ignoreboth',
137
+ "none",
138
+ "ignorespace",
139
+ "ignoredups",
140
+ "ignoreboth",
141
141
  ];
142
142
  /** A handful of common client encodings — enough to be useful at `\encoding`. */
143
143
  export const ENCODINGS = [
144
- 'BIG5',
145
- 'EUC_CN',
146
- 'EUC_JIS_2004',
147
- 'EUC_JP',
148
- 'EUC_KR',
149
- 'EUC_TW',
150
- 'GB18030',
151
- 'GBK',
152
- 'ISO_8859_5',
153
- 'ISO_8859_6',
154
- 'ISO_8859_7',
155
- 'ISO_8859_8',
156
- 'JOHAB',
157
- 'KOI8R',
158
- 'KOI8U',
159
- 'LATIN1',
160
- 'LATIN2',
161
- 'LATIN3',
162
- 'LATIN4',
163
- 'LATIN5',
164
- 'LATIN6',
165
- 'LATIN7',
166
- 'LATIN8',
167
- 'LATIN9',
168
- 'LATIN10',
169
- 'MULE_INTERNAL',
170
- 'SJIS',
171
- 'SHIFT_JIS_2004',
172
- 'SQL_ASCII',
173
- 'UHC',
174
- 'UTF8',
175
- 'WIN866',
176
- 'WIN874',
177
- 'WIN1250',
178
- 'WIN1251',
179
- 'WIN1252',
180
- 'WIN1253',
181
- 'WIN1254',
182
- 'WIN1255',
183
- 'WIN1256',
184
- 'WIN1257',
185
- 'WIN1258',
144
+ "BIG5",
145
+ "EUC_CN",
146
+ "EUC_JIS_2004",
147
+ "EUC_JP",
148
+ "EUC_KR",
149
+ "EUC_TW",
150
+ "GB18030",
151
+ "GBK",
152
+ "ISO_8859_5",
153
+ "ISO_8859_6",
154
+ "ISO_8859_7",
155
+ "ISO_8859_8",
156
+ "JOHAB",
157
+ "KOI8R",
158
+ "KOI8U",
159
+ "LATIN1",
160
+ "LATIN2",
161
+ "LATIN3",
162
+ "LATIN4",
163
+ "LATIN5",
164
+ "LATIN6",
165
+ "LATIN7",
166
+ "LATIN8",
167
+ "LATIN9",
168
+ "LATIN10",
169
+ "MULE_INTERNAL",
170
+ "SJIS",
171
+ "SHIFT_JIS_2004",
172
+ "SQL_ASCII",
173
+ "UHC",
174
+ "UTF8",
175
+ "WIN866",
176
+ "WIN874",
177
+ "WIN1250",
178
+ "WIN1251",
179
+ "WIN1252",
180
+ "WIN1253",
181
+ "WIN1254",
182
+ "WIN1255",
183
+ "WIN1256",
184
+ "WIN1257",
185
+ "WIN1258",
186
186
  ];
187
187
  /**
188
188
  * For a given `\pset` option, return the list of values it accepts. Returns
@@ -190,24 +190,24 @@ export const ENCODINGS = [
190
190
  */
191
191
  export const psetValuesFor = (option) => {
192
192
  switch (option) {
193
- case 'format':
193
+ case "format":
194
194
  return PSET_FORMATS;
195
- case 'linestyle':
195
+ case "linestyle":
196
196
  return PSET_LINESTYLES;
197
- case 'unicode_border_linestyle':
198
- case 'unicode_column_linestyle':
199
- case 'unicode_header_linestyle':
197
+ case "unicode_border_linestyle":
198
+ case "unicode_column_linestyle":
199
+ case "unicode_header_linestyle":
200
200
  return PSET_UNICODE_STYLES;
201
- case 'xheader_width':
201
+ case "xheader_width":
202
202
  return PSET_XHEADER_WIDTHS;
203
- case 'expanded':
204
- case 'pager':
203
+ case "expanded":
204
+ case "pager":
205
205
  return ON_OFF_AUTO;
206
- case 'footer':
207
- case 'tuples_only':
208
- case 'numericlocale':
209
- case 'fieldsep_zero':
210
- case 'recordsep_zero':
206
+ case "footer":
207
+ case "tuples_only":
208
+ case "numericlocale":
209
+ case "fieldsep_zero":
210
+ case "recordsep_zero":
211
211
  return ON_OFF;
212
212
  default:
213
213
  return null;
@@ -218,28 +218,28 @@ export const psetValuesFor = (option) => {
218
218
  */
219
219
  export const variableValuesFor = (name) => {
220
220
  switch (name) {
221
- case 'AUTOCOMMIT':
222
- case 'ON_ERROR_STOP':
223
- case 'QUIET':
224
- case 'SINGLELINE':
225
- case 'SINGLESTEP':
226
- case 'SHOW_ALL_RESULTS':
227
- case 'HIDE_TOAST_COMPRESSION':
228
- case 'HIDE_TABLEAM':
221
+ case "AUTOCOMMIT":
222
+ case "ON_ERROR_STOP":
223
+ case "QUIET":
224
+ case "SINGLELINE":
225
+ case "SINGLESTEP":
226
+ case "SHOW_ALL_RESULTS":
227
+ case "HIDE_TOAST_COMPRESSION":
228
+ case "HIDE_TABLEAM":
229
229
  return ON_OFF;
230
- case 'ECHO':
230
+ case "ECHO":
231
231
  return ECHO_MODES;
232
- case 'ECHO_HIDDEN':
232
+ case "ECHO_HIDDEN":
233
233
  return ECHO_HIDDEN_MODES;
234
- case 'ON_ERROR_ROLLBACK':
234
+ case "ON_ERROR_ROLLBACK":
235
235
  return ON_ERROR_ROLLBACK_MODES;
236
- case 'VERBOSITY':
236
+ case "VERBOSITY":
237
237
  return VERBOSITY_MODES;
238
- case 'SHOW_CONTEXT':
238
+ case "SHOW_CONTEXT":
239
239
  return SHOW_CONTEXT_MODES;
240
- case 'COMP_KEYWORD_CASE':
240
+ case "COMP_KEYWORD_CASE":
241
241
  return COMP_KEYWORD_CASE_MODES;
242
- case 'HISTCONTROL':
242
+ case "HISTCONTROL":
243
243
  return HIST_CONTROL_MODES;
244
244
  default:
245
245
  return null;
@@ -474,13 +474,15 @@ export const Query_for_list_of_timezone_names_quoted_in = `
474
474
  */
475
475
  export const runCatalogQuery = async (conn, sql, pattern, extraParams = []) => {
476
476
  try {
477
- const likePattern = pattern + '%';
478
- const params = extraParams.length > 0 ? [...extraParams, likePattern] : [likePattern];
477
+ const likePattern = pattern + "%";
478
+ const params = extraParams.length > 0
479
+ ? [...extraParams, likePattern]
480
+ : [likePattern];
479
481
  const rs = await conn.query(sql, params);
480
482
  const out = [];
481
483
  for (const row of rs.rows) {
482
484
  const v = row[0];
483
- if (typeof v === 'string')
485
+ if (typeof v === "string")
484
486
  out.push(v);
485
487
  }
486
488
  return out;