--- category: ru hastr: true layout: project title: Report a Bug short: reportabug hasgui: false hasdocs: true developers: - Evgeniy Alelseev license: LGPLv3 links: ---
Приложение/библиотека, написанная на Qt, которое позволяет пользователям отправлять багрепорт для проектов, расположенных на GitHub. Оно может работать как через GitHub, так и через GitReports.
Скачайте архив с актуальной версией исходных файлов.
Извлеките из него файлы и настройте под себя.
Установите приложение:
{% highlight bash %} cd /path/to/extracted/archive mkdir build && cd build cmake -DCMAKE_INSTALL_PREFIX=/usr -DCMAKE_BUILD_TYPE=Release -DBUILD_AS_LIBRARY:BOOL=0 ../ make sudo make install {% endhighlight %}Скачайте архив с актуальной версией исходных файлов.
Извлеките из него файлы и настройте под себя.
Включите библиотеку в Ваш проект. Например, если Вы используете cmake
:
Объявите класс в Вашем приложении, например:
{% highlight cpp %} Reportabug *reportWindow = new Reportabug(this, false); reportWindow->showWindow(); {% endhighlight %}-DBUILD_AS_LIBRARY:BOOL=0
- собирать отдельное приложение, а не библиотеку.-DBUILD_DOCS:BOOL=1
- собирать документацию для разработчиков.-DENABLE_GITHUB=0
- отключить модуль GitHub.-DENABLE_GITREPORT=0
- отключить модуль GitReports-DOWN_GITHUB_TOKEN=STRING
- использовать STRING, как свой GitHub токен.-DUSE_QT5:BOOL=0
- использовать Qt4 вместо Qt5.Все было протестировано на последних версиях зависимостей.
Данный модуль создает тикет, используя GitHub API. Данный модуль требует авторизации пользователя. Типичный POST запрос выглядит так:
{% highlight bash %} curl -X POST -u user:pass -d '{"title":"A new bug","body":"Some error occurs"}' \ https://api.github.com/repos/owner/repo/issues {% endhighlight %}Для того, чтобы отключить данный модуль, используйте -DENABLE_GITHUB=0
флаг cmake.
Также данный модуль может отправлять запросы, используя токен разработчика. Пожалуйста, посетите данную страницу и сгенерируйте токен. Требуемые права для токена - public_repo (или repo, если Вы используете для приватных репозиториев).
Имейте в виду, что передача токена в открытом виде может скомпрометировать его!
Типичный POST запрос выглядит так:
{% highlight bash %} curl -X POST -H "Authorization: token token" -d '{"title":"A new bug","body":"Some error occurs"}' \ https://api.github.com/repos/owner/repo/issues {% endhighlight %}Для того, чтобы включить данный модуль, используйте --DOWN_GITHUB_TOKEN=STRING
флаг cmake.
Данный модуль требует наличия в системе qt5-network.
Данный модуль создает тикет, используя возможности GitReports. Пожалуйста, посетите данную страницу и настройте под Ваши репозитории.
Для того, чтобы отключить данный модуль, используйте -DENABLE_GITREPORT=0
флаг cmake. Данный модуль требует наличия в системе qt5-webkit.
Для настройки перед компиляцией отредактируйте хидер src/config.h.in
.
OWNER
- владелец репозитория.PROJECT
- имя проекта.TAG_BODY
- тело тикета по умолчанию. Может быть использовано в обоих модулях.TAG_TITLE
- имя тикета по умолчанию. Может быть использовано только в модуле GitHub.TAG_ASSIGNEE
- прикрепить тикет к данному аккаунту. Может быть использовано только в модуле GitHub. Данный тег будет работать, только если пользователь имеет права на запись. Если будет пустым, будет проигнорировано.TAG_LABELS
- установить данные метки тикету. Метки должны быть разделены запятыми. Может быть использовано только в модуле GitHub. Данный тег будет работать, только если пользователь имеет права на запись. Если будет пустым, будет проигнорировано.TAG_MILESTONE
- установить данную веху тикету. Может быть использовано только в модуле GitHub. Данный тег будет работать, только если пользователь имеет права на запись. Если будет пустым, будет проигнорировано.GITHUB_COMBOBOX
- текст модуля в ComboBox.ISSUES_URL
- URL, в большинстве случаев, не редактируйте его. По умолчанию https://api.github.com/repos/$OWNER/$PROJECT/issues
. Доступные теги $PROJECT
, $OWNER
.CAPTCHA_KEY
- идентификатор капчи. Может быть найдено в исходном коду страницы PUBLIC_URL
. По умолчанию 7f6ef90bce7389088a52c5c9101aad206b21b56d
.CAPTCHA_TEXT
- текст капчи. Может быть найдено в исходном коду страницы PUBLIC_URL
. По умолчанию QJNZXY
.CAPTCHA_TIME
- время капчи. Может быть найдено в исходном коду страницы PUBLIC_URL
. По умолчанию 1406531273
.GITREPORT_COMBOBOX
- текст модуля в ComboBox.PUBLIC_URL
- URL, в большинстве случаев, не редактируйте его. По умолчанию https://gitreports.com/issue/$OWNER/$PROJECT
. Доступные теги $PROJECT
, $OWNER
.