Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
140 changes: 140 additions & 0 deletions .github/ISSUE_TEMPLATE/bug_report.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,140 @@
name: Bug Report
description: Report a bug or unexpected behavior in SETLr
title: "[Bug]: "
labels: ["bug"]
body:
- type: markdown
attributes:
value: |
Thanks for taking the time to report a bug! Please fill out the form below with as much detail as possible.

- type: textarea
id: description
attributes:
label: Bug Description
description: A clear and concise description of what the bug is.
placeholder: Describe the bug you encountered
validations:
required: true

- type: textarea
id: steps
attributes:
label: Steps to Reproduce
description: Detailed steps to reproduce the issue
placeholder: |
1. Create a SETL script with...
2. Run command...
3. Observe error...
value: |
1.
2.
3.
validations:
required: true

- type: textarea
id: expected
attributes:
label: Expected Behavior
description: What did you expect to happen?
placeholder: Describe what you expected to happen
validations:
required: true

- type: textarea
id: actual
attributes:
label: Actual Behavior
description: What actually happened? Include error messages and stack traces if available.
placeholder: Describe what actually happened
render: shell
validations:
required: true

- type: input
id: setlr-version
attributes:
label: SETLr Version
description: What version of SETLr are you using?
placeholder: "e.g., 1.0.2 (run: pip show setlr)"
validations:
required: true

- type: input
id: python-version
attributes:
label: Python Version
description: What version of Python are you using?
placeholder: "e.g., 3.11.5 (run: python --version)"
validations:
required: true

- type: input
id: os
attributes:
label: Operating System
description: What operating system are you using?
placeholder: "e.g., Ubuntu 22.04, macOS 14.0, Windows 11"
validations:
required: true

- type: textarea
id: environment
attributes:
label: Additional Environment Details
description: Any other relevant environment information
placeholder: |
- Installation method (pip, source)
- Virtual environment (venv, conda)
- Other relevant dependencies
render: markdown

- type: textarea
id: sample-data
attributes:
label: Sample Data/Configuration
description: If applicable, provide a minimal example that reproduces the issue
placeholder: |
Include:
- Sample input data (CSV, JSON, etc.)
- SETL script (or relevant portion)
- Command used to run SETLr
render: turtle

- type: textarea
id: logs
attributes:
label: Logs and Error Output
description: Paste any relevant logs or error output
render: shell

- type: textarea
id: workarounds
attributes:
label: Workarounds
description: Have you found any workarounds for this issue?
placeholder: Describe any workarounds you've found

- type: textarea
id: context
attributes:
label: Additional Context
description: Add any other context about the problem here
placeholder: |
- Does this issue occur consistently or intermittently?
- Did this work in a previous version?
- Any other relevant information

- type: checkboxes
id: checklist
attributes:
label: Checklist
description: Please confirm the following
options:
- label: I have searched existing issues to ensure this is not a duplicate
required: true
- label: I have provided all required information above
required: true
- label: I am using a supported version of SETLr (1.0.x)
required: false
148 changes: 148 additions & 0 deletions .github/ISSUE_TEMPLATE/feature_request.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,148 @@
name: Feature Request
description: Suggest a new feature or enhancement for SETLr
title: "[Feature]: "
labels: ["enhancement"]
body:
- type: markdown
attributes:
value: |
Thanks for suggesting a new feature! Please provide as much detail as possible about your idea.

- type: textarea
id: problem
attributes:
label: Problem Description
description: Is your feature request related to a problem? Please describe what you're trying to accomplish.
placeholder: |
A clear and concise description of the problem or limitation you're facing.
Example: "I'm always frustrated when..."
validations:
required: true

- type: textarea
id: solution
attributes:
label: Proposed Solution
description: Describe the solution you'd like to see
placeholder: |
A clear and concise description of what you want to happen.
Include:
- How it would work
- Example usage (code, commands, or configuration)
- Expected output or behavior
validations:
required: true

