[jira] Commented: (GERONIMO-2757) Enhance plugin schema to allow for multiple versions of a plugin
[ https://issues.apache.org/jira/browse/GERONIMO-2757?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#action_12512138 ] Paul McMahan commented on GERONIMO-2757: thanks for the patch Jason. after applying it I'm concerned that the export portlet will be overwhelming to the average user because of the 18 new inputs for version. I think the expanded capabilities of the geronimo-versions element will be mostly needed by repository catalogs and probably not for individually exported plugins.if a simplified UI can support the most common scenarios then I think its OK to rely on the user to crack open the exported car and edit the geronimo-plugin.xml for more advanced scenarios. so I wonder can the plugin export portlet be simplified to only prompt for one geronimo-version and also compress the multiple inputs for it? Enhance plugin schema to allow for multiple versions of a plugin Key: GERONIMO-2757 URL: https://issues.apache.org/jira/browse/GERONIMO-2757 Project: Geronimo Issue Type: Improvement Security Level: public(Regular issues) Components: Plugins Affects Versions: 2.0-M5 Reporter: Paul McMahan Assignee: Jason Warner Fix For: 2.0-M7 Attachments: geronimo-2757.patch, Geronimo-2757.patch, Geronimo-2757.patch, Geronimo-2757Export.patch, Geronimo-2757Update.patch plugins-1.1.xsd currently allows for a single version of a plugin to be described from within a plugin element. For example, if there were a different version of plugin for each version of geronimo then the plugin catalog would like something like: plugin module-idorg.apache.geronimo.configs/ca-helper-tomcat/1.1/car/module-id geronimo-version1.1/geronimo-version source-repositoryhttp://geronimo.apache.org/plugins/geronimo-1.1/source-repository [...] /plugin plugin module-idorg.apache.geronimo.configs/ca-helper-tomcat/1.2/car/module-id geronimo-version1.2/geronimo-version source-repositoryhttp://geronimo.apache.org/plugins/geronimo-1.2/source-repository [...] /plugin plugin module-idorg.apache.geronimo.configs/ca-helper-tomcat/2.0/car/module-id geronimo-version2.0/geronimo-version source-repositoryhttp://geronimo.apache.org/plugins/geronimo-2.0/source-repository [...] /plugin default-repositoryhttp://geronimo.apache.org/plugins/geronimo-1.1/default-repository default-repositoryhttp://geronimo.apache.org/plugins/geronimo-1.2/default-repository default-repositoryhttp://geronimo.apache.org/plugins/geronimo-2.0/default-repository Plugins are usually not compatible across versions of Geronimo for various reasons, probably the most prominent of which is Geronimo's reliance on serialized java objects in CAR files. Browsing a catalog that contains a plugin element for each version of Geronimo's plugins from the admin console or from the CLI would be confusing because of the many (seemingly redundant) entries. Therefore the collection of Geronimo plugins is distributed across a set of catalogs, one per version of Geronimo, and each version of Geronimo points at a version specific plugin catalog. Modifying the plugin schema so that a plugin element can allow the plugin's module-id and source-repository to depend on the geronimo-version would allow there to be much fewer entries in a consolidated plugin catalog. A plugin catalog that is created using this modified schema might look something like (this is just a sample) : plugin geronimo-version version=1.1 module-idorg.apache.geronimo.configs/ca-helper-tomcat/1.1/car/module-id source-repositoryhttp://geronimo.apache.org/plugins/geronimo-1.1/source-repository /geronimo-version geronimo-version version=1.2 module-idorg.apache.geronimo.configs/ca-helper-tomcat/1.2/car/module-id source-repositoryhttp://geronimo.apache.org/plugins/geronimo-1.2/source-repository /geronimo-version geronimo-version version=2.0 module-idorg.apache.geronimo.configs/ca-helper-tomcat/2.0/car/module-id source-repositoryhttp://geronimo.apache.org/plugins/geronimo-2.0/source-repository /geronimo-version [...] /plugin Also, for this to work a customized list of prerequisite elements would probably have to be supported inside the geronimo-version element as well, since those might also be version specific. Once this improvement is in place it will be easier to maintain Geronimo's plugin collection since each version of Geronimo won't require a separate catalog. Also it will be easier for end users and other external sources to refer to Geronimo's plugin catalog since the repository URL will no longer be version specific. --
[jira] Commented: (GERONIMO-2757) Enhance plugin schema to allow for multiple versions of a plugin
[ https://issues.apache.org/jira/browse/GERONIMO-2757?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#action_12512258 ] Paul McMahan commented on GERONIMO-2757: Thanks for the patch Jason! committed in rev 555767.I think the last remaining test is to try out the new schema with the geronimo-2.0 plugin catalog. I will try that and post any followup questions here. Enhance plugin schema to allow for multiple versions of a plugin Key: GERONIMO-2757 URL: https://issues.apache.org/jira/browse/GERONIMO-2757 Project: Geronimo Issue Type: Improvement Security Level: public(Regular issues) Components: Plugins Affects Versions: 2.0-M5 Reporter: Paul McMahan Assignee: Jason Warner Fix For: 2.0-M7 Attachments: geronimo-2757.patch, Geronimo-2757.patch, Geronimo-2757.patch, Geronimo-2757Export.patch, Geronimo-2757ExportSimplified.patch, Geronimo-2757Update.patch plugins-1.1.xsd currently allows for a single version of a plugin to be described from within a plugin element. For example, if there were a different version of plugin for each version of geronimo then the plugin catalog would like something like: plugin module-idorg.apache.geronimo.configs/ca-helper-tomcat/1.1/car/module-id geronimo-version1.1/geronimo-version source-repositoryhttp://geronimo.apache.org/plugins/geronimo-1.1/source-repository [...] /plugin plugin module-idorg.apache.geronimo.configs/ca-helper-tomcat/1.2/car/module-id geronimo-version1.2/geronimo-version source-repositoryhttp://geronimo.apache.org/plugins/geronimo-1.2/source-repository [...] /plugin plugin module-idorg.apache.geronimo.configs/ca-helper-tomcat/2.0/car/module-id geronimo-version2.0/geronimo-version source-repositoryhttp://geronimo.apache.org/plugins/geronimo-2.0/source-repository [...] /plugin default-repositoryhttp://geronimo.apache.org/plugins/geronimo-1.1/default-repository default-repositoryhttp://geronimo.apache.org/plugins/geronimo-1.2/default-repository default-repositoryhttp://geronimo.apache.org/plugins/geronimo-2.0/default-repository Plugins are usually not compatible across versions of Geronimo for various reasons, probably the most prominent of which is Geronimo's reliance on serialized java objects in CAR files. Browsing a catalog that contains a plugin element for each version of Geronimo's plugins from the admin console or from the CLI would be confusing because of the many (seemingly redundant) entries. Therefore the collection of Geronimo plugins is distributed across a set of catalogs, one per version of Geronimo, and each version of Geronimo points at a version specific plugin catalog. Modifying the plugin schema so that a plugin element can allow the plugin's module-id and source-repository to depend on the geronimo-version would allow there to be much fewer entries in a consolidated plugin catalog. A plugin catalog that is created using this modified schema might look something like (this is just a sample) : plugin geronimo-version version=1.1 module-idorg.apache.geronimo.configs/ca-helper-tomcat/1.1/car/module-id source-repositoryhttp://geronimo.apache.org/plugins/geronimo-1.1/source-repository /geronimo-version geronimo-version version=1.2 module-idorg.apache.geronimo.configs/ca-helper-tomcat/1.2/car/module-id source-repositoryhttp://geronimo.apache.org/plugins/geronimo-1.2/source-repository /geronimo-version geronimo-version version=2.0 module-idorg.apache.geronimo.configs/ca-helper-tomcat/2.0/car/module-id source-repositoryhttp://geronimo.apache.org/plugins/geronimo-2.0/source-repository /geronimo-version [...] /plugin Also, for this to work a customized list of prerequisite elements would probably have to be supported inside the geronimo-version element as well, since those might also be version specific. Once this improvement is in place it will be easier to maintain Geronimo's plugin collection since each version of Geronimo won't require a separate catalog. Also it will be easier for end users and other external sources to refer to Geronimo's plugin catalog since the repository URL will no longer be version specific. -- This message is automatically generated by JIRA. - You can reply to this email to add a comment to the issue online.
[jira] Commented: (GERONIMO-2757) Enhance plugin schema to allow for multiple versions of a plugin
[ https://issues.apache.org/jira/browse/GERONIMO-2757?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#action_12510733 ] Jason Warner commented on GERONIMO-2757: I took a quick look through the export code and I see now why it's not including the geronimo versions element. I'll make some changes and then a post a patch. In regards to the repositories, I think that's a good idea. I'll see if I can get something working with that while I'm digging around in that code. Enhance plugin schema to allow for multiple versions of a plugin Key: GERONIMO-2757 URL: https://issues.apache.org/jira/browse/GERONIMO-2757 Project: Geronimo Issue Type: Improvement Security Level: public(Regular issues) Components: Plugins Affects Versions: 2.0-M5 Reporter: Paul McMahan Assignee: Jason Warner Fix For: 2.0-M7 Attachments: geronimo-2757.patch, Geronimo-2757.patch, Geronimo-2757.patch, Geronimo-2757Update.patch plugins-1.1.xsd currently allows for a single version of a plugin to be described from within a plugin element. For example, if there were a different version of plugin for each version of geronimo then the plugin catalog would like something like: plugin module-idorg.apache.geronimo.configs/ca-helper-tomcat/1.1/car/module-id geronimo-version1.1/geronimo-version source-repositoryhttp://geronimo.apache.org/plugins/geronimo-1.1/source-repository [...] /plugin plugin module-idorg.apache.geronimo.configs/ca-helper-tomcat/1.2/car/module-id geronimo-version1.2/geronimo-version source-repositoryhttp://geronimo.apache.org/plugins/geronimo-1.2/source-repository [...] /plugin plugin module-idorg.apache.geronimo.configs/ca-helper-tomcat/2.0/car/module-id geronimo-version2.0/geronimo-version source-repositoryhttp://geronimo.apache.org/plugins/geronimo-2.0/source-repository [...] /plugin default-repositoryhttp://geronimo.apache.org/plugins/geronimo-1.1/default-repository default-repositoryhttp://geronimo.apache.org/plugins/geronimo-1.2/default-repository default-repositoryhttp://geronimo.apache.org/plugins/geronimo-2.0/default-repository Plugins are usually not compatible across versions of Geronimo for various reasons, probably the most prominent of which is Geronimo's reliance on serialized java objects in CAR files. Browsing a catalog that contains a plugin element for each version of Geronimo's plugins from the admin console or from the CLI would be confusing because of the many (seemingly redundant) entries. Therefore the collection of Geronimo plugins is distributed across a set of catalogs, one per version of Geronimo, and each version of Geronimo points at a version specific plugin catalog. Modifying the plugin schema so that a plugin element can allow the plugin's module-id and source-repository to depend on the geronimo-version would allow there to be much fewer entries in a consolidated plugin catalog. A plugin catalog that is created using this modified schema might look something like (this is just a sample) : plugin geronimo-version version=1.1 module-idorg.apache.geronimo.configs/ca-helper-tomcat/1.1/car/module-id source-repositoryhttp://geronimo.apache.org/plugins/geronimo-1.1/source-repository /geronimo-version geronimo-version version=1.2 module-idorg.apache.geronimo.configs/ca-helper-tomcat/1.2/car/module-id source-repositoryhttp://geronimo.apache.org/plugins/geronimo-1.2/source-repository /geronimo-version geronimo-version version=2.0 module-idorg.apache.geronimo.configs/ca-helper-tomcat/2.0/car/module-id source-repositoryhttp://geronimo.apache.org/plugins/geronimo-2.0/source-repository /geronimo-version [...] /plugin Also, for this to work a customized list of prerequisite elements would probably have to be supported inside the geronimo-version element as well, since those might also be version specific. Once this improvement is in place it will be easier to maintain Geronimo's plugin collection since each version of Geronimo won't require a separate catalog. Also it will be easier for end users and other external sources to refer to Geronimo's plugin catalog since the repository URL will no longer be version specific. -- This message is automatically generated by JIRA. - You can reply to this email to add a comment to the issue online.
[jira] Commented: (GERONIMO-2757) Enhance plugin schema to allow for multiple versions of a plugin
[ https://issues.apache.org/jira/browse/GERONIMO-2757?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#action_12510763 ] Donald Woods commented on GERONIMO-2757: Cool! Thanks. Enhance plugin schema to allow for multiple versions of a plugin Key: GERONIMO-2757 URL: https://issues.apache.org/jira/browse/GERONIMO-2757 Project: Geronimo Issue Type: Improvement Security Level: public(Regular issues) Components: Plugins Affects Versions: 2.0-M5 Reporter: Paul McMahan Assignee: Jason Warner Fix For: 2.0-M7 Attachments: geronimo-2757.patch, Geronimo-2757.patch, Geronimo-2757.patch, Geronimo-2757Update.patch plugins-1.1.xsd currently allows for a single version of a plugin to be described from within a plugin element. For example, if there were a different version of plugin for each version of geronimo then the plugin catalog would like something like: plugin module-idorg.apache.geronimo.configs/ca-helper-tomcat/1.1/car/module-id geronimo-version1.1/geronimo-version source-repositoryhttp://geronimo.apache.org/plugins/geronimo-1.1/source-repository [...] /plugin plugin module-idorg.apache.geronimo.configs/ca-helper-tomcat/1.2/car/module-id geronimo-version1.2/geronimo-version source-repositoryhttp://geronimo.apache.org/plugins/geronimo-1.2/source-repository [...] /plugin plugin module-idorg.apache.geronimo.configs/ca-helper-tomcat/2.0/car/module-id geronimo-version2.0/geronimo-version source-repositoryhttp://geronimo.apache.org/plugins/geronimo-2.0/source-repository [...] /plugin default-repositoryhttp://geronimo.apache.org/plugins/geronimo-1.1/default-repository default-repositoryhttp://geronimo.apache.org/plugins/geronimo-1.2/default-repository default-repositoryhttp://geronimo.apache.org/plugins/geronimo-2.0/default-repository Plugins are usually not compatible across versions of Geronimo for various reasons, probably the most prominent of which is Geronimo's reliance on serialized java objects in CAR files. Browsing a catalog that contains a plugin element for each version of Geronimo's plugins from the admin console or from the CLI would be confusing because of the many (seemingly redundant) entries. Therefore the collection of Geronimo plugins is distributed across a set of catalogs, one per version of Geronimo, and each version of Geronimo points at a version specific plugin catalog. Modifying the plugin schema so that a plugin element can allow the plugin's module-id and source-repository to depend on the geronimo-version would allow there to be much fewer entries in a consolidated plugin catalog. A plugin catalog that is created using this modified schema might look something like (this is just a sample) : plugin geronimo-version version=1.1 module-idorg.apache.geronimo.configs/ca-helper-tomcat/1.1/car/module-id source-repositoryhttp://geronimo.apache.org/plugins/geronimo-1.1/source-repository /geronimo-version geronimo-version version=1.2 module-idorg.apache.geronimo.configs/ca-helper-tomcat/1.2/car/module-id source-repositoryhttp://geronimo.apache.org/plugins/geronimo-1.2/source-repository /geronimo-version geronimo-version version=2.0 module-idorg.apache.geronimo.configs/ca-helper-tomcat/2.0/car/module-id source-repositoryhttp://geronimo.apache.org/plugins/geronimo-2.0/source-repository /geronimo-version [...] /plugin Also, for this to work a customized list of prerequisite elements would probably have to be supported inside the geronimo-version element as well, since those might also be version specific. Once this improvement is in place it will be easier to maintain Geronimo's plugin collection since each version of Geronimo won't require a separate catalog. Also it will be easier for end users and other external sources to refer to Geronimo's plugin catalog since the repository URL will no longer be version specific. -- This message is automatically generated by JIRA. - You can reply to this email to add a comment to the issue online.
[jira] Commented: (GERONIMO-2757) Enhance plugin schema to allow for multiple versions of a plugin
[ https://issues.apache.org/jira/browse/GERONIMO-2757?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#action_12507122 ] Donald Woods commented on GERONIMO-2757: Second patch applied to trunk as revision 549707. Thanks Jason. Enhance plugin schema to allow for multiple versions of a plugin Key: GERONIMO-2757 URL: https://issues.apache.org/jira/browse/GERONIMO-2757 Project: Geronimo Issue Type: Improvement Security Level: public(Regular issues) Components: Plugins Affects Versions: 2.0-M5 Reporter: Paul McMahan Assignee: Jason Warner Fix For: 2.0-M7 Attachments: geronimo-2757.patch, Geronimo-2757.patch, Geronimo-2757.patch, Geronimo-2757Update.patch plugins-1.1.xsd currently allows for a single version of a plugin to be described from within a plugin element. For example, if there were a different version of plugin for each version of geronimo then the plugin catalog would like something like: plugin module-idorg.apache.geronimo.configs/ca-helper-tomcat/1.1/car/module-id geronimo-version1.1/geronimo-version source-repositoryhttp://geronimo.apache.org/plugins/geronimo-1.1/source-repository [...] /plugin plugin module-idorg.apache.geronimo.configs/ca-helper-tomcat/1.2/car/module-id geronimo-version1.2/geronimo-version source-repositoryhttp://geronimo.apache.org/plugins/geronimo-1.2/source-repository [...] /plugin plugin module-idorg.apache.geronimo.configs/ca-helper-tomcat/2.0/car/module-id geronimo-version2.0/geronimo-version source-repositoryhttp://geronimo.apache.org/plugins/geronimo-2.0/source-repository [...] /plugin default-repositoryhttp://geronimo.apache.org/plugins/geronimo-1.1/default-repository default-repositoryhttp://geronimo.apache.org/plugins/geronimo-1.2/default-repository default-repositoryhttp://geronimo.apache.org/plugins/geronimo-2.0/default-repository Plugins are usually not compatible across versions of Geronimo for various reasons, probably the most prominent of which is Geronimo's reliance on serialized java objects in CAR files. Browsing a catalog that contains a plugin element for each version of Geronimo's plugins from the admin console or from the CLI would be confusing because of the many (seemingly redundant) entries. Therefore the collection of Geronimo plugins is distributed across a set of catalogs, one per version of Geronimo, and each version of Geronimo points at a version specific plugin catalog. Modifying the plugin schema so that a plugin element can allow the plugin's module-id and source-repository to depend on the geronimo-version would allow there to be much fewer entries in a consolidated plugin catalog. A plugin catalog that is created using this modified schema might look something like (this is just a sample) : plugin geronimo-version version=1.1 module-idorg.apache.geronimo.configs/ca-helper-tomcat/1.1/car/module-id source-repositoryhttp://geronimo.apache.org/plugins/geronimo-1.1/source-repository /geronimo-version geronimo-version version=1.2 module-idorg.apache.geronimo.configs/ca-helper-tomcat/1.2/car/module-id source-repositoryhttp://geronimo.apache.org/plugins/geronimo-1.2/source-repository /geronimo-version geronimo-version version=2.0 module-idorg.apache.geronimo.configs/ca-helper-tomcat/2.0/car/module-id source-repositoryhttp://geronimo.apache.org/plugins/geronimo-2.0/source-repository /geronimo-version [...] /plugin Also, for this to work a customized list of prerequisite elements would probably have to be supported inside the geronimo-version element as well, since those might also be version specific. Once this improvement is in place it will be easier to maintain Geronimo's plugin collection since each version of Geronimo won't require a separate catalog. Also it will be easier for end users and other external sources to refer to Geronimo's plugin catalog since the repository URL will no longer be version specific. -- This message is automatically generated by JIRA. - You can reply to this email to add a comment to the issue online.
[jira] Commented: (GERONIMO-2757) Enhance plugin schema to allow for multiple versions of a plugin
[ https://issues.apache.org/jira/browse/GERONIMO-2757?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#action_12489143 ] Paul McMahan commented on GERONIMO-2757: Is there a new plugins-1.2.xsd? If so then can you attach a new patch that includes that file or attach it separately? (new patch is preferable) Enhance plugin schema to allow for multiple versions of a plugin Key: GERONIMO-2757 URL: https://issues.apache.org/jira/browse/GERONIMO-2757 Project: Geronimo Issue Type: Improvement Security Level: public(Regular issues) Components: Plugins Affects Versions: 2.0-M5 Reporter: Paul McMahan Assigned To: Jason Warner Attachments: Geronimo-2757.patch plugins-1.1.xsd currently allows for a single version of a plugin to be described from within a plugin element. For example, if there were a different version of plugin for each version of geronimo then the plugin catalog would like something like: plugin module-idorg.apache.geronimo.configs/ca-helper-tomcat/1.1/car/module-id geronimo-version1.1/geronimo-version source-repositoryhttp://geronimo.apache.org/plugins/geronimo-1.1/source-repository [...] /plugin plugin module-idorg.apache.geronimo.configs/ca-helper-tomcat/1.2/car/module-id geronimo-version1.2/geronimo-version source-repositoryhttp://geronimo.apache.org/plugins/geronimo-1.2/source-repository [...] /plugin plugin module-idorg.apache.geronimo.configs/ca-helper-tomcat/2.0/car/module-id geronimo-version2.0/geronimo-version source-repositoryhttp://geronimo.apache.org/plugins/geronimo-2.0/source-repository [...] /plugin default-repositoryhttp://geronimo.apache.org/plugins/geronimo-1.1/default-repository default-repositoryhttp://geronimo.apache.org/plugins/geronimo-1.2/default-repository default-repositoryhttp://geronimo.apache.org/plugins/geronimo-2.0/default-repository Plugins are usually not compatible across versions of Geronimo for various reasons, probably the most prominent of which is Geronimo's reliance on serialized java objects in CAR files. Browsing a catalog that contains a plugin element for each version of Geronimo's plugins from the admin console or from the CLI would be confusing because of the many (seemingly redundant) entries. Therefore the collection of Geronimo plugins is distributed across a set of catalogs, one per version of Geronimo, and each version of Geronimo points at a version specific plugin catalog. Modifying the plugin schema so that a plugin element can allow the plugin's module-id and source-repository to depend on the geronimo-version would allow there to be much fewer entries in a consolidated plugin catalog. A plugin catalog that is created using this modified schema might look something like (this is just a sample) : plugin geronimo-version version=1.1 module-idorg.apache.geronimo.configs/ca-helper-tomcat/1.1/car/module-id source-repositoryhttp://geronimo.apache.org/plugins/geronimo-1.1/source-repository /geronimo-version geronimo-version version=1.2 module-idorg.apache.geronimo.configs/ca-helper-tomcat/1.2/car/module-id source-repositoryhttp://geronimo.apache.org/plugins/geronimo-1.2/source-repository /geronimo-version geronimo-version version=2.0 module-idorg.apache.geronimo.configs/ca-helper-tomcat/2.0/car/module-id source-repositoryhttp://geronimo.apache.org/plugins/geronimo-2.0/source-repository /geronimo-version [...] /plugin Also, for this to work a customized list of prerequisite elements would probably have to be supported inside the geronimo-version element as well, since those might also be version specific. Once this improvement is in place it will be easier to maintain Geronimo's plugin collection since each version of Geronimo won't require a separate catalog. Also it will be easier for end users and other external sources to refer to Geronimo's plugin catalog since the repository URL will no longer be version specific. -- This message is automatically generated by JIRA. - You can reply to this email to add a comment to the issue online.
[jira] Commented: (GERONIMO-2757) Enhance plugin schema to allow for multiple versions of a plugin
[ https://issues.apache.org/jira/browse/GERONIMO-2757?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#action_12468486 ] Jason Warner commented on GERONIMO-2757: After running through this again I came up with a different idea. I found that the schemas to validate against are actually in the plugin-installer code and not in the xml document. This would make it difficult to determine which schema a document is using since it's not explicitly stated. I was thinking that we could modify this code to validate against the new and the old schema. Since the geronimo-version element is optional in both schemas, the new schema could be modified slightly so that its geronimo-version element has a different name. This way, old xml's can be left alone and still work fine but new xml's can use the new geronimo-version element and also work. This would require that the given xml document either use the new way or the old way for each version. By this I mean that for each version a user wishes to have in the xml, you can either use the new way or the old way but not both. The code would use whichever geronimo-version element matched the running version but would be unsure of what to do if two geronimo-version elements existed for the same version. Enhance plugin schema to allow for multiple versions of a plugin Key: GERONIMO-2757 URL: https://issues.apache.org/jira/browse/GERONIMO-2757 Project: Geronimo Issue Type: Improvement Security Level: public(Regular issues) Components: Plugins Affects Versions: 2.0 Reporter: Paul McMahan Assigned To: Jason Warner plugins-1.1.xsd currently allows for a single version of a plugin to be described from within a plugin element. For example, if there were a different version of plugin for each version of geronimo then the plugin catalog would like something like: plugin module-idorg.apache.geronimo.configs/ca-helper-tomcat/1.1/car/module-id geronimo-version1.1/geronimo-version source-repositoryhttp://geronimo.apache.org/plugins/geronimo-1.1/source-repository [...] /plugin plugin module-idorg.apache.geronimo.configs/ca-helper-tomcat/1.2/car/module-id geronimo-version1.2/geronimo-version source-repositoryhttp://geronimo.apache.org/plugins/geronimo-1.2/source-repository [...] /plugin plugin module-idorg.apache.geronimo.configs/ca-helper-tomcat/2.0/car/module-id geronimo-version2.0/geronimo-version source-repositoryhttp://geronimo.apache.org/plugins/geronimo-2.0/source-repository [...] /plugin default-repositoryhttp://geronimo.apache.org/plugins/geronimo-1.1/default-repository default-repositoryhttp://geronimo.apache.org/plugins/geronimo-1.2/default-repository default-repositoryhttp://geronimo.apache.org/plugins/geronimo-2.0/default-repository Plugins are usually not compatible across versions of Geronimo for various reasons, probably the most prominent of which is Geronimo's reliance on serialized java objects in CAR files. Browsing a catalog that contains a plugin element for each version of Geronimo's plugins from the admin console or from the CLI would be confusing because of the many (seemingly redundant) entries. Therefore the collection of Geronimo plugins is distributed across a set of catalogs, one per version of Geronimo, and each version of Geronimo points at a version specific plugin catalog. Modifying the plugin schema so that a plugin element can allow the plugin's module-id and source-repository to depend on the geronimo-version would allow there to be much fewer entries in a consolidated plugin catalog. A plugin catalog that is created using this modified schema might look something like (this is just a sample) : plugin geronimo-version version=1.1 module-idorg.apache.geronimo.configs/ca-helper-tomcat/1.1/car/module-id source-repositoryhttp://geronimo.apache.org/plugins/geronimo-1.1/source-repository /geronimo-version geronimo-version version=1.2 module-idorg.apache.geronimo.configs/ca-helper-tomcat/1.2/car/module-id source-repositoryhttp://geronimo.apache.org/plugins/geronimo-1.2/source-repository /geronimo-version geronimo-version version=2.0 module-idorg.apache.geronimo.configs/ca-helper-tomcat/2.0/car/module-id source-repositoryhttp://geronimo.apache.org/plugins/geronimo-2.0/source-repository /geronimo-version [...] /plugin Also, for this to work a customized list of prerequisite elements would probably have to be supported inside the geronimo-version element as well, since those might also be version specific. Once this improvement is in place it will be easier to maintain Geronimo's
[jira] Commented: (GERONIMO-2757) Enhance plugin schema to allow for multiple versions of a plugin
[ https://issues.apache.org/jira/browse/GERONIMO-2757?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#action_12467095 ] Paul McMahan commented on GERONIMO-2757: Can backwards compatibility be maintained in Geronimo by detecting the schema version and processing the plugin XML files accordingly? Enhance plugin schema to allow for multiple versions of a plugin Key: GERONIMO-2757 URL: https://issues.apache.org/jira/browse/GERONIMO-2757 Project: Geronimo Issue Type: Improvement Security Level: public(Regular issues) Components: Plugins Affects Versions: 2.0 Reporter: Paul McMahan Assigned To: Jason Warner plugins-1.1.xsd currently allows for a single version of a plugin to be described from within a plugin element. For example, if there were a different version of plugin for each version of geronimo then the plugin catalog would like something like: plugin module-idorg.apache.geronimo.configs/ca-helper-tomcat/1.1/car/module-id geronimo-version1.1/geronimo-version source-repositoryhttp://geronimo.apache.org/plugins/geronimo-1.1/source-repository [...] /plugin plugin module-idorg.apache.geronimo.configs/ca-helper-tomcat/1.2/car/module-id geronimo-version1.2/geronimo-version source-repositoryhttp://geronimo.apache.org/plugins/geronimo-1.2/source-repository [...] /plugin plugin module-idorg.apache.geronimo.configs/ca-helper-tomcat/2.0/car/module-id geronimo-version2.0/geronimo-version source-repositoryhttp://geronimo.apache.org/plugins/geronimo-2.0/source-repository [...] /plugin default-repositoryhttp://geronimo.apache.org/plugins/geronimo-1.1/default-repository default-repositoryhttp://geronimo.apache.org/plugins/geronimo-1.2/default-repository default-repositoryhttp://geronimo.apache.org/plugins/geronimo-2.0/default-repository Plugins are usually not compatible across versions of Geronimo for various reasons, probably the most prominent of which is Geronimo's reliance on serialized java objects in CAR files. Browsing a catalog that contains a plugin element for each version of Geronimo's plugins from the admin console or from the CLI would be confusing because of the many (seemingly redundant) entries. Therefore the collection of Geronimo plugins is distributed across a set of catalogs, one per version of Geronimo, and each version of Geronimo points at a version specific plugin catalog. Modifying the plugin schema so that a plugin element can allow the plugin's module-id and source-repository to depend on the geronimo-version would allow there to be much fewer entries in a consolidated plugin catalog. A plugin catalog that is created using this modified schema might look something like (this is just a sample) : plugin geronimo-version version=1.1 module-idorg.apache.geronimo.configs/ca-helper-tomcat/1.1/car/module-id source-repositoryhttp://geronimo.apache.org/plugins/geronimo-1.1/source-repository /geronimo-version geronimo-version version=1.2 module-idorg.apache.geronimo.configs/ca-helper-tomcat/1.2/car/module-id source-repositoryhttp://geronimo.apache.org/plugins/geronimo-1.2/source-repository /geronimo-version geronimo-version version=2.0 module-idorg.apache.geronimo.configs/ca-helper-tomcat/2.0/car/module-id source-repositoryhttp://geronimo.apache.org/plugins/geronimo-2.0/source-repository /geronimo-version [...] /plugin Also, for this to work a customized list of prerequisite elements would probably have to be supported inside the geronimo-version element as well, since those might also be version specific. Once this improvement is in place it will be easier to maintain Geronimo's plugin collection since each version of Geronimo won't require a separate catalog. Also it will be easier for end users and other external sources to refer to Geronimo's plugin catalog since the repository URL will no longer be version specific. -- This message is automatically generated by JIRA. - You can reply to this email to add a comment to the issue online.
[jira] Commented: (GERONIMO-2757) Enhance plugin schema to allow for multiple versions of a plugin
[ https://issues.apache.org/jira/browse/GERONIMO-2757?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#action_12467208 ] Jason Warner commented on GERONIMO-2757: I looked into this a little bit. I think it is feasible, but to do this would require two subpaths for the code to follow depending on which version of the schema to use. Also, this would require keeping the old plugin repositories which would originally have been consolidated into one file. If this is done, it would require one more repository then we already have for the consolidated repository. With that said, this can definitely be done if there is a need for it. Enhance plugin schema to allow for multiple versions of a plugin Key: GERONIMO-2757 URL: https://issues.apache.org/jira/browse/GERONIMO-2757 Project: Geronimo Issue Type: Improvement Security Level: public(Regular issues) Components: Plugins Affects Versions: 2.0 Reporter: Paul McMahan Assigned To: Jason Warner plugins-1.1.xsd currently allows for a single version of a plugin to be described from within a plugin element. For example, if there were a different version of plugin for each version of geronimo then the plugin catalog would like something like: plugin module-idorg.apache.geronimo.configs/ca-helper-tomcat/1.1/car/module-id geronimo-version1.1/geronimo-version source-repositoryhttp://geronimo.apache.org/plugins/geronimo-1.1/source-repository [...] /plugin plugin module-idorg.apache.geronimo.configs/ca-helper-tomcat/1.2/car/module-id geronimo-version1.2/geronimo-version source-repositoryhttp://geronimo.apache.org/plugins/geronimo-1.2/source-repository [...] /plugin plugin module-idorg.apache.geronimo.configs/ca-helper-tomcat/2.0/car/module-id geronimo-version2.0/geronimo-version source-repositoryhttp://geronimo.apache.org/plugins/geronimo-2.0/source-repository [...] /plugin default-repositoryhttp://geronimo.apache.org/plugins/geronimo-1.1/default-repository default-repositoryhttp://geronimo.apache.org/plugins/geronimo-1.2/default-repository default-repositoryhttp://geronimo.apache.org/plugins/geronimo-2.0/default-repository Plugins are usually not compatible across versions of Geronimo for various reasons, probably the most prominent of which is Geronimo's reliance on serialized java objects in CAR files. Browsing a catalog that contains a plugin element for each version of Geronimo's plugins from the admin console or from the CLI would be confusing because of the many (seemingly redundant) entries. Therefore the collection of Geronimo plugins is distributed across a set of catalogs, one per version of Geronimo, and each version of Geronimo points at a version specific plugin catalog. Modifying the plugin schema so that a plugin element can allow the plugin's module-id and source-repository to depend on the geronimo-version would allow there to be much fewer entries in a consolidated plugin catalog. A plugin catalog that is created using this modified schema might look something like (this is just a sample) : plugin geronimo-version version=1.1 module-idorg.apache.geronimo.configs/ca-helper-tomcat/1.1/car/module-id source-repositoryhttp://geronimo.apache.org/plugins/geronimo-1.1/source-repository /geronimo-version geronimo-version version=1.2 module-idorg.apache.geronimo.configs/ca-helper-tomcat/1.2/car/module-id source-repositoryhttp://geronimo.apache.org/plugins/geronimo-1.2/source-repository /geronimo-version geronimo-version version=2.0 module-idorg.apache.geronimo.configs/ca-helper-tomcat/2.0/car/module-id source-repositoryhttp://geronimo.apache.org/plugins/geronimo-2.0/source-repository /geronimo-version [...] /plugin Also, for this to work a customized list of prerequisite elements would probably have to be supported inside the geronimo-version element as well, since those might also be version specific. Once this improvement is in place it will be easier to maintain Geronimo's plugin collection since each version of Geronimo won't require a separate catalog. Also it will be easier for end users and other external sources to refer to Geronimo's plugin catalog since the repository URL will no longer be version specific. -- This message is automatically generated by JIRA. - You can reply to this email to add a comment to the issue online.
[jira] Commented: (GERONIMO-2757) Enhance plugin schema to allow for multiple versions of a plugin
[ https://issues.apache.org/jira/browse/GERONIMO-2757?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#action_12466893 ] Jason Warner commented on GERONIMO-2757: When originally tackling this issue, my hope was to maintain backwards compatibilty such that any existing xml files would not need to be modified to work with this schema. I have since determined that this is most likely not possible. To accomplish the goals of this jira, the current geronimo version element will need to be changed from this: geronimo-versionversion/geronimo-version to this: geronimo-version version=version // version specific info ... /geronimo-version This would require changing the plugin catalogs to function with the new geronimo-version element. This should not be a problem as they were going to ideally be consolidated into one catalog after this change was finished. My question is whether this change would has a negative effect on anyone else? If so, can someone think of a different way to do this that would retain backwards compatibility? Thanks, Jason Enhance plugin schema to allow for multiple versions of a plugin Key: GERONIMO-2757 URL: https://issues.apache.org/jira/browse/GERONIMO-2757 Project: Geronimo Issue Type: Improvement Security Level: public(Regular issues) Components: Plugins Affects Versions: 2.0 Reporter: Paul McMahan Assigned To: Jason Warner plugins-1.1.xsd currently allows for a single version of a plugin to be described from within a plugin element. For example, if there were a different version of plugin for each version of geronimo then the plugin catalog would like something like: plugin module-idorg.apache.geronimo.configs/ca-helper-tomcat/1.1/car/module-id geronimo-version1.1/geronimo-version source-repositoryhttp://geronimo.apache.org/plugins/geronimo-1.1/source-repository [...] /plugin plugin module-idorg.apache.geronimo.configs/ca-helper-tomcat/1.2/car/module-id geronimo-version1.2/geronimo-version source-repositoryhttp://geronimo.apache.org/plugins/geronimo-1.2/source-repository [...] /plugin plugin module-idorg.apache.geronimo.configs/ca-helper-tomcat/2.0/car/module-id geronimo-version2.0/geronimo-version source-repositoryhttp://geronimo.apache.org/plugins/geronimo-2.0/source-repository [...] /plugin default-repositoryhttp://geronimo.apache.org/plugins/geronimo-1.1/default-repository default-repositoryhttp://geronimo.apache.org/plugins/geronimo-1.2/default-repository default-repositoryhttp://geronimo.apache.org/plugins/geronimo-2.0/default-repository Plugins are usually not compatible across versions of Geronimo for various reasons, probably the most prominent of which is Geronimo's reliance on serialized java objects in CAR files. Browsing a catalog that contains a plugin element for each version of Geronimo's plugins from the admin console or from the CLI would be confusing because of the many (seemingly redundant) entries. Therefore the collection of Geronimo plugins is distributed across a set of catalogs, one per version of Geronimo, and each version of Geronimo points at a version specific plugin catalog. Modifying the plugin schema so that a plugin element can allow the plugin's module-id and source-repository to depend on the geronimo-version would allow there to be much fewer entries in a consolidated plugin catalog. A plugin catalog that is created using this modified schema might look something like (this is just a sample) : plugin geronimo-version version=1.1 module-idorg.apache.geronimo.configs/ca-helper-tomcat/1.1/car/module-id source-repositoryhttp://geronimo.apache.org/plugins/geronimo-1.1/source-repository /geronimo-version geronimo-version version=1.2 module-idorg.apache.geronimo.configs/ca-helper-tomcat/1.2/car/module-id source-repositoryhttp://geronimo.apache.org/plugins/geronimo-1.2/source-repository /geronimo-version geronimo-version version=2.0 module-idorg.apache.geronimo.configs/ca-helper-tomcat/2.0/car/module-id source-repositoryhttp://geronimo.apache.org/plugins/geronimo-2.0/source-repository /geronimo-version [...] /plugin Also, for this to work a customized list of prerequisite elements would probably have to be supported inside the geronimo-version element as well, since those might also be version specific. Once this improvement is in place it will be easier to maintain Geronimo's plugin collection since each version of Geronimo won't require a separate catalog. Also it will be easier for end users and other external sources to refer to Geronimo's plugin