Scala.js v0.5.0-M3 is available!

427 views
Skip to first unread message

Sébastien Doeraene

unread,
May 22, 2014, 4:56:57 PM5/22/14
to scal...@googlegroups.com
Hi all,

We have just tagged and published Scala.js v0.5.0-M3. This is a new important milestone for 0.5.0, and hopefully the last one before RC1. We would appreciate it very much if you could test your projects with this version.

Get started

If you haven't tested M2 yet, first read the announcement for it here:
https://groups.google.com/forum/#!topic/scala-js/yP8RArFZAXM
It contains a lot of information about 0.5.x.
From M2, all you need to do to upgrade to M3 is change the version number in project/build.sbt.

scalajs-dom and scalajs-jquery 0.5-SNAPSHOT are available for M3.

Important bug fixes
  • #644 Major bug in source maps, which were basically broken
  • #596 #603 Error messages with packageJS and TypeCreator, Trees$Transformer, and others.
  • #599 Compiler crash when compiler the tests of Shapeless
  • Various (many) compiler bugs in obscure corner cases (detected by our shiny new IR checker)
Improvements to classpath and dependency management

M2 had introduced a way for Scala.js libraries to declare dependencies on JavaScript libraries. However, it was not flexible enough and, for example, packageJS would fail to process correctly these dependencies. We have refactored completely the way we manage our classpaths and dependencies, and linkers (packageJS, fastOptJS and fullOptJS) so that it is more flexible.
The public API (through the Tools) to use these outside of the sbt plugin has also been improved dramatically, including with the input of Haoyi's wishes for uTest and Fiddle. We hope it's going to be enough, this time :-)

A fun tool: scalajsp

In Scala.js 0.5.x, the compiler itself does not emit JavaScript directly, but it emits binary .sjsir files instead. The linkers (fastOptJS et al.) read these and then emit JavaScript. But reading raw .sjsir files is impossible for a human. So, just like Java has its javap command to print the contents of a .class file, Scala.js now has its own scalajsp command to display the contents of a .sjsir file.
In M3, it is only available as an unpublished project in the Scala.js build. So if you want to use it, you have to clone the Scala.js repo, sbt into it, and then run
> scalajs-cli/run <path/to/file.sjsir>
to see magic happen.

To see more options, run
> scalajs-cli/run

In RC1 we'll try to provide an actual command line interface for this tool (and others), outside of sbt.


Have fun!
Sébastien and Tobias

Haoyi Li

unread,
May 23, 2014, 3:13:42 AM5/23/14
to Sébastien Doeraene, scal...@googlegroups.com
I got uTest building without too much difficulty with M3, the plugin's API is pretty sweet =) Going to be a bit longer before I polish things up enough to be worth publishing, but first steps worked great. Hopefully the Scala-Js-Fiddle migration is equally painless

Some bumps along the way:
  • It appears to be no longer OK to pass a javascript array to a Scala function expecting a scala.Array; you have to type the function to expect a js.Array instead. If you don't, you get ClassCastExceptions thrown at you. This didn't use to be the case in 0.4.3.
  • JSConsole gets messages, but only one line at a time; for example, multiline println's are split over multiple messages. I don't know if this is expected, but it certainly surprised me. Is there also risk of buffering/chunking of extremely-long printlns? If so, we should build a proper streaming protocol to reconstitute the packets on the other side.
  • my NodeJSEnv seems to be randomly segfaulting on me. I don't know if it's my fault, node's fault, or ScalaJS's fault, but it's happening.


--
You received this message because you are subscribed to the Google Groups "Scala.js" group.
To unsubscribe from this group and stop receiving emails from it, send an email to scala-js+u...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Sébastien Doeraene

unread,
May 23, 2014, 3:45:35 AM5/23/14
to Haoyi Li, scal...@googlegroups.com

Hi,

These are great news! To answer your comments:

1) It was never ok to do so. It used to not crash as early as it does now, but if you used the scala.Array in any way it would crash. Now you get a proper ClassCastException when you enter Scala code.

2) It is expected, AFAICT. That is the way console.log works: line by line. println() explicitly decomposes multiline strings to be able to pass them to console.log.

3) Hum that is unfortunate. We have never seen that. Can you give more info about your setup?

Cheers,
Sébastien

Anton Kulaga

unread,
May 23, 2014, 6:08:34 AM5/23/14
to scal...@googlegroups.com
Wonderful!

I will move my libs to v.05 M3 as soon as Li will update u-test

Haoyi Li

unread,
May 23, 2014, 12:20:54 PM5/23/14
to Anton Kulaga, scal...@googlegroups.com
> It was never ok to do so. It used to not crash as early as it does now, but if you used the scala.Array in any way it would crash. Now you get a proper ClassCastException when you enter Scala code.

Pretty sure it didn't used to crash; uTest and Scala-Js-Fiddle both were passing javascript [] arrays into main methods expecting scala.Array[String], and it worked!

I don't mind swapping them around, just making sure the change is intentional =)

> Hum that is unfortunate. We have never seen that. Can you give more info about your setup?

Not really, basically I'm running the current uTest trunk on github. Doing the manual setup process is annoying, but maybe you can just open it up in eclipse and poke around? AFAIK I'm monkeying the scala-js test framework pretty well, but maybe there are subtle differences in threading or something. Are the JSEnv's threadsafe?


Haoyi Li

unread,
May 24, 2014, 1:04:24 PM5/24/14
to Anton Kulaga, scal...@googlegroups.com
Ok I've made some progress, now blocked on getting sourcemaps working for uTest. AFAIK, when run inside Node.js, my stack traces all look like

trace Lutest.Asserts$$anonfun$tests$14$$anonfun$apply$4$$anonfun$apply$5.apply([stdin]:234270)

Which is ok, but then calling findFile (the SourceMapper internal method which can be C&P-ed out) gives 

findFile [stdin] None

Running it under Rhino instead gives me useful source maps

org.mozilla.javascript.gen.file__Users_haoyi_Dropbox_20_Personal__Workspace_utest_js_PlatformShims_scala_4._c_anonymous_12(file:/Users/haoyi/Dropbox%20(Personal)/Workspace/utest/js/PlatformShims.scala:63)

Although this seems to be done without any work on my part, since my code that specially forces stack traces through the source mapper doesn't seem to be running.

Any idea what's going on?

Sébastien Doeraene

unread,
May 24, 2014, 1:14:03 PM5/24/14
to Haoyi Li, Anton Kulaga, scal...@googlegroups.com
Hi,

Don't fight too much with source maps with M3, we broke them again severely :-( The fix is there:
https://github.com/scala-js/scala-js/pull/672

Cheers,
Sébastien

Haoyi Li

unread,
May 24, 2014, 1:20:27 PM5/24/14
to Sébastien Doeraene, Anton Kulaga, scal...@googlegroups.com
Roger that

Haoyi Li

unread,
May 24, 2014, 4:28:18 PM5/24/14
to Sébastien Doeraene, Anton Kulaga, scal...@googlegroups.com
Here's another nit: in Scala-JVM an ScalaJS 0.4.x, (1.0).toString() gave "1.0", while in ScalaJS 0.5.0-M3 it gives "1". Is that expected or is that a bug?

Sébastien Doeraene

unread,
May 24, 2014, 5:08:48 PM5/24/14
to Haoyi Li, scal...@googlegroups.com, Anton Kulaga

Hi,

This is expected. It is part of the price to pay for not boxing.

Cheers,
Sébastien

Haoyi Li

unread,
May 25, 2014, 12:30:08 PM5/25/14
to Sébastien Doeraene, scal...@googlegroups.com, Anton Kulaga
Another question; I remember someone saying that it is now possible to run tests using fastOpt/fullOpt. Any pointers as to where to look to give uTest the same capability?

Sébastien Doeraene

unread,
May 25, 2014, 1:26:33 PM5/25/14
to Haoyi Li, scal...@googlegroups.com, Anton Kulaga
IIUC the architecture of uTest, it seems all you have to do is to scope your redefinition of loadTestFrameworks here:
https://github.com/lihaoyi/utest/blob/master/js-plugin/JsCrossBuild.scala#L20
in the four "stages" of Scala.js. It would look like:

lazy val stageTestFrameworkSettings = Seq(
  loadedTestFrameworks := {
    loadedTestFrameworks.value.updated(
      sbt.TestFramework(classOf[JsFramework].getName),
      new JsFramework(environment = jsEnv.value)
    )
  }
)

and then:

.settings(
  stageTestFrameworkSettings ++
  inTask(packageStage)(stageTestFrameworkSettings: _*) ++
  inTask(fastOptStage)(stageTestFrameworkSettings: _*) ++
  inTask(fullOptStage)(stageTestFrameworkSettings: _*): _*
)


Then you should be able to use, e.g., fastOptStage::test just like with Jasmine.

Cheers,
Sébastien

Sébastien Doeraene

unread,
May 25, 2014, 1:38:27 PM5/25/14
to Haoyi Li, scal...@googlegroups.com, Anton Kulaga
You will probably also have to scope that whole thing in the Test config:

lazy val stageTestFrameworkSettings := inConfig(Test)(Seq(
  ...
))


Sébastien

Haoyi Li

unread,
May 25, 2014, 10:43:00 PM5/25/14
to Sébastien Doeraene, scal...@googlegroups.com, Anton Kulaga
Cool, I have uTest, uPickle, scala.rx, scalatags, and scala-js-games building and running fine on 0.5.0-M3. The latest version of scala-js-games is available here http://lihaoyi.github.io/scala-js-games/, the drop from 320kb to 240kb is definitely a nice perk =)

Having further problems getting {fastOptStage, fullOptStage}::test working. I'm getting this error:

[error] /Users/haoyi/Dropbox (Personal)/Workspace/utest/js/target/scala-2.10/utest-test-js-test-fastopt.js:27769
[error] calaJS.c.s_concurrent_impl_ExecutionContextImpl$$anon$3.prototype = new ScalaJ
[error]                                                                     ^
[error] TypeError: undefined is not a function
[error]     at Object.<anonymous> (/Users/haoyi/Dropbox (Personal)/Workspace/utest/js/target/scala-2.10/utest-test-js-test-fastopt.js:27769:70)
[error]     at Module._compile (module.js:456:26)
[error]     at Object.Module._extensions..js (module.js:474:10)
[error]     at Module.load (module.js:356:32)
[error]     at Function.Module._load (module.js:312:12)
[error]     at Module.require (module.js:364:17)
[error]     at require (module.js:380:17)
[error]     at [stdin]:15:1
[error]     at Object.<anonymous> ([stdin]-wrapper:6:22)
[error]     at Module._compile (module.js:456:26)
[error]

Which seems to be in this code:

ScalaJS.c.s_concurrent_impl_ExecutionContextImpl$$anon$3 = (function() {
  ScalaJS.c.s_concurrent_forkjoin_ForkJoinTask.call(this);
  this.x1$1$2 = null
});
ScalaJS.c.s_concurrent_impl_ExecutionContextImpl$$anon$3.prototype = new ScalaJS.h.s_concurrent_forkjoin_ForkJoinTask();
ScalaJS.c.s_concurrent_impl_ExecutionContextImpl$$anon$3.prototype.constructor = ScalaJS.c.s_concurrent_impl_ExecutionContextImpl$$anon$3;
/** @constructor */
ScalaJS.h.s_concurrent_impl_ExecutionContextImpl$$anon$3 = (function() {
  /*<skip>*/
});

I did not make the changes you suggested making, but it seems that the fastOptStage worked correctly and the 2mb javascript file that got generated looks roughly correct. Do you have any idea what's going on here? I get a similar exception if i do fullOptStage, except naturally it's in minified code which is harder to read.

Haoyi Li

unread,
May 26, 2014, 1:30:16 AM5/26/14
to Sébastien Doeraene, scal...@googlegroups.com, Anton Kulaga
I've managed to get roll working. Looks like a drop from 340kb -> 270kb of javascript, and subjectively a huge improvement in framerate/performance (yay!). 

I also notice all the check-cast functions being inserted at all the points where values are being taken in from JS, e.g. in the return types of functions. Are these disable-able? I'm thinking they're the kind of thing you'd want to turn on for dev to maximize correctness (they already caught some bugs in my Roll facades) but turned off for the extra perf boost before publishing.

Last thing: I notice that -extdeps.js now starts with

// Generated DummyParents.js file

/** @constructor */
ScalaJS.h.Ljava_beans_SimpleBeanInfo = ScalaJS.h.Ljava_beans_SimpleBeanInfo || function() {};
/** @constructor */
ScalaJS.h.ju_concurrent_locks_AbstractQueuedSynchronizer = ScalaJS.h.ju_concurrent_locks_AbstractQueuedSynchronizer || function() {};
/** @constructor */
ScalaJS.h.sc_concurrent_MainNode = ScalaJS.h.sc_concurrent_MainNode || function() {};
/** @constructor */
ScalaJS.h.s_concurrent_forkjoin_ForkJoinWorkerThread = ScalaJS.h.s_concurrent_forkjoin_ForkJoinWorkerThread || function() {};
/** @constructor */

Rather than

var ScalaJS = ...

the -opt version seems to work fine, so somehow the definition of the ScalaJS variable is being included somehow, but I'm not sure where. Is there somewhere I can grab it from? Maybe I should stop fighting the tide and just abandon packageJS altogether in favor of fastOptJS...

Sébastien Doeraene

unread,
May 26, 2014, 4:56:43 AM5/26/14
to Haoyi Li, scal...@googlegroups.com, Anton Kulaga
Hi,

These are very good news, in general! I'll reply to specific comments inline.


Cool, I have uTest, uPickle, scala.rx, scalatags, and scala-js-games building and running fine on 0.5.0-M3. The latest version of scala-js-games is available here http://lihaoyi.github.io/scala-js-games/, the drop from 320kb to 240kb is definitely a nice perk =)

Oh, I wasn't even expecting the size to drop that much. Cool.
 
Without the suggested changes, you're still running Rhino, not Node.js (as can be witnessed from the stack trace shape).
Now that does not really explain the error you get.

Does fastOpt report any "linking" warnings? Doesn't it complain that it does not find the class ForkJoinTask?


I also notice all the check-cast functions being inserted at all the points where values are being taken in from JS, e.g. in the return types of functions. Are these disable-able? I'm thinking they're the kind of thing you'd want to turn on for dev to maximize correctness (they already caught some bugs in my Roll facades) but turned off for the extra perf boost before publishing.

