From 28aea99a3b73403701a5e6a05da3e70cd27a7cc7 Mon Sep 17 00:00:00 2001 From: mayer <57711367+mayerro@users.noreply.github.com> Date: Tue, 3 Jun 2025 16:26:19 +0200 Subject: [PATCH 1/3] dbeaver/dbeaver-devops#1943 base image upgrade removed (#3500) --- deploy/docker/cloudbeaver-ce/Dockerfile | 3 --- 1 file changed, 3 deletions(-) diff --git a/deploy/docker/cloudbeaver-ce/Dockerfile b/deploy/docker/cloudbeaver-ce/Dockerfile index 8921c55ead..91cd67a992 100644 --- a/deploy/docker/cloudbeaver-ce/Dockerfile +++ b/deploy/docker/cloudbeaver-ce/Dockerfile @@ -5,9 +5,6 @@ MAINTAINER DBeaver Corp, devops@dbeaver.com ENV DBEAVER_GID=8978 ENV DBEAVER_UID=8978 -RUN apt-get update && \ - apt-get upgrade -y - RUN groupadd -g $DBEAVER_GID dbeaver && \ useradd -g $DBEAVER_GID -m -u $DBEAVER_UID -s /bin/bash dbeaver From 927ba55dff03c95551d82df21495f8b82d0cca63 Mon Sep 17 00:00:00 2001 From: Anastasiya <45152336+LonwoLonwo@users.noreply.github.com> Date: Wed, 4 Jun 2025 14:26:44 +0300 Subject: [PATCH 2/3] Update README.md - update contribution info (#3505) --- README.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/README.md b/README.md index d46773b33c..3e0d1617a2 100644 --- a/README.md +++ b/README.md @@ -57,5 +57,5 @@ You can see a live demo of CloudBeaver here: https://demo.cloudbeaver.io As a community-driven open-source project, we warmly welcome contributions through GitHub pull requests. [We are happy to reward](https://dbeaver.com/help-dbeaver/) our most active contributors every major sprint. -The most significant contribution to our code for the major release 24.3.0 was made by: -1. [cashlifei](https://github.com/cashlifei) +The most significant contribution to our code for the major release 25.1.0 was made by: +1. [0xhanh](https://github.com/0xhanh) - for Vietnamese localization. From 419f8b562ec0e4c099ef7995336a08d9bb334c48 Mon Sep 17 00:00:00 2001 From: Alexey Date: Wed, 4 Jun 2025 22:23:19 +0800 Subject: [PATCH 3/3] dbeaver/pro#5910 fix: sorting only for result sets (#3506) * dbeaver/pro#5910 fix: sorting only for result sets * dbeaver/pro#5910 fix: require result set constraints only when needed --- .../src/DataGrid/DataGridTable.tsx | 18 +++++++++++++----- 1 file changed, 13 insertions(+), 5 deletions(-) diff --git a/webapp/packages/plugin-data-spreadsheet-new/src/DataGrid/DataGridTable.tsx b/webapp/packages/plugin-data-spreadsheet-new/src/DataGrid/DataGridTable.tsx index fcef4babda..d49b833b82 100644 --- a/webapp/packages/plugin-data-spreadsheet-new/src/DataGrid/DataGridTable.tsx +++ b/webapp/packages/plugin-data-spreadsheet-new/src/DataGrid/DataGridTable.tsx @@ -80,7 +80,6 @@ export const DataGridTable = observer(function DataGridT const selectionAction = (model.source as unknown as ResultSetDataSource).getAction(resultIndex, ResultSetSelectAction); const viewAction = (model.source as unknown as ResultSetDataSource).getAction(resultIndex, ResultSetViewAction); - const constraintsAction = (model.source as unknown as ResultSetDataSource).tryGetAction(resultIndex, DatabaseDataConstraintAction); const tableData = useTableData(model as unknown as IDatabaseDataModel, resultIndex, dataGridDivRef); const gridSelectionContext = useGridSelectionContext(tableData, selectionAction); @@ -339,6 +338,10 @@ export const DataGridTable = observer(function DataGridT ); function getColumnSortable(colIdx: number) { + if (!isResultSetDataModel(model)) { + return false; + } + const constraintsAction = (model.source as unknown as ResultSetDataSource).tryGetAction(resultIndex, DatabaseDataConstraintAction); return ( Boolean(tableData.getColumn(colIdx) && constraintsAction?.supported && isResultSetDataModel(model) && !model.isDisabled(resultIndex)) && colIdx !== 0 @@ -348,12 +351,16 @@ export const DataGridTable = observer(function DataGridT const columnSortable = useCreateGridReactiveValue( getColumnSortable, (onValueChange, colIdx) => reaction(() => getColumnSortable(colIdx), onValueChange), - [tableData, constraintsAction, model], + [tableData, model], ); function getColumnSortingState(colIdx: number) { + if (!isResultSetDataModel(model)) { + return null; + } + const constraintsAction = (model.source as unknown as ResultSetDataSource).tryGetAction(resultIndex, DatabaseDataConstraintAction); const column = tableData.getColumn(colIdx)?.key; - if (!column || !constraintsAction) { + if (!column || !constraintsAction?.supported) { return null; } const resultColumn = tableData.getColumnInfo(column); @@ -363,18 +370,19 @@ export const DataGridTable = observer(function DataGridT const columnSortingState = useCreateGridReactiveValue( getColumnSortingState, (onValueChange, colIdx) => reaction(() => getColumnSortingState(colIdx), onValueChange), - [tableData, constraintsAction, model], + [tableData, model], ); function handleSort(colIdx: number, order: 'asc' | 'desc' | null, isMultiple: boolean) { const column = tableData.getColumn(colIdx)?.key; - if (!column || !constraintsAction) { + if (!column) { return; } const resultColumn = tableData.getColumnInfo(column); if (!resultColumn) { return; } + const constraintsAction = (model.source as unknown as ResultSetDataSource).tryGetAction(resultIndex, DatabaseDataConstraintAction); const currentOrder = constraintsAction!.getOrder(resultColumn.position); const nextOrder = getNextOrder(currentOrder); model.request(() => {