#3208·visidata

behavior/documentation mismatch of `concat` join?

Author: weichmCreated Aug 21, 2026Updated Aug 21, 2026
Labelsbug

Small description

In VisiData 3.4, the behavior of the concat join seems inconsistent with its documented semantics. (But maybe I understand the functionality of concat wrong).

The documentation describes:

  • append: all rows from all sheets; columns from all sheets
  • concat: all rows from all sheets; columns and type from first sheet

However, concat appears to union columns by name from all input sheets, just like append.

At the same time, VisiData 3.4 requires all sheets used with concat to have the same number of visible columns.

I do not know if this is connected to:

Data to reproduce

$ vd --version
saul.pw/VisiData v3.4

cat > A.csv <<'EOF'
a,b,c
1,2,3
EOF

cat > B.csv <<'EOF'
x,y,z
4,5,6
EOF

Both sheets have three columns, but none of the column names match.

Steps to reproduce

  1. Open both files: vd a.csv b.csv
  2. Open the Sheets sheet with Shift+S.
  3. Select both sheets.
  4. Run &. Choose concat.

Expected result

a,b,c
1,2,3
4,5,6

Actual result with screenshot

a b c x y z 
1 2 3 
      4 5 6

This is the same result that append would yield.