Commit Graph

3782 Commits

Author SHA1 Message Date
DingoBits
ba2103ed7f fix: extensions loading in macos build script (#3203)
* fix: install path for macos extensions

* workaround: symlink extraneous .dylib in filename

* fix: link with sqlcipher for intel macos build
2022-10-26 16:16:23 +11:00
Justin Clift
30310ca19c Automatically notarize our intel macos nightly builds too 2022-10-25 19:42:05 +11:00
Justin Clift
8ec0fb79d5 Updated macOS arm64 nightly build pieces, to notarize the binaries 2022-10-23 08:03:08 +11:00
Navdeep Singh Sidhu
23dc6cde87 Badges for Snap builds and Updated Ubuntu section (#3194)
* Upgraded snap builds to use core20
* using core20 (Ubuntu 20.xx) for builds
* added required dependencies

* Badges for Snap builds and Updated Ubuntu section

* Added badges for Snap Builds
* Updated Ubuntu Section to give info about packages on old Ubuntu versions

* Fixed typo and verbiage in Readme
2022-10-23 01:27:30 +11:00
Manuel
6f9e6ba4cd Merge pull request #3083 from Sitlos/patch-1
[Fix] Can't parse db name in .env file
2022-10-15 19:32:37 +02:00
Justin Clift
c1605e227f Updated monthly run script on our nightlies server 2022-10-15 01:03:59 +11:00
Justin Clift
e4435e67aa Initial macOS ARM64 nightly build script
Doesn't (yet) notarize the builds.  That can come later.
2022-10-14 14:32:50 +11:00
Justin Clift
958d397134 Add "intel" to macOS x86 nightly build filenames 2022-10-14 03:44:03 +11:00
Justin Clift
556f9ca6ca Add icon file to the macos nightly build .app 2022-10-13 07:17:21 +11:00
Chris Locke
8cbf5795bc Merge pull request #3169 from vedantmgoyal2009/patch-1
Create winget.yml
2022-10-07 16:38:38 +01:00
mgrojo
f10bdbdba9 Fix translation to match UI 2022-10-02 00:29:29 +02:00
Vedant
8fd98f90df Update winget.yml 2022-09-29 16:57:53 +05:30
SeongTae Jeong
33639dd260 Fix type on TableBrowser.ui 2022-09-25 12:43:52 +09:00
SeongTae Jeong
5df9809917 <translations>: Update Korean tranlsation
- Delete obsolete translation context
- Now, DB4S support 100% Korean language support
2022-09-25 12:31:18 +09:00
Justin Clift
c946fbd3d8 Update M1 macOS paths for Qt5 and SQLite to CMake search list 2022-09-24 18:43:02 +10:00
Justin Clift
4db139bca7 Load nvm in the build script, so appdmg can be found 2022-09-23 21:37:05 +10:00
Justin Clift
d2fb4a413d Cleaned up the macOS nightly build script a bit
Working ok on macOS Monterey (so far), though we may need to adjust
the macOS release we're building on depending upon feedback from
our users.
2022-09-22 20:01:00 +10:00
Vedant
c3c69191ea Only MSI installers 2022-09-16 09:14:36 +05:30
Vedant
87ee0686f7 Create winget.yml 2022-09-16 09:12:07 +05:30
Manuel
3c8af7a980 Merge pull request #3000 from Biswa96/cmake-mingw-install
cmake: Follow unix-like install directories in mingw
2022-09-15 00:07:21 +02:00
Justin Clift
65a72c3ce3 In Qt 5.12.12, Brazilian Portuguese has its own translation files 2022-09-14 07:36:43 +10:00
Justin Clift
c44f24a21c Update Wix Toolset Qt path for our Win nightlies 2022-09-14 06:55:33 +10:00
Manuel
4dedbbae6e Merge pull request #3162 from hikmet517/master
Update line number width when zooming. Calculating number width using `font()` does not take zoom into account. So, the overload of `setMarginWidth` with `QString` as second parameter was used. This way we leave the width calculation to QScintilla which considers the zoom while calculating.
2022-09-13 21:10:41 +02:00
Justin Clift
16cea35ca4 Update Qt for our Windows nightly builds to 5.12.12 2022-09-14 05:03:34 +10:00
Justin Clift
2db65f4c53 Merge pull request #3168 from sqlitebrowser/fix_win_pr_3068
Fix Windows build after PR #3068
2022-09-14 03:26:21 +10:00
mgrojo
0fe88ef4dd Fix Windows build after PR #3068 2022-09-12 20:51:53 +02:00
Justin Clift
64f3475752 Ensure our macOS nightly builds use the correct SQLite include files 2022-09-07 15:52:34 +10:00
Justin Clift
b057ab7ee5 Add the path for our custom macOS SQLite build
This should help get our macOS nightly builds working again
2022-09-07 15:37:21 +10:00
Hikmet Altıntaş
ff8b846c04 update line number width while zooming 2022-09-01 15:06:24 +03:00
Martin Kleusberg
a78dd0292f Save some screen space and reduce number of unnecessary borders
This slightly changes the window layout of the main window and its
docks by a) removing or reducing the margins around some widgets and b)
changing the style of some widgets to flat i.e. removing borders around
them. Via these changes we save a little screen space which should
especially help on smaller screens and hopefully also make the window
layout easier to read by not having as many parallel border lines in
some docks.
2022-08-07 18:26:45 +02:00
mgrojo
fb43e0677a Project files: prevent SQL tabs loss while closing the application
When a project file is loaded, changes are made, and the event close is
triggered, we lose the SQL file contents, because the project file is saved
when the tabs are close. Now the order is reversed, so the project saving
catches the correct state.

