Skip to content

Commit

Permalink
Merge remote-tracking branch 'origin/master' into tidb
Browse files Browse the repository at this point in the history
  • Loading branch information
rathboma committed Apr 2, 2024
2 parents aaeb64a + f9b241a commit e2b3c6a
Show file tree
Hide file tree
Showing 43 changed files with 1,386 additions and 1,195 deletions.
3 changes: 2 additions & 1 deletion .eslintrc.js
Original file line number Diff line number Diff line change
Expand Up @@ -26,7 +26,8 @@ module.exports = {
"@typescript-eslint/explicit-module-boundary-types": "off",
"vue/require-prop-types": "off",
"vue/require-default-prop": "off",
"@typescript-eslint/no-non-null-assertion": "off"
"@typescript-eslint/no-non-null-assertion": "off",
"vue/max-attributes-per-line": "off"
},
"parser": "vue-eslint-parser",
"parserOptions": {
Expand Down
4 changes: 2 additions & 2 deletions .github/workflows/studio-pr.yml
Original file line number Diff line number Diff line change
Expand Up @@ -70,12 +70,12 @@ jobs:
run: "yarn run electron:build --publish never"

- name: Cleanup artifacts
if: matrix.os != 'windows-latest'
if: "!startsWith(matrix.os, 'windows')"
run: |
npx rimraf "apps/studio/dist_electron/!(*.exe|*.deb|*.rpm|*.AppImage|*.dmg|*.snap)"
- name: Cleanup artifacts Win
if: matrix.os == 'windows-latest'
if: "startsWith(matrix.os, 'windows')"
continue-on-error: true
run: |
npx rimraf "apps\studio\dist_electron\!(*.exe)"
Expand Down
8 changes: 4 additions & 4 deletions .github/workflows/studio-publish.yml
Original file line number Diff line number Diff line change
Expand Up @@ -34,7 +34,7 @@ jobs:
if: "startsWith(matrix.os, 'windows')"

- name: Install azuresigntool
run: 'dotnet tool install --global AzureSignTool'
run: 'dotnet tool install --global AzureSignTool --version 4.0.1'
if: "startsWith(matrix.os, 'windows')"

- name: Check out Git repository
Expand Down Expand Up @@ -170,9 +170,9 @@ jobs:
mac_certs: ${{ secrets.mac_dev }}
mac_certs_password: ${{ secrets.mac_dev_pw }}
env:
API_KEY_ID: ${{ secrets.apple_key_id }}
API_KEY_ISSUER_ID: ${{ secrets.apple_issuer_id }}
BT_TOKEN: "${{secrets.bintray_apikey}}"
APPLE_ID: ${{ secrets.apple_id }}
APPLE_ID_PASSWORD: ${{ secrets.apple_id_password }}
APPLE_TEAM_ID: "7KK583U8H2"
KEYVAULT_AUTH: "${{secrets.keyvault_auth}}"
KV_WIN_CERTIFICATE: "${{secrets.kv_win_certificate}}"
PYTHON_PATH: "${{ startsWith(matrix.os, 'macos') && '/opt/homebrew/opt/python@3.8/libexec/bin/python3' || '$PYTHON_PATH' }}"
Expand Down
127 changes: 81 additions & 46 deletions apps/studio/build/release-notes.md
Original file line number Diff line number Diff line change
@@ -1,60 +1,95 @@

# Release 3.9 - Slow burn, but less slow now
# 4.2 - One decimal from the life, the universe, and everything

My wife had heart surgery in Feb (she's doing great!) and I've been helping her recover, so it's been a while since the last Beekeeper Studio release (It's not a coincidence that I put out a super stable release at the end of Jan).
We've spent the first few months of the year working on resolving small complaints, fixing bugs, and smoothing rough edges.

If you are a customer of the commercial edition - 🙏 Thank you, your financial support makes all of this possible.
In particular we've made maintaining the two different apps a lot easier by moving a lot of code into the open source repo.

If you use the community edition, please consider upgrading to the [commercial edition](https://docs.beekeeperstudio.io/docs/upgrading-from-the-community-edition). Every purchase supports me, and the continued development of the community edition.
That said there's a LOT of stuff in this release.

I also have a few part time folks helping me keep Beekeeper Studio features rolling:
- @wmontgomery
- @not-night-but
- @davidkaufman
## Headline features

Big thanks to them for their help.
- One tab per table - Ok fine, you all asked for this, now we only allow one tab open per table. :-)
- Firebird support - The Ultimate edition now has support for the Firebird database engine
- SQLite duplicate column bug fix - you can now select two columns with the same name without them becoming a single column
- .sql file import - In the `saved queries` section you can now import .sql files into your saved queries.
- Better drag/drop support for .sql files - drag and drop a .sql file anywhere to open in a new query tab

## Highlights ✨

- [x] Added support for PostgreSQL partitions in the table structure view (@not-night-but)
- [x] Added support for Query Magic enum substitution (@not-night-but)
- [x] Added support for alphanumeric sorting of pinned tables (@tomaskudlicka)
- [x] Added the ability to pin saved connections (just like pinned tables) (@not-night-but)
## Loads of other stuff

- Show/hide your database passwords with a little eye button
- Spreadsheet mode improvements - better resizing, multi-select, and range select behavior.
- Some regression fixes
- Generated columns are now shown and correctly labelled
- Exactly 3 bajillion tweaks and minor fixes

## More awesome features 🍭 and 🐞 fixes

- [x] Added support to copy table data modifications to SQL instead of applying them automatically
- [x] Added the ability to select field names in the table structure view when they're not editable
- [x] Huuuuuge upgrade from Electron 13 to Electron 22
- [x] Colo(u)r sorting of connections fixed
- [x] SSH2 library upgraded
- [x] Fixing column names in the JSON download
- [x] ...more stuff below, man this took a while to write
## Under the hood
- We spent a LOT of time trying to make Beekeeper Studio more maintainable, backporting a lot of code from the ultimate version, and rewriting entire components to make them more modular. This has probably resulted in a few bugs, but it helps us move faster in the future.
- In particular, merge conflicts when merging community and master have been a real problem lately, these changes should help alleviate that.
- We also migrated all of our database drivers to a typescript-based class model. While this also probably introduced a few bugs we haven't yet found, it allowed us to remove ~1000+ lines of generic code, and makes implementing a new database driver a lot quicker.


## Merged PRs
## PR's merged


85e68d52 Merge pull request #1558 from beekeeper-studio/partitions-fix-96
a44371d2 Merge pull request #1548 from beekeeper-studio/partitions
4719c4ce Merge pull request #1525 from MaximeRaynal/master
7512516c Merge pull request #1551 from tomaskudlicka/feat/pin-tables-sorting
d61910a7 Merge pull request #1541 from beekeeper-studio/copy-to-sql
8a97f1db Merge pull request #1530 from beekeeper-studio/pinned-connections
93694b93 Merge pull request #1512 from beekeeper-studio/1472-selectable-fields
94f733fb Merge pull request #1502 from krystxf/fix/materialized_view
8333115d Merge pull request #1537 from beekeeper-studio/interval-sorting
3ab8ca5a Merge pull request #1511 from beekeeper-studio/electron-15
50154381 Merge pull request #1492 from beekeeper-studio/dependabot/npm_and_yarn/http-cache-semantics-4.1.1
470e1d2c Merge pull request #1509 from beekeeper-studio/editing-disabled
13a4b9c0 Merge pull request #1513 from beekeeper-studio/colour-sorting
7d931d6c Merge pull request #1516 from beekeeper-studio/mainline-ssh2
68f09176 Merge pull request #1510 from beekeeper-studio/electron-remote-migration
245f58d9 Merge pull request #1447 from beekeeper-studio/dependabot/npm_and_yarn/decode-uri-component-0.2.2
e777f106 Merge pull request #1464 from beekeeper-studio/feature/747_find-replace-in-editor
02409764 Merge pull request #1487 from leduard/master
1cda1804 Merge pull request #1494 from davidkaufman/issue-1493-colnames-json-download
0b475e0b Merge pull request #1473 from beekeeper-studio/dependabot/npm_and_yarn/knex-2.4.0
76718b81 Merge pull request #1480 from henryliang2/master
aefa5ff0 Merge pull request #1482 from beekeeper-studio/bugfix/empty-value-on-select
ce2e016f Merge pull request #2050 from beekeeper-studio/fix/primary-keys-check
2a5b5069 Merge pull request #2051 from beekeeper-studio/fix/pre-release-tests
edc3cb17 Merge pull request #2045 from beekeeper-studio/fix/mssql-autocomplete
b6feb2d3 Merge pull request #2047 from beekeeper-studio/fix/apply-badge-style
597373ad Merge pull request #2046 from beekeeper-studio/fix/saved-queries-editor
994b0387 Merge pull request #2044 from beekeeper-studio/fix/autocomplete
ee6b7a20 Merge pull request #2024 from beekeeper-studio/autocomplete-load-cols-fix
e8bfa7b4 Merge pull request #2023 from beekeeper-studio/feat/hidden-column-indicator
c0202f00 Merge pull request #2022 from beekeeper-studio/mssql-version-tests
89d98fc5 Merge pull request #2026 from beekeeper-studio/dependabot/npm_and_yarn/follow-redirects-1.15.6
202e3055 Merge pull request #2016 from beekeeper-studio/cassandra-client
87445f86 Merge pull request #2014 from beekeeper-studio/fix-clashing-css-class
7c8c28b9 Merge pull request #2015 from beekeeper-studio/fix-nullable-editor-parser
56f23474 Merge pull request #1981 from beekeeper-studio/sqlite-result-as-array
989be53f Merge pull request #1975 from beekeeper-studio/tabulator-update
769776cd Merge pull request #2004 from beekeeper-studio/fix-codemirror-gutters
bd7f6c08 Merge pull request #1966 from beekeeper-studio/fix-sqlite-generated-columns
2cb16a65 Merge pull request #1924 from beekeeper-studio/fix/insert-table-name
8187e675 Merge pull request #1972 from beekeeper-studio/dependabot/npm_and_yarn/ip-1.1.9
0c75163d Merge pull request #2001 from beekeeper-studio/table-filter-regressions
e3c2694e Merge pull request #2007 from beekeeper-studio/fix-empty-column-export
c1024f36 Merge pull request #1953 from beekeeper-studio/bigquery-client
dd3f5819 Merge pull request #1989 from MiniGeospatial/getViewCreateScript
874b29ce Merge pull request #1998 from beekeeper-studio/fix/focus-sql-text-editor
eeff3b50 Merge pull request #2000 from beekeeper-studio/fix/tabulator-table-regressions
8d25e159 Merge pull request #1996 from beekeeper-studio/fix/renaming-column
2c4c1aed Merge pull request #1991 from beekeeper-studio/bugfix/apply-changes-issue
90062a3f Merge pull request #1990 from beekeeper-studio/fix/redshift-error
a2e19655 Merge pull request #1988 from beekeeper-studio/bugfix/escapeHtml-Results-Table
450df82f Merge pull request #1983 from beekeeper-studio/ultimate-driver-backports
a2de0bda Merge pull request #1974 from beekeeper-studio/wmontgomery-patch-1
801ea7e9 Merge pull request #1971 from beekeeper-studio/ultimate-backports
991d1667 Merge pull request #1965 from omahs/patch-1
8096c987 Merge pull request #1969 from beekeeper-studio/fix/css-vendor
0e6203c3 Merge pull request #1955 from beekeeper-studio/fix/spreadsheet-data
2c203e7b Merge pull request #1956 from beekeeper-studio/fix/tabletable-export
74ab88f6 Merge pull request #1835 from beekeeper-studio/feature/1738_Readable-DateTime
65af9cb6 Merge pull request #1935 from therealrinku/fix/popup-after-creating-table
e0b7e016 Merge pull request #1907 from beekeeper-studio/refactor/text-editor
823a5164 Merge pull request #1928 from beekeeper-studio/feature/1851_SqlServerToClass
fd725361 Merge pull request #1934 from austinwilcox/fixVimQuit
6a1167ff Merge pull request #1779 from beekeeper-studio/feature/data-picker
2f3db7b5 Merge pull request #1941 from beekeeper-studio/fix/header-tooltip-xss
0dd3d644 Merge pull request #1936 from therealrinku/fix/copy-json-fix
6701f227 Merge pull request #1938 from jc00ke/master
1d82f920 Merge pull request #1909 from beekeeper-studio/postgres-client
65d679b0 Merge pull request #1913 from beekeeper-studio/feat/import-export-sql
f696fa0a Merge pull request #1917 from beekeeper-studio/fix/minor-fixes
0ec8fae9 Merge pull request #1861 from beekeeper-studio/refactor/mysql-to-ts
46bde4c6 Merge pull request #1879 from austinwilcox/vimrcImprovements
b0aef6a4 Merge pull request #1869 from beekeeper-studio/dependabot/npm_and_yarn/follow-redirects-1.15.4
5e99ee35 Merge pull request #1834 from beekeeper-studio/fix/one-tab-one-table
be5ee18c Merge pull request #1873 from beekeeper-studio/sass-migration
04f10ea9 Merge pull request #1859 from luca1197/tablelength-formatting
14ddcdaf Merge pull request #1855 from invisal/feat/long-query-notification
9df859ef Merge pull request #1843 from Christof-P/feat/show-password-option
d48b399c Merge pull request #1821 from marco-lavagnino/master
64493d24 Merge pull request #1829 from beekeeper-studio/finish-bigquery
c20d3692 Merge pull request #1811 from beekeeper-studio/feat/initial-firebird
dcc2c67b Merge pull request #1904 from beekeeper-studio/add-sort-buttons
4 changes: 2 additions & 2 deletions apps/studio/package.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "beekeeper-studio",
"version": "4.1.13",
"version": "4.2.5",
"private": true,
"description": "An easy-to use SQL query editor and database UI for Mac, Windows, and Linux",
"author": {
Expand Down Expand Up @@ -128,7 +128,7 @@
"@vue/test-utils": "^1.0.3",
"babel-eslint": "^10.0.1",
"electron": "18.3.15",
"electron-builder-notarize": "beekeeper-studio/electron-builder-notarize#master",
"electron-builder-notarize": "1.5.1",
"electron-devtools-installer": "^3.1.1",
"electron-updater": "^4.6.5",
"eslint": "^6.7.2",
Expand Down
1 change: 1 addition & 0 deletions apps/studio/src/assets/styles/app/_all.scss
Original file line number Diff line number Diff line change
Expand Up @@ -17,4 +17,5 @@
@import './tabs/tabletable.scss';
@import './tabs/table-builder.scss';
@import './modals.scss';
@import './tooltips.scss';
@import './ultimate-only.scss';
43 changes: 0 additions & 43 deletions apps/studio/src/assets/styles/app/sidebar/table-list.scss
Original file line number Diff line number Diff line change
Expand Up @@ -56,10 +56,6 @@
position: relative;
z-index: 1;

&:hover .hi-tooltip {
visibility: visible;
}

> .badge {
display: flex;
align-items: center;
Expand All @@ -70,45 +66,6 @@
margin-right: 0.2rem;
}
}

.hi-tooltip {
$gap: 0.5rem;

visibility: hidden;
position: absolute;
display: block !important;
top: calc(100% + #{$gap});
left: -5rem;
width: 14rem;
padding: $gutter-h $gutter-w !important;
border-radius: 0.5rem;
background-color: #4f4f4f;

text-transform: none;
font-weight: normal;
font-size: 0.9rem;

// acting as a "bridge" so the tooltip stays visible when the cursor is
// in between the text and the tooltip
&::before {
content: '';
position: absolute;
left: 0;
top: -$gap;
width: 100%;
height: $gap;
}

span, a {
display: inline;
color: #eee;
line-height: 1.35rem;
}

a {
border-bottom: 1px solid #dadada;
}
}
}

.list-item {
Expand Down
5 changes: 4 additions & 1 deletion apps/studio/src/assets/styles/app/statusbar.scss
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@ $button-height: $statusbar-height * 0.72;
line-height: $statusbar-height;
font-size: 0.8rem;
padding: 0 $gutter-h;
overflow: hidden;
// overflow: hidden;

input::-webkit-outer-spin-button,
input::-webkit-inner-spin-button {
Expand Down Expand Up @@ -222,6 +222,9 @@ $button-height: $statusbar-height * 0.72;
overflow: visible;
line-height: 1.1;
}
.btn-primary .badge {
color: inherit;
}
}

// Results Select
Expand Down
21 changes: 21 additions & 0 deletions apps/studio/src/assets/styles/app/tabs/tabletable.scss
Original file line number Diff line number Diff line change
Expand Up @@ -61,5 +61,26 @@

}