- type: textarea
id: alternatives
attributes:
label: Alternatives Considered
description: Describe any alternative solutions or features you've considered
placeholder: |
What other approaches have you thought about?
Why would this solution be better than alternatives?
validations:
required: false

- type: textarea
id: use-case
attributes:
label: Use Case
description: Describe your specific use case for this feature
placeholder: |
Help us understand how you would use this feature:
- What kind of data are you working with?
- What is your workflow?
- How would this feature improve your experience?
validations:
required: false

- type: dropdown
id: feature-area
attributes:
label: Feature Area
description: Which area of SETLr does this feature relate to?
options:
- Data Sources (CSV, Excel, JSON, XML, RDF)
- Transformations (JSLDT, Python functions)
- SPARQL Integration
- CLI Tool
- Python API
- Documentation
- Performance
- Validation (SHACL)
- Other
validations:
required: true

- type: textarea
id: example
attributes:
label: Example Code/Configuration
description: If applicable, provide example code or configuration showing how the feature would be used
placeholder: |
```python
# Example usage of the proposed feature
from setlr import new_feature

result = new_feature(...)
```
render: python

- type: textarea
id: documentation
attributes:
label: Documentation Impact
description: What documentation would need to be added or updated?
placeholder: |
- New tutorial sections
- API documentation updates
- Example additions

- type: dropdown
id: priority
attributes:
label: Priority
description: How important is this feature to you?
options:
- Critical (blocking my work)
- High (would significantly improve my workflow)
- Medium (nice to have)
- Low (minor improvement)
validations:
required: false

- type: textarea
id: context
attributes:
label: Additional Context
description: Add any other context, screenshots, or examples about the feature request
placeholder: |
- Links to similar features in other tools
- Screenshots or diagrams
- Research or references
- Any other relevant information

- type: checkboxes
id: checklist
attributes:
label: Checklist
description: Please confirm the following
options:
- label: I have searched existing issues and feature requests to ensure this is not a duplicate
required: true
- label: I have provided a clear description of the problem and proposed solution
required: true
- label: This feature aligns with SETLr's purpose (RDF generation from tabular data)
required: true

- type: textarea
id: contribution
attributes:
label: Contribution
description: Would you be willing to contribute to implementing this feature?
placeholder: |
- I would like to implement this feature myself
- I can help test the implementation
- I can help with documentation
- I can provide use case examples
61 changes: 61 additions & 0 deletions .github/PULL_REQUEST_TEMPLATE.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,61 @@
# Pull Request

## Description

Please include a summary of the changes and the related issue. Explain the motivation and context for these changes.

Fixes #(issue number)

## Type of Change

Please delete options that are not relevant:

- [ ] Bug fix (non-breaking change which fixes an issue)
- [ ] New feature (non-breaking change which adds functionality)
- [ ] Breaking change (fix or feature that would cause existing functionality to not work as expected)
- [ ] Documentation update
- [ ] Code refactoring (no functional changes)
- [ ] Performance improvement
- [ ] Dependency update

## Motivation and Context

Why is this change required? What problem does it solve?

## Testing Performed

Please describe the tests that you ran to verify your changes:

- [ ] Existing tests pass (`./script/build` or `nose2`)
- [ ] Added new tests for new functionality
- [ ] Manual testing performed (please describe below)

**Test Configuration:**
- Python version:
- Operating System:

**Manual Test Details:**
```
Describe any manual testing you performed
```

## Checklist

Before submitting this PR, please ensure:

- [ ] My code follows the code style of this project (PEP 8)
- [ ] I have added docstrings to new functions/classes
- [ ] I have updated the documentation (if applicable)
- [ ] I have added tests that prove my fix is effective or that my feature works
- [ ] All new and existing tests pass locally (`./script/build`)
- [ ] I have updated the CHANGELOG.md file in the `[Unreleased]` section
- [ ] I have checked that no large files or build artifacts are included
- [ ] I have reviewed my own code for potential issues

## Screenshots (if applicable)

Add screenshots to help explain your changes (especially for UI changes or output format changes).

## Additional Notes

Add any other context about the pull request here.
Loading
Loading