![]() |
|
|||
WebMoney: WMZ Z294115950220 WMR R409981405661 WME E134003968233 |
Visa 4274 3200 2453 6495 |
Начиная с version 3.9.0 (2015-10-14)
SQLite использует семантическое управление
версиями. До того времени SQLite использовал идентификатор версии,
который содержал от двух до четырех чисел. Все выпуски 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. Эта историческая система нумерации использовала два-четыре числа:
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 исторически использовался только для выпусков
исправления ошибок, которые изменили только небольшое
количество строк кода.
Choose any three.
1. Номера версий в SQLite
1.1. Новая система нумерации версий (после 2015-10-14)
1.2. Историческая система нумерации (до 2015-10-14)