| Summary: | Exports in Runtime page MANIFEST editor should provide the ability to mark internal | ||
|---|---|---|---|
| Product: | [Eclipse Project] PDE | Reporter: | Jeff Johnston <jjohnstn> |
| Component: | UI | Assignee: | PDE-UI-Inbox <pde-ui-inbox> |
| Status: | RESOLVED WORKSFORME | QA Contact: | |
| Severity: | normal | ||
| Priority: | P3 | CC: | curtis.windatt.public |
| Version: | 3.7 | ||
| Target Milestone: | --- | ||
| Hardware: | PC | ||
| OS: | Linux | ||
| Whiteboard: | |||
|
Description
Jeff Johnston
What proper OSGi tag are you referring to? On the runtime page of the editor, when you select a package, the Package Visibility section on the top right will be enabled. There you can specify if the package should be visible or not. x-internal and x-friends entries will be added as appropriate. Another commiter has created a plug-in in the Linux Tools project that is exporting an internal package to everyone. The plug-in is still pre-1.0 and Incubation. There is no warning when using any of these internal interfaces. If I change this over to make it hidden except to only a few other related packages, it uses x-friends. A bug was opened suggesting adding the x-internal specifier so that users will get warnings/etc.. if using the package. The idea would be to restrict access to friends in the future. There seems to be no way automatically to do this (expose the plug-in but have it marked it internal). Would this simply be bad form so it is not offered? If that is the case, then please feel free to close as INVALID or WONTFIX. (In reply to comment #2) > A bug was opened suggesting adding the x-internal specifier so that users will > get warnings/etc.. if using the package. The idea would be to restrict access > to friends in the future. There seems to be no way automatically to do this > (expose the plug-in but have it marked it internal). I think the current behaviour does what you require. On the runtime page, add the package to the exported list, then make sure it is 'hidden from all plug-ins'. By adding the package to the runtime page, it gets listed as an exported package and can be used by other plug-ins (in Eclipse we do this with all packages). However, the packages that are not intended as public API are marked with x-internal (or 'hidden from all plug-ins' in the editor). Unless a user has modified the PDE errors/warnings settings, any use of those packages will be flagged with a warning. If you use x-friends, now or later, friended plug-ins will not get flagged for usage of that package, but all other use will be. Closing as WORKSFORME. If your case is different then what I am describing, please explain further. Closing it as mentioned is fine. Thanks |