summaryrefslogtreecommitdiff
path: root/src/library
Commit message (Collapse)AuthorAgeFilesLines
* SI-6584, Stream#distinct uses too much memory.Paul Phillips2013-01-301-3/+10
| | | | | [backport] Nesting recursive calls in Stream is always a dicey business.
* Merge pull request #1941 from phaller/issue/6932-futures-internal-callbacksAdriaan Moors2013-01-272-3/+120
|\ | | | | SI-6932 StackOverflowError in chained Future.flatMap calls
| * SI-6932 Remove Batchable trait plus minor clean-upsPhilipp Haller2013-01-211-18/+9
| |
| * Fix SI-6932 by enabling linearization of callback execution for the ↵Viktor Klang2013-01-212-3/+129
| | | | | | | | internal execution context of Future
* | Merge pull request #1953 from retronym/backport/1586Paul Phillips2013-01-241-0/+10
|\ \ | | | | | | [backport] Fix unsafe array opt. / opt. primitive Array(...)
| * | [backport] Fix unsafe array opt. / opt. primitive Array(...)Jason Zaugg2013-01-231-0/+10
| |/ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | SI-6611, SI-6247 (partial fix) The original commits on master were a bit circuitous, this is squashed to a neat little package. I had to add type arguments to the Array.apply calls in the test case, they are inferred on master. commit 41ff05dfdbcf032157b3509ace633f2e7a12295c Author: Jason Zaugg <jzaugg@gmail.com> Date: Sun Nov 4 14:44:59 2012 +0100 Refactor guards checking for a particular overload of Array.apply. (cherry picked from commit 092345a24c22a821204fb358d33272ae8f7353be) commit 1e5c942deccaf64f8d57bd8891b912381d7f220a Author: Jason Zaugg <jzaugg@gmail.com> Date: Sun Nov 4 14:17:25 2012 +0100 Expand optimization of Array(e1, ..., en) to primitive arrays. (cherry picked from commit 8265175ecc42293997d59049f430396c77a2b891) commit ab1bf77e39f2dfeacf3fc107ccb2907a1867f04c Author: Jason Zaugg <jzaugg@gmail.com> Date: Sat Nov 3 13:34:20 2012 +0100 SI-6611 Tighten up an unsafe array optimization The net was cast too wide and was unsafely optimizing away array copies. (cherry picked from commit dad886659faca4fba2d4937c9bc6780591b02c27) And also: Optimize primitive Array(e1, ..., en) Expands an existing optimization for reference arrays to apply to primitives, as well. Fixes one aspect of SI-6247. (cherry picked from commit cac5a08611f9511ba4d94b99db630404efae190a) Conflicts: src/compiler/scala/tools/nsc/transform/CleanUp.scala More principled tree copying. Canonical > home-spun. Conflicts: src/compiler/scala/tools/nsc/transform/CleanUp.scala
* / Addressing warnings.Jason Zaugg2013-01-193-5/+2
|/ | | | | | | - SI-6923 uncovered a few valid warnings, these have been addressed. - A pair of "catches all throwable" warnings appeared; one of the is spurious and the subject of SI-6994.
* Merge pull request #1860 from heathermiller/issue/6930Adriaan Moors2013-01-141-0/+14
|\ | | | | SI-6930 adds documentation to reduceLeft in TraversableOnce
| * SI-6930 adds documentation to reduceLeft in TraversableOnceHeather Miller2013-01-081-0/+14
| |
* | Merge pull request #1875 from heathermiller/issue/6946Adriaan Moors2013-01-141-15/+86
|\ \ | | | | | | SI-6946, SI-6924 Greatly improves IsTraversableLike docs
| * | SI-6946, SI-6924 Greatly improves IsTraversableLike docsHeather Miller2013-01-091-15/+86
| |/
* / Fixes SI-6521, overrides Range#head to be fasterDavid Hall2013-01-081-0/+1
|/ | | | Backport of 63ba3d64a7002ef67f7f13083a18fe1042a3adba
* Merge pull request #1843 from JamesIry/SI-6915_2.10.xAdriaan Moors2013-01-071-1/+1
|\ | | | | SI-6915 Updates copyright properties to 2002-2013
| * SI-6915 Updates copyright properties to 2002-2013James Iry2013-01-041-1/+1
| | | | | | | | | | | | | | | | The .scala header files had the right copyright dates but properties used to generate the information in e.g. "scala -version" hadn't been updated. review @adriaanm
* | Merge pull request #1842 from adriaanm/backport-1821Paul Phillips2013-01-062-1/+6
|\ \ | | | | | | Backport 1821
| * | avoid reflect overhead of certain array instantiationsAdriaan Moors2013-01-041-0/+5
| | | | | | | | | | | | | | | | | | | | | | | | the manifests for Any, Object/AnyRef, AnyVal, Null and Nothing now have their `newArray` methods overridden to avoid reflective overhead of array instantiation. (backport of 45ef0514e, part 2)
| * | proper elementClass for WrappedArrayAdriaan Moors2013-01-041-1/+1
| | | | | | | | | | | | (backport of 45ef0514e, part 1)
* | | Merge pull request #1841 from adriaanm/rebase-6827-2.10.xAdriaan Moors2013-01-041-2/+3
|\ \ \ | |_|/ |/| | Fix Iterator#copyToArray (fixes SI-6827).
| * | Fix Iterator#copyToArray (fixes SI-6827).Erik Osheim2013-01-041-2/+3
| |/ | | | | | | | | | | | | | | | | | | | | | | | | As pointed out in #scala, when using a non-zero start it's possible to get an ArrayIndexOutOfBoundsException due to an incorrect bounds check. This patch fixes this, as well as another potential bounds error, and adds test cases. Incorporates some other suggestions by Som-Snytt to ensure that callers will get useful error messages in cases where the start parameter is wrong (negative or out-of-array-bounds). Review by @som-snytt.
* | Merge pull request #1739 from jedesah/Array_optPaul Phillips2013-01-041-0/+14
|\ \ | |/ |/| SI-5017 Poor performance of :+ operator on Arrays
| * SI-5017 Poor performance of :+ operator on ArraysJean-Remi Desjardins2012-12-231-0/+14
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Control performance of :+ and +: operator on my machine were 700-800 ms After adding size hint on the implementation in SeqLike, it went down to 500-600 ms But with specialixed implementation in ArrayOps, brings it down to 300-400 ms Unfortunatly, this method will only be called when the Array object is being referenced directly as it's type, but that should be the case enough times to justify the extra method. I ended up removing the sizeHint in SeqLike because it made the execution of the "benchmark" slower when the Array was being manipulated as a Seq. Side note: Interestingly enough, the benchmark performed better on my virtualized Fedora 17 with JDK 7 than natively on Mac OS X with JDK 6
* | Merge pull request #1792 from ybr/minordocimprovementPaul Phillips2012-12-281-1/+1
|\ \ | | | | | | Stream.zip naturalsEx example does not compile => remove extra zip call
| * | Stream.zip naturalsEx example does not compile => remove extra zip callybr2012-12-201-1/+1
| |/
* | LinearSeq lengthCompare without an iterator.Paul Phillips2012-12-281-12/+10
| | | | | | | | | | | | | | Had to fix up an iffy test: not only was it testing undefined behavior, it demanded just the right numbers be printed in a context where all negative or positive numbers are equivalent. It's the ol' "get them coming and going" trick.
* | SI-6415, overly eager evaluation in Stream.Jean-Remi Desjardins2012-12-282-13/+23
|/ | | | | | | The lengthCompare method in LinearSeqOptimized was looking one step further than it needed to in order to give the correct result, which was creating some unwanted side effects related to Streams.
* Merge pull request #1732 from retronym/ticket/6690Adriaan Moors2012-12-102-16/+22
|\ | | | | SI-6690 Release reference to last dequeued element.
| * Share the empty LinkedList between first0/last0.Jason Zaugg2012-12-102-2/+2
| | | | | | | | | | | | This is in line with the existing implementation of `MutableList#clear`, and in line with an newly created empty collection.
| * SI-6690 Release reference to last dequeued element.Jason Zaugg2012-12-082-16/+22
| | | | | | | | | | | | | | | | | | Avoids leaks in MutableList and its more better known child, mutable.Queue, when the last element is dequeued or when we take the tail of a one element collection. Refactors copy/pasted code between the two implementations of tail.
* | Merge pull request #1700 from retronym/ticket/6535Adriaan Moors2012-12-102-2/+6
|\ \ | | | | | | SI-6535 Step back from the precipice of a cycle
| * | SI-6535 Step back from the precipice of a cycleJason Zaugg2012-12-042-2/+6
| |/ | | | | | | | | | | | | | | | | | | Adding any non-local parent to WrapAsScala will trigger a valid cyclic reference error. By moving the import of `Wrapper._` inside `WrapAsScala` and `WrapAsJava`, it is not in scope when typing the parents of those, and we avoid the cycle. Adds a test case to show the essense of the promiscious mutual imports that triggers this.
* | Merge pull request #1677 from jedesah/RangeAdriaan Moors2012-12-101-1/+0
|\ \ | | | | | | SI-5678 Bad return type for [Use Case] docs in Range
| * | SI-5678 Bad return type for [Use Case] docs in RangeJean-Remi Desjardins2012-11-271-1/+0
| |/ | | | | | | | | | | | | | | | | | | Many [Use Case] example in Range such as the one associated to the union method document that the method returns a Range which is just plain false. Example: val ran1 = Range(1,3) val ran2 = Range(54, 57) val result = ran1.union(ran2) // This is a perfectly valid use case yet obviously cannot be represented as a Range
* | Merge pull request #1672 from jedesah/RandomAdriaan Moors2012-12-101-1/+1
|\ \ | | | | | | SI-4664 Make scala.util.Random Serializable
| * | SI-4664 Make scala.util.Random SerializableJean-Remi Desjardins2012-12-011-1/+1
| |/
* | Merge pull request #1690 from retronym/ticket/6631Adriaan Moors2012-12-061-6/+7
|\ \ | | | | | | SI-6631 Handle invalid escapes in string interpolators
| * | Fix Scaladoc for the raw interpolator.Jason Zaugg2012-12-021-2/+2
| | | | | | | | | | | | | | | The comment about unicode escaping fell into the very same trap that it was warning about.
| * | SI-6631 Handle invalid escapes in string interpolatorsJason Zaugg2012-12-021-4/+5
| |/ | | | | | | Patch contributed by Rex Kerr.
* / Fix typo in documentation for SeqJean-Remi Desjardins2012-11-271-1/+1
|/
* Merge pull request #1663 from paulp/merge-2.10.wip-xAdriaan Moors2012-11-2510-62/+22
|\ | | | | Merge 2.10.0-wip into 2.10.x.
| * Merge remote-tracking branch 'origin/2.10.0-wip' into merge-2.10.wip-xPaul Phillips2012-11-2310-62/+22
| |\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | # By Jason Zaugg (8) and others # Via Adriaan Moors (6) and Josh Suereth (5) * origin/2.10.0-wip: Removing controversial `either` method from Futures API. SI-6624 set info of case pattern binder to help find case field accessors Fixes SI-6628, Revert "Fix for view isEmpty." SI-6661 - Remove obsolete implicit parameter of scala.concurrent.promise method Fixes SI-6559 - StringContext not using passed in escape function. SI-6648 copyAttrs must preserve TypeTree#wasEmpty Fix raw string interpolator: string parts which were after the first argument were still escaped Update comment. SI-6646 `ident` or Ident is always new binding. SI-6440 Address regressions around MissingRequirementError Refine the message and triggering of MissingRequirementError. SI-6640 Better reporting of deficient classpaths. SI-6644 Account for varargs in extmethod forwarder SI-6646 Fix regression in for desugaring. Update tools/epfl-publish
| | * Removing controversial `either` method from Futures API.Josh Suereth2012-11-211-23/+0
| | | | | | | | | | | | | | | * Removes `either` from Future * No tests need to change, since this was an untested method.
| | * Merge pull request #1636 from paulp/issue/6628Adriaan Moors2012-11-168-36/+20
| | |\ | | | | | | | | Fixes SI-6628, Revert "Fix for view isEmpty."
| | | * Fixes SI-6628, Revert "Fix for view isEmpty."Paul Phillips2012-11-158-36/+20
| | | | | | | | | | | | | | | | | | | | | | | | This reverts commit caf7eb6b56817fd1e1fbc1cf017f30e6f94c6bea. I don't have a better idea right now than wholesale reversion.
| | * | Merge pull request #1616 from retronym/backport/6559Adriaan Moors2012-11-161-1/+1
| | |\ \ | | | | | | | | | | SI-6559 Fix raw string interpolator: string parts which were after the first argument were still escaped
| | | * | Fix raw string interpolator: string parts which were after the first ↵Julien Richard-Foy2012-11-131-1/+1
| | | |/ | | | | | | | | | | | | argument were still escaped
| | * / SI-6661 - Remove obsolete implicit parameter of scala.concurrent.promise methodphaller2012-11-151-3/+2
| | |/ | | | | | | | | | | | | | | | | | | | | | Clarification of @heathermiller: This is an inconsistency introduced after refactoring implicit ExecutionContexts. In commit 1dfce90246f7d334 the implicit ExecutionContexts were removed from everything else in Promise.scala, but it appears that method promise was missed in the scala.concurrent package object, which would've made sense to remove back then.
* | | Merge pull request #1652 from jedesah/FlatHashTableAdriaan Moors2012-11-251-7/+6
|\ \ \ | | | | | | | | findEntry implementation code more concise and DRYer.
| * | | findEntry implementation code more concise and DRYer.Jean-Remi Desjardins2012-11-201-7/+6
| |/ /
* / / Fix for SI-6706, Symbol breakage under GC.Paul Phillips2012-11-231-0/+5
|/ / | | | | | | | | | | Ensure the map key and the String in the Symbol are the same reference by removing the old key before updating the map with the new key -> symbol relation.
* | Merge pull request #1596 from soc/SI-6632+SI-6633Josh Suereth2012-11-201-49/+44
|\ \ | | | | | | SI-6632 SI-6633 Fixes issues and data corruption in ListBuffer