Skip to content

Conversation

cpcloud
Copy link
Member

@cpcloud cpcloud commented Mar 26, 2025

Add support for specifying string length in the type system.

Closes #9382

@github-actions github-actions bot added tests Issues or PRs related to tests postgres The PostgreSQL backend clickhouse The ClickHouse backend mysql The MySQL backend datatypes Issues relating to ibis's datatypes (under `ibis.expr.datatypes`) sql Backends that generate SQL mssql The Microsoft SQL Server backend trino The Trino backend labels Mar 26, 2025
@cpcloud cpcloud force-pushed the string-length branch 2 times, most recently from a5efc92 to 053db83 Compare March 26, 2025 12:46
@github-actions github-actions bot added dependencies Issues or PRs related to dependencies nix Issues or PRs related to nix labels Mar 26, 2025
Copy link
Member

@gforsyth gforsyth left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks good! :shipit: (pending exasol)

@github-actions github-actions bot added the exasol Issues related to the exasol backend label Mar 26, 2025
@github-actions github-actions bot added the snowflake The Snowflake backend label Mar 27, 2025
@cpcloud cpcloud added backends Issues related to all backends snowflake The Snowflake backend and removed snowflake The Snowflake backend labels Mar 27, 2025
@cpcloud
Copy link
Member Author

cpcloud commented Mar 27, 2025

All clouds are passing:

