Value pg_probackup major_version added to the class Init#119
Conversation
| self.delete_logs = delete_logs | ||
|
|
||
| self.major_version = int(self.probackup_version.split('.')[0]) | ||
|
|
There was a problem hiding this comment.
Можно более безопасные преобразования сделат, на случай если в версии что-то не то будет.Либо не скастится в int либо не будет первого элемента
| if self.probackup_version.split('.')[0].isdigit: | ||
| self.major_version = int(self.probackup_version.split('.')[0]) | ||
| else: | ||
| print('Pg_probackup version \"{}\" is not correct!'.format(self.probackup_version)) |
There was a problem hiding this comment.
Сообщение вида
Pg_probackup version "alpha1" is not correct
никак не объясняет пользователю, в чём ошибка и что сделать, чтобы она не возникала. Нужно заменить на что-то вида:
Expected that the major pg_probackup version should be a number, got: "alpha1"
There was a problem hiding this comment.
Поправил текст выводимого сообщения об ошибке.
There was a problem hiding this comment.
Ошибочно утверждать, что версия некорректна, какой вид версии выбрать - это решение исключительно автора продукта. Вопрос здесь в том, что версия имеет не тот вид, который тестгрес ожидает для своей работы. Вариантом могло бы быть:
Can't process pg_probackup version "alpha1": the major version is expected to be a number
Восклицательные знаки, капслок и смайлики лучше не использовать в сообщениях для пользователя.
There was a problem hiding this comment.
Обсудили, согласен с доводами.
Заменил на предложенное сообщение.
| os.environ["PGAPPNAME"] = "pg_probackup" | ||
| self.delete_logs = delete_logs | ||
|
|
||
| if self.probackup_version.split('.')[0].isdigit: |
There was a problem hiding this comment.
Не .isdigit, а .isdigit(). .isdigit возвращает указатель на метод, который существует у любой строки, поэтому вернёт истинное значение для любой строки:
>>> if 'abc'.isdigit:
... print('aaa')
...
aaa
There was a problem hiding this comment.
Поправил, спасибо.
No description provided.