Scala 2.10.1 is now available!

ANNOUNCEMENT

We are very happy to announce the final release of Scala 2.10.1!

The Scala team and contributors fixed 166 issues since 2.10.0!

In total, 242 RC1 pull requests, 7 RC2 pull requests, and 4 RC3 pull requests were opened on GitHub, of which 94.5% were merged after having been tested and reviewed.

Known Issues

Before reporting a bug, please have a look at these known issues.

Scala IDE for Eclipse

The Scala IDE with Scala 2.10.1-RC3 built right in is available through one of the following update-sites:

  • for Eclipse 3.7 (Indigo)
  • for Eclipse 3.8/4.2 (Juno) (Support for this version is experimental.)

Have a look at the getting started guide for more info.

New features in the 2.10 series

Since 2.10.1 is strictly a bug-fix release, here’s an overview of the most prominent new features and improvements as introduced in 2.10.0:

  • Value Classes

  • Implicit Classes

  • String Interpolation

  • Futures and Promises

  • Dynamic and applyDynamic

  • Dependent method types:

    • def identity(x: AnyRef): x.type = x // the return type says we return exactly what we got
  • New ByteCode emitter based on ASM

    • Can target JDK 1.5, 1.6 and 1.7

    • Emits 1.6 bytecode by default

    • Old 1.5 backend is deprecated

  • A new Pattern Matcher

    • rewritten from scratch to generate more robust code (no more exponential blow-up!)

    • code generation and analyses are now independent (the latter can be turned off with -Xno-patmat-analysis)

  • Scaladoc Improvements

    • Implicits (-implicits flag)

    • Diagrams (-diagrams flag, requires graphviz)

    • Groups (-groups)

  • Modularized Language features

  • Parallel Collections are now configurable with custom thread pools

  • Akka Actors now part of the distribution

    • scala.actors have been deprecated and the akka implementation is now included in the distribution.
  • Performance Improvements

    • Faster inliner

    • Range#sum is now O(1)

    • Update of ForkJoin library

    • Fixes in immutable TreeSet/TreeMap

    • Improvements to PartialFunctions

  • Addition of ??? and NotImplementedError
  • Addition of IsTraversableOnce + IsTraversableLike type classes for extension methods
  • Deprecations and cleanup

    • Floating point and octal literal syntax deprecation

    • Removed scala.dbc

Experimental features

The API is subject to (possibly major) changes in the 2.11.x series, but don’t let that stop you from experimenting with them! A lot of developers have already come up with very cool applications for them. Some examples can be seen at hxxp://scalamacros.org/news/2012/11/05/status-update.html.

A big thank you to all the contributors!

# Author
104 Jason Zaugg
49 Eugene Burmako
43 Paul Phillips
38 Adriaan Moors
32 James Iry
10 Lukas Rytz
9 Grzegorz Kossakowski
9 Eugene Vigdorchik
7 Kato Kazuyoshi
7 Hubert Plociniczak
7 Jean-Remi Desjardins
4 Viktor Klang
3 Josh Suereth
3 Nada Amin
3 Simon Ochsenreither
2 Andriy Polishchuk
2 Vlad Ureche
2 Heather Miller
2 Iulian Dragos
2 Ingo Maier
2 martende
2 Aleksandar Prokopec
2 Paolo Giarrusso
2 Philipp Haller
1 David Hall
1 ybr
1 Erik Osheim
1 Szabolcs Berecz
1 Declan Conlon
1 Simon Schaefer
1 James Roper
1 Jan Niehusmann
1 Dmitry Bushev
1 Vinicius Miana
1 Miguel Garcia
1 Mads Hartmann Jensen
1 Your Name
1 Brian McKenna
1 Cody Mello
1 Evgeny Kotelnikov

Commits and the issues they fixed since v2.10.0

