| Commit message (Collapse) | Author | Age | Files | Lines |
|\ |
|
| |\
| | |
| | | |
fix t9370 so it works on Windows too
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
partest has custom code for -Xplugin handling (see
DirectCompiler.updatePluginPath for details). that code has its own
idea of what the syntax of -Xplugin is, different from Scalac's.
partest's idea is that multiple paths should be separated by the
platform classpath separator character, so : on Unix and ; on Windows.
the .flags file here was using a colon, and that confuses partest on
Windows, since partest was expecting a semicolon.
it might be nice to fix partest to accept comma as the separator
instead, which is standard for a scalac MultiStringSetting such
as -Xplugin. but it turns out we have an out: we can just provide
multiple -Xplugin flags.
what evidence do I have that this is the right change?
* the test still passes on both Windows and Mac OS X (manually
tested); if Travis likes it, we'll know it passes on Linux too
* I tried reverting Som's fix for SI-9370 (c32ba93) and the test failed,
as expected, both with and without my change
* I added a bunch of debugging output to
DirectCompiler.updatePluginPath in partest, built a new partest jar,
and used it to run the test on Windows with and without my fix, and
verified by eye that the logic there was operating as expected in
both cases
and in conclusion, for Som's benefit: <insert cryptic joke here>
|
| |\ \
| | | |
| | | | |
use latest partest (1.0.9)
|
| | |/
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
the new version should be no different, from this repo's perspective,
since the changes made between 1.0.7 and 1.0.9 had only to do with
build and packaging. nonetheless, we should be using the latest
latest to help guard against regressions.
(my other motive is that I'm contemplating fixing a partest issue
that would result in a 1.0.10 release, so I'd like to have the
upgrade to 1.0.9 in place first, so if anything goes wrong there
is less searching to do for the cause)
|
| |\ \
| | |/
| |/| |
Try harder to avoid reporting unpositioned errors
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Rather than issuing an error at NoPosition, which usually means
an unpositioned tree is being typechecked, walk up the context
chain for an enclosing positioned tree.
I've tested this manually with ensime which was getting an
unpositioned warning as a result of a unpositioned trees created
by a macro in scalatest.
```
% ../scala-positioned-error/build/quick/bin/scalac @args.txt
/Users/jason/code/ensime-server/core/src/it/scala/org/ensime/core/RichPresentationCompilerSpec.scala:216: warning: implicit numeric widening
) { (p, cc) =>
^
```
|
| |\ \
| | | |
| | | | |
SI-9475 Dependent PolyTypes are dependent types
|
| |/ /
| | |
| | |
| | | |
Such that uncurry can correctly un-dependify them.
|
| |\ \
| | | |
| | | | |
Abort Ant build if Ant version is <1.9
|
| |/ /
| | |
| | |
| | | |
Older Ant versions are not able to compiler Java8 sources
|
| |\ \
| | | |
| | | | |
Improve drifted URLs
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
- Any.scala: Link to the guide instead of the SIP.
- AnyVal.scala: Remove SIP link and align guide link to Any.scala.
- Commands.scala: Use a less out of date team link.
- Logic.scala: Link was broken. Substitute found.
- Process.scala: Links were 403 & 404. Fixed as this is a code sample.
- TypeMaps.scala: Move old EPFL Trac to JIRA.
- RedBlackTree.scala: Replaced broken link with substitutes based on site maintainer input [1].
[1] When asked where Data-Set-RBTree.html had gone Don@UNSW advised
"I think it's on the Haskell wiki now. It was Chris Okazaki's version".
The closest I could find to what this document probably was is this
paper by Hinze edited by Okasaki,
http://www.cs.ox.ac.uk/ralf.hinze/publications/WAAAPL99b.ps.gz
The paper cites the Okasaki document so I included a link to that as
well.
The Haskell Wiki does have a link to a RB document but that's broken
too,
https://wiki.haskell.org/Research_papers/Data_structures >
Constructing red-black trees
|
| |\ \ \
| | | | |
| | | | | |
Update links to docs, codehaus and citeseer
|
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
docs.scala-lang.org
- Align some links to new layout for docs.scala-lang.org
- Include link to concrete parallel collection performance characteristics
codehaus
- Subsitute a link to a JIRA email for the 404 JRUBY-3576 JIRA link
in Codec.scala. jira.codehaus.org is not redirecting this.
citeseer
- Replace the citeseer link with a direct link to a PDF which is not
behind a login challenge.
|
| |\ \ \ \
| | | | | |
| | | | | | |
Restore missing element type to List class documentation
|
| | | |/ /
| | |/| |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
See line 18,
git show cb1c0c src/library/scala/collection/immutable/List.scala|head -20|cat -n
This shows the type reference prior to removal.
|
| |\ \ \ \
| | | | | |
| | | | | | |
round of sbt build improvements
|
| | | | | | |
|
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
afaict, this was just an oversight
|
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
Scala bootstrap version, ScalaCheck version should be the same
as the ant build.
|
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
because why not, the sbt build is experimental anyway
|
| |\ \ \ \ \
| | |/ / / /
| |/| | | | |
unset inappropriate execute bits
|
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
I imagine these date back to old Subversion days and are probably the
result of inadvertent commits from Windows users with vcs client
configs.
having the bit set isn't really harmful most of the time,
but it's just not right, and it makes the files stand out in directory
listings for no reason
|
| |\ \ \ \ \
| | |_|/ / /
| |/| | | | |
SI-9369 Fix pattern matcher warnings for diamond shaped inheritance.
|
| |/ / / /
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
A previous optimization (d44a86f432a7f9ca250b014acdeab02ac9f2c304) for
pattern matcher exhaustivity checks used a smarter encoding to ensure
that the scrutinee can be equal to one child only.
However, in case of traits between the root and leave type, a child can
be of several types and these types should not be in a mutually exclusive
group. A simple solution (hat tip to retronym) is to just put traits
and classes into separate groups.
|
| |\ \ \ \
| | | | | |
| | | | | | |
SI-9407 Vector implementation bit-shift bugfix
|
| | |/ / /
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
Fixed logically incorrect or unnecessary code in Vector as reported by Dirk Toewe.
No tests. Because of the size of the vectors, tests would be impractically slow. Also, the logic is quite clear: when you are recursing through a tree, using the wrong bit shift means you hit the wrong part of the tree, and when you create and then always overwrite a mutable var, you should just not do it to begin with.
|
| |\ \ \ \
| | | | | |
| | | | | | |
Performance optimization - Iterator
|
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
Rewrite of span to avoid double-indirection of `.buffered` and to avoid use of `mutable.Queue` unless it is absolutely necessary. Rewrite of `span` and `dropWhile` to also avoid `.buffered` (less DRY but single vs. double indirection and object allocation).
Performance improvements:
```
method reason
=========== ===============================================================
collect 2.3x faster on small collections, 1.5x on large
span 1.6-1.7x faster on small collections
0.85x-1.8x slower/faster on large collections
depending on how much must be cached (0.85x all, 1.8x none)
dropWhile 1.2x faster on small collections, half the garbage
```
|
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
Tightened up bytecode, logic, and/or performance by using local return instead of a mutable variable in several methods.
Performance/bytecode size improvements (smaller bytecode = better inlining)
```
method reason
=========== ===============================================================
flatMap hasNext bytecode 34 bytes down from 62
find bytecode 41 bytes instead of 53
indexWhere 1.5x faster on small collections (some contexts)
indexOf bytecode 89 bytes instead of 110
```
|
| |\ \ \ \ \
| | | | | | |
| | | | | | | |
fix typos/spelling
|
| | | | | | | |
|
| | | |/ / /
| | |/| | | |
|
| |\ \ \ \ \
| | | | | | |
| | | | | | | |
Link to completed value classes SIP page instead of pending version
|
| | | |_|_|/
| | |/| | | |
|
| |\ \ \ \ \
| | | | | | |
| | | | | | | |
Re-enable tree checkers
|
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | | |
My expectation is that tree checkers are re-typechecking the trees
and making sure they are consistent. Unfortunately, following
patch aced32d05c97651534f468bc9a475ea5f6ae75b8, the call to
clearType() was removed, thus the typer no longer recursed inside
the trees, rendering the type checkers framework useless.
This is an attempt to make the tree checkers run again, by resetting
the type of a tree before the call to super.typed, thus allowing the
typer to actually visit the entire tree (not just the outer package
definition).
The work was prompted by SI-9442, where the type checkers would
gladly allow validate the inconsistent trees.
|
| |\ \ \ \ \ \
| | |_|_|_|_|/
| |/| | | | | |
SI-9442 Fix the uncurry-erasure types
|
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | | |
Using the "uncurry-erased" type (the one after the uncurry phase) can
lead to incorrect tree transformations. For example, compiling:
```
def foo(c: Ctx)(l: c.Tree): Unit = {
val l2: c.Tree = l
}
```
Results in the following AST:
```
def foo(c: Ctx, l: Ctx#Tree): Unit = {
val l$1: Ctx#Tree = l.asInstanceOf[Ctx#Tree]
val l2: c.Tree = l$1 // no, not really, it's not.
}
```
Of course, this is incorrect, since `l$1` has type `Ctx#Tree`, which is
not a subtype of `c.Tree`.
So what we need to do is to use the pre-uncurry type when creating
`l$1`, which is `c.Tree` and is correct. Now, there are two
additional problems:
1. when varargs and byname params are involved, the uncurry
transformation desugares these special cases to actual
typerefs, eg:
```
T* ~> Seq[T] (Scala-defined varargs)
T* ~> Array[T] (Java-defined varargs)
=>T ~> Function0[T] (by name params)
```
we use the DesugaredParameterType object (defined in
scala.reflect.internal.transform.UnCurry) to redo this desugaring
manually here
2. the type needs to be normalized, since `gen.mkCast` checks this
(no HK here, just aliases have to be expanded before handing the
type to `gen.mkAttributedCast`, which calls `gen.mkCast`)
|
| |\ \ \ \ \ \
| | | | | | | |
| | | | | | | | |
Update Java and Sun URLs to replacement Java and Oracle URLs
|
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | | |
For each URL
- Where it redirected the target of the redirection was used
- Where is no longer existed a replacement was selected
|
| |\ \ \ \ \ \ \
| | |/ / / / / /
| |/| | | | | | |
SI-9424 Clarify behavior of PriorityQueue toString
|
| | | |_|_|/ /
| | |/| | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | | |
Clarified that PriorityQueue will not print in order and gave an example of a workaround if one needs it.
Documentation change only; no tests.
|
| |\ \ \ \ \ \
| | |_|_|_|/ /
| |/| | | | | |
Improve comment in Option.collect example
|
| | | | | | | |
|
| |\ \ \ \ \ \
| | | | | | | |
| | | | | | | | |
SI-6636 Fix macro expansion in toolboxes
|
| | | | | | | | |
|
| |\ \ \ \ \ \ \
| | |_|_|/ / / /
| |/| | | | | | |
Format and content enhance README.md
|
| | |/ / / / /
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | | |
Replace bullet points with tables for
- Review labels
- Command overviews
Rescue sbt section from midst of Ant section.
Syntax correct use of ANT_OPTS.
Synchronise IntelliJ menu path to 14.1.
Update OSS repo name. The Central Repository was formerly known
as Maven Central.
Standardise on @-mention instead of @mention.
Mark unfinished section with TODO.
Include a few other minor improvements.
|