See issue #3007
2022-07-31 17:43:49 +02:00
mgrojo
0280d98a8f sqlite3 API: Prevent that busy DB are left open
If we follow the steps described in
https://github.com/sqlitebrowser/sqlitebrowser/issues/2910#issuecomment-1186259390
we get this warning:
"Database didn't close correctly, probably still busy"

The error has not been prevented, but by using sqlite3_close_v2 instead
of sqlite3_close, we can assure that the connection is eventually released.
2022-07-31 17:43:49 +02:00
mgrojo
f324729782 Project files: fix crash when tables does not match DB file
There are project files with settings saved for a table with empty schema
and name.

We let the user load a new DB file when the one referenced by the project
is not found, opening the door to load a DB with a different structure.

A final case for this inconsistencies can be that we let the user cancel
the opening dialog, and the project can be opened without a DB file.

See issue #3007
2022-07-31 17:43:49 +02:00
Martin Kleusberg
13b15ddc64 parser: Refactor parsing and handling of constraints
This commit refactors the handling of constraints and continues the work
started in 43107ea773. Instead of heavily
relying on runtime polymorphism with these changes we move towards more
compile-time polymorphism. Noticeable the constraint data types do not
have a type function any longer; instead they are differentiated by
their actual data type.

This has several benefits:
- More likely to catch errors at compile-time and therefore avoid them
  at runtime.
- The program runs faster. This should be most noticeable for databases
  with a very large amount of tables or other database objects.
- The code should be easier to read and maintain.

Additionally this should also prepare for even more refactoring in the
future.
2022-07-24 17:45:37 +02:00
Martin Kleusberg
dd62577818 Refactor the constraints tab in the Edit Table dialog
After moving both foreign keys and check constraints to different tabs
in the Edit Table dialog, the previous constraints tab now only shows
primary keys and unique constraints. To accomodate for this reduced
feature set, this commit renames their internal names and uses a
narrower data type for handling the constraints.
2022-07-24 14:22:14 +02:00
Martin Kleusberg
54d82eab44 Add an extra tab for editing check constraints to the Edit Table dialog
Just like before in 53b5493f2e which added
an extra tab for foreign keys, this adds an extra tab for editing check
constraints in the Edit Table dialog. Again, this makes the UI easier to
navigate and adds support for editing of check constraints to the
dialog.
2022-07-24 14:03:19 +02:00
Martin Kleusberg
53b5493f2e Add an extra tab for editing foreign keys to the Edit Table dialog
In the Edit Table dialog we had two separate tabs, one for table fields
and one for table constraints. The table constraints tab showed primary
keys, unique constraint, foreign keys, and some check constraints and at
least to some extent allows editing them.

