From Fedora Project Wiki

Revision as of 13:13, 17 October 2014 by Mizdebsk (talk | contribs) (Update dependencies)

Goals

  • package latest Gradle 2.x
  • implement local resolver so that packages can be built with Gradle
    • this includes Gradle itself
  • package older Gradle from 1.x line, if needed (optionall)
    • some projects won't compile with Gradle 2.x or even incompatible version from 1.x line

Bootstrap plan

Plan for bootstrapping Gradle in Fedora.

People involved: Mikolaj Izdebski

Current state: during phase 3

Phase 1 (initial bootstrap)

Phase 2 (local mode)

  • implement local mode using XMvn
  • package all Gradle build dependencies in wrapper rpm
    • binaries taken from the Internet
    • XMvn metadata added
  • from now on:

Phase 3 (dependency refinement)

  • while wrapper rpm is not empty:
    • pick one artifact from wrapper rpm
    • if it is not yet available in fedora:
      • build it from source and package it as rpm
      • skip tests if there are too many missing test dependencies
      • add any missing build or test dependencies to wrapper rpm
    • rebuild Gradle and run tests to make sure everything keeps working
    • if there are build or test failures, debug them and create patches
  • get rid of wrapper rpm
  • from now on:
    • Gradle with all dependencies are free from prebuilt binaries
    • everything is patched to work with artifact versions available in Fedora

Phase 4 (push to Fedora)

  • request FPC bootstrap exception
  • for all new packages:
    • do review (licensing etc)
    • cleanup spec file
    • submit for review
    • someone else reviews the package
    • package is checked into Fedora git and built in Koji
  • from now on:
    • we have gradle in Fedora

Phase 5 (further improvements)

  • implement javapackages macros for Gradle
  • prepare packaging documentation
  • announce gradle availability
  • upstream patches
  • enable tests (if skipped)

Dependencies

Gradle 2.1 build and test dependencies.

