| Commit message (Collapse) | Author | Age | Files | Lines |
|\
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
* origin/2.10.x:
if starr.use.released fetch Scala ${starr.version} for STARR
assume build.release when maven.version.suffix is set
make quick.done depend on quick.bin again
SI-7321 Memory leak in specialize on multiple compiler runs.
Take the N^2 out of the compiler's TreeSet.
SI-6900 Fix tailrec for dependent method types
Simplify interplay between Uncurry Info- and Tree-Transformers
Refactor existential related code out of types.
Add a cautionary comment to TreeSymSubstitutor.
SI-6715 Shouldn't return "" from TermNames.originalName
Backport #2289's TermNames.unexpandedName as TermNames.originalName
SI-7147 Diagnostic for unexplained assertion in presentation compiler.
SI-6793 Don't use super param accessors if inaccessible.
Correct sorting example for Ordering in scaladoc
Conflicts:
bincompat-backward.whitelist.conf
bincompat-forward.whitelist.conf
build.xml
src/compiler/scala/tools/nsc/transform/UnCurry.scala
src/reflect/scala/reflect/internal/StdNames.scala
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
I recommend creating a build.properties file as follows:
```
locker.skip=1
starr.use.released=1
```
This will download the Scala version specified in starr.number,
use it to build quick, skipping locker.
|
| | |
|
| | |
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Paulptest includes color and simplified test scarfing.
Scalap tests are moved to the conventional name and location.
Testicolor missed out on Josh Suereth's tweak to sort the files in
a compilation round. Restore sortiness to test sources.
Testicolor is due to one of Paul's branches on a timeline
that apparently did not include the destruction of planet
Earth and its colonies by the Xindi.
Thanks also to Szabolcs Berecz for his merge effort. Merging
is thankless work, but not as thankless as merging in a
timeline that actually does terminate in the destruction of
your home world and Enterprise.
Archer had a supremely difficult choice: rescue humanity or
live out his retirement with T'Pol waiting on him hand and
foot? I'm sure I don't know how I'd choose.
|
|\| |
|
| | |
|
|\|
| |
| |
| |
| | |
Conflicts:
build.xml
|
| | |
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
To use Zinc with the ant build:
- install zinc and symlink the installed zinc script to ${basedir}/tools/zinc
(${basedir} is where build.xml and the rest of your checkout resides)
- make sure to set ZINC_OPTS to match ANT_OPTS!
- invoke ant as `ant -Dstarr.version="2.10.1" -Dlocker.skip=1`
(zinc does not work if locker is only classfiles, needs jars
TODO rework the build to pack locker and build using that when using zinc?)
Mostly to enable dog fooding of incremental compilation work for now.
|
| |
| |
| |
| |
| |
| |
| | |
Untangle actors, msil builds from library/compiler builds.
For further regularity, always build java files.
TODO: update IDE projects
|
| | |
|
|\|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
topic/merge-2.10.x-to-v2.11.0-M2-74-g00e6c8b
Conflicts:
bincompat-backward.whitelist.conf
bincompat-forward.whitelist.conf
build.xml
src/compiler/scala/reflect/reify/utils/Extractors.scala
src/compiler/scala/tools/nsc/backend/jvm/GenJVM.scala
src/compiler/scala/tools/nsc/symtab/classfile/ICodeReader.scala
src/compiler/scala/tools/nsc/transform/patmat/MatchOptimization.scala
src/compiler/scala/tools/nsc/typechecker/Typers.scala
src/partest/scala/tools/partest/nest/ReflectiveRunner.scala
src/reflect/scala/reflect/internal/Types.scala
src/reflect/scala/reflect/runtime/JavaUniverse.scala
test/files/run/inline-ex-handlers.check
test/files/run/t6223.check
test/files/run/t6223.scala
test/scaladoc/scalacheck/IndexTest.scala
|
| | |
|
| |
| |
| |
| |
| |
| |
| |
| | |
We now use the unified diff format, hence the updated check files.
It's not clear to me how partest's classpath is managed,
but the approach in this commit works for the ant task and script invocation.
The diffutils jar is injected in the parent classloader.
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Target pack.@{project} is considered up to date iff
classes emitted by quick.@{project} are.
TODO: encapsulate "classes emitted by quick.@{project}".
For now, they are duplicated as references
to `${build-@{stage}.dir}/classes/@{destproject}`
(in staged-scalac and *.build.path)
|
| | |
|
| | |
|
| | |
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Added starr.number, so that `ant -propertyfile starr.number -Dlocker.skip=1`
works across branches.
Introduced target `test.core`, which skips `test.stability`, since that requires
`locker == quick`, whereas `locker == starr` with the above settings.
(It's interesting to see for which files it fails when that assumption is broken.)
Stability will still be tested on a nightly basis. It's rarely broken.
|
| | |
|
| | |
|
| | |
|
| |
| |
| |
| | |
also added test.bc-opt target as binary compatibility differs between (non)optimized builds...
|
| | |
|
| | |
|
| |\
| | |
| | |
| | |
| | | |
Conflicts:
build.xml
|
| | |
| | |
| | |
| | |
| | | |
This helps to see whether we've broken forward or backward
binary compatibility.
|
|\| |
| | |
| | |
| | |
| | |
| | | |
Merges the relevant part of #2295 (build.xml cleanup),
with the relevant differences in build.xml carried forward,
as well as a fix in interactive/RangePositions for the sbt interface.
|
| | |
| | |
| | |
| | |
| | | |
Use `ant -Dstarr.version="2.11.0-M2" -Dlocker.skip=YESSIR`,
to build quick using 2.11.0-M2 (skipping locker, using starr instead).
|
| | | |
|
| |/
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Reduced copy/pasting to the best of my antabilities.
The next person to duplicate anything without written
permission will be sentenced to a week in xmhell.
While I was at it, made sure that layering is respected.
The quick phase exclusively uses the locker compiler for building.
The jar task will fail when trying to create an empty jar.
Replaced the crazy if/unless/depends constructs by if/then/else.
Version suffix computation should now be comprehensible.
I threw in some validation to make sure the various suffixes are consistent.
Also, no more init/pre-foo tasks unless absolutely necessary.
Introduced a couple of macros to capture the essence of staged compilation.
Notes:
- remove lib.extra, standardize on aux.libs
- collapse *.javac.path and *.build.path
- rename starr.classpath to starr.compiler.path
- only repl needs jline, locker.compiler.path = locker.comp.build.path + forkjoin
- more uniform build.paths (compiler = reflect + library)
- uniformity means slightly bigger classpaths
(e.g. forkjoin is only used in library, but inherited by compiler)
- pruned: some spurious dependencies removed
- compilerpathref = compiler build path
- silence test.osgi, by hook or by crook
- centralized clean tasks
- reduce duplication in property usage
- fix pack.xml to pack scaladoc/partest instead of scaladoc/scala-partest
- TODO: -XDignore.symbol.file necessary for library? only needed for forkjoin?
- document usage from jenkins, fix typo: partest.scalac*_*opts
New targets:
- quick-opt
- strap-opt
- test.bc
- test.osgi
- test.osgi.comp
- test.osgi.init
- test.stability-opt
Removed/replaced targets:
- asm.clean asm.lib asm.start
- bc.run
- dist.latest dist.latest.unix dist.latest.win dist.start
- docs.all docs.manmaker docs.pre-comp docs.pre-continuations-plugin
- docs.pre-jline docs.pre-lib docs.pre-man docs.pre-partest docs.pre-scalap
- forkjoin.clean forkjoin.lib forkjoin.pack forkjoin.start
- graph.clean
- init.build.nopatch.release init.build.patch.release init.build.release
- init.build.snapshot init.build.suffix.done init.extra.tasks
- init.fail.bad.jdk init.hasbuildnum init.hasmavensuffix init.jars
- init.jars.check init.maven.jars init.maven.tasks init.osgi.suffix
- init.osgi.suffix.final init.osgi.suffix.snapshot init.testjava6
- init.version.done init.version.git init.version.release init.version.snapshot
- init.warn.jdk7 locker.pre-comp locker.pre-lib locker.pre-reflect
- locker.unlock.comp locker.unlock.lib locker.unlock.pre-comp
- locker.unlock.pre-lib locker.unlock.pre-reflect locker.unlock.reflect
- osgi.clean osgi.test osgi.test.comp osgi.test.init
- pack.clean pack.pre-bin pack.pre-comp pack.pre-lib pack.pre-partest
- pack.pre-plugins pack.pre-reflect pack.pre-scalap pack.start
- palo.comp palo.lib palo.pre-bin palo.pre-comp palo.pre-lib palo.pre-reflect
- palo.reflect palo.start quick.pre-bin
- quick.pre-comp quick.pre-interactive quick.pre-lib quick.pre-partest
- quick.pre-plugins quick.pre-reflect quick.pre-repl quick.pre-scalacheck
- quick.pre-scaladoc quick.pre-scalap
- sbt.clean sbt.compile sbt.done sbt.libs sbt.start
- starr.clean
- strap.clean strap.pre-comp strap.pre-lib strap.pre-reflect strap.start
- test.debug test.pre-run
|
| | |
|
| | |
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Using @gkossakowski's contribution to mima (in 0.1.5-SNAPSHOT),
make sure bc.run doesn't fail by filtering out all binary incompatibilities.
Each subsequent commit will comment out the filters it makes irrelevant,
until we only need to filter out permitted binary incompatibilities.
We only allow binary incompatibilities in scala.reflect.internal.
|
| | |
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Following in the footsteps of scaladoc and interactive.
The interpreter sources move into src/repl, and are given
a separate build target. As with the others, at present
they are still packaged into scala-compiler.jar.
A summary of changes:
- repl requires use of ReplGlobal (this was already implied)
- macro code's repl-specific classloader hack pulled into overridable
method and overridden in ReplGlobal
- removed -Ygen-javap option to eliminate backend's dependency on javap
- removed -Yrepl-debug option (can still be enabled with -Dscala.repl.debug)
- pushed javap code into src/repl so javax.tools dependency can bee
weakened to the repl only
- removed some "show pickled" related code which hasn't worked right
in a while and isn't the right way to do it anymore anyway. Will
return to fix showPickled and provide it with some tests.
|
| |
| |
| |
| | |
% ant test.interactive
|
| |
| |
| |
| |
| |
| | |
Separate from (and larger than) pack.classpath. Then take
the opportunity to lower the comic/tragic level of duplication
in build.xml.
|
| |
| |
| |
| |
| | |
As with the preceding commit, this has build-internal
effects only.
|
| |
| |
| |
| |
| |
| |
| |
| | |
This change is not externally visible. It moves the scaladoc
sources into src/scaladoc and adds an ant target for building
them. The compilation products are still packaged into
scala-compiler.jar as before, but with a small change to
build.xml a separate jar can be created instead.
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
There is no reason to be stability testing every piece of
bytecode we've ever encountered. If the compilation products
are unstable, then testing 20,000 classfiles will reveal it.
Or it won't; either way, we can stop there. So I cut a gordian
knot and focused the stability test solely on the contents of:
library reflect compiler
Next I cut the "custom ant task" cord. There's a tool for
diffing files, it's decades old, it's called diff. It does
the entire job we need. If it doesn't work on windows, it
doesn't matter. The stability test is not something which
needs to run in every environment. Either the classfiles
are stable or they aren't.
Generated the ant xml for building quick.{lib,reflect,comp}
and strap.{lib,reflect,comp} so they are identical modulo the
compiler used to build them, probably for the first time ever.
I'm sure they won't stay that way, but it's a step.
|
|\|
| |
| |
| |
| |
| | |
Conflicts:
build.xml
src/compiler/scala/tools/nsc/backend/jvm/GenJVM.scala
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
This commit introduces a new kind of test `Bytecode` that allows
one to inspect bytecode generated for given piece of Scala code.
The bytecode inspection is achieved by inspection of ASM trees.
See the included example for details.
NOTE: This commit does not introduce a new category of pratest tests.
Bytecode tests should be run in `jvm` category of partest tests.
Specific list of changes:
* Add BytecodeTest that contains common utilities to partest
* Add asm to classpath when compiling partest. That's not a
new dependency as it's being already done for javac task
we were running while compiling partest.
* Add an example test that shows how to count null checks in
given method.
|
| |
| |
| |
| |
| |
| |
| |
| | |
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
|
| |
| |
| |
| |
| | |
Binary compatibility checks do not make sense in master because
there's no base point against which we should check.
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Deprecated in 2.10.0, out to pasture in 2.11.0.
Users are advised to migrate to:
https://github.com/typesafehub/zinc
http://www.scala-sbt.org/
|
| | |
|
|\|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
* origin/2.10.x: (31 commits)
Implicit vars should have non-implicit setters.
Deprecate `scala.tools.nsc.Phases` because it's dead-code.
scaladoc Template: remove duplicate code and several usages of Option.get.
adds scala-reflect.jar to MIMA in ant
Test showing the absence of a forward reference
update mailmap
Remove dead code from `Global`.
Cleanup MemberLookup. Better explain ambiguous link targets.
typedIdent no longer destroys attachments
fixes incorrect handling of Annotated in lazy copier
simplifies checkBounds
Recurse into instantiations when stripping type vars.
Extract base scaladoc functionality for the IDE.
Expand pattern match position tests.
SI-6288 Remedy ill-positioned extractor binding.
SI-6288 Fix positioning of label jumps
SI-6288 Position argument of unapply
Fixes SI-6758: force LazyAnnnotationInfo for DefDef and TypeDef
SI-6795 Simplify errors related to "abstract override" on type members
SI-6795 Adds negative check for "abstract override" on types in traits
...
Conflicts:
.mailmap
src/compiler/scala/tools/nsc/Global.scala
src/compiler/scala/tools/nsc/ast/DocComments.scala
src/compiler/scala/tools/nsc/doc/base/CommentFactoryBase.scala
src/compiler/scala/tools/nsc/doc/html/page/Source.scala
src/compiler/scala/tools/nsc/doc/html/page/Template.scala
src/compiler/scala/tools/nsc/doc/model/LinkTo.scala
src/compiler/scala/tools/nsc/doc/model/MemberLookup.scala
src/compiler/scala/tools/nsc/doc/model/diagram/DiagramFactory.scala
src/compiler/scala/tools/nsc/transform/SpecializeTypes.scala
src/compiler/scala/tools/nsc/typechecker/Typers.scala
src/reflect/scala/reflect/runtime/JavaMirrors.scala
test/scaladoc/run/links.scala
|
| |\
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
# By Eugene Burmako (1) and others
# Via Adriaan Moors (2) and others
* origin/2.10.0-wip:
Fixing OSGi distribution.
Fix for rangepos crasher.
SI-6685 fixes error handling in typedApply
|