sbt, the interactive build tool
Go to file
Adriaan Moors 9a856be5ca Test for regression triggered by #2325
The crash manifested as a `NotSerializableException`,
because we don't visit the private subtrees of the API graph,
which would previously force all Lazy stubs as a side-effect.
There was a backstop in `AbstractLazy` (`writeReplace`), but
somehow that didn't work.

```
java.io.NotSerializableException: sun.reflect.generics.reflectiveObjects.ParameterizedTypeImpl
[...]
 at java.io.ObjectOutputStream.writeObject(ObjectOutputStream.java:329)
 at xsbt.api.SourceFormat$.writes(SourceFormat.scala:24)
 at xsbt.api.SourceFormat$.writes(SourceFormat.scala:15)
 at sbt.inc.TextAnalysisFormat21661anonfun.apply(TextAnalysisFormat.scala:329)
 at sbt.inc.TextAnalysisFormat21661anonfun.apply(TextAnalysisFormat.scala:329)
 at sbt.inc.TextAnalysisFormat21661anonfun at java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.javr$.aggregate(TextAnalysisFormat.scala:18)
 at sbt.inc.TextAnalysisFormat$.objToString(TextAnalysisFormat.scala:329)
 at sbt.inc.TextAnalysisFormat21661anonfun.apply(TextAnalysisFormat.scala:213)
 at sbt.inc.TextAnalysisFormat21661anonfun.apply(TextAnalysisFormat.scala:213)
 at sbt.inc.TextAnalysisFormat21661anonfun21661writeMap.apply(TextAnalysisFormat.scala:381)
 at sbt.inc.TextAnalysisFormat21661anonfun21661writeMap.apply(TextAnalysisFormat.scala:377)
 at scala.collection.mutable.ResizableArray.foreach(Resizable at sbt.inc.TextAnalysisFormalection.mutable.ArrayBuffer.foreach(ArrayBuffer.scala:47)
 at sbt.inc.TextAnalysisFormat$.sbt21661writeMap(TextAnalysisFormat.scala:377)
 at sbt.inc.TextAnalysisFormat$.write(TextAnalysisFormat.scala:216)
 at sbt.inc.TextAnalysisFormat21661anonfun.apply(TextAnalysisFormat.scala:64)
 at sbt.inc.TextAnalysisFormat21661anonfun.apply(TextAnalysisFormat.scala:64)
 at sbt.inc.TextAnalysisFormat21661anonfun.apply(TextAnalysisFormat.scala:64)
 at sbt.inc.FormatTimer$.aggregate(TextAnalysisFo at sbt.inc.TextAnalysisFormat21661anonfun.scala:25)
 at sbt.inc.TextAnalysisFormat$.write(TextAnalysisFormat.scala:64)
 at sbt.inc.FileBasedStore21661anon21661anonfun.apply(FileBasedStore.scala:12)
 at sbt.inc.FileBasedStore21661anon21661anonfun.apply(FileBasedStore.scala:12)
 at sbt.Using.apply(Using.scala:24)
 at sbt.inc.FileBasedStore21661anon.set(FileBasedStore.scala:12)
 at sbt.inc.AnalysisStore21661anon.set(AnalysisStore.scala:16)
 at sbt.inc.AnalysisStore21661anon.set(AnalysisStore.scala:27)
 at sbt.Defaults21661anonfun.apply(Defaults.scala:799)
 at sbt.Defaults21661anonfun at sbt.inc.TextAts.scala:793)
 at scala.Function121661anonfun.apply(Function1.scala:47)
 at sbt.21661anonfun21661u2219.apply(TypeFunctions.scala:40)
 at sbt.std.Transform21661anon.work(System.scala:63)
 at sbt.Execute21661anonfun21661anonfun.apply(Execute.scala:226)
 at sbt.Execute21661anonfun21661anonfun.apply(Execute.scala:226)
 at sbt.ErrorHandling$.wideConvert(ErrorHandling.scala:17)
 at sbt.Execute.work(Execute.scala:235)
 at sbt.Execute21661anonfun.apply(Exe at sbt.Using.apply(Using.scala:24)
 mit.apply(Execute.scala:226)
 at sbt.ConcurrentRestrictions21661anon21661anonfun.apply(ConcurrentRestrictions.scala:159)
 at sbt.CompletionService21661anon.call(CompletionService.scala:28)
 at java.util.concurrent.FutureTask.innerRun(FutureTask.java:303)
 at java.util.concurrent.FutureTask.run(FutureTask.java:138)
 at java.util.concurrent.Executors.call(Executors.java:439)
 at java.util.concurrent.FutureTask.innerRun(FutureTask.java:303 at sbt.std.Transform21661anon.work(System(FutureTask.java:138)
 at java.util.concurrent.ThreadPoolExecutor.runTask(ThreadPoolExecutor.java:895)
 at java.util.concurrent.ThreadPoolExecutor.run(ThreadPoolExecutor.java:918)
 at java.lang.Thread.run(Thread.java:695)

[error] (compile:compile) java.io.NotSerializableException: sun.reflect.generics.reflectiveObjects.ParameterizedTypeImpl
[error] Total time: 2 s, completed Dec 21, 2015 12:05:19 PM
```
2015-12-21 22:19:28 -08:00
cache Fix additional warnings 2015-08-07 00:23:14 +02:00
compile Do not compute name hashes for private members. 2015-12-18 14:32:43 -08:00
interface Replace procedure syntax by explicit Unit annotation 2015-08-04 10:07:38 +02:00
ivy Merge pull request #2297 from sbt/wip/fix-2264 2015-12-03 02:11:52 -05:00
launch Remove launcher tests 2015-06-20 14:21:59 -04:00
licenses move remaining pieces of sbt subproject to sbt_pending and fix notices 2010-09-21 21:55:50 -04:00
main Fixes #2264. Use explicit artifacts if any, fallback to hardcoded 2015-12-02 16:41:02 -05:00
notes Merge pull request #2261 from Duhemm/fix-1171 2015-12-16 13:24:42 -05:00
project Bump up Scala version in project/p.sbt 2015-12-14 11:38:57 -05:00
run Fix additional warnings 2015-08-07 00:23:14 +02:00
sbt Test for regression triggered by #2325 2015-12-21 22:19:28 -08:00
sbt-maven-resolver/src Add handling for transitive exclude rules in pom.xml files. 2015-07-23 15:32:27 -04:00
scripted Continue to run tests after passing pending test 2015-08-19 08:26:21 +02:00
src/main/conscript 0.13.9 2015-08-10 20:32:24 -04:00
tasks Fixes #2302. Don't check pre and post conditions in sbt.Execute by default. 2015-12-07 22:14:55 +01:00
testing Replace procedure syntax by explicit Unit annotation 2015-08-04 10:07:38 +02:00
util Add a test that we`re able to parse inner classes. 2015-11-10 14:45:04 -08:00
.gitattributes Added .gitattributes file. 2013-04-25 00:06:51 +08:00
.gitignore support defining Projects in .sbt files 2012-12-09 20:40:41 -05:00
.travis.yml Move update-classifiers-snapshot-srcs as it fails with MavenResolverPlugin. 2015-08-25 22:03:12 +01:00
CONTRIBUTING.md Upgrade to 0.13.9. 2015-08-19 12:16:03 +01:00
LICENSE Update CONTRIBUTING.md 2014-04-14 12:16:06 -04:00
NOTICE Update CONTRIBUTING.md 2014-04-14 12:16:06 -04:00
README.md Fix intended formatting in README. 2015-05-27 07:33:26 +01:00
api.specification Macro def aware recompilation. 2012-03-04 17:35:51 +01:00
build.sbt Bumping Scala version to 2.10.6. 2015-12-14 05:26:34 -05:00
scripted.specification New scripted test framework 2009-11-09 09:34:52 -05:00

README.md

sbt

sbt is a build tool for Scala, Java, and more.

For general documentation, see http://www.scala-sbt.org/.

Issues and Pull Requests

Please read CONTRIBUTING carefully before opening a GitHub Issue.

The short version: try StackOverflow and sbt-dev. Don't open an Issue.

sbt 0.13

This is the 0.13.x series of sbt.

  • Setup: Describes getting started with the latest binary release.
  • FAQ: Explains how to get help and more.
  • Google Code: hosts sbt 0.7.7 and earlier versions

license

See LICENSE.