Where communities thrive


  • Join over 1.5M+ people
  • Join over 100K+ communities
  • Free without limits
  • Create your own community
People
Repo info
Activity
  • Jun 22 2015 11:10
    japgolly commented #2066
  • Jun 22 2015 08:25
    keepscoding commented #2044
  • Jun 21 2015 03:24
    xerial commented #157
  • Jun 21 2015 00:10
    eed3si9n unlabeled #2057
  • Jun 21 2015 00:10

    eed3si9n on 0.13

    Adds bundledLauncherProj to all… Remove launcher tests Add unit tests to Travis and 3 more (compare)

  • Jun 21 2015 00:10
    eed3si9n closed #2057
  • Jun 21 2015 00:10

    eed3si9n on fixbuild

    (compare)

  • Jun 20 2015 18:42
    eed3si9n synchronize #2057
  • Jun 20 2015 18:42

    eed3si9n on fixbuild

    Fix typo (compare)

  • Jun 20 2015 18:23

    eed3si9n on fixbuild

    Adds bundledLauncherProj to all… Remove launcher tests Add unit tests to Travis and 1 more (compare)

  • Jun 20 2015 18:23
    eed3si9n synchronize #2057
  • Jun 20 2015 14:59

    eed3si9n on scalaversionbump

    (compare)

  • Jun 20 2015 14:59

    eed3si9n on 0.13

    Bumping up Scala version to 2.1… Try to keep bincompat Fixes #1666 and 1 more (compare)

  • Jun 20 2015 14:59
    eed3si9n unlabeled #2068
  • Jun 20 2015 14:59
    eed3si9n closed #2068
  • Jun 20 2015 14:59
    eed3si9n closed #1666
  • Jun 20 2015 14:57
    eed3si9n commented #2068
  • Jun 20 2015 12:55
    dwijnand commented #2068
  • Jun 20 2015 04:51
    eed3si9n synchronize #2068
  • Jun 20 2015 04:51

    eed3si9n on scalaversionbump

    Fixes #1666 (compare)

Sukant Hajra
@shajra
but that doesn't jive with my world view of how these things are ordered.
eugene yokota
@eed3si9n
basically avoid using global settings for built-in keys
and also make sure you have override def requires = plugins.JvmPlugin
so your stuff comes after sbt's default settings (which themselves are also auto plugins)
Sukant Hajra
@shajra
@eed3si9n is there a way to inspect the order that plugins are loaded.
I think I'm getting away with this because I'm not specifying the requirement of the JvmPlugin, and it's running after me, and not before.
which I'm inclined to correct if that's the case.
eugene yokota
@eed3si9n
there's sbt --debug output, but the order really depends on each user's environment
if the auto plugin doesn't declare dependency it would be placed randomly
Sukant Hajra
@shajra
psuedo-randomly, I hope.
eugene yokota
@eed3si9n
which is an oddity we will correct in sbt 1.0
Sukant Hajra
@shajra
there's no way to specify constraints more richly than just requires, right? It seems like there's a whole set of constraints like "before" and "after", in addition to just "requires", which implies "after".
eugene yokota
@eed3si9n
just requires and auto triggering
Sukant Hajra
@shajra
and the JvmPlugin is what's setting scalacOptions for sure?
eugene yokota
@eed3si9n
yea
and it should go at the project-level
so doing anything at the buildSettings or globalSettings won't work
Sukant Hajra
@shajra
that's weird, because somehow, I am, and it has been "working"
I'm going to try to figure out how/why.
Adelbert Chang
@adelbertc
@eed3si9n you the man
Sukant Hajra
@shajra
@eed3si9n okay, this puzzle persists. In my plugin, I'm definitely both 1) declaring requires on JvmPlugin and 2) doing a "scalacOptions ++=" in globalSettings.
but somehow my global settings of scalacOptions are making their way all the way up to project/compile:compile::scalacOptions
I'm close to saying "it works, forget about it." but I'll hunt further if anyone has ideas. Once bitten by curiosity, I like to see these things through.
Adelbert Chang
@adelbertc
is there a way to get the cross-module dependencies in a multiproject? e.g. for something like val foo = project.in(file(...)).dependsOn(bar, quux), i am trying to write a Task that when in foo gives bar and quux. i've chased it down to using the thisProject key which gives me http://www.scala-sbt.org/0.13.15/api/index.html#sbt.ResolvedProject on which i can call dependencies but the information given in a ProjectRef is not enough to reconstruct the actual sbt project ref
Adelbert Chang
@adelbertc
nvm i found it
i think
no i didnt i lied
eugene yokota
@eed3si9n
you likely have to go get BuildStructure from Extracted, which you can get from state.value, but it's internal, and i'm not making any promises there
Adelbert Chang
@adelbertc
i like the disclaimer :)
@eed3si9n ah ok so maybe i just need to be able to get a list of all projects in the build - do I still need to use BuildStructure to get that information?
i'm basically trying to find the transitive closure of source dependencies using sbt-dependency-graph. i have the graph for a given project, now i just need to prune out the source dependencies which i can do if i have all projects in the build by just filtering
eugene yokota
@eed3si9n
i have to go soon, but you could try hacking around basedon this imple - https://github.com/sbt/sbt/issues/3030#issuecomment-295828118
Adelbert Chang
@adelbertc
hm interesting
will take a look, thanks!
Nathan Canning
@ncanning
quick question: is there a way to include library dependencies only for development, similar to ruby's bundler groups?
Sukant Hajra
@shajra
hmm... what is the difference between :== and :=?
Sukant Hajra
@shajra
I'm in the middle of a private[sbt] macro definition now. This is hard to figure out.
Sukant Hajra
@shajra
Okay, I'm back home again, and thinking of this puzzle one last time. Here's where I'm confused. the JvmPlugin according to "sbt -debug" is running before my plugins, and according to the source, it appears to be setting project/compile:scalacOptions and project/test:scalacOptions. Then my plugins after the fact set project/*:scalacOptions, which has a lower precedence in the delegation chain. Why aren't these settings lost?
Sukant Hajra
@shajra
@ncanning I've not heard of people doing that. What kind of dependencies? Something about this request seems odd.
Sukant Hajra
@shajra
I just realized the SBT documentation has a page I haven't read before (probably new with 13.x or something).
Sukant Hajra
@shajra
Yeah, someone pointed me to this earlier, and I think upon a second read, it answers my question: http://www.scala-sbt.org/0.13/docs/Scope-Delegation.html
Sukant Hajra
@shajra
I think I've been hobbling with a really messed up denotation of how the DSL works. I assumed order dependence of settings, but there's only order dependence when there's no delegation (the "old" value is lexically earlier on the page or from a previous plugin). When there's delegation, the order of the settings doesn't matter. Something delegated to can be defined later lexically, or by a downstream plugin.
Dale Wijnand
@dwijnand
That is correct.
Jorge
@jvican
You are looking for units which is in BuildStructure.
val buildStructure = TaskKey[BuildStructure]("build-structure", "Provides access to the build structure, settings, and streams manager.", DTask)
Dale Wijnand
@dwijnand
That's what extracted uses too BTW
Jorge
@jvican
Yes, that's my understanding too
Salar Rahmanian
@softinio
I am using sbt to build my code