Now, that's funny. Weren't you the one arguing against my proposition to remove asInstanceOf checks for fullOpt? (I can't find the discussion anymore.)
The checks are not there to verify that you wrote correct facade types. They are there because cast to facade types themselves are not checked. x.asInstanceOf[js.Date]  will always succeed, for example. Then x.getSeconds() can be anything, even if your facade type is correct. This is also the reason that with x: List[Point], x.head is translated as x.head().asInstanceOf[Point]. Because head() actually returns an Object (i.e., any value). And that is because x.asInstanceOf[List[Point]] only checks that is it is a List, not a List[Point]. For raw JS types, there is no check at all. So even non-generic return values are essentially all Object, and must be asInstanceOf'ed.

That said, it is true that all those asInstanceOf's are probably responsible for a lot of runtime overhead, particularly compared to hand-written JavaScript, or ClojureScript, which are dynamic in nature and would never do this. But the ones coming from JavaScript APIs are only a very small fraction of them. The bulk is in the interaction with generic classes. That is why I suggested long ago to offer an optimization-time option to remove asInstanceOf's. Now I think instead it would be good to make it a "link-time" option, that would apply in all the stages for a given application (preLink, package, fastOpt and fullOpt). It would essentially be an sbt setting, and it you be passed down to the JSDesugaring transform which converts the IR into JavaScript code. It is very easy for JSDesugaring to erase asInstanceOf's.
 
Last thing: I notice that -extdeps.js now starts with

// Generated DummyParents.js file

/** @constructor */
ScalaJS.h.Ljava_beans_SimpleBeanInfo = ScalaJS.h.Ljava_beans_SimpleBeanInfo || function() {};
/** @constructor */
ScalaJS.h.ju_concurrent_locks_AbstractQueuedSynchronizer = ScalaJS.h.ju_concurrent_locks_AbstractQueuedSynchronizer || function() {};
/** @constructor */
ScalaJS.h.sc_concurrent_MainNode = ScalaJS.h.sc_concurrent_MainNode || function() {};
/** @constructor */
ScalaJS.h.s_concurrent_forkjoin_ForkJoinWorkerThread = ScalaJS.h.s_concurrent_forkjoin_ForkJoinWorkerThread || function() {};
/** @constructor */

Rather than

var ScalaJS = ...

the -opt version seems to work fine, so somehow the definition of the ScalaJS variable is being included somehow, but I'm not sure where. Is there somewhere I can grab it from? Maybe I should stop fighting the tide and just abandon packageJS altogether in favor of fastOptJS...

I'll post a workaround for M3 in the issue in a few minutes.

Cheers,
Sébastien

Anton Kulaga

unread,
May 26, 2014, 9:31:40 AM5/26/14
to Haoyi Li, Sébastien Doeraene, scal...@googlegroups.com
>Cool, I have uTest, uPickle, scala.rx, scalatags, and scala-js-games building and running fine on 0.5.0-M3. 

What about Scala.Rx, could you publish it for ScalaJS 0.5?
--
Best regards,
Anton Kulaga

Haoyi Li

unread,
May 26, 2014, 1:33:45 PM5/26/14
to Anton Kulaga, Sébastien Doeraene, scal...@googlegroups.com
What about Scala.Rx, could you publish it for ScalaJS 0.5?

Just did that, along with Scalatags, uTest, uPickle. I'm not bothering to test these manually since I'm going to publish new versions anyway when 0.5.0-FINAL comes out, but the test suites pass. If you have problems just yell.

Cross-cross published for {ScalaJVM, ScalaJS-0.5.0-M3} X {2.10.4, 2.11.1}


/com/scalarx/scalarx_2.11/0.2.4/scalarx_2.11-0.2.4.pom.asc
(SHA1: 33ded7fbd073571971d37b90351486c2d5aa3763)
/com/scalarx/scalarx_2.11/0.2.4/scalarx_2.11-0.2.4.jar
(SHA1: b108a9a7c2e1b2b30feffd638e5de6a0ef015814)
/com/scalarx/scalarx_2.11/0.2.4/scalarx_2.11-0.2.4-javadoc.jar
(SHA1: a7891705a2e7e267275fc73b5992d156ad6b73a7)
/com/scalarx/scalarx_2.11/0.2.4/scalarx_2.11-0.2.4-javadoc.jar.asc
(SHA1: 50ed54577fea6007f681982b33cd30360ac7c543)
/com/scalarx/scalarx_2.11/0.2.4/scalarx_2.11-0.2.4.pom
(SHA1: 29f6fac520e530cd35c7ed4959060f8111144301)
/com/scalarx/scalarx_2.11/0.2.4/scalarx_2.11-0.2.4-sources.jar.asc
(SHA1: 07c730917ca91fbc8efb1900352bc1054addad1b)
/com/scalarx/scalarx_2.11/0.2.4/scalarx_2.11-0.2.4-sources.jar
(SHA1: 46740bf899140c240f509ec41b55da4386d1a87f)
/com/scalarx/scalarx_2.11/0.2.4/scalarx_2.11-0.2.4.jar.asc
(SHA1: 7172495be680b380fca61e49dff01fcbd6034e56)
/com/scalarx/scalarx_sjs0.5.0-M3_2.11/0.2.4/scalarx_sjs0.5.0-M3_2.11-0.2.4.jar
(SHA1: 13d928ae61b56dcc1301371ef3a31a79557a89d9)
/com/scalarx/scalarx_sjs0.5.0-M3_2.11/0.2.4/scalarx_sjs0.5.0-M3_2.11-0.2.4-javadoc.jar.asc
(SHA1: 5e8994e32281b2ed235c4a0f506d182e6e5587cc)
/com/scalarx/scalarx_sjs0.5.0-M3_2.11/0.2.4/scalarx_sjs0.5.0-M3_2.11-0.2.4-javadoc.jar
(SHA1: 47fa34a585612af2461dc0403a69e25f6b8adca9)
/com/scalarx/scalarx_sjs0.5.0-M3_2.11/0.2.4/scalarx_sjs0.5.0-M3_2.11-0.2.4.pom.asc
(SHA1: 33a3227ec65c1609bc2f585da594eb3fecba9916)
/com/scalarx/scalarx_sjs0.5.0-M3_2.11/0.2.4/scalarx_sjs0.5.0-M3_2.11-0.2.4-sources.jar
(SHA1: ee88ccef0c4d8397c84c1346a6d0d335586538d3)
/com/scalarx/scalarx_sjs0.5.0-M3_2.11/0.2.4/scalarx_sjs0.5.0-M3_2.11-0.2.4.jar.asc
(SHA1: 0c5ef09a87838c160994a59a98c003c2a48da959)
/com/scalarx/scalarx_sjs0.5.0-M3_2.11/0.2.4/scalarx_sjs0.5.0-M3_2.11-0.2.4-sources.jar.asc
(SHA1: 912be0eacb7f84c52452f42932b7bd29baaca0c9)
/com/scalarx/scalarx_sjs0.5.0-M3_2.11/0.2.4/scalarx_sjs0.5.0-M3_2.11-0.2.4.pom
(SHA1: 109b100999420eda105fda19dadbc8990909feb7)
/com/scalarx/scalarx_sjs0.5.0-M3_2.10/0.2.4/scalarx_sjs0.5.0-M3_2.10-0.2.4.pom.asc
(SHA1: d9684e4eaae2798d839868bcdf2e7060e305f55b)
/com/scalarx/scalarx_sjs0.5.0-M3_2.10/0.2.4/scalarx_sjs0.5.0-M3_2.10-0.2.4.jar
(SHA1: c060355a2783c999ff52ecc7c6e3a142cc861b7b)
/com/scalarx/scalarx_sjs0.5.0-M3_2.10/0.2.4/scalarx_sjs0.5.0-M3_2.10-0.2.4-javadoc.jar
(SHA1: c7d5ad2057b76bd39ee4ee24f5224a467c7662a7)
/com/scalarx/scalarx_sjs0.5.0-M3_2.10/0.2.4/scalarx_sjs0.5.0-M3_2.10-0.2.4.pom
(SHA1: 46be5b299021dccdade6010f72f988e39ae342a7)
/com/scalarx/scalarx_sjs0.5.0-M3_2.10/0.2.4/scalarx_sjs0.5.0-M3_2.10-0.2.4-sources.jar
(SHA1: 4273c83b175e6c0b82ddf0af6e4ab2465b4b4292)
/com/scalarx/scalarx_sjs0.5.0-M3_2.10/0.2.4/scalarx_sjs0.5.0-M3_2.10-0.2.4-javadoc.jar.asc
(SHA1: a3c26ae4a8c685e19bf20af92e805805bb42a49e)
/com/scalarx/scalarx_sjs0.5.0-M3_2.10/0.2.4/scalarx_sjs0.5.0-M3_2.10-0.2.4-sources.jar.asc
(SHA1: 1a44b74c19c02788ad89d31d2b1697c3334a0b63)
/com/scalarx/scalarx_sjs0.5.0-M3_2.10/0.2.4/scalarx_sjs0.5.0-M3_2.10-0.2.4.jar.asc
(SHA1: 3814d1d782327265370c9581cc920592dd9436e7)
/com/scalarx/scalarx_2.10/0.2.4/scalarx_2.10-0.2.4-sources.jar
(SHA1: dc45aeb0cce382eb9f9a0d5fb7400c23ba322509)
/com/scalarx/scalarx_2.10/0.2.4/scalarx_2.10-0.2.4-javadoc.jar
(SHA1: d549a13778a09dd0a0c39ad9aa812158d22a547c)
/com/scalarx/scalarx_2.10/0.2.4/scalarx_2.10-0.2.4.pom.asc
(SHA1: 09789267ca828600da269fa1ea9889f431f262ff)
/com/scalarx/scalarx_2.10/0.2.4/scalarx_2.10-0.2.4.jar.asc
(SHA1: 656a0dd51d5250c6ca94cc92859ecdc3c97bdc01)
/com/scalarx/scalarx_2.10/0.2.4/scalarx_2.10-0.2.4-javadoc.jar.asc
(SHA1: 397c9c2ccb358f1ad8f878316c67c2c31a4bcebe)
/com/scalarx/scalarx_2.10/0.2.4/scalarx_2.10-0.2.4.pom
(SHA1: ab0f1df10b305af9436e23f9ed44a4636b4771c4)
/com/scalarx/scalarx_2.10/0.2.4/scalarx_2.10-0.2.4.jar
(SHA1: bf7213fe4419dce6aee13a2dfa9fde1f9f4f42d7)
/com/scalarx/scalarx_2.10/0.2.4/scalarx_2.10-0.2.4-sources.jar.asc
(SHA1: 64315306cfc887b8b28bf59bc12df4a82bc75781)

/com/scalatags/scalatags_sjs0.5.0-M3_2.10/0.2.5/scalatags_sjs0.5.0-M3_2.10-0.2.5-javadoc.jar.asc
(SHA1: c2d5c7c3d3dd1959e769ea0b50b63d14d28d40d6)
/com/scalatags/scalatags_sjs0.5.0-M3_2.10/0.2.5/scalatags_sjs0.5.0-M3_2.10-0.2.5-javadoc.jar
(SHA1: e35aad617f6def5da0fb167d967210b07437b98a)
/com/scalatags/scalatags_sjs0.5.0-M3_2.10/0.2.5/scalatags_sjs0.5.0-M3_2.10-0.2.5.jar.asc
(SHA1: 0576bbe18cbf5d2acce7673785a10252864b5159)
/com/scalatags/scalatags_sjs0.5.0-M3_2.10/0.2.5/scalatags_sjs0.5.0-M3_2.10-0.2.5.pom
(SHA1: 26ce672d5c97f4ef992e573c0015a64497b06540)
/com/scalatags/scalatags_sjs0.5.0-M3_2.10/0.2.5/scalatags_sjs0.5.0-M3_2.10-0.2.5-sources.jar
(SHA1: 504b47348d0a83bace410cf4fed2780040cec07f)
/com/scalatags/scalatags_sjs0.5.0-M3_2.10/0.2.5/scalatags_sjs0.5.0-M3_2.10-0.2.5.jar
(SHA1: 2e0ffdb53fe0bb04513e24da7b8ded60fd82dad3)
/com/scalatags/scalatags_sjs0.5.0-M3_2.10/0.2.5/scalatags_sjs0.5.0-M3_2.10-0.2.5.pom.asc
(SHA1: c8b59fa455ced6b45748a2209912d4d21dc8b303)
/com/scalatags/scalatags_sjs0.5.0-M3_2.10/0.2.5/scalatags_sjs0.5.0-M3_2.10-0.2.5-sources.jar.asc
(SHA1: 37cbc58e5d18d0de7166c371f7ba6afed0640f61)
/com/scalatags/scalatags_sjs0.5.0-M3_2.11/0.2.5/scalatags_sjs0.5.0-M3_2.11-0.2.5.pom.asc
(SHA1: 6d754a752cfcfa879f33c3594eecd92a65b82a62)
/com/scalatags/scalatags_sjs0.5.0-M3_2.11/0.2.5/scalatags_sjs0.5.0-M3_2.11-0.2.5.jar
(SHA1: aecc5d08c0a1add979ee89bd66d2d1e81ae76cd1)
/com/scalatags/scalatags_sjs0.5.0-M3_2.11/0.2.5/scalatags_sjs0.5.0-M3_2.11-0.2.5-sources.jar.asc
(SHA1: c7d6909dbc73b86cb8f7c86d18a5265588779f41)
/com/scalatags/scalatags_sjs0.5.0-M3_2.11/0.2.5/scalatags_sjs0.5.0-M3_2.11-0.2.5.pom
(SHA1: 4ad830182e47d959b09ec0e4b37c10058bd6e213)
/com/scalatags/scalatags_sjs0.5.0-M3_2.11/0.2.5/scalatags_sjs0.5.0-M3_2.11-0.2.5-javadoc.jar.asc
(SHA1: f7bcc59cd73ce9d5450e257751f6c3673fa00b86)
/com/scalatags/scalatags_sjs0.5.0-M3_2.11/0.2.5/scalatags_sjs0.5.0-M3_2.11-0.2.5.jar.asc
(SHA1: 3174b46f9ce8d2fdf489260a2c564d70a4b71b73)
/com/scalatags/scalatags_sjs0.5.0-M3_2.11/0.2.5/scalatags_sjs0.5.0-M3_2.11-0.2.5-javadoc.jar
(SHA1: 7c98d1a0cfa1901742c615cbd709642b8b93c5f4)
/com/scalatags/scalatags_sjs0.5.0-M3_2.11/0.2.5/scalatags_sjs0.5.0-M3_2.11-0.2.5-sources.jar
(SHA1: 300fbbe5b6fca14d86f5b764b66ab558fdd96e0b)
/com/scalatags/scalatags_2.11/0.2.5/scalatags_2.11-0.2.5.pom.asc
(SHA1: 78acba89af54e37b3caf450908abe28a592d01c6)
/com/scalatags/scalatags_2.11/0.2.5/scalatags_2.11-0.2.5.jar.asc
(SHA1: 18de54c951e8dc5b491478b726449c0dc5e27770)
/com/scalatags/scalatags_2.11/0.2.5/scalatags_2.11-0.2.5-sources.jar.asc
(SHA1: 9e793cb0279cbf0933b7b173dee32d513a27cf5c)
/com/scalatags/scalatags_2.11/0.2.5/scalatags_2.11-0.2.5-sources.jar
(SHA1: fd60fe242c39c907c912297871f76db7a94a20b8)
/com/scalatags/scalatags_2.11/0.2.5/scalatags_2.11-0.2.5-javadoc.jar
(SHA1: ceea82837c15b1427c47445a3eece45d48184bb9)
/com/scalatags/scalatags_2.11/0.2.5/scalatags_2.11-0.2.5-javadoc.jar.asc
(SHA1: e133c31babdf02897db06018696297aeda0d91aa)
/com/scalatags/scalatags_2.11/0.2.5/scalatags_2.11-0.2.5.pom
(SHA1: d225e6b3525a61531cc7d256a942020d7f0bdc3c)
/com/scalatags/scalatags_2.11/0.2.5/scalatags_2.11-0.2.5.jar
(SHA1: 4e2f474b618d4e7239b3295c2533d57dc8a0c0fb)
/com/scalatags/scalatags_2.10/0.2.5/scalatags_2.10-0.2.5-sources.jar.asc
(SHA1: 1db9785fe70d31f3f4a388701559d624b0002672)
/com/scalatags/scalatags_2.10/0.2.5/scalatags_2.10-0.2.5.jar.asc
(SHA1: e82a34e31efc2fc79d3b08271daafb315375047d)
/com/scalatags/scalatags_2.10/0.2.5/scalatags_2.10-0.2.5-javadoc.jar
(SHA1: 6788a0e86a82f33be34a25e925c68d301a3ce88b)
/com/scalatags/scalatags_2.10/0.2.5/scalatags_2.10-0.2.5.pom
(SHA1: 9b869b17c038d661137b288596b7abcb804d70ce)
/com/scalatags/scalatags_2.10/0.2.5/scalatags_2.10-0.2.5-sources.jar
(SHA1: 85c907b1d5bd99fe80b7e6444f2fc9d2377daee3)
/com/scalatags/scalatags_2.10/0.2.5/scalatags_2.10-0.2.5.pom.asc
(SHA1: 75d572475e8020f0571dc2e22d348ff11b7b210e)
/com/scalatags/scalatags_2.10/0.2.5/scalatags_2.10-0.2.5-javadoc.jar.asc
(SHA1: f3a015271e301569e0d6f24a898802aecc551a9a)
/com/scalatags/scalatags_2.10/0.2.5/scalatags_2.10-0.2.5.jar
(SHA1: 40ccf6729c9f703acc5b4d38df8ef1a4f6348e8c)

/com/lihaoyi/utest-runner_2.10/0.1.5/utest-runner_2.10-0.1.5.pom
(SHA1: b5f45a08aa8edf2d8a0170fc790d42b03258b938)
/com/lihaoyi/utest-runner_2.10/0.1.5/utest-runner_2.10-0.1.5.jar
(SHA1: d6b9fd60d3ae9c8096896990508f02bf1057291d)
/com/lihaoyi/utest-runner_2.10/0.1.5/utest-runner_2.10-0.1.5-javadoc.jar
(SHA1: 87d5a7d1094363807ed29bcf8f3a3c1e542322b9)
/com/lihaoyi/utest-runner_2.10/0.1.5/utest-runner_2.10-0.1.5-javadoc.jar.asc
(SHA1: 6d4662cedad14491220e390a55b266c91b706c35)
/com/lihaoyi/utest-runner_2.10/0.1.5/utest-runner_2.10-0.1.5.pom.asc
(SHA1: 0826aed102a48a214378b20462af25d0516ccab2)
/com/lihaoyi/utest-runner_2.10/0.1.5/utest-runner_2.10-0.1.5-sources.jar
(SHA1: e971f5657e5235aff975ceb1c8e66660cd814146)
/com/lihaoyi/utest-runner_2.10/0.1.5/utest-runner_2.10-0.1.5-sources.jar.asc
(SHA1: a6d6f6347a42e172f4eb4d40e1f5fc36b26609bc)
/com/lihaoyi/utest-runner_2.10/0.1.5/utest-runner_2.10-0.1.5.jar.asc
(SHA1: de8b8954e9dd386af4fe06cd547e1866cb3fb52e)
/com/lihaoyi/utest-test-js_sjs0.5.0-M3_2.10/0.1.5/utest-test-js_sjs0.5.0-M3_2.10-0.1.5-sources.jar
(SHA1: 3632ac97ed55e887f644af26e82a46e261452097)
/com/lihaoyi/utest-test-js_sjs0.5.0-M3_2.10/0.1.5/utest-test-js_sjs0.5.0-M3_2.10-0.1.5-sources.jar.asc
(SHA1: e34ddde8a4da082c63fb123f8e1be4f253fd82ea)
/com/lihaoyi/utest-test-js_sjs0.5.0-M3_2.10/0.1.5/utest-test-js_sjs0.5.0-M3_2.10-0.1.5.jar
(SHA1: c54bcf4ddf1bf2468c81f4d2d9f3d2c8963165b8)
/com/lihaoyi/utest-test-js_sjs0.5.0-M3_2.10/0.1.5/utest-test-js_sjs0.5.0-M3_2.10-0.1.5.jar.asc
(SHA1: a77448b96dfc41995f0a4db80529568eca790fb4)
/com/lihaoyi/utest-test-js_sjs0.5.0-M3_2.10/0.1.5/utest-test-js_sjs0.5.0-M3_2.10-0.1.5-javadoc.jar
(SHA1: e450d7a579b61419bd30882ad1559274a597c0c1)
/com/lihaoyi/utest-test-js_sjs0.5.0-M3_2.10/0.1.5/utest-test-js_sjs0.5.0-M3_2.10-0.1.5-javadoc.jar.asc
(SHA1: 02e5a7da6048016faab77a27fdb1d23971bd6f14)
/com/lihaoyi/utest-test-js_sjs0.5.0-M3_2.10/0.1.5/utest-test-js_sjs0.5.0-M3_2.10-0.1.5.pom
(SHA1: 0a2a13ad1b49e3bcba187a3a7ae4bdc5014c8c5c)
/com/lihaoyi/utest-test-js_sjs0.5.0-M3_2.10/0.1.5/utest-test-js_sjs0.5.0-M3_2.10-0.1.5.pom.asc
(SHA1: 547af037bb96c60bdf84c51ead26229e3386fb27)
/com/lihaoyi/utest_sjs0.5.0-M3_2.11/0.1.5/utest_sjs0.5.0-M3_2.11-0.1.5-javadoc.jar
(SHA1: ef2b8abc67d3317a2dea152f8e5e4ecb1edf8025)
/com/lihaoyi/utest_sjs0.5.0-M3_2.11/0.1.5/utest_sjs0.5.0-M3_2.11-0.1.5.pom.asc
(SHA1: b4661a859862950d824e235601f06e1a14d39a0d)
/com/lihaoyi/utest_sjs0.5.0-M3_2.11/0.1.5/utest_sjs0.5.0-M3_2.11-0.1.5.jar.asc
(SHA1: 7b59ad876b5196db39d310f8b4a77d64fec2a18d)
/com/lihaoyi/utest_sjs0.5.0-M3_2.11/0.1.5/utest_sjs0.5.0-M3_2.11-0.1.5-sources.jar
(SHA1: a3fd109a4bb1c406af3bb782e8626a75ccffa4c4)
/com/lihaoyi/utest_sjs0.5.0-M3_2.11/0.1.5/utest_sjs0.5.0-M3_2.11-0.1.5.pom
(SHA1: 0f290b005003b8b9ffffcde35ad65d44821ebc40)
/com/lihaoyi/utest_sjs0.5.0-M3_2.11/0.1.5/utest_sjs0.5.0-M3_2.11-0.1.5.jar
(SHA1: 0ad19659b669a464645c32ee4b4fc43e8ac4de08)
/com/lihaoyi/utest_sjs0.5.0-M3_2.11/0.1.5/utest_sjs0.5.0-M3_2.11-0.1.5-javadoc.jar.asc
(SHA1: dd8edd0bfaf544a090009b4cd10f57edaaae1a63)
/com/lihaoyi/utest_sjs0.5.0-M3_2.11/0.1.5/utest_sjs0.5.0-M3_2.11-0.1.5-sources.jar.asc
(SHA1: 456ba3062685187c0c97d01d29b70378e5e17e01)
/com/lihaoyi/utest_2.11/0.1.5/utest_2.11-0.1.5.pom.asc
(SHA1: e1593441128cc105446108ed5d1fb02c143a3055)
/com/lihaoyi/utest_2.11/0.1.5/utest_2.11-0.1.5-javadoc.jar
(SHA1: 3f877ec1630695f1f15bdf61e371bd52153d9f93)
/com/lihaoyi/utest_2.11/0.1.5/utest_2.11-0.1.5-sources.jar.asc
(SHA1: 666f3e6b888cfe1c5d20c39ee8ffa2586139cbb1)
/com/lihaoyi/utest_2.11/0.1.5/utest_2.11-0.1.5.jar.asc
(SHA1: 7c3896a0a7507a5657501e32c76ad9d54481d14e)
/com/lihaoyi/utest_2.11/0.1.5/utest_2.11-0.1.5-javadoc.jar.asc
(SHA1: 2afe9aa08676fe861478a9e76522627c97a82c9d)
/com/lihaoyi/utest_2.11/0.1.5/utest_2.11-0.1.5.pom
(SHA1: 4f7e25c99a8e7f61ad5a7cae6f7473e91fffc9be)
/com/lihaoyi/utest_2.11/0.1.5/utest_2.11-0.1.5.jar
(SHA1: d4db0321d1d02f95b070ffa90f3e98e7f4701c62)
/com/lihaoyi/utest_2.11/0.1.5/utest_2.11-0.1.5-sources.jar
(SHA1: 6c6a3a959548e78827481a6f5ae0cc719d4a53bb)
/com/lihaoyi/upickle_2.11/0.1.1/upickle_2.11-0.1.1-sources.jar.asc
(SHA1: 984ac94ac64895b403625139d55550bd4f0e5d33)
/com/lihaoyi/upickle_2.11/0.1.1/upickle_2.11-0.1.1.jar.asc
(SHA1: ba4f95495eb4b20f98208f15e8831f178da8a828)
/com/lihaoyi/upickle_2.11/0.1.1/upickle_2.11-0.1.1.pom.asc
(SHA1: 0e865fe93c25acd8c289c1a825fbd1774ca9843b)
/com/lihaoyi/upickle_2.11/0.1.1/upickle_2.11-0.1.1-javadoc.jar.asc
(SHA1: 8d6fb30cf68c7206cac737d0254558d13ef38751)
/com/lihaoyi/upickle_2.11/0.1.1/upickle_2.11-0.1.1.jar
(SHA1: 4fae08d155a0a951e3bc7bf9c6c019bedc269f58)
/com/lihaoyi/upickle_2.11/0.1.1/upickle_2.11-0.1.1-javadoc.jar
(SHA1: daec8b641cd8e22481c822eb02f2cb83c3eb32f7)
/com/lihaoyi/upickle_2.11/0.1.1/upickle_2.11-0.1.1-sources.jar
(SHA1: a432d4cfa5e9f2681957b7db1e5955c040f952a8)
/com/lihaoyi/upickle_2.11/0.1.1/upickle_2.11-0.1.1.pom
(SHA1: 50a7194bf46407497ed12ae45aac4c6d377c6c19)
/com/lihaoyi/utest-js-plugin_2.10_0.13/0.1.5/utest-js-plugin-0.1.5.jar
(SHA1: 69a42ae0812956430c5dc897662342484eb7b734)
/com/lihaoyi/utest-js-plugin_2.10_0.13/0.1.5/utest-js-plugin-0.1.5.jar.asc
(SHA1: bb2acb8926e5df2db79b24a1b71846b7c51a49e6)
/com/lihaoyi/utest-js-plugin_2.10_0.13/0.1.5/utest-js-plugin-0.1.5.pom.asc
(SHA1: ffa10a60c43aeefbd6b83453249e3c5fb25a9185)
/com/lihaoyi/utest-js-plugin_2.10_0.13/0.1.5/utest-js-plugin-0.1.5-sources.jar.asc
(SHA1: 207fd377983d0f696427338755c4ea683fec06a1)
/com/lihaoyi/utest-js-plugin_2.10_0.13/0.1.5/utest-js-plugin-0.1.5-javadoc.jar.asc
(SHA1: 439bb5fa6cbeb5e85baae2b1f5f1ac4b1d702abd)
/com/lihaoyi/utest-js-plugin_2.10_0.13/0.1.5/utest-js-plugin-0.1.5-javadoc.jar
(SHA1: c4f3fccdd2ea3764ecd315b5a6277a30979007cc)
/com/lihaoyi/utest-js-plugin_2.10_0.13/0.1.5/utest-js-plugin-0.1.5-sources.jar
(SHA1: 425e35a8d7ad3f7d016306923f17858f9356e25c)
/com/lihaoyi/utest-js-plugin_2.10_0.13/0.1.5/utest-js-plugin-0.1.5.pom
(SHA1: 3466d539f2309fb58b4e94e2a9b3ace9c7dbd97f)
/com/lihaoyi/upickle_sjs0.5.0-M3_2.11/0.1.1/upickle_sjs0.5.0-M3_2.11-0.1.1.jar
(SHA1: 38e7f00cae532fe38cb269bbe014c6696e419662)
/com/lihaoyi/upickle_sjs0.5.0-M3_2.11/0.1.1/upickle_sjs0.5.0-M3_2.11-0.1.1-sources.jar
(SHA1: 8ae2439c8ee33940ec66673b7e03048969f124f1)
/com/lihaoyi/upickle_sjs0.5.0-M3_2.11/0.1.1/upickle_sjs0.5.0-M3_2.11-0.1.1-javadoc.jar
(SHA1: b243dd2d7b560194b2678466323a429e0d7ab45c)
/com/lihaoyi/upickle_sjs0.5.0-M3_2.11/0.1.1/upickle_sjs0.5.0-M3_2.11-0.1.1-javadoc.jar.asc
(SHA1: 650fbfae7306632c2c3abce69a67e31d65eaa929)
/com/lihaoyi/upickle_sjs0.5.0-M3_2.11/0.1.1/upickle_sjs0.5.0-M3_2.11-0.1.1.jar.asc
(SHA1: 3f26154774ef3f0c653520d990bda86a7374a266)
/com/lihaoyi/upickle_sjs0.5.0-M3_2.11/0.1.1/upickle_sjs0.5.0-M3_2.11-0.1.1-sources.jar.asc
(SHA1: 00e3f26d8afba9c3c198ebabc1ff3f6e2c6c76a6)
/com/lihaoyi/upickle_sjs0.5.0-M3_2.11/0.1.1/upickle_sjs0.5.0-M3_2.11-0.1.1.pom.asc
(SHA1: cea13a3608050cc03673ecde0fe65294021080b3)
/com/lihaoyi/upickle_sjs0.5.0-M3_2.11/0.1.1/upickle_sjs0.5.0-M3_2.11-0.1.1.pom
(SHA1: fc9acf6b139af1784ae29ae6b0c2e1539fd7f6a8)
/com/lihaoyi/upickle_2.10/0.1.1/upickle_2.10-0.1.1.jar.asc
(SHA1: 83c7ba1a42f6912e4c75c69ca9a55cd1e645aad1)
/com/lihaoyi/upickle_2.10/0.1.1/upickle_2.10-0.1.1.pom
(SHA1: 948432170dd90f7448aff2bc0c9e12c10aac3ec9)
/com/lihaoyi/upickle_2.10/0.1.1/upickle_2.10-0.1.1-sources.jar
(SHA1: 65700d3d17dff47b7fe3875aef110ec470fba695)
/com/lihaoyi/upickle_2.10/0.1.1/upickle_2.10-0.1.1.pom.asc
(SHA1: c4b5b77d0c0adda2e11dd9943624bbd1ff8e5d46)
/com/lihaoyi/upickle_2.10/0.1.1/upickle_2.10-0.1.1-javadoc.jar
(SHA1: ef9679340a19e1ebb591ee44fb7495a8e3e71b2a)
/com/lihaoyi/upickle_2.10/0.1.1/upickle_2.10-0.1.1-javadoc.jar.asc
(SHA1: b3bfd394a0a46a062a088cc7ef9e8f30005abf95)
/com/lihaoyi/upickle_2.10/0.1.1/upickle_2.10-0.1.1.jar
(SHA1: de132db556722889e99514de42ccef1169d70229)
/com/lihaoyi/upickle_2.10/0.1.1/upickle_2.10-0.1.1-sources.jar.asc
(SHA1: 78278a5973e4c205a1f5d585a4380df8530610c8)
/com/lihaoyi/utest_2.10/0.1.5/utest_2.10-0.1.5.jar
(SHA1: 7ea0cd95a5ee76618e198e398407a74e5ca9a6a7)
/com/lihaoyi/utest_2.10/0.1.5/utest_2.10-0.1.5.pom.asc
(SHA1: 72c180c788da3d6b4f38540c33de54b4ffbbfb62)
/com/lihaoyi/utest_2.10/0.1.5/utest_2.10-0.1.5-sources.jar.asc
(SHA1: ff2b37b3d63fcccae90d84897778426a53d4a138)
/com/lihaoyi/utest_2.10/0.1.5/utest_2.10-0.1.5.jar.asc
(SHA1: 209d6ffe5b6d1543b83ebc982cf504c9364fbdae)
/com/lihaoyi/utest_2.10/0.1.5/utest_2.10-0.1.5-javadoc.jar.asc
(SHA1: df3ab13231d6016a8abdcc094d925c2f15876abe)
/com/lihaoyi/utest_2.10/0.1.5/utest_2.10-0.1.5.pom
(SHA1: 7e1058a3b9b064e772533630e67220d0693dc0e3)
/com/lihaoyi/utest_2.10/0.1.5/utest_2.10-0.1.5-sources.jar
(SHA1: e3e2b590fd655a0c50aa25a457b21e224f2740ac)
/com/lihaoyi/utest_2.10/0.1.5/utest_2.10-0.1.5-javadoc.jar
(SHA1: ecad9bf2aa2f228747a0df5332f1789711612e09)
/com/lihaoyi/utest-test_2.10/0.1.5/utest-test_2.10-0.1.5.jar
(SHA1: eb7cbecbaa2ef17e1776720a010b4ff3b5af710a)
/com/lihaoyi/utest-test_2.10/0.1.5/utest-test_2.10-0.1.5-sources.jar.asc
(SHA1: 11d725bf7aef903963c8dae739d37da5c6cbc59c)
/com/lihaoyi/utest-test_2.10/0.1.5/utest-test_2.10-0.1.5.jar.asc
(SHA1: 53f95959a45f93c9fe8fb17b2c08c46864f3281d)
/com/lihaoyi/utest-test_2.10/0.1.5/utest-test_2.10-0.1.5-javadoc.jar
(SHA1: 3427b9e2f243f3b3475b37ca2f472d48f01709e7)
/com/lihaoyi/utest-test_2.10/0.1.5/utest-test_2.10-0.1.5.pom.asc
(SHA1: 8b057d5591a34bdc6a3ad3cabd9ca257311dd358)
/com/lihaoyi/utest-test_2.10/0.1.5/utest-test_2.10-0.1.5-javadoc.jar.asc
(SHA1: 5221bf4eec1e9c388a7f2c907155a088d6049b8d)
/com/lihaoyi/utest-test_2.10/0.1.5/utest-test_2.10-0.1.5.pom
(SHA1: 519b17014498efb8b7f58f66fbd0c7afd89facae)
/com/lihaoyi/utest-test_2.10/0.1.5/utest-test_2.10-0.1.5-sources.jar
(SHA1: cd7196663b9963a08470cc45209d4036d151aaa8)
/com/lihaoyi/upickle_sjs0.5.0-M3_2.10/0.1.1/upickle_sjs0.5.0-M3_2.10-0.1.1-javadoc.jar.asc
(SHA1: d1a6cd5566f56036d52e48a632889834e64fbe7f)
/com/lihaoyi/upickle_sjs0.5.0-M3_2.10/0.1.1/upickle_sjs0.5.0-M3_2.10-0.1.1-sources.jar
(SHA1: aa052301b81845357af37a1f8a44615ba5732089)
/com/lihaoyi/upickle_sjs0.5.0-M3_2.10/0.1.1/upickle_sjs0.5.0-M3_2.10-0.1.1.jar.asc
(SHA1: fe491a9c0e25c550090df0a5a4719f24d391e722)
/com/lihaoyi/upickle_sjs0.5.0-M3_2.10/0.1.1/upickle_sjs0.5.0-M3_2.10-0.1.1.pom
(SHA1: c584b834c7b272be422d99a34cd95bb520cabfaa)
/com/lihaoyi/upickle_sjs0.5.0-M3_2.10/0.1.1/upickle_sjs0.5.0-M3_2.10-0.1.1-javadoc.jar
(SHA1: 5c8eb201f0ef6b57b78d80a470baab6e4c36a80f)
/com/lihaoyi/upickle_sjs0.5.0-M3_2.10/0.1.1/upickle_sjs0.5.0-M3_2.10-0.1.1-sources.jar.asc
(SHA1: 66e5216e40daee4c77cb8e30beea51a8837d314c)
/com/lihaoyi/upickle_sjs0.5.0-M3_2.10/0.1.1/upickle_sjs0.5.0-M3_2.10-0.1.1.pom.asc
(SHA1: 8b3014783de4f13f471e948486d59e16937e4ca7)
/com/lihaoyi/upickle_sjs0.5.0-M3_2.10/0.1.1/upickle_sjs0.5.0-M3_2.10-0.1.1.jar
(SHA1: fb0a085b86107958956f619757d7cd612648aa96)
/com/lihaoyi/utest_sjs0.5.0-M3_2.10/0.1.5/utest_sjs0.5.0-M3_2.10-0.1.5.pom
(SHA1: 4299e37db277b93e5452b955b0a1c972492fe22e)
/com/lihaoyi/utest_sjs0.5.0-M3_2.10/0.1.5/utest_sjs0.5.0-M3_2.10-0.1.5-javadoc.jar
(SHA1: 89ca25d29b2208a2933747338123eb36d5b57d35)
/com/lihaoyi/utest_sjs0.5.0-M3_2.10/0.1.5/utest_sjs0.5.0-M3_2.10-0.1.5-sources.jar
(SHA1: 62e1c9ba1e874351b05801145d464bba79d5a626)
/com/lihaoyi/utest_sjs0.5.0-M3_2.10/0.1.5/utest_sjs0.5.0-M3_2.10-0.1.5.jar.asc
(SHA1: 55c56292e99000584b24e5017383b770e3c59a76)
/com/lihaoyi/utest_sjs0.5.0-M3_2.10/0.1.5/utest_sjs0.5.0-M3_2.10-0.1.5.pom.asc
(SHA1: 9eed68fcbbe9e3adfa5aa29cc442f5fb65ded026)
/com/lihaoyi/utest_sjs0.5.0-M3_2.10/0.1.5/utest_sjs0.5.0-M3_2.10-0.1.5-javadoc.jar.asc
(SHA1: 7792aab9c2bd9e3fcc459e46c7b3f0882ef1485f)
/com/lihaoyi/utest_sjs0.5.0-M3_2.10/0.1.5/utest_sjs0.5.0-M3_2.10-0.1.5.jar
(SHA1: 5b3115226f3184ce989008e7c4e8e8cbee2ff721)
/com/lihaoyi/utest_sjs0.5.0-M3_2.10/0.1.5/utest_sjs0.5.0-M3_2.10-0.1.5-sources.jar.asc
(SHA1: c855ce0f191fa0e7522c10236e2363262da6b0e2)

Haoyi Li

unread,
May 26, 2014, 2:14:12 PM5/26/14
to Anton Kulaga, Sébastien Doeraene, scal...@googlegroups.com
I just tried out workbench with fastOptJS; I'm impressed with how fast it is, I think it takes about 1/5 of a second on a trivial application to build the 1mb blob.

Since it appears that I'm the only one keeping packageJS alive, I say we can probably kill it; fastOptJS works great with workbench, and I'm sure I can figure out a way to make it work with scala-js-fiddle too.

If it's up to me, I'd say its probably not worth maintaining packageJS in general and having to continually fix bugs like this one.


...

[Message clipped]  

Haoyi Li

unread,
May 26, 2014, 2:19:50 PM5/26/14
to Anton Kulaga, Sébastien Doeraene, scal...@googlegroups.com
 Weren't you the one arguing against my proposition to remove asInstanceOf checks for fullOpt?

Yeah I probably was. I guess I just want everything =D glad to see that it's becoming feasible to actually do this optionally depending on a flag.

Sébastien Doeraene

unread,
May 26, 2014, 3:00:14 PM5/26/14
to Haoyi Li, Anton Kulaga, scal...@googlegroups.com
Hi,

Yes, packageJS is giving us more and more trouble. We will definitely "silence" it in 0.5.x, in the sense that we won't talk about it in the docs and guides, and we will probably remove the -dev.html file from the example app. We will talk about fastOptJS and fullOptJS only. We even thought about removing the packageJS task altogether, but keep the related aspects in the Tools, so that Fiddle and Workbench could use the Tools if they really need to, but it would be hidden in the "normal" sbt plugin. But that's probably a bit extreme. I'm thinking about emitting a deprecation warning to the console if packageJS is used, and remove it in a few versions.

If you don't use it even for Workbench and Fiddle, we'll eventually remove the related parts of the Tools API, I suspect. And when we do, it'll be one less burden, that's sure. But we won't do that in 0.5.0 just yet, we're too close to the RC for this, now. In 0.5.0 we'll definitely keep them, and at most we'll emit a warning if using packageJS by hand.

Cheers,
Sébastien

Anton Kulaga

unread,
May 26, 2014, 4:44:51 PM5/26/14
to scal...@googlegroups.com, Haoyi Li, Anton Kulaga
I am going to update my libs to 0.5, I wonder have scalajs-pickling and scalajs-dom/jquery been published to bintray? I do not see their updates in official scalajs bintray repo

Haoyi Li

unread,
May 27, 2014, 12:19:17 AM5/27/14
to Anton Kulaga, scal...@googlegroups.com
I've updated the bulk of workbench-example-app to 0.5.0-M3. The source has all been updated, as have the examples, except for the TodoMVC app which requires some refactoring to work with the current version of Scalatags. Things went without a hitch.

Haoyi Li

unread,
May 27, 2014, 3:19:00 AM5/27/14
to Anton Kulaga, scal...@googlegroups.com
Does fastOpt report any "linking" warnings? Doesn't it complain that it does not find the class ForkJoinTask?

Just tried this again on a different project, and it blows up with a different but similar error. Full spam reproduced below. Any ideas?

haoyi-mbp:scalatags haoyi$ sbt "~js/fastOptStage::test-only -- scalatags.PerfTestsJs"
[info] Loading global plugins from /Users/haoyi/.sbt/0.13/plugins
[info] Loading project definition from /Users/haoyi/Dropbox (Personal)/Workspace/scalatags/project
[info] Set current project to root (in build file:/Users/haoyi/Dropbox%20(Personal)/Workspace/scalatags/)
[info] Updating {file:/Users/haoyi/Dropbox%20(Personal)/Workspace/scalatags/}js...
[info] Resolving org.fusesource.jansi#jansi;1.4 ...
[info] Done updating.
[info] Compiling 10 Scala sources to /Users/haoyi/Dropbox (Personal)/Workspace/scalatags/js/target/scala-2.10/classes...
[warn] /Users/haoyi/Dropbox (Personal)/Workspace/scalatags/js/src/main/scala/scalatags/Tags.scala:25: imported `HtmlTag' is permanently hidden by definition of value HtmlTag in package scalatags
[warn] import scalatags.HtmlTag
[warn]                  ^
[warn] there were 11 feature warning(s); re-run with -feature for details
[warn] two warnings found
[info] Compiling 6 Scala sources to /Users/haoyi/Dropbox (Personal)/Workspace/scalatags/js/target/scala-2.10/test-classes...
[info] Fast optimizing /Users/haoyi/Dropbox (Personal)/Workspace/scalatags/js/target/scala-2.10/scalatags-test-fastopt.js
[warn] Referring to non-existent class s_concurrent_forkjoin_ForkJoinTask
[warn]   called from s_concurrent_impl_ExecutionContextImpl.execute__jl_Runnable__V
[warn]   called from s_concurrent_impl_Future$.apply__F0__s_concurrent_ExecutionContext__s_concurrent_Future
[warn]   called from s_concurrent_Future$.apply__F0__s_concurrent_ExecutionContext__s_concurrent_Future
[warn]   called from Lutest_framework_TestTreeSeq$$anonfun$runAsync$1.apply__s_concurrent_Future
[warn]   called from Lutest_framework_TestTreeSeq$$anonfun$runAsync$1.apply__O
[warn]   called from s_Option.fold__F0__F1__O
[warn]   called from Lutest_util_ArgParse$.find__T__F1__O__O__AT__O
[warn]   called from Lutest_package$.runSuite__Lutest_framework_TestSuite__AT__AT__F1__F1__F1__T
[warn]   called from Lutest_PlatformShims$.runSuite__Lutest_framework_TestSuite__sjs_js_Array__sjs_js_Array__V
[warn]   called from Lutest_PlatformShims$.$$js$exported$meth$runSuite__Lutest_framework_TestSuite__sjs_js_Array__sjs_js_Array__O
[warn]   called from Lutest_PlatformShims$.<exported>Lutest_PlatformShims$
[warn]   exported to JavaScript with @JSExport
[warn] involving instantiated classes:
[warn]   s_concurrent_impl_ExecutionContextImpl
[warn]   s_concurrent_impl_Future$
[warn]   s_concurrent_Future$
[warn]   Lutest_framework_TestTreeSeq$$anonfun$runAsync$1
[warn]   s_Some
[warn]   Lutest_util_ArgParse$
[warn]   Lutest_package$
[warn]     (already seen, not repeating call stack)
[warn]   Lutest_PlatformShims$
[warn] Referring to non-existent class ju_concurrent_Future
[warn]   called from s_concurrent_impl_ExecutionContextImpl.execute__jl_Runnable__V
[warn]   called from s_concurrent_impl_Future$.apply__F0__s_concurrent_ExecutionContext__s_concurrent_Future
[warn]   called from s_concurrent_Future$.apply__F0__s_concurrent_ExecutionContext__s_concurrent_Future
[warn]   called from Lutest_framework_TestTreeSeq$$anonfun$runAsync$1.apply__s_concurrent_Future
[warn]   called from Lutest_framework_TestTreeSeq$$anonfun$runAsync$1.apply__O
[warn]   called from s_Option.fold__F0__F1__O
[warn]   called from Lutest_util_ArgParse$.find__T__F1__O__O__AT__O
[warn]   called from Lutest_package$.runSuite__Lutest_framework_TestSuite__AT__AT__F1__F1__F1__T
[warn]   called from Lutest_PlatformShims$.runSuite__Lutest_framework_TestSuite__sjs_js_Array__sjs_js_Array__V
[warn]   called from Lutest_PlatformShims$.$$js$exported$meth$runSuite__Lutest_framework_TestSuite__sjs_js_Array__sjs_js_Array__O
[warn]   called from Lutest_PlatformShims$.<exported>Lutest_PlatformShims$
[warn]   exported to JavaScript with @JSExport
[warn] involving instantiated classes:
[warn]   s_concurrent_impl_ExecutionContextImpl
[warn]   s_concurrent_impl_Future$
[warn]   s_concurrent_Future$
[warn]   Lutest_framework_TestTreeSeq$$anonfun$runAsync$1
[warn]   s_Some
[warn]   Lutest_util_ArgParse$
[warn]   Lutest_package$
[warn]     (already seen, not repeating call stack)
[warn]   Lutest_PlatformShims$
[warn] Referring to non-existent class s_concurrent_forkjoin_ForkJoinWorkerThread
[warn]   called from s_concurrent_impl_ExecutionContextImpl.execute__jl_Runnable__V
[warn]   called from s_concurrent_impl_Future$.apply__F0__s_concurrent_ExecutionContext__s_concurrent_Future
[warn]   called from s_concurrent_Future$.apply__F0__s_concurrent_ExecutionContext__s_concurrent_Future
[warn]   called from Lutest_framework_TestTreeSeq$$anonfun$runAsync$1.apply__s_concurrent_Future
[warn]   called from Lutest_framework_TestTreeSeq$$anonfun$runAsync$1.apply__O
[warn]   called from s_Option.fold__F0__F1__O
[warn]   called from Lutest_util_ArgParse$.find__T__F1__O__O__AT__O
[warn]   called from Lutest_package$.runSuite__Lutest_framework_TestSuite__AT__AT__F1__F1__F1__T
[warn]   called from Lutest_PlatformShims$.runSuite__Lutest_framework_TestSuite__sjs_js_Array__sjs_js_Array__V
[warn]   called from Lutest_PlatformShims$.$$js$exported$meth$runSuite__Lutest_framework_TestSuite__sjs_js_Array__sjs_js_Array__O
[warn]   called from Lutest_PlatformShims$.<exported>Lutest_PlatformShims$
[warn]   exported to JavaScript with @JSExport
[warn] involving instantiated classes:
[warn]   s_concurrent_impl_ExecutionContextImpl
[warn]   s_concurrent_impl_Future$
[warn]   s_concurrent_Future$
[warn]   Lutest_framework_TestTreeSeq$$anonfun$runAsync$1
[warn]   s_Some
[warn]   Lutest_util_ArgParse$
[warn]   Lutest_package$
[warn]     (already seen, not repeating call stack)
[warn]   Lutest_PlatformShims$
[warn] Referring to non-existent class s_concurrent_forkjoin_ForkJoinPool
[warn]   called from s_concurrent_impl_ExecutionContextImpl.execute__jl_Runnable__V
[warn]   called from s_concurrent_impl_Future$.apply__F0__s_concurrent_ExecutionContext__s_concurrent_Future
[warn]   called from s_concurrent_Future$.apply__F0__s_concurrent_ExecutionContext__s_concurrent_Future
[warn]   called from Lutest_framework_TestTreeSeq$$anonfun$runAsync$1.apply__s_concurrent_Future
[warn]   called from Lutest_framework_TestTreeSeq$$anonfun$runAsync$1.apply__O
[warn]   called from s_Option.fold__F0__F1__O
[warn]   called from Lutest_util_ArgParse$.find__T__F1__O__O__AT__O
[warn]   called from Lutest_package$.runSuite__Lutest_framework_TestSuite__AT__AT__F1__F1__F1__T
[warn]   called from Lutest_PlatformShims$.runSuite__Lutest_framework_TestSuite__sjs_js_Array__sjs_js_Array__V
[warn]   called from Lutest_PlatformShims$.$$js$exported$meth$runSuite__Lutest_framework_TestSuite__sjs_js_Array__sjs_js_Array__O
[warn]   called from Lutest_PlatformShims$.<exported>Lutest_PlatformShims$
[warn]   exported to JavaScript with @JSExport
[warn] involving instantiated classes:
[warn]   s_concurrent_impl_ExecutionContextImpl
[warn]   s_concurrent_impl_Future$
[warn]   s_concurrent_Future$
[warn]   Lutest_framework_TestTreeSeq$$anonfun$runAsync$1
[warn]   s_Some
[warn]   Lutest_util_ArgParse$
[warn]   Lutest_package$
[warn]     (already seen, not repeating call stack)
[warn]   Lutest_PlatformShims$
[warn] Referring to non-existent method s_concurrent_impl_ExecutionContextImpl$$anon$3.fork__s_concurrent_forkjoin_ForkJoinTask
[warn]   called from s_concurrent_impl_ExecutionContextImpl.execute__jl_Runnable__V
[warn]   called from s_concurrent_impl_Future$.apply__F0__s_concurrent_ExecutionContext__s_concurrent_Future
[warn]   called from s_concurrent_Future$.apply__F0__s_concurrent_ExecutionContext__s_concurrent_Future
[warn]   called from Lutest_framework_TestTreeSeq$$anonfun$runAsync$1.apply__s_concurrent_Future
[warn]   called from Lutest_framework_TestTreeSeq$$anonfun$runAsync$1.apply__O
[warn]   called from s_Option.fold__F0__F1__O
[warn]   called from Lutest_util_ArgParse$.find__T__F1__O__O__AT__O
[warn]   called from Lutest_package$.runSuite__Lutest_framework_TestSuite__AT__AT__F1__F1__F1__T
[warn]   called from Lutest_PlatformShims$.runSuite__Lutest_framework_TestSuite__sjs_js_Array__sjs_js_Array__V
[warn]   called from Lutest_PlatformShims$.$$js$exported$meth$runSuite__Lutest_framework_TestSuite__sjs_js_Array__sjs_js_Array__O
[warn]   called from Lutest_PlatformShims$.<exported>Lutest_PlatformShims$
[warn]   exported to JavaScript with @JSExport
[warn] involving instantiated classes:
[warn]   s_concurrent_impl_ExecutionContextImpl
[warn]   s_concurrent_impl_Future$
[warn]   s_concurrent_Future$
[warn]   Lutest_framework_TestTreeSeq$$anonfun$runAsync$1
[warn]   s_Some
[warn]   Lutest_util_ArgParse$
[warn]   Lutest_package$
[warn]     (already seen, not repeating call stack)
[warn]   Lutest_PlatformShims$
[warn] Referring to non-existent class jl_Thread$UncaughtExceptionHandler
[warn]   called from s_concurrent_impl_ExecutionContextImpl.init___ju_concurrent_Executor__F1
[warn]   called from s_concurrent_impl_ExecutionContextImpl$.fromExecutor__ju_concurrent_Executor__F1__s_concurrent_impl_ExecutionContextImpl
[warn]   called from s_concurrent_ExecutionContext$Implicits$.global$lzycompute__p1__s_concurrent_ExecutionContextExecutor
[warn]   called from s_concurrent_ExecutionContext$Implicits$.global__s_concurrent_ExecutionContextExecutor
[warn]   called from s_concurrent_ExecutionContext$.global__s_concurrent_ExecutionContextExecutor
[warn]   called from Lutest_package$.runSuite__Lutest_framework_TestSuite__AT__AT__F1__F1__F1__T
[warn]   called from Lutest_PlatformShims$.runSuite__Lutest_framework_TestSuite__sjs_js_Array__sjs_js_Array__V
[warn]   called from Lutest_PlatformShims$.$$js$exported$meth$runSuite__Lutest_framework_TestSuite__sjs_js_Array__sjs_js_Array__O
[warn]   called from Lutest_PlatformShims$.<exported>Lutest_PlatformShims$
[warn]   exported to JavaScript with @JSExport
[warn] involving instantiated classes:
[warn]   s_concurrent_impl_ExecutionContextImpl$
[warn]   s_concurrent_ExecutionContext$Implicits$
[warn]   s_concurrent_ExecutionContext$
[warn]   Lutest_package$
[warn]   Lutest_PlatformShims$
[warn] Referring to non-existent method s_concurrent_forkjoin_ForkJoinPool.execute__s_concurrent_forkjoin_ForkJoinTask__V
[warn]   called from s_concurrent_impl_ExecutionContextImpl.execute__jl_Runnable__V
[warn]   called from s_concurrent_impl_Future$.apply__F0__s_concurrent_ExecutionContext__s_concurrent_Future
[warn]   called from s_concurrent_Future$.apply__F0__s_concurrent_ExecutionContext__s_concurrent_Future
[warn]   called from Lutest_framework_TestTreeSeq$$anonfun$runAsync$1.apply__s_concurrent_Future
[warn]   called from Lutest_framework_TestTreeSeq$$anonfun$runAsync$1.apply__O
[warn]   called from s_Option.fold__F0__F1__O
[warn]   called from Lutest_util_ArgParse$.find__T__F1__O__O__AT__O
[warn]   called from Lutest_package$.runSuite__Lutest_framework_TestSuite__AT__AT__F1__F1__F1__T
[warn]   called from Lutest_PlatformShims$.runSuite__Lutest_framework_TestSuite__sjs_js_Array__sjs_js_Array__V
[warn]   called from Lutest_PlatformShims$.$$js$exported$meth$runSuite__Lutest_framework_TestSuite__sjs_js_Array__sjs_js_Array__O
[warn]   called from Lutest_PlatformShims$.<exported>Lutest_PlatformShims$
[warn]   exported to JavaScript with @JSExport
[warn] involving instantiated classes:
[warn]   s_concurrent_impl_ExecutionContextImpl
[warn]   s_concurrent_impl_Future$
[warn]   s_concurrent_Future$
[warn]   Lutest_framework_TestTreeSeq$$anonfun$runAsync$1
[warn]   s_Some
[warn]   Lutest_util_ArgParse$
[warn]   Lutest_package$
[warn]     (already seen, not repeating call stack)
[warn]   Lutest_PlatformShims$
[warn] Referring to non-existent class ju_concurrent_LinkedBlockingQueue
[warn]   called from s_concurrent_impl_ExecutionContextImpl.createExecutorService__ju_concurrent_ExecutorService
[warn]   called from s_concurrent_impl_ExecutionContextImpl.init___ju_concurrent_Executor__F1
[warn]   called from s_concurrent_impl_ExecutionContextImpl$.fromExecutor__ju_concurrent_Executor__F1__s_concurrent_impl_ExecutionContextImpl
[warn]   called from s_concurrent_ExecutionContext$Implicits$.global$lzycompute__p1__s_concurrent_ExecutionContextExecutor
[warn]   called from s_concurrent_ExecutionContext$Implicits$.global__s_concurrent_ExecutionContextExecutor
[warn]   called from s_concurrent_ExecutionContext$.global__s_concurrent_ExecutionContextExecutor
[warn]   called from Lutest_package$.runSuite__Lutest_framework_TestSuite__AT__AT__F1__F1__F1__T
[warn]   called from Lutest_PlatformShims$.runSuite__Lutest_framework_TestSuite__sjs_js_Array__sjs_js_Array__V
[warn]   called from Lutest_PlatformShims$.$$js$exported$meth$runSuite__Lutest_framework_TestSuite__sjs_js_Array__sjs_js_Array__O
[warn]   called from Lutest_PlatformShims$.<exported>Lutest_PlatformShims$
[warn]   exported to JavaScript with @JSExport
[warn] involving instantiated classes:
[warn]   s_concurrent_impl_ExecutionContextImpl
[warn]   s_concurrent_impl_ExecutionContextImpl$
[warn]   s_concurrent_ExecutionContext$Implicits$
[warn]   s_concurrent_ExecutionContext$
[warn]   Lutest_package$
[warn]   Lutest_PlatformShims$
[warn] Referring to non-existent class s_concurrent_forkjoin_ForkJoinPool$ForkJoinWorkerThreadFactory
[warn]   called from s_concurrent_impl_ExecutionContextImpl.createExecutorService__ju_concurrent_ExecutorService
[warn]   called from s_concurrent_impl_ExecutionContextImpl.init___ju_concurrent_Executor__F1
[warn]   called from s_concurrent_impl_ExecutionContextImpl$.fromExecutor__ju_concurrent_Executor__F1__s_concurrent_impl_ExecutionContextImpl
[warn]   called from s_concurrent_ExecutionContext$Implicits$.global$lzycompute__p1__s_concurrent_ExecutionContextExecutor
[warn]   called from s_concurrent_ExecutionContext$Implicits$.global__s_concurrent_ExecutionContextExecutor
[warn]   called from s_concurrent_ExecutionContext$.global__s_concurrent_ExecutionContextExecutor
[warn]   called from Lutest_package$.runSuite__Lutest_framework_TestSuite__AT__AT__F1__F1__F1__T
[warn]   called from Lutest_PlatformShims$.runSuite__Lutest_framework_TestSuite__sjs_js_Array__sjs_js_Array__V
[warn]   called from Lutest_PlatformShims$.$$js$exported$meth$runSuite__Lutest_framework_TestSuite__sjs_js_Array__sjs_js_Array__O
[warn]   called from Lutest_PlatformShims$.<exported>Lutest_PlatformShims$
[warn]   exported to JavaScript with @JSExport
[warn] involving instantiated classes:
[warn]   s_concurrent_impl_ExecutionContextImpl
[warn]   s_concurrent_impl_ExecutionContextImpl$
[warn]   s_concurrent_ExecutionContext$Implicits$
[warn]   s_concurrent_ExecutionContext$
[warn]   Lutest_package$
[warn]   Lutest_PlatformShims$
[warn] Referring to non-existent class ju_concurrent_ThreadFactory
[warn]   called from s_concurrent_impl_ExecutionContextImpl.createExecutorService__ju_concurrent_ExecutorService
[warn]   called from s_concurrent_impl_ExecutionContextImpl.init___ju_concurrent_Executor__F1
[warn]   called from s_concurrent_impl_ExecutionContextImpl$.fromExecutor__ju_concurrent_Executor__F1__s_concurrent_impl_ExecutionContextImpl
[warn]   called from s_concurrent_ExecutionContext$Implicits$.global$lzycompute__p1__s_concurrent_ExecutionContextExecutor
[warn]   called from s_concurrent_ExecutionContext$Implicits$.global__s_concurrent_ExecutionContextExecutor
[warn]   called from s_concurrent_ExecutionContext$.global__s_concurrent_ExecutionContextExecutor
[warn]   called from Lutest_package$.runSuite__Lutest_framework_TestSuite__AT__AT__F1__F1__F1__T
[warn]   called from Lutest_PlatformShims$.runSuite__Lutest_framework_TestSuite__sjs_js_Array__sjs_js_Array__V
[warn]   called from Lutest_PlatformShims$.$$js$exported$meth$runSuite__Lutest_framework_TestSuite__sjs_js_Array__sjs_js_Array__O
[warn]   called from Lutest_PlatformShims$.<exported>Lutest_PlatformShims$
[warn]   exported to JavaScript with @JSExport
[warn] involving instantiated classes:
[warn]   s_concurrent_impl_ExecutionContextImpl
[warn]   s_concurrent_impl_ExecutionContextImpl$
[warn]   s_concurrent_ExecutionContext$Implicits$
[warn]   s_concurrent_ExecutionContext$
[warn]   Lutest_package$
[warn]   Lutest_PlatformShims$
[warn] Referring to non-existent class ju_concurrent_ThreadPoolExecutor
[warn]   called from s_concurrent_impl_ExecutionContextImpl.createExecutorService__ju_concurrent_ExecutorService
[warn]   called from s_concurrent_impl_ExecutionContextImpl.init___ju_concurrent_Executor__F1
[warn]   called from s_concurrent_impl_ExecutionContextImpl$.fromExecutor__ju_concurrent_Executor__F1__s_concurrent_impl_ExecutionContextImpl
[warn]   called from s_concurrent_ExecutionContext$Implicits$.global$lzycompute__p1__s_concurrent_ExecutionContextExecutor
[warn]   called from s_concurrent_ExecutionContext$Implicits$.global__s_concurrent_ExecutionContextExecutor
[warn]   called from s_concurrent_ExecutionContext$.global__s_concurrent_ExecutionContextExecutor
[warn]   called from Lutest_package$.runSuite__Lutest_framework_TestSuite__AT__AT__F1__F1__F1__T
[warn]   called from Lutest_PlatformShims$.runSuite__Lutest_framework_TestSuite__sjs_js_Array__sjs_js_Array__V
[warn]   called from Lutest_PlatformShims$.$$js$exported$meth$runSuite__Lutest_framework_TestSuite__sjs_js_Array__sjs_js_Array__O
[warn]   called from Lutest_PlatformShims$.<exported>Lutest_PlatformShims$
[warn]   exported to JavaScript with @JSExport
[warn] involving instantiated classes:
[warn]   s_concurrent_impl_ExecutionContextImpl
[warn]   s_concurrent_impl_ExecutionContextImpl$
[warn]   s_concurrent_ExecutionContext$Implicits$
[warn]   s_concurrent_ExecutionContext$
[warn]   Lutest_package$
[warn]   Lutest_PlatformShims$
[warn] Referring to non-existent method s_concurrent_forkjoin_ForkJoinPool.init___I__s_concurrent_forkjoin_ForkJoinPool$ForkJoinWorkerThreadFactory__jl_Thread$UncaughtExceptionHandler__Z
[warn]   called from s_concurrent_impl_ExecutionContextImpl.createExecutorService__ju_concurrent_ExecutorService
[warn]   called from s_concurrent_impl_ExecutionContextImpl.init___ju_concurrent_Executor__F1
[warn]   called from s_concurrent_impl_ExecutionContextImpl$.fromExecutor__ju_concurrent_Executor__F1__s_concurrent_impl_ExecutionContextImpl
[warn]   called from s_concurrent_ExecutionContext$Implicits$.global$lzycompute__p1__s_concurrent_ExecutionContextExecutor
[warn]   called from s_concurrent_ExecutionContext$Implicits$.global__s_concurrent_ExecutionContextExecutor
[warn]   called from s_concurrent_ExecutionContext$.global__s_concurrent_ExecutionContextExecutor
[warn]   called from Lutest_package$.runSuite__Lutest_framework_TestSuite__AT__AT__F1__F1__F1__T
[warn]   called from Lutest_PlatformShims$.runSuite__Lutest_framework_TestSuite__sjs_js_Array__sjs_js_Array__V
[warn]   called from Lutest_PlatformShims$.$$js$exported$meth$runSuite__Lutest_framework_TestSuite__sjs_js_Array__sjs_js_Array__O
[warn]   called from Lutest_PlatformShims$.<exported>Lutest_PlatformShims$
[warn]   exported to JavaScript with @JSExport
[warn] involving instantiated classes:
[warn]   s_concurrent_impl_ExecutionContextImpl
[warn]   s_concurrent_impl_ExecutionContextImpl$
[warn]   s_concurrent_ExecutionContext$Implicits$
[warn]   s_concurrent_ExecutionContext$
[warn]   Lutest_package$
[warn]   Lutest_PlatformShims$
[warn] Referring to non-existent method ju_concurrent_ThreadPoolExecutor.allowCoreThreadTimeOut__Z__V
[warn]   called from s_concurrent_impl_ExecutionContextImpl.createExecutorService__ju_concurrent_ExecutorService
[warn]   called from s_concurrent_impl_ExecutionContextImpl.init___ju_concurrent_Executor__F1
[warn]   called from s_concurrent_impl_ExecutionContextImpl$.fromExecutor__ju_concurrent_Executor__F1__s_concurrent_impl_ExecutionContextImpl
[warn]   called from s_concurrent_ExecutionContext$Implicits$.global$lzycompute__p1__s_concurrent_ExecutionContextExecutor
[warn]   called from s_concurrent_ExecutionContext$Implicits$.global__s_concurrent_ExecutionContextExecutor
[warn]   called from s_concurrent_ExecutionContext$.global__s_concurrent_ExecutionContextExecutor
[warn]   called from Lutest_package$.runSuite__Lutest_framework_TestSuite__AT__AT__F1__F1__F1__T
[warn]   called from Lutest_PlatformShims$.runSuite__Lutest_framework_TestSuite__sjs_js_Array__sjs_js_Array__V
[warn]   called from Lutest_PlatformShims$.$$js$exported$meth$runSuite__Lutest_framework_TestSuite__sjs_js_Array__sjs_js_Array__O
[warn]   called from Lutest_PlatformShims$.<exported>Lutest_PlatformShims$
[warn]   exported to JavaScript with @JSExport
[warn] involving instantiated classes:
[warn]   s_concurrent_impl_ExecutionContextImpl
[warn]   s_concurrent_impl_ExecutionContextImpl$
[warn]   s_concurrent_ExecutionContext$Implicits$
[warn]   s_concurrent_ExecutionContext$
[warn]   Lutest_package$
[warn]   Lutest_PlatformShims$
[warn] Referring to non-existent method ju_concurrent_ThreadPoolExecutor.init___I__I__J__ju_concurrent_TimeUnit__ju_concurrent_BlockingQueue__ju_concurrent_ThreadFactory
[warn]   called from s_concurrent_impl_ExecutionContextImpl.createExecutorService__ju_concurrent_ExecutorService
[warn]   called from s_concurrent_impl_ExecutionContextImpl.init___ju_concurrent_Executor__F1
[warn]   called from s_concurrent_impl_ExecutionContextImpl$.fromExecutor__ju_concurrent_Executor__F1__s_concurrent_impl_ExecutionContextImpl
[warn]   called from s_concurrent_ExecutionContext$Implicits$.global$lzycompute__p1__s_concurrent_ExecutionContextExecutor
[warn]   called from s_concurrent_ExecutionContext$Implicits$.global__s_concurrent_ExecutionContextExecutor
[warn]   called from s_concurrent_ExecutionContext$.global__s_concurrent_ExecutionContextExecutor
[warn]   called from Lutest_package$.runSuite__Lutest_framework_TestSuite__AT__AT__F1__F1__F1__T
[warn]   called from Lutest_PlatformShims$.runSuite__Lutest_framework_TestSuite__sjs_js_Array__sjs_js_Array__V
[warn]   called from Lutest_PlatformShims$.$$js$exported$meth$runSuite__Lutest_framework_TestSuite__sjs_js_Array__sjs_js_Array__O
[warn]   called from Lutest_PlatformShims$.<exported>Lutest_PlatformShims$
[warn]   exported to JavaScript with @JSExport
[warn] involving instantiated classes:
[warn]   s_concurrent_impl_ExecutionContextImpl
[warn]   s_concurrent_impl_ExecutionContextImpl$
[warn]   s_concurrent_ExecutionContext$Implicits$
[warn]   s_concurrent_ExecutionContext$
[warn]   Lutest_package$
[warn]   Lutest_PlatformShims$
[error]
[error] /Users/haoyi/Dropbox (Personal)/Workspace/scalatags/js/target/scala-2.10/scalatags-test-fastopt.js:39580
[error] calaJS.c.s_concurrent_impl_ExecutionContextImpl$$anon$3.prototype = new ScalaJ
[error]                                                                     ^
[error] TypeError: undefined is not a function
[error]     at Object.<anonymous> (/Users/haoyi/Dropbox (Personal)/Workspace/scalatags/js/target/scala-2.10/scalatags-test-fastopt.js:39580:70)
[error]     at Module._compile (module.js:456:26)
[error]     at Object.Module._extensions..js (module.js:474:10)
[error]     at Module.load (module.js:356:32)
[error]     at Function.Module._load (module.js:312:12)
[error]     at Module.require (module.js:364:17)
[error]     at require (module.js:380:17)
[error]     at [stdin]:15:1
[error]     at Object.<anonymous> ([stdin]-wrapper:6:22)
[error]     at Module._compile (module.js:456:26)
[info] -----------------------------------Results-----------------------------------
[info]
[info] Tests: 0
[info] Passed: 0
[info] Failed: 0
[success] Total time: 40 s, completed May 27, 2014 12:17:56 AM

Haoyi Li

unread,
May 27, 2014, 3:50:21 AM5/27/14
to Anton Kulaga, scal...@googlegroups.com
Another thing that I find myself wanting to do is to use third party javascript libraries inside my unit tests. For example, I would like to depend upon the webjar for Mustache.JS and use the mustache template engine in my unit tests for Scalatags, to compare the performance between the two. Is there any way to tell the JSEnv to grab a particular file from my classpath?

Sébastien Doeraene

unread,
May 27, 2014, 5:27:09 AM5/27/14
to Anton Kulaga, scal...@googlegroups.com, Haoyi Li
Hi,

Not yet. They are currently still in SNAPSHOT versions (dom and jquery 0.5-SNAPSHOT; pickling 0.3-SNAPSHOT).
We should probably publish released versions soon.

Sébastien


Sébastien Doeraene

unread,
May 27, 2014, 5:30:23 AM5/27/14
to Haoyi Li, Anton Kulaga, scal...@googlegroups.com
So it does warn you that you are using non-existent classes. I suppose dce does not manage to eliminate the subclasses that inherit from the missing classes, even though your program does not have an actual path leading to them being instantiated. So we'll probably have to also introduce dummy parents in the fastOpt mode:
https://github.com/scala-js/scala-js/issues/685

Sébastien


Sébastien Doeraene

unread,
May 27, 2014, 5:33:18 AM5/27/14
to Haoyi Li, Tobias Schlatter, scal...@googlegroups.com
On Tue, May 27, 2014 at 9:50 AM, Haoyi Li <haoy...@gmail.com> wrote:
Another thing that I find myself wanting to do is to use third party javascript libraries inside my unit tests. For example, I would like to depend upon the webjar for Mustache.JS and use the mustache template engine in my unit tests for Scalatags, to compare the performance between the two. Is there any way to tell the JSEnv to grab a particular file from my classpath?

That would be best answered by Tobias, because he made that happen, but essentially it boils down to one line in your sbt build:

jsDependencies += "org.webjar" % "mustachejs" % "0.8.1" / "path/to/somefile.js" % "test"

Cheers,
Sébastien

Tobias Schlatter

unread,
May 27, 2014, 5:35:06 AM5/27/14
to scal...@googlegroups.com, Anton Kulaga
TL;DR:

Use the jsDependencies key as used in the jasmine-test-framework project. If you want mustache.js to be included, write:

jsDependencies += "org.webjars" % "mustachejs" % "0.8.1" / "mustache.js"

This will:
  1. Add the mustache webjar to your dependencies
  2. Make jsEnvs load mustache.js before running any Scala.js code in any project depending on this one.

Some more details:

We had the same issue with the jasmine-test-framework, where you could happily depend on the framework and it would pull all 
transitive dependencies (webjars, test-bridge, etc) and do everything for you, except loading the js library it downloaded. We figured this will become an issue over time for other libraries (especially facade libraries), too.

Therefore, we came up with the jsDependency mechanism that allows you to:
  1. Specify what js libraries you need to have loaded (they need to be as resources on the classpath, normally through a webjar)
  2. Specify what things they need to have loaded in order to work (in JS loading requires a full order, unlike the JVM)
This is what you can see in the jsDependencies for the jasmine-test-framework:

jsDependencies ++= Seq(
// "this project depends on jasmine-polyfills.js, which is provided by an external means"
// (in this case, it's in the project itself and packaged as resource)
ProvidedJS / "jasmine-polyfills.js",
// "this project also depends on jasmine.js, which can be found in the given webjar, 
// but make sure I'm loaded after jasmine-polyfills.js"
  "org.webjars" % "jasmine" % "1.3.1" /
   "jasmine.js" dependsOn "jasmine-polyfills.js"
),

Once the whole application is linked together, the packager/optimizer tries to establish a full order using these ordering constraints (and fails if there are cycles).

Implementation-wise, the jsDependencies statements generate entries in a JS_DEPENDENICES file which is a manifest packaged in the JAR of a library and read by the classpath builders (note that it doesn't contain information about how to pull these dependencies, since we have the whole maven/ivy management taking care of the webjar dependencies already).

If you need to use these dependencies in your HTML files and don't want to bother including them yourself, in 0.5.0-RC1 you'll be able to set:

skip in packageJSDependencies := false,

And then just use helloworld-jsdeps.js which will come along with helloworld-fastopt.js etc.

Hope this explains enough. Please let me know if you have any questions.

Tobias

Vasya Novikov

unread,
May 27, 2014, 5:36:45 AM5/27/14
to scal...@googlegroups.com
Awesome! Thanks a lot!

Although I did run into an issue:

* my project compiled fine and succeeded with optimizeJS on 0.4.3

* my project compiles on 0.5.0-M3, but it fails with fullOptJS. It says:

> fullOptJS
[info] Fast optimizing
/home/vasya/data/dev/pointsgame/modules/reactivePoints/target/scala-2.10/reactivepoints-fastopt.js
[warn] Referring to non-existent class Lrx_package$
[warn] called from Lnet_pointsgame_scalajs_PlayerGlobalVariables$.init___
[warn] called from Lnet_pointsgame_scalajs_JSPaper.init___I__I__T
[warn] called from Lnet_pointsgame_scalajs_MyTestingEntryPoint$.init___
[warn] exported to JavaScript with @JSExport

...and similar messages for about 10 pages on my terminal.


Any ideas where that can come from?

The declaration of the dependencies, if that may matter, can be seen
here: https://gitorious.org/pointsgame/pointsgame/
The changes I did locally was upgrading the scalajs version to 0.5.0-M3,
disabling `fork in Test := true`, renaming module dependencies from
`optimizeJS` to `fullOptJS`.



On 2014-05-26 21:33, Haoyi Li wrote:
>> What about Scala.Rx, could you publish it for ScalaJS 0.5?
>
> Just did that, along with Scalatags, uTest, uPickle. I'm not bothering to
> test these manually since I'm going to publish new versions anyway when
> 0.5.0-FINAL comes out, but the test suites pass. If you have problems just
> yell.
>
> Cross-cross published for {ScalaJVM, ScalaJS-0.5.0-M3} X {2.10.4, 2.11.1}
>
>
> /com/scalarx/scalarx_2.11/0.2.4/scalarx_2.11-0.2.4.pom.asc<https://oss.sonatype.org/content/repositories/releases/com/scalarx/scalarx_2.11/0.2.4/scalarx_2.11-0.2.4.pom.asc>
> (SHA1: 33ded7fbd073571971d37b90351486c2d5aa3763)
> /com/scalarx/scalarx_2.11/0.2.4/scalarx_2.11-0.2.4.jar<https://oss.sonatype.org/content/repositories/releases/com/scalarx/scalarx_2.11/0.2.4/scalarx_2.11-0.2.4.jar>
> (SHA1: b108a9a7c2e1b2b30feffd638e5de6a0ef015814)
> /com/scalarx/scalarx_2.11/0.2.4/scalarx_2.11-0.2.4-javadoc.jar<https://oss.sonatype.org/content/repositories/releases/com/scalarx/scalarx_2.11/0.2.4/scalarx_2.11-0.2.4-javadoc.jar>
> (SHA1: a7891705a2e7e267275fc73b5992d156ad6b73a7)
> /com/scalarx/scalarx_2.11/0.2.4/scalarx_2.11-0.2.4-javadoc.jar.asc<https://oss.sonatype.org/content/repositories/releases/com/scalarx/scalarx_2.11/0.2.4/scalarx_2.11-0.2.4-javadoc.jar.asc>
> (SHA1: 50ed54577fea6007f681982b33cd30360ac7c543)
> /com/scalarx/scalarx_2.11/0.2.4/scalarx_2.11-0.2.4.pom<https://oss.sonatype.org/content/repositories/releases/com/scalarx/scalarx_2.11/0.2.4/scalarx_2.11-0.2.4.pom>
> (SHA1: 29f6fac520e530cd35c7ed4959060f8111144301)
> /com/scalarx/scalarx_2.11/0.2.4/scalarx_2.11-0.2.4-sources.jar.asc<https://oss.sonatype.org/content/repositories/releases/com/scalarx/scalarx_2.11/0.2.4/scalarx_2.11-0.2.4-sources.jar.asc>
> (SHA1: 07c730917ca91fbc8efb1900352bc1054addad1b)
> /com/scalarx/scalarx_2.11/0.2.4/scalarx_2.11-0.2.4-sources.jar<https://oss.sonatype.org/content/repositories/releases/com/scalarx/scalarx_2.11/0.2.4/scalarx_2.11-0.2.4-sources.jar>
> (SHA1: 46740bf899140c240f509ec41b55da4386d1a87f)
> /com/scalarx/scalarx_2.11/0.2.4/scalarx_2.11-0.2.4.jar.asc<https://oss.sonatype.org/content/repositories/releases/com/scalarx/scalarx_2.11/0.2.4/scalarx_2.11-0.2.4.jar.asc>
> (SHA1: 7172495be680b380fca61e49dff01fcbd6034e56)
> /com/scalarx/scalarx_sjs0.5.0-M3_2.11/0.2.4/scalarx_sjs0.5.0-M3_2.11-0.2.4.jar<https://oss.sonatype.org/content/repositories/releases/com/scalarx/scalarx_sjs0.5.0-M3_2.11/0.2.4/scalarx_sjs0.5.0-M3_2.11-0.2.4.jar>
> (SHA1: 13d928ae61b56dcc1301371ef3a31a79557a89d9)
> /com/scalarx/scalarx_sjs0.5.0-M3_2.11/0.2.4/scalarx_sjs0.5.0-M3_2.11-0.2.4-javadoc.jar.asc<https://oss.sonatype.org/content/repositories/releases/com/scalarx/scalarx_sjs0.5.0-M3_2.11/0.2.4/scalarx_sjs0.5.0-M3_2.11-0.2.4-javadoc.jar.asc>
> (SHA1: 5e8994e32281b2ed235c4a0f506d182e6e5587cc)
> /com/scalarx/scalarx_sjs0.5.0-M3_2.11/0.2.4/scalarx_sjs0.5.0-M3_2.11-0.2.4-javadoc.jar<https://oss.sonatype.org/content/repositories/releases/com/scalarx/scalarx_sjs0.5.0-M3_2.11/0.2.4/scalarx_sjs0.5.0-M3_2.11-0.2.4-javadoc.jar>
> (SHA1: 47fa34a585612af2461dc0403a69e25f6b8adca9)
> /com/scalarx/scalarx_sjs0.5.0-M3_2.11/0.2.4/scalarx_sjs0.5.0-M3_2.11-0.2.4.pom.asc<https://oss.sonatype.org/content/repositories/releases/com/scalarx/scalarx_sjs0.5.0-M3_2.11/0.2.4/scalarx_sjs0.5.0-M3_2.11-0.2.4.pom.asc>
> (SHA1: 33a3227ec65c1609bc2f585da594eb3fecba9916)
> /com/scalarx/scalarx_sjs0.5.0-M3_2.11/0.2.4/scalarx_sjs0.5.0-M3_2.11-0.2.4-sources.jar<https://oss.sonatype.org/content/repositories/releases/com/scalarx/scalarx_sjs0.5.0-M3_2.11/0.2.4/scalarx_sjs0.5.0-M3_2.11-0.2.4-sources.jar>
> (SHA1: ee88ccef0c4d8397c84c1346a6d0d335586538d3)
> /com/scalarx/scalarx_sjs0.5.0-M3_2.11/0.2.4/scalarx_sjs0.5.0-M3_2.11-0.2.4.jar.asc<https://oss.sonatype.org/content/repositories/releases/com/scalarx/scalarx_sjs0.5.0-M3_2.11/0.2.4/scalarx_sjs0.5.0-M3_2.11-0.2.4.jar.asc>
> (SHA1: 0c5ef09a87838c160994a59a98c003c2a48da959)
> /com/scalarx/scalarx_sjs0.5.0-M3_2.11/0.2.4/scalarx_sjs0.5.0-M3_2.11-0.2.4-sources.jar.asc<https://oss.sonatype.org/content/repositories/releases/com/scalarx/scalarx_sjs0.5.0-M3_2.11/0.2.4/scalarx_sjs0.5.0-M3_2.11-0.2.4-sources.jar.asc>
> (SHA1: 912be0eacb7f84c52452f42932b7bd29baaca0c9)
> /com/scalarx/scalarx_sjs0.5.0-M3_2.11/0.2.4/scalarx_sjs0.5.0-M3_2.11-0.2.4.pom<https://oss.sonatype.org/content/repositories/releases/com/scalarx/scalarx_sjs0.5.0-M3_2.11/0.2.4/scalarx_sjs0.5.0-M3_2.11-0.2.4.pom>
> (SHA1: 109b100999420eda105fda19dadbc8990909feb7)
> /com/scalarx/scalarx_sjs0.5.0-M3_2.10/0.2.4/scalarx_sjs0.5.0-M3_2.10-0.2.4.pom.asc<https://oss.sonatype.org/content/repositories/releases/com/scalarx/scalarx_sjs0.5.0-M3_2.10/0.2.4/scalarx_sjs0.5.0-M3_2.10-0.2.4.pom.asc>
> (SHA1: d9684e4eaae2798d839868bcdf2e7060e305f55b)
> /com/scalarx/scalarx_sjs0.5.0-M3_2.10/0.2.4/scalarx_sjs0.5.0-M3_2.10-0.2.4.jar<https://oss.sonatype.org/content/repositories/releases/com/scalarx/scalarx_sjs0.5.0-M3_2.10/0.2.4/scalarx_sjs0.5.0-M3_2.10-0.2.4.jar>
> (SHA1: c060355a2783c999ff52ecc7c6e3a142cc861b7b)
> /com/scalarx/scalarx_sjs0.5.0-M3_2.10/0.2.4/scalarx_sjs0.5.0-M3_2.10-0.2.4-javadoc.jar<https://oss.sonatype.org/content/repositories/releases/com/scalarx/scalarx_sjs0.5.0-M3_2.10/0.2.4/scalarx_sjs0.5.0-M3_2.10-0.2.4-javadoc.jar>
> (SHA1: c7d5ad2057b76bd39ee4ee24f5224a467c7662a7)
> /com/scalarx/scalarx_sjs0.5.0-M3_2.10/0.2.4/scalarx_sjs0.5.0-M3_2.10-0.2.4.pom<https://oss.sonatype.org/content/repositories/releases/com/scalarx/scalarx_sjs0.5.0-M3_2.10/0.2.4/scalarx_sjs0.5.0-M3_2.10-0.2.4.pom>
> (SHA1: 46be5b299021dccdade6010f72f988e39ae342a7)
> /com/scalarx/scalarx_sjs0.5.0-M3_2.10/0.2.4/scalarx_sjs0.5.0-M3_2.10-0.2.4-sources.jar<https://oss.sonatype.org/content/repositories/releases/com/scalarx/scalarx_sjs0.5.0-M3_2.10/0.2.4/scalarx_sjs0.5.0-M3_2.10-0.2.4-sources.jar>
> (SHA1: 4273c83b175e6c0b82ddf0af6e4ab2465b4b4292)
> /com/scalarx/scalarx_sjs0.5.0-M3_2.10/0.2.4/scalarx_sjs0.5.0-M3_2.10-0.2.4-javadoc.jar.asc<https://oss.sonatype.org/content/repositories/releases/com/scalarx/scalarx_sjs0.5.0-M3_2.10/0.2.4/scalarx_sjs0.5.0-M3_2.10-0.2.4-javadoc.jar.asc>
> (SHA1: a3c26ae4a8c685e19bf20af92e805805bb42a49e)
> /com/scalarx/scalarx_sjs0.5.0-M3_2.10/0.2.4/scalarx_sjs0.5.0-M3_2.10-0.2.4-sources.jar.asc<https://oss.sonatype.org/content/repositories/releases/com/scalarx/scalarx_sjs0.5.0-M3_2.10/0.2.4/scalarx_sjs0.5.0-M3_2.10-0.2.4-sources.jar.asc>
> (SHA1: 1a44b74c19c02788ad89d31d2b1697c3334a0b63)
> /com/scalarx/scalarx_sjs0.5.0-M3_2.10/0.2.4/scalarx_sjs0.5.0-M3_2.10-0.2.4.jar.asc<https://oss.sonatype.org/content/repositories/releases/com/scalarx/scalarx_sjs0.5.0-M3_2.10/0.2.4/scalarx_sjs0.5.0-M3_2.10-0.2.4.jar.asc>
> (SHA1: 3814d1d782327265370c9581cc920592dd9436e7)
> /com/scalarx/scalarx_2.10/0.2.4/scalarx_2.10-0.2.4-sources.jar<https://oss.sonatype.org/content/repositories/releases/com/scalarx/scalarx_2.10/0.2.4/scalarx_2.10-0.2.4-sources.jar>
> (SHA1: dc45aeb0cce382eb9f9a0d5fb7400c23ba322509)
> /com/scalarx/scalarx_2.10/0.2.4/scalarx_2.10-0.2.4-javadoc.jar<https://oss.sonatype.org/content/repositories/releases/com/scalarx/scalarx_2.10/0.2.4/scalarx_2.10-0.2.4-javadoc.jar>
> (SHA1: d549a13778a09dd0a0c39ad9aa812158d22a547c)
> /com/scalarx/scalarx_2.10/0.2.4/scalarx_2.10-0.2.4.pom.asc<https://oss.sonatype.org/content/repositories/releases/com/scalarx/scalarx_2.10/0.2.4/scalarx_2.10-0.2.4.pom.asc>
> (SHA1: 09789267ca828600da269fa1ea9889f431f262ff)
> /com/scalarx/scalarx_2.10/0.2.4/scalarx_2.10-0.2.4.jar.asc<https://oss.sonatype.org/content/repositories/releases/com/scalarx/scalarx_2.10/0.2.4/scalarx_2.10-0.2.4.jar.asc>
> (SHA1: 656a0dd51d5250c6ca94cc92859ecdc3c97bdc01)
> /com/scalarx/scalarx_2.10/0.2.4/scalarx_2.10-0.2.4-javadoc.jar.asc<https://oss.sonatype.org/content/repositories/releases/com/scalarx/scalarx_2.10/0.2.4/scalarx_2.10-0.2.4-javadoc.jar.asc>
> (SHA1: 397c9c2ccb358f1ad8f878316c67c2c31a4bcebe)
> /com/scalarx/scalarx_2.10/0.2.4/scalarx_2.10-0.2.4.pom<https://oss.sonatype.org/content/repositories/releases/com/scalarx/scalarx_2.10/0.2.4/scalarx_2.10-0.2.4.pom>
> (SHA1: ab0f1df10b305af9436e23f9ed44a4636b4771c4)
> /com/scalarx/scalarx_2.10/0.2.4/scalarx_2.10-0.2.4.jar<https://oss.sonatype.org/content/repositories/releases/com/scalarx/scalarx_2.10/0.2.4/scalarx_2.10-0.2.4.jar>
> (SHA1: bf7213fe4419dce6aee13a2dfa9fde1f9f4f42d7)
> /com/scalarx/scalarx_2.10/0.2.4/scalarx_2.10-0.2.4-sources.jar.asc<https://oss.sonatype.org/content/repositories/releases/com/scalarx/scalarx_2.10/0.2.4/scalarx_2.10-0.2.4-sources.jar.asc>
> (SHA1: 64315306cfc887b8b28bf59bc12df4a82bc75781)
>
> /com/scalatags/scalatags_sjs0.5.0-M3_2.10/0.2.5/scalatags_sjs0.5.0-M3_2.10-0.2.5-javadoc.jar.asc<https://oss.sonatype.org/content/repositories/releases/com/scalatags/scalatags_sjs0.5.0-M3_2.10/0.2.5/scalatags_sjs0.5.0-M3_2.10-0.2.5-javadoc.jar.asc>
> (SHA1: c2d5c7c3d3dd1959e769ea0b50b63d14d28d40d6)
> /com/scalatags/scalatags_sjs0.5.0-M3_2.10/0.2.5/scalatags_sjs0.5.0-M3_2.10-0.2.5-javadoc.jar<https://oss.sonatype.org/content/repositories/releases/com/scalatags/scalatags_sjs0.5.0-M3_2.10/0.2.5/scalatags_sjs0.5.0-M3_2.10-0.2.5-javadoc.jar>
> (SHA1: e35aad617f6def5da0fb167d967210b07437b98a)
> /com/scalatags/scalatags_sjs0.5.0-M3_2.10/0.2.5/scalatags_sjs0.5.0-M3_2.10-0.2.5.jar.asc<https://oss.sonatype.org/content/repositories/releases/com/scalatags/scalatags_sjs0.5.0-M3_2.10/0.2.5/scalatags_sjs0.5.0-M3_2.10-0.2.5.jar.asc>
> (SHA1: 0576bbe18cbf5d2acce7673785a10252864b5159)
> /com/scalatags/scalatags_sjs0.5.0-M3_2.10/0.2.5/scalatags_sjs0.5.0-M3_2.10-0.2.5.pom<https://oss.sonatype.org/content/repositories/releases/com/scalatags/scalatags_sjs0.5.0-M3_2.10/0.2.5/scalatags_sjs0.5.0-M3_2.10-0.2.5.pom>
> (SHA1: 26ce672d5c97f4ef992e573c0015a64497b06540)
> /com/scalatags/scalatags_sjs0.5.0-M3_2.10/0.2.5/scalatags_sjs0.5.0-M3_2.10-0.2.5-sources.jar<https://oss.sonatype.org/content/repositories/releases/com/scalatags/scalatags_sjs0.5.0-M3_2.10/0.2.5/scalatags_sjs0.5.0-M3_2.10-0.2.5-sources.jar>
> (SHA1: 504b47348d0a83bace410cf4fed2780040cec07f)
> /com/scalatags/scalatags_sjs0.5.0-M3_2.10/0.2.5/scalatags_sjs0.5.0-M3_2.10-0.2.5.jar<https://oss.sonatype.org/content/repositories/releases/com/scalatags/scalatags_sjs0.5.0-M3_2.10/0.2.5/scalatags_sjs0.5.0-M3_2.10-0.2.5.jar>
> (SHA1: 2e0ffdb53fe0bb04513e24da7b8ded60fd82dad3)
> /com/scalatags/scalatags_sjs0.5.0-M3_2.10/0.2.5/scalatags_sjs0.5.0-M3_2.10-0.2.5.pom.asc<https://oss.sonatype.org/content/repositories/releases/com/scalatags/scalatags_sjs0.5.0-M3_2.10/0.2.5/scalatags_sjs0.5.0-M3_2.10-0.2.5.pom.asc>
> (SHA1: c8b59fa455ced6b45748a2209912d4d21dc8b303)
> /com/scalatags/scalatags_sjs0.5.0-M3_2.10/0.2.5/scalatags_sjs0.5.0-M3_2.10-0.2.5-sources.jar.asc<https://oss.sonatype.org/content/repositories/releases/com/scalatags/scalatags_sjs0.5.0-M3_2.10/0.2.5/scalatags_sjs0.5.0-M3_2.10-0.2.5-sources.jar.asc>
> (SHA1: 37cbc58e5d18d0de7166c371f7ba6afed0640f61)
> /com/scalatags/scalatags_sjs0.5.0-M3_2.11/0.2.5/scalatags_sjs0.5.0-M3_2.11-0.2.5.pom.asc<https://oss.sonatype.org/content/repositories/releases/com/scalatags/scalatags_sjs0.5.0-M3_2.11/0.2.5/scalatags_sjs0.5.0-M3_2.11-0.2.5.pom.asc>
> (SHA1: 6d754a752cfcfa879f33c3594eecd92a65b82a62)
> /com/scalatags/scalatags_sjs0.5.0-M3_2.11/0.2.5/scalatags_sjs0.5.0-M3_2.11-0.2.5.jar<https://oss.sonatype.org/content/repositories/releases/com/scalatags/scalatags_sjs0.5.0-M3_2.11/0.2.5/scalatags_sjs0.5.0-M3_2.11-0.2.5.jar>
> (SHA1: aecc5d08c0a1add979ee89bd66d2d1e81ae76cd1)
> /com/scalatags/scalatags_sjs0.5.0-M3_2.11/0.2.5/scalatags_sjs0.5.0-M3_2.11-0.2.5-sources.jar.asc<https://oss.sonatype.org/content/repositories/releases/com/scalatags/scalatags_sjs0.5.0-M3_2.11/0.2.5/scalatags_sjs0.5.0-M3_2.11-0.2.5-sources.jar.asc>
> (SHA1: c7d6909dbc73b86cb8f7c86d18a5265588779f41)
> /com/scalatags/scalatags_sjs0.5.0-M3_2.11/0.2.5/scalatags_sjs0.5.0-M3_2.11-0.2.5.pom<https://oss.sonatype.org/content/repositories/releases/com/scalatags/scalatags_sjs0.5.0-M3_2.11/0.2.5/scalatags_sjs0.5.0-M3_2.11-0.2.5.pom>
> (SHA1: 4ad830182e47d959b09ec0e4b37c10058bd6e213)
> /com/scalatags/scalatags_sjs0.5.0-M3_2.11/0.2.5/scalatags_sjs0.5.0-M3_2.11-0.2.5-javadoc.jar.asc<https://oss.sonatype.org/content/repositories/releases/com/scalatags/scalatags_sjs0.5.0-M3_2.11/0.2.5/scalatags_sjs0.5.0-M3_2.11-0.2.5-javadoc.jar.asc>
> (SHA1: f7bcc59cd73ce9d5450e257751f6c3673fa00b86)
> /com/scalatags/scalatags_sjs0.5.0-M3_2.11/0.2.5/scalatags_sjs0.5.0-M3_2.11-0.2.5.jar.asc<https://oss.sonatype.org/content/repositories/releases/com/scalatags/scalatags_sjs0.5.0-M3_2.11/0.2.5/scalatags_sjs0.5.0-M3_2.11-0.2.5.jar.asc>
> (SHA1: 3174b46f9ce8d2fdf489260a2c564d70a4b71b73)
> /com/scalatags/scalatags_sjs0.5.0-M3_2.11/0.2.5/scalatags_sjs0.5.0-M3_2.11-0.2.5-javadoc.jar<https://oss.sonatype.org/content/repositories/releases/com/scalatags/scalatags_sjs0.5.0-M3_2.11/0.2.5/scalatags_sjs0.5.0-M3_2.11-0.2.5-javadoc.jar>
> (SHA1: 7c98d1a0cfa1901742c615cbd709642b8b93c5f4)
> /com/scalatags/scalatags_sjs0.5.0-M3_2.11/0.2.5/scalatags_sjs0.5.0-M3_2.11-0.2.5-sources.jar<https://oss.sonatype.org/content/repositories/releases/com/scalatags/scalatags_sjs0.5.0-M3_2.11/0.2.5/scalatags_sjs0.5.0-M3_2.11-0.2.5-sources.jar>
> (SHA1: 300fbbe5b6fca14d86f5b764b66ab558fdd96e0b)
> /com/scalatags/scalatags_2.11/0.2.5/scalatags_2.11-0.2.5.pom.asc<https://oss.sonatype.org/content/repositories/releases/com/scalatags/scalatags_2.11/0.2.5/scalatags_2.11-0.2.5.pom.asc>
> (SHA1: 78acba89af54e37b3caf450908abe28a592d01c6)
> /com/scalatags/scalatags_2.11/0.2.5/scalatags_2.11-0.2.5.jar.asc<https://oss.sonatype.org/content/repositories/releases/com/scalatags/scalatags_2.11/0.2.5/scalatags_2.11-0.2.5.jar.asc>
> (SHA1: 18de54c951e8dc5b491478b726449c0dc5e27770)
> /com/scalatags/scalatags_2.11/0.2.5/scalatags_2.11-0.2.5-sources.jar.asc<https://oss.sonatype.org/content/repositories/releases/com/scalatags/scalatags_2.11/0.2.5/scalatags_2.11-0.2.5-sources.jar.asc>
> (SHA1: 9e793cb0279cbf0933b7b173dee32d513a27cf5c)
> /com/scalatags/scalatags_2.11/0.2.5/scalatags_2.11-0.2.5-sources.jar<https://oss.sonatype.org/content/repositories/releases/com/scalatags/scalatags_2.11/0.2.5/scalatags_2.11-0.2.5-sources.jar>
> (SHA1: fd60fe242c39c907c912297871f76db7a94a20b8)
> /com/scalatags/scalatags_2.11/0.2.5/scalatags_2.11-0.2.5-javadoc.jar<https://oss.sonatype.org/content/repositories/releases/com/scalatags/scalatags_2.11/0.2.5/scalatags_2.11-0.2.5-javadoc.jar>
> (SHA1: ceea82837c15b1427c47445a3eece45d48184bb9)
> /com/scalatags/scalatags_2.11/0.2.5/scalatags_2.11-0.2.5-javadoc.jar.asc<https://oss.sonatype.org/content/repositories/releases/com/scalatags/scalatags_2.11/0.2.5/scalatags_2.11-0.2.5-javadoc.jar.asc>
> (SHA1: e133c31babdf02897db06018696297aeda0d91aa)
> /com/scalatags/scalatags_2.11/0.2.5/scalatags_2.11-0.2.5.pom<https://oss.sonatype.org/content/repositories/releases/com/scalatags/scalatags_2.11/0.2.5/scalatags_2.11-0.2.5.pom>
> (SHA1: d225e6b3525a61531cc7d256a942020d7f0bdc3c)
> /com/scalatags/scalatags_2.11/0.2.5/scalatags_2.11-0.2.5.jar<https://oss.sonatype.org/content/repositories/releases/com/scalatags/scalatags_2.11/0.2.5/scalatags_2.11-0.2.5.jar>
> (SHA1: 4e2f474b618d4e7239b3295c2533d57dc8a0c0fb)
> /com/scalatags/scalatags_2.10/0.2.5/scalatags_2.10-0.2.5-sources.jar.asc<https://oss.sonatype.org/content/repositories/releases/com/scalatags/scalatags_2.10/0.2.5/scalatags_2.10-0.2.5-sources.jar.asc>
> (SHA1: 1db9785fe70d31f3f4a388701559d624b0002672)
> /com/scalatags/scalatags_2.10/0.2.5/scalatags_2.10-0.2.5.jar.asc<https://oss.sonatype.org/content/repositories/releases/com/scalatags/scalatags_2.10/0.2.5/scalatags_2.10-0.2.5.jar.asc>
> (SHA1: e82a34e31efc2fc79d3b08271daafb315375047d)
> /com/scalatags/scalatags_2.10/0.2.5/scalatags_2.10-0.2.5-javadoc.jar<https://oss.sonatype.org/content/repositories/releases/com/scalatags/scalatags_2.10/0.2.5/scalatags_2.10-0.2.5-javadoc.jar>
> (SHA1: 6788a0e86a82f33be34a25e925c68d301a3ce88b)
> /com/scalatags/scalatags_2.10/0.2.5/scalatags_2.10-0.2.5.pom<https://oss.sonatype.org/content/repositories/releases/com/scalatags/scalatags_2.10/0.2.5/scalatags_2.10-0.2.5.pom>
> (SHA1: 9b869b17c038d661137b288596b7abcb804d70ce)
> /com/scalatags/scalatags_2.10/0.2.5/scalatags_2.10-0.2.5-sources.jar<https://oss.sonatype.org/content/repositories/releases/com/scalatags/scalatags_2.10/0.2.5/scalatags_2.10-0.2.5-sources.jar>
> (SHA1: 85c907b1d5bd99fe80b7e6444f2fc9d2377daee3)
> /com/scalatags/scalatags_2.10/0.2.5/scalatags_2.10-0.2.5.pom.asc<https://oss.sonatype.org/content/repositories/releases/com/scalatags/scalatags_2.10/0.2.5/scalatags_2.10-0.2.5.pom.asc>
> (SHA1: 75d572475e8020f0571dc2e22d348ff11b7b210e)
> /com/scalatags/scalatags_2.10/0.2.5/scalatags_2.10-0.2.5-javadoc.jar.asc<https://oss.sonatype.org/content/repositories/releases/com/scalatags/scalatags_2.10/0.2.5/scalatags_2.10-0.2.5-javadoc.jar.asc>
> (SHA1: f3a015271e301569e0d6f24a898802aecc551a9a)
> /com/scalatags/scalatags_2.10/0.2.5/scalatags_2.10-0.2.5.jar<https://oss.sonatype.org/content/repositories/releases/com/scalatags/scalatags_2.10/0.2.5/scalatags_2.10-0.2.5.jar>
> (SHA1: 40ccf6729c9f703acc5b4d38df8ef1a4f6348e8c)
>
> /com/lihaoyi/utest-runner_2.10/0.1.5/utest-runner_2.10-0.1.5.pom<https://oss.sonatype.org/content/repositories/releases/com/lihaoyi/utest-runner_2.10/0.1.5/utest-runner_2.10-0.1.5.pom>
> (SHA1: b5f45a08aa8edf2d8a0170fc790d42b03258b938)
> /com/lihaoyi/utest-runner_2.10/0.1.5/utest-runner_2.10-0.1.5.jar<https://oss.sonatype.org/content/repositories/releases/com/lihaoyi/utest-runner_2.10/0.1.5/utest-runner_2.10-0.1.5.jar>
> (SHA1: d6b9fd60d3ae9c8096896990508f02bf1057291d)
> /com/lihaoyi/utest-runner_2.10/0.1.5/utest-runner_2.10-0.1.5-javadoc.jar<https://oss.sonatype.org/content/repositories/releases/com/lihaoyi/utest-runner_2.10/0.1.5/utest-runner_2.10-0.1.5-javadoc.jar>
> (SHA1: 87d5a7d1094363807ed29bcf8f3a3c1e542322b9)
> /com/lihaoyi/utest-runner_2.10/0.1.5/utest-runner_2.10-0.1.5-javadoc.jar.asc<https://oss.sonatype.org/content/repositories/releases/com/lihaoyi/utest-runner_2.10/0.1.5/utest-runner_2.10-0.1.5-javadoc.jar.asc>
> (SHA1: 6d4662cedad14491220e390a55b266c91b706c35)
> /com/lihaoyi/utest-runner_2.10/0.1.5/utest-runner_2.10-0.1.5.pom.asc<https://oss.sonatype.org/content/repositories/releases/com/lihaoyi/utest-runner_2.10/0.1.5/utest-runner_2.10-0.1.5.pom.asc>
> (SHA1: 0826aed102a48a214378b20462af25d0516ccab2)
> /com/lihaoyi/utest-runner_2.10/0.1.5/utest-runner_2.10-0.1.5-sources.jar<https://oss.sonatype.org/content/repositories/releases/com/lihaoyi/utest-runner_2.10/0.1.5/utest-runner_2.10-0.1.5-sources.jar>
> (SHA1: e971f5657e5235aff975ceb1c8e66660cd814146)
> /com/lihaoyi/utest-runner_2.10/0.1.5/utest-runner_2.10-0.1.5-sources.jar.asc<https://oss.sonatype.org/content/repositories/releases/com/lihaoyi/utest-runner_2.10/0.1.5/utest-runner_2.10-0.1.5-sources.jar.asc>
> (SHA1: a6d6f6347a42e172f4eb4d40e1f5fc36b26609bc)
> /com/lihaoyi/utest-runner_2.10/0.1.5/utest-runner_2.10-0.1.5.jar.asc<https://oss.sonatype.org/content/repositories/releases/com/lihaoyi/utest-runner_2.10/0.1.5/utest-runner_2.10-0.1.5.jar.asc>
> (SHA1: de8b8954e9dd386af4fe06cd547e1866cb3fb52e)
> /com/lihaoyi/utest-test-js_sjs0.5.0-M3_2.10/0.1.5/utest-test-js_sjs0.5.0-M3_2.10-0.1.5-sources.jar<https://oss.sonatype.org/content/repositories/releases/com/lihaoyi/utest-test-js_sjs0.5.0-M3_2.10/0.1.5/utest-test-js_sjs0.5.0-M3_2.10-0.1.5-sources.jar>
> (SHA1: 3632ac97ed55e887f644af26e82a46e261452097)
> /com/lihaoyi/utest-test-js_sjs0.5.0-M3_2.10/0.1.5/utest-test-js_sjs0.5.0-M3_2.10-0.1.5-sources.jar.asc<https://oss.sonatype.org/content/repositories/releases/com/lihaoyi/utest-test-js_sjs0.5.0-M3_2.10/0.1.5/utest-test-js_sjs0.5.0-M3_2.10-0.1.5-sources.jar.asc>
> (SHA1: e34ddde8a4da082c63fb123f8e1be4f253fd82ea)
> /com/lihaoyi/utest-test-js_sjs0.5.0-M3_2.10/0.1.5/utest-test-js_sjs0.5.0-M3_2.10-0.1.5.jar<https://oss.sonatype.org/content/repositories/releases/com/lihaoyi/utest-test-js_sjs0.5.0-M3_2.10/0.1.5/utest-test-js_sjs0.5.0-M3_2.10-0.1.5.jar>
> (SHA1: c54bcf4ddf1bf2468c81f4d2d9f3d2c8963165b8)
> /com/lihaoyi/utest-test-js_sjs0.5.0-M3_2.10/0.1.5/utest-test-js_sjs0.5.0-M3_2.10-0.1.5.jar.asc<https://oss.sonatype.org/content/repositories/releases/com/lihaoyi/utest-test-js_sjs0.5.0-M3_2.10/0.1.5/utest-test-js_sjs0.5.0-M3_2.10-0.1.5.jar.asc>
> (SHA1: a77448b96dfc41995f0a4db80529568eca790fb4)
> /com/lihaoyi/utest-test-js_sjs0.5.0-M3_2.10/0.1.5/utest-test-js_sjs0.5.0-M3_2.10-0.1.5-javadoc.jar<https://oss.sonatype.org/content/repositories/releases/com/lihaoyi/utest-test-js_sjs0.5.0-M3_2.10/0.1.5/utest-test-js_sjs0.5.0-M3_2.10-0.1.5-javadoc.jar>
> (SHA1: e450d7a579b61419bd30882ad1559274a597c0c1)
> /com/lihaoyi/utest-test-js_sjs0.5.0-M3_2.10/0.1.5/utest-test-js_sjs0.5.0-M3_2.10-0.1.5-javadoc.jar.asc<https://oss.sonatype.org/content/repositories/releases/com/lihaoyi/utest-test-js_sjs0.5.0-M3_2.10/0.1.5/utest-test-js_sjs0.5.0-M3_2.10-0.1.5-javadoc.jar.asc>
> (SHA1: 02e5a7da6048016faab77a27fdb1d23971bd6f14)
> /com/lihaoyi/utest-test-js_sjs0.5.0-M3_2.10/0.1.5/utest-test-js_sjs0.5.0-M3_2.10-0.1.5.pom<https://oss.sonatype.org/content/repositories/releases/com/lihaoyi/utest-test-js_sjs0.5.0-M3_2.10/0.1.5/utest-test-js_sjs0.5.0-M3_2.10-0.1.5.pom>
> (SHA1: 0a2a13ad1b49e3bcba187a3a7ae4bdc5014c8c5c)
> /com/lihaoyi/utest-test-js_sjs0.5.0-M3_2.10/0.1.5/utest-test-js_sjs0.5.0-M3_2.10-0.1.5.pom.asc<https://oss.sonatype.org/content/repositories/releases/com/lihaoyi/utest-test-js_sjs0.5.0-M3_2.10/0.1.5/utest-test-js_sjs0.5.0-M3_2.10-0.1.5.pom.asc>
> (SHA1: 547af037bb96c60bdf84c51ead26229e3386fb27)
> /com/lihaoyi/utest_sjs0.5.0-M3_2.11/0.1.5/utest_sjs0.5.0-M3_2.11-0.1.5-javadoc.jar<https://oss.sonatype.org/content/repositories/releases/com/lihaoyi/utest_sjs0.5.0-M3_2.11/0.1.5/utest_sjs0.5.0-M3_2.11-0.1.5-javadoc.jar>
> (SHA1: ef2b8abc67d3317a2dea152f8e5e4ecb1edf8025)
> /com/lihaoyi/utest_sjs0.5.0-M3_2.11/0.1.5/utest_sjs0.5.0-M3_2.11-0.1.5.pom.asc<https://oss.sonatype.org/content/repositories/releases/com/lihaoyi/utest_sjs0.5.0-M3_2.11/0.1.5/utest_sjs0.5.0-M3_2.11-0.1.5.pom.asc>
> (SHA1: b4661a859862950d824e235601f06e1a14d39a0d)
> /com/lihaoyi/utest_sjs0.5.0-M3_2.11/0.1.5/utest_sjs0.5.0-M3_2.11-0.1.5.jar.asc<https://oss.sonatype.org/content/repositories/releases/com/lihaoyi/utest_sjs0.5.0-M3_2.11/0.1.5/utest_sjs0.5.0-M3_2.11-0.1.5.jar.asc>
> (SHA1: 7b59ad876b5196db39d310f8b4a77d64fec2a18d)
> /com/lihaoyi/utest_sjs0.5.0-M3_2.11/0.1.5/utest_sjs0.5.0-M3_2.11-0.1.5-sources.jar<https://oss.sonatype.org/content/repositories/releases/com/lihaoyi/utest_sjs0.5.0-M3_2.11/0.1.5/utest_sjs0.5.0-M3_2.11-0.1.5-sources.jar>
> (SHA1: a3fd109a4bb1c406af3bb782e8626a75ccffa4c4)
> /com/lihaoyi/utest_sjs0.5.0-M3_2.11/0.1.5/utest_sjs0.5.0-M3_2.11-0.1.5.pom<https://oss.sonatype.org/content/repositories/releases/com/lihaoyi/utest_sjs0.5.0-M3_2.11/0.1.5/utest_sjs0.5.0-M3_2.11-0.1.5.pom>
> (SHA1: 0f290b005003b8b9ffffcde35ad65d44821ebc40)
> /com/lihaoyi/utest_sjs0.5.0-M3_2.11/0.1.5/utest_sjs0.5.0-M3_2.11-0.1.5.jar<https://oss.sonatype.org/content/repositories/releases/com/lihaoyi/utest_sjs0.5.0-M3_2.11/0.1.5/utest_sjs0.5.0-M3_2.11-0.1.5.jar>
> (SHA1: 0ad19659b669a464645c32ee4b4fc43e8ac4de08)
> /com/lihaoyi/utest_sjs0.5.0-M3_2.11/0.1.5/utest_sjs0.5.0-M3_2.11-0.1.5-javadoc.jar.asc<https://oss.sonatype.org/content/repositories/releases/com/lihaoyi/utest_sjs0.5.0-M3_2.11/0.1.5/utest_sjs0.5.0-M3_2.11-0.1.5-javadoc.jar.asc>
> (SHA1: dd8edd0bfaf544a090009b4cd10f57edaaae1a63)
> /com/lihaoyi/utest_sjs0.5.0-M3_2.11/0.1.5/utest_sjs0.5.0-M3_2.11-0.1.5-sources.jar.asc<https://oss.sonatype.org/content/repositories/releases/com/lihaoyi/utest_sjs0.5.0-M3_2.11/0.1.5/utest_sjs0.5.0-M3_2.11-0.1.5-sources.jar.asc>
> (SHA1: 456ba3062685187c0c97d01d29b70378e5e17e01)
> /com/lihaoyi/utest_2.11/0.1.5/utest_2.11-0.1.5.pom.asc<https://oss.sonatype.org/content/repositories/releases/com/lihaoyi/utest_2.11/0.1.5/utest_2.11-0.1.5.pom.asc>
> (SHA1: e1593441128cc105446108ed5d1fb02c143a3055)
> /com/lihaoyi/utest_2.11/0.1.5/utest_2.11-0.1.5-javadoc.jar<https://oss.sonatype.org/content/repositories/releases/com/lihaoyi/utest_2.11/0.1.5/utest_2.11-0.1.5-javadoc.jar>
> (SHA1: 3f877ec1630695f1f15bdf61e371bd52153d9f93)
> /com/lihaoyi/utest_2.11/0.1.5/utest_2.11-0.1.5-sources.jar.asc<https://oss.sonatype.org/content/repositories/releases/com/lihaoyi/utest_2.11/0.1.5/utest_2.11-0.1.5-sources.jar.asc>
> (SHA1: 666f3e6b888cfe1c5d20c39ee8ffa2586139cbb1)
> /com/lihaoyi/utest_2.11/0.1.5/utest_2.11-0.1.5.jar.asc<https://oss.sonatype.org/content/repositories/releases/com/lihaoyi/utest_2.11/0.1.5/utest_2.11-0.1.5.jar.asc>
> (SHA1: 7c3896a0a7507a5657501e32c76ad9d54481d14e)
> /com/lihaoyi/utest_2.11/0.1.5/utest_2.11-0.1.5-javadoc.jar.asc<https://oss.sonatype.org/content/repositories/releases/com/lihaoyi/utest_2.11/0.1.5/utest_2.11-0.1.5-javadoc.jar.asc>
> (SHA1: 2afe9aa08676fe861478a9e76522627c97a82c9d)
> /com/lihaoyi/utest_2.11/0.1.5/utest_2.11-0.1.5.pom<https://oss.sonatype.org/content/repositories/releases/com/lihaoyi/utest_2.11/0.1.5/utest_2.11-0.1.5.pom>
> (SHA1: 4f7e25c99a8e7f61ad5a7cae6f7473e91fffc9be)
> /com/lihaoyi/utest_2.11/0.1.5/utest_2.11-0.1.5.jar<https://oss.sonatype.org/content/repositories/releases/com/lihaoyi/utest_2.11/0.1.5/utest_2.11-0.1.5.jar>
> (SHA1: d4db0321d1d02f95b070ffa90f3e98e7f4701c62)
> /com/lihaoyi/utest_2.11/0.1.5/utest_2.11-0.1.5-sources.jar<https://oss.sonatype.org/content/repositories/releases/com/lihaoyi/utest_2.11/0.1.5/utest_2.11-0.1.5-sources.jar>
> (SHA1: 6c6a3a959548e78827481a6f5ae0cc719d4a53bb)
> /com/lihaoyi/upickle_2.11/0.1.1/upickle_2.11-0.1.1-sources.jar.asc<https://oss.sonatype.org/content/repositories/releases/com/lihaoyi/upickle_2.11/0.1.1/upickle_2.11-0.1.1-sources.jar.asc>
> (SHA1: 984ac94ac64895b403625139d55550bd4f0e5d33)
> /com/lihaoyi/upickle_2.11/0.1.1/upickle_2.11-0.1.1.jar.asc<https://oss.sonatype.org/content/repositories/releases/com/lihaoyi/upickle_2.11/0.1.1/upickle_2.11-0.1.1.jar.asc>
> (SHA1: ba4f95495eb4b20f98208f15e8831f178da8a828)
> /com/lihaoyi/upickle_2.11/0.1.1/upickle_2.11-0.1.1.pom.asc<https://oss.sonatype.org/content/repositories/releases/com/lihaoyi/upickle_2.11/0.1.1/upickle_2.11-0.1.1.pom.asc>
> (SHA1: 0e865fe93c25acd8c289c1a825fbd1774ca9843b)
> /com/lihaoyi/upickle_2.11/0.1.1/upickle_2.11-0.1.1-javadoc.jar.asc<https://oss.sonatype.org/content/repositories/releases/com/lihaoyi/upickle_2.11/0.1.1/upickle_2.11-0.1.1-javadoc.jar.asc>
> (SHA1: 8d6fb30cf68c7206cac737d0254558d13ef38751)
> /com/lihaoyi/upickle_2.11/0.1.1/upickle_2.11-0.1.1.jar<https://oss.sonatype.org/content/repositories/releases/com/lihaoyi/upickle_2.11/0.1.1/upickle_2.11-0.1.1.jar>
> (SHA1: 4fae08d155a0a951e3bc7bf9c6c019bedc269f58)
> /com/lihaoyi/upickle_2.11/0.1.1/upickle_2.11-0.1.1-javadoc.jar<https://oss.sonatype.org/content/repositories/releases/com/lihaoyi/upickle_2.11/0.1.1/upickle_2.11-0.1.1-javadoc.jar>
> (SHA1: daec8b641cd8e22481c822eb02f2cb83c3eb32f7)
> /com/lihaoyi/upickle_2.11/0.1.1/upickle_2.11-0.1.1-sources.jar<https://oss.sonatype.org/content/repositories/releases/com/lihaoyi/upickle_2.11/0.1.1/upickle_2.11-0.1.1-sources.jar>
> (SHA1: a432d4cfa5e9f2681957b7db1e5955c040f952a8)
> /com/lihaoyi/upickle_2.11/0.1.1/upickle_2.11-0.1.1.pom<https://oss.sonatype.org/content/repositories/releases/com/lihaoyi/upickle_2.11/0.1.1/upickle_2.11-0.1.1.pom>
> (SHA1: 50a7194bf46407497ed12ae45aac4c6d377c6c19)
> /com/lihaoyi/utest-js-plugin_2.10_0.13/0.1.5/utest-js-plugin-0.1.5.jar<https://oss.sonatype.org/content/repositories/releases/com/lihaoyi/utest-js-plugin_2.10_0.13/0.1.5/utest-js-plugin-0.1.5.jar>
> (SHA1: 69a42ae0812956430c5dc897662342484eb7b734)
> /com/lihaoyi/utest-js-plugin_2.10_0.13/0.1.5/utest-js-plugin-0.1.5.jar.asc<https://oss.sonatype.org/content/repositories/releases/com/lihaoyi/utest-js-plugin_2.10_0.13/0.1.5/utest-js-plugin-0.1.5.jar.asc>
> (SHA1: bb2acb8926e5df2db79b24a1b71846b7c51a49e6)
> /com/lihaoyi/utest-js-plugin_2.10_0.13/0.1.5/utest-js-plugin-0.1.5.pom.asc<https://oss.sonatype.org/content/repositories/releases/com/lihaoyi/utest-js-plugin_2.10_0.13/0.1.5/utest-js-plugin-0.1.5.pom.asc>
> (SHA1: ffa10a60c43aeefbd6b83453249e3c5fb25a9185)
> /com/lihaoyi/utest-js-plugin_2.10_0.13/0.1.5/utest-js-plugin-0.1.5-sources.jar.asc<https://oss.sonatype.org/content/repositories/releases/com/lihaoyi/utest-js-plugin_2.10_0.13/0.1.5/utest-js-plugin-0.1.5-sources.jar.asc>
> (SHA1: 207fd377983d0f696427338755c4ea683fec06a1)
> /com/lihaoyi/utest-js-plugin_2.10_0.13/0.1.5/utest-js-plugin-0.1.5-javadoc.jar.asc<https://oss.sonatype.org/content/repositories/releases/com/lihaoyi/utest-js-plugin_2.10_0.13/0.1.5/utest-js-plugin-0.1.5-javadoc.jar.asc>
> (SHA1: 439bb5fa6cbeb5e85baae2b1f5f1ac4b1d702abd)
> /com/lihaoyi/utest-js-plugin_2.10_0.13/0.1.5/utest-js-plugin-0.1.5-javadoc.jar<https://oss.sonatype.org/content/repositories/releases/com/lihaoyi/utest-js-plugin_2.10_0.13/0.1.5/utest-js-plugin-0.1.5-javadoc.jar>
> (SHA1: c4f3fccdd2ea3764ecd315b5a6277a30979007cc)
> /com/lihaoyi/utest-js-plugin_2.10_0.13/0.1.5/utest-js-plugin-0.1.5-sources.jar<https://oss.sonatype.org/content/repositories/releases/com/lihaoyi/utest-js-plugin_2.10_0.13/0.1.5/utest-js-plugin-0.1.5-sources.jar>
> (SHA1: 425e35a8d7ad3f7d016306923f17858f9356e25c)
> /com/lihaoyi/utest-js-plugin_2.10_0.13/0.1.5/utest-js-plugin-0.1.5.pom<https://oss.sonatype.org/content/repositories/releases/com/lihaoyi/utest-js-plugin_2.10_0.13/0.1.5/utest-js-plugin-0.1.5.pom>
> (SHA1: 3466d539f2309fb58b4e94e2a9b3ace9c7dbd97f)
> /com/lihaoyi/upickle_sjs0.5.0-M3_2.11/0.1.1/upickle_sjs0.5.0-M3_2.11-0.1.1.jar<https://oss.sonatype.org/content/repositories/releases/com/lihaoyi/upickle_sjs0.5.0-M3_2.11/0.1.1/upickle_sjs0.5.0-M3_2.11-0.1.1.jar>
> (SHA1: 38e7f00cae532fe38cb269bbe014c6696e419662)
> /com/lihaoyi/upickle_sjs0.5.0-M3_2.11/0.1.1/upickle_sjs0.5.0-M3_2.11-0.1.1-sources.jar<https://oss.sonatype.org/content/repositories/releases/com/lihaoyi/upickle_sjs0.5.0-M3_2.11/0.1.1/upickle_sjs0.5.0-M3_2.11-0.1.1-sources.jar>
> (SHA1: 8ae2439c8ee33940ec66673b7e03048969f124f1)
> /com/lihaoyi/upickle_sjs0.5.0-M3_2.11/0.1.1/upickle_sjs0.5.0-M3_2.11-0.1.1-javadoc.jar<https://oss.sonatype.org/content/repositories/releases/com/lihaoyi/upickle_sjs0.5.0-M3_2.11/0.1.1/upickle_sjs0.5.0-M3_2.11-0.1.1-javadoc.jar>
> (SHA1: b243dd2d7b560194b2678466323a429e0d7ab45c)
> /com/lihaoyi/upickle_sjs0.5.0-M3_2.11/0.1.1/upickle_sjs0.5.0-M3_2.11-0.1.1-javadoc.jar.asc<https://oss.sonatype.org/content/repositories/releases/com/lihaoyi/upickle_sjs0.5.0-M3_2.11/0.1.1/upickle_sjs0.5.0-M3_2.11-0.1.1-javadoc.jar.asc>
> (SHA1: 650fbfae7306632c2c3abce69a67e31d65eaa929)
> /com/lihaoyi/upickle_sjs0.5.0-M3_2.11/0.1.1/upickle_sjs0.5.0-M3_2.11-0.1.1.jar.asc<https://oss.sonatype.org/content/repositories/releases/com/lihaoyi/upickle_sjs0.5.0-M3_2.11/0.1.1/upickle_sjs0.5.0-M3_2.11-0.1.1.jar.asc>
> (SHA1: 3f26154774ef3f0c653520d990bda86a7374a266)
> /com/lihaoyi/upickle_sjs0.5.0-M3_2.11/0.1.1/upickle_sjs0.5.0-M3_2.11-0.1.1-sources.jar.asc<https://oss.sonatype.org/content/repositories/releases/com/lihaoyi/upickle_sjs0.5.0-M3_2.11/0.1.1/upickle_sjs0.5.0-M3_2.11-0.1.1-sources.jar.asc>
> (SHA1: 00e3f26d8afba9c3c198ebabc1ff3f6e2c6c76a6)
> /com/lihaoyi/upickle_sjs0.5.0-M3_2.11/0.1.1/upickle_sjs0.5.0-M3_2.11-0.1.1.pom.asc<https://oss.sonatype.org/content/repositories/releases/com/lihaoyi/upickle_sjs0.5.0-M3_2.11/0.1.1/upickle_sjs0.5.0-M3_2.11-0.1.1.pom.asc>
> (SHA1: cea13a3608050cc03673ecde0fe65294021080b3)
> /com/lihaoyi/upickle_sjs0.5.0-M3_2.11/0.1.1/upickle_sjs0.5.0-M3_2.11-0.1.1.pom<https://oss.sonatype.org/content/repositories/releases/com/lihaoyi/upickle_sjs0.5.0-M3_2.11/0.1.1/upickle_sjs0.5.0-M3_2.11-0.1.1.pom>
> (SHA1: fc9acf6b139af1784ae29ae6b0c2e1539fd7f6a8)
> /com/lihaoyi/upickle_2.10/0.1.1/upickle_2.10-0.1.1.jar.asc<https://oss.sonatype.org/content/repositories/releases/com/lihaoyi/upickle_2.10/0.1.1/upickle_2.10-0.1.1.jar.asc>
> (SHA1: 83c7ba1a42f6912e4c75c69ca9a55cd1e645aad1)
> /com/lihaoyi/upickle_2.10/0.1.1/upickle_2.10-0.1.1.pom<https://oss.sonatype.org/content/repositories/releases/com/lihaoyi/upickle_2.10/0.1.1/upickle_2.10-0.1.1.pom>
> (SHA1: 948432170dd90f7448aff2bc0c9e12c10aac3ec9)
> /com/lihaoyi/upickle_2.10/0.1.1/upickle_2.10-0.1.1-sources.jar<https://oss.sonatype.org/content/repositories/releases/com/lihaoyi/upickle_2.10/0.1.1/upickle_2.10-0.1.1-sources.jar>
> (SHA1: 65700d3d17dff47b7fe3875aef110ec470fba695)
> /com/lihaoyi/upickle_2.10/0.1.1/upickle_2.10-0.1.1.pom.asc<https://oss.sonatype.org/content/repositories/releases/com/lihaoyi/upickle_2.10/0.1.1/upickle_2.10-0.1.1.pom.asc>
> (SHA1: c4b5b77d0c0adda2e11dd9943624bbd1ff8e5d46)
> /com/lihaoyi/upickle_2.10/0.1.1/upickle_2.10-0.1.1-javadoc.jar<https://oss.sonatype.org/content/repositories/releases/com/lihaoyi/upickle_2.10/0.1.1/upickle_2.10-0.1.1-javadoc.jar>
> (SHA1: ef9679340a19e1ebb591ee44fb7495a8e3e71b2a)
> /com/lihaoyi/upickle_2.10/0.1.1/upickle_2.10-0.1.1-javadoc.jar.asc<https://oss.sonatype.org/content/repositories/releases/com/lihaoyi/upickle_2.10/0.1.1/upickle_2.10-0.1.1-javadoc.jar.asc>
> (SHA1: b3bfd394a0a46a062a088cc7ef9e8f30005abf95)
> /com/lihaoyi/upickle_2.10/0.1.1/upickle_2.10-0.1.1.jar<https://oss.sonatype.org/content/repositories/releases/com/lihaoyi/upickle_2.10/0.1.1/upickle_2.10-0.1.1.jar>
> (SHA1: de132db556722889e99514de42ccef1169d70229)
> /com/lihaoyi/upickle_2.10/0.1.1/upickle_2.10-0.1.1-sources.jar.asc<https://oss.sonatype.org/content/repositories/releases/com/lihaoyi/upickle_2.10/0.1.1/upickle_2.10-0.1.1-sources.jar.asc>
> (SHA1: 78278a5973e4c205a1f5d585a4380df8530610c8)
> /com/lihaoyi/utest_2.10/0.1.5/utest_2.10-0.1.5.jar<https://oss.sonatype.org/content/repositories/releases/com/lihaoyi/utest_2.10/0.1.5/utest_2.10-0.1.5.jar>
> (SHA1: 7ea0cd95a5ee76618e198e398407a74e5ca9a6a7)
> /com/lihaoyi/utest_2.10/0.1.5/utest_2.10-0.1.5.pom.asc<https://oss.sonatype.org/content/repositories/releases/com/lihaoyi/utest_2.10/0.1.5/utest_2.10-0.1.5.pom.asc>
> (SHA1: 72c180c788da3d6b4f38540c33de54b4ffbbfb62)
> /com/lihaoyi/utest_2.10/0.1.5/utest_2.10-0.1.5-sources.jar.asc<https://oss.sonatype.org/content/repositories/releases/com/lihaoyi/utest_2.10/0.1.5/utest_2.10-0.1.5-sources.jar.asc>
> (SHA1: ff2b37b3d63fcccae90d84897778426a53d4a138)
> /com/lihaoyi/utest_2.10/0.1.5/utest_2.10-0.1.5.jar.asc<https://oss.sonatype.org/content/repositories/releases/com/lihaoyi/utest_2.10/0.1.5/utest_2.10-0.1.5.jar.asc>
> (SHA1: 209d6ffe5b6d1543b83ebc982cf504c9364fbdae)
> /com/lihaoyi/utest_2.10/0.1.5/utest_2.10-0.1.5-javadoc.jar.asc<https://oss.sonatype.org/content/repositories/releases/com/lihaoyi/utest_2.10/0.1.5/utest_2.10-0.1.5-javadoc.jar.asc>
> (SHA1: df3ab13231d6016a8abdcc094d925c2f15876abe)
> /com/lihaoyi/utest_2.10/0.1.5/utest_2.10-0.1.5.pom<https://oss.sonatype.org/content/repositories/releases/com/lihaoyi/utest_2.10/0.1.5/utest_2.10-0.1.5.pom>
> (SHA1: 7e1058a3b9b064e772533630e67220d0693dc0e3)
> /com/lihaoyi/utest_2.10/0.1.5/utest_2.10-0.1.5-sources.jar<https://oss.sonatype.org/content/repositories/releases/com/lihaoyi/utest_2.10/0.1.5/utest_2.10-0.1.5-sources.jar>
> (SHA1: e3e2b590fd655a0c50aa25a457b21e224f2740ac)
> /com/lihaoyi/utest_2.10/0.1.5/utest_2.10-0.1.5-javadoc.jar<https://oss.sonatype.org/content/repositories/releases/com/lihaoyi/utest_2.10/0.1.5/utest_2.10-0.1.5-javadoc.jar>
> (SHA1: ecad9bf2aa2f228747a0df5332f1789711612e09)
> /com/lihaoyi/utest-test_2.10/0.1.5/utest-test_2.10-0.1.5.jar<https://oss.sonatype.org/content/repositories/releases/com/lihaoyi/utest-test_2.10/0.1.5/utest-test_2.10-0.1.5.jar>
> (SHA1: eb7cbecbaa2ef17e1776720a010b4ff3b5af710a)
> /com/lihaoyi/utest-test_2.10/0.1.5/utest-test_2.10-0.1.5-sources.jar.asc<https://oss.sonatype.org/content/repositories/releases/com/lihaoyi/utest-test_2.10/0.1.5/utest-test_2.10-0.1.5-sources.jar.asc>
> (SHA1: 11d725bf7aef903963c8dae739d37da5c6cbc59c)
> /com/lihaoyi/utest-test_2.10/0.1.5/utest-test_2.10-0.1.5.jar.asc<https://oss.sonatype.org/content/repositories/releases/com/lihaoyi/utest-test_2.10/0.1.5/utest-test_2.10-0.1.5.jar.asc>
> (SHA1: 53f95959a45f93c9fe8fb17b2c08c46864f3281d)
> /com/lihaoyi/utest-test_2.10/0.1.5/utest-test_2.10-0.1.5-javadoc.jar<https://oss.sonatype.org/content/repositories/releases/com/lihaoyi/utest-test_2.10/0.1.5/utest-test_2.10-0.1.5-javadoc.jar>
> (SHA1: 3427b9e2f243f3b3475b37ca2f472d48f01709e7)
> /com/lihaoyi/utest-test_2.10/0.1.5/utest-test_2.10-0.1.5.pom.asc<https://oss.sonatype.org/content/repositories/releases/com/lihaoyi/utest-test_2.10/0.1.5/utest-test_2.10-0.1.5.pom.asc>
> (SHA1: 8b057d5591a34bdc6a3ad3cabd9ca257311dd358)
> /com/lihaoyi/utest-test_2.10/0.1.5/utest-test_2.10-0.1.5-javadoc.jar.asc<https://oss.sonatype.org/content/repositories/releases/com/lihaoyi/utest-test_2.10/0.1.5/utest-test_2.10-0.1.5-javadoc.jar.asc>
> (SHA1: 5221bf4eec1e9c388a7f2c907155a088d6049b8d)
> /com/lihaoyi/utest-test_2.10/0.1.5/utest-test_2.10-0.1.5.pom<https://oss.sonatype.org/content/repositories/releases/com/lihaoyi/utest-test_2.10/0.1.5/utest-test_2.10-0.1.5.pom>
> (SHA1: 519b17014498efb8b7f58f66fbd0c7afd89facae)
> /com/lihaoyi/utest-test_2.10/0.1.5/utest-test_2.10-0.1.5-sources.jar<https://oss.sonatype.org/content/repositories/releases/com/lihaoyi/utest-test_2.10/0.1.5/utest-test_2.10-0.1.5-sources.jar>
> (SHA1: cd7196663b9963a08470cc45209d4036d151aaa8)
> /com/lihaoyi/upickle_sjs0.5.0-M3_2.10/0.1.1/upickle_sjs0.5.0-M3_2.10-0.1.1-javadoc.jar.asc<https://oss.sonatype.org/content/repositories/releases/com/lihaoyi/upickle_sjs0.5.0-M3_2.10/0.1.1/upickle_sjs0.5.0-M3_2.10-0.1.1-javadoc.jar.asc>
> (SHA1: d1a6cd5566f56036d52e48a632889834e64fbe7f)
> /com/lihaoyi/upickle_sjs0.5.0-M3_2.10/0.1.1/upickle_sjs0.5.0-M3_2.10-0.1.1-sources.jar<https://oss.sonatype.org/content/repositories/releases/com/lihaoyi/upickle_sjs0.5.0-M3_2.10/0.1.1/upickle_sjs0.5.0-M3_2.10-0.1.1-sources.jar>
> (SHA1: aa052301b81845357af37a1f8a44615ba5732089)
> /com/lihaoyi/upickle_sjs0.5.0-M3_2.10/0.1.1/upickle_sjs0.5.0-M3_2.10-0.1.1.jar.asc<https://oss.sonatype.org/content/repositories/releases/com/lihaoyi/upickle_sjs0.5.0-M3_2.10/0.1.1/upickle_sjs0.5.0-M3_2.10-0.1.1.jar.asc>
> (SHA1: fe491a9c0e25c550090df0a5a4719f24d391e722)
> /com/lihaoyi/upickle_sjs0.5.0-M3_2.10/0.1.1/upickle_sjs0.5.0-M3_2.10-0.1.1.pom<https://oss.sonatype.org/content/repositories/releases/com/lihaoyi/upickle_sjs0.5.0-M3_2.10/0.1.1/upickle_sjs0.5.0-M3_2.10-0.1.1.pom>
> (SHA1: c584b834c7b272be422d99a34cd95bb520cabfaa)
> /com/lihaoyi/upickle_sjs0.5.0-M3_2.10/0.1.1/upickle_sjs0.5.0-M3_2.10-0.1.1-javadoc.jar<https://oss.sonatype.org/content/repositories/releases/com/lihaoyi/upickle_sjs0.5.0-M3_2.10/0.1.1/upickle_sjs0.5.0-M3_2.10-0.1.1-javadoc.jar>
> (SHA1: 5c8eb201f0ef6b57b78d80a470baab6e4c36a80f)
> /com/lihaoyi/upickle_sjs0.5.0-M3_2.10/0.1.1/upickle_sjs0.5.0-M3_2.10-0.1.1-sources.jar.asc<https://oss.sonatype.org/content/repositories/releases/com/lihaoyi/upickle_sjs0.5.0-M3_2.10/0.1.1/upickle_sjs0.5.0-M3_2.10-0.1.1-sources.jar.asc>
> (SHA1: 66e5216e40daee4c77cb8e30beea51a8837d314c)
> /com/lihaoyi/upickle_sjs0.5.0-M3_2.10/0.1.1/upickle_sjs0.5.0-M3_2.10-0.1.1.pom.asc<https://oss.sonatype.org/content/repositories/releases/com/lihaoyi/upickle_sjs0.5.0-M3_2.10/0.1.1/upickle_sjs0.5.0-M3_2.10-0.1.1.pom.asc>
> (SHA1: 8b3014783de4f13f471e948486d59e16937e4ca7)
> /com/lihaoyi/upickle_sjs0.5.0-M3_2.10/0.1.1/upickle_sjs0.5.0-M3_2.10-0.1.1.jar<https://oss.sonatype.org/content/repositories/releases/com/lihaoyi/upickle_sjs0.5.0-M3_2.10/0.1.1/upickle_sjs0.5.0-M3_2.10-0.1.1.jar>
> (SHA1: fb0a085b86107958956f619757d7cd612648aa96)
> /com/lihaoyi/utest_sjs0.5.0-M3_2.10/0.1.5/utest_sjs0.5.0-M3_2.10-0.1.5.pom<https://oss.sonatype.org/content/repositories/releases/com/lihaoyi/utest_sjs0.5.0-M3_2.10/0.1.5/utest_sjs0.5.0-M3_2.10-0.1.5.pom>
> (SHA1: 4299e37db277b93e5452b955b0a1c972492fe22e)
> /com/lihaoyi/utest_sjs0.5.0-M3_2.10/0.1.5/utest_sjs0.5.0-M3_2.10-0.1.5-javadoc.jar<https://oss.sonatype.org/content/repositories/releases/com/lihaoyi/utest_sjs0.5.0-M3_2.10/0.1.5/utest_sjs0.5.0-M3_2.10-0.1.5-javadoc.jar>
> (SHA1: 89ca25d29b2208a2933747338123eb36d5b57d35)
> /com/lihaoyi/utest_sjs0.5.0-M3_2.10/0.1.5/utest_sjs0.5.0-M3_2.10-0.1.5-sources.jar<https://oss.sonatype.org/content/repositories/releases/com/lihaoyi/utest_sjs0.5.0-M3_2.10/0.1.5/utest_sjs0.5.0-M3_2.10-0.1.5-sources.jar>
> (SHA1: 62e1c9ba1e874351b05801145d464bba79d5a626)
> /com/lihaoyi/utest_sjs0.5.0-M3_2.10/0.1.5/utest_sjs0.5.0-M3_2.10-0.1.5.jar.asc<https://oss.sonatype.org/content/repositories/releases/com/lihaoyi/utest_sjs0.5.0-M3_2.10/0.1.5/utest_sjs0.5.0-M3_2.10-0.1.5.jar.asc>
> (SHA1: 55c56292e99000584b24e5017383b770e3c59a76)
> /com/lihaoyi/utest_sjs0.5.0-M3_2.10/0.1.5/utest_sjs0.5.0-M3_2.10-0.1.5.pom.asc<https://oss.sonatype.org/content/repositories/releases/com/lihaoyi/utest_sjs0.5.0-M3_2.10/0.1.5/utest_sjs0.5.0-M3_2.10-0.1.5.pom.asc>
> (SHA1: 9eed68fcbbe9e3adfa5aa29cc442f5fb65ded026)
> /com/lihaoyi/utest_sjs0.5.0-M3_2.10/0.1.5/utest_sjs0.5.0-M3_2.10-0.1.5-javadoc.jar.asc<https://oss.sonatype.org/content/repositories/releases/com/lihaoyi/utest_sjs0.5.0-M3_2.10/0.1.5/utest_sjs0.5.0-M3_2.10-0.1.5-javadoc.jar.asc>
> (SHA1: 7792aab9c2bd9e3fcc459e46c7b3f0882ef1485f)
> /com/lihaoyi/utest_sjs0.5.0-M3_2.10/0.1.5/utest_sjs0.5.0-M3_2.10-0.1.5.jar<https://oss.sonatype.org/content/repositories/releases/com/lihaoyi/utest_sjs0.5.0-M3_2.10/0.1.5/utest_sjs0.5.0-M3_2.10-0.1.5.jar>
> (SHA1: 5b3115226f3184ce989008e7c4e8e8cbee2ff721)
> /com/lihaoyi/utest_sjs0.5.0-M3_2.10/0.1.5/utest_sjs0.5.0-M3_2.10-0.1.5-sources.jar.asc<https://oss.sonatype.org/content/repositories/releases/com/lihaoyi/utest_sjs0.5.0-M3_2.10/0.1.5/utest_sjs0.5.0-M3_2.10-0.1.5-sources.jar.asc>
> (SHA1: c855ce0f191fa0e7522c10236e2363262da6b0e2)
>
>

--
Vasy Novikov

Sébastien Doeraene

unread,
May 27, 2014, 5:49:30 AM5/27/14
to Vasya Novikov, scal...@googlegroups.com
Hi,

You're not depending on the right libraries built for 0.5 because you forgot to change the %% into %%% when depending on Scala.js libraries. For example:
lazy val scalatagsJs = "com.scalatags" %% "scalatags" % "0.2.5-JS"
should be
lazy val scalatagsJs = "com.scalatags" %%% "scalatags" % "0.2.5"

Cheers,
Sébastien

Vasya Novikov

unread,
May 27, 2014, 7:34:34 AM5/27/14
to scal...@googlegroups.com, Sébastien Doeraene
Thak works, thank you very much!

The application fully works under 0.5.0-M3 .)


BTW, why didn't package resolution fail? Because of the previous
versions of the libraries cross-compiled to scalajs-0.4.3 ?
--
Vasy Novikov

Sébastien Doeraene

unread,
May 27, 2014, 7:43:51 AM5/27/14
to Vasya Novikov, scal...@googlegroups.com

On Tue, May 27, 2014 at 1:34 PM, Vasya Novikov <n1m5-goo...@yandex.ru> wrote:
Because of the previous versions of the libraries cross-compiled to scalajs-0.4.3 ?

Exactly, yes.

Sébastien

Nick Childers

unread,
May 27, 2014, 2:02:26 PM5/27/14
to scal...@googlegroups.com
Any plans on adding scala-parser-combinators to the 0.5.0 release of Scala.js ?

Sébastien Doeraene

unread,
May 27, 2014, 4:58:21 PM5/27/14
to Nick Childers, scal...@googlegroups.com
Not *in* the release, no. But we'll publish them as a separate library (just like it's the case for Scala 2.11).
Sébastien


Haoyi Li

unread,
May 28, 2014, 12:23:00 AM5/28/14
to Sébastien Doeraene, Tobias Schlatter, Nick Childers, scal...@googlegroups.com
@gzm0 I'm doing this:

jsDependencies += "org.webjars" % "mustachejs" % "0.8.1" / "mustache.js" % "test",

But when I do this inside my test:

console.log(scala.scalajs.js.Dynamic.global.Mustache)

It prints "undefined".

I notice that the mustache webjar also contains a "webjars-requirejs.js" file. Do I have to do something with that? 

The mustache.js file starts off with some weird require.js stuff that I'm not familiar with (below). Do you have any idea if that means there's something else I need to do?

(function (root, factory) {
  if (typeof exports === "object" && exports) {
    factory(exports); // CommonJS
  } else {
    var mustache = {};
    factory(mustache);
    if (typeof define === "function" && define.amd) {
      define(mustache); // AMD
    } else {
      root.Mustache = mustache; // <script>
    }
  }
}(this, function (mustache) {


Haoyi Li

unread,
May 28, 2014, 12:31:47 AM5/28/14
to Sébastien Doeraene, Tobias Schlatter, Nick Childers, scal...@googlegroups.com
One question: is the jsDependencies thing something that I need to teach uTest to handle explicitly, or should it be completely transparent to me? I don't see any special handling in the scalajs sbt plugin, but maybe I'm just not looking in the right place

Haoyi Li

unread,
May 28, 2014, 12:53:06 AM5/28/14
to Sébastien Doeraene, Tobias Schlatter, Nick Childers, scal...@googlegroups.com
FWIW I see a JS_DEPENDENCIES file being generated with the following contents, so *something* is happening

{"libDeps":[{"resourceName":"mustache.js","dependencies":[]}],"origin":{"configuration":"test","moduleName":"js"}}

Sébastien Doeraene

unread,
May 29, 2014, 6:22:30 AM5/29/14
to Haoyi Li, Tobias Schlatter, Nick Childers, scal...@googlegroups.com
Hi,

Unfortunately, mustache does something "too" smart to detect in what environment it runs, and behave appropriately. And when it's under Node, it behaves like a Node module, which is not what we want. We do have an idea of how to work around that, but we did not have time to get that into RC1.
See https://github.com/scala-js/scala-js/issues/706

Maybe, in the meantime, you might be able to make it run with Phantom.js.

Cheers,
Sébastien
Reply all
Reply to author
Forward
0 new messages