You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@samza.apache.org by "Chris Riccomini (JIRA)" <ji...@apache.org> on 2013/10/21 19:24:42 UTC

[jira] [Updated] (SAMZA-34) Cross build all Scala versions in a single build

     [ https://issues.apache.org/jira/browse/SAMZA-34?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Chris Riccomini updated SAMZA-34:
---------------------------------

    Attachment: multi-scala.zip

Attaching a demo of how to do this, courtesy of [~szczepiq].

{noformat}
Hey guys,
I've attached a small plugin that should help. Can you try it out (see the attached zip file).
The plugin solves a couple of other problems (not sure you have them):
can have specific dependencies for building against different scala runtime ('scala2_9_2Compile')
can have dependencies with wildcard '?' that is replaced with correct scala version depending on which runtime we're building against ("org.scalaz:scalaz-core_?:6.0.4")
you can specify scala versions declaratively and 'build' or 'assemble' task will build all variants.
The sample plugin is based on a demo my teammate has given during the Gradle Summit conference this year.
Please give this plugin a spin and let me know whether it works for you.
Hope that helps!
{noformat}

> Cross build all Scala versions in a single build
> ------------------------------------------------
>
>                 Key: SAMZA-34
>                 URL: https://issues.apache.org/jira/browse/SAMZA-34
>             Project: Samza
>          Issue Type: Bug
>          Components: build
>    Affects Versions: 0.6.0
>            Reporter: Chris Riccomini
>         Attachments: multi-scala.zip
>
>
> Our gradle build script only supports building artifacts with one Scala version at a time. You can run:
> {noformat}
> ./gradlew -PscalaVersion=2.8.1 clean publishToMavenLocal
> {noformat}
> or
> {noformat}
> ./gradlew -PscalaVersion=2.9.2 clean publishToMavenLocal
> {noformat}
> But you can't run a single build command that generates both 2.8.1, and 2.9.2 versions (for example). This is what SBT does. I think we'll need this in order to publish artifacts to Maven, since I believe Maven require all artifacts to be published in a single build.
> We should test this. If we can publish to Maven without this change, this is a pretty low priority item. If we can't publish to Maven unless we make this change, it's relatively high priority.



--
This message was sent by Atlassian JIRA
(v6.1#6144)