Commit Graph

5624 Commits

Author SHA1 Message Date
Eugene Yokota beb1fe3c5a Fail when the forked test harness fails
Fail when the forked test harness fails using NonFatal
Fixes #2442/#2722

Add another fork-uncaught scripted test
Originally from https://github.com/retronym/sbt-test-fork-swallows-error
2017-01-15 05:49:07 -05:00
eugene yokota 69385029ed Merge pull request #2914 from eed3si9n/fport/2681
[fport] Fix #2677: Tags.ForkedTestGroup doesn't work
2017-01-14 23:08:44 -05:00
Paul Draper f836ba0c63 Fix #2677: Tags.ForkedTestGroup doesn't work
Move tag to correct task
2017-01-14 21:58:37 -05:00
eugene yokota 28825d4eb5 Merge pull request #2912 from eed3si9n/fport/2630
[fport] Loading performance
2017-01-14 21:56:44 -05:00
eugene yokota 355b724bf2 Merge pull request #2915 from eed3si9n/wip/2692
[fport] Fixes #2686 by resetting scalaVersion for updateSbtClassifiers
2017-01-14 09:08:02 -05:00
eugene yokota fd36a20183 Merge pull request #2907 from eed3si9n/topic/logging
Split log output per channel
2017-01-14 08:34:44 -05:00
eugene yokota abaece6c96 Merge pull request #2913 from eed3si9n/fport/2653
[fport] dependsOn can now be used inside a .sbt file for a subproject
2017-01-14 08:19:42 -05:00
Eugene Yokota e0e9f8d1fc Fix patch error 2017-01-14 07:54:25 -05:00
eugene yokota 3ce06e15c5 Merge pull request #2911 from eed3si9n/fport/cached-resolution-configurations
[fport] Adds back dependency-management /cached-resolution-configurations
2017-01-14 07:45:20 -05:00
Eugene Yokota f3817ad64f Fixes #2686 by resetting scalaVersion for updateSbtClassifiers
Ref #2634

updateSbtClassifiers uses an artificially created dependency graph set
in classifiersModule. The problem is that ivyScala instance is reused
from the outer scope that has the user project's scalaVersion as
demonstrated as follows:

    scala> val is = (ivyScala in updateSbtClassifiers).eval
    is: Option[sbt.IvyScala] =
Some(IvyScala(2.9.3,2.9.3,List(),true,false,true,org.scala-lang))

This change fixes #2686 by redefining ivyScala with scalaVersion and
scalaBinaryVersion scoped to updateSbtClassifiers task. The existing
scripted test was modified to reproduce the bug.
2017-01-14 07:37:32 -05:00
Anatoly Fayngelerin 6dc2cf4210 dependsOn can now be used inside a .sbt file for a subproject 2017-01-14 07:18:10 -05:00
Eugene Yokota 88a644eb4d Use parent's toString 2017-01-14 06:35:27 -05:00
Eugene Yokota dc71b171da Cache now takes in account of the parent of the classloader 2017-01-14 06:35:07 -05:00
Eugene Yokota 0cfde91a4b Remove unnecessary val 2017-01-14 06:31:20 -05:00
Eugene Yokota 700017be91 Cache based on the underlying URLs of the ClassLoader per review 2017-01-14 06:31:04 -05:00
Eugene Yokota 7a00ba3925 Display log when sbt loading is going to pause
Def.make could take 10099ms for 100 subprojects. This would display
logs probably for projects with more than 10 subprojects, which might
pause for a few seconds during load.
2017-01-14 06:30:45 -05:00
Eugene Yokota 843f79ffd9 Improve structureIndex call by using Vector
This call takes around 8035ms for 100 subprojects. I don't think using
Vector here had any noticeable effect.
2017-01-14 06:30:16 -05:00
Eugene Yokota 3e29a48b56 Cache global user settings 2017-01-14 06:28:00 -05:00
Eugene Yokota f523b9da0d Add perf logs 2017-01-14 06:25:07 -05:00
Eugene Yokota 622823fa36 Adds back dependency-management /cached-resolution-configurations
Ref #2573 #2574, #2513, #2435
2017-01-14 05:52:05 -05:00
Eugene Yokota 2b6253cc4a Fix scripted project/extra 2017-01-14 03:00:07 -05:00
Eugene Yokota 0365d7cb11 Uncomment publishEvent 2017-01-14 02:30:59 -05:00
Eugene Yokota 9a33550c79 Fix the scripted actions/set 2017-01-14 02:26:23 -05:00
Eugene Yokota b34e182d21 Bump util, lm, and zinc 2017-01-14 00:57:46 -05:00
Eugene Yokota 8c9dfda089 Split log output per channel
LogManager implementation is modified to use ManagedLogger, which can swap out backing Appenders without re-creating the log instance.

The State was also changed to track `currentCommand: Option[Exec]`. `Exec` knows the origin of the command invocation, and using that we can now send the network-originated events only to the network clients.

