-
Notifications
You must be signed in to change notification settings - Fork 2.8k
[MNG-8676] Improve model builder error messages #2257
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
Conversation
Only the two that are easy to be mixed up: GAV and GAT related, as the rest (XML, PK/GA, REPOID, DIR) ones are not quite mixable. The problem with these two are that they look pretty much same (both a "A:B:C", colon segmented string of 3 or 4), but in one case C is dependency type, in other is version. --- https://issues.apache.org/jira/browse/MNG-8676
Am unsure about this PR. The one and only reason why it exists is explained in issue, but in short, the "a:b:c" string is usually implied to be GAV, but is also overloaded in Maven as, while many times it is GAV, sometimes is not, but muscle reflex will read it as GAV, and this will cause issues and derailment later on. Maybe all we need is "just" change the syntax in case of GAT to something else? Like |
It would make sense to make sure we use a single syntax everywhere. Not sure that Another problem would be goals... |
My only and solely goal is to make visually clear when it is GAV and when it is GAT... and no, if there is T there is never E. So you might mean GAVCT? This is another thing: Resolver "string" (GAECV) vs Maven "string" (GATCV) and many variations on it.... maven/compat/maven-artifact/src/main/java/org/apache/maven/artifact/DefaultArtifact.java Line 308 in af6b706
|
Resolve #9632 |
Only the one that is easy to be mixed up with GAV: DepMgtKey is GAT and not GAV. The rest (XML, PK/GA, REPOID, DIR, GAV) ones are not quite mixable, and string "A:B:C" is usually always assumed is GAV.
The problem with these two are that they look pretty much same (both a "A:B:C", colon segmented string of 3 or 4), but in one case C is dependency type, in other is version.
This PR now lessens the "A:B:C" string overload a bit, and also makes crystal clear that T is not V. The message is precise, but a bit longer. In turn, is not misleading at all now.
https://issues.apache.org/jira/browse/MNG-8676