Commit Graph

7511 Commits

Author SHA1 Message Date
Ethan Atkins 946cbfe2b4
Merge pull request #5054 from eatkins/watch-deprecations
Update deprecation warnings for api changes
2019-09-06 12:55:12 -07:00
Ethan Atkins 955547e5bd Update deprecation warnings for api changes
During refactoring, these warnings got out of date. I also added
scaladoc to the watchTriggeredMessage key.

Ref: https://github.com/sbt/sbt/issues/5051.
2019-09-06 12:10:59 -07:00
Ethan Atkins 1e25bc917c
Merge pull request #5027 from eatkins/1.3.x-merge
1.3.x merge
2019-09-05 12:35:51 -07:00
Ethan Atkins a82e7892ab Bump sbt version 2019-09-05 11:46:23 -07:00
Ethan Atkins 58b3d970d0 Merge remote-tracking branch 'origin/1.3.x' into 1.3.x-merge 2019-09-05 11:44:24 -07:00
Ethan Atkins a0dc3fc06a Bump sbt dogfood version 2019-09-05 10:20:24 -07:00
Ethan Atkins 7c2a1c858b 1.3.0
-----BEGIN PGP SIGNATURE-----
 
 iQEcBAABAgAGBQJdbz/aAAoJEDeJDimNmiv6Am8IAKv23f6BPIWZFeokzJLkUt8v
 DDLyzIwzE0hTFKInCNhGDCFtACFFgoD8/7t9D5gmLttQr4F9ke94DqWBEP3kbgan
 Qb4rR8uwglPUJmOhzBj2Qs3A8fAXdg3wm/6OlllQzBwCYNxFf3MhmJc3hF4vd+jO
 93JqwbY50entqha9z299+NpLPTKWtVC5R+1pAF+LwObjLOYqlxiGvAcl7jWx1qte
 VN+BabBYT4Hw43kJCutglHu8vttG68m+fqYGxjAmZXYBAbn0NPyE7GHmqkQ5baAz
 DUbc0vU2nY6tpUFNlNfu9PTPnRwHdSjSJTa9Ug7hw24z2oTg2tapNDXIpt6n6ZA=
 =onwH
 -----END PGP SIGNATURE-----

Merge tag 'v1.3.0' into 1.3.x-merge

1.3.0
2019-09-05 10:15:41 -07:00
eugene yokota 7cd29cda7b
Merge pull request #5029 from eed3si9n/wip/1.3.0
sbt 1.3.0
2019-09-04 13:28:48 -04:00
Eugene Yokota 665eb8f870 sbt 1.3.0 2019-09-04 01:24:08 -04:00
eugene yokota fbfceb5ded
Merge pull request #5028 from eed3si9n/wip/bump
bump io, lm, and zinc to 1.3.0
2019-09-04 00:36:21 -04:00
Eugene Yokota fa3a09368e bump io, lm, and zinc to 1.3.0 2019-09-03 23:51:13 -04:00
eugene yokota be1163b672
Merge pull request #5025 from eatkins/supershell-appender
Improve supershell appender management
2019-09-03 19:25:09 -04:00
Ethan Atkins 7c31e03d27 Improve supershell appender management
To avoid reliance on jvm global variables, we need to share the super
shell state with each of the console appenders that write to the console
out. We only set the progress state for the console appenders for the
screen. This prevents messages that are below the global logging level
from modifying the progress state without preventing them from being
written to other appenders.

The ability to set the ProgressState for each of the console appenders
is added in a companion util PR.

I verified that the test output of io/test was correctly written to the
streams after this change (there were no progress lines in the output).
2019-09-03 15:22:34 -07:00
eugene yokota 4f2ffe9b36
Merge pull request #5018 from eatkins/output-file-stamp-cache
Use managedFileStampCache for dependency classpath
2019-09-02 23:17:27 -04:00
eugene yokota 26293640c6
Merge pull request #5022 from eatkins/supershell-no-color
Allow supershell in no color mode
2019-09-02 23:15:52 -04:00
eugene yokota 903571cc62
Merge pull request #5023 from eatkins/supershell-test-names
Name test tasks with the test name
2019-09-02 20:13:50 -04:00
Ethan Atkins b996675c93 Name test tasks with the test name
Ref https://github.com/sbt/sbt/issues/4911. This names each parallel
test task with the name of the task so that supershell can display it.
It only applies for parallel tests. When run sequentially, supershell
will still display executeTests.
2019-09-02 14:58:49 -07:00
Ethan Atkins 19ead4144d
Merge pull request #5014 from eatkins/fail-on-exception
Display only valid pages in scripted completions
2019-09-02 11:41:21 -07:00
Ethan Atkins a02a58dcfa Allow supershell in no color mode
Disabling supershell when color mode is disabled is a sensible default
(especially for piped output). However, I think it should still be
possible to use supershell in no color mode.

This requires a util change that also enables supershell in no color
mode.
2019-09-02 11:26:24 -07:00
eugene yokota 4d01ef449d
Merge pull request #5020 from eatkins/build-upgrade
Build upgrade
2019-09-02 01:05:06 -04:00
eugene yokota 183b45897a
Merge pull request #5017 from eed3si9n/wip/once
evaluate test result only once
2019-09-02 01:04:25 -04:00
eugene yokota 7018d6ebf4
Merge pull request #5019 from eatkins/task-timings
Fix task timings
2019-09-02 01:04:03 -04:00
Ethan Atkins 4e1074d175 Use turbo in sbt build 2019-09-01 19:20:27 -07:00
Ethan Atkins 97f59d20a0 Remove FixScalafmtPlugin
The underlying issue in https://github.com/scalameta/scalafmt/issues/1399
has supposedly been fixed in sbt-scalafmt 2.0.1 and we're on 2.0.2.
2019-09-01 19:20:13 -07:00
Ethan Atkins c8c8eb2ade Delete unnecessary flat classloader strategy setting 2019-09-01 19:17:50 -07:00
Ethan Atkins c525fa2551 Use managedFileStampCache for dependency classpath
It is redundant and slow to restamp all of the dependency classpath
files when they have likely already been stamped by a subproject.
For the classfiles of subprojects, we fill the managedFileStampCache
with the values returned by the zinc compile analysis product stamps.
This is why they are probably already in the managed cache and should be
up to date so long as zinc is working correctly.

I noticed that various outputFileStamps tasks were showing up in the
task timing report when I ran Test / definedTests in the main sbt project.
That task became about 400ms faster after this change.
2019-09-01 19:14:12 -07:00
Ethan Atkins 30ede13a09 Fix task timings
I noticed that the reports generated when using sbt.task.timings=true
made very little sense. They were displaying timings for tests that
couldn't possibly have been run. I tracked this down to the TaskTimings
be stored in the progressReport setting which meant they were reused
across multiple task runs. After this change, the reports made a lot
more sense.
2019-09-01 19:13:43 -07:00
Ethan Atkins 49bcef029d Display only valid pages in scripted completions
The tab completions for scripted have long been broken. They display a
number of non-sensical pages like '*0of9' or '*1of0'. Some of the
multiparser changes seem to have caused these invalid
2019-08-31 17:32:34 -07:00
eugene yokota ea778e9a5c
Merge pull request #4819 from dwijnand/cleanup-Load.loadTransitive
Cleanup Load.loadTransitive
2019-08-29 23:24:29 -04:00
eugene yokota 2a291e0eb7
Merge pull request #5010 from xuwei-k/foldLeft-foldRight
avoid deprecated /: and :\
2019-08-29 23:24:14 -04:00
xuwei-k dfe789d7c6 avoid deprecated /: and :\
use foldLeft and foldRight

https://github.com/scala/scala/blob/v2.13.0/src/library/scala/collection/IterableOnce.scala#L682-L686
2019-08-30 11:20:53 +09:00
Ethan Atkins 4566ac3335
Merge pull request #5009 from eatkins/dogfood-1.3.0-RC5
Bump sbt version to 1.3.0-RC5
2019-08-29 17:05:39 -07:00
Ethan Atkins 34bdc21adc Bump sbt version to 1.3.0-RC5 2019-08-29 16:20:37 -07:00
eugene yokota a7dd86939f
Merge pull request #4971 from eatkins/play-watch-scripted
Play watch scripted
2019-08-29 16:22:58 -04:00
eugene yokota 37d5a3ee4e
Merge pull request #5006 from eed3si9n/wip/bump
util 1.3.0-M12
2019-08-29 16:11:03 -04:00
eugene yokota 785717c18a
Merge pull request #5005 from eatkins/classloader-performance-regression
Fix performance regression in test classloader
2019-08-29 16:10:46 -04:00
Eugene Yokota 4bb5979502 util 1.3.0-M12 2019-08-29 15:08:10 -04:00
Ethan Atkins ebf6d5aee6 Fix performance regression in test classloader
In 5eab9df0df, I updated the
outputFileStamps task to compute all of the stamps for a directory
recursively if an output file is a directory. Prior to that, it had only
computed the stamp for the directory itself. This caused a significant
performance regression in creating the test classloader because it was
computing the last modified time for all of the classfiles in the class path.
The test for 5000 source files in
https://github.com/eatkins/scala-build-watch-performance was running roughly
400ms slower due to this regression.
2019-08-29 11:52:29 -07:00
Ethan Atkins f515aab8d7 Add scripted test for `~compile` in play 2019-08-29 09:38:11 -07:00
Ethan Atkins 3f6fa7ee87
Merge pull request #5002 from xuwei-k/use-Vector-instead-of-List
use Vector instead of List. avoid O(n) append
2019-08-29 09:24:09 -07:00
mkljakubowski d2b1426a1f evaluate test result only once 2019-08-29 15:40:22 +02:00
xuwei-k 1f3ce5f9ee use Vector instead of List. avoid O(n) append 2019-08-29 21:44:31 +09:00
eugene yokota 1ee20ef11d
Merge pull request #4997 from eed3si9n/wip/http
Deprecate HTTP resolvers (take 2)
2019-08-29 08:40:00 -04:00
Eugene Yokota 377c6dd661 util 1.3.0-M11 2019-08-28 23:56:08 -04:00
Eugene Yokota caaa8f1fb5 io 1.3.0-M17, lm 1.3.0-M8 2019-08-28 23:21:56 -04:00
Eugene Yokota 75e609cba2 Deprecate HTTP resolvers (take 2)
Ref https://github.com/sbt/sbt/issues/4905

This is a companion PR to https://github.com/sbt/librarymanagement/pull/318.

This will print the following warnings:

```
sbt:hello> compile
[warn] insecure HTTP request is deprecated 'Artifact(jsoup, jar, jar, None, Vector(), Some(http://jsoup.org/packages/jsoup-1.9.1.jar), Map(), None, false)'; switch to HTTPS or opt-in using from(url(...), allowInsecureProtocol = true) on ModuleID or .withAllowInsecureProtocol(true) on Artifact
[warn] insecure HTTP request is deprecated 'http://repo.typesafe.com/typesafe/releases/'; switch to HTTPS or opt-in as ("Typesafe Releases" at "http://repo.typesafe.com/typesafe/releases/").withAllowInsecureProtocol(true)
[warn] insecure HTTP request is deprecated 'http://repo.typesafe.com/typesafe/releases/'; switch to HTTPS or opt-in as ("Typesafe Releases" at "http://repo.typesafe.com/typesafe/releases/").withAllowInsecureProtocol(true)
[warn] insecure HTTP request is deprecated 'http://repo.typesafe.com/typesafe/releases/'; switch to HTTPS or opt-in as ("Typesafe Releases" at "http://repo.typesafe.com/typesafe/releases/").withAllowInsecureProtocol(true)
[warn] insecure HTTP request is deprecated 'Patterns(ivyPatterns=Vector(), artifactPatterns=Vector(http://repo.typesafe.com/typesafe/releases/[organisation]/[module](_[scalaVersion])(_[sbtVersion])/[revision]/[artifact]-[revision](-[classifier]).[ext]), isMavenCompatible=true, descriptorOptional=false, skipConsistencyCheck=false)'; switch to HTTPS or opt-in as Resolver.url("Typesafe Ivy Releases", url(...)).withAllowInsecureProtocol(true)
[warn] insecure HTTP request is deprecated 'Patterns(ivyPatterns=Vector(), artifactPatterns=Vector(http://repo.typesafe.com/typesafe/releases/[organisation]/[module](_[scalaVersion])(_[sbtVersion])/[revision]/[artifact]-[revision](-[classifier]).[ext]), isMavenCompatible=true, descriptorOptional=false, skipConsistencyCheck=false)'; switch to HTTPS or opt-in as Resolver.url("Typesafe Ivy Releases", url(...)).withAllowInsecureProtocol(true)
[warn] insecure HTTP request is deprecated 'Patterns(ivyPatterns=Vector(), artifactPatterns=Vector(http://repo.typesafe.com/typesafe/releases/[organisation]/[module](_[scalaVersion])(_[sbtVersion])/[revision]/[artifact]-[revision](-[classifier]).[ext]), isMavenCompatible=true, descriptorOptional=false, skipConsistencyCheck=false)'; switch to HTTPS or opt-in as Resolver.url("Typesafe Ivy Releases", url(...)).withAllowInsecureProtocol(true)
```
2019-08-28 23:20:09 -04:00
eugene yokota c38ce111fe
Merge pull request #4999 from eatkins/clean-directories
Restore old cleanFiles behavior
2019-08-28 20:42:23 -04:00
eugene yokota 5d934d4ec1
Merge pull request #4998 from eed3si9n/wip/override
Take dependencyOverrides into account
2019-08-28 20:42:02 -04:00
Ethan Atkins b3320ce1ba Restore old cleanFiles behavior
I inadvertently changed the semantics of clean so that cleanFiles would
only delete the file if it was a regular file. In older versions of sbt,
if a file in cleanFiles was a directory, it would be recursively
deleted.
2019-08-28 16:41:25 -07:00
Eugene Yokota 4086fc1213 Take dependencyOverrides into account
This tracks https://github.com/coursier/sbt-coursier/pull/106
Fixes https://github.com/sbt/sbt/issues/4895
2019-08-28 17:43:42 -04:00