COVESA / COVESA/ifex

Better Error reporting

Open
#91 1 comment 0 reactions 0 assignees View on GitHub
discussion
Dominant language
Python
Stars
24
Forks
24
PR merge metrics
No merged PRs in 30d

Description

This ticket collects things to improve on error reporting, when the tools get incorrect input.

1) If no Interface is in the YAML, then no output. The D-Bus generator doesn't fail until the XML-reformatting where it says there is no start node (with an ugly exception backtrace).
Instead, check that an Interface node exists and/or check if generation result is empty, and report it to the user.

2) Related to the above, the current template-driven generators like BAMM, DTDL, and protobuf need to be updated for Interface. They don't fail because they just loop over "all methods in the Namespace", etc. So if there aren't any, the output will be mostly empty. Anyhow, perhaps this could be considered correct behavior for a file without an Interface node, but they should be updated.
Ultimately, add a check for Interface node, in the generic `ifexgen` - at least it probably should output a warning.


Contributor guide

No contributing guide indexed for this repository

Research direction

Review the generic `ifexgen` entry point and the D-Bus, BAMM, DTDL, and protobuf generators described in the issue. Check how each handles YAML without an Interface node and how empty generation results are reported. Done means invalid input produces a clear warning or error instead of an ugly traceback or mostly empty output.

Written by the indexing model from the issue text.

Assessment

Tech stack
python
Domain
tooling
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.