Commit Graph

6664 Commits

Author SHA1 Message Date
Ethan Atkins 2b831e5988 Add LabeledFunctions to repo
I noticed that debugging settings that return functions is annoying
because often the setting is initialized as an anonymous function with a
useless toString method. To improve the debugging for users, I'm adding
a number of wrapper classes for functions that override the default
toString with a provided label.

I then used these functions to label all of the anonymous functions in
Watched.scala.
2019-01-08 09:45:06 -08:00
eugene yokota ed1200a763
Merge pull request #4497 from tdroxler/feature/preserve-error-order
Preserve errors order when publishing diagnostics
2019-01-04 10:48:01 -05:00
Eugene Yokota 68d0da379e add Mima exclusion 2019-01-04 09:55:28 -05:00
Thomas Droxler fff6b044bc Use `ListBuffer` instead of `List` in `LanguageServerReporter`
In order to have a better data structure for appending
2019-01-04 13:31:04 +01:00
Thomas Droxler a5388fed60 Preserve errors order when publishing diagnostics
The `sbt-server` was prepending a new probem and not appending.

The result was a `textDocument/publishDiagnostics` notification
containing a inverted list of problems compare to what was show in the
sbt console.
2019-01-04 13:31:04 +01:00
eugene yokota f514f4fb78
Merge pull request #4389 from eed3si9n/wip/openjdk11
test on openjdk11
2019-01-04 01:30:04 -05:00
Eugene Yokota 0bcb648448 test everything on JDK11 2019-01-03 22:32:32 -05:00
Eugene Yokota 2480fd838c fix project/flatten 2019-01-03 22:30:41 -05:00
Eugene Yokota c424b7440b fix project/internal-tracking 2019-01-03 22:30:41 -05:00
Eugene Yokota a643380da5 fix protect/aggregate 2019-01-03 22:30:41 -05:00
Eugene Yokota 690beddf02 fix dependency-management/snapshot-resolution 2019-01-03 22:30:41 -05:00
Eugene Yokota bb1d1edb67 Delete apiinfo/basic 2019-01-03 22:30:41 -05:00
Eugene Yokota 33b4db3daf mark dotty-compiler-plugin pending
Ref https://github.com/lampepfl/dotty/issues/5671
2019-01-03 17:24:05 -05:00
Eugene Yokota d1409e5041 fix compiler-project/error-in-invalidated 2019-01-03 17:06:10 -05:00
Eugene Yokota 62845b6266 fix compiler-project/separate-analysis-per-scala 2019-01-03 17:05:44 -05:00
Eugene Yokota ff12b395a0 fix dependency-management/cache-classifiers 2019-01-03 16:47:30 -05:00
Eugene Yokota 97181e7700 get actions/cross-multiproject to pass 2019-01-03 16:40:10 -05:00
Eugene Yokota 85db47420b fix actions/generator 2019-01-03 15:36:44 -05:00
Eugene Yokota 610495af53 fix actions/doc
Javadoc on JDK11 no longer generates package-list it seems.
2019-01-03 15:25:08 -05:00
Eugene Yokota 3f405daf6a fix actions/doc-file-options 2019-01-03 15:11:58 -05:00
Eugene Yokota d1b921535b fix actions/cross-strict-aggregation for openjdk11 2019-01-02 15:48:32 -05:00
Eugene Yokota 3962ee297c add some AdoptOpenJDK JDK11 tests 2019-01-02 14:37:29 -05:00
Eugene Yokota 6001c4e2e6 sbt-assembly 0.14.9 2019-01-02 14:37:29 -05:00
eugene yokota 5cde0abc09
Merge pull request #4501 from eatkins/multi-command
Allow trailing semicolon in multi commands
2018-12-27 17:24:57 -05:00
Ethan Atkins 9634a872cd Allow trailing semicolon in multi commands
It was a mistake to disallow trailing semicolons for multi commands.
Firstly this was a mistake because previous versions of sbt supported a
trailing semi colon. It was also inconsistent with how commands work in
a regular shell (e.g. bash or zsh).
2018-12-27 13:22:45 -08:00
eugene yokota 1e7564c408
Merge pull request #4499 from dwijnand/ParseKey-rare-failure
Avoid ParseKey failing due to homonymous axes
2018-12-22 14:29:59 -05:00
eugene yokota 96cd676cd9
Merge pull request #4500 from dwijnand/cleanup-ConfigIndex
Cleanup ConfigIndex
2018-12-22 14:25:12 -05:00
Dale Wijnand 30dca6b818
Cleanup ConfigIndex 2018-12-22 17:05:51 +00:00
Dale Wijnand 3d924978c2
Add some matcher messaging to ParserSpec 2018-12-22 17:02:48 +00:00
Dale Wijnand 6988b2289a
Cleanup some formatting/wrapping 2018-12-22 17:02:47 +00:00
Dale Wijnand e533bc93e8
Avoid ParseKey failing due to homonymous axes 2018-12-22 12:51:47 +00:00
Dale Wijnand 645f484184
Switch ParseKey to propertyWithSeed 2018-12-22 12:51:47 +00:00
Dale Wijnand 1f14a2c340
Split out ParseKey properties 2018-12-22 12:51:47 +00:00
Dale Wijnand a254341b6f
Remove dead guessedConfigIdents code 2018-12-22 12:37:42 +00:00
eugene yokota 4c553835a0
Merge pull request #4488 from eatkins/test-keys
Rename TestBuild.Keys to TestBuild.TestKeys
2018-12-15 01:40:11 -05:00
Ethan Atkins bfffb4f489 Rename TestBuild.Keys to TestBuild.TestKeys
It drives me crazy that in intellij when I do the go to class task that
TestBuild.Keys comes up before Keys. Given how central Keys is to sbt,
it doesn't seem like a good idea to alias that particular class name.
2018-12-14 13:55:19 -08:00
eugene yokota a9a8513b15
Merge pull request #4487 from eed3si9n/wip/bump
Bump dependencis
2018-12-14 12:32:42 -05:00
Eugene Yokota cb6bb1bfcb Bump dependencis 2018-12-14 00:11:44 -05:00
eugene yokota 17b2737bbf
Merge pull request #4486 from eed3si9n/wip/whitesource2
define whitesourceOnPush
2018-12-13 21:07:56 -05:00
Eugene Yokota 67e590d940 define whitesourceOnPush
whitesourceOnPush calls whitesourceCheckPolicies and whitesourceUpdate on push.
Since Travis CI secrets are not available during PR from a fork, there's no point in calling these during the PR validation.
2018-12-13 19:31:56 -05:00
Ethan Atkins 27268a35cd
Merge pull request #4485 from eatkins/linter
Support disabling the sbt task linter
2018-12-12 10:15:40 -08:00
Ethan Atkins 01b2e86a54 Fix Def cannot be used inside a taskDyn #3110
The illegalReference check did not actually validate whether the illegal
reference actually referred to an M[_] (which is pretty much always
Initialize[_]]). The means by which this failure was induces were fairly
obscure and go through multiple levels of macro transformations that I
attempt to explain in the comment in IllegalReferenceSpec.

Fixes #3110
2018-12-11 21:49:42 -08:00
Ethan Atkins d42b3ee2fd Make the TaskLinterDSL warn by default
I am generally of the opinion that a linter should not abort progress by
default. I do, however, think that it should be on by default, making
warn a happy compromise.
2018-12-11 18:21:46 -08:00
Ethan Atkins 32792f2b9d Make the task linter configurable
The user should be able to configure whether or not the task linting is
strictly enforced. In my opinion, the linter is generally pretty good
about warning users that a particular definition may not behave the way
the user expects. Unfortunately, it is fairly common that the user
explicitly wants this behavior and making the linter abort compilation
is a frustrating user experience.

To fix this, I add the LinterLevel trait to a new sbt.dsl package in the
core-macros project. The user can configure the linter to:
1) abort when an issue is detected. This is the current default behavior.
2) print a warning when an issues is detected
3) skip linting all together

Linter configuration is managed by importing the corresponding implicit
object from the LinterLevel companion object.

Fixes #3266
2018-12-11 18:21:44 -08:00
Ethan Atkins 2e027640d3 Add solutions for dynamic task evaluation
There are many cases where one would want to force evaluation of the
task even when contained in a lambda (see
https://github.com/sbt/sbt/issues/3266). The @sbtUnchecked annotation is
one way to disable the linter that prevents this, but it is obscure. If
the annotation is to exist, I think it should be presented as a
solution.
2018-12-11 12:45:49 -08:00
Ethan Atkins 1c2bab093b Switch to more functional style in BaseTaskLinterDSL
I found it somewhat difficult to reason about the state of the tree
Traverser because of the usage of mutable variables and data structures.
For example, I determined that the uncheckedWrappers were never used
non-locally so a Set didn't seem to be the right data structure. It was
reasonably straightforward to switch to a more functional style by
parameterizing the method local traverser class.

Bonus:
  - remove unused variable disableNoValueReport
  - add scaladoc to document the input parameters of the traverser class
    so that it's a bit easier to understand for future maintainers.
2018-12-11 12:45:49 -08:00
Ethan Atkins ab2df045ab Lint TaskLinterDSL for intellij
This cleans up all of the yellow intellij warnings for me. It still
complains about some typos, but those manifest as green squiggled lines
which are less annoying.
2018-12-11 12:45:49 -08:00
eugene yokota 9a429e9bad
Merge pull request #4483 from eed3si9n/wip/nightly
fix nightly
2018-12-09 03:02:44 -05:00
Antonio Cunei cf1034e28e Bump scalatest to 3.0.6-SNAP5 2018-12-08 13:12:26 -05:00
Antonio Cunei 9104bde061 Bump log4j2 to 2.11.1 2018-12-08 13:09:02 -05:00