Skip to content

Commit 76e38d6

Browse files
authored
Merge branch 'v1.4.x' into develop
2 parents ea87a9e + a285bbc commit 76e38d6

File tree

13 files changed

+718
-500
lines changed

13 files changed

+718
-500
lines changed

.github/workflows/01-powerpipe-release.yaml

Lines changed: 15 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -171,7 +171,7 @@ jobs:
171171
build_and_release:
172172
name: Build and Release Powerpipe
173173
needs: build_assets
174-
runs-on: ubuntu-latest
174+
runs-on: ubuntu-24.04-arm
175175
env:
176176
VERSION: ${{ needs.ensure_branch_in_homebrew.outputs.version }}
177177
steps:
@@ -187,6 +187,20 @@ jobs:
187187
repository: turbot/pipe-fittings
188188
path: pipe-fittings
189189

190+
- name: Set up Docker
191+
uses: docker/setup-buildx-action@v3
192+
193+
- name: Install Docker (if needed)
194+
run: |
195+
if ! command -v docker &> /dev/null; then
196+
sudo apt-get update
197+
sudo apt-get install -y docker.io
198+
fi
199+
200+
- name: Verify Docker installation
201+
run: |
202+
docker --version
203+
190204
- name: Calculate version
191205
id: calculate_version
192206
run: |

.github/workflows/11-test-acceptance.yaml

Lines changed: 15 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@ env:
1616
jobs:
1717
goreleaser:
1818
name: Build
19-
runs-on: ubuntu-latest
19+
runs-on: ubuntu-24.04-arm
2020
steps:
2121
- name: Checkout
2222
uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
@@ -31,6 +31,20 @@ jobs:
3131
path: pipe-fittings
3232
ref: develop
3333

34+
- name: Set up Docker
35+
uses: docker/setup-buildx-action@v3
36+
37+
- name: Install Docker (if needed)
38+
run: |
39+
if ! command -v docker &> /dev/null; then
40+
sudo apt-get update
41+
sudo apt-get install -y docker.io
42+
fi
43+
44+
- name: Verify Docker installation
45+
run: |
46+
docker --version
47+
3448
# this is required, check golangci-lint-action docs
3549
- uses: actions/setup-go@0aaccfd150d50ccaeb58ebd88d36e91967a5f35b # v5.4.0
3650
with:

.goreleaser.yml

Lines changed: 14 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -9,8 +9,11 @@ builds:
99
- arm64
1010

1111
env:
12-
- CC=aarch64-linux-gnu-gcc
13-
- CXX=aarch64-linux-gnu-g++
12+
- CC=gcc
13+
- CXX=g++
14+
- CGO_ENABLED=1
15+
- GOFLAGS=
16+
- CGO_LDFLAGS=
1417

1518
# Custom ldflags.
1619
#
@@ -19,7 +22,9 @@ builds:
1922
ldflags:
2023
# Go Releaser analyzes your Git repository and identifies the most recent Git tag (typically the highest version number) as the version for your release.
2124
# This is how it determines the value of {{.Version}}.
22-
- -s -w -X main.version={{.Version}} -X main.date={{.Date}} -X main.commit={{.Commit}} -X main.builtBy=goreleaser
25+
- -s -w -X main.version={{.Version}} -X main.date={{.Date}} -X main.commit={{.Commit}} -X main.builtBy=goreleaser
26+
27+
tags: []
2328

2429
- id: powerpipe-linux-amd64
2530
binary: powerpipe
@@ -31,9 +36,14 @@ builds:
3136
env:
3237
- CC=x86_64-linux-gnu-gcc
3338
- CXX=x86_64-linux-gnu-g++
39+
- CGO_ENABLED=1
40+
- GOFLAGS=
41+
- CGO_LDFLAGS=
3442

3543
ldflags:
36-
- -s -w -X main.version={{.Version}} -X main.date={{.Date}} -X main.commit={{.Commit}} -X main.builtBy=goreleaser
44+
- -s -w -X main.version={{.Version}} -X main.date={{.Date}} -X main.commit={{.Commit}} -X main.builtBy=goreleaser
45+
46+
tags: []
3747

3848
- id: powerpipe-darwin-arm64
3949
binary: powerpipe

