Project

General

Profile

Actions

Feature #2671

closed

Версионирование формата TreeDB

Added by Alexey Khoroshilov about 12 years ago. Updated over 10 years ago.

Status:
Closed
Priority:
High
Assignee:
-
Category:
-
Target version:
Start date:
03/28/2012
Due date:
% Done:

100%

Estimated time:
Published in build:
0.15.190

Description

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

Для этого необходимо запретить изменять формат представления TreeDB на диске, без крайней необходимости. А в случае, изменения формата, необходимо обеспечить, чтобы пользователи от этого не пострадали.

Печальным примером, как НЕ НАДО делать является переименование атрибута TestPurpose из expectedResults в _expectedResults, которое поломало существующие проекты.

Для исправления глобальной ситуации предлагаю ввести версионирования формата хранения TreeDB на диске, которое бы покрывало как физический уровень, так и уровень системных атрибутов.

Какие есть соображения на этот счет.
1. При открытии проекта проверять версию формата и если она меньше текущий, предлагать провести обновление данных. Иначе отказываться работать, если старый формат не поддерживается в новой версии.
2. При обновлении из svn/git/etc. отслеживать изменение версии и прекращать какую-либо работу с базой до обновления инструмента.
3. Ввести обязательное тестирование работоспособности с уже существующими проектами при выпуске новых версий.
4. Завести wiki страничку или файл в репозитории с описанием истории изменений в формате.
5. Возможно необходимо предоставить поддержку, чтобы внешние плагины к Requality, типа АРМ ПТ, также могли иметь свою версию формата.

Actions

Also available in: Atom PDF