- All contributions to DataSHIELD packages should be managed through GitHub using issues, branches, and pull requests (merge requests).
- The recommended workflow is:
- Open or identify an issue (see issue template [here]) (contributer)
- Agree with maintainers on the requirements (contributer)
- Fork the repository (if external contributor)
- Pull the latest changes from the main repository (contributer)
- Create a dedicated branch for the issue (contributer)
- Implement and test the changes (contributer)
- Open a pull request linked to the issue , use issue number in the body and tag the maintainer (contributer)
- Review and merge the pull request (maintainer)
- Delete the branch after merging (maintainer)
- Each package repository should include a:
CONTRIBUTING.md file defining the contribution guidelines for the package.
use_tidy_contributing() function from the usethis package, for generating template of the CONTRIBUTING.md. Please modify the file to include your contribution workflow.
- Include an issue template to help users fill better bug reports or feature requests. You could use this template or include a modified version.
---
name: 'Issue template.'
about: 'Use this template to report a bug or feature you would like to add to this
repo. '
title: 'Bug/Feature: Title of the issue'
labels: 'You can use labels such as “help wanted” and “good first issue” to help potential collaborators, including newbies, find your repo. See https://docs.github.com/en/communities/setting-up-your-project-for-healthy-contributions/encouraging-helpful-contributions-to-your-project-with-labels'
assignees: ''
---
# If you are reporting a Bug:
**Describe the bug**
A clear and concise description of what the bug is.
**To Reproduce**
Steps to reproduce the behavior:
1. Go to '...'
2. Click on '....'
3. Scroll down to '....'
4. See error
**Expected behavior**
A clear and concise description of what you expected to happen.
**Screenshots**
If applicable, add screenshots to help explain your problem.
**Please complete the following information:**
- OS: [e.g. iOS]
- R Version
- Relevant package versions (if applicable)
**Additional context**
Add any other context about the problem here.
# If you are requesting a new feature
**Is your feature request related to a problem? Please describe.**
A clear and concise description of what the problem is. Ex. I'm always frustrated when [...]
**Describe the solution you'd like**
A clear and concise description of what you want to happen.
**Describe alternatives you've considered**
A clear and concise description of any alternative solutions or features you've considered.
**Additional context**
Add any other context or screenshots about the feature request here.
# Disclosure Issue Report
## Summary
Provide a brief description of the potential disclosure issue.
> Example: A combination of DataSHIELD functions appears to allow recovery of information on an individual's UPRN.
---
## Reporter Information
* Name:
* Organisation:
* Email:
* Date Reported:
---
## Affected Component(s)
* Package(s):
* Function(s):
* Version(s):
* DataSHIELD Profile (if applicable):
* Server Platform (e.g. Opal version):
---
## Description of Potential Disclosure Issue
Describe the issue in detail.
Include:
* What behaviour was observed?
* Why might this lead to disclosure?
* Under what conditions does it occur?
* Is the issue reproducible?
---
## Potential Impact
Select all that apply:
* [ ] Information about an individual can be inferred
* [ ] Dataset reconstruction may be possible
* [ ] Circumvention of existing disclosure controls
* [ ] Other (please describe)
Provide further details on the potential impact.
---
## Steps to Reproduce
1.
2.
3.
Please provide a minimal reproducible example where possible.
---
## Evidence
Attach any relevant:
* Logs
* Screenshots
* Console output
* Example commands
* Proof-of-concept code
Please avoid sharing sensitive or real participant data.
---
## Severity Assessment
Reporter's assessment:
* [ ] Low
* [ ] Medium
* [ ] High
* [ ] Critical
Justification:
---
## Suggested Mitigation (Optional)
Describe any possible fixes or mitigations.
---
## Additional Context
Add any other information that may assist the Disclosure Response Team in assessing the issue.
---
- Consider adding contributors in DESCRIPTION, as contributor (“ctb”) for small contributions, author (“aut”) for bigger contributions.
- At a minimum consider adding the name of contributors near the feature/bug fix line in NEWS.md.