CHANGELOG.md

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,9 @@
1+
## v1.4.1 [2025-10-07]
2+
_Bug Fixes_
3+
- Build: Restored CentOS/RHEL 9 compatibility by pinning the build image to an older libstdc++/GCC baseline. Previous build linked against newer GLIBCXX symbols, causing Powerpipe to fail on CentOS/RHEL 9.
4+
- Improve benchmark/detection summary chart width calculations. ([#945](https://github.com/turbot/powerpipe/issues/945))
5+
- Fix filtering by false boolean values in tables. ([#946](https://github.com/turbot/powerpipe/issues/946))
6+
17
## v1.4.0 [2025-09-22]
28
_What's new_
39
- Updated the `tailpipe` connection to support the new Tailpipe v0.7.0 DuckLake backend. ([#889](https://github.com/turbot/powerpipe/issues/889))

Makefile

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
OUTPUT_DIR?=/usr/local/bin
22
PACKAGE_NAME := github.com/turbot/powerpipe
3-
GOLANG_CROSS_VERSION ?= gcc13-osxcross-20250912194615
3+
GOLANG_CROSS_VERSION ?= gcc13-osxcross-20251006102018
44

55
.PHONY: build
66
build:
@@ -21,6 +21,7 @@ all:
2121
release-dry-run:
2222
@docker run \
2323
--rm \
24+
--platform=linux/arm64 \
2425
-e CGO_ENABLED=1 \
2526
-v /var/run/docker.sock:/var/run/docker.sock \
2627
-v `pwd`:/go/src/powerpipe \
@@ -38,6 +39,7 @@ release:
3839
fi
3940
docker run \
4041
--rm \
42+
--platform=linux/arm64 \
4143
-e CGO_ENABLED=1 \
4244
--env-file .release-env \
4345
-v /var/run/docker.sock:/var/run/docker.sock \

ui/dashboard/package.json

Lines changed: 35 additions & 36 deletions
Original file line numberDiff line numberDiff line change
@@ -17,15 +17,15 @@
1717
"dependencies": {
1818
"@headlessui/react": "1.7.19",
1919
"@heroicons/react": "2.2.0",
20-
"@material-symbols/svg-300": "0.28.1",
20+
"@material-symbols/svg-300": "0.36.0",
2121
"@popperjs/core": "2.11.8",
2222
"@supabase/sql-formatter": "4.0.3",
23-
"@tanstack/react-table": "8.20.6",
24-
"@tanstack/react-virtual": "3.11.3",
23+
"@tanstack/react-table": "8.21.3",
24+
"@tanstack/react-virtual": "3.13.12",
2525
"color-convert": "2.0.1",
2626
"copy-to-clipboard": "3.3.3",
2727
"dagre": "0.8.5",
28-
"dayjs": "1.11.13",
28+
"dayjs": "1.11.18",
2929
"deepdash": "5.3.9",
3030
"echarts": "5.6.0",
3131
"echarts-for-react": "3.0.2",
@@ -36,66 +36,66 @@
3636
"lodash": "4.17.21",
3737
"react": "18.3.1",
3838
"react-cool-img": "1.2.12",
39-
"react-day-picker": "9.5.1",
39+
"react-day-picker": "9.11.0",
4040
"react-dom": "18.3.1",
4141
"react-hotkeys": "2.0.0",
4242
"react-markdown": "9.0.3",
4343
"react-papaparse": "4.4.0",
4444
"react-placeholder": "4.1.0",
4545
"react-popper": "2.3.0",
46-
"react-router-dom": "6.28.2",
46+
"react-router-dom": "6.30.1",
4747
"react-router-hash-link": "2.4.3",
48-
"react-select": "5.10.0",
49-
"react-syntax-highlighter": "15.6.1",
48+
"react-select": "5.10.2",
49+
"react-syntax-highlighter": "15.6.6",
5050
"react-time-picker": "7.0.0",
51-
"react-use-websocket": "4.11.1",
51+
"react-use-websocket": "4.13.0",
5252
"reactflow": "11.11.4",
5353
"rehype-external-links": "3.0.0",
54-
"remark-gfm": "4.0.0",
55-
"semver": "7.6.3",
54+
"remark-gfm": "4.0.1",
55+
"semver": "7.7.2",
5656
"use-deep-compare-effect": "1.8.1",
57-
"uuid": "11.0.5",
57+
"uuid": "11.1.0",
5858
"web-vitals": "4.2.4"
5959
},
6060
"devDependencies": {
6161
"@chromatic-com/storybook": "3.2.4",
6262
"@craco/craco": "7.1.0",
63-
"@storybook/addon-actions": "8.5.2",
64-
"@storybook/addon-essentials": "8.5.2",
65-
"@storybook/addon-links": "8.5.2",
66-
"@storybook/node-logger": "8.5.2",
67-
"@storybook/preset-create-react-app": "8.5.2",
68-
"@storybook/preview-api": "8.5.2",
69-
"@storybook/react": "8.5.2",
70-
"@storybook/react-webpack5": "8.5.2",
71-
"@storybook/theming": "8.5.2",
63+
"@storybook/addon-actions": "8.6.14",
64+
"@storybook/addon-essentials": "8.6.14",
65+
"@storybook/addon-links": "8.6.14",
66+
"@storybook/node-logger": "8.6.14",
67+
"@storybook/preset-create-react-app": "8.6.14",
68+
"@storybook/preview-api": "8.6.14",
69+
"@storybook/react": "8.6.14",
70+
"@storybook/react-webpack5": "8.6.14",
71+
"@storybook/theming": "8.6.14",
7272
"@tailwindcss/forms": "0.5.10",
7373
"@tailwindcss/line-clamp": "0.4.4",
74-
"@tailwindcss/typography": "0.5.16",
75-
"@testing-library/dom": "10.4.0",
76-
"@testing-library/jest-dom": "6.6.3",
77-
"@testing-library/react": "16.2.0",
78-
"@tsconfig/create-react-app": "2.0.5",
74+
"@tailwindcss/typography": "0.5.18",
75+
"@testing-library/dom": "10.4.1",
76+
"@testing-library/jest-dom": "6.8.0",
77+
"@testing-library/react": "16.3.0",
78+
"@tsconfig/create-react-app": "2.0.7",
7979
"@types/echarts": "5.0.0",
8080
"@types/jest": "29.5.14",
81-
"@types/lodash": "4.17.15",
82-
"@types/node": "22.12.0",
83-
"@types/react": "18.3.18",
84-
"@types/react-dom": "18.3.5",
85-
"autoprefixer": "10.4.20",
81+
"@types/lodash": "4.17.20",
82+
"@types/node": "22.18.6",
83+
"@types/react": "18.3.24",
84+
"@types/react-dom": "18.3.7",
85+
"autoprefixer": "10.4.21",
8686
"buffer": "6.0.3",
8787
"circular-dependency-plugin": "5.2.2",
8888
"crypto-browserify": "3.12.1",
89-
"fs-extra": "11.3.0",
89+
"fs-extra": "11.3.2",
9090
"if-node-version": "1.1.1",
91-
"lint-staged": "15.4.3",
91+
"lint-staged": "15.5.2",
9292
"npm-run-all": "4.1.5",
93-
"prettier": "3.4.2",
93+
"prettier": "3.6.2",
9494
"process": "0.11.10",
9595
"prop-types": "15.8.1",
9696
"react-scripts": "5.0.1",
9797
"source-map-explorer": "2.5.3",
98-
"storybook": "8.5.2",
98+
"storybook": "8.6.14",
9999
"storybook-addon-react-router-v6": "2.0.15",
100100
"storybook-dark-mode": "4.0.2",
101101
"stream-browserify": "3.0.0",
@@ -130,7 +130,6 @@
130130
"minimatch": "3.0.5",
131131
"node-forge": "1.3.0",
132132
"nth-check": "2.0.1",
133-
"semver": "7.5.2",
134133
"path-to-regexp": "0.1.12",
135134
"nanoid": "3.3.8",
136135
"elliptic": "6.6.1",

ui/dashboard/src/components/dashboards/Table/index.tsx

Lines changed: 15 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -693,14 +693,14 @@ const useTableFilters = (panelName: string) => {
693693
expression.operator === "equal" &&
694694
expression.type === "dimension" &&
695695
!!expression.key &&
696-
!!expression.value
696+
expression.value !== undefined
697697
) {
698698
filters.push(expression);
699699
} else if (
700700
expression.operator === "not_equal" &&
701701
expression.type === "dimension" &&
702702
!!expression.key &&
703-
!!expression.value
703+
expression.value !== undefined
704704
) {
705705
filters.push(expression);
706706
} else if (
@@ -779,15 +779,26 @@ const useTableFilters = (panelName: string) => {
779779
index !== undefined
780780
? [...expressions.slice(0, index), ...expressions.slice(index + 1)]
781781
: expressions;
782-
if (newFilters.length === 0) {
782+
let emptyPanelFilters = newFilters.length === 0;
783+
if (emptyPanelFilters) {
783784
newFilters = [{ operator: "equal" }];
784785
}
785786
newUrlFilters.expressions = newFilters;
786787
const newPanelFilters = {
787788
...allFilters,
788789
[panelName]: newUrlFilters,
789790
};
790-
searchParams.set("where", JSON.stringify(newPanelFilters));
791+
// Remove if no filters left for this panel
792+
if (emptyPanelFilters) {
793+
delete newPanelFilters[panelName];
794+
}
795+
796+
// If there are no filters left at all, remove the where param
797+
if (!Object.keys(newPanelFilters).length) {
798+
searchParams.delete("where");
799+
} else {
800+
searchParams.set("where", JSON.stringify(newPanelFilters));
801+
}
791802
setSearchParams(searchParams);
792803
},
793804
[urlFilters, searchParams, setSearchParams],

0 commit comments

Comments
 (0)