Automatically choose proper compiler bridge for dotty #2902

Merged
merged 1 commit into from Jan 11, 2017

Conversation

Projects
None yet
3 participants
@smarter
Contributor

smarter commented Jan 10, 2017

Before this commit, using dotty in your sbt project required to add:

  scalaCompilerBridgeSource := ("ch.epfl.lamp" % "dotty-sbt-bridge" %
    scalaVersion.value % "component").sources()

in your build.sbt. We might as well automatically do this, this reduces
the boilerplate for using dotty in your project to:

  scalaOrganization := "ch.epfl.lamp"
  scalaVersion := "0.1.1-SNAPSHOT"
  scalaBinaryVersion := "2.11" // dotty itself is only published as a
                               // 2.11 artefact currently

Note: I did not add a test for this since there is no released version of dotty yet, we could have a test that depends on a nightly build of dotty (http://central.maven.org/maven2/ch/epfl/lamp/dotty_2.11/) but I'm not sure if maven keeps old nightly builds around forever.

@eed3si9n eed3si9n added the ready label Jan 10, 2017

@dwijnand

I'll defer to @eed3si9n, as he understands how compiler bridges are meant to be used and customized.

@smarter

This comment has been minimized.

Show comment
Hide comment
@smarter

smarter Jan 10, 2017

Contributor

The single test failure appears to be spurious and is unrelated to this PR:

[info] Could not create file /tmp/sbt_ecf6163e/java-mixed/target/streams/$global/ivySbt/$global/streams/outjava.io.IOException: No such file or directory
Contributor

smarter commented Jan 10, 2017

The single test failure appears to be spurious and is unrelated to this PR:

[info] Could not create file /tmp/sbt_ecf6163e/java-mixed/target/streams/$global/ivySbt/$global/streams/outjava.io.IOException: No such file or directory
@eed3si9n

eed3si9n requested changes Jan 10, 2017 edited

I think it's generally ok, but could you add release notes in https://github.com/sbt/sbt/tree/0.13/notes/0.13.14 and clarify in there that Dotty support in sbt is an experimental feature that's controlled by EPFL, plz?

@smarter

This comment has been minimized.

Show comment
Hide comment
@smarter

smarter Jan 11, 2017

Contributor

Release notes added!

Contributor

smarter commented Jan 11, 2017

Release notes added!

@eed3si9n

Thanks!

@dwijnand

This comment has been minimized.

Show comment
Hide comment
@dwijnand

dwijnand Jan 11, 2017

Member

->compile,default here vs ->default(compile) in #2903... which one should it be?

Member

dwijnand commented Jan 11, 2017

->compile,default here vs ->default(compile) in #2903... which one should it be?

@smarter

This comment has been minimized.

Show comment
Hide comment
@smarter

smarter Jan 11, 2017

Contributor

Oops, that commit should not be there

Contributor

smarter commented Jan 11, 2017

Oops, that commit should not be there

Automatically choose proper compiler bridge for dotty
Before this commit, using dotty in your sbt project required to add:
  scalaCompilerBridgeSource := ("ch.epfl.lamp" % "dotty-sbt-bridge" %
    scalaVersion.value % "component").sources()
in your build.sbt. We might as well automatically do this, this reduces
the boilerplate for using dotty in your project to:
  scalaOrganization := "ch.epfl.lamp"
  scalaVersion := "0.1.1-SNAPSHOT"
  scalaBinaryVersion := "2.11" // dotty itself is only published as a
                               // 2.11 artefact currently
@smarter

This comment has been minimized.

Show comment
Hide comment
@smarter

smarter Jan 11, 2017

Contributor

Fixed

Contributor

smarter commented Jan 11, 2017

Fixed

@eed3si9n eed3si9n merged commit e851cfc into sbt:0.13 Jan 11, 2017

2 checks passed

codacy/pr Good work! A positive pull request.
Details
continuous-integration/travis-ci/pr The Travis CI build passed
Details

@eed3si9n eed3si9n removed the ready label Jan 11, 2017

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment