How do I create a bug report/ru

From Free Pascal wiki
Jump to: navigation, search

Afrikaans (af) Deutsch (de) English (en) français (fr) 日本語 (ja) português (pt) русский (ru)

Пожалуйста, прочтите эту статью о том как писать баг-репорты

Если Вы обнаружили ошибку в Лазарусе и хотите сообщить о ней разработчикам, эта статья расскажет как это сделать.

Проблемы с компиляцией Лазаруса

Если у Вас возникли проблемы с компиляцией SVN версии Лазаруса, то Вам следует написать об этом либо в почтовую рассылку либо спросить о проблеме на IRC канале #lazarus-ide, сервера irc.freenode.net. Скорее всего, кто-то ещё уже столкнулся с этой же проблемой и вскоре она будет решена.

Сообщение об ошибке

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

Для поиска сообщений об ошибке:

  • Используйте страницу поиска.
  • Укажите слова, необходимые для поиска, в поле Search и нажмите Apply Filter

(Совет): Поиск очень простой, если у вас возникли проблемы с использованием метода TEdit.SelStart, попробуйте искать слова "SelStart". Например: если кто-то сообщил об ошибке с текстом "I've a problem using TEdit and SelStart method". Поиск по слову "TEdit.SetStart" не найдёт это сообщение, зато поиск "SelStart" даст необходимый результат.

Если об ошибке уже сообщили:

  • Добавьте сообщение, если ошибку можно воспроизвести другим способом, от уже указанных
  • Если ошибка помечена как исправленная (Resolved) или сообщение уже закрыто (Closed), то вы можете октрыть её повтороно, нажав на кнопку "Reopen Issue". (Некоторые ошибки исправленны только в SVN версии. Не открывайте сообщение об ошибке повторно, если вы не используете SVN версию Лазаруса. Все исправления в SVN версии будут включены в следующий релиз)
  • Вы можете отслеживать ошибку нажав "Monitor Issue". При этом Вас будут уведомлять о всех измнениях с этой ошибкой.

Внимание: чтобы выполнять указанные операции Вам нужно зарегестрироваться в системе и войти под своим аккаунтом: см#Вход в систему/Создание аккаунта.

Создание сообщения об ошибке

  1. Откройте страницу Lazarus баг-трекера
  2. Вы должны войти в трекер под своим аккаунтом.
  3. Октройте страницу Report Issue. Заполните как можно больше информации об ошибке. Чем более точные данные, тем лучше. Обязательно укажите, что происходит "не так" и "как должно работать". После заполнения полей нажмите кнопку Submit Report

Важные информация об ошибке:

  • КАК ВОСПРОИЗВЕСТИ ОШИБКУ Если разработчикам не удасться её воспроизвети, то исправление займёт гораздо больше времени.
  • Widgetset и Операционная система
  • Версия Лазаруса (официальный релиз (его номер) или SVN версия (номер ревизии)
  • Если ошибка приводит к падению программы или Лазаруса, то приложите стек вызовов. Обычно он пишется в консоль программы. Подробнее вы можете узнать здесь.
  • Если есть возможность то обязательно добавьте к сообщению об ошибке небольшой тестовый проект, который воспроизводит ошибку.
  • Если ошибка связана с графикой (графическим интерфейсом программы), то сделайте скришоты
  • Если есть возможность проверить ошибку на разных системах, то обязательно протестируйте. Это поможет понять, является ли ошибка системозависимой или нет. А значит ускорит её исправление.
  • Ускорить устранение ошибки, поможет предложенный Вами, за её решение, бонус. Устранять ошибки могут не только разработчики Лазаруса, но и любой программист владеющий FPC/Lazarus-ом.

Перевод сообщений на английский язык

Ошибки следует описывать на английском языке. Если английским Вы владеете недостаточно хорошо, то Вы можете использовать on-line переводчики (например: http://translate.google.com/).

При описании ошибки, следует указать, что Вы пользовались переводчиком: "Sorry for my English, I'm using translator"

Вы так же можете попросить помощи в переводе (и не только) на этом форуме: http://freepascal.ru

Вход в систему/Создание аккаунта

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

Ошибки отладчика

Частая ситуация, при которой программа может не запускаться, из-за отладчика, выдавая подобное сообщение: Lazarus error ru.png

  • Для того, чтобы выяснить в чём проблема, ОБЯЗАТЕЛЬНО вместе с сообщением об ошибке, добавляйте

файл, содержащий вывод отладчика:

Вид (View) -> Окна отладки (Debugging Window) -> Вывод отладчика (Debugger Output).

Скопируйте всё содержимое окна, и сохраните в файл.

  • Укажите операционную систему и версию Лазаруса.
  • Если есть возможность, проверьте с другими версиями отладчика, либо более поздними версиями Лазаруса (SVN версией) - возможно, что эта ошибка уже была устранена.

Общее решение проблемы с gdb отладчиком

Просто отключить его!

Окружение (Environment) -> Параметры ... (Options) -> Отладчик (Debugger) -> Тип отладчика и путь (Debugger type and path) -> none

Но отлаживаться придётся, используя журналирование (writeln), а также использовать свои знания кода и работы алгоритма программы.

error 193

Если, при просмотре вывода отладчика, вам встретится подобная строка:

 &"Error creating process C:/Documents and Settings/UserName/Projects/project1.exe, (error 193)\n"

Ошибка возникает, если полный путь проекта содержит пробел(ы). Решение - сохранить проект в другую папку (без пробелов).

Это не ограничение Лазаруса или FPC, это ограничение отладчика.

Файлы

Если вы хотите приложить текстовый файл (или несколько файлов) к описанию ошибки, то, скорее всего, вы воспользуетесь архиватором.

Пожалуйста, используйте только Zip, GZip (Tar.gzip) архиваторы.

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