GithubHelp home page GithubHelp logo

antares-sql / antares Goto Github PK

View Code? Open in Web Editor NEW
1.5K 22.0 105.0 9.59 MB

A modern, fast and productivity driven SQL client with a focus in UX

Home Page: https://antares-sql.app

License: MIT License

JavaScript 5.27% Vue 49.59% SCSS 1.67% EJS 0.03% TypeScript 43.44%
sql client electron-app vue mysql database desktop-app javascript mariadb linux-app

antares's Introduction

Antares SQL Client

GitHub package.json version GitHub Test e2e Mastodon Follow Plant a Tree

Antares is an SQL client based on Electron.js and Vue.js that aims to become a useful tool, especially for developers.
Our target is to support as many databases as possible, and all major operating systems, including the ARM versions.

At the moment this application is in development state, many features will come in future updates, and supports only MySQL/MariaDB, PostgreSQL, SQLite and Firebird SQL.
However, there are all the features necessary to have a pleasant database management experience, so give it a chance and send us your feedback, we would really appreciate it.
We are actively working on it, hoping to provide new cool features, improvements and fixes as soon as possible.

πŸ”— If you are curious to try Antares you can download and install the latest release.
πŸ‘ To stay tuned for new releases follow Antares SQL on Mastodon.
🌟 Don't forget to leave a star if you appreciate this project.

πŸ—³οΈ Polls:

Current key features

  • Multiple database connections at same time.
  • Database management (add/edit/delete).
  • Full tables management, including indexes and foreign keys.
  • Views, triggers, stored routines, functions and schedulers management (add/edit/delete).
  • A modern and friendly tab system; keep open every kind of tab you need in your workspace.
  • Fake table data filler to generate tons of data for test purpose.
  • Query suggestions and auto complete.
  • Query history: search through the last 1000 queries.
  • Save queries, notes or todo.
  • SSH tunnel support.
  • Manual commit mode.
  • Import and export database dumps.
  • Customizable keyboard shortcuts.
  • Dark and light theme.
  • Editor themes.

Philosophy

Why are we developing an SQL client when there are a lot of them on the market?
The main goal is to develop a forever 100% free (without paid premium feature), full featured, as possible community driven, cross platform and open source alternative, empowered by JavaScript ecosystem.
A modern application created with minimalism and simplicity in mind, with features in the right places, not hundreds of tiny buttons, nested tabs or submenues; productivity comes first.

Installation

Based on your operating system you can have one or more distribution formats to choose based on your preferences.
Since Antares SQL is a free software we don't have a budget to spend on annual licenses or certificates. This can result that on some platforms you might need to put in some additional work to install this app.

Linux

On Linux you can simply download and run the .AppImage distribution, install from FlatHub, Snap Store, AUR or from our PPA repository.

Windows

On Windows you can choose between downloading the app from Microsoft Store or downloading the .exe from our website or this github repo. Distributions that are not from Microsoft Store are not signed with a certificate, so to install you need to click on "More info" and then "Run anyway" on SmartScreen prompt.

MacOS

On macOS you can run .dmg distribution following this guide to install apps from unknown developers.

Download

Download on Flathub Get it from the Snap Store Get it from AUR
πŸš€ Other Downloads

Currently supported

Databases

  • MySQL/MariaDB
  • PostgreSQL
  • SQLite
  • Firebird SQL
  • DuckDB
  • SQL Server
  • More...

Operating Systems

β€’ x64

  • Windows
  • Linux
  • MacOS

β€’ ARM

  • Windows
  • Linux
  • MacOS

How to contribute

Contributors ✨

Thanks goes to these wonderful people (emoji key):

Fabio Di Stasio
Fabio Di Stasio

πŸ’» 🌍 πŸ“–
Giulio Ganci
Giulio Ganci

πŸ’»
Christian Ratz
Christian Ratz

πŸ’» 🌍
Giuseppe Gigliotti
Giuseppe Gigliotti

🌍
Mohd-PH
Mohd-PH

🌍
hongkfui
hongkfui

🌍
Robin
Robin

🌍
Daniel Eduardo
Daniel Eduardo

🌍
NgΓ΄ Quα»‘c Đẑt
NgΓ΄ Quα»‘c Đẑt

🌍
Isamu Sugiura
Isamu Sugiura

🌍
Riccardo Sacchetto
Riccardo Sacchetto

πŸ“¦
Kilian Stallinger
Kilian Stallinger

πŸ’»
文杰
文杰

πŸ’»
goYou
goYou

🌍
Topollo
Topollo

πŸ’»
Cleverson
Cleverson

🌍
fred
fred

🌍
xaka_xak
xaka_xak

🌍
ThΓ©o Billardey
ThΓ©o Billardey

🌍
Muhammad Dyas Yaskur
Muhammad Dyas Yaskur

🌍 πŸ’»
tianci li
tianci li

🌍
555cider
555cider

🌍
Anton Mikhalev
Anton Mikhalev

🌍
RenΓ©
RenΓ©

πŸ’» 🌍
Woodenman
Woodenman

πŸ“¦
Marc Vilella
Marc Vilella

🌍
Ladislav VondrÑček
Ladislav VondrÑček

🌍
Vladyslav
Vladyslav

🌍
Bagus Indrayana
Bagus Indrayana

πŸ’»

This project follows the all-contributors specification. Contributions of any kind welcome!

antares's People

Contributors

64knl avatar allcontributors[bot] avatar belowdecent avatar brdtheo avatar datlechin avatar dependabot[bot] avatar digitalgopnik avatar dyaskur avatar fabio286 avatar goyou avatar hongkfui avatar isamusugi avatar jimcat8 avatar kilianstallz avatar m1khal3v avatar markusand avatar mohd-ph avatar mranyx avatar raliqala avatar reverb6821 avatar smileyzn avatar toriphes avatar wenj91 avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

antares's Issues

Run as a docker container

Is your feature request related to a problem? Please describe.
This issue is not related to a problem, it's just a feature request.

Describe the solution you'd like
I can see a potential possibility for antares-sql to run from the browser, the same way adminer is used currently. A concrete example would be something like the following (copied from the MariaDB official docker page)

# Use root/example as user/password credentials
version: '3.1'

services:

  db:
    image: mariadb
    restart: always
    environment:
      MYSQL_ROOT_PASSWORD: example

  antares:
    image: fabio286/antares
    restart: always
    ports:
      - 8080:8080

Antares would then be available by accessing localhost:8080 in a browser.

Describe alternatives you've considered
We can always run the AppImage in a standard Linux docker container, forwarding the display to the host system, but that would be far more bothersome to configure in most cases.

Additional context
No additional context.

text data with '%' is escaped and written

Describe the bug
In DATA editing, text data with '%' string is escaped and the escape characters are written to the field.

To Reproduce
Steps to reproduce the behavior:

  1. Open a TEXT data field in DATA.
  2. Input 'A%', for example.
  3. Click Update.
  4. The content becomes 'A\%'.

Expected behavior
Entered text data is written without escape.

Screenshots

Desktop (please complete the following information):

  • OS: Ubuntu
  • Version 21.04

Additional context

Selecting client for new connection hangs long time.

Describe the bug
When creating new connection, opening "Client" drop-down box hangs the application for about 20s.

To Reproduce
Steps to reproduce the behavior:

  1. Go to 'Add connection'
  2. Click on 'Client drop-down box'
  3. Program hangs for long time.

Expected behavior
Open the client type selection drop-down imminently.

Application (please complete the following information):

  • Version 0.1.7
  • Distribution: Snap Store

Desktop:

  • OS: Manjaro Linux
  • Version: Latest Manjaro 64bit with Linux 5.12.2-1 Kernel

Unable to connect to Docker MariaDB Server through container IP

Describe the bug
I have an instance of MariaDB Server running under docker on my PC, with previously PHPMyAdmin to connect to it and administer it, I would now like to use only Antares SQL.

I configured my mysql client to use TCP protocol (in my.cnf file) but I can't connect

To Reproduce

  1. Create mariadb-server container docker with command :
docker run -p 127.0.0.1:3306:3306  --name mariadb-server -e MARIADB_ROOT_PASSWORD=ro -d mariadb:latest
  1. Configure mariadb-client to use TCP for localhost connection (instead of unix socket)
# File: /etc/mysql/my.cnf
[client]
protocol=tcp
  1. Try connection with mariadb-client
mysql -u root -proot
  1. Connection is successful, try now to connect with Antares SQL
    image

4-2. Try connection on Antares but with container IP directly
image

Expected behavior
Connection successful !

Application (please complete the following information):

  • Version : 0.3.5
  • Distribution: Linux AppImage

Desktop (please complete the following information):

  • OS: Linux Mint
  • Version 20.2 Cinnamon

PostgerSql Windows Version

Describe the bug

Using postgresql database, you get message 'error: relation "dbo.tablename" does not exist' if table name contain uppercase characters.

To Reproduce

Uses a postgresql database with tables that have uppercase characters in the name

Application (please complete the following information):

  • Version 0.3.6
  • Distribution: windows 64bit portable exe

image

Popup is not shown when the field value of a foreign key is NULL.

When a table has a foreign key to another table, double-clicking the field triggers a popup menu if the filed has a valid key.
When the value is NULL, Antares shows a tick marks on the right side of the field, but no menu is shown. As a result, the filed cannot be edited via GUI.
Setting some value to the field by Query, it becomes editable.
My platform : Ubuntu 20.10/amd64

Issues with Microsoft Store distribution

In this hours I'm noticing some problems with Antares from Microsoft Store.
If you facing some issues please try to uninstall and reinstall, this should solve any problem. You won't lose your settings and connections.

TEXT field update fails for some text patterns.

