Skip to content

Commit

Permalink
Merge branch 'main' into fix_datasketches_1_2_ref_next
Browse files Browse the repository at this point in the history
  • Loading branch information
rustyconover authored Jan 10, 2025
2 parents dcede84 + 0082b7e commit b513348
Show file tree
Hide file tree
Showing 20 changed files with 109 additions and 38 deletions.
6 changes: 0 additions & 6 deletions .github/workflows/build.yml
Original file line number Diff line number Diff line change
Expand Up @@ -137,9 +137,3 @@ jobs:
extension_name: ${{ needs.prepare.outputs.COMMUNITY_EXTENSION_NAME }}
repository: ${{ needs.prepare.outputs.COMMUNITY_EXTENSION_GITHUB }}
ref: ${{ needs.prepare.outputs.COMMUNITY_EXTENSION_REF }}

docs_all:
if: ${{ (github.head_ref || github.ref_name) == 'main' }}
needs:
- deploy
uses: ./.github/workflows/generate_docs.yml
2 changes: 1 addition & 1 deletion .github/workflows/build_next.yml
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,7 @@ on:

jobs:
test_against_latest:
if: false
if: true
uses: ./.github/workflows/build.yml
with:
duckdb_version: 'main'
Expand Down
1 change: 1 addition & 0 deletions .github/workflows/deploy_docs.yml
Original file line number Diff line number Diff line change
Expand Up @@ -31,6 +31,7 @@ jobs:
cp build/docs/extensions_list.md.tmp web/_includes/list_of_community_extensions.md
- name: Upload to duckdb/duckdb-web
if: github.repository != 'duckdb/duckdb-web'
env:
GH_TOKEN: ${{ secrets.GITHUB_TOKEN }}
run: |
Expand Down
5 changes: 3 additions & 2 deletions extensions/avro/description.yml
Original file line number Diff line number Diff line change
Expand Up @@ -5,14 +5,15 @@ extension:
language: C++
build: cmake
license: MIT
excluded_platforms: "wasm_mvp;wasm_eh;wasm_threads;windows_amd64_rtools"
excluded_platforms: "wasm_mvp;wasm_eh;wasm_threads;windows_amd64_rtools;windows_amd64_mingw"

maintainers:
- hannes

repo:
github: hannes/duckdb_avro
ref: e5ed59b6ccf915c65e17eb6286b9a64f3ab09f59
ref: 8796f4979532a3946b850dcc3a85cc52bd708652
ref_next: c8941c92ec103f7825eb88207c04512f8a714b23

docs:
hello_world: |
Expand Down
6 changes: 3 additions & 3 deletions extensions/bigquery/description.yml
Original file line number Diff line number Diff line change
@@ -1,19 +1,19 @@
extension:
name: bigquery
description: Integrates DuckDB with Google BigQuery, allowing direct querying and management of BigQuery datasets
version: 0.1.1
version: 0.1.2
language: C++
build: cmake
license: MIT
excluded_platforms: "wasm_mvp;wasm_eh;wasm_threads;windows_amd64_rtools;osx_amd64;linux_arm64"
excluded_platforms: "wasm_mvp;wasm_eh;wasm_threads;windows_amd64_rtools;windows_amd64_mingw;osx_amd64;linux_arm64"
vcpkg_commit: "e01906b2ba7e645a76ee021a19de616edc98d29f"
requires_toolchains: "parser_tools"
maintainers:
- hafenkran

repo:
github: hafenkran/duckdb-bigquery
ref: 5e62c8ec0d6f764aebbc8480ec393cf5c6695917
ref: f19e01bb639c8941ea9588b67c27be018f6fcff0

docs:
hello_world: |
Expand Down
52 changes: 45 additions & 7 deletions extensions/chsql/description.yml
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
extension:
name: chsql
description: ClickHouse SQL Macros for DuckDB
version: 1.0.6
version: 1.0.7
language: SQL & C++
build: cmake
license: MIT
Expand All @@ -11,21 +11,20 @@ extension:

repo:
github: quackscience/duckdb-extension-clickhouse-sql
ref: 9ab2e8118dbb9e429fa8d2a9026ad019f5bf7706
ref: 16bcb5b0fda0ccca22f42695295f9bb4171190fb