groupId artifactId extension classifier version Fedora package Fedora version
biz.aQute.bnd bndlib pom 2.1.0
biz.aQute.bnd bndlib jar 2.1.0
biz.aQute.bnd parent pom 2.1.0
cglib cglib-nodep jar 2.2.2
cglib cglib-nodep pom 2.2.2
cglib cglib-nodep pom 2.2
cglib cglib-nodep jar 2.2
ch.qos.logback logback-classic pom 1.0.13 logback 1.1.1
ch.qos.logback logback-classic jar 1.0.13 logback 1.1.1
ch.qos.logback logback-core pom 1.0.13 logback 1.1.1
ch.qos.logback logback-core jar 1.0.13 logback 1.1.1
ch.qos.logback logback-parent pom 1.0.13 logback 1.1.1
com.drewwilson.code jquery.tipTip js minified 1.3
com.drewwilson.code jquery.tipTip pom 1.3
com.gradleware.analytics analytics-plugin jar 0.1-20140728061809
com.mashape.unirest unirest-java pom 1.3.6
com.mashape.unirest unirest-java jar 1.3.6
com.typesafe.sbt compiler-interface pom 0.13.0
com.typesafe.sbt compiler-interface jar sources 0.13.0
com.typesafe.sbt incremental-compiler jar 0.13.0
com.typesafe.sbt incremental-compiler pom 0.13.0
com.typesafe.sbt sbt-interface jar 0.13.0
com.typesafe.sbt sbt-interface pom 0.13.0
com.typesafe.zinc zinc pom 0.3.0
com.typesafe.zinc zinc jar 0.3.0
docbook docbook-xsl zip 1.75.2
docbook docbook-xsl pom 1.75.2
flot flot pom 0.8.1
flot flot js min 0.8.1
jquery jquery.min js 1.11.0
jquery jquery.min js 1.8.0
junit junit pom 4.11 junit 4.11
junit junit pom 4.12-beta-1 junit 4.11
junit junit pom 4.12-beta-2 junit 4.11
lato bold ttf DvlFBScY1r-FMtZSYIYoYw 6
lato bold-italic ttf HkF_qI1x_noxlxhrhMQYEKCWcynf_cDxXwCLxiixG1c 6
lato regular ttf v0SdcGFAl2aezM9Vq_aFTQ 6
lato regular-italic ttf LqowQDslGv4DmUBAfWa2Vw 6
net.rubygrapefruit native-platform pom 0.10 native-platform 0.3
net.rubygrapefruit native-platform jar 0.10 native-platform 0.3
net.rubygrapefruit native-platform-freebsd-amd64 pom 0.10
net.rubygrapefruit native-platform-freebsd-amd64 jar 0.10
net.rubygrapefruit native-platform-freebsd-i386 pom 0.10
net.rubygrapefruit native-platform-freebsd-i386 jar 0.10
net.rubygrapefruit native-platform-linux-amd64 pom 0.10 native-platform 0.3
net.rubygrapefruit native-platform-linux-amd64 jar 0.10 native-platform 0.3
net.rubygrapefruit native-platform-linux-i386 pom 0.10
net.rubygrapefruit native-platform-linux-i386 jar 0.10
net.rubygrapefruit native-platform-osx-amd64 pom 0.10
net.rubygrapefruit native-platform-osx-amd64 jar 0.10
net.rubygrapefruit native-platform-osx-i386 jar 0.10
net.rubygrapefruit native-platform-osx-i386 pom 0.10
net.rubygrapefruit native-platform-windows-amd64 jar 0.10
net.rubygrapefruit native-platform-windows-amd64 pom 0.10
net.rubygrapefruit native-platform-windows-i386 pom 0.10
net.rubygrapefruit native-platform-windows-i386 jar 0.10
org.apache.httpcomponents httpasyncclient jar 4.0
org.apache.httpcomponents httpasyncclient pom 4.0
org.apache.httpcomponents httpcomponents-asyncclient pom 4.0
org.apache.maven maven-ant-tasks pom 2.1.3
org.apache.maven maven-ant-tasks jar 2.1.3
org.apache.maven.wagon wagon-http-shared4 jar 2.4
org.apache.maven.wagon wagon-http-shared4 pom 2.4
org.apache.sshd sshd pom 0.10.0 apache-sshd 0.11.0
org.apache.sshd sshd-core pom 0.10.0
org.apache.sshd sshd-core jar 0.10.0 apache-sshd 0.11.0
org.bouncycastle bcpg-jdk15 jar 1.46
org.bouncycastle bcpg-jdk15 pom 1.46
org.bouncycastle bcprov-jdk15 jar 1.46
org.bouncycastle bcprov-jdk15 pom 1.46
org.codehaus.groovy groovy pom 2.3.7 groovy-lib 1.8.9
org.codehaus.groovy groovy pom 2.4.0-beta-1 groovy-lib 1.8.9
org.codehaus.groovy groovy pom 2.4.0-beta-2 groovy-lib 1.8.9
org.codehaus.groovy groovy pom 2.4.0-beta-3 groovy-lib 1.8.9
org.codehaus.groovy groovy-all pom 2.3.6
org.codehaus.groovy groovy-all jar 2.3.6
org.codehaus.sonar-plugins parent pom 13
org.codehaus.sonar-plugins sonar-runner jar 2.0
org.codehaus.sonar-plugins sonar-runner pom 2.0
org.codehaus.sonar sonar pom 2.9
org.codehaus.sonar sonar-batch pom 2.9
org.codehaus.sonar sonar-batch jar 2.9
org.codehaus.sonar sonar-batch-bootstrapper pom 2.9
org.codehaus.sonar sonar-batch-bootstrapper jar 2.9
org.codehaus.sonar sonar-plugin-api jar 2.9
org.codehaus.sonar sonar-plugin-api pom 2.9
org.codenarc CodeNarc jar 0.21 codenarc 0.17
org.codenarc CodeNarc pom 0.21 codenarc 0.17
org.gmetrics GMetrics jar 0.5 gmetrics 0.6
org.gmetrics GMetrics pom 0.5 gmetrics 0.6
org.mortbay.jetty jetty pom 6.1.25
org.mortbay.jetty jetty jar 6.1.25
org.mortbay.jetty jetty-annotations jar 6.1.25
org.mortbay.jetty jetty-annotations pom 6.1.25
org.mortbay.jetty jetty-naming jar 6.1.25
org.mortbay.jetty jetty-naming pom 6.1.25
org.mortbay.jetty jetty-parent pom 10
org.mortbay.jetty jetty-parent pom 7
org.mortbay.jetty jetty-plus jar 6.1.25
org.mortbay.jetty jetty-plus pom 6.1.25
org.mortbay.jetty jetty-util jar 6.1.25
org.mortbay.jetty jetty-util pom 6.1.25
org.mortbay.jetty jsp-2.1 jar 6.1.14
org.mortbay.jetty jsp-2.1 pom 6.1.14
org.mortbay.jetty jsp-api-2.1 jar 6.1.14
org.mortbay.jetty jsp-api-2.1 pom 6.1.14
org.mortbay.jetty project pom 6.1.14
org.mortbay.jetty project pom 6.1.25
org.scala-lang.modules scala-xml_2.11 pom 1.0.2
org.scala-lang scala-library pom 2.11.3 scala 2.10.4
org.scalatest scalatest_2.11 pom 2.2.2
org.scalatest scalatest_2.11 pom 2.2.3-SNAP1
org.scalatest scalatest_2.11 pom 2.2.3-SNAP2
org.sonatype.pmaven pmaven-common pom 0.8-20100325
org.sonatype.pmaven pmaven-common jar 0.8-20100325
org.sonatype.pmaven pmaven-groovy jar 0.8-20100325
org.sonatype.pmaven pmaven-groovy pom 0.8-20100325
org.spockframework spock-core jar 0.7-groovy-2.0 spock-core 0.7
org.spockframework spock-core pom 0.7-groovy-2.0 spock-core 0.7
ubuntumono bold ttf ceqTZGKHipo8pJj4molytp_TkvowlIOtbR7ePgFOpF4 3
ubuntumono bold-italic ttf n_d8tv_JOIiYyMXR4eaV9WsGzsqhEorxQDpu60nfWEc 3
ubuntumono regular ttf ViZhet7Ak-LRXZMXzuAfkZ0EAVxt0G0biEntp43Qt6E 3
ubuntumono regular-italic ttf KAKuHXAHZOeECOWAHsRKA-LrC4Du4e_yfTJ8Ol60xk0 3
xhtmlrenderer xhtmlrenderer jar R8rc1
xhtmlrenderer xhtmlrenderer pom R8rc1
xslthl xslthl jar 2.0.1
xslthl xslthl pom 2.0.1