This Bugzilla instance is a read-only archive of historic NetBeans bug reports. To report a bug in NetBeans please follow the project's instructions for reporting issues.
Summary: | Autoupdate refuses to install autoload and eager modules if their deps are not satisfied | ||
---|---|---|---|
Product: | platform | Reporter: | _ rkubacki <rkubacki> |
Component: | Autoupdate | Assignee: | Libor Fischmeistr <lfischmeistr> |
Status: | NEW --- | ||
Severity: | normal | CC: | jglick, jtulach |
Priority: | P3 | ||
Version: | 7.0 | ||
Hardware: | PC | ||
OS: | Linux | ||
Issue Type: | ENHANCEMENT | Exception Reporter: |
Description
_ rkubacki
2011-04-20 17:52:14 UTC
Sounds more like a feature request, then a high priority bug. Btw. Maybe this could be a good reason to contribute and make the API in question public? The goal of plugin manager is to bring NetBeans installation from a one valid state into another valid state. Addition of a module set that consists of regular modules with satisfied dependencies + some autoload/eager modules that can be turned off by runtime is a valid transition. But plugin manager refuses to do it. IMO it is a bug not an enhancement. Your comment about making the API public is irrelevant here. 1. My extension can provide richer or simpler functionality based on a version of module that it binds with. It does not matter if the API is public or not. 2. There are too many APIs that are not public yet very useful. Forcing people to copy and paste is not a good way and sometimes it does not help. API review process does not work - it takes too long and it does not help you to create a module for released version. Agreed with reporter that this a defect. The real module system supports this scenario by quietly ignoring eager or recommended modules whose dependencies cannot be satisfied, and PM is supposed to follow the module system's semantics. P2 is appropriate given that there is no known satisfactory workaround. May also be a blocker for publishing SQE for NB 7.0 - one component uses the Maven embedder which changed incompatibly, and I had hoped to publish two variants of this component (6.9- and 7.0+). (In reply to comment #2) > Your comment about making the API public is irrelevant here. Not at all. The primary problem is that you are using implementation dependency (e.g. you are bypassing what is supported). As soon as you eliminate it, none of these tricks will be needed. I accept the bug report, but I am not going to accept high priorities for something that should have been fixed by proper software engineering. Stable APIs are evolving as well so there is a case to have different implementation of some feature targeting particular version. No intention for fixing this in the near future, it requires a bit complex changes in Auto Update Services which cannot be addressed during stabilization phase. |