docs:
hello_world: |
-- Use boring ClickHouse SQL function macros in DuckDB SQL queries. Examples:
SELECT toString('world') AS hello, toInt8OrZero('world') AS zero;
D SELECT toString('world') AS hello, toInt8OrZero('world') AS zero;
┌─────────┬───────┐
│ hello │ zero │
│ varchar │ int64 │
├─────────┼───────┤
│ world │ 0 │
└─────────┴───────┘
SELECT IPv4NumToString(167772161), IPv4StringToNum('10.0.0.1');
D SELECT IPv4NumToString(167772161), IPv4StringToNum('10.0.0.1');
┌────────────────────────────┬─────────────────────────────┐
│ ipv4numtostring(167772161) │ ipv4stringtonum('10.0.0.1') │
│ varchar │ int32 │
Expand All @@ -34,7 +33,7 @@ docs:
└────────────────────────────┴─────────────────────────────┘
-- Query a remote ClickHouse instance via HTTP/S API using multiple formats
SELECT * FROM ch_scan("SELECT number * 100 FROM numbers(3)","https://play.clickhouse.com", format := 'Parquet');
D SELECT * FROM ch_scan("SELECT number * 100 FROM numbers(3)","https://play.clickhouse.com", format := 'Parquet');
┌───────────────────────┐
│ multiply(number, 100) │
│ varchar │
Expand All @@ -44,6 +43,45 @@ docs:
│ 200 │
└───────────────────────┘
-- Query the emulated system tables to explore columns, rows, types, storage, etc
D SELECT * FROM system.tables;
D SELECT * FROM system.columns;
D SELECT * FROM system.functions;
D SELECT * FROM system.uptime;
D SELECT * FROM system.disks;
┌──────────┬──────────────┬────────────┬─────────────┬──────────────────┬─────────────────┬─────────┬─────────────────────┬───────────────┬──────────────┬──────────────┬───────────────┬───────────┬───────────┬────────────┐
│ name │ path │ free_space │ total_space │ unreserved_space │ keep_free_space │ type │ object_storage_type │ metadata_type │ is_encrypted │ is_read_only │ is_write_once │ is_remote │ is_broken │ cache_path │
│ varchar │ varchar │ int64 │ int64 │ int64 │ int64 │ varchar │ varchar │ varchar │ boolean │ boolean │ boolean │ boolean │ boolean │ varchar │
├──────────┼──────────────┼────────────┼─────────────┼──────────────────┼─────────────────┼─────────┼─────────────────────┼───────────────┼──────────────┼──────────────┼───────────────┼───────────┼───────────┼────────────┤
│ localdb │ test.db │ 0 │ 262144 │ 0 │ 0 │ Local │ None │ None │ false │ false │ false │ false │ false │ │
│ memory │ NULL │ 0 │ 0 │ 0 │ 0 │ Local │ None │ None │ false │ false │ false │ false │ false │ │
│ testduck │ /tmp/duck.db │ 262144 │ 786432 │ 262144 │ 0 │ Local │ None │ None │ false │ false │ false │ false │ false │ │
└──────────┴──────────────┴────────────┴─────────────┴──────────────────┴─────────────────┴─────────┴─────────────────────┴───────────────┴──────────────┴──────────────┴───────────────┴───────────┴───────────┴────────────┘
extended_description: |
This extension implements a growing number of [ClickHouse SQL Macros](https://duckdb.org/community_extensions/extensions/chsql#added-functions) and functions for DuckDB.
## DuckDB ClickHouse SQL extension
The DuckDB chsql community extension implements 100+ popular [ClickHouse SQL Macros](https://duckdb.org/community_extensions/extensions/chsql#added-functions), functions and helpers making it easier for users to transition between OLAP systems ⭐
### Motivation
DuckDB is our favourite OLAP engine but ClickHouse has lots of integrations and users. This extension is dedicated to ClickHouse refugeess.
```
✔ DuckDB SQL is awesome and full of great functions.<br>
✔ ClickHouse SQL is awesome and full of great functions.
✔ The DuckDB library is ~51M and modular. Can LOAD extensions.<br>
❌ The ClickHouse monolith is ~551M and growing. No extensions.
✔ DuckDB is open source and protected by a no-profit foundation.<br>
❌ ClickHouse is open core and controlled by for-profit corporation.
✔ DuckDB embedded is fast, mature and elegantly integrated in many languages.<br>
❌ chdb is still experimental, unstable and currently only supports Python.
```
### Extensions
- [chsql_native](https://duckdb.org/community_extensions/extensions/chsql_native) provides a native clickhouse client (binary) and a reader for ClickHouse Native format files
#### Legal Disclaimer
> DuckDB ® is a trademark of DuckDB Foundation. ClickHouse® is a trademark of ClickHouse Inc. All trademarks, service marks, and logos mentioned or depicted are the property of their respective owners. The use of any third-party trademarks, brand names, product names, and company names is purely informative or intended as parody and does not imply endorsement, affiliation, or association with the respective owners.
48 changes: 41 additions & 7 deletions extensions/chsql_native/description.yml
Original file line number Diff line number Diff line change
@@ -1,24 +1,58 @@
extension:
name: chsql_native
description: ClickHouse Native File reader for chsql
version: 0.0.1
description: ClickHouse Native Client & File Reader for chsql
version: 0.0.2
language: Rust
build: cmake
license: MIT
excluded_platforms: "windows_amd64_rtools;windows_amd64;wasm_threads;wasm_eh;wasm_mvp"
excluded_platforms: "windows_amd64_rtools;windows_amd64_mingw;windows_amd64;wasm_threads;wasm_eh;wasm_mvp"
requires_toolchains: "rust;python3"
maintainers:
- lmangani
- adubovikov

repo:
github: quackscience/duckdb-extension-clickhouse-native
ref: 0116eb462ec85fa000f1cb15a3b0ee6165711b78
ref: f2e3b6d0c327d71e0989f078b7fc6d13dbac52b9

docs:
hello_world: |
--- This experimental rust extension allows reading ClickHouse Native files with DuckDB
--- Test files can be generated with clickhouse-local. See README for full examples.
--- This experimental rust extension implements Native Clickhouse formats for DuckDB.
--- ClickHouse Native Binary Client for chsql
--- export CLICKHOUSE_URL="tcp://localhost:9000"
--- export CLICKHOUSE_URL="tcp://user:pass@remote:9440/?secure=true&skip_verify=true"
--- Simple Query Example
D SELECT * FROM clickhouse_scan("SELECT version(), 'hello', 123");
┌────────────┬─────────┬────────┐
│ version() │ 'hello' │ 123 │
│ varchar │ varchar │ uint32 │
├────────────┼─────────┼────────┤
│ 24.10.2.80 │ hello │ 123 │
└────────────┴─────────┴────────┘
--- Wide Query Example
D SELECT * FROM clickhouse_scan("SELECT * FROM system.functions WHERE alias_to != '' LIMIT 10");
┌────────────────────┬──────────────┬──────────────────┬──────────────────────┬───┬───────────┬────────────────┬──────────┬────────────┐
│ name │ is_aggregate │ case_insensitive │ alias_to │ … │ arguments │ returned_value │ examples │ categories │
│ varchar │ uint32 │ uint32 │ varchar │ │ varchar │ varchar │ varchar │ varchar │
├────────────────────┼──────────────┼──────────────────┼──────────────────────┼───┼───────────┼────────────────┼──────────┼────────────┤
│ connection_id │ 0 │ 1 │ connectionID │ … │ │ │ │ │
│ rand32 │ 0 │ 0 │ rand │ … │ │ │ │ │
│ INET6_ATON │ 0 │ 1 │ IPv6StringToNum │ … │ │ │ │ │
│ INET_ATON │ 0 │ 1 │ IPv4StringToNum │ … │ │ │ │ │
│ truncate │ 0 │ 1 │ trunc │ … │ │ │ │ │
│ ceiling │ 0 │ 1 │ ceil │ … │ │ │ │ │
│ replace │ 0 │ 1 │ replaceAll │ … │ │ │ │ │
│ from_utc_timestamp │ 0 │ 1 │ fromUTCTimestamp │ … │ │ │ │ │
│ mapFromString │ 0 │ 0 │ extractKeyValuePairs │ … │ │ │ │ │
│ str_to_map │ 0 │ 1 │ extractKeyValuePairs │ … │ │ │ │ │
├────────────────────┴──────────────┴──────────────────┴──────────────────────┴───┴───────────┴────────────────┴──────────┴────────────┤
│ 10 rows 12 columns (8 shown) │
└──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────┘
--- Native File Reader for chsql
--- Test files can be generated with clickhouse-local. File reads are full-scans.
--- Simple Example
D SELECT * FROM clickhouse_native('/tmp/numbers.clickhouse');
Expand Down Expand Up @@ -59,4 +93,4 @@ docs:
└─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────┘
extended_description: |
This extension is highly experimental and potentially unstable. All reads are full-scans. Do not use in production.
This extension is highly experimental and potentially unstable. Do not use in production. See README for full examples.
2 changes: 1 addition & 1 deletion extensions/crypto/description.yml
Original file line number Diff line number Diff line change
Expand Up @@ -43,7 +43,7 @@ docs:
extension:
build: cmake
description: Cryptographic hash functions and HMAC
excluded_platforms: windows_amd64_rtools;windows_amd64
excluded_platforms: windows_amd64_rtools;windows_amd64_mingw;windows_amd64;linux_amd64_musl
language: C++
license: MIT
maintainers:
Expand Down
5 changes: 3 additions & 2 deletions extensions/datasketches/description.yml
Original file line number Diff line number Diff line change
Expand Up @@ -71,8 +71,9 @@ extension:
maintainers:
- rustyconover
name: datasketches
version: 0.0.1
version: 0.0.2
repo:
github: rustyconover/duckdb-datasketches
ref: 4568aa6b47fc8a2339f96287d1f165ae41fed982
ref: 2e02577641aa1e5acee11d7c0c6ff4d4d2be0589
ref_next: 97ece9c4a4f5e2763de98b48f900e57dfafd895b

2 changes: 1 addition & 1 deletion extensions/evalexpr_rhai/description.yml
Original file line number Diff line number Diff line change
Expand Up @@ -75,7 +75,7 @@ docs:
extension:
build: cmake
description: Evaluate the Rhai scripting language in DuckDB
excluded_platforms: windows_amd64_rtools;windows_amd64
excluded_platforms: windows_amd64_rtools;windows_amd64_mingw;windows_amd64;linux_amd64_musl
language: C++
license: Apache-2.0
maintainers:
Expand Down
2 changes: 1 addition & 1 deletion extensions/gsheets/description.yml
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@ extension:
language: C++
build: cmake
license: MIT
excluded_platforms: "windows_amd64_rtools;wasm_mvp;wasm_eh;wasm_threads"
excluded_platforms: "windows_amd64_rtools;windows_amd64_mingw;wasm_mvp;wasm_eh;wasm_threads"
maintainers:
- archiewood

Expand Down
2 changes: 1 addition & 1 deletion extensions/h3/description.yml
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@ extension:
license: Apache-2.0
maintainers:
- isaacbrodsky
excluded_platforms: "windows_amd64_rtools"
excluded_platforms: "windows_amd64_rtools;windows_amd64_mingw"

repo:
github: isaacbrodsky/h3-duckdb
Expand Down
1 change: 1 addition & 0 deletions extensions/lindel/description.yml
Original file line number Diff line number Diff line change
Expand Up @@ -101,6 +101,7 @@ extension:
description: Linearization/Delinearization, Z-Order, Hilbert and Morton Curves
language: C++
license: Apache-2.0
excluded_platforms: "linux_amd64_musl"
maintainers:
- rustyconover
name: lindel
Expand Down
2 changes: 1 addition & 1 deletion extensions/magic/description.yml
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@ extension:
version: 0.0.1
language: C++
build: cmake
excluded_platforms: "wasm_mvp;wasm_eh;wasm_threads;windows_amd64_rtools;windows_amd64"
excluded_platforms: "linux_amd64_musl;wasm_mvp;wasm_eh;wasm_threads;windows_amd64_rtools;windows_amd64_mingw;windows_amd64"
license: MIT
maintainers:
- carlopi
Expand Down
2 changes: 1 addition & 1 deletion extensions/pcap_reader/description.yml
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@ extension:
language: Rust
build: cmake
license: MIT
excluded_platforms: "windows_amd64_rtools;windows_amd64"
excluded_platforms: "windows_amd64_rtools;windows_amd64_mingw;windows_amd64"
requires_toolchains: "rust;python3"
maintainers:
- lmangani
Expand Down
1 change: 1 addition & 0 deletions extensions/prql/description.yml
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,7 @@ extension:
build: cmake
requires_toolchains: "rust"
license: MIT
excluded_platforms: "linux_amd64_musl"
maintainers:
- ywelsch

Expand Down
2 changes: 1 addition & 1 deletion extensions/pyroscope/description.yml
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@ extension:
language: Rust
build: cmake
license: MIT
excluded_platforms: "windows_amd64_rtools;windows_amd64;wasm_threads;wasm_eh;wasm_mvp"
excluded_platforms: "windows_amd64_rtools;windows_amd64_mingw;windows_amd64;wasm_threads;wasm_eh;wasm_mvp"
requires_toolchains: "rust;python3"
maintainers:
- lmangani
Expand Down
2 changes: 1 addition & 1 deletion extensions/rusty_quack/description.yml
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@ extension:
language: Rust
build: cargo
license: MIT
excluded_platforms: "windows_amd64_rtools"
excluded_platforms: "windows_amd64_rtools;windows_amd64_mingw"
requires_toolchains: "rust;python3"
maintainers:
- samansmink
Expand Down
2 changes: 1 addition & 1 deletion extensions/scrooge/description.yml
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ extension:
description: Provides functionality for financial data-analysis, including data scanners for the Ethereum Blockchain and Yahoo Finance
version: 0.0.2
language: C++
excluded_platforms: "windows_amd64_rtools"
excluded_platforms: "windows_amd64_rtools;windows_amd64_mingw"
build: cmake
license: MIT
maintainers:
Expand Down
2 changes: 1 addition & 1 deletion extensions/sheetreader/description.yml
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@ extension:
version: 0.1.0
language: C++
build: cmake
excluded_platforms: windows_amd64_rtools
excluded_platforms: "windows_amd64_rtools;windows_amd64_mingw"
license: MIT
maintainers:
- freddie-freeloader
Expand Down

0 comments on commit b513348

Please sign in to comment.