.statusbar-item.hidden-column-count {
margin-right: 0.1rem;
& > a {
color: inherit;
display: inline-flex;
}
i {
margin-right: 0;
font-size: 16px;
line-height: 1;
}
}

.empty-placeholder {
position: absolute;
left: 50%;
top: 50%;
transform: translate(-50%, -50%);
font-weight: bold;
font-size: 1.5rem;
color: $text;
}
}
72 changes: 72 additions & 0 deletions apps/studio/src/assets/styles/app/tooltips.scss
Original file line number Diff line number Diff line change
@@ -0,0 +1,72 @@
.bks-tooltip-wrapper {
position: relative;

&.statusbar-item {
overflow: visible;
&.hoverable:hover {
opacity: 1;
}
}

&:hover .bks-tooltip {
visibility: visible;
}

.bks-tooltip {
$gap: 0.5rem;

visibility: hidden;

position: absolute;
display: block;

width: 14rem;
padding: $gutter-h $gutter-w !important;
border-radius: 0.5rem;
background-color: #4f4f4f;

text-transform: none;
font-weight: normal;
font-size: 0.9rem;

&, a {
display: inline;
color: #eee;
line-height: 1.35rem;
}

a {
border-bottom: 1px solid #dadada;
}

// acting as a "bridge" so the tooltip stays visible when the cursor is
// in between the target element and the tooltip
&::before {
content: '';
position: absolute;
left: 0;
width: 100%;
height: $gap;
}

&.bks-tooltip-top-center {
bottom: calc(100% + #{$gap});
left: 50%;
transform: translateX(-50%);

&::before {
bottom: -$gap;
}
}

&.bks-tooltip-bottom-center {
top: calc(100% + #{$gap});
left: 50%;
transform: translateX(-50%);

&::before {
top: -$gap;
}
}
}
}
2 changes: 1 addition & 1 deletion apps/studio/src/assets/styles/app/vendor/tabulator.scss
Original file line number Diff line number Diff line change
Expand Up @@ -531,7 +531,7 @@ $columnResizeGuideColor: mix($query-editor-bg, $theme-base, 80%);
}
&.generated-column:before {
$font-size: 13px;
content: 'edit_off';
content: 'bolt';
font-family: 'Material Icons';
font-size: $font-size;
color: rgba($theme-base, 0.35);
Expand Down
Loading

0 comments on commit e2b3c6a

Please sign in to comment.