DokuWiki

It's better when it's simple

User Tools

Site Tools


plugin:ghissues

GHIssues Plugin

Compatible with DokuWiki

Ponder Stibbons, !Greebo

plugin Uses the GitHub API (v3) to access and display issues from the bug tracker

Last updated on
2014-10-18
Provides
Syntax, Helper, Action
Repository
Source

This extension has not been updated in over 2 years. It may no longer be maintained or supported and may have compatibility issues.

Similar to issuelinks

Tagged with bugtracker, github, issue, tracker

Description

Allows the insertion of a table showing issues from the bug tracker on a GitHub repository. Filtering by state (open/closed/all) and label are supported. The table shows issue number, title, any labels (with their assigned colors) as well as creation date/time and creator.

Each issue title is also a link to the appropriate issue page on GitHub, and there is a link to the table's equivalent issues search in the footer of the table.

GitHub API responses are cached locally and the table is only updated when upstream changes occur.

Installation

Search and install the plugin using the Extension Manager. Refer to Plugins on how to install plugins manually.

Examples/Usage

Below are code snippets and static screenshots of the plugin's output with data from the DokuWiki Repository on GitHub1).

Open Issues for a Label

{{ghissues dokuwiki/dokuwiki label:Beginner's Project}}

Open Issues with Both Labels

{{ghissues dokuwiki/Dokuwiki label:feature,Beginner's Project}}

All (Open & Closed) Issues for a Label

{{ghissues dokuwiki/Dokuwiki state:all label:feature}}

(Trimmed the bottom because the list is long)

Closed Issues for a Label

{{ghissues dokuwiki/Dokuwiki state:closed label:feature}}

Syntax

Basic syntax:

{{ghissues <repository> [state:<all|open|closed>] [label:<label1,label2,label3>]}}

Specifically:

  • {{ghissues (required) marks the start
  • <repository> (required) gives the repository whose issues you'd like to list. Given in user/repo format, e.g. ZJ/ghissues
  • state:<> (optional) Case sensitive. state: indicates you'd like to filter by state, and <> can be followed by one of (all lowercase):
    • all
    • open
    • closed
  • label:<> (optional) comma-separated list of labels to filter by. Labels are filtered using AND, i.e. on issues with both label1 AND label2 would be shown if you entered label:label1,label2. There should be no space between the last label and the closing braces
  • }} (required) closes the pattern.

Configuration and Settings

Three user settings are available.

  • “GitHub Cache Expiry Interval (seconds)“ sets how long DokuWiki waits before making another GitHub API request. The timer is applied on a per-request URL basis.
  • “GitHub Account Username” sets a user name that is sent along with GitHub API requests.
  • “GitHub Personal OAuth Token” To increase GitHub's rate limit from 60/hour to 5000/hour, you can provide a personal OAuth token here. More info below.

OAuth Token

GitHub allow authentication via personal OAuth tokens which can be generated at https://github.com/settings/applications. This is nice because it avoids having to provide a username/password combination. You can also control which parts of your account a token has access to.

Do I need to use Oauth Tokens?

Short answer: probably not. There are two reasons to use one:

  1. You want to look at issues from private repositories. To do this, you'll need an OAuth token for an account that has access to those repositories
  2. You need >60 requests per hour.

This plugin does its best to minimize the number of requests it makes. It implements cacheing on DokuWiki's side together with conditional HTTP requests. The quick-and-dirty rule is that you'll generate 1 request per unique table per change to an issue on GitHub's side.

Development

Change Log

ToDo/Wish List

  • Empty for now
1)
Example data pulled on 2014-10-09 16:00 EST
plugin/ghissues.txt · Last modified: 2023-02-28 21:11 by Aleksandr

Except where otherwise noted, content on this wiki is licensed under the following license: CC Attribution-Share Alike 4.0 International
CC Attribution-Share Alike 4.0 International Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki