Hi devs, Context =======
I’d like to propose a new best practice for extensions and especially recommended ones. We already have the following on http://dev.xwiki.org/xwiki/bin/view/Community/ApplicationDevelopmentBestPractices: "In your POM always try to depend on the oldest version of commons/rendering/platform dependencies for which your code works. At least, ensure that your Applications works on the latest LTS version of XWiki. This will allow the largest number of users to use your application.” In addition on the definition of a Recommended Extension at http://extensions.xwiki.org/xwiki/bin/view/ExtensionCode/RecommendedExtensions/RecommendedDefinition/ we say: “Works at least with the latest stable XWiki versions and with the LTS version” This proposal is about ensuring that an extension works with the latest stable XWiki version. Proposal ======== 1) Always create a LATEST branch for recommended extensions 2) On this branch depend on LATEST for parent pom. For example: <parent> <groupId>org.xwiki.commons</groupId> <artifactId>xwiki-commons-pom</artifactId> <version>LATEST</version> </parent> Note 1: For extensions using https://github.com/xwiki-contrib/parent we also need to release latest version of those poms as part of the XWiki commons/rendering/platform/enterprise release process. Note 2: The advantage of using LATEST is that it doesn’t require maintenance from the extensions whenever new versions of XWiki commons/rendering/platform/enterprise are released. It does require to update the contrib parent poms though. 3) On ci.xwiki.org, make sure that the job is defined to build 2 branches. You can also leave the branch name empty and Jenkins will then build all available branches as I’ve done for IRC Bot app: http://ci.xwiki.org/job/Contrib%20-%20IRC%20Bot%20Application/configure (check the “Source Code Management” section). WDYT? Thanks -Vincent _______________________________________________ devs mailing list [email protected] http://lists.xwiki.org/mailman/listinfo/devs

