| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
| |
No review.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Refactoring the collections api to support differentiation between
referring to a sequential collection and a parallel collection, and to
support referring to both types of collections.
New set of traits Gen* are now superclasses of both their * and Par* subclasses. For example, GenIterable is a superclass of both Iterable and ParIterable. Iterable and ParIterable are not in a subclassing relation. The new class hierarchy is illustrated below (simplified, not all relations and classes are shown):
TraversableOnce --> GenTraversableOnce
^ ^
| |
Traversable --> GenTraversable
^ ^
| |
Iterable --> GenIterable <-- ParIterable
^ ^ ^
| | |
Seq --> GenSeq <-- ParSeq
(the *Like, *View and *ViewLike traits have a similar hierarchy)
General views extract common view functionality from parallel and
sequential collections.
This design also allows for more flexible extensions to the collections
framework. It also allows slowly factoring out common functionality up
into Gen* traits.
From now on, it is possible to write this:
import collection._
val p = parallel.ParSeq(1, 2, 3)
val g: GenSeq[Int] = p // meaning a General Sequence
val s = g.seq // type of s is Seq[Int]
for (elem <- g) {
// do something without guarantees on sequentiality of foreach
// this foreach may be executed in parallel
}
for (elem <- s) {
// do something with a guarantee that foreach is executed in order, sequentially
}
for (elem <- p) {
// do something concurrently, in parallel
}
This also means that some signatures had to be changed. For example,
method `flatMap` now takes `A => GenTraversableOnce[B]`, and `zip` takes
a `GenIterable[B]`.
Also, there are mutable & immutable Gen* trait variants. They have
generic companion functionality.
|
| |
|
|
|
|
|
|
|
| |
Fixes my part of #4283 by inserting another cast pre-emptively when an
IllegalAccess error is possible in an erasure-inserted cast. Review by
extempore.
|
|
|
|
|
|
| |
Test cases for #1071 and #4275 since I don't see a lot of test cases,
hint hint, no review.
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
|
|
|
|
|
| |
More fun with xml and elements not appearing equal. Closes #4387, no
review.
|
| |
|
|
|
|
|
|
|
| |
The beautification of repl pasting had the problem that the new
beautiful output was not itself pastable. Now I have achieved "paste
idempotence". 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.
|
|
|
|
|
|
| |
Every tag element (even @define and @usecase) end before the next
recognised tag. Closes #4409. Review by extempore.
|
|
|
|
|
|
| |
Put "\n" between superclass's comment and subclass's. Closes #4289.
Review by pedrofurla.
|
|
|
|
|
| |
Fix for parsing bug in scaladoc closes #4420, no review.
|
|
|
|
|
|
| |
one-member refinements, for bigger ones printing the number of members.
Should be improved. Closes #484, no review.
|
| |
|
|
|
|
|
| |
One breakage too many, this test is a pest -> disabled. no review.
|
| |
|
|
|
|
|
|
| |
Fix for interpreter issue with missing newlines wreaking havoc. No
review.
|
|
|
|
|
|
|
|
|
|
| |
Modified some typer logic to allow annotation arguments for constants
which don't have the form Literal(_). The current logic seems to be
avoided most of the time, but scaladoc breaks when it runs into it. This
closes #4301. I can't figure out from the ticket what the deal is with
#2764 and what is presently happening, but it seems like this patch
could only improve the situation. Review by rytz.
|
|
|
|
|
|
| |
[scaladoc] Scaladoc should expand macros recursively. Closes #3484.
Review by dubochet.
|
|
|
|
|
|
| |
A change to a test to defend against output change when run with a
plugin enabled. No review.
|
|
|
|
|
|
| |
Fixing the scalap test rig to work like other test types so it doesn't
break the distribution build. No review.
|
|
|
|
|
| |
breaking the distribution build. No review.
|
|
|
|
|
|
| |
[scaladoc] Don't create broken link to private companion object. Closes
#4374. Review by pedrofurla.
|
| |
|
|
|
|
|
| |
[scaladoc] Add a test of colon and parentheses (#4372). No review.
|
|
|
|
|
|
| |
And so my attempt to have a performance test draws the final curtain, no
review.
|
|
|
|
|
|
| |
Looks like another java5/java6 difference gets me on a test. At least
this time I was looking for that. No review.
|
|
|
|
|
|
| |
Expanding the test which tries to use the collections from java. No
review.
|
|
|
|
|
|
|
| |
Added some implicitNotFound annotations to commonly used classes, and
some documentation to Manifest. (Said documentation is invisible for the
moment due to #4404.) No review.
|
|
|
|
|
|
|
|
| |
Learned an interesting lesson about having an implicit object with a
"def apply(x: Any): List[String]" method imported into power mode. Let's
just say this is not advised. This and other rough edges eliminated from
power mode, no review.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Fix for linked lists closes #4080 and proves my desire not to ship
obviously broken code is even greater than my will to hold out for any
help. I threw in a free fix for this which I noticed while in there.
scala> scala.collection.mutable.LinkedList[Int]().head
res0: Int = 0
Also was reminded how useless tests can be:
val ten = DoubleLinkedList(1 to 10: _*)
ten.insert(DoubleLinkedList(11))
// Post-insert position test
require(ten.last == 11)
Fortunately a test confirming buggy behavior still serves a purpose by
breaking when you fix the bug which allowed it to pass, thus letting you
fix the broken test too. Life's (very) little compensations. Linked list
code should still be presumed broken. No review.
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
|
|
| |
I guess windows can show a < 500x difference and still give us
confidence there isn't a 100,000x difference. Testing situation
continues to confound and amaze. Trying to make 4279 not fail on
windows, one more time and I will delete it and burn the bodies. No
review.
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Added a temporary fix for #4351, but disabled it because the extend
specialized class with nonspecialized type-parameters is used in the
stdlib already.
Disabling scala.parallel package, adding the currently disabled
scala.concurrent package which will be implemented in some of the next
releases.
Review by phaller.
|
|
|
|
|
|
|
|
| |
Moved failing tests to pending after having diagnosed that the only
problem is a difference in output between Java 1.5 and 1.6 reflection
libraries. Can we moved back once that's fixed. For now, it's more
important to ghet the build back.
|
|
|
|
|
|
| |
Changed App-using tests to use main() to see if that's our trouble. No
review.
|