This commit moves the foreign keys to a new third tab. Even though this
adds extra UI elements I feel like this might simplify finding and
editing exactly the items you are looking for and leads to a clearer UI.

This also adds support for fully editing foreign keys in the new tab.
Previously the references table and columns could not be edited in the
constraints tab. The only feature these changes remove is converting
other constraints to or from foreign keys which again simplifies the UI
and makes it less error-prone because this is not really a meaningful
thing to do.
2022-07-24 13:13:31 +02:00
Martin Kleusberg
6356e5dea2 Fix minor warnings by cppcheck 2022-07-23 21:14:04 +02:00
Martin Kleusberg
5c57622f58 parser: Add support for IS (NOT) DISTINCT FROM expressions
SQLite 3.39.0 introduced expressions of these forms:
expr IS DISTINCT FROM expr
expr IS NOT DISTINCT FROM expr

Since these can be used in indexes and check expression, we need need to
add support for these expressions to the SQL parser.
2022-07-23 18:26:31 +02:00
Manuel
b01a201569 Merge pull request #3068 from longnguyen2004/master
Refactor CMakeLists, targetify everything
2022-07-21 20:04:05 +02:00
mgrojo
2e39408f09 Associate copy table column menu entry to action.
This is a fix for PR #3051.

See issue #3059.
2022-07-08 22:23:46 +02:00
Sitlos
1945d321f7 Update DotenvFormat.cpp 2022-07-02 09:52:36 +08:00
Sitlos
302a5fe0db [Fix] Can't parse db name in .env file
Can't parse db name in .env file when trying to bypass the password. Below is the detailed issue link.
https://github.com/sqlitebrowser/sqlitebrowser/issues/3081
2022-07-01 16:46:44 +08:00
Manuel
bb6f633560 Merge pull request #3051 from ImTheTom/copy-column-name
Add copy column name action to data browser.
2022-06-28 22:15:51 +02:00
mgrojo
a1f6d2c7ea Fixes for hiding the title bar of the single Table Browser
- Do not hide the title bar if the dock is floating when the second one is
closed.

- Fix the number of docs for hiding the title bar when it is opened.

Related to issue #2283.
2022-06-27 00:01:26 +02:00
mgrojo
c40fb07b87 Do not show the titlebar for the Table Browser dock when there is only one
This saves space and avoids redundancy in the different places where the
table name appears.

A new toolbar button for adding a new dock is included, so the
functionality is still visible (it might be more discoverable now, indeed).

Related to issue #2283.

See comment in:
 https://github.com/sqlitebrowser/sqlitebrowser/issues/2918#issuecomment-1003108299
2022-06-25 01:11:16 +02:00
mgrojo
f18611ae17 Change mouse cursor to the pointing hand when Ctrl+Shift are pressed
This will make the functionality of opening a URL or foreign key more
visible.

See comment in:
 https://github.com/sqlitebrowser/sqlitebrowser/issues/3057#issuecomment-1165841123
2022-06-25 01:06:52 +02:00
mgrojo
8bb16d1dd0 DB Schema: drag & drop SELECT queries
New check option in the contextual menu of the DB schema dock to allow
drag & drop of SELECT queries, provided that only a table or fields of
the same table are dragged from the DB Schema tree.
2022-06-20 17:40:24 +02:00
mgrojo
f5e074528d Fix possible crash when opening a project without SQL tabs
If there is no SQL tab in the project (cannot reproduce that any longer,
only after manual editing of the project file), the first query and
selection of a column index greater than the number of columns in the
default table browsed in the Data Browser will cause a crash, because
m_currentTabTableModel will still be associated to the table in the
Data Browser main tab.
2022-06-20 13:21:15 +02:00
mgrojo
8f5c17e2a7 Edit Database Cell: fixed potential for data loss and better feedback
Remaining detected case for a potential data loss in the cell editor have
been fixed:
- Switching to another main tab.
- Start a filter.

In both cases a dialog for saving or discarding is open.

Additionally, the cell editor shows the cell coordinates currently open.
And the NULL text in margin is reset when the user types in the editor.

See issue #2488
2022-06-19 23:52:15 +02:00