Issue(s) Commit Message
SI-5954, SI-7195 09130d5 [nomaster] SI-7195 minor version mustn't introduce warnings
SI-6902, SI-7183 0303e64 SI-7183 Disable unreachability for withFilter matches.
SI-7126, SI-7126 204b2b4 SI-7126 Eliminate a source of malformed types.
SI-7126, SI-7126 696dcdf SI-7126 Account for the alias types that don't dealias.
SI-7112 1976d9f fixes the test for SI-7112
SI-7180 de1f749 SI-7180 Fix regression in implicit scope of HK type alias.
SI-5975, SI-6576 19649d4 SI-6576 Workaround / diagnostic for IDE NPE.
SI-7146 bb067d3 SI-7146 - Fixing checkinit bug in ExecutionContextImpl and adding test
SI-7128 348ff4b SI-7128 Fix regression in copyToArray for empty arrays
SI-6548, SI-6548 85b63b8 [nomaster] Revert "SI-6548 reflection now correctly enters jinners"
SI-4664, SI-4664 8b4af71 [nomaster] Revert "SI-4664 Make scala.util.Random Serializable"
SI-6521 f9550c6 [nomaster] Revert "Fixes SI-6521, overrides Range#head to be faster"
SI-7082, SI-7083, SI-6591 09ef873 SI-6591 Reify and path-dependent types
SI-5675 e0068b9 SI-5675 Discard duplicate feature warnings at a position
SI-7096 5258b63 SI-7096 SubstSymMap copies trees before modifying their symbols
SI-6666 81fa831 Class symbols can't be contravariant.
SI-6666 275b341 SI-6666 Catch VerifyErrors in the making in early defs.
SI-6666 4c34280 Add a test case from the comments of SI-6666.
SI-6259, SI-6506, SI-6957, SI-6666 fd61254 SI-6666 Account for nesting in setting INCONSTRUCTOR
SI-6478 6052e19 [backport] SI-6478 Fixing JavaTokenParser ident
SI-7071, SI-7072 b43ae58 introduces an exhaustive java-to-scala test
SI-6989 02ed5fb SI-6989 privateWithin is now populated in reflect
SI-5824 96b0eff SI-5824 Fix crashes in reify with _*
SI-5374, SI-6961 fa3b804 SI-6961 no structural sharing in list serialization
SI-6187 dfbaaa1 SI-6187 Make partial functions re-typable
SI-6146 55c9b9c SI-6146 More accurate prefixes for sealed subtypes.
SI-5954, SI-7070 1426fec SI-7070 Turn restriction on companions in pkg objs into warning
SI-5082 a0ee6e9 SI-5082 Cycle avoidance between case companions
SI-7100 a53e150 SI-7100 Fixed infinite recursion in duplicators
SI-6113 0d68a87 SI-6113 typeOf now works for type lambdas
SI-2806, SI-6888 b579a42 SI-6888 Loosen criteria for $outer search.
SI-7026, SI-7026 79e774f SI-7026: parseTree should never return a typed one
SI-5017 015ff51 [nomaster] Revert "SI-5017 Poor performance of :+ operator on Arrays"
SI-6150, SI-6773, SI-6150 87d52db [nomaster] SI-6773 Makes the SI-6150 changes binary compatible with 2.10
SI-7060 e5c0e59 SI-7060 More conservative dead code elim marking
SI-7039 8ae0e2a SI-7039 unapplySeq result type independent of subpattern count
SI-5833 0574172 SI-5833 Fixes tail-of-Nil problem in RefinedType#normalizeImpl
SI-6667 b67f8e5 [nomerge] SI-6667 Demote a new ambiguity error to a lint warning.
SI-6017 0e8d8c7 SI-6017 Scaladoc: Show all letters without dangling links
SI-6017 3f0bce9 SI-6017 Generate Scaladoc's index links in Scala side
SI-6578 a6137d1 Fix SI-6578. Deprecated `askType` because of possible race conditions in type checker.
SI-7008 f1701f7 SI-7008 @throws annotations are now populated in reflect
SI-7033 3af838c SI-7033 Be symful when creating factory methods.
SI-6422 bc01614 Revert "SI-6422: add missing Fractional and Integral alias in scala package"
SI-5313 4fda83f SI-5313 Minor code cleanup for store clobbering
SI-5313 c7d489e SI-5313 Test clobbers on the back edge of a loop
SI-5313 9b4fa83 SI-5313 Eliminate more stores by replacing clobbers with null stores
SI-5313 eab2884 SI-5313 Do not eliminate stores that potentially wipe referenes
SI-7046 2403d1d SI-7046 reflection now auto-initializes knownDirectSubclasses
SI-5543, SI-1803 b74c33e SI-1803, plus documentation and cleanups in Namers, mainly in typeSig
SI-6482, SI-7022 374c912 SI-7022 Additional test case for value class w. bounds
SI-6482, SI-6482 4ed8836 [backport] SI-6482, lost bounds in extension methods.
SI-6941 b2117cf SI-6941 tests
SI-6686 b92396b SI-6686 drop valdef unused in flatMapCond's block
SI-5158, SI-6941 494ba94 don't store subpats bound to underscore
SI-4976 d71f59e SI-4976 Scaladoc: Add a source link to package objects
SI-7029 5275bae SI-7029 - Make test more robust
SI-7029 3f78bee SI-7029 - Makes sure that uncaught exceptions are propagated to the UEH for the global ExecutionContext
SI-6539 2989258 SI-6539 moves @compileTimeOnly away from scala-reflect
SI-6812 941c569 SI-6812 scaladoc can opt out of expanding macros
SI-6206, SI-6206 11ac963c [backport] Fix for SI-6206, inconsistency with apply.
SI-6601 5a2828c A test case to guide the eventual fix for SI-6601.
SI-6601 172f3f6 Revert "SI-6601 Publicise derived value contstructor after pickler"
SI-2818 6db4db9 SI-2818 Make List.foldRight always do a reverse/foldLeft flip
SI-2968, SI-2968 8350cd9 [backport] SI-2968 Fix brace healing for `^case (class|object) {`
SI-6963 1de399d SI-6963 Add version to -Xmigration
SI-3353, SI-3353 1049435 SI-3353 don't extract <unapply-selector> into named-arg local val
SI-6017 831bffd SI-6017 Scaladoc's Index should be case-sensitive
SI-6853 e36327a SI-6853 changed private method remove to be tail recursive. Operations += and -= on mutable.ListMap rely on the private method remove to perform. This methods was implemented using recursion, but it was not tail recursive. When the ListMap got too big the += caused a StackOverflowError.
SI-6595 ff92610 SI-6595, lost modifiers in early defs.
SI-6584 98534b2 SI-6584, Stream#distinct uses too much memory.
SI-6426 d2316df SI-6426, importable _.
SI-6072 05882eb SI-6072, crasher with overloaded eq.
SI-5604 d4437aa SI-5604, selections on package objects.
SI-5859 e156cd1 SI-5859, inapplicable varargs.
SI-5353 f3f1e50 SI-5353, imperfect error message.
SI-5130 77ec4ef SI-5130, precision disappearing from refinement.
SI-4729 faca7ec SI-4729, overriding java varargs in scala.
SI-2418, SI-2418 0990890 SI-2418, remove restriction on final vars.
SI-6572 16eaefb SI-6572 Test case, originally fixed in a3680be.
SI-6301, SI-6301, SI-6301, SI-6572 0679da5 [backport] SI-6301 / SI-6572 specialization regressions
SI-5378 f6d90a8 [backport] SI-5378, unsoundness with type bounds in refinements.
SI-4714 5f85fe5 SI-4714 Initialize history while initializing the REPL's reader
SI-2418, SI-2418 243cede [backport] Removed restriction on final vars, SI-2418.
SI-7009, SI-7009 fefe6cc SI-7009: `@throws` annotation synthesized incorrectly
SI-7009 e22d801 Test case for SI-7009.
SI-1336, SI-5589, SI-4574, SI-6968, SI-6968 a87d409 SI-6968 Simple Tuple patterns aren't irrefutable
SI-6669 166fd02 SI-6669 Add . to the default scalap classpath
SI-6728 80a814d SI-6728 Fixes crash in parser on incomplete for expression
SI-7035 9afae59 SI-7035 Centralize case field accessor sorting.
SI-6726 6357c8d SI-6726 Further optimization of pattern analysis
SI-6726, SI-6726 14d8c22 SI-6726 Hash consing for Pattern matching Sym-s
SI-6726 32c0a2e SI-6726 Add benchmark used for testing pattern matcher.
SI-6154 d3f3394 [backport] Fix for SI-6154, VerifyError originating in uncurry.
SI-6516 6f86583 SI-6516, macros comparing types with == instead of =:=.
SI-6551 cfaa3b5 SI-6551 Expand test case into uncomfortable areas.
SI-6651 45ccdc5 SI-6651 Substitute `this` in extension method sigs
SI-6987 bffe776 [backport] Disabled SI-6987.
SI-6258, SI-6258, SI-3577, SI-3577 b8da00e [backport] SI-3577 BoundedWildcardType handling
SI-6891 7babdab SI-6891 Fix value class + tailrec crasher.
SI-6981 cff0934 Ill-scoped reference checking in TreeCheckers
SI-4602 3cbb002 SI-4602 Disable unreliable test of fsc path absolutization
SI-4602, SI-4602 952e1bf SI-4602 Make fsc absolutize source file names
SI-4733, SI-4733 e0cf651 SI-4733 - fsc no longer creates a single temp directory for all users.
SI-6863 0b52a51 SI-6863 Fix verify error in captured var inited from expr with try/catch
SI-6932 262d7ec SI-6932 Remove Batchable trait plus minor clean-ups
SI-6932 08a74e5 Fix SI-6932 by enabling linearization of callback execution for the internal execution context of Future
SI-6443 11329c3 SI-6443 Expand test coverage with varargs, by-name.
SI-6443 493197f SI-6443 Widen dependent param types in uncurry
SI-7018 a72aa94 SI-7018 Fix memory leak in Attachments.
SI-7011 d592216 SI-7011 Fix finding constructor type in captured var definitions
SI-6231 f6168b8 SI-6231 Report unsupported free var capture by a trait.
SI-6987 1dab5bf SI-6987 Tests fsc verbose output
SI-6987 e12a5b8 SI-6987 Fixes fsc compile server verbose output
SI-6997, SI-6666 1a7de43 SI-6666 Restrict hidden `this` access in self/super calls.
SI-6011, SI-6902 cbd0205 SI-6902 Check unreachability under @unchecked
SI-6952 8a74b7b Closes SI-6952: add correct error positions for Dynamic feature check.
SI-6969 0d01cc1 SI-6969, mishandling of SoftReferences in method cache.
SI-6976 d9d6494 SI-6976 Fix value class separate compilation crasher.
SI-6637, SI-6637 4dceb22 [backport] Fix SI-6637 (misoptimization in erasure)
SI-6611, SI-6247, SI-6611, SI-6247 ba411c4 [backport] Fix unsafe array opt. / opt. primitive Array(...)
SI-6567, SI-6567 96ed055 [backport] SI-6567 Warning for Option(implicitView(foo))
SI-6439 3486d47 SI-6439 Avoid spurious REPL warnings about companionship
SI-6923, SI-6994 52a5328 Addressing warnings.
SI-6994 8f49884 SI-6994 Avoid spurious promiscuous catch warning
SI-6434 8297843 SI-6434 Pretty print function types with by name arg as (=> A) => B
SI-6942 f539781 SI-6942 more efficient unreachability analysis
SI-5568 c606559 SI-5568 Comment improvements for getClass on primitive intersection.
SI-5568 765386f SI-5568 Fixes verify error from getClass on refinement of value type
SI-6608, SI-6601 b07228a SI-6601 Publicise derived value contstructor after pickler
SI-6923 66fe64f SI-6923 Context now buffers warnings as well as errors
SI-6956 a6b34b6 SI-6956 determine switchability by type, not tree
SI-6479 9cc61f3 SI-6479 Don't lift try exprs in label arguments.
SI-6963 0c2e884 SI-6963 Deprecates -Xmigration switch
SI-6675 78019b2 SI-6675 Test new warning under -Xoldpatmat.
SI-6675 692372c SI-6675 -Xlint arity enforcement for extractors
SI-6955 8475807 SI-6955 switch emission no longer foiled by type alias
SI-6082 39352fe SI-6082 Conditionally expand @ann(x) to @ann(value = x)
SI-5440 4aba0fe SI-5440 Test case for exhaustiveness check
SI-5340 1212af4 SI-5340 Change println to log
SI-6925 b1cea21 SI-6925 use concrete type in applyOrElse's match's selector
SI-5189 8fb19b1 SI-5189 detect unsoundness when inferring type of match
SI-6555 38404e8 SI-6555 Scaladoc's class filter shouldn't drop the last character
SI-6930 0f237e9 SI-6930 adds documentation to reduceLeft in TraversableOnce
SI-6905 57ae1f3 SI-6905 - Switch to sneakyThrows instead of Unsafe.throwException as per new jsr166y to avoid issues with Android
SI-6126 25c7364 SI-6126 Test case for varargs of tagged primitives.
SI-6946, SI-6924 79a722f SI-6946, SI-6924 Greatly improves IsTraversableLike docs
SI-5954 3ef487e SI-5954 Implementation restriction preventing companions in package objs
SI-6521 a557a97 Fixes SI-6521, overrides Range#head to be faster
SI-5553, SI-6912 7a23562 SI-6912 Avoid a typer cycle in overload resolution.
SI-6846, SI-6846 e5da30b Backport of SI-6846.
SI-6928 c58647f SI-6928, VerifyError with self reference to super.
SI-6641 557caa3 SI-6641 Deprecate SwingWorker
SI-6803 103a478 SI-6803: do not use java.net.URI, even more so incorrectly.
SI-6915 77c8751 SI-6915 Updates copyright properties to 2002-2013
SI-6897 3405294 SI-6897, lubs and varargs star.
SI-6896 a6ce037 SI-6896, spurious warning with overloaded main.
SI-6911 eeb6ee6 SI-6911, regression in generated case class equality.
SI-6827 92cf0e3 Fix Iterator#copyToArray (fixes SI-6827).
SI-5017 02b2da6 SI-5017 Poor performance of :+ operator on Arrays
SI-6194 ac61e34 SI-6194, repl crash.
SI-6746 e5f16ac SI-6746 Fixes MANIFEST.MF package entry (s.r.makro -> s.r.macros)
SI-6415 24a033b SI-6415, overly eager evaluation in Stream.
SI-6829, SI-6788 231d59d SI-6829, SI-6788, NPEs during erroneous compilation.
SI-6338 3a6f3ae SI-6338 fixes the unchecked warning in quick.comp
SI-6795 f029c3a SI-6795 Simplify errors related to "abstract override" on type members
SI-6795 71e42a7 SI-6795 Adds negative check for "abstract override" on types in traits
SI-3995 cab8ea4 Expand test with a stably qualified example.
SI-3995 90efa6b SI-3995 Exclude companions with an existential prefix.
SI-6548 54a84a3 SI-6548 reflection now correctly enters jinners
SI-5390 289a882 SI-5390 Detect forward reference of case class apply
SI-5361 8b7f0ac SI-5361 Refactor in accordance with review comments.
SI-3614, SI-5361 327083d SI-5361 Avoid cyclic type with malformed refinement
SI-6288 286dced SI-6288 Remedy ill-positioned extractor binding.
SI-6288 f69b846 SI-6288 Fix positioning of label jumps
SI-6288 79a43d7 SI-6288 Position argument of unapply
SI-6758 089173d Fixes SI-6758: force LazyAnnnotationInfo for DefDef and TypeDef
SI-6555 818a2e6 SI-6555 Better parameter name retention
SI-5841 286abfc SI-5841 reification of renamed imports
SI-5877 0b1ae9c SI-5877 Tweak the check for package object owner.
SI-5877 96e5c40 SI-5877 Support implicit classes in package objects
SI-5877 65c1ae5 Adds debug logging for synthetic registration.
SI-6758 673bc70 Split test case to workaround incomplete error report.
SI-6558 c24400f SI-6558 Expand test case for annotation typos
SI-6558 d9928d5 Fixes SI-6558: typecheck lazy annotation info using non-silent context.
SI-4922 e249f2e SI-4922 Show default in Scaladoc for generic methods.
SI-6614 bd04b2c SI-6614 Test case for fixed ArrayStack misconduct.
SI-6690 d526f8b SI-6690 Release reference to last dequeued element.
SI-5789 5f2b7c4 SI-5789 Use the ReplTest framework in the test
SI-5789 850128d SI-5789 Checks in the right version of the test
SI-6782, SI-5789 d699122 SI-5789 Removes assertion about implclass flag in Mixin.scala
SI-5894 a23cc20 SI-5894 Don't emit static forwarders for macros.
SI-5894 b828e32 Remove some low-hanging duplication beween GenJVM / GenASM.
SI-1672 31a0aa7 SI-1672 Catches are in tail position without finally.
SI-6535 8a1f85d SI-6535 Step back from the precipice of a cycle
SI-6549 90c87fc SI-6549 Improve escaping in REPL codegen.
SI-6547 d99b7f4 SI-6547: elide box unbox pair only when primitives match
SI-5678 8204b19 SI-5678 Bad return type for [Use Case] docs in Range
SI-6667 9aa6ded SI-6667 Abort after any ambiguous in-scope implicit
SI-6667 3719f79 Refactor use of SearchFailure in implicits.
SI-4664 2aa66be SI-4664 [Make scala.util.Random Serializable] Add test case
SI-4664 0b92073 SI-4664 Make scala.util.Random Serializable
SI-6712 089cc9f Fix for SI-6712, bug in object lifting.
SI-6696, SI-6696 5546a72 SI-6696 removes "helper" tree factory methods
SI-6766 868fe64 SI-6766 Makes the -Pcontinuations:enable flag a project specific preference
SI-6766 a725494 SI-6766 Create a continuations project in eclipse
SI-6631 7ee1145 SI-6631 Handle invalid escapes in string interpolators
SI-5464 5028181 tests for idempotency issues in the typechecker
SI-6663, SI-5726, SI-5733, SI-6320, SI-6551, SI-6722 a694194 Test cases for SI-5726, SI-5733, SI-6320, SI-6551, SI-6722.
SI-6731 dac1488 Fix for SI-6731, dropped trees in selectDynamic.
SI-5753 597a949 SI-5753 macros cannot be loaded when inherited from a class or a trait
SI-6718 20c2a50 SI-6718 fixes a volatile test
SI-6687 7f1ba06 Fix for SI-6687, wrong isVar logic.
SI-6357 8b54ec9 Fix for SI-6357, cycle with value classes.
SI-6677 2aa6841 SI-6677 Insert required cast in `new qual.foo.T`
SI-6706 d0de367 Fix for SI-6706, Symbol breakage under GC.
SI-6023 548a54d SI-6023 reify abstract vals
SI-6673, SI-6673 907d6ea SI-6673 fixes macro problems with eta expansions
SI-6695 7376ad7 SI-6695 Test case for fixed Array match bug
SI-6632, SI-6633 925c6e3 SI-6632 SI-6633 Fixes issues and data corruption in ListBuffer
SI-6634 2c23acf SI-6634 Fixes data corruption issue in ListBuffer#remove
SI-6551 74ca558 SI-6551: don't insert apply call in polymorphic expression.
SI-6663 c656920 SI-6663: don't ignore type parameter on selectDynamic invocation
SI-6150 1f0e488 Fixes SI-6150 - backport to 2.10.x branch.
SI-5330, SI-6014 65778d7 SI-5330, SI-6014 deal with existential self-type
SI-6539 6902da3 SI-6539 Annotation for methods unfit for post-typer ASTs
SI-6662 b922573 Fix for SI-6662, macro failing too early.
SI-6616 03aa7fc SI-6616 Check that unsafe operations are only called on the presentation compiler thread.
SI-6649 1bdd5ee better error when typetagging local classes
SI-6597 1e2328e Fix for SI-6597, implicit case class crasher.
SI-6488 c7c79c8 SI-6488: Stop I/O threads prior to Process destruction
SI-6559 492cbe5 Fixes SI-6559 - StringContext not using passed in escape function.
SI-6358 a52bd2c Added one more test for SI-6358
SI-6358 4c86dbb Closes SI-6358. Move accessor generation for lazy vals to typers.
SI-6422 c6866a2 SI-6422: add missing Fractional and Integral alias in scala package

