RussianLDP Рейтинг@Mail.ru
WebMoney: 
WMZ Z294115950220 
WMR R409981405661 
WME E134003968233 
Visa 
4274 3200 2453 6495 

Small. Fast. Reliable.
Choose any three.
Номера версий в SQLite

1. Номера версий в SQLite

Начиная с version 3.9.0 (2015-10-14) SQLite использует семантическое управление версиями. До того времени SQLite использовал идентификатор версии, который содержал от двух до четырех чисел.

1.1. Новая система нумерации версий (после 2015-10-14)

Все выпуски SQLite, начиная с 3.9.0, используют "семантическое управление версиями" формы X.Y.Z. Первый номер X увеличен только, когда есть изменение, которое ломает обратную совместимость. Текущее значение X = 3, и разработчики SQLite планируют поддержать текущий формат файла базы данных SQLite, синтаксис SQL и интерфейс C минимум до 2050 года. Следовательно, можно ожидать, что все будущие версии SQLite в течение следующих нескольких десятилетий начнутся с "3".

Второй номер Y увеличен для любого изменения, которое ломает прямую совместимость, добавляя новые опции. Большинство будущих выпусков SQLite, как ожидают, увеличит второй номер Y. Z перезагружается к нолю каждый раз, когда Y увеличен.

Третий номер Z увеличен для выпусков, состоящих только из небольших изменений, которые осуществляют исполнительные улучшения и/или исправления ошибок.

Темп улучшения для SQLite за предыдущие пять лет (2010-2015) является приблизительно 6 увеличений Y в год. Формат нумерации, используемый для SQLITE_VERSION_NUMBER и sqlite3_libversion_number() позволяет версии до 3.999.999, что является более, чем достаточным для запланированной даты конца поддержки SQLite в 2050. Однако, текущие соглашения о наименовании tarball резервируют только две цифры для Y и таким образом формат имени для загрузок должен быть пересмотрен приблизительно в 2030.

1.2. Историческая система нумерации (до 2015-10-14)

Эта историческая система нумерации использовала два-четыре числа: W.X, W.X.Y или W.X.Y.Z. W это формат файла: 1, 2 или 3. X основная версия. Y был вспомогательной версией. Z использовался только для выпусков патчей, чтобы исправить ошибки.

Было три исторических формата файлов для SQLite. SQLite 1.0 использовался до 1.0.32 применял библиотеку gdbm как механизм хранения. SQLite 2.0.0 до 2.8.17 использовал свой механизм хранения b-дерева, который поддерживал только текстовые ключи и данные. Все современные версии SQLite (с 3.0.0) используют механизм хранения b-дерева, у которого есть полная поддержка двоичных данных и Unicode.

Этот номер основной версии X был исторически увеличен только для больших и важных изменений кода. Что составляло "большой и важный" было субъективно. Переход от 3.6.23 к 3.7.0 был результатом добавления поддержки режима WAL. Переход от 3.7.17 к 3.8.0 был результатом переписывания планировщик запроса.

Номер вспомогательной версии Y был исторически увеличен для новых особенностей и/или новых интерфейсов, которые незначительно изменили структуру кода. Добавление общих выражений таблицы, частичных индексов и индексов по выражениям это типичные примеры таких изменений. Снова, различие между "главным" и "незначительным" субъективно.

Уровень установки патча Z исторически использовался только для выпусков исправления ошибок, которые изменили только небольшое количество строк кода.