aboutsummaryrefslogtreecommitdiffstats
path: root/SQLiteStudio3/coreSQLiteStudio/TODO.txt
blob: d18c16a2d1272a806bacbded60ff546f58146631 (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
69
70
71
72
73
74
75
76
77
* Outstanding features for 3.1:
- BLOB preview engine based on plugins
- ERD plugin
- DB compare plugin
- Foreign Key value suggestions in GridView
- code templates
- executing query with bind params
- migrate updates engine to Qt Install Framework

* 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.
- commiting 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
- 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

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









Qt mingw:
Not an easy task. I got Perl, Python, Ruby and MinGw/bin in path and
use this line

configure -opensource -confirm-license -platform win32-g++ -make libs
-qt-libjpeg -qt-libpng -no-openssl -no-icu  -qt-zlib -qt-pcre
-no-iconv -nomake examples -nomake tests -qt-style-windowsxp
-qt-style-windowsvista -opengl
desktop

Qt linux:
./configure -no-icu -nomake examples -nomake tests -no-dbus -opensource -skip webkit -skip quickcontrols -prefix /home/spakowane/qt5.3.1/output