gurkerl83 edited a comment on pull request #78: URL: https://github.com/apache/jclouds/pull/78#issuecomment-652886362
Hi, I would love some feedback about latest changes made in the last commit about the handling of GSON, the provided approach and the change of strategy of maintaining OSGi metadata in general. Please look at the last commit the following description. https://github.com/apache/jclouds/pull/78/commits/0a12d8ff9d4d8d4afda441e0ccfe2e769004628a **It is not a breaking change anymore!** In the last commit (last section of squashed commit), the GSON library was integrated into the JClouds core module using maven-bundle plugins include resource instruction. Building OSGi instruction variables from the respective modules show a weakness when resources such as script builder shell scripts are required to be integrated into the bundle but not provide a dedicated variable declaration for the resource section. The following commit demonstrates a change in strategy in declaration and integration of OSGi metadata. - Replace old bundle-plugin with newest bnd-plugin (bundle-plugin uses bnd-plugin internally) - Move OSGi metadata declarations from a maven variable passing strategy into dedicated bnd.bnd files + Cleaner pom files, no bundle packaging + Intellisense / Autocomplete support for .bnd files in terms of package exports etc. For demonstration, the overall OSGi adjustments are limited to project, core, script builder, compute, blob store, and load balancer because most custom OSGi metadata is defined here. Note: Other modules are currently disabled from build because some feedback is needed first. When the changes does qualify for merge I create another merge request which reenables all modules with the new OSGi bundling changes applied. Make GSON integration work. To understand the changes, see the core modules' bnd file. GSON internal packages also define a version, which is taken from the GSON dependency. Both, in GSON already exported packages and additional export declarations are fused in the process. The global JClouds core module exports next to its own packages the entire set of GSON packages, including internal packages. Some minor modifications were made in the module project; replace maven jar plugin with a minified version of the declaration, outsourced in projects bnd file. <img width="3057" alt="Screenshot 2020-07-02 at 11 58 16" src="https://user-images.githubusercontent.com/301689/86345629-12fff980-bc5c-11ea-9a93-a0617a7870fd.png"> ---------------------------------------------------------------- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. For queries about this service, please contact Infrastructure at: us...@infra.apache.org