Complete commit list!

sha Title
b775d8f test.done again checks bin compat (using mima 0.1.5)
09130d5 [nomaster] SI-7195 minor version mustn't introduce warnings
0303e64 SI-7183 Disable unreachability for withFilter matches.
204b2b4 SI-7126 Eliminate a source of malformed types.
696dcdf SI-7126 Account for the alias types that don't dealias.
1976d9f fixes the test for SI-7112
de1f749 SI-7180 Fix regression in implicit scope of HK type alias.
26be206 Additional test case for Lukas' fix to annotated originals.
dafebd0 Fix typing idempotency bug with Annotated trees
19649d4 SI-6576 Workaround / diagnostic for IDE NPE.
bb067d3 SI-7146 - Fixing checkinit bug in ExecutionContextImpl and adding test
348ff4b SI-7128 Fix regression in copyToArray for empty arrays
d49532f check scala-swing for binary compatibility
dad8796 [nomaster] Revert "Added a Swing ColorChooser wrapper"
b4f277a [nomaster] Revert "Added a Swing PopupMenu wrapper"
85b63b8 [nomaster] Revert "SI-6548 reflection now correctly enters jinners"
2f9b708 [nomaster] inline importPrivateWithinFromJavaFlags into SymbolTable
ddfe3a0 [nomaster] Revert "cosmetic renamings in runtime reflection"
9194b37 [nomaster] refactor AdaptedForkJoinTask, uncaughtExceptionHandler
56cbf23 [nomaster] can't add new class BatchingExecutor
549a1fe [nomaster] bring back SerializeStart from fa3b8040eb
5d487f1 [nomaster] duplicate tailImpl as a private method
8b4af71 [nomaster] Revert "SI-4664 Make scala.util.Random Serializable"
f9550c6 [nomaster] Revert "Fixes SI-6521, overrides Range#head to be faster"
af0da51 [nomaster] run mima both ways, filter out failures
13caa49 Fix for paramaccessor alias regression.
22341e7 Expanded bytecode testing code.
57c0e63 accommodates pull request feedback
ce867c7 term and type reftrees are now reified uniformly
09ef873 SI-6591 Reify and path-dependent types
e0068b9 SI-5675 Discard duplicate feature warnings at a position
5258b63 SI-7096 SubstSymMap copies trees before modifying their symbols
81fa831 Class symbols can't be contravariant.
275b341 SI-6666 Catch VerifyErrors in the making in early defs.
66fa1f2 Broader checks for poisonous this references.
4c34280 Add a test case from the comments of SI-6666.
fd61254 SI-6666 Account for nesting in setting INCONSTRUCTOR
ee24807 Move a test from pos to run to highlight bytecode deficiencies.
6052e19 [backport] SI-6478 Fixing JavaTokenParser ident
b43ae58 introduces an exhaustive java-to-scala test
02ed5fb SI-6989 privateWithin is now populated in reflect
96b0eff SI-5824 Fix crashes in reify with _*
fa3b804 SI-6961 no structural sharing in list serialization
dfbaaa1 SI-6187 Make partial functions re-typable
55c9b9c SI-6146 More accurate prefixes for sealed subtypes.
1426fec SI-7070 Turn restriction on companions in pkg objs into warning
a0ee6e9 SI-5082 Cycle avoidance between case companions
a53e150 SI-7100 Fixed infinite recursion in duplicators
0d68a87 SI-6113 typeOf now works for type lambdas
b579a42 SI-6888 Loosen criteria for $outer search.
79e774f SI-7026: parseTree should never return a typed one
f784fbf Add a request to presentation compiler to fetch doc comment information. Refactor scaladoc base functionality to allow it to be mixed in with Global in the IDE.
1f838ed [nomaster] verifies compat with 2.10.0
c9a0e36 [nomaster] Revert "refactors handling of parent types"
570f4a4 [nomaster] Revert "introduces global.pendingSuperCall"
c720531 [nomaster] Revert "DummyTree => CannotHaveAttrs"
4d7982b [nomaster] Revert "more ListOfNil => Nil"
4ef2a49 [nomaster] Revert "s/SuperCallArgs/SuperArgs/"
0e0c851 [nomaster] revives BuildUtils.emptyValDef
1093ce0 [nomaster] removes Tree.canHaveAttrs
7bf0ecc [nomaster] doesn't touch NonemptyAttachments
015ff51 [nomaster] Revert "SI-5017 Poor performance of :+ operator on Arrays"
87d52db [nomaster] SI-6773 Makes the SI-6150 changes binary compatible with 2.10
e5c0e59 SI-7060 More conservative dead code elim marking
8ae0e2a SI-7039 unapplySeq result type independent of subpattern count
0574172 SI-5833 Fixes tail-of-Nil problem in RefinedType#normalizeImpl
b67f8e5 [nomerge] SI-6667 Demote a new ambiguity error to a lint warning.
0e8d8c7 SI-6017 Scaladoc: Show all letters without dangling links
3f0bce9 SI-6017 Generate Scaladoc's index links in Scala side
a6137d1 Fix SI-6578. Deprecated `askType` because of possible race conditions in type checker.
02dd4c9 reflecting @throws defined in Scala code
0bcdf71 pullrequest feedback
adf50a3 evicts javac-artifacts.jar
f1701f7 SI-7008 @throws annotations are now populated in reflect
3af838c SI-7033 Be symful when creating factory methods.
bc01614 Revert "SI-6422: add missing Fractional and Integral alias in scala package"
4fda83f SI-5313 Minor code cleanup for store clobbering
c7d489e SI-5313 Test clobbers on the back edge of a loop
9b4fa83 SI-5313 Eliminate more stores by replacing clobbers with null stores
eab2884 SI-5313 Do not eliminate stores that potentially wipe referenes
2403d1d SI-7046 reflection now auto-initializes knownDirectSubclasses
f3cdf14 Fix context for type checking early initializers
7e836f8 Analyzer Plugins
b74c33e SI-1803, plus documentation and cleanups in Namers, mainly in typeSig
a06d31f Keep annotations when computing lubs
6697c28 Allow for Function treess with refined types in UnCurry.
59918ee case module toString is synthetic
91c9c42 replace symbols correctly when subtyping dependent types
374c912 SI-7022 Additional test case for value class w. bounds
4ed8836 [backport] SI-6482, lost bounds in extension methods.
b2117cf SI-6941 tests
b92396b SI-6686 drop valdef unused in flatMapCond's block
b47bb0f no type test if static type <:< primitive value class
494ba94 don't store subpats bound to underscore
71ea3e8 no null check for type-tested unapply arg
62b37dd refactor: prepare null check redundancy analysis
415becd support testing bytecode similarity in ByteCodeTest
a07555f bytecode diffing support in ByteCodeTest
d71f59e SI-4976 Scaladoc: Add a source link to package objects
5275bae SI-7029 - Make test more robust
3f78bee SI-7029 - Makes sure that uncaught exceptions are propagated to the UEH for the global ExecutionContext
2989258 SI-6539 moves @compileTimeOnly away from scala-reflect
941c569 SI-6812 scaladoc can opt out of expanding macros
11ac963c [backport] Fix for SI-6206, inconsistency with apply.
5a2828c A test case to guide the eventual fix for SI-6601.
172f3f6 Revert "SI-6601 Publicise derived value contstructor after pickler"
6db4db9 SI-2818 Make List.foldRight always do a reverse/foldLeft flip
8350cd9 [backport] SI-2968 Fix brace healing for `^case (class|object) {`
1de399d SI-6963 Add version to -Xmigration
1049435 SI-3353 don't extract <unapply-selector> into named-arg local val
485d815 There is no "letters" method in this branch
033b6c1 Forgot to cherry-pick the .check file
831bffd SI-6017 Scaladoc's Index should be case-sensitive
e36327a SI-6853 changed private method remove to be tail recursive. Operations += and -= on mutable.ListMap rely on the private method remove to perform. This methods was implemented using recursion, but it was not tail recursive. When the ListMap got too big the += caused a StackOverflowError.
ff92610 SI-6595, lost modifiers in early defs.
98534b2 SI-6584, Stream#distinct uses too much memory.
d2316df SI-6426, importable _.
05882eb SI-6072, crasher with overloaded eq.
d4437aa SI-5604, selections on package objects.
e156cd1 SI-5859, inapplicable varargs.
f3f1e50 SI-5353, imperfect error message.
77ec4ef SI-5130, precision disappearing from refinement.
faca7ec SI-4729, overriding java varargs in scala.
0990890 SI-2418, remove restriction on final vars.
16eaefb SI-6572 Test case, originally fixed in a3680be.
0679da5 [backport] SI-6301 / SI-6572 specialization regressions
f6d90a8 [backport] SI-5378, unsoundness with type bounds in refinements.
5f85fe5 SI-4714 Initialize history while initializing the REPL's reader
243cede [backport] Removed restriction on final vars, SI-2418.
4b39be4 changes the flags to not depend on partest
ced7411 the scanner is now less eager about deprecations
1ab7d1c evicts eponymous packages and objects from tests
fefe6cc SI-7009: `@throws` annotation synthesized incorrectly
e22d801 Test case for SI-7009.
a87d409 SI-6968 Simple Tuple patterns aren't irrefutable
166fd02 SI-6669 Add . to the default scalap classpath
80a814d SI-6728 Fixes crash in parser on incomplete for expression
8610d7e Add Bytecode test (ASM-based) to partest.
9afae59 SI-7035 Centralize case field accessor sorting.
eba079b Optimization in AsSeenFromMap.
f72354c Remove gratuitous var
6357c8d SI-6726 Further optimization of pattern analysis
14d8c22 SI-6726 Hash consing for Pattern matching Sym-s
32c0a2e SI-6726 Add benchmark used for testing pattern matcher.
d3f3394 [backport] Fix for SI-6154, VerifyError originating in uncurry.
6f86583 SI-6516, macros comparing types with == instead of =:=.
cfaa3b5 SI-6551 Expand test case into uncomfortable areas.
45ccdc5 SI-6651 Substitute `this` in extension method sigs
bffe776 [backport] Disabled SI-6987.
b8da00e [backport] SI-3577 BoundedWildcardType handling
7babdab SI-6891 Fix value class + tailrec crasher.
cff0934 Ill-scoped reference checking in TreeCheckers
05ad682 Make value classes TreeCheckers friendly
3cbb002 SI-4602 Disable unreliable test of fsc path absolutization
952e1bf SI-4602 Make fsc absolutize source file names
e0cf651 SI-4733 - fsc no longer creates a single temp directory for all users.
0b52a51 SI-6863 Fix verify error in captured var inited from expr with try/catch
262d7ec SI-6932 Remove Batchable trait plus minor clean-ups
08a74e5 Fix SI-6932 by enabling linearization of callback execution for the internal execution context of Future
11329c3 SI-6443 Expand test coverage with varargs, by-name.
493197f SI-6443 Widen dependent param types in uncurry
62111a4 Update a checkfile from a recent fix.
a72aa94 SI-7018 Fix memory leak in Attachments.
7c45aa5 Bumped partest MaxPermSize to 128m.
d592216 SI-7011 Fix finding constructor type in captured var definitions
f6168b8 SI-6231 Report unsupported free var capture by a trait.
1dab5bf SI-6987 Tests fsc verbose output
e12a5b8 SI-6987 Fixes fsc compile server verbose output
1a7de43 SI-6666 Restrict hidden `this` access in self/super calls.
cbd0205 SI-6902 Check unreachability under @unchecked
8a74b7b Closes SI-6952: add correct error positions for Dynamic feature check.
0d01cc1 SI-6969, mishandling of SoftReferences in method cache.
d9d6494 SI-6976 Fix value class separate compilation crasher.
a9bbfec Do not recompute stack frames when instrumenting bytecode.
b2776b4 Set `canRetransform` flag to `false` in instrumentation.
0a967e1 Correct whitespace in `ASMTransformer.java`.
f2e45fc Fix class loader issues in instrumentation tests.
d972336 Use the same default scalac options in all three partest frontends
4dceb22 [backport] Fix SI-6637 (misoptimization in erasure)
ba411c4 [backport] Fix unsafe array opt. / opt. primitive Array(...)
96ed055 [backport] SI-6567 Warning for Option(implicitView(foo))
3486d47 SI-6439 Avoid spurious REPL warnings about companionship
52a5328 Addressing warnings.
8f49884 SI-6994 Avoid spurious promiscuous catch warning
873aecc Fix broken build.
8297843 SI-6434 Pretty print function types with by name arg as (=> A) => B
277f0fe Removed class files.
964776f use ArrayBuffer instead of Array to build Formulae
f539781 SI-6942 more efficient unreachability analysis
c606559 SI-5568 Comment improvements for getClass on primitive intersection.
765386f SI-5568 Fixes verify error from getClass on refinement of value type
b07228a SI-6601 Publicise derived value contstructor after pickler
66fe64f SI-6923 Context now buffers warnings as well as errors
ce56316 use Constant::isIntRange even if it's NIH
a6b34b6 SI-6956 determine switchability by type, not tree
9cc61f3 SI-6479 Don't lift try exprs in label arguments.
0c2e884 SI-6963 Deprecates -Xmigration switch
78019b2 SI-6675 Test new warning under -Xoldpatmat.
692372c SI-6675 -Xlint arity enforcement for extractors
8475807 SI-6955 switch emission no longer foiled by type alias
39352fe SI-6082 Conditionally expand @ann(x) to @ann(value = x)
4aba0fe SI-5440 Test case for exhaustiveness check
1212af4 SI-5340 Change println to log
51f574a clean up synthesizePartialFunction
e314ff1 rework partial function synthesis
b1cea21 SI-6925 use concrete type in applyOrElse's match's selector
8fb19b1 SI-5189 detect unsoundness when inferring type of match
38404e8 SI-6555 Scaladoc's class filter shouldn't drop the last character
0f237e9 SI-6930 adds documentation to reduceLeft in TraversableOnce
57ae1f3 SI-6905 - Switch to sneakyThrows instead of Unsafe.throwException as per new jsr166y to avoid issues with Android
25c7364 SI-6126 Test case for varargs of tagged primitives.
79a722f SI-6946, SI-6924 Greatly improves IsTraversableLike docs
3ef487e SI-5954 Implementation restriction preventing companions in package objs
a557a97 Fixes SI-6521, overrides Range#head to be faster
7a23562 SI-6912 Avoid a typer cycle in overload resolution.
e5da30b Backport of SI-6846.
c58647f SI-6928, VerifyError with self reference to super.
557caa3 SI-6641 Deprecate SwingWorker
103a478 SI-6803: do not use java.net.URI, even more so incorrectly.
77c8751 SI-6915 Updates copyright properties to 2002-2013
2ceec33 avoid reflect overhead of certain array instantiations
f76432a proper elementClass for WrappedArray
3405294 SI-6897, lubs and varargs star.
a6ce037 SI-6896, spurious warning with overloaded main.
eeb6ee6 SI-6911, regression in generated case class equality.
92cf0e3 Fix Iterator#copyToArray (fixes SI-6827).
02b2da6 SI-5017 Poor performance of :+ operator on Arrays
ac61e34 SI-6194, repl crash.
9575ee9 Remove -deprecation from partest default options.
e5f16ac SI-6746 Fixes MANIFEST.MF package entry (s.r.makro -> s.r.macros)
9d1e22b Stream.zip naturalsEx example does not compile => remove extra zip call
1364381 LinearSeq lengthCompare without an iterator.
24a033b SI-6415, overly eager evaluation in Stream.
231d59d SI-6829, SI-6788, NPEs during erroneous compilation.
4423c59 Remove stray debugging output line.
3a6f3ae SI-6338 fixes the unchecked warning in quick.comp
0ceaf83 scaladoc Template: remove duplicate code and several usages of Option.get.
b53c35c Implicit vars should have non-implicit setters.
f029c3a SI-6795 Simplify errors related to "abstract override" on type members
71e42a7 SI-6795 Adds negative check for "abstract override" on types in traits
5851396 Cleanup MemberLookup. Better explain ambiguous link targets.
0cbefd0 Deprecate `scala.tools.nsc.Phases` because it's dead-code.
0a2022c Remove dead code from `Global`.
cab8ea4 Expand test with a stably qualified example.
90efa6b SI-3995 Exclude companions with an existential prefix.
0429f0f cosmetic renamings in runtime reflection
54a84a3 SI-6548 reflection now correctly enters jinners
9ba7cf8 fixes incorrect handling of Annotated in lazy copier
787e82f adds scala-reflect.jar to MIMA in ant
bbf0eb2 Test showing the absence of a forward reference
289a882 SI-5390 Detect forward reference of case class apply
d29696a update mailmap
8b7f0ac SI-5361 Refactor in accordance with review comments.
327083d SI-5361 Avoid cyclic type with malformed refinement
098e8a0 typedIdent no longer destroys attachments
6015361 Expand pattern match position tests.
286dced SI-6288 Remedy ill-positioned extractor binding.
f69b846 SI-6288 Fix positioning of label jumps
79a43d7 SI-6288 Position argument of unapply
2621918 s/SuperCallArgs/SuperArgs/
dfa4e23 simplifies checkBounds
a0cd0f8 prevents spurious kind bound errors
24455e2 Recurse into instantiations when stripping type vars.
089173d Fixes SI-6758: force LazyAnnnotationInfo for DefDef and TypeDef
e5e6d67 Extract base scaladoc functionality for the IDE.
69f4e93 DRYer crash reports.
818a2e6 SI-6555 Better parameter name retention
c5ffa03 Cleanups of reifyBoundTerm and reifyBoundType
286abfc SI-5841 reification of renamed imports
0b1ae9c SI-5877 Tweak the check for package object owner.
96e5c40 SI-5877 Support implicit classes in package objects
65c1ae5 Adds debug logging for synthetic registration.
673bc70 Split test case to workaround incomplete error report.
c24400f SI-6558 Expand test case for annotation typos
d9928d5 Fixes SI-6558: typecheck lazy annotation info using non-silent context.
e249f2e SI-4922 Show default in Scaladoc for generic methods.
bd04b2c SI-6614 Test case for fixed ArrayStack misconduct.
48cffd0 Share the empty LinkedList between first0/last0.
d526f8b SI-6690 Release reference to last dequeued element.
5f2b7c4 SI-5789 Use the ReplTest framework in the test
850128d SI-5789 Checks in the right version of the test
d699122 SI-5789 Removes assertion about implclass flag in Mixin.scala
a23cc20 SI-5894 Don't emit static forwarders for macros.
b828e32 Remove some low-hanging duplication beween GenJVM / GenASM.
8434922 Addtional test cases for tail calls in catches.
31a0aa7 SI-1672 Catches are in tail position without finally.
e4d1d93 Warn when generated classfiles differ only in case.
8a1f85d SI-6535 Step back from the precipice of a cycle
90c87fc SI-6549 Improve escaping in REPL codegen.
d99b7f4 SI-6547: elide box unbox pair only when primitives match
8204b19 SI-5678 Bad return type for [Use Case] docs in Range
9aa6ded SI-6667 Abort after any ambiguous in-scope implicit
3719f79 Refactor use of SearchFailure in implicits.
2aa66be SI-4664 [Make scala.util.Random Serializable] Add test case
0b92073 SI-4664 Make scala.util.Random Serializable
089cc9f Fix for SI-6712, bug in object lifting.
78a081f Now the test suite runs MIMA for compatibility testing.
bb9adfb more ListOfNil => Nil
838cbe6 DummyTree => CannotHaveAttrs
7ee299b evicts assert(false) from the compiler
0ebf72b introduces global.pendingSuperCall
40063b0 refactors handling of parent types
85f3202 unifies approaches to call analysis in TreeInfo
d547760 TypeApply + Select and their type-level twins
5546a72 SI-6696 removes "helper" tree factory methods
868fe64 SI-6766 Makes the -Pcontinuations:enable flag a project specific preference
a725494 SI-6766 Create a continuations project in eclipse
d483ec3 Fix Scaladoc for the raw interpolator.
7ee1145 SI-6631 Handle invalid escapes in string interpolators
ef61bc5 Fix typo in documentation for Seq
5028181 tests for idempotency issues in the typechecker
a694194 Test cases for SI-5726, SI-5733, SI-6320, SI-6551, SI-6722.
dac1488 Fix for SI-6731, dropped trees in selectDynamic.
d55840e Asserts about Tree qualifiers.
1be0244 neg test added
597a949 SI-5753 macros cannot be loaded when inherited from a class or a trait
8fcbee5 Take advantage of the margin stripping interpolator.
a0001fc Adds a margin stripping string interpolator.
20c2a50 SI-6718 fixes a volatile test
3177934 Mark pattern matcher synthetics as SYNTHETIC.
b02e952 Set symbol flags at creation.
7f1ba06 Fix for SI-6687, wrong isVar logic.
555a9ba findEntry implementation code more concise and DRYer.
8b54ec9 Fix for SI-6357, cycle with value classes.
cd1bf78 Refactoring of adaptMethod
2aa6841 SI-6677 Insert required cast in `new qual.foo.T`
d0de367 Fix for SI-6706, Symbol breakage under GC.
548a54d SI-6023 reify abstract vals
1fd3a2a adds comments to standard attachments
907d6ea SI-6673 fixes macro problems with eta expansions
7376ad7 SI-6695 Test case for fixed Array match bug
925c6e3 SI-6632 SI-6633 Fixes issues and data corruption in ListBuffer
2c23acf SI-6634 Fixes data corruption issue in ListBuffer#remove
74ca558 SI-6551: don't insert apply call in polymorphic expression.
c656920 SI-6663: don't ignore type parameter on selectDynamic invocation
af8b45f Scaladoc update for collection.mutable.MultiMap
db0bf8f Restore the opimization apparently lost after merge.
1f0e488 Fixes SI-6150 - backport to 2.10.x branch.
65778d7 SI-5330, SI-6014 deal with existential self-type
f8647ee show developer guidelines on opening pull request
2e0cbe0 sane printing of renamed imports
48ee29a Refine @compileTimeOnly
6902da3 SI-6539 Annotation for methods unfit for post-typer ASTs
b922573 Fix for SI-6662, macro failing too early.
03aa7fc SI-6616 Check that unsafe operations are only called on the presentation compiler thread.
1bdd5ee better error when typetagging local classes
af3b03b -Yshow-trees-compact respects other options
f98e4d0 Fix type of the custom `ClassTag` in `PatternMatching.scala`
1e2328e Fix for SI-6597, implicit case class crasher.
c7c79c8 SI-6488: Stop I/O threads prior to Process destruction
492cbe5 Fixes SI-6559 - StringContext not using passed in escape function.
e23f9ed Remove compiler phases that don't influence scaladoc generation.
d22b74c Scaladoc knows the package structure of the libraries, so don't include them in external documentation setting.
ed09630 Crash on missing accessor (internal bug in the lazy vals implementation) instead of trying to recover from the bug
a3c5427 Incorporated changes suggested in code review
a52bd2c Added one more test for SI-6358
4c86dbb Closes SI-6358. Move accessor generation for lazy vals to typers.
aa27396 Remove unneeded calls to substring()
08ab007 Added a Swing ColorChooser wrapper
bdff881 Added a Swing PopupMenu wrapper
c6866a2 SI-6422: add missing Fractional and Integral alias in scala package
ad65b28 Bump version number for next dev cycle.