Describe the bug
When TEXT is input in EDIT dialog and has some specific patterns, "Update" causes Syntax error.

To Reproduce

  1. Create a MySQL/MariaDB database table having TEXT.
  2. Open "DATA" tab and insert a new record.
  3. Open EDIT dialog and input a string "{ 1; }". (double quote is not included )
  4. Click Update

Expected behavior
The content is successfully updated.

Screenshots

Desktop (please complete the following information):

  • OS: Ubuntu
  • Version 21.04

Additional context
String "{ 1 }" has no problem.

Can't create new table

Describe the bug
I can't create a new table. Return error.

To Reproduce
When you try to create a new table, server return this error:

Error: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ') COMMENT='', COLLATE='utf8mb4_0900_ai_ci', ENGINE=InnoDB' at line 1

  • Version 0.4.0
  • OS: Windows 10 PRO
  • MYSQL Version: 8.0.17

Textarea auto focus

Hello!

It would be good that when you change between tabs, and select tab with "Query", the textarea do autofocus to let you start typing instead of do click in input to make this do focus

datetime format handling is incorrect.

When a field of a record is modified and confirmed in DATA tab, the value should be written to DB server using SQL.
When a "datetime" type field (with existing data) exists, Antares fails because of SQL syntax error.

Error: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'Jul 28 2020 08:43:49 GMT+0900 (ζ—₯ζœ¬ζ¨™ζΊ–ζ™‚) AND update_date = Tue Jul 28 ...' at line 1

A datetime field must be specified using ISO ("YYYY-mm-dd hh:mm:ss"), but it seems Javascript format is used instead.

DATA tab needs next/prev page operation

Is your feature request related to a problem? Please describe.
DATA tab shows only 1000 rows from top.
To see the rows above 1000, I have to write a query like "SELECT * from T limit 1000,200" manually.

Describe the solution you'd like
Add an "offset" field, whose value can be edited directly and incremented/decremented by "next"/"[rev" buttons.

Describe alternatives you've considered
"offset" field , whose value does not change by "refresh" button.

Additional context

Unable to restart and update app on MacOS 12

Describe the bug
After downlaoding the latest update the "Restart Antares to install" Button does nothing to the application.
Restarting the app also does not solve the problem or update the app automatically.

To Reproduce
Steps to reproduce the behavior:

  • Go to settings
  • Auto-Download latest update
  • Press Restart button
  • Nothings happens

Expected behavior
I expect to click the restart-app button and the app is restarting and installing the latest update.

Application:

  • Version [e.g. 0.3.8]
  • Distribution: [dmg]

Desktop:

  • OS: [MacOS]
  • Version [12.1 Beta]

Copy cell return 'undefined'

Hello Fabio!

When you do "copy cell" after getting a integer result, the copy return "undefined"

For example, I do this query: SELECT UNIX_TIMESTAMP('2021-07-09 09:23:12')

image

Trojan found when installing version 0.4.0

Describe the bug
When the version 0.4.0 was downloaded from the application, right after the installation Windows Defender popped up saying that it found a Trojan in the uninstall.exe of Antares.

To Reproduce
Install the 0.4.0 version from the application

Screenshots
antares

Application:

  • Version: 0.4.0
  • Distribution: .exe

Desktop

  • OS: Windows 11 Home
  • Version: 21H2

Advanced data exportation

I'm actually coming here to inform you that the tool is really well done, congratulations to all.
But at the moment I won't keep it with me because I need advanced export, because here in Brazil the export pattern is ( ; ) and I need to copy the data directly from the table and pass it on to other tables or excel.
But I look forward to returning here in the near future.

translation by Google Translate

BigInt not supported

Describe the bug
When the ID (or maybe any column) is a BigInt, it shows a wrong value

To Reproduce
Steps to reproduce the behavior:

  1. Query a table where the ID column (or any column I suppose) has a bigInt values

Expected behavior
Show the right value (See the screenshots)

Screenshots
Actual:
image
Expected:
image

Application

  • Version 0.4.3
  • Distribution: Linux AppImage

Desktop

  • OS: Linux Mint
  • Version 20.3 x86_64

Additional context

zeroconf ( rendez-vous in Apple ) address not recognzied

Describe the bug
When creating a new connection, zeroconf name is not recognized even the host supports it.

To Reproduce
Steps to reproduce the behavior:

  1. Click "Add connection"
  2. Input zeroconf name ( for example. myhost.local )
  3. Click "test connection"
  4. See error

Expected behavior
Zeroconf names should be recongnized if the host has support.

Screenshots

Desktop (please complete the following information):

  • OS: Ubuntu
  • Version 21.04

TypeError: Cannot read properties of undefined (reading 'type')

