Releases: plotly/falcon
v2.5.0
Many thanks to Kinuthia Ndung'u (@kndungu) and Rafael Pereira (@rflprr) for contributing the new data.world
connector.
Added
- Connector for https://data.world
Changed
- test: implemented mock connectors
- test: updated DB2, Impala and Spark sample servers
- Enabled asar in the installers for Mac and Linux
Deprecated
- test: DB2 and Spark sample servers will be turned off in the near future.
Please, instead, use the docker containers:- quay.io/plotly/falcon-test-db2
- quay.io/plotly/falcon-test-spark
v2.4.0
Added
- CHANGELOG.md
- Windows installer
- Mac installer
- Linux installers (tar.gz, deb and AppImage)
Changed
- Reduced app size
- Desktop app can run without logging into Plotly
- Do not download fonts
Removed
- OnPrem: Removed
Download CSV
Fixed
- CodeEditor: Restored functionality to autocomplete keywords and table names
- CodeEditor: Fixed issue with the button
Run
becoming unclickable or hidden - DB2: Fixed error with Falcon being unable to locate the ibm_db driver in Mac
- OnPrem: Fixed multiple OAuth issues
- OnPrem: Fixed export link
- Postgres: Fixed table preview to show tables in all the schemas
- Postgres: Accept schema names and quoted identifiers
- Redshift: Fixed table preview to show tables in all the schemas
- Redshift: Accept schema names and quoted identifiers
- Sqlite: Fixed the file selector in Windows and Linux
- Sqlite: Fixed the schemas overview
v2.3.3-beta1
Added
- Windows installer
- Mac installer
Changed
- Reduced app size
- Desktop app can run without logging into Plotly
- Do not create SSL certificates if user is not logged into Plotly
Deprecated
Removed
Fixed
- CodeEditor: autocomplete
- CodeEditor:
Run
becomes unclickable or hidden - DB2: unable to locate driver in mac
- Postgres: table preview
- Postgres: accept schema names and quoted identifiers
- Redshift: table preview
- Redshift: accept schema names and quoted identifiers
- Sqlite: file selector
- Sqlite: schemas overview
Security
- Documented the test databases
v2.3.2 - Falcon SQL Client
The Falcon SQL Client now supports authenticated requests through OAuth and a fully featured SQL Editor.
New Features:
- Adds Connectors for Hive via SparkSQL, IBM DB2 and Apache Impala.
- Public sample datastores for trying out the app with no fuss.
- All requests are now authenticated by default. This allows this app to be run as a public server while still securely ferrying data between plot.ly and the connected datastores. Authentication is enabled by default, but can be turned Off using
AUTH_ENABLED
setting. - Restricted access through OAuth. Access to the app running as a server can be restricted with an
ALLOWED_USERS
setting. - Introduces a standalone, interactive SQL Editor. The editor features data preview, typeahead, database schema previews, and inline data visualization.
- Drag-and-drop chart GUI for creating and exporting plotly.js charts.
- Optionally export charts and CSV data to plot.ly. Plot.ly has further editing, export, and online sharing options.
- CSV download of data to desktop.
- PNG download of charts to desktop.
v2.3 - SQL Editor
The Plotly Database Connector (PDC) now supports authenticated requests through OAuth and a fully featured SQL Editor.
New Features:
- Adds Connectors for Hive via SparkSQL, IBM DB2 and Apache Impala.
- Public sample datastores for trying out the app with no fuss.
- All requests are now authenticated by default. This allows this app to be run as a public server while still securely ferrying data between plot.ly and the connected datastores. Authentication is enabled by default, but can be turned Off using
AUTH_ENABLED
setting. - Restricted access through OAuth. Access to the app running as a server can be restricted with an
ALLOWED_USERS
setting. - Introduces a standalone, interactive SQL Editor. The editor features data preview, typeahead, database schema previews, and inline data visualization.
- Drag-and-drop chart GUI for creating and exporting plotly.js charts.
- Optionally export charts and CSV data to plot.ly. Plot.ly has further editing, export, and online sharing options.
- CSV download of data to desktop.
- PNG download of charts to desktop.
V2.0.2 - Automatic SSL
The Database Connector is now 100x easier to set-up by automatically issuing SSL certificates for you.
Some background:
- This application runs a webserver. on localhost. The plotly chart creator makes requests to this local webserver directly from the web browser.
- These requests happen entirely locally, it's just local web browser to local application, so no data is sent over the network. This makes queries wicked fast (no data is sent over the wire) and secure (you don't need to open up your database to any other IP ranges, just the ones on your local computer).
- However, since the chart creator runs on HTTPS, the browser automatically rejects any requests that happen over HTTP. If it didn't, malicious websites could trick you into thinking that all your data is encrypted, when really some requests aren't. This is bad news for localhost web severs because they run on HTTP by default. And even though data isn't sent over the network when connecting to a localhost webserver (therefore HTTPS-level encryption is not needed), the requests still get blocked.
- So previously, we required users to either block this setting in their web browser (an annoying process that you need to do every single time you want to connect) or create self-signed certs (an extremely annoying process to set up).
- But what are we to do? We can't just ask users to buy an expensive SSL certificate for their desktop applications... And besides, these applications are just running on localhost! To create an SSL certificate you need to have a registered domain name and a public facing website. We're just running this app on localhost, there is no domain name (it's just
localhost
!) and your desktop app is not open up to the world-wide-web (nor should it be!) - Let's Encrypt to the rescue! Let's Encrypt is service for offering free SSL certificates. What we've done is created a server which generates a unique subdomain and a unique Let's Encrypt SSL certificates for that subdomain. We then re-route that subdomain's DNS to
localhost:9495
. The original proposal of this architecture was discussed in the Let's Encrypt forums. We've open sourced this certificate issuing server, too - For example, when you start up your app, your app will make a request to this certificate and domain issuing server. After about six minutes, you'll have a unique subdomain and a unique server. Your application will spin up a server with those certificates and the plotly chart creator web application will be able to make requests to your server, no problem!
- For example, this is what the application UI looks like when the certificate has been generated:
In this example, the domain https://plotly--ab29698f-1b35-420c-881d-6.plotly-connector.com has a unique certificate associated to it. And remember, this domain just re-routes tolocalhost:9495
on the global DNS network. It's still just loading content from your localhost server - data is not traveling over the network! - These certificates are saved locally on your machine in the
~/.plotly/connector
folder. They expire every 90 days and the application should automatically generate a new one for you.
There are a lot of moving parts here, so please create an issue if you run into any issues.
And finally, big thanks to the team at Let's Encrypt for building the infrastructure that makes this type of architecture possible. 🍻
V2.0.0 Prerelease - Automatic SSL
v2.0.0-rc1 update version
1.0.5-Alpha
Adds letsencrypt support to communicate over HTTPS with https://plot.ly.
v1.0.4
Include credentials in the browser requests and accept credentials headers server-side.
Update README.
💄 No-Scroll UI
- Reorganized app with horizontal tabs to eliminate need for vertical scroll
- Fixed Redshift schema preview
- Added missing font file
- Misc. UI and CSS clean-up
- Organized header links into an upper-right dropdown
- Toggle sample database credentials
See PR #158 for more.