From Fedora Project Wiki
(Update dependencies)
 
(38 intermediate revisions by 2 users not shown)
Line 6: Line 6:
 
* package older Gradle from 1.x line, if needed (optionall)
 
* 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
 
** some projects won't compile with Gradle 2.x or even incompatible version from 1.x line
 +
 +
== TODO ==
 +
 +
* packaging
 +
** new packages
 +
*** zinc (incremental Scala compiler)
  
 
== Bootstrap plan ==
 
== Bootstrap plan ==
Line 13: Line 19:
 
People involved: [[User:Mizdebsk|Mikolaj Izdebski]]
 
People involved: [[User:Mizdebsk|Mikolaj Izdebski]]
  
Current state: during phase 3
+
Current state: done, Gradle is in Fedora 22+
  
 
=== Phase 1 (initial bootstrap) ===
 
=== Phase 1 (initial bootstrap) ===
Line 69: Line 75:
 
* upstream patches
 
* upstream patches
 
* enable tests (if skipped)
 
* enable tests (if skipped)
 
== Dependencies ==
 
 
Gradle 2.1 build and test dependencies.
 
 
{| class="wikitable sortable"
 
|+
 
! 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
 
|
 
|
 
|-}
 

Latest revision as of 09:54, 23 July 2015

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

TODO

  • packaging
    • new packages
      • zinc (incremental Scala compiler)

Bootstrap plan

Plan for bootstrapping Gradle in Fedora.

People involved: Mikolaj Izdebski

Current state: done, Gradle is in Fedora 22+

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)