-
-
Notifications
You must be signed in to change notification settings - Fork 20
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Misleading error on update where dependency bundle is not found #99
Comments
The problem with this comes down to the relationship between a project and a bundle. Corral internally allows for the concept of a project without a bundle, but the update code will always try to load and then consider it an error. The lack of bundle.json for transitive dependencies shouldn't be an error in my mind. The specific error is here: https://github.com/ponylang/corral/blob/master/corral/bundle/project.pony#L62 The big question here is... should there be an error message when you use a project that doesn't have a corral.json? I think maybe no and that we don't output anything. (Nothing because I think warnings are dumb, things should either be an error or not). The argument in favor of making this an error is that it will help push everyone to start using corral.json in all their projects. But if an error it should stop processing and let you know it will not continue. This would put pressure on the Pony community to bring libraries up to date with working with corral. It might mean that in order to use a dependency, that you have to fork it to add a bundle.json, but if a library is abandoned, that might not be the worst idea. |
If an error is kept, it should say that the specific dependency is missing a
|
I am in favour of encouraging people to use the same patterns, however, I would not want to block a developer from using a 3rd party dependency if it is the correct tool for the job. If a dependency does not have a
Informing the user that this is something that should be fixed and may have detrimental effects if it is not fixed, however, it should not be a terminal error. An example:
In the above example, |
I am with @SeanTAllen that warnings are bad, especially when they refer to something that I can't fix. Having a dependency on another project that is lacking corral.json (and bundle.json) is such a case. Consume it as if no dependencies and give no warnings is IMHO the right way. |
This is the key point, feedback to the user is optional. |
corral.json:
The corresponding warning for the
fetch
command should also mark itself as a warning:The text was updated successfully, but these errors were encountered: