aboutsummaryrefslogtreecommitdiffstats
path: root/SQLiteStudio3/coreSQLiteStudio/TODO.txt
blob: 9e0a77df1f0a4efe3606a68d0bf4c11253f307d6 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
cannot reproduce:
2922 / 2926 / 2925
2940
3009 - db w emailu od goretux@gmail.com
3052
3062

* Outstanding features for 3.2:
- migrate updates engine to Qt Install Framework
- loadable extensions full support
- BLOB preview engine based on plugins
- ERD plugin
- DB compare plugin
- executing query with bind params
- comments support in formatter

* Next versions:
- object names (columns, tables, etc) in dialogs should be validated against suffix/prefix whitespaces and if they appear, user should be asked for confirmation
- small useful features: generating template queries from context menu for table/view, from data view.
- code templates
- committing DataView should be async
- syntax checkers as services - per language
- code assistants as services - per language
- specialized validation of expressions for DEFAULT constraint.
- "recovery" after failed startup - detecting if previous start crashed and if yes, propose cleaning of configuration.
- tcl highlighter
- highlighting occurrences of the same object in the query when cursor is on it
- plugin to do performance testing
- plugins to generate artifacts
- qtscript syntax checker
- tcl syntax checker
- dbf import
- dbf export
- code assistant as a service with plugins, so it can be extended with other langs and injected in custom functions window, collations window, etc
- in configuration dialog option to disable each individual native SQL function
- move "integrity check" into dedicated window, add "PRAGMA foreign_key_check" as a second stage of checking and present all in one window
- tips&tricks dialog
- crash management
- SqlEditor::refreshValidObjects() doesn't add valid object names from other databases (not yet attached). It might be tricky to implement.
- need an idea for some smart "revert" or "backup", so users are protected from accidentaly deleting table, or data in table.
- expose query executor steps chain to plugins
- complete plugin for "Search in database(s)"
- complete plugin for compare tables/databases
- executing queries with bind parameters
- completer: when suggesting table in FROM clause, look at columns after SELECT to give related tables first.
- constraints tab in table window should have toolbar for adding/editing/deleting constraints
- add menu mnemonics support (underlined shortcut letters)
- per column filtering field when clicked on column header(?)
- option to show current window's DB path in top window title

CLI:
- plugin management commands
- export commands
- import commands
- populate commands
- formatting command

UNIT TESTS:
- Parser::parse: more complex examples, errors detecting
- Lexer::detokenize
- utils_sql (for splitQueries() check the CREATE TRIGGER)
- utils
- SelectResolver
- SchemaResolver

* Advanced syntax error checks:
- many idxColumns are not allowed for column FK
- autoincrement not allowed for not integer type