Combined together, this implements log splitting between the sbt clients (channels).
2017-01-13 03:00:02 -05:00
Dale Wijnand c1648ac0a5 Merge pull request #2859 from eed3si9n/wip/protocol
Start lightweight client
2017-01-12 15:43:32 +00:00
Eugene Yokota 66301dbaf1 Adjust from rebasing 2017-01-06 11:35:08 -05:00
Eugene Yokota a2df1a4b53 Formatting fix 2017-01-06 11:27:41 -05:00
Eugene Yokota a0dde10f8a Use NonFatal 2017-01-06 11:27:41 -05:00
Eugene Yokota 9ee69e5dd4 Fix test 2017-01-06 11:27:41 -05:00
Eugene Yokota 892e25d23f Introduce execId that gets sent back
Now the client can put an id on each exec.
This can then be tracked and/or be used to block the user input.
2017-01-06 11:27:41 -05:00
Eugene Yokota 1bf50e10c8 Use Exec in State 2017-01-06 11:27:41 -05:00
Eugene Yokota d96ef58605 Unifying towards using events 2017-01-06 11:27:06 -05:00
Eugene Yokota 46d8f952e4 Refactor to make NetworkChannel per client connection 2017-01-06 11:27:06 -05:00
Eugene Yokota d618f91c6d Replace var with AtomicReference 2017-01-06 11:27:06 -05:00
Eugene Yokota fa7253ece3 Start lightweight client
This is the beginning of a lightweight client, which talks to the
server over Contraband-generated JSON API. Given that the server is
started on port 5173:

```
$ cd /tmp/bogus
$ sbt client localhost:5173
> compile
StatusEvent(Processing, Vector(compile, server))
StatusEvent(Ready, Vector())
StatusEvent(Processing, Vector(, server))
StatusEvent(Ready, Vector())
```
2017-01-06 11:27:06 -05:00
Eugene Yokota 272e733b87 Update to Contraband 2017-01-06 11:27:06 -05:00
eugene yokota 274c8ec65f Merge pull request #2892 from dwijnand/upgrades
-sbinary/+sjson-new, -datatype/+contraband & upgrades
2017-01-05 18:22:51 -05:00
Dale Wijnand 7fcfec8b8e
-sbinary/+sjson-new, -datatype/+contraband & upgrades
* start to replace sbinary with sjson-new
* upgrade from sbt/datatype to sbt/contraband
* upgrade and migrate to new sbt modules APIs
2017-01-05 21:59:00 +00:00
Dale Wijnand 50df95953e
Add missing "d" task testing in actions/depends-on 2017-01-05 14:40:39 +00:00
Eugene Yokota 104c5f53b3
Adding sleep in scripted test to make sure timestamp bumps [fport]
Fixes #2546. Ref #958
scripted compiler-project/error-in-invalidated has been failing
frequently on Travis CI. It seems like incremental compiler is not
catching the change in source occasionally for `changes/A2.scala`.

Forward-port of #2565
2017-01-05 14:40:39 +00:00
eugene yokota d9cc0c2f0b Merge pull request #2844 from dwijnand/reunite
Add props to define source dependencies on io/util/lm/zinc
2016-12-11 21:59:57 -05:00
Dale Wijnand 337d1130e5
Make sure publishLocalBin has a default implementation 2016-12-11 12:13:11 +00:00
Dale Wijnand 43821667bf
Upgrade scalariform version 2016-12-11 12:13:11 +00:00
Dale Wijnand 6a46c62524
Ugh Scalariform, ruining my formatting, wonderful 2016-12-11 12:08:28 +00:00
Dale Wijnand 5945e3e477
Bump to sbt 0.13.13 2016-12-11 12:08:28 +00:00
Dale Wijnand b917011082
Add props to define source dependencies on io/util/lm/zinc
Use either:

* -Dsbtio.path / -Dsbtutil.path / -Dsbtlm.path / -Dsbtzinc.path on the
  command line, or

* -Dsbtio.path= / sbtutil.path= / sbtlm.path / -Dsbtzinc.path in
  project/local.properties
2016-12-11 12:08:28 +00:00
Dale Wijnand cb2e17a347
Cleanup Dependencies 2016-12-11 12:08:28 +00:00
eugene yokota 8a9ce1bf13 Merge pull request #2858 from ashleymercer/1.0.x
JUnitXmlTestsListener now correctly flags ignored, skipped and pending tests
2016-12-02 13:54:28 -05:00
Ashley Mercer f92a0ab8a5 JUnitXmlTestsListener now correctly flags ignored, skipped and pending tests
Fixes #2198 Ref #2854

Generated Junit-style XML reports now include a count of ignored,
skipped and pending tests; and individual tests are correctly flagged
with the <skipped/> element.
2016-12-01 10:45:13 +00:00