IQSS / IQSS/dataverse

Use .tsv instead of .tab for the tab-delimited download option

Open
#12,532 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Feature: File Upload & Handling
Dominant language
Java
Stars
1.1k
Forks
564
Avg merge
2d 2h
Merged PRs (30d)
29

Description

Currently, when people choose the tab-delimited download option...

Image

... they get a .tab file like this:

Image

This causes problems because .tab is not well supported as a format for tab-delimited data. Here's an example of someone who was unable to open a .tab file:

Image

Fast forward to 2026 and Excel (for example) still can't open a .tab file. It's greyed out, like this:

Image

The solution to to switch from .tab to .tsv, which is much more standard.

This will be a backward-incompatible change, but I think it's worth it.

If we simply make the change, I'd size this at a 20. I'm uncertain of how many places in the code we'd need to touch. Maybe there's a potential shortcut (hack?) where internally we keep the .tab extension but when it's presented for download we switch it to .tsv? What matters most is the experience of the person downloading the file.

If we add configuration for installations to opt out of the change, that is, to stay with .tab, it would increase the complexity. Give it a 30.

Another option would be to have a config option that says to leave all existing files alone (keep them at .tab) and only make new files .tsv files. Maybe this would be a 40.

We could wait until JSF is gone. That would reduce the amount of code we have to change.


Notes:

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start at the tab-delimited download option and trace how its filename extension is generated and exposed to downloads. Search for all .tab references and related tests or configuration, then determine the affected paths and compatibility behavior. Done means the download presents a .tsv filename consistently, with the chosen behavior covered by tests.

Written by the indexing model from the issue text.

Assessment

Tech stack
java
Domain
backend
Issue type
Feature
Difficulty
4/5
Estimated time
3-5 days
Activity status
Quiet
Clarity
Mostly clear
Newbie friendliness
45/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.