Commit Graph

17940 Commits

Author SHA1 Message Date
jvican 10c737ae20
Move to `core-macros` and depend on it 2017-05-24 00:16:26 +02:00
jvican d2f019a47a
Reformat all util-appmacro 2017-05-24 00:16:23 +02:00
jvican ed38fcd695
Move `util-appmacro` to sbt as `core-macros`
This commit moves everything behind the old util-appmacro over to
sbt/sbt.

appmacro has been renamed as core-macros. It is indeed the project
that defines the main logic to manipulate macros, and defines interfaces
that are then implemented by main-settings. Because of this strong
relationship between these two modules, I find that they have to stay
together and be able to be modified in one commit. I've realised this
while hacking on the macro changes for the usability of sbt.

The reason for this change is because the logic of this module is really
tight to the implementation of sbt and, I would even say, essentially
define the sbt DSL.
2017-05-24 00:16:21 +02:00
jvican db88e89c42
Merge HEAD, branch 'move-util-2' of ../sbt-util into move-sbt-util-second-attempt 2017-05-24 00:13:52 +02:00
jvican 551c5d9aa4 Add headers to files missing it 2017-05-22 17:02:32 +02:00
jvican 66c34d180e Move `ClasspathOptionsUtil` to the Java public API
Move the previous Scala implementation to Java as static methods.
2017-05-22 17:00:29 +02:00
jvican 19ddb6f2a2 Move ZincBridgeProvider to `xsbti.compile`
Before, we were using `sbt.inc`. As we have settled to define all the
interfaces in the `xsbti.compile` namespaces, it's not worth it to force
users remember other locations for the interfaces forwarding the default
implementations in Scala.
2017-05-22 16:07:53 +02:00
jvican e071577d6a Hide Zinc Compilation implementation
Before, we had made this public in `sbt.inc`, but this is not necessary
anymore.
2017-05-22 15:54:20 +02:00
jvican c8560c6b4e Add `ZincCompilerUtil` to get the Scalac compiler
* Move `IncrementalCompilerUtil` to `ZincCompilerUtil`.
* Change `IncrementalCompilerUtil` to an interface with static methods.
* Remove bug in which ScalaInstance implementation was leaking to the
  public API.
2017-05-22 15:49:26 +02:00
jvican 96f7e08864 Remove the use of `BaseIvySpecification`
This is the proof that we're now testing the Zinc public API because
we're resolving with the ivy options and resolution specified in the
default compiler bridge provider.
2017-05-21 20:21:58 +02:00
jvican 4d0f06a2ee Add public method to get default component provider
Expose default component provider through a static method in
`ZincCompilerBridge`. This method is necessary to invoke the bridge.

Removes the previous global lock and component provider implementations
in `BridgeProviderSpecification`.
2017-05-21 20:21:58 +02:00
jvican 6d012abaf9 Remove verbose Java global lock implementation 2017-05-21 20:21:58 +02:00
jvican aa3527996f Add public method to get no-op global lock 2017-05-21 20:21:58 +02:00
jvican 025c4cef9a Add public method to get a local ivy resolver 2017-05-21 20:21:58 +02:00
jvican c228ce8817 Add Java API for Zinc Ivy integration
* Adds a method to fetch the default implementation of the compiler
  provider.
* Adds a method to get a default `IvyConfiguration` from a small number
  of parameters.

The public API is implemented in Java to ensure binary compatibility no
matter what happens to the internal Scala implementations. It also makes
it easier for Java users to use the API and avoid importing MODULE$'s
and Scala generated class files.'
2017-05-21 20:21:57 +02:00
jvican d794ead617 Fix error when showing unresolved warning lines 2017-05-21 20:21:57 +02:00
jvican 47415e7def Compile bridge for 2.12.x and other Scala versions
This commit makes sure that we always check that we compile against the
latest two versions in Scala 2.10, Scala 2.11 and Scala 2.12.

This commit also removes the null loggers and uses normal loggers to
check what the output of the bridge provider is. This output is
important and the rationale to do this is that it should be visible for
us in order to detect cases where there's a regression or the output is
modified in some way. Output is short anyway.
2017-05-21 20:21:57 +02:00
jvican f4c38c8355 Test `getScalaInstance` & `getCompiledBridge`
* Remove unused code in `BridgeProviderSpecification` and test the real
  code in the default provider.
* Don't use temporary directory to download the Scala jars, retrive them
  in a directory specified by the user.
* Use `java.net.ClassLoader` instead of `ScalaClassLoader`.
* Use the `ScalaInstance` interface, not the implementation. Remove any
  reference to the implementation.
