The Role of Surprisal in Issue Trackers - Software and Datasets
Description
This is the software and datasets produced for the paper The Role of Surprisal in Issue Trackers, by J. Caddy, et. al.
`all-unique-labels':
All labels extracted from the entire dataset of issues from the 1270 GitHub repositories analysed. There are three versions, two that have the manually ranked priorities assigned to select issues that have some meaning akin to "priority" and "importance".
`calculated-values-combined':
The calculated values for each of the ~340,000 issues analysed. These values correspond to the variables measured to test each hypothesis.
`calculate-values':
The python script that calculates the majority of the values found in `calculated-values-combined'.
The first input required is a list of issue urls which are those found when navigating GitHub issues, which are of the format:
https://api.github.com/repos/{repository author}/{repository name}/issues/{issue number}
The second input required is the CSV included with the data set, `all-unique-labels-prioritised.csv', which is the CSV containing all labels and their text and priority ratings as the two columns.
The output is a CSV file, one row per issues, with the columns:
``author_name, repository_name, issue_number, reopenings, unique_participants, interactions, open_duration, reactions, label_priority, mentions_in_releases''
Calls to GitHub are rate-limited, and this script will detect when that threshold has passed, pause, and automatically continue when able.
`issue-resolutions-sample':
Contains the issue data used to calculate the inter-issue-resolution-times and labels for analysis.
`issue-sample-surprisal-ratings':
Tabular data containing the human and computer determined surprisal values, for comparison.
`issue-sanitiser':
The script used to sanitise the issue titles and descriptions, before feeding them into the statistical language model.
The script was written for fish shell, but does not use any 'special' functionality of it, which means it can easily be used by other shells.
The input required is a text file with the raw issue description texts separated by line.
The script will create several intermediate files, after each step of processing. This is only for testing purposes/investigation, for example, if you want to see the results when words are not stemmed (prefixed with `.5'), but the final file is the one used in the study.
`label-priorities-and-iirt':
Issues from the total set that have labels corresponding to a priority, that have authors with multiple contributions to a repository were extracted and their inter-issue-resolution-time was calculated and stored in this file.
`main':
The rust code used to calculate the surprisal values for issues. It consumes sanitised issue text, builds the statistical language model and calculates the resulting probabilities used to determine the surprisal for issues. This file contains many to-dos, intended to guide the project in the event that it was successful and could be developed further.
The program, when compiled with the Rust compiler, takes input from stdin, typically the output from `issue-sanitiser.fish'. The operation mode `stdin' is required for this. The additional `gitlog' mode is experimental and allows you to calculate the surprisal values for git logs when a path to a local git repository is given.
`random-unique-label-sample-ratings':
The sample of issues given to separate researchers to determine the rater agreement when assigning priority ranks to labels.
`top-repos-sorted':
A listing of the repositories used in the paper, consisting of the 5000 top-starred repositories on GitHub at the time of data collection.
Files
all-unique-labels-prioritised.csv
Files
(31.6 MB)
| Name | Size | Download all |
|---|---|---|
|
md5:cd9a33977f81176d95d234c3cad83c70
|
19.6 kB | Preview Download |
|
md5:2b9f1fe45665984804e8df2ee5581158
|
242.4 kB | Download |
|
md5:64e5f5691e5078bb3ff13e31037db4d8
|
498.9 kB | Preview Download |
|
md5:0b7903bff2bd64ca574c1bb32c67a2e9
|
4.6 kB | Download |
|
md5:da7524987d66e53e147d368f391575c3
|
23.3 MB | Preview Download |
|
md5:497e080ae36a8fc7cee061919299861a
|
4.0 MB | Preview Download |
|
md5:c0282da0a37c1ec42906a30fe66ec3e1
|
17.6 kB | Preview Download |
|
md5:1927a466042a5e6e847ad4eb94ec8534
|
3.0 kB | Download |
|
md5:5146490be781036d5efb56a74e622977
|
3.0 MB | Preview Download |
|
md5:26d30d4b4ed5af88c7e9718a024dcefe
|
9.8 kB | Download |
|
md5:7b71f5226acc41a7d87dd4a024b37485
|
39.1 kB | Download |
|
md5:5a360c3250426974c978e19038be94f7
|
541.5 kB | Preview Download |