| Commit message (Collapse) | Author | Age | Files | Lines |
|\
| |
| | |
Merge 2.11.x to 2.12.x [ci: last-only]
|
| |\
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
merge/2.11.x-to-2.12.x-20160517
Conflicts:
build.sbt
test/files/run/repl-javap-app.check
test/files/run/repl-javap-app.scala
|
| | |\
| | | |
| | | | |
Eliminate major sources of daily noise in SBT build.
|
| | | |
| | | |
| | | |
| | | |
| | | | |
It avoids confusion with existing test/partest scripts
that test the compiler in build/, while sbt it targeting build-sbt/.
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
- Intercept incorrect "binary conflict" warning issued by SBT.
Fixes https://github.com/scala/scala-dev/issues/100
- Bump to a new version of pantsbuild/jarjar to fix an
incompatibility with Java 8 parameter names in class
files, which we run into on the 2.12.x branch. See:
https://github.com/pantsbuild/jarjar/pull/19
- Disable info level logging for dependency resolve/download.
|
| | |\ \
| | | | |
| | | | | |
SI-9740 Repl import fix -Yrepl-class-based
|
| | | |/
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
Under `-Yrepl-class-based`, templating must follow the same scoping
as under traditional object-based. The new test shows a typical
case where two values of the same simple name must be imported in
different scopes.
|
| | | |
| | | |
| | | | |
An empty string yields an empty iterator.
|
|/ / /
| | |
| | |
| | |
| | | |
Package definitions are priority 4.
Update the big example to be cut/pastable.
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Many JUnit tests share a compiler instance between all
test cases in a class to reduce overhead.
This commit refactors the mechanism to reduce the boilerplate.
In the new scheme:
- Using the `@ClassRule` hook in JUnit, we create a per-class
map for each test class.
- Per-class values are registered from the test class itself
by calling `cached("someKey", () => mkExpensiveThing)`
- At the end of the test, the entries in this map are `close()`-ed
(if they implement `Closable`), and are released for
garbage collection.)
|
| | | |
|
|\ \ \
| | | |
| | | | |
SI-9045 Error on recursive ctor
|
| | | |
| | | |
| | | |
| | | | |
If the constructor invokes itself, say so.
|
| | | |
| | | |
| | | |
| | | |
| | | | |
Collapse conditionals into match for legible.
Yes, guards have scary eval order.
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
When the repl is started with additional compiler flags that prevent implicits
being in scope (like -Yno-predef) the default message of implicits in scope
using :implicits stays the same.
This additional check will return the same message if predef is indeed in
scope and an adjusted message if Predef is not in scope.
|
|\ \ \ \
| | | | |
| | | | | |
Bump to scala-partest 1.0.14
|
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
This should fix the bootstrap build by incorporating
https://github.com/scala/scala-partest/pull/58
|
| | | | | |
|
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
package name conflits (#5150)
When a user imports some package ending with `scala`, the macro expansion of TypeTag may not work because it uses `scala.collection.immutable.List` but it's overrided. This patch adds the `_root_` prefix to avoid the scala package name conflits. Of cause, after this fix, importing a package ending with `_root_` has the same issue. However, people rarely do that.
|
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
Delegate `Match group name` to the underlying `matcher`.
If that fails, try explicit group names as a fall back.
No attempt is made to correlate inline and explicit names.
In the following case, either name is accepted:
```
new Regex("a(?<Bar>b*)c", "Bee")
```
But if names are reversed, the error is undetected:
```
new Regex("a(?<Bee>b*)(?<Bar>c)", "Bar", "Bee")
```
Throw IllegalArg on bad group name to be consistent with Java.
|
|/ / / /
| | | |
| | | |
| | | |
| | | |
| | | | |
In current implementation when we set high word (elems1) of BitSet2
to zero, the result is BitSet2 again. I believe it is leading to
excessive memory usage and result should be BitSet1. Private helper
method createSmall(a: Long, b: Long) introduced.
|
|\ \ \ \
| | | | |
| | | | | |
Merge 2.11.x to 2.12.x
|
| |\ \ \ \
| | | |/ /
| | |/| | |
|
| | |\ \ \
| | | |_|/
| | |/| | |
Publish usable Scala distributions to Ivy repositories
|
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
- sbt requires a `default` configuration in the Scala distribution but
doesn’t publish such a configuration to Ivy repositories by default.
This is not a problem when publishing to a Maven repository because
Maven doesn’t use the concept of configurations and Ivy creates a
standard set (including `default`) when resolving artifacts from Maven
repositories, but it prevents the use of any Scala distribution
published with `publishLocal`.
The underlying issue is that sbt requires `default` instead of
`default(compile)`. We work around this limitation by publishing a
dummy `default` configuration.
- sbt has hardcoded dependencies on the `scala-library` artifact of type
`jar`. In the tradition of `sbt-osgi` we used type `bundle` when
publishing via Ivy but this makes the artifacts unusable from sbt. We
now publish the OSGi bundles directly as type `jar` (which is
compatible with how they appear in Ivy after resolving from a Maven
repository).
- We have to be more aggressive about not publishing certain
subprojects, otherwise `ivy.xml` files could still be published even
when using `publishArtifacts := false`.
- `removePomDependencies` now also modifies `ivy.xml` in addition to
the Maven POM so that bogus dependencies do not leak into the Ivy
descriptors.
Fixes https://github.com/scala/scala-dev/issues/130
|
|/| | | |
| |/ / / |
|
| |\ \ \
| | | | |
| | | | | |
disable integrate/ide script on 2.11.x
|
| | | | | |
|
|\ \ \ \ \
| | | | | |
| | | | | | |
SI-9539 Specify charset when reading ScalaSignatures, ...
|
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
... without it we would use the platform's default charset.
|
|\ \ \ \ \ \
| | | | | | |
| | | | | | | |
use Future#foreach instead of onSuccess in example code
|
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | | |
bacause Future#onSuccess is deprecated
https://github.com/scala/scala/commit/fa0743c32338f147eaf7a
|
|\ \ \ \ \ \ \
| | | | | | | |
| | | | | | | | |
Remove legacy recursive classpath implementation
|
| | | | | | | | |
|
| | | | | | | | |
|
| | | | | | | | |
|
|\ \ \ \ \ \ \ \
| | | | | | | | |
| | | | | | | | | |
Avoid function chaining with reverse method
|
| | | | | | | | | |
|
| | | | | | | | | |
|
|\ \ \ \ \ \ \ \ \
| |_|_|_|_|_|_|_|/
|/| | | | | | | | |
SD-140 inline the correct default method
|
| |/ / / / / / /
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | | |
When inheriting multiple default methods, select the correct one to
inline. Implements method resolution according to the JVM spec.
|
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | | |
ArithmeticException (#5123)
|
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | | |
The default behavior when parsing the content of a tag text (like after
`@example`) was to ignore empty lines. That's fine, except when we are
in the middle of a code block, where preserving formatting matters.
|
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | | |
`withCurrentUnit` is designed to be called once per
compilation unit as it side effects by logging and updating
progress counters.
`GenBCode` was calling it more frequently (once per `ClassDef`.)
This is due to the somewhat convoluted internal architecture
of that phase, which is designed to support paralellism in
the future.
This commit factors out the internal part of `withCompilationUnit`
that modifies `currentUnit`, and calls that instead in the loop
over classes.
After this change:
```
% qscala -Ydebug
...
[running phase jvm on <console>] // only once
```
|
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | | |
- Extend main comment with additional examples
- Group methods from a user perspective
- List exceptions special cased by shouldRethrow
- Include overlooked withTry in opt, either notes.
|
|\ \ \ \ \ \ \ \
| | | | | | | | |
| | | | | | | | | |
SI-9762 Update the REPL to use JLine 2.14.1
|
| | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | | |
Now that we use a release of JLine that includes the fix for:
https://github.com/jline/jline2/issues/208
We no longer need to the workaround introduced in 7719a3c.
Screencast of the still-fixed behaviour:
http://recordit.co/5pzh9OhlQv.gif
|
| |/ / / / / / /
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | | |
Motivated by the improvements to multi-byte character handling.
Screencast showing the reported bug is fixed:
http://g.recordit.co/ie1Z367NUl.gif
Here's the changelog since JLine 2.12.1:
https://github.com/jline/jline2/compare/jline-2.12.1...jline-2.14.1
I needed to disable a new, on-by-default feature in JLine so that
it didn't add a " " after completing the token `equals` in
`foo.equa<TAB>`.
|
| | | | | | | | |
|
|\ \ \ \ \ \ \ \
| |/ / / / / / /
|/| | | | | | | |
Fix erasure for classOf[Unit], don't erase to classOf[BoxedUnit]
|