Hi, Just out of curiosity and looking from the outside ...
I wonder how per-bundle releases would work when merging the projects ? Or isn't this intended at all ? Also, since the developer's view of merged project in Eclipse is probably a single Eclipse project, the developer sees everything inside the Eclipse project, right ? So, how can it be ensured that when the bundles are created there is no undue import -- e.g. of an implementation package of another bundle within the same Eclipse project ? Regards Felix Am 13.07.2012 um 01:31 schrieb Marcel Offermans: > The migration to Bndtools is coming along nicely. Both the server and target > are running, and we have all unit and integration tests working. One of the > next steps is to provide a better overview in Eclipse by merging some related > bundles into one project. The rationale is that at development time, we want > to provide a "development view" of the project that helps developers when > they're working on the codebase. In my opinion, and according to the "4+1 > view" [1], this does not necessarly mean that this "development view" is the > same as the "deployment view". In other words, there is no need to maintain a > 1 on 1 mapping between a project in the development view and a bundle in the > deployment view. > > Therefore we (I worked on this list with Jan Willem) propose to merge some of > the projects to go from about 90 to about 30 projects (which gives a better > overview in Eclipse). You should read this list as follows. The first line is > the project name, any next (indented) line is a project that is merged into > this new one. So for example, looking at the first one, we propose to make an > "org.apache.ace.authentication" project that contains 5 existing projects. > Sometimes in the process, we need to rename or move some packages, and things > like that we indicate with an "->" arrow plus a new name or destination. > > org.apache.ace.authentication > org.apache.ace.authentication -> .impl > org.apache.ace.authentication.api > org.apache.ace.authentication.processor.basicauth > org.apache.ace.authentication.processor.clientcert > org.apache.ace.authentication.processor.password > > org.apache.ace.authentication.itest > > org.apache.ace.configurator > org.apache.ace.configurator -> .impl > org.apache.ace.configurator.serveruseradmin > org.apache.ace.configurator.useradmin.task > > org.apache.ace.configurator.useradmin.itest > > org.apache.ace.connectionfactory > > org.apache.ace.consolelogger > > org.apache.ace.deployment.provider > org.apache.ace.deployment.provider.api > org.apache.ace.deployment.provider.base > org.apache.ace.deployment.provider.filebased -> @sandbox > org.apache.ace.deployment.provider.repositorybased > org.apache.ace.deployment.servlet -> provider.servlet > org.apache.ace.deployment.streamgenerator -> provider.streamgenerator > org.apache.ace.deployment.verifier -> provider.verifier > org.apache.ace.deployment.verifier.ui -> provider.verifier.ui > > org.apache.ace.deployment.itest > > org.apache.ace.http.redirector > org.apache.ace.httplistener -> @deprecated, replace it by the Felix Whiteboard > > org.apache.ace.http.itest -> @deprecated as well, see above > > org.apache.ace.integrationtests -> removed > > org.apache.ace.itest -> org.apache.ace.test, merge with util-test project > > org.apache.ace.location.upnp -> @sandbox, nice example but not necessarily > something we want to ship > > org.apache.ace.log.server > org.apache.ace.log.servlet -> log.server.servlet > org.apache.ace.log.task -> log.server.task > org.apache.ace.server.log.store -> log.server.store > org.apache.ace.server.log.ui -> log.server.ui > > org.apache.ace.log.itest -> log.server.itest > > org.apache.ace.nodelauncher > org.apache.ace.nodelauncher.amazon > org.apache.ace.nodelauncher.api > org.apache.ace.nodelauncher.ui > > org.apache.ace.processlauncher -> add main() method to make it standalone > > org.apache.ace.range.api > > org.apache.ace.repository > org.apache.ace.repository.api > org.apache.ace.repository.ext > org.apache.ace.repository.impl > org.apache.ace.repository.servlet > org.apache.ace.repository.task > > org.apache.ace.repository.itest > > org.apache.ace.resourceprocessor.useradmin -> split off to a resource > processor (can be moved to sandbox and one for the configurator) > > org.apache.ace.server.action -> remove!! > org.apache.ace.server.action.popupmessage -> remove!! > > org.apache.ace.util, split off test to org.apache.(i)test and embed other > classes in other bundles. > > org.apache.ace.webui.vaadin > org.apache.ace.webui.vaadin -> .impl > org.apache.ace.target.mgmt.ui -> webui.vaadin.target.ui ofzo > org.apache.ace.tageditor -> webui.vaadin.tageditor > > > org.apache.ace.obr > org.apache.ace.obr.metadata > org.apache.ace.obr.servlet > org.apache.ace.obr.storage > > > > org.apache.ace.client.automation > > org.apache.ace.client.repository > org.apache.ace.client.repository.api > org.apache.ace.client.repository.helper.base > org.apache.ace.client.repository.helper.bundle > org.apache.ace.client.repository.helper.configuration > org.apache.ace.client.repository.helper.user > org.apache.ace.client.repository.impl > > org.apache.ace.client.repository.itest > > org.apache.ace.client.rest > > > org.apache.ace.managementagent > > org.apache.ace.launcher > > org.apache.ace.discovery > org.apache.ace.discovery.api > org.apache.ace.discovery.property > org.apache.ace.discovery.upnp -> @sandbox > > org.apache.ace.identification > org.apache.ace.identification.api > org.apache.ace.identification.ifconfig -> @sandbox > org.apache.ace.identification.property > > org.apache.ace.log > > org.apache.ace.log.target > org.apache.ace.gateway.log -> rename: log.target, split log and task > org.apache.ace.gateway.log.store -> rename: log.target.store > org.apache.ace.log.listener -> log.target.listener > > org.apache.ace.scheduler > org.apache.ace.scheduler -> .impl > org.apache.ace.scheduler.api > > org.apache.ace.deployment.target > org.apache.ace.deployment.api -> target.api > org.apache.ace.deployment.deploymentadmin -> target.deploymentadmin > org.apache.ace.deployment.task -> target.task > org.apache.ace.deployment.task.base -> target.task.base > > > Greetings, Marcel > > [1] http://www.cs.ubc.ca/~gregor/teaching/papers/4+1view-architecture.pdf >