| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
|
|
|
|
| |
This patch brings support for specialized and scalacheck tests,
and finally makes it possible to run partest for locker.
To do that, you need to write your own partest script: http://bit.ly/wl9HaH,
and keep another clone of your repository that would provide the classes
for running partest. That clone should then be build normally (ant build),
and be used to transplant the stuff that isn't built by locker, namely:
partest, actors, scalacheck, forkjoin, fjbg, msil and jline.
For more information take a look at my scavenger: http://bit.ly/AjMiud.
|
| |
|
|
|
|
|
|
| |
Changed most symbol creations to be consistent with all the others.
Opportunistically streamlined various call sites. Moved some phase-specific
methods out of Symbol to somewhere more appropriate (like that phase.)
|
|
|
|
|
|
|
|
| |
Depending on the file order in the directory, PathSettings.srcSpecLib
could end up as "instrumented.jar.desired.sha1" instead of "instrumented.jar"
which would cause all the specialized tests to fail.
The same goes for scalacheck.jar
|
|\ |
|
| | |
|
|/ |
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Make partest work with spaces in the path (from batch script and ant
task).
- The 'partest' ant task gets a new 'compilerargs' element for scalac
- options (like in scalacfork and javac). Fixed argument list handling
- in partest task. Further improvements to argument list handling for
- all ant tasks. Fixed argument list handling in DirectTest (used by
- partest shell scripts) Fixed path handling in several test cases.
Closes SI-622. Review by phaller.
|
|
|
|
|
|
|
|
|
|
|
| |
Always build command lines in partest as Seq[String] instead of
space-separated command.
Closes SI-1510 which is actually caused by a bad command line string
when the path to Java contains a space, and not by long path names
per se. References SI-622 since this commit fixes the specific error
described there (not closing because follow-up bugs remain).
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Removed assumption that bash is in /bin. Removed --posix option to bash.
Modernized shell constructs: $() instead of ``, [[ ]] instead of [ ].
Added -debug option for all runners which will show you the exact java
command line being run before running it. Added -usebootcp to complement
-nobootcp, and made regular classpath the default on cygwin. Quoted more
things to give us a fighting chance against spaces and parens in paths.
I took the waste-half-a-day step of installing vmware fusion so I could
install windows so I could install cygwin so I could install scala
under cygwin so I could see if it still worked. Seems to. We still
desperately need some way of testing not only everything I'm attempting
to address in this pile of patches but everything which is most likely
now regressing.
:javap now sort of works on windows (not for repl-defined classes as
yet) if JAVA_HOME is set such that I can find tools.jar. Closes SI-4959.
(Risks breaking and) references SI-2092. References SI-622 since that
shouldn't be hard to get working.
|
|
|
|
|
| |
No review.
|
|
|
|
|
|
|
| |
Moved all the eagerly evaluated bits to the top of the file so I can see
them all at once. Let a dozen vals unroll up front so initialization is
more predictable. No review.
|
|
|
|
|
| |
Lots of fiddling in the interests of a better classloading future.
|
| |
|
| |
|
|
|
|
|
|
| |
First end-to-end implementation of a runtime reflexive compiler that
generates and loads bytecodes. Review by szeiger.
|
| |
|
|
|
|
|
|
|
| |
Partest now correctly parses -Yrangepos (previously no effect). Fixed
some issues with range positions. partest now passes with -Yrangepos on.
review by odersky (mostly done already).
|
| |
|
|
|
|
|
| |
No review.
|
|
|
|
|
|
| |
Classpaths and partest, soon to be jointly responsible for one or more
tragedies. No review.
|
|
|
|
|
| |
Not sys.props("CLASSPATH"), sys.env("CLASSPATH"). No review.
|
| |
|
|
|
|
|
| |
Improved getFiles/getDirs in PartestTask; did some cleanup.
|
|
|
|
|
|
|
| |
Recent icode checking tests were leaving a bit of a mess in the
filesystem. Taught them to clean up after themselves. I knew I'd pick up
a few useful tricks from my kids. No review.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Some 11th hour modifications with the dual purpose of a smooth console
life for sbt and so the repl can be used on google app engine. Although
this patch may look largish to be entering at RC4, there isn't a lot
going on. It's trying to make these dangerous things:
- property and environment variable accesses
- thread creation
- signal handler installation
happpen in a sufficiently uniform way that people who don't want them
and places who don't allow them are not left with an unfixable situation
where things blow up inside private methods. Also, the (ahem) lower than
usual elegance levels are due to it being intended for 2.9.x as well.
Review by harrah.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Created infrastructure for testing icode + settings/partest yak shaving.
See enclosed test files/run/inline-ex-handlers.scala. To compare
optimized and unoptimized icode after a given phase, all you need in a
partest source file is this:
import scala.tools.partest.IcodeTest
object Test extends IcodeTest {
override def printIcodeAfterPhase = "inlineExceptionHandlers"
}
Other things can be done, see IcodeTest.scala. Review by ureche.
|
| |
|
| |
|
|
|
|
|
|
| |
"Freed the lisp test." Tweaked partest defaults a little in the hopes
that seth tisue is correct in his analysis. No review.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Adding some Sets/Maps to perRunCaches, and eliminating ambiguously named
imports.
Did a tour of the compiler adding a few longer-lived mutable structures
to the per-run cache clearing mechanism. Some of these were not a big
threat, but there is (almost) literally no cost to tracking them and the
fewer mutable structures which are created "lone wolf style" the easier
it is to spot the one playing by his own rules.
While I was at it I followed through on long held ambition to eliminate
the importing of highly ambiguous names like "Map" and "HashSet" from
the mutable and immutable packages. I didn't quite manage elimination
but it's pretty close. Something potentially as pernicious which I
didn't do much about is this import:
import scala.collection._
Imagine coming across that one on lines 407 and 474 of a 1271 file.
That's not cool. Some poor future programmer will be on line 1100 and
use "Map[A, B]" in some function and only after the product has shipped
will it be discovered that the signature is wrong and the rocket will
now be crashing into the mountainside straightaway. No review.
|
|
|
|
|
|
| |
Restored partest behavior of keeping output directories when run with
debugging enabled. No review.
|
| |
|
|
|
|
|
|
|
|
|
| |
More batched performance improvements for io.{ File, Classpath } and
others in the neighborhood. Avoids calling the expensive
getCanonicalPath in favor of getAbsolutePath: I note that because
it has the potential to change compiler behavior at the borders.
No review.
|
|
|
|
|
|
|
|
|
| |
Tweaks repl tests to enforce -Yrepl-sync and other setup on all clients.
Also includes some more why-do-tests-hang bosons for the particle
accelerator in case that doesn't wrap it up. I think it will though,
because now constrained-types is the only one which failed and it's also
the only one which overrides Settings. No review.
|
|
|
|
|
|
|
|
| |
A somewhat more realistic attempt to fix the build, no review. This
introduces a repl command line option -Yrepl-sync to inhibit the
asynchronous path which makes repl startup seem so snappy. And then it
uses it in the repl tests.
|
|
|
|
|
| |
Reverting the rest of it until I can look with clear eyes, no review.
|
|
|
|
|
|
| |
(e.g. getCanonicalFile) especially if it's running at startup. No
review.
|
|
|
|
|
|
|
| |
Be silent when compiling the repl extraction object to suppress spurious
warnings. Also corrected the busted logic for spotting repl wrappers.
Closes #4542, no review.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
I wrote a warning when nullary methods return Unit. I wimped out of
including it in this patch because we had about 200 of them, and that's
what is fixed in this patch. I will add the warning to some kind of
"-Xlint" feature after 2.9.
This is motivated at least partly by the resolution of #4506, which
indicates the distinction between "def foo()" and "def foo" will
continue to jab its pointy stick into our eyes, so I believe we have a
minimal duty of at least following our own advice about what they mean
and not making a semirandom choice as to whether a method has parens or
not. Review by community.
|
|
|
|
|
|
|
| |
Fixed a failure output regression I introduced working around a process
bug. Unrolled the code I'd put in to work around the now-fixed process
bug. No review.
|
|
|
|
|
|
|
|
|
|
| |
Enhancing the repl-testing code by turning it into a transcript
producing machine. "Here's some code." "Here's a transcript!" "Good day
to you, sir!" "No, good day to YOU!"
These changes are awesome. Look at the checkfile diffs for god's sake,
they'll make you weep with joy. No review.
|
|
|
|
|
|
| |
Fixing the scalap test rig to work like other test types so it doesn't
break the distribution build. No review.
|
|
|
|
|
|
| |
Spiced up the signature test infrastructure a bunch, wrote some more
tests, restored the tests in pending. No review.
|
|
|
|
|
|
|
|
|
|
| |
Not yet learned my lesson about partest and empty directories. Rather
than reapply that bandaid, went after partest. Attempts to make partest
ignore empty directories. Discover directory tests aren't run when the
command line tool is used, make them run like everyone else. Find more
tests which due to misplacement are silently ignored, move them into
tested locations. No review.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
[I'm laptop only so there's some chance this will incur temporary
breakage, but it needs committing.]
Heading off gratuitous complications which haven't yet shipped, I
eliminated the -jar startup option in favor of doing what we already do,
figuring it out. So now all these things work.
scala foo/bar.scala // if file is a script or has one main method
scala foo.Bar // if it has a legal main method scala foo.jar // if it
has a legal MainClass attribute
Also changed "-savecompiled" to "-save" and given scala source called
foo.scala, generate foo.jar rather than foo.scala.jar. Cleaned up a
bunch of related code and further polished the scala startup message.
And unbroke choice settings and improved that error too, which closes
#3849.
While trying to write a test for the choice setting, was reminded that
partest just discards invalid flags files. Made it fail instead, which
closes #3712. Fixed the new failures that revealed. No review.
|