Describe the bug
TypeError: Cannot read properties of undefined (reading 'type')
at eval (webpack-internal:///./src/main/libs/clients/MySQLClient.js:432:66)
at Array.map ()
at MySQLClient.getTableColumns (webpack-internal:///./src/main/libs/clients/MySQLClient.js:418:17)
at processTicksAndRejections (node:internal/process/task_queues:96:5)
at async eval (webpack-internal:///./src/main/libs/clients/MySQLClient.js:1620:36)

To Reproduce
Steps to reproduce the behavior:

  1. Go to '...'
  2. Click on '....'
  3. Scroll down to '....'
  4. See error

Expected behavior
A clear and concise description of what you expected to happen.

Screenshots
If applicable, add screenshots to help explain your problem.

image

Application (please complete the following information):

  • Version base branch master
  • Distribution: exe

Desktop (please complete the following information):

  • OS: Windows
  • Version [e.g. 22]

Additional context
Add any other context about the problem here.

View does not work for MySQL

Describe the bug
Views cannot be queried, showing no data.
For example, a simple view based on t, "select * from t" does not show any data in DATA tab, saying "unknown table t in information_schema" or showing busy cursor.

To Reproduce

  1. Create a simple table and input some rows.
  2. Create a simple view referencing the table above.
  3. Select DATA tab to display the data.
  4. Error is shown or the operation does not finish.

Expected behavior
A View works like a table.

Screenshots
None

Application (please complete the following information):

  • Version 0.1.9
  • Distribution: Snap Store

Desktop (please complete the following information):

  • OS: Ubuntu
  • Version 21.04

Additional context
This problem is OS irrelevant.

[Query Console] Edit font size

It is not possible to change the font size in the sql query input field. At the moment (especially with a dark theme) it is difficult to work.

Add the ability to change the font size for a field with sql queries.

Connect using a Postgres connection string

Is your feature request related to a problem? Please describe.

We are working to use teleport to connect to our remote databases. This service uses certificate based proxying to connect to databases. The output of this tool is a connection string (in our case a postgres connection string). Its a real pain to take the connection string and separate out the bits to put it in each dialog box. Especially since credentials are short lived.

Describe the solution you'd like

The ability to optionally paste a connection string that is parsed and auto inserted into the appropriate input boxes maybe as a starting point after which the input boxes can be further modified.

Describe alternatives you've considered

Manually entering credentials each time :(

Join with query broken

Describe the bug
A query containing a join with a query on one side return 'table does not exist'
The same query works in other SQL clients as well as embedded in Java

To Reproduce
Execute a query with a join where one side is a query, similar to this one:

SELECT jb.*, ja.ToCustomerID
FROM aajobdetails jb 
LEFT JOIN (
            SELECT * FROM aajoballocation 
            WHERE ID IN (
                        SELECT (CASE WHEN ToCustomerID = ? THEN MIN(ID) ELSE MAX(ID) END) AS ID 
                        FROM aajoballocation 
                        WHERE ((FromCustomerID = ?) OR (SubcontractorID = ?) OR (ToCustomerID = ?))  
                        AND Allocated != 'C' 
                        GROUP BY JobID
                        ) 
            ORDER BY JobID Desc
            ) ja ON jb.ID = ja.JobID 
WHERE jb.ID>0 
AND jb.UJID = ? 

Expected behavior
The results of the query are returned.
dbeaver-ce returns one line of data, which is correct

Screenshots
Screenshot from 2022-03-14 13-45-24

Application (please complete the following information):

  • Version 0.5.0 (2022-03-12)
  • Distribution: Source distribution 10.2.40 (x86_64 Linux) - installed from Ubuntu software

Desktop (please complete the following information):

Linux HP-Laptop-Ubuntu 5.13.0-35-generic #40~20.04.1-Ubuntu SMP Mon Mar 7 09:18:32 UTC 2022 x86_64 x86_64 x86_64 GNU/Linux

Additional context
This is not urgent as I have another tool I can use, but I like Antares so I'm reporting it :)

Can not access table having UNIQUE KEY

Steps to reproduce:

CREATE TABLE `test_table` (
  `field_1` varchar(200) NOT NULL,
  `field_2` varchar(15) NOT NULL,
  `field_3` varchar(15) NOT NULL,
  `field_4` varchar(15) NOT NULL,
  UNIQUE KEY `TEST_UC` (`field_1`, `field_2`)
) ENGINE = InnoDB DEFAULT CHARSET = utf8

If i try to access table settings or data, i get TypeError: Cannot read property 'replace' of undefined

I am using version 0.1.8

image

image

Index keys not cleared from tab memory

Clicking "Create new index" more than once will add duplicate icons for that field. Then, when deleting this field, it is not actually deleted and still exists in the background. Not sure whether this false delete is related to how it has been assigned duplicated index types.

Steps to reproduce the behavior:

  1. Add a field in a table and give it a name
  2. Assign an index to it e.g UNIQUE
  3. Repeat step 2 with the same index type - now the icon is duplicated
  4. Delete the field
  5. Add a field again and name it the same as in step 1
  6. The previous field that was deleted now seems to come to life again as the previously assigned indexes show again

Expected behavior
The field should only be allowed to be given an index type once, i.e. the icon should not be duplicated. Further, when deleting the field, it should not still exist in the background - this false delete may be related to the duplicated icons.

image

Application (please complete the following information):

  • Version 0.4.2
  • .exe install

Desktop (please complete the following information):

  • OS: Windows 11
  • Version 21H2

Filter by column values in GUI

Is your feature request related to a problem? Please describe.
It would be great to be able to filter the data based on columns. Something like a graphical version of WHERE column = "my_value" would be awesome to have. Other SQL graphical clients have this feature.

Describe the solution you'd like
Any solution which would enable the user to filter by column values directly in the GUI without manually performing an SQL query would be acceptable.

Describe alternatives you've considered
None.

Additional context
Screenshot from 2021-10-06 15-10-18
I'm referring to this kind of functionality available, for example, in Beekeeper Studio SQL client.

Selecting row behavior

The bug
Selecting all rows which could not be deleted when deletion resulted in an error before

To Reproduce

  1. Select multiple rows (via shift click or CTRL+A)
  2. "Delete rows"
  3. Some error occurs (not the bug)
  4. Clicking in one of the selected rows again selects all rows which were selected previously

Expected behavior
Select only clicked rows

Screenshots
Selecting a good row:
rep1

Selecting one of the rows which failed:
rep2

Application:

  • Version: 0.3.8
  • Distribution: app installed via "Software center"

Desktop:

  • OS: Linux KDE neon
  • Version: KDE Plasma 5.23.1

Additional notes
If you selected all rows and one of them fails, you can't select only one again, because all get selected.

Keep working on Antares, really appreciate it ;)

[Feature] Autorefresh

Often when I develop in my editor or clicking around in my app, it makes changes to the database. One feature that I really like is Autorefresh of the table.

Usecase:

  1. Lets say I clicked the "Users" table in the database, inside Antares.
  2. The "users" table is now visible in Antares
  3. I click the "Autorefresh" button inside Antares. Now Antareswill refresh the table every second / userdefined time.
  4. In my whatever app or editor, I make a change to the database.
  5. Since Antares autorefresh the "user" table, I can see the change immediately, whitout having to click on anything. This is really luxury, to have some-kind of "realtime" feedback, when you can see what is going on in the database.

This feature is in both dbBeaver and HeidiSql.

I really love how Antares is structured and would love to see this feature here.

I will get back with more screenshots and gif examples.

[Update]
Example of HeidiSql's autorefresh. Here it is automatically updating the table every 3 seconds.

HeidiSql is the top window, and bottom window simulated whatever app that makes a change to the database.
After the database change occur, you can see it when HeidiSql/Antares autorefresh.
hidisql_aurefresh

Does not start on Xubuntu 20.04 when installed through snap since update to v0.3.0

Hi,
I have installed antares on my Xubuntu 20.04 system with snap.
Since the update to v0.3.0 I get this error when I try to start the application

A JavaScript error occurred in the main process
Uncaught Exception:
Error: Cannot find module 'ssh2-promise'
Require stack:
- /snap/antares/211/opt/Antares/resources/app.asar/main.js
- 
    at Module._resolveFilename (internal/modules/cjs/loader.js:887:15)
    at Function.n._resolveFilename (electron/js2c/browser_init.js:261:1128)
    at Module._load (internal/modules/cjs/loader.js:732:27)
    at Function.f._load (electron/js2c/asar_bundle.js:5:12684)
    at Module.require (internal/modules/cjs/loader.js:959:19)
    at require (internal/modules/cjs/helpers.js:88:18)
    at Object.call (/snap/antares/211/opt/Antares/resources/app.asar/webpack:/external "ssh2-promise":1:18)
    at __webpack_require__ (/snap/antares/211/opt/Antares/resources/app.asar/webpack:/webpack/bootstrap:19:22)
    at Module.call (/snap/antares/211/opt/Antares/resources/app.asar/main.js:1:460469)
    at __webpack_require__ (/snap/antares/211/opt/Antares/resources/app.asar/webpack:/webpack/bootstrap:19:22)

It has worked fine last week before the update.
There are also some other warnings printed but they are probably not relevant.
Here is the full output anyway:

$ antares 
/snap/antares/211/gnome-platform/usr/lib/x86_64-linux-gnu/libgtk-3-0/gtk-query-immodules-3.0: /snap/antares/211/gnome-platform/usr/lib/x86_64-linux-gnu/libffi.so.7: no version information available (required by /snap/antares/211/usr/lib/x86_64-linux-gnu/libwayland-client.so.0)
/snap/antares/211/opt/Antares/antares: /snap/antares/211/gnome-platform/usr/lib/x86_64-linux-gnu/libffi.so.7: no version information available (required by /snap/antares/211/usr/lib/x86_64-linux-gnu/libwayland-client.so.0)
/snap/antares/211/opt/Antares/antares: /snap/antares/211/gnome-platform/usr/lib/x86_64-linux-gnu/libffi.so.7: no version information available (required by /snap/antares/211/usr/lib/x86_64-linux-gnu/libwayland-server.so.0)
/snap/antares/211/opt/Antares/antares: /snap/antares/211/gnome-platform/usr/lib/x86_64-linux-gnu/libffi.so.7: no version information available (required by /snap/antares/211/usr/lib/x86_64-linux-gnu/libwayland-client.so.0)
/snap/antares/211/opt/Antares/antares: /snap/antares/211/gnome-platform/usr/lib/x86_64-linux-gnu/libffi.so.7: no version information available (required by /snap/antares/211/usr/lib/x86_64-linux-gnu/libwayland-server.so.0)
/snap/antares/211/opt/Antares/antares: /snap/antares/211/gnome-platform/usr/lib/x86_64-linux-gnu/libffi.so.7: no version information available (required by /snap/antares/211/usr/lib/x86_64-linux-gnu/libwayland-client.so.0)
/snap/antares/211/opt/Antares/antares: /snap/antares/211/gnome-platform/usr/lib/x86_64-linux-gnu/libffi.so.7: no version information available (required by /snap/antares/211/usr/lib/x86_64-linux-gnu/libwayland-server.so.0)
A JavaScript error occurred in the main process
Uncaught Exception:
Error: Cannot find module 'ssh2-promise'
Require stack:
- /snap/antares/211/opt/Antares/resources/app.asar/main.js
- 
    at Module._resolveFilename (internal/modules/cjs/loader.js:887:15)
    at Function.n._resolveFilename (electron/js2c/browser_init.js:261:1128)
    at Module._load (internal/modules/cjs/loader.js:732:27)
    at Function.f._load (electron/js2c/asar_bundle.js:5:12684)
    at Module.require (internal/modules/cjs/loader.js:959:19)
    at require (internal/modules/cjs/helpers.js:88:18)
    at Object.call (/snap/antares/211/opt/Antares/resources/app.asar/webpack:/external "ssh2-promise":1:18)
    at __webpack_require__ (/snap/antares/211/opt/Antares/resources/app.asar/webpack:/webpack/bootstrap:19:22)
    at Module.call (/snap/antares/211/opt/Antares/resources/app.asar/main.js:1:460469)
    at __webpack_require__ (/snap/antares/211/opt/Antares/resources/app.asar/webpack:/webpack/bootstrap:19:22)
/proc/self/exe: /snap/antares/211/gnome-platform/usr/lib/x86_64-linux-gnu/libffi.so.7: no version information available (required by /snap/antares/211/usr/lib/x86_64-linux-gnu/libwayland-client.so.0)
/proc/self/exe: /snap/antares/211/gnome-platform/usr/lib/x86_64-linux-gnu/libffi.so.7: no version information available (required by /snap/antares/211/usr/lib/x86_64-linux-gnu/libwayland-server.so.0)

Apple Silicon distribution

Hi everyone,

I would like to provide a distribution for Apple Silicon but unfortunately I do not have the necessary hardware to test.
electron-builder should be able to provide distributions for MacOS ARM, so I tried to target arm64 as well but the dmg that is generated via GitHub Actions seems to be damaged according to the feedback received.

Any help with this task is welcome!

Fatal unhandled error at startup with electron14 as default

Describe the bug
Program failes on startup.

To Reproduce
Steps to reproduce the behavior:

Have electron14 as default elecron (on an arch-linux-favoured system).

Expected behavior
Program should start even with electron14 as default.

Screenshots

Better:

App threw an error during load
Error: @electron/remote >= 2.x is required for Electron >= 14. See https://github.com/electron/remote/blob/main/docs/migration-2.md for migration instructions.
    at Object.initialize (/usr/lib/antares-sql.asar/webpack:/node_modules/@electron/remote/dist/src/main/server.js:342:15)
    at Module.call (/usr/lib/antares-sql.asar/webpack:/src/main/index.js:75:37)
    at __webpack_require__ (/usr/lib/antares-sql.asar/webpack:/webpack/bootstrap:19:22)
    at Object.call (/usr/lib/antares-sql.asar/main.js:1:196882)
    at __webpack_require__ (/usr/lib/antares-sql.asar/webpack:/webpack/bootstrap:19:22)
    at /usr/lib/antares-sql.asar/webpack:/webpack/bootstrap:83:10
    at Object.<anonymous> (/usr/lib/antares-sql.asar/main.js:1:1329)
    at Module._compile (internal/modules/cjs/loader.js:1083:30)
    at Object.Module._extensions..js (internal/modules/cjs/loader.js:1113:10)
    at Module.load (internal/modules/cjs/loader.js:940:32)
A JavaScript error occurred in the main process
Uncaught Exception:
Error: @electron/remote >= 2.x is required for Electron >= 14. See https://github.com/electron/remote/blob/main/docs/migration-2.md for migration instructions.
    at Object.initialize (/usr/lib/antares-sql.asar/webpack:/node_modules/@electron/remote/dist/src/main/server.js:342:15)
    at Module.call (/usr/lib/antares-sql.asar/webpack:/src/main/index.js:75:37)
    at __webpack_require__ (/usr/lib/antares-sql.asar/webpack:/webpack/bootstrap:19:22)
    at Object.call (/usr/lib/antares-sql.asar/main.js:1:196882)
    at __webpack_require__ (/usr/lib/antares-sql.asar/webpack:/webpack/bootstrap:19:22)
    at /usr/lib/antares-sql.asar/webpack:/webpack/bootstrap:83:10
    at Object.<anonymous> (/usr/lib/antares-sql.asar/main.js:1:1329)
    at Module._compile (internal/modules/cjs/loader.js:1083:30)
    at Object.Module._extensions..js (internal/modules/cjs/loader.js:1113:10)
    at Module.load (internal/modules/cjs/loader.js:940:32)
libva error: vaGetDriverNameByIndex() failed with unknown libva error, driver_name = (null)
[27299:0922/090554.305855:ERROR:sandbox_linux.cc(374)] InitializeSandbox() called with multiple threads in process gpu-process.

Application (please complete the following information):

  • Version 0.3.5
  • Distribution: AUR

SSH Tunnel does not allow specifying a passphrase for the private key

Describe the bug
When using SSH Tunnel the GUI does not allow (there is not a field) to type the passphrase for private key. Therefore, this issue renders the SSH Tunnel unusable in most cases.

To Reproduce
Steps to reproduce the behavior:
1.) Create a new DB connection
2.) Go to SSH Tunnel tab
3.) Select a private key
4.) Now you are unable to type in the passphrase for private key.

Expected behavior
A field for typing in the passphrase should be available for the user to type in the passphrase of the provided private key.

Screenshots

ssh

Application (please complete the following information):

  • Version 0.3.6
  • Distribution: Snap

Desktop (please complete the following information):

  • OS: Ubuntu
  • Version 21.04 Desktop

http/socks proxy support

Is your feature request related to a problem? Please describe.
Connect single database via proxy

Describe the solution you'd like
Add proxy config in Add connection

Port for new connection is always set to 3306, also when switching to PostgreSQL

Describe the bug
When adding a new connection and switching between database types, the TCP port is always set to 3306, also when chosing PostgreSQL, which should be 5432 by default.

To Reproduce
Steps to reproduce the behavior:

  1. Go to 'Add connection'
  2. Click on 'Client'
  3. Scroll down to 'PostgreSQL'
  4. TCP port stays 3306

Screenshot
antares_connection

Expected behavior
Port should be set to 5432 for PostgreSQL.

Application (please complete the following information):

  • Version 0.3.5
  • Distribution: Debian 11.0
  • XFCE4

Modal Blur Enable/Disable

Hi, someone can put a feature to enable/disable blur effect in antares-sql?
This is terrible for some old graphic cards like mine. When any confirmation boxes appears, the antares hangs the whole interface.

Thanks for help!

Postgresql ROW delete not working with key of type string

Describe the bug
When using Postgresql 13 (other versions may be affected too), the delete row action is failing on PrimaryKeys with a string value.
This is because in the delete-table-rows handler, the DELETE statement is using double quotes to surround the provided ID.
Double quotes are used to describe instances like tableRows and index names etc.
See: https://github.com/Fabio286/antares/blob/60e5556a3e80bfd57fc4f2f23f2bcf26b4fd8dc7/src/main/ipc-handlers/tables.js#L191

The solution would be to use single quotes for IDs like:

// delete-table-rows handler snippet starting line 190:
       return typeof row[fieldName] === 'string'
           ? `'${row[fieldName]}'`
            : row[fieldName];
         }).join(',');

To Reproduce
Steps to reproduce the behavior:

  1. Create a table with primary key of type "text" in a Postgres DB
  2. Create a new row
  3. Delete the row with the UI-Context Menu.
  4. An error shows up with the message "Column someid does not exist"

Expected behavior
It is expected that the row is being deleted.

Screenshots
Bildschirmfoto 2021-11-15 um 16 07 32

  • Version [0.3.9]
  • Distribution: [dmg]

Desktop (please complete the following information):

  • OS: [MacOS]
  • Version [12.1 Beta 2]

Additional context
Database Used: PostgreSQL 13.4 on Debian8.3.0-6 (Docker Image)

Sorting numbers with wrong algo

Describe the bug
Hey again. Update 0.4.4 brought a bug to the sorting of a numeric column. The following example shows how it is sorted at the moment:
99
94
920
915
84
833
82

To Reproduce
Sort any numeric column

  1. Go to any table
  2. Click on the name of the column

Expected behavior
Instead of previous example:
920
915
833
99
94
84
82

Application:
Version: 0.4.4
Distribution: app installed via "Software center"

Desktop:
OS: Linux KDE neon
Version: KDE Plasma 5.23.1

Additional context
As previously mentioned, I love your work and I am happy to see new features and progress :)

The app does not start!

The app does not start on my windows machine, an error is shown in the console

Uncaught SyntaxError: Unexpected token οΏ½ in JSON at position 0
    at JSON.parse (<anonymous>)
    at ElectronStore.Conf._deserialize (C:\Users\username\AppData\Local\Programs\antares\resources\app.asar\node_modules\conf\dist\source\index.js:69)
    at ElectronStore.get store [as store] (C:\Users\username\AppData\Local\Programs\antares\resources\app.asar\node_modules\conf\dist\source\index.js:278)
    at new Conf (C:\Users\username\AppData\Local\Programs\antares\resources\app.asar\node_modules\conf\dist\source\index.js:132)
    at new ElectronStore (C:\Users\username\AppData\Local\Programs\antares\resources\app.asar\node_modules\electron-store\index.js:69)
    at Module.call (webpack:/src/renderer/store/modules/connections.store.js:11)
    at __webpack_require__ (webpack:/webpack/bootstrap:68)
    at Object.call (renderer.js:2)
    at __webpack_require__ (webpack:/webpack/bootstrap:68)
    at webpack:/webpack/bootstrap:244

