Skip to content

Commit 1763d52

Browse files
authored
fix(docs): links (#635)
1 parent d04cbc9 commit 1763d52

32 files changed

Lines changed: 151 additions & 103 deletions

.gitignore

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -34,3 +34,5 @@ crates/pgt_treesitter_grammar/src/node-types.json
3434
crates/pgt_treesitter_grammar/src/parser.c
3535
crates/pgt_treesitter_grammar/src/parser.c.codex-session-id
3636
.codex-session-id
37+
38+
site/

docs/codegen/src/rules_index.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -69,7 +69,7 @@ fn generate_group(
6969

7070
write!(
7171
content,
72-
"| [{rule_name}](./{dashed_rule}) | {summary} | {properties} |"
72+
"| [{rule_name}](./rules/{dashed_rule}.md) | {summary} | {properties} |"
7373
)?;
7474

7575
writeln!(content)?;

docs/codegen/src/rules_sources.rs

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -48,12 +48,15 @@ pub fn generate_rule_sources(docs_dir: &Path) -> anyhow::Result<()> {
4848
for (rule_name, metadata) in rules {
4949
let kebab_rule_name = Case::Kebab.convert(rule_name);
5050
if metadata.sources.is_empty() {
51-
exclusive_rules.insert((rule_name.to_string(), format!("../rules/{kebab_rule_name}")));
51+
exclusive_rules.insert((
52+
rule_name.to_string(),
53+
format!("./rules/{kebab_rule_name}.md"),
54+
));
5255
} else {
5356
for source in metadata.sources {
5457
let source_set = SourceSet {
5558
rule_name: rule_name.to_string(),
56-
link: format!("../rules/{kebab_rule_name}"),
59+
link: format!("./rules/{kebab_rule_name}.md"),
5760
source_link: source.to_rule_url(),
5861
source_rule_name: source.as_rule_name().to_string(),
5962
};

docs/codegen/src/splinter_docs.rs

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -86,9 +86,10 @@ fn generate_splinter_rule_doc(
8686
writeln!(content, "{}", splinter_meta.description)?;
8787
writeln!(content)?;
8888

89-
// Add "Learn More" link with remediation URL from trait
90-
let remediation = splinter_meta.remediation;
91-
writeln!(content, "[Learn More]({remediation})")?;
89+
// Add remediation section
90+
writeln!(content, "## Remediation")?;
91+
writeln!(content)?;
92+
writeln!(content, "{}", splinter_meta.remediation)?;
9293
writeln!(content)?;
9394

9495
// Add SQL query section (with metadata stripped)

docs/configuration.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -103,5 +103,5 @@ In the following example, we include all files, except those in any test/ folder
103103
```
104104

105105
#### Control files via VCS
106-
You can ignore files ignored by your [VCS](/guides/vcs_integration.md).
106+
You can ignore files ignored by your [VCS](guides/vcs_integration.md).
107107

docs/getting_started.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@ Install via your package manager if you use one:
88
pnpm add -D -E @postgres-language-server/cli
99
```
1010

11-
Alternatively, most [editor integrations](/guides/ide_setup) will manage the installation for you, or you can install it as a [standalone executable](/manual_installation).
11+
Alternatively, most [editor integrations](guides/ide_setup.md) will manage the installation for you, or you can install it as a [standalone executable](manual_installation.md).
1212

1313
## Configuration
1414

@@ -88,6 +88,6 @@ The Postgres Language Server is available as an extension in your favorite edito
8888

8989
Run `postgres-language-server check` in your CI pipeline to lint your schema changes and enforce code quality across your team. We provide a [GitHub Action](https://github.com/supabase-community/postgres-language-server-cli-action) to setup the Postgres Language Server in your runner.
9090

91-
See the [Continuous Integration](/guides/continuous_integration) guide for an example.
91+
See the [Continuous Integration](guides/continuous_integration.md) guide for an example.
9292

9393

docs/guides/suppressions.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -90,5 +90,5 @@ alter table tasks drop column created_at;
9090

9191
## Notes
9292

93-
- Trying to suppress diagnostics that have already been disabled in your [configuration file](/#configuration) will show a warning.
93+
- Trying to suppress diagnostics that have already been disabled in your [configuration file](../configuration.md) will show a warning.
9494
- Trying to suppress diagnostics that don't haven't been raised will also show a warning.

docs/index.md

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -14,10 +14,10 @@ The language server is built on Postgres' own parser `libpg_query` to ensure 100
1414

1515
The following features are available today:
1616

17-
- [Syntax Diagnostics](/features/syntax_diagnostics)
18-
- [Linting](/features/linting)
19-
- [Type Checking](/features/type_checking)
20-
- [PL/pgSQL Support](/features/plpgsql)
21-
- [Autocompletion & Hover](/features/editor_features)
17+
- [Syntax Diagnostics](features/syntax_diagnostics.md)
18+
- [Linting](features/linting.md)
19+
- [Type Checking](features/type_checking.md)
20+
- [PL/pgSQL Support](features/plpgsql.md)
21+
- [Autocompletion & Hover](features/editor_features.md)
2222

2323
For future plans and opportunities to contribute, please check out the issues and discussions. Any contributions are welcome!

docs/reference/rule_sources.md

Lines changed: 33 additions & 33 deletions
Original file line numberDiff line numberDiff line change
@@ -6,39 +6,39 @@ _No exclusive rules available._
66
### Eugene
77
| Eugene Rule Name | Rule Name |
88
| ---- | ---- |
9-
| [E11](https://kaveland.no/eugene/hints/E11/index.html) |[addSerialColumn](../rules/add-serial-column) |
10-
| [E3](https://kaveland.no/eugene/hints/E3/index.html) |[preferJsonb](../rules/prefer-jsonb) |
11-
| [E4](https://kaveland.no/eugene/hints/E4/index.html) |[runningStatementWhileHoldingAccessExclusive](../rules/running-statement-while-holding-access-exclusive) |
12-
| [E9](https://kaveland.no/eugene/hints/E9/index.html) |[lockTimeoutWarning](../rules/lock-timeout-warning) |
13-
| [W12](https://kaveland.no/eugene/hints/W12/index.html) |[multipleAlterTable](../rules/multiple-alter-table) |
14-
| [W13](https://kaveland.no/eugene/hints/W13/index.html) |[creatingEnum](../rules/creating-enum) |
9+
| [E11](https://kaveland.no/eugene/hints/E11/index.html) |[addSerialColumn](./rules/add-serial-column.md) |
10+
| [E3](https://kaveland.no/eugene/hints/E3/index.html) |[preferJsonb](./rules/prefer-jsonb.md) |
11+
| [E4](https://kaveland.no/eugene/hints/E4/index.html) |[runningStatementWhileHoldingAccessExclusive](./rules/running-statement-while-holding-access-exclusive.md) |
12+
| [E9](https://kaveland.no/eugene/hints/E9/index.html) |[lockTimeoutWarning](./rules/lock-timeout-warning.md) |
13+
| [W12](https://kaveland.no/eugene/hints/W12/index.html) |[multipleAlterTable](./rules/multiple-alter-table.md) |
14+
| [W13](https://kaveland.no/eugene/hints/W13/index.html) |[creatingEnum](./rules/creating-enum.md) |
1515
### Squawk
1616
| Squawk Rule Name | Rule Name |
1717
| ---- | ---- |
18-
| [adding-field-with-default](https://squawkhq.com/docs/adding-field-with-default) |[addingFieldWithDefault](../rules/adding-field-with-default) |
19-
| [adding-foreign-key-constraint](https://squawkhq.com/docs/adding-foreign-key-constraint) |[addingForeignKeyConstraint](../rules/adding-foreign-key-constraint) |
20-
| [adding-not-null-field](https://squawkhq.com/docs/adding-not-null-field) |[addingNotNullField](../rules/adding-not-null-field) |
21-
| [adding-required-field](https://squawkhq.com/docs/adding-required-field) |[addingRequiredField](../rules/adding-required-field) |
22-
| [adding-serial-primary-key-field](https://squawkhq.com/docs/adding-serial-primary-key-field) |[addingPrimaryKeyConstraint](../rules/adding-primary-key-constraint) |
23-
| [ban-char-field](https://squawkhq.com/docs/ban-char-field) |[banCharField](../rules/ban-char-field) |
24-
| [ban-concurrent-index-creation-in-transaction](https://squawkhq.com/docs/ban-concurrent-index-creation-in-transaction) |[banConcurrentIndexCreationInTransaction](../rules/ban-concurrent-index-creation-in-transaction) |
25-
| [ban-drop-column](https://squawkhq.com/docs/ban-drop-column) |[banDropColumn](../rules/ban-drop-column) |
26-
| [ban-drop-database](https://squawkhq.com/docs/ban-drop-database) |[banDropDatabase](../rules/ban-drop-database) |
27-
| [ban-drop-not-null](https://squawkhq.com/docs/ban-drop-not-null) |[banDropNotNull](../rules/ban-drop-not-null) |
28-
| [ban-drop-table](https://squawkhq.com/docs/ban-drop-table) |[banDropTable](../rules/ban-drop-table) |
29-
| [ban-truncate-cascade](https://squawkhq.com/docs/ban-truncate-cascade) |[banTruncateCascade](../rules/ban-truncate-cascade) |
30-
| [changing-column-type](https://squawkhq.com/docs/changing-column-type) |[changingColumnType](../rules/changing-column-type) |
31-
| [constraint-missing-not-valid](https://squawkhq.com/docs/constraint-missing-not-valid) |[constraintMissingNotValid](../rules/constraint-missing-not-valid) |
32-
| [disallow-unique-constraint](https://squawkhq.com/docs/disallow-unique-constraint) |[disallowUniqueConstraint](../rules/disallow-unique-constraint) |
33-
| [prefer-big-int](https://squawkhq.com/docs/prefer-big-int) |[preferBigInt](../rules/prefer-big-int) |
34-
| [prefer-bigint-over-int](https://squawkhq.com/docs/prefer-bigint-over-int) |[preferBigintOverInt](../rules/prefer-bigint-over-int) |
35-
| [prefer-bigint-over-smallint](https://squawkhq.com/docs/prefer-bigint-over-smallint) |[preferBigintOverSmallint](../rules/prefer-bigint-over-smallint) |
36-
| [prefer-identity](https://squawkhq.com/docs/prefer-identity) |[preferIdentity](../rules/prefer-identity) |
37-
| [prefer-robust-stmts](https://squawkhq.com/docs/prefer-robust-stmts) |[preferRobustStmts](../rules/prefer-robust-stmts) |
38-
| [prefer-text-field](https://squawkhq.com/docs/prefer-text-field) |[preferTextField](../rules/prefer-text-field) |
39-
| [prefer-timestamptz](https://squawkhq.com/docs/prefer-timestamptz) |[preferTimestamptz](../rules/prefer-timestamptz) |
40-
| [renaming-column](https://squawkhq.com/docs/renaming-column) |[renamingColumn](../rules/renaming-column) |
41-
| [renaming-table](https://squawkhq.com/docs/renaming-table) |[renamingTable](../rules/renaming-table) |
42-
| [require-concurrent-index-creation](https://squawkhq.com/docs/require-concurrent-index-creation) |[requireConcurrentIndexCreation](../rules/require-concurrent-index-creation) |
43-
| [require-concurrent-index-deletion](https://squawkhq.com/docs/require-concurrent-index-deletion) |[requireConcurrentIndexDeletion](../rules/require-concurrent-index-deletion) |
44-
| [transaction-nesting](https://squawkhq.com/docs/transaction-nesting) |[transactionNesting](../rules/transaction-nesting) |
18+
| [adding-field-with-default](https://squawkhq.com/docs/adding-field-with-default) |[addingFieldWithDefault](./rules/adding-field-with-default.md) |
19+
| [adding-foreign-key-constraint](https://squawkhq.com/docs/adding-foreign-key-constraint) |[addingForeignKeyConstraint](./rules/adding-foreign-key-constraint.md) |
20+
| [adding-not-null-field](https://squawkhq.com/docs/adding-not-null-field) |[addingNotNullField](./rules/adding-not-null-field.md) |
21+
| [adding-required-field](https://squawkhq.com/docs/adding-required-field) |[addingRequiredField](./rules/adding-required-field.md) |
22+
| [adding-serial-primary-key-field](https://squawkhq.com/docs/adding-serial-primary-key-field) |[addingPrimaryKeyConstraint](./rules/adding-primary-key-constraint.md) |
23+
| [ban-char-field](https://squawkhq.com/docs/ban-char-field) |[banCharField](./rules/ban-char-field.md) |
24+
| [ban-concurrent-index-creation-in-transaction](https://squawkhq.com/docs/ban-concurrent-index-creation-in-transaction) |[banConcurrentIndexCreationInTransaction](./rules/ban-concurrent-index-creation-in-transaction.md) |
25+
| [ban-drop-column](https://squawkhq.com/docs/ban-drop-column) |[banDropColumn](./rules/ban-drop-column.md) |
26+
| [ban-drop-database](https://squawkhq.com/docs/ban-drop-database) |[banDropDatabase](./rules/ban-drop-database.md) |
27+
| [ban-drop-not-null](https://squawkhq.com/docs/ban-drop-not-null) |[banDropNotNull](./rules/ban-drop-not-null.md) |
28+
| [ban-drop-table](https://squawkhq.com/docs/ban-drop-table) |[banDropTable](./rules/ban-drop-table.md) |
29+
| [ban-truncate-cascade](https://squawkhq.com/docs/ban-truncate-cascade) |[banTruncateCascade](./rules/ban-truncate-cascade.md) |
30+
| [changing-column-type](https://squawkhq.com/docs/changing-column-type) |[changingColumnType](./rules/changing-column-type.md) |
31+
| [constraint-missing-not-valid](https://squawkhq.com/docs/constraint-missing-not-valid) |[constraintMissingNotValid](./rules/constraint-missing-not-valid.md) |
32+
| [disallow-unique-constraint](https://squawkhq.com/docs/disallow-unique-constraint) |[disallowUniqueConstraint](./rules/disallow-unique-constraint.md) |
33+
| [prefer-big-int](https://squawkhq.com/docs/prefer-big-int) |[preferBigInt](./rules/prefer-big-int.md) |
34+
| [prefer-bigint-over-int](https://squawkhq.com/docs/prefer-bigint-over-int) |[preferBigintOverInt](./rules/prefer-bigint-over-int.md) |
35+
| [prefer-bigint-over-smallint](https://squawkhq.com/docs/prefer-bigint-over-smallint) |[preferBigintOverSmallint](./rules/prefer-bigint-over-smallint.md) |
36+
| [prefer-identity](https://squawkhq.com/docs/prefer-identity) |[preferIdentity](./rules/prefer-identity.md) |
37+
| [prefer-robust-stmts](https://squawkhq.com/docs/prefer-robust-stmts) |[preferRobustStmts](./rules/prefer-robust-stmts.md) |
38+
| [prefer-text-field](https://squawkhq.com/docs/prefer-text-field) |[preferTextField](./rules/prefer-text-field.md) |
39+
| [prefer-timestamptz](https://squawkhq.com/docs/prefer-timestamptz) |[preferTimestamptz](./rules/prefer-timestamptz.md) |
40+
| [renaming-column](https://squawkhq.com/docs/renaming-column) |[renamingColumn](./rules/renaming-column.md) |
41+
| [renaming-table](https://squawkhq.com/docs/renaming-table) |[renamingTable](./rules/renaming-table.md) |
42+
| [require-concurrent-index-creation](https://squawkhq.com/docs/require-concurrent-index-creation) |[requireConcurrentIndexCreation](./rules/require-concurrent-index-creation.md) |
43+
| [require-concurrent-index-deletion](https://squawkhq.com/docs/require-concurrent-index-deletion) |[requireConcurrentIndexDeletion](./rules/require-concurrent-index-deletion.md) |
44+
| [transaction-nesting](https://squawkhq.com/docs/transaction-nesting) |[transactionNesting](./rules/transaction-nesting.md) |

0 commit comments

Comments
 (0)