Checklists for Contributing to VisiData
Submitting a Core Loader
A deeper explanation of all of these steps can be found in the loaders api documentation.
- Create an
open_foofunction that returns the newFooSheet. - Set an appropriate
rowtypestring. - Provide a
# rowdef:comment. This describes the structure of a row (e.g. its base class) in a Sheet. - If the loader's dependencies are not part of Python3 stdlib, note the additional dependencies in the
requirements.txt(include a comment adjacent to the dep with the name of the loader). - Check in a small sample dataset, in that format, to the
sample_datafolder - Add a
load-foo.vdtotests/.load-foo.vdshould simply open the checked-in sample dataset and have a simple interaction if the source includes multiple tables. - After replaying
vd load-foo.vd, save the final sheet asload-foo.tsv. Saveload-foo.tsvintests/golden/. - add a section on the loader to the formats.jsonl.
Submitting an External Plugin
A deeper explanation of all of this framework can be found in the plugins api documentation.
- Host a single Python file containing all of the plugin's code.
- In the https://github.com/visidata/dlc/blob/stable/plugins.jsonl file in the
visidata:dlcrepo, add a row for each plugin with all of the necessary information.
