| Commit message (Collapse) | Author | Age | Files | Lines |
|\
| |
| |
| |
| | |
viktorklang/wip-normalize-parameter-names-in-scala-concurrent-2.11-√
Deprecate parameter names in scala.concurrent
|
| |
| |
| |
| |
| |
| |
| | |
for the purpose of being consistent.
Also switches to Future.successful iso
Promise.successful(..).future for brevity
in implementation code.
|
|\ \
| | |
| | | |
SI-7484 Add @SupressWarning("rawtypes") to MainNode.java
|
| | | |
|
| | | |
|
|\ \ \
| | | |
| | | | |
SI-6488 Interrupt i/o threads on process destroy
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
The previous fix uses Thread.stop to stop the threads which
drain outputs, but should do something orderly.
This commit interrupts the threads, which must check isInterrupted
before attempting further i/o.
The reading thread will suppress either the interruption or the
IOException cited in the ticket.
Similarly, i/o handlers must preserve and communicate interrupted
status.
The modest goal of this fix is to ameliorate any stack traces
when the process is destroyed.
The test runs itself as a sample process with output.
|
|\ \ \ \
| | | | |
| | | | | |
Merge v2.10.1-326-g4f8c306 into master
|
| |\ \ \ \
| | | |/ /
| | |/| |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
================================================================
Merge commit 'v2.10.1-326-g4f8c306' into merge/v2.10.1-326-g4f8c306-to-master
Conflicts:
src/compiler/scala/tools/nsc/typechecker/SuperAccessors.scala
src/reflect/scala/reflect/runtime/JavaMirrors.scala
================================================================
Merge -s ours 4e64a27 ([nomaster commit range])
================================================================
Merge commit '0ae7e55' into merge/v2.10.1-326-g4f8c306-to-master
Conflicts:
src/compiler/scala/tools/nsc/typechecker/Macros.scala
|
| |\ \ \ \
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
viktorklang/wip-SI7383-EC-prepare-in-Future-apply-2.10-√
SI-7383 - call ExecutionContext.prepare in Future.apply
|
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
capturing local context like ThreadLocals and then re-establishing them prior to execution, as per intention of EC.prepare
|
| |\ \ \ \ \
| | |/ / / /
| |/| | | | |
Scaladoc: fixing small typo in PartialFunction.scala
|
| | | | | |
| | | | | |
| | | | | | |
Fixing a one-letter typo in the documentation of PartialFunction.scala (from "an plain" to "a plain").
|
| |\ \ \ \ \
| | |/ / / /
| |/| | | | |
Correct sorting example for Ordering in scaladoc
|
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
Below code snippet,
Sorting.quickSort(pairs)(Ordering.by[(String, Int, Int), Int](_._2)
should be
Sorting.quickSort(pairs)(Ordering.by[(String, Int, Int), Int](_._2))
|
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
These are still used in SBT 0.13.0-M2.
This is a partial revert of ac990c1bc.
|
| |_|/ / /
|/| | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
This reverts commit 7e9c21ffd38711c23f89b5650cc5a32cafe4cd20.
This is still used by SBT; we'll give it a touch longer
to switch to Murmur3.
|
|\ \ \ \ \
| | | | | |
| | | | | | |
SI-6406 Restore deprecated API
|
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
The original patch for SI-6406 was intended for 2.10 but during
those volatile weeks of early autumn, it missed the boat.
A deprecated method was incorrectly tagged at 2.10 and later
removed; this restores the method and its test, and resets
the deprecation clock to 2.11.
The deprecation tool should confirm that changes occur on the
git timeline as claimed.
|
| |_|_|_|/
|/| | | | |
|
|\ \ \ \ \
| |_|_|_|/
|/| | | | |
SI-7476 Add documentation to GenericTraversableTemplate
|
| |/ / / |
|
|\ \ \ \
| | | | |
| | | | | |
SI-7469 Make @deprecated elems in scala.concurrent private[scala]
|
| |/ / /
| | | |
| | | |
| | | | |
They can't be removed yet because scala.actors depends on it.
|
|\ \ \ \
| | | | |
| | | | | |
SI-7469 Remove deprecated elements in s.u.parsing.combinator
|
| |/ / / |
|
|\ \ \ \
| | | | |
| | | | | |
SI-7469 Remove @deprecated MurmurHash elements
|
| |/ / / |
|
|\ \ \ \
| | | | |
| | | | | |
fix typo in comment
|
| | | | | |
|
| |/ / /
|/| | | |
|
|\ \ \ \
| | | | |
| | | | | |
SI-7432 Range.min should throw NoSuchElementException on empty range
|
| |/ / /
| | | |
| | | |
| | | |
| | | | |
For consistency, range.max and range.min should throw
NoSuchElementException on an empty range.
|
|\ \ \ \
| | | | |
| | | | | |
SI-6863 root cause fixed using factory of scala.runtime.*Ref
|
| |/ / /
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
This commit does away with an error-prone division of labor between
UnCurry and LambdaLift, a division of labor by which UnCurry had to
anticipate under which circumstances LambdaLift creates a
scala.runtime.*Ref whose initial value is given by a an expression
including a Try in non-statement position. That sounds complicated,
and it is.
The solution so far (fixing SI-6863) is replaced by a simpler approach,
at the cost of forward binary comptability with pre-2.11 releases,
this time fixing the root cause of SI-6863.
From now on, a s.r.*Ref is instantiated via invocation of
a static factory method in the s.r.*Ref class in question.
Unlike the code that was emitted so far (which involved
NEW refclass, DUP, expr, INVOKESPECIAL refclass.<init>)
the "expr" doesn't appear on the operand stack on top
of the *Ref value being initialized. In other words,
the *Ref initialization is in statement position provided "expr" is.
|
|/ / /
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Confusing, now-it-happens now-it-doesn't mysteries lurk
in the darkness. When scala packages are declared like this:
package scala.collection.mutable
Then paths relative to scala can easily be broken via the unlucky
presence of an empty (or nonempty) directory. Example:
// a.scala
package scala.foo
class Bar { new util.Random }
% scalac ./a.scala
% mkdir util
% scalac ./a.scala
./a.scala:4: error: type Random is not a member of package util
new util.Random
^
one error found
There are two ways to play defense against this:
- don't use relative paths; okay sometimes, less so others
- don't "opt out" of the scala package
This commit mostly pursues the latter, with occasional doses
of the former.
I created a scratch directory containing these empty directories:
actors annotation ant api asm beans cmd collection compat
concurrent control convert docutil dtd duration event factory
forkjoin generic hashing immutable impl include internal io
logging macros man1 matching math meta model mutable nsc parallel
parsing partest persistent process pull ref reflect reify remote
runtime scalap scheduler script swing sys text threadpool tools
transform unchecked util xml
I stopped when I could compile the main src directories
even with all those empties on my classpath.
|
| | |
| | |
| | |
| | |
| | | |
Additionally, add @deprecatedInheritance to warn creators of
custom subclasses that the class will be sealed in the future.
|
|\ \ \
| | | |
| | | |
| | | |
| | | | |
Conflicts:
src/compiler/scala/tools/nsc/typechecker/Contexts.scala
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
While we are all aware of the issues around Serialization,
I think in this case it is perfectly sound and safe to make
List serializable:
- List is not an interface, it is the base type of an ADT.
Common behavior of its members should be reflected in the base type.
- List is sealed, there is no chance of an user providing a new
non-serializable subtype of List.
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
No, this isn't busywork, how dare you suggest
such a thing. I intend my tombstone to say
HERE LIES EXTEMPORE,
WHO ELIMINATED A LOT OF SIP-18 WARNINGS
REST IN PEACE
|
|/ / /
| | |
| | |
| | |
| | |
| | | |
Some unused private code, unused imports, and points where
an extra pair of parentheses is necessary for scalac to have
confidence in our intentions.
|
|\ \ \
| | | |
| | | | |
SI-6898 Document AnyVal box and unbox implemention by BoxesRunTime
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
- Added @boxRunTimeDoc@ and @unboxRunTimeDoc@ tokens to AnyVals
- Doc comments refer to BoxesRunTime.java in the Scala repo
- No comment for Unit
|
| | | |
| | | |
| | | |
| | | | |
- Since the generator was not changed, the classes no longer represent the generated versions
|
|\ \ \ \
| | | | |
| | | | | |
SI-7080 improve boundary value checking for BitSet
|
| |/ / /
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
When BitSet accepts a very large integer such as Int.MaxValue,
integer overflow possibly occurs in the calculation of boundary
value "nwords * WordLength". This faulty boundary condition
causes empty-iterator problem like following:
scala> import collection.mutable.BitSet
import collection.mutable.BitSet
scala> val x = BitSet(Int.MaxValue)
x: scala.collection.mutable.BitSet = BitSet()
scala> x.iterator
res0: Iterator[Int] = empty iterator
|
|\ \ \ \
| | | | |
| | | | | |
Change unrecognized scaladoc comments to C-style
|
| |/ / / |
|
| | | | |
|
|\ \ \ \
| | | | |
| | | | | |
SI-7312 @deprecatedInheritance now ignores same-file subclasses
|