--- hastr: true layout: project title: Report a Bug short: reportabug tags: qt, c++, library, development hasgui: false hasdocs: true developers: - Evgeniy Alekseev license: LGPLv3 links: ---
Qt application/library which allows users to create an issue for projects which are hosted on GitHub. It may work over GitHub or GitReport. It works fine, but it was created as proof-of-concept.
cmake
:
{% highlight cmake %}
add_subdirectory (reportabug)
{% endhighlight %}
-DBUILD_AS_LIBRARY=0
- build the application but not a library.-DBUILD_DOCS=1
- build developer documentation.-DBUILD_SHARED_LIBRARY=1
- build the shared library instead of static one.-DENABLE_GITHUB=0
- disable GitHub module.-DENABLE_GITREPORT=0
- disable GitReport module.-DOWN_GITHUB_TOKEN=STRING
- use STRING as own GitHub token.-DUSE_QT5=0
- use Qt4 instead of Qt5.I want note that all were tested on latest version of dependencies.
This module creates an issue over GitHub. GitHub API is used for creating issue. User should type own username and password. The typical POST request is:
{% 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 %}To disable this module use -DENABLE_GITHUB=0
cmake flag.
This module may send request using developer's token too. Please visit this page and generate a new one. Needed scopes are public_repo
(or repo
if you will use it for a private repository).
Please keep in mind that passing the token in the clear, you may discredit your account.
The typical POST request is:
{% 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 %}To enable this module set up your token using -DOWN_GITHUB_TOKEN=0
cmake flag.
This module requires QtNetwork
module.
This module creates issue over GitReports. Please visit this page and set up it for your repository.
To disable this module use -DENABLE_GITREPORT=0
cmake flag. This module requires QtNetwork
and QtWebKit
modules.
For the developer configuration please use config.h
header. Also you may load parametrs dynamically using params
array (needed keys is the same as for the header
OWNER
- the owner of the source repository.PROJECT
- the project name.TAG_BODY
- default body of an issue. It may be used for both modules.TAG_TITLE
- default title of an issue. It may be used only for GitHub module.TAG_ASSIGNEE
- assign an issue to this account. It may be used only for GitHub module. This tag will work only if user has push access. If it will be empty, it will be ignored.TAG_LABELS
- set these labels to an issue. Labels should be comma separated. It may be used only for GitHub module. This tag will work only if user has push access. If it will be empty, it will be ignored.TAG_MILESTONE
- set this milestone to an issue. It may be used only for GitHub module. This tag will work only if user has push access. If it will be empty, it will be ignored.GITHUB_COMBOBOX
- text of this module into comboBox.ISSUES_URL
- issues url, in the most cases do not touch it. Default is https://api.github.com/repos/$OWNER/$PROJECT/issues
. Available tags here are $PROJECT
, $OWNER
.CAPTCHA_URL
- captcha url, in the most cases do not touch it. Default is https://gitreports.com/simple_captcha?code=
.GITREPORT_COMBOBOX
- text of this module into comboBox.PUBLIC_URL
- issues url, in the most cases do not touch it. Default is https://gitreports.com/issue/$OWNER/$PROJECT
. Available tags here are $PROJECT
, $OWNER
.