Узнал кучу всего интересного про SQLite. Для тех, кто не знает — это, вероятно, самая распространённая база данных в мире. Она используется везде: от смартфонов до автомобилей и ракет. Масштаб применения — более _триллиона_ развёрнутых экземпляров, миллиарды активных копий по всему миру. В вашем телефоне десятки приложений ее используют.
Для начала, SQLite появилась из-за необходимости обеспечить надёжную работу базы данных на эсминце USS Oscar Austin.
Её поддерживают _три человека_. Они не допускают внешних контрибьюторов. Нельзя просто отправить пул-реквест и надеяться, что патч будет одобрен. За разработкой SQLite стоит компания Hwaci. Кажется, она занимается и музыкой. Сайт предельно лаконичен. Офис в частном доме.
На каждую строку кода SQLite приходится более 600 строк кода тестов. Тесты покрывают 100% ветвлений (и 100% MC/DC) библиотеки. Набор тестов крайне разнообразен, он включает фаззинг-тесты, тесты граничных значений, регрессионные тесты и тесты, симулирующие вылеты операционных систем, отключение питания, ошибки ввода-вывода, ошибки out-of-memory. Изначально SQLite была расширением Tcl, а её основной набор тестов написан на Tcl.
Любопытно, что некоторые тесты SQLite проприетарны. Набор тестов TH3 (Test Harness 3), обеспечивающий стопроцентное покрытие ветвлений кода, проприетарен, а доступ к нему закрыт.
Не знаю ни одного другого проекта, который бы был открытым, но с платными тестами.
Для получения доступа нужно вступить в SQLite Consortium с ежегодным членским взносом 120 тысяч долларов.
Это интересная бизнес-модель. Разработчики генерируют прибыль через лицензии, платную поддержку, сервисное обслуживание, членство в консорциуме и коммерческие расширения.
У SQLite нет Code of Conduct (CoC), вместо него используется Code of Ethics, производный от «видов добрых дел» из главы 4 Устава святого Бенедикта. Гуглите Code of Ethics SQLite, это очень интересный документ.
Во всех исходных файлах в начале вместо правовых положений благословление: «In place of a legal notice, here is a blessing: May you do good and not evil…»
Автор SQLite Ричард Хипп (D. Richard Hipp, DRH) не нашёл ни одной подходящей ему готовой системы контроля версий, поэтому написал собственную под названием Fossil. Разумеется, Fossil основана на SQLite.
Это напомнило мне о том, как Линус написал Git.
Также DRH написал собственный генератор парсеров Lemon.
Все выше описано в более интересных деталях (и расширено) в статье на хабре, которая является переводом на русский статьи Avinash Sajjanshetty. За оригиналами — в комменты