❯ pytest -m 'databricks or snowflake or bigquery or athena' -n 8 --dist loadgroup --snapshot-update
================================================ test session starts =================================================
platform linux -- Python 3.12.9, pytest-8.3.5, pluggy-1.5.0
benchmark: 5.1.0 (defaults: timer=time.perf_counter disable_gc=False min_rounds=5 min_time=0.000005 max_time=1.0 calibration_precision=10 warmup=False warmup_iterations=100000)
Using --randomly-seed=2019235576
rootdir: …/ibis
configfile: pyproject.toml
plugins: anyio-4.9.0, timeout-2.3.1, xdist-3.6.1, benchmark-5.1.0, repeat-0.9.3, hypothesis-6.130.4, clarity-1.0.1, randomly-3.16.0, mock-3.14.0, cov-6.0.0, snapshot-0.9.0, deadfixtures-2.2.1
8 workers [8242 items]
sssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssss.....ssssss [  1%]
sssssssssssssss..sssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssss [  2%]
ssssss..........x.sssssssssssssssssssss.xx...xx.x.x.x.x.............xxx..............x....ssssssssssssssssssss [  4%]
ssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssxsssssssssssssssssss.sssssssssssssss.ssssss...x..x [  5%]
....................x...........................x.x.....xx.................x....x..........x.......xxxx...x..x [  6%]
..........x.....xx.........xx.........................x..x..x.........x.x......x.........xx..........xx....... [  8%]
.............x.........x.....x...............x....................x..xx..x.....x..........xxx................. [  9%]
.........s.......xx....x.x......x..................xx..x.x..x..x...X....xX.....x..x..x..x......x...x..X......X [ 10%]
xx..xx.....x..xx...xx...x.x.x.x..x........xx.....x.........x......xx......x....x.....x............x..x......x. [ 12%]
.......x....x...........s............s......x.x.......x..........s.....x...xx.xxxxx.xxxxxxxxx.xxxxx..xxxxx.xxx [ 13%]
xxxxxxxxxxxxxxxxxxxxxxx.xx.xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx.xxxxxxxxxxxxxxxxxxxxx.xxxxxx.x......... [ 14%]
...xx.x...sx...........................x....................x..................................x......x...x.x. [ 16%]
....x......xxxxxxxxxx.....x....x....x...x......x....xx....x.x...x.x....x..x.x...x...x..........xxx..x...x..xxx [ 17%]
x..x..x...x.x................xxx...x.x........x..x..x..x..x.x.........x......xx..xx....xx.x.............x.x... [ 18%]
.........s...........s.....................x............s.................................................x... [ 20%]
........x...x.........xx........x................xxx.................................x...................x.... [ 21%]
...................................x....................................x......xxx.x..x.x.x..xx........xx..xx. [ 22%]
..x.xx.x..x.x........xx.......x....x..............x......x.............................xx......xxx.x.....x.... [ 24%]
.x.........x.xx................x.x.x....x...x........xx.x....x..........x....x......................x.xx.....x [ 25%]
.......x.............x...x......x.xx...............................x...........x....x..x...................... [ 26%]
..x....x.x....x.....x......x...x.................xxx........x.........x...........x.x......................x.. [ 28%]
.......xx...x.....x.....x........x....x.......x....x.......................x...x..x.............x.....x....... [ 29%]
.....x..x...........x..x....sx...x...x..x.........xx...x........................x...x...x...xxx..x..x.x....... [ 30%]
..x............xxx...........x....x...xx.x.....................x..x............................x.......x...... [ 32%]
..x...s.x.x.xs.x.......x.....x....x.......x..x..x.x....x.......x.s.s...x..x.......x.......x..x...xx...x...x... [ 33%]
....x......................................................x.........x.....................................x.. [ 34%]
...xx.......x....xx.......x....x....xx.x..x.....x......x.xx.....x.....x....x...............x.........x........ [ 36%]
x..xxxxxxxxxxxx.xxxxxxxxxxxxxxx....x.x.......x..xx....x..xx..x.xxxxxxx....xx.xxx..xx.x......xx...x....x.....x. [ 37%]
.x..x...xxx.x.....x.xx....x.xxxxx....x.x.x..x......x.x.x......xxx...x.xxx......x.xxxx...x....xxxx..x..xxx...xx [ 38%]
x.xx..xx.xx...x.x.....x...x...........x.........x...s....x.......s....x......x.........x...xx.s........x...... [ 40%]
............xxxxxx.x.xx.xxxx.x........x.....x.....x..x.................xx..x..............x....x............xx [ 41%]
x....x.........x............xx......................................x..x......x.......x....................... [ 42%]
.....................x.......x...........x.x...x........x...............x.X....X.x...xx..x.................... [ 44%]
..........x........................x....x..x....x.x..x.x.x....x......x.........xx.x......x..x..x...x.......... [ 45%]
x...x.......x.xx..x....x....x...x.....x..xxx..x.............x.x.x......x...x..x..x.x...x.....x.x.............. [ 46%]
........x...........x..........................x.....x......x..........x....x......x.......................... [ 48%]
.x..............................x....x.....................x...x.....................................x.......x [ 49%]
.....x......s......x..................x..........x.x.x..x..x..x.........x....xx....x.........x...x.x.x........ [ 50%]
.......x......X..xx.xx.xx.x.x.x...x.x...x.....x..................x.....xX...........x...x....x.x.........xx... [ 52%]
..........x......x..x...x..xx....x............s.x........x..............s............ss....x......xx.......... [ 53%]
........x..........x.......................x.................................................................. [ 54%]
....................x.........x...x....x....x..................xx......x.x...x...........x......x............. [ 56%]
......x.x..........x..x.xxxxxxxxxxxxxxxxxx.xxxx.xx.xx.x.......x...............x...x..................x.......x [ 57%]
........x.................................................................x......................x...x.....x.. [ 58%]
........x........xx...................................s.........x.........s................................... [ 60%]
s...................xxx.....xxxx.x......xx..x.x...x......................x....x......x..............x......x.. [ 61%]
.x.....x..x.....x.x.....x..........................x...x.....x.....x...x.......x.............................. [ 62%]
............................x.............x...x..........x.x......x.........x.....x..............x.x..x....... [ 64%]
.................................................xx.xx.......x.x...x....xx...x........x.x.....x............... [ 65%]
...x......x........x....x.....x......x.x...........x..x....x..xx..x.....x...x....x...x..........xx.x..xx...... [ 66%]
.........x...x.............x...................x....x.......x.............x....x..x.........................x. [ 68%]
...................................x...............x.....................x..........x..x.......xx............. [ 69%]
....x.......x...x..xx.......xx.x.......s..............................x.x..........x..xx..x....x..........x.x. [ 70%]
....x..x...x..x.x....xx......x.......x..xx....................xx...x.....x....x...x....x.......x.............. [ 72%]
x..xxxx......x......x.x.....x........xx..x................................s................x........x......... [ 73%]
x.......xx.xx.x....x.x....x..xxxxx..x...x.x.xxxx...xx..x..xxx.x...xxx.x.xx...xx..x.x.x.xx...x....x.xx.xxx.xx.x [ 74%]
x.x...xxxxx.xx.x.x......x.x....................x...........x........................x.....x................... [ 76%]
.......x..................................xxxxxxxxxx.........x........x....x...........x...................... [ 77%]
..........................................x......x...x.......................x................................ [ 78%]
x.........................................x............................x...ss.......x...............s......... [ 80%]
..x...............................xx.......xx..........x......x..........x.....x.............x.........x...... [ 81%]
.....x................x.........x..x..................x...x..x.x..................x............x.............. [ 82%]
.........................................................s............x....x...............x......x.....x..... [ 84%]
xx.xxx.......x..........x..xxxx..x.....xx.............................xx........................x............. [ 85%]
....x...........................................x...........................x.......xx................x...x... [ 86%]
.......x........x...........................................................................................x. [ 88%]
.......................................................................................................x...... [ 89%]
.............................................................................................................. [ 90%]
............................x................................................................................. [ 92%]
.......................................................................................................s...... [ 93%]
....................................s................................x........................................ [ 94%]
..........................................................................................................x.x. [ 96%]
........s..................................................................................................... [ 97%]
.............s.....s.s....s......................................s...s..................s..........s.......... [ 98%]
..............................................s....................x..................................         [100%]
====================== 6716 passed, 402 skipped, 1116 xfailed, 8 xpassed in 2330.29s (0:38:50) =======================

@cpcloud cpcloud enabled auto-merge (squash) March 27, 2025 13:02
@cpcloud cpcloud merged commit 61dd7ea into ibis-project:main Mar 27, 2025
107 checks passed
@cpcloud cpcloud deleted the string-length branch March 27, 2025 13:16
ted0928 added a commit to ted0928/ibis that referenced this pull request Apr 10, 2025
* origin/main:
  chore: make gdal buildable on macos arm64
  chore(deps): bump and relock
  chore(deps): update astral-sh/setup-uv action to v5.4.1
  chore(deps): update ghcr.io/astral-sh/uv docker tag to v0.6.11
  test(datafusion): enable various xpassing tests
  chore(deps): bump and relock
  chore(deps): update `flake.lock`
  chore(deps): bump and relock
  fix(postgres): clean up possible transaction hangs
  chore(deps): update actions/create-github-app-token action to v1.12.0
  chore(deps): update clickhouse/clickhouse-server docker tag to v25.3.2.39
  chore(release): 10.4.0
  chore(deps): bump and relock (ibis-project#11050)
  feat(datatypes): add string length (ibis-project#11045)
  feat(flink): support `StringSplit` (ibis-project#11049)
  chore(deps): update ghcr.io/astral-sh/uv docker tag to v0.6.10
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
backends Issues related to all backends clickhouse The ClickHouse backend datatypes Issues relating to ibis's datatypes (under `ibis.expr.datatypes`) dependencies Issues or PRs related to dependencies exasol Issues related to the exasol backend mssql The Microsoft SQL Server backend mysql The MySQL backend nix Issues or PRs related to nix postgres The PostgreSQL backend snowflake The Snowflake backend sql Backends that generate SQL tests Issues or PRs related to tests trino The Trino backend
Projects
None yet
Development

Successfully merging this pull request may close these issues.

feat: allow specify the length of string column
2 participants