Screenshot
The error in the console

  • Version: I tried (Antares-0.1.12-win.exe) and (Antares-0.0.20-portable.exe)... the same error
  • OS: Windows 10 Pro

Error: Cannot load from mysql.proc. The table is probably corrupted

Can't seem to connect to my local MariaDB install. Running Linux and latest version. Gives an error Error: Cannot load from mysql.proc. The table is probably corrupted.

  • Antares v0.4.1
  • OS: Pop!_OS 21.10
  • Database: MariaDB v15.1

mariadb --version
mariadb Ver 15.1 Distrib 10.5.13-MariaDB, for debian-linux-gnu (x86_64) using EditLine wrapper

Screenshot from 2021-12-26 08-52-00-cropped

Screenshot from 2021-12-26 08-52-07-cropped

[Windows] Blank window at first run

Hi there, I just found that the blank window appear at first run

Describe the bug
empty window appear at first run

To Reproduce
Steps to reproduce the behavior:

  1. Close and reopen Antares
  2. See error

Expected behavior
I expect that the window is appear smoothly

Screenshots
Screenshot (512)

Application (please complete the following information):

  • Version 0.4.2 and the previous version
  • Distribution: Windows

Desktop (please complete the following information):

  • OS: Windows
  • Version Windows 10 build 18363

Additional context

[Security] Workflow build-win.yml is using vulnerable action actions/checkout

The workflow build-win.yml is referencing action actions/checkout using references v1. However this reference is missing the commit a6747255bd19d7a757dbdda8c654a9f84db19839 which may contain fix to the some vulnerability.
The vulnerability fix that is missing by actions version could be related to:
(1) CVE fix
(2) upgrade of vulnerable dependency
(3) fix to secret leak and others.
Please consider to update the reference to the action.

PostgreSQL Sorting

On a PostgreSQL DB, i've got a table with a BIGINT field (see MaxDistance field in next images).

image

Clicking on column header to sort, field is treated as text, while with INTEGER fields all is OK

image

  • Version 0.3.8
  • Distribution: Windows installer
  • OS: Windows 10

auto reload page when press enter

In modal CREATE NEW SCHEMA
I type the schema name and then press enter, it reload the page without saving the newly created schema
[BΓ‘o cΓ‘o thα»‘ng kΓͺ bΓ£i xe TTTM GOLDCOAST.xlsx]

Antares.2021-10-05.03-40-41.mp4

error: relation does not exist

Discussed in #171

Originally posted by elution91 January 16, 2022
Hi,

Beginner here so bare with me please. But, recently installed the latest mac version and quickly ran a dll command to set up some tables. However, querying any table results in "error: relation "members" does not exist" I for an example try the members table.

Screenshot 2022-01-15 at 23 17 59
"
Any ideas?

TEXT containing linefeed characters cannot be commited.

Describe the bug
TEXT containing linefeed "\n" cannot be committed, showing an error ( SQL syntax error ).

To Reproduce
Steps to reproduce the behavior:

  1. Create a table having TEXT field.
  2. Show the table in DATA tabl.
  3. Double click the TEXT field to open up the editor.
  4. lnput multiple lines so that it contains linfeed characters.
  5. Click "Update" to see the error.

Expected behavior
Edited data is correctly committed without modification.

Screenshots

Application (please complete the following information):

  • Version 0.1.10
  • Distribution: Snap Store

Desktop (please complete the following information):

  • OS: Ubuntu
  • Version 21.04

Additional context
It also happens with macOS.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    πŸ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. πŸ“ŠπŸ“ˆπŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❀️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.