[ 
https://issues.apache.org/jira/browse/MPLUGIN-450?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17806652#comment-17806652
 ] 

ASF GitHub Bot commented on MPLUGIN-450:
----------------------------------------

laeubi commented on PR #240:
URL: 
https://github.com/apache/maven-plugin-tools/pull/240#issuecomment-1891431842

   >  I'm not sure cause no it cant happen. You can get conflicts but no 
surprise nor wrong behavior if explicit compared to an almost random heuristic.
   
   Until now no one could give an example of "random" behavior, so can you show 
where this random part happen? For me it was (and is) completely deterministic 
as for each given input it always gives the same output.
   
   Especially it seems that two projects (`tycho`+`apache-rat`) that are using 
the convention `<projectname>-plugin` getting the same resulting prefix (== 
`<projectname>` ) so it can't be _that_ random....
   
   It was simply assumed (what obviously is wrong) that:
   
   1. goal prefix is optional, but "good to have" --> actually goal prefix was 
always present, so only explicitly specify it was optional)
   2. Cases when is not present, is when heuristics fails (so plugin module is 
not named as "xxx-maven-plugin" or "maven-xxx-plugin") --> also "xxx-plugin" 
works fine before, as well as even xxx as artifact id
   3. The cases when prefix is not present is mostly unintentional --> the new 
behavior does not fail/war/... in cases there is no prefix, as obviously 
tycho+rat have a prefix successfully derived but now fail
   
   So obviously the assumption that anything that do not matches 
`*-maven-plugin` `*-maven-plugin` got **no prefix** is wrong, you never get an 
empty prefix as claimed in the ticket.




> Make goal prefix mandatory by default
> -------------------------------------
>
>                 Key: MPLUGIN-450
>                 URL: https://issues.apache.org/jira/browse/MPLUGIN-450
>             Project: Maven Plugin Tools
>          Issue Type: Improvement
>          Components: Plugin Plugin
>            Reporter: Tamas Cservenak
>            Assignee: Guillaume Nodet
>            Priority: Major
>             Fix For: 3.11.0
>
>
> The goal prefix currently is not mandatory, and plugin uses heuristic to 
> figure it out, if possible (xxx-maven-plugin or maven-xxx-plugin, latter for 
> org.apache.maven plugins ONLY).
> In general, goal prefix is optional, but "good to have", and usually is 
> present.
> Cases when is not present, is when heuristics fails (so plugin module is not 
> named as "xxx-maven-plugin" or "maven-xxx-plugin") and user did not provide 
> one either. The cases when prefix is not present is mostly unintentional, but 
> maven-plugin-plugin leaves this without any remark or warning.
> IMHO, the maven-plugin-plugin should either warn, or even fail the build in 
> case when goal prefix is not present, but we may want to have some option to 
> turn off this feature (for me unknown reasons, where it would be expected to 
> NOT have goal prefix for a reason).
> TL;DR Am pretty much sure that in most of the cases when plugin developer 
> ends up with plugin without prefix, that it was unintentional (and causes 
> surprise later, not to mention refactoring the module name or POM change to 
> configure it), while there MAY be cases where goal prefix is not desired for 
> some reason (ie. plugin not mentioned for manual/CLI invocation). Simply put, 
> the out of the box defaults should enforce presence of it, while advanced 
> users still can produce prefix-less plugins with some extra configuration. 
> This would make things more explicit as well: even if plugin is named as 
> xxx-maven-plugin, configuration would be clear I do not want prefix for it.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

Reply via email to