Skip to content

Command line tools should send errors to stderr, not stdout #1749

@njr0

Description

@njr0

If I use the frictionless describe command with a non-existent file, as follows:

    frictionless describe doesnotexist.csv --json --type package > doesnotexist.package.json

the file doesnotexist.package.json is created, containing:

╭─ Error ───────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╮
│ [scheme-error] The data source could not be successfully loaded: [Errno 2] No such file or directory: 'doesnotexist.csv'                  │
╰───────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯

I would have expected the error message to be sent to stderr, rather than stdout.

I assume this is a bug, rather than intended behaviour. (It seems like a bug to me.)

System information:

This was using frictionless 5.18.1 under Python 3.13.5 on a Mac running MacOS Sequoia 15.5.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions