jira.codehaus.org

  • Log In Access more options
    • Online Help
    • Keyboard Shortcuts
    • About JIRA
    • JIRA Credits
    • What?s New
  • Dashboards Access more options (Alt+d)
  • Projects Access more options (Alt+p)
  • Issues Access more options (Alt+i)
  • Maven 2 & 3
  • MNG-449

plugin development without release use case

  • Log In
  • Views
    • XML
    • Word
    • Printable

Details

  • Type: Bug Bug
  • Status: Closed Closed
  • Priority: Major Major
  • Resolution: Fixed
  • Affects Version/s: 2.0-alpha-2
  • Fix Version/s: 2.0 (RC)
  • Component/s: Artifacts and Repositories
  • Labels:
    None
  • Complexity:
    Intermediate

Description

currently, a plugin used from the command line or a POM without a version uses the latest release. This is inconvenient and confusing when you are developing a plugin as you need to do the first install with -DupdateReleaseInfo to get it to use your version.

There needs to be a better way to do this. It may be solved by existing issues relating to the RELEASE and plugin version management. If not, then another alternative might need to be considered, like local installation triggering a RELEASE update.

Issue Links

relates to

Task - A task that needs to be done. MNG-4069 Remove support for plugin metaversion LATEST

  • Minor - Minor loss of function, or other problem where easy workaround is present.
  • Closed - The issue is considered finished, the resolution is correct. Issues which are not closed can be reopened.

Task - A task that needs to be done. MNG-4206 Prefer RELEASE over LATEST when resolving plugin versions

  • Minor - Minor loss of function, or other problem where easy workaround is present.
  • Closed - The issue is considered finished, the resolution is correct. Issues which are not closed can be reopened.

Activity

Ascending order - Click to sort in descending order
  • All
  • Comments
  • Work Log
  • History
  • Activity
Hide
Permalink
Brett Porter added a comment - 05/Jun/05 7:10 PM

the latter may be necessary anyway, for a use case of library development when using unbounded versions when dependency mediation is in play. Perhaps the best thing to do is to update on local install, if the local version is > the current release version.

Show
Brett Porter added a comment - 05/Jun/05 7:10 PM the latter may be necessary anyway, for a use case of library development when using unbounded versions when dependency mediation is in play. Perhaps the best thing to do is to update on local install, if the local version is > the current release version.
Hide
Permalink
John Casey added a comment - 11/Jul/05 11:15 PM

Added LATEST artifact metadata for plugins ONLY, which is installed/deployed each time the plugin is. This is more correct than simply updating RELEASE when there is no release. I'm not sure what other issues there are relating to the dependency version ranges, however, so I'm assigning this to Brett for him to resolve. If my change has fixed the issue, this won't be hard to resolve.

Show
John Casey added a comment - 11/Jul/05 11:15 PM Added LATEST artifact metadata for plugins ONLY, which is installed/deployed each time the plugin is. This is more correct than simply updating RELEASE when there is no release. I'm not sure what other issues there are relating to the dependency version ranges, however, so I'm assigning this to Brett for him to resolve. If my change has fixed the issue, this won't be hard to resolve.
Hide
Permalink
Brett Porter added a comment - 21/Jul/05 8:34 AM

doesn't actually fix it. the plugin resolver tries to resolve RELEASE still (as it should), and doesn't know to try LATEST. IT could possibly try LATEST if RELEASE was not resolvable... but that only helps when starting out.

Show
Brett Porter added a comment - 21/Jul/05 8:34 AM doesn't actually fix it. the plugin resolver tries to resolve RELEASE still (as it should), and doesn't know to try LATEST. IT could possibly try LATEST if RELEASE was not resolvable... but that only helps when starting out.
Hide
Permalink
John Casey added a comment - 28/Jul/05 10:46 PM

Should now be fixed. I updated the CLI code to fix disabling of the plugin registry, and forced resolution of LATEST metadata during the version resolution process.

NOTE: LATEST metadata resolution isn't enabled unless you use '--check-plugin-latest' or put in <usePluginLatest/> in settings.xml.

Show
John Casey added a comment - 28/Jul/05 10:46 PM Should now be fixed. I updated the CLI code to fix disabling of the plugin registry, and forced resolution of LATEST metadata during the version resolution process. NOTE: LATEST metadata resolution isn't enabled unless you use '--check-plugin-latest' or put in <usePluginLatest/> in settings.xml.
Hide
Permalink
Brett Porter added a comment - 28/Aug/05 8:43 AM

this is really annoying. we need to make it such that any invocation of "m2 install" makes that plugin the default

Show
Brett Porter added a comment - 28/Aug/05 8:43 AM this is really annoying. we need to make it such that any invocation of "m2 install" makes that plugin the default
Hide
Permalink
Brett Porter added a comment - 18/Sep/05 8:52 PM

note also that -cpl doesn't appear to be working.

Show
Brett Porter added a comment - 18/Sep/05 8:52 PM note also that -cpl doesn't appear to be working.
Hide
Permalink
John Casey added a comment - 30/Sep/05 9:23 AM

need to write a new mojo for the plugin-plugin to update the version in the plugin registry when a plugin is installed...also, need to workup an IT to specifically test -cpl AND --check-plugin-latest.

Show
John Casey added a comment - 30/Sep/05 9:23 AM need to write a new mojo for the plugin-plugin to update the version in the plugin registry when a plugin is installed...also, need to workup an IT to specifically test -cpl AND --check-plugin-latest.
Hide
Permalink
John Casey added a comment - 03/Oct/05 11:23 PM

added the updateRegistry mojo to the install phase for updating the plugin-registry.xml iff it's enabled.

the -cpl issue was actually caused by another issue (the one with RELEASE landing in the resolved version after failing to find a release version of the plugin).

