1. 致谢

致谢 

sbt 最初由 Mark Harrah (@harrah) 在 2008 年创建。sbt 的大多数基本方面,例如 Scala 增量编译器、与 Maven 和 Ivy 依赖项的集成以及并行任务处理,都是由 Mark 构思和最初实施的。

到 2010 年,当 sbt 0.7 发布时,许多开源 Scala 项目都将 sbt 作为他们的构建工具。

Mark 于 2011 年加入 Typesafe(现为 Lightbend),该公司在当年成立。同年发布了 sbt 0.10.0。Mark 仍然是维护者和最活跃的贡献者,直到 2014 年 3 月,他的最后一个版本是 sbt 0.13.1。

Typesafe 的 Josh Suereth (@jsuereth) 成为 sbt 的下一任维护者。

2014 年,Eugene Yokota (@eed3si9n) 加入 Typesafe,与 Josh 一起领导 sbt。这个团队将 0.13 系列带到了 0.13.5,并将路线走向 1.0 作为 技术预览。到 Josh 于 2015 年离开时,在 sbt 0.13.9 之后,他们发布了 AutoPlugin,使 sbt 0.13 保持良好状态,并为 sbt 服务器奠定了基础。

Grzegorz Kossakowski (@gkossakowski) 在 Typesafe 的 Scala 团队工作期间,开发了一种更好的增量编译算法,称为“名称哈希”。名称哈希在 sbt 0.13.6(2014 年)中成为默认的增量编译器。Lightbend 后来委托 Grzegorz 使用一种称为基于类的名称哈希的技术来改进名称哈希,该技术被 Zinc 1 采用。Grzegorz 的另一个值得注意的贡献是主持了一系列与 @WarszawScaLa 的 聚会,以及(在他的胳膊上打着绷带fix 臭名昭著的空行问题。

2015 年 5 月,Dale Wijnand (@dwijnand) 在为社区贡献了 inThisBuild-= 等功能后,成为社区的提交者。

从 2015 年 6 月到 2016 年初,Martin Duhem (@Duhemm) 加入 Typesafe 担任实习生,从事 sbt 工作。在此期间,Martin 为一些关键组件做出了贡献,例如为 Zinc 使编译器桥可配置,以及为伪案例类生成代码(后来成为 Contraband)。

大约在这个时候,Eugene、Martin 和 Dale 开始了 sbt 1.x 代码库,将代码库拆分为多个模块:sbt/sbt、Zinc 1、sbt/librarymanagement、sbt/util 和 sbt/io。目标是使 Zinc 1 成为一个增量编译器,可供所有构建工具使用。

2016 年 8 月,Dale 加入 Lightbend 的工具团队。Dale 和 Eugene 负责发布 0.13.12 到 0.13.16,以及 sbt 1.0 的开发。

2017 年春季,Scala 中心参与了 Zinc 1 开发工作。Jorge Vicente Cantero (@jvican) 贡献了许多改进,包括针对阻止 Zinc 1 的“从…角度看”错误的修复。

从 2018 年春季开始,Ethan Atkins 作为社区成员加入 sbt 项目,并迅速成为该项目的领先贡献者。最初,他的贡献是实现 Close Watch,它使用原生代码在 macOS 上提供监视服务。从那时起,他一直在努力进行各种与性能相关的改进,包括分层类加载器、日志重写和使用 GraalVM 原生映像的原生瘦客户端。

根据 sbt/sbtsbt/zincsbt/librarymanagementsbt/utilsbt/iosbt/contrabandsbt/website 上的 git shortlog -sn --no-merges,318 位贡献者贡献了 9151 个非合并提交。

  • Mark Harrah 3852
  • Eugene Yokota (eed3si9n) 1760
  • Dale Wijnand 524
  • Josh Suereth 357
  • Grzegorz Kossakowski 349
  • Martin Duhem 333
  • Jorge Vicente Cantero (jvican) 314
  • Eugene Vigdorchik 108
  • Kenji Yoshida (xuwei-k) 96
  • Indrajit Raychaudhuri 90
  • Dan Sanduleac 74
  • Benjy Weinberger 52
  • Max Peng 52
  • Jacek Laskowski 40
  • Jason Zaugg 40
  • Josh Soref 39
  • Krzysztof Romanowski 39
  • Pierre DAL-PRA 36
  • Andrzej Jozwik 33
  • Antonio Cunei 30
  • Aaron S. Hawley 29
  • Guillaume Martres 25
  • James Roper 24
  • Chua Chee Seng (cheeseng) 24
  • Paolo G. Giarrusso 23
  • Matej Urbas 22
  • Stu Hood 22
  • Adriaan Moors 18
  • Jean-Rémi Desjardins 16
  • Sanjin Sehic 16
  • Fedor Korotkov 14
  • Andrew Johnson 13
  • David Perez 13
  • Havoc Pennington 13
  • Liang Tang 12
  • Peter Vlugter 12
  • Taro L. Saito 10
  • Paul Phillips 9
  • Roberto Tyley 9
  • Vojin Jovanovic 9
  • William Benton 9
  • 杨博 (Yang Bo) 9
  • Brian Topping 8
  • Bruno Bieth 8
  • Johannes Rudolph 8
  • KAWACHI Takashi 8
  • Ken Kaizu (krrrr38) 8
  • Artyom Olshevskiy 7
  • Eugene Platonov 7
  • Matthew Farwell 7
  • Michael Allman 7
  • David Pratt 6
  • Luca Milanesio 6
  • Nepomuk Seiler 6
  • Peiyu Wang 6
  • Simeon H.K. Fitch 6
  • Stephen Samuel 6
  • Thierry Treyer 6
  • James Earl Douglas 5
  • Jean-Remi Desjardins 5
  • Miles Sabin 5
  • Seth Tisue 5
  • qgd 5
  • Anthony Whitford 4
  • Bardur Arantsson 4
  • Ches Martin 4
  • Chris Birchall 4
  • Daniel C. Sobral 4
  • Heikki Vesalainen 4
  • Krzysztof Nirski 4
  • Lloyd Meta 4
  • Michael Schmitz 4
  • Orr Sella 4
  • Philipp Dörfler 4
  • Tim Harper 4
  • Vasya Novikov 4
  • Vincent Munier 4
  • Jürgen Keck (j-keck) 4
  • Richard Summerhayes (rasummer) 4
  • Adam Warski 3
  • Ben McCann 3
  • Enno Runne 3
  • Eric Bowman 3
  • Henrik Engstrom 3
  • Ian Forsey 3
  • James Ward 3
  • Jesse Kinkead 3
  • Justin Pihony 3
  • Kazuhiro Sera 3
  • Krzysztof Borowski 3
  • Lars Hupel 3
  • Leif Wickland 3
  • Lukas Rytz 3
  • Max Worgan 3
  • Oliver Wickham 3
  • Olli Helenius 3
  • Roman Timushev 3
  • Simon Schäfer 3
  • ZhiFeng Hu 3
  • daniel-shuy 3
  • Roland Schatz 3
  • soc 3
  • wpitula 3
  • Alex Dupre 2
  • Alexey Alekhin 2
  • Allan Erskine 2
  • Alois Cochard 2
  • Andreas Flierl 2
  • Anthony 2
  • Antoine Gourlay 2
  • Arnout Engelen 2
  • Ben Hutchison 2
  • Benjamin Darfler 2
  • Brendan W. McAdams 2
  • Brennan Saeta 2
  • Brian McKenna 2
  • Brian Smith 2
  • BrianLondon 2
  • Charles Feduke 2
  • Christian Dedie 2
  • Cody Allen 2
  • Damien Lecan 2
  • David Barri 2
  • David Harcombe 2
  • David Hotham 2
  • Derek Wickern 2
  • Eric D. Reichert 2
  • Eric J. Christeson 2
  • Evgeny Goldin 2
  • Evgeny Vereshchagin 2
  • Francois Armand (fanf42) 2
  • Fred Dubois 2
  • Heejong Lee 2
  • Henri Kerola 2
  • Hideki Ikio 2
  • Ikenna Nwaiwu 2
  • Ismael Juma 2
  • Jakob Odersky 2
  • Jan Berkel 2
  • Jan Niehusmann 2
  • Jarek Sacha 2
  • Jens Halm 2
  • Joachim Hofer 2
  • Joe Barnes 2
  • Johan Andrén 2
  • Jonas Fonseca 2
  • Josh Kalderimis 2
  • Juan Manuel Caicedo Carvajal 2
  • Justin Kaeser 2
  • Konrad Malawski 2
  • Lex Spoon 2
  • Li Haoyi 2
  • Lloyd 2
  • Lukasz Piepiora 2
  • Marcus Lönnberg 2
  • Marko Elezovic 2
  • Michael Parrott 2
  • Mikael Vallerie 2
  • Myyk Seok 2
  • Ngoc Dao 2
  • Nicolas Rémond 2
  • Oscar Vargas Torres 2
  • Paul Draper 2
  • Paulo “JCranky” Siqueira 2
  • Petro Verkhogliad 2
  • Piotr Kukielka 2
  • Robin Green 2
  • Roch Delsalle 2
  • Roman Iakovlev 2
  • Scott Royston 2
  • Simon Hafner 2
  • Sukant Hajra 2
  • Suzanne Hamilton 2
  • Tejas Mandke 2
  • Thomas Koch 2
  • Thomas Lockney 2
  • Tobias Neef 2
  • Tomasz Bartczak 2
  • Travis 2
  • Vitalii Voloshyn 2
  • Wei Chen 2
  • Wojciech Langiewicz 2
  • Xin Ren 2
  • Zava 2
  • amishak 2
  • beolnix 2
  • ddworak 2
  • drdamour 2
  • Eric K Richardson (ekrich) 2
  • fsi206914 2
  • henry 2
  • kaatzee 2
  • kalmanb 2
  • nau 2
  • qvaughan 2
  • sam 2
  • softprops 2
  • tbje 2
  • timt 2
  • Aaron D. Valade 1
  • Alexander Buchholtz 1
  • Alexandr Nikitin 1
  • Alexandre Archambault 1
  • Alexey Levan 1
  • Anatoly Fayngelerin 1
  • Andrea 1
  • Andrew D Bate 1
  • Andrew Miller 1
  • Ashley Mercer 1
  • Bruce Mitchener 1
  • Cause Cheng 1
  • Cause Chung 1
  • Christian Krause 1
  • Christophe Vidal 1
  • Claudio Bley 1
  • Daniel Peebles 1
  • Denis T 1
  • Devis Lucato 1
  • Dmitry Melnichenko 1
  • EECOLOR 1
  • Edward Samson 1
  • Erik Bakker 1
  • Erik Bruchez 1
  • Ethan 1
  • Federico Ragona 1
  • Felix Leipold 1
  • Geoffroy Couprie 1
  • Gerolf Seitz 1
  • Gilad Hoch 1
  • Gregor Heine 1
  • HairyFotr 1
  • Heiko Seeberger 1
  • Holden Karau 1
  • Hussachai Puripunpinyo 1
  • Jacques 1
  • Jakob Grunig 1
  • James Koch 1
  • Jan Polák 1
  • Jan Ziniewicz 1
  • Jisoo Park 1
  • Joonas Javanainen 1
  • Joscha Feth 1
  • Josef Vlach 1
  • Joseph Earl 1
  • João Costa 1
  • Justin Ko 1
  • Kamil Kloch 1
  • Kazuyoshi Kato 1
  • Kevin Scaldeferri 1
  • Knut Petter Meen 1
  • Krzysztof 1
  • Kunihiko Ito 1
  • LMnet 1
  • Luc Bourlier 1
  • Lucas Mogari 1
  • Lutz Huehnken 1
  • Mal Graty 1
  • Marcos Savoury 1
  • Marek Żebrowski 1
  • Markus Siemens 1
  • Martynas Mickevicius 1
  • Martynas Mickevičius 1
  • Michael Bayne 1
  • Michael Ledin 1
  • Nathan Hamblen 1
  • Nyavro 1
  • OlegYch 1
  • Olivier ROLAND 1
  • Pavel Penkov 1
  • Pedro Larroy 1
  • Peter Pan 1
  • Piotr Kukiełka 1
  • Rikard Pavelic 1
  • Robert Jacob 1
  • Rogach 1
  • Sergey Andreev 1
  • Shanbin Wang 1
  • Shane Hender 1
  • Simon Olofsson 1
  • Stefan Zeiger 1
  • Stephen Duncan Jr 1
  • Steve Gury 1
  • Sören Brunk 1
  • Thomas Grainger 1
  • Tim Sheppard 1
  • Todor Todorov 1
  • Toshiyuki Takahashi 1
  • Travis Brown 1
  • Tsubasa Irisawa 1
  • Victor Hiairrassary 1
  • Yasuo Nakanishi 1
  • Yoshitaka Fujii 1
  • adinath 1
  • albuch 1
  • cchantep 1
  • cdietze 1
  • choucri 1
  • hokada 1
  • joiskov 1
  • jozic 1
  • jyane 1
  • k.bigwheel 1
  • kavedaa 1
  • mmcbride 1
  • pishen tsai 1
  • sanjiv sahayam 1
  • saturday06 1
  • seroperson 1
  • slideon 1
  • thricejamie 1
  • todesking 1
  • totem3 1
  • upescatore 1
  • valydia 1
  • walidbenchikha 1
  • Wiesław Popielarski 1
  • Łukasz Indykiewicz 1

有关个人贡献的详细信息,请参见 Changes.

以下人员为 sbt 贡献了想法、文档或代码,但未列在上面

  • Josh Cough
  • Nolan Darilek
  • Viktor Klang
  • David R. MacIver
  • Ross McDonald
  • Andrew O’Malley
  • Jorge Ortiz
  • Mikko Peltonen
  • Ray Racine
  • Stuart Roebuck
  • Harshad RJ
  • Tony Sloane
  • Francisco Treacy
  • Vesa Vilhonen

没有如此多的优秀插件,sbt 生态系统将不会是相同的。以下是部分插件及其贡献者

也感谢在 Stack Overflow(Jacek Laskowski、Lukasz Piepiora 等人)和 sbt Gitter 频道 上回答问题的人,以及在 GitHub 上报告问题和贡献想法的许多人。

感谢所有人的贡献。