sbt, the interactive build tool
Go to file
Eugene Yokota 8628f95e66 lazily initialize ProxyTerminal to SimpleTerminal
Problem
-------
Console.systemOut is hooked up to Terminal.get, which internally calls
ProxyTerminal, which lets us deffer the wiring of terminal to
activeTerminal. This mechanism allows us to swap out the terminal
capable of standard out forwarding for sbtn.
However, as it stands this breaks the contract of being able to use
Console.systemOut with wrapped inside of `Terminal.withStreams() {...}`.

Solution
--------
Check if `activeTerminal.get` returns `null`, and if so initialize it to
the conventional `Terminal.SimpleTerminal`, which behaves as expected.
2021-06-20 17:32:42 -04:00
.github Bump olafurpg/setup-scala from 10 to 12 2021-06-07 08:12:22 +00:00
client Change remaining sbtc to sbtn 2020-08-15 09:35:59 -07:00
core-macros/src/main/scala/sbt/internal/util/appmacro Use fully qualified name in the macro 2021-03-09 11:55:29 -05:00
dependency-tree/src/main/scala/sbt/plugins Split to MiniDependencyTreePlugin 2020-09-22 21:21:01 -04:00
internal lazily initialize ProxyTerminal to SimpleTerminal 2021-06-20 17:32:42 -04:00
launch Adds sbt.boot.lock sysprop to opt-out 2018-02-08 13:02:39 +00:00
launcher-package Scala 2.12.14 / 2.13.6 2021-05-28 18:13:28 +02:00
licenses move remaining pieces of sbt subproject to sbt_pending and fix notices 2010-09-21 21:55:50 -04:00
main Merge branch 'develop' into remote-cache 2021-06-18 20:13:55 +01:00
main-actions/src Instantiate only test runners needed by current TestDefinitions 2021-03-28 20:58:18 +01:00
main-command/src make -client the same as --client 2021-05-07 16:07:42 +01:00
main-settings/src Migrate most of the internal usage of in 2021-02-22 00:09:36 -05:00
notes Allow JUnitXmlTestsListener output directory to be configured 2021-04-12 12:17:50 +01:00
project sbt 1.5.4 2021-06-13 23:34:18 -04:00
protocol/src/main Add the tag "integration-test" to the it configuration in BSP. 2021-06-17 09:00:15 +02:00
run regen contraband 2020-12-21 17:21:54 +00:00
sbt-app/src fix compiler class loader jars 2021-06-11 10:41:40 +02:00
scripted-plugin/src/main/scala/sbt -Xfatal-warnings in most subprojects 2018-09-18 11:47:55 -04:00
scripted-sbt-old/src/main/scala/sbt/test Move scripted-sbt-old ScriptedTests file 2020-11-03 09:02:18 -08:00
scripted-sbt-redux Use nowarn annotation 2021-02-06 22:31:47 -05:00
server-test/src Scala 2.12.14 / 2.13.6 2021-05-28 18:13:28 +02:00
src/main/conscript sbt 1.3.0 2019-09-04 01:24:08 -04:00
tasks Scala 2.12.13 2021-01-31 12:59:31 -05:00
tasks-standard Cross build to Scala 2.13 2021-01-10 20:24:05 -05:00
testing Allow JUnitXmlTestsListener output directory to be configured 2021-04-12 12:17:50 +01:00
util-cache introduce a new new Input/Output: FileInput/FileOutput 2020-11-25 14:04:56 +00:00
util-tracking update scaladoc to reflect argument type of the overload 2020-04-24 16:54:48 +02:00
vscode-sbt-scala https://www.apple.com 2019-09-05 14:11:07 -04:00
zinc-lm-integration/src Use scala-doc-tool config for scala3doc 2021-01-04 10:01:34 +01:00
.appveyor.yml Update Jave version to 1.8.0-275 on AppVeyoer 2021-02-15 22:46:06 -05:00
.gitattributes Contraband 0.4.6 2020-04-24 17:44:15 -04:00
.gitignore Drop sbt-launch.jar from Linux distro 2021-04-24 17:31:02 -04:00
.java-version Configure JVM 1.8 in .java-version 2016-10-07 08:48:23 -05:00
.mailmap Add mailmap 2019-06-11 09:30:14 +02:00
.sbtopts Restore .sbtopts file 2020-11-19 12:42:26 -08:00
.scalafmt.conf Set `lineEndings = preserve` in .scalafmt.conf 2020-06-29 08:15:24 -07:00
CONTRIBUTING.md https://www.scala-sbt.org 2019-09-05 14:11:13 -04:00
DEVELOPING.md add additional instructions for new contributors 2021-04-26 08:48:29 +01:00
LICENSE Apache License 2.0 2018-09-14 03:38:58 -04:00
NOTICE Apache License 2.0 2018-09-14 03:38:58 -04:00
PROFILING.md fix typo 2018-07-08 22:18:57 +09:00
README.md Update travis-ci badge. s/.org/.com/ 2020-10-29 23:54:09 +09:00
SUPPORT.md Split support into SUPPORT.md 2018-04-25 14:55:09 +01:00
build.sbt sbt 1.5.4 2021-06-13 23:34:18 -04:00
reset.sh 1.0.3-SNAPSHOT 2017-09-16 15:52:58 -04:00
sbt sbt 1.5.4 2021-06-13 23:34:18 -04:00
sbt-allsources.sh Build from fresh modules 2020-11-14 14:23:48 -05:00
sbt.sh Implement sbt-launch.jar download 2021-04-19 23:43:15 -04:00
server.md setting query is "sbt/setting" 2017-10-03 01:45:06 -04:00

README.md

Build Status Latest version Gitter Chat

sbt

sbt is a build tool for Scala, Java, and more.

For general documentation, see https://www.scala-sbt.org/.

sbt 1.x

This is the 1.x series of sbt. The source code of sbt is split across several GitHub repositories, including this one.

  • sbt/io hosts sbt.io module.
  • sbt/librarymanagement hosts sbt.librarymanagement module that wraps Ivy.
  • sbt/zinc hosts Zinc, an incremental compiler for Scala.
  • sbt/sbt, this repository hosts modules that implements the build tool.
  • Setup: Describes getting started with the latest binary release.
  • FAQ: Explains how to get help and more.
  • sbt/sbt-zero-seven: hosts sbt 0.7.7 and earlier versions

Issues and Pull Requests

Please read CONTRIBUTING carefully before opening a GitHub Issue.

The short version: try searching or asking on StackOverflow.

license

See LICENSE.