From efe460dd24cacda95203f3ac582fd57ce6374c1d Mon Sep 17 00:00:00 2001 From: George Stagg Date: Sat, 18 Apr 2026 11:00:06 +0100 Subject: [PATCH 1/3] Set auditwheel=repair for Jupyter macOS builds --- .github/workflows/release-jupyter.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/release-jupyter.yml b/.github/workflows/release-jupyter.yml index 6bf4628e..509a5999 100644 --- a/.github/workflows/release-jupyter.yml +++ b/.github/workflows/release-jupyter.yml @@ -98,7 +98,7 @@ jobs: uses: PyO3/maturin-action@v1 with: target: ${{ matrix.target }} - args: --release --out dist + args: --release --out dist --auditwheel=repair working-directory: ggsql-jupyter - uses: actions/upload-artifact@v4 From ce9dd511e6feafdcdff4ce37228cf960b87570e9 Mon Sep 17 00:00:00 2001 From: George Stagg Date: Sat, 18 Apr 2026 11:16:29 +0100 Subject: [PATCH 2/3] Use dylibbundler to bundle libs on macOS --- .github/workflows/release-packages.yml | 19 +++++++++++++++++++ src/Cargo.toml | 2 +- 2 files changed, 20 insertions(+), 1 deletion(-) diff --git a/.github/workflows/release-packages.yml b/.github/workflows/release-packages.yml index 313cc5c8..70019455 100644 --- a/.github/workflows/release-packages.yml +++ b/.github/workflows/release-packages.yml @@ -105,6 +105,9 @@ jobs: - name: Install ODBC run: brew install unixodbc + - name: Install dylibbundler + run: brew install dylibbundler + - name: Install Rust toolchain uses: dtolnay/rust-toolchain@stable with: @@ -136,6 +139,11 @@ jobs: - name: Build ggsql binary (x86_64) run: cargo build --release --bin ggsql --bin ggsql-jupyter + - name: Bundle and sign dynamic library dependencies + run: | + dylibbundler -cd -of -b -x target/release/ggsql -d ./libs/ -p @executable_path/../Resources/libs/ + dylibbundler -cd -of -b -x target/release/ggsql-jupyter -d ./libs/ -p @executable_path/../Resources/libs/ + - name: Ad-hoc sign binaries run: | codesign --force --sign - target/release/ggsql @@ -175,6 +183,9 @@ jobs: - name: Install ODBC run: brew install unixodbc + - name: Install dylibbundler + run: brew install dylibbundler + - name: Install Rust toolchain uses: dtolnay/rust-toolchain@stable with: @@ -206,6 +217,11 @@ jobs: - name: Build ggsql binary (aarch64) run: cargo build --release --bin ggsql --bin ggsql-jupyter + - name: Bundle and sign dynamic library dependencies + run: | + dylibbundler -cd -of -b -x target/release/ggsql -d ./libs/ -p @executable_path/../Resources/libs/ + dylibbundler -cd -of -b -x target/release/ggsql-jupyter -d ./libs/ -p @executable_path/../Resources/libs/ + - name: Build DMG installer (aarch64) run: cargo packager --release --formats dmg env: @@ -307,6 +323,9 @@ jobs: - name: Build ggsql binary (aarch64) run: cargo build --release --bin ggsql --bin ggsql-jupyter + - name: Make empty libs dir for bundling + run: mkdir -p libs + - name: Build Debian package (aarch64) run: cargo packager --release --formats deb diff --git a/src/Cargo.toml b/src/Cargo.toml index 834cad8c..43720604 100644 --- a/src/Cargo.toml +++ b/src/Cargo.toml @@ -108,4 +108,4 @@ binaries = [ ] # Resources to bundle (optional) -resources = [] +resources = [{ src = "../libs/", target = "libs" }] From 14517f03c722d48a03aafc89e4a9d80afa291736 Mon Sep 17 00:00:00 2001 From: George Stagg Date: Sat, 18 Apr 2026 11:26:04 +0100 Subject: [PATCH 3/3] Bump version to 0.2.6 --- Cargo.lock | 10 +++++----- Cargo.toml | 6 +++--- ggsql-jupyter/pyproject.toml | 2 +- ggsql-python/Cargo.toml | 2 +- ggsql-python/pyproject.toml | 2 +- ggsql-python/python/ggsql/__init__.py | 2 +- ggsql-vscode/CHANGELOG.md | 7 +++++++ ggsql-vscode/package-lock.json | 4 ++-- ggsql-vscode/package.json | 2 +- ggsql-wasm/demo/package-lock.json | 2 +- tree-sitter-ggsql/bindings/python/__init__.py | 2 +- tree-sitter-ggsql/package.json | 2 +- tree-sitter-ggsql/pyproject.toml | 2 +- tree-sitter-ggsql/tree-sitter.json | 2 +- 14 files changed, 27 insertions(+), 20 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index 0dd7c4d6..57b3f9af 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -1791,7 +1791,7 @@ dependencies = [ [[package]] name = "ggsql" -version = "0.2.5" +version = "0.2.6" dependencies = [ "anyhow", "arrow", @@ -1826,7 +1826,7 @@ dependencies = [ [[package]] name = "ggsql-jupyter" -version = "0.2.5" +version = "0.2.6" dependencies = [ "anyhow", "bytes", @@ -1851,7 +1851,7 @@ dependencies = [ [[package]] name = "ggsql-python" -version = "0.2.5" +version = "0.2.6" dependencies = [ "ggsql", "polars", @@ -1860,7 +1860,7 @@ dependencies = [ [[package]] name = "ggsql-wasm" -version = "0.2.5" +version = "0.2.6" dependencies = [ "csv", "ggsql", @@ -5822,7 +5822,7 @@ dependencies = [ [[package]] name = "tree-sitter-ggsql" -version = "0.2.5" +version = "0.2.6" dependencies = [ "cc", "tree-sitter", diff --git a/Cargo.toml b/Cargo.toml index 0820d0d7..5d52275d 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -16,7 +16,7 @@ default-members = [ resolver = "2" [workspace.package] -version = "0.2.5" +version = "0.2.6" edition = "2021" authors = ["ggsql Team"] license = "MIT" @@ -26,8 +26,8 @@ description = "A declarative visualization language that extends SQL with powerf [workspace.dependencies] # workspace packages -tree-sitter-ggsql = { path = "tree-sitter-ggsql", version = "0.2.5" } -ggsql = { path = "src", version = "0.2.5" } +tree-sitter-ggsql = { path = "tree-sitter-ggsql", version = "0.2.6" } +ggsql = { path = "src", version = "0.2.6" } # Parsing csscolorparser = "0.8.1" diff --git a/ggsql-jupyter/pyproject.toml b/ggsql-jupyter/pyproject.toml index a740737a..3da5355e 100644 --- a/ggsql-jupyter/pyproject.toml +++ b/ggsql-jupyter/pyproject.toml @@ -4,7 +4,7 @@ build-backend = "maturin" [project] name = "ggsql-jupyter" -version = "0.2.5" +version = "0.2.6" description = "Jupyter kernel for ggsql - SQL extension for declarative data visualization" readme = "README.md" license = { text = "MIT" } diff --git a/ggsql-python/Cargo.toml b/ggsql-python/Cargo.toml index 0eb5f267..1619eadb 100644 --- a/ggsql-python/Cargo.toml +++ b/ggsql-python/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "ggsql-python" -version = "0.2.5" +version = "0.2.6" edition = "2021" authors.workspace = true license.workspace = true diff --git a/ggsql-python/pyproject.toml b/ggsql-python/pyproject.toml index 877b362a..e38dfdd6 100644 --- a/ggsql-python/pyproject.toml +++ b/ggsql-python/pyproject.toml @@ -4,7 +4,7 @@ build-backend = "maturin" [project] name = "ggsql" -version = "0.2.5" +version = "0.2.6" description = "SQL extension for declarative data visualization" readme = "README.md" requires-python = ">=3.10" diff --git a/ggsql-python/python/ggsql/__init__.py b/ggsql-python/python/ggsql/__init__.py index d1e36aa3..8d8caf2d 100644 --- a/ggsql-python/python/ggsql/__init__.py +++ b/ggsql-python/python/ggsql/__init__.py @@ -27,7 +27,7 @@ "execute", "render_altair", ] -__version__ = "0.2.5" +__version__ = "0.2.6" # Type alias for any Altair chart type AltairChart = Union[ diff --git a/ggsql-vscode/CHANGELOG.md b/ggsql-vscode/CHANGELOG.md index 82c13de8..ef9bf01d 100644 --- a/ggsql-vscode/CHANGELOG.md +++ b/ggsql-vscode/CHANGELOG.md @@ -1,5 +1,12 @@ # Changelog +## 0.2.6 + +Alpha release. + +- Set auditwheel=repair for Jupyter macOS builds +- Use dylibbundler to bundle libs on macOS + ## 0.2.5 Alpha release. diff --git a/ggsql-vscode/package-lock.json b/ggsql-vscode/package-lock.json index 4dc96d1b..c2f7ce0d 100644 --- a/ggsql-vscode/package-lock.json +++ b/ggsql-vscode/package-lock.json @@ -1,12 +1,12 @@ { "name": "ggsql", - "version": "0.2.5", + "version": "0.2.6", "lockfileVersion": 3, "requires": true, "packages": { "": { "name": "ggsql", - "version": "0.2.5", + "version": "0.2.6", "license": "MIT", "dependencies": { "toml": "^3.0.0" diff --git a/ggsql-vscode/package.json b/ggsql-vscode/package.json index d640b2c9..b8510582 100644 --- a/ggsql-vscode/package.json +++ b/ggsql-vscode/package.json @@ -2,7 +2,7 @@ "name": "ggsql", "displayName": "ggsql", "description": "Syntax highlighting and language runtime for ggsql - SQL with declarative visualization", - "version": "0.2.5", + "version": "0.2.6", "publisher": "ggsql", "engines": { "vscode": "^1.75.0" diff --git a/ggsql-wasm/demo/package-lock.json b/ggsql-wasm/demo/package-lock.json index 89ae2f31..5878685d 100644 --- a/ggsql-wasm/demo/package-lock.json +++ b/ggsql-wasm/demo/package-lock.json @@ -24,7 +24,7 @@ }, "../pkg": { "name": "ggsql-wasm", - "version": "0.2.5", + "version": "0.2.6", "license": "MIT" }, "node_modules/@esbuild/aix-ppc64": { diff --git a/tree-sitter-ggsql/bindings/python/__init__.py b/tree-sitter-ggsql/bindings/python/__init__.py index 7081eb3d..9a6c7679 100644 --- a/tree-sitter-ggsql/bindings/python/__init__.py +++ b/tree-sitter-ggsql/bindings/python/__init__.py @@ -31,5 +31,5 @@ except Exception as e: raise ImportError(f"Could not load tree-sitter-ggsql language: {e}") -__version__ = "0.2.5" +__version__ = "0.2.6" __all__ = ["language"] diff --git a/tree-sitter-ggsql/package.json b/tree-sitter-ggsql/package.json index abdea382..fc759aa6 100644 --- a/tree-sitter-ggsql/package.json +++ b/tree-sitter-ggsql/package.json @@ -1,6 +1,6 @@ { "name": "tree-sitter-ggsql", - "version": "0.2.5", + "version": "0.2.6", "description": "Tree-sitter grammar for ggsql visualization language", "main": "bindings/node", "repository": { diff --git a/tree-sitter-ggsql/pyproject.toml b/tree-sitter-ggsql/pyproject.toml index 067cf8c8..f7a8625d 100644 --- a/tree-sitter-ggsql/pyproject.toml +++ b/tree-sitter-ggsql/pyproject.toml @@ -4,7 +4,7 @@ build-backend = "setuptools.build_meta" [project] name = "tree-sitter-ggsql" -version = "0.2.5" +version = "0.2.6" description = "Tree-sitter grammar for ggsql visualization language" readme = "README.md" license = {text = "MIT"} diff --git a/tree-sitter-ggsql/tree-sitter.json b/tree-sitter-ggsql/tree-sitter.json index 83ec1ee1..1d9cd3c8 100644 --- a/tree-sitter-ggsql/tree-sitter.json +++ b/tree-sitter-ggsql/tree-sitter.json @@ -14,7 +14,7 @@ } ], "metadata": { - "version": "0.2.5", + "version": "0.2.6", "license": "MIT", "description": "ggsql grammar for tree-sitter", "authors": [