2017-05-21 20:21:57 +02:00
jvican ae40c096e3 Remove custom `getScalaInstance` and use default 2017-05-21 20:21:57 +02:00
jvican 62a5037d23 Add `getScalaInstance` to `CompilerBridgeProvider` 2017-05-21 20:21:57 +02:00
jvican d48f65a8a7 Fix oversight in InvalidComponent message 2017-05-21 20:21:57 +02:00
jvican 8d9d007d3c Rename `getCompilerSources` to `getCompiledBridge`
Previous name was incorrect, we actually return the compiled bridge.
2017-05-21 20:21:57 +02:00
jvican e756f07aed Add headers to files that don't have them 2017-05-21 20:21:56 +02:00
jvican 3f1cce379f Add `CompilerBridgeProvider` interface and misc.
* Add interface for the provider.
* Rename `IvyComponentCompiler` to `ZincComponentCompiler`.
* Split `ZincComponentCompiler` and `ZincComponentManager`.
* Define `IfMissing` and `InvalidComponent` into independent files.
* Rename variables and internal API to be clearer.
2017-05-21 20:21:56 +02:00
Dale Wijnand 5e585e50da Merge pull request #3200 from eed3si9n/wip/testlog2
Fixes content log not showing up on test task
2017-05-19 07:55:24 +01:00
Eugene Yokota 2b5637270a update TestFramework
- update reset.sh for debugging
- use Vector around TestFramework
- unbind existing appdenders from newLog
- register string codec for TestStringEvent
2017-05-19 00:16:19 -04:00
Eugene Yokota b013c30c30 Fix content log not showing up on `test`
Fixes #3198

Bump util to 1.0.0-M24. This fixes content log not showing up on `test`
2017-05-19 00:15:19 -04:00
Alexandre Archambault 7b1bbae208 Merge pull request #546 from coursier/develop
Add sbt-plugin: and typesafe: repo syntaxes
2017-05-18 12:25:26 +02:00
Dale Wijnand 471ee7fdc4 Merge pull request #80 from eed3si9n/wip/logging2
Fixes buffered log appender
2017-05-18 06:48:55 +01:00
Eugene Yokota f2cc5ee775 convert log4j async LogEvent to an immutable one
This fixes the buffered log not showing up for tests.

Ref sbt/sbt#3198
2017-05-18 00:36:24 -04:00
Eugene Yokota feeb6291cd Add toString for ObjectEvent 2017-05-18 00:34:41 -04:00
Alexandre Archambault 70906fcc8e Add sbt-plugin: and typesafe: repo syntaxes 2017-05-18 02:50:20 +02:00
Alexandre Archambault bfe36c7ec7 Merge pull request #545 from coursier/develop
Various small things
2017-05-18 02:29:12 +02:00
Eugene Yokota 122c738913 bump version 2017-05-17 00:18:24 -04:00
eugene yokota b5cc77ef75 Merge pull request #3193 from dwijnand/better-toError-migration-notes
Better toError migration notes [ci skip]
2017-05-16 16:42:54 -04:00
Alexandre Archambault f23fbda1ba Address more warnings 2017-05-16 17:06:35 +02:00
Alexandre Archambault 6e0c6c3515 Always use same Function1 instance for Resolution fields
Allows to use the resolution as cache key
2017-05-16 17:05:32 +02:00
Alexandre Archambault c4d3918792 Remove unused imports 2017-05-16 17:05:32 +02:00
Alexandre Archambault 334cc1b01a Address some compilation warnings 2017-05-16 17:05:32 +02:00
Alexandre Archambault 65a0b035d0 Tweak build 2017-05-16 17:05:32 +02:00
Alexandre Archambault 12e9ca3e08 Java-ize echo module 2017-05-16 17:05:32 +02:00
Dale Wijnand 859b334a51
Better toError migration notes [ci skip] 2017-05-16 10:21:14 +01:00
Eugene Yokota dd4b33105b add Gigahorse 2017-05-15 16:34:38 -04:00
Alexandre Archambault 4f0b26d7a7 Add released versions to binary compatiblity versions 2017-05-15 18:54:30 +02:00
Alexandre Archambault a0bc58afa3 Dummy fix in release process 2017-05-15 18:54:29 +02:00
Alexandre Archambault 72fa824f36 Tweak tag step in sbt-release process 2017-05-15 18:54:29 +02:00
Alexandre Archambault 203e3fd477 Only compile http-server module in 2.12
So that we don't have to wait on its dependencies to add preliminary
support for scala 2.13
2017-05-15 18:54:29 +02:00
Alexandre Archambault 3656389fff Only compile sbt-launcher module in 2.11
So that we don't have to wait on its dependencies to add preliminary
support for scala 2.13
2017-05-15 18:54:29 +02:00
Alexandre Archambault 7c7f236bcc Bump plugins 2017-05-15 18:54:29 +02:00
Alexandre Archambault 70dad11384 Enable sbt-updates for plugins 2017-05-15 18:54:29 +02:00