Show
John Casey added a comment - 03/Oct/05 11:23 PM added the updateRegistry mojo to the install phase for updating the plugin-registry.xml iff it's enabled. the -cpl issue was actually caused by another issue (the one with RELEASE landing in the resolved version after failing to find a release version of the plugin).
Hide
Permalink
John Casey added a comment - 03/Oct/05 11:23 PM

sorry, that issue was MNG-832.

Show
John Casey added a comment - 03/Oct/05 11:23 PM sorry, that issue was MNG-832.
Hide
Permalink
Brett Porter added a comment - 04/Oct/05 10:16 PM

sorry to whine again....

"this is really annoying. we need to make it such that any invocation of "m2 install" makes that plugin the default"

sorry, I didn't mean to fix -cpl. To be honest, I'd rather remove it, or perhaps make it the default? Will that unnecessarily query the remote repo?

Show
Brett Porter added a comment - 04/Oct/05 10:16 PM sorry to whine again.... "this is really annoying. we need to make it such that any invocation of "m2 install" makes that plugin the default" sorry, I didn't mean to fix -cpl. To be honest, I'd rather remove it, or perhaps make it the default? Will that unnecessarily query the remote repo?
Hide
Permalink
John Casey added a comment - 05/Oct/05 10:59 AM

I don't understand. I just tested this, and after installing maven-projecthelp-plugin - with the plugin registry enabled - the new projecthelp entry was in fact recorded.

As for -cpl, it should be working again. Without it, there's no way it0013 and it0020 will work as-is...they will require some sort of hackery with <defaultGoal/> and a multi-module build in order to make this feature testable from the it0000 series.

What exactly is it you want me to do here? Checking LATEST will result in normal users potentially getting snapshot plugin versions (ie. unstable), so I don't think that's a great way to go. On the other hand, some people (namely plugin devs) will want to be able to use the snapshot versions of plugins, so sticking with RELEASE doesn't really work either. I'm not sure what would happen if we allowed a locally installed -SNAPSHOT version to persist (ie. will it resolve the snapshot updates on the remote repo?), but one thing is sure about that: the developer would have to run an install on that plugin at least once, in order to get the entry into the plugin registry (or hand-edit).

All of the above seems pretty nuanced and more than a little unintuitive to me. I think, since -cpl is currently working and NOT the default, we should just leave it alone. We have bigger fish to fry when it comes to plugin usage, IMO.

For example, executing a plugin within the same build in which it was installed/built (esp. when that build is a reactored build, which it is likely to be).

Show
John Casey added a comment - 05/Oct/05 10:59 AM I don't understand. I just tested this, and after installing maven-projecthelp-plugin - with the plugin registry enabled - the new projecthelp entry was in fact recorded. As for -cpl, it should be working again. Without it, there's no way it0013 and it0020 will work as-is...they will require some sort of hackery with <defaultGoal/> and a multi-module build in order to make this feature testable from the it0000 series. What exactly is it you want me to do here? Checking LATEST will result in normal users potentially getting snapshot plugin versions (ie. unstable), so I don't think that's a great way to go. On the other hand, some people (namely plugin devs) will want to be able to use the snapshot versions of plugins, so sticking with RELEASE doesn't really work either. I'm not sure what would happen if we allowed a locally installed -SNAPSHOT version to persist (ie. will it resolve the snapshot updates on the remote repo?), but one thing is sure about that: the developer would have to run an install on that plugin at least once, in order to get the entry into the plugin registry (or hand-edit). All of the above seems pretty nuanced and more than a little unintuitive to me. I think, since -cpl is currently working and NOT the default, we should just leave it alone. We have bigger fish to fry when it comes to plugin usage, IMO. For example, executing a plugin within the same build in which it was installed/built (esp. when that build is a reactored build, which it is likely to be).
Hide
Permalink
Brett Porter added a comment - 05/Oct/05 10:03 PM

but our plugin snapshot repos are separate, so users won't get them unless they configure it, so I don't see any harm in switching to -cpl, as long as that doesn't cause more frequent update checks.

Show
Brett Porter added a comment - 05/Oct/05 10:03 PM but our plugin snapshot repos are separate, so users won't get them unless they configure it, so I don't see any harm in switching to -cpl, as long as that doesn't cause more frequent update checks.
Hide
Permalink
Brett Porter added a comment - 05/Oct/05 10:04 PM

or perhaps setting the release metadata on plugin installation, since it is only local? risky for deploy though, only want that if they are actually releasing.

Show
Brett Porter added a comment - 05/Oct/05 10:04 PM or perhaps setting the release metadata on plugin installation, since it is only local? risky for deploy though, only want that if they are actually releasing.
Hide
Permalink
John Casey added a comment - 11/Oct/05 2:42 AM

removed -cpl and -npl (no plugin latest?) and made plugin version resolution primarily based on LATEST metadata, with RELEASE used as a backup.

Show
John Casey added a comment - 11/Oct/05 2:42 AM removed -cpl and -npl (no plugin latest?) and made plugin version resolution primarily based on LATEST metadata, with RELEASE used as a backup.

People

  • Assignee:
    John Casey
    Reporter:
    Brett Porter
Vote (0)
Watch (0)

Dates

  • Created:
    05/Jun/05 7:09 PM
    Updated:
    17/Jun/09 6:37 AM
    Resolved:
    11/Oct/05 2:42 AM

Time Tracking

Estimated:
3h
Original Estimate - 3 hours
Remaining:
0m
Remaining Estimate - 0 minutes
Logged:
2h
Time Spent - 2 hours Time Not Required
  • Atlassian JIRA (v5.0.4#731-sha1:3aa7374)
  • Report a problem
  • Powered by a free Atlassian JIRA open source license for Codehaus. Try JIRA - bug tracking software for your team.