1. クレジット

クレジット 

sbt は、もともと Mark Harrah (@harrah) によって 2008 年に作成されました。Scala のインクリメンタルコンパイラ、Maven および Ivy 依存性との統合、並列タスク処理など、sbt の基本的な側面のほとんどは、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 のもう 1 つの注目すべき貢献は、@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 は、sbt 1.0 の開発だけでなく、0.13.12 から 0.13.16 のリリースを監督しました。

2017 年春、Scala Center が Zinc 1 の開発活動に参加しました。Jorge Vicente Cantero (@jvican) は、Zinc 1 をブロックしていた「as seen from」バグの修正など、多くの改善に貢献しました。

2018 年春から、Ethan Atkins がコミュニティメンバーとして sbt プロジェクトに参加し、すぐにプロジェクトの主要な貢献者になりました。当初、彼の貢献は macOS で watch サービスを提供するためにネイティブコードを使用する Close Watch の実装でした。その後、レイヤードクラスローダー、ロギングのリライト、GraalVM ネイティブイメージを使用するネイティブシンクライアントなど、さまざまなパフォーマンス関連の改善に取り組んできました。

sbt/sbtsbt/zincsbt/librarymanagementsbt/utilsbt/iosbt/contraband、および sbt/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

個々の貢献の詳細については、変更履歴をご覧ください。

以下の方々は、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 で問題点を報告し、アイデアを提供してくださった多くの方々に感謝します。

皆様、ありがとうございました。