@postgres-language-server/cli-aarch64-apple-darwin 0.0.0 → 0.16.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.
package/package.json CHANGED
@@ -1,11 +1,19 @@
1
1
  {
2
2
  "name": "@postgres-language-server/cli-aarch64-apple-darwin",
3
- "version": "0.0.0",
4
- "main": "index.js",
5
- "scripts": {
6
- "test": "echo \"Error: no test specified\" && exit 1"
3
+ "version": "0.16.0",
4
+ "license": "MIT or Apache-2.0",
5
+ "repository": {
6
+ "type": "git",
7
+ "url": "git+https://github.com/supabase-community/postgres-language-server.git",
8
+ "directory": "packages/@postgres-language-server/cli"
7
9
  },
8
- "author": "",
9
- "license": "ISC",
10
- "description": ""
11
- }
10
+ "engines": {
11
+ "node": ">=20"
12
+ },
13
+ "os": [
14
+ "darwin"
15
+ ],
16
+ "cpu": [
17
+ "arm64"
18
+ ]
19
+ }
Binary file
package/schema.json ADDED
@@ -0,0 +1,774 @@
1
+ {
2
+ "$schema": "http://json-schema.org/draft-07/schema#",
3
+ "title": "Configuration",
4
+ "description": "The configuration that is contained inside the configuration file.",
5
+ "type": "object",
6
+ "properties": {
7
+ "$schema": {
8
+ "description": "A field for the [JSON schema](https://json-schema.org/) specification",
9
+ "type": [
10
+ "string",
11
+ "null"
12
+ ]
13
+ },
14
+ "db": {
15
+ "description": "The configuration of the database connection",
16
+ "anyOf": [
17
+ {
18
+ "$ref": "#/definitions/DatabaseConfiguration"
19
+ },
20
+ {
21
+ "type": "null"
22
+ }
23
+ ]
24
+ },
25
+ "extends": {
26
+ "description": "A list of paths to other JSON files, used to extends the current configuration.",
27
+ "anyOf": [
28
+ {
29
+ "$ref": "#/definitions/StringSet"
30
+ },
31
+ {
32
+ "type": "null"
33
+ }
34
+ ]
35
+ },
36
+ "files": {
37
+ "description": "The configuration of the filesystem",
38
+ "anyOf": [
39
+ {
40
+ "$ref": "#/definitions/FilesConfiguration"
41
+ },
42
+ {
43
+ "type": "null"
44
+ }
45
+ ]
46
+ },
47
+ "linter": {
48
+ "description": "The configuration for the linter",
49
+ "anyOf": [
50
+ {
51
+ "$ref": "#/definitions/LinterConfiguration"
52
+ },
53
+ {
54
+ "type": "null"
55
+ }
56
+ ]
57
+ },
58
+ "migrations": {
59
+ "description": "Configure migrations",
60
+ "anyOf": [
61
+ {
62
+ "$ref": "#/definitions/MigrationsConfiguration"
63
+ },
64
+ {
65
+ "type": "null"
66
+ }
67
+ ]
68
+ },
69
+ "plpgsqlCheck": {
70
+ "description": "The configuration for type checking",
71
+ "anyOf": [
72
+ {
73
+ "$ref": "#/definitions/PlPgSqlCheckConfiguration"
74
+ },
75
+ {
76
+ "type": "null"
77
+ }
78
+ ]
79
+ },
80
+ "typecheck": {
81
+ "description": "The configuration for type checking",
82
+ "anyOf": [
83
+ {
84
+ "$ref": "#/definitions/TypecheckConfiguration"
85
+ },
86
+ {
87
+ "type": "null"
88
+ }
89
+ ]
90
+ },
91
+ "vcs": {
92
+ "description": "The configuration of the VCS integration",
93
+ "anyOf": [
94
+ {
95
+ "$ref": "#/definitions/VcsConfiguration"
96
+ },
97
+ {
98
+ "type": "null"
99
+ }
100
+ ]
101
+ }
102
+ },
103
+ "additionalProperties": false,
104
+ "definitions": {
105
+ "DatabaseConfiguration": {
106
+ "description": "The configuration of the database connection.",
107
+ "type": "object",
108
+ "properties": {
109
+ "allowStatementExecutionsAgainst": {
110
+ "anyOf": [
111
+ {
112
+ "$ref": "#/definitions/StringSet"
113
+ },
114
+ {
115
+ "type": "null"
116
+ }
117
+ ]
118
+ },
119
+ "connTimeoutSecs": {
120
+ "description": "The connection timeout in seconds.",
121
+ "type": [
122
+ "integer",
123
+ "null"
124
+ ],
125
+ "format": "uint16",
126
+ "minimum": 0.0
127
+ },
128
+ "database": {
129
+ "description": "The name of the database.",
130
+ "type": [
131
+ "string",
132
+ "null"
133
+ ]
134
+ },
135
+ "host": {
136
+ "description": "The host of the database. Required if you want database-related features. All else falls back to sensible defaults.",
137
+ "type": [
138
+ "string",
139
+ "null"
140
+ ]
141
+ },
142
+ "password": {
143
+ "description": "The password to connect to the database.",
144
+ "type": [
145
+ "string",
146
+ "null"
147
+ ]
148
+ },
149
+ "port": {
150
+ "description": "The port of the database.",
151
+ "type": [
152
+ "integer",
153
+ "null"
154
+ ],
155
+ "format": "uint16",
156
+ "minimum": 0.0
157
+ },
158
+ "username": {
159
+ "description": "The username to connect to the database.",
160
+ "type": [
161
+ "string",
162
+ "null"
163
+ ]
164
+ }
165
+ },
166
+ "additionalProperties": false
167
+ },
168
+ "FilesConfiguration": {
169
+ "description": "The configuration of the filesystem",
170
+ "type": "object",
171
+ "properties": {
172
+ "ignore": {
173
+ "description": "A list of Unix shell style patterns. Will ignore files/folders that will match these patterns.",
174
+ "anyOf": [
175
+ {
176
+ "$ref": "#/definitions/StringSet"
177
+ },
178
+ {
179
+ "type": "null"
180
+ }
181
+ ]
182
+ },
183
+ "include": {
184
+ "description": "A list of Unix shell style patterns. Will handle only those files/folders that will match these patterns.",
185
+ "anyOf": [
186
+ {
187
+ "$ref": "#/definitions/StringSet"
188
+ },
189
+ {
190
+ "type": "null"
191
+ }
192
+ ]
193
+ },
194
+ "maxSize": {
195
+ "description": "The maximum allowed size for source code files in bytes. Files above this limit will be ignored for performance reasons. Defaults to 1 MiB",
196
+ "type": [
197
+ "integer",
198
+ "null"
199
+ ],
200
+ "format": "uint64",
201
+ "minimum": 1.0
202
+ }
203
+ },
204
+ "additionalProperties": false
205
+ },
206
+ "LinterConfiguration": {
207
+ "type": "object",
208
+ "properties": {
209
+ "enabled": {
210
+ "description": "if `false`, it disables the feature and the linter won't be executed. `true` by default",
211
+ "type": [
212
+ "boolean",
213
+ "null"
214
+ ]
215
+ },
216
+ "ignore": {
217
+ "description": "A list of Unix shell style patterns. The formatter will ignore files/folders that will match these patterns.",
218
+ "anyOf": [
219
+ {
220
+ "$ref": "#/definitions/StringSet"
221
+ },
222
+ {
223
+ "type": "null"
224
+ }
225
+ ]
226
+ },
227
+ "include": {
228
+ "description": "A list of Unix shell style patterns. The formatter will include files/folders that will match these patterns.",
229
+ "anyOf": [
230
+ {
231
+ "$ref": "#/definitions/StringSet"
232
+ },
233
+ {
234
+ "type": "null"
235
+ }
236
+ ]
237
+ },
238
+ "rules": {
239
+ "description": "List of rules",
240
+ "anyOf": [
241
+ {
242
+ "$ref": "#/definitions/Rules"
243
+ },
244
+ {
245
+ "type": "null"
246
+ }
247
+ ]
248
+ }
249
+ },
250
+ "additionalProperties": false
251
+ },
252
+ "MigrationsConfiguration": {
253
+ "description": "The configuration of the filesystem",
254
+ "type": "object",
255
+ "properties": {
256
+ "after": {
257
+ "description": "Ignore any migrations before this timestamp",
258
+ "type": [
259
+ "integer",
260
+ "null"
261
+ ],
262
+ "format": "uint64",
263
+ "minimum": 0.0
264
+ },
265
+ "migrationsDir": {
266
+ "description": "The directory where the migration files are stored",
267
+ "type": [
268
+ "string",
269
+ "null"
270
+ ]
271
+ }
272
+ },
273
+ "additionalProperties": false
274
+ },
275
+ "PlPgSqlCheckConfiguration": {
276
+ "description": "The configuration for type checking.",
277
+ "type": "object",
278
+ "properties": {
279
+ "enabled": {
280
+ "description": "if `false`, it disables the feature and pglpgsql_check won't be executed. `true` by default",
281
+ "type": [
282
+ "boolean",
283
+ "null"
284
+ ]
285
+ }
286
+ },
287
+ "additionalProperties": false
288
+ },
289
+ "RuleConfiguration": {
290
+ "anyOf": [
291
+ {
292
+ "$ref": "#/definitions/RulePlainConfiguration"
293
+ },
294
+ {
295
+ "$ref": "#/definitions/RuleWithNoOptions"
296
+ }
297
+ ]
298
+ },
299
+ "RulePlainConfiguration": {
300
+ "type": "string",
301
+ "enum": [
302
+ "warn",
303
+ "error",
304
+ "info",
305
+ "off"
306
+ ]
307
+ },
308
+ "RuleWithNoOptions": {
309
+ "type": "object",
310
+ "required": [
311
+ "level"
312
+ ],
313
+ "properties": {
314
+ "level": {
315
+ "description": "The severity of the emitted diagnostics by the rule",
316
+ "allOf": [
317
+ {
318
+ "$ref": "#/definitions/RulePlainConfiguration"
319
+ }
320
+ ]
321
+ }
322
+ },
323
+ "additionalProperties": false
324
+ },
325
+ "Rules": {
326
+ "type": "object",
327
+ "properties": {
328
+ "all": {
329
+ "description": "It enables ALL rules. The rules that belong to `nursery` won't be enabled.",
330
+ "type": [
331
+ "boolean",
332
+ "null"
333
+ ]
334
+ },
335
+ "recommended": {
336
+ "description": "It enables the lint rules recommended by Postgres Tools. `true` by default.",
337
+ "type": [
338
+ "boolean",
339
+ "null"
340
+ ]
341
+ },
342
+ "safety": {
343
+ "anyOf": [
344
+ {
345
+ "$ref": "#/definitions/Safety"
346
+ },
347
+ {
348
+ "type": "null"
349
+ }
350
+ ]
351
+ }
352
+ },
353
+ "additionalProperties": false
354
+ },
355
+ "Safety": {
356
+ "description": "A list of rules that belong to this group",
357
+ "type": "object",
358
+ "properties": {
359
+ "addingFieldWithDefault": {
360
+ "description": "Adding a column with a DEFAULT value may lead to a table rewrite while holding an ACCESS EXCLUSIVE lock.",
361
+ "anyOf": [
362
+ {
363
+ "$ref": "#/definitions/RuleConfiguration"
364
+ },
365
+ {
366
+ "type": "null"
367
+ }
368
+ ]
369
+ },
370
+ "addingForeignKeyConstraint": {
371
+ "description": "Adding a foreign key constraint requires a table scan and a SHARE ROW EXCLUSIVE lock on both tables, which blocks writes.",
372
+ "anyOf": [
373
+ {
374
+ "$ref": "#/definitions/RuleConfiguration"
375
+ },
376
+ {
377
+ "type": "null"
378
+ }
379
+ ]
380
+ },
381
+ "addingNotNullField": {
382
+ "description": "Setting a column NOT NULL blocks reads while the table is scanned.",
383
+ "anyOf": [
384
+ {
385
+ "$ref": "#/definitions/RuleConfiguration"
386
+ },
387
+ {
388
+ "type": "null"
389
+ }
390
+ ]
391
+ },
392
+ "addingPrimaryKeyConstraint": {
393
+ "description": "Adding a primary key constraint results in locks and table rewrites.",
394
+ "anyOf": [
395
+ {
396
+ "$ref": "#/definitions/RuleConfiguration"
397
+ },
398
+ {
399
+ "type": "null"
400
+ }
401
+ ]
402
+ },
403
+ "addingRequiredField": {
404
+ "description": "Adding a new column that is NOT NULL and has no default value to an existing table effectively makes it required.",
405
+ "anyOf": [
406
+ {
407
+ "$ref": "#/definitions/RuleConfiguration"
408
+ },
409
+ {
410
+ "type": "null"
411
+ }
412
+ ]
413
+ },
414
+ "all": {
415
+ "description": "It enables ALL rules for this group.",
416
+ "type": [
417
+ "boolean",
418
+ "null"
419
+ ]
420
+ },
421
+ "banCharField": {
422
+ "description": "Using CHAR(n) or CHARACTER(n) types is discouraged.",
423
+ "anyOf": [
424
+ {
425
+ "$ref": "#/definitions/RuleConfiguration"
426
+ },
427
+ {
428
+ "type": "null"
429
+ }
430
+ ]
431
+ },
432
+ "banConcurrentIndexCreationInTransaction": {
433
+ "description": "Concurrent index creation is not allowed within a transaction.",
434
+ "anyOf": [
435
+ {
436
+ "$ref": "#/definitions/RuleConfiguration"
437
+ },
438
+ {
439
+ "type": "null"
440
+ }
441
+ ]
442
+ },
443
+ "banDropColumn": {
444
+ "description": "Dropping a column may break existing clients.",
445
+ "anyOf": [
446
+ {
447
+ "$ref": "#/definitions/RuleConfiguration"
448
+ },
449
+ {
450
+ "type": "null"
451
+ }
452
+ ]
453
+ },
454
+ "banDropDatabase": {
455
+ "description": "Dropping a database may break existing clients (and everything else, really).",
456
+ "anyOf": [
457
+ {
458
+ "$ref": "#/definitions/RuleConfiguration"
459
+ },
460
+ {
461
+ "type": "null"
462
+ }
463
+ ]
464
+ },
465
+ "banDropNotNull": {
466
+ "description": "Dropping a NOT NULL constraint may break existing clients.",
467
+ "anyOf": [
468
+ {
469
+ "$ref": "#/definitions/RuleConfiguration"
470
+ },
471
+ {
472
+ "type": "null"
473
+ }
474
+ ]
475
+ },
476
+ "banDropTable": {
477
+ "description": "Dropping a table may break existing clients.",
478
+ "anyOf": [
479
+ {
480
+ "$ref": "#/definitions/RuleConfiguration"
481
+ },
482
+ {
483
+ "type": "null"
484
+ }
485
+ ]
486
+ },
487
+ "banTruncateCascade": {
488
+ "description": "Using TRUNCATE's CASCADE option will truncate any tables that are also foreign-keyed to the specified tables.",
489
+ "anyOf": [
490
+ {
491
+ "$ref": "#/definitions/RuleConfiguration"
492
+ },
493
+ {
494
+ "type": "null"
495
+ }
496
+ ]
497
+ },
498
+ "changingColumnType": {
499
+ "description": "Changing a column type may break existing clients.",
500
+ "anyOf": [
501
+ {
502
+ "$ref": "#/definitions/RuleConfiguration"
503
+ },
504
+ {
505
+ "type": "null"
506
+ }
507
+ ]
508
+ },
509
+ "constraintMissingNotValid": {
510
+ "description": "Adding constraints without NOT VALID blocks all reads and writes.",
511
+ "anyOf": [
512
+ {
513
+ "$ref": "#/definitions/RuleConfiguration"
514
+ },
515
+ {
516
+ "type": "null"
517
+ }
518
+ ]
519
+ },
520
+ "disallowUniqueConstraint": {
521
+ "description": "Disallow adding a UNIQUE constraint without using an existing index.",
522
+ "anyOf": [
523
+ {
524
+ "$ref": "#/definitions/RuleConfiguration"
525
+ },
526
+ {
527
+ "type": "null"
528
+ }
529
+ ]
530
+ },
531
+ "preferBigInt": {
532
+ "description": "Prefer BIGINT over smaller integer types.",
533
+ "anyOf": [
534
+ {
535
+ "$ref": "#/definitions/RuleConfiguration"
536
+ },
537
+ {
538
+ "type": "null"
539
+ }
540
+ ]
541
+ },
542
+ "preferBigintOverInt": {
543
+ "description": "Prefer BIGINT over INT/INTEGER types.",
544
+ "anyOf": [
545
+ {
546
+ "$ref": "#/definitions/RuleConfiguration"
547
+ },
548
+ {
549
+ "type": "null"
550
+ }
551
+ ]
552
+ },
553
+ "preferBigintOverSmallint": {
554
+ "description": "Prefer BIGINT over SMALLINT types.",
555
+ "anyOf": [
556
+ {
557
+ "$ref": "#/definitions/RuleConfiguration"
558
+ },
559
+ {
560
+ "type": "null"
561
+ }
562
+ ]
563
+ },
564
+ "preferIdentity": {
565
+ "description": "Prefer using IDENTITY columns over serial columns.",
566
+ "anyOf": [
567
+ {
568
+ "$ref": "#/definitions/RuleConfiguration"
569
+ },
570
+ {
571
+ "type": "null"
572
+ }
573
+ ]
574
+ },
575
+ "preferJsonb": {
576
+ "description": "Prefer JSONB over JSON types.",
577
+ "anyOf": [
578
+ {
579
+ "$ref": "#/definitions/RuleConfiguration"
580
+ },
581
+ {
582
+ "type": "null"
583
+ }
584
+ ]
585
+ },
586
+ "preferRobustStmts": {
587
+ "description": "Prefer statements with guards for robustness in migrations.",
588
+ "anyOf": [
589
+ {
590
+ "$ref": "#/definitions/RuleConfiguration"
591
+ },
592
+ {
593
+ "type": "null"
594
+ }
595
+ ]
596
+ },
597
+ "preferTextField": {
598
+ "description": "Prefer using TEXT over VARCHAR(n) types.",
599
+ "anyOf": [
600
+ {
601
+ "$ref": "#/definitions/RuleConfiguration"
602
+ },
603
+ {
604
+ "type": "null"
605
+ }
606
+ ]
607
+ },
608
+ "preferTimestamptz": {
609
+ "description": "Prefer TIMESTAMPTZ over TIMESTAMP types.",
610
+ "anyOf": [
611
+ {
612
+ "$ref": "#/definitions/RuleConfiguration"
613
+ },
614
+ {
615
+ "type": "null"
616
+ }
617
+ ]
618
+ },
619
+ "recommended": {
620
+ "description": "It enables the recommended rules for this group",
621
+ "type": [
622
+ "boolean",
623
+ "null"
624
+ ]
625
+ },
626
+ "renamingColumn": {
627
+ "description": "Renaming columns may break existing queries and application code.",
628
+ "anyOf": [
629
+ {
630
+ "$ref": "#/definitions/RuleConfiguration"
631
+ },
632
+ {
633
+ "type": "null"
634
+ }
635
+ ]
636
+ },
637
+ "renamingTable": {
638
+ "description": "Renaming tables may break existing queries and application code.",
639
+ "anyOf": [
640
+ {
641
+ "$ref": "#/definitions/RuleConfiguration"
642
+ },
643
+ {
644
+ "type": "null"
645
+ }
646
+ ]
647
+ },
648
+ "requireConcurrentIndexCreation": {
649
+ "description": "Creating indexes non-concurrently can lock the table for writes.",
650
+ "anyOf": [
651
+ {
652
+ "$ref": "#/definitions/RuleConfiguration"
653
+ },
654
+ {
655
+ "type": "null"
656
+ }
657
+ ]
658
+ },
659
+ "requireConcurrentIndexDeletion": {
660
+ "description": "Dropping indexes non-concurrently can lock the table for reads.",
661
+ "anyOf": [
662
+ {
663
+ "$ref": "#/definitions/RuleConfiguration"
664
+ },
665
+ {
666
+ "type": "null"
667
+ }
668
+ ]
669
+ },
670
+ "transactionNesting": {
671
+ "description": "Detects problematic transaction nesting that could lead to unexpected behavior.",
672
+ "anyOf": [
673
+ {
674
+ "$ref": "#/definitions/RuleConfiguration"
675
+ },
676
+ {
677
+ "type": "null"
678
+ }
679
+ ]
680
+ }
681
+ },
682
+ "additionalProperties": false
683
+ },
684
+ "StringSet": {
685
+ "type": "array",
686
+ "items": {
687
+ "type": "string"
688
+ },
689
+ "uniqueItems": true
690
+ },
691
+ "TypecheckConfiguration": {
692
+ "description": "The configuration for type checking.",
693
+ "type": "object",
694
+ "properties": {
695
+ "enabled": {
696
+ "description": "if `false`, it disables the feature and the typechecker won't be executed. `true` by default",
697
+ "type": [
698
+ "boolean",
699
+ "null"
700
+ ]
701
+ },
702
+ "searchPath": {
703
+ "description": "Default search path schemas for type checking. Can be a list of schema names or glob patterns like [\"public\", \"app_*\"]. If not specified, defaults to [\"public\"].",
704
+ "anyOf": [
705
+ {
706
+ "$ref": "#/definitions/StringSet"
707
+ },
708
+ {
709
+ "type": "null"
710
+ }
711
+ ]
712
+ }
713
+ },
714
+ "additionalProperties": false
715
+ },
716
+ "VcsClientKind": {
717
+ "oneOf": [
718
+ {
719
+ "description": "Integration with the git client as VCS",
720
+ "type": "string",
721
+ "enum": [
722
+ "git"
723
+ ]
724
+ }
725
+ ]
726
+ },
727
+ "VcsConfiguration": {
728
+ "description": "Set of properties to integrate with a VCS software.",
729
+ "type": "object",
730
+ "properties": {
731
+ "clientKind": {
732
+ "description": "The kind of client.",
733
+ "anyOf": [
734
+ {
735
+ "$ref": "#/definitions/VcsClientKind"
736
+ },
737
+ {
738
+ "type": "null"
739
+ }
740
+ ]
741
+ },
742
+ "defaultBranch": {
743
+ "description": "The main branch of the project",
744
+ "type": [
745
+ "string",
746
+ "null"
747
+ ]
748
+ },
749
+ "enabled": {
750
+ "description": "Whether we should integrate itself with the VCS client",
751
+ "type": [
752
+ "boolean",
753
+ "null"
754
+ ]
755
+ },
756
+ "root": {
757
+ "description": "The folder where we should check for VCS files. By default, we will use the same folder where `postgres-language-server.jsonc` was found.\n\nIf we can't find the configuration, it will attempt to use the current working directory. If no current working directory can't be found, we won't use the VCS integration, and a diagnostic will be emitted",
758
+ "type": [
759
+ "string",
760
+ "null"
761
+ ]
762
+ },
763
+ "useIgnoreFile": {
764
+ "description": "Whether we should use the VCS ignore file. When [true], we will ignore the files specified in the ignore file.",
765
+ "type": [
766
+ "boolean",
767
+ "null"
768
+ ]
769
+ }
770
+ },
771
+ "additionalProperties": false
772
+ }
773
+ }
774
+ }