Skip to content

Conversation

@SethTisue
Copy link
Member

@SethTisue SethTisue commented Apr 28, 2018

merge conflicts were trivial except for the isEmacsShell stuff in the REPL. I resolved it by removing isEmacsShell entirely, since it was deprecated in 2.12.6.

% git fetch origin                                       
% git checkout -b merge-2.12.x-to-2.13.x-20180428
Switched to a new branch 'merge-2.12.x-to-2.13.x-20180428'
% export MB=$(git merge-base origin/2.13.x origin/2.12.x)
% git log --graph --oneline --decorate $MB..origin/2.12.x | tail -r
* 957780fa25 Don't compute `locations` in macroclassloader cache
* cb5f0fc1ba Merge pull request #6446 from scalacenter/ticket/scala-dev/458
|/  
| * 4053968c5a [nomerge] Use temporary repository for bootstrapping
| * 46596b42a5 [nomerge] Streamline the bootstrap script
|/|   
| |/  
|\ \  
* |   8120af87ca Merge pull request #6472 from lrytz/wip/local-bootstrap-repo
| |/  
| * | 1f7468f0f3 Fix up embarrassing typo.
|\ \  
* |   d032bf65c4 Merge pull request #6474 from hrhino/logic-error
|  /  
| * | c6544d408b Explicit type annotations and !isEmpty replace with nonEmpty
|\ \  
* |   022588844f Merge pull request #6355 from sh0hei/explicit-type
| |/  
| * | 109f03e56c No warn-unused:params for unimplemented method
|\ \  
* |   32fddebc24 Merge pull request #6384 from som-snytt/issue/nowarn-unimpl
| |/  
| * | 532c56d446 Add a `completions` command similar to the one found in sbt
|\ \  
* |   b57e88a440 Merge pull request #6379 from hvesalai/tmp/completionsCmd
| |/  
| * | d078c498ec Bump JarJar version to avoid invalid bytecode on Java9
|\ \  
* |   d2c0864198 Merge pull request #6477 from retronym/bump/jarjar
| * 41d81b1bf6 Apply no warn attachment to binds
| * 0e8cf52860 Rename attachment to NoWarn
|\  
*   c9c88fa0df Merge pull request #6473 from som-snytt/issue/refute
* 84112e8029 Update to Jline 2.14.6 (#6478)
|/  
| * 43653fe789 [backport] Remove mentions of named functions in Return Expressions
| * 9046d698a3 [backport] restrict applicability to user defined methods
| * 0a8daf257c Spec: say "method" instead of "function"
| * 464df60bb2 Spec: update dynamic selection
| * 3c81f1bfb6 Spec-ify the spec update
|/|   
| |/  
|\ \  
* |   cb320be595 Merge pull request #6519 from adriaanm/spec-method
| * b0b684e578 Update test case to changed JDK behavior
|/|   
| |/  
|\ \  
* |   409ed5fdac Merge pull request #6548 from lrytz/b10835
| |/  
| * | 70d41ffe63 Fix tests on windows
|\ \  
* |   7547709b60 Merge pull request #6562 from lrytz/windows-build
| * 340b899536 Deprecate Float range and Double range
|\  
*   d7ae7a8b96 (tag: v2.12.6) Merge pull request #6550 from eed3si9n/wip/deprecate-float-range
|/  
| * 82a3a2e729 bump version to 2.12.7, restarr onto 2.12.6
|\  
*   ed50887242 (origin/2.12.x) Merge pull request #6568 from SethTisue/restarr-onto-2.12.6
% git log --merges --oneline --decorate $MB..origin/2.12.x | tail -r
cb5f0fc1ba Merge pull request #6446 from scalacenter/ticket/scala-dev/458
8120af87ca Merge pull request #6472 from lrytz/wip/local-bootstrap-repo
d032bf65c4 Merge pull request #6474 from hrhino/logic-error
022588844f Merge pull request #6355 from sh0hei/explicit-type
32fddebc24 Merge pull request #6384 from som-snytt/issue/nowarn-unimpl
b57e88a440 Merge pull request #6379 from hvesalai/tmp/completionsCmd
d2c0864198 Merge pull request #6477 from retronym/bump/jarjar
c9c88fa0df Merge pull request #6473 from som-snytt/issue/refute
cb320be595 Merge pull request #6519 from adriaanm/spec-method
409ed5fdac Merge pull request #6548 from lrytz/b10835
7547709b60 Merge pull request #6562 from lrytz/windows-build
d7ae7a8b96 (tag: v2.12.6) Merge pull request #6550 from eed3si9n/wip/deprecate-float-range
ed50887242 (origin/2.12.x) Merge pull request #6568 from SethTisue/restarr-onto-2.12.6
% git merge -sours 4053968c5a
Merge made by the 'ours' strategy.
% git merge -sours 46596b42a5
Merge made by the 'ours' strategy.
% git merge origin/2.12.x
Auto-merging versions.properties
CONFLICT (content): Merge conflict in versions.properties
Removing test/files/run/t2873.check
Auto-merging src/repl-frontend/scala/tools/nsc/interpreter/shell/ILoop.scala
CONFLICT (content): Merge conflict in src/repl-frontend/scala/tools/nsc/interpreter/shell/ILoop.scala
Auto-merging src/reflect/scala/reflect/runtime/JavaUniverseForce.scala
Auto-merging src/reflect/scala/reflect/internal/TreeGen.scala
Auto-merging src/library/scala/collection/immutable/Range.scala
Auto-merging src/compiler/templates/tool-windows.tmpl
Auto-merging src/compiler/templates/tool-unix.tmpl
Auto-merging src/compiler/scala/tools/nsc/typechecker/TypeDiagnostics.scala
Auto-merging src/compiler/scala/tools/nsc/ast/parser/Parsers.scala
Auto-merging spec/06-expressions.md
CONFLICT (content): Merge conflict in spec/06-expressions.md
Auto-merging project/plugins.sbt
Auto-merging build.sbt
CONFLICT (content): Merge conflict in build.sbt
Recorded preimage for 'build.sbt'
Recorded preimage for 'spec/06-expressions.md'
Recorded preimage for 'src/repl-frontend/scala/tools/nsc/interpreter/shell/ILoop.scala'
Recorded preimage for 'versions.properties'
Automatic merge failed; fix conflicts and then commit the result.
% emacs versions.properties 
% git add -u versions.properties
% emacs spec/06-expressions.md 
% git add -u spec/06-expressions.md
% emacs build.sbt 
% git add -u build.sbt
% e src/repl-frontend/scala/tools/nsc/interpreter/shell/ILoop.scala
% e src/repl-frontend/scala/tools/nsc/interpreter/shell/ShellConfig.scala
% e src/compiler/scala/tools/nsc/Properties.scala
% e src/repl-frontend/scala/tools/nsc/interpreter/shell/ShellConfig.scala
% git add -u
% git commit

sh0hei and others added 30 commits February 28, 2018 21:44
Fixes scala/scala-dev#480.

It reports whenever `AbstractFile.getUrl` returns `null` if verbose is
enabled.
Don't compute `locations` in macroclassloader cache
Cut some slack for `def f(i: Int) = ???`.
Also in the 2.13.x-new-collections branch, therefore [nomerge].
The warning in TypeDiagnostics checks for
an attachment where a variable is introduced.
Simple rename to `NoWarnAttachment`.

It is still used selectively to turn off unused
warning for pattern variables.
I put this in in cdf7419, right
before the PR got merged, and moved the condition that used to be
in the `else` block into a `devWarning`, as I was pretty sure we'd
never get here at or later than erasure (otherwise, there's a chance
we'd let a `Constant(<unerased type>)` get to the backend. I wasn't
willing to wager on it for an assertion, though.

In retrospect it would have been better to poke around with `-Xdev`
on first, so I would notice the reversed condition. (I build with
the flag at work so someone sees the warnings, is how I noticed.)
The command can be used by, for example, emacs to query completions.
Ensure that modules are built in each stage (if they need building),
including even starr. This ensures that the locker scaladoc when
building quick runs with a freshly built xml on the classpath, which
can be necessary for binary compatibility.

Run scaladoc only in the quick stage (not starr or locker), for scala
and the modules.

Don't use `clone --reference` to build starr, doesn't work with shallow
clones (on travis).

Set `STARR_VER` to the full `SCALA_VER` + a suffix, so that it gets
the same treatment in sbt with respect to cross-versioning (binary
vs full).

The quick stage either publishes to scala-integration or sonatype
(for releases).

[nomerge] because this commit is in the 2.13.x-new-collections branch.
Explicit type annotations and !isEmpty replace with nonEmpty
No warn-unused:params for unimplemented method
Add a `completions` command to 2.12.x similar to the one found in sbt
Bump JarJar version to avoid invalid bytecode on Java9
Apply no warn attachment to binds
This version of Jline fixes three things for Emacs, which means all
the special handling of emacs can be removed from scala-code.

The things fixed in Jline 2.14.6 are:
- ANSI colors are now enabled for Emacs.
- Terminal echo is now disabled for Emacs.
- History is enabled for all dump terminals.
AFAIU Scala doesn't have "named functions".

Also made the language around NonLocalReturnException a bit more lenient, so that a conforming implementation may optimize in some cases by not throwing.
The latter is reserved for function literals,
function types, or when we have an application `f(a)`,
and we don't know the type of `f` yet. If the type is
a method type, it makes more sense to call `f` a method.
The implementation had diverged
Ref scala/bug#10781

This is in preparation for Float range and Double range removal in 2.13.x (scala#6468).
Update test case to changed JDK behavior
@scala-jenkins scala-jenkins added this to the 2.13.0-M4 milestone Apr 28, 2018
@SethTisue SethTisue force-pushed the merge-2.12.x-to-2.13.x-20180428 branch from e90b842 to b66710a Compare April 28, 2018 13:38
@SethTisue
Copy link
Member Author

gah, :completions doesn't work. investigating...

@SethTisue
Copy link
Member Author

SethTisue commented Apr 28, 2018

something in Adriaan's refactorings made it so that ReplTest doesn't see the override def shellCompletion in ILoop.scala, so completion of REPL commands themselves isn't available. This results in an exception when it tries to go down the Scala-code-completion path on a REPL command, and then that exception is suppressed by the catch { case NonFatal(e) => ... in ReplCompletion#codeCompletion so you get no output.

@SethTisue SethTisue force-pushed the merge-2.12.x-to-2.13.x-20180428 branch from b66710a to 9469ac6 Compare April 28, 2018 15:41
@SethTisue SethTisue force-pushed the merge-2.12.x-to-2.13.x-20180428 branch from 9469ac6 to 0561ba9 Compare April 28, 2018 15:44
@SethTisue
Copy link
Member Author

okay that wasn't tooooo hard to straighten out

@SethTisue SethTisue merged commit 5661290 into scala:2.13.x Apr 28, 2018
@SethTisue SethTisue deleted the merge-2.12.x-to-2.13.x-20180428 branch April 28, 2018 16:21
@SethTisue
Copy link
Member Author

@SethTisue
Copy link
Member Author

@hvesalai heh, I forgot about #6382 here

@retronym
Copy link
Member

I believe there was a merge error here:

% git log --graph --oneline --decorate $MB..origin/2.12.x | tail -r
* 957780fa25 Don't compute `locations` in macroclassloader cache
* cb5f0fc1ba Merge pull request #6446 from scalacenter/ticket/scala-dev/458
|/  
| * 4053968c5a [nomerge] Use temporary repository for bootstrapping
| * 46596b42a5 [nomerge] Streamline the bootstrap script
|/|   
| |/  
|\ \  
* |   8120af87ca Merge pull request #6472 from lrytz/wip/local-bootstrap-repo
% git merge -sours 4053968c5a
Merge made by the 'ours' strategy.
% git merge -sours 46596b42a5
Merge made by the 'ours' strategy.

The changes in 957780f didn't make it to 2.13.x. I think the first merge command should have been git merge cb5f0fc1ba. I'll submit a PR to bring that across. We really need to get Java 10 into our build matrix in some capacity.

retronym pushed a commit to retronym/scala that referenced this pull request May 30, 2018
Fixes scala/scala-dev#480.

It reports whenever `AbstractFile.getUrl` returns `null` if verbose is
enabled.

[cherry-picked from 957780f after this was accidentally discarding
in scala#6575]
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.