Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
10 changes: 10 additions & 0 deletions .pre-commit-config.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,16 @@ default_language_version:
node: system

repos:
- repo: https://github.com/crate-ci/typos
rev: 00f422f3b19c57bc6338715ebfe3316d38768461 # v1.50.3
hooks:
- id: typos
# Drop the upstream default `--write-changes` so the hook only
# reports failures instead of writing changes.
# Keep `--force-exclude` so the excludes in typos.toml still
# apply to the paths prek passes in.
args: ['--force-exclude']

- repo: https://github.com/pre-commit/pre-commit-hooks
rev: 3e8a8703264a2f4a69428a0aa4dcb512790b2c8c # 6.0.0
hooks:
Expand Down
2 changes: 1 addition & 1 deletion docker/Dockerfile
Original file line number Diff line number Diff line change
Expand Up @@ -162,7 +162,7 @@ RUN chown -R ${STACKABLE_USER_UID}:0 /stackable && \

USER ${STACKABLE_USER_UID}

# These labels have mostly been superceded by the OpenContainer spec annotations below but it doesn't hurt to include them
# These labels have mostly been superseded by the OpenContainer spec annotations below but it doesn't hurt to include them
# http://label-schema.org/rc1/
LABEL maintainer="info@stackable.tech"
LABEL vendor="Stackable GmbH"
Expand Down
2 changes: 1 addition & 1 deletion eslint.config.js
Original file line number Diff line number Diff line change
Expand Up @@ -29,7 +29,7 @@ export default defineConfig(
// It will currently also error on external links or links with query parameters
// https://github.com/sveltejs/eslint-plugin-svelte/issues/1353
'svelte/no-navigation-without-resolve': 'warn',
// Too common occurance in this project, disabling for now
// Too common occurrence in this project, disabling for now
'security/detect-object-injection': 'off'
}
},
Expand Down
10 changes: 5 additions & 5 deletions src/lib/editor/completion/completion.test.ts
Original file line number Diff line number Diff line change
Expand Up @@ -29,9 +29,9 @@ describe('analyseCompletion — cursor context', () => {
});

it('reads a partial word at the cursor', () => {
const analysis = analyseCompletion(at('SELECT * FROM fo|o'));
const analysis = analyseCompletion(at('SELECT * FROM fo|o')); // typos:ignore-line
expect(analysis.prefixParts).toEqual([]);
expect(analysis.wordAtCursor).toBe('fo');
expect(analysis.wordAtCursor).toBe('fo'); // typos:ignore-line
});

it('reads a dotted prefix with a partial word at the cursor', () => {
Expand All @@ -53,10 +53,10 @@ describe('analyseCompletion — cursor context', () => {
});

it('surfaces the statement the cursor is in for multi-statement input', () => {
const analysis = analyseCompletion(at('SELECT 1; SELECT * FROM fo|o'));
const analysis = analyseCompletion(at('SELECT 1; SELECT * FROM fo|o')); // typos:ignore-line
expect(analysis.statement).not.toBeNull();
expect(analysis.statement?.sql.startsWith('SELECT *')).toBe(true);
expect(analysis.wordAtCursor).toBe('fo');
expect(analysis.wordAtCursor).toBe('fo'); // typos:ignore-line
});
});

Expand All @@ -67,7 +67,7 @@ describe('analyseCompletion — grammar classification', () => {
});

it('classifies a mid-identifier FROM target as a relation slot', () => {
const analysis = analyseCompletion(at('SELECT * FROM fo|'));
const analysis = analyseCompletion(at('SELECT * FROM fo|')); // typos:ignore-line
expect(analysis.identifierKind).toBe('relation');
});

Expand Down
41 changes: 41 additions & 0 deletions typos.toml
Original file line number Diff line number Diff line change
@@ -0,0 +1,41 @@
# Configuration for typos (https://github.com/crate-ci/typos), run via the prek
# hook in .pre-commit-config.yaml.

[files]
# Bare `typos` skips hidden dirs by default, but prek passes explicit paths and

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

no prek in this repo

Copy link
Copy Markdown
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Ah! Then this needs to look a little bit different I guess. I'll redo.

# so does check them. Turn it off so both agree.
ignore-hidden = false

extend-exclude = [
# Ignore `.git`, which the above `ignore-hidden = false` would otherwise pull in.
".git/",
# German translations. typos only knows English.
"messages/de.json",
]

[default]
# typos has no native suppression directive
# (https://github.com/crate-ci/typos/issues/316), so these regexes provide one.
# A marker must sit in a comment: after `#`, `//` or `;` (free text may follow),
# or inside a closed `<!-- -->`, `/* */` or `{# #}` (free text may precede the
# closer). An unterminated `typos:ignore-block-start` suppresses nothing.
#
# Use one of the following when the word is correct at one place but would still be a typo elsewhere:
#
# # typos:ignore-line at the end of the line it applies to
# # typos:ignore-next-line on its own line, above the offending line
# # typos:ignore-block-start / typos:ignore-block-end around a block
extend-ignore-re = [
'(?Rm)^.*?(?:(?:^|[^{])(?:#|//|;)[ \t]*typos:ignore-line\b.*|(?:<!--[ \t]*typos:ignore-line\b.*?-->|/\*[ \t]*typos:ignore-line\b.*?\*/|\{#[ \t]*typos:ignore-line\b.*?#\})[ \t]*)$',
'(?Rm)^[ \t]*(?:(?:#|//|;)[ \t]*typos:ignore-next-line\b.*|(?:<!--[ \t]*typos:ignore-next-line\b.*?-->|/\*[ \t]*typos:ignore-next-line\b.*?\*/|\{#[ \t]*typos:ignore-next-line\b.*?#\})[ \t]*)\r?\n.*$',
'(?ms)(?:(?:^|[^{])(?:#|//|;)[ \t]*typos:ignore-block-start\b|<!--[ \t]*typos:ignore-block-start\b[^\n]*?-->|/\*[ \t]*typos:ignore-block-start\b[^\n]*?\*/|\{#[ \t]*typos:ignore-block-start\b[^\n]*?#\}).*?(?:(?:^|[^{])(?:#|//|;)[ \t]*typos:ignore-block-end\b|<!--[ \t]*typos:ignore-block-end\b[^\n]*?-->|/\*[ \t]*typos:ignore-block-end\b[^\n]*?\*/|\{#[ \t]*typos:ignore-block-end\b[^\n]*?#\})',
]

# Before adding an entry in here, consider an in-place marker instead.
# Every entry below gets a one-line comment saying what the word is.
[default.extend-words]
# Azure Kubernetes Service
aks = "aks"
# Accepted variant of "unparsable". Used in the `isUnparseable` field of the SQL
# completion grammar analysis (src/lib/editor/completion/grammar-analysis.ts).
unparseable = "unparseable"
Loading